1
1
mirror of https://github.com/wader/fq.git synced 2024-08-17 16:00:41 +03:00

Compare commits

...

529 Commits

Author SHA1 Message Date
Mattias Wadman
08951dbf74 WIP: sqlite3: Add decoder
See sqlite3.{go,jq} for TODO

Related to #27
2024-04-30 14:40:56 +02:00
Mattias Wadman
496849daa5
Merge pull request #936 from wader/update-docs
doc: Cleanup and improve texts a bit
2024-04-30 14:25:36 +02:00
Mattias Wadman
ebf063d1c0 doc: Cleanup and improve texts a bit 2024-04-30 14:16:13 +02:00
Mattias Wadman
b8eec4078f
Merge pull request #934 from matmat/dht-patch
jpeg: Add parsing of DHT parameters
2024-04-25 13:29:44 +02:00
Mattias Iko Mattsson
6e13b4b550 jpeg: Add parsing of DHT parameters 2024-04-25 13:17:08 +02:00
Mattias Wadman
9eee65072f
Merge pull request #935 from wader/ignore-so-dotdotdot-works
build,test: Ignore some files to make ./... work
2024-04-21 11:30:37 +02:00
Mattias Wadman
6db6a54d13 build,test: Ignore some files to make ./... work 2024-04-21 09:50:02 +02:00
Mattias Wadman
08ced4515f
Merge pull request #933 from wader/native-trim
fq: Use trim from gojq
2024-04-19 18:23:15 +02:00
Mattias Wadman
6059b9ee1b fq: Use trim from gojq 2024-04-19 18:09:00 +02:00
Mattias Wadman
f746dab7b2
Merge pull request #932 from wader/jpeg-fix-weird-eoi-desc
jpeg: Fix EOI description
2024-04-19 15:34:52 +02:00
Mattias Wadman
b482556025 jpeg: Fix EOI description 2024-04-19 15:26:10 +02:00
Mattias Wadman
4674060dfe
Merge pull request #931 from wader/goreleaser-update
goreleaser: Update action and fix deprecation warning
2024-04-16 11:44:57 +02:00
Mattias Wadman
ad2c032c7e goreleaser: Update action and fix deprecation warning 2024-04-16 11:12:36 +02:00
Mattias Wadman
d30755b06e
Merge pull request #930 from wader/release-0.11.0
fq: Release 0.11.0
2024-04-14 12:51:38 +02:00
Mattias Wadman
2b12258eba jq: Release 0.11.0 2024-04-14 12:41:42 +02:00
Mattias Wadman
efa847faf1
Merge pull request #929 from wader/decode-iopanic-cleanup
decode: Cleanup io panic a bit
2024-04-12 17:33:48 +02:00
Mattias Wadman
ee2ee24dbb decode: Cleanup io panic a bit 2024-04-12 17:23:03 +02:00
Mattias Wadman
d04a846f10
Merge pull request #928 from wader/jp2c-faster-probe
jp2c: Fail probe faster
2024-04-11 00:13:37 +02:00
Mattias Wadman
79992b341a jp2c: Fail probe faster 2024-04-10 23:54:22 +02:00
Mattias Wadman
ff718d8071
Merge pull request #927 from wader/mp4-decode-uinf
mp4: Decode uinf box
2024-04-10 22:31:42 +02:00
Mattias Wadman
70b1b0d6a3 mp4: Decode uinf box 2024-04-10 22:17:39 +02:00
Mattias Wadman
a3f5e29d8f
Merge pull request #926 from wader/mp4-jp-box
mp4: Decode jP box
2024-04-10 21:59:57 +02:00
Mattias Wadman
f6609ccb0f
Merge pull request #925 from wader/jp2c-probe
jp2c: Support probe
2024-04-10 21:57:27 +02:00
Mattias Wadman
4f90a2eaae mp4: Decode jP box 2024-04-10 21:50:55 +02:00
Mattias Wadman
63f7d79c32 jp2c: Support probe 2024-04-10 21:44:14 +02:00
Mattias Wadman
240ae7f57d
Merge pull request #924 from wader/jpeg2000
jp2c: Add jpeg2000 codestream format
2024-04-10 16:32:59 +02:00
Mattias Wadman
ebffb3be7b jp2c: Add jpeg2000 codestream format 2024-04-10 16:24:14 +02:00
Mattias Wadman
ad33225f20
Merge pull request #923 from loselarry/master
chore: fix function name in comment
2024-04-10 10:36:49 +02:00
loselarry
208b3e6bf2 chore: fix function name in comment
Signed-off-by: loselarry <bikangning@yeah.net>
2024-04-10 16:16:51 +08:00
Mattias Wadman
837de9f658
Merge pull request #922 from wader/mp4-fix-jp2-test
mp4: Fix jp2 test
2024-04-09 23:12:39 +02:00
Mattias Wadman
87b6c4dd6a mp4: Fix jp2 test 2024-04-09 22:59:47 +02:00
Mattias Wadman
5cbda8fbb0
Merge pull request #921 from wader/mp4-jp2-boxes
mp4: JPEG200 boxes jp2h and ihdr
2024-04-09 20:43:26 +02:00
Mattias Wadman
8d31040fd2
Merge pull request #920 from wader/mov-avi-trim-space
mp4,avi: Trim spaces for type
2024-04-09 20:38:19 +02:00
Mattias Wadman
8009b6f661 mp4: JPEG200 boxes jp2h and ihdr 2024-04-09 20:34:53 +02:00
Mattias Wadman
1784c43824 mp4,avi: Trim spaces for type 2024-04-09 20:09:12 +02:00
Mattias Wadman
2f858b1c90
Merge pull request #919 from wader/preview-refactor-array_truncate
interp: Add string_truncate option
2024-04-08 17:55:15 +02:00
Mattias Wadman
c8f9cdc9d7 interp: Add string_truncate option
Was hardcoded to 50, now confiugurable also used affected by dd, dv etc
2024-04-08 17:45:10 +02:00
Mattias Wadman
b6ac25cb39
Merge pull request #917 from wader/bump-gomod-golang-x-net-0.24.0
Update gomod-golang-x-net to 0.24.0 from 0.23.0
2024-04-05 19:44:55 +02:00
bump
daba6b5497 Update gomod-golang-x-net to 0.24.0 from 0.23.0
Tags https://github.com/golang/net/tags
2024-04-05 19:29:41 +02:00
Mattias Wadman
1d6e6f590d
Merge pull request #918 from wader/bump-gomod-golang-x-term-0.19.0
Update gomod-golang-x-term to 0.19.0 from 0.18.0
2024-04-05 19:28:34 +02:00
Mattias Wadman
b45d7d621c
Merge pull request #916 from wader/bump-gomod-golang-x-crypto-0.22.0
Update gomod-golang-x-crypto to 0.22.0 from 0.21.0
2024-04-05 19:28:28 +02:00
bump
b2aa59f759 Update gomod-golang-x-term to 0.19.0 from 0.18.0
Tags https://github.com/golang/term/tags
2024-04-05 16:04:18 +00:00
bump
15a7060bff Update gomod-golang-x-crypto to 0.22.0 from 0.21.0
Tags https://github.com/golang/crypto/tags
2024-04-05 16:04:14 +00:00
Mattias Wadman
c2f0189371
Merge pull request #913 from wader/bump-docker-golang-1.22.2
Update docker-golang to 1.22.2 from 1.22.1
2024-04-04 18:15:49 +02:00
Mattias Wadman
2476330deb
Merge pull request #915 from wader/bump-github-go-version-1.22.2
Update github-go-version to 1.22.2 from 1.22.1
2024-04-04 18:15:40 +02:00
Mattias Wadman
a0a5460cf6
Merge pull request #914 from wader/bump-gomod-golang-x-net-0.23.0
Update gomod-golang-x-net to 0.23.0 from 0.22.0
2024-04-04 18:14:46 +02:00
bump
33c93918ba Update github-go-version to 1.22.2 from 1.22.1 2024-04-04 16:03:55 +00:00
bump
77c000e6e9 Update gomod-golang-x-net to 0.23.0 from 0.22.0
Tags https://github.com/golang/net/tags
2024-04-04 16:03:54 +00:00
bump
0afb5b592e Update docker-golang to 1.22.2 from 1.22.1 2024-04-04 16:03:50 +00:00
Mattias Wadman
93eb6e83ef
Merge pull request #912 from wader/icc-profile-nicer-strings
icc_profile: Strip whitespace in header and tag strings
2024-04-03 10:17:53 +02:00
Mattias Wadman
ed6851163f icc_profile: Strip whitespace in header and tag strings 2024-04-03 10:09:31 +02:00
Mattias Wadman
b67ce0268c
Merge pull request #911 from wader/gomod-update
mod: go get non-bump tracked modules
2024-04-01 19:26:42 +02:00
Mattias Wadman
c5e84236df
Merge pull request #910 from wader/go-1.20-cleanup
fq: Use go 1.20 and cleanup
2024-04-01 19:26:33 +02:00
Mattias Wadman
bf7fa07c41 fq: Use go 1.20 and cleanup
Also rename *ex packages to *x
2024-04-01 19:14:10 +02:00
Mattias Wadman
c6165c0caf mod: go get non-bump tracked modules 2024-04-01 18:54:32 +02:00
Mattias Wadman
48351028c5
Merge pull request #909 from wader/lint-more-and-fixes
lint: More linters and some fixes
2024-04-01 18:32:41 +02:00
Mattias Wadman
4ac96a67e0
Merge pull request #908 from wader/decode-align-structs
decode: Align some heavily used structs to save space
2024-04-01 18:25:08 +02:00
Mattias Wadman
b542ff1d6c lint: More linters and some fixes 2024-04-01 18:24:41 +02:00
Mattias Wadman
621d7f2c22 decode: Align some heavily used structs to save space
From betteralign:
Compound: 8 bytes saved: struct with 40 pointer bytes could be 32
Value: 40 bytes saved: struct with 128 pointer bytes could be 88
2024-04-01 18:12:31 +02:00
Mattias Wadman
56cd9e83ed
Merge pull request #907 from wader/update-gojq
gojq: Update fq fork
2024-04-01 15:26:54 +02:00
Mattias Wadman
f5fd587350 gojq: Update fq fork
Fixes issue using ascii_downcase and ascii_upcase with decode value.

From upstream https://github.com/itchyny/gojq/blob/main/CHANGELOG.md:
* implement `ltrim`, `rtrim`, and `trim` functions
* implement `gojq.ParseError` for getting the offset and token of query parsing error
* implement `gojq.HaltError` for detecting halt errors and stopping outer iteration
* fix object construction with duplicate keys (`{x:0,y:1} | {a:.x,a:.y}`)
* fix `halt` and `halt_error` functions to stop the command execution immediately
* fix variable scope of binding syntax (`"a" as $v | def f: $v; "b" as $v | f`)
* fix pre-defined variables to be available in initial modules (`$ARGS` in `~/.jq`)
* fix `ltrimstr` and `rtrimstr` functions to emit error on non-string input
* fix `nearbyint` and `rint` functions to round ties to even
* improve parser to allow `reduce`, `foreach`, `if`, `try`-`catch` syntax as object values
* remove `pow10` in favor of `exp10`, define `scalbn` and `scalbln` by `ldexp`
2024-04-01 15:15:26 +02:00
Mattias Wadman
90c0d9be94
Merge pull request #905 from wader/bump-make-golangci-lint-1.57.2
Update make-golangci-lint to 1.57.2 from 1.57.1
2024-03-29 18:03:02 +01:00
Mattias Wadman
7625b97a09
Merge pull request #906 from wader/bump-github-golangci-lint-1.57.2
Update github-golangci-lint to 1.57.2 from 1.57.1
2024-03-29 18:02:45 +01:00
bump
14aeab0b73 Update github-golangci-lint to 1.57.2 from 1.57.1
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.57.2
2024-03-29 16:03:39 +00:00
bump
a3b63b1037 Update make-golangci-lint to 1.57.2 from 1.57.1
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.57.2
2024-03-29 16:03:37 +00:00
Mattias Wadman
a00cfe0342
Merge pull request #904 from wader/vorbis-opus-syms
opus,vorbis: More sym snake_case
2024-03-27 22:45:14 +01:00
Mattias Wadman
80bccc91ed opus,vorbis: More sym snake_case 2024-03-27 18:30:27 +01:00
Mattias Wadman
ae519be2fd
Merge pull request #902 from wader/gojq-update-halt_error-rework
gojq: Update fq fork
2024-03-24 15:10:40 +01:00
Mattias Wadman
e26704049f gojq: Update fq fork
From upstream:
fix halt and halt_error to stop command immediately
2024-03-24 14:57:42 +01:00
Mattias Wadman
3c93e21cfd
Merge pull request #900 from wader/bump-make-golangci-lint-1.57.1
Update make-golangci-lint to 1.57.1 from 1.57.0
2024-03-21 18:09:46 +01:00
Mattias Wadman
689e9cc49a
Merge pull request #901 from wader/bump-github-golangci-lint-1.57.1
Update github-golangci-lint to 1.57.1 from 1.57.0
2024-03-21 18:09:34 +01:00
bump
72b4569b15 Update github-golangci-lint to 1.57.1 from 1.57.0
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.57.1
2024-03-21 16:03:48 +00:00
bump
4f55b6afc6 Update make-golangci-lint to 1.57.1 from 1.57.0
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.57.1
2024-03-21 16:03:43 +00:00
Mattias Wadman
c364e1b661
Merge pull request #898 from wader/bump-make-golangci-lint-1.57.0
Update make-golangci-lint to 1.57.0 from 1.56.2
2024-03-20 19:07:01 +01:00
Mattias Wadman
b8be180e31
Merge pull request #899 from wader/bump-github-golangci-lint-1.57.0
Update github-golangci-lint to 1.57.0 from 1.56.2
2024-03-20 19:06:41 +01:00
bump
82d96cf990 Update github-golangci-lint to 1.57.0 from 1.56.2
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.57.0
2024-03-20 16:04:53 +00:00
bump
94e80864d7 Update make-golangci-lint to 1.57.0 from 1.56.2
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.57.0
2024-03-20 16:04:49 +00:00
Mattias Wadman
8f3c9cef20
Merge pull request #897 from wader/mp4-add-thmb
mp4: Add thmb box support
2024-03-19 17:52:37 +01:00
Mattias Wadman
2ea70c42ac mp4: Add thmb box support 2024-03-19 17:44:37 +01:00
Mattias Wadman
961101ad0d
Merge pull request #896 from wader/mp4-qt-zero-byte-hdlr-component-name
mp4: Turns out for qt brand hdlr component name might be zero bytes
2024-03-19 17:14:42 +01:00
Mattias Wadman
ed3a126f0a mp4: Turns out for qt brand hdlr component name might be zero bytes
From QuickTime File Format specification:
A (counted) string that specifies the name of the component—that is, the media handler used
when this media was created. This field may contain a zero-length (empty) string.
2024-03-19 17:06:21 +01:00
Mattias Wadman
853f78decc
Merge pull request #895 from wader/doc-update
doc: Regenerate after nes and new ansisvg
2024-03-17 14:03:51 +01:00
Mattias Wadman
36e8287c2b doc: Regenerate after nes and new ansisvg 2024-03-17 13:45:38 +01:00
Mattias Wadman
8855d7addf
Merge pull request #893 from mlofjard/nes
nes: Add support for iNES/NES 2.0 ROM files
2024-03-16 19:27:53 +01:00
Mikael Lofjärd
f3b54042b1 nes: Add support for iNES/NES 2.0 ROM files 2024-03-16 19:18:21 +01:00
Mattias Wadman
b5a96e06e1
Merge pull request #894 from wader/pssh_playready-sym-snake_case
pssh_playready: Use snake_case sym values
2024-03-11 17:26:22 +01:00
Mattias Wadman
87052733e6 pssh_playready: Use snake_case sym values 2024-03-11 17:00:26 +01:00
Mattias Wadman
79e7c71c73
Merge pull request #892 from wader/eval-error-in-path
interp: Add todo test for eval error in path
2024-03-10 10:12:16 +01:00
Mattias Wadman
0db671f626 interp: Add todo test for eval error in path 2024-03-10 09:59:18 +01:00
Mattias Wadman
1e88b9d2c0
Merge pull request #890 from wader/bump-docker-golang-1.22.1
Update docker-golang to 1.22.1 from 1.22.0
2024-03-06 17:15:56 +01:00
Mattias Wadman
354f7eaabc
Merge pull request #891 from wader/bump-github-go-version-1.22.1
Update github-go-version to 1.22.1 from 1.22.0
2024-03-06 17:15:49 +01:00
bump
2657988daf Update github-go-version to 1.22.1 from 1.22.0 2024-03-06 16:03:51 +00:00
bump
9aa99b47a3 Update docker-golang to 1.22.1 from 1.22.0 2024-03-06 16:03:45 +00:00
Mattias Wadman
ac596de1ad
Merge pull request #888 from wader/bump-gomod-golang-x-net-0.22.0
Update gomod-golang-x-net to 0.22.0 from 0.21.0
2024-03-05 17:27:26 +01:00
bump
85f60df2a7 Update gomod-golang-x-net to 0.22.0 from 0.21.0
Tags https://github.com/golang/net/tags
2024-03-05 17:19:24 +01:00
Mattias Wadman
28ccfdd079
Merge pull request #889 from wader/bump-gomod-golang-x-term-0.18.0
Update gomod-golang-x-term to 0.18.0 from 0.17.0
2024-03-05 17:18:10 +01:00
Mattias Wadman
d30a8fe7bf
Merge pull request #887 from wader/bump-gomod-golang-x-crypto-0.21.0
Update gomod-golang-x-crypto to 0.21.0 from 0.20.0
2024-03-05 17:17:34 +01:00
bump
ba9ecb5418 Update gomod-golang-x-term to 0.18.0 from 0.17.0
Tags https://github.com/golang/term/tags
2024-03-05 16:03:45 +00:00
bump
043f067f27 Update gomod-golang-x-crypto to 0.21.0 from 0.20.0
Tags https://github.com/golang/crypto/tags
2024-03-05 16:03:39 +00:00
Mattias Wadman
f7815d4c41
Merge pull request #885 from thesamesam/which-hunt
pkg/cli/test_exp.sh: use command -v
2024-02-28 00:16:27 +01:00
Sam James
08df7f45c8
pkg/cli/test_exp.sh: use command -v
`which` is non-portable and not part of POSIX, but we can use `command -v`
for the same effect.

Debian [0] and Gentoo [1] are both trying to drop which from their base system.

[0] https://lwn.net/Articles/874049/
[1] https://bugs.gentoo.org/646588

Signed-off-by: Sam James <sam@gentoo.org>
2024-02-27 23:04:10 +00:00
Mattias Wadman
77b2c0225f
Merge pull request #884 from wader/bump-gomod-golang-x-crypto-0.20.0
Update gomod-golang-x-crypto to 0.20.0 from 0.19.0
2024-02-27 17:12:24 +01:00
bump
735256b905 Update gomod-golang-x-crypto to 0.20.0 from 0.19.0
Tags https://github.com/golang/crypto/tags
2024-02-27 16:03:54 +00:00
Mattias Wadman
e8b28a6d39
Merge pull request #883 from wader/diff-remove-dep
test: Replace pmezard/go-difflib with go's internal diff
2024-02-26 12:10:22 +01:00
Mattias Wadman
aaa43dfb81 test: Replace pmezard/go-difflib with go's internal diff 2024-02-26 11:39:03 +01:00
Mattias Wadman
e6f98ae148
Merge pull request #882 from wader/sort-formats
fq: Sort formats
2024-02-18 16:41:55 +01:00
Mattias Wadman
7500a8b767 fq: Sort formats 2024-02-18 16:33:39 +01:00
Mattias Wadman
ae296218cb
Merge pull request #880 from wader/bump-make-golangci-lint-1.56.2
Update make-golangci-lint to 1.56.2 from 1.56.1
2024-02-16 17:24:55 +01:00
Mattias Wadman
3f5996171b
Merge pull request #881 from wader/bump-github-golangci-lint-1.56.2
Update github-golangci-lint to 1.56.2 from 1.56.1
2024-02-16 17:24:40 +01:00
bump
a577c3987c Update github-golangci-lint to 1.56.2 from 1.56.1
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.56.2
2024-02-16 16:03:48 +00:00
bump
1c24f64d9b Update make-golangci-lint to 1.56.2 from 1.56.1
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.56.2
2024-02-16 16:03:45 +00:00
Mattias Wadman
a8dd146cb2
Merge pull request #879 from wader/doc-add-imhex
doc: Add ImHex to related tools
2024-02-15 11:20:36 +01:00
Mattias Wadman
e741ca7888 doc: Add ImHex to related tools 2024-02-15 10:31:54 +01:00
Mattias Wadman
e1da76df6c
Merge pull request #878 from mlofjard/fit-peek-array-support
fit: Skip array fields on pre read messages
2024-02-12 16:43:37 +01:00
Mikael Lofjärd
225fd50783 fit: Skip array fields on pre read messages 2024-02-12 16:31:27 +01:00
Mattias Wadman
4f2cdce290
Merge pull request #877 from mlofjard/fit-peek-reference-fields
fit: Fixed subfield referencing fields below self in message
2024-02-12 15:38:20 +01:00
Mikael Lofjärd
f7b067b6ba Fixed subfield referencing fields below self in message 2024-02-12 15:28:42 +01:00
Mattias Wadman
8ebe5da6a7
Merge pull request #856 from wader/release-0.10.0
fq: Release 0.10.0
2024-02-11 17:10:11 +01:00
Mattias Wadman
15ed1611b8 fq: Release 0.10.0 2024-02-11 17:01:55 +01:00
Mattias Wadman
7ca701d950
Merge pull request #876 from wader/fit-date-time
fit: Formatted date/time description for timestamp fields
2024-02-11 01:09:05 +01:00
Mattias Wadman
76307e4d33 fit: Formatted date/time description for timestamp fields 2024-02-11 00:43:00 +01:00
Mattias Wadman
2a90479fb7
Merge pull request #875 from wader/fit-style-date-time
fit: Show crc as hex, lower case "invalid" and some style harmonization
2024-02-10 18:27:13 +01:00
Mattias Wadman
788088f84d fit: Show crc as hex, lower case "invalid" and some style harmonization 2024-02-10 16:24:16 +01:00
Mattias Wadman
f7ae961e1e
Merge pull request #874 from wader/doc-update
doc: Update docs to include fit format
2024-02-10 01:50:23 +01:00
Mattias Wadman
55470deb99 doc: Update docs to include fit format
Also new version of ansisvg
2024-02-10 01:36:05 +01:00
Mattias Wadman
5684bc43c5
Merge pull request #863 from mlofjard/fit
fit: Added support for ANT+ FIT format (used by Garmin devices)
2024-02-10 01:30:35 +01:00
Mikael Lofjärd
6219d57c35 fit: Added support for dynamic subfields 2024-02-10 01:09:40 +01:00
Mikael Lofjärd
33e5851d03 fit: Fix field casing to snake_case. Misc cleanup. 2024-02-10 01:09:16 +01:00
Mikael Lofjärd
88622804f7 fit: Made long/lat present as float64 2024-02-10 01:09:15 +01:00
Mikael Lofjärd
54c6f0cdc1 fit: Added support for "invalid" value checking.
Added support for array values.
Added documentation and tests.
2024-02-10 01:08:02 +01:00
Mikael Lofjärd
46dbf5b7da fit: Added support for ANT+ FIT format (used by Garmin devices) 2024-02-10 01:08:01 +01:00
Mattias Wadman
6722dd0fdc
Merge pull request #872 from wader/bump-make-golangci-lint-1.56.1
Update make-golangci-lint to 1.56.1 from 1.56.0
2024-02-09 17:46:48 +01:00
Mattias Wadman
07b62fff5c
Merge pull request #873 from wader/bump-github-golangci-lint-1.56.1
Update github-golangci-lint to 1.56.1 from 1.56.0
2024-02-09 17:46:37 +01:00
bump
283380ba6a Update github-golangci-lint to 1.56.1 from 1.56.0
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.56.1
2024-02-09 16:03:33 +00:00
bump
5369576dae Update make-golangci-lint to 1.56.1 from 1.56.0
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.56.1
2024-02-09 16:03:31 +00:00
Mattias Wadman
b77550f421
Merge pull request #871 from wader/macos-home-config
interp: Support ~/.config/fq as fallback on macOS
2024-02-09 16:37:59 +01:00
Mattias Wadman
217660005e interp: Support ~/.config/fq as fallback on macOS
Got fed up with ~/Library/Application Support/fq
2024-02-09 16:10:38 +01:00
Mattias Wadman
81ca47fdd4
Merge pull request #869 from wader/bump-gomod-golang-x-net-0.21.0
Update gomod-golang-x-net to 0.21.0 from 0.20.0
2024-02-08 17:34:52 +01:00
Mattias Wadman
355e88f031
Merge pull request #870 from wader/bump-gomod-golang-x-term-0.17.0
Update gomod-golang-x-term to 0.17.0 from 0.16.0
2024-02-08 17:27:04 +01:00
bump
40bcb194ae Update gomod-golang-x-net to 0.21.0 from 0.20.0
Tags https://github.com/golang/net/tags
2024-02-08 17:26:26 +01:00
Mattias Wadman
9ee6d2b5d3
Merge pull request #868 from wader/bump-gomod-golang-x-crypto-0.19.0
Update gomod-golang-x-crypto to 0.19.0 from 0.18.0
2024-02-08 17:24:18 +01:00
bump
310c78ea14 Update gomod-golang-x-term to 0.17.0 from 0.16.0
Tags https://github.com/golang/term/tags
2024-02-08 16:03:56 +00:00
bump
b5388eaae3 Update gomod-golang-x-crypto to 0.19.0 from 0.18.0
Tags https://github.com/golang/crypto/tags
2024-02-08 16:03:50 +00:00
Mattias Wadman
e23409b992
Merge pull request #865 from wader/bump-make-golangci-lint-1.56.0
Update make-golangci-lint to 1.56.0 from 1.55.2
2024-02-07 17:40:26 +01:00
Mattias Wadman
ea9230565f
Merge pull request #866 from wader/bump-github-golangci-lint-1.56.0
Update github-golangci-lint to 1.56.0 from 1.55.2
2024-02-07 17:40:19 +01:00
bump
888b0be069 Update github-golangci-lint to 1.56.0 from 1.55.2
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.56.0

Remove some nolint:errorlint not needed anymore
2024-02-07 17:31:49 +01:00
Mattias Wadman
59f7e17332
Merge pull request #864 from wader/bump-docker-golang-1.22.0
Update docker-golang to 1.22.0 from 1.21.6
2024-02-07 17:24:34 +01:00
Mattias Wadman
1696f790a4
Merge pull request #867 from wader/bump-github-go-version-1.22.0
Update github-go-version to 1.22.0 from 1.21.6
2024-02-07 17:24:08 +01:00
bump
5bfb2bb12d Update github-go-version to 1.22.0 from 1.21.6 2024-02-07 16:04:26 +00:00
bump
536583cfd0 Update make-golangci-lint to 1.56.0 from 1.55.2
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.56.0
2024-02-07 16:04:21 +00:00
bump
f9e1e7598a Update docker-golang to 1.22.0 from 1.21.6 2024-02-07 16:04:19 +00:00
Mattias Wadman
aa48108ba7
Merge pull request #862 from wader/display-zero-line-bytes-crash
interp: Fix crash when using line_bytes=0
2024-02-06 17:01:09 +01:00
Mattias Wadman
69ae76593c interp: Fix crash when using line_bytes=0 2024-02-06 16:33:50 +01:00
Mattias Wadman
e13940fa4a
Merge pull request #861 from wader/readme-fixes
doc: Fix weird wording in README.md
2024-02-06 15:45:12 +01:00
Mattias Wadman
63e0aa3c9d doc: Fix weird wording in README.md 2024-02-06 15:32:43 +01:00
Mattias Wadman
8999c84e6c
Merge pull request #860 from wader/pcapnp-all-section-header-cleanup
pcapng: Decode all section headers
2024-02-06 01:26:49 +01:00
Mattias Wadman
e3af46702c pcapng: Decode all section headers, clenaup descriptions
Some refactor also
2024-02-06 01:06:59 +01:00
Mattias Wadman
524777828e
Merge pull request #859 from wader/aac-more-cpe
aac_frame: CPE: Decode instance tag and common window flag
2024-01-29 12:29:07 +01:00
Mattias Wadman
e51c746db4 aac_frame: CPE: Decode instance tag and common window flag 2024-01-29 12:13:19 +01:00
Mattias Wadman
a13808d2ff
Merge pull request #857 from wader/webp-lossless
webp: Decode width, height and flags for lossless webp
2024-01-20 17:37:24 +01:00
Mattias Wadman
b0421dfc31 webp: Decode width, height and flags for lossless webp 2024-01-20 17:14:27 +01:00
Mattias Wadman
422dd65814
Merge pull request #855 from wader/update-gojq
gojq: Update fq fork
2024-01-18 18:23:30 +01:00
Mattias Wadman
5829c6b4ca gojq: Update fq fork
From upstream:
fix object construction with duplicate keys
2024-01-18 18:08:40 +01:00
Mattias Wadman
91db62bd59
Merge pull request #854 from wader/readline-bump-update
readline: Update to 0.1.0 and add bump config
2024-01-15 10:14:30 +01:00
Mattias Wadman
cd572d3ace readline: Update to 0.1.0 and add bump config 2024-01-15 10:03:53 +01:00
Mattias Wadman
539f15d0a9
Merge pull request #852 from wader/bump-docker-golang-1.21.6
Update docker-golang to 1.21.6 from 1.21.5
2024-01-10 17:47:20 +01:00
Mattias Wadman
3aedfac6d2
Merge pull request #853 from wader/bump-github-go-version-1.21.6
Update github-go-version to 1.21.6 from 1.21.5
2024-01-10 17:47:04 +01:00
bump
3f48e3beb1 Update github-go-version to 1.21.6 from 1.21.5 2024-01-10 16:03:55 +00:00
bump
836af78a48 Update docker-golang to 1.21.6 from 1.21.5 2024-01-10 16:03:51 +00:00
Mattias Wadman
86e3ff1ff5
Merge pull request #851 from wader/bump-gomod-golang-x-net-0.20.0
Update gomod-golang-x-net to 0.20.0 from 0.19.0
2024-01-09 17:36:23 +01:00
Mattias Wadman
b315e1ae52
Merge pull request #850 from wader/bump-gomod-golang-x-crypto-0.18.0
Update gomod-golang-x-crypto to 0.18.0 from 0.17.0
2024-01-09 17:36:17 +01:00
bump
2e22e1b824 Update gomod-golang-x-net to 0.20.0 from 0.19.0
Tags https://github.com/golang/net/tags
2024-01-09 16:03:47 +00:00
bump
561fed97ec Update gomod-golang-x-crypto to 0.18.0 from 0.17.0
Tags https://github.com/golang/crypto/tags
2024-01-09 16:03:45 +00:00
Mattias Wadman
9939039657
Merge pull request #849 from wader/docs-update-svgs
doc: Generate svgs with new ansisvg
2024-01-08 13:38:29 +01:00
Mattias Wadman
e5fd1eb427 doc: Generate svgs with new ansisvg 2024-01-08 13:27:54 +01:00
Mattias Wadman
36da30b4bf
Merge pull request #848 from wader/bump-temp-skip-ergochat-readline
bump,readline: Skip bump until not rc
2024-01-05 17:18:56 +01:00
Mattias Wadman
0070e389b9 bump,readline: Skip bump until not rc 2024-01-05 17:07:46 +01:00
Mattias Wadman
13fc847127
Merge pull request #847 from wader/png-correct-flags
png: Type flags were off-by-one bit
2024-01-05 17:00:41 +01:00
Mattias Wadman
38b4412ad4 png: Type flags were off-by-one bit 2024-01-05 16:53:05 +01:00
Mattias Wadman
ae06aec83a
Merge pull request #846 from slingamn/rc1
bump readline to 0.1.0-rc1
2024-01-05 16:24:41 +01:00
Shivaram Lingamneni
d0a1b3010f bump readline to 0.1.0-rc1 2024-01-05 06:14:36 +00:00
Mattias Wadman
17ddf45944
Merge pull request #845 from wader/bump-gomod-golang-x-term-0.16.0
Update gomod-golang-x-term to 0.16.0 from 0.15.0
2024-01-04 17:16:34 +01:00
bump
2a1d9707cf Update gomod-golang-x-term to 0.16.0 from 0.15.0
Tags https://github.com/golang/term/tags
2024-01-04 16:03:37 +00:00
Mattias Wadman
a30ca8c390
Merge pull request #844 from wader/gojq-rebase-update
gojq: Update fq fork
2024-01-01 15:30:57 +01:00
Mattias Wadman
d155c80ccc gojq: Update fq fork
From upstream:
fix pre-defined variables to be available in initial modules
2024-01-01 15:21:47 +01:00
Mattias Wadman
7cc9cbf788
Merge pull request #843 from wader/go-mod-readline-changes-url-fix
readline,bump: Fix version compare link
2023-12-31 17:39:31 +01:00
Mattias Wadman
fb1c625a22 readline,bump: Fix version compare link 2023-12-31 17:18:16 +01:00
Mattias Wadman
a42f22e2b0
Merge pull request #842 from wader/bump-ergochat-readline-81f0f2329ad3
Update ergochat-readline to 81f0f2329ad3 from cca60bf24c9f
2023-12-29 18:25:26 +01:00
bump
54da5efc89 Update ergochat-readline to 81f0f2329ad3 from cca60bf24c9f
Source diff cca60bf24c9f..81f0f2329ad3 https://github.com/ergochat/readline/compare/vcca60bf24c9f..v81f0f2329ad3
2023-12-29 16:03:48 +00:00
Mattias Wadman
a184d5b490
Merge pull request #840 from wader/bump-ergochat-readline
bump,readline: Add bump config and update to latest master
2023-12-25 17:19:54 +01:00
Mattias Wadman
b56258cf77 bump,readline: Add bump config and update to latest master 2023-12-25 17:09:53 +01:00
Mattias Wadman
89be298d8a
Merge pull request #839 from wader/tls-fix-typos
tls: Fix field name typos
2023-12-25 00:45:35 +01:00
Mattias Wadman
3b7cc1f4f0 tls: Fix field name typos 2023-12-25 00:32:42 +01:00
Mattias Wadman
d77ee731d0
Merge pull request #646 from wader/use-ergochat-readline
readline: Switch to ergochat/readline
2023-12-24 20:42:38 +01:00
Mattias Wadman
41226f48d8 readline: Switch to ergochat/readline
All fq changes merged.
2023-12-24 20:35:15 +01:00
Mattias Wadman
569bd615f5
Merge pull request #838 from wader/bump-gomod-golang-x-crypto-0.17.0
Update gomod-golang-x-crypto to 0.17.0 from 0.16.0
2023-12-19 10:03:57 +01:00
bump
6aba928fca Update gomod-golang-x-crypto to 0.17.0 from 0.16.0
Tags https://github.com/golang/crypto/tags
2023-12-19 08:57:05 +00:00
Mattias Wadman
50c4318a0d
Merge pull request #836 from wader/float80-relicense-to-mit
fq: Relicense float80 code to MIT
2023-12-15 00:48:08 +01:00
Mattias Wadman
a07ce11715 fq: Relicense float80 code to MIT
Related to #835
2023-12-15 00:41:16 +01:00
Mattias Wadman
56c47229f0
Merge pull request #834 from wader/mp4-track-dref
mp4: Don't decode samples if track has external data reference
2023-12-11 15:11:06 +01:00
Mattias Wadman
1f2ef4ebb8
Merge pull request #833 from wader/mp4-trak-traf-heir-instead-of-id
mp4: Use box structure instead of track id to keep track for sample t…
2023-12-11 15:00:03 +01:00
Mattias Wadman
0d06e0a4cb mp4: Don't decode samples if track has external data reference
Also add field for data reference url

Fixes FileFormatConformance/data/file_features/published/isobmff/02_dref_edts_img.mp4
2023-12-11 14:55:10 +01:00
Mattias Wadman
d2c5ce5575 mp4: Use box structure instead of track id to keep track for sample table data
Fixes issue with mp4s where tkhd is after sample table boxes
2023-12-11 14:48:54 +01:00
Mattias Wadman
b05c7ec54f
Merge pull request #824 from mikez/leveldb
leveldb: Add LevelDB support
2023-12-09 16:47:43 +01:00
Michael B.
08e3d2d2a6 leveldb: improve stringify by preallocating result 2023-12-09 15:23:45 +01:00
Michael B.
2f5f183106 leveldb: decode unfragmented .log files further; fix UTF8 decoding
decode unfragmented .log files:

 - break leveldb_log.go into leveldb_log_blocks.go and leveldb_log.go;
   the former is used by both .MANIFEST (descriptor) and .LOG.
 - in leveldb_log, introduce readBatch that decodes further

 fix UTF8 decoding:

 - introduce fieldUTF8ReturnBytes and stringify to handle multi-byte
   UTF8-encodings correctly.
2023-12-09 14:13:33 +01:00
Michael B.
e826f097d3 leveldb: fix Errorf arguments 2023-12-09 11:31:44 +01:00
Michael B.
07ad9401a4 leveldb: rename "suffix" to "sequence_number_suffix" 2023-12-09 08:51:54 +01:00
Michael B.
e735ceadf1 leveldb: propagate error 2023-12-09 08:45:45 +01:00
Michael B.
8665df56e8 leveldb: fix table's data blocks' internal keys decoding
In the LevelDB encoding, the internal key can be cut at any byte:
including the user_key, type, or sequence_number. The resulting prefix
is shared among subsequent keys and not specified explicitly by them.

This fixes a previous mistaken belief that cuts can't happen in the
last 8 bytes of the type & sequence number.

Tests are added.
2023-12-08 23:37:10 +01:00
Mattias Wadman
ebf809c045
Merge pull request #832 from wader/mp4-ctts-signed
mp4: ctts v0 sample_offset seems to be signed in practice
2023-12-08 18:18:47 +01:00
Mattias Wadman
aadf26f6c7 mp4: ctts v0 sample_offset seems to be signed in practice
sample file from the wild has v0 as negatice offsets
ffmpeg mov.c ignored versions and always read as signed
2023-12-08 17:24:20 +01:00
Mattias Wadman
11fc0f2a4d
Merge pull request #831 from wader/doc-update
doc: Update svgs after ansisvg update
2023-12-08 11:05:52 +01:00
Mattias Wadman
c47756dcd2 doc: Update svgs after ansisvg update
Now generates svg:s with better select support
2023-12-08 10:39:12 +01:00
Michael B.
287ed366f6 leveldb: fix metaindex keys, refactoring, and jq syntax per PR 2023-12-07 17:11:55 +01:00
Mattias Wadman
f74bbecf69
Merge pull request #830 from wader/bson-jq-style
bson: Fix jq style a bit
2023-12-07 15:24:36 +01:00
Mattias Wadman
f5f8e93c39 bson: Fix jq style a bit 2023-12-07 15:09:16 +01:00
Michael B.
3a396e156e leveldb: improve log documentation 2023-12-07 14:36:47 +01:00
Mattias Wadman
2c552e07e5
Merge pull request #829 from wader/hevc_sps-fixes
hevc_sps: Fix some incorrect profile_tier_level decoding
2023-12-07 13:43:40 +01:00
Mattias Wadman
919e07952c hevc_sps: Fix some incorrect profile_tier_level decoding
Array was inverted causing field already exists
Wrong number of bits read for reserved_zero_2bits
For sub_layers pass correct level present flag
2023-12-07 13:26:53 +01:00
Michael B.
1ba8dec56c leveldb: in some properties, change spaces to underscores 2023-12-07 13:03:53 +01:00
Michael B.
cc0d5a8b9b leveldb: update docs 2023-12-07 13:02:55 +01:00
Michael B.
41f27a13c1 leveldb: add torepr for descriptor 2023-12-07 12:43:55 +01:00
Michael B.
42830911d0 leveldb: fix all.fqtest failures 2023-12-06 23:45:37 +01:00
Michael B.
fe1099b95d leveldb: updates per PR comments 2023-12-06 23:22:32 +01:00
Michael B.
2df0f0fbcf leveldb: add log and descriptor decoders 2023-12-06 19:24:49 +01:00
Mattias Wadman
4ef91b5b8b
Merge pull request #828 from wader/bump-github-go-version-1.21.5
Update github-go-version to 1.21.5 from 1.21.4
2023-12-06 17:38:25 +01:00
Mattias Wadman
afa3ae19fa
Merge pull request #827 from wader/bump-docker-golang-1.21.5
Update docker-golang to 1.21.5 from 1.21.4
2023-12-06 17:38:17 +01:00
bump
bed912c351 Update github-go-version to 1.21.5 from 1.21.4 2023-12-06 16:04:07 +00:00
bump
43c7693704 Update docker-golang to 1.21.5 from 1.21.4 2023-12-06 16:04:03 +00:00
Mattias Wadman
86e6d58ad2
Merge pull request #826 from wader/mpeg_es_ios_descriptors
mpeg_es: Support ES_ID_Inc and decode descriptors for IOD tags
2023-12-06 15:33:31 +01:00
Mattias Wadman
fca55b2c09 mpeg_es: Support ES_ID_Inc and decode descriptors for IOD tags 2023-12-06 15:12:53 +01:00
Mattias Wadman
d284808cb5
Merge pull request #825 from wader/test-update-flag
test: Support to more common -update flag
2023-12-06 12:32:03 +01:00
Mattias Wadman
7906f33d51 test: Support to more common -update flag 2023-12-06 11:47:38 +01:00
Michael B.
78a3e94bd7 leveldb: rename functions and add comments 2023-12-05 16:33:50 +01:00
Michael B.
b05aa997ab leveldb: address PR comments 2023-12-05 11:31:30 +01:00
Michael B.
efc59a8130 ldb: uncompression support 2023-12-04 18:49:59 +01:00
Michael B.
fb910bd44b ldb: first draft
Example:
go run . -d ldb d format/ldb/testdata/000005.ldb
2023-12-04 12:05:06 +01:00
Mattias Wadman
146fac3547
Merge pull request #823 from nichtich/patch-2
Add DFDL acronym to README.md
2023-12-03 11:06:45 +01:00
Jakob Voß
6c3914aad6
Add DFDL acronym to README.md 2023-12-03 10:42:46 +01:00
Mattias Wadman
b55b578dbc
Merge pull request #821 from wader/goreleaser-fix-deprecated
goreleaser: Fix deprecated options
2023-11-28 20:27:34 +01:00
Mattias Wadman
a793d10933 goreleaser: Fix deprecated options 2023-11-28 20:19:12 +01:00
Mattias Wadman
abeb3602e6
Merge pull request #820 from wader/bump-gomod-golang-x-net-0.19.0
Update gomod-golang-x-net to 0.19.0 from 0.18.0
2023-11-28 17:18:38 +01:00
Mattias Wadman
cbf68663b5
Merge pull request #819 from wader/bump-gomod-golang-x-crypto-0.16.0
Update gomod-golang-x-crypto to 0.16.0 from 0.15.0
2023-11-28 17:18:32 +01:00
bump
0200a4eea7 Update gomod-golang-x-net to 0.19.0 from 0.18.0
Tags https://github.com/golang/net/tags
2023-11-28 16:04:04 +00:00
bump
be79c19304 Update gomod-golang-x-crypto to 0.16.0 from 0.15.0
Tags https://github.com/golang/crypto/tags
2023-11-28 16:04:00 +00:00
Mattias Wadman
1482145718
Merge pull request #817 from wader/release-0.9.0
fq: Release 0.9.0
2023-11-25 18:45:41 +01:00
Mattias Wadman
3e00ccbff6 fq: Release 0.9.0 2023-11-25 18:37:10 +01:00
Mattias Wadman
d92cf8837d
Merge pull request #818 from wader/update-mods
mod: Update golang.org/x/exp and github.com/gomarkdown/markdown
2023-11-25 18:36:18 +01:00
Mattias Wadman
b24ed16181 mod: Update golang.org/x/exp and github.com/gomarkdown/markdown 2023-11-25 18:28:55 +01:00
Mattias Wadman
1bdcafe060
Merge pull request #816 from wader/riff-trim-id
webp,avi,wav,aiff: Trim RIFF id string
2023-11-25 15:23:53 +01:00
Mattias Wadman
6034c7054a webp,avi,wav,aiff: Trim RIFF id string 2023-11-25 15:02:09 +01:00
Mattias Wadman
f83823b175
Merge pull request #815 from wader/bump-gomod-gopacket-1.2.0
Update gomod-gopacket to 1.2.0 from 1.1.1
2023-11-25 10:40:15 +01:00
bump
527aad6c74 Update gomod-gopacket to 1.2.0 from 1.1.1
Release notes https://github.com/gopacket/gopacket/releases/tag/v1.2.0
2023-11-25 09:21:39 +00:00
Mattias Wadman
cfd18e7657
Merge pull request #814 from wader/usage-remove-spurious-backtick
doc: Remove spurious backtick
2023-11-10 15:03:08 +01:00
Mattias Wadman
5abf151f9b doc: Remove spurious backtick 2023-11-10 14:35:22 +01:00
Mattias Wadman
b6056f1683
Merge pull request #813 from wader/bump-gomod-golang-x-net-0.18.0
Update gomod-golang-x-net to 0.18.0 from 0.17.0
2023-11-09 17:52:52 +01:00
Mattias Wadman
a1bde9833c
Merge pull request #812 from wader/bump-gomod-golang-x-crypto-0.15.0
Update gomod-golang-x-crypto to 0.15.0 from 0.14.0
2023-11-09 17:52:42 +01:00
bump
14fe728cc0 Update gomod-golang-x-net to 0.18.0 from 0.17.0
Tags https://github.com/golang/net/tags
2023-11-09 16:03:45 +00:00
bump
8d4d18d367 Update gomod-golang-x-crypto to 0.15.0 from 0.14.0
Tags https://github.com/golang/crypto/tags
2023-11-09 16:03:43 +00:00
Mattias Wadman
00307409b4
Merge pull request #810 from wader/bump-docker-golang-1.21.4
Update docker-golang to 1.21.4 from 1.21.3
2023-11-08 19:02:16 +01:00
Mattias Wadman
17e9d94281
Merge pull request #811 from wader/bump-github-go-version-1.21.4
Update github-go-version to 1.21.4 from 1.21.3
2023-11-08 19:01:53 +01:00
bump
caef93cec3 Update github-go-version to 1.21.4 from 1.21.3 2023-11-08 16:04:04 +00:00
bump
c31fc87461 Update docker-golang to 1.21.4 from 1.21.3 2023-11-08 16:03:59 +00:00
Mattias Wadman
e60fc5fc0a
Merge pull request #808 from wader/gojq-rebase
gojq: Update rebased fq fork
2023-11-05 18:18:12 +01:00
Mattias Wadman
dc376f3491 gojq: Update rebased fq fork
From upstream:
    implement pick function
    fix comment continuation with newline in dos format
    implement comment continuation with backslash
2023-11-05 18:04:09 +01:00
Mattias Wadman
0d67c7d96a
Merge pull request #807 from wader/bump-gomod-golang/text-0.14.0
Update gomod-golang/text to 0.14.0 from 0.13.0
2023-11-04 17:52:58 +01:00
bump
1011f19c36 Update gomod-golang/text to 0.14.0 from 0.13.0
Source diff 0.13.0..0.14.0 https://github.com/golang/text/compare/v0.13.0..v0.14.0
2023-11-04 16:03:44 +00:00
Mattias Wadman
6cbdd953ba
Merge pull request #805 from wader/bump-make-golangci-lint-1.55.2
Update make-golangci-lint to 1.55.2 from 1.55.1
2023-11-03 17:14:46 +01:00
Mattias Wadman
4b0018f70a
Merge pull request #806 from wader/bump-github-golangci-lint-1.55.2
Update github-golangci-lint to 1.55.2 from 1.55.1
2023-11-03 17:11:42 +01:00
bump
534a2c8cd1 Update github-golangci-lint to 1.55.2 from 1.55.1
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.55.2
2023-11-03 16:03:53 +00:00
bump
36576a5ca3 Update make-golangci-lint to 1.55.2 from 1.55.1
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.55.2
2023-11-03 16:03:50 +00:00
Mattias Wadman
1fb2054fc3
Merge pull request #804 from wader/exif-broken-next-ifd-offset
exif,tiff: Handle broken last next ifd offset by treating it as end m…
2023-11-03 16:23:30 +01:00
Mattias Wadman
02b3527608 exif,tiff: Handle broken last next ifd offset by treating it as end marker 2023-11-03 16:13:49 +01:00
Mattias Wadman
80bfbb405b
Merge pull request #803 from wader/webp-fixes-and-use-riff
webp: Refactor to use shared riff code decode VP8X, EXIF and XMP chunks
2023-11-01 19:28:59 +01:00
Mattias Wadman
9e58067f4b webp: Refactor to use riff code and decode VP8X, EXIF, ICCP and XMP chunks 2023-11-01 18:58:09 +01:00
Mattias Wadman
7c8fa05e30
Merge pull request #801 from wader/interp-synthetic-raw-inf-recur
interp: Fix infinite recursion when casting synthetic raw value into …
2023-10-29 16:23:41 +01:00
Mattias Wadman
bed89f7d7a
Merge pull request #800 from wader/protobuf-string-bytes-value
protobuf: No need for synthetic for string and bytes value
2023-10-29 16:23:35 +01:00
Mattias Wadman
29e75411ed interp: Fix infinite recursion when casting synthetic raw value into a jq value 2023-10-29 16:11:05 +01:00
Mattias Wadman
5e2e49e31b protobuf: No need for synthetic for string and bytes value 2023-10-29 16:10:22 +01:00
Mattias Wadman
4783e52d78
Merge pull request #798 from wader/bump-make-golangci-lint-1.55.1
Update make-golangci-lint to 1.55.1 from 1.55.0
2023-10-25 18:17:58 +02:00
Mattias Wadman
d8e9c20582
Merge pull request #799 from wader/bump-github-golangci-lint-1.55.1
Update github-golangci-lint to 1.55.1 from 1.55.0
2023-10-25 18:17:51 +02:00
Mattias Wadman
5cc27329d6
Merge pull request #797 from wader/macho-timestamps
macho: Move timestamp string to description
2023-10-25 18:10:33 +02:00
bump
60edf973b8 Update github-golangci-lint to 1.55.1 from 1.55.0
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.55.1
2023-10-25 16:03:49 +00:00
bump
5f06364f30 Update make-golangci-lint to 1.55.1 from 1.55.0
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.55.1
2023-10-25 16:03:47 +00:00
Mattias Wadman
797c7d9065 macho: Move timestamp string to description 2023-10-25 18:00:44 +02:00
Mattias Wadman
a418eb0e63
Merge pull request #796 from wader/macho-flags-endian
macho: Respect endian when decoding flags
2023-10-25 17:57:24 +02:00
Mattias Wadman
71a5fc91ad macho: Respect endian when decoding flags 2023-10-25 17:43:36 +02:00
Mattias Wadman
0cebaed5ca
Merge pull request #795 from wader/gzip-multi-memebers
gzip: Correctly handle multiple members
2023-10-24 19:02:43 +02:00
Mattias Wadman
ac276ee119 gzip: Correctly handle multiple members
A gzip file consists of one or more "members" that are concatenated on uncompress.

Introduce a members array with each member and uncompressed is now the concatenation.

Fixes #794
2023-10-24 10:45:32 +02:00
Mattias Wadman
a4cfdcf518
Merge pull request #793 from wader/zip-correct-date-time-fields
zip: Fix incorrect time/date, add extended timestamp and refactor
2023-10-24 00:06:36 +02:00
Mattias Wadman
a83cac6021 zip: Fix incorrect time/date, add extended timestamp and refactor
MSDOS time/date was read in wrong order and also did not take into account
that the bit ranges in the shortis are in little-endian.

Remodel modification_time/date to be one struct with fat_time, fat_date LE shorts
and then synthetic values for day, hours, minute etc and also a unix field with the
timestamp as unix time.

Also refactor and clenaup extra fields/extended code a bit.

Fixes #792
2023-10-23 11:11:27 +02:00
Mattias Wadman
1a3823f187
Merge pull request #790 from wader/bump-make-golangci-lint-1.55.0
Update make-golangci-lint to 1.55.0 from 1.54.2
2023-10-20 18:44:45 +02:00
Mattias Wadman
3f7455a05f
Merge pull request #791 from wader/bump-github-golangci-lint-1.55.0
Update github-golangci-lint to 1.55.0 from 1.54.2
2023-10-20 18:44:37 +02:00
bump
de7fdae598 Update github-golangci-lint to 1.55.0 from 1.54.2
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.55.0
2023-10-20 16:03:51 +00:00
bump
0c22c79b51 Update make-golangci-lint to 1.55.0 from 1.54.2
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.55.0
2023-10-20 16:03:48 +00:00
Mattias Wadman
11c9df49da
Merge pull request #786 from wader/avi-decode-extended-chunks
avi: Add extended chunks support and option
2023-10-20 16:07:17 +02:00
Mattias Wadman
d703321a7a avi: Add extended chunks support and option
This is used for >1gb files. Disable decode will speed up
deocde a lot but will probably also produce some gaps as same
part of the movi chunks will not be reference by the indx index.
2023-10-20 15:55:19 +02:00
Mattias Wadman
76edd48dff
Merge pull request #789 from wader/display-bits-exclusive-end
interp: Change bit ranges to use exclusive end
2023-10-20 15:53:00 +02:00
Mattias Wadman
051a70bd4b interp: Change bit ranges to use exclusive end
All other ranges and slicing uses exclusive end so i think it make sense
to make it consistent.

Update docs and add additional example for non-byte-aligned field.

Also fixes issue showing zero bit ranges as start-NA.
2023-10-20 15:37:26 +02:00
Mattias Wadman
677c7e4258
Merge pull request #788 from wader/from_jq-better-error
interp: Better from_jq error handling
2023-10-20 14:39:44 +02:00
Mattias Wadman
45a8dd9c74 interp: Better from_jq error handling
Thanks @emanuele6 for reporting
2023-10-20 14:21:58 +02:00
Mattias Wadman
5b9c902949
Merge pull request #787 from wader/matroska-ebml-date
matroska: Decode ebml date type
2023-10-17 11:31:32 +02:00
Mattias Wadman
1d14ea51cd matroska: Decode ebml date type
Also some refactor of shared date decode functions to allow unit
2023-10-17 11:10:48 +02:00
Mattias Wadman
5af1174741
Merge pull request #784 from wader/bump-gomod-golang-x-net-0.17.0
Update gomod-golang-x-net to 0.17.0 from 0.16.0
2023-10-11 18:16:16 +02:00
Mattias Wadman
1e992d4b12
Merge pull request #783 from wader/bump-docker-golang-1.21.3
Update docker-golang to 1.21.3 from 1.21.2
2023-10-11 18:15:52 +02:00
Mattias Wadman
8fecd75ef0
Merge pull request #785 from wader/bump-github-go-version-1.21.3
Update github-go-version to 1.21.3 from 1.21.2
2023-10-11 18:14:29 +02:00
bump
d7663569bd Update github-go-version to 1.21.3 from 1.21.2 2023-10-11 16:04:00 +00:00
bump
5381f38108 Update gomod-golang-x-net to 0.17.0 from 0.16.0
Tags https://github.com/golang/net/tags
2023-10-11 16:03:58 +00:00
bump
d70471169b Update docker-golang to 1.21.3 from 1.21.2 2023-10-11 16:03:51 +00:00
Mattias Wadman
80aaef9e84
Merge pull request #781 from wader/brightbg-fixes
interp: Improve colors when using light background
2023-10-11 14:51:10 +02:00
Mattias Wadman
a6984a8d1b
Merge pull request #782 from wader/avi-indx-unused
avi: Add unused field for extra indx chunk space
2023-10-10 17:03:43 +02:00
Mattias Wadman
0f225c3245 avi: Add unused field for extra indx chunk space 2023-10-10 16:46:05 +02:00
Mattias Wadman
c28163f8f4 interp: Improve colors when using light background
Related to #729
2023-10-10 11:08:38 +02:00
Mattias Wadman
a9051e8c5a
Merge pull request #780 from wader/avi-even-better-sample-size-heuristics
avi: Increase sample size heuristics to 32bit stereo
2023-10-08 10:51:12 +02:00
Mattias Wadman
c7ec18d6d2 avi: Increase sample size heuristics to 32bit stereo 2023-10-08 10:33:36 +02:00
Mattias Wadman
b921a5f91e
Merge pull request #779 from wader/avi-cleanup-consts
avi: Add stream type constants
2023-10-07 21:52:36 +02:00
Mattias Wadman
55521bbaec avi: Add stream type constants 2023-10-07 21:19:14 +02:00
Mattias Wadman
9e92cdc6f7
Merge pull request #778 from wader/avi-only-sample-heru-if-no-format
avi: Only use sample size heuristics if there is no format
2023-10-07 18:21:29 +02:00
Mattias Wadman
9b10e59802 avi: Only use sample size heuristics if there is no format 2023-10-07 18:07:46 +02:00
Mattias Wadman
87ac051c3d
Merge pull request #777 from wader/scalar-refactor-syntetic
decode,interp: Make synthetic values more visible and not act as deco…
2023-10-07 18:01:01 +02:00
Mattias Wadman
23ae4d978b decode,interp: Make synthetic values more visible and not act as decode values 2023-10-07 17:40:16 +02:00
Mattias Wadman
aa00c8f67c
Merge pull request #776 from wader/avi-sample-size
avi: Handle stream sample size
2023-10-07 17:12:24 +02:00
Mattias Wadman
df085b91b9 avi: Handle stream sample size
When > 0 split sample into sub samples
2023-10-07 16:48:59 +02:00
Mattias Wadman
3549e5ecfb
Merge pull request #775 from wader/avi-stream-type-handler
avi: Add type, handler, format_tag and compreession per stream
2023-10-07 15:45:32 +02:00
Mattias Wadman
5196554989 avi: Add type, handler, format_tag and compreession per stream
Also simplify stream tracking code a bit
2023-10-07 11:35:30 +02:00
Mattias Wadman
4fbeacdf50
Merge pull request #772 from wader/bump-docker-golang-1.21.2
Update docker-golang to 1.21.2 from 1.21.1
2023-10-06 18:18:10 +02:00
Mattias Wadman
a74eefe0ed
Merge pull request #773 from wader/bump-gomod-golang-x-net-0.16.0
Update gomod-golang-x-net to 0.16.0 from 0.15.0
2023-10-06 18:18:04 +02:00
Mattias Wadman
9e0d57b24d
Merge pull request #774 from wader/bump-github-go-version-1.21.2
Update github-go-version to 1.21.2 from 1.21.1
2023-10-06 18:17:58 +02:00
bump
861487d4f5 Update github-go-version to 1.21.2 from 1.21.1 2023-10-06 16:04:00 +00:00
bump
f108194de4 Update gomod-golang-x-net to 0.16.0 from 0.15.0
Tags https://github.com/golang/net/tags
2023-10-06 16:03:58 +00:00
bump
b7022183cf Update docker-golang to 1.21.2 from 1.21.1 2023-10-06 16:03:53 +00:00
Mattias Wadman
52bac67d1b
Merge pull request #771 from wader/avi-strf-extra
avi: More correct strf chunk extra data
2023-10-05 23:27:53 +02:00
Mattias Wadman
a745b12da2 avi: More correct strf chunk extra data 2023-10-05 23:11:55 +02:00
Mattias Wadman
58faf09f22
Merge pull request #770 from wader/bump-gomod-golang-x-crypto-0.14.0
Update gomod-golang-x-crypto to 0.14.0 from 0.13.0
2023-10-05 18:59:51 +02:00
bump
906bc3bb3e Update gomod-golang-x-crypto to 0.14.0 from 0.13.0
Tags https://github.com/golang/crypto/tags
2023-10-05 16:04:12 +00:00
Mattias Wadman
3988399e7c
Merge pull request #765 from wader/release-0.8.0
fq: Release 0.8.0
2023-09-27 18:26:15 +02:00
Mattias Wadman
cc01267ee9 fq: Release 0.8.0 2023-09-27 12:15:59 +02:00
Mattias Wadman
a67427b3c3
Merge pull request #769 from fiatjaf/opentimestamps
add OpenTimestamps file parser
2023-09-26 20:59:00 +02:00
fiatjaf
976a7564c7
opentimestamps: one last make doc. 2023-09-26 15:42:02 -03:00
fiatjaf
912f4116a9
opentimestamps: add help text. 2023-09-26 15:22:23 -03:00
fiatjaf
64a4ff2e7a
opentimestamps: account for unknown attestation types. 2023-09-26 15:00:35 -03:00
fiatjaf
cc8e6f1abc
opentimestamps: abstract away file digest sizes and support sha1, ripemd160 and keccac256. 2023-09-26 14:49:00 -03:00
fiatjaf
5e7c01a013
opentimestamps: address comments and improve things. 2023-09-26 12:35:18 -03:00
fiatjaf
0a22a3253c
opentimestamps: satisfy linter. 2023-09-25 23:04:03 -03:00
fiatjaf
1aa557d533
opentimestamps: add tests. 2023-09-25 22:52:56 -03:00
fiatjaf
cef5faa85d
opentimestamps: add parser. 2023-09-25 22:52:41 -03:00
Mattias Wadman
832b184f42
Merge pull request #768 from wader/update-mod
mod: Update golang.org/x/exp and github.com/gomarkdown/markdown
2023-09-24 21:02:57 +02:00
Mattias Wadman
c4e8644884 mod: Update golang.org/x/exp and github.com/gomarkdown/markdown
Fixes https://nvd.nist.gov/vuln/detail/CVE-2023-42821
2023-09-24 20:41:38 +02:00
Mattias Wadman
5058d23db1
Merge pull request #767 from wader/binary-split-correct-len
interp: split: Correctly split binary
2023-09-24 20:05:28 +02:00
Mattias Wadman
a614c9dfee interp: split: Correctly split binary
The thing splitted on should not be included.
2023-09-24 19:52:22 +02:00
Mattias Wadman
fdadc37d8d
Merge pull request #766 from Ronsor/moc3-fix
moc3: Fix minor bugs
2023-09-19 07:21:22 +02:00
Ronsor
14f233d21e moc3: update tests 2023-09-18 18:22:50 -07:00
Ronsor
f7eb0279b3 moc3: Fix field order in blend_shape_keyform_bindings structure, version detection in count_info 2023-09-18 18:21:07 -07:00
Mattias Wadman
d90772e6a6
Merge pull request #763 from wader/mp3_frmae_xing-better-lame-ext-detect
mp3_frame_xing: Detect lame ext more similar to ffmpeg and mediainfo
2023-09-08 15:19:49 +02:00
Mattias Wadman
0699c80bac mp3_frame_xing: Detect lame ext more similar to ffmpeg and mediainfo 2023-09-08 12:09:35 +02:00
Mattias Wadman
b059614f43
Merge pull request #761 from wader/bump-docker-golang-1.21.1
Update docker-golang to 1.21.1 from 1.21.0
2023-09-07 18:40:12 +02:00
Mattias Wadman
591ad024eb
Merge pull request #762 from wader/bump-github-go-version-1.21.1
Update github-go-version to 1.21.1 from 1.21.0
2023-09-07 18:40:05 +02:00
bump
30b27a5be3 Update github-go-version to 1.21.1 from 1.21.0 2023-09-07 16:03:48 +00:00
bump
bff668c3f0 Update docker-golang to 1.21.1 from 1.21.0 2023-09-07 16:03:45 +00:00
Mattias Wadman
6c14ceb210
Merge pull request #760 from wader/bump-gomod-golang-x-net-0.15.0
Update gomod-golang-x-net to 0.15.0 from 0.14.0
2023-09-07 08:01:21 +02:00
bump
07069a5183 Update gomod-golang-x-net to 0.15.0 from 0.14.0
Tags https://github.com/golang/net/tags
2023-09-06 16:03:59 +00:00
Mattias Wadman
1f5f4a5a68
Merge pull request #759 from wader/bump-gomod-golang-x-crypto-0.13.0
Update gomod-golang-x-crypto to 0.13.0 from 0.12.0
2023-09-05 19:08:03 +02:00
bump
ebb71e2412 Update gomod-golang-x-crypto to 0.13.0 from 0.12.0
Tags https://github.com/golang/crypto/tags
2023-09-05 16:03:45 +00:00
Mattias Wadman
19c439eed6
Merge pull request #758 from wader/id3v2-w-and-t-frames
id3v2: Handle W000-WZZZ,W00-WZZ URL frames
2023-09-04 16:45:55 +02:00
Mattias Wadman
0efe5a2c64 id3v2: Handle W000-WZZZ,W00-WZZ URL frames 2023-09-04 15:41:57 +02:00
Mattias Wadman
699c03f753
Merge pull request #757 from wader/decode-ext-key-shadow
decode,interp: Don't shadow _key and error on missing _key
2023-09-03 10:58:30 +02:00
Mattias Wadman
c0352f2fd1 decode,interp: Don't shadow _key and error on missing _key
For fromjson and other "value" decode values fq make then behave both like
a normal jq value and decode value. This is to make tobytes, format etc work.
Before all _* would be treated as special keys. Now they are first looked up in
the wrapped value and then as decode values.

Also now ._key that don't exist reutrn null instead of throw error.

$ fq -n '`{"_format": 123}` | fromjson | ._format'
Now:
123
Before:
"json"

$ fq -n '`{}` | fromjson | ._missing'
Now:
null
Before
error
2023-09-03 10:47:59 +02:00
Mattias Wadman
d97876caa6
Merge pull request #756 from wader/bump-gomod-golang/text-0.13.0
Update gomod-golang/text to 0.13.0 from 0.12.0
2023-09-02 18:16:10 +02:00
bump
2f8ebf1144 Update gomod-golang/text to 0.13.0 from 0.12.0
Source diff 0.12.0..0.13.0 https://github.com/golang/text/compare/v0.12.0..v0.13.0
2023-09-02 16:03:56 +00:00
Mattias Wadman
cad50db485
Merge pull request #755 from wader/mp4-emsg
mp4: Decode emsg box
2023-08-31 17:55:04 +02:00
Mattias Wadman
bedd719b3a mp4: Decode emsg box 2023-08-31 17:33:18 +02:00
Mattias Wadman
7b3eb58dfb
Merge pull request #754 from wader/mp4-cslg
mp4: Decode cslg box
2023-08-31 15:18:37 +02:00
Mattias Wadman
312d8078a7 mp4: Decode cslg box 2023-08-31 15:00:29 +02:00
Mattias Wadman
72fff69d82
Merge pull request #753 from wader/mp4-iods-es-mp4-iod-tag
mp4,mpeg_es: Decode iods box and MP4_IOD_Tag OD
2023-08-30 15:10:06 +02:00
Mattias Wadman
e50028ac00 mp4,mpeg_es: Decode iods box and MP4_IOD_Tag OD 2023-08-30 14:57:41 +02:00
Mattias Wadman
97a1f828a3
Merge pull request #752 from wader/doc-update-jq-diff
doc: Move up and update differences jq section a bit
2023-08-22 13:53:39 +02:00
Mattias Wadman
406f3926e9 doc: Move up and update differences jq section a bit 2023-08-22 13:20:50 +02:00
Mattias Wadman
15d894ecb3
Merge pull request #750 from wader/bump-make-golangci-lint-1.54.2
Update make-golangci-lint to 1.54.2 from 1.54.1
2023-08-21 19:37:54 +02:00
Mattias Wadman
4930a3e3cc
Merge pull request #751 from wader/bump-github-golangci-lint-1.54.2
Update github-golangci-lint to 1.54.2 from 1.54.1
2023-08-21 19:37:46 +02:00
Mattias Wadman
0cefc46b8b golangci: Fix gosec aliasing warnings 2023-08-21 19:26:21 +02:00
Mattias Wadman
c503bc1313 html: Add forgotten re test 2023-08-21 19:26:00 +02:00
bump
31de3f9782 Update github-golangci-lint to 1.54.2 from 1.54.1
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.54.2
2023-08-21 16:03:54 +00:00
bump
4e20e04fef Update make-golangci-lint to 1.54.2 from 1.54.1
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.54.2
2023-08-21 16:03:51 +00:00
Mattias Wadman
7189798f96
Merge pull request #749 from wader/doc-regen
doc,moc3,caff: Add author and regenerate docs
2023-08-21 10:15:29 +02:00
Mattias Wadman
f15f9bc1a4 doc,moc3,caff: Add author and regenerate docs 2023-08-21 10:04:37 +02:00
Mattias Wadman
2eae4c2fd5
Merge pull request #747 from Ronsor/live2d-formats
moc3 and caff: add decoder
2023-08-20 19:06:50 +02:00
Ronsor
833b06363c moc3: update test data 2023-08-20 09:55:59 -07:00
Ronsor
fac1e68395 moc3: count_info: extra space is reserved, not normal alignment/padding 2023-08-19 21:09:50 -07:00
Ronsor
e424e2932e moc3: eliminate gaps and properly handle padding, fix version 5 format decoding 2023-08-19 21:03:54 -07:00
Ronsor
b3759de7f0 caff: run go fmt 2023-08-19 07:18:33 -07:00
Ronsor
013cc2f68f caff: eliminate gaps and specify unused fields 2023-08-19 07:07:10 -07:00
Ronsor
4dd0f6d88b caff: run go fmt 2023-08-18 20:02:26 -07:00
Ronsor
d3073c6459 moc3: add test data for new version 5 2023-08-18 20:02:12 -07:00
Ronsor
fa1157221b caff: obfuscation key is a signed integer, add test data
The obfuscation key is actually a signed integer, and thanks to two's complement
arithmetic and sign extension, this is actually significant.
2023-08-18 19:45:09 -07:00
Ronsor
03ba71b67f moc3: add support for version 5 2023-08-18 17:42:17 -07:00
Ronsor
ce40fd19d7 moc3: consistency - scales array contains value elements, not scale elements 2023-08-18 12:02:55 -07:00
Ronsor
3caf34e32a moc3: nicer tree structure, use more meaningful names for array elements 2023-08-18 11:42:16 -07:00
Ronsor
cc58c4b81d caff: update doc/formats.md 2023-08-18 11:04:57 -07:00
Ronsor
6a3fecd294 caff: include uncompressed bits for proper decompressed entries that can't be decoded as a format 2023-08-18 09:25:10 -07:00
Ronsor
441fcd09c8 moc3, caff: update tests and README 2023-08-18 07:41:17 -07:00
Ronsor
23e660f4ca caff: minor formatting changes 2023-08-18 07:40:54 -07:00
Ronsor
6d10a25bb4 moc3: update certain array element names, explicitly mark unused or reserved space 2023-08-18 07:40:31 -07:00
Mattias Wadman
28a59f7903
Merge pull request #748 from wader/protobuf_widevine-protection_scheme-fourcc
protobuf_widevine: Make protection_scheme constants less magic
2023-08-18 11:35:28 +02:00
Mattias Wadman
456a6a4fb5 protobuf_widevine: Make protection_scheme constants less magic 2023-08-18 11:24:57 +02:00
Ronsor
20f02e79b7 moc3: remove dead code 2023-08-17 20:13:35 -07:00
Ronsor
092662ec85 moc3: initial implementation 2023-08-17 20:07:55 -07:00
Ronsor
29084e358e caff: remove dead code 2023-08-17 13:19:28 -07:00
Ronsor
da41a8d311 caff: initial implementation 2023-08-17 13:17:01 -07:00
Mattias Wadman
0e27492d07
Merge pull request #744 from wader/bump-github-golangci-lint-1.54.1
Update github-golangci-lint to 1.54.1 from 1.54.0
2023-08-11 18:36:36 +02:00
Mattias Wadman
e4f723650c
Merge pull request #743 from wader/bump-make-golangci-lint-1.54.1
Update make-golangci-lint to 1.54.1 from 1.54.0
2023-08-11 18:36:29 +02:00
bump
7906a4637f Update github-golangci-lint to 1.54.1 from 1.54.0
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.54.1
2023-08-11 16:03:46 +00:00
bump
fc4101dc58 Update make-golangci-lint to 1.54.1 from 1.54.0
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.54.1
2023-08-11 16:03:44 +00:00
Mattias Wadman
b3df26680d
Merge pull request #741 from wader/bump-github-golangci-lint-1.54.0
Update github-golangci-lint to 1.54.0 from 1.53.3
2023-08-09 18:17:54 +02:00
Mattias Wadman
f3ae1ee49e
Merge pull request #740 from wader/bump-make-golangci-lint-1.54.0
Update make-golangci-lint to 1.54.0 from 1.53.3
2023-08-09 18:17:46 +02:00
Mattias Wadman
174e108917
Merge pull request #739 from wader/bump-docker-golang-1.21.0
Update docker-golang to 1.21.0 from 1.20.7
2023-08-09 18:17:24 +02:00
Mattias Wadman
913ed9d679
Merge pull request #742 from wader/bump-github-go-version-1.21.0
Update github-go-version to 1.21.0 from 1.20.7
2023-08-09 18:17:05 +02:00
bump
c09d50a2a6 Update github-go-version to 1.21.0 from 1.20.7 2023-08-09 16:04:11 +00:00
bump
104c3bdbb9 Update github-golangci-lint to 1.54.0 from 1.53.3
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.54.0
2023-08-09 16:04:08 +00:00
bump
1fa14a03c2 Update make-golangci-lint to 1.54.0 from 1.53.3
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.54.0
2023-08-09 16:04:05 +00:00
bump
8bd7b6d680 Update docker-golang to 1.21.0 from 1.20.7 2023-08-09 16:04:02 +00:00
Mattias Wadman
4ed8c6df18
Merge pull request #738 from wader/gomod-update
gomod: Update x/exp and gomarkdown
2023-08-09 14:57:28 +02:00
Mattias Wadman
0d0147643a gomod: Update x/exp and gomarkdown
Add cmp package from go 1.21 to have cmp.Compare to make sort easier
2023-08-09 14:36:51 +02:00
Mattias Wadman
f7dd2bb0ff
Merge pull request #737 from wader/matroska-update-spec
matroska: Update spec and regenerate
2023-08-09 14:13:23 +02:00
Mattias Wadman
c07673a07a matroska: Update spec and regenerate 2023-08-09 13:59:21 +02:00
Mattias Wadman
a3665fc905
Merge pull request #736 from wader/cli-raw-output0-arg
cli: Rename --null/nul-output to --raw-output0
2023-08-08 16:47:35 +02:00
Mattias Wadman
d5345f0b8a cli: Rename --null/nul-output to --raw-output0
Remove -0 short arg, now it means the expression "-0".
This is to be in sync with jq 1.7 https://github.com/jqlang/jq/pull/2684

Correct and clarify that NUL and new lines are outputted after and not between each output.

Still missing is to abort on output containing zero when using --raw-output0
2023-08-08 16:33:39 +02:00
Mattias Wadman
c605ff6c57
Merge pull request #735 from wader/gojq-update-fq-fork
gojq: Update fq fork
2023-08-08 12:36:31 +02:00
Mattias Wadman
fa3dba104b gojq: Update fq fork
Changes from upstream:
8fcc90e implement abs function
cbbd4bb fix default module paths assuming gojq is located in a bin directory
45d4c5b change behavior of walk with multiple outputs
846cf99 fix stderr to output strings in raw format
c352d50 change zero division to produce an error when dividend is zero
d579009 fix empty string repeating with the maximum integer
d4de65c fix string multiplication by zero to emit empty string
04b48fd remove deprecated leaf_paths function
c882861 bump up version to 0.12.13
c310d5d update CHANGELOG.md for v0.12.13
8fb5cc3 update dependencies
fb00b66 improve error message of indices, setpath, delpaths functions
2023-08-08 12:22:29 +02:00
Mattias Wadman
ed720c55ef
Merge pull request #733 from wader/bump-gomod-golang-x-net-0.14.0
Update gomod-golang-x-net to 0.14.0 from 0.13.0
2023-08-05 19:53:50 +02:00
Mattias Wadman
f06411248c
Merge pull request #732 from wader/bump-gomod-golang-x-crypto-0.12.0
Update gomod-golang-x-crypto to 0.12.0 from 0.11.0
2023-08-05 19:50:31 +02:00
bump
a46ee6597f Update gomod-golang-x-net to 0.14.0 from 0.13.0
Tags https://github.com/golang/net/tags
2023-08-05 16:04:52 +00:00
bump
8394729372 Update gomod-golang-x-crypto to 0.12.0 from 0.11.0
Tags https://github.com/golang/crypto/tags
2023-08-05 16:04:50 +00:00
Mattias Wadman
7cef7c9e83
Merge pull request #731 from wader/bump-gomod-golang/text-0.12.0
Update gomod-golang/text to 0.12.0 from 0.11.0
2023-08-05 00:39:36 +02:00
bump
79432e71da Update gomod-golang/text to 0.12.0 from 0.11.0
Source diff 0.11.0..0.12.0 https://github.com/golang/text/compare/v0.11.0..v0.12.0
2023-08-04 16:04:02 +00:00
Mattias Wadman
dea9303bbe
Merge pull request #728 from wader/elf-fix-static-tests
elf: Fix broken static and segfault tests
2023-08-02 22:23:12 +02:00
Mattias Wadman
56fec2aa7e elf: Fix broken static and segfault tests 2023-08-02 22:13:33 +02:00
Mattias Wadman
9c3d09b994
Merge pull request #725 from wader/bump-docker-golang-1.20.7
Update docker-golang to 1.20.7 from 1.20.6
2023-08-02 18:21:14 +02:00
Mattias Wadman
dd7c0934fb
Merge pull request #726 from wader/bump-gomod-golang-x-net-0.13.0
Update gomod-golang-x-net to 0.13.0 from 0.12.0
2023-08-02 18:21:00 +02:00
Mattias Wadman
c44d223f37
Merge pull request #727 from wader/bump-github-go-version-1.20.7
Update github-go-version to 1.20.7 from 1.20.6
2023-08-02 18:20:49 +02:00
bump
3828b42386 Update github-go-version to 1.20.7 from 1.20.6 2023-08-02 16:04:14 +00:00
bump
c8aae6660b Update gomod-golang-x-net to 0.13.0 from 0.12.0
Tags https://github.com/golang/net/tags
2023-08-02 16:04:11 +00:00
bump
6daa0aa751 Update docker-golang to 1.20.7 from 1.20.6 2023-08-02 16:04:03 +00:00
Mattias Wadman
9f1fe72f7a
Merge pull request #724 from wader/jq-reformat
dev,jq: Reformat jq code to look more the same
2023-07-27 13:53:47 +02:00
Mattias Wadman
44f0060205 dev,jq: Reformat jq code to look more the same 2023-07-27 13:21:04 +02:00
Mattias Wadman
9f38734cef
Merge pull request #723 from wader/mp4-brand-qt-symbolic
mp4: Nicer major brand and handle some qt brand short strings better
2023-07-26 12:31:52 +02:00
Mattias Wadman
97194ad8bc mp4: Nicer major brand and handle some qt brand short strings better 2023-07-26 12:15:51 +02:00
Mattias Wadman
25c13940e9
Merge pull request #722 from wader/dev-cleanup-move-to-wiki
dev: Move examples and snippets to wiki
2023-07-26 11:23:47 +02:00
Mattias Wadman
9cd1d0f3e3 dev: Move examples and snippets to wiki 2023-07-26 11:11:48 +02:00
Mattias Wadman
1b9d0fdc69
Merge pull request #721 from dlatchx/luajit
luajit: file null terminator: raw bits, validate
2023-07-25 19:46:56 +02:00
Babz
3af0462c68 luajit: file null terminator: raw bits, validate 2023-07-25 18:34:44 +02:00
Mattias Wadman
d62bb59f66
Merge pull request #720 from wader/docker-bookworm
docker: Change to bookworm
2023-07-12 22:57:34 +02:00
Mattias Wadman
8edef78aba docker: Change to bookworm 2023-07-12 22:28:11 +02:00
Mattias Wadman
5e365037e9
Merge pull request #719 from wader/bump-github-go-version-1.20.6
Update github-go-version to 1.20.6 from 1.20.5
2023-07-12 18:57:08 +02:00
Mattias Wadman
ae9fc85713
Merge pull request #718 from wader/bump-docker-golang-1.20.6
Update docker-golang to 1.20.6 from 1.20.5
2023-07-12 18:39:33 +02:00
bump
8e705aa720 Update github-go-version to 1.20.6 from 1.20.5 2023-07-12 16:04:07 +00:00
bump
40310826ea Update docker-golang to 1.20.6 from 1.20.5 2023-07-12 16:04:02 +00:00
Mattias Wadman
d15a41f943
Merge pull request #714 from wader/release-0.7.0
fq: Release 0.7.0
2023-07-07 11:35:44 +02:00
Mattias Wadman
ad535ce94d fq: Release 0.7.0 2023-07-07 11:25:47 +02:00
Mattias Wadman
62870e3ed8
Merge pull request #696 from wader/bump-gomod-BurntSushi/toml-1.3.2
Update gomod-BurntSushi/toml to 1.3.2 from 1.2.1
2023-07-06 18:51:24 +02:00
Mattias Wadman
347fa4eb0b
Merge pull request #717 from wader/bump-gomod-gopacket-1.1.1
Update gomod-gopacket to 1.1.1 from 1.1.0
2023-07-06 18:49:20 +02:00
bump
a079b73a4e Update gomod-gopacket to 1.1.1 from 1.1.0
Release notes https://github.com/gopacket/gopacket/releases/tag/v1.1.1
2023-07-06 16:04:20 +00:00
Mattias Wadman
b5bd037553
Merge pull request #715 from wader/bump-gomod-golang-x-crypto-0.11.0
Update gomod-golang-x-crypto to 0.11.0 from 0.10.0
2023-07-05 18:34:33 +02:00
Mattias Wadman
525dc7c86f
Merge pull request #716 from wader/bump-gomod-golang-x-net-0.12.0
Update gomod-golang-x-net to 0.12.0 from 0.11.0
2023-07-05 18:34:09 +02:00
bump
660ca032a9 Update gomod-golang-x-net to 0.12.0 from 0.11.0
Tags https://github.com/golang/net/tags
2023-07-05 16:04:19 +00:00
bump
98351ff124 Update gomod-golang-x-crypto to 0.11.0 from 0.10.0
Tags https://github.com/golang/crypto/tags
2023-07-05 16:04:16 +00:00
bump
8e75dc9bc8 Update gomod-BurntSushi/toml to 1.3.2 from 1.2.1
Source diff 1.2.1..1.3.2 https://github.com/BurntSushi/toml/compare/v1.2.1..v1.3.2
2023-07-05 17:36:12 +02:00
Mattias Wadman
b40e0d7469
Merge pull request #713 from wader/bump-gomod-golang/text-0.11.0
Update gomod-golang/text to 0.11.0 from 0.10.0
2023-07-04 18:16:30 +02:00
bump
0eb6557d00 Update gomod-golang/text to 0.11.0 from 0.10.0
Source diff 0.10.0..0.11.0 https://github.com/golang/text/compare/v0.10.0..v0.11.0
2023-07-04 16:04:12 +00:00
Mattias Wadman
0770565a4d
Merge pull request #712 from wader/wav-bext
wav: Decode bext chunk
2023-07-03 11:30:31 +02:00
Mattias Wadman
8c75509e13 wav: Decode bext chunk 2023-07-03 11:17:50 +02:00
Mattias Wadman
cd7984342f
Merge pull request #710 from wader/luajit-doc-gen
luajit: make doc
2023-06-23 00:12:50 +02:00
Mattias Wadman
23b9eeab1f luajit: make doc 2023-06-22 23:54:49 +02:00
Mattias Wadman
5605ebe5c5
Merge pull request #709 from dlatchx/luajit
luajit: add decoder
2023-06-22 01:45:37 +02:00
Babz
c42fb9e769 luajit: typo 2023-06-22 01:30:28 +02:00
Babz
64c92da68b luajit: remove unused variable 2023-06-22 01:27:20 +02:00
Babz
5d9a08c6e9 luajit: fix regression: (u64 vs i64) 2023-06-21 23:57:59 +02:00
Babz
dd594f47eb luajit: tests: rename lua source file 2023-06-21 23:53:55 +02:00
Babz
751ee5a328 luajit: explain LuaJITDecodeKNum, fix negative in bug 2023-06-21 23:53:44 +02:00
Babz
64c11bedfa luajit: improve debuginfo decoding 2023-06-21 22:33:23 +02:00
Babz
eb819dd479 luajit: tests: improve coverage 2023-06-21 20:53:47 +02:00
Babz
441d246de6 luajit: standardize field names (key/value/type ect.) 2023-06-21 20:42:15 +02:00
Babz
3561c08a8c luajit: fallbackUintMapSymStr 2023-06-21 20:34:56 +02:00
Babz
c3a123ad84 luajit: remove unecessary dependency 2023-06-21 18:47:13 +02:00
Mattias Wadman
c23e241a75
Merge pull request #707 from ksa-real/sgpd
sgpd box entries parsing
2023-06-21 09:39:58 +02:00
Sergei Kuzmin
e869d8af03 sgpd box entries parsing
Previously entries were parsed as raw bytes, now KIDs/IVs are
explicitely parsed.
2023-06-20 21:57:27 -07:00
Babz
93c96965e0 luajit: add to probe group 2023-06-21 01:41:03 +02:00
Babz
a83576a83a luajit: clarify description 2023-06-21 01:39:23 +02:00
Babz
b24063be02 luajit: *.fqtest: add comments for generating .luac from source 2023-06-21 01:25:35 +02:00
Babz
52ce81817f luajit: split in smaller decode functions 2023-06-21 01:02:38 +02:00
Babz
bdf158be9e luajit: add luajit.md 2023-06-21 00:17:27 +02:00
Babz
715f850d50 luajit: opcodes: implement scalar.UintMapper 2023-06-20 23:55:37 +02:00
Babz
08ae661c15 luajit: use UTF8 strings 2023-06-20 23:33:46 +02:00
Babz
32300a3ffa luajit: check binary.Read() error 2023-06-20 23:31:35 +02:00
Babz
e44f5c00b8 luajit: magic number: raw bits, check with assert 2023-06-20 23:28:34 +02:00
Babz
29ab66b3eb luajit: lowercase flags 2023-06-20 23:11:17 +02:00
Babz
db2e621468 go fmt 2023-06-20 23:02:31 +02:00
Babz
1afdf8b1cf luajit: initial support 2023-06-20 18:24:49 +02:00
Mattias Wadman
6ec4def24b
Merge pull request #705 from wader/bump-make-golangci-lint-1.53.3
Update make-golangci-lint to 1.53.3 from 1.53.2
2023-06-15 18:22:32 +02:00
Mattias Wadman
8efcfe6831
Merge pull request #706 from wader/bump-github-golangci-lint-1.53.3
Update github-golangci-lint to 1.53.3 from 1.53.2
2023-06-15 18:22:16 +02:00
bump
76e0e17cfe Update github-golangci-lint to 1.53.3 from 1.53.2
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.53.3
2023-06-15 16:03:55 +00:00
bump
47ea6cf707 Update make-golangci-lint to 1.53.3 from 1.53.2
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.53.3
2023-06-15 16:03:51 +00:00
Mattias Wadman
72194dedd4
Merge pull request #704 from wader/binary-number-fast-path
interp: Add to binary fast path for arrays with only 0-255 numbers an…
2023-06-14 19:24:31 +02:00
Mattias Wadman
41f40b7f94 interp: Add to binary fast path for arrays with only 0-255 numbers and strings 2023-06-14 19:09:15 +02:00
Mattias Wadman
616b7de7f5
Merge pull request #701 from wader/bump-gomod-golang/text-0.10.0
Update gomod-golang/text to 0.10.0 from 0.9.0
2023-06-13 22:46:47 +02:00
Mattias Wadman
718e7568c8
Merge pull request #700 from wader/bump-gomod-golang-x-net-0.11.0
Update gomod-golang-x-net to 0.11.0 from 0.10.0
2023-06-13 22:44:39 +02:00
Mattias Wadman
20a4f6df54
Merge pull request #699 from wader/bump-gomod-golang-x-crypto-0.10.0
Update gomod-golang-x-crypto to 0.10.0 from 0.9.0
2023-06-13 22:43:30 +02:00
bump
36ef2a20b5 Update gomod-golang/text to 0.10.0 from 0.9.0
Source diff 0.9.0..0.10.0 https://github.com/golang/text/compare/v0.9.0..v0.10.0
2023-06-13 16:04:14 +00:00
bump
939d98c27c Update gomod-golang-x-net to 0.11.0 from 0.10.0
Tags https://github.com/golang/net/tags
2023-06-13 16:04:11 +00:00
bump
6dc0746adc Update gomod-golang-x-crypto to 0.10.0 from 0.9.0
Tags https://github.com/golang/crypto/tags
2023-06-13 16:04:08 +00:00
Mattias Wadman
9d128cc980
Merge pull request #694 from wader/bump-docker-golang-1.20.5
Update docker-golang to 1.20.5 from 1.20.4
2023-06-07 18:15:30 +02:00
Mattias Wadman
05e8bd5396
Merge pull request #695 from wader/bump-github-go-version-1.20.5
Update github-go-version to 1.20.5 from 1.20.4
2023-06-07 18:15:13 +02:00
bump
6faed67512 Update github-go-version to 1.20.5 from 1.20.4 2023-06-07 16:04:05 +00:00
bump
64e17f0ece Update docker-golang to 1.20.5 from 1.20.4 2023-06-07 16:03:58 +00:00
Mattias Wadman
7e2a10c0ef
Merge pull request #691 from Harshad112/patch-1
Improved README.md
2023-06-06 04:38:00 +02:00
Harshad Yelpale
d02b70f7b6
Update README.md
Thanks for suggestion added dashesh it looks better.
let me know still i missed or need to add anything i am happy to add.
2023-06-06 00:49:38 +05:30
Harshad Yelpale
47b90603a3
Improved README.md
Added some Punctuations , spaces , some words in order make Readme file user friendly.
2023-06-06 00:01:36 +05:30
Mattias Wadman
dd90439a1b
Merge pull request #687 from wader/bump-make-golangci-lint-1.53.2
Update make-golangci-lint to 1.53.2 from 1.53.1
2023-06-03 23:31:55 +02:00
Mattias Wadman
88f3302cbd
Merge pull request #688 from wader/bump-github-golangci-lint-1.53.2
Update github-golangci-lint to 1.53.2 from 1.53.1
2023-06-03 23:31:20 +02:00
Mattias Wadman
56a33434bb
Merge pull request #685 from aquova/fix-readme
doc: Fix broken link in README
2023-06-03 23:30:58 +02:00
bump
ff4048c43a Update github-golangci-lint to 1.53.2 from 1.53.1
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.53.2
2023-06-03 16:03:57 +00:00
bump
7c1da0ef6b Update make-golangci-lint to 1.53.2 from 1.53.1
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.53.2
2023-06-03 16:03:53 +00:00
aquova
fd2cb6f841 doc: Fix broken link in README
Arch Linux recently merged all entries in its 'community' repository
into 'extra' (https://archlinux.org/news/git-migration-announcement/).
This commit updates the README to reflect this change.
2023-06-03 08:05:37 -05:00
Mattias Wadman
ce85648825
Merge pull request #681 from wader/bump-make-golangci-lint-1.53.1
Update make-golangci-lint to 1.53.1 from 1.52.2
2023-06-02 18:40:04 +02:00
Mattias Wadman
b52189ae59
Merge pull request #682 from wader/bump-github-golangci-lint-1.53.1
Update github-golangci-lint to 1.53.1 from 1.52.2
2023-06-02 18:39:47 +02:00
bump
b9fce9bd7a Update github-golangci-lint to 1.53.1 from 1.52.2
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.53.1
2023-06-02 16:03:53 +00:00
bump
c3e104bcb6 Update make-golangci-lint to 1.53.1 from 1.52.2
Release notes https://github.com/golangci/golangci-lint/releases/tag/v1.53.1
2023-06-02 16:03:50 +00:00
Mattias Wadman
4a0afcc46d
Merge pull request #679 from wader/gojq-rebase
gojq: Update rebased fq fork
2023-05-29 18:00:03 +02:00
Mattias Wadman
38cb82929a gojq: Update rebased fq fork
From upstream:
e940c43 update GitHub action dependencies
2d97ddb update jq links to the new jqlang organization
2a6cb00 improve error message of various functions
5e26bef add a note on differences of supported functions missing in jq
96c4843 fix functions returning arrays not to emit nil slices
4a681c8 improve .dockerignore
850177b Merge pull request #213 from movableink/uri-decode
dbba5e7 add urid to decode URI values, mirroring uri
2023-05-29 17:47:01 +02:00
2703 changed files with 821238 additions and 620398 deletions

View File

@ -7,7 +7,7 @@ on:
pull_request:
env:
GOLANGCILINT_VERSION: "1.52.2"
GOLANGCILINT_VERSION: "1.57.2"
jobs:
lint:
@ -15,7 +15,7 @@ jobs:
steps:
- uses: actions/setup-go@v3
with:
go-version: "1.20.4"
go-version: "1.22.2"
- uses: actions/checkout@v3
- uses: golangci/golangci-lint-action@v3
with:
@ -47,7 +47,7 @@ jobs:
- uses: actions/checkout@v3
- uses: actions/setup-go@v3
with:
go-version: "1.20.4"
go-version: "1.22.2"
- name: Test
env:
GOARCH: ${{ matrix.goarch }}

View File

@ -15,11 +15,11 @@ jobs:
- uses: actions/checkout@v3
- uses: actions/setup-go@v3
with:
go-version: "1.20.4"
- uses: goreleaser/goreleaser-action@v2
go-version: "1.22.2"
- uses: goreleaser/goreleaser-action@v5
with:
distribution: goreleaser
version: latest
args: release --rm-dist
args: release --clean
env:
GITHUB_TOKEN: ${{ secrets.RELEASE_TOKEN }}

View File

@ -23,6 +23,8 @@ linters:
- unconvert
- unparam
- wastedassign
- staticcheck
- govet
linters-settings:
revive:
@ -41,6 +43,13 @@ linters-settings:
- rela
- equalisation
- synchronisation
govet:
enable-all: true
disable:
- fieldalignment
- shadow
staticcheck:
checks: ["all"]
run:
timeout: 5m

View File

@ -34,7 +34,6 @@ archives:
- files:
# skip all other files
- none*
rlcp: true
format_overrides:
- goos: windows
format: zip
@ -57,10 +56,10 @@ changelog:
brews:
- skip_upload: auto
tap:
repository:
owner: wader
name: homebrew-tap
folder: Formula
directory: Formula
homepage: https://github.com/wader/fq
description: jq for binary formats
license: MIT

View File

@ -1,3 +1,558 @@
# 0.11.0
New iNES/NES 2.0 ROM decoder (thanks @mlofjard) and basic JPEG 2000 format support. jq language improvements and fixes from gojq. And as always various decoder improvements and fixes.
## Changes
- Add `string_truncate` option to configure how to truncate long strings when displaying a decode value tree. `dd`, `dv` etc set truncate length to zero to not truncate. #919
- gojq updates from upstream:
- Implement `ltrim`, `rtrim`, and `trim` functions
- Fix object construction with duplicate keys (`{x:0,y:1} | {a:.x,a:.y}`)
- Fix `halt` and `halt_error` functions to stop the command execution immediately
- Fix variable scope of binding syntax (`"a" as $v | def f: $v; "b" as $v | f`)
- Fix `ltrimstr` and `rtrimstr` functions to emit error on non-string input
- Fix `nearbyint` and `rint` functions to round ties to even
- Improve parser to allow `reduce`, `foreach`, `if`, `try`-`catch` syntax as object values
- Remove `pow10` in favor of `exp10`, define `scalbn` and `scalbln` by `ldexp`
- Fix issue using decode value with `ltrimstr`/`rtrimstr`.
## Format changes
- `fit`
- Skip array fields on pre read messages. #878
- Fixed subfield referencing fields below self in message. #877
- `jp2c` New JPEG 2000 codestream decoder. #928
- `icc_profile` Strip whitespace in header and tag strings. #912
- `mp4`
- Add `jp2c`, `jp2h`, `ihdr` `jP` JPEG 2000 related boxes support. #928
- Add `thmb` box support. #897
- Turns out for qt brand `hdlr` component name might be zero bytes. #896
- `nes` New iNES/NES 2.0 ROM decoder (thanks @mlofjard). #893
## Changelog
* f7b067b6 Fixed subfield referencing fields below self in message
* 9aa99b47 Update docker-golang to 1.22.1 from 1.22.0
* 0afb5b59 Update docker-golang to 1.22.2 from 1.22.1
* 2657988d Update github-go-version to 1.22.1 from 1.22.0
* 33c93918 Update github-go-version to 1.22.2 from 1.22.1
* a577c398 Update github-golangci-lint to 1.56.2 from 1.56.1
* 82d96cf9 Update github-golangci-lint to 1.57.0 from 1.56.2
* 72b4569b Update github-golangci-lint to 1.57.1 from 1.57.0
* 14aeab0b Update github-golangci-lint to 1.57.2 from 1.57.1
* 735256b9 Update gomod-golang-x-crypto to 0.20.0 from 0.19.0
* 043f067f Update gomod-golang-x-crypto to 0.21.0 from 0.20.0
* 15a7060b Update gomod-golang-x-crypto to 0.22.0 from 0.21.0
* 85f60df2 Update gomod-golang-x-net to 0.22.0 from 0.21.0
* 77c000e6 Update gomod-golang-x-net to 0.23.0 from 0.22.0
* daba6b54 Update gomod-golang-x-net to 0.24.0 from 0.23.0
* ba9ecb54 Update gomod-golang-x-term to 0.18.0 from 0.17.0
* b2aa59f7 Update gomod-golang-x-term to 0.19.0 from 0.18.0
* 1c24f64d Update make-golangci-lint to 1.56.2 from 1.56.1
* 94e80864 Update make-golangci-lint to 1.57.0 from 1.56.2
* 4f55b6af Update make-golangci-lint to 1.57.1 from 1.57.0
* a3b63b10 Update make-golangci-lint to 1.57.2 from 1.57.1
* 208b3e6b chore: fix function name in comment
* 621d7f2c decode: Align some heavily used structs to save space
* ee2ee24d decode: Cleanup io panic a bit
* e741ca78 doc: Add ImHex to related tools
* 36e8287c doc: Regenerate after nes and new ansisvg
* 225fd507 fit: Skip array fields on pre read messages
* 7500a8b7 fq: Sort formats
* bf7fa07c fq: Use go 1.20 and cleanup
* e2670404 gojq: Update fq fork
* f5fd5873 gojq: Update fq fork
* ed685116 icc_profile: Strip whitespace in header and tag strings
* c8f9cdc9 interp: Add string_truncate option
* 0db671f6 interp: Add todo test for eval error in path
* ebffb3be jp2c: Add jpeg2000 codestream format
* 79992b34 jp2c: Fail probe faster
* 63f7d79c jp2c: Support probe
* b542ff1d lint: More linters and some fixes
* c6165c0c mod: go get non-bump tracked modules
* 1784c438 mp4,avi: Trim spaces for type
* 2ea70c42 mp4: Add thmb box support
* 4f90a2ea mp4: Decode jP box
* 70b1b0d6 mp4: Decode uinf box
* 87b6c4dd mp4: Fix jp2 test
* 8009b6f6 mp4: JPEG200 boxes jp2h and ihdr
* ed3a126f mp4: Turns out for qt brand hdlr component name might be zero bytes
* f3b54042 nes: Add support for iNES/NES 2.0 ROM files
* 80bccc91 opus,vorbis: More sym snake_case
* 08df7f45 pkg/cli/test_exp.sh: use command -v
* 87052733 pssh_playready: Use snake_case sym values
* aaa43dfb test: Replace pmezard/go-difflib with go's internal diff
# 0.10.0
Adds support for various LevelDB formats (thanks @mikez) and Garmin Flexible and Interoperable Data Transfer format (FIT) (thanks @mlofjard).
And as usual some small fixes and dependency updates.
## Changes
- On macOS fq now reads init script from `~/.config/fq` in addition to `~/Library/Application Support/fq`. #871
- Switch readline module from own fork to https://github.com/ergochat/readline #854
- Updated gojq fork. Notable changes from upstream below. #844
- Fix pre-defined variables to be available in initial modules
- Fix object construction with duplicate keys
## Format changes
- `aac_frame` Decode instance tag and common window flag. #859
- `fit` Add support for Garmin Flexible and Interoperable Data Transfer decoder. Thanks @mlofjard #874
- This format is used by various GPS tracking devices to record location, speed etc.
- Example of converting position information to KML:
```jq
# to_kml.jq
# convert locations in a fit structure to KML
def to_kml:
( [ .data_records[].data_message as {position_lat: $lat, position_long: $long}
| select($lat and $long)
| [$long, $lat, 0]
| join(",")
]
| join(". ")
| { kml: {"@xmlns":"http://earth.google.com/kml/2.0"
, Document: {Placemark: {LineString: {coordinates: .}}}}
}
| to_xml({indent:2})
);
```
Usage:
```sh
# -L to add current directory to library path
# -r for raw string output
# 'include "to_ml";' to include to_kml.jq
# to_kml calls to_kml function
$ fq -L . -r 'include "to_kml"; to_kml' file.fit > file.kml
```
- `hevc_sps` Fix some incorrect profile_tier_level decoding. #829
- `html` Fix issue parsing elements including SOLIDUS "/". #870
- Upstream issue https://github.com/golang/go/issues/63402
- `mpeg_es` Support ES_ID_Inc and decode descriptors for IOD tags
- `leveldb_descriptor`, `leveldb_log`, `leveldb_table` Add support for LevelDB. Thanks @mikez #824
- This format is used by many database backends and applications like Google chrome.
- `pcapng` Decode all section headers instead of just the first. #860
- `png` Fix incorrect decoding of type flags. #847
- `hevc_sps` Fix incorrect decoding of profile_tier_level. #829
- `tls` Fix field name typos. #839
- `mp4`
- Don't try decode samples for a track that has an external reference. #834
- Use box structure instead of track id to keep track for sample table data. #833
- `ctts` box v0 sample offset seems to be signed in practice but not in spec. #832
- `webp` Decode width, height and flags for lossless WebP. #857
## Changelog
* 6c3914aa Add DFDL acronym to README.md
* 43c76937 Update docker-golang to 1.21.5 from 1.21.4
* 836af78a Update docker-golang to 1.21.6 from 1.21.5
* f9e1e759 Update docker-golang to 1.22.0 from 1.21.6
* 54da5efc Update ergochat-readline to 81f0f2329ad3 from cca60bf24c9f
* bed912c3 Update github-go-version to 1.21.5 from 1.21.4
* 3f48e3be Update github-go-version to 1.21.6 from 1.21.5
* 5bfb2bb1 Update github-go-version to 1.22.0 from 1.21.6
* 888b0be0 Update github-golangci-lint to 1.56.0 from 1.55.2
* 283380ba Update github-golangci-lint to 1.56.1 from 1.56.0
* be79c193 Update gomod-golang-x-crypto to 0.16.0 from 0.15.0
* 6aba928f Update gomod-golang-x-crypto to 0.17.0 from 0.16.0
* 561fed97 Update gomod-golang-x-crypto to 0.18.0 from 0.17.0
* b5388eaa Update gomod-golang-x-crypto to 0.19.0 from 0.18.0
* 0200a4ee Update gomod-golang-x-net to 0.19.0 from 0.18.0
* 2e22e1b8 Update gomod-golang-x-net to 0.20.0 from 0.19.0
* 40bcb194 Update gomod-golang-x-net to 0.21.0 from 0.20.0
* 2a1d9707 Update gomod-golang-x-term to 0.16.0 from 0.15.0
* 310c78ea Update gomod-golang-x-term to 0.17.0 from 0.16.0
* 536583cf Update make-golangci-lint to 1.56.0 from 1.55.2
* 5369576d Update make-golangci-lint to 1.56.1 from 1.56.0
* e51c746d aac_frame: CPE: Decode instance tag and common window flag
* f5f8e93c bson: Fix jq style a bit
* d0a1b301 bump readline to 0.1.0-rc1
* b56258cf bump,readline: Add bump config and update to latest master
* 0070e389 bump,readline: Skip bump until not rc
* 63e0aa3c doc: Fix weird wording in README.md
* e5fd1eb4 doc: Generate svgs with new ansisvg
* 55470deb doc: Update docs to include fit format
* c47756dc doc: Update svgs after ansisvg update
* 54c6f0cd fit: Added support for "invalid" value checking.
* 46dbf5b7 fit: Added support for ANT+ FIT format (used by Garmin devices)
* 6219d57c fit: Added support for dynamic subfields
* 33e5851d fit: Fix field casing to snake_case. Misc cleanup.
* 76307e4d fit: Formatted date/time description for timestamp fields
* 88622804 fit: Made long/lat present as float64
* 788088f8 fit: Show crc as hex, lower case "invalid" and some style harmonization
* a07ce117 fq: Relicense float80 code to MIT
* 5829c6b4 gojq: Update fq fork
* d155c80c gojq: Update fq fork
* a793d109 goreleaser: Fix deprecated options
* 919e0795 hevc_sps: Fix some incorrect profile_tier_level decoding
* 69ae7659 interp: Fix crash when using line_bytes=0
* 21766000 interp: Support ~/.config/fq as fallback on macOS
* fb910bd4 ldb: first draft
* efc59a81 ldb: uncompression support
* 41f27a13 leveldb: add `torepr` for descriptor
* 2df0f0fb leveldb: add log and descriptor decoders
* b05aa997 leveldb: address PR comments
* 2f5f1831 leveldb: decode unfragmented .log files further; fix UTF8 decoding
* e826f097 leveldb: fix Errorf arguments
* 42830911 leveldb: fix all.fqtest failures
* 287ed366 leveldb: fix metaindex keys, refactoring, and jq syntax per PR
* 8665df56 leveldb: fix table's data blocks' internal keys decoding
* 08e3d2d2 leveldb: improve `stringify` by preallocating result
* 3a396e15 leveldb: improve log documentation
* 1ba8dec5 leveldb: in some properties, change spaces to underscores
* e735cead leveldb: propagate error
* 07ad9401 leveldb: rename "suffix" to "sequence_number_suffix"
* 78a3e94b leveldb: rename functions and add comments
* cc0d5a8b leveldb: update docs
* fe1099b9 leveldb: updates per PR comments
* 0d06e0a4 mp4: Don't decode samples if track has external data reference
* d2c5ce55 mp4: Use box structure instead of track id to keep track for sample table data
* aadf26f6 mp4: ctts v0 sample_offset seems to be signed in practice
* fca55b2c mpeg_es: Support ES_ID_Inc and decode descriptors for IOD tags
* e3af4670 pcapng: Decode all section headers, clenaup descriptions
* 38b4412a png: Type flags were off-by-one bit
* fb1c625a readline,bump: Fix version compare link
* 41226f48 readline: Switch to ergochat/readline
* cd572d3a readline: Update to 0.1.0 and add bump config
* 7906f33d test: Support to more common -update flag
* 3b7cc1f4 tls: Fix field name typos
* b0421dfc webp: Decode width, height and flags for lossless webp
# 0.9.0
## Changes
- Make synthetic values not look like decode values with a zero range. #777
- Bit ranges are now displayed using exclusive end notation to be more consistent. For example if a field at byte offset 5 is 8 bit in size using the `<byte>[.<bits>]` notation it is now shown as `5-6`, before it was shown as `5-5.7`. See usage documentation for more examples. #789
- Improve colors when using a light background. Thanks @adedomin for reporting. #781
- Better `from_jq` error handling. Thanks @emanuele6 for reporting. #788
- Updated gojq fork. Notable changes from upstream below. #808
- Adds `pick/1` function. Outputs value and nested values for given input expression.
```sh
# pick out all string values from a ELF header
$ fq '.header | pick(.. | select(type == "string"))' /bin/ls
{
"ident": {
"data": "little_endian",
"magic": "\u007fELF",
"os_abi": "sysv",
"pad": "\u0000\u0000\u0000\u0000\u0000\u0000\u0000"
},
"machine": "x86_64",
"type": "dyn"
}
# bonus tip:
# if you only need to pick one level then jq has a shortcut syntax
$ fq '.header | {type, machine}' /bin/ls
{
"machine": "x86_64",
"type": "dyn"
}
```
- Implements comment continuation with backslash.
- Updated gopacket to 1.2.1. Notable changes from upstream below. #815
- fix(ip4defrag): allow final fragment to be less than 8 octets by @niklaskb
- refactor: don't fill empty metadata slots by @smira
- refactor: optimize port map to switch statement by @smira
## Decoder changes
- `avi`
- Some general clean up fixes. Thanks to Marion Jaks at mediathek.at for testing and motivation.
- Add extended chunks support and `decode_extended_chunks` option. This is trailing chunks used by big AVI files. #786
- Add type, handler, compression (video) and format_tag (audio) per stream. #775
```sh
$ fq '.streams[0]' file.avi
│00 01 02 03 04 05 06 07│01234567│.streams[0]{}: stream
0x1680│ 00 00 00 01 67 f4│ ....g.│ samples[0:3]:
0x1688│00 0d 91 9b 28 28 3f 60│....((?`│
0x1690│22 00 00 03 00 02 00 00│".......│
* │until 0x2409.7 (3464) │ │
│ │ │ type: "vids"
│ │ │ handler: "H264"
│ │ │ compression: "H264"
```
- Properly use sample size field when decoding samples. #776
- `exif` (and `tiff`)
- Handle broken last next ifd offset by treating it as end marker. #804
- `gzip`
- Correctly handle multiple members. Thanks @TomiBelan for the bug report and assistance. #795
- Now gzip is modelled as a struct with a `members` array and a `uncompressed` field that is the concatenation of the uncompressed members.
- `macho`
- Properly respect endian when decoding some flag fields. #796
- Move formatted timestamp to description so that numeric value is easier to access. #797
- `matroska`
- Support decoding EBML date type. #787
- `protobuf`
- No need to use synthetic fields for string and bytes. #800
- `webp`
- Refactor to use common RIFF decoder and also decode VP8X, EXIF, ICCP and XMP chunks. #803
- `zip` Better timestamp support and fixes
- Fix incorrect MSDOS time/date decoding and add extended timestamp support. Also remodel time/date to be a struct with raw values, components and a synthetics UTC unixtime guess. Thanks @TomiBelan for the bug report and assistance. #793
```sh
$ fq '.local_files[] | select(.file_name == "a").last_modification' file.zip
│00 01 02 03 04 05 06 07│01234567│.local_files[3].last_modification{}:
0xd0│ 81 01 │ .. │ fat_time: 0x181
│ │ │ second: 2 (1)
│ │ │ minute: 12
│ │ │ hour: 0
0xd0│ 73 53│ sS│ fat_date: 0x5373
│ │ │ day: 19
│ │ │ month: 11
│ │ │ year: 2021 (41)
│ │ │ unix_guess: 1637280722 (2021-11-19T00:12:02)
```
## Changelog
* b7022183 Update docker-golang to 1.21.2 from 1.21.1
* d7047116 Update docker-golang to 1.21.3 from 1.21.2
* c31fc874 Update docker-golang to 1.21.4 from 1.21.3
* 861487d4 Update github-go-version to 1.21.2 from 1.21.1
* d7663569 Update github-go-version to 1.21.3 from 1.21.2
* caef93ce Update github-go-version to 1.21.4 from 1.21.3
* de7fdae5 Update github-golangci-lint to 1.55.0 from 1.54.2
* 60edf973 Update github-golangci-lint to 1.55.1 from 1.55.0
* 534a2c8c Update github-golangci-lint to 1.55.2 from 1.55.1
* 906bc3bb Update gomod-golang-x-crypto to 0.14.0 from 0.13.0
* 8d4d18d3 Update gomod-golang-x-crypto to 0.15.0 from 0.14.0
* f108194d Update gomod-golang-x-net to 0.16.0 from 0.15.0
* 5381f381 Update gomod-golang-x-net to 0.17.0 from 0.16.0
* 14fe728c Update gomod-golang-x-net to 0.18.0 from 0.17.0
* 1011f19c Update gomod-golang/text to 0.14.0 from 0.13.0
* 527aad6c Update gomod-gopacket to 1.2.0 from 1.1.1
* 0c22c79b Update make-golangci-lint to 1.55.0 from 1.54.2
* 5f06364f Update make-golangci-lint to 1.55.1 from 1.55.0
* 36576a5c Update make-golangci-lint to 1.55.2 from 1.55.1
* d703321a avi: Add extended chunks support and option
* 55521bba avi: Add stream type constants
* 51965549 avi: Add type, handler, format_tag and compreession per stream
* 0f225c32 avi: Add unused field for extra indx chunk space
* df085b91 avi: Handle stream sample size
* c7ec18d6 avi: Increase sample size heuristics to 32bit stereo
* a745b12d avi: More correct strf chunk extra data
* 9b10e598 avi: Only use sample size heuristics if there is no format
* 23ae4d97 decode,interp: Make synthetic values more visible and not act as decode values
* 5abf151f doc: Remove spurious backtick
* 02b35276 exif,tiff: Handle broken last next ifd offset by treating it as end marker
* dc376f34 gojq: Update rebased fq fork
* ac276ee1 gzip: Correctly handle multiple members
* 45a8dd9c interp: Better from_jq error handling
* 051a70bd interp: Change bit ranges to use exclusive end
* 29e75411 interp: Fix infinite recursion when casting synthetic raw value into a jq value
* c28163f8 interp: Improve colors when using light background
* 797c7d90 macho: Move timestamp string to description
* 71a5fc91 macho: Respect endian when decoding flags
* 1d14ea51 matroska: Decode ebml date type
* b24ed161 mod: Update golang.org/x/exp and github.com/gomarkdown/markdown
* 5e2e49e3 protobuf: No need for synthetic for string and bytes value
* 6034c705 webp,avi,wav,aiff: Trim RIFF id string
* 9e58067f webp: Refactor to use riff code and decode VP8X, EXIF, ICCP and XMP chunks
* a83cac60 zip: Fix incorrect time/date, add extended timestamp and refactor
# 0.8.0
Fix handling of shadowing order for `_<name>` keys, 3 new decoders `caff`, `moc3` and `opentimestamps`, some smaller fixes and improvements.
In other jq news [jq 1.7](https://github.com/jqlang/jq/releases/tag/jq-1.7) was finally released 5 years since the last release! also happy to now be part of the jq maintainance team.
## Changes
- New decoders `caff` and `moc3`. See below for details.
- Fix shadowing of underscore prefixed keys (`_<name>`) for text formats like `json`, `yaml` etc. #757
This happenned because fq has a bunch of internal underscore prefixed "extra" keys that is used for various things and these had priority even when there already existed a "value" key with same name.
```sh
$ fq -n '`{"_format": 123}` | fromjson | ._format'
```
Now `123`, before `"json"`.
```sh
$ fq -n '`{}` | fromjson | ._missing'
```
Now `null`, before error
- Rename `--null`/`nul-output` to `--raw-output0` and also clarify that NUL and new lines are outputted after and not between each output.
This is to be in sync with jq (https://github.com/jqlang/jq/pull/2684). #736
- Updated gojq fork with fixes from upstream:
- Improved error messages for indices, setpath, delpaths
- Add `abs` function
- Change behavior of walk with multiple outputs
- Change zero division to produce an error when dividend is zero
- Fix empty string repeating with the maximum integer
- Fix string multiplication by zero to emit empty string
- Remove deprecated `leaf_paths` function
- Fix `split` in combination with binary to not include separator. #767
## Decoder changes
- `caff` Add archive format decoder. Thanks @Ronsor #747
- CAFF is an archive format usually found with the extensions `.cmo3` and `.can3` used by Live2D Cubism.
- `id3v2` Handle `W000`-`WZZZ` and `W00`-`WZZ` URL frames. #758
- `matroska` Update spec and regenerate. #737
- `moc3` Add Live2D Cubism MOC3 decoder. Thanks @Ronsor #747
- MOC3 is a format for 2D rigged puppets, somewhat like Flash.
- `mp3_frame_xing` Detect lame ext more similar to ffmpeg and mediainfo. #763
- `mp4`
- Decode `sgpd` (Sample group definition box) entries. Thanks Sergei Kuzmin @ksa-real #707
- Decode `cslg` (Composition to decode timeline mapping) box. #754
- Decode `emsg` (Event message) and `id3v2` message data. #755
- Nicer trimmed major brand for `ftyp`. #723
- `opentimestamps` Add [OpenTimestamps](https://opentimestamps.org/) decoder. Thanks @fiatjaf #769
## Changelog
* 40310826 Update docker-golang to 1.20.6 from 1.20.5
* 6daa0aa7 Update docker-golang to 1.20.7 from 1.20.6
* 8bd7b6d6 Update docker-golang to 1.21.0 from 1.20.7
* bff668c3 Update docker-golang to 1.21.1 from 1.21.0
* 8e705aa7 Update github-go-version to 1.20.6 from 1.20.5
* 3828b423 Update github-go-version to 1.20.7 from 1.20.6
* c09d50a2 Update github-go-version to 1.21.0 from 1.20.7
* 30b27a5b Update github-go-version to 1.21.1 from 1.21.0
* 104c3bdb Update github-golangci-lint to 1.54.0 from 1.53.3
* 7906a463 Update github-golangci-lint to 1.54.1 from 1.54.0
* 31de3f97 Update github-golangci-lint to 1.54.2 from 1.54.1
* 83947293 Update gomod-golang-x-crypto to 0.12.0 from 0.11.0
* ebb71e24 Update gomod-golang-x-crypto to 0.13.0 from 0.12.0
* c8aae666 Update gomod-golang-x-net to 0.13.0 from 0.12.0
* a46ee659 Update gomod-golang-x-net to 0.14.0 from 0.13.0
* 07069a51 Update gomod-golang-x-net to 0.15.0 from 0.14.0
* 79432e71 Update gomod-golang/text to 0.12.0 from 0.11.0
* 2f8ebf11 Update gomod-golang/text to 0.13.0 from 0.12.0
* 1fa14a03 Update make-golangci-lint to 1.54.0 from 1.53.3
* fc4101dc Update make-golangci-lint to 1.54.1 from 1.54.0
* 4e20e04f Update make-golangci-lint to 1.54.2 from 1.54.1
* 013cc2f6 caff: eliminate gaps and specify unused fields
* 6a3fecd2 caff: include uncompressed bits for proper decompressed entries that can't be decoded as a format
* da41a8d3 caff: initial implementation
* 23e660f4 caff: minor formatting changes
* fa115722 caff: obfuscation key is a signed integer, add test data
* 29084e35 caff: remove dead code
* 4dd0f6d8 caff: run go fmt
* b3759de7 caff: run go fmt
* cc58c4b8 caff: update doc/formats.md
* d5345f0b cli: Rename --null/nul-output to --raw-output0
* c0352f2f decode,interp: Don't shadow _key and error on missing _key
* 44f00602 dev,jq: Reformat jq code to look more the same
* 9cd1d0f3 dev: Move examples and snippets to wiki
* f15f9bc1 doc,moc3,caff: Add author and regenerate docs
* 406f3926 doc: Move up and update differences jq section a bit
* 8edef78a docker: Change to bookworm
* 56fec2aa elf: Fix broken static and segfault tests
* fa3dba10 gojq: Update fq fork
* 0cefc46b golangci: Fix gosec aliasing warnings
* 0d014764 gomod: Update x/exp and gomarkdown
* c503bc13 html: Add forgotten re test
* 0efe5a2c id3v2: Handle W000-WZZZ,W00-WZZ URL frames
* a614c9df interp: split: Correctly split binary
* 3af0462c luajit: file null terminator: raw bits, validate
* c07673a0 matroska: Update spec and regenerate
* 441fcd09 moc3, caff: update tests and README
* f7eb0279 moc3: Fix field order in blend_shape_keyform_bindings structure, version detection in count_info
* 03ba71b6 moc3: add support for version 5
* d3073c64 moc3: add test data for new version 5
* ce40fd19 moc3: consistency - scales array contains value elements, not scale elements
* fac1e683 moc3: count_info: extra space is reserved, not normal alignment/padding
* e424e293 moc3: eliminate gaps and properly handle padding, fix version 5 format decoding
* 092662ec moc3: initial implementation
* 3caf34e3 moc3: nicer tree structure, use more meaningful names for array elements
* 20f02e79 moc3: remove dead code
* 6d10a25b moc3: update certain array element names, explicitly mark unused or reserved space
* 833b0636 moc3: update test data
* 14f233d2 moc3: update tests
* c4e86448 mod: Update golang.org/x/exp and github.com/gomarkdown/markdown
* 0699c80b mp3_frame_xing: Detect lame ext more similar to ffmpeg and mediainfo
* e50028ac mp4,mpeg_es: Decode iods box and MP4_IOD_Tag OD
* 312d8078 mp4: Decode cslg box
* bedd719b mp4: Decode emsg box
* 97194ad8 mp4: Nicer major brand and handle some qt brand short strings better
* cc8e6f1a opentimestamps: abstract away file digest sizes and support sha1, ripemd160 and keccac256.
* 64a4ff2e opentimestamps: account for unknown attestation types.
* 912f4116 opentimestamps: add help text.
* cef5faa8 opentimestamps: add parser.
* 1aa557d5 opentimestamps: add tests.
* 5e7c01a0 opentimestamps: address comments and improve things.
* 976a7564 opentimestamps: one last make doc.
* 0a22a325 opentimestamps: satisfy linter.
* 456a6a4f protobuf_widevine: Make protection_scheme constants less magic
# 0.7.0
Added LuaJIT bytecode decoder by @dlatchx, otherwise mostly small things. Been busy with nice weather and
helping our getting jq development and maintenance back on track.
## Changes
- Better performance of binary arrays when they only include 0-255 numbers or strings. #704
- Make `tovalue` on binary, in addition decode value binary, respect `bits_format` options. #677
```sh
# uses -V to do tovalue to get a hex string
# uses -r to output "raw" string
$ fq -o bits_format=hex -Vr -n '[1,0xff,3] | tobytes'
01ff03
```
- Updated gojq fork with fixes from upstream: #679
- Improved error messages
- `@urid` URI format function
## Decoder changes
- `luajit` Add LuaJIT bytecode decoder. Thanks @dlatchx #709
- `mp4` Improved sample group definition box `sgpd` entries decoder. Thanks @ksa-real #707
- `mp4` Improved user metadata `udta` structure decoding #676
- `wav` Decode `bext` chunk. #712
## Changelog
* 47b90603 Improved README.md
* d02b70f7 Update README.md
* 64e17f0e Update docker-golang to 1.20.5 from 1.20.4
* 6faed675 Update github-go-version to 1.20.5 from 1.20.4
* b9fce9bd Update github-golangci-lint to 1.53.1 from 1.52.2
* ff4048c4 Update github-golangci-lint to 1.53.2 from 1.53.1
* 76e0e17c Update github-golangci-lint to 1.53.3 from 1.53.2
* 8e75dc9b Update gomod-BurntSushi/toml to 1.3.2 from 1.2.1
* 6dc0746a Update gomod-golang-x-crypto to 0.10.0 from 0.9.0
* 98351ff1 Update gomod-golang-x-crypto to 0.11.0 from 0.10.0
* 939d98c2 Update gomod-golang-x-net to 0.11.0 from 0.10.0
* 660ca032 Update gomod-golang-x-net to 0.12.0 from 0.11.0
* 36ef2a20 Update gomod-golang/text to 0.10.0 from 0.9.0
* 0eb6557d Update gomod-golang/text to 0.11.0 from 0.10.0
* a079b73a Update gomod-gopacket to 1.1.1 from 1.1.0
* c3e104bc Update make-golangci-lint to 1.53.1 from 1.52.2
* 7c1da0ef Update make-golangci-lint to 1.53.2 from 1.53.1
* 47ea6cf7 Update make-golangci-lint to 1.53.3 from 1.53.2
* fd2cb6f8 doc: Fix broken link in README
* db2e6214 go fmt
* 38cb8292 gojq: Update rebased fq fork
* 41f40b7f interp: Add to binary fast path for arrays with only 0-255 numbers and strings
* b2c0e5fc interp: Make binary also respect bits_format
* b24063be luajit: *.fqtest: add comments for generating .luac from source
* bdf158be luajit: add luajit.md
* 93c96965 luajit: add to probe group
* 32300a3f luajit: check binary.Read() error
* a83576a8 luajit: clarify description
* 751ee5a3 luajit: explain LuaJITDecodeKNum, fix negative in bug
* 3561c08a luajit: fallbackUintMapSymStr
* 5d9a08c6 luajit: fix regression: (u64 vs i64)
* 64c11bed luajit: improve debuginfo decoding
* 1afdf8b1 luajit: initial support
* 29ab66b3 luajit: lowercase flags
* e44f5c00 luajit: magic number: raw bits, check with assert
* 23b9eeab luajit: make doc
* 715f850d luajit: opcodes: implement scalar.UintMapper
* c3a123ad luajit: remove unecessary dependency
* 64c92da6 luajit: remove unused variable
* 52ce8181 luajit: split in smaller decode functions
* 441d246d luajit: standardize field names (key/value/type ect.)
* eb819dd4 luajit: tests: improve coverage
* dd594f47 luajit: tests: rename lua source file
* c42fb9e7 luajit: typo
* 08ae661c luajit: use UTF8 strings
* 1da80691 mp4: udta: Improve length/lang box probe and support empty value
* e869d8af sgpd box entries parsing
* 8c75509e wav: Decode bext chunk
# 0.6.0
Adds decoders for PostgreSQL btree, control and heap files. Thanks Pavel Safonov @pnsafonov and Michael Zhilin @mizhka

View File

@ -1,5 +1,5 @@
# bump: docker-golang /FROM golang:([\d.]+)/ docker:golang|^1
FROM golang:1.20.4-bullseye AS base
FROM golang:1.22.2-bookworm AS base
# expect is used to test cli
RUN \

View File

@ -36,14 +36,14 @@ cover: test
cat cover.out.html | grep '<option value="file' | sed -E 's/.*>(.*) \((.*)%\)<.*/\2 \1/' | sort -rn
doc: always
doc: $(wildcard doc/*.svg)
doc: $(wildcard doc/*.svg.sh)
doc: $(wildcard *.md doc/*.md)
%.md: fq
@doc/mdsh.sh ./fq $@
doc/%.svg: fq
(cd doc ; ../$@.sh ../fq) | go run github.com/wader/ansisvg@master > $@
doc/%.svg.sh: fq
(cd doc ; ../$@ ../fq) | go run github.com/wader/ansisvg@master > $(@:.svg.sh=.svg)
doc/formats.svg: fq
@# ignore graphviz version as it causes diff when nothing has changed
@ -61,7 +61,7 @@ gogenerate: always
lint: always
# bump: make-golangci-lint /golangci-lint@v([\d.]+)/ git:https://github.com/golangci/golangci-lint.git|^1
# bump: make-golangci-lint link "Release notes" https://github.com/golangci/golangci-lint/releases/tag/v$LATEST
go run github.com/golangci/golangci-lint/cmd/golangci-lint@v1.52.2 run
go run github.com/golangci/golangci-lint/cmd/golangci-lint@v1.57.2 run
depgraph.svg: always
go run github.com/kisielk/godepgraph@latest github.com/wader/fq | dot -Tsvg -o godepgraph.svg
@ -77,7 +77,6 @@ cpuprof: prof
go tool pprof -http :5555 fq.prof fq.cpu.prof
update-gomod: always
GOPROXY=direct go get -d github.com/wader/readline@fq
GOPROXY=direct go get -d github.com/wader/gojq@fq
go mod tidy
@ -98,7 +97,6 @@ fuzz: always
# tag forked dependeces for history and to make then stay around
release: always
release: WADER_GOJQ_COMMIT=$(shell go list -m -f '{{.Version}}' github.com/wader/gojq | sed 's/.*-\(.*\)/\1/')
release: WADER_READLINE_COMMIT=$(shell go list -m -f '{{.Version}}' github.com/wader/readline | sed 's/.*-\(.*\)/\1/')
release:
@echo "# wader/fq":
@echo "# make sure head is at wader/master"
@ -121,10 +119,6 @@ release:
@echo git tag fq-v${VERSION} ${WADER_GOJQ_COMMIT}
@echo git push wader fq-v${VERSION}:fq-v${VERSION}
@echo
@echo "# wader/readline:"
@echo git tag fq-v${VERSION} ${WADER_READLINE_COMMIT}
@echo git push wader fq-v${VERSION}:fq-v${VERSION}
@echo
@echo "# wader/fq":
@echo git push wader v${VERSION}:v${VERSION}
@echo "# edit draft release notes and publish"

View File

@ -2,25 +2,23 @@
Tool, language and decoders for working with binary data.
TLDR: it aims to be jq, hexdump, dd and gdb for files combined into one.
![fq demo](doc/demo.svg)
Basic usage is `fq . file` or `fq d file`.
Basic usage is `fq . file`, `fq d file` or `fq 'some query' file ...`.
For details see [usage.md](doc/usage.md).
### Background
fq is inspired by the well known jq tool and language and allows you to work with binary formats the same way you would using jq. In addition it can present data like a hex viewer, transform, slice and concatenate binary data. It also supports nested formats and has an interactive REPL with auto-completion.
fq is inspired by the [jq](https://jqlang.github.io/jq/) tool and language and allows you to work with binary formats in the same way. In addition to using jq expressions it can also present decoded tree structures, transform, slice and concatenate binary data. It also supports nested formats and features an interactive REPL with auto-completion of functions and names.
It was originally designed to query, inspect and debug media codecs and containers like mp4, flac, mp3, jpeg. But has since then been extended to support a variety of formats like executables, packet captures (with TCP reassembly) and serialization formats like JSON, YAML, XML, ASN1 BER, Avro, CBOR, protobuf. In addition it also has functions to work with URL:s, convert to/from hex, number bases, search for things etc.
In summary it aims to be jq, hexdump, dd and gdb for files combined into one.
**NOTE:** fq is still early in development so things might change, be broken or do not make sense. That also means that there is a great opportunity to help out!
It was originally designed to query, inspect and debug media codecs and containers like MP4, FLAC and JPEG but has since been extended to support a variety of formats like executables, packet captures (with TCP reassembly) and serialization formats like JSON, YAML, XML, CBOR, protobuf. In addition it also has functions to work with URLs, convert to/from hex, number bases, search for patterns etc.
### Goals
- Make binaries accessible, queryable and sliceable.
- Make binaries more accessible, queryable and sliceable.
- Nested formats and bit-oriented decoding.
- Quick and comfortable CLI tool.
- Bits and bytes transformations.
@ -66,6 +64,7 @@ bsd_loopback_frame,
[bson](doc/formats.md#bson),
[bytes](doc/formats.md#bytes),
bzip2,
[caff](doc/formats.md#caff),
[cbor](doc/formats.md#cbor),
[csv](doc/formats.md#csv),
dns,
@ -74,6 +73,7 @@ elf,
ether8023_frame,
exif,
fairplay_spc,
[fit](doc/formats.md#fit),
flac,
[flac_frame](doc/formats.md#flac_frame),
flac_metadatablock,
@ -98,13 +98,19 @@ id3v11,
id3v2,
ipv4_packet,
ipv6_packet,
jp2c,
jpeg,
json,
jsonl,
[leveldb_descriptor](doc/formats.md#leveldb_descriptor),
[leveldb_log](doc/formats.md#leveldb_log),
[leveldb_table](doc/formats.md#leveldb_table),
[luajit](doc/formats.md#luajit),
[macho](doc/formats.md#macho),
macho_fat,
[markdown](doc/formats.md#markdown),
[matroska](doc/formats.md#matroska),
[moc3](doc/formats.md#moc3),
[mp3](doc/formats.md#mp3),
mp3_frame,
mp3_frame_vbri,
@ -117,8 +123,10 @@ mpeg_pes_packet,
mpeg_spu,
mpeg_ts,
[msgpack](doc/formats.md#msgpack),
[nes](doc/formats.md#nes),
ogg,
ogg_page,
[opentimestamps](doc/formats.md#opentimestamps),
opus_packet,
[pcap](doc/formats.md#pcap),
pcapng,
@ -155,7 +163,7 @@ yaml,
[#]: sh-end
It can also work with some common text formats like URL:s, hex, base64, PEM etc and for some serialization formats like XML, YAML etc it can transform both from and to jq values.
It can also work with some common text formats like URLs, hex, base64, PEM etc and for some serialization formats like XML, YAML, etc. it can transform both from and to jq values.
For details see [formats.md](doc/formats.md) and [usage.md](doc/usage.md).
@ -169,7 +177,7 @@ For details see [formats.md](doc/formats.md) and [usage.md](doc/usage.md).
Use one of the methods listed below or download a pre-built [release](https://github.com/wader/fq/releases) for macOS, Linux or Windows. Unarchive it and move the executable to `PATH` etc.
On macOS if you don't install using one of the method below you might have to manually allow the binary to run. This can be done by trying to run the binary, ignore the warning and then go into security preference and allow it. Same can be done with this command:
On macOS if you don't install using one of the method below then you might have to manually allow the binary to run. This can be done by trying to run the binary, ignore the warning and then go into security preference and allow it. Same can be done with this command:
```sh
xattr -d com.apple.quarantine fq && spctl --add fq
@ -199,7 +207,7 @@ scoop install fq
### Arch Linux
`fq` can be installed from the [community repository](https://archlinux.org/packages/community/x86_64/fq/) using [pacman](https://wiki.archlinux.org/title/Pacman):
`fq` can be installed from the [extra repository](https://archlinux.org/packages/extra/x86_64/fq/) using [pacman](https://wiki.archlinux.org/title/Pacman):
```sh
pacman -S fq
@ -231,9 +239,9 @@ apk add -X http://dl-cdn.alpinelinux.org/alpine/edge/testing fq
### Build from source
Make sure you have [go](https://go.dev) 1.18 or later installed.
Make sure you have [go](https://go.dev) 1.20 or later installed.
To install directly from git repository (no clone needed) do:
To install directly from git repository (no git clone needed):
```sh
# build and install latest release
go install github.com/wader/fq@latest
@ -257,10 +265,6 @@ go build -o fq .
make test fq
```
## TODO and ideas
See [TODO.md](doc/TODO.md)
## Development and adding a new decoder
See [dev.md](doc/dev.md)
@ -276,24 +280,29 @@ for inventing the [jq](https://github.com/stedolan/jq) language.
#### Tools
- [HexFiend](https://github.com/HexFiend/HexFiend) Hex editor for macOS with format template support.
- [binspector](https://github.com/binspector/binspector) Binary format analysis tool with query language and REPL.
- [kaitai](https://kaitai.io) Declarative binary format parsing.
- [Wireshark](https://www.wireshark.org) Decodes network traffic (tip: `tshark -T json`).
- [MediaInfo](https://mediaarea.net/en/MediaInfo) Analyze media files (tip `mediainfo --Output=JSON` and `mediainfo --Details=1`).
- [GNU poke](https://www.jemarch.net/poke) The extensible editor for structured binary data.
- [ffmpeg/ffprobe](https://ffmpeg.org) Powerful media libraries and tools.
- [hexdump](https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git/tree/text-utils/hexdump.c) Hex viewer tool.
- [hex](https://git.janouch.name/p/hex) Interactive hex viewer with format support via lua.
- [hachoir](https://github.com/vstinner/hachoir) General python library for working binary data.
- [scapy](https://scapy.net) Decode/Encode formats, focus on network protocols.
- [HexFiend](https://github.com/HexFiend/HexFiend) - Hex editor for macOS with format template support.
- [ImHex](https://github.com/WerWolv/ImHex) - A Hex Editor for Reverse Engineers.
- [binspector](https://github.com/binspector/binspector) - Binary format analysis tool with query language and REPL.
- [kaitai](https://kaitai.io) - Declarative binary format parsing.
- [Wireshark](https://www.wireshark.org) - Decodes network traffic (tip: `tshark -T json`).
- [MediaInfo](https://mediaarea.net/en/MediaInfo) - Analyze media files (tip `mediainfo --Output=JSON` and `mediainfo --Details=1`).
- [GNU poke](https://www.jemarch.net/poke) - The extensible editor for structured binary data.
- [ffmpeg/ffprobe](https://ffmpeg.org) - Powerful media libraries and tools.
- [hexdump](https://git.kernel.org/pub/scm/utils/util-linux/util-linux.git/tree/text-utils/hexdump.c) - Hex viewer tool.
- [hex](https://git.janouch.name/p/hex) - Interactive hex viewer with format support via lua.
- [hachoir](https://github.com/vstinner/hachoir) - General python library for working binary data.
- [scapy](https://scapy.net) - Decode/Encode formats, focus on network protocols.
#### Projects and Standards
- [Let's Solve the File Format Problem](http://fileformats.archiveteam.org)
- [PRONOM](https://www.nationalarchives.gov.uk/PRONOM/) file format registry
- [Sustainability of Digital Formats](https://www.loc.gov/preservation/digital/formats/) at Library of Congress
- [Data Format Description Language](https://en.wikipedia.org/wiki/Data_Format_Description_Language)
- [Let's Solve the File Format Problem](http://fileformats.archiveteam.org).
- [PRONOM](https://www.nationalarchives.gov.uk/PRONOM/) file format registry.
- [Sustainability of Digital Formats](https://www.loc.gov/preservation/digital/formats/) at Library of Congress.
- [Data Format Description Language (DFDL)](https://en.wikipedia.org/wiki/Data_Format_Description_Language).
## TODO and ideas
See [TODO.md](doc/TODO.md)
## License
@ -303,16 +312,16 @@ See the [LICENSE](LICENSE) file for license details.
Licenses of direct dependencies:
- Forked version of gojq https://github.com/itchyny/gojq/blob/main/LICENSE (MIT)
- Forked version of readline https://github.com/chzyer/readline/blob/master/LICENSE (MIT)
- github.com/BurntSushi/toml https://github.com/BurntSushi/toml/blob/master/COPYING (MIT)
- github.com/creasty/defaults https://github.com/creasty/defaults/blob/master/LICENSE (MIT)
- github.com/gomarkdown/markdown https://github.com/gomarkdown/markdown/blob/master/LICENSE.txt (BSD)
- github.com/gopacket/gopacket https://github.com/gopacket/gopacket/blob/master/LICENSE (BSD)
- github.com/mitchellh/copystructure https://github.com/mitchellh/copystructure/blob/master/LICENSE (MIT)
- github.com/mitchellh/mapstructure https://github.com/mitchellh/mapstructure/blob/master/LICENSE (MIT)
- github.com/pmezard/go-difflib https://github.com/pmezard/go-difflib/blob/master/LICENSE (BSD)
- golang/snappy https://github.com/golang/snappy/blob/master/LICENSE (BSD)
- golang/x/* https://github.com/golang/text/blob/master/LICENSE (BSD)
- gopkg.in/yaml.v3 https://github.com/go-yaml/yaml/blob/v3/LICENSE (MIT)
- Parts of go crypto/tls and github.com/zmap/zcrypto https://github.com/zmap/zcrypto/blob/master/LICENSE (Apache)
- Forked version of gojq - https://github.com/itchyny/gojq/blob/main/LICENSE (MIT)
- github.com/ergochat/readline - https://github.com/ergochat/readline/blob/master/LICENSE (MIT)
- github.com/BurntSushi/toml - https://github.com/BurntSushi/toml/blob/master/COPYING (MIT)
- github.com/creasty/defaults - https://github.com/creasty/defaults/blob/master/LICENSE (MIT)
- github.com/gomarkdown/markdown - https://github.com/gomarkdown/markdown/blob/master/LICENSE.txt (BSD)
- github.com/gopacket/gopacket - https://github.com/gopacket/gopacket/blob/master/LICENSE (BSD)
- github.com/mitchellh/copystructure - https://github.com/mitchellh/copystructure/blob/master/LICENSE (MIT)
- github.com/mitchellh/mapstructure - https://github.com/mitchellh/mapstructure/blob/master/LICENSE (MIT)
- github.com/pmezard/go-difflib - https://github.com/pmezard/go-difflib/blob/master/LICENSE (BSD)
- golang/snappy - https://github.com/golang/snappy/blob/master/LICENSE (BSD)
- golang/x/* - https://github.com/golang/text/blob/master/LICENSE (BSD)
- gopkg.in/yaml.v3 - https://github.com/go-yaml/yaml/blob/v3/LICENSE (MIT)
- Parts of go crypto/tls and github.com/zmap/zcrypto - https://github.com/zmap/zcrypto/blob/master/LICENSE (Apache)

View File

@ -1,55 +0,0 @@
#!/usr/bin/env fq -d mp4 -f
# TODO: esds, make fancy printer? shared?
# TODO: handle -1 media_time
# TODO: fragmented mp4
# root
# moov
# mvhd (movie header)
# trak (track)
# mdia
# mdhd (media header)
# hdlr (handler?)
# minf
# stbl
# stsd (sample description)
# elst (edit list)
( first(.boxes[] | select(.type == "moov")?)
| first(.boxes[] | select(.type == "mvhd")?) as $mvhd
| {
duration: $mvhd.duration,
time_scale: $mvhd.time_scale,
duration_s: ($mvhd.duration / $mvhd.time_scale),
tracks:
[ .boxes[]
| select(.type == "trak")
| first(.. | select(.type == "mdhd")?) as $mdhd
| first(.. | select(.type == "hdlr")?) as $hdlr
| first(.. | select(.type == "stsd")?) as $stsd
| first(.. | select(.type == "elst")?) as $elst
| first(.. | select(.type == "stts")?) as $stts
| ([$stts.entries[] | .count * .delta] | add) as $stts_sum
| {
component_type: $hdlr.component_subtype,
# the sample descriptors are handled as boxes by the mp4 decoder
data_format: $stsd.boxes[0].type,
media_scale: $mdhd.time_scale,
edit_list:
[ $elst.entries[]
| {
track_duration: .segment_duration,
media_time: .media_time,
track_duration_s: (.segment_duration / $mvhd.time_scale),
media_time_s: (.media_time / $mdhd.time_scale)
}
],
stts: {
sum: $stts_sum,
sum_s: ($stts_sum / $mdhd.time_scale)
}
}
]
}
)

View File

@ -1,3 +1,5 @@
//go:build exclude
// tool to convert go fuzz input files to bytes
// Usage: cat format/testdata/fuzz/FuzzFormats/144bde49b40c90fd05d302ec90b6ddb2b6d6aea553bad520a8b954797e40fe72 | go run dev/fuzzbytes.go | go run .
package main

View File

@ -1,84 +0,0 @@
def protobuf_to_value:
.fields | map({(.name | tostring): (.enum // .value)}) | add;
# converted from https://github.com/FFmpeg/FFmpeg/blob/870bfe16a12bf09dca3a4ae27ef6f81a2de80c40/libavutil/display.c av_display_rotation_get
def mp4_matrix_structure_rotation:
( .a as $s0
| .c as $s3
| .b as $s1
| .d as $s4
| ($s0*$s0 + $s3*$s3 | sqrt) as $scale0
| ($s1*$s1 + $s4*$s4 | sqrt) as $scale1
| atan2($s1/$scale1; $s0 / $scale0) * 180 / 3.14159265359
| -round
);
def flac_dump:
[ "fLaC"
, first(.. | select(format == "flac_metadatablocks"))
, (.. | select(format == "flac_frame"))
] | tobits;
def urldecode:
gsub(
"%(?<c>[a-fA-F0-9]{2})";
( .c
| ascii_downcase
| explode
# "0"-"9" or "a"-"f"
| map(.-48 | if .>=49 then .-39 else . end)
| [.[0]*16+.[1]]
| implode
)
);
# see all first frames where sample_rate changes
# ex: .frames | changes(.header.sample_rate)
def changes(f): streaks_by(f)[].[0];
def to_radix62sp: to_radix(62; "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ");
def from_radix62sp: from_radix(62; {
"0": 0, "1": 1, "2": 2, "3": 3,"4": 4, "5": 5, "6": 6, "7": 7, "8": 8, "9": 9,
"a": 10, "b": 11, "c": 12, "d": 13, "e": 14, "f": 15, "g": 16,
"h": 17, "i": 18, "j": 19, "k": 20, "l": 21, "m": 22, "n": 23,
"o": 24, "p": 25, "q": 26, "r": 27, "s": 28, "t": 29, "u": 30,
"v": 31, "w": 32, "x": 33, "y": 34, "z": 35,
"A": 36, "B": 37, "C": 38, "D": 39, "E": 40, "F": 41, "G": 42,
"H": 43, "I": 44, "J": 45, "K": 46, "L": 47, "M": 48, "N": 49,
"O": 50, "P": 51, "Q": 52, "R": 53, "S": 54, "T": 55, "U": 56,
"V": 57, "W": 58, "X": 59, "Y": 60, "Z": 61
});
# "01:09:55.76" -> 4195.76
# 4195.76 -> "01:09:55.76"
def duration:
def lpad($s; $w): ($s * ($w+1-length))[1:] + .;
def _string:
( split(":")
| map(tonumber)
| reverse
| [foreach .[] as $n (0; . + 1; pow(60; .-1) * $n)]
# sum smallest to largest seem to improve precision
| sort
| reverse
| add
);
def _number:
if . == 0 then 0
else
[ ( [ (recurse(if . > 0 then intdiv(.; 60) else empty end) | . % 60)]
| reverse
| .[1:]
| map(tostring | lpad("0"; 2))
| join(":")
)
# ugly but float is not accurate enough
, ( tostring
| split(".")[1] // empty
| ".", .
)
] | join("")
end;
if type == "string" then _string
elif type == "number" then _number
else error("expected string or number") end;

View File

@ -1,3 +1,5 @@
//go:build exclude
package main
import (

View File

@ -58,7 +58,7 @@
### Tests
- WRITE_ACTUAL does not preserve comment order for readlines
- update tests does not preserve comment order for readlines
- empty file test
- CLI tests, raw write, colors?
- Interactive tests
@ -119,12 +119,6 @@
- Do something similar to `builtin.go` in gojq to speedup a bit
- remove `scopedump`?
#### Readline
- Use something else than `github.com/chzyer/readline`?
- Fixes for readline
- Undo (ctrl+-) normal readline bahave differently for backspace (history for each character)
#### Big things
- fq play website?

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 74 KiB

After

Width:  |  Height:  |  Size: 8.7 KiB

View File

@ -41,7 +41,7 @@ Flags can be struct with bit-fields.
- If possible use a pair of `testdata/file` and `testdata/file.fqtest` where `file.fqtest` is `$ fq dv file` or `$ fq 'dv,torepr' file` if there is `torepr` support.
- If `dv` produces a lof of output maybe use `dv({array_truncate: 50})` etc
- Run `go test ./format -run TestFormats/<name>` to test expected output.
- Run `WRITE_ACTUAL=1 go test ./format -run TestFormats/<name>` to write current output as expected output.
- Run `go test ./format -run TestFormats/<name> -update` to update current output as expected output.
- If you have format specific documentation:
- Put it in `format/*/<name>.md` and use `//go:embed <name>.md`/`interp.RegisterFS(..)` to embed/register it.
- Use simple markdown, just sections (depth starts at 3, `### Section`), paragraphs, lists and links.
@ -236,10 +236,10 @@ make test
go test ./...
# run all tests for one format
go test -run TestFormats/mp4 ./format/
# write all actual outputs
WRITE_ACTUAL=1 go test ./...
# write actual output for specific tests
WRITE_ACTUAL=1 go run -run ...
# update all expected outputs for tests
go test ./pkg/interp ./format -update
# update actual output for specific tests
go run ./format -run TestFormats/elf -update
# color diff
DIFF_COLOR=1 go test ...
```
@ -341,7 +341,6 @@ docker --context 2016-box run --rm -ti -v "C:${PWD//\//\\}:C:${PWD//\//\\}" -w "
## Implementation details
- fq uses a gojq fork that can be found at https://github.com/wader/gojq/tree/fq (the "fq" branch)
- fq uses a readline fork that can be found at https://github.com/wader/readline/tree/fq (the "fq" branch)
- cli readline uses raw mode to blocks ctrl-c to become a SIGINT
## Dependencies and source origins
@ -363,7 +362,6 @@ Issues and PR:s related to fq:<br>
[#125](https://github.com/itchyny/gojq/pull/125) improve performance of join by make it internal<br>
[#141](https://github.com/itchyny/gojq/issues/141) Empty array flatten regression since "improve flatten performance by reducing copy"
- [readline](https://github.com/chzyer/readline) fork that can be found at https://github.com/wader/readline/tree/fq
- [gopacket](https://github.com/gopacket/gopacket) for TCP and IPv4 reassembly
- [mapstructure](https://github.com/mitchellh/mapstructure) for convenient JSON/map conversion
- [go-difflib](https://github.com/pmezard/go-difflib) for diff tests

View File

@ -1,383 +1,40 @@
<svg viewBox="0 0 912 160" width="912" height="160" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<svg width="114ch" height="10em" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve">
<style>
rect { shape-rendering: crispEdges; }
text {
dominant-baseline: text-before-edge;
* {
font-family: Courier, monospace;
font-size: 14px;
}
tspan, text {
font-variant-ligatures: none;
dominant-baseline: central;
white-space: pre;
font: 14px Courier, monospace;
fill: #bbbbbb;
}
.u { text-decoration: underline; }
.bg {
stroke-width: "0.5px";
}
.bold {
font-weight: bold;
}
.underline {
text-decoration: underline;
}
<!-- Foreground ANSI colors -->
.fa2 { fill: #00bb00; }
.fa3 { fill: #bbbb00; }
.fa6 { fill: #00bbbb; }
.fa8 { fill: #555555; }
.fa12 { fill: #5555ff; }
</style>
<rect width="100%" height="100%" x="0" y="0" style="fill: #000000"/>
<text x="0" y="0">$</text>
<text x="16" y="0">f</text>
<text x="24" y="0">q</text>
<text x="40" y="0">&#39;</text>
<text x="48" y="0">f</text>
<text x="56" y="0">i</text>
<text x="64" y="0">r</text>
<text x="72" y="0">s</text>
<text x="80" y="0">t</text>
<text x="88" y="0">(</text>
<text x="96" y="0">g</text>
<text x="104" y="0">r</text>
<text x="112" y="0">e</text>
<text x="120" y="0">p</text>
<text x="128" y="0">_</text>
<text x="136" y="0">b</text>
<text x="144" y="0">y</text>
<text x="152" y="0">(</text>
<text x="160" y="0">.</text>
<text x="168" y="0">t</text>
<text x="176" y="0">y</text>
<text x="184" y="0">p</text>
<text x="192" y="0">e</text>
<text x="208" y="0">=</text>
<text x="216" y="0">=</text>
<text x="232" y="0">&#34;</text>
<text x="240" y="0">e</text>
<text x="248" y="0">l</text>
<text x="256" y="0">s</text>
<text x="264" y="0">t</text>
<text x="272" y="0">&#34;</text>
<text x="280" y="0">)</text>
<text x="288" y="0">)</text>
<text x="296" y="0">&#39;</text>
<text x="312" y="0">f</text>
<text x="320" y="0">i</text>
<text x="328" y="0">l</text>
<text x="336" y="0">e</text>
<text x="344" y="0">.</text>
<text x="352" y="0">m</text>
<text x="360" y="0">p</text>
<text x="368" y="0">4</text>
<text x="40" y="16"></text>
<text x="48" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="56" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="64" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="72" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="80" y="16" style="fill: #bbbb00" class="u">1</text>
<text x="88" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="96" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="104" y="16" style="fill: #bbbb00" class="u">2</text>
<text x="112" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="120" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="128" y="16" style="fill: #bbbb00" class="u">3</text>
<text x="136" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="144" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="152" y="16" style="fill: #bbbb00" class="u">4</text>
<text x="160" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="168" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="176" y="16" style="fill: #bbbb00" class="u">5</text>
<text x="184" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="192" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="200" y="16" style="fill: #bbbb00" class="u">6</text>
<text x="208" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="216" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="224" y="16" style="fill: #bbbb00" class="u">7</text>
<text x="232" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="240" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="248" y="16" style="fill: #bbbb00" class="u">8</text>
<text x="256" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="264" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="272" y="16" style="fill: #bbbb00" class="u">9</text>
<text x="280" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="288" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="296" y="16" style="fill: #bbbb00" class="u">a</text>
<text x="304" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="312" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="320" y="16" style="fill: #bbbb00" class="u">b</text>
<text x="328" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="336" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="344" y="16" style="fill: #bbbb00" class="u">c</text>
<text x="352" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="360" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="368" y="16" style="fill: #bbbb00" class="u">d</text>
<text x="376" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="384" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="392" y="16" style="fill: #bbbb00" class="u">e</text>
<text x="400" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="408" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="416" y="16" style="fill: #bbbb00" class="u">f</text>
<text x="424" y="16"></text>
<text x="432" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="440" y="16" style="fill: #bbbb00" class="u">1</text>
<text x="448" y="16" style="fill: #bbbb00" class="u">2</text>
<text x="456" y="16" style="fill: #bbbb00" class="u">3</text>
<text x="464" y="16" style="fill: #bbbb00" class="u">4</text>
<text x="472" y="16" style="fill: #bbbb00" class="u">5</text>
<text x="480" y="16" style="fill: #bbbb00" class="u">6</text>
<text x="488" y="16" style="fill: #bbbb00" class="u">7</text>
<text x="496" y="16" style="fill: #bbbb00" class="u">8</text>
<text x="504" y="16" style="fill: #bbbb00" class="u">9</text>
<text x="512" y="16" style="fill: #bbbb00" class="u">a</text>
<text x="520" y="16" style="fill: #bbbb00" class="u">b</text>
<text x="528" y="16" style="fill: #bbbb00" class="u">c</text>
<text x="536" y="16" style="fill: #bbbb00" class="u">d</text>
<text x="544" y="16" style="fill: #bbbb00" class="u">e</text>
<text x="552" y="16" style="fill: #bbbb00" class="u">f</text>
<text x="560" y="16"></text>
<text x="568" y="16">.</text>
<text x="576" y="16" style="fill: #5555ff">b</text>
<text x="584" y="16" style="fill: #5555ff">o</text>
<text x="592" y="16" style="fill: #5555ff">x</text>
<text x="600" y="16" style="fill: #5555ff">e</text>
<text x="608" y="16" style="fill: #5555ff">s</text>
<text x="616" y="16">[</text>
<text x="624" y="16" style="fill: #00bbbb">3</text>
<text x="632" y="16">]</text>
<text x="640" y="16">.</text>
<text x="648" y="16" style="fill: #5555ff">b</text>
<text x="656" y="16" style="fill: #5555ff">o</text>
<text x="664" y="16" style="fill: #5555ff">x</text>
<text x="672" y="16" style="fill: #5555ff">e</text>
<text x="680" y="16" style="fill: #5555ff">s</text>
<text x="688" y="16">[</text>
<text x="696" y="16" style="fill: #00bbbb">1</text>
<text x="704" y="16">]</text>
<text x="712" y="16">.</text>
<text x="720" y="16" style="fill: #5555ff">b</text>
<text x="728" y="16" style="fill: #5555ff">o</text>
<text x="736" y="16" style="fill: #5555ff">x</text>
<text x="744" y="16" style="fill: #5555ff">e</text>
<text x="752" y="16" style="fill: #5555ff">s</text>
<text x="760" y="16">[</text>
<text x="768" y="16" style="fill: #00bbbb">1</text>
<text x="776" y="16">]</text>
<text x="784" y="16">.</text>
<text x="792" y="16" style="fill: #5555ff">b</text>
<text x="800" y="16" style="fill: #5555ff">o</text>
<text x="808" y="16" style="fill: #5555ff">x</text>
<text x="816" y="16" style="fill: #5555ff">e</text>
<text x="824" y="16" style="fill: #5555ff">s</text>
<text x="832" y="16">[</text>
<text x="840" y="16" style="fill: #00bbbb">0</text>
<text x="848" y="16">]</text>
<text x="856" y="16">{</text>
<text x="864" y="16">}</text>
<text x="872" y="16">:</text>
<text x="888" y="16">b</text>
<text x="896" y="16">o</text>
<text x="904" y="16">x</text>
<text x="0" y="32" style="fill: #bbbb00">0</text>
<text x="8" y="32" style="fill: #bbbb00">x</text>
<text x="16" y="32" style="fill: #bbbb00">d</text>
<text x="24" y="32" style="fill: #bbbb00">6</text>
<text x="32" y="32" style="fill: #bbbb00">0</text>
<text x="40" y="32"></text>
<text x="168" y="32" style="fill: #555555">0</text>
<text x="176" y="32" style="fill: #555555">0</text>
<text x="192" y="32" style="fill: #555555">0</text>
<text x="200" y="32" style="fill: #555555">0</text>
<text x="216" y="32" style="fill: #555555">0</text>
<text x="224" y="32" style="fill: #555555">0</text>
<text x="240" y="32" style="fill: #ffffff">1</text>
<text x="248" y="32" style="fill: #ffffff">c</text>
<text x="424" y="32"></text>
<text x="472" y="32" style="fill: #555555">.</text>
<text x="480" y="32" style="fill: #555555">.</text>
<text x="488" y="32" style="fill: #555555">.</text>
<text x="496" y="32" style="fill: #ffffff">.</text>
<text x="560" y="32"></text>
<text x="584" y="32" style="fill: #5555ff">s</text>
<text x="592" y="32" style="fill: #5555ff">i</text>
<text x="600" y="32" style="fill: #5555ff">z</text>
<text x="608" y="32" style="fill: #5555ff">e</text>
<text x="616" y="32">:</text>
<text x="632" y="32" style="fill: #00bbbb">2</text>
<text x="640" y="32" style="fill: #00bbbb">8</text>
<text x="0" y="48" style="fill: #bbbb00">0</text>
<text x="8" y="48" style="fill: #bbbb00">x</text>
<text x="16" y="48" style="fill: #bbbb00">d</text>
<text x="24" y="48" style="fill: #bbbb00">6</text>
<text x="32" y="48" style="fill: #bbbb00">0</text>
<text x="40" y="48"></text>
<text x="264" y="48">6</text>
<text x="272" y="48">5</text>
<text x="288" y="48">6</text>
<text x="296" y="48">c</text>
<text x="312" y="48">7</text>
<text x="320" y="48">3</text>
<text x="336" y="48">7</text>
<text x="344" y="48">4</text>
<text x="424" y="48"></text>
<text x="504" y="48">e</text>
<text x="512" y="48">l</text>
<text x="520" y="48">s</text>
<text x="528" y="48">t</text>
<text x="560" y="48"></text>
<text x="584" y="48" style="fill: #5555ff">t</text>
<text x="592" y="48" style="fill: #5555ff">y</text>
<text x="600" y="48" style="fill: #5555ff">p</text>
<text x="608" y="48" style="fill: #5555ff">e</text>
<text x="616" y="48">:</text>
<text x="632" y="48" style="fill: #00bb00">&#34;</text>
<text x="640" y="48" style="fill: #00bb00">e</text>
<text x="648" y="48" style="fill: #00bb00">l</text>
<text x="656" y="48" style="fill: #00bb00">s</text>
<text x="664" y="48" style="fill: #00bb00">t</text>
<text x="672" y="48" style="fill: #00bb00">&#34;</text>
<text x="688" y="48">(</text>
<text x="696" y="48">A</text>
<text x="704" y="48">n</text>
<text x="720" y="48">e</text>
<text x="728" y="48">d</text>
<text x="736" y="48">i</text>
<text x="744" y="48">t</text>
<text x="760" y="48">l</text>
<text x="768" y="48">i</text>
<text x="776" y="48">s</text>
<text x="784" y="48">t</text>
<text x="792" y="48">)</text>
<text x="0" y="64" style="fill: #bbbb00">0</text>
<text x="8" y="64" style="fill: #bbbb00">x</text>
<text x="16" y="64" style="fill: #bbbb00">d</text>
<text x="24" y="64" style="fill: #bbbb00">6</text>
<text x="32" y="64" style="fill: #bbbb00">0</text>
<text x="40" y="64"></text>
<text x="360" y="64" style="fill: #555555">0</text>
<text x="368" y="64" style="fill: #555555">0</text>
<text x="424" y="64"></text>
<text x="536" y="64" style="fill: #555555">.</text>
<text x="560" y="64"></text>
<text x="584" y="64" style="fill: #5555ff">v</text>
<text x="592" y="64" style="fill: #5555ff">e</text>
<text x="600" y="64" style="fill: #5555ff">r</text>
<text x="608" y="64" style="fill: #5555ff">s</text>
<text x="616" y="64" style="fill: #5555ff">i</text>
<text x="624" y="64" style="fill: #5555ff">o</text>
<text x="632" y="64" style="fill: #5555ff">n</text>
<text x="640" y="64">:</text>
<text x="656" y="64" style="fill: #00bbbb">0</text>
<text x="0" y="80" style="fill: #bbbb00">0</text>
<text x="8" y="80" style="fill: #bbbb00">x</text>
<text x="16" y="80" style="fill: #bbbb00">d</text>
<text x="24" y="80" style="fill: #bbbb00">6</text>
<text x="32" y="80" style="fill: #bbbb00">0</text>
<text x="40" y="80"></text>
<text x="384" y="80" style="fill: #555555">0</text>
<text x="392" y="80" style="fill: #555555">0</text>
<text x="408" y="80" style="fill: #555555">0</text>
<text x="416" y="80" style="fill: #555555">0</text>
<text x="424" y="80"></text>
<text x="544" y="80" style="fill: #555555">.</text>
<text x="552" y="80" style="fill: #555555">.</text>
<text x="560" y="80"></text>
<text x="584" y="80" style="fill: #5555ff">f</text>
<text x="592" y="80" style="fill: #5555ff">l</text>
<text x="600" y="80" style="fill: #5555ff">a</text>
<text x="608" y="80" style="fill: #5555ff">g</text>
<text x="616" y="80" style="fill: #5555ff">s</text>
<text x="624" y="80">:</text>
<text x="640" y="80" style="fill: #00bbbb">0</text>
<text x="0" y="96" style="fill: #bbbb00">0</text>
<text x="8" y="96" style="fill: #bbbb00">x</text>
<text x="16" y="96" style="fill: #bbbb00">d</text>
<text x="24" y="96" style="fill: #bbbb00">7</text>
<text x="32" y="96" style="fill: #bbbb00">0</text>
<text x="40" y="96"></text>
<text x="48" y="96" style="fill: #555555">0</text>
<text x="56" y="96" style="fill: #555555">0</text>
<text x="424" y="96"></text>
<text x="432" y="96" style="fill: #555555">.</text>
<text x="560" y="96"></text>
<text x="0" y="112" style="fill: #bbbb00">0</text>
<text x="8" y="112" style="fill: #bbbb00">x</text>
<text x="16" y="112" style="fill: #bbbb00">d</text>
<text x="24" y="112" style="fill: #bbbb00">7</text>
<text x="32" y="112" style="fill: #bbbb00">0</text>
<text x="40" y="112"></text>
<text x="72" y="112" style="fill: #555555">0</text>
<text x="80" y="112" style="fill: #555555">0</text>
<text x="96" y="112" style="fill: #555555">0</text>
<text x="104" y="112" style="fill: #555555">0</text>
<text x="120" y="112" style="fill: #555555">0</text>
<text x="128" y="112" style="fill: #555555">0</text>
<text x="144" y="112" style="fill: #ffffff">0</text>
<text x="152" y="112" style="fill: #ffffff">1</text>
<text x="424" y="112"></text>
<text x="440" y="112" style="fill: #555555">.</text>
<text x="448" y="112" style="fill: #555555">.</text>
<text x="456" y="112" style="fill: #555555">.</text>
<text x="464" y="112" style="fill: #ffffff">.</text>
<text x="560" y="112"></text>
<text x="584" y="112" style="fill: #5555ff">e</text>
<text x="592" y="112" style="fill: #5555ff">n</text>
<text x="600" y="112" style="fill: #5555ff">t</text>
<text x="608" y="112" style="fill: #5555ff">r</text>
<text x="616" y="112" style="fill: #5555ff">y</text>
<text x="624" y="112" style="fill: #5555ff">_</text>
<text x="632" y="112" style="fill: #5555ff">c</text>
<text x="640" y="112" style="fill: #5555ff">o</text>
<text x="648" y="112" style="fill: #5555ff">u</text>
<text x="656" y="112" style="fill: #5555ff">n</text>
<text x="664" y="112" style="fill: #5555ff">t</text>
<text x="672" y="112">:</text>
<text x="688" y="112" style="fill: #00bbbb">1</text>
<text x="0" y="128" style="fill: #bbbb00">0</text>
<text x="8" y="128" style="fill: #bbbb00">x</text>
<text x="16" y="128" style="fill: #bbbb00">d</text>
<text x="24" y="128" style="fill: #bbbb00">7</text>
<text x="32" y="128" style="fill: #bbbb00">0</text>
<text x="40" y="128"></text>
<text x="168" y="128" style="fill: #555555">0</text>
<text x="176" y="128" style="fill: #555555">0</text>
<text x="192" y="128" style="fill: #555555">0</text>
<text x="200" y="128" style="fill: #555555">0</text>
<text x="216" y="128" style="fill: #555555">0</text>
<text x="224" y="128" style="fill: #555555">0</text>
<text x="240" y="128">2</text>
<text x="248" y="128">8</text>
<text x="264" y="128" style="fill: #555555">0</text>
<text x="272" y="128" style="fill: #555555">0</text>
<text x="288" y="128" style="fill: #555555">0</text>
<text x="296" y="128" style="fill: #555555">0</text>
<text x="312" y="128" style="fill: #555555">0</text>
<text x="320" y="128" style="fill: #555555">0</text>
<text x="336" y="128" style="fill: #555555">0</text>
<text x="344" y="128" style="fill: #555555">0</text>
<text x="360" y="128" style="fill: #555555">0</text>
<text x="368" y="128" style="fill: #555555">0</text>
<text x="384" y="128" style="fill: #ffffff">0</text>
<text x="392" y="128" style="fill: #ffffff">1</text>
<text x="408" y="128" style="fill: #555555">0</text>
<text x="416" y="128" style="fill: #555555">0</text>
<text x="424" y="128"></text>
<text x="472" y="128" style="fill: #555555">.</text>
<text x="480" y="128" style="fill: #555555">.</text>
<text x="488" y="128" style="fill: #555555">.</text>
<text x="496" y="128">(</text>
<text x="504" y="128" style="fill: #555555">.</text>
<text x="512" y="128" style="fill: #555555">.</text>
<text x="520" y="128" style="fill: #555555">.</text>
<text x="528" y="128" style="fill: #555555">.</text>
<text x="536" y="128" style="fill: #555555">.</text>
<text x="544" y="128" style="fill: #ffffff">.</text>
<text x="552" y="128" style="fill: #555555">.</text>
<text x="560" y="128"></text>
<text x="584" y="128" style="fill: #5555ff">e</text>
<text x="592" y="128" style="fill: #5555ff">n</text>
<text x="600" y="128" style="fill: #5555ff">t</text>
<text x="608" y="128" style="fill: #5555ff">r</text>
<text x="616" y="128" style="fill: #5555ff">i</text>
<text x="624" y="128" style="fill: #5555ff">e</text>
<text x="632" y="128" style="fill: #5555ff">s</text>
<text x="640" y="128">[</text>
<text x="648" y="128" style="fill: #00bbbb">0</text>
<text x="656" y="128">:</text>
<text x="664" y="128" style="fill: #00bbbb">1</text>
<text x="672" y="128">]</text>
<text x="680" y="128">:</text>
<text x="0" y="144" style="fill: #bbbb00">0</text>
<text x="8" y="144" style="fill: #bbbb00">x</text>
<text x="16" y="144" style="fill: #bbbb00">d</text>
<text x="24" y="144" style="fill: #bbbb00">8</text>
<text x="32" y="144" style="fill: #bbbb00">0</text>
<text x="40" y="144"></text>
<text x="48" y="144" style="fill: #555555">0</text>
<text x="56" y="144" style="fill: #555555">0</text>
<text x="424" y="144"></text>
<text x="432" y="144" style="fill: #555555">.</text>
<text x="560" y="144"></text>
<text x="0ch" y="0.5em"><tspan>$ fq &#39;first(grep_by(.type == &#34;elst&#34;))&#39; file.mp4</tspan></text>
<text x="0ch" y="1.5em"><tspan></tspan><tspan class="underline fa3">00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f</tspan><tspan></tspan><tspan class="underline fa3">0123456789abcdef</tspan><tspan>│.</tspan><tspan class="fa12">boxes</tspan><tspan>[</tspan><tspan class="fa6">3</tspan><tspan>].</tspan><tspan class="fa12">boxes</tspan><tspan>[</tspan><tspan class="fa6">1</tspan><tspan>].</tspan><tspan class="fa12">boxes</tspan><tspan>[</tspan><tspan class="fa6">1</tspan><tspan>].</tspan><tspan class="fa12">boxes</tspan><tspan>[</tspan><tspan class="fa6">0</tspan><tspan>]{}: box</tspan></text>
<text x="0ch" y="2.5em"><tspan class="fa3">0xd60</tspan><tspan></tspan><tspan class="fa8">00 00 00 </tspan><tspan class="bold">1c </tspan><tspan></tspan><tspan class="fa8">...</tspan><tspan class="bold">. </tspan><tspan></tspan><tspan class="fa12">size</tspan><tspan>: </tspan><tspan class="fa6">28</tspan></text>
<text x="0ch" y="3.5em"><tspan class="fa3">0xd60</tspan><tspan>│ 65 6c 73 74 │ elst │ </tspan><tspan class="fa12">type</tspan><tspan>: </tspan><tspan class="fa2">&#34;elst&#34; </tspan><tspan>(An edit list)</tspan></text>
<text x="0ch" y="4.5em"><tspan class="fa3">0xd60</tspan><tspan></tspan><tspan class="fa8">00 </tspan><tspan></tspan><tspan class="fa8">. </tspan><tspan></tspan><tspan class="fa12">version</tspan><tspan>: </tspan><tspan class="fa6">0</tspan></text>
<text x="0ch" y="5.5em"><tspan class="fa3">0xd60</tspan><tspan></tspan><tspan class="fa8">00 00</tspan><tspan></tspan><tspan class="fa8">..</tspan><tspan></tspan><tspan class="fa12">flags</tspan><tspan>: </tspan><tspan class="fa6">0</tspan></text>
<text x="0ch" y="6.5em"><tspan class="fa3">0xd70</tspan><tspan></tspan><tspan class="fa8">00 </tspan><tspan></tspan><tspan class="fa8">. </tspan><tspan></tspan></text>
<text x="0ch" y="7.5em"><tspan class="fa3">0xd70</tspan><tspan></tspan><tspan class="fa8">00 00 00 </tspan><tspan class="bold">01 </tspan><tspan></tspan><tspan class="fa8">...</tspan><tspan class="bold">. </tspan><tspan></tspan><tspan class="fa12">entry_count</tspan><tspan>: </tspan><tspan class="fa6">1</tspan></text>
<text x="0ch" y="8.5em"><tspan class="fa3">0xd70</tspan><tspan></tspan><tspan class="fa8">00 00 00 </tspan><tspan>28 </tspan><tspan class="fa8">00 00 00 00 00 </tspan><tspan class="bold">01 </tspan><tspan class="fa8">00</tspan><tspan></tspan><tspan class="fa8">...</tspan><tspan>(</tspan><tspan class="fa8">.....</tspan><tspan class="bold">.</tspan><tspan class="fa8">.</tspan><tspan></tspan><tspan class="fa12">entries</tspan><tspan>[</tspan><tspan class="fa6">0</tspan><tspan>:</tspan><tspan class="fa6">1</tspan><tspan>]:</tspan></text>
<text x="0ch" y="9.5em"><tspan class="fa3">0xd80</tspan><tspan></tspan><tspan class="fa8">00 </tspan><tspan></tspan><tspan class="fa8">. </tspan><tspan></tspan></text>
</svg>

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 4.2 KiB

View File

@ -1,461 +1,44 @@
<svg viewBox="0 0 912 224" width="912" height="224" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<svg width="114ch" height="14em" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve">
<style>
rect { shape-rendering: crispEdges; }
text {
dominant-baseline: text-before-edge;
* {
font-family: Courier, monospace;
font-size: 14px;
}
tspan, text {
font-variant-ligatures: none;
dominant-baseline: central;
white-space: pre;
font: 14px Courier, monospace;
fill: #bbbbbb;
}
.u { text-decoration: underline; }
.bg {
stroke-width: "0.5px";
}
.bold {
font-weight: bold;
}
.underline {
text-decoration: underline;
}
<!-- Foreground ANSI colors -->
.fa2 { fill: #00bb00; }
.fa3 { fill: #bbbb00; }
.fa6 { fill: #00bbbb; }
.fa8 { fill: #555555; }
.fa12 { fill: #5555ff; }
</style>
<rect width="100%" height="100%" x="0" y="0" style="fill: #000000"/>
<text x="0" y="0">$</text>
<text x="16" y="0">f</text>
<text x="24" y="0">q</text>
<text x="40" y="0">&#39;</text>
<text x="48" y="0">f</text>
<text x="56" y="0">i</text>
<text x="64" y="0">r</text>
<text x="72" y="0">s</text>
<text x="80" y="0">t</text>
<text x="88" y="0">(</text>
<text x="96" y="0">g</text>
<text x="104" y="0">r</text>
<text x="112" y="0">e</text>
<text x="120" y="0">p</text>
<text x="128" y="0">_</text>
<text x="136" y="0">b</text>
<text x="144" y="0">y</text>
<text x="152" y="0">(</text>
<text x="160" y="0">.</text>
<text x="168" y="0">t</text>
<text x="176" y="0">y</text>
<text x="184" y="0">p</text>
<text x="192" y="0">e</text>
<text x="208" y="0">=</text>
<text x="216" y="0">=</text>
<text x="232" y="0">&#34;</text>
<text x="240" y="0">e</text>
<text x="248" y="0">l</text>
<text x="256" y="0">s</text>
<text x="264" y="0">t</text>
<text x="272" y="0">&#34;</text>
<text x="280" y="0">)</text>
<text x="288" y="0">)</text>
<text x="304" y="0">|</text>
<text x="320" y="0">d</text>
<text x="328" y="0">&#39;</text>
<text x="344" y="0">f</text>
<text x="352" y="0">i</text>
<text x="360" y="0">l</text>
<text x="368" y="0">e</text>
<text x="376" y="0">.</text>
<text x="384" y="0">m</text>
<text x="392" y="0">p</text>
<text x="400" y="0">4</text>
<text x="40" y="16"></text>
<text x="48" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="56" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="64" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="72" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="80" y="16" style="fill: #bbbb00" class="u">1</text>
<text x="88" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="96" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="104" y="16" style="fill: #bbbb00" class="u">2</text>
<text x="112" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="120" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="128" y="16" style="fill: #bbbb00" class="u">3</text>
<text x="136" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="144" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="152" y="16" style="fill: #bbbb00" class="u">4</text>
<text x="160" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="168" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="176" y="16" style="fill: #bbbb00" class="u">5</text>
<text x="184" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="192" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="200" y="16" style="fill: #bbbb00" class="u">6</text>
<text x="208" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="216" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="224" y="16" style="fill: #bbbb00" class="u">7</text>
<text x="232" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="240" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="248" y="16" style="fill: #bbbb00" class="u">8</text>
<text x="256" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="264" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="272" y="16" style="fill: #bbbb00" class="u">9</text>
<text x="280" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="288" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="296" y="16" style="fill: #bbbb00" class="u">a</text>
<text x="304" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="312" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="320" y="16" style="fill: #bbbb00" class="u">b</text>
<text x="328" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="336" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="344" y="16" style="fill: #bbbb00" class="u">c</text>
<text x="352" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="360" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="368" y="16" style="fill: #bbbb00" class="u">d</text>
<text x="376" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="384" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="392" y="16" style="fill: #bbbb00" class="u">e</text>
<text x="400" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="408" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="416" y="16" style="fill: #bbbb00" class="u">f</text>
<text x="424" y="16"></text>
<text x="432" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="440" y="16" style="fill: #bbbb00" class="u">1</text>
<text x="448" y="16" style="fill: #bbbb00" class="u">2</text>
<text x="456" y="16" style="fill: #bbbb00" class="u">3</text>
<text x="464" y="16" style="fill: #bbbb00" class="u">4</text>
<text x="472" y="16" style="fill: #bbbb00" class="u">5</text>
<text x="480" y="16" style="fill: #bbbb00" class="u">6</text>
<text x="488" y="16" style="fill: #bbbb00" class="u">7</text>
<text x="496" y="16" style="fill: #bbbb00" class="u">8</text>
<text x="504" y="16" style="fill: #bbbb00" class="u">9</text>
<text x="512" y="16" style="fill: #bbbb00" class="u">a</text>
<text x="520" y="16" style="fill: #bbbb00" class="u">b</text>
<text x="528" y="16" style="fill: #bbbb00" class="u">c</text>
<text x="536" y="16" style="fill: #bbbb00" class="u">d</text>
<text x="544" y="16" style="fill: #bbbb00" class="u">e</text>
<text x="552" y="16" style="fill: #bbbb00" class="u">f</text>
<text x="560" y="16"></text>
<text x="568" y="16">.</text>
<text x="576" y="16" style="fill: #5555ff">b</text>
<text x="584" y="16" style="fill: #5555ff">o</text>
<text x="592" y="16" style="fill: #5555ff">x</text>
<text x="600" y="16" style="fill: #5555ff">e</text>
<text x="608" y="16" style="fill: #5555ff">s</text>
<text x="616" y="16">[</text>
<text x="624" y="16" style="fill: #00bbbb">3</text>
<text x="632" y="16">]</text>
<text x="640" y="16">.</text>
<text x="648" y="16" style="fill: #5555ff">b</text>
<text x="656" y="16" style="fill: #5555ff">o</text>
<text x="664" y="16" style="fill: #5555ff">x</text>
<text x="672" y="16" style="fill: #5555ff">e</text>
<text x="680" y="16" style="fill: #5555ff">s</text>
<text x="688" y="16">[</text>
<text x="696" y="16" style="fill: #00bbbb">1</text>
<text x="704" y="16">]</text>
<text x="712" y="16">.</text>
<text x="720" y="16" style="fill: #5555ff">b</text>
<text x="728" y="16" style="fill: #5555ff">o</text>
<text x="736" y="16" style="fill: #5555ff">x</text>
<text x="744" y="16" style="fill: #5555ff">e</text>
<text x="752" y="16" style="fill: #5555ff">s</text>
<text x="760" y="16">[</text>
<text x="768" y="16" style="fill: #00bbbb">1</text>
<text x="776" y="16">]</text>
<text x="784" y="16">.</text>
<text x="792" y="16" style="fill: #5555ff">b</text>
<text x="800" y="16" style="fill: #5555ff">o</text>
<text x="808" y="16" style="fill: #5555ff">x</text>
<text x="816" y="16" style="fill: #5555ff">e</text>
<text x="824" y="16" style="fill: #5555ff">s</text>
<text x="832" y="16">[</text>
<text x="840" y="16" style="fill: #00bbbb">0</text>
<text x="848" y="16">]</text>
<text x="856" y="16">{</text>
<text x="864" y="16">}</text>
<text x="872" y="16">:</text>
<text x="888" y="16">b</text>
<text x="896" y="16">o</text>
<text x="904" y="16">x</text>
<text x="0" y="32" style="fill: #bbbb00">0</text>
<text x="8" y="32" style="fill: #bbbb00">x</text>
<text x="16" y="32" style="fill: #bbbb00">d</text>
<text x="24" y="32" style="fill: #bbbb00">6</text>
<text x="32" y="32" style="fill: #bbbb00">0</text>
<text x="40" y="32"></text>
<text x="168" y="32" style="fill: #555555">0</text>
<text x="176" y="32" style="fill: #555555">0</text>
<text x="192" y="32" style="fill: #555555">0</text>
<text x="200" y="32" style="fill: #555555">0</text>
<text x="216" y="32" style="fill: #555555">0</text>
<text x="224" y="32" style="fill: #555555">0</text>
<text x="240" y="32" style="fill: #ffffff">1</text>
<text x="248" y="32" style="fill: #ffffff">c</text>
<text x="424" y="32"></text>
<text x="472" y="32" style="fill: #555555">.</text>
<text x="480" y="32" style="fill: #555555">.</text>
<text x="488" y="32" style="fill: #555555">.</text>
<text x="496" y="32" style="fill: #ffffff">.</text>
<text x="560" y="32"></text>
<text x="584" y="32" style="fill: #5555ff">s</text>
<text x="592" y="32" style="fill: #5555ff">i</text>
<text x="600" y="32" style="fill: #5555ff">z</text>
<text x="608" y="32" style="fill: #5555ff">e</text>
<text x="616" y="32">:</text>
<text x="632" y="32" style="fill: #00bbbb">2</text>
<text x="640" y="32" style="fill: #00bbbb">8</text>
<text x="0" y="48" style="fill: #bbbb00">0</text>
<text x="8" y="48" style="fill: #bbbb00">x</text>
<text x="16" y="48" style="fill: #bbbb00">d</text>
<text x="24" y="48" style="fill: #bbbb00">6</text>
<text x="32" y="48" style="fill: #bbbb00">0</text>
<text x="40" y="48"></text>
<text x="264" y="48">6</text>
<text x="272" y="48">5</text>
<text x="288" y="48">6</text>
<text x="296" y="48">c</text>
<text x="312" y="48">7</text>
<text x="320" y="48">3</text>
<text x="336" y="48">7</text>
<text x="344" y="48">4</text>
<text x="424" y="48"></text>
<text x="504" y="48">e</text>
<text x="512" y="48">l</text>
<text x="520" y="48">s</text>
<text x="528" y="48">t</text>
<text x="560" y="48"></text>
<text x="584" y="48" style="fill: #5555ff">t</text>
<text x="592" y="48" style="fill: #5555ff">y</text>
<text x="600" y="48" style="fill: #5555ff">p</text>
<text x="608" y="48" style="fill: #5555ff">e</text>
<text x="616" y="48">:</text>
<text x="632" y="48" style="fill: #00bb00">&#34;</text>
<text x="640" y="48" style="fill: #00bb00">e</text>
<text x="648" y="48" style="fill: #00bb00">l</text>
<text x="656" y="48" style="fill: #00bb00">s</text>
<text x="664" y="48" style="fill: #00bb00">t</text>
<text x="672" y="48" style="fill: #00bb00">&#34;</text>
<text x="688" y="48">(</text>
<text x="696" y="48">A</text>
<text x="704" y="48">n</text>
<text x="720" y="48">e</text>
<text x="728" y="48">d</text>
<text x="736" y="48">i</text>
<text x="744" y="48">t</text>
<text x="760" y="48">l</text>
<text x="768" y="48">i</text>
<text x="776" y="48">s</text>
<text x="784" y="48">t</text>
<text x="792" y="48">)</text>
<text x="0" y="64" style="fill: #bbbb00">0</text>
<text x="8" y="64" style="fill: #bbbb00">x</text>
<text x="16" y="64" style="fill: #bbbb00">d</text>
<text x="24" y="64" style="fill: #bbbb00">6</text>
<text x="32" y="64" style="fill: #bbbb00">0</text>
<text x="40" y="64"></text>
<text x="360" y="64" style="fill: #555555">0</text>
<text x="368" y="64" style="fill: #555555">0</text>
<text x="424" y="64"></text>
<text x="536" y="64" style="fill: #555555">.</text>
<text x="560" y="64"></text>
<text x="584" y="64" style="fill: #5555ff">v</text>
<text x="592" y="64" style="fill: #5555ff">e</text>
<text x="600" y="64" style="fill: #5555ff">r</text>
<text x="608" y="64" style="fill: #5555ff">s</text>
<text x="616" y="64" style="fill: #5555ff">i</text>
<text x="624" y="64" style="fill: #5555ff">o</text>
<text x="632" y="64" style="fill: #5555ff">n</text>
<text x="640" y="64">:</text>
<text x="656" y="64" style="fill: #00bbbb">0</text>
<text x="0" y="80" style="fill: #bbbb00">0</text>
<text x="8" y="80" style="fill: #bbbb00">x</text>
<text x="16" y="80" style="fill: #bbbb00">d</text>
<text x="24" y="80" style="fill: #bbbb00">6</text>
<text x="32" y="80" style="fill: #bbbb00">0</text>
<text x="40" y="80"></text>
<text x="384" y="80" style="fill: #555555">0</text>
<text x="392" y="80" style="fill: #555555">0</text>
<text x="408" y="80" style="fill: #555555">0</text>
<text x="416" y="80" style="fill: #555555">0</text>
<text x="424" y="80"></text>
<text x="544" y="80" style="fill: #555555">.</text>
<text x="552" y="80" style="fill: #555555">.</text>
<text x="560" y="80"></text>
<text x="584" y="80" style="fill: #5555ff">f</text>
<text x="592" y="80" style="fill: #5555ff">l</text>
<text x="600" y="80" style="fill: #5555ff">a</text>
<text x="608" y="80" style="fill: #5555ff">g</text>
<text x="616" y="80" style="fill: #5555ff">s</text>
<text x="624" y="80">:</text>
<text x="640" y="80" style="fill: #00bbbb">0</text>
<text x="0" y="96" style="fill: #bbbb00">0</text>
<text x="8" y="96" style="fill: #bbbb00">x</text>
<text x="16" y="96" style="fill: #bbbb00">d</text>
<text x="24" y="96" style="fill: #bbbb00">7</text>
<text x="32" y="96" style="fill: #bbbb00">0</text>
<text x="40" y="96"></text>
<text x="48" y="96" style="fill: #555555">0</text>
<text x="56" y="96" style="fill: #555555">0</text>
<text x="424" y="96"></text>
<text x="432" y="96" style="fill: #555555">.</text>
<text x="560" y="96"></text>
<text x="0" y="112" style="fill: #bbbb00">0</text>
<text x="8" y="112" style="fill: #bbbb00">x</text>
<text x="16" y="112" style="fill: #bbbb00">d</text>
<text x="24" y="112" style="fill: #bbbb00">7</text>
<text x="32" y="112" style="fill: #bbbb00">0</text>
<text x="40" y="112"></text>
<text x="72" y="112" style="fill: #555555">0</text>
<text x="80" y="112" style="fill: #555555">0</text>
<text x="96" y="112" style="fill: #555555">0</text>
<text x="104" y="112" style="fill: #555555">0</text>
<text x="120" y="112" style="fill: #555555">0</text>
<text x="128" y="112" style="fill: #555555">0</text>
<text x="144" y="112" style="fill: #ffffff">0</text>
<text x="152" y="112" style="fill: #ffffff">1</text>
<text x="424" y="112"></text>
<text x="440" y="112" style="fill: #555555">.</text>
<text x="448" y="112" style="fill: #555555">.</text>
<text x="456" y="112" style="fill: #555555">.</text>
<text x="464" y="112" style="fill: #ffffff">.</text>
<text x="560" y="112"></text>
<text x="584" y="112" style="fill: #5555ff">e</text>
<text x="592" y="112" style="fill: #5555ff">n</text>
<text x="600" y="112" style="fill: #5555ff">t</text>
<text x="608" y="112" style="fill: #5555ff">r</text>
<text x="616" y="112" style="fill: #5555ff">y</text>
<text x="624" y="112" style="fill: #5555ff">_</text>
<text x="632" y="112" style="fill: #5555ff">c</text>
<text x="640" y="112" style="fill: #5555ff">o</text>
<text x="648" y="112" style="fill: #5555ff">u</text>
<text x="656" y="112" style="fill: #5555ff">n</text>
<text x="664" y="112" style="fill: #5555ff">t</text>
<text x="672" y="112">:</text>
<text x="688" y="112" style="fill: #00bbbb">1</text>
<text x="40" y="128"></text>
<text x="424" y="128"></text>
<text x="560" y="128"></text>
<text x="584" y="128" style="fill: #5555ff">e</text>
<text x="592" y="128" style="fill: #5555ff">n</text>
<text x="600" y="128" style="fill: #5555ff">t</text>
<text x="608" y="128" style="fill: #5555ff">r</text>
<text x="616" y="128" style="fill: #5555ff">i</text>
<text x="624" y="128" style="fill: #5555ff">e</text>
<text x="632" y="128" style="fill: #5555ff">s</text>
<text x="640" y="128">[</text>
<text x="648" y="128" style="fill: #00bbbb">0</text>
<text x="656" y="128">:</text>
<text x="664" y="128" style="fill: #00bbbb">1</text>
<text x="672" y="128">]</text>
<text x="680" y="128">:</text>
<text x="40" y="144"></text>
<text x="424" y="144"></text>
<text x="560" y="144"></text>
<text x="600" y="144">[</text>
<text x="608" y="144" style="fill: #00bbbb">0</text>
<text x="616" y="144">]</text>
<text x="624" y="144">{</text>
<text x="632" y="144">}</text>
<text x="640" y="144">:</text>
<text x="656" y="144">e</text>
<text x="664" y="144">n</text>
<text x="672" y="144">t</text>
<text x="680" y="144">r</text>
<text x="688" y="144">y</text>
<text x="0" y="160" style="fill: #bbbb00">0</text>
<text x="8" y="160" style="fill: #bbbb00">x</text>
<text x="16" y="160" style="fill: #bbbb00">d</text>
<text x="24" y="160" style="fill: #bbbb00">7</text>
<text x="32" y="160" style="fill: #bbbb00">0</text>
<text x="40" y="160"></text>
<text x="168" y="160" style="fill: #555555">0</text>
<text x="176" y="160" style="fill: #555555">0</text>
<text x="192" y="160" style="fill: #555555">0</text>
<text x="200" y="160" style="fill: #555555">0</text>
<text x="216" y="160" style="fill: #555555">0</text>
<text x="224" y="160" style="fill: #555555">0</text>
<text x="240" y="160">2</text>
<text x="248" y="160">8</text>
<text x="424" y="160"></text>
<text x="472" y="160" style="fill: #555555">.</text>
<text x="480" y="160" style="fill: #555555">.</text>
<text x="488" y="160" style="fill: #555555">.</text>
<text x="496" y="160">(</text>
<text x="560" y="160"></text>
<text x="616" y="160" style="fill: #5555ff">s</text>
<text x="624" y="160" style="fill: #5555ff">e</text>
<text x="632" y="160" style="fill: #5555ff">g</text>
<text x="640" y="160" style="fill: #5555ff">m</text>
<text x="648" y="160" style="fill: #5555ff">e</text>
<text x="656" y="160" style="fill: #5555ff">n</text>
<text x="664" y="160" style="fill: #5555ff">t</text>
<text x="672" y="160" style="fill: #5555ff">_</text>
<text x="680" y="160" style="fill: #5555ff">d</text>
<text x="688" y="160" style="fill: #5555ff">u</text>
<text x="696" y="160" style="fill: #5555ff">r</text>
<text x="704" y="160" style="fill: #5555ff">a</text>
<text x="712" y="160" style="fill: #5555ff">t</text>
<text x="720" y="160" style="fill: #5555ff">i</text>
<text x="728" y="160" style="fill: #5555ff">o</text>
<text x="736" y="160" style="fill: #5555ff">n</text>
<text x="744" y="160">:</text>
<text x="760" y="160" style="fill: #00bbbb">4</text>
<text x="768" y="160" style="fill: #00bbbb">0</text>
<text x="0" y="176" style="fill: #bbbb00">0</text>
<text x="8" y="176" style="fill: #bbbb00">x</text>
<text x="16" y="176" style="fill: #bbbb00">d</text>
<text x="24" y="176" style="fill: #bbbb00">7</text>
<text x="32" y="176" style="fill: #bbbb00">0</text>
<text x="40" y="176"></text>
<text x="264" y="176" style="fill: #555555">0</text>
<text x="272" y="176" style="fill: #555555">0</text>
<text x="288" y="176" style="fill: #555555">0</text>
<text x="296" y="176" style="fill: #555555">0</text>
<text x="312" y="176" style="fill: #555555">0</text>
<text x="320" y="176" style="fill: #555555">0</text>
<text x="336" y="176" style="fill: #555555">0</text>
<text x="344" y="176" style="fill: #555555">0</text>
<text x="424" y="176"></text>
<text x="504" y="176" style="fill: #555555">.</text>
<text x="512" y="176" style="fill: #555555">.</text>
<text x="520" y="176" style="fill: #555555">.</text>
<text x="528" y="176" style="fill: #555555">.</text>
<text x="560" y="176"></text>
<text x="616" y="176" style="fill: #5555ff">m</text>
<text x="624" y="176" style="fill: #5555ff">e</text>
<text x="632" y="176" style="fill: #5555ff">d</text>
<text x="640" y="176" style="fill: #5555ff">i</text>
<text x="648" y="176" style="fill: #5555ff">a</text>
<text x="656" y="176" style="fill: #5555ff">_</text>
<text x="664" y="176" style="fill: #5555ff">t</text>
<text x="672" y="176" style="fill: #5555ff">i</text>
<text x="680" y="176" style="fill: #5555ff">m</text>
<text x="688" y="176" style="fill: #5555ff">e</text>
<text x="696" y="176">:</text>
<text x="712" y="176" style="fill: #00bbbb">0</text>
<text x="0" y="192" style="fill: #bbbb00">0</text>
<text x="8" y="192" style="fill: #bbbb00">x</text>
<text x="16" y="192" style="fill: #bbbb00">d</text>
<text x="24" y="192" style="fill: #bbbb00">7</text>
<text x="32" y="192" style="fill: #bbbb00">0</text>
<text x="40" y="192"></text>
<text x="360" y="192" style="fill: #555555">0</text>
<text x="368" y="192" style="fill: #555555">0</text>
<text x="384" y="192" style="fill: #ffffff">0</text>
<text x="392" y="192" style="fill: #ffffff">1</text>
<text x="408" y="192" style="fill: #555555">0</text>
<text x="416" y="192" style="fill: #555555">0</text>
<text x="424" y="192"></text>
<text x="536" y="192" style="fill: #555555">.</text>
<text x="544" y="192" style="fill: #ffffff">.</text>
<text x="552" y="192" style="fill: #555555">.</text>
<text x="560" y="192"></text>
<text x="616" y="192" style="fill: #5555ff">m</text>
<text x="624" y="192" style="fill: #5555ff">e</text>
<text x="632" y="192" style="fill: #5555ff">d</text>
<text x="640" y="192" style="fill: #5555ff">i</text>
<text x="648" y="192" style="fill: #5555ff">a</text>
<text x="656" y="192" style="fill: #5555ff">_</text>
<text x="664" y="192" style="fill: #5555ff">r</text>
<text x="672" y="192" style="fill: #5555ff">a</text>
<text x="680" y="192" style="fill: #5555ff">t</text>
<text x="688" y="192" style="fill: #5555ff">e</text>
<text x="696" y="192">:</text>
<text x="712" y="192" style="fill: #00bbbb">1</text>
<text x="0" y="208" style="fill: #bbbb00">0</text>
<text x="8" y="208" style="fill: #bbbb00">x</text>
<text x="16" y="208" style="fill: #bbbb00">d</text>
<text x="24" y="208" style="fill: #bbbb00">8</text>
<text x="32" y="208" style="fill: #bbbb00">0</text>
<text x="40" y="208"></text>
<text x="48" y="208" style="fill: #555555">0</text>
<text x="56" y="208" style="fill: #555555">0</text>
<text x="424" y="208"></text>
<text x="432" y="208" style="fill: #555555">.</text>
<text x="560" y="208"></text>
<text x="0ch" y="0.5em"><tspan>$ fq &#39;first(grep_by(.type == &#34;elst&#34;)) | d&#39; file.mp4</tspan></text>
<text x="0ch" y="1.5em"><tspan></tspan><tspan class="underline fa3">00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f</tspan><tspan></tspan><tspan class="underline fa3">0123456789abcdef</tspan><tspan>│.</tspan><tspan class="fa12">boxes</tspan><tspan>[</tspan><tspan class="fa6">3</tspan><tspan>].</tspan><tspan class="fa12">boxes</tspan><tspan>[</tspan><tspan class="fa6">1</tspan><tspan>].</tspan><tspan class="fa12">boxes</tspan><tspan>[</tspan><tspan class="fa6">1</tspan><tspan>].</tspan><tspan class="fa12">boxes</tspan><tspan>[</tspan><tspan class="fa6">0</tspan><tspan>]{}: box</tspan></text>
<text x="0ch" y="2.5em"><tspan class="fa3">0xd60</tspan><tspan></tspan><tspan class="fa8">00 00 00 </tspan><tspan class="bold">1c </tspan><tspan></tspan><tspan class="fa8">...</tspan><tspan class="bold">. </tspan><tspan></tspan><tspan class="fa12">size</tspan><tspan>: </tspan><tspan class="fa6">28</tspan></text>
<text x="0ch" y="3.5em"><tspan class="fa3">0xd60</tspan><tspan>│ 65 6c 73 74 │ elst │ </tspan><tspan class="fa12">type</tspan><tspan>: </tspan><tspan class="fa2">&#34;elst&#34; </tspan><tspan>(An edit list)</tspan></text>
<text x="0ch" y="4.5em"><tspan class="fa3">0xd60</tspan><tspan></tspan><tspan class="fa8">00 </tspan><tspan></tspan><tspan class="fa8">. </tspan><tspan></tspan><tspan class="fa12">version</tspan><tspan>: </tspan><tspan class="fa6">0</tspan></text>
<text x="0ch" y="5.5em"><tspan class="fa3">0xd60</tspan><tspan></tspan><tspan class="fa8">00 00</tspan><tspan></tspan><tspan class="fa8">..</tspan><tspan></tspan><tspan class="fa12">flags</tspan><tspan>: </tspan><tspan class="fa6">0</tspan></text>
<text x="0ch" y="6.5em"><tspan class="fa3">0xd70</tspan><tspan></tspan><tspan class="fa8">00 </tspan><tspan></tspan><tspan class="fa8">. </tspan><tspan></tspan></text>
<text x="0ch" y="7.5em"><tspan class="fa3">0xd70</tspan><tspan></tspan><tspan class="fa8">00 00 00 </tspan><tspan class="bold">01 </tspan><tspan></tspan><tspan class="fa8">...</tspan><tspan class="bold">. </tspan><tspan></tspan><tspan class="fa12">entry_count</tspan><tspan>: </tspan><tspan class="fa6">1</tspan></text>
<text x="0ch" y="8.5em"><tspan> │ │ │ </tspan><tspan class="fa12">entries</tspan><tspan>[</tspan><tspan class="fa6">0</tspan><tspan>:</tspan><tspan class="fa6">1</tspan><tspan>]:</tspan></text>
<text x="0ch" y="9.5em"><tspan> │ │ │ [</tspan><tspan class="fa6">0</tspan><tspan>]{}: entry</tspan></text>
<text x="0ch" y="10.5em"><tspan class="fa3">0xd70</tspan><tspan></tspan><tspan class="fa8">00 00 00 </tspan><tspan>28 │ </tspan><tspan class="fa8">...</tspan><tspan>( │ </tspan><tspan class="fa12">segment_duration</tspan><tspan>: </tspan><tspan class="fa6">40</tspan></text>
<text x="0ch" y="11.5em"><tspan class="fa3">0xd70</tspan><tspan></tspan><tspan class="fa8">00 00 00 00 </tspan><tspan></tspan><tspan class="fa8">.... </tspan><tspan></tspan><tspan class="fa12">media_time</tspan><tspan>: </tspan><tspan class="fa6">0</tspan></text>
<text x="0ch" y="12.5em"><tspan class="fa3">0xd70</tspan><tspan></tspan><tspan class="fa8">00 </tspan><tspan class="bold">01 </tspan><tspan class="fa8">00</tspan><tspan></tspan><tspan class="fa8">.</tspan><tspan class="bold">.</tspan><tspan class="fa8">.</tspan><tspan></tspan><tspan class="fa12">media_rate</tspan><tspan>: </tspan><tspan class="fa6">1</tspan></text>
<text x="0ch" y="13.5em"><tspan class="fa3">0xd80</tspan><tspan></tspan><tspan class="fa8">00 </tspan><tspan></tspan><tspan class="fa8">. </tspan><tspan></tspan></text>
</svg>

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 5.2 KiB

View File

@ -1,641 +1,44 @@
<svg viewBox="0 0 1064 224" width="1064" height="224" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<svg width="131ch" height="14em" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve">
<style>
rect { shape-rendering: crispEdges; }
text {
dominant-baseline: text-before-edge;
* {
font-family: Courier, monospace;
font-size: 14px;
}
tspan, text {
font-variant-ligatures: none;
dominant-baseline: central;
white-space: pre;
font: 14px Courier, monospace;
fill: #bbbbbb;
}
.u { text-decoration: underline; }
.bg {
stroke-width: "0.5px";
}
.bold {
font-weight: bold;
}
.underline {
text-decoration: underline;
}
<!-- Foreground ANSI colors -->
.fa2 { fill: #00bb00; }
.fa3 { fill: #bbbb00; }
.fa6 { fill: #00bbbb; }
.fa8 { fill: #555555; }
.fa12 { fill: #5555ff; }
</style>
<rect width="100%" height="100%" x="0" y="0" style="fill: #000000"/>
<text x="0" y="0">$</text>
<text x="16" y="0">f</text>
<text x="24" y="0">q</text>
<text x="40" y="0">&#39;</text>
<text x="48" y="0">f</text>
<text x="56" y="0">i</text>
<text x="64" y="0">r</text>
<text x="72" y="0">s</text>
<text x="80" y="0">t</text>
<text x="88" y="0">(</text>
<text x="96" y="0">g</text>
<text x="104" y="0">r</text>
<text x="112" y="0">e</text>
<text x="120" y="0">p</text>
<text x="128" y="0">_</text>
<text x="136" y="0">b</text>
<text x="144" y="0">y</text>
<text x="152" y="0">(</text>
<text x="160" y="0">.</text>
<text x="168" y="0">t</text>
<text x="176" y="0">y</text>
<text x="184" y="0">p</text>
<text x="192" y="0">e</text>
<text x="208" y="0">=</text>
<text x="216" y="0">=</text>
<text x="232" y="0">&#34;</text>
<text x="240" y="0">e</text>
<text x="248" y="0">l</text>
<text x="256" y="0">s</text>
<text x="264" y="0">t</text>
<text x="272" y="0">&#34;</text>
<text x="280" y="0">)</text>
<text x="288" y="0">)</text>
<text x="304" y="0">|</text>
<text x="320" y="0">d</text>
<text x="328" y="0">v</text>
<text x="336" y="0">&#39;</text>
<text x="352" y="0">f</text>
<text x="360" y="0">i</text>
<text x="368" y="0">l</text>
<text x="376" y="0">e</text>
<text x="384" y="0">.</text>
<text x="392" y="0">m</text>
<text x="400" y="0">p</text>
<text x="408" y="0">4</text>
<text x="40" y="16"></text>
<text x="48" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="56" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="64" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="72" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="80" y="16" style="fill: #bbbb00" class="u">1</text>
<text x="88" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="96" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="104" y="16" style="fill: #bbbb00" class="u">2</text>
<text x="112" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="120" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="128" y="16" style="fill: #bbbb00" class="u">3</text>
<text x="136" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="144" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="152" y="16" style="fill: #bbbb00" class="u">4</text>
<text x="160" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="168" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="176" y="16" style="fill: #bbbb00" class="u">5</text>
<text x="184" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="192" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="200" y="16" style="fill: #bbbb00" class="u">6</text>
<text x="208" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="216" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="224" y="16" style="fill: #bbbb00" class="u">7</text>
<text x="232" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="240" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="248" y="16" style="fill: #bbbb00" class="u">8</text>
<text x="256" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="264" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="272" y="16" style="fill: #bbbb00" class="u">9</text>
<text x="280" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="288" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="296" y="16" style="fill: #bbbb00" class="u">a</text>
<text x="304" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="312" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="320" y="16" style="fill: #bbbb00" class="u">b</text>
<text x="328" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="336" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="344" y="16" style="fill: #bbbb00" class="u">c</text>
<text x="352" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="360" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="368" y="16" style="fill: #bbbb00" class="u">d</text>
<text x="376" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="384" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="392" y="16" style="fill: #bbbb00" class="u">e</text>
<text x="400" y="16" style="fill: #bbbb00" class="u"> </text>
<text x="408" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="416" y="16" style="fill: #bbbb00" class="u">f</text>
<text x="424" y="16"></text>
<text x="432" y="16" style="fill: #bbbb00" class="u">0</text>
<text x="440" y="16" style="fill: #bbbb00" class="u">1</text>
<text x="448" y="16" style="fill: #bbbb00" class="u">2</text>
<text x="456" y="16" style="fill: #bbbb00" class="u">3</text>
<text x="464" y="16" style="fill: #bbbb00" class="u">4</text>
<text x="472" y="16" style="fill: #bbbb00" class="u">5</text>
<text x="480" y="16" style="fill: #bbbb00" class="u">6</text>
<text x="488" y="16" style="fill: #bbbb00" class="u">7</text>
<text x="496" y="16" style="fill: #bbbb00" class="u">8</text>
<text x="504" y="16" style="fill: #bbbb00" class="u">9</text>
<text x="512" y="16" style="fill: #bbbb00" class="u">a</text>
<text x="520" y="16" style="fill: #bbbb00" class="u">b</text>
<text x="528" y="16" style="fill: #bbbb00" class="u">c</text>
<text x="536" y="16" style="fill: #bbbb00" class="u">d</text>
<text x="544" y="16" style="fill: #bbbb00" class="u">e</text>
<text x="552" y="16" style="fill: #bbbb00" class="u">f</text>
<text x="560" y="16"></text>
<text x="568" y="16">.</text>
<text x="576" y="16" style="fill: #5555ff">b</text>
<text x="584" y="16" style="fill: #5555ff">o</text>
<text x="592" y="16" style="fill: #5555ff">x</text>
<text x="600" y="16" style="fill: #5555ff">e</text>
<text x="608" y="16" style="fill: #5555ff">s</text>
<text x="616" y="16">[</text>
<text x="624" y="16" style="fill: #00bbbb">3</text>
<text x="632" y="16">]</text>
<text x="640" y="16">.</text>
<text x="648" y="16" style="fill: #5555ff">b</text>
<text x="656" y="16" style="fill: #5555ff">o</text>
<text x="664" y="16" style="fill: #5555ff">x</text>
<text x="672" y="16" style="fill: #5555ff">e</text>
<text x="680" y="16" style="fill: #5555ff">s</text>
<text x="688" y="16">[</text>
<text x="696" y="16" style="fill: #00bbbb">1</text>
<text x="704" y="16">]</text>
<text x="712" y="16">.</text>
<text x="720" y="16" style="fill: #5555ff">b</text>
<text x="728" y="16" style="fill: #5555ff">o</text>
<text x="736" y="16" style="fill: #5555ff">x</text>
<text x="744" y="16" style="fill: #5555ff">e</text>
<text x="752" y="16" style="fill: #5555ff">s</text>
<text x="760" y="16">[</text>
<text x="768" y="16" style="fill: #00bbbb">1</text>
<text x="776" y="16">]</text>
<text x="784" y="16">.</text>
<text x="792" y="16" style="fill: #5555ff">b</text>
<text x="800" y="16" style="fill: #5555ff">o</text>
<text x="808" y="16" style="fill: #5555ff">x</text>
<text x="816" y="16" style="fill: #5555ff">e</text>
<text x="824" y="16" style="fill: #5555ff">s</text>
<text x="832" y="16">[</text>
<text x="840" y="16" style="fill: #00bbbb">0</text>
<text x="848" y="16">]</text>
<text x="856" y="16">{</text>
<text x="864" y="16">}</text>
<text x="872" y="16">:</text>
<text x="888" y="16">b</text>
<text x="896" y="16">o</text>
<text x="904" y="16">x</text>
<text x="920" y="16">0</text>
<text x="928" y="16">x</text>
<text x="936" y="16">d</text>
<text x="944" y="16">6</text>
<text x="952" y="16">5</text>
<text x="960" y="16">-</text>
<text x="968" y="16">0</text>
<text x="976" y="16">x</text>
<text x="984" y="16">d</text>
<text x="992" y="16">8</text>
<text x="1000" y="16">0</text>
<text x="1008" y="16">.</text>
<text x="1016" y="16">7</text>
<text x="1032" y="16">(</text>
<text x="1040" y="16">2</text>
<text x="1048" y="16">8</text>
<text x="1056" y="16">)</text>
<text x="0" y="32" style="fill: #bbbb00">0</text>
<text x="8" y="32" style="fill: #bbbb00">x</text>
<text x="16" y="32" style="fill: #bbbb00">d</text>
<text x="24" y="32" style="fill: #bbbb00">6</text>
<text x="32" y="32" style="fill: #bbbb00">0</text>
<text x="40" y="32"></text>
<text x="168" y="32" style="fill: #555555">0</text>
<text x="176" y="32" style="fill: #555555">0</text>
<text x="192" y="32" style="fill: #555555">0</text>
<text x="200" y="32" style="fill: #555555">0</text>
<text x="216" y="32" style="fill: #555555">0</text>
<text x="224" y="32" style="fill: #555555">0</text>
<text x="240" y="32" style="fill: #ffffff">1</text>
<text x="248" y="32" style="fill: #ffffff">c</text>
<text x="424" y="32"></text>
<text x="472" y="32" style="fill: #555555">.</text>
<text x="480" y="32" style="fill: #555555">.</text>
<text x="488" y="32" style="fill: #555555">.</text>
<text x="496" y="32" style="fill: #ffffff">.</text>
<text x="560" y="32"></text>
<text x="584" y="32" style="fill: #5555ff">s</text>
<text x="592" y="32" style="fill: #5555ff">i</text>
<text x="600" y="32" style="fill: #5555ff">z</text>
<text x="608" y="32" style="fill: #5555ff">e</text>
<text x="616" y="32">:</text>
<text x="632" y="32" style="fill: #00bbbb">2</text>
<text x="640" y="32" style="fill: #00bbbb">8</text>
<text x="656" y="32">0</text>
<text x="664" y="32">x</text>
<text x="672" y="32">d</text>
<text x="680" y="32">6</text>
<text x="688" y="32">5</text>
<text x="696" y="32">-</text>
<text x="704" y="32">0</text>
<text x="712" y="32">x</text>
<text x="720" y="32">d</text>
<text x="728" y="32">6</text>
<text x="736" y="32">8</text>
<text x="744" y="32">.</text>
<text x="752" y="32">7</text>
<text x="768" y="32">(</text>
<text x="776" y="32">4</text>
<text x="784" y="32">)</text>
<text x="0" y="48" style="fill: #bbbb00">0</text>
<text x="8" y="48" style="fill: #bbbb00">x</text>
<text x="16" y="48" style="fill: #bbbb00">d</text>
<text x="24" y="48" style="fill: #bbbb00">6</text>
<text x="32" y="48" style="fill: #bbbb00">0</text>
<text x="40" y="48"></text>
<text x="264" y="48">6</text>
<text x="272" y="48">5</text>
<text x="288" y="48">6</text>
<text x="296" y="48">c</text>
<text x="312" y="48">7</text>
<text x="320" y="48">3</text>
<text x="336" y="48">7</text>
<text x="344" y="48">4</text>
<text x="424" y="48"></text>
<text x="504" y="48">e</text>
<text x="512" y="48">l</text>
<text x="520" y="48">s</text>
<text x="528" y="48">t</text>
<text x="560" y="48"></text>
<text x="584" y="48" style="fill: #5555ff">t</text>
<text x="592" y="48" style="fill: #5555ff">y</text>
<text x="600" y="48" style="fill: #5555ff">p</text>
<text x="608" y="48" style="fill: #5555ff">e</text>
<text x="616" y="48">:</text>
<text x="632" y="48" style="fill: #00bb00">&#34;</text>
<text x="640" y="48" style="fill: #00bb00">e</text>
<text x="648" y="48" style="fill: #00bb00">l</text>
<text x="656" y="48" style="fill: #00bb00">s</text>
<text x="664" y="48" style="fill: #00bb00">t</text>
<text x="672" y="48" style="fill: #00bb00">&#34;</text>
<text x="688" y="48">(</text>
<text x="696" y="48">A</text>
<text x="704" y="48">n</text>
<text x="720" y="48">e</text>
<text x="728" y="48">d</text>
<text x="736" y="48">i</text>
<text x="744" y="48">t</text>
<text x="760" y="48">l</text>
<text x="768" y="48">i</text>
<text x="776" y="48">s</text>
<text x="784" y="48">t</text>
<text x="792" y="48">)</text>
<text x="808" y="48">0</text>
<text x="816" y="48">x</text>
<text x="824" y="48">d</text>
<text x="832" y="48">6</text>
<text x="840" y="48">9</text>
<text x="848" y="48">-</text>
<text x="856" y="48">0</text>
<text x="864" y="48">x</text>
<text x="872" y="48">d</text>
<text x="880" y="48">6</text>
<text x="888" y="48">c</text>
<text x="896" y="48">.</text>
<text x="904" y="48">7</text>
<text x="920" y="48">(</text>
<text x="928" y="48">4</text>
<text x="936" y="48">)</text>
<text x="0" y="64" style="fill: #bbbb00">0</text>
<text x="8" y="64" style="fill: #bbbb00">x</text>
<text x="16" y="64" style="fill: #bbbb00">d</text>
<text x="24" y="64" style="fill: #bbbb00">6</text>
<text x="32" y="64" style="fill: #bbbb00">0</text>
<text x="40" y="64"></text>
<text x="360" y="64" style="fill: #555555">0</text>
<text x="368" y="64" style="fill: #555555">0</text>
<text x="424" y="64"></text>
<text x="536" y="64" style="fill: #555555">.</text>
<text x="560" y="64"></text>
<text x="584" y="64" style="fill: #5555ff">v</text>
<text x="592" y="64" style="fill: #5555ff">e</text>
<text x="600" y="64" style="fill: #5555ff">r</text>
<text x="608" y="64" style="fill: #5555ff">s</text>
<text x="616" y="64" style="fill: #5555ff">i</text>
<text x="624" y="64" style="fill: #5555ff">o</text>
<text x="632" y="64" style="fill: #5555ff">n</text>
<text x="640" y="64">:</text>
<text x="656" y="64" style="fill: #00bbbb">0</text>
<text x="672" y="64">0</text>
<text x="680" y="64">x</text>
<text x="688" y="64">d</text>
<text x="696" y="64">6</text>
<text x="704" y="64">d</text>
<text x="712" y="64">-</text>
<text x="720" y="64">0</text>
<text x="728" y="64">x</text>
<text x="736" y="64">d</text>
<text x="744" y="64">6</text>
<text x="752" y="64">d</text>
<text x="760" y="64">.</text>
<text x="768" y="64">7</text>
<text x="784" y="64">(</text>
<text x="792" y="64">1</text>
<text x="800" y="64">)</text>
<text x="0" y="80" style="fill: #bbbb00">0</text>
<text x="8" y="80" style="fill: #bbbb00">x</text>
<text x="16" y="80" style="fill: #bbbb00">d</text>
<text x="24" y="80" style="fill: #bbbb00">6</text>
<text x="32" y="80" style="fill: #bbbb00">0</text>
<text x="40" y="80"></text>
<text x="384" y="80" style="fill: #555555">0</text>
<text x="392" y="80" style="fill: #555555">0</text>
<text x="408" y="80" style="fill: #555555">0</text>
<text x="416" y="80" style="fill: #555555">0</text>
<text x="424" y="80"></text>
<text x="544" y="80" style="fill: #555555">.</text>
<text x="552" y="80" style="fill: #555555">.</text>
<text x="560" y="80"></text>
<text x="584" y="80" style="fill: #5555ff">f</text>
<text x="592" y="80" style="fill: #5555ff">l</text>
<text x="600" y="80" style="fill: #5555ff">a</text>
<text x="608" y="80" style="fill: #5555ff">g</text>
<text x="616" y="80" style="fill: #5555ff">s</text>
<text x="624" y="80">:</text>
<text x="640" y="80" style="fill: #00bbbb">0</text>
<text x="656" y="80">0</text>
<text x="664" y="80">x</text>
<text x="672" y="80">d</text>
<text x="680" y="80">6</text>
<text x="688" y="80">e</text>
<text x="696" y="80">-</text>
<text x="704" y="80">0</text>
<text x="712" y="80">x</text>
<text x="720" y="80">d</text>
<text x="728" y="80">7</text>
<text x="736" y="80">0</text>
<text x="744" y="80">.</text>
<text x="752" y="80">7</text>
<text x="768" y="80">(</text>
<text x="776" y="80">3</text>
<text x="784" y="80">)</text>
<text x="0" y="96" style="fill: #bbbb00">0</text>
<text x="8" y="96" style="fill: #bbbb00">x</text>
<text x="16" y="96" style="fill: #bbbb00">d</text>
<text x="24" y="96" style="fill: #bbbb00">7</text>
<text x="32" y="96" style="fill: #bbbb00">0</text>
<text x="40" y="96"></text>
<text x="48" y="96" style="fill: #555555">0</text>
<text x="56" y="96" style="fill: #555555">0</text>
<text x="424" y="96"></text>
<text x="432" y="96" style="fill: #555555">.</text>
<text x="560" y="96"></text>
<text x="0" y="112" style="fill: #bbbb00">0</text>
<text x="8" y="112" style="fill: #bbbb00">x</text>
<text x="16" y="112" style="fill: #bbbb00">d</text>
<text x="24" y="112" style="fill: #bbbb00">7</text>
<text x="32" y="112" style="fill: #bbbb00">0</text>
<text x="40" y="112"></text>
<text x="72" y="112" style="fill: #555555">0</text>
<text x="80" y="112" style="fill: #555555">0</text>
<text x="96" y="112" style="fill: #555555">0</text>
<text x="104" y="112" style="fill: #555555">0</text>
<text x="120" y="112" style="fill: #555555">0</text>
<text x="128" y="112" style="fill: #555555">0</text>
<text x="144" y="112" style="fill: #ffffff">0</text>
<text x="152" y="112" style="fill: #ffffff">1</text>
<text x="424" y="112"></text>
<text x="440" y="112" style="fill: #555555">.</text>
<text x="448" y="112" style="fill: #555555">.</text>
<text x="456" y="112" style="fill: #555555">.</text>
<text x="464" y="112" style="fill: #ffffff">.</text>
<text x="560" y="112"></text>
<text x="584" y="112" style="fill: #5555ff">e</text>
<text x="592" y="112" style="fill: #5555ff">n</text>
<text x="600" y="112" style="fill: #5555ff">t</text>
<text x="608" y="112" style="fill: #5555ff">r</text>
<text x="616" y="112" style="fill: #5555ff">y</text>
<text x="624" y="112" style="fill: #5555ff">_</text>
<text x="632" y="112" style="fill: #5555ff">c</text>
<text x="640" y="112" style="fill: #5555ff">o</text>
<text x="648" y="112" style="fill: #5555ff">u</text>
<text x="656" y="112" style="fill: #5555ff">n</text>
<text x="664" y="112" style="fill: #5555ff">t</text>
<text x="672" y="112">:</text>
<text x="688" y="112" style="fill: #00bbbb">1</text>
<text x="704" y="112">0</text>
<text x="712" y="112">x</text>
<text x="720" y="112">d</text>
<text x="728" y="112">7</text>
<text x="736" y="112">1</text>
<text x="744" y="112">-</text>
<text x="752" y="112">0</text>
<text x="760" y="112">x</text>
<text x="768" y="112">d</text>
<text x="776" y="112">7</text>
<text x="784" y="112">4</text>
<text x="792" y="112">.</text>
<text x="800" y="112">7</text>
<text x="816" y="112">(</text>
<text x="824" y="112">4</text>
<text x="832" y="112">)</text>
<text x="40" y="128"></text>
<text x="424" y="128"></text>
<text x="560" y="128"></text>
<text x="584" y="128" style="fill: #5555ff">e</text>
<text x="592" y="128" style="fill: #5555ff">n</text>
<text x="600" y="128" style="fill: #5555ff">t</text>
<text x="608" y="128" style="fill: #5555ff">r</text>
<text x="616" y="128" style="fill: #5555ff">i</text>
<text x="624" y="128" style="fill: #5555ff">e</text>
<text x="632" y="128" style="fill: #5555ff">s</text>
<text x="640" y="128">[</text>
<text x="648" y="128" style="fill: #00bbbb">0</text>
<text x="656" y="128">:</text>
<text x="664" y="128" style="fill: #00bbbb">1</text>
<text x="672" y="128">]</text>
<text x="680" y="128">:</text>
<text x="696" y="128">0</text>
<text x="704" y="128">x</text>
<text x="712" y="128">d</text>
<text x="720" y="128">7</text>
<text x="728" y="128">5</text>
<text x="736" y="128">-</text>
<text x="744" y="128">0</text>
<text x="752" y="128">x</text>
<text x="760" y="128">d</text>
<text x="768" y="128">8</text>
<text x="776" y="128">0</text>
<text x="784" y="128">.</text>
<text x="792" y="128">7</text>
<text x="808" y="128">(</text>
<text x="816" y="128">1</text>
<text x="824" y="128">2</text>
<text x="832" y="128">)</text>
<text x="40" y="144"></text>
<text x="424" y="144"></text>
<text x="560" y="144"></text>
<text x="600" y="144">[</text>
<text x="608" y="144" style="fill: #00bbbb">0</text>
<text x="616" y="144">]</text>
<text x="624" y="144">{</text>
<text x="632" y="144">}</text>
<text x="640" y="144">:</text>
<text x="656" y="144">e</text>
<text x="664" y="144">n</text>
<text x="672" y="144">t</text>
<text x="680" y="144">r</text>
<text x="688" y="144">y</text>
<text x="704" y="144">0</text>
<text x="712" y="144">x</text>
<text x="720" y="144">d</text>
<text x="728" y="144">7</text>
<text x="736" y="144">5</text>
<text x="744" y="144">-</text>
<text x="752" y="144">0</text>
<text x="760" y="144">x</text>
<text x="768" y="144">d</text>
<text x="776" y="144">8</text>
<text x="784" y="144">0</text>
<text x="792" y="144">.</text>
<text x="800" y="144">7</text>
<text x="816" y="144">(</text>
<text x="824" y="144">1</text>
<text x="832" y="144">2</text>
<text x="840" y="144">)</text>
<text x="0" y="160" style="fill: #bbbb00">0</text>
<text x="8" y="160" style="fill: #bbbb00">x</text>
<text x="16" y="160" style="fill: #bbbb00">d</text>
<text x="24" y="160" style="fill: #bbbb00">7</text>
<text x="32" y="160" style="fill: #bbbb00">0</text>
<text x="40" y="160"></text>
<text x="168" y="160" style="fill: #555555">0</text>
<text x="176" y="160" style="fill: #555555">0</text>
<text x="192" y="160" style="fill: #555555">0</text>
<text x="200" y="160" style="fill: #555555">0</text>
<text x="216" y="160" style="fill: #555555">0</text>
<text x="224" y="160" style="fill: #555555">0</text>
<text x="240" y="160">2</text>
<text x="248" y="160">8</text>
<text x="424" y="160"></text>
<text x="472" y="160" style="fill: #555555">.</text>
<text x="480" y="160" style="fill: #555555">.</text>
<text x="488" y="160" style="fill: #555555">.</text>
<text x="496" y="160">(</text>
<text x="560" y="160"></text>
<text x="616" y="160" style="fill: #5555ff">s</text>
<text x="624" y="160" style="fill: #5555ff">e</text>
<text x="632" y="160" style="fill: #5555ff">g</text>
<text x="640" y="160" style="fill: #5555ff">m</text>
<text x="648" y="160" style="fill: #5555ff">e</text>
<text x="656" y="160" style="fill: #5555ff">n</text>
<text x="664" y="160" style="fill: #5555ff">t</text>
<text x="672" y="160" style="fill: #5555ff">_</text>
<text x="680" y="160" style="fill: #5555ff">d</text>
<text x="688" y="160" style="fill: #5555ff">u</text>
<text x="696" y="160" style="fill: #5555ff">r</text>
<text x="704" y="160" style="fill: #5555ff">a</text>
<text x="712" y="160" style="fill: #5555ff">t</text>
<text x="720" y="160" style="fill: #5555ff">i</text>
<text x="728" y="160" style="fill: #5555ff">o</text>
<text x="736" y="160" style="fill: #5555ff">n</text>
<text x="744" y="160">:</text>
<text x="760" y="160" style="fill: #00bbbb">4</text>
<text x="768" y="160" style="fill: #00bbbb">0</text>
<text x="784" y="160">0</text>
<text x="792" y="160">x</text>
<text x="800" y="160">d</text>
<text x="808" y="160">7</text>
<text x="816" y="160">5</text>
<text x="824" y="160">-</text>
<text x="832" y="160">0</text>
<text x="840" y="160">x</text>
<text x="848" y="160">d</text>
<text x="856" y="160">7</text>
<text x="864" y="160">8</text>
<text x="872" y="160">.</text>
<text x="880" y="160">7</text>
<text x="896" y="160">(</text>
<text x="904" y="160">4</text>
<text x="912" y="160">)</text>
<text x="0" y="176" style="fill: #bbbb00">0</text>
<text x="8" y="176" style="fill: #bbbb00">x</text>
<text x="16" y="176" style="fill: #bbbb00">d</text>
<text x="24" y="176" style="fill: #bbbb00">7</text>
<text x="32" y="176" style="fill: #bbbb00">0</text>
<text x="40" y="176"></text>
<text x="264" y="176" style="fill: #555555">0</text>
<text x="272" y="176" style="fill: #555555">0</text>
<text x="288" y="176" style="fill: #555555">0</text>
<text x="296" y="176" style="fill: #555555">0</text>
<text x="312" y="176" style="fill: #555555">0</text>
<text x="320" y="176" style="fill: #555555">0</text>
<text x="336" y="176" style="fill: #555555">0</text>
<text x="344" y="176" style="fill: #555555">0</text>
<text x="424" y="176"></text>
<text x="504" y="176" style="fill: #555555">.</text>
<text x="512" y="176" style="fill: #555555">.</text>
<text x="520" y="176" style="fill: #555555">.</text>
<text x="528" y="176" style="fill: #555555">.</text>
<text x="560" y="176"></text>
<text x="616" y="176" style="fill: #5555ff">m</text>
<text x="624" y="176" style="fill: #5555ff">e</text>
<text x="632" y="176" style="fill: #5555ff">d</text>
<text x="640" y="176" style="fill: #5555ff">i</text>
<text x="648" y="176" style="fill: #5555ff">a</text>
<text x="656" y="176" style="fill: #5555ff">_</text>
<text x="664" y="176" style="fill: #5555ff">t</text>
<text x="672" y="176" style="fill: #5555ff">i</text>
<text x="680" y="176" style="fill: #5555ff">m</text>
<text x="688" y="176" style="fill: #5555ff">e</text>
<text x="696" y="176">:</text>
<text x="712" y="176" style="fill: #00bbbb">0</text>
<text x="728" y="176">0</text>
<text x="736" y="176">x</text>
<text x="744" y="176">d</text>
<text x="752" y="176">7</text>
<text x="760" y="176">9</text>
<text x="768" y="176">-</text>
<text x="776" y="176">0</text>
<text x="784" y="176">x</text>
<text x="792" y="176">d</text>
<text x="800" y="176">7</text>
<text x="808" y="176">c</text>
<text x="816" y="176">.</text>
<text x="824" y="176">7</text>
<text x="840" y="176">(</text>
<text x="848" y="176">4</text>
<text x="856" y="176">)</text>
<text x="0" y="192" style="fill: #bbbb00">0</text>
<text x="8" y="192" style="fill: #bbbb00">x</text>
<text x="16" y="192" style="fill: #bbbb00">d</text>
<text x="24" y="192" style="fill: #bbbb00">7</text>
<text x="32" y="192" style="fill: #bbbb00">0</text>
<text x="40" y="192"></text>
<text x="360" y="192" style="fill: #555555">0</text>
<text x="368" y="192" style="fill: #555555">0</text>
<text x="384" y="192" style="fill: #ffffff">0</text>
<text x="392" y="192" style="fill: #ffffff">1</text>
<text x="408" y="192" style="fill: #555555">0</text>
<text x="416" y="192" style="fill: #555555">0</text>
<text x="424" y="192"></text>
<text x="536" y="192" style="fill: #555555">.</text>
<text x="544" y="192" style="fill: #ffffff">.</text>
<text x="552" y="192" style="fill: #555555">.</text>
<text x="560" y="192"></text>
<text x="616" y="192" style="fill: #5555ff">m</text>
<text x="624" y="192" style="fill: #5555ff">e</text>
<text x="632" y="192" style="fill: #5555ff">d</text>
<text x="640" y="192" style="fill: #5555ff">i</text>
<text x="648" y="192" style="fill: #5555ff">a</text>
<text x="656" y="192" style="fill: #5555ff">_</text>
<text x="664" y="192" style="fill: #5555ff">r</text>
<text x="672" y="192" style="fill: #5555ff">a</text>
<text x="680" y="192" style="fill: #5555ff">t</text>
<text x="688" y="192" style="fill: #5555ff">e</text>
<text x="696" y="192">:</text>
<text x="712" y="192" style="fill: #00bbbb">1</text>
<text x="728" y="192">0</text>
<text x="736" y="192">x</text>
<text x="744" y="192">d</text>
<text x="752" y="192">7</text>
<text x="760" y="192">d</text>
<text x="768" y="192">-</text>
<text x="776" y="192">0</text>
<text x="784" y="192">x</text>
<text x="792" y="192">d</text>
<text x="800" y="192">8</text>
<text x="808" y="192">0</text>
<text x="816" y="192">.</text>
<text x="824" y="192">7</text>
<text x="840" y="192">(</text>
<text x="848" y="192">4</text>
<text x="856" y="192">)</text>
<text x="0" y="208" style="fill: #bbbb00">0</text>
<text x="8" y="208" style="fill: #bbbb00">x</text>
<text x="16" y="208" style="fill: #bbbb00">d</text>
<text x="24" y="208" style="fill: #bbbb00">8</text>
<text x="32" y="208" style="fill: #bbbb00">0</text>
<text x="40" y="208"></text>
<text x="48" y="208" style="fill: #555555">0</text>
<text x="56" y="208" style="fill: #555555">0</text>
<text x="424" y="208"></text>
<text x="432" y="208" style="fill: #555555">.</text>
<text x="560" y="208"></text>
<text x="0ch" y="0.5em"><tspan>$ fq &#39;first(grep_by(.type == &#34;elst&#34;)) | dv&#39; file.mp4</tspan></text>
<text x="0ch" y="1.5em"><tspan></tspan><tspan class="underline fa3">00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f</tspan><tspan></tspan><tspan class="underline fa3">0123456789abcdef</tspan><tspan>│.</tspan><tspan class="fa12">boxes</tspan><tspan>[</tspan><tspan class="fa6">3</tspan><tspan>].</tspan><tspan class="fa12">boxes</tspan><tspan>[</tspan><tspan class="fa6">1</tspan><tspan>].</tspan><tspan class="fa12">boxes</tspan><tspan>[</tspan><tspan class="fa6">1</tspan><tspan>].</tspan><tspan class="fa12">boxes</tspan><tspan>[</tspan><tspan class="fa6">0</tspan><tspan>]{}: box 0xd65-0xd81 (28)</tspan></text>
<text x="0ch" y="2.5em"><tspan class="fa3">0xd60</tspan><tspan></tspan><tspan class="fa8">00 00 00 </tspan><tspan class="bold">1c </tspan><tspan></tspan><tspan class="fa8">...</tspan><tspan class="bold">. </tspan><tspan></tspan><tspan class="fa12">size</tspan><tspan>: </tspan><tspan class="fa6">28 </tspan><tspan>0xd65-0xd69 (4)</tspan></text>
<text x="0ch" y="3.5em"><tspan class="fa3">0xd60</tspan><tspan>│ 65 6c 73 74 │ elst │ </tspan><tspan class="fa12">type</tspan><tspan>: </tspan><tspan class="fa2">&#34;elst&#34; </tspan><tspan>(An edit list) 0xd69-0xd6d (4)</tspan></text>
<text x="0ch" y="4.5em"><tspan class="fa3">0xd60</tspan><tspan></tspan><tspan class="fa8">00 </tspan><tspan></tspan><tspan class="fa8">. </tspan><tspan></tspan><tspan class="fa12">version</tspan><tspan>: </tspan><tspan class="fa6">0 </tspan><tspan>0xd6d-0xd6e (1)</tspan></text>
<text x="0ch" y="5.5em"><tspan class="fa3">0xd60</tspan><tspan></tspan><tspan class="fa8">00 00</tspan><tspan></tspan><tspan class="fa8">..</tspan><tspan></tspan><tspan class="fa12">flags</tspan><tspan>: </tspan><tspan class="fa6">0 </tspan><tspan>0xd6e-0xd71 (3)</tspan></text>
<text x="0ch" y="6.5em"><tspan class="fa3">0xd70</tspan><tspan></tspan><tspan class="fa8">00 </tspan><tspan></tspan><tspan class="fa8">. </tspan><tspan></tspan></text>
<text x="0ch" y="7.5em"><tspan class="fa3">0xd70</tspan><tspan></tspan><tspan class="fa8">00 00 00 </tspan><tspan class="bold">01 </tspan><tspan></tspan><tspan class="fa8">...</tspan><tspan class="bold">. </tspan><tspan></tspan><tspan class="fa12">entry_count</tspan><tspan>: </tspan><tspan class="fa6">1 </tspan><tspan>0xd71-0xd75 (4)</tspan></text>
<text x="0ch" y="8.5em"><tspan> │ │ │ </tspan><tspan class="fa12">entries</tspan><tspan>[</tspan><tspan class="fa6">0</tspan><tspan>:</tspan><tspan class="fa6">1</tspan><tspan>]: 0xd75-0xd81 (12)</tspan></text>
<text x="0ch" y="9.5em"><tspan> │ │ │ [</tspan><tspan class="fa6">0</tspan><tspan>]{}: entry 0xd75-0xd81 (12)</tspan></text>
<text x="0ch" y="10.5em"><tspan class="fa3">0xd70</tspan><tspan></tspan><tspan class="fa8">00 00 00 </tspan><tspan>28 │ </tspan><tspan class="fa8">...</tspan><tspan>( │ </tspan><tspan class="fa12">segment_duration</tspan><tspan>: </tspan><tspan class="fa6">40 </tspan><tspan>0xd75-0xd79 (4)</tspan></text>
<text x="0ch" y="11.5em"><tspan class="fa3">0xd70</tspan><tspan></tspan><tspan class="fa8">00 00 00 00 </tspan><tspan></tspan><tspan class="fa8">.... </tspan><tspan></tspan><tspan class="fa12">media_time</tspan><tspan>: </tspan><tspan class="fa6">0 </tspan><tspan>0xd79-0xd7d (4)</tspan></text>
<text x="0ch" y="12.5em"><tspan class="fa3">0xd70</tspan><tspan></tspan><tspan class="fa8">00 </tspan><tspan class="bold">01 </tspan><tspan class="fa8">00</tspan><tspan></tspan><tspan class="fa8">.</tspan><tspan class="bold">.</tspan><tspan class="fa8">.</tspan><tspan></tspan><tspan class="fa12">media_rate</tspan><tspan>: </tspan><tspan class="fa6">1 </tspan><tspan>0xd7d-0xd81 (4)</tspan></text>
<text x="0ch" y="13.5em"><tspan class="fa3">0xd80</tspan><tspan></tspan><tspan class="fa8">00 </tspan><tspan></tspan><tspan class="fa8">. </tspan><tspan></tspan></text>
</svg>

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 5.4 KiB

View File

@ -0,0 +1,45 @@
<svg width="133ch" height="16em" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve">
<style>
* {
font-family: Courier, monospace;
font-size: 14px;
}
tspan, text {
font-variant-ligatures: none;
dominant-baseline: central;
white-space: pre;
fill: #bbbbbb;
}
.bg {
stroke-width: "0.5px";
}
.bold {
font-weight: bold;
}
.underline {
text-decoration: underline;
}
<!-- Foreground ANSI colors -->
.fa2 { fill: #00bb00; }
.fa3 { fill: #bbbb00; }
.fa6 { fill: #00bbbb; }
.fa12 { fill: #5555ff; }
</style>
<rect width="100%" height="100%" x="0" y="0" style="fill: #000000"/>
<text x="0ch" y="0.5em"><tspan>$ fq &#39;.frames[1].header | dv&#39; file.mp3</tspan></text>
<text x="0ch" y="1.5em"><tspan></tspan><tspan class="underline fa3">00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f</tspan><tspan></tspan><tspan class="underline fa3">0123456789abcdef</tspan><tspan>│.</tspan><tspan class="fa12">frames</tspan><tspan>[</tspan><tspan class="fa6">1</tspan><tspan>].</tspan><tspan class="fa12">header</tspan><tspan>{}: 0xb79-0xb7d (4)</tspan></text>
<text x="0ch" y="2.5em"><tspan class="fa3">0xb70</tspan><tspan></tspan><tspan class="bold">ff fb </tspan><tspan></tspan><tspan class="bold">.. </tspan><tspan></tspan><tspan class="fa12">sync</tspan><tspan>: </tspan><tspan class="fa6">0b11111111111 </tspan><tspan>(valid) 0xb79-0xb7a.3 (1.3)</tspan></text>
<text x="0ch" y="3.5em"><tspan class="fa3">0xb70</tspan><tspan></tspan><tspan class="bold">fb </tspan><tspan></tspan><tspan class="bold">. </tspan><tspan></tspan><tspan class="fa12">mpeg_version</tspan><tspan>: </tspan><tspan class="fa2">&#34;1&#34; </tspan><tspan>(</tspan><tspan class="fa6">3</tspan><tspan>) (MPEG Version 1) 0xb7a.3-0xb7a.5 (0.2)</tspan></text>
<text x="0ch" y="4.5em"><tspan class="fa3">0xb70</tspan><tspan></tspan><tspan class="bold">fb </tspan><tspan></tspan><tspan class="bold">. </tspan><tspan></tspan><tspan class="fa12">layer</tspan><tspan>: </tspan><tspan class="fa6">3 </tspan><tspan>(</tspan><tspan class="fa6">1</tspan><tspan>) (MPEG Layer 3) 0xb7a.5-0xb7a.7 (0.2)</tspan></text>
<text x="0ch" y="5.5em"><tspan> │ │ │ </tspan><tspan class="fa12">sample_count</tspan><tspan>: </tspan><tspan class="fa6">1152</tspan></text>
<text x="0ch" y="6.5em"><tspan class="fa3">0xb70</tspan><tspan></tspan><tspan class="bold">fb </tspan><tspan></tspan><tspan class="bold">. </tspan><tspan></tspan><tspan class="fa12">protection_absent</tspan><tspan>: </tspan><tspan class="fa3">true </tspan><tspan>(No CRC) 0xb7a.7-0xb7b (0.1)</tspan></text>
<text x="0ch" y="7.5em"><tspan class="fa3">0xb70</tspan><tspan>│ 50 │ P │ </tspan><tspan class="fa12">bitrate</tspan><tspan>: </tspan><tspan class="fa6">64000 </tspan><tspan>(</tspan><tspan class="fa6">5</tspan><tspan>) 0xb7b-0xb7b.4 (0.4)</tspan></text>
<text x="0ch" y="8.5em"><tspan class="fa3">0xb70</tspan><tspan>│ 50 │ P │ </tspan><tspan class="fa12">sample_rate</tspan><tspan>: </tspan><tspan class="fa6">44100 </tspan><tspan>(</tspan><tspan class="fa6">0</tspan><tspan>) 0xb7b.4-0xb7b.6 (0.2)</tspan></text>
<text x="0ch" y="9.5em"><tspan class="fa3">0xb70</tspan><tspan>│ 50 │ P │ </tspan><tspan class="fa12">padding</tspan><tspan>: </tspan><tspan class="fa2">&#34;not_padded&#34; </tspan><tspan>(</tspan><tspan class="fa6">0b0</tspan><tspan>) 0xb7b.6-0xb7b.7 (0.1)</tspan></text>
<text x="0ch" y="10.5em"><tspan class="fa3">0xb70</tspan><tspan>│ 50 │ P │ </tspan><tspan class="fa12">private</tspan><tspan>: </tspan><tspan class="fa6">0 </tspan><tspan>0xb7b.7-0xb7c (0.1)</tspan></text>
<text x="0ch" y="11.5em"><tspan class="fa3">0xb70</tspan><tspan></tspan><tspan class="bold">c4 </tspan><tspan></tspan><tspan class="bold">. </tspan><tspan></tspan><tspan class="fa12">channels</tspan><tspan>: </tspan><tspan class="fa2">&#34;mono&#34; </tspan><tspan>(</tspan><tspan class="fa6">0b11</tspan><tspan>) 0xb7c-0xb7c.2 (0.2)</tspan></text>
<text x="0ch" y="12.5em"><tspan class="fa3">0xb70</tspan><tspan></tspan><tspan class="bold">c4 </tspan><tspan></tspan><tspan class="bold">. </tspan><tspan></tspan><tspan class="fa12">channel_mode</tspan><tspan>: </tspan><tspan class="fa2">&#34;none&#34; </tspan><tspan>(</tspan><tspan class="fa6">0b0</tspan><tspan>) 0xb7c.2-0xb7c.4 (0.2)</tspan></text>
<text x="0ch" y="13.5em"><tspan class="fa3">0xb70</tspan><tspan></tspan><tspan class="bold">c4 </tspan><tspan></tspan><tspan class="bold">. </tspan><tspan></tspan><tspan class="fa12">copyright</tspan><tspan>: </tspan><tspan class="fa6">0 </tspan><tspan>0xb7c.4-0xb7c.5 (0.1)</tspan></text>
<text x="0ch" y="14.5em"><tspan class="fa3">0xb70</tspan><tspan></tspan><tspan class="bold">c4 </tspan><tspan></tspan><tspan class="bold">. </tspan><tspan></tspan><tspan class="fa12">original</tspan><tspan>: </tspan><tspan class="fa6">1 </tspan><tspan>0xb7c.5-0xb7c.6 (0.1)</tspan></text>
<text x="0ch" y="15.5em"><tspan class="fa3">0xb70</tspan><tspan></tspan><tspan class="bold">c4 </tspan><tspan></tspan><tspan class="bold">. </tspan><tspan></tspan><tspan class="fa12">emphasis</tspan><tspan>: </tspan><tspan class="fa2">&#34;none&#34; </tspan><tspan>(</tspan><tspan class="fa6">0b0</tspan><tspan>) 0xb7c.6-0xb7d (0.2)</tspan></text>
</svg>

After

Width:  |  Height:  |  Size: 6.2 KiB

View File

@ -0,0 +1,10 @@
#!/bin/bash
FQ="$1"
s() {
echo "\$ $1"
sh -c "${1/fq/$FQ -o unicode=true -C}"
}
s "fq '.frames[1].header | dv' file.mp3"

View File

@ -1,57 +1,24 @@
<svg viewBox="0 0 168 80" width="168" height="80" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<svg width="21ch" height="5em" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve">
<style>
rect { shape-rendering: crispEdges; }
text {
dominant-baseline: text-before-edge;
* {
font-family: Courier, monospace;
font-size: 14px;
}
tspan, text {
font-variant-ligatures: none;
dominant-baseline: central;
white-space: pre;
font: 14px Courier, monospace;
fill: #bbbbbb;
}
.u { text-decoration: underline; }
.bg {
stroke-width: "0.5px";
}
<!-- Foreground ANSI colors -->
.fa2 { fill: #00bb00; }
</style>
<rect width="100%" height="100%" x="0" y="0" style="fill: #000000"/>
<text x="0" y="0">$</text>
<text x="16" y="0">f</text>
<text x="24" y="0">q</text>
<text x="40" y="0">-</text>
<text x="48" y="0">n</text>
<text x="64" y="0">&#39;</text>
<text x="72" y="0">&#34;</text>
<text x="80" y="0">h</text>
<text x="88" y="0">e</text>
<text x="96" y="0">l</text>
<text x="104" y="0">l</text>
<text x="112" y="0">o</text>
<text x="120" y="0">&#34;</text>
<text x="128" y="0">&#39;</text>
<text x="0" y="16" style="fill: #00bb00">&#34;</text>
<text x="8" y="16" style="fill: #00bb00">h</text>
<text x="16" y="16" style="fill: #00bb00">e</text>
<text x="24" y="16" style="fill: #00bb00">l</text>
<text x="32" y="16" style="fill: #00bb00">l</text>
<text x="40" y="16" style="fill: #00bb00">o</text>
<text x="48" y="16" style="fill: #00bb00">&#34;</text>
<text x="0" y="48">$</text>
<text x="16" y="48">f</text>
<text x="24" y="48">q</text>
<text x="40" y="48">-</text>
<text x="48" y="48">n</text>
<text x="64" y="48">&#39;</text>
<text x="72" y="48">&#34;</text>
<text x="80" y="48">h</text>
<text x="88" y="48">e</text>
<text x="96" y="48">l</text>
<text x="104" y="48">l</text>
<text x="112" y="48">o</text>
<text x="120" y="48">&#34;</text>
<text x="136" y="48">|</text>
<text x="152" y="48">d</text>
<text x="160" y="48">&#39;</text>
<text x="0" y="64" style="fill: #00bb00">&#34;</text>
<text x="8" y="64" style="fill: #00bb00">h</text>
<text x="16" y="64" style="fill: #00bb00">e</text>
<text x="24" y="64" style="fill: #00bb00">l</text>
<text x="32" y="64" style="fill: #00bb00">l</text>
<text x="40" y="64" style="fill: #00bb00">o</text>
<text x="48" y="64" style="fill: #00bb00">&#34;</text>
<text x="0ch" y="0.5em"><tspan>$ fq -n &#39;&#34;hello&#34;&#39;</tspan></text>
<text x="0ch" y="1.5em"><tspan class="fa2">&#34;hello&#34;</tspan></text>
<text x="0ch" y="3.5em"><tspan>$ fq -n &#39;&#34;hello&#34; | d&#39;</tspan></text>
<text x="0ch" y="4.5em"><tspan class="fa2">&#34;hello&#34;</tspan></text>
</svg>

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 946 B

View File

@ -13,30 +13,27 @@ def formats_list:
] | join(",\n");
def formats_table:
( [ {
name: "Name",
desc: "Description",
uses: "Dependencies"
},
{
name: "-",
desc: "-",
uses: "-"
},
( formats
( [ { name: "Name"
, desc: "Description"
, uses: "Dependencies"
}
, { name: "-"
, desc: "-"
, uses: "-"
}
, ( formats
| to_entries[]
| (_format_func(.key; "_help")? // {}) as $fhelp
| {
name:
| { name:
( ( .key as $format
| if has_section(.value; $fhelp) then "[\($format | code)](#\($format))"
else $format | code
end
)
+ " "
),
desc: (.value.description | nbsp),
uses: "<sub>\((((.value.dependencies | flatten | map(code)) | join(" "))? // ""))</sub>"
)
, desc: (.value.description | nbsp)
, uses: "<sub>\((((.value.dependencies | flatten | map(code)) | join(" "))? // ""))</sub>"
}
),
( [ formats
@ -47,10 +44,9 @@ def formats_table:
]
| reduce .[] as $e ({}; .[$e.key] += [$e.value])
| to_entries[]
| {
name: ((.key | code) + " "),
desc: "Group",
uses: "<sub>\(((.value | map(code)) | join(" ")))</sub>"
| { name: ((.key | code) + " ")
, desc: "Group"
, uses: "<sub>\(((.value | map(code)) | join(" ")))</sub>"
}
)
]

View File

@ -2,134 +2,144 @@
[fq -rn -L . 'include "formats"; formats_table']: sh-start
|Name |Description |Dependencies|
|- |- |-|
|[`aac_frame`](#aac_frame) |Advanced&nbsp;Audio&nbsp;Coding&nbsp;frame |<sub></sub>|
|`adts` |Audio&nbsp;Data&nbsp;Transport&nbsp;Stream |<sub>`adts_frame`</sub>|
|`adts_frame` |Audio&nbsp;Data&nbsp;Transport&nbsp;Stream&nbsp;frame |<sub>`aac_frame`</sub>|
|`aiff` |Audio&nbsp;Interchange&nbsp;File&nbsp;Format |<sub></sub>|
|`amf0` |Action&nbsp;Message&nbsp;Format&nbsp;0 |<sub></sub>|
|`apev2` |APEv2&nbsp;metadata&nbsp;tag |<sub>`image`</sub>|
|[`apple_bookmark`](#apple_bookmark) |Apple&nbsp;BookmarkData |<sub></sub>|
|`ar` |Unix&nbsp;archive |<sub>`probe`</sub>|
|[`asn1_ber`](#asn1_ber) |ASN1&nbsp;BER&nbsp;(basic&nbsp;encoding&nbsp;rules,&nbsp;also&nbsp;CER&nbsp;and&nbsp;DER) |<sub></sub>|
|`av1_ccr` |AV1&nbsp;Codec&nbsp;Configuration&nbsp;Record |<sub></sub>|
|`av1_frame` |AV1&nbsp;frame |<sub>`av1_obu`</sub>|
|`av1_obu` |AV1&nbsp;Open&nbsp;Bitstream&nbsp;Unit |<sub></sub>|
|`avc_annexb` |H.264/AVC&nbsp;Annex&nbsp;B |<sub>`avc_nalu`</sub>|
|[`avc_au`](#avc_au) |H.264/AVC&nbsp;Access&nbsp;Unit |<sub>`avc_nalu`</sub>|
|`avc_dcr` |H.264/AVC&nbsp;Decoder&nbsp;Configuration&nbsp;Record |<sub>`avc_nalu`</sub>|
|`avc_nalu` |H.264/AVC&nbsp;Network&nbsp;Access&nbsp;Layer&nbsp;Unit |<sub>`avc_sps` `avc_pps` `avc_sei`</sub>|
|`avc_pps` |H.264/AVC&nbsp;Picture&nbsp;Parameter&nbsp;Set |<sub></sub>|
|`avc_sei` |H.264/AVC&nbsp;Supplemental&nbsp;Enhancement&nbsp;Information |<sub></sub>|
|`avc_sps` |H.264/AVC&nbsp;Sequence&nbsp;Parameter&nbsp;Set |<sub></sub>|
|[`avi`](#avi) |Audio&nbsp;Video&nbsp;Interleaved |<sub>`avc_au` `hevc_au` `mp3_frame` `flac_frame`</sub>|
|[`avro_ocf`](#avro_ocf) |Avro&nbsp;object&nbsp;container&nbsp;file |<sub></sub>|
|[`bencode`](#bencode) |BitTorrent&nbsp;bencoding |<sub></sub>|
|`bitcoin_blkdat` |Bitcoin&nbsp;blk.dat |<sub>`bitcoin_block`</sub>|
|[`bitcoin_block`](#bitcoin_block) |Bitcoin&nbsp;block |<sub>`bitcoin_transaction`</sub>|
|`bitcoin_script` |Bitcoin&nbsp;script |<sub></sub>|
|`bitcoin_transaction` |Bitcoin&nbsp;transaction |<sub>`bitcoin_script`</sub>|
|[`bits`](#bits) |Raw&nbsp;bits |<sub></sub>|
|[`bplist`](#bplist) |Apple&nbsp;Binary&nbsp;Property&nbsp;List |<sub></sub>|
|`bsd_loopback_frame` |BSD&nbsp;loopback&nbsp;frame |<sub>`inet_packet`</sub>|
|[`bson`](#bson) |Binary&nbsp;JSON |<sub></sub>|
|[`bytes`](#bytes) |Raw&nbsp;bytes |<sub></sub>|
|`bzip2` |bzip2&nbsp;compression |<sub>`probe`</sub>|
|[`cbor`](#cbor) |Concise&nbsp;Binary&nbsp;Object&nbsp;Representation |<sub></sub>|
|[`csv`](#csv) |Comma&nbsp;separated&nbsp;values |<sub></sub>|
|`dns` |DNS&nbsp;packet |<sub></sub>|
|`dns_tcp` |DNS&nbsp;packet&nbsp;(TCP) |<sub></sub>|
|`elf` |Executable&nbsp;and&nbsp;Linkable&nbsp;Format |<sub></sub>|
|`ether8023_frame` |Ethernet&nbsp;802.3&nbsp;frame |<sub>`inet_packet`</sub>|
|`exif` |Exchangeable&nbsp;Image&nbsp;File&nbsp;Format |<sub></sub>|
|`fairplay_spc` |FairPlay&nbsp;Server&nbsp;Playback&nbsp;Context |<sub></sub>|
|`flac` |Free&nbsp;Lossless&nbsp;Audio&nbsp;Codec&nbsp;file |<sub>`flac_metadatablocks` `flac_frame`</sub>|
|[`flac_frame`](#flac_frame) |FLAC&nbsp;frame |<sub></sub>|
|`flac_metadatablock` |FLAC&nbsp;metadatablock |<sub>`flac_streaminfo` `flac_picture` `vorbis_comment`</sub>|
|`flac_metadatablocks` |FLAC&nbsp;metadatablocks |<sub>`flac_metadatablock`</sub>|
|`flac_picture` |FLAC&nbsp;metadatablock&nbsp;picture |<sub>`image`</sub>|
|`flac_streaminfo` |FLAC&nbsp;streaminfo |<sub></sub>|
|`gif` |Graphics&nbsp;Interchange&nbsp;Format |<sub></sub>|
|`gzip` |gzip&nbsp;compression |<sub>`probe`</sub>|
|`hevc_annexb` |H.265/HEVC&nbsp;Annex&nbsp;B |<sub>`hevc_nalu`</sub>|
|[`hevc_au`](#hevc_au) |H.265/HEVC&nbsp;Access&nbsp;Unit |<sub>`hevc_nalu`</sub>|
|`hevc_dcr` |H.265/HEVC&nbsp;Decoder&nbsp;Configuration&nbsp;Record |<sub>`hevc_nalu`</sub>|
|`hevc_nalu` |H.265/HEVC&nbsp;Network&nbsp;Access&nbsp;Layer&nbsp;Unit |<sub>`hevc_vps` `hevc_pps` `hevc_sps`</sub>|
|`hevc_pps` |H.265/HEVC&nbsp;Picture&nbsp;Parameter&nbsp;Set |<sub></sub>|
|`hevc_sps` |H.265/HEVC&nbsp;Sequence&nbsp;Parameter&nbsp;Set |<sub></sub>|
|`hevc_vps` |H.265/HEVC&nbsp;Video&nbsp;Parameter&nbsp;Set |<sub></sub>|
|[`html`](#html) |HyperText&nbsp;Markup&nbsp;Language |<sub></sub>|
|`icc_profile` |International&nbsp;Color&nbsp;Consortium&nbsp;profile |<sub></sub>|
|`icmp` |Internet&nbsp;Control&nbsp;Message&nbsp;Protocol |<sub></sub>|
|`icmpv6` |Internet&nbsp;Control&nbsp;Message&nbsp;Protocol&nbsp;v6 |<sub></sub>|
|`id3v1` |ID3v1&nbsp;metadata |<sub></sub>|
|`id3v11` |ID3v1.1&nbsp;metadata |<sub></sub>|
|`id3v2` |ID3v2&nbsp;metadata |<sub>`image`</sub>|
|`ipv4_packet` |Internet&nbsp;protocol&nbsp;v4&nbsp;packet |<sub>`ip_packet`</sub>|
|`ipv6_packet` |Internet&nbsp;protocol&nbsp;v6&nbsp;packet |<sub>`ip_packet`</sub>|
|`jpeg` |Joint&nbsp;Photographic&nbsp;Experts&nbsp;Group&nbsp;file |<sub>`exif` `icc_profile`</sub>|
|`json` |JavaScript&nbsp;Object&nbsp;Notation |<sub></sub>|
|`jsonl` |JavaScript&nbsp;Object&nbsp;Notation&nbsp;Lines |<sub></sub>|
|[`macho`](#macho) |Mach-O&nbsp;macOS&nbsp;executable |<sub></sub>|
|`macho_fat` |Fat&nbsp;Mach-O&nbsp;macOS&nbsp;executable&nbsp;(multi-architecture) |<sub>`macho`</sub>|
|[`markdown`](#markdown) |Markdown |<sub></sub>|
|[`matroska`](#matroska) |Matroska&nbsp;file |<sub>`aac_frame` `av1_ccr` `av1_frame` `avc_au` `avc_dcr` `flac_frame` `flac_metadatablocks` `hevc_au` `hevc_dcr` `image` `mp3_frame` `mpeg_asc` `mpeg_pes_packet` `mpeg_spu` `opus_packet` `vorbis_packet` `vp8_frame` `vp9_cfm` `vp9_frame`</sub>|
|[`mp3`](#mp3) |MP3&nbsp;file |<sub>`id3v2` `id3v1` `id3v11` `apev2` `mp3_frame`</sub>|
|`mp3_frame` |MPEG&nbsp;audio&nbsp;layer&nbsp;3&nbsp;frame |<sub>`mp3_frame_tags`</sub>|
|`mp3_frame_vbri` |MP3&nbsp;frame&nbsp;Fraunhofer&nbsp;encoder&nbsp;variable&nbsp;bitrate&nbsp;tag |<sub></sub>|
|`mp3_frame_xing` |MP3&nbsp;frame&nbsp;Xing/Info&nbsp;tag |<sub></sub>|
|[`mp4`](#mp4) |ISOBMFF,&nbsp;QuickTime&nbsp;and&nbsp;similar |<sub>`aac_frame` `av1_ccr` `av1_frame` `avc_au` `avc_dcr` `flac_frame` `flac_metadatablocks` `hevc_au` `hevc_dcr` `icc_profile` `id3v2` `image` `jpeg` `mp3_frame` `mpeg_es` `mpeg_pes_packet` `opus_packet` `png` `prores_frame` `protobuf_widevine` `pssh_playready` `vorbis_packet` `vp9_frame` `vpx_ccr`</sub>|
|`mpeg_asc` |MPEG-4&nbsp;Audio&nbsp;Specific&nbsp;Config |<sub></sub>|
|`mpeg_es` |MPEG&nbsp;Elementary&nbsp;Stream |<sub>`mpeg_asc` `vorbis_packet`</sub>|
|`mpeg_pes` |MPEG&nbsp;Packetized&nbsp;elementary&nbsp;stream |<sub>`mpeg_pes_packet` `mpeg_spu`</sub>|
|`mpeg_pes_packet` |MPEG&nbsp;Packetized&nbsp;elementary&nbsp;stream&nbsp;packet |<sub></sub>|
|`mpeg_spu` |Sub&nbsp;Picture&nbsp;Unit&nbsp;(DVD&nbsp;subtitle) |<sub></sub>|
|`mpeg_ts` |MPEG&nbsp;Transport&nbsp;Stream |<sub></sub>|
|[`msgpack`](#msgpack) |MessagePack |<sub></sub>|
|`ogg` |OGG&nbsp;file |<sub>`ogg_page` `vorbis_packet` `opus_packet` `flac_metadatablock` `flac_frame`</sub>|
|`ogg_page` |OGG&nbsp;page |<sub></sub>|
|`opus_packet` |Opus&nbsp;packet |<sub>`vorbis_comment`</sub>|
|[`pcap`](#pcap) |PCAP&nbsp;packet&nbsp;capture |<sub>`link_frame` `tcp_stream` `ipv4_packet`</sub>|
|`pcapng` |PCAPNG&nbsp;packet&nbsp;capture |<sub>`link_frame` `tcp_stream` `ipv4_packet`</sub>|
|[`pg_btree`](#pg_btree) |PostgreSQL&nbsp;btree&nbsp;index&nbsp;file |<sub></sub>|
|[`pg_control`](#pg_control) |PostgreSQL&nbsp;control&nbsp;file |<sub></sub>|
|[`pg_heap`](#pg_heap) |PostgreSQL&nbsp;heap&nbsp;file |<sub></sub>|
|`png` |Portable&nbsp;Network&nbsp;Graphics&nbsp;file |<sub>`icc_profile` `exif`</sub>|
|`prores_frame` |Apple&nbsp;ProRes&nbsp;frame |<sub></sub>|
|[`protobuf`](#protobuf) |Protobuf |<sub></sub>|
|`protobuf_widevine` |Widevine&nbsp;protobuf |<sub>`protobuf`</sub>|
|`pssh_playready` |PlayReady&nbsp;PSSH |<sub></sub>|
|[`rtmp`](#rtmp) |Real-Time&nbsp;Messaging&nbsp;Protocol |<sub>`amf0` `mpeg_asc`</sub>|
|`sll2_packet` |Linux&nbsp;cooked&nbsp;capture&nbsp;encapsulation&nbsp;v2 |<sub>`inet_packet`</sub>|
|`sll_packet` |Linux&nbsp;cooked&nbsp;capture&nbsp;encapsulation |<sub>`inet_packet`</sub>|
|`tar` |Tar&nbsp;archive |<sub>`probe`</sub>|
|`tcp_segment` |Transmission&nbsp;control&nbsp;protocol&nbsp;segment |<sub></sub>|
|`tiff` |Tag&nbsp;Image&nbsp;File&nbsp;Format |<sub>`icc_profile`</sub>|
|[`tls`](#tls) |Transport&nbsp;layer&nbsp;security |<sub>`asn1_ber`</sub>|
|`toml` |Tom's&nbsp;Obvious,&nbsp;Minimal&nbsp;Language |<sub></sub>|
|[`tzif`](#tzif) |Time&nbsp;Zone&nbsp;Information&nbsp;Format |<sub></sub>|
|`udp_datagram` |User&nbsp;datagram&nbsp;protocol |<sub>`udp_payload`</sub>|
|`vorbis_comment` |Vorbis&nbsp;comment |<sub>`flac_picture`</sub>|
|`vorbis_packet` |Vorbis&nbsp;packet |<sub>`vorbis_comment`</sub>|
|`vp8_frame` |VP8&nbsp;frame |<sub></sub>|
|`vp9_cfm` |VP9&nbsp;Codec&nbsp;Feature&nbsp;Metadata |<sub></sub>|
|`vp9_frame` |VP9&nbsp;frame |<sub></sub>|
|`vpx_ccr` |VPX&nbsp;Codec&nbsp;Configuration&nbsp;Record |<sub></sub>|
|[`wasm`](#wasm) |WebAssembly&nbsp;Binary&nbsp;Format |<sub></sub>|
|`wav` |WAV&nbsp;file |<sub>`id3v2` `id3v1` `id3v11`</sub>|
|`webp` |WebP&nbsp;image |<sub>`vp8_frame`</sub>|
|[`xml`](#xml) |Extensible&nbsp;Markup&nbsp;Language |<sub></sub>|
|`yaml` |YAML&nbsp;Ain't&nbsp;Markup&nbsp;Language |<sub></sub>|
|[`zip`](#zip) |ZIP&nbsp;archive |<sub>`probe`</sub>|
|`image` |Group |<sub>`gif` `jpeg` `mp4` `png` `tiff` `webp`</sub>|
|`inet_packet` |Group |<sub>`ipv4_packet` `ipv6_packet`</sub>|
|`ip_packet` |Group |<sub>`icmp` `icmpv6` `tcp_segment` `udp_datagram`</sub>|
|`link_frame` |Group |<sub>`bsd_loopback_frame` `ether8023_frame` `ipv4_packet` `ipv6_packet` `sll2_packet` `sll_packet`</sub>|
|`mp3_frame_tags` |Group |<sub>`mp3_frame_vbri` `mp3_frame_xing`</sub>|
|`probe` |Group |<sub>`adts` `aiff` `apple_bookmark` `ar` `avi` `avro_ocf` `bitcoin_blkdat` `bplist` `bzip2` `elf` `flac` `gif` `gzip` `html` `jpeg` `json` `jsonl` `macho` `macho_fat` `matroska` `mp3` `mp4` `mpeg_ts` `ogg` `pcap` `pcapng` `png` `tar` `tiff` `toml` `tzif` `wasm` `wav` `webp` `xml` `yaml` `zip`</sub>|
|`tcp_stream` |Group |<sub>`dns_tcp` `rtmp` `tls`</sub>|
|`udp_payload` |Group |<sub>`dns`</sub>|
|Name |Description |Dependencies|
|- |- |-|
|[`aac_frame`](#aac_frame) |Advanced&nbsp;Audio&nbsp;Coding&nbsp;frame |<sub></sub>|
|`adts` |Audio&nbsp;Data&nbsp;Transport&nbsp;Stream |<sub>`adts_frame`</sub>|
|`adts_frame` |Audio&nbsp;Data&nbsp;Transport&nbsp;Stream&nbsp;frame |<sub>`aac_frame`</sub>|
|`aiff` |Audio&nbsp;Interchange&nbsp;File&nbsp;Format |<sub></sub>|
|`amf0` |Action&nbsp;Message&nbsp;Format&nbsp;0 |<sub></sub>|
|`apev2` |APEv2&nbsp;metadata&nbsp;tag |<sub>`image`</sub>|
|[`apple_bookmark`](#apple_bookmark) |Apple&nbsp;BookmarkData |<sub></sub>|
|`ar` |Unix&nbsp;archive |<sub>`probe`</sub>|
|[`asn1_ber`](#asn1_ber) |ASN1&nbsp;BER&nbsp;(basic&nbsp;encoding&nbsp;rules,&nbsp;also&nbsp;CER&nbsp;and&nbsp;DER) |<sub></sub>|
|`av1_ccr` |AV1&nbsp;Codec&nbsp;Configuration&nbsp;Record |<sub></sub>|
|`av1_frame` |AV1&nbsp;frame |<sub>`av1_obu`</sub>|
|`av1_obu` |AV1&nbsp;Open&nbsp;Bitstream&nbsp;Unit |<sub></sub>|
|`avc_annexb` |H.264/AVC&nbsp;Annex&nbsp;B |<sub>`avc_nalu`</sub>|
|[`avc_au`](#avc_au) |H.264/AVC&nbsp;Access&nbsp;Unit |<sub>`avc_nalu`</sub>|
|`avc_dcr` |H.264/AVC&nbsp;Decoder&nbsp;Configuration&nbsp;Record |<sub>`avc_nalu`</sub>|
|`avc_nalu` |H.264/AVC&nbsp;Network&nbsp;Access&nbsp;Layer&nbsp;Unit |<sub>`avc_sps` `avc_pps` `avc_sei`</sub>|
|`avc_pps` |H.264/AVC&nbsp;Picture&nbsp;Parameter&nbsp;Set |<sub></sub>|
|`avc_sei` |H.264/AVC&nbsp;Supplemental&nbsp;Enhancement&nbsp;Information |<sub></sub>|
|`avc_sps` |H.264/AVC&nbsp;Sequence&nbsp;Parameter&nbsp;Set |<sub></sub>|
|[`avi`](#avi) |Audio&nbsp;Video&nbsp;Interleaved |<sub>`avc_au` `hevc_au` `mp3_frame` `flac_frame`</sub>|
|[`avro_ocf`](#avro_ocf) |Avro&nbsp;object&nbsp;container&nbsp;file |<sub></sub>|
|[`bencode`](#bencode) |BitTorrent&nbsp;bencoding |<sub></sub>|
|`bitcoin_blkdat` |Bitcoin&nbsp;blk.dat |<sub>`bitcoin_block`</sub>|
|[`bitcoin_block`](#bitcoin_block) |Bitcoin&nbsp;block |<sub>`bitcoin_transaction`</sub>|
|`bitcoin_script` |Bitcoin&nbsp;script |<sub></sub>|
|`bitcoin_transaction` |Bitcoin&nbsp;transaction |<sub>`bitcoin_script`</sub>|
|[`bits`](#bits) |Raw&nbsp;bits |<sub></sub>|
|[`bplist`](#bplist) |Apple&nbsp;Binary&nbsp;Property&nbsp;List |<sub></sub>|
|`bsd_loopback_frame` |BSD&nbsp;loopback&nbsp;frame |<sub>`inet_packet`</sub>|
|[`bson`](#bson) |Binary&nbsp;JSON |<sub></sub>|
|[`bytes`](#bytes) |Raw&nbsp;bytes |<sub></sub>|
|`bzip2` |bzip2&nbsp;compression |<sub>`probe`</sub>|
|[`caff`](#caff) |Live2D&nbsp;Cubism&nbsp;archive |<sub>`probe`</sub>|
|[`cbor`](#cbor) |Concise&nbsp;Binary&nbsp;Object&nbsp;Representation |<sub></sub>|
|[`csv`](#csv) |Comma&nbsp;separated&nbsp;values |<sub></sub>|
|`dns` |DNS&nbsp;packet |<sub></sub>|
|`dns_tcp` |DNS&nbsp;packet&nbsp;(TCP) |<sub></sub>|
|`elf` |Executable&nbsp;and&nbsp;Linkable&nbsp;Format |<sub></sub>|
|`ether8023_frame` |Ethernet&nbsp;802.3&nbsp;frame |<sub>`inet_packet`</sub>|
|`exif` |Exchangeable&nbsp;Image&nbsp;File&nbsp;Format |<sub></sub>|
|`fairplay_spc` |FairPlay&nbsp;Server&nbsp;Playback&nbsp;Context |<sub></sub>|
|[`fit`](#fit) |Garmin&nbsp;Flexible&nbsp;and&nbsp;Interoperable&nbsp;Data&nbsp;Transfer |<sub></sub>|
|`flac` |Free&nbsp;Lossless&nbsp;Audio&nbsp;Codec&nbsp;file |<sub>`flac_metadatablocks` `flac_frame`</sub>|
|[`flac_frame`](#flac_frame) |FLAC&nbsp;frame |<sub></sub>|
|`flac_metadatablock` |FLAC&nbsp;metadatablock |<sub>`flac_streaminfo` `flac_picture` `vorbis_comment`</sub>|
|`flac_metadatablocks` |FLAC&nbsp;metadatablocks |<sub>`flac_metadatablock`</sub>|
|`flac_picture` |FLAC&nbsp;metadatablock&nbsp;picture |<sub>`image`</sub>|
|`flac_streaminfo` |FLAC&nbsp;streaminfo |<sub></sub>|
|`gif` |Graphics&nbsp;Interchange&nbsp;Format |<sub></sub>|
|`gzip` |gzip&nbsp;compression |<sub>`probe`</sub>|
|`hevc_annexb` |H.265/HEVC&nbsp;Annex&nbsp;B |<sub>`hevc_nalu`</sub>|
|[`hevc_au`](#hevc_au) |H.265/HEVC&nbsp;Access&nbsp;Unit |<sub>`hevc_nalu`</sub>|
|`hevc_dcr` |H.265/HEVC&nbsp;Decoder&nbsp;Configuration&nbsp;Record |<sub>`hevc_nalu`</sub>|
|`hevc_nalu` |H.265/HEVC&nbsp;Network&nbsp;Access&nbsp;Layer&nbsp;Unit |<sub>`hevc_vps` `hevc_pps` `hevc_sps`</sub>|
|`hevc_pps` |H.265/HEVC&nbsp;Picture&nbsp;Parameter&nbsp;Set |<sub></sub>|
|`hevc_sps` |H.265/HEVC&nbsp;Sequence&nbsp;Parameter&nbsp;Set |<sub></sub>|
|`hevc_vps` |H.265/HEVC&nbsp;Video&nbsp;Parameter&nbsp;Set |<sub></sub>|
|[`html`](#html) |HyperText&nbsp;Markup&nbsp;Language |<sub></sub>|
|`icc_profile` |International&nbsp;Color&nbsp;Consortium&nbsp;profile |<sub></sub>|
|`icmp` |Internet&nbsp;Control&nbsp;Message&nbsp;Protocol |<sub></sub>|
|`icmpv6` |Internet&nbsp;Control&nbsp;Message&nbsp;Protocol&nbsp;v6 |<sub></sub>|
|`id3v1` |ID3v1&nbsp;metadata |<sub></sub>|
|`id3v11` |ID3v1.1&nbsp;metadata |<sub></sub>|
|`id3v2` |ID3v2&nbsp;metadata |<sub>`image`</sub>|
|`ipv4_packet` |Internet&nbsp;protocol&nbsp;v4&nbsp;packet |<sub>`ip_packet`</sub>|
|`ipv6_packet` |Internet&nbsp;protocol&nbsp;v6&nbsp;packet |<sub>`ip_packet`</sub>|
|`jp2c` |JPEG&nbsp;2000&nbsp;codestream |<sub></sub>|
|`jpeg` |Joint&nbsp;Photographic&nbsp;Experts&nbsp;Group&nbsp;file |<sub>`exif` `icc_profile`</sub>|
|`json` |JavaScript&nbsp;Object&nbsp;Notation |<sub></sub>|
|`jsonl` |JavaScript&nbsp;Object&nbsp;Notation&nbsp;Lines |<sub></sub>|
|[`leveldb_descriptor`](#leveldb_descriptor) |LevelDB&nbsp;Descriptor |<sub></sub>|
|[`leveldb_log`](#leveldb_log) |LevelDB&nbsp;Log |<sub></sub>|
|[`leveldb_table`](#leveldb_table) |LevelDB&nbsp;Table |<sub></sub>|
|[`luajit`](#luajit) |LuaJIT&nbsp;2.0&nbsp;bytecode |<sub></sub>|
|[`macho`](#macho) |Mach-O&nbsp;macOS&nbsp;executable |<sub></sub>|
|`macho_fat` |Fat&nbsp;Mach-O&nbsp;macOS&nbsp;executable&nbsp;(multi-architecture) |<sub>`macho`</sub>|
|[`markdown`](#markdown) |Markdown |<sub></sub>|
|[`matroska`](#matroska) |Matroska&nbsp;file |<sub>`aac_frame` `av1_ccr` `av1_frame` `avc_au` `avc_dcr` `flac_frame` `flac_metadatablocks` `hevc_au` `hevc_dcr` `image` `mp3_frame` `mpeg_asc` `mpeg_pes_packet` `mpeg_spu` `opus_packet` `vorbis_packet` `vp8_frame` `vp9_cfm` `vp9_frame`</sub>|
|[`moc3`](#moc3) |MOC3&nbsp;file |<sub></sub>|
|[`mp3`](#mp3) |MP3&nbsp;file |<sub>`id3v2` `id3v1` `id3v11` `apev2` `mp3_frame`</sub>|
|`mp3_frame` |MPEG&nbsp;audio&nbsp;layer&nbsp;3&nbsp;frame |<sub>`mp3_frame_tags`</sub>|
|`mp3_frame_vbri` |MP3&nbsp;frame&nbsp;Fraunhofer&nbsp;encoder&nbsp;variable&nbsp;bitrate&nbsp;tag |<sub></sub>|
|`mp3_frame_xing` |MP3&nbsp;frame&nbsp;Xing/Info&nbsp;tag |<sub></sub>|
|[`mp4`](#mp4) |ISOBMFF,&nbsp;QuickTime&nbsp;and&nbsp;similar |<sub>`aac_frame` `av1_ccr` `av1_frame` `avc_au` `avc_dcr` `flac_frame` `flac_metadatablocks` `hevc_au` `hevc_dcr` `icc_profile` `id3v2` `image` `jp2c` `jpeg` `mp3_frame` `mpeg_es` `mpeg_pes_packet` `opus_packet` `png` `prores_frame` `protobuf_widevine` `pssh_playready` `vorbis_packet` `vp9_frame` `vpx_ccr`</sub>|
|`mpeg_asc` |MPEG-4&nbsp;Audio&nbsp;Specific&nbsp;Config |<sub></sub>|
|`mpeg_es` |MPEG&nbsp;Elementary&nbsp;Stream |<sub>`mpeg_asc` `vorbis_packet`</sub>|
|`mpeg_pes` |MPEG&nbsp;Packetized&nbsp;elementary&nbsp;stream |<sub>`mpeg_pes_packet` `mpeg_spu`</sub>|
|`mpeg_pes_packet` |MPEG&nbsp;Packetized&nbsp;elementary&nbsp;stream&nbsp;packet |<sub></sub>|
|`mpeg_spu` |Sub&nbsp;Picture&nbsp;Unit&nbsp;(DVD&nbsp;subtitle) |<sub></sub>|
|`mpeg_ts` |MPEG&nbsp;Transport&nbsp;Stream |<sub></sub>|
|[`msgpack`](#msgpack) |MessagePack |<sub></sub>|
|[`nes`](#nes) |iNES/NES&nbsp;2.0&nbsp;cartridge&nbsp;ROM&nbsp;format |<sub></sub>|
|`ogg` |OGG&nbsp;file |<sub>`ogg_page` `vorbis_packet` `opus_packet` `flac_metadatablock` `flac_frame`</sub>|
|`ogg_page` |OGG&nbsp;page |<sub></sub>|
|[`opentimestamps`](#opentimestamps) |OpenTimestamps&nbsp;file |<sub></sub>|
|`opus_packet` |Opus&nbsp;packet |<sub>`vorbis_comment`</sub>|
|[`pcap`](#pcap) |PCAP&nbsp;packet&nbsp;capture |<sub>`link_frame` `tcp_stream` `ipv4_packet`</sub>|
|`pcapng` |PCAPNG&nbsp;packet&nbsp;capture |<sub>`link_frame` `tcp_stream` `ipv4_packet`</sub>|
|[`pg_btree`](#pg_btree) |PostgreSQL&nbsp;btree&nbsp;index&nbsp;file |<sub></sub>|
|[`pg_control`](#pg_control) |PostgreSQL&nbsp;control&nbsp;file |<sub></sub>|
|[`pg_heap`](#pg_heap) |PostgreSQL&nbsp;heap&nbsp;file |<sub></sub>|
|`png` |Portable&nbsp;Network&nbsp;Graphics&nbsp;file |<sub>`icc_profile` `exif`</sub>|
|`prores_frame` |Apple&nbsp;ProRes&nbsp;frame |<sub></sub>|
|[`protobuf`](#protobuf) |Protobuf |<sub></sub>|
|`protobuf_widevine` |Widevine&nbsp;protobuf |<sub>`protobuf`</sub>|
|`pssh_playready` |PlayReady&nbsp;PSSH |<sub></sub>|
|[`rtmp`](#rtmp) |Real-Time&nbsp;Messaging&nbsp;Protocol |<sub>`amf0` `mpeg_asc`</sub>|
|`sll2_packet` |Linux&nbsp;cooked&nbsp;capture&nbsp;encapsulation&nbsp;v2 |<sub>`inet_packet`</sub>|
|`sll_packet` |Linux&nbsp;cooked&nbsp;capture&nbsp;encapsulation |<sub>`inet_packet`</sub>|
|`tar` |Tar&nbsp;archive |<sub>`probe`</sub>|
|`tcp_segment` |Transmission&nbsp;control&nbsp;protocol&nbsp;segment |<sub></sub>|
|`tiff` |Tag&nbsp;Image&nbsp;File&nbsp;Format |<sub>`icc_profile`</sub>|
|[`tls`](#tls) |Transport&nbsp;layer&nbsp;security |<sub>`asn1_ber`</sub>|
|`toml` |Tom's&nbsp;Obvious,&nbsp;Minimal&nbsp;Language |<sub></sub>|
|[`tzif`](#tzif) |Time&nbsp;Zone&nbsp;Information&nbsp;Format |<sub></sub>|
|`udp_datagram` |User&nbsp;datagram&nbsp;protocol |<sub>`udp_payload`</sub>|
|`vorbis_comment` |Vorbis&nbsp;comment |<sub>`flac_picture`</sub>|
|`vorbis_packet` |Vorbis&nbsp;packet |<sub>`vorbis_comment`</sub>|
|`vp8_frame` |VP8&nbsp;frame |<sub></sub>|
|`vp9_cfm` |VP9&nbsp;Codec&nbsp;Feature&nbsp;Metadata |<sub></sub>|
|`vp9_frame` |VP9&nbsp;frame |<sub></sub>|
|`vpx_ccr` |VPX&nbsp;Codec&nbsp;Configuration&nbsp;Record |<sub></sub>|
|[`wasm`](#wasm) |WebAssembly&nbsp;Binary&nbsp;Format |<sub></sub>|
|`wav` |WAV&nbsp;file |<sub>`id3v2` `id3v1` `id3v11`</sub>|
|`webp` |WebP&nbsp;image |<sub>`exif` `vp8_frame` `icc_profile` `xml`</sub>|
|[`xml`](#xml) |Extensible&nbsp;Markup&nbsp;Language |<sub></sub>|
|`yaml` |YAML&nbsp;Ain't&nbsp;Markup&nbsp;Language |<sub></sub>|
|[`zip`](#zip) |ZIP&nbsp;archive |<sub>`probe`</sub>|
|`image` |Group |<sub>`gif` `jp2c` `jpeg` `mp4` `png` `tiff` `webp`</sub>|
|`inet_packet` |Group |<sub>`ipv4_packet` `ipv6_packet`</sub>|
|`ip_packet` |Group |<sub>`icmp` `icmpv6` `tcp_segment` `udp_datagram`</sub>|
|`link_frame` |Group |<sub>`bsd_loopback_frame` `ether8023_frame` `ipv4_packet` `ipv6_packet` `sll2_packet` `sll_packet`</sub>|
|`mp3_frame_tags` |Group |<sub>`mp3_frame_vbri` `mp3_frame_xing`</sub>|
|`probe` |Group |<sub>`adts` `aiff` `apple_bookmark` `ar` `avi` `avro_ocf` `bitcoin_blkdat` `bplist` `bzip2` `caff` `elf` `fit` `flac` `gif` `gzip` `html` `jp2c` `jpeg` `json` `jsonl` `leveldb_table` `luajit` `macho` `macho_fat` `matroska` `moc3` `mp3` `mp4` `mpeg_ts` `nes` `ogg` `opentimestamps` `pcap` `pcapng` `png` `tar` `tiff` `toml` `tzif` `wasm` `wav` `webp` `xml` `yaml` `zip`</sub>|
|`tcp_stream` |Group |<sub>`dns_tcp` `rtmp` `tls`</sub>|
|`udp_payload` |Group |<sub>`dns`</sub>|
[#]: sh-end
@ -172,7 +182,7 @@ Apple's `bookmarkData` format is used to encode information that can be resolved
into a `URL` object for a file even if the user moves or renames it. Can also
contain security scoping information for App Sandbox support.
These `bookmarkData` blobs are often found encoded in data fields of Binary
These `bookmarkData` blobs are often found endcoded in data fields of Binary
Property Lists. Notable examples include:
- `com.apple.finder.plist` - contains an `FXRecentFolders` value, which is an
@ -263,20 +273,21 @@ Decode value as avc_au
### Options
|Name |Default|Description|
|- |- |-|
|`decode_samples`|true |Decode samples|
|Name |Default|Description|
|- |- |-|
|`decode_extended_chunks`|true |Decode extended chunks|
|`decode_samples` |true |Decode samples|
### Examples
Decode file using avi options
```
$ fq -d avi -o decode_samples=true . file
$ fq -d avi -o decode_extended_chunks=true -o decode_samples=true . file
```
Decode value as avi
```
... | avi({decode_samples:true})
... | avi({decode_extended_chunks:true,decode_samples:true})
```
### Samples
@ -294,6 +305,13 @@ $ fq '.streams[1].samples[] | tobytes' file.avi > stream01.mp3
$ fq -o decode_samples=false '[.chunks[0] | grep_by(.id=="LIST" and .type=="strl") | grep_by(.id=="strh") as {$type} | grep_by(.id=="strf") as {$format_tag, $compression} | {$type,$format_tag,$compression}]' *.avi
```
### Speed up decoding by disabling sample and extended chunks decoding
If your not interested in sample details or extended chunks you can speed up decoding by using:
```sh
$ fq -o decode_samples=false -o decode_extended_chunks=false d file.avi
```
### References
- [AVI RIFF File Reference](https://learn.microsoft.com/en-us/windows/win32/directshow/avi-riff-file-reference)
@ -487,6 +505,29 @@ $ echo 'hello' | fq -d bytes '.[1]'
101
```
## caff
### Options
|Name |Default|Description|
|- |- |-|
|`uncompress`|true |Uncompress and probe files|
### Examples
Decode file using caff options
```
$ fq -d caff -o uncompress=true . file
```
Decode value as caff
```
... | caff({uncompress:true})
```
### Authors
- [@ronsor](https://github.com/ronsor)
## cbor
### Convert represented value to JSON
@ -532,6 +573,28 @@ $ fq -d csv -o comma="\t" to_csv file.tsv
$ fq -d csv '.[0] as $t | .[1:] | map(with_entries(.key = $t[.key]))' file.csv
```
## fit
### Limitations
- Fields with subcomponents, such as "compressed_speed_distance" field on globalMessageNumber 20 is not represented correctly.
The field is read as 3 separate bytes where the first 12 bits are speed and the last 12 bits are distance.
- There are still lots of UNKOWN fields due to gaps in Garmins SDK Profile documentation. (Currently FIT SDK 21.126)
- Compressed timestamp messages are not accumulated against last known full timestamp.
### Convert stream of data messages to JSON array
```
$ fq '[.data_records[] | select(.record_header.message_type == "data").data_message]' file.fit
```
### Authors
- Mikael Lofjärd mikael.lofjard@gmail.com, original author
### References
- https://developer.garmin.com/fit/protocol/
- https://developer.garmin.com/fit/cookbook/decoding-activity-files/
## flac_frame
### Options
@ -655,6 +718,64 @@ $ fq -n -d html '[inputs | {key: input_filename, value: .html.head.title?}] | fr
$ fq -r -o array=true -d html '.. | select(.[0] == "a" and .[1].href)?.[1].href' file.html
```
## leveldb_descriptor
### Limitations
- fragmented non-"full" records are not merged and decoded further.
### Authors
- [@mikez](https://github.com/mikez), original author
### References
- https://github.com/google/leveldb/blob/main/doc/impl.md#manifest
- https://github.com/google/leveldb/blob/main/doc/log_format.md
- https://github.com/google/leveldb/blob/main/db/version_edit.cc
## leveldb_log
### Limitations
- fragmented non-"full" records are not merged and decoded further.
### Authors
- [@mikez](https://github.com/mikez), original author
### References
- https://github.com/google/leveldb/blob/main/doc/impl.md#log-files
- https://github.com/google/leveldb/blob/main/doc/log_format.md
- https://github.com/google/leveldb/blob/main/db/write_batch.cc
## leveldb_table
### Limitations
- no Meta Blocks (like "filter") are decoded yet.
- Zstandard uncompression is not implemented yet.
### Authors
- [@mikez](https://github.com/mikez), original author
### References
- https://github.com/google/leveldb/blob/main/doc/table_format.md
- https://github.com/google/leveldb/blob/main/doc/impl.md
- https://github.com/google/leveldb/blob/main/doc/index.md
## luajit
### Authors
- [@dlatchx](https://github.com/dlatchx)
### References
- https://github.com/LuaJIT/LuaJIT/blob/v2.1/src/lj_bcdump.h
- http://scm.zoomquiet.top/data/20131216145900/index.html
## macho
Supports decoding vanilla and FAT Mach-O binaries.
@ -718,6 +839,11 @@ $ fq 'grep_by(.id == "Tracks") | matroska_path' file.mkv
- https://www.matroska.org/technical/codec_specs.html
- https://wiki.xiph.org/MatroskaOpus
## moc3
### Authors
- [@ronsor](https://github.com/ronsor)
## mp3
### Options
@ -816,6 +942,69 @@ $ fq -d msgpack torepr file.msgpack
### References
- https://github.com/msgpack/msgpack/blob/master/spec.md
## nes
### Limitations
- `prg_rom`, `chr_rom` and `trainer` fields may contain data that is just random
junk from the memory chips, since they are of a fixed size.
- The `nes_toasm` function outputs ALL opcodes, including the unofficial ones,
which means that none of the regular assemblers can recompile it.
- The `nes_tokitty` function works on tiles in `chr_rom` but only outputs a Kitty
graphics compatible string. You need to manually `printf` that string to get
Kitty (or another compatible terminal) to output the graphics.
### Decompile PRG ROM
```
$ fq -r '.prg_rom[] | nes_toasm' file.nes
```
### Print out first CHR ROM tile in Kitty (or Konsole, wayst, WezTerm) at size 5
```
$ printf $(fq -r -d nes '.chr_rom[0] | nes_tokitty(5)' file.nes)
```
### Print out all CHR ROM tiles in Kitty (with Bash) at size 5
```
$ for line in $(fq -r '.chr_rom[] | nes_tokitty(5)' file.nes);do printf "%b%s" "$line";done
```
### Authors
- Mikael Lofjärd mikael.lofjard@gmail.com, original author
### References
- https://www.nesdev.org/wiki/INES
- https://www.nesdev.org/wiki/NES_2.0
- https://www.nesdev.org/wiki/CPU
- https://bugzmanov.github.io/nes_ebook/chapter_6_3.html
## opentimestamps
### View a full OpenTimestamps file
```
$ fq dd file.ots
```
### List the names of the Calendar servers used
```
$ fq '.operations | map(select(.attestation_type == "calendar") | .url)' file.ots
```
### Check if there are Bitcoin attestations present
```
$ fq '.operations | map(select(.attestation_type == "bitcoin")) | length > 0' file.ots
```
### Authors
- fiatjaf, https://fiatjaf.com
### References
- https://opentimestamps.org/
- https://github.com/opentimestamps/python-opentimestamps
## pcap
### Build object with number of (reassembled) TCP bytes sent to/from client IP
@ -1004,7 +1193,7 @@ Decode value as tls
Supports decoding of most standard records, messages and extensions. Can also decrypt most standard cipher suits in a PCAP with traffic in both directions if a NSS key log is provided.
### Decode and decrypt providing a PCAP and key log
### Decode and decrypt provding a PCAP and key log
Write traffic to a PCAP file:
@ -1319,9 +1508,15 @@ Decode value as zip
Supports ZIP64.
## Timestamp and time zones
The timestamp accessed via `.local_files[].last_modification` is encoded in ZIP files using [MS-DOS representation](https://learn.microsoft.com/en-us/windows/win32/api/oleauto/nf-oleauto-dosdatetimetovarianttime) which lacks a known time zone. Probably the local time/date was used at creation. The `unix_guess` field in `last_modification` is a guess assuming the local time zone was UTC at creation.
### References
- https://pkware.cachefly.net/webdocs/casestudies/APPNOTE.TXT
- https://opensource.apple.com/source/zip/zip-6/unzip/unzip/proginfo/extra.fld
- https://formats.kaitai.io/dos_datetime/
- https://learn.microsoft.com/en-us/windows/win32/api/oleauto/nf-oleauto-dosdatetimetovarianttime
[#]: sh-end

File diff suppressed because it is too large Load Diff

Before

Width:  |  Height:  |  Size: 143 KiB

After

Width:  |  Height:  |  Size: 156 KiB

View File

@ -1,3 +1,9 @@
//go:build exclude
package bts2022
import "github.com/wader/fq/pkg/decode"
func avcHdrParameters(d *decode.D) {
cpbCnt := d.FieldUintFn("cpb_cnt", uEV, scalar.UAdd(1))
d.FieldU4("bit_rate_scale")
@ -15,4 +21,4 @@ func avcHdrParameters(d *decode.D) {
d.FieldU5("cpb_removal_delay_length", scalar.UAdd(1))
d.FieldU5("dpb_output_delay_length", scalar.UAdd(1))
d.FieldU5("time_offset_length")
}
}

View File

@ -1,3 +1,7 @@
//go:build exclude
package bts2022
func decode(d *decode.D) any {
d.FieldArray("headers", func(d *decode.D) {
for !d.End() {

View File

@ -138,7 +138,7 @@ Default if not explicitly used `display` will only show the root level:
First row shows a ruler with byte offset into the line and jq path for the value.
The columns are:
- Start address for the line. For example we see that `type` starts at `0xd60`+`0x09`.
- Start address for the line. For example we see that `type` starts at `0xd60` (row) + `0x09` (column).
- Hex representation of input bits for value. Will show the whole byte even if the value only partially uses bits from it.
- ASCII representation of input bits for value. Will show the whole byte even if the value only partially uses bits from it.
- Tree structure of decoded value, symbolic value and description.
@ -158,13 +158,19 @@ Same but verbose `dv`:
In verbose mode bit ranges and array element names as shown.
Bit range uses `bytes.bits` notation. For example `type` starts at byte `0xd69` bit `0` (left out if zero) and ends at `0xd6c` bit `7` (inclusive) and have byte size of `4`.
Bit ranges uses `<start-byte>[.<bits>]-<end-byte>[.<bits>]` as notation where `.<bits>` is left out if byte aligned. For example `type` starts at byte `0xd69` bit `0` (`.0` is left out) and ends at `0xd6d` bit `0` (exclusive) and have a size of `4` bytes.
This verbosely displays the header of the second frame in an mp3 file which has a bunch of non-byte-aligned fields:
![fq demo](display_decode_value_dv2.svg)
Here the `sync` pattern starts at `0xb79` (bit `0`) and ends at `0xb7a.3` (exclusive) and has a size of `1` byte and `3` bits, `11` bits in total (`8+3`).
There are also some other `display` aliases:
- `da` same as `display({array_truncate: 0})` which will not truncate long arrays.
- `dd` same as `display({array_truncate: 0, display_bytes: 0})` which will not truncate long ranges.
- `dv` same as `display({array_truncate: 0, verbose: true})`
- `ddv` same as `display({array_truncate: 0, display_bytes: 0 verbose: true})` which will not truncate long and also display verbosely.
- `da` is `display({array_truncate: 0})` don't truncate arrays.
- `dd` is `display({array_truncate: 0, string_truncate: 0, display_bytes: 0})` don't truncate arrays and raw bytes.
- `dv` is `display({array_truncate: 0, string_truncate: 0, verbose: true})` don't truncate arrays and display verbosely.
- `ddv` is `display({array_truncate: 0, string_truncate: 0, display_bytes: 0 verbose: true})` don't truncate arrays and raw bytes. and display verbosely.
## Interactive REPL
@ -337,7 +343,18 @@ single argument `1, 2` (a lambda expression that outputs `1` and then outputs `2
achieved.
- Expressions have one implicit input and output value. This how pipelines like `1 | . * 2` work.
## Types specific to fq
## Differences to jq
- All [gojq's differences to jq](https://github.com/itchyny/gojq#difference-to-jq).
Notably it adds support for arbitrary-precision integers.
- Supports raw strings using back-ticks. <code>\`\\(1234)\u1234\`</code> results in the string `"\\(1234)\\u1234"`.
- Supports hexadecimal `0xab`, octal `0o77` and binary `0b101` integer literals. Also support grouping using underscore `0xaa_bb_cc_dd`.
- Try include using a ending question mark `include "file?";` that doesn't fail if file is missing or has errors.
- Some values can act as an object with keys even when it's an array, number etc.
- There can be keys hidden from `keys` and `[]`.
- Some values are readonly and can't be updated or will convert to JSON on update.
### Types specific to fq
fq has two additional types compared to jq, decode value and binary. In standard jq expressions they will in most cases behave as some standard jq type.
@ -808,7 +825,7 @@ How to represent raw binary as JSON.
- `-o bits_format=snippet` Truncated Base64 string prefixed with bit length.
```sh
$ fq -V -o bits_format=base64 . file`
$ fq -V -o bits_format=base64 . file
```
In query
```jq
@ -820,13 +837,22 @@ tovalue({bits_format: "md5"})
Skip gaps fields (`gap0` etc) when using `tovalue` or `-V`. Note that this might affect array indexes if one more more gaps fields are skipped in an array.
```sh
$ fq -V -o skip_gaps=true . file`
$ fq -V -o skip_gaps=true . file
```
In query
```jq
tovalue({skip_gaps: true})
```
### `-o array_truncate=<number>`
By default truncate long array when displaying decode value tree. Use `dd` or `d({array_truncate: 0})` to not truncate.
### `-o string_truncate=<number>`
By default truncate long strings when displaying decode value tree. Use `dd` or `d({string_truncate: 0})` to not truncate.
## Color and unicode output
fq by default tries to use colors if possible, this can be disabled with `-M`. You can also
@ -836,9 +862,9 @@ variable `CLIUNICODE`.
## Configuration
To add own functions you can use `init.fq` that will be read from
- `$HOME/Library/Application Support/fq/init.jq` on macOS
- `$HOME/.config/fq/init.jq` on Linux, BSD etc
- `%AppData%\fq\init.jq` on Windows
- `$HOME/Library/Application Support/fq` or `$HOME/.config/fq` on macOS
- `$HOME/.config/fq` on Linux, BSD etc
- `%AppData%` on Windows
## Use as script interpreter
@ -850,16 +876,6 @@ fq can be used as a script interpreter:
[.frames[].header | .sample_count / .sample_rate] | add
```
## Differences to jq
- [gojq's differences to jq](https://github.com/itchyny/gojq#difference-to-jq),
notable is support for arbitrary-precision integers.
- Supports hexadecimal `0xab`, octal `0o77` and binary `0b101` integer literals.
- Try include `include "file?";` that doesn't fail if file is missing or has errors.
- Some values can act as an object with keys even when it's an array, number etc.
- There can be keys hidden from `keys` and `[]`.
- Some values are readonly and can't be updated.
## Decoded values
When decoding something, using `decode` or `mp3` etc, you a decode value is returned. They behave like

View File

@ -8,19 +8,28 @@ $ fq -n _registry.groups.probe
"bitcoin_blkdat",
"bplist",
"bzip2",
"caff",
"elf",
"fit",
"flac",
"gif",
"gzip",
"jp2c",
"jpeg",
"leveldb_table",
"luajit",
"macho",
"macho_fat",
"matroska",
"moc3",
"mp4",
"nes",
"ogg",
"opentimestamps",
"pcap",
"pcapng",
"png",
"sqlite3",
"tar",
"tiff",
"tzif",
@ -71,6 +80,7 @@ bsd_loopback_frame BSD loopback frame
bson Binary JSON
bytes Raw bytes
bzip2 bzip2 compression
caff Live2D Cubism archive
cbor Concise Binary Object Representation
csv Comma separated values
dns DNS packet
@ -79,6 +89,7 @@ elf Executable and Linkable Format
ether8023_frame Ethernet 802.3 frame
exif Exchangeable Image File Format
fairplay_spc FairPlay Server Playback Context
fit Garmin Flexible and Interoperable Data Transfer
flac Free Lossless Audio Codec file
flac_frame FLAC frame
flac_metadatablock FLAC metadatablock
@ -103,13 +114,19 @@ id3v11 ID3v1.1 metadata
id3v2 ID3v2 metadata
ipv4_packet Internet protocol v4 packet
ipv6_packet Internet protocol v6 packet
jp2c JPEG 2000 codestream
jpeg Joint Photographic Experts Group file
json JavaScript Object Notation
jsonl JavaScript Object Notation Lines
leveldb_descriptor LevelDB Descriptor
leveldb_log LevelDB Log
leveldb_table LevelDB Table
luajit LuaJIT 2.0 bytecode
macho Mach-O macOS executable
macho_fat Fat Mach-O macOS executable (multi-architecture)
markdown Markdown
matroska Matroska file
moc3 MOC3 file
mp3 MP3 file
mp3_frame MPEG audio layer 3 frame
mp3_frame_vbri MP3 frame Fraunhofer encoder variable bitrate tag
@ -122,8 +139,10 @@ mpeg_pes_packet MPEG Packetized elementary stream packet
mpeg_spu Sub Picture Unit (DVD subtitle)
mpeg_ts MPEG Transport Stream
msgpack MessagePack
nes iNES/NES 2.0 cartridge ROM format
ogg OGG file
ogg_page OGG page
opentimestamps OpenTimestamps file
opus_packet Opus packet
pcap PCAP packet capture
pcapng PCAPNG packet capture

View File

@ -15,12 +15,14 @@ import (
_ "github.com/wader/fq/format/bits"
_ "github.com/wader/fq/format/bson"
_ "github.com/wader/fq/format/bzip2"
_ "github.com/wader/fq/format/caff"
_ "github.com/wader/fq/format/cbor"
_ "github.com/wader/fq/format/crypto"
_ "github.com/wader/fq/format/csv"
_ "github.com/wader/fq/format/dns"
_ "github.com/wader/fq/format/elf"
_ "github.com/wader/fq/format/fairplay"
_ "github.com/wader/fq/format/fit"
_ "github.com/wader/fq/format/flac"
_ "github.com/wader/fq/format/gif"
_ "github.com/wader/fq/format/gzip"
@ -29,14 +31,19 @@ import (
_ "github.com/wader/fq/format/inet"
_ "github.com/wader/fq/format/jpeg"
_ "github.com/wader/fq/format/json"
_ "github.com/wader/fq/format/leveldb"
_ "github.com/wader/fq/format/luajit"
_ "github.com/wader/fq/format/markdown"
_ "github.com/wader/fq/format/math"
_ "github.com/wader/fq/format/matroska"
_ "github.com/wader/fq/format/moc3"
_ "github.com/wader/fq/format/mp3"
_ "github.com/wader/fq/format/mp4"
_ "github.com/wader/fq/format/mpeg"
_ "github.com/wader/fq/format/msgpack"
_ "github.com/wader/fq/format/nes"
_ "github.com/wader/fq/format/ogg"
_ "github.com/wader/fq/format/opentimestamps"
_ "github.com/wader/fq/format/opus"
_ "github.com/wader/fq/format/pcap"
_ "github.com/wader/fq/format/png"
@ -45,6 +52,7 @@ import (
_ "github.com/wader/fq/format/protobuf"
_ "github.com/wader/fq/format/riff"
_ "github.com/wader/fq/format/rtmp"
_ "github.com/wader/fq/format/sqlite3"
_ "github.com/wader/fq/format/tar"
_ "github.com/wader/fq/format/text"
_ "github.com/wader/fq/format/tiff"
@ -54,7 +62,6 @@ import (
_ "github.com/wader/fq/format/vorbis"
_ "github.com/wader/fq/format/vpx"
_ "github.com/wader/fq/format/wasm"
_ "github.com/wader/fq/format/webp"
_ "github.com/wader/fq/format/xml"
_ "github.com/wader/fq/format/yaml"
_ "github.com/wader/fq/format/zip"

View File

@ -2,53 +2,53 @@
# mp3gain test.mp3
# fq '.footers[0] | tobytes' test.mp3 > apev2
$ fq -d apev2 dv apev2
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: apev2 (apev2) 0x0-0xad.7 (174)
| | | header{}: 0x0-0x1f.7 (32)
0x00|41 50 45 54 41 47 45 58 |APETAGEX | preamble: "APETAGEX" (valid) 0x0-0x7.7 (8)
0x00| d0 07 00 00 | .... | version: 2000 0x8-0xb.7 (4)
0x00| 8e 00 00 00| ....| tag_size: 142 0xc-0xf.7 (4)
0x10|03 00 00 00 |.... | item_count: 3 0x10-0x13.7 (4)
0x10| 00 00 00 a0 | .... | flags: 2684354560 0x14-0x17.7 (4)
0x10| 00 00 00 00 00 00 00 00| ........| reserved: raw bits (all zero) 0x18-0x1f.7 (8)
| | | tags[0:3]: 0x20-0x8d.7 (110)
| | | [0]{}: tag 0x20-0x3d.7 (30)
0x20|07 00 00 00 |.... | item_size: 7 0x20-0x23.7 (4)
| | | item_flags{}: 0x24-0x27.7 (4)
0x20| 00 | . | unused0: 0 0x24-0x24.5 (0.6)
0x20| 00 | . | binary: false 0x24.6-0x24.6 (0.1)
0x20| 00 00 00 00 | .... | unused1: 0 0x24.7-0x27.7 (3.1)
0x20| 4d 50 33 47 41 49 4e 5f| MP3GAIN_| key: "MP3GAIN_MINMAX" 0x28-0x35.7 (14)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: apev2 (apev2) 0x0-0xae (174)
| | | header{}: 0x0-0x20 (32)
0x00|41 50 45 54 41 47 45 58 |APETAGEX | preamble: "APETAGEX" (valid) 0x0-0x8 (8)
0x00| d0 07 00 00 | .... | version: 2000 0x8-0xc (4)
0x00| 8e 00 00 00| ....| tag_size: 142 0xc-0x10 (4)
0x10|03 00 00 00 |.... | item_count: 3 0x10-0x14 (4)
0x10| 00 00 00 a0 | .... | flags: 2684354560 0x14-0x18 (4)
0x10| 00 00 00 00 00 00 00 00| ........| reserved: raw bits (all zero) 0x18-0x20 (8)
| | | tags[0:3]: 0x20-0x8e (110)
| | | [0]{}: tag 0x20-0x3e (30)
0x20|07 00 00 00 |.... | item_size: 7 0x20-0x24 (4)
| | | item_flags{}: 0x24-0x28 (4)
0x20| 00 | . | unused0: 0 0x24-0x24.6 (0.6)
0x20| 00 | . | binary: false 0x24.6-0x24.7 (0.1)
0x20| 00 00 00 00 | .... | unused1: 0 0x24.7-0x28 (3.1)
0x20| 4d 50 33 47 41 49 4e 5f| MP3GAIN_| key: "MP3GAIN_MINMAX" 0x28-0x36 (14)
0x30|4d 49 4e 4d 41 58 |MINMAX |
0x30| 00 | . | key_terminator: 0 0x36-0x36.7 (1)
0x30| 31 34 34 2c 32 31 30 | 144,210 | value: "144,210" 0x37-0x3d.7 (7)
| | | [1]{}: tag 0x3e-0x67.7 (42)
0x30| 0c 00| ..| item_size: 12 0x3e-0x41.7 (4)
0x30| 00 | . | key_terminator: 0 0x36-0x37 (1)
0x30| 31 34 34 2c 32 31 30 | 144,210 | value: "144,210" 0x37-0x3e (7)
| | | [1]{}: tag 0x3e-0x68 (42)
0x30| 0c 00| ..| item_size: 12 0x3e-0x42 (4)
0x40|00 00 |.. |
| | | item_flags{}: 0x42-0x45.7 (4)
0x40| 00 | . | unused0: 0 0x42-0x42.5 (0.6)
0x40| 00 | . | binary: false 0x42.6-0x42.6 (0.1)
0x40| 00 00 00 00 | .... | unused1: 0 0x42.7-0x45.7 (3.1)
0x40| 52 45 50 4c 41 59 47 41 49 4e| REPLAYGAIN| key: "REPLAYGAIN_TRACK_GAIN" 0x46-0x5a.7 (21)
| | | item_flags{}: 0x42-0x46 (4)
0x40| 00 | . | unused0: 0 0x42-0x42.6 (0.6)
0x40| 00 | . | binary: false 0x42.6-0x42.7 (0.1)
0x40| 00 00 00 00 | .... | unused1: 0 0x42.7-0x46 (3.1)
0x40| 52 45 50 4c 41 59 47 41 49 4e| REPLAYGAIN| key: "REPLAYGAIN_TRACK_GAIN" 0x46-0x5b (21)
0x50|5f 54 52 41 43 4b 5f 47 41 49 4e |_TRACK_GAIN |
0x50| 00 | . | key_terminator: 0 0x5b-0x5b.7 (1)
0x50| 2b 31 33 2e| +13.| value: "+13.75000 dB" 0x5c-0x67.7 (12)
0x50| 00 | . | key_terminator: 0 0x5b-0x5c (1)
0x50| 2b 31 33 2e| +13.| value: "+13.75000 dB" 0x5c-0x68 (12)
0x60|37 35 30 30 30 20 64 42 |75000 dB |
| | | [2]{}: tag 0x68-0x8d.7 (38)
0x60| 08 00 00 00 | .... | item_size: 8 0x68-0x6b.7 (4)
| | | item_flags{}: 0x6c-0x6f.7 (4)
0x60| 00 | . | unused0: 0 0x6c-0x6c.5 (0.6)
0x60| 00 | . | binary: false 0x6c.6-0x6c.6 (0.1)
0x60| 00 00 00 00| ....| unused1: 0 0x6c.7-0x6f.7 (3.1)
0x70|52 45 50 4c 41 59 47 41 49 4e 5f 54 52 41 43 4b|REPLAYGAIN_TRACK| key: "REPLAYGAIN_TRACK_PEAK" 0x70-0x84.7 (21)
| | | [2]{}: tag 0x68-0x8e (38)
0x60| 08 00 00 00 | .... | item_size: 8 0x68-0x6c (4)
| | | item_flags{}: 0x6c-0x70 (4)
0x60| 00 | . | unused0: 0 0x6c-0x6c.6 (0.6)
0x60| 00 | . | binary: false 0x6c.6-0x6c.7 (0.1)
0x60| 00 00 00 00| ....| unused1: 0 0x6c.7-0x70 (3.1)
0x70|52 45 50 4c 41 59 47 41 49 4e 5f 54 52 41 43 4b|REPLAYGAIN_TRACK| key: "REPLAYGAIN_TRACK_PEAK" 0x70-0x85 (21)
0x80|5f 50 45 41 4b |_PEAK |
0x80| 00 | . | key_terminator: 0 0x85-0x85.7 (1)
0x80| 30 2e 30 38 34 36 36 35 | 0.084665 | value: "0.084665" 0x86-0x8d.7 (8)
| | | footer{}: 0x8e-0xad.7 (32)
0x80| 41 50| AP| preamble: "APETAGEX" (valid) 0x8e-0x95.7 (8)
0x80| 00 | . | key_terminator: 0 0x85-0x86 (1)
0x80| 30 2e 30 38 34 36 36 35 | 0.084665 | value: "0.084665" 0x86-0x8e (8)
| | | footer{}: 0x8e-0xae (32)
0x80| 41 50| AP| preamble: "APETAGEX" (valid) 0x8e-0x96 (8)
0x90|45 54 41 47 45 58 |ETAGEX |
0x90| d0 07 00 00 | .... | version: 2000 0x96-0x99.7 (4)
0x90| 8e 00 00 00 | .... | tag_size: 142 0x9a-0x9d.7 (4)
0x90| 03 00| ..| item_count: 3 0x9e-0xa1.7 (4)
0x90| d0 07 00 00 | .... | version: 2000 0x96-0x9a (4)
0x90| 8e 00 00 00 | .... | tag_size: 142 0x9a-0x9e (4)
0x90| 03 00| ..| item_count: 3 0x9e-0xa2 (4)
0xa0|00 00 |.. |
0xa0| 00 00 00 80 | .... | flags: 2147483648 0xa2-0xa5.7 (4)
0xa0| 00 00 00 00 00 00 00 00| | ........| | reserved: raw bits (all zero) 0xa6-0xad.7 (8)
0xa0| 00 00 00 80 | .... | flags: 2147483648 0xa2-0xa6 (4)
0xa0| 00 00 00 00 00 00 00 00| | ........| | reserved: raw bits (all zero) 0xa6-0xae (8)

View File

@ -332,7 +332,7 @@ func makeDecodeRecord() func(d *decode.D) {
case dataTypeNumber64F:
d.FieldF64("data")
case dataTypeDate:
d.FieldF64BE("data", scalar.FltActualDate(cocoaTimeEpochDate, time.RFC3339))
d.FieldF64BE("data", scalar.FltActualDateDescription(cocoaTimeEpochDate, time.Second, time.RFC3339))
case dataTypeBooleanFalse:
case dataTypeBooleanTrue:
case dataTypeArray:

View File

@ -1,300 +1,300 @@
$ fq dv sample1.book
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: sample1.book (apple_bookmark) 0x0-0x22f.7 (560)
| | | header{}: 0x0-0x2f.7 (48)
0x000|62 6f 6f 6b |book | magic: "book" (valid) 0x0-0x3.7 (4)
0x000| 30 02 00 00 | 0... | total_size: 560 0x4-0x7.7 (4)
0x000| 00 00 04 10 | .... | unknown: 268697600 0x8-0xb.7 (4)
0x000| 30 00 00 00| 0...| header_size: 48 (valid) 0xc-0xf.7 (4)
0x010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| reserved: raw bits 0x10-0x2f.7 (32)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: sample1.book (apple_bookmark) 0x0-0x230 (560)
| | | header{}: 0x0-0x30 (48)
0x000|62 6f 6f 6b |book | magic: "book" (valid) 0x0-0x4 (4)
0x000| 30 02 00 00 | 0... | total_size: 560 0x4-0x8 (4)
0x000| 00 00 04 10 | .... | unknown: 268697600 0x8-0xc (4)
0x000| 30 00 00 00| 0...| header_size: 48 (valid) 0xc-0x10 (4)
0x010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| reserved: raw bits 0x10-0x30 (32)
0x020|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................|
0x030|50 01 00 00 |P... | first_toc_offset: 336 0x30-0x33.7 (4)
| | | bookmark_entries[0:13]: 0x34-0x22f.7 (508)
| | | [0]{}: entry 0x40-0x19f.7 (352)
| | | record{}: 0x40-0x7b.7 (60)
| | | data[0:2]: 0x40-0x7b.7 (60)
| | | [0]{}: element 0x40-0x77.7 (56)
| | | record{}: 0x40-0x57.7 (24)
0x040|0c 00 00 00 |.... | length: 12 0x40-0x43.7 (4)
0x040| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x44-0x47.7 (4)
0x040| 41 70 70 6c 69 63 61 74| Applicat| data: "Applications" 0x48-0x53.7 (12)
0x030|50 01 00 00 |P... | first_toc_offset: 336 0x30-0x34 (4)
| | | bookmark_entries[0:13]: 0x34-0x230 (508)
| | | [0]{}: entry 0x40-0x1a0 (352)
| | | record{}: 0x40-0x7c (60)
| | | data[0:2]: 0x40-0x7c (60)
| | | [0]{}: element 0x40-0x78 (56)
| | | record{}: 0x40-0x58 (24)
0x040|0c 00 00 00 |.... | length: 12 0x40-0x44 (4)
0x040| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x44-0x48 (4)
0x040| 41 70 70 6c 69 63 61 74| Applicat| data: "Applications" 0x48-0x54 (12)
0x050|69 6f 6e 73 |ions |
0x050| 0d 00 00 00 | .... | alignment_bytes: raw bits 0x54-0x57.7 (4)
0x070| 10 00 00 00 | .... | offset: 16 0x74-0x77.7 (4)
| | | [1]{}: element 0x54-0x7b.7 (40)
| | | record{}: 0x54-0x6b.7 (24)
0x050| 0d 00 00 00 | .... | length: 13 0x54-0x57.7 (4)
0x050| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x58-0x5b.7 (4)
0x050| 42 69 74 77| Bitw| data: "Bitwarden.app" 0x5c-0x68.7 (13)
0x050| 0d 00 00 00 | .... | alignment_bytes: raw bits 0x54-0x58 (4)
0x070| 10 00 00 00 | .... | offset: 16 0x74-0x78 (4)
| | | [1]{}: element 0x54-0x7c (40)
| | | record{}: 0x54-0x6c (24)
0x050| 0d 00 00 00 | .... | length: 13 0x54-0x58 (4)
0x050| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x58-0x5c (4)
0x050| 42 69 74 77| Bitw| data: "Bitwarden.app" 0x5c-0x69 (13)
0x060|61 72 64 65 6e 2e 61 70 70 |arden.app |
0x060| 00 00 00 | ... | alignment_bytes: raw bits 0x69-0x6b.7 (3)
0x070| 24 00 00 00 | $... | offset: 36 0x78-0x7b.7 (4)
0x060| 08 00 00 00| ....| length: 8 0x6c-0x6f.7 (4)
0x070|01 06 00 00 |.... | type: "array" (1537) (Array of 4-byte offsets to data items) 0x70-0x73.7 (4)
0x190| 04 10 00 00 | .... | key: "target_path" (4100) (Array of individual path components) 0x194-0x197.7 (4)
0x190| 3c 00 00 00 | <... | offset_to_record: 60 0x198-0x19b.7 (4)
0x190| 00 00 00 00| ....| unused: 0 0x19c-0x19f.7 (4)
| | | [1]{}: entry 0x7c-0x1ab.7 (304)
| | | record{}: 0x7c-0xab.7 (48)
| | | data[0:2]: 0x7c-0xab.7 (48)
| | | [0]{}: element 0x7c-0xa7.7 (44)
| | | record{}: 0x7c-0x8b.7 (16)
0x070| 08 00 00 00| ....| length: 8 0x7c-0x7f.7 (4)
0x080|04 03 00 00 |.... | type: "long" (772) ((signed 64-bit) 8-byte number) 0x80-0x83.7 (4)
0x080| 67 f5 50 03 00 00 00 00 | g.P..... | data: 55637351 0x84-0x8b.7 (8)
0x0a0| 4c 00 00 00 | L... | offset: 76 0xa4-0xa7.7 (4)
| | | [1]{}: element 0x8c-0xab.7 (32)
| | | record{}: 0x8c-0x9b.7 (16)
0x080| 08 00 00 00| ....| length: 8 0x8c-0x8f.7 (4)
0x090|04 03 00 00 |.... | type: "long" (772) ((signed 64-bit) 8-byte number) 0x90-0x93.7 (4)
0x090| fb e9 3d 03 00 00 00 00 | ..=..... | data: 54389243 0x94-0x9b.7 (8)
0x0a0| 5c 00 00 00 | \... | offset: 92 0xa8-0xab.7 (4)
0x090| 08 00 00 00| ....| length: 8 0x9c-0x9f.7 (4)
0x0a0|01 06 00 00 |.... | type: "array" (1537) (Array of 4-byte offsets to data items) 0xa0-0xa3.7 (4)
0x1a0|05 10 00 00 |.... | key: "target_cnid_path" (4101) (Array of CNIDs) 0x1a0-0x1a3.7 (4)
0x1a0| 6c 00 00 00 | l... | offset_to_record: 108 0x1a4-0x1a7.7 (4)
0x1a0| 00 00 00 00 | .... | unused: 0 0x1a8-0x1ab.7 (4)
| | | [2]{}: entry 0xbc-0x1b7.7 (252)
| | | record{}: 0xbc-0xdb.7 (32)
0x0b0| 18 00 00 00| ....| length: 24 (valid) 0xbc-0xbf.7 (4)
0x0c0|01 02 00 00 |.... | raw_type: "data" (513) (valid) 0xc0-0xc3.7 (4)
| | | type: "flag_data" 0xc4-NA (0)
| | | property_flags{}: 0xc4-0xcb.7 (8)
0x0c0| 02 | . | is_hidden: false 0xc4-0xc4 (0.1)
0x0c0| 02 | . | is_user_immutable: false 0xc4.1-0xc4.1 (0.1)
0x0c0| 02 | . | is_system_immutable: false 0xc4.2-0xc4.2 (0.1)
0x0c0| 02 | . | is_package: false 0xc4.3-0xc4.3 (0.1)
0x0c0| 02 | . | is_volume: false 0xc4.4-0xc4.4 (0.1)
0x0c0| 02 | . | is_symbolic_link: false 0xc4.5-0xc4.5 (0.1)
0x0c0| 02 | . | is_directory: true 0xc4.6-0xc4.6 (0.1)
0x0c0| 02 | . | is_regular_file: false 0xc4.7-0xc4.7 (0.1)
0x0c0| 00 | . | is_alias_file: false 0xc5-0xc5 (0.1)
0x0c0| 00 | . | is_executable: false 0xc5.1-0xc5.1 (0.1)
0x0c0| 00 | . | is_writeable: false 0xc5.2-0xc5.2 (0.1)
0x0c0| 00 | . | is_readable: false 0xc5.3-0xc5.3 (0.1)
0x0c0| 00 | . | can_set_hidden_extension: false 0xc5.4-0xc5.4 (0.1)
0x0c0| 00 | . | is_compressed: false 0xc5.5-0xc5.5 (0.1)
0x0c0| 00 | . | is_application: false 0xc5.6-0xc5.6 (0.1)
0x0c0| 00 | . | has_hidden_extension: false 0xc5.7-0xc5.7 (0.1)
0x0c0| 00 | . | reserved_bits_0: raw bits 0xc6-0xc6.6 (0.7)
0x0c0| 00 | . | is_mount_trigger: false 0xc6.7-0xc6.7 (0.1)
0x0c0| 00 00 00 00 00 | ..... | reserved: raw bits 0xc7-0xcb.7 (5)
| | | enabled_property_flags{}: 0xcc-0xd3.7 (8)
0x0c0| 0f | . | is_hidden: false 0xcc-0xcc (0.1)
0x0c0| 0f | . | is_user_immutable: false 0xcc.1-0xcc.1 (0.1)
0x0c0| 0f | . | is_system_immutable: false 0xcc.2-0xcc.2 (0.1)
0x0c0| 0f | . | is_package: false 0xcc.3-0xcc.3 (0.1)
0x0c0| 0f | . | is_volume: true 0xcc.4-0xcc.4 (0.1)
0x0c0| 0f | . | is_symbolic_link: true 0xcc.5-0xcc.5 (0.1)
0x0c0| 0f | . | is_directory: true 0xcc.6-0xcc.6 (0.1)
0x0c0| 0f | . | is_regular_file: true 0xcc.7-0xcc.7 (0.1)
0x0c0| 00 | . | is_alias_file: false 0xcd-0xcd (0.1)
0x0c0| 00 | . | is_executable: false 0xcd.1-0xcd.1 (0.1)
0x0c0| 00 | . | is_writeable: false 0xcd.2-0xcd.2 (0.1)
0x0c0| 00 | . | is_readable: false 0xcd.3-0xcd.3 (0.1)
0x0c0| 00 | . | can_set_hidden_extension: false 0xcd.4-0xcd.4 (0.1)
0x0c0| 00 | . | is_compressed: false 0xcd.5-0xcd.5 (0.1)
0x0c0| 00 | . | is_application: false 0xcd.6-0xcd.6 (0.1)
0x0c0| 00 | . | has_hidden_extension: false 0xcd.7-0xcd.7 (0.1)
0x0c0| 00 | . | reserved_bits_0: raw bits 0xce-0xce.6 (0.7)
0x0c0| 00 | . | is_mount_trigger: false 0xce.7-0xce.7 (0.1)
0x0c0| 00| .| reserved: raw bits 0xcf-0xd3.7 (5)
0x060| 00 00 00 | ... | alignment_bytes: raw bits 0x69-0x6c (3)
0x070| 24 00 00 00 | $... | offset: 36 0x78-0x7c (4)
0x060| 08 00 00 00| ....| length: 8 0x6c-0x70 (4)
0x070|01 06 00 00 |.... | type: "array" (1537) (Array of 4-byte offsets to data items) 0x70-0x74 (4)
0x190| 04 10 00 00 | .... | key: "target_path" (4100) (Array of individual path components) 0x194-0x198 (4)
0x190| 3c 00 00 00 | <... | offset_to_record: 60 0x198-0x19c (4)
0x190| 00 00 00 00| ....| unused: 0 0x19c-0x1a0 (4)
| | | [1]{}: entry 0x7c-0x1ac (304)
| | | record{}: 0x7c-0xac (48)
| | | data[0:2]: 0x7c-0xac (48)
| | | [0]{}: element 0x7c-0xa8 (44)
| | | record{}: 0x7c-0x8c (16)
0x070| 08 00 00 00| ....| length: 8 0x7c-0x80 (4)
0x080|04 03 00 00 |.... | type: "long" (772) ((signed 64-bit) 8-byte number) 0x80-0x84 (4)
0x080| 67 f5 50 03 00 00 00 00 | g.P..... | data: 55637351 0x84-0x8c (8)
0x0a0| 4c 00 00 00 | L... | offset: 76 0xa4-0xa8 (4)
| | | [1]{}: element 0x8c-0xac (32)
| | | record{}: 0x8c-0x9c (16)
0x080| 08 00 00 00| ....| length: 8 0x8c-0x90 (4)
0x090|04 03 00 00 |.... | type: "long" (772) ((signed 64-bit) 8-byte number) 0x90-0x94 (4)
0x090| fb e9 3d 03 00 00 00 00 | ..=..... | data: 54389243 0x94-0x9c (8)
0x0a0| 5c 00 00 00 | \... | offset: 92 0xa8-0xac (4)
0x090| 08 00 00 00| ....| length: 8 0x9c-0xa0 (4)
0x0a0|01 06 00 00 |.... | type: "array" (1537) (Array of 4-byte offsets to data items) 0xa0-0xa4 (4)
0x1a0|05 10 00 00 |.... | key: "target_cnid_path" (4101) (Array of CNIDs) 0x1a0-0x1a4 (4)
0x1a0| 6c 00 00 00 | l... | offset_to_record: 108 0x1a4-0x1a8 (4)
0x1a0| 00 00 00 00 | .... | unused: 0 0x1a8-0x1ac (4)
| | | [2]{}: entry 0xbc-0x1b8 (252)
| | | record{}: 0xbc-0xdc (32)
0x0b0| 18 00 00 00| ....| length: 24 (valid) 0xbc-0xc0 (4)
0x0c0|01 02 00 00 |.... | raw_type: "data" (513) (valid) 0xc0-0xc4 (4)
| | | type: "flag_data"
| | | property_flags{}: 0xc4-0xcc (8)
0x0c0| 02 | . | is_hidden: false 0xc4-0xc4.1 (0.1)
0x0c0| 02 | . | is_user_immutable: false 0xc4.1-0xc4.2 (0.1)
0x0c0| 02 | . | is_system_immutable: false 0xc4.2-0xc4.3 (0.1)
0x0c0| 02 | . | is_package: false 0xc4.3-0xc4.4 (0.1)
0x0c0| 02 | . | is_volume: false 0xc4.4-0xc4.5 (0.1)
0x0c0| 02 | . | is_symbolic_link: false 0xc4.5-0xc4.6 (0.1)
0x0c0| 02 | . | is_directory: true 0xc4.6-0xc4.7 (0.1)
0x0c0| 02 | . | is_regular_file: false 0xc4.7-0xc5 (0.1)
0x0c0| 00 | . | is_alias_file: false 0xc5-0xc5.1 (0.1)
0x0c0| 00 | . | is_executable: false 0xc5.1-0xc5.2 (0.1)
0x0c0| 00 | . | is_writeable: false 0xc5.2-0xc5.3 (0.1)
0x0c0| 00 | . | is_readable: false 0xc5.3-0xc5.4 (0.1)
0x0c0| 00 | . | can_set_hidden_extension: false 0xc5.4-0xc5.5 (0.1)
0x0c0| 00 | . | is_compressed: false 0xc5.5-0xc5.6 (0.1)
0x0c0| 00 | . | is_application: false 0xc5.6-0xc5.7 (0.1)
0x0c0| 00 | . | has_hidden_extension: false 0xc5.7-0xc6 (0.1)
0x0c0| 00 | . | reserved_bits_0: raw bits 0xc6-0xc6.7 (0.7)
0x0c0| 00 | . | is_mount_trigger: false 0xc6.7-0xc7 (0.1)
0x0c0| 00 00 00 00 00 | ..... | reserved: raw bits 0xc7-0xcc (5)
| | | enabled_property_flags{}: 0xcc-0xd4 (8)
0x0c0| 0f | . | is_hidden: false 0xcc-0xcc.1 (0.1)
0x0c0| 0f | . | is_user_immutable: false 0xcc.1-0xcc.2 (0.1)
0x0c0| 0f | . | is_system_immutable: false 0xcc.2-0xcc.3 (0.1)
0x0c0| 0f | . | is_package: false 0xcc.3-0xcc.4 (0.1)
0x0c0| 0f | . | is_volume: true 0xcc.4-0xcc.5 (0.1)
0x0c0| 0f | . | is_symbolic_link: true 0xcc.5-0xcc.6 (0.1)
0x0c0| 0f | . | is_directory: true 0xcc.6-0xcc.7 (0.1)
0x0c0| 0f | . | is_regular_file: true 0xcc.7-0xcd (0.1)
0x0c0| 00 | . | is_alias_file: false 0xcd-0xcd.1 (0.1)
0x0c0| 00 | . | is_executable: false 0xcd.1-0xcd.2 (0.1)
0x0c0| 00 | . | is_writeable: false 0xcd.2-0xcd.3 (0.1)
0x0c0| 00 | . | is_readable: false 0xcd.3-0xcd.4 (0.1)
0x0c0| 00 | . | can_set_hidden_extension: false 0xcd.4-0xcd.5 (0.1)
0x0c0| 00 | . | is_compressed: false 0xcd.5-0xcd.6 (0.1)
0x0c0| 00 | . | is_application: false 0xcd.6-0xcd.7 (0.1)
0x0c0| 00 | . | has_hidden_extension: false 0xcd.7-0xce (0.1)
0x0c0| 00 | . | reserved_bits_0: raw bits 0xce-0xce.7 (0.7)
0x0c0| 00 | . | is_mount_trigger: false 0xce.7-0xcf (0.1)
0x0c0| 00| .| reserved: raw bits 0xcf-0xd4 (5)
0x0d0|00 00 00 00 |.... |
0x0d0| 00 00 00 00 00 00 00 00 | ........ | reserved: raw bits 0xd4-0xdb.7 (8)
0x1a0| 10 10 00 00| ....| key: "target_flags" (4112) (flag bitfield) 0x1ac-0x1af.7 (4)
0x1b0|8c 00 00 00 |.... | offset_to_record: 140 0x1b0-0x1b3.7 (4)
0x1b0| 00 00 00 00 | .... | unused: 0 0x1b4-0x1b7.7 (4)
| | | [3]{}: entry 0xac-0x1c3.7 (280)
| | | record{}: 0xac-0xbb.7 (16)
0x0a0| 08 00 00 00| ....| length: 8 0xac-0xaf.7 (4)
0x0b0|00 04 00 00 |.... | type: "date" (1024) (Big-endian IEEE double precision seconds since 2001-01-01 00:00:00 UTC) 0xb0-0xb3.7 (4)
0x0b0| 41 c4 81 02 d0 00 00 00 | A....... | data: 6.87998368e+08 (2022-10-20T22:39:28Z) 0xb4-0xbb.7 (8)
0x1b0| 40 10 00 00 | @... | key: "target_creation_date" (4160) (Date) 0x1b8-0x1bb.7 (4)
0x1b0| 7c 00 00 00| |...| offset_to_record: 124 0x1bc-0x1bf.7 (4)
0x1c0|00 00 00 00 |.... | unused: 0 0x1c0-0x1c3.7 (4)
| | | [4]{}: entry 0x16c-0x1cf.7 (100)
| | | record{}: 0x16c-0x177.7 (12)
0x160| 01 00 00 00| ....| length: 1 0x16c-0x16f.7 (4)
0x170|01 01 00 00 |.... | type: "string" (257) (UTF-8 String) 0x170-0x173.7 (4)
0x170| 2f | / | data: "/" 0x174-0x174.7 (1)
0x170| 00 00 00 | ... | alignment_bytes: raw bits 0x175-0x177.7 (3)
0x1c0| 02 20 00 00 | . .. | key: "volume_path" (8194) (Array of individual path components) 0x1c4-0x1c7.7 (4)
0x1c0| 3c 01 00 00 | <... | offset_to_record: 316 0x1c8-0x1cb.7 (4)
0x1c0| 00 00 00 00| ....| unused: 0 0x1cc-0x1cf.7 (4)
| | | [5]{}: entry 0xdc-0x1db.7 (256)
| | | record{}: 0xdc-0xeb.7 (16)
0x0d0| 08 00 00 00| ....| length: 8 0xdc-0xdf.7 (4)
0x0e0|01 09 00 00 |.... | type: "url" (2305) (UTF-8 string) 0xe0-0xe3.7 (4)
0x0e0| 66 69 6c 65 3a 2f 2f 2f | file:/// | data: "file:///" 0xe4-0xeb.7 (8)
0x1d0|05 20 00 00 |. .. | key: "volume_url" (8197) (URL of volume root) 0x1d0-0x1d3.7 (4)
0x1d0| ac 00 00 00 | .... | offset_to_record: 172 0x1d4-0x1d7.7 (4)
0x1d0| 00 00 00 00 | .... | unused: 0 0x1d8-0x1db.7 (4)
| | | [6]{}: entry 0xec-0x1e7.7 (252)
| | | record{}: 0xec-0x103.7 (24)
0x0e0| 0c 00 00 00| ....| length: 12 0xec-0xef.7 (4)
0x0f0|01 01 00 00 |.... | type: "string" (257) (UTF-8 String) 0xf0-0xf3.7 (4)
0x0f0| 4d 61 63 69 6e 74 6f 73 68 20 48 44| Macintosh HD| data: "Macintosh HD" 0xf4-0xff.7 (12)
0x100|08 00 00 00 |.... | alignment_bytes: raw bits 0x100-0x103.7 (4)
0x1d0| 10 20 00 00| . ..| key: "volume_name" (8208) (String) 0x1dc-0x1df.7 (4)
0x1e0|bc 00 00 00 |.... | offset_to_record: 188 0x1e0-0x1e3.7 (4)
0x1e0| 00 00 00 00 | .... | unused: 0 0x1e4-0x1e7.7 (4)
| | | [7]{}: entry 0x120-0x1f3.7 (212)
| | | record{}: 0x120-0x14f.7 (48)
0x120|24 00 00 00 |$... | length: 36 0x120-0x123.7 (4)
0x120| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x124-0x127.7 (4)
0x120| 41 41 41 41 41 41 41 41| AAAAAAAA| data: "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA" 0x128-0x14b.7 (36)
0x0d0| 00 00 00 00 00 00 00 00 | ........ | reserved: raw bits 0xd4-0xdc (8)
0x1a0| 10 10 00 00| ....| key: "target_flags" (4112) (flag bitfield) 0x1ac-0x1b0 (4)
0x1b0|8c 00 00 00 |.... | offset_to_record: 140 0x1b0-0x1b4 (4)
0x1b0| 00 00 00 00 | .... | unused: 0 0x1b4-0x1b8 (4)
| | | [3]{}: entry 0xac-0x1c4 (280)
| | | record{}: 0xac-0xbc (16)
0x0a0| 08 00 00 00| ....| length: 8 0xac-0xb0 (4)
0x0b0|00 04 00 00 |.... | type: "date" (1024) (Big-endian IEEE double precision seconds since 2001-01-01 00:00:00 UTC) 0xb0-0xb4 (4)
0x0b0| 41 c4 81 02 d0 00 00 00 | A....... | data: 6.87998368e+08 (2022-10-20T22:39:28Z) 0xb4-0xbc (8)
0x1b0| 40 10 00 00 | @... | key: "target_creation_date" (4160) (Date) 0x1b8-0x1bc (4)
0x1b0| 7c 00 00 00| |...| offset_to_record: 124 0x1bc-0x1c0 (4)
0x1c0|00 00 00 00 |.... | unused: 0 0x1c0-0x1c4 (4)
| | | [4]{}: entry 0x16c-0x1d0 (100)
| | | record{}: 0x16c-0x178 (12)
0x160| 01 00 00 00| ....| length: 1 0x16c-0x170 (4)
0x170|01 01 00 00 |.... | type: "string" (257) (UTF-8 String) 0x170-0x174 (4)
0x170| 2f | / | data: "/" 0x174-0x175 (1)
0x170| 00 00 00 | ... | alignment_bytes: raw bits 0x175-0x178 (3)
0x1c0| 02 20 00 00 | . .. | key: "volume_path" (8194) (Array of individual path components) 0x1c4-0x1c8 (4)
0x1c0| 3c 01 00 00 | <... | offset_to_record: 316 0x1c8-0x1cc (4)
0x1c0| 00 00 00 00| ....| unused: 0 0x1cc-0x1d0 (4)
| | | [5]{}: entry 0xdc-0x1dc (256)
| | | record{}: 0xdc-0xec (16)
0x0d0| 08 00 00 00| ....| length: 8 0xdc-0xe0 (4)
0x0e0|01 09 00 00 |.... | type: "url" (2305) (UTF-8 string) 0xe0-0xe4 (4)
0x0e0| 66 69 6c 65 3a 2f 2f 2f | file:/// | data: "file:///" 0xe4-0xec (8)
0x1d0|05 20 00 00 |. .. | key: "volume_url" (8197) (URL of volume root) 0x1d0-0x1d4 (4)
0x1d0| ac 00 00 00 | .... | offset_to_record: 172 0x1d4-0x1d8 (4)
0x1d0| 00 00 00 00 | .... | unused: 0 0x1d8-0x1dc (4)
| | | [6]{}: entry 0xec-0x1e8 (252)
| | | record{}: 0xec-0x104 (24)
0x0e0| 0c 00 00 00| ....| length: 12 0xec-0xf0 (4)
0x0f0|01 01 00 00 |.... | type: "string" (257) (UTF-8 String) 0xf0-0xf4 (4)
0x0f0| 4d 61 63 69 6e 74 6f 73 68 20 48 44| Macintosh HD| data: "Macintosh HD" 0xf4-0x100 (12)
0x100|08 00 00 00 |.... | alignment_bytes: raw bits 0x100-0x104 (4)
0x1d0| 10 20 00 00| . ..| key: "volume_name" (8208) (String) 0x1dc-0x1e0 (4)
0x1e0|bc 00 00 00 |.... | offset_to_record: 188 0x1e0-0x1e4 (4)
0x1e0| 00 00 00 00 | .... | unused: 0 0x1e4-0x1e8 (4)
| | | [7]{}: entry 0x120-0x1f4 (212)
| | | record{}: 0x120-0x150 (48)
0x120|24 00 00 00 |$... | length: 36 0x120-0x124 (4)
0x120| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x124-0x128 (4)
0x120| 41 41 41 41 41 41 41 41| AAAAAAAA| data: "AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA" 0x128-0x14c (36)
0x130|2d 41 41 41 41 2d 41 41 41 41 2d 41 41 41 41 2d|-AAAA-AAAA-AAAA-|
0x140|41 41 41 41 41 41 41 41 41 41 41 41 |AAAAAAAAAAAA |
0x140| 18 00 00 00| ....| alignment_bytes: raw bits 0x14c-0x14f.7 (4)
0x1e0| 11 20 00 00 | . .. | key: "volume_uuid" (8209) (String UUID) 0x1e8-0x1eb.7 (4)
0x1e0| f0 00 00 00| ....| offset_to_record: 240 0x1ec-0x1ef.7 (4)
0x1f0|00 00 00 00 |.... | unused: 0 0x1f0-0x1f3.7 (4)
| | | [8]{}: entry 0x100-0x1ff.7 (256)
| | | record{}: 0x100-0x10f.7 (16)
0x100|08 00 00 00 |.... | length: 8 0x100-0x103.7 (4)
0x100| 04 03 00 00 | .... | type: "long" (772) ((signed 64-bit) 8-byte number) 0x104-0x107.7 (4)
0x100| 00 a0 20 68 74 00 00 00| .. ht...| data: 499963174912 0x108-0x10f.7 (8)
0x1f0| 12 20 00 00 | . .. | key: "volume_size" (8210) (8-byte integer) 0x1f4-0x1f7.7 (4)
0x1f0| d0 00 00 00 | .... | offset_to_record: 208 0x1f8-0x1fb.7 (4)
0x1f0| 00 00 00 00| ....| unused: 0 0x1fc-0x1ff.7 (4)
| | | [9]{}: entry 0x110-0x20b.7 (252)
| | | record{}: 0x110-0x11f.7 (16)
0x110|08 00 00 00 |.... | length: 8 0x110-0x113.7 (4)
0x110| 00 04 00 00 | .... | type: "date" (1024) (Big-endian IEEE double precision seconds since 2001-01-01 00:00:00 UTC) 0x114-0x117.7 (4)
0x110| 41 c1 de 44 80 00 00 00| A..D....| data: 5.995584e+08 (2020-01-01T08:00:00Z) 0x118-0x11f.7 (8)
0x200|13 20 00 00 |. .. | key: "volume_creation_date" (8211) (Date) 0x200-0x203.7 (4)
0x200| e0 00 00 00 | .... | offset_to_record: 224 0x204-0x207.7 (4)
0x200| 00 00 00 00 | .... | unused: 0 0x208-0x20b.7 (4)
| | | [10]{}: entry 0x14c-0x217.7 (204)
| | | record{}: 0x14c-0x16b.7 (32)
0x140| 18 00 00 00| ....| length: 24 (valid) 0x14c-0x14f.7 (4)
0x150|01 02 00 00 |.... | raw_type: "data" (513) (valid) 0x150-0x153.7 (4)
| | | type: "flag_data" 0x154-NA (0)
| | | property_flags{}: 0x154-0x15b.7 (8)
0x150| 81 | . | is_internal: true 0x154-0x154 (0.1)
0x150| 81 | . | is_removable: false 0x154.1-0x154.1 (0.1)
0x150| 81 | . | is_ejectable: false 0x154.2-0x154.2 (0.1)
0x150| 81 | . | is_quarantined: false 0x154.3-0x154.3 (0.1)
0x150| 81 | . | is_read_only: false 0x154.4-0x154.4 (0.1)
0x150| 81 | . | dont_browse: false 0x154.5-0x154.5 (0.1)
0x150| 81 | . | is_automount: false 0x154.6-0x154.6 (0.1)
0x150| 81 | . | is_local: true 0x154.7-0x154.7 (0.1)
0x150| 00 | . | is_dvd: false 0x155-0x155 (0.1)
0x150| 00 | . | is_cd: false 0x155.1-0x155.1 (0.1)
0x150| 00 | . | is_idisk: false 0x155.2-0x155.2 (0.1)
0x150| 00 | . | is_ipod: false 0x155.3-0x155.3 (0.1)
0x150| 00 | . | is_local_idisk_mirror: false 0x155.4-0x155.4 (0.1)
0x150| 00 | . | is_file_vault: false 0x155.5-0x155.5 (0.1)
0x150| 00 | . | is_disk_image: false 0x155.6-0x155.6 (0.1)
0x150| 00 | . | is_external: false 0x155.7-0x155.7 (0.1)
0x150| 00 | . | reserved_0: raw bits 0x156-0x156.6 (0.7)
0x150| 00 | . | is_device_file_system: false 0x156.7-0x156.7 (0.1)
0x150| 00 | . | reserved_1: raw bits 0x157-0x157.7 (1)
0x150| 01 | . | supports_read_dir_attr: false 0x158-0x158 (0.1)
0x150| 01 | . | supports_copy_file: false 0x158.1-0x158.1 (0.1)
0x150| 01 | . | supports_deny_modes: false 0x158.2-0x158.2 (0.1)
0x150| 01 | . | supports_symbolic_links: false 0x158.3-0x158.3 (0.1)
0x150| 01 | . | reserved_2: false 0x158.4-0x158.4 (0.1)
0x150| 01 | . | supports_exchange: false 0x158.5-0x158.5 (0.1)
0x150| 01 | . | supports_search_fs: false 0x158.6-0x158.6 (0.1)
0x150| 01 | . | supports_persistent_ids: true 0x158.7-0x158.7 (0.1)
0x150| 00 | . | supports_extended_security: false 0x159-0x159 (0.1)
0x150| 00 | . | has_no_root_directory_times: false 0x159.1-0x159.1 (0.1)
0x150| 00 | . | supports_flock: false 0x159.2-0x159.2 (0.1)
0x150| 00 | . | supports_case_preserved_names: false 0x159.3-0x159.3 (0.1)
0x150| 00 | . | supports_case_sensitive_names: false 0x159.4-0x159.4 (0.1)
0x150| 00 | . | supports_fast_stat_fs: false 0x159.5-0x159.5 (0.1)
0x150| 00 | . | supports_rename: false 0x159.6-0x159.6 (0.1)
0x150| 00 | . | supports_journaling: false 0x159.7-0x159.7 (0.1)
0x150| 00 | . | supports_zero_runs: false 0x15a-0x15a (0.1)
0x150| 00 | . | supports_sparse_files: false 0x15a.1-0x15a.1 (0.1)
0x150| 00 | . | is_journaling: false 0x15a.2-0x15a.2 (0.1)
0x150| 00 | . | reserved_3: false 0x15a.3-0x15a.3 (0.1)
0x150| 00 | . | supports_path_from_id: false 0x15a.4-0x15a.4 (0.1)
0x150| 00 | . | supports_mandatory_byte_range_locks: false 0x15a.5-0x15a.5 (0.1)
0x150| 00 | . | supports_hard_links: false 0x15a.6-0x15a.6 (0.1)
0x150| 00 | . | supports_2_tb_file_size: false 0x15a.7-0x15a.7 (0.1)
0x150| 00 | . | reserved_4: raw bits 0x15b-0x15b.2 (0.3)
0x150| 00 | . | has64_bit_object_ids: false 0x15b.3-0x15b.3 (0.1)
0x150| 00 | . | supports_decmp_fs_compression: false 0x15b.4-0x15b.4 (0.1)
0x150| 00 | . | supports_hidden_files: false 0x15b.5-0x15b.5 (0.1)
0x150| 00 | . | supports_remote_events: false 0x15b.6-0x15b.6 (0.1)
0x150| 00 | . | supports_volume_sizes: false 0x15b.7-0x15b.7 (0.1)
| | | enabled_property_flags{}: 0x15c-0x163.7 (8)
0x150| ef | . | is_internal: true 0x15c-0x15c (0.1)
0x150| ef | . | is_removable: true 0x15c.1-0x15c.1 (0.1)
0x150| ef | . | is_ejectable: true 0x15c.2-0x15c.2 (0.1)
0x150| ef | . | is_quarantined: false 0x15c.3-0x15c.3 (0.1)
0x150| ef | . | is_read_only: true 0x15c.4-0x15c.4 (0.1)
0x150| ef | . | dont_browse: true 0x15c.5-0x15c.5 (0.1)
0x150| ef | . | is_automount: true 0x15c.6-0x15c.6 (0.1)
0x150| ef | . | is_local: true 0x15c.7-0x15c.7 (0.1)
0x150| 13 | . | is_dvd: false 0x15d-0x15d (0.1)
0x150| 13 | . | is_cd: false 0x15d.1-0x15d.1 (0.1)
0x150| 13 | . | is_idisk: false 0x15d.2-0x15d.2 (0.1)
0x150| 13 | . | is_ipod: true 0x15d.3-0x15d.3 (0.1)
0x150| 13 | . | is_local_idisk_mirror: false 0x15d.4-0x15d.4 (0.1)
0x150| 13 | . | is_file_vault: false 0x15d.5-0x15d.5 (0.1)
0x150| 13 | . | is_disk_image: true 0x15d.6-0x15d.6 (0.1)
0x150| 13 | . | is_external: true 0x15d.7-0x15d.7 (0.1)
0x150| 00 | . | reserved_0: raw bits 0x15e-0x15e.6 (0.7)
0x150| 00 | . | is_device_file_system: false 0x15e.7-0x15e.7 (0.1)
0x150| 00| .| reserved_1: raw bits 0x15f-0x15f.7 (1)
0x160|01 |. | supports_read_dir_attr: false 0x160-0x160 (0.1)
0x160|01 |. | supports_copy_file: false 0x160.1-0x160.1 (0.1)
0x160|01 |. | supports_deny_modes: false 0x160.2-0x160.2 (0.1)
0x160|01 |. | supports_symbolic_links: false 0x160.3-0x160.3 (0.1)
0x160|01 |. | reserved_2: false 0x160.4-0x160.4 (0.1)
0x160|01 |. | supports_exchange: false 0x160.5-0x160.5 (0.1)
0x160|01 |. | supports_search_fs: false 0x160.6-0x160.6 (0.1)
0x160|01 |. | supports_persistent_ids: true 0x160.7-0x160.7 (0.1)
0x160| 00 | . | supports_extended_security: false 0x161-0x161 (0.1)
0x160| 00 | . | has_no_root_directory_times: false 0x161.1-0x161.1 (0.1)
0x160| 00 | . | supports_flock: false 0x161.2-0x161.2 (0.1)
0x160| 00 | . | supports_case_preserved_names: false 0x161.3-0x161.3 (0.1)
0x160| 00 | . | supports_case_sensitive_names: false 0x161.4-0x161.4 (0.1)
0x160| 00 | . | supports_fast_stat_fs: false 0x161.5-0x161.5 (0.1)
0x160| 00 | . | supports_rename: false 0x161.6-0x161.6 (0.1)
0x160| 00 | . | supports_journaling: false 0x161.7-0x161.7 (0.1)
0x160| 00 | . | supports_zero_runs: false 0x162-0x162 (0.1)
0x160| 00 | . | supports_sparse_files: false 0x162.1-0x162.1 (0.1)
0x160| 00 | . | is_journaling: false 0x162.2-0x162.2 (0.1)
0x160| 00 | . | reserved_3: false 0x162.3-0x162.3 (0.1)
0x160| 00 | . | supports_path_from_id: false 0x162.4-0x162.4 (0.1)
0x160| 00 | . | supports_mandatory_byte_range_locks: false 0x162.5-0x162.5 (0.1)
0x160| 00 | . | supports_hard_links: false 0x162.6-0x162.6 (0.1)
0x160| 00 | . | supports_2_tb_file_size: false 0x162.7-0x162.7 (0.1)
0x160| 00 | . | reserved_4: raw bits 0x163-0x163.2 (0.3)
0x160| 00 | . | has64_bit_object_ids: false 0x163.3-0x163.3 (0.1)
0x160| 00 | . | supports_decmp_fs_compression: false 0x163.4-0x163.4 (0.1)
0x160| 00 | . | supports_hidden_files: false 0x163.5-0x163.5 (0.1)
0x160| 00 | . | supports_remote_events: false 0x163.6-0x163.6 (0.1)
0x160| 00 | . | supports_volume_sizes: false 0x163.7-0x163.7 (0.1)
0x160| 00 00 00 00 00 00 00 00 | ........ | reserved: raw bits 0x164-0x16b.7 (8)
0x200| 20 20 00 00| ..| key: "volume_flags" (8224) (flag bitfield) 0x20c-0x20f.7 (4)
0x210|1c 01 00 00 |.... | offset_to_record: 284 0x210-0x213.7 (4)
0x210| 00 00 00 00 | .... | unused: 0 0x214-0x217.7 (4)
| | | [11]{}: entry 0x178-0x223.7 (172)
| | | record{}: 0x178-0x17f.7 (8)
0x170| 00 00 00 00 | .... | length: 0 0x178-0x17b.7 (4)
0x170| 01 05 00 00| ....| type: "boolean_true" (1281) (True) 0x17c-0x17f.7 (4)
0x210| 30 20 00 00 | 0 .. | key: "volume_is_root" (8240) (True if the volume was the filesystem root) 0x218-0x21b.7 (4)
0x210| 48 01 00 00| H...| offset_to_record: 328 0x21c-0x21f.7 (4)
0x220|00 00 00 00 |.... | unused: 0 0x220-0x223.7 (4)
| | | [12]{}: entry 0x34-0x22f.7 (508)
| | | record{}: 0x34-0x3f.7 (12)
0x030| 04 00 00 00 | .... | length: 4 0x34-0x37.7 (4)
0x030| 03 03 00 00 | .... | type: "int" (771) ((signed 32-bit) 4-byte number) 0x38-0x3b.7 (4)
0x030| 00 00 00 20| ... | data: 536870912 0x3c-0x3f.7 (4)
0x220| 10 d0 00 00 | .... | key: "creation_options" (53264) (Integer containing flags passed to CFURLCreateBookmarkData) 0x224-0x227.7 (4)
0x220| 04 00 00 00 | .... | offset_to_record: 4 0x228-0x22b.7 (4)
0x220| 00 00 00 00| ....| unused: 0 0x22c-0x22f.7 (4)
| | | toc_headers[0:1]: 0x180-0x193.7 (20)
| | | [0]{}: toc_header 0x180-0x193.7 (20)
0x180|a8 00 00 00 |.... | toc_size: 168 0x180-0x183.7 (4)
0x180| fe ff ff ff | .... | magic: 4294967294 (valid) 0x184-0x187.7 (4)
0x180| 01 00 00 00 | .... | identifier: 1 0x188-0x18b.7 (4)
0x180| 00 00 00 00| ....| next_toc_offset: 0 0x18c-0x18f.7 (4)
0x190|0d 00 00 00 |.... | num_entries_in_toc: 13 0x190-0x193.7 (4)
0x140| 18 00 00 00| ....| alignment_bytes: raw bits 0x14c-0x150 (4)
0x1e0| 11 20 00 00 | . .. | key: "volume_uuid" (8209) (String UUID) 0x1e8-0x1ec (4)
0x1e0| f0 00 00 00| ....| offset_to_record: 240 0x1ec-0x1f0 (4)
0x1f0|00 00 00 00 |.... | unused: 0 0x1f0-0x1f4 (4)
| | | [8]{}: entry 0x100-0x200 (256)
| | | record{}: 0x100-0x110 (16)
0x100|08 00 00 00 |.... | length: 8 0x100-0x104 (4)
0x100| 04 03 00 00 | .... | type: "long" (772) ((signed 64-bit) 8-byte number) 0x104-0x108 (4)
0x100| 00 a0 20 68 74 00 00 00| .. ht...| data: 499963174912 0x108-0x110 (8)
0x1f0| 12 20 00 00 | . .. | key: "volume_size" (8210) (8-byte integer) 0x1f4-0x1f8 (4)
0x1f0| d0 00 00 00 | .... | offset_to_record: 208 0x1f8-0x1fc (4)
0x1f0| 00 00 00 00| ....| unused: 0 0x1fc-0x200 (4)
| | | [9]{}: entry 0x110-0x20c (252)
| | | record{}: 0x110-0x120 (16)
0x110|08 00 00 00 |.... | length: 8 0x110-0x114 (4)
0x110| 00 04 00 00 | .... | type: "date" (1024) (Big-endian IEEE double precision seconds since 2001-01-01 00:00:00 UTC) 0x114-0x118 (4)
0x110| 41 c1 de 44 80 00 00 00| A..D....| data: 5.995584e+08 (2020-01-01T08:00:00Z) 0x118-0x120 (8)
0x200|13 20 00 00 |. .. | key: "volume_creation_date" (8211) (Date) 0x200-0x204 (4)
0x200| e0 00 00 00 | .... | offset_to_record: 224 0x204-0x208 (4)
0x200| 00 00 00 00 | .... | unused: 0 0x208-0x20c (4)
| | | [10]{}: entry 0x14c-0x218 (204)
| | | record{}: 0x14c-0x16c (32)
0x140| 18 00 00 00| ....| length: 24 (valid) 0x14c-0x150 (4)
0x150|01 02 00 00 |.... | raw_type: "data" (513) (valid) 0x150-0x154 (4)
| | | type: "flag_data"
| | | property_flags{}: 0x154-0x15c (8)
0x150| 81 | . | is_internal: true 0x154-0x154.1 (0.1)
0x150| 81 | . | is_removable: false 0x154.1-0x154.2 (0.1)
0x150| 81 | . | is_ejectable: false 0x154.2-0x154.3 (0.1)
0x150| 81 | . | is_quarantined: false 0x154.3-0x154.4 (0.1)
0x150| 81 | . | is_read_only: false 0x154.4-0x154.5 (0.1)
0x150| 81 | . | dont_browse: false 0x154.5-0x154.6 (0.1)
0x150| 81 | . | is_automount: false 0x154.6-0x154.7 (0.1)
0x150| 81 | . | is_local: true 0x154.7-0x155 (0.1)
0x150| 00 | . | is_dvd: false 0x155-0x155.1 (0.1)
0x150| 00 | . | is_cd: false 0x155.1-0x155.2 (0.1)
0x150| 00 | . | is_idisk: false 0x155.2-0x155.3 (0.1)
0x150| 00 | . | is_ipod: false 0x155.3-0x155.4 (0.1)
0x150| 00 | . | is_local_idisk_mirror: false 0x155.4-0x155.5 (0.1)
0x150| 00 | . | is_file_vault: false 0x155.5-0x155.6 (0.1)
0x150| 00 | . | is_disk_image: false 0x155.6-0x155.7 (0.1)
0x150| 00 | . | is_external: false 0x155.7-0x156 (0.1)
0x150| 00 | . | reserved_0: raw bits 0x156-0x156.7 (0.7)
0x150| 00 | . | is_device_file_system: false 0x156.7-0x157 (0.1)
0x150| 00 | . | reserved_1: raw bits 0x157-0x158 (1)
0x150| 01 | . | supports_read_dir_attr: false 0x158-0x158.1 (0.1)
0x150| 01 | . | supports_copy_file: false 0x158.1-0x158.2 (0.1)
0x150| 01 | . | supports_deny_modes: false 0x158.2-0x158.3 (0.1)
0x150| 01 | . | supports_symbolic_links: false 0x158.3-0x158.4 (0.1)
0x150| 01 | . | reserved_2: false 0x158.4-0x158.5 (0.1)
0x150| 01 | . | supports_exchange: false 0x158.5-0x158.6 (0.1)
0x150| 01 | . | supports_search_fs: false 0x158.6-0x158.7 (0.1)
0x150| 01 | . | supports_persistent_ids: true 0x158.7-0x159 (0.1)
0x150| 00 | . | supports_extended_security: false 0x159-0x159.1 (0.1)
0x150| 00 | . | has_no_root_directory_times: false 0x159.1-0x159.2 (0.1)
0x150| 00 | . | supports_flock: false 0x159.2-0x159.3 (0.1)
0x150| 00 | . | supports_case_preserved_names: false 0x159.3-0x159.4 (0.1)
0x150| 00 | . | supports_case_sensitive_names: false 0x159.4-0x159.5 (0.1)
0x150| 00 | . | supports_fast_stat_fs: false 0x159.5-0x159.6 (0.1)
0x150| 00 | . | supports_rename: false 0x159.6-0x159.7 (0.1)
0x150| 00 | . | supports_journaling: false 0x159.7-0x15a (0.1)
0x150| 00 | . | supports_zero_runs: false 0x15a-0x15a.1 (0.1)
0x150| 00 | . | supports_sparse_files: false 0x15a.1-0x15a.2 (0.1)
0x150| 00 | . | is_journaling: false 0x15a.2-0x15a.3 (0.1)
0x150| 00 | . | reserved_3: false 0x15a.3-0x15a.4 (0.1)
0x150| 00 | . | supports_path_from_id: false 0x15a.4-0x15a.5 (0.1)
0x150| 00 | . | supports_mandatory_byte_range_locks: false 0x15a.5-0x15a.6 (0.1)
0x150| 00 | . | supports_hard_links: false 0x15a.6-0x15a.7 (0.1)
0x150| 00 | . | supports_2_tb_file_size: false 0x15a.7-0x15b (0.1)
0x150| 00 | . | reserved_4: raw bits 0x15b-0x15b.3 (0.3)
0x150| 00 | . | has64_bit_object_ids: false 0x15b.3-0x15b.4 (0.1)
0x150| 00 | . | supports_decmp_fs_compression: false 0x15b.4-0x15b.5 (0.1)
0x150| 00 | . | supports_hidden_files: false 0x15b.5-0x15b.6 (0.1)
0x150| 00 | . | supports_remote_events: false 0x15b.6-0x15b.7 (0.1)
0x150| 00 | . | supports_volume_sizes: false 0x15b.7-0x15c (0.1)
| | | enabled_property_flags{}: 0x15c-0x164 (8)
0x150| ef | . | is_internal: true 0x15c-0x15c.1 (0.1)
0x150| ef | . | is_removable: true 0x15c.1-0x15c.2 (0.1)
0x150| ef | . | is_ejectable: true 0x15c.2-0x15c.3 (0.1)
0x150| ef | . | is_quarantined: false 0x15c.3-0x15c.4 (0.1)
0x150| ef | . | is_read_only: true 0x15c.4-0x15c.5 (0.1)
0x150| ef | . | dont_browse: true 0x15c.5-0x15c.6 (0.1)
0x150| ef | . | is_automount: true 0x15c.6-0x15c.7 (0.1)
0x150| ef | . | is_local: true 0x15c.7-0x15d (0.1)
0x150| 13 | . | is_dvd: false 0x15d-0x15d.1 (0.1)
0x150| 13 | . | is_cd: false 0x15d.1-0x15d.2 (0.1)
0x150| 13 | . | is_idisk: false 0x15d.2-0x15d.3 (0.1)
0x150| 13 | . | is_ipod: true 0x15d.3-0x15d.4 (0.1)
0x150| 13 | . | is_local_idisk_mirror: false 0x15d.4-0x15d.5 (0.1)
0x150| 13 | . | is_file_vault: false 0x15d.5-0x15d.6 (0.1)
0x150| 13 | . | is_disk_image: true 0x15d.6-0x15d.7 (0.1)
0x150| 13 | . | is_external: true 0x15d.7-0x15e (0.1)
0x150| 00 | . | reserved_0: raw bits 0x15e-0x15e.7 (0.7)
0x150| 00 | . | is_device_file_system: false 0x15e.7-0x15f (0.1)
0x150| 00| .| reserved_1: raw bits 0x15f-0x160 (1)
0x160|01 |. | supports_read_dir_attr: false 0x160-0x160.1 (0.1)
0x160|01 |. | supports_copy_file: false 0x160.1-0x160.2 (0.1)
0x160|01 |. | supports_deny_modes: false 0x160.2-0x160.3 (0.1)
0x160|01 |. | supports_symbolic_links: false 0x160.3-0x160.4 (0.1)
0x160|01 |. | reserved_2: false 0x160.4-0x160.5 (0.1)
0x160|01 |. | supports_exchange: false 0x160.5-0x160.6 (0.1)
0x160|01 |. | supports_search_fs: false 0x160.6-0x160.7 (0.1)
0x160|01 |. | supports_persistent_ids: true 0x160.7-0x161 (0.1)
0x160| 00 | . | supports_extended_security: false 0x161-0x161.1 (0.1)
0x160| 00 | . | has_no_root_directory_times: false 0x161.1-0x161.2 (0.1)
0x160| 00 | . | supports_flock: false 0x161.2-0x161.3 (0.1)
0x160| 00 | . | supports_case_preserved_names: false 0x161.3-0x161.4 (0.1)
0x160| 00 | . | supports_case_sensitive_names: false 0x161.4-0x161.5 (0.1)
0x160| 00 | . | supports_fast_stat_fs: false 0x161.5-0x161.6 (0.1)
0x160| 00 | . | supports_rename: false 0x161.6-0x161.7 (0.1)
0x160| 00 | . | supports_journaling: false 0x161.7-0x162 (0.1)
0x160| 00 | . | supports_zero_runs: false 0x162-0x162.1 (0.1)
0x160| 00 | . | supports_sparse_files: false 0x162.1-0x162.2 (0.1)
0x160| 00 | . | is_journaling: false 0x162.2-0x162.3 (0.1)
0x160| 00 | . | reserved_3: false 0x162.3-0x162.4 (0.1)
0x160| 00 | . | supports_path_from_id: false 0x162.4-0x162.5 (0.1)
0x160| 00 | . | supports_mandatory_byte_range_locks: false 0x162.5-0x162.6 (0.1)
0x160| 00 | . | supports_hard_links: false 0x162.6-0x162.7 (0.1)
0x160| 00 | . | supports_2_tb_file_size: false 0x162.7-0x163 (0.1)
0x160| 00 | . | reserved_4: raw bits 0x163-0x163.3 (0.3)
0x160| 00 | . | has64_bit_object_ids: false 0x163.3-0x163.4 (0.1)
0x160| 00 | . | supports_decmp_fs_compression: false 0x163.4-0x163.5 (0.1)
0x160| 00 | . | supports_hidden_files: false 0x163.5-0x163.6 (0.1)
0x160| 00 | . | supports_remote_events: false 0x163.6-0x163.7 (0.1)
0x160| 00 | . | supports_volume_sizes: false 0x163.7-0x164 (0.1)
0x160| 00 00 00 00 00 00 00 00 | ........ | reserved: raw bits 0x164-0x16c (8)
0x200| 20 20 00 00| ..| key: "volume_flags" (8224) (flag bitfield) 0x20c-0x210 (4)
0x210|1c 01 00 00 |.... | offset_to_record: 284 0x210-0x214 (4)
0x210| 00 00 00 00 | .... | unused: 0 0x214-0x218 (4)
| | | [11]{}: entry 0x178-0x224 (172)
| | | record{}: 0x178-0x180 (8)
0x170| 00 00 00 00 | .... | length: 0 0x178-0x17c (4)
0x170| 01 05 00 00| ....| type: "boolean_true" (1281) (True) 0x17c-0x180 (4)
0x210| 30 20 00 00 | 0 .. | key: "volume_is_root" (8240) (True if the volume was the filesystem root) 0x218-0x21c (4)
0x210| 48 01 00 00| H...| offset_to_record: 328 0x21c-0x220 (4)
0x220|00 00 00 00 |.... | unused: 0 0x220-0x224 (4)
| | | [12]{}: entry 0x34-0x230 (508)
| | | record{}: 0x34-0x40 (12)
0x030| 04 00 00 00 | .... | length: 4 0x34-0x38 (4)
0x030| 03 03 00 00 | .... | type: "int" (771) ((signed 32-bit) 4-byte number) 0x38-0x3c (4)
0x030| 00 00 00 20| ... | data: 536870912 0x3c-0x40 (4)
0x220| 10 d0 00 00 | .... | key: "creation_options" (53264) (Integer containing flags passed to CFURLCreateBookmarkData) 0x224-0x228 (4)
0x220| 04 00 00 00 | .... | offset_to_record: 4 0x228-0x22c (4)
0x220| 00 00 00 00| ....| unused: 0 0x22c-0x230 (4)
| | | toc_headers[0:1]: 0x180-0x194 (20)
| | | [0]{}: toc_header 0x180-0x194 (20)
0x180|a8 00 00 00 |.... | toc_size: 168 0x180-0x184 (4)
0x180| fe ff ff ff | .... | magic: 4294967294 (valid) 0x184-0x188 (4)
0x180| 01 00 00 00 | .... | identifier: 1 0x188-0x18c (4)
0x180| 00 00 00 00| ....| next_toc_offset: 0 0x18c-0x190 (4)
0x190|0d 00 00 00 |.... | num_entries_in_toc: 13 0x190-0x194 (4)
$ fq torepr sample1.book
{
"creation_options": 536870912,

View File

@ -1,353 +1,353 @@
$ fq dv sample2.book
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: sample2.book (apple_bookmark) 0x0-0x2ab.7 (684)
| | | header{}: 0x0-0x2f.7 (48)
0x000|62 6f 6f 6b |book | magic: "book" (valid) 0x0-0x3.7 (4)
0x000| ac 02 00 00 | .... | total_size: 684 0x4-0x7.7 (4)
0x000| 00 00 04 10 | .... | unknown: 268697600 0x8-0xb.7 (4)
0x000| 30 00 00 00| 0...| header_size: 48 (valid) 0xc-0xf.7 (4)
0x010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| reserved: raw bits 0x10-0x2f.7 (32)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: sample2.book (apple_bookmark) 0x0-0x2ac (684)
| | | header{}: 0x0-0x30 (48)
0x000|62 6f 6f 6b |book | magic: "book" (valid) 0x0-0x4 (4)
0x000| ac 02 00 00 | .... | total_size: 684 0x4-0x8 (4)
0x000| 00 00 04 10 | .... | unknown: 268697600 0x8-0xc (4)
0x000| 30 00 00 00| 0...| header_size: 48 (valid) 0xc-0x10 (4)
0x010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| reserved: raw bits 0x10-0x30 (32)
0x020|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................|
0x030|90 01 00 00 |.... | first_toc_offset: 400 0x30-0x33.7 (4)
| | | bookmark_entries[0:18]: 0x34-0x2ab.7 (632)
| | | [0]{}: entry 0x40-0x1df.7 (416)
| | | record{}: 0x40-0x8b.7 (76)
| | | data[0:3]: 0x40-0x8b.7 (76)
| | | [0]{}: element 0x40-0x83.7 (68)
| | | record{}: 0x40-0x4f.7 (16)
0x040|05 00 00 00 |.... | length: 5 0x40-0x43.7 (4)
0x040| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x44-0x47.7 (4)
0x040| 55 73 65 72 73 | Users | data: "Users" 0x48-0x4c.7 (5)
0x040| 00 00 00| ...| alignment_bytes: raw bits 0x4d-0x4f.7 (3)
0x080|10 00 00 00 |.... | offset: 16 0x80-0x83.7 (4)
| | | [1]{}: element 0x50-0x87.7 (56)
| | | record{}: 0x50-0x67.7 (24)
0x050|0d 00 00 00 |.... | length: 13 0x50-0x53.7 (4)
0x050| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x54-0x57.7 (4)
0x050| 64 61 76 69 64 6d 63 64| davidmcd| data: "davidmcdonald" 0x58-0x64.7 (13)
0x030|90 01 00 00 |.... | first_toc_offset: 400 0x30-0x34 (4)
| | | bookmark_entries[0:18]: 0x34-0x2ac (632)
| | | [0]{}: entry 0x40-0x1e0 (416)
| | | record{}: 0x40-0x8c (76)
| | | data[0:3]: 0x40-0x8c (76)
| | | [0]{}: element 0x40-0x84 (68)
| | | record{}: 0x40-0x50 (16)
0x040|05 00 00 00 |.... | length: 5 0x40-0x44 (4)
0x040| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x44-0x48 (4)
0x040| 55 73 65 72 73 | Users | data: "Users" 0x48-0x4d (5)
0x040| 00 00 00| ...| alignment_bytes: raw bits 0x4d-0x50 (3)
0x080|10 00 00 00 |.... | offset: 16 0x80-0x84 (4)
| | | [1]{}: element 0x50-0x88 (56)
| | | record{}: 0x50-0x68 (24)
0x050|0d 00 00 00 |.... | length: 13 0x50-0x54 (4)
0x050| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x54-0x58 (4)
0x050| 64 61 76 69 64 6d 63 64| davidmcd| data: "davidmcdonald" 0x58-0x65 (13)
0x060|6f 6e 61 6c 64 |onald |
0x060| 00 00 00 | ... | alignment_bytes: raw bits 0x65-0x67.7 (3)
0x080| 20 00 00 00 | ... | offset: 32 0x84-0x87.7 (4)
| | | [2]{}: element 0x68-0x8b.7 (36)
| | | record{}: 0x68-0x77.7 (16)
0x060| 07 00 00 00 | .... | length: 7 0x68-0x6b.7 (4)
0x060| 01 01 00 00| ....| type: "string" (257) (UTF-8 String) 0x6c-0x6f.7 (4)
0x070|68 78 73 74 6f 72 65 |hxstore | data: "hxstore" 0x70-0x76.7 (7)
0x070| 00 | . | alignment_bytes: raw bits 0x77-0x77.7 (1)
0x080| 38 00 00 00 | 8... | offset: 56 0x88-0x8b.7 (4)
0x070| 0c 00 00 00 | .... | length: 12 0x78-0x7b.7 (4)
0x070| 01 06 00 00| ....| type: "array" (1537) (Array of 4-byte offsets to data items) 0x7c-0x7f.7 (4)
0x1d0| 04 10 00 00 | .... | key: "target_path" (4100) (Array of individual path components) 0x1d4-0x1d7.7 (4)
0x1d0| 48 00 00 00 | H... | offset_to_record: 72 0x1d8-0x1db.7 (4)
0x1d0| 00 00 00 00| ....| unused: 0 0x1dc-0x1df.7 (4)
| | | [1]{}: entry 0x8c-0x1eb.7 (352)
| | | record{}: 0x8c-0xcf.7 (68)
| | | data[0:3]: 0x8c-0xcf.7 (68)
| | | [0]{}: element 0x8c-0xc7.7 (60)
| | | record{}: 0x8c-0x9b.7 (16)
0x080| 08 00 00 00| ....| length: 8 0x8c-0x8f.7 (4)
0x090|04 03 00 00 |.... | type: "long" (772) ((signed 64-bit) 8-byte number) 0x90-0x93.7 (4)
0x090| 0b 5b 00 00 00 00 00 00 | .[...... | data: 23307 0x94-0x9b.7 (8)
0x0c0| 5c 00 00 00 | \... | offset: 92 0xc4-0xc7.7 (4)
| | | [1]{}: element 0x9c-0xcb.7 (48)
| | | record{}: 0x9c-0xab.7 (16)
0x090| 08 00 00 00| ....| length: 8 0x9c-0x9f.7 (4)
0x0a0|04 03 00 00 |.... | type: "long" (772) ((signed 64-bit) 8-byte number) 0xa0-0xa3.7 (4)
0x0a0| 1c 9e 08 00 00 00 00 00 | ........ | data: 564764 0xa4-0xab.7 (8)
0x0c0| 6c 00 00 00 | l... | offset: 108 0xc8-0xcb.7 (4)
| | | [2]{}: element 0xac-0xcf.7 (36)
| | | record{}: 0xac-0xbb.7 (16)
0x0a0| 08 00 00 00| ....| length: 8 0xac-0xaf.7 (4)
0x0b0|04 03 00 00 |.... | type: "long" (772) ((signed 64-bit) 8-byte number) 0xb0-0xb3.7 (4)
0x0b0| c7 c5 44 03 00 00 00 00 | ..D..... | data: 54838727 0xb4-0xbb.7 (8)
0x0c0| 7c 00 00 00| |...| offset: 124 0xcc-0xcf.7 (4)
0x0b0| 0c 00 00 00| ....| length: 12 0xbc-0xbf.7 (4)
0x0c0|01 06 00 00 |.... | type: "array" (1537) (Array of 4-byte offsets to data items) 0xc0-0xc3.7 (4)
0x1e0|05 10 00 00 |.... | key: "target_cnid_path" (4101) (Array of CNIDs) 0x1e0-0x1e3.7 (4)
0x1e0| 8c 00 00 00 | .... | offset_to_record: 140 0x1e4-0x1e7.7 (4)
0x1e0| 00 00 00 00 | .... | unused: 0 0x1e8-0x1eb.7 (4)
| | | [2]{}: entry 0xe0-0x1f7.7 (280)
| | | record{}: 0xe0-0xff.7 (32)
0x0e0|18 00 00 00 |.... | length: 24 (valid) 0xe0-0xe3.7 (4)
0x0e0| 01 02 00 00 | .... | raw_type: "data" (513) (valid) 0xe4-0xe7.7 (4)
| | | type: "flag_data" 0xe8-NA (0)
| | | property_flags{}: 0xe8-0xef.7 (8)
0x0e0| 02 | . | is_hidden: false 0xe8-0xe8 (0.1)
0x0e0| 02 | . | is_user_immutable: false 0xe8.1-0xe8.1 (0.1)
0x0e0| 02 | . | is_system_immutable: false 0xe8.2-0xe8.2 (0.1)
0x0e0| 02 | . | is_package: false 0xe8.3-0xe8.3 (0.1)
0x0e0| 02 | . | is_volume: false 0xe8.4-0xe8.4 (0.1)
0x0e0| 02 | . | is_symbolic_link: false 0xe8.5-0xe8.5 (0.1)
0x0e0| 02 | . | is_directory: true 0xe8.6-0xe8.6 (0.1)
0x0e0| 02 | . | is_regular_file: false 0xe8.7-0xe8.7 (0.1)
0x0e0| 00 | . | is_alias_file: false 0xe9-0xe9 (0.1)
0x0e0| 00 | . | is_executable: false 0xe9.1-0xe9.1 (0.1)
0x0e0| 00 | . | is_writeable: false 0xe9.2-0xe9.2 (0.1)
0x0e0| 00 | . | is_readable: false 0xe9.3-0xe9.3 (0.1)
0x0e0| 00 | . | can_set_hidden_extension: false 0xe9.4-0xe9.4 (0.1)
0x0e0| 00 | . | is_compressed: false 0xe9.5-0xe9.5 (0.1)
0x0e0| 00 | . | is_application: false 0xe9.6-0xe9.6 (0.1)
0x0e0| 00 | . | has_hidden_extension: false 0xe9.7-0xe9.7 (0.1)
0x0e0| 00 | . | reserved_bits_0: raw bits 0xea-0xea.6 (0.7)
0x0e0| 00 | . | is_mount_trigger: false 0xea.7-0xea.7 (0.1)
0x0e0| 00 00 00 00 00| .....| reserved: raw bits 0xeb-0xef.7 (5)
| | | enabled_property_flags{}: 0xf0-0xf7.7 (8)
0x0f0|1f |. | is_hidden: false 0xf0-0xf0 (0.1)
0x0f0|1f |. | is_user_immutable: false 0xf0.1-0xf0.1 (0.1)
0x0f0|1f |. | is_system_immutable: false 0xf0.2-0xf0.2 (0.1)
0x0f0|1f |. | is_package: true 0xf0.3-0xf0.3 (0.1)
0x0f0|1f |. | is_volume: true 0xf0.4-0xf0.4 (0.1)
0x0f0|1f |. | is_symbolic_link: true 0xf0.5-0xf0.5 (0.1)
0x0f0|1f |. | is_directory: true 0xf0.6-0xf0.6 (0.1)
0x0f0|1f |. | is_regular_file: true 0xf0.7-0xf0.7 (0.1)
0x0f0| 02 | . | is_alias_file: false 0xf1-0xf1 (0.1)
0x0f0| 02 | . | is_executable: false 0xf1.1-0xf1.1 (0.1)
0x0f0| 02 | . | is_writeable: false 0xf1.2-0xf1.2 (0.1)
0x0f0| 02 | . | is_readable: false 0xf1.3-0xf1.3 (0.1)
0x0f0| 02 | . | can_set_hidden_extension: false 0xf1.4-0xf1.4 (0.1)
0x0f0| 02 | . | is_compressed: false 0xf1.5-0xf1.5 (0.1)
0x0f0| 02 | . | is_application: true 0xf1.6-0xf1.6 (0.1)
0x0f0| 02 | . | has_hidden_extension: false 0xf1.7-0xf1.7 (0.1)
0x0f0| 00 | . | reserved_bits_0: raw bits 0xf2-0xf2.6 (0.7)
0x0f0| 00 | . | is_mount_trigger: false 0xf2.7-0xf2.7 (0.1)
0x0f0| 00 00 00 00 00 | ..... | reserved: raw bits 0xf3-0xf7.7 (5)
0x0f0| 1a 02 00 00 00 00 00 00| ........| reserved: raw bits 0xf8-0xff.7 (8)
0x1e0| 10 10 00 00| ....| key: "target_flags" (4112) (flag bitfield) 0x1ec-0x1ef.7 (4)
0x1f0|b0 00 00 00 |.... | offset_to_record: 176 0x1f0-0x1f3.7 (4)
0x1f0| 00 00 00 00 | .... | unused: 0 0x1f4-0x1f7.7 (4)
| | | [3]{}: entry 0xd0-0x203.7 (308)
| | | record{}: 0xd0-0xdf.7 (16)
0x0d0|08 00 00 00 |.... | length: 8 0xd0-0xd3.7 (4)
0x0d0| 00 04 00 00 | .... | type: "date" (1024) (Big-endian IEEE double precision seconds since 2001-01-01 00:00:00 UTC) 0xd4-0xd7.7 (4)
0x0d0| 41 c4 8a 17 83 4d f0 44| A....M.D| data: 6.891886146088948e+08 (2022-11-03T17:16:54Z) 0xd8-0xdf.7 (8)
0x1f0| 40 10 00 00 | @... | key: "target_creation_date" (4160) (Date) 0x1f8-0x1fb.7 (4)
0x1f0| a0 00 00 00| ....| offset_to_record: 160 0x1fc-0x1ff.7 (4)
0x200|00 00 00 00 |.... | unused: 0 0x200-0x203.7 (4)
| | | [4]{}: entry 0x1ac-0x20f.7 (100)
| | | record{}: 0x1ac-0x1b7.7 (12)
0x1a0| 01 00 00 00| ....| length: 1 0x1ac-0x1af.7 (4)
0x1b0|01 01 00 00 |.... | type: "string" (257) (UTF-8 String) 0x1b0-0x1b3.7 (4)
0x1b0| 2f | / | data: "/" 0x1b4-0x1b4.7 (1)
0x1b0| 00 00 00 | ... | alignment_bytes: raw bits 0x1b5-0x1b7.7 (3)
0x200| 02 20 00 00 | . .. | key: "volume_path" (8194) (Array of individual path components) 0x204-0x207.7 (4)
0x200| 7c 01 00 00 | |... | offset_to_record: 380 0x208-0x20b.7 (4)
0x200| 00 00 00 00| ....| unused: 0 0x20c-0x20f.7 (4)
| | | [5]{}: entry 0x11c-0x21b.7 (256)
| | | record{}: 0x11c-0x12b.7 (16)
0x110| 08 00 00 00| ....| length: 8 0x11c-0x11f.7 (4)
0x120|01 09 00 00 |.... | type: "url" (2305) (UTF-8 string) 0x120-0x123.7 (4)
0x120| 66 69 6c 65 3a 2f 2f 2f | file:/// | data: "file:///" 0x124-0x12b.7 (8)
0x210|05 20 00 00 |. .. | key: "volume_url" (8197) (URL of volume root) 0x210-0x213.7 (4)
0x210| ec 00 00 00 | .... | offset_to_record: 236 0x214-0x217.7 (4)
0x210| 00 00 00 00 | .... | unused: 0 0x218-0x21b.7 (4)
| | | [6]{}: entry 0x12c-0x227.7 (252)
| | | record{}: 0x12c-0x143.7 (24)
0x120| 0c 00 00 00| ....| length: 12 0x12c-0x12f.7 (4)
0x130|01 01 00 00 |.... | type: "string" (257) (UTF-8 String) 0x130-0x133.7 (4)
0x130| 4d 61 63 69 6e 74 6f 73 68 20 48 44| Macintosh HD| data: "Macintosh HD" 0x134-0x13f.7 (12)
0x140|08 00 00 00 |.... | alignment_bytes: raw bits 0x140-0x143.7 (4)
0x210| 10 20 00 00| . ..| key: "volume_name" (8208) (String) 0x21c-0x21f.7 (4)
0x220|fc 00 00 00 |.... | offset_to_record: 252 0x220-0x223.7 (4)
0x220| 00 00 00 00 | .... | unused: 0 0x224-0x227.7 (4)
| | | [7]{}: entry 0x160-0x233.7 (212)
| | | record{}: 0x160-0x18f.7 (48)
0x160|24 00 00 00 |$... | length: 36 0x160-0x163.7 (4)
0x160| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x164-0x167.7 (4)
0x160| 38 41 38 32 39 41 30 33| 8A829A03| data: "8A829A03-9B24-4085-8051-18978712E4BE" 0x168-0x18b.7 (36)
0x060| 00 00 00 | ... | alignment_bytes: raw bits 0x65-0x68 (3)
0x080| 20 00 00 00 | ... | offset: 32 0x84-0x88 (4)
| | | [2]{}: element 0x68-0x8c (36)
| | | record{}: 0x68-0x78 (16)
0x060| 07 00 00 00 | .... | length: 7 0x68-0x6c (4)
0x060| 01 01 00 00| ....| type: "string" (257) (UTF-8 String) 0x6c-0x70 (4)
0x070|68 78 73 74 6f 72 65 |hxstore | data: "hxstore" 0x70-0x77 (7)
0x070| 00 | . | alignment_bytes: raw bits 0x77-0x78 (1)
0x080| 38 00 00 00 | 8... | offset: 56 0x88-0x8c (4)
0x070| 0c 00 00 00 | .... | length: 12 0x78-0x7c (4)
0x070| 01 06 00 00| ....| type: "array" (1537) (Array of 4-byte offsets to data items) 0x7c-0x80 (4)
0x1d0| 04 10 00 00 | .... | key: "target_path" (4100) (Array of individual path components) 0x1d4-0x1d8 (4)
0x1d0| 48 00 00 00 | H... | offset_to_record: 72 0x1d8-0x1dc (4)
0x1d0| 00 00 00 00| ....| unused: 0 0x1dc-0x1e0 (4)
| | | [1]{}: entry 0x8c-0x1ec (352)
| | | record{}: 0x8c-0xd0 (68)
| | | data[0:3]: 0x8c-0xd0 (68)
| | | [0]{}: element 0x8c-0xc8 (60)
| | | record{}: 0x8c-0x9c (16)
0x080| 08 00 00 00| ....| length: 8 0x8c-0x90 (4)
0x090|04 03 00 00 |.... | type: "long" (772) ((signed 64-bit) 8-byte number) 0x90-0x94 (4)
0x090| 0b 5b 00 00 00 00 00 00 | .[...... | data: 23307 0x94-0x9c (8)
0x0c0| 5c 00 00 00 | \... | offset: 92 0xc4-0xc8 (4)
| | | [1]{}: element 0x9c-0xcc (48)
| | | record{}: 0x9c-0xac (16)
0x090| 08 00 00 00| ....| length: 8 0x9c-0xa0 (4)
0x0a0|04 03 00 00 |.... | type: "long" (772) ((signed 64-bit) 8-byte number) 0xa0-0xa4 (4)
0x0a0| 1c 9e 08 00 00 00 00 00 | ........ | data: 564764 0xa4-0xac (8)
0x0c0| 6c 00 00 00 | l... | offset: 108 0xc8-0xcc (4)
| | | [2]{}: element 0xac-0xd0 (36)
| | | record{}: 0xac-0xbc (16)
0x0a0| 08 00 00 00| ....| length: 8 0xac-0xb0 (4)
0x0b0|04 03 00 00 |.... | type: "long" (772) ((signed 64-bit) 8-byte number) 0xb0-0xb4 (4)
0x0b0| c7 c5 44 03 00 00 00 00 | ..D..... | data: 54838727 0xb4-0xbc (8)
0x0c0| 7c 00 00 00| |...| offset: 124 0xcc-0xd0 (4)
0x0b0| 0c 00 00 00| ....| length: 12 0xbc-0xc0 (4)
0x0c0|01 06 00 00 |.... | type: "array" (1537) (Array of 4-byte offsets to data items) 0xc0-0xc4 (4)
0x1e0|05 10 00 00 |.... | key: "target_cnid_path" (4101) (Array of CNIDs) 0x1e0-0x1e4 (4)
0x1e0| 8c 00 00 00 | .... | offset_to_record: 140 0x1e4-0x1e8 (4)
0x1e0| 00 00 00 00 | .... | unused: 0 0x1e8-0x1ec (4)
| | | [2]{}: entry 0xe0-0x1f8 (280)
| | | record{}: 0xe0-0x100 (32)
0x0e0|18 00 00 00 |.... | length: 24 (valid) 0xe0-0xe4 (4)
0x0e0| 01 02 00 00 | .... | raw_type: "data" (513) (valid) 0xe4-0xe8 (4)
| | | type: "flag_data"
| | | property_flags{}: 0xe8-0xf0 (8)
0x0e0| 02 | . | is_hidden: false 0xe8-0xe8.1 (0.1)
0x0e0| 02 | . | is_user_immutable: false 0xe8.1-0xe8.2 (0.1)
0x0e0| 02 | . | is_system_immutable: false 0xe8.2-0xe8.3 (0.1)
0x0e0| 02 | . | is_package: false 0xe8.3-0xe8.4 (0.1)
0x0e0| 02 | . | is_volume: false 0xe8.4-0xe8.5 (0.1)
0x0e0| 02 | . | is_symbolic_link: false 0xe8.5-0xe8.6 (0.1)
0x0e0| 02 | . | is_directory: true 0xe8.6-0xe8.7 (0.1)
0x0e0| 02 | . | is_regular_file: false 0xe8.7-0xe9 (0.1)
0x0e0| 00 | . | is_alias_file: false 0xe9-0xe9.1 (0.1)
0x0e0| 00 | . | is_executable: false 0xe9.1-0xe9.2 (0.1)
0x0e0| 00 | . | is_writeable: false 0xe9.2-0xe9.3 (0.1)
0x0e0| 00 | . | is_readable: false 0xe9.3-0xe9.4 (0.1)
0x0e0| 00 | . | can_set_hidden_extension: false 0xe9.4-0xe9.5 (0.1)
0x0e0| 00 | . | is_compressed: false 0xe9.5-0xe9.6 (0.1)
0x0e0| 00 | . | is_application: false 0xe9.6-0xe9.7 (0.1)
0x0e0| 00 | . | has_hidden_extension: false 0xe9.7-0xea (0.1)
0x0e0| 00 | . | reserved_bits_0: raw bits 0xea-0xea.7 (0.7)
0x0e0| 00 | . | is_mount_trigger: false 0xea.7-0xeb (0.1)
0x0e0| 00 00 00 00 00| .....| reserved: raw bits 0xeb-0xf0 (5)
| | | enabled_property_flags{}: 0xf0-0xf8 (8)
0x0f0|1f |. | is_hidden: false 0xf0-0xf0.1 (0.1)
0x0f0|1f |. | is_user_immutable: false 0xf0.1-0xf0.2 (0.1)
0x0f0|1f |. | is_system_immutable: false 0xf0.2-0xf0.3 (0.1)
0x0f0|1f |. | is_package: true 0xf0.3-0xf0.4 (0.1)
0x0f0|1f |. | is_volume: true 0xf0.4-0xf0.5 (0.1)
0x0f0|1f |. | is_symbolic_link: true 0xf0.5-0xf0.6 (0.1)
0x0f0|1f |. | is_directory: true 0xf0.6-0xf0.7 (0.1)
0x0f0|1f |. | is_regular_file: true 0xf0.7-0xf1 (0.1)
0x0f0| 02 | . | is_alias_file: false 0xf1-0xf1.1 (0.1)
0x0f0| 02 | . | is_executable: false 0xf1.1-0xf1.2 (0.1)
0x0f0| 02 | . | is_writeable: false 0xf1.2-0xf1.3 (0.1)
0x0f0| 02 | . | is_readable: false 0xf1.3-0xf1.4 (0.1)
0x0f0| 02 | . | can_set_hidden_extension: false 0xf1.4-0xf1.5 (0.1)
0x0f0| 02 | . | is_compressed: false 0xf1.5-0xf1.6 (0.1)
0x0f0| 02 | . | is_application: true 0xf1.6-0xf1.7 (0.1)
0x0f0| 02 | . | has_hidden_extension: false 0xf1.7-0xf2 (0.1)
0x0f0| 00 | . | reserved_bits_0: raw bits 0xf2-0xf2.7 (0.7)
0x0f0| 00 | . | is_mount_trigger: false 0xf2.7-0xf3 (0.1)
0x0f0| 00 00 00 00 00 | ..... | reserved: raw bits 0xf3-0xf8 (5)
0x0f0| 1a 02 00 00 00 00 00 00| ........| reserved: raw bits 0xf8-0x100 (8)
0x1e0| 10 10 00 00| ....| key: "target_flags" (4112) (flag bitfield) 0x1ec-0x1f0 (4)
0x1f0|b0 00 00 00 |.... | offset_to_record: 176 0x1f0-0x1f4 (4)
0x1f0| 00 00 00 00 | .... | unused: 0 0x1f4-0x1f8 (4)
| | | [3]{}: entry 0xd0-0x204 (308)
| | | record{}: 0xd0-0xe0 (16)
0x0d0|08 00 00 00 |.... | length: 8 0xd0-0xd4 (4)
0x0d0| 00 04 00 00 | .... | type: "date" (1024) (Big-endian IEEE double precision seconds since 2001-01-01 00:00:00 UTC) 0xd4-0xd8 (4)
0x0d0| 41 c4 8a 17 83 4d f0 44| A....M.D| data: 6.891886146088948e+08 (2022-11-03T17:16:54Z) 0xd8-0xe0 (8)
0x1f0| 40 10 00 00 | @... | key: "target_creation_date" (4160) (Date) 0x1f8-0x1fc (4)
0x1f0| a0 00 00 00| ....| offset_to_record: 160 0x1fc-0x200 (4)
0x200|00 00 00 00 |.... | unused: 0 0x200-0x204 (4)
| | | [4]{}: entry 0x1ac-0x210 (100)
| | | record{}: 0x1ac-0x1b8 (12)
0x1a0| 01 00 00 00| ....| length: 1 0x1ac-0x1b0 (4)
0x1b0|01 01 00 00 |.... | type: "string" (257) (UTF-8 String) 0x1b0-0x1b4 (4)
0x1b0| 2f | / | data: "/" 0x1b4-0x1b5 (1)
0x1b0| 00 00 00 | ... | alignment_bytes: raw bits 0x1b5-0x1b8 (3)
0x200| 02 20 00 00 | . .. | key: "volume_path" (8194) (Array of individual path components) 0x204-0x208 (4)
0x200| 7c 01 00 00 | |... | offset_to_record: 380 0x208-0x20c (4)
0x200| 00 00 00 00| ....| unused: 0 0x20c-0x210 (4)
| | | [5]{}: entry 0x11c-0x21c (256)
| | | record{}: 0x11c-0x12c (16)
0x110| 08 00 00 00| ....| length: 8 0x11c-0x120 (4)
0x120|01 09 00 00 |.... | type: "url" (2305) (UTF-8 string) 0x120-0x124 (4)
0x120| 66 69 6c 65 3a 2f 2f 2f | file:/// | data: "file:///" 0x124-0x12c (8)
0x210|05 20 00 00 |. .. | key: "volume_url" (8197) (URL of volume root) 0x210-0x214 (4)
0x210| ec 00 00 00 | .... | offset_to_record: 236 0x214-0x218 (4)
0x210| 00 00 00 00 | .... | unused: 0 0x218-0x21c (4)
| | | [6]{}: entry 0x12c-0x228 (252)
| | | record{}: 0x12c-0x144 (24)
0x120| 0c 00 00 00| ....| length: 12 0x12c-0x130 (4)
0x130|01 01 00 00 |.... | type: "string" (257) (UTF-8 String) 0x130-0x134 (4)
0x130| 4d 61 63 69 6e 74 6f 73 68 20 48 44| Macintosh HD| data: "Macintosh HD" 0x134-0x140 (12)
0x140|08 00 00 00 |.... | alignment_bytes: raw bits 0x140-0x144 (4)
0x210| 10 20 00 00| . ..| key: "volume_name" (8208) (String) 0x21c-0x220 (4)
0x220|fc 00 00 00 |.... | offset_to_record: 252 0x220-0x224 (4)
0x220| 00 00 00 00 | .... | unused: 0 0x224-0x228 (4)
| | | [7]{}: entry 0x160-0x234 (212)
| | | record{}: 0x160-0x190 (48)
0x160|24 00 00 00 |$... | length: 36 0x160-0x164 (4)
0x160| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x164-0x168 (4)
0x160| 38 41 38 32 39 41 30 33| 8A829A03| data: "8A829A03-9B24-4085-8051-18978712E4BE" 0x168-0x18c (36)
0x170|2d 39 42 32 34 2d 34 30 38 35 2d 38 30 35 31 2d|-9B24-4085-8051-|
0x180|31 38 39 37 38 37 31 32 45 34 42 45 |18978712E4BE |
0x180| 18 00 00 00| ....| alignment_bytes: raw bits 0x18c-0x18f.7 (4)
0x220| 11 20 00 00 | . .. | key: "volume_uuid" (8209) (String UUID) 0x228-0x22b.7 (4)
0x220| 30 01 00 00| 0...| offset_to_record: 304 0x22c-0x22f.7 (4)
0x230|00 00 00 00 |.... | unused: 0 0x230-0x233.7 (4)
| | | [8]{}: entry 0x140-0x23f.7 (256)
| | | record{}: 0x140-0x14f.7 (16)
0x140|08 00 00 00 |.... | length: 8 0x140-0x143.7 (4)
0x140| 04 03 00 00 | .... | type: "long" (772) ((signed 64-bit) 8-byte number) 0x144-0x147.7 (4)
0x140| 00 a0 20 68 74 00 00 00| .. ht...| data: 499963174912 0x148-0x14f.7 (8)
0x230| 12 20 00 00 | . .. | key: "volume_size" (8210) (8-byte integer) 0x234-0x237.7 (4)
0x230| 10 01 00 00 | .... | offset_to_record: 272 0x238-0x23b.7 (4)
0x230| 00 00 00 00| ....| unused: 0 0x23c-0x23f.7 (4)
| | | [9]{}: entry 0x150-0x24b.7 (252)
| | | record{}: 0x150-0x15f.7 (16)
0x150|08 00 00 00 |.... | length: 8 0x150-0x153.7 (4)
0x150| 00 04 00 00 | .... | type: "date" (1024) (Big-endian IEEE double precision seconds since 2001-01-01 00:00:00 UTC) 0x154-0x157.7 (4)
0x150| 41 c1 de 44 80 00 00 00| A..D....| data: 5.995584e+08 (2020-01-01T08:00:00Z) 0x158-0x15f.7 (8)
0x240|13 20 00 00 |. .. | key: "volume_creation_date" (8211) (Date) 0x240-0x243.7 (4)
0x240| 20 01 00 00 | ... | offset_to_record: 288 0x244-0x247.7 (4)
0x240| 00 00 00 00 | .... | unused: 0 0x248-0x24b.7 (4)
| | | [10]{}: entry 0x18c-0x257.7 (204)
| | | record{}: 0x18c-0x1ab.7 (32)
0x180| 18 00 00 00| ....| length: 24 (valid) 0x18c-0x18f.7 (4)
0x190|01 02 00 00 |.... | raw_type: "data" (513) (valid) 0x190-0x193.7 (4)
| | | type: "flag_data" 0x194-NA (0)
| | | property_flags{}: 0x194-0x19b.7 (8)
0x190| 81 | . | is_internal: true 0x194-0x194 (0.1)
0x190| 81 | . | is_removable: false 0x194.1-0x194.1 (0.1)
0x190| 81 | . | is_ejectable: false 0x194.2-0x194.2 (0.1)
0x190| 81 | . | is_quarantined: false 0x194.3-0x194.3 (0.1)
0x190| 81 | . | is_read_only: false 0x194.4-0x194.4 (0.1)
0x190| 81 | . | dont_browse: false 0x194.5-0x194.5 (0.1)
0x190| 81 | . | is_automount: false 0x194.6-0x194.6 (0.1)
0x190| 81 | . | is_local: true 0x194.7-0x194.7 (0.1)
0x190| 00 | . | is_dvd: false 0x195-0x195 (0.1)
0x190| 00 | . | is_cd: false 0x195.1-0x195.1 (0.1)
0x190| 00 | . | is_idisk: false 0x195.2-0x195.2 (0.1)
0x190| 00 | . | is_ipod: false 0x195.3-0x195.3 (0.1)
0x190| 00 | . | is_local_idisk_mirror: false 0x195.4-0x195.4 (0.1)
0x190| 00 | . | is_file_vault: false 0x195.5-0x195.5 (0.1)
0x190| 00 | . | is_disk_image: false 0x195.6-0x195.6 (0.1)
0x190| 00 | . | is_external: false 0x195.7-0x195.7 (0.1)
0x190| 00 | . | reserved_0: raw bits 0x196-0x196.6 (0.7)
0x190| 00 | . | is_device_file_system: false 0x196.7-0x196.7 (0.1)
0x190| 00 | . | reserved_1: raw bits 0x197-0x197.7 (1)
0x190| 01 | . | supports_read_dir_attr: false 0x198-0x198 (0.1)
0x190| 01 | . | supports_copy_file: false 0x198.1-0x198.1 (0.1)
0x190| 01 | . | supports_deny_modes: false 0x198.2-0x198.2 (0.1)
0x190| 01 | . | supports_symbolic_links: false 0x198.3-0x198.3 (0.1)
0x190| 01 | . | reserved_2: false 0x198.4-0x198.4 (0.1)
0x190| 01 | . | supports_exchange: false 0x198.5-0x198.5 (0.1)
0x190| 01 | . | supports_search_fs: false 0x198.6-0x198.6 (0.1)
0x190| 01 | . | supports_persistent_ids: true 0x198.7-0x198.7 (0.1)
0x190| 00 | . | supports_extended_security: false 0x199-0x199 (0.1)
0x190| 00 | . | has_no_root_directory_times: false 0x199.1-0x199.1 (0.1)
0x190| 00 | . | supports_flock: false 0x199.2-0x199.2 (0.1)
0x190| 00 | . | supports_case_preserved_names: false 0x199.3-0x199.3 (0.1)
0x190| 00 | . | supports_case_sensitive_names: false 0x199.4-0x199.4 (0.1)
0x190| 00 | . | supports_fast_stat_fs: false 0x199.5-0x199.5 (0.1)
0x190| 00 | . | supports_rename: false 0x199.6-0x199.6 (0.1)
0x190| 00 | . | supports_journaling: false 0x199.7-0x199.7 (0.1)
0x190| 00 | . | supports_zero_runs: false 0x19a-0x19a (0.1)
0x190| 00 | . | supports_sparse_files: false 0x19a.1-0x19a.1 (0.1)
0x190| 00 | . | is_journaling: false 0x19a.2-0x19a.2 (0.1)
0x190| 00 | . | reserved_3: false 0x19a.3-0x19a.3 (0.1)
0x190| 00 | . | supports_path_from_id: false 0x19a.4-0x19a.4 (0.1)
0x190| 00 | . | supports_mandatory_byte_range_locks: false 0x19a.5-0x19a.5 (0.1)
0x190| 00 | . | supports_hard_links: false 0x19a.6-0x19a.6 (0.1)
0x190| 00 | . | supports_2_tb_file_size: false 0x19a.7-0x19a.7 (0.1)
0x190| 00 | . | reserved_4: raw bits 0x19b-0x19b.2 (0.3)
0x190| 00 | . | has64_bit_object_ids: false 0x19b.3-0x19b.3 (0.1)
0x190| 00 | . | supports_decmp_fs_compression: false 0x19b.4-0x19b.4 (0.1)
0x190| 00 | . | supports_hidden_files: false 0x19b.5-0x19b.5 (0.1)
0x190| 00 | . | supports_remote_events: false 0x19b.6-0x19b.6 (0.1)
0x190| 00 | . | supports_volume_sizes: false 0x19b.7-0x19b.7 (0.1)
| | | enabled_property_flags{}: 0x19c-0x1a3.7 (8)
0x190| ef | . | is_internal: true 0x19c-0x19c (0.1)
0x190| ef | . | is_removable: true 0x19c.1-0x19c.1 (0.1)
0x190| ef | . | is_ejectable: true 0x19c.2-0x19c.2 (0.1)
0x190| ef | . | is_quarantined: false 0x19c.3-0x19c.3 (0.1)
0x190| ef | . | is_read_only: true 0x19c.4-0x19c.4 (0.1)
0x190| ef | . | dont_browse: true 0x19c.5-0x19c.5 (0.1)
0x190| ef | . | is_automount: true 0x19c.6-0x19c.6 (0.1)
0x190| ef | . | is_local: true 0x19c.7-0x19c.7 (0.1)
0x190| 13 | . | is_dvd: false 0x19d-0x19d (0.1)
0x190| 13 | . | is_cd: false 0x19d.1-0x19d.1 (0.1)
0x190| 13 | . | is_idisk: false 0x19d.2-0x19d.2 (0.1)
0x190| 13 | . | is_ipod: true 0x19d.3-0x19d.3 (0.1)
0x190| 13 | . | is_local_idisk_mirror: false 0x19d.4-0x19d.4 (0.1)
0x190| 13 | . | is_file_vault: false 0x19d.5-0x19d.5 (0.1)
0x190| 13 | . | is_disk_image: true 0x19d.6-0x19d.6 (0.1)
0x190| 13 | . | is_external: true 0x19d.7-0x19d.7 (0.1)
0x190| 00 | . | reserved_0: raw bits 0x19e-0x19e.6 (0.7)
0x190| 00 | . | is_device_file_system: false 0x19e.7-0x19e.7 (0.1)
0x190| 00| .| reserved_1: raw bits 0x19f-0x19f.7 (1)
0x1a0|01 |. | supports_read_dir_attr: false 0x1a0-0x1a0 (0.1)
0x1a0|01 |. | supports_copy_file: false 0x1a0.1-0x1a0.1 (0.1)
0x1a0|01 |. | supports_deny_modes: false 0x1a0.2-0x1a0.2 (0.1)
0x1a0|01 |. | supports_symbolic_links: false 0x1a0.3-0x1a0.3 (0.1)
0x1a0|01 |. | reserved_2: false 0x1a0.4-0x1a0.4 (0.1)
0x1a0|01 |. | supports_exchange: false 0x1a0.5-0x1a0.5 (0.1)
0x1a0|01 |. | supports_search_fs: false 0x1a0.6-0x1a0.6 (0.1)
0x1a0|01 |. | supports_persistent_ids: true 0x1a0.7-0x1a0.7 (0.1)
0x1a0| 00 | . | supports_extended_security: false 0x1a1-0x1a1 (0.1)
0x1a0| 00 | . | has_no_root_directory_times: false 0x1a1.1-0x1a1.1 (0.1)
0x1a0| 00 | . | supports_flock: false 0x1a1.2-0x1a1.2 (0.1)
0x1a0| 00 | . | supports_case_preserved_names: false 0x1a1.3-0x1a1.3 (0.1)
0x1a0| 00 | . | supports_case_sensitive_names: false 0x1a1.4-0x1a1.4 (0.1)
0x1a0| 00 | . | supports_fast_stat_fs: false 0x1a1.5-0x1a1.5 (0.1)
0x1a0| 00 | . | supports_rename: false 0x1a1.6-0x1a1.6 (0.1)
0x1a0| 00 | . | supports_journaling: false 0x1a1.7-0x1a1.7 (0.1)
0x1a0| 00 | . | supports_zero_runs: false 0x1a2-0x1a2 (0.1)
0x1a0| 00 | . | supports_sparse_files: false 0x1a2.1-0x1a2.1 (0.1)
0x1a0| 00 | . | is_journaling: false 0x1a2.2-0x1a2.2 (0.1)
0x1a0| 00 | . | reserved_3: false 0x1a2.3-0x1a2.3 (0.1)
0x1a0| 00 | . | supports_path_from_id: false 0x1a2.4-0x1a2.4 (0.1)
0x1a0| 00 | . | supports_mandatory_byte_range_locks: false 0x1a2.5-0x1a2.5 (0.1)
0x1a0| 00 | . | supports_hard_links: false 0x1a2.6-0x1a2.6 (0.1)
0x1a0| 00 | . | supports_2_tb_file_size: false 0x1a2.7-0x1a2.7 (0.1)
0x1a0| 00 | . | reserved_4: raw bits 0x1a3-0x1a3.2 (0.3)
0x1a0| 00 | . | has64_bit_object_ids: false 0x1a3.3-0x1a3.3 (0.1)
0x1a0| 00 | . | supports_decmp_fs_compression: false 0x1a3.4-0x1a3.4 (0.1)
0x1a0| 00 | . | supports_hidden_files: false 0x1a3.5-0x1a3.5 (0.1)
0x1a0| 00 | . | supports_remote_events: false 0x1a3.6-0x1a3.6 (0.1)
0x1a0| 00 | . | supports_volume_sizes: false 0x1a3.7-0x1a3.7 (0.1)
0x1a0| 00 00 00 00 00 00 00 00 | ........ | reserved: raw bits 0x1a4-0x1ab.7 (8)
0x240| 20 20 00 00| ..| key: "volume_flags" (8224) (flag bitfield) 0x24c-0x24f.7 (4)
0x250|5c 01 00 00 |\... | offset_to_record: 348 0x250-0x253.7 (4)
0x250| 00 00 00 00 | .... | unused: 0 0x254-0x257.7 (4)
| | | [11]{}: entry 0x1b8-0x263.7 (172)
| | | record{}: 0x1b8-0x1bf.7 (8)
0x1b0| 00 00 00 00 | .... | length: 0 0x1b8-0x1bb.7 (4)
0x1b0| 01 05 00 00| ....| type: "boolean_true" (1281) (True) 0x1bc-0x1bf.7 (4)
0x250| 30 20 00 00 | 0 .. | key: "volume_is_root" (8240) (True if the volume was the filesystem root) 0x258-0x25b.7 (4)
0x250| 88 01 00 00| ....| offset_to_record: 392 0x25c-0x25f.7 (4)
0x260|00 00 00 00 |.... | unused: 0 0x260-0x263.7 (4)
| | | [12]{}: entry 0x100-0x26f.7 (368)
| | | record{}: 0x100-0x10f.7 (16)
0x100|08 00 00 00 |.... | length: 8 0x100-0x103.7 (4)
0x100| 04 03 00 00 | .... | type: "long" (772) ((signed 64-bit) 8-byte number) 0x104-0x107.7 (4)
0x100| 01 00 00 00 00 00 00 00| ........| data: 1 0x108-0x10f.7 (8)
0x260| 01 c0 00 00 | .... | key: "containing_folder_index" (49153) (Integer index of containing folder in target path array) 0x264-0x267.7 (4)
0x260| d0 00 00 00 | .... | offset_to_record: 208 0x268-0x26b.7 (4)
0x260| 00 00 00 00| ....| unused: 0 0x26c-0x26f.7 (4)
| | | [13]{}: entry 0x50-0x27b.7 (556)
| | | record{}: 0x50-0x67.7 (24)
0x050|0d 00 00 00 |.... | length: 13 0x50-0x53.7 (4)
0x050| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x54-0x57.7 (4)
0x050| 64 61 76 69 64 6d 63 64| davidmcd| data: "davidmcdonald" 0x58-0x64.7 (13)
0x180| 18 00 00 00| ....| alignment_bytes: raw bits 0x18c-0x190 (4)
0x220| 11 20 00 00 | . .. | key: "volume_uuid" (8209) (String UUID) 0x228-0x22c (4)
0x220| 30 01 00 00| 0...| offset_to_record: 304 0x22c-0x230 (4)
0x230|00 00 00 00 |.... | unused: 0 0x230-0x234 (4)
| | | [8]{}: entry 0x140-0x240 (256)
| | | record{}: 0x140-0x150 (16)
0x140|08 00 00 00 |.... | length: 8 0x140-0x144 (4)
0x140| 04 03 00 00 | .... | type: "long" (772) ((signed 64-bit) 8-byte number) 0x144-0x148 (4)
0x140| 00 a0 20 68 74 00 00 00| .. ht...| data: 499963174912 0x148-0x150 (8)
0x230| 12 20 00 00 | . .. | key: "volume_size" (8210) (8-byte integer) 0x234-0x238 (4)
0x230| 10 01 00 00 | .... | offset_to_record: 272 0x238-0x23c (4)
0x230| 00 00 00 00| ....| unused: 0 0x23c-0x240 (4)
| | | [9]{}: entry 0x150-0x24c (252)
| | | record{}: 0x150-0x160 (16)
0x150|08 00 00 00 |.... | length: 8 0x150-0x154 (4)
0x150| 00 04 00 00 | .... | type: "date" (1024) (Big-endian IEEE double precision seconds since 2001-01-01 00:00:00 UTC) 0x154-0x158 (4)
0x150| 41 c1 de 44 80 00 00 00| A..D....| data: 5.995584e+08 (2020-01-01T08:00:00Z) 0x158-0x160 (8)
0x240|13 20 00 00 |. .. | key: "volume_creation_date" (8211) (Date) 0x240-0x244 (4)
0x240| 20 01 00 00 | ... | offset_to_record: 288 0x244-0x248 (4)
0x240| 00 00 00 00 | .... | unused: 0 0x248-0x24c (4)
| | | [10]{}: entry 0x18c-0x258 (204)
| | | record{}: 0x18c-0x1ac (32)
0x180| 18 00 00 00| ....| length: 24 (valid) 0x18c-0x190 (4)
0x190|01 02 00 00 |.... | raw_type: "data" (513) (valid) 0x190-0x194 (4)
| | | type: "flag_data"
| | | property_flags{}: 0x194-0x19c (8)
0x190| 81 | . | is_internal: true 0x194-0x194.1 (0.1)
0x190| 81 | . | is_removable: false 0x194.1-0x194.2 (0.1)
0x190| 81 | . | is_ejectable: false 0x194.2-0x194.3 (0.1)
0x190| 81 | . | is_quarantined: false 0x194.3-0x194.4 (0.1)
0x190| 81 | . | is_read_only: false 0x194.4-0x194.5 (0.1)
0x190| 81 | . | dont_browse: false 0x194.5-0x194.6 (0.1)
0x190| 81 | . | is_automount: false 0x194.6-0x194.7 (0.1)
0x190| 81 | . | is_local: true 0x194.7-0x195 (0.1)
0x190| 00 | . | is_dvd: false 0x195-0x195.1 (0.1)
0x190| 00 | . | is_cd: false 0x195.1-0x195.2 (0.1)
0x190| 00 | . | is_idisk: false 0x195.2-0x195.3 (0.1)
0x190| 00 | . | is_ipod: false 0x195.3-0x195.4 (0.1)
0x190| 00 | . | is_local_idisk_mirror: false 0x195.4-0x195.5 (0.1)
0x190| 00 | . | is_file_vault: false 0x195.5-0x195.6 (0.1)
0x190| 00 | . | is_disk_image: false 0x195.6-0x195.7 (0.1)
0x190| 00 | . | is_external: false 0x195.7-0x196 (0.1)
0x190| 00 | . | reserved_0: raw bits 0x196-0x196.7 (0.7)
0x190| 00 | . | is_device_file_system: false 0x196.7-0x197 (0.1)
0x190| 00 | . | reserved_1: raw bits 0x197-0x198 (1)
0x190| 01 | . | supports_read_dir_attr: false 0x198-0x198.1 (0.1)
0x190| 01 | . | supports_copy_file: false 0x198.1-0x198.2 (0.1)
0x190| 01 | . | supports_deny_modes: false 0x198.2-0x198.3 (0.1)
0x190| 01 | . | supports_symbolic_links: false 0x198.3-0x198.4 (0.1)
0x190| 01 | . | reserved_2: false 0x198.4-0x198.5 (0.1)
0x190| 01 | . | supports_exchange: false 0x198.5-0x198.6 (0.1)
0x190| 01 | . | supports_search_fs: false 0x198.6-0x198.7 (0.1)
0x190| 01 | . | supports_persistent_ids: true 0x198.7-0x199 (0.1)
0x190| 00 | . | supports_extended_security: false 0x199-0x199.1 (0.1)
0x190| 00 | . | has_no_root_directory_times: false 0x199.1-0x199.2 (0.1)
0x190| 00 | . | supports_flock: false 0x199.2-0x199.3 (0.1)
0x190| 00 | . | supports_case_preserved_names: false 0x199.3-0x199.4 (0.1)
0x190| 00 | . | supports_case_sensitive_names: false 0x199.4-0x199.5 (0.1)
0x190| 00 | . | supports_fast_stat_fs: false 0x199.5-0x199.6 (0.1)
0x190| 00 | . | supports_rename: false 0x199.6-0x199.7 (0.1)
0x190| 00 | . | supports_journaling: false 0x199.7-0x19a (0.1)
0x190| 00 | . | supports_zero_runs: false 0x19a-0x19a.1 (0.1)
0x190| 00 | . | supports_sparse_files: false 0x19a.1-0x19a.2 (0.1)
0x190| 00 | . | is_journaling: false 0x19a.2-0x19a.3 (0.1)
0x190| 00 | . | reserved_3: false 0x19a.3-0x19a.4 (0.1)
0x190| 00 | . | supports_path_from_id: false 0x19a.4-0x19a.5 (0.1)
0x190| 00 | . | supports_mandatory_byte_range_locks: false 0x19a.5-0x19a.6 (0.1)
0x190| 00 | . | supports_hard_links: false 0x19a.6-0x19a.7 (0.1)
0x190| 00 | . | supports_2_tb_file_size: false 0x19a.7-0x19b (0.1)
0x190| 00 | . | reserved_4: raw bits 0x19b-0x19b.3 (0.3)
0x190| 00 | . | has64_bit_object_ids: false 0x19b.3-0x19b.4 (0.1)
0x190| 00 | . | supports_decmp_fs_compression: false 0x19b.4-0x19b.5 (0.1)
0x190| 00 | . | supports_hidden_files: false 0x19b.5-0x19b.6 (0.1)
0x190| 00 | . | supports_remote_events: false 0x19b.6-0x19b.7 (0.1)
0x190| 00 | . | supports_volume_sizes: false 0x19b.7-0x19c (0.1)
| | | enabled_property_flags{}: 0x19c-0x1a4 (8)
0x190| ef | . | is_internal: true 0x19c-0x19c.1 (0.1)
0x190| ef | . | is_removable: true 0x19c.1-0x19c.2 (0.1)
0x190| ef | . | is_ejectable: true 0x19c.2-0x19c.3 (0.1)
0x190| ef | . | is_quarantined: false 0x19c.3-0x19c.4 (0.1)
0x190| ef | . | is_read_only: true 0x19c.4-0x19c.5 (0.1)
0x190| ef | . | dont_browse: true 0x19c.5-0x19c.6 (0.1)
0x190| ef | . | is_automount: true 0x19c.6-0x19c.7 (0.1)
0x190| ef | . | is_local: true 0x19c.7-0x19d (0.1)
0x190| 13 | . | is_dvd: false 0x19d-0x19d.1 (0.1)
0x190| 13 | . | is_cd: false 0x19d.1-0x19d.2 (0.1)
0x190| 13 | . | is_idisk: false 0x19d.2-0x19d.3 (0.1)
0x190| 13 | . | is_ipod: true 0x19d.3-0x19d.4 (0.1)
0x190| 13 | . | is_local_idisk_mirror: false 0x19d.4-0x19d.5 (0.1)
0x190| 13 | . | is_file_vault: false 0x19d.5-0x19d.6 (0.1)
0x190| 13 | . | is_disk_image: true 0x19d.6-0x19d.7 (0.1)
0x190| 13 | . | is_external: true 0x19d.7-0x19e (0.1)
0x190| 00 | . | reserved_0: raw bits 0x19e-0x19e.7 (0.7)
0x190| 00 | . | is_device_file_system: false 0x19e.7-0x19f (0.1)
0x190| 00| .| reserved_1: raw bits 0x19f-0x1a0 (1)
0x1a0|01 |. | supports_read_dir_attr: false 0x1a0-0x1a0.1 (0.1)
0x1a0|01 |. | supports_copy_file: false 0x1a0.1-0x1a0.2 (0.1)
0x1a0|01 |. | supports_deny_modes: false 0x1a0.2-0x1a0.3 (0.1)
0x1a0|01 |. | supports_symbolic_links: false 0x1a0.3-0x1a0.4 (0.1)
0x1a0|01 |. | reserved_2: false 0x1a0.4-0x1a0.5 (0.1)
0x1a0|01 |. | supports_exchange: false 0x1a0.5-0x1a0.6 (0.1)
0x1a0|01 |. | supports_search_fs: false 0x1a0.6-0x1a0.7 (0.1)
0x1a0|01 |. | supports_persistent_ids: true 0x1a0.7-0x1a1 (0.1)
0x1a0| 00 | . | supports_extended_security: false 0x1a1-0x1a1.1 (0.1)
0x1a0| 00 | . | has_no_root_directory_times: false 0x1a1.1-0x1a1.2 (0.1)
0x1a0| 00 | . | supports_flock: false 0x1a1.2-0x1a1.3 (0.1)
0x1a0| 00 | . | supports_case_preserved_names: false 0x1a1.3-0x1a1.4 (0.1)
0x1a0| 00 | . | supports_case_sensitive_names: false 0x1a1.4-0x1a1.5 (0.1)
0x1a0| 00 | . | supports_fast_stat_fs: false 0x1a1.5-0x1a1.6 (0.1)
0x1a0| 00 | . | supports_rename: false 0x1a1.6-0x1a1.7 (0.1)
0x1a0| 00 | . | supports_journaling: false 0x1a1.7-0x1a2 (0.1)
0x1a0| 00 | . | supports_zero_runs: false 0x1a2-0x1a2.1 (0.1)
0x1a0| 00 | . | supports_sparse_files: false 0x1a2.1-0x1a2.2 (0.1)
0x1a0| 00 | . | is_journaling: false 0x1a2.2-0x1a2.3 (0.1)
0x1a0| 00 | . | reserved_3: false 0x1a2.3-0x1a2.4 (0.1)
0x1a0| 00 | . | supports_path_from_id: false 0x1a2.4-0x1a2.5 (0.1)
0x1a0| 00 | . | supports_mandatory_byte_range_locks: false 0x1a2.5-0x1a2.6 (0.1)
0x1a0| 00 | . | supports_hard_links: false 0x1a2.6-0x1a2.7 (0.1)
0x1a0| 00 | . | supports_2_tb_file_size: false 0x1a2.7-0x1a3 (0.1)
0x1a0| 00 | . | reserved_4: raw bits 0x1a3-0x1a3.3 (0.3)
0x1a0| 00 | . | has64_bit_object_ids: false 0x1a3.3-0x1a3.4 (0.1)
0x1a0| 00 | . | supports_decmp_fs_compression: false 0x1a3.4-0x1a3.5 (0.1)
0x1a0| 00 | . | supports_hidden_files: false 0x1a3.5-0x1a3.6 (0.1)
0x1a0| 00 | . | supports_remote_events: false 0x1a3.6-0x1a3.7 (0.1)
0x1a0| 00 | . | supports_volume_sizes: false 0x1a3.7-0x1a4 (0.1)
0x1a0| 00 00 00 00 00 00 00 00 | ........ | reserved: raw bits 0x1a4-0x1ac (8)
0x240| 20 20 00 00| ..| key: "volume_flags" (8224) (flag bitfield) 0x24c-0x250 (4)
0x250|5c 01 00 00 |\... | offset_to_record: 348 0x250-0x254 (4)
0x250| 00 00 00 00 | .... | unused: 0 0x254-0x258 (4)
| | | [11]{}: entry 0x1b8-0x264 (172)
| | | record{}: 0x1b8-0x1c0 (8)
0x1b0| 00 00 00 00 | .... | length: 0 0x1b8-0x1bc (4)
0x1b0| 01 05 00 00| ....| type: "boolean_true" (1281) (True) 0x1bc-0x1c0 (4)
0x250| 30 20 00 00 | 0 .. | key: "volume_is_root" (8240) (True if the volume was the filesystem root) 0x258-0x25c (4)
0x250| 88 01 00 00| ....| offset_to_record: 392 0x25c-0x260 (4)
0x260|00 00 00 00 |.... | unused: 0 0x260-0x264 (4)
| | | [12]{}: entry 0x100-0x270 (368)
| | | record{}: 0x100-0x110 (16)
0x100|08 00 00 00 |.... | length: 8 0x100-0x104 (4)
0x100| 04 03 00 00 | .... | type: "long" (772) ((signed 64-bit) 8-byte number) 0x104-0x108 (4)
0x100| 01 00 00 00 00 00 00 00| ........| data: 1 0x108-0x110 (8)
0x260| 01 c0 00 00 | .... | key: "containing_folder_index" (49153) (Integer index of containing folder in target path array) 0x264-0x268 (4)
0x260| d0 00 00 00 | .... | offset_to_record: 208 0x268-0x26c (4)
0x260| 00 00 00 00| ....| unused: 0 0x26c-0x270 (4)
| | | [13]{}: entry 0x50-0x27c (556)
| | | record{}: 0x50-0x68 (24)
0x050|0d 00 00 00 |.... | length: 13 0x50-0x54 (4)
0x050| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x54-0x58 (4)
0x050| 64 61 76 69 64 6d 63 64| davidmcd| data: "davidmcdonald" 0x58-0x65 (13)
0x060|6f 6e 61 6c 64 |onald |
0x060| 00 00 00 | ... | alignment_bytes: raw bits 0x65-0x67.7 (3)
0x270|11 c0 00 00 |.... | key: "creator_username" (49169) (Name of user that created bookmark) 0x270-0x273.7 (4)
0x270| 20 00 00 00 | ... | offset_to_record: 32 0x274-0x277.7 (4)
0x270| 00 00 00 00 | .... | unused: 0 0x278-0x27b.7 (4)
| | | [14]{}: entry 0x110-0x287.7 (376)
| | | record{}: 0x110-0x11b.7 (12)
0x110|04 00 00 00 |.... | length: 4 0x110-0x113.7 (4)
0x110| 03 03 00 00 | .... | type: "int" (771) ((signed 32-bit) 4-byte number) 0x114-0x117.7 (4)
0x110| f5 01 00 00 | .... | data: 501 0x118-0x11b.7 (4)
0x270| 12 c0 00 00| ....| key: "creator_uid" (49170) (UID of user that created bookmark) 0x27c-0x27f.7 (4)
0x280|e0 00 00 00 |.... | offset_to_record: 224 0x280-0x283.7 (4)
0x280| 00 00 00 00 | .... | unused: 0 0x284-0x287.7 (4)
| | | [15]{}: entry 0x34-0x293.7 (608)
| | | record{}: 0x34-0x3f.7 (12)
0x030| 04 00 00 00 | .... | length: 4 0x34-0x37.7 (4)
0x030| 03 03 00 00 | .... | type: "int" (771) ((signed 32-bit) 4-byte number) 0x38-0x3b.7 (4)
0x030| 00 00 00 20| ... | data: 536870912 0x3c-0x3f.7 (4)
0x280| 10 d0 00 00 | .... | key: "creation_options" (53264) (Integer containing flags passed to CFURLCreateBookmarkData) 0x288-0x28b.7 (4)
0x280| 04 00 00 00| ....| offset_to_record: 4 0x28c-0x28f.7 (4)
0x290|00 00 00 00 |.... | unused: 0 0x290-0x293.7 (4)
| | | [16]{}: entry 0x68-0x29f.7 (568)
| | | record{}: 0x68-0x77.7 (16)
0x060| 07 00 00 00 | .... | length: 7 0x68-0x6b.7 (4)
0x060| 01 01 00 00| ....| type: "string" (257) (UTF-8 String) 0x6c-0x6f.7 (4)
0x070|68 78 73 74 6f 72 65 |hxstore | data: "hxstore" 0x70-0x76.7 (7)
0x070| 00 | . | alignment_bytes: raw bits 0x77-0x77.7 (1)
0x290| 17 f0 00 00 | .... | key: "display_name" (61463) (String) 0x294-0x297.7 (4)
0x290| 38 00 00 00 | 8... | offset_to_record: 56 0x298-0x29b.7 (4)
0x290| 00 00 00 00| ....| unused: 0 0x29c-0x29f.7 (4)
| | | [17]{}: entry 0x1b8-0x2ab.7 (244)
| | | record{}: 0x1b8-0x1bf.7 (8)
0x1b0| 00 00 00 00 | .... | length: 0 0x1b8-0x1bb.7 (4)
0x1b0| 01 05 00 00| ....| type: "boolean_true" (1281) (True) 0x1bc-0x1bf.7 (4)
0x2a0|0f 00 0f 00 |.... | key: 983055 0x2a0-0x2a3.7 (4)
0x2a0| 88 01 00 00 | .... | offset_to_record: 392 0x2a4-0x2a7.7 (4)
0x2a0| 00 00 00 00| | ....| | unused: 0 0x2a8-0x2ab.7 (4)
| | | toc_headers[0:1]: 0x1c0-0x1d3.7 (20)
| | | [0]{}: toc_header 0x1c0-0x1d3.7 (20)
0x1c0|e4 00 00 00 |.... | toc_size: 228 0x1c0-0x1c3.7 (4)
0x1c0| fe ff ff ff | .... | magic: 4294967294 (valid) 0x1c4-0x1c7.7 (4)
0x1c0| 01 00 00 00 | .... | identifier: 1 0x1c8-0x1cb.7 (4)
0x1c0| 00 00 00 00| ....| next_toc_offset: 0 0x1cc-0x1cf.7 (4)
0x1d0|12 00 00 00 |.... | num_entries_in_toc: 18 0x1d0-0x1d3.7 (4)
0x060| 00 00 00 | ... | alignment_bytes: raw bits 0x65-0x68 (3)
0x270|11 c0 00 00 |.... | key: "creator_username" (49169) (Name of user that created bookmark) 0x270-0x274 (4)
0x270| 20 00 00 00 | ... | offset_to_record: 32 0x274-0x278 (4)
0x270| 00 00 00 00 | .... | unused: 0 0x278-0x27c (4)
| | | [14]{}: entry 0x110-0x288 (376)
| | | record{}: 0x110-0x11c (12)
0x110|04 00 00 00 |.... | length: 4 0x110-0x114 (4)
0x110| 03 03 00 00 | .... | type: "int" (771) ((signed 32-bit) 4-byte number) 0x114-0x118 (4)
0x110| f5 01 00 00 | .... | data: 501 0x118-0x11c (4)
0x270| 12 c0 00 00| ....| key: "creator_uid" (49170) (UID of user that created bookmark) 0x27c-0x280 (4)
0x280|e0 00 00 00 |.... | offset_to_record: 224 0x280-0x284 (4)
0x280| 00 00 00 00 | .... | unused: 0 0x284-0x288 (4)
| | | [15]{}: entry 0x34-0x294 (608)
| | | record{}: 0x34-0x40 (12)
0x030| 04 00 00 00 | .... | length: 4 0x34-0x38 (4)
0x030| 03 03 00 00 | .... | type: "int" (771) ((signed 32-bit) 4-byte number) 0x38-0x3c (4)
0x030| 00 00 00 20| ... | data: 536870912 0x3c-0x40 (4)
0x280| 10 d0 00 00 | .... | key: "creation_options" (53264) (Integer containing flags passed to CFURLCreateBookmarkData) 0x288-0x28c (4)
0x280| 04 00 00 00| ....| offset_to_record: 4 0x28c-0x290 (4)
0x290|00 00 00 00 |.... | unused: 0 0x290-0x294 (4)
| | | [16]{}: entry 0x68-0x2a0 (568)
| | | record{}: 0x68-0x78 (16)
0x060| 07 00 00 00 | .... | length: 7 0x68-0x6c (4)
0x060| 01 01 00 00| ....| type: "string" (257) (UTF-8 String) 0x6c-0x70 (4)
0x070|68 78 73 74 6f 72 65 |hxstore | data: "hxstore" 0x70-0x77 (7)
0x070| 00 | . | alignment_bytes: raw bits 0x77-0x78 (1)
0x290| 17 f0 00 00 | .... | key: "display_name" (61463) (String) 0x294-0x298 (4)
0x290| 38 00 00 00 | 8... | offset_to_record: 56 0x298-0x29c (4)
0x290| 00 00 00 00| ....| unused: 0 0x29c-0x2a0 (4)
| | | [17]{}: entry 0x1b8-0x2ac (244)
| | | record{}: 0x1b8-0x1c0 (8)
0x1b0| 00 00 00 00 | .... | length: 0 0x1b8-0x1bc (4)
0x1b0| 01 05 00 00| ....| type: "boolean_true" (1281) (True) 0x1bc-0x1c0 (4)
0x2a0|0f 00 0f 00 |.... | key: 983055 0x2a0-0x2a4 (4)
0x2a0| 88 01 00 00 | .... | offset_to_record: 392 0x2a4-0x2a8 (4)
0x2a0| 00 00 00 00| | ....| | unused: 0 0x2a8-0x2ac (4)
| | | toc_headers[0:1]: 0x1c0-0x1d4 (20)
| | | [0]{}: toc_header 0x1c0-0x1d4 (20)
0x1c0|e4 00 00 00 |.... | toc_size: 228 0x1c0-0x1c4 (4)
0x1c0| fe ff ff ff | .... | magic: 4294967294 (valid) 0x1c4-0x1c8 (4)
0x1c0| 01 00 00 00 | .... | identifier: 1 0x1c8-0x1cc (4)
0x1c0| 00 00 00 00| ....| next_toc_offset: 0 0x1cc-0x1d0 (4)
0x1d0|12 00 00 00 |.... | num_entries_in_toc: 18 0x1d0-0x1d4 (4)
$ fq torepr sample2.book
{
"983055": true,

View File

@ -1,395 +1,395 @@
$ fq dv sample3.book
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: sample3.book (apple_bookmark) 0x0-0x333.7 (820)
| | | header{}: 0x0-0x2f.7 (48)
0x000|62 6f 6f 6b |book | magic: "book" (valid) 0x0-0x3.7 (4)
0x000| 34 03 00 00 | 4... | total_size: 820 0x4-0x7.7 (4)
0x000| 00 00 04 10 | .... | unknown: 268697600 0x8-0xb.7 (4)
0x000| 30 00 00 00| 0...| header_size: 48 (valid) 0xc-0xf.7 (4)
0x010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| reserved: raw bits 0x10-0x2f.7 (32)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: sample3.book (apple_bookmark) 0x0-0x334 (820)
| | | header{}: 0x0-0x30 (48)
0x000|62 6f 6f 6b |book | magic: "book" (valid) 0x0-0x4 (4)
0x000| 34 03 00 00 | 4... | total_size: 820 0x4-0x8 (4)
0x000| 00 00 04 10 | .... | unknown: 268697600 0x8-0xc (4)
0x000| 30 00 00 00| 0...| header_size: 48 (valid) 0xc-0x10 (4)
0x010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| reserved: raw bits 0x10-0x30 (32)
0x020|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................|
0x030|18 02 00 00 |.... | first_toc_offset: 536 0x30-0x33.7 (4)
| | | bookmark_entries[0:18]: 0x34-0x333.7 (768)
| | | [0]{}: entry 0x40-0x267.7 (552)
| | | record{}: 0x40-0xd7.7 (152)
| | | data[0:6]: 0x40-0xd7.7 (152)
| | | [0]{}: element 0x40-0xc3.7 (132)
| | | record{}: 0x40-0x4f.7 (16)
0x040|05 00 00 00 |.... | length: 5 0x40-0x43.7 (4)
0x040| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x44-0x47.7 (4)
0x040| 55 73 65 72 73 | Users | data: "Users" 0x48-0x4c.7 (5)
0x040| 00 00 00| ...| alignment_bytes: raw bits 0x4d-0x4f.7 (3)
0x0c0|10 00 00 00 |.... | offset: 16 0xc0-0xc3.7 (4)
| | | [1]{}: element 0x50-0xc7.7 (120)
| | | record{}: 0x50-0x67.7 (24)
0x050|0d 00 00 00 |.... | length: 13 0x50-0x53.7 (4)
0x050| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x54-0x57.7 (4)
0x050| 64 61 76 69 64 6d 63 64| davidmcd| data: "davidmcdonald" 0x58-0x64.7 (13)
0x030|18 02 00 00 |.... | first_toc_offset: 536 0x30-0x34 (4)
| | | bookmark_entries[0:18]: 0x34-0x334 (768)
| | | [0]{}: entry 0x40-0x268 (552)
| | | record{}: 0x40-0xd8 (152)
| | | data[0:6]: 0x40-0xd8 (152)
| | | [0]{}: element 0x40-0xc4 (132)
| | | record{}: 0x40-0x50 (16)
0x040|05 00 00 00 |.... | length: 5 0x40-0x44 (4)
0x040| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x44-0x48 (4)
0x040| 55 73 65 72 73 | Users | data: "Users" 0x48-0x4d (5)
0x040| 00 00 00| ...| alignment_bytes: raw bits 0x4d-0x50 (3)
0x0c0|10 00 00 00 |.... | offset: 16 0xc0-0xc4 (4)
| | | [1]{}: element 0x50-0xc8 (120)
| | | record{}: 0x50-0x68 (24)
0x050|0d 00 00 00 |.... | length: 13 0x50-0x54 (4)
0x050| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x54-0x58 (4)
0x050| 64 61 76 69 64 6d 63 64| davidmcd| data: "davidmcdonald" 0x58-0x65 (13)
0x060|6f 6e 61 6c 64 |onald |
0x060| 00 00 00 | ... | alignment_bytes: raw bits 0x65-0x67.7 (3)
0x0c0| 20 00 00 00 | ... | offset: 32 0xc4-0xc7.7 (4)
| | | [2]{}: element 0x68-0xcb.7 (100)
| | | record{}: 0x68-0x7b.7 (20)
0x060| 09 00 00 00 | .... | length: 9 0x68-0x6b.7 (4)
0x060| 01 01 00 00| ....| type: "string" (257) (UTF-8 String) 0x6c-0x6f.7 (4)
0x070|44 6f 63 75 6d 65 6e 74 73 |Documents | data: "Documents" 0x70-0x78.7 (9)
0x070| 00 00 00 | ... | alignment_bytes: raw bits 0x79-0x7b.7 (3)
0x0c0| 38 00 00 00 | 8... | offset: 56 0xc8-0xcb.7 (4)
| | | [3]{}: element 0x7c-0xcf.7 (84)
| | | record{}: 0x7c-0x8b.7 (16)
0x070| 07 00 00 00| ....| length: 7 0x7c-0x7f.7 (4)
0x080|01 01 00 00 |.... | type: "string" (257) (UTF-8 String) 0x80-0x83.7 (4)
0x080| 41 72 64 75 69 6e 6f | Arduino | data: "Arduino" 0x84-0x8a.7 (7)
0x080| 00 | . | alignment_bytes: raw bits 0x8b-0x8b.7 (1)
0x0c0| 4c 00 00 00| L...| offset: 76 0xcc-0xcf.7 (4)
| | | [4]{}: element 0x8c-0xd3.7 (72)
| | | record{}: 0x8c-0xa7.7 (28)
0x080| 12 00 00 00| ....| length: 18 0x8c-0x8f.7 (4)
0x090|01 01 00 00 |.... | type: "string" (257) (UTF-8 String) 0x90-0x93.7 (4)
0x090| 67 65 6e 65 72 61 74 65 64 5f 65 78| generated_ex| data: "generated_examples" 0x94-0xa5.7 (18)
0x060| 00 00 00 | ... | alignment_bytes: raw bits 0x65-0x68 (3)
0x0c0| 20 00 00 00 | ... | offset: 32 0xc4-0xc8 (4)
| | | [2]{}: element 0x68-0xcc (100)
| | | record{}: 0x68-0x7c (20)
0x060| 09 00 00 00 | .... | length: 9 0x68-0x6c (4)
0x060| 01 01 00 00| ....| type: "string" (257) (UTF-8 String) 0x6c-0x70 (4)
0x070|44 6f 63 75 6d 65 6e 74 73 |Documents | data: "Documents" 0x70-0x79 (9)
0x070| 00 00 00 | ... | alignment_bytes: raw bits 0x79-0x7c (3)
0x0c0| 38 00 00 00 | 8... | offset: 56 0xc8-0xcc (4)
| | | [3]{}: element 0x7c-0xd0 (84)
| | | record{}: 0x7c-0x8c (16)
0x070| 07 00 00 00| ....| length: 7 0x7c-0x80 (4)
0x080|01 01 00 00 |.... | type: "string" (257) (UTF-8 String) 0x80-0x84 (4)
0x080| 41 72 64 75 69 6e 6f | Arduino | data: "Arduino" 0x84-0x8b (7)
0x080| 00 | . | alignment_bytes: raw bits 0x8b-0x8c (1)
0x0c0| 4c 00 00 00| L...| offset: 76 0xcc-0xd0 (4)
| | | [4]{}: element 0x8c-0xd4 (72)
| | | record{}: 0x8c-0xa8 (28)
0x080| 12 00 00 00| ....| length: 18 0x8c-0x90 (4)
0x090|01 01 00 00 |.... | type: "string" (257) (UTF-8 String) 0x90-0x94 (4)
0x090| 67 65 6e 65 72 61 74 65 64 5f 65 78| generated_ex| data: "generated_examples" 0x94-0xa6 (18)
0x0a0|61 6d 70 6c 65 73 |amples |
0x0a0| 00 00 | .. | alignment_bytes: raw bits 0xa6-0xa7.7 (2)
0x0d0|5c 00 00 00 |\... | offset: 92 0xd0-0xd3.7 (4)
| | | [5]{}: element 0xa8-0xd7.7 (48)
| | | record{}: 0xa8-0xb7.7 (16)
0x0a0| 05 00 00 00 | .... | length: 5 0xa8-0xab.7 (4)
0x0a0| 01 01 00 00| ....| type: "string" (257) (UTF-8 String) 0xac-0xaf.7 (4)
0x0b0|42 6c 69 6e 6b |Blink | data: "Blink" 0xb0-0xb4.7 (5)
0x0b0| 00 00 00 | ... | alignment_bytes: raw bits 0xb5-0xb7.7 (3)
0x0d0| 78 00 00 00 | x... | offset: 120 0xd4-0xd7.7 (4)
0x0b0| 18 00 00 00 | .... | length: 24 0xb8-0xbb.7 (4)
0x0b0| 01 06 00 00| ....| type: "array" (1537) (Array of 4-byte offsets to data items) 0xbc-0xbf.7 (4)
0x250| 04 10 00 00| ....| key: "target_path" (4100) (Array of individual path components) 0x25c-0x25f.7 (4)
0x260|88 00 00 00 |.... | offset_to_record: 136 0x260-0x263.7 (4)
0x260| 00 00 00 00 | .... | unused: 0 0x264-0x267.7 (4)
| | | [1]{}: entry 0xd8-0x273.7 (412)
| | | record{}: 0xd8-0x157.7 (128)
| | | data[0:6]: 0xd8-0x157.7 (128)
| | | [0]{}: element 0xd8-0x143.7 (108)
| | | record{}: 0xd8-0xe7.7 (16)
0x0d0| 08 00 00 00 | .... | length: 8 0xd8-0xdb.7 (4)
0x0d0| 04 03 00 00| ....| type: "long" (772) ((signed 64-bit) 8-byte number) 0xdc-0xdf.7 (4)
0x0e0|0b 5b 00 00 00 00 00 00 |.[...... | data: 23307 0xe0-0xe7.7 (8)
0x140|a8 00 00 00 |.... | offset: 168 0x140-0x143.7 (4)
| | | [1]{}: element 0xe8-0x147.7 (96)
| | | record{}: 0xe8-0xf7.7 (16)
0x0e0| 08 00 00 00 | .... | length: 8 0xe8-0xeb.7 (4)
0x0e0| 04 03 00 00| ....| type: "long" (772) ((signed 64-bit) 8-byte number) 0xec-0xef.7 (4)
0x0f0|1c 9e 08 00 00 00 00 00 |........ | data: 564764 0xf0-0xf7.7 (8)
0x140| b8 00 00 00 | .... | offset: 184 0x144-0x147.7 (4)
| | | [2]{}: element 0xf8-0x14b.7 (84)
| | | record{}: 0xf8-0x107.7 (16)
0x0f0| 08 00 00 00 | .... | length: 8 0xf8-0xfb.7 (4)
0x0f0| 04 03 00 00| ....| type: "long" (772) ((signed 64-bit) 8-byte number) 0xfc-0xff.7 (4)
0x100|52 e1 0d 00 00 00 00 00 |R....... | data: 909650 0x100-0x107.7 (8)
0x140| c8 00 00 00 | .... | offset: 200 0x148-0x14b.7 (4)
| | | [3]{}: element 0x108-0x14f.7 (72)
| | | record{}: 0x108-0x117.7 (16)
0x100| 08 00 00 00 | .... | length: 8 0x108-0x10b.7 (4)
0x100| 04 03 00 00| ....| type: "long" (772) ((signed 64-bit) 8-byte number) 0x10c-0x10f.7 (4)
0x110|b0 1f 0e 00 00 00 00 00 |........ | data: 925616 0x110-0x117.7 (8)
0x140| d8 00 00 00| ....| offset: 216 0x14c-0x14f.7 (4)
| | | [4]{}: element 0x118-0x153.7 (60)
| | | record{}: 0x118-0x127.7 (16)
0x110| 08 00 00 00 | .... | length: 8 0x118-0x11b.7 (4)
0x110| 04 03 00 00| ....| type: "long" (772) ((signed 64-bit) 8-byte number) 0x11c-0x11f.7 (4)
0x120|91 2b 2d 02 00 00 00 00 |.+-..... | data: 36514705 0x120-0x127.7 (8)
0x150|e8 00 00 00 |.... | offset: 232 0x150-0x153.7 (4)
| | | [5]{}: element 0x128-0x157.7 (48)
| | | record{}: 0x128-0x137.7 (16)
0x120| 08 00 00 00 | .... | length: 8 0x128-0x12b.7 (4)
0x120| 04 03 00 00| ....| type: "long" (772) ((signed 64-bit) 8-byte number) 0x12c-0x12f.7 (4)
0x130|92 2b 2d 02 00 00 00 00 |.+-..... | data: 36514706 0x130-0x137.7 (8)
0x150| f8 00 00 00 | .... | offset: 248 0x154-0x157.7 (4)
0x130| 18 00 00 00 | .... | length: 24 0x138-0x13b.7 (4)
0x130| 01 06 00 00| ....| type: "array" (1537) (Array of 4-byte offsets to data items) 0x13c-0x13f.7 (4)
0x260| 05 10 00 00 | .... | key: "target_cnid_path" (4101) (Array of CNIDs) 0x268-0x26b.7 (4)
0x260| 08 01 00 00| ....| offset_to_record: 264 0x26c-0x26f.7 (4)
0x270|00 00 00 00 |.... | unused: 0 0x270-0x273.7 (4)
| | | [2]{}: entry 0x168-0x27f.7 (280)
| | | record{}: 0x168-0x187.7 (32)
0x160| 18 00 00 00 | .... | length: 24 (valid) 0x168-0x16b.7 (4)
0x160| 01 02 00 00| ....| raw_type: "data" (513) (valid) 0x16c-0x16f.7 (4)
| | | type: "flag_data" 0x170-NA (0)
| | | property_flags{}: 0x170-0x177.7 (8)
0x170|02 |. | is_hidden: false 0x170-0x170 (0.1)
0x170|02 |. | is_user_immutable: false 0x170.1-0x170.1 (0.1)
0x170|02 |. | is_system_immutable: false 0x170.2-0x170.2 (0.1)
0x170|02 |. | is_package: false 0x170.3-0x170.3 (0.1)
0x170|02 |. | is_volume: false 0x170.4-0x170.4 (0.1)
0x170|02 |. | is_symbolic_link: false 0x170.5-0x170.5 (0.1)
0x170|02 |. | is_directory: true 0x170.6-0x170.6 (0.1)
0x170|02 |. | is_regular_file: false 0x170.7-0x170.7 (0.1)
0x170| 00 | . | is_alias_file: false 0x171-0x171 (0.1)
0x170| 00 | . | is_executable: false 0x171.1-0x171.1 (0.1)
0x170| 00 | . | is_writeable: false 0x171.2-0x171.2 (0.1)
0x170| 00 | . | is_readable: false 0x171.3-0x171.3 (0.1)
0x170| 00 | . | can_set_hidden_extension: false 0x171.4-0x171.4 (0.1)
0x170| 00 | . | is_compressed: false 0x171.5-0x171.5 (0.1)
0x170| 00 | . | is_application: false 0x171.6-0x171.6 (0.1)
0x170| 00 | . | has_hidden_extension: false 0x171.7-0x171.7 (0.1)
0x170| 00 | . | reserved_bits_0: raw bits 0x172-0x172.6 (0.7)
0x170| 00 | . | is_mount_trigger: false 0x172.7-0x172.7 (0.1)
0x170| 00 00 00 00 00 | ..... | reserved: raw bits 0x173-0x177.7 (5)
| | | enabled_property_flags{}: 0x178-0x17f.7 (8)
0x170| 1f | . | is_hidden: false 0x178-0x178 (0.1)
0x170| 1f | . | is_user_immutable: false 0x178.1-0x178.1 (0.1)
0x170| 1f | . | is_system_immutable: false 0x178.2-0x178.2 (0.1)
0x170| 1f | . | is_package: true 0x178.3-0x178.3 (0.1)
0x170| 1f | . | is_volume: true 0x178.4-0x178.4 (0.1)
0x170| 1f | . | is_symbolic_link: true 0x178.5-0x178.5 (0.1)
0x170| 1f | . | is_directory: true 0x178.6-0x178.6 (0.1)
0x170| 1f | . | is_regular_file: true 0x178.7-0x178.7 (0.1)
0x170| 02 | . | is_alias_file: false 0x179-0x179 (0.1)
0x170| 02 | . | is_executable: false 0x179.1-0x179.1 (0.1)
0x170| 02 | . | is_writeable: false 0x179.2-0x179.2 (0.1)
0x170| 02 | . | is_readable: false 0x179.3-0x179.3 (0.1)
0x170| 02 | . | can_set_hidden_extension: false 0x179.4-0x179.4 (0.1)
0x170| 02 | . | is_compressed: false 0x179.5-0x179.5 (0.1)
0x170| 02 | . | is_application: true 0x179.6-0x179.6 (0.1)
0x170| 02 | . | has_hidden_extension: false 0x179.7-0x179.7 (0.1)
0x170| 00 | . | reserved_bits_0: raw bits 0x17a-0x17a.6 (0.7)
0x170| 00 | . | is_mount_trigger: false 0x17a.7-0x17a.7 (0.1)
0x170| 00 00 00 00 00| .....| reserved: raw bits 0x17b-0x17f.7 (5)
0x180|1a 02 00 00 00 00 00 00 |........ | reserved: raw bits 0x180-0x187.7 (8)
0x270| 10 10 00 00 | .... | key: "target_flags" (4112) (flag bitfield) 0x274-0x277.7 (4)
0x270| 38 01 00 00 | 8... | offset_to_record: 312 0x278-0x27b.7 (4)
0x270| 00 00 00 00| ....| unused: 0 0x27c-0x27f.7 (4)
| | | [3]{}: entry 0x158-0x28b.7 (308)
| | | record{}: 0x158-0x167.7 (16)
0x150| 08 00 00 00 | .... | length: 8 0x158-0x15b.7 (4)
0x150| 00 04 00 00| ....| type: "date" (1024) (Big-endian IEEE double precision seconds since 2001-01-01 00:00:00 UTC) 0x15c-0x15f.7 (4)
0x160|41 c4 11 9d 61 74 66 30 |A...atf0 | data: 6.733974429093685e+08 (2022-05-04T22:50:42Z) 0x160-0x167.7 (8)
0x280|40 10 00 00 |@... | key: "target_creation_date" (4160) (Date) 0x280-0x283.7 (4)
0x280| 28 01 00 00 | (... | offset_to_record: 296 0x284-0x287.7 (4)
0x280| 00 00 00 00 | .... | unused: 0 0x288-0x28b.7 (4)
| | | [4]{}: entry 0x234-0x297.7 (100)
| | | record{}: 0x234-0x23f.7 (12)
0x230| 01 00 00 00 | .... | length: 1 0x234-0x237.7 (4)
0x230| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x238-0x23b.7 (4)
0x230| 2f | / | data: "/" 0x23c-0x23c.7 (1)
0x230| 00 00 00| ...| alignment_bytes: raw bits 0x23d-0x23f.7 (3)
0x280| 02 20 00 00| . ..| key: "volume_path" (8194) (Array of individual path components) 0x28c-0x28f.7 (4)
0x290|04 02 00 00 |.... | offset_to_record: 516 0x290-0x293.7 (4)
0x290| 00 00 00 00 | .... | unused: 0 0x294-0x297.7 (4)
| | | [5]{}: entry 0x1a4-0x2a3.7 (256)
| | | record{}: 0x1a4-0x1b3.7 (16)
0x1a0| 08 00 00 00 | .... | length: 8 0x1a4-0x1a7.7 (4)
0x1a0| 01 09 00 00 | .... | type: "url" (2305) (UTF-8 string) 0x1a8-0x1ab.7 (4)
0x1a0| 66 69 6c 65| file| data: "file:///" 0x1ac-0x1b3.7 (8)
0x0a0| 00 00 | .. | alignment_bytes: raw bits 0xa6-0xa8 (2)
0x0d0|5c 00 00 00 |\... | offset: 92 0xd0-0xd4 (4)
| | | [5]{}: element 0xa8-0xd8 (48)
| | | record{}: 0xa8-0xb8 (16)
0x0a0| 05 00 00 00 | .... | length: 5 0xa8-0xac (4)
0x0a0| 01 01 00 00| ....| type: "string" (257) (UTF-8 String) 0xac-0xb0 (4)
0x0b0|42 6c 69 6e 6b |Blink | data: "Blink" 0xb0-0xb5 (5)
0x0b0| 00 00 00 | ... | alignment_bytes: raw bits 0xb5-0xb8 (3)
0x0d0| 78 00 00 00 | x... | offset: 120 0xd4-0xd8 (4)
0x0b0| 18 00 00 00 | .... | length: 24 0xb8-0xbc (4)
0x0b0| 01 06 00 00| ....| type: "array" (1537) (Array of 4-byte offsets to data items) 0xbc-0xc0 (4)
0x250| 04 10 00 00| ....| key: "target_path" (4100) (Array of individual path components) 0x25c-0x260 (4)
0x260|88 00 00 00 |.... | offset_to_record: 136 0x260-0x264 (4)
0x260| 00 00 00 00 | .... | unused: 0 0x264-0x268 (4)
| | | [1]{}: entry 0xd8-0x274 (412)
| | | record{}: 0xd8-0x158 (128)
| | | data[0:6]: 0xd8-0x158 (128)
| | | [0]{}: element 0xd8-0x144 (108)
| | | record{}: 0xd8-0xe8 (16)
0x0d0| 08 00 00 00 | .... | length: 8 0xd8-0xdc (4)
0x0d0| 04 03 00 00| ....| type: "long" (772) ((signed 64-bit) 8-byte number) 0xdc-0xe0 (4)
0x0e0|0b 5b 00 00 00 00 00 00 |.[...... | data: 23307 0xe0-0xe8 (8)
0x140|a8 00 00 00 |.... | offset: 168 0x140-0x144 (4)
| | | [1]{}: element 0xe8-0x148 (96)
| | | record{}: 0xe8-0xf8 (16)
0x0e0| 08 00 00 00 | .... | length: 8 0xe8-0xec (4)
0x0e0| 04 03 00 00| ....| type: "long" (772) ((signed 64-bit) 8-byte number) 0xec-0xf0 (4)
0x0f0|1c 9e 08 00 00 00 00 00 |........ | data: 564764 0xf0-0xf8 (8)
0x140| b8 00 00 00 | .... | offset: 184 0x144-0x148 (4)
| | | [2]{}: element 0xf8-0x14c (84)
| | | record{}: 0xf8-0x108 (16)
0x0f0| 08 00 00 00 | .... | length: 8 0xf8-0xfc (4)
0x0f0| 04 03 00 00| ....| type: "long" (772) ((signed 64-bit) 8-byte number) 0xfc-0x100 (4)
0x100|52 e1 0d 00 00 00 00 00 |R....... | data: 909650 0x100-0x108 (8)
0x140| c8 00 00 00 | .... | offset: 200 0x148-0x14c (4)
| | | [3]{}: element 0x108-0x150 (72)
| | | record{}: 0x108-0x118 (16)
0x100| 08 00 00 00 | .... | length: 8 0x108-0x10c (4)
0x100| 04 03 00 00| ....| type: "long" (772) ((signed 64-bit) 8-byte number) 0x10c-0x110 (4)
0x110|b0 1f 0e 00 00 00 00 00 |........ | data: 925616 0x110-0x118 (8)
0x140| d8 00 00 00| ....| offset: 216 0x14c-0x150 (4)
| | | [4]{}: element 0x118-0x154 (60)
| | | record{}: 0x118-0x128 (16)
0x110| 08 00 00 00 | .... | length: 8 0x118-0x11c (4)
0x110| 04 03 00 00| ....| type: "long" (772) ((signed 64-bit) 8-byte number) 0x11c-0x120 (4)
0x120|91 2b 2d 02 00 00 00 00 |.+-..... | data: 36514705 0x120-0x128 (8)
0x150|e8 00 00 00 |.... | offset: 232 0x150-0x154 (4)
| | | [5]{}: element 0x128-0x158 (48)
| | | record{}: 0x128-0x138 (16)
0x120| 08 00 00 00 | .... | length: 8 0x128-0x12c (4)
0x120| 04 03 00 00| ....| type: "long" (772) ((signed 64-bit) 8-byte number) 0x12c-0x130 (4)
0x130|92 2b 2d 02 00 00 00 00 |.+-..... | data: 36514706 0x130-0x138 (8)
0x150| f8 00 00 00 | .... | offset: 248 0x154-0x158 (4)
0x130| 18 00 00 00 | .... | length: 24 0x138-0x13c (4)
0x130| 01 06 00 00| ....| type: "array" (1537) (Array of 4-byte offsets to data items) 0x13c-0x140 (4)
0x260| 05 10 00 00 | .... | key: "target_cnid_path" (4101) (Array of CNIDs) 0x268-0x26c (4)
0x260| 08 01 00 00| ....| offset_to_record: 264 0x26c-0x270 (4)
0x270|00 00 00 00 |.... | unused: 0 0x270-0x274 (4)
| | | [2]{}: entry 0x168-0x280 (280)
| | | record{}: 0x168-0x188 (32)
0x160| 18 00 00 00 | .... | length: 24 (valid) 0x168-0x16c (4)
0x160| 01 02 00 00| ....| raw_type: "data" (513) (valid) 0x16c-0x170 (4)
| | | type: "flag_data"
| | | property_flags{}: 0x170-0x178 (8)
0x170|02 |. | is_hidden: false 0x170-0x170.1 (0.1)
0x170|02 |. | is_user_immutable: false 0x170.1-0x170.2 (0.1)
0x170|02 |. | is_system_immutable: false 0x170.2-0x170.3 (0.1)
0x170|02 |. | is_package: false 0x170.3-0x170.4 (0.1)
0x170|02 |. | is_volume: false 0x170.4-0x170.5 (0.1)
0x170|02 |. | is_symbolic_link: false 0x170.5-0x170.6 (0.1)
0x170|02 |. | is_directory: true 0x170.6-0x170.7 (0.1)
0x170|02 |. | is_regular_file: false 0x170.7-0x171 (0.1)
0x170| 00 | . | is_alias_file: false 0x171-0x171.1 (0.1)
0x170| 00 | . | is_executable: false 0x171.1-0x171.2 (0.1)
0x170| 00 | . | is_writeable: false 0x171.2-0x171.3 (0.1)
0x170| 00 | . | is_readable: false 0x171.3-0x171.4 (0.1)
0x170| 00 | . | can_set_hidden_extension: false 0x171.4-0x171.5 (0.1)
0x170| 00 | . | is_compressed: false 0x171.5-0x171.6 (0.1)
0x170| 00 | . | is_application: false 0x171.6-0x171.7 (0.1)
0x170| 00 | . | has_hidden_extension: false 0x171.7-0x172 (0.1)
0x170| 00 | . | reserved_bits_0: raw bits 0x172-0x172.7 (0.7)
0x170| 00 | . | is_mount_trigger: false 0x172.7-0x173 (0.1)
0x170| 00 00 00 00 00 | ..... | reserved: raw bits 0x173-0x178 (5)
| | | enabled_property_flags{}: 0x178-0x180 (8)
0x170| 1f | . | is_hidden: false 0x178-0x178.1 (0.1)
0x170| 1f | . | is_user_immutable: false 0x178.1-0x178.2 (0.1)
0x170| 1f | . | is_system_immutable: false 0x178.2-0x178.3 (0.1)
0x170| 1f | . | is_package: true 0x178.3-0x178.4 (0.1)
0x170| 1f | . | is_volume: true 0x178.4-0x178.5 (0.1)
0x170| 1f | . | is_symbolic_link: true 0x178.5-0x178.6 (0.1)
0x170| 1f | . | is_directory: true 0x178.6-0x178.7 (0.1)
0x170| 1f | . | is_regular_file: true 0x178.7-0x179 (0.1)
0x170| 02 | . | is_alias_file: false 0x179-0x179.1 (0.1)
0x170| 02 | . | is_executable: false 0x179.1-0x179.2 (0.1)
0x170| 02 | . | is_writeable: false 0x179.2-0x179.3 (0.1)
0x170| 02 | . | is_readable: false 0x179.3-0x179.4 (0.1)
0x170| 02 | . | can_set_hidden_extension: false 0x179.4-0x179.5 (0.1)
0x170| 02 | . | is_compressed: false 0x179.5-0x179.6 (0.1)
0x170| 02 | . | is_application: true 0x179.6-0x179.7 (0.1)
0x170| 02 | . | has_hidden_extension: false 0x179.7-0x17a (0.1)
0x170| 00 | . | reserved_bits_0: raw bits 0x17a-0x17a.7 (0.7)
0x170| 00 | . | is_mount_trigger: false 0x17a.7-0x17b (0.1)
0x170| 00 00 00 00 00| .....| reserved: raw bits 0x17b-0x180 (5)
0x180|1a 02 00 00 00 00 00 00 |........ | reserved: raw bits 0x180-0x188 (8)
0x270| 10 10 00 00 | .... | key: "target_flags" (4112) (flag bitfield) 0x274-0x278 (4)
0x270| 38 01 00 00 | 8... | offset_to_record: 312 0x278-0x27c (4)
0x270| 00 00 00 00| ....| unused: 0 0x27c-0x280 (4)
| | | [3]{}: entry 0x158-0x28c (308)
| | | record{}: 0x158-0x168 (16)
0x150| 08 00 00 00 | .... | length: 8 0x158-0x15c (4)
0x150| 00 04 00 00| ....| type: "date" (1024) (Big-endian IEEE double precision seconds since 2001-01-01 00:00:00 UTC) 0x15c-0x160 (4)
0x160|41 c4 11 9d 61 74 66 30 |A...atf0 | data: 6.733974429093685e+08 (2022-05-04T22:50:42Z) 0x160-0x168 (8)
0x280|40 10 00 00 |@... | key: "target_creation_date" (4160) (Date) 0x280-0x284 (4)
0x280| 28 01 00 00 | (... | offset_to_record: 296 0x284-0x288 (4)
0x280| 00 00 00 00 | .... | unused: 0 0x288-0x28c (4)
| | | [4]{}: entry 0x234-0x298 (100)
| | | record{}: 0x234-0x240 (12)
0x230| 01 00 00 00 | .... | length: 1 0x234-0x238 (4)
0x230| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x238-0x23c (4)
0x230| 2f | / | data: "/" 0x23c-0x23d (1)
0x230| 00 00 00| ...| alignment_bytes: raw bits 0x23d-0x240 (3)
0x280| 02 20 00 00| . ..| key: "volume_path" (8194) (Array of individual path components) 0x28c-0x290 (4)
0x290|04 02 00 00 |.... | offset_to_record: 516 0x290-0x294 (4)
0x290| 00 00 00 00 | .... | unused: 0 0x294-0x298 (4)
| | | [5]{}: entry 0x1a4-0x2a4 (256)
| | | record{}: 0x1a4-0x1b4 (16)
0x1a0| 08 00 00 00 | .... | length: 8 0x1a4-0x1a8 (4)
0x1a0| 01 09 00 00 | .... | type: "url" (2305) (UTF-8 string) 0x1a8-0x1ac (4)
0x1a0| 66 69 6c 65| file| data: "file:///" 0x1ac-0x1b4 (8)
0x1b0|3a 2f 2f 2f |:/// |
0x290| 05 20 00 00 | . .. | key: "volume_url" (8197) (URL of volume root) 0x298-0x29b.7 (4)
0x290| 74 01 00 00| t...| offset_to_record: 372 0x29c-0x29f.7 (4)
0x2a0|00 00 00 00 |.... | unused: 0 0x2a0-0x2a3.7 (4)
| | | [6]{}: entry 0x1b4-0x2af.7 (252)
| | | record{}: 0x1b4-0x1cb.7 (24)
0x1b0| 0c 00 00 00 | .... | length: 12 0x1b4-0x1b7.7 (4)
0x1b0| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x1b8-0x1bb.7 (4)
0x1b0| 4d 61 63 69| Maci| data: "Macintosh HD" 0x1bc-0x1c7.7 (12)
0x290| 05 20 00 00 | . .. | key: "volume_url" (8197) (URL of volume root) 0x298-0x29c (4)
0x290| 74 01 00 00| t...| offset_to_record: 372 0x29c-0x2a0 (4)
0x2a0|00 00 00 00 |.... | unused: 0 0x2a0-0x2a4 (4)
| | | [6]{}: entry 0x1b4-0x2b0 (252)
| | | record{}: 0x1b4-0x1cc (24)
0x1b0| 0c 00 00 00 | .... | length: 12 0x1b4-0x1b8 (4)
0x1b0| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x1b8-0x1bc (4)
0x1b0| 4d 61 63 69| Maci| data: "Macintosh HD" 0x1bc-0x1c8 (12)
0x1c0|6e 74 6f 73 68 20 48 44 |ntosh HD |
0x1c0| 08 00 00 00 | .... | alignment_bytes: raw bits 0x1c8-0x1cb.7 (4)
0x2a0| 10 20 00 00 | . .. | key: "volume_name" (8208) (String) 0x2a4-0x2a7.7 (4)
0x2a0| 84 01 00 00 | .... | offset_to_record: 388 0x2a8-0x2ab.7 (4)
0x2a0| 00 00 00 00| ....| unused: 0 0x2ac-0x2af.7 (4)
| | | [7]{}: entry 0x1e8-0x2bb.7 (212)
| | | record{}: 0x1e8-0x217.7 (48)
0x1e0| 24 00 00 00 | $... | length: 36 0x1e8-0x1eb.7 (4)
0x1e0| 01 01 00 00| ....| type: "string" (257) (UTF-8 String) 0x1ec-0x1ef.7 (4)
0x1f0|38 41 38 32 39 41 30 33 2d 39 42 32 34 2d 34 30|8A829A03-9B24-40| data: "8A829A03-9B24-4085-8051-18978712E4BE" 0x1f0-0x213.7 (36)
0x1c0| 08 00 00 00 | .... | alignment_bytes: raw bits 0x1c8-0x1cc (4)
0x2a0| 10 20 00 00 | . .. | key: "volume_name" (8208) (String) 0x2a4-0x2a8 (4)
0x2a0| 84 01 00 00 | .... | offset_to_record: 388 0x2a8-0x2ac (4)
0x2a0| 00 00 00 00| ....| unused: 0 0x2ac-0x2b0 (4)
| | | [7]{}: entry 0x1e8-0x2bc (212)
| | | record{}: 0x1e8-0x218 (48)
0x1e0| 24 00 00 00 | $... | length: 36 0x1e8-0x1ec (4)
0x1e0| 01 01 00 00| ....| type: "string" (257) (UTF-8 String) 0x1ec-0x1f0 (4)
0x1f0|38 41 38 32 39 41 30 33 2d 39 42 32 34 2d 34 30|8A829A03-9B24-40| data: "8A829A03-9B24-4085-8051-18978712E4BE" 0x1f0-0x214 (36)
* |until 0x213.7 (36) | |
0x210| 18 00 00 00 | .... | alignment_bytes: raw bits 0x214-0x217.7 (4)
0x2b0|11 20 00 00 |. .. | key: "volume_uuid" (8209) (String UUID) 0x2b0-0x2b3.7 (4)
0x2b0| b8 01 00 00 | .... | offset_to_record: 440 0x2b4-0x2b7.7 (4)
0x2b0| 00 00 00 00 | .... | unused: 0 0x2b8-0x2bb.7 (4)
| | | [8]{}: entry 0x1c8-0x2c7.7 (256)
| | | record{}: 0x1c8-0x1d7.7 (16)
0x1c0| 08 00 00 00 | .... | length: 8 0x1c8-0x1cb.7 (4)
0x1c0| 04 03 00 00| ....| type: "long" (772) ((signed 64-bit) 8-byte number) 0x1cc-0x1cf.7 (4)
0x1d0|00 a0 20 68 74 00 00 00 |.. ht... | data: 499963174912 0x1d0-0x1d7.7 (8)
0x2b0| 12 20 00 00| . ..| key: "volume_size" (8210) (8-byte integer) 0x2bc-0x2bf.7 (4)
0x2c0|98 01 00 00 |.... | offset_to_record: 408 0x2c0-0x2c3.7 (4)
0x2c0| 00 00 00 00 | .... | unused: 0 0x2c4-0x2c7.7 (4)
| | | [9]{}: entry 0x1d8-0x2d3.7 (252)
| | | record{}: 0x1d8-0x1e7.7 (16)
0x1d0| 08 00 00 00 | .... | length: 8 0x1d8-0x1db.7 (4)
0x1d0| 00 04 00 00| ....| type: "date" (1024) (Big-endian IEEE double precision seconds since 2001-01-01 00:00:00 UTC) 0x1dc-0x1df.7 (4)
0x1e0|41 c1 de 44 80 00 00 00 |A..D.... | data: 5.995584e+08 (2020-01-01T08:00:00Z) 0x1e0-0x1e7.7 (8)
0x2c0| 13 20 00 00 | . .. | key: "volume_creation_date" (8211) (Date) 0x2c8-0x2cb.7 (4)
0x2c0| a8 01 00 00| ....| offset_to_record: 424 0x2cc-0x2cf.7 (4)
0x2d0|00 00 00 00 |.... | unused: 0 0x2d0-0x2d3.7 (4)
| | | [10]{}: entry 0x214-0x2df.7 (204)
| | | record{}: 0x214-0x233.7 (32)
0x210| 18 00 00 00 | .... | length: 24 (valid) 0x214-0x217.7 (4)
0x210| 01 02 00 00 | .... | raw_type: "data" (513) (valid) 0x218-0x21b.7 (4)
| | | type: "flag_data" 0x21c-NA (0)
| | | property_flags{}: 0x21c-0x223.7 (8)
0x210| 81 | . | is_internal: true 0x21c-0x21c (0.1)
0x210| 81 | . | is_removable: false 0x21c.1-0x21c.1 (0.1)
0x210| 81 | . | is_ejectable: false 0x21c.2-0x21c.2 (0.1)
0x210| 81 | . | is_quarantined: false 0x21c.3-0x21c.3 (0.1)
0x210| 81 | . | is_read_only: false 0x21c.4-0x21c.4 (0.1)
0x210| 81 | . | dont_browse: false 0x21c.5-0x21c.5 (0.1)
0x210| 81 | . | is_automount: false 0x21c.6-0x21c.6 (0.1)
0x210| 81 | . | is_local: true 0x21c.7-0x21c.7 (0.1)
0x210| 00 | . | is_dvd: false 0x21d-0x21d (0.1)
0x210| 00 | . | is_cd: false 0x21d.1-0x21d.1 (0.1)
0x210| 00 | . | is_idisk: false 0x21d.2-0x21d.2 (0.1)
0x210| 00 | . | is_ipod: false 0x21d.3-0x21d.3 (0.1)
0x210| 00 | . | is_local_idisk_mirror: false 0x21d.4-0x21d.4 (0.1)
0x210| 00 | . | is_file_vault: false 0x21d.5-0x21d.5 (0.1)
0x210| 00 | . | is_disk_image: false 0x21d.6-0x21d.6 (0.1)
0x210| 00 | . | is_external: false 0x21d.7-0x21d.7 (0.1)
0x210| 00 | . | reserved_0: raw bits 0x21e-0x21e.6 (0.7)
0x210| 00 | . | is_device_file_system: false 0x21e.7-0x21e.7 (0.1)
0x210| 00| .| reserved_1: raw bits 0x21f-0x21f.7 (1)
0x220|01 |. | supports_read_dir_attr: false 0x220-0x220 (0.1)
0x220|01 |. | supports_copy_file: false 0x220.1-0x220.1 (0.1)
0x220|01 |. | supports_deny_modes: false 0x220.2-0x220.2 (0.1)
0x220|01 |. | supports_symbolic_links: false 0x220.3-0x220.3 (0.1)
0x220|01 |. | reserved_2: false 0x220.4-0x220.4 (0.1)
0x220|01 |. | supports_exchange: false 0x220.5-0x220.5 (0.1)
0x220|01 |. | supports_search_fs: false 0x220.6-0x220.6 (0.1)
0x220|01 |. | supports_persistent_ids: true 0x220.7-0x220.7 (0.1)
0x220| 00 | . | supports_extended_security: false 0x221-0x221 (0.1)
0x220| 00 | . | has_no_root_directory_times: false 0x221.1-0x221.1 (0.1)
0x220| 00 | . | supports_flock: false 0x221.2-0x221.2 (0.1)
0x220| 00 | . | supports_case_preserved_names: false 0x221.3-0x221.3 (0.1)
0x220| 00 | . | supports_case_sensitive_names: false 0x221.4-0x221.4 (0.1)
0x220| 00 | . | supports_fast_stat_fs: false 0x221.5-0x221.5 (0.1)
0x220| 00 | . | supports_rename: false 0x221.6-0x221.6 (0.1)
0x220| 00 | . | supports_journaling: false 0x221.7-0x221.7 (0.1)
0x220| 00 | . | supports_zero_runs: false 0x222-0x222 (0.1)
0x220| 00 | . | supports_sparse_files: false 0x222.1-0x222.1 (0.1)
0x220| 00 | . | is_journaling: false 0x222.2-0x222.2 (0.1)
0x220| 00 | . | reserved_3: false 0x222.3-0x222.3 (0.1)
0x220| 00 | . | supports_path_from_id: false 0x222.4-0x222.4 (0.1)
0x220| 00 | . | supports_mandatory_byte_range_locks: false 0x222.5-0x222.5 (0.1)
0x220| 00 | . | supports_hard_links: false 0x222.6-0x222.6 (0.1)
0x220| 00 | . | supports_2_tb_file_size: false 0x222.7-0x222.7 (0.1)
0x220| 00 | . | reserved_4: raw bits 0x223-0x223.2 (0.3)
0x220| 00 | . | has64_bit_object_ids: false 0x223.3-0x223.3 (0.1)
0x220| 00 | . | supports_decmp_fs_compression: false 0x223.4-0x223.4 (0.1)
0x220| 00 | . | supports_hidden_files: false 0x223.5-0x223.5 (0.1)
0x220| 00 | . | supports_remote_events: false 0x223.6-0x223.6 (0.1)
0x220| 00 | . | supports_volume_sizes: false 0x223.7-0x223.7 (0.1)
| | | enabled_property_flags{}: 0x224-0x22b.7 (8)
0x220| ef | . | is_internal: true 0x224-0x224 (0.1)
0x220| ef | . | is_removable: true 0x224.1-0x224.1 (0.1)
0x220| ef | . | is_ejectable: true 0x224.2-0x224.2 (0.1)
0x220| ef | . | is_quarantined: false 0x224.3-0x224.3 (0.1)
0x220| ef | . | is_read_only: true 0x224.4-0x224.4 (0.1)
0x220| ef | . | dont_browse: true 0x224.5-0x224.5 (0.1)
0x220| ef | . | is_automount: true 0x224.6-0x224.6 (0.1)
0x220| ef | . | is_local: true 0x224.7-0x224.7 (0.1)
0x220| 13 | . | is_dvd: false 0x225-0x225 (0.1)
0x220| 13 | . | is_cd: false 0x225.1-0x225.1 (0.1)
0x220| 13 | . | is_idisk: false 0x225.2-0x225.2 (0.1)
0x220| 13 | . | is_ipod: true 0x225.3-0x225.3 (0.1)
0x220| 13 | . | is_local_idisk_mirror: false 0x225.4-0x225.4 (0.1)
0x220| 13 | . | is_file_vault: false 0x225.5-0x225.5 (0.1)
0x220| 13 | . | is_disk_image: true 0x225.6-0x225.6 (0.1)
0x220| 13 | . | is_external: true 0x225.7-0x225.7 (0.1)
0x220| 00 | . | reserved_0: raw bits 0x226-0x226.6 (0.7)
0x220| 00 | . | is_device_file_system: false 0x226.7-0x226.7 (0.1)
0x220| 00 | . | reserved_1: raw bits 0x227-0x227.7 (1)
0x220| 01 | . | supports_read_dir_attr: false 0x228-0x228 (0.1)
0x220| 01 | . | supports_copy_file: false 0x228.1-0x228.1 (0.1)
0x220| 01 | . | supports_deny_modes: false 0x228.2-0x228.2 (0.1)
0x220| 01 | . | supports_symbolic_links: false 0x228.3-0x228.3 (0.1)
0x220| 01 | . | reserved_2: false 0x228.4-0x228.4 (0.1)
0x220| 01 | . | supports_exchange: false 0x228.5-0x228.5 (0.1)
0x220| 01 | . | supports_search_fs: false 0x228.6-0x228.6 (0.1)
0x220| 01 | . | supports_persistent_ids: true 0x228.7-0x228.7 (0.1)
0x220| 00 | . | supports_extended_security: false 0x229-0x229 (0.1)
0x220| 00 | . | has_no_root_directory_times: false 0x229.1-0x229.1 (0.1)
0x220| 00 | . | supports_flock: false 0x229.2-0x229.2 (0.1)
0x220| 00 | . | supports_case_preserved_names: false 0x229.3-0x229.3 (0.1)
0x220| 00 | . | supports_case_sensitive_names: false 0x229.4-0x229.4 (0.1)
0x220| 00 | . | supports_fast_stat_fs: false 0x229.5-0x229.5 (0.1)
0x220| 00 | . | supports_rename: false 0x229.6-0x229.6 (0.1)
0x220| 00 | . | supports_journaling: false 0x229.7-0x229.7 (0.1)
0x220| 00 | . | supports_zero_runs: false 0x22a-0x22a (0.1)
0x220| 00 | . | supports_sparse_files: false 0x22a.1-0x22a.1 (0.1)
0x220| 00 | . | is_journaling: false 0x22a.2-0x22a.2 (0.1)
0x220| 00 | . | reserved_3: false 0x22a.3-0x22a.3 (0.1)
0x220| 00 | . | supports_path_from_id: false 0x22a.4-0x22a.4 (0.1)
0x220| 00 | . | supports_mandatory_byte_range_locks: false 0x22a.5-0x22a.5 (0.1)
0x220| 00 | . | supports_hard_links: false 0x22a.6-0x22a.6 (0.1)
0x220| 00 | . | supports_2_tb_file_size: false 0x22a.7-0x22a.7 (0.1)
0x220| 00 | . | reserved_4: raw bits 0x22b-0x22b.2 (0.3)
0x220| 00 | . | has64_bit_object_ids: false 0x22b.3-0x22b.3 (0.1)
0x220| 00 | . | supports_decmp_fs_compression: false 0x22b.4-0x22b.4 (0.1)
0x220| 00 | . | supports_hidden_files: false 0x22b.5-0x22b.5 (0.1)
0x220| 00 | . | supports_remote_events: false 0x22b.6-0x22b.6 (0.1)
0x220| 00 | . | supports_volume_sizes: false 0x22b.7-0x22b.7 (0.1)
0x220| 00 00 00 00| ....| reserved: raw bits 0x22c-0x233.7 (8)
0x210| 18 00 00 00 | .... | alignment_bytes: raw bits 0x214-0x218 (4)
0x2b0|11 20 00 00 |. .. | key: "volume_uuid" (8209) (String UUID) 0x2b0-0x2b4 (4)
0x2b0| b8 01 00 00 | .... | offset_to_record: 440 0x2b4-0x2b8 (4)
0x2b0| 00 00 00 00 | .... | unused: 0 0x2b8-0x2bc (4)
| | | [8]{}: entry 0x1c8-0x2c8 (256)
| | | record{}: 0x1c8-0x1d8 (16)
0x1c0| 08 00 00 00 | .... | length: 8 0x1c8-0x1cc (4)
0x1c0| 04 03 00 00| ....| type: "long" (772) ((signed 64-bit) 8-byte number) 0x1cc-0x1d0 (4)
0x1d0|00 a0 20 68 74 00 00 00 |.. ht... | data: 499963174912 0x1d0-0x1d8 (8)
0x2b0| 12 20 00 00| . ..| key: "volume_size" (8210) (8-byte integer) 0x2bc-0x2c0 (4)
0x2c0|98 01 00 00 |.... | offset_to_record: 408 0x2c0-0x2c4 (4)
0x2c0| 00 00 00 00 | .... | unused: 0 0x2c4-0x2c8 (4)
| | | [9]{}: entry 0x1d8-0x2d4 (252)
| | | record{}: 0x1d8-0x1e8 (16)
0x1d0| 08 00 00 00 | .... | length: 8 0x1d8-0x1dc (4)
0x1d0| 00 04 00 00| ....| type: "date" (1024) (Big-endian IEEE double precision seconds since 2001-01-01 00:00:00 UTC) 0x1dc-0x1e0 (4)
0x1e0|41 c1 de 44 80 00 00 00 |A..D.... | data: 5.995584e+08 (2020-01-01T08:00:00Z) 0x1e0-0x1e8 (8)
0x2c0| 13 20 00 00 | . .. | key: "volume_creation_date" (8211) (Date) 0x2c8-0x2cc (4)
0x2c0| a8 01 00 00| ....| offset_to_record: 424 0x2cc-0x2d0 (4)
0x2d0|00 00 00 00 |.... | unused: 0 0x2d0-0x2d4 (4)
| | | [10]{}: entry 0x214-0x2e0 (204)
| | | record{}: 0x214-0x234 (32)
0x210| 18 00 00 00 | .... | length: 24 (valid) 0x214-0x218 (4)
0x210| 01 02 00 00 | .... | raw_type: "data" (513) (valid) 0x218-0x21c (4)
| | | type: "flag_data"
| | | property_flags{}: 0x21c-0x224 (8)
0x210| 81 | . | is_internal: true 0x21c-0x21c.1 (0.1)
0x210| 81 | . | is_removable: false 0x21c.1-0x21c.2 (0.1)
0x210| 81 | . | is_ejectable: false 0x21c.2-0x21c.3 (0.1)
0x210| 81 | . | is_quarantined: false 0x21c.3-0x21c.4 (0.1)
0x210| 81 | . | is_read_only: false 0x21c.4-0x21c.5 (0.1)
0x210| 81 | . | dont_browse: false 0x21c.5-0x21c.6 (0.1)
0x210| 81 | . | is_automount: false 0x21c.6-0x21c.7 (0.1)
0x210| 81 | . | is_local: true 0x21c.7-0x21d (0.1)
0x210| 00 | . | is_dvd: false 0x21d-0x21d.1 (0.1)
0x210| 00 | . | is_cd: false 0x21d.1-0x21d.2 (0.1)
0x210| 00 | . | is_idisk: false 0x21d.2-0x21d.3 (0.1)
0x210| 00 | . | is_ipod: false 0x21d.3-0x21d.4 (0.1)
0x210| 00 | . | is_local_idisk_mirror: false 0x21d.4-0x21d.5 (0.1)
0x210| 00 | . | is_file_vault: false 0x21d.5-0x21d.6 (0.1)
0x210| 00 | . | is_disk_image: false 0x21d.6-0x21d.7 (0.1)
0x210| 00 | . | is_external: false 0x21d.7-0x21e (0.1)
0x210| 00 | . | reserved_0: raw bits 0x21e-0x21e.7 (0.7)
0x210| 00 | . | is_device_file_system: false 0x21e.7-0x21f (0.1)
0x210| 00| .| reserved_1: raw bits 0x21f-0x220 (1)
0x220|01 |. | supports_read_dir_attr: false 0x220-0x220.1 (0.1)
0x220|01 |. | supports_copy_file: false 0x220.1-0x220.2 (0.1)
0x220|01 |. | supports_deny_modes: false 0x220.2-0x220.3 (0.1)
0x220|01 |. | supports_symbolic_links: false 0x220.3-0x220.4 (0.1)
0x220|01 |. | reserved_2: false 0x220.4-0x220.5 (0.1)
0x220|01 |. | supports_exchange: false 0x220.5-0x220.6 (0.1)
0x220|01 |. | supports_search_fs: false 0x220.6-0x220.7 (0.1)
0x220|01 |. | supports_persistent_ids: true 0x220.7-0x221 (0.1)
0x220| 00 | . | supports_extended_security: false 0x221-0x221.1 (0.1)
0x220| 00 | . | has_no_root_directory_times: false 0x221.1-0x221.2 (0.1)
0x220| 00 | . | supports_flock: false 0x221.2-0x221.3 (0.1)
0x220| 00 | . | supports_case_preserved_names: false 0x221.3-0x221.4 (0.1)
0x220| 00 | . | supports_case_sensitive_names: false 0x221.4-0x221.5 (0.1)
0x220| 00 | . | supports_fast_stat_fs: false 0x221.5-0x221.6 (0.1)
0x220| 00 | . | supports_rename: false 0x221.6-0x221.7 (0.1)
0x220| 00 | . | supports_journaling: false 0x221.7-0x222 (0.1)
0x220| 00 | . | supports_zero_runs: false 0x222-0x222.1 (0.1)
0x220| 00 | . | supports_sparse_files: false 0x222.1-0x222.2 (0.1)
0x220| 00 | . | is_journaling: false 0x222.2-0x222.3 (0.1)
0x220| 00 | . | reserved_3: false 0x222.3-0x222.4 (0.1)
0x220| 00 | . | supports_path_from_id: false 0x222.4-0x222.5 (0.1)
0x220| 00 | . | supports_mandatory_byte_range_locks: false 0x222.5-0x222.6 (0.1)
0x220| 00 | . | supports_hard_links: false 0x222.6-0x222.7 (0.1)
0x220| 00 | . | supports_2_tb_file_size: false 0x222.7-0x223 (0.1)
0x220| 00 | . | reserved_4: raw bits 0x223-0x223.3 (0.3)
0x220| 00 | . | has64_bit_object_ids: false 0x223.3-0x223.4 (0.1)
0x220| 00 | . | supports_decmp_fs_compression: false 0x223.4-0x223.5 (0.1)
0x220| 00 | . | supports_hidden_files: false 0x223.5-0x223.6 (0.1)
0x220| 00 | . | supports_remote_events: false 0x223.6-0x223.7 (0.1)
0x220| 00 | . | supports_volume_sizes: false 0x223.7-0x224 (0.1)
| | | enabled_property_flags{}: 0x224-0x22c (8)
0x220| ef | . | is_internal: true 0x224-0x224.1 (0.1)
0x220| ef | . | is_removable: true 0x224.1-0x224.2 (0.1)
0x220| ef | . | is_ejectable: true 0x224.2-0x224.3 (0.1)
0x220| ef | . | is_quarantined: false 0x224.3-0x224.4 (0.1)
0x220| ef | . | is_read_only: true 0x224.4-0x224.5 (0.1)
0x220| ef | . | dont_browse: true 0x224.5-0x224.6 (0.1)
0x220| ef | . | is_automount: true 0x224.6-0x224.7 (0.1)
0x220| ef | . | is_local: true 0x224.7-0x225 (0.1)
0x220| 13 | . | is_dvd: false 0x225-0x225.1 (0.1)
0x220| 13 | . | is_cd: false 0x225.1-0x225.2 (0.1)
0x220| 13 | . | is_idisk: false 0x225.2-0x225.3 (0.1)
0x220| 13 | . | is_ipod: true 0x225.3-0x225.4 (0.1)
0x220| 13 | . | is_local_idisk_mirror: false 0x225.4-0x225.5 (0.1)
0x220| 13 | . | is_file_vault: false 0x225.5-0x225.6 (0.1)
0x220| 13 | . | is_disk_image: true 0x225.6-0x225.7 (0.1)
0x220| 13 | . | is_external: true 0x225.7-0x226 (0.1)
0x220| 00 | . | reserved_0: raw bits 0x226-0x226.7 (0.7)
0x220| 00 | . | is_device_file_system: false 0x226.7-0x227 (0.1)
0x220| 00 | . | reserved_1: raw bits 0x227-0x228 (1)
0x220| 01 | . | supports_read_dir_attr: false 0x228-0x228.1 (0.1)
0x220| 01 | . | supports_copy_file: false 0x228.1-0x228.2 (0.1)
0x220| 01 | . | supports_deny_modes: false 0x228.2-0x228.3 (0.1)
0x220| 01 | . | supports_symbolic_links: false 0x228.3-0x228.4 (0.1)
0x220| 01 | . | reserved_2: false 0x228.4-0x228.5 (0.1)
0x220| 01 | . | supports_exchange: false 0x228.5-0x228.6 (0.1)
0x220| 01 | . | supports_search_fs: false 0x228.6-0x228.7 (0.1)
0x220| 01 | . | supports_persistent_ids: true 0x228.7-0x229 (0.1)
0x220| 00 | . | supports_extended_security: false 0x229-0x229.1 (0.1)
0x220| 00 | . | has_no_root_directory_times: false 0x229.1-0x229.2 (0.1)
0x220| 00 | . | supports_flock: false 0x229.2-0x229.3 (0.1)
0x220| 00 | . | supports_case_preserved_names: false 0x229.3-0x229.4 (0.1)
0x220| 00 | . | supports_case_sensitive_names: false 0x229.4-0x229.5 (0.1)
0x220| 00 | . | supports_fast_stat_fs: false 0x229.5-0x229.6 (0.1)
0x220| 00 | . | supports_rename: false 0x229.6-0x229.7 (0.1)
0x220| 00 | . | supports_journaling: false 0x229.7-0x22a (0.1)
0x220| 00 | . | supports_zero_runs: false 0x22a-0x22a.1 (0.1)
0x220| 00 | . | supports_sparse_files: false 0x22a.1-0x22a.2 (0.1)
0x220| 00 | . | is_journaling: false 0x22a.2-0x22a.3 (0.1)
0x220| 00 | . | reserved_3: false 0x22a.3-0x22a.4 (0.1)
0x220| 00 | . | supports_path_from_id: false 0x22a.4-0x22a.5 (0.1)
0x220| 00 | . | supports_mandatory_byte_range_locks: false 0x22a.5-0x22a.6 (0.1)
0x220| 00 | . | supports_hard_links: false 0x22a.6-0x22a.7 (0.1)
0x220| 00 | . | supports_2_tb_file_size: false 0x22a.7-0x22b (0.1)
0x220| 00 | . | reserved_4: raw bits 0x22b-0x22b.3 (0.3)
0x220| 00 | . | has64_bit_object_ids: false 0x22b.3-0x22b.4 (0.1)
0x220| 00 | . | supports_decmp_fs_compression: false 0x22b.4-0x22b.5 (0.1)
0x220| 00 | . | supports_hidden_files: false 0x22b.5-0x22b.6 (0.1)
0x220| 00 | . | supports_remote_events: false 0x22b.6-0x22b.7 (0.1)
0x220| 00 | . | supports_volume_sizes: false 0x22b.7-0x22c (0.1)
0x220| 00 00 00 00| ....| reserved: raw bits 0x22c-0x234 (8)
0x230|00 00 00 00 |.... |
0x2d0| 20 20 00 00 | .. | key: "volume_flags" (8224) (flag bitfield) 0x2d4-0x2d7.7 (4)
0x2d0| e4 01 00 00 | .... | offset_to_record: 484 0x2d8-0x2db.7 (4)
0x2d0| 00 00 00 00| ....| unused: 0 0x2dc-0x2df.7 (4)
| | | [11]{}: entry 0x240-0x2eb.7 (172)
| | | record{}: 0x240-0x247.7 (8)
0x240|00 00 00 00 |.... | length: 0 0x240-0x243.7 (4)
0x240| 01 05 00 00 | .... | type: "boolean_true" (1281) (True) 0x244-0x247.7 (4)
0x2e0|30 20 00 00 |0 .. | key: "volume_is_root" (8240) (True if the volume was the filesystem root) 0x2e0-0x2e3.7 (4)
0x2e0| 10 02 00 00 | .... | offset_to_record: 528 0x2e4-0x2e7.7 (4)
0x2e0| 00 00 00 00 | .... | unused: 0 0x2e8-0x2eb.7 (4)
| | | [12]{}: entry 0x188-0x2f7.7 (368)
| | | record{}: 0x188-0x197.7 (16)
0x180| 08 00 00 00 | .... | length: 8 0x188-0x18b.7 (4)
0x180| 04 03 00 00| ....| type: "long" (772) ((signed 64-bit) 8-byte number) 0x18c-0x18f.7 (4)
0x190|04 00 00 00 00 00 00 00 |........ | data: 4 0x190-0x197.7 (8)
0x2e0| 01 c0 00 00| ....| key: "containing_folder_index" (49153) (Integer index of containing folder in target path array) 0x2ec-0x2ef.7 (4)
0x2f0|58 01 00 00 |X... | offset_to_record: 344 0x2f0-0x2f3.7 (4)
0x2f0| 00 00 00 00 | .... | unused: 0 0x2f4-0x2f7.7 (4)
| | | [13]{}: entry 0x50-0x303.7 (692)
| | | record{}: 0x50-0x67.7 (24)
0x050|0d 00 00 00 |.... | length: 13 0x50-0x53.7 (4)
0x050| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x54-0x57.7 (4)
0x050| 64 61 76 69 64 6d 63 64| davidmcd| data: "davidmcdonald" 0x58-0x64.7 (13)
0x2d0| 20 20 00 00 | .. | key: "volume_flags" (8224) (flag bitfield) 0x2d4-0x2d8 (4)
0x2d0| e4 01 00 00 | .... | offset_to_record: 484 0x2d8-0x2dc (4)
0x2d0| 00 00 00 00| ....| unused: 0 0x2dc-0x2e0 (4)
| | | [11]{}: entry 0x240-0x2ec (172)
| | | record{}: 0x240-0x248 (8)
0x240|00 00 00 00 |.... | length: 0 0x240-0x244 (4)
0x240| 01 05 00 00 | .... | type: "boolean_true" (1281) (True) 0x244-0x248 (4)
0x2e0|30 20 00 00 |0 .. | key: "volume_is_root" (8240) (True if the volume was the filesystem root) 0x2e0-0x2e4 (4)
0x2e0| 10 02 00 00 | .... | offset_to_record: 528 0x2e4-0x2e8 (4)
0x2e0| 00 00 00 00 | .... | unused: 0 0x2e8-0x2ec (4)
| | | [12]{}: entry 0x188-0x2f8 (368)
| | | record{}: 0x188-0x198 (16)
0x180| 08 00 00 00 | .... | length: 8 0x188-0x18c (4)
0x180| 04 03 00 00| ....| type: "long" (772) ((signed 64-bit) 8-byte number) 0x18c-0x190 (4)
0x190|04 00 00 00 00 00 00 00 |........ | data: 4 0x190-0x198 (8)
0x2e0| 01 c0 00 00| ....| key: "containing_folder_index" (49153) (Integer index of containing folder in target path array) 0x2ec-0x2f0 (4)
0x2f0|58 01 00 00 |X... | offset_to_record: 344 0x2f0-0x2f4 (4)
0x2f0| 00 00 00 00 | .... | unused: 0 0x2f4-0x2f8 (4)
| | | [13]{}: entry 0x50-0x304 (692)
| | | record{}: 0x50-0x68 (24)
0x050|0d 00 00 00 |.... | length: 13 0x50-0x54 (4)
0x050| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x54-0x58 (4)
0x050| 64 61 76 69 64 6d 63 64| davidmcd| data: "davidmcdonald" 0x58-0x65 (13)
0x060|6f 6e 61 6c 64 |onald |
0x060| 00 00 00 | ... | alignment_bytes: raw bits 0x65-0x67.7 (3)
0x2f0| 11 c0 00 00 | .... | key: "creator_username" (49169) (Name of user that created bookmark) 0x2f8-0x2fb.7 (4)
0x2f0| 20 00 00 00| ...| offset_to_record: 32 0x2fc-0x2ff.7 (4)
0x300|00 00 00 00 |.... | unused: 0 0x300-0x303.7 (4)
| | | [14]{}: entry 0x198-0x30f.7 (376)
| | | record{}: 0x198-0x1a3.7 (12)
0x190| 04 00 00 00 | .... | length: 4 0x198-0x19b.7 (4)
0x190| 03 03 00 00| ....| type: "int" (771) ((signed 32-bit) 4-byte number) 0x19c-0x19f.7 (4)
0x1a0|f5 01 00 00 |.... | data: 501 0x1a0-0x1a3.7 (4)
0x300| 12 c0 00 00 | .... | key: "creator_uid" (49170) (UID of user that created bookmark) 0x304-0x307.7 (4)
0x300| 68 01 00 00 | h... | offset_to_record: 360 0x308-0x30b.7 (4)
0x300| 00 00 00 00| ....| unused: 0 0x30c-0x30f.7 (4)
| | | [15]{}: entry 0x34-0x31b.7 (744)
| | | record{}: 0x34-0x3f.7 (12)
0x030| 04 00 00 00 | .... | length: 4 0x34-0x37.7 (4)
0x030| 03 03 00 00 | .... | type: "int" (771) ((signed 32-bit) 4-byte number) 0x38-0x3b.7 (4)
0x030| 00 00 00 20| ... | data: 536870912 0x3c-0x3f.7 (4)
0x310|10 d0 00 00 |.... | key: "creation_options" (53264) (Integer containing flags passed to CFURLCreateBookmarkData) 0x310-0x313.7 (4)
0x310| 04 00 00 00 | .... | offset_to_record: 4 0x314-0x317.7 (4)
0x310| 00 00 00 00 | .... | unused: 0 0x318-0x31b.7 (4)
| | | [16]{}: entry 0xa8-0x327.7 (640)
| | | record{}: 0xa8-0xb7.7 (16)
0x0a0| 05 00 00 00 | .... | length: 5 0xa8-0xab.7 (4)
0x0a0| 01 01 00 00| ....| type: "string" (257) (UTF-8 String) 0xac-0xaf.7 (4)
0x0b0|42 6c 69 6e 6b |Blink | data: "Blink" 0xb0-0xb4.7 (5)
0x0b0| 00 00 00 | ... | alignment_bytes: raw bits 0xb5-0xb7.7 (3)
0x310| 17 f0 00 00| ....| key: "display_name" (61463) (String) 0x31c-0x31f.7 (4)
0x320|78 00 00 00 |x... | offset_to_record: 120 0x320-0x323.7 (4)
0x320| 00 00 00 00 | .... | unused: 0 0x324-0x327.7 (4)
| | | [17]{}: entry 0x240-0x333.7 (244)
| | | record{}: 0x240-0x247.7 (8)
0x240|00 00 00 00 |.... | length: 0 0x240-0x243.7 (4)
0x240| 01 05 00 00 | .... | type: "boolean_true" (1281) (True) 0x244-0x247.7 (4)
0x320| 0f 00 0f 00 | .... | key: 983055 0x328-0x32b.7 (4)
0x320| 10 02 00 00| ....| offset_to_record: 528 0x32c-0x32f.7 (4)
0x330|00 00 00 00| |....| | unused: 0 0x330-0x333.7 (4)
| | | toc_headers[0:1]: 0x248-0x25b.7 (20)
| | | [0]{}: toc_header 0x248-0x25b.7 (20)
0x240| e4 00 00 00 | .... | toc_size: 228 0x248-0x24b.7 (4)
0x240| fe ff ff ff| ....| magic: 4294967294 (valid) 0x24c-0x24f.7 (4)
0x250|01 00 00 00 |.... | identifier: 1 0x250-0x253.7 (4)
0x250| 00 00 00 00 | .... | next_toc_offset: 0 0x254-0x257.7 (4)
0x250| 12 00 00 00 | .... | num_entries_in_toc: 18 0x258-0x25b.7 (4)
0x060| 00 00 00 | ... | alignment_bytes: raw bits 0x65-0x68 (3)
0x2f0| 11 c0 00 00 | .... | key: "creator_username" (49169) (Name of user that created bookmark) 0x2f8-0x2fc (4)
0x2f0| 20 00 00 00| ...| offset_to_record: 32 0x2fc-0x300 (4)
0x300|00 00 00 00 |.... | unused: 0 0x300-0x304 (4)
| | | [14]{}: entry 0x198-0x310 (376)
| | | record{}: 0x198-0x1a4 (12)
0x190| 04 00 00 00 | .... | length: 4 0x198-0x19c (4)
0x190| 03 03 00 00| ....| type: "int" (771) ((signed 32-bit) 4-byte number) 0x19c-0x1a0 (4)
0x1a0|f5 01 00 00 |.... | data: 501 0x1a0-0x1a4 (4)
0x300| 12 c0 00 00 | .... | key: "creator_uid" (49170) (UID of user that created bookmark) 0x304-0x308 (4)
0x300| 68 01 00 00 | h... | offset_to_record: 360 0x308-0x30c (4)
0x300| 00 00 00 00| ....| unused: 0 0x30c-0x310 (4)
| | | [15]{}: entry 0x34-0x31c (744)
| | | record{}: 0x34-0x40 (12)
0x030| 04 00 00 00 | .... | length: 4 0x34-0x38 (4)
0x030| 03 03 00 00 | .... | type: "int" (771) ((signed 32-bit) 4-byte number) 0x38-0x3c (4)
0x030| 00 00 00 20| ... | data: 536870912 0x3c-0x40 (4)
0x310|10 d0 00 00 |.... | key: "creation_options" (53264) (Integer containing flags passed to CFURLCreateBookmarkData) 0x310-0x314 (4)
0x310| 04 00 00 00 | .... | offset_to_record: 4 0x314-0x318 (4)
0x310| 00 00 00 00 | .... | unused: 0 0x318-0x31c (4)
| | | [16]{}: entry 0xa8-0x328 (640)
| | | record{}: 0xa8-0xb8 (16)
0x0a0| 05 00 00 00 | .... | length: 5 0xa8-0xac (4)
0x0a0| 01 01 00 00| ....| type: "string" (257) (UTF-8 String) 0xac-0xb0 (4)
0x0b0|42 6c 69 6e 6b |Blink | data: "Blink" 0xb0-0xb5 (5)
0x0b0| 00 00 00 | ... | alignment_bytes: raw bits 0xb5-0xb8 (3)
0x310| 17 f0 00 00| ....| key: "display_name" (61463) (String) 0x31c-0x320 (4)
0x320|78 00 00 00 |x... | offset_to_record: 120 0x320-0x324 (4)
0x320| 00 00 00 00 | .... | unused: 0 0x324-0x328 (4)
| | | [17]{}: entry 0x240-0x334 (244)
| | | record{}: 0x240-0x248 (8)
0x240|00 00 00 00 |.... | length: 0 0x240-0x244 (4)
0x240| 01 05 00 00 | .... | type: "boolean_true" (1281) (True) 0x244-0x248 (4)
0x320| 0f 00 0f 00 | .... | key: 983055 0x328-0x32c (4)
0x320| 10 02 00 00| ....| offset_to_record: 528 0x32c-0x330 (4)
0x330|00 00 00 00| |....| | unused: 0 0x330-0x334 (4)
| | | toc_headers[0:1]: 0x248-0x25c (20)
| | | [0]{}: toc_header 0x248-0x25c (20)
0x240| e4 00 00 00 | .... | toc_size: 228 0x248-0x24c (4)
0x240| fe ff ff ff| ....| magic: 4294967294 (valid) 0x24c-0x250 (4)
0x250|01 00 00 00 |.... | identifier: 1 0x250-0x254 (4)
0x250| 00 00 00 00 | .... | next_toc_offset: 0 0x254-0x258 (4)
0x250| 12 00 00 00 | .... | num_entries_in_toc: 18 0x258-0x25c (4)
$ fq torepr sample3.book
{
"983055": true,

View File

@ -1,381 +1,381 @@
$ fq dv sample4.book
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: sample4.book (apple_bookmark) 0x0-0x2f3.7 (756)
| | | header{}: 0x0-0x2f.7 (48)
0x000|62 6f 6f 6b |book | magic: "book" (valid) 0x0-0x3.7 (4)
0x000| f4 02 00 00 | .... | total_size: 756 0x4-0x7.7 (4)
0x000| 00 00 04 10 | .... | unknown: 268697600 0x8-0xb.7 (4)
0x000| 30 00 00 00| 0...| header_size: 48 (valid) 0xc-0xf.7 (4)
0x010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| reserved: raw bits 0x10-0x2f.7 (32)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: sample4.book (apple_bookmark) 0x0-0x2f4 (756)
| | | header{}: 0x0-0x30 (48)
0x000|62 6f 6f 6b |book | magic: "book" (valid) 0x0-0x4 (4)
0x000| f4 02 00 00 | .... | total_size: 756 0x4-0x8 (4)
0x000| 00 00 04 10 | .... | unknown: 268697600 0x8-0xc (4)
0x000| 30 00 00 00| 0...| header_size: 48 (valid) 0xc-0x10 (4)
0x010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................| reserved: raw bits 0x10-0x30 (32)
0x020|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................|
0x030|d8 01 00 00 |.... | first_toc_offset: 472 0x30-0x33.7 (4)
| | | bookmark_entries[0:18]: 0x34-0x2f3.7 (704)
| | | [0]{}: entry 0x40-0x227.7 (488)
| | | record{}: 0x40-0xab.7 (108)
| | | data[0:5]: 0x40-0xab.7 (108)
| | | [0]{}: element 0x40-0x9b.7 (92)
| | | record{}: 0x40-0x4f.7 (16)
0x040|05 00 00 00 |.... | length: 5 0x40-0x43.7 (4)
0x040| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x44-0x47.7 (4)
0x040| 55 73 65 72 73 | Users | data: "Users" 0x48-0x4c.7 (5)
0x040| 00 00 00| ...| alignment_bytes: raw bits 0x4d-0x4f.7 (3)
0x090| 10 00 00 00 | .... | offset: 16 0x98-0x9b.7 (4)
| | | [1]{}: element 0x50-0x9f.7 (80)
| | | record{}: 0x50-0x67.7 (24)
0x050|0d 00 00 00 |.... | length: 13 0x50-0x53.7 (4)
0x050| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x54-0x57.7 (4)
0x050| 64 61 76 69 64 6d 63 64| davidmcd| data: "davidmcdonald" 0x58-0x64.7 (13)
0x030|d8 01 00 00 |.... | first_toc_offset: 472 0x30-0x34 (4)
| | | bookmark_entries[0:18]: 0x34-0x2f4 (704)
| | | [0]{}: entry 0x40-0x228 (488)
| | | record{}: 0x40-0xac (108)
| | | data[0:5]: 0x40-0xac (108)
| | | [0]{}: element 0x40-0x9c (92)
| | | record{}: 0x40-0x50 (16)
0x040|05 00 00 00 |.... | length: 5 0x40-0x44 (4)
0x040| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x44-0x48 (4)
0x040| 55 73 65 72 73 | Users | data: "Users" 0x48-0x4d (5)
0x040| 00 00 00| ...| alignment_bytes: raw bits 0x4d-0x50 (3)
0x090| 10 00 00 00 | .... | offset: 16 0x98-0x9c (4)
| | | [1]{}: element 0x50-0xa0 (80)
| | | record{}: 0x50-0x68 (24)
0x050|0d 00 00 00 |.... | length: 13 0x50-0x54 (4)
0x050| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x54-0x58 (4)
0x050| 64 61 76 69 64 6d 63 64| davidmcd| data: "davidmcdonald" 0x58-0x65 (13)
0x060|6f 6e 61 6c 64 |onald |
0x060| 00 00 00 | ... | alignment_bytes: raw bits 0x65-0x67.7 (3)
0x090| 20 00 00 00| ...| offset: 32 0x9c-0x9f.7 (4)
| | | [2]{}: element 0x68-0xa3.7 (60)
| | | record{}: 0x68-0x73.7 (12)
0x060| 02 00 00 00 | .... | length: 2 0x68-0x6b.7 (4)
0x060| 01 01 00 00| ....| type: "string" (257) (UTF-8 String) 0x6c-0x6f.7 (4)
0x070|67 6f |go | data: "go" 0x70-0x71.7 (2)
0x070| 00 00 | .. | alignment_bytes: raw bits 0x72-0x73.7 (2)
0x0a0|38 00 00 00 |8... | offset: 56 0xa0-0xa3.7 (4)
| | | [3]{}: element 0x74-0xa7.7 (52)
| | | record{}: 0x74-0x7f.7 (12)
0x070| 03 00 00 00 | .... | length: 3 0x74-0x77.7 (4)
0x070| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x78-0x7b.7 (4)
0x070| 73 72 63 | src | data: "src" 0x7c-0x7e.7 (3)
0x070| 00| .| alignment_bytes: raw bits 0x7f-0x7f.7 (1)
0x0a0| 44 00 00 00 | D... | offset: 68 0xa4-0xa7.7 (4)
| | | [4]{}: element 0x80-0xab.7 (44)
| | | record{}: 0x80-0x8f.7 (16)
0x080|06 00 00 00 |.... | length: 6 0x80-0x83.7 (4)
0x080| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x84-0x87.7 (4)
0x080| 74 68 65 73 69 73 | thesis | data: "thesis" 0x88-0x8d.7 (6)
0x080| 00 00| ..| alignment_bytes: raw bits 0x8e-0x8f.7 (2)
0x0a0| 50 00 00 00 | P... | offset: 80 0xa8-0xab.7 (4)
0x090|14 00 00 00 |.... | length: 20 0x90-0x93.7 (4)
0x090| 01 06 00 00 | .... | type: "array" (1537) (Array of 4-byte offsets to data items) 0x94-0x97.7 (4)
0x210| 04 10 00 00| ....| key: "target_path" (4100) (Array of individual path components) 0x21c-0x21f.7 (4)
0x220|60 00 00 00 |`... | offset_to_record: 96 0x220-0x223.7 (4)
0x220| 00 00 00 00 | .... | unused: 0 0x224-0x227.7 (4)
| | | [1]{}: entry 0xac-0x233.7 (392)
| | | record{}: 0xac-0x117.7 (108)
| | | data[0:5]: 0xac-0x117.7 (108)
| | | [0]{}: element 0xac-0x107.7 (92)
| | | record{}: 0xac-0xbb.7 (16)
0x0a0| 08 00 00 00| ....| length: 8 0xac-0xaf.7 (4)
0x0b0|04 03 00 00 |.... | type: "long" (772) ((signed 64-bit) 8-byte number) 0xb0-0xb3.7 (4)
0x0b0| 0b 5b 00 00 00 00 00 00 | .[...... | data: 23307 0xb4-0xbb.7 (8)
0x100| 7c 00 00 00 | |... | offset: 124 0x104-0x107.7 (4)
| | | [1]{}: element 0xbc-0x10b.7 (80)
| | | record{}: 0xbc-0xcb.7 (16)
0x0b0| 08 00 00 00| ....| length: 8 0xbc-0xbf.7 (4)
0x0c0|04 03 00 00 |.... | type: "long" (772) ((signed 64-bit) 8-byte number) 0xc0-0xc3.7 (4)
0x0c0| 1c 9e 08 00 00 00 00 00 | ........ | data: 564764 0xc4-0xcb.7 (8)
0x100| 8c 00 00 00 | .... | offset: 140 0x108-0x10b.7 (4)
| | | [2]{}: element 0xcc-0x10f.7 (68)
| | | record{}: 0xcc-0xdb.7 (16)
0x0c0| 08 00 00 00| ....| length: 8 0xcc-0xcf.7 (4)
0x0d0|04 03 00 00 |.... | type: "long" (772) ((signed 64-bit) 8-byte number) 0xd0-0xd3.7 (4)
0x0d0| 44 37 12 00 00 00 00 00 | D7...... | data: 1193796 0xd4-0xdb.7 (8)
0x100| 9c 00 00 00| ....| offset: 156 0x10c-0x10f.7 (4)
| | | [3]{}: element 0xdc-0x113.7 (56)
| | | record{}: 0xdc-0xeb.7 (16)
0x0d0| 08 00 00 00| ....| length: 8 0xdc-0xdf.7 (4)
0x0e0|04 03 00 00 |.... | type: "long" (772) ((signed 64-bit) 8-byte number) 0xe0-0xe3.7 (4)
0x0e0| 9f 15 15 00 00 00 00 00 | ........ | data: 1381791 0xe4-0xeb.7 (8)
0x110|ac 00 00 00 |.... | offset: 172 0x110-0x113.7 (4)
| | | [4]{}: element 0xec-0x117.7 (44)
| | | record{}: 0xec-0xfb.7 (16)
0x0e0| 08 00 00 00| ....| length: 8 0xec-0xef.7 (4)
0x0f0|04 03 00 00 |.... | type: "long" (772) ((signed 64-bit) 8-byte number) 0xf0-0xf3.7 (4)
0x0f0| 53 f0 f9 01 00 00 00 00 | S....... | data: 33157203 0xf4-0xfb.7 (8)
0x110| bc 00 00 00 | .... | offset: 188 0x114-0x117.7 (4)
0x0f0| 14 00 00 00| ....| length: 20 0xfc-0xff.7 (4)
0x100|01 06 00 00 |.... | type: "array" (1537) (Array of 4-byte offsets to data items) 0x100-0x103.7 (4)
0x220| 05 10 00 00 | .... | key: "target_cnid_path" (4101) (Array of CNIDs) 0x228-0x22b.7 (4)
0x220| cc 00 00 00| ....| offset_to_record: 204 0x22c-0x22f.7 (4)
0x230|00 00 00 00 |.... | unused: 0 0x230-0x233.7 (4)
| | | [2]{}: entry 0x128-0x23f.7 (280)
| | | record{}: 0x128-0x147.7 (32)
0x120| 18 00 00 00 | .... | length: 24 (valid) 0x128-0x12b.7 (4)
0x120| 01 02 00 00| ....| raw_type: "data" (513) (valid) 0x12c-0x12f.7 (4)
| | | type: "flag_data" 0x130-NA (0)
| | | property_flags{}: 0x130-0x137.7 (8)
0x130|02 |. | is_hidden: false 0x130-0x130 (0.1)
0x130|02 |. | is_user_immutable: false 0x130.1-0x130.1 (0.1)
0x130|02 |. | is_system_immutable: false 0x130.2-0x130.2 (0.1)
0x130|02 |. | is_package: false 0x130.3-0x130.3 (0.1)
0x130|02 |. | is_volume: false 0x130.4-0x130.4 (0.1)
0x130|02 |. | is_symbolic_link: false 0x130.5-0x130.5 (0.1)
0x130|02 |. | is_directory: true 0x130.6-0x130.6 (0.1)
0x130|02 |. | is_regular_file: false 0x130.7-0x130.7 (0.1)
0x130| 00 | . | is_alias_file: false 0x131-0x131 (0.1)
0x130| 00 | . | is_executable: false 0x131.1-0x131.1 (0.1)
0x130| 00 | . | is_writeable: false 0x131.2-0x131.2 (0.1)
0x130| 00 | . | is_readable: false 0x131.3-0x131.3 (0.1)
0x130| 00 | . | can_set_hidden_extension: false 0x131.4-0x131.4 (0.1)
0x130| 00 | . | is_compressed: false 0x131.5-0x131.5 (0.1)
0x130| 00 | . | is_application: false 0x131.6-0x131.6 (0.1)
0x130| 00 | . | has_hidden_extension: false 0x131.7-0x131.7 (0.1)
0x130| 00 | . | reserved_bits_0: raw bits 0x132-0x132.6 (0.7)
0x130| 00 | . | is_mount_trigger: false 0x132.7-0x132.7 (0.1)
0x130| 00 00 00 00 00 | ..... | reserved: raw bits 0x133-0x137.7 (5)
| | | enabled_property_flags{}: 0x138-0x13f.7 (8)
0x130| 1f | . | is_hidden: false 0x138-0x138 (0.1)
0x130| 1f | . | is_user_immutable: false 0x138.1-0x138.1 (0.1)
0x130| 1f | . | is_system_immutable: false 0x138.2-0x138.2 (0.1)
0x130| 1f | . | is_package: true 0x138.3-0x138.3 (0.1)
0x130| 1f | . | is_volume: true 0x138.4-0x138.4 (0.1)
0x130| 1f | . | is_symbolic_link: true 0x138.5-0x138.5 (0.1)
0x130| 1f | . | is_directory: true 0x138.6-0x138.6 (0.1)
0x130| 1f | . | is_regular_file: true 0x138.7-0x138.7 (0.1)
0x130| 02 | . | is_alias_file: false 0x139-0x139 (0.1)
0x130| 02 | . | is_executable: false 0x139.1-0x139.1 (0.1)
0x130| 02 | . | is_writeable: false 0x139.2-0x139.2 (0.1)
0x130| 02 | . | is_readable: false 0x139.3-0x139.3 (0.1)
0x130| 02 | . | can_set_hidden_extension: false 0x139.4-0x139.4 (0.1)
0x130| 02 | . | is_compressed: false 0x139.5-0x139.5 (0.1)
0x130| 02 | . | is_application: true 0x139.6-0x139.6 (0.1)
0x130| 02 | . | has_hidden_extension: false 0x139.7-0x139.7 (0.1)
0x130| 00 | . | reserved_bits_0: raw bits 0x13a-0x13a.6 (0.7)
0x130| 00 | . | is_mount_trigger: false 0x13a.7-0x13a.7 (0.1)
0x130| 00 00 00 00 00| .....| reserved: raw bits 0x13b-0x13f.7 (5)
0x140|1a 02 00 00 00 00 00 00 |........ | reserved: raw bits 0x140-0x147.7 (8)
0x230| 10 10 00 00 | .... | key: "target_flags" (4112) (flag bitfield) 0x234-0x237.7 (4)
0x230| f8 00 00 00 | .... | offset_to_record: 248 0x238-0x23b.7 (4)
0x230| 00 00 00 00| ....| unused: 0 0x23c-0x23f.7 (4)
| | | [3]{}: entry 0x118-0x24b.7 (308)
| | | record{}: 0x118-0x127.7 (16)
0x110| 08 00 00 00 | .... | length: 8 0x118-0x11b.7 (4)
0x110| 00 04 00 00| ....| type: "date" (1024) (Big-endian IEEE double precision seconds since 2001-01-01 00:00:00 UTC) 0x11c-0x11f.7 (4)
0x120|41 c3 ff 97 6f 07 8e 98 |A...o... | data: 6.710351020590391e+08 (2022-04-07T14:38:22Z) 0x120-0x127.7 (8)
0x240|40 10 00 00 |@... | key: "target_creation_date" (4160) (Date) 0x240-0x243.7 (4)
0x240| e8 00 00 00 | .... | offset_to_record: 232 0x244-0x247.7 (4)
0x240| 00 00 00 00 | .... | unused: 0 0x248-0x24b.7 (4)
| | | [4]{}: entry 0x1f4-0x257.7 (100)
| | | record{}: 0x1f4-0x1ff.7 (12)
0x1f0| 01 00 00 00 | .... | length: 1 0x1f4-0x1f7.7 (4)
0x1f0| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x1f8-0x1fb.7 (4)
0x1f0| 2f | / | data: "/" 0x1fc-0x1fc.7 (1)
0x1f0| 00 00 00| ...| alignment_bytes: raw bits 0x1fd-0x1ff.7 (3)
0x240| 02 20 00 00| . ..| key: "volume_path" (8194) (Array of individual path components) 0x24c-0x24f.7 (4)
0x250|c4 01 00 00 |.... | offset_to_record: 452 0x250-0x253.7 (4)
0x250| 00 00 00 00 | .... | unused: 0 0x254-0x257.7 (4)
| | | [5]{}: entry 0x164-0x263.7 (256)
| | | record{}: 0x164-0x173.7 (16)
0x160| 08 00 00 00 | .... | length: 8 0x164-0x167.7 (4)
0x160| 01 09 00 00 | .... | type: "url" (2305) (UTF-8 string) 0x168-0x16b.7 (4)
0x160| 66 69 6c 65| file| data: "file:///" 0x16c-0x173.7 (8)
0x060| 00 00 00 | ... | alignment_bytes: raw bits 0x65-0x68 (3)
0x090| 20 00 00 00| ...| offset: 32 0x9c-0xa0 (4)
| | | [2]{}: element 0x68-0xa4 (60)
| | | record{}: 0x68-0x74 (12)
0x060| 02 00 00 00 | .... | length: 2 0x68-0x6c (4)
0x060| 01 01 00 00| ....| type: "string" (257) (UTF-8 String) 0x6c-0x70 (4)
0x070|67 6f |go | data: "go" 0x70-0x72 (2)
0x070| 00 00 | .. | alignment_bytes: raw bits 0x72-0x74 (2)
0x0a0|38 00 00 00 |8... | offset: 56 0xa0-0xa4 (4)
| | | [3]{}: element 0x74-0xa8 (52)
| | | record{}: 0x74-0x80 (12)
0x070| 03 00 00 00 | .... | length: 3 0x74-0x78 (4)
0x070| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x78-0x7c (4)
0x070| 73 72 63 | src | data: "src" 0x7c-0x7f (3)
0x070| 00| .| alignment_bytes: raw bits 0x7f-0x80 (1)
0x0a0| 44 00 00 00 | D... | offset: 68 0xa4-0xa8 (4)
| | | [4]{}: element 0x80-0xac (44)
| | | record{}: 0x80-0x90 (16)
0x080|06 00 00 00 |.... | length: 6 0x80-0x84 (4)
0x080| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x84-0x88 (4)
0x080| 74 68 65 73 69 73 | thesis | data: "thesis" 0x88-0x8e (6)
0x080| 00 00| ..| alignment_bytes: raw bits 0x8e-0x90 (2)
0x0a0| 50 00 00 00 | P... | offset: 80 0xa8-0xac (4)
0x090|14 00 00 00 |.... | length: 20 0x90-0x94 (4)
0x090| 01 06 00 00 | .... | type: "array" (1537) (Array of 4-byte offsets to data items) 0x94-0x98 (4)
0x210| 04 10 00 00| ....| key: "target_path" (4100) (Array of individual path components) 0x21c-0x220 (4)
0x220|60 00 00 00 |`... | offset_to_record: 96 0x220-0x224 (4)
0x220| 00 00 00 00 | .... | unused: 0 0x224-0x228 (4)
| | | [1]{}: entry 0xac-0x234 (392)
| | | record{}: 0xac-0x118 (108)
| | | data[0:5]: 0xac-0x118 (108)
| | | [0]{}: element 0xac-0x108 (92)
| | | record{}: 0xac-0xbc (16)
0x0a0| 08 00 00 00| ....| length: 8 0xac-0xb0 (4)
0x0b0|04 03 00 00 |.... | type: "long" (772) ((signed 64-bit) 8-byte number) 0xb0-0xb4 (4)
0x0b0| 0b 5b 00 00 00 00 00 00 | .[...... | data: 23307 0xb4-0xbc (8)
0x100| 7c 00 00 00 | |... | offset: 124 0x104-0x108 (4)
| | | [1]{}: element 0xbc-0x10c (80)
| | | record{}: 0xbc-0xcc (16)
0x0b0| 08 00 00 00| ....| length: 8 0xbc-0xc0 (4)
0x0c0|04 03 00 00 |.... | type: "long" (772) ((signed 64-bit) 8-byte number) 0xc0-0xc4 (4)
0x0c0| 1c 9e 08 00 00 00 00 00 | ........ | data: 564764 0xc4-0xcc (8)
0x100| 8c 00 00 00 | .... | offset: 140 0x108-0x10c (4)
| | | [2]{}: element 0xcc-0x110 (68)
| | | record{}: 0xcc-0xdc (16)
0x0c0| 08 00 00 00| ....| length: 8 0xcc-0xd0 (4)
0x0d0|04 03 00 00 |.... | type: "long" (772) ((signed 64-bit) 8-byte number) 0xd0-0xd4 (4)
0x0d0| 44 37 12 00 00 00 00 00 | D7...... | data: 1193796 0xd4-0xdc (8)
0x100| 9c 00 00 00| ....| offset: 156 0x10c-0x110 (4)
| | | [3]{}: element 0xdc-0x114 (56)
| | | record{}: 0xdc-0xec (16)
0x0d0| 08 00 00 00| ....| length: 8 0xdc-0xe0 (4)
0x0e0|04 03 00 00 |.... | type: "long" (772) ((signed 64-bit) 8-byte number) 0xe0-0xe4 (4)
0x0e0| 9f 15 15 00 00 00 00 00 | ........ | data: 1381791 0xe4-0xec (8)
0x110|ac 00 00 00 |.... | offset: 172 0x110-0x114 (4)
| | | [4]{}: element 0xec-0x118 (44)
| | | record{}: 0xec-0xfc (16)
0x0e0| 08 00 00 00| ....| length: 8 0xec-0xf0 (4)
0x0f0|04 03 00 00 |.... | type: "long" (772) ((signed 64-bit) 8-byte number) 0xf0-0xf4 (4)
0x0f0| 53 f0 f9 01 00 00 00 00 | S....... | data: 33157203 0xf4-0xfc (8)
0x110| bc 00 00 00 | .... | offset: 188 0x114-0x118 (4)
0x0f0| 14 00 00 00| ....| length: 20 0xfc-0x100 (4)
0x100|01 06 00 00 |.... | type: "array" (1537) (Array of 4-byte offsets to data items) 0x100-0x104 (4)
0x220| 05 10 00 00 | .... | key: "target_cnid_path" (4101) (Array of CNIDs) 0x228-0x22c (4)
0x220| cc 00 00 00| ....| offset_to_record: 204 0x22c-0x230 (4)
0x230|00 00 00 00 |.... | unused: 0 0x230-0x234 (4)
| | | [2]{}: entry 0x128-0x240 (280)
| | | record{}: 0x128-0x148 (32)
0x120| 18 00 00 00 | .... | length: 24 (valid) 0x128-0x12c (4)
0x120| 01 02 00 00| ....| raw_type: "data" (513) (valid) 0x12c-0x130 (4)
| | | type: "flag_data"
| | | property_flags{}: 0x130-0x138 (8)
0x130|02 |. | is_hidden: false 0x130-0x130.1 (0.1)
0x130|02 |. | is_user_immutable: false 0x130.1-0x130.2 (0.1)
0x130|02 |. | is_system_immutable: false 0x130.2-0x130.3 (0.1)
0x130|02 |. | is_package: false 0x130.3-0x130.4 (0.1)
0x130|02 |. | is_volume: false 0x130.4-0x130.5 (0.1)
0x130|02 |. | is_symbolic_link: false 0x130.5-0x130.6 (0.1)
0x130|02 |. | is_directory: true 0x130.6-0x130.7 (0.1)
0x130|02 |. | is_regular_file: false 0x130.7-0x131 (0.1)
0x130| 00 | . | is_alias_file: false 0x131-0x131.1 (0.1)
0x130| 00 | . | is_executable: false 0x131.1-0x131.2 (0.1)
0x130| 00 | . | is_writeable: false 0x131.2-0x131.3 (0.1)
0x130| 00 | . | is_readable: false 0x131.3-0x131.4 (0.1)
0x130| 00 | . | can_set_hidden_extension: false 0x131.4-0x131.5 (0.1)
0x130| 00 | . | is_compressed: false 0x131.5-0x131.6 (0.1)
0x130| 00 | . | is_application: false 0x131.6-0x131.7 (0.1)
0x130| 00 | . | has_hidden_extension: false 0x131.7-0x132 (0.1)
0x130| 00 | . | reserved_bits_0: raw bits 0x132-0x132.7 (0.7)
0x130| 00 | . | is_mount_trigger: false 0x132.7-0x133 (0.1)
0x130| 00 00 00 00 00 | ..... | reserved: raw bits 0x133-0x138 (5)
| | | enabled_property_flags{}: 0x138-0x140 (8)
0x130| 1f | . | is_hidden: false 0x138-0x138.1 (0.1)
0x130| 1f | . | is_user_immutable: false 0x138.1-0x138.2 (0.1)
0x130| 1f | . | is_system_immutable: false 0x138.2-0x138.3 (0.1)
0x130| 1f | . | is_package: true 0x138.3-0x138.4 (0.1)
0x130| 1f | . | is_volume: true 0x138.4-0x138.5 (0.1)
0x130| 1f | . | is_symbolic_link: true 0x138.5-0x138.6 (0.1)
0x130| 1f | . | is_directory: true 0x138.6-0x138.7 (0.1)
0x130| 1f | . | is_regular_file: true 0x138.7-0x139 (0.1)
0x130| 02 | . | is_alias_file: false 0x139-0x139.1 (0.1)
0x130| 02 | . | is_executable: false 0x139.1-0x139.2 (0.1)
0x130| 02 | . | is_writeable: false 0x139.2-0x139.3 (0.1)
0x130| 02 | . | is_readable: false 0x139.3-0x139.4 (0.1)
0x130| 02 | . | can_set_hidden_extension: false 0x139.4-0x139.5 (0.1)
0x130| 02 | . | is_compressed: false 0x139.5-0x139.6 (0.1)
0x130| 02 | . | is_application: true 0x139.6-0x139.7 (0.1)
0x130| 02 | . | has_hidden_extension: false 0x139.7-0x13a (0.1)
0x130| 00 | . | reserved_bits_0: raw bits 0x13a-0x13a.7 (0.7)
0x130| 00 | . | is_mount_trigger: false 0x13a.7-0x13b (0.1)
0x130| 00 00 00 00 00| .....| reserved: raw bits 0x13b-0x140 (5)
0x140|1a 02 00 00 00 00 00 00 |........ | reserved: raw bits 0x140-0x148 (8)
0x230| 10 10 00 00 | .... | key: "target_flags" (4112) (flag bitfield) 0x234-0x238 (4)
0x230| f8 00 00 00 | .... | offset_to_record: 248 0x238-0x23c (4)
0x230| 00 00 00 00| ....| unused: 0 0x23c-0x240 (4)
| | | [3]{}: entry 0x118-0x24c (308)
| | | record{}: 0x118-0x128 (16)
0x110| 08 00 00 00 | .... | length: 8 0x118-0x11c (4)
0x110| 00 04 00 00| ....| type: "date" (1024) (Big-endian IEEE double precision seconds since 2001-01-01 00:00:00 UTC) 0x11c-0x120 (4)
0x120|41 c3 ff 97 6f 07 8e 98 |A...o... | data: 6.710351020590391e+08 (2022-04-07T14:38:22Z) 0x120-0x128 (8)
0x240|40 10 00 00 |@... | key: "target_creation_date" (4160) (Date) 0x240-0x244 (4)
0x240| e8 00 00 00 | .... | offset_to_record: 232 0x244-0x248 (4)
0x240| 00 00 00 00 | .... | unused: 0 0x248-0x24c (4)
| | | [4]{}: entry 0x1f4-0x258 (100)
| | | record{}: 0x1f4-0x200 (12)
0x1f0| 01 00 00 00 | .... | length: 1 0x1f4-0x1f8 (4)
0x1f0| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x1f8-0x1fc (4)
0x1f0| 2f | / | data: "/" 0x1fc-0x1fd (1)
0x1f0| 00 00 00| ...| alignment_bytes: raw bits 0x1fd-0x200 (3)
0x240| 02 20 00 00| . ..| key: "volume_path" (8194) (Array of individual path components) 0x24c-0x250 (4)
0x250|c4 01 00 00 |.... | offset_to_record: 452 0x250-0x254 (4)
0x250| 00 00 00 00 | .... | unused: 0 0x254-0x258 (4)
| | | [5]{}: entry 0x164-0x264 (256)
| | | record{}: 0x164-0x174 (16)
0x160| 08 00 00 00 | .... | length: 8 0x164-0x168 (4)
0x160| 01 09 00 00 | .... | type: "url" (2305) (UTF-8 string) 0x168-0x16c (4)
0x160| 66 69 6c 65| file| data: "file:///" 0x16c-0x174 (8)
0x170|3a 2f 2f 2f |:/// |
0x250| 05 20 00 00 | . .. | key: "volume_url" (8197) (URL of volume root) 0x258-0x25b.7 (4)
0x250| 34 01 00 00| 4...| offset_to_record: 308 0x25c-0x25f.7 (4)
0x260|00 00 00 00 |.... | unused: 0 0x260-0x263.7 (4)
| | | [6]{}: entry 0x174-0x26f.7 (252)
| | | record{}: 0x174-0x18b.7 (24)
0x170| 0c 00 00 00 | .... | length: 12 0x174-0x177.7 (4)
0x170| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x178-0x17b.7 (4)
0x170| 4d 61 63 69| Maci| data: "Macintosh HD" 0x17c-0x187.7 (12)
0x250| 05 20 00 00 | . .. | key: "volume_url" (8197) (URL of volume root) 0x258-0x25c (4)
0x250| 34 01 00 00| 4...| offset_to_record: 308 0x25c-0x260 (4)
0x260|00 00 00 00 |.... | unused: 0 0x260-0x264 (4)
| | | [6]{}: entry 0x174-0x270 (252)
| | | record{}: 0x174-0x18c (24)
0x170| 0c 00 00 00 | .... | length: 12 0x174-0x178 (4)
0x170| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x178-0x17c (4)
0x170| 4d 61 63 69| Maci| data: "Macintosh HD" 0x17c-0x188 (12)
0x180|6e 74 6f 73 68 20 48 44 |ntosh HD |
0x180| 08 00 00 00 | .... | alignment_bytes: raw bits 0x188-0x18b.7 (4)
0x260| 10 20 00 00 | . .. | key: "volume_name" (8208) (String) 0x264-0x267.7 (4)
0x260| 44 01 00 00 | D... | offset_to_record: 324 0x268-0x26b.7 (4)
0x260| 00 00 00 00| ....| unused: 0 0x26c-0x26f.7 (4)
| | | [7]{}: entry 0x1a8-0x27b.7 (212)
| | | record{}: 0x1a8-0x1d7.7 (48)
0x1a0| 24 00 00 00 | $... | length: 36 0x1a8-0x1ab.7 (4)
0x1a0| 01 01 00 00| ....| type: "string" (257) (UTF-8 String) 0x1ac-0x1af.7 (4)
0x1b0|38 41 38 32 39 41 30 33 2d 39 42 32 34 2d 34 30|8A829A03-9B24-40| data: "8A829A03-9B24-4085-8051-18978712E4BE" 0x1b0-0x1d3.7 (36)
0x180| 08 00 00 00 | .... | alignment_bytes: raw bits 0x188-0x18c (4)
0x260| 10 20 00 00 | . .. | key: "volume_name" (8208) (String) 0x264-0x268 (4)
0x260| 44 01 00 00 | D... | offset_to_record: 324 0x268-0x26c (4)
0x260| 00 00 00 00| ....| unused: 0 0x26c-0x270 (4)
| | | [7]{}: entry 0x1a8-0x27c (212)
| | | record{}: 0x1a8-0x1d8 (48)
0x1a0| 24 00 00 00 | $... | length: 36 0x1a8-0x1ac (4)
0x1a0| 01 01 00 00| ....| type: "string" (257) (UTF-8 String) 0x1ac-0x1b0 (4)
0x1b0|38 41 38 32 39 41 30 33 2d 39 42 32 34 2d 34 30|8A829A03-9B24-40| data: "8A829A03-9B24-4085-8051-18978712E4BE" 0x1b0-0x1d4 (36)
* |until 0x1d3.7 (36) | |
0x1d0| 18 00 00 00 | .... | alignment_bytes: raw bits 0x1d4-0x1d7.7 (4)
0x270|11 20 00 00 |. .. | key: "volume_uuid" (8209) (String UUID) 0x270-0x273.7 (4)
0x270| 78 01 00 00 | x... | offset_to_record: 376 0x274-0x277.7 (4)
0x270| 00 00 00 00 | .... | unused: 0 0x278-0x27b.7 (4)
| | | [8]{}: entry 0x188-0x287.7 (256)
| | | record{}: 0x188-0x197.7 (16)
0x180| 08 00 00 00 | .... | length: 8 0x188-0x18b.7 (4)
0x180| 04 03 00 00| ....| type: "long" (772) ((signed 64-bit) 8-byte number) 0x18c-0x18f.7 (4)
0x190|00 a0 20 68 74 00 00 00 |.. ht... | data: 499963174912 0x190-0x197.7 (8)
0x270| 12 20 00 00| . ..| key: "volume_size" (8210) (8-byte integer) 0x27c-0x27f.7 (4)
0x280|58 01 00 00 |X... | offset_to_record: 344 0x280-0x283.7 (4)
0x280| 00 00 00 00 | .... | unused: 0 0x284-0x287.7 (4)
| | | [9]{}: entry 0x198-0x293.7 (252)
| | | record{}: 0x198-0x1a7.7 (16)
0x190| 08 00 00 00 | .... | length: 8 0x198-0x19b.7 (4)
0x190| 00 04 00 00| ....| type: "date" (1024) (Big-endian IEEE double precision seconds since 2001-01-01 00:00:00 UTC) 0x19c-0x19f.7 (4)
0x1a0|41 c1 de 44 80 00 00 00 |A..D.... | data: 5.995584e+08 (2020-01-01T08:00:00Z) 0x1a0-0x1a7.7 (8)
0x280| 13 20 00 00 | . .. | key: "volume_creation_date" (8211) (Date) 0x288-0x28b.7 (4)
0x280| 68 01 00 00| h...| offset_to_record: 360 0x28c-0x28f.7 (4)
0x290|00 00 00 00 |.... | unused: 0 0x290-0x293.7 (4)
| | | [10]{}: entry 0x1d4-0x29f.7 (204)
| | | record{}: 0x1d4-0x1f3.7 (32)
0x1d0| 18 00 00 00 | .... | length: 24 (valid) 0x1d4-0x1d7.7 (4)
0x1d0| 01 02 00 00 | .... | raw_type: "data" (513) (valid) 0x1d8-0x1db.7 (4)
| | | type: "flag_data" 0x1dc-NA (0)
| | | property_flags{}: 0x1dc-0x1e3.7 (8)
0x1d0| 81 | . | is_internal: true 0x1dc-0x1dc (0.1)
0x1d0| 81 | . | is_removable: false 0x1dc.1-0x1dc.1 (0.1)
0x1d0| 81 | . | is_ejectable: false 0x1dc.2-0x1dc.2 (0.1)
0x1d0| 81 | . | is_quarantined: false 0x1dc.3-0x1dc.3 (0.1)
0x1d0| 81 | . | is_read_only: false 0x1dc.4-0x1dc.4 (0.1)
0x1d0| 81 | . | dont_browse: false 0x1dc.5-0x1dc.5 (0.1)
0x1d0| 81 | . | is_automount: false 0x1dc.6-0x1dc.6 (0.1)
0x1d0| 81 | . | is_local: true 0x1dc.7-0x1dc.7 (0.1)
0x1d0| 00 | . | is_dvd: false 0x1dd-0x1dd (0.1)
0x1d0| 00 | . | is_cd: false 0x1dd.1-0x1dd.1 (0.1)
0x1d0| 00 | . | is_idisk: false 0x1dd.2-0x1dd.2 (0.1)
0x1d0| 00 | . | is_ipod: false 0x1dd.3-0x1dd.3 (0.1)
0x1d0| 00 | . | is_local_idisk_mirror: false 0x1dd.4-0x1dd.4 (0.1)
0x1d0| 00 | . | is_file_vault: false 0x1dd.5-0x1dd.5 (0.1)
0x1d0| 00 | . | is_disk_image: false 0x1dd.6-0x1dd.6 (0.1)
0x1d0| 00 | . | is_external: false 0x1dd.7-0x1dd.7 (0.1)
0x1d0| 00 | . | reserved_0: raw bits 0x1de-0x1de.6 (0.7)
0x1d0| 00 | . | is_device_file_system: false 0x1de.7-0x1de.7 (0.1)
0x1d0| 00| .| reserved_1: raw bits 0x1df-0x1df.7 (1)
0x1e0|01 |. | supports_read_dir_attr: false 0x1e0-0x1e0 (0.1)
0x1e0|01 |. | supports_copy_file: false 0x1e0.1-0x1e0.1 (0.1)
0x1e0|01 |. | supports_deny_modes: false 0x1e0.2-0x1e0.2 (0.1)
0x1e0|01 |. | supports_symbolic_links: false 0x1e0.3-0x1e0.3 (0.1)
0x1e0|01 |. | reserved_2: false 0x1e0.4-0x1e0.4 (0.1)
0x1e0|01 |. | supports_exchange: false 0x1e0.5-0x1e0.5 (0.1)
0x1e0|01 |. | supports_search_fs: false 0x1e0.6-0x1e0.6 (0.1)
0x1e0|01 |. | supports_persistent_ids: true 0x1e0.7-0x1e0.7 (0.1)
0x1e0| 00 | . | supports_extended_security: false 0x1e1-0x1e1 (0.1)
0x1e0| 00 | . | has_no_root_directory_times: false 0x1e1.1-0x1e1.1 (0.1)
0x1e0| 00 | . | supports_flock: false 0x1e1.2-0x1e1.2 (0.1)
0x1e0| 00 | . | supports_case_preserved_names: false 0x1e1.3-0x1e1.3 (0.1)
0x1e0| 00 | . | supports_case_sensitive_names: false 0x1e1.4-0x1e1.4 (0.1)
0x1e0| 00 | . | supports_fast_stat_fs: false 0x1e1.5-0x1e1.5 (0.1)
0x1e0| 00 | . | supports_rename: false 0x1e1.6-0x1e1.6 (0.1)
0x1e0| 00 | . | supports_journaling: false 0x1e1.7-0x1e1.7 (0.1)
0x1e0| 00 | . | supports_zero_runs: false 0x1e2-0x1e2 (0.1)
0x1e0| 00 | . | supports_sparse_files: false 0x1e2.1-0x1e2.1 (0.1)
0x1e0| 00 | . | is_journaling: false 0x1e2.2-0x1e2.2 (0.1)
0x1e0| 00 | . | reserved_3: false 0x1e2.3-0x1e2.3 (0.1)
0x1e0| 00 | . | supports_path_from_id: false 0x1e2.4-0x1e2.4 (0.1)
0x1e0| 00 | . | supports_mandatory_byte_range_locks: false 0x1e2.5-0x1e2.5 (0.1)
0x1e0| 00 | . | supports_hard_links: false 0x1e2.6-0x1e2.6 (0.1)
0x1e0| 00 | . | supports_2_tb_file_size: false 0x1e2.7-0x1e2.7 (0.1)
0x1e0| 00 | . | reserved_4: raw bits 0x1e3-0x1e3.2 (0.3)
0x1e0| 00 | . | has64_bit_object_ids: false 0x1e3.3-0x1e3.3 (0.1)
0x1e0| 00 | . | supports_decmp_fs_compression: false 0x1e3.4-0x1e3.4 (0.1)
0x1e0| 00 | . | supports_hidden_files: false 0x1e3.5-0x1e3.5 (0.1)
0x1e0| 00 | . | supports_remote_events: false 0x1e3.6-0x1e3.6 (0.1)
0x1e0| 00 | . | supports_volume_sizes: false 0x1e3.7-0x1e3.7 (0.1)
| | | enabled_property_flags{}: 0x1e4-0x1eb.7 (8)
0x1e0| ef | . | is_internal: true 0x1e4-0x1e4 (0.1)
0x1e0| ef | . | is_removable: true 0x1e4.1-0x1e4.1 (0.1)
0x1e0| ef | . | is_ejectable: true 0x1e4.2-0x1e4.2 (0.1)
0x1e0| ef | . | is_quarantined: false 0x1e4.3-0x1e4.3 (0.1)
0x1e0| ef | . | is_read_only: true 0x1e4.4-0x1e4.4 (0.1)
0x1e0| ef | . | dont_browse: true 0x1e4.5-0x1e4.5 (0.1)
0x1e0| ef | . | is_automount: true 0x1e4.6-0x1e4.6 (0.1)
0x1e0| ef | . | is_local: true 0x1e4.7-0x1e4.7 (0.1)
0x1e0| 13 | . | is_dvd: false 0x1e5-0x1e5 (0.1)
0x1e0| 13 | . | is_cd: false 0x1e5.1-0x1e5.1 (0.1)
0x1e0| 13 | . | is_idisk: false 0x1e5.2-0x1e5.2 (0.1)
0x1e0| 13 | . | is_ipod: true 0x1e5.3-0x1e5.3 (0.1)
0x1e0| 13 | . | is_local_idisk_mirror: false 0x1e5.4-0x1e5.4 (0.1)
0x1e0| 13 | . | is_file_vault: false 0x1e5.5-0x1e5.5 (0.1)
0x1e0| 13 | . | is_disk_image: true 0x1e5.6-0x1e5.6 (0.1)
0x1e0| 13 | . | is_external: true 0x1e5.7-0x1e5.7 (0.1)
0x1e0| 00 | . | reserved_0: raw bits 0x1e6-0x1e6.6 (0.7)
0x1e0| 00 | . | is_device_file_system: false 0x1e6.7-0x1e6.7 (0.1)
0x1e0| 00 | . | reserved_1: raw bits 0x1e7-0x1e7.7 (1)
0x1e0| 01 | . | supports_read_dir_attr: false 0x1e8-0x1e8 (0.1)
0x1e0| 01 | . | supports_copy_file: false 0x1e8.1-0x1e8.1 (0.1)
0x1e0| 01 | . | supports_deny_modes: false 0x1e8.2-0x1e8.2 (0.1)
0x1e0| 01 | . | supports_symbolic_links: false 0x1e8.3-0x1e8.3 (0.1)
0x1e0| 01 | . | reserved_2: false 0x1e8.4-0x1e8.4 (0.1)
0x1e0| 01 | . | supports_exchange: false 0x1e8.5-0x1e8.5 (0.1)
0x1e0| 01 | . | supports_search_fs: false 0x1e8.6-0x1e8.6 (0.1)
0x1e0| 01 | . | supports_persistent_ids: true 0x1e8.7-0x1e8.7 (0.1)
0x1e0| 00 | . | supports_extended_security: false 0x1e9-0x1e9 (0.1)
0x1e0| 00 | . | has_no_root_directory_times: false 0x1e9.1-0x1e9.1 (0.1)
0x1e0| 00 | . | supports_flock: false 0x1e9.2-0x1e9.2 (0.1)
0x1e0| 00 | . | supports_case_preserved_names: false 0x1e9.3-0x1e9.3 (0.1)
0x1e0| 00 | . | supports_case_sensitive_names: false 0x1e9.4-0x1e9.4 (0.1)
0x1e0| 00 | . | supports_fast_stat_fs: false 0x1e9.5-0x1e9.5 (0.1)
0x1e0| 00 | . | supports_rename: false 0x1e9.6-0x1e9.6 (0.1)
0x1e0| 00 | . | supports_journaling: false 0x1e9.7-0x1e9.7 (0.1)
0x1e0| 00 | . | supports_zero_runs: false 0x1ea-0x1ea (0.1)
0x1e0| 00 | . | supports_sparse_files: false 0x1ea.1-0x1ea.1 (0.1)
0x1e0| 00 | . | is_journaling: false 0x1ea.2-0x1ea.2 (0.1)
0x1e0| 00 | . | reserved_3: false 0x1ea.3-0x1ea.3 (0.1)
0x1e0| 00 | . | supports_path_from_id: false 0x1ea.4-0x1ea.4 (0.1)
0x1e0| 00 | . | supports_mandatory_byte_range_locks: false 0x1ea.5-0x1ea.5 (0.1)
0x1e0| 00 | . | supports_hard_links: false 0x1ea.6-0x1ea.6 (0.1)
0x1e0| 00 | . | supports_2_tb_file_size: false 0x1ea.7-0x1ea.7 (0.1)
0x1e0| 00 | . | reserved_4: raw bits 0x1eb-0x1eb.2 (0.3)
0x1e0| 00 | . | has64_bit_object_ids: false 0x1eb.3-0x1eb.3 (0.1)
0x1e0| 00 | . | supports_decmp_fs_compression: false 0x1eb.4-0x1eb.4 (0.1)
0x1e0| 00 | . | supports_hidden_files: false 0x1eb.5-0x1eb.5 (0.1)
0x1e0| 00 | . | supports_remote_events: false 0x1eb.6-0x1eb.6 (0.1)
0x1e0| 00 | . | supports_volume_sizes: false 0x1eb.7-0x1eb.7 (0.1)
0x1e0| 00 00 00 00| ....| reserved: raw bits 0x1ec-0x1f3.7 (8)
0x1d0| 18 00 00 00 | .... | alignment_bytes: raw bits 0x1d4-0x1d8 (4)
0x270|11 20 00 00 |. .. | key: "volume_uuid" (8209) (String UUID) 0x270-0x274 (4)
0x270| 78 01 00 00 | x... | offset_to_record: 376 0x274-0x278 (4)
0x270| 00 00 00 00 | .... | unused: 0 0x278-0x27c (4)
| | | [8]{}: entry 0x188-0x288 (256)
| | | record{}: 0x188-0x198 (16)
0x180| 08 00 00 00 | .... | length: 8 0x188-0x18c (4)
0x180| 04 03 00 00| ....| type: "long" (772) ((signed 64-bit) 8-byte number) 0x18c-0x190 (4)
0x190|00 a0 20 68 74 00 00 00 |.. ht... | data: 499963174912 0x190-0x198 (8)
0x270| 12 20 00 00| . ..| key: "volume_size" (8210) (8-byte integer) 0x27c-0x280 (4)
0x280|58 01 00 00 |X... | offset_to_record: 344 0x280-0x284 (4)
0x280| 00 00 00 00 | .... | unused: 0 0x284-0x288 (4)
| | | [9]{}: entry 0x198-0x294 (252)
| | | record{}: 0x198-0x1a8 (16)
0x190| 08 00 00 00 | .... | length: 8 0x198-0x19c (4)
0x190| 00 04 00 00| ....| type: "date" (1024) (Big-endian IEEE double precision seconds since 2001-01-01 00:00:00 UTC) 0x19c-0x1a0 (4)
0x1a0|41 c1 de 44 80 00 00 00 |A..D.... | data: 5.995584e+08 (2020-01-01T08:00:00Z) 0x1a0-0x1a8 (8)
0x280| 13 20 00 00 | . .. | key: "volume_creation_date" (8211) (Date) 0x288-0x28c (4)
0x280| 68 01 00 00| h...| offset_to_record: 360 0x28c-0x290 (4)
0x290|00 00 00 00 |.... | unused: 0 0x290-0x294 (4)
| | | [10]{}: entry 0x1d4-0x2a0 (204)
| | | record{}: 0x1d4-0x1f4 (32)
0x1d0| 18 00 00 00 | .... | length: 24 (valid) 0x1d4-0x1d8 (4)
0x1d0| 01 02 00 00 | .... | raw_type: "data" (513) (valid) 0x1d8-0x1dc (4)
| | | type: "flag_data"
| | | property_flags{}: 0x1dc-0x1e4 (8)
0x1d0| 81 | . | is_internal: true 0x1dc-0x1dc.1 (0.1)
0x1d0| 81 | . | is_removable: false 0x1dc.1-0x1dc.2 (0.1)
0x1d0| 81 | . | is_ejectable: false 0x1dc.2-0x1dc.3 (0.1)
0x1d0| 81 | . | is_quarantined: false 0x1dc.3-0x1dc.4 (0.1)
0x1d0| 81 | . | is_read_only: false 0x1dc.4-0x1dc.5 (0.1)
0x1d0| 81 | . | dont_browse: false 0x1dc.5-0x1dc.6 (0.1)
0x1d0| 81 | . | is_automount: false 0x1dc.6-0x1dc.7 (0.1)
0x1d0| 81 | . | is_local: true 0x1dc.7-0x1dd (0.1)
0x1d0| 00 | . | is_dvd: false 0x1dd-0x1dd.1 (0.1)
0x1d0| 00 | . | is_cd: false 0x1dd.1-0x1dd.2 (0.1)
0x1d0| 00 | . | is_idisk: false 0x1dd.2-0x1dd.3 (0.1)
0x1d0| 00 | . | is_ipod: false 0x1dd.3-0x1dd.4 (0.1)
0x1d0| 00 | . | is_local_idisk_mirror: false 0x1dd.4-0x1dd.5 (0.1)
0x1d0| 00 | . | is_file_vault: false 0x1dd.5-0x1dd.6 (0.1)
0x1d0| 00 | . | is_disk_image: false 0x1dd.6-0x1dd.7 (0.1)
0x1d0| 00 | . | is_external: false 0x1dd.7-0x1de (0.1)
0x1d0| 00 | . | reserved_0: raw bits 0x1de-0x1de.7 (0.7)
0x1d0| 00 | . | is_device_file_system: false 0x1de.7-0x1df (0.1)
0x1d0| 00| .| reserved_1: raw bits 0x1df-0x1e0 (1)
0x1e0|01 |. | supports_read_dir_attr: false 0x1e0-0x1e0.1 (0.1)
0x1e0|01 |. | supports_copy_file: false 0x1e0.1-0x1e0.2 (0.1)
0x1e0|01 |. | supports_deny_modes: false 0x1e0.2-0x1e0.3 (0.1)
0x1e0|01 |. | supports_symbolic_links: false 0x1e0.3-0x1e0.4 (0.1)
0x1e0|01 |. | reserved_2: false 0x1e0.4-0x1e0.5 (0.1)
0x1e0|01 |. | supports_exchange: false 0x1e0.5-0x1e0.6 (0.1)
0x1e0|01 |. | supports_search_fs: false 0x1e0.6-0x1e0.7 (0.1)
0x1e0|01 |. | supports_persistent_ids: true 0x1e0.7-0x1e1 (0.1)
0x1e0| 00 | . | supports_extended_security: false 0x1e1-0x1e1.1 (0.1)
0x1e0| 00 | . | has_no_root_directory_times: false 0x1e1.1-0x1e1.2 (0.1)
0x1e0| 00 | . | supports_flock: false 0x1e1.2-0x1e1.3 (0.1)
0x1e0| 00 | . | supports_case_preserved_names: false 0x1e1.3-0x1e1.4 (0.1)
0x1e0| 00 | . | supports_case_sensitive_names: false 0x1e1.4-0x1e1.5 (0.1)
0x1e0| 00 | . | supports_fast_stat_fs: false 0x1e1.5-0x1e1.6 (0.1)
0x1e0| 00 | . | supports_rename: false 0x1e1.6-0x1e1.7 (0.1)
0x1e0| 00 | . | supports_journaling: false 0x1e1.7-0x1e2 (0.1)
0x1e0| 00 | . | supports_zero_runs: false 0x1e2-0x1e2.1 (0.1)
0x1e0| 00 | . | supports_sparse_files: false 0x1e2.1-0x1e2.2 (0.1)
0x1e0| 00 | . | is_journaling: false 0x1e2.2-0x1e2.3 (0.1)
0x1e0| 00 | . | reserved_3: false 0x1e2.3-0x1e2.4 (0.1)
0x1e0| 00 | . | supports_path_from_id: false 0x1e2.4-0x1e2.5 (0.1)
0x1e0| 00 | . | supports_mandatory_byte_range_locks: false 0x1e2.5-0x1e2.6 (0.1)
0x1e0| 00 | . | supports_hard_links: false 0x1e2.6-0x1e2.7 (0.1)
0x1e0| 00 | . | supports_2_tb_file_size: false 0x1e2.7-0x1e3 (0.1)
0x1e0| 00 | . | reserved_4: raw bits 0x1e3-0x1e3.3 (0.3)
0x1e0| 00 | . | has64_bit_object_ids: false 0x1e3.3-0x1e3.4 (0.1)
0x1e0| 00 | . | supports_decmp_fs_compression: false 0x1e3.4-0x1e3.5 (0.1)
0x1e0| 00 | . | supports_hidden_files: false 0x1e3.5-0x1e3.6 (0.1)
0x1e0| 00 | . | supports_remote_events: false 0x1e3.6-0x1e3.7 (0.1)
0x1e0| 00 | . | supports_volume_sizes: false 0x1e3.7-0x1e4 (0.1)
| | | enabled_property_flags{}: 0x1e4-0x1ec (8)
0x1e0| ef | . | is_internal: true 0x1e4-0x1e4.1 (0.1)
0x1e0| ef | . | is_removable: true 0x1e4.1-0x1e4.2 (0.1)
0x1e0| ef | . | is_ejectable: true 0x1e4.2-0x1e4.3 (0.1)
0x1e0| ef | . | is_quarantined: false 0x1e4.3-0x1e4.4 (0.1)
0x1e0| ef | . | is_read_only: true 0x1e4.4-0x1e4.5 (0.1)
0x1e0| ef | . | dont_browse: true 0x1e4.5-0x1e4.6 (0.1)
0x1e0| ef | . | is_automount: true 0x1e4.6-0x1e4.7 (0.1)
0x1e0| ef | . | is_local: true 0x1e4.7-0x1e5 (0.1)
0x1e0| 13 | . | is_dvd: false 0x1e5-0x1e5.1 (0.1)
0x1e0| 13 | . | is_cd: false 0x1e5.1-0x1e5.2 (0.1)
0x1e0| 13 | . | is_idisk: false 0x1e5.2-0x1e5.3 (0.1)
0x1e0| 13 | . | is_ipod: true 0x1e5.3-0x1e5.4 (0.1)
0x1e0| 13 | . | is_local_idisk_mirror: false 0x1e5.4-0x1e5.5 (0.1)
0x1e0| 13 | . | is_file_vault: false 0x1e5.5-0x1e5.6 (0.1)
0x1e0| 13 | . | is_disk_image: true 0x1e5.6-0x1e5.7 (0.1)
0x1e0| 13 | . | is_external: true 0x1e5.7-0x1e6 (0.1)
0x1e0| 00 | . | reserved_0: raw bits 0x1e6-0x1e6.7 (0.7)
0x1e0| 00 | . | is_device_file_system: false 0x1e6.7-0x1e7 (0.1)
0x1e0| 00 | . | reserved_1: raw bits 0x1e7-0x1e8 (1)
0x1e0| 01 | . | supports_read_dir_attr: false 0x1e8-0x1e8.1 (0.1)
0x1e0| 01 | . | supports_copy_file: false 0x1e8.1-0x1e8.2 (0.1)
0x1e0| 01 | . | supports_deny_modes: false 0x1e8.2-0x1e8.3 (0.1)
0x1e0| 01 | . | supports_symbolic_links: false 0x1e8.3-0x1e8.4 (0.1)
0x1e0| 01 | . | reserved_2: false 0x1e8.4-0x1e8.5 (0.1)
0x1e0| 01 | . | supports_exchange: false 0x1e8.5-0x1e8.6 (0.1)
0x1e0| 01 | . | supports_search_fs: false 0x1e8.6-0x1e8.7 (0.1)
0x1e0| 01 | . | supports_persistent_ids: true 0x1e8.7-0x1e9 (0.1)
0x1e0| 00 | . | supports_extended_security: false 0x1e9-0x1e9.1 (0.1)
0x1e0| 00 | . | has_no_root_directory_times: false 0x1e9.1-0x1e9.2 (0.1)
0x1e0| 00 | . | supports_flock: false 0x1e9.2-0x1e9.3 (0.1)
0x1e0| 00 | . | supports_case_preserved_names: false 0x1e9.3-0x1e9.4 (0.1)
0x1e0| 00 | . | supports_case_sensitive_names: false 0x1e9.4-0x1e9.5 (0.1)
0x1e0| 00 | . | supports_fast_stat_fs: false 0x1e9.5-0x1e9.6 (0.1)
0x1e0| 00 | . | supports_rename: false 0x1e9.6-0x1e9.7 (0.1)
0x1e0| 00 | . | supports_journaling: false 0x1e9.7-0x1ea (0.1)
0x1e0| 00 | . | supports_zero_runs: false 0x1ea-0x1ea.1 (0.1)
0x1e0| 00 | . | supports_sparse_files: false 0x1ea.1-0x1ea.2 (0.1)
0x1e0| 00 | . | is_journaling: false 0x1ea.2-0x1ea.3 (0.1)
0x1e0| 00 | . | reserved_3: false 0x1ea.3-0x1ea.4 (0.1)
0x1e0| 00 | . | supports_path_from_id: false 0x1ea.4-0x1ea.5 (0.1)
0x1e0| 00 | . | supports_mandatory_byte_range_locks: false 0x1ea.5-0x1ea.6 (0.1)
0x1e0| 00 | . | supports_hard_links: false 0x1ea.6-0x1ea.7 (0.1)
0x1e0| 00 | . | supports_2_tb_file_size: false 0x1ea.7-0x1eb (0.1)
0x1e0| 00 | . | reserved_4: raw bits 0x1eb-0x1eb.3 (0.3)
0x1e0| 00 | . | has64_bit_object_ids: false 0x1eb.3-0x1eb.4 (0.1)
0x1e0| 00 | . | supports_decmp_fs_compression: false 0x1eb.4-0x1eb.5 (0.1)
0x1e0| 00 | . | supports_hidden_files: false 0x1eb.5-0x1eb.6 (0.1)
0x1e0| 00 | . | supports_remote_events: false 0x1eb.6-0x1eb.7 (0.1)
0x1e0| 00 | . | supports_volume_sizes: false 0x1eb.7-0x1ec (0.1)
0x1e0| 00 00 00 00| ....| reserved: raw bits 0x1ec-0x1f4 (8)
0x1f0|00 00 00 00 |.... |
0x290| 20 20 00 00 | .. | key: "volume_flags" (8224) (flag bitfield) 0x294-0x297.7 (4)
0x290| a4 01 00 00 | .... | offset_to_record: 420 0x298-0x29b.7 (4)
0x290| 00 00 00 00| ....| unused: 0 0x29c-0x29f.7 (4)
| | | [11]{}: entry 0x200-0x2ab.7 (172)
| | | record{}: 0x200-0x207.7 (8)
0x200|00 00 00 00 |.... | length: 0 0x200-0x203.7 (4)
0x200| 01 05 00 00 | .... | type: "boolean_true" (1281) (True) 0x204-0x207.7 (4)
0x2a0|30 20 00 00 |0 .. | key: "volume_is_root" (8240) (True if the volume was the filesystem root) 0x2a0-0x2a3.7 (4)
0x2a0| d0 01 00 00 | .... | offset_to_record: 464 0x2a4-0x2a7.7 (4)
0x2a0| 00 00 00 00 | .... | unused: 0 0x2a8-0x2ab.7 (4)
| | | [12]{}: entry 0x148-0x2b7.7 (368)
| | | record{}: 0x148-0x157.7 (16)
0x140| 08 00 00 00 | .... | length: 8 0x148-0x14b.7 (4)
0x140| 04 03 00 00| ....| type: "long" (772) ((signed 64-bit) 8-byte number) 0x14c-0x14f.7 (4)
0x150|03 00 00 00 00 00 00 00 |........ | data: 3 0x150-0x157.7 (8)
0x2a0| 01 c0 00 00| ....| key: "containing_folder_index" (49153) (Integer index of containing folder in target path array) 0x2ac-0x2af.7 (4)
0x2b0|18 01 00 00 |.... | offset_to_record: 280 0x2b0-0x2b3.7 (4)
0x2b0| 00 00 00 00 | .... | unused: 0 0x2b4-0x2b7.7 (4)
| | | [13]{}: entry 0x50-0x2c3.7 (628)
| | | record{}: 0x50-0x67.7 (24)
0x050|0d 00 00 00 |.... | length: 13 0x50-0x53.7 (4)
0x050| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x54-0x57.7 (4)
0x050| 64 61 76 69 64 6d 63 64| davidmcd| data: "davidmcdonald" 0x58-0x64.7 (13)
0x290| 20 20 00 00 | .. | key: "volume_flags" (8224) (flag bitfield) 0x294-0x298 (4)
0x290| a4 01 00 00 | .... | offset_to_record: 420 0x298-0x29c (4)
0x290| 00 00 00 00| ....| unused: 0 0x29c-0x2a0 (4)
| | | [11]{}: entry 0x200-0x2ac (172)
| | | record{}: 0x200-0x208 (8)
0x200|00 00 00 00 |.... | length: 0 0x200-0x204 (4)
0x200| 01 05 00 00 | .... | type: "boolean_true" (1281) (True) 0x204-0x208 (4)
0x2a0|30 20 00 00 |0 .. | key: "volume_is_root" (8240) (True if the volume was the filesystem root) 0x2a0-0x2a4 (4)
0x2a0| d0 01 00 00 | .... | offset_to_record: 464 0x2a4-0x2a8 (4)
0x2a0| 00 00 00 00 | .... | unused: 0 0x2a8-0x2ac (4)
| | | [12]{}: entry 0x148-0x2b8 (368)
| | | record{}: 0x148-0x158 (16)
0x140| 08 00 00 00 | .... | length: 8 0x148-0x14c (4)
0x140| 04 03 00 00| ....| type: "long" (772) ((signed 64-bit) 8-byte number) 0x14c-0x150 (4)
0x150|03 00 00 00 00 00 00 00 |........ | data: 3 0x150-0x158 (8)
0x2a0| 01 c0 00 00| ....| key: "containing_folder_index" (49153) (Integer index of containing folder in target path array) 0x2ac-0x2b0 (4)
0x2b0|18 01 00 00 |.... | offset_to_record: 280 0x2b0-0x2b4 (4)
0x2b0| 00 00 00 00 | .... | unused: 0 0x2b4-0x2b8 (4)
| | | [13]{}: entry 0x50-0x2c4 (628)
| | | record{}: 0x50-0x68 (24)
0x050|0d 00 00 00 |.... | length: 13 0x50-0x54 (4)
0x050| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x54-0x58 (4)
0x050| 64 61 76 69 64 6d 63 64| davidmcd| data: "davidmcdonald" 0x58-0x65 (13)
0x060|6f 6e 61 6c 64 |onald |
0x060| 00 00 00 | ... | alignment_bytes: raw bits 0x65-0x67.7 (3)
0x2b0| 11 c0 00 00 | .... | key: "creator_username" (49169) (Name of user that created bookmark) 0x2b8-0x2bb.7 (4)
0x2b0| 20 00 00 00| ...| offset_to_record: 32 0x2bc-0x2bf.7 (4)
0x2c0|00 00 00 00 |.... | unused: 0 0x2c0-0x2c3.7 (4)
| | | [14]{}: entry 0x158-0x2cf.7 (376)
| | | record{}: 0x158-0x163.7 (12)
0x150| 04 00 00 00 | .... | length: 4 0x158-0x15b.7 (4)
0x150| 03 03 00 00| ....| type: "int" (771) ((signed 32-bit) 4-byte number) 0x15c-0x15f.7 (4)
0x160|f5 01 00 00 |.... | data: 501 0x160-0x163.7 (4)
0x2c0| 12 c0 00 00 | .... | key: "creator_uid" (49170) (UID of user that created bookmark) 0x2c4-0x2c7.7 (4)
0x2c0| 28 01 00 00 | (... | offset_to_record: 296 0x2c8-0x2cb.7 (4)
0x2c0| 00 00 00 00| ....| unused: 0 0x2cc-0x2cf.7 (4)
| | | [15]{}: entry 0x34-0x2db.7 (680)
| | | record{}: 0x34-0x3f.7 (12)
0x030| 04 00 00 00 | .... | length: 4 0x34-0x37.7 (4)
0x030| 03 03 00 00 | .... | type: "int" (771) ((signed 32-bit) 4-byte number) 0x38-0x3b.7 (4)
0x030| 00 00 00 20| ... | data: 536870912 0x3c-0x3f.7 (4)
0x2d0|10 d0 00 00 |.... | key: "creation_options" (53264) (Integer containing flags passed to CFURLCreateBookmarkData) 0x2d0-0x2d3.7 (4)
0x2d0| 04 00 00 00 | .... | offset_to_record: 4 0x2d4-0x2d7.7 (4)
0x2d0| 00 00 00 00 | .... | unused: 0 0x2d8-0x2db.7 (4)
| | | [16]{}: entry 0x80-0x2e7.7 (616)
| | | record{}: 0x80-0x8f.7 (16)
0x080|06 00 00 00 |.... | length: 6 0x80-0x83.7 (4)
0x080| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x84-0x87.7 (4)
0x080| 74 68 65 73 69 73 | thesis | data: "thesis" 0x88-0x8d.7 (6)
0x080| 00 00| ..| alignment_bytes: raw bits 0x8e-0x8f.7 (2)
0x2d0| 17 f0 00 00| ....| key: "display_name" (61463) (String) 0x2dc-0x2df.7 (4)
0x2e0|50 00 00 00 |P... | offset_to_record: 80 0x2e0-0x2e3.7 (4)
0x2e0| 00 00 00 00 | .... | unused: 0 0x2e4-0x2e7.7 (4)
| | | [17]{}: entry 0x200-0x2f3.7 (244)
| | | record{}: 0x200-0x207.7 (8)
0x200|00 00 00 00 |.... | length: 0 0x200-0x203.7 (4)
0x200| 01 05 00 00 | .... | type: "boolean_true" (1281) (True) 0x204-0x207.7 (4)
0x2e0| 0f 00 0f 00 | .... | key: 983055 0x2e8-0x2eb.7 (4)
0x2e0| d0 01 00 00| ....| offset_to_record: 464 0x2ec-0x2ef.7 (4)
0x2f0|00 00 00 00| |....| | unused: 0 0x2f0-0x2f3.7 (4)
| | | toc_headers[0:1]: 0x208-0x21b.7 (20)
| | | [0]{}: toc_header 0x208-0x21b.7 (20)
0x200| e4 00 00 00 | .... | toc_size: 228 0x208-0x20b.7 (4)
0x200| fe ff ff ff| ....| magic: 4294967294 (valid) 0x20c-0x20f.7 (4)
0x210|01 00 00 00 |.... | identifier: 1 0x210-0x213.7 (4)
0x210| 00 00 00 00 | .... | next_toc_offset: 0 0x214-0x217.7 (4)
0x210| 12 00 00 00 | .... | num_entries_in_toc: 18 0x218-0x21b.7 (4)
0x060| 00 00 00 | ... | alignment_bytes: raw bits 0x65-0x68 (3)
0x2b0| 11 c0 00 00 | .... | key: "creator_username" (49169) (Name of user that created bookmark) 0x2b8-0x2bc (4)
0x2b0| 20 00 00 00| ...| offset_to_record: 32 0x2bc-0x2c0 (4)
0x2c0|00 00 00 00 |.... | unused: 0 0x2c0-0x2c4 (4)
| | | [14]{}: entry 0x158-0x2d0 (376)
| | | record{}: 0x158-0x164 (12)
0x150| 04 00 00 00 | .... | length: 4 0x158-0x15c (4)
0x150| 03 03 00 00| ....| type: "int" (771) ((signed 32-bit) 4-byte number) 0x15c-0x160 (4)
0x160|f5 01 00 00 |.... | data: 501 0x160-0x164 (4)
0x2c0| 12 c0 00 00 | .... | key: "creator_uid" (49170) (UID of user that created bookmark) 0x2c4-0x2c8 (4)
0x2c0| 28 01 00 00 | (... | offset_to_record: 296 0x2c8-0x2cc (4)
0x2c0| 00 00 00 00| ....| unused: 0 0x2cc-0x2d0 (4)
| | | [15]{}: entry 0x34-0x2dc (680)
| | | record{}: 0x34-0x40 (12)
0x030| 04 00 00 00 | .... | length: 4 0x34-0x38 (4)
0x030| 03 03 00 00 | .... | type: "int" (771) ((signed 32-bit) 4-byte number) 0x38-0x3c (4)
0x030| 00 00 00 20| ... | data: 536870912 0x3c-0x40 (4)
0x2d0|10 d0 00 00 |.... | key: "creation_options" (53264) (Integer containing flags passed to CFURLCreateBookmarkData) 0x2d0-0x2d4 (4)
0x2d0| 04 00 00 00 | .... | offset_to_record: 4 0x2d4-0x2d8 (4)
0x2d0| 00 00 00 00 | .... | unused: 0 0x2d8-0x2dc (4)
| | | [16]{}: entry 0x80-0x2e8 (616)
| | | record{}: 0x80-0x90 (16)
0x080|06 00 00 00 |.... | length: 6 0x80-0x84 (4)
0x080| 01 01 00 00 | .... | type: "string" (257) (UTF-8 String) 0x84-0x88 (4)
0x080| 74 68 65 73 69 73 | thesis | data: "thesis" 0x88-0x8e (6)
0x080| 00 00| ..| alignment_bytes: raw bits 0x8e-0x90 (2)
0x2d0| 17 f0 00 00| ....| key: "display_name" (61463) (String) 0x2dc-0x2e0 (4)
0x2e0|50 00 00 00 |P... | offset_to_record: 80 0x2e0-0x2e4 (4)
0x2e0| 00 00 00 00 | .... | unused: 0 0x2e4-0x2e8 (4)
| | | [17]{}: entry 0x200-0x2f4 (244)
| | | record{}: 0x200-0x208 (8)
0x200|00 00 00 00 |.... | length: 0 0x200-0x204 (4)
0x200| 01 05 00 00 | .... | type: "boolean_true" (1281) (True) 0x204-0x208 (4)
0x2e0| 0f 00 0f 00 | .... | key: 983055 0x2e8-0x2ec (4)
0x2e0| d0 01 00 00| ....| offset_to_record: 464 0x2ec-0x2f0 (4)
0x2f0|00 00 00 00| |....| | unused: 0 0x2f0-0x2f4 (4)
| | | toc_headers[0:1]: 0x208-0x21c (20)
| | | [0]{}: toc_header 0x208-0x21c (20)
0x200| e4 00 00 00 | .... | toc_size: 228 0x208-0x20c (4)
0x200| fe ff ff ff| ....| magic: 4294967294 (valid) 0x20c-0x210 (4)
0x210|01 00 00 00 |.... | identifier: 1 0x210-0x214 (4)
0x210| 00 00 00 00 | .... | next_toc_offset: 0 0x214-0x218 (4)
0x210| 12 00 00 00 | .... | num_entries_in_toc: 18 0x218-0x21c (4)
$ fq torepr sample4.book
{
"983055": true,

View File

@ -130,7 +130,7 @@ func decodeItem(d *decode.D, p *plist) bool {
case elementTypeDate:
n := 1 << decodeSize(d, d.UintAssert(4, 8))
d.FieldValueUint("size", uint64(n))
d.FieldF("value", n*8, scalar.FltActualDate(cocoaTimeEpochDate, time.RFC3339))
d.FieldF("value", n*8, scalar.FltActualDateDescription(cocoaTimeEpochDate, time.Second, time.RFC3339))
case elementTypeData:
n := decodeSize(d)
d.FieldValueUint("size", n)

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,25 +1,25 @@
$ fq dv float.plist
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: float.plist (bplist) 0x0-0x31.7 (50)
| | | header{}: 0x0-0x7.7 (8)
0x00|62 70 6c 69 73 74 |bplist | magic: "bplist" (valid) 0x0-0x5.7 (6)
0x00| 30 30 | 00 | version: "00" (valid) 0x6-0x7.7 (2)
| | | objects{}: 0x8-0x10.7 (9)
0x00| 23 | # | type: "real" (2) (Floating Point Number) 0x8-0x8.3 (0.4)
0x00| 23 | # | size_bits: 3 0x8.4-0x8.7 (0.4)
| | | size: 8 0x9-NA (0)
0x00| 40 09 21 f9 f0 1b 86| @.!....| value: 3.14159 0x9-0x10.7 (8)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: float.plist (bplist) 0x0-0x32 (50)
| | | header{}: 0x0-0x8 (8)
0x00|62 70 6c 69 73 74 |bplist | magic: "bplist" (valid) 0x0-0x6 (6)
0x00| 30 30 | 00 | version: "00" (valid) 0x6-0x8 (2)
| | | objects{}: 0x8-0x11 (9)
0x00| 23 | # | type: "real" (2) (Floating Point Number) 0x8-0x8.4 (0.4)
0x00| 23 | # | size_bits: 3 0x8.4-0x9 (0.4)
| | | size: 8
0x00| 40 09 21 f9 f0 1b 86| @.!....| value: 3.14159 0x9-0x11 (8)
0x10|6e |n |
| | | offset_table[0:1]: 0x11-0x11.7 (1)
0x10| 08 | . | [0]: 8 element 0x11-0x11.7 (1)
| | | trailer{}: 0x12-0x31.7 (32)
0x10| 00 00 00 00 00 | ..... | unused: 0 0x12-0x16.7 (5)
0x10| 00 | . | sort_version: 0 0x17-0x17.7 (1)
0x10| 01 | . | offset_table_offset_size: 1 (valid) 0x18-0x18.7 (1)
0x10| 01 | . | object_reference_size: 1 (valid) 0x19-0x19.7 (1)
0x10| 00 00 00 00 00 00| ......| object_count: 1 0x1a-0x21.7 (8)
| | | offset_table[0:1]: 0x11-0x12 (1)
0x10| 08 | . | [0]: 8 element 0x11-0x12 (1)
| | | trailer{}: 0x12-0x32 (32)
0x10| 00 00 00 00 00 | ..... | unused: 0 0x12-0x17 (5)
0x10| 00 | . | sort_version: 0 0x17-0x18 (1)
0x10| 01 | . | offset_table_offset_size: 1 (valid) 0x18-0x19 (1)
0x10| 01 | . | object_reference_size: 1 (valid) 0x19-0x1a (1)
0x10| 00 00 00 00 00 00| ......| object_count: 1 0x1a-0x22 (8)
0x20|00 01 |.. |
0x20| 00 00 00 00 00 00 00 00 | ........ | top_object_offset: 0 0x22-0x29.7 (8)
0x20| 00 00 00 00 00 00| ......| offset_table_start: 17 0x2a-0x31.7 (8)
0x20| 00 00 00 00 00 00 00 00 | ........ | top_object_offset: 0 0x22-0x2a (8)
0x20| 00 00 00 00 00 00| ......| offset_table_start: 17 0x2a-0x32 (8)
0x30|00 11| |..| |
$ fq torepr float.plist
3.14159

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,42 +1,42 @@
$ fq dv uiautomation.plist
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: uiautomation.plist (bplist) 0x0-0x44.7 (69)
| | | header{}: 0x0-0x7.7 (8)
0x00|62 70 6c 69 73 74 |bplist | magic: "bplist" (valid) 0x0-0x5.7 (6)
0x00| 30 30 | 00 | version: "00" (valid) 0x6-0x7.7 (2)
| | | objects{}: 0x8-0x21.7 (26)
0x00| d1 | . | type: "dict" (13) (Dictionary) 0x8-0x8.3 (0.4)
0x00| d1 | . | size_bits: 1 0x8.4-0x8.7 (0.4)
| | | size: 1 0x9-NA (0)
| | | entries[0:1]: 0x9-0x21.7 (25)
| | | [0]{}: entry 0x9-0x21.7 (25)
0x00| 01 | . | key_index: 1 0x9-0x9.7 (1)
0x00| 02 | . | value_index: 2 0xa-0xa.7 (1)
| | | key{}: 0xb-0x20.7 (22)
0x00| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0xb-0xb.3 (0.4)
0x00| 5f | _ | size_bits: 15 0xb.4-0xb.7 (0.4)
0x00| 10 | . | large_size_marker: 1 (valid) 0xc-0xc.3 (0.4)
0x00| 10 | . | exponent: 0 0xc.4-0xc.7 (0.4)
0x00| 13 | . | size_bigint: 19 0xd-0xd.7 (1)
| | | size: 19 0xe-NA (0)
0x00| 55 49| UI| value: "UIAutomationEnabled" 0xe-0x20.7 (19)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: uiautomation.plist (bplist) 0x0-0x45 (69)
| | | header{}: 0x0-0x8 (8)
0x00|62 70 6c 69 73 74 |bplist | magic: "bplist" (valid) 0x0-0x6 (6)
0x00| 30 30 | 00 | version: "00" (valid) 0x6-0x8 (2)
| | | objects{}: 0x8-0x22 (26)
0x00| d1 | . | type: "dict" (13) (Dictionary) 0x8-0x8.4 (0.4)
0x00| d1 | . | size_bits: 1 0x8.4-0x9 (0.4)
| | | size: 1
| | | entries[0:1]: 0x9-0x22 (25)
| | | [0]{}: entry 0x9-0x22 (25)
0x00| 01 | . | key_index: 1 0x9-0xa (1)
0x00| 02 | . | value_index: 2 0xa-0xb (1)
| | | key{}: 0xb-0x21 (22)
0x00| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0xb-0xb.4 (0.4)
0x00| 5f | _ | size_bits: 15 0xb.4-0xc (0.4)
0x00| 10 | . | large_size_marker: 1 (valid) 0xc-0xc.4 (0.4)
0x00| 10 | . | exponent: 0 0xc.4-0xd (0.4)
0x00| 13 | . | size_bigint: 19 0xd-0xe (1)
| | | size: 19
0x00| 55 49| UI| value: "UIAutomationEnabled" 0xe-0x21 (19)
0x10|41 75 74 6f 6d 61 74 69 6f 6e 45 6e 61 62 6c 65|AutomationEnable|
0x20|64 |d |
| | | value{}: 0x21-0x21.7 (1)
0x20| 09 | . | type: "singleton" (0) (Singleton value (null/bool)) 0x21-0x21.3 (0.4)
0x20| 09 | . | value: true (9) 0x21.4-0x21.7 (0.4)
| | | offset_table[0:3]: 0x22-0x24.7 (3)
0x20| 08 | . | [0]: 8 element 0x22-0x22.7 (1)
0x20| 0b | . | [1]: 11 element 0x23-0x23.7 (1)
0x20| 21 | ! | [2]: 33 element 0x24-0x24.7 (1)
| | | trailer{}: 0x25-0x44.7 (32)
0x20| 00 00 00 00 00 | ..... | unused: 0 0x25-0x29.7 (5)
0x20| 00 | . | sort_version: 0 0x2a-0x2a.7 (1)
0x20| 01 | . | offset_table_offset_size: 1 (valid) 0x2b-0x2b.7 (1)
0x20| 01 | . | object_reference_size: 1 (valid) 0x2c-0x2c.7 (1)
0x20| 00 00 00| ...| object_count: 3 0x2d-0x34.7 (8)
| | | value{}: 0x21-0x22 (1)
0x20| 09 | . | type: "singleton" (0) (Singleton value (null/bool)) 0x21-0x21.4 (0.4)
0x20| 09 | . | value: true (9) 0x21.4-0x22 (0.4)
| | | offset_table[0:3]: 0x22-0x25 (3)
0x20| 08 | . | [0]: 8 element 0x22-0x23 (1)
0x20| 0b | . | [1]: 11 element 0x23-0x24 (1)
0x20| 21 | ! | [2]: 33 element 0x24-0x25 (1)
| | | trailer{}: 0x25-0x45 (32)
0x20| 00 00 00 00 00 | ..... | unused: 0 0x25-0x2a (5)
0x20| 00 | . | sort_version: 0 0x2a-0x2b (1)
0x20| 01 | . | offset_table_offset_size: 1 (valid) 0x2b-0x2c (1)
0x20| 01 | . | object_reference_size: 1 (valid) 0x2c-0x2d (1)
0x20| 00 00 00| ...| object_count: 3 0x2d-0x35 (8)
0x30|00 00 00 00 03 |..... |
0x30| 00 00 00 00 00 00 00 00 | ........ | top_object_offset: 0 0x35-0x3c.7 (8)
0x30| 00 00 00| ...| offset_table_start: 34 0x3d-0x44.7 (8)
0x30| 00 00 00 00 00 00 00 00 | ........ | top_object_offset: 0 0x35-0x3d (8)
0x30| 00 00 00| ...| offset_table_start: 34 0x3d-0x45 (8)
0x40|00 00 00 00 22| |...."| |
$ fq torepr uiautomation.plist
{

View File

@ -1,450 +1,450 @@
$ fq dv unicode.plist
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: unicode.plist (bplist) 0x0-0x38e.7 (911)
| | | header{}: 0x0-0x7.7 (8)
0x000|62 70 6c 69 73 74 |bplist | magic: "bplist" (valid) 0x0-0x5.7 (6)
0x000| 30 30 | 00 | version: "00" (valid) 0x6-0x7.7 (2)
| | | objects{}: 0x8-0x31a.7 (787)
0x000| df | . | type: "dict" (13) (Dictionary) 0x8-0x8.3 (0.4)
0x000| df | . | size_bits: 15 0x8.4-0x8.7 (0.4)
0x000| 10 | . | large_size_marker: 1 (valid) 0x9-0x9.3 (0.4)
0x000| 10 | . | exponent: 0 0x9.4-0x9.7 (0.4)
0x000| 15 | . | size_bigint: 21 0xa-0xa.7 (1)
| | | size: 21 0xb-NA (0)
| | | entries[0:21]: 0xb-0x31a.7 (784)
| | | [0]{}: entry 0xb-0x1dc.7 (466)
0x000| 01 | . | key_index: 1 0xb-0xb.7 (1)
0x020|16 |. | value_index: 22 0x20-0x20.7 (1)
| | | key{}: 0x35-0x41.7 (13)
0x030| 5c | \ | type: "ascii_string" (5) (ASCII encoded string) 0x35-0x35.3 (0.4)
0x030| 5c | \ | size_bits: 12 0x35.4-0x35.7 (0.4)
| | | size: 12 0x36-NA (0)
0x030| 43 46 42 75 6e 64 6c 65 4e 61| CFBundleNa| value: "CFBundleName" 0x36-0x41.7 (12)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: unicode.plist (bplist) 0x0-0x38f (911)
| | | header{}: 0x0-0x8 (8)
0x000|62 70 6c 69 73 74 |bplist | magic: "bplist" (valid) 0x0-0x6 (6)
0x000| 30 30 | 00 | version: "00" (valid) 0x6-0x8 (2)
| | | objects{}: 0x8-0x31b (787)
0x000| df | . | type: "dict" (13) (Dictionary) 0x8-0x8.4 (0.4)
0x000| df | . | size_bits: 15 0x8.4-0x9 (0.4)
0x000| 10 | . | large_size_marker: 1 (valid) 0x9-0x9.4 (0.4)
0x000| 10 | . | exponent: 0 0x9.4-0xa (0.4)
0x000| 15 | . | size_bigint: 21 0xa-0xb (1)
| | | size: 21
| | | entries[0:21]: 0xb-0x31b (784)
| | | [0]{}: entry 0xb-0x1dd (466)
0x000| 01 | . | key_index: 1 0xb-0xc (1)
0x020|16 |. | value_index: 22 0x20-0x21 (1)
| | | key{}: 0x35-0x42 (13)
0x030| 5c | \ | type: "ascii_string" (5) (ASCII encoded string) 0x35-0x35.4 (0.4)
0x030| 5c | \ | size_bits: 12 0x35.4-0x36 (0.4)
| | | size: 12
0x030| 43 46 42 75 6e 64 6c 65 4e 61| CFBundleNa| value: "CFBundleName" 0x36-0x42 (12)
0x040|6d 65 |me |
| | | value{}: 0x1c7-0x1dc.7 (22)
0x1c0| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x1c7-0x1c7.3 (0.4)
0x1c0| 5f | _ | size_bits: 15 0x1c7.4-0x1c7.7 (0.4)
0x1c0| 10 | . | large_size_marker: 1 (valid) 0x1c8-0x1c8.3 (0.4)
0x1c0| 10 | . | exponent: 0 0x1c8.4-0x1c8.7 (0.4)
0x1c0| 13 | . | size_bigint: 19 0x1c9-0x1c9.7 (1)
| | | size: 19 0x1ca-NA (0)
0x1c0| 43 6f 72 65 44 65| CoreDe| value: "CoreDeviceUtilities" 0x1ca-0x1dc.7 (19)
| | | value{}: 0x1c7-0x1dd (22)
0x1c0| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x1c7-0x1c7.4 (0.4)
0x1c0| 5f | _ | size_bits: 15 0x1c7.4-0x1c8 (0.4)
0x1c0| 10 | . | large_size_marker: 1 (valid) 0x1c8-0x1c8.4 (0.4)
0x1c0| 10 | . | exponent: 0 0x1c8.4-0x1c9 (0.4)
0x1c0| 13 | . | size_bigint: 19 0x1c9-0x1ca (1)
| | | size: 19
0x1c0| 43 6f 72 65 44 65| CoreDe| value: "CoreDeviceUtilities" 0x1ca-0x1dd (19)
0x1d0|76 69 63 65 55 74 69 6c 69 74 69 65 73 |viceUtilities |
| | | [1]{}: entry 0xc-0x20f.7 (516)
0x000| 02 | . | key_index: 2 0xc-0xc.7 (1)
0x020| 17 | . | value_index: 23 0x21-0x21.7 (1)
| | | key{}: 0x42-0x5c.7 (27)
0x040| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x42-0x42.3 (0.4)
0x040| 5f | _ | size_bits: 15 0x42.4-0x42.7 (0.4)
0x040| 10 | . | large_size_marker: 1 (valid) 0x43-0x43.3 (0.4)
0x040| 10 | . | exponent: 0 0x43.4-0x43.7 (0.4)
0x040| 18 | . | size_bigint: 24 0x44-0x44.7 (1)
| | | size: 24 0x45-NA (0)
0x040| 4e 53 48 75 6d 61 6e 52 65 61 64| NSHumanRead| value: "NSHumanReadableCopyright" 0x45-0x5c.7 (24)
| | | [1]{}: entry 0xc-0x210 (516)
0x000| 02 | . | key_index: 2 0xc-0xd (1)
0x020| 17 | . | value_index: 23 0x21-0x22 (1)
| | | key{}: 0x42-0x5d (27)
0x040| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x42-0x42.4 (0.4)
0x040| 5f | _ | size_bits: 15 0x42.4-0x43 (0.4)
0x040| 10 | . | large_size_marker: 1 (valid) 0x43-0x43.4 (0.4)
0x040| 10 | . | exponent: 0 0x43.4-0x44 (0.4)
0x040| 18 | . | size_bigint: 24 0x44-0x45 (1)
| | | size: 24
0x040| 4e 53 48 75 6d 61 6e 52 65 61 64| NSHumanRead| value: "NSHumanReadableCopyright" 0x45-0x5d (24)
0x050|61 62 6c 65 43 6f 70 79 72 69 67 68 74 |ableCopyright |
| | | value{}: 0x1dd-0x20f.7 (51)
0x1d0| 6f | o | type: "unicode_string" (6) (Unicode string) 0x1dd-0x1dd.3 (0.4)
0x1d0| 6f | o | size_bits: 15 0x1dd.4-0x1dd.7 (0.4)
0x1d0| 10 | . | large_size_marker: 1 (valid) 0x1de-0x1de.3 (0.4)
0x1d0| 10 | . | exponent: 0 0x1de.4-0x1de.7 (0.4)
0x1d0| 30| 0| size_bigint: 48 0x1df-0x1df.7 (1)
| | | size: 48 0x1e0-NA (0)
0x1e0|00 43 00 6f 00 70 00 79 00 72 00 69 00 67 00 68|.C.o.p.y.r.i.g.h| value: "Copyright © 2021 Apple I" 0x1e0-0x20f.7 (48)
| | | value{}: 0x1dd-0x210 (51)
0x1d0| 6f | o | type: "unicode_string" (6) (Unicode string) 0x1dd-0x1dd.4 (0.4)
0x1d0| 6f | o | size_bits: 15 0x1dd.4-0x1de (0.4)
0x1d0| 10 | . | large_size_marker: 1 (valid) 0x1de-0x1de.4 (0.4)
0x1d0| 10 | . | exponent: 0 0x1de.4-0x1df (0.4)
0x1d0| 30| 0| size_bigint: 48 0x1df-0x1e0 (1)
| | | size: 48
0x1e0|00 43 00 6f 00 70 00 79 00 72 00 69 00 67 00 68|.C.o.p.y.r.i.g.h| value: "Copyright © 2021 Apple I" 0x1e0-0x210 (48)
* |until 0x20f.7 (48) | |
| | | [2]{}: entry 0xd-0x244.7 (568)
0x000| 03 | . | key_index: 3 0xd-0xd.7 (1)
0x020| 18 | . | value_index: 24 0x22-0x22.7 (1)
| | | key{}: 0x5d-0x64.7 (8)
0x050| 57 | W | type: "ascii_string" (5) (ASCII encoded string) 0x5d-0x5d.3 (0.4)
0x050| 57 | W | size_bits: 7 0x5d.4-0x5d.7 (0.4)
| | | size: 7 0x5e-NA (0)
0x050| 44 54| DT| value: "DTXcode" 0x5e-0x64.7 (7)
| | | [2]{}: entry 0xd-0x245 (568)
0x000| 03 | . | key_index: 3 0xd-0xe (1)
0x020| 18 | . | value_index: 24 0x22-0x23 (1)
| | | key{}: 0x5d-0x65 (8)
0x050| 57 | W | type: "ascii_string" (5) (ASCII encoded string) 0x5d-0x5d.4 (0.4)
0x050| 57 | W | size_bits: 7 0x5d.4-0x5e (0.4)
| | | size: 7
0x050| 44 54| DT| value: "DTXcode" 0x5e-0x65 (7)
0x060|58 63 6f 64 65 |Xcode |
| | | value{}: 0x240-0x244.7 (5)
0x240|54 |T | type: "ascii_string" (5) (ASCII encoded string) 0x240-0x240.3 (0.4)
0x240|54 |T | size_bits: 4 0x240.4-0x240.7 (0.4)
| | | size: 4 0x241-NA (0)
0x240| 31 33 32 30 | 1320 | value: "1320" 0x241-0x244.7 (4)
| | | [3]{}: entry 0xe-0x264.7 (599)
0x000| 04 | . | key_index: 4 0xe-0xe.7 (1)
0x020| 19 | . | value_index: 25 0x23-0x23.7 (1)
| | | key{}: 0x65-0x6e.7 (10)
0x060| 59 | Y | type: "ascii_string" (5) (ASCII encoded string) 0x65-0x65.3 (0.4)
0x060| 59 | Y | size_bits: 9 0x65.4-0x65.7 (0.4)
| | | size: 9 0x66-NA (0)
0x060| 44 54 53 44 4b 4e 61 6d 65 | DTSDKName | value: "DTSDKName" 0x66-0x6e.7 (9)
| | | value{}: 0x245-0x264.7 (32)
0x240| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x245-0x245.3 (0.4)
0x240| 5f | _ | size_bits: 15 0x245.4-0x245.7 (0.4)
0x240| 10 | . | large_size_marker: 1 (valid) 0x246-0x246.3 (0.4)
0x240| 10 | . | exponent: 0 0x246.4-0x246.7 (0.4)
0x240| 1d | . | size_bigint: 29 0x247-0x247.7 (1)
| | | size: 29 0x248-NA (0)
0x240| 61 70 70 6c 65 74 76 73| appletvs| value: "appletvsimulator15.2.internal" 0x248-0x264.7 (29)
| | | value{}: 0x240-0x245 (5)
0x240|54 |T | type: "ascii_string" (5) (ASCII encoded string) 0x240-0x240.4 (0.4)
0x240|54 |T | size_bits: 4 0x240.4-0x241 (0.4)
| | | size: 4
0x240| 31 33 32 30 | 1320 | value: "1320" 0x241-0x245 (4)
| | | [3]{}: entry 0xe-0x265 (599)
0x000| 04 | . | key_index: 4 0xe-0xf (1)
0x020| 19 | . | value_index: 25 0x23-0x24 (1)
| | | key{}: 0x65-0x6f (10)
0x060| 59 | Y | type: "ascii_string" (5) (ASCII encoded string) 0x65-0x65.4 (0.4)
0x060| 59 | Y | size_bits: 9 0x65.4-0x66 (0.4)
| | | size: 9
0x060| 44 54 53 44 4b 4e 61 6d 65 | DTSDKName | value: "DTSDKName" 0x66-0x6f (9)
| | | value{}: 0x245-0x265 (32)
0x240| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x245-0x245.4 (0.4)
0x240| 5f | _ | size_bits: 15 0x245.4-0x246 (0.4)
0x240| 10 | . | large_size_marker: 1 (valid) 0x246-0x246.4 (0.4)
0x240| 10 | . | exponent: 0 0x246.4-0x247 (0.4)
0x240| 1d | . | size_bigint: 29 0x247-0x248 (1)
| | | size: 29
0x240| 61 70 70 6c 65 74 76 73| appletvs| value: "appletvsimulator15.2.internal" 0x248-0x265 (29)
0x250|69 6d 75 6c 61 74 6f 72 31 35 2e 32 2e 69 6e 74|imulator15.2.int|
0x260|65 72 6e 61 6c |ernal |
| | | [4]{}: entry 0xf-0x26a.7 (604)
0x000| 05| .| key_index: 5 0xf-0xf.7 (1)
0x020| 1a | . | value_index: 26 0x24-0x24.7 (1)
| | | key{}: 0x6f-0x79.7 (11)
0x060| 5a| Z| type: "ascii_string" (5) (ASCII encoded string) 0x6f-0x6f.3 (0.4)
0x060| 5a| Z| size_bits: 10 0x6f.4-0x6f.7 (0.4)
| | | size: 10 0x70-NA (0)
0x070|44 54 53 44 4b 42 75 69 6c 64 |DTSDKBuild | value: "DTSDKBuild" 0x70-0x79.7 (10)
| | | value{}: 0x265-0x26a.7 (6)
0x260| 55 | U | type: "ascii_string" (5) (ASCII encoded string) 0x265-0x265.3 (0.4)
0x260| 55 | U | size_bits: 5 0x265.4-0x265.7 (0.4)
| | | size: 5 0x266-NA (0)
0x260| 31 39 4b 32 34 | 19K24 | value: "19K24" 0x266-0x26a.7 (5)
| | | [5]{}: entry 0x10-0x272.7 (611)
0x010|06 |. | key_index: 6 0x10-0x10.7 (1)
0x020| 1b | . | value_index: 27 0x25-0x25.7 (1)
| | | key{}: 0x7a-0x95.7 (28)
0x070| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x7a-0x7a.3 (0.4)
0x070| 5f | _ | size_bits: 15 0x7a.4-0x7a.7 (0.4)
0x070| 10 | . | large_size_marker: 1 (valid) 0x7b-0x7b.3 (0.4)
0x070| 10 | . | exponent: 0 0x7b.4-0x7b.7 (0.4)
0x070| 19 | . | size_bigint: 25 0x7c-0x7c.7 (1)
| | | size: 25 0x7d-NA (0)
0x070| 43 46 42| CFB| value: "CFBundleDevelopmentRegion" 0x7d-0x95.7 (25)
| | | [4]{}: entry 0xf-0x26b (604)
0x000| 05| .| key_index: 5 0xf-0x10 (1)
0x020| 1a | . | value_index: 26 0x24-0x25 (1)
| | | key{}: 0x6f-0x7a (11)
0x060| 5a| Z| type: "ascii_string" (5) (ASCII encoded string) 0x6f-0x6f.4 (0.4)
0x060| 5a| Z| size_bits: 10 0x6f.4-0x70 (0.4)
| | | size: 10
0x070|44 54 53 44 4b 42 75 69 6c 64 |DTSDKBuild | value: "DTSDKBuild" 0x70-0x7a (10)
| | | value{}: 0x265-0x26b (6)
0x260| 55 | U | type: "ascii_string" (5) (ASCII encoded string) 0x265-0x265.4 (0.4)
0x260| 55 | U | size_bits: 5 0x265.4-0x266 (0.4)
| | | size: 5
0x260| 31 39 4b 32 34 | 19K24 | value: "19K24" 0x266-0x26b (5)
| | | [5]{}: entry 0x10-0x273 (611)
0x010|06 |. | key_index: 6 0x10-0x11 (1)
0x020| 1b | . | value_index: 27 0x25-0x26 (1)
| | | key{}: 0x7a-0x96 (28)
0x070| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x7a-0x7a.4 (0.4)
0x070| 5f | _ | size_bits: 15 0x7a.4-0x7b (0.4)
0x070| 10 | . | large_size_marker: 1 (valid) 0x7b-0x7b.4 (0.4)
0x070| 10 | . | exponent: 0 0x7b.4-0x7c (0.4)
0x070| 19 | . | size_bigint: 25 0x7c-0x7d (1)
| | | size: 25
0x070| 43 46 42| CFB| value: "CFBundleDevelopmentRegion" 0x7d-0x96 (25)
0x080|75 6e 64 6c 65 44 65 76 65 6c 6f 70 6d 65 6e 74|undleDevelopment|
0x090|52 65 67 69 6f 6e |Region |
| | | value{}: 0x26b-0x272.7 (8)
0x260| 57 | W | type: "ascii_string" (5) (ASCII encoded string) 0x26b-0x26b.3 (0.4)
0x260| 57 | W | size_bits: 7 0x26b.4-0x26b.7 (0.4)
| | | size: 7 0x26c-NA (0)
0x260| 45 6e 67 6c| Engl| value: "English" 0x26c-0x272.7 (7)
| | | value{}: 0x26b-0x273 (8)
0x260| 57 | W | type: "ascii_string" (5) (ASCII encoded string) 0x26b-0x26b.4 (0.4)
0x260| 57 | W | size_bits: 7 0x26b.4-0x26c (0.4)
| | | size: 7
0x260| 45 6e 67 6c| Engl| value: "English" 0x26c-0x273 (7)
0x270|69 73 68 |ish |
| | | [6]{}: entry 0x11-0x278.7 (616)
0x010| 07 | . | key_index: 7 0x11-0x11.7 (1)
0x020| 1c | . | value_index: 28 0x26-0x26.7 (1)
| | | key{}: 0x96-0xa7.7 (18)
0x090| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x96-0x96.3 (0.4)
0x090| 5f | _ | size_bits: 15 0x96.4-0x96.7 (0.4)
0x090| 10 | . | large_size_marker: 1 (valid) 0x97-0x97.3 (0.4)
0x090| 10 | . | exponent: 0 0x97.4-0x97.7 (0.4)
0x090| 0f | . | size_bigint: 15 0x98-0x98.7 (1)
| | | size: 15 0x99-NA (0)
0x090| 43 46 42 75 6e 64 6c| CFBundl| value: "CFBundleVersion" 0x99-0xa7.7 (15)
| | | [6]{}: entry 0x11-0x279 (616)
0x010| 07 | . | key_index: 7 0x11-0x12 (1)
0x020| 1c | . | value_index: 28 0x26-0x27 (1)
| | | key{}: 0x96-0xa8 (18)
0x090| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x96-0x96.4 (0.4)
0x090| 5f | _ | size_bits: 15 0x96.4-0x97 (0.4)
0x090| 10 | . | large_size_marker: 1 (valid) 0x97-0x97.4 (0.4)
0x090| 10 | . | exponent: 0 0x97.4-0x98 (0.4)
0x090| 0f | . | size_bigint: 15 0x98-0x99 (1)
| | | size: 15
0x090| 43 46 42 75 6e 64 6c| CFBundl| value: "CFBundleVersion" 0x99-0xa8 (15)
0x0a0|65 56 65 72 73 69 6f 6e |eVersion |
| | | value{}: 0x273-0x278.7 (6)
0x270| 55 | U | type: "ascii_string" (5) (ASCII encoded string) 0x273-0x273.3 (0.4)
0x270| 55 | U | size_bits: 5 0x273.4-0x273.7 (0.4)
| | | size: 5 0x274-NA (0)
0x270| 37 38 33 2e 35 | 783.5 | value: "783.5" 0x274-0x278.7 (5)
| | | [7]{}: entry 0x12-0x282.7 (625)
0x010| 08 | . | key_index: 8 0x12-0x12.7 (1)
0x020| 1d | . | value_index: 29 0x27-0x27.7 (1)
| | | key{}: 0xa8-0xbd.7 (22)
0x0a0| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0xa8-0xa8.3 (0.4)
0x0a0| 5f | _ | size_bits: 15 0xa8.4-0xa8.7 (0.4)
0x0a0| 10 | . | large_size_marker: 1 (valid) 0xa9-0xa9.3 (0.4)
0x0a0| 10 | . | exponent: 0 0xa9.4-0xa9.7 (0.4)
0x0a0| 13 | . | size_bigint: 19 0xaa-0xaa.7 (1)
| | | size: 19 0xab-NA (0)
0x0a0| 42 75 69 6c 64| Build| value: "BuildMachineOSBuild" 0xab-0xbd.7 (19)
| | | value{}: 0x273-0x279 (6)
0x270| 55 | U | type: "ascii_string" (5) (ASCII encoded string) 0x273-0x273.4 (0.4)
0x270| 55 | U | size_bits: 5 0x273.4-0x274 (0.4)
| | | size: 5
0x270| 37 38 33 2e 35 | 783.5 | value: "783.5" 0x274-0x279 (5)
| | | [7]{}: entry 0x12-0x283 (625)
0x010| 08 | . | key_index: 8 0x12-0x13 (1)
0x020| 1d | . | value_index: 29 0x27-0x28 (1)
| | | key{}: 0xa8-0xbe (22)
0x0a0| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0xa8-0xa8.4 (0.4)
0x0a0| 5f | _ | size_bits: 15 0xa8.4-0xa9 (0.4)
0x0a0| 10 | . | large_size_marker: 1 (valid) 0xa9-0xa9.4 (0.4)
0x0a0| 10 | . | exponent: 0 0xa9.4-0xaa (0.4)
0x0a0| 13 | . | size_bigint: 19 0xaa-0xab (1)
| | | size: 19
0x0a0| 42 75 69 6c 64| Build| value: "BuildMachineOSBuild" 0xab-0xbe (19)
0x0b0|4d 61 63 68 69 6e 65 4f 53 42 75 69 6c 64 |MachineOSBuild |
| | | value{}: 0x279-0x282.7 (10)
0x270| 59 | Y | type: "ascii_string" (5) (ASCII encoded string) 0x279-0x279.3 (0.4)
0x270| 59 | Y | size_bits: 9 0x279.4-0x279.7 (0.4)
| | | size: 9 0x27a-NA (0)
0x270| 32 30 41 32 34 31| 20A241| value: "20A241108" 0x27a-0x282.7 (9)
| | | value{}: 0x279-0x283 (10)
0x270| 59 | Y | type: "ascii_string" (5) (ASCII encoded string) 0x279-0x279.4 (0.4)
0x270| 59 | Y | size_bits: 9 0x279.4-0x27a (0.4)
| | | size: 9
0x270| 32 30 41 32 34 31| 20A241| value: "20A241108" 0x27a-0x283 (9)
0x280|31 30 38 |108 |
| | | [8]{}: entry 0x13-0x295.7 (643)
0x010| 09 | . | key_index: 9 0x13-0x13.7 (1)
0x020| 1e | . | value_index: 30 0x28-0x28.7 (1)
| | | key{}: 0xbe-0xcc.7 (15)
0x0b0| 5e | ^ | type: "ascii_string" (5) (ASCII encoded string) 0xbe-0xbe.3 (0.4)
0x0b0| 5e | ^ | size_bits: 14 0xbe.4-0xbe.7 (0.4)
| | | size: 14 0xbf-NA (0)
0x0b0| 44| D| value: "DTPlatformName" 0xbf-0xcc.7 (14)
| | | [8]{}: entry 0x13-0x296 (643)
0x010| 09 | . | key_index: 9 0x13-0x14 (1)
0x020| 1e | . | value_index: 30 0x28-0x29 (1)
| | | key{}: 0xbe-0xcd (15)
0x0b0| 5e | ^ | type: "ascii_string" (5) (ASCII encoded string) 0xbe-0xbe.4 (0.4)
0x0b0| 5e | ^ | size_bits: 14 0xbe.4-0xbf (0.4)
| | | size: 14
0x0b0| 44| D| value: "DTPlatformName" 0xbf-0xcd (14)
0x0c0|54 50 6c 61 74 66 6f 72 6d 4e 61 6d 65 |TPlatformName |
| | | value{}: 0x283-0x295.7 (19)
0x280| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x283-0x283.3 (0.4)
0x280| 5f | _ | size_bits: 15 0x283.4-0x283.7 (0.4)
0x280| 10 | . | large_size_marker: 1 (valid) 0x284-0x284.3 (0.4)
0x280| 10 | . | exponent: 0 0x284.4-0x284.7 (0.4)
0x280| 10 | . | size_bigint: 16 0x285-0x285.7 (1)
| | | size: 16 0x286-NA (0)
0x280| 61 70 70 6c 65 74 76 73 69 6d| appletvsim| value: "appletvsimulator" 0x286-0x295.7 (16)
| | | value{}: 0x283-0x296 (19)
0x280| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x283-0x283.4 (0.4)
0x280| 5f | _ | size_bits: 15 0x283.4-0x284 (0.4)
0x280| 10 | . | large_size_marker: 1 (valid) 0x284-0x284.4 (0.4)
0x280| 10 | . | exponent: 0 0x284.4-0x285 (0.4)
0x280| 10 | . | size_bigint: 16 0x285-0x286 (1)
| | | size: 16
0x280| 61 70 70 6c 65 74 76 73 69 6d| appletvsim| value: "appletvsimulator" 0x286-0x296 (16)
0x290|75 6c 61 74 6f 72 |ulator |
| | | [9]{}: entry 0x14-0x29a.7 (647)
0x010| 0a | . | key_index: 10 0x14-0x14.7 (1)
0x020| 1f | . | value_index: 31 0x29-0x29.7 (1)
| | | key{}: 0xcd-0xe2.7 (22)
0x0c0| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0xcd-0xcd.3 (0.4)
0x0c0| 5f | _ | size_bits: 15 0xcd.4-0xcd.7 (0.4)
0x0c0| 10 | . | large_size_marker: 1 (valid) 0xce-0xce.3 (0.4)
0x0c0| 10 | . | exponent: 0 0xce.4-0xce.7 (0.4)
0x0c0| 13| .| size_bigint: 19 0xcf-0xcf.7 (1)
| | | size: 19 0xd0-NA (0)
0x0d0|43 46 42 75 6e 64 6c 65 50 61 63 6b 61 67 65 54|CFBundlePackageT| value: "CFBundlePackageType" 0xd0-0xe2.7 (19)
| | | [9]{}: entry 0x14-0x29b (647)
0x010| 0a | . | key_index: 10 0x14-0x15 (1)
0x020| 1f | . | value_index: 31 0x29-0x2a (1)
| | | key{}: 0xcd-0xe3 (22)
0x0c0| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0xcd-0xcd.4 (0.4)
0x0c0| 5f | _ | size_bits: 15 0xcd.4-0xce (0.4)
0x0c0| 10 | . | large_size_marker: 1 (valid) 0xce-0xce.4 (0.4)
0x0c0| 10 | . | exponent: 0 0xce.4-0xcf (0.4)
0x0c0| 13| .| size_bigint: 19 0xcf-0xd0 (1)
| | | size: 19
0x0d0|43 46 42 75 6e 64 6c 65 50 61 63 6b 61 67 65 54|CFBundlePackageT| value: "CFBundlePackageType" 0xd0-0xe3 (19)
0x0e0|79 70 65 |ype |
| | | value{}: 0x296-0x29a.7 (5)
0x290| 54 | T | type: "ascii_string" (5) (ASCII encoded string) 0x296-0x296.3 (0.4)
0x290| 54 | T | size_bits: 4 0x296.4-0x296.7 (0.4)
| | | size: 4 0x297-NA (0)
0x290| 46 4d 57 4b | FMWK | value: "FMWK" 0x297-0x29a.7 (4)
| | | [10]{}: entry 0x15-0x278.7 (612)
0x010| 0b | . | key_index: 11 0x15-0x15.7 (1)
0x020| 1c | . | value_index: 28 0x2a-0x2a.7 (1)
| | | key{}: 0xe3-0xff.7 (29)
0x0e0| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0xe3-0xe3.3 (0.4)
0x0e0| 5f | _ | size_bits: 15 0xe3.4-0xe3.7 (0.4)
0x0e0| 10 | . | large_size_marker: 1 (valid) 0xe4-0xe4.3 (0.4)
0x0e0| 10 | . | exponent: 0 0xe4.4-0xe4.7 (0.4)
0x0e0| 1a | . | size_bigint: 26 0xe5-0xe5.7 (1)
| | | size: 26 0xe6-NA (0)
0x0e0| 43 46 42 75 6e 64 6c 65 53 68| CFBundleSh| value: "CFBundleShortVersionString" 0xe6-0xff.7 (26)
| | | value{}: 0x296-0x29b (5)
0x290| 54 | T | type: "ascii_string" (5) (ASCII encoded string) 0x296-0x296.4 (0.4)
0x290| 54 | T | size_bits: 4 0x296.4-0x297 (0.4)
| | | size: 4
0x290| 46 4d 57 4b | FMWK | value: "FMWK" 0x297-0x29b (4)
| | | [10]{}: entry 0x15-0x279 (612)
0x010| 0b | . | key_index: 11 0x15-0x16 (1)
0x020| 1c | . | value_index: 28 0x2a-0x2b (1)
| | | key{}: 0xe3-0x100 (29)
0x0e0| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0xe3-0xe3.4 (0.4)
0x0e0| 5f | _ | size_bits: 15 0xe3.4-0xe4 (0.4)
0x0e0| 10 | . | large_size_marker: 1 (valid) 0xe4-0xe4.4 (0.4)
0x0e0| 10 | . | exponent: 0 0xe4.4-0xe5 (0.4)
0x0e0| 1a | . | size_bigint: 26 0xe5-0xe6 (1)
| | | size: 26
0x0e0| 43 46 42 75 6e 64 6c 65 53 68| CFBundleSh| value: "CFBundleShortVersionString" 0xe6-0x100 (26)
0x0f0|6f 72 74 56 65 72 73 69 6f 6e 53 74 72 69 6e 67|ortVersionString|
| | | value{}: 0x273-0x278.7 (6)
0x270| 55 | U | type: "ascii_string" (5) (ASCII encoded string) 0x273-0x273.3 (0.4)
0x270| 55 | U | size_bits: 5 0x273.4-0x273.7 (0.4)
| | | size: 5 0x274-NA (0)
0x270| 37 38 33 2e 35 | 783.5 | value: "783.5" 0x274-0x278.7 (5)
| | | [11]{}: entry 0x16-0x2af.7 (666)
0x010| 0c | . | key_index: 12 0x16-0x16.7 (1)
0x020| 20 | | value_index: 32 0x2b-0x2b.7 (1)
| | | key{}: 0x100-0x11c.7 (29)
0x100|5f |_ | type: "ascii_string" (5) (ASCII encoded string) 0x100-0x100.3 (0.4)
0x100|5f |_ | size_bits: 15 0x100.4-0x100.7 (0.4)
0x100| 10 | . | large_size_marker: 1 (valid) 0x101-0x101.3 (0.4)
0x100| 10 | . | exponent: 0 0x101.4-0x101.7 (0.4)
0x100| 1a | . | size_bigint: 26 0x102-0x102.7 (1)
| | | size: 26 0x103-NA (0)
0x100| 43 46 42 75 6e 64 6c 65 53 75 70 70 6f| CFBundleSuppo| value: "CFBundleSupportedPlatforms" 0x103-0x11c.7 (26)
| | | value{}: 0x273-0x279 (6)
0x270| 55 | U | type: "ascii_string" (5) (ASCII encoded string) 0x273-0x273.4 (0.4)
0x270| 55 | U | size_bits: 5 0x273.4-0x274 (0.4)
| | | size: 5
0x270| 37 38 33 2e 35 | 783.5 | value: "783.5" 0x274-0x279 (5)
| | | [11]{}: entry 0x16-0x2b0 (666)
0x010| 0c | . | key_index: 12 0x16-0x17 (1)
0x020| 20 | | value_index: 32 0x2b-0x2c (1)
| | | key{}: 0x100-0x11d (29)
0x100|5f |_ | type: "ascii_string" (5) (ASCII encoded string) 0x100-0x100.4 (0.4)
0x100|5f |_ | size_bits: 15 0x100.4-0x101 (0.4)
0x100| 10 | . | large_size_marker: 1 (valid) 0x101-0x101.4 (0.4)
0x100| 10 | . | exponent: 0 0x101.4-0x102 (0.4)
0x100| 1a | . | size_bigint: 26 0x102-0x103 (1)
| | | size: 26
0x100| 43 46 42 75 6e 64 6c 65 53 75 70 70 6f| CFBundleSuppo| value: "CFBundleSupportedPlatforms" 0x103-0x11d (26)
0x110|72 74 65 64 50 6c 61 74 66 6f 72 6d 73 |rtedPlatforms |
| | | value{}: 0x29b-0x2af.7 (21)
0x290| a1 | . | type: "array" (10) (Array) 0x29b-0x29b.3 (0.4)
0x290| a1 | . | size_bits: 1 0x29b.4-0x29b.7 (0.4)
| | | size: 1 0x29c-NA (0)
| | | entries[0:1]: 0x29c-0x2af.7 (20)
| | | [0]{}: entry 0x29c-0x2af.7 (20)
0x290| 21 | ! | object_index: 33 0x29c-0x29c.7 (1)
0x290| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x29d-0x29d.3 (0.4)
0x290| 5f | _ | size_bits: 15 0x29d.4-0x29d.7 (0.4)
0x290| 10 | . | large_size_marker: 1 (valid) 0x29e-0x29e.3 (0.4)
0x290| 10 | . | exponent: 0 0x29e.4-0x29e.7 (0.4)
0x290| 10| .| size_bigint: 16 0x29f-0x29f.7 (1)
| | | size: 16 0x2a0-NA (0)
0x2a0|41 70 70 6c 65 54 56 53 69 6d 75 6c 61 74 6f 72|AppleTVSimulator| value: "AppleTVSimulator" 0x2a0-0x2af.7 (16)
| | | [12]{}: entry 0x17-0x2b3.7 (669)
0x010| 0d | . | key_index: 13 0x17-0x17.7 (1)
0x020| 22 | " | value_index: 34 0x2c-0x2c.7 (1)
| | | key{}: 0x11d-0x13c.7 (32)
0x110| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x11d-0x11d.3 (0.4)
0x110| 5f | _ | size_bits: 15 0x11d.4-0x11d.7 (0.4)
0x110| 10 | . | large_size_marker: 1 (valid) 0x11e-0x11e.3 (0.4)
0x110| 10 | . | exponent: 0 0x11e.4-0x11e.7 (0.4)
0x110| 1d| .| size_bigint: 29 0x11f-0x11f.7 (1)
| | | size: 29 0x120-NA (0)
0x120|43 46 42 75 6e 64 6c 65 49 6e 66 6f 44 69 63 74|CFBundleInfoDict| value: "CFBundleInfoDictionaryVersion" 0x120-0x13c.7 (29)
| | | value{}: 0x29b-0x2b0 (21)
0x290| a1 | . | type: "array" (10) (Array) 0x29b-0x29b.4 (0.4)
0x290| a1 | . | size_bits: 1 0x29b.4-0x29c (0.4)
| | | size: 1
| | | entries[0:1]: 0x29c-0x2b0 (20)
| | | [0]{}: entry 0x29c-0x2b0 (20)
0x290| 21 | ! | object_index: 33 0x29c-0x29d (1)
0x290| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x29d-0x29d.4 (0.4)
0x290| 5f | _ | size_bits: 15 0x29d.4-0x29e (0.4)
0x290| 10 | . | large_size_marker: 1 (valid) 0x29e-0x29e.4 (0.4)
0x290| 10 | . | exponent: 0 0x29e.4-0x29f (0.4)
0x290| 10| .| size_bigint: 16 0x29f-0x2a0 (1)
| | | size: 16
0x2a0|41 70 70 6c 65 54 56 53 69 6d 75 6c 61 74 6f 72|AppleTVSimulator| value: "AppleTVSimulator" 0x2a0-0x2b0 (16)
| | | [12]{}: entry 0x17-0x2b4 (669)
0x010| 0d | . | key_index: 13 0x17-0x18 (1)
0x020| 22 | " | value_index: 34 0x2c-0x2d (1)
| | | key{}: 0x11d-0x13d (32)
0x110| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x11d-0x11d.4 (0.4)
0x110| 5f | _ | size_bits: 15 0x11d.4-0x11e (0.4)
0x110| 10 | . | large_size_marker: 1 (valid) 0x11e-0x11e.4 (0.4)
0x110| 10 | . | exponent: 0 0x11e.4-0x11f (0.4)
0x110| 1d| .| size_bigint: 29 0x11f-0x120 (1)
| | | size: 29
0x120|43 46 42 75 6e 64 6c 65 49 6e 66 6f 44 69 63 74|CFBundleInfoDict| value: "CFBundleInfoDictionaryVersion" 0x120-0x13d (29)
0x130|69 6f 6e 61 72 79 56 65 72 73 69 6f 6e |ionaryVersion |
| | | value{}: 0x2b0-0x2b3.7 (4)
0x2b0|53 |S | type: "ascii_string" (5) (ASCII encoded string) 0x2b0-0x2b0.3 (0.4)
0x2b0|53 |S | size_bits: 3 0x2b0.4-0x2b0.7 (0.4)
| | | size: 3 0x2b1-NA (0)
0x2b0| 36 2e 30 | 6.0 | value: "6.0" 0x2b1-0x2b3.7 (3)
| | | [13]{}: entry 0x18-0x1dc.7 (453)
0x010| 0e | . | key_index: 14 0x18-0x18.7 (1)
0x020| 16 | . | value_index: 22 0x2d-0x2d.7 (1)
| | | key{}: 0x13d-0x151.7 (21)
0x130| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x13d-0x13d.3 (0.4)
0x130| 5f | _ | size_bits: 15 0x13d.4-0x13d.7 (0.4)
0x130| 10 | . | large_size_marker: 1 (valid) 0x13e-0x13e.3 (0.4)
0x130| 10 | . | exponent: 0 0x13e.4-0x13e.7 (0.4)
0x130| 12| .| size_bigint: 18 0x13f-0x13f.7 (1)
| | | size: 18 0x140-NA (0)
0x140|43 46 42 75 6e 64 6c 65 45 78 65 63 75 74 61 62|CFBundleExecutab| value: "CFBundleExecutable" 0x140-0x151.7 (18)
| | | value{}: 0x2b0-0x2b4 (4)
0x2b0|53 |S | type: "ascii_string" (5) (ASCII encoded string) 0x2b0-0x2b0.4 (0.4)
0x2b0|53 |S | size_bits: 3 0x2b0.4-0x2b1 (0.4)
| | | size: 3
0x2b0| 36 2e 30 | 6.0 | value: "6.0" 0x2b1-0x2b4 (3)
| | | [13]{}: entry 0x18-0x1dd (453)
0x010| 0e | . | key_index: 14 0x18-0x19 (1)
0x020| 16 | . | value_index: 22 0x2d-0x2e (1)
| | | key{}: 0x13d-0x152 (21)
0x130| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x13d-0x13d.4 (0.4)
0x130| 5f | _ | size_bits: 15 0x13d.4-0x13e (0.4)
0x130| 10 | . | large_size_marker: 1 (valid) 0x13e-0x13e.4 (0.4)
0x130| 10 | . | exponent: 0 0x13e.4-0x13f (0.4)
0x130| 12| .| size_bigint: 18 0x13f-0x140 (1)
| | | size: 18
0x140|43 46 42 75 6e 64 6c 65 45 78 65 63 75 74 61 62|CFBundleExecutab| value: "CFBundleExecutable" 0x140-0x152 (18)
0x150|6c 65 |le |
| | | value{}: 0x1c7-0x1dc.7 (22)
0x1c0| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x1c7-0x1c7.3 (0.4)
0x1c0| 5f | _ | size_bits: 15 0x1c7.4-0x1c7.7 (0.4)
0x1c0| 10 | . | large_size_marker: 1 (valid) 0x1c8-0x1c8.3 (0.4)
0x1c0| 10 | . | exponent: 0 0x1c8.4-0x1c8.7 (0.4)
0x1c0| 13 | . | size_bigint: 19 0x1c9-0x1c9.7 (1)
| | | size: 19 0x1ca-NA (0)
0x1c0| 43 6f 72 65 44 65| CoreDe| value: "CoreDeviceUtilities" 0x1ca-0x1dc.7 (19)
| | | value{}: 0x1c7-0x1dd (22)
0x1c0| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x1c7-0x1c7.4 (0.4)
0x1c0| 5f | _ | size_bits: 15 0x1c7.4-0x1c8 (0.4)
0x1c0| 10 | . | large_size_marker: 1 (valid) 0x1c8-0x1c8.4 (0.4)
0x1c0| 10 | . | exponent: 0 0x1c8.4-0x1c9 (0.4)
0x1c0| 13 | . | size_bigint: 19 0x1c9-0x1ca (1)
| | | size: 19
0x1c0| 43 6f 72 65 44 65| CoreDe| value: "CoreDeviceUtilities" 0x1ca-0x1dd (19)
0x1d0|76 69 63 65 55 74 69 6c 69 74 69 65 73 |viceUtilities |
| | | [14]{}: entry 0x19-0x2d8.7 (704)
0x010| 0f | . | key_index: 15 0x19-0x19.7 (1)
0x020| 23 | # | value_index: 35 0x2e-0x2e.7 (1)
| | | key{}: 0x152-0x15c.7 (11)
0x150| 5a | Z | type: "ascii_string" (5) (ASCII encoded string) 0x152-0x152.3 (0.4)
0x150| 5a | Z | size_bits: 10 0x152.4-0x152.7 (0.4)
| | | size: 10 0x153-NA (0)
0x150| 44 54 43 6f 6d 70 69 6c 65 72 | DTCompiler | value: "DTCompiler" 0x153-0x15c.7 (10)
| | | value{}: 0x2b4-0x2d8.7 (37)
0x2b0| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x2b4-0x2b4.3 (0.4)
0x2b0| 5f | _ | size_bits: 15 0x2b4.4-0x2b4.7 (0.4)
0x2b0| 10 | . | large_size_marker: 1 (valid) 0x2b5-0x2b5.3 (0.4)
0x2b0| 10 | . | exponent: 0 0x2b5.4-0x2b5.7 (0.4)
0x2b0| 22 | " | size_bigint: 34 0x2b6-0x2b6.7 (1)
| | | size: 34 0x2b7-NA (0)
0x2b0| 63 6f 6d 2e 61 70 70 6c 65| com.apple| value: "com.apple.compilers.llvm.clang.1_0" 0x2b7-0x2d8.7 (34)
| | | [14]{}: entry 0x19-0x2d9 (704)
0x010| 0f | . | key_index: 15 0x19-0x1a (1)
0x020| 23 | # | value_index: 35 0x2e-0x2f (1)
| | | key{}: 0x152-0x15d (11)
0x150| 5a | Z | type: "ascii_string" (5) (ASCII encoded string) 0x152-0x152.4 (0.4)
0x150| 5a | Z | size_bits: 10 0x152.4-0x153 (0.4)
| | | size: 10
0x150| 44 54 43 6f 6d 70 69 6c 65 72 | DTCompiler | value: "DTCompiler" 0x153-0x15d (10)
| | | value{}: 0x2b4-0x2d9 (37)
0x2b0| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x2b4-0x2b4.4 (0.4)
0x2b0| 5f | _ | size_bits: 15 0x2b4.4-0x2b5 (0.4)
0x2b0| 10 | . | large_size_marker: 1 (valid) 0x2b5-0x2b5.4 (0.4)
0x2b0| 10 | . | exponent: 0 0x2b5.4-0x2b6 (0.4)
0x2b0| 22 | " | size_bigint: 34 0x2b6-0x2b7 (1)
| | | size: 34
0x2b0| 63 6f 6d 2e 61 70 70 6c 65| com.apple| value: "com.apple.compilers.llvm.clang.1_0" 0x2b7-0x2d9 (34)
0x2c0|2e 63 6f 6d 70 69 6c 65 72 73 2e 6c 6c 76 6d 2e|.compilers.llvm.|
0x2d0|63 6c 61 6e 67 2e 31 5f 30 |clang.1_0 |
| | | [15]{}: entry 0x1a-0x2dd.7 (708)
0x010| 10 | . | key_index: 16 0x1a-0x1a.7 (1)
0x020| 24| $| value_index: 36 0x2f-0x2f.7 (1)
| | | key{}: 0x15d-0x16f.7 (19)
0x150| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x15d-0x15d.3 (0.4)
0x150| 5f | _ | size_bits: 15 0x15d.4-0x15d.7 (0.4)
0x150| 10 | . | large_size_marker: 1 (valid) 0x15e-0x15e.3 (0.4)
0x150| 10 | . | exponent: 0 0x15e.4-0x15e.7 (0.4)
0x150| 10| .| size_bigint: 16 0x15f-0x15f.7 (1)
| | | size: 16 0x160-NA (0)
0x160|4d 69 6e 69 6d 75 6d 4f 53 56 65 72 73 69 6f 6e|MinimumOSVersion| value: "MinimumOSVersion" 0x160-0x16f.7 (16)
| | | value{}: 0x2d9-0x2dd.7 (5)
0x2d0| 54 | T | type: "ascii_string" (5) (ASCII encoded string) 0x2d9-0x2d9.3 (0.4)
0x2d0| 54 | T | size_bits: 4 0x2d9.4-0x2d9.7 (0.4)
| | | size: 4 0x2da-NA (0)
0x2d0| 31 30 2e 32 | 10.2 | value: "10.2" 0x2da-0x2dd.7 (4)
| | | [16]{}: entry 0x1b-0x30b.7 (753)
0x010| 11 | . | key_index: 17 0x1b-0x1b.7 (1)
0x030|25 |% | value_index: 37 0x30-0x30.7 (1)
| | | key{}: 0x170-0x184.7 (21)
0x170|5f |_ | type: "ascii_string" (5) (ASCII encoded string) 0x170-0x170.3 (0.4)
0x170|5f |_ | size_bits: 15 0x170.4-0x170.7 (0.4)
0x170| 10 | . | large_size_marker: 1 (valid) 0x171-0x171.3 (0.4)
0x170| 10 | . | exponent: 0 0x171.4-0x171.7 (0.4)
0x170| 12 | . | size_bigint: 18 0x172-0x172.7 (1)
| | | size: 18 0x173-NA (0)
0x170| 43 46 42 75 6e 64 6c 65 49 64 65 6e 74| CFBundleIdent| value: "CFBundleIdentifier" 0x173-0x184.7 (18)
| | | [15]{}: entry 0x1a-0x2de (708)
0x010| 10 | . | key_index: 16 0x1a-0x1b (1)
0x020| 24| $| value_index: 36 0x2f-0x30 (1)
| | | key{}: 0x15d-0x170 (19)
0x150| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x15d-0x15d.4 (0.4)
0x150| 5f | _ | size_bits: 15 0x15d.4-0x15e (0.4)
0x150| 10 | . | large_size_marker: 1 (valid) 0x15e-0x15e.4 (0.4)
0x150| 10 | . | exponent: 0 0x15e.4-0x15f (0.4)
0x150| 10| .| size_bigint: 16 0x15f-0x160 (1)
| | | size: 16
0x160|4d 69 6e 69 6d 75 6d 4f 53 56 65 72 73 69 6f 6e|MinimumOSVersion| value: "MinimumOSVersion" 0x160-0x170 (16)
| | | value{}: 0x2d9-0x2de (5)
0x2d0| 54 | T | type: "ascii_string" (5) (ASCII encoded string) 0x2d9-0x2d9.4 (0.4)
0x2d0| 54 | T | size_bits: 4 0x2d9.4-0x2da (0.4)
| | | size: 4
0x2d0| 31 30 2e 32 | 10.2 | value: "10.2" 0x2da-0x2de (4)
| | | [16]{}: entry 0x1b-0x30c (753)
0x010| 11 | . | key_index: 17 0x1b-0x1c (1)
0x030|25 |% | value_index: 37 0x30-0x31 (1)
| | | key{}: 0x170-0x185 (21)
0x170|5f |_ | type: "ascii_string" (5) (ASCII encoded string) 0x170-0x170.4 (0.4)
0x170|5f |_ | size_bits: 15 0x170.4-0x171 (0.4)
0x170| 10 | . | large_size_marker: 1 (valid) 0x171-0x171.4 (0.4)
0x170| 10 | . | exponent: 0 0x171.4-0x172 (0.4)
0x170| 12 | . | size_bigint: 18 0x172-0x173 (1)
| | | size: 18
0x170| 43 46 42 75 6e 64 6c 65 49 64 65 6e 74| CFBundleIdent| value: "CFBundleIdentifier" 0x173-0x185 (18)
0x180|69 66 69 65 72 |ifier |
| | | value{}: 0x2de-0x30b.7 (46)
0x2d0| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x2de-0x2de.3 (0.4)
0x2d0| 5f | _ | size_bits: 15 0x2de.4-0x2de.7 (0.4)
0x2d0| 10| .| large_size_marker: 1 (valid) 0x2df-0x2df.3 (0.4)
0x2d0| 10| .| exponent: 0 0x2df.4-0x2df.7 (0.4)
0x2e0|2b |+ | size_bigint: 43 0x2e0-0x2e0.7 (1)
| | | size: 43 0x2e1-NA (0)
0x2e0| 63 6f 6d 2e 61 70 70 6c 65 2e 43 6f 72 65 53| com.apple.CoreS| value: "com.apple.CoreSimulator.CoreDeviceUtilities" 0x2e1-0x30b.7 (43)
| | | value{}: 0x2de-0x30c (46)
0x2d0| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x2de-0x2de.4 (0.4)
0x2d0| 5f | _ | size_bits: 15 0x2de.4-0x2df (0.4)
0x2d0| 10| .| large_size_marker: 1 (valid) 0x2df-0x2df.4 (0.4)
0x2d0| 10| .| exponent: 0 0x2df.4-0x2e0 (0.4)
0x2e0|2b |+ | size_bigint: 43 0x2e0-0x2e1 (1)
| | | size: 43
0x2e0| 63 6f 6d 2e 61 70 70 6c 65 2e 43 6f 72 65 53| com.apple.CoreS| value: "com.apple.CoreSimulator.CoreDeviceUtilities" 0x2e1-0x30c (43)
0x2f0|69 6d 75 6c 61 74 6f 72 2e 43 6f 72 65 44 65 76|imulator.CoreDev|
0x300|69 63 65 55 74 69 6c 69 74 69 65 73 |iceUtilities |
| | | [17]{}: entry 0x1c-0x30f.7 (756)
0x010| 12 | . | key_index: 18 0x1c-0x1c.7 (1)
0x030| 26 | & | value_index: 38 0x31-0x31.7 (1)
| | | key{}: 0x185-0x193.7 (15)
0x180| 5e | ^ | type: "ascii_string" (5) (ASCII encoded string) 0x185-0x185.3 (0.4)
0x180| 5e | ^ | size_bits: 14 0x185.4-0x185.7 (0.4)
| | | size: 14 0x186-NA (0)
0x180| 55 49 44 65 76 69 63 65 46 61| UIDeviceFa| value: "UIDeviceFamily" 0x186-0x193.7 (14)
| | | [17]{}: entry 0x1c-0x310 (756)
0x010| 12 | . | key_index: 18 0x1c-0x1d (1)
0x030| 26 | & | value_index: 38 0x31-0x32 (1)
| | | key{}: 0x185-0x194 (15)
0x180| 5e | ^ | type: "ascii_string" (5) (ASCII encoded string) 0x185-0x185.4 (0.4)
0x180| 5e | ^ | size_bits: 14 0x185.4-0x186 (0.4)
| | | size: 14
0x180| 55 49 44 65 76 69 63 65 46 61| UIDeviceFa| value: "UIDeviceFamily" 0x186-0x194 (14)
0x190|6d 69 6c 79 |mily |
| | | value{}: 0x30c-0x30f.7 (4)
0x300| a1 | . | type: "array" (10) (Array) 0x30c-0x30c.3 (0.4)
0x300| a1 | . | size_bits: 1 0x30c.4-0x30c.7 (0.4)
| | | size: 1 0x30d-NA (0)
| | | entries[0:1]: 0x30d-0x30f.7 (3)
| | | [0]{}: entry 0x30d-0x30f.7 (3)
0x300| 27 | ' | object_index: 39 0x30d-0x30d.7 (1)
0x300| 10 | . | type: "int" (1) (Integer) 0x30e-0x30e.3 (0.4)
0x300| 10 | . | size: 1 0x30e.4-0x30e.7 (0.4)
0x300| 03| .| value: 3 0x30f-0x30f.7 (1)
| | | [18]{}: entry 0x1d-0x314.7 (760)
0x010| 13 | . | key_index: 19 0x1d-0x1d.7 (1)
0x030| 28 | ( | value_index: 40 0x32-0x32.7 (1)
| | | key{}: 0x194-0x1a7.7 (20)
0x190| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x194-0x194.3 (0.4)
0x190| 5f | _ | size_bits: 15 0x194.4-0x194.7 (0.4)
0x190| 10 | . | large_size_marker: 1 (valid) 0x195-0x195.3 (0.4)
0x190| 10 | . | exponent: 0 0x195.4-0x195.7 (0.4)
0x190| 11 | . | size_bigint: 17 0x196-0x196.7 (1)
| | | size: 17 0x197-NA (0)
0x190| 44 54 50 6c 61 74 66 6f 72| DTPlatfor| value: "DTPlatformVersion" 0x197-0x1a7.7 (17)
| | | value{}: 0x30c-0x310 (4)
0x300| a1 | . | type: "array" (10) (Array) 0x30c-0x30c.4 (0.4)
0x300| a1 | . | size_bits: 1 0x30c.4-0x30d (0.4)
| | | size: 1
| | | entries[0:1]: 0x30d-0x310 (3)
| | | [0]{}: entry 0x30d-0x310 (3)
0x300| 27 | ' | object_index: 39 0x30d-0x30e (1)
0x300| 10 | . | type: "int" (1) (Integer) 0x30e-0x30e.4 (0.4)
0x300| 10 | . | size: 1 0x30e.4-0x30f (0.4)
0x300| 03| .| value: 3 0x30f-0x310 (1)
| | | [18]{}: entry 0x1d-0x315 (760)
0x010| 13 | . | key_index: 19 0x1d-0x1e (1)
0x030| 28 | ( | value_index: 40 0x32-0x33 (1)
| | | key{}: 0x194-0x1a8 (20)
0x190| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x194-0x194.4 (0.4)
0x190| 5f | _ | size_bits: 15 0x194.4-0x195 (0.4)
0x190| 10 | . | large_size_marker: 1 (valid) 0x195-0x195.4 (0.4)
0x190| 10 | . | exponent: 0 0x195.4-0x196 (0.4)
0x190| 11 | . | size_bigint: 17 0x196-0x197 (1)
| | | size: 17
0x190| 44 54 50 6c 61 74 66 6f 72| DTPlatfor| value: "DTPlatformVersion" 0x197-0x1a8 (17)
0x1a0|6d 56 65 72 73 69 6f 6e |mVersion |
| | | value{}: 0x310-0x314.7 (5)
0x310|54 |T | type: "ascii_string" (5) (ASCII encoded string) 0x310-0x310.3 (0.4)
0x310|54 |T | size_bits: 4 0x310.4-0x310.7 (0.4)
| | | size: 4 0x311-NA (0)
0x310| 31 35 2e 32 | 15.2 | value: "15.2" 0x311-0x314.7 (4)
| | | [19]{}: entry 0x1e-0x31a.7 (765)
0x010| 14 | . | key_index: 20 0x1e-0x1e.7 (1)
0x030| 29 | ) | value_index: 41 0x33-0x33.7 (1)
| | | key{}: 0x1a8-0x1b4.7 (13)
0x1a0| 5c | \ | type: "ascii_string" (5) (ASCII encoded string) 0x1a8-0x1a8.3 (0.4)
0x1a0| 5c | \ | size_bits: 12 0x1a8.4-0x1a8.7 (0.4)
| | | size: 12 0x1a9-NA (0)
0x1a0| 44 54 58 63 6f 64 65| DTXcode| value: "DTXcodeBuild" 0x1a9-0x1b4.7 (12)
| | | value{}: 0x310-0x315 (5)
0x310|54 |T | type: "ascii_string" (5) (ASCII encoded string) 0x310-0x310.4 (0.4)
0x310|54 |T | size_bits: 4 0x310.4-0x311 (0.4)
| | | size: 4
0x310| 31 35 2e 32 | 15.2 | value: "15.2" 0x311-0x315 (4)
| | | [19]{}: entry 0x1e-0x31b (765)
0x010| 14 | . | key_index: 20 0x1e-0x1f (1)
0x030| 29 | ) | value_index: 41 0x33-0x34 (1)
| | | key{}: 0x1a8-0x1b5 (13)
0x1a0| 5c | \ | type: "ascii_string" (5) (ASCII encoded string) 0x1a8-0x1a8.4 (0.4)
0x1a0| 5c | \ | size_bits: 12 0x1a8.4-0x1a9 (0.4)
| | | size: 12
0x1a0| 44 54 58 63 6f 64 65| DTXcode| value: "DTXcodeBuild" 0x1a9-0x1b5 (12)
0x1b0|42 75 69 6c 64 |Build |
| | | value{}: 0x315-0x31a.7 (6)
0x310| 55 | U | type: "ascii_string" (5) (ASCII encoded string) 0x315-0x315.3 (0.4)
0x310| 55 | U | size_bits: 5 0x315.4-0x315.7 (0.4)
| | | size: 5 0x316-NA (0)
0x310| 31 33 43 37 31 | 13C71 | value: "13C71" 0x316-0x31a.7 (5)
| | | [20]{}: entry 0x1f-0x26a.7 (588)
0x010| 15| .| key_index: 21 0x1f-0x1f.7 (1)
0x030| 1a | . | value_index: 26 0x34-0x34.7 (1)
| | | key{}: 0x1b5-0x1c6.7 (18)
0x1b0| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x1b5-0x1b5.3 (0.4)
0x1b0| 5f | _ | size_bits: 15 0x1b5.4-0x1b5.7 (0.4)
0x1b0| 10 | . | large_size_marker: 1 (valid) 0x1b6-0x1b6.3 (0.4)
0x1b0| 10 | . | exponent: 0 0x1b6.4-0x1b6.7 (0.4)
0x1b0| 0f | . | size_bigint: 15 0x1b7-0x1b7.7 (1)
| | | size: 15 0x1b8-NA (0)
0x1b0| 44 54 50 6c 61 74 66 6f| DTPlatfo| value: "DTPlatformBuild" 0x1b8-0x1c6.7 (15)
| | | value{}: 0x315-0x31b (6)
0x310| 55 | U | type: "ascii_string" (5) (ASCII encoded string) 0x315-0x315.4 (0.4)
0x310| 55 | U | size_bits: 5 0x315.4-0x316 (0.4)
| | | size: 5
0x310| 31 33 43 37 31 | 13C71 | value: "13C71" 0x316-0x31b (5)
| | | [20]{}: entry 0x1f-0x26b (588)
0x010| 15| .| key_index: 21 0x1f-0x20 (1)
0x030| 1a | . | value_index: 26 0x34-0x35 (1)
| | | key{}: 0x1b5-0x1c7 (18)
0x1b0| 5f | _ | type: "ascii_string" (5) (ASCII encoded string) 0x1b5-0x1b5.4 (0.4)
0x1b0| 5f | _ | size_bits: 15 0x1b5.4-0x1b6 (0.4)
0x1b0| 10 | . | large_size_marker: 1 (valid) 0x1b6-0x1b6.4 (0.4)
0x1b0| 10 | . | exponent: 0 0x1b6.4-0x1b7 (0.4)
0x1b0| 0f | . | size_bigint: 15 0x1b7-0x1b8 (1)
| | | size: 15
0x1b0| 44 54 50 6c 61 74 66 6f| DTPlatfo| value: "DTPlatformBuild" 0x1b8-0x1c7 (15)
0x1c0|72 6d 42 75 69 6c 64 |rmBuild |
| | | value{}: 0x265-0x26a.7 (6)
0x260| 55 | U | type: "ascii_string" (5) (ASCII encoded string) 0x265-0x265.3 (0.4)
0x260| 55 | U | size_bits: 5 0x265.4-0x265.7 (0.4)
| | | size: 5 0x266-NA (0)
0x260| 31 39 4b 32 34 | 19K24 | value: "19K24" 0x266-0x26a.7 (5)
0x210|00 6e 00 63 00 2e 00 20 00 41 00 6c 00 6c 00 20|.n.c... .A.l.l. | gap0: raw bits 0x210-0x23f.7 (48)
| | | value{}: 0x265-0x26b (6)
0x260| 55 | U | type: "ascii_string" (5) (ASCII encoded string) 0x265-0x265.4 (0.4)
0x260| 55 | U | size_bits: 5 0x265.4-0x266 (0.4)
| | | size: 5
0x260| 31 39 4b 32 34 | 19K24 | value: "19K24" 0x266-0x26b (5)
0x210|00 6e 00 63 00 2e 00 20 00 41 00 6c 00 6c 00 20|.n.c... .A.l.l. | gap0: raw bits 0x210-0x240 (48)
* |until 0x23f.7 (48) | |
| | | offset_table[0:42]: 0x31b-0x36e.7 (84)
0x310| 00 08 | .. | [0]: 8 element 0x31b-0x31c.7 (2)
0x310| 00 35 | .5 | [1]: 53 element 0x31d-0x31e.7 (2)
0x310| 00| .| [2]: 66 element 0x31f-0x320.7 (2)
| | | offset_table[0:42]: 0x31b-0x36f (84)
0x310| 00 08 | .. | [0]: 8 element 0x31b-0x31d (2)
0x310| 00 35 | .5 | [1]: 53 element 0x31d-0x31f (2)
0x310| 00| .| [2]: 66 element 0x31f-0x321 (2)
0x320|42 |B |
0x320| 00 5d | .] | [3]: 93 element 0x321-0x322.7 (2)
0x320| 00 65 | .e | [4]: 101 element 0x323-0x324.7 (2)
0x320| 00 6f | .o | [5]: 111 element 0x325-0x326.7 (2)
0x320| 00 7a | .z | [6]: 122 element 0x327-0x328.7 (2)
0x320| 00 96 | .. | [7]: 150 element 0x329-0x32a.7 (2)
0x320| 00 a8 | .. | [8]: 168 element 0x32b-0x32c.7 (2)
0x320| 00 be | .. | [9]: 190 element 0x32d-0x32e.7 (2)
0x320| 00| .| [10]: 205 element 0x32f-0x330.7 (2)
0x320| 00 5d | .] | [3]: 93 element 0x321-0x323 (2)
0x320| 00 65 | .e | [4]: 101 element 0x323-0x325 (2)
0x320| 00 6f | .o | [5]: 111 element 0x325-0x327 (2)
0x320| 00 7a | .z | [6]: 122 element 0x327-0x329 (2)
0x320| 00 96 | .. | [7]: 150 element 0x329-0x32b (2)
0x320| 00 a8 | .. | [8]: 168 element 0x32b-0x32d (2)
0x320| 00 be | .. | [9]: 190 element 0x32d-0x32f (2)
0x320| 00| .| [10]: 205 element 0x32f-0x331 (2)
0x330|cd |. |
0x330| 00 e3 | .. | [11]: 227 element 0x331-0x332.7 (2)
0x330| 01 00 | .. | [12]: 256 element 0x333-0x334.7 (2)
0x330| 01 1d | .. | [13]: 285 element 0x335-0x336.7 (2)
0x330| 01 3d | .= | [14]: 317 element 0x337-0x338.7 (2)
0x330| 01 52 | .R | [15]: 338 element 0x339-0x33a.7 (2)
0x330| 01 5d | .] | [16]: 349 element 0x33b-0x33c.7 (2)
0x330| 01 70 | .p | [17]: 368 element 0x33d-0x33e.7 (2)
0x330| 01| .| [18]: 389 element 0x33f-0x340.7 (2)
0x330| 00 e3 | .. | [11]: 227 element 0x331-0x333 (2)
0x330| 01 00 | .. | [12]: 256 element 0x333-0x335 (2)
0x330| 01 1d | .. | [13]: 285 element 0x335-0x337 (2)
0x330| 01 3d | .= | [14]: 317 element 0x337-0x339 (2)
0x330| 01 52 | .R | [15]: 338 element 0x339-0x33b (2)
0x330| 01 5d | .] | [16]: 349 element 0x33b-0x33d (2)
0x330| 01 70 | .p | [17]: 368 element 0x33d-0x33f (2)
0x330| 01| .| [18]: 389 element 0x33f-0x341 (2)
0x340|85 |. |
0x340| 01 94 | .. | [19]: 404 element 0x341-0x342.7 (2)
0x340| 01 a8 | .. | [20]: 424 element 0x343-0x344.7 (2)
0x340| 01 b5 | .. | [21]: 437 element 0x345-0x346.7 (2)
0x340| 01 c7 | .. | [22]: 455 element 0x347-0x348.7 (2)
0x340| 01 dd | .. | [23]: 477 element 0x349-0x34a.7 (2)
0x340| 02 40 | .@ | [24]: 576 element 0x34b-0x34c.7 (2)
0x340| 02 45 | .E | [25]: 581 element 0x34d-0x34e.7 (2)
0x340| 02| .| [26]: 613 element 0x34f-0x350.7 (2)
0x340| 01 94 | .. | [19]: 404 element 0x341-0x343 (2)
0x340| 01 a8 | .. | [20]: 424 element 0x343-0x345 (2)
0x340| 01 b5 | .. | [21]: 437 element 0x345-0x347 (2)
0x340| 01 c7 | .. | [22]: 455 element 0x347-0x349 (2)
0x340| 01 dd | .. | [23]: 477 element 0x349-0x34b (2)
0x340| 02 40 | .@ | [24]: 576 element 0x34b-0x34d (2)
0x340| 02 45 | .E | [25]: 581 element 0x34d-0x34f (2)
0x340| 02| .| [26]: 613 element 0x34f-0x351 (2)
0x350|65 |e |
0x350| 02 6b | .k | [27]: 619 element 0x351-0x352.7 (2)
0x350| 02 73 | .s | [28]: 627 element 0x353-0x354.7 (2)
0x350| 02 79 | .y | [29]: 633 element 0x355-0x356.7 (2)
0x350| 02 83 | .. | [30]: 643 element 0x357-0x358.7 (2)
0x350| 02 96 | .. | [31]: 662 element 0x359-0x35a.7 (2)
0x350| 02 9b | .. | [32]: 667 element 0x35b-0x35c.7 (2)
0x350| 02 9d | .. | [33]: 669 element 0x35d-0x35e.7 (2)
0x350| 02| .| [34]: 688 element 0x35f-0x360.7 (2)
0x350| 02 6b | .k | [27]: 619 element 0x351-0x353 (2)
0x350| 02 73 | .s | [28]: 627 element 0x353-0x355 (2)
0x350| 02 79 | .y | [29]: 633 element 0x355-0x357 (2)
0x350| 02 83 | .. | [30]: 643 element 0x357-0x359 (2)
0x350| 02 96 | .. | [31]: 662 element 0x359-0x35b (2)
0x350| 02 9b | .. | [32]: 667 element 0x35b-0x35d (2)
0x350| 02 9d | .. | [33]: 669 element 0x35d-0x35f (2)
0x350| 02| .| [34]: 688 element 0x35f-0x361 (2)
0x360|b0 |. |
0x360| 02 b4 | .. | [35]: 692 element 0x361-0x362.7 (2)
0x360| 02 d9 | .. | [36]: 729 element 0x363-0x364.7 (2)
0x360| 02 de | .. | [37]: 734 element 0x365-0x366.7 (2)
0x360| 03 0c | .. | [38]: 780 element 0x367-0x368.7 (2)
0x360| 03 0e | .. | [39]: 782 element 0x369-0x36a.7 (2)
0x360| 03 10 | .. | [40]: 784 element 0x36b-0x36c.7 (2)
0x360| 03 15 | .. | [41]: 789 element 0x36d-0x36e.7 (2)
| | | trailer{}: 0x36f-0x38e.7 (32)
0x360| 00| .| unused: 0 0x36f-0x373.7 (5)
0x360| 02 b4 | .. | [35]: 692 element 0x361-0x363 (2)
0x360| 02 d9 | .. | [36]: 729 element 0x363-0x365 (2)
0x360| 02 de | .. | [37]: 734 element 0x365-0x367 (2)
0x360| 03 0c | .. | [38]: 780 element 0x367-0x369 (2)
0x360| 03 0e | .. | [39]: 782 element 0x369-0x36b (2)
0x360| 03 10 | .. | [40]: 784 element 0x36b-0x36d (2)
0x360| 03 15 | .. | [41]: 789 element 0x36d-0x36f (2)
| | | trailer{}: 0x36f-0x38f (32)
0x360| 00| .| unused: 0 0x36f-0x374 (5)
0x370|00 00 00 00 |.... |
0x370| 00 | . | sort_version: 0 0x374-0x374.7 (1)
0x370| 02 | . | offset_table_offset_size: 2 (valid) 0x375-0x375.7 (1)
0x370| 01 | . | object_reference_size: 1 (valid) 0x376-0x376.7 (1)
0x370| 00 00 00 00 00 00 00 2a | .......* | object_count: 42 0x377-0x37e.7 (8)
0x370| 00| .| top_object_offset: 0 0x37f-0x386.7 (8)
0x370| 00 | . | sort_version: 0 0x374-0x375 (1)
0x370| 02 | . | offset_table_offset_size: 2 (valid) 0x375-0x376 (1)
0x370| 01 | . | object_reference_size: 1 (valid) 0x376-0x377 (1)
0x370| 00 00 00 00 00 00 00 2a | .......* | object_count: 42 0x377-0x37f (8)
0x370| 00| .| top_object_offset: 0 0x37f-0x387 (8)
0x380|00 00 00 00 00 00 00 |....... |
0x380| 00 00 00 00 00 00 03 1b| | ........|| offset_table_start: 795 0x387-0x38e.7 (8)
0x380| 00 00 00 00 00 00 03 1b| | ........|| offset_table_start: 795 0x387-0x38f (8)

View File

@ -468,7 +468,6 @@ func machoDecode(d *decode.D) any {
d.FieldU32("nreloc")
// get section type
d.FieldStruct("flags", parseSectionFlags)
d.FieldU8("type", sectionTypes)
d.FieldU32("reserved1")
d.FieldU32("reserved2")
if archBits == 64 {
@ -542,7 +541,7 @@ func machoDecode(d *decode.D) any {
LC_REEXPORT_DYLIB:
d.FieldStruct("dylib_command", func(d *decode.D) {
offset := d.FieldU32("offset", scalar.UintHex)
d.FieldU32("timestamp", timestampMapper)
d.FieldU32("timestamp", scalar.UintActualUnixTimeDescription(time.Second, time.RFC3339))
d.FieldU32("current_version")
d.FieldU32("compatibility_version")
d.FieldUTF8NullFixedLen("name", int(cmdSize)-int(offset))
@ -756,71 +755,133 @@ func machoDecode(d *decode.D) any {
return nil
}
// TODO: some kind of flags-endian helper?
func parseMachHeaderFlags(d *decode.D) {
d.FieldRawLen("reserved", 6)
d.FieldBool("app_extension_safe")
d.FieldBool("no_heap_execution")
if d.Endian == decode.BigEndian {
d.FieldRawLen("reserved", 6)
d.FieldBool("app_extension_safe")
d.FieldBool("no_heap_execution")
d.FieldBool("has_tlv_descriptors")
d.FieldBool("dead_strippable_dylib")
d.FieldBool("pie")
d.FieldBool("no_reexported_dylibs")
d.FieldBool("has_tlv_descriptors")
d.FieldBool("dead_strippable_dylib")
d.FieldBool("pie")
d.FieldBool("no_reexported_dylibs")
d.FieldBool("setuid_safe")
d.FieldBool("root_safe")
d.FieldBool("allow_stack_execution")
d.FieldBool("binds_to_weak")
d.FieldBool("setuid_safe")
d.FieldBool("root_safe")
d.FieldBool("allow_stack_execution")
d.FieldBool("binds_to_weak")
d.FieldBool("weak_defines")
d.FieldBool("canonical")
d.FieldBool("subsections_via_symbols")
d.FieldBool("allmodsbound")
d.FieldBool("prebindable")
d.FieldBool("nofixprebinding")
d.FieldBool("nomultidefs")
d.FieldBool("force_flat")
d.FieldBool("weak_defines")
d.FieldBool("canonical")
d.FieldBool("subsections_via_symbols")
d.FieldBool("allmodsbound")
d.FieldBool("twolevel")
d.FieldBool("lazy_init")
d.FieldBool("split_segs")
d.FieldBool("prebound")
d.FieldBool("bindatload")
d.FieldBool("dyldlink")
d.FieldBool("incrlink")
d.FieldBool("noundefs")
} else {
d.FieldBool("twolevel")
d.FieldBool("lazy_init")
d.FieldBool("split_segs")
d.FieldBool("prebound")
d.FieldBool("bindatload")
d.FieldBool("dyldlink")
d.FieldBool("incrlink")
d.FieldBool("noundefs")
d.FieldBool("prebindable")
d.FieldBool("nofixprebinding")
d.FieldBool("nomultidefs")
d.FieldBool("force_flat")
d.FieldBool("weak_defines")
d.FieldBool("canonical")
d.FieldBool("subsections_via_symbols")
d.FieldBool("allmodsbound")
d.FieldBool("prebindable")
d.FieldBool("nofixprebinding")
d.FieldBool("nomultidefs")
d.FieldBool("force_flat")
d.FieldBool("twolevel")
d.FieldBool("lazy_init")
d.FieldBool("split_segs")
d.FieldBool("prebound")
d.FieldBool("has_tlv_descriptors")
d.FieldBool("dead_strippable_dylib")
d.FieldBool("pie")
d.FieldBool("no_reexported_dylibs")
d.FieldBool("setuid_safe")
d.FieldBool("root_safe")
d.FieldBool("allow_stack_execution")
d.FieldBool("binds_to_weak")
d.FieldBool("bindatload")
d.FieldBool("dyldlink")
d.FieldBool("incrlink")
d.FieldBool("noundefs")
d.FieldRawLen("reserved", 6)
d.FieldBool("app_extension_safe")
d.FieldBool("no_heap_execution")
}
}
func parseSegmentFlags(d *decode.D) {
d.FieldRawLen("reserved", 28)
d.FieldBool("protected_version_1")
d.FieldBool("noreloc")
d.FieldBool("fvmlib")
d.FieldBool("highvm")
if d.Endian == decode.BigEndian {
d.FieldRawLen("reserved0", 24)
d.FieldRawLen("reserved1", 4)
d.FieldBool("protected_version_1")
d.FieldBool("noreloc")
d.FieldBool("fvmlib")
d.FieldBool("highvm")
} else {
d.FieldRawLen("reserved0", 4)
d.FieldBool("protected_version_1")
d.FieldBool("noreloc")
d.FieldBool("fvmlib")
d.FieldBool("highvm")
d.FieldRawLen("reserved1", 24)
}
}
func parseSectionFlags(d *decode.D) {
d.FieldBool("attr_pure_instructions")
d.FieldBool("attr_no_toc")
d.FieldBool("attr_strip_static_syms")
d.FieldBool("attr_no_dead_strip")
if d.Endian == decode.BigEndian {
d.FieldBool("attr_pure_instructions")
d.FieldBool("attr_no_toc")
d.FieldBool("attr_strip_static_syms")
d.FieldBool("attr_no_dead_strip")
d.FieldBool("attr_live_support")
d.FieldBool("attr_self_modifying_code")
d.FieldBool("attr_debug")
d.FieldRawLen("reserved0", 1)
d.FieldBool("attr_live_support")
d.FieldBool("attr_self_modifying_code")
d.FieldBool("attr_debug")
d.FieldRawLen("reserved", 14)
d.FieldRawLen("reserved1", 8)
d.FieldBool("attr_some_instructions")
d.FieldBool("attr_ext_reloc")
d.FieldBool("attr_loc_reloc")
d.FieldRawLen("reserved2", 5)
d.FieldBool("attr_some_instructions")
d.FieldBool("attr_ext_reloc")
d.FieldBool("attr_loc_reloc")
d.FieldU8("type", sectionTypes)
} else {
d.FieldU8("type", sectionTypes)
d.FieldRawLen("reserved2", 5)
d.FieldBool("attr_some_instructions")
d.FieldBool("attr_ext_reloc")
d.FieldBool("attr_loc_reloc")
d.FieldRawLen("reserved1", 8)
d.FieldBool("attr_pure_instructions")
d.FieldBool("attr_no_toc")
d.FieldBool("attr_strip_static_syms")
d.FieldBool("attr_no_dead_strip")
d.FieldBool("attr_live_support")
d.FieldBool("attr_self_modifying_code")
d.FieldBool("attr_debug")
d.FieldRawLen("reserved0", 1)
}
}
var timestampMapper = scalar.UintFn(func(s scalar.Uint) (scalar.Uint, error) {
s.Sym = time.UnixMilli(int64(s.Actual)).UTC().String()
return s, nil
})
func threadStateI386Decode(d *decode.D) {
d.FieldU32("eax")
d.FieldU32("ebx")

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,460 +1,479 @@
$ fq dv libbbb.so
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: libbbb.so (macho) 0x0-0x80b7.7 (32952)
| | | header{}: 0x0-0x1f.7 (32)
| | | arch_bits: 64 0x0-NA (0)
0x0000|cf fa ed fe |.... | magic: "64le" (0xfeedfacf) (64-bit little endian) 0x0-0x3.7 (4)
| | | bits: 64 0x4-NA (0)
0x0000| 07 00 00 01 | .... | cputype: "x86_64" (0x1000007) 0x4-0x7.7 (4)
0x0000| 03 00 00 00 | .... | cpusubtype: 0x3 0x8-0xb.7 (4)
0x0000| 06 00 00 00| ....| filetype: "dylib" (6) 0xc-0xf.7 (4)
0x0010|0d 00 00 00 |.... | ncdms: 13 0x10-0x13.7 (4)
0x0010| a8 04 00 00 | .... | sizeofncdms: 1192 0x14-0x17.7 (4)
| | | flags{}: 0x18-0x1b.7 (4)
0x0010| 85 | . | reserved: raw bits 0x18-0x18.5 (0.6)
0x0010| 85 | . | app_extension_safe: false 0x18.6-0x18.6 (0.1)
0x0010| 85 | . | no_heap_execution: true 0x18.7-0x18.7 (0.1)
0x0010| 00 | . | has_tlv_descriptors: false 0x19-0x19 (0.1)
0x0010| 00 | . | dead_strippable_dylib: false 0x19.1-0x19.1 (0.1)
0x0010| 00 | . | pie: false 0x19.2-0x19.2 (0.1)
0x0010| 00 | . | no_reexported_dylibs: false 0x19.3-0x19.3 (0.1)
0x0010| 00 | . | setuid_safe: false 0x19.4-0x19.4 (0.1)
0x0010| 00 | . | root_safe: false 0x19.5-0x19.5 (0.1)
0x0010| 00 | . | allow_stack_execution: false 0x19.6-0x19.6 (0.1)
0x0010| 00 | . | binds_to_weak: false 0x19.7-0x19.7 (0.1)
0x0010| 10 | . | weak_defines: false 0x1a-0x1a (0.1)
0x0010| 10 | . | canonical: false 0x1a.1-0x1a.1 (0.1)
0x0010| 10 | . | subsections_via_symbols: false 0x1a.2-0x1a.2 (0.1)
0x0010| 10 | . | allmodsbound: true 0x1a.3-0x1a.3 (0.1)
0x0010| 10 | . | prebindable: false 0x1a.4-0x1a.4 (0.1)
0x0010| 10 | . | nofixprebinding: false 0x1a.5-0x1a.5 (0.1)
0x0010| 10 | . | nomultidefs: false 0x1a.6-0x1a.6 (0.1)
0x0010| 10 | . | force_flat: false 0x1a.7-0x1a.7 (0.1)
0x0010| 00 | . | twolevel: false 0x1b-0x1b (0.1)
0x0010| 00 | . | lazy_init: false 0x1b.1-0x1b.1 (0.1)
0x0010| 00 | . | split_segs: false 0x1b.2-0x1b.2 (0.1)
0x0010| 00 | . | prebound: false 0x1b.3-0x1b.3 (0.1)
0x0010| 00 | . | bindatload: false 0x1b.4-0x1b.4 (0.1)
0x0010| 00 | . | dyldlink: false 0x1b.5-0x1b.5 (0.1)
0x0010| 00 | . | incrlink: false 0x1b.6-0x1b.6 (0.1)
0x0010| 00 | . | noundefs: false 0x1b.7-0x1b.7 (0.1)
0x0010| 00 00 00 00| ....| reserved: raw bits (all zero) 0x1c-0x1f.7 (4)
| | | load_commands[0:13]: 0x20-0x80b7.7 (32920)
| | | [0]{}: load_command 0x20-0x3ffb.7 (16348)
0x0020|19 00 00 00 |.... | cmd: "segment_64" (0x19) 0x20-0x23.7 (4)
0x0020| d8 01 00 00 | .... | cmdsize: 472 0x24-0x27.7 (4)
| | | segment_command{}: 0x28-0x67.7 (64)
| | | arch_bits: 64 0x28-NA (0)
0x0020| 5f 5f 54 45 58 54 00 00| __TEXT..| segname: "__TEXT" 0x28-0x37.7 (16)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: libbbb.so (macho) 0x0-0x80b8 (32952)
| | | header{}: 0x0-0x20 (32)
| | | arch_bits: 64
0x0000|cf fa ed fe |.... | magic: "64le" (0xfeedfacf) (64-bit little endian) 0x0-0x4 (4)
| | | bits: 64
0x0000| 07 00 00 01 | .... | cputype: "x86_64" (0x1000007) 0x4-0x8 (4)
0x0000| 03 00 00 00 | .... | cpusubtype: 0x3 0x8-0xc (4)
0x0000| 06 00 00 00| ....| filetype: "dylib" (6) 0xc-0x10 (4)
0x0010|0d 00 00 00 |.... | ncdms: 13 0x10-0x14 (4)
0x0010| a8 04 00 00 | .... | sizeofncdms: 1192 0x14-0x18 (4)
| | | flags{}: 0x18-0x1c (4)
0x0010| 85 | . | twolevel: true 0x18-0x18.1 (0.1)
0x0010| 85 | . | lazy_init: false 0x18.1-0x18.2 (0.1)
0x0010| 85 | . | split_segs: false 0x18.2-0x18.3 (0.1)
0x0010| 85 | . | prebound: false 0x18.3-0x18.4 (0.1)
0x0010| 85 | . | bindatload: false 0x18.4-0x18.5 (0.1)
0x0010| 85 | . | dyldlink: true 0x18.5-0x18.6 (0.1)
0x0010| 85 | . | incrlink: false 0x18.6-0x18.7 (0.1)
0x0010| 85 | . | noundefs: true 0x18.7-0x19 (0.1)
0x0010| 00 | . | weak_defines: false 0x19-0x19.1 (0.1)
0x0010| 00 | . | canonical: false 0x19.1-0x19.2 (0.1)
0x0010| 00 | . | subsections_via_symbols: false 0x19.2-0x19.3 (0.1)
0x0010| 00 | . | allmodsbound: false 0x19.3-0x19.4 (0.1)
0x0010| 00 | . | prebindable: false 0x19.4-0x19.5 (0.1)
0x0010| 00 | . | nofixprebinding: false 0x19.5-0x19.6 (0.1)
0x0010| 00 | . | nomultidefs: false 0x19.6-0x19.7 (0.1)
0x0010| 00 | . | force_flat: false 0x19.7-0x1a (0.1)
0x0010| 10 | . | has_tlv_descriptors: false 0x1a-0x1a.1 (0.1)
0x0010| 10 | . | dead_strippable_dylib: false 0x1a.1-0x1a.2 (0.1)
0x0010| 10 | . | pie: false 0x1a.2-0x1a.3 (0.1)
0x0010| 10 | . | no_reexported_dylibs: true 0x1a.3-0x1a.4 (0.1)
0x0010| 10 | . | setuid_safe: false 0x1a.4-0x1a.5 (0.1)
0x0010| 10 | . | root_safe: false 0x1a.5-0x1a.6 (0.1)
0x0010| 10 | . | allow_stack_execution: false 0x1a.6-0x1a.7 (0.1)
0x0010| 10 | . | binds_to_weak: false 0x1a.7-0x1b (0.1)
0x0010| 00 | . | reserved: raw bits 0x1b-0x1b.6 (0.6)
0x0010| 00 | . | app_extension_safe: false 0x1b.6-0x1b.7 (0.1)
0x0010| 00 | . | no_heap_execution: false 0x1b.7-0x1c (0.1)
0x0010| 00 00 00 00| ....| reserved: raw bits (all zero) 0x1c-0x20 (4)
| | | load_commands[0:13]: 0x20-0x80b8 (32920)
| | | [0]{}: load_command 0x20-0x3ffc (16348)
0x0020|19 00 00 00 |.... | cmd: "segment_64" (0x19) 0x20-0x24 (4)
0x0020| d8 01 00 00 | .... | cmdsize: 472 0x24-0x28 (4)
| | | segment_command{}: 0x28-0x68 (64)
| | | arch_bits: 64
0x0020| 5f 5f 54 45 58 54 00 00| __TEXT..| segname: "__TEXT" 0x28-0x38 (16)
0x0030|00 00 00 00 00 00 00 00 |........ |
0x0030| 00 00 00 00 00 00 00 00| ........| vmaddr: 0x0 0x38-0x3f.7 (8)
0x0040|00 40 00 00 00 00 00 00 |.@...... | vmsize: 16384 0x40-0x47.7 (8)
0x0040| 00 00 00 00 00 00 00 00| ........| fileoff: 0x0 0x48-0x4f.7 (8)
0x0050|00 40 00 00 00 00 00 00 |.@...... | tfilesize: 16384 0x50-0x57.7 (8)
0x0050| 05 00 00 00 | .... | initprot: 5 0x58-0x5b.7 (4)
0x0050| 05 00 00 00| ....| maxprot: 5 0x5c-0x5f.7 (4)
0x0060|05 00 00 00 |.... | nsects: 5 0x60-0x63.7 (4)
| | | flags{}: 0x64-0x67.7 (4)
0x0060| 00 00 00 00 | .... | reserved: raw bits 0x64-0x67.3 (3.4)
0x0060| 00 | . | protected_version_1: false 0x67.4-0x67.4 (0.1)
0x0060| 00 | . | noreloc: false 0x67.5-0x67.5 (0.1)
0x0060| 00 | . | fvmlib: false 0x67.6-0x67.6 (0.1)
0x0060| 00 | . | highvm: false 0x67.7-0x67.7 (0.1)
| | | sections[0:5]: 0x68-0x3ffb.7 (16276)
| | | [0]{}: section 0x68-0x3f83.7 (16156)
0x0060| 5f 5f 74 65 78 74 00 00| __text..| sectname: "__text" 0x68-0x77.7 (16)
0x0030| 00 00 00 00 00 00 00 00| ........| vmaddr: 0x0 0x38-0x40 (8)
0x0040|00 40 00 00 00 00 00 00 |.@...... | vmsize: 16384 0x40-0x48 (8)
0x0040| 00 00 00 00 00 00 00 00| ........| fileoff: 0x0 0x48-0x50 (8)
0x0050|00 40 00 00 00 00 00 00 |.@...... | tfilesize: 16384 0x50-0x58 (8)
0x0050| 05 00 00 00 | .... | initprot: 5 0x58-0x5c (4)
0x0050| 05 00 00 00| ....| maxprot: 5 0x5c-0x60 (4)
0x0060|05 00 00 00 |.... | nsects: 5 0x60-0x64 (4)
| | | flags{}: 0x64-0x68 (4)
0x0060| 00 | . | reserved0: raw bits 0x64-0x64.4 (0.4)
0x0060| 00 | . | protected_version_1: false 0x64.4-0x64.5 (0.1)
0x0060| 00 | . | noreloc: false 0x64.5-0x64.6 (0.1)
0x0060| 00 | . | fvmlib: false 0x64.6-0x64.7 (0.1)
0x0060| 00 | . | highvm: false 0x64.7-0x65 (0.1)
0x0060| 00 00 00 | ... | reserved1: raw bits 0x65-0x68 (3)
| | | sections[0:5]: 0x68-0x3ffc (16276)
| | | [0]{}: section 0x68-0x3f84 (16156)
0x0060| 5f 5f 74 65 78 74 00 00| __text..| sectname: "__text" 0x68-0x78 (16)
0x0070|00 00 00 00 00 00 00 00 |........ |
0x0070| 5f 5f 54 45 58 54 00 00| __TEXT..| segname: "__TEXT" 0x78-0x87.7 (16)
0x0070| 5f 5f 54 45 58 54 00 00| __TEXT..| segname: "__TEXT" 0x78-0x88 (16)
0x0080|00 00 00 00 00 00 00 00 |........ |
0x0080| 70 3f 00 00 00 00 00 00| p?......| address: 0x3f70 0x88-0x8f.7 (8)
0x0090|14 00 00 00 00 00 00 00 |........ | size: 20 0x90-0x97.7 (8)
0x0090| 70 3f 00 00 | p?.. | offset: 0x3f70 0x98-0x9b.7 (4)
0x0090| 04 00 00 00| ....| align: 4 0x9c-0x9f.7 (4)
0x00a0|00 00 00 00 |.... | reloff: 0 0xa0-0xa3.7 (4)
0x00a0| 00 00 00 00 | .... | nreloc: 0 0xa4-0xa7.7 (4)
| | | flags{}: 0xa8-0xaa.7 (3)
0x00a0| 00 | . | attr_pure_instructions: false 0xa8-0xa8 (0.1)
0x00a0| 00 | . | attr_no_toc: false 0xa8.1-0xa8.1 (0.1)
0x00a0| 00 | . | attr_strip_static_syms: false 0xa8.2-0xa8.2 (0.1)
0x00a0| 00 | . | attr_no_dead_strip: false 0xa8.3-0xa8.3 (0.1)
0x00a0| 00 | . | attr_live_support: false 0xa8.4-0xa8.4 (0.1)
0x00a0| 00 | . | attr_self_modifying_code: false 0xa8.5-0xa8.5 (0.1)
0x00a0| 00 | . | attr_debug: false 0xa8.6-0xa8.6 (0.1)
0x00a0| 00 04 00 | ... | reserved: raw bits 0xa8.7-0xaa.4 (1.6)
0x00a0| 00 | . | attr_some_instructions: false 0xaa.5-0xaa.5 (0.1)
0x00a0| 00 | . | attr_ext_reloc: false 0xaa.6-0xaa.6 (0.1)
0x00a0| 00 | . | attr_loc_reloc: false 0xaa.7-0xaa.7 (0.1)
0x00a0| 80 | . | type: 128 0xab-0xab.7 (1)
0x00a0| 00 00 00 00| ....| reserved1: 0 0xac-0xaf.7 (4)
0x00b0|00 00 00 00 |.... | reserved2: 0 0xb0-0xb3.7 (4)
0x00b0| 00 00 00 00 | .... | reserved3: 0 0xb4-0xb7.7 (4)
0x3f70|55 48 89 e5 48 8d 3d 2b 00 00 00 b0 00 e8 02 00|UH..H.=+........| data: raw bits 0x3f70-0x3f83.7 (20)
0x0080| 70 3f 00 00 00 00 00 00| p?......| address: 0x3f70 0x88-0x90 (8)
0x0090|14 00 00 00 00 00 00 00 |........ | size: 20 0x90-0x98 (8)
0x0090| 70 3f 00 00 | p?.. | offset: 0x3f70 0x98-0x9c (4)
0x0090| 04 00 00 00| ....| align: 4 0x9c-0xa0 (4)
0x00a0|00 00 00 00 |.... | reloff: 0 0xa0-0xa4 (4)
0x00a0| 00 00 00 00 | .... | nreloc: 0 0xa4-0xa8 (4)
| | | flags{}: 0xa8-0xac (4)
0x00a0| 00 | . | type: "regular" (0) 0xa8-0xa9 (1)
0x00a0| 04 | . | reserved2: raw bits 0xa9-0xa9.5 (0.5)
0x00a0| 04 | . | attr_some_instructions: true 0xa9.5-0xa9.6 (0.1)
0x00a0| 04 | . | attr_ext_reloc: false 0xa9.6-0xa9.7 (0.1)
0x00a0| 04 | . | attr_loc_reloc: false 0xa9.7-0xaa (0.1)
0x00a0| 00 | . | reserved1: raw bits 0xaa-0xab (1)
0x00a0| 80 | . | attr_pure_instructions: true 0xab-0xab.1 (0.1)
0x00a0| 80 | . | attr_no_toc: false 0xab.1-0xab.2 (0.1)
0x00a0| 80 | . | attr_strip_static_syms: false 0xab.2-0xab.3 (0.1)
0x00a0| 80 | . | attr_no_dead_strip: false 0xab.3-0xab.4 (0.1)
0x00a0| 80 | . | attr_live_support: false 0xab.4-0xab.5 (0.1)
0x00a0| 80 | . | attr_self_modifying_code: false 0xab.5-0xab.6 (0.1)
0x00a0| 80 | . | attr_debug: false 0xab.6-0xab.7 (0.1)
0x00a0| 80 | . | reserved0: raw bits 0xab.7-0xac (0.1)
0x00a0| 00 00 00 00| ....| reserved1: 0 0xac-0xb0 (4)
0x00b0|00 00 00 00 |.... | reserved2: 0 0xb0-0xb4 (4)
0x00b0| 00 00 00 00 | .... | reserved3: 0 0xb4-0xb8 (4)
0x3f70|55 48 89 e5 48 8d 3d 2b 00 00 00 b0 00 e8 02 00|UH..H.=+........| data: raw bits 0x3f70-0x3f84 (20)
0x3f80|00 00 5d c3 |..]. |
| | | [1]{}: section 0xb8-0x3f89.7 (16082)
0x00b0| 5f 5f 73 74 75 62 73 00| __stubs.| sectname: "__stubs" 0xb8-0xc7.7 (16)
| | | [1]{}: section 0xb8-0x3f8a (16082)
0x00b0| 5f 5f 73 74 75 62 73 00| __stubs.| sectname: "__stubs" 0xb8-0xc8 (16)
0x00c0|00 00 00 00 00 00 00 00 |........ |
0x00c0| 5f 5f 54 45 58 54 00 00| __TEXT..| segname: "__TEXT" 0xc8-0xd7.7 (16)
0x00c0| 5f 5f 54 45 58 54 00 00| __TEXT..| segname: "__TEXT" 0xc8-0xd8 (16)
0x00d0|00 00 00 00 00 00 00 00 |........ |
0x00d0| 84 3f 00 00 00 00 00 00| .?......| address: 0x3f84 0xd8-0xdf.7 (8)
0x00e0|06 00 00 00 00 00 00 00 |........ | size: 6 0xe0-0xe7.7 (8)
0x00e0| 84 3f 00 00 | .?.. | offset: 0x3f84 0xe8-0xeb.7 (4)
0x00e0| 01 00 00 00| ....| align: 1 0xec-0xef.7 (4)
0x00f0|00 00 00 00 |.... | reloff: 0 0xf0-0xf3.7 (4)
0x00f0| 00 00 00 00 | .... | nreloc: 0 0xf4-0xf7.7 (4)
| | | flags{}: 0xf8-0xfa.7 (3)
0x00f0| 08 | . | attr_pure_instructions: false 0xf8-0xf8 (0.1)
0x00f0| 08 | . | attr_no_toc: false 0xf8.1-0xf8.1 (0.1)
0x00f0| 08 | . | attr_strip_static_syms: false 0xf8.2-0xf8.2 (0.1)
0x00f0| 08 | . | attr_no_dead_strip: false 0xf8.3-0xf8.3 (0.1)
0x00f0| 08 | . | attr_live_support: true 0xf8.4-0xf8.4 (0.1)
0x00f0| 08 | . | attr_self_modifying_code: false 0xf8.5-0xf8.5 (0.1)
0x00f0| 08 | . | attr_debug: false 0xf8.6-0xf8.6 (0.1)
0x00f0| 08 04 00 | ... | reserved: raw bits 0xf8.7-0xfa.4 (1.6)
0x00f0| 00 | . | attr_some_instructions: false 0xfa.5-0xfa.5 (0.1)
0x00f0| 00 | . | attr_ext_reloc: false 0xfa.6-0xfa.6 (0.1)
0x00f0| 00 | . | attr_loc_reloc: false 0xfa.7-0xfa.7 (0.1)
0x00f0| 80 | . | type: 128 0xfb-0xfb.7 (1)
0x00f0| 00 00 00 00| ....| reserved1: 0 0xfc-0xff.7 (4)
0x0100|06 00 00 00 |.... | reserved2: 6 0x100-0x103.7 (4)
0x0100| 00 00 00 00 | .... | reserved3: 0 0x104-0x107.7 (4)
0x3f80| ff 25 86 00 00 00 | .%.... | data: raw bits 0x3f84-0x3f89.7 (6)
| | | [2]{}: section 0x108-0x3fa5.7 (16030)
0x0100| 5f 5f 73 74 75 62 5f 68| __stub_h| sectname: "__stub_helper" 0x108-0x117.7 (16)
0x00d0| 84 3f 00 00 00 00 00 00| .?......| address: 0x3f84 0xd8-0xe0 (8)
0x00e0|06 00 00 00 00 00 00 00 |........ | size: 6 0xe0-0xe8 (8)
0x00e0| 84 3f 00 00 | .?.. | offset: 0x3f84 0xe8-0xec (4)
0x00e0| 01 00 00 00| ....| align: 1 0xec-0xf0 (4)
0x00f0|00 00 00 00 |.... | reloff: 0 0xf0-0xf4 (4)
0x00f0| 00 00 00 00 | .... | nreloc: 0 0xf4-0xf8 (4)
| | | flags{}: 0xf8-0xfc (4)
0x00f0| 08 | . | type: "symbol_stubs" (8) 0xf8-0xf9 (1)
0x00f0| 04 | . | reserved2: raw bits 0xf9-0xf9.5 (0.5)
0x00f0| 04 | . | attr_some_instructions: true 0xf9.5-0xf9.6 (0.1)
0x00f0| 04 | . | attr_ext_reloc: false 0xf9.6-0xf9.7 (0.1)
0x00f0| 04 | . | attr_loc_reloc: false 0xf9.7-0xfa (0.1)
0x00f0| 00 | . | reserved1: raw bits 0xfa-0xfb (1)
0x00f0| 80 | . | attr_pure_instructions: true 0xfb-0xfb.1 (0.1)
0x00f0| 80 | . | attr_no_toc: false 0xfb.1-0xfb.2 (0.1)
0x00f0| 80 | . | attr_strip_static_syms: false 0xfb.2-0xfb.3 (0.1)
0x00f0| 80 | . | attr_no_dead_strip: false 0xfb.3-0xfb.4 (0.1)
0x00f0| 80 | . | attr_live_support: false 0xfb.4-0xfb.5 (0.1)
0x00f0| 80 | . | attr_self_modifying_code: false 0xfb.5-0xfb.6 (0.1)
0x00f0| 80 | . | attr_debug: false 0xfb.6-0xfb.7 (0.1)
0x00f0| 80 | . | reserved0: raw bits 0xfb.7-0xfc (0.1)
0x00f0| 00 00 00 00| ....| reserved1: 0 0xfc-0x100 (4)
0x0100|06 00 00 00 |.... | reserved2: 6 0x100-0x104 (4)
0x0100| 00 00 00 00 | .... | reserved3: 0 0x104-0x108 (4)
0x3f80| ff 25 86 00 00 00 | .%.... | data: raw bits 0x3f84-0x3f8a (6)
| | | [2]{}: section 0x108-0x3fa6 (16030)
0x0100| 5f 5f 73 74 75 62 5f 68| __stub_h| sectname: "__stub_helper" 0x108-0x118 (16)
0x0110|65 6c 70 65 72 00 00 00 |elper... |
0x0110| 5f 5f 54 45 58 54 00 00| __TEXT..| segname: "__TEXT" 0x118-0x127.7 (16)
0x0110| 5f 5f 54 45 58 54 00 00| __TEXT..| segname: "__TEXT" 0x118-0x128 (16)
0x0120|00 00 00 00 00 00 00 00 |........ |
0x0120| 8c 3f 00 00 00 00 00 00| .?......| address: 0x3f8c 0x128-0x12f.7 (8)
0x0130|1a 00 00 00 00 00 00 00 |........ | size: 26 0x130-0x137.7 (8)
0x0130| 8c 3f 00 00 | .?.. | offset: 0x3f8c 0x138-0x13b.7 (4)
0x0130| 02 00 00 00| ....| align: 2 0x13c-0x13f.7 (4)
0x0140|00 00 00 00 |.... | reloff: 0 0x140-0x143.7 (4)
0x0140| 00 00 00 00 | .... | nreloc: 0 0x144-0x147.7 (4)
| | | flags{}: 0x148-0x14a.7 (3)
0x0140| 00 | . | attr_pure_instructions: false 0x148-0x148 (0.1)
0x0140| 00 | . | attr_no_toc: false 0x148.1-0x148.1 (0.1)
0x0140| 00 | . | attr_strip_static_syms: false 0x148.2-0x148.2 (0.1)
0x0140| 00 | . | attr_no_dead_strip: false 0x148.3-0x148.3 (0.1)
0x0140| 00 | . | attr_live_support: false 0x148.4-0x148.4 (0.1)
0x0140| 00 | . | attr_self_modifying_code: false 0x148.5-0x148.5 (0.1)
0x0140| 00 | . | attr_debug: false 0x148.6-0x148.6 (0.1)
0x0140| 00 04 00 | ... | reserved: raw bits 0x148.7-0x14a.4 (1.6)
0x0140| 00 | . | attr_some_instructions: false 0x14a.5-0x14a.5 (0.1)
0x0140| 00 | . | attr_ext_reloc: false 0x14a.6-0x14a.6 (0.1)
0x0140| 00 | . | attr_loc_reloc: false 0x14a.7-0x14a.7 (0.1)
0x0140| 80 | . | type: 128 0x14b-0x14b.7 (1)
0x0140| 00 00 00 00| ....| reserved1: 0 0x14c-0x14f.7 (4)
0x0150|00 00 00 00 |.... | reserved2: 0 0x150-0x153.7 (4)
0x0150| 00 00 00 00 | .... | reserved3: 0 0x154-0x157.7 (4)
0x3f80| 4c 8d 1d 6d| L..m| data: raw bits 0x3f8c-0x3fa5.7 (26)
0x0120| 8c 3f 00 00 00 00 00 00| .?......| address: 0x3f8c 0x128-0x130 (8)
0x0130|1a 00 00 00 00 00 00 00 |........ | size: 26 0x130-0x138 (8)
0x0130| 8c 3f 00 00 | .?.. | offset: 0x3f8c 0x138-0x13c (4)
0x0130| 02 00 00 00| ....| align: 2 0x13c-0x140 (4)
0x0140|00 00 00 00 |.... | reloff: 0 0x140-0x144 (4)
0x0140| 00 00 00 00 | .... | nreloc: 0 0x144-0x148 (4)
| | | flags{}: 0x148-0x14c (4)
0x0140| 00 | . | type: "regular" (0) 0x148-0x149 (1)
0x0140| 04 | . | reserved2: raw bits 0x149-0x149.5 (0.5)
0x0140| 04 | . | attr_some_instructions: true 0x149.5-0x149.6 (0.1)
0x0140| 04 | . | attr_ext_reloc: false 0x149.6-0x149.7 (0.1)
0x0140| 04 | . | attr_loc_reloc: false 0x149.7-0x14a (0.1)
0x0140| 00 | . | reserved1: raw bits 0x14a-0x14b (1)
0x0140| 80 | . | attr_pure_instructions: true 0x14b-0x14b.1 (0.1)
0x0140| 80 | . | attr_no_toc: false 0x14b.1-0x14b.2 (0.1)
0x0140| 80 | . | attr_strip_static_syms: false 0x14b.2-0x14b.3 (0.1)
0x0140| 80 | . | attr_no_dead_strip: false 0x14b.3-0x14b.4 (0.1)
0x0140| 80 | . | attr_live_support: false 0x14b.4-0x14b.5 (0.1)
0x0140| 80 | . | attr_self_modifying_code: false 0x14b.5-0x14b.6 (0.1)
0x0140| 80 | . | attr_debug: false 0x14b.6-0x14b.7 (0.1)
0x0140| 80 | . | reserved0: raw bits 0x14b.7-0x14c (0.1)
0x0140| 00 00 00 00| ....| reserved1: 0 0x14c-0x150 (4)
0x0150|00 00 00 00 |.... | reserved2: 0 0x150-0x154 (4)
0x0150| 00 00 00 00 | .... | reserved3: 0 0x154-0x158 (4)
0x3f80| 4c 8d 1d 6d| L..m| data: raw bits 0x3f8c-0x3fa6 (26)
0x3f90|00 00 00 41 53 ff 25 6d 00 00 00 90 68 00 00 00|...AS.%m....h...|
0x3fa0|00 e9 e6 ff ff ff |...... |
| | | [3]{}: section 0x158-0x3fb1.7 (15962)
0x0150| 5f 5f 63 73 74 72 69 6e| __cstrin| sectname: "__cstring" 0x158-0x167.7 (16)
| | | [3]{}: section 0x158-0x3fb2 (15962)
0x0150| 5f 5f 63 73 74 72 69 6e| __cstrin| sectname: "__cstring" 0x158-0x168 (16)
0x0160|67 00 00 00 00 00 00 00 |g....... |
0x0160| 5f 5f 54 45 58 54 00 00| __TEXT..| segname: "__TEXT" 0x168-0x177.7 (16)
0x0160| 5f 5f 54 45 58 54 00 00| __TEXT..| segname: "__TEXT" 0x168-0x178 (16)
0x0170|00 00 00 00 00 00 00 00 |........ |
0x0170| a6 3f 00 00 00 00 00 00| .?......| address: 0x3fa6 0x178-0x17f.7 (8)
0x0180|0c 00 00 00 00 00 00 00 |........ | size: 12 0x180-0x187.7 (8)
0x0180| a6 3f 00 00 | .?.. | offset: 0x3fa6 0x188-0x18b.7 (4)
0x0180| 00 00 00 00| ....| align: 0 0x18c-0x18f.7 (4)
0x0190|00 00 00 00 |.... | reloff: 0 0x190-0x193.7 (4)
0x0190| 00 00 00 00 | .... | nreloc: 0 0x194-0x197.7 (4)
| | | flags{}: 0x198-0x19a.7 (3)
0x0190| 02 | . | attr_pure_instructions: false 0x198-0x198 (0.1)
0x0190| 02 | . | attr_no_toc: false 0x198.1-0x198.1 (0.1)
0x0190| 02 | . | attr_strip_static_syms: false 0x198.2-0x198.2 (0.1)
0x0190| 02 | . | attr_no_dead_strip: false 0x198.3-0x198.3 (0.1)
0x0190| 02 | . | attr_live_support: false 0x198.4-0x198.4 (0.1)
0x0190| 02 | . | attr_self_modifying_code: false 0x198.5-0x198.5 (0.1)
0x0190| 02 | . | attr_debug: true 0x198.6-0x198.6 (0.1)
0x0190| 02 00 00 | ... | reserved: raw bits 0x198.7-0x19a.4 (1.6)
0x0190| 00 | . | attr_some_instructions: false 0x19a.5-0x19a.5 (0.1)
0x0190| 00 | . | attr_ext_reloc: false 0x19a.6-0x19a.6 (0.1)
0x0190| 00 | . | attr_loc_reloc: false 0x19a.7-0x19a.7 (0.1)
0x0190| 00 | . | type: "regular" (0) 0x19b-0x19b.7 (1)
0x0190| 00 00 00 00| ....| reserved1: 0 0x19c-0x19f.7 (4)
0x01a0|00 00 00 00 |.... | reserved2: 0 0x1a0-0x1a3.7 (4)
0x01a0| 00 00 00 00 | .... | reserved3: 0 0x1a4-0x1a7.7 (4)
| | | cstrings[0:1]: 0x3fa6-0x3fb1.7 (12)
0x3fa0| 6c 69 62 62 62 62 5f 62 62 62| libbbb_bbb| [0]: "libbbb_bbb\n" cstring 0x3fa6-0x3fb1.7 (12)
0x0170| a6 3f 00 00 00 00 00 00| .?......| address: 0x3fa6 0x178-0x180 (8)
0x0180|0c 00 00 00 00 00 00 00 |........ | size: 12 0x180-0x188 (8)
0x0180| a6 3f 00 00 | .?.. | offset: 0x3fa6 0x188-0x18c (4)
0x0180| 00 00 00 00| ....| align: 0 0x18c-0x190 (4)
0x0190|00 00 00 00 |.... | reloff: 0 0x190-0x194 (4)
0x0190| 00 00 00 00 | .... | nreloc: 0 0x194-0x198 (4)
| | | flags{}: 0x198-0x19c (4)
0x0190| 02 | . | type: "cstring_literals" (2) 0x198-0x199 (1)
0x0190| 00 | . | reserved2: raw bits 0x199-0x199.5 (0.5)
0x0190| 00 | . | attr_some_instructions: false 0x199.5-0x199.6 (0.1)
0x0190| 00 | . | attr_ext_reloc: false 0x199.6-0x199.7 (0.1)
0x0190| 00 | . | attr_loc_reloc: false 0x199.7-0x19a (0.1)
0x0190| 00 | . | reserved1: raw bits 0x19a-0x19b (1)
0x0190| 00 | . | attr_pure_instructions: false 0x19b-0x19b.1 (0.1)
0x0190| 00 | . | attr_no_toc: false 0x19b.1-0x19b.2 (0.1)
0x0190| 00 | . | attr_strip_static_syms: false 0x19b.2-0x19b.3 (0.1)
0x0190| 00 | . | attr_no_dead_strip: false 0x19b.3-0x19b.4 (0.1)
0x0190| 00 | . | attr_live_support: false 0x19b.4-0x19b.5 (0.1)
0x0190| 00 | . | attr_self_modifying_code: false 0x19b.5-0x19b.6 (0.1)
0x0190| 00 | . | attr_debug: false 0x19b.6-0x19b.7 (0.1)
0x0190| 00 | . | reserved0: raw bits 0x19b.7-0x19c (0.1)
0x0190| 00 00 00 00| ....| reserved1: 0 0x19c-0x1a0 (4)
0x01a0|00 00 00 00 |.... | reserved2: 0 0x1a0-0x1a4 (4)
0x01a0| 00 00 00 00 | .... | reserved3: 0 0x1a4-0x1a8 (4)
| | | cstrings[0:1]: 0x3fa6-0x3fb2 (12)
0x3fa0| 6c 69 62 62 62 62 5f 62 62 62| libbbb_bbb| [0]: "libbbb_bbb\n" cstring 0x3fa6-0x3fb2 (12)
0x3fb0|0a 00 |.. |
| | | [4]{}: section 0x1a8-0x3ffb.7 (15956)
0x01a0| 5f 5f 75 6e 77 69 6e 64| __unwind| sectname: "__unwind_info" 0x1a8-0x1b7.7 (16)
| | | [4]{}: section 0x1a8-0x3ffc (15956)
0x01a0| 5f 5f 75 6e 77 69 6e 64| __unwind| sectname: "__unwind_info" 0x1a8-0x1b8 (16)
0x01b0|5f 69 6e 66 6f 00 00 00 |_info... |
0x01b0| 5f 5f 54 45 58 54 00 00| __TEXT..| segname: "__TEXT" 0x1b8-0x1c7.7 (16)
0x01b0| 5f 5f 54 45 58 54 00 00| __TEXT..| segname: "__TEXT" 0x1b8-0x1c8 (16)
0x01c0|00 00 00 00 00 00 00 00 |........ |
0x01c0| b4 3f 00 00 00 00 00 00| .?......| address: 0x3fb4 0x1c8-0x1cf.7 (8)
0x01d0|48 00 00 00 00 00 00 00 |H....... | size: 72 0x1d0-0x1d7.7 (8)
0x01d0| b4 3f 00 00 | .?.. | offset: 0x3fb4 0x1d8-0x1db.7 (4)
0x01d0| 02 00 00 00| ....| align: 2 0x1dc-0x1df.7 (4)
0x01e0|00 00 00 00 |.... | reloff: 0 0x1e0-0x1e3.7 (4)
0x01e0| 00 00 00 00 | .... | nreloc: 0 0x1e4-0x1e7.7 (4)
| | | flags{}: 0x1e8-0x1ea.7 (3)
0x01e0| 00 | . | attr_pure_instructions: false 0x1e8-0x1e8 (0.1)
0x01e0| 00 | . | attr_no_toc: false 0x1e8.1-0x1e8.1 (0.1)
0x01e0| 00 | . | attr_strip_static_syms: false 0x1e8.2-0x1e8.2 (0.1)
0x01e0| 00 | . | attr_no_dead_strip: false 0x1e8.3-0x1e8.3 (0.1)
0x01e0| 00 | . | attr_live_support: false 0x1e8.4-0x1e8.4 (0.1)
0x01e0| 00 | . | attr_self_modifying_code: false 0x1e8.5-0x1e8.5 (0.1)
0x01e0| 00 | . | attr_debug: false 0x1e8.6-0x1e8.6 (0.1)
0x01e0| 00 00 00 | ... | reserved: raw bits 0x1e8.7-0x1ea.4 (1.6)
0x01e0| 00 | . | attr_some_instructions: false 0x1ea.5-0x1ea.5 (0.1)
0x01e0| 00 | . | attr_ext_reloc: false 0x1ea.6-0x1ea.6 (0.1)
0x01e0| 00 | . | attr_loc_reloc: false 0x1ea.7-0x1ea.7 (0.1)
0x01e0| 00 | . | type: "regular" (0) 0x1eb-0x1eb.7 (1)
0x01e0| 00 00 00 00| ....| reserved1: 0 0x1ec-0x1ef.7 (4)
0x01f0|00 00 00 00 |.... | reserved2: 0 0x1f0-0x1f3.7 (4)
0x01f0| 00 00 00 00 | .... | reserved3: 0 0x1f4-0x1f7.7 (4)
0x3fb0| 01 00 00 00 1c 00 00 00 00 00 00 00| ............| data: raw bits 0x3fb4-0x3ffb.7 (72)
0x01c0| b4 3f 00 00 00 00 00 00| .?......| address: 0x3fb4 0x1c8-0x1d0 (8)
0x01d0|48 00 00 00 00 00 00 00 |H....... | size: 72 0x1d0-0x1d8 (8)
0x01d0| b4 3f 00 00 | .?.. | offset: 0x3fb4 0x1d8-0x1dc (4)
0x01d0| 02 00 00 00| ....| align: 2 0x1dc-0x1e0 (4)
0x01e0|00 00 00 00 |.... | reloff: 0 0x1e0-0x1e4 (4)
0x01e0| 00 00 00 00 | .... | nreloc: 0 0x1e4-0x1e8 (4)
| | | flags{}: 0x1e8-0x1ec (4)
0x01e0| 00 | . | type: "regular" (0) 0x1e8-0x1e9 (1)
0x01e0| 00 | . | reserved2: raw bits 0x1e9-0x1e9.5 (0.5)
0x01e0| 00 | . | attr_some_instructions: false 0x1e9.5-0x1e9.6 (0.1)
0x01e0| 00 | . | attr_ext_reloc: false 0x1e9.6-0x1e9.7 (0.1)
0x01e0| 00 | . | attr_loc_reloc: false 0x1e9.7-0x1ea (0.1)
0x01e0| 00 | . | reserved1: raw bits 0x1ea-0x1eb (1)
0x01e0| 00 | . | attr_pure_instructions: false 0x1eb-0x1eb.1 (0.1)
0x01e0| 00 | . | attr_no_toc: false 0x1eb.1-0x1eb.2 (0.1)
0x01e0| 00 | . | attr_strip_static_syms: false 0x1eb.2-0x1eb.3 (0.1)
0x01e0| 00 | . | attr_no_dead_strip: false 0x1eb.3-0x1eb.4 (0.1)
0x01e0| 00 | . | attr_live_support: false 0x1eb.4-0x1eb.5 (0.1)
0x01e0| 00 | . | attr_self_modifying_code: false 0x1eb.5-0x1eb.6 (0.1)
0x01e0| 00 | . | attr_debug: false 0x1eb.6-0x1eb.7 (0.1)
0x01e0| 00 | . | reserved0: raw bits 0x1eb.7-0x1ec (0.1)
0x01e0| 00 00 00 00| ....| reserved1: 0 0x1ec-0x1f0 (4)
0x01f0|00 00 00 00 |.... | reserved2: 0 0x1f0-0x1f4 (4)
0x01f0| 00 00 00 00 | .... | reserved3: 0 0x1f4-0x1f8 (4)
0x3fb0| 01 00 00 00 1c 00 00 00 00 00 00 00| ............| data: raw bits 0x3fb4-0x3ffc (72)
0x3fc0|1c 00 00 00 00 00 00 00 1c 00 00 00 02 00 00 00|................|
* |until 0x3ffb.7 (72) | |
| | | [1]{}: load_command 0x1f8-0x4017.7 (15904)
0x01f0| 19 00 00 00 | .... | cmd: "segment_64" (0x19) 0x1f8-0x1fb.7 (4)
0x01f0| 38 01 00 00| 8...| cmdsize: 312 0x1fc-0x1ff.7 (4)
| | | segment_command{}: 0x200-0x23f.7 (64)
| | | arch_bits: 64 0x200-NA (0)
0x0200|5f 5f 44 41 54 41 00 00 00 00 00 00 00 00 00 00|__DATA..........| segname: "__DATA" 0x200-0x20f.7 (16)
0x0210|00 40 00 00 00 00 00 00 |.@...... | vmaddr: 0x4000 0x210-0x217.7 (8)
0x0210| 00 40 00 00 00 00 00 00| .@......| vmsize: 16384 0x218-0x21f.7 (8)
0x0220|00 40 00 00 00 00 00 00 |.@...... | fileoff: 0x4000 0x220-0x227.7 (8)
0x0220| 00 40 00 00 00 00 00 00| .@......| tfilesize: 16384 0x228-0x22f.7 (8)
0x0230|03 00 00 00 |.... | initprot: 3 0x230-0x233.7 (4)
0x0230| 03 00 00 00 | .... | maxprot: 3 0x234-0x237.7 (4)
0x0230| 03 00 00 00 | .... | nsects: 3 0x238-0x23b.7 (4)
| | | flags{}: 0x23c-0x23f.7 (4)
0x0230| 00 00 00 00| ....| reserved: raw bits 0x23c-0x23f.3 (3.4)
0x0230| 00| .| protected_version_1: false 0x23f.4-0x23f.4 (0.1)
0x0230| 00| .| noreloc: false 0x23f.5-0x23f.5 (0.1)
0x0230| 00| .| fvmlib: false 0x23f.6-0x23f.6 (0.1)
0x0230| 00| .| highvm: false 0x23f.7-0x23f.7 (0.1)
| | | sections[0:3]: 0x240-0x4017.7 (15832)
| | | [0]{}: section 0x240-0x4007.7 (15816)
0x0240|5f 5f 6e 6c 5f 73 79 6d 62 6f 6c 5f 70 74 72 00|__nl_symbol_ptr.| sectname: "__nl_symbol_ptr" 0x240-0x24f.7 (16)
0x0250|5f 5f 44 41 54 41 00 00 00 00 00 00 00 00 00 00|__DATA..........| segname: "__DATA" 0x250-0x25f.7 (16)
0x0260|00 40 00 00 00 00 00 00 |.@...... | address: 0x4000 0x260-0x267.7 (8)
0x0260| 08 00 00 00 00 00 00 00| ........| size: 8 0x268-0x26f.7 (8)
0x0270|00 40 00 00 |.@.. | offset: 0x4000 0x270-0x273.7 (4)
0x0270| 03 00 00 00 | .... | align: 3 0x274-0x277.7 (4)
0x0270| 00 00 00 00 | .... | reloff: 0 0x278-0x27b.7 (4)
0x0270| 00 00 00 00| ....| nreloc: 0 0x27c-0x27f.7 (4)
| | | flags{}: 0x280-0x282.7 (3)
0x0280|06 |. | attr_pure_instructions: false 0x280-0x280 (0.1)
0x0280|06 |. | attr_no_toc: false 0x280.1-0x280.1 (0.1)
0x0280|06 |. | attr_strip_static_syms: false 0x280.2-0x280.2 (0.1)
0x0280|06 |. | attr_no_dead_strip: false 0x280.3-0x280.3 (0.1)
0x0280|06 |. | attr_live_support: false 0x280.4-0x280.4 (0.1)
0x0280|06 |. | attr_self_modifying_code: true 0x280.5-0x280.5 (0.1)
0x0280|06 |. | attr_debug: true 0x280.6-0x280.6 (0.1)
0x0280|06 00 00 |... | reserved: raw bits 0x280.7-0x282.4 (1.6)
0x0280| 00 | . | attr_some_instructions: false 0x282.5-0x282.5 (0.1)
0x0280| 00 | . | attr_ext_reloc: false 0x282.6-0x282.6 (0.1)
0x0280| 00 | . | attr_loc_reloc: false 0x282.7-0x282.7 (0.1)
0x0280| 00 | . | type: "regular" (0) 0x283-0x283.7 (1)
0x0280| 01 00 00 00 | .... | reserved1: 1 0x284-0x287.7 (4)
0x0280| 00 00 00 00 | .... | reserved2: 0 0x288-0x28b.7 (4)
0x0280| 00 00 00 00| ....| reserved3: 0 0x28c-0x28f.7 (4)
0x4000|00 00 00 00 00 00 00 00 |........ | data: raw bits 0x4000-0x4007.7 (8)
| | | [1]{}: section 0x290-0x400f.7 (15744)
0x0290|5f 5f 67 6f 74 00 00 00 00 00 00 00 00 00 00 00|__got...........| sectname: "__got" 0x290-0x29f.7 (16)
0x02a0|5f 5f 44 41 54 41 00 00 00 00 00 00 00 00 00 00|__DATA..........| segname: "__DATA" 0x2a0-0x2af.7 (16)
0x02b0|08 40 00 00 00 00 00 00 |.@...... | address: 0x4008 0x2b0-0x2b7.7 (8)
0x02b0| 08 00 00 00 00 00 00 00| ........| size: 8 0x2b8-0x2bf.7 (8)
0x02c0|08 40 00 00 |.@.. | offset: 0x4008 0x2c0-0x2c3.7 (4)
0x02c0| 03 00 00 00 | .... | align: 3 0x2c4-0x2c7.7 (4)
0x02c0| 00 00 00 00 | .... | reloff: 0 0x2c8-0x2cb.7 (4)
0x02c0| 00 00 00 00| ....| nreloc: 0 0x2cc-0x2cf.7 (4)
| | | flags{}: 0x2d0-0x2d2.7 (3)
0x02d0|06 |. | attr_pure_instructions: false 0x2d0-0x2d0 (0.1)
0x02d0|06 |. | attr_no_toc: false 0x2d0.1-0x2d0.1 (0.1)
0x02d0|06 |. | attr_strip_static_syms: false 0x2d0.2-0x2d0.2 (0.1)
0x02d0|06 |. | attr_no_dead_strip: false 0x2d0.3-0x2d0.3 (0.1)
0x02d0|06 |. | attr_live_support: false 0x2d0.4-0x2d0.4 (0.1)
0x02d0|06 |. | attr_self_modifying_code: true 0x2d0.5-0x2d0.5 (0.1)
0x02d0|06 |. | attr_debug: true 0x2d0.6-0x2d0.6 (0.1)
0x02d0|06 00 00 |... | reserved: raw bits 0x2d0.7-0x2d2.4 (1.6)
0x02d0| 00 | . | attr_some_instructions: false 0x2d2.5-0x2d2.5 (0.1)
0x02d0| 00 | . | attr_ext_reloc: false 0x2d2.6-0x2d2.6 (0.1)
0x02d0| 00 | . | attr_loc_reloc: false 0x2d2.7-0x2d2.7 (0.1)
0x02d0| 00 | . | type: "regular" (0) 0x2d3-0x2d3.7 (1)
0x02d0| 02 00 00 00 | .... | reserved1: 2 0x2d4-0x2d7.7 (4)
0x02d0| 00 00 00 00 | .... | reserved2: 0 0x2d8-0x2db.7 (4)
0x02d0| 00 00 00 00| ....| reserved3: 0 0x2dc-0x2df.7 (4)
0x4000| 00 00 00 00 00 00 00 00| ........| data: raw bits 0x4008-0x400f.7 (8)
| | | [2]{}: section 0x2e0-0x4017.7 (15672)
0x02e0|5f 5f 6c 61 5f 73 79 6d 62 6f 6c 5f 70 74 72 00|__la_symbol_ptr.| sectname: "__la_symbol_ptr" 0x2e0-0x2ef.7 (16)
0x02f0|5f 5f 44 41 54 41 00 00 00 00 00 00 00 00 00 00|__DATA..........| segname: "__DATA" 0x2f0-0x2ff.7 (16)
0x0300|10 40 00 00 00 00 00 00 |.@...... | address: 0x4010 0x300-0x307.7 (8)
0x0300| 08 00 00 00 00 00 00 00| ........| size: 8 0x308-0x30f.7 (8)
0x0310|10 40 00 00 |.@.. | offset: 0x4010 0x310-0x313.7 (4)
0x0310| 03 00 00 00 | .... | align: 3 0x314-0x317.7 (4)
0x0310| 00 00 00 00 | .... | reloff: 0 0x318-0x31b.7 (4)
0x0310| 00 00 00 00| ....| nreloc: 0 0x31c-0x31f.7 (4)
| | | flags{}: 0x320-0x322.7 (3)
0x0320|07 |. | attr_pure_instructions: false 0x320-0x320 (0.1)
0x0320|07 |. | attr_no_toc: false 0x320.1-0x320.1 (0.1)
0x0320|07 |. | attr_strip_static_syms: false 0x320.2-0x320.2 (0.1)
0x0320|07 |. | attr_no_dead_strip: false 0x320.3-0x320.3 (0.1)
0x0320|07 |. | attr_live_support: false 0x320.4-0x320.4 (0.1)
0x0320|07 |. | attr_self_modifying_code: true 0x320.5-0x320.5 (0.1)
0x0320|07 |. | attr_debug: true 0x320.6-0x320.6 (0.1)
0x0320|07 00 00 |... | reserved: raw bits 0x320.7-0x322.4 (1.6)
0x0320| 00 | . | attr_some_instructions: false 0x322.5-0x322.5 (0.1)
0x0320| 00 | . | attr_ext_reloc: false 0x322.6-0x322.6 (0.1)
0x0320| 00 | . | attr_loc_reloc: false 0x322.7-0x322.7 (0.1)
0x0320| 00 | . | type: "regular" (0) 0x323-0x323.7 (1)
0x0320| 03 00 00 00 | .... | reserved1: 3 0x324-0x327.7 (4)
0x0320| 00 00 00 00 | .... | reserved2: 0 0x328-0x32b.7 (4)
0x0320| 00 00 00 00| ....| reserved3: 0 0x32c-0x32f.7 (4)
0x4010|9c 3f 00 00 00 00 00 00 |.?...... | data: raw bits 0x4010-0x4017.7 (8)
| | | [2]{}: load_command 0x330-0x377.7 (72)
0x0330|19 00 00 00 |.... | cmd: "segment_64" (0x19) 0x330-0x333.7 (4)
0x0330| 48 00 00 00 | H... | cmdsize: 72 0x334-0x337.7 (4)
| | | segment_command{}: 0x338-0x377.7 (64)
| | | arch_bits: 64 0x338-NA (0)
0x0330| 5f 5f 4c 49 4e 4b 45 44| __LINKED| segname: "__LINKEDIT" 0x338-0x347.7 (16)
| | | [1]{}: load_command 0x1f8-0x4018 (15904)
0x01f0| 19 00 00 00 | .... | cmd: "segment_64" (0x19) 0x1f8-0x1fc (4)
0x01f0| 38 01 00 00| 8...| cmdsize: 312 0x1fc-0x200 (4)
| | | segment_command{}: 0x200-0x240 (64)
| | | arch_bits: 64
0x0200|5f 5f 44 41 54 41 00 00 00 00 00 00 00 00 00 00|__DATA..........| segname: "__DATA" 0x200-0x210 (16)
0x0210|00 40 00 00 00 00 00 00 |.@...... | vmaddr: 0x4000 0x210-0x218 (8)
0x0210| 00 40 00 00 00 00 00 00| .@......| vmsize: 16384 0x218-0x220 (8)
0x0220|00 40 00 00 00 00 00 00 |.@...... | fileoff: 0x4000 0x220-0x228 (8)
0x0220| 00 40 00 00 00 00 00 00| .@......| tfilesize: 16384 0x228-0x230 (8)
0x0230|03 00 00 00 |.... | initprot: 3 0x230-0x234 (4)
0x0230| 03 00 00 00 | .... | maxprot: 3 0x234-0x238 (4)
0x0230| 03 00 00 00 | .... | nsects: 3 0x238-0x23c (4)
| | | flags{}: 0x23c-0x240 (4)
0x0230| 00 | . | reserved0: raw bits 0x23c-0x23c.4 (0.4)
0x0230| 00 | . | protected_version_1: false 0x23c.4-0x23c.5 (0.1)
0x0230| 00 | . | noreloc: false 0x23c.5-0x23c.6 (0.1)
0x0230| 00 | . | fvmlib: false 0x23c.6-0x23c.7 (0.1)
0x0230| 00 | . | highvm: false 0x23c.7-0x23d (0.1)
0x0230| 00 00 00| ...| reserved1: raw bits 0x23d-0x240 (3)
| | | sections[0:3]: 0x240-0x4018 (15832)
| | | [0]{}: section 0x240-0x4008 (15816)
0x0240|5f 5f 6e 6c 5f 73 79 6d 62 6f 6c 5f 70 74 72 00|__nl_symbol_ptr.| sectname: "__nl_symbol_ptr" 0x240-0x250 (16)
0x0250|5f 5f 44 41 54 41 00 00 00 00 00 00 00 00 00 00|__DATA..........| segname: "__DATA" 0x250-0x260 (16)
0x0260|00 40 00 00 00 00 00 00 |.@...... | address: 0x4000 0x260-0x268 (8)
0x0260| 08 00 00 00 00 00 00 00| ........| size: 8 0x268-0x270 (8)
0x0270|00 40 00 00 |.@.. | offset: 0x4000 0x270-0x274 (4)
0x0270| 03 00 00 00 | .... | align: 3 0x274-0x278 (4)
0x0270| 00 00 00 00 | .... | reloff: 0 0x278-0x27c (4)
0x0270| 00 00 00 00| ....| nreloc: 0 0x27c-0x280 (4)
| | | flags{}: 0x280-0x284 (4)
0x0280|06 |. | type: "non_lazy_symbol_pointers" (6) 0x280-0x281 (1)
0x0280| 00 | . | reserved2: raw bits 0x281-0x281.5 (0.5)
0x0280| 00 | . | attr_some_instructions: false 0x281.5-0x281.6 (0.1)
0x0280| 00 | . | attr_ext_reloc: false 0x281.6-0x281.7 (0.1)
0x0280| 00 | . | attr_loc_reloc: false 0x281.7-0x282 (0.1)
0x0280| 00 | . | reserved1: raw bits 0x282-0x283 (1)
0x0280| 00 | . | attr_pure_instructions: false 0x283-0x283.1 (0.1)
0x0280| 00 | . | attr_no_toc: false 0x283.1-0x283.2 (0.1)
0x0280| 00 | . | attr_strip_static_syms: false 0x283.2-0x283.3 (0.1)
0x0280| 00 | . | attr_no_dead_strip: false 0x283.3-0x283.4 (0.1)
0x0280| 00 | . | attr_live_support: false 0x283.4-0x283.5 (0.1)
0x0280| 00 | . | attr_self_modifying_code: false 0x283.5-0x283.6 (0.1)
0x0280| 00 | . | attr_debug: false 0x283.6-0x283.7 (0.1)
0x0280| 00 | . | reserved0: raw bits 0x283.7-0x284 (0.1)
0x0280| 01 00 00 00 | .... | reserved1: 1 0x284-0x288 (4)
0x0280| 00 00 00 00 | .... | reserved2: 0 0x288-0x28c (4)
0x0280| 00 00 00 00| ....| reserved3: 0 0x28c-0x290 (4)
0x4000|00 00 00 00 00 00 00 00 |........ | data: raw bits 0x4000-0x4008 (8)
| | | [1]{}: section 0x290-0x4010 (15744)
0x0290|5f 5f 67 6f 74 00 00 00 00 00 00 00 00 00 00 00|__got...........| sectname: "__got" 0x290-0x2a0 (16)
0x02a0|5f 5f 44 41 54 41 00 00 00 00 00 00 00 00 00 00|__DATA..........| segname: "__DATA" 0x2a0-0x2b0 (16)
0x02b0|08 40 00 00 00 00 00 00 |.@...... | address: 0x4008 0x2b0-0x2b8 (8)
0x02b0| 08 00 00 00 00 00 00 00| ........| size: 8 0x2b8-0x2c0 (8)
0x02c0|08 40 00 00 |.@.. | offset: 0x4008 0x2c0-0x2c4 (4)
0x02c0| 03 00 00 00 | .... | align: 3 0x2c4-0x2c8 (4)
0x02c0| 00 00 00 00 | .... | reloff: 0 0x2c8-0x2cc (4)
0x02c0| 00 00 00 00| ....| nreloc: 0 0x2cc-0x2d0 (4)
| | | flags{}: 0x2d0-0x2d4 (4)
0x02d0|06 |. | type: "non_lazy_symbol_pointers" (6) 0x2d0-0x2d1 (1)
0x02d0| 00 | . | reserved2: raw bits 0x2d1-0x2d1.5 (0.5)
0x02d0| 00 | . | attr_some_instructions: false 0x2d1.5-0x2d1.6 (0.1)
0x02d0| 00 | . | attr_ext_reloc: false 0x2d1.6-0x2d1.7 (0.1)
0x02d0| 00 | . | attr_loc_reloc: false 0x2d1.7-0x2d2 (0.1)
0x02d0| 00 | . | reserved1: raw bits 0x2d2-0x2d3 (1)
0x02d0| 00 | . | attr_pure_instructions: false 0x2d3-0x2d3.1 (0.1)
0x02d0| 00 | . | attr_no_toc: false 0x2d3.1-0x2d3.2 (0.1)
0x02d0| 00 | . | attr_strip_static_syms: false 0x2d3.2-0x2d3.3 (0.1)
0x02d0| 00 | . | attr_no_dead_strip: false 0x2d3.3-0x2d3.4 (0.1)
0x02d0| 00 | . | attr_live_support: false 0x2d3.4-0x2d3.5 (0.1)
0x02d0| 00 | . | attr_self_modifying_code: false 0x2d3.5-0x2d3.6 (0.1)
0x02d0| 00 | . | attr_debug: false 0x2d3.6-0x2d3.7 (0.1)
0x02d0| 00 | . | reserved0: raw bits 0x2d3.7-0x2d4 (0.1)
0x02d0| 02 00 00 00 | .... | reserved1: 2 0x2d4-0x2d8 (4)
0x02d0| 00 00 00 00 | .... | reserved2: 0 0x2d8-0x2dc (4)
0x02d0| 00 00 00 00| ....| reserved3: 0 0x2dc-0x2e0 (4)
0x4000| 00 00 00 00 00 00 00 00| ........| data: raw bits 0x4008-0x4010 (8)
| | | [2]{}: section 0x2e0-0x4018 (15672)
0x02e0|5f 5f 6c 61 5f 73 79 6d 62 6f 6c 5f 70 74 72 00|__la_symbol_ptr.| sectname: "__la_symbol_ptr" 0x2e0-0x2f0 (16)
0x02f0|5f 5f 44 41 54 41 00 00 00 00 00 00 00 00 00 00|__DATA..........| segname: "__DATA" 0x2f0-0x300 (16)
0x0300|10 40 00 00 00 00 00 00 |.@...... | address: 0x4010 0x300-0x308 (8)
0x0300| 08 00 00 00 00 00 00 00| ........| size: 8 0x308-0x310 (8)
0x0310|10 40 00 00 |.@.. | offset: 0x4010 0x310-0x314 (4)
0x0310| 03 00 00 00 | .... | align: 3 0x314-0x318 (4)
0x0310| 00 00 00 00 | .... | reloff: 0 0x318-0x31c (4)
0x0310| 00 00 00 00| ....| nreloc: 0 0x31c-0x320 (4)
| | | flags{}: 0x320-0x324 (4)
0x0320|07 |. | type: "lazy_symbol_pointers" (7) 0x320-0x321 (1)
0x0320| 00 | . | reserved2: raw bits 0x321-0x321.5 (0.5)
0x0320| 00 | . | attr_some_instructions: false 0x321.5-0x321.6 (0.1)
0x0320| 00 | . | attr_ext_reloc: false 0x321.6-0x321.7 (0.1)
0x0320| 00 | . | attr_loc_reloc: false 0x321.7-0x322 (0.1)
0x0320| 00 | . | reserved1: raw bits 0x322-0x323 (1)
0x0320| 00 | . | attr_pure_instructions: false 0x323-0x323.1 (0.1)
0x0320| 00 | . | attr_no_toc: false 0x323.1-0x323.2 (0.1)
0x0320| 00 | . | attr_strip_static_syms: false 0x323.2-0x323.3 (0.1)
0x0320| 00 | . | attr_no_dead_strip: false 0x323.3-0x323.4 (0.1)
0x0320| 00 | . | attr_live_support: false 0x323.4-0x323.5 (0.1)
0x0320| 00 | . | attr_self_modifying_code: false 0x323.5-0x323.6 (0.1)
0x0320| 00 | . | attr_debug: false 0x323.6-0x323.7 (0.1)
0x0320| 00 | . | reserved0: raw bits 0x323.7-0x324 (0.1)
0x0320| 03 00 00 00 | .... | reserved1: 3 0x324-0x328 (4)
0x0320| 00 00 00 00 | .... | reserved2: 0 0x328-0x32c (4)
0x0320| 00 00 00 00| ....| reserved3: 0 0x32c-0x330 (4)
0x4010|9c 3f 00 00 00 00 00 00 |.?...... | data: raw bits 0x4010-0x4018 (8)
| | | [2]{}: load_command 0x330-0x378 (72)
0x0330|19 00 00 00 |.... | cmd: "segment_64" (0x19) 0x330-0x334 (4)
0x0330| 48 00 00 00 | H... | cmdsize: 72 0x334-0x338 (4)
| | | segment_command{}: 0x338-0x378 (64)
| | | arch_bits: 64
0x0330| 5f 5f 4c 49 4e 4b 45 44| __LINKED| segname: "__LINKEDIT" 0x338-0x348 (16)
0x0340|49 54 00 00 00 00 00 00 |IT...... |
0x0340| 00 80 00 00 00 00 00 00| ........| vmaddr: 0x8000 0x348-0x34f.7 (8)
0x0350|00 40 00 00 00 00 00 00 |.@...... | vmsize: 16384 0x350-0x357.7 (8)
0x0350| 00 80 00 00 00 00 00 00| ........| fileoff: 0x8000 0x358-0x35f.7 (8)
0x0360|b8 00 00 00 00 00 00 00 |........ | tfilesize: 184 0x360-0x367.7 (8)
0x0360| 01 00 00 00 | .... | initprot: 1 0x368-0x36b.7 (4)
0x0360| 01 00 00 00| ....| maxprot: 1 0x36c-0x36f.7 (4)
0x0370|00 00 00 00 |.... | nsects: 0 0x370-0x373.7 (4)
| | | flags{}: 0x374-0x377.7 (4)
0x0370| 00 00 00 00 | .... | reserved: raw bits 0x374-0x377.3 (3.4)
0x0370| 00 | . | protected_version_1: false 0x377.4-0x377.4 (0.1)
0x0370| 00 | . | noreloc: false 0x377.5-0x377.5 (0.1)
0x0370| 00 | . | fvmlib: false 0x377.6-0x377.6 (0.1)
0x0370| 00 | . | highvm: false 0x377.7-0x377.7 (0.1)
| | | sections[0:0]: 0x378-NA (0)
| | | [3]{}: load_command 0x378-0x39f.7 (40)
0x0370| 0d 00 00 00 | .... | cmd: "id_dylib" (0xd) 0x378-0x37b.7 (4)
0x0370| 28 00 00 00| (...| cmdsize: 40 0x37c-0x37f.7 (4)
| | | dylib_command{}: 0x380-0x39f.7 (32)
0x0380|18 00 00 00 |.... | offset: 0x18 0x380-0x383.7 (4)
0x0380| 01 00 00 00 | .... | timestamp: "1970-01-01 00:00:00.001 +0000 UTC" (1) 0x384-0x387.7 (4)
0x0380| 00 00 00 00 | .... | current_version: 0 0x388-0x38b.7 (4)
0x0380| 00 00 00 00| ....| compatibility_version: 0 0x38c-0x38f.7 (4)
0x0390|6c 69 62 62 62 62 2e 73 6f 00 00 00 00 00 00 00|libbbb.so.......| name: "libbbb.so" 0x390-0x39f.7 (16)
| | | [4]{}: load_command 0x3a0-0x3cf.7 (48)
0x03a0|22 00 00 80 |"... | cmd: "dyld_info_only" (0x80000022) 0x3a0-0x3a3.7 (4)
0x03a0| 30 00 00 00 | 0... | cmdsize: 48 0x3a4-0x3a7.7 (4)
| | | dyld_info{}: 0x3a8-0x3cf.7 (40)
0x03a0| 00 80 00 00 | .... | rebase_off: 0x8000 0x3a8-0x3ab.7 (4)
0x03a0| 08 00 00 00| ....| rebase_size: 8 0x3ac-0x3af.7 (4)
0x03b0|08 80 00 00 |.... | bind_off: 0x8008 0x3b0-0x3b3.7 (4)
0x03b0| 18 00 00 00 | .... | bind_size: 24 0x3b4-0x3b7.7 (4)
0x03b0| 00 00 00 00 | .... | weak_bind_off: 0x0 0x3b8-0x3bb.7 (4)
0x03b0| 00 00 00 00| ....| weak_bind_size: 0 0x3bc-0x3bf.7 (4)
0x03c0|20 80 00 00 | ... | lazy_bind_off: 0x8020 0x3c0-0x3c3.7 (4)
0x03c0| 10 00 00 00 | .... | lazy_bind_size: 16 0x3c4-0x3c7.7 (4)
0x03c0| 30 80 00 00 | 0... | export_off: 0x8030 0x3c8-0x3cb.7 (4)
0x03c0| 18 00 00 00| ....| export_size: 24 0x3cc-0x3cf.7 (4)
| | | [5]{}: load_command 0x3d0-0x80b7.7 (31976)
0x03d0|02 00 00 00 |.... | cmd: "symtab" (0x2) 0x3d0-0x3d3.7 (4)
0x03d0| 18 00 00 00 | .... | cmdsize: 24 0x3d4-0x3d7.7 (4)
0x03d0| 50 80 00 00 | P... | symoff: 32848 0x3d8-0x3db.7 (4)
0x03d0| 03 00 00 00| ....| nsyms: 3 0x3dc-0x3df.7 (4)
0x03e0|90 80 00 00 |.... | stroff: 32912 0x3e0-0x3e3.7 (4)
0x03e0| 28 00 00 00 | (... | strsize: 40 0x3e4-0x3e7.7 (4)
| | | symbols[0:3]: 0x8050-0x807f.7 (48)
| | | [0]{}: symbol 0x8050-0x805f.7 (16)
0x8050|02 00 00 00 |.... | strx: "_libbbb_bbb" (2) 0x8050-0x8053.7 (4)
| | | type{}: 0x8054-0x8054.7 (1)
0x8050| 0f | . | stab: 0 0x8054-0x8054.2 (0.3)
0x8050| 0f | . | pext: 0 0x8054.3-0x8054.3 (0.1)
0x8050| 0f | . | type: "sect" (7) 0x8054.4-0x8054.6 (0.3)
0x8050| 0f | . | ext: 1 0x8054.7-0x8054.7 (0.1)
0x8050| 01 | . | sect: 1 0x8055-0x8055.7 (1)
0x8050| 00 00 | .. | desc: 0 0x8056-0x8057.7 (2)
0x8050| 70 3f 00 00 00 00 00 00| p?......| value: 0x3f70 0x8058-0x805f.7 (8)
| | | [1]{}: symbol 0x8060-0x806f.7 (16)
0x8060|0e 00 00 00 |.... | strx: "_printf" (14) 0x8060-0x8063.7 (4)
| | | type{}: 0x8064-0x8064.7 (1)
0x8060| 01 | . | stab: 0 0x8064-0x8064.2 (0.3)
0x8060| 01 | . | pext: 0 0x8064.3-0x8064.3 (0.1)
0x8060| 01 | . | type: "undef" (0) 0x8064.4-0x8064.6 (0.3)
0x8060| 01 | . | ext: 1 0x8064.7-0x8064.7 (0.1)
0x8060| 00 | . | sect: 0 0x8065-0x8065.7 (1)
0x8060| 00 01 | .. | desc: 256 0x8066-0x8067.7 (2)
0x8060| 00 00 00 00 00 00 00 00| ........| value: 0x0 0x8068-0x806f.7 (8)
| | | [2]{}: symbol 0x8070-0x807f.7 (16)
0x8070|16 00 00 00 |.... | strx: "dyld_stub_binder" (22) 0x8070-0x8073.7 (4)
| | | type{}: 0x8074-0x8074.7 (1)
0x8070| 01 | . | stab: 0 0x8074-0x8074.2 (0.3)
0x8070| 01 | . | pext: 0 0x8074.3-0x8074.3 (0.1)
0x8070| 01 | . | type: "undef" (0) 0x8074.4-0x8074.6 (0.3)
0x8070| 01 | . | ext: 1 0x8074.7-0x8074.7 (0.1)
0x8070| 00 | . | sect: 0 0x8075-0x8075.7 (1)
0x8070| 00 01 | .. | desc: 256 0x8076-0x8077.7 (2)
0x8070| 00 00 00 00 00 00 00 00| ........| value: 0x0 0x8078-0x807f.7 (8)
0x8090|20 00 5f 6c 69 62 62 62 62 5f 62 62 62 00 5f 70| ._libbbb_bbb._p| str_table: raw bits 0x8090-0x80b7.7 (40)
0x0340| 00 80 00 00 00 00 00 00| ........| vmaddr: 0x8000 0x348-0x350 (8)
0x0350|00 40 00 00 00 00 00 00 |.@...... | vmsize: 16384 0x350-0x358 (8)
0x0350| 00 80 00 00 00 00 00 00| ........| fileoff: 0x8000 0x358-0x360 (8)
0x0360|b8 00 00 00 00 00 00 00 |........ | tfilesize: 184 0x360-0x368 (8)
0x0360| 01 00 00 00 | .... | initprot: 1 0x368-0x36c (4)
0x0360| 01 00 00 00| ....| maxprot: 1 0x36c-0x370 (4)
0x0370|00 00 00 00 |.... | nsects: 0 0x370-0x374 (4)
| | | flags{}: 0x374-0x378 (4)
0x0370| 00 | . | reserved0: raw bits 0x374-0x374.4 (0.4)
0x0370| 00 | . | protected_version_1: false 0x374.4-0x374.5 (0.1)
0x0370| 00 | . | noreloc: false 0x374.5-0x374.6 (0.1)
0x0370| 00 | . | fvmlib: false 0x374.6-0x374.7 (0.1)
0x0370| 00 | . | highvm: false 0x374.7-0x375 (0.1)
0x0370| 00 00 00 | ... | reserved1: raw bits 0x375-0x378 (3)
| | | sections[0:0]: 0x378-0x378 (0)
| | | [3]{}: load_command 0x378-0x3a0 (40)
0x0370| 0d 00 00 00 | .... | cmd: "id_dylib" (0xd) 0x378-0x37c (4)
0x0370| 28 00 00 00| (...| cmdsize: 40 0x37c-0x380 (4)
| | | dylib_command{}: 0x380-0x3a0 (32)
0x0380|18 00 00 00 |.... | offset: 0x18 0x380-0x384 (4)
0x0380| 01 00 00 00 | .... | timestamp: 1 (1970-01-01T00:00:01Z) 0x384-0x388 (4)
0x0380| 00 00 00 00 | .... | current_version: 0 0x388-0x38c (4)
0x0380| 00 00 00 00| ....| compatibility_version: 0 0x38c-0x390 (4)
0x0390|6c 69 62 62 62 62 2e 73 6f 00 00 00 00 00 00 00|libbbb.so.......| name: "libbbb.so" 0x390-0x3a0 (16)
| | | [4]{}: load_command 0x3a0-0x3d0 (48)
0x03a0|22 00 00 80 |"... | cmd: "dyld_info_only" (0x80000022) 0x3a0-0x3a4 (4)
0x03a0| 30 00 00 00 | 0... | cmdsize: 48 0x3a4-0x3a8 (4)
| | | dyld_info{}: 0x3a8-0x3d0 (40)
0x03a0| 00 80 00 00 | .... | rebase_off: 0x8000 0x3a8-0x3ac (4)
0x03a0| 08 00 00 00| ....| rebase_size: 8 0x3ac-0x3b0 (4)
0x03b0|08 80 00 00 |.... | bind_off: 0x8008 0x3b0-0x3b4 (4)
0x03b0| 18 00 00 00 | .... | bind_size: 24 0x3b4-0x3b8 (4)
0x03b0| 00 00 00 00 | .... | weak_bind_off: 0x0 0x3b8-0x3bc (4)
0x03b0| 00 00 00 00| ....| weak_bind_size: 0 0x3bc-0x3c0 (4)
0x03c0|20 80 00 00 | ... | lazy_bind_off: 0x8020 0x3c0-0x3c4 (4)
0x03c0| 10 00 00 00 | .... | lazy_bind_size: 16 0x3c4-0x3c8 (4)
0x03c0| 30 80 00 00 | 0... | export_off: 0x8030 0x3c8-0x3cc (4)
0x03c0| 18 00 00 00| ....| export_size: 24 0x3cc-0x3d0 (4)
| | | [5]{}: load_command 0x3d0-0x80b8 (31976)
0x03d0|02 00 00 00 |.... | cmd: "symtab" (0x2) 0x3d0-0x3d4 (4)
0x03d0| 18 00 00 00 | .... | cmdsize: 24 0x3d4-0x3d8 (4)
0x03d0| 50 80 00 00 | P... | symoff: 32848 0x3d8-0x3dc (4)
0x03d0| 03 00 00 00| ....| nsyms: 3 0x3dc-0x3e0 (4)
0x03e0|90 80 00 00 |.... | stroff: 32912 0x3e0-0x3e4 (4)
0x03e0| 28 00 00 00 | (... | strsize: 40 0x3e4-0x3e8 (4)
| | | symbols[0:3]: 0x8050-0x8080 (48)
| | | [0]{}: symbol 0x8050-0x8060 (16)
0x8050|02 00 00 00 |.... | strx: "_libbbb_bbb" (2) 0x8050-0x8054 (4)
| | | type{}: 0x8054-0x8055 (1)
0x8050| 0f | . | stab: 0 0x8054-0x8054.3 (0.3)
0x8050| 0f | . | pext: 0 0x8054.3-0x8054.4 (0.1)
0x8050| 0f | . | type: "sect" (7) 0x8054.4-0x8054.7 (0.3)
0x8050| 0f | . | ext: 1 0x8054.7-0x8055 (0.1)
0x8050| 01 | . | sect: 1 0x8055-0x8056 (1)
0x8050| 00 00 | .. | desc: 0 0x8056-0x8058 (2)
0x8050| 70 3f 00 00 00 00 00 00| p?......| value: 0x3f70 0x8058-0x8060 (8)
| | | [1]{}: symbol 0x8060-0x8070 (16)
0x8060|0e 00 00 00 |.... | strx: "_printf" (14) 0x8060-0x8064 (4)
| | | type{}: 0x8064-0x8065 (1)
0x8060| 01 | . | stab: 0 0x8064-0x8064.3 (0.3)
0x8060| 01 | . | pext: 0 0x8064.3-0x8064.4 (0.1)
0x8060| 01 | . | type: "undef" (0) 0x8064.4-0x8064.7 (0.3)
0x8060| 01 | . | ext: 1 0x8064.7-0x8065 (0.1)
0x8060| 00 | . | sect: 0 0x8065-0x8066 (1)
0x8060| 00 01 | .. | desc: 256 0x8066-0x8068 (2)
0x8060| 00 00 00 00 00 00 00 00| ........| value: 0x0 0x8068-0x8070 (8)
| | | [2]{}: symbol 0x8070-0x8080 (16)
0x8070|16 00 00 00 |.... | strx: "dyld_stub_binder" (22) 0x8070-0x8074 (4)
| | | type{}: 0x8074-0x8075 (1)
0x8070| 01 | . | stab: 0 0x8074-0x8074.3 (0.3)
0x8070| 01 | . | pext: 0 0x8074.3-0x8074.4 (0.1)
0x8070| 01 | . | type: "undef" (0) 0x8074.4-0x8074.7 (0.3)
0x8070| 01 | . | ext: 1 0x8074.7-0x8075 (0.1)
0x8070| 00 | . | sect: 0 0x8075-0x8076 (1)
0x8070| 00 01 | .. | desc: 256 0x8076-0x8078 (2)
0x8070| 00 00 00 00 00 00 00 00| ........| value: 0x0 0x8078-0x8080 (8)
0x8090|20 00 5f 6c 69 62 62 62 62 5f 62 62 62 00 5f 70| ._libbbb_bbb._p| str_table: raw bits 0x8090-0x80b8 (40)
* |until 0x80b7.7 (end) (40) | |
| | | [6]{}: load_command 0x3e8-0x437.7 (80)
0x03e0| 0b 00 00 00 | .... | cmd: "dysymtab" (0xb) 0x3e8-0x3eb.7 (4)
0x03e0| 50 00 00 00| P...| cmdsize: 80 0x3ec-0x3ef.7 (4)
0x03f0|00 00 00 00 |.... | ilocalsym: 0 0x3f0-0x3f3.7 (4)
0x03f0| 00 00 00 00 | .... | nlocalsym: 0 0x3f4-0x3f7.7 (4)
0x03f0| 00 00 00 00 | .... | iextdefsym: 0 0x3f8-0x3fb.7 (4)
0x03f0| 01 00 00 00| ....| nextdefsym: 1 0x3fc-0x3ff.7 (4)
0x0400|01 00 00 00 |.... | iundefsym: 1 0x400-0x403.7 (4)
0x0400| 02 00 00 00 | .... | nundefsym: 2 0x404-0x407.7 (4)
0x0400| 00 00 00 00 | .... | tocoff: 0 0x408-0x40b.7 (4)
0x0400| 00 00 00 00| ....| ntoc: 0 0x40c-0x40f.7 (4)
0x0410|00 00 00 00 |.... | modtaboff: 0 0x410-0x413.7 (4)
0x0410| 00 00 00 00 | .... | nmodtab: 0 0x414-0x417.7 (4)
0x0410| 00 00 00 00 | .... | extrefsymoff: 0 0x418-0x41b.7 (4)
0x0410| 00 00 00 00| ....| nextrefsyms: 0 0x41c-0x41f.7 (4)
0x0420|80 80 00 00 |.... | indirectsymoff: 32896 0x420-0x423.7 (4)
0x0420| 04 00 00 00 | .... | nindirectsyms: 4 0x424-0x427.7 (4)
0x0420| 00 00 00 00 | .... | extreloff: 0 0x428-0x42b.7 (4)
0x0420| 00 00 00 00| ....| nextrel: 0 0x42c-0x42f.7 (4)
0x0430|00 00 00 00 |.... | locreloff: 0 0x430-0x433.7 (4)
0x0430| 00 00 00 00 | .... | nlocrel: 0 0x434-0x437.7 (4)
| | | [7]{}: load_command 0x438-0x44f.7 (24)
0x0430| 1b 00 00 00 | .... | cmd: "uuid" (0x1b) 0x438-0x43b.7 (4)
0x0430| 18 00 00 00| ....| cmdsize: 24 0x43c-0x43f.7 (4)
| | | uuid_command{}: 0x440-0x44f.7 (16)
0x0440|ba 44 d8 2a d6 94 39 2a b5 6d 01 5b 7e ab 7f 67|.D.*..9*.m.[~..g| uuid: raw bits 0x440-0x44f.7 (16)
| | | [8]{}: load_command 0x450-0x45f.7 (16)
0x0450|24 00 00 00 |$... | cmd: "version_min_macosx" (0x24) 0x450-0x453.7 (4)
0x0450| 10 00 00 00 | .... | cmdsize: 16 0x454-0x457.7 (4)
0x0450| 00 0c 0a 00 | .... | version: 658432 0x458-0x45b.7 (4)
0x0450| 00 01 0c 00| ....| sdk: 786688 0x45c-0x45f.7 (4)
| | | [9]{}: load_command 0x460-0x46f.7 (16)
0x0460|2a 00 00 00 |*... | cmd: "source_version" (0x2a) 0x460-0x463.7 (4)
0x0460| 10 00 00 00 | .... | cmdsize: 16 0x464-0x467.7 (4)
| | | source_version_tag{}: 0x468-0x46f.7 (8)
0x0460| 00 00 00 00 00 00 00 00| ........| tag: 0 0x468-0x46f.7 (8)
| | | [10]{}: load_command 0x470-0x4a7.7 (56)
0x0470|0c 00 00 00 |.... | cmd: "load_dylib" (0xc) 0x470-0x473.7 (4)
0x0470| 38 00 00 00 | 8... | cmdsize: 56 0x474-0x477.7 (4)
| | | dylib_command{}: 0x478-0x4a7.7 (48)
0x0470| 18 00 00 00 | .... | offset: 0x18 0x478-0x47b.7 (4)
0x0470| 02 00 00 00| ....| timestamp: "1970-01-01 00:00:00.002 +0000 UTC" (2) 0x47c-0x47f.7 (4)
0x0480|00 00 1f 05 |.... | current_version: 85917696 0x480-0x483.7 (4)
0x0480| 00 00 01 00 | .... | compatibility_version: 65536 0x484-0x487.7 (4)
0x0480| 2f 75 73 72 2f 6c 69 62| /usr/lib| name: "/usr/lib/libSystem.B.dylib" 0x488-0x4a7.7 (32)
| | | [6]{}: load_command 0x3e8-0x438 (80)
0x03e0| 0b 00 00 00 | .... | cmd: "dysymtab" (0xb) 0x3e8-0x3ec (4)
0x03e0| 50 00 00 00| P...| cmdsize: 80 0x3ec-0x3f0 (4)
0x03f0|00 00 00 00 |.... | ilocalsym: 0 0x3f0-0x3f4 (4)
0x03f0| 00 00 00 00 | .... | nlocalsym: 0 0x3f4-0x3f8 (4)
0x03f0| 00 00 00 00 | .... | iextdefsym: 0 0x3f8-0x3fc (4)
0x03f0| 01 00 00 00| ....| nextdefsym: 1 0x3fc-0x400 (4)
0x0400|01 00 00 00 |.... | iundefsym: 1 0x400-0x404 (4)
0x0400| 02 00 00 00 | .... | nundefsym: 2 0x404-0x408 (4)
0x0400| 00 00 00 00 | .... | tocoff: 0 0x408-0x40c (4)
0x0400| 00 00 00 00| ....| ntoc: 0 0x40c-0x410 (4)
0x0410|00 00 00 00 |.... | modtaboff: 0 0x410-0x414 (4)
0x0410| 00 00 00 00 | .... | nmodtab: 0 0x414-0x418 (4)
0x0410| 00 00 00 00 | .... | extrefsymoff: 0 0x418-0x41c (4)
0x0410| 00 00 00 00| ....| nextrefsyms: 0 0x41c-0x420 (4)
0x0420|80 80 00 00 |.... | indirectsymoff: 32896 0x420-0x424 (4)
0x0420| 04 00 00 00 | .... | nindirectsyms: 4 0x424-0x428 (4)
0x0420| 00 00 00 00 | .... | extreloff: 0 0x428-0x42c (4)
0x0420| 00 00 00 00| ....| nextrel: 0 0x42c-0x430 (4)
0x0430|00 00 00 00 |.... | locreloff: 0 0x430-0x434 (4)
0x0430| 00 00 00 00 | .... | nlocrel: 0 0x434-0x438 (4)
| | | [7]{}: load_command 0x438-0x450 (24)
0x0430| 1b 00 00 00 | .... | cmd: "uuid" (0x1b) 0x438-0x43c (4)
0x0430| 18 00 00 00| ....| cmdsize: 24 0x43c-0x440 (4)
| | | uuid_command{}: 0x440-0x450 (16)
0x0440|ba 44 d8 2a d6 94 39 2a b5 6d 01 5b 7e ab 7f 67|.D.*..9*.m.[~..g| uuid: raw bits 0x440-0x450 (16)
| | | [8]{}: load_command 0x450-0x460 (16)
0x0450|24 00 00 00 |$... | cmd: "version_min_macosx" (0x24) 0x450-0x454 (4)
0x0450| 10 00 00 00 | .... | cmdsize: 16 0x454-0x458 (4)
0x0450| 00 0c 0a 00 | .... | version: 658432 0x458-0x45c (4)
0x0450| 00 01 0c 00| ....| sdk: 786688 0x45c-0x460 (4)
| | | [9]{}: load_command 0x460-0x470 (16)
0x0460|2a 00 00 00 |*... | cmd: "source_version" (0x2a) 0x460-0x464 (4)
0x0460| 10 00 00 00 | .... | cmdsize: 16 0x464-0x468 (4)
| | | source_version_tag{}: 0x468-0x470 (8)
0x0460| 00 00 00 00 00 00 00 00| ........| tag: 0 0x468-0x470 (8)
| | | [10]{}: load_command 0x470-0x4a8 (56)
0x0470|0c 00 00 00 |.... | cmd: "load_dylib" (0xc) 0x470-0x474 (4)
0x0470| 38 00 00 00 | 8... | cmdsize: 56 0x474-0x478 (4)
| | | dylib_command{}: 0x478-0x4a8 (48)
0x0470| 18 00 00 00 | .... | offset: 0x18 0x478-0x47c (4)
0x0470| 02 00 00 00| ....| timestamp: 2 (1970-01-01T00:00:02Z) 0x47c-0x480 (4)
0x0480|00 00 1f 05 |.... | current_version: 85917696 0x480-0x484 (4)
0x0480| 00 00 01 00 | .... | compatibility_version: 65536 0x484-0x488 (4)
0x0480| 2f 75 73 72 2f 6c 69 62| /usr/lib| name: "/usr/lib/libSystem.B.dylib" 0x488-0x4a8 (32)
0x0490|2f 6c 69 62 53 79 73 74 65 6d 2e 42 2e 64 79 6c|/libSystem.B.dyl|
0x04a0|69 62 00 00 00 00 00 00 |ib...... |
| | | [11]{}: load_command 0x4a8-0x4b7.7 (16)
0x04a0| 26 00 00 00 | &... | cmd: "function_starts" (0x26) 0x4a8-0x4ab.7 (4)
0x04a0| 10 00 00 00| ....| cmdsize: 16 0x4ac-0x4af.7 (4)
| | | linkedit_data{}: 0x4b0-0x4b7.7 (8)
0x04b0|48 80 00 00 |H... | off: 32840 0x4b0-0x4b3.7 (4)
0x04b0| 08 00 00 00 | .... | size: 8 0x4b4-0x4b7.7 (4)
| | | [12]{}: load_command 0x4b8-0x4c7.7 (16)
0x04b0| 29 00 00 00 | )... | cmd: "data_in_code" (0x29) 0x4b8-0x4bb.7 (4)
0x04b0| 10 00 00 00| ....| cmdsize: 16 0x4bc-0x4bf.7 (4)
| | | linkedit_data{}: 0x4c0-0x4c7.7 (8)
0x04c0|50 80 00 00 |P... | off: 32848 0x4c0-0x4c3.7 (4)
0x04c0| 00 00 00 00 | .... | size: 0 0x4c4-0x4c7.7 (4)
0x04c0| 00 00 00 00 00 00 00 00| ........| gap0: raw bits 0x4c8-0x3f6f.7 (15016)
| | | [11]{}: load_command 0x4a8-0x4b8 (16)
0x04a0| 26 00 00 00 | &... | cmd: "function_starts" (0x26) 0x4a8-0x4ac (4)
0x04a0| 10 00 00 00| ....| cmdsize: 16 0x4ac-0x4b0 (4)
| | | linkedit_data{}: 0x4b0-0x4b8 (8)
0x04b0|48 80 00 00 |H... | off: 32840 0x4b0-0x4b4 (4)
0x04b0| 08 00 00 00 | .... | size: 8 0x4b4-0x4b8 (4)
| | | [12]{}: load_command 0x4b8-0x4c8 (16)
0x04b0| 29 00 00 00 | )... | cmd: "data_in_code" (0x29) 0x4b8-0x4bc (4)
0x04b0| 10 00 00 00| ....| cmdsize: 16 0x4bc-0x4c0 (4)
| | | linkedit_data{}: 0x4c0-0x4c8 (8)
0x04c0|50 80 00 00 |P... | off: 32848 0x4c0-0x4c4 (4)
0x04c0| 00 00 00 00 | .... | size: 0 0x4c4-0x4c8 (4)
0x04c0| 00 00 00 00 00 00 00 00| ........| gap0: raw bits 0x4c8-0x3f70 (15016)
0x04d0|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................|
* |until 0x3f6f.7 (15016) | |
0x3f80| 00 00 | .. | gap1: raw bits 0x3f8a-0x3f8b.7 (2)
0x3fb0| 00 00 | .. | gap2: raw bits 0x3fb2-0x3fb3.7 (2)
0x3ff0| 00 00 00 00| ....| gap3: raw bits 0x3ffc-0x3fff.7 (4)
0x4010| 00 00 00 00 00 00 00 00| ........| gap4: raw bits 0x4018-0x804f.7 (16440)
0x3f80| 00 00 | .. | gap1: raw bits 0x3f8a-0x3f8c (2)
0x3fb0| 00 00 | .. | gap2: raw bits 0x3fb2-0x3fb4 (2)
0x3ff0| 00 00 00 00| ....| gap3: raw bits 0x3ffc-0x4000 (4)
0x4010| 00 00 00 00 00 00 00 00| ........| gap4: raw bits 0x4018-0x8050 (16440)
0x4020|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................|
* |until 0x804f.7 (16440) | |
0x8080|01 00 00 00 00 00 00 40 02 00 00 00 01 00 00 00|.......@........| gap5: raw bits 0x8080-0x808f.7 (16)
0x8080|01 00 00 00 00 00 00 40 02 00 00 00 01 00 00 00|.......@........| gap5: raw bits 0x8080-0x8090 (16)

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -281,7 +281,7 @@ func decodeASN1BERValue(d *decode.D, bib *bitio.Buffer, sb *strings.Builder, par
if bib != nil {
// TODO: helper?
if _, err := bitio.Copy(bib, br); err != nil {
d.IOPanic(err, "bitio.Copy")
d.IOPanic(err, "value", "bitio.Copy")
}
}
if unusedBitsCount > 0 {
@ -292,7 +292,7 @@ func decodeASN1BERValue(d *decode.D, bib *bitio.Buffer, sb *strings.Builder, par
if bib != nil {
// TODO: helper?
if _, err := bitio.Copy(bib, br); err != nil {
d.IOPanic(err, "bitio.Copy")
d.IOPanic(err, "value", "bitio.Copy")
}
}
case class == classUniversal && tag == universalTypeNull:

View File

@ -1,397 +1,397 @@
$ fq -d bytes 'from_pem | asn1_ber | dv' ed25519.cer
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x182.7 (387)
0x0000|30 |0 | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0000|30 |0 | form: "constructed" (1) 0x0.2-0x0.2 (0.1)
0x0000|30 |0 | tag: "sequence" (0x10) 0x0.3-0x0.7 (0.5)
0x0000| 82 01 7f | ... | length: 383 0x1-0x3.7 (3)
| | | constructed[0:3]: 0x4-0x182.7 (383)
| | | [0]{}: object 0x4-0x138.7 (309)
0x0000| 30 | 0 | class: "universal" (0) 0x4-0x4.1 (0.2)
0x0000| 30 | 0 | form: "constructed" (1) 0x4.2-0x4.2 (0.1)
0x0000| 30 | 0 | tag: "sequence" (0x10) 0x4.3-0x4.7 (0.5)
0x0000| 82 01 31 | ..1 | length: 305 0x5-0x7.7 (3)
| | | constructed[0:8]: 0x8-0x138.7 (305)
| | | [0]{}: object 0x8-0xc.7 (5)
0x0000| a0 | . | class: "context" (2) 0x8-0x8.1 (0.2)
0x0000| a0 | . | form: "constructed" (1) 0x8.2-0x8.2 (0.1)
0x0000| a0 | . | tag: 0 0x8.3-0x8.7 (0.5)
0x0000| 03 | . | length: 3 0x9-0x9.7 (1)
| | | constructed[0:1]: 0xa-0xc.7 (3)
| | | [0]{}: object 0xa-0xc.7 (3)
0x0000| 02 | . | class: "universal" (0) 0xa-0xa.1 (0.2)
0x0000| 02 | . | form: "primitive" (0) 0xa.2-0xa.2 (0.1)
0x0000| 02 | . | tag: "integer" (0x2) 0xa.3-0xa.7 (0.5)
0x0000| 01 | . | length: 1 0xb-0xb.7 (1)
0x0000| 02 | . | value: 2 0xc-0xc.7 (1)
| | | [1]{}: object 0xd-0x22.7 (22)
0x0000| 02 | . | class: "universal" (0) 0xd-0xd.1 (0.2)
0x0000| 02 | . | form: "primitive" (0) 0xd.2-0xd.2 (0.1)
0x0000| 02 | . | tag: "integer" (0x2) 0xd.3-0xd.7 (0.5)
0x0000| 14 | . | length: 20 0xe-0xe.7 (1)
0x0000| 7c| || value: 711090297755414526861352146244170174161660335942 0xf-0x22.7 (20)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x183 (387)
0x0000|30 |0 | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0000|30 |0 | form: "constructed" (1) 0x0.2-0x0.3 (0.1)
0x0000|30 |0 | tag: "sequence" (0x10) 0x0.3-0x1 (0.5)
0x0000| 82 01 7f | ... | length: 383 0x1-0x4 (3)
| | | constructed[0:3]: 0x4-0x183 (383)
| | | [0]{}: object 0x4-0x139 (309)
0x0000| 30 | 0 | class: "universal" (0) 0x4-0x4.2 (0.2)
0x0000| 30 | 0 | form: "constructed" (1) 0x4.2-0x4.3 (0.1)
0x0000| 30 | 0 | tag: "sequence" (0x10) 0x4.3-0x5 (0.5)
0x0000| 82 01 31 | ..1 | length: 305 0x5-0x8 (3)
| | | constructed[0:8]: 0x8-0x139 (305)
| | | [0]{}: object 0x8-0xd (5)
0x0000| a0 | . | class: "context" (2) 0x8-0x8.2 (0.2)
0x0000| a0 | . | form: "constructed" (1) 0x8.2-0x8.3 (0.1)
0x0000| a0 | . | tag: 0 0x8.3-0x9 (0.5)
0x0000| 03 | . | length: 3 0x9-0xa (1)
| | | constructed[0:1]: 0xa-0xd (3)
| | | [0]{}: object 0xa-0xd (3)
0x0000| 02 | . | class: "universal" (0) 0xa-0xa.2 (0.2)
0x0000| 02 | . | form: "primitive" (0) 0xa.2-0xa.3 (0.1)
0x0000| 02 | . | tag: "integer" (0x2) 0xa.3-0xb (0.5)
0x0000| 01 | . | length: 1 0xb-0xc (1)
0x0000| 02 | . | value: 2 0xc-0xd (1)
| | | [1]{}: object 0xd-0x23 (22)
0x0000| 02 | . | class: "universal" (0) 0xd-0xd.2 (0.2)
0x0000| 02 | . | form: "primitive" (0) 0xd.2-0xd.3 (0.1)
0x0000| 02 | . | tag: "integer" (0x2) 0xd.3-0xe (0.5)
0x0000| 14 | . | length: 20 0xe-0xf (1)
0x0000| 7c| || value: 711090297755414526861352146244170174161660335942 0xf-0x23 (20)
0x0010|8e 64 49 d7 0e d9 2d 3e 2e 4a 5d 2f 76 f6 55 42|.dI...->.J]/v.UB|
0x0020|46 d7 46 |F.F |
| | | [2]{}: object 0x23-0x29.7 (7)
0x0020| 30 | 0 | class: "universal" (0) 0x23-0x23.1 (0.2)
0x0020| 30 | 0 | form: "constructed" (1) 0x23.2-0x23.2 (0.1)
0x0020| 30 | 0 | tag: "sequence" (0x10) 0x23.3-0x23.7 (0.5)
0x0020| 05 | . | length: 5 0x24-0x24.7 (1)
| | | constructed[0:1]: 0x25-0x29.7 (5)
| | | [0]{}: object 0x25-0x29.7 (5)
0x0020| 06 | . | class: "universal" (0) 0x25-0x25.1 (0.2)
0x0020| 06 | . | form: "primitive" (0) 0x25.2-0x25.2 (0.1)
0x0020| 06 | . | tag: "object_identifier" (0x6) 0x25.3-0x25.7 (0.5)
0x0020| 03 | . | length: 3 0x26-0x26.7 (1)
| | | value[0:4]: 0x27-0x29.7 (3)
0x0020| 2b | + | [0]: 1 oid 0x27-0x27.7 (1)
0x0020| 2b | + | [1]: 3 oid 0x27-0x27.7 (1)
0x0020| 65 | e | [2]: 101 oid 0x28-0x28.7 (1)
0x0020| 70 | p | [3]: 112 oid 0x29-0x29.7 (1)
| | | [3]{}: object 0x2a-0x60.7 (55)
0x0020| 30 | 0 | class: "universal" (0) 0x2a-0x2a.1 (0.2)
0x0020| 30 | 0 | form: "constructed" (1) 0x2a.2-0x2a.2 (0.1)
0x0020| 30 | 0 | tag: "sequence" (0x10) 0x2a.3-0x2a.7 (0.5)
0x0020| 35 | 5 | length: 53 0x2b-0x2b.7 (1)
| | | constructed[0:3]: 0x2c-0x60.7 (53)
| | | [0]{}: object 0x2c-0x38.7 (13)
0x0020| 31 | 1 | class: "universal" (0) 0x2c-0x2c.1 (0.2)
0x0020| 31 | 1 | form: "constructed" (1) 0x2c.2-0x2c.2 (0.1)
0x0020| 31 | 1 | tag: "set" (0x11) 0x2c.3-0x2c.7 (0.5)
0x0020| 0b | . | length: 11 0x2d-0x2d.7 (1)
| | | constructed[0:1]: 0x2e-0x38.7 (11)
| | | [0]{}: object 0x2e-0x38.7 (11)
0x0020| 30 | 0 | class: "universal" (0) 0x2e-0x2e.1 (0.2)
0x0020| 30 | 0 | form: "constructed" (1) 0x2e.2-0x2e.2 (0.1)
0x0020| 30 | 0 | tag: "sequence" (0x10) 0x2e.3-0x2e.7 (0.5)
0x0020| 09| .| length: 9 0x2f-0x2f.7 (1)
| | | constructed[0:2]: 0x30-0x38.7 (9)
| | | [0]{}: object 0x30-0x34.7 (5)
0x0030|06 |. | class: "universal" (0) 0x30-0x30.1 (0.2)
0x0030|06 |. | form: "primitive" (0) 0x30.2-0x30.2 (0.1)
0x0030|06 |. | tag: "object_identifier" (0x6) 0x30.3-0x30.7 (0.5)
0x0030| 03 | . | length: 3 0x31-0x31.7 (1)
| | | value[0:4]: 0x32-0x34.7 (3)
0x0030| 55 | U | [0]: 2 oid 0x32-0x32.7 (1)
0x0030| 55 | U | [1]: 5 oid 0x32-0x32.7 (1)
0x0030| 04 | . | [2]: 4 oid 0x33-0x33.7 (1)
0x0030| 06 | . | [3]: 6 oid 0x34-0x34.7 (1)
| | | [1]{}: object 0x35-0x38.7 (4)
0x0030| 13 | . | class: "universal" (0) 0x35-0x35.1 (0.2)
0x0030| 13 | . | form: "primitive" (0) 0x35.2-0x35.2 (0.1)
0x0030| 13 | . | tag: "printable_string" (0x13) 0x35.3-0x35.7 (0.5)
0x0030| 02 | . | length: 2 0x36-0x36.7 (1)
0x0030| 49 54 | IT | value: "IT" 0x37-0x38.7 (2)
| | | [1]{}: object 0x39-0x49.7 (17)
0x0030| 31 | 1 | class: "universal" (0) 0x39-0x39.1 (0.2)
0x0030| 31 | 1 | form: "constructed" (1) 0x39.2-0x39.2 (0.1)
0x0030| 31 | 1 | tag: "set" (0x11) 0x39.3-0x39.7 (0.5)
0x0030| 0f | . | length: 15 0x3a-0x3a.7 (1)
| | | constructed[0:1]: 0x3b-0x49.7 (15)
| | | [0]{}: object 0x3b-0x49.7 (15)
0x0030| 30 | 0 | class: "universal" (0) 0x3b-0x3b.1 (0.2)
0x0030| 30 | 0 | form: "constructed" (1) 0x3b.2-0x3b.2 (0.1)
0x0030| 30 | 0 | tag: "sequence" (0x10) 0x3b.3-0x3b.7 (0.5)
0x0030| 0d | . | length: 13 0x3c-0x3c.7 (1)
| | | constructed[0:2]: 0x3d-0x49.7 (13)
| | | [0]{}: object 0x3d-0x41.7 (5)
0x0030| 06 | . | class: "universal" (0) 0x3d-0x3d.1 (0.2)
0x0030| 06 | . | form: "primitive" (0) 0x3d.2-0x3d.2 (0.1)
0x0030| 06 | . | tag: "object_identifier" (0x6) 0x3d.3-0x3d.7 (0.5)
0x0030| 03 | . | length: 3 0x3e-0x3e.7 (1)
| | | value[0:4]: 0x3f-0x41.7 (3)
0x0030| 55| U| [0]: 2 oid 0x3f-0x3f.7 (1)
0x0030| 55| U| [1]: 5 oid 0x3f-0x3f.7 (1)
0x0040|04 |. | [2]: 4 oid 0x40-0x40.7 (1)
0x0040| 07 | . | [3]: 7 oid 0x41-0x41.7 (1)
| | | [1]{}: object 0x42-0x49.7 (8)
0x0040| 0c | . | class: "universal" (0) 0x42-0x42.1 (0.2)
0x0040| 0c | . | form: "primitive" (0) 0x42.2-0x42.2 (0.1)
0x0040| 0c | . | tag: "utf8_string" (0xc) 0x42.3-0x42.7 (0.5)
0x0040| 06 | . | length: 6 0x43-0x43.7 (1)
0x0040| 4d 69 6c 61 6e 6f | Milano | value: "Milano" 0x44-0x49.7 (6)
| | | [2]{}: object 0x4a-0x60.7 (23)
0x0040| 31 | 1 | class: "universal" (0) 0x4a-0x4a.1 (0.2)
0x0040| 31 | 1 | form: "constructed" (1) 0x4a.2-0x4a.2 (0.1)
0x0040| 31 | 1 | tag: "set" (0x11) 0x4a.3-0x4a.7 (0.5)
0x0040| 15 | . | length: 21 0x4b-0x4b.7 (1)
| | | constructed[0:1]: 0x4c-0x60.7 (21)
| | | [0]{}: object 0x4c-0x60.7 (21)
0x0040| 30 | 0 | class: "universal" (0) 0x4c-0x4c.1 (0.2)
0x0040| 30 | 0 | form: "constructed" (1) 0x4c.2-0x4c.2 (0.1)
0x0040| 30 | 0 | tag: "sequence" (0x10) 0x4c.3-0x4c.7 (0.5)
0x0040| 13 | . | length: 19 0x4d-0x4d.7 (1)
| | | constructed[0:2]: 0x4e-0x60.7 (19)
| | | [0]{}: object 0x4e-0x52.7 (5)
0x0040| 06 | . | class: "universal" (0) 0x4e-0x4e.1 (0.2)
0x0040| 06 | . | form: "primitive" (0) 0x4e.2-0x4e.2 (0.1)
0x0040| 06 | . | tag: "object_identifier" (0x6) 0x4e.3-0x4e.7 (0.5)
0x0040| 03| .| length: 3 0x4f-0x4f.7 (1)
| | | value[0:4]: 0x50-0x52.7 (3)
0x0050|55 |U | [0]: 2 oid 0x50-0x50.7 (1)
0x0050|55 |U | [1]: 5 oid 0x50-0x50.7 (1)
0x0050| 04 | . | [2]: 4 oid 0x51-0x51.7 (1)
0x0050| 03 | . | [3]: 3 oid 0x52-0x52.7 (1)
| | | [1]{}: object 0x53-0x60.7 (14)
0x0050| 0c | . | class: "universal" (0) 0x53-0x53.1 (0.2)
0x0050| 0c | . | form: "primitive" (0) 0x53.2-0x53.2 (0.1)
0x0050| 0c | . | tag: "utf8_string" (0xc) 0x53.3-0x53.7 (0.5)
0x0050| 0c | . | length: 12 0x54-0x54.7 (1)
0x0050| 54 65 73 74 20 65 64 32 35 35 31| Test ed2551| value: "Test ed25519" 0x55-0x60.7 (12)
| | | [2]{}: object 0x23-0x2a (7)
0x0020| 30 | 0 | class: "universal" (0) 0x23-0x23.2 (0.2)
0x0020| 30 | 0 | form: "constructed" (1) 0x23.2-0x23.3 (0.1)
0x0020| 30 | 0 | tag: "sequence" (0x10) 0x23.3-0x24 (0.5)
0x0020| 05 | . | length: 5 0x24-0x25 (1)
| | | constructed[0:1]: 0x25-0x2a (5)
| | | [0]{}: object 0x25-0x2a (5)
0x0020| 06 | . | class: "universal" (0) 0x25-0x25.2 (0.2)
0x0020| 06 | . | form: "primitive" (0) 0x25.2-0x25.3 (0.1)
0x0020| 06 | . | tag: "object_identifier" (0x6) 0x25.3-0x26 (0.5)
0x0020| 03 | . | length: 3 0x26-0x27 (1)
| | | value[0:4]: 0x27-0x2a (3)
0x0020| 2b | + | [0]: 1 oid 0x27-0x28 (1)
0x0020| 2b | + | [1]: 3 oid 0x27-0x28 (1)
0x0020| 65 | e | [2]: 101 oid 0x28-0x29 (1)
0x0020| 70 | p | [3]: 112 oid 0x29-0x2a (1)
| | | [3]{}: object 0x2a-0x61 (55)
0x0020| 30 | 0 | class: "universal" (0) 0x2a-0x2a.2 (0.2)
0x0020| 30 | 0 | form: "constructed" (1) 0x2a.2-0x2a.3 (0.1)
0x0020| 30 | 0 | tag: "sequence" (0x10) 0x2a.3-0x2b (0.5)
0x0020| 35 | 5 | length: 53 0x2b-0x2c (1)
| | | constructed[0:3]: 0x2c-0x61 (53)
| | | [0]{}: object 0x2c-0x39 (13)
0x0020| 31 | 1 | class: "universal" (0) 0x2c-0x2c.2 (0.2)
0x0020| 31 | 1 | form: "constructed" (1) 0x2c.2-0x2c.3 (0.1)
0x0020| 31 | 1 | tag: "set" (0x11) 0x2c.3-0x2d (0.5)
0x0020| 0b | . | length: 11 0x2d-0x2e (1)
| | | constructed[0:1]: 0x2e-0x39 (11)
| | | [0]{}: object 0x2e-0x39 (11)
0x0020| 30 | 0 | class: "universal" (0) 0x2e-0x2e.2 (0.2)
0x0020| 30 | 0 | form: "constructed" (1) 0x2e.2-0x2e.3 (0.1)
0x0020| 30 | 0 | tag: "sequence" (0x10) 0x2e.3-0x2f (0.5)
0x0020| 09| .| length: 9 0x2f-0x30 (1)
| | | constructed[0:2]: 0x30-0x39 (9)
| | | [0]{}: object 0x30-0x35 (5)
0x0030|06 |. | class: "universal" (0) 0x30-0x30.2 (0.2)
0x0030|06 |. | form: "primitive" (0) 0x30.2-0x30.3 (0.1)
0x0030|06 |. | tag: "object_identifier" (0x6) 0x30.3-0x31 (0.5)
0x0030| 03 | . | length: 3 0x31-0x32 (1)
| | | value[0:4]: 0x32-0x35 (3)
0x0030| 55 | U | [0]: 2 oid 0x32-0x33 (1)
0x0030| 55 | U | [1]: 5 oid 0x32-0x33 (1)
0x0030| 04 | . | [2]: 4 oid 0x33-0x34 (1)
0x0030| 06 | . | [3]: 6 oid 0x34-0x35 (1)
| | | [1]{}: object 0x35-0x39 (4)
0x0030| 13 | . | class: "universal" (0) 0x35-0x35.2 (0.2)
0x0030| 13 | . | form: "primitive" (0) 0x35.2-0x35.3 (0.1)
0x0030| 13 | . | tag: "printable_string" (0x13) 0x35.3-0x36 (0.5)
0x0030| 02 | . | length: 2 0x36-0x37 (1)
0x0030| 49 54 | IT | value: "IT" 0x37-0x39 (2)
| | | [1]{}: object 0x39-0x4a (17)
0x0030| 31 | 1 | class: "universal" (0) 0x39-0x39.2 (0.2)
0x0030| 31 | 1 | form: "constructed" (1) 0x39.2-0x39.3 (0.1)
0x0030| 31 | 1 | tag: "set" (0x11) 0x39.3-0x3a (0.5)
0x0030| 0f | . | length: 15 0x3a-0x3b (1)
| | | constructed[0:1]: 0x3b-0x4a (15)
| | | [0]{}: object 0x3b-0x4a (15)
0x0030| 30 | 0 | class: "universal" (0) 0x3b-0x3b.2 (0.2)
0x0030| 30 | 0 | form: "constructed" (1) 0x3b.2-0x3b.3 (0.1)
0x0030| 30 | 0 | tag: "sequence" (0x10) 0x3b.3-0x3c (0.5)
0x0030| 0d | . | length: 13 0x3c-0x3d (1)
| | | constructed[0:2]: 0x3d-0x4a (13)
| | | [0]{}: object 0x3d-0x42 (5)
0x0030| 06 | . | class: "universal" (0) 0x3d-0x3d.2 (0.2)
0x0030| 06 | . | form: "primitive" (0) 0x3d.2-0x3d.3 (0.1)
0x0030| 06 | . | tag: "object_identifier" (0x6) 0x3d.3-0x3e (0.5)
0x0030| 03 | . | length: 3 0x3e-0x3f (1)
| | | value[0:4]: 0x3f-0x42 (3)
0x0030| 55| U| [0]: 2 oid 0x3f-0x40 (1)
0x0030| 55| U| [1]: 5 oid 0x3f-0x40 (1)
0x0040|04 |. | [2]: 4 oid 0x40-0x41 (1)
0x0040| 07 | . | [3]: 7 oid 0x41-0x42 (1)
| | | [1]{}: object 0x42-0x4a (8)
0x0040| 0c | . | class: "universal" (0) 0x42-0x42.2 (0.2)
0x0040| 0c | . | form: "primitive" (0) 0x42.2-0x42.3 (0.1)
0x0040| 0c | . | tag: "utf8_string" (0xc) 0x42.3-0x43 (0.5)
0x0040| 06 | . | length: 6 0x43-0x44 (1)
0x0040| 4d 69 6c 61 6e 6f | Milano | value: "Milano" 0x44-0x4a (6)
| | | [2]{}: object 0x4a-0x61 (23)
0x0040| 31 | 1 | class: "universal" (0) 0x4a-0x4a.2 (0.2)
0x0040| 31 | 1 | form: "constructed" (1) 0x4a.2-0x4a.3 (0.1)
0x0040| 31 | 1 | tag: "set" (0x11) 0x4a.3-0x4b (0.5)
0x0040| 15 | . | length: 21 0x4b-0x4c (1)
| | | constructed[0:1]: 0x4c-0x61 (21)
| | | [0]{}: object 0x4c-0x61 (21)
0x0040| 30 | 0 | class: "universal" (0) 0x4c-0x4c.2 (0.2)
0x0040| 30 | 0 | form: "constructed" (1) 0x4c.2-0x4c.3 (0.1)
0x0040| 30 | 0 | tag: "sequence" (0x10) 0x4c.3-0x4d (0.5)
0x0040| 13 | . | length: 19 0x4d-0x4e (1)
| | | constructed[0:2]: 0x4e-0x61 (19)
| | | [0]{}: object 0x4e-0x53 (5)
0x0040| 06 | . | class: "universal" (0) 0x4e-0x4e.2 (0.2)
0x0040| 06 | . | form: "primitive" (0) 0x4e.2-0x4e.3 (0.1)
0x0040| 06 | . | tag: "object_identifier" (0x6) 0x4e.3-0x4f (0.5)
0x0040| 03| .| length: 3 0x4f-0x50 (1)
| | | value[0:4]: 0x50-0x53 (3)
0x0050|55 |U | [0]: 2 oid 0x50-0x51 (1)
0x0050|55 |U | [1]: 5 oid 0x50-0x51 (1)
0x0050| 04 | . | [2]: 4 oid 0x51-0x52 (1)
0x0050| 03 | . | [3]: 3 oid 0x52-0x53 (1)
| | | [1]{}: object 0x53-0x61 (14)
0x0050| 0c | . | class: "universal" (0) 0x53-0x53.2 (0.2)
0x0050| 0c | . | form: "primitive" (0) 0x53.2-0x53.3 (0.1)
0x0050| 0c | . | tag: "utf8_string" (0xc) 0x53.3-0x54 (0.5)
0x0050| 0c | . | length: 12 0x54-0x55 (1)
0x0050| 54 65 73 74 20 65 64 32 35 35 31| Test ed2551| value: "Test ed25519" 0x55-0x61 (12)
0x0060|39 |9 |
| | | [4]{}: object 0x61-0x80.7 (32)
0x0060| 30 | 0 | class: "universal" (0) 0x61-0x61.1 (0.2)
0x0060| 30 | 0 | form: "constructed" (1) 0x61.2-0x61.2 (0.1)
0x0060| 30 | 0 | tag: "sequence" (0x10) 0x61.3-0x61.7 (0.5)
0x0060| 1e | . | length: 30 0x62-0x62.7 (1)
| | | constructed[0:2]: 0x63-0x80.7 (30)
| | | [0]{}: object 0x63-0x71.7 (15)
0x0060| 17 | . | class: "universal" (0) 0x63-0x63.1 (0.2)
0x0060| 17 | . | form: "primitive" (0) 0x63.2-0x63.2 (0.1)
0x0060| 17 | . | tag: "utc_time" (0x17) 0x63.3-0x63.7 (0.5)
0x0060| 0d | . | length: 13 0x64-0x64.7 (1)
0x0060| 32 30 30 39 30 32 31 33 32 35 32| 20090213252| value: "200902132526Z" 0x65-0x71.7 (13)
| | | [4]{}: object 0x61-0x81 (32)
0x0060| 30 | 0 | class: "universal" (0) 0x61-0x61.2 (0.2)
0x0060| 30 | 0 | form: "constructed" (1) 0x61.2-0x61.3 (0.1)
0x0060| 30 | 0 | tag: "sequence" (0x10) 0x61.3-0x62 (0.5)
0x0060| 1e | . | length: 30 0x62-0x63 (1)
| | | constructed[0:2]: 0x63-0x81 (30)
| | | [0]{}: object 0x63-0x72 (15)
0x0060| 17 | . | class: "universal" (0) 0x63-0x63.2 (0.2)
0x0060| 17 | . | form: "primitive" (0) 0x63.2-0x63.3 (0.1)
0x0060| 17 | . | tag: "utc_time" (0x17) 0x63.3-0x64 (0.5)
0x0060| 0d | . | length: 13 0x64-0x65 (1)
0x0060| 32 30 30 39 30 32 31 33 32 35 32| 20090213252| value: "200902132526Z" 0x65-0x72 (13)
0x0070|36 5a |6Z |
| | | [1]{}: object 0x72-0x80.7 (15)
0x0070| 17 | . | class: "universal" (0) 0x72-0x72.1 (0.2)
0x0070| 17 | . | form: "primitive" (0) 0x72.2-0x72.2 (0.1)
0x0070| 17 | . | tag: "utc_time" (0x17) 0x72.3-0x72.7 (0.5)
0x0070| 0d | . | length: 13 0x73-0x73.7 (1)
0x0070| 33 30 30 39 30 32 31 33 32 35 32 36| 300902132526| value: "300902132526Z" 0x74-0x80.7 (13)
| | | [1]{}: object 0x72-0x81 (15)
0x0070| 17 | . | class: "universal" (0) 0x72-0x72.2 (0.2)
0x0070| 17 | . | form: "primitive" (0) 0x72.2-0x72.3 (0.1)
0x0070| 17 | . | tag: "utc_time" (0x17) 0x72.3-0x73 (0.5)
0x0070| 0d | . | length: 13 0x73-0x74 (1)
0x0070| 33 30 30 39 30 32 31 33 32 35 32 36| 300902132526| value: "300902132526Z" 0x74-0x81 (13)
0x0080|5a |Z |
| | | [5]{}: object 0x81-0xb7.7 (55)
0x0080| 30 | 0 | class: "universal" (0) 0x81-0x81.1 (0.2)
0x0080| 30 | 0 | form: "constructed" (1) 0x81.2-0x81.2 (0.1)
0x0080| 30 | 0 | tag: "sequence" (0x10) 0x81.3-0x81.7 (0.5)
0x0080| 35 | 5 | length: 53 0x82-0x82.7 (1)
| | | constructed[0:3]: 0x83-0xb7.7 (53)
| | | [0]{}: object 0x83-0x8f.7 (13)
0x0080| 31 | 1 | class: "universal" (0) 0x83-0x83.1 (0.2)
0x0080| 31 | 1 | form: "constructed" (1) 0x83.2-0x83.2 (0.1)
0x0080| 31 | 1 | tag: "set" (0x11) 0x83.3-0x83.7 (0.5)
0x0080| 0b | . | length: 11 0x84-0x84.7 (1)
| | | constructed[0:1]: 0x85-0x8f.7 (11)
| | | [0]{}: object 0x85-0x8f.7 (11)
0x0080| 30 | 0 | class: "universal" (0) 0x85-0x85.1 (0.2)
0x0080| 30 | 0 | form: "constructed" (1) 0x85.2-0x85.2 (0.1)
0x0080| 30 | 0 | tag: "sequence" (0x10) 0x85.3-0x85.7 (0.5)
0x0080| 09 | . | length: 9 0x86-0x86.7 (1)
| | | constructed[0:2]: 0x87-0x8f.7 (9)
| | | [0]{}: object 0x87-0x8b.7 (5)
0x0080| 06 | . | class: "universal" (0) 0x87-0x87.1 (0.2)
0x0080| 06 | . | form: "primitive" (0) 0x87.2-0x87.2 (0.1)
0x0080| 06 | . | tag: "object_identifier" (0x6) 0x87.3-0x87.7 (0.5)
0x0080| 03 | . | length: 3 0x88-0x88.7 (1)
| | | value[0:4]: 0x89-0x8b.7 (3)
0x0080| 55 | U | [0]: 2 oid 0x89-0x89.7 (1)
0x0080| 55 | U | [1]: 5 oid 0x89-0x89.7 (1)
0x0080| 04 | . | [2]: 4 oid 0x8a-0x8a.7 (1)
0x0080| 06 | . | [3]: 6 oid 0x8b-0x8b.7 (1)
| | | [1]{}: object 0x8c-0x8f.7 (4)
0x0080| 13 | . | class: "universal" (0) 0x8c-0x8c.1 (0.2)
0x0080| 13 | . | form: "primitive" (0) 0x8c.2-0x8c.2 (0.1)
0x0080| 13 | . | tag: "printable_string" (0x13) 0x8c.3-0x8c.7 (0.5)
0x0080| 02 | . | length: 2 0x8d-0x8d.7 (1)
0x0080| 49 54| IT| value: "IT" 0x8e-0x8f.7 (2)
| | | [1]{}: object 0x90-0xa0.7 (17)
0x0090|31 |1 | class: "universal" (0) 0x90-0x90.1 (0.2)
0x0090|31 |1 | form: "constructed" (1) 0x90.2-0x90.2 (0.1)
0x0090|31 |1 | tag: "set" (0x11) 0x90.3-0x90.7 (0.5)
0x0090| 0f | . | length: 15 0x91-0x91.7 (1)
| | | constructed[0:1]: 0x92-0xa0.7 (15)
| | | [0]{}: object 0x92-0xa0.7 (15)
0x0090| 30 | 0 | class: "universal" (0) 0x92-0x92.1 (0.2)
0x0090| 30 | 0 | form: "constructed" (1) 0x92.2-0x92.2 (0.1)
0x0090| 30 | 0 | tag: "sequence" (0x10) 0x92.3-0x92.7 (0.5)
0x0090| 0d | . | length: 13 0x93-0x93.7 (1)
| | | constructed[0:2]: 0x94-0xa0.7 (13)
| | | [0]{}: object 0x94-0x98.7 (5)
0x0090| 06 | . | class: "universal" (0) 0x94-0x94.1 (0.2)
0x0090| 06 | . | form: "primitive" (0) 0x94.2-0x94.2 (0.1)
0x0090| 06 | . | tag: "object_identifier" (0x6) 0x94.3-0x94.7 (0.5)
0x0090| 03 | . | length: 3 0x95-0x95.7 (1)
| | | value[0:4]: 0x96-0x98.7 (3)
0x0090| 55 | U | [0]: 2 oid 0x96-0x96.7 (1)
0x0090| 55 | U | [1]: 5 oid 0x96-0x96.7 (1)
0x0090| 04 | . | [2]: 4 oid 0x97-0x97.7 (1)
0x0090| 07 | . | [3]: 7 oid 0x98-0x98.7 (1)
| | | [1]{}: object 0x99-0xa0.7 (8)
0x0090| 0c | . | class: "universal" (0) 0x99-0x99.1 (0.2)
0x0090| 0c | . | form: "primitive" (0) 0x99.2-0x99.2 (0.1)
0x0090| 0c | . | tag: "utf8_string" (0xc) 0x99.3-0x99.7 (0.5)
0x0090| 06 | . | length: 6 0x9a-0x9a.7 (1)
0x0090| 4d 69 6c 61 6e| Milan| value: "Milano" 0x9b-0xa0.7 (6)
| | | [5]{}: object 0x81-0xb8 (55)
0x0080| 30 | 0 | class: "universal" (0) 0x81-0x81.2 (0.2)
0x0080| 30 | 0 | form: "constructed" (1) 0x81.2-0x81.3 (0.1)
0x0080| 30 | 0 | tag: "sequence" (0x10) 0x81.3-0x82 (0.5)
0x0080| 35 | 5 | length: 53 0x82-0x83 (1)
| | | constructed[0:3]: 0x83-0xb8 (53)
| | | [0]{}: object 0x83-0x90 (13)
0x0080| 31 | 1 | class: "universal" (0) 0x83-0x83.2 (0.2)
0x0080| 31 | 1 | form: "constructed" (1) 0x83.2-0x83.3 (0.1)
0x0080| 31 | 1 | tag: "set" (0x11) 0x83.3-0x84 (0.5)
0x0080| 0b | . | length: 11 0x84-0x85 (1)
| | | constructed[0:1]: 0x85-0x90 (11)
| | | [0]{}: object 0x85-0x90 (11)
0x0080| 30 | 0 | class: "universal" (0) 0x85-0x85.2 (0.2)
0x0080| 30 | 0 | form: "constructed" (1) 0x85.2-0x85.3 (0.1)
0x0080| 30 | 0 | tag: "sequence" (0x10) 0x85.3-0x86 (0.5)
0x0080| 09 | . | length: 9 0x86-0x87 (1)
| | | constructed[0:2]: 0x87-0x90 (9)
| | | [0]{}: object 0x87-0x8c (5)
0x0080| 06 | . | class: "universal" (0) 0x87-0x87.2 (0.2)
0x0080| 06 | . | form: "primitive" (0) 0x87.2-0x87.3 (0.1)
0x0080| 06 | . | tag: "object_identifier" (0x6) 0x87.3-0x88 (0.5)
0x0080| 03 | . | length: 3 0x88-0x89 (1)
| | | value[0:4]: 0x89-0x8c (3)
0x0080| 55 | U | [0]: 2 oid 0x89-0x8a (1)
0x0080| 55 | U | [1]: 5 oid 0x89-0x8a (1)
0x0080| 04 | . | [2]: 4 oid 0x8a-0x8b (1)
0x0080| 06 | . | [3]: 6 oid 0x8b-0x8c (1)
| | | [1]{}: object 0x8c-0x90 (4)
0x0080| 13 | . | class: "universal" (0) 0x8c-0x8c.2 (0.2)
0x0080| 13 | . | form: "primitive" (0) 0x8c.2-0x8c.3 (0.1)
0x0080| 13 | . | tag: "printable_string" (0x13) 0x8c.3-0x8d (0.5)
0x0080| 02 | . | length: 2 0x8d-0x8e (1)
0x0080| 49 54| IT| value: "IT" 0x8e-0x90 (2)
| | | [1]{}: object 0x90-0xa1 (17)
0x0090|31 |1 | class: "universal" (0) 0x90-0x90.2 (0.2)
0x0090|31 |1 | form: "constructed" (1) 0x90.2-0x90.3 (0.1)
0x0090|31 |1 | tag: "set" (0x11) 0x90.3-0x91 (0.5)
0x0090| 0f | . | length: 15 0x91-0x92 (1)
| | | constructed[0:1]: 0x92-0xa1 (15)
| | | [0]{}: object 0x92-0xa1 (15)
0x0090| 30 | 0 | class: "universal" (0) 0x92-0x92.2 (0.2)
0x0090| 30 | 0 | form: "constructed" (1) 0x92.2-0x92.3 (0.1)
0x0090| 30 | 0 | tag: "sequence" (0x10) 0x92.3-0x93 (0.5)
0x0090| 0d | . | length: 13 0x93-0x94 (1)
| | | constructed[0:2]: 0x94-0xa1 (13)
| | | [0]{}: object 0x94-0x99 (5)
0x0090| 06 | . | class: "universal" (0) 0x94-0x94.2 (0.2)
0x0090| 06 | . | form: "primitive" (0) 0x94.2-0x94.3 (0.1)
0x0090| 06 | . | tag: "object_identifier" (0x6) 0x94.3-0x95 (0.5)
0x0090| 03 | . | length: 3 0x95-0x96 (1)
| | | value[0:4]: 0x96-0x99 (3)
0x0090| 55 | U | [0]: 2 oid 0x96-0x97 (1)
0x0090| 55 | U | [1]: 5 oid 0x96-0x97 (1)
0x0090| 04 | . | [2]: 4 oid 0x97-0x98 (1)
0x0090| 07 | . | [3]: 7 oid 0x98-0x99 (1)
| | | [1]{}: object 0x99-0xa1 (8)
0x0090| 0c | . | class: "universal" (0) 0x99-0x99.2 (0.2)
0x0090| 0c | . | form: "primitive" (0) 0x99.2-0x99.3 (0.1)
0x0090| 0c | . | tag: "utf8_string" (0xc) 0x99.3-0x9a (0.5)
0x0090| 06 | . | length: 6 0x9a-0x9b (1)
0x0090| 4d 69 6c 61 6e| Milan| value: "Milano" 0x9b-0xa1 (6)
0x00a0|6f |o |
| | | [2]{}: object 0xa1-0xb7.7 (23)
0x00a0| 31 | 1 | class: "universal" (0) 0xa1-0xa1.1 (0.2)
0x00a0| 31 | 1 | form: "constructed" (1) 0xa1.2-0xa1.2 (0.1)
0x00a0| 31 | 1 | tag: "set" (0x11) 0xa1.3-0xa1.7 (0.5)
0x00a0| 15 | . | length: 21 0xa2-0xa2.7 (1)
| | | constructed[0:1]: 0xa3-0xb7.7 (21)
| | | [0]{}: object 0xa3-0xb7.7 (21)
0x00a0| 30 | 0 | class: "universal" (0) 0xa3-0xa3.1 (0.2)
0x00a0| 30 | 0 | form: "constructed" (1) 0xa3.2-0xa3.2 (0.1)
0x00a0| 30 | 0 | tag: "sequence" (0x10) 0xa3.3-0xa3.7 (0.5)
0x00a0| 13 | . | length: 19 0xa4-0xa4.7 (1)
| | | constructed[0:2]: 0xa5-0xb7.7 (19)
| | | [0]{}: object 0xa5-0xa9.7 (5)
0x00a0| 06 | . | class: "universal" (0) 0xa5-0xa5.1 (0.2)
0x00a0| 06 | . | form: "primitive" (0) 0xa5.2-0xa5.2 (0.1)
0x00a0| 06 | . | tag: "object_identifier" (0x6) 0xa5.3-0xa5.7 (0.5)
0x00a0| 03 | . | length: 3 0xa6-0xa6.7 (1)
| | | value[0:4]: 0xa7-0xa9.7 (3)
0x00a0| 55 | U | [0]: 2 oid 0xa7-0xa7.7 (1)
0x00a0| 55 | U | [1]: 5 oid 0xa7-0xa7.7 (1)
0x00a0| 04 | . | [2]: 4 oid 0xa8-0xa8.7 (1)
0x00a0| 03 | . | [3]: 3 oid 0xa9-0xa9.7 (1)
| | | [1]{}: object 0xaa-0xb7.7 (14)
0x00a0| 0c | . | class: "universal" (0) 0xaa-0xaa.1 (0.2)
0x00a0| 0c | . | form: "primitive" (0) 0xaa.2-0xaa.2 (0.1)
0x00a0| 0c | . | tag: "utf8_string" (0xc) 0xaa.3-0xaa.7 (0.5)
0x00a0| 0c | . | length: 12 0xab-0xab.7 (1)
0x00a0| 54 65 73 74| Test| value: "Test ed25519" 0xac-0xb7.7 (12)
| | | [2]{}: object 0xa1-0xb8 (23)
0x00a0| 31 | 1 | class: "universal" (0) 0xa1-0xa1.2 (0.2)
0x00a0| 31 | 1 | form: "constructed" (1) 0xa1.2-0xa1.3 (0.1)
0x00a0| 31 | 1 | tag: "set" (0x11) 0xa1.3-0xa2 (0.5)
0x00a0| 15 | . | length: 21 0xa2-0xa3 (1)
| | | constructed[0:1]: 0xa3-0xb8 (21)
| | | [0]{}: object 0xa3-0xb8 (21)
0x00a0| 30 | 0 | class: "universal" (0) 0xa3-0xa3.2 (0.2)
0x00a0| 30 | 0 | form: "constructed" (1) 0xa3.2-0xa3.3 (0.1)
0x00a0| 30 | 0 | tag: "sequence" (0x10) 0xa3.3-0xa4 (0.5)
0x00a0| 13 | . | length: 19 0xa4-0xa5 (1)
| | | constructed[0:2]: 0xa5-0xb8 (19)
| | | [0]{}: object 0xa5-0xaa (5)
0x00a0| 06 | . | class: "universal" (0) 0xa5-0xa5.2 (0.2)
0x00a0| 06 | . | form: "primitive" (0) 0xa5.2-0xa5.3 (0.1)
0x00a0| 06 | . | tag: "object_identifier" (0x6) 0xa5.3-0xa6 (0.5)
0x00a0| 03 | . | length: 3 0xa6-0xa7 (1)
| | | value[0:4]: 0xa7-0xaa (3)
0x00a0| 55 | U | [0]: 2 oid 0xa7-0xa8 (1)
0x00a0| 55 | U | [1]: 5 oid 0xa7-0xa8 (1)
0x00a0| 04 | . | [2]: 4 oid 0xa8-0xa9 (1)
0x00a0| 03 | . | [3]: 3 oid 0xa9-0xaa (1)
| | | [1]{}: object 0xaa-0xb8 (14)
0x00a0| 0c | . | class: "universal" (0) 0xaa-0xaa.2 (0.2)
0x00a0| 0c | . | form: "primitive" (0) 0xaa.2-0xaa.3 (0.1)
0x00a0| 0c | . | tag: "utf8_string" (0xc) 0xaa.3-0xab (0.5)
0x00a0| 0c | . | length: 12 0xab-0xac (1)
0x00a0| 54 65 73 74| Test| value: "Test ed25519" 0xac-0xb8 (12)
0x00b0|20 65 64 32 35 35 31 39 | ed25519 |
| | | [6]{}: object 0xb8-0xe3.7 (44)
0x00b0| 30 | 0 | class: "universal" (0) 0xb8-0xb8.1 (0.2)
0x00b0| 30 | 0 | form: "constructed" (1) 0xb8.2-0xb8.2 (0.1)
0x00b0| 30 | 0 | tag: "sequence" (0x10) 0xb8.3-0xb8.7 (0.5)
0x00b0| 2a | * | length: 42 0xb9-0xb9.7 (1)
| | | constructed[0:2]: 0xba-0xe3.7 (42)
| | | [0]{}: object 0xba-0xc0.7 (7)
0x00b0| 30 | 0 | class: "universal" (0) 0xba-0xba.1 (0.2)
0x00b0| 30 | 0 | form: "constructed" (1) 0xba.2-0xba.2 (0.1)
0x00b0| 30 | 0 | tag: "sequence" (0x10) 0xba.3-0xba.7 (0.5)
0x00b0| 05 | . | length: 5 0xbb-0xbb.7 (1)
| | | constructed[0:1]: 0xbc-0xc0.7 (5)
| | | [0]{}: object 0xbc-0xc0.7 (5)
0x00b0| 06 | . | class: "universal" (0) 0xbc-0xbc.1 (0.2)
0x00b0| 06 | . | form: "primitive" (0) 0xbc.2-0xbc.2 (0.1)
0x00b0| 06 | . | tag: "object_identifier" (0x6) 0xbc.3-0xbc.7 (0.5)
0x00b0| 03 | . | length: 3 0xbd-0xbd.7 (1)
| | | value[0:4]: 0xbe-0xc0.7 (3)
0x00b0| 2b | + | [0]: 1 oid 0xbe-0xbe.7 (1)
0x00b0| 2b | + | [1]: 3 oid 0xbe-0xbe.7 (1)
0x00b0| 65| e| [2]: 101 oid 0xbf-0xbf.7 (1)
0x00c0|70 |p | [3]: 112 oid 0xc0-0xc0.7 (1)
| | | [1]{}: object 0xc1-0xe3.7 (35)
0x00c0| 03 | . | class: "universal" (0) 0xc1-0xc1.1 (0.2)
0x00c0| 03 | . | form: "primitive" (0) 0xc1.2-0xc1.2 (0.1)
0x00c0| 03 | . | tag: "bit_string" (0x3) 0xc1.3-0xc1.7 (0.5)
0x00c0| 21 | ! | length: 33 0xc2-0xc2.7 (1)
0x00c0| 00 | . | unused_bits_count: 0 0xc3-0xc3.7 (1)
0x00c0| 3b a9 2f fd cb 17 66 de 40 a2 92 f7| ;./...f.@...| value: raw bits 0xc4-0xe3.7 (32)
| | | [6]{}: object 0xb8-0xe4 (44)
0x00b0| 30 | 0 | class: "universal" (0) 0xb8-0xb8.2 (0.2)
0x00b0| 30 | 0 | form: "constructed" (1) 0xb8.2-0xb8.3 (0.1)
0x00b0| 30 | 0 | tag: "sequence" (0x10) 0xb8.3-0xb9 (0.5)
0x00b0| 2a | * | length: 42 0xb9-0xba (1)
| | | constructed[0:2]: 0xba-0xe4 (42)
| | | [0]{}: object 0xba-0xc1 (7)
0x00b0| 30 | 0 | class: "universal" (0) 0xba-0xba.2 (0.2)
0x00b0| 30 | 0 | form: "constructed" (1) 0xba.2-0xba.3 (0.1)
0x00b0| 30 | 0 | tag: "sequence" (0x10) 0xba.3-0xbb (0.5)
0x00b0| 05 | . | length: 5 0xbb-0xbc (1)
| | | constructed[0:1]: 0xbc-0xc1 (5)
| | | [0]{}: object 0xbc-0xc1 (5)
0x00b0| 06 | . | class: "universal" (0) 0xbc-0xbc.2 (0.2)
0x00b0| 06 | . | form: "primitive" (0) 0xbc.2-0xbc.3 (0.1)
0x00b0| 06 | . | tag: "object_identifier" (0x6) 0xbc.3-0xbd (0.5)
0x00b0| 03 | . | length: 3 0xbd-0xbe (1)
| | | value[0:4]: 0xbe-0xc1 (3)
0x00b0| 2b | + | [0]: 1 oid 0xbe-0xbf (1)
0x00b0| 2b | + | [1]: 3 oid 0xbe-0xbf (1)
0x00b0| 65| e| [2]: 101 oid 0xbf-0xc0 (1)
0x00c0|70 |p | [3]: 112 oid 0xc0-0xc1 (1)
| | | [1]{}: object 0xc1-0xe4 (35)
0x00c0| 03 | . | class: "universal" (0) 0xc1-0xc1.2 (0.2)
0x00c0| 03 | . | form: "primitive" (0) 0xc1.2-0xc1.3 (0.1)
0x00c0| 03 | . | tag: "bit_string" (0x3) 0xc1.3-0xc2 (0.5)
0x00c0| 21 | ! | length: 33 0xc2-0xc3 (1)
0x00c0| 00 | . | unused_bits_count: 0 0xc3-0xc4 (1)
0x00c0| 3b a9 2f fd cb 17 66 de 40 a2 92 f7| ;./...f.@...| value: raw bits 0xc4-0xe4 (32)
0x00d0|93 de 30 f8 0a 23 a8 31 21 5d d0 07 d8 63 24 2e|..0..#.1!]...c$.|
0x00e0|ff 68 21 85 |.h!. |
| | | [7]{}: object 0xe4-0x138.7 (85)
0x00e0| a3 | . | class: "context" (2) 0xe4-0xe4.1 (0.2)
0x00e0| a3 | . | form: "constructed" (1) 0xe4.2-0xe4.2 (0.1)
0x00e0| a3 | . | tag: 3 0xe4.3-0xe4.7 (0.5)
0x00e0| 53 | S | length: 83 0xe5-0xe5.7 (1)
| | | constructed[0:1]: 0xe6-0x138.7 (83)
| | | [0]{}: object 0xe6-0x138.7 (83)
0x00e0| 30 | 0 | class: "universal" (0) 0xe6-0xe6.1 (0.2)
0x00e0| 30 | 0 | form: "constructed" (1) 0xe6.2-0xe6.2 (0.1)
0x00e0| 30 | 0 | tag: "sequence" (0x10) 0xe6.3-0xe6.7 (0.5)
0x00e0| 51 | Q | length: 81 0xe7-0xe7.7 (1)
| | | constructed[0:3]: 0xe8-0x138.7 (81)
| | | [0]{}: object 0xe8-0x106.7 (31)
0x00e0| 30 | 0 | class: "universal" (0) 0xe8-0xe8.1 (0.2)
0x00e0| 30 | 0 | form: "constructed" (1) 0xe8.2-0xe8.2 (0.1)
0x00e0| 30 | 0 | tag: "sequence" (0x10) 0xe8.3-0xe8.7 (0.5)
0x00e0| 1d | . | length: 29 0xe9-0xe9.7 (1)
| | | constructed[0:2]: 0xea-0x106.7 (29)
| | | [0]{}: object 0xea-0xee.7 (5)
0x00e0| 06 | . | class: "universal" (0) 0xea-0xea.1 (0.2)
0x00e0| 06 | . | form: "primitive" (0) 0xea.2-0xea.2 (0.1)
0x00e0| 06 | . | tag: "object_identifier" (0x6) 0xea.3-0xea.7 (0.5)
0x00e0| 03 | . | length: 3 0xeb-0xeb.7 (1)
| | | value[0:4]: 0xec-0xee.7 (3)
0x00e0| 55 | U | [0]: 2 oid 0xec-0xec.7 (1)
0x00e0| 55 | U | [1]: 5 oid 0xec-0xec.7 (1)
0x00e0| 1d | . | [2]: 29 oid 0xed-0xed.7 (1)
0x00e0| 0e | . | [3]: 14 oid 0xee-0xee.7 (1)
| | | [1]{}: object 0xef-0x106.7 (24)
0x00e0| 04| .| class: "universal" (0) 0xef-0xef.1 (0.2)
0x00e0| 04| .| form: "primitive" (0) 0xef.2-0xef.2 (0.1)
0x00e0| 04| .| tag: "octet_string" (0x4) 0xef.3-0xef.7 (0.5)
0x00f0|16 |. | length: 22 0xf0-0xf0.7 (1)
0x00f0| 04 14 6b a5 bd cf 9d fa 23 59 78 12 64 17 ae| ..k.....#Yx.d..| value: raw bits 0xf1-0x106.7 (22)
| | | [7]{}: object 0xe4-0x139 (85)
0x00e0| a3 | . | class: "context" (2) 0xe4-0xe4.2 (0.2)
0x00e0| a3 | . | form: "constructed" (1) 0xe4.2-0xe4.3 (0.1)
0x00e0| a3 | . | tag: 3 0xe4.3-0xe5 (0.5)
0x00e0| 53 | S | length: 83 0xe5-0xe6 (1)
| | | constructed[0:1]: 0xe6-0x139 (83)
| | | [0]{}: object 0xe6-0x139 (83)
0x00e0| 30 | 0 | class: "universal" (0) 0xe6-0xe6.2 (0.2)
0x00e0| 30 | 0 | form: "constructed" (1) 0xe6.2-0xe6.3 (0.1)
0x00e0| 30 | 0 | tag: "sequence" (0x10) 0xe6.3-0xe7 (0.5)
0x00e0| 51 | Q | length: 81 0xe7-0xe8 (1)
| | | constructed[0:3]: 0xe8-0x139 (81)
| | | [0]{}: object 0xe8-0x107 (31)
0x00e0| 30 | 0 | class: "universal" (0) 0xe8-0xe8.2 (0.2)
0x00e0| 30 | 0 | form: "constructed" (1) 0xe8.2-0xe8.3 (0.1)
0x00e0| 30 | 0 | tag: "sequence" (0x10) 0xe8.3-0xe9 (0.5)
0x00e0| 1d | . | length: 29 0xe9-0xea (1)
| | | constructed[0:2]: 0xea-0x107 (29)
| | | [0]{}: object 0xea-0xef (5)
0x00e0| 06 | . | class: "universal" (0) 0xea-0xea.2 (0.2)
0x00e0| 06 | . | form: "primitive" (0) 0xea.2-0xea.3 (0.1)
0x00e0| 06 | . | tag: "object_identifier" (0x6) 0xea.3-0xeb (0.5)
0x00e0| 03 | . | length: 3 0xeb-0xec (1)
| | | value[0:4]: 0xec-0xef (3)
0x00e0| 55 | U | [0]: 2 oid 0xec-0xed (1)
0x00e0| 55 | U | [1]: 5 oid 0xec-0xed (1)
0x00e0| 1d | . | [2]: 29 oid 0xed-0xee (1)
0x00e0| 0e | . | [3]: 14 oid 0xee-0xef (1)
| | | [1]{}: object 0xef-0x107 (24)
0x00e0| 04| .| class: "universal" (0) 0xef-0xef.2 (0.2)
0x00e0| 04| .| form: "primitive" (0) 0xef.2-0xef.3 (0.1)
0x00e0| 04| .| tag: "octet_string" (0x4) 0xef.3-0xf0 (0.5)
0x00f0|16 |. | length: 22 0xf0-0xf1 (1)
0x00f0| 04 14 6b a5 bd cf 9d fa 23 59 78 12 64 17 ae| ..k.....#Yx.d..| value: raw bits 0xf1-0x107 (22)
0x0100|1e 72 d8 9a 80 4a e8 |.r...J. |
| | | [1]{}: object 0x107-0x127.7 (33)
0x0100| 30 | 0 | class: "universal" (0) 0x107-0x107.1 (0.2)
0x0100| 30 | 0 | form: "constructed" (1) 0x107.2-0x107.2 (0.1)
0x0100| 30 | 0 | tag: "sequence" (0x10) 0x107.3-0x107.7 (0.5)
0x0100| 1f | . | length: 31 0x108-0x108.7 (1)
| | | constructed[0:2]: 0x109-0x127.7 (31)
| | | [0]{}: object 0x109-0x10d.7 (5)
0x0100| 06 | . | class: "universal" (0) 0x109-0x109.1 (0.2)
0x0100| 06 | . | form: "primitive" (0) 0x109.2-0x109.2 (0.1)
0x0100| 06 | . | tag: "object_identifier" (0x6) 0x109.3-0x109.7 (0.5)
0x0100| 03 | . | length: 3 0x10a-0x10a.7 (1)
| | | value[0:4]: 0x10b-0x10d.7 (3)
0x0100| 55 | U | [0]: 2 oid 0x10b-0x10b.7 (1)
0x0100| 55 | U | [1]: 5 oid 0x10b-0x10b.7 (1)
0x0100| 1d | . | [2]: 29 oid 0x10c-0x10c.7 (1)
0x0100| 23 | # | [3]: 35 oid 0x10d-0x10d.7 (1)
| | | [1]{}: object 0x10e-0x127.7 (26)
0x0100| 04 | . | class: "universal" (0) 0x10e-0x10e.1 (0.2)
0x0100| 04 | . | form: "primitive" (0) 0x10e.2-0x10e.2 (0.1)
0x0100| 04 | . | tag: "octet_string" (0x4) 0x10e.3-0x10e.7 (0.5)
0x0100| 18| .| length: 24 0x10f-0x10f.7 (1)
0x0110|30 16 80 14 6b a5 bd cf 9d fa 23 59 78 12 64 17|0...k.....#Yx.d.| value: raw bits 0x110-0x127.7 (24)
| | | [1]{}: object 0x107-0x128 (33)
0x0100| 30 | 0 | class: "universal" (0) 0x107-0x107.2 (0.2)
0x0100| 30 | 0 | form: "constructed" (1) 0x107.2-0x107.3 (0.1)
0x0100| 30 | 0 | tag: "sequence" (0x10) 0x107.3-0x108 (0.5)
0x0100| 1f | . | length: 31 0x108-0x109 (1)
| | | constructed[0:2]: 0x109-0x128 (31)
| | | [0]{}: object 0x109-0x10e (5)
0x0100| 06 | . | class: "universal" (0) 0x109-0x109.2 (0.2)
0x0100| 06 | . | form: "primitive" (0) 0x109.2-0x109.3 (0.1)
0x0100| 06 | . | tag: "object_identifier" (0x6) 0x109.3-0x10a (0.5)
0x0100| 03 | . | length: 3 0x10a-0x10b (1)
| | | value[0:4]: 0x10b-0x10e (3)
0x0100| 55 | U | [0]: 2 oid 0x10b-0x10c (1)
0x0100| 55 | U | [1]: 5 oid 0x10b-0x10c (1)
0x0100| 1d | . | [2]: 29 oid 0x10c-0x10d (1)
0x0100| 23 | # | [3]: 35 oid 0x10d-0x10e (1)
| | | [1]{}: object 0x10e-0x128 (26)
0x0100| 04 | . | class: "universal" (0) 0x10e-0x10e.2 (0.2)
0x0100| 04 | . | form: "primitive" (0) 0x10e.2-0x10e.3 (0.1)
0x0100| 04 | . | tag: "octet_string" (0x4) 0x10e.3-0x10f (0.5)
0x0100| 18| .| length: 24 0x10f-0x110 (1)
0x0110|30 16 80 14 6b a5 bd cf 9d fa 23 59 78 12 64 17|0...k.....#Yx.d.| value: raw bits 0x110-0x128 (24)
0x0120|ae 1e 72 d8 9a 80 4a e8 |..r...J. |
| | | [2]{}: object 0x128-0x138.7 (17)
0x0120| 30 | 0 | class: "universal" (0) 0x128-0x128.1 (0.2)
0x0120| 30 | 0 | form: "constructed" (1) 0x128.2-0x128.2 (0.1)
0x0120| 30 | 0 | tag: "sequence" (0x10) 0x128.3-0x128.7 (0.5)
0x0120| 0f | . | length: 15 0x129-0x129.7 (1)
| | | constructed[0:3]: 0x12a-0x138.7 (15)
| | | [0]{}: object 0x12a-0x12e.7 (5)
0x0120| 06 | . | class: "universal" (0) 0x12a-0x12a.1 (0.2)
0x0120| 06 | . | form: "primitive" (0) 0x12a.2-0x12a.2 (0.1)
0x0120| 06 | . | tag: "object_identifier" (0x6) 0x12a.3-0x12a.7 (0.5)
0x0120| 03 | . | length: 3 0x12b-0x12b.7 (1)
| | | value[0:4]: 0x12c-0x12e.7 (3)
0x0120| 55 | U | [0]: 2 oid 0x12c-0x12c.7 (1)
0x0120| 55 | U | [1]: 5 oid 0x12c-0x12c.7 (1)
0x0120| 1d | . | [2]: 29 oid 0x12d-0x12d.7 (1)
0x0120| 13 | . | [3]: 19 oid 0x12e-0x12e.7 (1)
| | | [1]{}: object 0x12f-0x131.7 (3)
0x0120| 01| .| class: "universal" (0) 0x12f-0x12f.1 (0.2)
0x0120| 01| .| form: "primitive" (0) 0x12f.2-0x12f.2 (0.1)
0x0120| 01| .| tag: "boolean" (0x1) 0x12f.3-0x12f.7 (0.5)
0x0130|01 |. | length: 1 0x130-0x130.7 (1)
0x0130| ff | . | value: true (255) 0x131-0x131.7 (1)
| | | [2]{}: object 0x132-0x138.7 (7)
0x0130| 04 | . | class: "universal" (0) 0x132-0x132.1 (0.2)
0x0130| 04 | . | form: "primitive" (0) 0x132.2-0x132.2 (0.1)
0x0130| 04 | . | tag: "octet_string" (0x4) 0x132.3-0x132.7 (0.5)
0x0130| 05 | . | length: 5 0x133-0x133.7 (1)
0x0130| 30 03 01 01 ff | 0.... | value: raw bits 0x134-0x138.7 (5)
| | | [2]{}: object 0x128-0x139 (17)
0x0120| 30 | 0 | class: "universal" (0) 0x128-0x128.2 (0.2)
0x0120| 30 | 0 | form: "constructed" (1) 0x128.2-0x128.3 (0.1)
0x0120| 30 | 0 | tag: "sequence" (0x10) 0x128.3-0x129 (0.5)
0x0120| 0f | . | length: 15 0x129-0x12a (1)
| | | constructed[0:3]: 0x12a-0x139 (15)
| | | [0]{}: object 0x12a-0x12f (5)
0x0120| 06 | . | class: "universal" (0) 0x12a-0x12a.2 (0.2)
0x0120| 06 | . | form: "primitive" (0) 0x12a.2-0x12a.3 (0.1)
0x0120| 06 | . | tag: "object_identifier" (0x6) 0x12a.3-0x12b (0.5)
0x0120| 03 | . | length: 3 0x12b-0x12c (1)
| | | value[0:4]: 0x12c-0x12f (3)
0x0120| 55 | U | [0]: 2 oid 0x12c-0x12d (1)
0x0120| 55 | U | [1]: 5 oid 0x12c-0x12d (1)
0x0120| 1d | . | [2]: 29 oid 0x12d-0x12e (1)
0x0120| 13 | . | [3]: 19 oid 0x12e-0x12f (1)
| | | [1]{}: object 0x12f-0x132 (3)
0x0120| 01| .| class: "universal" (0) 0x12f-0x12f.2 (0.2)
0x0120| 01| .| form: "primitive" (0) 0x12f.2-0x12f.3 (0.1)
0x0120| 01| .| tag: "boolean" (0x1) 0x12f.3-0x130 (0.5)
0x0130|01 |. | length: 1 0x130-0x131 (1)
0x0130| ff | . | value: true (255) 0x131-0x132 (1)
| | | [2]{}: object 0x132-0x139 (7)
0x0130| 04 | . | class: "universal" (0) 0x132-0x132.2 (0.2)
0x0130| 04 | . | form: "primitive" (0) 0x132.2-0x132.3 (0.1)
0x0130| 04 | . | tag: "octet_string" (0x4) 0x132.3-0x133 (0.5)
0x0130| 05 | . | length: 5 0x133-0x134 (1)
0x0130| 30 03 01 01 ff | 0.... | value: raw bits 0x134-0x139 (5)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
0x00|04 14 6b a5 bd cf 9d fa 23 59 78 12 64 17 ae 1e|..k.....#Yx.d...| value: raw bits 0x0-0x32.7 (51)
0x00|04 14 6b a5 bd cf 9d fa 23 59 78 12 64 17 ae 1e|..k.....#Yx.d...| value: raw bits 0x0-0x33 (51)
* |until 0x32.7 (end) (51) | |
| | | [1]{}: object 0x139-0x13f.7 (7)
0x0130| 30 | 0 | class: "universal" (0) 0x139-0x139.1 (0.2)
0x0130| 30 | 0 | form: "constructed" (1) 0x139.2-0x139.2 (0.1)
0x0130| 30 | 0 | tag: "sequence" (0x10) 0x139.3-0x139.7 (0.5)
0x0130| 05 | . | length: 5 0x13a-0x13a.7 (1)
| | | constructed[0:1]: 0x13b-0x13f.7 (5)
| | | [0]{}: object 0x13b-0x13f.7 (5)
0x0130| 06 | . | class: "universal" (0) 0x13b-0x13b.1 (0.2)
0x0130| 06 | . | form: "primitive" (0) 0x13b.2-0x13b.2 (0.1)
0x0130| 06 | . | tag: "object_identifier" (0x6) 0x13b.3-0x13b.7 (0.5)
0x0130| 03 | . | length: 3 0x13c-0x13c.7 (1)
| | | value[0:4]: 0x13d-0x13f.7 (3)
0x0130| 2b | + | [0]: 1 oid 0x13d-0x13d.7 (1)
0x0130| 2b | + | [1]: 3 oid 0x13d-0x13d.7 (1)
0x0130| 65 | e | [2]: 101 oid 0x13e-0x13e.7 (1)
0x0130| 70| p| [3]: 112 oid 0x13f-0x13f.7 (1)
| | | [2]{}: object 0x140-0x182.7 (67)
0x0140|03 |. | class: "universal" (0) 0x140-0x140.1 (0.2)
0x0140|03 |. | form: "primitive" (0) 0x140.2-0x140.2 (0.1)
0x0140|03 |. | tag: "bit_string" (0x3) 0x140.3-0x140.7 (0.5)
0x0140| 41 | A | length: 65 0x141-0x141.7 (1)
0x0140| 00 | . | unused_bits_count: 0 0x142-0x142.7 (1)
0x0140| 6f 73 77 be 28 96 5a 33 36 d7 e5 34 fd| osw.(.Z36..4.| value: raw bits 0x143-0x182.7 (64)
| | | [1]{}: object 0x139-0x140 (7)
0x0130| 30 | 0 | class: "universal" (0) 0x139-0x139.2 (0.2)
0x0130| 30 | 0 | form: "constructed" (1) 0x139.2-0x139.3 (0.1)
0x0130| 30 | 0 | tag: "sequence" (0x10) 0x139.3-0x13a (0.5)
0x0130| 05 | . | length: 5 0x13a-0x13b (1)
| | | constructed[0:1]: 0x13b-0x140 (5)
| | | [0]{}: object 0x13b-0x140 (5)
0x0130| 06 | . | class: "universal" (0) 0x13b-0x13b.2 (0.2)
0x0130| 06 | . | form: "primitive" (0) 0x13b.2-0x13b.3 (0.1)
0x0130| 06 | . | tag: "object_identifier" (0x6) 0x13b.3-0x13c (0.5)
0x0130| 03 | . | length: 3 0x13c-0x13d (1)
| | | value[0:4]: 0x13d-0x140 (3)
0x0130| 2b | + | [0]: 1 oid 0x13d-0x13e (1)
0x0130| 2b | + | [1]: 3 oid 0x13d-0x13e (1)
0x0130| 65 | e | [2]: 101 oid 0x13e-0x13f (1)
0x0130| 70| p| [3]: 112 oid 0x13f-0x140 (1)
| | | [2]{}: object 0x140-0x183 (67)
0x0140|03 |. | class: "universal" (0) 0x140-0x140.2 (0.2)
0x0140|03 |. | form: "primitive" (0) 0x140.2-0x140.3 (0.1)
0x0140|03 |. | tag: "bit_string" (0x3) 0x140.3-0x141 (0.5)
0x0140| 41 | A | length: 65 0x141-0x142 (1)
0x0140| 00 | . | unused_bits_count: 0 0x142-0x143 (1)
0x0140| 6f 73 77 be 28 96 5a 33 36 d7 e5 34 fd| osw.(.Z36..4.| value: raw bits 0x143-0x183 (64)
0x0150|90 f3 fd 40 7f 1f 02 f9 00 57 f2 16 0f 16 6b 04|...@.....W....k.|
* |until 0x182.7 (end) (64) | |

View File

@ -3,551 +3,551 @@ $ fq '.[] | . as $t | .hex | gsub("[^0-9a-f]";"") | fromhex | $t, (asn1_ber | dv
"decoded": "011011100101110111",
"hex": "03 04 06 6e 5d c0"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x5.7 (6)
0x0|03 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|03 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|03 |. | tag: "bit_string" (0x3) 0x0.3-0x0.7 (0.5)
0x0| 04 | . | length: 4 0x1-0x1.7 (1)
0x0| 06 | . | unused_bits_count: 6 0x2-0x2.7 (1)
0x0| 6e 5d c0| | n].| | value: raw bits 0x3-0x5.1 (2.2)
0x0| c0| | .| | unused_bits: raw bits 0x5.2-0x5.7 (0.6)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x6 (6)
0x0|03 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|03 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|03 |. | tag: "bit_string" (0x3) 0x0.3-0x1 (0.5)
0x0| 04 | . | length: 4 0x1-0x2 (1)
0x0| 06 | . | unused_bits_count: 6 0x2-0x3 (1)
0x0| 6e 5d c0| | n].| | value: raw bits 0x3-0x5.2 (2.2)
0x0| c0| | .| | unused_bits: raw bits 0x5.2-0x6 (0.6)
{
"decoded": "011011100101110111",
"hex": "03 04 06 6e 5d e0"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x5.7 (6)
0x0|03 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|03 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|03 |. | tag: "bit_string" (0x3) 0x0.3-0x0.7 (0.5)
0x0| 04 | . | length: 4 0x1-0x1.7 (1)
0x0| 06 | . | unused_bits_count: 6 0x2-0x2.7 (1)
0x0| 6e 5d e0| | n].| | value: raw bits 0x3-0x5.1 (2.2)
0x0| e0| | .| | unused_bits: raw bits 0x5.2-0x5.7 (0.6)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x6 (6)
0x0|03 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|03 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|03 |. | tag: "bit_string" (0x3) 0x0.3-0x1 (0.5)
0x0| 04 | . | length: 4 0x1-0x2 (1)
0x0| 06 | . | unused_bits_count: 6 0x2-0x3 (1)
0x0| 6e 5d e0| | n].| | value: raw bits 0x3-0x5.2 (2.2)
0x0| e0| | .| | unused_bits: raw bits 0x5.2-0x6 (0.6)
{
"decoded": "011011100101110111",
"hex": "03 81 04 06 6e 5d c0"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x6.7 (7)
0x0|03 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|03 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|03 |. | tag: "bit_string" (0x3) 0x0.3-0x0.7 (0.5)
0x0| 81 04 | .. | length: 4 0x1-0x2.7 (2)
0x0| 06 | . | unused_bits_count: 6 0x3-0x3.7 (1)
0x0| 6e 5d c0| | n].| | value: raw bits 0x4-0x6.1 (2.2)
0x0| c0| | .| | unused_bits: raw bits 0x6.2-0x6.7 (0.6)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x7 (7)
0x0|03 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|03 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|03 |. | tag: "bit_string" (0x3) 0x0.3-0x1 (0.5)
0x0| 81 04 | .. | length: 4 0x1-0x3 (2)
0x0| 06 | . | unused_bits_count: 6 0x3-0x4 (1)
0x0| 6e 5d c0| | n].| | value: raw bits 0x4-0x6.2 (2.2)
0x0| c0| | .| | unused_bits: raw bits 0x6.2-0x7 (0.6)
{
"decoded": "011011100101110111",
"hex": "23 09 | 03 03 00 6e 5d | 03 02 06 c0"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xa.7 (11)
0x000|23 |# | class: "universal" (0) 0x0-0x0.1 (0.2)
0x000|23 |# | form: "constructed" (1) 0x0.2-0x0.2 (0.1)
0x000|23 |# | tag: "bit_string" (0x3) 0x0.3-0x0.7 (0.5)
0x000| 09 | . | length: 9 0x1-0x1.7 (1)
| | | constructed[0:2]: 0x2-0xa.7 (9)
| | | [0]{}: object 0x2-0x6.7 (5)
0x000| 03 | . | class: "universal" (0) 0x2-0x2.1 (0.2)
0x000| 03 | . | form: "primitive" (0) 0x2.2-0x2.2 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0x2.3-0x2.7 (0.5)
0x000| 03 | . | length: 3 0x3-0x3.7 (1)
0x000| 00 | . | unused_bits_count: 0 0x4-0x4.7 (1)
0x000| 6e 5d | n] | value: raw bits 0x5-0x6.7 (2)
| | | [1]{}: object 0x7-0xa.7 (4)
0x000| 03 | . | class: "universal" (0) 0x7-0x7.1 (0.2)
0x000| 03 | . | form: "primitive" (0) 0x7.2-0x7.2 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0x7.3-0x7.7 (0.5)
0x000| 02 | . | length: 2 0x8-0x8.7 (1)
0x000| 06 | . | unused_bits_count: 6 0x9-0x9.7 (1)
0x000| c0| | .| | value: raw bits 0xa-0xa.1 (0.2)
0x000| c0| | .| | unused_bits: raw bits 0xa.2-0xa.7 (0.6)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xb (11)
0x000|23 |# | class: "universal" (0) 0x0-0x0.2 (0.2)
0x000|23 |# | form: "constructed" (1) 0x0.2-0x0.3 (0.1)
0x000|23 |# | tag: "bit_string" (0x3) 0x0.3-0x1 (0.5)
0x000| 09 | . | length: 9 0x1-0x2 (1)
| | | constructed[0:2]: 0x2-0xb (9)
| | | [0]{}: object 0x2-0x7 (5)
0x000| 03 | . | class: "universal" (0) 0x2-0x2.2 (0.2)
0x000| 03 | . | form: "primitive" (0) 0x2.2-0x2.3 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0x2.3-0x3 (0.5)
0x000| 03 | . | length: 3 0x3-0x4 (1)
0x000| 00 | . | unused_bits_count: 0 0x4-0x5 (1)
0x000| 6e 5d | n] | value: raw bits 0x5-0x7 (2)
| | | [1]{}: object 0x7-0xb (4)
0x000| 03 | . | class: "universal" (0) 0x7-0x7.2 (0.2)
0x000| 03 | . | form: "primitive" (0) 0x7.2-0x7.3 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0x7.3-0x8 (0.5)
0x000| 02 | . | length: 2 0x8-0x9 (1)
0x000| 06 | . | unused_bits_count: 6 0x9-0xa (1)
0x000| c0| | .| | value: raw bits 0xa-0xa.2 (0.2)
0x000| c0| | .| | unused_bits: raw bits 0xa.2-0xb (0.6)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
0x0|6e 5d c0| |n].| | value: raw bits 0x0-0x2.1 (2.2)
0x0|6e 5d c0| |n].| | value: raw bits 0x0-0x2.2 (2.2)
{
"decoded": "test1@rsa.com",
"hex": "16 0d 74 65 73 74 31 40 72 73 61 2e 63 6f 6d"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xe.7 (15)
0x0|16 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|16 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|16 |. | tag: "ia5_string" (0x16) 0x0.3-0x0.7 (0.5)
0x0| 0d | . | length: 13 0x1-0x1.7 (1)
0x0| 74 65 73 74 31 40 72 73 61 2e 63 6f 6d| | test1@rsa.com|| value: "test1@rsa.com" 0x2-0xe.7 (13)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xf (15)
0x0|16 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|16 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|16 |. | tag: "ia5_string" (0x16) 0x0.3-0x1 (0.5)
0x0| 0d | . | length: 13 0x1-0x2 (1)
0x0| 74 65 73 74 31 40 72 73 61 2e 63 6f 6d| | test1@rsa.com|| value: "test1@rsa.com" 0x2-0xf (13)
{
"decoded": "test1@rsa.com",
"hex": "16 81 0d | 74 65 73 74 31 40 72 73 61 2e 63 6f 6d"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xf.7 (16)
0x00|16 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x00|16 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x00|16 |. | tag: "ia5_string" (0x16) 0x0.3-0x0.7 (0.5)
0x00| 81 0d | .. | length: 13 0x1-0x2.7 (2)
0x00| 74 65 73 74 31 40 72 73 61 2e 63 6f 6d| test1@rsa.com| value: "test1@rsa.com" 0x3-0xf.7 (13)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x10 (16)
0x00|16 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x00|16 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x00|16 |. | tag: "ia5_string" (0x16) 0x0.3-0x1 (0.5)
0x00| 81 0d | .. | length: 13 0x1-0x3 (2)
0x00| 74 65 73 74 31 40 72 73 61 2e 63 6f 6d| test1@rsa.com| value: "test1@rsa.com" 0x3-0x10 (13)
{
"decoded": "test1@rsa.com",
"hex": "36 13 | 16 05 74 65 73 74 31 | 16 01 40 | 16 07 72 73 61 2e 63 6f 6d"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x14.7 (21)
0x00|36 |6 | class: "universal" (0) 0x0-0x0.1 (0.2)
0x00|36 |6 | form: "constructed" (1) 0x0.2-0x0.2 (0.1)
0x00|36 |6 | tag: "ia5_string" (0x16) 0x0.3-0x0.7 (0.5)
0x00| 13 | . | length: 19 0x1-0x1.7 (1)
| | | constructed[0:3]: 0x2-0x14.7 (19)
| | | [0]{}: object 0x2-0x8.7 (7)
0x00| 16 | . | class: "universal" (0) 0x2-0x2.1 (0.2)
0x00| 16 | . | form: "primitive" (0) 0x2.2-0x2.2 (0.1)
0x00| 16 | . | tag: "ia5_string" (0x16) 0x2.3-0x2.7 (0.5)
0x00| 05 | . | length: 5 0x3-0x3.7 (1)
0x00| 74 65 73 74 31 | test1 | value: "test1" 0x4-0x8.7 (5)
| | | [1]{}: object 0x9-0xb.7 (3)
0x00| 16 | . | class: "universal" (0) 0x9-0x9.1 (0.2)
0x00| 16 | . | form: "primitive" (0) 0x9.2-0x9.2 (0.1)
0x00| 16 | . | tag: "ia5_string" (0x16) 0x9.3-0x9.7 (0.5)
0x00| 01 | . | length: 1 0xa-0xa.7 (1)
0x00| 40 | @ | value: "@" 0xb-0xb.7 (1)
| | | [2]{}: object 0xc-0x14.7 (9)
0x00| 16 | . | class: "universal" (0) 0xc-0xc.1 (0.2)
0x00| 16 | . | form: "primitive" (0) 0xc.2-0xc.2 (0.1)
0x00| 16 | . | tag: "ia5_string" (0x16) 0xc.3-0xc.7 (0.5)
0x00| 07 | . | length: 7 0xd-0xd.7 (1)
0x00| 72 73| rs| value: "rsa.com" 0xe-0x14.7 (7)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x15 (21)
0x00|36 |6 | class: "universal" (0) 0x0-0x0.2 (0.2)
0x00|36 |6 | form: "constructed" (1) 0x0.2-0x0.3 (0.1)
0x00|36 |6 | tag: "ia5_string" (0x16) 0x0.3-0x1 (0.5)
0x00| 13 | . | length: 19 0x1-0x2 (1)
| | | constructed[0:3]: 0x2-0x15 (19)
| | | [0]{}: object 0x2-0x9 (7)
0x00| 16 | . | class: "universal" (0) 0x2-0x2.2 (0.2)
0x00| 16 | . | form: "primitive" (0) 0x2.2-0x2.3 (0.1)
0x00| 16 | . | tag: "ia5_string" (0x16) 0x2.3-0x3 (0.5)
0x00| 05 | . | length: 5 0x3-0x4 (1)
0x00| 74 65 73 74 31 | test1 | value: "test1" 0x4-0x9 (5)
| | | [1]{}: object 0x9-0xc (3)
0x00| 16 | . | class: "universal" (0) 0x9-0x9.2 (0.2)
0x00| 16 | . | form: "primitive" (0) 0x9.2-0x9.3 (0.1)
0x00| 16 | . | tag: "ia5_string" (0x16) 0x9.3-0xa (0.5)
0x00| 01 | . | length: 1 0xa-0xb (1)
0x00| 40 | @ | value: "@" 0xb-0xc (1)
| | | [2]{}: object 0xc-0x15 (9)
0x00| 16 | . | class: "universal" (0) 0xc-0xc.2 (0.2)
0x00| 16 | . | form: "primitive" (0) 0xc.2-0xc.3 (0.1)
0x00| 16 | . | tag: "ia5_string" (0x16) 0xc.3-0xd (0.5)
0x00| 07 | . | length: 7 0xd-0xe (1)
0x00| 72 73| rs| value: "rsa.com" 0xe-0x15 (7)
0x10|61 2e 63 6f 6d| |a.com| |
| | | value: "test1@rsa.com" 0x15-NA (0)
| | | value: "test1@rsa.com"
{
"decoded": 0,
"hex": "02 01 00"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x2.7 (3)
0x0|02 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|02 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|02 |. | tag: "integer" (0x2) 0x0.3-0x0.7 (0.5)
0x0| 01 | . | length: 1 0x1-0x1.7 (1)
0x0| 00| | .| | value: 0 0x2-0x2.7 (1)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x3 (3)
0x0|02 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|02 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|02 |. | tag: "integer" (0x2) 0x0.3-0x1 (0.5)
0x0| 01 | . | length: 1 0x1-0x2 (1)
0x0| 00| | .| | value: 0 0x2-0x3 (1)
{
"decoded": 127,
"hex": "02 01 7f"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x2.7 (3)
0x0|02 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|02 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|02 |. | tag: "integer" (0x2) 0x0.3-0x0.7 (0.5)
0x0| 01 | . | length: 1 0x1-0x1.7 (1)
0x0| 7f| | .| | value: 127 0x2-0x2.7 (1)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x3 (3)
0x0|02 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|02 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|02 |. | tag: "integer" (0x2) 0x0.3-0x1 (0.5)
0x0| 01 | . | length: 1 0x1-0x2 (1)
0x0| 7f| | .| | value: 127 0x2-0x3 (1)
{
"decoded": 128,
"hex": "02 02 00 80"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x3.7 (4)
0x0|02 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|02 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|02 |. | tag: "integer" (0x2) 0x0.3-0x0.7 (0.5)
0x0| 02 | . | length: 2 0x1-0x1.7 (1)
0x0| 00 80| | ..| | value: 128 0x2-0x3.7 (2)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x4 (4)
0x0|02 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|02 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|02 |. | tag: "integer" (0x2) 0x0.3-0x1 (0.5)
0x0| 02 | . | length: 2 0x1-0x2 (1)
0x0| 00 80| | ..| | value: 128 0x2-0x4 (2)
{
"decoded": 256,
"hex": "02 02 01 00"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x3.7 (4)
0x0|02 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|02 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|02 |. | tag: "integer" (0x2) 0x0.3-0x0.7 (0.5)
0x0| 02 | . | length: 2 0x1-0x1.7 (1)
0x0| 01 00| | ..| | value: 256 0x2-0x3.7 (2)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x4 (4)
0x0|02 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|02 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|02 |. | tag: "integer" (0x2) 0x0.3-0x1 (0.5)
0x0| 02 | . | length: 2 0x1-0x2 (1)
0x0| 01 00| | ..| | value: 256 0x2-0x4 (2)
{
"decoded": -128,
"hex": "02 01 80"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x2.7 (3)
0x0|02 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|02 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|02 |. | tag: "integer" (0x2) 0x0.3-0x0.7 (0.5)
0x0| 01 | . | length: 1 0x1-0x1.7 (1)
0x0| 80| | .| | value: -128 0x2-0x2.7 (1)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x3 (3)
0x0|02 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|02 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|02 |. | tag: "integer" (0x2) 0x0.3-0x1 (0.5)
0x0| 01 | . | length: 1 0x1-0x2 (1)
0x0| 80| | .| | value: -128 0x2-0x3 (1)
{
"decoded": -129,
"hex": "02 02 ff 7f"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x3.7 (4)
0x0|02 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|02 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|02 |. | tag: "integer" (0x2) 0x0.3-0x0.7 (0.5)
0x0| 02 | . | length: 2 0x1-0x1.7 (1)
0x0| ff 7f| | ..| | value: -129 0x2-0x3.7 (2)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x4 (4)
0x0|02 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|02 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|02 |. | tag: "integer" (0x2) 0x0.3-0x1 (0.5)
0x0| 02 | . | length: 2 0x1-0x2 (1)
0x0| ff 7f| | ..| | value: -129 0x2-0x4 (2)
{
"decoded": "01 23 45 67 89 ab cd ef",
"hex": "04 08 01 23 45 67 89 ab cd ef"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x9.7 (10)
0x0|04 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|04 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|04 |. | tag: "octet_string" (0x4) 0x0.3-0x0.7 (0.5)
0x0| 08 | . | length: 8 0x1-0x1.7 (1)
0x0| 01 23 45 67 89 ab cd ef| | .#Eg....| | value: raw bits 0x2-0x9.7 (8)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xa (10)
0x0|04 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|04 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|04 |. | tag: "octet_string" (0x4) 0x0.3-0x1 (0.5)
0x0| 08 | . | length: 8 0x1-0x2 (1)
0x0| 01 23 45 67 89 ab cd ef| | .#Eg....| | value: raw bits 0x2-0xa (8)
{
"decoded": "01 23 45 67 89 ab cd ef",
"hex": "04 81 08 01 23 45 67 89 ab cd ef"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xa.7 (11)
0x0|04 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|04 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|04 |. | tag: "octet_string" (0x4) 0x0.3-0x0.7 (0.5)
0x0| 81 08 | .. | length: 8 0x1-0x2.7 (2)
0x0| 01 23 45 67 89 ab cd ef| | .#Eg....| | value: raw bits 0x3-0xa.7 (8)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xb (11)
0x0|04 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|04 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|04 |. | tag: "octet_string" (0x4) 0x0.3-0x1 (0.5)
0x0| 81 08 | .. | length: 8 0x1-0x3 (2)
0x0| 01 23 45 67 89 ab cd ef| | .#Eg....| | value: raw bits 0x3-0xb (8)
{
"decoded": "01 23 45 67 89 ab cd ef",
"hex": "24 0c | 04 04 01 23 45 67 | 04 04 89 ab cd ef"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xd.7 (14)
0x000|24 |$ | class: "universal" (0) 0x0-0x0.1 (0.2)
0x000|24 |$ | form: "constructed" (1) 0x0.2-0x0.2 (0.1)
0x000|24 |$ | tag: "octet_string" (0x4) 0x0.3-0x0.7 (0.5)
0x000| 0c | . | length: 12 0x1-0x1.7 (1)
| | | constructed[0:2]: 0x2-0xd.7 (12)
| | | [0]{}: object 0x2-0x7.7 (6)
0x000| 04 | . | class: "universal" (0) 0x2-0x2.1 (0.2)
0x000| 04 | . | form: "primitive" (0) 0x2.2-0x2.2 (0.1)
0x000| 04 | . | tag: "octet_string" (0x4) 0x2.3-0x2.7 (0.5)
0x000| 04 | . | length: 4 0x3-0x3.7 (1)
0x000| 01 23 45 67 | .#Eg | value: raw bits 0x4-0x7.7 (4)
| | | [1]{}: object 0x8-0xd.7 (6)
0x000| 04 | . | class: "universal" (0) 0x8-0x8.1 (0.2)
0x000| 04 | . | form: "primitive" (0) 0x8.2-0x8.2 (0.1)
0x000| 04 | . | tag: "octet_string" (0x4) 0x8.3-0x8.7 (0.5)
0x000| 04 | . | length: 4 0x9-0x9.7 (1)
0x000| 89 ab cd ef| | ....| | value: raw bits 0xa-0xd.7 (4)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xe (14)
0x000|24 |$ | class: "universal" (0) 0x0-0x0.2 (0.2)
0x000|24 |$ | form: "constructed" (1) 0x0.2-0x0.3 (0.1)
0x000|24 |$ | tag: "octet_string" (0x4) 0x0.3-0x1 (0.5)
0x000| 0c | . | length: 12 0x1-0x2 (1)
| | | constructed[0:2]: 0x2-0xe (12)
| | | [0]{}: object 0x2-0x8 (6)
0x000| 04 | . | class: "universal" (0) 0x2-0x2.2 (0.2)
0x000| 04 | . | form: "primitive" (0) 0x2.2-0x2.3 (0.1)
0x000| 04 | . | tag: "octet_string" (0x4) 0x2.3-0x3 (0.5)
0x000| 04 | . | length: 4 0x3-0x4 (1)
0x000| 01 23 45 67 | .#Eg | value: raw bits 0x4-0x8 (4)
| | | [1]{}: object 0x8-0xe (6)
0x000| 04 | . | class: "universal" (0) 0x8-0x8.2 (0.2)
0x000| 04 | . | form: "primitive" (0) 0x8.2-0x8.3 (0.1)
0x000| 04 | . | tag: "octet_string" (0x4) 0x8.3-0x9 (0.5)
0x000| 04 | . | length: 4 0x9-0xa (1)
0x000| 89 ab cd ef| | ....| | value: raw bits 0xa-0xe (4)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
0x0|01 23 45 67 89 ab cd ef| |.#Eg....| | value: raw bits 0x0-0x7.7 (8)
0x0|01 23 45 67 89 ab cd ef| |.#Eg....| | value: raw bits 0x0-0x8 (8)
{
"decoded": "Test User 1",
"hex": "13 0b 54 65 73 74 20 55 73 65 72 20 31"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xc.7 (13)
0x0|13 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|13 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|13 |. | tag: "printable_string" (0x13) 0x0.3-0x0.7 (0.5)
0x0| 0b | . | length: 11 0x1-0x1.7 (1)
0x0| 54 65 73 74 20 55 73 65 72 20 31| | Test User 1| | value: "Test User 1" 0x2-0xc.7 (11)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xd (13)
0x0|13 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|13 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|13 |. | tag: "printable_string" (0x13) 0x0.3-0x1 (0.5)
0x0| 0b | . | length: 11 0x1-0x2 (1)
0x0| 54 65 73 74 20 55 73 65 72 20 31| | Test User 1| | value: "Test User 1" 0x2-0xd (11)
{
"decoded": "Test User 1",
"hex": "13 81 0b | 54 65 73 74 20 55 73 65 72 20 31"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xd.7 (14)
0x0|13 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|13 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|13 |. | tag: "printable_string" (0x13) 0x0.3-0x0.7 (0.5)
0x0| 81 0b | .. | length: 11 0x1-0x2.7 (2)
0x0| 54 65 73 74 20 55 73 65 72 20 31| | Test User 1| | value: "Test User 1" 0x3-0xd.7 (11)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xe (14)
0x0|13 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|13 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|13 |. | tag: "printable_string" (0x13) 0x0.3-0x1 (0.5)
0x0| 81 0b | .. | length: 11 0x1-0x3 (2)
0x0| 54 65 73 74 20 55 73 65 72 20 31| | Test User 1| | value: "Test User 1" 0x3-0xe (11)
{
"decoded": "Test User 1",
"hex": "33 0f | 13 05 54 65 73 74 20 | 13 06 55 73 65 72 20 31"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x10.7 (17)
0x00|33 |3 | class: "universal" (0) 0x0-0x0.1 (0.2)
0x00|33 |3 | form: "constructed" (1) 0x0.2-0x0.2 (0.1)
0x00|33 |3 | tag: "printable_string" (0x13) 0x0.3-0x0.7 (0.5)
0x00| 0f | . | length: 15 0x1-0x1.7 (1)
| | | constructed[0:2]: 0x2-0x10.7 (15)
| | | [0]{}: object 0x2-0x8.7 (7)
0x00| 13 | . | class: "universal" (0) 0x2-0x2.1 (0.2)
0x00| 13 | . | form: "primitive" (0) 0x2.2-0x2.2 (0.1)
0x00| 13 | . | tag: "printable_string" (0x13) 0x2.3-0x2.7 (0.5)
0x00| 05 | . | length: 5 0x3-0x3.7 (1)
0x00| 54 65 73 74 20 | Test | value: "Test " 0x4-0x8.7 (5)
| | | [1]{}: object 0x9-0x10.7 (8)
0x00| 13 | . | class: "universal" (0) 0x9-0x9.1 (0.2)
0x00| 13 | . | form: "primitive" (0) 0x9.2-0x9.2 (0.1)
0x00| 13 | . | tag: "printable_string" (0x13) 0x9.3-0x9.7 (0.5)
0x00| 06 | . | length: 6 0xa-0xa.7 (1)
0x00| 55 73 65 72 20| User | value: "User 1" 0xb-0x10.7 (6)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x11 (17)
0x00|33 |3 | class: "universal" (0) 0x0-0x0.2 (0.2)
0x00|33 |3 | form: "constructed" (1) 0x0.2-0x0.3 (0.1)
0x00|33 |3 | tag: "printable_string" (0x13) 0x0.3-0x1 (0.5)
0x00| 0f | . | length: 15 0x1-0x2 (1)
| | | constructed[0:2]: 0x2-0x11 (15)
| | | [0]{}: object 0x2-0x9 (7)
0x00| 13 | . | class: "universal" (0) 0x2-0x2.2 (0.2)
0x00| 13 | . | form: "primitive" (0) 0x2.2-0x2.3 (0.1)
0x00| 13 | . | tag: "printable_string" (0x13) 0x2.3-0x3 (0.5)
0x00| 05 | . | length: 5 0x3-0x4 (1)
0x00| 54 65 73 74 20 | Test | value: "Test " 0x4-0x9 (5)
| | | [1]{}: object 0x9-0x11 (8)
0x00| 13 | . | class: "universal" (0) 0x9-0x9.2 (0.2)
0x00| 13 | . | form: "primitive" (0) 0x9.2-0x9.3 (0.1)
0x00| 13 | . | tag: "printable_string" (0x13) 0x9.3-0xa (0.5)
0x00| 06 | . | length: 6 0xa-0xb (1)
0x00| 55 73 65 72 20| User | value: "User 1" 0xb-0x11 (6)
0x10|31| |1| |
| | | value: "Test User 1" 0x11-NA (0)
| | | value: "Test User 1"
{
"decoded": "cl'es publiques",
"hex": "14 0f | 63 6c c2 65 73 20 70 75 62 6c 69 71 75 65 73"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x10.7 (17)
0x00|14 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x00|14 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x00|14 |. | tag: "teletex_string" (0x14) 0x0.3-0x0.7 (0.5)
0x00| 0f | . | length: 15 0x1-0x1.7 (1)
0x00| 63 6c c2 65 73 20 70 75 62 6c 69 71 75 65| cl.es publique| value: "cl<63>es publiques" 0x2-0x10.7 (15)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x11 (17)
0x00|14 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x00|14 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x00|14 |. | tag: "teletex_string" (0x14) 0x0.3-0x1 (0.5)
0x00| 0f | . | length: 15 0x1-0x2 (1)
0x00| 63 6c c2 65 73 20 70 75 62 6c 69 71 75 65| cl.es publique| value: "cl<63>es publiques" 0x2-0x11 (15)
0x10|73| |s| |
{
"decoded": "cl'es publiques",
"hex": "14 81 0f | 63 6c c2 65 73 20 70 75 62 6c 69 71 75 65 73"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x11.7 (18)
0x00|14 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x00|14 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x00|14 |. | tag: "teletex_string" (0x14) 0x0.3-0x0.7 (0.5)
0x00| 81 0f | .. | length: 15 0x1-0x2.7 (2)
0x00| 63 6c c2 65 73 20 70 75 62 6c 69 71 75| cl.es publiqu| value: "cl<63>es publiques" 0x3-0x11.7 (15)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x12 (18)
0x00|14 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x00|14 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x00|14 |. | tag: "teletex_string" (0x14) 0x0.3-0x1 (0.5)
0x00| 81 0f | .. | length: 15 0x1-0x3 (2)
0x00| 63 6c c2 65 73 20 70 75 62 6c 69 71 75| cl.es publiqu| value: "cl<63>es publiques" 0x3-0x12 (15)
0x10|65 73| |es| |
{
"decoded": "cl'es publiques",
"hex": "34 15 | 14 05 63 6c c2 65 73 | 14 01 20 | 14 09 70 75 62 6c 69 71 75 65 73"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x16.7 (23)
0x00|34 |4 | class: "universal" (0) 0x0-0x0.1 (0.2)
0x00|34 |4 | form: "constructed" (1) 0x0.2-0x0.2 (0.1)
0x00|34 |4 | tag: "teletex_string" (0x14) 0x0.3-0x0.7 (0.5)
0x00| 15 | . | length: 21 0x1-0x1.7 (1)
| | | constructed[0:3]: 0x2-0x16.7 (21)
| | | [0]{}: object 0x2-0x8.7 (7)
0x00| 14 | . | class: "universal" (0) 0x2-0x2.1 (0.2)
0x00| 14 | . | form: "primitive" (0) 0x2.2-0x2.2 (0.1)
0x00| 14 | . | tag: "teletex_string" (0x14) 0x2.3-0x2.7 (0.5)
0x00| 05 | . | length: 5 0x3-0x3.7 (1)
0x00| 63 6c c2 65 73 | cl.es | value: "cl<63>es" 0x4-0x8.7 (5)
| | | [1]{}: object 0x9-0xb.7 (3)
0x00| 14 | . | class: "universal" (0) 0x9-0x9.1 (0.2)
0x00| 14 | . | form: "primitive" (0) 0x9.2-0x9.2 (0.1)
0x00| 14 | . | tag: "teletex_string" (0x14) 0x9.3-0x9.7 (0.5)
0x00| 01 | . | length: 1 0xa-0xa.7 (1)
0x00| 20 | | value: " " 0xb-0xb.7 (1)
| | | [2]{}: object 0xc-0x16.7 (11)
0x00| 14 | . | class: "universal" (0) 0xc-0xc.1 (0.2)
0x00| 14 | . | form: "primitive" (0) 0xc.2-0xc.2 (0.1)
0x00| 14 | . | tag: "teletex_string" (0x14) 0xc.3-0xc.7 (0.5)
0x00| 09 | . | length: 9 0xd-0xd.7 (1)
0x00| 70 75| pu| value: "publiques" 0xe-0x16.7 (9)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x17 (23)
0x00|34 |4 | class: "universal" (0) 0x0-0x0.2 (0.2)
0x00|34 |4 | form: "constructed" (1) 0x0.2-0x0.3 (0.1)
0x00|34 |4 | tag: "teletex_string" (0x14) 0x0.3-0x1 (0.5)
0x00| 15 | . | length: 21 0x1-0x2 (1)
| | | constructed[0:3]: 0x2-0x17 (21)
| | | [0]{}: object 0x2-0x9 (7)
0x00| 14 | . | class: "universal" (0) 0x2-0x2.2 (0.2)
0x00| 14 | . | form: "primitive" (0) 0x2.2-0x2.3 (0.1)
0x00| 14 | . | tag: "teletex_string" (0x14) 0x2.3-0x3 (0.5)
0x00| 05 | . | length: 5 0x3-0x4 (1)
0x00| 63 6c c2 65 73 | cl.es | value: "cl<63>es" 0x4-0x9 (5)
| | | [1]{}: object 0x9-0xc (3)
0x00| 14 | . | class: "universal" (0) 0x9-0x9.2 (0.2)
0x00| 14 | . | form: "primitive" (0) 0x9.2-0x9.3 (0.1)
0x00| 14 | . | tag: "teletex_string" (0x14) 0x9.3-0xa (0.5)
0x00| 01 | . | length: 1 0xa-0xb (1)
0x00| 20 | | value: " " 0xb-0xc (1)
| | | [2]{}: object 0xc-0x17 (11)
0x00| 14 | . | class: "universal" (0) 0xc-0xc.2 (0.2)
0x00| 14 | . | form: "primitive" (0) 0xc.2-0xc.3 (0.1)
0x00| 14 | . | tag: "teletex_string" (0x14) 0xc.3-0xd (0.5)
0x00| 09 | . | length: 9 0xd-0xe (1)
0x00| 70 75| pu| value: "publiques" 0xe-0x17 (9)
0x10|62 6c 69 71 75 65 73| |bliques| |
| | | value: "cl<63>es publiques" 0x17-NA (0)
| | | value: "cl<63>es publiques"
{
"decoded": "910506164540-0700",
"hex": "17 0d 39 31 30 35 30 36 32 33 34 35 34 30 5a"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xe.7 (15)
0x0|17 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|17 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|17 |. | tag: "utc_time" (0x17) 0x0.3-0x0.7 (0.5)
0x0| 0d | . | length: 13 0x1-0x1.7 (1)
0x0| 39 31 30 35 30 36 32 33 34 35 34 30 5a| | 910506234540Z|| value: "910506234540Z" 0x2-0xe.7 (13)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xf (15)
0x0|17 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|17 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|17 |. | tag: "utc_time" (0x17) 0x0.3-0x1 (0.5)
0x0| 0d | . | length: 13 0x1-0x2 (1)
0x0| 39 31 30 35 30 36 32 33 34 35 34 30 5a| | 910506234540Z|| value: "910506234540Z" 0x2-0xf (13)
{
"decoded": "910506234540Z",
"hex": "17 11 39 31 30 35 30 36 31 36 34 35 34 30 2d 30 37 30 30"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x12.7 (19)
0x00|17 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x00|17 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x00|17 |. | tag: "utc_time" (0x17) 0x0.3-0x0.7 (0.5)
0x00| 11 | . | length: 17 0x1-0x1.7 (1)
0x00| 39 31 30 35 30 36 31 36 34 35 34 30 2d 30| 910506164540-0| value: "910506164540-0700" 0x2-0x12.7 (17)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x13 (19)
0x00|17 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x00|17 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x00|17 |. | tag: "utc_time" (0x17) 0x0.3-0x1 (0.5)
0x00| 11 | . | length: 17 0x1-0x2 (1)
0x00| 39 31 30 35 30 36 31 36 34 35 34 30 2d 30| 910506164540-0| value: "910506164540-0700" 0x2-0x13 (17)
0x10|37 30 30| |700| |
{
"decoded": "countryName",
"hex": "06 03 55 04 06"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x4.7 (5)
0x0|06 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|06 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|06 |. | tag: "object_identifier" (0x6) 0x0.3-0x0.7 (0.5)
0x0| 03 | . | length: 3 0x1-0x1.7 (1)
| | | value[0:4]: 0x2-0x4.7 (3)
0x0| 55 | U | [0]: 2 oid 0x2-0x2.7 (1)
0x0| 55 | U | [1]: 5 oid 0x2-0x2.7 (1)
0x0| 04 | . | [2]: 4 oid 0x3-0x3.7 (1)
0x0| 06| | .| | [3]: 6 oid 0x4-0x4.7 (1)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x5 (5)
0x0|06 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|06 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|06 |. | tag: "object_identifier" (0x6) 0x0.3-0x1 (0.5)
0x0| 03 | . | length: 3 0x1-0x2 (1)
| | | value[0:4]: 0x2-0x5 (3)
0x0| 55 | U | [0]: 2 oid 0x2-0x3 (1)
0x0| 55 | U | [1]: 5 oid 0x2-0x3 (1)
0x0| 04 | . | [2]: 4 oid 0x3-0x4 (1)
0x0| 06| | .| | [3]: 6 oid 0x4-0x5 (1)
{
"decoded": "organizationName",
"hex": "06 03 55 04 0a"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x4.7 (5)
0x0|06 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|06 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|06 |. | tag: "object_identifier" (0x6) 0x0.3-0x0.7 (0.5)
0x0| 03 | . | length: 3 0x1-0x1.7 (1)
| | | value[0:4]: 0x2-0x4.7 (3)
0x0| 55 | U | [0]: 2 oid 0x2-0x2.7 (1)
0x0| 55 | U | [1]: 5 oid 0x2-0x2.7 (1)
0x0| 04 | . | [2]: 4 oid 0x3-0x3.7 (1)
0x0| 0a| | .| | [3]: 10 oid 0x4-0x4.7 (1)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x5 (5)
0x0|06 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|06 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|06 |. | tag: "object_identifier" (0x6) 0x0.3-0x1 (0.5)
0x0| 03 | . | length: 3 0x1-0x2 (1)
| | | value[0:4]: 0x2-0x5 (3)
0x0| 55 | U | [0]: 2 oid 0x2-0x3 (1)
0x0| 55 | U | [1]: 5 oid 0x2-0x3 (1)
0x0| 04 | . | [2]: 4 oid 0x3-0x4 (1)
0x0| 0a| | .| | [3]: 10 oid 0x4-0x5 (1)
{
"decoded": "commonName",
"hex": "06 03 55 04 03"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x4.7 (5)
0x0|06 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|06 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|06 |. | tag: "object_identifier" (0x6) 0x0.3-0x0.7 (0.5)
0x0| 03 | . | length: 3 0x1-0x1.7 (1)
| | | value[0:4]: 0x2-0x4.7 (3)
0x0| 55 | U | [0]: 2 oid 0x2-0x2.7 (1)
0x0| 55 | U | [1]: 5 oid 0x2-0x2.7 (1)
0x0| 04 | . | [2]: 4 oid 0x3-0x3.7 (1)
0x0| 03| | .| | [3]: 3 oid 0x4-0x4.7 (1)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x5 (5)
0x0|06 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|06 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|06 |. | tag: "object_identifier" (0x6) 0x0.3-0x1 (0.5)
0x0| 03 | . | length: 3 0x1-0x2 (1)
| | | value[0:4]: 0x2-0x5 (3)
0x0| 55 | U | [0]: 2 oid 0x2-0x3 (1)
0x0| 55 | U | [1]: 5 oid 0x2-0x3 (1)
0x0| 04 | . | [2]: 4 oid 0x3-0x4 (1)
0x0| 03| | .| | [3]: 3 oid 0x4-0x5 (1)
{
"decoded": "US",
"hex": "13 02 55 53"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x3.7 (4)
0x0|13 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|13 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|13 |. | tag: "printable_string" (0x13) 0x0.3-0x0.7 (0.5)
0x0| 02 | . | length: 2 0x1-0x1.7 (1)
0x0| 55 53| | US| | value: "US" 0x2-0x3.7 (2)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x4 (4)
0x0|13 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|13 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|13 |. | tag: "printable_string" (0x13) 0x0.3-0x1 (0.5)
0x0| 02 | . | length: 2 0x1-0x2 (1)
0x0| 55 53| | US| | value: "US" 0x2-0x4 (2)
{
"decoded": "Example Organization",
"hex": "13 14 | 45 78 61 6d 70 6c 65 20 4f 72 67 61 6e 69 7a 61 | 74 69 6f 6e"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x15.7 (22)
0x00|13 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x00|13 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x00|13 |. | tag: "printable_string" (0x13) 0x0.3-0x0.7 (0.5)
0x00| 14 | . | length: 20 0x1-0x1.7 (1)
0x00| 45 78 61 6d 70 6c 65 20 4f 72 67 61 6e 69| Example Organi| value: "Example Organization" 0x2-0x15.7 (20)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x16 (22)
0x00|13 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x00|13 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x00|13 |. | tag: "printable_string" (0x13) 0x0.3-0x1 (0.5)
0x00| 14 | . | length: 20 0x1-0x2 (1)
0x00| 45 78 61 6d 70 6c 65 20 4f 72 67 61 6e 69| Example Organi| value: "Example Organization" 0x2-0x16 (20)
0x10|7a 61 74 69 6f 6e| |zation| |
{
"decoded": "Test User 1",
"hex": "13 0b | 54 65 73 74 20 55 73 65 72 20 31"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xc.7 (13)
0x0|13 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|13 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|13 |. | tag: "printable_string" (0x13) 0x0.3-0x0.7 (0.5)
0x0| 0b | . | length: 11 0x1-0x1.7 (1)
0x0| 54 65 73 74 20 55 73 65 72 20 31| | Test User 1| | value: "Test User 1" 0x2-0xc.7 (11)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xd (13)
0x0|13 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|13 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|13 |. | tag: "printable_string" (0x13) 0x0.3-0x1 (0.5)
0x0| 0b | . | length: 11 0x1-0x2 (1)
0x0| 54 65 73 74 20 55 73 65 72 20 31| | Test User 1| | value: "Test User 1" 0x2-0xd (11)
{
"decoded": "US",
"hex": "30 09 | 06 03 55 04 06 | 13 02 55 53"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xa.7 (11)
0x0|30 |0 | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|30 |0 | form: "constructed" (1) 0x0.2-0x0.2 (0.1)
0x0|30 |0 | tag: "sequence" (0x10) 0x0.3-0x0.7 (0.5)
0x0| 09 | . | length: 9 0x1-0x1.7 (1)
| | | constructed[0:2]: 0x2-0xa.7 (9)
| | | [0]{}: object 0x2-0x6.7 (5)
0x0| 06 | . | class: "universal" (0) 0x2-0x2.1 (0.2)
0x0| 06 | . | form: "primitive" (0) 0x2.2-0x2.2 (0.1)
0x0| 06 | . | tag: "object_identifier" (0x6) 0x2.3-0x2.7 (0.5)
0x0| 03 | . | length: 3 0x3-0x3.7 (1)
| | | value[0:4]: 0x4-0x6.7 (3)
0x0| 55 | U | [0]: 2 oid 0x4-0x4.7 (1)
0x0| 55 | U | [1]: 5 oid 0x4-0x4.7 (1)
0x0| 04 | . | [2]: 4 oid 0x5-0x5.7 (1)
0x0| 06 | . | [3]: 6 oid 0x6-0x6.7 (1)
| | | [1]{}: object 0x7-0xa.7 (4)
0x0| 13 | . | class: "universal" (0) 0x7-0x7.1 (0.2)
0x0| 13 | . | form: "primitive" (0) 0x7.2-0x7.2 (0.1)
0x0| 13 | . | tag: "printable_string" (0x13) 0x7.3-0x7.7 (0.5)
0x0| 02 | . | length: 2 0x8-0x8.7 (1)
0x0| 55 53| | US| | value: "US" 0x9-0xa.7 (2)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xb (11)
0x0|30 |0 | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|30 |0 | form: "constructed" (1) 0x0.2-0x0.3 (0.1)
0x0|30 |0 | tag: "sequence" (0x10) 0x0.3-0x1 (0.5)
0x0| 09 | . | length: 9 0x1-0x2 (1)
| | | constructed[0:2]: 0x2-0xb (9)
| | | [0]{}: object 0x2-0x7 (5)
0x0| 06 | . | class: "universal" (0) 0x2-0x2.2 (0.2)
0x0| 06 | . | form: "primitive" (0) 0x2.2-0x2.3 (0.1)
0x0| 06 | . | tag: "object_identifier" (0x6) 0x2.3-0x3 (0.5)
0x0| 03 | . | length: 3 0x3-0x4 (1)
| | | value[0:4]: 0x4-0x7 (3)
0x0| 55 | U | [0]: 2 oid 0x4-0x5 (1)
0x0| 55 | U | [1]: 5 oid 0x4-0x5 (1)
0x0| 04 | . | [2]: 4 oid 0x5-0x6 (1)
0x0| 06 | . | [3]: 6 oid 0x6-0x7 (1)
| | | [1]{}: object 0x7-0xb (4)
0x0| 13 | . | class: "universal" (0) 0x7-0x7.2 (0.2)
0x0| 13 | . | form: "primitive" (0) 0x7.2-0x7.3 (0.1)
0x0| 13 | . | tag: "printable_string" (0x13) 0x7.3-0x8 (0.5)
0x0| 02 | . | length: 2 0x8-0x9 (1)
0x0| 55 53| | US| | value: "US" 0x9-0xb (2)
{
"decoded": "organizationName = Example Organization",
"hex": "30 1b | 06 03 55 04 0a | 13 14 45 78 61 6d 70 6c 65 20 4f 72 67 61 6e 69 7a 61 | 74 69 6f 6e"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x1c.7 (29)
0x00|30 |0 | class: "universal" (0) 0x0-0x0.1 (0.2)
0x00|30 |0 | form: "constructed" (1) 0x0.2-0x0.2 (0.1)
0x00|30 |0 | tag: "sequence" (0x10) 0x0.3-0x0.7 (0.5)
0x00| 1b | . | length: 27 0x1-0x1.7 (1)
| | | constructed[0:2]: 0x2-0x1c.7 (27)
| | | [0]{}: object 0x2-0x6.7 (5)
0x00| 06 | . | class: "universal" (0) 0x2-0x2.1 (0.2)
0x00| 06 | . | form: "primitive" (0) 0x2.2-0x2.2 (0.1)
0x00| 06 | . | tag: "object_identifier" (0x6) 0x2.3-0x2.7 (0.5)
0x00| 03 | . | length: 3 0x3-0x3.7 (1)
| | | value[0:4]: 0x4-0x6.7 (3)
0x00| 55 | U | [0]: 2 oid 0x4-0x4.7 (1)
0x00| 55 | U | [1]: 5 oid 0x4-0x4.7 (1)
0x00| 04 | . | [2]: 4 oid 0x5-0x5.7 (1)
0x00| 0a | . | [3]: 10 oid 0x6-0x6.7 (1)
| | | [1]{}: object 0x7-0x1c.7 (22)
0x00| 13 | . | class: "universal" (0) 0x7-0x7.1 (0.2)
0x00| 13 | . | form: "primitive" (0) 0x7.2-0x7.2 (0.1)
0x00| 13 | . | tag: "printable_string" (0x13) 0x7.3-0x7.7 (0.5)
0x00| 14 | . | length: 20 0x8-0x8.7 (1)
0x00| 45 78 61 6d 70 6c 65| Example| value: "Example Organization" 0x9-0x1c.7 (20)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x1d (29)
0x00|30 |0 | class: "universal" (0) 0x0-0x0.2 (0.2)
0x00|30 |0 | form: "constructed" (1) 0x0.2-0x0.3 (0.1)
0x00|30 |0 | tag: "sequence" (0x10) 0x0.3-0x1 (0.5)
0x00| 1b | . | length: 27 0x1-0x2 (1)
| | | constructed[0:2]: 0x2-0x1d (27)
| | | [0]{}: object 0x2-0x7 (5)
0x00| 06 | . | class: "universal" (0) 0x2-0x2.2 (0.2)
0x00| 06 | . | form: "primitive" (0) 0x2.2-0x2.3 (0.1)
0x00| 06 | . | tag: "object_identifier" (0x6) 0x2.3-0x3 (0.5)
0x00| 03 | . | length: 3 0x3-0x4 (1)
| | | value[0:4]: 0x4-0x7 (3)
0x00| 55 | U | [0]: 2 oid 0x4-0x5 (1)
0x00| 55 | U | [1]: 5 oid 0x4-0x5 (1)
0x00| 04 | . | [2]: 4 oid 0x5-0x6 (1)
0x00| 0a | . | [3]: 10 oid 0x6-0x7 (1)
| | | [1]{}: object 0x7-0x1d (22)
0x00| 13 | . | class: "universal" (0) 0x7-0x7.2 (0.2)
0x00| 13 | . | form: "primitive" (0) 0x7.2-0x7.3 (0.1)
0x00| 13 | . | tag: "printable_string" (0x13) 0x7.3-0x8 (0.5)
0x00| 14 | . | length: 20 0x8-0x9 (1)
0x00| 45 78 61 6d 70 6c 65| Example| value: "Example Organization" 0x9-0x1d (20)
0x10|20 4f 72 67 61 6e 69 7a 61 74 69 6f 6e| | Organization| |
{
"decoded": "commonName = Test User 1",
"hex": "30 12 | 06 03 55 04 0b | 13 0b 54 65 73 74 20 55 73 65 72 20 31"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x13.7 (20)
0x00|30 |0 | class: "universal" (0) 0x0-0x0.1 (0.2)
0x00|30 |0 | form: "constructed" (1) 0x0.2-0x0.2 (0.1)
0x00|30 |0 | tag: "sequence" (0x10) 0x0.3-0x0.7 (0.5)
0x00| 12 | . | length: 18 0x1-0x1.7 (1)
| | | constructed[0:2]: 0x2-0x13.7 (18)
| | | [0]{}: object 0x2-0x6.7 (5)
0x00| 06 | . | class: "universal" (0) 0x2-0x2.1 (0.2)
0x00| 06 | . | form: "primitive" (0) 0x2.2-0x2.2 (0.1)
0x00| 06 | . | tag: "object_identifier" (0x6) 0x2.3-0x2.7 (0.5)
0x00| 03 | . | length: 3 0x3-0x3.7 (1)
| | | value[0:4]: 0x4-0x6.7 (3)
0x00| 55 | U | [0]: 2 oid 0x4-0x4.7 (1)
0x00| 55 | U | [1]: 5 oid 0x4-0x4.7 (1)
0x00| 04 | . | [2]: 4 oid 0x5-0x5.7 (1)
0x00| 0b | . | [3]: 11 oid 0x6-0x6.7 (1)
| | | [1]{}: object 0x7-0x13.7 (13)
0x00| 13 | . | class: "universal" (0) 0x7-0x7.1 (0.2)
0x00| 13 | . | form: "primitive" (0) 0x7.2-0x7.2 (0.1)
0x00| 13 | . | tag: "printable_string" (0x13) 0x7.3-0x7.7 (0.5)
0x00| 0b | . | length: 11 0x8-0x8.7 (1)
0x00| 54 65 73 74 20 55 73| Test Us| value: "Test User 1" 0x9-0x13.7 (11)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x14 (20)
0x00|30 |0 | class: "universal" (0) 0x0-0x0.2 (0.2)
0x00|30 |0 | form: "constructed" (1) 0x0.2-0x0.3 (0.1)
0x00|30 |0 | tag: "sequence" (0x10) 0x0.3-0x1 (0.5)
0x00| 12 | . | length: 18 0x1-0x2 (1)
| | | constructed[0:2]: 0x2-0x14 (18)
| | | [0]{}: object 0x2-0x7 (5)
0x00| 06 | . | class: "universal" (0) 0x2-0x2.2 (0.2)
0x00| 06 | . | form: "primitive" (0) 0x2.2-0x2.3 (0.1)
0x00| 06 | . | tag: "object_identifier" (0x6) 0x2.3-0x3 (0.5)
0x00| 03 | . | length: 3 0x3-0x4 (1)
| | | value[0:4]: 0x4-0x7 (3)
0x00| 55 | U | [0]: 2 oid 0x4-0x5 (1)
0x00| 55 | U | [1]: 5 oid 0x4-0x5 (1)
0x00| 04 | . | [2]: 4 oid 0x5-0x6 (1)
0x00| 0b | . | [3]: 11 oid 0x6-0x7 (1)
| | | [1]{}: object 0x7-0x14 (13)
0x00| 13 | . | class: "universal" (0) 0x7-0x7.2 (0.2)
0x00| 13 | . | form: "primitive" (0) 0x7.2-0x7.3 (0.1)
0x00| 13 | . | tag: "printable_string" (0x13) 0x7.3-0x8 (0.5)
0x00| 0b | . | length: 11 0x8-0x9 (1)
0x00| 54 65 73 74 20 55 73| Test Us| value: "Test User 1" 0x9-0x14 (11)
0x10|65 72 20 31| |er 1| |
{
"decoded": "",
"hex": "31 0b | 30 09 | 06 03 55 04 06 | 13 02 55 53"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xc.7 (13)
0x0|31 |1 | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|31 |1 | form: "constructed" (1) 0x0.2-0x0.2 (0.1)
0x0|31 |1 | tag: "set" (0x11) 0x0.3-0x0.7 (0.5)
0x0| 0b | . | length: 11 0x1-0x1.7 (1)
| | | constructed[0:1]: 0x2-0xc.7 (11)
| | | [0]{}: object 0x2-0xc.7 (11)
0x0| 30 | 0 | class: "universal" (0) 0x2-0x2.1 (0.2)
0x0| 30 | 0 | form: "constructed" (1) 0x2.2-0x2.2 (0.1)
0x0| 30 | 0 | tag: "sequence" (0x10) 0x2.3-0x2.7 (0.5)
0x0| 09 | . | length: 9 0x3-0x3.7 (1)
| | | constructed[0:2]: 0x4-0xc.7 (9)
| | | [0]{}: object 0x4-0x8.7 (5)
0x0| 06 | . | class: "universal" (0) 0x4-0x4.1 (0.2)
0x0| 06 | . | form: "primitive" (0) 0x4.2-0x4.2 (0.1)
0x0| 06 | . | tag: "object_identifier" (0x6) 0x4.3-0x4.7 (0.5)
0x0| 03 | . | length: 3 0x5-0x5.7 (1)
| | | value[0:4]: 0x6-0x8.7 (3)
0x0| 55 | U | [0]: 2 oid 0x6-0x6.7 (1)
0x0| 55 | U | [1]: 5 oid 0x6-0x6.7 (1)
0x0| 04 | . | [2]: 4 oid 0x7-0x7.7 (1)
0x0| 06 | . | [3]: 6 oid 0x8-0x8.7 (1)
| | | [1]{}: object 0x9-0xc.7 (4)
0x0| 13 | . | class: "universal" (0) 0x9-0x9.1 (0.2)
0x0| 13 | . | form: "primitive" (0) 0x9.2-0x9.2 (0.1)
0x0| 13 | . | tag: "printable_string" (0x13) 0x9.3-0x9.7 (0.5)
0x0| 02 | . | length: 2 0xa-0xa.7 (1)
0x0| 55 53| | US| | value: "US" 0xb-0xc.7 (2)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xd (13)
0x0|31 |1 | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|31 |1 | form: "constructed" (1) 0x0.2-0x0.3 (0.1)
0x0|31 |1 | tag: "set" (0x11) 0x0.3-0x1 (0.5)
0x0| 0b | . | length: 11 0x1-0x2 (1)
| | | constructed[0:1]: 0x2-0xd (11)
| | | [0]{}: object 0x2-0xd (11)
0x0| 30 | 0 | class: "universal" (0) 0x2-0x2.2 (0.2)
0x0| 30 | 0 | form: "constructed" (1) 0x2.2-0x2.3 (0.1)
0x0| 30 | 0 | tag: "sequence" (0x10) 0x2.3-0x3 (0.5)
0x0| 09 | . | length: 9 0x3-0x4 (1)
| | | constructed[0:2]: 0x4-0xd (9)
| | | [0]{}: object 0x4-0x9 (5)
0x0| 06 | . | class: "universal" (0) 0x4-0x4.2 (0.2)
0x0| 06 | . | form: "primitive" (0) 0x4.2-0x4.3 (0.1)
0x0| 06 | . | tag: "object_identifier" (0x6) 0x4.3-0x5 (0.5)
0x0| 03 | . | length: 3 0x5-0x6 (1)
| | | value[0:4]: 0x6-0x9 (3)
0x0| 55 | U | [0]: 2 oid 0x6-0x7 (1)
0x0| 55 | U | [1]: 5 oid 0x6-0x7 (1)
0x0| 04 | . | [2]: 4 oid 0x7-0x8 (1)
0x0| 06 | . | [3]: 6 oid 0x8-0x9 (1)
| | | [1]{}: object 0x9-0xd (4)
0x0| 13 | . | class: "universal" (0) 0x9-0x9.2 (0.2)
0x0| 13 | . | form: "primitive" (0) 0x9.2-0x9.3 (0.1)
0x0| 13 | . | tag: "printable_string" (0x13) 0x9.3-0xa (0.5)
0x0| 02 | . | length: 2 0xa-0xb (1)
0x0| 55 53| | US| | value: "US" 0xb-0xd (2)
{
"decoded": "",
"hex": "31 1d | 30 1b | 06 03 55 04 0a | 13 14 45 78 61 6d 70 6c 65 20 4f 72 67 61 6e 69 7a 61 | 74 69 6f 6e"
}
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x1e.7 (31)
0x00|31 |1 | class: "universal" (0) 0x0-0x0.1 (0.2)
0x00|31 |1 | form: "constructed" (1) 0x0.2-0x0.2 (0.1)
0x00|31 |1 | tag: "set" (0x11) 0x0.3-0x0.7 (0.5)
0x00| 1d | . | length: 29 0x1-0x1.7 (1)
| | | constructed[0:1]: 0x2-0x1e.7 (29)
| | | [0]{}: object 0x2-0x1e.7 (29)
0x00| 30 | 0 | class: "universal" (0) 0x2-0x2.1 (0.2)
0x00| 30 | 0 | form: "constructed" (1) 0x2.2-0x2.2 (0.1)
0x00| 30 | 0 | tag: "sequence" (0x10) 0x2.3-0x2.7 (0.5)
0x00| 1b | . | length: 27 0x3-0x3.7 (1)
| | | constructed[0:2]: 0x4-0x1e.7 (27)
| | | [0]{}: object 0x4-0x8.7 (5)
0x00| 06 | . | class: "universal" (0) 0x4-0x4.1 (0.2)
0x00| 06 | . | form: "primitive" (0) 0x4.2-0x4.2 (0.1)
0x00| 06 | . | tag: "object_identifier" (0x6) 0x4.3-0x4.7 (0.5)
0x00| 03 | . | length: 3 0x5-0x5.7 (1)
| | | value[0:4]: 0x6-0x8.7 (3)
0x00| 55 | U | [0]: 2 oid 0x6-0x6.7 (1)
0x00| 55 | U | [1]: 5 oid 0x6-0x6.7 (1)
0x00| 04 | . | [2]: 4 oid 0x7-0x7.7 (1)
0x00| 0a | . | [3]: 10 oid 0x8-0x8.7 (1)
| | | [1]{}: object 0x9-0x1e.7 (22)
0x00| 13 | . | class: "universal" (0) 0x9-0x9.1 (0.2)
0x00| 13 | . | form: "primitive" (0) 0x9.2-0x9.2 (0.1)
0x00| 13 | . | tag: "printable_string" (0x13) 0x9.3-0x9.7 (0.5)
0x00| 14 | . | length: 20 0xa-0xa.7 (1)
0x00| 45 78 61 6d 70| Examp| value: "Example Organization" 0xb-0x1e.7 (20)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x1f (31)
0x00|31 |1 | class: "universal" (0) 0x0-0x0.2 (0.2)
0x00|31 |1 | form: "constructed" (1) 0x0.2-0x0.3 (0.1)
0x00|31 |1 | tag: "set" (0x11) 0x0.3-0x1 (0.5)
0x00| 1d | . | length: 29 0x1-0x2 (1)
| | | constructed[0:1]: 0x2-0x1f (29)
| | | [0]{}: object 0x2-0x1f (29)
0x00| 30 | 0 | class: "universal" (0) 0x2-0x2.2 (0.2)
0x00| 30 | 0 | form: "constructed" (1) 0x2.2-0x2.3 (0.1)
0x00| 30 | 0 | tag: "sequence" (0x10) 0x2.3-0x3 (0.5)
0x00| 1b | . | length: 27 0x3-0x4 (1)
| | | constructed[0:2]: 0x4-0x1f (27)
| | | [0]{}: object 0x4-0x9 (5)
0x00| 06 | . | class: "universal" (0) 0x4-0x4.2 (0.2)
0x00| 06 | . | form: "primitive" (0) 0x4.2-0x4.3 (0.1)
0x00| 06 | . | tag: "object_identifier" (0x6) 0x4.3-0x5 (0.5)
0x00| 03 | . | length: 3 0x5-0x6 (1)
| | | value[0:4]: 0x6-0x9 (3)
0x00| 55 | U | [0]: 2 oid 0x6-0x7 (1)
0x00| 55 | U | [1]: 5 oid 0x6-0x7 (1)
0x00| 04 | . | [2]: 4 oid 0x7-0x8 (1)
0x00| 0a | . | [3]: 10 oid 0x8-0x9 (1)
| | | [1]{}: object 0x9-0x1f (22)
0x00| 13 | . | class: "universal" (0) 0x9-0x9.2 (0.2)
0x00| 13 | . | form: "primitive" (0) 0x9.2-0x9.3 (0.1)
0x00| 13 | . | tag: "printable_string" (0x13) 0x9.3-0xa (0.5)
0x00| 14 | . | length: 20 0xa-0xb (1)
0x00| 45 78 61 6d 70| Examp| value: "Example Organization" 0xb-0x1f (20)
0x10|6c 65 20 4f 72 67 61 6e 69 7a 61 74 69 6f 6e| |le Organization||

View File

@ -1,501 +1,501 @@
$ fq -d bytes 'from_pem | asn1_ber | dv' letsencrypt-x3.cer
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x495.7 (1174)
0x00000|30 |0 | class: "universal" (0) 0x0-0x0.1 (0.2)
0x00000|30 |0 | form: "constructed" (1) 0x0.2-0x0.2 (0.1)
0x00000|30 |0 | tag: "sequence" (0x10) 0x0.3-0x0.7 (0.5)
0x00000| 82 04 92 | ... | length: 1170 0x1-0x3.7 (3)
| | | constructed[0:3]: 0x4-0x495.7 (1170)
| | | [0]{}: object 0x4-0x381.7 (894)
0x00000| 30 | 0 | class: "universal" (0) 0x4-0x4.1 (0.2)
0x00000| 30 | 0 | form: "constructed" (1) 0x4.2-0x4.2 (0.1)
0x00000| 30 | 0 | tag: "sequence" (0x10) 0x4.3-0x4.7 (0.5)
0x00000| 82 03 7a | ..z | length: 890 0x5-0x7.7 (3)
| | | constructed[0:8]: 0x8-0x381.7 (890)
| | | [0]{}: object 0x8-0xc.7 (5)
0x00000| a0 | . | class: "context" (2) 0x8-0x8.1 (0.2)
0x00000| a0 | . | form: "constructed" (1) 0x8.2-0x8.2 (0.1)
0x00000| a0 | . | tag: 0 0x8.3-0x8.7 (0.5)
0x00000| 03 | . | length: 3 0x9-0x9.7 (1)
| | | constructed[0:1]: 0xa-0xc.7 (3)
| | | [0]{}: object 0xa-0xc.7 (3)
0x00000| 02 | . | class: "universal" (0) 0xa-0xa.1 (0.2)
0x00000| 02 | . | form: "primitive" (0) 0xa.2-0xa.2 (0.1)
0x00000| 02 | . | tag: "integer" (0x2) 0xa.3-0xa.7 (0.5)
0x00000| 01 | . | length: 1 0xb-0xb.7 (1)
0x00000| 02 | . | value: 2 0xc-0xc.7 (1)
| | | [1]{}: object 0xd-0x1e.7 (18)
0x00000| 02 | . | class: "universal" (0) 0xd-0xd.1 (0.2)
0x00000| 02 | . | form: "primitive" (0) 0xd.2-0xd.2 (0.1)
0x00000| 02 | . | tag: "integer" (0x2) 0xd.3-0xd.7 (0.5)
0x00000| 10 | . | length: 16 0xe-0xe.7 (1)
0x00000| 0a| .| value: 13298795840390663119752826058995181320 0xf-0x1e.7 (16)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0x496 (1174)
0x00000|30 |0 | class: "universal" (0) 0x0-0x0.2 (0.2)
0x00000|30 |0 | form: "constructed" (1) 0x0.2-0x0.3 (0.1)
0x00000|30 |0 | tag: "sequence" (0x10) 0x0.3-0x1 (0.5)
0x00000| 82 04 92 | ... | length: 1170 0x1-0x4 (3)
| | | constructed[0:3]: 0x4-0x496 (1170)
| | | [0]{}: object 0x4-0x382 (894)
0x00000| 30 | 0 | class: "universal" (0) 0x4-0x4.2 (0.2)
0x00000| 30 | 0 | form: "constructed" (1) 0x4.2-0x4.3 (0.1)
0x00000| 30 | 0 | tag: "sequence" (0x10) 0x4.3-0x5 (0.5)
0x00000| 82 03 7a | ..z | length: 890 0x5-0x8 (3)
| | | constructed[0:8]: 0x8-0x382 (890)
| | | [0]{}: object 0x8-0xd (5)
0x00000| a0 | . | class: "context" (2) 0x8-0x8.2 (0.2)
0x00000| a0 | . | form: "constructed" (1) 0x8.2-0x8.3 (0.1)
0x00000| a0 | . | tag: 0 0x8.3-0x9 (0.5)
0x00000| 03 | . | length: 3 0x9-0xa (1)
| | | constructed[0:1]: 0xa-0xd (3)
| | | [0]{}: object 0xa-0xd (3)
0x00000| 02 | . | class: "universal" (0) 0xa-0xa.2 (0.2)
0x00000| 02 | . | form: "primitive" (0) 0xa.2-0xa.3 (0.1)
0x00000| 02 | . | tag: "integer" (0x2) 0xa.3-0xb (0.5)
0x00000| 01 | . | length: 1 0xb-0xc (1)
0x00000| 02 | . | value: 2 0xc-0xd (1)
| | | [1]{}: object 0xd-0x1f (18)
0x00000| 02 | . | class: "universal" (0) 0xd-0xd.2 (0.2)
0x00000| 02 | . | form: "primitive" (0) 0xd.2-0xd.3 (0.1)
0x00000| 02 | . | tag: "integer" (0x2) 0xd.3-0xe (0.5)
0x00000| 10 | . | length: 16 0xe-0xf (1)
0x00000| 0a| .| value: 13298795840390663119752826058995181320 0xf-0x1f (16)
0x00010|01 41 42 00 00 01 53 85 73 6a 0b 85 ec a7 08 |.AB...S.sj..... |
| | | [2]{}: object 0x1f-0x2d.7 (15)
0x00010| 30| 0| class: "universal" (0) 0x1f-0x1f.1 (0.2)
0x00010| 30| 0| form: "constructed" (1) 0x1f.2-0x1f.2 (0.1)
0x00010| 30| 0| tag: "sequence" (0x10) 0x1f.3-0x1f.7 (0.5)
0x00020|0d |. | length: 13 0x20-0x20.7 (1)
| | | constructed[0:2]: 0x21-0x2d.7 (13)
| | | [0]{}: object 0x21-0x2b.7 (11)
0x00020| 06 | . | class: "universal" (0) 0x21-0x21.1 (0.2)
0x00020| 06 | . | form: "primitive" (0) 0x21.2-0x21.2 (0.1)
0x00020| 06 | . | tag: "object_identifier" (0x6) 0x21.3-0x21.7 (0.5)
0x00020| 09 | . | length: 9 0x22-0x22.7 (1)
| | | value[0:7]: 0x23-0x2b.7 (9)
0x00020| 2a | * | [0]: 1 oid 0x23-0x23.7 (1)
0x00020| 2a | * | [1]: 2 oid 0x23-0x23.7 (1)
0x00020| 86 48 | .H | [2]: 840 oid 0x24-0x25.7 (2)
0x00020| 86 f7 0d | ... | [3]: 113549 oid 0x26-0x28.7 (3)
0x00020| 01 | . | [4]: 1 oid 0x29-0x29.7 (1)
0x00020| 01 | . | [5]: 1 oid 0x2a-0x2a.7 (1)
0x00020| 0b | . | [6]: 11 oid 0x2b-0x2b.7 (1)
| | | [1]{}: object 0x2c-0x2d.7 (2)
0x00020| 05 | . | class: "universal" (0) 0x2c-0x2c.1 (0.2)
0x00020| 05 | . | form: "primitive" (0) 0x2c.2-0x2c.2 (0.1)
0x00020| 05 | . | tag: "null" (0x5) 0x2c.3-0x2c.7 (0.5)
0x00020| 00 | . | length: "indefinite" (0) 0x2d-0x2d.7 (1)
| | | value: null 0x2e-NA (0)
| | | [3]{}: object 0x2e-0x6e.7 (65)
0x00020| 30 | 0 | class: "universal" (0) 0x2e-0x2e.1 (0.2)
0x00020| 30 | 0 | form: "constructed" (1) 0x2e.2-0x2e.2 (0.1)
0x00020| 30 | 0 | tag: "sequence" (0x10) 0x2e.3-0x2e.7 (0.5)
0x00020| 3f| ?| length: 63 0x2f-0x2f.7 (1)
| | | constructed[0:2]: 0x30-0x6e.7 (63)
| | | [0]{}: object 0x30-0x55.7 (38)
0x00030|31 |1 | class: "universal" (0) 0x30-0x30.1 (0.2)
0x00030|31 |1 | form: "constructed" (1) 0x30.2-0x30.2 (0.1)
0x00030|31 |1 | tag: "set" (0x11) 0x30.3-0x30.7 (0.5)
0x00030| 24 | $ | length: 36 0x31-0x31.7 (1)
| | | constructed[0:1]: 0x32-0x55.7 (36)
| | | [0]{}: object 0x32-0x55.7 (36)
0x00030| 30 | 0 | class: "universal" (0) 0x32-0x32.1 (0.2)
0x00030| 30 | 0 | form: "constructed" (1) 0x32.2-0x32.2 (0.1)
0x00030| 30 | 0 | tag: "sequence" (0x10) 0x32.3-0x32.7 (0.5)
0x00030| 22 | " | length: 34 0x33-0x33.7 (1)
| | | constructed[0:2]: 0x34-0x55.7 (34)
| | | [0]{}: object 0x34-0x38.7 (5)
0x00030| 06 | . | class: "universal" (0) 0x34-0x34.1 (0.2)
0x00030| 06 | . | form: "primitive" (0) 0x34.2-0x34.2 (0.1)
0x00030| 06 | . | tag: "object_identifier" (0x6) 0x34.3-0x34.7 (0.5)
0x00030| 03 | . | length: 3 0x35-0x35.7 (1)
| | | value[0:4]: 0x36-0x38.7 (3)
0x00030| 55 | U | [0]: 2 oid 0x36-0x36.7 (1)
0x00030| 55 | U | [1]: 5 oid 0x36-0x36.7 (1)
0x00030| 04 | . | [2]: 4 oid 0x37-0x37.7 (1)
0x00030| 0a | . | [3]: 10 oid 0x38-0x38.7 (1)
| | | [1]{}: object 0x39-0x55.7 (29)
0x00030| 13 | . | class: "universal" (0) 0x39-0x39.1 (0.2)
0x00030| 13 | . | form: "primitive" (0) 0x39.2-0x39.2 (0.1)
0x00030| 13 | . | tag: "printable_string" (0x13) 0x39.3-0x39.7 (0.5)
0x00030| 1b | . | length: 27 0x3a-0x3a.7 (1)
0x00030| 44 69 67 69 74| Digit| value: "Digital Signature Trust Co." 0x3b-0x55.7 (27)
| | | [2]{}: object 0x1f-0x2e (15)
0x00010| 30| 0| class: "universal" (0) 0x1f-0x1f.2 (0.2)
0x00010| 30| 0| form: "constructed" (1) 0x1f.2-0x1f.3 (0.1)
0x00010| 30| 0| tag: "sequence" (0x10) 0x1f.3-0x20 (0.5)
0x00020|0d |. | length: 13 0x20-0x21 (1)
| | | constructed[0:2]: 0x21-0x2e (13)
| | | [0]{}: object 0x21-0x2c (11)
0x00020| 06 | . | class: "universal" (0) 0x21-0x21.2 (0.2)
0x00020| 06 | . | form: "primitive" (0) 0x21.2-0x21.3 (0.1)
0x00020| 06 | . | tag: "object_identifier" (0x6) 0x21.3-0x22 (0.5)
0x00020| 09 | . | length: 9 0x22-0x23 (1)
| | | value[0:7]: 0x23-0x2c (9)
0x00020| 2a | * | [0]: 1 oid 0x23-0x24 (1)
0x00020| 2a | * | [1]: 2 oid 0x23-0x24 (1)
0x00020| 86 48 | .H | [2]: 840 oid 0x24-0x26 (2)
0x00020| 86 f7 0d | ... | [3]: 113549 oid 0x26-0x29 (3)
0x00020| 01 | . | [4]: 1 oid 0x29-0x2a (1)
0x00020| 01 | . | [5]: 1 oid 0x2a-0x2b (1)
0x00020| 0b | . | [6]: 11 oid 0x2b-0x2c (1)
| | | [1]{}: object 0x2c-0x2e (2)
0x00020| 05 | . | class: "universal" (0) 0x2c-0x2c.2 (0.2)
0x00020| 05 | . | form: "primitive" (0) 0x2c.2-0x2c.3 (0.1)
0x00020| 05 | . | tag: "null" (0x5) 0x2c.3-0x2d (0.5)
0x00020| 00 | . | length: "indefinite" (0) 0x2d-0x2e (1)
| | | value: null
| | | [3]{}: object 0x2e-0x6f (65)
0x00020| 30 | 0 | class: "universal" (0) 0x2e-0x2e.2 (0.2)
0x00020| 30 | 0 | form: "constructed" (1) 0x2e.2-0x2e.3 (0.1)
0x00020| 30 | 0 | tag: "sequence" (0x10) 0x2e.3-0x2f (0.5)
0x00020| 3f| ?| length: 63 0x2f-0x30 (1)
| | | constructed[0:2]: 0x30-0x6f (63)
| | | [0]{}: object 0x30-0x56 (38)
0x00030|31 |1 | class: "universal" (0) 0x30-0x30.2 (0.2)
0x00030|31 |1 | form: "constructed" (1) 0x30.2-0x30.3 (0.1)
0x00030|31 |1 | tag: "set" (0x11) 0x30.3-0x31 (0.5)
0x00030| 24 | $ | length: 36 0x31-0x32 (1)
| | | constructed[0:1]: 0x32-0x56 (36)
| | | [0]{}: object 0x32-0x56 (36)
0x00030| 30 | 0 | class: "universal" (0) 0x32-0x32.2 (0.2)
0x00030| 30 | 0 | form: "constructed" (1) 0x32.2-0x32.3 (0.1)
0x00030| 30 | 0 | tag: "sequence" (0x10) 0x32.3-0x33 (0.5)
0x00030| 22 | " | length: 34 0x33-0x34 (1)
| | | constructed[0:2]: 0x34-0x56 (34)
| | | [0]{}: object 0x34-0x39 (5)
0x00030| 06 | . | class: "universal" (0) 0x34-0x34.2 (0.2)
0x00030| 06 | . | form: "primitive" (0) 0x34.2-0x34.3 (0.1)
0x00030| 06 | . | tag: "object_identifier" (0x6) 0x34.3-0x35 (0.5)
0x00030| 03 | . | length: 3 0x35-0x36 (1)
| | | value[0:4]: 0x36-0x39 (3)
0x00030| 55 | U | [0]: 2 oid 0x36-0x37 (1)
0x00030| 55 | U | [1]: 5 oid 0x36-0x37 (1)
0x00030| 04 | . | [2]: 4 oid 0x37-0x38 (1)
0x00030| 0a | . | [3]: 10 oid 0x38-0x39 (1)
| | | [1]{}: object 0x39-0x56 (29)
0x00030| 13 | . | class: "universal" (0) 0x39-0x39.2 (0.2)
0x00030| 13 | . | form: "primitive" (0) 0x39.2-0x39.3 (0.1)
0x00030| 13 | . | tag: "printable_string" (0x13) 0x39.3-0x3a (0.5)
0x00030| 1b | . | length: 27 0x3a-0x3b (1)
0x00030| 44 69 67 69 74| Digit| value: "Digital Signature Trust Co." 0x3b-0x56 (27)
0x00040|61 6c 20 53 69 67 6e 61 74 75 72 65 20 54 72 75|al Signature Tru|
0x00050|73 74 20 43 6f 2e |st Co. |
| | | [1]{}: object 0x56-0x6e.7 (25)
0x00050| 31 | 1 | class: "universal" (0) 0x56-0x56.1 (0.2)
0x00050| 31 | 1 | form: "constructed" (1) 0x56.2-0x56.2 (0.1)
0x00050| 31 | 1 | tag: "set" (0x11) 0x56.3-0x56.7 (0.5)
0x00050| 17 | . | length: 23 0x57-0x57.7 (1)
| | | constructed[0:1]: 0x58-0x6e.7 (23)
| | | [0]{}: object 0x58-0x6e.7 (23)
0x00050| 30 | 0 | class: "universal" (0) 0x58-0x58.1 (0.2)
0x00050| 30 | 0 | form: "constructed" (1) 0x58.2-0x58.2 (0.1)
0x00050| 30 | 0 | tag: "sequence" (0x10) 0x58.3-0x58.7 (0.5)
0x00050| 15 | . | length: 21 0x59-0x59.7 (1)
| | | constructed[0:2]: 0x5a-0x6e.7 (21)
| | | [0]{}: object 0x5a-0x5e.7 (5)
0x00050| 06 | . | class: "universal" (0) 0x5a-0x5a.1 (0.2)
0x00050| 06 | . | form: "primitive" (0) 0x5a.2-0x5a.2 (0.1)
0x00050| 06 | . | tag: "object_identifier" (0x6) 0x5a.3-0x5a.7 (0.5)
0x00050| 03 | . | length: 3 0x5b-0x5b.7 (1)
| | | value[0:4]: 0x5c-0x5e.7 (3)
0x00050| 55 | U | [0]: 2 oid 0x5c-0x5c.7 (1)
0x00050| 55 | U | [1]: 5 oid 0x5c-0x5c.7 (1)
0x00050| 04 | . | [2]: 4 oid 0x5d-0x5d.7 (1)
0x00050| 03 | . | [3]: 3 oid 0x5e-0x5e.7 (1)
| | | [1]{}: object 0x5f-0x6e.7 (16)
0x00050| 13| .| class: "universal" (0) 0x5f-0x5f.1 (0.2)
0x00050| 13| .| form: "primitive" (0) 0x5f.2-0x5f.2 (0.1)
0x00050| 13| .| tag: "printable_string" (0x13) 0x5f.3-0x5f.7 (0.5)
0x00060|0e |. | length: 14 0x60-0x60.7 (1)
0x00060| 44 53 54 20 52 6f 6f 74 20 43 41 20 58 33 | DST Root CA X3 | value: "DST Root CA X3" 0x61-0x6e.7 (14)
| | | [4]{}: object 0x6f-0x8e.7 (32)
0x00060| 30| 0| class: "universal" (0) 0x6f-0x6f.1 (0.2)
0x00060| 30| 0| form: "constructed" (1) 0x6f.2-0x6f.2 (0.1)
0x00060| 30| 0| tag: "sequence" (0x10) 0x6f.3-0x6f.7 (0.5)
0x00070|1e |. | length: 30 0x70-0x70.7 (1)
| | | constructed[0:2]: 0x71-0x8e.7 (30)
| | | [0]{}: object 0x71-0x7f.7 (15)
0x00070| 17 | . | class: "universal" (0) 0x71-0x71.1 (0.2)
0x00070| 17 | . | form: "primitive" (0) 0x71.2-0x71.2 (0.1)
0x00070| 17 | . | tag: "utc_time" (0x17) 0x71.3-0x71.7 (0.5)
0x00070| 0d | . | length: 13 0x72-0x72.7 (1)
0x00070| 31 36 30 33 31 37 31 36 34 30 34 36 5a| 160317164046Z| value: "160317164046Z" 0x73-0x7f.7 (13)
| | | [1]{}: object 0x80-0x8e.7 (15)
0x00080|17 |. | class: "universal" (0) 0x80-0x80.1 (0.2)
0x00080|17 |. | form: "primitive" (0) 0x80.2-0x80.2 (0.1)
0x00080|17 |. | tag: "utc_time" (0x17) 0x80.3-0x80.7 (0.5)
0x00080| 0d | . | length: 13 0x81-0x81.7 (1)
0x00080| 32 31 30 33 31 37 31 36 34 30 34 36 5a | 210317164046Z | value: "210317164046Z" 0x82-0x8e.7 (13)
| | | [5]{}: object 0x8f-0xda.7 (76)
0x00080| 30| 0| class: "universal" (0) 0x8f-0x8f.1 (0.2)
0x00080| 30| 0| form: "constructed" (1) 0x8f.2-0x8f.2 (0.1)
0x00080| 30| 0| tag: "sequence" (0x10) 0x8f.3-0x8f.7 (0.5)
0x00090|4a |J | length: 74 0x90-0x90.7 (1)
| | | constructed[0:3]: 0x91-0xda.7 (74)
| | | [0]{}: object 0x91-0x9d.7 (13)
0x00090| 31 | 1 | class: "universal" (0) 0x91-0x91.1 (0.2)
0x00090| 31 | 1 | form: "constructed" (1) 0x91.2-0x91.2 (0.1)
0x00090| 31 | 1 | tag: "set" (0x11) 0x91.3-0x91.7 (0.5)
0x00090| 0b | . | length: 11 0x92-0x92.7 (1)
| | | constructed[0:1]: 0x93-0x9d.7 (11)
| | | [0]{}: object 0x93-0x9d.7 (11)
0x00090| 30 | 0 | class: "universal" (0) 0x93-0x93.1 (0.2)
0x00090| 30 | 0 | form: "constructed" (1) 0x93.2-0x93.2 (0.1)
0x00090| 30 | 0 | tag: "sequence" (0x10) 0x93.3-0x93.7 (0.5)
0x00090| 09 | . | length: 9 0x94-0x94.7 (1)
| | | constructed[0:2]: 0x95-0x9d.7 (9)
| | | [0]{}: object 0x95-0x99.7 (5)
0x00090| 06 | . | class: "universal" (0) 0x95-0x95.1 (0.2)
0x00090| 06 | . | form: "primitive" (0) 0x95.2-0x95.2 (0.1)
0x00090| 06 | . | tag: "object_identifier" (0x6) 0x95.3-0x95.7 (0.5)
0x00090| 03 | . | length: 3 0x96-0x96.7 (1)
| | | value[0:4]: 0x97-0x99.7 (3)
0x00090| 55 | U | [0]: 2 oid 0x97-0x97.7 (1)
0x00090| 55 | U | [1]: 5 oid 0x97-0x97.7 (1)
0x00090| 04 | . | [2]: 4 oid 0x98-0x98.7 (1)
0x00090| 06 | . | [3]: 6 oid 0x99-0x99.7 (1)
| | | [1]{}: object 0x9a-0x9d.7 (4)
0x00090| 13 | . | class: "universal" (0) 0x9a-0x9a.1 (0.2)
0x00090| 13 | . | form: "primitive" (0) 0x9a.2-0x9a.2 (0.1)
0x00090| 13 | . | tag: "printable_string" (0x13) 0x9a.3-0x9a.7 (0.5)
0x00090| 02 | . | length: 2 0x9b-0x9b.7 (1)
0x00090| 55 53 | US | value: "US" 0x9c-0x9d.7 (2)
| | | [1]{}: object 0x9e-0xb5.7 (24)
0x00090| 31 | 1 | class: "universal" (0) 0x9e-0x9e.1 (0.2)
0x00090| 31 | 1 | form: "constructed" (1) 0x9e.2-0x9e.2 (0.1)
0x00090| 31 | 1 | tag: "set" (0x11) 0x9e.3-0x9e.7 (0.5)
0x00090| 16| .| length: 22 0x9f-0x9f.7 (1)
| | | constructed[0:1]: 0xa0-0xb5.7 (22)
| | | [0]{}: object 0xa0-0xb5.7 (22)
0x000a0|30 |0 | class: "universal" (0) 0xa0-0xa0.1 (0.2)
0x000a0|30 |0 | form: "constructed" (1) 0xa0.2-0xa0.2 (0.1)
0x000a0|30 |0 | tag: "sequence" (0x10) 0xa0.3-0xa0.7 (0.5)
0x000a0| 14 | . | length: 20 0xa1-0xa1.7 (1)
| | | constructed[0:2]: 0xa2-0xb5.7 (20)
| | | [0]{}: object 0xa2-0xa6.7 (5)
0x000a0| 06 | . | class: "universal" (0) 0xa2-0xa2.1 (0.2)
0x000a0| 06 | . | form: "primitive" (0) 0xa2.2-0xa2.2 (0.1)
0x000a0| 06 | . | tag: "object_identifier" (0x6) 0xa2.3-0xa2.7 (0.5)
0x000a0| 03 | . | length: 3 0xa3-0xa3.7 (1)
| | | value[0:4]: 0xa4-0xa6.7 (3)
0x000a0| 55 | U | [0]: 2 oid 0xa4-0xa4.7 (1)
0x000a0| 55 | U | [1]: 5 oid 0xa4-0xa4.7 (1)
0x000a0| 04 | . | [2]: 4 oid 0xa5-0xa5.7 (1)
0x000a0| 0a | . | [3]: 10 oid 0xa6-0xa6.7 (1)
| | | [1]{}: object 0xa7-0xb5.7 (15)
0x000a0| 13 | . | class: "universal" (0) 0xa7-0xa7.1 (0.2)
0x000a0| 13 | . | form: "primitive" (0) 0xa7.2-0xa7.2 (0.1)
0x000a0| 13 | . | tag: "printable_string" (0x13) 0xa7.3-0xa7.7 (0.5)
0x000a0| 0d | . | length: 13 0xa8-0xa8.7 (1)
0x000a0| 4c 65 74 27 73 20 45| Let's E| value: "Let's Encrypt" 0xa9-0xb5.7 (13)
| | | [1]{}: object 0x56-0x6f (25)
0x00050| 31 | 1 | class: "universal" (0) 0x56-0x56.2 (0.2)
0x00050| 31 | 1 | form: "constructed" (1) 0x56.2-0x56.3 (0.1)
0x00050| 31 | 1 | tag: "set" (0x11) 0x56.3-0x57 (0.5)
0x00050| 17 | . | length: 23 0x57-0x58 (1)
| | | constructed[0:1]: 0x58-0x6f (23)
| | | [0]{}: object 0x58-0x6f (23)
0x00050| 30 | 0 | class: "universal" (0) 0x58-0x58.2 (0.2)
0x00050| 30 | 0 | form: "constructed" (1) 0x58.2-0x58.3 (0.1)
0x00050| 30 | 0 | tag: "sequence" (0x10) 0x58.3-0x59 (0.5)
0x00050| 15 | . | length: 21 0x59-0x5a (1)
| | | constructed[0:2]: 0x5a-0x6f (21)
| | | [0]{}: object 0x5a-0x5f (5)
0x00050| 06 | . | class: "universal" (0) 0x5a-0x5a.2 (0.2)
0x00050| 06 | . | form: "primitive" (0) 0x5a.2-0x5a.3 (0.1)
0x00050| 06 | . | tag: "object_identifier" (0x6) 0x5a.3-0x5b (0.5)
0x00050| 03 | . | length: 3 0x5b-0x5c (1)
| | | value[0:4]: 0x5c-0x5f (3)
0x00050| 55 | U | [0]: 2 oid 0x5c-0x5d (1)
0x00050| 55 | U | [1]: 5 oid 0x5c-0x5d (1)
0x00050| 04 | . | [2]: 4 oid 0x5d-0x5e (1)
0x00050| 03 | . | [3]: 3 oid 0x5e-0x5f (1)
| | | [1]{}: object 0x5f-0x6f (16)
0x00050| 13| .| class: "universal" (0) 0x5f-0x5f.2 (0.2)
0x00050| 13| .| form: "primitive" (0) 0x5f.2-0x5f.3 (0.1)
0x00050| 13| .| tag: "printable_string" (0x13) 0x5f.3-0x60 (0.5)
0x00060|0e |. | length: 14 0x60-0x61 (1)
0x00060| 44 53 54 20 52 6f 6f 74 20 43 41 20 58 33 | DST Root CA X3 | value: "DST Root CA X3" 0x61-0x6f (14)
| | | [4]{}: object 0x6f-0x8f (32)
0x00060| 30| 0| class: "universal" (0) 0x6f-0x6f.2 (0.2)
0x00060| 30| 0| form: "constructed" (1) 0x6f.2-0x6f.3 (0.1)
0x00060| 30| 0| tag: "sequence" (0x10) 0x6f.3-0x70 (0.5)
0x00070|1e |. | length: 30 0x70-0x71 (1)
| | | constructed[0:2]: 0x71-0x8f (30)
| | | [0]{}: object 0x71-0x80 (15)
0x00070| 17 | . | class: "universal" (0) 0x71-0x71.2 (0.2)
0x00070| 17 | . | form: "primitive" (0) 0x71.2-0x71.3 (0.1)
0x00070| 17 | . | tag: "utc_time" (0x17) 0x71.3-0x72 (0.5)
0x00070| 0d | . | length: 13 0x72-0x73 (1)
0x00070| 31 36 30 33 31 37 31 36 34 30 34 36 5a| 160317164046Z| value: "160317164046Z" 0x73-0x80 (13)
| | | [1]{}: object 0x80-0x8f (15)
0x00080|17 |. | class: "universal" (0) 0x80-0x80.2 (0.2)
0x00080|17 |. | form: "primitive" (0) 0x80.2-0x80.3 (0.1)
0x00080|17 |. | tag: "utc_time" (0x17) 0x80.3-0x81 (0.5)
0x00080| 0d | . | length: 13 0x81-0x82 (1)
0x00080| 32 31 30 33 31 37 31 36 34 30 34 36 5a | 210317164046Z | value: "210317164046Z" 0x82-0x8f (13)
| | | [5]{}: object 0x8f-0xdb (76)
0x00080| 30| 0| class: "universal" (0) 0x8f-0x8f.2 (0.2)
0x00080| 30| 0| form: "constructed" (1) 0x8f.2-0x8f.3 (0.1)
0x00080| 30| 0| tag: "sequence" (0x10) 0x8f.3-0x90 (0.5)
0x00090|4a |J | length: 74 0x90-0x91 (1)
| | | constructed[0:3]: 0x91-0xdb (74)
| | | [0]{}: object 0x91-0x9e (13)
0x00090| 31 | 1 | class: "universal" (0) 0x91-0x91.2 (0.2)
0x00090| 31 | 1 | form: "constructed" (1) 0x91.2-0x91.3 (0.1)
0x00090| 31 | 1 | tag: "set" (0x11) 0x91.3-0x92 (0.5)
0x00090| 0b | . | length: 11 0x92-0x93 (1)
| | | constructed[0:1]: 0x93-0x9e (11)
| | | [0]{}: object 0x93-0x9e (11)
0x00090| 30 | 0 | class: "universal" (0) 0x93-0x93.2 (0.2)
0x00090| 30 | 0 | form: "constructed" (1) 0x93.2-0x93.3 (0.1)
0x00090| 30 | 0 | tag: "sequence" (0x10) 0x93.3-0x94 (0.5)
0x00090| 09 | . | length: 9 0x94-0x95 (1)
| | | constructed[0:2]: 0x95-0x9e (9)
| | | [0]{}: object 0x95-0x9a (5)
0x00090| 06 | . | class: "universal" (0) 0x95-0x95.2 (0.2)
0x00090| 06 | . | form: "primitive" (0) 0x95.2-0x95.3 (0.1)
0x00090| 06 | . | tag: "object_identifier" (0x6) 0x95.3-0x96 (0.5)
0x00090| 03 | . | length: 3 0x96-0x97 (1)
| | | value[0:4]: 0x97-0x9a (3)
0x00090| 55 | U | [0]: 2 oid 0x97-0x98 (1)
0x00090| 55 | U | [1]: 5 oid 0x97-0x98 (1)
0x00090| 04 | . | [2]: 4 oid 0x98-0x99 (1)
0x00090| 06 | . | [3]: 6 oid 0x99-0x9a (1)
| | | [1]{}: object 0x9a-0x9e (4)
0x00090| 13 | . | class: "universal" (0) 0x9a-0x9a.2 (0.2)
0x00090| 13 | . | form: "primitive" (0) 0x9a.2-0x9a.3 (0.1)
0x00090| 13 | . | tag: "printable_string" (0x13) 0x9a.3-0x9b (0.5)
0x00090| 02 | . | length: 2 0x9b-0x9c (1)
0x00090| 55 53 | US | value: "US" 0x9c-0x9e (2)
| | | [1]{}: object 0x9e-0xb6 (24)
0x00090| 31 | 1 | class: "universal" (0) 0x9e-0x9e.2 (0.2)
0x00090| 31 | 1 | form: "constructed" (1) 0x9e.2-0x9e.3 (0.1)
0x00090| 31 | 1 | tag: "set" (0x11) 0x9e.3-0x9f (0.5)
0x00090| 16| .| length: 22 0x9f-0xa0 (1)
| | | constructed[0:1]: 0xa0-0xb6 (22)
| | | [0]{}: object 0xa0-0xb6 (22)
0x000a0|30 |0 | class: "universal" (0) 0xa0-0xa0.2 (0.2)
0x000a0|30 |0 | form: "constructed" (1) 0xa0.2-0xa0.3 (0.1)
0x000a0|30 |0 | tag: "sequence" (0x10) 0xa0.3-0xa1 (0.5)
0x000a0| 14 | . | length: 20 0xa1-0xa2 (1)
| | | constructed[0:2]: 0xa2-0xb6 (20)
| | | [0]{}: object 0xa2-0xa7 (5)
0x000a0| 06 | . | class: "universal" (0) 0xa2-0xa2.2 (0.2)
0x000a0| 06 | . | form: "primitive" (0) 0xa2.2-0xa2.3 (0.1)
0x000a0| 06 | . | tag: "object_identifier" (0x6) 0xa2.3-0xa3 (0.5)
0x000a0| 03 | . | length: 3 0xa3-0xa4 (1)
| | | value[0:4]: 0xa4-0xa7 (3)
0x000a0| 55 | U | [0]: 2 oid 0xa4-0xa5 (1)
0x000a0| 55 | U | [1]: 5 oid 0xa4-0xa5 (1)
0x000a0| 04 | . | [2]: 4 oid 0xa5-0xa6 (1)
0x000a0| 0a | . | [3]: 10 oid 0xa6-0xa7 (1)
| | | [1]{}: object 0xa7-0xb6 (15)
0x000a0| 13 | . | class: "universal" (0) 0xa7-0xa7.2 (0.2)
0x000a0| 13 | . | form: "primitive" (0) 0xa7.2-0xa7.3 (0.1)
0x000a0| 13 | . | tag: "printable_string" (0x13) 0xa7.3-0xa8 (0.5)
0x000a0| 0d | . | length: 13 0xa8-0xa9 (1)
0x000a0| 4c 65 74 27 73 20 45| Let's E| value: "Let's Encrypt" 0xa9-0xb6 (13)
0x000b0|6e 63 72 79 70 74 |ncrypt |
| | | [2]{}: object 0xb6-0xda.7 (37)
0x000b0| 31 | 1 | class: "universal" (0) 0xb6-0xb6.1 (0.2)
0x000b0| 31 | 1 | form: "constructed" (1) 0xb6.2-0xb6.2 (0.1)
0x000b0| 31 | 1 | tag: "set" (0x11) 0xb6.3-0xb6.7 (0.5)
0x000b0| 23 | # | length: 35 0xb7-0xb7.7 (1)
| | | constructed[0:1]: 0xb8-0xda.7 (35)
| | | [0]{}: object 0xb8-0xda.7 (35)
0x000b0| 30 | 0 | class: "universal" (0) 0xb8-0xb8.1 (0.2)
0x000b0| 30 | 0 | form: "constructed" (1) 0xb8.2-0xb8.2 (0.1)
0x000b0| 30 | 0 | tag: "sequence" (0x10) 0xb8.3-0xb8.7 (0.5)
0x000b0| 21 | ! | length: 33 0xb9-0xb9.7 (1)
| | | constructed[0:2]: 0xba-0xda.7 (33)
| | | [0]{}: object 0xba-0xbe.7 (5)
0x000b0| 06 | . | class: "universal" (0) 0xba-0xba.1 (0.2)
0x000b0| 06 | . | form: "primitive" (0) 0xba.2-0xba.2 (0.1)
0x000b0| 06 | . | tag: "object_identifier" (0x6) 0xba.3-0xba.7 (0.5)
0x000b0| 03 | . | length: 3 0xbb-0xbb.7 (1)
| | | value[0:4]: 0xbc-0xbe.7 (3)
0x000b0| 55 | U | [0]: 2 oid 0xbc-0xbc.7 (1)
0x000b0| 55 | U | [1]: 5 oid 0xbc-0xbc.7 (1)
0x000b0| 04 | . | [2]: 4 oid 0xbd-0xbd.7 (1)
0x000b0| 03 | . | [3]: 3 oid 0xbe-0xbe.7 (1)
| | | [1]{}: object 0xbf-0xda.7 (28)
0x000b0| 13| .| class: "universal" (0) 0xbf-0xbf.1 (0.2)
0x000b0| 13| .| form: "primitive" (0) 0xbf.2-0xbf.2 (0.1)
0x000b0| 13| .| tag: "printable_string" (0x13) 0xbf.3-0xbf.7 (0.5)
0x000c0|1a |. | length: 26 0xc0-0xc0.7 (1)
0x000c0| 4c 65 74 27 73 20 45 6e 63 72 79 70 74 20 41| Let's Encrypt A| value: "Let's Encrypt Authority X3" 0xc1-0xda.7 (26)
| | | [2]{}: object 0xb6-0xdb (37)
0x000b0| 31 | 1 | class: "universal" (0) 0xb6-0xb6.2 (0.2)
0x000b0| 31 | 1 | form: "constructed" (1) 0xb6.2-0xb6.3 (0.1)
0x000b0| 31 | 1 | tag: "set" (0x11) 0xb6.3-0xb7 (0.5)
0x000b0| 23 | # | length: 35 0xb7-0xb8 (1)
| | | constructed[0:1]: 0xb8-0xdb (35)
| | | [0]{}: object 0xb8-0xdb (35)
0x000b0| 30 | 0 | class: "universal" (0) 0xb8-0xb8.2 (0.2)
0x000b0| 30 | 0 | form: "constructed" (1) 0xb8.2-0xb8.3 (0.1)
0x000b0| 30 | 0 | tag: "sequence" (0x10) 0xb8.3-0xb9 (0.5)
0x000b0| 21 | ! | length: 33 0xb9-0xba (1)
| | | constructed[0:2]: 0xba-0xdb (33)
| | | [0]{}: object 0xba-0xbf (5)
0x000b0| 06 | . | class: "universal" (0) 0xba-0xba.2 (0.2)
0x000b0| 06 | . | form: "primitive" (0) 0xba.2-0xba.3 (0.1)
0x000b0| 06 | . | tag: "object_identifier" (0x6) 0xba.3-0xbb (0.5)
0x000b0| 03 | . | length: 3 0xbb-0xbc (1)
| | | value[0:4]: 0xbc-0xbf (3)
0x000b0| 55 | U | [0]: 2 oid 0xbc-0xbd (1)
0x000b0| 55 | U | [1]: 5 oid 0xbc-0xbd (1)
0x000b0| 04 | . | [2]: 4 oid 0xbd-0xbe (1)
0x000b0| 03 | . | [3]: 3 oid 0xbe-0xbf (1)
| | | [1]{}: object 0xbf-0xdb (28)
0x000b0| 13| .| class: "universal" (0) 0xbf-0xbf.2 (0.2)
0x000b0| 13| .| form: "primitive" (0) 0xbf.2-0xbf.3 (0.1)
0x000b0| 13| .| tag: "printable_string" (0x13) 0xbf.3-0xc0 (0.5)
0x000c0|1a |. | length: 26 0xc0-0xc1 (1)
0x000c0| 4c 65 74 27 73 20 45 6e 63 72 79 70 74 20 41| Let's Encrypt A| value: "Let's Encrypt Authority X3" 0xc1-0xdb (26)
0x000d0|75 74 68 6f 72 69 74 79 20 58 33 |uthority X3 |
| | | [6]{}: object 0xdb-0x200.7 (294)
0x000d0| 30 | 0 | class: "universal" (0) 0xdb-0xdb.1 (0.2)
0x000d0| 30 | 0 | form: "constructed" (1) 0xdb.2-0xdb.2 (0.1)
0x000d0| 30 | 0 | tag: "sequence" (0x10) 0xdb.3-0xdb.7 (0.5)
0x000d0| 82 01 22 | .." | length: 290 0xdc-0xde.7 (3)
| | | constructed[0:2]: 0xdf-0x200.7 (290)
| | | [0]{}: object 0xdf-0xed.7 (15)
0x000d0| 30| 0| class: "universal" (0) 0xdf-0xdf.1 (0.2)
0x000d0| 30| 0| form: "constructed" (1) 0xdf.2-0xdf.2 (0.1)
0x000d0| 30| 0| tag: "sequence" (0x10) 0xdf.3-0xdf.7 (0.5)
0x000e0|0d |. | length: 13 0xe0-0xe0.7 (1)
| | | constructed[0:2]: 0xe1-0xed.7 (13)
| | | [0]{}: object 0xe1-0xeb.7 (11)
0x000e0| 06 | . | class: "universal" (0) 0xe1-0xe1.1 (0.2)
0x000e0| 06 | . | form: "primitive" (0) 0xe1.2-0xe1.2 (0.1)
0x000e0| 06 | . | tag: "object_identifier" (0x6) 0xe1.3-0xe1.7 (0.5)
0x000e0| 09 | . | length: 9 0xe2-0xe2.7 (1)
| | | value[0:7]: 0xe3-0xeb.7 (9)
0x000e0| 2a | * | [0]: 1 oid 0xe3-0xe3.7 (1)
0x000e0| 2a | * | [1]: 2 oid 0xe3-0xe3.7 (1)
0x000e0| 86 48 | .H | [2]: 840 oid 0xe4-0xe5.7 (2)
0x000e0| 86 f7 0d | ... | [3]: 113549 oid 0xe6-0xe8.7 (3)
0x000e0| 01 | . | [4]: 1 oid 0xe9-0xe9.7 (1)
0x000e0| 01 | . | [5]: 1 oid 0xea-0xea.7 (1)
0x000e0| 01 | . | [6]: 1 oid 0xeb-0xeb.7 (1)
| | | [1]{}: object 0xec-0xed.7 (2)
0x000e0| 05 | . | class: "universal" (0) 0xec-0xec.1 (0.2)
0x000e0| 05 | . | form: "primitive" (0) 0xec.2-0xec.2 (0.1)
0x000e0| 05 | . | tag: "null" (0x5) 0xec.3-0xec.7 (0.5)
0x000e0| 00 | . | length: "indefinite" (0) 0xed-0xed.7 (1)
| | | value: null 0xee-NA (0)
| | | [1]{}: object 0xee-0x200.7 (275)
0x000e0| 03 | . | class: "universal" (0) 0xee-0xee.1 (0.2)
0x000e0| 03 | . | form: "primitive" (0) 0xee.2-0xee.2 (0.1)
0x000e0| 03 | . | tag: "bit_string" (0x3) 0xee.3-0xee.7 (0.5)
0x000e0| 82| .| length: 271 0xef-0xf1.7 (3)
| | | [6]{}: object 0xdb-0x201 (294)
0x000d0| 30 | 0 | class: "universal" (0) 0xdb-0xdb.2 (0.2)
0x000d0| 30 | 0 | form: "constructed" (1) 0xdb.2-0xdb.3 (0.1)
0x000d0| 30 | 0 | tag: "sequence" (0x10) 0xdb.3-0xdc (0.5)
0x000d0| 82 01 22 | .." | length: 290 0xdc-0xdf (3)
| | | constructed[0:2]: 0xdf-0x201 (290)
| | | [0]{}: object 0xdf-0xee (15)
0x000d0| 30| 0| class: "universal" (0) 0xdf-0xdf.2 (0.2)
0x000d0| 30| 0| form: "constructed" (1) 0xdf.2-0xdf.3 (0.1)
0x000d0| 30| 0| tag: "sequence" (0x10) 0xdf.3-0xe0 (0.5)
0x000e0|0d |. | length: 13 0xe0-0xe1 (1)
| | | constructed[0:2]: 0xe1-0xee (13)
| | | [0]{}: object 0xe1-0xec (11)
0x000e0| 06 | . | class: "universal" (0) 0xe1-0xe1.2 (0.2)
0x000e0| 06 | . | form: "primitive" (0) 0xe1.2-0xe1.3 (0.1)
0x000e0| 06 | . | tag: "object_identifier" (0x6) 0xe1.3-0xe2 (0.5)
0x000e0| 09 | . | length: 9 0xe2-0xe3 (1)
| | | value[0:7]: 0xe3-0xec (9)
0x000e0| 2a | * | [0]: 1 oid 0xe3-0xe4 (1)
0x000e0| 2a | * | [1]: 2 oid 0xe3-0xe4 (1)
0x000e0| 86 48 | .H | [2]: 840 oid 0xe4-0xe6 (2)
0x000e0| 86 f7 0d | ... | [3]: 113549 oid 0xe6-0xe9 (3)
0x000e0| 01 | . | [4]: 1 oid 0xe9-0xea (1)
0x000e0| 01 | . | [5]: 1 oid 0xea-0xeb (1)
0x000e0| 01 | . | [6]: 1 oid 0xeb-0xec (1)
| | | [1]{}: object 0xec-0xee (2)
0x000e0| 05 | . | class: "universal" (0) 0xec-0xec.2 (0.2)
0x000e0| 05 | . | form: "primitive" (0) 0xec.2-0xec.3 (0.1)
0x000e0| 05 | . | tag: "null" (0x5) 0xec.3-0xed (0.5)
0x000e0| 00 | . | length: "indefinite" (0) 0xed-0xee (1)
| | | value: null
| | | [1]{}: object 0xee-0x201 (275)
0x000e0| 03 | . | class: "universal" (0) 0xee-0xee.2 (0.2)
0x000e0| 03 | . | form: "primitive" (0) 0xee.2-0xee.3 (0.1)
0x000e0| 03 | . | tag: "bit_string" (0x3) 0xee.3-0xef (0.5)
0x000e0| 82| .| length: 271 0xef-0xf2 (3)
0x000f0|01 0f |.. |
0x000f0| 00 | . | unused_bits_count: 0 0xf2-0xf2.7 (1)
0x000f0| 30 82 01 0a 02 82 01 01 00 9c d3 0c f0| 0............| value: raw bits 0xf3-0x200.7 (270)
0x000f0| 00 | . | unused_bits_count: 0 0xf2-0xf3 (1)
0x000f0| 30 82 01 0a 02 82 01 01 00 9c d3 0c f0| 0............| value: raw bits 0xf3-0x201 (270)
0x00100|5a e5 2e 47 b7 72 5d 37 83 b3 68 63 30 ea d7 35|Z..G.r]7..hc0..5|
* |until 0x200.7 (270) | |
| | | [7]{}: object 0x201-0x381.7 (385)
0x00200| a3 | . | class: "context" (2) 0x201-0x201.1 (0.2)
0x00200| a3 | . | form: "constructed" (1) 0x201.2-0x201.2 (0.1)
0x00200| a3 | . | tag: 3 0x201.3-0x201.7 (0.5)
0x00200| 82 01 7d | ..} | length: 381 0x202-0x204.7 (3)
| | | constructed[0:1]: 0x205-0x381.7 (381)
| | | [0]{}: object 0x205-0x381.7 (381)
0x00200| 30 | 0 | class: "universal" (0) 0x205-0x205.1 (0.2)
0x00200| 30 | 0 | form: "constructed" (1) 0x205.2-0x205.2 (0.1)
0x00200| 30 | 0 | tag: "sequence" (0x10) 0x205.3-0x205.7 (0.5)
0x00200| 82 01 79 | ..y | length: 377 0x206-0x208.7 (3)
| | | constructed[0:7]: 0x209-0x381.7 (377)
| | | [0]{}: object 0x209-0x21c.7 (20)
0x00200| 30 | 0 | class: "universal" (0) 0x209-0x209.1 (0.2)
0x00200| 30 | 0 | form: "constructed" (1) 0x209.2-0x209.2 (0.1)
0x00200| 30 | 0 | tag: "sequence" (0x10) 0x209.3-0x209.7 (0.5)
0x00200| 12 | . | length: 18 0x20a-0x20a.7 (1)
| | | constructed[0:3]: 0x20b-0x21c.7 (18)
| | | [0]{}: object 0x20b-0x20f.7 (5)
0x00200| 06 | . | class: "universal" (0) 0x20b-0x20b.1 (0.2)
0x00200| 06 | . | form: "primitive" (0) 0x20b.2-0x20b.2 (0.1)
0x00200| 06 | . | tag: "object_identifier" (0x6) 0x20b.3-0x20b.7 (0.5)
0x00200| 03 | . | length: 3 0x20c-0x20c.7 (1)
| | | value[0:4]: 0x20d-0x20f.7 (3)
0x00200| 55 | U | [0]: 2 oid 0x20d-0x20d.7 (1)
0x00200| 55 | U | [1]: 5 oid 0x20d-0x20d.7 (1)
0x00200| 1d | . | [2]: 29 oid 0x20e-0x20e.7 (1)
0x00200| 13| .| [3]: 19 oid 0x20f-0x20f.7 (1)
| | | [1]{}: object 0x210-0x212.7 (3)
0x00210|01 |. | class: "universal" (0) 0x210-0x210.1 (0.2)
0x00210|01 |. | form: "primitive" (0) 0x210.2-0x210.2 (0.1)
0x00210|01 |. | tag: "boolean" (0x1) 0x210.3-0x210.7 (0.5)
0x00210| 01 | . | length: 1 0x211-0x211.7 (1)
0x00210| ff | . | value: true (255) 0x212-0x212.7 (1)
| | | [2]{}: object 0x213-0x21c.7 (10)
0x00210| 04 | . | class: "universal" (0) 0x213-0x213.1 (0.2)
0x00210| 04 | . | form: "primitive" (0) 0x213.2-0x213.2 (0.1)
0x00210| 04 | . | tag: "octet_string" (0x4) 0x213.3-0x213.7 (0.5)
0x00210| 08 | . | length: 8 0x214-0x214.7 (1)
0x00210| 30 06 01 01 ff 02 01 00 | 0....... | value: raw bits 0x215-0x21c.7 (8)
| | | [1]{}: object 0x21d-0x22c.7 (16)
0x00210| 30 | 0 | class: "universal" (0) 0x21d-0x21d.1 (0.2)
0x00210| 30 | 0 | form: "constructed" (1) 0x21d.2-0x21d.2 (0.1)
0x00210| 30 | 0 | tag: "sequence" (0x10) 0x21d.3-0x21d.7 (0.5)
0x00210| 0e | . | length: 14 0x21e-0x21e.7 (1)
| | | constructed[0:3]: 0x21f-0x22c.7 (14)
| | | [0]{}: object 0x21f-0x223.7 (5)
0x00210| 06| .| class: "universal" (0) 0x21f-0x21f.1 (0.2)
0x00210| 06| .| form: "primitive" (0) 0x21f.2-0x21f.2 (0.1)
0x00210| 06| .| tag: "object_identifier" (0x6) 0x21f.3-0x21f.7 (0.5)
0x00220|03 |. | length: 3 0x220-0x220.7 (1)
| | | value[0:4]: 0x221-0x223.7 (3)
0x00220| 55 | U | [0]: 2 oid 0x221-0x221.7 (1)
0x00220| 55 | U | [1]: 5 oid 0x221-0x221.7 (1)
0x00220| 1d | . | [2]: 29 oid 0x222-0x222.7 (1)
0x00220| 0f | . | [3]: 15 oid 0x223-0x223.7 (1)
| | | [1]{}: object 0x224-0x226.7 (3)
0x00220| 01 | . | class: "universal" (0) 0x224-0x224.1 (0.2)
0x00220| 01 | . | form: "primitive" (0) 0x224.2-0x224.2 (0.1)
0x00220| 01 | . | tag: "boolean" (0x1) 0x224.3-0x224.7 (0.5)
0x00220| 01 | . | length: 1 0x225-0x225.7 (1)
0x00220| ff | . | value: true (255) 0x226-0x226.7 (1)
| | | [2]{}: object 0x227-0x22c.7 (6)
0x00220| 04 | . | class: "universal" (0) 0x227-0x227.1 (0.2)
0x00220| 04 | . | form: "primitive" (0) 0x227.2-0x227.2 (0.1)
0x00220| 04 | . | tag: "octet_string" (0x4) 0x227.3-0x227.7 (0.5)
0x00220| 04 | . | length: 4 0x228-0x228.7 (1)
0x00220| 03 02 01 86 | .... | value: raw bits 0x229-0x22c.7 (4)
| | | [2]{}: object 0x22d-0x2ad.7 (129)
0x00220| 30 | 0 | class: "universal" (0) 0x22d-0x22d.1 (0.2)
0x00220| 30 | 0 | form: "constructed" (1) 0x22d.2-0x22d.2 (0.1)
0x00220| 30 | 0 | tag: "sequence" (0x10) 0x22d.3-0x22d.7 (0.5)
0x00220| 7f | . | length: 127 0x22e-0x22e.7 (1)
| | | constructed[0:2]: 0x22f-0x2ad.7 (127)
| | | [0]{}: object 0x22f-0x238.7 (10)
0x00220| 06| .| class: "universal" (0) 0x22f-0x22f.1 (0.2)
0x00220| 06| .| form: "primitive" (0) 0x22f.2-0x22f.2 (0.1)
0x00220| 06| .| tag: "object_identifier" (0x6) 0x22f.3-0x22f.7 (0.5)
0x00230|08 |. | length: 8 0x230-0x230.7 (1)
| | | value[0:9]: 0x231-0x238.7 (8)
0x00230| 2b | + | [0]: 1 oid 0x231-0x231.7 (1)
0x00230| 2b | + | [1]: 3 oid 0x231-0x231.7 (1)
0x00230| 06 | . | [2]: 6 oid 0x232-0x232.7 (1)
0x00230| 01 | . | [3]: 1 oid 0x233-0x233.7 (1)
0x00230| 05 | . | [4]: 5 oid 0x234-0x234.7 (1)
0x00230| 05 | . | [5]: 5 oid 0x235-0x235.7 (1)
0x00230| 07 | . | [6]: 7 oid 0x236-0x236.7 (1)
0x00230| 01 | . | [7]: 1 oid 0x237-0x237.7 (1)
0x00230| 01 | . | [8]: 1 oid 0x238-0x238.7 (1)
| | | [1]{}: object 0x239-0x2ad.7 (117)
0x00230| 04 | . | class: "universal" (0) 0x239-0x239.1 (0.2)
0x00230| 04 | . | form: "primitive" (0) 0x239.2-0x239.2 (0.1)
0x00230| 04 | . | tag: "octet_string" (0x4) 0x239.3-0x239.7 (0.5)
0x00230| 73 | s | length: 115 0x23a-0x23a.7 (1)
0x00230| 30 71 30 32 06| 0q02.| value: raw bits 0x23b-0x2ad.7 (115)
| | | [7]{}: object 0x201-0x382 (385)
0x00200| a3 | . | class: "context" (2) 0x201-0x201.2 (0.2)
0x00200| a3 | . | form: "constructed" (1) 0x201.2-0x201.3 (0.1)
0x00200| a3 | . | tag: 3 0x201.3-0x202 (0.5)
0x00200| 82 01 7d | ..} | length: 381 0x202-0x205 (3)
| | | constructed[0:1]: 0x205-0x382 (381)
| | | [0]{}: object 0x205-0x382 (381)
0x00200| 30 | 0 | class: "universal" (0) 0x205-0x205.2 (0.2)
0x00200| 30 | 0 | form: "constructed" (1) 0x205.2-0x205.3 (0.1)
0x00200| 30 | 0 | tag: "sequence" (0x10) 0x205.3-0x206 (0.5)
0x00200| 82 01 79 | ..y | length: 377 0x206-0x209 (3)
| | | constructed[0:7]: 0x209-0x382 (377)
| | | [0]{}: object 0x209-0x21d (20)
0x00200| 30 | 0 | class: "universal" (0) 0x209-0x209.2 (0.2)
0x00200| 30 | 0 | form: "constructed" (1) 0x209.2-0x209.3 (0.1)
0x00200| 30 | 0 | tag: "sequence" (0x10) 0x209.3-0x20a (0.5)
0x00200| 12 | . | length: 18 0x20a-0x20b (1)
| | | constructed[0:3]: 0x20b-0x21d (18)
| | | [0]{}: object 0x20b-0x210 (5)
0x00200| 06 | . | class: "universal" (0) 0x20b-0x20b.2 (0.2)
0x00200| 06 | . | form: "primitive" (0) 0x20b.2-0x20b.3 (0.1)
0x00200| 06 | . | tag: "object_identifier" (0x6) 0x20b.3-0x20c (0.5)
0x00200| 03 | . | length: 3 0x20c-0x20d (1)
| | | value[0:4]: 0x20d-0x210 (3)
0x00200| 55 | U | [0]: 2 oid 0x20d-0x20e (1)
0x00200| 55 | U | [1]: 5 oid 0x20d-0x20e (1)
0x00200| 1d | . | [2]: 29 oid 0x20e-0x20f (1)
0x00200| 13| .| [3]: 19 oid 0x20f-0x210 (1)
| | | [1]{}: object 0x210-0x213 (3)
0x00210|01 |. | class: "universal" (0) 0x210-0x210.2 (0.2)
0x00210|01 |. | form: "primitive" (0) 0x210.2-0x210.3 (0.1)
0x00210|01 |. | tag: "boolean" (0x1) 0x210.3-0x211 (0.5)
0x00210| 01 | . | length: 1 0x211-0x212 (1)
0x00210| ff | . | value: true (255) 0x212-0x213 (1)
| | | [2]{}: object 0x213-0x21d (10)
0x00210| 04 | . | class: "universal" (0) 0x213-0x213.2 (0.2)
0x00210| 04 | . | form: "primitive" (0) 0x213.2-0x213.3 (0.1)
0x00210| 04 | . | tag: "octet_string" (0x4) 0x213.3-0x214 (0.5)
0x00210| 08 | . | length: 8 0x214-0x215 (1)
0x00210| 30 06 01 01 ff 02 01 00 | 0....... | value: raw bits 0x215-0x21d (8)
| | | [1]{}: object 0x21d-0x22d (16)
0x00210| 30 | 0 | class: "universal" (0) 0x21d-0x21d.2 (0.2)
0x00210| 30 | 0 | form: "constructed" (1) 0x21d.2-0x21d.3 (0.1)
0x00210| 30 | 0 | tag: "sequence" (0x10) 0x21d.3-0x21e (0.5)
0x00210| 0e | . | length: 14 0x21e-0x21f (1)
| | | constructed[0:3]: 0x21f-0x22d (14)
| | | [0]{}: object 0x21f-0x224 (5)
0x00210| 06| .| class: "universal" (0) 0x21f-0x21f.2 (0.2)
0x00210| 06| .| form: "primitive" (0) 0x21f.2-0x21f.3 (0.1)
0x00210| 06| .| tag: "object_identifier" (0x6) 0x21f.3-0x220 (0.5)
0x00220|03 |. | length: 3 0x220-0x221 (1)
| | | value[0:4]: 0x221-0x224 (3)
0x00220| 55 | U | [0]: 2 oid 0x221-0x222 (1)
0x00220| 55 | U | [1]: 5 oid 0x221-0x222 (1)
0x00220| 1d | . | [2]: 29 oid 0x222-0x223 (1)
0x00220| 0f | . | [3]: 15 oid 0x223-0x224 (1)
| | | [1]{}: object 0x224-0x227 (3)
0x00220| 01 | . | class: "universal" (0) 0x224-0x224.2 (0.2)
0x00220| 01 | . | form: "primitive" (0) 0x224.2-0x224.3 (0.1)
0x00220| 01 | . | tag: "boolean" (0x1) 0x224.3-0x225 (0.5)
0x00220| 01 | . | length: 1 0x225-0x226 (1)
0x00220| ff | . | value: true (255) 0x226-0x227 (1)
| | | [2]{}: object 0x227-0x22d (6)
0x00220| 04 | . | class: "universal" (0) 0x227-0x227.2 (0.2)
0x00220| 04 | . | form: "primitive" (0) 0x227.2-0x227.3 (0.1)
0x00220| 04 | . | tag: "octet_string" (0x4) 0x227.3-0x228 (0.5)
0x00220| 04 | . | length: 4 0x228-0x229 (1)
0x00220| 03 02 01 86 | .... | value: raw bits 0x229-0x22d (4)
| | | [2]{}: object 0x22d-0x2ae (129)
0x00220| 30 | 0 | class: "universal" (0) 0x22d-0x22d.2 (0.2)
0x00220| 30 | 0 | form: "constructed" (1) 0x22d.2-0x22d.3 (0.1)
0x00220| 30 | 0 | tag: "sequence" (0x10) 0x22d.3-0x22e (0.5)
0x00220| 7f | . | length: 127 0x22e-0x22f (1)
| | | constructed[0:2]: 0x22f-0x2ae (127)
| | | [0]{}: object 0x22f-0x239 (10)
0x00220| 06| .| class: "universal" (0) 0x22f-0x22f.2 (0.2)
0x00220| 06| .| form: "primitive" (0) 0x22f.2-0x22f.3 (0.1)
0x00220| 06| .| tag: "object_identifier" (0x6) 0x22f.3-0x230 (0.5)
0x00230|08 |. | length: 8 0x230-0x231 (1)
| | | value[0:9]: 0x231-0x239 (8)
0x00230| 2b | + | [0]: 1 oid 0x231-0x232 (1)
0x00230| 2b | + | [1]: 3 oid 0x231-0x232 (1)
0x00230| 06 | . | [2]: 6 oid 0x232-0x233 (1)
0x00230| 01 | . | [3]: 1 oid 0x233-0x234 (1)
0x00230| 05 | . | [4]: 5 oid 0x234-0x235 (1)
0x00230| 05 | . | [5]: 5 oid 0x235-0x236 (1)
0x00230| 07 | . | [6]: 7 oid 0x236-0x237 (1)
0x00230| 01 | . | [7]: 1 oid 0x237-0x238 (1)
0x00230| 01 | . | [8]: 1 oid 0x238-0x239 (1)
| | | [1]{}: object 0x239-0x2ae (117)
0x00230| 04 | . | class: "universal" (0) 0x239-0x239.2 (0.2)
0x00230| 04 | . | form: "primitive" (0) 0x239.2-0x239.3 (0.1)
0x00230| 04 | . | tag: "octet_string" (0x4) 0x239.3-0x23a (0.5)
0x00230| 73 | s | length: 115 0x23a-0x23b (1)
0x00230| 30 71 30 32 06| 0q02.| value: raw bits 0x23b-0x2ae (115)
0x00240|08 2b 06 01 05 05 07 30 01 86 26 68 74 74 70 3a|.+.....0..&http:|
* |until 0x2ad.7 (115) | |
| | | [3]{}: object 0x2ae-0x2ce.7 (33)
0x002a0| 30 | 0 | class: "universal" (0) 0x2ae-0x2ae.1 (0.2)
0x002a0| 30 | 0 | form: "constructed" (1) 0x2ae.2-0x2ae.2 (0.1)
0x002a0| 30 | 0 | tag: "sequence" (0x10) 0x2ae.3-0x2ae.7 (0.5)
0x002a0| 1f| .| length: 31 0x2af-0x2af.7 (1)
| | | constructed[0:2]: 0x2b0-0x2ce.7 (31)
| | | [0]{}: object 0x2b0-0x2b4.7 (5)
0x002b0|06 |. | class: "universal" (0) 0x2b0-0x2b0.1 (0.2)
0x002b0|06 |. | form: "primitive" (0) 0x2b0.2-0x2b0.2 (0.1)
0x002b0|06 |. | tag: "object_identifier" (0x6) 0x2b0.3-0x2b0.7 (0.5)
0x002b0| 03 | . | length: 3 0x2b1-0x2b1.7 (1)
| | | value[0:4]: 0x2b2-0x2b4.7 (3)
0x002b0| 55 | U | [0]: 2 oid 0x2b2-0x2b2.7 (1)
0x002b0| 55 | U | [1]: 5 oid 0x2b2-0x2b2.7 (1)
0x002b0| 1d | . | [2]: 29 oid 0x2b3-0x2b3.7 (1)
0x002b0| 23 | # | [3]: 35 oid 0x2b4-0x2b4.7 (1)
| | | [1]{}: object 0x2b5-0x2ce.7 (26)
0x002b0| 04 | . | class: "universal" (0) 0x2b5-0x2b5.1 (0.2)
0x002b0| 04 | . | form: "primitive" (0) 0x2b5.2-0x2b5.2 (0.1)
0x002b0| 04 | . | tag: "octet_string" (0x4) 0x2b5.3-0x2b5.7 (0.5)
0x002b0| 18 | . | length: 24 0x2b6-0x2b6.7 (1)
0x002b0| 30 16 80 14 c4 a7 b1 a4 7b| 0.......{| value: raw bits 0x2b7-0x2ce.7 (24)
| | | [3]{}: object 0x2ae-0x2cf (33)
0x002a0| 30 | 0 | class: "universal" (0) 0x2ae-0x2ae.2 (0.2)
0x002a0| 30 | 0 | form: "constructed" (1) 0x2ae.2-0x2ae.3 (0.1)
0x002a0| 30 | 0 | tag: "sequence" (0x10) 0x2ae.3-0x2af (0.5)
0x002a0| 1f| .| length: 31 0x2af-0x2b0 (1)
| | | constructed[0:2]: 0x2b0-0x2cf (31)
| | | [0]{}: object 0x2b0-0x2b5 (5)
0x002b0|06 |. | class: "universal" (0) 0x2b0-0x2b0.2 (0.2)
0x002b0|06 |. | form: "primitive" (0) 0x2b0.2-0x2b0.3 (0.1)
0x002b0|06 |. | tag: "object_identifier" (0x6) 0x2b0.3-0x2b1 (0.5)
0x002b0| 03 | . | length: 3 0x2b1-0x2b2 (1)
| | | value[0:4]: 0x2b2-0x2b5 (3)
0x002b0| 55 | U | [0]: 2 oid 0x2b2-0x2b3 (1)
0x002b0| 55 | U | [1]: 5 oid 0x2b2-0x2b3 (1)
0x002b0| 1d | . | [2]: 29 oid 0x2b3-0x2b4 (1)
0x002b0| 23 | # | [3]: 35 oid 0x2b4-0x2b5 (1)
| | | [1]{}: object 0x2b5-0x2cf (26)
0x002b0| 04 | . | class: "universal" (0) 0x2b5-0x2b5.2 (0.2)
0x002b0| 04 | . | form: "primitive" (0) 0x2b5.2-0x2b5.3 (0.1)
0x002b0| 04 | . | tag: "octet_string" (0x4) 0x2b5.3-0x2b6 (0.5)
0x002b0| 18 | . | length: 24 0x2b6-0x2b7 (1)
0x002b0| 30 16 80 14 c4 a7 b1 a4 7b| 0.......{| value: raw bits 0x2b7-0x2cf (24)
0x002c0|2c 71 fa db e1 4b 90 75 ff c4 15 60 85 89 10 |,q...K.u...`... |
| | | [4]{}: object 0x2cf-0x324.7 (86)
0x002c0| 30| 0| class: "universal" (0) 0x2cf-0x2cf.1 (0.2)
0x002c0| 30| 0| form: "constructed" (1) 0x2cf.2-0x2cf.2 (0.1)
0x002c0| 30| 0| tag: "sequence" (0x10) 0x2cf.3-0x2cf.7 (0.5)
0x002d0|54 |T | length: 84 0x2d0-0x2d0.7 (1)
| | | constructed[0:2]: 0x2d1-0x324.7 (84)
| | | [0]{}: object 0x2d1-0x2d5.7 (5)
0x002d0| 06 | . | class: "universal" (0) 0x2d1-0x2d1.1 (0.2)
0x002d0| 06 | . | form: "primitive" (0) 0x2d1.2-0x2d1.2 (0.1)
0x002d0| 06 | . | tag: "object_identifier" (0x6) 0x2d1.3-0x2d1.7 (0.5)
0x002d0| 03 | . | length: 3 0x2d2-0x2d2.7 (1)
| | | value[0:4]: 0x2d3-0x2d5.7 (3)
0x002d0| 55 | U | [0]: 2 oid 0x2d3-0x2d3.7 (1)
0x002d0| 55 | U | [1]: 5 oid 0x2d3-0x2d3.7 (1)
0x002d0| 1d | . | [2]: 29 oid 0x2d4-0x2d4.7 (1)
0x002d0| 20 | | [3]: 32 oid 0x2d5-0x2d5.7 (1)
| | | [1]{}: object 0x2d6-0x324.7 (79)
0x002d0| 04 | . | class: "universal" (0) 0x2d6-0x2d6.1 (0.2)
0x002d0| 04 | . | form: "primitive" (0) 0x2d6.2-0x2d6.2 (0.1)
0x002d0| 04 | . | tag: "octet_string" (0x4) 0x2d6.3-0x2d6.7 (0.5)
0x002d0| 4d | M | length: 77 0x2d7-0x2d7.7 (1)
0x002d0| 30 4b 30 08 06 06 67 81| 0K0...g.| value: raw bits 0x2d8-0x324.7 (77)
| | | [4]{}: object 0x2cf-0x325 (86)
0x002c0| 30| 0| class: "universal" (0) 0x2cf-0x2cf.2 (0.2)
0x002c0| 30| 0| form: "constructed" (1) 0x2cf.2-0x2cf.3 (0.1)
0x002c0| 30| 0| tag: "sequence" (0x10) 0x2cf.3-0x2d0 (0.5)
0x002d0|54 |T | length: 84 0x2d0-0x2d1 (1)
| | | constructed[0:2]: 0x2d1-0x325 (84)
| | | [0]{}: object 0x2d1-0x2d6 (5)
0x002d0| 06 | . | class: "universal" (0) 0x2d1-0x2d1.2 (0.2)
0x002d0| 06 | . | form: "primitive" (0) 0x2d1.2-0x2d1.3 (0.1)
0x002d0| 06 | . | tag: "object_identifier" (0x6) 0x2d1.3-0x2d2 (0.5)
0x002d0| 03 | . | length: 3 0x2d2-0x2d3 (1)
| | | value[0:4]: 0x2d3-0x2d6 (3)
0x002d0| 55 | U | [0]: 2 oid 0x2d3-0x2d4 (1)
0x002d0| 55 | U | [1]: 5 oid 0x2d3-0x2d4 (1)
0x002d0| 1d | . | [2]: 29 oid 0x2d4-0x2d5 (1)
0x002d0| 20 | | [3]: 32 oid 0x2d5-0x2d6 (1)
| | | [1]{}: object 0x2d6-0x325 (79)
0x002d0| 04 | . | class: "universal" (0) 0x2d6-0x2d6.2 (0.2)
0x002d0| 04 | . | form: "primitive" (0) 0x2d6.2-0x2d6.3 (0.1)
0x002d0| 04 | . | tag: "octet_string" (0x4) 0x2d6.3-0x2d7 (0.5)
0x002d0| 4d | M | length: 77 0x2d7-0x2d8 (1)
0x002d0| 30 4b 30 08 06 06 67 81| 0K0...g.| value: raw bits 0x2d8-0x325 (77)
0x002e0|0c 01 02 01 30 3f 06 0b 2b 06 01 04 01 82 df 13|....0?..+.......|
* |until 0x324.7 (77) | |
| | | [5]{}: object 0x325-0x362.7 (62)
0x00320| 30 | 0 | class: "universal" (0) 0x325-0x325.1 (0.2)
0x00320| 30 | 0 | form: "constructed" (1) 0x325.2-0x325.2 (0.1)
0x00320| 30 | 0 | tag: "sequence" (0x10) 0x325.3-0x325.7 (0.5)
0x00320| 3c | < | length: 60 0x326-0x326.7 (1)
| | | constructed[0:2]: 0x327-0x362.7 (60)
| | | [0]{}: object 0x327-0x32b.7 (5)
0x00320| 06 | . | class: "universal" (0) 0x327-0x327.1 (0.2)
0x00320| 06 | . | form: "primitive" (0) 0x327.2-0x327.2 (0.1)
0x00320| 06 | . | tag: "object_identifier" (0x6) 0x327.3-0x327.7 (0.5)
0x00320| 03 | . | length: 3 0x328-0x328.7 (1)
| | | value[0:4]: 0x329-0x32b.7 (3)
0x00320| 55 | U | [0]: 2 oid 0x329-0x329.7 (1)
0x00320| 55 | U | [1]: 5 oid 0x329-0x329.7 (1)
0x00320| 1d | . | [2]: 29 oid 0x32a-0x32a.7 (1)
0x00320| 1f | . | [3]: 31 oid 0x32b-0x32b.7 (1)
| | | [1]{}: object 0x32c-0x362.7 (55)
0x00320| 04 | . | class: "universal" (0) 0x32c-0x32c.1 (0.2)
0x00320| 04 | . | form: "primitive" (0) 0x32c.2-0x32c.2 (0.1)
0x00320| 04 | . | tag: "octet_string" (0x4) 0x32c.3-0x32c.7 (0.5)
0x00320| 35 | 5 | length: 53 0x32d-0x32d.7 (1)
0x00320| 30 33| 03| value: raw bits 0x32e-0x362.7 (53)
| | | [5]{}: object 0x325-0x363 (62)
0x00320| 30 | 0 | class: "universal" (0) 0x325-0x325.2 (0.2)
0x00320| 30 | 0 | form: "constructed" (1) 0x325.2-0x325.3 (0.1)
0x00320| 30 | 0 | tag: "sequence" (0x10) 0x325.3-0x326 (0.5)
0x00320| 3c | < | length: 60 0x326-0x327 (1)
| | | constructed[0:2]: 0x327-0x363 (60)
| | | [0]{}: object 0x327-0x32c (5)
0x00320| 06 | . | class: "universal" (0) 0x327-0x327.2 (0.2)
0x00320| 06 | . | form: "primitive" (0) 0x327.2-0x327.3 (0.1)
0x00320| 06 | . | tag: "object_identifier" (0x6) 0x327.3-0x328 (0.5)
0x00320| 03 | . | length: 3 0x328-0x329 (1)
| | | value[0:4]: 0x329-0x32c (3)
0x00320| 55 | U | [0]: 2 oid 0x329-0x32a (1)
0x00320| 55 | U | [1]: 5 oid 0x329-0x32a (1)
0x00320| 1d | . | [2]: 29 oid 0x32a-0x32b (1)
0x00320| 1f | . | [3]: 31 oid 0x32b-0x32c (1)
| | | [1]{}: object 0x32c-0x363 (55)
0x00320| 04 | . | class: "universal" (0) 0x32c-0x32c.2 (0.2)
0x00320| 04 | . | form: "primitive" (0) 0x32c.2-0x32c.3 (0.1)
0x00320| 04 | . | tag: "octet_string" (0x4) 0x32c.3-0x32d (0.5)
0x00320| 35 | 5 | length: 53 0x32d-0x32e (1)
0x00320| 30 33| 03| value: raw bits 0x32e-0x363 (53)
0x00330|30 31 a0 2f a0 2d 86 2b 68 74 74 70 3a 2f 2f 63|01./.-.+http://c|
* |until 0x362.7 (53) | |
| | | [6]{}: object 0x363-0x381.7 (31)
0x00360| 30 | 0 | class: "universal" (0) 0x363-0x363.1 (0.2)
0x00360| 30 | 0 | form: "constructed" (1) 0x363.2-0x363.2 (0.1)
0x00360| 30 | 0 | tag: "sequence" (0x10) 0x363.3-0x363.7 (0.5)
0x00360| 1d | . | length: 29 0x364-0x364.7 (1)
| | | constructed[0:2]: 0x365-0x381.7 (29)
| | | [0]{}: object 0x365-0x369.7 (5)
0x00360| 06 | . | class: "universal" (0) 0x365-0x365.1 (0.2)
0x00360| 06 | . | form: "primitive" (0) 0x365.2-0x365.2 (0.1)
0x00360| 06 | . | tag: "object_identifier" (0x6) 0x365.3-0x365.7 (0.5)
0x00360| 03 | . | length: 3 0x366-0x366.7 (1)
| | | value[0:4]: 0x367-0x369.7 (3)
0x00360| 55 | U | [0]: 2 oid 0x367-0x367.7 (1)
0x00360| 55 | U | [1]: 5 oid 0x367-0x367.7 (1)
0x00360| 1d | . | [2]: 29 oid 0x368-0x368.7 (1)
0x00360| 0e | . | [3]: 14 oid 0x369-0x369.7 (1)
| | | [1]{}: object 0x36a-0x381.7 (24)
0x00360| 04 | . | class: "universal" (0) 0x36a-0x36a.1 (0.2)
0x00360| 04 | . | form: "primitive" (0) 0x36a.2-0x36a.2 (0.1)
0x00360| 04 | . | tag: "octet_string" (0x4) 0x36a.3-0x36a.7 (0.5)
0x00360| 16 | . | length: 22 0x36b-0x36b.7 (1)
0x00360| 04 14 a8 4a| ...J| value: raw bits 0x36c-0x381.7 (22)
| | | [6]{}: object 0x363-0x382 (31)
0x00360| 30 | 0 | class: "universal" (0) 0x363-0x363.2 (0.2)
0x00360| 30 | 0 | form: "constructed" (1) 0x363.2-0x363.3 (0.1)
0x00360| 30 | 0 | tag: "sequence" (0x10) 0x363.3-0x364 (0.5)
0x00360| 1d | . | length: 29 0x364-0x365 (1)
| | | constructed[0:2]: 0x365-0x382 (29)
| | | [0]{}: object 0x365-0x36a (5)
0x00360| 06 | . | class: "universal" (0) 0x365-0x365.2 (0.2)
0x00360| 06 | . | form: "primitive" (0) 0x365.2-0x365.3 (0.1)
0x00360| 06 | . | tag: "object_identifier" (0x6) 0x365.3-0x366 (0.5)
0x00360| 03 | . | length: 3 0x366-0x367 (1)
| | | value[0:4]: 0x367-0x36a (3)
0x00360| 55 | U | [0]: 2 oid 0x367-0x368 (1)
0x00360| 55 | U | [1]: 5 oid 0x367-0x368 (1)
0x00360| 1d | . | [2]: 29 oid 0x368-0x369 (1)
0x00360| 0e | . | [3]: 14 oid 0x369-0x36a (1)
| | | [1]{}: object 0x36a-0x382 (24)
0x00360| 04 | . | class: "universal" (0) 0x36a-0x36a.2 (0.2)
0x00360| 04 | . | form: "primitive" (0) 0x36a.2-0x36a.3 (0.1)
0x00360| 04 | . | tag: "octet_string" (0x4) 0x36a.3-0x36b (0.5)
0x00360| 16 | . | length: 22 0x36b-0x36c (1)
0x00360| 04 14 a8 4a| ...J| value: raw bits 0x36c-0x382 (22)
0x00370|6a 63 04 7d dd ba e6 d1 39 b7 a6 45 65 ef f3 a8|jc.}....9..Ee...|
0x00380|ec a1 |.. |
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
0x000|30 06 01 01 ff 02 01 00 03 02 01 86 30 71 30 32|0...........0q02| value: raw bits 0x0-0x12e.7 (303)
0x000|30 06 01 01 ff 02 01 00 03 02 01 86 30 71 30 32|0...........0q02| value: raw bits 0x0-0x12f (303)
* |until 0x12e.7 (end) (303) | |
| | | [1]{}: object 0x382-0x390.7 (15)
0x00380| 30 | 0 | class: "universal" (0) 0x382-0x382.1 (0.2)
0x00380| 30 | 0 | form: "constructed" (1) 0x382.2-0x382.2 (0.1)
0x00380| 30 | 0 | tag: "sequence" (0x10) 0x382.3-0x382.7 (0.5)
0x00380| 0d | . | length: 13 0x383-0x383.7 (1)
| | | constructed[0:2]: 0x384-0x390.7 (13)
| | | [0]{}: object 0x384-0x38e.7 (11)
0x00380| 06 | . | class: "universal" (0) 0x384-0x384.1 (0.2)
0x00380| 06 | . | form: "primitive" (0) 0x384.2-0x384.2 (0.1)
0x00380| 06 | . | tag: "object_identifier" (0x6) 0x384.3-0x384.7 (0.5)
0x00380| 09 | . | length: 9 0x385-0x385.7 (1)
| | | value[0:7]: 0x386-0x38e.7 (9)
0x00380| 2a | * | [0]: 1 oid 0x386-0x386.7 (1)
0x00380| 2a | * | [1]: 2 oid 0x386-0x386.7 (1)
0x00380| 86 48 | .H | [2]: 840 oid 0x387-0x388.7 (2)
0x00380| 86 f7 0d | ... | [3]: 113549 oid 0x389-0x38b.7 (3)
0x00380| 01 | . | [4]: 1 oid 0x38c-0x38c.7 (1)
0x00380| 01 | . | [5]: 1 oid 0x38d-0x38d.7 (1)
0x00380| 0b | . | [6]: 11 oid 0x38e-0x38e.7 (1)
| | | [1]{}: object 0x38f-0x390.7 (2)
0x00380| 05| .| class: "universal" (0) 0x38f-0x38f.1 (0.2)
0x00380| 05| .| form: "primitive" (0) 0x38f.2-0x38f.2 (0.1)
0x00380| 05| .| tag: "null" (0x5) 0x38f.3-0x38f.7 (0.5)
0x00390|00 |. | length: "indefinite" (0) 0x390-0x390.7 (1)
| | | value: null 0x391-NA (0)
| | | [2]{}: object 0x391-0x495.7 (261)
0x00390| 03 | . | class: "universal" (0) 0x391-0x391.1 (0.2)
0x00390| 03 | . | form: "primitive" (0) 0x391.2-0x391.2 (0.1)
0x00390| 03 | . | tag: "bit_string" (0x3) 0x391.3-0x391.7 (0.5)
0x00390| 82 01 01 | ... | length: 257 0x392-0x394.7 (3)
0x00390| 00 | . | unused_bits_count: 0 0x395-0x395.7 (1)
0x00390| dd 33 d7 11 f3 63 58 38 dd 18| .3...cX8..| value: raw bits 0x396-0x495.7 (256)
| | | [1]{}: object 0x382-0x391 (15)
0x00380| 30 | 0 | class: "universal" (0) 0x382-0x382.2 (0.2)
0x00380| 30 | 0 | form: "constructed" (1) 0x382.2-0x382.3 (0.1)
0x00380| 30 | 0 | tag: "sequence" (0x10) 0x382.3-0x383 (0.5)
0x00380| 0d | . | length: 13 0x383-0x384 (1)
| | | constructed[0:2]: 0x384-0x391 (13)
| | | [0]{}: object 0x384-0x38f (11)
0x00380| 06 | . | class: "universal" (0) 0x384-0x384.2 (0.2)
0x00380| 06 | . | form: "primitive" (0) 0x384.2-0x384.3 (0.1)
0x00380| 06 | . | tag: "object_identifier" (0x6) 0x384.3-0x385 (0.5)
0x00380| 09 | . | length: 9 0x385-0x386 (1)
| | | value[0:7]: 0x386-0x38f (9)
0x00380| 2a | * | [0]: 1 oid 0x386-0x387 (1)
0x00380| 2a | * | [1]: 2 oid 0x386-0x387 (1)
0x00380| 86 48 | .H | [2]: 840 oid 0x387-0x389 (2)
0x00380| 86 f7 0d | ... | [3]: 113549 oid 0x389-0x38c (3)
0x00380| 01 | . | [4]: 1 oid 0x38c-0x38d (1)
0x00380| 01 | . | [5]: 1 oid 0x38d-0x38e (1)
0x00380| 0b | . | [6]: 11 oid 0x38e-0x38f (1)
| | | [1]{}: object 0x38f-0x391 (2)
0x00380| 05| .| class: "universal" (0) 0x38f-0x38f.2 (0.2)
0x00380| 05| .| form: "primitive" (0) 0x38f.2-0x38f.3 (0.1)
0x00380| 05| .| tag: "null" (0x5) 0x38f.3-0x390 (0.5)
0x00390|00 |. | length: "indefinite" (0) 0x390-0x391 (1)
| | | value: null
| | | [2]{}: object 0x391-0x496 (261)
0x00390| 03 | . | class: "universal" (0) 0x391-0x391.2 (0.2)
0x00390| 03 | . | form: "primitive" (0) 0x391.2-0x391.3 (0.1)
0x00390| 03 | . | tag: "bit_string" (0x3) 0x391.3-0x392 (0.5)
0x00390| 82 01 01 | ... | length: 257 0x392-0x395 (3)
0x00390| 00 | . | unused_bits_count: 0 0x395-0x396 (1)
0x00390| dd 33 d7 11 f3 63 58 38 dd 18| .3...cX8..| value: raw bits 0x396-0x496 (256)
0x003a0|15 fb 09 55 be 76 56 b9 70 48 a5 69 47 27 7b c2|...U.vV.pH.iG'{.|
* |until 0x495.7 (end) (256) | |

View File

@ -1,74 +1,74 @@
$ fq -d asn1_ber dv openssl.rsa.key.der
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: openssl.rsa.key.der (asn1_ber) 0x0-0x260.7 (609)
0x000|30 |0 | class: "universal" (0) 0x0-0x0.1 (0.2)
0x000|30 |0 | form: "constructed" (1) 0x0.2-0x0.2 (0.1)
0x000|30 |0 | tag: "sequence" (0x10) 0x0.3-0x0.7 (0.5)
0x000| 82 02 5d | ..] | length: 605 0x1-0x3.7 (3)
| | | constructed[0:9]: 0x4-0x260.7 (605)
| | | [0]{}: object 0x4-0x6.7 (3)
0x000| 02 | . | class: "universal" (0) 0x4-0x4.1 (0.2)
0x000| 02 | . | form: "primitive" (0) 0x4.2-0x4.2 (0.1)
0x000| 02 | . | tag: "integer" (0x2) 0x4.3-0x4.7 (0.5)
0x000| 01 | . | length: 1 0x5-0x5.7 (1)
0x000| 00 | . | value: 0 0x6-0x6.7 (1)
| | | [1]{}: object 0x7-0x8a.7 (132)
0x000| 02 | . | class: "universal" (0) 0x7-0x7.1 (0.2)
0x000| 02 | . | form: "primitive" (0) 0x7.2-0x7.2 (0.1)
0x000| 02 | . | tag: "integer" (0x2) 0x7.3-0x7.7 (0.5)
0x000| 81 81 | .. | length: 129 0x8-0x9.7 (2)
0x000| 00 c8 9c ae f3 cf| ......| value: 140874568468322848849180080295716055473391012329133676844091970322504607002396348602109669476646264833477712206064675084499111472430777124510906866167819796189175395315010168014638998198401874878669002908243106997519079413079140242074725120590298671209684697146044155303080323202401088254507821347042989436183 0xa-0x8a.7 (129)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: openssl.rsa.key.der (asn1_ber) 0x0-0x261 (609)
0x000|30 |0 | class: "universal" (0) 0x0-0x0.2 (0.2)
0x000|30 |0 | form: "constructed" (1) 0x0.2-0x0.3 (0.1)
0x000|30 |0 | tag: "sequence" (0x10) 0x0.3-0x1 (0.5)
0x000| 82 02 5d | ..] | length: 605 0x1-0x4 (3)
| | | constructed[0:9]: 0x4-0x261 (605)
| | | [0]{}: object 0x4-0x7 (3)
0x000| 02 | . | class: "universal" (0) 0x4-0x4.2 (0.2)
0x000| 02 | . | form: "primitive" (0) 0x4.2-0x4.3 (0.1)
0x000| 02 | . | tag: "integer" (0x2) 0x4.3-0x5 (0.5)
0x000| 01 | . | length: 1 0x5-0x6 (1)
0x000| 00 | . | value: 0 0x6-0x7 (1)
| | | [1]{}: object 0x7-0x8b (132)
0x000| 02 | . | class: "universal" (0) 0x7-0x7.2 (0.2)
0x000| 02 | . | form: "primitive" (0) 0x7.2-0x7.3 (0.1)
0x000| 02 | . | tag: "integer" (0x2) 0x7.3-0x8 (0.5)
0x000| 81 81 | .. | length: 129 0x8-0xa (2)
0x000| 00 c8 9c ae f3 cf| ......| value: 140874568468322848849180080295716055473391012329133676844091970322504607002396348602109669476646264833477712206064675084499111472430777124510906866167819796189175395315010168014638998198401874878669002908243106997519079413079140242074725120590298671209684697146044155303080323202401088254507821347042989436183 0xa-0x8b (129)
0x010|59 56 6e 6c fd e5 95 4e 0f 2d 05 89 31 f5 ab 8d|YVnl...N.-..1...|
* |until 0x8a.7 (129) | |
| | | [2]{}: object 0x8b-0x8f.7 (5)
0x080| 02 | . | class: "universal" (0) 0x8b-0x8b.1 (0.2)
0x080| 02 | . | form: "primitive" (0) 0x8b.2-0x8b.2 (0.1)
0x080| 02 | . | tag: "integer" (0x2) 0x8b.3-0x8b.7 (0.5)
0x080| 03 | . | length: 3 0x8c-0x8c.7 (1)
0x080| 01 00 01| ...| value: 65537 0x8d-0x8f.7 (3)
| | | [3]{}: object 0x90-0x113.7 (132)
0x090|02 |. | class: "universal" (0) 0x90-0x90.1 (0.2)
0x090|02 |. | form: "primitive" (0) 0x90.2-0x90.2 (0.1)
0x090|02 |. | tag: "integer" (0x2) 0x90.3-0x90.7 (0.5)
0x090| 81 81 | .. | length: 129 0x91-0x92.7 (2)
0x090| 00 ad ec 39 39 a3 40 7e d0 89 a9 ad 8b| ...99.@~.....| value: 122132707191863643833448491725925734163711041679001438133079292152281409900699692309301115405405915365496386043367604695837015970224024515318990895554010464789522511375622928126213405612602768277179789406664987051391584527300257344464000027271751491024923146711928786025340329143022436281624616672535582585025 0x93-0x113.7 (129)
| | | [2]{}: object 0x8b-0x90 (5)
0x080| 02 | . | class: "universal" (0) 0x8b-0x8b.2 (0.2)
0x080| 02 | . | form: "primitive" (0) 0x8b.2-0x8b.3 (0.1)
0x080| 02 | . | tag: "integer" (0x2) 0x8b.3-0x8c (0.5)
0x080| 03 | . | length: 3 0x8c-0x8d (1)
0x080| 01 00 01| ...| value: 65537 0x8d-0x90 (3)
| | | [3]{}: object 0x90-0x114 (132)
0x090|02 |. | class: "universal" (0) 0x90-0x90.2 (0.2)
0x090|02 |. | form: "primitive" (0) 0x90.2-0x90.3 (0.1)
0x090|02 |. | tag: "integer" (0x2) 0x90.3-0x91 (0.5)
0x090| 81 81 | .. | length: 129 0x91-0x93 (2)
0x090| 00 ad ec 39 39 a3 40 7e d0 89 a9 ad 8b| ...99.@~.....| value: 122132707191863643833448491725925734163711041679001438133079292152281409900699692309301115405405915365496386043367604695837015970224024515318990895554010464789522511375622928126213405612602768277179789406664987051391584527300257344464000027271751491024923146711928786025340329143022436281624616672535582585025 0x93-0x114 (129)
0x0a0|3d fb a6 3a b0 71 21 de 33 86 59 38 9d 4e 59 62|=..:.q!.3.Y8.NYb|
* |until 0x113.7 (129) | |
| | | [4]{}: object 0x114-0x156.7 (67)
0x110| 02 | . | class: "universal" (0) 0x114-0x114.1 (0.2)
0x110| 02 | . | form: "primitive" (0) 0x114.2-0x114.2 (0.1)
0x110| 02 | . | tag: "integer" (0x2) 0x114.3-0x114.7 (0.5)
0x110| 41 | A | length: 65 0x115-0x115.7 (1)
0x110| 00 e6 af 83 cc 5c 2c 71 b2 ac| .....\,q..| value: 12081985475751749236571794066071043662466425762985809175048795658965864740983561571225287405335719328583420338385382007277303022316888740387757118441481617 0x116-0x156.7 (65)
| | | [4]{}: object 0x114-0x157 (67)
0x110| 02 | . | class: "universal" (0) 0x114-0x114.2 (0.2)
0x110| 02 | . | form: "primitive" (0) 0x114.2-0x114.3 (0.1)
0x110| 02 | . | tag: "integer" (0x2) 0x114.3-0x115 (0.5)
0x110| 41 | A | length: 65 0x115-0x116 (1)
0x110| 00 e6 af 83 cc 5c 2c 71 b2 ac| .....\,q..| value: 12081985475751749236571794066071043662466425762985809175048795658965864740983561571225287405335719328583420338385382007277303022316888740387757118441481617 0x116-0x157 (65)
0x120|06 ee 0c 9d 88 ec 02 3d 9b 98 dd f4 09 3d 0c dc|.......=.....=..|
* |until 0x156.7 (65) | |
| | | [5]{}: object 0x157-0x199.7 (67)
0x150| 02 | . | class: "universal" (0) 0x157-0x157.1 (0.2)
0x150| 02 | . | form: "primitive" (0) 0x157.2-0x157.2 (0.1)
0x150| 02 | . | tag: "integer" (0x2) 0x157.3-0x157.7 (0.5)
0x150| 41 | A | length: 65 0x158-0x158.7 (1)
0x150| 00 de a0 55 68 3f f3| ...Uh?.| value: 11659885600016212463693053528634923638428971532746105950386770337354432587762435552258721021790076923957260154767602393593066715506087355090619950869263399 0x159-0x199.7 (65)
| | | [5]{}: object 0x157-0x19a (67)
0x150| 02 | . | class: "universal" (0) 0x157-0x157.2 (0.2)
0x150| 02 | . | form: "primitive" (0) 0x157.2-0x157.3 (0.1)
0x150| 02 | . | tag: "integer" (0x2) 0x157.3-0x158 (0.5)
0x150| 41 | A | length: 65 0x158-0x159 (1)
0x150| 00 de a0 55 68 3f f3| ...Uh?.| value: 11659885600016212463693053528634923638428971532746105950386770337354432587762435552258721021790076923957260154767602393593066715506087355090619950869263399 0x159-0x19a (65)
0x160|b1 fe a6 e7 6f a8 6e 7d a8 62 3d fe a3 ef 19 ea|....o.n}.b=.....|
* |until 0x199.7 (65) | |
| | | [6]{}: object 0x19a-0x1db.7 (66)
0x190| 02 | . | class: "universal" (0) 0x19a-0x19a.1 (0.2)
0x190| 02 | . | form: "primitive" (0) 0x19a.2-0x19a.2 (0.1)
0x190| 02 | . | tag: "integer" (0x2) 0x19a.3-0x19a.7 (0.5)
0x190| 40 | @ | length: 64 0x19b-0x19b.7 (1)
0x190| 35 43 79 4f| 5CyO| value: 2789639504693157597201647738037856976981582230579691844863792604352830695035830961072082167592964354183504227542420320339962911541559125677823835638746049 0x19c-0x1db.7 (64)
| | | [6]{}: object 0x19a-0x1dc (66)
0x190| 02 | . | class: "universal" (0) 0x19a-0x19a.2 (0.2)
0x190| 02 | . | form: "primitive" (0) 0x19a.2-0x19a.3 (0.1)
0x190| 02 | . | tag: "integer" (0x2) 0x19a.3-0x19b (0.5)
0x190| 40 | @ | length: 64 0x19b-0x19c (1)
0x190| 35 43 79 4f| 5CyO| value: 2789639504693157597201647738037856976981582230579691844863792604352830695035830961072082167592964354183504227542420320339962911541559125677823835638746049 0x19c-0x1dc (64)
0x1a0|0a 49 48 c7 54 69 15 35 dc 79 ec e4 67 8d 31 b2|.IH.Ti.5.y..g.1.|
* |until 0x1db.7 (64) | |
| | | [7]{}: object 0x1dc-0x21d.7 (66)
0x1d0| 02 | . | class: "universal" (0) 0x1dc-0x1dc.1 (0.2)
0x1d0| 02 | . | form: "primitive" (0) 0x1dc.2-0x1dc.2 (0.1)
0x1d0| 02 | . | tag: "integer" (0x2) 0x1dc.3-0x1dc.7 (0.5)
0x1d0| 40 | @ | length: 64 0x1dd-0x1dd.7 (1)
0x1d0| 4b c1| K.| value: 3967638261836238371497303610816598746671414531513052303272584422438335614075866689822874673954262561319115289248398629469139277392942217463050117099278927 0x1de-0x21d.7 (64)
| | | [7]{}: object 0x1dc-0x21e (66)
0x1d0| 02 | . | class: "universal" (0) 0x1dc-0x1dc.2 (0.2)
0x1d0| 02 | . | form: "primitive" (0) 0x1dc.2-0x1dc.3 (0.1)
0x1d0| 02 | . | tag: "integer" (0x2) 0x1dc.3-0x1dd (0.5)
0x1d0| 40 | @ | length: 64 0x1dd-0x1de (1)
0x1d0| 4b c1| K.| value: 3967638261836238371497303610816598746671414531513052303272584422438335614075866689822874673954262561319115289248398629469139277392942217463050117099278927 0x1de-0x21e (64)
0x1e0|69 6e b1 1c 5e fc 55 95 39 94 aa 0c 8e 68 e7 c9|in..^.U.9....h..|
* |until 0x21d.7 (64) | |
| | | [8]{}: object 0x21e-0x260.7 (67)
0x210| 02 | . | class: "universal" (0) 0x21e-0x21e.1 (0.2)
0x210| 02 | . | form: "primitive" (0) 0x21e.2-0x21e.2 (0.1)
0x210| 02 | . | tag: "integer" (0x2) 0x21e.3-0x21e.7 (0.5)
0x210| 41| A| length: 65 0x21f-0x21f.7 (1)
0x220|00 b2 1c 76 7a bc d3 9f c7 24 f0 1e de 9c 33 07|...vz....$....3.| value: 9328439569788175995398063780840446593404475344027436154565657980938183918994797944613750235675880941897457018303545042575095777738810628775577987827595418 0x220-0x260.7 (65)
| | | [8]{}: object 0x21e-0x261 (67)
0x210| 02 | . | class: "universal" (0) 0x21e-0x21e.2 (0.2)
0x210| 02 | . | form: "primitive" (0) 0x21e.2-0x21e.3 (0.1)
0x210| 02 | . | tag: "integer" (0x2) 0x21e.3-0x21f (0.5)
0x210| 41| A| length: 65 0x21f-0x220 (1)
0x220|00 b2 1c 76 7a bc d3 9f c7 24 f0 1e de 9c 33 07|...vz....$....3.| value: 9328439569788175995398063780840446593404475344027436154565657980938183918994797944613750235675880941897457018303545042575095777738810628775577987827595418 0x220-0x261 (65)
* |until 0x260.7 (end) (65) | |

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
$ fq -d asn1_ber dv tc1.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc1.ber (asn1_ber) 0x0-0xc.7 (13)
0x0|9f |. | class: "context" (2) 0x0-0x0.1 (0.2)
0x0|9f |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|9f ff ff ff ff ff ff ff ff ff 7f |........... | tag: 18446744073709551615 0x0.3-0xa.7 (10.5)
0x0| 01 | . | length: 1 0xb-0xb.7 (1)
0x0| 40| | @| | value: raw bits 0xc-0xc.7 (1)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc1.ber (asn1_ber) 0x0-0xd (13)
0x0|9f |. | class: "context" (2) 0x0-0x0.2 (0.2)
0x0|9f |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|9f ff ff ff ff ff ff ff ff ff 7f |........... | tag: 18446744073709551615 0x0.3-0xb (10.5)
0x0| 01 | . | length: 1 0xb-0xc (1)
0x0| 40| | @| | value: raw bits 0xc-0xd (1)

View File

@ -1,15 +1,15 @@
$ fq -d asn1_ber dv tc10.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc10.ber (asn1_ber) 0x0-0x8.7 (9)
0x0|09 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|09 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|09 |. | tag: "real" (0x9) 0x0.3-0x0.7 (0.5)
0x0| 07 | . | length: 7 0x1-0x1.7 (1)
0x0| 83 | . | binary_encoding: true 0x2-0x2 (0.1)
0x0| 83 | . | sign: 1 (false) 0x2.1-0x2.1 (0.1)
0x0| 83 | . | base: 2 (0) 0x2.2-0x2.3 (0.2)
0x0| 83 | . | scale: 0 0x2.4-0x2.5 (0.2)
0x0| 83 | . | format: 3 0x2.6-0x2.7 (0.2)
0x0| 04 | . | exp_bytes: 4 0x3-0x3.7 (1)
0x0| ff ff ff fb | .... | exp: -5 0x4-0x7.7 (4)
0x0| 05| | .| | n: 5 0x8-0x8.7 (1)
| | | value: 0.15625 0x9-NA (0)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc10.ber (asn1_ber) 0x0-0x9 (9)
0x0|09 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|09 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|09 |. | tag: "real" (0x9) 0x0.3-0x1 (0.5)
0x0| 07 | . | length: 7 0x1-0x2 (1)
0x0| 83 | . | binary_encoding: true 0x2-0x2.1 (0.1)
0x0| 83 | . | sign: 1 (false) 0x2.1-0x2.2 (0.1)
0x0| 83 | . | base: 2 (0) 0x2.2-0x2.4 (0.2)
0x0| 83 | . | scale: 0 0x2.4-0x2.6 (0.2)
0x0| 83 | . | format: 3 0x2.6-0x3 (0.2)
0x0| 04 | . | exp_bytes: 4 0x3-0x4 (1)
0x0| ff ff ff fb | .... | exp: -5 0x4-0x8 (4)
0x0| 05| | .| | n: 5 0x8-0x9 (1)
| | | value: 0.15625

View File

@ -1,10 +1,10 @@
$ fq -d asn1_ber dv tc11.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc11.ber (asn1_ber) 0x0-0xa.7 (11)
0x0|09 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|09 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|09 |. | tag: "real" (0x9) 0x0.3-0x0.7 (0.5)
0x0| 09 | . | length: 9 0x1-0x1.7 (1)
0x0| 11 | . | binary_encoding: false 0x2-0x2 (0.1)
0x0| 11 | . | decimal_encoding: false 0x2.1-0x2.1 (0.1)
0x0| 11 | . | representation: 17 0x2.2-0x2.7 (0.6)
0x0| 20 20 30 31 35 36 32 35| | 015625| | value: 0 0x3-0xa.7 (8)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc11.ber (asn1_ber) 0x0-0xb (11)
0x0|09 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|09 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|09 |. | tag: "real" (0x9) 0x0.3-0x1 (0.5)
0x0| 09 | . | length: 9 0x1-0x2 (1)
0x0| 11 | . | binary_encoding: false 0x2-0x2.1 (0.1)
0x0| 11 | . | decimal_encoding: false 0x2.1-0x2.2 (0.1)
0x0| 11 | . | representation: 17 0x2.2-0x3 (0.6)
0x0| 20 20 30 31 35 36 32 35| | 015625| | value: 0 0x3-0xb (8)

View File

@ -1,9 +1,9 @@
$ fq -d asn1_ber dv tc12.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc12.ber (asn1_ber) 0x0-0x2.7 (3)
0x0|09 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|09 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|09 |. | tag: "real" (0x9) 0x0.3-0x0.7 (0.5)
0x0| 01 | . | length: 1 0x1-0x1.7 (1)
0x0| 49| | I| | binary_encoding: false 0x2-0x2 (0.1)
0x0| 49| | I| | decimal_encoding: true 0x2.1-0x2.1 (0.1)
0x0| 49| | I| | special: 9 0x2.2-0x2.7 (0.6)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc12.ber (asn1_ber) 0x0-0x3 (3)
0x0|09 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|09 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|09 |. | tag: "real" (0x9) 0x0.3-0x1 (0.5)
0x0| 01 | . | length: 1 0x1-0x2 (1)
0x0| 49| | I| | binary_encoding: false 0x2-0x2.1 (0.1)
0x0| 49| | I| | decimal_encoding: true 0x2.1-0x2.2 (0.1)
0x0| 49| | I| | special: 9 0x2.2-0x3 (0.6)

View File

@ -1,7 +1,7 @@
$ fq -d asn1_ber dv tc18.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc18.ber (asn1_ber) 0x0-0x4.7 (5)
0x0|02 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|02 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|02 |. | tag: "integer" (0x2) 0x0.3-0x0.7 (0.5)
0x0| 03 | . | length: 3 0x1-0x1.7 (1)
0x0| ff f0 01| | ...| | value: -4095 0x2-0x4.7 (3)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc18.ber (asn1_ber) 0x0-0x5 (5)
0x0|02 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|02 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|02 |. | tag: "integer" (0x2) 0x0.3-0x1 (0.5)
0x0| 03 | . | length: 3 0x1-0x2 (1)
0x0| ff f0 01| | ...| | value: -4095 0x2-0x5 (3)

View File

@ -1,7 +1,7 @@
$ fq -d asn1_ber dv tc20.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc20.ber (asn1_ber) 0x0-0xa.7 (11)
0x0|02 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|02 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|02 |. | tag: "integer" (0x2) 0x0.3-0x0.7 (0.5)
0x0| 09 | . | length: 9 0x1-0x1.7 (1)
0x0| 80 00 01 01 01 01 01 01 01| | .........| | value: -2361182958856022458111 0x2-0xa.7 (9)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc20.ber (asn1_ber) 0x0-0xb (11)
0x0|02 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|02 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|02 |. | tag: "integer" (0x2) 0x0.3-0x1 (0.5)
0x0| 09 | . | length: 9 0x1-0x2 (1)
0x0| 80 00 01 01 01 01 01 01 01| | .........| | value: -2361182958856022458111 0x2-0xb (9)

View File

@ -1,11 +1,11 @@
$ fq -d asn1_ber dv tc21.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc21.ber (asn1_ber) 0x0-0x7.7 (8)
0x0|06 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|06 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|06 |. | tag: "object_identifier" (0x6) 0x0.3-0x0.7 (0.5)
0x0| 06 | . | length: 6 0x1-0x1.7 (1)
| | | value[0:4]: 0x2-0x7.7 (6)
0x0| 80 | . | [0]: 3 oid 0x2-0x2.7 (1)
0x0| 80 | . | [1]: 8 oid 0x2-0x2.7 (1)
0x0| 80 51 | .Q | [2]: 81 oid 0x3-0x4.7 (2)
0x0| 80 80 01| | ...| | [3]: 1 oid 0x5-0x7.7 (3)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc21.ber (asn1_ber) 0x0-0x8 (8)
0x0|06 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|06 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|06 |. | tag: "object_identifier" (0x6) 0x0.3-0x1 (0.5)
0x0| 06 | . | length: 6 0x1-0x2 (1)
| | | value[0:4]: 0x2-0x8 (6)
0x0| 80 | . | [0]: 3 oid 0x2-0x3 (1)
0x0| 80 | . | [1]: 8 oid 0x2-0x3 (1)
0x0| 80 51 | .Q | [2]: 81 oid 0x3-0x5 (2)
0x0| 80 80 01| | ...| | [3]: 1 oid 0x5-0x8 (3)

View File

@ -1,14 +1,14 @@
$ fq -d asn1_ber dv tc22.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc22.ber (asn1_ber) 0x0-0x11.7 (18)
0x00|06 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x00|06 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x00|06 |. | tag: "object_identifier" (0x6) 0x0.3-0x0.7 (0.5)
0x00| 10 | . | length: 16 0x1-0x1.7 (1)
| | | value[0:7]: 0x2-0x11.7 (16)
0x00| ff | . | [0]: 6 oid 0x2-0x2.7 (1)
0x00| ff | . | [1]: 15 oid 0x2-0x2.7 (1)
0x00| ff ff ff ff ff ff ff ff ff 0f | .......... | [2]: 18446744073709551503 oid 0x3-0xc.7 (10)
0x00| 85 03 | .. | [3]: 643 oid 0xd-0xe.7 (2)
0x00| 02| .| [4]: 2 oid 0xf-0xf.7 (1)
0x10|02 |. | [5]: 2 oid 0x10-0x10.7 (1)
0x10| 03| | .| | [6]: 3 oid 0x11-0x11.7 (1)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc22.ber (asn1_ber) 0x0-0x12 (18)
0x00|06 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x00|06 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x00|06 |. | tag: "object_identifier" (0x6) 0x0.3-0x1 (0.5)
0x00| 10 | . | length: 16 0x1-0x2 (1)
| | | value[0:7]: 0x2-0x12 (16)
0x00| ff | . | [0]: 6 oid 0x2-0x3 (1)
0x00| ff | . | [1]: 15 oid 0x2-0x3 (1)
0x00| ff ff ff ff ff ff ff ff ff 0f | .......... | [2]: 18446744073709551503 oid 0x3-0xd (10)
0x00| 85 03 | .. | [3]: 643 oid 0xd-0xf (2)
0x00| 02| .| [4]: 2 oid 0xf-0x10 (1)
0x10|02 |. | [5]: 2 oid 0x10-0x11 (1)
0x10| 03| | .| | [6]: 3 oid 0x11-0x12 (1)

View File

@ -1,19 +1,19 @@
$ fq -d asn1_ber dv tc24.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc24.ber (asn1_ber) 0x0-0x16.7 (23)
0x00|06 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x00|06 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x00|06 |. | tag: "object_identifier" (0x6) 0x0.3-0x0.7 (0.5)
0x00| 15 | . | length: 21 0x1-0x1.7 (1)
| | | value[0:11]: 0x2-0x16.7 (21)
0x00| ce | . | [0]: 5 oid 0x2-0x2.7 (1)
0x00| ce | . | [1]: 6 oid 0x2-0x2.7 (1)
0x00| 60 | ` | [2]: 96 oid 0x3-0x3.7 (1)
0x00| 86 48 | .H | [3]: 840 oid 0x4-0x5.7 (2)
0x00| 88 9f 4f | ..O | [4]: 135119 oid 0x6-0x8.7 (3)
0x00| 09 | . | [5]: 9 oid 0x9-0x9.7 (1)
0x00| 02 | . | [6]: 2 oid 0xa-0xa.7 (1)
0x00| 85 ee e5 4a | ...J | [7]: 12301002 oid 0xb-0xe.7 (4)
0x00| 85| .| [8]: 12132323 oid 0xf-0x12.7 (4)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc24.ber (asn1_ber) 0x0-0x17 (23)
0x00|06 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x00|06 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x00|06 |. | tag: "object_identifier" (0x6) 0x0.3-0x1 (0.5)
0x00| 15 | . | length: 21 0x1-0x2 (1)
| | | value[0:11]: 0x2-0x17 (21)
0x00| ce | . | [0]: 5 oid 0x2-0x3 (1)
0x00| ce | . | [1]: 6 oid 0x2-0x3 (1)
0x00| 60 | ` | [2]: 96 oid 0x3-0x4 (1)
0x00| 86 48 | .H | [3]: 840 oid 0x4-0x6 (2)
0x00| 88 9f 4f | ..O | [4]: 135119 oid 0x6-0x9 (3)
0x00| 09 | . | [5]: 9 oid 0x9-0xa (1)
0x00| 02 | . | [6]: 2 oid 0xa-0xb (1)
0x00| 85 ee e5 4a | ...J | [7]: 12301002 oid 0xb-0xf (4)
0x00| 85| .| [8]: 12132323 oid 0xf-0x13 (4)
0x10|e4 bf 63 |..c |
0x10| 8b db 2f | ../ | [9]: 191919 oid 0x13-0x15.7 (3)
0x10| 02| | .| | [10]: 2 oid 0x16-0x16.7 (1)
0x10| 8b db 2f | ../ | [9]: 191919 oid 0x13-0x16 (3)
0x10| 02| | .| | [10]: 2 oid 0x16-0x17 (1)

View File

@ -1,8 +1,8 @@
$ fq -d asn1_ber dv tc25.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc25.ber (asn1_ber) 0x0-0x4.7 (5)
0x0|01 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|01 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|01 |. | tag: "boolean" (0x1) 0x0.3-0x0.7 (0.5)
0x0| 03 | . | length: 3 0x1-0x1.7 (1)
0x0| 00 | . | value: false (0) 0x2-0x2.7 (1)
0x0| 00 00| | ..| | gap0: raw bits 0x3-0x4.7 (2)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc25.ber (asn1_ber) 0x0-0x5 (5)
0x0|01 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|01 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|01 |. | tag: "boolean" (0x1) 0x0.3-0x1 (0.5)
0x0| 03 | . | length: 3 0x1-0x2 (1)
0x0| 00 | . | value: false (0) 0x2-0x3 (1)
0x0| 00 00| | ..| | gap0: raw bits 0x3-0x5 (2)

View File

@ -1,8 +1,8 @@
$ fq -d asn1_ber dv tc26.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc26.ber (asn1_ber) 0x0-0x4.7 (5)
0x0|01 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|01 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|01 |. | tag: "boolean" (0x1) 0x0.3-0x0.7 (0.5)
0x0| 03 | . | length: 3 0x1-0x1.7 (1)
0x0| 00 | . | value: false (0) 0x2-0x2.7 (1)
0x0| 00 01| | ..| | gap0: raw bits 0x3-0x4.7 (2)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc26.ber (asn1_ber) 0x0-0x5 (5)
0x0|01 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|01 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|01 |. | tag: "boolean" (0x1) 0x0.3-0x1 (0.5)
0x0| 03 | . | length: 3 0x1-0x2 (1)
0x0| 00 | . | value: false (0) 0x2-0x3 (1)
0x0| 00 01| | ..| | gap0: raw bits 0x3-0x5 (2)

View File

@ -1,7 +1,7 @@
$ fq -d asn1_ber dv tc28.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc28.ber (asn1_ber) 0x0-0x2.7 (3)
0x0|01 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|01 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|01 |. | tag: "boolean" (0x1) 0x0.3-0x0.7 (0.5)
0x0| 01 | . | length: 1 0x1-0x1.7 (1)
0x0| ff| | .| | value: true (255) 0x2-0x2.7 (1)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc28.ber (asn1_ber) 0x0-0x3 (3)
0x0|01 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|01 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|01 |. | tag: "boolean" (0x1) 0x0.3-0x1 (0.5)
0x0| 01 | . | length: 1 0x1-0x2 (1)
0x0| ff| | .| | value: true (255) 0x2-0x3 (1)

View File

@ -1,7 +1,7 @@
$ fq -d asn1_ber dv tc29.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc29.ber (asn1_ber) 0x0-0x2.7 (3)
0x0|01 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|01 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|01 |. | tag: "boolean" (0x1) 0x0.3-0x0.7 (0.5)
0x0| 01 | . | length: 1 0x1-0x1.7 (1)
0x0| 00| | .| | value: false (0) 0x2-0x2.7 (1)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc29.ber (asn1_ber) 0x0-0x3 (3)
0x0|01 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|01 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|01 |. | tag: "boolean" (0x1) 0x0.3-0x1 (0.5)
0x0| 01 | . | length: 1 0x1-0x2 (1)
0x0| 00| | .| | value: false (0) 0x2-0x3 (1)

View File

@ -1,8 +1,8 @@
$ fq -d asn1_ber dv tc30.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc30.ber (asn1_ber) 0x0-0x4.7 (5)
0x0|05 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|05 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|05 |. | tag: "null" (0x5) 0x0.3-0x0.7 (0.5)
0x0| 03 | . | length: 3 0x1-0x1.7 (1)
| | | value: null 0x2-NA (0)
0x0| 00 00 00| | ...| | gap0: raw bits 0x2-0x4.7 (3)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc30.ber (asn1_ber) 0x0-0x5 (5)
0x0|05 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|05 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|05 |. | tag: "null" (0x5) 0x0.3-0x1 (0.5)
0x0| 03 | . | length: 3 0x1-0x2 (1)
| | | value: null
0x0| 00 00 00| | ...| | gap0: raw bits 0x2-0x5 (3)

View File

@ -1,7 +1,7 @@
$ fq -d asn1_ber dv tc32.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc32.ber (asn1_ber) 0x0-0x1.7 (2)
0x0|05 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|05 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|05 |. | tag: "null" (0x5) 0x0.3-0x0.7 (0.5)
0x0| 00| | .| | length: "indefinite" (0) 0x1-0x1.7 (1)
| | | value: null 0x2-NA (0)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc32.ber (asn1_ber) 0x0-0x2 (2)
0x0|05 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|05 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|05 |. | tag: "null" (0x5) 0x0.3-0x1 (0.5)
0x0| 00| | .| | length: "indefinite" (0) 0x1-0x2 (1)
| | | value: null

View File

@ -1,22 +1,22 @@
$ fq -d asn1_ber dv tc35.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc35.ber (asn1_ber) 0x0-0xf.7 (16)
0x000|23 |# | class: "universal" (0) 0x0-0x0.1 (0.2)
0x000|23 |# | form: "constructed" (1) 0x0.2-0x0.2 (0.1)
0x000|23 |# | tag: "bit_string" (0x3) 0x0.3-0x0.7 (0.5)
0x000| 80 | . | length: "indefinite" (0) 0x1-0x1.7 (1)
| | | constructed[0:2]: 0x2-0xd.7 (12)
| | | [0]{}: object 0x2-0x6.7 (5)
0x000| 04 | . | class: "universal" (0) 0x2-0x2.1 (0.2)
0x000| 04 | . | form: "primitive" (0) 0x2.2-0x2.2 (0.1)
0x000| 04 | . | tag: "octet_string" (0x4) 0x2.3-0x2.7 (0.5)
0x000| 03 | . | length: 3 0x3-0x3.7 (1)
0x000| 00 0a 3b | ..; | value: raw bits 0x4-0x6.7 (3)
| | | [1]{}: object 0x7-0xd.7 (7)
0x000| 04 | . | class: "universal" (0) 0x7-0x7.1 (0.2)
0x000| 04 | . | form: "primitive" (0) 0x7.2-0x7.2 (0.1)
0x000| 04 | . | tag: "octet_string" (0x4) 0x7.3-0x7.7 (0.5)
0x000| 05 | . | length: 5 0x8-0x8.7 (1)
0x000| 04 5f 29 1c d0 | ._).. | value: raw bits 0x9-0xd.7 (5)
0x000| 00 00| ..| end_marker: 0 0xe-0xf.7 (2)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc35.ber (asn1_ber) 0x0-0x10 (16)
0x000|23 |# | class: "universal" (0) 0x0-0x0.2 (0.2)
0x000|23 |# | form: "constructed" (1) 0x0.2-0x0.3 (0.1)
0x000|23 |# | tag: "bit_string" (0x3) 0x0.3-0x1 (0.5)
0x000| 80 | . | length: "indefinite" (0) 0x1-0x2 (1)
| | | constructed[0:2]: 0x2-0xe (12)
| | | [0]{}: object 0x2-0x7 (5)
0x000| 04 | . | class: "universal" (0) 0x2-0x2.2 (0.2)
0x000| 04 | . | form: "primitive" (0) 0x2.2-0x2.3 (0.1)
0x000| 04 | . | tag: "octet_string" (0x4) 0x2.3-0x3 (0.5)
0x000| 03 | . | length: 3 0x3-0x4 (1)
0x000| 00 0a 3b | ..; | value: raw bits 0x4-0x7 (3)
| | | [1]{}: object 0x7-0xe (7)
0x000| 04 | . | class: "universal" (0) 0x7-0x7.2 (0.2)
0x000| 04 | . | form: "primitive" (0) 0x7.2-0x7.3 (0.1)
0x000| 04 | . | tag: "octet_string" (0x4) 0x7.3-0x8 (0.5)
0x000| 05 | . | length: 5 0x8-0x9 (1)
0x000| 04 5f 29 1c d0 | ._).. | value: raw bits 0x9-0xe (5)
0x000| 00 00| ..| end_marker: 0 0xe-0x10 (2)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
0x0|00 0a 3b 04 5f 29 1c d0| |..;._)..| | value: raw bits 0x0-0x7.7 (8)
0x0|00 0a 3b 04 5f 29 1c d0| |..;._)..| | value: raw bits 0x0-0x8 (8)

View File

@ -1,42 +1,42 @@
$ fq -d asn1_ber dv tc36.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc36.ber (asn1_ber) 0x0-0x13.7 (20)
0x000|23 |# | class: "universal" (0) 0x0-0x0.1 (0.2)
0x000|23 |# | form: "constructed" (1) 0x0.2-0x0.2 (0.1)
0x000|23 |# | tag: "bit_string" (0x3) 0x0.3-0x0.7 (0.5)
0x000| 80 | . | length: "indefinite" (0) 0x1-0x1.7 (1)
| | | constructed[0:2]: 0x2-0x11.7 (16)
| | | [0]{}: object 0x2-0xd.7 (12)
0x000| 23 | # | class: "universal" (0) 0x2-0x2.1 (0.2)
0x000| 23 | # | form: "constructed" (1) 0x2.2-0x2.2 (0.1)
0x000| 23 | # | tag: "bit_string" (0x3) 0x2.3-0x2.7 (0.5)
0x000| 80 | . | length: "indefinite" (0) 0x3-0x3.7 (1)
| | | constructed[0:2]: 0x4-0xb.7 (8)
| | | [0]{}: object 0x4-0x7.7 (4)
0x000| 03 | . | class: "universal" (0) 0x4-0x4.1 (0.2)
0x000| 03 | . | form: "primitive" (0) 0x4.2-0x4.2 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0x4.3-0x4.7 (0.5)
0x000| 02 | . | length: 2 0x5-0x5.7 (1)
0x000| 00 | . | unused_bits_count: 0 0x6-0x6.7 (1)
0x000| 01 | . | value: raw bits 0x7-0x7.7 (1)
| | | [1]{}: object 0x8-0xb.7 (4)
0x000| 03 | . | class: "universal" (0) 0x8-0x8.1 (0.2)
0x000| 03 | . | form: "primitive" (0) 0x8.2-0x8.2 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0x8.3-0x8.7 (0.5)
0x000| 02 | . | length: 2 0x9-0x9.7 (1)
0x000| 01 | . | unused_bits_count: 1 0xa-0xa.7 (1)
0x000| 02 | . | value: raw bits 0xb-0xb.6 (0.7)
0x000| 02 | . | unused_bits: raw bits 0xb.7-0xb.7 (0.1)
0x000| 00 00 | .. | end_marker: 0 0xc-0xd.7 (2)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc36.ber (asn1_ber) 0x0-0x14 (20)
0x000|23 |# | class: "universal" (0) 0x0-0x0.2 (0.2)
0x000|23 |# | form: "constructed" (1) 0x0.2-0x0.3 (0.1)
0x000|23 |# | tag: "bit_string" (0x3) 0x0.3-0x1 (0.5)
0x000| 80 | . | length: "indefinite" (0) 0x1-0x2 (1)
| | | constructed[0:2]: 0x2-0x12 (16)
| | | [0]{}: object 0x2-0xe (12)
0x000| 23 | # | class: "universal" (0) 0x2-0x2.2 (0.2)
0x000| 23 | # | form: "constructed" (1) 0x2.2-0x2.3 (0.1)
0x000| 23 | # | tag: "bit_string" (0x3) 0x2.3-0x3 (0.5)
0x000| 80 | . | length: "indefinite" (0) 0x3-0x4 (1)
| | | constructed[0:2]: 0x4-0xc (8)
| | | [0]{}: object 0x4-0x8 (4)
0x000| 03 | . | class: "universal" (0) 0x4-0x4.2 (0.2)
0x000| 03 | . | form: "primitive" (0) 0x4.2-0x4.3 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0x4.3-0x5 (0.5)
0x000| 02 | . | length: 2 0x5-0x6 (1)
0x000| 00 | . | unused_bits_count: 0 0x6-0x7 (1)
0x000| 01 | . | value: raw bits 0x7-0x8 (1)
| | | [1]{}: object 0x8-0xc (4)
0x000| 03 | . | class: "universal" (0) 0x8-0x8.2 (0.2)
0x000| 03 | . | form: "primitive" (0) 0x8.2-0x8.3 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0x8.3-0x9 (0.5)
0x000| 02 | . | length: 2 0x9-0xa (1)
0x000| 01 | . | unused_bits_count: 1 0xa-0xb (1)
0x000| 02 | . | value: raw bits 0xb-0xb.7 (0.7)
0x000| 02 | . | unused_bits: raw bits 0xb.7-0xc (0.1)
0x000| 00 00 | .. | end_marker: 0 0xc-0xe (2)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
0x0|01 02| |..| | value: raw bits 0x0-0x1.6 (1.7)
| | | [1]{}: object 0xe-0x11.7 (4)
0x000| 03 | . | class: "universal" (0) 0xe-0xe.1 (0.2)
0x000| 03 | . | form: "primitive" (0) 0xe.2-0xe.2 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0xe.3-0xe.7 (0.5)
0x000| 02| .| length: 2 0xf-0xf.7 (1)
0x010|04 |. | unused_bits_count: 4 0x10-0x10.7 (1)
0x010| 0f | . | value: raw bits 0x11-0x11.3 (0.4)
0x010| 0f | . | unused_bits: raw bits 0x11.4-0x11.7 (0.4)
0x010| 00 00| | ..| | end_marker: 0 0x12-0x13.7 (2)
0x0|01 02| |..| | value: raw bits 0x0-0x1.7 (1.7)
| | | [1]{}: object 0xe-0x12 (4)
0x000| 03 | . | class: "universal" (0) 0xe-0xe.2 (0.2)
0x000| 03 | . | form: "primitive" (0) 0xe.2-0xe.3 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0xe.3-0xf (0.5)
0x000| 02| .| length: 2 0xf-0x10 (1)
0x010|04 |. | unused_bits_count: 4 0x10-0x11 (1)
0x010| 0f | . | value: raw bits 0x11-0x11.4 (0.4)
0x010| 0f | . | unused_bits: raw bits 0x11.4-0x12 (0.4)
0x010| 00 00| | ..| | end_marker: 0 0x12-0x14 (2)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
0x0|01 02 00| |...| | value: raw bits 0x0-0x2.2 (2.3)
0x0|01 02 00| |...| | value: raw bits 0x0-0x2.3 (2.3)

View File

@ -1,31 +1,31 @@
$ fq -d asn1_ber dv tc37.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc37.ber (asn1_ber) 0x0-0xd.7 (14)
0x000|23 |# | class: "universal" (0) 0x0-0x0.1 (0.2)
0x000|23 |# | form: "constructed" (1) 0x0.2-0x0.2 (0.1)
0x000|23 |# | tag: "bit_string" (0x3) 0x0.3-0x0.7 (0.5)
0x000| 0c | . | length: 12 0x1-0x1.7 (1)
| | | constructed[0:3]: 0x2-0xd.7 (12)
| | | [0]{}: object 0x2-0x5.7 (4)
0x000| 03 | . | class: "universal" (0) 0x2-0x2.1 (0.2)
0x000| 03 | . | form: "primitive" (0) 0x2.2-0x2.2 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0x2.3-0x2.7 (0.5)
0x000| 02 | . | length: 2 0x3-0x3.7 (1)
0x000| 00 | . | unused_bits_count: 0 0x4-0x4.7 (1)
0x000| 01 | . | value: raw bits 0x5-0x5.7 (1)
| | | [1]{}: object 0x6-0x9.7 (4)
0x000| 03 | . | class: "universal" (0) 0x6-0x6.1 (0.2)
0x000| 03 | . | form: "primitive" (0) 0x6.2-0x6.2 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0x6.3-0x6.7 (0.5)
0x000| 02 | . | length: 2 0x7-0x7.7 (1)
0x000| 00 | . | unused_bits_count: 0 0x8-0x8.7 (1)
0x000| 01 | . | value: raw bits 0x9-0x9.7 (1)
| | | [2]{}: object 0xa-0xd.7 (4)
0x000| 03 | . | class: "universal" (0) 0xa-0xa.1 (0.2)
0x000| 03 | . | form: "primitive" (0) 0xa.2-0xa.2 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0xa.3-0xa.7 (0.5)
0x000| 02 | . | length: 2 0xb-0xb.7 (1)
0x000| 04 | . | unused_bits_count: 4 0xc-0xc.7 (1)
0x000| 0f| | .| | value: raw bits 0xd-0xd.3 (0.4)
0x000| 0f| | .| | unused_bits: raw bits 0xd.4-0xd.7 (0.4)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc37.ber (asn1_ber) 0x0-0xe (14)
0x000|23 |# | class: "universal" (0) 0x0-0x0.2 (0.2)
0x000|23 |# | form: "constructed" (1) 0x0.2-0x0.3 (0.1)
0x000|23 |# | tag: "bit_string" (0x3) 0x0.3-0x1 (0.5)
0x000| 0c | . | length: 12 0x1-0x2 (1)
| | | constructed[0:3]: 0x2-0xe (12)
| | | [0]{}: object 0x2-0x6 (4)
0x000| 03 | . | class: "universal" (0) 0x2-0x2.2 (0.2)
0x000| 03 | . | form: "primitive" (0) 0x2.2-0x2.3 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0x2.3-0x3 (0.5)
0x000| 02 | . | length: 2 0x3-0x4 (1)
0x000| 00 | . | unused_bits_count: 0 0x4-0x5 (1)
0x000| 01 | . | value: raw bits 0x5-0x6 (1)
| | | [1]{}: object 0x6-0xa (4)
0x000| 03 | . | class: "universal" (0) 0x6-0x6.2 (0.2)
0x000| 03 | . | form: "primitive" (0) 0x6.2-0x6.3 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0x6.3-0x7 (0.5)
0x000| 02 | . | length: 2 0x7-0x8 (1)
0x000| 00 | . | unused_bits_count: 0 0x8-0x9 (1)
0x000| 01 | . | value: raw bits 0x9-0xa (1)
| | | [2]{}: object 0xa-0xe (4)
0x000| 03 | . | class: "universal" (0) 0xa-0xa.2 (0.2)
0x000| 03 | . | form: "primitive" (0) 0xa.2-0xa.3 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0xa.3-0xb (0.5)
0x000| 02 | . | length: 2 0xb-0xc (1)
0x000| 04 | . | unused_bits_count: 4 0xc-0xd (1)
0x000| 0f| | .| | value: raw bits 0xd-0xd.4 (0.4)
0x000| 0f| | .| | unused_bits: raw bits 0xd.4-0xe (0.4)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
0x0|01 01 00| |...| | value: raw bits 0x0-0x2.3 (2.4)
0x0|01 01 00| |...| | value: raw bits 0x0-0x2.4 (2.4)

View File

@ -1,25 +1,25 @@
$ fq -d asn1_ber dv tc38.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc38.ber (asn1_ber) 0x0-0xf.7 (16)
0x000|23 |# | class: "universal" (0) 0x0-0x0.1 (0.2)
0x000|23 |# | form: "constructed" (1) 0x0.2-0x0.2 (0.1)
0x000|23 |# | tag: "bit_string" (0x3) 0x0.3-0x0.7 (0.5)
0x000| 80 | . | length: "indefinite" (0) 0x1-0x1.7 (1)
| | | constructed[0:2]: 0x2-0xd.7 (12)
| | | [0]{}: object 0x2-0x6.7 (5)
0x000| 03 | . | class: "universal" (0) 0x2-0x2.1 (0.2)
0x000| 03 | . | form: "primitive" (0) 0x2.2-0x2.2 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0x2.3-0x2.7 (0.5)
0x000| 03 | . | length: 3 0x3-0x3.7 (1)
0x000| 00 | . | unused_bits_count: 0 0x4-0x4.7 (1)
0x000| 0a 3b | .; | value: raw bits 0x5-0x6.7 (2)
| | | [1]{}: object 0x7-0xd.7 (7)
0x000| 03 | . | class: "universal" (0) 0x7-0x7.1 (0.2)
0x000| 03 | . | form: "primitive" (0) 0x7.2-0x7.2 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0x7.3-0x7.7 (0.5)
0x000| 05 | . | length: 5 0x8-0x8.7 (1)
0x000| 04 | . | unused_bits_count: 4 0x9-0x9.7 (1)
0x000| 5f 29 1c d0 | _).. | value: raw bits 0xa-0xd.3 (3.4)
0x000| d0 | . | unused_bits: raw bits 0xd.4-0xd.7 (0.4)
0x000| 00 00| ..| end_marker: 0 0xe-0xf.7 (2)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc38.ber (asn1_ber) 0x0-0x10 (16)
0x000|23 |# | class: "universal" (0) 0x0-0x0.2 (0.2)
0x000|23 |# | form: "constructed" (1) 0x0.2-0x0.3 (0.1)
0x000|23 |# | tag: "bit_string" (0x3) 0x0.3-0x1 (0.5)
0x000| 80 | . | length: "indefinite" (0) 0x1-0x2 (1)
| | | constructed[0:2]: 0x2-0xe (12)
| | | [0]{}: object 0x2-0x7 (5)
0x000| 03 | . | class: "universal" (0) 0x2-0x2.2 (0.2)
0x000| 03 | . | form: "primitive" (0) 0x2.2-0x2.3 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0x2.3-0x3 (0.5)
0x000| 03 | . | length: 3 0x3-0x4 (1)
0x000| 00 | . | unused_bits_count: 0 0x4-0x5 (1)
0x000| 0a 3b | .; | value: raw bits 0x5-0x7 (2)
| | | [1]{}: object 0x7-0xe (7)
0x000| 03 | . | class: "universal" (0) 0x7-0x7.2 (0.2)
0x000| 03 | . | form: "primitive" (0) 0x7.2-0x7.3 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0x7.3-0x8 (0.5)
0x000| 05 | . | length: 5 0x8-0x9 (1)
0x000| 04 | . | unused_bits_count: 4 0x9-0xa (1)
0x000| 5f 29 1c d0 | _).. | value: raw bits 0xa-0xd.4 (3.4)
0x000| d0 | . | unused_bits: raw bits 0xd.4-0xe (0.4)
0x000| 00 00| ..| end_marker: 0 0xe-0x10 (2)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
0x0|0a 3b 5f 29 1c d0| |.;_)..| | value: raw bits 0x0-0x5.3 (5.4)
0x0|0a 3b 5f 29 1c d0| |.;_)..| | value: raw bits 0x0-0x5.4 (5.4)

View File

@ -1,25 +1,25 @@
$ fq -d asn1_ber dv tc41.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc41.ber (asn1_ber) 0x0-0xf.7 (16)
0x000|24 |$ | class: "universal" (0) 0x0-0x0.1 (0.2)
0x000|24 |$ | form: "constructed" (1) 0x0.2-0x0.2 (0.1)
0x000|24 |$ | tag: "octet_string" (0x4) 0x0.3-0x0.7 (0.5)
0x000| 80 | . | length: "indefinite" (0) 0x1-0x1.7 (1)
| | | constructed[0:2]: 0x2-0xd.7 (12)
| | | [0]{}: object 0x2-0x6.7 (5)
0x000| 03 | . | class: "universal" (0) 0x2-0x2.1 (0.2)
0x000| 03 | . | form: "primitive" (0) 0x2.2-0x2.2 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0x2.3-0x2.7 (0.5)
0x000| 03 | . | length: 3 0x3-0x3.7 (1)
0x000| 00 | . | unused_bits_count: 0 0x4-0x4.7 (1)
0x000| 0a 3b | .; | value: raw bits 0x5-0x6.7 (2)
| | | [1]{}: object 0x7-0xd.7 (7)
0x000| 03 | . | class: "universal" (0) 0x7-0x7.1 (0.2)
0x000| 03 | . | form: "primitive" (0) 0x7.2-0x7.2 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0x7.3-0x7.7 (0.5)
0x000| 05 | . | length: 5 0x8-0x8.7 (1)
0x000| 04 | . | unused_bits_count: 4 0x9-0x9.7 (1)
0x000| 5f 29 1c d0 | _).. | value: raw bits 0xa-0xd.3 (3.4)
0x000| d0 | . | unused_bits: raw bits 0xd.4-0xd.7 (0.4)
0x000| 00 00| ..| end_marker: 0 0xe-0xf.7 (2)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc41.ber (asn1_ber) 0x0-0x10 (16)
0x000|24 |$ | class: "universal" (0) 0x0-0x0.2 (0.2)
0x000|24 |$ | form: "constructed" (1) 0x0.2-0x0.3 (0.1)
0x000|24 |$ | tag: "octet_string" (0x4) 0x0.3-0x1 (0.5)
0x000| 80 | . | length: "indefinite" (0) 0x1-0x2 (1)
| | | constructed[0:2]: 0x2-0xe (12)
| | | [0]{}: object 0x2-0x7 (5)
0x000| 03 | . | class: "universal" (0) 0x2-0x2.2 (0.2)
0x000| 03 | . | form: "primitive" (0) 0x2.2-0x2.3 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0x2.3-0x3 (0.5)
0x000| 03 | . | length: 3 0x3-0x4 (1)
0x000| 00 | . | unused_bits_count: 0 0x4-0x5 (1)
0x000| 0a 3b | .; | value: raw bits 0x5-0x7 (2)
| | | [1]{}: object 0x7-0xe (7)
0x000| 03 | . | class: "universal" (0) 0x7-0x7.2 (0.2)
0x000| 03 | . | form: "primitive" (0) 0x7.2-0x7.3 (0.1)
0x000| 03 | . | tag: "bit_string" (0x3) 0x7.3-0x8 (0.5)
0x000| 05 | . | length: 5 0x8-0x9 (1)
0x000| 04 | . | unused_bits_count: 4 0x9-0xa (1)
0x000| 5f 29 1c d0 | _).. | value: raw bits 0xa-0xd.4 (3.4)
0x000| d0 | . | unused_bits: raw bits 0xd.4-0xe (0.4)
0x000| 00 00| ..| end_marker: 0 0xe-0x10 (2)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
0x0|0a 3b 5f 29 1c d0| |.;_)..| | value: raw bits 0x0-0x5.3 (5.4)
0x0|0a 3b 5f 29 1c d0| |.;_)..| | value: raw bits 0x0-0x5.4 (5.4)

View File

@ -1,7 +1,7 @@
$ fq -d asn1_ber dv tc5.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc5.ber (asn1_ber) 0x0-0xc.7 (13)
0x0|9f |. | class: "context" (2) 0x0-0x0.1 (0.2)
0x0|9f |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|9f ff ff ff ff ff ff ff ff 7f |.......... | tag: 18446744073709551615 0x0.3-0x9.7 (9.5)
0x0| 81 01 | .. | length: 1 0xa-0xb.7 (2)
0x0| 40| | @| | value: raw bits 0xc-0xc.7 (1)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc5.ber (asn1_ber) 0x0-0xd (13)
0x0|9f |. | class: "context" (2) 0x0-0x0.2 (0.2)
0x0|9f |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|9f ff ff ff ff ff ff ff ff 7f |.......... | tag: 18446744073709551615 0x0.3-0xa (9.5)
0x0| 81 01 | .. | length: 1 0xa-0xc (2)
0x0| 40| | @| | value: raw bits 0xc-0xd (1)

View File

@ -1,10 +1,10 @@
$ fq -d asn1_ber dv tc6.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc6.ber (asn1_ber) 0x0-0x8.7 (9)
0x0|09 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|09 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|09 |. | tag: "real" (0x9) 0x0.3-0x0.7 (0.5)
0x0| 07 | . | length: 7 0x1-0x1.7 (1)
0x0| 03 | . | binary_encoding: false 0x2-0x2 (0.1)
0x0| 03 | . | decimal_encoding: false 0x2.1-0x2.1 (0.1)
0x0| 03 | . | representation: "nr3" (3) 0x2.2-0x2.7 (0.6)
0x0| 2b 30 2e 45 2d 35| | +0.E-5| | value: 0 0x3-0x8.7 (6)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc6.ber (asn1_ber) 0x0-0x9 (9)
0x0|09 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|09 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|09 |. | tag: "real" (0x9) 0x0.3-0x1 (0.5)
0x0| 07 | . | length: 7 0x1-0x2 (1)
0x0| 03 | . | binary_encoding: false 0x2-0x2.1 (0.1)
0x0| 03 | . | decimal_encoding: false 0x2.1-0x2.2 (0.1)
0x0| 03 | . | representation: "nr3" (3) 0x2.2-0x3 (0.6)
0x0| 2b 30 2e 45 2d 35| | +0.E-5| | value: 0 0x3-0x9 (6)

View File

@ -1,10 +1,10 @@
$ fq -d asn1_ber dv tc7.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc7.ber (asn1_ber) 0x0-0x8.7 (9)
0x0|09 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|09 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|09 |. | tag: "real" (0x9) 0x0.3-0x0.7 (0.5)
0x0| 07 | . | length: 7 0x1-0x1.7 (1)
0x0| 03 | . | binary_encoding: false 0x2-0x2 (0.1)
0x0| 03 | . | decimal_encoding: false 0x2.1-0x2.1 (0.1)
0x0| 03 | . | representation: "nr3" (3) 0x2.2-0x2.7 (0.6)
0x0| 2d 30 2e 45 2d 35| | -0.E-5| | value: -0 0x3-0x8.7 (6)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc7.ber (asn1_ber) 0x0-0x9 (9)
0x0|09 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|09 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|09 |. | tag: "real" (0x9) 0x0.3-0x1 (0.5)
0x0| 07 | . | length: 7 0x1-0x2 (1)
0x0| 03 | . | binary_encoding: false 0x2-0x2.1 (0.1)
0x0| 03 | . | decimal_encoding: false 0x2.1-0x2.2 (0.1)
0x0| 03 | . | representation: "nr3" (3) 0x2.2-0x3 (0.6)
0x0| 2d 30 2e 45 2d 35| | -0.E-5| | value: -0 0x3-0x9 (6)

View File

@ -1,11 +1,11 @@
$ fq -d asn1_ber dv tc8.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc8.ber (asn1_ber) 0x0-0x4.7 (5)
0x0|09 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|09 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|09 |. | tag: "real" (0x9) 0x0.3-0x0.7 (0.5)
0x0| 03 | . | length: 3 0x1-0x1.7 (1)
0x0| 41 | A | binary_encoding: false 0x2-0x2 (0.1)
0x0| 41 | A | decimal_encoding: true 0x2.1-0x2.1 (0.1)
0x0| 41 | A | special: "minus_infinity" (1) 0x2.2-0x2.7 (0.6)
| | | value: -Inf 0x3-NA (0)
0x0| 00 00| | ..| | gap0: raw bits 0x3-0x4.7 (2)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc8.ber (asn1_ber) 0x0-0x5 (5)
0x0|09 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|09 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|09 |. | tag: "real" (0x9) 0x0.3-0x1 (0.5)
0x0| 03 | . | length: 3 0x1-0x2 (1)
0x0| 41 | A | binary_encoding: false 0x2-0x2.1 (0.1)
0x0| 41 | A | decimal_encoding: true 0x2.1-0x2.2 (0.1)
0x0| 41 | A | special: "minus_infinity" (1) 0x2.2-0x3 (0.6)
| | | value: -Inf
0x0| 00 00| | ..| | gap0: raw bits 0x3-0x5 (2)

View File

@ -1,14 +1,14 @@
$ fq -d asn1_ber dv tc9.ber
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc9.ber (asn1_ber) 0x0-0x4.7 (5)
0x0|09 |. | class: "universal" (0) 0x0-0x0.1 (0.2)
0x0|09 |. | form: "primitive" (0) 0x0.2-0x0.2 (0.1)
0x0|09 |. | tag: "real" (0x9) 0x0.3-0x0.7 (0.5)
0x0| 03 | . | length: 3 0x1-0x1.7 (1)
0x0| bc | . | binary_encoding: true 0x2-0x2 (0.1)
0x0| bc | . | sign: 1 (false) 0x2.1-0x2.1 (0.1)
0x0| bc | . | base: 0 (3) 0x2.2-0x2.3 (0.2)
0x0| bc | . | scale: 3 0x2.4-0x2.5 (0.2)
0x0| bc | . | format: 0 0x2.6-0x2.7 (0.2)
0x0| fe | . | exp: -2 0x3-0x3.7 (1)
0x0| 05| | .| | n: 5 0x4-0x4.7 (1)
| | | value: +Inf 0x5-NA (0)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tc9.ber (asn1_ber) 0x0-0x5 (5)
0x0|09 |. | class: "universal" (0) 0x0-0x0.2 (0.2)
0x0|09 |. | form: "primitive" (0) 0x0.2-0x0.3 (0.1)
0x0|09 |. | tag: "real" (0x9) 0x0.3-0x1 (0.5)
0x0| 03 | . | length: 3 0x1-0x2 (1)
0x0| bc | . | binary_encoding: true 0x2-0x2.1 (0.1)
0x0| bc | . | sign: 1 (false) 0x2.1-0x2.2 (0.1)
0x0| bc | . | base: 0 (3) 0x2.2-0x2.4 (0.2)
0x0| bc | . | scale: 3 0x2.4-0x2.6 (0.2)
0x0| bc | . | format: 0 0x2.6-0x3 (0.2)
0x0| fe | . | exp: -2 0x3-0x4 (1)
0x0| 05| | .| | n: 5 0x4-0x5 (1)
| | | value: +Inf

View File

@ -1,42 +1,42 @@
$ fq -d bytes 'from_pem | asn1_ber | dv, torepr' test.pem
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xa1.7 (162)
0x00|30 |0 | class: "universal" (0) 0x0-0x0.1 (0.2)
0x00|30 |0 | form: "constructed" (1) 0x0.2-0x0.2 (0.1)
0x00|30 |0 | tag: "sequence" (0x10) 0x0.3-0x0.7 (0.5)
0x00| 81 9f | .. | length: 159 0x1-0x2.7 (2)
| | | constructed[0:2]: 0x3-0xa1.7 (159)
| | | [0]{}: object 0x3-0x11.7 (15)
0x00| 30 | 0 | class: "universal" (0) 0x3-0x3.1 (0.2)
0x00| 30 | 0 | form: "constructed" (1) 0x3.2-0x3.2 (0.1)
0x00| 30 | 0 | tag: "sequence" (0x10) 0x3.3-0x3.7 (0.5)
0x00| 0d | . | length: 13 0x4-0x4.7 (1)
| | | constructed[0:2]: 0x5-0x11.7 (13)
| | | [0]{}: object 0x5-0xf.7 (11)
0x00| 06 | . | class: "universal" (0) 0x5-0x5.1 (0.2)
0x00| 06 | . | form: "primitive" (0) 0x5.2-0x5.2 (0.1)
0x00| 06 | . | tag: "object_identifier" (0x6) 0x5.3-0x5.7 (0.5)
0x00| 09 | . | length: 9 0x6-0x6.7 (1)
| | | value[0:7]: 0x7-0xf.7 (9)
0x00| 2a | * | [0]: 1 oid 0x7-0x7.7 (1)
0x00| 2a | * | [1]: 2 oid 0x7-0x7.7 (1)
0x00| 86 48 | .H | [2]: 840 oid 0x8-0x9.7 (2)
0x00| 86 f7 0d | ... | [3]: 113549 oid 0xa-0xc.7 (3)
0x00| 01 | . | [4]: 1 oid 0xd-0xd.7 (1)
0x00| 01 | . | [5]: 1 oid 0xe-0xe.7 (1)
0x00| 01| .| [6]: 1 oid 0xf-0xf.7 (1)
| | | [1]{}: object 0x10-0x11.7 (2)
0x10|05 |. | class: "universal" (0) 0x10-0x10.1 (0.2)
0x10|05 |. | form: "primitive" (0) 0x10.2-0x10.2 (0.1)
0x10|05 |. | tag: "null" (0x5) 0x10.3-0x10.7 (0.5)
0x10| 00 | . | length: "indefinite" (0) 0x11-0x11.7 (1)
| | | value: null 0x12-NA (0)
| | | [1]{}: object 0x12-0xa1.7 (144)
0x10| 03 | . | class: "universal" (0) 0x12-0x12.1 (0.2)
0x10| 03 | . | form: "primitive" (0) 0x12.2-0x12.2 (0.1)
0x10| 03 | . | tag: "bit_string" (0x3) 0x12.3-0x12.7 (0.5)
0x10| 81 8d | .. | length: 141 0x13-0x14.7 (2)
0x10| 00 | . | unused_bits_count: 0 0x15-0x15.7 (1)
0x10| 30 81 89 02 81 81 00 cc 61 f9| 0.......a.| value: raw bits 0x16-0xa1.7 (140)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: (asn1_ber) 0x0-0xa2 (162)
0x00|30 |0 | class: "universal" (0) 0x0-0x0.2 (0.2)
0x00|30 |0 | form: "constructed" (1) 0x0.2-0x0.3 (0.1)
0x00|30 |0 | tag: "sequence" (0x10) 0x0.3-0x1 (0.5)
0x00| 81 9f | .. | length: 159 0x1-0x3 (2)
| | | constructed[0:2]: 0x3-0xa2 (159)
| | | [0]{}: object 0x3-0x12 (15)
0x00| 30 | 0 | class: "universal" (0) 0x3-0x3.2 (0.2)
0x00| 30 | 0 | form: "constructed" (1) 0x3.2-0x3.3 (0.1)
0x00| 30 | 0 | tag: "sequence" (0x10) 0x3.3-0x4 (0.5)
0x00| 0d | . | length: 13 0x4-0x5 (1)
| | | constructed[0:2]: 0x5-0x12 (13)
| | | [0]{}: object 0x5-0x10 (11)
0x00| 06 | . | class: "universal" (0) 0x5-0x5.2 (0.2)
0x00| 06 | . | form: "primitive" (0) 0x5.2-0x5.3 (0.1)
0x00| 06 | . | tag: "object_identifier" (0x6) 0x5.3-0x6 (0.5)
0x00| 09 | . | length: 9 0x6-0x7 (1)
| | | value[0:7]: 0x7-0x10 (9)
0x00| 2a | * | [0]: 1 oid 0x7-0x8 (1)
0x00| 2a | * | [1]: 2 oid 0x7-0x8 (1)
0x00| 86 48 | .H | [2]: 840 oid 0x8-0xa (2)
0x00| 86 f7 0d | ... | [3]: 113549 oid 0xa-0xd (3)
0x00| 01 | . | [4]: 1 oid 0xd-0xe (1)
0x00| 01 | . | [5]: 1 oid 0xe-0xf (1)
0x00| 01| .| [6]: 1 oid 0xf-0x10 (1)
| | | [1]{}: object 0x10-0x12 (2)
0x10|05 |. | class: "universal" (0) 0x10-0x10.2 (0.2)
0x10|05 |. | form: "primitive" (0) 0x10.2-0x10.3 (0.1)
0x10|05 |. | tag: "null" (0x5) 0x10.3-0x11 (0.5)
0x10| 00 | . | length: "indefinite" (0) 0x11-0x12 (1)
| | | value: null
| | | [1]{}: object 0x12-0xa2 (144)
0x10| 03 | . | class: "universal" (0) 0x12-0x12.2 (0.2)
0x10| 03 | . | form: "primitive" (0) 0x12.2-0x12.3 (0.1)
0x10| 03 | . | tag: "bit_string" (0x3) 0x12.3-0x13 (0.5)
0x10| 81 8d | .. | length: 141 0x13-0x15 (2)
0x10| 00 | . | unused_bits_count: 0 0x15-0x16 (1)
0x10| 30 81 89 02 81 81 00 cc 61 f9| 0.......a.| value: raw bits 0x16-0xa2 (140)
0x20|ef 5a d0 bc 21 de 5b 3c a6 9e e7 25 d2 c5 04 ed|.Z..!.[<...%....|
* |until 0xa1.7 (end) (140) | |
[

File diff suppressed because it is too large Load Diff

View File

@ -1,26 +1,26 @@
# Testcase taken from linkedin/goavro https://github.com/linkedin/goavro
$ fq dv firstBlockCountNotGreaterThanZero.avro
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: firstBlockCountNotGreaterThanZero.avro (avro_ocf) 0x0-0x32.7 (51)
0x00|4f 62 6a 01 |Obj. | magic: raw bits (valid) 0x0-0x3.7 (4)
| | | header{}: 0x4-0x31.7 (46)
| | | meta[0:2]: 0x4-0x21.7 (30)
| | | [0]{}: block 0x4-0x20.7 (29)
0x00| 02 | . | count: 1 0x4-0x4.7 (1)
| | | data[0:1]: 0x5-0x20.7 (28)
| | | [0]{}: entry 0x5-0x20.7 (28)
| | | key{}: 0x5-0x10.7 (12)
0x00| 16 | . | length: 11 0x5-0x5.7 (1)
0x00| 61 76 72 6f 2e 73 63 68 65 6d| avro.schem| data: "avro.schema" 0x6-0x10.7 (11)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: firstBlockCountNotGreaterThanZero.avro (avro_ocf) 0x0-0x33 (51)
0x00|4f 62 6a 01 |Obj. | magic: raw bits (valid) 0x0-0x4 (4)
| | | header{}: 0x4-0x32 (46)
| | | meta[0:2]: 0x4-0x22 (30)
| | | [0]{}: block 0x4-0x21 (29)
0x00| 02 | . | count: 1 0x4-0x5 (1)
| | | data[0:1]: 0x5-0x21 (28)
| | | [0]{}: entry 0x5-0x21 (28)
| | | key{}: 0x5-0x11 (12)
0x00| 16 | . | length: 11 0x5-0x6 (1)
0x00| 61 76 72 6f 2e 73 63 68 65 6d| avro.schem| data: "avro.schema" 0x6-0x11 (11)
0x10|61 |a |
| | | value{}: 0x11-0x20.7 (16)
0x10| 1e | . | length: 15 0x11-0x11.7 (1)
0x10| 7b 22 74 79 70 65 22 3a 22 6c 6f 6e 67 22| {"type":"long"| data: "{\"type\":\"long\"}" 0x12-0x20.7 (15)
| | | value{}: 0x11-0x21 (16)
0x10| 1e | . | length: 15 0x11-0x12 (1)
0x10| 7b 22 74 79 70 65 22 3a 22 6c 6f 6e 67 22| {"type":"long"| data: "{\"type\":\"long\"}" 0x12-0x21 (15)
0x20|7d |} |
| | | [1]{}: block 0x21-0x21.7 (1)
0x20| 00 | . | count: 0 0x21-0x21.7 (1)
| | | data[0:0]: 0x22-NA (0)
0x20| 30 31 32 33 34 35 36 37 38 39 61 62 63 64| 0123456789abcd| sync: raw bits 0x22-0x31.7 (16)
| | | [1]{}: block 0x21-0x22 (1)
0x20| 00 | . | count: 0 0x21-0x22 (1)
| | | data[0:0]: 0x22-0x22 (0)
0x20| 30 31 32 33 34 35 36 37 38 39 61 62 63 64| 0123456789abcd| sync: raw bits 0x22-0x32 (16)
0x30|65 66 |ef |
| | | blocks[0:1]: 0x32-0x32.7 (1)
| | | [0]{}: block 0x32-0x32.7 (1)
0x30| 00| | .| | count: 0 0x32-0x32.7 (1)
| | | blocks[0:1]: 0x32-0x33 (1)
| | | [0]{}: block 0x32-0x33 (1)
0x30| 00| | .| | count: 0 0x32-0x33 (1)

View File

@ -1,412 +1,412 @@
# Testcase taken from linkedin/goavro https://github.com/linkedin/goavro
$ fq 'dv({array_truncate: 5})' quickstop-deflate.avro
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: quickstop-deflate.avro (avro_ocf) 0x0-0x5835.7 (22582)
0x000000|4f 62 6a 01 |Obj. | magic: raw bits (valid) 0x0-0x3.7 (4)
| | | header{}: 0x4-0x129.7 (294)
| | | meta[0:2]: 0x4-0x119.7 (278)
| | | [0]{}: block 0x4-0x118.7 (277)
0x000000| 04 | . | count: 2 0x4-0x4.7 (1)
| | | data[0:2]: 0x5-0x118.7 (276)
| | | [0]{}: entry 0x5-0x17.7 (19)
| | | key{}: 0x5-0xf.7 (11)
0x000000| 14 | . | length: 10 0x5-0x5.7 (1)
0x000000| 61 76 72 6f 2e 63 6f 64 65 63| avro.codec| data: "avro.codec" 0x6-0xf.7 (10)
| | | value{}: 0x10-0x17.7 (8)
0x000010|0e |. | length: 7 0x10-0x10.7 (1)
0x000010| 64 65 66 6c 61 74 65 | deflate | data: "deflate" 0x11-0x17.7 (7)
| | | [1]{}: entry 0x18-0x118.7 (257)
| | | key{}: 0x18-0x23.7 (12)
0x000010| 16 | . | length: 11 0x18-0x18.7 (1)
0x000010| 61 76 72 6f 2e 73 63| avro.sc| data: "avro.schema" 0x19-0x23.7 (11)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: quickstop-deflate.avro (avro_ocf) 0x0-0x5836 (22582)
0x000000|4f 62 6a 01 |Obj. | magic: raw bits (valid) 0x0-0x4 (4)
| | | header{}: 0x4-0x12a (294)
| | | meta[0:2]: 0x4-0x11a (278)
| | | [0]{}: block 0x4-0x119 (277)
0x000000| 04 | . | count: 2 0x4-0x5 (1)
| | | data[0:2]: 0x5-0x119 (276)
| | | [0]{}: entry 0x5-0x18 (19)
| | | key{}: 0x5-0x10 (11)
0x000000| 14 | . | length: 10 0x5-0x6 (1)
0x000000| 61 76 72 6f 2e 63 6f 64 65 63| avro.codec| data: "avro.codec" 0x6-0x10 (10)
| | | value{}: 0x10-0x18 (8)
0x000010|0e |. | length: 7 0x10-0x11 (1)
0x000010| 64 65 66 6c 61 74 65 | deflate | data: "deflate" 0x11-0x18 (7)
| | | [1]{}: entry 0x18-0x119 (257)
| | | key{}: 0x18-0x24 (12)
0x000010| 16 | . | length: 11 0x18-0x19 (1)
0x000010| 61 76 72 6f 2e 73 63| avro.sc| data: "avro.schema" 0x19-0x24 (11)
0x000020|68 65 6d 61 |hema |
| | | value{}: 0x24-0x118.7 (245)
0x000020| e6 03 | .. | length: 243 0x24-0x25.7 (2)
0x000020| 7b 22 74 79 70 65 22 3a 22 72| {"type":"r| data: "{\"type\":\"record\",\"name\":\"Person\",\"fields\":[{\"na..." 0x26-0x118.7 (243)
| | | value{}: 0x24-0x119 (245)
0x000020| e6 03 | .. | length: 243 0x24-0x26 (2)
0x000020| 7b 22 74 79 70 65 22 3a 22 72| {"type":"r| data: "{\"type\":\"record\",\"name\":\"Person\",\"fields\":[{\"name\":\"ID\",\"type\":{\"type\":\"long\"}},{\"name\":\"First\",\"type\":{\"type\":\"string\"}},{\"name\":\"Last\",\"type\":{\"type\":\"string\"}},{\"name\":\"Phone\",\"type\":{\"type\":\"string\"}},{\"name\":\"Age\",\"type\":{\"type\":\"int\"}}]}" 0x26-0x119 (243)
0x000030|65 63 6f 72 64 22 2c 22 6e 61 6d 65 22 3a 22 50|ecord","name":"P|
* |until 0x118.7 (243) | |
| | | [1]{}: block 0x119-0x119.7 (1)
0x000110| 00 | . | count: 0 0x119-0x119.7 (1)
| | | data[0:0]: 0x11a-NA (0)
0x000110| 93 e7 87 9e 02 95| ......| sync: raw bits 0x11a-0x129.7 (16)
| | | [1]{}: block 0x119-0x11a (1)
0x000110| 00 | . | count: 0 0x119-0x11a (1)
| | | data[0:0]: 0x11a-0x11a (0)
0x000110| 93 e7 87 9e 02 95| ......| sync: raw bits 0x11a-0x12a (16)
0x000120|d5 9e 4f 58 37 ad b2 a2 ce cd |..OX7..... |
| | | blocks[0:12]: 0x12a-0x5835.7 (22284)
| | | [0]{}: block 0x12a-0x9dc.7 (2227)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| data[0:602]: 0x0-0x3ff1.7 (16370)
| | | [0]{}: data 0x0-0x11.7 (18)
0x0000|02 |. | ID: 1 0x0-0x0.7 (1)
| | | First{}: 0x1-0x6.7 (6)
0x0000| 0a | . | length: 5 0x1-0x1.7 (1)
0x0000| 44 61 6e 74 65 | Dante | data: "Dante" 0x2-0x6.7 (5)
| | | Last{}: 0x7-0xc.7 (6)
0x0000| 0a | . | length: 5 0x7-0x7.7 (1)
0x0000| 48 69 63 6b 73 | Hicks | data: "Hicks" 0x8-0xc.7 (5)
| | | Phone{}: 0xd-0x10.7 (4)
0x0000| 06 | . | length: 3 0xd-0xd.7 (1)
0x0000| 28 30| (0| data: "(0)" 0xe-0x10.7 (3)
| | | blocks[0:12]: 0x12a-0x5836 (22284)
| | | [0]{}: block 0x12a-0x9dd (2227)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| data[0:602]: 0x0-0x3ff2 (16370)
| | | [0]{}: data 0x0-0x12 (18)
0x0000|02 |. | ID: 1 0x0-0x1 (1)
| | | First{}: 0x1-0x7 (6)
0x0000| 0a | . | length: 5 0x1-0x2 (1)
0x0000| 44 61 6e 74 65 | Dante | data: "Dante" 0x2-0x7 (5)
| | | Last{}: 0x7-0xd (6)
0x0000| 0a | . | length: 5 0x7-0x8 (1)
0x0000| 48 69 63 6b 73 | Hicks | data: "Hicks" 0x8-0xd (5)
| | | Phone{}: 0xd-0x11 (4)
0x0000| 06 | . | length: 3 0xd-0xe (1)
0x0000| 28 30| (0| data: "(0)" 0xe-0x11 (3)
0x0001|29 |) |
0x0001| 40 | @ | Age: 32 0x11-0x11.7 (1)
| | | [1]{}: data 0x12-0x30.7 (31)
0x0001| 04 | . | ID: 2 0x12-0x12.7 (1)
| | | First{}: 0x13-0x19.7 (7)
0x0001| 0c | . | length: 6 0x13-0x13.7 (1)
0x0001| 52 61 6e 64 61 6c | Randal | data: "Randal" 0x14-0x19.7 (6)
| | | Last{}: 0x1a-0x20.7 (7)
0x0001| 0c | . | length: 6 0x1a-0x1a.7 (1)
0x0001| 47 72 61 76 65| Grave| data: "Graves" 0x1b-0x20.7 (6)
0x0001| 40 | @ | Age: 32 0x11-0x12 (1)
| | | [1]{}: data 0x12-0x31 (31)
0x0001| 04 | . | ID: 2 0x12-0x13 (1)
| | | First{}: 0x13-0x1a (7)
0x0001| 0c | . | length: 6 0x13-0x14 (1)
0x0001| 52 61 6e 64 61 6c | Randal | data: "Randal" 0x14-0x1a (6)
| | | Last{}: 0x1a-0x21 (7)
0x0001| 0c | . | length: 6 0x1a-0x1b (1)
0x0001| 47 72 61 76 65| Grave| data: "Graves" 0x1b-0x21 (6)
0x0002|73 |s |
| | | Phone{}: 0x21-0x2f.7 (15)
0x0002| 1c | . | length: 14 0x21-0x21.7 (1)
0x0002| 28 35 35 35 29 20 31 32 33 2d 35 36 37 38| (555) 123-5678| data: "(555) 123-5678" 0x22-0x2f.7 (14)
0x0003|3c |< | Age: 30 0x30-0x30.7 (1)
| | | [2]{}: data 0x31-0x53.7 (35)
0x0003| 06 | . | ID: 3 0x31-0x31.7 (1)
| | | First{}: 0x32-0x3a.7 (9)
0x0003| 10 | . | length: 8 0x32-0x32.7 (1)
0x0003| 56 65 72 6f 6e 69 63 61 | Veronica | data: "Veronica" 0x33-0x3a.7 (8)
| | | Last{}: 0x3b-0x43.7 (9)
0x0003| 10 | . | length: 8 0x3b-0x3b.7 (1)
0x0003| 4c 6f 75 67| Loug| data: "Loughran" 0x3c-0x43.7 (8)
| | | Phone{}: 0x21-0x30 (15)
0x0002| 1c | . | length: 14 0x21-0x22 (1)
0x0002| 28 35 35 35 29 20 31 32 33 2d 35 36 37 38| (555) 123-5678| data: "(555) 123-5678" 0x22-0x30 (14)
0x0003|3c |< | Age: 30 0x30-0x31 (1)
| | | [2]{}: data 0x31-0x54 (35)
0x0003| 06 | . | ID: 3 0x31-0x32 (1)
| | | First{}: 0x32-0x3b (9)
0x0003| 10 | . | length: 8 0x32-0x33 (1)
0x0003| 56 65 72 6f 6e 69 63 61 | Veronica | data: "Veronica" 0x33-0x3b (8)
| | | Last{}: 0x3b-0x44 (9)
0x0003| 10 | . | length: 8 0x3b-0x3c (1)
0x0003| 4c 6f 75 67| Loug| data: "Loughran" 0x3c-0x44 (8)
0x0004|68 72 61 6e |hran |
| | | Phone{}: 0x44-0x52.7 (15)
0x0004| 1c | . | length: 14 0x44-0x44.7 (1)
0x0004| 28 35 35 35 29 20 31 32 33 2d 30| (555) 123-0| data: "(555) 123-0987" 0x45-0x52.7 (14)
| | | Phone{}: 0x44-0x53 (15)
0x0004| 1c | . | length: 14 0x44-0x45 (1)
0x0004| 28 35 35 35 29 20 31 32 33 2d 30| (555) 123-0| data: "(555) 123-0987" 0x45-0x53 (14)
0x0005|39 38 37 |987 |
0x0005| 38 | 8 | Age: 28 0x53-0x53.7 (1)
| | | [3]{}: data 0x54-0x71.7 (30)
0x0005| 08 | . | ID: 4 0x54-0x54.7 (1)
| | | First{}: 0x55-0x5c.7 (8)
0x0005| 0e | . | length: 7 0x55-0x55.7 (1)
0x0005| 43 61 69 74 6c 69 6e | Caitlin | data: "Caitlin" 0x56-0x5c.7 (7)
| | | Last{}: 0x5d-0x61.7 (5)
0x0005| 08 | . | length: 4 0x5d-0x5d.7 (1)
0x0005| 42 72| Br| data: "Bree" 0x5e-0x61.7 (4)
0x0005| 38 | 8 | Age: 28 0x53-0x54 (1)
| | | [3]{}: data 0x54-0x72 (30)
0x0005| 08 | . | ID: 4 0x54-0x55 (1)
| | | First{}: 0x55-0x5d (8)
0x0005| 0e | . | length: 7 0x55-0x56 (1)
0x0005| 43 61 69 74 6c 69 6e | Caitlin | data: "Caitlin" 0x56-0x5d (7)
| | | Last{}: 0x5d-0x62 (5)
0x0005| 08 | . | length: 4 0x5d-0x5e (1)
0x0005| 42 72| Br| data: "Bree" 0x5e-0x62 (4)
0x0006|65 65 |ee |
| | | Phone{}: 0x62-0x70.7 (15)
0x0006| 1c | . | length: 14 0x62-0x62.7 (1)
0x0006| 28 35 35 35 29 20 31 32 33 2d 32 33 32| (555) 123-232| data: "(555) 123-2323" 0x63-0x70.7 (14)
| | | Phone{}: 0x62-0x71 (15)
0x0006| 1c | . | length: 14 0x62-0x63 (1)
0x0006| 28 35 35 35 29 20 31 32 33 2d 32 33 32| (555) 123-232| data: "(555) 123-2323" 0x63-0x71 (14)
0x0007|33 |3 |
0x0007| 36 | 6 | Age: 27 0x71-0x71.7 (1)
| | | [4]{}: data 0x72-0x8d.7 (28)
0x0007| 0a | . | ID: 5 0x72-0x72.7 (1)
| | | First{}: 0x73-0x76.7 (4)
0x0007| 06 | . | length: 3 0x73-0x73.7 (1)
0x0007| 42 6f 62 | Bob | data: "Bob" 0x74-0x76.7 (3)
| | | Last{}: 0x77-0x7d.7 (7)
0x0007| 0c | . | length: 6 0x77-0x77.7 (1)
0x0007| 53 69 6c 65 6e 74 | Silent | data: "Silent" 0x78-0x7d.7 (6)
| | | Phone{}: 0x7e-0x8c.7 (15)
0x0007| 1c | . | length: 14 0x7e-0x7e.7 (1)
0x0007| 28| (| data: "(555) 123-6422" 0x7f-0x8c.7 (14)
0x0007| 36 | 6 | Age: 27 0x71-0x72 (1)
| | | [4]{}: data 0x72-0x8e (28)
0x0007| 0a | . | ID: 5 0x72-0x73 (1)
| | | First{}: 0x73-0x77 (4)
0x0007| 06 | . | length: 3 0x73-0x74 (1)
0x0007| 42 6f 62 | Bob | data: "Bob" 0x74-0x77 (3)
| | | Last{}: 0x77-0x7e (7)
0x0007| 0c | . | length: 6 0x77-0x78 (1)
0x0007| 53 69 6c 65 6e 74 | Silent | data: "Silent" 0x78-0x7e (6)
| | | Phone{}: 0x7e-0x8d (15)
0x0007| 1c | . | length: 14 0x7e-0x7f (1)
0x0007| 28| (| data: "(555) 123-6422" 0x7f-0x8d (14)
0x0008|35 35 35 29 20 31 32 33 2d 36 34 32 32 |555) 123-6422 |
0x0008| 3a | : | Age: 29 0x8d-0x8d.7 (1)
0x0008| 3a | : | Age: 29 0x8d-0x8e (1)
| | | [5:602]: ...
0x000120| b4 09 | .. | count: 602 0x12a-0x12b.7 (2)
0x000120| be 22 | ." | size: 2207 0x12c-0x12d.7 (2)
0x000120| 8d db| ..| compressed: raw bits 0x12e-0x9cc.7 (2207)
0x000120| b4 09 | .. | count: 602 0x12a-0x12c (2)
0x000120| be 22 | ." | size: 2207 0x12c-0x12e (2)
0x000120| 8d db| ..| compressed: raw bits 0x12e-0x9cd (2207)
0x000130|6f 64 ac f9 19 c6 71 f9 37 49 8e 63 1d 55 55 b5|od....q.7I.c.UU.|
* |until 0x9cc.7 (2207) | |
0x0009c0| 93 e7 87| ...| sync: raw bits (valid) 0x9cd-0x9dc.7 (16)
0x0009c0| 93 e7 87| ...| sync: raw bits (valid) 0x9cd-0x9dd (16)
0x0009d0|9e 02 95 d5 9e 4f 58 37 ad b2 a2 ce cd |.....OX7..... |
| | | [1]{}: block 0x9dd-0x1257.7 (2171)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| data[0:592]: 0x0-0x3ffc.7 (16381)
| | | [0]{}: data 0x0-0x23.7 (36)
0x0000|b6 09 |.. | ID: 603 0x0-0x1.7 (2)
| | | First{}: 0x2-0xa.7 (9)
0x0000| 10 | . | length: 8 0x2-0x2.7 (1)
0x0000| 56 65 72 6f 6e 69 63 61 | Veronica | data: "Veronica" 0x3-0xa.7 (8)
| | | Last{}: 0xb-0x13.7 (9)
0x0000| 10 | . | length: 8 0xb-0xb.7 (1)
0x0000| 4c 6f 75 67| Loug| data: "Loughran" 0xc-0x13.7 (8)
| | | [1]{}: block 0x9dd-0x1258 (2171)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| data[0:592]: 0x0-0x3ffd (16381)
| | | [0]{}: data 0x0-0x24 (36)
0x0000|b6 09 |.. | ID: 603 0x0-0x2 (2)
| | | First{}: 0x2-0xb (9)
0x0000| 10 | . | length: 8 0x2-0x3 (1)
0x0000| 56 65 72 6f 6e 69 63 61 | Veronica | data: "Veronica" 0x3-0xb (8)
| | | Last{}: 0xb-0x14 (9)
0x0000| 10 | . | length: 8 0xb-0xc (1)
0x0000| 4c 6f 75 67| Loug| data: "Loughran" 0xc-0x14 (8)
0x0001|68 72 61 6e |hran |
| | | Phone{}: 0x14-0x22.7 (15)
0x0001| 1c | . | length: 14 0x14-0x14.7 (1)
0x0001| 28 35 35 35 29 20 31 32 33 2d 30| (555) 123-0| data: "(555) 123-0987" 0x15-0x22.7 (14)
| | | Phone{}: 0x14-0x23 (15)
0x0001| 1c | . | length: 14 0x14-0x15 (1)
0x0001| 28 35 35 35 29 20 31 32 33 2d 30| (555) 123-0| data: "(555) 123-0987" 0x15-0x23 (14)
0x0002|39 38 37 |987 |
0x0002| 38 | 8 | Age: 28 0x23-0x23.7 (1)
| | | [1]{}: data 0x24-0x42.7 (31)
0x0002| b8 09 | .. | ID: 604 0x24-0x25.7 (2)
| | | First{}: 0x26-0x2d.7 (8)
0x0002| 0e | . | length: 7 0x26-0x26.7 (1)
0x0002| 43 61 69 74 6c 69 6e | Caitlin | data: "Caitlin" 0x27-0x2d.7 (7)
| | | Last{}: 0x2e-0x32.7 (5)
0x0002| 08 | . | length: 4 0x2e-0x2e.7 (1)
0x0002| 42| B| data: "Bree" 0x2f-0x32.7 (4)
0x0002| 38 | 8 | Age: 28 0x23-0x24 (1)
| | | [1]{}: data 0x24-0x43 (31)
0x0002| b8 09 | .. | ID: 604 0x24-0x26 (2)
| | | First{}: 0x26-0x2e (8)
0x0002| 0e | . | length: 7 0x26-0x27 (1)
0x0002| 43 61 69 74 6c 69 6e | Caitlin | data: "Caitlin" 0x27-0x2e (7)
| | | Last{}: 0x2e-0x33 (5)
0x0002| 08 | . | length: 4 0x2e-0x2f (1)
0x0002| 42| B| data: "Bree" 0x2f-0x33 (4)
0x0003|72 65 65 |ree |
| | | Phone{}: 0x33-0x41.7 (15)
0x0003| 1c | . | length: 14 0x33-0x33.7 (1)
0x0003| 28 35 35 35 29 20 31 32 33 2d 32 33| (555) 123-23| data: "(555) 123-2323" 0x34-0x41.7 (14)
| | | Phone{}: 0x33-0x42 (15)
0x0003| 1c | . | length: 14 0x33-0x34 (1)
0x0003| 28 35 35 35 29 20 31 32 33 2d 32 33| (555) 123-23| data: "(555) 123-2323" 0x34-0x42 (14)
0x0004|32 33 |23 |
0x0004| 36 | 6 | Age: 27 0x42-0x42.7 (1)
| | | [2]{}: data 0x43-0x5f.7 (29)
0x0004| ba 09 | .. | ID: 605 0x43-0x44.7 (2)
| | | First{}: 0x45-0x48.7 (4)
0x0004| 06 | . | length: 3 0x45-0x45.7 (1)
0x0004| 42 6f 62 | Bob | data: "Bob" 0x46-0x48.7 (3)
| | | Last{}: 0x49-0x4f.7 (7)
0x0004| 0c | . | length: 6 0x49-0x49.7 (1)
0x0004| 53 69 6c 65 6e 74| Silent| data: "Silent" 0x4a-0x4f.7 (6)
| | | Phone{}: 0x50-0x5e.7 (15)
0x0005|1c |. | length: 14 0x50-0x50.7 (1)
0x0005| 28 35 35 35 29 20 31 32 33 2d 36 34 32 32 | (555) 123-6422 | data: "(555) 123-6422" 0x51-0x5e.7 (14)
0x0005| 3a| :| Age: 29 0x5f-0x5f.7 (1)
| | | [3]{}: data 0x60-0x70.7 (17)
0x0006|bc 09 |.. | ID: 606 0x60-0x61.7 (2)
| | | First{}: 0x62-0x65.7 (4)
0x0006| 06 | . | length: 3 0x62-0x62.7 (1)
0x0006| 4a 61 79 | Jay | data: "Jay" 0x63-0x65.7 (3)
| | | Last{}: 0x66-0x69.7 (4)
0x0006| 06 | . | length: 3 0x66-0x66.7 (1)
0x0006| 3f 3f 3f | ??? | data: "???" 0x67-0x69.7 (3)
| | | Phone{}: 0x6a-0x6f.7 (6)
0x0006| 0a | . | length: 5 0x6a-0x6a.7 (1)
0x0006| 28 31 30 30 29| (100)| data: "(100)" 0x6b-0x6f.7 (5)
0x0007|34 |4 | Age: 26 0x70-0x70.7 (1)
| | | [4]{}: data 0x71-0x85.7 (21)
0x0007| be 09 | .. | ID: 607 0x71-0x72.7 (2)
| | | First{}: 0x73-0x78.7 (6)
0x0007| 0a | . | length: 5 0x73-0x73.7 (1)
0x0007| 44 61 6e 74 65 | Dante | data: "Dante" 0x74-0x78.7 (5)
| | | Last{}: 0x79-0x7e.7 (6)
0x0007| 0a | . | length: 5 0x79-0x79.7 (1)
0x0007| 48 69 63 6b 73 | Hicks | data: "Hicks" 0x7a-0x7e.7 (5)
| | | Phone{}: 0x7f-0x84.7 (6)
0x0007| 0a| .| length: 5 0x7f-0x7f.7 (1)
0x0008|28 31 30 31 29 |(101) | data: "(101)" 0x80-0x84.7 (5)
0x0008| 40 | @ | Age: 32 0x85-0x85.7 (1)
0x0004| 36 | 6 | Age: 27 0x42-0x43 (1)
| | | [2]{}: data 0x43-0x60 (29)
0x0004| ba 09 | .. | ID: 605 0x43-0x45 (2)
| | | First{}: 0x45-0x49 (4)
0x0004| 06 | . | length: 3 0x45-0x46 (1)
0x0004| 42 6f 62 | Bob | data: "Bob" 0x46-0x49 (3)
| | | Last{}: 0x49-0x50 (7)
0x0004| 0c | . | length: 6 0x49-0x4a (1)
0x0004| 53 69 6c 65 6e 74| Silent| data: "Silent" 0x4a-0x50 (6)
| | | Phone{}: 0x50-0x5f (15)
0x0005|1c |. | length: 14 0x50-0x51 (1)
0x0005| 28 35 35 35 29 20 31 32 33 2d 36 34 32 32 | (555) 123-6422 | data: "(555) 123-6422" 0x51-0x5f (14)
0x0005| 3a| :| Age: 29 0x5f-0x60 (1)
| | | [3]{}: data 0x60-0x71 (17)
0x0006|bc 09 |.. | ID: 606 0x60-0x62 (2)
| | | First{}: 0x62-0x66 (4)
0x0006| 06 | . | length: 3 0x62-0x63 (1)
0x0006| 4a 61 79 | Jay | data: "Jay" 0x63-0x66 (3)
| | | Last{}: 0x66-0x6a (4)
0x0006| 06 | . | length: 3 0x66-0x67 (1)
0x0006| 3f 3f 3f | ??? | data: "???" 0x67-0x6a (3)
| | | Phone{}: 0x6a-0x70 (6)
0x0006| 0a | . | length: 5 0x6a-0x6b (1)
0x0006| 28 31 30 30 29| (100)| data: "(100)" 0x6b-0x70 (5)
0x0007|34 |4 | Age: 26 0x70-0x71 (1)
| | | [4]{}: data 0x71-0x86 (21)
0x0007| be 09 | .. | ID: 607 0x71-0x73 (2)
| | | First{}: 0x73-0x79 (6)
0x0007| 0a | . | length: 5 0x73-0x74 (1)
0x0007| 44 61 6e 74 65 | Dante | data: "Dante" 0x74-0x79 (5)
| | | Last{}: 0x79-0x7f (6)
0x0007| 0a | . | length: 5 0x79-0x7a (1)
0x0007| 48 69 63 6b 73 | Hicks | data: "Hicks" 0x7a-0x7f (5)
| | | Phone{}: 0x7f-0x85 (6)
0x0007| 0a| .| length: 5 0x7f-0x80 (1)
0x0008|28 31 30 31 29 |(101) | data: "(101)" 0x80-0x85 (5)
0x0008| 40 | @ | Age: 32 0x85-0x86 (1)
| | | [5:592]: ...
0x0009d0| a0 09 | .. | count: 592 0x9dd-0x9de.7 (2)
0x0009d0| ce| .| size: 2151 0x9df-0x9e0.7 (2)
0x0009d0| a0 09 | .. | count: 592 0x9dd-0x9df (2)
0x0009d0| ce| .| size: 2151 0x9df-0x9e1 (2)
0x0009e0|21 |! |
0x0009e0| 8d d8 5f 44 fc 7b 1e c7 f1 bb 9f d3 ff 3f d7| .._D.{.......?.| compressed: raw bits 0x9e1-0x1247.7 (2151)
0x0009e0| 8d d8 5f 44 fc 7b 1e c7 f1 bb 9f d3 ff 3f d7| .._D.{.......?.| compressed: raw bits 0x9e1-0x1248 (2151)
0x0009f0|7b b1 97 e7 7b 71 f8 55 df fe fc d6 f2 1b e7 2c|{...{q.U.......,|
* |until 0x1247.7 (2151) | |
0x001240| 93 e7 87 9e 02 95 d5 9e| ........| sync: raw bits (valid) 0x1248-0x1257.7 (16)
0x001240| 93 e7 87 9e 02 95 d5 9e| ........| sync: raw bits (valid) 0x1248-0x1258 (16)
0x001250|4f 58 37 ad b2 a2 ce cd |OX7..... |
| | | [2]{}: block 0x1258-0x1ad5.7 (2174)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| data[0:591]: 0x0-0x3fe4.7 (16357)
| | | [0]{}: data 0x0-0x14.7 (21)
0x0000|d6 12 |.. | ID: 1195 0x0-0x1.7 (2)
| | | First{}: 0x2-0x7.7 (6)
0x0000| 0a | . | length: 5 0x2-0x2.7 (1)
0x0000| 44 61 6e 74 65 | Dante | data: "Dante" 0x3-0x7.7 (5)
| | | Last{}: 0x8-0xd.7 (6)
0x0000| 0a | . | length: 5 0x8-0x8.7 (1)
0x0000| 48 69 63 6b 73 | Hicks | data: "Hicks" 0x9-0xd.7 (5)
| | | Phone{}: 0xe-0x13.7 (6)
0x0000| 0a | . | length: 5 0xe-0xe.7 (1)
0x0000| 28| (| data: "(199)" 0xf-0x13.7 (5)
| | | [2]{}: block 0x1258-0x1ad6 (2174)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| data[0:591]: 0x0-0x3fe5 (16357)
| | | [0]{}: data 0x0-0x15 (21)
0x0000|d6 12 |.. | ID: 1195 0x0-0x2 (2)
| | | First{}: 0x2-0x8 (6)
0x0000| 0a | . | length: 5 0x2-0x3 (1)
0x0000| 44 61 6e 74 65 | Dante | data: "Dante" 0x3-0x8 (5)
| | | Last{}: 0x8-0xe (6)
0x0000| 0a | . | length: 5 0x8-0x9 (1)
0x0000| 48 69 63 6b 73 | Hicks | data: "Hicks" 0x9-0xe (5)
| | | Phone{}: 0xe-0x14 (6)
0x0000| 0a | . | length: 5 0xe-0xf (1)
0x0000| 28| (| data: "(199)" 0xf-0x14 (5)
0x0001|31 39 39 29 |199) |
0x0001| 40 | @ | Age: 32 0x14-0x14.7 (1)
| | | [1]{}: data 0x15-0x34.7 (32)
0x0001| d8 12 | .. | ID: 1196 0x15-0x16.7 (2)
| | | First{}: 0x17-0x1d.7 (7)
0x0001| 0c | . | length: 6 0x17-0x17.7 (1)
0x0001| 52 61 6e 64 61 6c | Randal | data: "Randal" 0x18-0x1d.7 (6)
| | | Last{}: 0x1e-0x24.7 (7)
0x0001| 0c | . | length: 6 0x1e-0x1e.7 (1)
0x0001| 47| G| data: "Graves" 0x1f-0x24.7 (6)
0x0001| 40 | @ | Age: 32 0x14-0x15 (1)
| | | [1]{}: data 0x15-0x35 (32)
0x0001| d8 12 | .. | ID: 1196 0x15-0x17 (2)
| | | First{}: 0x17-0x1e (7)
0x0001| 0c | . | length: 6 0x17-0x18 (1)
0x0001| 52 61 6e 64 61 6c | Randal | data: "Randal" 0x18-0x1e (6)
| | | Last{}: 0x1e-0x25 (7)
0x0001| 0c | . | length: 6 0x1e-0x1f (1)
0x0001| 47| G| data: "Graves" 0x1f-0x25 (6)
0x0002|72 61 76 65 73 |raves |
| | | Phone{}: 0x25-0x33.7 (15)
0x0002| 1c | . | length: 14 0x25-0x25.7 (1)
0x0002| 28 35 35 35 29 20 31 32 33 2d| (555) 123-| data: "(555) 123-5678" 0x26-0x33.7 (14)
| | | Phone{}: 0x25-0x34 (15)
0x0002| 1c | . | length: 14 0x25-0x26 (1)
0x0002| 28 35 35 35 29 20 31 32 33 2d| (555) 123-| data: "(555) 123-5678" 0x26-0x34 (14)
0x0003|35 36 37 38 |5678 |
0x0003| 3c | < | Age: 30 0x34-0x34.7 (1)
| | | [2]{}: data 0x35-0x58.7 (36)
0x0003| da 12 | .. | ID: 1197 0x35-0x36.7 (2)
| | | First{}: 0x37-0x3f.7 (9)
0x0003| 10 | . | length: 8 0x37-0x37.7 (1)
0x0003| 56 65 72 6f 6e 69 63 61| Veronica| data: "Veronica" 0x38-0x3f.7 (8)
| | | Last{}: 0x40-0x48.7 (9)
0x0004|10 |. | length: 8 0x40-0x40.7 (1)
0x0004| 4c 6f 75 67 68 72 61 6e | Loughran | data: "Loughran" 0x41-0x48.7 (8)
| | | Phone{}: 0x49-0x57.7 (15)
0x0004| 1c | . | length: 14 0x49-0x49.7 (1)
0x0004| 28 35 35 35 29 20| (555) | data: "(555) 123-0987" 0x4a-0x57.7 (14)
0x0003| 3c | < | Age: 30 0x34-0x35 (1)
| | | [2]{}: data 0x35-0x59 (36)
0x0003| da 12 | .. | ID: 1197 0x35-0x37 (2)
| | | First{}: 0x37-0x40 (9)
0x0003| 10 | . | length: 8 0x37-0x38 (1)
0x0003| 56 65 72 6f 6e 69 63 61| Veronica| data: "Veronica" 0x38-0x40 (8)
| | | Last{}: 0x40-0x49 (9)
0x0004|10 |. | length: 8 0x40-0x41 (1)
0x0004| 4c 6f 75 67 68 72 61 6e | Loughran | data: "Loughran" 0x41-0x49 (8)
| | | Phone{}: 0x49-0x58 (15)
0x0004| 1c | . | length: 14 0x49-0x4a (1)
0x0004| 28 35 35 35 29 20| (555) | data: "(555) 123-0987" 0x4a-0x58 (14)
0x0005|31 32 33 2d 30 39 38 37 |123-0987 |
0x0005| 38 | 8 | Age: 28 0x58-0x58.7 (1)
| | | [3]{}: data 0x59-0x77.7 (31)
0x0005| dc 12 | .. | ID: 1198 0x59-0x5a.7 (2)
| | | First{}: 0x5b-0x62.7 (8)
0x0005| 0e | . | length: 7 0x5b-0x5b.7 (1)
0x0005| 43 61 69 74| Cait| data: "Caitlin" 0x5c-0x62.7 (7)
0x0005| 38 | 8 | Age: 28 0x58-0x59 (1)
| | | [3]{}: data 0x59-0x78 (31)
0x0005| dc 12 | .. | ID: 1198 0x59-0x5b (2)
| | | First{}: 0x5b-0x63 (8)
0x0005| 0e | . | length: 7 0x5b-0x5c (1)
0x0005| 43 61 69 74| Cait| data: "Caitlin" 0x5c-0x63 (7)
0x0006|6c 69 6e |lin |
| | | Last{}: 0x63-0x67.7 (5)
0x0006| 08 | . | length: 4 0x63-0x63.7 (1)
0x0006| 42 72 65 65 | Bree | data: "Bree" 0x64-0x67.7 (4)
| | | Phone{}: 0x68-0x76.7 (15)
0x0006| 1c | . | length: 14 0x68-0x68.7 (1)
0x0006| 28 35 35 35 29 20 31| (555) 1| data: "(555) 123-2323" 0x69-0x76.7 (14)
| | | Last{}: 0x63-0x68 (5)
0x0006| 08 | . | length: 4 0x63-0x64 (1)
0x0006| 42 72 65 65 | Bree | data: "Bree" 0x64-0x68 (4)
| | | Phone{}: 0x68-0x77 (15)
0x0006| 1c | . | length: 14 0x68-0x69 (1)
0x0006| 28 35 35 35 29 20 31| (555) 1| data: "(555) 123-2323" 0x69-0x77 (14)
0x0007|32 33 2d 32 33 32 33 |23-2323 |
0x0007| 36 | 6 | Age: 27 0x77-0x77.7 (1)
| | | [4]{}: data 0x78-0x94.7 (29)
0x0007| de 12 | .. | ID: 1199 0x78-0x79.7 (2)
| | | First{}: 0x7a-0x7d.7 (4)
0x0007| 06 | . | length: 3 0x7a-0x7a.7 (1)
0x0007| 42 6f 62 | Bob | data: "Bob" 0x7b-0x7d.7 (3)
| | | Last{}: 0x7e-0x84.7 (7)
0x0007| 0c | . | length: 6 0x7e-0x7e.7 (1)
0x0007| 53| S| data: "Silent" 0x7f-0x84.7 (6)
0x0007| 36 | 6 | Age: 27 0x77-0x78 (1)
| | | [4]{}: data 0x78-0x95 (29)
0x0007| de 12 | .. | ID: 1199 0x78-0x7a (2)
| | | First{}: 0x7a-0x7e (4)
0x0007| 06 | . | length: 3 0x7a-0x7b (1)
0x0007| 42 6f 62 | Bob | data: "Bob" 0x7b-0x7e (3)
| | | Last{}: 0x7e-0x85 (7)
0x0007| 0c | . | length: 6 0x7e-0x7f (1)
0x0007| 53| S| data: "Silent" 0x7f-0x85 (6)
0x0008|69 6c 65 6e 74 |ilent |
| | | Phone{}: 0x85-0x93.7 (15)
0x0008| 1c | . | length: 14 0x85-0x85.7 (1)
0x0008| 28 35 35 35 29 20 31 32 33 2d| (555) 123-| data: "(555) 123-6422" 0x86-0x93.7 (14)
| | | Phone{}: 0x85-0x94 (15)
0x0008| 1c | . | length: 14 0x85-0x86 (1)
0x0008| 28 35 35 35 29 20 31 32 33 2d| (555) 123-| data: "(555) 123-6422" 0x86-0x94 (14)
0x0009|36 34 32 32 |6422 |
0x0009| 3a | : | Age: 29 0x94-0x94.7 (1)
0x0009| 3a | : | Age: 29 0x94-0x95 (1)
| | | [5:591]: ...
0x001250| 9e 09 | .. | count: 591 0x1258-0x1259.7 (2)
0x001250| d4 21 | .! | size: 2154 0x125a-0x125b.7 (2)
0x001250| 8d d8 5f 44| .._D| compressed: raw bits 0x125c-0x1ac5.7 (2154)
0x001250| 9e 09 | .. | count: 591 0x1258-0x125a (2)
0x001250| d4 21 | .! | size: 2154 0x125a-0x125c (2)
0x001250| 8d d8 5f 44| .._D| compressed: raw bits 0x125c-0x1ac6 (2154)
0x001260|ec 0d 1e c7 f1 bb 63 1d c7 7a f4 ff cf 5e ec e5|......c..z...^..|
* |until 0x1ac5.7 (2154) | |
0x001ac0| 93 e7 87 9e 02 95 d5 9e 4f 58| ........OX| sync: raw bits (valid) 0x1ac6-0x1ad5.7 (16)
0x001ac0| 93 e7 87 9e 02 95 d5 9e 4f 58| ........OX| sync: raw bits (valid) 0x1ac6-0x1ad6 (16)
0x001ad0|37 ad b2 a2 ce cd |7..... |
| | | [3]{}: block 0x1ad6-0x235f.7 (2186)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| data[0:592]: 0x0-0x3fed.7 (16366)
| | | [0]{}: data 0x0-0x1e.7 (31)
0x0000|f4 1b |.. | ID: 1786 0x0-0x1.7 (2)
| | | First{}: 0x2-0x9.7 (8)
0x0000| 0e | . | length: 7 0x2-0x2.7 (1)
0x0000| 43 61 69 74 6c 69 6e | Caitlin | data: "Caitlin" 0x3-0x9.7 (7)
| | | Last{}: 0xa-0xe.7 (5)
0x0000| 08 | . | length: 4 0xa-0xa.7 (1)
0x0000| 42 72 65 65 | Bree | data: "Bree" 0xb-0xe.7 (4)
| | | Phone{}: 0xf-0x1d.7 (15)
0x0000| 1c| .| length: 14 0xf-0xf.7 (1)
0x0001|28 35 35 35 29 20 31 32 33 2d 32 33 32 33 |(555) 123-2323 | data: "(555) 123-2323" 0x10-0x1d.7 (14)
0x0001| 36 | 6 | Age: 27 0x1e-0x1e.7 (1)
| | | [1]{}: data 0x1f-0x3b.7 (29)
0x0001| f6| .| ID: 1787 0x1f-0x20.7 (2)
| | | [3]{}: block 0x1ad6-0x2360 (2186)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| data[0:592]: 0x0-0x3fee (16366)
| | | [0]{}: data 0x0-0x1f (31)
0x0000|f4 1b |.. | ID: 1786 0x0-0x2 (2)
| | | First{}: 0x2-0xa (8)
0x0000| 0e | . | length: 7 0x2-0x3 (1)
0x0000| 43 61 69 74 6c 69 6e | Caitlin | data: "Caitlin" 0x3-0xa (7)
| | | Last{}: 0xa-0xf (5)
0x0000| 08 | . | length: 4 0xa-0xb (1)
0x0000| 42 72 65 65 | Bree | data: "Bree" 0xb-0xf (4)
| | | Phone{}: 0xf-0x1e (15)
0x0000| 1c| .| length: 14 0xf-0x10 (1)
0x0001|28 35 35 35 29 20 31 32 33 2d 32 33 32 33 |(555) 123-2323 | data: "(555) 123-2323" 0x10-0x1e (14)
0x0001| 36 | 6 | Age: 27 0x1e-0x1f (1)
| | | [1]{}: data 0x1f-0x3c (29)
0x0001| f6| .| ID: 1787 0x1f-0x21 (2)
0x0002|1b |. |
| | | First{}: 0x21-0x24.7 (4)
0x0002| 06 | . | length: 3 0x21-0x21.7 (1)
0x0002| 42 6f 62 | Bob | data: "Bob" 0x22-0x24.7 (3)
| | | Last{}: 0x25-0x2b.7 (7)
0x0002| 0c | . | length: 6 0x25-0x25.7 (1)
0x0002| 53 69 6c 65 6e 74 | Silent | data: "Silent" 0x26-0x2b.7 (6)
| | | Phone{}: 0x2c-0x3a.7 (15)
0x0002| 1c | . | length: 14 0x2c-0x2c.7 (1)
0x0002| 28 35 35| (55| data: "(555) 123-6422" 0x2d-0x3a.7 (14)
| | | First{}: 0x21-0x25 (4)
0x0002| 06 | . | length: 3 0x21-0x22 (1)
0x0002| 42 6f 62 | Bob | data: "Bob" 0x22-0x25 (3)
| | | Last{}: 0x25-0x2c (7)
0x0002| 0c | . | length: 6 0x25-0x26 (1)
0x0002| 53 69 6c 65 6e 74 | Silent | data: "Silent" 0x26-0x2c (6)
| | | Phone{}: 0x2c-0x3b (15)
0x0002| 1c | . | length: 14 0x2c-0x2d (1)
0x0002| 28 35 35| (55| data: "(555) 123-6422" 0x2d-0x3b (14)
0x0003|35 29 20 31 32 33 2d 36 34 32 32 |5) 123-6422 |
0x0003| 3a | : | Age: 29 0x3b-0x3b.7 (1)
| | | [2]{}: data 0x3c-0x4c.7 (17)
0x0003| f8 1b | .. | ID: 1788 0x3c-0x3d.7 (2)
| | | First{}: 0x3e-0x41.7 (4)
0x0003| 06 | . | length: 3 0x3e-0x3e.7 (1)
0x0003| 4a| J| data: "Jay" 0x3f-0x41.7 (3)
0x0003| 3a | : | Age: 29 0x3b-0x3c (1)
| | | [2]{}: data 0x3c-0x4d (17)
0x0003| f8 1b | .. | ID: 1788 0x3c-0x3e (2)
| | | First{}: 0x3e-0x42 (4)
0x0003| 06 | . | length: 3 0x3e-0x3f (1)
0x0003| 4a| J| data: "Jay" 0x3f-0x42 (3)
0x0004|61 79 |ay |
| | | Last{}: 0x42-0x45.7 (4)
0x0004| 06 | . | length: 3 0x42-0x42.7 (1)
0x0004| 3f 3f 3f | ??? | data: "???" 0x43-0x45.7 (3)
| | | Phone{}: 0x46-0x4b.7 (6)
0x0004| 0a | . | length: 5 0x46-0x46.7 (1)
0x0004| 28 32 39 37 29 | (297) | data: "(297)" 0x47-0x4b.7 (5)
0x0004| 34 | 4 | Age: 26 0x4c-0x4c.7 (1)
| | | [3]{}: data 0x4d-0x61.7 (21)
0x0004| fa 1b | .. | ID: 1789 0x4d-0x4e.7 (2)
| | | First{}: 0x4f-0x54.7 (6)
0x0004| 0a| .| length: 5 0x4f-0x4f.7 (1)
0x0005|44 61 6e 74 65 |Dante | data: "Dante" 0x50-0x54.7 (5)
| | | Last{}: 0x55-0x5a.7 (6)
0x0005| 0a | . | length: 5 0x55-0x55.7 (1)
0x0005| 48 69 63 6b 73 | Hicks | data: "Hicks" 0x56-0x5a.7 (5)
| | | Phone{}: 0x5b-0x60.7 (6)
0x0005| 0a | . | length: 5 0x5b-0x5b.7 (1)
0x0005| 28 32 39 38| (298| data: "(298)" 0x5c-0x60.7 (5)
| | | Last{}: 0x42-0x46 (4)
0x0004| 06 | . | length: 3 0x42-0x43 (1)
0x0004| 3f 3f 3f | ??? | data: "???" 0x43-0x46 (3)
| | | Phone{}: 0x46-0x4c (6)
0x0004| 0a | . | length: 5 0x46-0x47 (1)
0x0004| 28 32 39 37 29 | (297) | data: "(297)" 0x47-0x4c (5)
0x0004| 34 | 4 | Age: 26 0x4c-0x4d (1)
| | | [3]{}: data 0x4d-0x62 (21)
0x0004| fa 1b | .. | ID: 1789 0x4d-0x4f (2)
| | | First{}: 0x4f-0x55 (6)
0x0004| 0a| .| length: 5 0x4f-0x50 (1)
0x0005|44 61 6e 74 65 |Dante | data: "Dante" 0x50-0x55 (5)
| | | Last{}: 0x55-0x5b (6)
0x0005| 0a | . | length: 5 0x55-0x56 (1)
0x0005| 48 69 63 6b 73 | Hicks | data: "Hicks" 0x56-0x5b (5)
| | | Phone{}: 0x5b-0x61 (6)
0x0005| 0a | . | length: 5 0x5b-0x5c (1)
0x0005| 28 32 39 38| (298| data: "(298)" 0x5c-0x61 (5)
0x0006|29 |) |
0x0006| 40 | @ | Age: 32 0x61-0x61.7 (1)
| | | [4]{}: data 0x62-0x81.7 (32)
0x0006| fc 1b | .. | ID: 1790 0x62-0x63.7 (2)
| | | First{}: 0x64-0x6a.7 (7)
0x0006| 0c | . | length: 6 0x64-0x64.7 (1)
0x0006| 52 61 6e 64 61 6c | Randal | data: "Randal" 0x65-0x6a.7 (6)
| | | Last{}: 0x6b-0x71.7 (7)
0x0006| 0c | . | length: 6 0x6b-0x6b.7 (1)
0x0006| 47 72 61 76| Grav| data: "Graves" 0x6c-0x71.7 (6)
0x0006| 40 | @ | Age: 32 0x61-0x62 (1)
| | | [4]{}: data 0x62-0x82 (32)
0x0006| fc 1b | .. | ID: 1790 0x62-0x64 (2)
| | | First{}: 0x64-0x6b (7)
0x0006| 0c | . | length: 6 0x64-0x65 (1)
0x0006| 52 61 6e 64 61 6c | Randal | data: "Randal" 0x65-0x6b (6)
| | | Last{}: 0x6b-0x72 (7)
0x0006| 0c | . | length: 6 0x6b-0x6c (1)
0x0006| 47 72 61 76| Grav| data: "Graves" 0x6c-0x72 (6)
0x0007|65 73 |es |
| | | Phone{}: 0x72-0x80.7 (15)
0x0007| 1c | . | length: 14 0x72-0x72.7 (1)
0x0007| 28 35 35 35 29 20 31 32 33 2d 35 36 37| (555) 123-567| data: "(555) 123-5678" 0x73-0x80.7 (14)
| | | Phone{}: 0x72-0x81 (15)
0x0007| 1c | . | length: 14 0x72-0x73 (1)
0x0007| 28 35 35 35 29 20 31 32 33 2d 35 36 37| (555) 123-567| data: "(555) 123-5678" 0x73-0x81 (14)
0x0008|38 |8 |
0x0008| 3c | < | Age: 30 0x81-0x81.7 (1)
0x0008| 3c | < | Age: 30 0x81-0x82 (1)
| | | [5:592]: ...
0x001ad0| a0 09 | .. | count: 592 0x1ad6-0x1ad7.7 (2)
0x001ad0| ec 21 | .! | size: 2166 0x1ad8-0x1ad9.7 (2)
0x001ad0| 8d d8 7f 44 ec 7b| ...D.{| compressed: raw bits 0x1ada-0x234f.7 (2166)
0x001ad0| a0 09 | .. | count: 592 0x1ad6-0x1ad8 (2)
0x001ad0| ec 21 | .! | size: 2166 0x1ad8-0x1ada (2)
0x001ad0| 8d d8 7f 44 ec 7b| ...D.{| compressed: raw bits 0x1ada-0x2350 (2166)
0x001ae0|1e c7 f1 ff 8e 75 1c d7 fd bf df bf b8 df 3f 96|.....u........?.|
* |until 0x234f.7 (2166) | |
0x002350|93 e7 87 9e 02 95 d5 9e 4f 58 37 ad b2 a2 ce cd|........OX7.....| sync: raw bits (valid) 0x2350-0x235f.7 (16)
| | | [4]{}: block 0x2360-0x2bda.7 (2171)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| data[0:591]: 0x0-0x3fee.7 (16367)
| | | [0]{}: data 0x0-0x1f.7 (32)
0x0000|94 25 |.% | ID: 2378 0x0-0x1.7 (2)
| | | First{}: 0x2-0x8.7 (7)
0x0000| 0c | . | length: 6 0x2-0x2.7 (1)
0x0000| 52 61 6e 64 61 6c | Randal | data: "Randal" 0x3-0x8.7 (6)
| | | Last{}: 0x9-0xf.7 (7)
0x0000| 0c | . | length: 6 0x9-0x9.7 (1)
0x0000| 47 72 61 76 65 73| Graves| data: "Graves" 0xa-0xf.7 (6)
| | | Phone{}: 0x10-0x1e.7 (15)
0x0001|1c |. | length: 14 0x10-0x10.7 (1)
0x0001| 28 35 35 35 29 20 31 32 33 2d 35 36 37 38 | (555) 123-5678 | data: "(555) 123-5678" 0x11-0x1e.7 (14)
0x0001| 3c| <| Age: 30 0x1f-0x1f.7 (1)
| | | [1]{}: data 0x20-0x43.7 (36)
0x0002|96 25 |.% | ID: 2379 0x20-0x21.7 (2)
| | | First{}: 0x22-0x2a.7 (9)
0x0002| 10 | . | length: 8 0x22-0x22.7 (1)
0x0002| 56 65 72 6f 6e 69 63 61 | Veronica | data: "Veronica" 0x23-0x2a.7 (8)
| | | Last{}: 0x2b-0x33.7 (9)
0x0002| 10 | . | length: 8 0x2b-0x2b.7 (1)
0x0002| 4c 6f 75 67| Loug| data: "Loughran" 0x2c-0x33.7 (8)
0x002350|93 e7 87 9e 02 95 d5 9e 4f 58 37 ad b2 a2 ce cd|........OX7.....| sync: raw bits (valid) 0x2350-0x2360 (16)
| | | [4]{}: block 0x2360-0x2bdb (2171)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| data[0:591]: 0x0-0x3fef (16367)
| | | [0]{}: data 0x0-0x20 (32)
0x0000|94 25 |.% | ID: 2378 0x0-0x2 (2)
| | | First{}: 0x2-0x9 (7)
0x0000| 0c | . | length: 6 0x2-0x3 (1)
0x0000| 52 61 6e 64 61 6c | Randal | data: "Randal" 0x3-0x9 (6)
| | | Last{}: 0x9-0x10 (7)
0x0000| 0c | . | length: 6 0x9-0xa (1)
0x0000| 47 72 61 76 65 73| Graves| data: "Graves" 0xa-0x10 (6)
| | | Phone{}: 0x10-0x1f (15)
0x0001|1c |. | length: 14 0x10-0x11 (1)
0x0001| 28 35 35 35 29 20 31 32 33 2d 35 36 37 38 | (555) 123-5678 | data: "(555) 123-5678" 0x11-0x1f (14)
0x0001| 3c| <| Age: 30 0x1f-0x20 (1)
| | | [1]{}: data 0x20-0x44 (36)
0x0002|96 25 |.% | ID: 2379 0x20-0x22 (2)
| | | First{}: 0x22-0x2b (9)
0x0002| 10 | . | length: 8 0x22-0x23 (1)
0x0002| 56 65 72 6f 6e 69 63 61 | Veronica | data: "Veronica" 0x23-0x2b (8)
| | | Last{}: 0x2b-0x34 (9)
0x0002| 10 | . | length: 8 0x2b-0x2c (1)
0x0002| 4c 6f 75 67| Loug| data: "Loughran" 0x2c-0x34 (8)
0x0003|68 72 61 6e |hran |
| | | Phone{}: 0x34-0x42.7 (15)
0x0003| 1c | . | length: 14 0x34-0x34.7 (1)
0x0003| 28 35 35 35 29 20 31 32 33 2d 30| (555) 123-0| data: "(555) 123-0987" 0x35-0x42.7 (14)
| | | Phone{}: 0x34-0x43 (15)
0x0003| 1c | . | length: 14 0x34-0x35 (1)
0x0003| 28 35 35 35 29 20 31 32 33 2d 30| (555) 123-0| data: "(555) 123-0987" 0x35-0x43 (14)
0x0004|39 38 37 |987 |
0x0004| 38 | 8 | Age: 28 0x43-0x43.7 (1)
| | | [2]{}: data 0x44-0x62.7 (31)
0x0004| 98 25 | .% | ID: 2380 0x44-0x45.7 (2)
| | | First{}: 0x46-0x4d.7 (8)
0x0004| 0e | . | length: 7 0x46-0x46.7 (1)
0x0004| 43 61 69 74 6c 69 6e | Caitlin | data: "Caitlin" 0x47-0x4d.7 (7)
| | | Last{}: 0x4e-0x52.7 (5)
0x0004| 08 | . | length: 4 0x4e-0x4e.7 (1)
0x0004| 42| B| data: "Bree" 0x4f-0x52.7 (4)
0x0004| 38 | 8 | Age: 28 0x43-0x44 (1)
| | | [2]{}: data 0x44-0x63 (31)
0x0004| 98 25 | .% | ID: 2380 0x44-0x46 (2)
| | | First{}: 0x46-0x4e (8)
0x0004| 0e | . | length: 7 0x46-0x47 (1)
0x0004| 43 61 69 74 6c 69 6e | Caitlin | data: "Caitlin" 0x47-0x4e (7)
| | | Last{}: 0x4e-0x53 (5)
0x0004| 08 | . | length: 4 0x4e-0x4f (1)
0x0004| 42| B| data: "Bree" 0x4f-0x53 (4)
0x0005|72 65 65 |ree |
| | | Phone{}: 0x53-0x61.7 (15)
0x0005| 1c | . | length: 14 0x53-0x53.7 (1)
0x0005| 28 35 35 35 29 20 31 32 33 2d 32 33| (555) 123-23| data: "(555) 123-2323" 0x54-0x61.7 (14)
| | | Phone{}: 0x53-0x62 (15)
0x0005| 1c | . | length: 14 0x53-0x54 (1)
0x0005| 28 35 35 35 29 20 31 32 33 2d 32 33| (555) 123-23| data: "(555) 123-2323" 0x54-0x62 (14)
0x0006|32 33 |23 |
0x0006| 36 | 6 | Age: 27 0x62-0x62.7 (1)
| | | [3]{}: data 0x63-0x7f.7 (29)
0x0006| 9a 25 | .% | ID: 2381 0x63-0x64.7 (2)
| | | First{}: 0x65-0x68.7 (4)
0x0006| 06 | . | length: 3 0x65-0x65.7 (1)
0x0006| 42 6f 62 | Bob | data: "Bob" 0x66-0x68.7 (3)
| | | Last{}: 0x69-0x6f.7 (7)
0x0006| 0c | . | length: 6 0x69-0x69.7 (1)
0x0006| 53 69 6c 65 6e 74| Silent| data: "Silent" 0x6a-0x6f.7 (6)
| | | Phone{}: 0x70-0x7e.7 (15)
0x0007|1c |. | length: 14 0x70-0x70.7 (1)
0x0007| 28 35 35 35 29 20 31 32 33 2d 36 34 32 32 | (555) 123-6422 | data: "(555) 123-6422" 0x71-0x7e.7 (14)
0x0007| 3a| :| Age: 29 0x7f-0x7f.7 (1)
| | | [4]{}: data 0x80-0x90.7 (17)
0x0008|9c 25 |.% | ID: 2382 0x80-0x81.7 (2)
| | | First{}: 0x82-0x85.7 (4)
0x0008| 06 | . | length: 3 0x82-0x82.7 (1)
0x0008| 4a 61 79 | Jay | data: "Jay" 0x83-0x85.7 (3)
| | | Last{}: 0x86-0x89.7 (4)
0x0008| 06 | . | length: 3 0x86-0x86.7 (1)
0x0008| 3f 3f 3f | ??? | data: "???" 0x87-0x89.7 (3)
| | | Phone{}: 0x8a-0x8f.7 (6)
0x0008| 0a | . | length: 5 0x8a-0x8a.7 (1)
0x0008| 28 33 39 36 29| (396)| data: "(396)" 0x8b-0x8f.7 (5)
0x0009|34 |4 | Age: 26 0x90-0x90.7 (1)
0x0006| 36 | 6 | Age: 27 0x62-0x63 (1)
| | | [3]{}: data 0x63-0x80 (29)
0x0006| 9a 25 | .% | ID: 2381 0x63-0x65 (2)
| | | First{}: 0x65-0x69 (4)
0x0006| 06 | . | length: 3 0x65-0x66 (1)
0x0006| 42 6f 62 | Bob | data: "Bob" 0x66-0x69 (3)
| | | Last{}: 0x69-0x70 (7)
0x0006| 0c | . | length: 6 0x69-0x6a (1)
0x0006| 53 69 6c 65 6e 74| Silent| data: "Silent" 0x6a-0x70 (6)
| | | Phone{}: 0x70-0x7f (15)
0x0007|1c |. | length: 14 0x70-0x71 (1)
0x0007| 28 35 35 35 29 20 31 32 33 2d 36 34 32 32 | (555) 123-6422 | data: "(555) 123-6422" 0x71-0x7f (14)
0x0007| 3a| :| Age: 29 0x7f-0x80 (1)
| | | [4]{}: data 0x80-0x91 (17)
0x0008|9c 25 |.% | ID: 2382 0x80-0x82 (2)
| | | First{}: 0x82-0x86 (4)
0x0008| 06 | . | length: 3 0x82-0x83 (1)
0x0008| 4a 61 79 | Jay | data: "Jay" 0x83-0x86 (3)
| | | Last{}: 0x86-0x8a (4)
0x0008| 06 | . | length: 3 0x86-0x87 (1)
0x0008| 3f 3f 3f | ??? | data: "???" 0x87-0x8a (3)
| | | Phone{}: 0x8a-0x90 (6)
0x0008| 0a | . | length: 5 0x8a-0x8b (1)
0x0008| 28 33 39 36 29| (396)| data: "(396)" 0x8b-0x90 (5)
0x0009|34 |4 | Age: 26 0x90-0x91 (1)
| | | [5:591]: ...
0x002360|9e 09 |.. | count: 591 0x2360-0x2361.7 (2)
0x002360| ce 21 | .! | size: 2151 0x2362-0x2363.7 (2)
0x002360| 8d d8 df 47 ec fb 1e c7 f1 bb 65 5b| ...G......e[| compressed: raw bits 0x2364-0x2bca.7 (2151)
0x002360|9e 09 |.. | count: 591 0x2360-0x2362 (2)
0x002360| ce 21 | .! | size: 2151 0x2362-0x2364 (2)
0x002360| 8d d8 df 47 ec fb 1e c7 f1 bb 65 5b| ...G......e[| compressed: raw bits 0x2364-0x2bcb (2151)
0x002370|96 6d ff 01 e7 e2 dc f4 e3 db 2f 6b d5 b7 5f c7|.m......../k.._.|
* |until 0x2bca.7 (2151) | |
0x002bc0| 93 e7 87 9e 02| .....| sync: raw bits (valid) 0x2bcb-0x2bda.7 (16)
0x002bc0| 93 e7 87 9e 02| .....| sync: raw bits (valid) 0x2bcb-0x2bdb (16)
0x002bd0|95 d5 9e 4f 58 37 ad b2 a2 ce cd |...OX7..... |
| | | [5:12]: ...

File diff suppressed because it is too large Load Diff

View File

@ -1,61 +1,61 @@
# avro file taken from https://github.com/miguno/avro-cli-examples
$ fq dv twitter.avro
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: twitter.avro (avro_ocf) 0x0-0x21e.7 (543)
0x000|4f 62 6a 01 |Obj. | magic: raw bits (valid) 0x0-0x3.7 (4)
| | | header{}: 0x4-0x1a7.7 (420)
| | | meta[0:2]: 0x4-0x197.7 (404)
| | | [0]{}: block 0x4-0x196.7 (403)
0x000| 04 | . | count: 2 0x4-0x4.7 (1)
| | | data[0:2]: 0x5-0x196.7 (402)
| | | [0]{}: entry 0x5-0x186.7 (386)
| | | key{}: 0x5-0x10.7 (12)
0x000| 16 | . | length: 11 0x5-0x5.7 (1)
0x000| 61 76 72 6f 2e 73 63 68 65 6d| avro.schem| data: "avro.schema" 0x6-0x10.7 (11)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: twitter.avro (avro_ocf) 0x0-0x21f (543)
0x000|4f 62 6a 01 |Obj. | magic: raw bits (valid) 0x0-0x4 (4)
| | | header{}: 0x4-0x1a8 (420)
| | | meta[0:2]: 0x4-0x198 (404)
| | | [0]{}: block 0x4-0x197 (403)
0x000| 04 | . | count: 2 0x4-0x5 (1)
| | | data[0:2]: 0x5-0x197 (402)
| | | [0]{}: entry 0x5-0x187 (386)
| | | key{}: 0x5-0x11 (12)
0x000| 16 | . | length: 11 0x5-0x6 (1)
0x000| 61 76 72 6f 2e 73 63 68 65 6d| avro.schem| data: "avro.schema" 0x6-0x11 (11)
0x010|61 |a |
| | | value{}: 0x11-0x186.7 (374)
0x010| e8 05 | .. | length: 372 0x11-0x12.7 (2)
0x010| 7b 22 74 79 70 65 22 3a 22 72 65 63 6f| {"type":"reco| data: "{\"type\":\"record\",\"name\":\"twitter_schema\",\"names..." 0x13-0x186.7 (372)
| | | value{}: 0x11-0x187 (374)
0x010| e8 05 | .. | length: 372 0x11-0x13 (2)
0x010| 7b 22 74 79 70 65 22 3a 22 72 65 63 6f| {"type":"reco| data: "{\"type\":\"record\",\"name\":\"twitter_schema\",\"namespace\":\"com.miguno.avro\",\"fields\":[{\"name\":\"username\",\"type\":\"string\",\"doc\":\"Name of the user account on Twitter.com\"},{\"name\":\"tweet\",\"type\":\"string\",\"doc\":\"The content of the user's Twitter message\"},{\"name\":\"timestamp\",\"type\":\"long\",\"doc\":\"Unix epoch time in seconds\"}],\"doc:\":\"A basic schema for storing Twitter messages\"}" 0x13-0x187 (372)
0x020|72 64 22 2c 22 6e 61 6d 65 22 3a 22 74 77 69 74|rd","name":"twit|
* |until 0x186.7 (372) | |
| | | [1]{}: entry 0x187-0x196.7 (16)
| | | key{}: 0x187-0x191.7 (11)
0x180| 14 | . | length: 10 0x187-0x187.7 (1)
0x180| 61 76 72 6f 2e 63 6f 64| avro.cod| data: "avro.codec" 0x188-0x191.7 (10)
| | | [1]{}: entry 0x187-0x197 (16)
| | | key{}: 0x187-0x192 (11)
0x180| 14 | . | length: 10 0x187-0x188 (1)
0x180| 61 76 72 6f 2e 63 6f 64| avro.cod| data: "avro.codec" 0x188-0x192 (10)
0x190|65 63 |ec |
| | | value{}: 0x192-0x196.7 (5)
0x190| 08 | . | length: 4 0x192-0x192.7 (1)
0x190| 6e 75 6c 6c | null | data: "null" 0x193-0x196.7 (4)
| | | [1]{}: block 0x197-0x197.7 (1)
0x190| 00 | . | count: 0 0x197-0x197.7 (1)
| | | data[0:0]: 0x198-NA (0)
0x190| 67 c7 35 29 73 ef df 94| g.5)s...| sync: raw bits 0x198-0x1a7.7 (16)
| | | value{}: 0x192-0x197 (5)
0x190| 08 | . | length: 4 0x192-0x193 (1)
0x190| 6e 75 6c 6c | null | data: "null" 0x193-0x197 (4)
| | | [1]{}: block 0x197-0x198 (1)
0x190| 00 | . | count: 0 0x197-0x198 (1)
| | | data[0:0]: 0x198-0x198 (0)
0x190| 67 c7 35 29 73 ef df 94| g.5)s...| sync: raw bits 0x198-0x1a8 (16)
0x1a0|ad d3 00 7e 9e eb ff ae |...~.... |
| | | blocks[0:1]: 0x1a8-0x21e.7 (119)
| | | [0]{}: block 0x1a8-0x21e.7 (119)
0x1a0| 04 | . | count: 2 0x1a8-0x1a8.7 (1)
0x1a0| c8 01 | .. | size: 100 0x1a9-0x1aa.7 (2)
| | | data[0:2]: 0x1ab-0x20e.7 (100)
| | | [0]{}: datum 0x1ab-0x1da.7 (48)
| | | username{}: 0x1ab-0x1b1.7 (7)
0x1a0| 0c | . | length: 6 0x1ab-0x1ab.7 (1)
0x1a0| 6d 69 67 75| migu| data: "miguno" 0x1ac-0x1b1.7 (6)
| | | blocks[0:1]: 0x1a8-0x21f (119)
| | | [0]{}: block 0x1a8-0x21f (119)
0x1a0| 04 | . | count: 2 0x1a8-0x1a9 (1)
0x1a0| c8 01 | .. | size: 100 0x1a9-0x1ab (2)
| | | data[0:2]: 0x1ab-0x20f (100)
| | | [0]{}: datum 0x1ab-0x1db (48)
| | | username{}: 0x1ab-0x1b2 (7)
0x1a0| 0c | . | length: 6 0x1ab-0x1ac (1)
0x1a0| 6d 69 67 75| migu| data: "miguno" 0x1ac-0x1b2 (6)
0x1b0|6e 6f |no |
| | | tweet{}: 0x1b2-0x1d5.7 (36)
0x1b0| 46 | F | length: 35 0x1b2-0x1b2.7 (1)
0x1b0| 52 6f 63 6b 3a 20 4e 65 72 66 20 70 61| Rock: Nerf pa| data: "Rock: Nerf paper, scissors is fine." 0x1b3-0x1d5.7 (35)
| | | tweet{}: 0x1b2-0x1d6 (36)
0x1b0| 46 | F | length: 35 0x1b2-0x1b3 (1)
0x1b0| 52 6f 63 6b 3a 20 4e 65 72 66 20 70 61| Rock: Nerf pa| data: "Rock: Nerf paper, scissors is fine." 0x1b3-0x1d6 (35)
0x1c0|70 65 72 2c 20 73 63 69 73 73 6f 72 73 20 69 73|per, scissors is|
0x1d0|20 66 69 6e 65 2e | fine. |
0x1d0| b2 b8 ee 96 0a | ..... | timestamp: 1366150681 0x1d6-0x1da.7 (5)
| | | [1]{}: datum 0x1db-0x20e.7 (52)
| | | username{}: 0x1db-0x1e5.7 (11)
0x1d0| 14 | . | length: 10 0x1db-0x1db.7 (1)
0x1d0| 42 6c 69 7a| Bliz| data: "BlizzardCS" 0x1dc-0x1e5.7 (10)
0x1d0| b2 b8 ee 96 0a | ..... | timestamp: 1366150681 0x1d6-0x1db (5)
| | | [1]{}: datum 0x1db-0x20f (52)
| | | username{}: 0x1db-0x1e6 (11)
0x1d0| 14 | . | length: 10 0x1db-0x1dc (1)
0x1d0| 42 6c 69 7a| Bliz| data: "BlizzardCS" 0x1dc-0x1e6 (10)
0x1e0|7a 61 72 64 43 53 |zardCS |
| | | tweet{}: 0x1e6-0x209.7 (36)
0x1e0| 46 | F | length: 35 0x1e6-0x1e6.7 (1)
0x1e0| 57 6f 72 6b 73 20 61 73 20| Works as | data: "Works as intended. Terran is IMBA." 0x1e7-0x209.7 (35)
| | | tweet{}: 0x1e6-0x20a (36)
0x1e0| 46 | F | length: 35 0x1e6-0x1e7 (1)
0x1e0| 57 6f 72 6b 73 20 61 73 20| Works as | data: "Works as intended. Terran is IMBA." 0x1e7-0x20a (35)
0x1f0|69 6e 74 65 6e 64 65 64 2e 20 20 54 65 72 72 61|intended. Terra|
0x200|6e 20 69 73 20 49 4d 42 41 2e |n is IMBA. |
0x200| e2 f3 ee 96 0a | ..... | timestamp: 1366154481 0x20a-0x20e.7 (5)
0x200| 67| g| sync: raw bits (valid) 0x20f-0x21e.7 (16)
0x200| e2 f3 ee 96 0a | ..... | timestamp: 1366154481 0x20a-0x20f (5)
0x200| 67| g| sync: raw bits (valid) 0x20f-0x21f (16)
0x210|c7 35 29 73 ef df 94 ad d3 00 7e 9e eb ff ae| |.5)s......~....||

View File

@ -1,280 +1,280 @@
$ fq -d bencode dv bbb.torrent
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: bbb.torrent (bencode) 0x0-0x3795.7 (14230)
0x0000|64 |d | type: "dictionary" ("d") 0x0-0x0.7 (1)
| | | pairs[0:9]: 0x1-0x3794.7 (14228)
| | | [0]{}: pair 0x1-0x39.7 (57)
| | | key{}: 0x1-0xa.7 (10)
0x0000| 38 | 8 | type: "string" ("8") 0x1-0x1.7 (1)
0x0000| 38 | 8 | length: 8 0x1-0x1.7 (1)
0x0000| 3a | : | separator: ":" (valid) 0x2-0x2.7 (1)
0x0000| 61 6e 6e 6f 75 6e 63 65 | announce | value: "announce" 0x3-0xa.7 (8)
| | | value{}: 0xb-0x39.7 (47)
0x0000| 34 | 4 | type: "string" ("4") 0xb-0xb.7 (1)
0x0000| 34 34 | 44 | length: 44 0xb-0xc.7 (2)
0x0000| 3a | : | separator: ":" (valid) 0xd-0xd.7 (1)
0x0000| 75 64| ud| value: "udp://tracker.openbittorrent.com:80/announce" 0xe-0x39.7 (44)
$ fq -d bencode 'dv({string_truncate: 50})' bbb.torrent
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: bbb.torrent (bencode) 0x0-0x3796 (14230)
0x0000|64 |d | type: "dictionary" ("d") 0x0-0x1 (1)
| | | pairs[0:9]: 0x1-0x3795 (14228)
| | | [0]{}: pair 0x1-0x3a (57)
| | | key{}: 0x1-0xb (10)
0x0000| 38 | 8 | type: "string" ("8") 0x1-0x2 (1)
0x0000| 38 | 8 | length: 8 0x1-0x2 (1)
0x0000| 3a | : | separator: ":" (valid) 0x2-0x3 (1)
0x0000| 61 6e 6e 6f 75 6e 63 65 | announce | value: "announce" 0x3-0xb (8)
| | | value{}: 0xb-0x3a (47)
0x0000| 34 | 4 | type: "string" ("4") 0xb-0xc (1)
0x0000| 34 34 | 44 | length: 44 0xb-0xd (2)
0x0000| 3a | : | separator: ":" (valid) 0xd-0xe (1)
0x0000| 75 64| ud| value: "udp://tracker.openbittorrent.com:80/announce" 0xe-0x3a (44)
0x0010|70 3a 2f 2f 74 72 61 63 6b 65 72 2e 6f 70 65 6e|p://tracker.open|
* |until 0x39.7 (44) | |
| | | [1]{}: pair 0x3a-0xa7.7 (110)
| | | key{}: 0x3a-0x49.7 (16)
0x0030| 31 | 1 | type: "string" ("1") 0x3a-0x3a.7 (1)
0x0030| 31 33 | 13 | length: 13 0x3a-0x3b.7 (2)
0x0030| 3a | : | separator: ":" (valid) 0x3c-0x3c.7 (1)
0x0030| 61 6e 6e| ann| value: "announce-list" 0x3d-0x49.7 (13)
| | | [1]{}: pair 0x3a-0xa8 (110)
| | | key{}: 0x3a-0x4a (16)
0x0030| 31 | 1 | type: "string" ("1") 0x3a-0x3b (1)
0x0030| 31 33 | 13 | length: 13 0x3a-0x3c (2)
0x0030| 3a | : | separator: ":" (valid) 0x3c-0x3d (1)
0x0030| 61 6e 6e| ann| value: "announce-list" 0x3d-0x4a (13)
0x0040|6f 75 6e 63 65 2d 6c 69 73 74 |ounce-list |
| | | value{}: 0x4a-0xa7.7 (94)
0x0040| 6c | l | type: "list" ("l") 0x4a-0x4a.7 (1)
| | | values[0:2]: 0x4b-0xa6.7 (92)
| | | [0]{}: value 0x4b-0x7b.7 (49)
0x0040| 6c | l | type: "list" ("l") 0x4b-0x4b.7 (1)
| | | values[0:1]: 0x4c-0x7a.7 (47)
| | | [0]{}: value 0x4c-0x7a.7 (47)
0x0040| 34 | 4 | type: "string" ("4") 0x4c-0x4c.7 (1)
0x0040| 34 34 | 44 | length: 44 0x4c-0x4d.7 (2)
0x0040| 3a | : | separator: ":" (valid) 0x4e-0x4e.7 (1)
0x0040| 75| u| value: "udp://tracker.openbittorrent.com:80/announce" 0x4f-0x7a.7 (44)
| | | value{}: 0x4a-0xa8 (94)
0x0040| 6c | l | type: "list" ("l") 0x4a-0x4b (1)
| | | values[0:2]: 0x4b-0xa7 (92)
| | | [0]{}: value 0x4b-0x7c (49)
0x0040| 6c | l | type: "list" ("l") 0x4b-0x4c (1)
| | | values[0:1]: 0x4c-0x7b (47)
| | | [0]{}: value 0x4c-0x7b (47)
0x0040| 34 | 4 | type: "string" ("4") 0x4c-0x4d (1)
0x0040| 34 34 | 44 | length: 44 0x4c-0x4e (2)
0x0040| 3a | : | separator: ":" (valid) 0x4e-0x4f (1)
0x0040| 75| u| value: "udp://tracker.openbittorrent.com:80/announce" 0x4f-0x7b (44)
0x0050|64 70 3a 2f 2f 74 72 61 63 6b 65 72 2e 6f 70 65|dp://tracker.ope|
* |until 0x7a.7 (44) | |
0x0070| 65 | e | end: "e" (valid) 0x7b-0x7b.7 (1)
| | | [1]{}: value 0x7c-0xa6.7 (43)
0x0070| 6c | l | type: "list" ("l") 0x7c-0x7c.7 (1)
| | | values[0:1]: 0x7d-0xa5.7 (41)
| | | [0]{}: value 0x7d-0xa5.7 (41)
0x0070| 33 | 3 | type: "string" ("3") 0x7d-0x7d.7 (1)
0x0070| 33 38 | 38 | length: 38 0x7d-0x7e.7 (2)
0x0070| 3a| :| separator: ":" (valid) 0x7f-0x7f.7 (1)
0x0080|75 64 70 3a 2f 2f 74 72 61 63 6b 65 72 2e 70 75|udp://tracker.pu| value: "udp://tracker.publicbt.com:80/announce" 0x80-0xa5.7 (38)
0x0070| 65 | e | end: "e" (valid) 0x7b-0x7c (1)
| | | [1]{}: value 0x7c-0xa7 (43)
0x0070| 6c | l | type: "list" ("l") 0x7c-0x7d (1)
| | | values[0:1]: 0x7d-0xa6 (41)
| | | [0]{}: value 0x7d-0xa6 (41)
0x0070| 33 | 3 | type: "string" ("3") 0x7d-0x7e (1)
0x0070| 33 38 | 38 | length: 38 0x7d-0x7f (2)
0x0070| 3a| :| separator: ":" (valid) 0x7f-0x80 (1)
0x0080|75 64 70 3a 2f 2f 74 72 61 63 6b 65 72 2e 70 75|udp://tracker.pu| value: "udp://tracker.publicbt.com:80/announce" 0x80-0xa6 (38)
* |until 0xa5.7 (38) | |
0x00a0| 65 | e | end: "e" (valid) 0xa6-0xa6.7 (1)
0x00a0| 65 | e | end: "e" (valid) 0xa7-0xa7.7 (1)
| | | [2]{}: pair 0xa8-0xd4.7 (45)
| | | key{}: 0xa8-0xb0.7 (9)
0x00a0| 37 | 7 | type: "string" ("7") 0xa8-0xa8.7 (1)
0x00a0| 37 | 7 | length: 7 0xa8-0xa8.7 (1)
0x00a0| 3a | : | separator: ":" (valid) 0xa9-0xa9.7 (1)
0x00a0| 63 6f 6d 6d 65 6e| commen| value: "comment" 0xaa-0xb0.7 (7)
0x00a0| 65 | e | end: "e" (valid) 0xa6-0xa7 (1)
0x00a0| 65 | e | end: "e" (valid) 0xa7-0xa8 (1)
| | | [2]{}: pair 0xa8-0xd5 (45)
| | | key{}: 0xa8-0xb1 (9)
0x00a0| 37 | 7 | type: "string" ("7") 0xa8-0xa9 (1)
0x00a0| 37 | 7 | length: 7 0xa8-0xa9 (1)
0x00a0| 3a | : | separator: ":" (valid) 0xa9-0xaa (1)
0x00a0| 63 6f 6d 6d 65 6e| commen| value: "comment" 0xaa-0xb1 (7)
0x00b0|74 |t |
| | | value{}: 0xb1-0xd4.7 (36)
0x00b0| 33 | 3 | type: "string" ("3") 0xb1-0xb1.7 (1)
0x00b0| 33 33 | 33 | length: 33 0xb1-0xb2.7 (2)
0x00b0| 3a | : | separator: ":" (valid) 0xb3-0xb3.7 (1)
0x00b0| 42 69 67 20 42 75 63 6b 20 42 75 6e| Big Buck Bun| value: "Big Buck Bunny, Sunflower version" 0xb4-0xd4.7 (33)
| | | value{}: 0xb1-0xd5 (36)
0x00b0| 33 | 3 | type: "string" ("3") 0xb1-0xb2 (1)
0x00b0| 33 33 | 33 | length: 33 0xb1-0xb3 (2)
0x00b0| 3a | : | separator: ":" (valid) 0xb3-0xb4 (1)
0x00b0| 42 69 67 20 42 75 63 6b 20 42 75 6e| Big Buck Bun| value: "Big Buck Bunny, Sunflower version" 0xb4-0xd5 (33)
0x00c0|6e 79 2c 20 53 75 6e 66 6c 6f 77 65 72 20 76 65|ny, Sunflower ve|
0x00d0|72 73 69 6f 6e |rsion |
| | | [3]{}: pair 0xd5-0xf1.7 (29)
| | | key{}: 0xd5-0xe1.7 (13)
0x00d0| 31 | 1 | type: "string" ("1") 0xd5-0xd5.7 (1)
0x00d0| 31 30 | 10 | length: 10 0xd5-0xd6.7 (2)
0x00d0| 3a | : | separator: ":" (valid) 0xd7-0xd7.7 (1)
0x00d0| 63 72 65 61 74 65 64 20| created | value: "created by" 0xd8-0xe1.7 (10)
| | | [3]{}: pair 0xd5-0xf2 (29)
| | | key{}: 0xd5-0xe2 (13)
0x00d0| 31 | 1 | type: "string" ("1") 0xd5-0xd6 (1)
0x00d0| 31 30 | 10 | length: 10 0xd5-0xd7 (2)
0x00d0| 3a | : | separator: ":" (valid) 0xd7-0xd8 (1)
0x00d0| 63 72 65 61 74 65 64 20| created | value: "created by" 0xd8-0xe2 (10)
0x00e0|62 79 |by |
| | | value{}: 0xe2-0xf1.7 (16)
0x00e0| 31 | 1 | type: "string" ("1") 0xe2-0xe2.7 (1)
0x00e0| 31 33 | 13 | length: 13 0xe2-0xe3.7 (2)
0x00e0| 3a | : | separator: ":" (valid) 0xe4-0xe4.7 (1)
0x00e0| 75 54 6f 72 72 65 6e 74 2f 33 33| uTorrent/33| value: "uTorrent/3320" 0xe5-0xf1.7 (13)
| | | value{}: 0xe2-0xf2 (16)
0x00e0| 31 | 1 | type: "string" ("1") 0xe2-0xe3 (1)
0x00e0| 31 33 | 13 | length: 13 0xe2-0xe4 (2)
0x00e0| 3a | : | separator: ":" (valid) 0xe4-0xe5 (1)
0x00e0| 75 54 6f 72 72 65 6e 74 2f 33 33| uTorrent/33| value: "uTorrent/3320" 0xe5-0xf2 (13)
0x00f0|32 30 |20 |
| | | [4]{}: pair 0xf2-0x10d.7 (28)
| | | key{}: 0xf2-0x101.7 (16)
0x00f0| 31 | 1 | type: "string" ("1") 0xf2-0xf2.7 (1)
0x00f0| 31 33 | 13 | length: 13 0xf2-0xf3.7 (2)
0x00f0| 3a | : | separator: ":" (valid) 0xf4-0xf4.7 (1)
0x00f0| 63 72 65 61 74 69 6f 6e 20 64 61| creation da| value: "creation date" 0xf5-0x101.7 (13)
| | | [4]{}: pair 0xf2-0x10e (28)
| | | key{}: 0xf2-0x102 (16)
0x00f0| 31 | 1 | type: "string" ("1") 0xf2-0xf3 (1)
0x00f0| 31 33 | 13 | length: 13 0xf2-0xf4 (2)
0x00f0| 3a | : | separator: ":" (valid) 0xf4-0xf5 (1)
0x00f0| 63 72 65 61 74 69 6f 6e 20 64 61| creation da| value: "creation date" 0xf5-0x102 (13)
0x0100|74 65 |te |
| | | value{}: 0x102-0x10d.7 (12)
0x0100| 69 | i | type: "integer" ("i") 0x102-0x102.7 (1)
0x0100| 31 33 38 37 33 30 38 31 35 39 | 1387308159 | value: 1387308159 0x103-0x10c.7 (10)
0x0100| 65 | e | end: "e" (valid) 0x10d-0x10d.7 (1)
| | | [5]{}: pair 0x10e-0x11e.7 (17)
| | | key{}: 0x10e-0x117.7 (10)
0x0100| 38 | 8 | type: "string" ("8") 0x10e-0x10e.7 (1)
0x0100| 38 | 8 | length: 8 0x10e-0x10e.7 (1)
0x0100| 3a| :| separator: ":" (valid) 0x10f-0x10f.7 (1)
0x0110|65 6e 63 6f 64 69 6e 67 |encoding | value: "encoding" 0x110-0x117.7 (8)
| | | value{}: 0x118-0x11e.7 (7)
0x0110| 35 | 5 | type: "string" ("5") 0x118-0x118.7 (1)
0x0110| 35 | 5 | length: 5 0x118-0x118.7 (1)
0x0110| 3a | : | separator: ":" (valid) 0x119-0x119.7 (1)
0x0110| 55 54 46 2d 38 | UTF-8 | value: "UTF-8" 0x11a-0x11e.7 (5)
| | | [6]{}: pair 0x11f-0x3701.7 (13795)
| | | key{}: 0x11f-0x124.7 (6)
0x0110| 34| 4| type: "string" ("4") 0x11f-0x11f.7 (1)
0x0110| 34| 4| length: 4 0x11f-0x11f.7 (1)
0x0120|3a |: | separator: ":" (valid) 0x120-0x120.7 (1)
0x0120| 69 6e 66 6f | info | value: "info" 0x121-0x124.7 (4)
| | | value{}: 0x125-0x3701.7 (13789)
0x0120| 64 | d | type: "dictionary" ("d") 0x125-0x125.7 (1)
| | | pairs[0:7]: 0x126-0x3700.7 (13787)
| | | [0]{}: pair 0x126-0x13c.7 (23)
| | | key{}: 0x126-0x135.7 (16)
0x0120| 31 | 1 | type: "string" ("1") 0x126-0x126.7 (1)
0x0120| 31 33 | 13 | length: 13 0x126-0x127.7 (2)
0x0120| 3a | : | separator: ":" (valid) 0x128-0x128.7 (1)
0x0120| 66 69 6c 65 2d 64 75| file-du| value: "file-duration" 0x129-0x135.7 (13)
| | | value{}: 0x102-0x10e (12)
0x0100| 69 | i | type: "integer" ("i") 0x102-0x103 (1)
0x0100| 31 33 38 37 33 30 38 31 35 39 | 1387308159 | value: 1387308159 0x103-0x10d (10)
0x0100| 65 | e | end: "e" (valid) 0x10d-0x10e (1)
| | | [5]{}: pair 0x10e-0x11f (17)
| | | key{}: 0x10e-0x118 (10)
0x0100| 38 | 8 | type: "string" ("8") 0x10e-0x10f (1)
0x0100| 38 | 8 | length: 8 0x10e-0x10f (1)
0x0100| 3a| :| separator: ":" (valid) 0x10f-0x110 (1)
0x0110|65 6e 63 6f 64 69 6e 67 |encoding | value: "encoding" 0x110-0x118 (8)
| | | value{}: 0x118-0x11f (7)
0x0110| 35 | 5 | type: "string" ("5") 0x118-0x119 (1)
0x0110| 35 | 5 | length: 5 0x118-0x119 (1)
0x0110| 3a | : | separator: ":" (valid) 0x119-0x11a (1)
0x0110| 55 54 46 2d 38 | UTF-8 | value: "UTF-8" 0x11a-0x11f (5)
| | | [6]{}: pair 0x11f-0x3702 (13795)
| | | key{}: 0x11f-0x125 (6)
0x0110| 34| 4| type: "string" ("4") 0x11f-0x120 (1)
0x0110| 34| 4| length: 4 0x11f-0x120 (1)
0x0120|3a |: | separator: ":" (valid) 0x120-0x121 (1)
0x0120| 69 6e 66 6f | info | value: "info" 0x121-0x125 (4)
| | | value{}: 0x125-0x3702 (13789)
0x0120| 64 | d | type: "dictionary" ("d") 0x125-0x126 (1)
| | | pairs[0:7]: 0x126-0x3701 (13787)
| | | [0]{}: pair 0x126-0x13d (23)
| | | key{}: 0x126-0x136 (16)
0x0120| 31 | 1 | type: "string" ("1") 0x126-0x127 (1)
0x0120| 31 33 | 13 | length: 13 0x126-0x128 (2)
0x0120| 3a | : | separator: ":" (valid) 0x128-0x129 (1)
0x0120| 66 69 6c 65 2d 64 75| file-du| value: "file-duration" 0x129-0x136 (13)
0x0130|72 61 74 69 6f 6e |ration |
| | | value{}: 0x136-0x13c.7 (7)
0x0130| 6c | l | type: "list" ("l") 0x136-0x136.7 (1)
| | | values[0:1]: 0x137-0x13b.7 (5)
| | | [0]{}: value 0x137-0x13b.7 (5)
0x0130| 69 | i | type: "integer" ("i") 0x137-0x137.7 (1)
0x0130| 36 33 34 | 634 | value: 634 0x138-0x13a.7 (3)
0x0130| 65 | e | end: "e" (valid) 0x13b-0x13b.7 (1)
0x0130| 65 | e | end: "e" (valid) 0x13c-0x13c.7 (1)
| | | [1]{}: pair 0x13d-0x14e.7 (18)
| | | key{}: 0x13d-0x149.7 (13)
0x0130| 31 | 1 | type: "string" ("1") 0x13d-0x13d.7 (1)
0x0130| 31 30 | 10 | length: 10 0x13d-0x13e.7 (2)
0x0130| 3a| :| separator: ":" (valid) 0x13f-0x13f.7 (1)
0x0140|66 69 6c 65 2d 6d 65 64 69 61 |file-media | value: "file-media" 0x140-0x149.7 (10)
| | | value{}: 0x14a-0x14e.7 (5)
0x0140| 6c | l | type: "list" ("l") 0x14a-0x14a.7 (1)
| | | values[0:1]: 0x14b-0x14d.7 (3)
| | | [0]{}: value 0x14b-0x14d.7 (3)
0x0140| 69 | i | type: "integer" ("i") 0x14b-0x14b.7 (1)
0x0140| 30 | 0 | value: 0 0x14c-0x14c.7 (1)
0x0140| 65 | e | end: "e" (valid) 0x14d-0x14d.7 (1)
0x0140| 65 | e | end: "e" (valid) 0x14e-0x14e.7 (1)
| | | [2]{}: pair 0x14f-0x161.7 (19)
| | | key{}: 0x14f-0x156.7 (8)
0x0140| 36| 6| type: "string" ("6") 0x14f-0x14f.7 (1)
0x0140| 36| 6| length: 6 0x14f-0x14f.7 (1)
0x0150|3a |: | separator: ":" (valid) 0x150-0x150.7 (1)
0x0150| 6c 65 6e 67 74 68 | length | value: "length" 0x151-0x156.7 (6)
| | | value{}: 0x157-0x161.7 (11)
0x0150| 69 | i | type: "integer" ("i") 0x157-0x157.7 (1)
0x0150| 33 35 35 38 35 36 35 36| 35585656| value: 355856562 0x158-0x160.7 (9)
| | | value{}: 0x136-0x13d (7)
0x0130| 6c | l | type: "list" ("l") 0x136-0x137 (1)
| | | values[0:1]: 0x137-0x13c (5)
| | | [0]{}: value 0x137-0x13c (5)
0x0130| 69 | i | type: "integer" ("i") 0x137-0x138 (1)
0x0130| 36 33 34 | 634 | value: 634 0x138-0x13b (3)
0x0130| 65 | e | end: "e" (valid) 0x13b-0x13c (1)
0x0130| 65 | e | end: "e" (valid) 0x13c-0x13d (1)
| | | [1]{}: pair 0x13d-0x14f (18)
| | | key{}: 0x13d-0x14a (13)
0x0130| 31 | 1 | type: "string" ("1") 0x13d-0x13e (1)
0x0130| 31 30 | 10 | length: 10 0x13d-0x13f (2)
0x0130| 3a| :| separator: ":" (valid) 0x13f-0x140 (1)
0x0140|66 69 6c 65 2d 6d 65 64 69 61 |file-media | value: "file-media" 0x140-0x14a (10)
| | | value{}: 0x14a-0x14f (5)
0x0140| 6c | l | type: "list" ("l") 0x14a-0x14b (1)
| | | values[0:1]: 0x14b-0x14e (3)
| | | [0]{}: value 0x14b-0x14e (3)
0x0140| 69 | i | type: "integer" ("i") 0x14b-0x14c (1)
0x0140| 30 | 0 | value: 0 0x14c-0x14d (1)
0x0140| 65 | e | end: "e" (valid) 0x14d-0x14e (1)
0x0140| 65 | e | end: "e" (valid) 0x14e-0x14f (1)
| | | [2]{}: pair 0x14f-0x162 (19)
| | | key{}: 0x14f-0x157 (8)
0x0140| 36| 6| type: "string" ("6") 0x14f-0x150 (1)
0x0140| 36| 6| length: 6 0x14f-0x150 (1)
0x0150|3a |: | separator: ":" (valid) 0x150-0x151 (1)
0x0150| 6c 65 6e 67 74 68 | length | value: "length" 0x151-0x157 (6)
| | | value{}: 0x157-0x162 (11)
0x0150| 69 | i | type: "integer" ("i") 0x157-0x158 (1)
0x0150| 33 35 35 38 35 36 35 36| 35585656| value: 355856562 0x158-0x161 (9)
0x0160|32 |2 |
0x0160| 65 | e | end: "e" (valid) 0x161-0x161.7 (1)
| | | [3]{}: pair 0x162-0x18e.7 (45)
| | | key{}: 0x162-0x167.7 (6)
0x0160| 34 | 4 | type: "string" ("4") 0x162-0x162.7 (1)
0x0160| 34 | 4 | length: 4 0x162-0x162.7 (1)
0x0160| 3a | : | separator: ":" (valid) 0x163-0x163.7 (1)
0x0160| 6e 61 6d 65 | name | value: "name" 0x164-0x167.7 (4)
| | | value{}: 0x168-0x18e.7 (39)
0x0160| 33 | 3 | type: "string" ("3") 0x168-0x168.7 (1)
0x0160| 33 36 | 36 | length: 36 0x168-0x169.7 (2)
0x0160| 3a | : | separator: ":" (valid) 0x16a-0x16a.7 (1)
0x0160| 62 62 62 5f 73| bbb_s| value: "bbb_sunflower_1080p_60fps_normal.mp4" 0x16b-0x18e.7 (36)
0x0160| 65 | e | end: "e" (valid) 0x161-0x162 (1)
| | | [3]{}: pair 0x162-0x18f (45)
| | | key{}: 0x162-0x168 (6)
0x0160| 34 | 4 | type: "string" ("4") 0x162-0x163 (1)
0x0160| 34 | 4 | length: 4 0x162-0x163 (1)
0x0160| 3a | : | separator: ":" (valid) 0x163-0x164 (1)
0x0160| 6e 61 6d 65 | name | value: "name" 0x164-0x168 (4)
| | | value{}: 0x168-0x18f (39)
0x0160| 33 | 3 | type: "string" ("3") 0x168-0x169 (1)
0x0160| 33 36 | 36 | length: 36 0x168-0x16a (2)
0x0160| 3a | : | separator: ":" (valid) 0x16a-0x16b (1)
0x0160| 62 62 62 5f 73| bbb_s| value: "bbb_sunflower_1080p_60fps_normal.mp4" 0x16b-0x18f (36)
0x0170|75 6e 66 6c 6f 77 65 72 5f 31 30 38 30 70 5f 36|unflower_1080p_6|
0x0180|30 66 70 73 5f 6e 6f 72 6d 61 6c 2e 6d 70 34 |0fps_normal.mp4 |
| | | [4]{}: pair 0x18f-0x1a5.7 (23)
| | | key{}: 0x18f-0x19d.7 (15)
0x0180| 31| 1| type: "string" ("1") 0x18f-0x18f.7 (1)
0x0180| 31| 1| length: 12 0x18f-0x190.7 (2)
| | | [4]{}: pair 0x18f-0x1a6 (23)
| | | key{}: 0x18f-0x19e (15)
0x0180| 31| 1| type: "string" ("1") 0x18f-0x190 (1)
0x0180| 31| 1| length: 12 0x18f-0x191 (2)
0x0190|32 |2 |
0x0190| 3a | : | separator: ":" (valid) 0x191-0x191.7 (1)
0x0190| 70 69 65 63 65 20 6c 65 6e 67 74 68 | piece length | value: "piece length" 0x192-0x19d.7 (12)
| | | value{}: 0x19e-0x1a5.7 (8)
0x0190| 69 | i | type: "integer" ("i") 0x19e-0x19e.7 (1)
0x0190| 35| 5| value: 524288 0x19f-0x1a4.7 (6)
0x0190| 3a | : | separator: ":" (valid) 0x191-0x192 (1)
0x0190| 70 69 65 63 65 20 6c 65 6e 67 74 68 | piece length | value: "piece length" 0x192-0x19e (12)
| | | value{}: 0x19e-0x1a6 (8)
0x0190| 69 | i | type: "integer" ("i") 0x19e-0x19f (1)
0x0190| 35| 5| value: 524288 0x19f-0x1a5 (6)
0x01a0|32 34 32 38 38 |24288 |
0x01a0| 65 | e | end: "e" (valid) 0x1a5-0x1a5.7 (1)
| | | [5]{}: pair 0x1a6-0x36bf.7 (13594)
| | | key{}: 0x1a6-0x1ad.7 (8)
0x01a0| 36 | 6 | type: "string" ("6") 0x1a6-0x1a6.7 (1)
0x01a0| 36 | 6 | length: 6 0x1a6-0x1a6.7 (1)
0x01a0| 3a | : | separator: ":" (valid) 0x1a7-0x1a7.7 (1)
0x01a0| 70 69 65 63 65 73 | pieces | value: "pieces" 0x1a8-0x1ad.7 (6)
| | | value{}: 0x1ae-0x36bf.7 (13586)
0x01a0| 31 | 1 | type: "string" ("1") 0x1ae-0x1ae.7 (1)
0x01a0| 31 33| 13| length: 13580 0x1ae-0x1b2.7 (5)
0x01a0| 65 | e | end: "e" (valid) 0x1a5-0x1a6 (1)
| | | [5]{}: pair 0x1a6-0x36c0 (13594)
| | | key{}: 0x1a6-0x1ae (8)
0x01a0| 36 | 6 | type: "string" ("6") 0x1a6-0x1a7 (1)
0x01a0| 36 | 6 | length: 6 0x1a6-0x1a7 (1)
0x01a0| 3a | : | separator: ":" (valid) 0x1a7-0x1a8 (1)
0x01a0| 70 69 65 63 65 73 | pieces | value: "pieces" 0x1a8-0x1ae (6)
| | | value{}: 0x1ae-0x36c0 (13586)
0x01a0| 31 | 1 | type: "string" ("1") 0x1ae-0x1af (1)
0x01a0| 31 33| 13| length: 13580 0x1ae-0x1b3 (5)
0x01b0|35 38 30 |580 |
0x01b0| 3a | : | separator: ":" (valid) 0x1b3-0x1b3.7 (1)
0x01b0| 99 71 9b 2c 2e aa b6 80 df fa 1f 36| .q.,.......6| value: "<22>q<EFBFBD>,.<2E><><EFBFBD><EFBFBD><EFBFBD>\x1f6\x0e<30>LS<4C>x<EFBFBD><78><EFBFBD>)\xef..." 0x1b4-0x36bf.7 (13580)
0x01b0| 3a | : | separator: ":" (valid) 0x1b3-0x1b4 (1)
0x01b0| 99 71 9b 2c 2e aa b6 80 df fa 1f 36| .q.,.......6| value: "<22>q<EFBFBD>,.<2E><><EFBFBD><EFBFBD><EFBFBD>\x1f6\x0e<30>LS<4C>x<EFBFBD><78><EFBFBD>)<EFBFBD>><3E><><EFBFBD><EFBFBD>\x03\x19%<25>\x04\x04<30>}<7D>\v<>Ķ{\rB<72><42><EFBFBD>wT\r<>" 0x1b4-0x36c0 (13580)
0x01c0|0e e0 4c 53 f3 78 bb 84 82 29 c8 3e 98 91 93 f9|..LS.x...).>....|
* |until 0x36bf.7 (13580) | |
| | | [6]{}: pair 0x36c0-0x3700.7 (65)
| | | key{}: 0x36c0-0x36c9.7 (10)
0x36c0|38 |8 | type: "string" ("8") 0x36c0-0x36c0.7 (1)
0x36c0|38 |8 | length: 8 0x36c0-0x36c0.7 (1)
0x36c0| 3a | : | separator: ":" (valid) 0x36c1-0x36c1.7 (1)
0x36c0| 70 72 6f 66 69 6c 65 73 | profiles | value: "profiles" 0x36c2-0x36c9.7 (8)
| | | value{}: 0x36ca-0x3700.7 (55)
0x36c0| 6c | l | type: "list" ("l") 0x36ca-0x36ca.7 (1)
| | | values[0:1]: 0x36cb-0x36ff.7 (53)
| | | [0]{}: value 0x36cb-0x36ff.7 (53)
0x36c0| 64 | d | type: "dictionary" ("d") 0x36cb-0x36cb.7 (1)
| | | pairs[0:4]: 0x36cc-0x36fe.7 (51)
| | | [0]{}: pair 0x36cc-0x36d5.7 (10)
| | | key{}: 0x36cc-0x36d3.7 (8)
0x36c0| 36 | 6 | type: "string" ("6") 0x36cc-0x36cc.7 (1)
0x36c0| 36 | 6 | length: 6 0x36cc-0x36cc.7 (1)
0x36c0| 3a | : | separator: ":" (valid) 0x36cd-0x36cd.7 (1)
0x36c0| 61 63| ac| value: "acodec" 0x36ce-0x36d3.7 (6)
| | | [6]{}: pair 0x36c0-0x3701 (65)
| | | key{}: 0x36c0-0x36ca (10)
0x36c0|38 |8 | type: "string" ("8") 0x36c0-0x36c1 (1)
0x36c0|38 |8 | length: 8 0x36c0-0x36c1 (1)
0x36c0| 3a | : | separator: ":" (valid) 0x36c1-0x36c2 (1)
0x36c0| 70 72 6f 66 69 6c 65 73 | profiles | value: "profiles" 0x36c2-0x36ca (8)
| | | value{}: 0x36ca-0x3701 (55)
0x36c0| 6c | l | type: "list" ("l") 0x36ca-0x36cb (1)
| | | values[0:1]: 0x36cb-0x3700 (53)
| | | [0]{}: value 0x36cb-0x3700 (53)
0x36c0| 64 | d | type: "dictionary" ("d") 0x36cb-0x36cc (1)
| | | pairs[0:4]: 0x36cc-0x36ff (51)
| | | [0]{}: pair 0x36cc-0x36d6 (10)
| | | key{}: 0x36cc-0x36d4 (8)
0x36c0| 36 | 6 | type: "string" ("6") 0x36cc-0x36cd (1)
0x36c0| 36 | 6 | length: 6 0x36cc-0x36cd (1)
0x36c0| 3a | : | separator: ":" (valid) 0x36cd-0x36ce (1)
0x36c0| 61 63| ac| value: "acodec" 0x36ce-0x36d4 (6)
0x36d0|6f 64 65 63 |odec |
| | | value{}: 0x36d4-0x36d5.7 (2)
0x36d0| 30 | 0 | type: "string" ("0") 0x36d4-0x36d4.7 (1)
0x36d0| 30 | 0 | length: 0 0x36d4-0x36d4.7 (1)
0x36d0| 3a | : | separator: ":" (valid) 0x36d5-0x36d5.7 (1)
| | | value: "" 0x36d6-NA (0)
| | | [1]{}: pair 0x36d6-0x36e3.7 (14)
| | | key{}: 0x36d6-0x36dd.7 (8)
0x36d0| 36 | 6 | type: "string" ("6") 0x36d6-0x36d6.7 (1)
0x36d0| 36 | 6 | length: 6 0x36d6-0x36d6.7 (1)
0x36d0| 3a | : | separator: ":" (valid) 0x36d7-0x36d7.7 (1)
0x36d0| 68 65 69 67 68 74 | height | value: "height" 0x36d8-0x36dd.7 (6)
| | | value{}: 0x36de-0x36e3.7 (6)
0x36d0| 69 | i | type: "integer" ("i") 0x36de-0x36de.7 (1)
0x36d0| 31| 1| value: 1080 0x36df-0x36e2.7 (4)
| | | value{}: 0x36d4-0x36d6 (2)
0x36d0| 30 | 0 | type: "string" ("0") 0x36d4-0x36d5 (1)
0x36d0| 30 | 0 | length: 0 0x36d4-0x36d5 (1)
0x36d0| 3a | : | separator: ":" (valid) 0x36d5-0x36d6 (1)
| | | value: "" 0x36d6-0x36d6 (0)
| | | [1]{}: pair 0x36d6-0x36e4 (14)
| | | key{}: 0x36d6-0x36de (8)
0x36d0| 36 | 6 | type: "string" ("6") 0x36d6-0x36d7 (1)
0x36d0| 36 | 6 | length: 6 0x36d6-0x36d7 (1)
0x36d0| 3a | : | separator: ":" (valid) 0x36d7-0x36d8 (1)
0x36d0| 68 65 69 67 68 74 | height | value: "height" 0x36d8-0x36de (6)
| | | value{}: 0x36de-0x36e4 (6)
0x36d0| 69 | i | type: "integer" ("i") 0x36de-0x36df (1)
0x36d0| 31| 1| value: 1080 0x36df-0x36e3 (4)
0x36e0|30 38 30 |080 |
0x36e0| 65 | e | end: "e" (valid) 0x36e3-0x36e3.7 (1)
| | | [2]{}: pair 0x36e4-0x36f1.7 (14)
| | | key{}: 0x36e4-0x36eb.7 (8)
0x36e0| 36 | 6 | type: "string" ("6") 0x36e4-0x36e4.7 (1)
0x36e0| 36 | 6 | length: 6 0x36e4-0x36e4.7 (1)
0x36e0| 3a | : | separator: ":" (valid) 0x36e5-0x36e5.7 (1)
0x36e0| 76 63 6f 64 65 63 | vcodec | value: "vcodec" 0x36e6-0x36eb.7 (6)
| | | value{}: 0x36ec-0x36f1.7 (6)
0x36e0| 34 | 4 | type: "string" ("4") 0x36ec-0x36ec.7 (1)
0x36e0| 34 | 4 | length: 4 0x36ec-0x36ec.7 (1)
0x36e0| 3a | : | separator: ":" (valid) 0x36ed-0x36ed.7 (1)
0x36e0| 41 56| AV| value: "AVC1" 0x36ee-0x36f1.7 (4)
0x36e0| 65 | e | end: "e" (valid) 0x36e3-0x36e4 (1)
| | | [2]{}: pair 0x36e4-0x36f2 (14)
| | | key{}: 0x36e4-0x36ec (8)
0x36e0| 36 | 6 | type: "string" ("6") 0x36e4-0x36e5 (1)
0x36e0| 36 | 6 | length: 6 0x36e4-0x36e5 (1)
0x36e0| 3a | : | separator: ":" (valid) 0x36e5-0x36e6 (1)
0x36e0| 76 63 6f 64 65 63 | vcodec | value: "vcodec" 0x36e6-0x36ec (6)
| | | value{}: 0x36ec-0x36f2 (6)
0x36e0| 34 | 4 | type: "string" ("4") 0x36ec-0x36ed (1)
0x36e0| 34 | 4 | length: 4 0x36ec-0x36ed (1)
0x36e0| 3a | : | separator: ":" (valid) 0x36ed-0x36ee (1)
0x36e0| 41 56| AV| value: "AVC1" 0x36ee-0x36f2 (4)
0x36f0|43 31 |C1 |
| | | [3]{}: pair 0x36f2-0x36fe.7 (13)
| | | key{}: 0x36f2-0x36f8.7 (7)
0x36f0| 35 | 5 | type: "string" ("5") 0x36f2-0x36f2.7 (1)
0x36f0| 35 | 5 | length: 5 0x36f2-0x36f2.7 (1)
0x36f0| 3a | : | separator: ":" (valid) 0x36f3-0x36f3.7 (1)
0x36f0| 77 69 64 74 68 | width | value: "width" 0x36f4-0x36f8.7 (5)
| | | value{}: 0x36f9-0x36fe.7 (6)
0x36f0| 69 | i | type: "integer" ("i") 0x36f9-0x36f9.7 (1)
0x36f0| 31 39 32 30 | 1920 | value: 1920 0x36fa-0x36fd.7 (4)
0x36f0| 65 | e | end: "e" (valid) 0x36fe-0x36fe.7 (1)
0x36f0| 65| e| end: "e" (valid) 0x36ff-0x36ff.7 (1)
0x3700|65 |e | end: "e" (valid) 0x3700-0x3700.7 (1)
0x3700| 65 | e | end: "e" (valid) 0x3701-0x3701.7 (1)
| | | [7]{}: pair 0x3702-0x376a.7 (105)
| | | key{}: 0x3702-0x370b.7 (10)
0x3700| 38 | 8 | type: "string" ("8") 0x3702-0x3702.7 (1)
0x3700| 38 | 8 | length: 8 0x3702-0x3702.7 (1)
0x3700| 3a | : | separator: ":" (valid) 0x3703-0x3703.7 (1)
0x3700| 75 72 6c 2d 6c 69 73 74 | url-list | value: "url-list" 0x3704-0x370b.7 (8)
| | | value{}: 0x370c-0x376a.7 (95)
0x3700| 6c | l | type: "list" ("l") 0x370c-0x370c.7 (1)
| | | values[0:1]: 0x370d-0x3769.7 (93)
| | | [0]{}: value 0x370d-0x3769.7 (93)
0x3700| 39 | 9 | type: "string" ("9") 0x370d-0x370d.7 (1)
0x3700| 39 30 | 90 | length: 90 0x370d-0x370e.7 (2)
0x3700| 3a| :| separator: ":" (valid) 0x370f-0x370f.7 (1)
0x3710|68 74 74 70 3a 2f 2f 64 69 73 74 72 69 62 75 74|http://distribut| value: "http://distribution.bbb3d.renderfarming.net/vid..." 0x3710-0x3769.7 (90)
| | | [3]{}: pair 0x36f2-0x36ff (13)
| | | key{}: 0x36f2-0x36f9 (7)
0x36f0| 35 | 5 | type: "string" ("5") 0x36f2-0x36f3 (1)
0x36f0| 35 | 5 | length: 5 0x36f2-0x36f3 (1)
0x36f0| 3a | : | separator: ":" (valid) 0x36f3-0x36f4 (1)
0x36f0| 77 69 64 74 68 | width | value: "width" 0x36f4-0x36f9 (5)
| | | value{}: 0x36f9-0x36ff (6)
0x36f0| 69 | i | type: "integer" ("i") 0x36f9-0x36fa (1)
0x36f0| 31 39 32 30 | 1920 | value: 1920 0x36fa-0x36fe (4)
0x36f0| 65 | e | end: "e" (valid) 0x36fe-0x36ff (1)
0x36f0| 65| e| end: "e" (valid) 0x36ff-0x3700 (1)
0x3700|65 |e | end: "e" (valid) 0x3700-0x3701 (1)
0x3700| 65 | e | end: "e" (valid) 0x3701-0x3702 (1)
| | | [7]{}: pair 0x3702-0x376b (105)
| | | key{}: 0x3702-0x370c (10)
0x3700| 38 | 8 | type: "string" ("8") 0x3702-0x3703 (1)
0x3700| 38 | 8 | length: 8 0x3702-0x3703 (1)
0x3700| 3a | : | separator: ":" (valid) 0x3703-0x3704 (1)
0x3700| 75 72 6c 2d 6c 69 73 74 | url-list | value: "url-list" 0x3704-0x370c (8)
| | | value{}: 0x370c-0x376b (95)
0x3700| 6c | l | type: "list" ("l") 0x370c-0x370d (1)
| | | values[0:1]: 0x370d-0x376a (93)
| | | [0]{}: value 0x370d-0x376a (93)
0x3700| 39 | 9 | type: "string" ("9") 0x370d-0x370e (1)
0x3700| 39 30 | 90 | length: 90 0x370d-0x370f (2)
0x3700| 3a| :| separator: ":" (valid) 0x370f-0x3710 (1)
0x3710|68 74 74 70 3a 2f 2f 64 69 73 74 72 69 62 75 74|http://distribut| value: "http://distribution.bbb3d.renderfarming.net/video/" 0x3710-0x376a (90)
* |until 0x3769.7 (90) | |
0x3760| 65 | e | end: "e" (valid) 0x376a-0x376a.7 (1)
| | | [8]{}: pair 0x376b-0x3794.7 (42)
| | | key{}: 0x376b-0x3773.7 (9)
0x3760| 37 | 7 | type: "string" ("7") 0x376b-0x376b.7 (1)
0x3760| 37 | 7 | length: 7 0x376b-0x376b.7 (1)
0x3760| 3a | : | separator: ":" (valid) 0x376c-0x376c.7 (1)
0x3760| 77 65 62| web| value: "website" 0x376d-0x3773.7 (7)
0x3760| 65 | e | end: "e" (valid) 0x376a-0x376b (1)
| | | [8]{}: pair 0x376b-0x3795 (42)
| | | key{}: 0x376b-0x3774 (9)
0x3760| 37 | 7 | type: "string" ("7") 0x376b-0x376c (1)
0x3760| 37 | 7 | length: 7 0x376b-0x376c (1)
0x3760| 3a | : | separator: ":" (valid) 0x376c-0x376d (1)
0x3760| 77 65 62| web| value: "website" 0x376d-0x3774 (7)
0x3770|73 69 74 65 |site |
| | | value{}: 0x3774-0x3794.7 (33)
0x3770| 33 | 3 | type: "string" ("3") 0x3774-0x3774.7 (1)
0x3770| 33 30 | 30 | length: 30 0x3774-0x3775.7 (2)
0x3770| 3a | : | separator: ":" (valid) 0x3776-0x3776.7 (1)
0x3770| 68 74 74 70 3a 2f 2f 62 62| http://bb| value: "http://bbb3d.renderfarming.net" 0x3777-0x3794.7 (30)
| | | value{}: 0x3774-0x3795 (33)
0x3770| 33 | 3 | type: "string" ("3") 0x3774-0x3775 (1)
0x3770| 33 30 | 30 | length: 30 0x3774-0x3776 (2)
0x3770| 3a | : | separator: ":" (valid) 0x3776-0x3777 (1)
0x3770| 68 74 74 70 3a 2f 2f 62 62| http://bb| value: "http://bbb3d.renderfarming.net" 0x3777-0x3795 (30)
0x3780|62 33 64 2e 72 65 6e 64 65 72 66 61 72 6d 69 6e|b3d.renderfarmin|
0x3790|67 2e 6e 65 74 |g.net |
0x3790| 65| | e| | end: "e" (valid) 0x3795-0x3795.7 (1)
0x3790| 65| | e| | end: "e" (valid) 0x3795-0x3796 (1)
$ fq -d bencode torepr bbb.torrent
{
"announce": "udp://tracker.openbittorrent.com:80/announce",

View File

@ -66,7 +66,7 @@ func decodeBitcoinBlock(d *decode.D) any {
d.FieldU32("version", scalar.UintHex)
d.FieldRawLen("previous_block_hash", 32*8, rawHexReverse)
d.FieldRawLen("merkle_root", 32*8, rawHexReverse)
d.FieldU32("time", scalar.UintActualUnixTime(time.RFC3339))
d.FieldU32("time", scalar.UintActualUnixTimeDescription(time.Second, time.RFC3339))
d.FieldU32("bits", scalar.UintHex)
d.FieldU32("nonce", scalar.UintHex)
})

View File

@ -5,10 +5,10 @@ $ fq dd genesis.dat
0x000| 1d 01 00 00 | .... | size: 285
| | | header{}:
0x000| 01 00 00 00 | .... | version: 0x1
0x000| 00 00 00 00| ....| previous_block_hash: "00000000000000000000000000000000000000000000000..." (raw bits)
0x000| 00 00 00 00| ....| previous_block_hash: "0000000000000000000000000000000000000000000000000000000000000000" (raw bits)
0x010|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................|
0x020|00 00 00 00 00 00 00 00 00 00 00 00 |............ |
0x020| 3b a3 ed fd| ;...| merkle_root: "4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77..." (raw bits)
0x020| 3b a3 ed fd| ;...| merkle_root: "4a5e1e4baab89f3a32518a88c31bc87f618f76673e2cc77ab2127b7afdeda33b" (raw bits)
0x030|7a 7b 12 b2 7a c7 2c 3e 67 76 8f 61 7f c8 1b c3|z{..z.,>gv.a....|
0x040|88 8a 51 32 3a 9f b8 aa 4b 1e 5e 4a |..Q2:...K.^J |
0x040| 29 ab 5f 49| )._I| time: 1231006505 (2009-01-03T18:15:05Z)
@ -21,7 +21,7 @@ $ fq dd genesis.dat
0x050| 01 | . | input_count: 1
| | | inputs[0:1]:
| | | [0]{}: input
0x050| 00 00| ..| txid: "00000000000000000000000000000000000000000000000..." (raw bits) (coinbase)
0x050| 00 00| ..| txid: "0000000000000000000000000000000000000000000000000000000000000000" (raw bits) (coinbase)
0x060|00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00|................|
0x070|00 00 00 00 00 00 00 00 00 00 00 00 00 00 |.............. |
0x070| ff ff| ..| vout: 4294967295

View File

@ -1,60 +1,60 @@
$ fq -d bitcoin_transaction dv tx_b941ddad.dat
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tx_b941ddad.dat (bitcoin_transaction) 0x0-0x166.7 (359)
0x000|02 00 00 00 |.... | version: 2 0x0-0x3.7 (4)
0x000| 00 | . | marker: 0 0x4-0x4.7 (1)
0x000| 01 | . | flag: 1 0x5-0x5.7 (1)
0x000| 01 | . | input_count: 1 0x6-0x6.7 (1)
| | | inputs[0:1]: 0x7-0x2f.7 (41)
| | | [0]{}: input 0x7-0x2f.7 (41)
0x000| 05 89 f2 e6 c0 7d 7c d7 d0| .....}|..| txid: "1efe0f1537ddd0b2f94d93b56d14f30f570b7495cfbf6cd..." (raw bits) 0x7-0x26.7 (32)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: tx_b941ddad.dat (bitcoin_transaction) 0x0-0x167 (359)
0x000|02 00 00 00 |.... | version: 2 0x0-0x4 (4)
0x000| 00 | . | marker: 0 0x4-0x5 (1)
0x000| 01 | . | flag: 1 0x5-0x6 (1)
0x000| 01 | . | input_count: 1 0x6-0x7 (1)
| | | inputs[0:1]: 0x7-0x30 (41)
| | | [0]{}: input 0x7-0x30 (41)
0x000| 05 89 f2 e6 c0 7d 7c d7 d0| .....}|..| txid: "1efe0f1537ddd0b2f94d93b56d14f30f570b7495cfbf6cd0d77c7dc0e6f28905" (raw bits) 0x7-0x27 (32)
0x010|6c bf cf 95 74 0b 57 0f f3 14 6d b5 93 4d f9 b2|l...t.W...m..M..|
0x020|d0 dd 37 15 0f fe 1e |..7.... |
0x020| 00 00 00 00 | .... | vout: 0 0x27-0x2a.7 (4)
0x020| 00 | . | scriptsig_size: 0 0x2b-0x2b.7 (1)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| scriptsig[0:1]: (bitcoin_script) 0x2c-NA (0)
| | | [0]: raw bits gap0 0x2c-NA (0)
0x020| fd ff ff ff| ....| sequence: 0xfffffffd 0x2c-0x2f.7 (4)
0x030|02 |. | output_count: 2 0x30-0x30.7 (1)
| | | outputs[0:2]: 0x31-0x7a.7 (74)
| | | [0]{}: output 0x31-0x5b.7 (43)
0x030| 22 02 00 00 00 00 00 00 | "....... | value: 546 0x31-0x38.7 (8)
0x030| 22 | " | scriptpub_size: 34 0x39-0x39.7 (1)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| scriptpub[0:2]: (bitcoin_script) 0x3a-0x5b.7 (34)
| | | [0]{}: opcode 0x3a-0x3a.7 (1)
0x030| 51 | Q | op: "true" (81) 0x3a-0x3a.7 (1)
| | | [1]{}: opcode 0x3b-0x5b.7 (33)
0x030| 20 | | op: "pushself" (32) 0x3b-0x3b.7 (1)
0x030| 3f 8a 96 81| ?...| arg: raw bits 0x3c-0x5b.7 (32)
0x020| 00 00 00 00 | .... | vout: 0 0x27-0x2b (4)
0x020| 00 | . | scriptsig_size: 0 0x2b-0x2c (1)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| scriptsig[0:1]: (bitcoin_script) 0x2c-0x2c (0)
| | | [0]: raw bits gap0 0x2c-0x2c (0)
0x020| fd ff ff ff| ....| sequence: 0xfffffffd 0x2c-0x30 (4)
0x030|02 |. | output_count: 2 0x30-0x31 (1)
| | | outputs[0:2]: 0x31-0x7b (74)
| | | [0]{}: output 0x31-0x5c (43)
0x030| 22 02 00 00 00 00 00 00 | "....... | value: 546 0x31-0x39 (8)
0x030| 22 | " | scriptpub_size: 34 0x39-0x3a (1)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| scriptpub[0:2]: (bitcoin_script) 0x3a-0x5c (34)
| | | [0]{}: opcode 0x3a-0x3b (1)
0x030| 51 | Q | op: "true" (81) 0x3a-0x3b (1)
| | | [1]{}: opcode 0x3b-0x5c (33)
0x030| 20 | | op: "pushself" (32) 0x3b-0x3c (1)
0x030| 3f 8a 96 81| ?...| arg: raw bits 0x3c-0x5c (32)
0x040|00 68 97 35 eb 2f 34 44 ec 60 99 e5 59 1f 64 e4|.h.5./4D.`..Y.d.|
0x050|8b 13 f6 7e 03 b9 5c e7 55 ef d9 47 |...~..\.U..G |
| | | [1]{}: output 0x5c-0x7a.7 (31)
0x050| 36 06 00 00| 6...| value: 1590 0x5c-0x63.7 (8)
| | | [1]{}: output 0x5c-0x7b (31)
0x050| 36 06 00 00| 6...| value: 1590 0x5c-0x64 (8)
0x060|00 00 00 00 |.... |
0x060| 16 | . | scriptpub_size: 22 0x64-0x64.7 (1)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| scriptpub[0:2]: (bitcoin_script) 0x65-0x7a.7 (22)
| | | [0]{}: opcode 0x65-0x65.7 (1)
0x060| 00 | . | op: "false" (0) 0x65-0x65.7 (1)
| | | [1]{}: opcode 0x66-0x7a.7 (21)
0x060| 14 | . | op: "pushself" (20) 0x66-0x66.7 (1)
0x060| 1a 62 ac 2b 8c 21 3c 14 df| .b.+.!<..| arg: raw bits 0x67-0x7a.7 (20)
0x060| 16 | . | scriptpub_size: 22 0x64-0x65 (1)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef| scriptpub[0:2]: (bitcoin_script) 0x65-0x7b (22)
| | | [0]{}: opcode 0x65-0x66 (1)
0x060| 00 | . | op: "false" (0) 0x65-0x66 (1)
| | | [1]{}: opcode 0x66-0x7b (21)
0x060| 14 | . | op: "pushself" (20) 0x66-0x67 (1)
0x060| 1a 62 ac 2b 8c 21 3c 14 df| .b.+.!<..| arg: raw bits 0x67-0x7b (20)
0x070|ab c9 d7 5b 67 18 dd ca 3f 8e 16 |...[g...?.. |
| | | witnesses[0:1]: 0x7b-0x162.7 (232)
| | | [0]{}: witness 0x7b-0x162.7 (232)
0x070| 03 | . | witness_size: 3 0x7b-0x7b.7 (1)
| | | items[0:3]: 0x7c-0x162.7 (231)
| | | [0]{}: item 0x7c-0xbc.7 (65)
0x070| 40 | @ | item_size: 64 0x7c-0x7c.7 (1)
0x070| f7 2d d2| .-.| item: raw bits 0x7d-0xbc.7 (64)
| | | witnesses[0:1]: 0x7b-0x163 (232)
| | | [0]{}: witness 0x7b-0x163 (232)
0x070| 03 | . | witness_size: 3 0x7b-0x7c (1)
| | | items[0:3]: 0x7c-0x163 (231)
| | | [0]{}: item 0x7c-0xbd (65)
0x070| 40 | @ | item_size: 64 0x7c-0x7d (1)
0x070| f7 2d d2| .-.| item: raw bits 0x7d-0xbd (64)
0x080|3c 02 8d 3f ae cd e7 40 01 a4 ae 83 f7 10 28 68|<..?...@......(h|
* |until 0xbc.7 (64) | |
| | | [1]{}: item 0xbd-0x140.7 (132)
0x0b0| 83 | . | item_size: 131 0xbd-0xbd.7 (1)
0x0b0| 20 11| .| item: raw bits 0xbe-0x140.7 (131)
| | | [1]{}: item 0xbd-0x141 (132)
0x0b0| 83 | . | item_size: 131 0xbd-0xbe (1)
0x0b0| 20 11| .| item: raw bits 0xbe-0x141 (131)
0x0c0|7f 69 22 57 b2 33 12 33 b5 70 5c e9 c6 82 be 87|.i"W.3.3.p\.....|
* |until 0x140.7 (131) | |
| | | [2]{}: item 0x141-0x162.7 (34)
0x140| 21 | ! | item_size: 33 0x141-0x141.7 (1)
0x140| c0 11 7f 69 22 57 b2 33 12 33 b5 70 5c e9| ...i"W.3.3.p\.| item: raw bits 0x142-0x162.7 (33)
| | | [2]{}: item 0x141-0x163 (34)
0x140| 21 | ! | item_size: 33 0x141-0x142 (1)
0x140| c0 11 7f 69 22 57 b2 33 12 33 b5 70 5c e9| ...i"W.3.3.p\.| item: raw bits 0x142-0x163 (33)
0x150|c6 82 be 87 19 ff 1b 2b 64 cb ca 29 0b d6 fa eb|.......+d..)....|
0x160|54 42 3e |TB> |
0x160| 00 00 00 00| | ....| | locktime: 0 0x163-0x166.7 (4)
0x160| 00 00 00 00| | ....| | locktime: 0 0x163-0x167 (4)

View File

@ -2,21 +2,21 @@
hello
$ fq -d bits '., .size, .[8:-8], scan("he|lo")' hello
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
0x0|68 65 6c 6c 6f 0a| |hello.| |.: raw bits 0x0-0x5.7 (6)
0x0|68 65 6c 6c 6f 0a| |hello.| |.: raw bits 0x0-0x6 (6)
48
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
0x0| 65 6c 6c 6f | ello |.: raw bits 0x1-0x4.7 (4)
0x0| 65 6c 6c 6f | ello |.: raw bits 0x1-0x5 (4)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
0x0|68 65 |he |.: raw bits 0x0-0x1.7 (2)
0x0|68 65 |he |.: raw bits 0x0-0x2 (2)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
0x0| 6c 6f | lo |.: raw bits 0x3-0x4.7 (2)
0x0| 6c 6f | lo |.: raw bits 0x3-0x5 (2)
$ fq -d bytes '., .size, .[1:-1], scan("he|lo")' hello
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
0x0|68 65 6c 6c 6f 0a| |hello.| |.: raw bits 0x0-0x5.7 (6)
0x0|68 65 6c 6c 6f 0a| |hello.| |.: raw bits 0x0-0x6 (6)
6
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
0x0| 65 6c 6c 6f | ello |.: raw bits 0x1-0x4.7 (4)
0x0| 65 6c 6c 6f | ello |.: raw bits 0x1-0x5 (4)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
0x0|68 65 |he |.: raw bits 0x0-0x1.7 (2)
0x0|68 65 |he |.: raw bits 0x0-0x2 (2)
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|
0x0| 6c 6f | lo |.: raw bits 0x3-0x4.7 (2)
0x0| 6c 6f | lo |.: raw bits 0x3-0x5 (2)

Some files were not shown because too many files have changed in this diff Show More