Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
168 commits
Select commit Hold shift + click to select a range
3619572
Package all JavaScript files on build
Danielku15 Aug 25, 2018
b2732ef
Merge branch 'master' into develop
Danielku15 Sep 9, 2018
2da77cf
Added click listener to attempt resume of audio context if not runnin…
Danielku15 Sep 29, 2018
439164b
Added catch for zip file (Haxe throws string)
Danielku15 Sep 29, 2018
3e1ef05
Improved handling of Tied notes for MusicXML
Danielku15 Sep 29, 2018
935b084
Corrected audio generation for grace notes
Danielku15 Sep 29, 2018
ae3a1d7
Added additional output activation to start audio context in Browsers
Danielku15 Sep 29, 2018
092688f
Reworked staff display to respect GP file contents
Danielku15 Sep 29, 2018
7e56691
Parse PartConfig also for GPX files
Danielku15 Sep 29, 2018
823b7df
Added chord diagram rendering to page layout
Danielku15 Oct 7, 2018
957e104
Added chord support to alphaTex
Danielku15 Oct 7, 2018
7d62f92
Fixed compilation issues
Danielku15 Oct 7, 2018
ef285a2
Fixed wrong error message for tuning change
Danielku15 Oct 7, 2018
1b72911
Bump version number
Danielku15 Oct 7, 2018
96c2a77
Bump version number in appveyor
Danielku15 Oct 7, 2018
fb721ed
Update alphaTex chord documentation
Danielku15 Oct 7, 2018
c9567e1
Added IDs to headings for better linking
Danielku15 Oct 7, 2018
7a9630f
Fixed rhythm notation positioning
Danielku15 Oct 7, 2018
14203a7
Fixed issue on tied notes causing stack-overflow
Danielku15 Oct 7, 2018
659c731
Fixed issue in alphaTex importer that notes were added to a beat befo…
Danielku15 Oct 11, 2018
ab3216e
Introduced consistent API across all platforms, integrated alphaSynth…
Oct 13, 2018
c288c7e
Added support for multiple tracks and staffs in alphaTex #207
Nov 4, 2018
5000c4e
Fixed null reference for new "all" track rendering
Nov 4, 2018
5ad1b46
Added short track name reading to alphaTex and made track names optio…
Nov 4, 2018
93d1e97
Rebuild
Nov 4, 2018
7831dee
Updated documentation with new "all" tracks and multi-staff/track alp…
Nov 4, 2018
58b3b5f
Merge branch 'develop' of github.com:CoderLine/alphaTab into develop
Nov 4, 2018
80c09eb
Attempt to make appveyor push back version number
Nov 4, 2018
fd29eda
Bump version number
Nov 4, 2018
1c0d4c2
Moved builds to appveyor as artifact repository
Nov 4, 2018
3246802
Minor update on readme
Nov 4, 2018
95664c6
Added notes about GH releases
Nov 4, 2018
a6087ce
Always publish release nuget
Nov 4, 2018
ce0f70c
Fixed compilation issues with string escaping
Nov 4, 2018
67f20fa
Reworked to async test suite and added Karma testrunner for JS tests
Nov 4, 2018
645e130
Fixed syntax error
Nov 4, 2018
a9c75fb
Test to set NODE_PATH
Nov 4, 2018
bb9a86b
Test to set NODE_PATH
Nov 4, 2018
398c530
Use long test names for JS tests to distinguish them from .net tests
Nov 4, 2018
740d0d2
Install chrome-launcher explicitely
Nov 4, 2018
4c6d776
Add CHROME_BIN variable to config
Nov 4, 2018
85f331e
Install puppeteer
Nov 4, 2018
06f7b48
Removed redundant chrome installation
Nov 4, 2018
c4eb6f4
Small extension on testrunner script
Nov 4, 2018
d0ca681
Publish TRX for problem investiation
Nov 4, 2018
9502016
Formatted error message
Nov 4, 2018
999955b
Reduced test output
Nov 4, 2018
b1b3464
Reorganized tie origin detection for guitar pro files (#206)
Nov 17, 2018
9de35f8
Improved tied note support for non stringed instruments on alphaTex (…
Nov 17, 2018
434bdd1
Minor fix on wrong note ties
Nov 17, 2018
325a933
Updated documentation regarding tied notes
Nov 17, 2018
0b3c72b
Fixed unit tests
Nov 17, 2018
127187f
Reenabled MusicXML tests for parsing and rendering (no content valida…
Nov 17, 2018
8c6cf16
Ensure correct branch name in output files
Nov 17, 2018
6c5a4fb
Fixed MusicXML tests for JS
Nov 17, 2018
e15c719
Reworked slur rendering to really be a slur from one note to another,…
Nov 17, 2018
6af5565
Modernized layout of player sample and fixed metronome issues (#208, …
Nov 17, 2018
47ae08d
Update nuget packages and target frameworks
Dec 21, 2018
f0cd9df
Moved rendering resources to settings including custom font support #215
Dec 21, 2018
6dfd388
Adjusted slur height calculation to be logarithmic, fixed minor displ…
Dec 21, 2018
d09da51
Added test sdk package
Dec 21, 2018
77852fe
Merge branch 'develop' into ConsistentApi2
Dec 21, 2018
612ea14
Fixed issue on layout creation
Dec 21, 2018
fa4a322
Ensure MSBuild.Sdk.Extras are correctly initialized
Dec 21, 2018
ff86011
Reorganized folder structure for testdata
Dec 21, 2018
f40ec6c
Added initial set of visual tests for alphaTab
Dec 22, 2018
3133b0c
Updated documentation scripts for latest Wyam version
Dec 22, 2018
0b5da93
Fixed documentation compilation issue
Dec 22, 2018
5883672
Enabled unsafe code for release mode
Dec 22, 2018
df3f752
Fixed signature for JS tests
Dec 22, 2018
2c377e0
Workaround for buggy SkiaSharp native lib loading
Dec 22, 2018
47ee01b
Added missing reference file for tuplet test
Dec 22, 2018
3932c25
Corrected asset link in new help page
Dec 22, 2018
f1276b6
Ensure tests are run again
Dec 24, 2018
c9b2fcb
Merge branch 'develop' into ConsistentApi2
Dec 24, 2018
8d8c626
Ensure MSBuild SDK extras are correctly initialized for the .net library
Dec 24, 2018
325ef83
Use UI abstraction on xamarin controls, added missing copyright comments
Dec 24, 2018
5fa8316
Added documentation to the public methods and types
Dec 24, 2018
ed95680
Minor change on docs
Dec 24, 2018
8026608
Reworked tuplet grouping to make beaming prefer tuplet grouping for b…
Jan 20, 2019
b131fb3
Fixed wrong JsObject serialization that caused cyclic dependency (fix…
Jan 20, 2019
35992a3
Added missing slides to alphaTex (fixes #223)
Jan 20, 2019
39606ef
Added quotes to copy step to overcome issues on spaces in folders
Danielku15 Feb 15, 2019
60d52f6
Correctly register mouse events on html element instead of window (fi…
Danielku15 Feb 15, 2019
0755bbf
Added tapping effect to alphaTex #225
Feb 16, 2019
8a7fede
Merge branch 'develop' of github.com:CoderLine/alphaTab into develop
Feb 16, 2019
30ccd40
Added triplet feel to alphaTex #230
Feb 16, 2019
fb80fb7
Changed tap effect to tt as tp is used for tremolo picking
Feb 16, 2019
e4c1392
Do not break beams for grace notes
Feb 16, 2019
80397a0
Restore correct font on tab note rendering
Feb 16, 2019
3826ceb
Updated reference image after fix on grace note font
Feb 16, 2019
f86ed2d
Added shorthand notation for tuplets via duration ranges #228
Feb 16, 2019
03145ba
Extended asserts to accept second parameter
Feb 16, 2019
3e47fbb
Ensure tuplet is not overwritten (fxies #233)
Feb 16, 2019
7746222
Minor fix on log level setting #235
Feb 16, 2019
ec8ac42
Ensure triplet feel is copied from previous bars #239
Feb 17, 2019
3f66cc7
Removed duplicate triplet feel effect on tab configuration (fixes #238)
Feb 17, 2019
0fefb9c
Added anacrusis parsing for GP formats
Apr 13, 2019
aa85fc1
Added anacrusis parsing to AlphaTex
Apr 13, 2019
91e241a
Added anacrusis sample to alphaTex docs
Apr 13, 2019
5f4406c
Corrected docs to actually use anacrusis
Apr 13, 2019
f4a96b8
Respect new anacrusis flag on audio generation
Apr 13, 2019
027634d
Merge pull request #250 from CoderLine/feature/anacrusis
Danielku15 Apr 13, 2019
d8712f9
Added section parsing to alphaTex (fixes #245)
Danielku15 May 30, 2019
6425990
Added section documentation for alphaTex
Danielku15 May 30, 2019
bc7d61a
Added rendering of section marker
Danielku15 May 30, 2019
05950a6
Merge branch 'develop' into feature/alphatex-markers
Danielku15 May 30, 2019
b401028
Merge pull request #253 from CoderLine/feature/alphatex-markers
Danielku15 May 30, 2019
8c55691
Improved example on sections to eliminate cropping
Danielku15 May 30, 2019
1c4a90d
Update README.md
Danielku15 Jul 28, 2019
bb537f5
Calculate discarded samples on pause to synth and seek back in time (…
Danielku15 Jul 28, 2019
d18ef99
Reworked cursor handling to restart playback on highlighted beat #255
Danielku15 Jul 28, 2019
3cc80cc
Merge branch 'develop' of https://github.com/CoderLine/alphaTab into …
Danielku15 Jul 28, 2019
087bbe8
Changed license info across source
Jul 29, 2019
8dda414
Some code style and formatting.
Jul 29, 2019
648f86a
Fixed compilation issues.
Jul 29, 2019
ec6d1ed
Merge branch 'feature/license-change' into develop
Jul 29, 2019
d0a07ed
Fixed issue on missing static variable initialization
Jul 30, 2019
329fdf4
Various fixes on samples (fixes #271)
Danielku15 Aug 27, 2019
afbef9a
Changed null-coalescing as compiler does not handle it yet properly.
Danielku15 Aug 27, 2019
ba098f1
Add reference documentation for properties, methods and events (#262)
Danielku15 Aug 27, 2019
d6fb0df
Replaces the current Synthesis Engine by a port of TinySoundFont (#261)
Danielku15 Aug 27, 2019
50daeab
Pulled public alphaSynth API to main API layer and added docs. (fixes…
Danielku15 Aug 27, 2019
acb1cca
Introduce consistent rendering and loading API (#272)
Danielku15 Aug 27, 2019
e0dd648
Introduces ES5 properites and camelCase naming conventions (#273)
Danielku15 Aug 27, 2019
dc28e35
Adds support for any font as rendering resource (#274)
Danielku15 Aug 27, 2019
b2f0fd4
Ensure track indexes are initialized correctly if no track list is gi…
Danielku15 Oct 12, 2019
6843175
Ensure metronome volume is not reset to 1 (fixes #279)
Danielku15 Oct 12, 2019
e265827
Some docs adjusted and events modified
Danielku15 Dec 18, 2019
e0a50d6
Fixed issue with metronome not hearable all the time (related to #297)
Danielku15 Dec 18, 2019
d009c0c
Added new sample using most alphaTab features in a nicer UI
Danielku15 Dec 18, 2019
67e69c6
Corrected wrong docs
Danielku15 Dec 18, 2019
9dd42f9
Ensure initial DOM elements are embedded before render finish events …
Danielku15 Dec 19, 2019
65a2358
Add dynamic enable/disable of player and cursor feature (#305)
Danielku15 Dec 19, 2019
2bcfc06
Add support for triplet feel on audio generation (#306)
Danielku15 Dec 19, 2019
d08081c
Fix scrolling on mobile devices (#308)
Danielku15 Dec 20, 2019
ad37a9b
Consolidation of Settings (#307)
Danielku15 Dec 20, 2019
b221692
Create workers via blobs by default (#312)
Danielku15 Dec 20, 2019
3396e5c
Fixed wrong repeat group generation for alphaTex (#314)
Danielku15 Dec 20, 2019
f749073
Disable API docs in favor of Reference docs
Danielku15 Dec 20, 2019
1024553
Remove decoupling of render result appending (#316)
Danielku15 Dec 20, 2019
a938d74
Fixed jumping on cursor for multi staff setups (#324)
Danielku15 Feb 9, 2020
ee2a176
Ensure mix volume is not reset on seeking (#325)
Danielku15 Feb 9, 2020
d92795a
Ensure correct display transposition pitches on alphaTex (#327)
Danielku15 Feb 11, 2020
4d4c967
Add dynamics support to alphaTex (#329)
Danielku15 Feb 14, 2020
6a6e09a
Added support for combined slidein slideout on notes (#330)
Danielku15 Feb 14, 2020
8a768d6
Added docs for css styles (fixes #300)
Danielku15 Feb 14, 2020
c713643
Improved grace note positioning (#336)
Danielku15 Feb 15, 2020
00364b6
Precache notes to highlight for multi stave/track note highlighting (…
Danielku15 Feb 15, 2020
2d691a7
Add support for crescendo and decrescendo in alphaTex (#338)
Danielku15 Feb 15, 2020
272c2cf
Handle missing startNoteRenderer due to partial renders (#339)
Danielku15 Feb 15, 2020
7550bff
Remember dynamics on alphaTex (fixes #340)
Danielku15 Feb 15, 2020
85fb44b
Changed tuplet grouping behavior (#342)
Danielku15 Feb 15, 2020
e32f62f
Added activate to playPause to ensure web audio context is active on …
Danielku15 Feb 16, 2020
d35de33
Minor fixes on multi track handling in alphaTex
Danielku15 Feb 16, 2020
a643d1d
Reset dynamics on staves and tracks back to default (#346)
Danielku15 Mar 6, 2020
4a14c84
Setting to disable default user interaction (#350)
Danielku15 Mar 26, 2020
9b0ce9a
Adjusted scroll element selection (#357)
Danielku15 May 1, 2020
2c2dc69
Be more explicit on the usage of templates.
Danielku15 May 6, 2020
7f82ec0
Make logger public
Danielku15 May 7, 2020
a156806
AlphaTab based on TypeScript (#356)
Danielku15 Jul 16, 2020
04c5757
Attempt on 1.0 alpha+latest publish
Danielku15 Jul 16, 2020
0b9f46c
Update dependencies
Danielku15 Jul 16, 2020
a452e73
Minor WPF fixes (fixes #373)
Danielku15 Jul 19, 2020
e0ec223
Slight adjustments on publish scripts for release
Danielku15 Jul 22, 2020
e6598c1
Use portable PDBs
Danielku15 Jul 22, 2020
85fa9a5
New workflow for final tagged release
Danielku15 Jul 22, 2020
0634b92
Merge branch 'master' into develop
Danielku15 Jul 24, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
13 changes: 13 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#root = true

[*]
indent_style = space
end_of_line = lf
charset = utf-8
trim_trailing_whitespace = true
insert_final_newline = true
max_line_length = 100
indent_size = 4

[*.md]
trim_trailing_whitespace = false
63 changes: 0 additions & 63 deletions .gitattributes

This file was deleted.

11 changes: 9 additions & 2 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,19 @@
---
name: 🕷 Bug report
about: Report a bug
about: Report a bug.

---

<!--

Thanks for contributing to alphaTab. Before entering a new bug please check following points
!!! The issue templates provided here are mandatory to be used !!!
!!! Issues not filling out the provided structure and details !!!
!!! will be closed without addressing them. It takes you 2mins !!!
!!! more for us it takes a lot of time to organize and address !!!
!!! clarify open points if you do not provide them !!!


Additionally for bugs:

- IMPORTANT: Do not simply delete the whole template and submit without providing the details asked for! Issues not following the template will be closed without being worked on. Please try to be precise and provide all details that help to work on the issue.
- Please make sure that no other bug with the same topic exists already. Rather reopen a closed one than enter a new one.
Expand Down
10 changes: 9 additions & 1 deletion .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,17 @@ about: Suggest a new feature

---


<!--

Thanks for contributing to alphaTab. Before entering a new feature request please check following points
!!! The issue templates provided here are mandatory to be used !!!
!!! Issues not filling out the provided structure and details !!!
!!! will be closed without addressing them. It takes you 2mins !!!
!!! more for us it takes a lot of time to organize and address !!!
!!! clarify open points if you do not provide them !!!


Additionally for feature requests:

- IMPORTANT: Do not simply delete the whole template and submit without providing the details asked for! Issues not following the template will be closed without being worked on. Please try to be precise and provide all details that help to work on the issue.
- Please make sure that no other feature request with the same topic exists already. Contribute to an existing one rather than asking again.
Expand Down
12 changes: 10 additions & 2 deletions .github/ISSUE_TEMPLATE/question.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,17 @@ about: Ask any question that is not covered in the documentation.

<!--

Thanks for contributing to alphaTab. Before entering a question request please check following points
!!! The issue templates provided here are mandatory to be used !!!
!!! Issues not filling out the provided structure and details !!!
!!! will be closed without addressing them. It takes you 2mins !!!
!!! more for us it takes a lot of time to organize and address !!!
!!! clarify open points if you do not provide them !!!

- IMPORTANT: Do not simply delete the whole template and submit without providing the details asked for! Issues not following the template will be closed without being worked on. Please try to be precise and provide all details that help to work on the issue.
Additionally for questions

- Be sure that you are not reporting bugs or missing features as questions! If you are missing a feature or
experiencing a misbehavior, it is very likely not a question but rather a bug report or feature request you
want to open.
- Check the examples and documentation at https://docs.alphatab.net/ if it might already answer your question.
- Check if somebody already asked the question here on GitHub.

Expand Down
35 changes: 35 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Build
on:
push:
branches:
- develop
- master
pull_request:

jobs:
build_web:
name: Build and Test Web
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: '12.x'
- run: npm install
- run: npm run build-ci
- run: npm run test-ci

build_csharp:
name: Build and Test C#
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: '12.x'
- uses: actions/setup-dotnet@v1
with:
dotnet-version: '3.1.100'
- run: npm install
- run: npm run build-csharp-ci
- run: npm run test-csharp-ci
50 changes: 50 additions & 0 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
name: Publish
on:
push:
branches:
- develop

jobs:
nighty_web:
name: Web
runs-on: windows-latest
steps:
# Checkout the repo
- uses: actions/checkout@v2

# Build Project
- uses: actions/setup-node@master
- name: Build Project
run: |
npm install
node ./scripts/update-version.js alpha ${{github.run_number}}
npm run build-ci

# Publish to GitHub Package Registry
- uses: actions/setup-node@master
with:
node-version: '12.x'
registry-url: https://registry.npmjs.org/
- name: Publish to GitHub Package Registry (alpha)
run: npm publish --access public --tag alpha
env:
NODE_AUTH_TOKEN: ${{secrets.NPMJS_AUTH_TOKEN}}

nightly_csharp:
name: C#
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: '12.x'
- uses: actions/setup-dotnet@v1
with:
dotnet-version: '3.1.100'
env:
NUGET_AUTH_TOKEN: ${{secrets.NUGET_API_KEY}}
- run: npm install
- run: node ./scripts/update-csharp-version.js alpha ${{github.run_number}}
- run: npm run build-csharp-ci
- run: dotnet nuget push src.csharp\AlphaTab\bin\Release\*.nupkg -k ${{secrets.NUGET_API_KEY}} -s https://api.nuget.org/v3/index.json
- run: dotnet nuget push src.csharp\AlphaTab.Windows\bin\Release\*.nupkg -k ${{secrets.NUGET_API_KEY}} -s https://api.nuget.org/v3/index.json
50 changes: 50 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
name: Release
on:
push:
tags:
- 'v*'

jobs:
release_web:
name: Web
runs-on: windows-latest
steps:
# Checkout the repo
- uses: actions/checkout@v2

# Build Project
- uses: actions/setup-node@master
- name: Build Project
run: |
npm install
node ./scripts/update-version.js ${{github.run_number}}
npm run build-ci

# Publish to GitHub Package Registry
- uses: actions/setup-node@master
with:
node-version: '12.x'
registry-url: https://registry.npmjs.org/
- name: Publish to GitHub Package Registry (release)
run: npm publish --access public
env:
NODE_AUTH_TOKEN: ${{secrets.NPMJS_AUTH_TOKEN}}

release_csharp:
name: C#
runs-on: windows-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: '12.x'
- uses: actions/setup-dotnet@v1
with:
dotnet-version: '3.1.100'
env:
NUGET_AUTH_TOKEN: ${{secrets.NUGET_API_KEY}}
- run: npm install
- run: node ./scripts/update-csharp-version.js ${{github.run_number}}
- run: npm run build-csharp-ci
- run: dotnet nuget push src.csharp\AlphaTab\bin\Release\*.nupkg -k ${{secrets.NUGET_API_KEY}} -s https://api.nuget.org/v3/index.json
- run: dotnet nuget push src.csharp\AlphaTab.Windows\bin\Release\*.nupkg -k ${{secrets.NUGET_API_KEY}} -s https://api.nuget.org/v3/index.json
83 changes: 9 additions & 74 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,76 +1,11 @@
#OS junk files
[Tt]humbs.db
*.DS_Store

#Visual Studio files
*.[Oo]bj
*.user
*.aps
*.pch
*.vspscc
*.vssscc
*_i.c
*_p.c
*.ncb
*.suo
*.tlb
*.tlh
*.bak
*.[Cc]ache
*.ilk
*.log
*.lib
*.sbr
*.sdf
*.opensdf
*.unsuccessfulbuild
*.psess
*.etl
*.vspx
*.userprefs
ipch/
dist/
node_modules/
private/
playground/
obj/
[Dd]ebug*/
[Rr]elease*/
[Mm]ono[Dd]ebug*/
[Mm]ono[Rr]elease*/
res/
Ankh.NoLoad
bin/
.idea/
.vs/
#Tooling
_ReSharper*/
*.resharper
[Tt]est[Rr]esult*
*.skccache

# Project Dirs
/Tools/fontconverter/font/*
/Tools/gpx-decompress/test/*
/Tools/gpx-decompress/bin/*
/Documentation/input/assets/js/alphaTab/*
/Documentation/output/*
/Private
/Samples/JavaScript/files/Test.gp5
/Samples/JavaScript/test.html
/Samples/JavaScript/test*
/Samples/JavaScript/test/*
/Build/Haxe/src-gen/*
/Source/AlphaTab.Test.Js/Haxe/src-gen/*
/Source/AlphaTab.Test.Js/test/TestFiles*
/Source/AlphaTab.Test.Js/test/alphaTab.tests.js
/Source/AlphaTab.Test.Js/test/alphaTab.tests.js.map
/Build/CSharp/**/*.dll
/Build/CSharp/**/*.pdb
/Build/CSharp/**/*.xml
/Test/*

# temps
.DS_Store
*.bak
~*
*.lock
SharpKit/prms.txt

#NuGet
packages/*
!packages/repositories.config
*.user
*.tgz
test-results/
10 changes: 10 additions & 0 deletions .prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"printWidth": 120,
"tabWidth": 4,
"useTabs": false,
"semi": true,
"singleQuote": true,
"trailingComma": "none",
"bracketSpacing": true,
"arrowParens": "avoid"
}
Loading