VBAによるSAKURA画像データ復元ツール


# はじめに
　千葉工業大学　Gardens衛星3号機"SAKURA"は無事に運用を終了しました。多くの皆様のご協力とご支援で運用を完遂することができました。まずこの場を借りてお礼を申し上げます。ありがとうございました。
 
　衛星開発中はフライトソフトウエアと評価ソフトウエアを同時に書くことは多くあり、同時に間違えると解決には時間がかかります。

　Excel VBAは非常に普及率の高いソフトウエアで環境構築と環境の同一性が非常に簡便です。コードの作成にもセルを上手に使うとデータが可視化でき、ツールの作成には非常に便利です。
そこでVBAを使った千葉工業大学の衛星の画像復元方法を紹介します。
(コードの実行速度よりも、コードの作成速度を優先するという考え方になります。)

# 1. SKRからの画像データダウンロード

SKRからデータをダウンロードします。(SATNOGSでも補完できます。)
以下の図の黄色網掛け部はパケット番号で通し番号になるように並び替えをします。
赤色の網掛け部がJPEGデータとなっており、これをあたまからバイナリに書き込んでいきます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3940627/eea1bbd4-aa5d-d4a8-b667-822292e84a83.png)




# 2. excelファイルの作業

## 2.1　ファイル新規作成
エクセルでファイルを新規作成し、xlsm拡張子で保存します。
シート名を"data"にします。
1項のメモ帳にあるデータをCtrl+A、Ctrl+Cによりデータをコピーし、エクセルのA1セルにペーストします。(便宜的に"V"列に黄色の網掛けをしています。"
”データ”タブ→”区切り位置"の順でクリック

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3940627/09c07270-457a-0258-e5d4-21bc250fda50.png)

## 2.2 1セルに1バイトづつ納める
"スペースによって～"をチェックし”次へ"
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3940627/228dfb7f-80ff-79a9-2463-b99616a440c9.png)

"データのプレビュー"でA列から最終列を選択し”文字列"を選択します。
(A列が選択されている状態で、スライドバーを右に移動し、Shift+列をクリックすると便利です。)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3940627/bb68d127-a22c-7f0d-a2b2-c76903140e51.png)

そうすると1セルに1byteが収まります。
ff d8を赤字にしていますが、これはJPEGフォーマットのスタートマーカー (SOI: Start of Image)です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3940627/b24ffd64-752f-bdee-dda0-c1bfe44f3752.png)

ff d9を赤字にしていますが、これはJPEGフォーマットのエンドマーカー (EOI: End of Image)です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3940627/44803b42-dbca-2b1a-775b-193b630d733f.png)




## 2.3 保存先とファイル名を設定
シートを追加し"URL"にします。
C3セルに保存先フォルダを書く。セルC3の最後は"￥"がないようにすること
C4セルにファイル名を書く。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3940627/e543ed1c-ed15-1cf6-2f8f-3e8f7b4c30da.png)


# 3 VBEにてコードを書く

"開発"タブからVBEを開き、標準モジュールを挿入以下のようにコードを書きます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3940627/90b3d526-4244-18f1-d8f3-eeae158a3fef.png)


```VB
Option Explicit

Sub SKR_JPG_converter()

    Dim ColumnCounter As Integer
    Dim RowCounter As Integer
    Const ColumnOfW As Integer = 23

    Dim JpgAddr As Long
    JpgAddr = 0
    
    Dim DataWs, UrlWs As Worksheet
    Set DataWs = Worksheets("data")
    Set UrlWs = Worksheets("URL")
    
    'シート"URL"に記載のファイルをバイナリで開く
    Dim strFilePath As String
    strFilePath = UrlWs.Range("C3").Value & "\" & UrlWs.Range("C4").Value
    Open strFilePath For Binary Access Write As #1
    
    
    
    
    'シート"data"にあるデータ部をファイルの先頭から書き込んでいく
    For RowCounter = 1 To DataWs.Range("A10000").End(xlUp).Row
        For ColumnCounter = ColumnOfW To DataWs.Range("ZZ1").End(xlToLeft).Column
            'Debug.Print Cells(RowCounter, ColumnCounter).Value
            
            JpgAddr = JpgAddr + 1
            Put #1, JpgAddr, CByte(Val("&H" & DataWs.Cells(RowCounter, ColumnCounter).Value))
            
            
            ' JPG EOI(End of Image) エンドマーカー FF D9を探す　あれば修了
            If DataWs.Cells(RowCounter, ColumnCounter).Value = "ff" And _
            DataWs.Cells(RowCounter, ColumnCounter + 1).Value = "d9" Then
                JpgAddr = JpgAddr + 1
                Put #1, JpgAddr, CByte(Val("&h" + DataWs.Cells(RowCounter, ColumnCounter + 1).Value))
                
                Exit For
            End If
            
        Next
    Next
    
    Close #1

End Sub

```


