├── README.md ├── RS41-SG └── README.md ├── RS41-SGM ├── README.md ├── __used_asset__ │ └── pic_rs41-sgp_frame.png └── example_raw_data │ ├── RS41-SGM_N5140102.wav │ ├── RS41-SGM_N5140102_RS41_Tracker.txt │ └── RS41-SGM_N5140102_Zilog.txt ├── RS41-SGP+XDATA ├── README.md └── __used_asset__ │ └── pic_rs41-sgp_frame.png ├── RS41-SGP ├── README.md └── __used_asset__ │ ├── pic_rs41-sgp_frame.png │ └── pic_rs41-sgp_subframe.png └── __used_asset__ ├── pic_frame_format_rs41-sgp.png ├── pic_raw_fsk_transmission.png ├── pic_sonde_data_with_annotations.png └── pic_whole_frame.png /README.md: -------------------------------------------------------------------------------- 1 | # RS41 Decoding 2 | This repositories purpose is to explain how the radiosonde Vaisala RS41 transmitts it's data to the ground station, how third parties can obtain the data as well as decode and interpret it. 3 | 4 | For general information about radiosondes check out [Wikipedia](https://en.wikipedia.org/wiki/Radiosonde). 5 | 6 | For more information about the RS41 check out [my website](https://sondehunt.de/language/en/vaisala-rs41). 7 | 8 | Corrections and additions are always welcome, just fork the repo, edit accordingly and file a merge request. 9 | 10 | ## ToDo 11 | - [ ] find out purpose of various bytes in the STATUS and MEAS Blocks 12 | - [ ] do further subframe inverstigations 13 | - [ ] explain how the Reed-Solomon-ECC works 14 | - [ ] add information on xdata other than for regular ozone soundings 15 | - [ ] obtain and analyze data from RS41-SGMs radio silence mode 16 | - [ ] obtain and analyze data from 1.68 GHz RS41-D 17 | 18 | ## Introduction 19 | 20 | My findings are really nothing new, at the end this repo is, for the most part, just an extended documentation of [Zilog80s decoder](https://github.com/rs1729/RS), to whom most of the kudos belong. 21 | 22 | First I will explain a little how FSK Modulation works an how we can obtain the raw bytes sent. Then I will talk about the general Frame structure. Detailed explanations on the different RS41 models can be found in the appropiate files/folders. 23 | 24 | There is no actual decoder in this repo, just the knowledge on how to build one. However, I would like to add a simple PoC-style decoder, most likely as a C++ WPF application, at some point. 25 | 26 | 1. [How to obtain (G)FSK Data in general](#how-to-obtain-gfsk-data-in-general) 27 | 2. [How to get from Audio to Data](#how-to-get-from-audio-to-data) 28 | 3. [What did we actually obtain here?](#what-did-we-actually-obtain-here) 29 | 4. [RS41 Frame Format](#rs41-frame-format) 30 | 31 | ## How to obtain (G)FSK Data in general 32 | For a more detailed explanation, refer to [Wikipedia](https://en.wikipedia.org/wiki/Frequency-shift_keying). 33 | 34 | At it's core, FSK (Frequency Shift Keying) just is binary FM-Modulation. With FM-Modulation, an analog signal (usually audio) is transmitted by varying the carriers frequency accordingly. Note that not the actual frequency of the carrier at any given moment encodes the frequency of the signal, but rather the gradual change of frequency over time. The actual frequency of the carrier is a way of transmitting the amplitude of the signal. The frequency of the signal is determined by how often the it's amplitude changes polarity, and this is why the speed at which the carrier's frequency changes represents the frequency of the signal. The actual frequency deviation of the carrier is specific for each transmission standard and has to be selected (to some degree) in accordance to the signals bandwith. This is also what differentiates Narrow-Band-FM (NFM) from Wide-Band-FM (FM) and why you have to set your receiver to NFM to be able to decode radiosondes. 35 | 36 | So what is FSK exactly? FSK is a way of sending data, in which every symbol is transmitted by sending out a certain frequency representing that symbol. Through switching between the different frequencies (keying them) a data stream can be sent. In it's most simple form, FSK-2 (or just FSK) there are just two frequencies and thus symbols. In this case, every symbol encodes a single bit. FSK-4 uses 4 symbols, each representing two bits. Increasing the symbol count increases the channel capacity, but comes at a cost, which is not to be discussed here. The RS41 just uses regular ol' FSK, so we don't need to worry about this theoretical communication engineering stuff. 37 | 38 | The difference between FSK and GFSK is that GFSK transitions more smoothly between the symbols, which makes the spectrum "nicer". For the purpose of this examination, we don't need to worry about this fact so much. 39 | 40 | ## How to get from Audio to Data 41 | 42 | What happens when we decode a FSK-encoded signal with a FM demodulator (e.g. our receiver or RTL-SDR)? The FM decoder just sees the rapid change between two frequencies. During the change, there is a very high frequency, and while the symbols are sent, there is no change at all. What waveform does that remind us of - a rectangle, right! So what comes out of our receiver really is just the binary bitstream which endodes the sondes data. However, the receiver does not know anything about the symbols are defined, which means that a 1 might end up as a 0 and vice versa, meaning the signal might be inverted. 43 | 44 | For GFSK it's really the same, just that your rectangle is looking a bit more "messed up" as it effectively was low-pass filtered for transmission. 45 | 46 | ![raw_fsk_transmission](__used_asset__/pic_raw_fsk_transmission.png?raw=true "raw_fsk_transmission") 47 | 48 | This defines the first steps we have to perform with our audio signal. 49 | 50 | 1\. Check for every sign change in the received audio file and interpret it as a byte change. 51 | 52 | 3\. Check whether the signal might be inverted due to the reveiver and correct if neccessary. 53 | 54 | ## What did we actually obtain here? 55 | 56 | The second step above is missing, and that is for a reason. As you know, the RS41 is not transmitting continuously, there is a pause between the frames. As we can see from the datasheet, the sonde is transmitting one frame of data every second at a baud rate of 4800 symbols/second. If we take a look at an audio recording, we can identify two parts which compose a frame. 57 | 58 | ![whole_frame](__used_asset__/pic_whole_frame.png?raw=true "whole_frame") 59 | 60 | First, there is a preamble which is just a bunch of 0s and 1s alternating, which is then followed by the data. Here's an exercise for you: To which audible frequency does the preamble convert, when it is FM-demodulated and given out through a loudspeaker? 61 | 62 | 4800 Baud means there are 4800 spots for either a 1 or a 0 in the data stream. As each period of a frequency consist of both a positive and a negative half-wave this translates to an audio frequency of 2.4 kHz. We just found the characteristic "beep" in front of every frame, which makes the sonde sound so much like the first sputnik satellite, which also transmitted pressure and temperature through it's beeps. 63 | 64 | If we interpret the preamble as binary data however, it consists of 320 bits and thus has a length of 66.7 ms. It ends with a 1. The frame which it leads is 320* bytes long and thus counts just over 533 ms. 65 | 66 | (* unless it is an extended frame) 67 | 68 | If we than take a look at the bytes that are sent after the preamble, we can find that those are the same for every sonde. This is the header consisting of 8 bytes. If you would read it as it is displayed when taking a look at the waverform, it would read as 0b0000100001101101010100111000100001000100011010010100100000011111, but how do we have to read this? This bitstream is little endian encoded, both bytewise and bitwise. That means the first nibble 0b0000 translates to 0x0, the second 0b1000 to 0x1. The first byte than reads as 0x10. The whole Header than can be decoded as 0x10B6CA11229612F8. 69 | 70 | ![sonde_data_with_annotations](__used_asset__/pic_sonde_data_with_annotations.png?raw=true "sonde_data_with_annotations") 71 | 72 | The sondes data is additionally xor-scrambled before sending, but not as a crude way of stopping us from decoding it, but to make sure that there always lots of 0-1 changes in the data as the the receiver has to synchronize on the transmission baud rate. This is called data whitening. The xor-value is a 64 byte long pseudorandom number generated with a known lfsr and thus can be hardcoded into the decoder. If we descramble our header from before, 0x10B6CA11229612F8, with the first 8 bytes from the mask, 0x96833E51B1490898 by bitwise xor-ing it, we get 0x8635F44093DF1A60, which we refer to as part of the raw sonde data, which is to be analyzed further. 73 | 74 | ``` 75 | The whole XOR-mask is as follows: 76 | 0x96, 0x83, 0x3E, 0x51, 0xB1, 0x49, 0x08, 0x98, 77 | 0x32, 0x05, 0x59, 0x0E, 0xF9, 0x44, 0xC6, 0x26, 78 | 0x21, 0x60, 0xC2, 0xEA, 0x79, 0x5D, 0x6D, 0xA1, 79 | 0x54, 0x69, 0x47, 0x0C, 0xDC, 0xE8, 0x5C, 0xF1, 80 | 0xF7, 0x76, 0x82, 0x7F, 0x07, 0x99, 0xA2, 0x2C, 81 | 0x93, 0x7C, 0x30, 0x63, 0xF5, 0x10, 0x2E, 0x61, 82 | 0xD0, 0xBC, 0xB4, 0xB6, 0x06, 0xAA, 0xF4, 0x23, 83 | 0x78, 0x6E, 0x3B, 0xAE, 0xBF, 0x7B, 0x4C, 0xC1 84 | ``` 85 | 86 | So here are steps two and four in our decoding chain. 87 | 88 | 2\. Check for sign changes that correspond to the bitate of the sonde and find out whether the recieved data matches the known preamble or header. If that is the case, get the raw data for the rest of the frame and start processing it. 89 | 90 | 4\. Transpose the bitwise little-endian to a bitwise big-endian. 91 | 92 | 5\. Descramble the frame by xor-ing it with the known pseudorandom sequence. 93 | 94 | ## RS41 Frame Format 95 | 96 | If you did all of the above, you will end up with a frame which will look somewhat like this (except you had a sonde which transmitts an exteded frame, for example an ozone sonde) 97 | 98 | ![frame_format_rs41-sgp](__used_asset__/pic_frame_format_rs41-sgp.png?raw=true "frame_format_rs41-sgp") 99 | 100 | The general structure of each frame is as follows. 101 | 102 | Bytes [0x000-0x007] contain 8 bytes header, which is always the same. 103 | 104 | After that follow 48 bytes of reed-solomon error correction data at [0x008-0x037], which can be used to identify and correct transmission errors. 105 | 106 | Byte [0x038] encodes the frame type and is 0x0F for a regular, and 0xF0 for an extended frame. 107 | 108 | And after this there is a varying number of blocks, which share a common structure. A block consist of 2 bytes head, its data, and two byters tail. The first byte of the head is the block id which is unique for each type of block. The second byte is the length of the block, without head and tail. The tail finally is the CRC-16 over the data part of the block. 109 | 110 | Now, please go to the right file/folder for your type of sonde and continue reading there. You should also keep in mind that the data is still bytewise little-endian encoded. 111 | -------------------------------------------------------------------------------- /RS41-SG/README.md: -------------------------------------------------------------------------------- 1 | # RS41-SG 2 | The RS41-SG is for the most part sending exactly the same data as the RS41-SGP, so please take a look there for the main part. Only the differences are discussed here. 3 | 4 | ## Differences to RS41-SGP 5 | 6 | There is only one major difference: the three measurement values for the pressure in the 7A-MEAS block are all empty and filled with 0s. 7 | 8 | ## Subframe 9 | 10 | The subframe of the RS41-SG may contain some hints on which bytes in the -SGP have something to do with the pressure calculation. However, I haven't come around to take a look at it yet. 11 | -------------------------------------------------------------------------------- /RS41-SGM/README.md: -------------------------------------------------------------------------------- 1 | # RS41-SGM 2 | The RS41-SGM is the military version of the RS41, which has no pressure sensor, but hardwarewise has an additional EEPROM. It has to main differences compared to an normal RS41: 3 | 1. The GPS and PTU data is encrypted 4 | 2. It features a radio silence mode, in which the transmitter is activated only at a certain altitude or after a certain time. The ascend data up to this point is stored in the EEPROM an then sent interleaved with the regular data. As far as I know, this mode was not activated when obtaining the following frame. Maybe extended frames, such as for xdata soundings, are used in this mode. 5 | 6 | A Frame of a RS41-SGM looks like the following 7 | 8 | ![rs41-sgp_frame](__used_asset__/pic_rs41-sgp_frame.png?raw=true "rs41-sgp_frame") 9 | 10 | There are three different blocks inside this frame: 11 | 1. [79-STATUS](#79-STATUS) 12 | 2. [80-ENCRYPT](#80-ENCRYPT) 13 | 3. [76-EMPTY](#76-EMPTY) 14 | 15 | Also there an examination of the [subframe](#Subframe). 16 | 17 | ## 79-STATUS 18 | The 79-STATUS is fot hte most part identical to a regular RS41. At Position `[0x0D]` there might be a small difference. 19 | 20 | The subframe only consist of one part, which is the Subframe #51. It is discussed [further down](#subframe). 21 | 22 | | address | datatype | example data | decoded | function | 23 | | --- | --- | --- | --- | --- | 24 | | `[0x00]` | uint8 | `0xDE18` | 6366 | Frame# | 25 | | `[0x02]` | char[8] | `0x4E35313430313032` | N5140102 | Serial | 26 | | `[0x0A]` | uint24 | `0x1A0000` | 2.6 V | battery voltage * 10 | 27 | | `[0x0D]` | uint24? | `0x010003` | 3 | this value is different to a regular RS41 -purpose unknown | 28 | | `[0x10]` | uint24? | `0x130000` | |changes between 0x13 and 0x16 -purpose unknown | 29 | | `[0x13]` | | `0x2E` | | increases and decreases very slowly -purpose unknown | 30 | | `[0x14]` | | `0x000732` | | static value -purpose unknown | 31 | | `[0x17]` | uint8 | `0x32` | 51/51 | Subframe# | 32 | | `[0x18]` | uint8[16] | `0xFFFF63ED60020700F6F6C4011A650000` | | Subframe | 33 | 34 | ## 80-ENCRYPT 35 | The 80-ENCRYPT block contains the encrypted GPS and PTU data. 36 | 37 | The encrypted data consist (without head and tail) of 167 bytes. Maybe this odd number contains a clue to what crypto is used. The regular PTU and GPS data in a regular frame would be (without heads and tails) 182 bytes long, which is 16 bytes more. 12 bytes could be left away in the MEAS section for the pressure sensor, but what about the remaining four bytes? 38 | 39 | ## 76-EMPTY 40 | The 76-EMPTY block just contains a variable amount of zeros to fill up some space. 41 | 42 | ## Subframe 43 | The subframe just consists of Subframe# 51. The subframe data looks in fact quite similar to a regular subframe #51 but has some differences, and also changing bytes. However, the bytes of a regular subframe #51 change a bit during operation, too. One thing to keep in mind is that hte regular subframe #51 is transmitted 51x less frequently. 44 | 45 | ``` 46 | static over sample of 41 bytes, two exceptions 47 | 48 | 0xFFFF63ED60020700F6F6C4011A650000 49 | ^ ?^ incerements every 15 frames 50 | | 1 or 2 nibble? 51 | decrements slowly with period > 41/2 Frames 52 | 53 | regular subframe 0x32 from SGP vs SGM 54 | 55 | SGP: 56 | FFFF0000000000001D23C1010A0A0000 57 | FFFF0000000000001C22C1010F0E0000 58 | FFFF87EA000000001318C001100F0000 59 | FFFF87EA000000001116BF01100F0000 60 | FFFF87EA000000001115BE01100F0000 61 | FFFF87EA000000001015BE01100F0000 62 | FFFF87EA000000001015BD01100F0000 63 | FFFF87EA000000001015BD01100F0000 64 | FFFF87EA000000001015BC01100F0000 65 | FFFF87EA000000001015BB01100F0000 66 | FFFF87EA000000001014BB01100F0000 67 | FFFF87EA000000001014BA01100F0000 68 | FFFF87EA000000001014B901100F0000 69 | FFFF87EA000000001014B901100F0000 70 | FFFF87EA000000001015B801100F0000 71 | FFFF87EA000000001015B701100F0000 72 | FFFF87EA000000000F14B701100F0000 73 | FFFF87EA000000001116B601100F0000 74 | 75 | SGM: 76 | FFFF63ED60020700F6F6C4011A640000 (3x) 77 | FFFF63ED60020700F6F6C4011A650000 (15x) 78 | FFFF63ED60020700F6F6C4011A660000 (15x) 79 | FFFF63ED60020700F6F6C4011A670000 (6x) 80 | FFFF63ED60020700F6F6C3011A670000 (2x) 81 | 82 | ``` 83 | -------------------------------------------------------------------------------- /RS41-SGM/__used_asset__/pic_rs41-sgp_frame.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bazjo/RS41_Decoding/702553b114b13370afb4a7d86119b03fb94273b1/RS41-SGM/__used_asset__/pic_rs41-sgp_frame.png -------------------------------------------------------------------------------- /RS41-SGM/example_raw_data/RS41-SGM_N5140102.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bazjo/RS41_Decoding/702553b114b13370afb4a7d86119b03fb94273b1/RS41-SGM/example_raw_data/RS41-SGM_N5140102.wav -------------------------------------------------------------------------------- /RS41-SGM/example_raw_data/RS41-SGM_N5140102_RS41_Tracker.txt: -------------------------------------------------------------------------------- 1 | 86 35 F4 40 93 DF 1A 60 F1 CC 97 0A C9 F3 4D 50 E0 93 04 0A 12 6E CF F9 02 63 C1 99 F2 72 24 F9 8D B2 17 00 F8 4F 4E 97 9E 6F F9 F3 34 C6 5D 0D 1E CA 4A 01 8B C3 7B AF 0F 79 28 D8 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 13 00 00 2D 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 64 00 00 F0 D2 80 A7 C9 32 5E EA 14 F8 0E 29 C3 81 A7 2B F4 8E 57 67 0A 01 9C 52 65 53 6C 11 5D D2 BB 91 CD 50 13 E6 35 FA 73 56 33 15 4C 66 A1 EB F8 BB 15 B3 5A EB 05 2E 74 DD E3 FC 2E D1 F5 74 38 81 72 F5 5E 8B 37 8F EA 6F 29 23 51 73 4D 68 40 28 F3 47 DF 85 55 13 BD C0 B9 25 0E 5A C1 02 70 D1 E9 AC 14 C5 9E 8A 9C DB A9 2D F2 23 4F B5 B1 38 72 E3 DD 3C AA 11 AC 82 EB C2 AD A6 89 24 CD 95 2B 0E 80 C7 A8 13 1C E2 82 7D 50 7C D9 0B 59 40 7E 64 01 0C 72 BE B4 21 63 69 2A A3 18 E2 C6 A5 72 22 05 EE 68 16 A4 B6 DC 0C 5A 20 B6 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 1E 5C 3D 54 09 FE B2 D9 62 4F 76 D7 A4 A2 85 CB A2 30 76 C3 69 A6 72 4E 0B 3E 45 26 2D 32 F4 05 8D 61 83 77 BF 97 8F 3B 6C 7C 88 23 86 81 3B 07 41 60 2 | 86 35 F4 40 93 DF 1A 60 39 E1 32 29 E1 67 ED 87 A3 67 02 E1 1A 03 53 C5 1B 29 14 D7 76 1D ED E5 D7 C3 A5 85 CB 50 41 6B 80 8D ED 9F 65 38 02 A2 B4 D8 66 8E 20 D8 56 90 0F 79 28 D9 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 15 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 64 00 00 65 E0 80 A7 40 03 7F 46 85 FE FE 17 4A BA 1E 14 91 4E 4D 92 80 BC 66 37 FA 19 E6 3F 5D D8 E2 F1 3E 16 22 6F 51 6F 1F E5 5D AD 3A B2 82 18 9A 17 ED DA 14 90 63 A8 FD 1F 94 79 CD D0 5E 7A 1B 96 BA D0 0C 2E E7 60 38 F7 47 B2 1E 26 74 CB 74 55 2E AB A7 77 CE 63 D3 E5 92 6A 0D 31 BE E4 84 1B 09 2E 7F 94 11 2E 18 5F EA F9 1B AA C6 ED A3 AF 1D 3D EA 51 42 67 4B 00 29 71 D0 5C 7B 98 E7 77 4B 14 D8 46 B2 25 CA 55 E9 6D B2 B4 02 69 5E 3F 70 F7 A8 2F BF F6 2C 4D 2F 18 F2 9F 65 EF E7 38 C8 8D 2A 6E E5 F1 61 48 14 9B 20 2B DB 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A B2 3B C6 A8 08 19 79 EF 78 DE 52 62 88 AC 55 E9 A6 A5 9A 63 93 B5 FF 66 8D 60 E8 BE D1 00 E5 BD 23 FF 7D 77 1B 69 BB DA E3 3F DE C2 57 C9 71 65 27 01 3 | 86 35 F4 40 93 DF 1A 60 CD 1B 8B D5 FE 0A 07 BE A1 8D 18 E0 28 7A 51 38 AE C6 B0 85 39 E5 51 99 5F E7 72 FE AD 87 92 35 4B 07 B4 E0 78 A7 27 D1 5C A7 32 CA D4 19 EE DB 0F 79 28 DA 18 4E 35 31 34 30 31 30 32 1B 00 00 01 00 03 15 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 65 00 00 87 FD 80 A7 F3 85 72 32 88 78 50 F7 DC 8C 50 17 1F 7E BE 8A 8B 01 A3 CA F6 A7 BB 9B 77 4F 6B 7C 3C 03 DA 41 52 9E 46 0D 16 8D 85 DC E0 D6 4F 1D 1F 64 AF 44 F0 51 46 59 0B 08 19 18 5A 4C F9 73 9B 1C 86 78 3D 93 51 F4 40 9A 1C 04 63 DE 69 2C D5 F5 64 A8 BA 14 D0 CC 4A 6E 9D AC 84 59 E1 60 77 67 9E AD BC 44 E6 C9 77 BD A0 20 EE DC 6E 02 69 AF 4F 42 86 6E C0 6D 12 5C FD AE 86 16 2C 1D 7A 57 4B 7C 19 6E 0D 3D 89 47 AE 26 32 1E D7 87 B4 C2 C7 74 55 2F CC AA 21 D5 DD E7 90 84 31 98 F1 66 4F D2 7C 84 CC 53 7A 92 DA 20 F4 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 2E B8 CD 0F 05 77 EA E2 99 F5 96 95 A7 9D 71 D0 CE A5 BF 1B 05 D4 CF 81 D8 08 F2 8C E0 3F BC 14 CD F3 88 36 47 CC CA 5D 61 76 80 45 B9 BB 6D B3 FF 1C 4 | 86 35 F4 40 93 DF 1A 60 BB 69 54 58 27 94 66 78 DC CE 7E 23 3B FF 33 1B 36 7E 28 45 0F AE C0 62 89 84 FD F5 C1 39 52 4C 75 54 EE F9 CA 55 8A 31 F2 A4 59 48 6E 3A 85 A3 0F 79 28 DB 18 4E 35 31 34 30 31 30 32 1B 00 00 01 00 03 14 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 65 00 00 20 24 80 A7 A1 D3 14 5D 7D 19 C6 B7 2A F0 D7 7C 8F BD 78 AD 3C 34 5B 64 85 7C 7B 0F 35 05 6D 02 0F 96 13 BD 9D 66 BA 19 72 36 90 64 96 25 52 C3 B3 D5 1E 37 AA 4D CA E5 FC C4 40 CA 54 7A 8C 91 FD 33 64 31 65 9A 38 68 34 77 70 4C 39 B1 FC 4A FC 4A E0 A1 98 AD 93 A2 1E E6 3D 1C C6 D9 2A FD 80 10 9E 1E 61 64 D8 99 32 18 F2 71 8D DE 46 5C 69 61 12 A7 C2 5B 9C 75 BD 18 F0 11 B2 8D 57 F4 AC 4F 98 66 FB 51 04 B5 9C 37 C0 73 FA D7 D0 36 7A DE 20 D9 8F 84 DB 23 09 03 7B 91 FE 68 01 AD 16 F5 4E F8 E7 71 C5 27 F7 89 B9 CD 36 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 12 FA CC 3E 31 0D EF 79 67 B2 02 0C 41 C4 71 45 70 70 15 35 32 A7 27 BB 9D 57 4E DB AF 88 E9 EA 25 E7 6B 91 22 ED EA 28 25 54 E1 F6 92 33 FB 7C 08 8E 5 | 86 35 F4 40 93 DF 1A 60 DE 67 2B CE 84 1A 8F A6 7A A3 0D E5 C2 BC DF E7 FD 49 71 AE 26 DE 93 75 8C 08 CC 32 FA 68 BC 07 B0 5C 16 90 00 63 3D F1 DC A1 58 90 AC 02 0A 17 0F 79 28 DC 18 4E 35 31 34 30 31 30 32 1B 00 00 01 00 03 13 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 65 00 00 17 08 80 A7 EC 2F 8C F1 14 95 54 3C 3B 76 53 E7 02 1B 03 3C FC 17 34 C3 A3 ED 19 08 16 07 33 64 26 83 A9 9B C5 54 99 4A 10 BA 5E 70 41 71 24 86 1F 9C 5B 4A 4E 38 1F 73 44 A0 36 9E DE 7D 4F F5 30 98 F7 1A 9B 79 39 6F 69 B9 95 D6 E1 97 0E B1 7A FC D9 45 A3 E4 0F 01 D5 40 B0 30 35 9A 35 E6 E6 92 35 F2 95 CA 70 C6 38 CA 35 29 E6 3A 67 F3 20 F9 AF 47 99 86 9C 79 C8 4E A3 EB 97 75 62 6A B8 8A 54 83 8C 64 50 C5 93 8F 92 E6 4C 85 90 7E A6 02 DD 78 A7 3E 01 3F 09 2B 65 04 5F 89 11 05 23 49 DE 1A FA 88 A9 8D 34 CA B2 23 1A 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A E6 97 3D 07 10 EE 47 E1 4D A2 CC CF 42 0A 8C 7D 82 0E 95 49 5B 0E 7A 22 C0 EE 64 6A 73 C7 5B 89 C8 F5 5F 78 79 DD 34 81 2A 31 41 B7 87 50 06 D1 CF 34 6 | 86 35 F4 40 93 DF 1A 60 95 AB 76 1D 00 A8 5A DB 31 C3 21 53 DE 37 E8 BD 4A 8A 30 BD 4E E5 42 ED A2 6D D2 A8 69 5D 9D 7B 37 2F 8D D2 28 12 F7 E5 10 11 38 00 98 20 D6 19 0F 79 28 DD 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 12 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 65 00 00 AF D8 80 A7 BE 77 5A 4D 56 63 D7 4A 59 EA C6 16 31 D7 F5 8D 71 ED DC 50 14 D9 C2 8C 1B 0A 85 16 98 B2 BF DF 2C 8F CA 04 BE 9D 33 E0 13 81 60 32 74 ED C8 F5 20 FE E2 EB AA 33 F7 C2 35 37 2F 46 1C B9 B3 3E EE 7E 77 36 BF 55 2F 81 FA 6A C3 9D C8 0C C7 28 80 65 47 9E 7A 17 82 0E 78 DB C0 39 BA A6 74 3B 4A F5 4F 4B 21 07 D8 78 5B C1 30 DA CB C7 89 C9 88 06 9D 6B DF DA A4 06 74 B7 CC E4 FE 59 ED DC 3B 70 A7 76 2E A3 04 99 95 6D 39 C6 B4 91 8E 56 12 96 03 84 08 5F CF 0A 19 50 D0 63 44 D8 FD 88 8C 9B E5 A0 BF 67 27 F4 8E 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A A6 95 D2 F4 EF E5 B9 2F 26 4A B3 01 91 22 BC 05 58 12 CD 7F 2F BC 57 FE 1A 2F 49 30 35 AB 77 B3 B0 A6 3C 19 FA 3A 75 11 B3 CD BA C3 F0 7C 1A 22 36 D3 7 | 86 35 F4 40 93 DF 1A 60 13 B4 D5 82 3A 24 B4 4C 26 CD 71 70 FF 2E F0 D5 1A D2 C3 C3 91 27 3C 8B 43 FF 71 B5 46 99 32 99 89 2B 24 9B E9 45 35 BE 42 F4 F4 0B 9F 7C A8 DC 0F 79 28 DE 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 13 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 65 00 00 61 CC 80 A7 B6 10 16 D4 9A 13 A7 82 21 24 97 13 FA B3 7A F1 93 9B 34 20 A9 FA 71 1D E0 D5 C9 D6 71 CA 96 42 EF CD 5C F8 22 C7 4B 4F 67 A0 E5 21 89 C0 95 01 A8 A9 9E B1 E6 16 6D 10 14 83 A8 37 B5 8A 53 1E 83 1E E4 03 48 71 72 ED E1 1D 1D 60 CA A6 85 E9 9F D0 9E F8 F6 1A 4B 14 94 17 A1 60 2B 19 92 6D ED B7 8E 97 29 6C B8 60 C7 46 3F 3E 33 0B 46 A4 CE 10 84 74 83 B1 A0 E6 DC 29 82 04 70 18 C3 49 A4 BE 5F AC 8F 7F 79 70 6A AA AA AC AE 58 35 27 1F C0 4F C1 20 E6 4B DB 82 52 09 4A 9F 5D 15 E2 5A 12 D6 12 74 26 83 CD 04 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 20 00 00 00 00 78 9A D2 8B 3E A7 BE 44 E6 0A 12 4F AE 43 EB 04 60 D1 96 E9 0F 28 24 C9 B8 24 EF 3E 87 0B 69 C9 0F 13 68 05 CA 39 B8 36 B7 A9 33 F3 2F 45 DF A6 9A EA 15 36 8 | 86 35 F4 40 93 DF 1A 60 45 5E 8C 0B 35 C7 42 73 AD 17 B2 05 4F 49 EC B1 82 B5 BF 01 09 03 5C 29 E6 7D 0B F5 8E 25 36 73 D4 DA B2 A9 4F 1E 5F E9 71 A3 D2 AE 1E B3 A4 E0 0F 79 28 DF 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 14 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 65 00 00 CC A7 80 A7 08 66 79 D8 FF 87 11 B0 C8 3B 90 16 12 FF EF 5C C6 F3 02 E6 63 AC 5D 99 F0 C4 D2 61 20 50 45 50 7C 82 BB 5E E1 4A D4 55 58 E6 2B 15 CD 7E 5B 23 BE 9B 20 B7 C8 9F 4A 31 BE 49 32 23 CF 7F 31 9F 4D 63 A7 A3 23 A5 51 E4 8E C0 D0 A1 40 7F 25 BF 6D 7A 2B 4D 60 D6 CC C7 B9 52 B7 B7 E6 88 10 45 02 F3 9C F3 6A DA 45 9F D8 2E 2F 6A 94 75 F7 BE BB 3B 74 96 CF 84 2E 20 8A 58 B2 C6 0B AA E7 84 2F 2A ED 63 AD B5 E4 84 9A E6 30 DC D4 A1 20 7E B5 D1 B4 93 73 D9 5A F0 98 F2 80 47 8D ED AB 04 91 38 58 24 A5 EB EA B0 27 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 62 27 EF 6C B4 DE BC 01 02 FC D1 45 DE F1 C1 B3 A2 D1 87 77 18 D5 DA B9 E6 B5 98 8A E4 11 0C 87 B9 97 81 BD EE D3 3D C6 67 88 05 6B 1F 4F 6B 72 4F E8 9 | 86 35 F4 40 93 DF 1A 60 C8 A4 C9 FB D5 7E 9F F2 74 75 35 12 72 6E FD 96 ED 72 71 74 18 A8 99 70 5F 8E C2 B5 E0 83 B8 68 3D 2E 09 DF F3 00 74 20 C9 5C 78 31 CA 27 F7 BA 0F 79 28 E0 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 15 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 65 00 00 A4 20 80 A7 A9 19 84 05 99 8C 7A 4A 71 2F 76 81 65 06 7D AB 56 71 06 5A 5F DA 5E 30 4E 5E 14 FD AB 02 82 DB E4 29 25 DD 0D DA B0 CD 4F 95 42 07 5F BF C4 34 18 E1 BD DA EB 53 3F 73 D2 9B 2D B0 69 B5 D4 1E 6C D1 1C B7 7E 7A 11 65 CD 23 B7 96 57 F7 79 76 95 36 AD B9 BC CB 1B 67 53 5F 50 1B CE CC 53 20 D9 EC 1D 72 7F 9A B5 00 23 45 14 C3 26 35 99 75 D2 EE F2 C4 DB CA 11 D5 2B 51 F8 C3 32 1B 66 FA 2F 36 B5 6C E9 84 FB 5E 66 9C 43 86 2A 7A DC 58 93 F6 F3 C2 F8 10 18 21 BA 2D 79 4D B6 45 D1 01 13 0E DA AE C4 DB 55 86 3D 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 56 1E A4 8C 6B FD A8 7D D7 31 21 C5 E6 63 B7 65 26 E6 EF B2 C5 AF 4F 35 72 59 9F C2 00 A8 FF 9D 5B FC 18 F1 05 D3 52 E7 F5 5D 06 9A FF B0 DD E4 D8 00 10 | 86 35 F4 40 93 DF 1A 60 91 A6 81 2F C0 83 80 29 38 0A E8 97 44 A9 06 67 22 11 04 D2 2E 86 98 A9 B6 A9 13 D9 FC ED E8 B1 79 4F D4 8E 8A 0E 0B 22 CC 31 0F C5 66 52 70 F7 0F 79 28 E1 18 4E 35 31 34 30 31 30 32 1B 00 00 01 00 03 16 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 65 00 00 1A 9E 80 A7 51 50 14 C7 B4 D7 BA 64 94 06 F7 F1 11 96 C5 C1 BC 07 0A 10 AC 3F 01 E2 55 7A E9 75 D1 14 A7 33 36 13 70 AB F0 8C FB 7D 25 75 BD 34 00 32 1F 3E C3 74 04 EF 8C 53 54 40 85 A6 C0 D3 91 5B 38 91 7C EE BF BA 4B BF 7A 63 F7 B5 F1 56 9E 72 2C CB 55 CB 39 6A 06 7D 13 C0 C7 02 45 37 1B B6 A9 4D A2 F7 4C EC D6 74 A1 2C 1E FE 52 10 C1 18 0F 6A 01 99 0C 25 E1 36 FA 75 79 67 AF F3 1B 31 93 A9 9B B3 32 D5 12 3B 18 44 E3 C3 A1 A6 26 C0 85 EF 45 17 C1 2E A9 96 4F 7A C6 71 37 21 AE 7A C2 6F 64 98 9A 1E 1C A4 13 C7 FB 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A A2 15 10 98 9E ED DA A9 DC 1A 19 70 6C 95 2E B6 3B 32 84 E7 DB 52 71 11 C5 0A 93 68 34 F1 24 9A 62 C2 87 23 6E 51 9F E8 45 12 4A 34 79 C4 DC C2 A7 C1 11 | 86 35 F4 40 93 DF 1A 60 22 46 3A 54 2C FE B5 DB 5D 09 BA F7 CF BC FB 35 D1 7A AD 33 75 4A 7E E4 B4 4F BD 7B 06 61 F6 75 96 89 52 0B 25 3C 6D 2C E1 BF BA D9 10 F6 C1 85 0F 79 28 E2 18 4E 35 31 34 30 31 30 32 1B 00 00 01 00 03 15 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 65 00 00 D2 E4 80 A7 23 5B 8E ED 9A 0C 2B 6E 0F FE D9 D9 35 1C B9 CE 1F F6 99 A7 A9 FE A4 AA 13 D7 02 1F BC B8 1A 7E 8F 0F F3 BC 69 AE 2E 78 66 9B 34 CF C2 37 F1 22 C4 89 11 7E D4 31 B8 78 9E 57 8D 56 7E 4C 02 9D A0 BF D3 8A F3 F8 A8 FF 60 5A 97 76 60 91 ED A1 EF EA 43 22 BB B0 D8 96 C6 3A 09 E3 0F 72 A3 2F 7D 03 E3 87 04 4D 82 92 20 B9 77 C5 4B D3 3C 9F BC FB 5F 56 9D 96 AC AF 71 47 5D 49 DA 7C 6B AF 6E 99 90 B9 6C 19 70 02 D1 50 2A E5 43 0F 81 9C DA 83 8D D6 68 DB 1A AE B8 57 2D E3 2F 84 65 AC F2 74 C2 17 1C A0 65 0D A0 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 8A 41 BE 90 A4 4E F6 7C 95 6B C6 D5 DF 33 87 48 E5 63 F6 15 D9 E7 29 22 66 0D A9 49 8A A1 76 05 AC 3A 65 C7 0E 44 1D E6 58 76 F8 06 FD 56 20 63 47 01 12 | 86 35 F4 40 93 DF 1A 60 8E D5 6E FA 35 B8 5E AA 8E A5 D5 E9 7A 34 75 48 6F 7D 52 78 AE B5 12 9C 75 31 A4 BA D1 44 81 25 68 BA 56 CA 54 BA FF 6C 30 20 60 22 B2 AD F3 05 0F 79 28 E3 18 4E 35 31 34 30 31 30 32 1B 00 00 01 00 03 13 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 65 00 00 7C B8 80 A7 C0 BA 25 7F E3 DF CD 89 EE CF 76 37 C4 1D 3D 2E 08 94 E9 04 22 AA 5F 4F 9E 39 52 06 6E 81 51 C9 BE F2 4D 95 D5 96 EC 10 16 7C 99 B5 7D DB 18 D6 08 03 16 AC 03 9E BC DF 4F 9B 3A FC 44 90 2D 91 0F 50 E9 DF 6E 37 9F 6F 68 00 3E 8B AB F3 30 34 E7 CB 40 42 58 6B A2 FE B7 79 CE 41 2F FF 20 12 E7 B9 46 54 27 4A 0B EC 58 D4 30 90 63 91 F6 1E 2B 0E AD 98 B5 BC 2F 0C BC 11 89 1E 41 64 2B E5 53 AD 5E C3 CB 8A 1D 8E 2B 6C F0 52 66 F3 D9 AE A0 EF C0 E1 91 38 3F 66 90 F7 D4 F5 FE 8F 7D CD FB 15 4B 4F 0C 76 B9 F0 8C 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 3E 67 7A DF AB B3 68 9F F3 43 4C 03 A9 64 AA CB 60 C9 30 18 21 2E B0 B6 C1 C9 B1 B9 2F 68 9E 94 50 B1 54 DA 54 C5 82 71 23 74 C7 40 B0 3D 42 B3 95 09 13 | 86 35 F4 40 93 DF 1A 60 28 1A 4C 91 E1 72 F1 B1 AF D1 B6 B1 76 80 5C 10 60 77 20 B0 82 6F 69 9E BF 5A 41 69 4E 18 BD 37 E2 79 F2 04 CA CC 7D E2 95 91 9A 1F 85 AB 19 41 0F 79 28 E4 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 13 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 65 00 00 5D 18 80 A7 31 7E 2C 2A C8 92 71 59 99 16 AA D8 B7 8C FF FE 96 C9 54 99 F4 33 A2 6E C2 CF 64 B9 A2 3A 5C 68 97 0B 54 BF 7D 1A BE 8C DC DE FA BE 96 60 44 E4 93 C6 96 6F 99 F6 5C CE C2 5E 67 D4 E0 78 83 75 A0 63 EC 7E BD E4 5B A8 89 5D 52 36 33 EC C9 BE E1 F2 C6 50 69 3C 56 F2 5B ED 74 ED 68 39 F7 BE 97 07 1C 36 48 BA 74 42 D9 8F FB 66 59 E3 16 25 89 63 FB 78 4B F4 89 4B CA 5B 24 97 3C B9 DA 91 97 0C F1 18 E3 24 D6 92 0B 58 2A 06 BA F0 13 66 9D 8A 3D CC C7 67 D5 A1 F1 E2 DA AF 13 AA FA AA C3 6F D4 BF 34 AB 9E 56 C5 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 7A 4A A1 1F AF E7 9A 37 BF F0 2E 40 29 01 D7 94 4F F6 43 0A CF DF FF F1 D9 DA D7 D6 08 97 24 C4 E4 8C F6 D6 FC D0 7E 2C 39 94 BD F4 9C B4 D0 BA 60 C9 14 | 86 35 F4 40 93 DF 1A 60 AA 06 DB FB 6C F8 B7 CD F0 FF 37 1A 6A 8E DB 71 F8 25 4A AC E9 21 93 C5 A4 61 F0 0B 53 D5 A2 23 D2 B0 18 19 BF 02 0C 0B 7D 8B 86 46 96 1E A9 D5 0F 79 28 E5 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 13 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 65 00 00 F9 F6 80 A7 48 72 1A 76 66 8F E3 CA 7E 0F A8 CC C7 FF AB B3 DE 4F 38 F2 BF D3 51 E1 7C 74 C1 DD A4 0C 25 B5 8E 40 20 1E F2 2D 05 AE F6 69 5F 00 F0 39 5E 3F 1B ED 70 87 90 D6 1E 90 DB 1F 2D C3 A8 11 09 DA 6E DB 2A AF F7 8B 17 26 14 5B B9 2B EB 89 4B 1A 04 0F FF 4E 47 C5 0B 07 41 F1 A7 39 A0 F7 62 71 16 DD E1 E5 05 1F CF 1C 3B FB 4C 3E 39 D6 29 23 9F 1B 4B 80 E4 44 DD A9 C5 3D 8D D3 C5 36 F8 59 F7 69 22 8F 88 0B 54 C6 EE E6 C7 04 FA 88 1B 56 62 EB 02 B2 35 0B D1 AC E0 72 23 28 68 F3 6D 40 5E 17 22 3C 88 DE E6 74 3A 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 2A CC EF F7 1D 85 D2 56 F6 84 78 27 84 D3 D2 88 FC A9 C6 94 EA 7F 1D 20 84 5C E7 15 38 2E 52 9A CF 33 7D 7C A9 E6 46 00 26 8D 88 1D E7 A0 51 51 11 60 15 | 86 35 F4 40 93 DF 1A 60 49 35 23 2A 26 D6 C8 B1 02 7D E3 9E 0F B5 AC EE 23 72 D1 6D E6 B8 67 80 84 16 FA 29 F0 B5 8C 9A 29 50 DA EF 2D 77 A4 E4 A8 DF C3 8F 5E 26 C1 CA 0F 79 28 E6 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 15 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 65 00 00 3E 67 80 A7 B5 F5 62 3D E2 04 94 72 EC DE F7 F8 51 6C BA 34 E9 36 DB 3D 8A 16 97 AB 40 13 4A 70 EB C8 D5 B4 1C F7 BD 91 B0 E6 4D 93 5E 28 87 39 67 BA B6 BF 27 3E 86 71 93 27 0B 2D AE 75 9E 2D 52 BA B4 FD D7 A5 D5 B5 CA 8B 3C BD 30 94 F6 F8 D5 EB F3 6C B5 DD CF 4A 80 8F 17 90 6A 96 61 F6 87 7F 78 DE 79 CA C2 6B FD D1 54 A6 3F 81 A2 40 2E C4 DC 86 A1 AD 76 E3 91 C3 26 19 FC E1 56 9D 3C BD E8 21 90 BB 09 1B 6C E9 CB ED 7C B2 31 A7 F1 9A B7 B1 C4 5A 21 53 FA 40 E8 20 2A 0C BB 00 35 2E 18 66 E9 BE D8 BF AF A2 DE BF AB 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 6E 4F 45 52 AB C8 87 F0 03 C6 66 D9 A2 65 59 47 FA 25 99 77 0C 9F 5B 8C D2 BA 1D 76 20 FA 5C AC DB 07 F3 F9 D8 4F 37 1D F2 4E CB A3 79 1B 7E 3A 4D 72 16 | 86 35 F4 40 93 DF 1A 60 10 27 74 4D AB AA A0 AC 6F 8A 51 73 D3 B9 67 D5 7E 48 AF 03 CC D9 6D 5E 6E E3 BE 99 CC 31 55 B5 74 F1 B5 EE 88 B6 3C 60 33 F1 39 87 14 1F 7F C2 0F 79 28 E7 18 4E 35 31 34 30 31 30 32 1B 00 00 01 00 03 15 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 65 00 00 85 80 80 A7 CA 1A 91 38 15 38 74 A2 12 67 E6 3A DC 78 C3 B1 B1 2B E8 34 7E F8 5D 4E 23 8E 52 8C 93 82 09 0F 5E 68 60 25 2E AF 8B 39 C8 C9 1C F7 A9 08 15 C9 AA 91 B8 DB FC BD 8A 18 53 B7 E4 95 40 58 B0 07 57 A2 52 24 EE BB 73 F4 E1 67 6C DB 57 E4 9A F3 93 27 8D D3 E4 2D BA 13 0C BF C1 85 37 26 12 E6 4D 24 61 21 FE 77 55 7C 85 8C 33 37 CE 75 3C 8D F4 7E 15 2E 25 47 B3 DC A9 D3 B6 FD 77 99 31 B7 82 76 2A 0C EF 22 13 B2 CF 77 D0 D9 28 F9 99 5D A9 70 1D 31 DA 37 7A EE E7 36 79 32 79 2A EF 38 3D 7F 57 7B AF 24 8F 09 D9 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 DA FA 6C BE 98 DE C7 CF D1 74 6B 87 A4 EE 20 A9 34 4F C9 04 71 FC 81 3D 45 F1 46 39 16 7C AC 22 24 4D 8A 9C 41 C3 78 38 DF 63 5F 7A D2 B1 5C D0 34 17 D0 17 | 86 35 F4 40 93 DF 1A 60 DA E3 81 70 FB AD 92 0A FB 9A 18 31 1F E7 E2 64 53 C6 AA 24 1D 8F 1A 66 EE BF 8B B6 65 8D 83 01 C9 B3 41 F5 CC EA AE 33 A0 9C 70 93 9E 55 59 74 0F 79 28 E8 18 4E 35 31 34 30 31 30 32 1B 00 00 01 00 03 14 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 65 00 00 7F 1B 80 A7 23 AC 30 C1 62 F7 C3 C4 8E FC 3F 04 E7 D5 30 ED 8A 7D 7E C5 4E 62 FE 1D B7 E7 5A 8D 09 12 58 6C CA E4 65 93 23 E3 D9 24 0D 0F 2F FA 48 82 AF DB 42 05 9F C4 89 D3 59 E0 3A FB 3E 5A FD 68 90 1B 0A 7D 0D 0D B6 DF 75 68 8F 64 52 F8 BB 95 64 E1 F3 E1 E6 C8 97 E0 B0 E3 B8 1C B0 7E B5 54 7A 92 19 73 8E 8B 42 A0 60 EC 23 C6 31 D9 E3 9F 04 F0 DC B8 57 5B D8 4E 1B 21 44 3D 63 DA A8 92 46 74 D8 7B 6C 6E 85 FB 36 21 22 A7 8E 8C 0A 48 9E 36 9A 0E 5E 97 5C 86 48 D9 50 0F 38 EF 98 7F B0 E4 FD 65 27 B7 24 13 13 AE 63 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 9A 3E 7B 0E E3 B7 9F 2A 79 F6 9E 4B A7 53 C5 BB 7E 63 1D 95 D4 CC B4 4A 19 0C B2 45 FD 40 FA B7 73 F4 85 59 08 53 D9 3C 7D 60 D2 3E CD 4D 4E 7B A4 CB 18 | 86 35 F4 40 93 DF 1A 60 62 D7 1D 93 FB 54 30 66 F4 CC B2 DF 5B F3 45 AB 68 1C 33 55 A7 F6 B0 A0 38 E8 4D C5 94 29 59 D8 ED 15 95 CE 91 62 5F A2 73 7F 62 89 0A A6 17 DC 0F 79 28 E9 18 4E 35 31 34 30 31 30 32 1B 00 00 01 00 03 13 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 66 00 00 82 29 80 A7 EE 74 19 19 F4 34 BE CA 00 96 56 78 B1 F4 DF FD 31 FE 69 0B 0A 36 2B B8 62 76 DA 30 86 CB 97 A4 19 34 CA 9D 8F 03 D2 45 E1 EE A8 26 F0 79 41 3C 53 77 93 3F 54 C5 B4 62 E6 2D C7 55 1A C3 58 4F BC 2C FB 9A 3C 11 C7 65 B5 6C 10 B3 2E 0F 52 19 32 C8 C3 C9 82 19 55 FF 70 4E 40 27 FE 33 B9 31 70 46 D9 9C CA 56 02 20 A8 CA 86 CA A0 99 CB 08 39 C7 96 B8 E5 F3 34 13 CB EC AA 77 DB 0F 02 2C 31 A5 20 7C CF 13 F5 FE A6 D2 C2 F5 88 EE B0 81 B0 EA A4 2F 0E 62 15 CD B7 B4 98 2B D1 F7 8B 57 70 8E 3D F8 DA 6E 61 54 B6 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A BE 4D F8 62 AE 94 2A F9 4E 8C E1 6F BF 12 FD 67 A6 BC EB CB B2 3D 89 C2 F4 22 9C 5B 02 B7 3F 04 DF A2 F9 DD 78 B5 10 99 53 2A 96 05 63 43 82 54 15 E1 19 | 86 35 F4 40 93 DF 1A 60 67 47 41 9C 74 82 7D 86 07 BD 03 6E 5B 9E 9A EA 0D CC 71 4C 8E 29 A3 DE 55 E1 93 AF AE E1 2D 74 82 BE A4 F4 86 79 CC 01 86 CE 10 6E 16 B3 D4 49 0F 79 28 EA 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 12 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 66 00 00 53 34 80 A7 1A 0B C6 E4 C3 41 31 D9 9E CD FA F1 12 02 36 BD 4D BB 8B 9C 1A 34 CD 46 DF BE 5E 33 5E 08 FD 07 B1 50 A2 E0 0A 6B 5E 11 8B 78 2B DE 24 C4 1E 90 F3 10 AD B8 49 EF 47 70 9A E2 5E 89 05 45 C1 F2 33 F5 E0 49 18 58 8C 34 F3 91 09 6D 34 8E E4 08 17 58 28 10 09 D8 A7 F7 27 F8 FE 15 A4 CD 39 16 54 8E 1C C3 EA B2 4C 83 4C 6F 42 EB 49 CC C6 7E 47 BB F7 D2 9B F8 EB 2A A4 41 A1 EB C7 2D 8D CB 3C AF CC 48 61 2C 14 6B B7 F3 56 CC 37 C6 20 9B B6 F7 C9 49 06 39 9D E3 8C 98 F6 EE 8C 60 BA DD 7D 3A EC 9C 34 1C 07 ED 5F 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A B6 CD 68 83 BA AC F2 CC DF FC 50 17 59 E3 96 FD F6 E4 6D 85 BF 66 6C A3 34 E7 1B E2 C8 80 B9 97 52 52 9A 5D B7 50 E6 11 7A 5D D4 5E 75 52 6C 19 6C 6E 20 | 86 35 F4 40 93 DF 1A 60 29 33 7B E4 B3 75 75 87 28 90 01 29 E2 30 88 B4 D4 3F 9F 2F B0 8B C5 5A 83 1E 19 99 B7 1F A2 13 98 AA 80 26 18 77 C9 6C 02 CC 18 70 A8 A6 4C FD 0F 79 28 EB 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 13 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 66 00 00 F4 ED 80 A7 83 54 57 2A 9F 87 94 42 85 15 2C F2 3E 7C 1F 34 14 5B 96 6C AF B3 AB DD 87 29 17 8E F6 C3 DD B8 10 94 0C F1 14 9E 73 D7 B3 2B 17 F8 57 8E C1 1D 39 FC E7 03 45 88 8A 2D F7 88 FA 8D 7A A0 8A 84 A3 F6 15 26 61 90 F6 EF 77 F8 75 3F E3 92 A0 09 BF 82 E1 2D D7 6B 23 2F 9E 3F B5 A8 67 11 AE 04 68 69 CC BB 6E 22 75 1B 6A 1D 5D 16 13 B8 E0 A9 1D C8 C1 21 04 07 BB A3 F8 1C 48 12 E6 EB 8C 7D 2C 1A 95 1D 1D 17 39 80 52 6C B5 23 D4 F5 58 F7 7B 0B C2 09 E3 8B 43 26 FF 7B 91 D6 AA 14 AE 48 16 5D EB FC 9F A4 F8 6F BE 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A FA 5A EC 4B FC 37 D6 3C 1C 8C 62 2B 23 A2 90 EA 20 EF 85 18 AA EB 8B 9D 2F FB 92 0C 1C 70 BB BE 4C FE C4 9A E1 40 B3 56 0F 22 C6 7D 7A AA BC E9 95 8D 21 | 86 35 F4 40 93 DF 1A 60 6E BC DB F7 AB 80 5A 79 2E 4D 56 3A 8C 03 8E B4 B9 31 9A A6 2C 34 32 12 BC 46 FD 06 73 C8 3C 30 66 DB E8 77 23 BB FE 47 BB 17 D2 81 EE 14 18 77 0F 79 28 ED 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 15 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 66 00 00 64 18 80 A7 90 19 08 85 87 38 35 A9 3F 66 91 30 BF C7 33 30 84 66 DD 2A A8 B7 09 8C 90 8E 3B 02 4E 39 3C DA CC 3E F7 45 63 39 E9 00 DF 9A C2 D3 F0 C3 DA B7 0C BF 44 2D 35 5E C2 64 26 89 0E 2D 8F 4F 49 A8 62 46 9E CA F2 E4 00 34 50 27 0E 7A 2A 7B 01 11 F8 65 6E 9E 37 40 1A 04 F4 58 16 D8 EA 65 8B FE E9 34 CD 1C 02 3A 3F C5 3B CF 85 AE 74 E4 33 80 3F 94 EE BB B5 D3 DA 0D D0 59 45 80 C2 76 F2 8C 20 0C A3 12 01 03 B5 BC FB 9D 68 2D 04 0E 81 7D B9 52 BD 3E 83 91 21 A6 E2 B8 BB EB EE 80 63 AE BD F2 FD 8C EB 87 BF 86 C9 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 62 76 4D B5 23 12 7E BD 0E EF 90 3F 22 FC CA C4 9E F4 AF 0A AC 61 3C 23 9E C7 05 72 BD E3 30 FD 10 29 89 13 9F 00 A1 29 5B 28 10 47 EB A1 53 80 39 75 22 | 86 35 F4 40 93 DF 1A 60 94 32 FE D0 5E 72 07 E1 A8 8D 26 D8 02 08 6E C8 EB 3F 8B B4 17 98 C1 52 45 FF A5 BA B8 6E 1A 6E 82 DE 0C 63 AC FA 09 19 67 16 EE AC 05 4D 1D 6A 0F 79 28 EE 18 4E 35 31 34 30 31 30 32 1B 00 00 01 00 03 16 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 66 00 00 B3 6B 80 A7 A2 15 43 2C 29 9D 2C D6 3C 64 68 C2 02 59 9B DA 4D 3E 41 95 79 FB EB E4 4C 26 7C 01 11 2B F6 16 3B 0F 6C DD 4C 88 31 60 74 FB 0A 85 05 7C A2 1E CF D7 51 9F 02 E8 30 35 69 EF 9D 03 12 93 88 E9 4F ED EB B3 44 72 9B 0F 04 A0 4E 3D 77 0E 59 7A E4 53 7D 3C 28 47 93 1F 66 90 F5 ED 98 0D C8 D2 47 C2 1D 02 4D 30 33 79 1A 9F BC 5C 3C 43 27 D0 7F AB 0A FA 0C B7 02 77 DE DA D5 9F AF 57 E0 5B 2B E9 A3 AD 0F C6 00 9C AB CA F5 52 A6 51 65 6F 2D 24 6E A0 3C C2 0E 37 1D 87 5D 4D 57 2E 0F 39 5B 32 16 A0 F8 72 F6 D3 C6 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 0A AE 56 30 40 02 58 B1 2E B1 50 E4 41 43 B9 E0 7E 67 58 17 03 BD E2 0C 67 58 49 10 69 5D C1 C4 EC 97 63 A0 6A A0 37 53 23 F6 AF 02 46 DB EB DA F4 A1 23 | 86 35 F4 40 93 DF 1A 60 07 DB 06 C3 0D 6A 7B C3 FB 48 07 8A 59 EB E5 84 CB 14 39 EB 22 0A BA FC AD 20 E8 8D 04 2C 1D 5E 89 A5 3D 31 30 3F 1D B8 D5 42 18 77 69 9A DC 9D 0F 79 28 EF 18 4E 35 31 34 30 31 30 32 1B 00 00 01 00 03 15 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 66 00 00 12 DC 80 A7 58 32 38 9F A5 DF 7A 12 B4 B1 D6 19 8B 38 C6 D0 BE E1 36 C3 33 79 B9 58 A8 DF 81 92 19 52 AC 64 EB 7F 5F BC B9 D9 5F 84 A8 9B 3A 72 27 E7 13 30 C6 61 FE 08 91 AD AB FC FC 22 0D B9 5C 24 8E 47 A7 37 62 54 96 84 5A DD 7C BE BD 0B 32 44 6B 2D F3 C3 49 EE DC 61 62 8F 35 0F 25 D3 A3 F5 ED C6 B7 5E 19 D4 36 16 41 E7 BF 6F 8B A8 84 8D D7 8D 59 F6 86 BE D1 2B 2F E6 A2 72 64 1E 24 DA E3 C4 5D 76 D4 1B 98 48 B9 43 CA FC 26 A1 7B C3 06 0B 59 09 9F 30 C4 C8 69 19 D9 67 D8 7C 49 52 13 85 F3 F0 86 45 5F FE 6E BD A2 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 7E 0C FB C6 B8 A9 A3 E3 3A 0D 60 00 40 B5 BC D1 09 84 31 69 0D 9D 8E E9 8E 50 63 C1 8C 02 EF 83 A2 93 08 6F C3 23 39 45 A4 74 6D C3 7D CF D3 69 B9 3E 24 | 86 35 F4 40 93 DF 1A 60 09 B0 82 BF E3 69 5F 77 DA 7A 01 80 9A D4 2E 14 4F 56 18 26 29 55 C2 FD 0A B9 FD AB 45 AD 5E 19 66 7B 09 45 82 23 6D A7 ED 4A E4 F1 64 6F 80 63 0F 79 28 F0 18 4E 35 31 34 30 31 30 32 1B 00 00 01 00 03 13 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 66 00 00 6F C9 80 A7 A6 C7 34 1F 82 B0 5A 16 B0 39 F2 2E FC BE 08 09 0E F5 9D 2B 15 68 70 29 26 D1 D5 2B 14 62 14 8F 3B C9 0E 51 65 5A 06 50 B1 3C DB F7 7C 34 7F FC ED 9A 88 EF 23 6E 54 63 31 67 50 B6 18 8E 5C E5 2E E2 68 B1 6B E0 FD 45 C5 6C A6 30 81 43 85 34 64 6E 26 B0 83 42 1A A2 B3 A6 BB 2F 27 0F AC 42 00 09 F0 83 B5 E1 F1 2E D7 28 C8 F0 4A 99 9A F5 EA 2F 70 3B 7D 40 B1 40 6C 89 3B 0B 48 07 1F 65 B4 7D 9A EC 99 62 69 8D 8F 3B F2 7C 4E 4C A3 D0 3E AD 77 0A 49 41 74 9F 8B B5 CF 3F CA FB D5 14 98 19 40 50 5E 09 97 0D 2F 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A CA B6 4D 01 76 2A E3 07 83 D7 B5 D8 64 58 9D 9D 84 F6 35 CB 46 B5 58 D2 A1 54 C6 37 0C F9 A9 2C D1 FC 23 85 F7 1F 03 FB 19 34 4B 39 C9 71 D2 FE 7A 17 25 | 86 35 F4 40 93 DF 1A 60 8E A6 99 B6 F0 DD 53 C1 BA 26 05 27 51 AA 75 19 8F 6B 9F 33 2A C9 62 5B D5 22 69 39 6F 7E 77 09 0A 56 FE 63 DD 65 0A C0 D0 57 FD CA D4 C2 C2 7D 0F 79 28 F1 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 13 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 66 00 00 D4 2E 80 A7 33 9C 7B 10 02 99 56 39 A1 13 D2 E9 11 F1 12 19 1E 4D 95 62 A4 89 15 32 A0 7F 08 2F 29 FF 0A 80 77 29 E3 95 D3 CD 97 3C DD C3 91 0B 64 4D AC 6F 0A 1E 89 A8 0E 00 55 6D 96 9B 9F 49 AB F3 BE EF 4F B1 8F BA AB 7D 24 D7 46 E9 08 27 EA 22 0E AC D9 53 86 2D C0 D0 51 4B 68 AE 0F 9E F8 96 A4 1A 55 65 06 48 B8 83 05 70 5D 35 86 14 30 EE 27 64 99 E3 2D B2 FF C8 13 A8 44 DB 6F 26 7C B1 77 C4 DF FB 13 10 82 0B FD F8 06 74 34 5A 27 6B 80 1D F2 08 BB EB 1A 71 34 AB F2 58 74 AB 76 CE 4F 54 EC 28 29 0E E1 D4 42 80 00 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 42 CB F9 56 9E 04 E0 DA F1 98 17 FE FC B4 1D DD AE A8 80 7D 9D E2 E2 A4 B6 F1 5A 94 43 00 B2 7E 5C 08 B4 C1 90 98 45 B0 AA BD 39 5E 49 78 C4 0F 4C 5B 26 | 86 35 F5 40 93 DF 1A 60 75 FE 49 07 4E 5F 50 3D 0D F0 18 BA 37 57 A9 FD 52 AB 86 AF 26 F4 6D 41 55 C6 9A E2 1F 8D A0 AC AC 0C E6 DC BF 91 35 57 67 F3 71 30 03 A9 18 43 0F 79 28 F2 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 14 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 66 00 00 10 88 80 A7 D8 E7 28 08 CD A9 1E 28 4B E6 13 7A 38 F9 BF 83 E2 93 B2 30 48 00 39 E9 21 08 77 11 1F 7C 44 07 27 42 1C 3E FF B6 32 12 E2 F5 81 0C A7 A3 89 B3 E2 BF 8A A4 A6 E8 4D 5B D1 94 F4 30 ED B8 C9 3C AA 7F CD D6 0C 5E A3 41 9E E2 25 0D 1F 9A 6D 30 69 80 25 FC 5F E5 20 39 96 E8 82 A9 B5 C7 BB 52 FB 4D 62 66 DB 86 77 80 02 39 56 D8 DD DC 8F 68 83 43 8F 9A 7E 3A EA 36 CC 0D 4E D3 43 22 F8 FE 5E 26 12 64 77 A4 32 05 F5 9D F2 2F 9C 89 D6 86 9D B6 22 CD 57 DF F2 D0 29 84 E5 F7 15 9E 35 5F B3 9B 52 72 F3 B3 E2 0B B9 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 62 7A C3 99 6E 91 0D B1 0F 00 97 48 2D 98 34 70 6E C7 28 BB 72 7F DD DD 4E 6F 10 FC 3E 53 77 30 89 DA D0 6C 21 2E 4C 0B 0D F4 5F 94 7A 9A AB 27 B1 B2 27 | 86 35 F4 40 93 DF 1A 60 23 15 9E 50 7D BF 0D 18 4B 4A 42 67 42 C7 A5 A3 40 8B B9 DE 06 25 05 D6 CB A1 CA 35 3A 4E 77 63 F6 DD 38 90 84 0E 2C D0 65 86 A1 F9 5E 9C 79 58 0F 79 28 F3 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 15 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 66 00 00 B7 51 80 A7 D2 84 7A 13 17 03 0F 32 8B 72 EA 0B F1 72 70 59 9E C4 94 0A 7A 22 DB 9D 7B 17 FD 22 73 F3 AE 53 FB AF D0 E9 2A 08 DD E8 EF 63 DD 4D D6 C7 2D D1 A7 FB DB 91 AF 02 D5 12 10 74 C5 7D 88 69 C8 45 BA 7C 72 EE 30 FD AF A5 DA 42 FA 1D 9F 67 8F 7F 8F 56 E9 32 30 14 3B DB A8 F6 3F 4D 1B 68 77 E8 2C 7D 03 B0 AA 95 29 8F 43 56 BB 7F C4 E3 0D BD D0 C8 AB E6 9B B1 DC 47 B2 D8 50 EB 27 C4 1F BD 3A C7 E6 01 B8 8D 9A D5 8C 8D 92 DD 27 4E 2E 0E A0 65 23 B4 BD 0A 3E 4E 23 96 A3 B6 C0 3D A1 F4 52 46 E3 C8 9F 8D 3A 86 72 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 8A FC 3E FB 31 A8 2B B7 06 DF EE AC 75 5B 3C 24 59 FB 0D C9 78 84 8F 4E C0 EE 48 94 87 60 7E 03 79 32 FA 11 04 9D 2E 9E A0 DF D5 4E 31 4C 69 ED 64 01 28 | 86 35 F4 40 93 DF 1A 60 97 F1 91 E8 67 04 F1 38 5F A1 19 C4 D4 78 B9 61 7C 9C F7 10 9C 1F 08 CB DC FC F3 C9 4C BC 3B 3C A9 FE 0D BF C2 29 37 6E 84 27 CB 6F 49 C2 BA 0A 0F 79 28 F4 18 4E 35 31 34 30 31 30 32 1B 00 00 01 00 03 15 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 66 00 00 96 F1 80 A7 97 2A FB A7 5A A9 F4 A1 F2 10 F6 14 2D 10 C7 FD FF 24 16 F7 48 7A 00 16 DF 62 5C 3B 9D A9 31 E3 44 D3 C4 CE F2 62 66 A5 DB B2 61 DF FE 92 76 22 45 8E A1 B0 42 6F 54 D6 D1 12 87 10 B0 16 EE 59 BA D4 AF 53 B6 C6 1A BB 15 64 52 D9 C0 DC B7 75 A6 65 11 A6 19 9A 2A 81 AE 50 0B 70 B5 38 91 59 D7 8A 20 C4 8E C1 C3 C2 70 36 55 9B DA EC 59 00 FD B5 E6 79 96 A5 A8 B6 83 0C 96 F1 C7 FE 0B 90 BC C0 40 8A 82 45 B5 18 AD B6 CC C7 46 56 FB 43 9B 85 D7 C6 4F 2E 18 2F CA 54 9B F7 7C 99 15 EC 6D 45 0E 20 36 78 BA 98 F2 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 2A 4B 39 C8 7B 26 25 8A F5 FB 63 79 22 87 FB 4D 66 37 04 2A A8 FC 89 3E 9E 76 D2 69 BD 3C CE C5 F8 AA 57 5C 06 08 B7 DE 2A 25 45 C4 42 F4 56 79 6C 44 29 | 86 35 F4 40 93 DF 1A 60 A2 A7 1E 85 43 96 CD C4 B0 5B 97 7B BC DF 45 CB B3 07 57 64 62 FB 4E BE 80 C4 9B B3 B1 D5 19 CE D9 66 C7 5C 91 A1 76 31 E3 8D 9D DC 0B 32 63 A0 0F 79 28 F5 18 4E 35 31 34 30 31 30 32 1B 00 00 01 00 03 14 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 66 00 00 31 28 80 A7 D5 12 61 0E CA 3F FA B2 3D 48 32 9E 30 9A 7F CA 2A C2 4F 85 51 06 27 AC 67 97 5A 0E C0 85 CB CD 0A 26 13 F0 29 E1 2E 62 65 50 F0 76 AB 3D 96 B3 9F 0F A3 0A 9F 1F 8A B9 50 32 B7 96 12 E5 C6 C4 D1 76 81 4C 16 4F 2C 57 0A 7D 6A 3F 86 39 2B 3E 6B CE 6F B6 00 C1 1F CE 72 79 2C 00 EE 52 C0 9D 3A 43 63 E0 5B 7B 3C 80 EE DF EC 30 26 84 49 88 1C 60 32 5B C4 3F ED A3 87 26 38 8E 7C 63 76 C6 40 C5 A9 75 1E 42 B7 0B 66 9C 41 81 8E 94 55 11 5A 46 60 92 2B AF 8A EF 75 2C 47 85 4C D7 2A 9D 18 E4 DC 33 DA A3 FA 47 B4 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 1E 4A 7A 11 A7 4E 0B C7 5D 08 8D B4 EF CC 8B 53 2C EC 97 F3 FC 7B 0D 66 C3 D8 A7 41 92 47 8A 3E D5 D2 7A F2 47 35 C8 01 69 D1 22 AD 83 EF D8 66 16 F0 30 | 86 35 F4 40 93 DF 1A 60 DF 2C AA 2C 9F CC 40 59 B8 7D DD 8F D2 7D 3F 18 EB 92 69 48 A0 AD 84 00 24 B0 81 63 89 E4 67 2C F2 90 9A F0 82 6E 90 CD F4 BA 17 17 55 F5 E5 81 0F 79 28 F6 18 4E 35 31 34 30 31 30 32 1B 00 00 01 00 03 13 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 66 00 00 F5 8E 80 A7 B6 9B C5 EB D0 9C F0 FE 91 72 96 B9 F4 8D 40 C7 39 37 61 7E 36 27 FC 7C D8 0B 0C AB 46 12 89 1A AC 0E 58 55 B3 5A 21 F7 09 E0 8A BB D8 E3 9D 40 63 FF 3F C9 0F F0 76 29 E0 85 57 D8 FF BE 82 D4 CB 65 CC 91 8D 4A 7B E6 D2 F6 3D 62 C5 F3 0B 93 71 F8 8F 38 5A DC C8 0F 29 FE 1D 4F 4A CA 12 83 5D EE CB CA D1 DD 48 70 BA B1 09 76 A7 BB 71 0C 41 C4 59 F8 36 A6 0F 03 B4 EC D3 F1 E7 1A C4 75 78 65 6A 3B 7F 01 4A 43 71 E5 D1 41 06 0D AF 20 C5 5C DB AB 9E B5 D4 DF 78 59 CC 5C 1F 6B 50 9E 90 C8 3F EF 65 47 6A 41 71 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 08 00 00 00 78 9A 0E 83 81 A3 79 9B 76 95 D0 BA 32 84 E7 32 7F AD A4 57 CC 16 9E F5 50 CE 7D 0B 73 2C 86 D1 E9 C4 21 54 2B 7D C9 82 0B 76 8C 2A D6 B6 2E 05 BA 51 17 D9 31 | 86 35 F4 40 93 DF 1A 60 B4 43 7E 48 E7 88 93 12 19 BE A5 B1 A0 25 40 1D 61 7E 4D 9E F7 03 49 47 47 C6 BA E7 12 9B 0D 49 AA 5B 97 B4 2D D4 B2 75 FE 13 91 10 4B 77 20 4E 0F 79 28 F7 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 12 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 66 00 00 4D 5E 80 A7 C9 C7 A8 29 82 40 42 49 6B 99 F4 3E DF 49 FE FE 97 B2 E3 C0 90 3E 03 3D 86 F2 CF 50 90 EB 0E 22 3E DA 32 B3 24 2B 08 6B FF 81 1C 80 90 AC CC 44 A4 B2 5C 65 34 F3 43 D2 8D 62 C8 43 79 4C 7D DE 97 34 2D 64 3B 74 80 CA CE 7E F3 5B 7A 1A A6 14 A3 EB 51 1C 23 57 E4 A2 DE 8B B9 BD 7A 38 EE 2C 5A FA 5D 6C 74 0C 3F A8 4B AF D3 9A C7 5F 3D 76 4E 44 F2 BC 19 A2 7D 97 22 F6 E6 D6 73 E4 B9 6D A0 54 7B BB FC 92 55 87 EF 43 FD B9 B2 5F 5B 1E 17 03 94 53 1D 03 1C 7E 82 4D 51 F4 65 20 A3 C8 6E 2F DD 66 7B 1D E3 8C 35 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 08 00 78 9A 8E 0A 8C 87 48 02 3A 5F 2E 9C 6C 5D 46 08 D6 63 85 E2 B5 15 12 69 5B B5 F4 C8 70 CE 83 8C 56 97 79 DA 8C 9E F8 1A 98 5A 1A 03 D6 E5 8C F8 2A DC 49 F3 32 | 86 35 F4 40 93 DF 1A 60 BF E8 75 D2 2D 59 B5 71 21 ED F3 88 B3 E1 95 42 5A 32 18 2F 2A 3A B4 1A B2 A4 34 AF 3F F2 E9 75 7E E8 3B 8C 02 51 84 60 C8 CD 56 77 3D 9D D1 2E 0F 79 28 F8 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 13 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 67 00 00 87 F2 80 A7 C0 71 FC BC 06 B0 0F 3B 93 77 3A 5D 60 93 28 56 99 66 F3 6D F3 2B D3 09 19 7E E5 08 8D BA E5 6D 7F 13 28 3F CD 63 77 FF FB 3E BD D2 42 AF 94 3E 37 A3 D7 63 68 0E A6 5A DE 8C 30 21 1D 99 53 28 A8 A6 F4 33 3B 9C 83 D6 31 FB F3 28 41 60 23 B7 00 9B 28 B3 30 94 35 EC 58 A8 BF ED BE 22 B1 CE 4E 2F 74 F1 C4 36 F2 BD CC 04 2B 8C 8B D0 AC A6 C3 80 4F 63 27 9E A3 B4 B5 44 21 68 CF 6C A7 B6 71 81 34 5D 77 9F 66 35 07 E1 26 3B D7 0D DF D3 88 0E D6 3A E0 46 BB 51 EA BD 50 13 70 82 5B FA C7 FE 2F 3A 19 19 E7 E4 29 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A F2 C4 6B FF 75 84 34 D7 61 57 96 BD 58 71 C5 00 1B 1C E4 CA FD 21 04 61 70 5D D5 A9 28 46 C7 78 F7 BC FE BF D7 BD 23 7E 3F 9F 72 16 84 7B 00 8A 51 CA 33 | 86 35 F4 40 93 DF 1A 60 30 1E 94 2C EB 38 1F E1 BF 5A 79 D0 97 FF 72 D1 13 36 AB 1F 16 B7 E8 C9 7F 22 D2 ED 91 D9 A0 C2 DF 7A 62 94 58 8B 90 C6 71 25 9F 17 2B 86 E0 79 0F 79 28 F9 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 14 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 67 00 00 2A 99 80 A7 3B FA EC E5 58 34 A3 0C 5C D2 13 1A A2 4D 20 2C A5 2D 2D A4 21 2F 5B F1 E9 82 B1 87 A6 3A 6F 58 63 87 74 A7 1F F6 15 65 4C 19 D5 CB 23 09 8E 08 6E 03 B5 8A A1 34 BB 11 DA E6 68 C5 FA EC 6E 27 D1 5C 38 80 0D 7A 48 09 42 F0 8B F0 72 B0 35 AB DF 76 D5 95 F9 FA 27 D9 09 83 A4 C2 B0 05 32 80 55 01 B1 22 05 E7 AF 69 F3 0A DD F0 E8 D4 AF F4 3E B2 26 CF 4B C8 E4 DA BD F8 00 D1 51 F5 17 AE F7 AD 6E 77 B4 E2 6D 73 F3 92 44 84 13 8E 39 61 B0 63 62 9E 11 F9 18 B4 D8 D9 F7 2B 3E D2 9E E8 1D B3 F8 43 61 ED E5 2E 2C 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A AE 68 EA 63 A2 CB D7 8B 3B EF 74 53 1E BB C0 94 03 D5 85 87 78 A1 0B D6 F3 3D F0 79 CF C3 C7 B1 8E D5 2F A8 33 E0 05 35 52 84 45 54 E0 7A 91 68 C9 C7 34 | 86 35 F4 40 93 DF 1A 60 4C CD DC 84 87 C5 B9 96 2A B5 44 7B 66 A0 D7 15 B0 85 CE D8 E2 CC A4 4E E3 8E 9D B4 12 FE 87 4A 87 33 AE C0 53 87 1F C2 50 31 57 25 52 0F 1C F6 0F 79 28 FA 18 4E 35 31 34 30 31 30 32 1B 00 00 01 00 03 15 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 67 00 00 FB 84 80 A7 96 9E 76 6B 25 99 90 9D 40 AB BC 59 07 0E 95 10 38 12 1A 58 B2 29 F7 F3 B6 5C 20 B1 5C 49 B1 25 4E 87 28 EB 8C B4 C2 CF 07 30 A3 08 E9 4A 3B A8 AD E4 F1 BD 43 3A B2 7D 83 CA 08 F0 D0 8E 16 80 95 C5 10 BB 6F 3C E1 2B 27 1B 5C F2 66 BE C3 06 1B 7E 1A 13 14 F6 74 C7 55 DB 9E 7D C2 F3 F4 30 AF FF 5A 2C 67 D2 35 F0 EE AC B8 09 A9 53 EF 64 68 D3 35 5E E0 1E 1C 7C 92 F8 99 62 DF 81 A7 85 EF CE 54 EE E3 4D 50 B4 D0 75 BA CA 79 95 6F 56 84 6B F0 84 54 11 7C 9D E2 94 CC 12 04 47 AE CD ED 42 B2 35 79 D7 3F EC CC 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 12 00 A7 6F 7F 8E 21 B3 25 FD 5E 93 91 1C 67 97 58 E9 C6 95 7C 10 A9 E3 03 FE 3A A7 A6 C7 61 50 10 82 81 58 D6 F6 AA 3C 7D 52 5C 41 44 DB 9B DE A6 54 35 | 86 35 F4 40 93 DF 1A 60 54 D6 9B 33 15 4B E1 A1 D0 BD 5D 25 DB A6 5F E4 29 3C E1 FC 0A B0 56 51 31 6B CF 1B E3 8A FF 75 77 76 3E F1 9D 0B 0C B6 1A 68 6D 77 07 03 91 81 0F 79 28 FB 18 4E 35 31 34 30 31 30 32 1B 00 00 01 00 03 14 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 67 00 00 5C 5D 80 A7 DF E2 2E 58 FD DA A1 69 68 10 41 C0 37 7F 86 6D F1 6F 16 8E 06 17 EA 5F 7E 7D 80 E5 5C 21 28 8E F8 8D 73 87 A1 A8 FD 36 E6 B0 3D 57 CB DC DA 9A 4A 3D A5 16 6F 46 09 5E 68 63 D8 7D B9 89 3B E3 AB 0F 01 67 E3 1D D6 AD E3 4A F6 12 F2 4E 95 20 0D 0B 84 40 56 03 C9 D5 C5 5A 6A 53 73 D1 3D E8 F2 1E 34 4B 6F A6 C9 03 71 45 C1 9C 53 B1 4F 46 2F 80 E9 46 93 1E 3E 4B 07 55 9F 6B DF 0F F2 37 38 5B B8 7D 47 57 5D 0E AE 0F C1 8C 90 F8 15 45 B0 64 06 FC 4A 53 4E 8D 93 7B 9D 1B 66 42 3D 39 33 8B 29 31 27 F6 E1 7D DB 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A F6 BA 22 5A 26 95 EE 45 6C 37 E2 AB 69 1B 94 4A 47 4A 8D 0E 3F 80 12 A3 6E 82 62 9F FF EC 40 69 DD 5E 16 0D 66 68 6B FE 7D C3 DC 2E 22 7E A8 EE 8E 5A 36 | 86 35 F4 40 93 DF 1A 60 11 6C CB CA 10 A3 10 82 D4 D1 13 D9 9F 26 EE A4 F1 A2 71 12 5D B7 C9 4F 17 00 A0 62 2D 84 78 3D 9E B9 C4 68 39 71 59 54 82 F4 2D 7C 17 74 40 69 0F 79 28 FC 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 13 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 67 00 00 74 78 80 A7 09 C8 59 8C 12 26 DC 79 31 2A 12 3C AF 14 86 49 E9 C4 0B D1 8A F5 C7 72 E6 1D 6B C0 02 0E 8A 5D 76 D8 B6 B3 EE DE 83 BA 1B AA DA 1F A8 B9 FF 16 24 2B B2 10 47 24 F8 92 7D 8E EE 21 1F 38 C0 89 1B 7A 6D 41 1D F6 85 D5 12 ED 3A CF AA 02 92 CF 5D 60 EA 49 C4 9B DF F1 2C 2B EC 05 03 B6 D3 09 E2 D8 B4 E8 38 F7 7A E4 B1 76 EA 78 A1 6E 9A 3B A7 D4 2A F8 5E C3 53 57 F9 43 AC 96 17 A6 CA CA 0E F4 E8 C3 EA A0 F3 99 3C 60 3D 9F 06 0D F3 B5 7F 23 54 98 4F 37 82 4F E0 44 90 63 7C 77 1B 09 72 F8 BF AF AB 68 C8 32 C0 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 00 78 9A 32 0C B5 57 08 EA FF 88 50 0F 07 B3 96 15 DD 6F 4D 43 C8 B3 B1 A2 E5 71 9A 62 43 C4 B6 ED 0C B2 11 C9 BD 6C 2B 4E 73 2E 9A 5A 2C 74 15 F9 CD 58 4F B8 37 | 86 35 F4 40 93 DF 1A 60 6E 78 9A 31 4A 0C 18 20 E7 CF 19 2A 2F BE 98 C1 F7 55 EC D3 4A DD B5 C6 36 3B 9F D8 EC 09 8F C6 2A 8B 3D 92 52 95 32 81 47 CD 16 E2 08 DF E6 A0 0F 79 28 FD 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 14 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 67 00 00 D9 13 80 A7 1B 3F F5 C1 13 15 B8 3C A6 A9 F0 12 26 A6 8D 0C 50 1B 1D BA 62 12 E9 B2 3F 9B 67 4D A2 B8 09 82 96 E6 51 7D 15 DA 1D 6C E7 7A 8C 41 18 AF 60 3E A8 C8 91 95 02 4F D3 90 DA 98 75 3C 7F 1D 9D CF 1D 34 E0 DA 02 40 51 0B 2D C2 79 36 8B 26 D8 E2 62 78 12 15 B6 D1 C3 A9 97 31 58 D3 3D BD 9D 35 94 23 E1 55 00 B6 FA C6 AC FE BE 91 92 17 32 D3 88 F5 0F CB E6 FC 09 8C CC A1 0A 8B 22 17 4D 1F 36 32 0D 75 16 E3 A7 27 74 BD 1E F2 53 B3 63 93 9A 3F CC 2B 2C 82 F3 27 2F 4C F3 32 E8 CF BE 17 87 7B 2D 2F 8B 56 4A FD FB 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 96 6C 26 49 2A 5D 8A A5 F2 E8 53 E4 E7 75 F1 44 C6 62 3D 29 7C AF 4E 7C 45 03 85 71 65 5D CF 4C 7C 7C 98 C1 07 E9 4F 54 FB 95 1B 0B 33 B5 08 9B DB C4 38 | 86 35 F4 40 93 DF 1A 60 22 E8 5D 74 6C 4D 57 CA 3A E2 F6 48 10 21 54 B6 FF 75 1E A2 4C 4F CF 96 DA 17 89 85 92 D5 66 3F AC 60 3E 3E CB 54 C6 4D 62 59 62 FD 4A AF F2 C7 0F 79 28 FE 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 15 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C3 01 1A 67 00 00 56 CF 80 A7 DA 87 8C CD 67 A6 3B 33 C0 0C 4B 5C 79 25 A8 2D 4D B3 7E 4D 41 7C 13 9C 2E 62 18 89 09 98 90 54 86 19 CD 7E CA AC BB 51 35 B9 52 8F 7E 62 8A E2 A7 DA 58 C3 F0 B6 8C B1 88 6D 08 52 59 66 F9 BE D6 E2 12 90 B7 66 56 5D 99 CF 7F E4 36 A1 88 F6 AA 4B 59 1C 23 A2 EE 76 B8 3C 21 E4 4A 73 69 F8 D7 12 A3 1C D7 8D 0A 89 A9 DC 06 4F B9 D4 5E C5 80 9C D9 2B 2C 96 06 52 95 1B DA 33 3A C7 22 1B 9C EF F0 2B 8B 8A D3 8B 87 80 92 0C F9 6D 12 63 18 2C 04 03 44 98 B1 52 7D D0 D7 85 61 49 66 47 C0 F9 53 D6 80 7A 9A 41 AD 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 02 00 00 78 9A 26 F7 00 3F FB 7E 00 2A DF 9A 99 D0 95 1C 0E 4A DE CA A2 88 FB 58 BB D4 BF 3D 3D 36 14 FD 18 A9 2D BF 08 3A F5 64 56 BD 05 9E 48 84 9C 87 86 7D AE 5C 39 | 86 35 F4 40 93 DF 1A 60 EB 0F AE 4C 79 FD 30 4B 31 BC 4E 54 46 70 6D AE 57 0C F1 52 69 44 FB 32 54 9D 65 F3 42 A0 D0 C1 05 27 07 C4 D8 E8 61 74 43 02 11 F0 A8 51 C9 84 0F 79 28 FF 18 4E 35 31 34 30 31 30 32 1B 00 00 01 00 03 15 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C3 01 1A 67 00 00 ED 28 80 A7 48 9B F3 BA 3D EA AA 63 68 76 15 FC 05 49 97 6A 60 8C 5F 1D 62 50 C2 1A 5D 03 CA 3A 24 02 5B 21 7F B5 17 9D 1C F5 01 C0 A9 0E 29 20 51 16 2C E8 23 52 D3 53 C2 29 8B 3B 0E C6 C6 26 44 FA 69 8F 79 ED CC E1 48 0A 8B 54 2B A8 0D C5 62 3E 11 00 03 0C 2E A2 FD 54 AB 41 D6 85 59 28 1D F9 2A EF EF 3D 35 3D 49 E4 81 32 34 5E 6A F7 96 51 34 B4 92 EC 88 5B AE BC 65 81 CF 61 03 70 F2 19 B9 59 DD 25 C9 8B 92 C0 D5 81 21 1E CD 3F 4A ED 9C 53 17 7B 64 B6 D8 0D 7A 93 D1 E2 8E 6A BD 2B F4 79 5A EE 60 C5 15 7E 75 C5 5E 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 3E DE A8 45 5E 39 CD 36 9D 24 F6 8E 8B 59 FA 81 92 41 DB 11 B7 A8 31 6F DE E6 3A A3 7F 09 85 F7 EF E3 2F 0B E6 42 34 2B C1 60 E3 CE D7 86 50 F9 3E 1D 40 | 86 35 F4 40 93 DF 1A 60 95 B9 6C 8E EB 82 A3 26 43 00 05 45 1E 1A AC 83 87 1D 4F D2 72 CF DD 8B 8E E8 9F AB 66 35 F6 29 71 5A AA 15 6F 92 FD 19 7A 3B 64 AC 2E 87 80 33 0F 79 28 D7 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 13 00 00 2D 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 64 00 00 09 7E 80 A7 36 65 93 B7 73 45 B6 91 66 BC CB 3B 86 DC E8 EC E8 BB C0 C0 4D 8E 1E 85 B7 99 9F D5 B0 FC A0 DA F5 3F 37 5F F3 9F 87 22 A5 A8 F8 EB 44 64 93 10 55 FA 19 FA 53 A3 30 C3 44 EF 5A 96 A6 67 B4 C8 10 FC 08 A6 35 AF A1 3A 20 F5 64 73 87 F1 69 D7 64 DB D8 7A 98 CE A0 A6 69 4F E1 DD 95 99 83 44 25 2C EE 9B C6 76 AE 09 6C 43 77 A9 44 43 4B 2B 2F 9A C3 95 2E 75 B2 15 56 64 01 90 59 8A 91 4A A9 C5 FB FB C2 6D C2 96 D0 4A C7 45 25 A3 76 63 56 F4 2B 5F 0F 0B 0D B8 25 10 21 E4 A9 CD 99 B2 91 F4 C6 3F 5A 78 C0 B0 C5 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 0A 28 96 AF A8 8B A7 A3 84 54 53 9C 0C 37 1E 81 D4 9B 8F EB EA FA B8 CA 7C E7 FA 0F A8 E8 F0 98 1B 3F B9 A6 15 39 CD 5C 58 C6 DC 55 FD D6 BC 54 18 CD 41 | 86 35 F4 40 93 DF 1A 60 F1 CC 97 0A C9 F3 4D 50 E0 93 04 0A 12 6E CF F9 02 63 C1 99 F2 72 24 F9 8D B2 17 00 F8 4F 4E 97 9E 6F F9 F3 34 C6 5D 0D 1E CA 4A 01 8B C3 7B AF 0F 79 28 D8 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 13 00 00 2D 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 64 00 00 F0 D2 80 A7 C9 32 5E EA 14 F8 0E 29 C3 81 A7 2B F4 8E 57 67 0A 01 9C 52 65 53 6C 11 5D D2 BB 91 CD 50 13 E6 35 FA 73 56 33 15 4C 66 A1 EB F8 BB 15 B3 5A EB 05 2E 74 DD E3 FC 2E D1 F5 74 38 81 72 F5 5E 8B 37 8F EA 6F 29 23 51 73 4D 68 40 28 F3 47 DF 85 55 13 BD C0 B9 25 0E 5A C1 02 70 D1 E9 AC 14 C5 9E 8A 9C DB A9 2D F2 23 4F B5 B1 38 72 E3 DD 3C AA 11 AC 82 EB C2 AD A6 89 24 CD 95 2B 0E 80 C7 A8 13 1C E2 82 7D 50 7C D9 0B 59 40 7E 64 01 0C 72 BE B4 21 63 69 2A A3 18 E2 C6 A5 72 22 05 EE 68 16 A4 B6 DC 0C 5A 20 B6 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A 1E 5C 3D 54 09 FE B2 D9 62 4F 76 D7 A4 A2 85 CB A2 30 76 C3 69 A6 52 CE 0B 3E 45 26 2D 32 F4 05 8D 61 83 77 BF 97 8F 3B 6C 6C 88 23 86 81 3B 07 41 60 42 | 86 35 F4 40 93 DF 1A 60 39 E1 32 29 E1 67 ED 87 A3 67 02 E1 1A 03 53 C5 1B 29 14 D7 76 1D ED E5 D7 C3 A5 85 CB 50 41 6B 80 8D ED 9F 65 38 02 A2 B4 D8 66 8E 20 D8 56 90 0F 79 28 D9 18 4E 35 31 34 30 31 30 32 1A 00 00 01 00 03 15 00 00 2E 00 07 32 32 FF FF 63 ED 60 02 07 00 F6 F6 C4 01 1A 64 00 00 65 E0 80 A7 40 03 7F 46 85 FE FE 17 4A BA 1E 14 91 4E 4D 92 80 BC 66 37 FA 19 E6 3F 5D D8 E2 F1 3E 16 22 6F 51 6F 1F E5 5D AD 3A B2 82 18 9A 17 ED DA 14 90 63 A8 FD 1F 94 79 CD D0 5E 7A 1B 96 BA D0 0C 2E E7 60 38 F7 47 B2 1E 26 74 CB 74 55 2E AB A7 77 CE 63 D3 E5 92 6A 0D 31 BE E4 84 1B 09 2E 7F 94 11 2E 18 5F EA F9 1B AA C6 ED A3 AF 1D 3D EA 51 42 67 4B 00 29 71 D0 5C 7B 98 E7 77 4B 14 D8 46 B2 25 CA 55 E9 6D B2 B4 02 69 5E 3F 70 F7 A8 2F BF F6 2C 4D 2F 18 F2 9F 65 EF E7 38 C8 8D 2A 6E E5 F1 61 48 14 9B 20 2B DB 76 2C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 78 9A B2 3B C6 A8 08 59 79 EF 78 DE 52 62 88 AC 55 E9 A7 85 9A 63 93 B5 FF 66 8D 60 E8 BE D1 00 E5 BD 21 FF 7D 77 1B 69 BB DA E3 3F 5E C2 57 C9 71 65 27 01 43 | -------------------------------------------------------------------------------- /RS41-SGM/example_raw_data/RS41-SGM_N5140102_Zilog.txt: -------------------------------------------------------------------------------- 1 | 8635f44093df1a6095b96c8eeb82a326430005451e1aac83871d4fd272cfdd8b8ee89fab6635f629715aaa156f92fd197a3b64ac2e8780330f7928d7184e353134303130321a00000100031300002d00073232ffff63ed60020700f6f6c4011a640000097e80a7366593b77345b69166bccb3b86dce8ece8bbc0c04d8e1e85b7999fd5b0fca0daf53f375ff39f8722a5a8f8eb4464931055fa19fa53a330c344ef5a96a667b4c810fc08a635afa13a20f5647387f169d764dbd87a98cea0a6694fe1dd95998344252cee9bc676ae096c4377a944434b2b2f9ac3952e75b21556640190598a914aa9c5fbfbc26dc296d04ac74525a3766356f42b5f0f0b0db8251021e4a9cd99b291f4c63f5a78c0b0cd762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 2 | 8635f44093df1a60f1cc970ac9f34d50e093040a126ecff90263c199f27224f98db21700f84f4e979e6ff9f334c65d0d1eca4a018bc37baf0f7928d8184e353134303130321a00000100031300002d00073232ffff63ed60020700f6f6c4011a640000f0d280a7c9325eea14f80e29c381a72bf48e57670a019c5265536c115dd2bb91cd5013e635fa735633154c66a1ebf8bb15b35aeb052e74dde3fc2ed1f574388172f55e8b378fea6f292351734d684028f347df855513bdc0b9250e5ac10270d1e9ac14c59e8a9cdba92df2234fb5b13872e3dd3caa11ac82ebc2ada68924cd952b0e80c7a8131ce2827d507cd90b59407e64010c72beb42163692aa318e2c6a5722205ee6816a4b6dc0c5a20b6762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 3 | 8635f44093df1a6039e13229e167ed87a36702e11a0353c51b2914d7761dede5d7c3a585cb50416b808ded9f653802a2b4d8668e20d856900f7928d9184e353134303130321a00000100031500002e00073232ffff63ed60020700f6f6c4011a64000065e080a740037f4685fefe174aba1e14914e4d9280bc6637fa19e63f5dd8e2f13e16226f516f1fe55dad3ab282189a17edda149063a8fd1f9479cdd05e7a1b96bad00c2ee76038f747b21e2674cb74552eaba777ce63d3e5926a0d31bee4841b092e7f94112e185feaf91baac6eda3af1d3dea5142674b002971d05c7b98e7774b14d846b225ca55e96db2b402695e3f70f7a82fbff62c4d2f18f29f65efe738c88d2a6ee5f16148149b202bdb762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 4 | 8635f44093df1a60cd1b8bd5fe0a07bea18d18e0287a5138aec6b08539e551995fe772fead8792354b07b4e078a727d15ca732cad419eedb0f7928da184e353134303130321b00000100031500002e00073232ffff63ed60020700f6f6c4011a65000087fd80a7f3857232887850f7dc8c50171f7ebe8a8b01a3caf6a7bb9b774f6b7c3c03da41529e460d168d85dce0d64f1d1f64af44f05146590b0819185a4cf9739b1c86783d9351f4409a1c0463de692cd5f564a8ba14d0cc4a6e9dac8459e16077679eadbc44e6c977bda020eedc6e0269af4f42866ec06d125cfdae86162c1d7a574b7c196e0d3d8947ae26321ed787b4c2c774552fccaa21d5dde790843198f1664fd27c84cc537a92da20f4762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 5 | 8635f44093df1a60bb69545827946678dcce7e233bff331b367e28450faec0628984fdf5c139524c7554eef9ca558a31f2a459486e3a85a30f7928db184e353134303130321b00000100031400002e00073232ffff63ed60020700f6f6c4011a650000202480a7a1d3145d7d19c6b72af0d77c8fbd78ad3c345b64857c7b0f35056d020f9613bd9d66ba1972369064962552c3b3d51e37aa4dcae5fcc440ca547a8c91fd336431659a38683477704c39b1fc4afc4ae0a198ad93a21ee63d1cc6d92afd80109e1e6164d8993218f2719dde465c696112a7c25b9c75bd18f011b28d57f4ac4f9866fb5104b59c37c073fad7d0367ade20d98f84db2309037b91fe6801ad16f54ef8e771c527f789b9cd36762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 6 | 8635f44093df1a60de672bce841a8fa67aa30de5c2bcdfe7fd4971ae26de93758c08cc32fa68bc07b05c169000633df1dca15890ac020a170f7928dc184e353134303130321b00000100031300002e00073232ffff63ed60020700f6f6c4011a650000170880a7ec2f8cf11495543c3b7653e7021b033cfc1734c3a3ed1908160733642683a99bc554994a10ba5e70417124861f9c5b4a4e381f7344a0369ede7d4ff53098f71a9b79396f69b995d6e1970eb17afcd945a3e40f01d540b030359a35e6e69235f295ca70c638ca3529e63a67f320f9af4799869c79c84ea3eb9775626ab88a54838c6450c5938f92e64c85907ea602dd78a73e013f092b65045f8911052349de1afa88a98d34cab2231a762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 7 | 8635f44093df1a6095ab761d00a85adb31c32153de37e8bd4a8a30bd4ee542eda26dd2a8695d9d7b372f8dd22812f7e5101138009820d6190f7928dd184e353134303130321a00000100031200002e00073232ffff63ed60020700f6f6c4011a650000afd880a7be775a4d5663d74a59eac61631d7f58d71eddc5014d9c28c1b0a851698b2bfdf2c8fca04be9d33e01381603274edc8f520fee2ebaa33f7c235372f461cb9b33eee7e7736bf552f81fa6ac39dc80cc7288065479e7a17820e78dbc039baa6743b4af54f4b2107d8785bc130dacbc789c988069d6bdfdaa40674b7cce4fe59eddc3b70a7762ea30499956d39c6b4918e5612960384085fcf0a1950d06344d8fd888c9be5a0bf6727f48e762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 8 | 8635f44093df1a6013b4d5823a24b44c26cd7170ff2ef0d51ad2c3c391273c8b43ff71b546993299892b249be94535be42f4f40b9f7ca8dc0f7928de184e353134303130321a00000100031300002e00073232ffff63ed60020700f6f6c4011a65000061cc80a7b61016d49a13a78221249713fab37af1939b3420a9fa711de0d5c9d671ca9642efcd5cf822c74b4f67a0e52189c09501a8a99eb1e6166d101483a837b58a531e831ee403487172ede11d1d60caa685e99fd09ef8f61a4b149417a1602b19926dedb78e97296cb860c7463f3e330b46a4ce10847483b1a0e6dc2982047018c349a4be5fac8f7f79706aaaaaacae5835271fc04fc120e64bdb8252094a9f5d15e25a12d612742683cd04762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 9 | 8635f44093df1a60455e8c0b35c74273ad17b2054f49ecb182b5bf0109035c29e67d0bf58e253673d4dab2a94f1e5fe971a3d2ae1eb3a4e00f7928df184e353134303130321a00000100031400002e00073232ffff63ed60020700f6f6c4011a650000cca780a7086679d8ff8711b0c83b901612ffef5cc6f302e663ac5d99f0c4d261205045507c82bb5ee14ad45558e62b15cd7e5b23be9b20b7c89f4a31be493223cf7f319f4d63a7a323a551e48ec0d0a1407f25bf6d7a2b4d60d6ccc7b952b7b7e688104502f39cf36ada459fd82e2f6a9475f7bebb3b7496cf842e208a58b2c60baae7842f2aed63adb5e4849ae630dcd4a1207eb5d1b49373d95af098f280478dedab0491385824a5ebeab027762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 10 | 8635f44093df1a60c8a4c9fbd57e9ff274753512726efd96ed72717418a899705f8ec2b5e083b8683d2e09dff3007420c95c7831ca27f7ba0f7928e0184e353134303130321a00000100031500002e00073232ffff63ed60020700f6f6c4011a650000a42080a7a9198405998c7a4a712f768165067dab5671065a5fda5e304e5e14fdab0282dbe42925dd0ddab0cd4f9542075fbfc43418e1bddaeb533f73d29b2db069b5d41e6cd11cb77e7a1165cd23b79657f779769536adb9bccb1b67535f501bcecc5320d9ec1d727f9ab500234514c326359975d2eef2c4dbca11d52b51f8c3321b66fa2f36b56ce984fb5e669c43862a7adc5893f6f3c2f8101821ba2d794db645d101130edaaec4db55863d762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 11 | 8635f44093df1a6091a6812fc0838029380ae89744a90667221104d22e8698a9b6a913d9fcede8b1794fd48e8a0e0b22cc310fc5665270f70f7928e1184e353134303130321b00000100031600002e00073232ffff63ed60020700f6f6c4011a6500001a9e80a7515014c7b4d7ba649406f7f11196c5c1bc070a10ac3f01e2557ae975d114a733361370abf08cfb7d2575bd3400321f3ec37404ef8c53544085a6c0d3915b38917ceebfba4bbf7a63f7b5f1569e722ccb55cb396a067d13c0c70245371bb6a94da2f74cecd674a12c1efe5210c1180f6a01990c25e136fa757967aff31b3193a99bb332d5123b1844e3c3a1a626c085ef4517c12ea9964f7ac6713721ae7ac26f64989a1e1ca413c7fb762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 12 | 8635f44093df1a6022463a542cfeb5db5d09baf7cfbcfb35d17aad33754a7ee4b44fbd7b0661f6759689520b253c6d2ce1bfbad910f6c1850f7928e2184e353134303130321b00000100031500002e00073232ffff63ed60020700f6f6c4011a650000d2e480a7235b8eed9a0c2b6e0ffed9d9351cb9ce1ff699a7a9fea4aa13d7021fbcb81a7e8f0ff3bc69ae2e78669b34cfc237f122c489117ed431b8789e578d567e4c029da0bfd38af3f8a8ff605a97766091eda1efea4322bbb0d896c63a09e30f72a32f7d03e387044d829220b977c54bd33c9fbcfb5f569d96acaf71475d49da7c6baf6e9990b96c197002d1502ae5430f819cda838dd668db1aaeb8572de32f8465acf274c2171ca0650da0762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 13 | 8635f44093df1a608ed56efa35b85eaa8ea5d5e97a3475486f7d5278ae35129c7531a4bad144812568ba56ca54baff6c30206022b2adf3050f7928e3184e353134303130321b00000100031300002e00073232ffff63ed60020700f6f6c4011a6500007cb880a7c0ba257fe3dfcd89eecf7637c41d3d2e0894e90422aa5f4f9e3952066e8151c9bef24d95d596ec10167c99b57ddb18d6080316ac039ebcdf4f9b3afc44902d910f50e9df6e379f6f68003e8babf33034e7cb4042586ba2feb779ce412fff2012e7b94654274a0bec58d430906391f61e2b0ead98b5bc2f0cbc11891e41642be553ad5ec3cb8a1d8e2b6cf05266f3d9aea0efc0e191383f6690f7d4f5fe8f7dcdfb154b4f0c76b9f08c762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 14 | 8635f44093df1a60281a4c91e172f1b1afd1b6b176805c10607720b0826f699ebf5a41694e18bd37e279f204cacc7de295919a1f85ab19410f7928e4184e353134303130321a00000100031300002e00073232ffff63ed60020700f6f6c4011a6500005d1880a7317e2c2ac89271599916aad8b78cfffe96c95499f433a26ec2cf64b9a23a5c68970b54bf7d1abe8cdcdefabe966044e493c6966f99f65ccec25e67d4e0788375a063ec7ebde45ba8895d523633ecc9bee1f2c650693c56f25bed74ed6839f7be97071c3648ba7442d98ffb6659e316258963fb784bf4894bca5b24973cb9da91970cf118e324d6920b582a06baf013669d8a3dccc767d5a1f1e2daaf13aafaaac36fd4bf34ab9e56c5762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 15 | 8635f44093df1a60aa06dbfb6cf8b7cdf0ff371a6a8edb71f8254aace92193c5a461f00b53d5a223d2b01819bf020c0b7d8b8646961ea9d50f7928e5184e353134303130321a00000100031300002e00073232ffff63ed60020700f6f6c4011a650000f9f680a748721a76668fe3ca7e0fa8ccc7ffabb3de4f38f2bfd351e17c74c1dda40c25b58e40201ef22d05aef6695f00f0395e3f1bed708790d61e90db1f2dc3a81109da6edb2aaff78b1726145bb92beb894b1a040fff4e47c50b0741f1a739a0f7627116dde1e5051fcf1c3bfb4c3e39d629239f1b4b80e444dda9c53d8dd3c536f859f769228f880b54c6eee6c704fa881b5662eb02b2350bd1ace072232868f36d405e17223c88dee6743a762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 16 | 8635f44093df1a604935232a26d6c8b1027de39e0fb5acee2372d16de6b867808416fa29f0b58c9a2950daef2d77a4e4a8dfc38f5e26c1ca0f7928e6184e353134303130321a00000100031500002e00073232ffff63ed60020700f6f6c4011a6500003e6780a7b5f5623de2049472ecdef7f8516cba34e936db3d8a1697ab40134a70ebc8d5b41cf7bd91b0e64d935e28873967bab6bf273e867193270b2dae759e2d52bab4fdd7a5d5b5ca8b3cbd3094f6f8d5ebf36cb5ddcf4a808f17906a9661f6877f78de79cac26bfdd154a63f81a2402ec4dc86a1ad76e391c32619fce1569d3cbde82190bb091b6ce9cbed7cb231a7f19ab7b1c45a2153fa40e8202a0cbb00352e1866e9bed8bfafa2debfab762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 17 | 8635f44093df1a601027744dabaaa0ac6f8a5173d3b967d57e48af03ccd96d5e6ee3be99cc3155b574f1b5ee88b63c6033f13987141f7fc20f7928e7184e353134303130321b00000100031500002e00073232ffff63ed60020700f6f6c4011a650000858080a7ca1a9138153874a21267e63adc78c3b1b12bec347ef85d4e238e528c9382090f5e6860252eaf8b39c8c91cf7a90815c9aa91b8dbfcbd8a1853b7e4954058b00757a25224eebb73f4e1676cdb57e49af393278dd3e42dba130cbfc185372612e64d246121fe77557c858c3337ce753c8df47e152e2547b3dca9d3b6fd779931b782762a0cef2213b2cf77d0d928f9995da9701d31da377aeee7367932792aef383d7f577baf248f09d9762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 18 | 8635f44093df1a60dae38170fbad920afb9a18311fe7e26453c6aa241d8f1a66eebf8bb6658d8301c9b341f5cceaae33a09c70939e5559740f7928e8184e353134303130321b00000100031400002e00073232ffff63ed60020700f6f6c4011a6500007f1b80a723ac30c162f7c3c48efc3f04e7d530ed8a7d7ec54e62fe1db7e75a8d0912586ccae4659323e3d9240d0f2ffa4882a7db42059fc489d359e03afb3e5afd68901b0a7d0d0db6df75688f6452f8bb9564e1f3e1e6c897e0b0e3b81cb07eb5547a9219738e8b42a060ec23c631d9e39f04f0dcb8575bd84e1b21443d63daa8924674d87b6c6e85fb362122a78e8c0a489e369a0e5e975c8648d9500f38ef987fb0e4fd6527b7241313ae63762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 19 | 8635f44093df1a6062d71d93fb543066f4ccb2df5bf345ab681c3355a7f6b0a038e84dc5942959d8ed1595ce91625fa2737f62890aa617dc0f7928e9184e353134303130321b00000100031300002e00073232ffff63ed60020700f6f6c4011a660000822980a7ee741919f434beca00965678b1f4dffd31fe690b0a362bb86276da3086cb97a41934ca9d8f03d245e1eea826f079413c5377933f54c5b462e62dc7551ac3584fbc2cfb9a3c11c765b56c10b32e0f521932c8c3c9821955ff704e4027fe33b9317046d99cca560220a8ca86caa099cb0839c796b8e5f33413cbecaa77db0f022c31a5207ccf13f5fea6d2c2f588eeb081b0eaa42f0e6215cdb7b4982bd1f78b57708e3df8da6e6154b6762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 20 | 8635f44093df1a606747419c74827d8607bd036e5b9e9aea0dcc714c8e29a3de55e193afaee12d7482bea4f48679cc0186ce106e16b3d4490f7928ea184e353134303130321a00000100031200002e00073232ffff63ed60020700f6f6c4011a660000533480a71a0bc6e4c34131d99ecdfaf1120236bd4dbb8b9c1a34cd46dfbe5e335e08fd07b150a2e00a6b5e118b782bde24c41e90f310adb849ef47709ae25e890545c1f233f5e04918588c34f391096d348ee4081758281009d8a7f727f8fe15a4cd3916548e1cc3eab24c834c6f42eb49ccc67e47bbf7d29bf8eb2aa441a1ebc72d8dcb3cafcc48612c146bb7f356cc37c6209bb6f7c94906399de38c98f6ee8c60badd7d3aec9c341c07ed5f762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 21 | 8635f44093df1a6029337be4b375758728900129e23088b4d43f9f2fb08bc55a831e1999b71fa21398aa80261877c96c02cc1870a8a64cfd0f7928eb184e353134303130321a00000100031300002e00073232ffff63ed60020700f6f6c4011a660000f4ed80a78354572a9f87944285152cf23e7c1f34145b966cafb3abdd8729178ef6c3ddb810940cf1149e73d7b32b17f8578ec11d39fce70345888a2df788fa8d7aa08a84a3f615266190f6ef77f8753fe392a009bf82e12dd76b232f9e3fb5a86711ae046869ccbb6e22751b6a1d5d1613b8e0a91dc8c1210407bba3f81c4812e6eb8c7d2c1a951d1d173980526cb523d4f558f77b0bc209e38b4326ff7b91d6aa14ae48165debfc9fa4f86fbe762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 22 | 8635f44093df1a60f0faf95c0b453fdfbfa2d39b92d6b8bd1758d35a7af4ac474f7d104c0dd4cf9e8b56bd68c39c63571a65742209d1f1cb0f7928ec184e353134303130321a00000100031400002e00073232ffff63ed60020700f6f6c4011a660000c3c180a7cf401182ee7fd0053503b0d5744d923c3952442edf8b5bacc9fc1cd1d231464d49d9ebf859619968c5ac6d2415b90775afb87922cb0a86a5993665da2004b2754673e9563174350358580df959f223c820d33db44cfc236420c2c7e6df466c7b82aaf514737d0991340d8f6331439609d02edc6f796182578508b1dddd1d951d76ac12f9a228709e21d01a57bab098d4545060ae548c97acb361924eb75e4dc460df914d3e2cb2846e762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 23 | 8635f44093df1a606ebcdbf7ab805a792e4d563a8c038eb4b9319aa62c343212bc46fd0673c83c3066dbe87723bbfe47bb17d281ee1418770f7928ed184e353134303130321a00000100031500002e00073232ffff63ed60020700f6f6c4011a660000641880a790190885873835a93f669130bfc733308466dd2aa8b7498c908e3b024e393cdacc3ef7456339e900df9ac2d3f0c3dab70cbf442d355ec26426890e2d8f4f49a862469ecaf2e4003450270e7a2a7b0111f8656e9e37401a04f45816d8ea658bfee934cd1c023a3fc53bcf85ae74e433803f94eebbb5d3da0dd0594580c276f28c200ca3120103b5bcfb9d682d040e817db952bd3e839121a6e2b8bbebee8063aebdf2fd8ceb87bf86c9762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 24 | 8635f44093df1a609432fed05e7207e1a88d26d802086ec8eb3f8bb41798c15245ffa5bab86e1a6e82de0c63acfa09196716eeac054d1d6a0f7928ee184e353134303130321b00000100031600002e00073232ffff63ed60020700f6f6c4011a660000b36b80a7a215432c299d2cd63c6468c202599bda4d3e419579fbebe44c267c01112bf6163b0f6cdd4c88316074fb0a85057ca21ecfd7519f02e8303569ef9d03129388e94fedebb344729b0f04a04e3d770e597ae4537d3c2847931f6690f5ed980dc8d247c21d024d3033791a9fbc5c3c4327d07fab0afa0cb70277dedad59faf57e05b2be9a3ad0fc6009cabcaf552a651656f2d246ea03cc20e371d875d4d572e0f395b3216a0f872f6d3c6762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 25 | 8635f44093df1a6007db06c30d6a7bc3fb48078a59ebe584cb1439eb220abafcad20e88d042c1d5e89a53d31303f1db8d5421877699adc9d0f7928ef184e353134303130321b00000100031500002e00073232ffff63ed60020700f6f6c4011a66000012dc80a75832389fa5df7a12b4b1d6198b38c6d0bee136c33379b958a8df81921952ac64eb7f5fbcb9d95f84a89b3a7227e71330c661fe0891adabfcfc220db95c248e47a737625496845add7cbebd0b32446b2df3c349eedc61628f350f25d3a3f5edc6b75e19d4361641e7bf6f8ba8848dd78d59f686bed12b2fe6a272641e24dae3c45d76d41b9848b943cafc26a17bc3060b59099f30c4c86919d967d87c49521385f3f086455ffe6ebda2762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 26 | 8635f44093df1a6009b082bfe3695f77da7a01809ad42e144f5618262955c2fd0ab9fdab45ad5e19667b094582236da7ed4ae4f1646f80630f7928f0184e353134303130321b00000100031300002e00073232ffff63ed60020700f6f6c4011a6600006fc980a7a6c7341f82b05a16b039f22efcbe08090ef59d2b1568702926d1d52b1462148f3bc90e51655a0650b13cdbf77c347ffced9a88ef236e5463316750b6188e5ce52ee268b06be0fd45c56ca63081438534646e26b083421aa2b3a6bb2f270fac420009f083b5e1f12ed728c8f04a999af5ea2f703b7d40b1406c893b0b48071f65b47d9aec9962698d8f3bf27c4e4ca3d03ead770a4941749f8bb5cf3fcafbd514981940505e09970d2f762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 27 | 8635f44093df1a608ea699b6f0dd53c1ba26052751aa75198f6b9f332ac9625bd52269396f7e77090a56fe63dd650ac0d057fdcad4c2c27d0f7928f1184e353134303130321a00000100031300002e00073232ffff63ed60020700f6f6c4011a660000d42e80a7339c7b1002995639a113d2e911f112191e4d9562a4891532a07f082f29ff0a807729e395d3cd973cddc3910b644dac6f0a1e89a80e00556d969b9f49abf3beef4fb18fbaab7d24d746e90827ea220eacd953862dc0d0514b68ae0f9ef896a41a55650648b88305705d35861430ee276499e32db2ffc813a844db6f267cb177c4dffb1310820bfdf80674345a276b801df208bbeb1a7134abf25874ab76ce4f54ec28290ee1d4428000762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 28 | 8635f44093df1a6075fe49074e5f503d0df018ba3757a9fd52ab86af26f46d4155c69ae21f85a2acac0ce6dcbf91355767f3713003a918430f7928f2184e353134303130321a00000100031400002e00073232ffff63ed60020700f6f6c4011a660000108880a7d8e72808cda91e284be6137a38f9bf83e293b230480039e9210877111f7c440727421c3effb63212e2f5810ca7a389b3e2bf8aa4a6e84d5bd194f430edb8c93caa7fcdd60c5ea3419ee2250d1f9a6d30698025fc5fe5203996e882a9b5c7bb52fb4d72e6db867780023956d8dddc8f6883438f9a7e3aea36cc0d4ed34322f8fe5e26126477a43205f59df22f9c89d6869db622cd57dff2d02984e5f7159e355fb39b5272f3b3e20bb9762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 29 | 8635f44093df1a6023159e507dbf0d184b4a426742c7a5a3408bb9de062505d6cba1ca353a4e7763f6dd3890840e2cd06586a1f95e9c79580f7928f3184e353134303130321a00000100031500002e00073232ffff63ed60020700f6f6c4011a660000b75180a7d2847a1317030f328b72ea0bf17270599ec4940a7a22db9d7b17fd2273f3ae53fbafd0e92a08dde8ef63dd4dd6c72dd1a7fbdb91af02d5121074c57d8869c845ba7c72ee30fdafa5da42fa1d9f678f7f8f56e93230143bdba8f63f4d1b6877e82c7d03b0aa95298f4356bb7fc4e30dbdd0c8abe69bb1dc47b2d850eb27c41fbd3ac7e601b88d9ad58c8d92dd274e2e0ea06523b4bd0a3e4e2396a3b6c03da1f45246e3c89f8d3a8672762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 30 | 8635f44093df1a6097f191e86704f1385fa119c4d478b9617c9cf7109c1f08cbdcfcf3c94cbc3b3ca9fe0dbfc229376e8427cb6f49c2ba0a0f7928f4184e353134303130321b00000100031500002e00073232ffff63ed60020700f6f6c4011a66000096f180a7972afba75aa9f4a1f210f6142d10c7fdff2416f7487a0016df625c3b9da931e344d3c4cef26266a5dbb261dffe927622458ea1b0426f54d6d1128710b016ee59bad4af53b6c61abb156452d9c0dcb775a66511a6199a2a81ae500b70b5389159d78a20c48ec1c3c27036559bdaec5900fdb5e67996a5a8b6830c96f1c7fe0b90bcc0408a8245b518adb6ccc74656fb439b85d7c64f2e182fca549bf77c9915ec6d450e203678ba98f2762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 31 | 8635f44093df1a60a2a71e854396cdc4b05b977bbcdf45cbb307576462fb4ebe80c49bb3b1d519ced966c75c91a17631e38d9ddc0b3263a00f7928f5184e353134303130321b00000100031400002e00073232ffff63ed60020700f6f6c4011a660000312880a7d512610eca3ffab23d48329e309a7fca2ac24f85510627ac67975a0ec085cbcd0a2613f029e12e626550f076ab3d96b39f0fa30a9f1f8ab95032b79612e5c6c4d176814c164f2c570a7d6a3f86392b3e6bce6fb600c11fce72792c00ee52c09d3a4363e05b7b3c80eedfec30268449881c60325bc43feda38726388e7c6376c640c5a9751e42b70b669c41818e9455115a4660922baf8aef752c47854cd72a9d18e4dc33daa3fa47b4762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 32 | 8635f44093df1a60df2caa2c9fcc4059b87ddd8fd27d3f18eb926948a0ad840024b0816389e4672cf2909af0826e90cdf4ba171755f5e5810f7928f6184e353134303130321b00000100031300002e00073232ffff63ed60020700f6f6c4011a660000f58e80a7b69bc5ebd09cf0fe917296b9f48d40c73937617e3627fc7cd80b0cab4612891aac0e5855b35a21f709e08abbd8e39d4063ff3fc90ff07629e08557d8ffbe82d4cb65cc918d4a7be6d2f63d62c5f30b9371f88f385adcc80f29fe1d4f4aca12835deecbcad1dd4870bab10976a7bb710c41c459f836a60f03a4ecd3f1e71ac47578656a3b7f014a4371e5d141060daf20c55cdbab9eb5d4df7859cc5c1f6b509e90c83fef65476a4171762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 33 | 8635f44093df1a60b4437e48e788931219bea5b1a225401d617e4d9ef703494747c6bae7129b0d49aa5b97b42dd4b275fe1391104b77204e0f7928f7184e353134303130321a00000100031200002e00073232ffff63ed60020700f6f6c4011a6600004d5e80a7c9c7a829824042496b99f43edf49fefe97b2e3c0903e033d86f2cf5090eb0e223eda32b3242b086bff811c8090accc44a4b25c6534f343d28d62c843794c7dde97342d643b7480cace7ef35b7a1aa614a3eb511c2357e4a2de8bb9bd7a38ee2c5afa5d6c740c3fa84bafd39ac75f3d764e44f2bc19a27d9722f6e6d673e4b96da0547bbbfc925587ef43fdb9b25f5b1e170394531d031c7e824d51f46520a3c86e2fdd667b1de38c35762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 34 | 8635f44093df1a60bfe875d22d59b57121edf388b3e195425a32182f2a3ab41ab2a434af3ff2e9757ee83b8c02518460c8cd56773d9dd12e0f7928f8184e353134303130321a00000100031300002e00073232ffff63ed60020700f6f6c4011a67000087f280a7c071fcbc06b00f3b93773a5d609328569966f36df32bd309197ee5088dbae56d7f13283fcd6377fffb3ebdd242af943e37a3d763680ea65ade8c30211d995328a8a6f4333b9c83d631fbf328416023b7009b28b3309435ec58a8bfedbe22b1ce4e2f74f1c436f2bdcc042b8c8bd0aca6c3804f63279ea3b4b5442168cf6ca7b67181345d779f663507e1263bd70ddfd3880ed63ae046bb51eabd501370825bfac7fe2f3a1919e7e429762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 35 | 8635f44093df1a60301e942ceb381fe1bf5a79d097ff72d11336ab1f16b7e8c97f22d2ed91d9a0c2df7a6294588b90c671259f172b86e0790f7928f9184e353134303130321a00000100031400002e00073232ffff63ed60020700f6f6c4011a6700002a9980a73bfaece55834a30c5cd2131aa24d202ca52d2da4212f5bf1e982b187a63a6f58638774a71ff615654c19d5cb23098e086e03b58aa134bb11dae668c5faec6e27d15c38800d7a480942f08bf072b035abdf76d595f9fa27d90983a4c2b00532805501b12205e7af69f30addf0e8d4aff47eb226cf4bc8e4dabdf800d151f517aef7ad6e77b4e26d73f3924484138e3961b063629e11f918b4d8d9f72b3ed29ee81db3f84361ede52e2c762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 36 | 8635f44093df1a604ccddc8487c5b9962ab5447b66a0d715b085ced8e2cca44ee38e9db412fe874a8733aec053871fc250315725520f1cf60f7928fa184e353134303130321b00000100031500002e00073232ffff63ed60020700f6f6c4011a670000fb8480a7969e766b2599909d40abbc59070e951038121a58b229f7f3b65c20b15c49b1254e8728eb8cb4c2cf0730a308e94a3ba8ade4f1bd433ab27d83ca08f0d08e168095c510bb6f3ce12b271b5cf266bec3061b7e1a1314f674c755db9e7dc2f3f430afff5a2c67d235f0eeacb809a953ef6468d3355ee01e1c7c92f89962df81a785efce54eee34d50b4d075baca79956f56846bf08454117c9de294cc120447aecded42b23579d73feccc762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 37 | 8635f44093df1a6054d69b33154be1a1d0bd5d25dba65fe4293ce1fc0ab05651316bcf1be38aff7577763ef19d0b0cb61a686d77070391810f7928fb184e353134303130321b00000100031400002e00073232ffff63ed60020700f6f6c4011a6700005c5d80a7dfe22e58fddaa169681041c0377f866df16f168e0617ea5f7e7d80e55c21288ef88d7387a1a8fd36e6b03d57cbdcda9a4a3da5166f46095e6863d87db9893be3ab0f0167e31dd6ade34af612f24e95200d0b84405603c9d5c55a6a5373d13de8f21e344b6fa6c9037145c19c53b14f462f80e946931e3e4b07559f6bdf0ff237385bb87d47575d0eae0fc18c90f81545b06406fc4a534e8d937b9d1b66423d39338b293127f6e17ddb762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 38 | 8635f44093df1a60116ccbca10a31082d4d113d99f26eea4f1a271125db7c94f1700a0622d84783d9eb9c4683971595482f42d7c177440690f7928fc184e353134303130321a00000100031300002e00073232ffff63ed60020700f6f6c4011a670000747880a709c8598c1226dc79312a123caf148649e9c40bd18af5c772e61d6bc0020e8a5d76d8b6b3eede83ba1baada1fa8b9ff16242bb2104724f8927d8eee211f38c0891b7a6d411df685d512ed3acfaa0292cf5d60ea49c49bdff12c2bec0503b6d309e2d8b4e838f77ae4b176ea78a16e9a3ba7d42af85ec35357f943ac9617a6caca0ef4e8c3eaa0f3993c603d9f060df3b57f2354984f37824fe04490637c771b0972f8bfafab68c832c0762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 39 | 8635f44093df1a606e789a314a0c1820e7cf192a2fbe98c1f755ecd34addb5c6363b9fd8ec098fc62a8b3d925295328147cd16e208dfe6a00f7928fd184e353134303130321a00000100031400002e00073232ffff63ed60020700f6f6c4011a670000d91380a71b3ff5c11315b83ca6a9f01226a68d0c501b1dba6212e9b23f9b674da2b8098296e6517d15da1d6ce77a8c4118af603ea8c89195024fd390da98753c7f1d9dcf1d34e0da0240510b2dc279368b26d8e262781215b6d1c3a9973158d33dbd9d359423e15500b6fac6acfebe91921732d388f50fcbe6fc098ccca10a8b22174d1f36320d7516e3a72774bd1ef253b363939a3fcc2b2c82f3272f4cf332e8cfbe17877b2d2f8b564afdfb762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 40 | 8635f44093df1a6022e85d746c4557ca3ae2f648102154b6ff751ea24c4fcf96da17898592d5663fac603e3ecb54c64d625962fd4aaff2c70f7928fe184e353134303130321a00000100031500002e00073232ffff63ed60020700f6f6c3011a67000056cf80a7da878ccd67a63b33c00c4b5c7925a82d4db37e4d417c139c2e625889099890548619cd7ecaacbb5135b9528f7e628ae2a7da58c3f0b68cb1886d08525966b9bed6e21290b766565d99cf7fe436a188f6aa4b591c23a2ee76b83c21e44a7369f8d712a31cd78d0aa9a9dc064fb9d45ec5809cd92b2c960652951bda333ac7221b9ceff02b8b8ad38b8780920cf96d1263182c04034498b1527dd0d78561496647c0f953d6807a9a41ad762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a 41 | 8635f44093df1a60eb0fae4c79fd304b31bc4e5446706dae570cf1526944fb32549d65f342a0d0c1052707c4d8e86174430211f0a851c8840f7928ff184e353134303130321b00000100031500002e00073232ffff63ed60020700f6f6c3011a670000ed2880a7489bf3ba3deaae63687615fc0549976a608c5f1d6250c21a5d03ca3a24025b217fb5179d1cf501c0a90e292051162ce82352d353c2298b3b0ec6c62644fa698f79edcce1480a8b542ba80dc5623e1100030c2ea2fd54ab41d68559281df92aefef3d353d49e48132345e6af7b65134b492ec885baebc6581cf610370f219b959dd25c98b92c0d581211ecd3f4aed9c53177b64b6d80d7a93d1e28e6abd2bf4795aee60c5157e75c55e762c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000789a -------------------------------------------------------------------------------- /RS41-SGP+XDATA/README.md: -------------------------------------------------------------------------------- 1 | # RS41-SGP+XDATA 2 | The XDATA Frame format is used when additional sensors, such as OIF411 Ozone Interface Board, are attached to the sonde. 3 | An extended length frame format with a length of 518 Bytes is used in this case. The main frame structure stays the same, just an additional 7E-XDATA block is present. The extended length frame is indicated by the [0x038]-FRAMETYPE byte beeing `0xF0` instead of `0x0F` 4 | 5 | A Frame of a RS41-SGP looks like the following 6 | 7 | ![rs41-sgp_frame](__used_asset__/pic_rs41-sgp_frame.png?raw=true "rs41-sgp_frame") 8 | 9 | Only the [7E-XDATA](#7E-XDATA) block is to be discussed here. For all other blocks, please refer to the RS41-SGP subfolder. 10 | 11 | There is also a quick introduction to [XDATA](#XDATA) and the [OIF411 message format](#OIF411-message-format). 12 | 13 | ## XDATA 14 | XDATA is a standardized way of connecting external instruments to radiosondes and is supported by many manufactures. It was originally developed by Jim Wendell (bobasaurus) at [NOAA](https://www.esrl.noaa.gov/gmd/ozwv/wvap/sw.html). 15 | 16 | Data is sent to the sonde via UART (3.3 V/9.6 kBaud). Multiple instruments can be daisychained, with the first instrument in the chain appending the messages of the following instruments at it's message and so on. The maximum message length for the whole chain is not standardized and depenps on the type of radiosonde used. As you can see, there's quite some space in the RS41 extended frame. 17 | 18 | A XDATA message has the form `"xdata=IDNODATA"` with `"xdata="` being the header, `"ID"` beeing the unique instrument ID assigned by NOAA, `"NO"` the position of the instrument in the chain and `"DATA"` the payload data. `"ID"`, `"NO"` and `"DATA"` only shall be ASCII characters 0-9,A-F (ASCII encoded Hex). 19 | 20 | ## OIF411 message format 21 | Most often, the XDATA interface on the RS41 is used to connect an OIF411 ozone interface board from Vaisala. It has two tranmission modes. The Measurement Data is what's normally send out, but once a minute the ID Data is send out instead. 22 | 23 | ### Measurement Data 24 | The Measurement Data is 20 ASCII chars long. 25 | 26 | | ASCII start char | datatype | example data | decoded | function | 27 | | --- | --- | --- | --- | --- | 28 | | `0` | uint8 | `0x05` | 5 | Instrument Type | 29 | | `2` | uint8 | `0x01` | 1 | Daisychain Number | 30 | | `4` | MSB sign bit + uint15 | `0x08CA` | 22.50 °C | Ozone Pump Temperature * 0.01 °C | 31 | | `8` | uint20 | `0x186A0` | 10.0000 uA | Ozone Current \* 100 nA | 32 | | `13` | uint8 | `0x75` | 11.7 V | Battery Voltage \* 0.1 V | 33 | | `15` | uint12 | `0x0B6` | 182 mA | Ozone Pump Current \* 1 mA | 34 | | `18` | uint8 | `0x37` | 5.5 V | External Voltage \* 0.1 V | 35 | 36 | ### ID Data 37 | The Measurement Data is 21 ASCII chars long. 38 | 39 | | ASCII start char | datatype | example data | decoded | function | 40 | | --- | --- | --- | --- | --- | 41 | | `0` | uint8 | `0x05` | 5 | Instrument Type | 42 | | `2` | uint8 | `0x01` | 1 | Daisychain Number | 43 | | `4` | ASCII chars | `G1234567` | G1234567 | OIF411 Serial Number | 44 | | `12` | uint16 | `0x0001` | no calibration | Diagnostic Word (bit 0 set = no calibration) | 45 | | `16` | uint16 | `000A` | 0.1 | Software Version /10 | 46 | | `20` | ASCII char | `I` | I | ID Data Identifier | 47 | 48 | ## 7E-XDATA 49 | The XDATA block has a variable length and contains the ASCII characters received via XDATA, without the "xdata=" preamble. If more than one XDATA instrument is present, there can be multiple `7E-XDATA` blocks in one frame (the `76-EMPTY` block would shrink accordingly). 50 | 51 | ## Subframe 52 | There are no differences known between the regular subframe and the subframe with XDATA attached. There is no possibiltiy for XDATA instruments to send our there calibration values via the subframe. 53 | -------------------------------------------------------------------------------- /RS41-SGP+XDATA/__used_asset__/pic_rs41-sgp_frame.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bazjo/RS41_Decoding/702553b114b13370afb4a7d86119b03fb94273b1/RS41-SGP+XDATA/__used_asset__/pic_rs41-sgp_frame.png -------------------------------------------------------------------------------- /RS41-SGP/README.md: -------------------------------------------------------------------------------- 1 | # RS41-SGP 2 | The RS41-SGP is the sonde most often used in germany, and as it's frame has very much the same structure as the one of the -SG, the main examination shall be conducted only here. 3 | 4 | A Frame of a RS41-SGP looks like the following 5 | 6 | ![rs41-sgp_frame](__used_asset__/pic_rs41-sgp_frame.png?raw=true "rs41-sgp_frame") 7 | 8 | There are six different blocks inside this frame: 9 | 1. [79-STATUS](#79-STATUS) 10 | 2. [7A-MEAS](#7A-MEAS) 11 | 3. [7C-GPSINFO](#7C-GPSINFO) 12 | 4. [7D-GPSRAW](#7D-GPSRAW) 13 | 5. [7B-GPSPOS](#7B-GPSPOS) 14 | 6. [76-EMPTY](#76-EMPTY) 15 | 16 | Also there an examination of the [subframe](#Subframe). 17 | 18 | ## 79-STATUS 19 | The 79-STATUS block includes such things as Frame#, Serial and battery voltage, but also there are some bytes whose purpose is not known at this time. Any guesses are welcome. 20 | 21 | Also there is the Subframe, who is transmitted over 51 frames in pieces of 16 bytes, including such things as calibration values. The Subframe is discussed [further down](#subframe). The part of the subframe, which is currently transmitted is indicated by the Subframe# 22 | 23 | | address | datatype | example data | decoded | function | 24 | | --- | --- | --- | --- | --- | 25 | | `[0x00]` | uint16 | `0x031E` | 7683 | Frame# | 26 | | `[0x02]` | char[8] | `0x50 0x32 0x37 0x34 0x30 0x33 0x38 0x37` | P2740387 | Serial | 27 | | `[0x0A]` | uint8 | `0x1A` | 2.6 V | battery voltage * 10 | 28 | | `[0x0B]` | uint16 | `0x0000` | | Bit field. Purpose unknown | 29 | | `[0x0D]` | uint16 | `0x0003` | In flight mode, descending | Bit field.
**Bit 0**: 0=start phase, 1=flight mode
**Bit 1**: 0=ascent, 1=descent
**Bit 12**: 0=VBAT ok, 1=VBAT too low
Other bits t.b.d. | 30 | | `[0x0F]` | uint8 | `0x00` | Standard sonde | Crypto Mode.
**0**=Standard RS41-SG(P)
**1,2**=RS41-SGM unencrypted, sends all three GPS blocks (`7B-GPSPOS`, `7C-GPSINFO`, `7D-GPSRAW`), `7F-MEASSHORT` replaces `7A-MEAS`
**3,4**=RS41-SGM encrypted, encrypted block `80-CRYPTO` replaces `7F-MEASSHORT`, `7B-GPSPOS`, `7C-GPSINFO` and `7D-GPSRAW`
**6**=unknown, appears to indicate broken configuration | 31 | | `[0x10]` | uint8 | `0x15` | 21°C | Temperature of reference area (cut-out) on PCB | 32 | | `[0x11]` | uint16 | `0x0000` | | Bit field (error flags).
t.b.d. | 33 | | `[0x13]` | uint16 | `0x005D` | 93 | PWM (0...1000) of humidity sensor heating | 34 | | `[0x15]` | uint8 | `0x07` | Max power | Transmit power setting. 0=min, 7=max) | 35 | | `[0x16]` | uint8 | `0x32` | 50 | Highest possible subframe# | 36 | | `[0x17]` | uint8 | `0x20` | 32/51 | Subframe# | 37 | | `[0x18]` | uint8[16] | `0xC966B54100004040FFFFFFC6FFFFFFC6` | | Subframe | 38 | 39 | ## 7A-MEAS 40 | The 7A-MEAS block contains all the infomation about the PTU measurements. 41 | 42 | There are two temperature sensors in the sonde, one for the actual temperature and one on the heated humidity sensor. Those are PT1000. Additionally, there are capacitive sensors for humidity and pressure. For each type of measurement, there are additional references. 43 | 44 | What those values actually mean is still unclear, there are a few different formulas for calculating the temperature who are all a bit different. I hope to provide some more information about this at some point. In the meantime, check out [zilog80s](https://github.com/rs1729/RS/tree/master/rs41) code. 45 | 46 | For the hardware side of things, which is also of interest here, take a look at [my other repo](https://github.com/bazjo/RS41_ReverseEngineering) about the RS41s hardware. 47 | 48 | | address | datatype | example data | decoded | function | 49 | | --- | --- | --- | --- | --- | 50 | | `[0x00]` | uint24 | `0xCF5202` | 152271 | Temperature Tempmeas Main | 51 | | `[0x03]` | uint24 | `0x2A0002` | 131114 | Temperature Tempmeas Ref1 | 52 | | `[0x06]` | uint24 | `0x9CE702` | 190364 | Temperature Tempmeas Ref2 | 53 | | `[0x09]` | uint24 | `0x278D08` | 560423 | Humidity Main | 54 | | `[0x0C]` | uint24 | `0xAF8707` | 493487 | Humidity Ref1 | 55 | | `[0x0F]` | uint24 | `0x479108` | 561479 | Humidity Ref2 | 56 | | `[0x12]` | uint24 | `0xCB2B02` | 142283 | Temperature Humimeas Main | 57 | | `[0x15]` | uint24 | `0x2B0002` | 131115 | Temperature Humimeas Ref1 | 58 | | `[0x18]` | uint24| `0x9DE702` | 190365 | Temperature Humimeas Ref2 | 59 | | `[0x1B]` | uint24 | `0x096705` | 354057 | Pressure Main | 60 | | `[0x1E]` | uint24 | `0xEEA604` | 304878 | Pressure Ref1 | 61 | | `[0x21]` | uint24 | `0xFEAE06` | 438014 | Pressure Ref2 | 62 | | `[0x24]` | | `0x0000` | | static 0x00 -purpose unknown | 63 | | `[0x26]` | int16 | `0xFBFB` | 0xFBFB = -1029
-10.29°C | Temperature of pressure sensor module (1/100 °C) | 64 | | `[0x28]` | | `0x0000` | | static 0x00 -purpose unknown | 65 | 66 | ## 7F-MEASSHORT 67 | The 7F-MEAS block contains all the infomation about the PTU measurements, but without the option for a pressure sensor. This block is used by RS41-SGM. 68 | 69 | See description of `7A-MEAS` for details. 70 | 71 | | address | datatype | example data | decoded | function | 72 | | --- | --- | --- | --- | --- | 73 | | `[0x00]` | uint24 | `0xCF5202` | 152271 | Temperature Tempmeas Main | 74 | | `[0x03]` | uint24 | `0x2A0002` | 131114 | Temperature Tempmeas Ref1 | 75 | | `[0x06]` | uint24 | `0x9CE702` | 190364 | Temperature Tempmeas Ref2 | 76 | | `[0x09]` | uint24 | `0x278D08` | 560423 | Humidity Main | 77 | | `[0x0C]` | uint24 | `0xAF8707` | 493487 | Humidity Ref1 | 78 | | `[0x0F]` | uint24 | `0x479108` | 561479 | Humidity Ref2 | 79 | | `[0x12]` | uint24 | `0xCB2B02` | 142283 | Temperature Humimeas Main | 80 | | `[0x15]` | uint24 | `0x2B0002` | 131115 | Temperature Humimeas Ref1 | 81 | | `[0x18]` | uint24 | `0x9DE702` | 190365 | Temperature Humimeas Ref2 | 82 | 83 | ## 7C-GPSINFO 84 | The 7C-GPSINFO block contains GPS status information. It includes the GPS Week and Time of week as well as having twelve slots for SVNs (Space Vehicle Numbers, though whats transmitted are actually PRN#) with the according signal quality. What indication is used there is unknown. the [RS41 Tracker](http://escursioni.altervista.org/Radiosonde/) plots this value on a scale from 0 to 43, the corresponding values in the RS41 Tracker are in an additional column. 85 | 86 | If there are less than 12 satellites tracked, the other slots are 0x00. 87 | 88 | | address | datatype | example data | decoded | RS41Tracker | function | 89 | | --- | --- | --- | --- | --- | --- | 90 | | `[0x00]` | uint16 | `0xE607` | 2022 | | GPS Week | 91 | | `[0x02]` | uint32 | `0x18FB2512` | 304479000 ms | | GPS Time of Week | 92 | | `[0x06]` | uint8 | `0x01` | PRN 1 | | Space Vehicle Number Slot 1 | 93 | | `[0x07]` | uint8 | `0xFB` | mesQI=7
cno'=27
cno=47 dbHz | 42 | Quality Indicator Slot 1
32*mesQI + cno'
cno'=0 if cno < 20
cno'=cno-20 if 20 <= cno <= 50
cno'=31 if cno > 50
See u-blox6 RXM-RAW message description for details | 94 | | `[0x08]` | uint8 | `0x11` | PRN 17 | | Space Vehicle Number Slot 2 | 95 | | `[0x09]` | uint8 | `0xF9` | mesQI=7
cno=45 dbHz | 41 | Quality Indicator Slot 2 | 96 | | `[0x0A]` | uint8 | `0x13` | PRN 19 | | Space Vehicle Number Slot 3 | 97 | | `[0x0B]` | uint8 | `0xF3` | mesQI=7
cno=39 dbHz | 39 | Quality Indicator Slot 3 | 98 | | `[0x0C]` | uint8 | `0x0B` | PRN 11 | | Space Vehicle Number Slot 4 | 99 | | `[0x0D]` | uint8 | `0xFA` | mesQI=7
cno=46 dbHz | 42 | Quality Indicator Slot 4 | 100 | | `[0x0E]` | uint8 | `0x09` | PRN 9 | | Space Vehicle Number Slot 5 | 101 | | `[0x0F]` | uint8 | `0x92` | mesQI=4
cno=38 dbHz | 6 | Quality Indicator Slot 5 | 102 | | `[0x10]` | uint8 | `0x16` | PRN 22 | | Space Vehicle Number Slot 6 | 103 | | `[0x11]` | uint8 | `0xF7` | mesQI=7
cno=43 dbHz | 40 | Quality Indicator Slot 6 | 104 | | `[0x12]` | uint8 | `0x12` | PRN 18 | | Space Vehicle Number Slot 7 | 105 | | `[0x13]` | uint8 | `0xF7` | mesQI=7
cno=43 dbHz | 40 | Quality Indicator Slot 7 | 106 | | `[0x14]` | uint8 | `0x03` | PRN 3 | | Space Vehicle Number Slot 8 | 107 | | `[0x15]` | uint8 | `0xFA` | mesQI=7
cno=46 dbHz | 42 | Quality Indicator Slot 8 | 108 | | `[0x16]` | uint8 | `0x17` | PRN 23 | | Space Vehicle Number Slot 9 | 109 | | `[0x17]` | uint8 | `0xFA` | mesQI=7
cno=46 dbHz | 42 | Quality Indicator Slot 9 | 110 | | `[0x18]` | uint8 | `0x1F` | PRN 31 | | Space Vehicle Number Slot 10 | 111 | | `[0x19]` | uint8 | `0xF4` | mesQI=7
cno=40 dbHz | 40 | Quality Indicator Slot 10 | 112 | | `[0x1A]` | uint8 | `0x0E` | PRN 14 | | Space Vehicle Number Slot 11 | 113 | | `[0x1B]` | uint8 | `0xF4` | mesQI=7
cno=40 dbHz | 40 | Quality Indicator Slot 11 | 114 | | `[0x1C]` | uint8 | `0x0C` | PRN 12 | | Space Vehicle Number Slot 12 | 115 | | `[0x1D]` | uint8 | `0x91` | mesQI=4
cno=37 dbHz | 5 | Quality Indicator Slot 12 | 116 | 117 | ## 7D-GPSRAW 118 | The 7D-GPSRAW block contains the raw doppler shift GPS data to decode the GPS Position in a similar way as with the old RS92. This Data is for the most part not neccesary. 119 | 120 | The prMes and doMes are encoded weirdly, I haven't played around with them myself and just copied the explanation from zilog80s documentation. 121 | 122 | If there are less than 12 satellites tracked, the other slots are 0x00. 123 | 124 | | address | datatype | example data | function | 125 | | --- | --- | --- | --- | 126 | | `[0x00]` | uint32 | `0x25FC3501` | minPRmes | 127 | | `[0x04]` | uint8 | `0xFF` | Fields from UBX MON-HW message:
[7:4] jamInd, [3:0] agcCnt
Scaling t.b.d. | 128 | | `[0x05]` | uint32 | `0x3DFDD302` | PR1: prMes = PR/100-minPRmes | 129 | | `[0x09]` | uint24 | `0x42BF00` | DP1: doMes = -DP/100\*L1/c (int24) | 130 | | `[0x0C]` | uint32 | `0xC68F520B` | PR2 | 131 | | `[0x10]` | uint24 | `0x81FEFF` | DP2 | 132 | | `[0x13]` | uint32 | `0x80B5E910` | PR3 | 133 | | `[0x17]` | uint24 | `0xD882FF` | DP3 | 134 | | `[0x1A]` | uint32 | `0x37C1540A` | PR4 | 135 | | `[0x1E]` | uint24 | `0x2C3101` | DP4 | 136 | | `[0x21]` | uint32 | `0xACE5471A` | PR5 | 137 | | `[0x25]` | uint24 | `0x5115FF` | DP5 | 138 | | `[0x28]` | uint32 | `0xDA737E02` | PR6 | 139 | | `[0x2C]` | uint24 | `0xD36F00` | DP6 | 140 | | `[0x2F]` | uint32 | `0x15666E0C` | PR7 | 141 | | `[0x33]` | uint24 | `0x533901` | DP7 | 142 | | `[0x36]` | uint32 | `0x21000000` | PR8 | 143 | | `[0x3A]` | uint24 | `0x770300` | DP8 | 144 | | `[0x3D]` | uint32 | `0x8A56410F` | PR9 | 145 | | `[0x41]` | uint24 | `0x5E55FF` | DP9 | 146 | | `[0x44]` | uint32 | `0x937C1C12` | PR10 | 147 | | `[0x48]` | uint24 | `0x8BD6FF` | DP10 | 148 | | `[0x4B]` | uint32 | `0x30BD0011` | PR11 | 149 | | `[0x4F]` | uint24 | `0xB8FC00` | DP11 | 150 | | `[0x52]` | uint32 | `0xACA8BE1D` | PR12 | 151 | | `[0x56]` | uint24 | `0xB4E3FF` | DP12 | 152 | 153 | ## 7B-GPSPOS 154 | The 7B-GPSPOS block contains the actual position of the sonde in the ECEF format, which needs to be converted to the usual lat/lon format. 155 | 156 | | address | datatype | example data | decoded | function | 157 | | --- | --- | --- | --- | --- | 158 | | `[0x00]` | uint32 | `0x08EAB417` | 397732360 cm | ECEF Position X | 159 | | `[0x04]` | uint32 | `0x96B0F103` | 66171030 cm | ECEF Position Y | 160 | | `[0x08]` | uint32 | `0xF65D6D1D` | 493706742 cm | ECEF Position Z | 161 | | `[0x0C]` | uint16 | `0x4CFD` | -692 cm/s | ECEF Velocity X | 162 | | `[0x0E]` | uint16 | `0x8FF5` | -2673 cm/s | ECEF Velocity Y | 163 | | `[0x10]` | uint16 | `0x3700` | 55 cm/s | ECEF Velocity Z | 164 | | `[0x12]` | uint8 | `0x0D` | 13 | Number of SVs used in Nav Solution | 165 | | `[0x13]` | uint8 | `0x01` | 10 cm/s | sAcc/10 Speed Accuracy Estimate | 166 | | `[0x14]` | uint8 | `0x0C` | 1.2 | pDOP\*10 Position DOP | 167 | 168 | ## 76-EMPTY 169 | The 76-EMPTY block just contains a variable amount of zeros to fill up some space. 170 | 171 | ## 80-CRYPTO 172 | The 80-CRYPTO block (167 bytes) contains the payload of the `7F-MEASSHORT` (27 bytes), `7B-GPSPOS` (21 bytes), `7C-GPSINFO` (30 bytes) and `7D-GPSRAW` (89 bytes) blocks in encrypted form (Rabbit cipher). 173 | 174 | | address | datatype | 175 | | --- | --- | 176 | | `[0x00...0x1A]` | 7F-MEASSHORT payload | 177 | | `[0x1B...0x38]` | 7C-GPSINFO payload | 178 | | `[0x39...0x91]` | 7D-GPSRAW payload | 179 | | `[0x92...0xA6]` | 7B-GPSPOS payload | 180 | 181 | ## Subframe 182 | The subframe consist of 51 \* 16 = 816 Bytes. It is mostly static, but some parts, for example the last 16 bytes, change quite a lot as is discussed in the section about the RS41-SGMs subframe. 183 | 184 | Below is an image of the subframe of an RS41-SGP. Highlighted in colors are 185 | * bright yellow - subframe parts used by the RS41 Tracker 186 | * pale yellow - values which could contain useful infomation, most often float32 187 | * pale green - subframe parts used by zilog80s decoder 188 | * pale red - additional decoded parts 189 | 190 | This example is not from the same sonde as the frame which was analyzed above! 191 | 192 | ![rs41-sgp_subframe](__used_asset__/pic_rs41-sgp_subframe.png?raw=true "rs41-sgp_subframe") 193 | 194 | ### RS41 Tracker 195 | The RS41 Tracker uses the following subframe parts 196 | 197 | ``` 198 | 0x010: Frequency/Firmware 199 | 0x020: Burstkill Status 200 | 0x050-0x060: Temperature + Humidity 201 | 0x070: Humidity 202 | 0x120-0x130: Humidity 203 | 0x210: Sonde Type, Pressure + Humidity 204 | 0x250-0x2A: Pressure + Humidity 205 | 0x310: Burstkill Timer 206 | ``` 207 | 208 | ### zilog80s decoder 209 | zilog80s decoder uses the following subframe parts (some additional ones are added by me) 210 | 211 | Frequency is calculated by the formula `freq = 400 MHz + (freq upper + (freq lower / 255)) * 0.04 MHz`. 212 | 213 | | address | datatype | decoded data | function | 214 | | --- | --- | --- | --- | 215 | | `[0x002]` | uint8 | `0x80` | freq lower | 216 | | `[0x003]` | uint8 | 132 | freq upper | 217 | | `[0x015]` | uint16 | `0x4EF6` = 20214 | firmware version | 218 | | `[0x02B]` | uint8 | 0 | burstkill status | 219 | | `[0x03D]` | float32 | 750.0 | lower reference value rf1 | 220 | | `[0x041]` | float32 | 1100.0 | upper reference value rf2 | 221 | | `[0x04D]` | float32 | -243.9108 | constants temperature tempmeas co1[0] | 222 | | `[0x051]` | float32 | 0.187654 | constants temperature tempmeas co1[1] | 223 | | `[0x055]` | float32 | 8.2e-06 | constants temperature tempmeas co1[2] | 224 | | `[0x059]` | float32 | 1.279928 | calibration temperature tempmeas calT1[0] | 225 | | `[0x05D]` | float32 | -0.063965678 | calibration temperature tempmeas calT1[1] | 226 | | `[0x061]` | float32 | 0.0038336662 | calibration temperature tempmeas calT1[2] | 227 | | `[0x125]` | float32 | -243.9108 | constants temperature humimeas co2[0] | 228 | | `[0x129]` | float32 | 0.187654 | constants temperature humimeas co2[1] | 229 | | `[0x12D]` | float32 | 8.2e-06 | constants temperature humimeas co2[2] | 230 | | `[0x131]` | float32 | 1.3234462 | calibration temperature humimeas calT1[0] | 231 | | `[0x135]` | float32 | -0.01772682 | calibration temperature humimeas calT1[1] | 232 | | `[0x139]` | float32 | 0.0073917112 | calibration temperature humimeas calT1[2] | 233 | | `[0x218]` | char[10] | "RS41-SGP " | sonde type | 234 | | `[0x222]` | char[10] | "RSM421 " | mainboard type | 235 | | `[0x22C]` | char[10] | "P2510419 " | mainboard serial | 236 | | `[0x243]` | char[10] | "P2670962 " | pressure serial | 237 | | `[0x316]` | uint16 | 30600 s | burstkill timer | 238 | 239 | ### Run-time variable fields (0x320...0x32D) 240 | Fields 0x32E...0x32F are not used by RS41! 241 | 242 | | address | datatype | function | 243 | | --- | --- | --- | 244 | | `[0x320]` | int16 | frames remaining untill kill (-1 = 0xFFFF = inactive) | 245 | | `[0x322]` | int16 | launch altitude [m], referenced to spherical earth model (R=6371.008 km) | 246 | | `[0x324]` | uint16 | height [m] above launch site where transition to flight mode happened | 247 | | `[0x326]` | uint8 | ? (power level) | 248 | | `[0x327]` | uint8 | ? (# software resets) | 249 | | `[0x328]` | int8 | CPU temperature [°C] | 250 | | `[0x329]` | int8 | Radio (Si4032) temperature [°C] | 251 | | `[0x32A]` | uint16 | Remaining battery capacity | 252 | | `[0x32C]` | uint8 | Number of discarded UBX (GPS) packets | 253 | | `[0x32D]` | uint8 | Number of occasions when essential UBX (GPS) packets were missing | 254 | -------------------------------------------------------------------------------- /RS41-SGP/__used_asset__/pic_rs41-sgp_frame.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bazjo/RS41_Decoding/702553b114b13370afb4a7d86119b03fb94273b1/RS41-SGP/__used_asset__/pic_rs41-sgp_frame.png -------------------------------------------------------------------------------- /RS41-SGP/__used_asset__/pic_rs41-sgp_subframe.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bazjo/RS41_Decoding/702553b114b13370afb4a7d86119b03fb94273b1/RS41-SGP/__used_asset__/pic_rs41-sgp_subframe.png -------------------------------------------------------------------------------- /__used_asset__/pic_frame_format_rs41-sgp.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bazjo/RS41_Decoding/702553b114b13370afb4a7d86119b03fb94273b1/__used_asset__/pic_frame_format_rs41-sgp.png -------------------------------------------------------------------------------- /__used_asset__/pic_raw_fsk_transmission.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bazjo/RS41_Decoding/702553b114b13370afb4a7d86119b03fb94273b1/__used_asset__/pic_raw_fsk_transmission.png -------------------------------------------------------------------------------- /__used_asset__/pic_sonde_data_with_annotations.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bazjo/RS41_Decoding/702553b114b13370afb4a7d86119b03fb94273b1/__used_asset__/pic_sonde_data_with_annotations.png -------------------------------------------------------------------------------- /__used_asset__/pic_whole_frame.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/bazjo/RS41_Decoding/702553b114b13370afb4a7d86119b03fb94273b1/__used_asset__/pic_whole_frame.png --------------------------------------------------------------------------------