Changeset 10870 for lang/csharp

Show
Ignore:
Timestamp:
05/01/08 13:26:18 (7 months ago)
Author:
mayuki
Message:

* 接続エラー時にメッセージボックスを出すようにした
* メッセージボックスがBackgroundWorkerスレッドで発動してしまうのを回避するようにした
* サーバ上のパスを入力するとリストビューの内容も変わるようにした

Location:
lang/csharp/MTFileUploader/MTFileUploader
Files:
4 modified

Legend:

Unmodified
Added
Removed
  • lang/csharp/MTFileUploader/MTFileUploader/MTFileUploader.csproj

    r10205 r10870  
    2424  </PropertyGroup> 
    2525  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' "> 
    26     <DebugType>pdbonly</DebugType> 
     26    <DebugType>none</DebugType> 
    2727    <Optimize>true</Optimize> 
    2828    <OutputPath>bin\Release\</OutputPath> 
  • lang/csharp/MTFileUploader/MTFileUploader/MainForm.Designer.cs

    r10268 r10870  
    151151            this.txtUploadPath.Size = new System.Drawing.Size(286, 19); 
    152152            this.txtUploadPath.TabIndex = 1; 
     153            this.txtUploadPath.TextChanged += new System.EventHandler(this.txtUploadPath_TextChanged); 
    153154            //  
    154155            // btnUpload 
  • lang/csharp/MTFileUploader/MTFileUploader/MainForm.cs

    r10268 r10870  
    5252                        // ファイル 
    5353                        ListViewItem item = new ListViewItem(fileNameOnly); 
     54                        item.Tag = fileNameOnly; 
    5455                        item.ImageKey = "Image_File"; 
    5556                        item.SubItems.Add(fileNameOnly); 
     
    5859                    } 
    5960                } 
     61                UpdateServerPath(); 
    6062            } 
    6163        } 
     
    108110        { 
    109111            StatusState state = e.UserState as StatusState; 
    110             toolStripStatusLabel.Text = state.Text; 
     112            if (state.Status != Status.Error) 
     113            { 
     114                toolStripStatusLabel.Text = state.Text; 
     115            } 
     116            else 
     117            { 
     118                toolStripStatusLabel.Text = "アップロード中にエラーが発生しました"; 
     119                MessageBox.Show(this, state.Text, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error); 
     120            } 
    111121 
    112122            if (state.Item != null) 
     
    119129            } 
    120130        } 
     131 
     132        private void txtUploadPath_TextChanged(object sender, EventArgs e) 
     133        { 
     134            UpdateServerPath(); 
     135        } 
    121136        #endregion 
     137 
     138        private void UpdateServerPath() 
     139        { 
     140            var baseDir = txtUploadPath.Text.Trim('/'); 
     141            foreach (ListViewItem item in lvUploadFiles.Items) 
     142            { 
     143                var fileRelPath = item.Tag as String; 
     144                item.SubItems[1].Text = (baseDir.Length == 0 ? fileRelPath : String.Format("{0}/{1}", baseDir, fileRelPath)); 
     145            } 
     146        } 
    122147 
    123148        private void ExecuteUpload(DoWorkEventArgs e) 
     
    149174            { 
    150175                String errorMessage = String.Format("ログイン時にエラーが発生しました。{0}\r\n\r\n詳細なメッセージ: \r\n{1}", ex.FaultString, ex.Message); 
    151                 MessageBox.Show(this, errorMessage, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error); 
     176                backgroundWorker.ReportProgress(0, new StatusState() { Text = errorMessage, Status = Status.Error }); 
     177                e.Result = "アップロード中にエラーが発生しました。"; 
     178                return; 
     179            } 
     180            catch (XmlRpcServerException ex) 
     181            { 
     182                String errorMessage = String.Format("サーバへ接続時にエラーが発生しました。\r\n\r\n詳細なメッセージ: \r\n{0}", ex.Message); 
     183                backgroundWorker.ReportProgress(0, new StatusState() { Text = errorMessage, Status = Status.Error }); 
     184                e.Result = "アップロード中にエラーが発生しました。"; 
    152185                return; 
    153186            } 
     
    171204 
    172205                var mediaObject = new CookComputing.XmlRpc.XmlRpcStruct(); 
    173                 mediaObject.Add("name", (baseDir.Length == 0 ? fileRelPath : String.Format("{0}/{1}", baseDir, fileRelPath))); 
     206                mediaObject.Add("name", fileRelPath); 
    174207                mediaObject.Add("bits", File.ReadAllBytes(item.SubItems[2].Text)); 
    175208                try 
     
    181214                { 
    182215                    String errorMessage = String.Format("エラーが発生しました。{0}\r\n\r\n詳細なメッセージ: \r\n{1}", ex.FaultString, ex.Message); 
    183                     MessageBox.Show(this, errorMessage, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error); 
    184                     backgroundWorker.ReportProgress(progressPct, new StatusState() { Text = "アップロード中にエラーが発生しました", Item = item, Status = Status.Error }); 
     216                    backgroundWorker.ReportProgress(progressPct, new StatusState() { Text = errorMessage, Item = item, Status = Status.Error }); 
     217                    e.Result = "アップロード中にエラー発生しました"; 
     218                    return; 
     219                } 
     220                catch (XmlRpcServerException ex) 
     221                { 
     222                    String errorMessage = String.Format("サーバへ接続時にエラーが発生しました。\r\n\r\n詳細なメッセージ: \r\n{0}", ex.Message); 
     223                    backgroundWorker.ReportProgress(progressPct, new StatusState() { Text = errorMessage, Item = item, Status = Status.Error }); 
    185224                    e.Result = "アップロード中にエラー発生しました"; 
    186225                    return; 
     
    203242 
    204243                ListViewItem item = new ListViewItem(fileNameOnly, "Image_File"); 
     244                item.Tag = fileRelativePath.Replace('\\', '/'); 
    205245                item.SubItems.Add(fileRelativePath.Replace('\\', '/')); // Server path 
    206246                item.SubItems.Add(fileName); // File path 
  • lang/csharp/MTFileUploader/MTFileUploader/MainForm.resx

    r10268 r10870  
    125125        AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w 
    126126        LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0 
    127         ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADs 
     127        ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADg 
    128128        DwAAAk1TRnQBSQFMAgEBBAEAAQwBAAEEAQABEAEAARABAAT/ASEBAAj/AUIBTQE2BwABNgMAASgDAAFA 
    129         AwABIAMAAQEBAAEgBgABIP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8AKgADVgGsA2oBzwNp 
    130         Ac4DaQHOA2kBzgNpAc4DaQHOA2kBzgNpAc4DaQHOA2oBzwMwAUwYAAMqAUACbwFwAfEDuwH9Au0B7gH/ 
    131         A/sB/wPaAf8DjwH2A1EBniQAAzIBUQFOAXIB3QH/AyIBMmgAA9UB/wP6Af8B9wL5Af8B+AL5Af8B9gL4 
    132         Af8B9gL4Af8B9gL4Af8B9QL2Af8B9QL2Af8B9QL2Af8B+wL6Af8DLgFIFAADZwHYAuQB5wH+AXUBcwHE 
    133         Af8CDgGbAf8CCAGoAf8CBgG0Af8CCQG+Af8CDQGmAf8BrgGtAdwB/wOpAfoDLAFDGAADMQFPAUYBdAHn 
    134         Af8BPwFwAekB/wFNAXIB3gH/AwkBDEAAAfcB5QHcAf8gAAPWAf8B+wL8Af8D+QH/AfgC+QH/AfgC+QH/ 
    135         A/gB/wH3AvgB/wH3AvgB/wP3Af8B9gL3Af8B+wL8Af8DLwFJEAACcgFzAeoCqAHaAf8CEQGcAf8CCAGV 
    136         Af8CBwGeAf8CBgGmAf8CBQGyAf8CBAG8Af8CCAHJAf8CCQHWAf8CHgGpAf8D4QH/AywBQxAAAzMBUgFM 
    137         AYAB6QH/AUcBewHtAf8BQwF1AesB/wFAAXAB6AH/AzABTAMAAQE8AAGKAUIBIAH/AegB2gHUAf8cAAPW 
     129        AwABIAMAAQEBAAEgBgABIP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8AKgADVAGsA2UBzwNl 
     130        Ac4DZQHOA2UBzgNlAc4DZQHOA2UBzgNlAc4DZQHOA2UBzwMwAUwYAAMqAUACbgFvAfEDugH9Au0B7gH/ 
     131        A/sB/wPaAf8DjAH2A1ABniQAAzIBUQFNAXEB3QH/AyIBMmgAA9UB/wP6Af8B9wL5Af8B+AL5Af8B9gL4 
     132        Af8B9gL4Af8B9gL4Af8B9QL2Af8B9QL2Af8B9QL2Af8B+wL6Af8DLgFIFAADYwHYAuIB5QH+AXQBcgHE 
     133        Af8CDQGbAf8CBwGoAf8CBQG0Af8CCAG+Af8CDAGmAf8BrgGtAdwB/wOmAfoDLAFDGAADMQFPAUUBcwHn 
     134        Af8BPgFvAekB/wFMAXEB3gH/AwkBDEAAAfcB5QHcAf8gAAPWAf8B+wL8Af8D+QH/AfgC+QH/AfgC+QH/ 
     135        A/gB/wH3AvgB/wH3AvgB/wP3Af8B9gL3Af8B+wL8Af8DLwFJEAACbwFwAeoCqAHaAf8CEAGcAf8CBwGV 
     136        Af8CBgGeAf8CBQGmAf8CBAGyAf8CAwG8Af8CBwHJAf8CCAHWAf8CHQGpAf8D4QH/AywBQxAAAzMBUgFL 
     137        AYAB6QH/AUYBegHtAf8BQgF0AesB/wE/AW8B6AH/AzABTAMAAQE8AAGKAUEBHwH/AegB2gHUAf8cAAPW 
    138138        Af8D/AH/AfkC+gH/AfkC+gH/AfgC+QH/AfgC+QH/A/gB/wH3AvgB/wH3AvgB/wP3Af8B+wL8Af8DLwFJ 
    139         DAADTwGYAsoB6AH/Ag8BnwH/AggBlQH/AggBkQH/AgcBngH/AgYBpAH/AgUBrQH/AgQBuAH/AgMBwAH/ 
    140         AgMBxQH/AgkB1wH/AhwBpwH/A6kB+gwAAz0BaAFTAYwB7gH/AVEBjAHxAf8BTAGGAe8B/wFIAYAB7QH/ 
    141         AUMBdgHrAf8BTAFyAd8B/wMOARM8AAGSAUUBIQH/AY4BRAEgAf8B6QHbAdQB/xgAA9YB/wH8Av0B/wOy 
    142         Af8D6wH/A+sB/wPrAf8D6wH/A+sB/wPrAf8DsgH/AfwC/QH/Ay8BSQwAA7sB/QIYAaYB/wIHAZ8B/wIx 
    143         AacB/wLmAd8B/wI4AZwB/wIGAaQB/wIGAakB/wIFAbAB/wLOAd4B/wLuAfEB/wIEAbwB/wIHAc4B/wG+ 
    144         AcAB4AH/A1EBngQAAkoBTAGLAVwBmQHzAf8BWgGZAfUB/wFWAZMB8wH/AU4BdAHfAf8BTQF7AecB/wFI 
    145         AYEB7QH/AUQBdwHrAf8BTgFPAVABlwMDAQQ4AAGdAUsBIgH/AakBWQEzAf8BkwFGASEB/wHpAdsB1AH/ 
    146         FAAD1gH/A/0B/wOyAf8BcgFOAR4B/wGpAXYBOQH/AZ8BhQFFAf8BnAGWAVkB/wGnAagBawH/AbABswGQ 
    147         Af8DsgH/AfwC/QH/Ay8BSQgAAzoBYAHWAdcB5AH/Ag4BrQH/AgYBpAH/AqsBzwH/A8oB/wLkAeAB/wI7 
    148         AaAB/wIGAaYB/wKyAb8B/wLWAdgB/wH2AfUB7QH/ARoBGAHAAf8CAwG/Af8BHQEcAaoB/wGPApAB9gFM 
    149         AU0BTgGTAWQBqAH5Af8BYgGlAfkB/wFfAaAB9wH/AVABeAHhAf8DAAEBA0EBcgFNAYcB8AH/AUkBgQHu 
    150         Af8BSQF1AeUB/wMaASUUAAHYAWkBMQH/AdMBZgEvAf8BzgFjAS0B/wHJAWABKwH/AcQBXQEqAf8BvgFa 
    151         ASgB/wG5AVgBKAH/AbQBVQEmAf8BrgFSASUB/wGpAVABJAH/AbsBZAE7Af8BtgFhATkB/wGZAUkBIgH/ 
    152         AeoB3AHVAf8QAAPWAf8B/QL+Af8DsgH/AVUBZQE3Af8BpgG1AYIB/wH2AfwB8gH/Af4B/AHjAf8B/gH7 
    153         Ae0B/wHjAeAB2wH/A7IB/wP9Af8DLwFJCAADWgHAApkB0QH/AjIBvAH/AgUBrQH/AgYBpAH/ArEBzwH/ 
    154         AswBywH/AuQB4QH/AqwBtwH/Ar4BvwH/As8BxgH/AiMBuAH/AgUBsgH/AgUBtAH/AgoBtQH/A9EB/gFY 
    155         AV0BaAHAAWgBrQH8Af8BZgGqAfsB/wFQAXgB4AH/AwABAQgAAU4BdAHeAf8BTgGIAfAB/wFJAYIB7gH/ 
    156         AU4BcgHdAf8DCgENEAAB3wFvATYC/wGrAX4B/wH9AZIBXAH/AfkBjwFaAf8B9AGLAVYB/wHwAYgBUwH/ 
    157         AesBhAFQAf8B5QGAAU0B/wHfAXsBSgH/AdkBdwFHAf8B0wFzAUUB/wHMAW8BQgH/AcYBawE/Af8BoAFM 
    158         ASMB/wHsAdwB1QH/DAAD1gH/A/4B/wOyAf8B7AHrAc0C/wH9Ae8C/wHkAbgC/wH3AckC/wH8AdcB/wHc 
    159         Ac8BrAH/A7IB/wH9Av4B/wMvAUkIAAJiAWMB+AJiAcEB/wIxAcIB/wIxAb4B/wIPAbQB/wIGAagB/wKq 
    160         AdAB/wPMAf8DwwH/AsQBvwH/AicBtAH/AgYBqAH/AgYBqQH/AgYBqQH/AgcBqQH/A/oB/wQAAVUBWQFi 
    161         AboBUQFTAVcBpRQAAVIBiAHsAf8BTgGJAfAB/wFKAYIB7QH/A0MBeAMBAQIMAAHlAXUBPQL/AbwBmAL/ 
    162         AaABbAL/AZwBaAL/AZkBZAL/AZYBXwH/Af0BkgFcAf8B+QGPAVoB/wH1AYsBVgH/AfABiAFTAf8B6gGE 
    163         AVAB/wHmAYABTgH/Ad8BewFKAf8B2QF3AUcB/wGnAU8BJAH/Ae0B3QHVAf8IAAPWAf8D/gH/A7IB/wHU 
    164         AYUBLwH/Ad4BigEyAf8B3gGLATQB/wHeAcoBmQH/Ad4B0AGmAf8B0wHHAZkB/wOyAf8D/gH/Ay8BSQgA 
    165         A2IB4QF7AYABywH/AjgBygH/ATQBNgHIAf8CMgHCAf8BHQEfAbcB/wLLAd4B/wPWAf8CzQHOAf8C4gHh 
    166         Af8CPgGjAf8CBgGkAf8CBgGkAf8CBwGjAf8CCgGhAf8C7QHuAf8gAAJKAUsBigFTAZAB8gH/AU8BigHw 
    167         Af8BTQF3AeMB/wMXASAMAAHqAX0BRgL/AcIBogL/Aa0BfgL/AakBegL/AaYBdQL/AaIBcAL/AZ8BawL/ 
    168         AZwBZwL/AZkBZAL/AZYBYAH/Af0BkgFcAf8B+QGPAVkB/wH1AYsBVgH/AfABiAFTAf8B7QGRAWIB/wGu 
    169         AVQBJwH/CAAD1gX/A7IB/wOyAf8DsgH/A7IB/wOyAf8DsgH/A7IB/wOyAf8B/gP/Ay8BSQgAA04BlAG1 
    170         AbIB2QH+Aj0B1AH/AjsBzgH/ASgBJgHDAf8C6wH2Af8D8QH/AvAB6QH/Ar0B1gH/A88B/wLlAeIB/wI2 
    171         AaAB/wIHAaMB/wIHAZ4B/wIYAaQB/wO7Af0kAAFQAXcB4QH/AVQBkQHzAf8BTwGKAfEB/wFYAVwBbgHN 
    172         AwoBDQgAAeoBhwFSAv8BwgGiAv8BuAGSAv8BtQGNAv8BswGJAv8BrwGEAv8BrQF+Av8BqQF5Av8BpgF1 
    173         Av8BowFwAv8BoAFrAv8BnAFnAv8BmAFjAv8BoQFwAf8BwAFcASkB/wH4Ae4B6QH/CAAD1gX/A/0B/wP9 
    174         Af8D/AH/A/wB/wH7AvwB/wP7Bf8D6QH/A80B/wMrAUIIAAMaASUC4QHjAf4CXAHbAf8COAHWAf8C8gr/ 
    175         AlcB1AH/ASYBJwG9Af8CwwHbAf8D1QH/AugB5QH/AkUBrwH/AiYBpgH/AVEBUwG4Af8CbwFwAfEkAAMQ 
    176         ARUBVwGSAfAB/wFUAZIB8wH/AVABigHwAf8CSAFJAYUDAgEDBAAB6gGPAV8C/wHIAasC/wHGAakC/wHG 
    177         AacC/wHDAaQC/wHBAaEC/wG/AZwC/wG9AZkC/wG6AZUC/wG4AZEC/wG8AZgC/wGpAXkC/wG3AZEB/wHR 
    178         AWUBLwH/AfoB7wHqAf8MAAPWBf8D/QH/A/0B/wH8Av0B/wP8Af8D/AH/AfsC/AH/A9oF/wPEAf8DAwEE 
    179         DAADeQHwApYB1gH/AUkBRwHgAf8CWwHmBf8CVgHcAf8CPgHPAf8COQHJAf8CLAHCAf8CwAHdAf8C0AHg 
    180         Af8CJAGzAf8CMAGxAf8C5AHnAf4DKgFAKAACTAFOAZABWQGYAfUB/wFVAZIB8wH/AU8BgAHmAf8DGgEl 
    181         BAAB6gGXAWsB/wHqAZMBZwH/AeoBkAFhAf8B6gGMAVwB/wHqAYgBVgH/AeoBhQFQAf8B6gGCAUwB/wHq 
    182         AX0BRgH/AegBegFCAf8B5gF2AT4C/wG/AZ0C/wG9AZkB/wHeAW4BNQH/AfsB8AHqAf8QAAPWBf8B/QL+ 
    183         Af8D/QH/A/0B/wP9Af8D/AH/A/wB/wPcAf8DyQH9AwABARAAAxgBIgPLAf4CngHkAf8BSgFMAeYB/wI5 
    184         AdoB/wJHAdwB/wFEAUMB2QH/AUABPwHTAf8CPgHPAf8CNgHIAf8CMQHDAf8COQG+Af8CrAHcAf8DZwHY 
    185         MAABUQF6AeIB/wFaAZkB9QH/AVYBkwHzAf8BTgFzAd0B/wMMARAkAAHqAX4BSAL/AcYBqgH/AecBeAE/ 
    186         Af8B/AHxAesB/xQAA9UB/wPVAf8D1QH/A9UB/wPVAf8D1QH/A9UB/wPVAf8DxgH/HAADMQFOA8sB/gGq 
    187         AakB3wH/AmEB4wH/AksB5AH/AkkB4AH/AkkB3AH/AkYB2AH/AkMB1AH/AkcBwwH/Ac0BzAHoAf8CcgFz 
    188         Aeo0AAMEAQYBWgGUAfAB/wFbAZoB9gH/AVYBlAH0Af8DNgFYJAAB6gGHAVQB/wHqAYQBUAH/Af0B8gHt 
    189         Af9cAAMYASIDeQHwAuMB5AH+ArUB3AH+AZYBlQHXAf8BewF5Ac4B/wGhAaIB2QH/AtEB4gH+A7sB/QNP 
    190         AZg8AANGAX4BXQGcAfUB/wFVAYsB6wH/AwcBCiQAAeoBkAFhAf8B/QHzAe4B/2gAAxoBJQNOAZQDYgHh 
    191         AmIBYwH4A1oBwAM6AWBIAAMCAQMsAAH9AfQB8AH/GAABQgFNAT4HAAE+AwABKAMAAUADAAEgAwABAQEA 
    192         AQEGAAEBFgAD/4EAAcABAwHwAQ8B+AP/AcABAwHgAQMB8AF/Af8BvwHAAQMBwAEBAeABPwH/AZ8BwAED 
    193         AYABAQHAAT8B/wGPAcABAwGAAQABgAEfAf8BhwHAAQMDAAEfAQABAwHAAQMCAAEGAQ8BAAEBAcABAwIA 
    194         AZ8BBwIAAcABAwIAAf8BBwIAAcABAwIAAf8BgwIAAcABAwIAAf8BgQEAAQEBwAEDAYABAAH/AcEBAAED 
    195         AcABBwGAAQEB/wHgAf8BhwHAAR8BwAEDAf8B4AH/AY8C/wHgAQcB/wHwAf8BnwL/AfgBHwH/AfsB/wG/ 
    196         Cw== 
     139        DAADTgGYAsoB6AH/Ag4BnwH/AgcBlQH/AgcBkQH/AgYBngH/AgUBpAH/AgQBrQH/AgMBuAH/AgIBwAH/ 
     140        AgIBxQH/AggB1wH/AhsBpwH/A6YB+gwAAz0BaAFSAYwB7gH/AVABjAHxAf8BSwGGAe8B/wFHAYAB7QH/ 
     141        AUIBdQHrAf8BSwFxAd8B/wMOARM8AAGSAUQBIAH/AY4BQwEfAf8B6QHbAdQB/xgAA9YB/wH8Av0B/wOy 
     142        Af8D6wH/A+sB/wPrAf8D6wH/A+sB/wPrAf8DsgH/AfwC/QH/Ay8BSQwAA7oB/QIXAaYB/wIGAZ8B/wIw 
     143        AacB/wLmAd8B/wI3AZwB/wIFAaQB/wIFAakB/wIEAbAB/wLOAd4B/wLuAfEB/wIDAbwB/wIGAc4B/wG+ 
     144        AcAB4AH/A1ABngQAA0oBiwFbAZkB8wH/AVkBmQH1Af8BVQGTAfMB/wFNAXMB3wH/AUwBegHnAf8BRwGB 
     145        Ae0B/wFDAXYB6wH/AU4CTwGXAwMBBDgAAZ0BSgEhAf8BqQFYATIB/wGTAUUBIAH/AekB2wHUAf8UAAPW 
     146        Af8D/QH/A7IB/wFxAU0BHQH/AakBdQE4Af8BnwGFAUQB/wGcAZYBWAH/AacBqAFqAf8BsAGzAZAB/wOy 
     147        Af8B/AL9Af8DLwFJCAADOgFgAdYB1wHkAf8CDQGtAf8CBQGkAf8CqwHPAf8DygH/AuQB4AH/AjoBoAH/ 
     148        AgUBpgH/ArIBvwH/AtYB2AH/AfYB9QHtAf8BGQEXAcAB/wICAb8B/wEcARsBqgH/AYwCjQH2AkwBTQGT 
     149        AWMBqAH5Af8BYQGlAfkB/wFeAaAB9wH/AU8BdwHhAf8DAAEBA0EBcgFMAYcB8AH/AUgBgQHuAf8BSAF0 
     150        AeUB/wMaASUUAAHYAWgBMAH/AdMBZQEuAf8BzgFiASwB/wHJAV8BKgH/AcQBXAEpAf8BvgFZAScB/wG5 
     151        AVcBJwH/AbQBVAElAf8BrgFRASQB/wGpAU8BIwH/AbsBYwE6Af8BtgFgATgB/wGZAUgBIQH/AeoB3AHV 
     152        Af8QAAPWAf8B/QL+Af8DsgH/AVQBZAE2Af8BpgG1AYIB/wH2AfwB8gH/Af4B/AHjAf8B/gH7Ae0B/wHj 
     153        AeAB2wH/A7IB/wP9Af8DLwFJCAADWgHAApkB0QH/AjEBvAH/AgQBrQH/AgUBpAH/ArEBzwH/AswBywH/ 
     154        AuQB4QH/AqwBtwH/Ar4BvwH/As8BxgH/AiIBuAH/AgQBsgH/AgQBtAH/AgkBtQH/A88B/gFYAVoBYgHA 
     155        AWcBrQH8Af8BZQGqAfsB/wFPAXcB4AH/AwABAQgAAU0BcwHeAf8BTQGIAfAB/wFIAYIB7gH/AU0BcQHd 
     156        Af8DCgENEAAB3wFuATUC/wGrAX0B/wH9AZIBWwH/AfkBjwFZAf8B9AGLAVUB/wHwAYgBUgH/AesBhAFP 
     157        Af8B5QGAAUwB/wHfAXoBSQH/AdkBdgFGAf8B0wFyAUQB/wHMAW4BQQH/AcYBagE+Af8BoAFLASIB/wHs 
     158        AdwB1QH/DAAD1gH/A/4B/wOyAf8B7AHrAc0C/wH9Ae8C/wHkAbgC/wH3AckC/wH8AdcB/wHcAc8BrAH/ 
     159        A7IB/wH9Av4B/wMvAUkIAAJgAWEB+AJhAcEB/wIwAcIB/wIwAb4B/wIOAbQB/wIFAagB/wKqAdAB/wPM 
     160        Af8DwwH/AsQBvwH/AiYBtAH/AgUBqAH/AgUBqQH/AgUBqQH/AgYBqQH/A/oB/wQAAVUBWAFdAboBUQFT 
     161        AVQBpRQAAVEBiAHsAf8BTQGJAfAB/wFJAYIB7QH/A0MBeAMBAQIMAAHlAXQBPAL/AbwBmAL/AaABawL/ 
     162        AZwBZwL/AZkBYwL/AZYBXgH/Af0BkgFbAf8B+QGPAVkB/wH1AYsBVQH/AfABiAFSAf8B6gGEAU8B/wHm 
     163        AYABTQH/Ad8BegFJAf8B2QF2AUYB/wGnAU4BIwH/Ae0B3QHVAf8IAAPWAf8D/gH/A7IB/wHUAYUBLgH/ 
     164        Ad4BigExAf8B3gGLATMB/wHeAcoBmQH/Ad4B0AGmAf8B0wHHAZkB/wOyAf8D/gH/Ay8BSQgAA2EB4QF6 
     165        AYABywH/AjcBygH/ATMBNQHIAf8CMQHCAf8BHAEeAbcB/wLLAd4B/wPWAf8CzQHOAf8C4gHhAf8CPQGj 
     166        Af8CBQGkAf8CBQGkAf8CBgGjAf8CCQGhAf8C7QHuAf8gAANKAYoBUgGQAfIB/wFOAYoB8AH/AUwBdgHj 
     167        Af8DFwEgDAAB6gF8AUUC/wHCAaIC/wGtAX0C/wGpAXkC/wGmAXQC/wGiAW8C/wGfAWoC/wGcAWYC/wGZ 
     168        AWMC/wGWAV8B/wH9AZIBWwH/AfkBjwFYAf8B9QGLAVUB/wHwAYgBUgH/Ae0BkQFhAf8BrgFTASYB/wgA 
     169        A9YF/wOyAf8DsgH/A7IB/wOyAf8DsgH/A7IB/wOyAf8DsgH/Af4D/wMvAUkIAANOAZQBswGwAdcB/gI8 
     170        AdQB/wI6Ac4B/wEnASUBwwH/AusB9gH/A/EB/wLwAekB/wK9AdYB/wPPAf8C5QHiAf8CNQGgAf8CBgGj 
     171        Af8CBgGeAf8CFwGkAf8DugH9JAABTwF2AeEB/wFTAZEB8wH/AU4BigHxAf8BWQFcAWgBzQMKAQ0IAAHq 
     172        AYcBUQL/AcIBogL/AbgBkgL/AbUBjQL/AbMBiQL/Aa8BhAL/Aa0BfQL/AakBeAL/AaYBdAL/AaMBbwL/ 
     173        AaABagL/AZwBZgL/AZgBYgL/AaEBbwH/AcABWwEoAf8B+AHuAekB/wgAA9YF/wP9Af8D/QH/A/wB/wP8 
     174        Af8B+wL8Af8D+wX/A+kB/wPNAf8DKwFCCAADGgElAt8B4QH+AlsB2wH/AjcB1gH/AvIK/wJWAdQB/wEl 
     175        ASYBvQH/AsMB2wH/A9UB/wLoAeUB/wJEAa8B/wIlAaYB/wFQAVIBuAH/Am4BbwHxJAADEAEVAVYBkgHw 
     176        Af8BUwGSAfMB/wFPAYoB8AH/A0gBhQMCAQMEAAHqAY8BXgL/AcgBqwL/AcYBqQL/AcYBpwL/AcMBpAL/ 
     177        AcEBoQL/Ab8BnAL/Ab0BmQL/AboBlQL/AbgBkQL/AbwBmAL/AakBeAL/AbcBkQH/AdEBZAEuAf8B+gHv 
     178        AeoB/wwAA9YF/wP9Af8D/QH/AfwC/QH/A/wB/wP8Af8B+wL8Af8D2gX/A8QB/wMDAQQMAAN2AfAClgHW 
     179        Af8BSAFGAeAB/wJaAeYF/wJVAdwB/wI9Ac8B/wI4AckB/wIrAcIB/wLAAd0B/wLQAeAB/wIjAbMB/wIv 
     180        AbEB/wLiAeUB/gMqAUAoAANMAZABWAGYAfUB/wFUAZIB8wH/AU4BgAHmAf8DGgElBAAB6gGXAWoB/wHq 
     181        AZMBZgH/AeoBkAFgAf8B6gGMAVsB/wHqAYgBVQH/AeoBhQFPAf8B6gGCAUsB/wHqAXwBRQH/AegBeQFB 
     182        Af8B5gF1AT0C/wG/AZ0C/wG9AZkB/wHeAW0BNAH/AfsB8AHqAf8QAAPWBf8B/QL+Af8D/QH/A/0B/wP9 
     183        Af8D/AH/A/wB/wPcAf8DxgH9AwABARAAAxgBIgPJAf4CngHkAf8BSQFLAeYB/wI4AdoB/wJGAdwB/wFD 
     184        AUIB2QH/AT8BPgHTAf8CPQHPAf8CNQHIAf8CMAHDAf8COAG+Af8CrAHcAf8DYwHYMAABUAF5AeIB/wFZ 
     185        AZkB9QH/AVUBkwHzAf8BTQFyAd0B/wMMARAkAAHqAX0BRwL/AcYBqgH/AecBdwE+Af8B/AHxAesB/xQA 
     186        A9UB/wPVAf8D1QH/A9UB/wPVAf8D1QH/A9UB/wPVAf8DxgH/HAADMQFOA8kB/gGqAakB3wH/AmAB4wH/ 
     187        AkoB5AH/AkgB4AH/AkgB3AH/AkUB2AH/AkIB1AH/AkYBwwH/Ac0BzAHoAf8CbwFwAeo0AAMEAQYBWQGU 
     188        AfAB/wFaAZoB9gH/AVUBlAH0Af8DNgFYJAAB6gGHAVMB/wHqAYQBTwH/Af0B8gHtAf9cAAMYASIDdgHw 
     189        AuEB4gH+ArMB2gH+AZYBlQHXAf8BegF4Ac4B/wGhAaIB2QH/As8B4AH+A7oB/QNOAZg8AANGAX4BXAGc 
     190        AfUB/wFUAYsB6wH/AwcBCiQAAeoBkAFgAf8B/QHzAe4B/2gAAxoBJQNOAZQDYQHhAmABYQH4A1oBwAM6 
     191        AWBIAAMCAQMsAAH9AfQB8AH/GAABQgFNAT4HAAE+AwABKAMAAUADAAEgAwABAQEAAQEGAAEBFgAD/4EA 
     192        AcABAwHwAQ8B+AP/AcABAwHgAQMB8AF/Af8BvwHAAQMBwAEBAeABPwH/AZ8BwAEDAYABAQHAAT8B/wGP 
     193        AcABAwGAAQABgAEfAf8BhwHAAQMDAAEfAQABAwHAAQMCAAEGAQ8BAAEBAcABAwIAAZ8BBwIAAcABAwIA 
     194        Af8BBwIAAcABAwIAAf8BgwIAAcABAwIAAf8BgQEAAQEBwAEDAYABAAH/AcEBAAEDAcABBwGAAQEB/wHg 
     195        Af8BhwHAAR8BwAEDAf8B4AH/AY8C/wHgAQcB/wHwAf8BnwL/AfgBHwH/AfsB/wG/Cw== 
    197196</value> 
    198197  </data>