# 4. コードの実行と画像の表示
指定したフォルダにjpgファイルができていれば、ダブルクリックで表示できます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3940627/77e997d8-bb3d-06c1-c1b8-3cd05a949c93.png)

本記事で使ったデータを以下に示します。
``` 
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 00 ff d8 ff e0 00 10 4a 46 49 46 00 01 01 00 00 01 00 01 00 00 ff db 00 43 00 06 04 05 06 05 04 06 06 05 06 07 07 06 08 0a 10 0a 0a 09 09 0a 14 0e 0f 0c 10 17 14 18 18 17 14 16 16 1a 1d
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 01 25 1f 1a 1b 23 1c 16 16 20 2c 20 23 26 27 29 2a 29 19 1f 2d 30 2d 28 30 25 28 29 28 ff db 00 43 01 07 07 07 0a 08 0a 13 0a 0a 13 28 1a 16 1a 28 28 28 28 28 28 28 28 28 28 28 28 28 28
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 02 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 ff c0 00 11 08 01 0e 01 e0 03 01 22 00 02 11 01 03 11 01 ff c4 00 1f 00 00
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 03 01 05 01 01 01 01 01 01 00 00 00 00 00 00 00 00 01 02 03 04 05 06 07 08 09 0a 0b ff c4 00 b5 10 00 02 01 03 03 02 04 03 05 05 04 04 00 00 01 7d 01 02 03 00 04 11 05 12 21 31 41 06 13
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 04 51 61 07 22 71 14 32 81 91 a1 08 23 42 b1 c1 15 52 d1 f0 24 33 62 72 82 09 0a 16 17 18 19 1a 25 26 27 28 29 2a 34 35 36 37 38 39 3a 43 44 45 46 47 48 49 4a 53 54 55 56 57 58 59 5a 63
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 05 64 65 66 67 68 69 6a 73 74 75 76 77 78 79 7a 83 84 85 86 87 88 89 8a 92 93 94 95 96 97 98 99 9a a2 a3 a4 a5 a6 a7 a8 a9 aa b2 b3 b4 b5 b6 b7 b8 b9 ba c2 c3 c4 c5 c6 c7 c8 c9 ca d2 d3
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 06 d4 d5 d6 d7 d8 d9 da e1 e2 e3 e4 e5 e6 e7 e8 e9 ea f1 f2 f3 f4 f5 f6 f7 f8 f9 fa ff c4 00 1f 01 00 03 01 01 01 01 01 01 01 01 01 00 00 00 00 00 00 01 02 03 04 05 06 07 08 09 0a 0b ff
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 07 c4 00 b5 11 00 02 01 02 04 04 03 04 07 05 04 04 00 01 02 77 00 01 02 03 11 04 05 21 31 06 12 41 51 07 61 71 13 22 32 81 08 14 42 91 a1 b1 c1 09 23 33 52 f0 15 62 72 d1 0a 16 24 34 e1
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 08 25 f1 17 18 19 1a 26 27 28 29 2a 35 36 37 38 39 3a 43 44 45 46 47 48 49 4a 53 54 55 56 57 58 59 5a 63 64 65 66 67 68 69 6a 73 74 75 76 77 78 79 7a 82 83 84 85 86 87 88 89 8a 92 93 94
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 09 95 96 97 98 99 9a a2 a3 a4 a5 a6 a7 a8 a9 aa b2 b3 b4 b5 b6 b7 b8 b9 ba c2 c3 c4 c5 c6 c7 c8 c9 ca d2 d3 d4 d5 d6 d7 d8 d9 da e2 e3 e4 e5 e6 e7 e8 e9 ea f2 f3 f4 f5 f6 f7 f8 f9 fa ff
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 0a da 00 0c 03 01 00 02 11 03 11 00 3f 00 f9 52 8a 28 a0 02 8a 28 a0 02 8a 28 a0 02 8a 28 a0 02 8a 28 a0 02 8a 28 a0 02 8a 28 a0 02 8a 28 a0 02 8a 28 a0 02 8a 28 a0 02 8a 28 a0 02 8a 28
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 0b a0 02 8a 28 a0 02 8a 28 a0 02 8a 28 a0 02 8a 28 a0 02 8a 28 a0 02 8a 28 a0 02 8a 28 a0 02 8a 28 a0 02 8a 28 a0 02 8a 28 a0 02 8a 28 a0 02 8a 28 a0 02 8a 28 a0 02 8a 28 a0 02 8a 28 a0
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 0c 02 8a 28 a6 01 4a 29 29 69 80 b4 51 45 02 1b 45 14 54 8c 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 0d 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 0e 60 14 51 4b 40 05 2d 14 53 10 51 45 18 aa 01 b4 51 45 66 30 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 0f 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 29 80 51 45
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 10 2d 00 14 b4 51 4c 41 45 14 62 a8 05 a2 8a 29 80 ca 28 a2 b2 18 51 45 14 00 51 45 14 00 51 45 14 00 51 45 14 00 51 45 14 00 51 45 14 00 51 45 14 00 51 45 14 00 51 45 14 00 51 45 14 00
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 11 51 45 14 00 51 45 14 00 51 45 14 00 51 45 14 00 51 45 14 00 51 45 14 00 51 45 14 00 51 45 14 00 51 45 14 00 51 45 14 00 51 45 14 00 51 45 14 00 51 45 14 00 51 45 14 c0 28 a2 94 50 00
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 12 29 68 a2 a8 41 45 14 53 00 14 b4 50 29 80 0a 5a 29 71 54 90 88 a8 a2 8a c0 a0 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 13 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 29 80 51 45 28 a0
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 14 00 52 d1 45 31 05 14 52 d5 00 82 96 8a 5a 60 25 2d 14 b5 49 08 28 c5 00 53 aa d2 11 05 14 51 5c a5 85 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 15 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 4c 02
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 16 8a 29 45 00 02 96 8a 29 80 51 45 2d 50 84 14 b4 52 d3 48 03 14 51 4b 54 90 82 80 28 14 a6 ad 21 05 14 0a 5a b1 10 51 45 15 c4 68 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 17 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 18 00 14 51 45 30 0a 28 a5 a0 02 96 8a 29 80 51 45 2d 50 82 8a 29 69 d8 02 8a 29 6a 92 10 51 45 2f 4a a4 84 1d 28 a2 96 ad 21 05 2d 14 b5 42 2b 51 45 15 c2 6a 14 51 45 00 14 51 45 00 14
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 19 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51 45 00 14 51
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 1a 45 00 14 51 45 00 14 51 45 30 0a 28 a5 a0 02 96 92 96 98 05 14 52 d5 58 41 45 14 b4 d2 01 29 68 a5 aa 48 41 47 5a 29 7a 55 24 20 a2 8a 5a b4 84 14 b4 52 81 54 20 14 b8 a5 a5 c5 52 42
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 1b 29 d1 45 15 e7 9b 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 1c 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 4c 02 8a 28 a0 02 96 8a 5a 60 14 51 4b 54 90 82 8a 29 69 a0 0a 31 45 2d 52 42 0a 3a d1 4b d2 ad 21 05 02 81 4b 8a b4 84 02
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 1d 96 8a 50 2a 84 00 53 a8 a5 02 a9 21 00 a5 c5 14 55 0a e5 2a 28 a2 bc c3 70 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 1e a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 29 80 51 45 14 00 52 d1 4b 4c 02 8a 29 45 55 84 18 a2 8a 5a 69 00 51 40 a5 ab 48
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 1f 41 45 14 b5 49 08 29 68 14 b8 ab 48 40 05 14 b4 a0 55 08 00 a5 a2 94 0a a4 84 02 96 8a 2a 84 14 a2 80 29 c0 55 24 23 3e 8a 28 af 28 e8 0a 28 a2 80 0a 28 a2 80 0a 28 a2 80 0a 28 a2 80
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 20 0a 28 a2 80 0a 28 a2 80 0a 28 a2 80 0a 28 a2 80 0a 28 a2 80 0a 28 a2 80 0a 28 a2 80 0a 28 a2 80 0a 28 a2 80 0a 28 a2 80 0a 28 a2 80 0a 28 a2 80 0a 28 a2 98 05 14 51 40 05 2d 02 96 98
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 21 05 14 50 29 a4 21 45 14 52 d5 24 01 45 14 b5 69 08 28 02 8a 5a a4 84 14 a0 50 05 2d 5a 42 01 4b 40 19 a7 01 55 61 06 28 c5 2e 29 6a d2 10 82 96 8a 50 2a 84 25 38 0a 00 a7 01 54 90 80
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 22 0a 5a 5e 94 95 56 11 9b 45 14 57 8e 74 85 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 23 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 40 05 14 51 4c 02 94 51 8a 5a 60 14 51 4b 4d 21 09 8a 5a 28 aa 48 02 96 8a 5a b4 84 14 01 40 a5 aa 48 41 4a 05 00 52 d6 89 09 85 28 14 01
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 24 4e eb 54 90 82 94 50 05 2d 52 42 0a 28 a5 15 42 0a 50 28 02 9e 05 5a 42 10 0a 75 14 62 aa c2 13 ad 38 0a 50 29 71 4e c2 32 68 a2 8a f1 4e a0 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 25 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 29 80 52 d2 53 a9 80 51 45 02 9a 10 0a
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 26 5a 28 aa 01 69 29 69 6a 92 10 51 45 28 ab 48 41 4a 28 02 94 55 a4 26 14 a0 50 05 3a ad 21 05 28 14 51 56 90 85 a3 14 52 8a 69 0a e0 29 c0 52 01 4f 15 69 08 00 a5 14 52 e2 a8 91 29 c0
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 27 51 4e 15 49 08 40 29 d4 52 e2 aa c0 63 51 45 15 e1 1d 61 45 14 50 01 45 14 50 01 45 14 50 01 45 14 50 01 45 14 50 01 45 14 50 01 45 14 50 01 45 14 50 01 45 14 50 01 45 14 50 01 45 14
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 28 50 01 45 14 50 01 45 14 50 01 45 14 50 01 45 14 53 00 a2 8a 5c 50 00 29 68 a2 a8 02 96 81 45 52 10 51 45 28 aa 48 42 d1 49 4a 2a d2 10 b4 a2 80 29 6a d2 13 0a 70 1e b4 80 53 87 26 ad
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 29 21 07 5a 5a 28 ab 48 41 4a 28 02 96 a9 21 36 14 e0 28 02 9c 2a d2 10 0a 50 28 02 9d 54 90 83 a5 1d 69 71 4b 8a a4 89 00 29 40 cd 00 53 85 52 40 00 51 4a 29 71 54 91 37 30 e8 a2 8a f9
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 2a f3 b4 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 00 28 a2 8a 60 14 51 45
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 2b 00 28 a5 a2 8a 60 14 b4 82 96 a9 08 28 a2 96 ad 21 00 a2 8a 51 54 90 00 a7 0a 05 2d 68 91 2c 29 40 a0 0c d2 d5 a4 21 45 2d 14 55 a4 20 a5 a3 14 a2 a9 21 36 00 53 80 a0 0a 75 5a 42 0a
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 2c 50 28 03 d6 94 55 24 2b 85 38 0a 00 a5 ab 48 90 a5 02 94 0a 5a 69 08 29 40 a0 0a 75 5a 42 12 96 97 14 e0 2a ac 23 9f a2 8a 2b e7 0e e0 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 2d a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 29 80 52 d0 29 69 80 51 45 2d 52 10 51 45 28 aa 48 41 45 14 a2 ad 20
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 2e 00 29 68 14 e1 56 90 98 0a 50 28 a5 ad 12 24 3e 94 a3 a5 00 52 d5 a4 20 a5 c5 02 96 a9 21 30 a7 01 40 14 a2 ad 21 0b 4a 07 ad 00 52 d5 24 48 53 80 a0 0a 51 56 90 80 53 80 a0 0a 50 33
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 2f 54 90 83 14 a0 52 8a 50 33 56 90 ae 18 a5 02 94 0a 5a 69 08 28 a5 02 9d 57 62 4e 72 8a 28 af 99 3d 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 30 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 28 00 a2 8a 29 80 51 45 28 a0 05 a2 8a 2a 90 80 52 d1 4b 8a a4 00 28 a5 a4 ab 48 41 4e 14 82 9c 05 68 90 98 0a 5a 29 45 5a 44
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 31 8b d2 94 0a 00 a5 ab 48 41 4a 29 05 3a ad 21 30 14 e0 29 05 3a ad 21 05 38 0a 41 4e aa 48 4c 05 3b 18 a0 0a 5a b4 48 01 9a 77 4a 05 28 15 49 08 05 3a 8a 00 ab b0 85 02 9c 28 14 55 24
4a 53 31 59 4d 59 30 4a 53 31 59 4e 49 30 3e f0 53 cc ff 80 00 32 48 a2 94 0a 00 a7 0a a4 20 c5 2e 29 47 5a 71 5e 2a 84 7f ff d9 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

```