From b74f39f3415d9a4409b84aba6e3421a752ad3aa2 Mon Sep 17 00:00:00 2001 From: Frank Nkuyahaga Date: Sat, 20 Jun 2020 09:17:46 +0300 Subject: [PATCH 001/427] Remove June 22 date restriction --- app/views/accounting/search_transaction.html | 4 ++-- .../accounttransfers/standinginstructions_history.html | 4 ++-- app/views/centers/centerattendance.html | 2 +- app/views/clients/createclient.html | 2 +- app/views/clients/editclient.html | 2 +- app/views/groups/groupattendance.html | 2 +- app/views/loans/addloancharge.html | 2 +- app/views/loans/editloanaccount.html | 10 +++++----- app/views/loans/loanaccountactions.html | 6 +++--- app/views/loans/newloanaccount.html | 10 +++++----- app/views/organization/bulkloan.html | 3 +-- app/views/organization/createholiday.html | 6 ++---- app/views/organization/editholiday.html | 4 ++-- .../organization/smscampaigns/createsmscampaign.html | 2 +- .../organization/smscampaigns/editsmscampaign.html | 2 +- .../organization/smscampaigns/viewsmscampaign.html | 4 ++-- app/views/products/createcharge.html | 2 +- app/views/products/createloanproduct.html | 4 ++-- app/views/products/editcharge.html | 2 +- app/views/products/editloanproduct.html | 4 ++-- app/views/reports/run_reports.html | 2 +- app/views/savings/assignsavingsofficer.html | 2 +- app/views/savings/unassignsavingsofficer.html | 2 +- app/views/search/advsearch.html | 4 ++-- app/views/system/audit.html | 8 ++++---- app/views/tasks.html | 4 ++-- 26 files changed, 48 insertions(+), 51 deletions(-) diff --git a/app/views/accounting/search_transaction.html b/app/views/accounting/search_transaction.html index e81e51e5..af0f1a90 100644 --- a/app/views/accounting/search_transaction.html +++ b/app/views/accounting/search_transaction.html @@ -33,10 +33,10 @@

{{'label.heading.daterange' | translate}}


- +
- +

diff --git a/app/views/accounttransfers/standinginstructions_history.html b/app/views/accounttransfers/standinginstructions_history.html index a0a5dcfc..19b32ab1 100644 --- a/app/views/accounttransfers/standinginstructions_history.html +++ b/app/views/accounttransfers/standinginstructions_history.html @@ -31,10 +31,10 @@
- +
- +
diff --git a/app/views/centers/centerattendance.html b/app/views/centers/centerattendance.html index cbd3e647..42687b5f 100644 --- a/app/views/centers/centerattendance.html +++ b/app/views/centers/centerattendance.html @@ -19,7 +19,7 @@

{{'label.heading.attendance' | translate}}

+ min="minDate" class="form-control" required late-Validate /> diff --git a/app/views/clients/createclient.html b/app/views/clients/createclient.html index 260ea58b..a9b630ea 100755 --- a/app/views/clients/createclient.html +++ b/app/views/clients/createclient.html @@ -162,7 +162,7 @@
+ ng-model="first.incorpValidityTillDate" is-open="opened1" class="form-control"/>
diff --git a/app/views/clients/editclient.html b/app/views/clients/editclient.html index c85f3ce6..8269fde3 100755 --- a/app/views/clients/editclient.html +++ b/app/views/clients/editclient.html @@ -166,7 +166,7 @@
+ ng-model="date.incorpValidityTillDate" is-open="opened1" class="form-control"/>
diff --git a/app/views/groups/groupattendance.html b/app/views/groups/groupattendance.html index 3c3480e0..96e149ac 100644 --- a/app/views/groups/groupattendance.html +++ b/app/views/groups/groupattendance.html @@ -18,7 +18,7 @@

{{'label.heading.attendance' | translate}}

{{'label.nextmettingon' | + min="minDate" class="form-control"/>{{'label.nextmettingon' | translate}}:{{meeting.nextTenRecurringDates[0] | DateFormat}}
diff --git a/app/views/loans/addloancharge.html b/app/views/loans/addloancharge.html index 909b148d..929d112b 100644 --- a/app/views/loans/addloancharge.html +++ b/app/views/loans/addloancharge.html @@ -61,7 +61,7 @@
+ is-open="opened" min="minDate" readonly required late-Validate/>
diff --git a/app/views/loans/editloanaccount.html b/app/views/loans/editloanaccount.html index f624ad92..5d1a4d1e 100755 --- a/app/views/loans/editloanaccount.html +++ b/app/views/loans/editloanaccount.html @@ -67,7 +67,7 @@ @@ -183,13 +183,13 @@ + /> + /> @@ -428,7 +428,7 @@ datepicker-pop="dd MMMM yyyy" class="form-control" placeholder="{{'label.input.expecteddisbursementon' | translate}}" ng-model="disbursementDetail.expectedDisbursementDate" is-open="'openedtranche'+$index" - min="minDate" max="'2020-06-22'"/> + min="minDate" /> + is-open="'openedch'+$index" min="minDate" /> diff --git a/app/views/loans/loanaccountactions.html b/app/views/loans/loanaccountactions.html index 53f2cc3a..16cf07b7 100644 --- a/app/views/loans/loanaccountactions.html +++ b/app/views/loans/loanaccountactions.html @@ -80,7 +80,7 @@ + min="minDate" /> + min="minDate" /> + min="minDate" /> + is-open="opened1" min="minDate" class="form-control" required late-validate/> @@ -250,7 +250,7 @@

{{ 'label.heading.savingsLinkage' | translate}} + min="minDate" class="form-control" />
-

diff --git a/app/views/organization/createholiday.html b/app/views/organization/createholiday.html index 5016fff5..02013982 100644 --- a/app/views/organization/createholiday.html +++ b/app/views/organization/createholiday.html @@ -44,8 +44,7 @@

{{'label.heading.createholiday' | translate}}

class="required">*
- {{ 'validation.msg.holiday.date.cannot.be.past.date' | translate }} @@ -70,8 +69,7 @@

{{'label.heading.createholiday' | translate}}

class="required">*
- +
{{ 'validation.msg.holiday.date.cannot.be.past.date' | translate }} diff --git a/app/views/organization/editholiday.html b/app/views/organization/editholiday.html index e1e7aa30..c2b00f12 100644 --- a/app/views/organization/editholiday.html +++ b/app/views/organization/editholiday.html @@ -43,7 +43,7 @@

{{'label.heading.editholiday' | translate}}

+ is-open="opened1" min="minDate" class="form-control"/>
@@ -68,7 +68,7 @@

{{'label.heading.editholiday' | translate}}

+ class="form-control"/>
diff --git a/app/views/organization/smscampaigns/createsmscampaign.html b/app/views/organization/smscampaigns/createsmscampaign.html index f1519823..8d1a661d 100644 --- a/app/views/organization/smscampaigns/createsmscampaign.html +++ b/app/views/organization/smscampaigns/createsmscampaign.html @@ -220,7 +220,7 @@

{{'label.heading.businessRuleParameters' | translate}}

+ date-disabled="disabled(date, mode)" class="form-control" required=""/>
diff --git a/app/views/organization/smscampaigns/editsmscampaign.html b/app/views/organization/smscampaigns/editsmscampaign.html index 678bcb57..c8e9158b 100644 --- a/app/views/organization/smscampaigns/editsmscampaign.html +++ b/app/views/organization/smscampaigns/editsmscampaign.html @@ -169,7 +169,7 @@

{{'label.heading.messagedetails' | translate}}

+ date-disabled="disabled(date, mode)" class="form-control" ng-disabled="true"/>
diff --git a/app/views/organization/smscampaigns/viewsmscampaign.html b/app/views/organization/smscampaigns/viewsmscampaign.html index 9713d4cc..bd9a4bd9 100644 --- a/app/views/organization/smscampaigns/viewsmscampaign.html +++ b/app/views/organization/smscampaigns/viewsmscampaign.html @@ -91,7 +91,7 @@

{{'label.heading.daterange' | translate}}{{'label.input.fromdate' | translate}}
- +
@@ -99,7 +99,7 @@

{{'label.heading.daterange' | translate}}{{'label.input.todate' | translate}}
- +
diff --git a/app/views/products/createcharge.html b/app/views/products/createcharge.html index 320e9754..36e9b39b 100644 --- a/app/views/products/createcharge.html +++ b/app/views/products/createcharge.html @@ -104,7 +104,7 @@
+ min="minDate" class="form-control"/>
diff --git a/app/views/products/createloanproduct.html b/app/views/products/createloanproduct.html index 68adcf58..0cc5a1c1 100755 --- a/app/views/products/createloanproduct.html +++ b/app/views/products/createloanproduct.html @@ -75,7 +75,7 @@
+ min="minDate" />
diff --git a/app/views/products/editcharge.html b/app/views/products/editcharge.html index a190d593..0e58e265 100644 --- a/app/views/products/editcharge.html +++ b/app/views/products/editcharge.html @@ -79,7 +79,7 @@
+ min="minDate" class="form-control"/>
diff --git a/app/views/products/editloanproduct.html b/app/views/products/editloanproduct.html index 64191ef3..1be187e8 100755 --- a/app/views/products/editloanproduct.html +++ b/app/views/products/editloanproduct.html @@ -57,7 +57,7 @@

{{ 'label.heading.details' | translate }}

+ min="minDate" />
diff --git a/app/views/reports/run_reports.html b/app/views/reports/run_reports.html index a2d2d0af..3948cd76 100644 --- a/app/views/reports/run_reports.html +++ b/app/views/reports/run_reports.html @@ -50,7 +50,7 @@
+ date-disabled="disabled(date, mode)" class="form-control" required late-Validate/>
diff --git a/app/views/savings/assignsavingsofficer.html b/app/views/savings/assignsavingsofficer.html index 5535d6cc..bc523b0a 100644 --- a/app/views/savings/assignsavingsofficer.html +++ b/app/views/savings/assignsavingsofficer.html @@ -29,7 +29,7 @@

{{ 'label.heading.assignsavingsofficer' | translate }}

+ ng-model="formData.assignmentDate" is-open="opened" min="minDate" />
diff --git a/app/views/savings/unassignsavingsofficer.html b/app/views/savings/unassignsavingsofficer.html index d23fbc98..22b53818 100644 --- a/app/views/savings/unassignsavingsofficer.html +++ b/app/views/savings/unassignsavingsofficer.html @@ -18,7 +18,7 @@

{{ 'label.heading.unassignsavingsofficer' | translate }}

+ ng-model="formData.unassignedDate" is-open="opened" min="minDate" />
diff --git a/app/views/search/advsearch.html b/app/views/search/advsearch.html index 8431902a..1ea77b80 100644 --- a/app/views/search/advsearch.html +++ b/app/views/search/advsearch.html @@ -56,11 +56,11 @@

{{'label.heading.adhoc.search.query.for.loans' | translate}}

- +
- +
diff --git a/app/views/system/audit.html b/app/views/system/audit.html index 83be395b..326b239a 100644 --- a/app/views/system/audit.html +++ b/app/views/system/audit.html @@ -22,8 +22,8 @@
- - + + @@ -37,8 +37,8 @@
- - + +
From 9d34adf7a859606a503e2a70cc55c9c8a561091d Mon Sep 17 00:00:00 2001 From: Vikas Rathore Date: Tue, 21 Sep 2021 11:47:11 +0100 Subject: [PATCH 002/427] adding vfd workflow --- .github/workflows/vfd-deploy-prod.yml | 49 +++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 .github/workflows/vfd-deploy-prod.yml diff --git a/.github/workflows/vfd-deploy-prod.yml b/.github/workflows/vfd-deploy-prod.yml new file mode 100644 index 00000000..a5ea9945 --- /dev/null +++ b/.github/workflows/vfd-deploy-prod.yml @@ -0,0 +1,49 @@ +name: VFD Ghana Production deployment +on: + workflow_dispatch: + inputs: + environment: + description: 'Environment: Production' + options: ['Production'] + required: true + default: 'Production' + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v1 + - name: Extract branch name + shell: bash + run: echo "##[set-output name=branch;]$(echo ${GITHUB_REF#refs/heads/})" + id: extract_branch + - uses: docker/build-push-action@v1 + with: + username: ${{ secrets.FITER_DOCKER_USERNAME }} + password: ${{ secrets.FITER_DOCKER_PASSWORD }} + registry: docker.pkg.github.com + repository: fiter1/community-app/vfd-frontend + tags: latest + - name: Configure AWS credentials + uses: aws-actions/configure-aws-credentials@v1 + with: + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID_VFD_GHANA_PROD }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY_VFD_GHANA_PROD }} + aws-region: eu-west-2 + - name: Login to Amazon ECR + id: login-ecr + uses: aws-actions/amazon-ecr-login@v1 + - name: Build, tag, and push image to Amazon ECR + id: build-image + env: + ECR_REGISTRY: ${{ steps.login-ecr.outputs.registry }} + ECR_REPOSITORY: vfd-ghana-frontend-prod + IMAGE_TAG: ${{ steps.extract_branch.outputs.branch }} + run: | + # Build a docker container and + # push it to ECR so that it can + # be deployed to ECS. + docker build -t $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG . + docker push $ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG + echo "::set-output name=image::$ECR_REGISTRY/$ECR_REPOSITORY:$IMAGE_TAG" \ No newline at end of file From c3ec0fcc49e018ba8c3ac2304a2ab9e604a66b5d Mon Sep 17 00:00:00 2001 From: ashish141287 Date: Thu, 10 Feb 2022 12:26:04 +0530 Subject: [PATCH 003/427] Create deploy-s3.yaml --- .github/workflows/deploy-s3.yaml | 60 ++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 .github/workflows/deploy-s3.yaml diff --git a/.github/workflows/deploy-s3.yaml b/.github/workflows/deploy-s3.yaml new file mode 100644 index 00000000..2abbca18 --- /dev/null +++ b/.github/workflows/deploy-s3.yaml @@ -0,0 +1,60 @@ +# This workflow uses actions that are not certified by GitHub. +# They are provided by a third-party and are governed by +# separate terms of service, privacy policy, and support +# documentation. +# This workflow will download a prebuilt Ruby version, install dependencies and run tests with Rake +# For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby + +name: Ruby + +on: + push: + branches: [ develop ] + pull_request: + branches: [ develop ] + +jobs: + test: + + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v1 + with: + node-version: 16.x + - name: Set up Ruby + uses: ruby/setup-ruby@v1 + with: + ruby-version: 2.7 + bundler-cache: true # runs 'bundle install' and caches installed gems automatically + - name: Install Grunt and bower + run: | + npm install -g bower + npm install -g grunt-cli + - name: Install Dependecies Using bower + run: | + bower install + - name: Install Node dependencies + run: | + npm install + npm install grunt-contrib-compass --save-dev + - name: Install Gem dependencies + run: | + gem install bundler + gem install compass + bundle install + ls + - name: Build code to deploy + run: | + grunt prod --force + ls + - name: Configure AWS Credentials + uses: aws-actions/configure-aws-credentials@v1 + with: + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + aws-region: ${{ env.AWS_REGION }} + - name: Deploy static site to S3 bucket + run: aws s3 sync ./dist/community-app/ s3://${{ env.AWS_S3_BUCKET }} --delete From b649158da4bfc552d8269e21d9d87380508317f5 Mon Sep 17 00:00:00 2001 From: ashish141287 Date: Thu, 10 Feb 2022 12:42:51 +0530 Subject: [PATCH 004/427] Update deploy-s3.yaml --- .github/workflows/deploy-s3.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/deploy-s3.yaml b/.github/workflows/deploy-s3.yaml index 2abbca18..106fd58a 100644 --- a/.github/workflows/deploy-s3.yaml +++ b/.github/workflows/deploy-s3.yaml @@ -53,8 +53,8 @@ jobs: - name: Configure AWS Credentials uses: aws-actions/configure-aws-credentials@v1 with: - aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} - aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID_FITER }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY_FITER }} aws-region: ${{ env.AWS_REGION }} - name: Deploy static site to S3 bucket - run: aws s3 sync ./dist/community-app/ s3://${{ env.AWS_S3_BUCKET }} --delete + run: aws s3 sync ./dist/community-app/ s3://fiter-mifos-test --delete From a7d137f01ed583cae5b4e3a8eba1fdcaf9b6d56f Mon Sep 17 00:00:00 2001 From: ashish141287 Date: Thu, 10 Feb 2022 12:44:49 +0530 Subject: [PATCH 005/427] Update deploy-s3.yaml --- .github/workflows/deploy-s3.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy-s3.yaml b/.github/workflows/deploy-s3.yaml index 106fd58a..1a2aa219 100644 --- a/.github/workflows/deploy-s3.yaml +++ b/.github/workflows/deploy-s3.yaml @@ -55,6 +55,6 @@ jobs: with: aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID_FITER }} aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY_FITER }} - aws-region: ${{ env.AWS_REGION }} + aws-region: us-east-1 - name: Deploy static site to S3 bucket run: aws s3 sync ./dist/community-app/ s3://fiter-mifos-test --delete From 428a4fe2d2c46d5006d87f90458d340c3eba8f1c Mon Sep 17 00:00:00 2001 From: Magezi Arthur Date: Tue, 22 Feb 2022 09:59:06 +0300 Subject: [PATCH 006/427] Fineract Base Url --- .github/workflows/deploy-s3.yaml | 5 +++++ app/scripts/initialTasks.js | 9 ++++++++- app/scripts/modules/configurations.js | 1 + 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/.github/workflows/deploy-s3.yaml b/.github/workflows/deploy-s3.yaml index 1a2aa219..e4a71970 100644 --- a/.github/workflows/deploy-s3.yaml +++ b/.github/workflows/deploy-s3.yaml @@ -20,6 +20,11 @@ jobs: steps: - uses: actions/checkout@v2 + - name: set env variables + if: endsWith(github.ref, '/develop') + run: | + sed -i 's|$FINERACT_BASE_URL|${{ secrets.FINERACT_BASE_URL_DEV }}|g' app/scripts/modules/configurations.js + - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v1 with: diff --git a/app/scripts/initialTasks.js b/app/scripts/initialTasks.js index bef273bb..9aeb9b5e 100644 --- a/app/scripts/initialTasks.js +++ b/app/scripts/initialTasks.js @@ -1,6 +1,6 @@ (function (mifosX) { - var defineHeaders = function ($httpProvider, $translateProvider, ResourceFactoryProvider, HttpServiceProvider, $idleProvider, $keepaliveProvider, IDLE_DURATION, WARN_DURATION, KEEPALIVE_INTERVAL) { + var defineHeaders = function ($httpProvider, $translateProvider, ResourceFactoryProvider, HttpServiceProvider, $idleProvider, $keepaliveProvider, IDLE_DURATION, WARN_DURATION, KEEPALIVE_INTERVAL, FINERACT_BASE_URL) { var mainLink = getLocation(window.location.href); var baseApiUrl = "https://demo.mifos.io"; var host = ""; @@ -26,6 +26,8 @@ } //accessing from a file system or other servers else { + var baseApiUrlEnv = FINERACT_BASE_URL; + if (mainLink.hostname != "") { baseApiUrl = "https://" + mainLink.hostname + (mainLink.port ? ':' + mainLink.port : ''); } @@ -33,6 +35,11 @@ if (QueryParameters["baseApiUrl"]) { baseApiUrl = QueryParameters["baseApiUrl"]; } + + if(baseApiUrlEnv !== '$FINERACT_BASE_URL'){ + baseApiUrl = baseApiUrlEnv; + } + var queryLink = getLocation(baseApiUrl); host = "https://" + queryLink.hostname + (queryLink.port ? ':' + queryLink.port : ''); portNumber = queryLink.port; diff --git a/app/scripts/modules/configurations.js b/app/scripts/modules/configurations.js index 1be8f6ae..d8c0948e 100644 --- a/app/scripts/modules/configurations.js +++ b/app/scripts/modules/configurations.js @@ -2,6 +2,7 @@ angular.module('configurations', []) .constant('API_VERSION', '/fineract-provider/api/v1') .constant('IDLE_DURATION', 30 * 60) .constant('WARN_DURATION', 10) + .constant('FINERACT_BASE_URL', '$FINERACT_BASE_URL') .constant('KEEPALIVE_INTERVAL', 15 * 60) .constant('SECURITY', 'basicauth'); // Use SECURITY constant as 'oauth' to enable Oauth2 on community app From 4e8f34bb6a056774e9370bc1067626fed6f15693 Mon Sep 17 00:00:00 2001 From: Magezi Arthur Date: Tue, 22 Feb 2022 10:18:28 +0300 Subject: [PATCH 007/427] Update deploy-s3.yaml --- .github/workflows/deploy-s3.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy-s3.yaml b/.github/workflows/deploy-s3.yaml index e4a71970..ab1ac6ba 100644 --- a/.github/workflows/deploy-s3.yaml +++ b/.github/workflows/deploy-s3.yaml @@ -23,7 +23,7 @@ jobs: - name: set env variables if: endsWith(github.ref, '/develop') run: | - sed -i 's|$FINERACT_BASE_URL|${{ secrets.FINERACT_BASE_URL_DEV }}|g' app/scripts/modules/configurations.js + sed -i 's|$FINERACT_BASE_URL|${{ secrets.FINERACT_BASE_URL }}|g' app/scripts/modules/configurations.js - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v1 From 4076f3428366e4e1f2d15d0712f20bd87469ad91 Mon Sep 17 00:00:00 2001 From: ashish141287 Date: Tue, 22 Feb 2022 15:28:02 +0530 Subject: [PATCH 008/427] Update deploy-s3.yaml --- .github/workflows/deploy-s3.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/deploy-s3.yaml b/.github/workflows/deploy-s3.yaml index ab1ac6ba..30d55e87 100644 --- a/.github/workflows/deploy-s3.yaml +++ b/.github/workflows/deploy-s3.yaml @@ -63,3 +63,5 @@ jobs: aws-region: us-east-1 - name: Deploy static site to S3 bucket run: aws s3 sync ./dist/community-app/ s3://fiter-mifos-test --delete + - name: Update Cloudformation + run: aws cloudfront create-invalidation --distribution-id ENWW7DVSUDY3W --paths “*” From 7374879b4b6d75bfc98f78fe15cb7bd109e93df8 Mon Sep 17 00:00:00 2001 From: ashish141287 Date: Tue, 22 Feb 2022 15:49:14 +0530 Subject: [PATCH 009/427] Update deploy-s3.yaml --- .github/workflows/deploy-s3.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy-s3.yaml b/.github/workflows/deploy-s3.yaml index 30d55e87..d54c6928 100644 --- a/.github/workflows/deploy-s3.yaml +++ b/.github/workflows/deploy-s3.yaml @@ -64,4 +64,4 @@ jobs: - name: Deploy static site to S3 bucket run: aws s3 sync ./dist/community-app/ s3://fiter-mifos-test --delete - name: Update Cloudformation - run: aws cloudfront create-invalidation --distribution-id ENWW7DVSUDY3W --paths “*” + run: aws cloudfront create-invalidation --distribution-id ENWW7DVSUDY3W --paths /* From 19f852f1bc85a3e507d7e24ba1facf6d7e3f5af3 Mon Sep 17 00:00:00 2001 From: ashish141287 Date: Wed, 9 Mar 2022 11:29:24 +0530 Subject: [PATCH 010/427] Create Readme.md --- .github/workflows/Readme.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 .github/workflows/Readme.md diff --git a/.github/workflows/Readme.md b/.github/workflows/Readme.md new file mode 100644 index 00000000..066f4c69 --- /dev/null +++ b/.github/workflows/Readme.md @@ -0,0 +1,15 @@ +# Purpose of Automation +In this automation workflow the whenever there is a new commit on the develop branch it is going to + - build it + - deploy to the AWS S3 which is a file storage system + - Invalidate the Cache on Cloudfront +For build we are doing it the same way it is specified in the official repository of MIFOS and once the build is done and its is uploaded to S3 we are +invalidating the current files on the AWS Cloudfront so that it can pull up the new files that are present over in the S3 this step takes some time so once commit is done +it will take around 5 mins to view the changes on the Final website that is + +
https://enterprise-ui.fiter.io
+ +If one needs to create an extra envrionment for its deployment , after creating the cloudfront and doing all the specification we will need to create a subdomain over +there and then we can map it to the origin present in the Cloudfront . +## The architechture looks like this on the AWS side +Screenshot 2022-03-09 at 11 26 01 AM From c10be742abc3081ee3f3b1172f334c2b3aee5e89 Mon Sep 17 00:00:00 2001 From: Mayank Gandhe Date: Mon, 25 Apr 2022 12:46:24 +0530 Subject: [PATCH 011/427] Updated build fiels --- .github/workflows/build.yml | 38 ++++++++++++++ Dockerfile | 7 ++- conf/ca-bundle.pem | 96 +++++++++++++++++++++++++++++++++++ conf/default.conf | 36 +++++++++++++ conf/default.conf.template | 75 +++++++++++++++++++++++++++ conf/nginx.conf | 31 +++++++++++ conf/private-key.pem | 52 +++++++++++++++++++ nginx-conf/server_tokens.conf | 1 + nginx-conf/timeout.conf | 4 ++ 9 files changed, 339 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/build.yml create mode 100644 conf/ca-bundle.pem create mode 100644 conf/default.conf create mode 100644 conf/default.conf.template create mode 100644 conf/nginx.conf create mode 100644 conf/private-key.pem create mode 100644 nginx-conf/server_tokens.conf create mode 100644 nginx-conf/timeout.conf diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 00000000..e31c11d5 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,38 @@ +name: Publish Packages and Images +on: + workflow_dispatch: + push: + branches: + - ameta + - staging + - dev +jobs: + # Version Package + build-server-images: + name: Build Server Images + runs-on: ubuntu-latest + steps: + # Checkout Repository + - name: Checkout Repository + uses: actions/checkout@v2 + # Set Slug + - name: Inject slug/short variables + uses: rlespinasse/github-slug-action@v2.x + + - name: Configure AWS credentials + uses: aws-actions/configure-aws-credentials@v1 + with: + aws-access-key-id: ${{ secrets.AWS_ECR_KEY }} + aws-secret-access-key: ${{ secrets.AWS_ECR_SECRET }} + aws-region: us-east-2 + - name: Login to Amazon ECR + id: login-ecr + uses: aws-actions/amazon-ecr-login@v1 + # Set Server Name + - name: Build and Push to GitHub + uses: docker/build-push-action@v2 + with: + context: . + push: true + tags: | + "916148231619.dkr.ecr.us-east-2.amazonaws.com/fih-ui:latest" \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index 8e724ad8..ef532d3b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -15,5 +15,10 @@ RUN grunt prod FROM nginx:1.19.3 COPY --from=builder /usr/src/app/dist/community-app /usr/share/nginx/html -EXPOSE 80 +COPY ./nginx-conf/* /etc/nginx/conf.d/ +COPY conf/default.conf.template /etc/nginx/conf.d/default.conf.template +COPY conf/nginx.conf /etc/nginx/nginx.conf +COPY conf/ca-bundle.pem /etc/ssl/keys/cert.pem +COPY conf/private-key.pem /etc/ssl/keys/key.pem +EXPOSE 80 443 CMD ["nginx", "-g", "daemon off;"] diff --git a/conf/ca-bundle.pem b/conf/ca-bundle.pem new file mode 100644 index 00000000..5698b601 --- /dev/null +++ b/conf/ca-bundle.pem @@ -0,0 +1,96 @@ +-----BEGIN CERTIFICATE----- +MIIGHzCCBQegAwIBAgISBCHHXN5pV24n9RYnBhqLXfoJMA0GCSqGSIb3DQEBCwUA +MDIxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MQswCQYDVQQD +EwJSMzAeFw0yMTEwMjcwOTE4MTdaFw0yMjAxMjUwOTE4MTZaMBcxFTATBgNVBAMM +DCoucmV2dmluZy5pbzCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAKuo +yCJxvXuKYnNpp8N5ZcFLN6p1TRXxx1wIc/s7OH1JrjHEkAsa3o4JcbYTQelCI0wC +qCurwe5OVo+g1o1couKCW+nMmLzY6puOUwJUFaElk3BHbf/AdR6x/wJFfYuqucPh +ghG+vyG/Ymg+R0WvKvL6GHpCRSILrSzBcsVtk7zcHVKK8FHweEtyqQiZ+dmFdaMB +fO4a73YZBFuzdmraV65fLUWzJPgxoxOY2F5galwFDlamLxGDIk7gTfAfxvSF7pNf +7Gj4CdgepCCkWYhxApJp49wdZHk4ZHorbP0TKwH8M2H8ANYCf3A65E6QxJbk38+t +LuHAeCQ48HfX4+sGavujllX2vJc+whjwphnuIoWMHzau9KFQfK9xPCnFGiQ9gYkJ +B9ofkb3Sbji7LngjJBebqDE8FyAAdyf8aQb5MDaJK+lcz1V+jHrO8mBt6P2cmhr6 +/HKRBxhA20ObIzCa50VW6SNfXUOABXDt8lD+/5/N3nI/AHUBUb7cTL8YNvivTH2m +ge1XoCTKGS+761IR7Ecrucj7/6RmGaRWCN7S6G889Vi9Z4Bxc/t76ieRmnuarNju +DAS2/fgkS++6aaqFrUoBN28ZYyBSrq0Wzv5IGBAr4Bc6bOdVHMIZC7VQ6zZ3D2Fh ++S5oUQT1YfFaNoFfzv6m3bzWIOWaDFtjoOFYIqBnAgMBAAGjggJIMIICRDAOBgNV +HQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYBBQUHAwEGCCsGAQUFBwMCMAwGA1Ud +EwEB/wQCMAAwHQYDVR0OBBYEFAdUmv7BrbqGpqojAC7mgvpHtTTdMB8GA1UdIwQY +MBaAFBQusxe3WFbLrlAJQOYfr52LFMLGMFUGCCsGAQUFBwEBBEkwRzAhBggrBgEF +BQcwAYYVaHR0cDovL3IzLm8ubGVuY3Iub3JnMCIGCCsGAQUFBzAChhZodHRwOi8v +cjMuaS5sZW5jci5vcmcvMBcGA1UdEQQQMA6CDCoucmV2dmluZy5pbzBMBgNVHSAE +RTBDMAgGBmeBDAECATA3BgsrBgEEAYLfEwEBATAoMCYGCCsGAQUFBwIBFhpodHRw +Oi8vY3BzLmxldHNlbmNyeXB0Lm9yZzCCAQUGCisGAQQB1nkCBAIEgfYEgfMA8QB2 +AN+lXqtogk8fbK3uuF9OPlrqzaISpGpejjsSwCBEXCpzAAABfMFB9AsAAAQDAEcw +RQIhALWiFDd8+uY80KcD0Bbb2aXyjImVLXdh3NJ1fRsG1RN2AiBQft6wyM37rs0T +GPzU1f0UWakAMkOxlAY8zbOfxukcOQB3AEalVet1+pEgMLWiiWn0830RLEF0vv1J +uIWr8vxw/m1HAAABfMFB9DQAAAQDAEgwRgIhAJ3Vzp+OhuokYOt1a4h4Gc/r334C +3ziIvQyzFcykeAoRAiEA7ypre0/gxFpj7q6/mO/qiFqn7amYbjRhpRHKHq+WhM4w +DQYJKoZIhvcNAQELBQADggEBAIj1fxsoVooWYz/umhaoeV3jti+1gOy4IdD+v89M +OLFv85BG1xpU8oP9ej97NTnUL0vSTZXtFXr6h6Qh3v/dqVGs2I1K8FRTSjxHi9JI +85jd82MXSBRVlumKHXpJZoSSITh+NqQYfrurxFRVH2pyFHzd6gmxHWaMRz90bNyh +Bjwv0UeIsRfbzV+USP5NERbxU9ADK/5f2/uo1+drCpGUY3hfJtziC5De78X8M+OH +fq9eb/RlnQ+NsHia85cuMtQY4l6Rk/bfbXdk7SiqNiBW1gaD8JF04tLDqGk9oI6h +CPEeRy3iiPSXJqy56u/be9UDMDgBjKUVkUNV1cntSh8Kego= +-----END CERTIFICATE----- +-----BEGIN CERTIFICATE----- +MIIFFjCCAv6gAwIBAgIRAJErCErPDBinU/bWLiWnX1owDQYJKoZIhvcNAQELBQAw +TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh +cmNoIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwHhcNMjAwOTA0MDAwMDAw +WhcNMjUwOTE1MTYwMDAwWjAyMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNTGV0J3Mg +RW5jcnlwdDELMAkGA1UEAxMCUjMwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK +AoIBAQC7AhUozPaglNMPEuyNVZLD+ILxmaZ6QoinXSaqtSu5xUyxr45r+XXIo9cP +R5QUVTVXjJ6oojkZ9YI8QqlObvU7wy7bjcCwXPNZOOftz2nwWgsbvsCUJCWH+jdx +sxPnHKzhm+/b5DtFUkWWqcFTzjTIUu61ru2P3mBw4qVUq7ZtDpelQDRrK9O8Zutm +NHz6a4uPVymZ+DAXXbpyb/uBxa3Shlg9F8fnCbvxK/eG3MHacV3URuPMrSXBiLxg +Z3Vms/EY96Jc5lP/Ooi2R6X/ExjqmAl3P51T+c8B5fWmcBcUr2Ok/5mzk53cU6cG +/kiFHaFpriV1uxPMUgP17VGhi9sVAgMBAAGjggEIMIIBBDAOBgNVHQ8BAf8EBAMC +AYYwHQYDVR0lBBYwFAYIKwYBBQUHAwIGCCsGAQUFBwMBMBIGA1UdEwEB/wQIMAYB +Af8CAQAwHQYDVR0OBBYEFBQusxe3WFbLrlAJQOYfr52LFMLGMB8GA1UdIwQYMBaA +FHm0WeZ7tuXkAXOACIjIGlj26ZtuMDIGCCsGAQUFBwEBBCYwJDAiBggrBgEFBQcw +AoYWaHR0cDovL3gxLmkubGVuY3Iub3JnLzAnBgNVHR8EIDAeMBygGqAYhhZodHRw +Oi8veDEuYy5sZW5jci5vcmcvMCIGA1UdIAQbMBkwCAYGZ4EMAQIBMA0GCysGAQQB +gt8TAQEBMA0GCSqGSIb3DQEBCwUAA4ICAQCFyk5HPqP3hUSFvNVneLKYY611TR6W +PTNlclQtgaDqw+34IL9fzLdwALduO/ZelN7kIJ+m74uyA+eitRY8kc607TkC53wl +ikfmZW4/RvTZ8M6UK+5UzhK8jCdLuMGYL6KvzXGRSgi3yLgjewQtCPkIVz6D2QQz +CkcheAmCJ8MqyJu5zlzyZMjAvnnAT45tRAxekrsu94sQ4egdRCnbWSDtY7kh+BIm +lJNXoB1lBMEKIq4QDUOXoRgffuDghje1WrG9ML+Hbisq/yFOGwXD9RiX8F6sw6W4 +avAuvDszue5L3sz85K+EC4Y/wFVDNvZo4TYXao6Z0f+lQKc0t8DQYzk1OXVu8rp2 +yJMC6alLbBfODALZvYH7n7do1AZls4I9d1P4jnkDrQoxB3UqQ9hVl3LEKQ73xF1O +yK5GhDDX8oVfGKF5u+decIsH4YaTw7mP3GFxJSqv3+0lUFJoi5Lc5da149p90Ids +hCExroL1+7mryIkXPeFM5TgO9r0rvZaBFOvV2z0gp35Z0+L4WPlbuEjN/lxPFin+ +HlUjr8gRsI3qfJOQFy/9rKIJR0Y/8Omwt/8oTWgy1mdeHmmjk7j1nYsvC9JSQ6Zv +MldlTTKB3zhThV1+XWYp6rjd5JW1zbVWEkLNxE7GJThEUG3szgBVGP7pSWTUTsqX +nLRbwHOoq7hHwg== +-----END CERTIFICATE----- +-----BEGIN CERTIFICATE----- +MIIFYDCCBEigAwIBAgIQQAF3ITfU6UK47naqPGQKtzANBgkqhkiG9w0BAQsFADA/ +MSQwIgYDVQQKExtEaWdpdGFsIFNpZ25hdHVyZSBUcnVzdCBDby4xFzAVBgNVBAMT +DkRTVCBSb290IENBIFgzMB4XDTIxMDEyMDE5MTQwM1oXDTI0MDkzMDE4MTQwM1ow +TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh +cmNoIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwggIiMA0GCSqGSIb3DQEB +AQUAA4ICDwAwggIKAoICAQCt6CRz9BQ385ueK1coHIe+3LffOJCMbjzmV6B493XC +ov71am72AE8o295ohmxEk7axY/0UEmu/H9LqMZshftEzPLpI9d1537O4/xLxIZpL +wYqGcWlKZmZsj348cL+tKSIG8+TA5oCu4kuPt5l+lAOf00eXfJlII1PoOK5PCm+D +LtFJV4yAdLbaL9A4jXsDcCEbdfIwPPqPrt3aY6vrFk/CjhFLfs8L6P+1dy70sntK +4EwSJQxwjQMpoOFTJOwT2e4ZvxCzSow/iaNhUd6shweU9GNx7C7ib1uYgeGJXDR5 +bHbvO5BieebbpJovJsXQEOEO3tkQjhb7t/eo98flAgeYjzYIlefiN5YNNnWe+w5y +sR2bvAP5SQXYgd0FtCrWQemsAXaVCg/Y39W9Eh81LygXbNKYwagJZHduRze6zqxZ +Xmidf3LWicUGQSk+WT7dJvUkyRGnWqNMQB9GoZm1pzpRboY7nn1ypxIFeFntPlF4 +FQsDj43QLwWyPntKHEtzBRL8xurgUBN8Q5N0s8p0544fAQjQMNRbcTa0B7rBMDBc +SLeCO5imfWCKoqMpgsy6vYMEG6KDA0Gh1gXxG8K28Kh8hjtGqEgqiNx2mna/H2ql +PRmP6zjzZN7IKw0KKP/32+IVQtQi0Cdd4Xn+GOdwiK1O5tmLOsbdJ1Fu/7xk9TND +TwIDAQABo4IBRjCCAUIwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYw +SwYIKwYBBQUHAQEEPzA9MDsGCCsGAQUFBzAChi9odHRwOi8vYXBwcy5pZGVudHJ1 +c3QuY29tL3Jvb3RzL2RzdHJvb3RjYXgzLnA3YzAfBgNVHSMEGDAWgBTEp7Gkeyxx ++tvhS5B1/8QVYIWJEDBUBgNVHSAETTBLMAgGBmeBDAECATA/BgsrBgEEAYLfEwEB +ATAwMC4GCCsGAQUFBwIBFiJodHRwOi8vY3BzLnJvb3QteDEubGV0c2VuY3J5cHQu +b3JnMDwGA1UdHwQ1MDMwMaAvoC2GK2h0dHA6Ly9jcmwuaWRlbnRydXN0LmNvbS9E +U1RST09UQ0FYM0NSTC5jcmwwHQYDVR0OBBYEFHm0WeZ7tuXkAXOACIjIGlj26Ztu +MA0GCSqGSIb3DQEBCwUAA4IBAQAKcwBslm7/DlLQrt2M51oGrS+o44+/yQoDFVDC +5WxCu2+b9LRPwkSICHXM6webFGJueN7sJ7o5XPWioW5WlHAQU7G75K/QosMrAdSW +9MUgNTP52GE24HGNtLi1qoJFlcDyqSMo59ahy2cI2qBDLKobkx/J3vWraV0T9VuG +WCLKTVXkcGdtwlfFRjlBz4pYg1htmf5X6DYO8A4jqv2Il9DjXA6USbW1FzXSLr9O +he8Y4IWS6wY7bCkjCWDcRQJMEhg76fsO3txE+FiYruq9RUWhiF1myv4Q6W+CyBFC +Dfvp7OOGAN6dEOM4+qR9sdjoSYKEBpsr6GtPAQw4dy753ec5 +-----END CERTIFICATE----- diff --git a/conf/default.conf b/conf/default.conf new file mode 100644 index 00000000..784e6854 --- /dev/null +++ b/conf/default.conf @@ -0,0 +1,36 @@ +server { + listen 80 default_server; + listen [::]:80 default_server; + server_name _; + + server_tokens off; + + proxy_cookie_path / "/; HttpOnly; Secure"; + + location / { + root /usr/share/nginx/html; + try_files $uri $uri/ /index.html; + } + + location ^~ /_health { + types { } default_type "text/plain; charset=utf-8"; + return 200 "UP"; + } + + location /v1/ { + error_log /var/log/nginx/error.log error; + access_log off; + + proxy_pass http://fih:8080/v1/; + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "upgrade"; + proxy_set_header Host $host; + proxy_set_header X-Forwarded-Host $host:$server_port; + proxy_set_header X-Forwarded-Server $host; + proxy_set_header X-Forwarded-Proto $scheme; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Real-IP $remote_addr; + #proxy_pass_header X-XSRF-TOKEN; + } +} \ No newline at end of file diff --git a/conf/default.conf.template b/conf/default.conf.template new file mode 100644 index 00000000..fcc3c730 --- /dev/null +++ b/conf/default.conf.template @@ -0,0 +1,75 @@ +#server { + # listen 80 default_server; + # listen [::]:80 default_server; + # server_name _; + # return 301 https://${DOLLAR}host${DOLLAR}request_uri; + #} + + # site + + server { + listen 80; + listen 443 default_server ssl http2; + listen [::]:443 ssl http2 default_server; + server_name ${FINERACT_DOMAIN}; + + server_tokens off; + + ssl_certificate /etc/ssl/keys/cert.pem; + ssl_certificate_key /etc/ssl/keys/key.pem; + + ssl_protocols TLSv1.2; + ssl_prefer_server_ciphers on; + ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH"; + #ssl_ecdh_curve secp384r1; # Requires nginx >= 1.1.0 + ssl_ecdh_curve prime256v1; # FIX: Android 7.0 bug + ssl_session_cache shared:SSL:10m; + ssl_session_tickets off; # Requires nginx >= 1.5.9 + ssl_stapling on; # Requires nginx >= 1.3.7 + ssl_stapling_verify on; # Requires nginx => 1.3.7 + resolver 8.8.8.8 8.8.4.4 valid=300s; + resolver_timeout 5s; + add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload"; + add_header X-Frame-Options DENY; + add_header X-Content-Type-Options nosniff; + add_header Access-Control-Allow_Credentials true; + add_header 'Access-Control-Allow-Headers' 'Authorization,Accept,Origin,DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range'; + add_header 'Access-Control-Allow-Methods' 'GET,POST,OPTIONS,PUT,DELETE,PATCH'; + + error_page 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 420 422 423 424 426 428 429 431 444 449 450 451 500 501 502 503 504 505 506 507 508 509 510 511 /error.html; + + proxy_cookie_path / "/; HttpOnly; Secure"; + + location / { + root /usr/share/nginx/html; + } + + location ^~ /_health { + types { } default_type "text/plain; charset=utf-8"; + return 200 "UP"; + } + + location ^~ /self { + root /usr/share/nginx/html/self; + } + + location ${FINERACT_BASE_URL} { + error_log /var/log/nginx/error.log error; + access_log off; + + proxy_pass ${FINERACT_PROXY_URL}; + proxy_http_version 1.1; + proxy_ssl_server_name on; + proxy_read_timeout 600; + proxy_set_header Upgrade ${DOLLAR}http_upgrade; + proxy_set_header Connection "upgrade"; + proxy_set_header Host ${DOLLAR}host; + proxy_set_header X-Forwarded-Host ${DOLLAR}host:${DOLLAR}server_port; + proxy_set_header X-Forwarded-Server ${DOLLAR}host; + proxy_set_header X-Forwarded-Proto ${DOLLAR}scheme; + proxy_set_header X-Forwarded-For ${DOLLAR}proxy_add_x_forwarded_for; + proxy_set_header X-Real-IP ${DOLLAR}remote_addr; + #proxy_pass_header X-XSRF-TOKEN; + } + } + \ No newline at end of file diff --git a/conf/nginx.conf b/conf/nginx.conf new file mode 100644 index 00000000..5885bf7f --- /dev/null +++ b/conf/nginx.conf @@ -0,0 +1,31 @@ +user nginx; +worker_processes 1; + +error_log /var/log/nginx/error.log warn; +pid /var/run/nginx.pid; + + +events { + worker_connections 10000; +} + + +http { + include /etc/nginx/mime.types; + default_type application/octet-stream; + + log_format main '$remote_addr - $remote_user [$time_local] "$request" ' + '$status $body_bytes_sent "$http_referer" ' + '"$http_user_agent" "$http_x_forwarded_for"'; + + access_log /var/log/nginx/access.log main; + + sendfile on; + #tcp_nopush on; + + keepalive_timeout 65; + + #gzip on; + + include /etc/nginx/conf.d/*.conf; +} \ No newline at end of file diff --git a/conf/private-key.pem b/conf/private-key.pem new file mode 100644 index 00000000..e3ac0ac0 --- /dev/null +++ b/conf/private-key.pem @@ -0,0 +1,52 @@ +-----BEGIN PRIVATE KEY----- +MIIJRAIBADANBgkqhkiG9w0BAQEFAASCCS4wggkqAgEAAoICAQCrqMgicb17imJz +aafDeWXBSzeqdU0V8cdcCHP7Ozh9Sa4xxJALGt6OCXG2E0HpQiNMAqgrq8HuTlaP +oNaNXKLiglvpzJi82OqbjlMCVBWhJZNwR23/wHUesf8CRX2LqrnD4YIRvr8hv2Jo +PkdFryry+hh6QkUiC60swXLFbZO83B1SivBR8HhLcqkImfnZhXWjAXzuGu92GQRb +s3Zq2leuXy1FsyT4MaMTmNheYGpcBQ5Wpi8RgyJO4E3wH8b0he6TX+xo+AnYHqQg +pFmIcQKSaePcHWR5OGR6K2z9EysB/DNh/ADWAn9wOuROkMSW5N/PrS7hwHgkOPB3 +1+PrBmr7o5ZV9ryXPsIY8KYZ7iKFjB82rvShUHyvcTwpxRokPYGJCQfaH5G90m44 +uy54IyQXm6gxPBcgAHcn/GkG+TA2iSvpXM9Vfox6zvJgbej9nJoa+vxykQcYQNtD +myMwmudFVukjX11DgAVw7fJQ/v+fzd5yPwB1AVG+3Ey/GDb4r0x9poHtV6Akyhkv +u+tSEexHK7nI+/+kZhmkVgje0uhvPPVYvWeAcXP7e+onkZp7mqzY7gwEtv34JEvv +ummqha1KATdvGWMgUq6tFs7+SBgQK+AXOmznVRzCGQu1UOs2dw9hYfkuaFEE9WHx +WjaBX87+pt281iDlmgxbY6DhWCKgZwIDAQABAoICACPxEQZ1PjFRxk9X/fJlxrJ0 +J1GfgeZoW0+fzXj661cASGLPP0Gz/IlM3Ow8l/5ZBL7zh3atXcuhx2oHSSUMEmbO +2KPZXNmdqXGsmSDRrj2xem915Ug5acxlhHlbR3Ao7QBghTVl9OsCAX7GG3IxvRJm +3x0qJwN74mSOlJNV4CsZA2K3CJ5/dRCHD3Fnm/K5iOn6c8f/B8h4cHsq1k6FLPqr +nvULD2CQNA70X8lS8rIVtOzbmttV06ckO+1dGfE04cElwoAv/w+rSr4y6zQwRVOW +rEj4NoNTFWanFQjgLI8b2T5Y32vv1fMPwaHZme/mOB5pqnlGLWGYMnFFWMlq7Jcv +uxQkQSnahf9t4yjv48704QsA2KzfMYaxiEiTOrkrjGdzzhlMqhmqpirekT6zakgU +gR6f3LCnmy0I08ASuD5rqL4Y+uHI/crQ+TjmKW9QIVK2yweJUMT4ZqM12Sqm854e +8hgpuaWFYsnop2Np9T3kYZ7OTMcjhk5iJLsvjDnkAnkS8oXKUUyBzK3i2XgW+Q8T +iJb0p6nYILK2q+ZTm9whUb+/awqYFe6OiYg9LIkzITkmf4Kb29Kq1mZ7nJQ5/dWo +zMcJ9LeMOfefM4C9Gf4RqP2tQTrsFnAg2q3/SLKpJqKIcKd1l+D7jS89bQLMg82S +wVq+mpBxVWViksUIXhXRAoIBAQDdtRj6yBzNqwB55259Tfn8j70Jt/WierINsN9z +xczxwtm1NvjXAXCQ74LLpHbCUFvORMhyRDIJagmZBZ4x5MwB2IKat5W2gaz3qnVf +xpxlVTywLy8DM9B/Fn7/rIDaSGoUMC3IYfc3dUalFZQs/yaeZkvJDHh4oRub63nk +CF3o/clPcEffLP61Sa3VFYOQqnnWZaBRTfAjNoSgs8uXMG1gudOA2gyzDxvAnPoY +XM6TtobHQ+xjuturZLoHoPPiqozaujDsuQFjaYN40CACZV81+Spmo65gUo0isTz/ +vtQA9EBHirAEOO2O0zsfbpxWtERKl2IUlebEQMesdewulqGrAoIBAQDGNfCLLDiN +0tCaN8Uqq0yaHq6hjI/FxLAO06ybhP0k6SCtrCThEgfXRRJ05Cpo1LaQXDlrspt/ +zdzBebSNFNgd5Y7y4Qj0CpVynIuCgVl2ifR9qc+ePK6uCadh9VC3NnlOItTCHkYS +AbhEu9Oq7HB/qaQ9/gixLypjbso3lqRSe67UJb50QCCc+n9C5ZJ/mAetw+ZzkoBw +NipapuHqX9fTF94EpNjDuErYvT/a/BxytlzA3olRnMNSHZ+z2KYYxG8LNKxhpxIL +Vo2OHenKXfhrkL73QM4kyRVfOSvm7qI7INgQHHupno3qTeKxzXM0VpNItLJKpDL2 +XzVj9VjggXg1AoIBAQCCiY1iow5qfgOywvQILTBCZ3NbVIf5GZraesimRtFLi3lZ +vDs5hKx9ebgeJQCTmnLjeRY4STTY3Ck4gtlI8Ti44XzMkclBgwqPbDrdoHgXJd+s +sKtSjGB3Y4x1B2F6pGZo6pEaSawgaBmnO5RaBgT8AKkggAoypFE4NaY4AEEi3MJ5 +1ldK7RgvL2l9a8RiGi3QcVe6Z1Q7t27Rm+sEYswTxnXkiP4vM3cYqpSKYaJz0GV8 +z95QPgX23UC3GypdzCNQ6Y3C448QtGBncstV/c/YXJN9iWQzbIeS5J5Qyk/TG/z4 +4oyOf+JHVNGbySmd11faP1XNXxFXffjS7z+XkrMvAoIBAQClzqN9WK2qfisAhxzJ +l+iJmJcPDw2KLAH3NT1UD4jP4rDyd2mWWcXzX5WT8PZFIYPi+TMTk6Ke4/ACbTQL +PN+ZCtps9LDPrTbdXHUb4+aZ0ceTg4TpYuvhLLQ3rsYprUkGgv6lsDt/fq7N2K21 +cvqc4KVDMonE5qa37Qr+O2cUlOBoGXbbunVNvALPTEojsGLkCldyYKBOvhDqKmYb +8LcToAiaq+ekujrqWk3be0C0+TZYJRCME+4UeDGLefVgDJqzrglx2xeuImZh90YG +glt4Z+pH3Y9UmF3nfWTrVr6hZdU4jQspljgzQ5oakLoJk0676GSpKfhzvqtkBe6m +R8ftAoIBAQCnYpj6T/XqfV1W6rRKJR5D1eLzB7jG1ZxjV+4YhxYxojq1PvJYePG0 +JcFEKGylFp91C7uExxoxv9gF88xqthtmLv+6lLZHD5BLANZAWOY+pJ8YlfpjUNKe +eqEGO5OEHy/8XyZcLt1lSx+1BA/vWRw0yG9mbGgUPwtqNFeCIW89cvrKf0A4+hcW +PrFDYgmwln5ao8Zjo0VTPiqk4HKMXNmiBVlkw/QGjiIowvbcvSGqRGqZApczMQjE +n8zkH4fhDrwp4FIjyEojabZiCS0hp+fDgUCmLpTHNGyoo2uGkBcQwuCMbcr2lHrl +aOt2Jz83tl2gMiU3ZA5sGbsJVPaSS9Ll +-----END PRIVATE KEY----- diff --git a/nginx-conf/server_tokens.conf b/nginx-conf/server_tokens.conf new file mode 100644 index 00000000..b7a0bcba --- /dev/null +++ b/nginx-conf/server_tokens.conf @@ -0,0 +1 @@ +server_tokens off; \ No newline at end of file diff --git a/nginx-conf/timeout.conf b/nginx-conf/timeout.conf new file mode 100644 index 00000000..dfa34ac1 --- /dev/null +++ b/nginx-conf/timeout.conf @@ -0,0 +1,4 @@ +proxy_connect_timeout 600; +proxy_send_timeout 600; +proxy_read_timeout 600; +send_timeout 600; \ No newline at end of file From bd1a98234986cedd038f0280e2bdc65cb40f7d76 Mon Sep 17 00:00:00 2001 From: Mayank Gandhe Date: Mon, 25 Apr 2022 12:49:33 +0530 Subject: [PATCH 012/427] Udpate readme --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 9da5176f..dedc55b8 100644 --- a/README.md +++ b/README.md @@ -175,4 +175,4 @@ https://docs.google.com/document/d/1oXQ2mNojyDFkY_x4RBRPaqS-xhpnDE9coQnbmI3Pobw/ Please read the contribution guidelines -Note: This application will hit the demo server by default. +Note: This application will hit the demo server by default From 7ed6b748be89427568c9e151313f353416f2532b Mon Sep 17 00:00:00 2001 From: ashish141287 Date: Mon, 25 Apr 2022 22:37:02 +0530 Subject: [PATCH 013/427] Update default.conf.template --- conf/default.conf.template | 20 ++------------------ 1 file changed, 2 insertions(+), 18 deletions(-) diff --git a/conf/default.conf.template b/conf/default.conf.template index fcc3c730..4e5bc445 100644 --- a/conf/default.conf.template +++ b/conf/default.conf.template @@ -9,24 +9,8 @@ server { listen 80; - listen 443 default_server ssl http2; - listen [::]:443 ssl http2 default_server; - server_name ${FINERACT_DOMAIN}; + - server_tokens off; - - ssl_certificate /etc/ssl/keys/cert.pem; - ssl_certificate_key /etc/ssl/keys/key.pem; - - ssl_protocols TLSv1.2; - ssl_prefer_server_ciphers on; - ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH"; - #ssl_ecdh_curve secp384r1; # Requires nginx >= 1.1.0 - ssl_ecdh_curve prime256v1; # FIX: Android 7.0 bug - ssl_session_cache shared:SSL:10m; - ssl_session_tickets off; # Requires nginx >= 1.5.9 - ssl_stapling on; # Requires nginx >= 1.3.7 - ssl_stapling_verify on; # Requires nginx => 1.3.7 resolver 8.8.8.8 8.8.4.4 valid=300s; resolver_timeout 5s; add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload"; @@ -72,4 +56,4 @@ #proxy_pass_header X-XSRF-TOKEN; } } - \ No newline at end of file + From c7a2dee6553119f683b638332ed3e0f58b2fe250 Mon Sep 17 00:00:00 2001 From: ashish141287 Date: Mon, 25 Apr 2022 23:00:48 +0530 Subject: [PATCH 014/427] Updated base url --- app/scripts/initialTasks.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/scripts/initialTasks.js b/app/scripts/initialTasks.js index 9aeb9b5e..2d15040a 100644 --- a/app/scripts/initialTasks.js +++ b/app/scripts/initialTasks.js @@ -21,7 +21,7 @@ ResourceFactoryProvider.setTenantIdenetifier(domains[0]); console.log("other than demo server", domains[0]); } - host = "https://" + mainLink.hostname; + host = "http://" + mainLink.hostname; console.log('hostname from mainLink = ', host); } //accessing from a file system or other servers @@ -29,7 +29,7 @@ var baseApiUrlEnv = FINERACT_BASE_URL; if (mainLink.hostname != "") { - baseApiUrl = "https://" + mainLink.hostname + (mainLink.port ? ':' + mainLink.port : ''); + baseApiUrl = "http://" + mainLink.hostname + (mainLink.port ? ':' + mainLink.port : ''); } if (QueryParameters["baseApiUrl"]) { @@ -41,7 +41,7 @@ } var queryLink = getLocation(baseApiUrl); - host = "https://" + queryLink.hostname + (queryLink.port ? ':' + queryLink.port : ''); + host = "http://" + queryLink.hostname + (queryLink.port ? ':' + queryLink.port : ''); portNumber = queryLink.port; $httpProvider.defaults.headers.common['Fineract-Platform-TenantId'] = 'default'; From f81aa80ef9b3daa229d7ab79d6da479cd714f865 Mon Sep 17 00:00:00 2001 From: seyio91 Date: Thu, 21 Jul 2022 10:39:55 +0100 Subject: [PATCH 015/427] update nginx conf file --- .github/workflows/build.yml | 9 +- charts/Chart.lock | 6 + charts/Chart.yaml | 13 + charts/charts/fineract-0.1.2.tgz | Bin 0 -> 35931 bytes charts/ingress.yaml | 58 + charts/template.yaml | 181 + charts/values.yaml | 44 + conf/default.conf.template | 129 +- conf/default.conf.template.bak | 59 + static/html/.nojekyll | 0 static/html/50x.html | 21 + static/html/SpecRunner.html | 98 + static/html/angular/i18n/angular-locale_en.js | 99 + static/html/angular/i18n/angular-locale_es.js | 99 + static/html/angular/i18n/angular-locale_fr.js | 99 + static/html/angular/i18n/angular-locale_hi.js | 99 + static/html/angular/i18n/angular-locale_ka.js | 99 + static/html/angular/i18n/angular-locale_pt.js | 99 + .../html/angular/i18n/angular-locale_zh_cn.js | 99 + .../angular-animate/angular-animate.min.js | 59 + .../ui-bootstrap-tpls.min.js | 10 + .../angular-bootstrap/ui-bootstrap.min.js | 10 + .../tmhDynamicLocale.min.js | 7 + .../angular-mocks/angular-mocks.min.js | 2 + .../angular-resource/angular-resource.min.js | 15 + .../angular-route/angular-route.min.js | 17 + .../angular-sanitize/angular-sanitize.min.js | 18 + .../angular-touch/angular-touch.min.js | 10 + ...gular-translate-loader-static-files.min.js | 6 + .../angular-translate.min.js | 6 + .../dirPagination.min.js | 2 + .../dirPagination.tpl.html | 18 + .../angular-webstorage.min.js | 2 + .../bower_components/angular/angular.min.js | 350 + .../angularjs-file-upload/FileAPI.min.js | 6 + .../ng-file-upload-all.min.js | 4 + .../ng-file-upload-shim.min.js | 2 + .../ng-file-upload.min.js | 3 + .../assets/javascripts/bootstrap.min.js | 7 + .../html/bower_components/chosen/.bower.json | 52 + .../html/bower_components/chosen/.travis.yml | 19 + .../html/bower_components/chosen/LICENSE.md | 23 + static/html/bower_components/chosen/README.md | 52 + .../html/bower_components/chosen/bower.json | 42 + .../bower_components/chosen/chosen-sprite.png | Bin 0 -> 538 bytes .../chosen/chosen-sprite@2x.png | Bin 0 -> 738 bytes .../html/bower_components/chosen/chosen.css | 496 + .../bower_components/chosen/chosen.jquery.js | 1347 + .../chosen/chosen.jquery.min.js | 3 + .../bower_components/chosen/chosen.min.css | 11 + .../bower_components/chosen/chosen.proto.js | 1387 + .../chosen/chosen.proto.min.js | 3 + .../bower_components/chosen/composer.json | 36 + .../html/bower_components/chosen/package.json | 50 + .../bower_components/ckeditor/.bower.json | 30 + .../ckeditor/.github/ISSUE_TEMPLATE | 1 + .../bower_components/ckeditor/.npm/README.md | 79 + .../ckeditor/.npm/assets/ckeditor4.png | Bin 0 -> 236888 bytes .../html/bower_components/ckeditor/.npmignore | 1 + .../html/bower_components/ckeditor/CHANGES.md | 2208 + .../html/bower_components/ckeditor/LICENSE.md | 1436 + .../html/bower_components/ckeditor/README.md | 82 + .../bower_components/ckeditor/SECURITY.md | 10 + .../ckeditor/adapters/jquery.js | 10 + .../ckeditor/bender-runner.config.json | 16 + .../html/bower_components/ckeditor/bower.json | 10 + .../bower_components/ckeditor/ckeditor.js | 1301 + .../bower_components/ckeditor/composer.json | 20 + .../html/bower_components/ckeditor/config.js | 38 + .../bower_components/ckeditor/contents.css | 208 + .../ckeditor/lang/_translationstatus.txt | 63 + .../html/bower_components/ckeditor/lang/af.js | 5 + .../html/bower_components/ckeditor/lang/ar.js | 5 + .../html/bower_components/ckeditor/lang/az.js | 5 + .../html/bower_components/ckeditor/lang/bg.js | 5 + .../html/bower_components/ckeditor/lang/bn.js | 5 + .../html/bower_components/ckeditor/lang/bs.js | 5 + .../html/bower_components/ckeditor/lang/ca.js | 5 + .../html/bower_components/ckeditor/lang/cs.js | 5 + .../html/bower_components/ckeditor/lang/cy.js | 5 + .../html/bower_components/ckeditor/lang/da.js | 5 + .../bower_components/ckeditor/lang/de-ch.js | 5 + .../html/bower_components/ckeditor/lang/de.js | 5 + .../html/bower_components/ckeditor/lang/el.js | 5 + .../bower_components/ckeditor/lang/en-au.js | 5 + .../bower_components/ckeditor/lang/en-ca.js | 5 + .../bower_components/ckeditor/lang/en-gb.js | 5 + .../html/bower_components/ckeditor/lang/en.js | 5 + .../html/bower_components/ckeditor/lang/eo.js | 5 + .../bower_components/ckeditor/lang/es-mx.js | 5 + .../html/bower_components/ckeditor/lang/es.js | 5 + .../html/bower_components/ckeditor/lang/et.js | 5 + .../html/bower_components/ckeditor/lang/eu.js | 5 + .../html/bower_components/ckeditor/lang/fa.js | 5 + .../html/bower_components/ckeditor/lang/fi.js | 5 + .../html/bower_components/ckeditor/lang/fo.js | 5 + .../bower_components/ckeditor/lang/fr-ca.js | 5 + .../html/bower_components/ckeditor/lang/fr.js | 5 + .../html/bower_components/ckeditor/lang/gl.js | 5 + .../html/bower_components/ckeditor/lang/gu.js | 5 + .../html/bower_components/ckeditor/lang/he.js | 5 + .../html/bower_components/ckeditor/lang/hi.js | 5 + .../html/bower_components/ckeditor/lang/hr.js | 5 + .../html/bower_components/ckeditor/lang/hu.js | 5 + .../html/bower_components/ckeditor/lang/id.js | 5 + .../html/bower_components/ckeditor/lang/is.js | 5 + .../html/bower_components/ckeditor/lang/it.js | 5 + .../html/bower_components/ckeditor/lang/ja.js | 5 + .../html/bower_components/ckeditor/lang/ka.js | 5 + .../html/bower_components/ckeditor/lang/km.js | 5 + .../html/bower_components/ckeditor/lang/ko.js | 5 + .../html/bower_components/ckeditor/lang/ku.js | 5 + .../html/bower_components/ckeditor/lang/lt.js | 5 + .../html/bower_components/ckeditor/lang/lv.js | 5 + .../html/bower_components/ckeditor/lang/mk.js | 5 + .../html/bower_components/ckeditor/lang/mn.js | 5 + .../html/bower_components/ckeditor/lang/ms.js | 5 + .../html/bower_components/ckeditor/lang/nb.js | 5 + .../html/bower_components/ckeditor/lang/nl.js | 5 + .../html/bower_components/ckeditor/lang/no.js | 5 + .../html/bower_components/ckeditor/lang/oc.js | 5 + .../html/bower_components/ckeditor/lang/pl.js | 5 + .../bower_components/ckeditor/lang/pt-br.js | 5 + .../html/bower_components/ckeditor/lang/pt.js | 5 + .../html/bower_components/ckeditor/lang/ro.js | 5 + .../html/bower_components/ckeditor/lang/ru.js | 5 + .../html/bower_components/ckeditor/lang/si.js | 5 + .../html/bower_components/ckeditor/lang/sk.js | 5 + .../html/bower_components/ckeditor/lang/sl.js | 5 + .../html/bower_components/ckeditor/lang/sq.js | 5 + .../bower_components/ckeditor/lang/sr-latn.js | 5 + .../html/bower_components/ckeditor/lang/sr.js | 5 + .../html/bower_components/ckeditor/lang/sv.js | 5 + .../html/bower_components/ckeditor/lang/th.js | 5 + .../html/bower_components/ckeditor/lang/tr.js | 5 + .../html/bower_components/ckeditor/lang/tt.js | 5 + .../html/bower_components/ckeditor/lang/ug.js | 5 + .../html/bower_components/ckeditor/lang/uk.js | 5 + .../html/bower_components/ckeditor/lang/vi.js | 5 + .../bower_components/ckeditor/lang/zh-cn.js | 5 + .../html/bower_components/ckeditor/lang/zh.js | 5 + .../bower_components/ckeditor/package.json | 27 + .../plugins/a11yhelp/dialogs/a11yhelp.js | 10 + .../dialogs/lang/_translationstatus.txt | 25 + .../plugins/a11yhelp/dialogs/lang/af.js | 11 + .../plugins/a11yhelp/dialogs/lang/ar.js | 11 + .../plugins/a11yhelp/dialogs/lang/az.js | 11 + .../plugins/a11yhelp/dialogs/lang/bg.js | 11 + .../plugins/a11yhelp/dialogs/lang/ca.js | 13 + .../plugins/a11yhelp/dialogs/lang/cs.js | 12 + .../plugins/a11yhelp/dialogs/lang/cy.js | 11 + .../plugins/a11yhelp/dialogs/lang/da.js | 11 + .../plugins/a11yhelp/dialogs/lang/de-ch.js | 13 + .../plugins/a11yhelp/dialogs/lang/de.js | 13 + .../plugins/a11yhelp/dialogs/lang/el.js | 13 + .../plugins/a11yhelp/dialogs/lang/en-au.js | 11 + .../plugins/a11yhelp/dialogs/lang/en-gb.js | 11 + .../plugins/a11yhelp/dialogs/lang/en.js | 11 + .../plugins/a11yhelp/dialogs/lang/eo.js | 13 + .../plugins/a11yhelp/dialogs/lang/es-mx.js | 13 + .../plugins/a11yhelp/dialogs/lang/es.js | 13 + .../plugins/a11yhelp/dialogs/lang/et.js | 11 + .../plugins/a11yhelp/dialogs/lang/eu.js | 12 + .../plugins/a11yhelp/dialogs/lang/fa.js | 11 + .../plugins/a11yhelp/dialogs/lang/fi.js | 11 + .../plugins/a11yhelp/dialogs/lang/fo.js | 11 + .../plugins/a11yhelp/dialogs/lang/fr-ca.js | 11 + .../plugins/a11yhelp/dialogs/lang/fr.js | 13 + .../plugins/a11yhelp/dialogs/lang/gl.js | 12 + .../plugins/a11yhelp/dialogs/lang/gu.js | 11 + .../plugins/a11yhelp/dialogs/lang/he.js | 11 + .../plugins/a11yhelp/dialogs/lang/hi.js | 11 + .../plugins/a11yhelp/dialogs/lang/hr.js | 11 + .../plugins/a11yhelp/dialogs/lang/hu.js | 12 + .../plugins/a11yhelp/dialogs/lang/id.js | 11 + .../plugins/a11yhelp/dialogs/lang/it.js | 13 + .../plugins/a11yhelp/dialogs/lang/ja.js | 9 + .../plugins/a11yhelp/dialogs/lang/km.js | 11 + .../plugins/a11yhelp/dialogs/lang/ko.js | 10 + .../plugins/a11yhelp/dialogs/lang/ku.js | 11 + .../plugins/a11yhelp/dialogs/lang/lt.js | 11 + .../plugins/a11yhelp/dialogs/lang/lv.js | 12 + .../plugins/a11yhelp/dialogs/lang/mk.js | 11 + .../plugins/a11yhelp/dialogs/lang/mn.js | 11 + .../plugins/a11yhelp/dialogs/lang/nb.js | 12 + .../plugins/a11yhelp/dialogs/lang/nl.js | 12 + .../plugins/a11yhelp/dialogs/lang/no.js | 11 + .../plugins/a11yhelp/dialogs/lang/oc.js | 12 + .../plugins/a11yhelp/dialogs/lang/pl.js | 13 + .../plugins/a11yhelp/dialogs/lang/pt-br.js | 13 + .../plugins/a11yhelp/dialogs/lang/pt.js | 12 + .../plugins/a11yhelp/dialogs/lang/ro.js | 12 + .../plugins/a11yhelp/dialogs/lang/ru.js | 11 + .../plugins/a11yhelp/dialogs/lang/si.js | 10 + .../plugins/a11yhelp/dialogs/lang/sk.js | 11 + .../plugins/a11yhelp/dialogs/lang/sl.js | 11 + .../plugins/a11yhelp/dialogs/lang/sq.js | 12 + .../plugins/a11yhelp/dialogs/lang/sr-latn.js | 12 + .../plugins/a11yhelp/dialogs/lang/sr.js | 12 + .../plugins/a11yhelp/dialogs/lang/sv.js | 11 + .../plugins/a11yhelp/dialogs/lang/th.js | 11 + .../plugins/a11yhelp/dialogs/lang/tr.js | 12 + .../plugins/a11yhelp/dialogs/lang/tt.js | 11 + .../plugins/a11yhelp/dialogs/lang/ug.js | 12 + .../plugins/a11yhelp/dialogs/lang/uk.js | 12 + .../plugins/a11yhelp/dialogs/lang/vi.js | 11 + .../plugins/a11yhelp/dialogs/lang/zh-cn.js | 9 + .../plugins/a11yhelp/dialogs/lang/zh.js | 9 + .../ckeditor/plugins/about/dialogs/about.js | 8 + .../about/dialogs/hidpi/logo_ckeditor.png | Bin 0 -> 12236 bytes .../plugins/about/dialogs/logo_ckeditor.png | Bin 0 -> 5650 bytes .../ckeditor/plugins/adobeair/plugin.js | 9 + .../ckeditor/plugins/autocomplete/plugin.js | 25 + .../plugins/autocomplete/skins/default.css | 38 + .../ckeditor/plugins/autoembed/lang/ar.js | 1 + .../ckeditor/plugins/autoembed/lang/az.js | 1 + .../ckeditor/plugins/autoembed/lang/bg.js | 1 + .../ckeditor/plugins/autoembed/lang/ca.js | 1 + .../ckeditor/plugins/autoembed/lang/cs.js | 1 + .../ckeditor/plugins/autoembed/lang/da.js | 1 + .../ckeditor/plugins/autoembed/lang/de-ch.js | 1 + .../ckeditor/plugins/autoembed/lang/de.js | 1 + .../ckeditor/plugins/autoembed/lang/el.js | 1 + .../ckeditor/plugins/autoembed/lang/en-au.js | 1 + .../ckeditor/plugins/autoembed/lang/en.js | 1 + .../ckeditor/plugins/autoembed/lang/eo.js | 1 + .../ckeditor/plugins/autoembed/lang/es-mx.js | 1 + .../ckeditor/plugins/autoembed/lang/es.js | 1 + .../ckeditor/plugins/autoembed/lang/et.js | 1 + .../ckeditor/plugins/autoembed/lang/eu.js | 1 + .../ckeditor/plugins/autoembed/lang/fa.js | 1 + .../ckeditor/plugins/autoembed/lang/fr.js | 1 + .../ckeditor/plugins/autoembed/lang/gl.js | 1 + .../ckeditor/plugins/autoembed/lang/hr.js | 1 + .../ckeditor/plugins/autoembed/lang/hu.js | 1 + .../ckeditor/plugins/autoembed/lang/id.js | 1 + .../ckeditor/plugins/autoembed/lang/it.js | 1 + .../ckeditor/plugins/autoembed/lang/ja.js | 1 + .../ckeditor/plugins/autoembed/lang/km.js | 1 + .../ckeditor/plugins/autoembed/lang/ko.js | 1 + .../ckeditor/plugins/autoembed/lang/ku.js | 1 + .../ckeditor/plugins/autoembed/lang/lt.js | 1 + .../ckeditor/plugins/autoembed/lang/lv.js | 1 + .../ckeditor/plugins/autoembed/lang/mk.js | 1 + .../ckeditor/plugins/autoembed/lang/nb.js | 1 + .../ckeditor/plugins/autoembed/lang/nl.js | 1 + .../ckeditor/plugins/autoembed/lang/oc.js | 1 + .../ckeditor/plugins/autoembed/lang/pl.js | 1 + .../ckeditor/plugins/autoembed/lang/pt-br.js | 1 + .../ckeditor/plugins/autoembed/lang/pt.js | 1 + .../ckeditor/plugins/autoembed/lang/ro.js | 1 + .../ckeditor/plugins/autoembed/lang/ru.js | 1 + .../ckeditor/plugins/autoembed/lang/sk.js | 1 + .../ckeditor/plugins/autoembed/lang/sq.js | 1 + .../plugins/autoembed/lang/sr-latn.js | 1 + .../ckeditor/plugins/autoembed/lang/sr.js | 1 + .../ckeditor/plugins/autoembed/lang/sv.js | 1 + .../ckeditor/plugins/autoembed/lang/tr.js | 1 + .../ckeditor/plugins/autoembed/lang/ug.js | 1 + .../ckeditor/plugins/autoembed/lang/uk.js | 1 + .../ckeditor/plugins/autoembed/lang/vi.js | 1 + .../ckeditor/plugins/autoembed/lang/zh-cn.js | 1 + .../ckeditor/plugins/autoembed/lang/zh.js | 1 + .../ckeditor/plugins/autoembed/plugin.js | 9 + .../ckeditor/plugins/autogrow/plugin.js | 8 + .../ckeditor/plugins/autolink/plugin.js | 8 + .../ckeditor/plugins/balloonpanel/plugin.js | 22 + .../balloonpanel/skins/kama/balloonpanel.css | 220 + .../skins/moono-lisa/balloonpanel.css | 223 + .../skins/moono-lisa/images/close.png | Bin 0 -> 615 bytes .../skins/moono-lisa/images/hidpi/close.png | Bin 0 -> 1259 bytes .../balloonpanel/skins/moono/balloonpanel.css | 237 + .../balloonpanel/skins/moono/images/close.png | Bin 0 -> 824 bytes .../skins/moono/images/hidpi/close.png | Bin 0 -> 1271 bytes .../ckeditor/plugins/balloontoolbar/plugin.js | 20 + .../plugins/balloontoolbar/skins/default.css | 95 + .../skins/kama/balloontoolbar.css | 30 + .../skins/moono-lisa/balloontoolbar.css | 44 + .../skins/moono/balloontoolbar.css | 34 + .../ckeditor/plugins/bbcode/plugin.js | 23 + .../ckeditor/plugins/bidi/icons/bidiltr.png | Bin 0 -> 471 bytes .../ckeditor/plugins/bidi/icons/bidirtl.png | Bin 0 -> 474 bytes .../plugins/bidi/icons/hidpi/bidiltr.png | Bin 0 -> 872 bytes .../plugins/bidi/icons/hidpi/bidirtl.png | Bin 0 -> 945 bytes .../ckeditor/plugins/bidi/lang/af.js | 1 + .../ckeditor/plugins/bidi/lang/ar.js | 1 + .../ckeditor/plugins/bidi/lang/az.js | 1 + .../ckeditor/plugins/bidi/lang/bg.js | 1 + .../ckeditor/plugins/bidi/lang/bn.js | 1 + .../ckeditor/plugins/bidi/lang/bs.js | 1 + .../ckeditor/plugins/bidi/lang/ca.js | 1 + .../ckeditor/plugins/bidi/lang/cs.js | 1 + .../ckeditor/plugins/bidi/lang/cy.js | 1 + .../ckeditor/plugins/bidi/lang/da.js | 1 + .../ckeditor/plugins/bidi/lang/de-ch.js | 1 + .../ckeditor/plugins/bidi/lang/de.js | 1 + .../ckeditor/plugins/bidi/lang/el.js | 1 + .../ckeditor/plugins/bidi/lang/en-au.js | 1 + .../ckeditor/plugins/bidi/lang/en-ca.js | 1 + .../ckeditor/plugins/bidi/lang/en-gb.js | 1 + .../ckeditor/plugins/bidi/lang/en.js | 1 + .../ckeditor/plugins/bidi/lang/eo.js | 1 + .../ckeditor/plugins/bidi/lang/es-mx.js | 1 + .../ckeditor/plugins/bidi/lang/es.js | 1 + .../ckeditor/plugins/bidi/lang/et.js | 1 + .../ckeditor/plugins/bidi/lang/eu.js | 1 + .../ckeditor/plugins/bidi/lang/fa.js | 1 + .../ckeditor/plugins/bidi/lang/fi.js | 1 + .../ckeditor/plugins/bidi/lang/fo.js | 1 + .../ckeditor/plugins/bidi/lang/fr-ca.js | 1 + .../ckeditor/plugins/bidi/lang/fr.js | 1 + .../ckeditor/plugins/bidi/lang/gl.js | 1 + .../ckeditor/plugins/bidi/lang/gu.js | 1 + .../ckeditor/plugins/bidi/lang/he.js | 1 + .../ckeditor/plugins/bidi/lang/hi.js | 1 + .../ckeditor/plugins/bidi/lang/hr.js | 1 + .../ckeditor/plugins/bidi/lang/hu.js | 1 + .../ckeditor/plugins/bidi/lang/id.js | 1 + .../ckeditor/plugins/bidi/lang/is.js | 1 + .../ckeditor/plugins/bidi/lang/it.js | 1 + .../ckeditor/plugins/bidi/lang/ja.js | 1 + .../ckeditor/plugins/bidi/lang/ka.js | 1 + .../ckeditor/plugins/bidi/lang/km.js | 1 + .../ckeditor/plugins/bidi/lang/ko.js | 1 + .../ckeditor/plugins/bidi/lang/ku.js | 1 + .../ckeditor/plugins/bidi/lang/lt.js | 1 + .../ckeditor/plugins/bidi/lang/lv.js | 1 + .../ckeditor/plugins/bidi/lang/mk.js | 1 + .../ckeditor/plugins/bidi/lang/mn.js | 1 + .../ckeditor/plugins/bidi/lang/ms.js | 1 + .../ckeditor/plugins/bidi/lang/nb.js | 1 + .../ckeditor/plugins/bidi/lang/nl.js | 1 + .../ckeditor/plugins/bidi/lang/no.js | 1 + .../ckeditor/plugins/bidi/lang/oc.js | 1 + .../ckeditor/plugins/bidi/lang/pl.js | 1 + .../ckeditor/plugins/bidi/lang/pt-br.js | 1 + .../ckeditor/plugins/bidi/lang/pt.js | 1 + .../ckeditor/plugins/bidi/lang/ro.js | 1 + .../ckeditor/plugins/bidi/lang/ru.js | 1 + .../ckeditor/plugins/bidi/lang/si.js | 1 + .../ckeditor/plugins/bidi/lang/sk.js | 1 + .../ckeditor/plugins/bidi/lang/sl.js | 1 + .../ckeditor/plugins/bidi/lang/sq.js | 1 + .../ckeditor/plugins/bidi/lang/sr-latn.js | 1 + .../ckeditor/plugins/bidi/lang/sr.js | 1 + .../ckeditor/plugins/bidi/lang/sv.js | 1 + .../ckeditor/plugins/bidi/lang/th.js | 1 + .../ckeditor/plugins/bidi/lang/tr.js | 1 + .../ckeditor/plugins/bidi/lang/tt.js | 1 + .../ckeditor/plugins/bidi/lang/ug.js | 1 + .../ckeditor/plugins/bidi/lang/uk.js | 1 + .../ckeditor/plugins/bidi/lang/vi.js | 1 + .../ckeditor/plugins/bidi/lang/zh-cn.js | 1 + .../ckeditor/plugins/bidi/lang/zh.js | 1 + .../ckeditor/plugins/bidi/plugin.js | 13 + .../plugins/clipboard/dialogs/paste.js | 11 + .../ckeditor/plugins/cloudservices/plugin.js | 7 + .../codesnippet/dialogs/codesnippet.js | 6 + .../plugins/codesnippet/icons/codesnippet.png | Bin 0 -> 532 bytes .../codesnippet/icons/hidpi/codesnippet.png | Bin 0 -> 1046 bytes .../ckeditor/plugins/codesnippet/lang/ar.js | 5 + .../ckeditor/plugins/codesnippet/lang/az.js | 5 + .../ckeditor/plugins/codesnippet/lang/bg.js | 5 + .../ckeditor/plugins/codesnippet/lang/ca.js | 5 + .../ckeditor/plugins/codesnippet/lang/cs.js | 5 + .../ckeditor/plugins/codesnippet/lang/da.js | 5 + .../plugins/codesnippet/lang/de-ch.js | 5 + .../ckeditor/plugins/codesnippet/lang/de.js | 5 + .../ckeditor/plugins/codesnippet/lang/el.js | 5 + .../plugins/codesnippet/lang/en-au.js | 5 + .../plugins/codesnippet/lang/en-gb.js | 5 + .../ckeditor/plugins/codesnippet/lang/en.js | 5 + .../ckeditor/plugins/codesnippet/lang/eo.js | 5 + .../plugins/codesnippet/lang/es-mx.js | 5 + .../ckeditor/plugins/codesnippet/lang/es.js | 5 + .../ckeditor/plugins/codesnippet/lang/et.js | 5 + .../ckeditor/plugins/codesnippet/lang/eu.js | 5 + .../ckeditor/plugins/codesnippet/lang/fa.js | 5 + .../ckeditor/plugins/codesnippet/lang/fi.js | 5 + .../plugins/codesnippet/lang/fr-ca.js | 5 + .../ckeditor/plugins/codesnippet/lang/fr.js | 5 + .../ckeditor/plugins/codesnippet/lang/gl.js | 5 + .../ckeditor/plugins/codesnippet/lang/he.js | 5 + .../ckeditor/plugins/codesnippet/lang/hr.js | 5 + .../ckeditor/plugins/codesnippet/lang/hu.js | 5 + .../ckeditor/plugins/codesnippet/lang/id.js | 5 + .../ckeditor/plugins/codesnippet/lang/it.js | 5 + .../ckeditor/plugins/codesnippet/lang/ja.js | 5 + .../ckeditor/plugins/codesnippet/lang/km.js | 5 + .../ckeditor/plugins/codesnippet/lang/ko.js | 5 + .../ckeditor/plugins/codesnippet/lang/ku.js | 5 + .../ckeditor/plugins/codesnippet/lang/lt.js | 5 + .../ckeditor/plugins/codesnippet/lang/lv.js | 5 + .../ckeditor/plugins/codesnippet/lang/nb.js | 5 + .../ckeditor/plugins/codesnippet/lang/nl.js | 5 + .../ckeditor/plugins/codesnippet/lang/no.js | 5 + .../ckeditor/plugins/codesnippet/lang/oc.js | 5 + .../ckeditor/plugins/codesnippet/lang/pl.js | 5 + .../plugins/codesnippet/lang/pt-br.js | 5 + .../ckeditor/plugins/codesnippet/lang/pt.js | 5 + .../ckeditor/plugins/codesnippet/lang/ro.js | 5 + .../ckeditor/plugins/codesnippet/lang/ru.js | 5 + .../ckeditor/plugins/codesnippet/lang/sk.js | 5 + .../ckeditor/plugins/codesnippet/lang/sl.js | 5 + .../ckeditor/plugins/codesnippet/lang/sq.js | 5 + .../plugins/codesnippet/lang/sr-latn.js | 5 + .../ckeditor/plugins/codesnippet/lang/sr.js | 5 + .../ckeditor/plugins/codesnippet/lang/sv.js | 5 + .../ckeditor/plugins/codesnippet/lang/th.js | 5 + .../ckeditor/plugins/codesnippet/lang/tr.js | 5 + .../ckeditor/plugins/codesnippet/lang/tt.js | 5 + .../ckeditor/plugins/codesnippet/lang/ug.js | 5 + .../ckeditor/plugins/codesnippet/lang/uk.js | 5 + .../ckeditor/plugins/codesnippet/lang/vi.js | 5 + .../plugins/codesnippet/lang/zh-cn.js | 5 + .../ckeditor/plugins/codesnippet/lang/zh.js | 5 + .../ckeditor/plugins/codesnippet/plugin.js | 12 + .../plugins/codesnippetgeshi/plugin.js | 10 + .../plugins/colorbutton/icons/bgcolor.png | Bin 0 -> 616 bytes .../colorbutton/icons/hidpi/bgcolor.png | Bin 0 -> 1249 bytes .../colorbutton/icons/hidpi/textcolor.png | Bin 0 -> 1312 bytes .../plugins/colorbutton/icons/textcolor.png | Bin 0 -> 757 bytes .../ckeditor/plugins/colorbutton/lang/af.js | 3 + .../ckeditor/plugins/colorbutton/lang/ar.js | 3 + .../ckeditor/plugins/colorbutton/lang/az.js | 3 + .../ckeditor/plugins/colorbutton/lang/bg.js | 3 + .../ckeditor/plugins/colorbutton/lang/bn.js | 3 + .../ckeditor/plugins/colorbutton/lang/bs.js | 3 + .../ckeditor/plugins/colorbutton/lang/ca.js | 3 + .../ckeditor/plugins/colorbutton/lang/cs.js | 3 + .../ckeditor/plugins/colorbutton/lang/cy.js | 3 + .../ckeditor/plugins/colorbutton/lang/da.js | 3 + .../plugins/colorbutton/lang/de-ch.js | 3 + .../ckeditor/plugins/colorbutton/lang/de.js | 3 + .../ckeditor/plugins/colorbutton/lang/el.js | 3 + .../plugins/colorbutton/lang/en-au.js | 3 + .../plugins/colorbutton/lang/en-ca.js | 3 + .../plugins/colorbutton/lang/en-gb.js | 3 + .../ckeditor/plugins/colorbutton/lang/en.js | 3 + .../ckeditor/plugins/colorbutton/lang/eo.js | 3 + .../plugins/colorbutton/lang/es-mx.js | 3 + .../ckeditor/plugins/colorbutton/lang/es.js | 3 + .../ckeditor/plugins/colorbutton/lang/et.js | 3 + .../ckeditor/plugins/colorbutton/lang/eu.js | 3 + .../ckeditor/plugins/colorbutton/lang/fa.js | 3 + .../ckeditor/plugins/colorbutton/lang/fi.js | 3 + .../ckeditor/plugins/colorbutton/lang/fo.js | 3 + .../plugins/colorbutton/lang/fr-ca.js | 3 + .../ckeditor/plugins/colorbutton/lang/fr.js | 3 + .../ckeditor/plugins/colorbutton/lang/gl.js | 3 + .../ckeditor/plugins/colorbutton/lang/gu.js | 3 + .../ckeditor/plugins/colorbutton/lang/he.js | 3 + .../ckeditor/plugins/colorbutton/lang/hi.js | 3 + .../ckeditor/plugins/colorbutton/lang/hr.js | 3 + .../ckeditor/plugins/colorbutton/lang/hu.js | 3 + .../ckeditor/plugins/colorbutton/lang/id.js | 3 + .../ckeditor/plugins/colorbutton/lang/is.js | 3 + .../ckeditor/plugins/colorbutton/lang/it.js | 3 + .../ckeditor/plugins/colorbutton/lang/ja.js | 3 + .../ckeditor/plugins/colorbutton/lang/ka.js | 3 + .../ckeditor/plugins/colorbutton/lang/km.js | 3 + .../ckeditor/plugins/colorbutton/lang/ko.js | 3 + .../ckeditor/plugins/colorbutton/lang/ku.js | 3 + .../ckeditor/plugins/colorbutton/lang/lt.js | 3 + .../ckeditor/plugins/colorbutton/lang/lv.js | 3 + .../ckeditor/plugins/colorbutton/lang/mk.js | 3 + .../ckeditor/plugins/colorbutton/lang/mn.js | 3 + .../ckeditor/plugins/colorbutton/lang/ms.js | 3 + .../ckeditor/plugins/colorbutton/lang/nb.js | 3 + .../ckeditor/plugins/colorbutton/lang/nl.js | 3 + .../ckeditor/plugins/colorbutton/lang/no.js | 3 + .../ckeditor/plugins/colorbutton/lang/oc.js | 3 + .../ckeditor/plugins/colorbutton/lang/pl.js | 3 + .../plugins/colorbutton/lang/pt-br.js | 3 + .../ckeditor/plugins/colorbutton/lang/pt.js | 3 + .../ckeditor/plugins/colorbutton/lang/ro.js | 3 + .../ckeditor/plugins/colorbutton/lang/ru.js | 3 + .../ckeditor/plugins/colorbutton/lang/si.js | 3 + .../ckeditor/plugins/colorbutton/lang/sk.js | 3 + .../ckeditor/plugins/colorbutton/lang/sl.js | 3 + .../ckeditor/plugins/colorbutton/lang/sq.js | 4 + .../plugins/colorbutton/lang/sr-latn.js | 3 + .../ckeditor/plugins/colorbutton/lang/sr.js | 3 + .../ckeditor/plugins/colorbutton/lang/sv.js | 3 + .../ckeditor/plugins/colorbutton/lang/th.js | 3 + .../ckeditor/plugins/colorbutton/lang/tr.js | 3 + .../ckeditor/plugins/colorbutton/lang/tt.js | 3 + .../ckeditor/plugins/colorbutton/lang/ug.js | 3 + .../ckeditor/plugins/colorbutton/lang/uk.js | 3 + .../ckeditor/plugins/colorbutton/lang/vi.js | 3 + .../plugins/colorbutton/lang/zh-cn.js | 2 + .../ckeditor/plugins/colorbutton/lang/zh.js | 2 + .../ckeditor/plugins/colorbutton/plugin.js | 30 + .../colordialog/dialogs/colordialog.css | 20 + .../colordialog/dialogs/colordialog.js | 14 + .../ckeditor/plugins/colordialog/lang/af.js | 1 + .../ckeditor/plugins/colordialog/lang/ar.js | 1 + .../ckeditor/plugins/colordialog/lang/az.js | 1 + .../ckeditor/plugins/colordialog/lang/bg.js | 1 + .../ckeditor/plugins/colordialog/lang/bn.js | 1 + .../ckeditor/plugins/colordialog/lang/bs.js | 1 + .../ckeditor/plugins/colordialog/lang/ca.js | 1 + .../ckeditor/plugins/colordialog/lang/cs.js | 1 + .../ckeditor/plugins/colordialog/lang/cy.js | 1 + .../ckeditor/plugins/colordialog/lang/da.js | 1 + .../plugins/colordialog/lang/de-ch.js | 1 + .../ckeditor/plugins/colordialog/lang/de.js | 1 + .../ckeditor/plugins/colordialog/lang/el.js | 1 + .../plugins/colordialog/lang/en-au.js | 1 + .../plugins/colordialog/lang/en-ca.js | 1 + .../plugins/colordialog/lang/en-gb.js | 1 + .../ckeditor/plugins/colordialog/lang/en.js | 1 + .../ckeditor/plugins/colordialog/lang/eo.js | 1 + .../plugins/colordialog/lang/es-mx.js | 1 + .../ckeditor/plugins/colordialog/lang/es.js | 1 + .../ckeditor/plugins/colordialog/lang/et.js | 1 + .../ckeditor/plugins/colordialog/lang/eu.js | 1 + .../ckeditor/plugins/colordialog/lang/fa.js | 1 + .../ckeditor/plugins/colordialog/lang/fi.js | 1 + .../ckeditor/plugins/colordialog/lang/fo.js | 1 + .../plugins/colordialog/lang/fr-ca.js | 1 + .../ckeditor/plugins/colordialog/lang/fr.js | 1 + .../ckeditor/plugins/colordialog/lang/gl.js | 1 + .../ckeditor/plugins/colordialog/lang/gu.js | 1 + .../ckeditor/plugins/colordialog/lang/he.js | 1 + .../ckeditor/plugins/colordialog/lang/hi.js | 1 + .../ckeditor/plugins/colordialog/lang/hr.js | 1 + .../ckeditor/plugins/colordialog/lang/hu.js | 1 + .../ckeditor/plugins/colordialog/lang/id.js | 1 + .../ckeditor/plugins/colordialog/lang/is.js | 1 + .../ckeditor/plugins/colordialog/lang/it.js | 1 + .../ckeditor/plugins/colordialog/lang/ja.js | 1 + .../ckeditor/plugins/colordialog/lang/ka.js | 1 + .../ckeditor/plugins/colordialog/lang/km.js | 1 + .../ckeditor/plugins/colordialog/lang/ko.js | 1 + .../ckeditor/plugins/colordialog/lang/ku.js | 1 + .../ckeditor/plugins/colordialog/lang/lt.js | 1 + .../ckeditor/plugins/colordialog/lang/lv.js | 1 + .../ckeditor/plugins/colordialog/lang/mk.js | 1 + .../ckeditor/plugins/colordialog/lang/mn.js | 1 + .../ckeditor/plugins/colordialog/lang/ms.js | 1 + .../ckeditor/plugins/colordialog/lang/nb.js | 1 + .../ckeditor/plugins/colordialog/lang/nl.js | 1 + .../ckeditor/plugins/colordialog/lang/no.js | 1 + .../ckeditor/plugins/colordialog/lang/oc.js | 1 + .../ckeditor/plugins/colordialog/lang/pl.js | 1 + .../plugins/colordialog/lang/pt-br.js | 1 + .../ckeditor/plugins/colordialog/lang/pt.js | 1 + .../ckeditor/plugins/colordialog/lang/ro.js | 1 + .../ckeditor/plugins/colordialog/lang/ru.js | 1 + .../ckeditor/plugins/colordialog/lang/si.js | 1 + .../ckeditor/plugins/colordialog/lang/sk.js | 1 + .../ckeditor/plugins/colordialog/lang/sl.js | 1 + .../ckeditor/plugins/colordialog/lang/sq.js | 1 + .../plugins/colordialog/lang/sr-latn.js | 1 + .../ckeditor/plugins/colordialog/lang/sr.js | 1 + .../ckeditor/plugins/colordialog/lang/sv.js | 1 + .../ckeditor/plugins/colordialog/lang/th.js | 1 + .../ckeditor/plugins/colordialog/lang/tr.js | 1 + .../ckeditor/plugins/colordialog/lang/tt.js | 1 + .../ckeditor/plugins/colordialog/lang/ug.js | 1 + .../ckeditor/plugins/colordialog/lang/uk.js | 1 + .../ckeditor/plugins/colordialog/lang/vi.js | 1 + .../plugins/colordialog/lang/zh-cn.js | 1 + .../ckeditor/plugins/colordialog/lang/zh.js | 1 + .../ckeditor/plugins/colordialog/plugin.js | 7 + .../cursors/cursor-disabled.svg | 25 + .../plugins/copyformatting/cursors/cursor.svg | 14 + .../copyformatting/icons/copyformatting.png | Bin 0 -> 707 bytes .../icons/hidpi/copyformatting.png | Bin 0 -> 1245 bytes .../plugins/copyformatting/lang/ar.js | 1 + .../plugins/copyformatting/lang/az.js | 1 + .../plugins/copyformatting/lang/bg.js | 1 + .../plugins/copyformatting/lang/cs.js | 1 + .../plugins/copyformatting/lang/da.js | 1 + .../plugins/copyformatting/lang/de-ch.js | 1 + .../plugins/copyformatting/lang/de.js | 1 + .../plugins/copyformatting/lang/el.js | 1 + .../plugins/copyformatting/lang/en-au.js | 1 + .../plugins/copyformatting/lang/en.js | 1 + .../plugins/copyformatting/lang/eo.js | 1 + .../plugins/copyformatting/lang/es-mx.js | 1 + .../plugins/copyformatting/lang/et.js | 1 + .../plugins/copyformatting/lang/eu.js | 1 + .../plugins/copyformatting/lang/fa.js | 1 + .../plugins/copyformatting/lang/fr.js | 1 + .../plugins/copyformatting/lang/gl.js | 1 + .../plugins/copyformatting/lang/hr.js | 1 + .../plugins/copyformatting/lang/hu.js | 1 + .../plugins/copyformatting/lang/it.js | 1 + .../plugins/copyformatting/lang/ja.js | 1 + .../plugins/copyformatting/lang/ko.js | 1 + .../plugins/copyformatting/lang/ku.js | 1 + .../plugins/copyformatting/lang/lv.js | 1 + .../plugins/copyformatting/lang/nb.js | 1 + .../plugins/copyformatting/lang/nl.js | 1 + .../plugins/copyformatting/lang/oc.js | 1 + .../plugins/copyformatting/lang/pl.js | 1 + .../plugins/copyformatting/lang/pt-br.js | 1 + .../plugins/copyformatting/lang/pt.js | 1 + .../plugins/copyformatting/lang/ro.js | 1 + .../plugins/copyformatting/lang/ru.js | 1 + .../plugins/copyformatting/lang/sk.js | 1 + .../plugins/copyformatting/lang/sq.js | 1 + .../plugins/copyformatting/lang/sr-latn.js | 1 + .../plugins/copyformatting/lang/sr.js | 1 + .../plugins/copyformatting/lang/sv.js | 1 + .../plugins/copyformatting/lang/tr.js | 1 + .../plugins/copyformatting/lang/uk.js | 1 + .../plugins/copyformatting/lang/vi.js | 1 + .../plugins/copyformatting/lang/zh-cn.js | 1 + .../plugins/copyformatting/lang/zh.js | 1 + .../ckeditor/plugins/copyformatting/plugin.js | 28 + .../copyformatting/styles/copyformatting.css | 45 + .../devtools/lang/_translationstatus.txt | 27 + .../ckeditor/plugins/devtools/lang/ar.js | 5 + .../ckeditor/plugins/devtools/lang/az.js | 5 + .../ckeditor/plugins/devtools/lang/bg.js | 5 + .../ckeditor/plugins/devtools/lang/ca.js | 5 + .../ckeditor/plugins/devtools/lang/cs.js | 5 + .../ckeditor/plugins/devtools/lang/cy.js | 5 + .../ckeditor/plugins/devtools/lang/da.js | 5 + .../ckeditor/plugins/devtools/lang/de-ch.js | 5 + .../ckeditor/plugins/devtools/lang/de.js | 5 + .../ckeditor/plugins/devtools/lang/el.js | 5 + .../ckeditor/plugins/devtools/lang/en-au.js | 5 + .../ckeditor/plugins/devtools/lang/en-gb.js | 5 + .../ckeditor/plugins/devtools/lang/en.js | 5 + .../ckeditor/plugins/devtools/lang/eo.js | 5 + .../ckeditor/plugins/devtools/lang/es-mx.js | 5 + .../ckeditor/plugins/devtools/lang/es.js | 5 + .../ckeditor/plugins/devtools/lang/et.js | 5 + .../ckeditor/plugins/devtools/lang/eu.js | 5 + .../ckeditor/plugins/devtools/lang/fa.js | 5 + .../ckeditor/plugins/devtools/lang/fi.js | 5 + .../ckeditor/plugins/devtools/lang/fr-ca.js | 5 + .../ckeditor/plugins/devtools/lang/fr.js | 5 + .../ckeditor/plugins/devtools/lang/gl.js | 5 + .../ckeditor/plugins/devtools/lang/gu.js | 5 + .../ckeditor/plugins/devtools/lang/he.js | 5 + .../ckeditor/plugins/devtools/lang/hr.js | 5 + .../ckeditor/plugins/devtools/lang/hu.js | 5 + .../ckeditor/plugins/devtools/lang/id.js | 5 + .../ckeditor/plugins/devtools/lang/it.js | 5 + .../ckeditor/plugins/devtools/lang/ja.js | 5 + .../ckeditor/plugins/devtools/lang/km.js | 5 + .../ckeditor/plugins/devtools/lang/ko.js | 5 + .../ckeditor/plugins/devtools/lang/ku.js | 5 + .../ckeditor/plugins/devtools/lang/lt.js | 5 + .../ckeditor/plugins/devtools/lang/lv.js | 5 + .../ckeditor/plugins/devtools/lang/nb.js | 5 + .../ckeditor/plugins/devtools/lang/nl.js | 5 + .../ckeditor/plugins/devtools/lang/no.js | 5 + .../ckeditor/plugins/devtools/lang/oc.js | 5 + .../ckeditor/plugins/devtools/lang/pl.js | 5 + .../ckeditor/plugins/devtools/lang/pt-br.js | 5 + .../ckeditor/plugins/devtools/lang/pt.js | 5 + .../ckeditor/plugins/devtools/lang/ro.js | 5 + .../ckeditor/plugins/devtools/lang/ru.js | 5 + .../ckeditor/plugins/devtools/lang/si.js | 5 + .../ckeditor/plugins/devtools/lang/sk.js | 5 + .../ckeditor/plugins/devtools/lang/sl.js | 5 + .../ckeditor/plugins/devtools/lang/sq.js | 5 + .../ckeditor/plugins/devtools/lang/sr-latn.js | 5 + .../ckeditor/plugins/devtools/lang/sr.js | 5 + .../ckeditor/plugins/devtools/lang/sv.js | 5 + .../ckeditor/plugins/devtools/lang/tr.js | 5 + .../ckeditor/plugins/devtools/lang/tt.js | 5 + .../ckeditor/plugins/devtools/lang/ug.js | 5 + .../ckeditor/plugins/devtools/lang/uk.js | 5 + .../ckeditor/plugins/devtools/lang/vi.js | 5 + .../ckeditor/plugins/devtools/lang/zh-cn.js | 5 + .../ckeditor/plugins/devtools/lang/zh.js | 5 + .../ckeditor/plugins/devtools/plugin.js | 9 + .../plugins/dialog/dialogDefinition.js | 4 + .../ckeditor/plugins/dialog/styles/dialog.css | 18 + .../ckeditor/plugins/dialogadvtab/plugin.js | 9 + .../ckeditor/plugins/div/dialogs/div.js | 10 + .../ckeditor/plugins/div/icons/creatediv.png | Bin 0 -> 569 bytes .../plugins/div/icons/hidpi/creatediv.png | Bin 0 -> 1678 bytes .../ckeditor/plugins/div/lang/af.js | 1 + .../ckeditor/plugins/div/lang/ar.js | 1 + .../ckeditor/plugins/div/lang/az.js | 1 + .../ckeditor/plugins/div/lang/bg.js | 1 + .../ckeditor/plugins/div/lang/bn.js | 1 + .../ckeditor/plugins/div/lang/bs.js | 1 + .../ckeditor/plugins/div/lang/ca.js | 1 + .../ckeditor/plugins/div/lang/cs.js | 1 + .../ckeditor/plugins/div/lang/cy.js | 1 + .../ckeditor/plugins/div/lang/da.js | 1 + .../ckeditor/plugins/div/lang/de-ch.js | 1 + .../ckeditor/plugins/div/lang/de.js | 1 + .../ckeditor/plugins/div/lang/el.js | 1 + .../ckeditor/plugins/div/lang/en-au.js | 1 + .../ckeditor/plugins/div/lang/en-ca.js | 1 + .../ckeditor/plugins/div/lang/en-gb.js | 1 + .../ckeditor/plugins/div/lang/en.js | 1 + .../ckeditor/plugins/div/lang/eo.js | 1 + .../ckeditor/plugins/div/lang/es-mx.js | 1 + .../ckeditor/plugins/div/lang/es.js | 1 + .../ckeditor/plugins/div/lang/et.js | 1 + .../ckeditor/plugins/div/lang/eu.js | 1 + .../ckeditor/plugins/div/lang/fa.js | 1 + .../ckeditor/plugins/div/lang/fi.js | 1 + .../ckeditor/plugins/div/lang/fo.js | 1 + .../ckeditor/plugins/div/lang/fr-ca.js | 1 + .../ckeditor/plugins/div/lang/fr.js | 1 + .../ckeditor/plugins/div/lang/gl.js | 1 + .../ckeditor/plugins/div/lang/gu.js | 1 + .../ckeditor/plugins/div/lang/he.js | 1 + .../ckeditor/plugins/div/lang/hi.js | 1 + .../ckeditor/plugins/div/lang/hr.js | 1 + .../ckeditor/plugins/div/lang/hu.js | 1 + .../ckeditor/plugins/div/lang/id.js | 1 + .../ckeditor/plugins/div/lang/is.js | 1 + .../ckeditor/plugins/div/lang/it.js | 1 + .../ckeditor/plugins/div/lang/ja.js | 1 + .../ckeditor/plugins/div/lang/ka.js | 1 + .../ckeditor/plugins/div/lang/km.js | 1 + .../ckeditor/plugins/div/lang/ko.js | 1 + .../ckeditor/plugins/div/lang/ku.js | 1 + .../ckeditor/plugins/div/lang/lt.js | 1 + .../ckeditor/plugins/div/lang/lv.js | 1 + .../ckeditor/plugins/div/lang/mk.js | 1 + .../ckeditor/plugins/div/lang/mn.js | 1 + .../ckeditor/plugins/div/lang/ms.js | 1 + .../ckeditor/plugins/div/lang/nb.js | 1 + .../ckeditor/plugins/div/lang/nl.js | 1 + .../ckeditor/plugins/div/lang/no.js | 1 + .../ckeditor/plugins/div/lang/oc.js | 1 + .../ckeditor/plugins/div/lang/pl.js | 1 + .../ckeditor/plugins/div/lang/pt-br.js | 1 + .../ckeditor/plugins/div/lang/pt.js | 1 + .../ckeditor/plugins/div/lang/ro.js | 1 + .../ckeditor/plugins/div/lang/ru.js | 1 + .../ckeditor/plugins/div/lang/si.js | 1 + .../ckeditor/plugins/div/lang/sk.js | 1 + .../ckeditor/plugins/div/lang/sl.js | 1 + .../ckeditor/plugins/div/lang/sq.js | 1 + .../ckeditor/plugins/div/lang/sr-latn.js | 1 + .../ckeditor/plugins/div/lang/sr.js | 1 + .../ckeditor/plugins/div/lang/sv.js | 1 + .../ckeditor/plugins/div/lang/th.js | 1 + .../ckeditor/plugins/div/lang/tr.js | 1 + .../ckeditor/plugins/div/lang/tt.js | 1 + .../ckeditor/plugins/div/lang/ug.js | 1 + .../ckeditor/plugins/div/lang/uk.js | 1 + .../ckeditor/plugins/div/lang/vi.js | 1 + .../ckeditor/plugins/div/lang/zh-cn.js | 1 + .../ckeditor/plugins/div/lang/zh.js | 1 + .../ckeditor/plugins/div/plugin.js | 9 + .../ckeditor/plugins/divarea/plugin.js | 5 + .../plugins/docprops/dialogs/docprops.js | 25 + .../plugins/docprops/icons/docprops-rtl.png | Bin 0 -> 543 bytes .../plugins/docprops/icons/docprops.png | Bin 0 -> 549 bytes .../docprops/icons/hidpi/docprops-rtl.png | Bin 0 -> 1060 bytes .../plugins/docprops/icons/hidpi/docprops.png | Bin 0 -> 1017 bytes .../ckeditor/plugins/docprops/lang/af.js | 3 + .../ckeditor/plugins/docprops/lang/ar.js | 3 + .../ckeditor/plugins/docprops/lang/az.js | 3 + .../ckeditor/plugins/docprops/lang/bg.js | 3 + .../ckeditor/plugins/docprops/lang/bn.js | 3 + .../ckeditor/plugins/docprops/lang/bs.js | 3 + .../ckeditor/plugins/docprops/lang/ca.js | 3 + .../ckeditor/plugins/docprops/lang/cs.js | 3 + .../ckeditor/plugins/docprops/lang/cy.js | 3 + .../ckeditor/plugins/docprops/lang/da.js | 3 + .../ckeditor/plugins/docprops/lang/de-ch.js | 3 + .../ckeditor/plugins/docprops/lang/de.js | 3 + .../ckeditor/plugins/docprops/lang/el.js | 3 + .../ckeditor/plugins/docprops/lang/en-au.js | 3 + .../ckeditor/plugins/docprops/lang/en-ca.js | 3 + .../ckeditor/plugins/docprops/lang/en-gb.js | 3 + .../ckeditor/plugins/docprops/lang/en.js | 3 + .../ckeditor/plugins/docprops/lang/eo.js | 3 + .../ckeditor/plugins/docprops/lang/es-mx.js | 3 + .../ckeditor/plugins/docprops/lang/es.js | 3 + .../ckeditor/plugins/docprops/lang/et.js | 3 + .../ckeditor/plugins/docprops/lang/eu.js | 3 + .../ckeditor/plugins/docprops/lang/fa.js | 3 + .../ckeditor/plugins/docprops/lang/fi.js | 3 + .../ckeditor/plugins/docprops/lang/fo.js | 3 + .../ckeditor/plugins/docprops/lang/fr-ca.js | 3 + .../ckeditor/plugins/docprops/lang/fr.js | 3 + .../ckeditor/plugins/docprops/lang/gl.js | 3 + .../ckeditor/plugins/docprops/lang/gu.js | 3 + .../ckeditor/plugins/docprops/lang/he.js | 2 + .../ckeditor/plugins/docprops/lang/hi.js | 3 + .../ckeditor/plugins/docprops/lang/hr.js | 3 + .../ckeditor/plugins/docprops/lang/hu.js | 3 + .../ckeditor/plugins/docprops/lang/id.js | 3 + .../ckeditor/plugins/docprops/lang/is.js | 3 + .../ckeditor/plugins/docprops/lang/it.js | 3 + .../ckeditor/plugins/docprops/lang/ja.js | 2 + .../ckeditor/plugins/docprops/lang/ka.js | 3 + .../ckeditor/plugins/docprops/lang/km.js | 3 + .../ckeditor/plugins/docprops/lang/ko.js | 2 + .../ckeditor/plugins/docprops/lang/ku.js | 3 + .../ckeditor/plugins/docprops/lang/lt.js | 3 + .../ckeditor/plugins/docprops/lang/lv.js | 3 + .../ckeditor/plugins/docprops/lang/mk.js | 3 + .../ckeditor/plugins/docprops/lang/mn.js | 3 + .../ckeditor/plugins/docprops/lang/ms.js | 3 + .../ckeditor/plugins/docprops/lang/nb.js | 3 + .../ckeditor/plugins/docprops/lang/nl.js | 3 + .../ckeditor/plugins/docprops/lang/no.js | 3 + .../ckeditor/plugins/docprops/lang/oc.js | 3 + .../ckeditor/plugins/docprops/lang/pl.js | 3 + .../ckeditor/plugins/docprops/lang/pt-br.js | 3 + .../ckeditor/plugins/docprops/lang/pt.js | 3 + .../ckeditor/plugins/docprops/lang/ro.js | 3 + .../ckeditor/plugins/docprops/lang/ru.js | 3 + .../ckeditor/plugins/docprops/lang/si.js | 3 + .../ckeditor/plugins/docprops/lang/sk.js | 3 + .../ckeditor/plugins/docprops/lang/sl.js | 3 + .../ckeditor/plugins/docprops/lang/sq.js | 3 + .../ckeditor/plugins/docprops/lang/sr-latn.js | 3 + .../ckeditor/plugins/docprops/lang/sr.js | 3 + .../ckeditor/plugins/docprops/lang/sv.js | 3 + .../ckeditor/plugins/docprops/lang/th.js | 3 + .../ckeditor/plugins/docprops/lang/tr.js | 3 + .../ckeditor/plugins/docprops/lang/tt.js | 3 + .../ckeditor/plugins/docprops/lang/ug.js | 3 + .../ckeditor/plugins/docprops/lang/uk.js | 3 + .../ckeditor/plugins/docprops/lang/vi.js | 3 + .../ckeditor/plugins/docprops/lang/zh-cn.js | 2 + .../ckeditor/plugins/docprops/lang/zh.js | 2 + .../ckeditor/plugins/docprops/plugin.js | 6 + .../plugins/easyimage/dialogs/easyimagealt.js | 6 + .../easyimage/icons/easyimagealigncenter.png | Bin 0 -> 155 bytes .../easyimage/icons/easyimagealignleft.png | Bin 0 -> 152 bytes .../easyimage/icons/easyimagealignright.png | Bin 0 -> 149 bytes .../plugins/easyimage/icons/easyimagealt.png | Bin 0 -> 545 bytes .../plugins/easyimage/icons/easyimagefull.png | Bin 0 -> 147 bytes .../plugins/easyimage/icons/easyimageside.png | Bin 0 -> 149 bytes .../easyimage/icons/easyimageupload.png | Bin 0 -> 498 bytes .../icons/hidpi/easyimagealigncenter.png | Bin 0 -> 350 bytes .../icons/hidpi/easyimagealignleft.png | Bin 0 -> 339 bytes .../icons/hidpi/easyimagealignright.png | Bin 0 -> 299 bytes .../easyimage/icons/hidpi/easyimagealt.png | Bin 0 -> 1290 bytes .../easyimage/icons/hidpi/easyimagefull.png | Bin 0 -> 253 bytes .../easyimage/icons/hidpi/easyimageside.png | Bin 0 -> 299 bytes .../easyimage/icons/hidpi/easyimageupload.png | Bin 0 -> 905 bytes .../ckeditor/plugins/easyimage/lang/ar.js | 5 + .../ckeditor/plugins/easyimage/lang/az.js | 5 + .../ckeditor/plugins/easyimage/lang/bg.js | 5 + .../ckeditor/plugins/easyimage/lang/cs.js | 5 + .../ckeditor/plugins/easyimage/lang/da.js | 5 + .../ckeditor/plugins/easyimage/lang/de-ch.js | 5 + .../ckeditor/plugins/easyimage/lang/de.js | 5 + .../ckeditor/plugins/easyimage/lang/en-au.js | 5 + .../ckeditor/plugins/easyimage/lang/en.js | 5 + .../ckeditor/plugins/easyimage/lang/et.js | 5 + .../ckeditor/plugins/easyimage/lang/fa.js | 5 + .../ckeditor/plugins/easyimage/lang/fr.js | 5 + .../ckeditor/plugins/easyimage/lang/gl.js | 5 + .../ckeditor/plugins/easyimage/lang/hr.js | 5 + .../ckeditor/plugins/easyimage/lang/hu.js | 5 + .../ckeditor/plugins/easyimage/lang/it.js | 5 + .../ckeditor/plugins/easyimage/lang/ku.js | 5 + .../ckeditor/plugins/easyimage/lang/lv.js | 5 + .../ckeditor/plugins/easyimage/lang/nb.js | 5 + .../ckeditor/plugins/easyimage/lang/nl.js | 5 + .../ckeditor/plugins/easyimage/lang/no.js | 5 + .../ckeditor/plugins/easyimage/lang/pl.js | 5 + .../ckeditor/plugins/easyimage/lang/pt-br.js | 5 + .../ckeditor/plugins/easyimage/lang/pt.js | 5 + .../ckeditor/plugins/easyimage/lang/ro.js | 5 + .../ckeditor/plugins/easyimage/lang/ru.js | 5 + .../ckeditor/plugins/easyimage/lang/sk.js | 5 + .../ckeditor/plugins/easyimage/lang/sq.js | 5 + .../plugins/easyimage/lang/sr-latn.js | 5 + .../ckeditor/plugins/easyimage/lang/sr.js | 5 + .../ckeditor/plugins/easyimage/lang/sv.js | 5 + .../ckeditor/plugins/easyimage/lang/tr.js | 5 + .../ckeditor/plugins/easyimage/lang/tt.js | 5 + .../ckeditor/plugins/easyimage/lang/uk.js | 5 + .../ckeditor/plugins/easyimage/lang/zh-cn.js | 5 + .../ckeditor/plugins/easyimage/lang/zh.js | 5 + .../ckeditor/plugins/easyimage/plugin.js | 19 + .../plugins/easyimage/styles/easyimage.css | 118 + .../plugins/editorplaceholder/plugin.js | 6 + .../ckeditor/plugins/embed/icons/embed.png | Bin 0 -> 389 bytes .../plugins/embed/icons/hidpi/embed.png | Bin 0 -> 728 bytes .../ckeditor/plugins/embed/plugin.js | 6 + .../plugins/embedbase/dialogs/embedbase.js | 6 + .../ckeditor/plugins/embedbase/lang/ar.js | 1 + .../ckeditor/plugins/embedbase/lang/az.js | 1 + .../ckeditor/plugins/embedbase/lang/bg.js | 1 + .../ckeditor/plugins/embedbase/lang/ca.js | 1 + .../ckeditor/plugins/embedbase/lang/cs.js | 1 + .../ckeditor/plugins/embedbase/lang/da.js | 1 + .../ckeditor/plugins/embedbase/lang/de-ch.js | 1 + .../ckeditor/plugins/embedbase/lang/de.js | 1 + .../ckeditor/plugins/embedbase/lang/en-au.js | 1 + .../ckeditor/plugins/embedbase/lang/en.js | 1 + .../ckeditor/plugins/embedbase/lang/eo.js | 1 + .../ckeditor/plugins/embedbase/lang/es-mx.js | 1 + .../ckeditor/plugins/embedbase/lang/es.js | 1 + .../ckeditor/plugins/embedbase/lang/et.js | 1 + .../ckeditor/plugins/embedbase/lang/eu.js | 1 + .../ckeditor/plugins/embedbase/lang/fa.js | 1 + .../ckeditor/plugins/embedbase/lang/fr.js | 1 + .../ckeditor/plugins/embedbase/lang/gl.js | 1 + .../ckeditor/plugins/embedbase/lang/hr.js | 1 + .../ckeditor/plugins/embedbase/lang/hu.js | 1 + .../ckeditor/plugins/embedbase/lang/id.js | 1 + .../ckeditor/plugins/embedbase/lang/it.js | 1 + .../ckeditor/plugins/embedbase/lang/ja.js | 1 + .../ckeditor/plugins/embedbase/lang/ko.js | 1 + .../ckeditor/plugins/embedbase/lang/ku.js | 1 + .../ckeditor/plugins/embedbase/lang/lv.js | 1 + .../ckeditor/plugins/embedbase/lang/nb.js | 1 + .../ckeditor/plugins/embedbase/lang/nl.js | 1 + .../ckeditor/plugins/embedbase/lang/oc.js | 1 + .../ckeditor/plugins/embedbase/lang/pl.js | 1 + .../ckeditor/plugins/embedbase/lang/pt-br.js | 1 + .../ckeditor/plugins/embedbase/lang/pt.js | 1 + .../ckeditor/plugins/embedbase/lang/ro.js | 1 + .../ckeditor/plugins/embedbase/lang/ru.js | 1 + .../ckeditor/plugins/embedbase/lang/sk.js | 1 + .../ckeditor/plugins/embedbase/lang/sq.js | 1 + .../plugins/embedbase/lang/sr-latn.js | 1 + .../ckeditor/plugins/embedbase/lang/sr.js | 1 + .../ckeditor/plugins/embedbase/lang/sv.js | 1 + .../ckeditor/plugins/embedbase/lang/tr.js | 1 + .../ckeditor/plugins/embedbase/lang/ug.js | 1 + .../ckeditor/plugins/embedbase/lang/uk.js | 1 + .../ckeditor/plugins/embedbase/lang/zh-cn.js | 1 + .../ckeditor/plugins/embedbase/lang/zh.js | 1 + .../ckeditor/plugins/embedbase/plugin.js | 11 + .../embedsemantic/icons/embedsemantic.png | Bin 0 -> 389 bytes .../icons/hidpi/embedsemantic.png | Bin 0 -> 728 bytes .../ckeditor/plugins/embedsemantic/plugin.js | 7 + .../plugins/emoji/assets/iconsall.png | Bin 0 -> 1594 bytes .../plugins/emoji/assets/iconsall.svg | 58 + .../ckeditor/plugins/emoji/emoji.json | 1 + .../plugins/emoji/icons/emojipanel.png | Bin 0 -> 670 bytes .../plugins/emoji/icons/hidpi/emojipanel.png | Bin 0 -> 1684 bytes .../ckeditor/plugins/emoji/lang/cs.js | 1 + .../ckeditor/plugins/emoji/lang/da.js | 1 + .../ckeditor/plugins/emoji/lang/de-ch.js | 1 + .../ckeditor/plugins/emoji/lang/de.js | 1 + .../ckeditor/plugins/emoji/lang/en-au.js | 1 + .../ckeditor/plugins/emoji/lang/en.js | 1 + .../ckeditor/plugins/emoji/lang/et.js | 1 + .../ckeditor/plugins/emoji/lang/fa.js | 1 + .../ckeditor/plugins/emoji/lang/fr.js | 1 + .../ckeditor/plugins/emoji/lang/gl.js | 1 + .../ckeditor/plugins/emoji/lang/hr.js | 1 + .../ckeditor/plugins/emoji/lang/hu.js | 1 + .../ckeditor/plugins/emoji/lang/it.js | 1 + .../ckeditor/plugins/emoji/lang/nl.js | 1 + .../ckeditor/plugins/emoji/lang/pl.js | 1 + .../ckeditor/plugins/emoji/lang/pt-br.js | 1 + .../ckeditor/plugins/emoji/lang/sk.js | 1 + .../ckeditor/plugins/emoji/lang/sr-latn.js | 1 + .../ckeditor/plugins/emoji/lang/sr.js | 1 + .../ckeditor/plugins/emoji/lang/sv.js | 1 + .../ckeditor/plugins/emoji/lang/tr.js | 1 + .../ckeditor/plugins/emoji/lang/uk.js | 1 + .../ckeditor/plugins/emoji/lang/zh-cn.js | 1 + .../ckeditor/plugins/emoji/lang/zh.js | 1 + .../ckeditor/plugins/emoji/plugin.js | 28 + .../ckeditor/plugins/emoji/skins/default.css | 237 + .../ckeditor/plugins/exportpdf/CHANGELOG.md | 72 + .../ckeditor/plugins/exportpdf/LICENSE.md | 18 + .../plugins/exportpdf/icons/exportpdf.png | Bin 0 -> 526 bytes .../exportpdf/icons/hidpi/exportpdf.png | Bin 0 -> 938 bytes .../ckeditor/plugins/exportpdf/lang/en.js | 1 + .../ckeditor/plugins/exportpdf/plugin.js | 15 + .../plugins/exportpdf/plugindefinition.js | 1 + .../ckeditor/plugins/find/dialogs/find.js | 25 + .../ckeditor/plugins/find/icons/find-rtl.png | Bin 0 -> 696 bytes .../ckeditor/plugins/find/icons/find.png | Bin 0 -> 696 bytes .../plugins/find/icons/hidpi/find-rtl.png | Bin 0 -> 1384 bytes .../plugins/find/icons/hidpi/find.png | Bin 0 -> 1384 bytes .../plugins/find/icons/hidpi/replace.png | Bin 0 -> 1402 bytes .../ckeditor/plugins/find/icons/replace.png | Bin 0 -> 549 bytes .../ckeditor/plugins/find/lang/af.js | 1 + .../ckeditor/plugins/find/lang/ar.js | 1 + .../ckeditor/plugins/find/lang/az.js | 1 + .../ckeditor/plugins/find/lang/bg.js | 1 + .../ckeditor/plugins/find/lang/bn.js | 1 + .../ckeditor/plugins/find/lang/bs.js | 1 + .../ckeditor/plugins/find/lang/ca.js | 1 + .../ckeditor/plugins/find/lang/cs.js | 1 + .../ckeditor/plugins/find/lang/cy.js | 1 + .../ckeditor/plugins/find/lang/da.js | 1 + .../ckeditor/plugins/find/lang/de-ch.js | 1 + .../ckeditor/plugins/find/lang/de.js | 1 + .../ckeditor/plugins/find/lang/el.js | 1 + .../ckeditor/plugins/find/lang/en-au.js | 1 + .../ckeditor/plugins/find/lang/en-ca.js | 1 + .../ckeditor/plugins/find/lang/en-gb.js | 1 + .../ckeditor/plugins/find/lang/en.js | 1 + .../ckeditor/plugins/find/lang/eo.js | 1 + .../ckeditor/plugins/find/lang/es-mx.js | 1 + .../ckeditor/plugins/find/lang/es.js | 1 + .../ckeditor/plugins/find/lang/et.js | 1 + .../ckeditor/plugins/find/lang/eu.js | 1 + .../ckeditor/plugins/find/lang/fa.js | 1 + .../ckeditor/plugins/find/lang/fi.js | 1 + .../ckeditor/plugins/find/lang/fo.js | 1 + .../ckeditor/plugins/find/lang/fr-ca.js | 1 + .../ckeditor/plugins/find/lang/fr.js | 1 + .../ckeditor/plugins/find/lang/gl.js | 1 + .../ckeditor/plugins/find/lang/gu.js | 1 + .../ckeditor/plugins/find/lang/he.js | 1 + .../ckeditor/plugins/find/lang/hi.js | 1 + .../ckeditor/plugins/find/lang/hr.js | 1 + .../ckeditor/plugins/find/lang/hu.js | 1 + .../ckeditor/plugins/find/lang/id.js | 1 + .../ckeditor/plugins/find/lang/is.js | 1 + .../ckeditor/plugins/find/lang/it.js | 1 + .../ckeditor/plugins/find/lang/ja.js | 1 + .../ckeditor/plugins/find/lang/ka.js | 1 + .../ckeditor/plugins/find/lang/km.js | 1 + .../ckeditor/plugins/find/lang/ko.js | 1 + .../ckeditor/plugins/find/lang/ku.js | 1 + .../ckeditor/plugins/find/lang/lt.js | 1 + .../ckeditor/plugins/find/lang/lv.js | 1 + .../ckeditor/plugins/find/lang/mk.js | 1 + .../ckeditor/plugins/find/lang/mn.js | 1 + .../ckeditor/plugins/find/lang/ms.js | 1 + .../ckeditor/plugins/find/lang/nb.js | 1 + .../ckeditor/plugins/find/lang/nl.js | 1 + .../ckeditor/plugins/find/lang/no.js | 1 + .../ckeditor/plugins/find/lang/oc.js | 1 + .../ckeditor/plugins/find/lang/pl.js | 1 + .../ckeditor/plugins/find/lang/pt-br.js | 1 + .../ckeditor/plugins/find/lang/pt.js | 1 + .../ckeditor/plugins/find/lang/ro.js | 1 + .../ckeditor/plugins/find/lang/ru.js | 1 + .../ckeditor/plugins/find/lang/si.js | 1 + .../ckeditor/plugins/find/lang/sk.js | 1 + .../ckeditor/plugins/find/lang/sl.js | 1 + .../ckeditor/plugins/find/lang/sq.js | 1 + .../ckeditor/plugins/find/lang/sr-latn.js | 1 + .../ckeditor/plugins/find/lang/sr.js | 1 + .../ckeditor/plugins/find/lang/sv.js | 1 + .../ckeditor/plugins/find/lang/th.js | 1 + .../ckeditor/plugins/find/lang/tr.js | 1 + .../ckeditor/plugins/find/lang/tt.js | 1 + .../ckeditor/plugins/find/lang/ug.js | 1 + .../ckeditor/plugins/find/lang/uk.js | 1 + .../ckeditor/plugins/find/lang/vi.js | 1 + .../ckeditor/plugins/find/lang/zh-cn.js | 1 + .../ckeditor/plugins/find/lang/zh.js | 1 + .../ckeditor/plugins/find/plugin.js | 6 + .../ckeditor/plugins/flash/plugin.js | 5 + .../ckeditor/plugins/font/lang/af.js | 1 + .../ckeditor/plugins/font/lang/ar.js | 1 + .../ckeditor/plugins/font/lang/az.js | 1 + .../ckeditor/plugins/font/lang/bg.js | 1 + .../ckeditor/plugins/font/lang/bn.js | 1 + .../ckeditor/plugins/font/lang/bs.js | 1 + .../ckeditor/plugins/font/lang/ca.js | 1 + .../ckeditor/plugins/font/lang/cs.js | 1 + .../ckeditor/plugins/font/lang/cy.js | 1 + .../ckeditor/plugins/font/lang/da.js | 1 + .../ckeditor/plugins/font/lang/de-ch.js | 1 + .../ckeditor/plugins/font/lang/de.js | 1 + .../ckeditor/plugins/font/lang/el.js | 1 + .../ckeditor/plugins/font/lang/en-au.js | 1 + .../ckeditor/plugins/font/lang/en-ca.js | 1 + .../ckeditor/plugins/font/lang/en-gb.js | 1 + .../ckeditor/plugins/font/lang/en.js | 1 + .../ckeditor/plugins/font/lang/eo.js | 1 + .../ckeditor/plugins/font/lang/es-mx.js | 1 + .../ckeditor/plugins/font/lang/es.js | 1 + .../ckeditor/plugins/font/lang/et.js | 1 + .../ckeditor/plugins/font/lang/eu.js | 1 + .../ckeditor/plugins/font/lang/fa.js | 1 + .../ckeditor/plugins/font/lang/fi.js | 1 + .../ckeditor/plugins/font/lang/fo.js | 1 + .../ckeditor/plugins/font/lang/fr-ca.js | 1 + .../ckeditor/plugins/font/lang/fr.js | 1 + .../ckeditor/plugins/font/lang/gl.js | 1 + .../ckeditor/plugins/font/lang/gu.js | 1 + .../ckeditor/plugins/font/lang/he.js | 1 + .../ckeditor/plugins/font/lang/hi.js | 1 + .../ckeditor/plugins/font/lang/hr.js | 1 + .../ckeditor/plugins/font/lang/hu.js | 1 + .../ckeditor/plugins/font/lang/id.js | 1 + .../ckeditor/plugins/font/lang/is.js | 1 + .../ckeditor/plugins/font/lang/it.js | 1 + .../ckeditor/plugins/font/lang/ja.js | 1 + .../ckeditor/plugins/font/lang/ka.js | 1 + .../ckeditor/plugins/font/lang/km.js | 1 + .../ckeditor/plugins/font/lang/ko.js | 1 + .../ckeditor/plugins/font/lang/ku.js | 1 + .../ckeditor/plugins/font/lang/lt.js | 1 + .../ckeditor/plugins/font/lang/lv.js | 1 + .../ckeditor/plugins/font/lang/mk.js | 1 + .../ckeditor/plugins/font/lang/mn.js | 1 + .../ckeditor/plugins/font/lang/ms.js | 1 + .../ckeditor/plugins/font/lang/nb.js | 1 + .../ckeditor/plugins/font/lang/nl.js | 1 + .../ckeditor/plugins/font/lang/no.js | 1 + .../ckeditor/plugins/font/lang/oc.js | 1 + .../ckeditor/plugins/font/lang/pl.js | 1 + .../ckeditor/plugins/font/lang/pt-br.js | 1 + .../ckeditor/plugins/font/lang/pt.js | 1 + .../ckeditor/plugins/font/lang/ro.js | 1 + .../ckeditor/plugins/font/lang/ru.js | 1 + .../ckeditor/plugins/font/lang/si.js | 1 + .../ckeditor/plugins/font/lang/sk.js | 1 + .../ckeditor/plugins/font/lang/sl.js | 1 + .../ckeditor/plugins/font/lang/sq.js | 1 + .../ckeditor/plugins/font/lang/sr-latn.js | 1 + .../ckeditor/plugins/font/lang/sr.js | 1 + .../ckeditor/plugins/font/lang/sv.js | 1 + .../ckeditor/plugins/font/lang/th.js | 1 + .../ckeditor/plugins/font/lang/tr.js | 1 + .../ckeditor/plugins/font/lang/tt.js | 1 + .../ckeditor/plugins/font/lang/ug.js | 1 + .../ckeditor/plugins/font/lang/uk.js | 1 + .../ckeditor/plugins/font/lang/vi.js | 1 + .../ckeditor/plugins/font/lang/zh-cn.js | 1 + .../ckeditor/plugins/font/lang/zh.js | 1 + .../ckeditor/plugins/font/plugin.js | 14 + .../ckeditor/plugins/forms/dialogs/button.js | 8 + .../plugins/forms/dialogs/checkbox.js | 9 + .../ckeditor/plugins/forms/dialogs/form.js | 8 + .../plugins/forms/dialogs/hiddenfield.js | 7 + .../ckeditor/plugins/forms/dialogs/radio.js | 9 + .../ckeditor/plugins/forms/dialogs/select.js | 21 + .../plugins/forms/dialogs/textarea.js | 9 + .../plugins/forms/dialogs/textfield.js | 11 + .../ckeditor/plugins/forms/icons/button.png | Bin 0 -> 493 bytes .../ckeditor/plugins/forms/icons/checkbox.png | Bin 0 -> 544 bytes .../ckeditor/plugins/forms/icons/form.png | Bin 0 -> 380 bytes .../plugins/forms/icons/hiddenfield.png | Bin 0 -> 613 bytes .../plugins/forms/icons/hidpi/button.png | Bin 0 -> 833 bytes .../plugins/forms/icons/hidpi/checkbox.png | Bin 0 -> 1024 bytes .../plugins/forms/icons/hidpi/form.png | Bin 0 -> 660 bytes .../plugins/forms/icons/hidpi/hiddenfield.png | Bin 0 -> 1129 bytes .../plugins/forms/icons/hidpi/imagebutton.png | Bin 0 -> 1345 bytes .../plugins/forms/icons/hidpi/radio.png | Bin 0 -> 1426 bytes .../plugins/forms/icons/hidpi/select-rtl.png | Bin 0 -> 920 bytes .../plugins/forms/icons/hidpi/select.png | Bin 0 -> 905 bytes .../forms/icons/hidpi/textarea-rtl.png | Bin 0 -> 1081 bytes .../plugins/forms/icons/hidpi/textarea.png | Bin 0 -> 1048 bytes .../forms/icons/hidpi/textfield-rtl.png | Bin 0 -> 805 bytes .../plugins/forms/icons/hidpi/textfield.png | Bin 0 -> 805 bytes .../plugins/forms/icons/imagebutton.png | Bin 0 -> 755 bytes .../ckeditor/plugins/forms/icons/radio.png | Bin 0 -> 655 bytes .../plugins/forms/icons/select-rtl.png | Bin 0 -> 455 bytes .../ckeditor/plugins/forms/icons/select.png | Bin 0 -> 451 bytes .../plugins/forms/icons/textarea-rtl.png | Bin 0 -> 568 bytes .../ckeditor/plugins/forms/icons/textarea.png | Bin 0 -> 524 bytes .../plugins/forms/icons/textfield-rtl.png | Bin 0 -> 419 bytes .../plugins/forms/icons/textfield.png | Bin 0 -> 419 bytes .../plugins/forms/images/hiddenfield.gif | Bin 0 -> 178 bytes .../ckeditor/plugins/forms/lang/af.js | 3 + .../ckeditor/plugins/forms/lang/ar.js | 3 + .../ckeditor/plugins/forms/lang/az.js | 3 + .../ckeditor/plugins/forms/lang/bg.js | 3 + .../ckeditor/plugins/forms/lang/bn.js | 3 + .../ckeditor/plugins/forms/lang/bs.js | 3 + .../ckeditor/plugins/forms/lang/ca.js | 3 + .../ckeditor/plugins/forms/lang/cs.js | 3 + .../ckeditor/plugins/forms/lang/cy.js | 3 + .../ckeditor/plugins/forms/lang/da.js | 3 + .../ckeditor/plugins/forms/lang/de-ch.js | 3 + .../ckeditor/plugins/forms/lang/de.js | 3 + .../ckeditor/plugins/forms/lang/el.js | 3 + .../ckeditor/plugins/forms/lang/en-au.js | 3 + .../ckeditor/plugins/forms/lang/en-ca.js | 3 + .../ckeditor/plugins/forms/lang/en-gb.js | 3 + .../ckeditor/plugins/forms/lang/en.js | 3 + .../ckeditor/plugins/forms/lang/eo.js | 3 + .../ckeditor/plugins/forms/lang/es-mx.js | 3 + .../ckeditor/plugins/forms/lang/es.js | 3 + .../ckeditor/plugins/forms/lang/et.js | 3 + .../ckeditor/plugins/forms/lang/eu.js | 3 + .../ckeditor/plugins/forms/lang/fa.js | 3 + .../ckeditor/plugins/forms/lang/fi.js | 3 + .../ckeditor/plugins/forms/lang/fo.js | 3 + .../ckeditor/plugins/forms/lang/fr-ca.js | 3 + .../ckeditor/plugins/forms/lang/fr.js | 3 + .../ckeditor/plugins/forms/lang/gl.js | 3 + .../ckeditor/plugins/forms/lang/gu.js | 3 + .../ckeditor/plugins/forms/lang/he.js | 3 + .../ckeditor/plugins/forms/lang/hi.js | 3 + .../ckeditor/plugins/forms/lang/hr.js | 3 + .../ckeditor/plugins/forms/lang/hu.js | 3 + .../ckeditor/plugins/forms/lang/id.js | 3 + .../ckeditor/plugins/forms/lang/is.js | 3 + .../ckeditor/plugins/forms/lang/it.js | 3 + .../ckeditor/plugins/forms/lang/ja.js | 2 + .../ckeditor/plugins/forms/lang/ka.js | 3 + .../ckeditor/plugins/forms/lang/km.js | 3 + .../ckeditor/plugins/forms/lang/ko.js | 2 + .../ckeditor/plugins/forms/lang/ku.js | 3 + .../ckeditor/plugins/forms/lang/lt.js | 3 + .../ckeditor/plugins/forms/lang/lv.js | 3 + .../ckeditor/plugins/forms/lang/mk.js | 3 + .../ckeditor/plugins/forms/lang/mn.js | 3 + .../ckeditor/plugins/forms/lang/ms.js | 3 + .../ckeditor/plugins/forms/lang/nb.js | 3 + .../ckeditor/plugins/forms/lang/nl.js | 3 + .../ckeditor/plugins/forms/lang/no.js | 3 + .../ckeditor/plugins/forms/lang/oc.js | 3 + .../ckeditor/plugins/forms/lang/pl.js | 3 + .../ckeditor/plugins/forms/lang/pt-br.js | 3 + .../ckeditor/plugins/forms/lang/pt.js | 3 + .../ckeditor/plugins/forms/lang/ro.js | 3 + .../ckeditor/plugins/forms/lang/ru.js | 3 + .../ckeditor/plugins/forms/lang/si.js | 3 + .../ckeditor/plugins/forms/lang/sk.js | 3 + .../ckeditor/plugins/forms/lang/sl.js | 3 + .../ckeditor/plugins/forms/lang/sq.js | 3 + .../ckeditor/plugins/forms/lang/sr-latn.js | 3 + .../ckeditor/plugins/forms/lang/sr.js | 3 + .../ckeditor/plugins/forms/lang/sv.js | 3 + .../ckeditor/plugins/forms/lang/th.js | 3 + .../ckeditor/plugins/forms/lang/tr.js | 3 + .../ckeditor/plugins/forms/lang/tt.js | 3 + .../ckeditor/plugins/forms/lang/ug.js | 3 + .../ckeditor/plugins/forms/lang/uk.js | 3 + .../ckeditor/plugins/forms/lang/vi.js | 3 + .../ckeditor/plugins/forms/lang/zh-cn.js | 2 + .../ckeditor/plugins/forms/lang/zh.js | 2 + .../ckeditor/plugins/forms/plugin.js | 14 + .../ckeditor/plugins/icons.png | Bin 0 -> 12345 bytes .../ckeditor/plugins/icons_hidpi.png | Bin 0 -> 38261 bytes .../ckeditor/plugins/iframe/dialogs/iframe.js | 11 + .../plugins/iframe/icons/hidpi/iframe.png | Bin 0 -> 1837 bytes .../ckeditor/plugins/iframe/icons/iframe.png | Bin 0 -> 816 bytes .../plugins/iframe/images/placeholder.png | Bin 0 -> 265 bytes .../ckeditor/plugins/iframe/lang/af.js | 1 + .../ckeditor/plugins/iframe/lang/ar.js | 1 + .../ckeditor/plugins/iframe/lang/az.js | 1 + .../ckeditor/plugins/iframe/lang/bg.js | 1 + .../ckeditor/plugins/iframe/lang/bn.js | 1 + .../ckeditor/plugins/iframe/lang/bs.js | 1 + .../ckeditor/plugins/iframe/lang/ca.js | 1 + .../ckeditor/plugins/iframe/lang/cs.js | 1 + .../ckeditor/plugins/iframe/lang/cy.js | 1 + .../ckeditor/plugins/iframe/lang/da.js | 1 + .../ckeditor/plugins/iframe/lang/de-ch.js | 1 + .../ckeditor/plugins/iframe/lang/de.js | 1 + .../ckeditor/plugins/iframe/lang/el.js | 1 + .../ckeditor/plugins/iframe/lang/en-au.js | 1 + .../ckeditor/plugins/iframe/lang/en-ca.js | 1 + .../ckeditor/plugins/iframe/lang/en-gb.js | 1 + .../ckeditor/plugins/iframe/lang/en.js | 1 + .../ckeditor/plugins/iframe/lang/eo.js | 1 + .../ckeditor/plugins/iframe/lang/es-mx.js | 1 + .../ckeditor/plugins/iframe/lang/es.js | 1 + .../ckeditor/plugins/iframe/lang/et.js | 1 + .../ckeditor/plugins/iframe/lang/eu.js | 1 + .../ckeditor/plugins/iframe/lang/fa.js | 1 + .../ckeditor/plugins/iframe/lang/fi.js | 1 + .../ckeditor/plugins/iframe/lang/fo.js | 1 + .../ckeditor/plugins/iframe/lang/fr-ca.js | 1 + .../ckeditor/plugins/iframe/lang/fr.js | 1 + .../ckeditor/plugins/iframe/lang/gl.js | 1 + .../ckeditor/plugins/iframe/lang/gu.js | 1 + .../ckeditor/plugins/iframe/lang/he.js | 1 + .../ckeditor/plugins/iframe/lang/hi.js | 1 + .../ckeditor/plugins/iframe/lang/hr.js | 1 + .../ckeditor/plugins/iframe/lang/hu.js | 1 + .../ckeditor/plugins/iframe/lang/id.js | 1 + .../ckeditor/plugins/iframe/lang/is.js | 1 + .../ckeditor/plugins/iframe/lang/it.js | 1 + .../ckeditor/plugins/iframe/lang/ja.js | 1 + .../ckeditor/plugins/iframe/lang/ka.js | 1 + .../ckeditor/plugins/iframe/lang/km.js | 1 + .../ckeditor/plugins/iframe/lang/ko.js | 1 + .../ckeditor/plugins/iframe/lang/ku.js | 1 + .../ckeditor/plugins/iframe/lang/lt.js | 1 + .../ckeditor/plugins/iframe/lang/lv.js | 1 + .../ckeditor/plugins/iframe/lang/mk.js | 1 + .../ckeditor/plugins/iframe/lang/mn.js | 1 + .../ckeditor/plugins/iframe/lang/ms.js | 1 + .../ckeditor/plugins/iframe/lang/nb.js | 1 + .../ckeditor/plugins/iframe/lang/nl.js | 1 + .../ckeditor/plugins/iframe/lang/no.js | 1 + .../ckeditor/plugins/iframe/lang/oc.js | 1 + .../ckeditor/plugins/iframe/lang/pl.js | 1 + .../ckeditor/plugins/iframe/lang/pt-br.js | 1 + .../ckeditor/plugins/iframe/lang/pt.js | 1 + .../ckeditor/plugins/iframe/lang/ro.js | 1 + .../ckeditor/plugins/iframe/lang/ru.js | 1 + .../ckeditor/plugins/iframe/lang/si.js | 1 + .../ckeditor/plugins/iframe/lang/sk.js | 1 + .../ckeditor/plugins/iframe/lang/sl.js | 1 + .../ckeditor/plugins/iframe/lang/sq.js | 1 + .../ckeditor/plugins/iframe/lang/sr-latn.js | 1 + .../ckeditor/plugins/iframe/lang/sr.js | 1 + .../ckeditor/plugins/iframe/lang/sv.js | 1 + .../ckeditor/plugins/iframe/lang/th.js | 1 + .../ckeditor/plugins/iframe/lang/tr.js | 1 + .../ckeditor/plugins/iframe/lang/tt.js | 1 + .../ckeditor/plugins/iframe/lang/ug.js | 1 + .../ckeditor/plugins/iframe/lang/uk.js | 1 + .../ckeditor/plugins/iframe/lang/vi.js | 1 + .../ckeditor/plugins/iframe/lang/zh-cn.js | 1 + .../ckeditor/plugins/iframe/lang/zh.js | 1 + .../ckeditor/plugins/iframe/plugin.js | 8 + .../ckeditor/plugins/iframedialog/plugin.js | 8 + .../ckeditor/plugins/image/dialogs/image.js | 44 + .../ckeditor/plugins/image/images/noimage.png | Bin 0 -> 1610 bytes .../ckeditor/plugins/image2/dialogs/image2.js | 15 + .../plugins/image2/icons/hidpi/image.png | Bin 0 -> 905 bytes .../ckeditor/plugins/image2/icons/image.png | Bin 0 -> 498 bytes .../ckeditor/plugins/image2/lang/af.js | 1 + .../ckeditor/plugins/image2/lang/ar.js | 1 + .../ckeditor/plugins/image2/lang/az.js | 1 + .../ckeditor/plugins/image2/lang/bg.js | 1 + .../ckeditor/plugins/image2/lang/bn.js | 1 + .../ckeditor/plugins/image2/lang/bs.js | 1 + .../ckeditor/plugins/image2/lang/ca.js | 1 + .../ckeditor/plugins/image2/lang/cs.js | 1 + .../ckeditor/plugins/image2/lang/cy.js | 1 + .../ckeditor/plugins/image2/lang/da.js | 1 + .../ckeditor/plugins/image2/lang/de-ch.js | 1 + .../ckeditor/plugins/image2/lang/de.js | 1 + .../ckeditor/plugins/image2/lang/el.js | 1 + .../ckeditor/plugins/image2/lang/en-au.js | 1 + .../ckeditor/plugins/image2/lang/en-ca.js | 1 + .../ckeditor/plugins/image2/lang/en-gb.js | 1 + .../ckeditor/plugins/image2/lang/en.js | 1 + .../ckeditor/plugins/image2/lang/eo.js | 1 + .../ckeditor/plugins/image2/lang/es-mx.js | 1 + .../ckeditor/plugins/image2/lang/es.js | 1 + .../ckeditor/plugins/image2/lang/et.js | 1 + .../ckeditor/plugins/image2/lang/eu.js | 1 + .../ckeditor/plugins/image2/lang/fa.js | 1 + .../ckeditor/plugins/image2/lang/fi.js | 1 + .../ckeditor/plugins/image2/lang/fo.js | 1 + .../ckeditor/plugins/image2/lang/fr-ca.js | 1 + .../ckeditor/plugins/image2/lang/fr.js | 1 + .../ckeditor/plugins/image2/lang/gl.js | 1 + .../ckeditor/plugins/image2/lang/gu.js | 1 + .../ckeditor/plugins/image2/lang/he.js | 1 + .../ckeditor/plugins/image2/lang/hi.js | 1 + .../ckeditor/plugins/image2/lang/hr.js | 1 + .../ckeditor/plugins/image2/lang/hu.js | 1 + .../ckeditor/plugins/image2/lang/id.js | 1 + .../ckeditor/plugins/image2/lang/is.js | 1 + .../ckeditor/plugins/image2/lang/it.js | 1 + .../ckeditor/plugins/image2/lang/ja.js | 1 + .../ckeditor/plugins/image2/lang/ka.js | 1 + .../ckeditor/plugins/image2/lang/km.js | 1 + .../ckeditor/plugins/image2/lang/ko.js | 1 + .../ckeditor/plugins/image2/lang/ku.js | 1 + .../ckeditor/plugins/image2/lang/lt.js | 1 + .../ckeditor/plugins/image2/lang/lv.js | 1 + .../ckeditor/plugins/image2/lang/mk.js | 1 + .../ckeditor/plugins/image2/lang/mn.js | 1 + .../ckeditor/plugins/image2/lang/ms.js | 1 + .../ckeditor/plugins/image2/lang/nb.js | 1 + .../ckeditor/plugins/image2/lang/nl.js | 2 + .../ckeditor/plugins/image2/lang/no.js | 1 + .../ckeditor/plugins/image2/lang/oc.js | 1 + .../ckeditor/plugins/image2/lang/pl.js | 1 + .../ckeditor/plugins/image2/lang/pt-br.js | 1 + .../ckeditor/plugins/image2/lang/pt.js | 1 + .../ckeditor/plugins/image2/lang/ro.js | 1 + .../ckeditor/plugins/image2/lang/ru.js | 1 + .../ckeditor/plugins/image2/lang/si.js | 1 + .../ckeditor/plugins/image2/lang/sk.js | 1 + .../ckeditor/plugins/image2/lang/sl.js | 1 + .../ckeditor/plugins/image2/lang/sq.js | 1 + .../ckeditor/plugins/image2/lang/sr-latn.js | 1 + .../ckeditor/plugins/image2/lang/sr.js | 1 + .../ckeditor/plugins/image2/lang/sv.js | 1 + .../ckeditor/plugins/image2/lang/th.js | 1 + .../ckeditor/plugins/image2/lang/tr.js | 1 + .../ckeditor/plugins/image2/lang/tt.js | 1 + .../ckeditor/plugins/image2/lang/ug.js | 1 + .../ckeditor/plugins/image2/lang/uk.js | 1 + .../ckeditor/plugins/image2/lang/vi.js | 1 + .../ckeditor/plugins/image2/lang/zh-cn.js | 1 + .../ckeditor/plugins/image2/lang/zh.js | 1 + .../ckeditor/plugins/image2/plugin.js | 31 + .../ckeditor/plugins/imagebase/lang/az.js | 5 + .../ckeditor/plugins/imagebase/lang/bg.js | 5 + .../ckeditor/plugins/imagebase/lang/cs.js | 5 + .../ckeditor/plugins/imagebase/lang/da.js | 5 + .../ckeditor/plugins/imagebase/lang/de-ch.js | 5 + .../ckeditor/plugins/imagebase/lang/de.js | 5 + .../ckeditor/plugins/imagebase/lang/en-au.js | 5 + .../ckeditor/plugins/imagebase/lang/en.js | 5 + .../ckeditor/plugins/imagebase/lang/et.js | 5 + .../ckeditor/plugins/imagebase/lang/fa.js | 5 + .../ckeditor/plugins/imagebase/lang/fr.js | 5 + .../ckeditor/plugins/imagebase/lang/gl.js | 5 + .../ckeditor/plugins/imagebase/lang/hr.js | 5 + .../ckeditor/plugins/imagebase/lang/hu.js | 5 + .../ckeditor/plugins/imagebase/lang/it.js | 5 + .../ckeditor/plugins/imagebase/lang/ku.js | 5 + .../ckeditor/plugins/imagebase/lang/lt.js | 5 + .../ckeditor/plugins/imagebase/lang/lv.js | 5 + .../ckeditor/plugins/imagebase/lang/nb.js | 5 + .../ckeditor/plugins/imagebase/lang/nl.js | 5 + .../ckeditor/plugins/imagebase/lang/pl.js | 5 + .../ckeditor/plugins/imagebase/lang/pt-br.js | 5 + .../ckeditor/plugins/imagebase/lang/pt.js | 5 + .../ckeditor/plugins/imagebase/lang/ro.js | 5 + .../ckeditor/plugins/imagebase/lang/ru.js | 5 + .../ckeditor/plugins/imagebase/lang/sk.js | 5 + .../ckeditor/plugins/imagebase/lang/sq.js | 5 + .../plugins/imagebase/lang/sr-latn.js | 5 + .../ckeditor/plugins/imagebase/lang/sr.js | 5 + .../ckeditor/plugins/imagebase/lang/sv.js | 5 + .../ckeditor/plugins/imagebase/lang/tr.js | 5 + .../ckeditor/plugins/imagebase/lang/ug.js | 5 + .../ckeditor/plugins/imagebase/lang/uk.js | 5 + .../ckeditor/plugins/imagebase/lang/zh-cn.js | 5 + .../ckeditor/plugins/imagebase/lang/zh.js | 5 + .../ckeditor/plugins/imagebase/plugin.js | 21 + .../plugins/imagebase/styles/imagebase.css | 9 + .../ckeditor/plugins/indentblock/plugin.js | 10 + .../justify/icons/hidpi/justifyblock.png | Bin 0 -> 533 bytes .../justify/icons/hidpi/justifycenter.png | Bin 0 -> 576 bytes .../justify/icons/hidpi/justifyleft.png | Bin 0 -> 569 bytes .../justify/icons/hidpi/justifyright.png | Bin 0 -> 549 bytes .../plugins/justify/icons/justifyblock.png | Bin 0 -> 315 bytes .../plugins/justify/icons/justifycenter.png | Bin 0 -> 564 bytes .../plugins/justify/icons/justifyleft.png | Bin 0 -> 342 bytes .../plugins/justify/icons/justifyright.png | Bin 0 -> 348 bytes .../ckeditor/plugins/justify/plugin.js | 12 + .../plugins/language/icons/hidpi/language.png | Bin 0 -> 795 bytes .../plugins/language/icons/language.png | Bin 0 -> 433 bytes .../ckeditor/plugins/language/lang/ar.js | 5 + .../ckeditor/plugins/language/lang/az.js | 5 + .../ckeditor/plugins/language/lang/bg.js | 5 + .../ckeditor/plugins/language/lang/ca.js | 5 + .../ckeditor/plugins/language/lang/cs.js | 5 + .../ckeditor/plugins/language/lang/cy.js | 5 + .../ckeditor/plugins/language/lang/da.js | 5 + .../ckeditor/plugins/language/lang/de-ch.js | 5 + .../ckeditor/plugins/language/lang/de.js | 5 + .../ckeditor/plugins/language/lang/el.js | 5 + .../ckeditor/plugins/language/lang/en-au.js | 5 + .../ckeditor/plugins/language/lang/en-gb.js | 5 + .../ckeditor/plugins/language/lang/en.js | 5 + .../ckeditor/plugins/language/lang/eo.js | 5 + .../ckeditor/plugins/language/lang/es-mx.js | 5 + .../ckeditor/plugins/language/lang/es.js | 5 + .../ckeditor/plugins/language/lang/et.js | 5 + .../ckeditor/plugins/language/lang/eu.js | 5 + .../ckeditor/plugins/language/lang/fa.js | 5 + .../ckeditor/plugins/language/lang/fi.js | 5 + .../ckeditor/plugins/language/lang/fo.js | 5 + .../ckeditor/plugins/language/lang/fr.js | 5 + .../ckeditor/plugins/language/lang/gl.js | 5 + .../ckeditor/plugins/language/lang/he.js | 5 + .../ckeditor/plugins/language/lang/hr.js | 5 + .../ckeditor/plugins/language/lang/hu.js | 5 + .../ckeditor/plugins/language/lang/id.js | 5 + .../ckeditor/plugins/language/lang/it.js | 5 + .../ckeditor/plugins/language/lang/ja.js | 5 + .../ckeditor/plugins/language/lang/km.js | 5 + .../ckeditor/plugins/language/lang/ko.js | 5 + .../ckeditor/plugins/language/lang/ku.js | 5 + .../ckeditor/plugins/language/lang/lt.js | 5 + .../ckeditor/plugins/language/lang/lv.js | 5 + .../ckeditor/plugins/language/lang/nb.js | 5 + .../ckeditor/plugins/language/lang/nl.js | 5 + .../ckeditor/plugins/language/lang/no.js | 5 + .../ckeditor/plugins/language/lang/oc.js | 5 + .../ckeditor/plugins/language/lang/pl.js | 5 + .../ckeditor/plugins/language/lang/pt-br.js | 5 + .../ckeditor/plugins/language/lang/pt.js | 5 + .../ckeditor/plugins/language/lang/ro.js | 5 + .../ckeditor/plugins/language/lang/ru.js | 5 + .../ckeditor/plugins/language/lang/sk.js | 5 + .../ckeditor/plugins/language/lang/sl.js | 5 + .../ckeditor/plugins/language/lang/sq.js | 5 + .../ckeditor/plugins/language/lang/sr-latn.js | 5 + .../ckeditor/plugins/language/lang/sr.js | 5 + .../ckeditor/plugins/language/lang/sv.js | 5 + .../ckeditor/plugins/language/lang/tr.js | 5 + .../ckeditor/plugins/language/lang/tt.js | 5 + .../ckeditor/plugins/language/lang/ug.js | 5 + .../ckeditor/plugins/language/lang/uk.js | 5 + .../ckeditor/plugins/language/lang/vi.js | 5 + .../ckeditor/plugins/language/lang/zh-cn.js | 5 + .../ckeditor/plugins/language/lang/zh.js | 5 + .../ckeditor/plugins/language/plugin.js | 9 + .../ckeditor/plugins/link/dialogs/anchor.js | 8 + .../ckeditor/plugins/link/dialogs/link.js | 30 + .../ckeditor/plugins/link/images/anchor.png | Bin 0 -> 752 bytes .../plugins/link/images/hidpi/anchor.png | Bin 0 -> 1109 bytes .../plugins/liststyle/dialogs/liststyle.js | 10 + .../ckeditor/plugins/liststyle/lang/af.js | 2 + .../ckeditor/plugins/liststyle/lang/ar.js | 1 + .../ckeditor/plugins/liststyle/lang/az.js | 2 + .../ckeditor/plugins/liststyle/lang/bg.js | 1 + .../ckeditor/plugins/liststyle/lang/bn.js | 1 + .../ckeditor/plugins/liststyle/lang/bs.js | 1 + .../ckeditor/plugins/liststyle/lang/ca.js | 1 + .../ckeditor/plugins/liststyle/lang/cs.js | 1 + .../ckeditor/plugins/liststyle/lang/cy.js | 1 + .../ckeditor/plugins/liststyle/lang/da.js | 2 + .../ckeditor/plugins/liststyle/lang/de-ch.js | 1 + .../ckeditor/plugins/liststyle/lang/de.js | 1 + .../ckeditor/plugins/liststyle/lang/el.js | 1 + .../ckeditor/plugins/liststyle/lang/en-au.js | 1 + .../ckeditor/plugins/liststyle/lang/en-ca.js | 1 + .../ckeditor/plugins/liststyle/lang/en-gb.js | 1 + .../ckeditor/plugins/liststyle/lang/en.js | 1 + .../ckeditor/plugins/liststyle/lang/eo.js | 2 + .../ckeditor/plugins/liststyle/lang/es-mx.js | 2 + .../ckeditor/plugins/liststyle/lang/es.js | 2 + .../ckeditor/plugins/liststyle/lang/et.js | 1 + .../ckeditor/plugins/liststyle/lang/eu.js | 2 + .../ckeditor/plugins/liststyle/lang/fa.js | 1 + .../ckeditor/plugins/liststyle/lang/fi.js | 2 + .../ckeditor/plugins/liststyle/lang/fo.js | 2 + .../ckeditor/plugins/liststyle/lang/fr-ca.js | 2 + .../ckeditor/plugins/liststyle/lang/fr.js | 2 + .../ckeditor/plugins/liststyle/lang/gl.js | 2 + .../ckeditor/plugins/liststyle/lang/gu.js | 1 + .../ckeditor/plugins/liststyle/lang/he.js | 2 + .../ckeditor/plugins/liststyle/lang/hi.js | 1 + .../ckeditor/plugins/liststyle/lang/hr.js | 2 + .../ckeditor/plugins/liststyle/lang/hu.js | 1 + .../ckeditor/plugins/liststyle/lang/id.js | 1 + .../ckeditor/plugins/liststyle/lang/is.js | 1 + .../ckeditor/plugins/liststyle/lang/it.js | 2 + .../ckeditor/plugins/liststyle/lang/ja.js | 1 + .../ckeditor/plugins/liststyle/lang/ka.js | 2 + .../ckeditor/plugins/liststyle/lang/km.js | 1 + .../ckeditor/plugins/liststyle/lang/ko.js | 1 + .../ckeditor/plugins/liststyle/lang/ku.js | 1 + .../ckeditor/plugins/liststyle/lang/lt.js | 2 + .../ckeditor/plugins/liststyle/lang/lv.js | 1 + .../ckeditor/plugins/liststyle/lang/mk.js | 1 + .../ckeditor/plugins/liststyle/lang/mn.js | 1 + .../ckeditor/plugins/liststyle/lang/ms.js | 1 + .../ckeditor/plugins/liststyle/lang/nb.js | 1 + .../ckeditor/plugins/liststyle/lang/nl.js | 2 + .../ckeditor/plugins/liststyle/lang/no.js | 1 + .../ckeditor/plugins/liststyle/lang/oc.js | 2 + .../ckeditor/plugins/liststyle/lang/pl.js | 2 + .../ckeditor/plugins/liststyle/lang/pt-br.js | 2 + .../ckeditor/plugins/liststyle/lang/pt.js | 1 + .../ckeditor/plugins/liststyle/lang/ro.js | 1 + .../ckeditor/plugins/liststyle/lang/ru.js | 2 + .../ckeditor/plugins/liststyle/lang/si.js | 1 + .../ckeditor/plugins/liststyle/lang/sk.js | 1 + .../ckeditor/plugins/liststyle/lang/sl.js | 1 + .../ckeditor/plugins/liststyle/lang/sq.js | 1 + .../plugins/liststyle/lang/sr-latn.js | 2 + .../ckeditor/plugins/liststyle/lang/sr.js | 2 + .../ckeditor/plugins/liststyle/lang/sv.js | 1 + .../ckeditor/plugins/liststyle/lang/th.js | 1 + .../ckeditor/plugins/liststyle/lang/tr.js | 1 + .../ckeditor/plugins/liststyle/lang/tt.js | 1 + .../ckeditor/plugins/liststyle/lang/ug.js | 2 + .../ckeditor/plugins/liststyle/lang/uk.js | 1 + .../ckeditor/plugins/liststyle/lang/vi.js | 2 + .../ckeditor/plugins/liststyle/lang/zh-cn.js | 1 + .../ckeditor/plugins/liststyle/lang/zh.js | 1 + .../ckeditor/plugins/liststyle/plugin.js | 7 + .../magicline/images/hidpi/icon-rtl.png | Bin 0 -> 176 bytes .../plugins/magicline/images/hidpi/icon.png | Bin 0 -> 199 bytes .../plugins/magicline/images/icon-rtl.png | Bin 0 -> 138 bytes .../plugins/magicline/images/icon.png | Bin 0 -> 133 bytes .../plugins/mathjax/dialogs/mathjax.js | 7 + .../plugins/mathjax/icons/hidpi/mathjax.png | Bin 0 -> 1437 bytes .../plugins/mathjax/icons/mathjax.png | Bin 0 -> 703 bytes .../plugins/mathjax/images/loader.gif | Bin 0 -> 784 bytes .../ckeditor/plugins/mathjax/lang/af.js | 1 + .../ckeditor/plugins/mathjax/lang/ar.js | 1 + .../ckeditor/plugins/mathjax/lang/az.js | 1 + .../ckeditor/plugins/mathjax/lang/bg.js | 1 + .../ckeditor/plugins/mathjax/lang/ca.js | 1 + .../ckeditor/plugins/mathjax/lang/cs.js | 1 + .../ckeditor/plugins/mathjax/lang/cy.js | 1 + .../ckeditor/plugins/mathjax/lang/da.js | 1 + .../ckeditor/plugins/mathjax/lang/de-ch.js | 1 + .../ckeditor/plugins/mathjax/lang/de.js | 1 + .../ckeditor/plugins/mathjax/lang/el.js | 1 + .../ckeditor/plugins/mathjax/lang/en-au.js | 1 + .../ckeditor/plugins/mathjax/lang/en-gb.js | 1 + .../ckeditor/plugins/mathjax/lang/en.js | 1 + .../ckeditor/plugins/mathjax/lang/eo.js | 1 + .../ckeditor/plugins/mathjax/lang/es-mx.js | 1 + .../ckeditor/plugins/mathjax/lang/es.js | 1 + .../ckeditor/plugins/mathjax/lang/et.js | 1 + .../ckeditor/plugins/mathjax/lang/eu.js | 1 + .../ckeditor/plugins/mathjax/lang/fa.js | 1 + .../ckeditor/plugins/mathjax/lang/fi.js | 1 + .../ckeditor/plugins/mathjax/lang/fr.js | 1 + .../ckeditor/plugins/mathjax/lang/gl.js | 1 + .../ckeditor/plugins/mathjax/lang/he.js | 1 + .../ckeditor/plugins/mathjax/lang/hr.js | 1 + .../ckeditor/plugins/mathjax/lang/hu.js | 1 + .../ckeditor/plugins/mathjax/lang/id.js | 1 + .../ckeditor/plugins/mathjax/lang/it.js | 1 + .../ckeditor/plugins/mathjax/lang/ja.js | 1 + .../ckeditor/plugins/mathjax/lang/km.js | 1 + .../ckeditor/plugins/mathjax/lang/ko.js | 1 + .../ckeditor/plugins/mathjax/lang/ku.js | 1 + .../ckeditor/plugins/mathjax/lang/lt.js | 1 + .../ckeditor/plugins/mathjax/lang/lv.js | 1 + .../ckeditor/plugins/mathjax/lang/nb.js | 1 + .../ckeditor/plugins/mathjax/lang/nl.js | 1 + .../ckeditor/plugins/mathjax/lang/no.js | 1 + .../ckeditor/plugins/mathjax/lang/oc.js | 1 + .../ckeditor/plugins/mathjax/lang/pl.js | 1 + .../ckeditor/plugins/mathjax/lang/pt-br.js | 1 + .../ckeditor/plugins/mathjax/lang/pt.js | 1 + .../ckeditor/plugins/mathjax/lang/ro.js | 1 + .../ckeditor/plugins/mathjax/lang/ru.js | 1 + .../ckeditor/plugins/mathjax/lang/sk.js | 1 + .../ckeditor/plugins/mathjax/lang/sl.js | 1 + .../ckeditor/plugins/mathjax/lang/sq.js | 1 + .../ckeditor/plugins/mathjax/lang/sr-latn.js | 1 + .../ckeditor/plugins/mathjax/lang/sr.js | 1 + .../ckeditor/plugins/mathjax/lang/sv.js | 1 + .../ckeditor/plugins/mathjax/lang/tr.js | 1 + .../ckeditor/plugins/mathjax/lang/tt.js | 1 + .../ckeditor/plugins/mathjax/lang/ug.js | 1 + .../ckeditor/plugins/mathjax/lang/uk.js | 1 + .../ckeditor/plugins/mathjax/lang/vi.js | 1 + .../ckeditor/plugins/mathjax/lang/zh-cn.js | 1 + .../ckeditor/plugins/mathjax/lang/zh.js | 1 + .../ckeditor/plugins/mathjax/plugin.js | 15 + .../ckeditor/plugins/mentions/plugin.js | 9 + .../newpage/icons/hidpi/newpage-rtl.png | Bin 0 -> 653 bytes .../plugins/newpage/icons/hidpi/newpage.png | Bin 0 -> 675 bytes .../plugins/newpage/icons/newpage-rtl.png | Bin 0 -> 440 bytes .../plugins/newpage/icons/newpage.png | Bin 0 -> 444 bytes .../ckeditor/plugins/newpage/lang/af.js | 1 + .../ckeditor/plugins/newpage/lang/ar.js | 1 + .../ckeditor/plugins/newpage/lang/az.js | 1 + .../ckeditor/plugins/newpage/lang/bg.js | 1 + .../ckeditor/plugins/newpage/lang/bn.js | 1 + .../ckeditor/plugins/newpage/lang/bs.js | 1 + .../ckeditor/plugins/newpage/lang/ca.js | 1 + .../ckeditor/plugins/newpage/lang/cs.js | 1 + .../ckeditor/plugins/newpage/lang/cy.js | 1 + .../ckeditor/plugins/newpage/lang/da.js | 1 + .../ckeditor/plugins/newpage/lang/de-ch.js | 1 + .../ckeditor/plugins/newpage/lang/de.js | 1 + .../ckeditor/plugins/newpage/lang/el.js | 1 + .../ckeditor/plugins/newpage/lang/en-au.js | 1 + .../ckeditor/plugins/newpage/lang/en-ca.js | 1 + .../ckeditor/plugins/newpage/lang/en-gb.js | 1 + .../ckeditor/plugins/newpage/lang/en.js | 1 + .../ckeditor/plugins/newpage/lang/eo.js | 1 + .../ckeditor/plugins/newpage/lang/es-mx.js | 1 + .../ckeditor/plugins/newpage/lang/es.js | 1 + .../ckeditor/plugins/newpage/lang/et.js | 1 + .../ckeditor/plugins/newpage/lang/eu.js | 1 + .../ckeditor/plugins/newpage/lang/fa.js | 1 + .../ckeditor/plugins/newpage/lang/fi.js | 1 + .../ckeditor/plugins/newpage/lang/fo.js | 1 + .../ckeditor/plugins/newpage/lang/fr-ca.js | 1 + .../ckeditor/plugins/newpage/lang/fr.js | 1 + .../ckeditor/plugins/newpage/lang/gl.js | 1 + .../ckeditor/plugins/newpage/lang/gu.js | 1 + .../ckeditor/plugins/newpage/lang/he.js | 1 + .../ckeditor/plugins/newpage/lang/hi.js | 1 + .../ckeditor/plugins/newpage/lang/hr.js | 1 + .../ckeditor/plugins/newpage/lang/hu.js | 1 + .../ckeditor/plugins/newpage/lang/id.js | 1 + .../ckeditor/plugins/newpage/lang/is.js | 1 + .../ckeditor/plugins/newpage/lang/it.js | 1 + .../ckeditor/plugins/newpage/lang/ja.js | 1 + .../ckeditor/plugins/newpage/lang/ka.js | 1 + .../ckeditor/plugins/newpage/lang/km.js | 1 + .../ckeditor/plugins/newpage/lang/ko.js | 1 + .../ckeditor/plugins/newpage/lang/ku.js | 1 + .../ckeditor/plugins/newpage/lang/lt.js | 1 + .../ckeditor/plugins/newpage/lang/lv.js | 1 + .../ckeditor/plugins/newpage/lang/mk.js | 1 + .../ckeditor/plugins/newpage/lang/mn.js | 1 + .../ckeditor/plugins/newpage/lang/ms.js | 1 + .../ckeditor/plugins/newpage/lang/nb.js | 1 + .../ckeditor/plugins/newpage/lang/nl.js | 1 + .../ckeditor/plugins/newpage/lang/no.js | 1 + .../ckeditor/plugins/newpage/lang/oc.js | 1 + .../ckeditor/plugins/newpage/lang/pl.js | 1 + .../ckeditor/plugins/newpage/lang/pt-br.js | 1 + .../ckeditor/plugins/newpage/lang/pt.js | 1 + .../ckeditor/plugins/newpage/lang/ro.js | 1 + .../ckeditor/plugins/newpage/lang/ru.js | 1 + .../ckeditor/plugins/newpage/lang/si.js | 1 + .../ckeditor/plugins/newpage/lang/sk.js | 1 + .../ckeditor/plugins/newpage/lang/sl.js | 1 + .../ckeditor/plugins/newpage/lang/sq.js | 1 + .../ckeditor/plugins/newpage/lang/sr-latn.js | 1 + .../ckeditor/plugins/newpage/lang/sr.js | 1 + .../ckeditor/plugins/newpage/lang/sv.js | 1 + .../ckeditor/plugins/newpage/lang/th.js | 1 + .../ckeditor/plugins/newpage/lang/tr.js | 1 + .../ckeditor/plugins/newpage/lang/tt.js | 1 + .../ckeditor/plugins/newpage/lang/ug.js | 1 + .../ckeditor/plugins/newpage/lang/uk.js | 1 + .../ckeditor/plugins/newpage/lang/vi.js | 1 + .../ckeditor/plugins/newpage/lang/zh-cn.js | 1 + .../ckeditor/plugins/newpage/lang/zh.js | 1 + .../ckeditor/plugins/newpage/plugin.js | 6 + .../pagebreak/icons/hidpi/pagebreak-rtl.png | Bin 0 -> 807 bytes .../pagebreak/icons/hidpi/pagebreak.png | Bin 0 -> 809 bytes .../plugins/pagebreak/icons/pagebreak-rtl.png | Bin 0 -> 468 bytes .../plugins/pagebreak/icons/pagebreak.png | Bin 0 -> 459 bytes .../plugins/pagebreak/images/pagebreak.gif | Bin 0 -> 99 bytes .../ckeditor/plugins/pagebreak/lang/af.js | 1 + .../ckeditor/plugins/pagebreak/lang/ar.js | 1 + .../ckeditor/plugins/pagebreak/lang/az.js | 1 + .../ckeditor/plugins/pagebreak/lang/bg.js | 1 + .../ckeditor/plugins/pagebreak/lang/bn.js | 1 + .../ckeditor/plugins/pagebreak/lang/bs.js | 1 + .../ckeditor/plugins/pagebreak/lang/ca.js | 1 + .../ckeditor/plugins/pagebreak/lang/cs.js | 1 + .../ckeditor/plugins/pagebreak/lang/cy.js | 1 + .../ckeditor/plugins/pagebreak/lang/da.js | 1 + .../ckeditor/plugins/pagebreak/lang/de-ch.js | 1 + .../ckeditor/plugins/pagebreak/lang/de.js | 1 + .../ckeditor/plugins/pagebreak/lang/el.js | 1 + .../ckeditor/plugins/pagebreak/lang/en-au.js | 1 + .../ckeditor/plugins/pagebreak/lang/en-ca.js | 1 + .../ckeditor/plugins/pagebreak/lang/en-gb.js | 1 + .../ckeditor/plugins/pagebreak/lang/en.js | 1 + .../ckeditor/plugins/pagebreak/lang/eo.js | 1 + .../ckeditor/plugins/pagebreak/lang/es-mx.js | 1 + .../ckeditor/plugins/pagebreak/lang/es.js | 1 + .../ckeditor/plugins/pagebreak/lang/et.js | 1 + .../ckeditor/plugins/pagebreak/lang/eu.js | 1 + .../ckeditor/plugins/pagebreak/lang/fa.js | 1 + .../ckeditor/plugins/pagebreak/lang/fi.js | 1 + .../ckeditor/plugins/pagebreak/lang/fo.js | 1 + .../ckeditor/plugins/pagebreak/lang/fr-ca.js | 1 + .../ckeditor/plugins/pagebreak/lang/fr.js | 1 + .../ckeditor/plugins/pagebreak/lang/gl.js | 1 + .../ckeditor/plugins/pagebreak/lang/gu.js | 1 + .../ckeditor/plugins/pagebreak/lang/he.js | 1 + .../ckeditor/plugins/pagebreak/lang/hi.js | 1 + .../ckeditor/plugins/pagebreak/lang/hr.js | 1 + .../ckeditor/plugins/pagebreak/lang/hu.js | 1 + .../ckeditor/plugins/pagebreak/lang/id.js | 1 + .../ckeditor/plugins/pagebreak/lang/is.js | 1 + .../ckeditor/plugins/pagebreak/lang/it.js | 1 + .../ckeditor/plugins/pagebreak/lang/ja.js | 1 + .../ckeditor/plugins/pagebreak/lang/ka.js | 1 + .../ckeditor/plugins/pagebreak/lang/km.js | 1 + .../ckeditor/plugins/pagebreak/lang/ko.js | 1 + .../ckeditor/plugins/pagebreak/lang/ku.js | 1 + .../ckeditor/plugins/pagebreak/lang/lt.js | 1 + .../ckeditor/plugins/pagebreak/lang/lv.js | 1 + .../ckeditor/plugins/pagebreak/lang/mk.js | 1 + .../ckeditor/plugins/pagebreak/lang/mn.js | 1 + .../ckeditor/plugins/pagebreak/lang/ms.js | 1 + .../ckeditor/plugins/pagebreak/lang/nb.js | 1 + .../ckeditor/plugins/pagebreak/lang/nl.js | 1 + .../ckeditor/plugins/pagebreak/lang/no.js | 1 + .../ckeditor/plugins/pagebreak/lang/oc.js | 1 + .../ckeditor/plugins/pagebreak/lang/pl.js | 1 + .../ckeditor/plugins/pagebreak/lang/pt-br.js | 1 + .../ckeditor/plugins/pagebreak/lang/pt.js | 1 + .../ckeditor/plugins/pagebreak/lang/ro.js | 1 + .../ckeditor/plugins/pagebreak/lang/ru.js | 1 + .../ckeditor/plugins/pagebreak/lang/si.js | 1 + .../ckeditor/plugins/pagebreak/lang/sk.js | 1 + .../ckeditor/plugins/pagebreak/lang/sl.js | 1 + .../ckeditor/plugins/pagebreak/lang/sq.js | 1 + .../plugins/pagebreak/lang/sr-latn.js | 1 + .../ckeditor/plugins/pagebreak/lang/sr.js | 1 + .../ckeditor/plugins/pagebreak/lang/sv.js | 1 + .../ckeditor/plugins/pagebreak/lang/th.js | 1 + .../ckeditor/plugins/pagebreak/lang/tr.js | 1 + .../ckeditor/plugins/pagebreak/lang/tt.js | 1 + .../ckeditor/plugins/pagebreak/lang/ug.js | 1 + .../ckeditor/plugins/pagebreak/lang/uk.js | 1 + .../ckeditor/plugins/pagebreak/lang/vi.js | 1 + .../ckeditor/plugins/pagebreak/lang/zh-cn.js | 1 + .../ckeditor/plugins/pagebreak/lang/zh.js | 1 + .../ckeditor/plugins/pagebreak/plugin.js | 9 + .../ckeditor/plugins/panelbutton/plugin.js | 8 + .../plugins/pastefromgdocs/filter/default.js | 8 + .../pastefromlibreoffice/filter/default.js | 11 + .../plugins/pastefromword/filter/default.js | 42 + .../plugins/pastetools/filter/common.js | 24 + .../plugins/pastetools/filter/image.js | 12 + .../placeholder/dialogs/placeholder.js | 5 + .../placeholder/icons/hidpi/placeholder.png | Bin 0 -> 1576 bytes .../plugins/placeholder/icons/placeholder.png | Bin 0 -> 835 bytes .../ckeditor/plugins/placeholder/lang/af.js | 5 + .../ckeditor/plugins/placeholder/lang/ar.js | 5 + .../ckeditor/plugins/placeholder/lang/az.js | 5 + .../ckeditor/plugins/placeholder/lang/bg.js | 5 + .../ckeditor/plugins/placeholder/lang/ca.js | 5 + .../ckeditor/plugins/placeholder/lang/cs.js | 5 + .../ckeditor/plugins/placeholder/lang/cy.js | 5 + .../ckeditor/plugins/placeholder/lang/da.js | 5 + .../plugins/placeholder/lang/de-ch.js | 5 + .../ckeditor/plugins/placeholder/lang/de.js | 5 + .../ckeditor/plugins/placeholder/lang/el.js | 5 + .../plugins/placeholder/lang/en-au.js | 5 + .../plugins/placeholder/lang/en-gb.js | 5 + .../ckeditor/plugins/placeholder/lang/en.js | 5 + .../ckeditor/plugins/placeholder/lang/eo.js | 5 + .../plugins/placeholder/lang/es-mx.js | 5 + .../ckeditor/plugins/placeholder/lang/es.js | 5 + .../ckeditor/plugins/placeholder/lang/et.js | 5 + .../ckeditor/plugins/placeholder/lang/eu.js | 5 + .../ckeditor/plugins/placeholder/lang/fa.js | 5 + .../ckeditor/plugins/placeholder/lang/fi.js | 5 + .../plugins/placeholder/lang/fr-ca.js | 5 + .../ckeditor/plugins/placeholder/lang/fr.js | 5 + .../ckeditor/plugins/placeholder/lang/gl.js | 5 + .../ckeditor/plugins/placeholder/lang/he.js | 5 + .../ckeditor/plugins/placeholder/lang/hr.js | 5 + .../ckeditor/plugins/placeholder/lang/hu.js | 5 + .../ckeditor/plugins/placeholder/lang/id.js | 5 + .../ckeditor/plugins/placeholder/lang/it.js | 5 + .../ckeditor/plugins/placeholder/lang/ja.js | 5 + .../ckeditor/plugins/placeholder/lang/km.js | 5 + .../ckeditor/plugins/placeholder/lang/ko.js | 5 + .../ckeditor/plugins/placeholder/lang/ku.js | 5 + .../ckeditor/plugins/placeholder/lang/lv.js | 5 + .../ckeditor/plugins/placeholder/lang/nb.js | 5 + .../ckeditor/plugins/placeholder/lang/nl.js | 5 + .../ckeditor/plugins/placeholder/lang/no.js | 5 + .../ckeditor/plugins/placeholder/lang/oc.js | 5 + .../ckeditor/plugins/placeholder/lang/pl.js | 5 + .../plugins/placeholder/lang/pt-br.js | 5 + .../ckeditor/plugins/placeholder/lang/pt.js | 5 + .../ckeditor/plugins/placeholder/lang/ro.js | 5 + .../ckeditor/plugins/placeholder/lang/ru.js | 5 + .../ckeditor/plugins/placeholder/lang/si.js | 5 + .../ckeditor/plugins/placeholder/lang/sk.js | 5 + .../ckeditor/plugins/placeholder/lang/sl.js | 5 + .../ckeditor/plugins/placeholder/lang/sq.js | 5 + .../plugins/placeholder/lang/sr-latn.js | 5 + .../ckeditor/plugins/placeholder/lang/sr.js | 5 + .../ckeditor/plugins/placeholder/lang/sv.js | 5 + .../ckeditor/plugins/placeholder/lang/th.js | 5 + .../ckeditor/plugins/placeholder/lang/tr.js | 5 + .../ckeditor/plugins/placeholder/lang/tt.js | 5 + .../ckeditor/plugins/placeholder/lang/ug.js | 5 + .../ckeditor/plugins/placeholder/lang/uk.js | 5 + .../ckeditor/plugins/placeholder/lang/vi.js | 5 + .../plugins/placeholder/lang/zh-cn.js | 5 + .../ckeditor/plugins/placeholder/lang/zh.js | 5 + .../ckeditor/plugins/placeholder/plugin.js | 7 + .../preview/icons/hidpi/preview-rtl.png | Bin 0 -> 1241 bytes .../plugins/preview/icons/hidpi/preview.png | Bin 0 -> 1254 bytes .../plugins/preview/icons/preview-rtl.png | Bin 0 -> 625 bytes .../plugins/preview/icons/preview.png | Bin 0 -> 632 bytes .../plugins/preview/images/pagebreak.gif | Bin 0 -> 99 bytes .../ckeditor/plugins/preview/lang/af.js | 1 + .../ckeditor/plugins/preview/lang/ar.js | 1 + .../ckeditor/plugins/preview/lang/az.js | 1 + .../ckeditor/plugins/preview/lang/bg.js | 1 + .../ckeditor/plugins/preview/lang/bn.js | 1 + .../ckeditor/plugins/preview/lang/bs.js | 1 + .../ckeditor/plugins/preview/lang/ca.js | 1 + .../ckeditor/plugins/preview/lang/cs.js | 1 + .../ckeditor/plugins/preview/lang/cy.js | 1 + .../ckeditor/plugins/preview/lang/da.js | 1 + .../ckeditor/plugins/preview/lang/de-ch.js | 1 + .../ckeditor/plugins/preview/lang/de.js | 1 + .../ckeditor/plugins/preview/lang/el.js | 1 + .../ckeditor/plugins/preview/lang/en-au.js | 1 + .../ckeditor/plugins/preview/lang/en-ca.js | 1 + .../ckeditor/plugins/preview/lang/en-gb.js | 1 + .../ckeditor/plugins/preview/lang/en.js | 1 + .../ckeditor/plugins/preview/lang/eo.js | 1 + .../ckeditor/plugins/preview/lang/es-mx.js | 1 + .../ckeditor/plugins/preview/lang/es.js | 1 + .../ckeditor/plugins/preview/lang/et.js | 1 + .../ckeditor/plugins/preview/lang/eu.js | 1 + .../ckeditor/plugins/preview/lang/fa.js | 1 + .../ckeditor/plugins/preview/lang/fi.js | 1 + .../ckeditor/plugins/preview/lang/fo.js | 1 + .../ckeditor/plugins/preview/lang/fr-ca.js | 1 + .../ckeditor/plugins/preview/lang/fr.js | 1 + .../ckeditor/plugins/preview/lang/gl.js | 1 + .../ckeditor/plugins/preview/lang/gu.js | 1 + .../ckeditor/plugins/preview/lang/he.js | 1 + .../ckeditor/plugins/preview/lang/hi.js | 1 + .../ckeditor/plugins/preview/lang/hr.js | 1 + .../ckeditor/plugins/preview/lang/hu.js | 1 + .../ckeditor/plugins/preview/lang/id.js | 1 + .../ckeditor/plugins/preview/lang/is.js | 1 + .../ckeditor/plugins/preview/lang/it.js | 1 + .../ckeditor/plugins/preview/lang/ja.js | 1 + .../ckeditor/plugins/preview/lang/ka.js | 1 + .../ckeditor/plugins/preview/lang/km.js | 1 + .../ckeditor/plugins/preview/lang/ko.js | 1 + .../ckeditor/plugins/preview/lang/ku.js | 1 + .../ckeditor/plugins/preview/lang/lt.js | 1 + .../ckeditor/plugins/preview/lang/lv.js | 1 + .../ckeditor/plugins/preview/lang/mk.js | 1 + .../ckeditor/plugins/preview/lang/mn.js | 1 + .../ckeditor/plugins/preview/lang/ms.js | 1 + .../ckeditor/plugins/preview/lang/nb.js | 1 + .../ckeditor/plugins/preview/lang/nl.js | 1 + .../ckeditor/plugins/preview/lang/no.js | 1 + .../ckeditor/plugins/preview/lang/oc.js | 1 + .../ckeditor/plugins/preview/lang/pl.js | 1 + .../ckeditor/plugins/preview/lang/pt-br.js | 1 + .../ckeditor/plugins/preview/lang/pt.js | 1 + .../ckeditor/plugins/preview/lang/ro.js | 1 + .../ckeditor/plugins/preview/lang/ru.js | 1 + .../ckeditor/plugins/preview/lang/si.js | 1 + .../ckeditor/plugins/preview/lang/sk.js | 1 + .../ckeditor/plugins/preview/lang/sl.js | 1 + .../ckeditor/plugins/preview/lang/sq.js | 1 + .../ckeditor/plugins/preview/lang/sr-latn.js | 1 + .../ckeditor/plugins/preview/lang/sr.js | 1 + .../ckeditor/plugins/preview/lang/sv.js | 1 + .../ckeditor/plugins/preview/lang/th.js | 1 + .../ckeditor/plugins/preview/lang/tr.js | 1 + .../ckeditor/plugins/preview/lang/tt.js | 1 + .../ckeditor/plugins/preview/lang/ug.js | 1 + .../ckeditor/plugins/preview/lang/uk.js | 1 + .../ckeditor/plugins/preview/lang/vi.js | 1 + .../ckeditor/plugins/preview/lang/zh-cn.js | 1 + .../ckeditor/plugins/preview/lang/zh.js | 1 + .../ckeditor/plugins/preview/plugin.js | 10 + .../ckeditor/plugins/preview/preview.html | 13 + .../plugins/preview/styles/screen.css | 10 + .../plugins/print/icons/hidpi/print.png | Bin 0 -> 928 bytes .../ckeditor/plugins/print/icons/print.png | Bin 0 -> 439 bytes .../ckeditor/plugins/print/lang/af.js | 1 + .../ckeditor/plugins/print/lang/ar.js | 1 + .../ckeditor/plugins/print/lang/az.js | 1 + .../ckeditor/plugins/print/lang/bg.js | 1 + .../ckeditor/plugins/print/lang/bn.js | 1 + .../ckeditor/plugins/print/lang/bs.js | 1 + .../ckeditor/plugins/print/lang/ca.js | 1 + .../ckeditor/plugins/print/lang/cs.js | 1 + .../ckeditor/plugins/print/lang/cy.js | 1 + .../ckeditor/plugins/print/lang/da.js | 1 + .../ckeditor/plugins/print/lang/de-ch.js | 1 + .../ckeditor/plugins/print/lang/de.js | 1 + .../ckeditor/plugins/print/lang/el.js | 1 + .../ckeditor/plugins/print/lang/en-au.js | 1 + .../ckeditor/plugins/print/lang/en-ca.js | 1 + .../ckeditor/plugins/print/lang/en-gb.js | 1 + .../ckeditor/plugins/print/lang/en.js | 1 + .../ckeditor/plugins/print/lang/eo.js | 1 + .../ckeditor/plugins/print/lang/es-mx.js | 1 + .../ckeditor/plugins/print/lang/es.js | 1 + .../ckeditor/plugins/print/lang/et.js | 1 + .../ckeditor/plugins/print/lang/eu.js | 1 + .../ckeditor/plugins/print/lang/fa.js | 1 + .../ckeditor/plugins/print/lang/fi.js | 1 + .../ckeditor/plugins/print/lang/fo.js | 1 + .../ckeditor/plugins/print/lang/fr-ca.js | 1 + .../ckeditor/plugins/print/lang/fr.js | 1 + .../ckeditor/plugins/print/lang/gl.js | 1 + .../ckeditor/plugins/print/lang/gu.js | 1 + .../ckeditor/plugins/print/lang/he.js | 1 + .../ckeditor/plugins/print/lang/hi.js | 1 + .../ckeditor/plugins/print/lang/hr.js | 1 + .../ckeditor/plugins/print/lang/hu.js | 1 + .../ckeditor/plugins/print/lang/id.js | 1 + .../ckeditor/plugins/print/lang/is.js | 1 + .../ckeditor/plugins/print/lang/it.js | 1 + .../ckeditor/plugins/print/lang/ja.js | 1 + .../ckeditor/plugins/print/lang/ka.js | 1 + .../ckeditor/plugins/print/lang/km.js | 1 + .../ckeditor/plugins/print/lang/ko.js | 1 + .../ckeditor/plugins/print/lang/ku.js | 1 + .../ckeditor/plugins/print/lang/lt.js | 1 + .../ckeditor/plugins/print/lang/lv.js | 1 + .../ckeditor/plugins/print/lang/mk.js | 1 + .../ckeditor/plugins/print/lang/mn.js | 1 + .../ckeditor/plugins/print/lang/ms.js | 1 + .../ckeditor/plugins/print/lang/nb.js | 1 + .../ckeditor/plugins/print/lang/nl.js | 1 + .../ckeditor/plugins/print/lang/no.js | 1 + .../ckeditor/plugins/print/lang/oc.js | 1 + .../ckeditor/plugins/print/lang/pl.js | 1 + .../ckeditor/plugins/print/lang/pt-br.js | 1 + .../ckeditor/plugins/print/lang/pt.js | 1 + .../ckeditor/plugins/print/lang/ro.js | 1 + .../ckeditor/plugins/print/lang/ru.js | 1 + .../ckeditor/plugins/print/lang/si.js | 1 + .../ckeditor/plugins/print/lang/sk.js | 1 + .../ckeditor/plugins/print/lang/sl.js | 1 + .../ckeditor/plugins/print/lang/sq.js | 1 + .../ckeditor/plugins/print/lang/sr-latn.js | 1 + .../ckeditor/plugins/print/lang/sr.js | 1 + .../ckeditor/plugins/print/lang/sv.js | 1 + .../ckeditor/plugins/print/lang/th.js | 1 + .../ckeditor/plugins/print/lang/tr.js | 1 + .../ckeditor/plugins/print/lang/tt.js | 1 + .../ckeditor/plugins/print/lang/ug.js | 1 + .../ckeditor/plugins/print/lang/uk.js | 1 + .../ckeditor/plugins/print/lang/vi.js | 1 + .../ckeditor/plugins/print/lang/zh-cn.js | 1 + .../ckeditor/plugins/print/lang/zh.js | 1 + .../ckeditor/plugins/print/plugin.js | 6 + .../plugins/save/icons/hidpi/save.png | Bin 0 -> 809 bytes .../ckeditor/plugins/save/icons/save.png | Bin 0 -> 430 bytes .../ckeditor/plugins/save/lang/af.js | 1 + .../ckeditor/plugins/save/lang/ar.js | 1 + .../ckeditor/plugins/save/lang/az.js | 1 + .../ckeditor/plugins/save/lang/bg.js | 1 + .../ckeditor/plugins/save/lang/bn.js | 1 + .../ckeditor/plugins/save/lang/bs.js | 1 + .../ckeditor/plugins/save/lang/ca.js | 1 + .../ckeditor/plugins/save/lang/cs.js | 1 + .../ckeditor/plugins/save/lang/cy.js | 1 + .../ckeditor/plugins/save/lang/da.js | 1 + .../ckeditor/plugins/save/lang/de-ch.js | 1 + .../ckeditor/plugins/save/lang/de.js | 1 + .../ckeditor/plugins/save/lang/el.js | 1 + .../ckeditor/plugins/save/lang/en-au.js | 1 + .../ckeditor/plugins/save/lang/en-ca.js | 1 + .../ckeditor/plugins/save/lang/en-gb.js | 1 + .../ckeditor/plugins/save/lang/en.js | 1 + .../ckeditor/plugins/save/lang/eo.js | 1 + .../ckeditor/plugins/save/lang/es-mx.js | 1 + .../ckeditor/plugins/save/lang/es.js | 1 + .../ckeditor/plugins/save/lang/et.js | 1 + .../ckeditor/plugins/save/lang/eu.js | 1 + .../ckeditor/plugins/save/lang/fa.js | 1 + .../ckeditor/plugins/save/lang/fi.js | 1 + .../ckeditor/plugins/save/lang/fo.js | 1 + .../ckeditor/plugins/save/lang/fr-ca.js | 1 + .../ckeditor/plugins/save/lang/fr.js | 1 + .../ckeditor/plugins/save/lang/gl.js | 1 + .../ckeditor/plugins/save/lang/gu.js | 1 + .../ckeditor/plugins/save/lang/he.js | 1 + .../ckeditor/plugins/save/lang/hi.js | 1 + .../ckeditor/plugins/save/lang/hr.js | 1 + .../ckeditor/plugins/save/lang/hu.js | 1 + .../ckeditor/plugins/save/lang/id.js | 1 + .../ckeditor/plugins/save/lang/is.js | 1 + .../ckeditor/plugins/save/lang/it.js | 1 + .../ckeditor/plugins/save/lang/ja.js | 1 + .../ckeditor/plugins/save/lang/ka.js | 1 + .../ckeditor/plugins/save/lang/km.js | 1 + .../ckeditor/plugins/save/lang/ko.js | 1 + .../ckeditor/plugins/save/lang/ku.js | 1 + .../ckeditor/plugins/save/lang/lt.js | 1 + .../ckeditor/plugins/save/lang/lv.js | 1 + .../ckeditor/plugins/save/lang/mk.js | 1 + .../ckeditor/plugins/save/lang/mn.js | 1 + .../ckeditor/plugins/save/lang/ms.js | 1 + .../ckeditor/plugins/save/lang/nb.js | 1 + .../ckeditor/plugins/save/lang/nl.js | 1 + .../ckeditor/plugins/save/lang/no.js | 1 + .../ckeditor/plugins/save/lang/oc.js | 1 + .../ckeditor/plugins/save/lang/pl.js | 1 + .../ckeditor/plugins/save/lang/pt-br.js | 1 + .../ckeditor/plugins/save/lang/pt.js | 1 + .../ckeditor/plugins/save/lang/ro.js | 1 + .../ckeditor/plugins/save/lang/ru.js | 1 + .../ckeditor/plugins/save/lang/si.js | 1 + .../ckeditor/plugins/save/lang/sk.js | 1 + .../ckeditor/plugins/save/lang/sl.js | 1 + .../ckeditor/plugins/save/lang/sq.js | 1 + .../ckeditor/plugins/save/lang/sr-latn.js | 1 + .../ckeditor/plugins/save/lang/sr.js | 1 + .../ckeditor/plugins/save/lang/sv.js | 1 + .../ckeditor/plugins/save/lang/th.js | 1 + .../ckeditor/plugins/save/lang/tr.js | 1 + .../ckeditor/plugins/save/lang/tt.js | 1 + .../ckeditor/plugins/save/lang/ug.js | 1 + .../ckeditor/plugins/save/lang/uk.js | 1 + .../ckeditor/plugins/save/lang/vi.js | 1 + .../ckeditor/plugins/save/lang/zh-cn.js | 1 + .../ckeditor/plugins/save/lang/zh.js | 1 + .../ckeditor/plugins/save/plugin.js | 6 + .../ckeditor/plugins/scayt/CHANGELOG.md | 4 + .../ckeditor/plugins/scayt/LICENSE.md | 28 + .../ckeditor/plugins/scayt/dialogs/dialog.css | 23 + .../ckeditor/plugins/scayt/dialogs/options.js | 32 + .../plugins/scayt/dialogs/toolbar.css | 71 + .../plugins/scayt/skins/moono-lisa/scayt.css | 25 + .../selectall/icons/hidpi/selectall.png | Bin 0 -> 1117 bytes .../plugins/selectall/icons/selectall.png | Bin 0 -> 747 bytes .../ckeditor/plugins/selectall/lang/af.js | 1 + .../ckeditor/plugins/selectall/lang/ar.js | 1 + .../ckeditor/plugins/selectall/lang/az.js | 1 + .../ckeditor/plugins/selectall/lang/bg.js | 1 + .../ckeditor/plugins/selectall/lang/bn.js | 1 + .../ckeditor/plugins/selectall/lang/bs.js | 1 + .../ckeditor/plugins/selectall/lang/ca.js | 1 + .../ckeditor/plugins/selectall/lang/cs.js | 1 + .../ckeditor/plugins/selectall/lang/cy.js | 1 + .../ckeditor/plugins/selectall/lang/da.js | 1 + .../ckeditor/plugins/selectall/lang/de-ch.js | 1 + .../ckeditor/plugins/selectall/lang/de.js | 1 + .../ckeditor/plugins/selectall/lang/el.js | 1 + .../ckeditor/plugins/selectall/lang/en-au.js | 1 + .../ckeditor/plugins/selectall/lang/en-ca.js | 1 + .../ckeditor/plugins/selectall/lang/en-gb.js | 1 + .../ckeditor/plugins/selectall/lang/en.js | 1 + .../ckeditor/plugins/selectall/lang/eo.js | 1 + .../ckeditor/plugins/selectall/lang/es-mx.js | 1 + .../ckeditor/plugins/selectall/lang/es.js | 1 + .../ckeditor/plugins/selectall/lang/et.js | 1 + .../ckeditor/plugins/selectall/lang/eu.js | 1 + .../ckeditor/plugins/selectall/lang/fa.js | 1 + .../ckeditor/plugins/selectall/lang/fi.js | 1 + .../ckeditor/plugins/selectall/lang/fo.js | 1 + .../ckeditor/plugins/selectall/lang/fr-ca.js | 1 + .../ckeditor/plugins/selectall/lang/fr.js | 1 + .../ckeditor/plugins/selectall/lang/gl.js | 1 + .../ckeditor/plugins/selectall/lang/gu.js | 1 + .../ckeditor/plugins/selectall/lang/he.js | 1 + .../ckeditor/plugins/selectall/lang/hi.js | 1 + .../ckeditor/plugins/selectall/lang/hr.js | 1 + .../ckeditor/plugins/selectall/lang/hu.js | 1 + .../ckeditor/plugins/selectall/lang/id.js | 1 + .../ckeditor/plugins/selectall/lang/is.js | 1 + .../ckeditor/plugins/selectall/lang/it.js | 1 + .../ckeditor/plugins/selectall/lang/ja.js | 1 + .../ckeditor/plugins/selectall/lang/ka.js | 1 + .../ckeditor/plugins/selectall/lang/km.js | 1 + .../ckeditor/plugins/selectall/lang/ko.js | 1 + .../ckeditor/plugins/selectall/lang/ku.js | 1 + .../ckeditor/plugins/selectall/lang/lt.js | 1 + .../ckeditor/plugins/selectall/lang/lv.js | 1 + .../ckeditor/plugins/selectall/lang/mk.js | 1 + .../ckeditor/plugins/selectall/lang/mn.js | 1 + .../ckeditor/plugins/selectall/lang/ms.js | 1 + .../ckeditor/plugins/selectall/lang/nb.js | 1 + .../ckeditor/plugins/selectall/lang/nl.js | 1 + .../ckeditor/plugins/selectall/lang/no.js | 1 + .../ckeditor/plugins/selectall/lang/oc.js | 1 + .../ckeditor/plugins/selectall/lang/pl.js | 1 + .../ckeditor/plugins/selectall/lang/pt-br.js | 1 + .../ckeditor/plugins/selectall/lang/pt.js | 1 + .../ckeditor/plugins/selectall/lang/ro.js | 1 + .../ckeditor/plugins/selectall/lang/ru.js | 1 + .../ckeditor/plugins/selectall/lang/si.js | 1 + .../ckeditor/plugins/selectall/lang/sk.js | 1 + .../ckeditor/plugins/selectall/lang/sl.js | 1 + .../ckeditor/plugins/selectall/lang/sq.js | 1 + .../plugins/selectall/lang/sr-latn.js | 1 + .../ckeditor/plugins/selectall/lang/sr.js | 1 + .../ckeditor/plugins/selectall/lang/sv.js | 1 + .../ckeditor/plugins/selectall/lang/th.js | 1 + .../ckeditor/plugins/selectall/lang/tr.js | 1 + .../ckeditor/plugins/selectall/lang/tt.js | 1 + .../ckeditor/plugins/selectall/lang/ug.js | 1 + .../ckeditor/plugins/selectall/lang/uk.js | 1 + .../ckeditor/plugins/selectall/lang/vi.js | 1 + .../ckeditor/plugins/selectall/lang/zh-cn.js | 1 + .../ckeditor/plugins/selectall/lang/zh.js | 1 + .../ckeditor/plugins/selectall/plugin.js | 6 + .../ckeditor/plugins/sharedspace/plugin.js | 7 + .../showblocks/icons/hidpi/showblocks-rtl.png | Bin 0 -> 910 bytes .../showblocks/icons/hidpi/showblocks.png | Bin 0 -> 918 bytes .../showblocks/icons/showblocks-rtl.png | Bin 0 -> 490 bytes .../plugins/showblocks/icons/showblocks.png | Bin 0 -> 483 bytes .../showblocks/images/block_address.png | Bin 0 -> 152 bytes .../showblocks/images/block_blockquote.png | Bin 0 -> 154 bytes .../plugins/showblocks/images/block_div.png | Bin 0 -> 127 bytes .../plugins/showblocks/images/block_h1.png | Bin 0 -> 120 bytes .../plugins/showblocks/images/block_h2.png | Bin 0 -> 127 bytes .../plugins/showblocks/images/block_h3.png | Bin 0 -> 123 bytes .../plugins/showblocks/images/block_h4.png | Bin 0 -> 123 bytes .../plugins/showblocks/images/block_h5.png | Bin 0 -> 126 bytes .../plugins/showblocks/images/block_h6.png | Bin 0 -> 123 bytes .../plugins/showblocks/images/block_p.png | Bin 0 -> 115 bytes .../plugins/showblocks/images/block_pre.png | Bin 0 -> 128 bytes .../ckeditor/plugins/showblocks/lang/af.js | 1 + .../ckeditor/plugins/showblocks/lang/ar.js | 1 + .../ckeditor/plugins/showblocks/lang/az.js | 1 + .../ckeditor/plugins/showblocks/lang/bg.js | 1 + .../ckeditor/plugins/showblocks/lang/bn.js | 1 + .../ckeditor/plugins/showblocks/lang/bs.js | 1 + .../ckeditor/plugins/showblocks/lang/ca.js | 1 + .../ckeditor/plugins/showblocks/lang/cs.js | 1 + .../ckeditor/plugins/showblocks/lang/cy.js | 1 + .../ckeditor/plugins/showblocks/lang/da.js | 1 + .../ckeditor/plugins/showblocks/lang/de-ch.js | 1 + .../ckeditor/plugins/showblocks/lang/de.js | 1 + .../ckeditor/plugins/showblocks/lang/el.js | 1 + .../ckeditor/plugins/showblocks/lang/en-au.js | 1 + .../ckeditor/plugins/showblocks/lang/en-ca.js | 1 + .../ckeditor/plugins/showblocks/lang/en-gb.js | 1 + .../ckeditor/plugins/showblocks/lang/en.js | 1 + .../ckeditor/plugins/showblocks/lang/eo.js | 1 + .../ckeditor/plugins/showblocks/lang/es-mx.js | 1 + .../ckeditor/plugins/showblocks/lang/es.js | 1 + .../ckeditor/plugins/showblocks/lang/et.js | 1 + .../ckeditor/plugins/showblocks/lang/eu.js | 1 + .../ckeditor/plugins/showblocks/lang/fa.js | 1 + .../ckeditor/plugins/showblocks/lang/fi.js | 1 + .../ckeditor/plugins/showblocks/lang/fo.js | 1 + .../ckeditor/plugins/showblocks/lang/fr-ca.js | 1 + .../ckeditor/plugins/showblocks/lang/fr.js | 1 + .../ckeditor/plugins/showblocks/lang/gl.js | 1 + .../ckeditor/plugins/showblocks/lang/gu.js | 1 + .../ckeditor/plugins/showblocks/lang/he.js | 1 + .../ckeditor/plugins/showblocks/lang/hi.js | 1 + .../ckeditor/plugins/showblocks/lang/hr.js | 1 + .../ckeditor/plugins/showblocks/lang/hu.js | 1 + .../ckeditor/plugins/showblocks/lang/id.js | 1 + .../ckeditor/plugins/showblocks/lang/is.js | 1 + .../ckeditor/plugins/showblocks/lang/it.js | 1 + .../ckeditor/plugins/showblocks/lang/ja.js | 1 + .../ckeditor/plugins/showblocks/lang/ka.js | 1 + .../ckeditor/plugins/showblocks/lang/km.js | 1 + .../ckeditor/plugins/showblocks/lang/ko.js | 1 + .../ckeditor/plugins/showblocks/lang/ku.js | 1 + .../ckeditor/plugins/showblocks/lang/lt.js | 1 + .../ckeditor/plugins/showblocks/lang/lv.js | 1 + .../ckeditor/plugins/showblocks/lang/mk.js | 1 + .../ckeditor/plugins/showblocks/lang/mn.js | 1 + .../ckeditor/plugins/showblocks/lang/ms.js | 1 + .../ckeditor/plugins/showblocks/lang/nb.js | 1 + .../ckeditor/plugins/showblocks/lang/nl.js | 1 + .../ckeditor/plugins/showblocks/lang/no.js | 1 + .../ckeditor/plugins/showblocks/lang/oc.js | 1 + .../ckeditor/plugins/showblocks/lang/pl.js | 1 + .../ckeditor/plugins/showblocks/lang/pt-br.js | 1 + .../ckeditor/plugins/showblocks/lang/pt.js | 1 + .../ckeditor/plugins/showblocks/lang/ro.js | 1 + .../ckeditor/plugins/showblocks/lang/ru.js | 1 + .../ckeditor/plugins/showblocks/lang/si.js | 1 + .../ckeditor/plugins/showblocks/lang/sk.js | 1 + .../ckeditor/plugins/showblocks/lang/sl.js | 1 + .../ckeditor/plugins/showblocks/lang/sq.js | 1 + .../plugins/showblocks/lang/sr-latn.js | 1 + .../ckeditor/plugins/showblocks/lang/sr.js | 1 + .../ckeditor/plugins/showblocks/lang/sv.js | 1 + .../ckeditor/plugins/showblocks/lang/th.js | 1 + .../ckeditor/plugins/showblocks/lang/tr.js | 1 + .../ckeditor/plugins/showblocks/lang/tt.js | 1 + .../ckeditor/plugins/showblocks/lang/ug.js | 1 + .../ckeditor/plugins/showblocks/lang/uk.js | 1 + .../ckeditor/plugins/showblocks/lang/vi.js | 1 + .../ckeditor/plugins/showblocks/lang/zh-cn.js | 1 + .../ckeditor/plugins/showblocks/lang/zh.js | 1 + .../ckeditor/plugins/showblocks/plugin.js | 9 + .../ckeditor/plugins/smiley/dialogs/smiley.js | 11 + .../plugins/smiley/icons/hidpi/smiley.png | Bin 0 -> 1708 bytes .../ckeditor/plugins/smiley/icons/smiley.png | Bin 0 -> 783 bytes .../plugins/smiley/images/angel_smile.gif | Bin 0 -> 1245 bytes .../plugins/smiley/images/angel_smile.png | Bin 0 -> 1172 bytes .../plugins/smiley/images/angry_smile.gif | Bin 0 -> 1219 bytes .../plugins/smiley/images/angry_smile.png | Bin 0 -> 1220 bytes .../plugins/smiley/images/broken_heart.gif | Bin 0 -> 732 bytes .../plugins/smiley/images/broken_heart.png | Bin 0 -> 1139 bytes .../plugins/smiley/images/confused_smile.gif | Bin 0 -> 1202 bytes .../plugins/smiley/images/confused_smile.png | Bin 0 -> 1101 bytes .../plugins/smiley/images/cry_smile.gif | Bin 0 -> 795 bytes .../plugins/smiley/images/cry_smile.png | Bin 0 -> 1214 bytes .../plugins/smiley/images/devil_smile.gif | Bin 0 -> 1239 bytes .../plugins/smiley/images/devil_smile.png | Bin 0 -> 1220 bytes .../smiley/images/embaressed_smile.gif | Bin 0 -> 786 bytes .../smiley/images/embarrassed_smile.gif | Bin 0 -> 786 bytes .../smiley/images/embarrassed_smile.png | Bin 0 -> 1145 bytes .../plugins/smiley/images/envelope.gif | Bin 0 -> 506 bytes .../plugins/smiley/images/envelope.png | Bin 0 -> 760 bytes .../ckeditor/plugins/smiley/images/heart.gif | Bin 0 -> 692 bytes .../ckeditor/plugins/smiley/images/heart.png | Bin 0 -> 999 bytes .../ckeditor/plugins/smiley/images/kiss.gif | Bin 0 -> 683 bytes .../ckeditor/plugins/smiley/images/kiss.png | Bin 0 -> 1003 bytes .../plugins/smiley/images/lightbulb.gif | Bin 0 -> 660 bytes .../plugins/smiley/images/lightbulb.png | Bin 0 -> 919 bytes .../plugins/smiley/images/omg_smile.gif | Bin 0 -> 820 bytes .../plugins/smiley/images/omg_smile.png | Bin 0 -> 1122 bytes .../plugins/smiley/images/regular_smile.gif | Bin 0 -> 1209 bytes .../plugins/smiley/images/regular_smile.png | Bin 0 -> 1084 bytes .../plugins/smiley/images/sad_smile.gif | Bin 0 -> 782 bytes .../plugins/smiley/images/sad_smile.png | Bin 0 -> 1115 bytes .../plugins/smiley/images/shades_smile.gif | Bin 0 -> 1231 bytes .../plugins/smiley/images/shades_smile.png | Bin 0 -> 1204 bytes .../plugins/smiley/images/teeth_smile.gif | Bin 0 -> 1201 bytes .../plugins/smiley/images/teeth_smile.png | Bin 0 -> 1183 bytes .../plugins/smiley/images/thumbs_down.gif | Bin 0 -> 715 bytes .../plugins/smiley/images/thumbs_down.png | Bin 0 -> 985 bytes .../plugins/smiley/images/thumbs_up.gif | Bin 0 -> 714 bytes .../plugins/smiley/images/thumbs_up.png | Bin 0 -> 959 bytes .../plugins/smiley/images/tongue_smile.gif | Bin 0 -> 1210 bytes .../plugins/smiley/images/tongue_smile.png | Bin 0 -> 1132 bytes .../plugins/smiley/images/tounge_smile.gif | Bin 0 -> 1210 bytes .../images/whatchutalkingabout_smile.gif | Bin 0 -> 775 bytes .../images/whatchutalkingabout_smile.png | Bin 0 -> 1039 bytes .../plugins/smiley/images/wink_smile.gif | Bin 0 -> 1202 bytes .../plugins/smiley/images/wink_smile.png | Bin 0 -> 1114 bytes .../ckeditor/plugins/smiley/lang/af.js | 1 + .../ckeditor/plugins/smiley/lang/ar.js | 1 + .../ckeditor/plugins/smiley/lang/az.js | 1 + .../ckeditor/plugins/smiley/lang/bg.js | 1 + .../ckeditor/plugins/smiley/lang/bn.js | 1 + .../ckeditor/plugins/smiley/lang/bs.js | 1 + .../ckeditor/plugins/smiley/lang/ca.js | 1 + .../ckeditor/plugins/smiley/lang/cs.js | 1 + .../ckeditor/plugins/smiley/lang/cy.js | 1 + .../ckeditor/plugins/smiley/lang/da.js | 1 + .../ckeditor/plugins/smiley/lang/de-ch.js | 1 + .../ckeditor/plugins/smiley/lang/de.js | 1 + .../ckeditor/plugins/smiley/lang/el.js | 1 + .../ckeditor/plugins/smiley/lang/en-au.js | 1 + .../ckeditor/plugins/smiley/lang/en-ca.js | 1 + .../ckeditor/plugins/smiley/lang/en-gb.js | 1 + .../ckeditor/plugins/smiley/lang/en.js | 1 + .../ckeditor/plugins/smiley/lang/eo.js | 1 + .../ckeditor/plugins/smiley/lang/es-mx.js | 1 + .../ckeditor/plugins/smiley/lang/es.js | 1 + .../ckeditor/plugins/smiley/lang/et.js | 1 + .../ckeditor/plugins/smiley/lang/eu.js | 1 + .../ckeditor/plugins/smiley/lang/fa.js | 1 + .../ckeditor/plugins/smiley/lang/fi.js | 1 + .../ckeditor/plugins/smiley/lang/fo.js | 1 + .../ckeditor/plugins/smiley/lang/fr-ca.js | 1 + .../ckeditor/plugins/smiley/lang/fr.js | 1 + .../ckeditor/plugins/smiley/lang/gl.js | 1 + .../ckeditor/plugins/smiley/lang/gu.js | 1 + .../ckeditor/plugins/smiley/lang/he.js | 1 + .../ckeditor/plugins/smiley/lang/hi.js | 1 + .../ckeditor/plugins/smiley/lang/hr.js | 1 + .../ckeditor/plugins/smiley/lang/hu.js | 1 + .../ckeditor/plugins/smiley/lang/id.js | 1 + .../ckeditor/plugins/smiley/lang/is.js | 1 + .../ckeditor/plugins/smiley/lang/it.js | 1 + .../ckeditor/plugins/smiley/lang/ja.js | 1 + .../ckeditor/plugins/smiley/lang/ka.js | 1 + .../ckeditor/plugins/smiley/lang/km.js | 1 + .../ckeditor/plugins/smiley/lang/ko.js | 1 + .../ckeditor/plugins/smiley/lang/ku.js | 1 + .../ckeditor/plugins/smiley/lang/lt.js | 1 + .../ckeditor/plugins/smiley/lang/lv.js | 1 + .../ckeditor/plugins/smiley/lang/mk.js | 1 + .../ckeditor/plugins/smiley/lang/mn.js | 1 + .../ckeditor/plugins/smiley/lang/ms.js | 1 + .../ckeditor/plugins/smiley/lang/nb.js | 1 + .../ckeditor/plugins/smiley/lang/nl.js | 1 + .../ckeditor/plugins/smiley/lang/no.js | 1 + .../ckeditor/plugins/smiley/lang/oc.js | 1 + .../ckeditor/plugins/smiley/lang/pl.js | 1 + .../ckeditor/plugins/smiley/lang/pt-br.js | 1 + .../ckeditor/plugins/smiley/lang/pt.js | 1 + .../ckeditor/plugins/smiley/lang/ro.js | 1 + .../ckeditor/plugins/smiley/lang/ru.js | 1 + .../ckeditor/plugins/smiley/lang/si.js | 1 + .../ckeditor/plugins/smiley/lang/sk.js | 1 + .../ckeditor/plugins/smiley/lang/sl.js | 1 + .../ckeditor/plugins/smiley/lang/sq.js | 1 + .../ckeditor/plugins/smiley/lang/sr-latn.js | 1 + .../ckeditor/plugins/smiley/lang/sr.js | 1 + .../ckeditor/plugins/smiley/lang/sv.js | 1 + .../ckeditor/plugins/smiley/lang/th.js | 1 + .../ckeditor/plugins/smiley/lang/tr.js | 1 + .../ckeditor/plugins/smiley/lang/tt.js | 1 + .../ckeditor/plugins/smiley/lang/ug.js | 1 + .../ckeditor/plugins/smiley/lang/uk.js | 1 + .../ckeditor/plugins/smiley/lang/vi.js | 1 + .../ckeditor/plugins/smiley/lang/zh-cn.js | 1 + .../ckeditor/plugins/smiley/lang/zh.js | 1 + .../ckeditor/plugins/smiley/plugin.js | 7 + .../sourcedialog/dialogs/sourcedialog.js | 6 + .../icons/hidpi/sourcedialog-rtl.png | Bin 0 -> 1018 bytes .../sourcedialog/icons/hidpi/sourcedialog.png | Bin 0 -> 1041 bytes .../sourcedialog/icons/sourcedialog-rtl.png | Bin 0 -> 565 bytes .../sourcedialog/icons/sourcedialog.png | Bin 0 -> 571 bytes .../ckeditor/plugins/sourcedialog/lang/af.js | 1 + .../ckeditor/plugins/sourcedialog/lang/ar.js | 1 + .../ckeditor/plugins/sourcedialog/lang/az.js | 1 + .../ckeditor/plugins/sourcedialog/lang/bg.js | 1 + .../ckeditor/plugins/sourcedialog/lang/bn.js | 1 + .../ckeditor/plugins/sourcedialog/lang/bs.js | 1 + .../ckeditor/plugins/sourcedialog/lang/ca.js | 1 + .../ckeditor/plugins/sourcedialog/lang/cs.js | 1 + .../ckeditor/plugins/sourcedialog/lang/cy.js | 1 + .../ckeditor/plugins/sourcedialog/lang/da.js | 1 + .../plugins/sourcedialog/lang/de-ch.js | 1 + .../ckeditor/plugins/sourcedialog/lang/de.js | 1 + .../ckeditor/plugins/sourcedialog/lang/el.js | 1 + .../plugins/sourcedialog/lang/en-au.js | 1 + .../plugins/sourcedialog/lang/en-ca.js | 1 + .../plugins/sourcedialog/lang/en-gb.js | 1 + .../ckeditor/plugins/sourcedialog/lang/en.js | 1 + .../ckeditor/plugins/sourcedialog/lang/eo.js | 1 + .../plugins/sourcedialog/lang/es-mx.js | 1 + .../ckeditor/plugins/sourcedialog/lang/es.js | 1 + .../ckeditor/plugins/sourcedialog/lang/et.js | 1 + .../ckeditor/plugins/sourcedialog/lang/eu.js | 1 + .../ckeditor/plugins/sourcedialog/lang/fa.js | 1 + .../ckeditor/plugins/sourcedialog/lang/fi.js | 1 + .../ckeditor/plugins/sourcedialog/lang/fo.js | 1 + .../plugins/sourcedialog/lang/fr-ca.js | 1 + .../ckeditor/plugins/sourcedialog/lang/fr.js | 1 + .../ckeditor/plugins/sourcedialog/lang/gl.js | 1 + .../ckeditor/plugins/sourcedialog/lang/gu.js | 1 + .../ckeditor/plugins/sourcedialog/lang/he.js | 1 + .../ckeditor/plugins/sourcedialog/lang/hi.js | 1 + .../ckeditor/plugins/sourcedialog/lang/hr.js | 1 + .../ckeditor/plugins/sourcedialog/lang/hu.js | 1 + .../ckeditor/plugins/sourcedialog/lang/id.js | 1 + .../ckeditor/plugins/sourcedialog/lang/is.js | 1 + .../ckeditor/plugins/sourcedialog/lang/it.js | 1 + .../ckeditor/plugins/sourcedialog/lang/ja.js | 1 + .../ckeditor/plugins/sourcedialog/lang/ka.js | 1 + .../ckeditor/plugins/sourcedialog/lang/km.js | 1 + .../ckeditor/plugins/sourcedialog/lang/ko.js | 1 + .../ckeditor/plugins/sourcedialog/lang/ku.js | 1 + .../ckeditor/plugins/sourcedialog/lang/lt.js | 1 + .../ckeditor/plugins/sourcedialog/lang/lv.js | 1 + .../ckeditor/plugins/sourcedialog/lang/mn.js | 1 + .../ckeditor/plugins/sourcedialog/lang/ms.js | 1 + .../ckeditor/plugins/sourcedialog/lang/nb.js | 1 + .../ckeditor/plugins/sourcedialog/lang/nl.js | 1 + .../ckeditor/plugins/sourcedialog/lang/no.js | 1 + .../ckeditor/plugins/sourcedialog/lang/oc.js | 1 + .../ckeditor/plugins/sourcedialog/lang/pl.js | 1 + .../plugins/sourcedialog/lang/pt-br.js | 1 + .../ckeditor/plugins/sourcedialog/lang/pt.js | 1 + .../ckeditor/plugins/sourcedialog/lang/ro.js | 1 + .../ckeditor/plugins/sourcedialog/lang/ru.js | 1 + .../ckeditor/plugins/sourcedialog/lang/si.js | 1 + .../ckeditor/plugins/sourcedialog/lang/sk.js | 1 + .../ckeditor/plugins/sourcedialog/lang/sl.js | 1 + .../ckeditor/plugins/sourcedialog/lang/sq.js | 1 + .../plugins/sourcedialog/lang/sr-latn.js | 1 + .../ckeditor/plugins/sourcedialog/lang/sr.js | 1 + .../ckeditor/plugins/sourcedialog/lang/sv.js | 1 + .../ckeditor/plugins/sourcedialog/lang/th.js | 1 + .../ckeditor/plugins/sourcedialog/lang/tr.js | 1 + .../ckeditor/plugins/sourcedialog/lang/tt.js | 1 + .../ckeditor/plugins/sourcedialog/lang/ug.js | 1 + .../ckeditor/plugins/sourcedialog/lang/uk.js | 1 + .../ckeditor/plugins/sourcedialog/lang/vi.js | 1 + .../plugins/sourcedialog/lang/zh-cn.js | 1 + .../ckeditor/plugins/sourcedialog/lang/zh.js | 1 + .../ckeditor/plugins/sourcedialog/plugin.js | 6 + .../dialogs/lang/_translationstatus.txt | 20 + .../plugins/specialchar/dialogs/lang/af.js | 13 + .../plugins/specialchar/dialogs/lang/ar.js | 13 + .../plugins/specialchar/dialogs/lang/az.js | 10 + .../plugins/specialchar/dialogs/lang/bg.js | 13 + .../plugins/specialchar/dialogs/lang/ca.js | 14 + .../plugins/specialchar/dialogs/lang/cs.js | 13 + .../plugins/specialchar/dialogs/lang/cy.js | 14 + .../plugins/specialchar/dialogs/lang/da.js | 11 + .../plugins/specialchar/dialogs/lang/de-ch.js | 13 + .../plugins/specialchar/dialogs/lang/de.js | 13 + .../plugins/specialchar/dialogs/lang/el.js | 13 + .../plugins/specialchar/dialogs/lang/en-au.js | 13 + .../plugins/specialchar/dialogs/lang/en-ca.js | 13 + .../plugins/specialchar/dialogs/lang/en-gb.js | 13 + .../plugins/specialchar/dialogs/lang/en.js | 13 + .../plugins/specialchar/dialogs/lang/eo.js | 12 + .../plugins/specialchar/dialogs/lang/es-mx.js | 13 + .../plugins/specialchar/dialogs/lang/es.js | 13 + .../plugins/specialchar/dialogs/lang/et.js | 11 + .../plugins/specialchar/dialogs/lang/eu.js | 13 + .../plugins/specialchar/dialogs/lang/fa.js | 12 + .../plugins/specialchar/dialogs/lang/fi.js | 13 + .../plugins/specialchar/dialogs/lang/fr-ca.js | 10 + .../plugins/specialchar/dialogs/lang/fr.js | 12 + .../plugins/specialchar/dialogs/lang/gl.js | 13 + .../plugins/specialchar/dialogs/lang/he.js | 12 + .../plugins/specialchar/dialogs/lang/hr.js | 13 + .../plugins/specialchar/dialogs/lang/hu.js | 12 + .../plugins/specialchar/dialogs/lang/id.js | 13 + .../plugins/specialchar/dialogs/lang/it.js | 14 + .../plugins/specialchar/dialogs/lang/ja.js | 9 + .../plugins/specialchar/dialogs/lang/km.js | 13 + .../plugins/specialchar/dialogs/lang/ko.js | 10 + .../plugins/specialchar/dialogs/lang/ku.js | 13 + .../plugins/specialchar/dialogs/lang/lt.js | 13 + .../plugins/specialchar/dialogs/lang/lv.js | 13 + .../plugins/specialchar/dialogs/lang/nb.js | 11 + .../plugins/specialchar/dialogs/lang/nl.js | 13 + .../plugins/specialchar/dialogs/lang/no.js | 11 + .../plugins/specialchar/dialogs/lang/oc.js | 12 + .../plugins/specialchar/dialogs/lang/pl.js | 12 + .../plugins/specialchar/dialogs/lang/pt-br.js | 11 + .../plugins/specialchar/dialogs/lang/pt.js | 13 + .../plugins/specialchar/dialogs/lang/ro.js | 13 + .../plugins/specialchar/dialogs/lang/ru.js | 13 + .../plugins/specialchar/dialogs/lang/si.js | 13 + .../plugins/specialchar/dialogs/lang/sk.js | 13 + .../plugins/specialchar/dialogs/lang/sl.js | 12 + .../plugins/specialchar/dialogs/lang/sq.js | 13 + .../specialchar/dialogs/lang/sr-latn.js | 13 + .../plugins/specialchar/dialogs/lang/sr.js | 13 + .../plugins/specialchar/dialogs/lang/sv.js | 11 + .../plugins/specialchar/dialogs/lang/th.js | 13 + .../plugins/specialchar/dialogs/lang/tr.js | 12 + .../plugins/specialchar/dialogs/lang/tt.js | 13 + .../plugins/specialchar/dialogs/lang/ug.js | 13 + .../plugins/specialchar/dialogs/lang/uk.js | 12 + .../plugins/specialchar/dialogs/lang/vi.js | 14 + .../plugins/specialchar/dialogs/lang/zh-cn.js | 9 + .../plugins/specialchar/dialogs/lang/zh.js | 9 + .../specialchar/dialogs/specialchar.js | 14 + .../plugins/stylesheetparser/plugin.js | 7 + .../ckeditor/plugins/table/dialogs/table.js | 22 + .../ckeditor/plugins/tableresize/plugin.js | 13 + .../tableselection/styles/tableselection.css | 36 + .../plugins/tabletools/dialogs/tableCell.js | 18 + .../plugins/templates/dialogs/templates.css | 84 + .../plugins/templates/dialogs/templates.js | 11 + .../templates/icons/hidpi/templates-rtl.png | Bin 0 -> 796 bytes .../templates/icons/hidpi/templates.png | Bin 0 -> 796 bytes .../plugins/templates/icons/templates-rtl.png | Bin 0 -> 442 bytes .../plugins/templates/icons/templates.png | Bin 0 -> 442 bytes .../ckeditor/plugins/templates/lang/af.js | 1 + .../ckeditor/plugins/templates/lang/ar.js | 1 + .../ckeditor/plugins/templates/lang/az.js | 1 + .../ckeditor/plugins/templates/lang/bg.js | 1 + .../ckeditor/plugins/templates/lang/bn.js | 1 + .../ckeditor/plugins/templates/lang/bs.js | 1 + .../ckeditor/plugins/templates/lang/ca.js | 1 + .../ckeditor/plugins/templates/lang/cs.js | 1 + .../ckeditor/plugins/templates/lang/cy.js | 1 + .../ckeditor/plugins/templates/lang/da.js | 1 + .../ckeditor/plugins/templates/lang/de-ch.js | 1 + .../ckeditor/plugins/templates/lang/de.js | 1 + .../ckeditor/plugins/templates/lang/el.js | 1 + .../ckeditor/plugins/templates/lang/en-au.js | 1 + .../ckeditor/plugins/templates/lang/en-ca.js | 1 + .../ckeditor/plugins/templates/lang/en-gb.js | 1 + .../ckeditor/plugins/templates/lang/en.js | 1 + .../ckeditor/plugins/templates/lang/eo.js | 1 + .../ckeditor/plugins/templates/lang/es-mx.js | 1 + .../ckeditor/plugins/templates/lang/es.js | 1 + .../ckeditor/plugins/templates/lang/et.js | 1 + .../ckeditor/plugins/templates/lang/eu.js | 1 + .../ckeditor/plugins/templates/lang/fa.js | 1 + .../ckeditor/plugins/templates/lang/fi.js | 1 + .../ckeditor/plugins/templates/lang/fo.js | 1 + .../ckeditor/plugins/templates/lang/fr-ca.js | 1 + .../ckeditor/plugins/templates/lang/fr.js | 1 + .../ckeditor/plugins/templates/lang/gl.js | 1 + .../ckeditor/plugins/templates/lang/gu.js | 1 + .../ckeditor/plugins/templates/lang/he.js | 1 + .../ckeditor/plugins/templates/lang/hi.js | 1 + .../ckeditor/plugins/templates/lang/hr.js | 1 + .../ckeditor/plugins/templates/lang/hu.js | 1 + .../ckeditor/plugins/templates/lang/id.js | 1 + .../ckeditor/plugins/templates/lang/is.js | 1 + .../ckeditor/plugins/templates/lang/it.js | 1 + .../ckeditor/plugins/templates/lang/ja.js | 1 + .../ckeditor/plugins/templates/lang/ka.js | 1 + .../ckeditor/plugins/templates/lang/km.js | 1 + .../ckeditor/plugins/templates/lang/ko.js | 1 + .../ckeditor/plugins/templates/lang/ku.js | 1 + .../ckeditor/plugins/templates/lang/lt.js | 1 + .../ckeditor/plugins/templates/lang/lv.js | 1 + .../ckeditor/plugins/templates/lang/mk.js | 1 + .../ckeditor/plugins/templates/lang/mn.js | 1 + .../ckeditor/plugins/templates/lang/ms.js | 1 + .../ckeditor/plugins/templates/lang/nb.js | 1 + .../ckeditor/plugins/templates/lang/nl.js | 1 + .../ckeditor/plugins/templates/lang/no.js | 1 + .../ckeditor/plugins/templates/lang/oc.js | 1 + .../ckeditor/plugins/templates/lang/pl.js | 1 + .../ckeditor/plugins/templates/lang/pt-br.js | 1 + .../ckeditor/plugins/templates/lang/pt.js | 1 + .../ckeditor/plugins/templates/lang/ro.js | 1 + .../ckeditor/plugins/templates/lang/ru.js | 1 + .../ckeditor/plugins/templates/lang/si.js | 1 + .../ckeditor/plugins/templates/lang/sk.js | 1 + .../ckeditor/plugins/templates/lang/sl.js | 1 + .../ckeditor/plugins/templates/lang/sq.js | 1 + .../plugins/templates/lang/sr-latn.js | 1 + .../ckeditor/plugins/templates/lang/sr.js | 1 + .../ckeditor/plugins/templates/lang/sv.js | 1 + .../ckeditor/plugins/templates/lang/th.js | 1 + .../ckeditor/plugins/templates/lang/tr.js | 1 + .../ckeditor/plugins/templates/lang/tt.js | 1 + .../ckeditor/plugins/templates/lang/ug.js | 1 + .../ckeditor/plugins/templates/lang/uk.js | 1 + .../ckeditor/plugins/templates/lang/vi.js | 1 + .../ckeditor/plugins/templates/lang/zh-cn.js | 1 + .../ckeditor/plugins/templates/lang/zh.js | 1 + .../ckeditor/plugins/templates/plugin.js | 7 + .../plugins/templates/templatedefinition.js | 4 + .../plugins/templates/templates/default.js | 7 + .../templates/templates/images/template1.gif | Bin 0 -> 539 bytes .../templates/templates/images/template2.gif | Bin 0 -> 497 bytes .../templates/templates/images/template3.gif | Bin 0 -> 557 bytes .../ckeditor/plugins/textmatch/plugin.js | 8 + .../ckeditor/plugins/textwatcher/plugin.js | 7 + .../plugins/uicolor/dialogs/uicolor.css | 20 + .../plugins/uicolor/dialogs/uicolor.js | 17 + .../plugins/uicolor/icons/hidpi/uicolor.png | Bin 0 -> 1817 bytes .../plugins/uicolor/icons/uicolor.png | Bin 0 -> 954 bytes .../uicolor/lang/_translationstatus.txt | 27 + .../ckeditor/plugins/uicolor/lang/af.js | 5 + .../ckeditor/plugins/uicolor/lang/ar.js | 5 + .../ckeditor/plugins/uicolor/lang/az.js | 5 + .../ckeditor/plugins/uicolor/lang/bg.js | 5 + .../ckeditor/plugins/uicolor/lang/ca.js | 5 + .../ckeditor/plugins/uicolor/lang/cs.js | 5 + .../ckeditor/plugins/uicolor/lang/cy.js | 5 + .../ckeditor/plugins/uicolor/lang/da.js | 5 + .../ckeditor/plugins/uicolor/lang/de-ch.js | 5 + .../ckeditor/plugins/uicolor/lang/de.js | 5 + .../ckeditor/plugins/uicolor/lang/el.js | 5 + .../ckeditor/plugins/uicolor/lang/en-au.js | 5 + .../ckeditor/plugins/uicolor/lang/en-gb.js | 5 + .../ckeditor/plugins/uicolor/lang/en.js | 5 + .../ckeditor/plugins/uicolor/lang/eo.js | 5 + .../ckeditor/plugins/uicolor/lang/es-mx.js | 5 + .../ckeditor/plugins/uicolor/lang/es.js | 5 + .../ckeditor/plugins/uicolor/lang/et.js | 5 + .../ckeditor/plugins/uicolor/lang/eu.js | 5 + .../ckeditor/plugins/uicolor/lang/fa.js | 5 + .../ckeditor/plugins/uicolor/lang/fi.js | 5 + .../ckeditor/plugins/uicolor/lang/fr-ca.js | 5 + .../ckeditor/plugins/uicolor/lang/fr.js | 5 + .../ckeditor/plugins/uicolor/lang/gl.js | 5 + .../ckeditor/plugins/uicolor/lang/he.js | 5 + .../ckeditor/plugins/uicolor/lang/hr.js | 5 + .../ckeditor/plugins/uicolor/lang/hu.js | 5 + .../ckeditor/plugins/uicolor/lang/id.js | 5 + .../ckeditor/plugins/uicolor/lang/it.js | 5 + .../ckeditor/plugins/uicolor/lang/ja.js | 5 + .../ckeditor/plugins/uicolor/lang/km.js | 5 + .../ckeditor/plugins/uicolor/lang/ko.js | 5 + .../ckeditor/plugins/uicolor/lang/ku.js | 5 + .../ckeditor/plugins/uicolor/lang/lv.js | 5 + .../ckeditor/plugins/uicolor/lang/mk.js | 5 + .../ckeditor/plugins/uicolor/lang/nb.js | 5 + .../ckeditor/plugins/uicolor/lang/nl.js | 5 + .../ckeditor/plugins/uicolor/lang/no.js | 5 + .../ckeditor/plugins/uicolor/lang/oc.js | 5 + .../ckeditor/plugins/uicolor/lang/pl.js | 5 + .../ckeditor/plugins/uicolor/lang/pt-br.js | 5 + .../ckeditor/plugins/uicolor/lang/pt.js | 5 + .../ckeditor/plugins/uicolor/lang/ro.js | 5 + .../ckeditor/plugins/uicolor/lang/ru.js | 5 + .../ckeditor/plugins/uicolor/lang/si.js | 5 + .../ckeditor/plugins/uicolor/lang/sk.js | 5 + .../ckeditor/plugins/uicolor/lang/sl.js | 5 + .../ckeditor/plugins/uicolor/lang/sq.js | 5 + .../ckeditor/plugins/uicolor/lang/sr-latn.js | 5 + .../ckeditor/plugins/uicolor/lang/sr.js | 5 + .../ckeditor/plugins/uicolor/lang/sv.js | 5 + .../ckeditor/plugins/uicolor/lang/tr.js | 5 + .../ckeditor/plugins/uicolor/lang/tt.js | 5 + .../ckeditor/plugins/uicolor/lang/ug.js | 5 + .../ckeditor/plugins/uicolor/lang/uk.js | 5 + .../ckeditor/plugins/uicolor/lang/vi.js | 5 + .../ckeditor/plugins/uicolor/lang/zh-cn.js | 5 + .../ckeditor/plugins/uicolor/lang/zh.js | 5 + .../ckeditor/plugins/uicolor/plugin.js | 6 + .../ckeditor/plugins/uploadfile/plugin.js | 6 + .../ckeditor/plugins/widget/images/handle.png | Bin 0 -> 220 bytes .../ckeditor/samples/css/samples.css | 1637 + .../ckeditor/samples/img/github-top.png | Bin 0 -> 383 bytes .../ckeditor/samples/img/header-bg.png | Bin 0 -> 13086 bytes .../ckeditor/samples/img/header-separator.png | Bin 0 -> 123 bytes .../ckeditor/samples/img/logo.png | Bin 0 -> 5634 bytes .../ckeditor/samples/img/logo.svg | 13 + .../ckeditor/samples/img/navigation-tip.png | Bin 0 -> 12029 bytes .../ckeditor/samples/index.html | 130 + .../ckeditor/samples/js/sample.js | 53 + .../ckeditor/samples/js/sf.js | 17 + .../ckeditor/samples/old/ajax.html | 85 + .../ckeditor/samples/old/api.html | 210 + .../ckeditor/samples/old/appendto.html | 59 + .../samples/old/assets/inlineall/logo.png | Bin 0 -> 4283 bytes .../old/assets/outputxhtml/outputxhtml.css | 204 + .../samples/old/assets/posteddata.php | 60 + .../ckeditor/samples/old/assets/sample.jpg | Bin 0 -> 14449 bytes .../old/assets/uilanguages/languages.js | 7 + .../samples/old/autogrow/autogrow.html | 102 + .../ckeditor/samples/old/bbcode/bbcode.html | 114 + .../samples/old/codesnippet/codesnippet.html | 236 + .../ckeditor/samples/old/datafiltering.html | 508 + .../samples/old/devtools/devtools.html | 86 + .../samples/old/dialog/assets/my_dialog.js | 48 + .../ckeditor/samples/old/dialog/dialog.html | 190 + .../ckeditor/samples/old/divarea/divarea.html | 64 + .../ckeditor/samples/old/divreplace.html | 144 + .../samples/old/docprops/docprops.html | 81 + .../samples/old/easyimage/easyimage.html | 103 + .../ckeditor/samples/old/emoji/emoji.html | 122 + .../samples/old/enterkey/enterkey.html | 106 + .../samples/old/htmlwriter/outputhtml.html | 224 + .../samples/old/image2/assets/image1.jpg | Bin 0 -> 33171 bytes .../samples/old/image2/assets/image2.jpg | Bin 0 -> 26238 bytes .../ckeditor/samples/old/image2/image2.html | 68 + .../ckeditor/samples/old/index.html | 171 + .../ckeditor/samples/old/inlineall.html | 314 + .../ckeditor/samples/old/inlinebycode.html | 124 + .../ckeditor/samples/old/inlinetextarea.html | 113 + .../ckeditor/samples/old/jquery.html | 103 + .../samples/old/magicline/magicline.html | 209 + .../ckeditor/samples/old/mathjax/mathjax.html | 38 + .../samples/old/mentions/mentions.html | 147 + .../samples/old/placeholder/placeholder.html | 75 + .../ckeditor/samples/old/readonly.html | 76 + .../ckeditor/samples/old/replacebyclass.html | 60 + .../ckeditor/samples/old/replacebycode.html | 59 + .../ckeditor/samples/old/sample.css | 357 + .../ckeditor/samples/old/sample.js | 50 + .../samples/old/sample_posteddata.php | 16 + .../samples/old/sharedspace/sharedspace.html | 122 + .../old/sourcedialog/sourcedialog.html | 121 + .../old/stylesheetparser/assets/sample.css | 70 + .../stylesheetparser/stylesheetparser.html | 85 + .../ckeditor/samples/old/tabindex.html | 78 + .../samples/old/tableresize/tableresize.html | 107 + .../ckeditor/samples/old/toolbar/toolbar.html | 235 + .../ckeditor/samples/old/uicolor.html | 72 + .../ckeditor/samples/old/uicolor/uicolor.html | 106 + .../ckeditor/samples/old/uilanguages.html | 122 + .../samples/old/wysiwygarea/fullpage.html | 80 + .../ckeditor/samples/old/xhtmlstyle.html | 234 + .../toolbarconfigurator/css/fontello.css | 55 + .../toolbarconfigurator/font/LICENSE.txt | 10 + .../toolbarconfigurator/font/config.json | 28 + .../toolbarconfigurator/font/fontello.eot | Bin 0 -> 4988 bytes .../toolbarconfigurator/font/fontello.svg | 14 + .../toolbarconfigurator/font/fontello.ttf | Bin 0 -> 4820 bytes .../toolbarconfigurator/font/fontello.woff | Bin 0 -> 2904 bytes .../samples/toolbarconfigurator/index.html | 447 + .../js/abstracttoolbarmodifier.js | 13 + .../js/fulltoolbareditor.js | 9 + .../toolbarconfigurator/js/toolbarmodifier.js | 33 + .../js/toolbartextmodifier.js | 14 + .../ckeditor/skins/kama/dialog.css | 5 + .../ckeditor/skins/kama/dialog_ie.css | 5 + .../ckeditor/skins/kama/dialog_ie7.css | 5 + .../ckeditor/skins/kama/dialog_ie8.css | 5 + .../ckeditor/skins/kama/dialog_iequirks.css | 5 + .../ckeditor/skins/kama/editor.css | 5 + .../ckeditor/skins/kama/editor_ie.css | 5 + .../ckeditor/skins/kama/editor_ie7.css | 5 + .../ckeditor/skins/kama/editor_ie8.css | 5 + .../ckeditor/skins/kama/editor_iequirks.css | 5 + .../ckeditor/skins/kama/icons.png | Bin 0 -> 11566 bytes .../ckeditor/skins/kama/icons_hidpi.png | Bin 0 -> 18559 bytes .../skins/kama/images/dialog_sides.gif | Bin 0 -> 47 bytes .../skins/kama/images/dialog_sides.png | Bin 0 -> 125 bytes .../skins/kama/images/dialog_sides_rtl.png | Bin 0 -> 128 bytes .../ckeditor/skins/kama/images/mini.gif | Bin 0 -> 181 bytes .../ckeditor/skins/kama/images/spinner.gif | Bin 0 -> 2984 bytes .../ckeditor/skins/kama/images/sprites.png | Bin 0 -> 6117 bytes .../skins/kama/images/sprites_ie6.png | Bin 0 -> 2658 bytes .../skins/kama/images/toolbar_start.gif | Bin 0 -> 102 bytes .../ckeditor/skins/kama/readme.md | 38 + .../ckeditor/skins/kama/skin.js | 8 + .../ckeditor/skins/moono-lisa/dialog.css | 5 + .../ckeditor/skins/moono-lisa/dialog_ie.css | 5 + .../ckeditor/skins/moono-lisa/dialog_ie8.css | 5 + .../skins/moono-lisa/dialog_iequirks.css | 5 + .../ckeditor/skins/moono-lisa/editor.css | 5 + .../skins/moono-lisa/editor_gecko.css | 5 + .../ckeditor/skins/moono-lisa/editor_ie.css | 5 + .../ckeditor/skins/moono-lisa/editor_ie8.css | 5 + .../skins/moono-lisa/editor_iequirks.css | 5 + .../ckeditor/skins/moono-lisa/icons.png | Bin 0 -> 12345 bytes .../ckeditor/skins/moono-lisa/icons_hidpi.png | Bin 0 -> 38261 bytes .../skins/moono-lisa/images/arrow.png | Bin 0 -> 191 bytes .../skins/moono-lisa/images/close.png | Bin 0 -> 615 bytes .../skins/moono-lisa/images/hidpi/close.png | Bin 0 -> 1238 bytes .../moono-lisa/images/hidpi/lock-open.png | Bin 0 -> 1071 bytes .../skins/moono-lisa/images/hidpi/lock.png | Bin 0 -> 1062 bytes .../skins/moono-lisa/images/hidpi/refresh.png | Bin 0 -> 1623 bytes .../skins/moono-lisa/images/lock-open.png | Bin 0 -> 511 bytes .../ckeditor/skins/moono-lisa/images/lock.png | Bin 0 -> 506 bytes .../skins/moono-lisa/images/refresh.png | Bin 0 -> 757 bytes .../skins/moono-lisa/images/spinner.gif | Bin 0 -> 2984 bytes .../ckeditor/skins/moono-lisa/readme.md | 46 + .../ckeditor/skins/moono/dialog.css | 5 + .../ckeditor/skins/moono/dialog_ie.css | 5 + .../ckeditor/skins/moono/dialog_ie7.css | 5 + .../ckeditor/skins/moono/dialog_ie8.css | 5 + .../ckeditor/skins/moono/dialog_iequirks.css | 5 + .../ckeditor/skins/moono/editor.css | 5 + .../ckeditor/skins/moono/editor_gecko.css | 5 + .../ckeditor/skins/moono/editor_ie.css | 5 + .../ckeditor/skins/moono/editor_ie7.css | 5 + .../ckeditor/skins/moono/editor_ie8.css | 5 + .../ckeditor/skins/moono/editor_iequirks.css | 5 + .../ckeditor/skins/moono/icons.png | Bin 0 -> 20386 bytes .../ckeditor/skins/moono/icons_hidpi.png | Bin 0 -> 59086 bytes .../ckeditor/skins/moono/images/anchor.png | Bin 0 -> 929 bytes .../ckeditor/skins/moono/images/arrow.png | Bin 0 -> 191 bytes .../ckeditor/skins/moono/images/close.png | Bin 0 -> 869 bytes .../skins/moono/images/hidpi/anchor.png | Bin 0 -> 1510 bytes .../skins/moono/images/hidpi/close.png | Bin 0 -> 1732 bytes .../skins/moono/images/hidpi/lock-open.png | Bin 0 -> 1582 bytes .../skins/moono/images/hidpi/lock.png | Bin 0 -> 1644 bytes .../skins/moono/images/hidpi/refresh.png | Bin 0 -> 2311 bytes .../ckeditor/skins/moono/images/lock-open.png | Bin 0 -> 801 bytes .../ckeditor/skins/moono/images/lock.png | Bin 0 -> 849 bytes .../ckeditor/skins/moono/images/refresh.png | Bin 0 -> 1050 bytes .../ckeditor/skins/moono/images/spinner.gif | Bin 0 -> 2984 bytes .../ckeditor/skins/moono/readme.md | 49 + .../ckeditor/skins/moono/skin.js | 10 + .../html/bower_components/ckeditor/styles.js | 137 + .../ckeditor/vendor/promise.js | 13 + static/html/bower_components/d3/d3.min.js | 5 + .../ng-idle/angular-idle.min.js | 8 + .../html/bower_components/nvd3/nv.d3.min.js | 6 + static/html/bower_components/q/q.min.js | 2 + .../require-css/css-builder.js | 244 + .../html/bower_components/require-css/css.js | 169 + .../bower_components/require-css/css.min.js | 1 + .../bower_components/require-css/normalize.js | 141 + .../bower_components/requirejs/require.js | 2145 + .../underscore/underscore.min.js | 2 + static/html/fonts/FontAwesome.otf | Bin 0 -> 75188 bytes static/html/fonts/fontawesome-webfont.eot | Bin 0 -> 72449 bytes static/html/fonts/fontawesome-webfont.svg | 504 + static/html/fonts/fontawesome-webfont.ttf | Bin 0 -> 141564 bytes static/html/fonts/fontawesome-webfont.woff | Bin 0 -> 83760 bytes static/html/functional/demoTest.js | 18 + static/html/functional/scenarioTest.js | 33 + .../scenarios/role_management_scenario.js | 16 + .../scenarios/user_authentication_scenario.js | 79 + .../scenarios/user_management_scenario.js | 38 + static/html/functional/testHelper.js | 26 + static/html/functional/testInitializer.js | 13 + .../html/global-translations/locale-br.json | 1451 + .../html/global-translations/locale-cs.json | 4058 ++ .../html/global-translations/locale-de.json | 857 + .../html/global-translations/locale-en.json | 4492 ++ .../html/global-translations/locale-es.json | 3999 ++ .../html/global-translations/locale-fr.json | 4080 ++ .../html/global-translations/locale-hi.json | 108 + .../html/global-translations/locale-id.json | 3239 ++ .../html/global-translations/locale-ka.json | 2711 ++ .../html/global-translations/locale-km.json | 3120 ++ .../html/global-translations/locale-ko.json | 871 + .../html/global-translations/locale-lo.json | 3218 ++ .../html/global-translations/locale-lt.json | 1456 + .../html/global-translations/locale-my.json | 3856 ++ .../global-translations/locale-my_MM.json | 3821 ++ .../html/global-translations/locale-ne.json | 1747 + .../html/global-translations/locale-oc.json | 925 + .../html/global-translations/locale-pl.json | 593 + .../html/global-translations/locale-pt.json | 1787 + .../global-translations/locale-pt_BR.json | 1012 + .../html/global-translations/locale-qqq.json | 869 + .../html/global-translations/locale-sv.json | 1123 + .../html/global-translations/locale-uk.json | 2273 + .../html/global-translations/locale-vi.json | 3923 ++ .../global-translations/locale-zh_CN.json | 2606 ++ .../global-translations/locale-zh_TW.json | 4058 ++ static/html/images/833.svg | 1 + static/html/images/MifosX_logo.png | Bin 0 -> 2834 bytes static/html/images/MifosX_logoSmall.png | Bin 0 -> 2702 bytes static/html/images/chosen-sprite.png | Bin 0 -> 559 bytes .../html/images/client-image-placeholder.png | Bin 0 -> 8026 bytes static/html/images/cubic_loader.gif | Bin 0 -> 7371 bytes static/html/images/favicon.ico | Bin 0 -> 683 bytes static/html/images/loader.gif | Bin 0 -> 80595 bytes static/html/images/logo.jpg | Bin 0 -> 26946 bytes static/html/images/mifos-logo-flat.png | Bin 0 -> 3509 bytes static/html/images/mifos_lg-logo.jpg | Bin 0 -> 3509 bytes static/html/images/ring.svg | 1 + static/html/images/small-loader.gif | Bin 0 -> 5213 bytes static/html/images/user_new.png | Bin 0 -> 2013 bytes static/html/index.html | 402 + static/html/release.json | 5 + static/html/scripts/config/LogoConfig.json | 0 static/html/scripts/config/UIconfig.json | 34 + .../controllers/controllers.7cc3357b.js | 36941 ++++++++++++++++ .../scripts/directives/directives.9ddc8aa2.js | 1000 + .../html/scripts/filters/filters.61c17440.js | 311 + static/html/scripts/loader.750c7dca.js | 122 + static/html/scripts/mifosX.js | 8 + .../html/scripts/mifosXComponents.b86779ac.js | 39 + static/html/scripts/mifosXStyles.055a5c0c.js | 14 + static/html/scripts/models/models.00796d51.js | 262 + .../html/scripts/modules/KeyboardManager.js | 223 + static/html/scripts/modules/angular-wizard.js | 558 + .../modules/angularjs-nvd3-directives.js | 2866 ++ .../html/scripts/modules/chosen.jquery.min.js | 298 + static/html/scripts/modules/configurations.js | 7 + static/html/scripts/modules/csv.js | 105 + static/html/scripts/modules/datepicker.js | 583 + static/html/scripts/modules/localstorage.js | 252 + .../scripts/modules/notificationWidget.js | 242 + ...Tasks-webstorage-configuration.f36d04c5.js | 1181 + .../scripts/services/AuthenticationService.js | 155 + .../scripts/services/HttpServiceProvider.js | 68 + .../NotificationResponseHeaderProvider.js | 24 + static/html/scripts/services/Paginator.js | 47 + .../services/ResourceFactoryProvider.js | 772 + .../html/scripts/services/SessionManager.js | 61 + .../html/scripts/services/UIConfigService.js | 42 + .../controllers/LoginFormControllerSpec.js | 40 + .../spec/controllers/MainControllerSpec.js | 87 + .../spec/controllers/RoleControllerSpec.js | 20 + .../spec/controllers/SearchControllerSpec.js | 122 + .../client/ClientControllerSpec.js | 43 + ...ClientIdentifierDocumentController_spec.js | 50 + .../client/ViewClientControllerSpec.js | 120 + .../controllers/user/UserControllerSpec.js | 34 + .../user/UserFormControllerSpec.js | 132 + .../user/UserListControllerSpec.js | 25 + .../user/UserSettingControllerSpec.js | 32 + .../user/ViewUserController_spec.js | 139 + .../spec/directives/DialogDirectiveSpec.js | 79 + .../spec/directives/OverlayDirectiveSpec.js | 96 + static/html/spec/models/ClientStatusSpec.js | 47 + static/html/spec/models/LoggedInUserSpec.js | 22 + static/html/spec/models/RoleSpec.js | 14 + .../services/AuthenticationServiceSpec.js | 46 + .../spec/services/HttpServiceProviderSpec.js | 96 + .../services/ResourceFactoryProviderSpec.js | 45 + .../html/spec/services/SessionManagerSpec.js | 88 + static/html/spec/specHelper.js | 26 + static/html/styles/fontawesome.8f41798f.css | 403 + static/html/styles/fontawesome.css | 403 + static/html/styles/styles.a1f5e61f.css | 8305 ++++ static/html/styles/styles.css | 8305 ++++ static/html/test/SpecRunner.html | 98 + static/html/test/functional/demoTest.js | 18 + static/html/test/functional/scenarioTest.js | 33 + .../scenarios/role_management_scenario.js | 16 + .../scenarios/user_authentication_scenario.js | 79 + .../scenarios/user_management_scenario.js | 38 + static/html/test/functional/testHelper.js | 26 + .../html/test/functional/testInitializer.js | 13 + .../controllers/LoginFormControllerSpec.js | 40 + .../spec/controllers/MainControllerSpec.js | 87 + .../spec/controllers/RoleControllerSpec.js | 20 + .../spec/controllers/SearchControllerSpec.js | 122 + .../client/ClientControllerSpec.js | 43 + ...ClientIdentifierDocumentController_spec.js | 50 + .../client/ViewClientControllerSpec.js | 120 + .../controllers/user/UserControllerSpec.js | 34 + .../user/UserFormControllerSpec.js | 132 + .../user/UserListControllerSpec.js | 25 + .../user/UserSettingControllerSpec.js | 32 + .../user/ViewUserController_spec.js | 139 + .../spec/directives/DialogDirectiveSpec.js | 79 + .../spec/directives/OverlayDirectiveSpec.js | 96 + .../html/test/spec/models/ClientStatusSpec.js | 47 + .../html/test/spec/models/LoggedInUserSpec.js | 22 + static/html/test/spec/models/RoleSpec.js | 14 + .../services/AuthenticationServiceSpec.js | 46 + .../spec/services/HttpServiceProviderSpec.js | 96 + .../services/ResourceFactoryProviderSpec.js | 45 + .../test/spec/services/SessionManagerSpec.js | 88 + static/html/test/spec/specHelper.js | 26 + static/html/views/_leftnav.html | 97 + static/html/views/_topnavbar.html | 143 + static/html/views/accounting/accounting.html | 75 + .../html/views/accounting/accounting_coa.html | 95 + .../views/accounting/accounting_rules.html | 35 + .../views/accounting/accounts_closure.html | 48 + .../html/views/accounting/add_acc_rule.html | 120 + .../add_financial_accounting_mapping.html | 57 + .../html/views/accounting/createclosure.html | 53 + .../views/accounting/createglaccounting.html | 129 + .../html/views/accounting/edit_acc_rule.html | 124 + .../edit_financial_activity_mapping.html | 53 + .../views/accounting/editglaccounting.html | 119 + .../financial_accounting_mapping.html | 36 + static/html/views/accounting/freqposting.html | 165 + .../accounting/journalentry_posting.html | 138 + .../views/accounting/openingbalances.html | 88 + .../periodic_accrual_accounting.html | 34 + .../CreateProvisioningEntries.html | 36 + .../provisioning/ProvisioningEntries.html | 60 + .../provisioning/ViewProvisioningEntry.html | 79 + .../ViewProvisioningJournalEntries.html | 69 + .../views/accounting/search_transaction.html | 125 + .../html/views/accounting/view_acc_rule.html | 88 + .../accounting/view_close_accounting.html | 66 + .../accounting/view_financial_activity.html | 50 + .../views/accounting/view_transactions.html | 199 + .../views/accounting/viewglaccounting.html | 81 + .../create_standinginstruction.html | 313 + .../edit_standinginstruction.html | 183 + .../list_standinginstruction.html | 117 + .../accounttransfers/list_transactions.html | 66 + .../make_accounttransfer.html | 194 + .../standinginstructions_history.html | 98 + .../view_accounttransfer.html | 72 + .../view_standinginstruction.html | 144 + .../views/adhocquery/adhocquerylists.html | 34 + .../views/adhocquery/createadhocquery.html | 101 + .../html/views/adhocquery/editadhocquery.html | 103 + .../html/views/adhocquery/viewadhocquery.html | 67 + .../views/administration/AddressForm.html | 161 + .../views/administration/EditAddress.html | 158 + static/html/views/administration/addrole.html | 43 + .../html/views/administration/createuser.html | 185 + .../editExternalServicesConfiguration.html | 31 + .../editGlobalConfiguration.html | 31 + .../administration/editTwoFactorConfig.html | 46 + .../html/views/administration/edituser.html | 131 + .../administration/externalServices.html | 58 + static/html/views/administration/global.html | 62 + .../views/administration/makerchecker.html | 55 + .../views/administration/organization.html | 126 + static/html/views/administration/roles.html | 33 + static/html/views/administration/system.html | 108 + .../views/administration/userFormDialog.html | 54 + static/html/views/administration/users.html | 19 + .../views/administration/usersettings.html | 31 + .../html/views/administration/userslist.html | 41 + .../viewExternalServicesConfiguration.html | 33 + .../administration/viewTwoFactorConfig.html | 40 + .../html/views/administration/viewrole.html | 117 + .../html/views/administration/viewuser.html | 104 + .../html/views/centers/centerattendance.html | 62 + static/html/views/centers/centers.html | 64 + static/html/views/centers/closecenter.html | 41 + static/html/views/centers/createcenter.html | 139 + static/html/views/centers/editcenter.html | 83 + .../views/centers/managegroupmembers.html | 86 + static/html/views/centers/viewcenter.html | 326 + .../html/views/clients/addclientdocument.html | 67 + .../views/clients/addclientidentifier.html | 84 + .../clients/addclientidentifierdocument.html | 47 + .../html/views/clients/addfamilymembers.html | 149 + .../views/clients/addnewclientcharge.html | 76 + static/html/views/clients/clientactions.html | 155 + .../views/clients/clientchargeoverview.html | 40 + static/html/views/clients/clients.html | 91 + .../views/clients/clientscreenreport.html | 34 + static/html/views/clients/createclient.html | 711 + .../html/views/clients/createsubclient.html | 715 + static/html/views/clients/editclient.html | 335 + .../html/views/clients/editfamilymembers.html | 152 + .../html/views/clients/payclientcharge.html | 43 + static/html/views/clients/survey.html | 54 + static/html/views/clients/test.html | 1 + static/html/views/clients/transferclient.html | 34 + static/html/views/clients/viewclient.html | 1663 + .../html/views/clients/viewclientcharge.html | 101 + .../views/collection/collectionsheet.html | 284 + .../collection/individualcollectionsheet.html | 235 + .../collection/productivecollectionsheet.html | 115 + .../fixed/add_new_fixed_deposit_charge.html | 101 + .../fixed/edit_account_application.html | 370 + .../fixed/fixed_deposit_account_actions.html | 215 + ...d_deposit_account_partial_liquidation.html | 98 + .../fixed/fixed_deposit_account_top_up.html | 89 + .../views/deposits/fixed/newapplication.html | 400 + .../fixed/view_fixed_deposit_transaction.html | 69 + .../deposits/fixed/viewaccountdetails.html | 653 + .../add_new_recurring_deposit_charge.html | 92 + .../recurring/edit_account_application.html | 390 + .../deposits/recurring/newapplication.html | 414 + .../recurring_deposit_account_actions.html | 184 + .../view_recurring_deposit_transaction.html | 106 + .../recurring/viewaccountdetails.html | 702 + static/html/views/errors/404.html | 14 + static/html/views/footer.html | 1 + static/html/views/groups/addrole.html | 31 + static/html/views/groups/assignstaff.html | 27 + static/html/views/groups/attachmeeting.html | 83 + static/html/views/groups/closegroup.html | 39 + static/html/views/groups/creategroup.html | 225 + static/html/views/groups/editgroup.html | 157 + static/html/views/groups/editmeeting.html | 66 + .../editmeeting_based_on_meeting_date.html | 39 + static/html/views/groups/groupattendance.html | 56 + static/html/views/groups/groups.html | 62 + static/html/views/groups/membermanage.html | 88 + static/html/views/groups/transferclients.html | 93 + static/html/views/groups/viewgroup.html | 547 + static/html/views/header.html | 18 + static/html/views/help.html | 96 + static/html/views/home.html | 8 + .../views/loans/AdjustRepaymentSchdule.html | 235 + static/html/views/loans/addloancharge.html | 78 + .../html/views/loans/addloancollateral.html | 56 + static/html/views/loans/addloandocument.html | 55 + .../views/loans/approveloanreschedule.html | 35 + .../html/views/loans/assignloanofficer.html | 46 + static/html/views/loans/editguarantor.html | 97 + static/html/views/loans/editloanaccount.html | 587 + static/html/views/loans/editloancharge.html | 38 + .../html/views/loans/editloancollateral.html | 52 + static/html/views/loans/guarantor.html | 181 + static/html/views/loans/list_guarantor.html | 240 + .../html/views/loans/loanaccountactions.html | 506 + static/html/views/loans/loanforeclosure.html | 87 + static/html/views/loans/loanscreenreport.html | 32 + .../html/views/loans/newjlgloanaccount.html | 134 + static/html/views/loans/newloanaccount.html | 1159 + .../loans/previewloanrepaymentschedule.html | 74 + .../views/loans/rejectloanreschedule.html | 32 + static/html/views/loans/rescheduleloans.html | 131 + .../views/loans/view_loan_transaction.html | 85 + .../views/loans/viewloanaccountdetails.html | 1035 + static/html/views/loans/viewloancharge.html | 77 + .../html/views/loans/viewloancollateral.html | 53 + .../views/loans/viewreschedulerequest.html | 148 + static/html/views/login.html | 15 + static/html/views/navigation/offices.html | 451 + .../views/notification/notifications.html | 24 + .../organization/bulkimport/bulkimport.html | 93 + .../bulkimport/bulkimportcenters.html | 103 + .../bulkimport/bulkimportclients.html | 117 + .../bulkimport/bulkimportcoa.html | 102 + .../bulkimport/bulkimportemployees.html | 94 + .../bulkimportfixeddepositaccounts.html | 103 + .../bulkimportfixeddeposittransactions.html | 94 + .../bulkimport/bulkimportgroup.html | 103 + .../bulkimport/bulkimportguarantor.html | 94 + .../bulkimport/bulkimportjournalentries.html | 94 + .../bulkimport/bulkimportloanaccounts.html | 103 + .../bulkimport/bulkimportloanrepayments.html | 94 + .../bulkimport/bulkimportoffices.html | 82 + .../bulkimportrecurringdeposits.html | 102 + ...lkimportrecurringdepositstransactions.html | 94 + .../bulkimport/bulkimportsavingsaccounts.html | 103 + ...bulkimportsavingsaccountstransactions.html | 95 + .../bulkimport/bulkimportshareaccounts.html | 94 + .../bulkimport/bulkimportusers.html | 102 + static/html/views/organization/bulkloan.html | 117 + .../cashierFundsAllocationSettlement.html | 85 + .../cashmgmt/cashierTransactions.html | 86 + .../cashmgmt/cashiersForTeller.html | 82 + .../organization/cashmgmt/createCashier.html | 111 + .../organization/cashmgmt/createTeller.html | 83 + .../organization/cashmgmt/editTeller.html | 86 + .../organization/cashmgmt/editcashier.html | 104 + .../views/organization/cashmgmt/tellers.html | 59 + .../cashmgmt/viewCashiersForTeller.html | 56 + .../organization/cashmgmt/viewTeller.html | 43 + .../views/organization/createemployee.html | 117 + .../views/organization/createholiday.html | 112 + .../html/views/organization/createoffice.html | 67 + .../views/organization/createpaymenttype.html | 60 + .../views/organization/currencyconfig.html | 65 + .../html/views/organization/editemployee.html | 117 + .../html/views/organization/editholiday.html | 93 + .../html/views/organization/editoffice.html | 62 + .../views/organization/editpaymenttype.html | 50 + static/html/views/organization/employees.html | 46 + .../entitydatatablechecks.html | 155 + static/html/views/organization/holidays.html | 51 + .../html/views/organization/managefunds.html | 66 + static/html/views/organization/offices.html | 53 + .../organization/passwordpreferences.html | 29 + .../CreateProvisioningCriteria.html | 130 + .../EditProvisioningCriteria.html | 129 + .../ViewAllProvisioningCriteria.html | 35 + .../ViewProvisioningCriteria.html | 65 + .../smscampaigns/createsmscampaign.html | 342 + .../smscampaigns/editsmscampaign.html | 212 + .../smscampaigns/smscampaigns.html | 47 + .../smscampaigns/viewsmscampaign.html | 247 + .../html/views/organization/viewemployee.html | 62 + .../html/views/organization/viewholiday.html | 73 + .../html/views/organization/viewoffice.html | 88 + .../views/organization/viewpaymenttype.html | 73 + .../html/views/organization/workingdays.html | 50 + .../views/private/home_branchmanager.html | 1 + static/html/views/private/home_default.html | 26 + static/html/views/private/home_funder.html | 1 + static/html/views/private/home_superuser.html | 26 + static/html/views/private/rich_dashboard.html | 168 + static/html/views/products/charges.html | 43 + static/html/views/products/createcharge.html | 221 + .../products/createfixeddepositproduct.html | 1493 + .../products/createinterestratechart.html | 266 + .../views/products/createloanproduct.html | 2114 + .../views/products/createlockinperiod.html | 77 + .../createrecurringdepositproduct.html | 1559 + .../views/products/createsavingproduct.html | 1352 + .../views/products/createshareproduct.html | 652 + .../views/products/createvalidationlimit.html | 84 + .../html/views/products/dividendlisting.html | 47 + static/html/views/products/editcharge.html | 182 + .../products/editfixeddepositproduct.html | 924 + .../views/products/editinterestratechart.html | 263 + .../html/views/products/editloanproduct.html | 1222 + .../html/views/products/editlockinperiod.html | 76 + .../products/editrecurringdepositproduct.html | 1007 + .../views/products/editsavingproduct.html | 781 + .../html/views/products/editshareproduct.html | 347 + .../views/products/editvalidationlimit.html | 85 + .../views/products/fixeddepositproducts.html | 31 + .../floatingrates/CreateFloatingRate.html | 105 + .../floatingrates/EditFloatingRate.html | 107 + .../products/floatingrates/FloatingRates.html | 35 + .../floatingrates/ViewFloatingRate.html | 59 + .../views/products/interestratecharts.html | 85 + static/html/views/products/loanproducts.html | 39 + static/html/views/products/lockInPeriod.html | 36 + .../products/productmix/addproductmix.html | 53 + .../products/productmix/editproductmix.html | 35 + .../views/products/productmix/productmix.html | 26 + .../products/productmix/viewproductmix.html | 55 + static/html/views/products/products.html | 90 + .../products/recurringdepositproducts.html | 31 + .../html/views/products/savingproducts.html | 32 + .../views/products/shareproductactions.html | 208 + static/html/views/products/shareproducts.html | 33 + .../products/tax/CreateTaxComponent.html | 111 + .../views/products/tax/CreateTaxGroup.html | 62 + .../views/products/tax/EditTaxComponent.html | 95 + .../html/views/products/tax/EditTaxGroup.html | 77 + .../views/products/tax/TaxComponents.html | 29 + .../views/products/tax/TaxConfigurations.html | 36 + static/html/views/products/tax/TaxGroups.html | 25 + .../views/products/tax/ViewTaxComponent.html | 83 + .../html/views/products/tax/ViewTaxGroup.html | 52 + .../html/views/products/validationsLimit.html | 47 + static/html/views/products/viewcharge.html | 87 + static/html/views/products/viewdividends.html | 43 + .../products/viewfixeddepositproduct.html | 345 + .../html/views/products/viewloanproduct.html | 562 + .../html/views/products/viewlockinperiod.html | 51 + .../products/viewrecurringdepositproduct.html | 390 + .../views/products/viewsavingproduct.html | 310 + .../html/views/products/viewshareproduct.html | 170 + .../views/products/viewvalidationlimit.html | 50 + static/html/views/profile.html | 102 + static/html/views/reports/run_reports.html | 163 + static/html/views/reports/view_reports.html | 29 + static/html/views/reports/xbrl.html | 98 + static/html/views/reports/xbrlreport.html | 13 + .../views/savings/addnewsavingscharge.html | 93 + .../views/savings/assignsavingsofficer.html | 48 + .../edit_saving_account_application.html | 333 + .../savings/list_onhold_transactions.html | 64 + .../new_saving_account_application.html | 609 + static/html/views/savings/overdraft.html | 77 + .../views/savings/saving_account_actions.html | 382 + .../savings/search_savings_transaction.html | 139 + .../views/savings/unassignsavingsofficer.html | 37 + .../savings/view_saving_account_details.html | 811 + .../savings/view_saving_transaction.html | 131 + .../view_savings_account_accruals.html | 106 + .../html/views/savings/viewsavingscharge.html | 88 + static/html/views/search/advsearch.html | 214 + static/html/views/search/glresults.html | 256 + .../html/views/shares/createshareaccount.html | 393 + .../html/views/shares/editshareaccount.html | 215 + .../views/shares/shareaccountactions.html | 124 + .../html/views/shares/viewshareaccount.html | 161 + static/html/views/start.html | 1 + static/html/views/surveys/createsurvey.html | 154 + static/html/views/surveys/editsurvey.html | 154 + static/html/views/surveys/surveys.html | 64 + .../html/views/surveys/viewclientsurvey.html | 58 + static/html/views/surveys/viewsurvey.html | 99 + .../system/accountnumberpreferences.html | 34 + .../system/addaccountnumberpreferences.html | 52 + static/html/views/system/addcode.html | 41 + static/html/views/system/addhook.html | 121 + static/html/views/system/audit.html | 110 + .../views/system/checkerActionPerformed.html | 18 + static/html/views/system/codes.html | 36 + static/html/views/system/createdatatable.html | 150 + static/html/views/system/createreport.html | 169 + static/html/views/system/datatables.html | 36 + .../system/editaccountnumberpreferences.html | 46 + static/html/views/system/editcode.html | 54 + static/html/views/system/editdatatable.html | 153 + static/html/views/system/edithook.html | 120 + static/html/views/system/editreport.html | 184 + .../html/views/system/editschedulerjob.html | 51 + .../views/system/entitytoentitymapping.html | 559 + static/html/views/system/hooks.html | 36 + .../html/views/system/makedatatableentry.html | 78 + static/html/views/system/reports.html | 47 + static/html/views/system/schedulerjobs.html | 74 + .../views/system/viewMakerCheckerTask.html | 19 + .../system/viewaccountnumberpreferences.html | 62 + static/html/views/system/viewaudit.html | 76 + .../html/views/system/viewcheckerinbox.html | 116 + static/html/views/system/viewcode.html | 118 + static/html/views/system/viewdatatable.html | 64 + .../html/views/system/viewdatatableentry.html | 109 + static/html/views/system/viewhook.html | 89 + static/html/views/system/viewreport.html | 70 + .../html/views/system/viewschedulerjob.html | 45 + .../views/system/viewschedulerjobhistory.html | 63 + static/html/views/tasks.html | 584 + .../html/views/templates/createtemplate.html | 99 + static/html/views/templates/edittemplate.html | 104 + static/html/views/templates/templates.html | 38 + static/html/views/templates/viewtemplate.html | 51 + .../createtransactionclassification.html | 42 + .../transactionclassification.html | 56 + 3280 files changed, 216026 insertions(+), 58 deletions(-) create mode 100644 charts/Chart.lock create mode 100644 charts/Chart.yaml create mode 100644 charts/charts/fineract-0.1.2.tgz create mode 100644 charts/ingress.yaml create mode 100644 charts/template.yaml create mode 100644 charts/values.yaml create mode 100644 conf/default.conf.template.bak create mode 100644 static/html/.nojekyll create mode 100644 static/html/50x.html create mode 100644 static/html/SpecRunner.html create mode 100644 static/html/angular/i18n/angular-locale_en.js create mode 100644 static/html/angular/i18n/angular-locale_es.js create mode 100644 static/html/angular/i18n/angular-locale_fr.js create mode 100644 static/html/angular/i18n/angular-locale_hi.js create mode 100644 static/html/angular/i18n/angular-locale_ka.js create mode 100644 static/html/angular/i18n/angular-locale_pt.js create mode 100644 static/html/angular/i18n/angular-locale_zh_cn.js create mode 100644 static/html/bower_components/angular-animate/angular-animate.min.js create mode 100644 static/html/bower_components/angular-bootstrap/ui-bootstrap-tpls.min.js create mode 100644 static/html/bower_components/angular-bootstrap/ui-bootstrap.min.js create mode 100644 static/html/bower_components/angular-dynamic-locale/tmhDynamicLocale.min.js create mode 100644 static/html/bower_components/angular-mocks/angular-mocks.min.js create mode 100644 static/html/bower_components/angular-resource/angular-resource.min.js create mode 100644 static/html/bower_components/angular-route/angular-route.min.js create mode 100644 static/html/bower_components/angular-sanitize/angular-sanitize.min.js create mode 100644 static/html/bower_components/angular-touch/angular-touch.min.js create mode 100644 static/html/bower_components/angular-translate-loader-static-files/angular-translate-loader-static-files.min.js create mode 100644 static/html/bower_components/angular-translate/angular-translate.min.js create mode 100644 static/html/bower_components/angular-utils-pagination/dirPagination.min.js create mode 100644 static/html/bower_components/angular-utils-pagination/dirPagination.tpl.html create mode 100644 static/html/bower_components/angular-webstorage/angular-webstorage.min.js create mode 100644 static/html/bower_components/angular/angular.min.js create mode 100644 static/html/bower_components/angularjs-file-upload/FileAPI.min.js create mode 100644 static/html/bower_components/angularjs-file-upload/ng-file-upload-all.min.js create mode 100644 static/html/bower_components/angularjs-file-upload/ng-file-upload-shim.min.js create mode 100644 static/html/bower_components/angularjs-file-upload/ng-file-upload.min.js create mode 100644 static/html/bower_components/bootstrap-sass/assets/javascripts/bootstrap.min.js create mode 100644 static/html/bower_components/chosen/.bower.json create mode 100644 static/html/bower_components/chosen/.travis.yml create mode 100644 static/html/bower_components/chosen/LICENSE.md create mode 100644 static/html/bower_components/chosen/README.md create mode 100644 static/html/bower_components/chosen/bower.json create mode 100644 static/html/bower_components/chosen/chosen-sprite.png create mode 100644 static/html/bower_components/chosen/chosen-sprite@2x.png create mode 100644 static/html/bower_components/chosen/chosen.css create mode 100644 static/html/bower_components/chosen/chosen.jquery.js create mode 100644 static/html/bower_components/chosen/chosen.jquery.min.js create mode 100644 static/html/bower_components/chosen/chosen.min.css create mode 100644 static/html/bower_components/chosen/chosen.proto.js create mode 100644 static/html/bower_components/chosen/chosen.proto.min.js create mode 100644 static/html/bower_components/chosen/composer.json create mode 100644 static/html/bower_components/chosen/package.json create mode 100644 static/html/bower_components/ckeditor/.bower.json create mode 100644 static/html/bower_components/ckeditor/.github/ISSUE_TEMPLATE create mode 100644 static/html/bower_components/ckeditor/.npm/README.md create mode 100644 static/html/bower_components/ckeditor/.npm/assets/ckeditor4.png create mode 100644 static/html/bower_components/ckeditor/.npmignore create mode 100644 static/html/bower_components/ckeditor/CHANGES.md create mode 100644 static/html/bower_components/ckeditor/LICENSE.md create mode 100644 static/html/bower_components/ckeditor/README.md create mode 100644 static/html/bower_components/ckeditor/SECURITY.md create mode 100644 static/html/bower_components/ckeditor/adapters/jquery.js create mode 100644 static/html/bower_components/ckeditor/bender-runner.config.json create mode 100644 static/html/bower_components/ckeditor/bower.json create mode 100644 static/html/bower_components/ckeditor/ckeditor.js create mode 100644 static/html/bower_components/ckeditor/composer.json create mode 100644 static/html/bower_components/ckeditor/config.js create mode 100644 static/html/bower_components/ckeditor/contents.css create mode 100644 static/html/bower_components/ckeditor/lang/_translationstatus.txt create mode 100644 static/html/bower_components/ckeditor/lang/af.js create mode 100644 static/html/bower_components/ckeditor/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/lang/az.js create mode 100644 static/html/bower_components/ckeditor/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/lang/bn.js create mode 100644 static/html/bower_components/ckeditor/lang/bs.js create mode 100644 static/html/bower_components/ckeditor/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/lang/da.js create mode 100644 static/html/bower_components/ckeditor/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/lang/de.js create mode 100644 static/html/bower_components/ckeditor/lang/el.js create mode 100644 static/html/bower_components/ckeditor/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/lang/en.js create mode 100644 static/html/bower_components/ckeditor/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/lang/es.js create mode 100644 static/html/bower_components/ckeditor/lang/et.js create mode 100644 static/html/bower_components/ckeditor/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/lang/he.js create mode 100644 static/html/bower_components/ckeditor/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/lang/id.js create mode 100644 static/html/bower_components/ckeditor/lang/is.js create mode 100644 static/html/bower_components/ckeditor/lang/it.js create mode 100644 static/html/bower_components/ckeditor/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/lang/ka.js create mode 100644 static/html/bower_components/ckeditor/lang/km.js create mode 100644 static/html/bower_components/ckeditor/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/lang/ms.js create mode 100644 static/html/bower_components/ckeditor/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/lang/no.js create mode 100644 static/html/bower_components/ckeditor/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/lang/si.js create mode 100644 static/html/bower_components/ckeditor/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/lang/th.js create mode 100644 static/html/bower_components/ckeditor/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/package.json create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/a11yhelp.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/_translationstatus.txt create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/a11yhelp/dialogs/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/about/dialogs/about.js create mode 100644 static/html/bower_components/ckeditor/plugins/about/dialogs/hidpi/logo_ckeditor.png create mode 100644 static/html/bower_components/ckeditor/plugins/about/dialogs/logo_ckeditor.png create mode 100644 static/html/bower_components/ckeditor/plugins/adobeair/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/autocomplete/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/autocomplete/skins/default.css create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/autoembed/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/autogrow/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/autolink/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/balloonpanel/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/balloonpanel/skins/kama/balloonpanel.css create mode 100644 static/html/bower_components/ckeditor/plugins/balloonpanel/skins/moono-lisa/balloonpanel.css create mode 100644 static/html/bower_components/ckeditor/plugins/balloonpanel/skins/moono-lisa/images/close.png create mode 100644 static/html/bower_components/ckeditor/plugins/balloonpanel/skins/moono-lisa/images/hidpi/close.png create mode 100644 static/html/bower_components/ckeditor/plugins/balloonpanel/skins/moono/balloonpanel.css create mode 100644 static/html/bower_components/ckeditor/plugins/balloonpanel/skins/moono/images/close.png create mode 100644 static/html/bower_components/ckeditor/plugins/balloonpanel/skins/moono/images/hidpi/close.png create mode 100644 static/html/bower_components/ckeditor/plugins/balloontoolbar/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/balloontoolbar/skins/default.css create mode 100644 static/html/bower_components/ckeditor/plugins/balloontoolbar/skins/kama/balloontoolbar.css create mode 100644 static/html/bower_components/ckeditor/plugins/balloontoolbar/skins/moono-lisa/balloontoolbar.css create mode 100644 static/html/bower_components/ckeditor/plugins/balloontoolbar/skins/moono/balloontoolbar.css create mode 100644 static/html/bower_components/ckeditor/plugins/bbcode/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/icons/bidiltr.png create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/icons/bidirtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/icons/hidpi/bidiltr.png create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/icons/hidpi/bidirtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/bn.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/bs.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/is.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/ka.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/ms.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/bidi/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/clipboard/dialogs/paste.js create mode 100644 static/html/bower_components/ckeditor/plugins/cloudservices/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/dialogs/codesnippet.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/icons/codesnippet.png create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/icons/hidpi/codesnippet.png create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippet/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/codesnippetgeshi/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/icons/bgcolor.png create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/icons/hidpi/bgcolor.png create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/icons/hidpi/textcolor.png create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/icons/textcolor.png create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/bn.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/bs.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/is.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/ka.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/ms.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/colorbutton/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/dialogs/colordialog.css create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/dialogs/colordialog.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/bn.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/bs.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/is.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/ka.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/ms.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/colordialog/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/cursors/cursor-disabled.svg create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/cursors/cursor.svg create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/icons/copyformatting.png create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/icons/hidpi/copyformatting.png create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/copyformatting/styles/copyformatting.css create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/_translationstatus.txt create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/devtools/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/dialog/dialogDefinition.js create mode 100644 static/html/bower_components/ckeditor/plugins/dialog/styles/dialog.css create mode 100644 static/html/bower_components/ckeditor/plugins/dialogadvtab/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/dialogs/div.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/icons/creatediv.png create mode 100644 static/html/bower_components/ckeditor/plugins/div/icons/hidpi/creatediv.png create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/bn.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/bs.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/is.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/ka.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/ms.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/div/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/divarea/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/dialogs/docprops.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/icons/docprops-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/icons/docprops.png create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/icons/hidpi/docprops-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/icons/hidpi/docprops.png create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/bn.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/bs.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/is.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/ka.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/ms.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/docprops/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/dialogs/easyimagealt.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/icons/easyimagealigncenter.png create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/icons/easyimagealignleft.png create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/icons/easyimagealignright.png create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/icons/easyimagealt.png create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/icons/easyimagefull.png create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/icons/easyimageside.png create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/icons/easyimageupload.png create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/icons/hidpi/easyimagealigncenter.png create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/icons/hidpi/easyimagealignleft.png create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/icons/hidpi/easyimagealignright.png create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/icons/hidpi/easyimagealt.png create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/icons/hidpi/easyimagefull.png create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/icons/hidpi/easyimageside.png create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/icons/hidpi/easyimageupload.png create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/easyimage/styles/easyimage.css create mode 100644 static/html/bower_components/ckeditor/plugins/editorplaceholder/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/embed/icons/embed.png create mode 100644 static/html/bower_components/ckeditor/plugins/embed/icons/hidpi/embed.png create mode 100644 static/html/bower_components/ckeditor/plugins/embed/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/dialogs/embedbase.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedbase/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/embedsemantic/icons/embedsemantic.png create mode 100644 static/html/bower_components/ckeditor/plugins/embedsemantic/icons/hidpi/embedsemantic.png create mode 100644 static/html/bower_components/ckeditor/plugins/embedsemantic/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/assets/iconsall.png create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/assets/iconsall.svg create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/emoji.json create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/icons/emojipanel.png create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/icons/hidpi/emojipanel.png create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/emoji/skins/default.css create mode 100644 static/html/bower_components/ckeditor/plugins/exportpdf/CHANGELOG.md create mode 100644 static/html/bower_components/ckeditor/plugins/exportpdf/LICENSE.md create mode 100644 static/html/bower_components/ckeditor/plugins/exportpdf/icons/exportpdf.png create mode 100644 static/html/bower_components/ckeditor/plugins/exportpdf/icons/hidpi/exportpdf.png create mode 100644 static/html/bower_components/ckeditor/plugins/exportpdf/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/exportpdf/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/exportpdf/plugindefinition.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/dialogs/find.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/icons/find-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/find/icons/find.png create mode 100644 static/html/bower_components/ckeditor/plugins/find/icons/hidpi/find-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/find/icons/hidpi/find.png create mode 100644 static/html/bower_components/ckeditor/plugins/find/icons/hidpi/replace.png create mode 100644 static/html/bower_components/ckeditor/plugins/find/icons/replace.png create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/bn.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/bs.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/is.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/ka.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/ms.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/find/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/flash/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/bn.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/bs.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/is.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/ka.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/ms.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/font/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/dialogs/button.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/dialogs/checkbox.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/dialogs/form.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/dialogs/hiddenfield.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/dialogs/radio.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/dialogs/select.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/dialogs/textarea.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/dialogs/textfield.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/button.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/checkbox.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/form.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/hiddenfield.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/hidpi/button.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/hidpi/checkbox.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/hidpi/form.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/hidpi/hiddenfield.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/hidpi/imagebutton.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/hidpi/radio.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/hidpi/select-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/hidpi/select.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/hidpi/textarea-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/hidpi/textarea.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/hidpi/textfield-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/hidpi/textfield.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/imagebutton.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/radio.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/select-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/select.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/textarea-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/textarea.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/textfield-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/icons/textfield.png create mode 100644 static/html/bower_components/ckeditor/plugins/forms/images/hiddenfield.gif create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/bn.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/bs.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/is.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/ka.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/ms.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/forms/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/icons.png create mode 100644 static/html/bower_components/ckeditor/plugins/icons_hidpi.png create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/dialogs/iframe.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/icons/hidpi/iframe.png create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/icons/iframe.png create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/images/placeholder.png create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/bn.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/bs.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/is.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/ka.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/ms.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframe/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/iframedialog/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/image/dialogs/image.js create mode 100644 static/html/bower_components/ckeditor/plugins/image/images/noimage.png create mode 100644 static/html/bower_components/ckeditor/plugins/image2/dialogs/image2.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/icons/hidpi/image.png create mode 100644 static/html/bower_components/ckeditor/plugins/image2/icons/image.png create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/bn.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/bs.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/is.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/ka.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/ms.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/image2/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/imagebase/styles/imagebase.css create mode 100644 static/html/bower_components/ckeditor/plugins/indentblock/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/justify/icons/hidpi/justifyblock.png create mode 100644 static/html/bower_components/ckeditor/plugins/justify/icons/hidpi/justifycenter.png create mode 100644 static/html/bower_components/ckeditor/plugins/justify/icons/hidpi/justifyleft.png create mode 100644 static/html/bower_components/ckeditor/plugins/justify/icons/hidpi/justifyright.png create mode 100644 static/html/bower_components/ckeditor/plugins/justify/icons/justifyblock.png create mode 100644 static/html/bower_components/ckeditor/plugins/justify/icons/justifycenter.png create mode 100644 static/html/bower_components/ckeditor/plugins/justify/icons/justifyleft.png create mode 100644 static/html/bower_components/ckeditor/plugins/justify/icons/justifyright.png create mode 100644 static/html/bower_components/ckeditor/plugins/justify/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/icons/hidpi/language.png create mode 100644 static/html/bower_components/ckeditor/plugins/language/icons/language.png create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/language/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/link/dialogs/anchor.js create mode 100644 static/html/bower_components/ckeditor/plugins/link/dialogs/link.js create mode 100644 static/html/bower_components/ckeditor/plugins/link/images/anchor.png create mode 100644 static/html/bower_components/ckeditor/plugins/link/images/hidpi/anchor.png create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/dialogs/liststyle.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/bn.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/bs.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/is.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/ka.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/ms.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/liststyle/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/magicline/images/hidpi/icon-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/magicline/images/hidpi/icon.png create mode 100644 static/html/bower_components/ckeditor/plugins/magicline/images/icon-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/magicline/images/icon.png create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/dialogs/mathjax.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/icons/hidpi/mathjax.png create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/icons/mathjax.png create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/images/loader.gif create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/mathjax/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/mentions/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/icons/hidpi/newpage-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/icons/hidpi/newpage.png create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/icons/newpage-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/icons/newpage.png create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/bn.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/bs.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/is.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/ka.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/ms.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/newpage/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/icons/hidpi/pagebreak-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/icons/hidpi/pagebreak.png create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/icons/pagebreak-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/icons/pagebreak.png create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/images/pagebreak.gif create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/bn.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/bs.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/is.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/ka.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/ms.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/pagebreak/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/panelbutton/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/pastefromgdocs/filter/default.js create mode 100644 static/html/bower_components/ckeditor/plugins/pastefromlibreoffice/filter/default.js create mode 100644 static/html/bower_components/ckeditor/plugins/pastefromword/filter/default.js create mode 100644 static/html/bower_components/ckeditor/plugins/pastetools/filter/common.js create mode 100644 static/html/bower_components/ckeditor/plugins/pastetools/filter/image.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/dialogs/placeholder.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/icons/hidpi/placeholder.png create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/icons/placeholder.png create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/placeholder/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/icons/hidpi/preview-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/preview/icons/hidpi/preview.png create mode 100644 static/html/bower_components/ckeditor/plugins/preview/icons/preview-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/preview/icons/preview.png create mode 100644 static/html/bower_components/ckeditor/plugins/preview/images/pagebreak.gif create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/bn.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/bs.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/is.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/ka.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/ms.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/preview/preview.html create mode 100644 static/html/bower_components/ckeditor/plugins/preview/styles/screen.css create mode 100644 static/html/bower_components/ckeditor/plugins/print/icons/hidpi/print.png create mode 100644 static/html/bower_components/ckeditor/plugins/print/icons/print.png create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/bn.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/bs.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/is.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/ka.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/ms.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/print/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/icons/hidpi/save.png create mode 100644 static/html/bower_components/ckeditor/plugins/save/icons/save.png create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/bn.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/bs.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/is.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/ka.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/ms.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/save/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/scayt/CHANGELOG.md create mode 100644 static/html/bower_components/ckeditor/plugins/scayt/LICENSE.md create mode 100644 static/html/bower_components/ckeditor/plugins/scayt/dialogs/dialog.css create mode 100644 static/html/bower_components/ckeditor/plugins/scayt/dialogs/options.js create mode 100644 static/html/bower_components/ckeditor/plugins/scayt/dialogs/toolbar.css create mode 100644 static/html/bower_components/ckeditor/plugins/scayt/skins/moono-lisa/scayt.css create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/icons/hidpi/selectall.png create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/icons/selectall.png create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/bn.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/bs.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/is.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/ka.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/ms.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/selectall/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/sharedspace/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/icons/hidpi/showblocks-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/icons/hidpi/showblocks.png create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/icons/showblocks-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/icons/showblocks.png create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/images/block_address.png create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/images/block_blockquote.png create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/images/block_div.png create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/images/block_h1.png create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/images/block_h2.png create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/images/block_h3.png create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/images/block_h4.png create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/images/block_h5.png create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/images/block_h6.png create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/images/block_p.png create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/images/block_pre.png create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/bn.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/bs.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/is.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/ka.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/ms.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/showblocks/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/dialogs/smiley.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/icons/hidpi/smiley.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/icons/smiley.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/angel_smile.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/angel_smile.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/angry_smile.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/angry_smile.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/broken_heart.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/broken_heart.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/confused_smile.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/confused_smile.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/cry_smile.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/cry_smile.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/devil_smile.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/devil_smile.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/embaressed_smile.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/embarrassed_smile.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/embarrassed_smile.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/envelope.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/envelope.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/heart.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/heart.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/kiss.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/kiss.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/lightbulb.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/lightbulb.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/omg_smile.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/omg_smile.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/regular_smile.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/regular_smile.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/sad_smile.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/sad_smile.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/shades_smile.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/shades_smile.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/teeth_smile.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/teeth_smile.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/thumbs_down.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/thumbs_down.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/thumbs_up.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/thumbs_up.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/tongue_smile.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/tongue_smile.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/tounge_smile.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/whatchutalkingabout_smile.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/wink_smile.gif create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/images/wink_smile.png create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/bn.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/bs.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/is.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/ka.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/ms.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/smiley/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/dialogs/sourcedialog.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/icons/hidpi/sourcedialog-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/icons/hidpi/sourcedialog.png create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/icons/sourcedialog-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/icons/sourcedialog.png create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/bn.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/bs.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/is.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/ka.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/ms.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/sourcedialog/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/_translationstatus.txt create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/specialchar/dialogs/specialchar.js create mode 100644 static/html/bower_components/ckeditor/plugins/stylesheetparser/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/table/dialogs/table.js create mode 100644 static/html/bower_components/ckeditor/plugins/tableresize/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/tableselection/styles/tableselection.css create mode 100644 static/html/bower_components/ckeditor/plugins/tabletools/dialogs/tableCell.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/dialogs/templates.css create mode 100644 static/html/bower_components/ckeditor/plugins/templates/dialogs/templates.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/icons/hidpi/templates-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/templates/icons/hidpi/templates.png create mode 100644 static/html/bower_components/ckeditor/plugins/templates/icons/templates-rtl.png create mode 100644 static/html/bower_components/ckeditor/plugins/templates/icons/templates.png create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/bn.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/bs.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/en-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/fo.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/gu.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/hi.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/is.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/ka.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/lt.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/mn.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/ms.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/th.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/templatedefinition.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/templates/default.js create mode 100644 static/html/bower_components/ckeditor/plugins/templates/templates/images/template1.gif create mode 100644 static/html/bower_components/ckeditor/plugins/templates/templates/images/template2.gif create mode 100644 static/html/bower_components/ckeditor/plugins/templates/templates/images/template3.gif create mode 100644 static/html/bower_components/ckeditor/plugins/textmatch/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/textwatcher/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/dialogs/uicolor.css create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/dialogs/uicolor.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/icons/hidpi/uicolor.png create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/icons/uicolor.png create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/_translationstatus.txt create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/af.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/ar.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/az.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/bg.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/cs.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/cy.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/da.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/de-ch.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/de.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/el.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/en-au.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/en-gb.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/en.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/eo.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/es-mx.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/es.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/et.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/eu.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/fa.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/fi.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/fr-ca.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/fr.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/gl.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/he.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/hr.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/hu.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/id.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/it.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/ja.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/km.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/ko.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/ku.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/lv.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/mk.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/nb.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/nl.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/no.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/oc.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/pl.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/pt-br.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/pt.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/ro.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/ru.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/si.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/sk.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/sl.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/sq.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/sr-latn.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/sr.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/sv.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/tr.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/tt.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/ug.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/uk.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/vi.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/zh-cn.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/lang/zh.js create mode 100644 static/html/bower_components/ckeditor/plugins/uicolor/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/uploadfile/plugin.js create mode 100644 static/html/bower_components/ckeditor/plugins/widget/images/handle.png create mode 100644 static/html/bower_components/ckeditor/samples/css/samples.css create mode 100644 static/html/bower_components/ckeditor/samples/img/github-top.png create mode 100644 static/html/bower_components/ckeditor/samples/img/header-bg.png create mode 100644 static/html/bower_components/ckeditor/samples/img/header-separator.png create mode 100644 static/html/bower_components/ckeditor/samples/img/logo.png create mode 100644 static/html/bower_components/ckeditor/samples/img/logo.svg create mode 100644 static/html/bower_components/ckeditor/samples/img/navigation-tip.png create mode 100644 static/html/bower_components/ckeditor/samples/index.html create mode 100644 static/html/bower_components/ckeditor/samples/js/sample.js create mode 100644 static/html/bower_components/ckeditor/samples/js/sf.js create mode 100644 static/html/bower_components/ckeditor/samples/old/ajax.html create mode 100644 static/html/bower_components/ckeditor/samples/old/api.html create mode 100644 static/html/bower_components/ckeditor/samples/old/appendto.html create mode 100644 static/html/bower_components/ckeditor/samples/old/assets/inlineall/logo.png create mode 100644 static/html/bower_components/ckeditor/samples/old/assets/outputxhtml/outputxhtml.css create mode 100644 static/html/bower_components/ckeditor/samples/old/assets/posteddata.php create mode 100644 static/html/bower_components/ckeditor/samples/old/assets/sample.jpg create mode 100644 static/html/bower_components/ckeditor/samples/old/assets/uilanguages/languages.js create mode 100644 static/html/bower_components/ckeditor/samples/old/autogrow/autogrow.html create mode 100644 static/html/bower_components/ckeditor/samples/old/bbcode/bbcode.html create mode 100644 static/html/bower_components/ckeditor/samples/old/codesnippet/codesnippet.html create mode 100644 static/html/bower_components/ckeditor/samples/old/datafiltering.html create mode 100644 static/html/bower_components/ckeditor/samples/old/devtools/devtools.html create mode 100644 static/html/bower_components/ckeditor/samples/old/dialog/assets/my_dialog.js create mode 100644 static/html/bower_components/ckeditor/samples/old/dialog/dialog.html create mode 100644 static/html/bower_components/ckeditor/samples/old/divarea/divarea.html create mode 100644 static/html/bower_components/ckeditor/samples/old/divreplace.html create mode 100644 static/html/bower_components/ckeditor/samples/old/docprops/docprops.html create mode 100644 static/html/bower_components/ckeditor/samples/old/easyimage/easyimage.html create mode 100644 static/html/bower_components/ckeditor/samples/old/emoji/emoji.html create mode 100644 static/html/bower_components/ckeditor/samples/old/enterkey/enterkey.html create mode 100644 static/html/bower_components/ckeditor/samples/old/htmlwriter/outputhtml.html create mode 100644 static/html/bower_components/ckeditor/samples/old/image2/assets/image1.jpg create mode 100644 static/html/bower_components/ckeditor/samples/old/image2/assets/image2.jpg create mode 100644 static/html/bower_components/ckeditor/samples/old/image2/image2.html create mode 100644 static/html/bower_components/ckeditor/samples/old/index.html create mode 100644 static/html/bower_components/ckeditor/samples/old/inlineall.html create mode 100644 static/html/bower_components/ckeditor/samples/old/inlinebycode.html create mode 100644 static/html/bower_components/ckeditor/samples/old/inlinetextarea.html create mode 100644 static/html/bower_components/ckeditor/samples/old/jquery.html create mode 100644 static/html/bower_components/ckeditor/samples/old/magicline/magicline.html create mode 100644 static/html/bower_components/ckeditor/samples/old/mathjax/mathjax.html create mode 100644 static/html/bower_components/ckeditor/samples/old/mentions/mentions.html create mode 100644 static/html/bower_components/ckeditor/samples/old/placeholder/placeholder.html create mode 100644 static/html/bower_components/ckeditor/samples/old/readonly.html create mode 100644 static/html/bower_components/ckeditor/samples/old/replacebyclass.html create mode 100644 static/html/bower_components/ckeditor/samples/old/replacebycode.html create mode 100644 static/html/bower_components/ckeditor/samples/old/sample.css create mode 100644 static/html/bower_components/ckeditor/samples/old/sample.js create mode 100644 static/html/bower_components/ckeditor/samples/old/sample_posteddata.php create mode 100644 static/html/bower_components/ckeditor/samples/old/sharedspace/sharedspace.html create mode 100644 static/html/bower_components/ckeditor/samples/old/sourcedialog/sourcedialog.html create mode 100644 static/html/bower_components/ckeditor/samples/old/stylesheetparser/assets/sample.css create mode 100644 static/html/bower_components/ckeditor/samples/old/stylesheetparser/stylesheetparser.html create mode 100644 static/html/bower_components/ckeditor/samples/old/tabindex.html create mode 100644 static/html/bower_components/ckeditor/samples/old/tableresize/tableresize.html create mode 100644 static/html/bower_components/ckeditor/samples/old/toolbar/toolbar.html create mode 100644 static/html/bower_components/ckeditor/samples/old/uicolor.html create mode 100644 static/html/bower_components/ckeditor/samples/old/uicolor/uicolor.html create mode 100644 static/html/bower_components/ckeditor/samples/old/uilanguages.html create mode 100644 static/html/bower_components/ckeditor/samples/old/wysiwygarea/fullpage.html create mode 100644 static/html/bower_components/ckeditor/samples/old/xhtmlstyle.html create mode 100644 static/html/bower_components/ckeditor/samples/toolbarconfigurator/css/fontello.css create mode 100644 static/html/bower_components/ckeditor/samples/toolbarconfigurator/font/LICENSE.txt create mode 100644 static/html/bower_components/ckeditor/samples/toolbarconfigurator/font/config.json create mode 100644 static/html/bower_components/ckeditor/samples/toolbarconfigurator/font/fontello.eot create mode 100644 static/html/bower_components/ckeditor/samples/toolbarconfigurator/font/fontello.svg create mode 100644 static/html/bower_components/ckeditor/samples/toolbarconfigurator/font/fontello.ttf create mode 100644 static/html/bower_components/ckeditor/samples/toolbarconfigurator/font/fontello.woff create mode 100644 static/html/bower_components/ckeditor/samples/toolbarconfigurator/index.html create mode 100644 static/html/bower_components/ckeditor/samples/toolbarconfigurator/js/abstracttoolbarmodifier.js create mode 100644 static/html/bower_components/ckeditor/samples/toolbarconfigurator/js/fulltoolbareditor.js create mode 100644 static/html/bower_components/ckeditor/samples/toolbarconfigurator/js/toolbarmodifier.js create mode 100644 static/html/bower_components/ckeditor/samples/toolbarconfigurator/js/toolbartextmodifier.js create mode 100644 static/html/bower_components/ckeditor/skins/kama/dialog.css create mode 100644 static/html/bower_components/ckeditor/skins/kama/dialog_ie.css create mode 100644 static/html/bower_components/ckeditor/skins/kama/dialog_ie7.css create mode 100644 static/html/bower_components/ckeditor/skins/kama/dialog_ie8.css create mode 100644 static/html/bower_components/ckeditor/skins/kama/dialog_iequirks.css create mode 100644 static/html/bower_components/ckeditor/skins/kama/editor.css create mode 100644 static/html/bower_components/ckeditor/skins/kama/editor_ie.css create mode 100644 static/html/bower_components/ckeditor/skins/kama/editor_ie7.css create mode 100644 static/html/bower_components/ckeditor/skins/kama/editor_ie8.css create mode 100644 static/html/bower_components/ckeditor/skins/kama/editor_iequirks.css create mode 100644 static/html/bower_components/ckeditor/skins/kama/icons.png create mode 100644 static/html/bower_components/ckeditor/skins/kama/icons_hidpi.png create mode 100644 static/html/bower_components/ckeditor/skins/kama/images/dialog_sides.gif create mode 100644 static/html/bower_components/ckeditor/skins/kama/images/dialog_sides.png create mode 100644 static/html/bower_components/ckeditor/skins/kama/images/dialog_sides_rtl.png create mode 100644 static/html/bower_components/ckeditor/skins/kama/images/mini.gif create mode 100644 static/html/bower_components/ckeditor/skins/kama/images/spinner.gif create mode 100644 static/html/bower_components/ckeditor/skins/kama/images/sprites.png create mode 100644 static/html/bower_components/ckeditor/skins/kama/images/sprites_ie6.png create mode 100644 static/html/bower_components/ckeditor/skins/kama/images/toolbar_start.gif create mode 100644 static/html/bower_components/ckeditor/skins/kama/readme.md create mode 100644 static/html/bower_components/ckeditor/skins/kama/skin.js create mode 100644 static/html/bower_components/ckeditor/skins/moono-lisa/dialog.css create mode 100644 static/html/bower_components/ckeditor/skins/moono-lisa/dialog_ie.css create mode 100644 static/html/bower_components/ckeditor/skins/moono-lisa/dialog_ie8.css create mode 100644 static/html/bower_components/ckeditor/skins/moono-lisa/dialog_iequirks.css create mode 100644 static/html/bower_components/ckeditor/skins/moono-lisa/editor.css create mode 100644 static/html/bower_components/ckeditor/skins/moono-lisa/editor_gecko.css create mode 100644 static/html/bower_components/ckeditor/skins/moono-lisa/editor_ie.css create mode 100644 static/html/bower_components/ckeditor/skins/moono-lisa/editor_ie8.css create mode 100644 static/html/bower_components/ckeditor/skins/moono-lisa/editor_iequirks.css create mode 100644 static/html/bower_components/ckeditor/skins/moono-lisa/icons.png create mode 100644 static/html/bower_components/ckeditor/skins/moono-lisa/icons_hidpi.png create mode 100644 static/html/bower_components/ckeditor/skins/moono-lisa/images/arrow.png create mode 100644 static/html/bower_components/ckeditor/skins/moono-lisa/images/close.png create mode 100644 static/html/bower_components/ckeditor/skins/moono-lisa/images/hidpi/close.png create mode 100644 static/html/bower_components/ckeditor/skins/moono-lisa/images/hidpi/lock-open.png create mode 100644 static/html/bower_components/ckeditor/skins/moono-lisa/images/hidpi/lock.png create mode 100644 static/html/bower_components/ckeditor/skins/moono-lisa/images/hidpi/refresh.png create mode 100644 static/html/bower_components/ckeditor/skins/moono-lisa/images/lock-open.png create mode 100644 static/html/bower_components/ckeditor/skins/moono-lisa/images/lock.png create mode 100644 static/html/bower_components/ckeditor/skins/moono-lisa/images/refresh.png create mode 100644 static/html/bower_components/ckeditor/skins/moono-lisa/images/spinner.gif create mode 100644 static/html/bower_components/ckeditor/skins/moono-lisa/readme.md create mode 100644 static/html/bower_components/ckeditor/skins/moono/dialog.css create mode 100644 static/html/bower_components/ckeditor/skins/moono/dialog_ie.css create mode 100644 static/html/bower_components/ckeditor/skins/moono/dialog_ie7.css create mode 100644 static/html/bower_components/ckeditor/skins/moono/dialog_ie8.css create mode 100644 static/html/bower_components/ckeditor/skins/moono/dialog_iequirks.css create mode 100644 static/html/bower_components/ckeditor/skins/moono/editor.css create mode 100644 static/html/bower_components/ckeditor/skins/moono/editor_gecko.css create mode 100644 static/html/bower_components/ckeditor/skins/moono/editor_ie.css create mode 100644 static/html/bower_components/ckeditor/skins/moono/editor_ie7.css create mode 100644 static/html/bower_components/ckeditor/skins/moono/editor_ie8.css create mode 100644 static/html/bower_components/ckeditor/skins/moono/editor_iequirks.css create mode 100644 static/html/bower_components/ckeditor/skins/moono/icons.png create mode 100644 static/html/bower_components/ckeditor/skins/moono/icons_hidpi.png create mode 100644 static/html/bower_components/ckeditor/skins/moono/images/anchor.png create mode 100644 static/html/bower_components/ckeditor/skins/moono/images/arrow.png create mode 100644 static/html/bower_components/ckeditor/skins/moono/images/close.png create mode 100644 static/html/bower_components/ckeditor/skins/moono/images/hidpi/anchor.png create mode 100644 static/html/bower_components/ckeditor/skins/moono/images/hidpi/close.png create mode 100644 static/html/bower_components/ckeditor/skins/moono/images/hidpi/lock-open.png create mode 100644 static/html/bower_components/ckeditor/skins/moono/images/hidpi/lock.png create mode 100644 static/html/bower_components/ckeditor/skins/moono/images/hidpi/refresh.png create mode 100644 static/html/bower_components/ckeditor/skins/moono/images/lock-open.png create mode 100644 static/html/bower_components/ckeditor/skins/moono/images/lock.png create mode 100644 static/html/bower_components/ckeditor/skins/moono/images/refresh.png create mode 100644 static/html/bower_components/ckeditor/skins/moono/images/spinner.gif create mode 100644 static/html/bower_components/ckeditor/skins/moono/readme.md create mode 100644 static/html/bower_components/ckeditor/skins/moono/skin.js create mode 100644 static/html/bower_components/ckeditor/styles.js create mode 100644 static/html/bower_components/ckeditor/vendor/promise.js create mode 100644 static/html/bower_components/d3/d3.min.js create mode 100644 static/html/bower_components/ng-idle/angular-idle.min.js create mode 100644 static/html/bower_components/nvd3/nv.d3.min.js create mode 100644 static/html/bower_components/q/q.min.js create mode 100644 static/html/bower_components/require-css/css-builder.js create mode 100644 static/html/bower_components/require-css/css.js create mode 100644 static/html/bower_components/require-css/css.min.js create mode 100644 static/html/bower_components/require-css/normalize.js create mode 100644 static/html/bower_components/requirejs/require.js create mode 100644 static/html/bower_components/underscore/underscore.min.js create mode 100644 static/html/fonts/FontAwesome.otf create mode 100644 static/html/fonts/fontawesome-webfont.eot create mode 100644 static/html/fonts/fontawesome-webfont.svg create mode 100644 static/html/fonts/fontawesome-webfont.ttf create mode 100644 static/html/fonts/fontawesome-webfont.woff create mode 100644 static/html/functional/demoTest.js create mode 100644 static/html/functional/scenarioTest.js create mode 100644 static/html/functional/scenarios/role_management_scenario.js create mode 100644 static/html/functional/scenarios/user_authentication_scenario.js create mode 100644 static/html/functional/scenarios/user_management_scenario.js create mode 100644 static/html/functional/testHelper.js create mode 100644 static/html/functional/testInitializer.js create mode 100644 static/html/global-translations/locale-br.json create mode 100644 static/html/global-translations/locale-cs.json create mode 100644 static/html/global-translations/locale-de.json create mode 100644 static/html/global-translations/locale-en.json create mode 100644 static/html/global-translations/locale-es.json create mode 100644 static/html/global-translations/locale-fr.json create mode 100644 static/html/global-translations/locale-hi.json create mode 100644 static/html/global-translations/locale-id.json create mode 100644 static/html/global-translations/locale-ka.json create mode 100644 static/html/global-translations/locale-km.json create mode 100644 static/html/global-translations/locale-ko.json create mode 100644 static/html/global-translations/locale-lo.json create mode 100644 static/html/global-translations/locale-lt.json create mode 100644 static/html/global-translations/locale-my.json create mode 100644 static/html/global-translations/locale-my_MM.json create mode 100644 static/html/global-translations/locale-ne.json create mode 100644 static/html/global-translations/locale-oc.json create mode 100644 static/html/global-translations/locale-pl.json create mode 100644 static/html/global-translations/locale-pt.json create mode 100644 static/html/global-translations/locale-pt_BR.json create mode 100644 static/html/global-translations/locale-qqq.json create mode 100644 static/html/global-translations/locale-sv.json create mode 100644 static/html/global-translations/locale-uk.json create mode 100644 static/html/global-translations/locale-vi.json create mode 100644 static/html/global-translations/locale-zh_CN.json create mode 100644 static/html/global-translations/locale-zh_TW.json create mode 100644 static/html/images/833.svg create mode 100644 static/html/images/MifosX_logo.png create mode 100644 static/html/images/MifosX_logoSmall.png create mode 100644 static/html/images/chosen-sprite.png create mode 100644 static/html/images/client-image-placeholder.png create mode 100644 static/html/images/cubic_loader.gif create mode 100644 static/html/images/favicon.ico create mode 100644 static/html/images/loader.gif create mode 100644 static/html/images/logo.jpg create mode 100644 static/html/images/mifos-logo-flat.png create mode 100644 static/html/images/mifos_lg-logo.jpg create mode 100644 static/html/images/ring.svg create mode 100644 static/html/images/small-loader.gif create mode 100644 static/html/images/user_new.png create mode 100644 static/html/index.html create mode 100644 static/html/release.json create mode 100644 static/html/scripts/config/LogoConfig.json create mode 100644 static/html/scripts/config/UIconfig.json create mode 100644 static/html/scripts/controllers/controllers.7cc3357b.js create mode 100644 static/html/scripts/directives/directives.9ddc8aa2.js create mode 100644 static/html/scripts/filters/filters.61c17440.js create mode 100644 static/html/scripts/loader.750c7dca.js create mode 100644 static/html/scripts/mifosX.js create mode 100644 static/html/scripts/mifosXComponents.b86779ac.js create mode 100644 static/html/scripts/mifosXStyles.055a5c0c.js create mode 100644 static/html/scripts/models/models.00796d51.js create mode 100644 static/html/scripts/modules/KeyboardManager.js create mode 100644 static/html/scripts/modules/angular-wizard.js create mode 100644 static/html/scripts/modules/angularjs-nvd3-directives.js create mode 100644 static/html/scripts/modules/chosen.jquery.min.js create mode 100644 static/html/scripts/modules/configurations.js create mode 100644 static/html/scripts/modules/csv.js create mode 100644 static/html/scripts/modules/datepicker.js create mode 100644 static/html/scripts/modules/localstorage.js create mode 100644 static/html/scripts/modules/notificationWidget.js create mode 100644 static/html/scripts/routes-initialTasks-webstorage-configuration.f36d04c5.js create mode 100644 static/html/scripts/services/AuthenticationService.js create mode 100644 static/html/scripts/services/HttpServiceProvider.js create mode 100644 static/html/scripts/services/NotificationResponseHeaderProvider.js create mode 100644 static/html/scripts/services/Paginator.js create mode 100644 static/html/scripts/services/ResourceFactoryProvider.js create mode 100644 static/html/scripts/services/SessionManager.js create mode 100644 static/html/scripts/services/UIConfigService.js create mode 100644 static/html/spec/controllers/LoginFormControllerSpec.js create mode 100644 static/html/spec/controllers/MainControllerSpec.js create mode 100644 static/html/spec/controllers/RoleControllerSpec.js create mode 100644 static/html/spec/controllers/SearchControllerSpec.js create mode 100644 static/html/spec/controllers/client/ClientControllerSpec.js create mode 100644 static/html/spec/controllers/client/UploadClientIdentifierDocumentController_spec.js create mode 100644 static/html/spec/controllers/client/ViewClientControllerSpec.js create mode 100644 static/html/spec/controllers/user/UserControllerSpec.js create mode 100644 static/html/spec/controllers/user/UserFormControllerSpec.js create mode 100644 static/html/spec/controllers/user/UserListControllerSpec.js create mode 100644 static/html/spec/controllers/user/UserSettingControllerSpec.js create mode 100644 static/html/spec/controllers/user/ViewUserController_spec.js create mode 100644 static/html/spec/directives/DialogDirectiveSpec.js create mode 100644 static/html/spec/directives/OverlayDirectiveSpec.js create mode 100644 static/html/spec/models/ClientStatusSpec.js create mode 100644 static/html/spec/models/LoggedInUserSpec.js create mode 100644 static/html/spec/models/RoleSpec.js create mode 100644 static/html/spec/services/AuthenticationServiceSpec.js create mode 100644 static/html/spec/services/HttpServiceProviderSpec.js create mode 100644 static/html/spec/services/ResourceFactoryProviderSpec.js create mode 100644 static/html/spec/services/SessionManagerSpec.js create mode 100644 static/html/spec/specHelper.js create mode 100644 static/html/styles/fontawesome.8f41798f.css create mode 100644 static/html/styles/fontawesome.css create mode 100644 static/html/styles/styles.a1f5e61f.css create mode 100644 static/html/styles/styles.css create mode 100644 static/html/test/SpecRunner.html create mode 100644 static/html/test/functional/demoTest.js create mode 100644 static/html/test/functional/scenarioTest.js create mode 100644 static/html/test/functional/scenarios/role_management_scenario.js create mode 100644 static/html/test/functional/scenarios/user_authentication_scenario.js create mode 100644 static/html/test/functional/scenarios/user_management_scenario.js create mode 100644 static/html/test/functional/testHelper.js create mode 100644 static/html/test/functional/testInitializer.js create mode 100644 static/html/test/spec/controllers/LoginFormControllerSpec.js create mode 100644 static/html/test/spec/controllers/MainControllerSpec.js create mode 100644 static/html/test/spec/controllers/RoleControllerSpec.js create mode 100644 static/html/test/spec/controllers/SearchControllerSpec.js create mode 100644 static/html/test/spec/controllers/client/ClientControllerSpec.js create mode 100644 static/html/test/spec/controllers/client/UploadClientIdentifierDocumentController_spec.js create mode 100644 static/html/test/spec/controllers/client/ViewClientControllerSpec.js create mode 100644 static/html/test/spec/controllers/user/UserControllerSpec.js create mode 100644 static/html/test/spec/controllers/user/UserFormControllerSpec.js create mode 100644 static/html/test/spec/controllers/user/UserListControllerSpec.js create mode 100644 static/html/test/spec/controllers/user/UserSettingControllerSpec.js create mode 100644 static/html/test/spec/controllers/user/ViewUserController_spec.js create mode 100644 static/html/test/spec/directives/DialogDirectiveSpec.js create mode 100644 static/html/test/spec/directives/OverlayDirectiveSpec.js create mode 100644 static/html/test/spec/models/ClientStatusSpec.js create mode 100644 static/html/test/spec/models/LoggedInUserSpec.js create mode 100644 static/html/test/spec/models/RoleSpec.js create mode 100644 static/html/test/spec/services/AuthenticationServiceSpec.js create mode 100644 static/html/test/spec/services/HttpServiceProviderSpec.js create mode 100644 static/html/test/spec/services/ResourceFactoryProviderSpec.js create mode 100644 static/html/test/spec/services/SessionManagerSpec.js create mode 100644 static/html/test/spec/specHelper.js create mode 100644 static/html/views/_leftnav.html create mode 100644 static/html/views/_topnavbar.html create mode 100644 static/html/views/accounting/accounting.html create mode 100644 static/html/views/accounting/accounting_coa.html create mode 100644 static/html/views/accounting/accounting_rules.html create mode 100644 static/html/views/accounting/accounts_closure.html create mode 100644 static/html/views/accounting/add_acc_rule.html create mode 100644 static/html/views/accounting/add_financial_accounting_mapping.html create mode 100644 static/html/views/accounting/createclosure.html create mode 100644 static/html/views/accounting/createglaccounting.html create mode 100644 static/html/views/accounting/edit_acc_rule.html create mode 100644 static/html/views/accounting/edit_financial_activity_mapping.html create mode 100644 static/html/views/accounting/editglaccounting.html create mode 100644 static/html/views/accounting/financial_accounting_mapping.html create mode 100644 static/html/views/accounting/freqposting.html create mode 100644 static/html/views/accounting/journalentry_posting.html create mode 100644 static/html/views/accounting/openingbalances.html create mode 100644 static/html/views/accounting/periodic_accrual_accounting.html create mode 100644 static/html/views/accounting/provisioning/CreateProvisioningEntries.html create mode 100644 static/html/views/accounting/provisioning/ProvisioningEntries.html create mode 100644 static/html/views/accounting/provisioning/ViewProvisioningEntry.html create mode 100644 static/html/views/accounting/provisioning/ViewProvisioningJournalEntries.html create mode 100644 static/html/views/accounting/search_transaction.html create mode 100644 static/html/views/accounting/view_acc_rule.html create mode 100644 static/html/views/accounting/view_close_accounting.html create mode 100644 static/html/views/accounting/view_financial_activity.html create mode 100644 static/html/views/accounting/view_transactions.html create mode 100644 static/html/views/accounting/viewglaccounting.html create mode 100644 static/html/views/accounttransfers/create_standinginstruction.html create mode 100644 static/html/views/accounttransfers/edit_standinginstruction.html create mode 100644 static/html/views/accounttransfers/list_standinginstruction.html create mode 100644 static/html/views/accounttransfers/list_transactions.html create mode 100644 static/html/views/accounttransfers/make_accounttransfer.html create mode 100644 static/html/views/accounttransfers/standinginstructions_history.html create mode 100644 static/html/views/accounttransfers/view_accounttransfer.html create mode 100644 static/html/views/accounttransfers/view_standinginstruction.html create mode 100644 static/html/views/adhocquery/adhocquerylists.html create mode 100644 static/html/views/adhocquery/createadhocquery.html create mode 100644 static/html/views/adhocquery/editadhocquery.html create mode 100644 static/html/views/adhocquery/viewadhocquery.html create mode 100644 static/html/views/administration/AddressForm.html create mode 100644 static/html/views/administration/EditAddress.html create mode 100644 static/html/views/administration/addrole.html create mode 100644 static/html/views/administration/createuser.html create mode 100644 static/html/views/administration/editExternalServicesConfiguration.html create mode 100644 static/html/views/administration/editGlobalConfiguration.html create mode 100644 static/html/views/administration/editTwoFactorConfig.html create mode 100644 static/html/views/administration/edituser.html create mode 100644 static/html/views/administration/externalServices.html create mode 100644 static/html/views/administration/global.html create mode 100644 static/html/views/administration/makerchecker.html create mode 100644 static/html/views/administration/organization.html create mode 100644 static/html/views/administration/roles.html create mode 100644 static/html/views/administration/system.html create mode 100644 static/html/views/administration/userFormDialog.html create mode 100644 static/html/views/administration/users.html create mode 100644 static/html/views/administration/usersettings.html create mode 100644 static/html/views/administration/userslist.html create mode 100644 static/html/views/administration/viewExternalServicesConfiguration.html create mode 100644 static/html/views/administration/viewTwoFactorConfig.html create mode 100644 static/html/views/administration/viewrole.html create mode 100644 static/html/views/administration/viewuser.html create mode 100644 static/html/views/centers/centerattendance.html create mode 100644 static/html/views/centers/centers.html create mode 100644 static/html/views/centers/closecenter.html create mode 100644 static/html/views/centers/createcenter.html create mode 100644 static/html/views/centers/editcenter.html create mode 100644 static/html/views/centers/managegroupmembers.html create mode 100644 static/html/views/centers/viewcenter.html create mode 100644 static/html/views/clients/addclientdocument.html create mode 100644 static/html/views/clients/addclientidentifier.html create mode 100644 static/html/views/clients/addclientidentifierdocument.html create mode 100644 static/html/views/clients/addfamilymembers.html create mode 100644 static/html/views/clients/addnewclientcharge.html create mode 100644 static/html/views/clients/clientactions.html create mode 100644 static/html/views/clients/clientchargeoverview.html create mode 100644 static/html/views/clients/clients.html create mode 100644 static/html/views/clients/clientscreenreport.html create mode 100644 static/html/views/clients/createclient.html create mode 100644 static/html/views/clients/createsubclient.html create mode 100644 static/html/views/clients/editclient.html create mode 100644 static/html/views/clients/editfamilymembers.html create mode 100644 static/html/views/clients/payclientcharge.html create mode 100644 static/html/views/clients/survey.html create mode 100644 static/html/views/clients/test.html create mode 100644 static/html/views/clients/transferclient.html create mode 100644 static/html/views/clients/viewclient.html create mode 100644 static/html/views/clients/viewclientcharge.html create mode 100644 static/html/views/collection/collectionsheet.html create mode 100644 static/html/views/collection/individualcollectionsheet.html create mode 100644 static/html/views/collection/productivecollectionsheet.html create mode 100644 static/html/views/deposits/fixed/add_new_fixed_deposit_charge.html create mode 100644 static/html/views/deposits/fixed/edit_account_application.html create mode 100644 static/html/views/deposits/fixed/fixed_deposit_account_actions.html create mode 100644 static/html/views/deposits/fixed/fixed_deposit_account_partial_liquidation.html create mode 100644 static/html/views/deposits/fixed/fixed_deposit_account_top_up.html create mode 100644 static/html/views/deposits/fixed/newapplication.html create mode 100644 static/html/views/deposits/fixed/view_fixed_deposit_transaction.html create mode 100644 static/html/views/deposits/fixed/viewaccountdetails.html create mode 100644 static/html/views/deposits/recurring/add_new_recurring_deposit_charge.html create mode 100644 static/html/views/deposits/recurring/edit_account_application.html create mode 100644 static/html/views/deposits/recurring/newapplication.html create mode 100644 static/html/views/deposits/recurring/recurring_deposit_account_actions.html create mode 100644 static/html/views/deposits/recurring/view_recurring_deposit_transaction.html create mode 100644 static/html/views/deposits/recurring/viewaccountdetails.html create mode 100644 static/html/views/errors/404.html create mode 100644 static/html/views/footer.html create mode 100644 static/html/views/groups/addrole.html create mode 100644 static/html/views/groups/assignstaff.html create mode 100644 static/html/views/groups/attachmeeting.html create mode 100644 static/html/views/groups/closegroup.html create mode 100644 static/html/views/groups/creategroup.html create mode 100644 static/html/views/groups/editgroup.html create mode 100644 static/html/views/groups/editmeeting.html create mode 100644 static/html/views/groups/editmeeting_based_on_meeting_date.html create mode 100644 static/html/views/groups/groupattendance.html create mode 100644 static/html/views/groups/groups.html create mode 100644 static/html/views/groups/membermanage.html create mode 100644 static/html/views/groups/transferclients.html create mode 100644 static/html/views/groups/viewgroup.html create mode 100644 static/html/views/header.html create mode 100644 static/html/views/help.html create mode 100644 static/html/views/home.html create mode 100644 static/html/views/loans/AdjustRepaymentSchdule.html create mode 100644 static/html/views/loans/addloancharge.html create mode 100644 static/html/views/loans/addloancollateral.html create mode 100644 static/html/views/loans/addloandocument.html create mode 100644 static/html/views/loans/approveloanreschedule.html create mode 100644 static/html/views/loans/assignloanofficer.html create mode 100644 static/html/views/loans/editguarantor.html create mode 100644 static/html/views/loans/editloanaccount.html create mode 100644 static/html/views/loans/editloancharge.html create mode 100644 static/html/views/loans/editloancollateral.html create mode 100644 static/html/views/loans/guarantor.html create mode 100644 static/html/views/loans/list_guarantor.html create mode 100644 static/html/views/loans/loanaccountactions.html create mode 100644 static/html/views/loans/loanforeclosure.html create mode 100644 static/html/views/loans/loanscreenreport.html create mode 100644 static/html/views/loans/newjlgloanaccount.html create mode 100644 static/html/views/loans/newloanaccount.html create mode 100644 static/html/views/loans/previewloanrepaymentschedule.html create mode 100644 static/html/views/loans/rejectloanreschedule.html create mode 100644 static/html/views/loans/rescheduleloans.html create mode 100644 static/html/views/loans/view_loan_transaction.html create mode 100644 static/html/views/loans/viewloanaccountdetails.html create mode 100644 static/html/views/loans/viewloancharge.html create mode 100644 static/html/views/loans/viewloancollateral.html create mode 100644 static/html/views/loans/viewreschedulerequest.html create mode 100644 static/html/views/login.html create mode 100644 static/html/views/navigation/offices.html create mode 100644 static/html/views/notification/notifications.html create mode 100644 static/html/views/organization/bulkimport/bulkimport.html create mode 100644 static/html/views/organization/bulkimport/bulkimportcenters.html create mode 100644 static/html/views/organization/bulkimport/bulkimportclients.html create mode 100644 static/html/views/organization/bulkimport/bulkimportcoa.html create mode 100644 static/html/views/organization/bulkimport/bulkimportemployees.html create mode 100644 static/html/views/organization/bulkimport/bulkimportfixeddepositaccounts.html create mode 100644 static/html/views/organization/bulkimport/bulkimportfixeddeposittransactions.html create mode 100644 static/html/views/organization/bulkimport/bulkimportgroup.html create mode 100644 static/html/views/organization/bulkimport/bulkimportguarantor.html create mode 100644 static/html/views/organization/bulkimport/bulkimportjournalentries.html create mode 100644 static/html/views/organization/bulkimport/bulkimportloanaccounts.html create mode 100644 static/html/views/organization/bulkimport/bulkimportloanrepayments.html create mode 100644 static/html/views/organization/bulkimport/bulkimportoffices.html create mode 100644 static/html/views/organization/bulkimport/bulkimportrecurringdeposits.html create mode 100644 static/html/views/organization/bulkimport/bulkimportrecurringdepositstransactions.html create mode 100644 static/html/views/organization/bulkimport/bulkimportsavingsaccounts.html create mode 100644 static/html/views/organization/bulkimport/bulkimportsavingsaccountstransactions.html create mode 100644 static/html/views/organization/bulkimport/bulkimportshareaccounts.html create mode 100644 static/html/views/organization/bulkimport/bulkimportusers.html create mode 100644 static/html/views/organization/bulkloan.html create mode 100644 static/html/views/organization/cashmgmt/cashierFundsAllocationSettlement.html create mode 100644 static/html/views/organization/cashmgmt/cashierTransactions.html create mode 100644 static/html/views/organization/cashmgmt/cashiersForTeller.html create mode 100644 static/html/views/organization/cashmgmt/createCashier.html create mode 100644 static/html/views/organization/cashmgmt/createTeller.html create mode 100644 static/html/views/organization/cashmgmt/editTeller.html create mode 100644 static/html/views/organization/cashmgmt/editcashier.html create mode 100644 static/html/views/organization/cashmgmt/tellers.html create mode 100644 static/html/views/organization/cashmgmt/viewCashiersForTeller.html create mode 100644 static/html/views/organization/cashmgmt/viewTeller.html create mode 100644 static/html/views/organization/createemployee.html create mode 100644 static/html/views/organization/createholiday.html create mode 100644 static/html/views/organization/createoffice.html create mode 100644 static/html/views/organization/createpaymenttype.html create mode 100644 static/html/views/organization/currencyconfig.html create mode 100644 static/html/views/organization/editemployee.html create mode 100644 static/html/views/organization/editholiday.html create mode 100644 static/html/views/organization/editoffice.html create mode 100644 static/html/views/organization/editpaymenttype.html create mode 100644 static/html/views/organization/employees.html create mode 100644 static/html/views/organization/entitydatatablechecks/entitydatatablechecks.html create mode 100644 static/html/views/organization/holidays.html create mode 100644 static/html/views/organization/managefunds.html create mode 100644 static/html/views/organization/offices.html create mode 100644 static/html/views/organization/passwordpreferences.html create mode 100644 static/html/views/organization/provisioning/CreateProvisioningCriteria.html create mode 100644 static/html/views/organization/provisioning/EditProvisioningCriteria.html create mode 100644 static/html/views/organization/provisioning/ViewAllProvisioningCriteria.html create mode 100644 static/html/views/organization/provisioning/ViewProvisioningCriteria.html create mode 100644 static/html/views/organization/smscampaigns/createsmscampaign.html create mode 100644 static/html/views/organization/smscampaigns/editsmscampaign.html create mode 100644 static/html/views/organization/smscampaigns/smscampaigns.html create mode 100644 static/html/views/organization/smscampaigns/viewsmscampaign.html create mode 100644 static/html/views/organization/viewemployee.html create mode 100644 static/html/views/organization/viewholiday.html create mode 100644 static/html/views/organization/viewoffice.html create mode 100644 static/html/views/organization/viewpaymenttype.html create mode 100644 static/html/views/organization/workingdays.html create mode 100644 static/html/views/private/home_branchmanager.html create mode 100644 static/html/views/private/home_default.html create mode 100644 static/html/views/private/home_funder.html create mode 100644 static/html/views/private/home_superuser.html create mode 100644 static/html/views/private/rich_dashboard.html create mode 100644 static/html/views/products/charges.html create mode 100644 static/html/views/products/createcharge.html create mode 100644 static/html/views/products/createfixeddepositproduct.html create mode 100644 static/html/views/products/createinterestratechart.html create mode 100644 static/html/views/products/createloanproduct.html create mode 100644 static/html/views/products/createlockinperiod.html create mode 100644 static/html/views/products/createrecurringdepositproduct.html create mode 100644 static/html/views/products/createsavingproduct.html create mode 100644 static/html/views/products/createshareproduct.html create mode 100644 static/html/views/products/createvalidationlimit.html create mode 100644 static/html/views/products/dividendlisting.html create mode 100644 static/html/views/products/editcharge.html create mode 100644 static/html/views/products/editfixeddepositproduct.html create mode 100644 static/html/views/products/editinterestratechart.html create mode 100644 static/html/views/products/editloanproduct.html create mode 100644 static/html/views/products/editlockinperiod.html create mode 100644 static/html/views/products/editrecurringdepositproduct.html create mode 100644 static/html/views/products/editsavingproduct.html create mode 100644 static/html/views/products/editshareproduct.html create mode 100644 static/html/views/products/editvalidationlimit.html create mode 100644 static/html/views/products/fixeddepositproducts.html create mode 100644 static/html/views/products/floatingrates/CreateFloatingRate.html create mode 100644 static/html/views/products/floatingrates/EditFloatingRate.html create mode 100644 static/html/views/products/floatingrates/FloatingRates.html create mode 100644 static/html/views/products/floatingrates/ViewFloatingRate.html create mode 100644 static/html/views/products/interestratecharts.html create mode 100644 static/html/views/products/loanproducts.html create mode 100644 static/html/views/products/lockInPeriod.html create mode 100644 static/html/views/products/productmix/addproductmix.html create mode 100644 static/html/views/products/productmix/editproductmix.html create mode 100644 static/html/views/products/productmix/productmix.html create mode 100644 static/html/views/products/productmix/viewproductmix.html create mode 100644 static/html/views/products/products.html create mode 100644 static/html/views/products/recurringdepositproducts.html create mode 100644 static/html/views/products/savingproducts.html create mode 100644 static/html/views/products/shareproductactions.html create mode 100644 static/html/views/products/shareproducts.html create mode 100644 static/html/views/products/tax/CreateTaxComponent.html create mode 100644 static/html/views/products/tax/CreateTaxGroup.html create mode 100644 static/html/views/products/tax/EditTaxComponent.html create mode 100644 static/html/views/products/tax/EditTaxGroup.html create mode 100644 static/html/views/products/tax/TaxComponents.html create mode 100644 static/html/views/products/tax/TaxConfigurations.html create mode 100644 static/html/views/products/tax/TaxGroups.html create mode 100644 static/html/views/products/tax/ViewTaxComponent.html create mode 100644 static/html/views/products/tax/ViewTaxGroup.html create mode 100644 static/html/views/products/validationsLimit.html create mode 100644 static/html/views/products/viewcharge.html create mode 100644 static/html/views/products/viewdividends.html create mode 100644 static/html/views/products/viewfixeddepositproduct.html create mode 100644 static/html/views/products/viewloanproduct.html create mode 100644 static/html/views/products/viewlockinperiod.html create mode 100644 static/html/views/products/viewrecurringdepositproduct.html create mode 100644 static/html/views/products/viewsavingproduct.html create mode 100644 static/html/views/products/viewshareproduct.html create mode 100644 static/html/views/products/viewvalidationlimit.html create mode 100644 static/html/views/profile.html create mode 100644 static/html/views/reports/run_reports.html create mode 100644 static/html/views/reports/view_reports.html create mode 100644 static/html/views/reports/xbrl.html create mode 100644 static/html/views/reports/xbrlreport.html create mode 100644 static/html/views/savings/addnewsavingscharge.html create mode 100644 static/html/views/savings/assignsavingsofficer.html create mode 100644 static/html/views/savings/edit_saving_account_application.html create mode 100644 static/html/views/savings/list_onhold_transactions.html create mode 100644 static/html/views/savings/new_saving_account_application.html create mode 100644 static/html/views/savings/overdraft.html create mode 100644 static/html/views/savings/saving_account_actions.html create mode 100644 static/html/views/savings/search_savings_transaction.html create mode 100644 static/html/views/savings/unassignsavingsofficer.html create mode 100644 static/html/views/savings/view_saving_account_details.html create mode 100644 static/html/views/savings/view_saving_transaction.html create mode 100644 static/html/views/savings/view_savings_account_accruals.html create mode 100644 static/html/views/savings/viewsavingscharge.html create mode 100644 static/html/views/search/advsearch.html create mode 100644 static/html/views/search/glresults.html create mode 100644 static/html/views/shares/createshareaccount.html create mode 100644 static/html/views/shares/editshareaccount.html create mode 100644 static/html/views/shares/shareaccountactions.html create mode 100644 static/html/views/shares/viewshareaccount.html create mode 100644 static/html/views/start.html create mode 100644 static/html/views/surveys/createsurvey.html create mode 100644 static/html/views/surveys/editsurvey.html create mode 100644 static/html/views/surveys/surveys.html create mode 100644 static/html/views/surveys/viewclientsurvey.html create mode 100644 static/html/views/surveys/viewsurvey.html create mode 100644 static/html/views/system/accountnumberpreferences.html create mode 100644 static/html/views/system/addaccountnumberpreferences.html create mode 100644 static/html/views/system/addcode.html create mode 100644 static/html/views/system/addhook.html create mode 100644 static/html/views/system/audit.html create mode 100644 static/html/views/system/checkerActionPerformed.html create mode 100644 static/html/views/system/codes.html create mode 100644 static/html/views/system/createdatatable.html create mode 100644 static/html/views/system/createreport.html create mode 100644 static/html/views/system/datatables.html create mode 100644 static/html/views/system/editaccountnumberpreferences.html create mode 100644 static/html/views/system/editcode.html create mode 100644 static/html/views/system/editdatatable.html create mode 100644 static/html/views/system/edithook.html create mode 100644 static/html/views/system/editreport.html create mode 100644 static/html/views/system/editschedulerjob.html create mode 100644 static/html/views/system/entitytoentitymapping.html create mode 100644 static/html/views/system/hooks.html create mode 100644 static/html/views/system/makedatatableentry.html create mode 100644 static/html/views/system/reports.html create mode 100644 static/html/views/system/schedulerjobs.html create mode 100644 static/html/views/system/viewMakerCheckerTask.html create mode 100644 static/html/views/system/viewaccountnumberpreferences.html create mode 100644 static/html/views/system/viewaudit.html create mode 100644 static/html/views/system/viewcheckerinbox.html create mode 100644 static/html/views/system/viewcode.html create mode 100644 static/html/views/system/viewdatatable.html create mode 100644 static/html/views/system/viewdatatableentry.html create mode 100644 static/html/views/system/viewhook.html create mode 100644 static/html/views/system/viewreport.html create mode 100644 static/html/views/system/viewschedulerjob.html create mode 100644 static/html/views/system/viewschedulerjobhistory.html create mode 100644 static/html/views/tasks.html create mode 100644 static/html/views/templates/createtemplate.html create mode 100644 static/html/views/templates/edittemplate.html create mode 100644 static/html/views/templates/templates.html create mode 100644 static/html/views/templates/viewtemplate.html create mode 100644 static/html/views/transactionclassification/createtransactionclassification.html create mode 100644 static/html/views/transactionclassification/transactionclassification.html diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e31c11d5..8ce25cd4 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -16,6 +16,13 @@ jobs: - name: Checkout Repository uses: actions/checkout@v2 # Set Slug + + # Set Slug + - name: Get short SHA + id: slug + run: echo "::set-output name=sha8::$(echo ${GITHUB_SHA} | cut -c1-8)" + + - name: Inject slug/short variables uses: rlespinasse/github-slug-action@v2.x @@ -35,4 +42,4 @@ jobs: context: . push: true tags: | - "916148231619.dkr.ecr.us-east-2.amazonaws.com/fih-ui:latest" \ No newline at end of file + "916148231619.dkr.ecr.us-east-2.amazonaws.com/fih-ui:${{ steps.slug.outputs.sha8 }}" \ No newline at end of file diff --git a/charts/Chart.lock b/charts/Chart.lock new file mode 100644 index 00000000..61b48556 --- /dev/null +++ b/charts/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: fineract + repository: http://chartmuseum.fiter.io/ + version: 0.1.2 +digest: sha256:304d138a00855d850cf73aa0a1cd3b8d2215dc84e819b7af953e86c67aa70a8c +generated: "2022-05-27T12:05:57.2592057+02:00" diff --git a/charts/Chart.yaml b/charts/Chart.yaml new file mode 100644 index 00000000..30a429b1 --- /dev/null +++ b/charts/Chart.yaml @@ -0,0 +1,13 @@ +apiVersion: v2 +name: eden-ui +description: Fineract Backend Application + +type: application +version: 0.0.2 +appVersion: 1.0.1 + +dependencies: + - name: fineract + version: "0.1.2" + alias: edens-frontend + repository: "@fiter-apps" \ No newline at end of file diff --git a/charts/charts/fineract-0.1.2.tgz b/charts/charts/fineract-0.1.2.tgz new file mode 100644 index 0000000000000000000000000000000000000000..55e2bbf18da31532ccc8ab0def2fe3302e55f6c4 GIT binary patch literal 35931 zcmV)2K+L}%iwG0|00000|0w_~VMtOiV@ORlOnEsqVl!4SWK%V1T2nbTPgYhoO;>Dc zVQyr3R8em|NM&qo0POvDToX$dFph_g5tJqZqAsBb2uTRlD7`C9z`_-UC0R%$$;Rx4 zB2oneMNqJSD0aN|-W$cGO**-ZkWc=bNdeed&q-`|}-Alb~!Idf)C znKNh3#k0A!#PPZlUZ$;lv>L-@N3l}e>L*xBL#sZ?t3|5O`C8o|bnW@l?hbEMkZ z5~wybM+XN2K>gb>>8A)06ciAs|23@MgZsavfPD63NPw_m9vw)a5kWq`>#Gf!N~RH+ z5W*0!`6&L#9q@xVT!4YC6(ANC0272UkbnoF5JKdET!;=x*Ao#<=0kJ<0*kB9? zLI4y7VjzGIA_&9;*gO;ll3}3$Kp`%l1ELT@CK3e@4#X1{@=!WpLo@~$FfW!J=fmbe z2%QK3#(*`z#eNL|Q5GE_Q9wSQf`d%ra!7auKwJT95`>E%Qt#hmyM7Y)-qiuo7!W{w z7-6HZAejz~v2n1mbE4VWIM|FKGvfthh#?>g5o-uUP-_|)HE178vvG8aB@vAQh?hVoVweFy zn0sJIfOnL4(Bvo^IzX}^^?gpG10-5M&u!@d$(BSUf{92N#1KFzLI+Y(i9|LRjDtdi z98TBMY147Z9Gn0N1Z*ZoA`&rH$l>&PNJJn(0-FK3GZ^@k-~HMKt345=CDz=bnycKQvma&pRED+fB^in00No8JWg^b4C4zQNk&kJ zOUK71t{~*OBSA0^tI+%LBm@%B0UI0@V<`>A>rt$*Jvl-Ig#`W~_%lg`5LkdB(p75> z@L>T;2b`#q2LOPAf;b2b!5`aWeM^7f3t$vxz#KXd?itecR7^`2it@XA=m)qgC~E(} zoPHHpoPf{xAutBaLqUwCrJXuaiELh+07CGofOwcpV|FiQ1_wkCiM-*(v3W_Pe%CBU z^!P6Oh|Gp5l1|BZ2Xp{$+iyjbgII$M8~`?dSpO^-L2+~>gaJ`j*H`HSIzZ`q0^m== z@uB*2`5cG~@x=H^c$z^30F)z^5cnFi1`u3mNW>*(<5@#VAlB9z6m*ZO zWDd*#Ihc4yV4;8^UCmPnxCizyO0U-z|NVdYqFMzl(K6(gX z2nC#EAVvVpM zT=p+jC4xc}Mi?N6&5P@oC5!8()zj zkbr@$&Nzq;ILKBD#L@UcO(!am$b*?s7{q}XC@c_*Vie|JB3;af)20)NU~DX#$3~O! zpa0k9*8k^9m;K*mno)v+!@a}EXcGE&!T5>&Z)1icS0!vk+2JFhC}~+oBw-4w8}rV0t7ql}@3gq=-S`{Q{|} zDJkO4x*>?G5_^B-AP@#aVg(=oDF|lbCJ(6#Wr-a`#w-VMe^3%;ngBt;Ufxk5!J*;K zCgzw@V4xfz4nhHIYs~II_#guUFhoKj4yJ?1L0wN%Qvqujn2EqV3`u8F3K>%#WUNhg*f`8`!wX<>PW&hdR{(JuO&y=7tGlW7$an z$(q#5L?hxDdWv0mU>5{TenTJ5EDZP z%!Opmt;8daWkVb$0)PTYyeWnx-bpqBn8zgJ)bI)l!|GxN045V=;!e8M zmH2#2>|{iNL^g+m*&IRy!xO>m6d{Kr!S+vy+pVOf1eP(ndpmKZbo=4&ze00N@k&0M z;P}&>e|=KBaqOamxRc&WPmE`ehkp?{zJSd`V*!#WVr`0$di5m+`s+)q|BpQup3ID5 zoFX~O#AXwpRml<&*W!RN5a%Z|i`VR)*51RBrL_37NzN8z+FN(gPwH;^B?|T) zs&&73h<(&Qw=Mf=Dzz=?eat3F{it8=yqA0t4^J|WC>#NDIsN|Dhj*-dGf!{5(*M!T z&j=}dI2H6Gq1dw;S#t8zOFNnWY)54AqyBg@@=I16NqZ(qKJ?k8^xMG?M2@fIPzqpy z2+KMK!~_f?=4otGD|XT&0ABznu$hoRd>ldakf=AT3X}i|k{K*~2gl}#MH9?JAs%Yg zJsC2`c6d$Z&n5r|8zO=F!x`v4k(B)UEBjAtnGK;#2Xg=v4nqZ)%AEs%Ob#Tlr6EFY zm&miB_Lz)chu34R%6$G`TVwxx>Bs&TACy}|yoA3g8sum3Uv>`mz3qQThkyOQ|48Y@ zy$~-!qN8NO!fc4~Y#x⁣X8q5abi3z6m-}dcgXNd?!6h$M^JNoh4&Qig)^R`Vpsi zQ`sX{+-*ma8YL_kj<-&P*l{eBLPU)e&-lWw^Ul83 zkF>RPZ!QDbsk>Q^abktjV_^T`(7FIfXQVGq$zP^DUFVOz{2xQr= zdWL8Ai&pnU^$PmzAKwI+BjiFog7w5qgmU>Zr_U@H5l1@9o=8i>`cN*Pg2G$|i2jJy zGTY`Z$lahMyLW2@g$0l`o5x}EAQ?CegxwP?Q@~Du1ijjk83>yk?}U)qaF5E;h}5oN z)9xZ3yE}>s*fBy>mIz(+7C@-fso*J&i~RB2_2Yst`ICk5C&o=bG!p+TOBJb|(-Z6e z$k37Pz!-4n0iZwtCIfIR5Dz6IK&$}f;;xx4+X_HoY2Y%5;9=}Yk52G&;+}~8f~nM9 ztTDj!er=~-b0l7ZKdsm=^~Ddw--%sRm7Fa1<%n)?ZeIvLWKE!d_C$Wjn>MtbJ>$Yi zJfkxDLUJ_#vn6GIK*2bf4QhYhYEti>Lu9T8$n?~GYoI4KVwMTSNZn(8`=g+L zrdWE)37{_<^e-uZp0_P1Tpmj4!TtU4z)z&gpGby2iv{>=>-UE|+k+lmYc`}S4oqe} z31dQjZDs%UQS|bt^!Od(CHM$nZqKRh5;dVvY;PI)7cH({$n|;l3t9sZ-%{ysW@Owb zeI-g4rY7;SPL!U*!S5OMrhsHha8xEh$^B3PD^iK|XWauom(V}dBcxxMTUn6?bc;2t z@WuBe`XdT{+o30xy{;X|h=v}&^dpdaTy*Gu-Xr9`C(^xSV|Rr8kELSYwIYZ^WY2oL zt75; z!%Ng%g_1yvflyHDG4g{2?Ae&=;)K9VcS$u!@V|E-;dq4OH;TF}i~by6*z-QlFW|46 zU_I_a$sTRXP*=1xsUJ1!t|Ms#p#nBTmO%Z_<)7cWlFE2%$<@eEiFrWmX;*YB z3yJZ~7j``n18`4(1YjH_1LTK8`8AAsX}F(`@J}v`{fC1T--P>b$N39*^&b-Qf13aM zk^j;=Hh-HA_}Tq0N4q}pzjjo|f93x_QGRlhOBx?zg2}ibNkHgN-CkX-q>)~9=dPP1 zy>4&F-Y^HK7BWo}82Ijo?%dUl_>PE7%n`_A_QAaCayDSjgHga7fw&2fz!T>3K>-Ai zT%2vlHcr-55U1B@0YrFLLA`o(*{%tndyRkh-&@UPBYJIT9Z((&|-YZi? zcdm$j`s4TGC+$unk&@CKnH3^{V%bT3#gDXh?_Od+Mm)r0_V()iOcI&=l5FVXA?r$P z0`w|BV&$F%&pOhdUs1@7fdu0AQvKAYxom83zgPwR0uC~2@mIk0w2=Rb71@vdCtk_c z()i;4-VprR{@;$)JO0a&Mzi_X{`)7&pGR-YYR|q$!AaI#niu5oSzUgBu)c@7f58XP zuXmpO_h{U|6hSIgoqSLLav`+qz!Hv`2{BNF4$P5pjQ%Ldw7&xuYe^UG9JXYy-~WMz zxRzMpmf-TRl95zv(cDwq$>5<>rv#`gY7=~w=XcU%9|{@;e$-~Hcz<^MlY`oBN* zjMB%N)}7-9Yr~mgus>`CSLK{2sQLY)U%p z*Y5A#b-E92@%EB$vWSLzN>K!4E!D0&V|_$n-!D2~tW|1X1{|1DkR$MRotJM(W) z13$a}VQ{LjJB_TTfrf291<{n?*s14;G2WaR%a4EJyMs`VPv-{@TX2hVB#Pn9nI zCu2Jyb{r2DKz}!kpYp$L@B1INHje-1fB8p>F%SZxC?pVPWfsprkjR2~K#Y*hVX}E~ z03T$;gK-ejl?ogY@^K>yKv)om1H^IQ81bD6HZRT!5I`IdWhX$m<51=~$YT-NcIYg3d5sNjR8pli^-m00Fy01 zh~zjnO2Pk%(I=8)W(z3zU+Du@90mI${fZ>;DBT^!fQ)z{UlL+%Nk$U+L`!lE7*Dh$ zqg?DWEMUhGEz^j`z+_OshJ^^=@8yjUF(VG!y%Nc6CInK%)dlcOA~^wJz)Xnpe}hoy z;{Q+xWO5-gm-+X@_}TfdU7z?Ln*G1~zkj9}1O7Y&6$lw(g(yxifub1S3;Fns1W25N z8T;qYixq(4+Cl+DCgRe72{VLve&epBKUgc7*M%ylDPdiyNEiYL)AekSgAi@W0Hza(c4TRqI-)%pPXh%q7!ZOBOd+2s z&2S=s7_fke5V7HeL8y?AR}iCv!Sv}%+Fk>~L?4bVhAQ5eEkIB}d>>P`flwfB(4Dj% zl@16HlN|sN0Gkvx%!8N!oB#>Li9py0{?-HhhzOxmC~<6*C5*veYT)A^?j35={cZz@ zhe86rfQ>-bJ@Le77R+Pd3H<;Tm;gyIgqZyeijCrl_F){;?kg<-p2sFiJa_mW0~f$z zEI|~b8xs-$Fs2ePI6dfsNHW$=nB?K@864!}?<DR)E;(YCW~Q0ogh+Goi-`*hCEcO| zFgBLWz?oBknIfEI>68i}KE%K$Q)X9ykR@4P#p{OyC-%&_E*=S)Xbpr4c|de@G|(rd zsyqIe=pr_BB-1G#H^PDw0S+6%XP_%3ua%g&5?O3<##jN=C2(M=IU{wd;f79+e6+Z) zO5Bz$mYYHWM@mKx3^IWjX;pEpuEh}p0bG#J7f%JA?*~AHF=EO~DeDy!h7HzBlE@B! zvx{Usg-Poo0EZplojkv5Rm2MLgh5Qe3J3*bV%UKbtph6^MC(J`I>1_r03cy&9 z2a++#h_7yJvT@4cGFbpI0Un$v9URK$;!N4~EB-W?5AhHP6fjtTxi<$yP&PyS)uMYk zrJN_3*8fI)QBVN{QLwR7IB;AXn->=)WsHDi(iF6&vQ^Ed@{^K$*z==FafUwwnGX8oY_b?wR zGKfTEO5uuMU?mxh%(x}wumYr^C^Rw^Fh^P9RwT*KB#W_lb1s;S#}En;sJnjvN@75K z6cgGEn9Jv|F?o+Smkh8A3K>sOj&%aZV3s!iCKP_MR9^&0=_rm_m*iqjOiUz$II?6| z5J!=Yj}qYT=^Yg2ZA~Ln@#>R!984+WR=7Z%(o&*YF-wXACgNrjHbqRaaRMX?*qAYE zg*Qi}3qW>;y2&NQ4cjlsRKPX|;^`r|hXMX!B*4Qx%sK+vC z?;QpNhXS6#L0zST)+Z=jS&-Kb}uF=5)x%6 z##{0-9DoDz;)Gxv1jJzq9nbU5hXh3h;V~DRL2e1(o;z=|3Ig=PH@+=r3OGPmLl+7T|6mrM`Py)p9#Pjrp z2w*-K2cob*(jDHV074*i{Gg?j~03Mc&t zAy@#BCA!~T(ohx$Y`u;Lc?esIME8U4O1N;r5ReUG8Yl7ixR_!KjAw4jOi4~oPPPsV zv}Q5^KR-H`OGglLSXfx91u)GNWeFgVIUO)%vEx`AjFrtzt?fA&jVu6DMl#4VH^p>2 zBuKG!NVNd00aGp#XUZE#k;3W5htdO~aTF;@Yz9fJm?hacH;?@EfMx}N9gM5Nz=_UnfEr4PH0TkOk4-_d@SaTQRI7*MD^%VKnF$N@e&3 zIs_z-v5&ExOl5}IvwsU4;}AS~vP0k$&P#7ON4L#c)HEWO+` zbV3%HuF)~dE>x}Gitd`b%VeNeeZ&0_?=2Zw^M?;?IGvR>UuhU|YSn|?qy}%LA;Ug> zz7r_FHtCZ~(fiaB@4p@WsA5uHHYV=MB@5*Fr8}zhfm!aBGoR`x)tHZwW71U9kA#@( z%+D#)?_BM%R;?r0=761%UU^w**^08MrKNh>=4Z^7>BcH%w4AlkU&q(f$sVvoWN@ph z`g>HU+n`jsqA}`l(IC&>D9bSD{S*c*hvTuqU3Ew$64J3);o%^gQo@jFqumsTDOU<= zjY^f)YIra+1I`&}Y#T*dQI)w(Zc#0Gbu(~lh2H3wr5+Auf#-fAK8<&e1?#e?w zI*U{@qMA>ZZQl5b(CKJzW8b-4B+6f>9qT>)eQrx*-W``htXLhUX71)%d^)c>?3$)4*|*pb`qK`qXXygKX@9nr+B>&KK3AGEHG1!dI~f~m#B}Ls!&p3U2u6@K)^!l zf>Ddv*QomIYMA60)lAiyEDz6>V<&C>S98P&Q&FM}1L& z|J>E(Qx!}~j4H~1Q!okBTC94;C{trdZpbMEzwu^TuL7uAEl+5A$Ae#FKPj6E2T$(fC=_JKP<_^o< zYoC`BJptmiJc6jiUPF$iq5A%O=INOA?Zq`yRQ%S1qO0bt=yWdv;oIxSwKa_@-tL54 z+p0pnEkkbU56wK6G`&bQQqKDif?xrOj%vnqPfKdO>klCmxCZpg>TMMHE-7%c)Q(9kyzjc2T;>VC1l!^2?uP zwC{?Tnv+?y$w-5vuJ`13)&SPIX+`65-ko|#GFMD#e^l2#q@#g4Uv=_!qbjiWcl&7X zN3H~dPPVbpjlt=h!cW%inF@O+IxM}sOF3(0$L!TDEd88yD^HBbC6LwT)9k2Qo0N11 zAiujR`9OO^G#G66O_OyqdqK2t-BW-1`^|MbBM@&`lIUY>t@Yiq& zA8a;H&c;Z0u&YaOSUw?xmZT*g#mFUO4OBmI=oDw1r}>CejRxz~vQKJ!)3~OU@yC>< zm!iYmmCYV#It;BOPX4H-`j8a4sM?PZop&LYW~8eg7rI0paPk;HShzEPcKPFb3--t< zE1vNn%-?LJ5#|~0FmP@CoyZYEH_RQ(RH>(PK2U~cM$>}hGS#xxuSV#Jj5V?zonP0| zS!kzsfxhoaELxj+`aBa*D7Eu*?R4mC+eRBXdhR zb6Pdrp4Aj60*1=78okzNsJ(2x7BTOV@0i?y0|GUd*6vrnv@oz#e&GO{SqtMlZ1%QP ze*6$!pMF$M^XWQHHj(yn+c~2)dF|1EI!7@l_s&RyY=(37+}e#5^zEa%CkCwY>Rzz>29pchmxoeM}MrsV-La z@wys;+R2H&q;qF~PhZ#CC^}wQwzvphGy%|G=qu7Gh-wg3R>ms4OSiSXnEp6IhTtRlB5EO>VZLTg8>TcEnbLC>_H2^GWJ@ zOmB}2he|3T{;vD}S>9PUl`>8=G9!0?sEE<^2-Q;dONpMgB=e?waWNsF$Yj*CVfv<~ zAKV^&mp^~r-~ZT^uR!w_EtNDTprJe$Rssm;=LOaVjtHe(m@_u7AY#z5&NWGw?BwRm zSvB3``y7QV&VHfIMmKMLHCSzJZ*+*R??%5v_6xrE~85rNTriV3tuE4MikoClwjI|oiT z7HQ5$bz&Yj7@6k@G--b8!RvC5>e{1<{hj1*m^-*+-tzHjoMX3bf6Dn!+80uGyRR@l zS9Qa#W6BK`0-+@IR)z|ZTCGS>T5m*9B&~4@_{^W!>7qOBX3cc@5osN(Ec6D}>o>%h z4%82*vT_)@Cd&#KZlj5c3-Y!LDA<;R(ImJiIjuCexc9%>XdX;4bYz#`0c)TT@~B=54eP(&Q15Z;u310 z#`BLeGWVg~&D5|N|9#2nQVn9go6f0k&r3=i-9|;N22=)*T%NJkWbnMeZ^tLj9Qe|1 zgW>D@+K&#kj^CIz&2;S;v%pQpXgKxe8M9?fVws1-firEP9oxs$DVTWKai$nobsVIg z*+ngguAK!0XnTyD3vR!^+Puc2GktrE$aQ+|E|JH2Kv^YAlXl^Y?T&|0U(zoZSSvTA zKd%&3h&pUdEzbL`eyLSgo!F=l$!T{f3%KF8vbvm`-eYdA(TT+3Lc)

@8?XrW-OnPESP`Wf9H|MtBO9XEHKybjiXY_=Prm&B9*SHfvD{b zou;$CE!me*<>B+$ZPbnop6mDTiL6448J%%l!}R#OO{;IX7^YZMzhSPafAZ+g`$tV) zg$marSc+~2MS6w4ehOb7%YFZD>d<;NZD26V$0q2}NGN7+ew}4{e)CM5Dt_LF1!bq> z+XCNIJyH!@@wqJBa^NME=)Br09TJ-~0LUrsbQ!(7EWlyGJkyrjQ(Im)UoFVe3!rI1 z*$m$Iu%pGURNCOyt3r(vC1(~iIY+RbHP3rZ?UOp=3l&NTAkZ*TI;pTJ5?>_I6eDlySCw^L0Ni> zt=rgFoilwmeBRqR)uUy?RKo$Y%|5uQHEvY9QyuJ8I7}2m%#&YiUdz|erm7Zg+8t(y!R>=y?OuERXxWc+hh18m5>C0$goUwA=K+>aAs!l%Z`)kO6y@-+Q=Cv z_gl7pN#`#7{t;6BwmLC{r@A{v6k>O7=i`%?tS+fEik9h$zNU*7(=t+wCR;`M4#>&T z*Ixh1YK8s7Y>FDZ$Wy1?Y+HVo!mXyKW2-09Pi%Ve%F1X$@xkk>U9+7|mlH?se#{$N zTxFggvvq`}Tcj_5wQHN!{0opBRBfX- z9!?GD)l4cu^}wrfAwhP~>h%q(l=_HvuirFo&7+O+ zF)#O5y0-e-Z>+ob1|A-)lm3~Pw}zuf+pt#;)iqI^H~;Flxf`onr>c&)S{UH{@+oU{ zc0k>Bfc!7tX;c)i@{sJ2#qQ#-6^16s)T5H;KQJU?k5cAEAZy-k z6@xgg2bas#D(iUM_7=t~uy0-eS+gPv_SQ-6CW_~q=3kl@sV%3m3^ z41KuZ#`oumtj%(&QH!ZHIup{z$f?E7U2CdzRdgUnvn0ph)00l4q=!R8pHWO|*PNE` zIR5EdSj9Wvq6hYGZVyv2+gEYuQQFCadqkb)%1Pm0zYp3SGaYo;E4tA(e+9ujW=%my zx$bSkQ)TCG>f7a-d7IVjZ9RBPszOj?YjXbAEqbR{WP6&MH|rhV3(h809??tV ztWY>$rtq zUpEhPHxJlE)MmXr-0`M-vb;Wg?xcZ!mE+*N@9*ZjK-G>X#@u@_Y8+wEZVfdb4-dCA z`jVzvRz~i(XR4yd#SQ6Beh=Oq6eX-YnR)xFk&$TAmvq%HltYY~k;uJmZQo8o|-I>J7wNDURJ;W~h-%sMnds*t2`7QI6uGRoOf4 zm248!8l7+fj$WJC>Fa#_M6G=1m$^Khynq}nRF#ouzI&N`*fFQ2M7LFI?a7n;km&*UKVMvVb?4Hn>ftkNPR$yA z;jrDQwP8^^6t_)m`fS8qo)#5NRxoIc)jl!oZn~mpvF1(()oC5NlPS*?Xx^>Q=IgC< zy`qs;f5J}7-#>M6L>g7cy=bIWn&N(yHmyOS>y31|Yo@%PQtbEbAhQ-290A8@N4tH| zAN`qjkb}n=`iBs z1)>zs<|*IOZA&sgL@hHrvrN>OF7o>F<|P+=H>Ta(>A|ikAG6eg!gr1Y_|0qoXlj;I zd$nqmNPpqCgCswtEhP#yfVM}WiJ_45Wrz(8RF5}6nE)hvnCP&w2j8CO)q|Et5={V)J=JVGKd%_tbuS}PZ&x#iAOv+Z6)Y(SO zsVhxSh_Ti9X0-MD_|Kj1AjMX*%$8>vHjyty*BTx)S$JMZf53aQx=}PNEccKozH?`X z$oIn4&zsUle7ktk;B(VGLc6WY^zi87L1lwIUJl9(d97-A?5febhw7&m@$zSkU3onv zblqi`{rTPa*}*^RI>!%d-YT*-7Ht9#rQh4?5FLEwZit8P#Esu8upGoj&_0t`e+i6!2)pGJx)whwAXO@Ycr+@LCulrDCow?%2J+zO{ zN9HZan(F4X{K}eZ5sL{b8+_(2)~GKh8a@*6jfrmS0A+2BWIl1@;pFV!gX|MroZChUxNFz-Bjs-x+9lWW*M!eHI3 znn=rFqZX}zHRfkNM-ECemV5jx`b=l?E>iTODdht_nIy70i(@&o4!&33suFM7+NeQL zi$ktu-aq5LTVLZL&0YhT$(Bo_Dtg*P(mi~QGF~>09Jr{us{HD=Och0otx3DDM^+Hu zU)-g(ru3fs?CX@>K%Vk7g6BFLebuaJy@Kf4fOP}(`K6i-<@2+No~1iB%~i{0jaR0w z^0PA@SbszF^7$kK^F`xxG$Nw~W9-~>we{BR0S!D(q079MNL&Z z)#-rVmLvwfU=88DOC?`{d@26w@_i$QsHr|&Je;6ODA%EvD_tWbSSfzg%Dk%Cv0bHI zQ!|Fk)baOSf9O&B1ocSgtVsESZx6VH-65*at58MS+oDlEwo$r6f?uk5W$xA(>6zzn zW6ewR3fAg{jK;)`N>v{lvRj@HYGOQ;FP&$a7lW>Mr&gT_msj32a=J#^na0i64X3Z1 zlN#xKFMDs&=M%Xe%~^7Jg(nZMnPRgWB&fv!9Oa=o1m*J8Ez5>~uwB_caAA(Ihf+k+ zbN)7ldz;5L51q~!!?fJUjLTZb)a2H*bPR3~)NFRpS*XGBiyU-9ewTa85}SeUN)ueS zyx%{z!-Vd6S$oFlaqf94oe#!6d3U}cE3v9%!N>YelKCljWlGT6jqhtbKzg=n$ok!7 zhYX|l&eq;!#CfnUrs<3C+pJ4=VcRv_$!Q~I-HA*)Xs+htb#=27Qd4SCqc0vl%10!H#c+({b5mlSW@nwbb9g=pLGqh z2y+V`+FmU$zMXM4a@It2#+j*luZK8sGRGM6w>-)XIyq7MW+C7;J?&rih~m9{z%?nP7OnVHN0+T*Rm$~h|q zhXQhq460(z4p5#~U*;6n);Ztx(=#_KMR{m-N@tjs{Q|2KL=q_EDKW$q5K46OH=;Hf2 z>lRk7HTq-Nhjn2#ymzU|MG7h#Vp_6?XP(KVDjwQ%*vcS%-V2SFTU7WFFRH!mjFya83F6xV_EGs5%24k5^o?XUqVqGmWU!Fw08SXWdIfTIXz|d2UnW zXsS_6;=`61(WgfiTs`#VDV3nO*4&IqT(iLE!*7e*T}xWco?I@AmLK7H&U?*?PC4@m z;;fJWR@j|@L30bwryLuTo^d?nTvC=`n|6XzEc*%U@yJBAHD`H7;jvO-8u|I5Lr%0j z;|Z~~i+!>_=qD#T9d1`VqPJp^Mbam>m2%~hS)&b~Z`}8E>*PztF&VQC-N_ErTo|{K zFpE0eHdej)d0w=fYF)_4!-|K%Z%S*44bL+iolWMsRT(c*bfPQHRx}{kj?222x=BgS z)=*yFa8A~^NO`#?Le=@(XYUxFtGzu+qgkkAI4AZ|;HKH_PQz3S#+g^l9X6Dsw}x>l zo0Yo2KSMF<&WGmbC)HG`ujF#xZgWfYg^l5rGD()nn#QC zb92M;9OOTpVJKu1_i+5%FHZCeYff+of3TEEp=WtmxhuO))3Tp$SnG36UbDb;W7zqR zht&2A)fs5BvUyx;8ns-(C(C@;^Tc_H13Xo;X9s;;k)^Q5=Joe0b6IwTr#htfV`4oX zuCLl#ULrqtW$GrS#c8=3!*b8fx&OWjHZM>(FvHnh*JCJf?em(QTI5KoV)oopPWy<} z7Eg97ov9xlJYl?_pC7fg&0)heLSkaP*>wZ=bD5c$=Vw=~{J_#t%iO0CJx9lxHa~Os zo{PAdwv<3JI8XyH2+r1aj^XT$)hK)M+Z2{`FZNi zCq$dCgGUr7P6aP-(%=?+wcc)#UPXU(Q*=C6yE7q(W>D5X>c+qsoxh37hlK^GoDkhC zi0ObkM6RKBf{ja>2RqNs&R>&4$a(z-_t8@7`EmD9dX6qDX!UTX^EHWI(Sh&v3zC5a z%QT+W9T3jb3#d7|<52YJ%@>wzjCoaYg{(y`VBIHdx=n6tN&E7(==#Nd^A_xkzTtWz zZQXff^tygRVWM9Jpns#B+QLhn-aw(?%IUvwJ#{gO->cZNY-7pch{_C$6<^Gn zX6$IcIb%Uig`*wJ+Hqms)Xj5_Iql(qneHJVl+-usqpfZ{9D(TIWfvh%q-V?`ISuF8_qkfx^euC zsj*v2^Dbpy(uX1@&S+t8)=8%BzdK=k*1Gx?fr~EQvD`Uga_qL^k_e-vucLuYQx&!e zOxPC|+|Y;`VK;eS)2>x~XRBpvPA|T==mE{W{Gl&ZTmSy?#H7MgbotBFlV6q3KiI!5 z?>V;m;n_r=;IqhgszBL?rP@C`t+_A+n`O2FCFGl*g_@VnIp^?4!_3pI2h-ZtPcj*_>e)8IrBeH8=!=E#*vex@1g;d$xS+JZeEKczTanL0 zdf>!S|&etoy=_C&^6zo#i01MCHrD;6q|HV;eST)aFr^avB0^-7cd z?WnfTrKaE^mtTxGdt0P?`Ngf7Md1;%?^OpJyAZ6oYsM4983|`PAJZq+^G z851`chF@KHWgnrY@wffAIs$wXm#UqQa9lrg^7#ep>)u|D91v5;-kx!z8BNY=|4hm5 z&?mO(gHM-E*cox5^3FxhbpMyPCMv4#+uq_hxv&YCusyt0}K-&n|>zSiwcN`7lV{OB)%#L&B=M*enij_c`* z(I@VlL#hnej0K0ap3XBq{Oa?Qp$U||pGs)D7Rv{PYB{EysN4SgYd@#AlqcPI^>S3CI3_Gk-FmPjm0I;u6NXYk{j5v{q`oo?NviR zM?t4{1efFw2|mQD*vdNky=KYwCDdA_)8nU|)(Km0=6m?5^@`;@v+nCzio)Z#&p7=ddqjQDi#^`)|wVSDTyhFsr2Adbk{FnoN$@c~b4O+Dw9 zTg^8!&$qL=yl~WwoaZYqTwA(Fbl|S`HrmCgCBrtg7BdqP9^6Ld4+q8EhY~%0(=na$ zxN6vkrH_`}SR6`T_wv;M_*I3WvA+$)qD(F8lG>=~^vOEV+d)sLEvl>Tv?SMh&t({l zr5t9(PQJfF$(*dS*zlXB_j#K$&rjSb(V4ZW)XJk&X-w3l*DYTf)vo#ID{Q7}kDtMP zs;BwgCi}>6t%boiC+Qc5JvUd1O4vaRTB;qd7!--rMUF&7PZ#pbeI{NP8g5k+em<~u z-=3nc8C>^2&Ry^{lsEPjEZ`M>9QP%TSH;?SY}UGo)n!}ioAwjtsVnNA4Zj)2TI~76 zVgHewva!e&#~q`lj()dWWw^TGu%>p(;z?nvUCi{(%SU%O4qnTv6$Q zeYD-+qLp5+5AV`mef9i;^232d%N5))!pp5nI0l)ncbJDJzG%MmX8S#x&^M~Z zlM-)ixU8#q@4^R@;e_q0Cm6&RF21qnPI2O`(d`X!qm#bmc|R_Gykxfi+#yZr8>ml? z+R1A*eJVKmOt`tN^U22v_0wxY^Ij}`urWKk!DUAC{yo35F3!8K(>bB@+3dJ11a)98 zvvLYc_1z$hSh%1~`9O>Amm81FzC7SP_`{L6Z4^t>;cWVzsifJjkL}suTw4_t@HA~j z$Mco>w78jiZ2@PW1s^7r7yV|{%2;XTav)?zYW~!!qq)~^nEmnT_QdRz-&6(#lsbPq zqdv^_#rPCu1^dy?c2izIt$26e;0>Z``M@ z9Xe$M{n!S(&sQI4zd4}wd9?Rt^YKvVTZJJ-L2V^S9q_xwrE?KC)T{;_OW2xLd3+u7 zNP4xF^^rIAtAgLq>Q7pm!Q9VVSMMA?V>Er@^T^O7{rd~Hk!SC=Ja4uAR#@omiixzk z9q*>|kH#k4E9N;)*B)OuVQPXC|AF^l^T^j@FWq?_abewu`JuP3*VcF+zj$$Jn%9t* zX_w(!5kr>0zIx?c)V}4N$I#oV@|nkK7f>V2thi&`X%{O1Q(jZj+jvG&+@9)J&I5z< zP7dsJ8MBDwxqi;L7n`F)7g@Sbe6aEi;l|8$hC#W02H!57tc);@Z~T5Uei$njZe)L% z|E{qcMsQUbUuHY?(6p`xquw;@sFz+q`fcHn|CVQ$>r0v0KQZ5?1@L` zugp6`eVjPTHW?aq|Kh8%DW6ZrpU=6I5}_Toaps5%^vm!y-4fN;H;OA95rMa{qffyu zhxDTQ`5GQG-yj?7mp(c4!YqDV`G%QloN*K4_vls5`C~nD>1ob#*6KlMAouH*;GzE0 zNn(_VcZ7n%_Hy9>Jgh+uIeb=O;h z(S8%8qI21cfyJ(s35i99cm4103pvXvpETL!W0~hS=`eYy32x)p=Xa zb0YIurOMW^*E^m#4jz5Ey|p1=$H%!9Pfl@;KAhm~7yjbfz5&;FT&98g=e!o`T+DVa zJGg8Wd((xt*5Mm?rHSn1gLUC?!V$#{EyCm6@^v?lC>?$^{Z5M6tHQn4+CwiKd%COQ zT@iPhsPKVEJ%6z(q=J^#Uy-TI%D zc39h4e40mm4qM*V_L`6zf9%u3dmWdPy@Qd9W5<5X(Jd={ZLhdAF=EBp*UR!6rj4er zi*#+7aqvZJ)u5dpt#4kQS4mk}A9m!u+XZ%6b48s%_8&?79C!K1vW@<;L9zH6(X5+bd|LSEvmihimBcSx+^i?sjX8XhUrTE?@*=%q3-!Xq# z@rN8a%J4~Vhs><^E*PNy;Laz@@{_49`!>Fq5V%R(q-pxw4G!+x9ge$rM{N%~T=H(m ziNn4JI{0;~Dn=ycs0O9&uYGiiQB>%=CE>{NRYyB&a!Ybdnlw(&)r787ijcj_$Jid> z)RfGkyuDoixc0Z}ceRWBR?ok-eYSAvqDHe5GiELm+`O|YMo>m-gC6WOi1%I?_ag3` zs^y>e-1~Oel*W%b z3(3KnZ}b+YPPtU^c!|+Lc*Howz_i*>D`gr~6j3eA-^N%vvbK94Wdi{35 z@y^$;K5yGQFMh7@Uo_LS2QQuEFvyz9rbMU$&;qTpM3QD;-&xz zWByP)JbOh`?S1u`BX5thUt#{Dti$WAe`Hl2+Z83}2R6=zYnfjxnGo4U6;%JvKAS?P^=qYdBH)Hp;fe;V5Ge2B&EbA_Kz(X^W?XeW1!OSoscwesD_ zfYG*<7aG%}R*so1y3|I0MUCF37D4&cIg6#t*YZ{~)Ad$kJ{jLknc9|9 zQIt??rs*JPe0*o#CcTp{BlcXSrw48tx#dgpj*c_DgFc&)xD)q>TP(l5mxD~%{Om-9 zeZqB9*S5T~D|b&Q{=Vbh_UeEuFFW;CG^CB)cyY(s@9HVr?#*Mv6${gk!f$?GRp*mY zUKhfy-QR-FJ$%LpJbQLZ;rS)(6)gv9(l}c>ww7}fD4+b=&JKxVnm&KFa@EL=?|aY5 z(;j{E`cUY5&3Mz2g%6Hg2|oVv)!3&W%g>qSU*66b9=^q4LK6|5#Dzx;Gx_c4&I5Zs z3GWxQz1#GjzD#R1@6h%$M=G5P`S~PMQsw3W4V!Q8&p4QRXF5N2{H3DUvG(tly&4>5 z7R7bazCZKiwzC}%4%!c@8@-x*eBG=G8(NYE@4Kk=vSK&q!RPubBUaIkb*=7uP5OH7 z-e#7{zU|Ob-N4{P$Ix-%``nK%IK6D<8nwIo&t5x9-}1aRXGQVj-N8489MEAsONrlL z7MW7LE6RLApsCj2a5?)^d3q_ct}UP#k1)5{f9%sF$GRnhHk)0fE&shm$S+^D$-|nXkBy5+dHfAp-o2Gt&VL^9Tb4Z0X1LFGhKb-aET-YKEHi zmzSPr#(r6#al7u#XNg9WEob*lZai@y*^Q#Bx@ewQ*?1QCCG3e&pfh`ajzjx1nI@h0 z-dYOkkH@Zik!~-Nmy_1y=652+s2ea855Lus^ku>LMM^1CEo55rzi3;Cw6ETD0B&%k zsjFTty$Jnqk}5rAZzmf?RvT-hJKd);EhB$+r#dH@`KFS}mJ9FsIQ`&G;Pm%OOYxM$ zJ@;ILai{8% zj-w=Zi9IXDNWk!_L^%VnCoCsx%LMzpd}>>y!_Ex#vZzld%4jCv=cb(TG)h>jm-?4Gf+EvvM9;idxdwqOm4$QjNm?dy?OI}dyuwT!d5u3_BHR@Kkfd>HLi zyQssVZ=O`1%1bTM_PeS^Sv9=NZp_1u$&lZVYY&-SfgLH#w_)E>dRF)JxT|({-@Zmo z`7z^J_lB{Al=C-orM+%Ce0Gp}tSRrQ?vSc%ypXslYutaDyV7!z%Jv46Pbp)vIxd`=*LA*aSYdRJThZ&z zQ#Y%7l;-QyNYSdL+KR!>6+PUJhMwzpEIKWFF4+Yr5tQYtfy}k5*ID-1$II79c2>wt zC_F1CZUq>M%Vb_J3VN!$)=9;mFh<;XojsuV_0{8bVP#_G1o7~66)hQ(TDIdg2aCe( zgt9I6bF&;q$u&A;zP5=d-0vx}@&09ZLWH7W%qoIhru?J;J?+JZHNzx^-a4*E>V?Q zEON4=pi1_bRH*~|W}+7bNOg-PIE%~=P@#<7D#lUCY#o_K@oU;QtVTg$-qszXE}lt0 z)?G7I_GNv=!(;Qloqk9Nr^;73sOWCLuk5=q;wodz^6Mj{M5}=*S@Owc4#pJHjVWGX z50Z9B0H5l=e|ovJo+>X|kUc)95#8n_MR=w!l6@kd{&CkZt7o9dk#pI{v7zEO2n>uQRVe|agtfSH%;!sdGN-yUzN`Ra@L#}qG9q_i!2HdlsZN|LIEa3eAD)E0-uyO zHT-aUmwwsotLrX6*>2e}%Gw6QtW*&ZnK5TKO0gDGv?Kx-+pFccdhNWvpRl9#(CJTi zM<~j*Y(NSvM-n|0IWG>1*xA{I*?Uf#+GJe2G4ge5@k&dUnUvhH0-03>X+^6}j`a=(%e*tYT~(};KiwF4T7T{wNnaMMuroE!OJ%!Qclw@_vu$&$HAH6u z+0`3}q=pfxa96@AWxu-*YGpM_%PJ|V2yNFEC+HRT9oqEj8UW_Br)up=h zv$?v1g^D|+VAN&Tm^b@GF1wr|?(XLtHd7>(x>GWwzlE+I*RiZ8QEh@+&co_eIVt4sITy}w>^qMZ6?IpBZLstA zigYO}NS~h-L1PkE%h)r<Gsn}9 z_*C*EEo0@O6NRf~w`48)ib~d1dR}g@9J#_!&DAl!X^Btd(=vw%`@;?HiuWrq&Nz=v);Kcy;8 zu&MV7)>E8rRW+4fJ7eFm@#n;=r4LDOB3WOv5~)&@(RvAJvZ?_cBdA=ZMGdT3(Ui+42UE7q%b z&n2y{i5L`)miK=Deq)Kbxa&BjvzmFsRYX**j5QNm!bbvUXT;i^{9#lrQUFZOA1>)= z5A46b$fiY23N-d3h2>K|=3FkbnVJzbIV@gj#m=3RYJ)aEiD#tVv_GP{F5Z@Se`8dn z=d%!x*s#qiHKS>*rdqesb+=GF6>`Fw^fFwfUz+I2`Ki>DlRmXo0F+@e;>IeCac<}$ zd)>?{pE(pA!n%21=D%{d{dU;RjWtP2H^|rM=Dd4Jvy6+591-{FntZxKPSw4xHJw>i zR!^I`<1V_YifSinv`r^v4quwekzc9T@Qk`Y(};3p@km>16BCnwTQ~ey`V3<*y=NLI zD(yH{QE_gMXzr>qKwR|Al+*xuElSR!LkAbH*f~Y9c)9*&=Unmo`ku#F+4)f+88fHZ zEBb|RN%Ld`8j5V3JHNagpzRsIIVaUo^lW5ZbH1;xinJ1E)JHih6MK70tvL@be=V3Q zSswqm@lx8oF=?Qe--WC6rH3ew#Q}2#U4s4Q)F%noM}{r5wA5KQ@5`*&FH_D~zq!$4 zo2B?M)`vJ+<%`bk;r`vTdz#GpwO4I%y;uYIAk}`CSyszVil& zP4cVNrZKMUe3VeO%j<&V%d9K+?jQDbKCe_69qjk~n}7J}thgI;8n1@?R-Q8Q4)930 zNnc=nt9BO}(Rpj>q0^;q568T=*kCbZo#XxGrK7#P_Q=n8q*vrVd)+O4_KCVf?@upT zEK^%@#9~|0*Q;|v>sYoWSA8d~sIW#-UcS9NszVHl8#n7zq;I*w^&k4xbIjwNZh9U@ zK5CU}Ze%3|Jb5R(z~ipku#b~-m)yOQF}q>9_xC31^YsTj5~0OCw~y=~!{fqN>?o2B zFf~}=t-Wfusz>a$tUc*emil^Q{ged~v$mfJS-A20%LQxZzT0s>lH0t-ykjT#>f;LQ z11H9CG%609V8o~2Ek1a;D`}}ax`{kVPqkx2W}!WZahjL$Cjo?A}7 zP-OuY=G3p=|D)Mk$9lJyuSea{nMF=t)=il|b!qwQfK#hSPckv7+j?nD-NpA37TT|J zgLZkzHNDQ=6R&)^$R~ic!NxP_o})of%GEvMkEcFkPLjK1G{@tT?nAH9;Nqpz>1{i_ zH(7=-4n!60-TvtKqR$o~h%)H8s{V~$P2r<}Snqk$W8P@5Y#(E6d`Rjh;uG_%bVikCKTQZ z>6uX4ELpL!qt5iD*eu3J@h=;uSV*_*KmGi9*#3a8)utCMQa`-)yyV?Hp*ZpR2WHrO zn-f_@^Nt1uFuK&wMM~MueEGDPJN;G3i`qqYtIkVaUa2_sqwdI1yF&d0w>9fG0eYmj z)CmCw6KDG^V7KgK%nZ2g>H2KP#g(emyR-JVzg>U$#`BHk?*m7B&3ZMZbn=XyQj0ek zh+dyBdh&o=jP&l!2L5%+JM=Wv)UKU-7ZK_HL)D``BFAH5!v+@jqS3h>H{G7kpZUo; z*Zu2q{{r1X|u^$e6IdXi{$vHX}dz1G*T61beZCuT!S`YE#GPYtj zs?VMLI%n;}T^Ao6m~y(tzXWh|edK!Xc*!*MasA5A$B)W22l>?}1_swHb>(WT{d)54 zBbj6uY3_zS>&FCe?kqJ|K0I~B+$l%L?PY|VzVj))_|UY1``}G4`m!Y^a<$4REBs*h z7LVubj-xV&<-y?9`5$hQNRFh+&2@84Wgp&(shpgBS#!s|7WMtQ3;d^awED-b^_~&E zrtWUbRgcq~R8;qRm_MmFTlhTRdF6pAa9hcSyKUeoqZ)Peku%**-J;Idigfz&U9O~; zxlg*)u;I##q(DkJ6`Fmj;960^W2f`qZD+?{k1cL`EgQ7ll3AfX_se2s7#_8~WZI7T zl}nBsY0Z_tRG>NQML>mz_xaBoAH7xIowRB~?k>gygOKq(!DzKg!b-mr7Zi57I>p*{ zZ$0>C|IWjrKjLriBP_ER<+=4zmFZYt)|_wWhpQVNz2{?>u=b?OkNR^GwGZ~JPB7WV z$oA2w_^|Iud*PndJ506(KYwXB>hOKLI#>T8Lf)x*UcEq8H7dp3B^>Z+R&3J2#! zZr)M1N3*GdIeEqV=Y{H5xmWz|%TsL9VsD3EZLO`CQL>_pHbY@uq5g-pZCf8rbq+Rv z)v)K<>NO8kk3C5EQnP%aQ;5#1S&&URw|@F&_1GZSWMj9Nj$c%=$A$*h!c#_$b**5R zv|IVkrR_S^koCNAsiLU$xe*&15>MO=UwiP9`@=V9U@`R-2hYhYd~a%pOmjUkUH^pM zRiiS!(4E{FkI!~2Uc6iL_3EABr^0{KH=WW@{$O*W$^9j19U?pW>~>Ypn|cc_cI$I$ zb~Zj^pO$^d=?Ph#?)f73OY?e@Ey^#!s{xP7xG=*@cDb}%a5IqTKDo;gXM zV~b1omOR}x&tOxF?FonA!Y7s&=0KOFdG;r?0i%50>j>vzoFzTCAp2?A$x|?ee16Oy;G<8fFg;#Td8f40|Cq zIV5$|o)_2H*|HPe1Gc}+n{_z6y9(TdxLIpVGB8Q3mp@Tk(OhXEJ|8?;Qm?pA$#(0r z+^?$+3?IF=?rH_q!q(|g^*DojDJvene(kY4G|`^=A*b|Jr}@1XMbkfwTWJ#PnB0^! z=jQ$si*H$6j%Ik(kD0mkaM(w`8`Hwm>d1?4nlCxJUBl<(JIx;fnzyIVrMpbW0necdh z*P^CZ23{raX-@*z_-yoVU;m)&k=~TVZ=-B$+dIFnEetLkJ2@}!@-%Z+$m$#GMp}M4 zw?%V>!p09Lz1}YqFy~v<@DRGvwQo>}_M~ORj}wy~HIwUN^|=~#HV4D+ zFT1DlU{l=b5A{JW@~v1|%kM1w=4P&Jy7%(YCo<|CFFV0?kLT|FGLih|$+zJhN}og6 zUG3L*x!;|$^w{d0D|4B(zG@dY+LXp`Ik z#QSx=({4@Of5b3a|I2|b50{4AV%rWg@EEhm;lbT&FYlb(<-IPzV6|1~w2|_|rAiHs z8zXm)e|lrFnoQImu0HPhGNoBo51;26@1pu=ZZ|8urdLA0dphNug@WQykT!eLlSTC$ zv}6CI&&6uXj?US5qOtqf`p@j8)N4;H5-k?A9d=Y+upqj7<_RwM@_nm&hh0DEj{>_T zLQi>@`o4$fHVpd#nR7IRrnX_@p7lMg5sMy*?m31k=!LGC?-(aqEcV`F2D_km)$DhtG#Bi< zxpkBUYiq^l%fq+tR^5AN>24(3#%=}DdKM)oZP@2K_44^E6)TCC#!O&0TOYe5XL7LN zRIF-kOhP)unZDvB+|VTLS-U3Z+q8~{6ZgvH>35$gxoCQVZoC(zK3lLFpnhYF2yCG@ z+?@6G?b3#&uUfnl3yxOqPwKg>*j)Z3rD{EM?EaFmNhQh4Yi?ypSkr$@UHq&pV#oc5 zJFV}>>s<6Sbh-U z9y8K?8Z-O6xvaCFGW({mG-lx(}Pkyw$W zoHs!~l!$N`UNd~;3(Hg9RJrO+igaPkdh})glCP?l=^@-Q1&#ru+wl}1dta)D#?)-GTs$)4=cirON)wau{ia)2!XE64@ z`_SsKJZjRbQ&;F8?mmak?`l>VW`3Y%4>ED(Bb~KXhpsggO;;)ox>pbzxp&?DZY{Yn zv0zd}p|5fJ5$1;3CDlcHD$$#b)v$3(%PzWab9&(PE76}<8(1|v>|1wzdYo@@^MjRjZ`swypWW)5czktn zQrzUcrd1Udud~RDx7yRwTHXXac~~+!CwjY~onPg*!!7qER=&_Lo#mo-hdkm$d(5gi zRa?v!X-+43#6BHk{Pm@}R*H?vy_2>sM<#Y{Tz^??RBP8(XzDY?6Ia&ME-;)E^ZdbU zjmJ~;_DtP(n>KCt#*5siH9ivL`EPPR(Jk9;lNaWTU5Hrb)u$aO zr+>U6G2T)wgE)m10>L_#@q5_$H!g@d*gY{wy!Xj7A>_^a=4s0BCp?1Mxk!4};&NXb z1_?2|7y_2OGyV3VdE%W1*?WGxeAJ>gE-+-~wB1P@V7K{P)z9RjOQS-PpDw=@-)6JJ@zUql zC+l0bsz0Pp>X>rfcloQj)kP}`KP=$Rsqkpax)K_zF-tuGk-cNry8m#?hN>+`m%a*7 zHQW~Uoe~Ki(%GY0xF==ao`%9Dn_6^K#zqAnI$ao<|EA+A*Zus8FE@_{kPTuz-NE)B z#}=E}jWgP5=63KcO`VSBy*PapYCGlfK8T z5O9MsZMg2IqnLihh~;lX ziMYReLgnqw;TN*>w4yWdjJi;$JUEEd*0k=-I_Zu z>hohx&kwkGcZ>3gQR&Ak-*;OaHGJym`R!4mN92aK=EJj}9V#lI+ZgTL_jp{xn3TJx zzrVhiabw)H$P%MHVS$T_V1>4azc?xzc9wtEccE|ghyBdXqD zn{3`CzoTRJa9DF5ygfF4l;!xkx17!VOni>MJ)FmVX|xWPj)JM>8MLHWWQ`efx&q zd@I(cz3BMO{qwvI79Q8=pxwP#d)wfE|Kee4YxWoMOp;!kopfT+=>3a}>fS8)da>1^sO!!C(oGE0 z2cc^d3*zX8OOI?_d&$(Z$xL;~SzP6SJn<54%oBY()<3lX2v0DrLIYTk89JmVhF#o}qK4uUHu6tPoj74Pqcb zquYz$e{<^TSY+L+weP<+&3AC3a)v;S=p~mnpP&0NtIfLS`YGIYBooxKv{yHLUr(S3(-Xa$2+Z*ICjl zd4jUU{C{3^*qd|0%Sy*+tiMK69~8SA2|& zPLPqak|k!0ZoU(k-i#7c@5HobvmBVUvD$rKh_qRHhjXM=9ZZ@o%-BDdwA<^Q;_x(Y zYctM~2O93f{zFPvoX);dt{*ziOkZqaT9E|;=aYfA%$BO!EY|^b(jnKs=GU2wEKm1u z<+~8p)Y+Mblt*Ert=CF>#&Eu|N8}SR9tB(t7C+uxs09w{nku?XbK1pBSv;jX!Y@k+ zdbYc6Ga#Y9fKGrBqyP6X+dW5F?Zf=I9CN&^_Mb0oRIt{lLT^R8<@G7W$u7gJ?xKT` zlN}ZG%%31qmML^C8+c`rJz2D9YLw05jU86x8+u;s;V?rkaJ9<>*N7aRU(H5JEWyH} z)vn)mE-_89q*o+nCzE_^ublE5PV6ezOAvyV+1-7Y<<1Qjl^^vQBtPSOy}3A=ICNFy zT{dWAbdNEw9mEY#TG^u9CksWa4@UI#e<$b@UPtk0NXulVRHmWU#*FC_y(ZemmX#P3 z@VzhI#B?TbrFEsHKtOB>INR!i1=-Zm)+m1iB?qRep$1_3_EI75xQQq!M=AC)pj#>Y zr{iVxm`{|}V<6mb-EEn*g4b%7WH-`0NWI>^omo>IJJ>1I#y|)Zo04mUWm=`3UH5pG z);8%+$aG)Er!9$p+=WnUEUR%YktJ(or7TNa&5j{X6w@b1$1CIcSFPlpx;X5_f{Qf{ zm?gVQdq~2Dv)dM$xA5W2djC}l2S=2DRE!^uzkiN3ZShm?)k8z65BYLa{mQ5yjYi&@ zH}nyDwcXRYoN?4F-JDkVyrAKCgSQQejFSgbt!b0SAM2FF*pG~1Lk(G?@A&Fj8Z51G z??=rwJ2!+RR?L)>gu81b`W;@eaA$WDQ7-r?wD>z62NDB$>T(Nvm)ONTAU3_trD7?!>x zw&4$;p;|w)`o`;8DJ28_C2FG+6@cstn}+#4hGE#qLx)&Rd5`-QsQV}u@1~}Lqw8ya0tCbtmB&e5b$663;9N2{jVeL^% z3A_Clk#$&;&g1D6C@rjiyR^X4j=17opImvFQ225#sF zQRlhl+RxJ0hq)VH2~Q*$BFsL(1(icfLHB`IfzeyfIPolUn`m+msRTe{V0@UI*X=LZ z%eI>3Xr8&WOw+Bp48|*#{2}Vpw$I{16txe4>|_)$kM`>XQ72fi$C^~&fx1ARb>LU$ zsl!0#Q%I{o1;)+;cyXGB~Av>0-%c0bo_*k z)+vg0bl#8x&C9RYWE2z98+;h6yE1}ZOb1PN_w)5%)>I^h{T9e{lg!YYHMErSU5?6D zovd+h8wzbG)11r-H6oM~)GV|@EZvpJ%7x^Y5Uyq=4OoZAHC~Tc&n+v;22P?!W>^G= zbihhERw9huV`AUy!%-9L){nb?jFba{n=&6~4Uh|X(uAclw}NpA|Ye7li; zcpf^hCuC=;jB7@}-2v~l$neri9c{+>JyoCfvX9&GfT#-wAohbY#K$!*QmE_!tX z9I&Y`m1Y%~186Ogj&UqtJawF)cDYKVd#78U&F?!=n9AF< zI@j-WnP*t`i7;Rcq3;t>>qk5<0l%h3|=4z)}fqoCkaR2`oH$;igJB%;~ihVdO?bRCGt& z7gW4;sJ`i8cQ7e-XYN_Laecb!eAU|OknTI*d!_;#E1&Znmcr@VJi-cWmu3)3F^4T1 zwpLjqW8P_Un-u$76letNHLf+TjbW_la6HeO^m^7pb-jayNh~8)iB&=0UYlhwKdhdo=(Xr?dD}+y-a-bu?96)^&3@jYNhksO>xcJMwn5w5w8oOpF>#qUJ{LJDcTpZcE?3bbWf-FFFx`zi$9Wnm=VqJt1z`ygI-IU z=NRo|7!5?Um4AjqfD19kIzktgus`LVQ_W2Qvytcj;D{fpsrm`zqBH@Pg;myR{4n?^tL^>$x> zFyqOxjbU}LilYwhGI*~l5|hYnHD9~EfOfYTyK-`EA7KVk-dYrOy(b=zqz)+3K;^Ag zm+king5vHNH@?eniMPj-;wlagP^r@glo^LQMy?b%;0G!9V-}b~Z|AKdYA~+S#s%Jf z;442z`X-3HY{&cAl-3CfzW9!mdP*jC!(j?vnAeOun(+il- zZ*xPAF?qRgQ)EJ%s$2(%_h6uA_sh91=g3=#m4$U(;j8ksGpHl`QMvii_F@dVUs1SU zE_LCKOB*}X@U$7!z6NU>r_0{$D-g1l)|$=3@X0TpU7w+B}0J6)4CI6E(p3lCV8vQ{XLK?z2G#> zA;2B%dUmXi%Pv#pjB3aU{IS!S6QYb)X~P=e_AJUg`dQiz>G-D4fY+%Pe;kUqd&t9( z%btw2)xg!Z-ZuKK;H#g|ltd{3w2CF7Zigq_-&k3DZ}kuVwC8bRK4o@cU-+pVp(RnV z3qHyi0$~Z2HWx-*T%kv`^s#DF9@W=EQm3k_o4IM1=GaX zKwj3#aqy(+5l~*PX9?*4K0FwJ87^02+O(krgEHCxp=Liyq;>=LI$bD_jh6!u@*TvV zm`i<*I5#8j6x?LaHKyKzUkecLo!0-zFWWDUZ>3H5}23W2s1F<1w{*BmZ48TgUFdmyY)eni%}djuojfcMd9k1x6y^qKzp=ZhT@>H3txi#W2$-c)v9 zHlesG+tgLc5>{m-Xg3FQEBnEjEF=Z*U1TY#*c0jd@1h@C$x+<&CPsQiczQ4{bfLk* zkFCY~?CXWe4JuudRLimvh&uN)_5M_^=G>33E)=cB^3;p@2ZMcGwQR~^Rx!0mf`e+a zYNuM9{HOfpJX2s8Vbkv_i*lH$Wx{H_f()K$IQjcED|oWc;f|ZR>-4SfEa4RypeB*k z3n@2lT-Xh6*!N@fy1|b}g6sD+@sCz`+jUC3Yt@g7lZsqzC-QJNKj)|Q?+egK^`t6Z zW7V3H|Am%)jDgx0n?}lR*cM&y&Sw)`(IX7t!mL&4@E+8;dbQT+Po)m8xgjlaVTRYN zeGJxOcZWDReQzbp@pKdfF3mlqDIXHZ|>hla6707+Nbw zk%4RB1z7lUUDjbR1ydpQ;tWi~3B{G=Tr_tVz?vW0_2Fn^1rPEf*&2_@nF{i`*^N{) ztQnhIB97|;goe!_2GjMo;+wUAGCz)9yV3TeEc4e?o)}WPfB&#f(}r$m>!d2>)O*Pn z6IY&_p%%Logc7pCQD^+$_|)V?wdVP!D(!XAcKmIfJ&+ASHbl=_)#WBN<>R*7w*#=& z=azBYXkEoNIEY|8l;9?rO{Y-etIKd-#ZAzjp(x12+uC-!f^uWO=&IlXQ(F9RZIs9Q zvqjC#@&|Xz-#d?n{$2Pg&hwOj^aOM~4?L1Q)8tGmLa-4cs2aSyZ@1IH6h}_l{!|w7 zn+W3JpZS3O!HLTb)%n*#c$FMz74PzS6=PVi3|K|1moVwFB#M3c)cUYu7{ z7(Dr&bcK>xskDsGr`(t2S|uKPUL56prDWm1H}i|#uJG#Y-9 zq^(gLuic{Wf-n-(LNpi1g>>c)p!_m zg7;@)rz{HZ-n@R2mlik{?r3q#3%m>*zIgmrCs70-rexKz^j+>MB=Jl{W04ngz`gw{ zYR&IrlZQw8P=L{!3dvy9z`hJ!i)7)Kl5dfjfJ^_opZ2-QxN4eat^(78RMpjx`HY zO}$Y2H-Fu&nX?fDLdI6GLBGET{*Z0pinp|UZ+C#Z{(bv{=16*(Qp+rJuvXjS3RI7o zjjR3QU6drV!sNSeShuoG4f#kC(Dy4wHm$5~F15HZ;G~l(Y9m)R{r#=$H8!kd4^D|O z8rm_f@&-4l*|}XG1xcfIMqSw!jUE+$0e&`PYsTi_B0P3=H=;EZFVSZ^J7@9)V^17ChGb4;QmomVHNBd6yF8FY zcF{%&5^L#rU8dKyZ)D}|W_o~_M0%4u{mnGyj_(}|2xYZX9RAhuod_4#o8;)}F+OvB zjPMHXo2-Tpx_ekDWvVQbCB&hfS?*HcBJ~uva<{V!Daq~=uID%mDUGwT8Qdw;)q{&9 zRRD~&^NGz*`mWyAkGeRBtBfK$83{p~y=BM=5%J%lK=)g{d)Bgk-8P0kyT@F$a-L%c z&v56f-0me}2S*&p(fsvw`3-%_(>xSCiQ80+)oF2L`sme}zCea%q))aX zYmH+zphoOq3B2z-TLH@cJUvA~HI(a;hujxHnO6?y{_6{-&XPr4f9~_{VP7}4yPJr1 z?Oqz86U?Hjb!W`=T>nJU_qA7@5ML)-J30WGi#bgpY(VpYdcxyAq5 z4oalagV$WrNA>hb*rFy_poKUZ7D-bX9;wOhl;%s%$)=&6GU=ORs&$LI7ZtSmf;!d8 z@7+vr=Mjf#okA-ro!WrO^S+EAs!DK-%Dnl~@%pjr^Nn1)i>-y^?RkD3MA%2bA!e?t z`(Er~aj8i9y}m$zrFDB0<<&;1u4~uHRy9vTRj4sVh@-V!vr%|!;6HkQ&OsyGV375W z21C1tdv3Rxtnb#}Jksotlt~r`0-RaTeN?3PUT8oePbKQ@($?56i#e5xMr+{t$OcG~Amg-e8z{`n`nH|rDaes4Zh8kGoW|?Y{ z<)oTB`-lKv!{+!!K9d^R{*S&~e4E_cn) zgVf7~E?C@V&$m|DhXMKv1@s>YB#;VdU>JNGgU$u=o4Kib@*$NXi&aPq(d5U_1ylR< zf}4wfv94GUfX%1(9!w+=LqPQUArlQZlneP8*kjl@{j_4;V*r3vS||{yKH0F+S46Bl zoRq;vbj;v*^3J7)!2OhCW@2;q=OZC}V$xy0EY7$Q>;06ATVb%9&U|I`{fQ$^KM7~g z26<7};f-fksXJ6KyIF)y?eDET5Kc!AMFni5U((>MVaDJ>Jy;Yjz%C(`U$|b66NqM<0Q$5`ZmSY`e;XD! zIljAOc0zyE)!3P3%vh|9X5yo(|6T>3RM+WgH=pB4eT*=FMPhhAB4EaLkj!Z+&)hn3 z$~qTnSi4&&HgJwQofb^i$h***R9E$8d1%TkV>tx9C@LsAd~??;#?heAu(^=8#>CmI zr(StU|9W&oj6W%C%|uuzh|EE4{{`0hH|GLweAAngc~^AIx{oSM>DmgkKAX?(R3ji% z+z}RA-8t)gwBiT&y)nv)RxmhRnv_HI^W079aL0CKgkG26isk{YTN4I$ z-bo5zxR*+HSFRgUa*eu>Z$*s>WAQbn-<;4rRjUo?gWwX@lVFCF& zm{#T@yZ%z1n7eDy;n?0Bc+o1gtJp;+^NnJb)7C|s0NTw+)dfnuE3#W*=%FF8CxOq` z-8(PHI|;-=1l?}K57%O?Uq)~Jbz;P`#_QbYdOPP510b3$+%Q9f(<{K;}o({zbxn=oCm0p97nYltzfk=*gE*~_Ki zy4R~a#RWTb*1iY{y@ky|lRSgPBSkrx$h^-T1cs{**>qB?tUMyF_k~2TbnoIaT@EsV z=Jn!uHW~j1)j^Ouk)Q92cxaW$&_7esF%S+>Vzlj6N~r{bvKAYlzsGVmE-y>C=BHMj zgHWefw)|-mKuJ9hhB#Tzv^0%GTHq!pLTP8_GbEd$+AU|C@+tx5;XQ5l_`HI5o4Bq@ z7DryFUypq#_24sGXbueoxqNUu(q{Q`CroM|P$u)!XyL2=xHD)$E!7m<28~AMt*m zgg4$dy2aBA7NE!K>N#MNp#_DI*kGZpeTDpM7S@dghvNe=C}OF?=BeH5@h=YHdXH0l zhKs2>QspvlBKy-Olp9;QpSG|P-lof&xi8r1F=4t_9`ch#t*|4$>OmfGbG#8g7>NIF zPQmqOD|LvohIO3Fd9=fnx`t3XyN_~ zoL_#VUf5{=+^@i9x<9PyR#o@8pgl6N0lZ2vDA^ zuZKz{hp6|{1?$@Z*ZkVkmO~r9%?Rvu*4@rS^31h=yLIQfgqm!hAlBpze)SFZ_5A2q zYM1uU_{ zu>TqrFl^29cxk&%ahB^rorhGDOVR#4(i0g$z3^%8YHy_!X-A{=_q0an-LL$_cJwk- z#x!6hcJy8`^Se{=B(Ed82BqLJJlK=bFL%z*rt*c?9s7UpR6p#_%Ul9$&g&oYZ0_i} z@x2ICd|q%C`mQ`#T9+XtY#ghXi+1#bA8of!x<2YH{Jop`iY_bcJzcAxlY7k6LtAsY zJ8Ky|UDT`jo<)DiTABqqppO`CnE6r{+&6 z@4q^x4c-~+lBRp`thsF`evT5viP|RpD*dBrmu?#zPpsCv3%)VngQmZ``^#v$Wntq} z*IWmer!dwc$L{U%)6Zg#f$C#`bAI>Y*X?f{ALKxbLWC<$Mq@!r^hvx$%!1VYh zmGXIm!D##y)(%kJn_SUiH+#Rv;)H{v`b==5x4l!pztD7LJN>~LBYt{)5z;b;`tx) zdu8^!6^~U^9!RhF)0=WC-EF(OftHn^tLYiB+ML}5mlprr_&oo;XMwCf$4imc&CxQJ z_cDq?rFgg99#Hcf7tz7`I~OP zE0UPlRk6NdqL}CS^TN5l?u$Pgshw{6;+b^& zx1)BeCQM7Z{AQ7RubT$P$ND!n#k2jYr{5M0$mNr=FI+73dPYIs-SAEKpMOxvx0+w~ zyt+QQ;Kp+X<^2&gr!|VKTkd_ClgjCBxMsEN-%I;{eEM+z_xhP^_X?KJS@QY9rDL~N zSI3*>elDpxxbcW)2ZM>snQG-zLdM^2Z~v_F)9+>Cu1Oc~E1CBs1=`QMt1I~S@T%oq zt+tPT1@D=;YGwWXH!+hrPJLa?Yppu*Pq0ZvqWaYZS9@kXa=FT)xHag-;b;6SUiR1U zuh`D(b8*?q-@DbPNuGG(@WHsaZu`9TwhieLA6eHeU()UDcx!#kHQVf$4+u`+pOUvEMH#z)R{qz5?rGMuC{|QF>|HU&fF#P|o6zy?`;le;)*Eb4A!6+C7 TR0Dtj00960*Plt;0PFw&8a0Ue literal 0 HcmV?d00001 diff --git a/charts/ingress.yaml b/charts/ingress.yaml new file mode 100644 index 00000000..b54dd967 --- /dev/null +++ b/charts/ingress.yaml @@ -0,0 +1,58 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + annotations: + cert-manager.io/cluster-issuer: letsencrypt-prod-issuer + name: eden-prod-ingress + namespace: application +spec: + ingressClassName: nginx + tls: + - hosts: + - mifos.edens360.com + secretName: fineract-tls + rules: + - host: mifos.edens360.com + http: + paths: + # - backend: + # service: + # name: frontend-edens-frontend + # port: + # number: 80 + # path: / + # pathType: ImplementationSpecific + - backend: + service: + name: backend-edens-backend + port: + number: 80 + # path: /fineract-provider/ + path: / + pathType: Prefix + +# --- +# apiVersion: networking.k8s.io/v1 +# kind: Ingress +# metadata: +# name: eden-prod-ingress +# namespace: application +# spec: +# ingressClassName: nginx +# rules: +# - http: +# paths: +# - backend: +# service: +# name: frontend-edens-frontend +# port: +# number: 80 +# path: / +# pathType: ImplementationSpecific +# - backend: +# service: +# name: backend-edens-backend +# port: +# number: 80 +# path: /fineract-provider/api/v1 +# pathType: Prefix \ No newline at end of file diff --git a/charts/template.yaml b/charts/template.yaml new file mode 100644 index 00000000..9dddbf28 --- /dev/null +++ b/charts/template.yaml @@ -0,0 +1,181 @@ +--- +# Source: eden-ui/charts/edens-frontend/templates/config-env.yaml +apiVersion: v1 +kind: ConfigMap +metadata: + name: RELEASE-NAME-edens-frontend + # namespace: default + annotations: + "helm.sh/hook-weight": "-1" +data: + DOLLAR: "$" + FINERACT_BASE_URL: "/fineract-provider/api/v1" + FINERACT_DOMAIN: "a3a1916594856498aaac021692b981c5-205189284.us-west-2.elb.amazonaws.com" + FINERACT_PROXY_URL: "http://backend-edens-backend" +--- +# Source: eden-ui/charts/edens-frontend/templates/configmap.yaml +apiVersion: v1 +kind: ConfigMap +metadata: + name: "RELEASE-NAME-edens-frontend-mount" +data: + logback.xml: |- + + + + + false + + + + false + + %green(%d{yyyy-MM-dd HH:mm:ss.SSS}) [%thread] %highlight(%-5level) %cyan(%logger{36}) - %msg%n + + + + + + + + + +--- +# Source: eden-ui/charts/edens-frontend/templates/service.yaml +apiVersion: v1 +kind: Service +metadata: + name: RELEASE-NAME-edens-frontend + labels: + helm.sh/chart: edens-frontend-0.1.2 + app.kubernetes.io/name: edens-frontend + app.kubernetes.io/instance: RELEASE-NAME + app_name: edens-frontend + app.kubernetes.io/version: "1.0.2" + app.kubernetes.io/managed-by: Helm +spec: + type: ClusterIP + ports: + - port: 80 + targetPort: 80 + protocol: TCP + name: http + selector: + app.kubernetes.io/name: edens-frontend + app.kubernetes.io/instance: RELEASE-NAME + app_name: edens-frontend +--- +# Source: eden-ui/charts/edens-frontend/templates/deployment.yaml +apiVersion: apps/v1 +kind: Deployment +metadata: + name: RELEASE-NAME-edens-frontend + labels: + helm.sh/chart: edens-frontend-0.1.2 + app.kubernetes.io/name: edens-frontend + app.kubernetes.io/instance: RELEASE-NAME + app_name: edens-frontend + app.kubernetes.io/version: "1.0.2" + app.kubernetes.io/managed-by: Helm +spec: + replicas: 1 + selector: + matchLabels: + app.kubernetes.io/name: edens-frontend + app.kubernetes.io/instance: RELEASE-NAME + app_name: edens-frontend + template: + metadata: + labels: + app.kubernetes.io/name: edens-frontend + app.kubernetes.io/instance: RELEASE-NAME + app_name: edens-frontend + spec: + serviceAccountName: application-sa + securityContext: + {} + volumes: + - name: tmp + hostPath: + path: /tmp/tomcat + - name: config + configMap: + name: "RELEASE-NAME-edens-frontend-mount" + # An array of keys from the ConfigMap to create as files + items: + - key: logback.xml + path: logback.xml + containers: + - name: edens-frontend + securityContext: + {} + image: "858112783435.dkr.ecr.eu-west-2.amazonaws.com/fineract-ui-edens:edenscapital-dev" + imagePullPolicy: Always + volumeMounts: + - name: tmp + mountPath: /data/tomcat + - name: config + mountPath: /app/resources/logback.xml + subPath: logback.xml + readOnly: true + envFrom: + - configMapRef: + name: RELEASE-NAME-edens-frontend + ports: + - name: http + containerPort: 80 + protocol: TCP + resources: + limits: + cpu: 512m + memory: 1024Mi + requests: + cpu: 512m + memory: 512Mi +--- +# Source: eden-ui/charts/edens-frontend/templates/ingress.yaml +apiVersion: networking.k8s.io/v1beta1 +kind: Ingress +metadata: + name: RELEASE-NAME-edens-frontend + labels: + helm.sh/chart: edens-frontend-0.1.2 + app.kubernetes.io/name: edens-frontend + app.kubernetes.io/instance: RELEASE-NAME + app_name: edens-frontend + app.kubernetes.io/version: "1.0.2" + app.kubernetes.io/managed-by: Helm + annotations: + cert-manager.io/cluster-issuer: letsencrypt-prod-issuer + kubernetes.io/ingress.class: nginx +spec: + tls: + - hosts: + - "mifos.edens360.com" + secretName: fineract-tls + rules: + - host: "mifos.edens360.com" + http: + paths: + - path: / + pathType: ImplementationSpecific + backend: + serviceName: RELEASE-NAME-edens-frontend + servicePort: 80 diff --git a/charts/values.yaml b/charts/values.yaml new file mode 100644 index 00000000..56535535 --- /dev/null +++ b/charts/values.yaml @@ -0,0 +1,44 @@ +edens-frontend: + configFiles: + - mountPath: "/app/resources/logback.xml" + mountFileName: "logback.xml" + fileName: "config/logback.xml" + replicaCount: 1 + repository: "858112783435.dkr.ecr.eu-west-2.amazonaws.com/fineract-ui-edens" + pullPolicy: Always + tag: "edenscapital-dev" + env: + FINERACT_DOMAIN: "mifos.edens360.com" + FINERACT_BASE_URL: "/fineract-provider/api/v1" + FINERACT_PROXY_URL: "http://backend-edens-backend" + DOLLAR: "$" + containerPort: 80 + service: + type: ClusterIP + servicePorts: + - port: 80 + targetPort: 80 + protocol: TCP + name: http + autoscaling: + enabled: false + serviceAccount: + name: application-sa + ingress: + enabled: true + tls: + - hosts: + - "mifos.edens360.com" + secretName: "fineract-tls" + host: "mifos.edens360.com" + path: "/" + pathType: ImplementationSpecific + annotations: + cert-manager.io/cluster-issuer: "letsencrypt-prod-issuer" + resources: + requests: + cpu: 512m + memory: 512Mi + limits: + cpu: 512m + memory: 1024Mi \ No newline at end of file diff --git a/conf/default.conf.template b/conf/default.conf.template index 4e5bc445..b7366245 100644 --- a/conf/default.conf.template +++ b/conf/default.conf.template @@ -1,59 +1,74 @@ #server { - # listen 80 default_server; - # listen [::]:80 default_server; - # server_name _; - # return 301 https://${DOLLAR}host${DOLLAR}request_uri; - #} - - # site - - server { - listen 80; - - - resolver 8.8.8.8 8.8.4.4 valid=300s; - resolver_timeout 5s; - add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload"; - add_header X-Frame-Options DENY; - add_header X-Content-Type-Options nosniff; - add_header Access-Control-Allow_Credentials true; - add_header 'Access-Control-Allow-Headers' 'Authorization,Accept,Origin,DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range'; - add_header 'Access-Control-Allow-Methods' 'GET,POST,OPTIONS,PUT,DELETE,PATCH'; - - error_page 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 420 422 423 424 426 428 429 431 444 449 450 451 500 501 502 503 504 505 506 507 508 509 510 511 /error.html; - - proxy_cookie_path / "/; HttpOnly; Secure"; - - location / { - root /usr/share/nginx/html; - } - - location ^~ /_health { - types { } default_type "text/plain; charset=utf-8"; - return 200 "UP"; - } - - location ^~ /self { - root /usr/share/nginx/html/self; - } - - location ${FINERACT_BASE_URL} { - error_log /var/log/nginx/error.log error; - access_log off; - - proxy_pass ${FINERACT_PROXY_URL}; - proxy_http_version 1.1; - proxy_ssl_server_name on; - proxy_read_timeout 600; - proxy_set_header Upgrade ${DOLLAR}http_upgrade; - proxy_set_header Connection "upgrade"; - proxy_set_header Host ${DOLLAR}host; - proxy_set_header X-Forwarded-Host ${DOLLAR}host:${DOLLAR}server_port; - proxy_set_header X-Forwarded-Server ${DOLLAR}host; - proxy_set_header X-Forwarded-Proto ${DOLLAR}scheme; - proxy_set_header X-Forwarded-For ${DOLLAR}proxy_add_x_forwarded_for; - proxy_set_header X-Real-IP ${DOLLAR}remote_addr; - #proxy_pass_header X-XSRF-TOKEN; - } +# listen 80 default_server; +# listen [::]:80 default_server; +# server_name _; +# return 301 https://${DOLLAR}host${DOLLAR}request_uri; +#} + +# site + +server { + listen 80; + listen 443 default_server ssl http2; + listen [::]:443 ssl http2 default_server; + server_name ${FINERACT_DOMAIN}; + + server_tokens off; + + ssl_certificate /etc/ssl/keys/cert.pem; + ssl_certificate_key /etc/ssl/keys/key.pem; + + ssl_protocols TLSv1.2; + ssl_prefer_server_ciphers on; + ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH"; + #ssl_ecdh_curve secp384r1; # Requires nginx >= 1.1.0 + ssl_ecdh_curve prime256v1; # FIX: Android 7.0 bug + ssl_session_cache shared:SSL:10m; + ssl_session_tickets off; # Requires nginx >= 1.5.9 + ssl_stapling on; # Requires nginx >= 1.3.7 + ssl_stapling_verify on; # Requires nginx => 1.3.7 + resolver 8.8.8.8 8.8.4.4 valid=300s; + resolver_timeout 5s; + add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload"; + add_header X-Frame-Options DENY; + add_header X-Content-Type-Options nosniff; + add_header Access-Control-Allow_Credentials true; + add_header 'Access-Control-Allow-Headers' 'Authorization,Accept,Origin,DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range'; + add_header 'Access-Control-Allow-Methods' 'GET,POST,OPTIONS,PUT,DELETE,PATCH'; + + error_page 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 420 422 423 424 426 428 429 431 444 449 450 451 500 501 502 503 504 505 506 507 508 509 510 511 /error.html; + + proxy_cookie_path / "/; HttpOnly; Secure"; + + location / { + root /usr/share/nginx/html; + } + + location ^~ /_health { + types { } default_type "text/plain; charset=utf-8"; + return 200 "UP"; + } + + location ^~ /self { + root /usr/share/nginx/html/self; + } + + location ${FINERACT_BASE_URL} { + error_log /var/log/nginx/error.log error; + access_log off; + + proxy_pass ${FINERACT_PROXY_URL}; + proxy_http_version 1.1; + proxy_ssl_server_name on; + proxy_read_timeout 600; + proxy_set_header Upgrade ${DOLLAR}http_upgrade; + proxy_set_header Connection "upgrade"; + proxy_set_header Host ${DOLLAR}host; + proxy_set_header X-Forwarded-Host ${DOLLAR}host:${DOLLAR}server_port; + proxy_set_header X-Forwarded-Server ${DOLLAR}host; + proxy_set_header X-Forwarded-Proto ${DOLLAR}scheme; + proxy_set_header X-Forwarded-For ${DOLLAR}proxy_add_x_forwarded_for; + proxy_set_header X-Real-IP ${DOLLAR}remote_addr; + #proxy_pass_header X-XSRF-TOKEN; } - +} \ No newline at end of file diff --git a/conf/default.conf.template.bak b/conf/default.conf.template.bak new file mode 100644 index 00000000..4e5bc445 --- /dev/null +++ b/conf/default.conf.template.bak @@ -0,0 +1,59 @@ +#server { + # listen 80 default_server; + # listen [::]:80 default_server; + # server_name _; + # return 301 https://${DOLLAR}host${DOLLAR}request_uri; + #} + + # site + + server { + listen 80; + + + resolver 8.8.8.8 8.8.4.4 valid=300s; + resolver_timeout 5s; + add_header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload"; + add_header X-Frame-Options DENY; + add_header X-Content-Type-Options nosniff; + add_header Access-Control-Allow_Credentials true; + add_header 'Access-Control-Allow-Headers' 'Authorization,Accept,Origin,DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Content-Range,Range'; + add_header 'Access-Control-Allow-Methods' 'GET,POST,OPTIONS,PUT,DELETE,PATCH'; + + error_page 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 420 422 423 424 426 428 429 431 444 449 450 451 500 501 502 503 504 505 506 507 508 509 510 511 /error.html; + + proxy_cookie_path / "/; HttpOnly; Secure"; + + location / { + root /usr/share/nginx/html; + } + + location ^~ /_health { + types { } default_type "text/plain; charset=utf-8"; + return 200 "UP"; + } + + location ^~ /self { + root /usr/share/nginx/html/self; + } + + location ${FINERACT_BASE_URL} { + error_log /var/log/nginx/error.log error; + access_log off; + + proxy_pass ${FINERACT_PROXY_URL}; + proxy_http_version 1.1; + proxy_ssl_server_name on; + proxy_read_timeout 600; + proxy_set_header Upgrade ${DOLLAR}http_upgrade; + proxy_set_header Connection "upgrade"; + proxy_set_header Host ${DOLLAR}host; + proxy_set_header X-Forwarded-Host ${DOLLAR}host:${DOLLAR}server_port; + proxy_set_header X-Forwarded-Server ${DOLLAR}host; + proxy_set_header X-Forwarded-Proto ${DOLLAR}scheme; + proxy_set_header X-Forwarded-For ${DOLLAR}proxy_add_x_forwarded_for; + proxy_set_header X-Real-IP ${DOLLAR}remote_addr; + #proxy_pass_header X-XSRF-TOKEN; + } + } + diff --git a/static/html/.nojekyll b/static/html/.nojekyll new file mode 100644 index 00000000..e69de29b diff --git a/static/html/50x.html b/static/html/50x.html new file mode 100644 index 00000000..9071e0a2 --- /dev/null +++ b/static/html/50x.html @@ -0,0 +1,21 @@ + + + +Error + + + +

An error occurred.

+

Sorry, the page you are looking for is currently unavailable.
+Please try again later.

+

If you are the system administrator of this resource then you should check +the error log for details.

+

Faithfully yours, nginx.

+ + diff --git a/static/html/SpecRunner.html b/static/html/SpecRunner.html new file mode 100644 index 00000000..a7882952 --- /dev/null +++ b/static/html/SpecRunner.html @@ -0,0 +1,98 @@ + + + + Jasmine Spec Runner + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/static/html/angular/i18n/angular-locale_en.js b/static/html/angular/i18n/angular-locale_en.js new file mode 100644 index 00000000..ae07737c --- /dev/null +++ b/static/html/angular/i18n/angular-locale_en.js @@ -0,0 +1,99 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "AM", + "PM" + ], + "DAY": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ], + "MONTH": [ + "January", + "February", + "March", + "April", + "May", + "June", + "July", + "August", + "September", + "October", + "November", + "December" + ], + "SHORTDAY": [ + "Sun", + "Mon", + "Tue", + "Wed", + "Thu", + "Fri", + "Sat" + ], + "SHORTMONTH": [ + "Jan", + "Feb", + "Mar", + "Apr", + "May", + "Jun", + "Jul", + "Aug", + "Sep", + "Oct", + "Nov", + "Dec" + ], + "fullDate": "EEEE, MMMM d, y", + "longDate": "MMMM d, y", + "medium": "MMM d, y h:mm:ss a", + "mediumDate": "MMM d, y", + "mediumTime": "h:mm:ss a", + "short": "M/d/yy h:mm a", + "shortDate": "M/d/yy", + "shortTime": "h:mm a" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "$", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "macFrac": 0, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "macFrac": 0, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "(\u00a4", + "negSuf": ")", + "posPre": "\u00a4", + "posSuf": "" + } + ] + }, + "id": "en", + "pluralCat": function (n) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); \ No newline at end of file diff --git a/static/html/angular/i18n/angular-locale_es.js b/static/html/angular/i18n/angular-locale_es.js new file mode 100644 index 00000000..91aba876 --- /dev/null +++ b/static/html/angular/i18n/angular-locale_es.js @@ -0,0 +1,99 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "a.m.", + "p.m." + ], + "DAY": [ + "domingo", + "lunes", + "martes", + "mi\u00e9rcoles", + "jueves", + "viernes", + "s\u00e1bado" + ], + "MONTH": [ + "enero", + "febrero", + "marzo", + "abril", + "mayo", + "junio", + "julio", + "agosto", + "septiembre", + "octubre", + "noviembre", + "diciembre" + ], + "SHORTDAY": [ + "dom", + "lun", + "mar", + "mi\u00e9", + "jue", + "vie", + "s\u00e1b" + ], + "SHORTMONTH": [ + "ene", + "feb", + "mar", + "abr", + "may", + "jun", + "jul", + "ago", + "sep", + "oct", + "nov", + "dic" + ], + "fullDate": "EEEE, d 'de' MMMM 'de' y", + "longDate": "d 'de' MMMM 'de' y", + "medium": "dd/MM/yyyy HH:mm:ss", + "mediumDate": "dd/MM/yyyy", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/yy HH:mm", + "shortDate": "dd/MM/yy", + "shortTime": "HH:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20ac", + "DECIMAL_SEP": ",", + "GROUP_SEP": ".", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "macFrac": 0, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "macFrac": 0, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" + } + ] + }, + "id": "es", + "pluralCat": function (n) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); \ No newline at end of file diff --git a/static/html/angular/i18n/angular-locale_fr.js b/static/html/angular/i18n/angular-locale_fr.js new file mode 100644 index 00000000..b45cdc2b --- /dev/null +++ b/static/html/angular/i18n/angular-locale_fr.js @@ -0,0 +1,99 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "AM", + "PM" + ], + "DAY": [ + "dimanche", + "lundi", + "mardi", + "mercredi", + "jeudi", + "vendredi", + "samedi" + ], + "MONTH": [ + "janvier", + "f\u00e9vrier", + "mars", + "avril", + "mai", + "juin", + "juillet", + "ao\u00fbt", + "septembre", + "octobre", + "novembre", + "d\u00e9cembre" + ], + "SHORTDAY": [ + "dim.", + "lun.", + "mar.", + "mer.", + "jeu.", + "ven.", + "sam." + ], + "SHORTMONTH": [ + "janv.", + "f\u00e9vr.", + "mars", + "avr.", + "mai", + "juin", + "juil.", + "ao\u00fbt", + "sept.", + "oct.", + "nov.", + "d\u00e9c." + ], + "fullDate": "EEEE d MMMM y", + "longDate": "d MMMM y", + "medium": "d MMM y HH:mm:ss", + "mediumDate": "d MMM y", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/yy HH:mm", + "shortDate": "dd/MM/yy", + "shortTime": "HH:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20ac", + "DECIMAL_SEP": ",", + "GROUP_SEP": "\u00a0", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "macFrac": 0, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "macFrac": 0, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "(", + "negSuf": "\u00a0\u00a4)", + "posPre": "", + "posSuf": "\u00a0\u00a4" + } + ] + }, + "id": "fr", + "pluralCat": function (n) { if (n >= 0 && n <= 2 && n != 2) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); \ No newline at end of file diff --git a/static/html/angular/i18n/angular-locale_hi.js b/static/html/angular/i18n/angular-locale_hi.js new file mode 100644 index 00000000..165c639e --- /dev/null +++ b/static/html/angular/i18n/angular-locale_hi.js @@ -0,0 +1,99 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "am", + "pm" + ], + "DAY": [ + "\u0930\u0935\u093f\u0935\u093e\u0930", + "\u0938\u094b\u092e\u0935\u093e\u0930", + "\u092e\u0902\u0917\u0932\u0935\u093e\u0930", + "\u092c\u0941\u0927\u0935\u093e\u0930", + "\u092c\u0943\u0939\u0938\u094d\u092a\u0924\u093f\u0935\u093e\u0930", + "\u0936\u0941\u0915\u094d\u0930\u0935\u093e\u0930", + "\u0936\u0928\u093f\u0935\u093e\u0930" + ], + "MONTH": [ + "\u091c\u0928\u0935\u0930\u0940", + "\u092b\u0930\u0935\u0930\u0940", + "\u092e\u093e\u0930\u094d\u091a", + "\u0905\u092a\u094d\u0930\u0948\u0932", + "\u092e\u0908", + "\u091c\u0942\u0928", + "\u091c\u0941\u0932\u093e\u0908", + "\u0905\u0917\u0938\u094d\u0924", + "\u0938\u093f\u0924\u092e\u094d\u092c\u0930", + "\u0905\u0915\u094d\u0924\u0942\u092c\u0930", + "\u0928\u0935\u092e\u094d\u092c\u0930", + "\u0926\u093f\u0938\u092e\u094d\u092c\u0930" + ], + "SHORTDAY": [ + "\u0930\u0935\u093f.", + "\u0938\u094b\u092e.", + "\u092e\u0902\u0917\u0932.", + "\u092c\u0941\u0927.", + "\u092c\u0943\u0939.", + "\u0936\u0941\u0915\u094d\u0930.", + "\u0936\u0928\u093f." + ], + "SHORTMONTH": [ + "\u091c\u0928\u0935\u0930\u0940", + "\u092b\u0930\u0935\u0930\u0940", + "\u092e\u093e\u0930\u094d\u091a", + "\u0905\u092a\u094d\u0930\u0948\u0932", + "\u092e\u0908", + "\u091c\u0942\u0928", + "\u091c\u0941\u0932\u093e\u0908", + "\u0905\u0917\u0938\u094d\u0924", + "\u0938\u093f\u0924\u092e\u094d\u092c\u0930", + "\u0905\u0915\u094d\u0924\u0942\u092c\u0930", + "\u0928\u0935\u092e\u094d\u092c\u0930", + "\u0926\u093f\u0938\u092e\u094d\u092c\u0930" + ], + "fullDate": "EEEE, d MMMM y", + "longDate": "d MMMM y", + "medium": "dd-MM-yyyy h:mm:ss a", + "mediumDate": "dd-MM-yyyy", + "mediumTime": "h:mm:ss a", + "short": "d-M-yy h:mm a", + "shortDate": "d-M-yy", + "shortTime": "h:mm a" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u20b9", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", + "PATTERNS": [ + { + "gSize": 2, + "lgSize": 3, + "macFrac": 0, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 2, + "lgSize": 3, + "macFrac": 0, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "\u00a4\u00a0-", + "negSuf": "", + "posPre": "\u00a4\u00a0", + "posSuf": "" + } + ] + }, + "id": "hi", + "pluralCat": function (n) { if (n == 0 || n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); \ No newline at end of file diff --git a/static/html/angular/i18n/angular-locale_ka.js b/static/html/angular/i18n/angular-locale_ka.js new file mode 100644 index 00000000..2c4c53d1 --- /dev/null +++ b/static/html/angular/i18n/angular-locale_ka.js @@ -0,0 +1,99 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "\u10d3\u10d8\u10da\u10d8\u10e1", + "\u10e1\u10d0\u10e6\u10d0\u10db\u10dd\u10e1" + ], + "DAY": [ + "\u10d9\u10d5\u10d8\u10e0\u10d0", + "\u10dd\u10e0\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8", + "\u10e1\u10d0\u10db\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8", + "\u10dd\u10d7\u10ee\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8", + "\u10ee\u10e3\u10d7\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8", + "\u10de\u10d0\u10e0\u10d0\u10e1\u10d9\u10d4\u10d5\u10d8", + "\u10e8\u10d0\u10d1\u10d0\u10d7\u10d8" + ], + "MONTH": [ + "\u10d8\u10d0\u10dc\u10d5\u10d0\u10e0\u10d8", + "\u10d7\u10d4\u10d1\u10d4\u10e0\u10d5\u10d0\u10da\u10d8", + "\u10db\u10d0\u10e0\u10e2\u10d8", + "\u10d0\u10de\u10e0\u10d8\u10da\u10d8", + "\u10db\u10d0\u10d8\u10e1\u10d8", + "\u10d8\u10d5\u10dc\u10d8\u10e1\u10d8", + "\u10d8\u10d5\u10da\u10d8\u10e1\u10d8", + "\u10d0\u10d2\u10d5\u10d8\u10e1\u10e2\u10dd", + "\u10e1\u10d4\u10e5\u10e2\u10d4\u10db\u10d1\u10d4\u10e0\u10d8", + "\u10dd\u10e5\u10e2\u10dd\u10db\u10d1\u10d4\u10e0\u10d8", + "\u10dc\u10dd\u10d4\u10db\u10d1\u10d4\u10e0\u10d8", + "\u10d3\u10d4\u10d9\u10d4\u10db\u10d1\u10d4\u10e0\u10d8" + ], + "SHORTDAY": [ + "\u10d9\u10d5\u10d8", + "\u10dd\u10e0\u10e8", + "\u10e1\u10d0\u10db", + "\u10dd\u10d7\u10ee", + "\u10ee\u10e3\u10d7", + "\u10de\u10d0\u10e0", + "\u10e8\u10d0\u10d1" + ], + "SHORTMONTH": [ + "\u10d8\u10d0\u10dc", + "\u10d7\u10d4\u10d1", + "\u10db\u10d0\u10e0", + "\u10d0\u10de\u10e0", + "\u10db\u10d0\u10d8", + "\u10d8\u10d5\u10dc", + "\u10d8\u10d5\u10da", + "\u10d0\u10d2\u10d5", + "\u10e1\u10d4\u10e5", + "\u10dd\u10e5\u10e2", + "\u10dc\u10dd\u10d4", + "\u10d3\u10d4\u10d9" + ], + "fullDate": "EEEE, dd MMMM, y", + "longDate": "d MMMM, y", + "medium": "d MMM, y HH:mm:ss", + "mediumDate": "d MMM, y", + "mediumTime": "HH:mm:ss", + "short": "dd.MM.yy HH:mm", + "shortDate": "dd.MM.yy", + "shortTime": "HH:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "GEL", + "DECIMAL_SEP": ",", + "GROUP_SEP": "\u00a0", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "macFrac": 0, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "macFrac": 0, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "-", + "negSuf": "\u00a0\u00a4", + "posPre": "", + "posSuf": "\u00a0\u00a4" + } + ] + }, + "id": "ka", + "pluralCat": function (n, opt_precision) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); \ No newline at end of file diff --git a/static/html/angular/i18n/angular-locale_pt.js b/static/html/angular/i18n/angular-locale_pt.js new file mode 100644 index 00000000..b9be5cc6 --- /dev/null +++ b/static/html/angular/i18n/angular-locale_pt.js @@ -0,0 +1,99 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "AM", + "PM" + ], + "DAY": [ + "domingo", + "segunda-feira", + "ter\u00e7a-feira", + "quarta-feira", + "quinta-feira", + "sexta-feira", + "s\u00e1bado" + ], + "MONTH": [ + "janeiro", + "fevereiro", + "mar\u00e7o", + "abril", + "maio", + "junho", + "julho", + "agosto", + "setembro", + "outubro", + "novembro", + "dezembro" + ], + "SHORTDAY": [ + "dom", + "seg", + "ter", + "qua", + "qui", + "sex", + "s\u00e1b" + ], + "SHORTMONTH": [ + "jan", + "fev", + "mar", + "abr", + "mai", + "jun", + "jul", + "ago", + "set", + "out", + "nov", + "dez" + ], + "fullDate": "EEEE, d 'de' MMMM 'de' y", + "longDate": "d 'de' MMMM 'de' y", + "medium": "dd/MM/yyyy HH:mm:ss", + "mediumDate": "dd/MM/yyyy", + "mediumTime": "HH:mm:ss", + "short": "dd/MM/yy HH:mm", + "shortDate": "dd/MM/yy", + "shortTime": "HH:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "R$", + "DECIMAL_SEP": ",", + "GROUP_SEP": ".", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "macFrac": 0, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "macFrac": 0, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "(\u00a4", + "negSuf": ")", + "posPre": "\u00a4", + "posSuf": "" + } + ] + }, + "id": "pt", + "pluralCat": function (n) { if (n == 1) { return PLURAL_CATEGORY.ONE; } return PLURAL_CATEGORY.OTHER;} +}); +}]); \ No newline at end of file diff --git a/static/html/angular/i18n/angular-locale_zh_cn.js b/static/html/angular/i18n/angular-locale_zh_cn.js new file mode 100644 index 00000000..787d1fd2 --- /dev/null +++ b/static/html/angular/i18n/angular-locale_zh_cn.js @@ -0,0 +1,99 @@ +'use strict'; +angular.module("ngLocale", [], ["$provide", function($provide) { +var PLURAL_CATEGORY = {ZERO: "zero", ONE: "one", TWO: "two", FEW: "few", MANY: "many", OTHER: "other"}; +$provide.value("$locale", { + "DATETIME_FORMATS": { + "AMPMS": [ + "\u4e0a\u5348", + "\u4e0b\u5348" + ], + "DAY": [ + "\u661f\u671f\u65e5", + "\u661f\u671f\u4e00", + "\u661f\u671f\u4e8c", + "\u661f\u671f\u4e09", + "\u661f\u671f\u56db", + "\u661f\u671f\u4e94", + "\u661f\u671f\u516d" + ], + "MONTH": [ + "1\u6708", + "2\u6708", + "3\u6708", + "4\u6708", + "5\u6708", + "6\u6708", + "7\u6708", + "8\u6708", + "9\u6708", + "10\u6708", + "11\u6708", + "12\u6708" + ], + "SHORTDAY": [ + "\u5468\u65e5", + "\u5468\u4e00", + "\u5468\u4e8c", + "\u5468\u4e09", + "\u5468\u56db", + "\u5468\u4e94", + "\u5468\u516d" + ], + "SHORTMONTH": [ + "1\u6708", + "2\u6708", + "3\u6708", + "4\u6708", + "5\u6708", + "6\u6708", + "7\u6708", + "8\u6708", + "9\u6708", + "10\u6708", + "11\u6708", + "12\u6708" + ], + "fullDate": "y\u5e74M\u6708d\u65e5EEEE", + "longDate": "y\u5e74M\u6708d\u65e5", + "medium": "yyyy-M-d ah:mm:ss", + "mediumDate": "yyyy-M-d", + "mediumTime": "ah:mm:ss", + "short": "yy-M-d ah:mm", + "shortDate": "yy-M-d", + "shortTime": "ah:mm" + }, + "NUMBER_FORMATS": { + "CURRENCY_SYM": "\u00a5", + "DECIMAL_SEP": ".", + "GROUP_SEP": ",", + "PATTERNS": [ + { + "gSize": 3, + "lgSize": 3, + "macFrac": 0, + "maxFrac": 3, + "minFrac": 0, + "minInt": 1, + "negPre": "-", + "negSuf": "", + "posPre": "", + "posSuf": "" + }, + { + "gSize": 3, + "lgSize": 3, + "macFrac": 0, + "maxFrac": 2, + "minFrac": 2, + "minInt": 1, + "negPre": "(\u00a4", + "negSuf": ")", + "posPre": "\u00a4", + "posSuf": "" + } + ] + }, + "id": "zh-cn", + "pluralCat": function (n) { return PLURAL_CATEGORY.OTHER;} +}); +}]); \ No newline at end of file diff --git a/static/html/bower_components/angular-animate/angular-animate.min.js b/static/html/bower_components/angular-animate/angular-animate.min.js new file mode 100644 index 00000000..96dcfb63 --- /dev/null +++ b/static/html/bower_components/angular-animate/angular-animate.min.js @@ -0,0 +1,59 @@ +/* + AngularJS v1.7.9 + (c) 2010-2018 Google, Inc. http://angularjs.org + License: MIT +*/ +(function(Y,z){'use strict';function Fa(a,b,c){if(!a)throw Pa("areq",b||"?",c||"required");return a}function Ga(a,b){if(!a&&!b)return"";if(!a)return b;if(!b)return a;Z(a)&&(a=a.join(" "));Z(b)&&(b=b.join(" "));return a+" "+b}function Qa(a){var b={};a&&(a.to||a.from)&&(b.to=a.to,b.from=a.from);return b}function $(a,b,c){var d="";a=Z(a)?a:a&&G(a)&&a.length?a.split(/\s+/):[];s(a,function(a,k){a&&0=a&&(a=t,t=0,b.push(f),f=[]);f.push(g);g.children.forEach(function(a){t++;c.push(a)});a--}f.length&&b.push(f);return b}(c)}var C=[],U=aa(a);return function(e, +H,u){function t(a){a=a.hasAttribute("ng-animate-ref")?[a]:a.querySelectorAll("[ng-animate-ref]");var b=[];s(a,function(a){var c=a.getAttribute("ng-animate-ref");c&&c.length&&b.push(a)});return b}function I(a){var b=[],c={};s(a,function(a,d){var l=K(a.element),g=0<=["enter","move"].indexOf(a.event),l=a.structural?t(l):[];if(l.length){var f=g?"to":"from";s(l,function(a){var b=a.getAttribute("ng-animate-ref");c[b]=c[b]||{};c[b][f]={animationID:d,element:A(a)}})}else b.push(a)});var d={},g={};s(c,function(c, +t){var f=c.from,e=c.to;if(f&&e){var h=a[f.animationID],k=a[e.animationID],E=f.animationID.toString();if(!g[E]){var I=g[E]={structural:!0,beforeStart:function(){h.beforeStart();k.beforeStart()},close:function(){h.close();k.close()},classes:da(h.classes,k.classes),from:h,to:k,anchors:[]};I.classes.length?b.push(I):(b.push(h),b.push(k))}g[E].anchors.push({out:f.element,"in":e.element})}else f=f?f.animationID:e.animationID,e=f.toString(),d[e]||(d[e]=!0,b.push(a[f]))});return b}function da(a,b){a=a.split(" "); +b=b.split(" ");for(var c=[],d=0;d=G&&b>=D&&(la=!0,v()))}function F(){function b(){if(!P){u(!1);s(y,function(a){l.style[a[0]]=a[1]});H(a,g);c.addClass(a,ba);if(p.recalculateTimingStyles){T=l.getAttribute("class")+" "+V;ka=k.cacheKey(l,ja,g.addClass,g.removeClass);r=z(l,T,ka,!1);ga=r.maxDelay;W= +Math.max(ga,0);D=r.maxDuration;if(0===D){v();return}p.hasTransitions=0n.expectedEndTime)?f.cancel(n.timer):h.push(v)}F&&(m=f(d,m,!1),h[0]={timer:m,expectedEndTime:e},h.push(v),a.data("$$animateCss",h));if(w.length)a.on(w.join(" "),q);g.to&&(g.cleanupStyles&&Ma(E,l,Object.keys(g.to)),Ja(a,g))}}function d(){var b=a.data("$$animateCss");if(b){for(var c=1;c1){q[d].element.data(r,c.direction);var j=p.getCurrentIndex();angular.isNumber(j)&&q[j].element&&q[j].element.data(r,c.direction),a.$currentTransition=!0,e.on("addClass",q[d].element,function(b,c){if("close"===c&&(a.$currentTransition=null,e.off("addClass",b),t.length)){var d=t.pop().slide,g=d.index,i=g>p.getCurrentIndex()?"next":"prev";f(),h(d,g,i)}})}a.active=c.index,s=c.index,g(d),l()}}function i(a){for(var b=0;b0&&(n=c(m,b))}function m(){var b=+a.interval;o&&!isNaN(b)&&b>0&&q.length?a.next():a.pause()}var n,o,p=this,q=p.slides=a.slides=[],r="uib-slideDirection",s=a.active,t=[],u=!1;p.addSlide=function(b,c){q.push({slide:b,element:c}),q.sort(function(a,b){return+a.slide.index-+b.slide.index}),(b.index===a.active||1===q.length&&!angular.isNumber(a.active))&&(a.$currentTransition&&(a.$currentTransition=null),s=b.index,a.active=b.index,g(s),p.select(q[i(b)]),1===q.length&&a.play())},p.getCurrentIndex=function(){for(var a=0;a0&&s===c?c>=q.length?(s=q.length-1,a.active=s,g(s),p.select(q[q.length-1])):(s=c,a.active=s,g(s),p.select(q[c])):s>c&&(s--,a.active=s),0===q.length&&(s=null,a.active=null,f())},p.select=a.select=function(b,c){var d=i(b.slide);void 0===c&&(c=d>p.getCurrentIndex()?"next":"prev"),b.slide.index===s||a.$currentTransition?b&&b.slide.index!==s&&a.$currentTransition&&t.push(q[d]):h(b.slide,d,c)},a.indexOfSlide=function(a){return+a.slide.index},a.isActive=function(b){return a.active===b.slide.index},a.isPrevDisabled=function(){return 0===a.active&&a.noWrap()},a.isNextDisabled=function(){return a.active===q.length-1&&a.noWrap()},a.pause=function(){a.noPause||(o=!1,j())},a.play=function(){o||(o=!0,l())},a.$on("$destroy",function(){u=!0,j()}),a.$watch("noTransition",function(a){e.enabled(b,!a)}),a.$watch("interval",l),a.$watchCollection("slides",k),a.$watch("active",function(a){if(angular.isNumber(a)&&s!==a){for(var b=0;b-1){var g=!1;a=a.split("");for(var h=f;h-1){a=a.split(""),e[f]="("+d.regex+")",a[f]="$";for(var g=f+1,h=f+d.key.length;h>g;g++)e[g]="",a[g]="$";a=a.join(""),c.push({index:f,key:d.key,apply:d[b],matcher:d.regex})}}),{regex:new RegExp("^"+e.join("")+"$"),map:d(c,"index")}}function f(a,b,c){return 1>c?!1:1===b&&c>28?29===c&&(a%4===0&&a%100!==0||a%400===0):3===b||5===b||8===b||10===b?31>c:!0}function g(a){return parseInt(a,10)}function h(a,b){return a&&b?l(a,b):a}function i(a,b){return a&&b?l(a,b,!0):a}function j(a,b){var c=Date.parse("Jan 01, 1970 00:00:00 "+a)/6e4;return isNaN(c)?b:c}function k(a,b){return a=new Date(a.getTime()),a.setMinutes(a.getMinutes()+b),a}function l(a,b,c){c=c?-1:1;var d=j(b,a.getTimezoneOffset());return k(a,c*(d-a.getTimezoneOffset()))}var m,n,o=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g;this.init=function(){m=b.id,this.parsers={},this.formatters={},n=[{key:"yyyy",regex:"\\d{4}",apply:function(a){this.year=+a},formatter:function(a){var b=new Date;return b.setFullYear(Math.abs(a.getFullYear())),c(b,"yyyy")}},{key:"yy",regex:"\\d{2}",apply:function(a){a=+a,this.year=69>a?a+2e3:a+1900},formatter:function(a){var b=new Date;return b.setFullYear(Math.abs(a.getFullYear())),c(b,"yy")}},{key:"y",regex:"\\d{1,4}",apply:function(a){this.year=+a},formatter:function(a){var b=new Date;return b.setFullYear(Math.abs(a.getFullYear())),c(b,"y")}},{key:"M!",regex:"0?[1-9]|1[0-2]",apply:function(a){this.month=a-1},formatter:function(a){var b=a.getMonth();return/^[0-9]$/.test(b)?c(a,"MM"):c(a,"M")}},{key:"MMMM",regex:b.DATETIME_FORMATS.MONTH.join("|"),apply:function(a){this.month=b.DATETIME_FORMATS.MONTH.indexOf(a)},formatter:function(a){return c(a,"MMMM")}},{key:"MMM",regex:b.DATETIME_FORMATS.SHORTMONTH.join("|"),apply:function(a){this.month=b.DATETIME_FORMATS.SHORTMONTH.indexOf(a)},formatter:function(a){return c(a,"MMM")}},{key:"MM",regex:"0[1-9]|1[0-2]",apply:function(a){this.month=a-1},formatter:function(a){return c(a,"MM")}},{key:"M",regex:"[1-9]|1[0-2]",apply:function(a){this.month=a-1},formatter:function(a){return c(a,"M")}},{key:"d!",regex:"[0-2]?[0-9]{1}|3[0-1]{1}",apply:function(a){this.date=+a},formatter:function(a){var b=a.getDate();return/^[1-9]$/.test(b)?c(a,"dd"):c(a,"d")}},{key:"dd",regex:"[0-2][0-9]{1}|3[0-1]{1}",apply:function(a){this.date=+a},formatter:function(a){return c(a,"dd")}},{key:"d",regex:"[1-2]?[0-9]{1}|3[0-1]{1}",apply:function(a){this.date=+a},formatter:function(a){return c(a,"d")}},{key:"EEEE",regex:b.DATETIME_FORMATS.DAY.join("|"),formatter:function(a){return c(a,"EEEE")}},{key:"EEE",regex:b.DATETIME_FORMATS.SHORTDAY.join("|"),formatter:function(a){return c(a,"EEE")}},{key:"HH",regex:"(?:0|1)[0-9]|2[0-3]",apply:function(a){this.hours=+a},formatter:function(a){return c(a,"HH")}},{key:"hh",regex:"0[0-9]|1[0-2]",apply:function(a){this.hours=+a},formatter:function(a){return c(a,"hh")}},{key:"H",regex:"1?[0-9]|2[0-3]",apply:function(a){this.hours=+a},formatter:function(a){return c(a,"H")}},{key:"h",regex:"[0-9]|1[0-2]",apply:function(a){this.hours=+a},formatter:function(a){return c(a,"h")}},{key:"mm",regex:"[0-5][0-9]",apply:function(a){this.minutes=+a},formatter:function(a){return c(a,"mm")}},{key:"m",regex:"[0-9]|[1-5][0-9]",apply:function(a){this.minutes=+a},formatter:function(a){return c(a,"m")}},{key:"sss",regex:"[0-9][0-9][0-9]",apply:function(a){this.milliseconds=+a},formatter:function(a){return c(a,"sss")}},{key:"ss",regex:"[0-5][0-9]",apply:function(a){this.seconds=+a},formatter:function(a){return c(a,"ss")}},{key:"s",regex:"[0-9]|[1-5][0-9]",apply:function(a){this.seconds=+a},formatter:function(a){return c(a,"s")}},{key:"a",regex:b.DATETIME_FORMATS.AMPMS.join("|"),apply:function(a){12===this.hours&&(this.hours=0),"PM"===a&&(this.hours+=12)},formatter:function(a){return c(a,"a")}},{key:"Z",regex:"[+-]\\d{4}",apply:function(a){var b=a.match(/([+-])(\d{2})(\d{2})/),c=b[1],d=b[2],e=b[3];this.hours+=g(c+d),this.minutes+=g(c+e)},formatter:function(a){return c(a,"Z")}},{key:"ww",regex:"[0-4][0-9]|5[0-3]",formatter:function(a){return c(a,"ww")}},{key:"w",regex:"[0-9]|[1-4][0-9]|5[0-3]",formatter:function(a){return c(a,"w")}},{key:"GGGG",regex:b.DATETIME_FORMATS.ERANAMES.join("|").replace(/\s/g,"\\s"),formatter:function(a){return c(a,"GGGG")}},{key:"GGG",regex:b.DATETIME_FORMATS.ERAS.join("|"),formatter:function(a){return c(a,"GGG")}},{key:"GG",regex:b.DATETIME_FORMATS.ERAS.join("|"),formatter:function(a){return c(a,"GG")}},{key:"G",regex:b.DATETIME_FORMATS.ERAS.join("|"),formatter:function(a){return c(a,"G")}}]},this.init(),this.filter=function(a,c){if(!angular.isDate(a)||isNaN(a)||!c)return"";c=b.DATETIME_FORMATS[c]||c,b.id!==m&&this.init(),this.formatters[c]||(this.formatters[c]=e(c,"formatter"));var d=this.formatters[c],f=d.map,g=c;return f.reduce(function(b,c,d){var e=g.match(new RegExp("(.*)"+c.key));e&&angular.isString(e[1])&&(b+=e[1],g=g.replace(e[1]+c.key,""));var h=d===f.length-1?g:"";return c.apply?b+c.apply.call(null,a)+h:b+h},"")},this.parse=function(c,d,g){if(!angular.isString(c)||!d)return c;d=b.DATETIME_FORMATS[d]||d,d=d.replace(o,"\\$&"),b.id!==m&&this.init(),this.parsers[d]||(this.parsers[d]=e(d,"apply"));var h=this.parsers[d],i=h.regex,j=h.map,k=c.match(i),l=!1;if(k&&k.length){var n,p;angular.isDate(g)&&!isNaN(g.getTime())?n={year:g.getFullYear(),month:g.getMonth(),date:g.getDate(),hours:g.getHours(),minutes:g.getMinutes(),seconds:g.getSeconds(),milliseconds:g.getMilliseconds()}:(g&&a.warn("dateparser:","baseDate is not a valid date"),n={year:1900,month:0,date:1,hours:0,minutes:0,seconds:0,milliseconds:0});for(var q=1,r=k.length;r>q;q++){var s=j[q-1];"Z"===s.matcher&&(l=!0),s.apply&&s.apply.call(n,k[q])}var t=l?Date.prototype.setUTCFullYear:Date.prototype.setFullYear,u=l?Date.prototype.setUTCHours:Date.prototype.setHours;return f(n.year,n.month,n.date)&&(!angular.isDate(g)||isNaN(g.getTime())||l?(p=new Date(0),t.call(p,n.year,n.month,n.date),u.call(p,n.hours||0,n.minutes||0,n.seconds||0,n.milliseconds||0)):(p=new Date(g),t.call(p,n.year,n.month,n.date),u.call(p,n.hours,n.minutes,n.seconds,n.milliseconds))),p}},this.toTimezone=h,this.fromTimezone=i,this.timezoneToOffset=j,this.addDateMinutes=k,this.convertTimezoneToLocal=l}]),angular.module("ui.bootstrap.isClass",[]).directive("uibIsClass",["$animate",function(a){var b=/^\s*([\s\S]+?)\s+on\s+([\s\S]+?)\s*$/,c=/^\s*([\s\S]+?)\s+for\s+([\s\S]+?)\s*$/;return{restrict:"A",compile:function(d,e){function f(a,b,c){i.push(a),j.push({scope:a,element:b}),o.forEach(function(b,c){g(b,a)}),a.$on("$destroy",h)}function g(b,d){var e=b.match(c),f=d.$eval(e[1]),g=e[2],h=k[b];if(!h){var i=function(b){var c=null;j.some(function(a){var d=a.scope.$eval(m);return d===b?(c=a,!0):void 0}),h.lastActivated!==c&&(h.lastActivated&&a.removeClass(h.lastActivated.element,f),c&&a.addClass(c.element,f),h.lastActivated=c)};k[b]=h={lastActivated:null,scope:d,watchFn:i,compareWithExp:g,watcher:d.$watch(g,i)}}h.watchFn(d.$eval(g))}function h(a){var b=a.targetScope,c=i.indexOf(b);if(i.splice(c,1),j.splice(c,1),i.length){var d=i[0];angular.forEach(k,function(a){a.scope===b&&(a.watcher=d.$watch(a.compareWithExp,a.watchFn),a.scope=d)})}else k={}}var i=[],j=[],k={},l=e.uibIsClass.match(b),m=l[2],n=l[1],o=n.split(",");return f}}}]),angular.module("ui.bootstrap.datepicker",["ui.bootstrap.dateparser","ui.bootstrap.isClass"]).value("$datepickerSuppressError",!1).value("$datepickerLiteralWarning",!0).constant("uibDatepickerConfig",{datepickerMode:"day",formatDay:"dd",formatMonth:"MMMM",formatYear:"yyyy",formatDayHeader:"EEE",formatDayTitle:"MMMM yyyy",formatMonthTitle:"yyyy",maxDate:null,maxMode:"year",minDate:null,minMode:"day",ngModelOptions:{},shortcutPropagation:!1,showWeeks:!0,yearColumns:5,yearRows:4}).controller("UibDatepickerController",["$scope","$attrs","$parse","$interpolate","$locale","$log","dateFilter","uibDatepickerConfig","$datepickerLiteralWarning","$datepickerSuppressError","uibDateParser",function(a,b,c,d,e,f,g,h,i,j,k){function l(b){a.datepickerMode=b,a.datepickerOptions.datepickerMode=b}var m=this,n={$setViewValue:angular.noop},o={},p=[];!!b.datepickerOptions;a.datepickerOptions||(a.datepickerOptions={}),this.modes=["day","month","year"],["customClass","dateDisabled","datepickerMode","formatDay","formatDayHeader","formatDayTitle","formatMonth","formatMonthTitle","formatYear","maxDate","maxMode","minDate","minMode","showWeeks","shortcutPropagation","startingDay","yearColumns","yearRows"].forEach(function(b){switch(b){case"customClass":case"dateDisabled":a[b]=a.datepickerOptions[b]||angular.noop;break;case"datepickerMode":a.datepickerMode=angular.isDefined(a.datepickerOptions.datepickerMode)?a.datepickerOptions.datepickerMode:h.datepickerMode;break;case"formatDay":case"formatDayHeader":case"formatDayTitle":case"formatMonth":case"formatMonthTitle":case"formatYear":m[b]=angular.isDefined(a.datepickerOptions[b])?d(a.datepickerOptions[b])(a.$parent):h[b];break;case"showWeeks":case"shortcutPropagation":case"yearColumns":case"yearRows":m[b]=angular.isDefined(a.datepickerOptions[b])?a.datepickerOptions[b]:h[b];break;case"startingDay":angular.isDefined(a.datepickerOptions.startingDay)?m.startingDay=a.datepickerOptions.startingDay:angular.isNumber(h.startingDay)?m.startingDay=h.startingDay:m.startingDay=(e.DATETIME_FORMATS.FIRSTDAYOFWEEK+8)%7;break;case"maxDate":case"minDate":a.$watch("datepickerOptions."+b,function(a){a?angular.isDate(a)?m[b]=k.fromTimezone(new Date(a),o.timezone):(i&&f.warn("Literal date support has been deprecated, please switch to date object usage"),m[b]=new Date(g(a,"medium"))):m[b]=h[b]?k.fromTimezone(new Date(h[b]),o.timezone):null,m.refreshView()});break;case"maxMode":case"minMode":a.datepickerOptions[b]?a.$watch(function(){return a.datepickerOptions[b]},function(c){m[b]=a[b]=angular.isDefined(c)?c:datepickerOptions[b],("minMode"===b&&m.modes.indexOf(a.datepickerOptions.datepickerMode)m.modes.indexOf(m[b]))&&(a.datepickerMode=m[b],a.datepickerOptions.datepickerMode=m[b])}):m[b]=a[b]=h[b]||null}}),a.uniqueId="datepicker-"+a.$id+"-"+Math.floor(1e4*Math.random()),a.disabled=angular.isDefined(b.disabled)||!1,angular.isDefined(b.ngDisabled)&&p.push(a.$parent.$watch(b.ngDisabled,function(b){a.disabled=b,m.refreshView()})),a.isActive=function(b){return 0===m.compare(b.date,m.activeDate)?(a.activeDateId=b.uid,!0):!1},this.init=function(b){n=b,o=b.$options||h.ngModelOptions,a.datepickerOptions.initDate?(m.activeDate=k.fromTimezone(a.datepickerOptions.initDate,o.timezone)||new Date,a.$watch("datepickerOptions.initDate",function(a){a&&(n.$isEmpty(n.$modelValue)||n.$invalid)&&(m.activeDate=k.fromTimezone(a,o.timezone),m.refreshView())})):m.activeDate=new Date,this.activeDate=n.$modelValue?k.fromTimezone(new Date(n.$modelValue),o.timezone):k.fromTimezone(new Date,o.timezone),n.$render=function(){m.render()}},this.render=function(){if(n.$viewValue){var a=new Date(n.$viewValue),b=!isNaN(a);b?this.activeDate=k.fromTimezone(a,o.timezone):j||f.error('Datepicker directive: "ng-model" value must be a Date object')}this.refreshView()},this.refreshView=function(){if(this.element){a.selectedDt=null,this._refreshView(),a.activeDt&&(a.activeDateId=a.activeDt.uid);var b=n.$viewValue?new Date(n.$viewValue):null;b=k.fromTimezone(b,o.timezone),n.$setValidity("dateDisabled",!b||this.element&&!this.isDisabled(b))}},this.createDateObject=function(b,c){var d=n.$viewValue?new Date(n.$viewValue):null;d=k.fromTimezone(d,o.timezone);var e=new Date;e=k.fromTimezone(e,o.timezone);var f=this.compare(b,e),g={date:b,label:k.filter(b,c),selected:d&&0===this.compare(b,d),disabled:this.isDisabled(b),past:0>f,current:0===f,future:f>0,customClass:this.customClass(b)||null};return d&&0===this.compare(b,d)&&(a.selectedDt=g),m.activeDate&&0===this.compare(g.date,m.activeDate)&&(a.activeDt=g),g},this.isDisabled=function(b){return a.disabled||this.minDate&&this.compare(b,this.minDate)<0||this.maxDate&&this.compare(b,this.maxDate)>0||a.dateDisabled&&a.dateDisabled({date:b,mode:a.datepickerMode})},this.customClass=function(b){return a.customClass({date:b,mode:a.datepickerMode})},this.split=function(a,b){for(var c=[];a.length>0;)c.push(a.splice(0,b));return c},a.select=function(b){if(a.datepickerMode===m.minMode){var c=n.$viewValue?k.fromTimezone(new Date(n.$viewValue),o.timezone):new Date(0,0,0,0,0,0,0);c.setFullYear(b.getFullYear(),b.getMonth(),b.getDate()),c=k.toTimezone(c,o.timezone),n.$setViewValue(c),n.$render()}else m.activeDate=b,l(m.modes[m.modes.indexOf(a.datepickerMode)-1]),a.$emit("uib:datepicker.mode");a.$broadcast("uib:datepicker.focus")},a.move=function(a){var b=m.activeDate.getFullYear()+a*(m.step.years||0),c=m.activeDate.getMonth()+a*(m.step.months||0);m.activeDate.setFullYear(b,c,1),m.refreshView()},a.toggleMode=function(b){b=b||1,a.datepickerMode===m.maxMode&&1===b||a.datepickerMode===m.minMode&&-1===b||(l(m.modes[m.modes.indexOf(a.datepickerMode)+b]),a.$emit("uib:datepicker.mode"))},a.keys={13:"enter",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down"};var q=function(){m.element[0].focus()};a.$on("uib:datepicker.focus",q),a.keydown=function(b){var c=a.keys[b.which];if(c&&!b.shiftKey&&!b.altKey&&!a.disabled)if(b.preventDefault(),m.shortcutPropagation||b.stopPropagation(),"enter"===c||"space"===c){if(m.isDisabled(m.activeDate))return;a.select(m.activeDate)}else!b.ctrlKey||"up"!==c&&"down"!==c?(m.handleKeyDown(c,b),m.refreshView()):a.toggleMode("up"===c?1:-1)},a.$on("$destroy",function(){for(;p.length;)p.shift()()})}]).controller("UibDaypickerController",["$scope","$element","dateFilter",function(a,b,c){function d(a,b){return 1!==b||a%4!==0||a%100===0&&a%400!==0?f[b]:29}function e(a){var b=new Date(a);b.setDate(b.getDate()+4-(b.getDay()||7));var c=b.getTime();return b.setMonth(0),b.setDate(1),Math.floor(Math.round((c-b)/864e5)/7)+1}var f=[31,28,31,30,31,30,31,31,30,31,30,31];this.step={months:1},this.element=b,this.init=function(b){angular.extend(b,this),a.showWeeks=b.showWeeks,b.refreshView()},this.getDates=function(a,b){for(var c,d=new Array(b),e=new Date(a),f=0;b>f;)c=new Date(e),d[f++]=c,e.setDate(e.getDate()+1);return d},this._refreshView=function(){var b=this.activeDate.getFullYear(),d=this.activeDate.getMonth(),f=new Date(this.activeDate);f.setFullYear(b,d,1);var g=this.startingDay-f.getDay(),h=g>0?7-g:-g,i=new Date(f);h>0&&i.setDate(-h+1);for(var j=this.getDates(i,42),k=0;42>k;k++)j[k]=angular.extend(this.createDateObject(j[k],this.formatDay),{secondary:j[k].getMonth()!==d,uid:a.uniqueId+"-"+k});a.labels=new Array(7);for(var l=0;7>l;l++)a.labels[l]={abbr:c(j[l].date,this.formatDayHeader),full:c(j[l].date,"EEEE")};if(a.title=c(this.activeDate,this.formatDayTitle),a.rows=this.split(j,7),a.showWeeks){a.weekNumbers=[];for(var m=(11-this.startingDay)%7,n=a.rows.length,o=0;n>o;o++)a.weekNumbers.push(e(a.rows[o][m].date))}},this.compare=function(a,b){var c=new Date(a.getFullYear(),a.getMonth(),a.getDate()),d=new Date(b.getFullYear(),b.getMonth(),b.getDate());return c.setFullYear(a.getFullYear()),d.setFullYear(b.getFullYear()),c-d},this.handleKeyDown=function(a,b){var c=this.activeDate.getDate();if("left"===a)c-=1;else if("up"===a)c-=7;else if("right"===a)c+=1;else if("down"===a)c+=7;else if("pageup"===a||"pagedown"===a){var e=this.activeDate.getMonth()+("pageup"===a?-1:1);this.activeDate.setMonth(e,1),c=Math.min(d(this.activeDate.getFullYear(),this.activeDate.getMonth()),c)}else"home"===a?c=1:"end"===a&&(c=d(this.activeDate.getFullYear(),this.activeDate.getMonth()));this.activeDate.setDate(c)}}]).controller("UibMonthpickerController",["$scope","$element","dateFilter",function(a,b,c){this.step={years:1},this.element=b,this.init=function(a){angular.extend(a,this),a.refreshView()},this._refreshView=function(){for(var b,d=new Array(12),e=this.activeDate.getFullYear(),f=0;12>f;f++)b=new Date(this.activeDate),b.setFullYear(e,f,1),d[f]=angular.extend(this.createDateObject(b,this.formatMonth),{uid:a.uniqueId+"-"+f});a.title=c(this.activeDate,this.formatMonthTitle),a.rows=this.split(d,3)},this.compare=function(a,b){var c=new Date(a.getFullYear(),a.getMonth()),d=new Date(b.getFullYear(),b.getMonth());return c.setFullYear(a.getFullYear()),d.setFullYear(b.getFullYear()),c-d},this.handleKeyDown=function(a,b){var c=this.activeDate.getMonth();if("left"===a)c-=1;else if("up"===a)c-=3;else if("right"===a)c+=1;else if("down"===a)c+=3;else if("pageup"===a||"pagedown"===a){var d=this.activeDate.getFullYear()+("pageup"===a?-1:1);this.activeDate.setFullYear(d)}else"home"===a?c=0:"end"===a&&(c=11);this.activeDate.setMonth(c)}}]).controller("UibYearpickerController",["$scope","$element","dateFilter",function(a,b,c){function d(a){return parseInt((a-1)/f,10)*f+1}var e,f;this.element=b,this.yearpickerInit=function(){e=this.yearColumns,f=this.yearRows*e,this.step={years:f}},this._refreshView=function(){for(var b,c=new Array(f),g=0,h=d(this.activeDate.getFullYear());f>g;g++)b=new Date(this.activeDate),b.setFullYear(h+g,0,1),c[g]=angular.extend(this.createDateObject(b,this.formatYear),{uid:a.uniqueId+"-"+g});a.title=[c[0].label,c[f-1].label].join(" - "),a.rows=this.split(c,e),a.columns=e},this.compare=function(a,b){return a.getFullYear()-b.getFullYear()},this.handleKeyDown=function(a,b){var c=this.activeDate.getFullYear();"left"===a?c-=1:"up"===a?c-=e:"right"===a?c+=1:"down"===a?c+=e:"pageup"===a||"pagedown"===a?c+=("pageup"===a?-1:1)*f:"home"===a?c=d(this.activeDate.getFullYear()):"end"===a&&(c=d(this.activeDate.getFullYear())+f-1),this.activeDate.setFullYear(c)}}]).directive("uibDatepicker",function(){return{replace:!0,templateUrl:function(a,b){return b.templateUrl||"uib/template/datepicker/datepicker.html"},scope:{datepickerOptions:"=?"},require:["uibDatepicker","^ngModel"],controller:"UibDatepickerController",controllerAs:"datepicker",link:function(a,b,c,d){var e=d[0],f=d[1];e.init(f)}}}).directive("uibDaypicker",function(){return{replace:!0,templateUrl:function(a,b){return b.templateUrl||"uib/template/datepicker/day.html"},require:["^uibDatepicker","uibDaypicker"],controller:"UibDaypickerController",link:function(a,b,c,d){var e=d[0],f=d[1];f.init(e)}}}).directive("uibMonthpicker",function(){return{replace:!0,templateUrl:function(a,b){return b.templateUrl||"uib/template/datepicker/month.html"},require:["^uibDatepicker","uibMonthpicker"],controller:"UibMonthpickerController",link:function(a,b,c,d){var e=d[0],f=d[1];f.init(e)}}}).directive("uibYearpicker",function(){return{replace:!0,templateUrl:function(a,b){return b.templateUrl||"uib/template/datepicker/year.html"},require:["^uibDatepicker","uibYearpicker"],controller:"UibYearpickerController",link:function(a,b,c,d){var e=d[0];angular.extend(e,d[1]),e.yearpickerInit(),e.refreshView()}}}),angular.module("ui.bootstrap.position",[]).factory("$uibPosition",["$document","$window",function(a,b){var c,d,e={normal:/(auto|scroll)/,hidden:/(auto|scroll|hidden)/},f={auto:/\s?auto?\s?/i,primary:/^(top|bottom|left|right)$/,secondary:/^(top|bottom|left|right|center)$/,vertical:/^(top|bottom)$/},g=/(HTML|BODY)/;return{getRawNode:function(a){return a.nodeName?a:a[0]||a},parseStyle:function(a){return a=parseFloat(a),isFinite(a)?a:0},offsetParent:function(c){function d(a){return"static"===(b.getComputedStyle(a).position||"static")}c=this.getRawNode(c);for(var e=c.offsetParent||a[0].documentElement;e&&e!==a[0].documentElement&&d(e);)e=e.offsetParent;return e||a[0].documentElement},scrollbarWidth:function(e){if(e){if(angular.isUndefined(d)){var f=a.find("body");f.addClass("uib-position-body-scrollbar-measure"),d=b.innerWidth-f[0].clientWidth,d=isFinite(d)?d:0,f.removeClass("uib-position-body-scrollbar-measure")}return d}if(angular.isUndefined(c)){var g=angular.element('
');a.find("body").append(g),c=g[0].offsetWidth-g[0].clientWidth,c=isFinite(c)?c:0,g.remove()}return c},scrollbarPadding:function(a){a=this.getRawNode(a);var c=b.getComputedStyle(a),d=this.parseStyle(c.paddingRight),e=this.parseStyle(c.paddingBottom),f=this.scrollParent(a,!1,!0),h=this.scrollbarWidth(f,g.test(f.tagName));return{scrollbarWidth:h,widthOverflow:f.scrollWidth>f.clientWidth,right:d+h,originalRight:d,heightOverflow:f.scrollHeight>f.clientHeight,bottom:e+h,originalBottom:e}},isScrollable:function(a,c){a=this.getRawNode(a);var d=c?e.hidden:e.normal,f=b.getComputedStyle(a);return d.test(f.overflow+f.overflowY+f.overflowX); +},scrollParent:function(c,d,f){c=this.getRawNode(c);var g=d?e.hidden:e.normal,h=a[0].documentElement,i=b.getComputedStyle(c);if(f&&g.test(i.overflow+i.overflowY+i.overflowX))return c;var j="absolute"===i.position,k=c.parentElement||h;if(k===h||"fixed"===i.position)return h;for(;k.parentElement&&k!==h;){var l=b.getComputedStyle(k);if(j&&"static"!==l.position&&(j=!1),!j&&g.test(l.overflow+l.overflowY+l.overflowX))break;k=k.parentElement}return k},position:function(c,d){c=this.getRawNode(c);var e=this.offset(c);if(d){var f=b.getComputedStyle(c);e.top-=this.parseStyle(f.marginTop),e.left-=this.parseStyle(f.marginLeft)}var g=this.offsetParent(c),h={top:0,left:0};return g!==a[0].documentElement&&(h=this.offset(g),h.top+=g.clientTop-g.scrollTop,h.left+=g.clientLeft-g.scrollLeft),{width:Math.round(angular.isNumber(e.width)?e.width:c.offsetWidth),height:Math.round(angular.isNumber(e.height)?e.height:c.offsetHeight),top:Math.round(e.top-h.top),left:Math.round(e.left-h.left)}},offset:function(c){c=this.getRawNode(c);var d=c.getBoundingClientRect();return{width:Math.round(angular.isNumber(d.width)?d.width:c.offsetWidth),height:Math.round(angular.isNumber(d.height)?d.height:c.offsetHeight),top:Math.round(d.top+(b.pageYOffset||a[0].documentElement.scrollTop)),left:Math.round(d.left+(b.pageXOffset||a[0].documentElement.scrollLeft))}},viewportOffset:function(c,d,e){c=this.getRawNode(c),e=e!==!1;var f=c.getBoundingClientRect(),g={top:0,left:0,bottom:0,right:0},h=d?a[0].documentElement:this.scrollParent(c),i=h.getBoundingClientRect();if(g.top=i.top+h.clientTop,g.left=i.left+h.clientLeft,h===a[0].documentElement&&(g.top+=b.pageYOffset,g.left+=b.pageXOffset),g.bottom=g.top+h.clientHeight,g.right=g.left+h.clientWidth,e){var j=b.getComputedStyle(h);g.top+=this.parseStyle(j.paddingTop),g.bottom-=this.parseStyle(j.paddingBottom),g.left+=this.parseStyle(j.paddingLeft),g.right-=this.parseStyle(j.paddingRight)}return{top:Math.round(f.top-g.top),bottom:Math.round(g.bottom-f.bottom),left:Math.round(f.left-g.left),right:Math.round(g.right-f.right)}},parsePlacement:function(a){var b=f.auto.test(a);return b&&(a=a.replace(f.auto,"")),a=a.split("-"),a[0]=a[0]||"top",f.primary.test(a[0])||(a[0]="top"),a[1]=a[1]||"center",f.secondary.test(a[1])||(a[1]="center"),b?a[2]=!0:a[2]=!1,a},positionElements:function(a,c,d,e){a=this.getRawNode(a),c=this.getRawNode(c);var g=angular.isDefined(c.offsetWidth)?c.offsetWidth:c.prop("offsetWidth"),h=angular.isDefined(c.offsetHeight)?c.offsetHeight:c.prop("offsetHeight");d=this.parsePlacement(d);var i=e?this.offset(a):this.position(a),j={top:0,left:0,placement:""};if(d[2]){var k=this.viewportOffset(a,e),l=b.getComputedStyle(c),m={width:g+Math.round(Math.abs(this.parseStyle(l.marginLeft)+this.parseStyle(l.marginRight))),height:h+Math.round(Math.abs(this.parseStyle(l.marginTop)+this.parseStyle(l.marginBottom)))};if(d[0]="top"===d[0]&&m.height>k.top&&m.height<=k.bottom?"bottom":"bottom"===d[0]&&m.height>k.bottom&&m.height<=k.top?"top":"left"===d[0]&&m.width>k.left&&m.width<=k.right?"right":"right"===d[0]&&m.width>k.right&&m.width<=k.left?"left":d[0],d[1]="top"===d[1]&&m.height-i.height>k.bottom&&m.height-i.height<=k.top?"bottom":"bottom"===d[1]&&m.height-i.height>k.top&&m.height-i.height<=k.bottom?"top":"left"===d[1]&&m.width-i.width>k.right&&m.width-i.width<=k.left?"right":"right"===d[1]&&m.width-i.width>k.left&&m.width-i.width<=k.right?"left":d[1],"center"===d[1])if(f.vertical.test(d[0])){var n=i.width/2-g/2;k.left+n<0&&m.width-i.width<=k.right?d[1]="left":k.right+n<0&&m.width-i.width<=k.left&&(d[1]="right")}else{var o=i.height/2-m.height/2;k.top+o<0&&m.height-i.height<=k.bottom?d[1]="top":k.bottom+o<0&&m.height-i.height<=k.top&&(d[1]="bottom")}}switch(d[0]){case"top":j.top=i.top-h;break;case"bottom":j.top=i.top+i.height;break;case"left":j.left=i.left-g;break;case"right":j.left=i.left+i.width}switch(d[1]){case"top":j.top=i.top;break;case"bottom":j.top=i.top+i.height-h;break;case"left":j.left=i.left;break;case"right":j.left=i.left+i.width-g;break;case"center":f.vertical.test(d[0])?j.left=i.left+i.width/2-g/2:j.top=i.top+i.height/2-h/2}return j.top=Math.round(j.top),j.left=Math.round(j.left),j.placement="center"===d[1]?d[0]:d[0]+"-"+d[1],j},positionArrow:function(a,c){a=this.getRawNode(a);var d=a.querySelector(".tooltip-inner, .popover-inner");if(d){var e=angular.element(d).hasClass("tooltip-inner"),g=e?a.querySelector(".tooltip-arrow"):a.querySelector(".arrow");if(g){var h={top:"",bottom:"",left:"",right:""};if(c=this.parsePlacement(c),"center"===c[1])return void angular.element(g).css(h);var i="border-"+c[0]+"-width",j=b.getComputedStyle(g)[i],k="border-";k+=f.vertical.test(c[0])?c[0]+"-"+c[1]:c[1]+"-"+c[0],k+="-radius";var l=b.getComputedStyle(e?d:a)[k];switch(c[0]){case"top":h.bottom=e?"0":"-"+j;break;case"bottom":h.top=e?"0":"-"+j;break;case"left":h.right=e?"0":"-"+j;break;case"right":h.left=e?"0":"-"+j}h[c[1]]=l,angular.element(g).css(h)}}}}}]),angular.module("ui.bootstrap.datepickerPopup",["ui.bootstrap.datepicker","ui.bootstrap.position"]).value("$datepickerPopupLiteralWarning",!0).constant("uibDatepickerPopupConfig",{altInputFormats:[],appendToBody:!1,clearText:"Clear",closeOnDateSelection:!0,closeText:"Done",currentText:"Today",datepickerPopup:"yyyy-MM-dd",datepickerPopupTemplateUrl:"uib/template/datepickerPopup/popup.html",datepickerTemplateUrl:"uib/template/datepicker/datepicker.html",html5Types:{date:"yyyy-MM-dd","datetime-local":"yyyy-MM-ddTHH:mm:ss.sss",month:"yyyy-MM"},onOpenFocus:!0,showButtonBar:!0,placement:"auto bottom-left"}).controller("UibDatepickerPopupController",["$scope","$element","$attrs","$compile","$log","$parse","$window","$document","$rootScope","$uibPosition","dateFilter","uibDateParser","uibDatepickerPopupConfig","$timeout","uibDatepickerConfig","$datepickerPopupLiteralWarning",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){function q(b){var c=l.parse(b,w,a.date);if(isNaN(c))for(var d=0;d
"),G?(J=G.timezone,a.ngModelOptions=angular.copy(G),a.ngModelOptions.timezone=null,a.ngModelOptions.updateOnDefault===!0&&(a.ngModelOptions.updateOn=a.ngModelOptions.updateOn?a.ngModelOptions.updateOn+" default":"default"),C.attr("ng-model-options","ngModelOptions")):J=null,C.attr({"ng-model":"date","ng-change":"dateSelection(date)","template-url":A}),D=angular.element(C.children()[0]),D.attr("template-url",B),a.datepickerOptions||(a.datepickerOptions={}),K&&"month"===c.type&&(a.datepickerOptions.datepickerMode="month",a.datepickerOptions.minMode="month"),D.attr("datepicker-options","datepickerOptions"),K?F.$formatters.push(function(b){return a.date=l.fromTimezone(b,J),b}):(F.$$parserName="date",F.$validators.date=s,F.$parsers.unshift(r),F.$formatters.push(function(b){return F.$isEmpty(b)?(a.date=b,b):(a.date=l.fromTimezone(b,J),angular.isNumber(a.date)&&(a.date=new Date(a.date)),l.filter(a.date,w))})),F.$viewChangeListeners.push(function(){a.date=q(F.$viewValue)}),b.on("keydown",u),H=d(C)(a),C.remove(),y?h.find("body").append(H):b.after(H),a.$on("$destroy",function(){for(a.isOpen===!0&&(i.$$phase||a.$apply(function(){a.isOpen=!1})),H.remove(),b.off("keydown",u),h.off("click",t),E&&E.off("scroll",v),angular.element(g).off("resize",v);L.length;)L.shift()()})},a.getText=function(b){return a[b+"Text"]||m[b+"Text"]},a.isDisabled=function(b){"today"===b&&(b=l.fromTimezone(new Date,J));var c={};return angular.forEach(["minDate","maxDate"],function(b){a.datepickerOptions[b]?angular.isDate(a.datepickerOptions[b])?c[b]=l.fromTimezone(new Date(a.datepickerOptions[b]),J):(p&&e.warn("Literal date support has been deprecated, please switch to date object usage"),c[b]=new Date(k(a.datepickerOptions[b],"medium"))):c[b]=null}),a.datepickerOptions&&c.minDate&&a.compare(b,c.minDate)<0||c.maxDate&&a.compare(b,c.maxDate)>0},a.compare=function(a,b){return new Date(a.getFullYear(),a.getMonth(),a.getDate())-new Date(b.getFullYear(),b.getMonth(),b.getDate())},a.dateSelection=function(c){angular.isDefined(c)&&(a.date=c);var d=a.date?l.filter(a.date,w):null;b.val(d),F.$setViewValue(d),x&&(a.isOpen=!1,b[0].focus())},a.keydown=function(c){27===c.which&&(c.stopPropagation(),a.isOpen=!1,b[0].focus())},a.select=function(b,c){if(c.stopPropagation(),"today"===b){var d=new Date;angular.isDate(a.date)?(b=new Date(a.date),b.setFullYear(d.getFullYear(),d.getMonth(),d.getDate())):b=new Date(d.setHours(0,0,0,0))}a.dateSelection(b)},a.close=function(c){c.stopPropagation(),a.isOpen=!1,b[0].focus()},a.disabled=angular.isDefined(c.disabled)||!1,c.ngDisabled&&L.push(a.$parent.$watch(f(c.ngDisabled),function(b){a.disabled=b})),a.$watch("isOpen",function(d){d?a.disabled?a.isOpen=!1:n(function(){v(),z&&a.$broadcast("uib:datepicker.focus"),h.on("click",t);var d=c.popupPlacement?c.popupPlacement:m.placement;y||j.parsePlacement(d)[2]?(E=E||angular.element(j.scrollParent(b)),E&&E.on("scroll",v)):E=null,angular.element(g).on("resize",v)},0,!1):(h.off("click",t),E&&E.off("scroll",v),angular.element(g).off("resize",v))}),a.$on("uib:datepicker.mode",function(){n(v,0,!1)})}]).directive("uibDatepickerPopup",function(){return{require:["ngModel","uibDatepickerPopup"],controller:"UibDatepickerPopupController",scope:{datepickerOptions:"=?",isOpen:"=?",currentText:"@",clearText:"@",closeText:"@"},link:function(a,b,c,d){var e=d[0],f=d[1];f.init(e)}}}).directive("uibDatepickerPopupWrap",function(){return{replace:!0,transclude:!0,templateUrl:function(a,b){return b.templateUrl||"uib/template/datepickerPopup/popup.html"}}}),angular.module("ui.bootstrap.debounce",[]).factory("$$debounce",["$timeout",function(a){return function(b,c){var d;return function(){var e=this,f=Array.prototype.slice.call(arguments);d&&a.cancel(d),d=a(function(){b.apply(e,f)},c)}}}]),angular.module("ui.bootstrap.dropdown",["ui.bootstrap.position"]).constant("uibDropdownConfig",{appendToOpenClass:"uib-dropdown-open",openClass:"open"}).service("uibDropdownService",["$document","$rootScope",function(a,b){var c=null;this.open=function(b,f){c||(a.on("click",d),f.on("keydown",e)),c&&c!==b&&(c.isOpen=!1),c=b},this.close=function(b,f){c===b&&(c=null,a.off("click",d),f.off("keydown",e))};var d=function(a){if(c&&!(a&&"disabled"===c.getAutoClose()||a&&3===a.which)){var d=c.getToggleElement();if(!(a&&d&&d[0].contains(a.target))){var e=c.getDropdownElement();a&&"outsideClick"===c.getAutoClose()&&e&&e[0].contains(a.target)||(c.isOpen=!1,b.$$phase||c.$apply())}}},e=function(a){27===a.which?(a.stopPropagation(),c.focusToggleElement(),d()):c.isKeynavEnabled()&&-1!==[38,40].indexOf(a.which)&&c.isOpen&&(a.preventDefault(),a.stopPropagation(),c.focusDropdownEntry(a.which))}}]).controller("UibDropdownController",["$scope","$element","$attrs","$parse","uibDropdownConfig","uibDropdownService","$animate","$uibPosition","$document","$compile","$templateRequest",function(a,b,c,d,e,f,g,h,i,j,k){var l,m,n=this,o=a.$new(),p=e.appendToOpenClass,q=e.openClass,r=angular.noop,s=c.onToggle?d(c.onToggle):angular.noop,t=!1,u=null,v=!1,w=i.find("body");b.addClass("dropdown"),this.init=function(){if(c.isOpen&&(m=d(c.isOpen),r=m.assign,a.$watch(m,function(a){o.isOpen=!!a})),angular.isDefined(c.dropdownAppendTo)){var e=d(c.dropdownAppendTo)(o);e&&(u=angular.element(e))}t=angular.isDefined(c.dropdownAppendToBody),v=angular.isDefined(c.keyboardNav),t&&!u&&(u=w),u&&n.dropdownMenu&&(u.append(n.dropdownMenu),b.on("$destroy",function(){n.dropdownMenu.remove()}))},this.toggle=function(a){return o.isOpen=arguments.length?!!a:!o.isOpen,angular.isFunction(r)&&r(o,o.isOpen),o.isOpen},this.isOpen=function(){return o.isOpen},o.getToggleElement=function(){return n.toggleElement},o.getAutoClose=function(){return c.autoClose||"always"},o.getElement=function(){return b},o.isKeynavEnabled=function(){return v},o.focusDropdownEntry=function(a){var c=n.dropdownMenu?angular.element(n.dropdownMenu).find("a"):b.find("ul").eq(0).find("a");switch(a){case 40:angular.isNumber(n.selectedOption)?n.selectedOption=n.selectedOption===c.length-1?n.selectedOption:n.selectedOption+1:n.selectedOption=0;break;case 38:angular.isNumber(n.selectedOption)?n.selectedOption=0===n.selectedOption?0:n.selectedOption-1:n.selectedOption=c.length-1}c[n.selectedOption].focus()},o.getDropdownElement=function(){return n.dropdownMenu},o.focusToggleElement=function(){n.toggleElement&&n.toggleElement[0].focus()},o.$watch("isOpen",function(c,d){if(u&&n.dropdownMenu){var e,i,m=h.positionElements(b,n.dropdownMenu,"bottom-left",!0);if(e={top:m.top+"px",display:c?"block":"none"},i=n.dropdownMenu.hasClass("dropdown-menu-right"),i?(e.left="auto",e.right=window.innerWidth-(m.left+b.prop("offsetWidth"))+"px"):(e.left=m.left+"px",e.right="auto"),!t){var v=h.offset(u);e.top=m.top-v.top+"px",i?e.right=window.innerWidth-(m.left-v.left+b.prop("offsetWidth"))+"px":e.left=m.left-v.left+"px"}n.dropdownMenu.css(e)}var w=u?u:b,x=w.hasClass(u?p:q);if(x===!c&&g[c?"addClass":"removeClass"](w,u?p:q).then(function(){angular.isDefined(c)&&c!==d&&s(a,{open:!!c})}),c)n.dropdownMenuTemplateUrl&&k(n.dropdownMenuTemplateUrl).then(function(a){l=o.$new(),j(a.trim())(l,function(a){var b=a;n.dropdownMenu.replaceWith(b),n.dropdownMenu=b})}),o.focusToggleElement(),f.open(o,b);else{if(n.dropdownMenuTemplateUrl){l&&l.$destroy();var y=angular.element('');n.dropdownMenu.replaceWith(y),n.dropdownMenu=y}f.close(o,b),n.selectedOption=null}angular.isFunction(r)&&r(a,c)})}]).directive("uibDropdown",function(){return{controller:"UibDropdownController",link:function(a,b,c,d){d.init()}}}).directive("uibDropdownMenu",function(){return{restrict:"A",require:"?^uibDropdown",link:function(a,b,c,d){if(d&&!angular.isDefined(c.dropdownNested)){b.addClass("dropdown-menu");var e=c.templateUrl;e&&(d.dropdownMenuTemplateUrl=e),d.dropdownMenu||(d.dropdownMenu=b)}}}}).directive("uibDropdownToggle",function(){return{require:"?^uibDropdown",link:function(a,b,c,d){if(d){b.addClass("dropdown-toggle"),d.toggleElement=b;var e=function(e){e.preventDefault(),b.hasClass("disabled")||c.disabled||a.$apply(function(){d.toggle()})};b.bind("click",e),b.attr({"aria-haspopup":!0,"aria-expanded":!1}),a.$watch(d.isOpen,function(a){b.attr("aria-expanded",!!a)}),a.$on("$destroy",function(){b.unbind("click",e)})}}}}),angular.module("ui.bootstrap.stackedMap",[]).factory("$$stackedMap",function(){return{createNew:function(){var a=[];return{add:function(b,c){a.push({key:b,value:c})},get:function(b){for(var c=0;c-1&&y>a&&(a=y),a}function l(a,b){var c=v.get(a).value,d=c.appendTo;v.remove(a),z=v.top(),z&&(y=parseInt(z.value.modalDomEl.attr("index"),10)),o(c.modalDomEl,c.modalScope,function(){var b=c.openedClass||u;w.remove(b,a);var e=w.hasKey(b);d.toggleClass(b,e),!e&&t&&t.heightOverflow&&t.scrollbarWidth&&(t.originalRight?d.css({paddingRight:t.originalRight+"px"}):d.css({paddingRight:""}),t=null),m(!0)},c.closedDeferred),n(),b&&b.focus?b.focus():d.focus&&d.focus()}function m(a){var b;v.length()>0&&(b=v.top().value,b.modalDomEl.toggleClass(b.windowTopClass||"",a))}function n(){if(r&&-1===k()){var a=s;o(r,s,function(){a=null}),r=void 0,s=void 0}}function o(b,c,d,e){function g(){g.done||(g.done=!0,a.leave(b).then(function(){b.remove(),e&&e.resolve()}),c.$destroy(),d&&d())}var h,i=null,j=function(){return h||(h=f.defer(),i=h.promise),function(){h.resolve()}};return c.$broadcast(x.NOW_CLOSING_EVENT,j),f.when(i).then(g)}function p(a){if(a.isDefaultPrevented())return a;var b=v.top();if(b)switch(a.which){case 27:b.value.keyboard&&(a.preventDefault(),e.$apply(function(){x.dismiss(b.key,"escape key press")}));break;case 9:var c=x.loadFocusElementList(b),d=!1;a.shiftKey?(x.isFocusInFirstItem(a,c)||x.isModalFocused(a,b))&&(d=x.focusLastFocusableElement(c)):x.isFocusInLastItem(a,c)&&(d=x.focusFirstFocusableElement(c)),d&&(a.preventDefault(),a.stopPropagation())}}function q(a,b,c){return!a.value.modalScope.$broadcast("modal.closing",b,c).defaultPrevented}var r,s,t,u="modal-open",v=h.createNew(),w=g.createNew(),x={NOW_CLOSING_EVENT:"modal.stack.now-closing"},y=0,z=null,A="a[href], area[href], input:not([disabled]), button:not([disabled]),select:not([disabled]), textarea:not([disabled]), iframe, object, embed, *[tabindex], *[contenteditable=true]";return e.$watch(k,function(a){s&&(s.index=a)}),c.on("keydown",p),e.$on("$destroy",function(){c.off("keydown",p)}),x.open=function(b,f){var g=c[0].activeElement,h=f.openedClass||u;m(!1),z=v.top(),v.add(b,{deferred:f.deferred,renderDeferred:f.renderDeferred,closedDeferred:f.closedDeferred,modalScope:f.scope,backdrop:f.backdrop,keyboard:f.keyboard,openedClass:f.openedClass,windowTopClass:f.windowTopClass,animation:f.animation,appendTo:f.appendTo}),w.put(h,b);var j=f.appendTo,l=k();if(!j.length)throw new Error("appendTo element not found. Make sure that the element passed is in DOM.");l>=0&&!r&&(s=e.$new(!0),s.modalOptions=f,s.index=l,r=angular.element('
'),r.attr("backdrop-class",f.backdropClass),f.animation&&r.attr("modal-animation","true"),d(r)(s),a.enter(r,j),t=i.scrollbarPadding(j),t.heightOverflow&&t.scrollbarWidth&&j.css({paddingRight:t.right+"px"})),y=z?parseInt(z.value.modalDomEl.attr("index"),10)+1:0;var n=angular.element('
');n.attr({"template-url":f.windowTemplateUrl,"window-class":f.windowClass,"window-top-class":f.windowTopClass,size:f.size,index:y,animate:"animate"}).html(f.content),f.animation&&n.attr("modal-animation","true"),j.addClass(h),a.enter(d(n)(f.scope),j),v.top().value.modalDomEl=n,v.top().value.modalOpener=g},x.close=function(a,b){var c=v.get(a);return c&&q(c,b,!0)?(c.value.modalScope.$$uibDestructionScheduled=!0,c.value.deferred.resolve(b),l(a,c.value.modalOpener),!0):!c},x.dismiss=function(a,b){var c=v.get(a);return c&&q(c,b,!1)?(c.value.modalScope.$$uibDestructionScheduled=!0,c.value.deferred.reject(b),l(a,c.value.modalOpener),!0):!c},x.dismissAll=function(a){for(var b=this.getTop();b&&this.dismiss(b.key,a);)b=this.getTop()},x.getTop=function(){return v.top()},x.modalRendered=function(a){var b=v.get(a);b&&b.value.renderDeferred.resolve()},x.focusFirstFocusableElement=function(a){return a.length>0?(a[0].focus(),!0):!1},x.focusLastFocusableElement=function(a){return a.length>0?(a[a.length-1].focus(),!0):!1},x.isModalFocused=function(a,b){if(a&&b){var c=b.value.modalDomEl;if(c&&c.length)return(a.target||a.srcElement)===c[0]}return!1},x.isFocusInFirstItem=function(a,b){return b.length>0?(a.target||a.srcElement)===b[0]:!1},x.isFocusInLastItem=function(a,b){return b.length>0?(a.target||a.srcElement)===b[b.length-1]:!1},x.loadFocusElementList=function(a){if(a){var b=a.value.modalDomEl;if(b&&b.length){var c=b[0].querySelectorAll(A);return c?Array.prototype.filter.call(c,function(a){return j(a)}):c}}},x}]).provider("$uibModal",function(){var a={options:{animation:!0,backdrop:!0,keyboard:!0},$get:["$rootScope","$q","$document","$templateRequest","$controller","$uibResolve","$uibModalStack",function(b,c,d,e,f,g,h){function i(a){return a.template?c.when(a.template):e(angular.isFunction(a.templateUrl)?a.templateUrl():a.templateUrl)}var j={},k=null;return j.getPromiseChain=function(){return k},j.open=function(e){function j(){return r}var l=c.defer(),m=c.defer(),n=c.defer(),o=c.defer(),p={result:l.promise,opened:m.promise,closed:n.promise,rendered:o.promise,close:function(a){return h.close(p,a)},dismiss:function(a){return h.dismiss(p,a)}};if(e=angular.extend({},a.options,e),e.resolve=e.resolve||{},e.appendTo=e.appendTo||d.find("body").eq(0),!e.template&&!e.templateUrl)throw new Error("One of template or templateUrl options is required.");var q,r=c.all([i(e),g.resolve(e.resolve,{},null,null)]);return q=k=c.all([k]).then(j,j).then(function(a){var c=e.scope||b,d=c.$new();d.$close=p.close,d.$dismiss=p.dismiss,d.$on("$destroy",function(){d.$$uibDestructionScheduled||d.$dismiss("$uibUnscheduledDestruction")});var g,i,j={};e.controller&&(j.$scope=d,j.$uibModalInstance=p,angular.forEach(a[1],function(a,b){j[b]=a}),i=f(e.controller,j,!0),e.controllerAs?(g=i.instance,e.bindToController&&(g.$close=d.$close,g.$dismiss=d.$dismiss,angular.extend(g,c)),g=i(),d[e.controllerAs]=g):g=i(),angular.isFunction(g.$onInit)&&g.$onInit()),h.open(p,{scope:d,deferred:l,renderDeferred:o,closedDeferred:n,content:a[0],animation:e.animation,backdrop:e.backdrop,keyboard:e.keyboard,backdropClass:e.backdropClass,windowTopClass:e.windowTopClass,windowClass:e.windowClass,windowTemplateUrl:e.windowTemplateUrl,size:e.size,openedClass:e.openedClass,appendTo:e.appendTo}),m.resolve(!0)},function(a){m.reject(a),l.reject(a)})["finally"](function(){k===q&&(k=null)}),p},j}]};return a}),angular.module("ui.bootstrap.paging",[]).factory("uibPaging",["$parse",function(a){return{create:function(b,c,d){b.setNumPages=d.numPages?a(d.numPages).assign:angular.noop,b.ngModelCtrl={$setViewValue:angular.noop},b._watchers=[],b.init=function(a,e){b.ngModelCtrl=a,b.config=e,a.$render=function(){b.render()},d.itemsPerPage?b._watchers.push(c.$parent.$watch(d.itemsPerPage,function(a){b.itemsPerPage=parseInt(a,10),c.totalPages=b.calculateTotalPages(),b.updatePage()})):b.itemsPerPage=e.itemsPerPage,c.$watch("totalItems",function(a,d){(angular.isDefined(a)||a!==d)&&(c.totalPages=b.calculateTotalPages(),b.updatePage())})},b.calculateTotalPages=function(){var a=b.itemsPerPage<1?1:Math.ceil(c.totalItems/b.itemsPerPage);return Math.max(a||0,1)},b.render=function(){c.page=parseInt(b.ngModelCtrl.$viewValue,10)||1},c.selectPage=function(a,d){d&&d.preventDefault();var e=!c.ngDisabled||!d;e&&c.page!==a&&a>0&&a<=c.totalPages&&(d&&d.target&&d.target.blur(),b.ngModelCtrl.$setViewValue(a),b.ngModelCtrl.$render())},c.getText=function(a){return c[a+"Text"]||b.config[a+"Text"]},c.noPrevious=function(){return 1===c.page},c.noNext=function(){return c.page===c.totalPages},b.updatePage=function(){b.setNumPages(c.$parent,c.totalPages),c.page>c.totalPages?c.selectPage(c.totalPages):b.ngModelCtrl.$render()},c.$on("$destroy",function(){for(;b._watchers.length;)b._watchers.shift()()})}}}]),angular.module("ui.bootstrap.pager",["ui.bootstrap.paging"]).controller("UibPagerController",["$scope","$attrs","uibPaging","uibPagerConfig",function(a,b,c,d){a.align=angular.isDefined(b.align)?a.$parent.$eval(b.align):d.align,c.create(this,a,b)}]).constant("uibPagerConfig",{itemsPerPage:10,previousText:"« Previous",nextText:"Next »",align:!0}).directive("uibPager",["uibPagerConfig",function(a){return{scope:{totalItems:"=",previousText:"@",nextText:"@",ngDisabled:"="},require:["uibPager","?ngModel"],controller:"UibPagerController",controllerAs:"pager",templateUrl:function(a,b){return b.templateUrl||"uib/template/pager/pager.html"},replace:!0,link:function(b,c,d,e){var f=e[0],g=e[1];g&&f.init(g,a)}}}]),angular.module("ui.bootstrap.pagination",["ui.bootstrap.paging"]).controller("UibPaginationController",["$scope","$attrs","$parse","uibPaging","uibPaginationConfig",function(a,b,c,d,e){function f(a,b,c){return{number:a,text:b,active:c}}function g(a,b){var c=[],d=1,e=b,g=angular.isDefined(i)&&b>i;g&&(j?(d=Math.max(a-Math.floor(i/2),1),e=d+i-1,e>b&&(e=b,d=e-i+1)):(d=(Math.ceil(a/i)-1)*i+1,e=Math.min(d+i-1,b)));for(var h=d;e>=h;h++){var n=f(h,m(h),h===a);c.push(n)}if(g&&i>0&&(!j||k||l)){if(d>1){if(!l||d>3){var o=f(d-1,"...",!1);c.unshift(o)}if(l){if(3===d){var p=f(2,"2",!1);c.unshift(p)}var q=f(1,"1",!1);c.unshift(q)}}if(b>e){if(!l||b-2>e){var r=f(e+1,"...",!1);c.push(r)}if(l){if(e===b-2){var s=f(b-1,b-1,!1);c.push(s)}var t=f(b,b,!1);c.push(t)}}}return c}var h=this,i=angular.isDefined(b.maxSize)?a.$parent.$eval(b.maxSize):e.maxSize,j=angular.isDefined(b.rotate)?a.$parent.$eval(b.rotate):e.rotate,k=angular.isDefined(b.forceEllipses)?a.$parent.$eval(b.forceEllipses):e.forceEllipses,l=angular.isDefined(b.boundaryLinkNumbers)?a.$parent.$eval(b.boundaryLinkNumbers):e.boundaryLinkNumbers,m=angular.isDefined(b.pageLabel)?function(c){return a.$parent.$eval(b.pageLabel,{$page:c})}:angular.identity;a.boundaryLinks=angular.isDefined(b.boundaryLinks)?a.$parent.$eval(b.boundaryLinks):e.boundaryLinks,a.directionLinks=angular.isDefined(b.directionLinks)?a.$parent.$eval(b.directionLinks):e.directionLinks,d.create(this,a,b),b.maxSize&&h._watchers.push(a.$parent.$watch(c(b.maxSize),function(a){i=parseInt(a,10),h.render()}));var n=this.render;this.render=function(){n(),a.page>0&&a.page<=a.totalPages&&(a.pages=g(a.page,a.totalPages))}}]).constant("uibPaginationConfig",{itemsPerPage:10,boundaryLinks:!1,boundaryLinkNumbers:!1,directionLinks:!0,firstText:"First",previousText:"Previous",nextText:"Next",lastText:"Last",rotate:!0,forceEllipses:!1}).directive("uibPagination",["$parse","uibPaginationConfig",function(a,b){return{scope:{totalItems:"=",firstText:"@",previousText:"@",nextText:"@",lastText:"@",ngDisabled:"="},require:["uibPagination","?ngModel"],controller:"UibPaginationController",controllerAs:"pagination",templateUrl:function(a,b){return b.templateUrl||"uib/template/pagination/pagination.html"},replace:!0,link:function(a,c,d,e){var f=e[0],g=e[1];g&&f.init(g,b)}}}]),angular.module("ui.bootstrap.tooltip",["ui.bootstrap.position","ui.bootstrap.stackedMap"]).provider("$uibTooltip",function(){function a(a){var b=/[A-Z]/g,c="-";return a.replace(b,function(a,b){return(b?c:"")+a.toLowerCase()})}var b={placement:"top",placementClassPrefix:"",animation:!0,popupDelay:0,popupCloseDelay:0,useContentExp:!1},c={mouseenter:"mouseleave",click:"click",outsideClick:"outsideClick",focus:"blur",none:""},d={};this.options=function(a){angular.extend(d,a)},this.setTriggers=function(a){angular.extend(c,a)},this.$get=["$window","$compile","$timeout","$document","$uibPosition","$interpolate","$rootScope","$parse","$$stackedMap",function(e,f,g,h,i,j,k,l,m){function n(a){if(27===a.which){var b=o.top();b&&(b.value.close(),o.removeTop(),b=null)}}var o=m.createNew();return h.on("keypress",n),k.$on("$destroy",function(){h.off("keypress",n)}),function(e,k,m,n){function p(a){var b=(a||n.trigger||m).split(" "),d=b.map(function(a){return c[a]||a});return{show:b,hide:d}}n=angular.extend({},b,d,n);var q=a(e),r=j.startSymbol(),s=j.endSymbol(),t="
'; +return{compile:function(a,b){var c=f(t);return function(a,b,d,f){function j(){N.isOpen?q():m()}function m(){M&&!a.$eval(d[k+"Enable"])||(u(),x(),N.popupDelay?G||(G=g(r,N.popupDelay,!1)):r())}function q(){s(),N.popupCloseDelay?H||(H=g(t,N.popupCloseDelay,!1)):t()}function r(){return s(),u(),N.content?(v(),void N.$evalAsync(function(){N.isOpen=!0,y(!0),S()})):angular.noop}function s(){G&&(g.cancel(G),G=null),I&&(g.cancel(I),I=null)}function t(){N&&N.$evalAsync(function(){N&&(N.isOpen=!1,y(!1),N.animation?F||(F=g(w,150,!1)):w())})}function u(){H&&(g.cancel(H),H=null),F&&(g.cancel(F),F=null)}function v(){D||(E=N.$new(),D=c(E,function(a){K?h.find("body").append(a):b.after(a)}),z())}function w(){s(),u(),A(),D&&(D.remove(),D=null),E&&(E.$destroy(),E=null)}function x(){N.title=d[k+"Title"],Q?N.content=Q(a):N.content=d[e],N.popupClass=d[k+"Class"],N.placement=angular.isDefined(d[k+"Placement"])?d[k+"Placement"]:n.placement;var b=i.parsePlacement(N.placement);J=b[1]?b[0]+"-"+b[1]:b[0];var c=parseInt(d[k+"PopupDelay"],10),f=parseInt(d[k+"PopupCloseDelay"],10);N.popupDelay=isNaN(c)?n.popupDelay:c,N.popupCloseDelay=isNaN(f)?n.popupCloseDelay:f}function y(b){P&&angular.isFunction(P.assign)&&P.assign(a,b)}function z(){R.length=0,Q?(R.push(a.$watch(Q,function(a){N.content=a,!a&&N.isOpen&&t()})),R.push(E.$watch(function(){O||(O=!0,E.$$postDigest(function(){O=!1,N&&N.isOpen&&S()}))}))):R.push(d.$observe(e,function(a){N.content=a,!a&&N.isOpen?t():S()})),R.push(d.$observe(k+"Title",function(a){N.title=a,N.isOpen&&S()})),R.push(d.$observe(k+"Placement",function(a){N.placement=a?a:n.placement,N.isOpen&&S()}))}function A(){R.length&&(angular.forEach(R,function(a){a()}),R.length=0)}function B(a){N&&N.isOpen&&D&&(b[0].contains(a.target)||D[0].contains(a.target)||q())}function C(){var a=d[k+"Trigger"];T(),L=p(a),"none"!==L.show&&L.show.forEach(function(a,c){"outsideClick"===a?(b.on("click",j),h.on("click",B)):a===L.hide[c]?b.on(a,j):a&&(b.on(a,m),b.on(L.hide[c],q)),b.on("keypress",function(a){27===a.which&&q()})})}var D,E,F,G,H,I,J,K=angular.isDefined(n.appendToBody)?n.appendToBody:!1,L=p(void 0),M=angular.isDefined(d[k+"Enable"]),N=a.$new(!0),O=!1,P=angular.isDefined(d[k+"IsOpen"])?l(d[k+"IsOpen"]):!1,Q=n.useContentExp?l(d[e]):!1,R=[],S=function(){D&&D.html()&&(I||(I=g(function(){var a=i.positionElements(b,D,N.placement,K);D.css({top:a.top+"px",left:a.left+"px"}),D.hasClass(a.placement.split("-")[0])||(D.removeClass(J.split("-")[0]),D.addClass(a.placement.split("-")[0])),D.hasClass(n.placementClassPrefix+a.placement)||(D.removeClass(n.placementClassPrefix+J),D.addClass(n.placementClassPrefix+a.placement)),D.hasClass("uib-position-measure")?(i.positionArrow(D,a.placement),D.removeClass("uib-position-measure")):J!==a.placement&&i.positionArrow(D,a.placement),J=a.placement,I=null},0,!1)))};N.origScope=a,N.isOpen=!1,o.add(N,{close:t}),N.contentExp=function(){return N.content},d.$observe("disabled",function(a){a&&s(),a&&N.isOpen&&t()}),P&&a.$watch(P,function(a){N&&!a===N.isOpen&&j()});var T=function(){L.show.forEach(function(a){"outsideClick"===a?b.off("click",j):(b.off(a,m),b.off(a,j))}),L.hide.forEach(function(a){"outsideClick"===a?h.off("click",B):b.off(a,q)})};C();var U=a.$eval(d[k+"Animation"]);N.animation=angular.isDefined(U)?!!U:n.animation;var V,W=k+"AppendToBody";V=W in d&&void 0===d[W]?!0:a.$eval(d[W]),K=angular.isDefined(V)?V:K,a.$on("$destroy",function(){T(),w(),o.remove(N),N=null})}}}}}]}).directive("uibTooltipTemplateTransclude",["$animate","$sce","$compile","$templateRequest",function(a,b,c,d){return{link:function(e,f,g){var h,i,j,k=e.$eval(g.tooltipTemplateTranscludeScope),l=0,m=function(){i&&(i.remove(),i=null),h&&(h.$destroy(),h=null),j&&(a.leave(j).then(function(){i=null}),i=j,j=null)};e.$watch(b.parseAsResourceUrl(g.uibTooltipTemplateTransclude),function(b){var g=++l;b?(d(b,!0).then(function(d){if(g===l){var e=k.$new(),i=d,n=c(i)(e,function(b){m(),a.enter(b,f)});h=e,j=n,h.$emit("$includeContentLoaded",b)}},function(){g===l&&(m(),e.$emit("$includeContentError",b))}),e.$emit("$includeContentRequested",b)):m()}),e.$on("$destroy",m)}}}]).directive("uibTooltipClasses",["$uibPosition",function(a){return{restrict:"A",link:function(b,c,d){if(b.placement){var e=a.parsePlacement(b.placement);c.addClass(e[0])}b.popupClass&&c.addClass(b.popupClass),b.animation()&&c.addClass(d.tooltipAnimationClass)}}}]).directive("uibTooltipPopup",function(){return{replace:!0,scope:{content:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"uib/template/tooltip/tooltip-popup.html"}}).directive("uibTooltip",["$uibTooltip",function(a){return a("uibTooltip","tooltip","mouseenter")}]).directive("uibTooltipTemplatePopup",function(){return{replace:!0,scope:{contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&",originScope:"&"},templateUrl:"uib/template/tooltip/tooltip-template-popup.html"}}).directive("uibTooltipTemplate",["$uibTooltip",function(a){return a("uibTooltipTemplate","tooltip","mouseenter",{useContentExp:!0})}]).directive("uibTooltipHtmlPopup",function(){return{replace:!0,scope:{contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"uib/template/tooltip/tooltip-html-popup.html"}}).directive("uibTooltipHtml",["$uibTooltip",function(a){return a("uibTooltipHtml","tooltip","mouseenter",{useContentExp:!0})}]),angular.module("ui.bootstrap.popover",["ui.bootstrap.tooltip"]).directive("uibPopoverTemplatePopup",function(){return{replace:!0,scope:{uibTitle:"@",contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&",originScope:"&"},templateUrl:"uib/template/popover/popover-template.html"}}).directive("uibPopoverTemplate",["$uibTooltip",function(a){return a("uibPopoverTemplate","popover","click",{useContentExp:!0})}]).directive("uibPopoverHtmlPopup",function(){return{replace:!0,scope:{contentExp:"&",uibTitle:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"uib/template/popover/popover-html.html"}}).directive("uibPopoverHtml",["$uibTooltip",function(a){return a("uibPopoverHtml","popover","click",{useContentExp:!0})}]).directive("uibPopoverPopup",function(){return{replace:!0,scope:{uibTitle:"@",content:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"uib/template/popover/popover.html"}}).directive("uibPopover",["$uibTooltip",function(a){return a("uibPopover","popover","click")}]),angular.module("ui.bootstrap.progressbar",[]).constant("uibProgressConfig",{animate:!0,max:100}).controller("UibProgressController",["$scope","$attrs","uibProgressConfig",function(a,b,c){function d(){return angular.isDefined(a.maxParam)?a.maxParam:c.max}var e=this,f=angular.isDefined(b.animate)?a.$parent.$eval(b.animate):c.animate;this.bars=[],a.max=d(),this.addBar=function(a,b,c){f||b.css({transition:"none"}),this.bars.push(a),a.max=d(),a.title=c&&angular.isDefined(c.title)?c.title:"progressbar",a.$watch("value",function(b){a.recalculatePercentage()}),a.recalculatePercentage=function(){var b=e.bars.reduce(function(a,b){return b.percent=+(100*b.value/b.max).toFixed(2),a+b.percent},0);b>100&&(a.percent-=b-100)},a.$on("$destroy",function(){b=null,e.removeBar(a)})},this.removeBar=function(a){this.bars.splice(this.bars.indexOf(a),1),this.bars.forEach(function(a){a.recalculatePercentage()})},a.$watch("maxParam",function(a){e.bars.forEach(function(a){a.max=d(),a.recalculatePercentage()})})}]).directive("uibProgress",function(){return{replace:!0,transclude:!0,controller:"UibProgressController",require:"uibProgress",scope:{maxParam:"=?max"},templateUrl:"uib/template/progressbar/progress.html"}}).directive("uibBar",function(){return{replace:!0,transclude:!0,require:"^uibProgress",scope:{value:"=",type:"@"},templateUrl:"uib/template/progressbar/bar.html",link:function(a,b,c,d){d.addBar(a,b,c)}}}).directive("uibProgressbar",function(){return{replace:!0,transclude:!0,controller:"UibProgressController",scope:{value:"=",maxParam:"=?max",type:"@"},templateUrl:"uib/template/progressbar/progressbar.html",link:function(a,b,c,d){d.addBar(a,angular.element(b.children()[0]),{title:c.title})}}}),angular.module("ui.bootstrap.rating",[]).constant("uibRatingConfig",{max:5,stateOn:null,stateOff:null,enableReset:!0,titles:["one","two","three","four","five"]}).controller("UibRatingController",["$scope","$attrs","uibRatingConfig",function(a,b,c){var d={$setViewValue:angular.noop},e=this;this.init=function(e){d=e,d.$render=this.render,d.$formatters.push(function(a){return angular.isNumber(a)&&a<<0!==a&&(a=Math.round(a)),a}),this.stateOn=angular.isDefined(b.stateOn)?a.$parent.$eval(b.stateOn):c.stateOn,this.stateOff=angular.isDefined(b.stateOff)?a.$parent.$eval(b.stateOff):c.stateOff,this.enableReset=angular.isDefined(b.enableReset)?a.$parent.$eval(b.enableReset):c.enableReset;var f=angular.isDefined(b.titles)?a.$parent.$eval(b.titles):c.titles;this.titles=angular.isArray(f)&&f.length>0?f:c.titles;var g=angular.isDefined(b.ratingStates)?a.$parent.$eval(b.ratingStates):new Array(angular.isDefined(b.max)?a.$parent.$eval(b.max):c.max);a.range=this.buildTemplateObjects(g)},this.buildTemplateObjects=function(a){for(var b=0,c=a.length;c>b;b++)a[b]=angular.extend({index:b},{stateOn:this.stateOn,stateOff:this.stateOff,title:this.getTitle(b)},a[b]);return a},this.getTitle=function(a){return a>=this.titles.length?a+1:this.titles[a]},a.rate=function(b){if(!a.readonly&&b>=0&&b<=a.range.length){var c=e.enableReset&&d.$viewValue===b?0:b;d.$setViewValue(c),d.$render()}},a.enter=function(b){a.readonly||(a.value=b),a.onHover({value:b})},a.reset=function(){a.value=d.$viewValue,a.onLeave()},a.onKeydown=function(b){/(37|38|39|40)/.test(b.which)&&(b.preventDefault(),b.stopPropagation(),a.rate(a.value+(38===b.which||39===b.which?1:-1)))},this.render=function(){a.value=d.$viewValue,a.title=e.getTitle(a.value-1)}}]).directive("uibRating",function(){return{require:["uibRating","ngModel"],scope:{readonly:"=?readOnly",onHover:"&",onLeave:"&"},controller:"UibRatingController",templateUrl:"uib/template/rating/rating.html",replace:!0,link:function(a,b,c,d){var e=d[0],f=d[1];e.init(f)}}}),angular.module("ui.bootstrap.tabs",[]).controller("UibTabsetController",["$scope",function(a){function b(a){for(var b=0;bb.index?1:a.index0&&13>b:b>=0&&24>b;return c&&""!==a.hours?(a.showMeridian&&(12===b&&(b=0),a.meridian===v[1]&&(b+=12)),b):void 0}function i(){var b=+a.minutes,c=b>=0&&60>b;return c&&""!==a.minutes?b:void 0}function j(){var b=+a.seconds;return b>=0&&60>b?b:void 0}function k(a,b){return null===a?"":angular.isDefined(a)&&a.toString().length<2&&!b?"0"+a:a.toString()}function l(a){m(),u.$setViewValue(new Date(s)),n(a)}function m(){u.$setValidity("time",!0),a.invalidHours=!1,a.invalidMinutes=!1,a.invalidSeconds=!1}function n(b){if(u.$modelValue){var c=s.getHours(),d=s.getMinutes(),e=s.getSeconds();a.showMeridian&&(c=0===c||12===c?12:c%12),a.hours="h"===b?c:k(c,!w),"m"!==b&&(a.minutes=k(d)),a.meridian=s.getHours()<12?v[0]:v[1],"s"!==b&&(a.seconds=k(e)),a.meridian=s.getHours()<12?v[0]:v[1]}else a.hours=null,a.minutes=null,a.seconds=null,a.meridian=v[0]}function o(a){s=q(s,a),l()}function p(a,b){return q(a,60*b)}function q(a,b){var c=new Date(a.getTime()+1e3*b),d=new Date(a);return d.setHours(c.getHours(),c.getMinutes(),c.getSeconds()),d}function r(){return(null===a.hours||""===a.hours)&&(null===a.minutes||""===a.minutes)&&(!a.showSeconds||a.showSeconds&&(null===a.seconds||""===a.seconds))}var s=new Date,t=[],u={$setViewValue:angular.noop},v=angular.isDefined(c.meridians)?a.$parent.$eval(c.meridians):g.meridians||f.DATETIME_FORMATS.AMPMS,w=angular.isDefined(c.padHours)?a.$parent.$eval(c.padHours):!0;a.tabindex=angular.isDefined(c.tabindex)?c.tabindex:0,b.removeAttr("tabindex"),this.init=function(b,d){u=b,u.$render=this.render,u.$formatters.unshift(function(a){return a?new Date(a):null});var e=d.eq(0),f=d.eq(1),h=d.eq(2),i=angular.isDefined(c.mousewheel)?a.$parent.$eval(c.mousewheel):g.mousewheel;i&&this.setupMousewheelEvents(e,f,h);var j=angular.isDefined(c.arrowkeys)?a.$parent.$eval(c.arrowkeys):g.arrowkeys;j&&this.setupArrowkeyEvents(e,f,h),a.readonlyInput=angular.isDefined(c.readonlyInput)?a.$parent.$eval(c.readonlyInput):g.readonlyInput,this.setupInputEvents(e,f,h)};var x=g.hourStep;c.hourStep&&t.push(a.$parent.$watch(d(c.hourStep),function(a){x=+a}));var y=g.minuteStep;c.minuteStep&&t.push(a.$parent.$watch(d(c.minuteStep),function(a){y=+a}));var z;t.push(a.$parent.$watch(d(c.min),function(a){var b=new Date(a);z=isNaN(b)?void 0:b}));var A;t.push(a.$parent.$watch(d(c.max),function(a){var b=new Date(a);A=isNaN(b)?void 0:b}));var B=!1;c.ngDisabled&&t.push(a.$parent.$watch(d(c.ngDisabled),function(a){B=a})),a.noIncrementHours=function(){var a=p(s,60*x);return B||a>A||s>a&&z>a},a.noDecrementHours=function(){var a=p(s,60*-x);return B||z>a||a>s&&a>A},a.noIncrementMinutes=function(){var a=p(s,y);return B||a>A||s>a&&z>a},a.noDecrementMinutes=function(){var a=p(s,-y);return B||z>a||a>s&&a>A},a.noIncrementSeconds=function(){var a=q(s,C);return B||a>A||s>a&&z>a},a.noDecrementSeconds=function(){var a=q(s,-C);return B||z>a||a>s&&a>A},a.noToggleMeridian=function(){return s.getHours()<12?B||p(s,720)>A:B||p(s,-720)0};b.bind("mousewheel wheel",function(b){B||a.$apply(e(b)?a.incrementHours():a.decrementHours()),b.preventDefault()}),c.bind("mousewheel wheel",function(b){B||a.$apply(e(b)?a.incrementMinutes():a.decrementMinutes()),b.preventDefault()}),d.bind("mousewheel wheel",function(b){B||a.$apply(e(b)?a.incrementSeconds():a.decrementSeconds()),b.preventDefault()})},this.setupArrowkeyEvents=function(b,c,d){b.bind("keydown",function(b){B||(38===b.which?(b.preventDefault(),a.incrementHours(),a.$apply()):40===b.which&&(b.preventDefault(),a.decrementHours(),a.$apply()))}),c.bind("keydown",function(b){B||(38===b.which?(b.preventDefault(),a.incrementMinutes(),a.$apply()):40===b.which&&(b.preventDefault(),a.decrementMinutes(),a.$apply()))}),d.bind("keydown",function(b){B||(38===b.which?(b.preventDefault(),a.incrementSeconds(),a.$apply()):40===b.which&&(b.preventDefault(),a.decrementSeconds(),a.$apply()))})},this.setupInputEvents=function(b,c,d){if(a.readonlyInput)return a.updateHours=angular.noop,a.updateMinutes=angular.noop,void(a.updateSeconds=angular.noop);var e=function(b,c,d){u.$setViewValue(null),u.$setValidity("time",!1),angular.isDefined(b)&&(a.invalidHours=b),angular.isDefined(c)&&(a.invalidMinutes=c),angular.isDefined(d)&&(a.invalidSeconds=d)};a.updateHours=function(){var a=h(),b=i();u.$setDirty(),angular.isDefined(a)&&angular.isDefined(b)?(s.setHours(a),s.setMinutes(b),z>s||s>A?e(!0):l("h")):e(!0)},b.bind("blur",function(b){u.$setTouched(),r()?m():null===a.hours||""===a.hours?e(!0):!a.invalidHours&&a.hours<10&&a.$apply(function(){a.hours=k(a.hours,!w)})}),a.updateMinutes=function(){var a=i(),b=h();u.$setDirty(),angular.isDefined(a)&&angular.isDefined(b)?(s.setHours(b),s.setMinutes(a),z>s||s>A?e(void 0,!0):l("m")):e(void 0,!0)},c.bind("blur",function(b){u.$setTouched(),r()?m():null===a.minutes?e(void 0,!0):!a.invalidMinutes&&a.minutes<10&&a.$apply(function(){a.minutes=k(a.minutes)})}),a.updateSeconds=function(){var a=j();u.$setDirty(),angular.isDefined(a)?(s.setSeconds(a),l("s")):e(void 0,void 0,!0)},d.bind("blur",function(b){r()?m():!a.invalidSeconds&&a.seconds<10&&a.$apply(function(){a.seconds=k(a.seconds)})})},this.render=function(){var b=u.$viewValue;isNaN(b)?(u.$setValidity("time",!1),e.error('Timepicker directive: "ng-model" value must be a Date object, a number of milliseconds since 01.01.1970 or a string representing an RFC2822 or ISO 8601 date.')):(b&&(s=b),z>s||s>A?(u.$setValidity("time",!1),a.invalidHours=!0,a.invalidMinutes=!0):m(),n())},a.showSpinners=angular.isDefined(c.showSpinners)?a.$parent.$eval(c.showSpinners):g.showSpinners,a.incrementHours=function(){a.noIncrementHours()||o(60*x*60)},a.decrementHours=function(){a.noDecrementHours()||o(60*-x*60)},a.incrementMinutes=function(){a.noIncrementMinutes()||o(60*y)},a.decrementMinutes=function(){a.noDecrementMinutes()||o(60*-y)},a.incrementSeconds=function(){a.noIncrementSeconds()||o(C)},a.decrementSeconds=function(){a.noDecrementSeconds()||o(-C)},a.toggleMeridian=function(){var b=i(),c=h();a.noToggleMeridian()||(angular.isDefined(b)&&angular.isDefined(c)?o(720*(s.getHours()<12?60:-60)):a.meridian=a.meridian===v[0]?v[1]:v[0])},a.blur=function(){u.$setTouched()},a.$on("$destroy",function(){for(;t.length;)t.shift()()})}]).directive("uibTimepicker",["uibTimepickerConfig",function(a){return{require:["uibTimepicker","?^ngModel"],controller:"UibTimepickerController",controllerAs:"timepicker",replace:!0,scope:{},templateUrl:function(b,c){return c.templateUrl||a.templateUrl},link:function(a,b,c,d){var e=d[0],f=d[1];f&&e.init(f,b.find("input"))}}}]),angular.module("ui.bootstrap.typeahead",["ui.bootstrap.debounce","ui.bootstrap.position"]).factory("uibTypeaheadParser",["$parse",function(a){var b=/^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?\s+for\s+(?:([\$\w][\$\w\d]*))\s+in\s+([\s\S]+?)$/;return{parse:function(c){var d=c.match(b);if(!d)throw new Error('Expected typeahead specification in form of "_modelValue_ (as _label_)? for _item_ in _collection_" but got "'+c+'".');return{itemName:d[3],source:a(d[4]),viewMapper:a(d[2]||d[1]),modelMapper:a(d[1])}}}}]).controller("UibTypeaheadController",["$scope","$element","$attrs","$compile","$parse","$q","$timeout","$document","$window","$rootScope","$$debounce","$uibPosition","uibTypeaheadParser",function(a,b,c,d,e,f,g,h,i,j,k,l,m){function n(){N.moveInProgress||(N.moveInProgress=!0,N.$digest()),Y()}function o(){N.position=D?l.offset(b):l.position(b),N.position.top+=b.prop("offsetHeight")}var p,q,r=[9,13,27,38,40],s=200,t=a.$eval(c.typeaheadMinLength);t||0===t||(t=1),a.$watch(c.typeaheadMinLength,function(a){t=a||0===a?a:1});var u=a.$eval(c.typeaheadWaitMs)||0,v=a.$eval(c.typeaheadEditable)!==!1;a.$watch(c.typeaheadEditable,function(a){v=a!==!1});var w,x,y=e(c.typeaheadLoading).assign||angular.noop,z=e(c.typeaheadOnSelect),A=angular.isDefined(c.typeaheadSelectOnBlur)?a.$eval(c.typeaheadSelectOnBlur):!1,B=e(c.typeaheadNoResults).assign||angular.noop,C=c.typeaheadInputFormatter?e(c.typeaheadInputFormatter):void 0,D=c.typeaheadAppendToBody?a.$eval(c.typeaheadAppendToBody):!1,E=c.typeaheadAppendTo?a.$eval(c.typeaheadAppendTo):null,F=a.$eval(c.typeaheadFocusFirst)!==!1,G=c.typeaheadSelectOnExact?a.$eval(c.typeaheadSelectOnExact):!1,H=e(c.typeaheadIsOpen).assign||angular.noop,I=a.$eval(c.typeaheadShowHint)||!1,J=e(c.ngModel),K=e(c.ngModel+"($$$p)"),L=function(b,c){return angular.isFunction(J(a))&&q&&q.$options&&q.$options.getterSetter?K(b,{$$$p:c}):J.assign(b,c)},M=m.parse(c.uibTypeahead),N=a.$new(),O=a.$on("$destroy",function(){N.$destroy()});N.$on("$destroy",O);var P="typeahead-"+N.$id+"-"+Math.floor(1e4*Math.random());b.attr({"aria-autocomplete":"list","aria-expanded":!1,"aria-owns":P});var Q,R;I&&(Q=angular.element("
"),Q.css("position","relative"),b.after(Q),R=b.clone(),R.attr("placeholder",""),R.attr("tabindex","-1"),R.val(""),R.css({position:"absolute",top:"0px",left:"0px","border-color":"transparent","box-shadow":"none",opacity:1,background:"none 0% 0% / auto repeat scroll padding-box border-box rgb(255, 255, 255)",color:"#999"}),b.css({position:"relative","vertical-align":"top","background-color":"transparent"}),Q.append(R),R.after(b));var S=angular.element("
");S.attr({id:P,matches:"matches",active:"activeIdx",select:"select(activeIdx, evt)","move-in-progress":"moveInProgress",query:"query",position:"position","assign-is-open":"assignIsOpen(isOpen)",debounce:"debounceUpdate"}),angular.isDefined(c.typeaheadTemplateUrl)&&S.attr("template-url",c.typeaheadTemplateUrl),angular.isDefined(c.typeaheadPopupTemplateUrl)&&S.attr("popup-template-url",c.typeaheadPopupTemplateUrl);var T=function(){I&&R.val("")},U=function(){N.matches=[],N.activeIdx=-1,b.attr("aria-expanded",!1),T()},V=function(a){return P+"-option-"+a};N.$watch("activeIdx",function(a){0>a?b.removeAttr("aria-activedescendant"):b.attr("aria-activedescendant",V(a))});var W=function(a,b){return N.matches.length>b&&a?a.toUpperCase()===N.matches[b].label.toUpperCase():!1},X=function(c,d){var e={$viewValue:c};y(a,!0),B(a,!1),f.when(M.source(a,e)).then(function(f){var g=c===p.$viewValue;if(g&&w)if(f&&f.length>0){N.activeIdx=F?0:-1,B(a,!1),N.matches.length=0;for(var h=0;h0&&i.slice(0,c.length).toUpperCase()===c.toUpperCase()?R.val(c+i.slice(c.length)):R.val("")}}else U(),B(a,!0);g&&y(a,!1)},function(){U(),y(a,!1),B(a,!0)})};D&&(angular.element(i).on("resize",n),h.find("body").on("scroll",n));var Y=k(function(){N.matches.length&&o(),N.moveInProgress=!1},s);N.moveInProgress=!1,N.query=void 0;var Z,$=function(a){Z=g(function(){X(a)},u)},_=function(){Z&&g.cancel(Z)};U(),N.assignIsOpen=function(b){H(a,b)},N.select=function(d,e){var f,h,i={};x=!0,i[M.itemName]=h=N.matches[d].model,f=M.modelMapper(a,i),L(a,f),p.$setValidity("editable",!0),p.$setValidity("parse",!0),z(a,{$item:h,$model:f,$label:M.viewMapper(a,i),$event:e}),U(),N.$eval(c.typeaheadFocusOnSelect)!==!1&&g(function(){b[0].focus()},0,!1)},b.on("keydown",function(b){if(0!==N.matches.length&&-1!==r.indexOf(b.which)){if(-1===N.activeIdx&&(9===b.which||13===b.which)||9===b.which&&b.shiftKey)return U(),void N.$digest();b.preventDefault();var c;switch(b.which){case 9:case 13:N.$apply(function(){angular.isNumber(N.debounceUpdate)||angular.isObject(N.debounceUpdate)?k(function(){N.select(N.activeIdx,b)},angular.isNumber(N.debounceUpdate)?N.debounceUpdate:N.debounceUpdate["default"]):N.select(N.activeIdx,b)});break;case 27:b.stopPropagation(),U(),a.$digest();break;case 38:N.activeIdx=(N.activeIdx>0?N.activeIdx:N.matches.length)-1,N.$digest(),c=S.find("li")[N.activeIdx],c.parentNode.scrollTop=c.offsetTop;break;case 40:N.activeIdx=(N.activeIdx+1)%N.matches.length,N.$digest(),c=S.find("li")[N.activeIdx],c.parentNode.scrollTop=c.offsetTop}}}),b.bind("focus",function(a){w=!0,0!==t||p.$viewValue||g(function(){X(p.$viewValue,a)},0)}),b.bind("blur",function(a){A&&N.matches.length&&-1!==N.activeIdx&&!x&&(x=!0,N.$apply(function(){angular.isObject(N.debounceUpdate)&&angular.isNumber(N.debounceUpdate.blur)?k(function(){N.select(N.activeIdx,a)},N.debounceUpdate.blur):N.select(N.activeIdx,a)})),!v&&p.$error.editable&&(p.$setViewValue(),p.$setValidity("editable",!0),p.$setValidity("parse",!0),b.val("")),w=!1,x=!1});var aa=function(c){b[0]!==c.target&&3!==c.which&&0!==N.matches.length&&(U(),j.$$phase||a.$digest())};h.on("click",aa),a.$on("$destroy",function(){h.off("click",aa),(D||E)&&ba.remove(),D&&(angular.element(i).off("resize",n),h.find("body").off("scroll",n)),S.remove(),I&&Q.remove()});var ba=d(S)(N);D?h.find("body").append(ba):E?angular.element(E).eq(0).append(ba):b.after(ba),this.init=function(b,c){p=b,q=c,N.debounceUpdate=p.$options&&e(p.$options.debounce)(a),p.$parsers.unshift(function(b){return w=!0,0===t||b&&b.length>=t?u>0?(_(),$(b)):X(b):(y(a,!1),_(),U()),v?b:b?void p.$setValidity("editable",!1):(p.$setValidity("editable",!0),null)}),p.$formatters.push(function(b){var c,d,e={};return v||p.$setValidity("editable",!0),C?(e.$model=b,C(a,e)):(e[M.itemName]=b,c=M.viewMapper(a,e),e[M.itemName]=void 0,d=M.viewMapper(a,e),c!==d?c:b)})}}]).directive("uibTypeahead",function(){return{controller:"UibTypeaheadController",require:["ngModel","^?ngModelOptions","uibTypeahead"],link:function(a,b,c,d){d[2].init(d[0],d[1])}}}).directive("uibTypeaheadPopup",["$$debounce",function(a){return{scope:{matches:"=",query:"=",active:"=",position:"&",moveInProgress:"=",select:"&",assignIsOpen:"&",debounce:"&"},replace:!0,templateUrl:function(a,b){return b.popupTemplateUrl||"uib/template/typeahead/typeahead-popup.html"},link:function(b,c,d){b.templateUrl=d.templateUrl,b.isOpen=function(){var a=b.matches.length>0;return b.assignIsOpen({isOpen:a}),a},b.isActive=function(a){return b.active===a},b.selectActive=function(a){b.active=a},b.selectMatch=function(c,d){var e=b.debounce();angular.isNumber(e)||angular.isObject(e)?a(function(){b.select({activeIdx:c,evt:d})},angular.isNumber(e)?e:e["default"]):b.select({activeIdx:c,evt:d})}}}}]).directive("uibTypeaheadMatch",["$templateRequest","$compile","$parse",function(a,b,c){return{scope:{index:"=",match:"=",query:"="},link:function(d,e,f){var g=c(f.templateUrl)(d.$parent)||"uib/template/typeahead/typeahead-match.html";a(g).then(function(a){var c=angular.element(a.trim());e.replaceWith(c),b(c)(d)})}}}]).filter("uibTypeaheadHighlight",["$sce","$injector","$log",function(a,b,c){function d(a){return a.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")}function e(a){return/<.*>/g.test(a)}var f;return f=b.has("$sanitize"),function(b,g){return!f&&e(b)&&c.warn("Unsafe use of typeahead please use ngSanitize"),b=g?(""+b).replace(new RegExp(d(g),"gi"),"$&"):b,f||(b=a.trustAsHtml(b)),b}}]),angular.module("uib/template/accordion/accordion-group.html",[]).run(["$templateCache",function(a){a.put("uib/template/accordion/accordion-group.html",'
\n \n
\n
\n
\n
\n')}]),angular.module("uib/template/accordion/accordion.html",[]).run(["$templateCache",function(a){a.put("uib/template/accordion/accordion.html",'
')}]),angular.module("uib/template/alert/alert.html",[]).run(["$templateCache",function(a){a.put("uib/template/alert/alert.html",'\n')}]),angular.module("uib/template/carousel/carousel.html",[]).run(["$templateCache",function(a){a.put("uib/template/carousel/carousel.html",'\n'); +}]),angular.module("uib/template/carousel/slide.html",[]).run(["$templateCache",function(a){a.put("uib/template/carousel/slide.html",'
\n')}]),angular.module("uib/template/datepicker/datepicker.html",[]).run(["$templateCache",function(a){a.put("uib/template/datepicker/datepicker.html",'
\n \n \n \n
\n')}]),angular.module("uib/template/datepicker/day.html",[]).run(["$templateCache",function(a){a.put("uib/template/datepicker/day.html",'\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
{{::label.abbr}}
{{ weekNumbers[$index] }}\n \n
\n')}]),angular.module("uib/template/datepicker/month.html",[]).run(["$templateCache",function(a){a.put("uib/template/datepicker/month.html",'\n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n
\n')}]),angular.module("uib/template/datepicker/year.html",[]).run(["$templateCache",function(a){a.put("uib/template/datepicker/year.html",'\n \n \n \n \n \n \n \n \n \n \n \n \n
\n \n
\n')}]),angular.module("uib/template/datepickerPopup/popup.html",[]).run(["$templateCache",function(a){a.put("uib/template/datepickerPopup/popup.html",'
\n \n
\n')}]),angular.module("uib/template/modal/backdrop.html",[]).run(["$templateCache",function(a){a.put("uib/template/modal/backdrop.html",'\n')}]),angular.module("uib/template/modal/window.html",[]).run(["$templateCache",function(a){a.put("uib/template/modal/window.html",'\n')}]),angular.module("uib/template/pager/pager.html",[]).run(["$templateCache",function(a){a.put("uib/template/pager/pager.html",'\n')}]),angular.module("uib/template/pagination/pagination.html",[]).run(["$templateCache",function(a){a.put("uib/template/pagination/pagination.html",'\n')}]),angular.module("uib/template/tooltip/tooltip-html-popup.html",[]).run(["$templateCache",function(a){a.put("uib/template/tooltip/tooltip-html-popup.html",'
\n
\n
\n
\n')}]),angular.module("uib/template/tooltip/tooltip-popup.html",[]).run(["$templateCache",function(a){a.put("uib/template/tooltip/tooltip-popup.html",'
\n
\n
\n
\n')}]),angular.module("uib/template/tooltip/tooltip-template-popup.html",[]).run(["$templateCache",function(a){a.put("uib/template/tooltip/tooltip-template-popup.html",'
\n
\n
\n
\n')}]),angular.module("uib/template/popover/popover-html.html",[]).run(["$templateCache",function(a){a.put("uib/template/popover/popover-html.html",'
\n
\n\n
\n

\n
\n
\n
\n')}]),angular.module("uib/template/popover/popover-template.html",[]).run(["$templateCache",function(a){a.put("uib/template/popover/popover-template.html",'
\n
\n\n
\n

\n
\n
\n
\n')}]),angular.module("uib/template/popover/popover.html",[]).run(["$templateCache",function(a){a.put("uib/template/popover/popover.html",'
\n
\n\n
\n

\n
\n
\n
\n')}]),angular.module("uib/template/progressbar/bar.html",[]).run(["$templateCache",function(a){a.put("uib/template/progressbar/bar.html",'
\n')}]),angular.module("uib/template/progressbar/progress.html",[]).run(["$templateCache",function(a){a.put("uib/template/progressbar/progress.html",'
')}]),angular.module("uib/template/progressbar/progressbar.html",[]).run(["$templateCache",function(a){a.put("uib/template/progressbar/progressbar.html",'
\n
\n
\n')}]),angular.module("uib/template/rating/rating.html",[]).run(["$templateCache",function(a){a.put("uib/template/rating/rating.html",'\n ({{ $index < value ? \'*\' : \' \' }})\n \n\n')}]),angular.module("uib/template/tabs/tab.html",[]).run(["$templateCache",function(a){a.put("uib/template/tabs/tab.html",'\n')}]),angular.module("uib/template/tabs/tabset.html",[]).run(["$templateCache",function(a){a.put("uib/template/tabs/tabset.html",'
\n \n
\n
\n
\n
\n
\n')}]),angular.module("uib/template/timepicker/timepicker.html",[]).run(["$templateCache",function(a){a.put("uib/template/timepicker/timepicker.html",'\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
  
\n \n :\n \n :\n \n
  
\n')}]),angular.module("uib/template/typeahead/typeahead-match.html",[]).run(["$templateCache",function(a){a.put("uib/template/typeahead/typeahead-match.html",'\n')}]),angular.module("uib/template/typeahead/typeahead-popup.html",[]).run(["$templateCache",function(a){a.put("uib/template/typeahead/typeahead-popup.html",'\n')}]),angular.module("ui.bootstrap.carousel").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibCarouselCss&&angular.element(document).find("head").prepend(''),angular.$$uibCarouselCss=!0}),angular.module("ui.bootstrap.datepicker").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibDatepickerCss&&angular.element(document).find("head").prepend(''),angular.$$uibDatepickerCss=!0}),angular.module("ui.bootstrap.position").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibPositionCss&&angular.element(document).find("head").prepend(''),angular.$$uibPositionCss=!0}),angular.module("ui.bootstrap.datepickerPopup").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibDatepickerpopupCss&&angular.element(document).find("head").prepend(''),angular.$$uibDatepickerpopupCss=!0}),angular.module("ui.bootstrap.tooltip").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibTooltipCss&&angular.element(document).find("head").prepend(''),angular.$$uibTooltipCss=!0}),angular.module("ui.bootstrap.timepicker").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibTimepickerCss&&angular.element(document).find("head").prepend(''),angular.$$uibTimepickerCss=!0}),angular.module("ui.bootstrap.typeahead").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibTypeaheadCss&&angular.element(document).find("head").prepend(''),angular.$$uibTypeaheadCss=!0}); \ No newline at end of file diff --git a/static/html/bower_components/angular-bootstrap/ui-bootstrap.min.js b/static/html/bower_components/angular-bootstrap/ui-bootstrap.min.js new file mode 100644 index 00000000..8cfd7f0e --- /dev/null +++ b/static/html/bower_components/angular-bootstrap/ui-bootstrap.min.js @@ -0,0 +1,10 @@ +/* + * angular-ui-bootstrap + * http://angular-ui.github.io/bootstrap/ + + * Version: 1.3.2 - 2016-04-14 + * License: MIT + */angular.module("ui.bootstrap",["ui.bootstrap.collapse","ui.bootstrap.accordion","ui.bootstrap.alert","ui.bootstrap.buttons","ui.bootstrap.carousel","ui.bootstrap.dateparser","ui.bootstrap.isClass","ui.bootstrap.datepicker","ui.bootstrap.position","ui.bootstrap.datepickerPopup","ui.bootstrap.debounce","ui.bootstrap.dropdown","ui.bootstrap.stackedMap","ui.bootstrap.modal","ui.bootstrap.paging","ui.bootstrap.pager","ui.bootstrap.pagination","ui.bootstrap.tooltip","ui.bootstrap.popover","ui.bootstrap.progressbar","ui.bootstrap.rating","ui.bootstrap.tabs","ui.bootstrap.timepicker","ui.bootstrap.typeahead"]),angular.module("ui.bootstrap.collapse",[]).directive("uibCollapse",["$animate","$q","$parse","$injector",function(a,b,c,d){var e=d.has("$animateCss")?d.get("$animateCss"):null;return{link:function(d,f,g){function h(){f.hasClass("collapse")&&f.hasClass("in")||b.resolve(l(d)).then(function(){f.removeClass("collapse").addClass("collapsing").attr("aria-expanded",!0).attr("aria-hidden",!1),e?e(f,{addClass:"in",easing:"ease",to:{height:f[0].scrollHeight+"px"}}).start()["finally"](i):a.addClass(f,"in",{to:{height:f[0].scrollHeight+"px"}}).then(i)})}function i(){f.removeClass("collapsing").addClass("collapse").css({height:"auto"}),m(d)}function j(){return f.hasClass("collapse")||f.hasClass("in")?void b.resolve(n(d)).then(function(){f.css({height:f[0].scrollHeight+"px"}).removeClass("collapse").addClass("collapsing").attr("aria-expanded",!1).attr("aria-hidden",!0),e?e(f,{removeClass:"in",to:{height:"0"}}).start()["finally"](k):a.removeClass(f,"in",{to:{height:"0"}}).then(k)}):k()}function k(){f.css({height:"0"}),f.removeClass("collapsing").addClass("collapse"),o(d)}var l=c(g.expanding),m=c(g.expanded),n=c(g.collapsing),o=c(g.collapsed);d.$eval(g.uibCollapse)||f.addClass("in").addClass("collapse").attr("aria-expanded",!0).attr("aria-hidden",!1).css({height:"auto"}),d.$watch(g.uibCollapse,function(a){a?j():h()})}}}]),angular.module("ui.bootstrap.accordion",["ui.bootstrap.collapse"]).constant("uibAccordionConfig",{closeOthers:!0}).controller("UibAccordionController",["$scope","$attrs","uibAccordionConfig",function(a,b,c){this.groups=[],this.closeOthers=function(d){var e=angular.isDefined(b.closeOthers)?a.$eval(b.closeOthers):c.closeOthers;e&&angular.forEach(this.groups,function(a){a!==d&&(a.isOpen=!1)})},this.addGroup=function(a){var b=this;this.groups.push(a),a.$on("$destroy",function(c){b.removeGroup(a)})},this.removeGroup=function(a){var b=this.groups.indexOf(a);-1!==b&&this.groups.splice(b,1)}}]).directive("uibAccordion",function(){return{controller:"UibAccordionController",controllerAs:"accordion",transclude:!0,templateUrl:function(a,b){return b.templateUrl||"uib/template/accordion/accordion.html"}}}).directive("uibAccordionGroup",function(){return{require:"^uibAccordion",transclude:!0,replace:!0,templateUrl:function(a,b){return b.templateUrl||"uib/template/accordion/accordion-group.html"},scope:{heading:"@",panelClass:"@?",isOpen:"=?",isDisabled:"=?"},controller:function(){this.setHeading=function(a){this.heading=a}},link:function(a,b,c,d){d.addGroup(a),a.openClass=c.openClass||"panel-open",a.panelClass=c.panelClass||"panel-default",a.$watch("isOpen",function(c){b.toggleClass(a.openClass,!!c),c&&d.closeOthers(a)}),a.toggleOpen=function(b){a.isDisabled||b&&32!==b.which||(a.isOpen=!a.isOpen)};var e="accordiongroup-"+a.$id+"-"+Math.floor(1e4*Math.random());a.headingId=e+"-tab",a.panelId=e+"-panel"}}}).directive("uibAccordionHeading",function(){return{transclude:!0,template:"",replace:!0,require:"^uibAccordionGroup",link:function(a,b,c,d,e){d.setHeading(e(a,angular.noop))}}}).directive("uibAccordionTransclude",function(){return{require:"^uibAccordionGroup",link:function(a,b,c,d){a.$watch(function(){return d[c.uibAccordionTransclude]},function(a){if(a){var c=angular.element(b[0].querySelector("[uib-accordion-header]"));c.html(""),c.append(a)}})}}}),angular.module("ui.bootstrap.alert",[]).controller("UibAlertController",["$scope","$attrs","$interpolate","$timeout",function(a,b,c,d){a.closeable=!!b.close;var e=angular.isDefined(b.dismissOnTimeout)?c(b.dismissOnTimeout)(a.$parent):null;e&&d(function(){a.close()},parseInt(e,10))}]).directive("uibAlert",function(){return{controller:"UibAlertController",controllerAs:"alert",templateUrl:function(a,b){return b.templateUrl||"uib/template/alert/alert.html"},transclude:!0,replace:!0,scope:{type:"@",close:"&"}}}),angular.module("ui.bootstrap.buttons",[]).constant("uibButtonConfig",{activeClass:"active",toggleEvent:"click"}).controller("UibButtonsController",["uibButtonConfig",function(a){this.activeClass=a.activeClass||"active",this.toggleEvent=a.toggleEvent||"click"}]).directive("uibBtnRadio",["$parse",function(a){return{require:["uibBtnRadio","ngModel"],controller:"UibButtonsController",controllerAs:"buttons",link:function(b,c,d,e){var f=e[0],g=e[1],h=a(d.uibUncheckable);c.find("input").css({display:"none"}),g.$render=function(){c.toggleClass(f.activeClass,angular.equals(g.$modelValue,b.$eval(d.uibBtnRadio)))},c.on(f.toggleEvent,function(){if(!d.disabled){var a=c.hasClass(f.activeClass);a&&!angular.isDefined(d.uncheckable)||b.$apply(function(){g.$setViewValue(a?null:b.$eval(d.uibBtnRadio)),g.$render()})}}),d.uibUncheckable&&b.$watch(h,function(a){d.$set("uncheckable",a?"":void 0)})}}}]).directive("uibBtnCheckbox",function(){return{require:["uibBtnCheckbox","ngModel"],controller:"UibButtonsController",controllerAs:"button",link:function(a,b,c,d){function e(){return g(c.btnCheckboxTrue,!0)}function f(){return g(c.btnCheckboxFalse,!1)}function g(b,c){return angular.isDefined(b)?a.$eval(b):c}var h=d[0],i=d[1];b.find("input").css({display:"none"}),i.$render=function(){b.toggleClass(h.activeClass,angular.equals(i.$modelValue,e()))},b.on(h.toggleEvent,function(){c.disabled||a.$apply(function(){i.$setViewValue(b.hasClass(h.activeClass)?f():e()),i.$render()})})}}}),angular.module("ui.bootstrap.carousel",[]).controller("UibCarouselController",["$scope","$element","$interval","$timeout","$animate",function(a,b,c,d,e){function f(){for(;t.length;)t.shift()}function g(a){for(var b=0;b1){q[d].element.data(r,c.direction);var j=p.getCurrentIndex();angular.isNumber(j)&&q[j].element&&q[j].element.data(r,c.direction),a.$currentTransition=!0,e.on("addClass",q[d].element,function(b,c){if("close"===c&&(a.$currentTransition=null,e.off("addClass",b),t.length)){var d=t.pop().slide,g=d.index,i=g>p.getCurrentIndex()?"next":"prev";f(),h(d,g,i)}})}a.active=c.index,s=c.index,g(d),l()}}function i(a){for(var b=0;b0&&(n=c(m,b))}function m(){var b=+a.interval;o&&!isNaN(b)&&b>0&&q.length?a.next():a.pause()}var n,o,p=this,q=p.slides=a.slides=[],r="uib-slideDirection",s=a.active,t=[],u=!1;p.addSlide=function(b,c){q.push({slide:b,element:c}),q.sort(function(a,b){return+a.slide.index-+b.slide.index}),(b.index===a.active||1===q.length&&!angular.isNumber(a.active))&&(a.$currentTransition&&(a.$currentTransition=null),s=b.index,a.active=b.index,g(s),p.select(q[i(b)]),1===q.length&&a.play())},p.getCurrentIndex=function(){for(var a=0;a0&&s===c?c>=q.length?(s=q.length-1,a.active=s,g(s),p.select(q[q.length-1])):(s=c,a.active=s,g(s),p.select(q[c])):s>c&&(s--,a.active=s),0===q.length&&(s=null,a.active=null,f())},p.select=a.select=function(b,c){var d=i(b.slide);void 0===c&&(c=d>p.getCurrentIndex()?"next":"prev"),b.slide.index===s||a.$currentTransition?b&&b.slide.index!==s&&a.$currentTransition&&t.push(q[d]):h(b.slide,d,c)},a.indexOfSlide=function(a){return+a.slide.index},a.isActive=function(b){return a.active===b.slide.index},a.isPrevDisabled=function(){return 0===a.active&&a.noWrap()},a.isNextDisabled=function(){return a.active===q.length-1&&a.noWrap()},a.pause=function(){a.noPause||(o=!1,j())},a.play=function(){o||(o=!0,l())},a.$on("$destroy",function(){u=!0,j()}),a.$watch("noTransition",function(a){e.enabled(b,!a)}),a.$watch("interval",l),a.$watchCollection("slides",k),a.$watch("active",function(a){if(angular.isNumber(a)&&s!==a){for(var b=0;b-1){var g=!1;a=a.split("");for(var h=f;h-1){a=a.split(""),e[f]="("+d.regex+")",a[f]="$";for(var g=f+1,h=f+d.key.length;h>g;g++)e[g]="",a[g]="$";a=a.join(""),c.push({index:f,key:d.key,apply:d[b],matcher:d.regex})}}),{regex:new RegExp("^"+e.join("")+"$"),map:d(c,"index")}}function f(a,b,c){return 1>c?!1:1===b&&c>28?29===c&&(a%4===0&&a%100!==0||a%400===0):3===b||5===b||8===b||10===b?31>c:!0}function g(a){return parseInt(a,10)}function h(a,b){return a&&b?l(a,b):a}function i(a,b){return a&&b?l(a,b,!0):a}function j(a,b){var c=Date.parse("Jan 01, 1970 00:00:00 "+a)/6e4;return isNaN(c)?b:c}function k(a,b){return a=new Date(a.getTime()),a.setMinutes(a.getMinutes()+b),a}function l(a,b,c){c=c?-1:1;var d=j(b,a.getTimezoneOffset());return k(a,c*(d-a.getTimezoneOffset()))}var m,n,o=/[\\\^\$\*\+\?\|\[\]\(\)\.\{\}]/g;this.init=function(){m=b.id,this.parsers={},this.formatters={},n=[{key:"yyyy",regex:"\\d{4}",apply:function(a){this.year=+a},formatter:function(a){var b=new Date;return b.setFullYear(Math.abs(a.getFullYear())),c(b,"yyyy")}},{key:"yy",regex:"\\d{2}",apply:function(a){a=+a,this.year=69>a?a+2e3:a+1900},formatter:function(a){var b=new Date;return b.setFullYear(Math.abs(a.getFullYear())),c(b,"yy")}},{key:"y",regex:"\\d{1,4}",apply:function(a){this.year=+a},formatter:function(a){var b=new Date;return b.setFullYear(Math.abs(a.getFullYear())),c(b,"y")}},{key:"M!",regex:"0?[1-9]|1[0-2]",apply:function(a){this.month=a-1},formatter:function(a){var b=a.getMonth();return/^[0-9]$/.test(b)?c(a,"MM"):c(a,"M")}},{key:"MMMM",regex:b.DATETIME_FORMATS.MONTH.join("|"),apply:function(a){this.month=b.DATETIME_FORMATS.MONTH.indexOf(a)},formatter:function(a){return c(a,"MMMM")}},{key:"MMM",regex:b.DATETIME_FORMATS.SHORTMONTH.join("|"),apply:function(a){this.month=b.DATETIME_FORMATS.SHORTMONTH.indexOf(a)},formatter:function(a){return c(a,"MMM")}},{key:"MM",regex:"0[1-9]|1[0-2]",apply:function(a){this.month=a-1},formatter:function(a){return c(a,"MM")}},{key:"M",regex:"[1-9]|1[0-2]",apply:function(a){this.month=a-1},formatter:function(a){return c(a,"M")}},{key:"d!",regex:"[0-2]?[0-9]{1}|3[0-1]{1}",apply:function(a){this.date=+a},formatter:function(a){var b=a.getDate();return/^[1-9]$/.test(b)?c(a,"dd"):c(a,"d")}},{key:"dd",regex:"[0-2][0-9]{1}|3[0-1]{1}",apply:function(a){this.date=+a},formatter:function(a){return c(a,"dd")}},{key:"d",regex:"[1-2]?[0-9]{1}|3[0-1]{1}",apply:function(a){this.date=+a},formatter:function(a){return c(a,"d")}},{key:"EEEE",regex:b.DATETIME_FORMATS.DAY.join("|"),formatter:function(a){return c(a,"EEEE")}},{key:"EEE",regex:b.DATETIME_FORMATS.SHORTDAY.join("|"),formatter:function(a){return c(a,"EEE")}},{key:"HH",regex:"(?:0|1)[0-9]|2[0-3]",apply:function(a){this.hours=+a},formatter:function(a){return c(a,"HH")}},{key:"hh",regex:"0[0-9]|1[0-2]",apply:function(a){this.hours=+a},formatter:function(a){return c(a,"hh")}},{key:"H",regex:"1?[0-9]|2[0-3]",apply:function(a){this.hours=+a},formatter:function(a){return c(a,"H")}},{key:"h",regex:"[0-9]|1[0-2]",apply:function(a){this.hours=+a},formatter:function(a){return c(a,"h")}},{key:"mm",regex:"[0-5][0-9]",apply:function(a){this.minutes=+a},formatter:function(a){return c(a,"mm")}},{key:"m",regex:"[0-9]|[1-5][0-9]",apply:function(a){this.minutes=+a},formatter:function(a){return c(a,"m")}},{key:"sss",regex:"[0-9][0-9][0-9]",apply:function(a){this.milliseconds=+a},formatter:function(a){return c(a,"sss")}},{key:"ss",regex:"[0-5][0-9]",apply:function(a){this.seconds=+a},formatter:function(a){return c(a,"ss")}},{key:"s",regex:"[0-9]|[1-5][0-9]",apply:function(a){this.seconds=+a},formatter:function(a){return c(a,"s")}},{key:"a",regex:b.DATETIME_FORMATS.AMPMS.join("|"),apply:function(a){12===this.hours&&(this.hours=0),"PM"===a&&(this.hours+=12)},formatter:function(a){return c(a,"a")}},{key:"Z",regex:"[+-]\\d{4}",apply:function(a){var b=a.match(/([+-])(\d{2})(\d{2})/),c=b[1],d=b[2],e=b[3];this.hours+=g(c+d),this.minutes+=g(c+e)},formatter:function(a){return c(a,"Z")}},{key:"ww",regex:"[0-4][0-9]|5[0-3]",formatter:function(a){return c(a,"ww")}},{key:"w",regex:"[0-9]|[1-4][0-9]|5[0-3]",formatter:function(a){return c(a,"w")}},{key:"GGGG",regex:b.DATETIME_FORMATS.ERANAMES.join("|").replace(/\s/g,"\\s"),formatter:function(a){return c(a,"GGGG")}},{key:"GGG",regex:b.DATETIME_FORMATS.ERAS.join("|"),formatter:function(a){return c(a,"GGG")}},{key:"GG",regex:b.DATETIME_FORMATS.ERAS.join("|"),formatter:function(a){return c(a,"GG")}},{key:"G",regex:b.DATETIME_FORMATS.ERAS.join("|"),formatter:function(a){return c(a,"G")}}]},this.init(),this.filter=function(a,c){if(!angular.isDate(a)||isNaN(a)||!c)return"";c=b.DATETIME_FORMATS[c]||c,b.id!==m&&this.init(),this.formatters[c]||(this.formatters[c]=e(c,"formatter"));var d=this.formatters[c],f=d.map,g=c;return f.reduce(function(b,c,d){var e=g.match(new RegExp("(.*)"+c.key));e&&angular.isString(e[1])&&(b+=e[1],g=g.replace(e[1]+c.key,""));var h=d===f.length-1?g:"";return c.apply?b+c.apply.call(null,a)+h:b+h},"")},this.parse=function(c,d,g){if(!angular.isString(c)||!d)return c;d=b.DATETIME_FORMATS[d]||d,d=d.replace(o,"\\$&"),b.id!==m&&this.init(),this.parsers[d]||(this.parsers[d]=e(d,"apply"));var h=this.parsers[d],i=h.regex,j=h.map,k=c.match(i),l=!1;if(k&&k.length){var n,p;angular.isDate(g)&&!isNaN(g.getTime())?n={year:g.getFullYear(),month:g.getMonth(),date:g.getDate(),hours:g.getHours(),minutes:g.getMinutes(),seconds:g.getSeconds(),milliseconds:g.getMilliseconds()}:(g&&a.warn("dateparser:","baseDate is not a valid date"),n={year:1900,month:0,date:1,hours:0,minutes:0,seconds:0,milliseconds:0});for(var q=1,r=k.length;r>q;q++){var s=j[q-1];"Z"===s.matcher&&(l=!0),s.apply&&s.apply.call(n,k[q])}var t=l?Date.prototype.setUTCFullYear:Date.prototype.setFullYear,u=l?Date.prototype.setUTCHours:Date.prototype.setHours;return f(n.year,n.month,n.date)&&(!angular.isDate(g)||isNaN(g.getTime())||l?(p=new Date(0),t.call(p,n.year,n.month,n.date),u.call(p,n.hours||0,n.minutes||0,n.seconds||0,n.milliseconds||0)):(p=new Date(g),t.call(p,n.year,n.month,n.date),u.call(p,n.hours,n.minutes,n.seconds,n.milliseconds))),p}},this.toTimezone=h,this.fromTimezone=i,this.timezoneToOffset=j,this.addDateMinutes=k,this.convertTimezoneToLocal=l}]),angular.module("ui.bootstrap.isClass",[]).directive("uibIsClass",["$animate",function(a){var b=/^\s*([\s\S]+?)\s+on\s+([\s\S]+?)\s*$/,c=/^\s*([\s\S]+?)\s+for\s+([\s\S]+?)\s*$/;return{restrict:"A",compile:function(d,e){function f(a,b,c){i.push(a),j.push({scope:a,element:b}),o.forEach(function(b,c){g(b,a)}),a.$on("$destroy",h)}function g(b,d){var e=b.match(c),f=d.$eval(e[1]),g=e[2],h=k[b];if(!h){var i=function(b){var c=null;j.some(function(a){var d=a.scope.$eval(m);return d===b?(c=a,!0):void 0}),h.lastActivated!==c&&(h.lastActivated&&a.removeClass(h.lastActivated.element,f),c&&a.addClass(c.element,f),h.lastActivated=c)};k[b]=h={lastActivated:null,scope:d,watchFn:i,compareWithExp:g,watcher:d.$watch(g,i)}}h.watchFn(d.$eval(g))}function h(a){var b=a.targetScope,c=i.indexOf(b);if(i.splice(c,1),j.splice(c,1),i.length){var d=i[0];angular.forEach(k,function(a){a.scope===b&&(a.watcher=d.$watch(a.compareWithExp,a.watchFn),a.scope=d)})}else k={}}var i=[],j=[],k={},l=e.uibIsClass.match(b),m=l[2],n=l[1],o=n.split(",");return f}}}]),angular.module("ui.bootstrap.datepicker",["ui.bootstrap.dateparser","ui.bootstrap.isClass"]).value("$datepickerSuppressError",!1).value("$datepickerLiteralWarning",!0).constant("uibDatepickerConfig",{datepickerMode:"day",formatDay:"dd",formatMonth:"MMMM",formatYear:"yyyy",formatDayHeader:"EEE",formatDayTitle:"MMMM yyyy",formatMonthTitle:"yyyy",maxDate:null,maxMode:"year",minDate:null,minMode:"day",ngModelOptions:{},shortcutPropagation:!1,showWeeks:!0,yearColumns:5,yearRows:4}).controller("UibDatepickerController",["$scope","$attrs","$parse","$interpolate","$locale","$log","dateFilter","uibDatepickerConfig","$datepickerLiteralWarning","$datepickerSuppressError","uibDateParser",function(a,b,c,d,e,f,g,h,i,j,k){function l(b){a.datepickerMode=b,a.datepickerOptions.datepickerMode=b}var m=this,n={$setViewValue:angular.noop},o={},p=[];!!b.datepickerOptions;a.datepickerOptions||(a.datepickerOptions={}),this.modes=["day","month","year"],["customClass","dateDisabled","datepickerMode","formatDay","formatDayHeader","formatDayTitle","formatMonth","formatMonthTitle","formatYear","maxDate","maxMode","minDate","minMode","showWeeks","shortcutPropagation","startingDay","yearColumns","yearRows"].forEach(function(b){switch(b){case"customClass":case"dateDisabled":a[b]=a.datepickerOptions[b]||angular.noop;break;case"datepickerMode":a.datepickerMode=angular.isDefined(a.datepickerOptions.datepickerMode)?a.datepickerOptions.datepickerMode:h.datepickerMode;break;case"formatDay":case"formatDayHeader":case"formatDayTitle":case"formatMonth":case"formatMonthTitle":case"formatYear":m[b]=angular.isDefined(a.datepickerOptions[b])?d(a.datepickerOptions[b])(a.$parent):h[b];break;case"showWeeks":case"shortcutPropagation":case"yearColumns":case"yearRows":m[b]=angular.isDefined(a.datepickerOptions[b])?a.datepickerOptions[b]:h[b];break;case"startingDay":angular.isDefined(a.datepickerOptions.startingDay)?m.startingDay=a.datepickerOptions.startingDay:angular.isNumber(h.startingDay)?m.startingDay=h.startingDay:m.startingDay=(e.DATETIME_FORMATS.FIRSTDAYOFWEEK+8)%7;break;case"maxDate":case"minDate":a.$watch("datepickerOptions."+b,function(a){a?angular.isDate(a)?m[b]=k.fromTimezone(new Date(a),o.timezone):(i&&f.warn("Literal date support has been deprecated, please switch to date object usage"),m[b]=new Date(g(a,"medium"))):m[b]=h[b]?k.fromTimezone(new Date(h[b]),o.timezone):null,m.refreshView()});break;case"maxMode":case"minMode":a.datepickerOptions[b]?a.$watch(function(){return a.datepickerOptions[b]},function(c){m[b]=a[b]=angular.isDefined(c)?c:datepickerOptions[b],("minMode"===b&&m.modes.indexOf(a.datepickerOptions.datepickerMode)m.modes.indexOf(m[b]))&&(a.datepickerMode=m[b],a.datepickerOptions.datepickerMode=m[b])}):m[b]=a[b]=h[b]||null}}),a.uniqueId="datepicker-"+a.$id+"-"+Math.floor(1e4*Math.random()),a.disabled=angular.isDefined(b.disabled)||!1,angular.isDefined(b.ngDisabled)&&p.push(a.$parent.$watch(b.ngDisabled,function(b){a.disabled=b,m.refreshView()})),a.isActive=function(b){return 0===m.compare(b.date,m.activeDate)?(a.activeDateId=b.uid,!0):!1},this.init=function(b){n=b,o=b.$options||h.ngModelOptions,a.datepickerOptions.initDate?(m.activeDate=k.fromTimezone(a.datepickerOptions.initDate,o.timezone)||new Date,a.$watch("datepickerOptions.initDate",function(a){a&&(n.$isEmpty(n.$modelValue)||n.$invalid)&&(m.activeDate=k.fromTimezone(a,o.timezone),m.refreshView())})):m.activeDate=new Date,this.activeDate=n.$modelValue?k.fromTimezone(new Date(n.$modelValue),o.timezone):k.fromTimezone(new Date,o.timezone),n.$render=function(){m.render()}},this.render=function(){if(n.$viewValue){var a=new Date(n.$viewValue),b=!isNaN(a);b?this.activeDate=k.fromTimezone(a,o.timezone):j||f.error('Datepicker directive: "ng-model" value must be a Date object')}this.refreshView()},this.refreshView=function(){if(this.element){a.selectedDt=null,this._refreshView(),a.activeDt&&(a.activeDateId=a.activeDt.uid);var b=n.$viewValue?new Date(n.$viewValue):null;b=k.fromTimezone(b,o.timezone),n.$setValidity("dateDisabled",!b||this.element&&!this.isDisabled(b))}},this.createDateObject=function(b,c){var d=n.$viewValue?new Date(n.$viewValue):null;d=k.fromTimezone(d,o.timezone);var e=new Date;e=k.fromTimezone(e,o.timezone);var f=this.compare(b,e),g={date:b,label:k.filter(b,c),selected:d&&0===this.compare(b,d),disabled:this.isDisabled(b),past:0>f,current:0===f,future:f>0,customClass:this.customClass(b)||null};return d&&0===this.compare(b,d)&&(a.selectedDt=g),m.activeDate&&0===this.compare(g.date,m.activeDate)&&(a.activeDt=g),g},this.isDisabled=function(b){return a.disabled||this.minDate&&this.compare(b,this.minDate)<0||this.maxDate&&this.compare(b,this.maxDate)>0||a.dateDisabled&&a.dateDisabled({date:b,mode:a.datepickerMode})},this.customClass=function(b){return a.customClass({date:b,mode:a.datepickerMode})},this.split=function(a,b){for(var c=[];a.length>0;)c.push(a.splice(0,b));return c},a.select=function(b){if(a.datepickerMode===m.minMode){var c=n.$viewValue?k.fromTimezone(new Date(n.$viewValue),o.timezone):new Date(0,0,0,0,0,0,0);c.setFullYear(b.getFullYear(),b.getMonth(),b.getDate()),c=k.toTimezone(c,o.timezone),n.$setViewValue(c),n.$render()}else m.activeDate=b,l(m.modes[m.modes.indexOf(a.datepickerMode)-1]),a.$emit("uib:datepicker.mode");a.$broadcast("uib:datepicker.focus")},a.move=function(a){var b=m.activeDate.getFullYear()+a*(m.step.years||0),c=m.activeDate.getMonth()+a*(m.step.months||0);m.activeDate.setFullYear(b,c,1),m.refreshView()},a.toggleMode=function(b){b=b||1,a.datepickerMode===m.maxMode&&1===b||a.datepickerMode===m.minMode&&-1===b||(l(m.modes[m.modes.indexOf(a.datepickerMode)+b]),a.$emit("uib:datepicker.mode"))},a.keys={13:"enter",32:"space",33:"pageup",34:"pagedown",35:"end",36:"home",37:"left",38:"up",39:"right",40:"down"};var q=function(){m.element[0].focus()};a.$on("uib:datepicker.focus",q),a.keydown=function(b){var c=a.keys[b.which];if(c&&!b.shiftKey&&!b.altKey&&!a.disabled)if(b.preventDefault(),m.shortcutPropagation||b.stopPropagation(),"enter"===c||"space"===c){if(m.isDisabled(m.activeDate))return;a.select(m.activeDate)}else!b.ctrlKey||"up"!==c&&"down"!==c?(m.handleKeyDown(c,b),m.refreshView()):a.toggleMode("up"===c?1:-1)},a.$on("$destroy",function(){for(;p.length;)p.shift()()})}]).controller("UibDaypickerController",["$scope","$element","dateFilter",function(a,b,c){function d(a,b){return 1!==b||a%4!==0||a%100===0&&a%400!==0?f[b]:29}function e(a){var b=new Date(a);b.setDate(b.getDate()+4-(b.getDay()||7));var c=b.getTime();return b.setMonth(0),b.setDate(1),Math.floor(Math.round((c-b)/864e5)/7)+1}var f=[31,28,31,30,31,30,31,31,30,31,30,31];this.step={months:1},this.element=b,this.init=function(b){angular.extend(b,this),a.showWeeks=b.showWeeks,b.refreshView()},this.getDates=function(a,b){for(var c,d=new Array(b),e=new Date(a),f=0;b>f;)c=new Date(e),d[f++]=c,e.setDate(e.getDate()+1);return d},this._refreshView=function(){var b=this.activeDate.getFullYear(),d=this.activeDate.getMonth(),f=new Date(this.activeDate);f.setFullYear(b,d,1);var g=this.startingDay-f.getDay(),h=g>0?7-g:-g,i=new Date(f);h>0&&i.setDate(-h+1);for(var j=this.getDates(i,42),k=0;42>k;k++)j[k]=angular.extend(this.createDateObject(j[k],this.formatDay),{secondary:j[k].getMonth()!==d,uid:a.uniqueId+"-"+k});a.labels=new Array(7);for(var l=0;7>l;l++)a.labels[l]={abbr:c(j[l].date,this.formatDayHeader),full:c(j[l].date,"EEEE")};if(a.title=c(this.activeDate,this.formatDayTitle),a.rows=this.split(j,7),a.showWeeks){a.weekNumbers=[];for(var m=(11-this.startingDay)%7,n=a.rows.length,o=0;n>o;o++)a.weekNumbers.push(e(a.rows[o][m].date))}},this.compare=function(a,b){var c=new Date(a.getFullYear(),a.getMonth(),a.getDate()),d=new Date(b.getFullYear(),b.getMonth(),b.getDate());return c.setFullYear(a.getFullYear()),d.setFullYear(b.getFullYear()),c-d},this.handleKeyDown=function(a,b){var c=this.activeDate.getDate();if("left"===a)c-=1;else if("up"===a)c-=7;else if("right"===a)c+=1;else if("down"===a)c+=7;else if("pageup"===a||"pagedown"===a){var e=this.activeDate.getMonth()+("pageup"===a?-1:1);this.activeDate.setMonth(e,1),c=Math.min(d(this.activeDate.getFullYear(),this.activeDate.getMonth()),c)}else"home"===a?c=1:"end"===a&&(c=d(this.activeDate.getFullYear(),this.activeDate.getMonth()));this.activeDate.setDate(c)}}]).controller("UibMonthpickerController",["$scope","$element","dateFilter",function(a,b,c){this.step={years:1},this.element=b,this.init=function(a){angular.extend(a,this),a.refreshView()},this._refreshView=function(){for(var b,d=new Array(12),e=this.activeDate.getFullYear(),f=0;12>f;f++)b=new Date(this.activeDate),b.setFullYear(e,f,1),d[f]=angular.extend(this.createDateObject(b,this.formatMonth),{uid:a.uniqueId+"-"+f});a.title=c(this.activeDate,this.formatMonthTitle),a.rows=this.split(d,3)},this.compare=function(a,b){var c=new Date(a.getFullYear(),a.getMonth()),d=new Date(b.getFullYear(),b.getMonth());return c.setFullYear(a.getFullYear()),d.setFullYear(b.getFullYear()),c-d},this.handleKeyDown=function(a,b){var c=this.activeDate.getMonth();if("left"===a)c-=1;else if("up"===a)c-=3;else if("right"===a)c+=1;else if("down"===a)c+=3;else if("pageup"===a||"pagedown"===a){var d=this.activeDate.getFullYear()+("pageup"===a?-1:1);this.activeDate.setFullYear(d)}else"home"===a?c=0:"end"===a&&(c=11);this.activeDate.setMonth(c)}}]).controller("UibYearpickerController",["$scope","$element","dateFilter",function(a,b,c){function d(a){return parseInt((a-1)/f,10)*f+1}var e,f;this.element=b,this.yearpickerInit=function(){e=this.yearColumns,f=this.yearRows*e,this.step={years:f}},this._refreshView=function(){for(var b,c=new Array(f),g=0,h=d(this.activeDate.getFullYear());f>g;g++)b=new Date(this.activeDate),b.setFullYear(h+g,0,1),c[g]=angular.extend(this.createDateObject(b,this.formatYear),{uid:a.uniqueId+"-"+g});a.title=[c[0].label,c[f-1].label].join(" - "),a.rows=this.split(c,e),a.columns=e},this.compare=function(a,b){return a.getFullYear()-b.getFullYear()},this.handleKeyDown=function(a,b){var c=this.activeDate.getFullYear();"left"===a?c-=1:"up"===a?c-=e:"right"===a?c+=1:"down"===a?c+=e:"pageup"===a||"pagedown"===a?c+=("pageup"===a?-1:1)*f:"home"===a?c=d(this.activeDate.getFullYear()):"end"===a&&(c=d(this.activeDate.getFullYear())+f-1),this.activeDate.setFullYear(c)}}]).directive("uibDatepicker",function(){return{replace:!0,templateUrl:function(a,b){return b.templateUrl||"uib/template/datepicker/datepicker.html"},scope:{datepickerOptions:"=?"},require:["uibDatepicker","^ngModel"],controller:"UibDatepickerController",controllerAs:"datepicker",link:function(a,b,c,d){var e=d[0],f=d[1];e.init(f)}}}).directive("uibDaypicker",function(){return{replace:!0,templateUrl:function(a,b){return b.templateUrl||"uib/template/datepicker/day.html"},require:["^uibDatepicker","uibDaypicker"],controller:"UibDaypickerController",link:function(a,b,c,d){var e=d[0],f=d[1];f.init(e)}}}).directive("uibMonthpicker",function(){return{replace:!0,templateUrl:function(a,b){return b.templateUrl||"uib/template/datepicker/month.html"},require:["^uibDatepicker","uibMonthpicker"],controller:"UibMonthpickerController",link:function(a,b,c,d){var e=d[0],f=d[1];f.init(e)}}}).directive("uibYearpicker",function(){return{replace:!0,templateUrl:function(a,b){return b.templateUrl||"uib/template/datepicker/year.html"},require:["^uibDatepicker","uibYearpicker"],controller:"UibYearpickerController",link:function(a,b,c,d){var e=d[0];angular.extend(e,d[1]),e.yearpickerInit(),e.refreshView()}}}),angular.module("ui.bootstrap.position",[]).factory("$uibPosition",["$document","$window",function(a,b){var c,d,e={normal:/(auto|scroll)/,hidden:/(auto|scroll|hidden)/},f={auto:/\s?auto?\s?/i,primary:/^(top|bottom|left|right)$/,secondary:/^(top|bottom|left|right|center)$/,vertical:/^(top|bottom)$/},g=/(HTML|BODY)/;return{getRawNode:function(a){return a.nodeName?a:a[0]||a},parseStyle:function(a){return a=parseFloat(a),isFinite(a)?a:0},offsetParent:function(c){function d(a){return"static"===(b.getComputedStyle(a).position||"static")}c=this.getRawNode(c);for(var e=c.offsetParent||a[0].documentElement;e&&e!==a[0].documentElement&&d(e);)e=e.offsetParent;return e||a[0].documentElement},scrollbarWidth:function(e){if(e){if(angular.isUndefined(d)){var f=a.find("body");f.addClass("uib-position-body-scrollbar-measure"),d=b.innerWidth-f[0].clientWidth,d=isFinite(d)?d:0,f.removeClass("uib-position-body-scrollbar-measure")}return d}if(angular.isUndefined(c)){var g=angular.element('
');a.find("body").append(g),c=g[0].offsetWidth-g[0].clientWidth,c=isFinite(c)?c:0,g.remove()}return c},scrollbarPadding:function(a){a=this.getRawNode(a);var c=b.getComputedStyle(a),d=this.parseStyle(c.paddingRight),e=this.parseStyle(c.paddingBottom),f=this.scrollParent(a,!1,!0),h=this.scrollbarWidth(f,g.test(f.tagName));return{scrollbarWidth:h,widthOverflow:f.scrollWidth>f.clientWidth,right:d+h,originalRight:d,heightOverflow:f.scrollHeight>f.clientHeight,bottom:e+h,originalBottom:e}},isScrollable:function(a,c){a=this.getRawNode(a);var d=c?e.hidden:e.normal,f=b.getComputedStyle(a);return d.test(f.overflow+f.overflowY+f.overflowX)},scrollParent:function(c,d,f){c=this.getRawNode(c);var g=d?e.hidden:e.normal,h=a[0].documentElement,i=b.getComputedStyle(c);if(f&&g.test(i.overflow+i.overflowY+i.overflowX))return c;var j="absolute"===i.position,k=c.parentElement||h;if(k===h||"fixed"===i.position)return h;for(;k.parentElement&&k!==h;){var l=b.getComputedStyle(k);if(j&&"static"!==l.position&&(j=!1),!j&&g.test(l.overflow+l.overflowY+l.overflowX))break;k=k.parentElement}return k},position:function(c,d){c=this.getRawNode(c);var e=this.offset(c);if(d){var f=b.getComputedStyle(c);e.top-=this.parseStyle(f.marginTop),e.left-=this.parseStyle(f.marginLeft)}var g=this.offsetParent(c),h={top:0,left:0};return g!==a[0].documentElement&&(h=this.offset(g),h.top+=g.clientTop-g.scrollTop,h.left+=g.clientLeft-g.scrollLeft),{width:Math.round(angular.isNumber(e.width)?e.width:c.offsetWidth),height:Math.round(angular.isNumber(e.height)?e.height:c.offsetHeight),top:Math.round(e.top-h.top),left:Math.round(e.left-h.left)}},offset:function(c){c=this.getRawNode(c);var d=c.getBoundingClientRect();return{width:Math.round(angular.isNumber(d.width)?d.width:c.offsetWidth),height:Math.round(angular.isNumber(d.height)?d.height:c.offsetHeight), +top:Math.round(d.top+(b.pageYOffset||a[0].documentElement.scrollTop)),left:Math.round(d.left+(b.pageXOffset||a[0].documentElement.scrollLeft))}},viewportOffset:function(c,d,e){c=this.getRawNode(c),e=e!==!1;var f=c.getBoundingClientRect(),g={top:0,left:0,bottom:0,right:0},h=d?a[0].documentElement:this.scrollParent(c),i=h.getBoundingClientRect();if(g.top=i.top+h.clientTop,g.left=i.left+h.clientLeft,h===a[0].documentElement&&(g.top+=b.pageYOffset,g.left+=b.pageXOffset),g.bottom=g.top+h.clientHeight,g.right=g.left+h.clientWidth,e){var j=b.getComputedStyle(h);g.top+=this.parseStyle(j.paddingTop),g.bottom-=this.parseStyle(j.paddingBottom),g.left+=this.parseStyle(j.paddingLeft),g.right-=this.parseStyle(j.paddingRight)}return{top:Math.round(f.top-g.top),bottom:Math.round(g.bottom-f.bottom),left:Math.round(f.left-g.left),right:Math.round(g.right-f.right)}},parsePlacement:function(a){var b=f.auto.test(a);return b&&(a=a.replace(f.auto,"")),a=a.split("-"),a[0]=a[0]||"top",f.primary.test(a[0])||(a[0]="top"),a[1]=a[1]||"center",f.secondary.test(a[1])||(a[1]="center"),b?a[2]=!0:a[2]=!1,a},positionElements:function(a,c,d,e){a=this.getRawNode(a),c=this.getRawNode(c);var g=angular.isDefined(c.offsetWidth)?c.offsetWidth:c.prop("offsetWidth"),h=angular.isDefined(c.offsetHeight)?c.offsetHeight:c.prop("offsetHeight");d=this.parsePlacement(d);var i=e?this.offset(a):this.position(a),j={top:0,left:0,placement:""};if(d[2]){var k=this.viewportOffset(a,e),l=b.getComputedStyle(c),m={width:g+Math.round(Math.abs(this.parseStyle(l.marginLeft)+this.parseStyle(l.marginRight))),height:h+Math.round(Math.abs(this.parseStyle(l.marginTop)+this.parseStyle(l.marginBottom)))};if(d[0]="top"===d[0]&&m.height>k.top&&m.height<=k.bottom?"bottom":"bottom"===d[0]&&m.height>k.bottom&&m.height<=k.top?"top":"left"===d[0]&&m.width>k.left&&m.width<=k.right?"right":"right"===d[0]&&m.width>k.right&&m.width<=k.left?"left":d[0],d[1]="top"===d[1]&&m.height-i.height>k.bottom&&m.height-i.height<=k.top?"bottom":"bottom"===d[1]&&m.height-i.height>k.top&&m.height-i.height<=k.bottom?"top":"left"===d[1]&&m.width-i.width>k.right&&m.width-i.width<=k.left?"right":"right"===d[1]&&m.width-i.width>k.left&&m.width-i.width<=k.right?"left":d[1],"center"===d[1])if(f.vertical.test(d[0])){var n=i.width/2-g/2;k.left+n<0&&m.width-i.width<=k.right?d[1]="left":k.right+n<0&&m.width-i.width<=k.left&&(d[1]="right")}else{var o=i.height/2-m.height/2;k.top+o<0&&m.height-i.height<=k.bottom?d[1]="top":k.bottom+o<0&&m.height-i.height<=k.top&&(d[1]="bottom")}}switch(d[0]){case"top":j.top=i.top-h;break;case"bottom":j.top=i.top+i.height;break;case"left":j.left=i.left-g;break;case"right":j.left=i.left+i.width}switch(d[1]){case"top":j.top=i.top;break;case"bottom":j.top=i.top+i.height-h;break;case"left":j.left=i.left;break;case"right":j.left=i.left+i.width-g;break;case"center":f.vertical.test(d[0])?j.left=i.left+i.width/2-g/2:j.top=i.top+i.height/2-h/2}return j.top=Math.round(j.top),j.left=Math.round(j.left),j.placement="center"===d[1]?d[0]:d[0]+"-"+d[1],j},positionArrow:function(a,c){a=this.getRawNode(a);var d=a.querySelector(".tooltip-inner, .popover-inner");if(d){var e=angular.element(d).hasClass("tooltip-inner"),g=e?a.querySelector(".tooltip-arrow"):a.querySelector(".arrow");if(g){var h={top:"",bottom:"",left:"",right:""};if(c=this.parsePlacement(c),"center"===c[1])return void angular.element(g).css(h);var i="border-"+c[0]+"-width",j=b.getComputedStyle(g)[i],k="border-";k+=f.vertical.test(c[0])?c[0]+"-"+c[1]:c[1]+"-"+c[0],k+="-radius";var l=b.getComputedStyle(e?d:a)[k];switch(c[0]){case"top":h.bottom=e?"0":"-"+j;break;case"bottom":h.top=e?"0":"-"+j;break;case"left":h.right=e?"0":"-"+j;break;case"right":h.left=e?"0":"-"+j}h[c[1]]=l,angular.element(g).css(h)}}}}}]),angular.module("ui.bootstrap.datepickerPopup",["ui.bootstrap.datepicker","ui.bootstrap.position"]).value("$datepickerPopupLiteralWarning",!0).constant("uibDatepickerPopupConfig",{altInputFormats:[],appendToBody:!1,clearText:"Clear",closeOnDateSelection:!0,closeText:"Done",currentText:"Today",datepickerPopup:"yyyy-MM-dd",datepickerPopupTemplateUrl:"uib/template/datepickerPopup/popup.html",datepickerTemplateUrl:"uib/template/datepicker/datepicker.html",html5Types:{date:"yyyy-MM-dd","datetime-local":"yyyy-MM-ddTHH:mm:ss.sss",month:"yyyy-MM"},onOpenFocus:!0,showButtonBar:!0,placement:"auto bottom-left"}).controller("UibDatepickerPopupController",["$scope","$element","$attrs","$compile","$log","$parse","$window","$document","$rootScope","$uibPosition","dateFilter","uibDateParser","uibDatepickerPopupConfig","$timeout","uibDatepickerConfig","$datepickerPopupLiteralWarning",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p){function q(b){var c=l.parse(b,w,a.date);if(isNaN(c))for(var d=0;d
"),G?(J=G.timezone,a.ngModelOptions=angular.copy(G),a.ngModelOptions.timezone=null,a.ngModelOptions.updateOnDefault===!0&&(a.ngModelOptions.updateOn=a.ngModelOptions.updateOn?a.ngModelOptions.updateOn+" default":"default"),C.attr("ng-model-options","ngModelOptions")):J=null,C.attr({"ng-model":"date","ng-change":"dateSelection(date)","template-url":A}),D=angular.element(C.children()[0]),D.attr("template-url",B),a.datepickerOptions||(a.datepickerOptions={}),K&&"month"===c.type&&(a.datepickerOptions.datepickerMode="month",a.datepickerOptions.minMode="month"),D.attr("datepicker-options","datepickerOptions"),K?F.$formatters.push(function(b){return a.date=l.fromTimezone(b,J),b}):(F.$$parserName="date",F.$validators.date=s,F.$parsers.unshift(r),F.$formatters.push(function(b){return F.$isEmpty(b)?(a.date=b,b):(a.date=l.fromTimezone(b,J),angular.isNumber(a.date)&&(a.date=new Date(a.date)),l.filter(a.date,w))})),F.$viewChangeListeners.push(function(){a.date=q(F.$viewValue)}),b.on("keydown",u),H=d(C)(a),C.remove(),y?h.find("body").append(H):b.after(H),a.$on("$destroy",function(){for(a.isOpen===!0&&(i.$$phase||a.$apply(function(){a.isOpen=!1})),H.remove(),b.off("keydown",u),h.off("click",t),E&&E.off("scroll",v),angular.element(g).off("resize",v);L.length;)L.shift()()})},a.getText=function(b){return a[b+"Text"]||m[b+"Text"]},a.isDisabled=function(b){"today"===b&&(b=l.fromTimezone(new Date,J));var c={};return angular.forEach(["minDate","maxDate"],function(b){a.datepickerOptions[b]?angular.isDate(a.datepickerOptions[b])?c[b]=l.fromTimezone(new Date(a.datepickerOptions[b]),J):(p&&e.warn("Literal date support has been deprecated, please switch to date object usage"),c[b]=new Date(k(a.datepickerOptions[b],"medium"))):c[b]=null}),a.datepickerOptions&&c.minDate&&a.compare(b,c.minDate)<0||c.maxDate&&a.compare(b,c.maxDate)>0},a.compare=function(a,b){return new Date(a.getFullYear(),a.getMonth(),a.getDate())-new Date(b.getFullYear(),b.getMonth(),b.getDate())},a.dateSelection=function(c){angular.isDefined(c)&&(a.date=c);var d=a.date?l.filter(a.date,w):null;b.val(d),F.$setViewValue(d),x&&(a.isOpen=!1,b[0].focus())},a.keydown=function(c){27===c.which&&(c.stopPropagation(),a.isOpen=!1,b[0].focus())},a.select=function(b,c){if(c.stopPropagation(),"today"===b){var d=new Date;angular.isDate(a.date)?(b=new Date(a.date),b.setFullYear(d.getFullYear(),d.getMonth(),d.getDate())):b=new Date(d.setHours(0,0,0,0))}a.dateSelection(b)},a.close=function(c){c.stopPropagation(),a.isOpen=!1,b[0].focus()},a.disabled=angular.isDefined(c.disabled)||!1,c.ngDisabled&&L.push(a.$parent.$watch(f(c.ngDisabled),function(b){a.disabled=b})),a.$watch("isOpen",function(d){d?a.disabled?a.isOpen=!1:n(function(){v(),z&&a.$broadcast("uib:datepicker.focus"),h.on("click",t);var d=c.popupPlacement?c.popupPlacement:m.placement;y||j.parsePlacement(d)[2]?(E=E||angular.element(j.scrollParent(b)),E&&E.on("scroll",v)):E=null,angular.element(g).on("resize",v)},0,!1):(h.off("click",t),E&&E.off("scroll",v),angular.element(g).off("resize",v))}),a.$on("uib:datepicker.mode",function(){n(v,0,!1)})}]).directive("uibDatepickerPopup",function(){return{require:["ngModel","uibDatepickerPopup"],controller:"UibDatepickerPopupController",scope:{datepickerOptions:"=?",isOpen:"=?",currentText:"@",clearText:"@",closeText:"@"},link:function(a,b,c,d){var e=d[0],f=d[1];f.init(e)}}}).directive("uibDatepickerPopupWrap",function(){return{replace:!0,transclude:!0,templateUrl:function(a,b){return b.templateUrl||"uib/template/datepickerPopup/popup.html"}}}),angular.module("ui.bootstrap.debounce",[]).factory("$$debounce",["$timeout",function(a){return function(b,c){var d;return function(){var e=this,f=Array.prototype.slice.call(arguments);d&&a.cancel(d),d=a(function(){b.apply(e,f)},c)}}}]),angular.module("ui.bootstrap.dropdown",["ui.bootstrap.position"]).constant("uibDropdownConfig",{appendToOpenClass:"uib-dropdown-open",openClass:"open"}).service("uibDropdownService",["$document","$rootScope",function(a,b){var c=null;this.open=function(b,f){c||(a.on("click",d),f.on("keydown",e)),c&&c!==b&&(c.isOpen=!1),c=b},this.close=function(b,f){c===b&&(c=null,a.off("click",d),f.off("keydown",e))};var d=function(a){if(c&&!(a&&"disabled"===c.getAutoClose()||a&&3===a.which)){var d=c.getToggleElement();if(!(a&&d&&d[0].contains(a.target))){var e=c.getDropdownElement();a&&"outsideClick"===c.getAutoClose()&&e&&e[0].contains(a.target)||(c.isOpen=!1,b.$$phase||c.$apply())}}},e=function(a){27===a.which?(a.stopPropagation(),c.focusToggleElement(),d()):c.isKeynavEnabled()&&-1!==[38,40].indexOf(a.which)&&c.isOpen&&(a.preventDefault(),a.stopPropagation(),c.focusDropdownEntry(a.which))}}]).controller("UibDropdownController",["$scope","$element","$attrs","$parse","uibDropdownConfig","uibDropdownService","$animate","$uibPosition","$document","$compile","$templateRequest",function(a,b,c,d,e,f,g,h,i,j,k){var l,m,n=this,o=a.$new(),p=e.appendToOpenClass,q=e.openClass,r=angular.noop,s=c.onToggle?d(c.onToggle):angular.noop,t=!1,u=null,v=!1,w=i.find("body");b.addClass("dropdown"),this.init=function(){if(c.isOpen&&(m=d(c.isOpen),r=m.assign,a.$watch(m,function(a){o.isOpen=!!a})),angular.isDefined(c.dropdownAppendTo)){var e=d(c.dropdownAppendTo)(o);e&&(u=angular.element(e))}t=angular.isDefined(c.dropdownAppendToBody),v=angular.isDefined(c.keyboardNav),t&&!u&&(u=w),u&&n.dropdownMenu&&(u.append(n.dropdownMenu),b.on("$destroy",function(){n.dropdownMenu.remove()}))},this.toggle=function(a){return o.isOpen=arguments.length?!!a:!o.isOpen,angular.isFunction(r)&&r(o,o.isOpen),o.isOpen},this.isOpen=function(){return o.isOpen},o.getToggleElement=function(){return n.toggleElement},o.getAutoClose=function(){return c.autoClose||"always"},o.getElement=function(){return b},o.isKeynavEnabled=function(){return v},o.focusDropdownEntry=function(a){var c=n.dropdownMenu?angular.element(n.dropdownMenu).find("a"):b.find("ul").eq(0).find("a");switch(a){case 40:angular.isNumber(n.selectedOption)?n.selectedOption=n.selectedOption===c.length-1?n.selectedOption:n.selectedOption+1:n.selectedOption=0;break;case 38:angular.isNumber(n.selectedOption)?n.selectedOption=0===n.selectedOption?0:n.selectedOption-1:n.selectedOption=c.length-1}c[n.selectedOption].focus()},o.getDropdownElement=function(){return n.dropdownMenu},o.focusToggleElement=function(){n.toggleElement&&n.toggleElement[0].focus()},o.$watch("isOpen",function(c,d){if(u&&n.dropdownMenu){var e,i,m=h.positionElements(b,n.dropdownMenu,"bottom-left",!0);if(e={top:m.top+"px",display:c?"block":"none"},i=n.dropdownMenu.hasClass("dropdown-menu-right"),i?(e.left="auto",e.right=window.innerWidth-(m.left+b.prop("offsetWidth"))+"px"):(e.left=m.left+"px",e.right="auto"),!t){var v=h.offset(u);e.top=m.top-v.top+"px",i?e.right=window.innerWidth-(m.left-v.left+b.prop("offsetWidth"))+"px":e.left=m.left-v.left+"px"}n.dropdownMenu.css(e)}var w=u?u:b,x=w.hasClass(u?p:q);if(x===!c&&g[c?"addClass":"removeClass"](w,u?p:q).then(function(){angular.isDefined(c)&&c!==d&&s(a,{open:!!c})}),c)n.dropdownMenuTemplateUrl&&k(n.dropdownMenuTemplateUrl).then(function(a){l=o.$new(),j(a.trim())(l,function(a){var b=a;n.dropdownMenu.replaceWith(b),n.dropdownMenu=b})}),o.focusToggleElement(),f.open(o,b);else{if(n.dropdownMenuTemplateUrl){l&&l.$destroy();var y=angular.element('');n.dropdownMenu.replaceWith(y),n.dropdownMenu=y}f.close(o,b),n.selectedOption=null}angular.isFunction(r)&&r(a,c)})}]).directive("uibDropdown",function(){return{controller:"UibDropdownController",link:function(a,b,c,d){d.init()}}}).directive("uibDropdownMenu",function(){return{restrict:"A",require:"?^uibDropdown",link:function(a,b,c,d){if(d&&!angular.isDefined(c.dropdownNested)){b.addClass("dropdown-menu");var e=c.templateUrl;e&&(d.dropdownMenuTemplateUrl=e),d.dropdownMenu||(d.dropdownMenu=b)}}}}).directive("uibDropdownToggle",function(){return{require:"?^uibDropdown",link:function(a,b,c,d){if(d){b.addClass("dropdown-toggle"),d.toggleElement=b;var e=function(e){e.preventDefault(),b.hasClass("disabled")||c.disabled||a.$apply(function(){d.toggle()})};b.bind("click",e),b.attr({"aria-haspopup":!0,"aria-expanded":!1}),a.$watch(d.isOpen,function(a){b.attr("aria-expanded",!!a)}),a.$on("$destroy",function(){b.unbind("click",e)})}}}}),angular.module("ui.bootstrap.stackedMap",[]).factory("$$stackedMap",function(){return{createNew:function(){var a=[];return{add:function(b,c){a.push({key:b,value:c})},get:function(b){for(var c=0;c-1&&y>a&&(a=y),a}function l(a,b){var c=v.get(a).value,d=c.appendTo;v.remove(a),z=v.top(),z&&(y=parseInt(z.value.modalDomEl.attr("index"),10)),o(c.modalDomEl,c.modalScope,function(){var b=c.openedClass||u;w.remove(b,a);var e=w.hasKey(b);d.toggleClass(b,e),!e&&t&&t.heightOverflow&&t.scrollbarWidth&&(t.originalRight?d.css({paddingRight:t.originalRight+"px"}):d.css({paddingRight:""}),t=null),m(!0)},c.closedDeferred),n(),b&&b.focus?b.focus():d.focus&&d.focus()}function m(a){var b;v.length()>0&&(b=v.top().value,b.modalDomEl.toggleClass(b.windowTopClass||"",a))}function n(){if(r&&-1===k()){var a=s;o(r,s,function(){a=null}),r=void 0,s=void 0}}function o(b,c,d,e){function g(){g.done||(g.done=!0,a.leave(b).then(function(){b.remove(),e&&e.resolve()}),c.$destroy(),d&&d())}var h,i=null,j=function(){return h||(h=f.defer(),i=h.promise),function(){h.resolve()}};return c.$broadcast(x.NOW_CLOSING_EVENT,j),f.when(i).then(g)}function p(a){if(a.isDefaultPrevented())return a;var b=v.top();if(b)switch(a.which){case 27:b.value.keyboard&&(a.preventDefault(),e.$apply(function(){x.dismiss(b.key,"escape key press")}));break;case 9:var c=x.loadFocusElementList(b),d=!1;a.shiftKey?(x.isFocusInFirstItem(a,c)||x.isModalFocused(a,b))&&(d=x.focusLastFocusableElement(c)):x.isFocusInLastItem(a,c)&&(d=x.focusFirstFocusableElement(c)),d&&(a.preventDefault(),a.stopPropagation())}}function q(a,b,c){return!a.value.modalScope.$broadcast("modal.closing",b,c).defaultPrevented}var r,s,t,u="modal-open",v=h.createNew(),w=g.createNew(),x={NOW_CLOSING_EVENT:"modal.stack.now-closing"},y=0,z=null,A="a[href], area[href], input:not([disabled]), button:not([disabled]),select:not([disabled]), textarea:not([disabled]), iframe, object, embed, *[tabindex], *[contenteditable=true]";return e.$watch(k,function(a){s&&(s.index=a)}),c.on("keydown",p),e.$on("$destroy",function(){c.off("keydown",p)}),x.open=function(b,f){var g=c[0].activeElement,h=f.openedClass||u;m(!1),z=v.top(),v.add(b,{deferred:f.deferred,renderDeferred:f.renderDeferred,closedDeferred:f.closedDeferred,modalScope:f.scope,backdrop:f.backdrop,keyboard:f.keyboard,openedClass:f.openedClass,windowTopClass:f.windowTopClass,animation:f.animation,appendTo:f.appendTo}),w.put(h,b);var j=f.appendTo,l=k();if(!j.length)throw new Error("appendTo element not found. Make sure that the element passed is in DOM.");l>=0&&!r&&(s=e.$new(!0),s.modalOptions=f,s.index=l,r=angular.element('
'),r.attr("backdrop-class",f.backdropClass),f.animation&&r.attr("modal-animation","true"),d(r)(s),a.enter(r,j),t=i.scrollbarPadding(j),t.heightOverflow&&t.scrollbarWidth&&j.css({paddingRight:t.right+"px"})),y=z?parseInt(z.value.modalDomEl.attr("index"),10)+1:0;var n=angular.element('
');n.attr({"template-url":f.windowTemplateUrl,"window-class":f.windowClass,"window-top-class":f.windowTopClass,size:f.size,index:y,animate:"animate"}).html(f.content),f.animation&&n.attr("modal-animation","true"),j.addClass(h),a.enter(d(n)(f.scope),j),v.top().value.modalDomEl=n,v.top().value.modalOpener=g},x.close=function(a,b){var c=v.get(a);return c&&q(c,b,!0)?(c.value.modalScope.$$uibDestructionScheduled=!0,c.value.deferred.resolve(b),l(a,c.value.modalOpener),!0):!c},x.dismiss=function(a,b){var c=v.get(a);return c&&q(c,b,!1)?(c.value.modalScope.$$uibDestructionScheduled=!0,c.value.deferred.reject(b),l(a,c.value.modalOpener),!0):!c},x.dismissAll=function(a){for(var b=this.getTop();b&&this.dismiss(b.key,a);)b=this.getTop()},x.getTop=function(){return v.top()},x.modalRendered=function(a){var b=v.get(a);b&&b.value.renderDeferred.resolve()},x.focusFirstFocusableElement=function(a){return a.length>0?(a[0].focus(),!0):!1},x.focusLastFocusableElement=function(a){return a.length>0?(a[a.length-1].focus(),!0):!1},x.isModalFocused=function(a,b){if(a&&b){var c=b.value.modalDomEl;if(c&&c.length)return(a.target||a.srcElement)===c[0]}return!1},x.isFocusInFirstItem=function(a,b){return b.length>0?(a.target||a.srcElement)===b[0]:!1},x.isFocusInLastItem=function(a,b){return b.length>0?(a.target||a.srcElement)===b[b.length-1]:!1},x.loadFocusElementList=function(a){if(a){var b=a.value.modalDomEl;if(b&&b.length){var c=b[0].querySelectorAll(A);return c?Array.prototype.filter.call(c,function(a){return j(a)}):c}}},x}]).provider("$uibModal",function(){var a={options:{animation:!0,backdrop:!0,keyboard:!0},$get:["$rootScope","$q","$document","$templateRequest","$controller","$uibResolve","$uibModalStack",function(b,c,d,e,f,g,h){function i(a){return a.template?c.when(a.template):e(angular.isFunction(a.templateUrl)?a.templateUrl():a.templateUrl)}var j={},k=null;return j.getPromiseChain=function(){return k},j.open=function(e){function j(){return r}var l=c.defer(),m=c.defer(),n=c.defer(),o=c.defer(),p={result:l.promise,opened:m.promise,closed:n.promise,rendered:o.promise,close:function(a){return h.close(p,a)},dismiss:function(a){return h.dismiss(p,a)}};if(e=angular.extend({},a.options,e),e.resolve=e.resolve||{},e.appendTo=e.appendTo||d.find("body").eq(0),!e.template&&!e.templateUrl)throw new Error("One of template or templateUrl options is required.");var q,r=c.all([i(e),g.resolve(e.resolve,{},null,null)]);return q=k=c.all([k]).then(j,j).then(function(a){var c=e.scope||b,d=c.$new();d.$close=p.close,d.$dismiss=p.dismiss,d.$on("$destroy",function(){d.$$uibDestructionScheduled||d.$dismiss("$uibUnscheduledDestruction")});var g,i,j={};e.controller&&(j.$scope=d,j.$uibModalInstance=p,angular.forEach(a[1],function(a,b){j[b]=a}),i=f(e.controller,j,!0),e.controllerAs?(g=i.instance,e.bindToController&&(g.$close=d.$close,g.$dismiss=d.$dismiss,angular.extend(g,c)),g=i(),d[e.controllerAs]=g):g=i(),angular.isFunction(g.$onInit)&&g.$onInit()),h.open(p,{scope:d,deferred:l,renderDeferred:o,closedDeferred:n,content:a[0],animation:e.animation,backdrop:e.backdrop,keyboard:e.keyboard,backdropClass:e.backdropClass,windowTopClass:e.windowTopClass,windowClass:e.windowClass,windowTemplateUrl:e.windowTemplateUrl,size:e.size,openedClass:e.openedClass,appendTo:e.appendTo}),m.resolve(!0)},function(a){m.reject(a),l.reject(a)})["finally"](function(){k===q&&(k=null)}),p},j}]};return a}),angular.module("ui.bootstrap.paging",[]).factory("uibPaging",["$parse",function(a){return{create:function(b,c,d){b.setNumPages=d.numPages?a(d.numPages).assign:angular.noop,b.ngModelCtrl={$setViewValue:angular.noop},b._watchers=[],b.init=function(a,e){b.ngModelCtrl=a,b.config=e,a.$render=function(){b.render()},d.itemsPerPage?b._watchers.push(c.$parent.$watch(d.itemsPerPage,function(a){b.itemsPerPage=parseInt(a,10),c.totalPages=b.calculateTotalPages(),b.updatePage()})):b.itemsPerPage=e.itemsPerPage,c.$watch("totalItems",function(a,d){(angular.isDefined(a)||a!==d)&&(c.totalPages=b.calculateTotalPages(),b.updatePage())})},b.calculateTotalPages=function(){var a=b.itemsPerPage<1?1:Math.ceil(c.totalItems/b.itemsPerPage);return Math.max(a||0,1)},b.render=function(){c.page=parseInt(b.ngModelCtrl.$viewValue,10)||1},c.selectPage=function(a,d){d&&d.preventDefault();var e=!c.ngDisabled||!d;e&&c.page!==a&&a>0&&a<=c.totalPages&&(d&&d.target&&d.target.blur(),b.ngModelCtrl.$setViewValue(a),b.ngModelCtrl.$render())},c.getText=function(a){return c[a+"Text"]||b.config[a+"Text"]},c.noPrevious=function(){return 1===c.page},c.noNext=function(){return c.page===c.totalPages},b.updatePage=function(){b.setNumPages(c.$parent,c.totalPages),c.page>c.totalPages?c.selectPage(c.totalPages):b.ngModelCtrl.$render()},c.$on("$destroy",function(){for(;b._watchers.length;)b._watchers.shift()()})}}}]),angular.module("ui.bootstrap.pager",["ui.bootstrap.paging"]).controller("UibPagerController",["$scope","$attrs","uibPaging","uibPagerConfig",function(a,b,c,d){a.align=angular.isDefined(b.align)?a.$parent.$eval(b.align):d.align,c.create(this,a,b)}]).constant("uibPagerConfig",{itemsPerPage:10,previousText:"« Previous",nextText:"Next »",align:!0}).directive("uibPager",["uibPagerConfig",function(a){return{scope:{totalItems:"=",previousText:"@",nextText:"@",ngDisabled:"="},require:["uibPager","?ngModel"],controller:"UibPagerController",controllerAs:"pager",templateUrl:function(a,b){return b.templateUrl||"uib/template/pager/pager.html"},replace:!0,link:function(b,c,d,e){var f=e[0],g=e[1];g&&f.init(g,a)}}}]),angular.module("ui.bootstrap.pagination",["ui.bootstrap.paging"]).controller("UibPaginationController",["$scope","$attrs","$parse","uibPaging","uibPaginationConfig",function(a,b,c,d,e){function f(a,b,c){return{number:a,text:b,active:c}}function g(a,b){var c=[],d=1,e=b,g=angular.isDefined(i)&&b>i;g&&(j?(d=Math.max(a-Math.floor(i/2),1),e=d+i-1,e>b&&(e=b,d=e-i+1)):(d=(Math.ceil(a/i)-1)*i+1,e=Math.min(d+i-1,b)));for(var h=d;e>=h;h++){var n=f(h,m(h),h===a);c.push(n)}if(g&&i>0&&(!j||k||l)){if(d>1){if(!l||d>3){var o=f(d-1,"...",!1);c.unshift(o)}if(l){if(3===d){var p=f(2,"2",!1);c.unshift(p)}var q=f(1,"1",!1);c.unshift(q)}}if(b>e){if(!l||b-2>e){var r=f(e+1,"...",!1);c.push(r)}if(l){if(e===b-2){var s=f(b-1,b-1,!1);c.push(s)}var t=f(b,b,!1);c.push(t)}}}return c}var h=this,i=angular.isDefined(b.maxSize)?a.$parent.$eval(b.maxSize):e.maxSize,j=angular.isDefined(b.rotate)?a.$parent.$eval(b.rotate):e.rotate,k=angular.isDefined(b.forceEllipses)?a.$parent.$eval(b.forceEllipses):e.forceEllipses,l=angular.isDefined(b.boundaryLinkNumbers)?a.$parent.$eval(b.boundaryLinkNumbers):e.boundaryLinkNumbers,m=angular.isDefined(b.pageLabel)?function(c){return a.$parent.$eval(b.pageLabel,{$page:c})}:angular.identity;a.boundaryLinks=angular.isDefined(b.boundaryLinks)?a.$parent.$eval(b.boundaryLinks):e.boundaryLinks,a.directionLinks=angular.isDefined(b.directionLinks)?a.$parent.$eval(b.directionLinks):e.directionLinks,d.create(this,a,b),b.maxSize&&h._watchers.push(a.$parent.$watch(c(b.maxSize),function(a){i=parseInt(a,10),h.render()}));var n=this.render;this.render=function(){n(),a.page>0&&a.page<=a.totalPages&&(a.pages=g(a.page,a.totalPages))}}]).constant("uibPaginationConfig",{itemsPerPage:10,boundaryLinks:!1,boundaryLinkNumbers:!1,directionLinks:!0,firstText:"First",previousText:"Previous",nextText:"Next",lastText:"Last",rotate:!0,forceEllipses:!1}).directive("uibPagination",["$parse","uibPaginationConfig",function(a,b){return{scope:{totalItems:"=",firstText:"@",previousText:"@",nextText:"@",lastText:"@",ngDisabled:"="},require:["uibPagination","?ngModel"],controller:"UibPaginationController",controllerAs:"pagination",templateUrl:function(a,b){return b.templateUrl||"uib/template/pagination/pagination.html"},replace:!0,link:function(a,c,d,e){var f=e[0],g=e[1];g&&f.init(g,b)}}}]),angular.module("ui.bootstrap.tooltip",["ui.bootstrap.position","ui.bootstrap.stackedMap"]).provider("$uibTooltip",function(){function a(a){var b=/[A-Z]/g,c="-";return a.replace(b,function(a,b){return(b?c:"")+a.toLowerCase()})}var b={placement:"top",placementClassPrefix:"",animation:!0,popupDelay:0,popupCloseDelay:0,useContentExp:!1},c={mouseenter:"mouseleave",click:"click",outsideClick:"outsideClick",focus:"blur",none:""},d={};this.options=function(a){angular.extend(d,a)},this.setTriggers=function(a){angular.extend(c,a)},this.$get=["$window","$compile","$timeout","$document","$uibPosition","$interpolate","$rootScope","$parse","$$stackedMap",function(e,f,g,h,i,j,k,l,m){function n(a){if(27===a.which){var b=o.top();b&&(b.value.close(),o.removeTop(),b=null)}}var o=m.createNew();return h.on("keypress",n),k.$on("$destroy",function(){h.off("keypress",n)}),function(e,k,m,n){function p(a){var b=(a||n.trigger||m).split(" "),d=b.map(function(a){return c[a]||a});return{show:b,hide:d}}n=angular.extend({},b,d,n);var q=a(e),r=j.startSymbol(),s=j.endSymbol(),t="
';return{compile:function(a,b){var c=f(t);return function(a,b,d,f){function j(){N.isOpen?q():m()}function m(){M&&!a.$eval(d[k+"Enable"])||(u(),x(),N.popupDelay?G||(G=g(r,N.popupDelay,!1)):r())}function q(){s(),N.popupCloseDelay?H||(H=g(t,N.popupCloseDelay,!1)):t()}function r(){return s(),u(),N.content?(v(),void N.$evalAsync(function(){N.isOpen=!0,y(!0),S()})):angular.noop}function s(){G&&(g.cancel(G),G=null),I&&(g.cancel(I),I=null)}function t(){N&&N.$evalAsync(function(){N&&(N.isOpen=!1,y(!1),N.animation?F||(F=g(w,150,!1)):w())})}function u(){H&&(g.cancel(H),H=null),F&&(g.cancel(F),F=null)}function v(){D||(E=N.$new(),D=c(E,function(a){K?h.find("body").append(a):b.after(a)}),z())}function w(){s(),u(),A(),D&&(D.remove(),D=null),E&&(E.$destroy(),E=null)}function x(){N.title=d[k+"Title"],Q?N.content=Q(a):N.content=d[e],N.popupClass=d[k+"Class"],N.placement=angular.isDefined(d[k+"Placement"])?d[k+"Placement"]:n.placement;var b=i.parsePlacement(N.placement);J=b[1]?b[0]+"-"+b[1]:b[0];var c=parseInt(d[k+"PopupDelay"],10),f=parseInt(d[k+"PopupCloseDelay"],10); +N.popupDelay=isNaN(c)?n.popupDelay:c,N.popupCloseDelay=isNaN(f)?n.popupCloseDelay:f}function y(b){P&&angular.isFunction(P.assign)&&P.assign(a,b)}function z(){R.length=0,Q?(R.push(a.$watch(Q,function(a){N.content=a,!a&&N.isOpen&&t()})),R.push(E.$watch(function(){O||(O=!0,E.$$postDigest(function(){O=!1,N&&N.isOpen&&S()}))}))):R.push(d.$observe(e,function(a){N.content=a,!a&&N.isOpen?t():S()})),R.push(d.$observe(k+"Title",function(a){N.title=a,N.isOpen&&S()})),R.push(d.$observe(k+"Placement",function(a){N.placement=a?a:n.placement,N.isOpen&&S()}))}function A(){R.length&&(angular.forEach(R,function(a){a()}),R.length=0)}function B(a){N&&N.isOpen&&D&&(b[0].contains(a.target)||D[0].contains(a.target)||q())}function C(){var a=d[k+"Trigger"];T(),L=p(a),"none"!==L.show&&L.show.forEach(function(a,c){"outsideClick"===a?(b.on("click",j),h.on("click",B)):a===L.hide[c]?b.on(a,j):a&&(b.on(a,m),b.on(L.hide[c],q)),b.on("keypress",function(a){27===a.which&&q()})})}var D,E,F,G,H,I,J,K=angular.isDefined(n.appendToBody)?n.appendToBody:!1,L=p(void 0),M=angular.isDefined(d[k+"Enable"]),N=a.$new(!0),O=!1,P=angular.isDefined(d[k+"IsOpen"])?l(d[k+"IsOpen"]):!1,Q=n.useContentExp?l(d[e]):!1,R=[],S=function(){D&&D.html()&&(I||(I=g(function(){var a=i.positionElements(b,D,N.placement,K);D.css({top:a.top+"px",left:a.left+"px"}),D.hasClass(a.placement.split("-")[0])||(D.removeClass(J.split("-")[0]),D.addClass(a.placement.split("-")[0])),D.hasClass(n.placementClassPrefix+a.placement)||(D.removeClass(n.placementClassPrefix+J),D.addClass(n.placementClassPrefix+a.placement)),D.hasClass("uib-position-measure")?(i.positionArrow(D,a.placement),D.removeClass("uib-position-measure")):J!==a.placement&&i.positionArrow(D,a.placement),J=a.placement,I=null},0,!1)))};N.origScope=a,N.isOpen=!1,o.add(N,{close:t}),N.contentExp=function(){return N.content},d.$observe("disabled",function(a){a&&s(),a&&N.isOpen&&t()}),P&&a.$watch(P,function(a){N&&!a===N.isOpen&&j()});var T=function(){L.show.forEach(function(a){"outsideClick"===a?b.off("click",j):(b.off(a,m),b.off(a,j))}),L.hide.forEach(function(a){"outsideClick"===a?h.off("click",B):b.off(a,q)})};C();var U=a.$eval(d[k+"Animation"]);N.animation=angular.isDefined(U)?!!U:n.animation;var V,W=k+"AppendToBody";V=W in d&&void 0===d[W]?!0:a.$eval(d[W]),K=angular.isDefined(V)?V:K,a.$on("$destroy",function(){T(),w(),o.remove(N),N=null})}}}}}]}).directive("uibTooltipTemplateTransclude",["$animate","$sce","$compile","$templateRequest",function(a,b,c,d){return{link:function(e,f,g){var h,i,j,k=e.$eval(g.tooltipTemplateTranscludeScope),l=0,m=function(){i&&(i.remove(),i=null),h&&(h.$destroy(),h=null),j&&(a.leave(j).then(function(){i=null}),i=j,j=null)};e.$watch(b.parseAsResourceUrl(g.uibTooltipTemplateTransclude),function(b){var g=++l;b?(d(b,!0).then(function(d){if(g===l){var e=k.$new(),i=d,n=c(i)(e,function(b){m(),a.enter(b,f)});h=e,j=n,h.$emit("$includeContentLoaded",b)}},function(){g===l&&(m(),e.$emit("$includeContentError",b))}),e.$emit("$includeContentRequested",b)):m()}),e.$on("$destroy",m)}}}]).directive("uibTooltipClasses",["$uibPosition",function(a){return{restrict:"A",link:function(b,c,d){if(b.placement){var e=a.parsePlacement(b.placement);c.addClass(e[0])}b.popupClass&&c.addClass(b.popupClass),b.animation()&&c.addClass(d.tooltipAnimationClass)}}}]).directive("uibTooltipPopup",function(){return{replace:!0,scope:{content:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"uib/template/tooltip/tooltip-popup.html"}}).directive("uibTooltip",["$uibTooltip",function(a){return a("uibTooltip","tooltip","mouseenter")}]).directive("uibTooltipTemplatePopup",function(){return{replace:!0,scope:{contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&",originScope:"&"},templateUrl:"uib/template/tooltip/tooltip-template-popup.html"}}).directive("uibTooltipTemplate",["$uibTooltip",function(a){return a("uibTooltipTemplate","tooltip","mouseenter",{useContentExp:!0})}]).directive("uibTooltipHtmlPopup",function(){return{replace:!0,scope:{contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"uib/template/tooltip/tooltip-html-popup.html"}}).directive("uibTooltipHtml",["$uibTooltip",function(a){return a("uibTooltipHtml","tooltip","mouseenter",{useContentExp:!0})}]),angular.module("ui.bootstrap.popover",["ui.bootstrap.tooltip"]).directive("uibPopoverTemplatePopup",function(){return{replace:!0,scope:{uibTitle:"@",contentExp:"&",placement:"@",popupClass:"@",animation:"&",isOpen:"&",originScope:"&"},templateUrl:"uib/template/popover/popover-template.html"}}).directive("uibPopoverTemplate",["$uibTooltip",function(a){return a("uibPopoverTemplate","popover","click",{useContentExp:!0})}]).directive("uibPopoverHtmlPopup",function(){return{replace:!0,scope:{contentExp:"&",uibTitle:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"uib/template/popover/popover-html.html"}}).directive("uibPopoverHtml",["$uibTooltip",function(a){return a("uibPopoverHtml","popover","click",{useContentExp:!0})}]).directive("uibPopoverPopup",function(){return{replace:!0,scope:{uibTitle:"@",content:"@",placement:"@",popupClass:"@",animation:"&",isOpen:"&"},templateUrl:"uib/template/popover/popover.html"}}).directive("uibPopover",["$uibTooltip",function(a){return a("uibPopover","popover","click")}]),angular.module("ui.bootstrap.progressbar",[]).constant("uibProgressConfig",{animate:!0,max:100}).controller("UibProgressController",["$scope","$attrs","uibProgressConfig",function(a,b,c){function d(){return angular.isDefined(a.maxParam)?a.maxParam:c.max}var e=this,f=angular.isDefined(b.animate)?a.$parent.$eval(b.animate):c.animate;this.bars=[],a.max=d(),this.addBar=function(a,b,c){f||b.css({transition:"none"}),this.bars.push(a),a.max=d(),a.title=c&&angular.isDefined(c.title)?c.title:"progressbar",a.$watch("value",function(b){a.recalculatePercentage()}),a.recalculatePercentage=function(){var b=e.bars.reduce(function(a,b){return b.percent=+(100*b.value/b.max).toFixed(2),a+b.percent},0);b>100&&(a.percent-=b-100)},a.$on("$destroy",function(){b=null,e.removeBar(a)})},this.removeBar=function(a){this.bars.splice(this.bars.indexOf(a),1),this.bars.forEach(function(a){a.recalculatePercentage()})},a.$watch("maxParam",function(a){e.bars.forEach(function(a){a.max=d(),a.recalculatePercentage()})})}]).directive("uibProgress",function(){return{replace:!0,transclude:!0,controller:"UibProgressController",require:"uibProgress",scope:{maxParam:"=?max"},templateUrl:"uib/template/progressbar/progress.html"}}).directive("uibBar",function(){return{replace:!0,transclude:!0,require:"^uibProgress",scope:{value:"=",type:"@"},templateUrl:"uib/template/progressbar/bar.html",link:function(a,b,c,d){d.addBar(a,b,c)}}}).directive("uibProgressbar",function(){return{replace:!0,transclude:!0,controller:"UibProgressController",scope:{value:"=",maxParam:"=?max",type:"@"},templateUrl:"uib/template/progressbar/progressbar.html",link:function(a,b,c,d){d.addBar(a,angular.element(b.children()[0]),{title:c.title})}}}),angular.module("ui.bootstrap.rating",[]).constant("uibRatingConfig",{max:5,stateOn:null,stateOff:null,enableReset:!0,titles:["one","two","three","four","five"]}).controller("UibRatingController",["$scope","$attrs","uibRatingConfig",function(a,b,c){var d={$setViewValue:angular.noop},e=this;this.init=function(e){d=e,d.$render=this.render,d.$formatters.push(function(a){return angular.isNumber(a)&&a<<0!==a&&(a=Math.round(a)),a}),this.stateOn=angular.isDefined(b.stateOn)?a.$parent.$eval(b.stateOn):c.stateOn,this.stateOff=angular.isDefined(b.stateOff)?a.$parent.$eval(b.stateOff):c.stateOff,this.enableReset=angular.isDefined(b.enableReset)?a.$parent.$eval(b.enableReset):c.enableReset;var f=angular.isDefined(b.titles)?a.$parent.$eval(b.titles):c.titles;this.titles=angular.isArray(f)&&f.length>0?f:c.titles;var g=angular.isDefined(b.ratingStates)?a.$parent.$eval(b.ratingStates):new Array(angular.isDefined(b.max)?a.$parent.$eval(b.max):c.max);a.range=this.buildTemplateObjects(g)},this.buildTemplateObjects=function(a){for(var b=0,c=a.length;c>b;b++)a[b]=angular.extend({index:b},{stateOn:this.stateOn,stateOff:this.stateOff,title:this.getTitle(b)},a[b]);return a},this.getTitle=function(a){return a>=this.titles.length?a+1:this.titles[a]},a.rate=function(b){if(!a.readonly&&b>=0&&b<=a.range.length){var c=e.enableReset&&d.$viewValue===b?0:b;d.$setViewValue(c),d.$render()}},a.enter=function(b){a.readonly||(a.value=b),a.onHover({value:b})},a.reset=function(){a.value=d.$viewValue,a.onLeave()},a.onKeydown=function(b){/(37|38|39|40)/.test(b.which)&&(b.preventDefault(),b.stopPropagation(),a.rate(a.value+(38===b.which||39===b.which?1:-1)))},this.render=function(){a.value=d.$viewValue,a.title=e.getTitle(a.value-1)}}]).directive("uibRating",function(){return{require:["uibRating","ngModel"],scope:{readonly:"=?readOnly",onHover:"&",onLeave:"&"},controller:"UibRatingController",templateUrl:"uib/template/rating/rating.html",replace:!0,link:function(a,b,c,d){var e=d[0],f=d[1];e.init(f)}}}),angular.module("ui.bootstrap.tabs",[]).controller("UibTabsetController",["$scope",function(a){function b(a){for(var b=0;bb.index?1:a.index0&&13>b:b>=0&&24>b;return c&&""!==a.hours?(a.showMeridian&&(12===b&&(b=0),a.meridian===v[1]&&(b+=12)),b):void 0}function i(){var b=+a.minutes,c=b>=0&&60>b;return c&&""!==a.minutes?b:void 0}function j(){var b=+a.seconds;return b>=0&&60>b?b:void 0}function k(a,b){return null===a?"":angular.isDefined(a)&&a.toString().length<2&&!b?"0"+a:a.toString()}function l(a){m(),u.$setViewValue(new Date(s)),n(a)}function m(){u.$setValidity("time",!0),a.invalidHours=!1,a.invalidMinutes=!1,a.invalidSeconds=!1}function n(b){if(u.$modelValue){var c=s.getHours(),d=s.getMinutes(),e=s.getSeconds();a.showMeridian&&(c=0===c||12===c?12:c%12),a.hours="h"===b?c:k(c,!w),"m"!==b&&(a.minutes=k(d)),a.meridian=s.getHours()<12?v[0]:v[1],"s"!==b&&(a.seconds=k(e)),a.meridian=s.getHours()<12?v[0]:v[1]}else a.hours=null,a.minutes=null,a.seconds=null,a.meridian=v[0]}function o(a){s=q(s,a),l()}function p(a,b){return q(a,60*b)}function q(a,b){var c=new Date(a.getTime()+1e3*b),d=new Date(a);return d.setHours(c.getHours(),c.getMinutes(),c.getSeconds()),d}function r(){return(null===a.hours||""===a.hours)&&(null===a.minutes||""===a.minutes)&&(!a.showSeconds||a.showSeconds&&(null===a.seconds||""===a.seconds))}var s=new Date,t=[],u={$setViewValue:angular.noop},v=angular.isDefined(c.meridians)?a.$parent.$eval(c.meridians):g.meridians||f.DATETIME_FORMATS.AMPMS,w=angular.isDefined(c.padHours)?a.$parent.$eval(c.padHours):!0;a.tabindex=angular.isDefined(c.tabindex)?c.tabindex:0,b.removeAttr("tabindex"),this.init=function(b,d){u=b,u.$render=this.render,u.$formatters.unshift(function(a){return a?new Date(a):null});var e=d.eq(0),f=d.eq(1),h=d.eq(2),i=angular.isDefined(c.mousewheel)?a.$parent.$eval(c.mousewheel):g.mousewheel;i&&this.setupMousewheelEvents(e,f,h);var j=angular.isDefined(c.arrowkeys)?a.$parent.$eval(c.arrowkeys):g.arrowkeys;j&&this.setupArrowkeyEvents(e,f,h),a.readonlyInput=angular.isDefined(c.readonlyInput)?a.$parent.$eval(c.readonlyInput):g.readonlyInput,this.setupInputEvents(e,f,h)};var x=g.hourStep;c.hourStep&&t.push(a.$parent.$watch(d(c.hourStep),function(a){x=+a}));var y=g.minuteStep;c.minuteStep&&t.push(a.$parent.$watch(d(c.minuteStep),function(a){y=+a}));var z;t.push(a.$parent.$watch(d(c.min),function(a){var b=new Date(a);z=isNaN(b)?void 0:b}));var A;t.push(a.$parent.$watch(d(c.max),function(a){var b=new Date(a);A=isNaN(b)?void 0:b}));var B=!1;c.ngDisabled&&t.push(a.$parent.$watch(d(c.ngDisabled),function(a){B=a})),a.noIncrementHours=function(){var a=p(s,60*x);return B||a>A||s>a&&z>a},a.noDecrementHours=function(){var a=p(s,60*-x);return B||z>a||a>s&&a>A},a.noIncrementMinutes=function(){var a=p(s,y);return B||a>A||s>a&&z>a},a.noDecrementMinutes=function(){var a=p(s,-y);return B||z>a||a>s&&a>A},a.noIncrementSeconds=function(){var a=q(s,C);return B||a>A||s>a&&z>a},a.noDecrementSeconds=function(){var a=q(s,-C);return B||z>a||a>s&&a>A},a.noToggleMeridian=function(){return s.getHours()<12?B||p(s,720)>A:B||p(s,-720)0};b.bind("mousewheel wheel",function(b){B||a.$apply(e(b)?a.incrementHours():a.decrementHours()),b.preventDefault()}),c.bind("mousewheel wheel",function(b){B||a.$apply(e(b)?a.incrementMinutes():a.decrementMinutes()),b.preventDefault()}),d.bind("mousewheel wheel",function(b){B||a.$apply(e(b)?a.incrementSeconds():a.decrementSeconds()),b.preventDefault()})},this.setupArrowkeyEvents=function(b,c,d){b.bind("keydown",function(b){B||(38===b.which?(b.preventDefault(),a.incrementHours(),a.$apply()):40===b.which&&(b.preventDefault(),a.decrementHours(),a.$apply()))}),c.bind("keydown",function(b){B||(38===b.which?(b.preventDefault(),a.incrementMinutes(),a.$apply()):40===b.which&&(b.preventDefault(),a.decrementMinutes(),a.$apply()))}),d.bind("keydown",function(b){B||(38===b.which?(b.preventDefault(),a.incrementSeconds(),a.$apply()):40===b.which&&(b.preventDefault(),a.decrementSeconds(),a.$apply()))})},this.setupInputEvents=function(b,c,d){if(a.readonlyInput)return a.updateHours=angular.noop,a.updateMinutes=angular.noop,void(a.updateSeconds=angular.noop);var e=function(b,c,d){u.$setViewValue(null),u.$setValidity("time",!1),angular.isDefined(b)&&(a.invalidHours=b),angular.isDefined(c)&&(a.invalidMinutes=c),angular.isDefined(d)&&(a.invalidSeconds=d)};a.updateHours=function(){var a=h(),b=i();u.$setDirty(),angular.isDefined(a)&&angular.isDefined(b)?(s.setHours(a),s.setMinutes(b),z>s||s>A?e(!0):l("h")):e(!0)},b.bind("blur",function(b){u.$setTouched(),r()?m():null===a.hours||""===a.hours?e(!0):!a.invalidHours&&a.hours<10&&a.$apply(function(){a.hours=k(a.hours,!w)})}),a.updateMinutes=function(){var a=i(),b=h();u.$setDirty(),angular.isDefined(a)&&angular.isDefined(b)?(s.setHours(b),s.setMinutes(a),z>s||s>A?e(void 0,!0):l("m")):e(void 0,!0)},c.bind("blur",function(b){u.$setTouched(),r()?m():null===a.minutes?e(void 0,!0):!a.invalidMinutes&&a.minutes<10&&a.$apply(function(){a.minutes=k(a.minutes)})}),a.updateSeconds=function(){var a=j();u.$setDirty(),angular.isDefined(a)?(s.setSeconds(a),l("s")):e(void 0,void 0,!0)},d.bind("blur",function(b){r()?m():!a.invalidSeconds&&a.seconds<10&&a.$apply(function(){a.seconds=k(a.seconds)})})},this.render=function(){var b=u.$viewValue;isNaN(b)?(u.$setValidity("time",!1),e.error('Timepicker directive: "ng-model" value must be a Date object, a number of milliseconds since 01.01.1970 or a string representing an RFC2822 or ISO 8601 date.')):(b&&(s=b),z>s||s>A?(u.$setValidity("time",!1),a.invalidHours=!0,a.invalidMinutes=!0):m(),n())},a.showSpinners=angular.isDefined(c.showSpinners)?a.$parent.$eval(c.showSpinners):g.showSpinners,a.incrementHours=function(){a.noIncrementHours()||o(60*x*60)},a.decrementHours=function(){a.noDecrementHours()||o(60*-x*60)},a.incrementMinutes=function(){a.noIncrementMinutes()||o(60*y)},a.decrementMinutes=function(){a.noDecrementMinutes()||o(60*-y)},a.incrementSeconds=function(){a.noIncrementSeconds()||o(C)},a.decrementSeconds=function(){a.noDecrementSeconds()||o(-C)},a.toggleMeridian=function(){var b=i(),c=h();a.noToggleMeridian()||(angular.isDefined(b)&&angular.isDefined(c)?o(720*(s.getHours()<12?60:-60)):a.meridian=a.meridian===v[0]?v[1]:v[0])},a.blur=function(){u.$setTouched()},a.$on("$destroy",function(){for(;t.length;)t.shift()()})}]).directive("uibTimepicker",["uibTimepickerConfig",function(a){return{require:["uibTimepicker","?^ngModel"],controller:"UibTimepickerController",controllerAs:"timepicker",replace:!0,scope:{},templateUrl:function(b,c){return c.templateUrl||a.templateUrl},link:function(a,b,c,d){var e=d[0],f=d[1];f&&e.init(f,b.find("input"))}}}]),angular.module("ui.bootstrap.typeahead",["ui.bootstrap.debounce","ui.bootstrap.position"]).factory("uibTypeaheadParser",["$parse",function(a){var b=/^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?\s+for\s+(?:([\$\w][\$\w\d]*))\s+in\s+([\s\S]+?)$/;return{parse:function(c){var d=c.match(b);if(!d)throw new Error('Expected typeahead specification in form of "_modelValue_ (as _label_)? for _item_ in _collection_" but got "'+c+'".');return{itemName:d[3],source:a(d[4]),viewMapper:a(d[2]||d[1]),modelMapper:a(d[1])}}}}]).controller("UibTypeaheadController",["$scope","$element","$attrs","$compile","$parse","$q","$timeout","$document","$window","$rootScope","$$debounce","$uibPosition","uibTypeaheadParser",function(a,b,c,d,e,f,g,h,i,j,k,l,m){function n(){N.moveInProgress||(N.moveInProgress=!0,N.$digest()),Y()}function o(){N.position=D?l.offset(b):l.position(b),N.position.top+=b.prop("offsetHeight")}var p,q,r=[9,13,27,38,40],s=200,t=a.$eval(c.typeaheadMinLength);t||0===t||(t=1),a.$watch(c.typeaheadMinLength,function(a){t=a||0===a?a:1});var u=a.$eval(c.typeaheadWaitMs)||0,v=a.$eval(c.typeaheadEditable)!==!1;a.$watch(c.typeaheadEditable,function(a){v=a!==!1});var w,x,y=e(c.typeaheadLoading).assign||angular.noop,z=e(c.typeaheadOnSelect),A=angular.isDefined(c.typeaheadSelectOnBlur)?a.$eval(c.typeaheadSelectOnBlur):!1,B=e(c.typeaheadNoResults).assign||angular.noop,C=c.typeaheadInputFormatter?e(c.typeaheadInputFormatter):void 0,D=c.typeaheadAppendToBody?a.$eval(c.typeaheadAppendToBody):!1,E=c.typeaheadAppendTo?a.$eval(c.typeaheadAppendTo):null,F=a.$eval(c.typeaheadFocusFirst)!==!1,G=c.typeaheadSelectOnExact?a.$eval(c.typeaheadSelectOnExact):!1,H=e(c.typeaheadIsOpen).assign||angular.noop,I=a.$eval(c.typeaheadShowHint)||!1,J=e(c.ngModel),K=e(c.ngModel+"($$$p)"),L=function(b,c){return angular.isFunction(J(a))&&q&&q.$options&&q.$options.getterSetter?K(b,{$$$p:c}):J.assign(b,c)},M=m.parse(c.uibTypeahead),N=a.$new(),O=a.$on("$destroy",function(){N.$destroy()});N.$on("$destroy",O);var P="typeahead-"+N.$id+"-"+Math.floor(1e4*Math.random());b.attr({"aria-autocomplete":"list","aria-expanded":!1,"aria-owns":P});var Q,R;I&&(Q=angular.element("
"),Q.css("position","relative"),b.after(Q),R=b.clone(),R.attr("placeholder",""),R.attr("tabindex","-1"),R.val(""),R.css({position:"absolute",top:"0px",left:"0px","border-color":"transparent","box-shadow":"none",opacity:1,background:"none 0% 0% / auto repeat scroll padding-box border-box rgb(255, 255, 255)",color:"#999"}),b.css({position:"relative","vertical-align":"top","background-color":"transparent"}),Q.append(R),R.after(b));var S=angular.element("
");S.attr({id:P,matches:"matches",active:"activeIdx",select:"select(activeIdx, evt)","move-in-progress":"moveInProgress",query:"query",position:"position","assign-is-open":"assignIsOpen(isOpen)",debounce:"debounceUpdate"}),angular.isDefined(c.typeaheadTemplateUrl)&&S.attr("template-url",c.typeaheadTemplateUrl),angular.isDefined(c.typeaheadPopupTemplateUrl)&&S.attr("popup-template-url",c.typeaheadPopupTemplateUrl);var T=function(){I&&R.val("")},U=function(){N.matches=[],N.activeIdx=-1,b.attr("aria-expanded",!1),T()},V=function(a){return P+"-option-"+a};N.$watch("activeIdx",function(a){0>a?b.removeAttr("aria-activedescendant"):b.attr("aria-activedescendant",V(a))});var W=function(a,b){return N.matches.length>b&&a?a.toUpperCase()===N.matches[b].label.toUpperCase():!1},X=function(c,d){var e={$viewValue:c};y(a,!0),B(a,!1),f.when(M.source(a,e)).then(function(f){var g=c===p.$viewValue;if(g&&w)if(f&&f.length>0){N.activeIdx=F?0:-1,B(a,!1),N.matches.length=0;for(var h=0;h0&&i.slice(0,c.length).toUpperCase()===c.toUpperCase()?R.val(c+i.slice(c.length)):R.val("")}}else U(),B(a,!0);g&&y(a,!1)},function(){U(),y(a,!1),B(a,!0)})};D&&(angular.element(i).on("resize",n),h.find("body").on("scroll",n));var Y=k(function(){N.matches.length&&o(),N.moveInProgress=!1},s);N.moveInProgress=!1,N.query=void 0;var Z,$=function(a){Z=g(function(){X(a)},u)},_=function(){Z&&g.cancel(Z)};U(),N.assignIsOpen=function(b){H(a,b)},N.select=function(d,e){var f,h,i={};x=!0,i[M.itemName]=h=N.matches[d].model,f=M.modelMapper(a,i),L(a,f),p.$setValidity("editable",!0),p.$setValidity("parse",!0),z(a,{$item:h,$model:f,$label:M.viewMapper(a,i),$event:e}),U(),N.$eval(c.typeaheadFocusOnSelect)!==!1&&g(function(){b[0].focus()},0,!1)},b.on("keydown",function(b){if(0!==N.matches.length&&-1!==r.indexOf(b.which)){if(-1===N.activeIdx&&(9===b.which||13===b.which)||9===b.which&&b.shiftKey)return U(),void N.$digest();b.preventDefault();var c;switch(b.which){case 9:case 13:N.$apply(function(){angular.isNumber(N.debounceUpdate)||angular.isObject(N.debounceUpdate)?k(function(){N.select(N.activeIdx,b)},angular.isNumber(N.debounceUpdate)?N.debounceUpdate:N.debounceUpdate["default"]):N.select(N.activeIdx,b)});break;case 27:b.stopPropagation(),U(),a.$digest();break;case 38:N.activeIdx=(N.activeIdx>0?N.activeIdx:N.matches.length)-1,N.$digest(),c=S.find("li")[N.activeIdx],c.parentNode.scrollTop=c.offsetTop;break;case 40:N.activeIdx=(N.activeIdx+1)%N.matches.length,N.$digest(),c=S.find("li")[N.activeIdx],c.parentNode.scrollTop=c.offsetTop}}}),b.bind("focus",function(a){w=!0,0!==t||p.$viewValue||g(function(){X(p.$viewValue,a)},0)}),b.bind("blur",function(a){A&&N.matches.length&&-1!==N.activeIdx&&!x&&(x=!0,N.$apply(function(){angular.isObject(N.debounceUpdate)&&angular.isNumber(N.debounceUpdate.blur)?k(function(){N.select(N.activeIdx,a)},N.debounceUpdate.blur):N.select(N.activeIdx,a)})),!v&&p.$error.editable&&(p.$setViewValue(),p.$setValidity("editable",!0),p.$setValidity("parse",!0),b.val("")),w=!1,x=!1});var aa=function(c){b[0]!==c.target&&3!==c.which&&0!==N.matches.length&&(U(),j.$$phase||a.$digest())};h.on("click",aa),a.$on("$destroy",function(){h.off("click",aa),(D||E)&&ba.remove(),D&&(angular.element(i).off("resize",n),h.find("body").off("scroll",n)),S.remove(),I&&Q.remove()});var ba=d(S)(N);D?h.find("body").append(ba):E?angular.element(E).eq(0).append(ba):b.after(ba),this.init=function(b,c){p=b,q=c,N.debounceUpdate=p.$options&&e(p.$options.debounce)(a),p.$parsers.unshift(function(b){return w=!0,0===t||b&&b.length>=t?u>0?(_(),$(b)):X(b):(y(a,!1),_(),U()),v?b:b?void p.$setValidity("editable",!1):(p.$setValidity("editable",!0),null)}),p.$formatters.push(function(b){var c,d,e={};return v||p.$setValidity("editable",!0),C?(e.$model=b,C(a,e)):(e[M.itemName]=b,c=M.viewMapper(a,e),e[M.itemName]=void 0,d=M.viewMapper(a,e),c!==d?c:b)})}}]).directive("uibTypeahead",function(){return{controller:"UibTypeaheadController",require:["ngModel","^?ngModelOptions","uibTypeahead"],link:function(a,b,c,d){d[2].init(d[0],d[1])}}}).directive("uibTypeaheadPopup",["$$debounce",function(a){return{scope:{matches:"=",query:"=",active:"=",position:"&",moveInProgress:"=",select:"&",assignIsOpen:"&",debounce:"&"},replace:!0,templateUrl:function(a,b){return b.popupTemplateUrl||"uib/template/typeahead/typeahead-popup.html"},link:function(b,c,d){b.templateUrl=d.templateUrl,b.isOpen=function(){var a=b.matches.length>0;return b.assignIsOpen({isOpen:a}),a},b.isActive=function(a){return b.active===a},b.selectActive=function(a){b.active=a},b.selectMatch=function(c,d){var e=b.debounce();angular.isNumber(e)||angular.isObject(e)?a(function(){b.select({activeIdx:c,evt:d})},angular.isNumber(e)?e:e["default"]):b.select({activeIdx:c,evt:d})}}}}]).directive("uibTypeaheadMatch",["$templateRequest","$compile","$parse",function(a,b,c){return{scope:{index:"=",match:"=",query:"="},link:function(d,e,f){var g=c(f.templateUrl)(d.$parent)||"uib/template/typeahead/typeahead-match.html";a(g).then(function(a){var c=angular.element(a.trim());e.replaceWith(c),b(c)(d)})}}}]).filter("uibTypeaheadHighlight",["$sce","$injector","$log",function(a,b,c){function d(a){return a.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")}function e(a){return/<.*>/g.test(a)}var f;return f=b.has("$sanitize"),function(b,g){return!f&&e(b)&&c.warn("Unsafe use of typeahead please use ngSanitize"),b=g?(""+b).replace(new RegExp(d(g),"gi"),"$&"):b,f||(b=a.trustAsHtml(b)),b}}]),angular.module("ui.bootstrap.carousel").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibCarouselCss&&angular.element(document).find("head").prepend(''),angular.$$uibCarouselCss=!0}),angular.module("ui.bootstrap.datepicker").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibDatepickerCss&&angular.element(document).find("head").prepend(''),angular.$$uibDatepickerCss=!0}),angular.module("ui.bootstrap.position").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibPositionCss&&angular.element(document).find("head").prepend(''),angular.$$uibPositionCss=!0}),angular.module("ui.bootstrap.datepickerPopup").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibDatepickerpopupCss&&angular.element(document).find("head").prepend(''),angular.$$uibDatepickerpopupCss=!0}),angular.module("ui.bootstrap.tooltip").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibTooltipCss&&angular.element(document).find("head").prepend(''), +angular.$$uibTooltipCss=!0}),angular.module("ui.bootstrap.timepicker").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibTimepickerCss&&angular.element(document).find("head").prepend(''),angular.$$uibTimepickerCss=!0}),angular.module("ui.bootstrap.typeahead").run(function(){!angular.$$csp().noInlineStyle&&!angular.$$uibTypeaheadCss&&angular.element(document).find("head").prepend(''),angular.$$uibTypeaheadCss=!0}); \ No newline at end of file diff --git a/static/html/bower_components/angular-dynamic-locale/tmhDynamicLocale.min.js b/static/html/bower_components/angular-dynamic-locale/tmhDynamicLocale.min.js new file mode 100644 index 00000000..10b9d18e --- /dev/null +++ b/static/html/bower_components/angular-dynamic-locale/tmhDynamicLocale.min.js @@ -0,0 +1,7 @@ +/** + * Angular Dynamic Locale - 0.1.37 + * https://github.com/lgalfaso/angular-dynamic-locale + * License: MIT + */ +!function(e){"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?module.exports=e():e()}(function(){"use strict";return angular.module("tmh.dynamicLocale",[]).config(["$provide",function(e){function t(e){return e.$stateful=!0,e}e.decorator("dateFilter",["$delegate",t]),e.decorator("numberFilter",["$delegate",t]),e.decorator("currencyFilter",["$delegate",t])}]).constant("tmhDynamicLocale.STORAGE_KEY","tmhDynamicLocale.locale").provider("tmhDynamicLocale",["tmhDynamicLocale.STORAGE_KEY",function(e){var u,y,p,$,s="angular/i18n/angular-locale_{{locale}}.js",d="tmhDynamicLocaleStorageCache",v=e,f="get",L="put",S={},g={};function h(e,t,o,n,a,r,c){function i(n,a){$===o&&(angular.forEach(n,function(e,t){a[t]?angular.isArray(a[t])&&(n[t].length=a[t].length):delete n[t]}),angular.forEach(a,function(e,t){angular.isArray(a[t])||angular.isObject(a[t])?(n[t]||(n[t]=angular.isArray(a[t])?[]:{}),i(n[t],a[t])):n[t]=a[t]}))}if(S[o])return S[$=o];var l,u,s,d,f,g,h,m=a.defer();return o===$?m.resolve(t):(l=r.get(o))?($=o,n.$evalAsync(function(){i(t,l),p[L](v,o),n.$broadcast("$localeChangeSuccess",o,t),m.resolve(t)})):(S[$=o]=m.promise,a=e,u=function(){var e=angular.injector(["ngLocale"]).get("$locale");i(t,e),r.put(o,e),delete S[o],n.$applyAsync(function(){p[L](v,o),n.$broadcast("$localeChangeSuccess",o,t),m.resolve(t)})},s=function(){delete S[o],n.$applyAsync(function(){$===o&&($=t.id),n.$broadcast("$localeChangeError",o),m.reject(o)})},d=c,f=document.createElement("script"),g=y||document.getElementsByTagName("body")[0],h=!1,f.type="text/javascript",f.readyState?f.onreadystatechange=function(){"complete"!==f.readyState&&"loaded"!==f.readyState||(f.onreadystatechange=null,d(function(){h||(h=!0,f.parentNode===g&&g.removeChild(f),u())},30,!1))}:(f.onload=function(){h||(h=!0,f.parentNode===g&&g.removeChild(f),u())},f.onerror=function(){h||(h=!0,f.parentNode===g&&g.removeChild(f),s())}),f.src=a,f.async=!0,g.appendChild(f)),m.promise}this.localeLocationPattern=function(e){return e?(s=e,this):s},this.appendScriptTo=function(e){y=e},this.useStorage=function(e){d=e,f="get",L="put"},this.useCookieStorage=function(){angular.version.minor<7?this.useStorage("$cookieStore"):(this.useStorage("$cookies"),f="getObject",L="putObject")},this.defaultLocale=function(e){u=e},this.storageKey=function(e){return e?(v=e,this):v},this.addLocalePatternValue=function(e,t){g[e]=t},this.$get=["$rootScope","$injector","$interpolate","$locale","$q","tmhDynamicLocaleCache","$timeout",function(n,e,t,a,o,r,c){var i=t(s);return p=e.get(d),n.$evalAsync(function(){var e;(e=p[f](v)||u)&&l(e)}),{set:l,get:function(){return $}};function l(e){var t={locale:e,angularVersion:angular.version.full};return h(i(angular.extend({},g,t)),a,e,n,o,r,c)}}]}]).provider("tmhDynamicLocaleCache",function(){this.$get=["$cacheFactory",function(e){return e("tmh.dynamicLocales")}]}).provider("tmhDynamicLocaleStorageCache",function(){this.$get=["$cacheFactory",function(e){return e("tmh.dynamicLocales.store")}]}).run(["tmhDynamicLocale",angular.noop]),"tmh.dynamicLocale"}); +//# sourceMappingURL=tmhDynamicLocale.min.js.map \ No newline at end of file diff --git a/static/html/bower_components/angular-mocks/angular-mocks.min.js b/static/html/bower_components/angular-mocks/angular-mocks.min.js new file mode 100644 index 00000000..56f1ba19 --- /dev/null +++ b/static/html/bower_components/angular-mocks/angular-mocks.min.js @@ -0,0 +1,2 @@ +/*! mifosx-community-app 2022-07-11 */ +!function(a,b){"use strict";function c(a,b){var c=[],d=a.replace(/([().])/g,"\\$1").replace(/(\/)?:(\w+)(\*\?|[?*])?/g,function(a,b,d,e){var f="?"===e||"*?"===e,g="*"===e||"*?"===e;return c.push({name:d,optional:f}),b=b||"",(f?"(?:"+b:b+"(?:")+(g?"(.+?)":"([^/]+)")+(f?"?)?":")")}).replace(/([/$*])/g,"\\$1");return b.ignoreTrailingSlashes&&(d=d.replace(/\/+$/,"")+"/*"),{keys:c,regexp:new RegExp("^"+d+"(?:[?#]|$)",b.caseInsensitiveMatch?"i":"")}}function d(a){var b,c=/^(-?\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d{3}))?)?)?(Z|([+-])(\d\d):?(\d\d)))?$/;if(b=a.match(c)){var d=new Date(0),f=0,g=0;return b[9]&&(f=e(b[9]+b[10]),g=e(b[9]+b[11])),d.setUTCFullYear(e(b[1]),e(b[2])-1,e(b[3])),d.setUTCHours(e(b[4]||0)-f,e(b[5]||0)-g,e(b[6]||0),e(b[7]||0)),d}return a}function e(a){return parseInt(a,10)}function f(a,b,c){var d="";for(0>a&&(d="-",a=-a),a=""+a;a.lengthb;b++)if(r[b]===k){r.splice(b,1),g(-1,void 0,"",void 0,a);break}}return!f&&i&&(i.then?i.then(function(){l(b.isDefined(i.$$timeoutId)?"timeout":"abort")}):d(function(){l("timeout")},i)),k.description=a+" "+c,k}function x(a){var b=new Error(a);return b.$$passToExceptionHandler=!0,b}var y=new k,z=p[0],A=!1;if(y.$$events=m,y.upload.$$events=n,z&&z.match(a,c)){if(!z.matchData(e))throw x("Expected "+z+" with different data\nEXPECTED: "+v(z.data)+"\nGOT: "+e);if(!z.matchHeaders(h))throw x("Expected "+z+" with different headers\nEXPECTED: "+v(z.headers)+"\nGOT: "+v(h));if(p.shift(),z.response)return void r.push(w(z));A=!0}for(var B,C=q?o.length:-1;B=o[q?--C:++C];)if(B.match(a,c,e,h||{})){if(B.response)(f?f.defer:s)(w(B));else{if(!B.passThrough)throw x("No response defined !");u(a,c,e,g,h,i,j,l,m,n)}return}if(A)throw x("No response defined !");throw x("Unexpected request: "+a+" "+c+"\n"+(z?"Expected "+z:"No more request expected"))}function m(a){b.forEach(["GET","DELETE","JSONP","HEAD"],function(c){l[a+c]=function(d,e,f){return h(arguments,0,"url"),b.isUndefined(d)&&(d=null),l[a](c,d,void 0,e,f)}}),b.forEach(["PUT","POST","PATCH"],function(c){l[a+c]=function(d,e,f,g){return h(arguments,0,"url"),b.isUndefined(d)&&(d=null),l[a](c,d,e,f,g)}})}function n(a){var b=i(a),d={caseInsensitiveMatch:!0,ignoreTrailingSlashes:!0};return c(b,d)}var o=[],p=[],q=!1,r=[],s=b.bind(r,r.push),t=b.copy,u=e.$$originalHttpBackend||e;return l.when=function(a,b,c,d,e){h(arguments,1,"url");var i=new j(a,b,c,d,e),k={respond:function(a,b,c,d){return i.passThrough=void 0,i.response=g(a,b,c,d),k}};return f&&(k.passThrough=function(){return i.response=void 0,i.passThrough=!0,k}),o.push(i),k},l.matchLatestDefinitionEnabled=function(a){return b.isDefined(a)?(q=a,this):q},m("when"),l.whenRoute=function(a,b){var c=n(b);return l.when(a,c.regexp,void 0,void 0,c.keys)},l.expect=function(a,b,c,d,e){h(arguments,1,"url");var f=new j(a,b,c,d,e),i={respond:function(a,b,c,d){return f.response=g(a,b,c,d),i}};return p.push(f),i},m("expect"),l.expectRoute=function(a,b){var c=n(b);return l.expect(a,c.regexp,void 0,void 0,c.keys)},l.flush=function(c,d,e){if(e!==!1&&a.$digest(),d=d||0,d>=r.length)throw new Error("No pending request to flush !");if(b.isDefined(c)&&null!==c)for(;c--;){var f=r.splice(d,1);if(!f.length)throw new Error("No more pending request to flush !");f[0]()}else for(;r.length>d;)r.splice(d,1)[0]();l.verifyNoOutstandingExpectation(e)},l.verifyNoOutstandingExpectation=function(b){if(b!==!1&&a.$digest(),p.length)throw new Error("Unsatisfied requests: "+p.join(", "))},l.verifyNoOutstandingRequest=function(b){if(b!==!1&&a.$digest(),r.length){var c=r.map(function(a){return a.description});throw new Error("Unflushed requests: "+r.length+"\n "+c.join("\n "))}},l.resetExpectations=function(){p.length=0,r.length=0},l.$$originalHttpBackend=u,l}function h(a,c,d){if(a.length>c&&b.isUndefined(a[c]))throw new Error("Undefined argument `"+d+"`; the argument is provided but not defined")}function i(a){return a.replace(/[?#].*$/,"")}function j(a,c,d,e,f){function g(a){var b=/^([^?]*)\?(.*)$/,d=b.exec(c),e=b.exec(a);return!(!d||!e)&&d[1]===e[1]&&h(d[2])===h(e[2])}function h(a){return a.split("&").sort().join("&")}function j(a){var d={};if(!(c&&b.isFunction(c.test)&&f&&f.length))return d;var e=c.exec(a);if(!e)return d;for(var g=1,h=e.length;h>g;++g){var i=f[g-1],j=e[g];i&&j&&(d[i.name||i]=j)}return d}function k(a){var c={},d=a.split("&").filter(b.identity).map(function(a){return a.replace(/\+/g,"%20").split("=")});return b.forEach(d,function(a){var d=l(a[0]);if(b.isDefined(d)){var e=b.isDefined(a[1])?l(a[1]):!0;hasOwnProperty.call(c,d)?b.isArray(c[d])?c[d].push(e):c[d]=[c[d],e]:c[d]=e}}),c}function l(a){try{return decodeURIComponent(a)}catch(b){}}this.data=d,this.headers=e,this.match=function(c,d,e,f){return a!==c?!1:this.matchUrl(d)?b.isDefined(e)&&!this.matchData(e)?!1:b.isDefined(f)&&!this.matchHeaders(f)?!1:!0:!1},this.matchUrl=function(a){return c?b.isFunction(c.test)?c.test(a):b.isFunction(c)?c(a):c===a||g(a):!0},this.matchHeaders=function(a){return b.isUndefined(e)?!0:b.isFunction(e)?e(a):b.equals(e,a)},this.matchData=function(a){return b.isUndefined(d)?!0:d&&b.isFunction(d.test)?d.test(a):d&&b.isFunction(d)?d(a):d&&!b.isString(d)?b.equals(b.fromJson(b.toJson(d)),b.fromJson(a)):d==a},this.toString=function(){return a+" "+c},this.params=function(a){var c=-1===a.indexOf("?")?"":a.substring(a.indexOf("?")+1),d=i(a);return b.extend(k(c),j(d))}}function k(){k.$$lastInstance=this,this.open=function(a,b,c){this.$$method=a,this.$$url=b,this.$$async=c,this.$$reqHeaders={},this.$$respHeaders={}},this.send=function(a){this.$$data=a},this.setRequestHeader=function(a,b){this.$$reqHeaders[a]=b},this.getResponseHeader=function(a){var c=this.$$respHeaders[a];return c?c:(a=b.$$lowercase(a),(c=this.$$respHeaders[a])?c:(c=void 0,b.forEach(this.$$respHeaders,function(d,e){c||b.$$lowercase(e)!==a||(c=d)}),c))},this.getAllResponseHeaders=function(){var a=[];return b.forEach(this.$$respHeaders,function(b,c){a.push(c+": "+b)}),a.join("\n")},this.abort=function(){isFunction(this.onabort)&&this.onabort()},this.$$events={},this.addEventListener=function(a,c){b.isUndefined(this.$$events[a])&&(this.$$events[a]=[]),this.$$events[a].push(c)},this.upload={$$events:{},addEventListener:this.addEventListener}}function l(){return b.mock.$ControllerDecorator=["$delegate",function(a){return function(c,d,e,f){if(e&&"object"==typeof e){var g=a(c,d,!0,f),h=g();return b.extend(h,e),h}return a(c,d,e,f)}}],b.mock.$ControllerDecorator}b.mock={},b.mock.$BrowserProvider=function(){this.$get=["$log","$$taskTrackerFactory",function(a,c){return new b.mock.$Browser(a,c)}]},b.mock.$Browser=function(a,c){var d=this,e=c(a);this.isMock=!0,d.$$url="http://server/",d.$$lastUrl=d.$$url,d.pollFns=[],d.$$completeOutstandingRequest=e.completeTask,d.$$incOutstandingRequestCount=e.incTaskCount,d.notifyWhenNoOutstandingRequests=e.notifyWhenNoPendingTasks,d.onUrlChange=function(a){return d.pollFns.push(function(){(d.$$lastUrl!==d.$$url||d.$$state!==d.$$lastState)&&(d.$$lastUrl=d.$$url,d.$$lastState=d.$$state,a(d.$$url,d.$$state))}),a},d.$$applicationDestroyed=b.noop,d.$$checkUrlChange=b.noop,d.deferredFns=[],d.deferredNextId=0,d.defer=function(a,b,c){var f=d.deferredNextId++;return b=b||0,c=c||e.DEFAULT_TASK_TYPE,e.incTaskCount(c),d.deferredFns.push({id:f,type:c,time:d.defer.now+b,fn:a}),d.deferredFns.sort(function(a,b){return a.time-b.time}),f},d.defer.now=0,d.defer.cancel=function(a){var c;if(b.forEach(d.deferredFns,function(b,d){b.id===a&&(c=d)}),b.isDefined(c)){var f=d.deferredFns.splice(c,1)[0];return e.completeTask(b.noop,f.type),!0}return!1},d.defer.flush=function(a){var c;if(b.isDefined(a))c=d.defer.now+a;else{if(!d.deferredFns.length)throw new Error("No deferred tasks to be flushed");c=d.deferredFns[d.deferredFns.length-1].time}for(;d.deferredFns.length&&d.deferredFns[0].time<=c;){d.defer.now=d.deferredFns[0].time;var f=d.deferredFns.shift();e.completeTask(f.fn,f.type)}d.defer.now=c},d.defer.getPendingTasks=function(a){return a?d.deferredFns.filter(function(b){return b.type===a}):d.deferredFns},d.defer.formatPendingTasks=function(a){return a.map(function(a){return"{id: "+a.id+", type: "+a.type+", time: "+a.time+"}"})},d.defer.verifyNoPendingTasks=function(a){var b=d.defer.getPendingTasks(a);if(b.length){var c=d.defer.formatPendingTasks(b).join("\n ");throw new Error("Deferred tasks to flush ("+b.length+"):\n "+c)}},d.$$baseHref="/",d.baseHref=function(){return this.$$baseHref}},b.mock.$Browser.prototype={poll:function(){b.forEach(this.pollFns,function(a){a()})},url:function(a,c,d){return b.isUndefined(d)&&(d=null),a?(this.$$url=a.replace(/#$/,""),this.$$state=b.copy(d),this):this.$$url},state:function(){return this.$$state}},b.mock.$FlushPendingTasksProvider=function(){this.$get=["$browser",function(a){return function(b){return a.defer.flush(b)}}]},b.mock.$VerifyNoPendingTasksProvider=function(){this.$get=["$browser",function(a){return function(b){return a.defer.verifyNoPendingTasks(b)}}]},b.mock.$ExceptionHandlerProvider=function(){var a;this.mode=function(b){switch(b){case"log":case"rethrow":var c=[];a=function(a){if(1===arguments.length?c.push(a):c.push([].slice.call(arguments,0)),"rethrow"===b)throw a},a.errors=c;break;default:throw new Error("Unknown mode '"+b+"', only 'log'/'rethrow' modes are allowed!")}},this.$get=function(){return a},this.mode("rethrow")},b.mock.$LogProvider=function(){function a(a,b,c){return a.concat(Array.prototype.slice.call(b,c))}var c=!0;this.debugEnabled=function(a){return b.isDefined(a)?(c=a,this):c},this.$get=function(){var d={log:function(){d.log.logs.push(a([],arguments,0))},warn:function(){d.warn.logs.push(a([],arguments,0))},info:function(){d.info.logs.push(a([],arguments,0))},error:function(){d.error.logs.push(a([],arguments,0))},debug:function(){c&&d.debug.logs.push(a([],arguments,0))}};return d.reset=function(){d.log.logs=[],d.info.logs=[],d.warn.logs=[],d.error.logs=[],d.debug.logs=[]},d.assertEmpty=function(){var a=[];if(b.forEach(["error","warn","info","log","debug"],function(c){b.forEach(d[c].logs,function(d){b.forEach(d,function(b){a.push("MOCK $log ("+c+"): "+String(b)+"\n"+(b.stack||""))})})}),a.length)throw a.unshift("Expected $log to be empty! Either a message was logged unexpectedly, or an expected log message was not checked and removed:"),a.push(""),new Error(a.join("\n---------\n"))},d.reset(),d}},b.mock.$IntervalProvider=function(){this.$get=["$browser","$$intervalFactory",function(a,b){var c=[],d=0,e=0,f=function(b,f,g,h){var i=d++,j=h?function(){b(),a.defer.flush()}:b;return c.push({nextTime:e+(f||0),delay:f||1,fn:j,id:i,deferred:g}),c.sort(function(a,b){return a.nextTime-b.nextTime}),i},g=function(a){for(var b=c.length-1;b>=0;b--)if(c[b].id===a){c.splice(b,1);break}},h=b(f,g);return h.cancel=function(a){if(!a)return!1;for(var b=c.length-1;b>=0;b--)if(c[b].id===a.$$intervalId){var d=c[b].deferred;return d.promise.then(void 0,function(){}),d.reject("canceled"),c.splice(b,1),!0}return!1},h.flush=function(a){var b=e;for(e+=a;c.length&&c[0].nextTime<=e;){var d=c[0];d.fn(),d.nextTime===b&&d.nextTime++,d.nextTime+=d.delay,c.sort(function(a,b){return a.nextTime-b.nextTime})}return a},h}]},b.mock.TzDate=function(a,c){var e=new Date(0);if(b.isString(c)){var g=c;if(e.origDate=d(c),c=e.origDate.getTime(),isNaN(c))throw{name:"Illegal Argument",message:"Arg '"+g+"' passed into TzDate constructor is not a valid date string"}}else e.origDate=new Date(c);var h=new Date(c).getTimezoneOffset();e.offsetDiff=60*h*1e3-1e3*a*60*60,e.date=new Date(c+e.offsetDiff),e.getTime=function(){return e.date.getTime()-e.offsetDiff},e.toLocaleDateString=function(){return e.date.toLocaleDateString()},e.getFullYear=function(){return e.date.getFullYear()},e.getMonth=function(){return e.date.getMonth()},e.getDate=function(){return e.date.getDate()},e.getHours=function(){return e.date.getHours()},e.getMinutes=function(){return e.date.getMinutes()},e.getSeconds=function(){return e.date.getSeconds()},e.getMilliseconds=function(){return e.date.getMilliseconds()},e.getTimezoneOffset=function(){return 60*a},e.getUTCFullYear=function(){return e.origDate.getUTCFullYear()},e.getUTCMonth=function(){return e.origDate.getUTCMonth()},e.getUTCDate=function(){return e.origDate.getUTCDate()},e.getUTCHours=function(){return e.origDate.getUTCHours()},e.getUTCMinutes=function(){return e.origDate.getUTCMinutes()},e.getUTCSeconds=function(){return e.origDate.getUTCSeconds()},e.getUTCMilliseconds=function(){return e.origDate.getUTCMilliseconds()},e.getDay=function(){return e.date.getDay()},e.toISOString&&(e.toISOString=function(){return f(e.origDate.getUTCFullYear(),4)+"-"+f(e.origDate.getUTCMonth()+1,2)+"-"+f(e.origDate.getUTCDate(),2)+"T"+f(e.origDate.getUTCHours(),2)+":"+f(e.origDate.getUTCMinutes(),2)+":"+f(e.origDate.getUTCSeconds(),2)+"."+f(e.origDate.getUTCMilliseconds(),3)+"Z"});var i=["getUTCDay","getYear","setDate","setFullYear","setHours","setMilliseconds","setMinutes","setMonth","setSeconds","setTime","setUTCDate","setUTCFullYear","setUTCHours","setUTCMilliseconds","setUTCMinutes","setUTCMonth","setUTCSeconds","setYear","toDateString","toGMTString","toJSON","toLocaleFormat","toLocaleString","toLocaleTimeString","toSource","toString","toTimeString","toUTCString","valueOf"];return b.forEach(i,function(a){e[a]=function(){throw new Error("Method '"+a+"' is not implemented in the TzDate mock")}}),e},b.mock.TzDate.prototype=Date.prototype,b.mock.animate=b.module("ngAnimateMock",["ng"]).info({angularVersion:"1.7.9"}).config(["$provide",function(a){a.factory("$$forceReflow",function(){function a(){a.totalReflows++}return a.totalReflows=0,a}),a.factory("$$animateAsyncRun",function(){var a=[],b=function(){return function(b){a.push(b)}};return b.flush=function(){if(0===a.length)return!1;for(var b=0;b
"),b.forEach(a,function(a){e.append(b.element(a).clone())}),e=e.html()):b.isArray(a)?(e=[],b.forEach(a,function(a){e.push(c(a))}),e="[ "+e.join(", ")+" ]"):e=b.isObject(a)?b.isFunction(a.$eval)&&b.isFunction(a.$apply)?d(a):a instanceof Error?a.stack||""+a.name+": "+a.message:b.toJson(a,!0):String(a),e}function d(a,c){c=c||" ";var e=[c+"Scope("+a.$id+"): {"];for(var f in a)Object.prototype.hasOwnProperty.call(a,f)&&!f.match(/^(\$|this)/)&&e.push(" "+f+": "+b.toJson(a[f]));for(var g=a.$$childHead;g;)e.push(d(g,c+" ")),g=g.$$nextSibling;return e.push("}"),e.join("\n"+c)}return c(a)},b.mock.$httpBackendDecorator=["$rootScope","$timeout","$delegate",g],b.mock.$TimeoutDecorator=["$delegate","$browser",function(a,b){return a.flush=function(a){b.defer.flush(a)},a.verifyNoPendingTasks=function(){var a=b.defer.getPendingTasks();if(a.length){var c=b.defer.formatPendingTasks(a).join("\n "),d=a.some(function(a){return"$timeout"===a.type}),e=d?"":"\n\nNone of the pending tasks are timeouts. If you only want to verify pending timeouts, use `$verifyNoPendingTasks('$timeout')` instead.";throw new Error("Deferred tasks to flush ("+a.length+"):\n "+c+e)}},a}],b.mock.$RAFDecorator=["$delegate",function(a){var b=function(a){var c=b.queue.length;return b.queue.push(a),function(){b.queue.splice(c,1)}};return b.queue=[],b.supported=a.supported,b.flush=function(){if(0===b.queue.length)throw new Error("No rAF callbacks present");for(var a=b.queue.length,c=0;a>c;c++)b.queue[c]();b.queue=b.queue.slice(c)},b}];var m;b.mock.$RootElementProvider=function(){this.$get=["$injector",function(a){return m=b.element("
").data("$injector",a)}]},b.mock.$ComponentControllerProvider=["$compileProvider",function(a){this.$get=["$controller","$injector","$rootScope",function(a,b,c){return function(d,e,f,g){var h=b.get(d+"Directive"),i=h.filter(function(a){return a.controller&&a.controllerAs&&"E"===a.restrict});if(0===i.length)throw new Error("No component found");if(i.length>1)throw new Error("Too many components found");var j=i[0];return e=e||{},e.$scope=e.$scope||c.$new(!0),a(j.controller,e,f,g||j.controllerAs)}}]}],b.module("ngMock",["ng"]).provider({$browser:b.mock.$BrowserProvider,$exceptionHandler:b.mock.$ExceptionHandlerProvider,$log:b.mock.$LogProvider,$interval:b.mock.$IntervalProvider,$rootElement:b.mock.$RootElementProvider,$componentController:b.mock.$ComponentControllerProvider,$flushPendingTasks:b.mock.$FlushPendingTasksProvider,$verifyNoPendingTasks:b.mock.$VerifyNoPendingTasksProvider}).config(["$provide","$compileProvider",function(a,c){a.decorator("$timeout",b.mock.$TimeoutDecorator),a.decorator("$$rAF",b.mock.$RAFDecorator),a.decorator("$rootScope",b.mock.$RootScopeDecorator),a.decorator("$controller",l(c)),a.decorator("$httpBackend",b.mock.$httpBackendDecorator)}]).info({angularVersion:"1.7.9"}),b.module("ngMockE2E",["ng"]).config(["$provide",function(a){a.decorator("$httpBackend",b.mock.e2e.$httpBackendDecorator)}]).info({angularVersion:"1.7.9"}),b.mock.e2e={},b.mock.e2e.$httpBackendDecorator=["$rootScope","$timeout","$delegate","$browser",g],b.mock.$RootScopeDecorator=["$delegate",function(a){function b(){for(var a,b=0,c=[this.$$childHead];c.length;)for(a=c.shift();a;)b+=1,c.push(a.$$childHead),a=a.$$nextSibling;return b}function c(){for(var a,b=this.$$watchers?this.$$watchers.length:0,c=[this.$$childHead];c.length;)for(a=c.shift();a;)b+=a.$$watchers?a.$$watchers.length:0,c.push(a.$$childHead),a=a.$$nextSibling;return b}var d=Object.getPrototypeOf(a);return d.$countChildScopes=b,d.$countWatchers=c,a}],function(c){function d(){this.shared=!1,this.sharedError=null,this.cleanupAfterEach=function(){return!this.shared||this.sharedError}}if(c){var e=null,f=new d,g=[],h=function(){return!!e};b.mock.$$annotate=b.injector.$$annotate,b.injector.$$annotate=function(a){return"function"!=typeof a||a.$inject||g.push(a),b.mock.$$annotate.apply(this,arguments)};var i=a.module=b.mock.module=function(){function a(){if(e.$injector)throw new Error("Injector already created, can not register a module!");var a,d=e.$modules||(e.$modules=[]);b.forEach(c,function(c){a=b.isObject(c)&&!b.isArray(c)?["$provide",function(a){b.forEach(c,function(b,c){a.value(c,b)})}]:c,e.$providerInjector?e.$providerInjector.invoke(a):d.push(a)})}var c=Array.prototype.slice.call(arguments,0);return h()?a():a};i.$$beforeAllHook=a.before||a.beforeAll,i.$$afterAllHook=a.after||a.afterAll,i.$$currentSpec=function(a){return 0===arguments.length?a:void(e=a)},i.sharedInjector=function(){if(!i.$$beforeAllHook||!i.$$afterAllHook)throw Error("sharedInjector() cannot be used unless your test runner defines beforeAll/afterAll");var a=!1;i.$$beforeAllHook(function(){if(f.shared)throw f.sharedError=Error("sharedInjector() cannot be called inside a context that has already called sharedInjector()"),f.sharedError;a=!0,e=this,f.shared=!0}),i.$$afterAllHook(function(){a?(f=new d,i.$$cleanup()):f.sharedError=null})},i.$$beforeEach=function(){if(f.shared&&e&&e!==this){var a=e;e=this,b.forEach(["$injector","$modules","$providerInjector","$injectorStrict"],function(b){e[b]=a[b],a[b]=null})}else e=this,m=null,g=[]},i.$$afterEach=function(){f.cleanupAfterEach()&&i.$$cleanup()},i.$$cleanup=function(){var a=e.$injector;if(g.forEach(function(a){delete a.$inject}),e.$injector=null,e.$modules=null,e.$providerInjector=null,e=null,a){var c=a.get("$rootElement"),d=c&&c[0],f=m?[m[0]]:[];!d||m&&d===m[0]||f.push(d),b.element.cleanData(f);var h=a.get("$rootScope");h&&h.$destroy&&h.$destroy()}b.forEach(b.element.fragments,function(a,c){delete b.element.fragments[c]}),k.$$lastInstance=null,b.forEach(b.callbacks,function(a,c){delete b.callbacks[c]}),b.callbacks.$$counter=0},(a.beforeEach||a.setup)(i.$$beforeEach),(a.afterEach||a.teardown)(i.$$afterEach);var j=function(a,b){this.message=a.message,this.name=a.name,a.line&&(this.line=a.line),a.sourceId&&(this.sourceId=a.sourceId),a.stack&&b&&(this.stack=a.stack+"\n"+b.stack),a.stackArray&&(this.stackArray=a.stackArray)};j.prototype=Error.prototype,a.inject=b.mock.inject=function(){function a(){var a=e.$modules||[],f=!!e.$injectorStrict;a.unshift(["$injector",function(a){e.$providerInjector=a}]),a.unshift("ngMock"),a.unshift("ng");var g=e.$injector;g||(f&&b.forEach(a,function(a){"function"==typeof a&&b.injector.$$annotate(a)}),g=e.$injector=b.injector(a,f),e.$injectorStrict=f);for(var h=0,i=c.length;i>h;h++){e.$injectorStrict&&g.annotate(c[h]);try{g.invoke(c[h]||b.noop,this)}catch(k){if(k.stack&&d)throw new j(k,d);throw k}finally{d=null}}}var c=Array.prototype.slice.call(arguments,0),d=new Error("Declaration Location");if(!d.stack)try{throw d}catch(f){}return h()?a.call(e):a},b.mock.inject.strictDi=function(a){function b(){if(a!==e.$injectorStrict){if(e.$injector)throw new Error("Injector already created, can not modify strict annotations");e.$injectorStrict=a}}return a=arguments.length?!!a:!0,h()?b():b}}}(a.jasmine||a.mocha),function(){function b(){if("_cached"in b)return b._cached;if(!a.document.createTouch||!a.document.createTouchList)return b._cached=!1,!1;try{a.document.createEvent("TouchEvent")}catch(c){return b._cached=!1,!1}return b._cached=!0,!0}function c(b,c,d,e){var f=new a.Event(c);d=d||0,e=e||0;var g=a.document.createTouch(a,b,Date.now(),d,e,d,e),h=a.document.createTouchList(g);return f.touches=h,f}function d(){if("_cached"in d)return d._cached;d._cached=!1;var b=a.document;if(b){var c=b.createElement("div"),e=c.cloneNode();c.appendChild(e),c.addEventListener("e",function(){d._cached=!0});var f=a.document.createEvent("Events");f.initEvent("e",!0,!0),e.dispatchEvent(f)}return d._cached}function e(a,b){var c=!1,d=b.stopPropagation;b.stopPropagation=function(){c=!0,d.apply(b,arguments)},f(b,a);do a.dispatchEvent(b);while(!c&&(a=a.parentNode))}function f(a,b){a._target=b,Object.defineProperty(a,"target",{get:function(){return this._target}})}function g(b){for(;b=b.parentNode;)if(b===a)return!0;return!1}a.browserTrigger=function(f,h,i){function j(a){return-1!==l.indexOf(a)}if(f&&!f.nodeName&&(f=f[0]),f){i=i||{};var k=i.relatedTarget||f,l=i.keys,m=i.x,n=i.y,o=f.type?f.type.toLowerCase():null,p=f.nodeName.toLowerCase();h||(h={text:"change",textarea:"change",hidden:"change",password:"change",button:"click",submit:"click",reset:"click",image:"click",checkbox:"click",radio:"click","select-one":"change","select-multiple":"change",_default_:"click"}[o||"_default_"]),"option"===p&&(f.parentNode.value=f.value,f=f.parentNode,h="change"),l=l||[];var q;if(/transitionend/.test(h))if(a.WebKitTransitionEvent)q=new a.WebKitTransitionEvent(h,i),q.initEvent(h,i.bubbles,!0);else try{q=new a.TransitionEvent(h,i)}catch(r){q=a.document.createEvent("TransitionEvent"),q.initTransitionEvent(h,i.bubbles,null,null,i.elapsedTime||0)}else if(/animationend/.test(h))if(a.WebKitAnimationEvent)q=new a.WebKitAnimationEvent(h,i),q.initEvent(h,i.bubbles,!0);else try{q=new a.AnimationEvent(h,i)}catch(r){q=a.document.createEvent("AnimationEvent"),q.initAnimationEvent(h,i.bubbles,null,null,i.elapsedTime||0)}else if(/touch/.test(h)&&b())q=c(f,h,m,n);else if(/key/.test(h))q=a.document.createEvent("Events"),q.initEvent(h,i.bubbles,i.cancelable),q.view=a,q.ctrlKey=j("ctrl"),q.altKey=j("alt"),q.shiftKey=j("shift"),q.metaKey=j("meta"),q.keyCode=i.keyCode,q.charCode=i.charCode,q.which=i.which;else if(/composition/.test(h))try{q=new a.CompositionEvent(h,{data:i.data})}catch(r){q=a.document.createEvent("CompositionEvent",{}),q.initCompositionEvent(h,i.bubbles,i.cancelable,a,i.data,null)}else q=a.document.createEvent("MouseEvents"),m=m||0,n=n||0,q.initMouseEvent(h,!0,!0,a,0,m,n,m,n,j("ctrl"),j("alt"),j("shift"),j("meta"),0,k);if(q.$manualTimeStamp=i.timeStamp,q)return!i.bubbles||d()||g(f)?f.dispatchEvent(q):void e(f,q)}}}()}(window,window.angular); \ No newline at end of file diff --git a/static/html/bower_components/angular-resource/angular-resource.min.js b/static/html/bower_components/angular-resource/angular-resource.min.js new file mode 100644 index 00000000..7acd0218 --- /dev/null +++ b/static/html/bower_components/angular-resource/angular-resource.min.js @@ -0,0 +1,15 @@ +/* + AngularJS v1.8.3 + (c) 2010-2020 Google LLC. http://angularjs.org + License: MIT +*/ +(function(T,a){'use strict';function M(m,f){f=f||{};a.forEach(f,function(a,d){delete f[d]});for(var d in m)!m.hasOwnProperty(d)||"$"===d.charAt(0)&&"$"===d.charAt(1)||(f[d]=m[d]);return f}var B=a.$$minErr("$resource"),H=/^(\.[a-zA-Z_$@][0-9a-zA-Z_$@]*)+$/;a.module("ngResource",["ng"]).info({angularVersion:"1.8.3"}).provider("$resource",function(){var m=/^https?:\/\/\[[^\]]*][^/]*/,f=this;this.defaults={stripTrailingSlashes:!0,cancellable:!1,actions:{get:{method:"GET"},save:{method:"POST"},query:{method:"GET", +isArray:!0},remove:{method:"DELETE"},"delete":{method:"DELETE"}}};this.$get=["$http","$log","$q","$timeout",function(d,F,G,N){function C(a,d){this.template=a;this.defaults=n({},f.defaults,d);this.urlParams={}}var O=a.noop,r=a.forEach,n=a.extend,R=a.copy,P=a.isArray,D=a.isDefined,x=a.isFunction,I=a.isNumber,y=a.$$encodeUriQuery,S=a.$$encodeUriSegment;C.prototype={setUrlParams:function(a,d,f){var g=this,c=f||g.template,s,h,n="",b=g.urlParams=Object.create(null);r(c.split(/\W/),function(a){if("hasOwnProperty"=== +a)throw B("badname");!/^\d+$/.test(a)&&a&&(new RegExp("(^|[^\\\\]):"+a+"(\\W|$)")).test(c)&&(b[a]={isQueryParamValue:(new RegExp("\\?.*=:"+a+"(?:\\W|$)")).test(c)})});c=c.replace(/\\:/g,":");c=c.replace(m,function(b){n=b;return""});d=d||{};r(g.urlParams,function(b,a){s=d.hasOwnProperty(a)?d[a]:g.defaults[a];D(s)&&null!==s?(h=b.isQueryParamValue?y(s,!0):S(s),c=c.replace(new RegExp(":"+a+"(\\W|$)","g"),function(b,a){return h+a})):c=c.replace(new RegExp("(/?):"+a+"(\\W|$)","g"),function(b,a,e){return"/"=== +e.charAt(0)?e:a+e})});g.defaults.stripTrailingSlashes&&(c=c.replace(/\/+$/,"")||"/");c=c.replace(/\/\.(?=\w+($|\?))/,".");a.url=n+c.replace(/\/(\\|%5C)\./,"/.");r(d,function(b,c){g.urlParams[c]||(a.params=a.params||{},a.params[c]=b)})}};return function(m,y,z,g){function c(b,c){var d={};c=n({},y,c);r(c,function(c,f){x(c)&&(c=c(b));var e;if(c&&c.charAt&&"@"===c.charAt(0)){e=b;var k=c.substr(1);if(null==k||""===k||"hasOwnProperty"===k||!H.test("."+k))throw B("badmember",k);for(var k=k.split("."),h=0, +n=k.length;h/g,">")}function A(a){for(;a;){if(a.nodeType===s.Node.ELEMENT_NODE)for(var e=a.attributes,d=0,b=e.length;d"))},end:function(a){a=q(a);d||!0!==m[a]||!0===r[a]||(b(""));a==d&&(d=!1)},chars:function(a){d|| +b(L(a))}}};J=s.Node.prototype.contains||function(a){return!!(this.compareDocumentPosition(a)&16)};var z=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,u=/([^#-~ |!])/g,r=f("area,br,col,hr,img,wbr"),x=f("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),p=f("rp,rt"),n=h({},p,x),x=h({},x,f("address,article,aside,blockquote,caption,center,del,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,map,menu,nav,ol,pre,section,table,ul")),p=h({},p,f("a,abbr,acronym,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,q,ruby,rp,rt,s,samp,small,span,strike,strong,sub,sup,time,tt,u,var")), +l=f("circle,defs,desc,ellipse,font-face,font-face-name,font-face-src,g,glyph,hkern,image,linearGradient,line,marker,metadata,missing-glyph,mpath,path,polygon,polyline,radialGradient,rect,stop,svg,switch,text,title,tspan"),w=f("script,style"),m=h({},r,x,p,n),O=f("background,cite,href,longdesc,src,xlink:href,xml:base"),n=f("abbr,align,alt,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,coords,dir,face,headers,height,hreflang,hspace,ismap,lang,language,nohref,nowrap,rel,rev,rows,rowspan,rules,scope,scrolling,shape,size,span,start,summary,tabindex,target,title,type,valign,value,vspace,width"), +p=f("accent-height,accumulate,additive,alphabetic,arabic-form,ascent,baseProfile,bbox,begin,by,calcMode,cap-height,class,color,color-rendering,content,cx,cy,d,dx,dy,descent,display,dur,end,fill,fill-rule,font-family,font-size,font-stretch,font-style,font-variant,font-weight,from,fx,fy,g1,g2,glyph-name,gradientUnits,hanging,height,horiz-adv-x,horiz-origin-x,ideographic,k,keyPoints,keySplines,keyTimes,lang,marker-end,marker-mid,marker-start,markerHeight,markerUnits,markerWidth,mathematical,max,min,offset,opacity,orient,origin,overline-position,overline-thickness,panose-1,path,pathLength,points,preserveAspectRatio,r,refX,refY,repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,rotate,rx,ry,slope,stemh,stemv,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,stroke,stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,stroke-opacity,stroke-width,systemLanguage,target,text-anchor,to,transform,type,u1,u2,underline-position,underline-thickness,unicode,unicode-range,units-per-em,values,version,viewBox,visibility,width,widths,x,x-height,x1,x2,xlink:actuate,xlink:arcrole,xlink:role,xlink:show,xlink:title,xlink:type,xml:base,xml:lang,xml:space,xmlns,xmlns:xlink,y,y1,y2,zoomAndPan", +!0),M=h({},O,p,n),N=function(a,e){function d(b){b=""+b;try{var d=(new a.DOMParser).parseFromString(b,"text/html").body;d.firstChild.remove();return d}catch(e){}}function b(a){c.innerHTML=a;e.documentMode&&A(c);return c}var g;if(e&&e.implementation)g=e.implementation.createHTMLDocument("inert");else throw D("noinert");var c=(g.documentElement||g.getDocumentElement()).querySelector("body");c.innerHTML='';return c.querySelector("svg")? +(c.innerHTML='

',c.querySelector("svg img")?d:b):function(b){b=""+b;try{b=encodeURI(b)}catch(d){return}var e=new a.XMLHttpRequest;e.responseType="document";e.open("GET","data:text/html;charset=utf-8,"+b,!1);e.send(null);b=e.response.body;b.firstChild.remove();return b}}(s,s.document)}).info({angularVersion:"1.7.9"});c.module("ngSanitize").filter("linky",["$sanitize",function(f){var h=/((s?ftp|https?):\/\/|(www\.)|(mailto:)?[A-Za-z0-9._%+-]+@)\S*[^\s.;,(){}<>"\u201d\u2019]/i, +t=/^mailto:/i,q=c.$$minErr("linky"),s=c.isDefined,A=c.isFunction,v=c.isObject,y=c.isString;return function(c,z,u){function r(c){c&&l.push(P(c))}function x(c,g){var f,a=p(c);l.push("');r(g);l.push("")}if(null==c||""===c)return c;if(!y(c))throw q("notstring",c);for(var p=A(u)?u:v(u)?function(){return u}:function(){return{}},n=c,l=[],w,m;c=n.match(h);)w=c[0],c[2]|| +c[4]||(w=(c[3]?"http://":"mailto:")+w),m=c.index,r(n.substr(0,m)),x(w,c[0].replace(t,"")),n=n.substring(m+c[0].length);r(n);return f(l.join(""))}}])})(window,window.angular); +//# sourceMappingURL=angular-sanitize.min.js.map diff --git a/static/html/bower_components/angular-touch/angular-touch.min.js b/static/html/bower_components/angular-touch/angular-touch.min.js new file mode 100644 index 00000000..c6b0f472 --- /dev/null +++ b/static/html/bower_components/angular-touch/angular-touch.min.js @@ -0,0 +1,10 @@ +/* + AngularJS v1.7.9 + (c) 2010-2018 Google, Inc. http://angularjs.org + License: MIT +*/ +(function(t,p){'use strict';function q(g,h,s){n.directive(g,["$parse","$swipe",function(a,b){return function(c,e,f){function k(a){if(!d)return!1;var b=Math.abs(a.y-d.y);a=(a.x-d.x)*h;return l&&75>b&&0b/a}var m=a(f[g]),d,l,r=["touch"];p.isDefined(f.ngSwipeDisableMouse)||r.push("mouse");b.bind(e,{start:function(a,b){d=a;l=!0},cancel:function(a){l=!1},end:function(a,b){k(a)&&c.$apply(function(){e.triggerHandler(s);m(c,{$event:b})})}},r)}}])}var n=p.module("ngTouch",[]);n.info({angularVersion:"1.7.9"}); +n.factory("$swipe",[function(){function g(a){a=a.originalEvent||a;var b=a.touches&&a.touches.length?a.touches:[a];a=a.changedTouches&&a.changedTouches[0]||b[0];return{x:a.clientX,y:a.clientY}}function h(a,b){var c=[];p.forEach(a,function(a){(a=n[a][b])&&c.push(a)});return c.join(" ")}var n={mouse:{start:"mousedown",move:"mousemove",end:"mouseup"},touch:{start:"touchstart",move:"touchmove",end:"touchend",cancel:"touchcancel"},pointer:{start:"pointerdown",move:"pointermove",end:"pointerup",cancel:"pointercancel"}}; +return{bind:function(a,b,c){var e,f,k,m,d=!1;c=c||["mouse","touch","pointer"];a.on(h(c,"start"),function(a){k=g(a);d=!0;f=e=0;m=k;b.start&&b.start(k,a)});var l=h(c,"cancel");if(l)a.on(l,function(a){d=!1;b.cancel&&b.cancel(a)});a.on(h(c,"move"),function(a){if(d&&k){var c=g(a);e+=Math.abs(c.x-m.x);f+=Math.abs(c.y-m.y);m=c;10>e&&10>f||(f>e?(d=!1,b.cancel&&b.cancel(a)):(a.preventDefault(),b.move&&b.move(c,a)))}});a.on(h(c,"end"),function(a){d&&(d=!1,b.end&&b.end(g(a),a))})}}}]);q("ngSwipeLeft",-1,"swipeleft"); +q("ngSwipeRight",1,"swiperight")})(window,window.angular); +//# sourceMappingURL=angular-touch.min.js.map diff --git a/static/html/bower_components/angular-translate-loader-static-files/angular-translate-loader-static-files.min.js b/static/html/bower_components/angular-translate-loader-static-files/angular-translate-loader-static-files.min.js new file mode 100644 index 00000000..a66674d4 --- /dev/null +++ b/static/html/bower_components/angular-translate-loader-static-files/angular-translate-loader-static-files.min.js @@ -0,0 +1,6 @@ +/*! + * angular-translate - v2.18.2 - 2020-01-04 + * + * Copyright (c) 2020 The angular-translate team, Pascal Precht; Licensed MIT + */ +!function(e,i){"function"==typeof define&&define.amd?define([],function(){return i()}):"object"==typeof module&&module.exports?module.exports=i():i()}(0,function(){function e(n,a){"use strict";return function(r){if(!(r&&(angular.isArray(r.files)||angular.isString(r.prefix)&&angular.isString(r.suffix))))throw new Error("Couldn't load static files, no files and prefix or suffix specified!");r.files||(r.files=[{prefix:r.prefix,suffix:r.suffix}]);for(var e=function(e){if(!e||!angular.isString(e.prefix)||!angular.isString(e.suffix))throw new Error("Couldn't load static file, no prefix or suffix specified!");var i=[e.prefix,r.key,e.suffix].join("");return angular.isObject(r.fileMap)&&r.fileMap[i]&&(i=r.fileMap[i]),a(angular.extend({url:i,method:"GET"},r.$http)).then(function(e){return e.data},function(){return n.reject(r.key)})},i=[],t=r.files.length,f=0;f");return e.text(t),e.html()},i=function(t){if(!n)throw new Error("pascalprecht.translate.$translateSanitization: Error cannot find $sanitize service. Either include the ngSanitize module (https://docs.angularjs.org/api/ngSanitize) or use a sanitization strategy which does not depend on $sanitize, such as 'escape'.");return n(t)},s=function(t){if(!a)throw new Error("pascalprecht.translate.$translateSanitization: Error cannot find $sce service.");return a.trustAsHtml(t)},o=function(t,n,a){if(angular.isDate(t))return t;if(angular.isObject(t)){var r=angular.isArray(t)?[]:{};if(a){if(-1=0&&c.setCollectionLength(m,a)})):d.$watchCollection(function(){return p(d)},function(a){a&&c.setCollectionLength(m,a.length)}),o(d)}}function e(a,b){var c,d=!!a.match(/(\|\s*itemsPerPage\s*:[^|]*:[^|]*)/);return c=b===j||d?a:a.replace(/(\|\s*itemsPerPage\s*:[^|]*)/,"$1 : '"+b+"'")}function f(a,b,c){a[0].hasAttribute("dir-paginate-start")||a[0].hasAttribute("data-dir-paginate-start")?(b.$set("ngRepeatStart",c),a.eq(a.length-1).attr("ng-repeat-end",!0)):b.$set("ngRepeat",c)}function g(a){angular.forEach(a,function(a){1===a.nodeType&&angular.element(a).attr("dir-paginate-no-compile",!0)})}function h(a){angular.forEach(a,function(a){1===a.nodeType&&angular.element(a).removeAttr("dir-paginate-no-compile")}),a.eq(0).removeAttr("dir-paginate-start").removeAttr("dir-paginate").removeAttr("data-dir-paginate-start").removeAttr("data-dir-paginate"),a.eq(a.length-1).removeAttr("dir-paginate-end").removeAttr("data-dir-paginate-end")}function i(a,c,d){var e;if(c.currentPage)e=b(c.currentPage);else{var f=(d+"__currentPage").replace(/\W/g,"_");a[f]=1,e=b(f)}return e}return{terminal:!0,multiElement:!0,priority:100,compile:d}}function b(){return{priority:5e3,terminal:!0}}function c(a){a.put("angularUtils.directives.dirPagination.template",'

')}function d(a,b){function c(b,c,e){function g(c){a.isRegistered(m)&&k(c)&&(b.pages=d(c,a.getCollectionLength(m),a.getItemsPerPage(m),o),b.pagination.current=c,i(),b.onPageChange&&b.onPageChange({newPageNumber:c}))}function h(){if(a.isRegistered(m)){var c=parseInt(a.getCurrentPage(m))||1;b.pages=d(c,a.getCollectionLength(m),a.getItemsPerPage(m),o),b.pagination.current=c,b.pagination.last=b.pages[b.pages.length-1],b.pagination.last0&&a<=b.pagination.last}var l=e.paginationId||j,m=b.paginationId||e.paginationId||j;if(!a.isRegistered(m)&&!a.isRegistered(l)){var n=m!==j?" (id: "+m+") ":" ";console.warn("Pagination directive: the pagination controls"+n+"cannot be used without the corresponding pagination directive, which was not found at link time.")}b.maxSize||(b.maxSize=9),b.autoHide=void 0===b.autoHide?!0:b.autoHide,b.directionLinks=angular.isDefined(e.directionLinks)?b.$parent.$eval(e.directionLinks):!0,b.boundaryLinks=angular.isDefined(e.boundaryLinks)?b.$parent.$eval(e.boundaryLinks):!1;var o=Math.max(b.maxSize,5);b.pages=[],b.pagination={last:1,current:1},b.range={lower:1,upper:1,total:1},b.$watch(function(){return a.isRegistered(m)?(a.getCollectionLength(m)+1)*a.getItemsPerPage(m):void 0},function(a){a>0&&h()}),b.$watch(function(){return a.isRegistered(m)?a.getItemsPerPage(m):void 0},function(a,c){a!=c&&"undefined"!=typeof c&&g(b.pagination.current)}),b.$watch(function(){return a.isRegistered(m)?a.getCurrentPage(m):void 0},function(a,b){a!=b&&g(a)}),b.setCurrent=function(b){a.isRegistered(m)&&k(b)&&(b=parseInt(b,10),a.setCurrentPage(m,b))},b.tracker=function(a,b){return a+"_"+b}}function d(a,b,c,d){var f,g=[],h=Math.ceil(b/c),i=Math.ceil(d/2);f=i>=a?"start":a>h-i?"end":"middle";for(var j=h>d,k=1;h>=k&&d>=k;){var l=e(k,a,d,h),m=2===k&&("middle"===f||"end"===f),n=k===d-1&&("middle"===f||"start"===f);j&&(m||n)?g.push("..."):g.push(l),k++}return g}function e(a,b,c,d){var e=Math.ceil(c/2);return a===c?d:1===a?a:d>c?b>d-e?d-c+a:b>e?b-e+a:a:a}var f=/^\d+$/;return{restrict:"AE",templateUrl:function(a,c){return c.templateUrl||b.getPath()},scope:{maxSize:"=?",onPageChange:"&?",paginationId:"=?",autoHide:"=?"},link:c}}function e(a){return function(b,c,d){if("undefined"==typeof d&&(d=j),!a.isRegistered(d))throw"pagination directive: the itemsPerPage id argument (id: "+d+") does not match a registered pagination-id.";var e,g;if(angular.isObject(b)){if(c=parseInt(c)||9999999999,g=a.isAsyncMode(d)?0:(a.getCurrentPage(d)-1)*c,e=g+c,a.setItemsPerPage(d,c),b instanceof Array)return b.slice(g,e);var h={};return angular.forEach(f(b).slice(g,e),function(a){h[a]=b[a]}),h}return b}}function f(a){if(Object.keys)return Object.keys(a);var b=[];for(var c in a)a.hasOwnProperty(c)&&b.push(c);return b}function g(){var a,b={};this.registerInstance=function(c){"undefined"==typeof b[c]&&(b[c]={asyncMode:!1},a=c)},this.isRegistered=function(a){return"undefined"!=typeof b[a]},this.getLastInstanceId=function(){return a},this.setCurrentPageParser=function(a,c,d){b[a].currentPageParser=c,b[a].context=d},this.setCurrentPage=function(a,c){b[a].currentPageParser.assign(b[a].context,c)},this.getCurrentPage=function(a){var c=b[a].currentPageParser;return c?c(b[a].context):1},this.setItemsPerPage=function(a,c){b[a].itemsPerPage=c},this.getItemsPerPage=function(a){return b[a].itemsPerPage},this.setCollectionLength=function(a,c){b[a].collectionLength=c},this.getCollectionLength=function(a){return b[a].collectionLength},this.setAsyncModeTrue=function(a){b[a].asyncMode=!0},this.isAsyncMode=function(a){return b[a].asyncMode}}function h(){var a="angularUtils.directives.dirPagination.template";this.setPath=function(b){a=b},this.$get=function(){return{getPath:function(){return a}}}}var i="angularUtils.directives.dirPagination",j="__default";angular.module(i,[]).directive("dirPaginate",["$compile","$parse","paginationService",a]).directive("dirPaginateNoCompile",b).directive("dirPaginationControls",["paginationService","paginationTemplate",d]).filter("itemsPerPage",["paginationService",e]).service("paginationService",g).provider("paginationTemplate",h).run(["$templateCache",c])}(); \ No newline at end of file diff --git a/static/html/bower_components/angular-utils-pagination/dirPagination.tpl.html b/static/html/bower_components/angular-utils-pagination/dirPagination.tpl.html new file mode 100644 index 00000000..db98d4cb --- /dev/null +++ b/static/html/bower_components/angular-utils-pagination/dirPagination.tpl.html @@ -0,0 +1,18 @@ + \ No newline at end of file diff --git a/static/html/bower_components/angular-webstorage/angular-webstorage.min.js b/static/html/bower_components/angular-webstorage/angular-webstorage.min.js new file mode 100644 index 00000000..2ae84bce --- /dev/null +++ b/static/html/bower_components/angular-webstorage/angular-webstorage.min.js @@ -0,0 +1,2 @@ +/*! mifosx-community-app 2022-07-11 */ +var webStorageModule=angular.module("webStorageModule",[]);webStorageModule.constant("defaultSettings",{prefix:"",order:["local","session","memory"],errorName:"webStorage.notification.error",testKey:"webStorage.test.key"}),webStorageModule.factory("webStorage",["$rootScope","defaultSettings",function(a,b){"use strict";function c(a,b){return console.warn(I),f(a,b)}function d(a,b){return console.warn(I),g(a,b)}function e(a,b){return console.warn(I),h(a,b)}function f(a,b){if(K){try{localStorage.setItem(P+a,JSON.stringify(b))}catch(c){return C(c)}return!0}return!1}function g(a,b){if(L){try{sessionStorage.setItem(P+a,JSON.stringify(b))}catch(c){return C(c)}return!0}return!1}function h(a,b){return Q[a]=b,!0}function i(a){if(K)try{var b=localStorage.getItem(P+a);return b&&JSON.parse(b)}catch(c){return C(c),null}return null}function j(a){if(L)try{var b=sessionStorage.getItem(P+a);return b&&JSON.parse(b)}catch(c){return C(c),null}return null}function k(a){return a in Q?Q[a]:null}function l(a){return null!==i(a)}function m(a){return null!==j(a)}function n(a){return null!==k(a)}function o(a){return K?localStorage.key(a):null}function p(a){return L?sessionStorage.key(a):null}function q(a){var b=0;for(var c in Q)if(Q.hasOwnProperty(c)){if(a===b)return c;if(b+=1,b>a)return null}return null}function r(){return K?localStorage.length:0}function s(){return L?sessionStorage.length:0}function t(){if(Object.keys)return Object.keys(Q).length;var a=0;for(var b in Q)Q.hasOwnProperty(b)&&(a+=1);return a}function u(a){if(K){try{localStorage.removeItem(P+a)}catch(b){return C(b)}return!0}return!1}function v(a){if(L){try{sessionStorage.removeItem(P+a)}catch(b){return C(b)}return!0}return!1}function w(a){return delete Q[a],!0}function x(){if(!K)return!1;if(P){var a=P.length;try{for(var b in localStorage)b.substr(0,a)===P&&localStorage.removeItem(b)}catch(c){return C(c)}return!0}try{localStorage.clear()}catch(c){return C(c)}return!0}function y(){if(!L)return!1;if(P){var a=P.length;try{for(var b in sessionStorage)b.substr(0,a)===P&&sessionStorage.removeItem(b)}catch(c){return C(c)}return!0}try{sessionStorage.clear()}catch(c){return C(c)}return!0}function z(){return Q={},!0}function A(){D();try{return localStorage.setItem(P+b.testKey,b.testKey),localStorage.removeItem(P+b.testKey),!0}catch(a){return!1}}function B(){E();try{return sessionStorage.setItem(P+b.testKey,b.testKey),sessionStorage.removeItem(P+b.testKey),!0}catch(a){return!1}}function C(b){return a.$broadcast(J,b.title+": "+b.message),!1}function D(){try{window.localStorage||(window.localStorage={getItem:function(a){return a&&this.hasOwnProperty(a)?unescape(document.cookie.replace(new RegExp("(?:^|.*;\\s*)"+escape(a).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=\\s*((?:[^;](?!;))*[^;]?).*"),"$1")):null},key:function(a){return unescape(document.cookie.replace(/\s*\=(?:.(?!;))*$/,"").split(/\s*\=(?:[^;](?!;))*[^;]?;\s*/)[a])},setItem:function(a,b){a&&(document.cookie=escape(a)+"="+escape(b)+"; expires=Tue, 19 Jan 2038 03:14:07 GMT; path=/",this.length=document.cookie.match(/\=/g).length)},length:0,removeItem:function(a){a&&this.hasOwnProperty(a)&&(document.cookie=escape(a)+"=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/",this.length--)},hasOwnProperty:function(a){return new RegExp("(?:^|;\\s*)"+escape(a).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=").test(document.cookie)}},window.localStorage.length=(document.cookie.match(/\=/g)||window.localStorage).length,M=!0)}catch(a){}}function E(){try{window.sessionStorage||(window.sessionStorage={getItem:function(a){return a&&this.hasOwnProperty(a)?unescape(document.cookie.replace(new RegExp("(?:^|.*;\\s*)"+escape(a).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=\\s*((?:[^;](?!;))*[^;]?).*"),"$1")):null},key:function(a){return unescape(document.cookie.replace(/\s*\=(?:.(?!;))*$/,"").split(/\s*\=(?:[^;](?!;))*[^;]?;\s*/)[a])},setItem:function(a,b){a&&(document.cookie=escape(a)+"="+escape(b)+"; path=/",this.length=document.cookie.match(/\=/g).length)},length:0,removeItem:function(a){a&&this.hasOwnProperty(a)&&(document.cookie=escape(a)+"=; expires=Thu, 01 Jan 1970 00:00:00 GMT; path=/",this.length--)},hasOwnProperty:function(a){return new RegExp("(?:^|;\\s*)"+escape(a).replace(/[\-\.\+\*]/g,"\\$&")+"\\s*\\=").test(document.cookie)}},window.sessionStorage.length=(document.cookie.match(/\=/g)||window.sessionStorage).length,N=!0)}catch(a){}}function F(a){var b=M;return a===!0&&M&&(window.localStorage=null,M=!1),b}function G(a){var b=N;return a===!0&&N&&(window.sessionStorage=null,M=!1),b}var H="undefined",I="angular-webstorage.js -- `add()` had been deprecated, use `set()` instead",J=b.errorName,K=A(),L=B(),M=!1,N=!1,O=b.order,P=b.prefix,Q={},R={isSupported:K||L,local:{isSupported:K,add:c,set:f,get:i,has:l,key:o,length:r,remove:u,clear:x,isPolyfilled:F},session:{isSupported:L,add:d,set:g,get:j,has:m,key:p,length:s,remove:v,clear:y,isPolyfilled:G},memory:{isSupported:!0,add:e,set:h,get:k,has:n,key:q,length:t,remove:w,clear:z,isPolyfilled:!1}};return R.add=function(a,b,c){return console.warn(I),R.set(a,b,c)},R.set=function(a,b,c){c=typeof c!==H?!!c:!1;for(var d=!1,e=O.length,f=0;e>f;++f){var g=R[O[f]];if(g.isSupported&&(d=g.set(a,b)||d,!c))return d}return d},R.get=function(a,b){b=typeof b!==H?!!b:!0;for(var c=O.length,d=0;c>d;++d){var e=R[O[d]];if(e.isSupported){var f=e.get(a);if(!b||null!==f)return f}}return null},R.has=function(a,b){return null!==R.get(a,b)},R.key=function(a,b){b=typeof b!==H?!!b:!0;for(var c=O.length,d=0;c>d;++d){var e=R[O[d]];if(e.isSupported){var f=e.key(a);if(!b||null!==f)return f}}return null},R.length=function(a){a=typeof a!==H?!!a:!0;for(var b=O.length,c=0;b>c;++c){var d=R[O[c]];if(d.isSupported){var e=d.length();if(!a||0!==e)return e}}return 0},R.remove=function(a,b){b=typeof b!==H?!!b:!0;for(var c=!1,d=O.length,e=0;d>e;++e){var f=R[O[e]];if(f.isSupported&&(c=f.remove(a)||c,!b))return c}return c},R.clear=function(a){a=typeof a!==H?!!a:!0;for(var b=!1,c=O.length,d=0;c>d;++d){var e=R[O[d]];if(e.isSupported&&(b=e.clear()||b,!a))return b}return b},R.errorName=function(a){var b=J;if(typeof a!==H){if("string"!=typeof a)return!1;J=a}return b},R.order=function(a){var b=angular.copy(O);if(typeof a!==H){O=[];for(var c in a)/^(local|session|memory)$/.test(a[c])&&O.push(a[c])}return b},R.prefix=function(a){var b=P;if(typeof a!==H){if("string"!=typeof a)return!1;P=a}return b},R}]); \ No newline at end of file diff --git a/static/html/bower_components/angular/angular.min.js b/static/html/bower_components/angular/angular.min.js new file mode 100644 index 00000000..f6bf3370 --- /dev/null +++ b/static/html/bower_components/angular/angular.min.js @@ -0,0 +1,350 @@ +/* + AngularJS v1.7.9 + (c) 2010-2018 Google, Inc. http://angularjs.org + License: MIT +*/ +(function(C){'use strict';function re(a){if(D(a))w(a.objectMaxDepth)&&(Wb.objectMaxDepth=Xb(a.objectMaxDepth)?a.objectMaxDepth:NaN),w(a.urlErrorParamsEnabled)&&Ga(a.urlErrorParamsEnabled)&&(Wb.urlErrorParamsEnabled=a.urlErrorParamsEnabled);else return Wb}function Xb(a){return W(a)&&0c)return"...";var d=b.$$hashKey,f;if(H(a)){f=0;for(var g=a.length;f").append(a).html();try{return a[0].nodeType===Pa?K(b):b.match(/^(<[^>]+>)/)[1].replace(/^<([\w-]+)/,function(a,b){return"<"+K(b)})}catch(d){return K(b)}}function Tc(a){try{return decodeURIComponent(a)}catch(b){}}function gc(a){var b={};r((a||"").split("&"), +function(a){var c,e,f;a&&(e=a=a.replace(/\+/g,"%20"),c=a.indexOf("="),-1!==c&&(e=a.substring(0,c),f=a.substring(c+1)),e=Tc(e),w(e)&&(f=w(f)?Tc(f):!0,ta.call(b,e)?H(b[e])?b[e].push(f):b[e]=[b[e],f]:b[e]=f))});return b}function ye(a){var b=[];r(a,function(a,c){H(a)?r(a,function(a){b.push(ba(c,!0)+(!0===a?"":"="+ba(a,!0)))}):b.push(ba(c,!0)+(!0===a?"":"="+ba(a,!0)))});return b.length?b.join("&"):""}function hc(a){return ba(a,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function ba(a, +b){return encodeURIComponent(a).replace(/%40/gi,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,b?"%20":"+")}function ze(a,b){var d,c,e=Qa.length;for(c=0;c protocol indicates an extension, document.location.href does not match."))}function Uc(a,b,d){D(d)||(d={});d=S({strictDi:!1},d);var c=function(){a=x(a);if(a.injector()){var c=a[0]===C.document?"document":za(a);throw pa("btstrpd",c.replace(//,">"));}b=b||[];b.unshift(["$provide",function(b){b.value("$rootElement",a)}]);d.debugInfoEnabled&&b.push(["$compileProvider", +function(a){a.debugInfoEnabled(!0)}]);b.unshift("ng");c=fb(b,d.strictDi);c.invoke(["$rootScope","$rootElement","$compile","$injector",function(a,b,c,d){a.$apply(function(){b.data("$injector",d);c(b)(a)})}]);return c},e=/^NG_ENABLE_DEBUG_INFO!/,f=/^NG_DEFER_BOOTSTRAP!/;C&&e.test(C.name)&&(d.debugInfoEnabled=!0,C.name=C.name.replace(e,""));if(C&&!f.test(C.name))return c();C.name=C.name.replace(f,"");ca.resumeBootstrap=function(a){r(a,function(a){b.push(a)});return c()};B(ca.resumeDeferredBootstrap)&& +ca.resumeDeferredBootstrap()}function Ce(){C.name="NG_ENABLE_DEBUG_INFO!"+C.name;C.location.reload()}function De(a){a=ca.element(a).injector();if(!a)throw pa("test");return a.get("$$testability")}function Vc(a,b){b=b||"_";return a.replace(Ee,function(a,c){return(c?b:"")+a.toLowerCase()})}function Fe(){var a;if(!Wc){var b=qb();(rb=z(b)?C.jQuery:b?C[b]:void 0)&&rb.fn.on?(x=rb,S(rb.fn,{scope:Wa.scope,isolateScope:Wa.isolateScope,controller:Wa.controller,injector:Wa.injector,inheritedData:Wa.inheritedData})): +x=Y;a=x.cleanData;x.cleanData=function(b){for(var c,e=0,f;null!=(f=b[e]);e++)(c=(x._data(f)||{}).events)&&c.$destroy&&x(f).triggerHandler("$destroy");a(b)};ca.element=x;Wc=!0}}function gb(a,b,d){if(!a)throw pa("areq",b||"?",d||"required");return a}function sb(a,b,d){d&&H(a)&&(a=a[a.length-1]);gb(B(a),b,"not a function, got "+(a&&"object"===typeof a?a.constructor.name||"Object":typeof a));return a}function Ja(a,b){if("hasOwnProperty"===a)throw pa("badname",b);}function Ge(a,b,d){if(!b)return a;b=b.split("."); +for(var c,e=a,f=b.length,g=0;g")+c[2];for(c=c[0];c--;)d=d.lastChild;f=db(f,d.childNodes);d=e.firstChild;d.textContent=""}else f.push(b.createTextNode(a));e.textContent="";e.innerHTML="";r(f,function(a){e.appendChild(a)});return e}function Y(a){if(a instanceof Y)return a;var b;A(a)&&(a=U(a),b=!0);if(!(this instanceof Y)){if(b&&"<"!==a.charAt(0))throw nc("nosel");return new Y(a)}if(b){b= +C.document;var d;a=(d=og.exec(a))?[b.createElement(d[1])]:(d=ed(a,b))?d.childNodes:[];oc(this,a)}else B(a)?fd(a):oc(this,a)}function pc(a){return a.cloneNode(!0)}function yb(a,b){!b&&lc(a)&&x.cleanData([a]);a.querySelectorAll&&x.cleanData(a.querySelectorAll("*"))}function gd(a){for(var b in a)return!1;return!0}function hd(a){var b=a.ng339,d=b&&Ka[b],c=d&&d.events,d=d&&d.data;d&&!gd(d)||c&&!gd(c)||(delete Ka[b],a.ng339=void 0)}function id(a,b,d,c){if(w(c))throw nc("offargs");var e=(c=zb(a))&&c.events, +f=c&&c.handle;if(f){if(b){var g=function(b){var c=e[b];w(d)&&cb(c||[],d);w(d)&&c&&0l&&this.remove(n.key);return b}},get:function(a){if(l";b=Fa.firstChild.attributes;var d=b[0];b.removeNamedItem(d.name);d.value=c;a.attributes.setNamedItem(d)}function sa(a,b){try{a.addClass(b)}catch(c){}} +function da(a,b,c,d,e){a instanceof x||(a=x(a));var f=Xa(a,b,a,c,d,e);da.$$addScopeClass(a);var g=null;return function(b,c,d){if(!a)throw $("multilink");gb(b,"scope");e&&e.needsNewScope&&(b=b.$parent.$new());d=d||{};var h=d.parentBoundTranscludeFn,k=d.transcludeControllers;d=d.futureParentElement;h&&h.$$boundTransclude&&(h=h.$$boundTransclude);g||(g=(d=d&&d[0])?"foreignobject"!==ua(d)&&la.call(d).match(/SVG/)?"svg":"html":"html");d="html"!==g?x(ja(g,x("
").append(a).html())):c?Wa.clone.call(a): +a;if(k)for(var l in k)d.data("$"+l+"Controller",k[l].instance);da.$$addScopeInfo(d,b);c&&c(d,b);f&&f(b,d,d,h);c||(a=f=null);return d}}function Xa(a,b,c,d,e,f){function g(a,c,d,e){var f,k,l,m,p,I,t;if(n)for(t=Array(c.length),m=0;mu.priority)break;if(O=u.scope)u.templateUrl||(D(O)?(ba("new/isolated scope",s||t,u,y),s=u):ba("new/isolated scope",s,u,y)),t=t||u;Q=u.name;if(!ma&&(u.replace&&(u.templateUrl||u.template)||u.transclude&&!u.$$tlb)){for(O=sa+1;ma=a[O++];)if(ma.transclude&&!ma.$$tlb||ma.replace&&(ma.templateUrl||ma.template)){Ib=!0;break}ma=!0}!u.templateUrl&&u.controller&&(J=J||T(),ba("'"+Q+"' controller", +J[Q],u,y),J[Q]=u);if(O=u.transclude)if(G=!0,u.$$tlb||(ba("transclusion",L,u,y),L=u),"element"===O)N=!0,n=u.priority,M=y,y=d.$$element=x(da.$$createComment(Q,d[Q])),b=y[0],pa(f,Ha.call(M,0),b),R=Z(Ib,M,e,n,g&&g.name,{nonTlbTranscludeDirective:L});else{var ka=T();if(D(O)){M=C.document.createDocumentFragment();var Xa=T(),F=T();r(O,function(a,b){var c="?"===a.charAt(0);a=c?a.substring(1):a;Xa[a]=b;ka[b]=null;F[b]=c});r(y.contents(),function(a){var b=Xa[wa(ua(a))];b?(F[b]=!0,ka[b]=ka[b]||C.document.createDocumentFragment(), +ka[b].appendChild(a)):M.appendChild(a)});r(F,function(a,b){if(!a)throw $("reqslot",b);});for(var K in ka)ka[K]&&(R=x(ka[K].childNodes),ka[K]=Z(Ib,R,e));M=x(M.childNodes)}else M=x(pc(b)).contents();y.empty();R=Z(Ib,M,e,void 0,void 0,{needsNewScope:u.$$isolateScope||u.$$newScope});R.$$slots=ka}if(u.template)if(P=!0,ba("template",v,u,y),v=u,O=B(u.template)?u.template(y,d):u.template,O=Na(O),u.replace){g=u;M=mc.test(O)?rd(ja(u.templateNamespace,U(O))):[];b=M[0];if(1!==M.length||1!==b.nodeType)throw $("tplrt", +Q,"");pa(f,y,b);A={$attr:{}};O=sc(b,[],A);var Dg=a.splice(sa+1,a.length-(sa+1));(s||t)&&fa(O,s,t);a=a.concat(O).concat(Dg);ga(d,A);A=a.length}else y.html(O);if(u.templateUrl)P=!0,ba("template",v,u,y),v=u,u.replace&&(g=u),p=ha(a.splice(sa,a.length-sa),y,d,f,G&&R,h,k,{controllerDirectives:J,newScopeDirective:t!==u&&t,newIsolateScopeDirective:s,templateDirective:v,nonTlbTranscludeDirective:L}),A=a.length;else if(u.compile)try{q=u.compile(y,d,R);var X=u.$$originalDirective||u;B(q)?m(null,Va(X,q),E,ib): +q&&m(Va(X,q.pre),Va(X,q.post),E,ib)}catch(ca){c(ca,za(y))}u.terminal&&(p.terminal=!0,n=Math.max(n,u.priority))}p.scope=t&&!0===t.scope;p.transcludeOnThisElement=G;p.templateOnThisElement=P;p.transclude=R;l.hasElementTranscludeDirective=N;return p}function W(a,b,c,d){var e;if(A(b)){var f=b.match(l);b=b.substring(f[0].length);var g=f[1]||f[3],f="?"===f[2];"^^"===g?c=c.parent():e=(e=d&&d[b])&&e.instance;if(!e){var h="$"+b+"Controller";e="^^"===g&&c[0]&&9===c[0].nodeType?null:g?c.inheritedData(h):c.data(h)}if(!e&& +!f)throw $("ctreq",b,a);}else if(H(b))for(e=[],g=0,f=b.length;gc.priority)&&-1!==c.restrict.indexOf(e)){k&&(c=ac(c,{$$start:k,$$end:l}));if(!c.$$bindings){var I=m=c,t=c.name,u={isolateScope:null,bindToController:null};D(I.scope)&&(!0===I.bindToController?(u.bindToController=d(I.scope,t,!0),u.isolateScope={}):u.isolateScope=d(I.scope,t,!1));D(I.bindToController)&&(u.bindToController=d(I.bindToController, +t,!0));if(u.bindToController&&!I.controller)throw $("noctrl",t);m=m.$$bindings=u;D(m.isolateScope)&&(c.$$isolateBindings=m.isolateScope)}b.push(c);m=c}}return m}function ca(b){if(f.hasOwnProperty(b))for(var c=a.get(b+"Directive"),d=0,e=c.length;d"+b+"";return c.childNodes[0].childNodes;default:return b}}function oa(a,b){if("srcdoc"===b)return u.HTML;if("src"===b||"ngSrc"===b)return-1===["img","video","audio","source","track"].indexOf(a)?u.RESOURCE_URL:u.MEDIA_URL;if("xlinkHref"===b)return"image"===a?u.MEDIA_URL: +"a"===a?u.URL:u.RESOURCE_URL;if("form"===a&&"action"===b||"base"===a&&"href"===b||"link"===a&&"href"===b)return u.RESOURCE_URL;if("a"===a&&("href"===b||"ngHref"===b))return u.URL}function xa(a,b){var c=b.toLowerCase();return v[a+"|"+c]||v["*|"+c]}function ya(a){return ma(u.valueOf(a),"ng-prop-srcset")}function Ea(a,b,c,d){if(m.test(d))throw $("nodomevents");a=ua(a);var e=xa(a,d),f=Ta;"srcset"!==d||"img"!==a&&"source"!==a?e&&(f=u.getTrusted.bind(u,e)):f=ya;b.push({priority:100,compile:function(a,b){var e= +p(b[c]),g=p(b[c],function(a){return u.valueOf(a)});return{pre:function(a,b){function c(){var g=e(a);b[0][d]=f(g)}c();a.$watch(g,c)}}}})}function Ia(a,c,d,e,f){var g=ua(a),k=oa(g,e),l=h[e]||f,p=b(d,!f,k,l);if(p){if("multiple"===e&&"select"===g)throw $("selmulti",za(a));if(m.test(e))throw $("nodomevents");c.push({priority:100,compile:function(){return{pre:function(a,c,f){c=f.$$observers||(f.$$observers=T());var g=f[e];g!==d&&(p=g&&b(g,!0,k,l),d=g);p&&(f[e]=p(a),(c[e]||(c[e]=[])).$$inter=!0,(f.$$observers&& +f.$$observers[e].$$scope||a).$watch(p,function(a,b){"class"===e&&a!==b?f.$updateClass(a,b):f.$set(e,a)}))}}}})}}function pa(a,b,c){var d=b[0],e=b.length,f=d.parentNode,g,h;if(a)for(g=0,h=a.length;g=b)return a;for(;b--;){var d=a[b];(8===d.nodeType||d.nodeType===Pa&&""===d.nodeValue.trim())&&Fg.call(a,b,1)}return a}function Bg(a,b){if(b&&A(b))return b;if(A(a)){var d=ud.exec(a);if(d)return d[3]}}function Ff(){var a={};this.has=function(b){return a.hasOwnProperty(b)};this.register=function(b,d){Ja(b, +"controller");D(b)?S(a,b):a[b]=d};this.$get=["$injector",function(b){function d(a,b,d,g){if(!a||!D(a.$scope))throw F("$controller")("noscp",g,b);a.$scope[b]=d}return function(c,e,f,g){var k,h,l;f=!0===f;g&&A(g)&&(l=g);if(A(c)){g=c.match(ud);if(!g)throw vd("ctrlfmt",c);h=g[1];l=l||g[3];c=a.hasOwnProperty(h)?a[h]:Ge(e.$scope,h,!0);if(!c)throw vd("ctrlreg",h);sb(c,h,!0)}if(f)return f=(H(c)?c[c.length-1]:c).prototype,k=Object.create(f||null),l&&d(e,l,k,h||c.name),S(function(){var a=b.invoke(c,k,e,h); +a!==k&&(D(a)||B(a))&&(k=a,l&&d(e,l,k,h||c.name));return k},{instance:k,identifier:l});k=b.instantiate(c,e,h);l&&d(e,l,k,h||c.name);return k}}]}function Gf(){this.$get=["$window",function(a){return x(a.document)}]}function Hf(){this.$get=["$document","$rootScope",function(a,b){function d(){e=c.hidden}var c=a[0],e=c&&c.hidden;a.on("visibilitychange",d);b.$on("$destroy",function(){a.off("visibilitychange",d)});return function(){return e}}]}function If(){this.$get=["$log",function(a){return function(b, +d){a.error.apply(a,arguments)}}]}function uc(a){return D(a)?ha(a)?a.toISOString():eb(a):a}function Of(){this.$get=function(){return function(a){if(!a)return"";var b=[];Oc(a,function(a,c){null===a||z(a)||B(a)||(H(a)?r(a,function(a){b.push(ba(c)+"="+ba(uc(a)))}):b.push(ba(c)+"="+ba(uc(a))))});return b.join("&")}}}function Pf(){this.$get=function(){return function(a){function b(a,e,f){H(a)?r(a,function(a,c){b(a,e+"["+(D(a)?c:"")+"]")}):D(a)&&!ha(a)?Oc(a,function(a,c){b(a,e+(f?"":"[")+c+(f?"":"]"))}): +(B(a)&&(a=a()),d.push(ba(e)+"="+(null==a?"":ba(uc(a)))))}if(!a)return"";var d=[];b(a,"",!0);return d.join("&")}}}function vc(a,b){if(A(a)){var d=a.replace(Gg,"").trim();if(d){var c=b("Content-Type"),c=c&&0===c.indexOf(wd),e;(e=c)||(e=(e=d.match(Hg))&&Ig[e[0]].test(d));if(e)try{a=Rc(d)}catch(f){if(!c)return a;throw Kb("baddata",a,f);}}}return a}function xd(a){var b=T(),d;A(a)?r(a.split("\n"),function(a){d=a.indexOf(":");var e=K(U(a.substr(0,d)));a=U(a.substr(d+1));e&&(b[e]=b[e]?b[e]+", "+a:a)}):D(a)&& +r(a,function(a,d){var f=K(d),g=U(a);f&&(b[f]=b[f]?b[f]+", "+g:g)});return b}function yd(a){var b;return function(d){b||(b=xd(a));return d?(d=b[K(d)],void 0===d&&(d=null),d):b}}function zd(a,b,d,c){if(B(c))return c(a,b,d);r(c,function(c){a=c(a,b,d)});return a}function Nf(){var a=this.defaults={transformResponse:[vc],transformRequest:[function(a){return D(a)&&"[object File]"!==la.call(a)&&"[object Blob]"!==la.call(a)&&"[object FormData]"!==la.call(a)?eb(a):a}],headers:{common:{Accept:"application/json, text/plain, */*"}, +post:ja(wc),put:ja(wc),patch:ja(wc)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",paramSerializer:"$httpParamSerializer",jsonpCallbackParam:"callback"},b=!1;this.useApplyAsync=function(a){return w(a)?(b=!!a,this):b};var d=this.interceptors=[],c=this.xsrfWhitelistedOrigins=[];this.$get=["$browser","$httpBackend","$$cookieReader","$cacheFactory","$rootScope","$q","$injector","$sce",function(e,f,g,k,h,l,m,p){function n(b){function c(a,b){for(var d=0,e=b.length;da?b:l.reject(b)}if(!D(b))throw F("$http")("badreq",b);if(!A(p.valueOf(b.url)))throw F("$http")("badreq",b.url);var g=S({method:"get",transformRequest:a.transformRequest,transformResponse:a.transformResponse,paramSerializer:a.paramSerializer,jsonpCallbackParam:a.jsonpCallbackParam}, +b);g.headers=function(b){var c=a.headers,e=S({},b.headers),f,g,h,c=S({},c.common,c[K(b.method)]);a:for(f in c){g=K(f);for(h in e)if(K(h)===g)continue a;e[f]=c[f]}return d(e,ja(b))}(b);g.method=ub(g.method);g.paramSerializer=A(g.paramSerializer)?m.get(g.paramSerializer):g.paramSerializer;e.$$incOutstandingRequestCount("$http");var h=[],k=[];b=l.resolve(g);r(v,function(a){(a.request||a.requestError)&&h.unshift(a.request,a.requestError);(a.response||a.responseError)&&k.push(a.response,a.responseError)}); +b=c(b,h);b=b.then(function(b){var c=b.headers,d=zd(b.data,yd(c),void 0,b.transformRequest);z(d)&&r(c,function(a,b){"content-type"===K(b)&&delete c[b]});z(b.withCredentials)&&!z(a.withCredentials)&&(b.withCredentials=a.withCredentials);return s(b,d).then(f,f)});b=c(b,k);return b=b.finally(function(){e.$$completeOutstandingRequest(E,"$http")})}function s(c,d){function e(a){if(a){var c={};r(a,function(a,d){c[d]=function(c){function d(){a(c)}b?h.$applyAsync(d):h.$$phase?d():h.$apply(d)}});return c}}function k(a, +c,d,e,f){function g(){m(c,a,d,e,f)}R&&(200<=a&&300>a?R.put(O,[a,c,xd(d),e,f]):R.remove(O));b?h.$applyAsync(g):(g(),h.$$phase||h.$apply())}function m(a,b,d,e,f){b=-1<=b?b:0;(200<=b&&300>b?L.resolve:L.reject)({data:a,status:b,headers:yd(d),config:c,statusText:e,xhrStatus:f})}function s(a){m(a.data,a.status,ja(a.headers()),a.statusText,a.xhrStatus)}function v(){var a=n.pendingRequests.indexOf(c);-1!==a&&n.pendingRequests.splice(a,1)}var L=l.defer(),u=L.promise,R,q,ma=c.headers,x="jsonp"===K(c.method), +O=c.url;x?O=p.getTrustedResourceUrl(O):A(O)||(O=p.valueOf(O));O=G(O,c.paramSerializer(c.params));x&&(O=t(O,c.jsonpCallbackParam));n.pendingRequests.push(c);u.then(v,v);!c.cache&&!a.cache||!1===c.cache||"GET"!==c.method&&"JSONP"!==c.method||(R=D(c.cache)?c.cache:D(a.cache)?a.cache:N);R&&(q=R.get(O),w(q)?q&&B(q.then)?q.then(s,s):H(q)?m(q[1],q[0],ja(q[2]),q[3],q[4]):m(q,200,{},"OK","complete"):R.put(O,u));z(q)&&((q=jc(c.url)?g()[c.xsrfCookieName||a.xsrfCookieName]:void 0)&&(ma[c.xsrfHeaderName||a.xsrfHeaderName]= +q),f(c.method,O,d,k,ma,c.timeout,c.withCredentials,c.responseType,e(c.eventHandlers),e(c.uploadEventHandlers)));return u}function G(a,b){0=h&&(t.resolve(s),f(r.$$intervalId));G||c.$apply()},k,t,G);return r}}}]}function Ad(a,b){var d=ga(a);b.$$protocol=d.protocol;b.$$host=d.hostname;b.$$port=fa(d.port)||Mg[d.protocol]||null}function Bd(a,b,d){if(Ng.test(a))throw jb("badpath",a);var c="/"!==a.charAt(0);c&&(a="/"+a);a=ga(a);for(var c=(c&&"/"===a.pathname.charAt(0)?a.pathname.substring(1):a.pathname).split("/"),e=c.length;e--;)c[e]=decodeURIComponent(c[e]),d&&(c[e]=c[e].replace(/\//g,"%2F"));d=c.join("/");b.$$path=d;b.$$search=gc(a.search); +b.$$hash=decodeURIComponent(a.hash);b.$$path&&"/"!==b.$$path.charAt(0)&&(b.$$path="/"+b.$$path)}function xc(a,b){return a.slice(0,b.length)===b}function xa(a,b){if(xc(b,a))return b.substr(a.length)}function Da(a){var b=a.indexOf("#");return-1===b?a:a.substr(0,b)}function yc(a,b,d){this.$$html5=!0;d=d||"";Ad(a,this);this.$$parse=function(a){var d=xa(b,a);if(!A(d))throw jb("ipthprfx",a,b);Bd(d,this,!0);this.$$path||(this.$$path="/");this.$$compose()};this.$$normalizeUrl=function(a){return b+a.substr(1)}; +this.$$parseLinkUrl=function(c,e){if(e&&"#"===e[0])return this.hash(e.slice(1)),!0;var f,g;w(f=xa(a,c))?(g=f,g=d&&w(f=xa(d,f))?b+(xa("/",f)||f):a+g):w(f=xa(b,c))?g=b+f:b===c+"/"&&(g=b);g&&this.$$parse(g);return!!g}}function zc(a,b,d){Ad(a,this);this.$$parse=function(c){var e=xa(a,c)||xa(b,c),f;z(e)||"#"!==e.charAt(0)?this.$$html5?f=e:(f="",z(e)&&(a=c,this.replace())):(f=xa(d,e),z(f)&&(f=e));Bd(f,this,!1);c=this.$$path;var e=a,g=/^\/[A-Z]:(\/.*)/;xc(f,e)&&(f=f.replace(e,""));g.exec(f)||(c=(f=g.exec(c))? +f[1]:c);this.$$path=c;this.$$compose()};this.$$normalizeUrl=function(b){return a+(b?d+b:"")};this.$$parseLinkUrl=function(b,d){return Da(a)===Da(b)?(this.$$parse(b),!0):!1}}function Cd(a,b,d){this.$$html5=!0;zc.apply(this,arguments);this.$$parseLinkUrl=function(c,e){if(e&&"#"===e[0])return this.hash(e.slice(1)),!0;var f,g;a===Da(c)?f=c:(g=xa(b,c))?f=a+d+g:b===c+"/"&&(f=b);f&&this.$$parse(f);return!!f};this.$$normalizeUrl=function(b){return a+d+b}}function Lb(a){return function(){return this[a]}}function Dd(a, +b){return function(d){if(z(d))return this[a];this[a]=b(d);this.$$compose();return this}}function Tf(){var a="!",b={enabled:!1,requireBase:!0,rewriteLinks:!0};this.hashPrefix=function(b){return w(b)?(a=b,this):a};this.html5Mode=function(a){if(Ga(a))return b.enabled=a,this;if(D(a)){Ga(a.enabled)&&(b.enabled=a.enabled);Ga(a.requireBase)&&(b.requireBase=a.requireBase);if(Ga(a.rewriteLinks)||A(a.rewriteLinks))b.rewriteLinks=a.rewriteLinks;return this}return b};this.$get=["$rootScope","$browser","$sniffer", +"$rootElement","$window",function(d,c,e,f,g){function k(a,b){return a===b||ga(a).href===ga(b).href}function h(a,b,d){var e=m.url(),f=m.$$state;try{c.url(a,b,d),m.$$state=c.state()}catch(g){throw m.url(e),m.$$state=f,g;}}function l(a,b){d.$broadcast("$locationChangeSuccess",m.absUrl(),a,m.$$state,b)}var m,p;p=c.baseHref();var n=c.url(),s;if(b.enabled){if(!p&&b.requireBase)throw jb("nobase");s=n.substring(0,n.indexOf("/",n.indexOf("//")+2))+(p||"/");p=e.history?yc:Cd}else s=Da(n),p=zc;var r=s.substr(0, +Da(s).lastIndexOf("/")+1);m=new p(s,r,"#"+a);m.$$parseLinkUrl(n,n);m.$$state=c.state();var t=/^\s*(javascript|mailto):/i;f.on("click",function(a){var e=b.rewriteLinks;if(e&&!a.ctrlKey&&!a.metaKey&&!a.shiftKey&&2!==a.which&&2!==a.button){for(var g=x(a.target);"a"!==ua(g[0]);)if(g[0]===f[0]||!(g=g.parent())[0])return;if(!A(e)||!z(g.attr(e))){var e=g.prop("href"),h=g.attr("href")||g.attr("xlink:href");D(e)&&"[object SVGAnimatedString]"===e.toString()&&(e=ga(e.animVal).href);t.test(e)||!e||g.attr("target")|| +a.isDefaultPrevented()||!m.$$parseLinkUrl(e,h)||(a.preventDefault(),m.absUrl()!==c.url()&&d.$apply())}}});m.absUrl()!==n&&c.url(m.absUrl(),!0);var N=!0;c.onUrlChange(function(a,b){xc(a,r)?(d.$evalAsync(function(){var c=m.absUrl(),e=m.$$state,f;m.$$parse(a);m.$$state=b;f=d.$broadcast("$locationChangeStart",a,c,b,e).defaultPrevented;m.absUrl()===a&&(f?(m.$$parse(c),m.$$state=e,h(c,!1,e)):(N=!1,l(c,e)))}),d.$$phase||d.$digest()):g.location.href=a});d.$watch(function(){if(N||m.$$urlUpdatedByLocation){m.$$urlUpdatedByLocation= +!1;var a=c.url(),b=m.absUrl(),f=c.state(),g=m.$$replace,n=!k(a,b)||m.$$html5&&e.history&&f!==m.$$state;if(N||n)N=!1,d.$evalAsync(function(){var b=m.absUrl(),c=d.$broadcast("$locationChangeStart",b,a,m.$$state,f).defaultPrevented;m.absUrl()===b&&(c?(m.$$parse(a),m.$$state=f):(n&&h(b,g,f===m.$$state?null:m.$$state),l(a,f)))})}m.$$replace=!1});return m}]}function Uf(){var a=!0,b=this;this.debugEnabled=function(b){return w(b)?(a=b,this):a};this.$get=["$window",function(d){function c(a){cc(a)&&(a.stack&& +f?a=a.message&&-1===a.stack.indexOf(a.message)?"Error: "+a.message+"\n"+a.stack:a.stack:a.sourceURL&&(a=a.message+"\n"+a.sourceURL+":"+a.line));return a}function e(a){var b=d.console||{},e=b[a]||b.log||E;return function(){var a=[];r(arguments,function(b){a.push(c(b))});return Function.prototype.apply.call(e,b,a)}}var f=Ca||/\bEdge\//.test(d.navigator&&d.navigator.userAgent);return{log:e("log"),info:e("info"),warn:e("warn"),error:e("error"),debug:function(){var c=e("debug");return function(){a&&c.apply(b, +arguments)}}()}}]}function Og(a){return a+""}function Pg(a,b){return"undefined"!==typeof a?a:b}function Ed(a,b){return"undefined"===typeof a?b:"undefined"===typeof b?a:a+b}function Qg(a,b){switch(a.type){case q.MemberExpression:if(a.computed)return!1;break;case q.UnaryExpression:return 1;case q.BinaryExpression:return"+"!==a.operator?1:!1;case q.CallExpression:return!1}return void 0===b?Fd:b}function Z(a,b,d){var c,e,f=a.isPure=Qg(a,d);switch(a.type){case q.Program:c=!0;r(a.body,function(a){Z(a.expression, +b,f);c=c&&a.expression.constant});a.constant=c;break;case q.Literal:a.constant=!0;a.toWatch=[];break;case q.UnaryExpression:Z(a.argument,b,f);a.constant=a.argument.constant;a.toWatch=a.argument.toWatch;break;case q.BinaryExpression:Z(a.left,b,f);Z(a.right,b,f);a.constant=a.left.constant&&a.right.constant;a.toWatch=a.left.toWatch.concat(a.right.toWatch);break;case q.LogicalExpression:Z(a.left,b,f);Z(a.right,b,f);a.constant=a.left.constant&&a.right.constant;a.toWatch=a.constant?[]:[a];break;case q.ConditionalExpression:Z(a.test, +b,f);Z(a.alternate,b,f);Z(a.consequent,b,f);a.constant=a.test.constant&&a.alternate.constant&&a.consequent.constant;a.toWatch=a.constant?[]:[a];break;case q.Identifier:a.constant=!1;a.toWatch=[a];break;case q.MemberExpression:Z(a.object,b,f);a.computed&&Z(a.property,b,f);a.constant=a.object.constant&&(!a.computed||a.property.constant);a.toWatch=a.constant?[]:[a];break;case q.CallExpression:c=d=a.filter?!b(a.callee.name).$stateful:!1;e=[];r(a.arguments,function(a){Z(a,b,f);c=c&&a.constant;e.push.apply(e, +a.toWatch)});a.constant=c;a.toWatch=d?e:[a];break;case q.AssignmentExpression:Z(a.left,b,f);Z(a.right,b,f);a.constant=a.left.constant&&a.right.constant;a.toWatch=[a];break;case q.ArrayExpression:c=!0;e=[];r(a.elements,function(a){Z(a,b,f);c=c&&a.constant;e.push.apply(e,a.toWatch)});a.constant=c;a.toWatch=e;break;case q.ObjectExpression:c=!0;e=[];r(a.properties,function(a){Z(a.value,b,f);c=c&&a.value.constant;e.push.apply(e,a.value.toWatch);a.computed&&(Z(a.key,b,!1),c=c&&a.key.constant,e.push.apply(e, +a.key.toWatch))});a.constant=c;a.toWatch=e;break;case q.ThisExpression:a.constant=!1;a.toWatch=[];break;case q.LocalsExpression:a.constant=!1,a.toWatch=[]}}function Gd(a){if(1===a.length){a=a[0].expression;var b=a.toWatch;return 1!==b.length?b:b[0]!==a?b:void 0}}function Hd(a){return a.type===q.Identifier||a.type===q.MemberExpression}function Id(a){if(1===a.body.length&&Hd(a.body[0].expression))return{type:q.AssignmentExpression,left:a.body[0].expression,right:{type:q.NGValueParameter},operator:"="}} +function Jd(a){this.$filter=a}function Kd(a){this.$filter=a}function Mb(a,b,d){this.ast=new q(a,d);this.astCompiler=d.csp?new Kd(b):new Jd(b)}function Ac(a){return B(a.valueOf)?a.valueOf():Rg.call(a)}function Vf(){var a=T(),b={"true":!0,"false":!1,"null":null,undefined:void 0},d,c;this.addLiteral=function(a,c){b[a]=c};this.setIdentifierFns=function(a,b){d=a;c=b;return this};this.$get=["$filter",function(e){function f(b,c){var d,f;switch(typeof b){case "string":return f=b=b.trim(),d=a[f],d||(d=new Nb(G), +d=(new Mb(d,e,G)).parse(b),a[f]=p(d)),s(d,c);case "function":return s(b,c);default:return s(E,c)}}function g(a,b,c){return null==a||null==b?a===b:"object"!==typeof a||(a=Ac(a),"object"!==typeof a||c)?a===b||a!==a&&b!==b:!1}function k(a,b,c,d,e){var f=d.inputs,h;if(1===f.length){var k=g,f=f[0];return a.$watch(function(a){var b=f(a);g(b,k,f.isPure)||(h=d(a,void 0,void 0,[b]),k=b&&Ac(b));return h},b,c,e)}for(var l=[],m=[],n=0,p=f.length;n=c.$$state.status&&e&&e.length&&a(function(){for(var a,c,f=0,g=e.length;fa)for(b in l++,f)ta.call(e,b)||(t--,delete f[b])}else f!==e&&(f=e,l++);return l}}c.$$pure=g(a).literal;c.$stateful=!c.$$pure;var d=this,e,f,h,k=1r&&(z=4-r,N[z]|| +(N[z]=[]),N[z].push({msg:B(a.exp)?"fn: "+(a.exp.name||a.exp.toString()):a.exp,newVal:g,oldVal:h}));else if(a===c){s=!1;break a}}catch(E){f(E)}if(!(n=!q.$$suspended&&q.$$watchersCount&&q.$$childHead||q!==y&&q.$$nextSibling))for(;q!==y&&!(n=q.$$nextSibling);)q=q.$parent}while(q=n);if((s||w.length)&&!r--)throw v.$$phase=null,d("infdig",b,N);}while(s||w.length);for(v.$$phase=null;JCa)throw Ea("iequirks");var c=ja(V);c.isEnabled=function(){return a}; +c.trustAs=d.trustAs;c.getTrusted=d.getTrusted;c.valueOf=d.valueOf;a||(c.trustAs=c.getTrusted=function(a,b){return b},c.valueOf=Ta);c.parseAs=function(a,d){var e=b(d);return e.literal&&e.constant?e:b(d,function(b){return c.getTrusted(a,b)})};var e=c.parseAs,f=c.getTrusted,g=c.trustAs;r(V,function(a,b){var d=K(b);c[("parse_as_"+d).replace(Cc,wb)]=function(b){return e(a,b)};c[("get_trusted_"+d).replace(Cc,wb)]=function(b){return f(a,b)};c[("trust_as_"+d).replace(Cc,wb)]=function(b){return g(a,b)}}); +return c}]}function ag(){this.$get=["$window","$document",function(a,b){var d={},c=!((!a.nw||!a.nw.process)&&a.chrome&&(a.chrome.app&&a.chrome.app.runtime||!a.chrome.app&&a.chrome.runtime&&a.chrome.runtime.id))&&a.history&&a.history.pushState,e=fa((/android (\d+)/.exec(K((a.navigator||{}).userAgent))||[])[1]),f=/Boxee/i.test((a.navigator||{}).userAgent),g=b[0]||{},k=g.body&&g.body.style,h=!1,l=!1;k&&(h=!!("transition"in k||"webkitTransition"in k),l=!!("animation"in k||"webkitAnimation"in k));return{history:!(!c|| +4>e||f),hasEvent:function(a){if("input"===a&&Ca)return!1;if(z(d[a])){var b=g.createElement("div");d[a]="on"+a in b}return d[a]},csp:Aa(),transitions:h,animations:l,android:e}}]}function bg(){this.$get=ia(function(a){return new Tg(a)})}function Tg(a){function b(){var a=e.pop();return a&&a.cb}function d(a){for(var b=e.length-1;0<=b;--b){var c=e[b];if(c.type===a)return e.splice(b,1),c.cb}}var c={},e=[],f=this.ALL_TASKS_TYPE="$$all$$",g=this.DEFAULT_TASK_TYPE="$$default$$";this.completeTask=function(e, +h){h=h||g;try{e()}finally{var l;l=h||g;c[l]&&(c[l]--,c[f]--);l=c[h];var m=c[f];if(!m||!l)for(l=m?d:b;m=l(h);)try{m()}catch(p){a.error(p)}}};this.incTaskCount=function(a){a=a||g;c[a]=(c[a]||0)+1;c[f]=(c[f]||0)+1};this.notifyWhenNoPendingTasks=function(a,b){b=b||f;c[b]?e.push({type:b,cb:a}):a()}}function dg(){var a;this.httpOptions=function(b){return b?(a=b,this):a};this.$get=["$exceptionHandler","$templateCache","$http","$q","$sce",function(b,d,c,e,f){function g(k,h){g.totalPendingRequests++;if(!A(k)|| +z(d.get(k)))k=f.getTrustedResourceUrl(k);var l=c.defaults&&c.defaults.transformResponse;H(l)?l=l.filter(function(a){return a!==vc}):l===vc&&(l=null);return c.get(k,S({cache:d,transformResponse:l},a)).finally(function(){g.totalPendingRequests--}).then(function(a){return d.put(k,a.data)},function(a){h||(a=Ug("tpload",k,a.status,a.statusText),b(a));return e.reject(a)})}g.totalPendingRequests=0;return g}]}function eg(){this.$get=["$rootScope","$browser","$location",function(a,b,d){return{findBindings:function(a, +b,d){a=a.getElementsByClassName("ng-binding");var g=[];r(a,function(a){var c=ca.element(a).data("$binding");c&&r(c,function(c){d?(new RegExp("(^|\\s)"+Md(b)+"(\\s|\\||$)")).test(c)&&g.push(a):-1!==c.indexOf(b)&&g.push(a)})});return g},findModels:function(a,b,d){for(var g=["ng-","data-ng-","ng\\:"],k=0;kc&&(c=e),c+=+a.slice(e+1),a=a.substring(0,e)):0>c&&(c=a.length);for(e=0;a.charAt(e)===Ec;e++);if(e===(g=a.length))d=[0],c=1;else{for(g--;a.charAt(g)===Ec;)g--;c-=e;d=[];for(f=0;e<=g;e++,f++)d[f]=+a.charAt(e)}c>Wd&&(d=d.splice(0,Wd-1),b=c-1,c=1);return{d:d,e:b,i:c}}function dh(a,b,d,c){var e=a.d,f=e.length-a.i;b=z(b)?Math.min(Math.max(d,f),c):+b;d=b+a.i;c=e[d];if(0d-1){for(c=0;c>d;c--)e.unshift(0),a.i++;e.unshift(1);a.i++}else e[d-1]++;for(;fk;)h.unshift(0),k++;0=b.lgSize&&k.unshift(h.splice(-b.lgSize,h.length).join(""));h.length>b.gSize;)k.unshift(h.splice(-b.gSize,h.length).join(""));h.length&&k.unshift(h.join(""));h=k.join(d);f.length&&(h+=c+f.join(""));e&&(h+="e+"+e)}return 0>a&&!g?b.negPre+h+b.negSuf:b.posPre+h+b.posSuf}function Ob(a,b,d,c){var e="";if(0>a||c&&0>=a)c?a=-a+1:(a=-a,e="-");for(a=""+a;a.length-d)f+=d;0===f&&-12===d&&(f=12);return Ob(f,b,c,e)}}function kb(a,b,d){return function(c,e){var f=c["get"+a](),g=ub((d?"STANDALONE":"")+(b?"SHORT":"")+a);return e[g][f]}}function Xd(a){var b=(new Date(a,0,1)).getDay();return new Date(a,0,(4>=b?5:12)-b)}function Yd(a){return function(b){var d=Xd(b.getFullYear());b=+new Date(b.getFullYear(),b.getMonth(),b.getDate()+(4-b.getDay()))-+d;b=1+Math.round(b/6048E5);return Ob(b,a)}}function Fc(a,b){return 0>= +a.getFullYear()?b.ERAS[0]:b.ERAS[1]}function Rd(a){function b(a){var b;if(b=a.match(d)){a=new Date(0);var f=0,g=0,k=b[8]?a.setUTCFullYear:a.setFullYear,h=b[8]?a.setUTCHours:a.setHours;b[9]&&(f=fa(b[9]+b[10]),g=fa(b[9]+b[11]));k.call(a,fa(b[1]),fa(b[2])-1,fa(b[3]));f=fa(b[4]||0)-f;g=fa(b[5]||0)-g;k=fa(b[6]||0);b=Math.round(1E3*parseFloat("0."+(b[7]||0)));h.call(a,f,g,k,b)}return a}var d=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/;return function(c, +d,f){var g="",k=[],h,l;d=d||"mediumDate";d=a.DATETIME_FORMATS[d]||d;A(c)&&(c=eh.test(c)?fa(c):b(c));W(c)&&(c=new Date(c));if(!ha(c)||!isFinite(c.getTime()))return c;for(;d;)(l=fh.exec(d))?(k=db(k,l,1),d=k.pop()):(k.push(d),d=null);var m=c.getTimezoneOffset();f&&(m=ec(f,m),c=fc(c,f,!0));r(k,function(b){h=gh[b];g+=h?h(c,a.DATETIME_FORMATS,m):"''"===b?"'":b.replace(/(^'|'$)/g,"").replace(/''/g,"'")});return g}}function Yg(){return function(a,b){z(b)&&(b=2);return eb(a,b)}}function Zg(){return function(a, +b,d){b=Infinity===Math.abs(Number(b))?Number(b):fa(b);if(X(b))return a;W(a)&&(a=a.toString());if(!ya(a))return a;d=!d||isNaN(d)?0:fa(d);d=0>d?Math.max(0,a.length+d):d;return 0<=b?Gc(a,d,d+b):0===d?Gc(a,b,a.length):Gc(a,Math.max(0,d+b),d)}}function Gc(a,b,d){return A(a)?a.slice(b,d):Ha.call(a,b,d)}function Td(a){function b(b){return b.map(function(b){var c=1,d=Ta;if(B(b))d=b;else if(A(b)){if("+"===b.charAt(0)||"-"===b.charAt(0))c="-"===b.charAt(0)?-1:1,b=b.substring(1);if(""!==b&&(d=a(b),d.constant))var e= +d(),d=function(a){return a[e]}}return{get:d,descending:c}})}function d(a){switch(typeof a){case "number":case "boolean":case "string":return!0;default:return!1}}function c(a,b){var c=0,d=a.type,h=b.type;if(d===h){var h=a.value,l=b.value;"string"===d?(h=h.toLowerCase(),l=l.toLowerCase()):"object"===d&&(D(h)&&(h=a.index),D(l)&&(l=b.index));h!==l&&(c=hb||37<=b&&40>=b||m(a,this,this.value)});if(e.hasEvent("paste"))b.on("paste cut drop",m)}b.on("change",l);if(ce[g]&&c.$$hasNativeValidators&&g===d.type)b.on("keydown wheel mousedown",function(a){if(!h){var b=this.validity, +c=b.badInput,d=b.typeMismatch;h=f.defer(function(){h=null;b.badInput===c&&b.typeMismatch===d||l(a)})}});c.$render=function(){var a=c.$isEmpty(c.$viewValue)?"":c.$viewValue;b.val()!==a&&b.val(a)}}function Qb(a,b){return function(d,c){var e,f;if(ha(d))return d;if(A(d)){'"'===d.charAt(0)&&'"'===d.charAt(d.length-1)&&(d=d.substring(1,d.length-1));if(hh.test(d))return new Date(d);a.lastIndex=0;if(e=a.exec(d))return e.shift(),f=c?{yyyy:c.getFullYear(),MM:c.getMonth()+1,dd:c.getDate(),HH:c.getHours(),mm:c.getMinutes(), +ss:c.getSeconds(),sss:c.getMilliseconds()/1E3}:{yyyy:1970,MM:1,dd:1,HH:0,mm:0,ss:0,sss:0},r(e,function(a,c){cf.yyyy&&e.setFullYear(f.yyyy),e}return NaN}}function nb(a,b,d,c){return function(e,f,g,k,h,l,m,p){function n(a){return a&&!(a.getTime&&a.getTime()!==a.getTime())}function s(a){return w(a)&&!ha(a)?r(a)||void 0:a}function r(a,b){var c=k.$options.getOption("timezone");v&&v!==c&&(b=Sc(b,ec(v)));var e=d(a, +b);!isNaN(e)&&c&&(e=fc(e,c));return e}Ic(e,f,g,k,a);Sa(e,f,g,k,h,l);var t="time"===a||"datetimelocal"===a,q,v;k.$parsers.push(function(c){if(k.$isEmpty(c))return null;if(b.test(c))return r(c,q);k.$$parserName=a});k.$formatters.push(function(a){if(a&&!ha(a))throw ob("datefmt",a);if(n(a)){q=a;var b=k.$options.getOption("timezone");b&&(v=b,q=fc(q,b,!0));var d=c;t&&A(k.$options.getOption("timeSecondsFormat"))&&(d=c.replace("ss.sss",k.$options.getOption("timeSecondsFormat")).replace(/:$/,""));a=m("date")(a, +d,b);t&&k.$options.getOption("timeStripZeroSeconds")&&(a=a.replace(/(?::00)?(?:\.000)?$/,""));return a}v=q=null;return""});if(w(g.min)||g.ngMin){var x=g.min||p(g.ngMin)(e),B=s(x);k.$validators.min=function(a){return!n(a)||z(B)||d(a)>=B};g.$observe("min",function(a){a!==x&&(B=s(a),x=a,k.$validate())})}if(w(g.max)||g.ngMax){var y=g.max||p(g.ngMax)(e),J=s(y);k.$validators.max=function(a){return!n(a)||z(J)||d(a)<=J};g.$observe("max",function(a){a!==y&&(J=s(a),y=a,k.$validate())})}}}function Ic(a,b,d, +c,e){(c.$$hasNativeValidators=D(b[0].validity))&&c.$parsers.push(function(a){var d=b.prop("validity")||{};if(d.badInput||d.typeMismatch)c.$$parserName=e;else return a})}function de(a){a.$parsers.push(function(b){if(a.$isEmpty(b))return null;if(ih.test(b))return parseFloat(b);a.$$parserName="number"});a.$formatters.push(function(b){if(!a.$isEmpty(b)){if(!W(b))throw ob("numfmt",b);b=b.toString()}return b})}function na(a){w(a)&&!W(a)&&(a=parseFloat(a));return X(a)?void 0:a}function Jc(a){var b=a.toString(), +d=b.indexOf(".");return-1===d?-1a&&(a=/e-(\d+)$/.exec(b))?Number(a[1]):0:b.length-d-1}function ee(a,b,d){a=Number(a);var c=(a|0)!==a,e=(b|0)!==b,f=(d|0)!==d;if(c||e||f){var g=c?Jc(a):0,k=e?Jc(b):0,h=f?Jc(d):0,g=Math.max(g,k,h),g=Math.pow(10,g);a*=g;b*=g;d*=g;c&&(a=Math.round(a));e&&(b=Math.round(b));f&&(d=Math.round(d))}return 0===(a-b)%d}function fe(a,b,d,c,e){if(w(c)){a=a(c);if(!a.constant)throw ob("constexpr",d,c);return a(b)}return e}function Kc(a,b){function d(a,b){if(!a||!a.length)return[]; +if(!b||!b.length)return a;var c=[],d=0;a:for(;d(?:<\/\1>|)$/,mc=/<|&#?\w+;/,mg=/<([\w:-]+)/,ng=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,oa={option:[1,'"],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"", +"
"],_default:[0,"",""]};oa.optgroup=oa.option;oa.tbody=oa.tfoot=oa.colgroup=oa.caption=oa.thead;oa.th=oa.td;var ug=C.Node.prototype.contains||function(a){return!!(this.compareDocumentPosition(a)&16)},Wa=Y.prototype={ready:fd,toString:function(){var a=[];r(this,function(b){a.push(""+b)});return"["+a.join(", ")+"]"},eq:function(a){return 0<=a?x(this[a]):x(this[this.length+a])},length:0,push:kh,sort:[].sort,splice:[].splice},Gb={};r("multiple selected checked disabled readOnly required open".split(" "), +function(a){Gb[K(a)]=a});var md={};r("input select option textarea button form details".split(" "),function(a){md[a]=!0});var td={ngMinlength:"minlength",ngMaxlength:"maxlength",ngMin:"min",ngMax:"max",ngPattern:"pattern",ngStep:"step"};r({data:rc,removeData:qc,hasData:function(a){for(var b in Ka[a.ng339])return!0;return!1},cleanData:function(a){for(var b=0,d=a.length;b/,xg=/^[^(]*\(\s*([^)]*)\)/m,nh=/,/,oh=/^\s*(_?)(\S+?)\1\s*$/,vg=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg,Ba=F("$injector"); +fb.$$annotate=function(a,b,d){var c;if("function"===typeof a){if(!(c=a.$inject)){c=[];if(a.length){if(b)throw A(d)&&d||(d=a.name||yg(a)),Ba("strictdi",d);b=od(a);r(b[1].split(nh),function(a){a.replace(oh,function(a,b,d){c.push(d)})})}a.$inject=c}}else H(a)?(b=a.length-1,sb(a[b],"fn"),c=a.slice(0,b)):sb(a,"fn",!0);return c};var je=F("$animate"),zf=function(){this.$get=E},Af=function(){var a=new Hb,b=[];this.$get=["$$AnimateRunner","$rootScope",function(d,c){function e(a,b,c){var d=!1;b&&(b=A(b)?b.split(" "): +H(b)?b:[],r(b,function(b){b&&(d=!0,a[b]=c)}));return d}function f(){r(b,function(b){var c=a.get(b);if(c){var d=zg(b.attr("class")),e="",f="";r(c,function(a,b){a!==!!d[b]&&(a?e+=(e.length?" ":"")+b:f+=(f.length?" ":"")+b)});r(b,function(a){e&&Db(a,e);f&&Cb(a,f)});a.delete(b)}});b.length=0}return{enabled:E,on:E,off:E,pin:E,push:function(g,k,h,l){l&&l();h=h||{};h.from&&g.css(h.from);h.to&&g.css(h.to);if(h.addClass||h.removeClass)if(k=h.addClass,l=h.removeClass,h=a.get(g)||{},k=e(h,k,!0),l=e(h,l,!1), +k||l)a.set(g,h),b.push(g),1===b.length&&c.$$postDigest(f);g=new d;g.complete();return g}}}]},xf=["$provide",function(a){var b=this,d=null,c=null;this.$$registeredAnimations=Object.create(null);this.register=function(c,d){if(c&&"."!==c.charAt(0))throw je("notcsel",c);var g=c+"-animation";b.$$registeredAnimations[c.substr(1)]=g;a.factory(g,d)};this.customFilter=function(a){1===arguments.length&&(c=B(a)?a:null);return c};this.classNameFilter=function(a){if(1===arguments.length&&(d=a instanceof RegExp? +a:null)&&/[(\s|\/)]ng-animate[(\s|\/)]/.test(d.toString()))throw d=null,je("nongcls","ng-animate");return d};this.$get=["$$animateQueue",function(a){function b(a,c,d){if(d){var e;a:{for(e=0;e <= >= && || ! = |".split(" "),function(a){Ub[a]=!0});var rh={n:"\n",f:"\f",r:"\r",t:"\t",v:"\v","'":"'",'"':'"'},Nb=function(a){this.options=a};Nb.prototype={constructor:Nb, +lex:function(a){this.text=a;this.index=0;for(this.tokens=[];this.index=a&&"string"===typeof a},isWhitespace:function(a){return" "===a||"\r"===a||"\t"===a||"\n"===a||"\v"===a||"\u00a0"===a},isIdentifierStart:function(a){return this.options.isIdentifierStart? +this.options.isIdentifierStart(a,this.codePointAt(a)):this.isValidIdentifierStart(a)},isValidIdentifierStart:function(a){return"a"<=a&&"z">=a||"A"<=a&&"Z">=a||"_"===a||"$"===a},isIdentifierContinue:function(a){return this.options.isIdentifierContinue?this.options.isIdentifierContinue(a,this.codePointAt(a)):this.isValidIdentifierContinue(a)},isValidIdentifierContinue:function(a,b){return this.isValidIdentifierStart(a,b)||this.isNumber(a)},codePointAt:function(a){return 1===a.length?a.charCodeAt(0): +(a.charCodeAt(0)<<10)+a.charCodeAt(1)-56613888},peekMultichar:function(){var a=this.text.charAt(this.index),b=this.peek();if(!b)return a;var d=a.charCodeAt(0),c=b.charCodeAt(0);return 55296<=d&&56319>=d&&56320<=c&&57343>=c?a+b:a},isExpOperator:function(a){return"-"===a||"+"===a||this.isNumber(a)},throwError:function(a,b,d){d=d||this.index;b=w(b)?"s "+b+"-"+this.index+" ["+this.text.substring(b,d)+"]":" "+d;throw Ya("lexerr",a,b,this.text);},readNumber:function(){for(var a="",b=this.index;this.index< +this.text.length;){var d=K(this.text.charAt(this.index));if("."===d||this.isNumber(d))a+=d;else{var c=this.peek();if("e"===d&&this.isExpOperator(c))a+=d;else if(this.isExpOperator(d)&&c&&this.isNumber(c)&&"e"===a.charAt(a.length-1))a+=d;else if(!this.isExpOperator(d)||c&&this.isNumber(c)||"e"!==a.charAt(a.length-1))break;else this.throwError("Invalid exponent")}this.index++}this.tokens.push({index:b,text:a,constant:!0,value:Number(a)})},readIdent:function(){var a=this.index;for(this.index+=this.peekMultichar().length;this.index< +this.text.length;){var b=this.peekMultichar();if(!this.isIdentifierContinue(b))break;this.index+=b.length}this.tokens.push({index:a,text:this.text.slice(a,this.index),identifier:!0})},readString:function(a){var b=this.index;this.index++;for(var d="",c=a,e=!1;this.index","<=",">=");)a={type:q.BinaryExpression,operator:b.text,left:a,right:this.additive()};return a},additive:function(){for(var a=this.multiplicative(),b;b=this.expect("+","-");)a={type:q.BinaryExpression, +operator:b.text,left:a,right:this.multiplicative()};return a},multiplicative:function(){for(var a=this.unary(),b;b=this.expect("*","/","%");)a={type:q.BinaryExpression,operator:b.text,left:a,right:this.unary()};return a},unary:function(){var a;return(a=this.expect("+","-","!"))?{type:q.UnaryExpression,operator:a.text,prefix:!0,argument:this.unary()}:this.primary()},primary:function(){var a;this.expect("(")?(a=this.filterChain(),this.consume(")")):this.expect("[")?a=this.arrayDeclaration():this.expect("{")? +a=this.object():this.selfReferential.hasOwnProperty(this.peek().text)?a=Ia(this.selfReferential[this.consume().text]):this.options.literals.hasOwnProperty(this.peek().text)?a={type:q.Literal,value:this.options.literals[this.consume().text]}:this.peek().identifier?a=this.identifier():this.peek().constant?a=this.constant():this.throwError("not a primary expression",this.peek());for(var b;b=this.expect("(","[",".");)"("===b.text?(a={type:q.CallExpression,callee:a,arguments:this.parseArguments()},this.consume(")")): +"["===b.text?(a={type:q.MemberExpression,object:a,property:this.expression(),computed:!0},this.consume("]")):"."===b.text?a={type:q.MemberExpression,object:a,property:this.identifier(),computed:!1}:this.throwError("IMPOSSIBLE");return a},filter:function(a){a=[a];for(var b={type:q.CallExpression,callee:this.identifier(),arguments:a,filter:!0};this.expect(":");)a.push(this.expression());return b},parseArguments:function(){var a=[];if(")"!==this.peekToken().text){do a.push(this.filterChain());while(this.expect(",")) +}return a},identifier:function(){var a=this.consume();a.identifier||this.throwError("is not a valid identifier",a);return{type:q.Identifier,name:a.text}},constant:function(){return{type:q.Literal,value:this.consume().value}},arrayDeclaration:function(){var a=[];if("]"!==this.peekToken().text){do{if(this.peek("]"))break;a.push(this.expression())}while(this.expect(","))}this.consume("]");return{type:q.ArrayExpression,elements:a}},object:function(){var a=[],b;if("}"!==this.peekToken().text){do{if(this.peek("}"))break; +b={type:q.Property,kind:"init"};this.peek().constant?(b.key=this.constant(),b.computed=!1,this.consume(":"),b.value=this.expression()):this.peek().identifier?(b.key=this.identifier(),b.computed=!1,this.peek(":")?(this.consume(":"),b.value=this.expression()):b.value=b.key):this.peek("[")?(this.consume("["),b.key=this.expression(),this.consume("]"),b.computed=!0,this.consume(":"),b.value=this.expression()):this.throwError("invalid key",this.peek());a.push(b)}while(this.expect(","))}this.consume("}"); +return{type:q.ObjectExpression,properties:a}},throwError:function(a,b){throw Ya("syntax",b.text,a,b.index+1,this.text,this.text.substring(b.index));},consume:function(a){if(0===this.tokens.length)throw Ya("ueoe",this.text);var b=this.expect(a);b||this.throwError("is unexpected, expecting ["+a+"]",this.peek());return b},peekToken:function(){if(0===this.tokens.length)throw Ya("ueoe",this.text);return this.tokens[0]},peek:function(a,b,d,c){return this.peekAhead(0,a,b,d,c)},peekAhead:function(a,b,d,c, +e){if(this.tokens.length>a){a=this.tokens[a];var f=a.text;if(f===b||f===d||f===c||f===e||!(b||d||c||e))return a}return!1},expect:function(a,b,d,c){return(a=this.peek(a,b,d,c))?(this.tokens.shift(),a):!1},selfReferential:{"this":{type:q.ThisExpression},$locals:{type:q.LocalsExpression}}};var Fd=2;Jd.prototype={compile:function(a){var b=this;this.state={nextId:0,filters:{},fn:{vars:[],body:[],own:{}},assign:{vars:[],body:[],own:{}},inputs:[]};Z(a,b.$filter);var d="",c;this.stage="assign";if(c=Id(a))this.state.computing= +"assign",d=this.nextId(),this.recurse(c,d),this.return_(d),d="fn.assign="+this.generateFunction("assign","s,v,l");c=Gd(a.body);b.stage="inputs";r(c,function(a,c){var d="fn"+c;b.state[d]={vars:[],body:[],own:{}};b.state.computing=d;var k=b.nextId();b.recurse(a,k);b.return_(k);b.state.inputs.push({name:d,isPure:a.isPure});a.watchId=c});this.state.computing="fn";this.stage="main";this.recurse(a);a='"'+this.USE+" "+this.STRICT+'";\n'+this.filterPrefix()+"var fn="+this.generateFunction("fn","s,l,a,i")+ +d+this.watchFns()+"return fn;";a=(new Function("$filter","getStringValue","ifDefined","plus",a))(this.$filter,Og,Pg,Ed);this.state=this.stage=void 0;return a},USE:"use",STRICT:"strict",watchFns:function(){var a=[],b=this.state.inputs,d=this;r(b,function(b){a.push("var "+b.name+"="+d.generateFunction(b.name,"s"));b.isPure&&a.push(b.name,".isPure="+JSON.stringify(b.isPure)+";")});b.length&&a.push("fn.inputs=["+b.map(function(a){return a.name}).join(",")+"];");return a.join("")},generateFunction:function(a, +b){return"function("+b+"){"+this.varsPrefix(a)+this.body(a)+"};"},filterPrefix:function(){var a=[],b=this;r(this.state.filters,function(d,c){a.push(d+"=$filter("+b.escape(c)+")")});return a.length?"var "+a.join(",")+";":""},varsPrefix:function(a){return this.state[a].vars.length?"var "+this.state[a].vars.join(",")+";":""},body:function(a){return this.state[a].body.join("")},recurse:function(a,b,d,c,e,f){var g,k,h=this,l,m,p;c=c||E;if(!f&&w(a.watchId))b=b||this.nextId(),this.if_("i",this.lazyAssign(b, +this.computedMember("i",a.watchId)),this.lazyRecurse(a,b,d,c,e,!0));else switch(a.type){case q.Program:r(a.body,function(b,c){h.recurse(b.expression,void 0,void 0,function(a){k=a});c!==a.body.length-1?h.current().body.push(k,";"):h.return_(k)});break;case q.Literal:m=this.escape(a.value);this.assign(b,m);c(b||m);break;case q.UnaryExpression:this.recurse(a.argument,void 0,void 0,function(a){k=a});m=a.operator+"("+this.ifDefined(k,0)+")";this.assign(b,m);c(m);break;case q.BinaryExpression:this.recurse(a.left, +void 0,void 0,function(a){g=a});this.recurse(a.right,void 0,void 0,function(a){k=a});m="+"===a.operator?this.plus(g,k):"-"===a.operator?this.ifDefined(g,0)+a.operator+this.ifDefined(k,0):"("+g+")"+a.operator+"("+k+")";this.assign(b,m);c(m);break;case q.LogicalExpression:b=b||this.nextId();h.recurse(a.left,b);h.if_("&&"===a.operator?b:h.not(b),h.lazyRecurse(a.right,b));c(b);break;case q.ConditionalExpression:b=b||this.nextId();h.recurse(a.test,b);h.if_(b,h.lazyRecurse(a.alternate,b),h.lazyRecurse(a.consequent, +b));c(b);break;case q.Identifier:b=b||this.nextId();d&&(d.context="inputs"===h.stage?"s":this.assign(this.nextId(),this.getHasOwnProperty("l",a.name)+"?l:s"),d.computed=!1,d.name=a.name);h.if_("inputs"===h.stage||h.not(h.getHasOwnProperty("l",a.name)),function(){h.if_("inputs"===h.stage||"s",function(){e&&1!==e&&h.if_(h.isNull(h.nonComputedMember("s",a.name)),h.lazyAssign(h.nonComputedMember("s",a.name),"{}"));h.assign(b,h.nonComputedMember("s",a.name))})},b&&h.lazyAssign(b,h.nonComputedMember("l", +a.name)));c(b);break;case q.MemberExpression:g=d&&(d.context=this.nextId())||this.nextId();b=b||this.nextId();h.recurse(a.object,g,void 0,function(){h.if_(h.notNull(g),function(){a.computed?(k=h.nextId(),h.recurse(a.property,k),h.getStringValue(k),e&&1!==e&&h.if_(h.not(h.computedMember(g,k)),h.lazyAssign(h.computedMember(g,k),"{}")),m=h.computedMember(g,k),h.assign(b,m),d&&(d.computed=!0,d.name=k)):(e&&1!==e&&h.if_(h.isNull(h.nonComputedMember(g,a.property.name)),h.lazyAssign(h.nonComputedMember(g, +a.property.name),"{}")),m=h.nonComputedMember(g,a.property.name),h.assign(b,m),d&&(d.computed=!1,d.name=a.property.name))},function(){h.assign(b,"undefined")});c(b)},!!e);break;case q.CallExpression:b=b||this.nextId();a.filter?(k=h.filter(a.callee.name),l=[],r(a.arguments,function(a){var b=h.nextId();h.recurse(a,b);l.push(b)}),m=k+"("+l.join(",")+")",h.assign(b,m),c(b)):(k=h.nextId(),g={},l=[],h.recurse(a.callee,k,g,function(){h.if_(h.notNull(k),function(){r(a.arguments,function(b){h.recurse(b,a.constant? +void 0:h.nextId(),void 0,function(a){l.push(a)})});m=g.name?h.member(g.context,g.name,g.computed)+"("+l.join(",")+")":k+"("+l.join(",")+")";h.assign(b,m)},function(){h.assign(b,"undefined")});c(b)}));break;case q.AssignmentExpression:k=this.nextId();g={};this.recurse(a.left,void 0,g,function(){h.if_(h.notNull(g.context),function(){h.recurse(a.right,k);m=h.member(g.context,g.name,g.computed)+a.operator+k;h.assign(b,m);c(b||m)})},1);break;case q.ArrayExpression:l=[];r(a.elements,function(b){h.recurse(b, +a.constant?void 0:h.nextId(),void 0,function(a){l.push(a)})});m="["+l.join(",")+"]";this.assign(b,m);c(b||m);break;case q.ObjectExpression:l=[];p=!1;r(a.properties,function(a){a.computed&&(p=!0)});p?(b=b||this.nextId(),this.assign(b,"{}"),r(a.properties,function(a){a.computed?(g=h.nextId(),h.recurse(a.key,g)):g=a.key.type===q.Identifier?a.key.name:""+a.key.value;k=h.nextId();h.recurse(a.value,k);h.assign(h.member(b,g,a.computed),k)})):(r(a.properties,function(b){h.recurse(b.value,a.constant?void 0: +h.nextId(),void 0,function(a){l.push(h.escape(b.key.type===q.Identifier?b.key.name:""+b.key.value)+":"+a)})}),m="{"+l.join(",")+"}",this.assign(b,m));c(b||m);break;case q.ThisExpression:this.assign(b,"s");c(b||"s");break;case q.LocalsExpression:this.assign(b,"l");c(b||"l");break;case q.NGValueParameter:this.assign(b,"v"),c(b||"v")}},getHasOwnProperty:function(a,b){var d=a+"."+b,c=this.current().own;c.hasOwnProperty(d)||(c[d]=this.nextId(!1,a+"&&("+this.escape(b)+" in "+a+")"));return c[d]},assign:function(a, +b){if(a)return this.current().body.push(a,"=",b,";"),a},filter:function(a){this.state.filters.hasOwnProperty(a)||(this.state.filters[a]=this.nextId(!0));return this.state.filters[a]},ifDefined:function(a,b){return"ifDefined("+a+","+this.escape(b)+")"},plus:function(a,b){return"plus("+a+","+b+")"},return_:function(a){this.current().body.push("return ",a,";")},if_:function(a,b,d){if(!0===a)b();else{var c=this.current().body;c.push("if(",a,"){");b();c.push("}");d&&(c.push("else{"),d(),c.push("}"))}}, +not:function(a){return"!("+a+")"},isNull:function(a){return a+"==null"},notNull:function(a){return a+"!=null"},nonComputedMember:function(a,b){var d=/[^$_a-zA-Z0-9]/g;return/^[$_a-zA-Z][$_a-zA-Z0-9]*$/.test(b)?a+"."+b:a+'["'+b.replace(d,this.stringEscapeFn)+'"]'},computedMember:function(a,b){return a+"["+b+"]"},member:function(a,b,d){return d?this.computedMember(a,b):this.nonComputedMember(a,b)},getStringValue:function(a){this.assign(a,"getStringValue("+a+")")},lazyRecurse:function(a,b,d,c,e,f){var g= +this;return function(){g.recurse(a,b,d,c,e,f)}},lazyAssign:function(a,b){var d=this;return function(){d.assign(a,b)}},stringEscapeRegex:/[^ a-zA-Z0-9]/g,stringEscapeFn:function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)},escape:function(a){if(A(a))return"'"+a.replace(this.stringEscapeRegex,this.stringEscapeFn)+"'";if(W(a))return a.toString();if(!0===a)return"true";if(!1===a)return"false";if(null===a)return"null";if("undefined"===typeof a)return"undefined";throw Ya("esc");},nextId:function(a, +b){var d="v"+this.state.nextId++;a||this.current().vars.push(d+(b?"="+b:""));return d},current:function(){return this.state[this.state.computing]}};Kd.prototype={compile:function(a){var b=this;Z(a,b.$filter);var d,c;if(d=Id(a))c=this.recurse(d);d=Gd(a.body);var e;d&&(e=[],r(d,function(a,c){var d=b.recurse(a);d.isPure=a.isPure;a.input=d;e.push(d);a.watchId=c}));var f=[];r(a.body,function(a){f.push(b.recurse(a.expression))});a=0===a.body.length?E:1===a.body.length?f[0]:function(a,b){var c;r(f,function(d){c= +d(a,b)});return c};c&&(a.assign=function(a,b,d){return c(a,d,b)});e&&(a.inputs=e);return a},recurse:function(a,b,d){var c,e,f=this,g;if(a.input)return this.inputs(a.input,a.watchId);switch(a.type){case q.Literal:return this.value(a.value,b);case q.UnaryExpression:return e=this.recurse(a.argument),this["unary"+a.operator](e,b);case q.BinaryExpression:return c=this.recurse(a.left),e=this.recurse(a.right),this["binary"+a.operator](c,e,b);case q.LogicalExpression:return c=this.recurse(a.left),e=this.recurse(a.right), +this["binary"+a.operator](c,e,b);case q.ConditionalExpression:return this["ternary?:"](this.recurse(a.test),this.recurse(a.alternate),this.recurse(a.consequent),b);case q.Identifier:return f.identifier(a.name,b,d);case q.MemberExpression:return c=this.recurse(a.object,!1,!!d),a.computed||(e=a.property.name),a.computed&&(e=this.recurse(a.property)),a.computed?this.computedMember(c,e,b,d):this.nonComputedMember(c,e,b,d);case q.CallExpression:return g=[],r(a.arguments,function(a){g.push(f.recurse(a))}), +a.filter&&(e=this.$filter(a.callee.name)),a.filter||(e=this.recurse(a.callee,!0)),a.filter?function(a,c,d,f){for(var p=[],n=0;n":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)>b(c,e,f,g);return d?{value:c}:c}},"binary<=":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)<=b(c,e,f,g);return d?{value:c}:c}},"binary>=":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)>=b(c,e,f,g);return d?{value:c}:c}},"binary&&":function(a,b,d){return function(c,e,f,g){c= +a(c,e,f,g)&&b(c,e,f,g);return d?{value:c}:c}},"binary||":function(a,b,d){return function(c,e,f,g){c=a(c,e,f,g)||b(c,e,f,g);return d?{value:c}:c}},"ternary?:":function(a,b,d,c){return function(e,f,g,k){e=a(e,f,g,k)?b(e,f,g,k):d(e,f,g,k);return c?{value:e}:e}},value:function(a,b){return function(){return b?{context:void 0,name:void 0,value:a}:a}},identifier:function(a,b,d){return function(c,e,f,g){c=e&&a in e?e:c;d&&1!==d&&c&&null==c[a]&&(c[a]={});e=c?c[a]:void 0;return b?{context:c,name:a,value:e}: +e}},computedMember:function(a,b,d,c){return function(e,f,g,k){var h=a(e,f,g,k),l,m;null!=h&&(l=b(e,f,g,k),l+="",c&&1!==c&&h&&!h[l]&&(h[l]={}),m=h[l]);return d?{context:h,name:l,value:m}:m}},nonComputedMember:function(a,b,d,c){return function(e,f,g,k){e=a(e,f,g,k);c&&1!==c&&e&&null==e[b]&&(e[b]={});f=null!=e?e[b]:void 0;return d?{context:e,name:b,value:f}:f}},inputs:function(a,b){return function(d,c,e,f){return f?f[b]:a(d,c,e)}}};Mb.prototype={constructor:Mb,parse:function(a){a=this.getAst(a);var b= +this.astCompiler.compile(a.ast),d=a.ast;b.literal=0===d.body.length||1===d.body.length&&(d.body[0].expression.type===q.Literal||d.body[0].expression.type===q.ArrayExpression||d.body[0].expression.type===q.ObjectExpression);b.constant=a.ast.constant;b.oneTime=a.oneTime;return b},getAst:function(a){var b=!1;a=a.trim();":"===a.charAt(0)&&":"===a.charAt(1)&&(b=!0,a=a.substring(2));return{ast:this.ast.ast(a),oneTime:b}}};var Ea=F("$sce"),V={HTML:"html",CSS:"css",MEDIA_URL:"mediaUrl",URL:"url",RESOURCE_URL:"resourceUrl", +JS:"js"},Cc=/_([a-z])/g,Ug=F("$templateRequest"),Vg=F("$timeout"),aa=C.document.createElement("a"),Od=ga(C.location.href),Na;aa.href="http://[::1]";var Wg="[::1]"===aa.hostname;Pd.$inject=["$document"];dd.$inject=["$provide"];var Wd=22,Vd=".",Ec="0";Qd.$inject=["$locale"];Sd.$inject=["$locale"];var gh={yyyy:ea("FullYear",4,0,!1,!0),yy:ea("FullYear",2,0,!0,!0),y:ea("FullYear",1,0,!1,!0),MMMM:kb("Month"),MMM:kb("Month",!0),MM:ea("Month",2,1),M:ea("Month",1,1),LLLL:kb("Month",!1,!0),dd:ea("Date",2), +d:ea("Date",1),HH:ea("Hours",2),H:ea("Hours",1),hh:ea("Hours",2,-12),h:ea("Hours",1,-12),mm:ea("Minutes",2),m:ea("Minutes",1),ss:ea("Seconds",2),s:ea("Seconds",1),sss:ea("Milliseconds",3),EEEE:kb("Day"),EEE:kb("Day",!0),a:function(a,b){return 12>a.getHours()?b.AMPMS[0]:b.AMPMS[1]},Z:function(a,b,d){a=-1*d;return a=(0<=a?"+":"")+(Ob(Math[0=a.getFullYear()?b.ERANAMES[0]:b.ERANAMES[1]}}, +fh=/((?:[^yMLdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|L+|d+|H+|h+|m+|s+|a|Z|G+|w+))([\s\S]*)/,eh=/^-?\d+$/;Rd.$inject=["$locale"];var $g=ia(K),ah=ia(ub);Td.$inject=["$parse"];var Me=ia({restrict:"E",compile:function(a,b){if(!b.href&&!b.xlinkHref)return function(a,b){if("a"===b[0].nodeName.toLowerCase()){var e="[object SVGAnimatedString]"===la.call(b.prop("href"))?"xlink:href":"href";b.on("click",function(a){b.attr(e)||a.preventDefault()})}}}}),vb={};r(Gb,function(a,b){function d(a,d,e){a.$watch(e[c], +function(a){e.$set(b,!!a)})}if("multiple"!==a){var c=wa("ng-"+b),e=d;"checked"===a&&(e=function(a,b,e){e.ngModel!==e[c]&&d(a,b,e)});vb[c]=function(){return{restrict:"A",priority:100,link:e}}}});r(td,function(a,b){vb[b]=function(){return{priority:100,link:function(a,c,e){if("ngPattern"===b&&"/"===e.ngPattern.charAt(0)&&(c=e.ngPattern.match(ie))){e.$set("ngPattern",new RegExp(c[1],c[2]));return}a.$watch(e[b],function(a){e.$set(b,a)})}}}});r(["src","srcset","href"],function(a){var b=wa("ng-"+a);vb[b]= +["$sce",function(d){return{priority:99,link:function(c,e,f){var g=a,k=a;"href"===a&&"[object SVGAnimatedString]"===la.call(e.prop("href"))&&(k="xlinkHref",f.$attr[k]="xlink:href",g=null);f.$set(b,d.getTrustedMediaUrl(f[b]));f.$observe(b,function(b){b?(f.$set(k,b),Ca&&g&&e.prop(g,f[k])):"href"===a&&f.$set(k,null)})}}}]});var lb={$addControl:E,$getControls:ia([]),$$renameControl:function(a,b){a.$name=b},$removeControl:E,$setValidity:E,$setDirty:E,$setPristine:E,$setSubmitted:E,$$setSubmitted:E};Pb.$inject= +["$element","$attrs","$scope","$animate","$interpolate"];Pb.prototype={$rollbackViewValue:function(){r(this.$$controls,function(a){a.$rollbackViewValue()})},$commitViewValue:function(){r(this.$$controls,function(a){a.$commitViewValue()})},$addControl:function(a){Ja(a.$name,"input");this.$$controls.push(a);a.$name&&(this[a.$name]=a);a.$$parentForm=this},$getControls:function(){return ja(this.$$controls)},$$renameControl:function(a,b){var d=a.$name;this[d]===a&&delete this[d];this[b]=a;a.$name=b},$removeControl:function(a){a.$name&& +this[a.$name]===a&&delete this[a.$name];r(this.$pending,function(b,d){this.$setValidity(d,null,a)},this);r(this.$error,function(b,d){this.$setValidity(d,null,a)},this);r(this.$$success,function(b,d){this.$setValidity(d,null,a)},this);cb(this.$$controls,a);a.$$parentForm=lb},$setDirty:function(){this.$$animate.removeClass(this.$$element,Za);this.$$animate.addClass(this.$$element,Vb);this.$dirty=!0;this.$pristine=!1;this.$$parentForm.$setDirty()},$setPristine:function(){this.$$animate.setClass(this.$$element, +Za,Vb+" ng-submitted");this.$dirty=!1;this.$pristine=!0;this.$submitted=!1;r(this.$$controls,function(a){a.$setPristine()})},$setUntouched:function(){r(this.$$controls,function(a){a.$setUntouched()})},$setSubmitted:function(){for(var a=this;a.$$parentForm&&a.$$parentForm!==lb;)a=a.$$parentForm;a.$$setSubmitted()},$$setSubmitted:function(){this.$$animate.addClass(this.$$element,"ng-submitted");this.$submitted=!0;r(this.$$controls,function(a){a.$$setSubmitted&&a.$$setSubmitted()})}};ae({clazz:Pb,set:function(a, +b,d){var c=a[b];c?-1===c.indexOf(d)&&c.push(d):a[b]=[d]},unset:function(a,b,d){var c=a[b];c&&(cb(c,d),0===c.length&&delete a[b])}});var ke=function(a){return["$timeout","$parse",function(b,d){function c(a){return""===a?d('this[""]').assign:d(a).assign||E}return{name:"form",restrict:a?"EAC":"E",require:["form","^^?form"],controller:Pb,compile:function(d,f){d.addClass(Za).addClass(mb);var g=f.name?"name":a&&f.ngForm?"ngForm":!1;return{pre:function(a,d,e,f){var p=f[0];if(!("action"in e)){var n=function(b){a.$apply(function(){p.$commitViewValue(); +p.$setSubmitted()});b.preventDefault()};d[0].addEventListener("submit",n);d.on("$destroy",function(){b(function(){d[0].removeEventListener("submit",n)},0,!1)})}(f[1]||p.$$parentForm).$addControl(p);var s=g?c(p.$name):E;g&&(s(a,p),e.$observe(g,function(b){p.$name!==b&&(s(a,void 0),p.$$parentForm.$$renameControl(p,b),s=c(p.$name),s(a,p))}));d.on("$destroy",function(){p.$$parentForm.$removeControl(p);s(a,void 0);S(p,lb)})}}}}}]},Ne=ke(),Ze=ke(!0),hh=/^\d{4,}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+(?:[+-][0-2]\d:[0-5]\d|Z)$/, +sh=/^[a-z][a-z\d.+-]*:\/*(?:[^:@]+(?::[^@]+)?@)?(?:[^\s:/?#]+|\[[a-f\d:]+])(?::\d+)?(?:\/[^?#]*)?(?:\?[^#]*)?(?:#.*)?$/i,th=/^(?=.{1,254}$)(?=.{1,64}@)[-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+(\.[-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+)*@[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?(\.[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?)*$/,ih=/^\s*(-|\+)?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/,le=/^(\d{4,})-(\d{2})-(\d{2})$/,me=/^(\d{4,})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,Mc=/^(\d{4,})-W(\d\d)$/,ne=/^(\d{4,})-(\d\d)$/, +oe=/^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,ce=T();r(["date","datetime-local","month","time","week"],function(a){ce[a]=!0});var pe={text:function(a,b,d,c,e,f){Sa(a,b,d,c,e,f);Hc(c)},date:nb("date",le,Qb(le,["yyyy","MM","dd"]),"yyyy-MM-dd"),"datetime-local":nb("datetimelocal",me,Qb(me,"yyyy MM dd HH mm ss sss".split(" ")),"yyyy-MM-ddTHH:mm:ss.sss"),time:nb("time",oe,Qb(oe,["HH","mm","ss","sss"]),"HH:mm:ss.sss"),week:nb("week",Mc,function(a,b){if(ha(a))return a;if(A(a)){Mc.lastIndex=0;var d=Mc.exec(a); +if(d){var c=+d[1],e=+d[2],f=d=0,g=0,k=0,h=Xd(c),e=7*(e-1);b&&(d=b.getHours(),f=b.getMinutes(),g=b.getSeconds(),k=b.getMilliseconds());return new Date(c,0,h.getDate()+e,d,f,g,k)}}return NaN},"yyyy-Www"),month:nb("month",ne,Qb(ne,["yyyy","MM"]),"yyyy-MM"),number:function(a,b,d,c,e,f,g,k){Ic(a,b,d,c,"number");de(c);Sa(a,b,d,c,e,f);var h;if(w(d.min)||d.ngMin){var l=d.min||k(d.ngMin)(a);h=na(l);c.$validators.min=function(a,b){return c.$isEmpty(b)||z(h)||b>=h};d.$observe("min",function(a){a!==l&&(h=na(a), +l=a,c.$validate())})}if(w(d.max)||d.ngMax){var m=d.max||k(d.ngMax)(a),p=na(m);c.$validators.max=function(a,b){return c.$isEmpty(b)||z(p)||b<=p};d.$observe("max",function(a){a!==m&&(p=na(a),m=a,c.$validate())})}if(w(d.step)||d.ngStep){var n=d.step||k(d.ngStep)(a),s=na(n);c.$validators.step=function(a,b){return c.$isEmpty(b)||z(s)||ee(b,h||0,s)};d.$observe("step",function(a){a!==n&&(s=na(a),n=a,c.$validate())})}},url:function(a,b,d,c,e,f){Sa(a,b,d,c,e,f);Hc(c);c.$validators.url=function(a,b){var d= +a||b;return c.$isEmpty(d)||sh.test(d)}},email:function(a,b,d,c,e,f){Sa(a,b,d,c,e,f);Hc(c);c.$validators.email=function(a,b){var d=a||b;return c.$isEmpty(d)||th.test(d)}},radio:function(a,b,d,c){var e=!d.ngTrim||"false"!==U(d.ngTrim);z(d.name)&&b.attr("name",++pb);b.on("change",function(a){var g;b[0].checked&&(g=d.value,e&&(g=U(g)),c.$setViewValue(g,a&&a.type))});c.$render=function(){var a=d.value;e&&(a=U(a));b[0].checked=a===c.$viewValue};d.$observe("value",c.$render)},range:function(a,b,d,c,e,f){function g(a, +c){b.attr(a,d[a]);var e=d[a];d.$observe(a,function(a){a!==e&&(e=a,c(a))})}function k(a){p=na(a);X(c.$modelValue)||(m?(a=b.val(),p>a&&(a=p,b.val(a)),c.$setViewValue(a)):c.$validate())}function h(a){n=na(a);X(c.$modelValue)||(m?(a=b.val(),n=p},g("min",k));e&&(n=na(d.max),c.$validators.max=m?function(){return!0}:function(a,b){return c.$isEmpty(b)||z(n)||b<=n},g("max",h));f&&(s=na(d.step),c.$validators.step=m?function(){return!r.stepMismatch}: +function(a,b){return c.$isEmpty(b)||z(s)||ee(b,p||0,s)},g("step",l))},checkbox:function(a,b,d,c,e,f,g,k){var h=fe(k,a,"ngTrueValue",d.ngTrueValue,!0),l=fe(k,a,"ngFalseValue",d.ngFalseValue,!1);b.on("change",function(a){c.$setViewValue(b[0].checked,a&&a.type)});c.$render=function(){b[0].checked=c.$viewValue};c.$isEmpty=function(a){return!1===a};c.$formatters.push(function(a){return va(a,h)});c.$parsers.push(function(a){return a?h:l})},hidden:E,button:E,submit:E,reset:E,file:E},Yc=["$browser","$sniffer", +"$filter","$parse",function(a,b,d,c){return{restrict:"E",require:["?ngModel"],link:{pre:function(e,f,g,k){k[0]&&(pe[K(g.type)]||pe.text)(e,f,g,k[0],b,a,d,c)}}}}],vf=function(){var a={configurable:!0,enumerable:!1,get:function(){return this.getAttribute("value")||""},set:function(a){this.setAttribute("value",a)}};return{restrict:"E",priority:200,compile:function(b,d){if("hidden"===K(d.type))return{pre:function(b,d,f,g){b=d[0];b.parentNode&&b.parentNode.insertBefore(b,b.nextSibling);Object.defineProperty&& +Object.defineProperty(b,"value",a)}}}}},uh=/^(true|false|\d+)$/,sf=function(){function a(a,d,c){var e=w(c)?c:9===Ca?"":null;a.prop("value",e);d.$set("value",c)}return{restrict:"A",priority:100,compile:function(b,d){return uh.test(d.ngValue)?function(b,d,f){b=b.$eval(f.ngValue);a(d,f,b)}:function(b,d,f){b.$watch(f.ngValue,function(b){a(d,f,b)})}}}},Re=["$compile",function(a){return{restrict:"AC",compile:function(b){a.$$addBindingClass(b);return function(b,c,e){a.$$addBindingInfo(c,e.ngBind);c=c[0]; +b.$watch(e.ngBind,function(a){c.textContent=ic(a)})}}}}],Te=["$interpolate","$compile",function(a,b){return{compile:function(d){b.$$addBindingClass(d);return function(c,d,f){c=a(d.attr(f.$attr.ngBindTemplate));b.$$addBindingInfo(d,c.expressions);d=d[0];f.$observe("ngBindTemplate",function(a){d.textContent=z(a)?"":a})}}}}],Se=["$sce","$parse","$compile",function(a,b,d){return{restrict:"A",compile:function(c,e){var f=b(e.ngBindHtml),g=b(e.ngBindHtml,function(b){return a.valueOf(b)});d.$$addBindingClass(c); +return function(b,c,e){d.$$addBindingInfo(c,e.ngBindHtml);b.$watch(g,function(){var d=f(b);c.html(a.getTrustedHtml(d)||"")})}}}}],rf=ia({restrict:"A",require:"ngModel",link:function(a,b,d,c){c.$viewChangeListeners.push(function(){a.$eval(d.ngChange)})}}),Ue=Kc("",!0),We=Kc("Odd",0),Ve=Kc("Even",1),Xe=Ra({compile:function(a,b){b.$set("ngCloak",void 0);a.removeClass("ng-cloak")}}),Ye=[function(){return{restrict:"A",scope:!0,controller:"@",priority:500}}],cd={},vh={blur:!0,focus:!0};r("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" "), +function(a){var b=wa("ng-"+a);cd[b]=["$parse","$rootScope","$exceptionHandler",function(d,c,e){return qd(d,c,e,b,a,vh[a])}]});var af=["$animate","$compile",function(a,b){return{multiElement:!0,transclude:"element",priority:600,terminal:!0,restrict:"A",$$tlb:!0,link:function(d,c,e,f,g){var k,h,l;d.$watch(e.ngIf,function(d){d?h||g(function(d,f){h=f;d[d.length++]=b.$$createComment("end ngIf",e.ngIf);k={clone:d};a.enter(d,c.parent(),c)}):(l&&(l.remove(),l=null),h&&(h.$destroy(),h=null),k&&(l=tb(k.clone), +a.leave(l).done(function(a){!1!==a&&(l=null)}),k=null))})}}}],bf=["$templateRequest","$anchorScroll","$animate",function(a,b,d){return{restrict:"ECA",priority:400,terminal:!0,transclude:"element",controller:ca.noop,compile:function(c,e){var f=e.ngInclude||e.src,g=e.onload||"",k=e.autoscroll;return function(c,e,m,p,n){var r=0,q,t,x,v=function(){t&&(t.remove(),t=null);q&&(q.$destroy(),q=null);x&&(d.leave(x).done(function(a){!1!==a&&(t=null)}),t=x,x=null)};c.$watch(f,function(f){var m=function(a){!1=== +a||!w(k)||k&&!c.$eval(k)||b()},t=++r;f?(a(f,!0).then(function(a){if(!c.$$destroyed&&t===r){var b=c.$new();p.template=a;a=n(b,function(a){v();d.enter(a,null,e).done(m)});q=b;x=a;q.$emit("$includeContentLoaded",f);c.$eval(g)}},function(){c.$$destroyed||t!==r||(v(),c.$emit("$includeContentError",f))}),c.$emit("$includeContentRequested",f)):(v(),p.template=null)})}}}}],uf=["$compile",function(a){return{restrict:"ECA",priority:-400,require:"ngInclude",link:function(b,d,c,e){la.call(d[0]).match(/SVG/)? +(d.empty(),a(ed(e.template,C.document).childNodes)(b,function(a){d.append(a)},{futureParentElement:d})):(d.html(e.template),a(d.contents())(b))}}}],cf=Ra({priority:450,compile:function(){return{pre:function(a,b,d){a.$eval(d.ngInit)}}}}),qf=function(){return{restrict:"A",priority:100,require:"ngModel",link:function(a,b,d,c){var e=d.ngList||", ",f="false"!==d.ngTrim,g=f?U(e):e;c.$parsers.push(function(a){if(!z(a)){var b=[];a&&r(a.split(g),function(a){a&&b.push(f?U(a):a)});return b}});c.$formatters.push(function(a){if(H(a))return a.join(e)}); +c.$isEmpty=function(a){return!a||!a.length}}}},mb="ng-valid",$d="ng-invalid",Za="ng-pristine",Vb="ng-dirty",ob=F("ngModel");Rb.$inject="$scope $exceptionHandler $attrs $element $parse $animate $timeout $q $interpolate".split(" ");Rb.prototype={$$initGetterSetters:function(){if(this.$options.getOption("getterSetter")){var a=this.$$parse(this.$$attr.ngModel+"()"),b=this.$$parse(this.$$attr.ngModel+"($$$p)");this.$$ngModelGet=function(b){var c=this.$$parsedNgModel(b);B(c)&&(c=a(b));return c};this.$$ngModelSet= +function(a,c){B(this.$$parsedNgModel(a))?b(a,{$$$p:c}):this.$$parsedNgModelAssign(a,c)}}else if(!this.$$parsedNgModel.assign)throw ob("nonassign",this.$$attr.ngModel,za(this.$$element));},$render:E,$isEmpty:function(a){return z(a)||""===a||null===a||a!==a},$$updateEmptyClasses:function(a){this.$isEmpty(a)?(this.$$animate.removeClass(this.$$element,"ng-not-empty"),this.$$animate.addClass(this.$$element,"ng-empty")):(this.$$animate.removeClass(this.$$element,"ng-empty"),this.$$animate.addClass(this.$$element, +"ng-not-empty"))},$setPristine:function(){this.$dirty=!1;this.$pristine=!0;this.$$animate.removeClass(this.$$element,Vb);this.$$animate.addClass(this.$$element,Za)},$setDirty:function(){this.$dirty=!0;this.$pristine=!1;this.$$animate.removeClass(this.$$element,Za);this.$$animate.addClass(this.$$element,Vb);this.$$parentForm.$setDirty()},$setUntouched:function(){this.$touched=!1;this.$untouched=!0;this.$$animate.setClass(this.$$element,"ng-untouched","ng-touched")},$setTouched:function(){this.$touched= +!0;this.$untouched=!1;this.$$animate.setClass(this.$$element,"ng-touched","ng-untouched")},$rollbackViewValue:function(){this.$$timeout.cancel(this.$$pendingDebounce);this.$viewValue=this.$$lastCommittedViewValue;this.$render()},$validate:function(){if(!X(this.$modelValue)){var a=this.$$lastCommittedViewValue,b=this.$$rawModelValue,d=this.$valid,c=this.$modelValue,e=this.$options.getOption("allowInvalid"),f=this;this.$$runValidators(b,a,function(a){e||d===a||(f.$modelValue=a?b:void 0,f.$modelValue!== +c&&f.$$writeModelToScope())})}},$$runValidators:function(a,b,d){function c(){var c=!0;r(h.$validators,function(d,e){var g=Boolean(d(a,b));c=c&&g;f(e,g)});return c?!0:(r(h.$asyncValidators,function(a,b){f(b,null)}),!1)}function e(){var c=[],d=!0;r(h.$asyncValidators,function(e,g){var h=e(a,b);if(!h||!B(h.then))throw ob("nopromise",h);f(g,void 0);c.push(h.then(function(){f(g,!0)},function(){d=!1;f(g,!1)}))});c.length?h.$$q.all(c).then(function(){g(d)},E):g(!0)}function f(a,b){k===h.$$currentValidationRunId&& +h.$setValidity(a,b)}function g(a){k===h.$$currentValidationRunId&&d(a)}this.$$currentValidationRunId++;var k=this.$$currentValidationRunId,h=this;(function(){var a=h.$$parserName;if(z(h.$$parserValid))f(a,null);else return h.$$parserValid||(r(h.$validators,function(a,b){f(b,null)}),r(h.$asyncValidators,function(a,b){f(b,null)})),f(a,h.$$parserValid),h.$$parserValid;return!0})()?c()?e():g(!1):g(!1)},$commitViewValue:function(){var a=this.$viewValue;this.$$timeout.cancel(this.$$pendingDebounce);if(this.$$lastCommittedViewValue!== +a||""===a&&this.$$hasNativeValidators)this.$$updateEmptyClasses(a),this.$$lastCommittedViewValue=a,this.$pristine&&this.$setDirty(),this.$$parseAndValidate()},$$parseAndValidate:function(){var a=this.$$lastCommittedViewValue,b=this;this.$$parserValid=z(a)?void 0:!0;this.$setValidity(this.$$parserName,null);this.$$parserName="parse";if(this.$$parserValid)for(var d=0;dg||e.$isEmpty(b)||b.length<=g}}}}}],ad=["$parse",function(a){return{restrict:"A",require:"?ngModel",link:function(b,d,c,e){if(e){var f=c.minlength||a(c.ngMinlength)(b),g=Tb(f)||-1;c.$observe("minlength",function(a){f!== +a&&(g=Tb(a)||-1,f=a,e.$validate())});e.$validators.minlength=function(a,b){return e.$isEmpty(b)||b.length>=g}}}}}];C.angular.bootstrap?C.console&&console.log("WARNING: Tried to load AngularJS more than once."):(Fe(),Je(ca),ca.module("ngLocale",[],["$provide",function(a){function b(a){a+="";var b=a.indexOf(".");return-1==b?0:a.length-b-1}a.value("$locale",{DATETIME_FORMATS:{AMPMS:["AM","PM"],DAY:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),ERANAMES:["Before Christ","Anno Domini"], +ERAS:["BC","AD"],FIRSTDAYOFWEEK:6,MONTH:"January February March April May June July August September October November December".split(" "),SHORTDAY:"Sun Mon Tue Wed Thu Fri Sat".split(" "),SHORTMONTH:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),STANDALONEMONTH:"January February March April May June July August September October November December".split(" "),WEEKENDRANGE:[5,6],fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",medium:"MMM d, y h:mm:ss a",mediumDate:"MMM d, y",mediumTime:"h:mm:ss a", +"short":"M/d/yy h:mm a",shortDate:"M/d/yy",shortTime:"h:mm a"},NUMBER_FORMATS:{CURRENCY_SYM:"$",DECIMAL_SEP:".",GROUP_SEP:",",PATTERNS:[{gSize:3,lgSize:3,maxFrac:3,minFrac:0,minInt:1,negPre:"-",negSuf:"",posPre:"",posSuf:""},{gSize:3,lgSize:3,maxFrac:2,minFrac:2,minInt:1,negPre:"-\u00a4",negSuf:"",posPre:"\u00a4",posSuf:""}]},id:"en-us",localeID:"en_US",pluralCat:function(a,c){var e=a|0,f=c;void 0===f&&(f=Math.min(b(a),3));Math.pow(10,f);return 1==e&&0==f?"one":"other"}})}]),x(function(){Ae(C.document, +Uc)}))})(window);!window.angular.$$csp().noInlineStyle&&window.angular.element(document.head).prepend(''); +//# sourceMappingURL=angular.min.js.map diff --git a/static/html/bower_components/angularjs-file-upload/FileAPI.min.js b/static/html/bower_components/angularjs-file-upload/FileAPI.min.js new file mode 100644 index 00000000..e43849cd --- /dev/null +++ b/static/html/bower_components/angularjs-file-upload/FileAPI.min.js @@ -0,0 +1,6 @@ +/*! 12.0.1 */ +/*! FileAPI 2.0.7 - BSD | git://github.com/mailru/FileAPI.git + * FileAPI — a set of javascript tools for working with files. Multiupload, drag'n'drop and chunked file upload. Images: crop, resize and auto orientation by EXIF. + */ +!function(a){"use strict";var b=a.HTMLCanvasElement&&a.HTMLCanvasElement.prototype,c=a.Blob&&function(){try{return Boolean(new Blob)}catch(a){return!1}}(),d=c&&a.Uint8Array&&function(){try{return 100===new Blob([new Uint8Array(100)]).size}catch(a){return!1}}(),e=a.BlobBuilder||a.WebKitBlobBuilder||a.MozBlobBuilder||a.MSBlobBuilder,f=(c||e)&&a.atob&&a.ArrayBuffer&&a.Uint8Array&&function(a){var b,f,g,h,i,j;for(b=a.split(",")[0].indexOf("base64")>=0?atob(a.split(",")[1]):decodeURIComponent(a.split(",")[1]),f=new ArrayBuffer(b.length),g=new Uint8Array(f),h=0;hd;d++)d in a&&b.call(c,a[d],d,a);else for(var f in a)a.hasOwnProperty(f)&&b.call(c,a[f],f,a)},S=function(a){for(var b=arguments,c=1,d=function(b,c){a[c]=b};c=c&&!d&&f.end()},isFail:function(){return d},fail:function(){!d&&a(d=!0)},end:function(){e||(e=!0,a())}};return f},each:R,afor:function(a,b){var c=0,d=a.length;Q(a)&&d--?!function e(){b(d!=c&&e,a[c],c++)}():b(!1)},extend:S,isFile:function(a){return"[object File]"===H.call(a)},isBlob:function(a){return this.isFile(a)||"[object Blob]"===H.call(a)},isCanvas:function(a){return a&&D.test(a.nodeName)},getFilesFilter:function(a){return a="string"==typeof a?a:a.getAttribute&&a.getAttribute("accept")||"",a?new RegExp("("+a.replace(/\./g,"\\.").replace(/,/g,"|")+")$","i"):/./},readAsDataURL:function(a,b){Y.isCanvas(a)?c(a,b,"load",Y.toDataURL(a)):e(a,b,"DataURL")},readAsBinaryString:function(a,b){d("BinaryString")?e(a,b,"BinaryString"):e(a,function(a){if("load"==a.type)try{a.result=Y.toBinaryString(a.result)}catch(c){a.type="error",a.message=c.toString()}b(a)},"DataURL")},readAsArrayBuffer:function(a,b){e(a,b,"ArrayBuffer")},readAsText:function(a,b,c){c||(c=b,b="utf-8"),e(a,c,"Text",b)},toDataURL:function(a,b){return"string"==typeof a?a:a.toDataURL?a.toDataURL(b||"image/png"):void 0},toBinaryString:function(b){return a.atob(Y.toDataURL(b).replace(G,""))},readAsImage:function(a,d,e){if(Y.isFile(a))if(r){var f=r.createObjectURL(a);f===b?c(a,d,"error"):Y.readAsImage(f,d,e)}else Y.readAsDataURL(a,function(b){"load"==b.type?Y.readAsImage(b.result,d,e):(e||"error"==b.type)&&c(a,d,b,null,{loaded:b.loaded,total:b.total})});else if(Y.isCanvas(a))c(a,d,"load",a);else if(C.test(a.nodeName))if(a.complete)c(a,d,"load",a);else{var g="error abort load";V(a,g,function i(b){"load"==b.type&&r&&r.revokeObjectURL(a.src),U(a,g,i),c(a,d,b,a)})}else if(a.iframe)c(a,d,{type:"error"});else{var h=Y.newImage(a.dataURL||a);Y.readAsImage(h,d,e)}},checkFileObj:function(a){var b={},c=Y.accept;return"object"==typeof a?b=a:b.name=(a+"").split(/\\|\//g).pop(),null==b.type&&(b.type=b.name.split(".").pop()),R(c,function(a,c){a=new RegExp(a.replace(/\s/g,"|"),"i"),(a.test(b.type)||Y.ext2mime[b.type])&&(b.type=Y.ext2mime[b.type]||c.split("/")[0]+"/"+b.type)}),b},getDropFiles:function(a,b){var c=[],d=k(a),e=Q(d.items)&&d.items[0]&&g(d.items[0]),i=Y.queue(function(){b(c)});R((e?d.items:d.files)||[],function(a){i.inc();try{e?h(a,function(a,b){a?Y.log("[err] getDropFiles:",a):c.push.apply(c,b),i.next()}):f(a,function(b){b&&c.push(a),i.next()})}catch(b){i.next(),Y.log("[err] getDropFiles: ",b)}}),i.check()},getFiles:function(a,b,c){var d=[];return c?(Y.filterFiles(Y.getFiles(a),b,c),null):(a.jquery&&(a.each(function(){d=d.concat(Y.getFiles(this))}),a=d,d=[]),"string"==typeof b&&(b=Y.getFilesFilter(b)),a.originalEvent?a=W(a.originalEvent):a.srcElement&&(a=W(a)),a.dataTransfer?a=a.dataTransfer:a.target&&(a=a.target),a.files?(d=a.files,y||(d[0].blob=a,d[0].iframe=!0)):!y&&j(a)?Y.trim(a.value)&&(d=[Y.checkFileObj(a.value)],d[0].blob=a,d[0].iframe=!0):Q(a)&&(d=a),Y.filter(d,function(a){return!b||b.test(a.name)}))},getTotalSize:function(a){for(var b=0,c=a&&a.length;c--;)b+=a[c].size;return b},getInfo:function(a,b){var c={},d=L.concat();Y.isFile(a)?!function e(){var f=d.shift();f?f.test(a.type)?f(a,function(a,d){a?b(a):(S(c,d),e())}):e():b(!1,c)}():b("not_support_info",c)},addInfoReader:function(a,b){b.test=function(b){return a.test(b)},L.push(b)},filter:function(a,b){for(var c,d=[],e=0,f=a.length;f>e;e++)e in a&&(c=a[e],b.call(c,c,e,a)&&d.push(c));return d},filterFiles:function(a,b,c){if(a.length){var d,e=a.concat(),f=[],g=[];!function h(){e.length?(d=e.shift(),Y.getInfo(d,function(a,c){(b(d,a?!1:c)?f:g).push(d),h()})):c(f,g)}()}else c([],a)},upload:function(a){a=S({jsonp:"callback",prepare:Y.F,beforeupload:Y.F,upload:Y.F,fileupload:Y.F,fileprogress:Y.F,filecomplete:Y.F,progress:Y.F,complete:Y.F,pause:Y.F,imageOriginal:!0,chunkSize:Y.chunkSize,chunkUploadRetry:Y.chunkUploadRetry,uploadRetry:Y.uploadRetry},a),a.imageAutoOrientation&&!a.imageTransform&&(a.imageTransform={rotate:"auto"});var b,c=new Y.XHR(a),d=this._getFilesDataArray(a.files),e=this,f=0,g=0,h=!1;return R(d,function(a){f+=a.size}),c.files=[],R(d,function(a){c.files.push(a.file)}),c.total=f,c.loaded=0,c.filesLeft=d.length,a.beforeupload(c,a),b=function(){var j=d.shift(),k=j&&j.file,l=!1,m=i(a);if(c.filesLeft=d.length,k&&k.name===Y.expando&&(k=null,Y.log("[warn] FileAPI.upload() — called without files")),("abort"!=c.statusText||c.current)&&j){if(h=!1,c.currentFile=k,k&&a.prepare(k,m)===!1)return void b.call(e);m.file=k,e._getFormData(m,j,function(h){g||a.upload(c,a);var i=new Y.XHR(S({},m,{upload:k?function(){a.fileupload(k,i,m)}:n,progress:k?function(b){l||(l=b.loaded===b.total,a.fileprogress({type:"progress",total:j.total=b.total,loaded:j.loaded=b.loaded},k,i,m),a.progress({type:"progress",total:f,loaded:c.loaded=g+j.size*(b.loaded/b.total)|0},k,i,m))}:n,complete:function(d){R(N,function(a){c[a]=i[a]}),k&&(j.total=j.total||j.size,j.loaded=j.total,d||(this.progress(j),l=!0,g+=j.size,c.loaded=g),a.filecomplete(d,i,k,m)),setTimeout(function(){b.call(e)},0)}}));c.abort=function(a){a||(d.length=0),this.current=a,i.abort()},i.send(h)})}else{var o=200==c.status||201==c.status||204==c.status;a.complete(o?!1:c.statusText||"error",c,a),h=!0}},setTimeout(b,0),c.append=function(a,g){a=Y._getFilesDataArray([].concat(a)),R(a,function(a){f+=a.size,c.files.push(a.file),g?d.unshift(a):d.push(a)}),c.statusText="",h&&b.call(e)},c.remove=function(a){for(var b,c=d.length;c--;)d[c].file==a&&(b=d.splice(c,1),f-=b.size);return b},c},_getFilesDataArray:function(a){var b=[],c={};if(j(a)){var d=Y.getFiles(a);c[a.name||"file"]=null!==a.getAttribute("multiple")?d:d[0]}else Q(a)&&j(a[0])?R(a,function(a){c[a.name||"file"]=Y.getFiles(a)}):c=a;return R(c,function e(a,c){Q(a)?R(a,function(a){e(a,c)}):a&&(a.name||a.image)&&b.push({name:c,file:a,size:a.size,total:a.size,loaded:0})}),b.length||b.push({file:{name:Y.expando}}),b},_getFormData:function(a,b,c){var d=b.file,e=b.name,f=d.name,g=d.type,h=Y.support.transform&&a.imageTransform,i=new Y.Form,j=Y.queue(function(){c(i)}),k=h&&l(h),m=Y.postNameConcat;R(a.data,function n(a,b){"object"==typeof a?R(a,function(a,c){n(a,m(b,c))}):i.append(b,a)}),function o(b){b.image?(j.inc(),b.toData(function(a,b){f=f||(new Date).getTime()+".png",o(b),j.next()})):Y.Image&&h&&(/^image/.test(b.type)||E.test(b.nodeName))?(j.inc(),k&&(h=[h]),Y.Image.transform(b,h,a.imageAutoOrientation,function(c,d){if(k&&!c)B||Y.flashEngine||(i.multipart=!0),i.append(e,d[0],f,h[0].type||g);else{var l=0;c||R(d,function(a,b){B||Y.flashEngine||(i.multipart=!0),h[b].postName||(l=1),i.append(h[b].postName||m(e,b),a,f,h[b].type||g)}),(c||a.imageOriginal)&&i.append(m(e,l?"original":null),b,f,g)}j.next()})):f!==Y.expando&&i.append(e,b,f)}(d),j.check()},reset:function(a,b){var c,d;return x?(d=x(a).clone(!0).insertBefore(a).val("")[0],b||x(a).remove()):(c=a.parentNode,d=c.insertBefore(a.cloneNode(!0),a),d.value="",b||c.removeChild(a),R(K[Y.uid(a)],function(b,c){R(b,function(b){U(a,c,b),T(d,c,b)})})),d},load:function(a,b){var c=Y.getXHR();return c?(c.open("GET",a,!0),c.overrideMimeType&&c.overrideMimeType("text/plain; charset=x-user-defined"),T(c,"progress",function(a){a.lengthComputable&&b({type:a.type,loaded:a.loaded,total:a.total},c)}),c.onreadystatechange=function(){if(4==c.readyState)if(c.onreadystatechange=null,200==c.status){a=a.split("/");var d={name:a[a.length-1],size:c.getResponseHeader("Content-Length"),type:c.getResponseHeader("Content-Type")};d.dataURL="data:"+d.type+";base64,"+Y.encode64(c.responseBody||c.responseText),b({type:"load",result:d},c)}else b({type:"error"},c)},c.send(null)):b({type:"error"}),c},encode64:function(a){var b="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",c="",d=0;for("string"!=typeof a&&(a=String(a));d>2,k=(3&g)<<4|h>>4;isNaN(h)?e=f=64:(e=(15&h)<<2|i>>6,f=isNaN(i)?64:63&i),c+=b.charAt(j)+b.charAt(k)+b.charAt(e)+b.charAt(f)}return c}};Y.addInfoReader(/^image/,function(a,b){if(!a.__dimensions){var c=a.__dimensions=Y.defer();Y.readAsImage(a,function(a){var b=a.target;c.resolve("load"==a.type?!1:"error",{width:b.width,height:b.height}),b.src=Y.EMPTY_PNG,b=null})}a.__dimensions.then(b)}),Y.event.dnd=function(a,b,c){var d,e;c||(c=b,b=Y.F),u?(T(a,"dragenter dragleave dragover",b.ff=b.ff||function(a){for(var c=k(a).types,f=c&&c.length,g=!1;f--;)if(~c[f].indexOf("File")){a[P](),e!==a.type&&(e=a.type,"dragleave"!=e&&b.call(a[O],!0,a),g=!0);break}g&&(clearTimeout(d),d=setTimeout(function(){b.call(a[O],"dragleave"!=e,a)},50))}),T(a,"drop",c.ff=c.ff||function(a){a[P](),e=0,b.call(a[O],!1,a),Y.getDropFiles(a,function(b){c.call(a[O],b,a)})})):Y.log("Drag'n'Drop -- not supported")},Y.event.dnd.off=function(a,b,c){U(a,"dragenter dragleave dragover",b.ff),U(a,"drop",c.ff)},x&&!x.fn.dnd&&(x.fn.dnd=function(a,b){return this.each(function(){Y.event.dnd(this,a,b)})},x.fn.offdnd=function(a,b){return this.each(function(){Y.event.dnd.off(this,a,b)})}),a.FileAPI=S(Y,a.FileAPI),Y.log("FileAPI: "+Y.version),Y.log("protocol: "+a.location.protocol),Y.log("doctype: ["+p.name+"] "+p.publicId+" "+p.systemId),R(o.getElementsByTagName("meta"),function(a){/x-ua-compatible/i.test(a.getAttribute("http-equiv"))&&Y.log("meta.http-equiv: "+a.getAttribute("content"))});try{Y._supportConsoleLog=!!console.log,Y._supportConsoleLogApply=!!console.log.apply}catch(Z){}Y.flashUrl||(Y.flashUrl=Y.staticPath+"FileAPI.flash.swf"),Y.flashImageUrl||(Y.flashImageUrl=Y.staticPath+"FileAPI.flash.image.swf"),Y.flashWebcamUrl||(Y.flashWebcamUrl=Y.staticPath+"FileAPI.flash.camera.swf")}(window,void 0),function(a,b,c){"use strict";function d(b){if(b instanceof d){var c=new d(b.file);return a.extend(c.matrix,b.matrix),c}return this instanceof d?(this.file=b,this.size=b.size||100,void(this.matrix={sx:0,sy:0,sw:0,sh:0,dx:0,dy:0,dw:0,dh:0,resize:0,deg:0,quality:1,filter:0})):new d(b)}var e=Math.min,f=Math.round,g=function(){return b.createElement("canvas")},h=!1,i={8:270,3:180,6:90,7:270,4:180,5:90};try{h=g().toDataURL("image/png").indexOf("data:image/png")>-1}catch(j){}d.prototype={image:!0,constructor:d,set:function(b){return a.extend(this.matrix,b),this},crop:function(a,b,d,e){return d===c&&(d=a,e=b,a=b=0),this.set({sx:a,sy:b,sw:d,sh:e||d})},resize:function(a,b,c){return/min|max/.test(b)&&(c=b,b=a),this.set({dw:a,dh:b||a,resize:c})},preview:function(a,b){return this.resize(a,b||a,"preview")},rotate:function(a){return this.set({deg:a})},filter:function(a){return this.set({filter:a})},overlay:function(a){return this.set({overlay:a})},clone:function(){return new d(this)},_load:function(b,c){var d=this;/img|video/i.test(b.nodeName)?c.call(d,null,b):a.readAsImage(b,function(a){c.call(d,"load"!=a.type,a.result)})},_apply:function(b,c){var f,h=g(),i=this.getMatrix(b),j=h.getContext("2d"),k=b.videoWidth||b.width,l=b.videoHeight||b.height,m=i.deg,n=i.dw,o=i.dh,p=k,q=l,r=i.filter,s=b,t=i.overlay,u=a.queue(function(){b.src=a.EMPTY_PNG,c(!1,h)}),v=a.renderImageToCanvas;for(m-=360*Math.floor(m/360),b._type=this.file.type;i.multipass&&e(p/n,q/o)>2;)p=p/2+.5|0,q=q/2+.5|0,f=g(),f.width=p,f.height=q,s!==b?(v(f,s,0,0,s.width,s.height,0,0,p,q),s=f):(s=f,v(s,b,i.sx,i.sy,i.sw,i.sh,0,0,p,q),i.sx=i.sy=i.sw=i.sh=0);h.width=m%180?o:n,h.height=m%180?n:o,h.type=i.type,h.quality=i.quality,j.rotate(m*Math.PI/180),v(j.canvas,s,i.sx,i.sy,i.sw||s.width,i.sh||s.height,180==m||270==m?-n:0,90==m||180==m?-o:0,n,o),n=h.width,o=h.height,t&&a.each([].concat(t),function(b){u.inc();var c=new window.Image,d=function(){var e=0|b.x,f=0|b.y,g=b.w||c.width,h=b.h||c.height,i=b.rel;e=1==i||4==i||7==i?(n-g+e)/2:2==i||5==i||8==i?n-(g+e):e,f=3==i||4==i||5==i?(o-h+f)/2:i>=6?o-(h+f):f,a.event.off(c,"error load abort",d);try{j.globalAlpha=b.opacity||1,j.drawImage(c,e,f,g,h)}catch(k){}u.next()};a.event.on(c,"error load abort",d),c.src=b.src,c.complete&&d()}),r&&(u.inc(),d.applyFilter(h,r,u.next)),u.check()},getMatrix:function(b){var c=a.extend({},this.matrix),d=c.sw=c.sw||b.videoWidth||b.naturalWidth||b.width,g=c.sh=c.sh||b.videoHeight||b.naturalHeight||b.height,h=c.dw=c.dw||d,i=c.dh=c.dh||g,j=d/g,k=h/i,l=c.resize;if("preview"==l){if(h!=d||i!=g){var m,n;k>=j?(m=d,n=m/k):(n=g,m=n*k),(m!=d||n!=g)&&(c.sx=~~((d-m)/2),c.sy=~~((g-n)/2),d=m,g=n)}}else l&&(d>h||g>i?"min"==l?(h=f(k>j?e(d,h):i*j),i=f(k>j?h/j:e(g,i))):(h=f(j>=k?e(d,h):i*j),i=f(j>=k?h/j:e(g,i))):(h=d,i=g));return c.sw=d,c.sh=g,c.dw=h,c.dh=i,c.multipass=a.multiPassResize,c},_trans:function(b){this._load(this.file,function(c,d){if(c)b(c);else try{this._apply(d,b)}catch(c){a.log("[err] FileAPI.Image.fn._apply:",c),b(c)}})},get:function(b){if(a.support.transform){var c=this,d=c.matrix;"auto"==d.deg?a.getInfo(c.file,function(a,e){d.deg=i[e&&e.exif&&e.exif.Orientation]||0,c._trans(b)}):c._trans(b)}else b("not_support_transform");return this},toData:function(a){return this.get(a)}},d.exifOrientation=i,d.transform=function(b,e,f,g){function h(h,i){var j={},k=a.queue(function(a){g(a,j)});h?k.fail():a.each(e,function(a,e){if(!k.isFail()){var g=new d(i.nodeType?i:b),h="function"==typeof a;if(h?a(i,g):a.width?g[a.preview?"preview":"resize"](a.width,a.height,a.strategy):a.maxWidth&&(i.width>a.maxWidth||i.height>a.maxHeight)&&g.resize(a.maxWidth,a.maxHeight,"max"),a.crop){var l=a.crop;g.crop(0|l.x,0|l.y,l.w||l.width,l.h||l.height)}a.rotate===c&&f&&(a.rotate="auto"),g.set({type:g.matrix.type||a.type||b.type||"image/png"}),h||g.set({deg:a.rotate,overlay:a.overlay,filter:a.filter,quality:a.quality||1}),k.inc(),g.toData(function(a,b){a?k.fail():(j[e]=b,k.next())})}})}b.width?h(!1,b):a.getInfo(b,h)},a.each(["TOP","CENTER","BOTTOM"],function(b,c){a.each(["LEFT","CENTER","RIGHT"],function(a,e){d[b+"_"+a]=3*c+e,d[a+"_"+b]=3*c+e})}),d.toCanvas=function(a){var c=b.createElement("canvas");return c.width=a.videoWidth||a.width,c.height=a.videoHeight||a.height,c.getContext("2d").drawImage(a,0,0),c},d.fromDataURL=function(b,c,d){var e=a.newImage(b);a.extend(e,c),d(e)},d.applyFilter=function(b,c,e){"function"==typeof c?c(b,e):window.Caman&&window.Caman("IMG"==b.tagName?d.toCanvas(b):b,function(){"string"==typeof c?this[c]():a.each(c,function(a,b){this[b](a)},this),this.render(e)})},a.renderImageToCanvas=function(b,c,d,e,f,g,h,i,j,k){try{return b.getContext("2d").drawImage(c,d,e,f,g,h,i,j,k)}catch(l){throw a.log("renderImageToCanvas failed"),l}},a.support.canvas=a.support.transform=h,a.Image=d}(FileAPI,document),function(a){"use strict";a(FileAPI)}(function(a){"use strict";if(window.navigator&&window.navigator.platform&&/iP(hone|od|ad)/.test(window.navigator.platform)){var b=a.renderImageToCanvas;a.detectSubsampling=function(a){var b,c;return a.width*a.height>1048576?(b=document.createElement("canvas"),b.width=b.height=1,c=b.getContext("2d"),c.drawImage(a,-a.width+1,0),0===c.getImageData(0,0,1,1).data[3]):!1},a.detectVerticalSquash=function(a,b){var c,d,e,f,g,h=a.naturalHeight||a.height,i=document.createElement("canvas"),j=i.getContext("2d");for(b&&(h/=2),i.width=1,i.height=h,j.drawImage(a,0,0),c=j.getImageData(0,0,1,h).data,d=0,e=h,f=h;f>d;)g=c[4*(f-1)+3],0===g?e=f:d=f,f=e+d>>1;return f/h||1},a.renderImageToCanvas=function(c,d,e,f,g,h,i,j,k,l){if("image/jpeg"===d._type){var m,n,o,p,q=c.getContext("2d"),r=document.createElement("canvas"),s=1024,t=r.getContext("2d");if(r.width=s,r.height=s,q.save(),m=a.detectSubsampling(d),m&&(e/=2,f/=2,g/=2,h/=2),n=a.detectVerticalSquash(d,m),m||1!==n){for(f*=n,k=Math.ceil(s*k/g),l=Math.ceil(s*l/h/n),j=0,p=0;h>p;){for(i=0,o=0;g>o;)t.clearRect(0,0,s,s),t.drawImage(d,e,f,g,h,-o,-p,g,h),q.drawImage(r,0,0,s,s,i,j,k,l),o+=s,i+=k;p+=s,j+=l}return q.restore(),c}}return b(c,d,e,f,g,h,i,j,k,l)}}}),function(a,b){"use strict";function c(b,c,d){var e=b.blob,f=b.file;if(f){if(!e.toDataURL)return void a.readAsBinaryString(e,function(a){"load"==a.type&&c(b,a.result)});var g={"image/jpeg":".jpe?g","image/png":".png"},h=g[b.type]?b.type:"image/png",i=g[h]||".png",j=e.quality||1;f.match(new RegExp(i+"$","i"))||(f+=i.replace("?","")),b.file=f,b.type=h,!d&&e.toBlob?e.toBlob(function(a){c(b,a)},h,j):c(b,a.toBinaryString(e.toDataURL(h,j)))}else c(b,e)}var d=b.document,e=b.FormData,f=function(){this.items=[]},g=b.encodeURIComponent;f.prototype={append:function(a,b,c,d){this.items.push({name:a,blob:b&&b.blob||(void 0==b?"":b),file:b&&(c||b.name),type:b&&(d||b.type)})},each:function(a){for(var b=0,c=this.items.length;c>b;b++)a.call(this,this.items[b])},toData:function(b,c){c._chunked=a.support.chunked&&c.chunkSize>0&&1==a.filter(this.items,function(a){return a.file}).length,a.support.html5?a.formData&&!this.multipart&&e?c._chunked?(a.log("FileAPI.Form.toPlainData"),this.toPlainData(b)):(a.log("FileAPI.Form.toFormData"),this.toFormData(b)):(a.log("FileAPI.Form.toMultipartData"),this.toMultipartData(b)):(a.log("FileAPI.Form.toHtmlData"),this.toHtmlData(b))},_to:function(b,c,d,e){var f=a.queue(function(){c(b)});this.each(function(a){d(a,b,f,e)}),f.check()},toHtmlData:function(b){this._to(d.createDocumentFragment(),b,function(b,c){var e,f=b.blob;b.file?(a.reset(f,!0),f.name=b.name,f.disabled=!1,c.appendChild(f)):(e=d.createElement("input"),e.name=b.name,e.type="hidden",e.value=f,c.appendChild(e))})},toPlainData:function(a){this._to({},a,function(a,b,d){a.file&&(b.type=a.file),a.blob.toBlob?(d.inc(),c(a,function(a,c){b.name=a.name,b.file=c,b.size=c.length,b.type=a.type,d.next()})):a.file?(b.name=a.blob.name,b.file=a.blob,b.size=a.blob.size,b.type=a.type):(b.params||(b.params=[]),b.params.push(g(a.name)+"="+g(a.blob))),b.start=-1,b.end=b.file&&b.file.FileAPIReadPosition||-1,b.retry=0})},toFormData:function(a){this._to(new e,a,function(a,b,d){a.blob&&a.blob.toBlob?(d.inc(),c(a,function(a,c){b.append(a.name,c,a.file),d.next()})):a.file?b.append(a.name,a.blob,a.file):b.append(a.name,a.blob),a.file&&b.append("_"+a.name,a.file)})},toMultipartData:function(b){this._to([],b,function(a,b,d,e){d.inc(),c(a,function(a,c){b.push("--_"+e+('\r\nContent-Disposition: form-data; name="'+a.name+'"'+(a.file?'; filename="'+g(a.file)+'"':"")+(a.file?"\r\nContent-Type: "+(a.type||"application/octet-stream"):"")+"\r\n\r\n"+(a.file?c:g(c))+"\r\n")),d.next()},!0)},a.expando)}},a.Form=f}(FileAPI,window),function(a,b){"use strict";var c=function(){},d=a.document,e=function(a){this.uid=b.uid(),this.xhr={abort:c,getResponseHeader:c,getAllResponseHeaders:c},this.options=a},f={"":1,XML:1,Text:1,Body:1};e.prototype={status:0,statusText:"",constructor:e,getResponseHeader:function(a){return this.xhr.getResponseHeader(a)},getAllResponseHeaders:function(){return this.xhr.getAllResponseHeaders()||{}},end:function(d,e){var f=this,g=f.options;f.end=f.abort=c,f.status=d,e&&(f.statusText=e),b.log("xhr.end:",d,e),g.complete(200==d||201==d?!1:f.statusText||"unknown",f),f.xhr&&f.xhr.node&&setTimeout(function(){var b=f.xhr.node;try{b.parentNode.removeChild(b)}catch(c){}try{delete a[f.uid]}catch(c){}a[f.uid]=f.xhr.node=null},9)},abort:function(){this.end(0,"abort"),this.xhr&&(this.xhr.aborted=!0,this.xhr.abort())},send:function(a){var b=this,c=this.options;a.toData(function(a){c.upload(c,b),b._send.call(b,c,a)},c)},_send:function(c,e){var g,h=this,i=h.uid,j=h.uid+"Load",k=c.url;if(b.log("XHR._send:",e),c.cache||(k+=(~k.indexOf("?")?"&":"?")+b.uid()),e.nodeName){var l=c.jsonp;k=k.replace(/([a-z]+)=(\?)/i,"$1="+i),c.upload(c,h);var m=function(a){if(~k.indexOf(a.origin))try{var c=b.parseJSON(a.data);c.id==i&&n(c.status,c.statusText,c.response)}catch(d){n(0,d.message)}},n=a[i]=function(c,d,e){h.readyState=4,h.responseText=e,h.end(c,d),b.event.off(a,"message",m),a[i]=g=p=a[j]=null};h.xhr.abort=function(){try{p.stop?p.stop():p.contentWindow.stop?p.contentWindow.stop():p.contentWindow.document.execCommand("Stop")}catch(a){}n(0,"abort")},b.event.on(a,"message",m),a[j]=function(){try{var a=p.contentWindow,c=a.document,d=a.result||b.parseJSON(c.body.innerHTML);n(d.status,d.statusText,d.response)}catch(e){b.log("[transport.onload]",e)}},g=d.createElement("div"),g.innerHTML='
'+(l&&c.url.indexOf("=?")<0?'':"")+"
";var o=g.getElementsByTagName("form")[0],p=g.getElementsByTagName("iframe")[0];o.appendChild(e),b.log(o.parentNode.innerHTML),d.body.appendChild(g),h.xhr.node=g,h.readyState=2,o.submit(),o=null}else{if(k=k.replace(/([a-z]+)=(\?)&?/i,""),this.xhr&&this.xhr.aborted)return void b.log("Error: already aborted");if(g=h.xhr=b.getXHR(),e.params&&(k+=(k.indexOf("?")<0?"?":"&")+e.params.join("&")),g.open("POST",k,!0),b.withCredentials&&(g.withCredentials="true"),c.headers&&c.headers["X-Requested-With"]||g.setRequestHeader("X-Requested-With","XMLHttpRequest"),b.each(c.headers,function(a,b){g.setRequestHeader(b,a)}),c._chunked){g.upload&&g.upload.addEventListener("progress",b.throttle(function(a){e.retry||c.progress({type:a.type,total:e.size,loaded:e.start+a.loaded,totalSize:e.size},h,c)},100),!1),g.onreadystatechange=function(){var a=parseInt(g.getResponseHeader("X-Last-Known-Byte"),10);if(h.status=g.status,h.statusText=g.statusText,h.readyState=g.readyState,4==g.readyState){try{for(var d in f)h["response"+d]=g["response"+d]}catch(i){}if(g.onreadystatechange=null,!g.status||g.status-201>0)if(b.log("Error: "+g.status),(!g.status&&!g.aborted||500==g.status||416==g.status)&&++e.retry<=c.chunkUploadRetry){var j=g.status?0:b.chunkNetworkDownRetryTimeout;c.pause(e.file,c),b.log("X-Last-Known-Byte: "+a),a?e.end=a:(e.end=e.start-1,416==g.status&&(e.end=e.end-c.chunkSize)),setTimeout(function(){h._send(c,e)},j)}else h.end(g.status);else e.retry=0,e.end==e.size-1?h.end(g.status):(b.log("X-Last-Known-Byte: "+a),a&&(e.end=a),e.file.FileAPIReadPosition=e.end,setTimeout(function(){h._send(c,e)},0));g=null}},e.start=e.end+1,e.end=Math.max(Math.min(e.start+c.chunkSize,e.size)-1,e.start);var q=e.file,r=(q.slice||q.mozSlice||q.webkitSlice).call(q,e.start,e.end+1);e.size&&!r.size?setTimeout(function(){h.end(-1)}):(g.setRequestHeader("Content-Range","bytes "+e.start+"-"+e.end+"/"+e.size),g.setRequestHeader("Content-Disposition","attachment; filename="+encodeURIComponent(e.name)),g.setRequestHeader("Content-Type",e.type||"application/octet-stream"),g.send(r)),q=r=null}else if(g.upload&&g.upload.addEventListener("progress",b.throttle(function(a){c.progress(a,h,c)},100),!1),g.onreadystatechange=function(){if(h.status=g.status,h.statusText=g.statusText,h.readyState=g.readyState,4==g.readyState){for(var a in f)h["response"+a]=g["response"+a];if(g.onreadystatechange=null,!g.status||g.status>201)if(b.log("Error: "+g.status),(!g.status&&!g.aborted||500==g.status)&&(c.retry||0)=0?a+"px":a}function d(a){var b,c=f.createElement("canvas"),d=!1;try{b=c.getContext("2d"),b.drawImage(a,0,0,1,1),d=255!=b.getImageData(0,0,1,1).data[4]}catch(e){}return d}var e=a.URL||a.webkitURL,f=a.document,g=a.navigator,h=g.getUserMedia||g.webkitGetUserMedia||g.mozGetUserMedia||g.msGetUserMedia,i=!!h;b.support.media=i;var j=function(a){this.video=a};j.prototype={isActive:function(){return!!this._active},start:function(a){var b,c,f=this,i=f.video,j=function(d){f._active=!d,clearTimeout(c),clearTimeout(b),a&&a(d,f)};h.call(g,{video:!0},function(a){f.stream=a,i.src=e.createObjectURL(a),b=setInterval(function(){d(i)&&j(null)},1e3),c=setTimeout(function(){j("timeout")},5e3),i.play()},j)},stop:function(){try{this._active=!1,this.video.pause(),this.stream.stop()}catch(a){}},shot:function(){return new k(this.video)}},j.get=function(a){return new j(a.firstChild)},j.publish=function(d,e,g){"function"==typeof e&&(g=e,e={}),e=b.extend({},{width:"100%",height:"100%",start:!0},e),d.jquery&&(d=d[0]);var h=function(a){if(a)g(a);else{var b=j.get(d);e.start?b.start(g):g(null,b)}};if(d.style.width=c(e.width),d.style.height=c(e.height),b.html5&&i){var k=f.createElement("video");k.style.width=c(e.width),k.style.height=c(e.height),a.jQuery?jQuery(d).empty():d.innerHTML="",d.appendChild(k),h()}else j.fallback(d,e,h)},j.fallback=function(a,b,c){c("not_support_camera")};var k=function(a){var c=a.nodeName?b.Image.toCanvas(a):a,d=b.Image(c);return d.type="image/png",d.width=c.width,d.height=c.height,d.size=c.width*c.height*4,d};j.Shot=k,b.Camera=j}(window,FileAPI),function(a,b,c){"use strict";var d=a.document,e=a.location,f=a.navigator,g=c.each;c.support.flash=function(){var b=f.mimeTypes,d=!1;if(f.plugins&&"object"==typeof f.plugins["Shockwave Flash"])d=f.plugins["Shockwave Flash"].description&&!(b&&b["application/x-shockwave-flash"]&&!b["application/x-shockwave-flash"].enabledPlugin); +else try{d=!(!a.ActiveXObject||!new ActiveXObject("ShockwaveFlash.ShockwaveFlash"))}catch(g){c.log("Flash -- does not supported.")}return d&&/^file:/i.test(e)&&c.log("[warn] Flash does not work on `file:` protocol."),d}(),c.support.flash&&(0||!c.html5||!c.support.html5||c.cors&&!c.support.cors||c.media&&!c.support.media)&&function(){function h(a){return('').replace(/#(\w+)#/gi,function(b,c){return a[c]})}function i(a,b){if(a&&a.style){var c,d;for(c in b){d=b[c],"number"==typeof d&&(d+="px");try{a.style[c]=d}catch(e){}}}}function j(a,b){g(b,function(b,c){var d=a[c];a[c]=function(){return this.parent=d,b.apply(this,arguments)}})}function k(a){return a&&!a.flashId}function l(a){var b=a.wid=c.uid();return v._fn[b]=a,"FileAPI.Flash._fn."+b}function m(a){try{v._fn[a.wid]=null,delete v._fn[a.wid]}catch(b){}}function n(a,b){if(!u.test(a)){if(/^\.\//.test(a)||"/"!=a.charAt(0)){var c=e.pathname;c=c.substr(0,c.lastIndexOf("/")),a=(c+"/"+a).replace("/./","/")}"//"!=a.substr(0,2)&&(a="//"+e.host+a),u.test(a)||(a=e.protocol+a)}return b&&(a+=(/\?/.test(a)?"&":"?")+b),a}function o(a,b,e){function f(){try{var a=v.get(j);a.setImage(b)}catch(d){c.log('[err] FlashAPI.Preview.setImage -- can not set "base64":',d)}}var g,j=c.uid(),k=d.createElement("div"),o=10;for(g in a)k.setAttribute(g,a[g]),k[g]=a[g];i(k,a),a.width="100%",a.height="100%",k.innerHTML=h(c.extend({id:j,src:n(c.flashImageUrl,"r="+c.uid()),wmode:"opaque",flashvars:"scale="+a.scale+"&callback="+l(function p(){return m(p),--o>0&&f(),!0})},a)),e(!1,k),k=null}function p(a){return{id:a.id,name:a.name,matrix:a.matrix,flashId:a.flashId}}function q(a){function b(a){var b,c;if(b=c=0,a.offsetParent)do b+=a.offsetLeft,c+=a.offsetTop;while(a=a.offsetParent);return{left:b,top:c}}a.getBoundingClientRect(),d.body,(a&&a.ownerDocument).documentElement;return{top:b(a).top,left:b(a).left,width:a.offsetWidth,height:a.offsetHeight}}var r=c.uid(),s=0,t={},u=/^https?:/i,v={_fn:{},publish:function(a,b,d){d=d||{},a.innerHTML=h({id:b,src:n(c.flashUrl,"r="+c.version),wmode:d.camera?"":"transparent",flashvars:"callback="+(d.onEvent||"FileAPI.Flash.onEvent")+"&flashId="+b+"&storeKey="+f.userAgent.match(/\d/gi).join("")+"_"+c.version+(v.isReady||(c.pingUrl?"&ping="+c.pingUrl:""))+"&timeout="+c.flashAbortTimeout+(d.camera?"&useCamera="+n(c.flashWebcamUrl):"")+"&debug="+(c.debug?"1":"")},d)},init:function(){var a=d.body&&d.body.firstChild;if(a)do if(1==a.nodeType){c.log("FlashAPI.state: awaiting");var b=d.createElement("div");return b.id="_"+r,i(b,{top:1,right:1,width:5,height:5,position:"absolute",zIndex:1e6+""}),a.parentNode.insertBefore(b,a),void v.publish(b,r)}while(a=a.nextSibling);10>s&&setTimeout(v.init,50*++s)},ready:function(){c.log("FlashAPI.state: ready"),v.ready=c.F,v.isReady=!0,v.patch(),v.patchCamera&&v.patchCamera(),c.event.on(d,"mouseover",v.mouseover),c.event.on(d,"click",function(a){v.mouseover(a)&&(a.preventDefault?a.preventDefault():a.returnValue=!0)})},getEl:function(){return d.getElementById("_"+r)},getWrapper:function(a){do if(/js-fileapi-wrapper/.test(a.className))return a;while((a=a.parentNode)&&a!==d.body)},disableMouseover:!1,mouseover:function(a){if(!v.disableMouseover){var b=c.event.fix(a).target;if(/input/i.test(b.nodeName)&&"file"==b.type&&!b.disabled){var e=b.getAttribute(r),f=v.getWrapper(b);if(c.multiFlash){if("i"==e||"r"==e)return!1;if("p"!=e){b.setAttribute(r,"i");var g=d.createElement("div");if(!f)return void c.log("[err] FlashAPI.mouseover: js-fileapi-wrapper not found");i(g,{top:0,left:0,width:b.offsetWidth,height:b.offsetHeight,zIndex:1e6+"",position:"absolute"}),f.appendChild(g),v.publish(g,c.uid()),b.setAttribute(r,"p")}return!0}if(f){var h=q(f);i(v.getEl(),h),v.curInp=b}}else/object|embed/i.test(b.nodeName)||i(v.getEl(),{top:1,left:1,width:5,height:5})}},onEvent:function(a){var b=a.type;if("ready"==b){try{v.getInput(a.flashId).setAttribute(r,"r")}catch(d){}return v.ready(),setTimeout(function(){v.mouseenter(a)},50),!0}"ping"===b?c.log("(flash -> js).ping:",[a.status,a.savedStatus],a.error):"log"===b?c.log("(flash -> js).log:",a.target):b in v&&setTimeout(function(){c.log("FlashAPI.event."+a.type+":",a),v[b](a)},1)},mouseDown:function(){v.disableMouseover=!0},cancel:function(){v.disableMouseover=!1},mouseenter:function(a){var b=v.getInput(a.flashId);if(b){v.cmd(a,"multiple",null!=b.getAttribute("multiple"));var d=[],e={};g((b.getAttribute("accept")||"").split(/,\s*/),function(a){c.accept[a]&&g(c.accept[a].split(" "),function(a){e[a]=1})}),g(e,function(a,b){d.push(b)}),v.cmd(a,"accept",d.length?d.join(",")+","+d.join(",").toUpperCase():"*")}},get:function(b){return d[b]||a[b]||d.embeds[b]},getInput:function(a){if(!c.multiFlash)return v.curInp;try{var b=v.getWrapper(v.get(a));if(b)return b.getElementsByTagName("input")[0]}catch(d){c.log('[err] Can not find "input" by flashId:',a,d)}},select:function(a){try{var e,f=v.getInput(a.flashId),h=c.uid(f),i=a.target.files;g(i,function(a){c.checkFileObj(a)}),t[h]=i,d.createEvent?(e=d.createEvent("Event"),e.files=i,e.initEvent("change",!0,!0),f.dispatchEvent(e)):b?b(f).trigger({type:"change",files:i}):(e=d.createEventObject(),e.files=i,f.fireEvent("onchange",e))}finally{v.disableMouseover=!1}},interval:null,cmd:function(a,b,c,d){v.uploadInProgress&&v.readInProgress?setTimeout(function(){v.cmd(a,b,c,d)},100):this.cmdFn(a,b,c,d)},cmdFn:function(a,b,d,e){try{return c.log("(js -> flash)."+b+":",d),v.get(a.flashId||a).cmd(b,d)}catch(f){c.log("(js -> flash).onError:",f),e||setTimeout(function(){v.cmd(a,b,d,!0)},50)}},patch:function(){c.flashEngine=!0,j(c,{readAsDataURL:function(a,b){k(a)?this.parent.apply(this,arguments):(c.log("FlashAPI.readAsBase64"),v.readInProgress=!0,v.cmd(a,"readAsBase64",{id:a.id,callback:l(function d(e,f){v.readInProgress=!1,m(d),c.log("FlashAPI.readAsBase64:",e),b({type:e?"error":"load",error:e,result:"data:"+a.type+";base64,"+f})})}))},readAsText:function(b,d,e){e?c.log("[warn] FlashAPI.readAsText not supported `encoding` param"):e=d,c.readAsDataURL(b,function(b){if("load"==b.type)try{b.result=a.atob(b.result.split(";base64,")[1])}catch(c){b.type="error",b.error=c.toString()}e(b)})},getFiles:function(a,b,d){if(d)return c.filterFiles(c.getFiles(a),b,d),null;var e=c.isArray(a)?a:t[c.uid(a.target||a.srcElement||a)];return e?(b&&(b=c.getFilesFilter(b),e=c.filter(e,function(a){return b.test(a.name)})),e):this.parent.apply(this,arguments)},getInfo:function(a,b){if(k(a))this.parent.apply(this,arguments);else if(a.isShot)b(null,a.info={width:a.width,height:a.height});else{if(!a.__info){var d=a.__info=c.defer();d.resolve(null,a.info=null)}a.__info.then(b)}}}),c.support.transform=!0,c.Image&&j(c.Image.prototype,{get:function(a,b){return this.set({scaleMode:b||"noScale"}),this.parent(a)},_load:function(a,b){if(c.log("FlashAPI.Image._load:",a),k(a))this.parent.apply(this,arguments);else{var d=this;c.getInfo(a,function(c){b.call(d,c,a)})}},_apply:function(a,b){if(c.log("FlashAPI.Image._apply:",a),k(a))this.parent.apply(this,arguments);else{var d=this.getMatrix(a.info),e=b;v.cmd(a,"imageTransform",{id:a.id,matrix:d,callback:l(function f(g,h){c.log("FlashAPI.Image._apply.callback:",g),m(f),g?e(g):c.support.html5||c.support.dataURI&&!(h.length>3e4)?(d.filter&&(e=function(a,e){a?b(a):c.Image.applyFilter(e,d.filter,function(){b(a,this.canvas)})}),c.newImage("data:"+a.type+";base64,"+h,e)):o({width:d.deg%180?d.dh:d.dw,height:d.deg%180?d.dw:d.dh,scale:d.scaleMode},h,e)})})}},toData:function(a){var b=this.file,d=b.info,e=this.getMatrix(d);c.log("FlashAPI.Image.toData"),k(b)?this.parent.apply(this,arguments):("auto"==e.deg&&(e.deg=c.Image.exifOrientation[d&&d.exif&&d.exif.Orientation]||0),a.call(this,!b.info,{id:b.id,flashId:b.flashId,name:b.name,type:b.type,matrix:e}))}}),c.Image&&j(c.Image,{fromDataURL:function(a,b,d){!c.support.dataURI||a.length>3e4?o(c.extend({scale:"exactFit"},b),a.replace(/^data:[^,]+,/,""),function(a,b){d(b)}):this.parent(a,b,d)}}),j(c.Form.prototype,{toData:function(a){for(var b=this.items,d=b.length;d--;)if(b[d].file&&k(b[d].blob))return this.parent.apply(this,arguments);c.log("FlashAPI.Form.toData"),a(b)}}),j(c.XHR.prototype,{_send:function(a,b){if(b.nodeName||b.append&&c.support.html5||c.isArray(b)&&"string"==typeof b[0])return this.parent.apply(this,arguments);var d,e,f={},h={},i=this;if(g(b,function(a){a.file?(h[a.name]=a=p(a.blob),e=a.id,d=a.flashId):f[a.name]=a.blob}),e||(d=r),!d)return c.log("[err] FlashAPI._send: flashId -- undefined"),this.parent.apply(this,arguments);c.log("FlashAPI.XHR._send: "+d+" -> "+e),i.xhr={headers:{},abort:function(){v.uploadInProgress=!1,v.cmd(d,"abort",{id:e})},getResponseHeader:function(a){return this.headers[a]},getAllResponseHeaders:function(){return this.headers}};var j=c.queue(function(){v.uploadInProgress=!0,v.cmd(d,"upload",{url:n(a.url.replace(/([a-z]+)=(\?)&?/i,"")),data:f,files:e?h:null,headers:a.headers||{},callback:l(function b(d){var e=d.type,f=d.result;c.log("FlashAPI.upload."+e),"progress"==e?(d.loaded=Math.min(d.loaded,d.total),d.lengthComputable=!0,a.progress(d)):"complete"==e?(v.uploadInProgress=!1,m(b),"string"==typeof f&&(i.responseText=f.replace(/%22/g,'"').replace(/%5c/g,"\\").replace(/%26/g,"&").replace(/%25/g,"%")),i.end(d.status||200)):("abort"==e||"error"==e)&&(v.uploadInProgress=!1,i.end(d.status||0,d.message),m(b))})})});g(h,function(a){j.inc(),c.getInfo(a,j.next)}),j.check()}})}};c.Flash=v,c.newImage("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw==",function(a,b){c.support.dataURI=!(1!=b.width||1!=b.height),v.init()})}()}(window,window.jQuery,FileAPI),function(a,b,c){"use strict";var d=c.each,e=[];c.support.flash&&c.media&&!c.support.media&&!function(){function a(a){var b=a.wid=c.uid();return c.Flash._fn[b]=a,"FileAPI.Flash._fn."+b}function b(a){try{c.Flash._fn[a.wid]=null,delete c.Flash._fn[a.wid]}catch(b){}}var f=c.Flash;c.extend(c.Flash,{patchCamera:function(){c.Camera.fallback=function(d,e,g){var h=c.uid();c.log("FlashAPI.Camera.publish: "+h),f.publish(d,h,c.extend(e,{camera:!0,onEvent:a(function i(a){"camera"===a.type&&(b(i),a.error?(c.log("FlashAPI.Camera.publish.error: "+a.error),g(a.error)):(c.log("FlashAPI.Camera.publish.success: "+h),g(null)))})}))},d(e,function(a){c.Camera.fallback.apply(c.Camera,a)}),e=[],c.extend(c.Camera.prototype,{_id:function(){return this.video.id},start:function(d){var e=this;f.cmd(this._id(),"camera.on",{callback:a(function g(a){b(g),a.error?(c.log("FlashAPI.camera.on.error: "+a.error),d(a.error,e)):(c.log("FlashAPI.camera.on.success: "+e._id()),e._active=!0,d(null,e))})})},stop:function(){this._active=!1,f.cmd(this._id(),"camera.off")},shot:function(){c.log("FlashAPI.Camera.shot:",this._id());var a=c.Flash.cmd(this._id(),"shot",{});return a.type="image/png",a.flashId=this._id(),a.isShot=!0,new c.Camera.Shot(a)}})}}),c.Camera.fallback=function(){e.push(arguments)}}()}(window,window.jQuery,FileAPI),"function"==typeof define&&define.amd&&define("FileAPI",[],function(){return FileAPI}); \ No newline at end of file diff --git a/static/html/bower_components/angularjs-file-upload/ng-file-upload-all.min.js b/static/html/bower_components/angularjs-file-upload/ng-file-upload-all.min.js new file mode 100644 index 00000000..8647d6e4 --- /dev/null +++ b/static/html/bower_components/angularjs-file-upload/ng-file-upload-all.min.js @@ -0,0 +1,4 @@ +/*! 12.0.1 */ +!function(){function a(a,b){window.XMLHttpRequest.prototype[a]=b(window.XMLHttpRequest.prototype[a])}function b(a,b,c){try{Object.defineProperty(a,b,{get:c})}catch(d){}}if(window.FileAPI||(window.FileAPI={}),!window.XMLHttpRequest)throw"AJAX is not supported. XMLHttpRequest is not defined.";if(FileAPI.shouldLoad=!window.FormData||FileAPI.forceLoad,FileAPI.shouldLoad){var c=function(a){if(!a.__listeners){a.upload||(a.upload={}),a.__listeners=[];var b=a.upload.addEventListener;a.upload.addEventListener=function(c,d){a.__listeners[c]=d,b&&b.apply(this,arguments)}}};a("open",function(a){return function(b,d,e){c(this),this.__url=d;try{a.apply(this,[b,d,e])}catch(f){f.message.indexOf("Access is denied")>-1&&(this.__origError=f,a.apply(this,[b,"_fix_for_ie_crossdomain__",e]))}}}),a("getResponseHeader",function(a){return function(b){return this.__fileApiXHR&&this.__fileApiXHR.getResponseHeader?this.__fileApiXHR.getResponseHeader(b):null==a?null:a.apply(this,[b])}}),a("getAllResponseHeaders",function(a){return function(){return this.__fileApiXHR&&this.__fileApiXHR.getAllResponseHeaders?this.__fileApiXHR.getAllResponseHeaders():null==a?null:a.apply(this)}}),a("abort",function(a){return function(){return this.__fileApiXHR&&this.__fileApiXHR.abort?this.__fileApiXHR.abort():null==a?null:a.apply(this)}}),a("setRequestHeader",function(a){return function(b,d){if("__setXHR_"===b){c(this);var e=d(this);e instanceof Function&&e(this)}else this.__requestHeaders=this.__requestHeaders||{},this.__requestHeaders[b]=d,a.apply(this,arguments)}}),a("send",function(a){return function(){var c=this;if(arguments[0]&&arguments[0].__isFileAPIShim){var d=arguments[0],e={url:c.__url,jsonp:!1,cache:!0,complete:function(a,d){a&&angular.isString(a)&&-1!==a.indexOf("#2174")&&(a=null),c.__completed=!0,!a&&c.__listeners.load&&c.__listeners.load({type:"load",loaded:c.__loaded,total:c.__total,target:c,lengthComputable:!0}),!a&&c.__listeners.loadend&&c.__listeners.loadend({type:"loadend",loaded:c.__loaded,total:c.__total,target:c,lengthComputable:!0}),"abort"===a&&c.__listeners.abort&&c.__listeners.abort({type:"abort",loaded:c.__loaded,total:c.__total,target:c,lengthComputable:!0}),void 0!==d.status&&b(c,"status",function(){return 0===d.status&&a&&"abort"!==a?500:d.status}),void 0!==d.statusText&&b(c,"statusText",function(){return d.statusText}),b(c,"readyState",function(){return 4}),void 0!==d.response&&b(c,"response",function(){return d.response});var e=d.responseText||(a&&0===d.status&&"abort"!==a?a:void 0);b(c,"responseText",function(){return e}),b(c,"response",function(){return e}),a&&b(c,"err",function(){return a}),c.__fileApiXHR=d,c.onreadystatechange&&c.onreadystatechange(),c.onload&&c.onload()},progress:function(a){if(a.target=c,c.__listeners.progress&&c.__listeners.progress(a),c.__total=a.total,c.__loaded=a.loaded,a.total===a.loaded){var b=this;setTimeout(function(){c.__completed||(c.getAllResponseHeaders=function(){},b.complete(null,{status:204,statusText:"No Content"}))},FileAPI.noContentTimeout||1e4)}},headers:c.__requestHeaders};e.data={},e.files={};for(var f=0;f-1){e=h.substring(0,g+1);break}null==FileAPI.staticPath&&(FileAPI.staticPath=e),i.setAttribute("src",d||e+"FileAPI.min.js"),document.getElementsByTagName("head")[0].appendChild(i)}FileAPI.ngfFixIE=function(d,e,f){if(!b())throw'Adode Flash Player need to be installed. To check ahead use "FileAPI.hasFlash"';var g=function(){var b=e.parent();d.attr("disabled")?b&&b.removeClass("js-fileapi-wrapper"):(e.attr("__ngf_flash_")||(e.unbind("change"),e.unbind("click"),e.bind("change",function(a){h.apply(this,[a]),f.apply(this,[a])}),e.attr("__ngf_flash_","true")),b.addClass("js-fileapi-wrapper"),a(d)||(b.css("position","absolute").css("top",c(d[0]).top+"px").css("left",c(d[0]).left+"px").css("width",d[0].offsetWidth+"px").css("height",d[0].offsetHeight+"px").css("filter","alpha(opacity=0)").css("display",d.css("display")).css("overflow","hidden").css("z-index","900000").css("visibility","visible"),e.css("width",d[0].offsetWidth+"px").css("height",d[0].offsetHeight+"px").css("position","absolute").css("top","0px").css("left","0px")))};d.bind("mouseenter",g);var h=function(a){for(var b=FileAPI.getFiles(a),c=0;c0},this.rename=function(a,b){return a.ngfName=b,a},this.jsonBlob=function(a){null==a||angular.isString(a)||(a=JSON.stringify(a));var b=new window.Blob([a],{type:"application/json"});return b._ngfBlob=!0,b},this.json=function(a){return angular.toJson(a)},this.isFile=function(a){return null!=a&&(a instanceof window.Blob||a.flashId&&a.name&&a.size)},this.upload=function(a,b){function c(b,c){if(b._ngfBlob)return b;if(a._file=a._file||b,null!=a._start&&g){a._end&&a._end>=b.size&&(a._finished=!0,a._end=b.size);var d=b.slice(a._start,a._end||b.size);return d.name=b.name,d.ngfName=b.ngfName,a._chunkSize&&(c.append("_chunkSize",a._chunkSize),c.append("_currentChunkSize",a._end-a._start),c.append("_chunkNumber",Math.floor(a._start/a._chunkSize)),c.append("_totalSize",a._file.size)),d}return b}function h(b,d,e){if(void 0!==d)if(angular.isDate(d)&&(d=d.toISOString()),angular.isString(d))b.append(e,d);else if(f.isFile(d)){var g=c(d,b),i=e.split(",");i[1]&&(g.ngfName=i[1].replace(/^\s+|\s+$/g,""),e=i[0]),a._fileKey=a._fileKey||e,b.append(e,g,g.ngfName||g.name)}else if(angular.isObject(d)){if(d.$$ngfCircularDetection)throw"ngFileUpload: Circular reference in config.data. Make sure specified data for Upload.upload() has no circular reference: "+e;d.$$ngfCircularDetection=!0;try{for(var j in d)if(d.hasOwnProperty(j)&&"$$ngfCircularDetection"!==j){var k=null==a.objectKey?"[i]":a.objectKey;d.length&&parseInt(j)>-1&&(k=null==a.arrayKey?k:a.arrayKey),h(b,d[j],e+k.replace(/[ik]/g,j))}}finally{delete d.$$ngfCircularDetection}}else b.append(e,d)}function i(){a._chunkSize=f.translateScalars(a.resumeChunkSize),a._chunkSize=a._chunkSize?parseInt(a._chunkSize.toString()):null,a.headers=a.headers||{},a.headers["Content-Type"]=void 0,a.transformRequest=a.transformRequest?angular.isArray(a.transformRequest)?a.transformRequest:[a.transformRequest]:[],a.transformRequest.push(function(b){var c,d=new window.FormData;b=b||a.fields||{},a.file&&(b.file=a.file);for(c in b)if(b.hasOwnProperty(c)){var e=b[c];a.formDataAppender?a.formDataAppender(d,c,e):h(d,e,c)}return d})}return b||(a=e(a)),a._isDigested||(a._isDigested=!0,i()),d(a)},this.http=function(b){return b=e(b),b.transformRequest=b.transformRequest||function(b){return window.ArrayBuffer&&b instanceof window.ArrayBuffer||b instanceof window.Blob?b:a.defaults.transformRequest[0].apply(this,arguments)},b._chunkSize=f.translateScalars(b.resumeChunkSize),b._chunkSize=b._chunkSize?parseInt(b._chunkSize.toString()):null,d(b)},this.translateScalars=function(a){if(angular.isString(a)){if(a.search(/kb/i)===a.length-2)return parseFloat(1024*a.substring(0,a.length-2));if(a.search(/mb/i)===a.length-2)return parseFloat(1048576*a.substring(0,a.length-2));if(a.search(/gb/i)===a.length-2)return parseFloat(1073741824*a.substring(0,a.length-2));if(a.search(/b/i)===a.length-1)return parseFloat(a.substring(0,a.length-1));if(a.search(/s/i)===a.length-1)return parseFloat(a.substring(0,a.length-1));if(a.search(/m/i)===a.length-1)return parseFloat(60*a.substring(0,a.length-1));if(a.search(/h/i)===a.length-1)return parseFloat(3600*a.substring(0,a.length-1))}return a},this.urlToBlob=function(c){var d=b.defer();return a({url:c,method:"get",responseType:"arraybuffer"}).then(function(a){var b=new Uint8Array(a.data),c=a.headers("content-type")||"image/WebP",e=new window.Blob([b],{type:c});d.resolve(e)},function(a){d.reject(a)}),d.promise},this.setDefaults=function(a){this.defaults=a||{}},this.defaults={},this.version=ngFileUpload.version}]),ngFileUpload.service("Upload",["$parse","$timeout","$compile","$q","UploadExif",function(a,b,c,d,e){function f(a,b,c){var e=[h.emptyPromise()];return angular.forEach(a,function(d,f){0===d.type.indexOf("image/jpeg")&&h.attrGetter("ngfFixOrientation",b,c,{$file:d})&&e.push(h.happyPromise(h.applyExifRotation(d),d).then(function(b){a.splice(f,1,b)}))}),d.all(e)}function g(a,b,c){function e(d,e){if(0===d.type.indexOf("image")){if(f.pattern&&!h.validatePattern(d,f.pattern))return;var i=h.resize(d,f.width,f.height,f.quality,f.type,f.ratio,f.centerCrop,function(a,e){return h.attrGetter("ngfResizeIf",b,c,{$width:a,$height:e,$file:d})},f.restoreExif!==!1);g.push(i),i.then(function(b){a.splice(e,1,b)},function(a){d.$error="resize",d.$errorParam=(a?(a.message?a.message:a)+": ":"")+(d&&d.name)})}}var f=h.attrGetter("ngfResize",b,c);if(!(f&&angular.isObject(f)&&h.isResizeSupported()&&a.length))return h.emptyPromise();for(var g=[h.emptyPromise()],i=0;i-1:!0},h.emptyPromise=function(){var a=d.defer(),c=arguments;return b(function(){a.resolve.apply(a,c)}),a.promise},h.rejectPromise=function(){var a=d.defer(),c=arguments;return b(function(){a.reject.apply(a,c)}),a.promise},h.happyPromise=function(a,c){var e=d.defer();return a.then(function(a){e.resolve(a)},function(a){b(function(){throw a}),e.resolve(c)}),e.promise},h.updateModel=function(c,d,e,i,j,k,l){function m(f,g,j,l,m){d.$$ngfPrevValidFiles=f,d.$$ngfPrevInvalidFiles=g;var n=f&&f.length?f[0]:null,o=g&&g.length?g[0]:null;c&&(h.applyModelValidation(c,f),c.$setViewValue(m?n:f)),i&&a(i)(e,{$files:f,$file:n,$newFiles:j,$duplicateFiles:l,$invalidFiles:g,$invalidFile:o,$event:k});var p=h.attrGetter("ngfModelInvalid",d);p&&b(function(){a(p).assign(e,m?o:g)}),b(function(){})}function n(){function a(a,b){return a.name===b.name&&(a.$ngfOrigSize||a.size)===(b.$ngfOrigSize||b.size)&&a.type===b.type}function b(b){var c;for(c=0;c2){var c=d.defaults.androidFixMinorVersion||4;return parseInt(b[1])<4||parseInt(b[1])===c&&parseInt(b[2])');n(a);var c=angular.element("");return c.css("visibility","hidden").css("position","absolute").css("overflow","hidden").css("width","0px").css("height","0px").css("border","none").css("margin","0px").css("padding","0px").attr("tabindex","-1"),g.push({el:b,ref:c}),document.body.appendChild(c.append(a)[0]),a}function p(c){if(b.attr("disabled"))return!1;if(!t("ngfSelectDisabled",a)){var d=q(c);if(null!=d)return d;r(c);try{k()||document.body.contains(w[0])||(g.push({el:b,ref:w.parent()}),document.body.appendChild(w.parent()[0]),w.bind("change",m))}catch(f){}return e(navigator.userAgent)?setTimeout(function(){w[0].click()},0):w[0].click(),!1}}function q(a){var b=a.changedTouches||a.originalEvent&&a.originalEvent.changedTouches;if("touchstart"===a.type)return v=b?b[0].clientY:0,!0;if(a.stopPropagation(),a.preventDefault(),"touchend"===a.type){var c=b?b[0].clientY:0;if(Math.abs(c-v)>20)return!1}}function r(b){j.shouldUpdateOn("click",c,a)&&w.val()&&(w.val(null),j.updateModel(d,c,a,l(),null,b,!0))}function s(a){if(w&&!w.attr("__ngf_ie10_Fix_")){if(!w[0].parentNode)return void(w=null);a.preventDefault(),a.stopPropagation(),w.unbind("click");var b=w.clone();return w.replaceWith(b),w=b,w.attr("__ngf_ie10_Fix_","true"),w.bind("change",m),w.bind("click",s),w[0].click(),!1}w.removeAttr("__ngf_ie10_Fix_")}var t=function(a,b){return j.attrGetter(a,c,b)};j.registerModelChangeValidator(d,c,a);var u=[];u.push(a.$watch(t("ngfMultiple"),function(){w.attr("multiple",t("ngfMultiple",a))})),u.push(a.$watch(t("ngfCapture"),function(){w.attr("capture",t("ngfCapture",a))})),u.push(a.$watch(t("ngfAccept"),function(){w.attr("accept",t("ngfAccept",a))})),c.$observe("accept",function(){w.attr("accept",t("accept"))}),u.push(function(){c.$$observers&&delete c.$$observers.accept});var v=0,w=b;k()||(w=o()),w.bind("change",m),k()?b.bind("click",r):b.bind("click touchstart touchend",p),-1!==navigator.appVersion.indexOf("MSIE 10")&&w.bind("click",s),d&&d.$formatters.push(function(a){return(null==a||0===a.length)&&w.val()&&w.val(null),a}),a.$on("$destroy",function(){k()||w.parent().remove(),angular.forEach(u,function(a){a()})}),h(function(){for(var a=0;ab||d.blobUrls.length>e)&&d.blobUrls.length>1;){var h=d.blobUrls.splice(0,1)[0];c.revokeObjectURL(h.url),d.blobUrlsTotalSize-=h.size}}})}else{var i=new FileReader;i.onload=function(c){b(function(){a.$ngfDataUrl=c.target.result,g.resolve(c.target.result,a),b(function(){delete a.$ngfDataUrl},1e3)})},i.onerror=function(){b(function(){a.$ngfDataUrl="",g.reject()})},i.readAsDataURL(a)}}else b(function(){a[e?"$ngfDataUrl":"$ngfBlobUrl"]="",g.reject()})}),f=e?a.$$ngfDataUrlPromise=g.promise:a.$$ngfBlobUrlPromise=g.promise,f["finally"](function(){delete a[e?"$$ngfDataUrlPromise":"$$ngfBlobUrlPromise"]}),f},d}]),ngFileUpload.directive("ngfSrc",["Upload","$timeout",function(a,c){return{restrict:"AE",link:function(d,e,f){b(a,c,d,e,f,"ngfSrc",a.attrGetter("ngfResize",f,d),!1)}}}]),ngFileUpload.directive("ngfBackground",["Upload","$timeout",function(a,c){return{restrict:"AE",link:function(d,e,f){b(a,c,d,e,f,"ngfBackground",a.attrGetter("ngfResize",f,d),!0)}}}]),ngFileUpload.directive("ngfThumbnail",["Upload","$timeout",function(a,c){return{restrict:"AE",link:function(d,e,f){var g=a.attrGetter("ngfSize",f,d);b(a,c,d,e,f,"ngfThumbnail",g,a.attrGetter("ngfAsBackground",f,d))}}}]),ngFileUpload.config(["$compileProvider",function(a){a.imgSrcSanitizationWhitelist&&a.imgSrcSanitizationWhitelist(/^\s*(https?|ftp|mailto|tel|local|file|data|blob):/),a.aHrefSanitizationWhitelist&&a.aHrefSanitizationWhitelist(/^\s*(https?|ftp|mailto|tel|local|file|data|blob):/)}]),ngFileUpload.filter("ngfDataUrl",["UploadDataUrl","$sce",function(a,b){return function(c,d,e){if(angular.isString(c))return b.trustAsResourceUrl(c);var f=c&&((d?c.$ngfDataUrl:c.$ngfBlobUrl)||c.$ngfDataUrl);return c&&!f?(!c.$ngfDataUrlFilterInProgress&&angular.isObject(c)&&(c.$ngfDataUrlFilterInProgress=!0,a.dataUrl(c,d)),""):(c&&delete c.$ngfDataUrlFilterInProgress,(c&&f?e?b.trustAsResourceUrl(f):f:c)||"")}}])}(),ngFileUpload.service("UploadValidate",["UploadDataUrl","$q","$timeout",function(a,b,c){function d(a){var b="",c=[];if(a.length>2&&"/"===a[0]&&"/"===a[a.length-1])b=a.substring(1,a.length-1);else{var e=a.split(",");if(e.length>1)for(var f=0;f|:\\-]","g"),"\\$&")+"$",b=b.replace(/\\\*/g,".*").replace(/\\\?/g,"."))}return{regexp:b,excludes:c}}function e(a,b){null==b||a.$dirty||(a.$setDirty?a.$setDirty():a.$dirty=!0)}var f=a;return f.validatePattern=function(a,b){if(!b)return!0;var c=d(b),e=!0;if(c.regexp&&c.regexp.length){var f=new RegExp(c.regexp,"i");e=null!=a.type&&f.test(a.type)||null!=a.name&&f.test(a.name)}for(var g=c.excludes.length;g--;){var h=new RegExp(c.excludes[g],"i");e=e&&(null==a.type||h.test(a.type))&&(null==a.name||h.test(a.name))}return e},f.ratioToFloat=function(a){var b=a.toString(),c=b.search(/[x:]/i);return b=c>-1?parseFloat(b.substring(0,c))/parseFloat(b.substring(c+1)):parseFloat(b)},f.registerModelChangeValidator=function(a,b,c){a&&a.$formatters.push(function(d){a.$dirty&&(d&&!angular.isArray(d)&&(d=[d]),f.validate(d,d?d.length:0,a,b,c).then(function(){f.applyModelValidation(a,d)}))})},f.applyModelValidation=function(a,b){e(a,b),angular.forEach(a.$ngfValidations,function(b){a.$setValidity(b.name,b.valid)})},f.getValidationAttr=function(a,b,c,d,e){var g="ngf"+c[0].toUpperCase()+c.substr(1),h=f.attrGetter(g,a,b,{$file:e});if(null==h&&(h=f.attrGetter("ngfValidate",a,b,{$file:e}))){var i=(d||c).split(".");h=h[i[0]],i.length>1&&(h=h&&h[i[1]])}return h},f.validate=function(a,c,d,e,g){function h(b,c,h){if(a){for(var i=a.length,j=null;i--;){var k=a[i];if(k){var l=f.getValidationAttr(e,g,b,c,k);null!=l&&(h(k,l)||(k.$error=b,(k.$errorMessages=k.$errorMessages||{}).name=!0,k.$errorParam=l,a.splice(i,1),j=!1))}}null!==j&&d.$ngfValidations.push({name:b,valid:j})}}function i(c,h,i,k,l){function m(a,b,d){null!=d?k(b,d).then(function(e){l(e,d)?a.resolve():(b.$error=c,(b.$errorMessages=b.$errorMessages||{}).name=!0,b.$errorParam=d,a.reject())},function(){j("ngfValidateForce",{$file:b})?(b.$error=c,(b.$errorMessages=b.$errorMessages||{}).name=!0,b.$errorParam=d,a.reject()):a.resolve()}):a.resolve()}var n=[f.emptyPromise()];return a?(a=void 0===a.length?[a]:a,angular.forEach(a,function(a){var d=b.defer();return n.push(d.promise),!i||null!=a.type&&0===a.type.search(i)?void("dimensions"===c&&null!=f.attrGetter("ngfDimensions",e)?f.imageDimensions(a).then(function(b){m(d,a,j("ngfDimensions",{$file:a,$width:b.width,$height:b.height}))},function(){d.reject()}):"duration"===c&&null!=f.attrGetter("ngfDuration",e)?f.mediaDuration(a).then(function(b){m(d,a,j("ngfDuration",{$file:a,$duration:b}))},function(){d.reject()}):m(d,a,f.getValidationAttr(e,g,c,h,a))):void d.resolve()}),b.all(n).then(function(){d.$ngfValidations.push({name:c,valid:!0})},function(){d.$ngfValidations.push({name:c,valid:!1})})):void 0}d=d||{},d.$ngfValidations=d.$ngfValidations||[],angular.forEach(d.$ngfValidations,function(a){a.valid=!0});var j=function(a,b){return f.attrGetter(a,e,g,b)};if(null==a||0===a.length)return f.emptyPromise(d);a=void 0===a.length?[a]:a.slice(0),h("maxFiles",null,function(a,b){return b>=c}),h("pattern",null,f.validatePattern),h("minSize","size.min",function(a,b){return a.size+.1>=f.translateScalars(b)}),h("maxSize","size.max",function(a,b){return a.size-.1<=f.translateScalars(b)});var k=0;if(h("maxTotalSize",null,function(b,c){return k+=b.size,k>f.translateScalars(c)?(a.splice(0,a.length),!1):!0}),h("validateFn",null,function(a,b){return b===!0||null===b||""===b}),!a.length)return f.emptyPromise(d,d.$ngfValidations);var l=b.defer(),m=[];return m.push(f.happyPromise(i("maxHeight","height.max",/image/,this.imageDimensions,function(a,b){return a.height<=b}))),m.push(f.happyPromise(i("minHeight","height.min",/image/,this.imageDimensions,function(a,b){return a.height>=b}))),m.push(f.happyPromise(i("maxWidth","width.max",/image/,this.imageDimensions,function(a,b){return a.width<=b}))),m.push(f.happyPromise(i("minWidth","width.min",/image/,this.imageDimensions,function(a,b){return a.width>=b}))),m.push(f.happyPromise(i("dimensions",null,/image/,function(a,b){return f.emptyPromise(b)},function(a){return a}))),m.push(f.happyPromise(i("ratio",null,/image/,this.imageDimensions,function(a,b){for(var c=b.toString().split(","),d=!1,e=0;e-1e-4}))),m.push(f.happyPromise(i("maxDuration","duration.max",/audio|video/,this.mediaDuration,function(a,b){return a<=f.translateScalars(b)}))),m.push(f.happyPromise(i("minDuration","duration.min",/audio|video/,this.mediaDuration,function(a,b){return a>=f.translateScalars(b)}))),m.push(f.happyPromise(i("duration",null,/audio|video/,function(a,b){return f.emptyPromise(b)},function(a){return a}))),m.push(f.happyPromise(i("validateAsyncFn",null,null,function(a,b){return b},function(a){return a===!0||null===a||""===a}))),b.all(m).then(function(){l.resolve(d,d.$ngfValidations)})},f.imageDimensions=function(a){if(a.$ngfWidth&&a.$ngfHeight){var d=b.defer();return c(function(){d.resolve({width:a.$ngfWidth,height:a.$ngfHeight})}),d.promise}if(a.$ngfDimensionPromise)return a.$ngfDimensionPromise;var e=b.defer();return c(function(){return 0!==a.type.indexOf("image")?void e.reject("not image"):void f.dataUrl(a).then(function(b){function d(){var b=h[0].clientWidth,c=h[0].clientHeight;h.remove(),a.$ngfWidth=b,a.$ngfHeight=c,e.resolve({width:b,height:c})}function f(){h.remove(),e.reject("load error")}function g(){c(function(){h[0].parentNode&&(h[0].clientWidth?d():i>10?f():g())},1e3)}var h=angular.element("").attr("src",b).css("visibility","hidden").css("position","fixed");h.on("load",d),h.on("error",f);var i=0;g(),angular.element(document.getElementsByTagName("body")[0]).append(h)},function(){e.reject("load error")})}),a.$ngfDimensionPromise=e.promise,a.$ngfDimensionPromise["finally"](function(){delete a.$ngfDimensionPromise}),a.$ngfDimensionPromise},f.mediaDuration=function(a){if(a.$ngfDuration){var d=b.defer();return c(function(){d.resolve(a.$ngfDuration)}),d.promise}if(a.$ngfDurationPromise)return a.$ngfDurationPromise;var e=b.defer();return c(function(){return 0!==a.type.indexOf("audio")&&0!==a.type.indexOf("video")?void e.reject("not media"):void f.dataUrl(a).then(function(b){function d(){var b=h[0].duration;a.$ngfDuration=b,h.remove(),e.resolve(b)}function f(){h.remove(),e.reject("load error")}function g(){c(function(){h[0].parentNode&&(h[0].duration?d():i>10?f():g())},1e3)}var h=angular.element(0===a.type.indexOf("audio")?"