TaxConfig.php 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330
  1. <?php
  2. namespace addons\AvoidTax\common\models;
  3. use yii\helpers\Json;
  4. /**
  5. * This is the model class for table "qimall_addons_tax_config".
  6. *
  7. * @property int $id
  8. * @property int $mall_id mall_id
  9. * @property int $api_type 1xinlong 2luyong
  10. * @property int $type 1 自用版,2服务商版
  11. * @property int $payment_flow_status 过流水账户状态
  12. * @property string $use_scene 使用场景1商城提现2o2o提现
  13. * @property string|null $ali_config 支付宝配置
  14. * @property string|null $tax_config 税务方配置
  15. * @property string|null $ly_config luyong配置
  16. * @property int $settle 1支付宝结算 2银行卡结算
  17. * @property int|null $created_at
  18. * @property int|null $updated_at
  19. */
  20. class TaxConfig extends \common\models\base\BaseActiveRecord
  21. {
  22. /**
  23. * 个人版
  24. */
  25. const PERSONAL = 1;
  26. /**
  27. * 服务商版本
  28. */
  29. const SERVICE = 2;
  30. /**
  31. * xinlong
  32. */
  33. const XIONLONG = 1;
  34. /**
  35. * luyong
  36. */
  37. const LUYONG = 2;
  38. /**
  39. * {@inheritdoc}
  40. */
  41. public static function tableName()
  42. {
  43. return '{{%addons_tax_config}}';
  44. }
  45. /**
  46. * {@inheritdoc}
  47. */
  48. public function rules()
  49. {
  50. return [
  51. [['mall_id', 'api_type', 'type', 'payment_flow_status', 'settle', 'created_at', 'updated_at'], 'integer'],
  52. [['ali_config', 'tax_config', 'ly_config'], 'string'],
  53. [['use_scene'], 'string', 'max' => 255],
  54. ];
  55. }
  56. /**
  57. * {@inheritdoc}
  58. */
  59. public function attributeLabels()
  60. {
  61. return [
  62. 'id' => 'ID',
  63. 'mall_id' => 'Mall ID',
  64. 'api_type' => 'Api Type',
  65. 'type' => 'Type',
  66. 'payment_flow_status' => 'Payment Flow Status',
  67. 'use_scene' => 'Use Scene',
  68. 'ali_config' => 'Ali Config',
  69. 'tax_config' => 'Tax Config',
  70. 'ly_config' => 'Ly Config',
  71. 'settle' => 'Settle',
  72. 'created_at' => 'Created At',
  73. 'updated_at' => 'Updated At',
  74. ];
  75. }
  76. /**
  77. * 获取配置
  78. *
  79. * @param integer $mall_id
  80. * @return array
  81. */
  82. public static function getConfig(int $mall_id)
  83. {
  84. return static::find()
  85. ->where(['mall_id' => $mall_id])
  86. ->asArray()
  87. ->one();
  88. }
  89. /**
  90. * 加载配置
  91. *
  92. * @param int $mall_id
  93. * @return static
  94. */
  95. public static function read($mall_id)
  96. {
  97. $res = self::find()->where(['mall_id' => $mall_id])->one();
  98. if (!empty($res)) {
  99. $res->type = !empty($res->type) ? $res->type : static::PERSONAL; // 默认使用自用版本
  100. $res->type = !empty($res->api_type) ? $res->api_type : static::XIONLONG; // 默认使用xinlong版本
  101. $res->use_scene = explode(',', $res->use_scene);
  102. $res->ali_config = Json::decode($res->ali_config);
  103. $res->tax_config = Json::decode($res->tax_config);
  104. }
  105. return $res;
  106. }
  107. /**
  108. * 获取支付宝配置
  109. *
  110. * @return array
  111. */
  112. public function getAliConfig()
  113. {
  114. // 判断类型
  115. if ($this->type == static::PERSONAL) {
  116. return $this->ali_config;
  117. }
  118. if ($this->type == static::SERVICE) {
  119. return $this->getServiceConfig();
  120. }
  121. throw new \Exception('类型有误');
  122. }
  123. /**
  124. * 获取税务方配置
  125. *
  126. * @return array
  127. */
  128. public function getTaxConfig()
  129. {
  130. return $this->tax_config;
  131. }
  132. /**
  133. * 通过mall—id获取model
  134. *
  135. * @param integer $mall_id
  136. * @return static
  137. */
  138. public static function getModelByMallId(int $mall_id)
  139. {
  140. $model = static::find()->where(['mall_id' => $mall_id])->one();
  141. return !empty($model) ? $model : new static;
  142. }
  143. /**
  144. * 服务商配置
  145. *
  146. * @return array
  147. */
  148. public function getServiceConfig()
  149. {
  150. return [
  151. 'app_id' => '2021003186692388',
  152. 'private_key' => 'MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQC3sfQJc3EvW8K4l3Wsy5c/9bsetNStVQnasxLjtxA0Nj3yGbFgGBzeIGGGzdyj8ZxLVkJ7A9uVA0bFr2ESDownjpgSqVW4e8rW/4Aa2QXjn8Nx672v+hidZ9t+u/vSRgjDBShl9qAdSh1UbMUFbsbpxUsYUNUfx9g1TVSwwjh6W2AQw7NCvrGAUTSOhwpfhRU8DMu2PRXerhmPqdvqecdzXYq/YmYCIRN6OuX3sUEFPjdiCcksm3lnVRJYu9tALY/DWWfaf3NDJkg5yAboT8OQZIoj4l7YFBm8gB9cYnBXRAiCXYkYjTLatws/ZLvgn43Ua9D9OlRYnjudKRhsGQpVAgMBAAECggEAQmgmnLQLGt/FSQ4YEFuZVhnzh2o/6FlxsopCLegkB3wEcN0w7lhJN1PlbeJF/U5+/g01A1ulqf0BPL3mDa0MpdA60aQ9xO+bqJW9Lfd+1YcQFMLwVAnJlD3Tb8Fti9qdmELpE9NQlsYQTFD1+LzPU/tq5mNyaIbKdpp6H1xXJoP9LQ6kj9mVMGFofkpRAj5WjsMImZI9KPRhwQ0/mDYKE5de59yBvOajz7aA9CGElntxqNoKtOpdD+Zsz/kJcWbdFCJlVpM4i91CBESt4DNI24rmOuVat13td3PUiX2MpyofqTvhxcQBdwpSHxsIPQOxlwMHwMQQ8t7vB4La01FvEQKBgQDbjXIsF6DgMdNISyUvQvybmLjbaLFvM2GhIVah8f68hk7oEiqtV8wIYDkVCYRj9nwnHVQnTri0qaS0s54RKDMXWh0sF2pRmJJUEsA4OI9fGSsamtbwNBRTZSCms0cg5L/iFU4RCYrAxAqVMl35O1CktoBW8htkUyngXr8rh/cMOwKBgQDWMKNUGNqY4az7Q6eJSZOpK2opTinEt3hww+oEyuheMicHTeCzExi97RM6JVeaBXcSr4M9sOF+ZThrO9o4G91xKSTKpCxZ0hshN0Cp2jm/HRE4fsMxIPz/5a/R5fumL1H7mcGYSLDaIfTuRvlISR4sCZlemZ+h2GtNeRaGsUIqrwKBgCoPV98Ai85HXU2NL8t1DsWUJV3LGarO8hYXN+yAWqetJzKoQErC9hBotqbEEvu/fZtUsAlzuEjL8wS3IEHzLI59sfb/aVvGWcoHaZGbrEOwo6ROI30SzQ4I4o9s6uRvTh82q6Tx6gXxyIE6i+wyI8naOI3vhbXbhLs6C2+AdaB/AoGARo32/zjAqSONq6b5hQurjEo0yi5pK9eT4PFoIPQF3yF+IbXRkqtztvxlHP44ARBTzN/rx2KApPYKw6gPlfP32dLHv8ico2nGbgaZUloEM6QLjCSVf5VyQYkThXzQjEmCI/LeBp/LQc91sxfF/b24JqFy1+qa3uE/V2HPvcaeGRkCgYBgEo8ng+ier3XHA78svKJBUAeKk/s3h4x5jeGw1YJxctDKP34Rn3NGeEeWL3pDKDDvOHCsck0DKX4GFgKoStdN8++aY4z/asrF3OViomkXtdZDPVtW7FeWzP+OKp/I1hDjVqqtIlUfKBBSKJTDXt/f8sdeIH5hfuIRxBI23Nfdag==',
  153. 'app_public_key' => '-----BEGIN CERTIFICATE-----
  154. MIIEsTCCA5mgAwIBAgIQICMEB+3HaZzKSgDni7N0lDANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UE
  155. BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmljYXRpb24gQXV0
  156. aG9yaXR5MTkwNwYDVQQDDDBBbnQgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IENs
  157. YXNzIDEgUjEwHhcNMjMwNDA3MDEyNzAzWhcNMjgwNDA1MDEyNzAzWjB5MQswCQYDVQQGEwJDTjEt
  158. MCsGA1UECgwk5bm/5bee5LiD5Lu25LqL6K6h566X5py65pyJ6ZmQ5YWs5Y+4MQ8wDQYDVQQLDAZB
  159. bGlwYXkxKjAoBgNVBAMMITIwODg1NDE5NDM2NDkxMzUtMjAyMTAwMzE4NjY5MjM4ODCCASIwDQYJ
  160. KoZIhvcNAQEBBQADggEPADCCAQoCggEBALex9AlzcS9bwriXdazLlz/1ux601K1VCdqzEuO3EDQ2
  161. PfIZsWAYHN4gYYbN3KPxnEtWQnsD25UDRsWvYRIOjCeOmBKpVbh7ytb/gBrZBeOfw3Hrva/6GJ1n
  162. 2367+9JGCMMFKGX2oB1KHVRsxQVuxunFSxhQ1R/H2DVNVLDCOHpbYBDDs0K+sYBRNI6HCl+FFTwM
  163. y7Y9Fd6uGY+p2+p5x3Ndir9iZgIhE3o65fexQQU+N2IJySybeWdVEli720Atj8NZZ9p/c0MmSDnI
  164. BuhPw5BkiiPiXtgUGbyAH1xicFdECIJdiRiNMtq3Cz9ku+CfjdRr0P06VFieO50pGGwZClUCAwEA
  165. AaOCASkwggElMB8GA1UdIwQYMBaAFHEH4gRhFuTl8mXrMQ/J4PQ8mtWRMB0GA1UdDgQWBBRfqIbZ
  166. s9uye3huMa5sh4Ag/AflYDBABgNVHSAEOTA3MDUGB2CBHAFuAQEwKjAoBggrBgEFBQcCARYcaHR0
  167. cDovL2NhLmFsaXBheS5jb20vY3BzLnBkZjAOBgNVHQ8BAf8EBAMCBsAwLwYDVR0fBCgwJjAkoCKg
  168. IIYeaHR0cDovL2NhLmFsaXBheS5jb20vY3JsNzYuY3JsMGAGCCsGAQUFBwEBBFQwUjAoBggrBgEF
  169. BQcwAoYcaHR0cDovL2NhLmFsaXBheS5jb20vY2E2LmNlcjAmBggrBgEFBQcwAYYaaHR0cDovL2Nh
  170. LmFsaXBheS5jb206ODM0MC8wDQYJKoZIhvcNAQELBQADggEBANqZT+Di5TRxNwMyeech0OPNurf1
  171. nGAMj9IUfMprecxWuhhlXCImEHvq/BIa/WTqDtOOs30it0/zD9ctoWwAD0Oz9GLeuOKrLm8465Cb
  172. wrMZ67Y8hNC0MdnbPDLERXqhOJl7xSLDQYZHjNs9gRj+8RCYn9A2r6TkvhqoqA2Guusw3aoo0M8j
  173. W+oNkx2EiHWuhNQ+fQ6ziCVMHe9siUEC//ACr29oKlUcIKPwXwsmBBEm8kO3GMHEmnmh9lcSrVN4
  174. 3DcQvzqz4Tjkz9znGXUC31pAgltPRCPXwaTxF+6e+IQ1aThc7UIsmDT/x1hel1V5ZJW1Z8HXJqRe
  175. +fs2xKU0fO4=
  176. -----END CERTIFICATE-----',
  177. 'alipay_public_key' => '-----BEGIN CERTIFICATE-----
  178. MIIDsjCCApqgAwIBAgIQICMEB5xYYAsbn86OMvNwhjANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UE
  179. BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmljYXRpb24gQXV0
  180. aG9yaXR5MTkwNwYDVQQDDDBBbnQgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IENs
  181. YXNzIDIgUjEwHhcNMjMwNDA3MDEyNzA0WhcNMjgwNDA1MDEyNzA0WjCBkjELMAkGA1UEBhMCQ04x
  182. LTArBgNVBAoMJOW5v+W3nuS4g+S7tuS6i+iuoeeul+acuuaciemZkOWFrOWPuDEPMA0GA1UECwwG
  183. QWxpcGF5MUMwQQYDVQQDDDrmlK/ku5jlrp0o5Lit5Zu9Kee9kee7nOaKgOacr+aciemZkOWFrOWP
  184. uC0yMDg4NTQxOTQzNjQ5MTM1MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtSI37bmI
  185. omwSy0NUJwLUcfwIyyifdzQXU2YNqD5/ebMY4B62JyAsaelAkv3mMcI3JWlMxWYFt2VOiUItvFlM
  186. Uz7MW0KO5OEhifugAtUZI3gkK6A+0lRXQCif++ycxtHimtOxBS/royiDI/mFMGHDuyi76Fub117i
  187. MnuZv4jU8W7ZYPCC7BbIHb72h7eyzMZ9Ug9TRbSbgtxxwhMaX2DkifO37wWAonsX34x0PUxT2+1m
  188. gIp+JEDnDTXRyO69G2EMjn/CaN7cVFSMHU9NPZHlDZz/CLg3ta7FsicpBLKwkcbfvT4XKwGWQCy6
  189. ZF4b7GZVahaMW3w8xc21hqEoF66TSQIDAQABoxIwEDAOBgNVHQ8BAf8EBAMCA/gwDQYJKoZIhvcN
  190. AQELBQADggEBAJDLTnQyPtdPDzX60Pt16ZO6G3rTCyAtZ5N1yDQ4NH0ANhduj7qXUyFKDweseZbK
  191. o5q5HXFZigJ+cVmN0MgZTvRX4AggX+v9KyAFW8o/MPZQmQy1VdX1h6UhxT2mbAqTSDyIIuwsE2ZC
  192. D1Ng5Cb3gCtHkjCVawDIrekY3R9EV+V/fL61+9sfOJTpcr2/vtKTpQDXvSyDV696OcmH189ufgiQ
  193. 6Sm7xP7XPosdLu19sflfiSPpXqSOjRldUSnIrPsASyY08MKUdjfe9QpDnyoKNMGWMRmIgTDv0MtF
  194. rfVPmYCvf6/azFi6gaX+9x5DSWQzlWtWihda5mwjxiL0wGrNVUU=
  195. -----END CERTIFICATE-----
  196. -----BEGIN CERTIFICATE-----
  197. MIIE4jCCAsqgAwIBAgIIYsSr5bKAMl8wDQYJKoZIhvcNAQELBQAwejELMAkGA1UEBhMCQ04xFjAU
  198. BgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmljYXRpb24gQXV0aG9yaXR5MTEw
  199. LwYDVQQDDChBbnQgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IFIxMB4XDTE4MDMy
  200. MjE0MzQxNVoXDTM3MTEyNjE0MzQxNVowgYIxCzAJBgNVBAYTAkNOMRYwFAYDVQQKDA1BbnQgRmlu
  201. YW5jaWFsMSAwHgYDVQQLDBdDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTE5MDcGA1UEAwwwQW50IEZp
  202. bmFuY2lhbCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSBDbGFzcyAyIFIxMIIBIjANBgkqhkiG9w0B
  203. AQEFAAOCAQ8AMIIBCgKCAQEAsLMfYaoRoPRbmDcAfXPCmKf43pWRN5yTXa/KJWO0l+mrgQvs89bA
  204. NEvbDUxlkGwycwtwi5DgBuBgVhLliXu+R9CYgr2dXs8D8Hx/gsggDcyGPLmVrDOnL+dyeauheARZ
  205. fA3du60fwEwwbGcVIpIxPa/4n3IS/ElxQa6DNgqxh8J9Xwh7qMGl0JK9+bALuxf7B541Gr4p0WEN
  206. G8fhgjBV4w4ut9eQLOoa1eddOUSZcy46Z7allwowwgt7b5VFfx/P1iKJ3LzBMgkCK7GZ2kiLrL7R
  207. iqV+h482J7hkJD+ardoc6LnrHO/hIZymDxok+VH9fVeUdQa29IZKrIDVj65THQIDAQABo2MwYTAf
  208. BgNVHSMEGDAWgBRfdLQEwE8HWurlsdsio4dBspzhATAdBgNVHQ4EFgQUSqHkYINtUSAtDPnS8Xoy
  209. oP9p7qEwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggIB
  210. AIQ8TzFy4bVIVb8+WhHKCkKNPcJe2EZuIcqvRoi727lZTJOfYy/JzLtckyZYfEI8J0lasZ29wkTt
  211. a1IjSo+a6XdhudU4ONVBrL70U8Kzntplw/6TBNbLFpp7taRALjUgbCOk4EoBMbeCL0GiYYsTS0mw
  212. 7xdySzmGQku4GTyqutIGPQwKxSj9iSFw1FCZqr4VP4tyXzMUgc52SzagA6i7AyLedd3tbS6lnR5B
  213. L+W9Kx9hwT8L7WANAxQzv/jGldeuSLN8bsTxlOYlsdjmIGu/C9OWblPYGpjQQIRyvs4Cc/mNhrh+
  214. 14EQgwuemIIFDLOgcD+iISoN8CqegelNcJndFw1PDN6LkVoiHz9p7jzsge8RKay/QW6C03KNDpWZ
  215. EUCgCUdfHfo8xKeR+LL1cfn24HKJmZt8L/aeRZwZ1jwePXFRVtiXELvgJuM/tJDIFj2KD337iV64
  216. fWcKQ/ydDVGqfDZAdcU4hQdsrPWENwPTQPfVPq2NNLMyIH9+WKx9Ed6/WzeZmIy5ZWpX1TtTolo6
  217. OJXQFeItMAjHxW/ZSZTok5IS3FuRhExturaInnzjYpx50a6kS34c5+c8hYq7sAtZ/CNLZmBnBCFD
  218. aMQqT8xFZJ5uolUaSeXxg7JFY1QsYp5RKvj4SjFwCGKJ2+hPPe9UyyltxOidNtxjaknOCeBHytOr
  219. -----END CERTIFICATE-----',
  220. 'alipay_root' => '-----BEGIN CERTIFICATE-----
  221. MIIBszCCAVegAwIBAgIIaeL+wBcKxnswDAYIKoEcz1UBg3UFADAuMQswCQYDVQQG
  222. EwJDTjEOMAwGA1UECgwFTlJDQUMxDzANBgNVBAMMBlJPT1RDQTAeFw0xMjA3MTQw
  223. MzExNTlaFw00MjA3MDcwMzExNTlaMC4xCzAJBgNVBAYTAkNOMQ4wDAYDVQQKDAVO
  224. UkNBQzEPMA0GA1UEAwwGUk9PVENBMFkwEwYHKoZIzj0CAQYIKoEcz1UBgi0DQgAE
  225. MPCca6pmgcchsTf2UnBeL9rtp4nw+itk1Kzrmbnqo05lUwkwlWK+4OIrtFdAqnRT
  226. V7Q9v1htkv42TsIutzd126NdMFswHwYDVR0jBBgwFoAUTDKxl9kzG8SmBcHG5Yti
  227. W/CXdlgwDAYDVR0TBAUwAwEB/zALBgNVHQ8EBAMCAQYwHQYDVR0OBBYEFEwysZfZ
  228. MxvEpgXBxuWLYlvwl3ZYMAwGCCqBHM9VAYN1BQADSAAwRQIgG1bSLeOXp3oB8H7b
  229. 53W+CKOPl2PknmWEq/lMhtn25HkCIQDaHDgWxWFtnCrBjH16/W3Ezn7/U/Vjo5xI
  230. pDoiVhsLwg==
  231. -----END CERTIFICATE-----
  232. -----BEGIN CERTIFICATE-----
  233. MIIF0zCCA7ugAwIBAgIIH8+hjWpIDREwDQYJKoZIhvcNAQELBQAwejELMAkGA1UE
  234. BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmlj
  235. YXRpb24gQXV0aG9yaXR5MTEwLwYDVQQDDChBbnQgRmluYW5jaWFsIENlcnRpZmlj
  236. YXRpb24gQXV0aG9yaXR5IFIxMB4XDTE4MDMyMTEzNDg0MFoXDTM4MDIyODEzNDg0
  237. MFowejELMAkGA1UEBhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNV
  238. BAsMF0NlcnRpZmljYXRpb24gQXV0aG9yaXR5MTEwLwYDVQQDDChBbnQgRmluYW5j
  239. aWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IFIxMIICIjANBgkqhkiG9w0BAQEF
  240. AAOCAg8AMIICCgKCAgEAtytTRcBNuur5h8xuxnlKJetT65cHGemGi8oD+beHFPTk
  241. rUTlFt9Xn7fAVGo6QSsPb9uGLpUFGEdGmbsQ2q9cV4P89qkH04VzIPwT7AywJdt2
  242. xAvMs+MgHFJzOYfL1QkdOOVO7NwKxH8IvlQgFabWomWk2Ei9WfUyxFjVO1LVh0Bp
  243. dRBeWLMkdudx0tl3+21t1apnReFNQ5nfX29xeSxIhesaMHDZFViO/DXDNW2BcTs6
  244. vSWKyJ4YIIIzStumD8K1xMsoaZBMDxg4itjWFaKRgNuPiIn4kjDY3kC66Sl/6yTl
  245. YUz8AybbEsICZzssdZh7jcNb1VRfk79lgAprm/Ktl+mgrU1gaMGP1OE25JCbqli1
  246. Pbw/BpPynyP9+XulE+2mxFwTYhKAwpDIDKuYsFUXuo8t261pCovI1CXFzAQM2w7H
  247. DtA2nOXSW6q0jGDJ5+WauH+K8ZSvA6x4sFo4u0KNCx0ROTBpLif6GTngqo3sj+98
  248. SZiMNLFMQoQkjkdN5Q5g9N6CFZPVZ6QpO0JcIc7S1le/g9z5iBKnifrKxy0TQjtG
  249. PsDwc8ubPnRm/F82RReCoyNyx63indpgFfhN7+KxUIQ9cOwwTvemmor0A+ZQamRe
  250. 9LMuiEfEaWUDK+6O0Gl8lO571uI5onYdN1VIgOmwFbe+D8TcuzVjIZ/zvHrAGUcC
  251. AwEAAaNdMFswCwYDVR0PBAQDAgEGMAwGA1UdEwQFMAMBAf8wHQYDVR0OBBYEFF90
  252. tATATwda6uWx2yKjh0GynOEBMB8GA1UdIwQYMBaAFF90tATATwda6uWx2yKjh0Gy
  253. nOEBMA0GCSqGSIb3DQEBCwUAA4ICAQCVYaOtqOLIpsrEikE5lb+UARNSFJg6tpkf
  254. tJ2U8QF/DejemEHx5IClQu6ajxjtu0Aie4/3UnIXop8nH/Q57l+Wyt9T7N2WPiNq
  255. JSlYKYbJpPF8LXbuKYG3BTFTdOVFIeRe2NUyYh/xs6bXGr4WKTXb3qBmzR02FSy3
  256. IODQw5Q6zpXj8prYqFHYsOvGCEc1CwJaSaYwRhTkFedJUxiyhyB5GQwoFfExCVHW
  257. 05ZFCAVYFldCJvUzfzrWubN6wX0DD2dwultgmldOn/W/n8at52mpPNvIdbZb2F41
  258. T0YZeoWnCJrYXjq/32oc1cmifIHqySnyMnavi75DxPCdZsCOpSAT4j4lAQRGsfgI
  259. kkLPGQieMfNNkMCKh7qjwdXAVtdqhf0RVtFILH3OyEodlk1HYXqX5iE5wlaKzDop
  260. PKwf2Q3BErq1xChYGGVS+dEvyXc/2nIBlt7uLWKp4XFjqekKbaGaLJdjYP5b2s7N
  261. 1dM0MXQ/f8XoXKBkJNzEiM3hfsU6DOREgMc1DIsFKxfuMwX3EkVQM1If8ghb6x5Y
  262. jXayv+NLbidOSzk4vl5QwngO/JYFMkoc6i9LNwEaEtR9PhnrdubxmrtM+RjfBm02
  263. 77q3dSWFESFQ4QxYWew4pHE0DpWbWy/iMIKQ6UZ5RLvB8GEcgt8ON7BBJeMc+Dyi
  264. kT9qhqn+lw==
  265. -----END CERTIFICATE-----
  266. -----BEGIN CERTIFICATE-----
  267. MIICiDCCAgygAwIBAgIIQX76UsB/30owDAYIKoZIzj0EAwMFADB6MQswCQYDVQQG
  268. EwJDTjEWMBQGA1UECgwNQW50IEZpbmFuY2lhbDEgMB4GA1UECwwXQ2VydGlmaWNh
  269. dGlvbiBBdXRob3JpdHkxMTAvBgNVBAMMKEFudCBGaW5hbmNpYWwgQ2VydGlmaWNh
  270. dGlvbiBBdXRob3JpdHkgRTEwHhcNMTkwNDI4MTYyMDQ0WhcNNDkwNDIwMTYyMDQ0
  271. WjB6MQswCQYDVQQGEwJDTjEWMBQGA1UECgwNQW50IEZpbmFuY2lhbDEgMB4GA1UE
  272. CwwXQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxMTAvBgNVBAMMKEFudCBGaW5hbmNp
  273. YWwgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgRTEwdjAQBgcqhkjOPQIBBgUrgQQA
  274. IgNiAASCCRa94QI0vR5Up9Yr9HEupz6hSoyjySYqo7v837KnmjveUIUNiuC9pWAU
  275. WP3jwLX3HkzeiNdeg22a0IZPoSUCpasufiLAnfXh6NInLiWBrjLJXDSGaY7vaokt
  276. rpZvAdmjXTBbMAsGA1UdDwQEAwIBBjAMBgNVHRMEBTADAQH/MB0GA1UdDgQWBBRZ
  277. 4ZTgDpksHL2qcpkFkxD2zVd16TAfBgNVHSMEGDAWgBRZ4ZTgDpksHL2qcpkFkxD2
  278. zVd16TAMBggqhkjOPQQDAwUAA2gAMGUCMQD4IoqT2hTUn0jt7oXLdMJ8q4vLp6sg
  279. wHfPiOr9gxreb+e6Oidwd2LDnC4OUqCWiF8CMAzwKs4SnDJYcMLf2vpkbuVE4dTH
  280. Rglz+HGcTLWsFs4KxLsq7MuU+vJTBUeDJeDjdA==
  281. -----END CERTIFICATE-----
  282. -----BEGIN CERTIFICATE-----
  283. MIIDxTCCAq2gAwIBAgIUEMdk6dVgOEIS2cCP0Q43P90Ps5YwDQYJKoZIhvcNAQEF
  284. BQAwajELMAkGA1UEBhMCQ04xEzARBgNVBAoMCmlUcnVzQ2hpbmExHDAaBgNVBAsM
  285. E0NoaW5hIFRydXN0IE5ldHdvcmsxKDAmBgNVBAMMH2lUcnVzQ2hpbmEgQ2xhc3Mg
  286. MiBSb290IENBIC0gRzMwHhcNMTMwNDE4MDkzNjU2WhcNMzMwNDE4MDkzNjU2WjBq
  287. MQswCQYDVQQGEwJDTjETMBEGA1UECgwKaVRydXNDaGluYTEcMBoGA1UECwwTQ2hp
  288. bmEgVHJ1c3QgTmV0d29yazEoMCYGA1UEAwwfaVRydXNDaGluYSBDbGFzcyAyIFJv
  289. b3QgQ0EgLSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOPPShpV
  290. nJbMqqCw6Bz1kehnoPst9pkr0V9idOwU2oyS47/HjJXk9Rd5a9xfwkPO88trUpz5
  291. 4GmmwspDXjVFu9L0eFaRuH3KMha1Ak01citbF7cQLJlS7XI+tpkTGHEY5pt3EsQg
  292. wykfZl/A1jrnSkspMS997r2Gim54cwz+mTMgDRhZsKK/lbOeBPpWtcFizjXYCqhw
  293. WktvQfZBYi6o4sHCshnOswi4yV1p+LuFcQ2ciYdWvULh1eZhLxHbGXyznYHi0dGN
  294. z+I9H8aXxqAQfHVhbdHNzi77hCxFjOy+hHrGsyzjrd2swVQ2iUWP8BfEQqGLqM1g
  295. KgWKYfcTGdbPB1MCAwEAAaNjMGEwHQYDVR0OBBYEFG/oAMxTVe7y0+408CTAK8hA
  296. uTyRMB8GA1UdIwQYMBaAFG/oAMxTVe7y0+408CTAK8hAuTyRMA8GA1UdEwEB/wQF
  297. MAMBAf8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBBQUAA4IBAQBLnUTfW7hp
  298. emMbuUGCk7RBswzOT83bDM6824EkUnf+X0iKS95SUNGeeSWK2o/3ALJo5hi7GZr3
  299. U8eLaWAcYizfO99UXMRBPw5PRR+gXGEronGUugLpxsjuynoLQu8GQAeysSXKbN1I
  300. UugDo9u8igJORYA+5ms0s5sCUySqbQ2R5z/GoceyI9LdxIVa1RjVX8pYOj8JFwtn
  301. DJN3ftSFvNMYwRuILKuqUYSHc2GPYiHVflDh5nDymCMOQFcFG3WsEuB+EYQPFgIU
  302. 1DHmdZcz7Llx8UOZXX2JupWCYzK1XhJb+r4hK5ncf/w8qGtYlmyJpxk3hr1TfUJX
  303. Yf4Zr0fJsGuv
  304. -----END CERTIFICATE-----',
  305. ];
  306. }
  307. }