taxtank-core 0.12.3 → 0.13.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (478) hide show
  1. package/bundles/taxtank-core.umd.js +2528 -2274
  2. package/bundles/taxtank-core.umd.js.map +1 -1
  3. package/esm2015/lib/collections/account-setup-item.collection.js +3 -2
  4. package/esm2015/lib/collections/collection.js +44 -28
  5. package/esm2015/lib/collections/income-source.collection.js +1 -8
  6. package/esm2015/lib/collections/report/property/property-report-item-depreciation.collection.js +2 -2
  7. package/esm2015/lib/collections/report/property/property-report-item-transaction.collection.js +2 -2
  8. package/esm2015/lib/collections/report/vehicle-expense/vehicle-expense.collection.js +20 -0
  9. package/esm2015/lib/collections/subscription/service-subscription.collection.js +17 -0
  10. package/esm2015/lib/db/Enums/subscription/service-payment-status.enum.js +6 -0
  11. package/esm2015/lib/db/Enums/subscription/service-price-list.enum.js +5 -0
  12. package/esm2015/lib/db/Enums/{service-price-recurring-interval.enum.js → subscription/service-price-recurring-interval.enum.js} +1 -1
  13. package/esm2015/lib/db/Enums/subscription/service-price-type.enum.js +6 -0
  14. package/esm2015/lib/db/Enums/subscription/service-product-id.enum.js +10 -0
  15. package/esm2015/lib/db/Enums/subscription/service-product-status.enum.js +6 -0
  16. package/esm2015/lib/db/Enums/{service-subscription-status.enum.js → subscription/service-subscription-status.enum.js} +1 -1
  17. package/esm2015/lib/db/Enums/user-roles.enum.js +2 -1
  18. package/esm2015/lib/db/Models/abstract-model.js +7 -0
  19. package/esm2015/lib/db/Models/address.js +3 -2
  20. package/esm2015/lib/db/Models/bank/bank-account-balance.js +4 -0
  21. package/esm2015/lib/db/Models/bank/bank-account-property.js +4 -0
  22. package/esm2015/lib/db/Models/bank/bank-account.js +4 -0
  23. package/esm2015/lib/db/Models/bank/bank-connection.js +4 -0
  24. package/esm2015/lib/db/Models/bank/bank-transaction-import.js +4 -0
  25. package/esm2015/lib/db/Models/bank/bank-transaction.js +4 -0
  26. package/esm2015/lib/db/Models/bank/bank.js +4 -0
  27. package/esm2015/lib/db/Models/bank/basiq-job.js +4 -0
  28. package/esm2015/lib/db/Models/bank/financial-data-system.js +4 -0
  29. package/esm2015/lib/db/Models/chart-accounts/chart-accounts-depreciation.js +4 -0
  30. package/esm2015/lib/db/Models/chart-accounts/chart-accounts-heading.js +4 -0
  31. package/esm2015/lib/db/Models/chart-accounts/chart-accounts-metadata.js +4 -0
  32. package/esm2015/lib/db/Models/chart-accounts/chart-accounts-value.js +4 -0
  33. package/esm2015/lib/db/Models/chart-accounts/chart-accounts.js +4 -0
  34. package/esm2015/lib/db/Models/country.js +3 -2
  35. package/esm2015/lib/db/Models/depreciation/depreciation-capital-project.js +4 -0
  36. package/esm2015/lib/db/Models/depreciation/depreciation-forecast.js +4 -0
  37. package/esm2015/lib/db/Models/depreciation/depreciation-receipt.js +4 -0
  38. package/esm2015/lib/db/Models/depreciation/depreciation.js +4 -0
  39. package/esm2015/lib/db/Models/document/document-folder.js +4 -0
  40. package/esm2015/lib/db/Models/document/document.js +4 -0
  41. package/esm2015/lib/db/Models/document/property-document.js +10 -0
  42. package/esm2015/lib/db/Models/firm/accountant/tax-review.js +4 -0
  43. package/esm2015/lib/db/Models/firm/accountant/ticket.js +4 -0
  44. package/esm2015/lib/db/Models/firm/chat.js +4 -0
  45. package/esm2015/lib/db/Models/firm/client-invite.js +4 -0
  46. package/esm2015/lib/db/Models/firm/client-movement.js +4 -0
  47. package/esm2015/lib/db/Models/firm/employee-invite.js +4 -0
  48. package/esm2015/lib/db/Models/firm/firm.js +4 -0
  49. package/esm2015/lib/db/Models/firm/message-document.js +4 -0
  50. package/esm2015/lib/db/Models/firm/message.js +4 -0
  51. package/esm2015/lib/db/Models/incomeSource/income-source-forecast.js +4 -0
  52. package/esm2015/lib/db/Models/incomeSource/income-source-type.js +4 -0
  53. package/esm2015/lib/db/Models/incomeSource/income-source.js +4 -0
  54. package/esm2015/lib/db/Models/incomeSource/salary-forecast.js +4 -0
  55. package/esm2015/lib/db/Models/loan/borrowing-expense-loan.js +4 -0
  56. package/esm2015/lib/db/Models/loan/borrowing-expense.js +4 -0
  57. package/esm2015/lib/db/Models/loan/loan-payout.js +4 -0
  58. package/esm2015/lib/db/Models/loan/loan.js +4 -0
  59. package/esm2015/lib/db/Models/phone.js +3 -2
  60. package/esm2015/lib/db/Models/property/property-category-movement.js +3 -2
  61. package/esm2015/lib/db/Models/property/property-category.js +3 -2
  62. package/esm2015/lib/db/Models/property/property-forecast.js +3 -2
  63. package/esm2015/lib/db/Models/property/property-sale/property-sale-tax-exemption-metadata.js +3 -2
  64. package/esm2015/lib/db/Models/property/property-sale/property-sale.js +3 -2
  65. package/esm2015/lib/db/Models/property/property-sale/tax-exemption-metadata.js +3 -2
  66. package/esm2015/lib/db/Models/property/property-sale/tax-exemption.js +3 -2
  67. package/esm2015/lib/db/Models/property/property-share.js +3 -2
  68. package/esm2015/lib/db/Models/property/property-subscription.js +3 -2
  69. package/esm2015/lib/db/Models/property/property-valuation.js +3 -2
  70. package/esm2015/lib/db/Models/property/property.js +3 -2
  71. package/esm2015/lib/db/Models/service-notification.js +3 -2
  72. package/esm2015/lib/db/Models/sole/sole-forecast.js +4 -0
  73. package/esm2015/lib/db/Models/subscription/service-payment.js +4 -0
  74. package/esm2015/lib/db/Models/subscription/service-price.js +4 -0
  75. package/esm2015/lib/db/Models/subscription/service-product.js +4 -0
  76. package/esm2015/lib/db/Models/subscription/service-subscription-item.js +4 -0
  77. package/esm2015/lib/db/Models/subscription/service-subscription.js +4 -0
  78. package/esm2015/lib/db/Models/tax-return/tax-return-category.js +4 -0
  79. package/esm2015/lib/db/Models/tax-return/tax-return-item.js +4 -0
  80. package/esm2015/lib/db/Models/tax-return/tax-return.js +4 -0
  81. package/esm2015/lib/db/Models/transaction/transaction-allocation.js +4 -0
  82. package/esm2015/lib/db/Models/transaction/transaction-base.js +26 -0
  83. package/esm2015/lib/db/Models/transaction/transaction-metadata.js +4 -0
  84. package/esm2015/lib/db/Models/transaction/transaction-receipt.js +4 -0
  85. package/esm2015/lib/db/Models/transaction/transaction.js +4 -0
  86. package/esm2015/lib/db/Models/user/client-details.js +4 -0
  87. package/esm2015/lib/db/Models/user/client-income-types.js +4 -0
  88. package/esm2015/lib/db/Models/user/employee-details.js +4 -0
  89. package/esm2015/lib/db/Models/user/occupation.js +4 -0
  90. package/esm2015/lib/db/Models/user/registration-invite.js +4 -0
  91. package/esm2015/lib/db/Models/user/user-event-setting.js +4 -0
  92. package/esm2015/lib/db/Models/user/user-event-type-category.js +4 -0
  93. package/esm2015/lib/db/Models/user/user-event-type.js +4 -0
  94. package/esm2015/lib/db/Models/user/user-event.js +4 -0
  95. package/esm2015/lib/db/Models/user/user.js +4 -0
  96. package/esm2015/lib/db/Models/vehicle/vehicle-claim.js +4 -0
  97. package/esm2015/lib/db/Models/vehicle/vehicle-logbook.js +4 -0
  98. package/esm2015/lib/db/Models/vehicle/vehicle.js +4 -0
  99. package/esm2015/lib/interfaces/document.interface.js +1 -1
  100. package/esm2015/lib/models/account-setup/account-setup-item.js +4 -1
  101. package/esm2015/lib/models/account-setup/account-setup-items.const.js +9 -5
  102. package/esm2015/lib/models/bank/bank-account-property.js +2 -2
  103. package/esm2015/lib/models/bank/bank-account.js +3 -3
  104. package/esm2015/lib/models/bank/bank-connection.js +2 -2
  105. package/esm2015/lib/models/bank/bank-transaction.js +2 -2
  106. package/esm2015/lib/models/bank/bank.js +2 -2
  107. package/esm2015/lib/models/bank/basiq-job.js +2 -2
  108. package/esm2015/lib/models/borrowing-expense/borrowing-expense-loan.js +2 -2
  109. package/esm2015/lib/models/borrowing-expense/borrowing-expense.js +2 -2
  110. package/esm2015/lib/models/chart-accounts/chart-accounts-depreciation.js +2 -2
  111. package/esm2015/lib/models/chart-accounts/chart-accounts-heading.js +2 -2
  112. package/esm2015/lib/models/chart-accounts/chart-accounts-metadata.js +2 -2
  113. package/esm2015/lib/models/chart-accounts/chart-accounts-value.js +2 -2
  114. package/esm2015/lib/models/chart-accounts/chart-accounts.js +2 -2
  115. package/esm2015/lib/models/chat/chat.js +2 -2
  116. package/esm2015/lib/models/chat/message-document.js +2 -2
  117. package/esm2015/lib/models/chat/message.js +2 -2
  118. package/esm2015/lib/models/client/client-details.js +2 -2
  119. package/esm2015/lib/models/client/client-income-types.js +2 -2
  120. package/esm2015/lib/models/client/client-invite.js +2 -2
  121. package/esm2015/lib/models/client/client-movement.js +2 -2
  122. package/esm2015/lib/models/depreciation/depreciation-capital-project.js +2 -2
  123. package/esm2015/lib/models/depreciation/depreciation-forecast.js +2 -2
  124. package/esm2015/lib/models/depreciation/depreciation-receipt.js +2 -2
  125. package/esm2015/lib/models/depreciation/depreciation.js +2 -2
  126. package/esm2015/lib/models/document/document-folder.js +2 -2
  127. package/esm2015/lib/models/document/document.js +2 -2
  128. package/esm2015/lib/models/employee/employee-details.js +2 -2
  129. package/esm2015/lib/models/employee/employee-invite.js +2 -2
  130. package/esm2015/lib/models/firm/firm.js +2 -2
  131. package/esm2015/lib/models/income-source/income-source-forecast.js +2 -2
  132. package/esm2015/lib/models/income-source/income-source-type.js +2 -2
  133. package/esm2015/lib/models/income-source/income-source.js +2 -2
  134. package/esm2015/lib/models/income-source/salary-forecast.js +2 -2
  135. package/esm2015/lib/models/income-source/sole-forecast.js +2 -2
  136. package/esm2015/lib/models/loan/loan-payout.js +2 -2
  137. package/esm2015/lib/models/loan/loan.js +2 -2
  138. package/esm2015/lib/models/logbook/vehicle-claim.js +2 -2
  139. package/esm2015/lib/models/logbook/vehicle-logbook.js +2 -2
  140. package/esm2015/lib/models/logbook/vehicle.js +2 -2
  141. package/esm2015/lib/models/property/property-document.js +2 -2
  142. package/esm2015/lib/models/property/property.js +1 -1
  143. package/esm2015/lib/models/registration-invite/registration-invite.js +2 -2
  144. package/esm2015/lib/models/report/vehicle-expense/vehicle-expense.js +14 -0
  145. package/esm2015/lib/models/service-subscription/service-payment.js +2 -2
  146. package/esm2015/lib/models/service-subscription/service-price.js +2 -2
  147. package/esm2015/lib/models/service-subscription/service-product.js +14 -6
  148. package/esm2015/lib/models/service-subscription/service-subscription-item.js +12 -3
  149. package/esm2015/lib/models/service-subscription/service-subscription.js +29 -12
  150. package/esm2015/lib/models/tax-review/tax-review.js +2 -2
  151. package/esm2015/lib/models/tax-summary/report-item.js +1 -1
  152. package/esm2015/lib/models/transaction/transaction-allocation.js +2 -2
  153. package/esm2015/lib/models/transaction/transaction-metadata.js +2 -2
  154. package/esm2015/lib/models/transaction/transaction-receipt.js +2 -2
  155. package/esm2015/lib/models/transaction/transaction.js +2 -2
  156. package/esm2015/lib/models/user/occupation.js +2 -2
  157. package/esm2015/lib/models/user/user-roles.const.js +2 -1
  158. package/esm2015/lib/models/user/user.js +2 -2
  159. package/esm2015/lib/models/user-event/user-event-setting.js +2 -2
  160. package/esm2015/lib/models/user-event/user-event-type-category.js +2 -2
  161. package/esm2015/lib/models/user-event/user-event-type.js +2 -2
  162. package/esm2015/lib/services/account-setup/account-setup.service.js +32 -5
  163. package/esm2015/lib/services/http/bank/bank-account/bank-account.service.js +1 -1
  164. package/esm2015/lib/services/http/bank/bank-connection/bank-connection.service.js +1 -1
  165. package/esm2015/lib/services/http/bank/bank-transaction/bank-transaction.service.js +1 -1
  166. package/esm2015/lib/services/http/bank/bank.service.js +1 -1
  167. package/esm2015/lib/services/http/bank/basiq/basiq.service.js +1 -1
  168. package/esm2015/lib/services/http/chart-accounts/chart-accounts-depreciations/chart-accounts-depreciations.service.js +1 -1
  169. package/esm2015/lib/services/http/chart-accounts/chart-accounts.service.js +1 -1
  170. package/esm2015/lib/services/http/chat/chat.service.js +1 -1
  171. package/esm2015/lib/services/http/chat/message/message.service.js +1 -1
  172. package/esm2015/lib/services/http/chat/message-document/message-document.service.js +1 -1
  173. package/esm2015/lib/services/http/depreciation/depreciation-capital-project/depreciation-capital-project.service.js +1 -1
  174. package/esm2015/lib/services/http/depreciation/depreciation.service.js +1 -1
  175. package/esm2015/lib/services/http/document/document-folder/document-folder.service.js +1 -1
  176. package/esm2015/lib/services/http/firm/client-income/client-income-types.service.js +1 -1
  177. package/esm2015/lib/services/http/firm/client-invite/client-invite.service.js +1 -1
  178. package/esm2015/lib/services/http/firm/client-movement/client-movement.service.js +1 -1
  179. package/esm2015/lib/services/http/firm/employee/employee.service.js +1 -1
  180. package/esm2015/lib/services/http/firm/employee-invite/employee-invite.service.js +1 -1
  181. package/esm2015/lib/services/http/firm/firm.service.js +1 -1
  182. package/esm2015/lib/services/http/income-source/income-source-forecast/income-source-forecast.service.js +1 -1
  183. package/esm2015/lib/services/http/income-source/income-source.service.js +1 -1
  184. package/esm2015/lib/services/http/income-source/salary-forecast/salary-forecast.service.js +1 -1
  185. package/esm2015/lib/services/http/income-source/sole-forecast/sole-forecast.service.js +1 -1
  186. package/esm2015/lib/services/http/loan/loan.service.js +1 -1
  187. package/esm2015/lib/services/http/property/property-document/property-document.service.js +1 -1
  188. package/esm2015/lib/services/http/rest/rest.service.js +2 -2
  189. package/esm2015/lib/services/http/subscription/service-price.service.js +24 -0
  190. package/esm2015/lib/services/http/subscription/subscription.service.js +5 -48
  191. package/esm2015/lib/services/http/tax-review/tax-review-history/tax-review-history.service.js +1 -1
  192. package/esm2015/lib/services/http/tax-review/tax-review.service.js +1 -1
  193. package/esm2015/lib/services/http/transaction/transaction-allocation/transaction-allocation.service.js +1 -1
  194. package/esm2015/lib/services/http/transaction/transaction.service.js +1 -1
  195. package/esm2015/lib/services/http/user/user-event-setting/user-event-setting.service.js +1 -1
  196. package/esm2015/lib/services/http/user/user-event-type/user-event-type.service.js +1 -1
  197. package/esm2015/lib/services/http/user/user.service.js +1 -1
  198. package/esm2015/lib/services/http/vehicle/vehicle-claim.service.js +1 -1
  199. package/esm2015/lib/services/http/vehicle/vehicle-logbook.service.js +1 -1
  200. package/esm2015/lib/services/http/vehicle/vehicle.service.js +1 -1
  201. package/esm2015/public-api.js +11 -8
  202. package/fesm2015/taxtank-core.js +1286 -1178
  203. package/fesm2015/taxtank-core.js.map +1 -1
  204. package/lib/collections/collection.d.ts +14 -11
  205. package/lib/collections/income-source.collection.d.ts +0 -5
  206. package/lib/collections/report/vehicle-expense/vehicle-expense.collection.d.ts +9 -0
  207. package/lib/collections/{service-subscription.collection.d.ts → subscription/service-subscription.collection.d.ts} +2 -2
  208. package/lib/db/Enums/{service-payment-status.enum.d.ts → subscription/service-payment-status.enum.d.ts} +0 -0
  209. package/lib/db/Enums/subscription/service-price-list.enum.d.ts +3 -0
  210. package/lib/db/Enums/{service-price-recurring-interval.enum.d.ts → subscription/service-price-recurring-interval.enum.d.ts} +0 -0
  211. package/lib/db/Enums/{service-price-type.enum.d.ts → subscription/service-price-type.enum.d.ts} +0 -0
  212. package/lib/db/Enums/subscription/service-product-id.enum.d.ts +8 -0
  213. package/lib/db/Enums/subscription/service-product-status.enum.d.ts +4 -0
  214. package/lib/db/Enums/{service-subscription-status.enum.d.ts → subscription/service-subscription-status.enum.d.ts} +0 -0
  215. package/lib/db/Enums/user-roles.enum.d.ts +1 -0
  216. package/lib/db/Models/abstract-model.d.ts +3 -0
  217. package/lib/db/Models/address.d.ts +2 -1
  218. package/lib/db/Models/{bank-account-balance.d.ts → bank/bank-account-balance.d.ts} +2 -1
  219. package/lib/db/Models/bank/bank-account-property.d.ts +9 -0
  220. package/lib/db/Models/{bank-account.d.ts → bank/bank-account.d.ts} +6 -5
  221. package/lib/db/Models/{bank-connection.d.ts → bank/bank-connection.d.ts} +4 -3
  222. package/lib/db/Models/{bank-transaction-import.d.ts → bank/bank-transaction-import.d.ts} +2 -1
  223. package/lib/db/Models/{bank-transaction.d.ts → bank/bank-transaction.d.ts} +4 -3
  224. package/lib/db/Models/{bank.d.ts → bank/bank.d.ts} +2 -1
  225. package/lib/db/Models/{basiq-job.d.ts → bank/basiq-job.d.ts} +2 -1
  226. package/lib/db/Models/{financial-data-system.d.ts → bank/financial-data-system.d.ts} +2 -1
  227. package/lib/db/Models/{chart-accounts-depreciation.d.ts → chart-accounts/chart-accounts-depreciation.d.ts} +2 -1
  228. package/lib/db/Models/{chart-accounts-heading.d.ts → chart-accounts/chart-accounts-heading.d.ts} +2 -1
  229. package/lib/db/Models/chart-accounts/chart-accounts-metadata.d.ts +12 -0
  230. package/lib/db/Models/{chart-accounts-value.d.ts → chart-accounts/chart-accounts-value.d.ts} +2 -1
  231. package/lib/db/Models/{chart-accounts.d.ts → chart-accounts/chart-accounts.d.ts} +5 -4
  232. package/lib/db/Models/country.d.ts +2 -1
  233. package/lib/db/Models/depreciation/depreciation-capital-project.d.ts +14 -0
  234. package/lib/db/Models/{depreciation-forecast.d.ts → depreciation/depreciation-forecast.d.ts} +3 -2
  235. package/lib/db/Models/{depreciation-receipt.d.ts → depreciation/depreciation-receipt.d.ts} +2 -1
  236. package/lib/db/Models/{depreciation.d.ts → depreciation/depreciation.d.ts} +9 -9
  237. package/lib/db/Models/{document-folder.d.ts → document/document-folder.d.ts} +3 -2
  238. package/lib/db/Models/{document.d.ts → document/document.d.ts} +2 -1
  239. package/lib/db/Models/document/property-document.d.ts +18 -0
  240. package/lib/db/Models/firm/accountant/tax-review.d.ts +14 -0
  241. package/lib/db/Models/firm/accountant/ticket.d.ts +20 -0
  242. package/lib/db/Models/{chat.d.ts → firm/chat.d.ts} +4 -3
  243. package/lib/db/Models/firm/client-invite.d.ts +17 -0
  244. package/lib/db/Models/firm/client-movement.d.ts +13 -0
  245. package/lib/db/Models/firm/employee-invite.d.ts +10 -0
  246. package/lib/db/Models/{firm.d.ts → firm/firm.d.ts} +7 -6
  247. package/lib/db/Models/{message-document.d.ts → firm/message-document.d.ts} +3 -2
  248. package/lib/db/Models/{message.d.ts → firm/message.d.ts} +4 -3
  249. package/lib/db/Models/{income-source-forecast.d.ts → incomeSource/income-source-forecast.d.ts} +2 -1
  250. package/lib/db/Models/{income-source-type.d.ts → incomeSource/income-source-type.d.ts} +3 -2
  251. package/lib/db/Models/{income-source.d.ts → incomeSource/income-source.d.ts} +5 -4
  252. package/lib/db/Models/{salary-forecast.d.ts → incomeSource/salary-forecast.d.ts} +3 -2
  253. package/lib/db/Models/{borrowing-expense-loan.d.ts → loan/borrowing-expense-loan.d.ts} +3 -2
  254. package/lib/db/Models/loan/borrowing-expense.d.ts +8 -0
  255. package/lib/db/Models/{loan-payout.d.ts → loan/loan-payout.d.ts} +3 -2
  256. package/lib/db/Models/{loan.d.ts → loan/loan.d.ts} +9 -8
  257. package/lib/db/Models/phone.d.ts +2 -1
  258. package/lib/db/Models/property/property-category-movement.d.ts +3 -2
  259. package/lib/db/Models/property/property-category.d.ts +3 -2
  260. package/lib/db/Models/property/property-forecast.d.ts +2 -1
  261. package/lib/db/Models/property/property-sale/property-sale-tax-exemption-metadata.d.ts +2 -1
  262. package/lib/db/Models/property/property-sale/property-sale.d.ts +2 -1
  263. package/lib/db/Models/property/property-sale/tax-exemption-metadata.d.ts +2 -1
  264. package/lib/db/Models/property/property-sale/tax-exemption.d.ts +2 -1
  265. package/lib/db/Models/property/property-share.d.ts +4 -3
  266. package/lib/db/Models/property/property-subscription.d.ts +3 -2
  267. package/lib/db/Models/property/property-valuation.d.ts +3 -2
  268. package/lib/db/Models/property/property.d.ts +6 -5
  269. package/lib/db/Models/service-notification.d.ts +4 -3
  270. package/lib/db/Models/sole/sole-forecast.d.ts +9 -0
  271. package/lib/db/Models/{service-payment.d.ts → subscription/service-payment.d.ts} +3 -2
  272. package/lib/db/Models/{service-price.d.ts → subscription/service-price.d.ts} +4 -3
  273. package/lib/db/Models/subscription/service-product.d.ts +19 -0
  274. package/lib/db/Models/{service-subscription-item.d.ts → subscription/service-subscription-item.d.ts} +2 -1
  275. package/lib/db/Models/{service-subscription.d.ts → subscription/service-subscription.d.ts} +4 -3
  276. package/lib/db/Models/{tax-return-category.d.ts → tax-return/tax-return-category.d.ts} +3 -2
  277. package/lib/db/Models/{tax-return-item.d.ts → tax-return/tax-return-item.d.ts} +2 -1
  278. package/lib/db/Models/{tax-return.d.ts → tax-return/tax-return.d.ts} +2 -1
  279. package/lib/db/Models/transaction/transaction-allocation.d.ts +9 -0
  280. package/lib/db/Models/{transaction-base.d.ts → transaction/transaction-base.d.ts} +4 -3
  281. package/lib/db/Models/{transaction-metadata.d.ts → transaction/transaction-metadata.d.ts} +3 -2
  282. package/lib/db/Models/{transaction-receipt.d.ts → transaction/transaction-receipt.d.ts} +2 -1
  283. package/lib/db/Models/{transaction.d.ts → transaction/transaction.d.ts} +9 -9
  284. package/lib/db/Models/{client-details.d.ts → user/client-details.d.ts} +7 -6
  285. package/lib/db/Models/{client-income-types.d.ts → user/client-income-types.d.ts} +2 -1
  286. package/lib/db/Models/user/employee-details.d.ts +8 -0
  287. package/lib/db/Models/user/occupation.d.ts +6 -0
  288. package/lib/db/Models/{registration-invite.d.ts → user/registration-invite.d.ts} +3 -2
  289. package/lib/db/Models/{user-event-setting.d.ts → user/user-event-setting.d.ts} +2 -1
  290. package/lib/db/Models/user/user-event-type-category.d.ts +5 -0
  291. package/lib/db/Models/{user-event-type.d.ts → user/user-event-type.d.ts} +3 -2
  292. package/lib/db/Models/{user-event.d.ts → user/user-event.d.ts} +3 -2
  293. package/lib/db/Models/{user.d.ts → user/user.d.ts} +14 -13
  294. package/lib/db/Models/vehicle/vehicle-claim.d.ts +14 -0
  295. package/lib/db/Models/{vehicle-logbook.d.ts → vehicle/vehicle-logbook.d.ts} +4 -3
  296. package/lib/db/Models/vehicle/vehicle.d.ts +11 -0
  297. package/lib/models/account-setup/account-setup-item.d.ts +1 -0
  298. package/lib/models/bank/bank-account-property.d.ts +1 -1
  299. package/lib/models/bank/bank-account.d.ts +2 -2
  300. package/lib/models/bank/bank-connection.d.ts +1 -1
  301. package/lib/models/bank/bank-transaction.d.ts +1 -1
  302. package/lib/models/bank/bank.d.ts +1 -1
  303. package/lib/models/bank/basiq-job.d.ts +1 -1
  304. package/lib/models/borrowing-expense/borrowing-expense-loan.d.ts +1 -1
  305. package/lib/models/borrowing-expense/borrowing-expense.d.ts +1 -1
  306. package/lib/models/chart-accounts/chart-accounts-depreciation.d.ts +1 -1
  307. package/lib/models/chart-accounts/chart-accounts-heading.d.ts +1 -1
  308. package/lib/models/chart-accounts/chart-accounts-metadata.d.ts +1 -1
  309. package/lib/models/chart-accounts/chart-accounts-value.d.ts +1 -1
  310. package/lib/models/chart-accounts/chart-accounts.d.ts +1 -1
  311. package/lib/models/chat/chat.d.ts +1 -1
  312. package/lib/models/chat/message-document.d.ts +1 -1
  313. package/lib/models/chat/message.d.ts +1 -1
  314. package/lib/models/client/client-details.d.ts +1 -1
  315. package/lib/models/client/client-income-types.d.ts +1 -1
  316. package/lib/models/client/client-invite.d.ts +1 -1
  317. package/lib/models/client/client-movement.d.ts +1 -1
  318. package/lib/models/depreciation/depreciation-capital-project.d.ts +1 -1
  319. package/lib/models/depreciation/depreciation-forecast.d.ts +1 -1
  320. package/lib/models/depreciation/depreciation-receipt.d.ts +1 -1
  321. package/lib/models/depreciation/depreciation.d.ts +3 -3
  322. package/lib/models/document/document-folder.d.ts +1 -1
  323. package/lib/models/document/document.d.ts +1 -1
  324. package/lib/models/employee/employee-details.d.ts +1 -1
  325. package/lib/models/employee/employee-invite.d.ts +1 -1
  326. package/lib/models/firm/firm.d.ts +1 -1
  327. package/lib/models/income-source/income-source-forecast.d.ts +1 -1
  328. package/lib/models/income-source/income-source-type.d.ts +1 -1
  329. package/lib/models/income-source/income-source.d.ts +1 -1
  330. package/lib/models/income-source/salary-forecast.d.ts +1 -1
  331. package/lib/models/income-source/sole-forecast.d.ts +1 -1
  332. package/lib/models/loan/loan-payout.d.ts +1 -1
  333. package/lib/models/loan/loan.d.ts +1 -1
  334. package/lib/models/logbook/vehicle-claim.d.ts +1 -1
  335. package/lib/models/logbook/vehicle-logbook.d.ts +1 -1
  336. package/lib/models/logbook/vehicle.d.ts +1 -1
  337. package/lib/models/property/property-document.d.ts +1 -1
  338. package/lib/models/property/property.d.ts +0 -2
  339. package/lib/models/registration-invite/registration-invite.d.ts +1 -1
  340. package/lib/models/report/vehicle-expense/vehicle-expense.d.ts +10 -0
  341. package/lib/models/service-subscription/service-payment.d.ts +1 -1
  342. package/lib/models/service-subscription/service-price.d.ts +1 -1
  343. package/lib/models/service-subscription/service-product.d.ts +5 -3
  344. package/lib/models/service-subscription/service-subscription-item.d.ts +1 -1
  345. package/lib/models/service-subscription/service-subscription.d.ts +13 -3
  346. package/lib/models/tax-review/tax-review.d.ts +1 -1
  347. package/lib/models/tax-summary/report-item.d.ts +1 -1
  348. package/lib/models/transaction/transaction-allocation.d.ts +1 -1
  349. package/lib/models/transaction/transaction-metadata.d.ts +1 -1
  350. package/lib/models/transaction/transaction-receipt.d.ts +1 -1
  351. package/lib/models/transaction/transaction.d.ts +1 -1
  352. package/lib/models/user/occupation.d.ts +1 -1
  353. package/lib/models/user/user.d.ts +1 -1
  354. package/lib/models/user-event/user-event-setting.d.ts +1 -1
  355. package/lib/models/user-event/user-event-type-category.d.ts +1 -1
  356. package/lib/models/user-event/user-event-type.d.ts +1 -1
  357. package/lib/services/account-setup/account-setup.service.d.ts +14 -1
  358. package/lib/services/http/bank/bank-account/bank-account.service.d.ts +1 -1
  359. package/lib/services/http/bank/bank-connection/bank-connection.service.d.ts +1 -1
  360. package/lib/services/http/bank/bank-transaction/bank-transaction.service.d.ts +1 -1
  361. package/lib/services/http/bank/bank.service.d.ts +1 -1
  362. package/lib/services/http/bank/basiq/basiq.service.d.ts +1 -1
  363. package/lib/services/http/chart-accounts/chart-accounts-depreciations/chart-accounts-depreciations.service.d.ts +1 -1
  364. package/lib/services/http/chat/chat.service.d.ts +1 -1
  365. package/lib/services/http/chat/message/message.service.d.ts +1 -1
  366. package/lib/services/http/depreciation/depreciation.service.d.ts +1 -1
  367. package/lib/services/http/document/document-folder/document-folder.service.d.ts +1 -1
  368. package/lib/services/http/firm/client-invite/client-invite.service.d.ts +1 -1
  369. package/lib/services/http/firm/client-movement/client-movement.service.d.ts +1 -1
  370. package/lib/services/http/firm/employee/employee.service.d.ts +1 -1
  371. package/lib/services/http/firm/employee-invite/employee-invite.service.d.ts +1 -1
  372. package/lib/services/http/income-source/income-source-forecast/income-source-forecast.service.d.ts +1 -1
  373. package/lib/services/http/income-source/income-source.service.d.ts +1 -1
  374. package/lib/services/http/income-source/salary-forecast/salary-forecast.service.d.ts +1 -1
  375. package/lib/services/http/income-source/sole-forecast/sole-forecast.service.d.ts +1 -1
  376. package/lib/services/http/loan/loan.service.d.ts +1 -1
  377. package/lib/services/http/property/property-document/property-document.service.d.ts +1 -1
  378. package/lib/services/http/rest/rest.service.d.ts +1 -1
  379. package/lib/services/http/subscription/service-price.service.d.ts +14 -0
  380. package/lib/services/http/subscription/subscription.service.d.ts +2 -9
  381. package/lib/services/http/tax-review/tax-review-history/tax-review-history.service.d.ts +1 -1
  382. package/lib/services/http/tax-review/tax-review.service.d.ts +1 -1
  383. package/lib/services/http/transaction/transaction-allocation/transaction-allocation.service.d.ts +1 -1
  384. package/lib/services/http/transaction/transaction.service.d.ts +1 -1
  385. package/lib/services/http/user/user-event-setting/user-event-setting.service.d.ts +1 -1
  386. package/lib/services/http/user/user-event-type/user-event-type.service.d.ts +1 -1
  387. package/lib/services/http/vehicle/vehicle-claim.service.d.ts +1 -1
  388. package/lib/services/http/vehicle/vehicle.service.d.ts +1 -1
  389. package/package.json +1 -1
  390. package/public-api.d.ts +10 -7
  391. package/esm2015/lib/collections/service-price.collection.js +0 -10
  392. package/esm2015/lib/collections/service-subscription.collection.js +0 -17
  393. package/esm2015/lib/db/Enums/service-payment-status.enum.js +0 -6
  394. package/esm2015/lib/db/Enums/service-price-type.enum.js +0 -6
  395. package/esm2015/lib/db/Models/bank-account-balance.js +0 -3
  396. package/esm2015/lib/db/Models/bank-account-property.js +0 -3
  397. package/esm2015/lib/db/Models/bank-account.js +0 -3
  398. package/esm2015/lib/db/Models/bank-connection.js +0 -3
  399. package/esm2015/lib/db/Models/bank-transaction-import.js +0 -3
  400. package/esm2015/lib/db/Models/bank-transaction.js +0 -3
  401. package/esm2015/lib/db/Models/bank.js +0 -3
  402. package/esm2015/lib/db/Models/basiq-job.js +0 -3
  403. package/esm2015/lib/db/Models/borrowing-expense-loan.js +0 -3
  404. package/esm2015/lib/db/Models/borrowing-expense.js +0 -3
  405. package/esm2015/lib/db/Models/chart-accounts-depreciation.js +0 -3
  406. package/esm2015/lib/db/Models/chart-accounts-heading.js +0 -3
  407. package/esm2015/lib/db/Models/chart-accounts-metadata.js +0 -3
  408. package/esm2015/lib/db/Models/chart-accounts-value.js +0 -3
  409. package/esm2015/lib/db/Models/chart-accounts.js +0 -3
  410. package/esm2015/lib/db/Models/chat.js +0 -3
  411. package/esm2015/lib/db/Models/client-details.js +0 -3
  412. package/esm2015/lib/db/Models/client-income-types.js +0 -3
  413. package/esm2015/lib/db/Models/client-invite.js +0 -3
  414. package/esm2015/lib/db/Models/client-movement.js +0 -3
  415. package/esm2015/lib/db/Models/depreciation-capital-project.js +0 -3
  416. package/esm2015/lib/db/Models/depreciation-forecast.js +0 -3
  417. package/esm2015/lib/db/Models/depreciation-receipt.js +0 -3
  418. package/esm2015/lib/db/Models/depreciation.js +0 -4
  419. package/esm2015/lib/db/Models/document-folder.js +0 -3
  420. package/esm2015/lib/db/Models/document.js +0 -3
  421. package/esm2015/lib/db/Models/employee-details.js +0 -3
  422. package/esm2015/lib/db/Models/employee-invite.js +0 -3
  423. package/esm2015/lib/db/Models/financial-data-system.js +0 -3
  424. package/esm2015/lib/db/Models/firm.js +0 -3
  425. package/esm2015/lib/db/Models/income-source-forecast.js +0 -3
  426. package/esm2015/lib/db/Models/income-source-type.js +0 -3
  427. package/esm2015/lib/db/Models/income-source.js +0 -3
  428. package/esm2015/lib/db/Models/loan-payout.js +0 -3
  429. package/esm2015/lib/db/Models/loan.js +0 -3
  430. package/esm2015/lib/db/Models/message-document.js +0 -3
  431. package/esm2015/lib/db/Models/message.js +0 -3
  432. package/esm2015/lib/db/Models/occupation.js +0 -3
  433. package/esm2015/lib/db/Models/property/property-document.js +0 -3
  434. package/esm2015/lib/db/Models/registration-invite.js +0 -3
  435. package/esm2015/lib/db/Models/salary-forecast.js +0 -3
  436. package/esm2015/lib/db/Models/service-payment.js +0 -3
  437. package/esm2015/lib/db/Models/service-price.js +0 -3
  438. package/esm2015/lib/db/Models/service-product.js +0 -3
  439. package/esm2015/lib/db/Models/service-subscription-item.js +0 -3
  440. package/esm2015/lib/db/Models/service-subscription.js +0 -3
  441. package/esm2015/lib/db/Models/sole-forecast.js +0 -3
  442. package/esm2015/lib/db/Models/tax-return-category.js +0 -3
  443. package/esm2015/lib/db/Models/tax-return-item.js +0 -3
  444. package/esm2015/lib/db/Models/tax-return.js +0 -3
  445. package/esm2015/lib/db/Models/tax-review.js +0 -3
  446. package/esm2015/lib/db/Models/ticket.js +0 -3
  447. package/esm2015/lib/db/Models/transaction-allocation.js +0 -3
  448. package/esm2015/lib/db/Models/transaction-base.js +0 -25
  449. package/esm2015/lib/db/Models/transaction-metadata.js +0 -3
  450. package/esm2015/lib/db/Models/transaction-receipt.js +0 -3
  451. package/esm2015/lib/db/Models/transaction.js +0 -4
  452. package/esm2015/lib/db/Models/user-event-setting.js +0 -3
  453. package/esm2015/lib/db/Models/user-event-type-category.js +0 -3
  454. package/esm2015/lib/db/Models/user-event-type.js +0 -3
  455. package/esm2015/lib/db/Models/user-event.js +0 -3
  456. package/esm2015/lib/db/Models/user.js +0 -3
  457. package/esm2015/lib/db/Models/vehicle-claim.js +0 -3
  458. package/esm2015/lib/db/Models/vehicle-logbook.js +0 -3
  459. package/esm2015/lib/db/Models/vehicle.js +0 -3
  460. package/lib/collections/service-price.collection.d.ts +0 -6
  461. package/lib/db/Models/bank-account-property.d.ts +0 -8
  462. package/lib/db/Models/borrowing-expense.d.ts +0 -7
  463. package/lib/db/Models/chart-accounts-metadata.d.ts +0 -11
  464. package/lib/db/Models/client-invite.d.ts +0 -16
  465. package/lib/db/Models/client-movement.d.ts +0 -12
  466. package/lib/db/Models/depreciation-capital-project.d.ts +0 -13
  467. package/lib/db/Models/employee-details.d.ts +0 -7
  468. package/lib/db/Models/employee-invite.d.ts +0 -9
  469. package/lib/db/Models/occupation.d.ts +0 -5
  470. package/lib/db/Models/property/property-document.d.ts +0 -13
  471. package/lib/db/Models/service-product.d.ts +0 -12
  472. package/lib/db/Models/sole-forecast.d.ts +0 -8
  473. package/lib/db/Models/tax-review.d.ts +0 -13
  474. package/lib/db/Models/ticket.d.ts +0 -19
  475. package/lib/db/Models/transaction-allocation.d.ts +0 -8
  476. package/lib/db/Models/user-event-type-category.d.ts +0 -4
  477. package/lib/db/Models/vehicle-claim.d.ts +0 -13
  478. package/lib/db/Models/vehicle.d.ts +0 -10
@@ -215,4 +215,4 @@ __decorate([
215
215
  __decorate([
216
216
  Exclude()
217
217
  ], Property.prototype, "documentFile", void 0);
218
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3Byb3BlcnR5L3Byb3BlcnR5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxJQUFJLFlBQVksRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBSTNFLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzdELE9BQU8sRUFBQyxPQUFPLEVBQUUsSUFBSSxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFFaEQsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQzNDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ3RFLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDbEMsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQy9ELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBQzFGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBQzdGLE9BQU8sS0FBSyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBR2pDLE9BQU8sRUFDTCwwQ0FBMEMsRUFDM0MsTUFBTSwwRkFBMEYsQ0FBQztBQUVsRzs7R0FFRztBQUNILE1BQU0sT0FBTyxRQUFTLFNBQVEsWUFBWTtJQW1DeEMsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztJQUMzQixDQUFDO0lB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QURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7OENBQ0U7QUFHbkI7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO2dEQUNJO0FBR3JCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQzt5Q0FDSDtBQUdqQjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQzswQ0FDRjtBQUczQjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQzs0Q0FDRTtBQUdoQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQzsyQ0FDQztBQUc5QjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQzttREFDUztBQUc5QztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7c0NBQ047QUFHWDtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQzsrQ0FDSztBQUl0QztJQURDLE9BQU8sRUFBRTs4Q0FDUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7UHJvcGVydHkgYXMgUHJvcGVydHlCYXNlfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvcHJvcGVydHkvcHJvcGVydHknO1xuaW1wb3J0IHtEb2N1bWVudGFibGV9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvZG9jdW1lbnRhYmxlLmludGVyZmFjZSc7XG5pbXBvcnQge0lEb2N1bWVudH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9kb2N1bWVudC5pbnRlcmZhY2UnO1xuaW1wb3J0IHtQcm9wZXJ0eVNoYXJlfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvcHJvcGVydHkvcHJvcGVydHktc2hhcmUnO1xuaW1wb3J0IHtQcm9wZXJ0eVN1YnNjcmlwdGlvbn0gZnJvbSAnLi9wcm9wZXJ0eS1zdWJzY3JpcHRpb24nO1xuaW1wb3J0IHtFeGNsdWRlLCBUeXBlfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQge1Bob3RvYWJsZX0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9waG90b2FibGUnO1xuaW1wb3J0IHtBZGRyZXNzfSBmcm9tICcuLi9hZGRyZXNzL2FkZHJlc3MnO1xuaW1wb3J0IHtQcm9wZXJ0eUNhdGVnb3J5fSBmcm9tICcuL3Byb3BlcnR5LWNhdGVnb3J5JztcbmltcG9ydCB7UHJvcGVydHlWYWx1YXRpb259IGZyb20gJy4vcHJvcGVydHktdmFsdWF0aW9uJztcbmltcG9ydCB7UHJvcGVydHlGb3JlY2FzdH0gZnJvbSAnLi9wcm9wZXJ0eS1mb3JlY2FzdCc7XG5pbXBvcnQge1Byb3BlcnR5Q2F0ZWdvcnlNb3ZlbWVudH0gZnJvbSAnLi9wcm9wZXJ0eS1jYXRlZ29yeS1tb3ZlbWVudCc7XG5pbXBvcnQge1VzZXJ9IGZyb20gJy4uL3VzZXIvdXNlcic7XG5pbXBvcnQge0ZpbmFuY2lhbFllYXJ9IGZyb20gJy4uL2ZpbmFuY2lhbC15ZWFyL2ZpbmFuY2lhbC15ZWFyJztcbmltcG9ydCB7VGF4RXhlbXB0aW9uRW51bX0gZnJvbSAnLi4vLi4vZGIvRW51bXMvcHJvcGVydHkvcHJvcGVydHktc2FsZS90YXgtZXhlbXB0aW9uLmVudW0nO1xuaW1wb3J0IHtQcm9wZXJ0eUNhdGVnb3J5TGlzdEVudW19IGZyb20gJy4uLy4uL2RiL0VudW1zL3Byb3BlcnR5L3Byb3BlcnR5LWNhdGVnb3J5LWxpc3QuZW51bSc7XG5pbXBvcnQgKiBhcyBtb21lbnQgZnJvbSAnbW9tZW50JztcbmltcG9ydCB7UHJvcGVydHlTYWxlfSBmcm9tICcuL3Byb3BlcnR5LXNhbGUvcHJvcGVydHktc2FsZSc7XG5pbXBvcnQge3VuaXRPZlRpbWV9IGZyb20gJ21vbWVudCc7XG5pbXBvcnQge1xuICBQcm9wZXJ0eVNhbGVUYXhFeGVtcHRpb25NZXRhZGF0YUNvbGxlY3Rpb25cbn0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbnMvcHJvcGVydHkvcHJvcGVydHktc2FsZS9wcm9wZXJ0eS1zYWxlLXRheC1leGVtcHRpb24tbWV0YWRhdGEuY29sbGVjdGlvbic7XG5cbi8qKlxuICogcHJvcGVydHlTYWxlIGRvY3MgLSBodHRwczovL3RheHRhbmsuYXRsYXNzaWFuLm5ldC93aWtpL3NwYWNlcy9UQVhUQU5LL3BhZ2VzLzQyMDk1MDgzNTMvUHJvcGVydHkrU29sZCtidXR0b25cbiAqL1xuZXhwb3J0IGNsYXNzIFByb3BlcnR5IGV4dGVuZHMgUHJvcGVydHlCYXNlIGltcGxlbWVudHMgUGhvdG9hYmxlLCBEb2N1bWVudGFibGUge1xuICBAVHlwZSgoKSA9PiBEYXRlKVxuICBjb250cmFjdERhdGU6IERhdGU7XG5cbiAgQFR5cGUoKCkgPT4gRGF0ZSlcbiAgc2V0dGxlbWVudERhdGU6IERhdGU7XG5cbiAgQFR5cGUoKCkgPT4gQWRkcmVzcylcbiAgYWRkcmVzczogQWRkcmVzcztcblxuICBAVHlwZSgoKSA9PiBQcm9wZXJ0eUNhdGVnb3J5KVxuICBjYXRlZ29yeTogUHJvcGVydHlDYXRlZ29yeTtcblxuICBAVHlwZSgoKSA9PiBQcm9wZXJ0eVZhbHVhdGlvbilcbiAgdmFsdWF0aW9uczogUHJvcGVydHlWYWx1YXRpb25bXTtcblxuICBAVHlwZSgoKSA9PiBQcm9wZXJ0eUZvcmVjYXN0KVxuICBmb3JlY2FzdHM6IFByb3BlcnR5Rm9yZWNhc3RbXTtcblxuICBAVHlwZSgoKSA9PiBQcm9wZXJ0eUNhdGVnb3J5TW92ZW1lbnQpXG4gIGNhdGVnb3J5TW92ZW1lbnRzOiBQcm9wZXJ0eUNhdGVnb3J5TW92ZW1lbnRbXTtcblxuICBAVHlwZSgoKSA9PiBVc2VyKVxuICB1c2VyOiBVc2VyO1xuXG4gIEBUeXBlKCgpID0+IFByb3BlcnR5U3Vic2NyaXB0aW9uKVxuICBzdWJzY3JpcHRpb25zOiBQcm9wZXJ0eVN1YnNjcmlwdGlvbltdO1xuXG4gIC8vIGNvdWxkIGJlIEZpbGUgd2hlbiBqdXN0IGFkZGVkIG5ldyBpbWFnZVxuICBARXhjbHVkZSgpXG4gIGRvY3VtZW50RmlsZTogRmlsZTtcblxuICAvLyBAVE9ETyByZWZhY3RvciB3aXRoIHNwYXJlIHRhbmtcbiAgZG9jdW1lbnRzOiBJRG9jdW1lbnRbXTtcblxuICBnZXQgbmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmFkZHJlc3MubmFtZTtcbiAgfVxuXG4gIGdldCBpc0FjdGl2ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLnN1YnNjcmlwdGlvbnM/Lmxlbmd0aDtcbiAgfVxuXG4gIGlzT3duKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnVzZXIuaWQgPT09ICtsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgndXNlcklkJyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGluaXRpYWxzIG9mIHByb3BlcnR5LiBSZXF1aXJlZCBieSBQaG90b2FibGUgaW50ZXJmYWNlXG4gICAqL1xuICBnZXRJbml0aWFscygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm5hbWUuc3BsaXQoJyAnKVsxXS5zbGljZSgwLCAyKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgcHJvcGVydHkgcGhvdG8uIFJlcXVpcmVkIGJ5IFBob3RvYWJsZSBpbnRlcmZhY2VcbiAgICovXG4gIGdldFBob3RvKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucGhvdG87XG4gIH1cblxuICBnZXQgY2FwaXRhbENvc3RzVG90YWxBbW91bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5zdGFtcER1dHkgKyB0aGlzLmxlZ2FsRmVlcyArIHRoaXMub3RoZXJDYXBpdGFsQ29zdHM7XG4gIH1cblxuICBnZXQgY3VycmVudFllYXJWYWx1YXRpb25zKCk6IFByb3BlcnR5VmFsdWF0aW9uW10ge1xuICAgIHJldHVybiB0aGlzLnZhbHVhdGlvbnMuZmlsdGVyKCh2YWx1YXRpb246IFByb3BlcnR5VmFsdWF0aW9uKTogYm9vbGVhbiA9PiB2YWx1YXRpb24uaXNDdXJyZW50WWVhcigpKTtcbiAgfVxuXG4gIGdldCBtYXJrZXRWYWx1ZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmFjdHVhbFZhbHVhdGlvbj8ubWFya2V0VmFsdWUgfHwgMDtcbiAgfVxuXG4gIGdldCBjdXJyZW50WWVhckZvcmVjYXN0KCk6IFByb3BlcnR5Rm9yZWNhc3Qge1xuICAgIHJldHVybiB0aGlzLmZvcmVjYXN0cy5maW5kKChmb3JlY2FzdDogUHJvcGVydHlGb3JlY2FzdCk6IGJvb2xlYW4gPT4gZm9yZWNhc3QuaXNDdXJyZW50WWVhcigpKTtcbiAgfVxuXG4gIGdldCBmb3JlY2FzdGVkUmVudGFsUmV0dXJuKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudFllYXJGb3JlY2FzdD8ucmVudGFsUmV0dXJuIHx8IDA7XG4gIH1cblxuICBnZXQgZm9yZWNhc3RlZFRheFBvc2l0aW9uKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudFllYXJGb3JlY2FzdD8udGF4UG9zaXRpb24gfHwgMDtcbiAgfVxuXG4gIGdldCBmaXJzdEZvcmVjYXN0WWVhcigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmZvcmVjYXN0cy5yZWR1Y2UoKG1pbjogbnVtYmVyLCBmb3JlY2FzdDogUHJvcGVydHlGb3JlY2FzdCk6IG51bWJlciA9PiB7XG4gICAgICByZXR1cm4gbWluID4gZm9yZWNhc3QuZmluYW5jaWFsWWVhciA/IGZvcmVjYXN0LmZpbmFuY2lhbFllYXIgOiBtaW47XG4gICAgfSwgbmV3IEZpbmFuY2lhbFllYXIoKS55ZWFyKTtcbiAgfVxuXG4gIGdldCBtYXJrZXRWYWx1ZUdyb3d0aCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5tYXJrZXRWYWx1ZSAtIHRoaXMucHVyY2hhc2VQcmljZSkgLyB0aGlzLm1hcmtldFZhbHVlO1xuICB9XG5cbiAgZ2V0IG15U2hhcmUoKTogUHJvcGVydHlTaGFyZSB7XG4gICAgcmV0dXJuIHRoaXMuc2hhcmVzLmZpbmQoKHNoYXJlOiBQcm9wZXJ0eVNoYXJlKTogYm9vbGVhbiA9PiBzaGFyZS51c2VyLmlkID09PSArbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3VzZXJJZCcpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBleGFjdCBjbGFpbSBpbmNsdWRpbmcgc2hhcmUgcGVyY2VudFxuICAgKi9cbiAgZ2V0IHNoYXJlQ2xhaW1QZXJjZW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuc2hhcmVQZXJjZW50ICogdGhpcy5jbGFpbVBlcmNlbnQgLyAxMDA7XG4gIH1cblxuICBnZXQgYWN0dWFsVmFsdWF0aW9uKCk6IFByb3BlcnR5VmFsdWF0aW9uIHtcbiAgICByZXR1cm4gdGhpcy52YWx1YXRpb25zLnJlZHVjZSgobWF4RGF0ZVZhbHVhdGlvbjogUHJvcGVydHlWYWx1YXRpb24sIHZhbHVhdGlvbjogUHJvcGVydHlWYWx1YXRpb24pID0+IHtcbiAgICAgIHJldHVybiBtYXhEYXRlVmFsdWF0aW9uLmRhdGUgPiB2YWx1YXRpb24uZGF0ZSA/IG1heERhdGVWYWx1YXRpb24gOiB2YWx1YXRpb247XG4gICAgfSwgdGhpcy52YWx1YXRpb25zWzBdKTtcbiAgfVxuXG4gIGdldCBzaGFyZVBlcmNlbnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5teVNoYXJlLnBlcmNlbnQ7XG4gIH1cblxuICBnZXQgcHJldmlvdXNDYXRlZ29yeSgpOiBQcm9wZXJ0eUNhdGVnb3J5IHtcbiAgICBsZXQgcHJldmlvdXNDYXRlZ29yeTogUHJvcGVydHlDYXRlZ29yeTtcblxuICAgIGNvbnN0IG1vdmVtZW50c0NvdW50OiBudW1iZXIgPSB0aGlzLmNhdGVnb3J5TW92ZW1lbnRzLmxlbmd0aDtcblxuICAgIGlmIChtb3ZlbWVudHNDb3VudCA+IDEpIHtcbiAgICAgIHByZXZpb3VzQ2F0ZWdvcnkgPSB0aGlzLmNhdGVnb3J5TW92ZW1lbnRzW21vdmVtZW50c0NvdW50IC0gMl0ucHJvcGVydHlDYXRlZ29yeTtcbiAgICB9XG5cbiAgICByZXR1cm4gcHJldmlvdXNDYXRlZ29yeTtcbiAgfVxuXG4gIGdldEN1cnJlbnRTdWJzY3JpcHRpb24oKTogUHJvcGVydHlTdWJzY3JpcHRpb24ge1xuICAgIC8vIGFsd2F5cyByZXR1cm4gZmlyc3QgZWxlbWVudCBiZWNhdXNlIHN1YnNjcmlwdGlvbnMgYXJyYXkgY29udGFpbnMgb25seSBvbmUgZWxlbWVudFxuICAgIHJldHVybiB0aGlzLnN1YnNjcmlwdGlvbnNbMF07XG4gIH1cblxuICBnZXRGb3JlY2FzdEJ5WWVhcih5ZWFyOiBudW1iZXIpOiBQcm9wZXJ0eUZvcmVjYXN0IHtcbiAgICByZXR1cm4gdGhpcy5mb3JlY2FzdHMuZmluZCgoZm9yZWNhc3Q6IFByb3BlcnR5Rm9yZWNhc3QpOiBib29sZWFuID0+IGZvcmVjYXN0LmZpbmFuY2lhbFllYXIgPT09IHllYXIpO1xuICB9XG5cbiAgZ2V0IGlzU2hhcmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNoYXJlcy5sZW5ndGggPiAxO1xuICB9XG5cbiAgLyoqXG4gICAqIEBUT0RPIGNvbnNpZGVyIHRvIG1vdmUgbWV0aG9kcyByZWxhdGVkIHdpdGggcHJvcGVydHlTYWxlIHRvIHNlcGFyYXRlZCBjbGFzcywgc2luY2UgdXNlZCBqdXN0IGluIG9uZSBtb2R1bGUgeWV0XG4gICAqIHB1cmNoYXNlIGNvc3RzIC0gY2xhaW1lZCBjb3N0cywgZXhjZXB0IGBwcHIgdG8gaW52ZXN0bWVudGAgZXhlbXB0aW9uLFxuICAgKiBpbiB0aGF0IGNhc2UgaXQncyBlcXVhbCB0byBtYXJrZXQgdmFsdWUsIHdoZW4gcHJvcGVydHkgYmVjYW1lIGFuIGludmVzdG1lbnQgcHJvcGVydHlcbiAgICovXG4gIGNhbGN1bGF0ZUNvc3RCYXNlKHNhbGU6IFByb3BlcnR5U2FsZSk6IG51bWJlciB7XG4gICAgY29uc3QgbWFya2V0VmFsdWU6IG51bWJlciA9IG5ldyBQcm9wZXJ0eVNhbGVUYXhFeGVtcHRpb25NZXRhZGF0YUNvbGxlY3Rpb24oc2FsZS50YXhFeGVtcHRpb25NZXRhZGF0YSkuZ2V0TWFya2V0VmFsdWUoKTtcbiAgICBpZiAobWFya2V0VmFsdWUpIHtcbiAgICAgIHJldHVybiBtYXJrZXRWYWx1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5wdXJjaGFzZVByaWNlICsgdGhpcy5jYXBpdGFsQ29zdHNUb3RhbEFtb3VudCArIHNhbGUuc3RydWN0dXJhbEltcHJvdmVtZW50c1dEViAtIHNhbGUuYnVpbGRpbmdBdENvc3RDbGFpbWVkO1xuICB9XG5cbiAgLyoqXG4gICAqIGdyb3NzIGNhcGl0YWwgZ2FpbiB0YXg6IHNhbGUgY29zdHMgLSBjb3N0IGJhc2VcbiAgICovXG4gIGNhbGN1bGF0ZUNHVChzYWxlOiBQcm9wZXJ0eVNhbGUpOiBudW1iZXIge1xuICAgIHJldHVybiBzYWxlLnByaWNlIC0gc2FsZS5zYWxlQ29zdHNUb3RhbEFtb3VudCAtIHNhbGUuY2FwaXRhbExvc3MgLSB0aGlzLmNhbGN1bGF0ZUNvc3RCYXNlKHNhbGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIG5ldCBjYXBpdGFsIGdhaW4gdGF4IChpbmNsdWRlcyB0YXggZXhlbXB0aW9ucylcbiAgICovXG4gIGNhbGN1bGF0ZU5ldENHVChzYWxlOiBQcm9wZXJ0eVNhbGUpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldENHVEV4ZW1wdGlvblJhdGlvKHNhbGUpICogc2FsZS5jZ3Q7XG4gIH1cblxuICAvKipcbiAgICogZ3Vlc3MgdGF4IGV4ZW1wdGlvbiBiYXNlZCBvbiBwcm9wZXJ0eSBkZXRhaWxzXG4gICAqL1xuICBnZXRDR1RFeGVtcHRpb24oc2FsZTogUHJvcGVydHlTYWxlKTogVGF4RXhlbXB0aW9uRW51bSB7XG4gICAgaWYgKHNhbGUudGF4RXhlbXB0aW9uKSB7XG4gICAgICByZXR1cm4gc2FsZS50YXhFeGVtcHRpb24uaWQ7XG4gICAgfVxuXG4gICAgc3dpdGNoICh0cnVlKSB7XG4gICAgICAvLyBleGVtcHRpb24gZm9yIG1haW4gcmVzaWRlbmNlIHByb3BlcnRpZXNcbiAgICAgIGNhc2UgdGhpcy5jYXRlZ29yeS5pZCA9PT0gUHJvcGVydHlDYXRlZ29yeUxpc3RFbnVtLk9XTkVSX09DQ1VQSUVEOlxuICAgICAgICByZXR1cm4gVGF4RXhlbXB0aW9uRW51bS5QUFI7XG4gICAgICAvLyBleGVtcHRpb24gZm9yIGludmVzdG1lbnQgcHJvcGVydGllcyBvd25lZCBmb3IgYXQgbGVhc3Qgb25lIHllYXJcbiAgICAgIGNhc2UgdGhpcy5pc09uZVllYXJFeGVtcHRpb25BcHBsaWNhYmxlKHNhbGUpOlxuICAgICAgICByZXR1cm4gVGF4RXhlbXB0aW9uRW51bS5PTkVfWUVBUl9SVUxFO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIHRheCBleGVtcHRpb24gY2FuIHJlZHVjZSBjZ3QgZnJvbSAxMDAlIHRvIGxlc3MgKHVwIHRvIHplcm8pXG4gICAqL1xuICBnZXRDR1RFeGVtcHRpb25SYXRpbyhzYWxlOiBQcm9wZXJ0eVNhbGUpOiBudW1iZXIge1xuICAgIGNvbnN0IG1ldGFkYXRhOiBQcm9wZXJ0eVNhbGVUYXhFeGVtcHRpb25NZXRhZGF0YUNvbGxlY3Rpb24gPSBuZXcgUHJvcGVydHlTYWxlVGF4RXhlbXB0aW9uTWV0YWRhdGFDb2xsZWN0aW9uKHNhbGUudGF4RXhlbXB0aW9uTWV0YWRhdGEpO1xuXG4gICAgc3dpdGNoIChzYWxlLnRheEV4ZW1wdGlvbj8uaWQpIHtcbiAgICAgIC8vIDUwJSBleGVtcHRpb24gZm9yIGludmVzdG1lbnRzIG93bmVkIGZvciBhdCBsZWFzdCBvbmUgeWVhclxuICAgICAgY2FzZSBUYXhFeGVtcHRpb25FbnVtLk9ORV9ZRUFSX1JVTEU6XG4gICAgICAgIHJldHVybiAwLjU7XG4gICAgICAvLyBpbnZlc3RtZW50IHByb3BlcnR5IGJlY29tZSBtYWluIHJlc2lkZW5jZSAoZXhlbXB0aW9uIGZvciBtYWluIHJlc2lkZW5jZSBvd25lcnNoaXAgZHVyYXRpb24pXG4gICAgICBjYXNlIFRheEV4ZW1wdGlvbkVudW0uSU5WRVNUTUVOVF9UT19QUFI6XG4gICAgICAgIGNvbnN0IG93bmVyc2hpcERheXMgPSB0aGlzLmdldE93bmVyc2hpcER1cmF0aW9uKHNhbGUpO1xuXG4gICAgICAgIHJldHVybiAob3duZXJzaGlwRGF5cyAtIG1ldGFkYXRhLmdldFBQUkRheXMoKSkgLyBvd25lcnNoaXBEYXlzO1xuICAgICAgLy8gbWFpbiByZXNpZGVuY2UgYmVjb21lIGludmVzdG1lbnQgKGV4ZW1wdGlvbiBmb3IgaG9tZSBvZmZpY2UgcGVyY2VudCB1c2FnZSlcbiAgICAgIGNhc2UgVGF4RXhlbXB0aW9uRW51bS5QUFJfVE9fSU5WRVNUTUVOVDpcbiAgICAgICAgLy8gMSB5ZWFyIENHVCBkaXNjb3VudCBjYW4gc3RpbGwgYXBwbHkgKG9uIHRoZSBpbmNvbWUgcHJvZHVjaW5nICUgaWYgdXNlZCBmb3IgMTIgbW9udGhzIG9yIG1vcmUpXG4gICAgICAgIGNvbnN0IHJhdGlvOiBudW1iZXIgPSB0aGlzLmlzT25lWWVhckV4ZW1wdGlvbkFwcGxpY2FibGUoc2FsZSkgPyAwLjUgOiAxO1xuICAgICAgICByZXR1cm4gbWV0YWRhdGEuZ2V0Q2xhaW1QZXJjZW50KCkgLyAxMDAgKiByYXRpbztcbiAgICAgIC8vIGZ1bGwgZXhlbXB0aW9uXG4gICAgICBjYXNlIFRheEV4ZW1wdGlvbkVudW0uUFBSOlxuICAgICAgY2FzZSBUYXhFeGVtcHRpb25FbnVtLlNJWF9ZRUFSU19SVUxFOlxuICAgICAgY2FzZSBUYXhFeGVtcHRpb25FbnVtLlRSQU5TRkVSOlxuICAgICAgY2FzZSBUYXhFeGVtcHRpb25FbnVtLk9USEVSOlxuICAgICAgICByZXR1cm4gMDtcbiAgICAgIC8vIG5vIGV4ZW1wdGlvblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIDE7XG4gICAgfVxuICB9XG5cbiAgaXNPbmVZZWFyRXhlbXB0aW9uQXBwbGljYWJsZShzYWxlOiBQcm9wZXJ0eVNhbGUpOiBib29sZWFuIHtcbiAgICByZXR1cm4gc2FsZS5jZ3QgPiAwICYmIHRoaXMuZ2V0T3duZXJzaGlwRHVyYXRpb24oc2FsZSwgJ3llYXJzJykgPiAwO1xuICB9XG5cbiAgLyoqXG4gICAqIG93bmVyc2hpcCBkdXJhdGlvbiBmcm9tIHB1cmNoYXNlIHRpbGwgc2FsZVxuICAgKi9cbiAgZ2V0T3duZXJzaGlwRHVyYXRpb24oc2FsZTogUHJvcGVydHlTYWxlLCB1bml0T2ZUaW1lOiB1bml0T2ZUaW1lLkRpZmYgPSAnZGF5cycpOiBudW1iZXIge1xuICAgIHJldHVybiBtb21lbnQoc2FsZS5jb250cmFjdERhdGUpLmRpZmYobW9tZW50KHRoaXMuY29udHJhY3REYXRlKSwgdW5pdE9mVGltZSk7XG4gIH1cbn1cbiJdfQ==
218
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvcGVydHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3Byb3BlcnR5L3Byb3BlcnR5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUMsUUFBUSxJQUFJLFlBQVksRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBSTNFLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHlCQUF5QixDQUFDO0FBQzdELE9BQU8sRUFBQyxPQUFPLEVBQUUsSUFBSSxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFFaEQsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQzNDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ3ZELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHFCQUFxQixDQUFDO0FBQ3JELE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ3RFLE9BQU8sRUFBQyxJQUFJLEVBQUMsTUFBTSxjQUFjLENBQUM7QUFDbEMsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQy9ELE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLDBEQUEwRCxDQUFDO0FBQzFGLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBQzdGLE9BQU8sS0FBSyxNQUFNLE1BQU0sUUFBUSxDQUFDO0FBR2pDLE9BQU8sRUFDTCwwQ0FBMEMsRUFDM0MsTUFBTSwwRkFBMEYsQ0FBQztBQUVsRzs7R0FFRztBQUNILE1BQU0sT0FBTyxRQUFTLFNBQVEsWUFBWTtJQWdDeEMsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQztJQUMzQixDQUFDO0lB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QURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7OENBQ0U7QUFHbkI7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO2dEQUNJO0FBR3JCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLE9BQU8sQ0FBQzt5Q0FDSDtBQUdqQjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQzswQ0FDRjtBQUczQjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQzs0Q0FDRTtBQUdoQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQzsyQ0FDQztBQUc5QjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQzttREFDUztBQUc5QztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7c0NBQ047QUFHWDtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQzsrQ0FDSztBQUl0QztJQURDLE9BQU8sRUFBRTs4Q0FDUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7UHJvcGVydHkgYXMgUHJvcGVydHlCYXNlfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvcHJvcGVydHkvcHJvcGVydHknO1xuaW1wb3J0IHtEb2N1bWVudGFibGV9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvZG9jdW1lbnRhYmxlLmludGVyZmFjZSc7XG5pbXBvcnQge0lEb2N1bWVudH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9kb2N1bWVudC5pbnRlcmZhY2UnO1xuaW1wb3J0IHtQcm9wZXJ0eVNoYXJlfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvcHJvcGVydHkvcHJvcGVydHktc2hhcmUnO1xuaW1wb3J0IHtQcm9wZXJ0eVN1YnNjcmlwdGlvbn0gZnJvbSAnLi9wcm9wZXJ0eS1zdWJzY3JpcHRpb24nO1xuaW1wb3J0IHtFeGNsdWRlLCBUeXBlfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQge1Bob3RvYWJsZX0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9waG90b2FibGUnO1xuaW1wb3J0IHtBZGRyZXNzfSBmcm9tICcuLi9hZGRyZXNzL2FkZHJlc3MnO1xuaW1wb3J0IHtQcm9wZXJ0eUNhdGVnb3J5fSBmcm9tICcuL3Byb3BlcnR5LWNhdGVnb3J5JztcbmltcG9ydCB7UHJvcGVydHlWYWx1YXRpb259IGZyb20gJy4vcHJvcGVydHktdmFsdWF0aW9uJztcbmltcG9ydCB7UHJvcGVydHlGb3JlY2FzdH0gZnJvbSAnLi9wcm9wZXJ0eS1mb3JlY2FzdCc7XG5pbXBvcnQge1Byb3BlcnR5Q2F0ZWdvcnlNb3ZlbWVudH0gZnJvbSAnLi9wcm9wZXJ0eS1jYXRlZ29yeS1tb3ZlbWVudCc7XG5pbXBvcnQge1VzZXJ9IGZyb20gJy4uL3VzZXIvdXNlcic7XG5pbXBvcnQge0ZpbmFuY2lhbFllYXJ9IGZyb20gJy4uL2ZpbmFuY2lhbC15ZWFyL2ZpbmFuY2lhbC15ZWFyJztcbmltcG9ydCB7VGF4RXhlbXB0aW9uRW51bX0gZnJvbSAnLi4vLi4vZGIvRW51bXMvcHJvcGVydHkvcHJvcGVydHktc2FsZS90YXgtZXhlbXB0aW9uLmVudW0nO1xuaW1wb3J0IHtQcm9wZXJ0eUNhdGVnb3J5TGlzdEVudW19IGZyb20gJy4uLy4uL2RiL0VudW1zL3Byb3BlcnR5L3Byb3BlcnR5LWNhdGVnb3J5LWxpc3QuZW51bSc7XG5pbXBvcnQgKiBhcyBtb21lbnQgZnJvbSAnbW9tZW50JztcbmltcG9ydCB7UHJvcGVydHlTYWxlfSBmcm9tICcuL3Byb3BlcnR5LXNhbGUvcHJvcGVydHktc2FsZSc7XG5pbXBvcnQge3VuaXRPZlRpbWV9IGZyb20gJ21vbWVudCc7XG5pbXBvcnQge1xuICBQcm9wZXJ0eVNhbGVUYXhFeGVtcHRpb25NZXRhZGF0YUNvbGxlY3Rpb25cbn0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbnMvcHJvcGVydHkvcHJvcGVydHktc2FsZS9wcm9wZXJ0eS1zYWxlLXRheC1leGVtcHRpb24tbWV0YWRhdGEuY29sbGVjdGlvbic7XG5cbi8qKlxuICogcHJvcGVydHlTYWxlIGRvY3MgLSBodHRwczovL3RheHRhbmsuYXRsYXNzaWFuLm5ldC93aWtpL3NwYWNlcy9UQVhUQU5LL3BhZ2VzLzQyMDk1MDgzNTMvUHJvcGVydHkrU29sZCtidXR0b25cbiAqL1xuZXhwb3J0IGNsYXNzIFByb3BlcnR5IGV4dGVuZHMgUHJvcGVydHlCYXNlIGltcGxlbWVudHMgUGhvdG9hYmxlLCBEb2N1bWVudGFibGUge1xuICBAVHlwZSgoKSA9PiBEYXRlKVxuICBjb250cmFjdERhdGU6IERhdGU7XG5cbiAgQFR5cGUoKCkgPT4gRGF0ZSlcbiAgc2V0dGxlbWVudERhdGU6IERhdGU7XG5cbiAgQFR5cGUoKCkgPT4gQWRkcmVzcylcbiAgYWRkcmVzczogQWRkcmVzcztcblxuICBAVHlwZSgoKSA9PiBQcm9wZXJ0eUNhdGVnb3J5KVxuICBjYXRlZ29yeTogUHJvcGVydHlDYXRlZ29yeTtcblxuICBAVHlwZSgoKSA9PiBQcm9wZXJ0eVZhbHVhdGlvbilcbiAgdmFsdWF0aW9uczogUHJvcGVydHlWYWx1YXRpb25bXTtcblxuICBAVHlwZSgoKSA9PiBQcm9wZXJ0eUZvcmVjYXN0KVxuICBmb3JlY2FzdHM6IFByb3BlcnR5Rm9yZWNhc3RbXTtcblxuICBAVHlwZSgoKSA9PiBQcm9wZXJ0eUNhdGVnb3J5TW92ZW1lbnQpXG4gIGNhdGVnb3J5TW92ZW1lbnRzOiBQcm9wZXJ0eUNhdGVnb3J5TW92ZW1lbnRbXTtcblxuICBAVHlwZSgoKSA9PiBVc2VyKVxuICB1c2VyOiBVc2VyO1xuXG4gIEBUeXBlKCgpID0+IFByb3BlcnR5U3Vic2NyaXB0aW9uKVxuICBzdWJzY3JpcHRpb25zOiBQcm9wZXJ0eVN1YnNjcmlwdGlvbltdO1xuXG4gIC8vIGNvdWxkIGJlIEZpbGUgd2hlbiBqdXN0IGFkZGVkIG5ldyBpbWFnZVxuICBARXhjbHVkZSgpXG4gIGRvY3VtZW50RmlsZTogRmlsZTtcblxuICBnZXQgbmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmFkZHJlc3MubmFtZTtcbiAgfVxuXG4gIGdldCBpc0FjdGl2ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLnN1YnNjcmlwdGlvbnM/Lmxlbmd0aDtcbiAgfVxuXG4gIGlzT3duKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnVzZXIuaWQgPT09ICtsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgndXNlcklkJyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGluaXRpYWxzIG9mIHByb3BlcnR5LiBSZXF1aXJlZCBieSBQaG90b2FibGUgaW50ZXJmYWNlXG4gICAqL1xuICBnZXRJbml0aWFscygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm5hbWUuc3BsaXQoJyAnKVsxXS5zbGljZSgwLCAyKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgcHJvcGVydHkgcGhvdG8uIFJlcXVpcmVkIGJ5IFBob3RvYWJsZSBpbnRlcmZhY2VcbiAgICovXG4gIGdldFBob3RvKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMucGhvdG87XG4gIH1cblxuICBnZXQgY2FwaXRhbENvc3RzVG90YWxBbW91bnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5zdGFtcER1dHkgKyB0aGlzLmxlZ2FsRmVlcyArIHRoaXMub3RoZXJDYXBpdGFsQ29zdHM7XG4gIH1cblxuICBnZXQgY3VycmVudFllYXJWYWx1YXRpb25zKCk6IFByb3BlcnR5VmFsdWF0aW9uW10ge1xuICAgIHJldHVybiB0aGlzLnZhbHVhdGlvbnMuZmlsdGVyKCh2YWx1YXRpb246IFByb3BlcnR5VmFsdWF0aW9uKTogYm9vbGVhbiA9PiB2YWx1YXRpb24uaXNDdXJyZW50WWVhcigpKTtcbiAgfVxuXG4gIGdldCBtYXJrZXRWYWx1ZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmFjdHVhbFZhbHVhdGlvbj8ubWFya2V0VmFsdWUgfHwgMDtcbiAgfVxuXG4gIGdldCBjdXJyZW50WWVhckZvcmVjYXN0KCk6IFByb3BlcnR5Rm9yZWNhc3Qge1xuICAgIHJldHVybiB0aGlzLmZvcmVjYXN0cy5maW5kKChmb3JlY2FzdDogUHJvcGVydHlGb3JlY2FzdCk6IGJvb2xlYW4gPT4gZm9yZWNhc3QuaXNDdXJyZW50WWVhcigpKTtcbiAgfVxuXG4gIGdldCBmb3JlY2FzdGVkUmVudGFsUmV0dXJuKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudFllYXJGb3JlY2FzdD8ucmVudGFsUmV0dXJuIHx8IDA7XG4gIH1cblxuICBnZXQgZm9yZWNhc3RlZFRheFBvc2l0aW9uKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuY3VycmVudFllYXJGb3JlY2FzdD8udGF4UG9zaXRpb24gfHwgMDtcbiAgfVxuXG4gIGdldCBmaXJzdEZvcmVjYXN0WWVhcigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmZvcmVjYXN0cy5yZWR1Y2UoKG1pbjogbnVtYmVyLCBmb3JlY2FzdDogUHJvcGVydHlGb3JlY2FzdCk6IG51bWJlciA9PiB7XG4gICAgICByZXR1cm4gbWluID4gZm9yZWNhc3QuZmluYW5jaWFsWWVhciA/IGZvcmVjYXN0LmZpbmFuY2lhbFllYXIgOiBtaW47XG4gICAgfSwgbmV3IEZpbmFuY2lhbFllYXIoKS55ZWFyKTtcbiAgfVxuXG4gIGdldCBtYXJrZXRWYWx1ZUdyb3d0aCgpOiBudW1iZXIge1xuICAgIHJldHVybiAodGhpcy5tYXJrZXRWYWx1ZSAtIHRoaXMucHVyY2hhc2VQcmljZSkgLyB0aGlzLm1hcmtldFZhbHVlO1xuICB9XG5cbiAgZ2V0IG15U2hhcmUoKTogUHJvcGVydHlTaGFyZSB7XG4gICAgcmV0dXJuIHRoaXMuc2hhcmVzLmZpbmQoKHNoYXJlOiBQcm9wZXJ0eVNoYXJlKTogYm9vbGVhbiA9PiBzaGFyZS51c2VyLmlkID09PSArbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3VzZXJJZCcpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBleGFjdCBjbGFpbSBpbmNsdWRpbmcgc2hhcmUgcGVyY2VudFxuICAgKi9cbiAgZ2V0IHNoYXJlQ2xhaW1QZXJjZW50KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuc2hhcmVQZXJjZW50ICogdGhpcy5jbGFpbVBlcmNlbnQgLyAxMDA7XG4gIH1cblxuICBnZXQgYWN0dWFsVmFsdWF0aW9uKCk6IFByb3BlcnR5VmFsdWF0aW9uIHtcbiAgICByZXR1cm4gdGhpcy52YWx1YXRpb25zLnJlZHVjZSgobWF4RGF0ZVZhbHVhdGlvbjogUHJvcGVydHlWYWx1YXRpb24sIHZhbHVhdGlvbjogUHJvcGVydHlWYWx1YXRpb24pID0+IHtcbiAgICAgIHJldHVybiBtYXhEYXRlVmFsdWF0aW9uLmRhdGUgPiB2YWx1YXRpb24uZGF0ZSA/IG1heERhdGVWYWx1YXRpb24gOiB2YWx1YXRpb247XG4gICAgfSwgdGhpcy52YWx1YXRpb25zWzBdKTtcbiAgfVxuXG4gIGdldCBzaGFyZVBlcmNlbnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5teVNoYXJlLnBlcmNlbnQ7XG4gIH1cblxuICBnZXQgcHJldmlvdXNDYXRlZ29yeSgpOiBQcm9wZXJ0eUNhdGVnb3J5IHtcbiAgICBsZXQgcHJldmlvdXNDYXRlZ29yeTogUHJvcGVydHlDYXRlZ29yeTtcblxuICAgIGNvbnN0IG1vdmVtZW50c0NvdW50OiBudW1iZXIgPSB0aGlzLmNhdGVnb3J5TW92ZW1lbnRzLmxlbmd0aDtcblxuICAgIGlmIChtb3ZlbWVudHNDb3VudCA+IDEpIHtcbiAgICAgIHByZXZpb3VzQ2F0ZWdvcnkgPSB0aGlzLmNhdGVnb3J5TW92ZW1lbnRzW21vdmVtZW50c0NvdW50IC0gMl0ucHJvcGVydHlDYXRlZ29yeTtcbiAgICB9XG5cbiAgICByZXR1cm4gcHJldmlvdXNDYXRlZ29yeTtcbiAgfVxuXG4gIGdldEN1cnJlbnRTdWJzY3JpcHRpb24oKTogUHJvcGVydHlTdWJzY3JpcHRpb24ge1xuICAgIC8vIGFsd2F5cyByZXR1cm4gZmlyc3QgZWxlbWVudCBiZWNhdXNlIHN1YnNjcmlwdGlvbnMgYXJyYXkgY29udGFpbnMgb25seSBvbmUgZWxlbWVudFxuICAgIHJldHVybiB0aGlzLnN1YnNjcmlwdGlvbnNbMF07XG4gIH1cblxuICBnZXRGb3JlY2FzdEJ5WWVhcih5ZWFyOiBudW1iZXIpOiBQcm9wZXJ0eUZvcmVjYXN0IHtcbiAgICByZXR1cm4gdGhpcy5mb3JlY2FzdHMuZmluZCgoZm9yZWNhc3Q6IFByb3BlcnR5Rm9yZWNhc3QpOiBib29sZWFuID0+IGZvcmVjYXN0LmZpbmFuY2lhbFllYXIgPT09IHllYXIpO1xuICB9XG5cbiAgZ2V0IGlzU2hhcmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNoYXJlcy5sZW5ndGggPiAxO1xuICB9XG5cbiAgLyoqXG4gICAqIEBUT0RPIGNvbnNpZGVyIHRvIG1vdmUgbWV0aG9kcyByZWxhdGVkIHdpdGggcHJvcGVydHlTYWxlIHRvIHNlcGFyYXRlZCBjbGFzcywgc2luY2UgdXNlZCBqdXN0IGluIG9uZSBtb2R1bGUgeWV0XG4gICAqIHB1cmNoYXNlIGNvc3RzIC0gY2xhaW1lZCBjb3N0cywgZXhjZXB0IGBwcHIgdG8gaW52ZXN0bWVudGAgZXhlbXB0aW9uLFxuICAgKiBpbiB0aGF0IGNhc2UgaXQncyBlcXVhbCB0byBtYXJrZXQgdmFsdWUsIHdoZW4gcHJvcGVydHkgYmVjYW1lIGFuIGludmVzdG1lbnQgcHJvcGVydHlcbiAgICovXG4gIGNhbGN1bGF0ZUNvc3RCYXNlKHNhbGU6IFByb3BlcnR5U2FsZSk6IG51bWJlciB7XG4gICAgY29uc3QgbWFya2V0VmFsdWU6IG51bWJlciA9IG5ldyBQcm9wZXJ0eVNhbGVUYXhFeGVtcHRpb25NZXRhZGF0YUNvbGxlY3Rpb24oc2FsZS50YXhFeGVtcHRpb25NZXRhZGF0YSkuZ2V0TWFya2V0VmFsdWUoKTtcbiAgICBpZiAobWFya2V0VmFsdWUpIHtcbiAgICAgIHJldHVybiBtYXJrZXRWYWx1ZTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5wdXJjaGFzZVByaWNlICsgdGhpcy5jYXBpdGFsQ29zdHNUb3RhbEFtb3VudCArIHNhbGUuc3RydWN0dXJhbEltcHJvdmVtZW50c1dEViAtIHNhbGUuYnVpbGRpbmdBdENvc3RDbGFpbWVkO1xuICB9XG5cbiAgLyoqXG4gICAqIGdyb3NzIGNhcGl0YWwgZ2FpbiB0YXg6IHNhbGUgY29zdHMgLSBjb3N0IGJhc2VcbiAgICovXG4gIGNhbGN1bGF0ZUNHVChzYWxlOiBQcm9wZXJ0eVNhbGUpOiBudW1iZXIge1xuICAgIHJldHVybiBzYWxlLnByaWNlIC0gc2FsZS5zYWxlQ29zdHNUb3RhbEFtb3VudCAtIHNhbGUuY2FwaXRhbExvc3MgLSB0aGlzLmNhbGN1bGF0ZUNvc3RCYXNlKHNhbGUpO1xuICB9XG5cbiAgLyoqXG4gICAqIG5ldCBjYXBpdGFsIGdhaW4gdGF4IChpbmNsdWRlcyB0YXggZXhlbXB0aW9ucylcbiAgICovXG4gIGNhbGN1bGF0ZU5ldENHVChzYWxlOiBQcm9wZXJ0eVNhbGUpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldENHVEV4ZW1wdGlvblJhdGlvKHNhbGUpICogc2FsZS5jZ3Q7XG4gIH1cblxuICAvKipcbiAgICogZ3Vlc3MgdGF4IGV4ZW1wdGlvbiBiYXNlZCBvbiBwcm9wZXJ0eSBkZXRhaWxzXG4gICAqL1xuICBnZXRDR1RFeGVtcHRpb24oc2FsZTogUHJvcGVydHlTYWxlKTogVGF4RXhlbXB0aW9uRW51bSB7XG4gICAgaWYgKHNhbGUudGF4RXhlbXB0aW9uKSB7XG4gICAgICByZXR1cm4gc2FsZS50YXhFeGVtcHRpb24uaWQ7XG4gICAgfVxuXG4gICAgc3dpdGNoICh0cnVlKSB7XG4gICAgICAvLyBleGVtcHRpb24gZm9yIG1haW4gcmVzaWRlbmNlIHByb3BlcnRpZXNcbiAgICAgIGNhc2UgdGhpcy5jYXRlZ29yeS5pZCA9PT0gUHJvcGVydHlDYXRlZ29yeUxpc3RFbnVtLk9XTkVSX09DQ1VQSUVEOlxuICAgICAgICByZXR1cm4gVGF4RXhlbXB0aW9uRW51bS5QUFI7XG4gICAgICAvLyBleGVtcHRpb24gZm9yIGludmVzdG1lbnQgcHJvcGVydGllcyBvd25lZCBmb3IgYXQgbGVhc3Qgb25lIHllYXJcbiAgICAgIGNhc2UgdGhpcy5pc09uZVllYXJFeGVtcHRpb25BcHBsaWNhYmxlKHNhbGUpOlxuICAgICAgICByZXR1cm4gVGF4RXhlbXB0aW9uRW51bS5PTkVfWUVBUl9SVUxFO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIHRheCBleGVtcHRpb24gY2FuIHJlZHVjZSBjZ3QgZnJvbSAxMDAlIHRvIGxlc3MgKHVwIHRvIHplcm8pXG4gICAqL1xuICBnZXRDR1RFeGVtcHRpb25SYXRpbyhzYWxlOiBQcm9wZXJ0eVNhbGUpOiBudW1iZXIge1xuICAgIGNvbnN0IG1ldGFkYXRhOiBQcm9wZXJ0eVNhbGVUYXhFeGVtcHRpb25NZXRhZGF0YUNvbGxlY3Rpb24gPSBuZXcgUHJvcGVydHlTYWxlVGF4RXhlbXB0aW9uTWV0YWRhdGFDb2xsZWN0aW9uKHNhbGUudGF4RXhlbXB0aW9uTWV0YWRhdGEpO1xuXG4gICAgc3dpdGNoIChzYWxlLnRheEV4ZW1wdGlvbj8uaWQpIHtcbiAgICAgIC8vIDUwJSBleGVtcHRpb24gZm9yIGludmVzdG1lbnRzIG93bmVkIGZvciBhdCBsZWFzdCBvbmUgeWVhclxuICAgICAgY2FzZSBUYXhFeGVtcHRpb25FbnVtLk9ORV9ZRUFSX1JVTEU6XG4gICAgICAgIHJldHVybiAwLjU7XG4gICAgICAvLyBpbnZlc3RtZW50IHByb3BlcnR5IGJlY29tZSBtYWluIHJlc2lkZW5jZSAoZXhlbXB0aW9uIGZvciBtYWluIHJlc2lkZW5jZSBvd25lcnNoaXAgZHVyYXRpb24pXG4gICAgICBjYXNlIFRheEV4ZW1wdGlvbkVudW0uSU5WRVNUTUVOVF9UT19QUFI6XG4gICAgICAgIGNvbnN0IG93bmVyc2hpcERheXMgPSB0aGlzLmdldE93bmVyc2hpcER1cmF0aW9uKHNhbGUpO1xuXG4gICAgICAgIHJldHVybiAob3duZXJzaGlwRGF5cyAtIG1ldGFkYXRhLmdldFBQUkRheXMoKSkgLyBvd25lcnNoaXBEYXlzO1xuICAgICAgLy8gbWFpbiByZXNpZGVuY2UgYmVjb21lIGludmVzdG1lbnQgKGV4ZW1wdGlvbiBmb3IgaG9tZSBvZmZpY2UgcGVyY2VudCB1c2FnZSlcbiAgICAgIGNhc2UgVGF4RXhlbXB0aW9uRW51bS5QUFJfVE9fSU5WRVNUTUVOVDpcbiAgICAgICAgLy8gMSB5ZWFyIENHVCBkaXNjb3VudCBjYW4gc3RpbGwgYXBwbHkgKG9uIHRoZSBpbmNvbWUgcHJvZHVjaW5nICUgaWYgdXNlZCBmb3IgMTIgbW9udGhzIG9yIG1vcmUpXG4gICAgICAgIGNvbnN0IHJhdGlvOiBudW1iZXIgPSB0aGlzLmlzT25lWWVhckV4ZW1wdGlvbkFwcGxpY2FibGUoc2FsZSkgPyAwLjUgOiAxO1xuICAgICAgICByZXR1cm4gbWV0YWRhdGEuZ2V0Q2xhaW1QZXJjZW50KCkgLyAxMDAgKiByYXRpbztcbiAgICAgIC8vIGZ1bGwgZXhlbXB0aW9uXG4gICAgICBjYXNlIFRheEV4ZW1wdGlvbkVudW0uUFBSOlxuICAgICAgY2FzZSBUYXhFeGVtcHRpb25FbnVtLlNJWF9ZRUFSU19SVUxFOlxuICAgICAgY2FzZSBUYXhFeGVtcHRpb25FbnVtLlRSQU5TRkVSOlxuICAgICAgY2FzZSBUYXhFeGVtcHRpb25FbnVtLk9USEVSOlxuICAgICAgICByZXR1cm4gMDtcbiAgICAgIC8vIG5vIGV4ZW1wdGlvblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIDE7XG4gICAgfVxuICB9XG5cbiAgaXNPbmVZZWFyRXhlbXB0aW9uQXBwbGljYWJsZShzYWxlOiBQcm9wZXJ0eVNhbGUpOiBib29sZWFuIHtcbiAgICByZXR1cm4gc2FsZS5jZ3QgPiAwICYmIHRoaXMuZ2V0T3duZXJzaGlwRHVyYXRpb24oc2FsZSwgJ3llYXJzJykgPiAwO1xuICB9XG5cbiAgLyoqXG4gICAqIG93bmVyc2hpcCBkdXJhdGlvbiBmcm9tIHB1cmNoYXNlIHRpbGwgc2FsZVxuICAgKi9cbiAgZ2V0T3duZXJzaGlwRHVyYXRpb24oc2FsZTogUHJvcGVydHlTYWxlLCB1bml0T2ZUaW1lOiB1bml0T2ZUaW1lLkRpZmYgPSAnZGF5cycpOiBudW1iZXIge1xuICAgIHJldHVybiBtb21lbnQoc2FsZS5jb250cmFjdERhdGUpLmRpZmYobW9tZW50KHRoaXMuY29udHJhY3REYXRlKSwgdW5pdE9mVGltZSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,4 +1,4 @@
1
- import { RegistrationInvite as RegistrationInviteBase } from '../../db/Models/registration-invite';
1
+ import { RegistrationInvite as RegistrationInviteBase } from '../../db/Models/user/registration-invite';
2
2
  export class RegistrationInvite extends RegistrationInviteBase {
3
3
  getInitials() {
4
4
  return `${this.firstName[0].toUpperCase()}${this.firstName[1]}`;
@@ -7,4 +7,4 @@ export class RegistrationInvite extends RegistrationInviteBase {
7
7
  return null;
8
8
  }
9
9
  }
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0cmF0aW9uLWludml0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvcmVnaXN0cmF0aW9uLWludml0ZS9yZWdpc3RyYXRpb24taW52aXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxrQkFBa0IsSUFBSSxzQkFBc0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBR25HLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxzQkFBc0I7SUFDNUQsV0FBVztRQUNULE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNsRSxDQUFDO0lBRUQsUUFBUTtRQUNOLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVnaXN0cmF0aW9uSW52aXRlIGFzIFJlZ2lzdHJhdGlvbkludml0ZUJhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvcmVnaXN0cmF0aW9uLWludml0ZSc7XG5pbXBvcnQgeyBQaG90b2FibGUgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3Bob3RvYWJsZSc7XG5cbmV4cG9ydCBjbGFzcyBSZWdpc3RyYXRpb25JbnZpdGUgZXh0ZW5kcyBSZWdpc3RyYXRpb25JbnZpdGVCYXNlIGltcGxlbWVudHMgUGhvdG9hYmxlIHtcbiAgZ2V0SW5pdGlhbHMoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7dGhpcy5maXJzdE5hbWVbMF0udG9VcHBlckNhc2UoKX0ke3RoaXMuZmlyc3ROYW1lWzFdfWA7XG4gIH1cblxuICBnZXRQaG90bygpOiBzdHJpbmcge1xuICAgIHJldHVybiBudWxsO1xuICB9XG59XG4iXX0=
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0cmF0aW9uLWludml0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvcmVnaXN0cmF0aW9uLWludml0ZS9yZWdpc3RyYXRpb24taW52aXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxrQkFBa0IsSUFBSSxzQkFBc0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBR3hHLE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxzQkFBc0I7SUFDNUQsV0FBVztRQUNULE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUNsRSxDQUFDO0lBRUQsUUFBUTtRQUNOLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVnaXN0cmF0aW9uSW52aXRlIGFzIFJlZ2lzdHJhdGlvbkludml0ZUJhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvdXNlci9yZWdpc3RyYXRpb24taW52aXRlJztcbmltcG9ydCB7IFBob3RvYWJsZSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvcGhvdG9hYmxlJztcblxuZXhwb3J0IGNsYXNzIFJlZ2lzdHJhdGlvbkludml0ZSBleHRlbmRzIFJlZ2lzdHJhdGlvbkludml0ZUJhc2UgaW1wbGVtZW50cyBQaG90b2FibGUge1xuICBnZXRJbml0aWFscygpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLmZpcnN0TmFtZVswXS50b1VwcGVyQ2FzZSgpfSR7dGhpcy5maXJzdE5hbWVbMV19YDtcbiAgfVxuXG4gIGdldFBob3RvKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Vehicle expense for logbook section
3
+ */
4
+ export class VehicleExpense {
5
+ constructor(amount, claimPercent, description) {
6
+ this.amount = amount;
7
+ this.claimPercent = claimPercent;
8
+ this.description = description;
9
+ }
10
+ getClaimAmount() {
11
+ return +(this.amount * (this.claimPercent / 100)).toFixed(2);
12
+ }
13
+ }
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVoaWNsZS1leHBlbnNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9yZXBvcnQvdmVoaWNsZS1leHBlbnNlL3ZlaGljbGUtZXhwZW5zZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILE1BQU0sT0FBTyxjQUFjO0lBS3pCLFlBQ0UsTUFBYyxFQUNkLFlBQW9CLEVBQ3BCLFdBQW1CO1FBRW5CLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDO1FBQ2pDLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxjQUFjO1FBQ1osT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDL0QsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBWZWhpY2xlIGV4cGVuc2UgZm9yIGxvZ2Jvb2sgc2VjdGlvblxuICovXG5leHBvcnQgY2xhc3MgVmVoaWNsZUV4cGVuc2Uge1xuICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuICBhbW91bnQ6IG51bWJlcjtcbiAgY2xhaW1QZXJjZW50OiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgYW1vdW50OiBudW1iZXIsXG4gICAgY2xhaW1QZXJjZW50OiBudW1iZXIsXG4gICAgZGVzY3JpcHRpb246IHN0cmluZ1xuICApIHtcbiAgICB0aGlzLmFtb3VudCA9IGFtb3VudDtcbiAgICB0aGlzLmNsYWltUGVyY2VudCA9IGNsYWltUGVyY2VudDtcbiAgICB0aGlzLmRlc2NyaXB0aW9uID0gZGVzY3JpcHRpb247XG4gIH1cblxuICBnZXRDbGFpbUFtb3VudCgpOiBudW1iZXIge1xuICAgIHJldHVybiArKHRoaXMuYW1vdW50ICogKHRoaXMuY2xhaW1QZXJjZW50IC8gMTAwKSkudG9GaXhlZCgyKTtcbiAgfVxufVxuIl19
@@ -1,5 +1,5 @@
1
1
  import { __decorate } from "tslib";
2
- import { ServicePayment as BaseServicePayment } from '../../db/Models/service-payment';
2
+ import { ServicePayment as BaseServicePayment } from '../../db/Models/subscription/service-payment';
3
3
  import { ServiceSubscription } from './service-subscription';
4
4
  import { Type } from 'class-transformer';
5
5
  export class ServicePayment extends BaseServicePayment {
@@ -7,4 +7,4 @@ export class ServicePayment extends BaseServicePayment {
7
7
  __decorate([
8
8
  Type(() => ServiceSubscription)
9
9
  ], ServicePayment.prototype, "subscription", void 0);
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1wYXltZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9zZXJ2aWNlLXN1YnNjcmlwdGlvbi9zZXJ2aWNlLXBheW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxjQUFjLElBQUksa0JBQWtCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN2RixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFekMsTUFBTSxPQUFPLGNBQWUsU0FBUSxrQkFBa0I7Q0FHckQ7QUFEQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztvREFDRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNlcnZpY2VQYXltZW50IGFzIEJhc2VTZXJ2aWNlUGF5bWVudCB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9zZXJ2aWNlLXBheW1lbnQnO1xuaW1wb3J0IHsgU2VydmljZVN1YnNjcmlwdGlvbiB9IGZyb20gJy4vc2VydmljZS1zdWJzY3JpcHRpb24nO1xuaW1wb3J0IHsgVHlwZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcblxuZXhwb3J0IGNsYXNzIFNlcnZpY2VQYXltZW50IGV4dGVuZHMgQmFzZVNlcnZpY2VQYXltZW50IHtcbiAgQFR5cGUoKCkgPT4gU2VydmljZVN1YnNjcmlwdGlvbilcbiAgc3Vic2NyaXB0aW9uOiBTZXJ2aWNlU3Vic2NyaXB0aW9uO1xufVxuIl19
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1wYXltZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9zZXJ2aWNlLXN1YnNjcmlwdGlvbi9zZXJ2aWNlLXBheW1lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxjQUFjLElBQUksa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNwRyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFekMsTUFBTSxPQUFPLGNBQWUsU0FBUSxrQkFBa0I7Q0FHckQ7QUFEQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQztvREFDRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNlcnZpY2VQYXltZW50IGFzIEJhc2VTZXJ2aWNlUGF5bWVudCB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9zdWJzY3JpcHRpb24vc2VydmljZS1wYXltZW50JztcbmltcG9ydCB7IFNlcnZpY2VTdWJzY3JpcHRpb24gfSBmcm9tICcuL3NlcnZpY2Utc3Vic2NyaXB0aW9uJztcbmltcG9ydCB7IFR5cGUgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5cbmV4cG9ydCBjbGFzcyBTZXJ2aWNlUGF5bWVudCBleHRlbmRzIEJhc2VTZXJ2aWNlUGF5bWVudCB7XG4gIEBUeXBlKCgpID0+IFNlcnZpY2VTdWJzY3JpcHRpb24pXG4gIHN1YnNjcmlwdGlvbjogU2VydmljZVN1YnNjcmlwdGlvbjtcbn1cbiJdfQ==
@@ -1,5 +1,5 @@
1
1
  import { __decorate } from "tslib";
2
- import { ServicePrice as BaseServicePrice } from '../../db/Models/service-price';
2
+ import { ServicePrice as BaseServicePrice } from '../../db/Models/subscription/service-price';
3
3
  import { ServiceProduct } from './service-product';
4
4
  import { Type } from 'class-transformer';
5
5
  export class ServicePrice extends BaseServicePrice {
@@ -7,4 +7,4 @@ export class ServicePrice extends BaseServicePrice {
7
7
  __decorate([
8
8
  Type(() => ServiceProduct)
9
9
  ], ServicePrice.prototype, "product", void 0);
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1wcmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvc2VydmljZS1zdWJzY3JpcHRpb24vc2VydmljZS1wcmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFlBQVksSUFBSSxnQkFBZ0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2pGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFekMsTUFBTSxPQUFPLFlBQWEsU0FBUSxnQkFBZ0I7Q0FHakQ7QUFEQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxjQUFjLENBQUM7NkNBQ0giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXJ2aWNlUHJpY2UgYXMgQmFzZVNlcnZpY2VQcmljZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9zZXJ2aWNlLXByaWNlJztcbmltcG9ydCB7IFNlcnZpY2VQcm9kdWN0IH0gZnJvbSAnLi9zZXJ2aWNlLXByb2R1Y3QnO1xuaW1wb3J0IHsgVHlwZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcblxuZXhwb3J0IGNsYXNzIFNlcnZpY2VQcmljZSBleHRlbmRzIEJhc2VTZXJ2aWNlUHJpY2Uge1xuICBAVHlwZSgoKSA9PiBTZXJ2aWNlUHJvZHVjdClcbiAgcHJvZHVjdDogU2VydmljZVByb2R1Y3Q7XG59XG4iXX0=
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1wcmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvc2VydmljZS1zdWJzY3JpcHRpb24vc2VydmljZS1wcmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFlBQVksSUFBSSxnQkFBZ0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzlGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFekMsTUFBTSxPQUFPLFlBQWEsU0FBUSxnQkFBZ0I7Q0FHakQ7QUFEQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxjQUFjLENBQUM7NkNBQ0giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXJ2aWNlUHJpY2UgYXMgQmFzZVNlcnZpY2VQcmljZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9zdWJzY3JpcHRpb24vc2VydmljZS1wcmljZSc7XG5pbXBvcnQgeyBTZXJ2aWNlUHJvZHVjdCB9IGZyb20gJy4vc2VydmljZS1wcm9kdWN0JztcbmltcG9ydCB7IFR5cGUgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5cbmV4cG9ydCBjbGFzcyBTZXJ2aWNlUHJpY2UgZXh0ZW5kcyBCYXNlU2VydmljZVByaWNlIHtcbiAgQFR5cGUoKCkgPT4gU2VydmljZVByb2R1Y3QpXG4gIHByb2R1Y3Q6IFNlcnZpY2VQcm9kdWN0O1xufVxuIl19
@@ -1,10 +1,18 @@
1
- import { ServiceProduct as BaseServiceProduct } from '../../db/Models/service-product';
1
+ import { ServiceProduct as BaseServiceProduct } from '../../db/Models/subscription/service-product';
2
+ import { ServiceProductStatusEnum } from '../../db/Enums/subscription/service-product-status.enum';
3
+ import { ServiceProductIdEnum } from '../../db/Enums/subscription/service-product-id.enum';
2
4
  export class ServiceProduct extends BaseServiceProduct {
3
- isProperty() {
4
- return this.title === 'Property';
5
+ isProperties() {
6
+ return [ServiceProductIdEnum.PROPERTY_OLD, ServiceProductIdEnum.PROPERTIES].includes(this.id);
5
7
  }
6
- isWork() {
7
- return this.title === 'Work Tank';
8
+ isWorkTank() {
9
+ return [ServiceProductIdEnum.WORK_TANK_OLD, ServiceProductIdEnum.WORK_TANK].includes(this.id);
10
+ }
11
+ isSoleTank() {
12
+ return this.id === ServiceProductIdEnum.SOLE_TANK;
13
+ }
14
+ isArchived() {
15
+ return this.status === ServiceProductStatusEnum.ARCHIVED;
8
16
  }
9
17
  }
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1wcm9kdWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9zZXJ2aWNlLXN1YnNjcmlwdGlvbi9zZXJ2aWNlLXByb2R1Y3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsSUFBSSxrQkFBa0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRXZGLE1BQU0sT0FBTyxjQUFlLFNBQVEsa0JBQWtCO0lBQ3BELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxLQUFLLEtBQUssVUFBVSxDQUFDO0lBQ25DLENBQUM7SUFFRCxNQUFNO1FBQ0osT0FBTyxJQUFJLENBQUMsS0FBSyxLQUFLLFdBQVcsQ0FBQztJQUNwQyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXJ2aWNlUHJvZHVjdCBhcyBCYXNlU2VydmljZVByb2R1Y3QgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvc2VydmljZS1wcm9kdWN0JztcblxuZXhwb3J0IGNsYXNzIFNlcnZpY2VQcm9kdWN0IGV4dGVuZHMgQmFzZVNlcnZpY2VQcm9kdWN0IHtcbiAgaXNQcm9wZXJ0eSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50aXRsZSA9PT0gJ1Byb3BlcnR5JztcbiAgfVxuXG4gIGlzV29yaygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50aXRsZSA9PT0gJ1dvcmsgVGFuayc7XG4gIH1cbn1cbiJdfQ==
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1wcm9kdWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL21vZGVscy9zZXJ2aWNlLXN1YnNjcmlwdGlvbi9zZXJ2aWNlLXByb2R1Y3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGNBQWMsSUFBSSxrQkFBa0IsRUFBQyxNQUFNLDhDQUE4QyxDQUFDO0FBQ2xHLE9BQU8sRUFBQyx3QkFBd0IsRUFBQyxNQUFNLHlEQUF5RCxDQUFDO0FBQ2pHLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHFEQUFxRCxDQUFDO0FBRXpGLE1BQU0sT0FBTyxjQUFlLFNBQVEsa0JBQWtCO0lBQ3BELFlBQVk7UUFDVixPQUFPLENBQUMsb0JBQW9CLENBQUMsWUFBWSxFQUFFLG9CQUFvQixDQUFDLFVBQVUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDaEcsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLENBQUMsb0JBQW9CLENBQUMsYUFBYSxFQUFFLG9CQUFvQixDQUFDLFNBQVMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDaEcsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxFQUFFLEtBQUssb0JBQW9CLENBQUMsU0FBUyxDQUFDO0lBQ3BELENBQUM7SUFFRCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLHdCQUF3QixDQUFDLFFBQVEsQ0FBQztJQUMzRCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1NlcnZpY2VQcm9kdWN0IGFzIEJhc2VTZXJ2aWNlUHJvZHVjdH0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL3N1YnNjcmlwdGlvbi9zZXJ2aWNlLXByb2R1Y3QnO1xuaW1wb3J0IHtTZXJ2aWNlUHJvZHVjdFN0YXR1c0VudW19IGZyb20gJy4uLy4uL2RiL0VudW1zL3N1YnNjcmlwdGlvbi9zZXJ2aWNlLXByb2R1Y3Qtc3RhdHVzLmVudW0nO1xuaW1wb3J0IHtTZXJ2aWNlUHJvZHVjdElkRW51bX0gZnJvbSAnLi4vLi4vZGIvRW51bXMvc3Vic2NyaXB0aW9uL3NlcnZpY2UtcHJvZHVjdC1pZC5lbnVtJztcblxuZXhwb3J0IGNsYXNzIFNlcnZpY2VQcm9kdWN0IGV4dGVuZHMgQmFzZVNlcnZpY2VQcm9kdWN0IHtcbiAgaXNQcm9wZXJ0aWVzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBbU2VydmljZVByb2R1Y3RJZEVudW0uUFJPUEVSVFlfT0xELCBTZXJ2aWNlUHJvZHVjdElkRW51bS5QUk9QRVJUSUVTXS5pbmNsdWRlcyh0aGlzLmlkKTtcbiAgfVxuXG4gIGlzV29ya1RhbmsoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIFtTZXJ2aWNlUHJvZHVjdElkRW51bS5XT1JLX1RBTktfT0xELCBTZXJ2aWNlUHJvZHVjdElkRW51bS5XT1JLX1RBTktdLmluY2x1ZGVzKHRoaXMuaWQpO1xuICB9XG5cbiAgaXNTb2xlVGFuaygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pZCA9PT0gU2VydmljZVByb2R1Y3RJZEVudW0uU09MRV9UQU5LO1xuICB9XG5cbiAgaXNBcmNoaXZlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IFNlcnZpY2VQcm9kdWN0U3RhdHVzRW51bS5BUkNISVZFRDtcbiAgfVxufVxuIl19
@@ -1,13 +1,22 @@
1
1
  import { __decorate } from "tslib";
2
- import { ServiceSubscriptionItem as ServiceSubscriptionItemBase } from '../../db/Models/service-subscription-item';
2
+ import { ServiceSubscriptionItem as ServiceSubscriptionItemBase } from '../../db/Models/subscription/service-subscription-item';
3
3
  import { ServicePrice } from './service-price';
4
4
  import { Type } from 'class-transformer';
5
+ import { ServicePriceListEnum } from '../../db/Enums/subscription/service-price-list.enum';
6
+ /**
7
+ * backend bd doesn't support dynamic prices, as far as we have just one product like that we keep it hardcoded
8
+ */
9
+ const PROPERTY_TANK_PRICE = 9;
5
10
  export class ServiceSubscriptionItem extends ServiceSubscriptionItemBase {
6
11
  get total() {
7
- return this.price.amount * this.quantity;
12
+ let price = this.price.amount * this.quantity;
13
+ if (this.price.id === ServicePriceListEnum.PROPERTIES) {
14
+ price += PROPERTY_TANK_PRICE;
15
+ }
16
+ return price;
8
17
  }
9
18
  }
10
19
  __decorate([
11
20
  Type(() => ServicePrice)
12
21
  ], ServiceSubscriptionItem.prototype, "price", void 0);
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1zdWJzY3JpcHRpb24taXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvc2VydmljZS1zdWJzY3JpcHRpb24vc2VydmljZS1zdWJzY3JpcHRpb24taXRlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHVCQUF1QixJQUFJLDJCQUEyQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbkgsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV6QyxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsMkJBQTJCO0lBSXRFLElBQUksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUMzQyxDQUFDO0NBQ0Y7QUFMQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUM7c0RBQ0wiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbSBhcyBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbUJhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvc2VydmljZS1zdWJzY3JpcHRpb24taXRlbSc7XG5pbXBvcnQgeyBTZXJ2aWNlUHJpY2UgfSBmcm9tICcuL3NlcnZpY2UtcHJpY2UnO1xuaW1wb3J0IHsgVHlwZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcblxuZXhwb3J0IGNsYXNzIFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtIGV4dGVuZHMgU2VydmljZVN1YnNjcmlwdGlvbkl0ZW1CYXNlIHtcbiAgQFR5cGUoKCkgPT4gU2VydmljZVByaWNlKVxuICBwcmljZTogU2VydmljZVByaWNlO1xuXG4gIGdldCB0b3RhbCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnByaWNlLmFtb3VudCAqIHRoaXMucXVhbnRpdHk7XG4gIH1cbn1cbiJdfQ==
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1zdWJzY3JpcHRpb24taXRlbS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvc2VydmljZS1zdWJzY3JpcHRpb24vc2VydmljZS1zdWJzY3JpcHRpb24taXRlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHVCQUF1QixJQUFJLDJCQUEyQixFQUFFLE1BQU0sd0RBQXdELENBQUM7QUFDaEksT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN6QyxPQUFPLEVBQUMsb0JBQW9CLEVBQUMsTUFBTSxxREFBcUQsQ0FBQztBQUV6Rjs7R0FFRztBQUNILE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxDQUFDO0FBRTlCLE1BQU0sT0FBTyx1QkFBd0IsU0FBUSwyQkFBMkI7SUFJdEUsSUFBSSxLQUFLO1FBQ1AsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUM5QyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLG9CQUFvQixDQUFDLFVBQVUsRUFBRTtZQUNyRCxLQUFLLElBQUksbUJBQW1CLENBQUM7U0FDOUI7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7Q0FDRjtBQVZDO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQztzREFDTCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtIGFzIFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9zdWJzY3JpcHRpb24vc2VydmljZS1zdWJzY3JpcHRpb24taXRlbSc7XG5pbXBvcnQgeyBTZXJ2aWNlUHJpY2UgfSBmcm9tICcuL3NlcnZpY2UtcHJpY2UnO1xuaW1wb3J0IHsgVHlwZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7U2VydmljZVByaWNlTGlzdEVudW19IGZyb20gJy4uLy4uL2RiL0VudW1zL3N1YnNjcmlwdGlvbi9zZXJ2aWNlLXByaWNlLWxpc3QuZW51bSc7XG5cbi8qKlxuICogYmFja2VuZCBiZCBkb2Vzbid0IHN1cHBvcnQgZHluYW1pYyBwcmljZXMsIGFzIGZhciBhcyB3ZSBoYXZlIGp1c3Qgb25lIHByb2R1Y3QgbGlrZSB0aGF0IHdlIGtlZXAgaXQgaGFyZGNvZGVkXG4gKi9cbmNvbnN0IFBST1BFUlRZX1RBTktfUFJJQ0UgPSA5O1xuXG5leHBvcnQgY2xhc3MgU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0gZXh0ZW5kcyBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbUJhc2Uge1xuICBAVHlwZSgoKSA9PiBTZXJ2aWNlUHJpY2UpXG4gIHByaWNlOiBTZXJ2aWNlUHJpY2U7XG5cbiAgZ2V0IHRvdGFsKCk6IG51bWJlciB7XG4gICAgbGV0IHByaWNlID0gdGhpcy5wcmljZS5hbW91bnQgKiB0aGlzLnF1YW50aXR5O1xuICAgIGlmICh0aGlzLnByaWNlLmlkID09PSBTZXJ2aWNlUHJpY2VMaXN0RW51bS5QUk9QRVJUSUVTKSB7XG4gICAgICBwcmljZSArPSBQUk9QRVJUWV9UQU5LX1BSSUNFO1xuICAgIH1cblxuICAgIHJldHVybiBwcmljZTtcbiAgfVxufVxuIl19
@@ -1,5 +1,5 @@
1
1
  import { __decorate } from "tslib";
2
- import { ServiceSubscription as ServiceSubscriptionBase } from '../../db/Models/service-subscription';
2
+ import { ServiceSubscription as ServiceSubscriptionBase } from '../../db/Models/subscription/service-subscription';
3
3
  import { ServiceSubscriptionItem } from './service-subscription-item';
4
4
  import { SubscriptionTypeEnum } from './subscription-type.enum';
5
5
  import { SUBSCRIPTION_TITLE } from './subscription-title.const';
@@ -20,14 +20,14 @@ export class ServiceSubscription extends ServiceSubscriptionBase {
20
20
  return this.items.reduce((sum, item) => sum + item.total, 0);
21
21
  }
22
22
  get propertyQuantity() {
23
- return this.propertyTankItem ? this.propertyTankItem.quantity : 0;
23
+ return this.propertiesItem ? this.propertiesItem.quantity : 0;
24
24
  }
25
25
  /**
26
26
  * get type of subscription
27
27
  */
28
28
  get type() {
29
29
  const workTankProduct = this.items.find((item) => {
30
- return item.price.product.isWork();
30
+ return item.price.product.isWorkTank();
31
31
  });
32
32
  if (!this.workTankItem || !this.isActive) {
33
33
  return SubscriptionTypeEnum.WITHOUT_SUBSCRIPTION;
@@ -36,9 +36,9 @@ export class ServiceSubscription extends ServiceSubscriptionBase {
36
36
  return SubscriptionTypeEnum.INDIVIDUAL;
37
37
  }
38
38
  const propertyTankProduct = this.items.find((item) => {
39
- return item.price.product.isProperty();
39
+ return item.price.product.isProperties();
40
40
  });
41
- if (!!this.propertyTankItem && propertyTankProduct.quantity === PROPERTY_INVESTOR_MAX_PROPERTIES) {
41
+ if (!!this.propertiesItem && propertyTankProduct.quantity === PROPERTY_INVESTOR_MAX_PROPERTIES) {
42
42
  return SubscriptionTypeEnum.INVESTOR;
43
43
  }
44
44
  return SubscriptionTypeEnum.INVESTOR_PLUS;
@@ -55,12 +55,6 @@ export class ServiceSubscription extends ServiceSubscriptionBase {
55
55
  get description() {
56
56
  return SUBSCRIPTION_DESCRIPTION[this.type];
57
57
  }
58
- get workTankItem() {
59
- return this.items.find((item) => item.price.product.isWork());
60
- }
61
- get propertyTankItem() {
62
- return this.items.find((item) => item.price.product.isProperty());
63
- }
64
58
  /**
65
59
  * This check on getIsActive need for firm. Accountant has a endDate, but user has not endDate
66
60
  * and for user we add check for endDate
@@ -105,6 +99,21 @@ export class ServiceSubscription extends ServiceSubscriptionBase {
105
99
  isTrialExpiring() {
106
100
  return this.daysRemain > 0 && this.daysRemain <= this.lastTrialDays;
107
101
  }
102
+ isRenewable() {
103
+ return !this.isTrial && !this.isArchived() && this.isActive;
104
+ }
105
+ /**
106
+ * @TODO move to collection
107
+ */
108
+ get workTankItem() {
109
+ return this.items.find((item) => item.price.product.isWorkTank());
110
+ }
111
+ get soleTankItem() {
112
+ return this.items.find((item) => item.price.product.isSoleTank());
113
+ }
114
+ get propertiesItem() {
115
+ return this.items.find((item) => item.price.product.isProperties());
116
+ }
108
117
  hasPropertyTank() {
109
118
  return !!this.items.find((subscriptionItem) => {
110
119
  return subscriptionItem.price.product.role.includes(UserRolesEnum.PROPERTY_TANK);
@@ -115,6 +124,14 @@ export class ServiceSubscription extends ServiceSubscriptionBase {
115
124
  return subscriptionItem.price.product.role.includes(UserRolesEnum.WORK_TANK);
116
125
  });
117
126
  }
127
+ /**
128
+ * bought before price updates, active for some time to let customer select a new plan
129
+ * impossible to update, only prolong or buy new
130
+ */
131
+ isArchived() {
132
+ // subscription with at least one archived product considered as archived
133
+ return !!this.items.map((item) => item.price.product.isArchived()).length;
134
+ }
118
135
  }
119
136
  __decorate([
120
137
  Type(() => Date)
@@ -125,4 +142,4 @@ __decorate([
125
142
  __decorate([
126
143
  Type(() => ServiceSubscriptionItem)
127
144
  ], ServiceSubscription.prototype, "items", void 0);
128
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1zdWJzY3JpcHRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3NlcnZpY2Utc3Vic2NyaXB0aW9uL3NlcnZpY2Utc3Vic2NyaXB0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsbUJBQW1CLElBQUksdUJBQXVCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN0RyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDL0QsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXpDLE1BQU0sZ0NBQWdDLEdBQUcsQ0FBQyxDQUFDO0FBRTNDLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSx1QkFBdUI7SUFBaEU7O1FBVUUsNERBQTREO1FBQzVELGtCQUFhLEdBQVcsQ0FBQyxDQUFDO0lBaUk1QixDQUFDO0lBL0hDLElBQUksT0FBTztRQUNULE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBVyxFQUFFLElBQTZCLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2hHLENBQUM7SUFFRCxJQUFJLGdCQUFnQjtRQUNsQixPQUFPLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFFRDs7T0FFRztJQUNILElBQUksSUFBSTtRQUNOLE1BQU0sZUFBZSxHQUE0QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQTZCLEVBQVcsRUFBRTtZQUMxRyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQ3JDLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ3hDLE9BQU8sb0JBQW9CLENBQUMsb0JBQW9CLENBQUM7U0FDbEQ7UUFFRCxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsZUFBZSxFQUFFO1lBQ2hELE9BQU8sb0JBQW9CLENBQUMsVUFBVSxDQUFDO1NBQ3hDO1FBRUQsTUFBTSxtQkFBbUIsR0FBNEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUE2QixFQUFXLEVBQUU7WUFDOUcsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUN6QyxDQUFDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxtQkFBbUIsQ0FBQyxRQUFRLEtBQUssZ0NBQWdDLEVBQUU7WUFDaEcsT0FBTyxvQkFBb0IsQ0FBQyxRQUFRLENBQUM7U0FDdEM7UUFFRCxPQUFPLG9CQUFvQixDQUFDLGFBQWEsQ0FBQztJQUM1QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLEtBQUs7UUFDUCxPQUFPLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLFdBQVc7UUFDYixPQUFPLHdCQUF3QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQTZCLEVBQVcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDbEcsQ0FBQztJQUVELElBQUksZ0JBQWdCO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUE2QixFQUFXLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ3RHLENBQUM7SUFFRDs7O09BR0c7SUFDSCxJQUFJLFFBQVE7UUFDVixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDdkYsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE1BQU0sV0FBVyxHQUFXLElBQUksQ0FBQyxLQUFLLENBQ3BDLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxHQUFHLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksR0FBRyxJQUFJLEdBQUcsRUFBRSxDQUFDLENBQy9FLENBQUM7UUFFRixPQUFPLFdBQVcsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEQsQ0FBQztJQUVEOzs7T0FHRztJQUNILFlBQVk7UUFDVixPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssb0JBQW9CLENBQUMsVUFBVSxDQUFDO0lBQ3ZELENBQUM7SUFFRDs7O09BR0c7SUFDSCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLG9CQUFvQixDQUFDLFFBQVEsQ0FBQztJQUNyRCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxvQkFBb0IsQ0FBQyxhQUFhLENBQUM7SUFDMUQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsVUFBVSxJQUFJLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsZUFBZTtRQUNiLE9BQU8sSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQ3RFLENBQUM7SUFFRCxlQUFlO1FBQ2IsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxnQkFBeUMsRUFBRSxFQUFFO1lBQ3JFLE9BQU8sZ0JBQWdCLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNuRixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxnQkFBeUMsRUFBRSxFQUFFO1lBQ3JFLE9BQU8sZ0JBQWdCLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUMvRSxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQTFJQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7c0RBQ0Q7QUFHaEI7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO29EQUNIO0FBR2Q7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUM7a0RBQ0giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXJ2aWNlU3Vic2NyaXB0aW9uIGFzIFNlcnZpY2VTdWJzY3JpcHRpb25CYXNlIH0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL3NlcnZpY2Utc3Vic2NyaXB0aW9uJztcbmltcG9ydCB7IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtIH0gZnJvbSAnLi9zZXJ2aWNlLXN1YnNjcmlwdGlvbi1pdGVtJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvblR5cGVFbnVtIH0gZnJvbSAnLi9zdWJzY3JpcHRpb24tdHlwZS5lbnVtJztcbmltcG9ydCB7IFNVQlNDUklQVElPTl9USVRMRSB9IGZyb20gJy4vc3Vic2NyaXB0aW9uLXRpdGxlLmNvbnN0JztcbmltcG9ydCB7IFNVQlNDUklQVElPTl9ERVNDUklQVElPTiB9IGZyb20gJy4vc3Vic2NyaXB0aW9uLWRlc2NyaXB0aW9uLmNvbnN0JztcbmltcG9ydCB7IFVzZXJSb2xlc0VudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy91c2VyLXJvbGVzLmVudW0nO1xuaW1wb3J0IHsgVHlwZSB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcblxuY29uc3QgUFJPUEVSVFlfSU5WRVNUT1JfTUFYX1BST1BFUlRJRVMgPSAyO1xuXG5leHBvcnQgY2xhc3MgU2VydmljZVN1YnNjcmlwdGlvbiBleHRlbmRzIFNlcnZpY2VTdWJzY3JpcHRpb25CYXNlIHtcbiAgQFR5cGUoKCkgPT4gRGF0ZSlcbiAgc3RhcnREYXRlOiBEYXRlO1xuXG4gIEBUeXBlKCgpID0+IERhdGUpXG4gIGVuZERhdGU6IERhdGU7XG5cbiAgQFR5cGUoKCkgPT4gU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0pXG4gIGl0ZW1zOiBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbVtdO1xuXG4gIC8vIE51bWJlciBvZiBkYXlzIGFmdGVyIHdoaWNoIHRoZSB0cmlhbCB0aW1lIHdpbGwgYmUgZXhwaXJlZFxuICBsYXN0VHJpYWxEYXlzOiBudW1iZXIgPSA0O1xuXG4gIGdldCBpc1RyaWFsKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5zdHJpcGVJZDtcbiAgfVxuXG4gIGdldCBwcmljZSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLnJlZHVjZSgoc3VtOiBudW1iZXIsIGl0ZW06IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtKSA9PiBzdW0gKyBpdGVtLnRvdGFsLCAwKTtcbiAgfVxuXG4gIGdldCBwcm9wZXJ0eVF1YW50aXR5KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMucHJvcGVydHlUYW5rSXRlbSA/IHRoaXMucHJvcGVydHlUYW5rSXRlbS5xdWFudGl0eSA6IDA7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IHR5cGUgb2Ygc3Vic2NyaXB0aW9uXG4gICAqL1xuICBnZXQgdHlwZSgpOiBTdWJzY3JpcHRpb25UeXBlRW51bSB7XG4gICAgY29uc3Qgd29ya1RhbmtQcm9kdWN0OiBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbSA9IHRoaXMuaXRlbXMuZmluZCgoaXRlbTogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0pOiBib29sZWFuID0+IHtcbiAgICAgIHJldHVybiBpdGVtLnByaWNlLnByb2R1Y3QuaXNXb3JrKCk7XG4gICAgfSk7XG5cbiAgICBpZiAoIXRoaXMud29ya1RhbmtJdGVtIHx8ICF0aGlzLmlzQWN0aXZlKSB7XG4gICAgICByZXR1cm4gU3Vic2NyaXB0aW9uVHlwZUVudW0uV0lUSE9VVF9TVUJTQ1JJUFRJT047XG4gICAgfVxuXG4gICAgaWYgKHRoaXMuaXRlbXMubGVuZ3RoID09PSAxICYmICEhd29ya1RhbmtQcm9kdWN0KSB7XG4gICAgICByZXR1cm4gU3Vic2NyaXB0aW9uVHlwZUVudW0uSU5ESVZJRFVBTDtcbiAgICB9XG5cbiAgICBjb25zdCBwcm9wZXJ0eVRhbmtQcm9kdWN0OiBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbSA9IHRoaXMuaXRlbXMuZmluZCgoaXRlbTogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0pOiBib29sZWFuID0+IHtcbiAgICAgIHJldHVybiBpdGVtLnByaWNlLnByb2R1Y3QuaXNQcm9wZXJ0eSgpO1xuICAgIH0pO1xuXG4gICAgaWYgKCEhdGhpcy5wcm9wZXJ0eVRhbmtJdGVtICYmIHByb3BlcnR5VGFua1Byb2R1Y3QucXVhbnRpdHkgPT09IFBST1BFUlRZX0lOVkVTVE9SX01BWF9QUk9QRVJUSUVTKSB7XG4gICAgICByZXR1cm4gU3Vic2NyaXB0aW9uVHlwZUVudW0uSU5WRVNUT1I7XG4gICAgfVxuXG4gICAgcmV0dXJuIFN1YnNjcmlwdGlvblR5cGVFbnVtLklOVkVTVE9SX1BMVVM7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IHRpdGxlIG9mIHN1YnNjcmlwdGlvblxuICAgKi9cbiAgZ2V0IHRpdGxlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFNVQlNDUklQVElPTl9USVRMRVt0aGlzLnR5cGVdO1xuICB9XG5cbiAgLyoqXG4gICAqIGdldCBkZXNjcmlwdGlvbiBvZiBzdWJzY3JpcHRpb25cbiAgICovXG4gIGdldCBkZXNjcmlwdGlvbigpOiBzdHJpbmcge1xuICAgIHJldHVybiBTVUJTQ1JJUFRJT05fREVTQ1JJUFRJT05bdGhpcy50eXBlXTtcbiAgfVxuXG4gIGdldCB3b3JrVGFua0l0ZW0oKTogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0ge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbmQoKGl0ZW06IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtKTogYm9vbGVhbiA9PiBpdGVtLnByaWNlLnByb2R1Y3QuaXNXb3JrKCkpO1xuICB9XG5cbiAgZ2V0IHByb3BlcnR5VGFua0l0ZW0oKTogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0ge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbmQoKGl0ZW06IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtKTogYm9vbGVhbiA9PiBpdGVtLnByaWNlLnByb2R1Y3QuaXNQcm9wZXJ0eSgpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGlzIGNoZWNrIG9uIGdldElzQWN0aXZlIG5lZWQgZm9yIGZpcm0uIEFjY291bnRhbnQgaGFzIGEgZW5kRGF0ZSwgYnV0IHVzZXIgaGFzIG5vdCBlbmREYXRlXG4gICAqIGFuZCBmb3IgdXNlciB3ZSBhZGQgY2hlY2sgZm9yIGVuZERhdGVcbiAgICovXG4gIGdldCBpc0FjdGl2ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5lbmREYXRlID8gbmV3IERhdGUodGhpcy5lbmREYXRlKS5nZXRUaW1lKCkgPiBuZXcgRGF0ZSgpLmdldFRpbWUoKSA6IHRydWU7XG4gIH1cblxuICBnZXQgZGF5c1JlbWFpbigpOiBudW1iZXIge1xuICAgIGNvbnN0IGRheXNSZW1haW5zOiBudW1iZXIgPSBNYXRoLnJvdW5kKFxuICAgICAgKG5ldyBEYXRlKHRoaXMuZW5kRGF0ZSkuZ2V0VGltZSgpIC0gbmV3IERhdGUoKS5nZXRUaW1lKCkpIC8gKDEwMDAgKiAzNjAwICogMjQpXG4gICAgKTtcblxuICAgIHJldHVybiBkYXlzUmVtYWlucyA+IDAgPyBkYXlzUmVtYWlucyA6IDA7XG4gIH1cblxuICBnZXRUaXRsZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmlzVHJpYWwgPyAnVHJpYWwgcGVyaW9kJyA6IHRoaXMudGl0bGU7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgc3Vic2NyaXB0aW9uIGlzIEluZGl2aWR1YWxcbiAgICogU3Vic2NyaXB0aW9uIGlzIGluZGl2aWR1YWwgd2hlbiB1c2VyIGhhdmUgb25seSBvbmUgcHJvZHVjdCBhbmQgb25seSB3b3JrIHRhbmtcbiAgICovXG4gIGlzSW5kaXZpZHVhbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBTdWJzY3JpcHRpb25UeXBlRW51bS5JTkRJVklEVUFMO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIHN1YnNjcmlwdGlvbiBpcyBJbnZlc3RvclxuICAgKiBTdWJzY3JpcHRpb24gaXMgaW52ZXN0b3Igd2hlbiB1c2VyIGhhdmUgcHJvcGVydHkgdGFuayBwcm9kdWN0IGFuZCBtYXggY291bnQgb2YgcHJvcGVydGllcyBpcyAyXG4gICAqL1xuICBpc0ludmVzdG9yKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnR5cGUgPT09IFN1YnNjcmlwdGlvblR5cGVFbnVtLklOVkVTVE9SO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIHN1YnNjcmlwdGlvbiBpcyBJbnZlc3RvciBQbHVzXG4gICAqIFN1YnNjcmlwdGlvbiBpcyBpbnZlc3RvciB3aGVuIHVzZXIgaGF2ZSBwcm9wZXJ0eSB0YW5rIHByb2R1Y3QgYW5kIG1heCBjb3VudCBvZiBwcm9wZXJ0aWVzIG1vcmUgdGhhbiAyXG4gICAqL1xuICBpc0ludmVzdG9yUGx1cygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBTdWJzY3JpcHRpb25UeXBlRW51bS5JTlZFU1RPUl9QTFVTO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIHRyaWFsIGV4cGlyZWRcbiAgICovXG4gIGlzVHJpYWxFeHBpcmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmRheXNSZW1haW4gJiYgdGhpcy5kYXlzUmVtYWluIDw9IDA7XG4gIH1cblxuICBpc1RyaWFsRXhwaXJpbmcoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZGF5c1JlbWFpbiA+IDAgJiYgdGhpcy5kYXlzUmVtYWluIDw9IHRoaXMubGFzdFRyaWFsRGF5cztcbiAgfVxuXG4gIGhhc1Byb3BlcnR5VGFuaygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISF0aGlzLml0ZW1zLmZpbmQoKHN1YnNjcmlwdGlvbkl0ZW06IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtKSA9PiB7XG4gICAgICByZXR1cm4gc3Vic2NyaXB0aW9uSXRlbS5wcmljZS5wcm9kdWN0LnJvbGUuaW5jbHVkZXMoVXNlclJvbGVzRW51bS5QUk9QRVJUWV9UQU5LKTtcbiAgICB9KTtcbiAgfVxuXG4gIGhhc1dvcmtUYW5rKCkge1xuICAgIHJldHVybiAhIXRoaXMuaXRlbXMuZmluZCgoc3Vic2NyaXB0aW9uSXRlbTogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0pID0+IHtcbiAgICAgIHJldHVybiBzdWJzY3JpcHRpb25JdGVtLnByaWNlLnByb2R1Y3Qucm9sZS5pbmNsdWRlcyhVc2VyUm9sZXNFbnVtLldPUktfVEFOSyk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
145
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1zdWJzY3JpcHRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3NlcnZpY2Utc3Vic2NyaXB0aW9uL3NlcnZpY2Utc3Vic2NyaXB0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsbUJBQW1CLElBQUksdUJBQXVCLEVBQUUsTUFBTSxtREFBbUQsQ0FBQztBQUNuSCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN0RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDL0QsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXpDLE1BQU0sZ0NBQWdDLEdBQUcsQ0FBQyxDQUFDO0FBRTNDLE1BQU0sT0FBTyxtQkFBb0IsU0FBUSx1QkFBdUI7SUFBaEU7O1FBVUUsNERBQTREO1FBQzVELGtCQUFhLEdBQVcsQ0FBQyxDQUFDO0lBcUo1QixDQUFDO0lBbkpDLElBQUksT0FBTztRQUNULE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBVyxFQUFFLElBQTZCLEVBQUUsRUFBRSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2hHLENBQUM7SUFFRCxJQUFJLGdCQUFnQjtRQUNsQixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxJQUFJO1FBQ04sTUFBTSxlQUFlLEdBQTRCLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBNkIsRUFBVyxFQUFFO1lBQzFHLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDekMsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDeEMsT0FBTyxvQkFBb0IsQ0FBQyxvQkFBb0IsQ0FBQztTQUNsRDtRQUVELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxlQUFlLEVBQUU7WUFDaEQsT0FBTyxvQkFBb0IsQ0FBQyxVQUFVLENBQUM7U0FDeEM7UUFFRCxNQUFNLG1CQUFtQixHQUE0QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQTZCLEVBQVcsRUFBRTtZQUM5RyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzNDLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLGNBQWMsSUFBSSxtQkFBbUIsQ0FBQyxRQUFRLEtBQUssZ0NBQWdDLEVBQUU7WUFDOUYsT0FBTyxvQkFBb0IsQ0FBQyxRQUFRLENBQUM7U0FDdEM7UUFFRCxPQUFPLG9CQUFvQixDQUFDLGFBQWEsQ0FBQztJQUM1QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLEtBQUs7UUFDUCxPQUFPLGtCQUFrQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLFdBQVc7UUFDYixPQUFPLHdCQUF3QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ3ZGLENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDWixNQUFNLFdBQVcsR0FBVyxJQUFJLENBQUMsS0FBSyxDQUNwQyxDQUFDLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEdBQUcsSUFBSSxHQUFHLEVBQUUsQ0FBQyxDQUMvRSxDQUFDO1FBRUYsT0FBTyxXQUFXLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsUUFBUTtRQUNOLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BELENBQUM7SUFFRDs7O09BR0c7SUFDSCxZQUFZO1FBQ1YsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLG9CQUFvQixDQUFDLFVBQVUsQ0FBQztJQUN2RCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsVUFBVTtRQUNSLE9BQU8sSUFBSSxDQUFDLElBQUksS0FBSyxvQkFBb0IsQ0FBQyxRQUFRLENBQUM7SUFDckQsQ0FBQztJQUVEOzs7T0FHRztJQUNILGNBQWM7UUFDWixPQUFPLElBQUksQ0FBQyxJQUFJLEtBQUssb0JBQW9CLENBQUMsYUFBYSxDQUFDO0lBQzFELENBQUM7SUFFRDs7T0FFRztJQUNILGNBQWM7UUFDWixPQUFPLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLFVBQVUsSUFBSSxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELGVBQWU7UUFDYixPQUFPLElBQUksQ0FBQyxVQUFVLEdBQUcsQ0FBQyxJQUFJLElBQUksQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQztJQUN0RSxDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDOUQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQTZCLEVBQVcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFDdEcsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUE2QixFQUFXLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ3RHLENBQUM7SUFFRCxJQUFJLGNBQWM7UUFDaEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLElBQTZCLEVBQVcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7SUFDeEcsQ0FBQztJQUVELGVBQWU7UUFDYixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLGdCQUF5QyxFQUFFLEVBQUU7WUFDckUsT0FBTyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ25GLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLGdCQUF5QyxFQUFFLEVBQUU7WUFDckUsT0FBTyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQy9FLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7T0FHRztJQUNILFVBQVU7UUFDUix5RUFBeUU7UUFDekUsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDO0lBQzVFLENBQUM7Q0FDRjtBQTlKQztJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7c0RBQ0Q7QUFHaEI7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO29EQUNIO0FBR2Q7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsdUJBQXVCLENBQUM7a0RBQ0giLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXJ2aWNlU3Vic2NyaXB0aW9uIGFzIFNlcnZpY2VTdWJzY3JpcHRpb25CYXNlIH0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL3N1YnNjcmlwdGlvbi9zZXJ2aWNlLXN1YnNjcmlwdGlvbic7XG5pbXBvcnQgeyBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbSB9IGZyb20gJy4vc2VydmljZS1zdWJzY3JpcHRpb24taXRlbSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb25UeXBlRW51bSB9IGZyb20gJy4vc3Vic2NyaXB0aW9uLXR5cGUuZW51bSc7XG5pbXBvcnQgeyBTVUJTQ1JJUFRJT05fVElUTEUgfSBmcm9tICcuL3N1YnNjcmlwdGlvbi10aXRsZS5jb25zdCc7XG5pbXBvcnQgeyBTVUJTQ1JJUFRJT05fREVTQ1JJUFRJT04gfSBmcm9tICcuL3N1YnNjcmlwdGlvbi1kZXNjcmlwdGlvbi5jb25zdCc7XG5pbXBvcnQgeyBVc2VyUm9sZXNFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdXNlci1yb2xlcy5lbnVtJztcbmltcG9ydCB7IFR5cGUgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5cbmNvbnN0IFBST1BFUlRZX0lOVkVTVE9SX01BWF9QUk9QRVJUSUVTID0gMjtcblxuZXhwb3J0IGNsYXNzIFNlcnZpY2VTdWJzY3JpcHRpb24gZXh0ZW5kcyBTZXJ2aWNlU3Vic2NyaXB0aW9uQmFzZSB7XG4gIEBUeXBlKCgpID0+IERhdGUpXG4gIHN0YXJ0RGF0ZTogRGF0ZTtcblxuICBAVHlwZSgoKSA9PiBEYXRlKVxuICBlbmREYXRlOiBEYXRlO1xuXG4gIEBUeXBlKCgpID0+IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtKVxuICBpdGVtczogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW1bXTtcblxuICAvLyBOdW1iZXIgb2YgZGF5cyBhZnRlciB3aGljaCB0aGUgdHJpYWwgdGltZSB3aWxsIGJlIGV4cGlyZWRcbiAgbGFzdFRyaWFsRGF5czogbnVtYmVyID0gNDtcblxuICBnZXQgaXNUcmlhbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMuc3RyaXBlSWQ7XG4gIH1cblxuICBnZXQgcHJpY2UoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5pdGVtcy5yZWR1Y2UoKHN1bTogbnVtYmVyLCBpdGVtOiBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbSkgPT4gc3VtICsgaXRlbS50b3RhbCwgMCk7XG4gIH1cblxuICBnZXQgcHJvcGVydHlRdWFudGl0eSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLnByb3BlcnRpZXNJdGVtID8gdGhpcy5wcm9wZXJ0aWVzSXRlbS5xdWFudGl0eSA6IDA7XG4gIH1cblxuICAvKipcbiAgICogZ2V0IHR5cGUgb2Ygc3Vic2NyaXB0aW9uXG4gICAqL1xuICBnZXQgdHlwZSgpOiBTdWJzY3JpcHRpb25UeXBlRW51bSB7XG4gICAgY29uc3Qgd29ya1RhbmtQcm9kdWN0OiBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbSA9IHRoaXMuaXRlbXMuZmluZCgoaXRlbTogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0pOiBib29sZWFuID0+IHtcbiAgICAgIHJldHVybiBpdGVtLnByaWNlLnByb2R1Y3QuaXNXb3JrVGFuaygpO1xuICAgIH0pO1xuXG4gICAgaWYgKCF0aGlzLndvcmtUYW5rSXRlbSB8fCAhdGhpcy5pc0FjdGl2ZSkge1xuICAgICAgcmV0dXJuIFN1YnNjcmlwdGlvblR5cGVFbnVtLldJVEhPVVRfU1VCU0NSSVBUSU9OO1xuICAgIH1cblxuICAgIGlmICh0aGlzLml0ZW1zLmxlbmd0aCA9PT0gMSAmJiAhIXdvcmtUYW5rUHJvZHVjdCkge1xuICAgICAgcmV0dXJuIFN1YnNjcmlwdGlvblR5cGVFbnVtLklORElWSURVQUw7XG4gICAgfVxuXG4gICAgY29uc3QgcHJvcGVydHlUYW5rUHJvZHVjdDogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0gPSB0aGlzLml0ZW1zLmZpbmQoKGl0ZW06IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtKTogYm9vbGVhbiA9PiB7XG4gICAgICByZXR1cm4gaXRlbS5wcmljZS5wcm9kdWN0LmlzUHJvcGVydGllcygpO1xuICAgIH0pO1xuXG4gICAgaWYgKCEhdGhpcy5wcm9wZXJ0aWVzSXRlbSAmJiBwcm9wZXJ0eVRhbmtQcm9kdWN0LnF1YW50aXR5ID09PSBQUk9QRVJUWV9JTlZFU1RPUl9NQVhfUFJPUEVSVElFUykge1xuICAgICAgcmV0dXJuIFN1YnNjcmlwdGlvblR5cGVFbnVtLklOVkVTVE9SO1xuICAgIH1cblxuICAgIHJldHVybiBTdWJzY3JpcHRpb25UeXBlRW51bS5JTlZFU1RPUl9QTFVTO1xuICB9XG5cbiAgLyoqXG4gICAqIGdldCB0aXRsZSBvZiBzdWJzY3JpcHRpb25cbiAgICovXG4gIGdldCB0aXRsZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiBTVUJTQ1JJUFRJT05fVElUTEVbdGhpcy50eXBlXTtcbiAgfVxuXG4gIC8qKlxuICAgKiBnZXQgZGVzY3JpcHRpb24gb2Ygc3Vic2NyaXB0aW9uXG4gICAqL1xuICBnZXQgZGVzY3JpcHRpb24oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gU1VCU0NSSVBUSU9OX0RFU0NSSVBUSU9OW3RoaXMudHlwZV07XG4gIH1cblxuICAvKipcbiAgICogVGhpcyBjaGVjayBvbiBnZXRJc0FjdGl2ZSBuZWVkIGZvciBmaXJtLiBBY2NvdW50YW50IGhhcyBhIGVuZERhdGUsIGJ1dCB1c2VyIGhhcyBub3QgZW5kRGF0ZVxuICAgKiBhbmQgZm9yIHVzZXIgd2UgYWRkIGNoZWNrIGZvciBlbmREYXRlXG4gICAqL1xuICBnZXQgaXNBY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuZW5kRGF0ZSA/IG5ldyBEYXRlKHRoaXMuZW5kRGF0ZSkuZ2V0VGltZSgpID4gbmV3IERhdGUoKS5nZXRUaW1lKCkgOiB0cnVlO1xuICB9XG5cbiAgZ2V0IGRheXNSZW1haW4oKTogbnVtYmVyIHtcbiAgICBjb25zdCBkYXlzUmVtYWluczogbnVtYmVyID0gTWF0aC5yb3VuZChcbiAgICAgIChuZXcgRGF0ZSh0aGlzLmVuZERhdGUpLmdldFRpbWUoKSAtIG5ldyBEYXRlKCkuZ2V0VGltZSgpKSAvICgxMDAwICogMzYwMCAqIDI0KVxuICAgICk7XG5cbiAgICByZXR1cm4gZGF5c1JlbWFpbnMgPiAwID8gZGF5c1JlbWFpbnMgOiAwO1xuICB9XG5cbiAgZ2V0VGl0bGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5pc1RyaWFsID8gJ1RyaWFsIHBlcmlvZCcgOiB0aGlzLnRpdGxlO1xuICB9XG5cbiAgLyoqXG4gICAqIENoZWNrIGlmIHN1YnNjcmlwdGlvbiBpcyBJbmRpdmlkdWFsXG4gICAqIFN1YnNjcmlwdGlvbiBpcyBpbmRpdmlkdWFsIHdoZW4gdXNlciBoYXZlIG9ubHkgb25lIHByb2R1Y3QgYW5kIG9ubHkgd29yayB0YW5rXG4gICAqL1xuICBpc0luZGl2aWR1YWwoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gU3Vic2NyaXB0aW9uVHlwZUVudW0uSU5ESVZJRFVBTDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiBzdWJzY3JpcHRpb24gaXMgSW52ZXN0b3JcbiAgICogU3Vic2NyaXB0aW9uIGlzIGludmVzdG9yIHdoZW4gdXNlciBoYXZlIHByb3BlcnR5IHRhbmsgcHJvZHVjdCBhbmQgbWF4IGNvdW50IG9mIHByb3BlcnRpZXMgaXMgMlxuICAgKi9cbiAgaXNJbnZlc3RvcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBTdWJzY3JpcHRpb25UeXBlRW51bS5JTlZFU1RPUjtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiBzdWJzY3JpcHRpb24gaXMgSW52ZXN0b3IgUGx1c1xuICAgKiBTdWJzY3JpcHRpb24gaXMgaW52ZXN0b3Igd2hlbiB1c2VyIGhhdmUgcHJvcGVydHkgdGFuayBwcm9kdWN0IGFuZCBtYXggY291bnQgb2YgcHJvcGVydGllcyBtb3JlIHRoYW4gMlxuICAgKi9cbiAgaXNJbnZlc3RvclBsdXMoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gU3Vic2NyaXB0aW9uVHlwZUVudW0uSU5WRVNUT1JfUExVUztcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiB0cmlhbCBleHBpcmVkXG4gICAqL1xuICBpc1RyaWFsRXhwaXJlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5kYXlzUmVtYWluICYmIHRoaXMuZGF5c1JlbWFpbiA8PSAwO1xuICB9XG5cbiAgaXNUcmlhbEV4cGlyaW5nKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmRheXNSZW1haW4gPiAwICYmIHRoaXMuZGF5c1JlbWFpbiA8PSB0aGlzLmxhc3RUcmlhbERheXM7XG4gIH1cblxuICBpc1JlbmV3YWJsZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gIXRoaXMuaXNUcmlhbCAmJiAhdGhpcy5pc0FyY2hpdmVkKCkgJiYgdGhpcy5pc0FjdGl2ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAVE9ETyBtb3ZlIHRvIGNvbGxlY3Rpb25cbiAgICovXG4gIGdldCB3b3JrVGFua0l0ZW0oKTogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0ge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbmQoKGl0ZW06IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtKTogYm9vbGVhbiA9PiBpdGVtLnByaWNlLnByb2R1Y3QuaXNXb3JrVGFuaygpKTtcbiAgfVxuXG4gIGdldCBzb2xlVGFua0l0ZW0oKTogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0ge1xuICAgIHJldHVybiB0aGlzLml0ZW1zLmZpbmQoKGl0ZW06IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtKTogYm9vbGVhbiA9PiBpdGVtLnByaWNlLnByb2R1Y3QuaXNTb2xlVGFuaygpKTtcbiAgfVxuXG4gIGdldCBwcm9wZXJ0aWVzSXRlbSgpOiBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbSB7XG4gICAgcmV0dXJuIHRoaXMuaXRlbXMuZmluZCgoaXRlbTogU2VydmljZVN1YnNjcmlwdGlvbkl0ZW0pOiBib29sZWFuID0+IGl0ZW0ucHJpY2UucHJvZHVjdC5pc1Byb3BlcnRpZXMoKSk7XG4gIH1cblxuICBoYXNQcm9wZXJ0eVRhbmsoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5pdGVtcy5maW5kKChzdWJzY3JpcHRpb25JdGVtOiBTZXJ2aWNlU3Vic2NyaXB0aW9uSXRlbSkgPT4ge1xuICAgICAgcmV0dXJuIHN1YnNjcmlwdGlvbkl0ZW0ucHJpY2UucHJvZHVjdC5yb2xlLmluY2x1ZGVzKFVzZXJSb2xlc0VudW0uUFJPUEVSVFlfVEFOSyk7XG4gICAgfSk7XG4gIH1cblxuICBoYXNXb3JrVGFuaygpIHtcbiAgICByZXR1cm4gISF0aGlzLml0ZW1zLmZpbmQoKHN1YnNjcmlwdGlvbkl0ZW06IFNlcnZpY2VTdWJzY3JpcHRpb25JdGVtKSA9PiB7XG4gICAgICByZXR1cm4gc3Vic2NyaXB0aW9uSXRlbS5wcmljZS5wcm9kdWN0LnJvbGUuaW5jbHVkZXMoVXNlclJvbGVzRW51bS5XT1JLX1RBTkspO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIGJvdWdodCBiZWZvcmUgcHJpY2UgdXBkYXRlcywgYWN0aXZlIGZvciBzb21lIHRpbWUgdG8gbGV0IGN1c3RvbWVyIHNlbGVjdCBhIG5ldyBwbGFuXG4gICAqIGltcG9zc2libGUgdG8gdXBkYXRlLCBvbmx5IHByb2xvbmcgb3IgYnV5IG5ld1xuICAgKi9cbiAgaXNBcmNoaXZlZCgpOiBib29sZWFuIHtcbiAgICAvLyBzdWJzY3JpcHRpb24gd2l0aCBhdCBsZWFzdCBvbmUgYXJjaGl2ZWQgcHJvZHVjdCBjb25zaWRlcmVkIGFzIGFyY2hpdmVkXG4gICAgcmV0dXJuICEhdGhpcy5pdGVtcy5tYXAoKGl0ZW0pID0+IGl0ZW0ucHJpY2UucHJvZHVjdC5pc0FyY2hpdmVkKCkpLmxlbmd0aDtcbiAgfVxufVxuIl19
@@ -1,5 +1,5 @@
1
1
  import { __decorate } from "tslib";
2
- import { TaxReview as TaxReviewBase } from '../../db/Models/tax-review';
2
+ import { TaxReview as TaxReviewBase } from '../../db/Models/firm/accountant/tax-review';
3
3
  import { TaxReviewStatusEnum } from '../../db/Enums/tax-review-status.enum';
4
4
  import { User } from '../user/user';
5
5
  import { Type } from 'class-transformer';
@@ -83,4 +83,4 @@ __decorate([
83
83
  __decorate([
84
84
  Type(() => User)
85
85
  ], TaxReview.prototype, "employee", void 0);
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGF4LXJldmlldy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvdGF4LXJldmlldy90YXgtcmV2aWV3LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxJQUFJLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDcEMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXpDLE1BQU0sT0FBTyxTQUFVLFNBQVEsYUFBYTtJQVExQzs7T0FFRztJQUNILFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssbUJBQW1CLENBQUMsU0FBUyxDQUFDO0lBQ3ZELENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUs7UUFDSCxPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssbUJBQW1CLENBQUMsR0FBRyxDQUFDO0lBQ2pELENBQUM7SUFFRDs7T0FFRztJQUNILFlBQVk7UUFDVixPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssbUJBQW1CLENBQUMsV0FBVyxDQUFDO0lBQ3pELENBQUM7SUFFRDs7T0FFRztJQUNILGtCQUFrQjtRQUNoQixPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssbUJBQW1CLENBQUMsa0JBQWtCLENBQUM7SUFDaEUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsb0JBQW9CO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLE1BQU0sS0FBSyxtQkFBbUIsQ0FBQyxvQkFBb0IsQ0FBQztJQUNsRSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLG1CQUFtQixDQUFDLFFBQVEsQ0FBQztJQUN0RCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLG1CQUFtQixDQUFDLFNBQVMsQ0FBQztJQUN2RCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNO1FBQ0osT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLG1CQUFtQixDQUFDLElBQUksQ0FBQztJQUNsRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxPQUFPO1FBQ0wsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLG1CQUFtQixDQUFDLEtBQUssQ0FBQztJQUNuRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2xELENBQUM7SUFFRDs7T0FFRztJQUNILFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDakIsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNuQixJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDekIsSUFBSSxDQUFDLG9CQUFvQixFQUFFO1lBQzNCLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDakIsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNiLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNuQixDQUFDO0NBQ0Y7QUF4RkM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO3lDQUNKO0FBR2I7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDOzJDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGF4UmV2aWV3IGFzIFRheFJldmlld0Jhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvdGF4LXJldmlldyc7XG5pbXBvcnQgeyBUYXhSZXZpZXdTdGF0dXNFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdGF4LXJldmlldy1zdGF0dXMuZW51bSc7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi4vdXNlci91c2VyJztcbmltcG9ydCB7IFR5cGUgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5cbmV4cG9ydCBjbGFzcyBUYXhSZXZpZXcgZXh0ZW5kcyBUYXhSZXZpZXdCYXNlIHtcbiAgQFR5cGUoKCkgPT4gVXNlcilcbiAgY2xpZW50OiBVc2VyO1xuXG4gIEBUeXBlKCgpID0+IFVzZXIpXG4gIGVtcGxveWVlOiBVc2VyO1xuICBzdGF0dXM6IFRheFJldmlld1N0YXR1c0VudW07XG5cbiAgLyoqXG4gICAqIGlmIHRheCByZXZpZXcgc3RhdHVzIGlzICdDYW5jZWxsZWQnXG4gICAqL1xuICBpc0NhbmNlbGxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IFRheFJldmlld1N0YXR1c0VudW0uQ0FOQ0VMTEVEO1xuICB9XG5cbiAgLyoqXG4gICAqIGlmIHRheCByZXZpZXcgc3RhdHVzIGlzICdOZXcnXG4gICAqL1xuICBpc05ldygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IFRheFJldmlld1N0YXR1c0VudW0uTkVXO1xuICB9XG5cbiAgLyoqXG4gICAqIGlmIHRheCByZXZpZXcgc3RhdHVzIGlzICdJbiBwcm9ncmVzcydcbiAgICovXG4gIGlzSW5Qcm9ncmVzcygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IFRheFJldmlld1N0YXR1c0VudW0uSU5fUFJPR1JFU1M7XG4gIH1cblxuICAvKipcbiAgICogaWYgdGF4IHJldmlldyBzdGF0dXMgaXMgJ1dhaXRpbmcgZm9yIGNsaWVudCdcbiAgICovXG4gIGlzV2FpdGluZ0ZvckNsaWVudCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IFRheFJldmlld1N0YXR1c0VudW0uV0FJVElOR19GT1JfQ0xJRU5UO1xuICB9XG5cbiAgLyoqXG4gICAqIGlmIHRheCByZXZpZXcgc3RhdHVzIGlzICdXYWl0aW5nIGZvciBhcHByb3ZhbCdcbiAgICovXG4gIGlzV2FpdGluZ0ZvckFwcHJvdmFsKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gVGF4UmV2aWV3U3RhdHVzRW51bS5XQUlUSU5HX0ZPUl9BUFBST1ZBTDtcbiAgfVxuXG4gIC8qKlxuICAgKiBpZiB0YXggcmV2aWV3IHN0YXR1cyBpcyAnQXBwcm92ZWQnXG4gICAqL1xuICBpc0FwcHJvdmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gVGF4UmV2aWV3U3RhdHVzRW51bS5BUFBST1ZFRDtcbiAgfVxuXG4gIC8qKlxuICAgKiBpZiB0YXggcmV2aWV3IHN0YXR1cyBpcyAnQ29tcGxldGVkJ1xuICAgKi9cbiAgaXNDb21wbGV0ZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSBUYXhSZXZpZXdTdGF0dXNFbnVtLkNPTVBMRVRFRDtcbiAgfVxuXG4gIC8qKlxuICAgKiBpZiB0YXggcmV2aWV3IHN0YXR1cyBpcyAnU2VudCdcbiAgICovXG4gIGlzU2VudCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IFRheFJldmlld1N0YXR1c0VudW0uU0VOVDtcbiAgfVxuXG4gIC8qKlxuICAgKiBpZiB0YXggcmV2aWV3IHN0YXR1cyBpcyAnQW1lbmQnXG4gICAqL1xuICBpc0FtZW5kKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gVGF4UmV2aWV3U3RhdHVzRW51bS5BTUVORDtcbiAgfVxuXG4gIC8qKlxuICAgKiBJZiB0YXggcmV2aWV3IGlzIGluYWN0aXZlXG4gICAqL1xuICBpc0luYWN0aXZlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmlzQ2FuY2VsbGVkKCkgfHwgdGhpcy5pc0NvbXBsZXRlZCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIElmIHRheCByZXZpZXcgaXMgYWN0aXZlXG4gICAqL1xuICBpc0FjdGl2ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pc05ldygpIHx8XG4gICAgICB0aGlzLmlzSW5Qcm9ncmVzcygpIHx8XG4gICAgICB0aGlzLmlzV2FpdGluZ0ZvckNsaWVudCgpIHx8XG4gICAgICB0aGlzLmlzV2FpdGluZ0ZvckFwcHJvdmFsKCkgfHxcbiAgICAgIHRoaXMuaXNBcHByb3ZlZCgpIHx8XG4gICAgICB0aGlzLmlzU2VudCgpIHx8XG4gICAgICB0aGlzLmlzQW1lbmQoKTtcbiAgfVxufVxuIl19
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGF4LXJldmlldy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvdGF4LXJldmlldy90YXgtcmV2aWV3LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsU0FBUyxJQUFJLGFBQWEsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzVFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDcEMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXpDLE1BQU0sT0FBTyxTQUFVLFNBQVEsYUFBYTtJQVExQzs7T0FFRztJQUNILFdBQVc7UUFDVCxPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssbUJBQW1CLENBQUMsU0FBUyxDQUFDO0lBQ3ZELENBQUM7SUFFRDs7T0FFRztJQUNILEtBQUs7UUFDSCxPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssbUJBQW1CLENBQUMsR0FBRyxDQUFDO0lBQ2pELENBQUM7SUFFRDs7T0FFRztJQUNILFlBQVk7UUFDVixPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssbUJBQW1CLENBQUMsV0FBVyxDQUFDO0lBQ3pELENBQUM7SUFFRDs7T0FFRztJQUNILGtCQUFrQjtRQUNoQixPQUFPLElBQUksQ0FBQyxNQUFNLEtBQUssbUJBQW1CLENBQUMsa0JBQWtCLENBQUM7SUFDaEUsQ0FBQztJQUVEOztPQUVHO0lBQ0gsb0JBQW9CO1FBQ2xCLE9BQU8sSUFBSSxDQUFDLE1BQU0sS0FBSyxtQkFBbUIsQ0FBQyxvQkFBb0IsQ0FBQztJQUNsRSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLG1CQUFtQixDQUFDLFFBQVEsQ0FBQztJQUN0RCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLG1CQUFtQixDQUFDLFNBQVMsQ0FBQztJQUN2RCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNO1FBQ0osT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLG1CQUFtQixDQUFDLElBQUksQ0FBQztJQUNsRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxPQUFPO1FBQ0wsT0FBTyxJQUFJLENBQUMsTUFBTSxLQUFLLG1CQUFtQixDQUFDLEtBQUssQ0FBQztJQUNuRCxDQUFDO0lBRUQ7O09BRUc7SUFDSCxVQUFVO1FBQ1IsT0FBTyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2xELENBQUM7SUFFRDs7T0FFRztJQUNILFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDakIsSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNuQixJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDekIsSUFBSSxDQUFDLG9CQUFvQixFQUFFO1lBQzNCLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDakIsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNiLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNuQixDQUFDO0NBQ0Y7QUF4RkM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO3lDQUNKO0FBR2I7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDOzJDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGF4UmV2aWV3IGFzIFRheFJldmlld0Jhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvZmlybS9hY2NvdW50YW50L3RheC1yZXZpZXcnO1xuaW1wb3J0IHsgVGF4UmV2aWV3U3RhdHVzRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RheC1yZXZpZXctc3RhdHVzLmVudW0nO1xuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4uL3VzZXIvdXNlcic7XG5pbXBvcnQgeyBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuXG5leHBvcnQgY2xhc3MgVGF4UmV2aWV3IGV4dGVuZHMgVGF4UmV2aWV3QmFzZSB7XG4gIEBUeXBlKCgpID0+IFVzZXIpXG4gIGNsaWVudDogVXNlcjtcblxuICBAVHlwZSgoKSA9PiBVc2VyKVxuICBlbXBsb3llZTogVXNlcjtcbiAgc3RhdHVzOiBUYXhSZXZpZXdTdGF0dXNFbnVtO1xuXG4gIC8qKlxuICAgKiBpZiB0YXggcmV2aWV3IHN0YXR1cyBpcyAnQ2FuY2VsbGVkJ1xuICAgKi9cbiAgaXNDYW5jZWxsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSBUYXhSZXZpZXdTdGF0dXNFbnVtLkNBTkNFTExFRDtcbiAgfVxuXG4gIC8qKlxuICAgKiBpZiB0YXggcmV2aWV3IHN0YXR1cyBpcyAnTmV3J1xuICAgKi9cbiAgaXNOZXcoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSBUYXhSZXZpZXdTdGF0dXNFbnVtLk5FVztcbiAgfVxuXG4gIC8qKlxuICAgKiBpZiB0YXggcmV2aWV3IHN0YXR1cyBpcyAnSW4gcHJvZ3Jlc3MnXG4gICAqL1xuICBpc0luUHJvZ3Jlc3MoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSBUYXhSZXZpZXdTdGF0dXNFbnVtLklOX1BST0dSRVNTO1xuICB9XG5cbiAgLyoqXG4gICAqIGlmIHRheCByZXZpZXcgc3RhdHVzIGlzICdXYWl0aW5nIGZvciBjbGllbnQnXG4gICAqL1xuICBpc1dhaXRpbmdGb3JDbGllbnQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSBUYXhSZXZpZXdTdGF0dXNFbnVtLldBSVRJTkdfRk9SX0NMSUVOVDtcbiAgfVxuXG4gIC8qKlxuICAgKiBpZiB0YXggcmV2aWV3IHN0YXR1cyBpcyAnV2FpdGluZyBmb3IgYXBwcm92YWwnXG4gICAqL1xuICBpc1dhaXRpbmdGb3JBcHByb3ZhbCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IFRheFJldmlld1N0YXR1c0VudW0uV0FJVElOR19GT1JfQVBQUk9WQUw7XG4gIH1cblxuICAvKipcbiAgICogaWYgdGF4IHJldmlldyBzdGF0dXMgaXMgJ0FwcHJvdmVkJ1xuICAgKi9cbiAgaXNBcHByb3ZlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IFRheFJldmlld1N0YXR1c0VudW0uQVBQUk9WRUQ7XG4gIH1cblxuICAvKipcbiAgICogaWYgdGF4IHJldmlldyBzdGF0dXMgaXMgJ0NvbXBsZXRlZCdcbiAgICovXG4gIGlzQ29tcGxldGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnN0YXR1cyA9PT0gVGF4UmV2aWV3U3RhdHVzRW51bS5DT01QTEVURUQ7XG4gIH1cblxuICAvKipcbiAgICogaWYgdGF4IHJldmlldyBzdGF0dXMgaXMgJ1NlbnQnXG4gICAqL1xuICBpc1NlbnQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzID09PSBUYXhSZXZpZXdTdGF0dXNFbnVtLlNFTlQ7XG4gIH1cblxuICAvKipcbiAgICogaWYgdGF4IHJldmlldyBzdGF0dXMgaXMgJ0FtZW5kJ1xuICAgKi9cbiAgaXNBbWVuZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXMgPT09IFRheFJldmlld1N0YXR1c0VudW0uQU1FTkQ7XG4gIH1cblxuICAvKipcbiAgICogSWYgdGF4IHJldmlldyBpcyBpbmFjdGl2ZVxuICAgKi9cbiAgaXNJbmFjdGl2ZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pc0NhbmNlbGxlZCgpIHx8IHRoaXMuaXNDb21wbGV0ZWQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJZiB0YXggcmV2aWV3IGlzIGFjdGl2ZVxuICAgKi9cbiAgaXNBY3RpdmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaXNOZXcoKSB8fFxuICAgICAgdGhpcy5pc0luUHJvZ3Jlc3MoKSB8fFxuICAgICAgdGhpcy5pc1dhaXRpbmdGb3JDbGllbnQoKSB8fFxuICAgICAgdGhpcy5pc1dhaXRpbmdGb3JBcHByb3ZhbCgpIHx8XG4gICAgICB0aGlzLmlzQXBwcm92ZWQoKSB8fFxuICAgICAgdGhpcy5pc1NlbnQoKSB8fFxuICAgICAgdGhpcy5pc0FtZW5kKCk7XG4gIH1cbn1cbiJdfQ==
@@ -12,4 +12,4 @@ export class ReportItem {
12
12
  return ((_a = this.details.find((detail) => detail.name === name)) === null || _a === void 0 ? void 0 : _a.amount) || 0;
13
13
  }
14
14
  }
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3J0LWl0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3RheC1zdW1tYXJ5L3JlcG9ydC1pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBOzs7R0FHRztBQUNILE1BQU0sT0FBTyxVQUFVO0lBT3JCOzs7T0FHRztJQUNILDJCQUEyQixDQUFDLElBQVk7O1FBQ3RDLE9BQU8sQ0FBQSxNQUFBLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBeUIsRUFBVyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsMENBQUUsTUFBTSxLQUFJLENBQUMsQ0FBQztJQUN0RyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUYXhSZXR1cm5DYXRlZ29yeSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy90YXgtcmV0dXJuLWNhdGVnb3J5JztcbmltcG9ydCB7IFJlcG9ydEl0ZW1EZXRhaWxzIH0gZnJvbSAnLi9yZXBvcnQtaXRlbS1kZXRhaWxzJztcblxuLyoqXG4gKiBVc2VkIGluIHRheCBzdW1tYXJ5IHJlcG9ydHMgdG8gc2hvdyBhbW91bnRzIHJlbGF0aW5nIHRvIGEgdGF4IHJldHVybiBjYXRlZ29yeSBlbnRpdHkgYW5kIGRldGFpbHMgb2Ygd2hhdCB0aGlzXG4gKiBhbW91bnQgaXMgY29tcHJpc2VkIG9mLiBFeGFtcGxlIGhlcmUgc2hvd3MgYW4gYW1vdW50IG9mICQ5NTEuOTYgYW5kIGFsc28gZGV0YWlscyBvZiB3aGF0IHRoaXMgYW1vdW50IGlzIGNvbXByaXNlZCBvZjpcbiAqL1xuZXhwb3J0IGNsYXNzIFJlcG9ydEl0ZW0ge1xuICBhbW91bnQ6IG51bWJlcjtcbiAgZGV0YWlsczogUmVwb3J0SXRlbURldGFpbHNbXTtcbiAgaXRlbXM6IFJlcG9ydEl0ZW1bXTtcbiAgdGF4UmV0dXJuQ2F0ZWdvcnk6IFRheFJldHVybkNhdGVnb3J5O1xuICB0YXhXaXRoaGVsZDogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBHZXQgYW1vdW50IGZvciBvbmUgaW5jb21lIHNvdXJjZVxuICAgKiBAcGFyYW0gbmFtZSBOYW1lIG9mIGluY29tZSBzb3VyY2UgZm9yIGZpbHRlclxuICAgKi9cbiAgZ2V0QW1vdW50QnlJbmNvbWVTb3VyY2VOYW1lKG5hbWU6IHN0cmluZyk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZGV0YWlscy5maW5kKChkZXRhaWw6IFJlcG9ydEl0ZW1EZXRhaWxzKTogYm9vbGVhbiA9PiBkZXRhaWwubmFtZSA9PT0gbmFtZSk/LmFtb3VudCB8fCAwO1xuICB9XG59XG4iXX0=
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3J0LWl0ZW0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3RheC1zdW1tYXJ5L3JlcG9ydC1pdGVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBOzs7R0FHRztBQUNILE1BQU0sT0FBTyxVQUFVO0lBT3JCOzs7T0FHRztJQUNILDJCQUEyQixDQUFDLElBQVk7O1FBQ3RDLE9BQU8sQ0FBQSxNQUFBLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBeUIsRUFBVyxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsMENBQUUsTUFBTSxLQUFJLENBQUMsQ0FBQztJQUN0RyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUYXhSZXR1cm5DYXRlZ29yeSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy90YXgtcmV0dXJuL3RheC1yZXR1cm4tY2F0ZWdvcnknO1xuaW1wb3J0IHsgUmVwb3J0SXRlbURldGFpbHMgfSBmcm9tICcuL3JlcG9ydC1pdGVtLWRldGFpbHMnO1xuXG4vKipcbiAqIFVzZWQgaW4gdGF4IHN1bW1hcnkgcmVwb3J0cyB0byBzaG93IGFtb3VudHMgcmVsYXRpbmcgdG8gYSB0YXggcmV0dXJuIGNhdGVnb3J5IGVudGl0eSBhbmQgZGV0YWlscyBvZiB3aGF0IHRoaXNcbiAqIGFtb3VudCBpcyBjb21wcmlzZWQgb2YuIEV4YW1wbGUgaGVyZSBzaG93cyBhbiBhbW91bnQgb2YgJDk1MS45NiBhbmQgYWxzbyBkZXRhaWxzIG9mIHdoYXQgdGhpcyBhbW91bnQgaXMgY29tcHJpc2VkIG9mOlxuICovXG5leHBvcnQgY2xhc3MgUmVwb3J0SXRlbSB7XG4gIGFtb3VudDogbnVtYmVyO1xuICBkZXRhaWxzOiBSZXBvcnRJdGVtRGV0YWlsc1tdO1xuICBpdGVtczogUmVwb3J0SXRlbVtdO1xuICB0YXhSZXR1cm5DYXRlZ29yeTogVGF4UmV0dXJuQ2F0ZWdvcnk7XG4gIHRheFdpdGhoZWxkOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIEdldCBhbW91bnQgZm9yIG9uZSBpbmNvbWUgc291cmNlXG4gICAqIEBwYXJhbSBuYW1lIE5hbWUgb2YgaW5jb21lIHNvdXJjZSBmb3IgZmlsdGVyXG4gICAqL1xuICBnZXRBbW91bnRCeUluY29tZVNvdXJjZU5hbWUobmFtZTogc3RyaW5nKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5kZXRhaWxzLmZpbmQoKGRldGFpbDogUmVwb3J0SXRlbURldGFpbHMpOiBib29sZWFuID0+IGRldGFpbC5uYW1lID09PSBuYW1lKT8uYW1vdW50IHx8IDA7XG4gIH1cbn1cbiJdfQ==
@@ -1,5 +1,5 @@
1
1
  import { __decorate } from "tslib";
2
- import { TransactionAllocation as TransactionAllocationBase } from '../../db/Models/transaction-allocation';
2
+ import { TransactionAllocation as TransactionAllocationBase } from '../../db/Models/transaction/transaction-allocation';
3
3
  import { BankTransaction } from '../bank/bank-transaction';
4
4
  import { Transaction } from './transaction';
5
5
  import { plainToClass, Type } from 'class-transformer';
@@ -18,4 +18,4 @@ __decorate([
18
18
  __decorate([
19
19
  Type(() => Transaction)
20
20
  ], TransactionAllocation.prototype, "transaction", void 0);
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tYWxsb2NhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24tYWxsb2NhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHFCQUFxQixJQUFJLHlCQUF5QixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDNUcsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV2RCxNQUFNLE9BQU8scUJBQXNCLFNBQVEseUJBQXlCO0lBT2xFOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBYyxFQUFFLGVBQWdDLEVBQUUsV0FBeUI7UUFDdkYsT0FBTyxZQUFZLENBQUMscUJBQXFCLEVBQUUsRUFBQyxNQUFNLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBQyxDQUFDLENBQUM7SUFDckYsQ0FBQztDQUNGO0FBWkM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsZUFBZSxDQUFDOzhEQUNLO0FBR2pDO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQzswREFDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zYWN0aW9uQWxsb2NhdGlvbiBhcyBUcmFuc2FjdGlvbkFsbG9jYXRpb25CYXNlIH0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL3RyYW5zYWN0aW9uLWFsbG9jYXRpb24nO1xuaW1wb3J0IHsgQmFua1RyYW5zYWN0aW9uIH0gZnJvbSAnLi4vYmFuay9iYW5rLXRyYW5zYWN0aW9uJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBwbGFpblRvQ2xhc3MsIFR5cGUgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkFsbG9jYXRpb24gZXh0ZW5kcyBUcmFuc2FjdGlvbkFsbG9jYXRpb25CYXNlIHtcbiAgQFR5cGUoKCkgPT4gQmFua1RyYW5zYWN0aW9uKVxuICBiYW5rVHJhbnNhY3Rpb246IEJhbmtUcmFuc2FjdGlvbjtcblxuICBAVHlwZSgoKSA9PiBUcmFuc2FjdGlvbilcbiAgdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgaW5zdGFuY2Ugb2YgdHJhbnNhY3Rpb24gYWxsb2NhdGlvblxuICAgKiB0cmFuc2FjdGlvbiBjb3VsZCBiZSBlbXB0eSBzaW5jZSB3ZSBjYW4gUE9TVCBhbGxvY2F0aW9uIGluc2lkZSBhIG5ldyB0cmFuc2FjdGlvblxuICAgKi9cbiAgc3RhdGljIGNyZWF0ZShhbW91bnQ6IG51bWJlciwgYmFua1RyYW5zYWN0aW9uOiBCYW5rVHJhbnNhY3Rpb24sIHRyYW5zYWN0aW9uPzogVHJhbnNhY3Rpb24pOiBUcmFuc2FjdGlvbkFsbG9jYXRpb24ge1xuICAgIHJldHVybiBwbGFpblRvQ2xhc3MoVHJhbnNhY3Rpb25BbGxvY2F0aW9uLCB7YW1vdW50LCB0cmFuc2FjdGlvbiwgYmFua1RyYW5zYWN0aW9ufSk7XG4gIH1cbn1cbiJdfQ==
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tYWxsb2NhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24tYWxsb2NhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLHFCQUFxQixJQUFJLHlCQUF5QixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDeEgsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDNUMsT0FBTyxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV2RCxNQUFNLE9BQU8scUJBQXNCLFNBQVEseUJBQXlCO0lBT2xFOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxNQUFNLENBQUMsTUFBYyxFQUFFLGVBQWdDLEVBQUUsV0FBeUI7UUFDdkYsT0FBTyxZQUFZLENBQUMscUJBQXFCLEVBQUUsRUFBQyxNQUFNLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBQyxDQUFDLENBQUM7SUFDckYsQ0FBQztDQUNGO0FBWkM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsZUFBZSxDQUFDOzhEQUNLO0FBR2pDO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFdBQVcsQ0FBQzswREFDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zYWN0aW9uQWxsb2NhdGlvbiBhcyBUcmFuc2FjdGlvbkFsbG9jYXRpb25CYXNlIH0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLWFsbG9jYXRpb24nO1xuaW1wb3J0IHsgQmFua1RyYW5zYWN0aW9uIH0gZnJvbSAnLi4vYmFuay9iYW5rLXRyYW5zYWN0aW9uJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBwbGFpblRvQ2xhc3MsIFR5cGUgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkFsbG9jYXRpb24gZXh0ZW5kcyBUcmFuc2FjdGlvbkFsbG9jYXRpb25CYXNlIHtcbiAgQFR5cGUoKCkgPT4gQmFua1RyYW5zYWN0aW9uKVxuICBiYW5rVHJhbnNhY3Rpb246IEJhbmtUcmFuc2FjdGlvbjtcblxuICBAVHlwZSgoKSA9PiBUcmFuc2FjdGlvbilcbiAgdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uO1xuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgaW5zdGFuY2Ugb2YgdHJhbnNhY3Rpb24gYWxsb2NhdGlvblxuICAgKiB0cmFuc2FjdGlvbiBjb3VsZCBiZSBlbXB0eSBzaW5jZSB3ZSBjYW4gUE9TVCBhbGxvY2F0aW9uIGluc2lkZSBhIG5ldyB0cmFuc2FjdGlvblxuICAgKi9cbiAgc3RhdGljIGNyZWF0ZShhbW91bnQ6IG51bWJlciwgYmFua1RyYW5zYWN0aW9uOiBCYW5rVHJhbnNhY3Rpb24sIHRyYW5zYWN0aW9uPzogVHJhbnNhY3Rpb24pOiBUcmFuc2FjdGlvbkFsbG9jYXRpb24ge1xuICAgIHJldHVybiBwbGFpblRvQ2xhc3MoVHJhbnNhY3Rpb25BbGxvY2F0aW9uLCB7YW1vdW50LCB0cmFuc2FjdGlvbiwgYmFua1RyYW5zYWN0aW9ufSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,5 +1,5 @@
1
1
  import { __decorate } from "tslib";
2
- import { TransactionMetadata as TransactionMetadataBase } from '../../db/Models/transaction-metadata';
2
+ import { TransactionMetadata as TransactionMetadataBase } from '../../db/Models/transaction/transaction-metadata';
3
3
  import { Type } from 'class-transformer';
4
4
  import { ChartAccountsMetadata } from '../chart-accounts/chart-accounts-metadata';
5
5
  export class TransactionMetadata extends TransactionMetadataBase {
@@ -7,4 +7,4 @@ export class TransactionMetadata extends TransactionMetadataBase {
7
7
  __decorate([
8
8
  Type(() => ChartAccountsMetadata)
9
9
  ], TransactionMetadata.prototype, "metadata", void 0);
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tbWV0YWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLW1ldGFkYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsbUJBQW1CLElBQUksdUJBQXVCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN0RyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFFbEYsTUFBTSxPQUFPLG1CQUFvQixTQUFRLHVCQUF1QjtDQUcvRDtBQURDO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLHFCQUFxQixDQUFDO3FEQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNhY3Rpb25NZXRhZGF0YSBhcyBUcmFuc2FjdGlvbk1ldGFkYXRhQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy90cmFuc2FjdGlvbi1tZXRhZGF0YSc7XG5pbXBvcnQgeyBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50c01ldGFkYXRhIH0gZnJvbSAnLi4vY2hhcnQtYWNjb3VudHMvY2hhcnQtYWNjb3VudHMtbWV0YWRhdGEnO1xuXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25NZXRhZGF0YSBleHRlbmRzIFRyYW5zYWN0aW9uTWV0YWRhdGFCYXNlIHtcbiAgQFR5cGUoKCkgPT4gQ2hhcnRBY2NvdW50c01ldGFkYXRhKVxuICBtZXRhZGF0YTogQ2hhcnRBY2NvdW50c01ldGFkYXRhO1xufVxuIl19
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tbWV0YWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLW1ldGFkYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsbUJBQW1CLElBQUksdUJBQXVCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUNsSCxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFFbEYsTUFBTSxPQUFPLG1CQUFvQixTQUFRLHVCQUF1QjtDQUcvRDtBQURDO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLHFCQUFxQixDQUFDO3FEQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNhY3Rpb25NZXRhZGF0YSBhcyBUcmFuc2FjdGlvbk1ldGFkYXRhQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbi1tZXRhZGF0YSc7XG5pbXBvcnQgeyBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50c01ldGFkYXRhIH0gZnJvbSAnLi4vY2hhcnQtYWNjb3VudHMvY2hhcnQtYWNjb3VudHMtbWV0YWRhdGEnO1xuXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25NZXRhZGF0YSBleHRlbmRzIFRyYW5zYWN0aW9uTWV0YWRhdGFCYXNlIHtcbiAgQFR5cGUoKCkgPT4gQ2hhcnRBY2NvdW50c01ldGFkYXRhKVxuICBtZXRhZGF0YTogQ2hhcnRBY2NvdW50c01ldGFkYXRhO1xufVxuIl19
@@ -1,4 +1,4 @@
1
- import { TransactionReceipt as TransactionReceiptBase } from '../../db/Models/transaction-receipt';
1
+ import { TransactionReceipt as TransactionReceiptBase } from '../../db/Models/transaction/transaction-receipt';
2
2
  import { AssetTypeEnum } from '../../interfaces/asset-type.enum';
3
3
  import { AssetEntityTypeEnum } from '../../interfaces/asset-entity-type.enum';
4
4
  export class TransactionReceipt extends TransactionReceiptBase {
@@ -8,4 +8,4 @@ export class TransactionReceipt extends TransactionReceiptBase {
8
8
  this.entityType = AssetEntityTypeEnum.TRANSACTIONS;
9
9
  }
10
10
  }
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcmVjZWlwdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24tcmVjZWlwdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLElBQUksc0JBQXNCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUVuRyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDakUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFFOUUsTUFBTSxPQUFPLGtCQUFtQixTQUFRLHNCQUFzQjtJQUE5RDs7UUFDRSxTQUFJLEdBQWtCLGFBQWEsQ0FBQyxRQUFRLENBQUM7UUFDN0MsZUFBVSxHQUF3QixtQkFBbUIsQ0FBQyxZQUFZLENBQUM7SUFDckUsQ0FBQztDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNhY3Rpb25SZWNlaXB0IGFzIFRyYW5zYWN0aW9uUmVjZWlwdEJhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvdHJhbnNhY3Rpb24tcmVjZWlwdCc7XG5pbXBvcnQgeyBJQXNzZXQgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2Fzc2V0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBBc3NldFR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9hc3NldC10eXBlLmVudW0nO1xuaW1wb3J0IHsgQXNzZXRFbnRpdHlUeXBlRW51bSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvYXNzZXQtZW50aXR5LXR5cGUuZW51bSc7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvblJlY2VpcHQgZXh0ZW5kcyBUcmFuc2FjdGlvblJlY2VpcHRCYXNlIGltcGxlbWVudHMgSUFzc2V0IHtcbiAgdHlwZTogQXNzZXRUeXBlRW51bSA9IEFzc2V0VHlwZUVudW0uUkVDRUlQVFM7XG4gIGVudGl0eVR5cGU6IEFzc2V0RW50aXR5VHlwZUVudW0gPSBBc3NldEVudGl0eVR5cGVFbnVtLlRSQU5TQUNUSU9OUztcbn1cbiJdfQ==
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tcmVjZWlwdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24tcmVjZWlwdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsa0JBQWtCLElBQUksc0JBQXNCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQztBQUUvRyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDakUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFFOUUsTUFBTSxPQUFPLGtCQUFtQixTQUFRLHNCQUFzQjtJQUE5RDs7UUFDRSxTQUFJLEdBQWtCLGFBQWEsQ0FBQyxRQUFRLENBQUM7UUFDN0MsZUFBVSxHQUF3QixtQkFBbUIsQ0FBQyxZQUFZLENBQUM7SUFDckUsQ0FBQztDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNhY3Rpb25SZWNlaXB0IGFzIFRyYW5zYWN0aW9uUmVjZWlwdEJhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvdHJhbnNhY3Rpb24vdHJhbnNhY3Rpb24tcmVjZWlwdCc7XG5pbXBvcnQgeyBJQXNzZXQgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2Fzc2V0LmludGVyZmFjZSc7XG5pbXBvcnQgeyBBc3NldFR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9hc3NldC10eXBlLmVudW0nO1xuaW1wb3J0IHsgQXNzZXRFbnRpdHlUeXBlRW51bSB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvYXNzZXQtZW50aXR5LXR5cGUuZW51bSc7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvblJlY2VpcHQgZXh0ZW5kcyBUcmFuc2FjdGlvblJlY2VpcHRCYXNlIGltcGxlbWVudHMgSUFzc2V0IHtcbiAgdHlwZTogQXNzZXRUeXBlRW51bSA9IEFzc2V0VHlwZUVudW0uUkVDRUlQVFM7XG4gIGVudGl0eVR5cGU6IEFzc2V0RW50aXR5VHlwZUVudW0gPSBBc3NldEVudGl0eVR5cGVFbnVtLlRSQU5TQUNUSU9OUztcbn1cbiJdfQ==
@@ -1,5 +1,5 @@
1
1
  import { __decorate } from "tslib";
2
- import { Transaction as TransactionBase } from '../../db/Models/transaction';
2
+ import { Transaction as TransactionBase } from '../../db/Models/transaction/transaction';
3
3
  import { TransactionTypeEnum } from '../../db/Enums/transaction-type.enum';
4
4
  import { TransactionOperationEnum } from '../../db/Enums/transaction-operation.enum';
5
5
  import { ChartAccountsListEnum } from '../../db/Enums/chart-accounts-list.enum';
@@ -222,4 +222,4 @@ __decorate([
222
222
  __decorate([
223
223
  Exclude({ toPlainOnly: true })
224
224
  ], Transaction.prototype, "file", void 0);
225
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsV0FBVyxJQUFJLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQzdFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRTNFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzNGLE9BQU8sRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzlELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDcEMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENB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USxDQUFDOzZDQUNGO0FBR25CO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDOzRDQUNIO0FBRzVCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQztrREFDRztBQUc3QjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUM7aURBQ0U7QUFHM0I7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsbUJBQW1CLENBQUM7NkNBQ0s7QUFHckM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDOzZDQUNGO0FBR3RCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzt5Q0FDTjtBQUdYO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzt5Q0FDTjtBQUdYO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLHFCQUFxQixDQUFDO2dEQUNRO0FBSTFDO0lBREMsT0FBTyxDQUFDLEVBQUMsV0FBVyxFQUFFLElBQUksRUFBQyxDQUFDO3lDQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zYWN0aW9uIGFzIFRyYW5zYWN0aW9uQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdHJhbnNhY3Rpb24tdHlwZS5lbnVtJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9jaGFydC1hY2NvdW50cy1jYXRlZ29yeS5lbnVtJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RyYW5zYWN0aW9uLW9wZXJhdGlvbi5lbnVtJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNMaXN0RW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2NoYXJ0LWFjY291bnRzLWxpc3QuZW51bSc7XG5pbXBvcnQgeyBDaGFydEFjY291bnRzTWV0YWRhdGFMaXN0RW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2NoYXJ0LWFjY291bnRzLW1ldGFkYXRhLWxpc3QuZW51bSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblNvdXJjZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy90cmFuc2FjdGlvbi1zb3VyY2UuZW51bSc7XG5pbXBvcnQgeyBEZXByZWNpYXRpb25UeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2RlcHJlY2lhdGlvbi10eXBlLmVudW0nO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uQ2FsY3VsYXRpb25FbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvZGVwcmVjaWF0aW9uLWNhbGN1bGF0aW9uLmVudW0nO1xuaW1wb3J0IHsgRXhjbHVkZSwgcGxhaW5Ub0NsYXNzLCBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgUHJvcGVydHkgfSBmcm9tICcuLi9wcm9wZXJ0eS9wcm9wZXJ0eSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblJlY2VpcHQgfSBmcm9tICcuL3RyYW5zYWN0aW9uLXJlY2VpcHQnO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50cyB9IGZyb20gJy4uL2NoYXJ0LWFjY291bnRzL2NoYXJ0LWFjY291bnRzJztcbmltcG9ydCB7IEluY29tZVNvdXJjZSB9IGZyb20gJy4uL2luY29tZS1zb3VyY2UvaW5jb21lLXNvdXJjZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbk1ldGFkYXRhIH0gZnJvbSAnLi90cmFuc2FjdGlvbi1tZXRhZGF0YSc7XG5pbXBvcnQgeyBMb2FuIH0gZnJvbSAnLi4vbG9hbi9sb2FuJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQWxsb2NhdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24tYWxsb2NhdGlvbic7XG5pbXBvcnQgeyBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTIH0gZnJvbSAnLi4vY2hhcnQtYWNjb3VudHMvY2hhcnQtYWNjb3VudHMtY2F0ZWdvcmllcy5jb25zdCc7XG5pbXBvcnQgeyBJbmNvbWVBbW91bnRUeXBlRW51bSB9IGZyb20gJy4vaW5jb21lLWFtb3VudC10eXBlLmVudW0nO1xuaW1wb3J0IHsgSVJlY2VpcHQgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3JlY2VpcHQuaW50ZXJmYWNlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucy90cmFuc2FjdGlvbi1hbGxvY2F0aW9uLmNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uIH0gZnJvbSAnLi4vZGVwcmVjaWF0aW9uL2RlcHJlY2lhdGlvbic7XG5pbXBvcnQgeyBFeHBlbnNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9leHBlbnNlLmludGVyZmFjZSc7XG5cbi8vIEBUT0RPIHJlZmFjdG9yIHdpdGggYmFzZU1vZGVsIGluIGNvbnN0cnVjdG9yXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb24gZXh0ZW5kcyBUcmFuc2FjdGlvbkJhc2UgaW1wbGVtZW50cyBFeHBlbnNlLCBJUmVjZWlwdCB7XG4gIC8vIGxpc3Qgb2YgY2hpbGQgdHJhbnNhY3Rpb25zIChmZWVzKVxuICBAVHlwZSgoKSA9PiBUcmFuc2FjdGlvbilcbiAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbltdID0gW107XG5cbiAgQFR5cGUoKCkgPT4gUHJvcGVydHkpXG4gIHByb3BlcnR5OiBQcm9wZXJ0eTtcblxuICBAVHlwZSgoKSA9PiBUcmFuc2FjdGlvblJlY2VpcHQpXG4gIHJlY2VpcHQ6IFRyYW5zYWN0aW9uUmVjZWlwdDtcblxuICBAVHlwZSgoKSA9PiBDaGFydEFjY291bnRzKVxuICBjaGFydEFjY291bnRzOiBDaGFydEFjY291bnRzO1xuXG4gIEBUeXBlKCgpID0+IEluY29tZVNvdXJjZSlcbiAgaW5jb21lU291cmNlOiBJbmNvbWVTb3VyY2U7XG5cbiAgQFR5cGUoKCkgPT4gVHJhbnNhY3Rpb25NZXRhZGF0YSlcbiAgbWV0YWRhdGE6IFRyYW5zYWN0aW9uTWV0YWRhdGFbXSA9IFtdO1xuXG4gIEBUeXBlKCgpID0+IFRyYW5zYWN0aW9uKVxuICB0cmFuc2ZlcjogVHJhbnNhY3Rpb247XG5cbiAgQFR5cGUoKCkgPT4gTG9hbilcbiAgbG9hbjogTG9hbjtcblxuICBAVHlwZSgoKSA9PiBEYXRlKVxuICBkYXRlOiBEYXRlO1xuXG4gIEBUeXBlKCgpID0+IFRyYW5zYWN0aW9uQWxsb2NhdGlvbilcbiAgYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbltdID0gW107XG5cbiAgLy8gY291bGQgYmUgRmlsZSB3aGVuIGp1c3QgYWRkZWQgbmV3IGltYWdlXG4gIEBFeGNsdWRlKHt0b1BsYWluT25seTogdHJ1ZX0pXG4gIGZpbGU6IEZpbGU7XG5cbiAgdGF4OiBudW1iZXIgPSAwO1xuICBvcGVyYXRpb246IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bSA9IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bS5GSU5EX0FORF9NQVRDSDtcbiAgYWxsb2NhdGVkQW1vdW50OiBudW1iZXI7XG4gIHVuYWxsb2NhdGVkQW1vdW50OiBudW1iZXI7XG4gIGlzU2VsZWN0ZWQ6IGJvb2xlYW47XG4gIGNsYWltUGVyY2VudDogbnVtYmVyID0gMTAwO1xuICBhbW91bnQ6IG51bWJlciA9IDA7XG5cbiAgaXNEZWJpdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBUcmFuc2FjdGlvblR5cGVFbnVtLkRFQklUO1xuICB9XG5cbiAgaXNDcmVkaXQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gVHJhbnNhY3Rpb25UeXBlRW51bS5DUkVESVQ7XG4gIH1cblxuICBpc0luY29tZSgpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMuY2hhcnRBY2NvdW50cykge1xuICAgICAgcmV0dXJuIHRoaXMuaXNDcmVkaXQoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5pbmNvbWUuaW5jbHVkZXModGhpcy5jaGFydEFjY291bnRzLmNhdGVnb3J5KTtcbiAgfVxuXG4gIGlzRXhwZW5zZSgpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMuY2hhcnRBY2NvdW50cykge1xuICAgICAgcmV0dXJuIHRoaXMuaXNEZWJpdCgpO1xuICAgIH1cblxuICAgIHJldHVybiBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTLmV4cGVuc2UuaW5jbHVkZXModGhpcy5jaGFydEFjY291bnRzLmNhdGVnb3J5KTtcbiAgfVxuXG4gIGlzUGVyc29uYWwoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMucGVyc29uYWwuaW5jbHVkZXModGhpcy5jaGFydEFjY291bnRzLmNhdGVnb3J5KTtcbiAgfVxuXG4gIGdldCBjaGFydEFjY291bnRzQ2F0ZWdvcmllcygpOiBDaGFydEFjY291bnRzQ2F0ZWdvcnlFbnVtW10ge1xuICAgIHN3aXRjaCAodHJ1ZSkge1xuICAgICAgY2FzZSB0aGlzLmlzUGVyc29uYWwoKTpcbiAgICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMucGVyc29uYWw7XG5cbiAgICAgIGNhc2UgdGhpcy5pc1Byb3BlcnR5VGFuaygpOlxuICAgICAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5wcm9wZXJ0eTtcblxuICAgICAgY2FzZSB0aGlzLmlzU29sZVRhbmsoKTpcbiAgICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMuc29sZTtcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMud29yaztcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgdHJhbnNhY3Rpb24gaGFzICdLbG1zIHRyYXZlbGxlZCBmb3Igd29yaycgY2hhcnQgYWNjb3VudHMgY2F0ZWdvcnlcbiAgICovXG4gIGdldCBpc0tsbXNDaGFydEFjY291bnRzQ2F0ZWdvcnkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuY2hhcnRBY2NvdW50cy5pZCA9PT0gQ2hhcnRBY2NvdW50c0xpc3RFbnVtLktMTVNfVFJBVkVMTEVEX0ZPUl9XT1JLO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0cmFuc2FjdGlvbiBkYXRlXG4gICAqL1xuICBnZXREYXRlKCk6IERhdGUge1xuICAgIHJldHVybiB0aGlzLmRhdGU7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgdHJhbnNhY3Rpb24gdHlwZSBpcyB2ZWhpY2xlXG4gICAqL1xuICBpc1ZlaGljbGVUcmFuc2FjdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jaGFydEFjY291bnRzLmlzVmVoaWNsZUV4cGVuc2UoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgbmV0IGFtb3VudCAoY2xlYW4gYW1vdW50IGFmdGVyIGFsbCBkZWR1Y3Rpb25zKVxuICAgKi9cbiAgZ2V0TmV0QW1vdW50KCk6IG51bWJlciB7XG4gICAgLy8gQFRPRE8gZml4IGhhY2sgd2hpbGUgdHJhbnNhY3Rpb25zIHJlZmFjdG9yaW5nICh1c2UgY2xhc3MtdHJhbnNmb3JtZXIpXG4gICAgcmV0dXJuICsoTWF0aC5yb3VuZCh0aGlzLmdldEluY29tZUFtb3VudEJ5VHlwZShJbmNvbWVBbW91bnRUeXBlRW51bS5ORVQpICogMTAwKSAvIDEwMCkudG9GaXhlZCgyKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgZ3Jvc3MgaW5jb21lIGFtb3VudFxuICAgKi9cbiAgZ2V0R3Jvc3NJbmNvbWUoKTogbnVtYmVyIHtcbiAgICAvLyBAVE9ETyBmaXggaGFjayB3aGlsZSB0cmFuc2FjdGlvbnMgcmVmYWN0b3JpbmcgKHVzZSBjbGFzcy10cmFuc2Zvcm1lcilcbiAgICByZXR1cm4gKyhNYXRoLnJvdW5kKHRoaXMuZ2V0SW5jb21lQW1vdW50QnlUeXBlKEluY29tZUFtb3VudFR5cGVFbnVtLkdST1NTKSAqIDEwMCkgLyAxMDApLnRvRml4ZWQoMik7XG4gIH1cblxuICBnZXQgdGF4RnJlZUNvbXBvbmVudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldE1ldGFkYXRhRmllbGRWYWx1ZShDaGFydEFjY291bnRzTWV0YWRhdGFMaXN0RW51bS5UQVhfRlJFRV9DT01QT05FTlQpO1xuICB9XG5cbiAgZ2V0IGZyYW5raW5nQ3JlZGl0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TWV0YWRhdGFGaWVsZFZhbHVlKENoYXJ0QWNjb3VudHNNZXRhZGF0YUxpc3RFbnVtLkZSQU5LSU5HX0NSRURJVCk7XG4gIH1cblxuICBnZXQgZWxpZ2libGVGb3JSZWR1Y3Rpb24oKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRNZXRhZGF0YUZpZWxkVmFsdWUoQ2hhcnRBY2NvdW50c01ldGFkYXRhTGlzdEVudW0uRUxJR0lCTEVfRk9SX1JFRFVDVElPTik7XG4gIH1cblxuICBnZXQgdW50YXhlZEVsZW1lbnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRNZXRhZGF0YUZpZWxkVmFsdWUoQ2hhcnRBY2NvdW50c01ldGFkYXRhTGlzdEVudW0uVU5UQVhFRF9FTEVNRU5UKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiB0cmFuc2FjdGlvbiByZWNvbmNpbGUgb3BlcmF0aW9uIGlmIFRSQU5TRkVSXG4gICAqIEBUT0RPIGJhZCB1c2FnZSBvZiBnZXQgKGFuZCBhbGwgaXMqIG1ldGhvZHMpLCBnZXR0ZXIgc2hvdWxkIHNvdW5kIGxpa2UgYSBub3VuXG4gICAqL1xuICBnZXQgaXNUcmFuc2ZlcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5vcGVyYXRpb24gPT09IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bS5UUkFOU0ZFUjtcbiAgfVxuXG4gIGdldCBkZWJpdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmlzRGViaXQoKSA/IE1hdGguYWJzKHRoaXMuYW1vdW50KSA6IDA7XG4gIH1cblxuICBnZXQgY3JlZGl0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuaXNDcmVkaXQoKSA/IE1hdGguYWJzKHRoaXMuYW1vdW50KSA6IDA7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHZhbHVlIG9mIHRyYW5zYWN0aW9uIG1ldGFkYXRhIGZpZWxkXG4gICAqIEBwYXJhbSBmaWVsZCBmb3Igd2hpY2ggdmFsdWUgc2hvdWxkIGJlIHJldHVybmVkXG4gICAqL1xuICBwcml2YXRlIGdldE1ldGFkYXRhRmllbGRWYWx1ZShmaWVsZDogQ2hhcnRBY2NvdW50c01ldGFkYXRhTGlzdEVudW0pOiBudW1iZXIge1xuICAgIHJldHVybiArdGhpcy5tZXRhZGF0YS5maW5kKCh0cmFuc2FjdGlvbk1ldGFkYXRhOiBUcmFuc2FjdGlvbk1ldGFkYXRhKTogYm9vbGVhbiA9PiB7XG4gICAgICByZXR1cm4gdHJhbnNhY3Rpb25NZXRhZGF0YS5jaGFydEFjY291bnRzTWV0YWRhdGEuaWQgPT09IGZpZWxkO1xuICAgIH0pPy52YWx1ZSB8fCAwO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgTmV0IG9yIEdyb3NzIGluY29tZSBhbW91bnQgYmFzZWQgb24gcHJvdmlkZWQgaW5jb21lIHR5cGVcbiAgICogQHBhcmFtIGluY29tZVR5cGUgYnkgd2hpY2ggYW1vdW50IHNob3VsZCBiZSByZXR1cm5lZFxuICAgKi9cbiAgcHJpdmF0ZSBnZXRJbmNvbWVBbW91bnRCeVR5cGUoaW5jb21lVHlwZTogSW5jb21lQW1vdW50VHlwZUVudW0pOiBudW1iZXIge1xuICAgIC8vIG1vZGlmaWVyIHRoYXQgZGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSB2YWx1ZXMgb2YgdGhlIHRyYW5zYWN0aW9uIGZpZWxkcyB3aWxsIGJlIGFkZGVkIG9yIHN1YnRyYWN0ZWRcbiAgICBjb25zdCBtb2RpZmllcjogbnVtYmVyID0gaW5jb21lVHlwZSA9PT0gSW5jb21lQW1vdW50VHlwZUVudW0uR1JPU1MgPyAxIDogLTE7XG5cbiAgICBzd2l0Y2ggKHRydWUpIHtcbiAgICAgIGNhc2UgdGhpcy5pc1Byb3BlcnR5VGFuaygpOlxuICAgICAgICByZXR1cm4gdGhpcy5hbW91bnQgK1xuICAgICAgICAgICh0aGlzLnRyYW5zYWN0aW9uc1xuICAgICAgICAgICAgLnJlZHVjZSgoc3VtOiBudW1iZXIsIHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IG51bWJlciA9PiBzdW0gKyBNYXRoLmFicyh0cmFuc2FjdGlvbi5hbW91bnQpLCAwKSAqIG1vZGlmaWVyKTtcbiAgICAgIGNhc2UgdGhpcy5pc1dvcmtUYW5rKCk6XG4gICAgICAgIHJldHVybiB0aGlzLmFtb3VudCArICgodGhpcy50YXggKyB0aGlzLmZyYW5raW5nQ3JlZGl0IC0gdGhpcy50YXhGcmVlQ29tcG9uZW50IC0gdGhpcy5lbGlnaWJsZUZvclJlZHVjdGlvbikgKiBtb2RpZmllcik7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gdGhpcy5hbW91bnQgfHwgMDtcbiAgICB9XG4gIH1cblxuICBpc0ludGVyZXN0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNoYXJ0QWNjb3VudHMuaWQgPT09IENoYXJ0QWNjb3VudHNMaXN0RW51bS5JTlRFUkVTVF9PTl9MT0FOO1xuICB9XG5cbiAgaXNDYXNoKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNvdXJjZSA9PT0gVHJhbnNhY3Rpb25Tb3VyY2VFbnVtLkNBU0g7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIERlcHJlY2lhdGlvbiBpbnN0YW5jZSBiYXNlZCBvbiBUcmFuc2FjdGlvblxuICAgKi9cbiAgdG9EZXByZWNpYXRpb24oKTogRGVwcmVjaWF0aW9uIHtcbiAgICByZXR1cm4gcGxhaW5Ub0NsYXNzKERlcHJlY2lhdGlvbiwge1xuICAgICAgZGF0ZTogdGhpcy5kYXRlLFxuICAgICAgYW1vdW50OiB0aGlzLmFtb3VudCxcbiAgICAgIGNoYXJ0QWNjb3VudHM6IHRoaXMuY2hhcnRBY2NvdW50cyxcbiAgICAgIGRlc2NyaXB0aW9uOiB0aGlzLmRlc2NyaXB0aW9uLFxuICAgICAgdHlwZTogRGVwcmVjaWF0aW9uVHlwZUVudW0uUExBTlRfRVFVSVBNRU5ULFxuICAgICAgY2xhaW1QZXJjZW50OiB0aGlzLmNsYWltUGVyY2VudCxcbiAgICAgIHByb3BlcnR5OiB0aGlzLnByb3BlcnR5LFxuICAgICAgY2FsY3VsYXRpb246IHRoaXMucHJvcGVydHkgPyB0aGlzLnByb3BlcnR5LmRlcHJlY2lhdGlvbkNhbGN1bGF0aW9uIDogRGVwcmVjaWF0aW9uQ2FsY3VsYXRpb25FbnVtLlBSSU1FX0NPU1RcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiB0cmFuc2FjdGlvbiBpcyBjb21wbGV0ZWx5IGFsbG9jYXRlZFxuICAgKi9cbiAgaXNBbGxvY2F0ZWQoYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5nZXROZXRBbW91bnQoKSA9PT0gdGhpcy5nZXRBbGxvY2F0ZWRBbW91bnQoYWxsb2NhdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0cmFuc2FjdGlvbiBhbGxvY2F0ZWQgYW1vdW50XG4gICAqL1xuICBnZXRBbGxvY2F0ZWRBbW91bnQoYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBudW1iZXIge1xuICAgIHJldHVybiBhbGxvY2F0aW9ucy5nZXRCeVRyYW5zYWN0aW9uc0lkcyhbdGhpcy5pZF0pLmFtb3VudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdHJhbnNhY3Rpb24gdW5hbGxvY2F0ZWQgYW1vdW50XG4gICAqL1xuICBnZXRVbmFsbG9jYXRlZEFtb3VudChhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TmV0QW1vdW50KCkgLSB0aGlzLmdldEFsbG9jYXRlZEFtb3VudChhbGxvY2F0aW9ucyk7XG4gIH1cbn1cbiJdfQ==
225
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvbW9kZWxzL3RyYW5zYWN0aW9uL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsV0FBVyxJQUFJLGVBQWUsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBRTNFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQzNGLE9BQU8sRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLElBQUksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDakUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzlELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzdELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDcEMsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMEJBQTBCLENB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USxDQUFDOzZDQUNGO0FBR25CO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDOzRDQUNIO0FBRzVCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQztrREFDRztBQUc3QjtJQURDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxZQUFZLENBQUM7aURBQ0U7QUFHM0I7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsbUJBQW1CLENBQUM7NkNBQ0s7QUFHckM7SUFEQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDOzZDQUNGO0FBR3RCO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzt5Q0FDTjtBQUdYO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQzt5Q0FDTjtBQUdYO0lBREMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLHFCQUFxQixDQUFDO2dEQUNRO0FBSTFDO0lBREMsT0FBTyxDQUFDLEVBQUMsV0FBVyxFQUFFLElBQUksRUFBQyxDQUFDO3lDQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zYWN0aW9uIGFzIFRyYW5zYWN0aW9uQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy90cmFuc2FjdGlvbi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvdHJhbnNhY3Rpb24tdHlwZS5lbnVtJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNDYXRlZ29yeUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy9jaGFydC1hY2NvdW50cy1jYXRlZ29yeS5lbnVtJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RyYW5zYWN0aW9uLW9wZXJhdGlvbi5lbnVtJztcbmltcG9ydCB7IENoYXJ0QWNjb3VudHNMaXN0RW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2NoYXJ0LWFjY291bnRzLWxpc3QuZW51bSc7XG5pbXBvcnQgeyBDaGFydEFjY291bnRzTWV0YWRhdGFMaXN0RW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2NoYXJ0LWFjY291bnRzLW1ldGFkYXRhLWxpc3QuZW51bSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblNvdXJjZUVudW0gfSBmcm9tICcuLi8uLi9kYi9FbnVtcy90cmFuc2FjdGlvbi1zb3VyY2UuZW51bSc7XG5pbXBvcnQgeyBEZXByZWNpYXRpb25UeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL2RlcHJlY2lhdGlvbi10eXBlLmVudW0nO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uQ2FsY3VsYXRpb25FbnVtIH0gZnJvbSAnLi4vLi4vZGIvRW51bXMvZGVwcmVjaWF0aW9uLWNhbGN1bGF0aW9uLmVudW0nO1xuaW1wb3J0IHsgRXhjbHVkZSwgcGxhaW5Ub0NsYXNzLCBUeXBlIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgUHJvcGVydHkgfSBmcm9tICcuLi9wcm9wZXJ0eS9wcm9wZXJ0eSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblJlY2VpcHQgfSBmcm9tICcuL3RyYW5zYWN0aW9uLXJlY2VpcHQnO1xuaW1wb3J0IHsgQ2hhcnRBY2NvdW50cyB9IGZyb20gJy4uL2NoYXJ0LWFjY291bnRzL2NoYXJ0LWFjY291bnRzJztcbmltcG9ydCB7IEluY29tZVNvdXJjZSB9IGZyb20gJy4uL2luY29tZS1zb3VyY2UvaW5jb21lLXNvdXJjZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbk1ldGFkYXRhIH0gZnJvbSAnLi90cmFuc2FjdGlvbi1tZXRhZGF0YSc7XG5pbXBvcnQgeyBMb2FuIH0gZnJvbSAnLi4vbG9hbi9sb2FuJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQWxsb2NhdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24tYWxsb2NhdGlvbic7XG5pbXBvcnQgeyBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTIH0gZnJvbSAnLi4vY2hhcnQtYWNjb3VudHMvY2hhcnQtYWNjb3VudHMtY2F0ZWdvcmllcy5jb25zdCc7XG5pbXBvcnQgeyBJbmNvbWVBbW91bnRUeXBlRW51bSB9IGZyb20gJy4vaW5jb21lLWFtb3VudC10eXBlLmVudW0nO1xuaW1wb3J0IHsgSVJlY2VpcHQgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3JlY2VpcHQuaW50ZXJmYWNlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi9jb2xsZWN0aW9ucy90cmFuc2FjdGlvbi1hbGxvY2F0aW9uLmNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgRGVwcmVjaWF0aW9uIH0gZnJvbSAnLi4vZGVwcmVjaWF0aW9uL2RlcHJlY2lhdGlvbic7XG5pbXBvcnQgeyBFeHBlbnNlIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9leHBlbnNlLmludGVyZmFjZSc7XG5cbi8vIEBUT0RPIHJlZmFjdG9yIHdpdGggYmFzZU1vZGVsIGluIGNvbnN0cnVjdG9yXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb24gZXh0ZW5kcyBUcmFuc2FjdGlvbkJhc2UgaW1wbGVtZW50cyBFeHBlbnNlLCBJUmVjZWlwdCB7XG4gIC8vIGxpc3Qgb2YgY2hpbGQgdHJhbnNhY3Rpb25zIChmZWVzKVxuICBAVHlwZSgoKSA9PiBUcmFuc2FjdGlvbilcbiAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvbltdID0gW107XG5cbiAgQFR5cGUoKCkgPT4gUHJvcGVydHkpXG4gIHByb3BlcnR5OiBQcm9wZXJ0eTtcblxuICBAVHlwZSgoKSA9PiBUcmFuc2FjdGlvblJlY2VpcHQpXG4gIHJlY2VpcHQ6IFRyYW5zYWN0aW9uUmVjZWlwdDtcblxuICBAVHlwZSgoKSA9PiBDaGFydEFjY291bnRzKVxuICBjaGFydEFjY291bnRzOiBDaGFydEFjY291bnRzO1xuXG4gIEBUeXBlKCgpID0+IEluY29tZVNvdXJjZSlcbiAgaW5jb21lU291cmNlOiBJbmNvbWVTb3VyY2U7XG5cbiAgQFR5cGUoKCkgPT4gVHJhbnNhY3Rpb25NZXRhZGF0YSlcbiAgbWV0YWRhdGE6IFRyYW5zYWN0aW9uTWV0YWRhdGFbXSA9IFtdO1xuXG4gIEBUeXBlKCgpID0+IFRyYW5zYWN0aW9uKVxuICB0cmFuc2ZlcjogVHJhbnNhY3Rpb247XG5cbiAgQFR5cGUoKCkgPT4gTG9hbilcbiAgbG9hbjogTG9hbjtcblxuICBAVHlwZSgoKSA9PiBEYXRlKVxuICBkYXRlOiBEYXRlO1xuXG4gIEBUeXBlKCgpID0+IFRyYW5zYWN0aW9uQWxsb2NhdGlvbilcbiAgYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbltdID0gW107XG5cbiAgLy8gY291bGQgYmUgRmlsZSB3aGVuIGp1c3QgYWRkZWQgbmV3IGltYWdlXG4gIEBFeGNsdWRlKHt0b1BsYWluT25seTogdHJ1ZX0pXG4gIGZpbGU6IEZpbGU7XG5cbiAgdGF4OiBudW1iZXIgPSAwO1xuICBvcGVyYXRpb246IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bSA9IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bS5GSU5EX0FORF9NQVRDSDtcbiAgYWxsb2NhdGVkQW1vdW50OiBudW1iZXI7XG4gIHVuYWxsb2NhdGVkQW1vdW50OiBudW1iZXI7XG4gIGlzU2VsZWN0ZWQ6IGJvb2xlYW47XG4gIGNsYWltUGVyY2VudDogbnVtYmVyID0gMTAwO1xuICBhbW91bnQ6IG51bWJlciA9IDA7XG5cbiAgaXNEZWJpdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy50eXBlID09PSBUcmFuc2FjdGlvblR5cGVFbnVtLkRFQklUO1xuICB9XG5cbiAgaXNDcmVkaXQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudHlwZSA9PT0gVHJhbnNhY3Rpb25UeXBlRW51bS5DUkVESVQ7XG4gIH1cblxuICBpc0luY29tZSgpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMuY2hhcnRBY2NvdW50cykge1xuICAgICAgcmV0dXJuIHRoaXMuaXNDcmVkaXQoKTtcbiAgICB9XG5cbiAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5pbmNvbWUuaW5jbHVkZXModGhpcy5jaGFydEFjY291bnRzLmNhdGVnb3J5KTtcbiAgfVxuXG4gIGlzRXhwZW5zZSgpOiBib29sZWFuIHtcbiAgICBpZiAoIXRoaXMuY2hhcnRBY2NvdW50cykge1xuICAgICAgcmV0dXJuIHRoaXMuaXNEZWJpdCgpO1xuICAgIH1cblxuICAgIHJldHVybiBDSEFSVF9BQ0NPVU5UU19DQVRFR09SSUVTLmV4cGVuc2UuaW5jbHVkZXModGhpcy5jaGFydEFjY291bnRzLmNhdGVnb3J5KTtcbiAgfVxuXG4gIGlzUGVyc29uYWwoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMucGVyc29uYWwuaW5jbHVkZXModGhpcy5jaGFydEFjY291bnRzLmNhdGVnb3J5KTtcbiAgfVxuXG4gIGdldCBjaGFydEFjY291bnRzQ2F0ZWdvcmllcygpOiBDaGFydEFjY291bnRzQ2F0ZWdvcnlFbnVtW10ge1xuICAgIHN3aXRjaCAodHJ1ZSkge1xuICAgICAgY2FzZSB0aGlzLmlzUGVyc29uYWwoKTpcbiAgICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMucGVyc29uYWw7XG5cbiAgICAgIGNhc2UgdGhpcy5pc1Byb3BlcnR5VGFuaygpOlxuICAgICAgICByZXR1cm4gQ0hBUlRfQUNDT1VOVFNfQ0FURUdPUklFUy5wcm9wZXJ0eTtcblxuICAgICAgY2FzZSB0aGlzLmlzU29sZVRhbmsoKTpcbiAgICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMuc29sZTtcblxuICAgICAgZGVmYXVsdDpcbiAgICAgICAgcmV0dXJuIENIQVJUX0FDQ09VTlRTX0NBVEVHT1JJRVMud29yaztcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgdHJhbnNhY3Rpb24gaGFzICdLbG1zIHRyYXZlbGxlZCBmb3Igd29yaycgY2hhcnQgYWNjb3VudHMgY2F0ZWdvcnlcbiAgICovXG4gIGdldCBpc0tsbXNDaGFydEFjY291bnRzQ2F0ZWdvcnkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuY2hhcnRBY2NvdW50cy5pZCA9PT0gQ2hhcnRBY2NvdW50c0xpc3RFbnVtLktMTVNfVFJBVkVMTEVEX0ZPUl9XT1JLO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0cmFuc2FjdGlvbiBkYXRlXG4gICAqL1xuICBnZXREYXRlKCk6IERhdGUge1xuICAgIHJldHVybiB0aGlzLmRhdGU7XG4gIH1cblxuICAvKipcbiAgICogQ2hlY2sgaWYgdHJhbnNhY3Rpb24gdHlwZSBpcyB2ZWhpY2xlXG4gICAqL1xuICBpc1ZlaGljbGVUcmFuc2FjdGlvbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5jaGFydEFjY291bnRzLmlzVmVoaWNsZUV4cGVuc2UoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgbmV0IGFtb3VudCAoY2xlYW4gYW1vdW50IGFmdGVyIGFsbCBkZWR1Y3Rpb25zKVxuICAgKi9cbiAgZ2V0TmV0QW1vdW50KCk6IG51bWJlciB7XG4gICAgLy8gQFRPRE8gZml4IGhhY2sgd2hpbGUgdHJhbnNhY3Rpb25zIHJlZmFjdG9yaW5nICh1c2UgY2xhc3MtdHJhbnNmb3JtZXIpXG4gICAgcmV0dXJuICsoTWF0aC5yb3VuZCh0aGlzLmdldEluY29tZUFtb3VudEJ5VHlwZShJbmNvbWVBbW91bnRUeXBlRW51bS5ORVQpICogMTAwKSAvIDEwMCkudG9GaXhlZCgyKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgZ3Jvc3MgaW5jb21lIGFtb3VudFxuICAgKi9cbiAgZ2V0R3Jvc3NJbmNvbWUoKTogbnVtYmVyIHtcbiAgICAvLyBAVE9ETyBmaXggaGFjayB3aGlsZSB0cmFuc2FjdGlvbnMgcmVmYWN0b3JpbmcgKHVzZSBjbGFzcy10cmFuc2Zvcm1lcilcbiAgICByZXR1cm4gKyhNYXRoLnJvdW5kKHRoaXMuZ2V0SW5jb21lQW1vdW50QnlUeXBlKEluY29tZUFtb3VudFR5cGVFbnVtLkdST1NTKSAqIDEwMCkgLyAxMDApLnRvRml4ZWQoMik7XG4gIH1cblxuICBnZXQgdGF4RnJlZUNvbXBvbmVudCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmdldE1ldGFkYXRhRmllbGRWYWx1ZShDaGFydEFjY291bnRzTWV0YWRhdGFMaXN0RW51bS5UQVhfRlJFRV9DT01QT05FTlQpO1xuICB9XG5cbiAgZ2V0IGZyYW5raW5nQ3JlZGl0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TWV0YWRhdGFGaWVsZFZhbHVlKENoYXJ0QWNjb3VudHNNZXRhZGF0YUxpc3RFbnVtLkZSQU5LSU5HX0NSRURJVCk7XG4gIH1cblxuICBnZXQgZWxpZ2libGVGb3JSZWR1Y3Rpb24oKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRNZXRhZGF0YUZpZWxkVmFsdWUoQ2hhcnRBY2NvdW50c01ldGFkYXRhTGlzdEVudW0uRUxJR0lCTEVfRk9SX1JFRFVDVElPTik7XG4gIH1cblxuICBnZXQgdW50YXhlZEVsZW1lbnQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5nZXRNZXRhZGF0YUZpZWxkVmFsdWUoQ2hhcnRBY2NvdW50c01ldGFkYXRhTGlzdEVudW0uVU5UQVhFRF9FTEVNRU5UKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiB0cmFuc2FjdGlvbiByZWNvbmNpbGUgb3BlcmF0aW9uIGlmIFRSQU5TRkVSXG4gICAqIEBUT0RPIGJhZCB1c2FnZSBvZiBnZXQgKGFuZCBhbGwgaXMqIG1ldGhvZHMpLCBnZXR0ZXIgc2hvdWxkIHNvdW5kIGxpa2UgYSBub3VuXG4gICAqL1xuICBnZXQgaXNUcmFuc2ZlcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5vcGVyYXRpb24gPT09IFRyYW5zYWN0aW9uT3BlcmF0aW9uRW51bS5UUkFOU0ZFUjtcbiAgfVxuXG4gIGdldCBkZWJpdCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmlzRGViaXQoKSA/IE1hdGguYWJzKHRoaXMuYW1vdW50KSA6IDA7XG4gIH1cblxuICBnZXQgY3JlZGl0KCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuaXNDcmVkaXQoKSA/IE1hdGguYWJzKHRoaXMuYW1vdW50KSA6IDA7XG4gIH1cblxuICAvKipcbiAgICogR2V0IHZhbHVlIG9mIHRyYW5zYWN0aW9uIG1ldGFkYXRhIGZpZWxkXG4gICAqIEBwYXJhbSBmaWVsZCBmb3Igd2hpY2ggdmFsdWUgc2hvdWxkIGJlIHJldHVybmVkXG4gICAqL1xuICBwcml2YXRlIGdldE1ldGFkYXRhRmllbGRWYWx1ZShmaWVsZDogQ2hhcnRBY2NvdW50c01ldGFkYXRhTGlzdEVudW0pOiBudW1iZXIge1xuICAgIHJldHVybiArdGhpcy5tZXRhZGF0YS5maW5kKCh0cmFuc2FjdGlvbk1ldGFkYXRhOiBUcmFuc2FjdGlvbk1ldGFkYXRhKTogYm9vbGVhbiA9PiB7XG4gICAgICByZXR1cm4gdHJhbnNhY3Rpb25NZXRhZGF0YS5jaGFydEFjY291bnRzTWV0YWRhdGEuaWQgPT09IGZpZWxkO1xuICAgIH0pPy52YWx1ZSB8fCAwO1xuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgTmV0IG9yIEdyb3NzIGluY29tZSBhbW91bnQgYmFzZWQgb24gcHJvdmlkZWQgaW5jb21lIHR5cGVcbiAgICogQHBhcmFtIGluY29tZVR5cGUgYnkgd2hpY2ggYW1vdW50IHNob3VsZCBiZSByZXR1cm5lZFxuICAgKi9cbiAgcHJpdmF0ZSBnZXRJbmNvbWVBbW91bnRCeVR5cGUoaW5jb21lVHlwZTogSW5jb21lQW1vdW50VHlwZUVudW0pOiBudW1iZXIge1xuICAgIC8vIG1vZGlmaWVyIHRoYXQgZGV0ZXJtaW5lcyB3aGV0aGVyIHRoZSB2YWx1ZXMgb2YgdGhlIHRyYW5zYWN0aW9uIGZpZWxkcyB3aWxsIGJlIGFkZGVkIG9yIHN1YnRyYWN0ZWRcbiAgICBjb25zdCBtb2RpZmllcjogbnVtYmVyID0gaW5jb21lVHlwZSA9PT0gSW5jb21lQW1vdW50VHlwZUVudW0uR1JPU1MgPyAxIDogLTE7XG5cbiAgICBzd2l0Y2ggKHRydWUpIHtcbiAgICAgIGNhc2UgdGhpcy5pc1Byb3BlcnR5VGFuaygpOlxuICAgICAgICByZXR1cm4gdGhpcy5hbW91bnQgK1xuICAgICAgICAgICh0aGlzLnRyYW5zYWN0aW9uc1xuICAgICAgICAgICAgLnJlZHVjZSgoc3VtOiBudW1iZXIsIHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbik6IG51bWJlciA9PiBzdW0gKyBNYXRoLmFicyh0cmFuc2FjdGlvbi5hbW91bnQpLCAwKSAqIG1vZGlmaWVyKTtcbiAgICAgIGNhc2UgdGhpcy5pc1dvcmtUYW5rKCk6XG4gICAgICAgIHJldHVybiB0aGlzLmFtb3VudCArICgodGhpcy50YXggKyB0aGlzLmZyYW5raW5nQ3JlZGl0IC0gdGhpcy50YXhGcmVlQ29tcG9uZW50IC0gdGhpcy5lbGlnaWJsZUZvclJlZHVjdGlvbikgKiBtb2RpZmllcik7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gdGhpcy5hbW91bnQgfHwgMDtcbiAgICB9XG4gIH1cblxuICBpc0ludGVyZXN0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmNoYXJ0QWNjb3VudHMuaWQgPT09IENoYXJ0QWNjb3VudHNMaXN0RW51bS5JTlRFUkVTVF9PTl9MT0FOO1xuICB9XG5cbiAgaXNDYXNoKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNvdXJjZSA9PT0gVHJhbnNhY3Rpb25Tb3VyY2VFbnVtLkNBU0g7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIERlcHJlY2lhdGlvbiBpbnN0YW5jZSBiYXNlZCBvbiBUcmFuc2FjdGlvblxuICAgKi9cbiAgdG9EZXByZWNpYXRpb24oKTogRGVwcmVjaWF0aW9uIHtcbiAgICByZXR1cm4gcGxhaW5Ub0NsYXNzKERlcHJlY2lhdGlvbiwge1xuICAgICAgZGF0ZTogdGhpcy5kYXRlLFxuICAgICAgYW1vdW50OiB0aGlzLmFtb3VudCxcbiAgICAgIGNoYXJ0QWNjb3VudHM6IHRoaXMuY2hhcnRBY2NvdW50cyxcbiAgICAgIGRlc2NyaXB0aW9uOiB0aGlzLmRlc2NyaXB0aW9uLFxuICAgICAgdHlwZTogRGVwcmVjaWF0aW9uVHlwZUVudW0uUExBTlRfRVFVSVBNRU5ULFxuICAgICAgY2xhaW1QZXJjZW50OiB0aGlzLmNsYWltUGVyY2VudCxcbiAgICAgIHByb3BlcnR5OiB0aGlzLnByb3BlcnR5LFxuICAgICAgY2FsY3VsYXRpb246IHRoaXMucHJvcGVydHkgPyB0aGlzLnByb3BlcnR5LmRlcHJlY2lhdGlvbkNhbGN1bGF0aW9uIDogRGVwcmVjaWF0aW9uQ2FsY3VsYXRpb25FbnVtLlBSSU1FX0NPU1RcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVjayBpZiB0cmFuc2FjdGlvbiBpcyBjb21wbGV0ZWx5IGFsbG9jYXRlZFxuICAgKi9cbiAgaXNBbGxvY2F0ZWQoYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5nZXROZXRBbW91bnQoKSA9PT0gdGhpcy5nZXRBbGxvY2F0ZWRBbW91bnQoYWxsb2NhdGlvbnMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCB0cmFuc2FjdGlvbiBhbGxvY2F0ZWQgYW1vdW50XG4gICAqL1xuICBnZXRBbGxvY2F0ZWRBbW91bnQoYWxsb2NhdGlvbnM6IFRyYW5zYWN0aW9uQWxsb2NhdGlvbkNvbGxlY3Rpb24pOiBudW1iZXIge1xuICAgIHJldHVybiBhbGxvY2F0aW9ucy5nZXRCeVRyYW5zYWN0aW9uc0lkcyhbdGhpcy5pZF0pLmFtb3VudDtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgdHJhbnNhY3Rpb24gdW5hbGxvY2F0ZWQgYW1vdW50XG4gICAqL1xuICBnZXRVbmFsbG9jYXRlZEFtb3VudChhbGxvY2F0aW9uczogVHJhbnNhY3Rpb25BbGxvY2F0aW9uQ29sbGVjdGlvbik6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0TmV0QW1vdW50KCkgLSB0aGlzLmdldEFsbG9jYXRlZEFtb3VudChhbGxvY2F0aW9ucyk7XG4gIH1cbn1cbiJdfQ==
@@ -1,4 +1,4 @@
1
- import { Occupation as OccupationBase } from '../../db/Models/occupation';
1
+ import { Occupation as OccupationBase } from '../../db/Models/user/occupation';
2
2
  export class Occupation extends OccupationBase {
3
3
  }
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2NjdXBhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvdXNlci9vY2N1cGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLElBQUksY0FBYyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFMUUsTUFBTSxPQUFPLFVBQVcsU0FBUSxjQUFjO0NBQzdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2NjdXBhdGlvbiBhcyBPY2N1cGF0aW9uQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9vY2N1cGF0aW9uJztcblxuZXhwb3J0IGNsYXNzIE9jY3VwYXRpb24gZXh0ZW5kcyBPY2N1cGF0aW9uQmFzZSB7XG59XG4iXX0=
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2NjdXBhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9tb2RlbHMvdXNlci9vY2N1cGF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLElBQUksY0FBYyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFL0UsTUFBTSxPQUFPLFVBQVcsU0FBUSxjQUFjO0NBQzdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2NjdXBhdGlvbiBhcyBPY2N1cGF0aW9uQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy91c2VyL29jY3VwYXRpb24nO1xuXG5leHBvcnQgY2xhc3MgT2NjdXBhdGlvbiBleHRlbmRzIE9jY3VwYXRpb25CYXNlIHtcbn1cbiJdfQ==