jbilcke-hf HF Staff commited on
Commit
7f178fb
·
1 Parent(s): 6a787b8

going to change some stuff regarding providers

Browse files
build.sh CHANGED
@@ -2,6 +2,12 @@
2
  # Script to build Flutter web app with cache busting
3
 
4
  echo "🔨 Building Flutter web app..."
 
 
 
 
 
 
5
  flutter build web --release
6
 
7
  # for debugging, use:
 
2
  # Script to build Flutter web app with cache busting
3
 
4
  echo "🔨 Building Flutter web app..."
5
+ # we cannot use " --no-wasm-dry-run"
6
+ # the reason is because we use "dart:html":
7
+ #
8
+ # Error: Dart library 'dart:html' is not available on this platform.
9
+ # import 'dart:html' as html;
10
+ # ^
11
  flutter build web --release
12
 
13
  # for debugging, use:
build/web/.last_build_id CHANGED
@@ -1 +1 @@
1
- 309b4aafdb01e1e063849b6e791e68a7
 
1
+ 13a3ed7000efd3f22f36f9869e82cc75
build/web/assets/NOTICES CHANGED
@@ -3506,11 +3506,14 @@ Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
3506
  Copyright (c) 2000-2005 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
3507
  Copyright (c) 2001-2002 Greg Stein <gstein@users.sourceforge.net>
3508
  Copyright (c) 2002-2016 Karl Waclawek <karl@waclawek.net>
3509
- Copyright (c) 2016-2022 Sebastian Pipping <sebastian@pipping.org>
3510
  Copyright (c) 2016 Cristian Rodríguez <crrodriguez@opensuse.org>
3511
  Copyright (c) 2016 Thomas Beutlich <tc@tbeu.de>
3512
  Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
3513
  Copyright (c) 2022 Thijs Schreijer <thijs@thijsschreijer.nl>
 
 
 
3514
 
3515
  Licensed under the MIT license:
3516
 
@@ -3542,7 +3545,7 @@ Copyright (c) 2001-2002 Greg Stein <gstein@users.sourceforge.net>
3542
  Copyright (c) 2002-2016 Karl Waclawek <karl@waclawek.net>
3543
  Copyright (c) 2005-2009 Steven Solie <steven@solie.ca>
3544
  Copyright (c) 2016 Eric Rahm <erahm@mozilla.com>
3545
- Copyright (c) 2016-2022 Sebastian Pipping <sebastian@pipping.org>
3546
  Copyright (c) 2016 Gaurav <g.gupta@samsung.com>
3547
  Copyright (c) 2016 Thomas Beutlich <tc@tbeu.de>
3548
  Copyright (c) 2016 Gustavo Grieco <gustavo.grieco@imag.fr>
@@ -3561,10 +3564,15 @@ Copyright (c) 2018 Mariusz Zaborski <oshogbo@vexillium.org>
3561
  Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
3562
  Copyright (c) 2019-2020 Ben Wagner <bungeman@chromium.org>
3563
  Copyright (c) 2019 Vadim Zeitlin <vadim@zeitlins.org>
3564
- Copyright (c) 2021 Dong-hee Na <donghee.na@python.org>
3565
  Copyright (c) 2022 Samanta Navarro <ferivoz@riseup.net>
3566
  Copyright (c) 2022 Jeffrey Walton <noloader@gmail.com>
3567
  Copyright (c) 2022 Jann Horn <jannh@google.com>
 
 
 
 
 
3568
 
3569
  Licensed under the MIT license:
3570
 
@@ -3625,7 +3633,7 @@ Copyright (c) 2001-2003 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
3625
  Copyright (c) 2002 Greg Stein <gstein@users.sourceforge.net>
3626
  Copyright (c) 2002-2016 Karl Waclawek <karl@waclawek.net>
3627
  Copyright (c) 2005-2009 Steven Solie <steven@solie.ca>
3628
- Copyright (c) 2016-2022 Sebastian Pipping <sebastian@pipping.org>
3629
  Copyright (c) 2016 Pascal Cuoq <cuoq@trust-in-soft.com>
3630
  Copyright (c) 2016 Don Lewis <truckman@apache.org>
3631
  Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
@@ -3633,8 +3641,10 @@ Copyright (c) 2017 Alexander Bluhm <alexander.bluhm@gmx.net>
3633
  Copyright (c) 2017 Benbuck Nason <bnason@netflix.com>
3634
  Copyright (c) 2017 José Gutiérrez de la Concha <jose@zeroc.com>
3635
  Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
3636
- Copyright (c) 2021 Dong-hee Na <donghee.na@python.org>
3637
  Copyright (c) 2022 Martin Ettl <ettl.martin78@googlemail.com>
 
 
3638
 
3639
  Licensed under the MIT license:
3640
 
@@ -3664,13 +3674,14 @@ Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
3664
  Copyright (c) 2001-2003 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
3665
  Copyright (c) 2004-2009 Karl Waclawek <karl@waclawek.net>
3666
  Copyright (c) 2005-2007 Steven Solie <steven@solie.ca>
3667
- Copyright (c) 2016-2022 Sebastian Pipping <sebastian@pipping.org>
3668
  Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
3669
  Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
3670
  Copyright (c) 2020 Joe Orton <jorton@redhat.com>
3671
  Copyright (c) 2020 Kleber Tarcísio <klebertarcisio@yahoo.com.br>
3672
  Copyright (c) 2021 Tim Bray <tbray@textuality.com>
3673
  Copyright (c) 2022 Martin Ettl <ettl.martin78@googlemail.com>
 
3674
 
3675
  Licensed under the MIT license:
3676
 
@@ -3702,6 +3713,8 @@ Copyright (c) 2002-2009 Karl Waclawek <karl@waclawek.net>
3702
  Copyright (c) 2016-2017 Sebastian Pipping <sebastian@pipping.org>
3703
  Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
3704
  Copyright (c) 2017 Franek Korta <fkorta@gmail.com>
 
 
3705
 
3706
  Licensed under the MIT license:
3707
 
@@ -3730,7 +3743,7 @@ Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
3730
  Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
3731
  Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
3732
  Copyright (c) 2002-2005 Karl Waclawek <karl@waclawek.net>
3733
- Copyright (c) 2016-2017 Sebastian Pipping <sebastian@pipping.org>
3734
  Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
3735
 
3736
  Licensed under the MIT license:
@@ -3795,7 +3808,7 @@ Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
3795
  Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
3796
  Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
3797
  Copyright (c) 2005 Karl Waclawek <karl@waclawek.net>
3798
- Copyright (c) 2016-2019 Sebastian Pipping <sebastian@pipping.org>
3799
 
3800
  Licensed under the MIT license:
3801
 
@@ -3907,6 +3920,34 @@ USE OR OTHER DEALINGS IN THE SOFTWARE.
3907
  --------------------------------------------------------------------------------
3908
  expat
3909
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3910
  Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
3911
  Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
3912
  Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
@@ -3971,10 +4012,10 @@ Copyright (c) 2002 Greg Stein <gstein@users.sourceforge.net>
3971
  Copyright (c) 2002-2006 Karl Waclawek <karl@waclawek.net>
3972
  Copyright (c) 2002-2003 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
3973
  Copyright (c) 2005-2009 Steven Solie <steven@solie.ca>
3974
- Copyright (c) 2016-2021 Sebastian Pipping <sebastian@pipping.org>
3975
  Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
3976
  Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
3977
- Copyright (c) 2021 Dong-hee Na <donghee.na@python.org>
3978
 
3979
  Licensed under the MIT license:
3980
 
@@ -4003,7 +4044,7 @@ Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
4003
  Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
4004
  Copyright (c) 2002 Karl Waclawek <karl@waclawek.net>
4005
  Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
4006
- Copyright (c) 2017 Sebastian Pipping <sebastian@pipping.org>
4007
 
4008
  Licensed under the MIT license:
4009
 
@@ -4033,10 +4074,11 @@ Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
4033
  Copyright (c) 2002-2003 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
4034
  Copyright (c) 2004-2006 Karl Waclawek <karl@waclawek.net>
4035
  Copyright (c) 2005-2007 Steven Solie <steven@solie.ca>
4036
- Copyright (c) 2016-2021 Sebastian Pipping <sebastian@pipping.org>
4037
  Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
4038
  Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
4039
- Copyright (c) 2021 Dong-hee Na <donghee.na@python.org>
 
4040
 
4041
  Licensed under the MIT license:
4042
 
@@ -4171,7 +4213,7 @@ USE OR OTHER DEALINGS IN THE SOFTWARE.
4171
  expat
4172
 
4173
  Copyright (c) 1998-2000 Thai Open Source Software Center Ltd and Clark Cooper
4174
- Copyright (c) 2001-2022 Expat maintainers
4175
 
4176
  Permission is hereby granted, free of charge, to any person obtaining
4177
  a copy of this software and associated documentation files (the
@@ -4226,7 +4268,8 @@ expat
4226
  Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
4227
  Copyright (c) 2002 Greg Stein <gstein@users.sourceforge.net>
4228
  Copyright (c) 2005 Karl Waclawek <karl@waclawek.net>
4229
- Copyright (c) 2017-2021 Sebastian Pipping <sebastian@pipping.org>
 
4230
 
4231
  Licensed under the MIT license:
4232
 
@@ -4280,9 +4323,37 @@ expat
4280
  Copyright (c) 2002-2003 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
4281
  Copyright (c) 2002-2006 Karl Waclawek <karl@waclawek.net>
4282
  Copyright (c) 2003 Greg Stein <gstein@users.sourceforge.net>
4283
- Copyright (c) 2016-2022 Sebastian Pipping <sebastian@pipping.org>
4284
  Copyright (c) 2018 Yury Gribov <tetra2005@gmail.com>
4285
  Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4286
 
4287
  Licensed under the MIT license:
4288
 
@@ -4712,7 +4783,7 @@ Exhibit B - "Incompatible With Secondary Licenses" Notice
4712
  This Source Code Form is "Incompatible With Secondary Licenses", as
4713
  defined by the Mozilla Public License, v. 2.0.
4714
 
4715
- You may obtain a copy of this library's Source Code Form from: https://dart.googlesource.com/sdk/+/8dc0ecee5adca1ee54205915a4ef66e40a21333f
4716
  /third_party/fallback_root_certificates/
4717
 
4718
  --------------------------------------------------------------------------------
@@ -30366,57 +30437,36 @@ The above software in this distribution may have been modified by
30366
  THL A29 Limited ("Tencent Modifications").
30367
  All Tencent Modifications are Copyright (C) 2015 THL A29 Limited.
30368
  --------------------------------------------------------------------------------
30369
- sembast
30370
-
30371
- Copyright (c) 2020, Alexandre Roux Tekartik
30372
- All rights reserved.
30373
-
30374
- Redistribution and use in source and binary forms, with or without
30375
- modification, are permitted provided that the following conditions are met:
30376
-
30377
- * Redistributions of source code must retain the above copyright notice, this
30378
- list of conditions and the following disclaimer.
30379
-
30380
- * Redistributions in binary form must reproduce the above copyright notice,
30381
- this list of conditions and the following disclaimer in the documentation
30382
- and/or other materials provided with the distribution.
30383
-
30384
- * Neither the name of tekartik_iodb.dart nor the names of its
30385
- contributors may be used to endorse or promote products derived from
30386
- this software without specific prior written permission.
30387
-
30388
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
30389
- AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
30390
- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
30391
- DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
30392
- FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
30393
- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
30394
- SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
30395
- CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
30396
- OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30397
- OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30398
-
30399
 
 
 
 
 
 
 
 
 
 
 
30400
  --------------------------------------------------------------------------------
30401
- skia
30402
 
30403
- Copyright (C) 2014 Google Inc. All rights reserved.
30404
 
30405
  Redistribution and use in source and binary forms, with or without
30406
  modification, are permitted provided that the following conditions are
30407
  met:
30408
 
30409
- * Redistributions of source code must retain the above copyright
30410
- notice, this list of conditions and the following disclaimer.
30411
-
30412
- * Redistributions in binary form must reproduce the above copyright
30413
- notice, this list of conditions and the following disclaimer in
30414
- the documentation and/or other materials provided with the
30415
- distribution.
30416
-
30417
- * Neither the name of the copyright holder nor the names of its
30418
- contributors may be used to endorse or promote products derived
30419
- from this software without specific prior written permission.
30420
 
30421
  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30422
  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
@@ -30430,9 +30480,9 @@ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30430
  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30431
  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30432
  --------------------------------------------------------------------------------
30433
- skia
30434
 
30435
- Copyright (c) 2011 Google Inc. All rights reserved.
30436
 
30437
  Redistribution and use in source and binary forms, with or without
30438
  modification, are permitted provided that the following conditions are
@@ -30460,25 +30510,23 @@ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30460
  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30461
  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30462
  --------------------------------------------------------------------------------
30463
- skia
30464
 
30465
- Copyright (c) 2011 Google Inc. All rights reserved.
30466
 
30467
  Redistribution and use in source and binary forms, with or without
30468
  modification, are permitted provided that the following conditions are
30469
  met:
30470
 
30471
- * Redistributions of source code must retain the above copyright
30472
- notice, this list of conditions and the following disclaimer.
30473
-
30474
- * Redistributions in binary form must reproduce the above copyright
30475
- notice, this list of conditions and the following disclaimer in
30476
- the documentation and/or other materials provided with the
30477
- distribution.
30478
-
30479
- * Neither the name of the copyright holder nor the names of its
30480
- contributors may be used to endorse or promote products derived
30481
- from this software without specific prior written permission.
30482
 
30483
  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30484
  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
@@ -30492,25 +30540,23 @@ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30492
  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30493
  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30494
  --------------------------------------------------------------------------------
30495
- skia
30496
 
30497
- Copyright (c) 2014 Google Inc.
30498
 
30499
  Redistribution and use in source and binary forms, with or without
30500
  modification, are permitted provided that the following conditions are
30501
  met:
30502
 
30503
- * Redistributions of source code must retain the above copyright
30504
- notice, this list of conditions and the following disclaimer.
30505
-
30506
- * Redistributions in binary form must reproduce the above copyright
30507
- notice, this list of conditions and the following disclaimer in
30508
- the documentation and/or other materials provided with the
30509
- distribution.
30510
-
30511
- * Neither the name of the copyright holder nor the names of its
30512
- contributors may be used to endorse or promote products derived
30513
- from this software without specific prior written permission.
30514
 
30515
  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30516
  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
@@ -30524,25 +30570,23 @@ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30524
  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30525
  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30526
  --------------------------------------------------------------------------------
30527
- skia
30528
 
30529
- Copyright 2005 The Android Open Source Project
30530
 
30531
  Redistribution and use in source and binary forms, with or without
30532
  modification, are permitted provided that the following conditions are
30533
  met:
30534
 
30535
- * Redistributions of source code must retain the above copyright
30536
- notice, this list of conditions and the following disclaimer.
30537
-
30538
- * Redistributions in binary form must reproduce the above copyright
30539
- notice, this list of conditions and the following disclaimer in
30540
- the documentation and/or other materials provided with the
30541
- distribution.
30542
-
30543
- * Neither the name of the copyright holder nor the names of its
30544
- contributors may be used to endorse or promote products derived
30545
- from this software without specific prior written permission.
30546
 
30547
  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30548
  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
@@ -30556,25 +30600,23 @@ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30556
  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30557
  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30558
  --------------------------------------------------------------------------------
30559
- skia
30560
 
30561
- Copyright 2006 The Android Open Source Project
30562
 
30563
  Redistribution and use in source and binary forms, with or without
30564
  modification, are permitted provided that the following conditions are
30565
  met:
30566
 
30567
- * Redistributions of source code must retain the above copyright
30568
- notice, this list of conditions and the following disclaimer.
30569
-
30570
- * Redistributions in binary form must reproduce the above copyright
30571
- notice, this list of conditions and the following disclaimer in
30572
- the documentation and/or other materials provided with the
30573
- distribution.
30574
-
30575
- * Neither the name of the copyright holder nor the names of its
30576
- contributors may be used to endorse or promote products derived
30577
- from this software without specific prior written permission.
30578
 
30579
  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30580
  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
@@ -30588,26 +30630,23 @@ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30588
  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30589
  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30590
  --------------------------------------------------------------------------------
30591
- skia
30592
 
30593
- Copyright 2006-2012 The Android Open Source Project
30594
- Copyright 2012 Mozilla Foundation
30595
 
30596
  Redistribution and use in source and binary forms, with or without
30597
  modification, are permitted provided that the following conditions are
30598
  met:
30599
 
30600
- * Redistributions of source code must retain the above copyright
30601
- notice, this list of conditions and the following disclaimer.
30602
-
30603
- * Redistributions in binary form must reproduce the above copyright
30604
- notice, this list of conditions and the following disclaimer in
30605
- the documentation and/or other materials provided with the
30606
- distribution.
30607
-
30608
- * Neither the name of the copyright holder nor the names of its
30609
- contributors may be used to endorse or promote products derived
30610
- from this software without specific prior written permission.
30611
 
30612
  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30613
  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
@@ -30621,25 +30660,23 @@ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30621
  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30622
  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30623
  --------------------------------------------------------------------------------
30624
- skia
30625
 
30626
- Copyright 2007 The Android Open Source Project
30627
 
30628
  Redistribution and use in source and binary forms, with or without
30629
  modification, are permitted provided that the following conditions are
30630
  met:
30631
 
30632
- * Redistributions of source code must retain the above copyright
30633
- notice, this list of conditions and the following disclaimer.
30634
-
30635
- * Redistributions in binary form must reproduce the above copyright
30636
- notice, this list of conditions and the following disclaimer in
30637
- the documentation and/or other materials provided with the
30638
- distribution.
30639
-
30640
- * Neither the name of the copyright holder nor the names of its
30641
- contributors may be used to endorse or promote products derived
30642
- from this software without specific prior written permission.
30643
 
30644
  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30645
  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
@@ -30653,19 +30690,546 @@ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30653
  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30654
  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30655
  --------------------------------------------------------------------------------
30656
- skia
30657
 
30658
- Copyright 2008 Google Inc.
30659
 
30660
  Redistribution and use in source and binary forms, with or without
30661
  modification, are permitted provided that the following conditions are
30662
  met:
30663
 
30664
- * Redistributions of source code must retain the above copyright
30665
- notice, this list of conditions and the following disclaimer.
30666
-
30667
- * Redistributions in binary form must reproduce the above copyright
30668
- notice, this list of conditions and the following disclaimer in
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
30669
  the documentation and/or other materials provided with the
30670
  distribution.
30671
 
@@ -32425,6 +32989,38 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
32425
  --------------------------------------------------------------------------------
32426
  skia
32427
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
32428
  Copyright 2025 Google LLC
32429
 
32430
  Redistribution and use in source and binary forms, with or without
 
3506
  Copyright (c) 2000-2005 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
3507
  Copyright (c) 2001-2002 Greg Stein <gstein@users.sourceforge.net>
3508
  Copyright (c) 2002-2016 Karl Waclawek <karl@waclawek.net>
3509
+ Copyright (c) 2016-2025 Sebastian Pipping <sebastian@pipping.org>
3510
  Copyright (c) 2016 Cristian Rodríguez <crrodriguez@opensuse.org>
3511
  Copyright (c) 2016 Thomas Beutlich <tc@tbeu.de>
3512
  Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
3513
  Copyright (c) 2022 Thijs Schreijer <thijs@thijsschreijer.nl>
3514
+ Copyright (c) 2023 Hanno Böck <hanno@gentoo.org>
3515
+ Copyright (c) 2023 Sony Corporation / Snild Dolkow <snild@sony.com>
3516
+ Copyright (c) 2024 Taichi Haradaguchi <20001722@ymail.ne.jp>
3517
 
3518
  Licensed under the MIT license:
3519
 
 
3545
  Copyright (c) 2002-2016 Karl Waclawek <karl@waclawek.net>
3546
  Copyright (c) 2005-2009 Steven Solie <steven@solie.ca>
3547
  Copyright (c) 2016 Eric Rahm <erahm@mozilla.com>
3548
+ Copyright (c) 2016-2025 Sebastian Pipping <sebastian@pipping.org>
3549
  Copyright (c) 2016 Gaurav <g.gupta@samsung.com>
3550
  Copyright (c) 2016 Thomas Beutlich <tc@tbeu.de>
3551
  Copyright (c) 2016 Gustavo Grieco <gustavo.grieco@imag.fr>
 
3564
  Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
3565
  Copyright (c) 2019-2020 Ben Wagner <bungeman@chromium.org>
3566
  Copyright (c) 2019 Vadim Zeitlin <vadim@zeitlins.org>
3567
+ Copyright (c) 2021 Donghee Na <donghee.na@python.org>
3568
  Copyright (c) 2022 Samanta Navarro <ferivoz@riseup.net>
3569
  Copyright (c) 2022 Jeffrey Walton <noloader@gmail.com>
3570
  Copyright (c) 2022 Jann Horn <jannh@google.com>
3571
+ Copyright (c) 2022 Sean McBride <sean@rogue-research.com>
3572
+ Copyright (c) 2023 Owain Davies <owaind@bath.edu>
3573
+ Copyright (c) 2023-2024 Sony Corporation / Snild Dolkow <snild@sony.com>
3574
+ Copyright (c) 2024-2025 Berkay Eren Ürün <berkay.ueruen@siemens.com>
3575
+ Copyright (c) 2024 Hanno Böck <hanno@gentoo.org>
3576
 
3577
  Licensed under the MIT license:
3578
 
 
3633
  Copyright (c) 2002 Greg Stein <gstein@users.sourceforge.net>
3634
  Copyright (c) 2002-2016 Karl Waclawek <karl@waclawek.net>
3635
  Copyright (c) 2005-2009 Steven Solie <steven@solie.ca>
3636
+ Copyright (c) 2016-2024 Sebastian Pipping <sebastian@pipping.org>
3637
  Copyright (c) 2016 Pascal Cuoq <cuoq@trust-in-soft.com>
3638
  Copyright (c) 2016 Don Lewis <truckman@apache.org>
3639
  Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
 
3641
  Copyright (c) 2017 Benbuck Nason <bnason@netflix.com>
3642
  Copyright (c) 2017 José Gutiérrez de la Concha <jose@zeroc.com>
3643
  Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
3644
+ Copyright (c) 2021 Donghee Na <donghee.na@python.org>
3645
  Copyright (c) 2022 Martin Ettl <ettl.martin78@googlemail.com>
3646
+ Copyright (c) 2022 Sean McBride <sean@rogue-research.com>
3647
+ Copyright (c) 2023 Hanno Böck <hanno@gentoo.org>
3648
 
3649
  Licensed under the MIT license:
3650
 
 
3674
  Copyright (c) 2001-2003 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
3675
  Copyright (c) 2004-2009 Karl Waclawek <karl@waclawek.net>
3676
  Copyright (c) 2005-2007 Steven Solie <steven@solie.ca>
3677
+ Copyright (c) 2016-2023 Sebastian Pipping <sebastian@pipping.org>
3678
  Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
3679
  Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
3680
  Copyright (c) 2020 Joe Orton <jorton@redhat.com>
3681
  Copyright (c) 2020 Kleber Tarcísio <klebertarcisio@yahoo.com.br>
3682
  Copyright (c) 2021 Tim Bray <tbray@textuality.com>
3683
  Copyright (c) 2022 Martin Ettl <ettl.martin78@googlemail.com>
3684
+ Copyright (c) 2022 Sean McBride <sean@rogue-research.com>
3685
 
3686
  Licensed under the MIT license:
3687
 
 
3713
  Copyright (c) 2016-2017 Sebastian Pipping <sebastian@pipping.org>
3714
  Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
3715
  Copyright (c) 2017 Franek Korta <fkorta@gmail.com>
3716
+ Copyright (c) 2022 Sean McBride <sean@rogue-research.com>
3717
+ Copyright (c) 2025 Hanno Böck <hanno@gentoo.org>
3718
 
3719
  Licensed under the MIT license:
3720
 
 
3743
  Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
3744
  Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
3745
  Copyright (c) 2002-2005 Karl Waclawek <karl@waclawek.net>
3746
+ Copyright (c) 2016-2024 Sebastian Pipping <sebastian@pipping.org>
3747
  Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
3748
 
3749
  Licensed under the MIT license:
 
3808
  Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
3809
  Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
3810
  Copyright (c) 2005 Karl Waclawek <karl@waclawek.net>
3811
+ Copyright (c) 2016-2023 Sebastian Pipping <sebastian@pipping.org>
3812
 
3813
  Licensed under the MIT license:
3814
 
 
3920
  --------------------------------------------------------------------------------
3921
  expat
3922
 
3923
+ Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
3924
+ Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
3925
+ Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
3926
+ Copyright (c) 2016-2024 Sebastian Pipping <sebastian@pipping.org>
3927
+
3928
+ Licensed under the MIT license:
3929
+
3930
+ Permission is hereby granted, free of charge, to any person obtaining
3931
+ a copy of this software and associated documentation files (the
3932
+ "Software"), to deal in the Software without restriction, including
3933
+ without limitation the rights to use, copy, modify, merge, publish,
3934
+ distribute, sublicense, and/or sell copies of the Software, and to permit
3935
+ persons to whom the Software is furnished to do so, subject to the
3936
+ following conditions:
3937
+
3938
+ The above copyright notice and this permission notice shall be included
3939
+ in all copies or substantial portions of the Software.
3940
+
3941
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
3942
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
3943
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
3944
+ NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
3945
+ DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
3946
+ OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
3947
+ USE OR OTHER DEALINGS IN THE SOFTWARE.
3948
+ --------------------------------------------------------------------------------
3949
+ expat
3950
+
3951
  Copyright (c) 1997-2000 Thai Open Source Software Center Ltd
3952
  Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
3953
  Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
 
4012
  Copyright (c) 2002-2006 Karl Waclawek <karl@waclawek.net>
4013
  Copyright (c) 2002-2003 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
4014
  Copyright (c) 2005-2009 Steven Solie <steven@solie.ca>
4015
+ Copyright (c) 2016-2023 Sebastian Pipping <sebastian@pipping.org>
4016
  Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
4017
  Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
4018
+ Copyright (c) 2021 Donghee Na <donghee.na@python.org>
4019
 
4020
  Licensed under the MIT license:
4021
 
 
4044
  Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
4045
  Copyright (c) 2002 Karl Waclawek <karl@waclawek.net>
4046
  Copyright (c) 2002 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
4047
+ Copyright (c) 2017-2024 Sebastian Pipping <sebastian@pipping.org>
4048
 
4049
  Licensed under the MIT license:
4050
 
 
4074
  Copyright (c) 2002-2003 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
4075
  Copyright (c) 2004-2006 Karl Waclawek <karl@waclawek.net>
4076
  Copyright (c) 2005-2007 Steven Solie <steven@solie.ca>
4077
+ Copyright (c) 2016-2023 Sebastian Pipping <sebastian@pipping.org>
4078
  Copyright (c) 2017 Rhodri James <rhodri@wildebeest.org.uk>
4079
  Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
4080
+ Copyright (c) 2021 Donghee Na <donghee.na@python.org>
4081
+ Copyright (c) 2024 Hanno Böck <hanno@gentoo.org>
4082
 
4083
  Licensed under the MIT license:
4084
 
 
4213
  expat
4214
 
4215
  Copyright (c) 1998-2000 Thai Open Source Software Center Ltd and Clark Cooper
4216
+ Copyright (c) 2001-2025 Expat maintainers
4217
 
4218
  Permission is hereby granted, free of charge, to any person obtaining
4219
  a copy of this software and associated documentation files (the
 
4268
  Copyright (c) 2000 Clark Cooper <coopercc@users.sourceforge.net>
4269
  Copyright (c) 2002 Greg Stein <gstein@users.sourceforge.net>
4270
  Copyright (c) 2005 Karl Waclawek <karl@waclawek.net>
4271
+ Copyright (c) 2017-2023 Sebastian Pipping <sebastian@pipping.org>
4272
+ Copyright (c) 2023 Orgad Shaneh <orgad.shaneh@audiocodes.com>
4273
 
4274
  Licensed under the MIT license:
4275
 
 
4323
  Copyright (c) 2002-2003 Fred L. Drake, Jr. <fdrake@users.sourceforge.net>
4324
  Copyright (c) 2002-2006 Karl Waclawek <karl@waclawek.net>
4325
  Copyright (c) 2003 Greg Stein <gstein@users.sourceforge.net>
4326
+ Copyright (c) 2016-2025 Sebastian Pipping <sebastian@pipping.org>
4327
  Copyright (c) 2018 Yury Gribov <tetra2005@gmail.com>
4328
  Copyright (c) 2019 David Loffredo <loffredo@steptools.com>
4329
+ Copyright (c) 2023-2024 Sony Corporation / Snild Dolkow <snild@sony.com>
4330
+ Copyright (c) 2024 Taichi Haradaguchi <20001722@ymail.ne.jp>
4331
+
4332
+ Licensed under the MIT license:
4333
+
4334
+ Permission is hereby granted, free of charge, to any person obtaining
4335
+ a copy of this software and associated documentation files (the
4336
+ "Software"), to deal in the Software without restriction, including
4337
+ without limitation the rights to use, copy, modify, merge, publish,
4338
+ distribute, sublicense, and/or sell copies of the Software, and to permit
4339
+ persons to whom the Software is furnished to do so, subject to the
4340
+ following conditions:
4341
+
4342
+ The above copyright notice and this permission notice shall be included
4343
+ in all copies or substantial portions of the Software.
4344
+
4345
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
4346
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
4347
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
4348
+ NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
4349
+ DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
4350
+ OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
4351
+ USE OR OTHER DEALINGS IN THE SOFTWARE.
4352
+ --------------------------------------------------------------------------------
4353
+ expat
4354
+
4355
+ Copyright (c) 2022 Mark Brand <markbrand@google.com>
4356
+ Copyright (c) 2025 Sebastian Pipping <sebastian@pipping.org>
4357
 
4358
  Licensed under the MIT license:
4359
 
 
4783
  This Source Code Form is "Incompatible With Secondary Licenses", as
4784
  defined by the Mozilla Public License, v. 2.0.
4785
 
4786
+ You may obtain a copy of this library's Source Code Form from: https://dart.googlesource.com/sdk/+/a4e60e5add75b3d06f380aad73ca660a719fa738
4787
  /third_party/fallback_root_certificates/
4788
 
4789
  --------------------------------------------------------------------------------
 
30437
  THL A29 Limited ("Tencent Modifications").
30438
  All Tencent Modifications are Copyright (C) 2015 THL A29 Limited.
30439
  --------------------------------------------------------------------------------
30440
+ re2
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
30441
 
30442
+ Copyright (c) 2002 by Lucent Technologies.
30443
+ Permission to use, copy, modify, and distribute this software for any
30444
+ purpose without fee is hereby granted, provided that this entire notice
30445
+ is included in all copies of any software which is or includes a copy
30446
+ or modification of this software and in all copies of the supporting
30447
+ documentation for such software.
30448
+ THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED
30449
+ WARRANTY. IN PARTICULAR, NEITHER THE AUTHORS NOR LUCENT TECHNOLOGIES MAKE ANY
30450
+ REPRESENTATION OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY
30451
+ OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE.
30452
  --------------------------------------------------------------------------------
30453
+ re2
30454
 
30455
+ Copyright (c) 2009 The RE2 Authors. All rights reserved.
30456
 
30457
  Redistribution and use in source and binary forms, with or without
30458
  modification, are permitted provided that the following conditions are
30459
  met:
30460
 
30461
+ * Redistributions of source code must retain the above copyright
30462
+ notice, this list of conditions and the following disclaimer.
30463
+ * Redistributions in binary form must reproduce the above
30464
+ copyright notice, this list of conditions and the following disclaimer
30465
+ in the documentation and/or other materials provided with the
30466
+ distribution.
30467
+ * Neither the name of Google Inc. nor the names of its
30468
+ contributors may be used to endorse or promote products derived from
30469
+ this software without specific prior written permission.
 
 
30470
 
30471
  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30472
  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 
30480
  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30481
  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30482
  --------------------------------------------------------------------------------
30483
+ re2
30484
 
30485
+ Copyright 1999-2005 The RE2 Authors. All Rights Reserved.
30486
 
30487
  Redistribution and use in source and binary forms, with or without
30488
  modification, are permitted provided that the following conditions are
 
30510
  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30511
  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30512
  --------------------------------------------------------------------------------
30513
+ re2
30514
 
30515
+ Copyright 2003-2009 Google Inc. All rights reserved.
30516
 
30517
  Redistribution and use in source and binary forms, with or without
30518
  modification, are permitted provided that the following conditions are
30519
  met:
30520
 
30521
+ * Redistributions of source code must retain the above copyright
30522
+ notice, this list of conditions and the following disclaimer.
30523
+ * Redistributions in binary form must reproduce the above
30524
+ copyright notice, this list of conditions and the following disclaimer
30525
+ in the documentation and/or other materials provided with the
30526
+ distribution.
30527
+ * Neither the name of Google Inc. nor the names of its
30528
+ contributors may be used to endorse or promote products derived from
30529
+ this software without specific prior written permission.
 
 
30530
 
30531
  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30532
  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 
30540
  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30541
  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30542
  --------------------------------------------------------------------------------
30543
+ re2
30544
 
30545
+ Copyright 2003-2009 The RE2 Authors. All Rights Reserved.
30546
 
30547
  Redistribution and use in source and binary forms, with or without
30548
  modification, are permitted provided that the following conditions are
30549
  met:
30550
 
30551
+ * Redistributions of source code must retain the above copyright
30552
+ notice, this list of conditions and the following disclaimer.
30553
+ * Redistributions in binary form must reproduce the above
30554
+ copyright notice, this list of conditions and the following disclaimer
30555
+ in the documentation and/or other materials provided with the
30556
+ distribution.
30557
+ * Neither the name of Google Inc. nor the names of its
30558
+ contributors may be used to endorse or promote products derived from
30559
+ this software without specific prior written permission.
 
 
30560
 
30561
  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30562
  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 
30570
  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30571
  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30572
  --------------------------------------------------------------------------------
30573
+ re2
30574
 
30575
+ Copyright 2003-2010 Google Inc. All Rights Reserved.
30576
 
30577
  Redistribution and use in source and binary forms, with or without
30578
  modification, are permitted provided that the following conditions are
30579
  met:
30580
 
30581
+ * Redistributions of source code must retain the above copyright
30582
+ notice, this list of conditions and the following disclaimer.
30583
+ * Redistributions in binary form must reproduce the above
30584
+ copyright notice, this list of conditions and the following disclaimer
30585
+ in the documentation and/or other materials provided with the
30586
+ distribution.
30587
+ * Neither the name of Google Inc. nor the names of its
30588
+ contributors may be used to endorse or promote products derived from
30589
+ this software without specific prior written permission.
 
 
30590
 
30591
  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30592
  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 
30600
  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30601
  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30602
  --------------------------------------------------------------------------------
30603
+ re2
30604
 
30605
+ Copyright 2006 The RE2 Authors. All Rights Reserved.
30606
 
30607
  Redistribution and use in source and binary forms, with or without
30608
  modification, are permitted provided that the following conditions are
30609
  met:
30610
 
30611
+ * Redistributions of source code must retain the above copyright
30612
+ notice, this list of conditions and the following disclaimer.
30613
+ * Redistributions in binary form must reproduce the above
30614
+ copyright notice, this list of conditions and the following disclaimer
30615
+ in the documentation and/or other materials provided with the
30616
+ distribution.
30617
+ * Neither the name of Google Inc. nor the names of its
30618
+ contributors may be used to endorse or promote products derived from
30619
+ this software without specific prior written permission.
 
 
30620
 
30621
  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30622
  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 
30630
  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30631
  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30632
  --------------------------------------------------------------------------------
30633
+ re2
30634
 
30635
+ Copyright 2006-2007 The RE2 Authors. All Rights Reserved.
 
30636
 
30637
  Redistribution and use in source and binary forms, with or without
30638
  modification, are permitted provided that the following conditions are
30639
  met:
30640
 
30641
+ * Redistributions of source code must retain the above copyright
30642
+ notice, this list of conditions and the following disclaimer.
30643
+ * Redistributions in binary form must reproduce the above
30644
+ copyright notice, this list of conditions and the following disclaimer
30645
+ in the documentation and/or other materials provided with the
30646
+ distribution.
30647
+ * Neither the name of Google Inc. nor the names of its
30648
+ contributors may be used to endorse or promote products derived from
30649
+ this software without specific prior written permission.
 
 
30650
 
30651
  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30652
  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 
30660
  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30661
  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30662
  --------------------------------------------------------------------------------
30663
+ re2
30664
 
30665
+ Copyright 2007 The RE2 Authors. All Rights Reserved.
30666
 
30667
  Redistribution and use in source and binary forms, with or without
30668
  modification, are permitted provided that the following conditions are
30669
  met:
30670
 
30671
+ * Redistributions of source code must retain the above copyright
30672
+ notice, this list of conditions and the following disclaimer.
30673
+ * Redistributions in binary form must reproduce the above
30674
+ copyright notice, this list of conditions and the following disclaimer
30675
+ in the documentation and/or other materials provided with the
30676
+ distribution.
30677
+ * Neither the name of Google Inc. nor the names of its
30678
+ contributors may be used to endorse or promote products derived from
30679
+ this software without specific prior written permission.
 
 
30680
 
30681
  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30682
  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 
30690
  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30691
  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30692
  --------------------------------------------------------------------------------
30693
+ re2
30694
 
30695
+ Copyright 2008 The RE2 Authors. All Rights Reserved.
30696
 
30697
  Redistribution and use in source and binary forms, with or without
30698
  modification, are permitted provided that the following conditions are
30699
  met:
30700
 
30701
+ * Redistributions of source code must retain the above copyright
30702
+ notice, this list of conditions and the following disclaimer.
30703
+ * Redistributions in binary form must reproduce the above
30704
+ copyright notice, this list of conditions and the following disclaimer
30705
+ in the documentation and/or other materials provided with the
30706
+ distribution.
30707
+ * Neither the name of Google Inc. nor the names of its
30708
+ contributors may be used to endorse or promote products derived from
30709
+ this software without specific prior written permission.
30710
+
30711
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30712
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
30713
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
30714
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
30715
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
30716
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
30717
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
30718
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
30719
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30720
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30721
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30722
+ --------------------------------------------------------------------------------
30723
+ re2
30724
+
30725
+ Copyright 2009 The RE2 Authors. All Rights Reserved.
30726
+
30727
+ Redistribution and use in source and binary forms, with or without
30728
+ modification, are permitted provided that the following conditions are
30729
+ met:
30730
+
30731
+ * Redistributions of source code must retain the above copyright
30732
+ notice, this list of conditions and the following disclaimer.
30733
+ * Redistributions in binary form must reproduce the above
30734
+ copyright notice, this list of conditions and the following disclaimer
30735
+ in the documentation and/or other materials provided with the
30736
+ distribution.
30737
+ * Neither the name of Google Inc. nor the names of its
30738
+ contributors may be used to endorse or promote products derived from
30739
+ this software without specific prior written permission.
30740
+
30741
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30742
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
30743
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
30744
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
30745
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
30746
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
30747
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
30748
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
30749
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30750
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30751
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30752
+ --------------------------------------------------------------------------------
30753
+ re2
30754
+
30755
+ Copyright 2010 The RE2 Authors. All Rights Reserved.
30756
+
30757
+ Redistribution and use in source and binary forms, with or without
30758
+ modification, are permitted provided that the following conditions are
30759
+ met:
30760
+
30761
+ * Redistributions of source code must retain the above copyright
30762
+ notice, this list of conditions and the following disclaimer.
30763
+ * Redistributions in binary form must reproduce the above
30764
+ copyright notice, this list of conditions and the following disclaimer
30765
+ in the documentation and/or other materials provided with the
30766
+ distribution.
30767
+ * Neither the name of Google Inc. nor the names of its
30768
+ contributors may be used to endorse or promote products derived from
30769
+ this software without specific prior written permission.
30770
+
30771
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30772
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
30773
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
30774
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
30775
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
30776
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
30777
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
30778
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
30779
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30780
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30781
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30782
+ --------------------------------------------------------------------------------
30783
+ re2
30784
+
30785
+ Copyright 2016 The RE2 Authors. All Rights Reserved.
30786
+
30787
+ Redistribution and use in source and binary forms, with or without
30788
+ modification, are permitted provided that the following conditions are
30789
+ met:
30790
+
30791
+ * Redistributions of source code must retain the above copyright
30792
+ notice, this list of conditions and the following disclaimer.
30793
+ * Redistributions in binary form must reproduce the above
30794
+ copyright notice, this list of conditions and the following disclaimer
30795
+ in the documentation and/or other materials provided with the
30796
+ distribution.
30797
+ * Neither the name of Google Inc. nor the names of its
30798
+ contributors may be used to endorse or promote products derived from
30799
+ this software without specific prior written permission.
30800
+
30801
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30802
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
30803
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
30804
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
30805
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
30806
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
30807
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
30808
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
30809
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30810
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30811
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30812
+ --------------------------------------------------------------------------------
30813
+ re2
30814
+
30815
+ Copyright 2018 The RE2 Authors. All Rights Reserved.
30816
+
30817
+ Redistribution and use in source and binary forms, with or without
30818
+ modification, are permitted provided that the following conditions are
30819
+ met:
30820
+
30821
+ * Redistributions of source code must retain the above copyright
30822
+ notice, this list of conditions and the following disclaimer.
30823
+ * Redistributions in binary form must reproduce the above
30824
+ copyright notice, this list of conditions and the following disclaimer
30825
+ in the documentation and/or other materials provided with the
30826
+ distribution.
30827
+ * Neither the name of Google Inc. nor the names of its
30828
+ contributors may be used to endorse or promote products derived from
30829
+ this software without specific prior written permission.
30830
+
30831
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30832
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
30833
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
30834
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
30835
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
30836
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
30837
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
30838
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
30839
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30840
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30841
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30842
+ --------------------------------------------------------------------------------
30843
+ re2
30844
+
30845
+ Copyright 2019 The RE2 Authors. All Rights Reserved.
30846
+
30847
+ Redistribution and use in source and binary forms, with or without
30848
+ modification, are permitted provided that the following conditions are
30849
+ met:
30850
+
30851
+ * Redistributions of source code must retain the above copyright
30852
+ notice, this list of conditions and the following disclaimer.
30853
+ * Redistributions in binary form must reproduce the above
30854
+ copyright notice, this list of conditions and the following disclaimer
30855
+ in the documentation and/or other materials provided with the
30856
+ distribution.
30857
+ * Neither the name of Google Inc. nor the names of its
30858
+ contributors may be used to endorse or promote products derived from
30859
+ this software without specific prior written permission.
30860
+
30861
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30862
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
30863
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
30864
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
30865
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
30866
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
30867
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
30868
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
30869
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30870
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30871
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30872
+ --------------------------------------------------------------------------------
30873
+ re2
30874
+
30875
+ Copyright 2022 The RE2 Authors. All Rights Reserved.
30876
+
30877
+ Redistribution and use in source and binary forms, with or without
30878
+ modification, are permitted provided that the following conditions are
30879
+ met:
30880
+
30881
+ * Redistributions of source code must retain the above copyright
30882
+ notice, this list of conditions and the following disclaimer.
30883
+ * Redistributions in binary form must reproduce the above
30884
+ copyright notice, this list of conditions and the following disclaimer
30885
+ in the documentation and/or other materials provided with the
30886
+ distribution.
30887
+ * Neither the name of Google Inc. nor the names of its
30888
+ contributors may be used to endorse or promote products derived from
30889
+ this software without specific prior written permission.
30890
+
30891
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30892
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
30893
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
30894
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
30895
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
30896
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
30897
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
30898
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
30899
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30900
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30901
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30902
+ --------------------------------------------------------------------------------
30903
+ re2
30904
+
30905
+ Copyright 2023 The RE2 Authors. All Rights Reserved.
30906
+
30907
+ Redistribution and use in source and binary forms, with or without
30908
+ modification, are permitted provided that the following conditions are
30909
+ met:
30910
+
30911
+ * Redistributions of source code must retain the above copyright
30912
+ notice, this list of conditions and the following disclaimer.
30913
+ * Redistributions in binary form must reproduce the above
30914
+ copyright notice, this list of conditions and the following disclaimer
30915
+ in the documentation and/or other materials provided with the
30916
+ distribution.
30917
+ * Neither the name of Google Inc. nor the names of its
30918
+ contributors may be used to endorse or promote products derived from
30919
+ this software without specific prior written permission.
30920
+
30921
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30922
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
30923
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
30924
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
30925
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
30926
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
30927
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
30928
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
30929
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30930
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30931
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30932
+ --------------------------------------------------------------------------------
30933
+ sembast
30934
+
30935
+ Copyright (c) 2020, Alexandre Roux Tekartik
30936
+ All rights reserved.
30937
+
30938
+ Redistribution and use in source and binary forms, with or without
30939
+ modification, are permitted provided that the following conditions are met:
30940
+
30941
+ * Redistributions of source code must retain the above copyright notice, this
30942
+ list of conditions and the following disclaimer.
30943
+
30944
+ * Redistributions in binary form must reproduce the above copyright notice,
30945
+ this list of conditions and the following disclaimer in the documentation
30946
+ and/or other materials provided with the distribution.
30947
+
30948
+ * Neither the name of tekartik_iodb.dart nor the names of its
30949
+ contributors may be used to endorse or promote products derived from
30950
+ this software without specific prior written permission.
30951
+
30952
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
30953
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
30954
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
30955
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
30956
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
30957
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
30958
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
30959
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
30960
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30961
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30962
+
30963
+
30964
+ --------------------------------------------------------------------------------
30965
+ skia
30966
+
30967
+ Copyright (C) 2014 Google Inc. All rights reserved.
30968
+
30969
+ Redistribution and use in source and binary forms, with or without
30970
+ modification, are permitted provided that the following conditions are
30971
+ met:
30972
+
30973
+ * Redistributions of source code must retain the above copyright
30974
+ notice, this list of conditions and the following disclaimer.
30975
+
30976
+ * Redistributions in binary form must reproduce the above copyright
30977
+ notice, this list of conditions and the following disclaimer in
30978
+ the documentation and/or other materials provided with the
30979
+ distribution.
30980
+
30981
+ * Neither the name of the copyright holder nor the names of its
30982
+ contributors may be used to endorse or promote products derived
30983
+ from this software without specific prior written permission.
30984
+
30985
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
30986
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
30987
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
30988
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
30989
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
30990
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
30991
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
30992
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
30993
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
30994
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
30995
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30996
+ --------------------------------------------------------------------------------
30997
+ skia
30998
+
30999
+ Copyright (c) 2011 Google Inc. All rights reserved.
31000
+
31001
+ Redistribution and use in source and binary forms, with or without
31002
+ modification, are permitted provided that the following conditions are
31003
+ met:
31004
+
31005
+ * Redistributions of source code must retain the above copyright
31006
+ notice, this list of conditions and the following disclaimer.
31007
+ * Redistributions in binary form must reproduce the above
31008
+ copyright notice, this list of conditions and the following disclaimer
31009
+ in the documentation and/or other materials provided with the
31010
+ distribution.
31011
+ * Neither the name of Google Inc. nor the names of its
31012
+ contributors may be used to endorse or promote products derived from
31013
+ this software without specific prior written permission.
31014
+
31015
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
31016
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
31017
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
31018
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
31019
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
31020
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
31021
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
31022
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
31023
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
31024
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31025
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31026
+ --------------------------------------------------------------------------------
31027
+ skia
31028
+
31029
+ Copyright (c) 2011 Google Inc. All rights reserved.
31030
+
31031
+ Redistribution and use in source and binary forms, with or without
31032
+ modification, are permitted provided that the following conditions are
31033
+ met:
31034
+
31035
+ * Redistributions of source code must retain the above copyright
31036
+ notice, this list of conditions and the following disclaimer.
31037
+
31038
+ * Redistributions in binary form must reproduce the above copyright
31039
+ notice, this list of conditions and the following disclaimer in
31040
+ the documentation and/or other materials provided with the
31041
+ distribution.
31042
+
31043
+ * Neither the name of the copyright holder nor the names of its
31044
+ contributors may be used to endorse or promote products derived
31045
+ from this software without specific prior written permission.
31046
+
31047
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
31048
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
31049
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
31050
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
31051
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
31052
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
31053
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
31054
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
31055
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
31056
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31057
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31058
+ --------------------------------------------------------------------------------
31059
+ skia
31060
+
31061
+ Copyright (c) 2014 Google Inc.
31062
+
31063
+ Redistribution and use in source and binary forms, with or without
31064
+ modification, are permitted provided that the following conditions are
31065
+ met:
31066
+
31067
+ * Redistributions of source code must retain the above copyright
31068
+ notice, this list of conditions and the following disclaimer.
31069
+
31070
+ * Redistributions in binary form must reproduce the above copyright
31071
+ notice, this list of conditions and the following disclaimer in
31072
+ the documentation and/or other materials provided with the
31073
+ distribution.
31074
+
31075
+ * Neither the name of the copyright holder nor the names of its
31076
+ contributors may be used to endorse or promote products derived
31077
+ from this software without specific prior written permission.
31078
+
31079
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
31080
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
31081
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
31082
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
31083
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
31084
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
31085
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
31086
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
31087
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
31088
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31089
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31090
+ --------------------------------------------------------------------------------
31091
+ skia
31092
+
31093
+ Copyright 2005 The Android Open Source Project
31094
+
31095
+ Redistribution and use in source and binary forms, with or without
31096
+ modification, are permitted provided that the following conditions are
31097
+ met:
31098
+
31099
+ * Redistributions of source code must retain the above copyright
31100
+ notice, this list of conditions and the following disclaimer.
31101
+
31102
+ * Redistributions in binary form must reproduce the above copyright
31103
+ notice, this list of conditions and the following disclaimer in
31104
+ the documentation and/or other materials provided with the
31105
+ distribution.
31106
+
31107
+ * Neither the name of the copyright holder nor the names of its
31108
+ contributors may be used to endorse or promote products derived
31109
+ from this software without specific prior written permission.
31110
+
31111
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
31112
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
31113
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
31114
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
31115
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
31116
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
31117
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
31118
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
31119
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
31120
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31121
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31122
+ --------------------------------------------------------------------------------
31123
+ skia
31124
+
31125
+ Copyright 2006 The Android Open Source Project
31126
+
31127
+ Redistribution and use in source and binary forms, with or without
31128
+ modification, are permitted provided that the following conditions are
31129
+ met:
31130
+
31131
+ * Redistributions of source code must retain the above copyright
31132
+ notice, this list of conditions and the following disclaimer.
31133
+
31134
+ * Redistributions in binary form must reproduce the above copyright
31135
+ notice, this list of conditions and the following disclaimer in
31136
+ the documentation and/or other materials provided with the
31137
+ distribution.
31138
+
31139
+ * Neither the name of the copyright holder nor the names of its
31140
+ contributors may be used to endorse or promote products derived
31141
+ from this software without specific prior written permission.
31142
+
31143
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
31144
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
31145
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
31146
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
31147
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
31148
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
31149
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
31150
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
31151
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
31152
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31153
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31154
+ --------------------------------------------------------------------------------
31155
+ skia
31156
+
31157
+ Copyright 2006-2012 The Android Open Source Project
31158
+ Copyright 2012 Mozilla Foundation
31159
+
31160
+ Redistribution and use in source and binary forms, with or without
31161
+ modification, are permitted provided that the following conditions are
31162
+ met:
31163
+
31164
+ * Redistributions of source code must retain the above copyright
31165
+ notice, this list of conditions and the following disclaimer.
31166
+
31167
+ * Redistributions in binary form must reproduce the above copyright
31168
+ notice, this list of conditions and the following disclaimer in
31169
+ the documentation and/or other materials provided with the
31170
+ distribution.
31171
+
31172
+ * Neither the name of the copyright holder nor the names of its
31173
+ contributors may be used to endorse or promote products derived
31174
+ from this software without specific prior written permission.
31175
+
31176
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
31177
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
31178
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
31179
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
31180
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
31181
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
31182
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
31183
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
31184
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
31185
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31186
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31187
+ --------------------------------------------------------------------------------
31188
+ skia
31189
+
31190
+ Copyright 2007 The Android Open Source Project
31191
+
31192
+ Redistribution and use in source and binary forms, with or without
31193
+ modification, are permitted provided that the following conditions are
31194
+ met:
31195
+
31196
+ * Redistributions of source code must retain the above copyright
31197
+ notice, this list of conditions and the following disclaimer.
31198
+
31199
+ * Redistributions in binary form must reproduce the above copyright
31200
+ notice, this list of conditions and the following disclaimer in
31201
+ the documentation and/or other materials provided with the
31202
+ distribution.
31203
+
31204
+ * Neither the name of the copyright holder nor the names of its
31205
+ contributors may be used to endorse or promote products derived
31206
+ from this software without specific prior written permission.
31207
+
31208
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
31209
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
31210
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
31211
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
31212
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
31213
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
31214
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
31215
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
31216
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
31217
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
31218
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31219
+ --------------------------------------------------------------------------------
31220
+ skia
31221
+
31222
+ Copyright 2008 Google Inc.
31223
+
31224
+ Redistribution and use in source and binary forms, with or without
31225
+ modification, are permitted provided that the following conditions are
31226
+ met:
31227
+
31228
+ * Redistributions of source code must retain the above copyright
31229
+ notice, this list of conditions and the following disclaimer.
31230
+
31231
+ * Redistributions in binary form must reproduce the above copyright
31232
+ notice, this list of conditions and the following disclaimer in
31233
  the documentation and/or other materials provided with the
31234
  distribution.
31235
 
 
32989
  --------------------------------------------------------------------------------
32990
  skia
32991
 
32992
+ Copyright 2025 Google Inc.
32993
+
32994
+ Redistribution and use in source and binary forms, with or without
32995
+ modification, are permitted provided that the following conditions are
32996
+ met:
32997
+
32998
+ * Redistributions of source code must retain the above copyright
32999
+ notice, this list of conditions and the following disclaimer.
33000
+
33001
+ * Redistributions in binary form must reproduce the above copyright
33002
+ notice, this list of conditions and the following disclaimer in
33003
+ the documentation and/or other materials provided with the
33004
+ distribution.
33005
+
33006
+ * Neither the name of the copyright holder nor the names of its
33007
+ contributors may be used to endorse or promote products derived
33008
+ from this software without specific prior written permission.
33009
+
33010
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
33011
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
33012
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
33013
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
33014
+ OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
33015
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
33016
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
33017
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
33018
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
33019
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
33020
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33021
+ --------------------------------------------------------------------------------
33022
+ skia
33023
+
33024
  Copyright 2025 Google LLC
33025
 
33026
  Redistribution and use in source and binary forms, with or without
build/web/canvaskit/canvaskit.js.symbols CHANGED
The diff for this file is too large to render. See raw diff
 
build/web/canvaskit/canvaskit.wasm CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:0bfdaaec4723e56b4db9e508747ee315fc9cd30ed619a84809e351c241b6c55d
3
- size 7010135
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:20e2f59919d514cc194444ec3b38adafcc898ba38e3283a4e525ecfbd2514117
3
+ size 7052864
build/web/canvaskit/chromium/canvaskit.js.symbols CHANGED
The diff for this file is too large to render. See raw diff
 
build/web/canvaskit/chromium/canvaskit.wasm CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:56d08b5d05c34435a8a68033f1d99ef49fb0fecf4722ce92f32b586db47b57ca
3
- size 5632852
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:5e1f801de136a593d29c555b3c8dea235e761e59a1b370a1a4dba684cb80278a
3
+ size 5678018
build/web/canvaskit/skwasm.js CHANGED
@@ -31,9 +31,9 @@ Ib[b]?delete a[b]:a[b]=Ib[b];var c=[];for(b in a)c.push(`${b}=${a[b]}`);Jb=c}ret
31
  for(V=0;288>=V;++V)R[V]=ec.subarray(0,V);var fc=new Int32Array(288);for(V=0;288>=V;++V)Hb[V]=fc.subarray(0,V);
32
  (function(){if(w.skwasmSingleThreaded){Xb=function(){return!0};let c;Nb=function(e,f){c=f};Ob=function(){return performance.now()};S=function(e){queueMicrotask(()=>c(e))}}else{Xb=function(){return!1};let c=0;Nb=function(e,f){function h({data:l}){const m=l.h;m&&("syncTimeOrigin"==m?c=performance.timeOrigin-l.timeOrigin:f(l))}e?(D[e].addEventListener("message",h),D[e].postMessage({h:"syncTimeOrigin",timeOrigin:performance.timeOrigin})):addEventListener("message",h)};Ob=function(){return performance.now()+
33
  c};S=function(e,f,h){h?D[h].postMessage(e,{transfer:f}):postMessage(e,{transfer:f})}}const a=new Map,b=new Map;ac=function(c,e,f){S({h:"setAssociatedObject",F:e,object:f},[f],c)};Wb=function(c){return b.get(c)};Pb=function(c){Nb(c,function(e){var f=e.h;if(f)switch(f){case "renderPictures":gc(e.l,e.V,e.U,e.m,Ob());break;case "onRenderComplete":hc(e.l,e.m,{imageBitmaps:e.R,rasterStartMilliseconds:e.X,rasterEndMilliseconds:e.W});break;case "setAssociatedObject":b.set(e.F,e.object);break;case "disposeAssociatedObject":e=
34
- e.F;f=b.get(e);f.close&&f.close();b.delete(e);break;case "disposeSurface":ic(e.l);break;case "rasterizeImage":jc(e.l,e.image,e.format,e.m);break;case "onRasterizeComplete":kc(e.l,e.data,e.m);break;default:console.warn(`unrecognized skwasm message: ${f}`)}})};Ub=function(c,e,f,h,l){S({h:"renderPictures",l:e,V:f,U:h,m:l},[],c)};Rb=function(c,e){c=new OffscreenCanvas(c,e);e=ob(c);a.set(e,c);return e};$b=function(c,e,f){c=a.get(c);c.width=e;c.height=f};Mb=function(c,e){e||=[];c=a.get(c);e.push(c.transferToImageBitmap());
35
- return e};Yb=async function(c,e,f,h){S({h:"onRenderComplete",l:c,m:h,R:e,X:f,W:Ob()},[...e])};Qb=function(c,e,f){const h=P.v,l=h.createTexture();h.bindTexture(h.TEXTURE_2D,l);h.pixelStorei(h.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0);h.texImage2D(h.TEXTURE_2D,0,h.RGBA,e,f,0,h.RGBA,h.UNSIGNED_BYTE,c);h.pixelStorei(h.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1);h.bindTexture(h.TEXTURE_2D,null);c=M(H);H[c]=l;return c};Vb=function(c,e){S({h:"disposeAssociatedObject",F:e},[],c)};Sb=function(c,e){S({h:"disposeSurface",l:e},
36
- [],c)};Tb=function(c,e,f,h,l){S({h:"rasterizeImage",l:e,image:f,format:h,m:l},[],c)};Zb=function(c,e,f){S({h:"onRasterizeComplete",l:c,data:e,m:f})}})();
37
  var wc={__cxa_throw:(a,b,c)=>{var e=new Ra(a);t()[e.s+16>>2]=0;t()[e.s+4>>2]=b;t()[e.s+8>>2]=c;Sa=a;Ta++;throw Sa;},__syscall_fcntl64:function(){return 0},__syscall_fstat64:()=>{},__syscall_ioctl:function(){return 0},__syscall_openat:function(){},_abort_js:()=>{Ga("")},_emscripten_create_wasm_worker:(a,b)=>{let c=D[Wa]=new Worker(ma("skwasm.ww.js"));c.postMessage({$ww:Wa,wasm:qa,js:w.mainScriptUrlOrBlob||_scriptName,wasmMemory:g,sb:a,sz:b});c.onmessage=Da;return Wa++},_emscripten_get_now_is_monotonic:()=>
38
  1,_emscripten_runtime_keepalive_clear:()=>{za=!1;Oa=0},_emscripten_throw_longjmp:()=>{throw Infinity;},_mmap_js:function(){return-52},_munmap_js:function(){},_setitimer_js:(a,b)=>{Xa[a]&&(clearTimeout(Xa[a].id),delete Xa[a]);if(!b)return 0;var c=setTimeout(()=>{delete Xa[a];Qa(()=>lc(a,performance.now()))},b);Xa[a]={id:c,aa:b};return 0},_tzset_js:(a,b,c,e)=>{var f=(new Date).getFullYear(),h=(new Date(f,0,1)).getTimezoneOffset();f=(new Date(f,6,1)).getTimezoneOffset();var l=Math.max(h,f);t()[a>>2]=
39
  60*l;r()[b>>2]=Number(h!=f);b=m=>{var p=Math.abs(m);return`UTC${0<=m?"-":"+"}${String(Math.floor(p/60)).padStart(2,"0")}${String(p%60).padStart(2,"0")}`};a=b(h);b=b(f);f<h?(E(a,c,17),E(b,e,17)):(E(a,e,17),E(b,c,17))},emscripten_console_warn:a=>{console.warn(C(a))},emscripten_get_now:()=>performance.now(),emscripten_glActiveTexture:a=>F.activeTexture(a),emscripten_glAttachShader:(a,b)=>{F.attachShader(G[a],I[b])},emscripten_glBeginQuery:(a,b)=>{F.beginQuery(a,J[b])},emscripten_glBeginQueryEXT:(a,b)=>
@@ -73,8 +73,8 @@ void 0}if(f)return!0}return!1},emscripten_wasm_worker_post_function_v:(a,b)=>{D[
73
  "EXT_polygon_offset_clamp"==b&&(F.P=F.getExtension("EXT_polygon_offset_clamp"));"EXT_clip_control"==b&&(F.O=F.getExtension("EXT_clip_control"));"WEBGL_polygon_mode"==b&&(F.Y=F.getExtension("WEBGL_polygon_mode"));return!!a.v.getExtension(b)},emscripten_webgl_get_current_context:()=>P?P.handle:0,emscripten_webgl_make_context_current:a=>{P=ib[a];w.$=F=P?.v;return!a||F?0:-5},environ_get:(a,b)=>{var c=0;Kb().forEach((e,f)=>{var h=b+c;f=t()[a+4*f>>2]=h;for(h=0;h<e.length;++h)d()[f++]=e.charCodeAt(h);d()[f]=
74
  0;c+=e.length+1});return 0},environ_sizes_get:(a,b)=>{var c=Kb();t()[a>>2]=c.length;var e=0;c.forEach(f=>e+=f.length+1);t()[b>>2]=e;return 0},fd_close:()=>52,fd_pread:function(){return 52},fd_read:()=>52,fd_seek:function(){return 70},fd_write:(a,b,c,e)=>{for(var f=0,h=0;h<c;h++){var l=t()[b>>2],m=t()[b+4>>2];b+=8;for(var p=0;p<m;p++){var v=q()[l+p],T=Lb[a];0===v||10===v?((1===a?pa:y)(Va(T)),T.length=0):T.push(v)}f+=m}t()[e>>2]=f;return 0},glDeleteTextures:rb,glGetIntegerv:yb,glGetString:Cb,glGetStringi:Db,
75
  invoke_ii:mc,invoke_iii:nc,invoke_iiii:oc,invoke_iiiii:pc,invoke_iiiiiii:qc,invoke_vi:rc,invoke_vii:sc,invoke_viii:tc,invoke_viiii:uc,invoke_viiiiiii:vc,memory:g,proc_exit:Pa,skwasm_captureImageBitmap:Mb,skwasm_connectThread:Pb,skwasm_createGlTextureFromTextureSource:Qb,skwasm_createOffscreenCanvas:Rb,skwasm_dispatchDisposeSurface:Sb,skwasm_dispatchRasterizeImage:Tb,skwasm_dispatchRenderPictures:Ub,skwasm_disposeAssociatedObjectOnThread:Vb,skwasm_getAssociatedObject:Wb,skwasm_isSingleThreaded:Xb,
76
- skwasm_postImages:Yb,skwasm_postRasterizeResult:Zb,skwasm_resizeCanvas:$b,skwasm_setAssociatedObjectOnThread:ac},W=function(){function a(c,e){W=c.exports;w.wasmExports=W;B=W.__indirect_function_table;wa.unshift(W.__wasm_call_ctors);qa=e;z--;0==z&&(null!==Fa&&(clearInterval(Fa),Fa=null),A&&(c=A,A=null,c()));return W}var b={env:wc,wasi_snapshot_preview1:wc};z++;if(w.instantiateWasm)try{return w.instantiateWasm(b,a)}catch(c){y(`Module.instantiateWasm callback failed with error: ${c}`),fa(c)}Ia??=Ha("skwasm.wasm")?
77
- "skwasm.wasm":ma("skwasm.wasm");La(b,function(c){a(c.instance,c.module)}).catch(fa);return{}}();w._canvas_saveLayer=(a,b,c,e,f)=>(w._canvas_saveLayer=W.canvas_saveLayer)(a,b,c,e,f);w._canvas_save=a=>(w._canvas_save=W.canvas_save)(a);w._canvas_restore=a=>(w._canvas_restore=W.canvas_restore)(a);w._canvas_restoreToCount=(a,b)=>(w._canvas_restoreToCount=W.canvas_restoreToCount)(a,b);w._canvas_getSaveCount=a=>(w._canvas_getSaveCount=W.canvas_getSaveCount)(a);
78
  w._canvas_translate=(a,b,c)=>(w._canvas_translate=W.canvas_translate)(a,b,c);w._canvas_scale=(a,b,c)=>(w._canvas_scale=W.canvas_scale)(a,b,c);w._canvas_rotate=(a,b)=>(w._canvas_rotate=W.canvas_rotate)(a,b);w._canvas_skew=(a,b,c)=>(w._canvas_skew=W.canvas_skew)(a,b,c);w._canvas_transform=(a,b)=>(w._canvas_transform=W.canvas_transform)(a,b);w._canvas_clipRect=(a,b,c,e)=>(w._canvas_clipRect=W.canvas_clipRect)(a,b,c,e);w._canvas_clipRRect=(a,b,c)=>(w._canvas_clipRRect=W.canvas_clipRRect)(a,b,c);
79
  w._canvas_clipPath=(a,b,c)=>(w._canvas_clipPath=W.canvas_clipPath)(a,b,c);w._canvas_drawColor=(a,b,c)=>(w._canvas_drawColor=W.canvas_drawColor)(a,b,c);w._canvas_drawLine=(a,b,c,e,f,h)=>(w._canvas_drawLine=W.canvas_drawLine)(a,b,c,e,f,h);w._canvas_drawPaint=(a,b)=>(w._canvas_drawPaint=W.canvas_drawPaint)(a,b);w._canvas_drawRect=(a,b,c)=>(w._canvas_drawRect=W.canvas_drawRect)(a,b,c);w._canvas_drawRRect=(a,b,c)=>(w._canvas_drawRRect=W.canvas_drawRRect)(a,b,c);
80
  w._canvas_drawDRRect=(a,b,c,e)=>(w._canvas_drawDRRect=W.canvas_drawDRRect)(a,b,c,e);w._canvas_drawOval=(a,b,c)=>(w._canvas_drawOval=W.canvas_drawOval)(a,b,c);w._canvas_drawCircle=(a,b,c,e,f)=>(w._canvas_drawCircle=W.canvas_drawCircle)(a,b,c,e,f);w._canvas_drawArc=(a,b,c,e,f,h)=>(w._canvas_drawArc=W.canvas_drawArc)(a,b,c,e,f,h);w._canvas_drawPath=(a,b,c)=>(w._canvas_drawPath=W.canvas_drawPath)(a,b,c);w._canvas_drawShadow=(a,b,c,e,f,h)=>(w._canvas_drawShadow=W.canvas_drawShadow)(a,b,c,e,f,h);
@@ -88,20 +88,21 @@ w._colorFilter_createMode=(a,b)=>(w._colorFilter_createMode=W.colorFilter_create
88
  w._colorFilter_compose=(a,b)=>(w._colorFilter_compose=W.colorFilter_compose)(a,b);w._colorFilter_dispose=a=>(w._colorFilter_dispose=W.colorFilter_dispose)(a);w._maskFilter_createBlur=(a,b)=>(w._maskFilter_createBlur=W.maskFilter_createBlur)(a,b);w._maskFilter_dispose=a=>(w._maskFilter_dispose=W.maskFilter_dispose)(a);w._fontCollection_create=()=>(w._fontCollection_create=W.fontCollection_create)();w._fontCollection_dispose=a=>(w._fontCollection_dispose=W.fontCollection_dispose)(a);
89
  w._typeface_create=a=>(w._typeface_create=W.typeface_create)(a);w._typeface_dispose=a=>(w._typeface_dispose=W.typeface_dispose)(a);w._typefaces_filterCoveredCodePoints=(a,b,c,e)=>(w._typefaces_filterCoveredCodePoints=W.typefaces_filterCoveredCodePoints)(a,b,c,e);w._fontCollection_registerTypeface=(a,b,c)=>(w._fontCollection_registerTypeface=W.fontCollection_registerTypeface)(a,b,c);w._fontCollection_clearCaches=a=>(w._fontCollection_clearCaches=W.fontCollection_clearCaches)(a);
90
  w._image_createFromPicture=(a,b,c)=>(w._image_createFromPicture=W.image_createFromPicture)(a,b,c);w._image_createFromPixels=(a,b,c,e,f)=>(w._image_createFromPixels=W.image_createFromPixels)(a,b,c,e,f);w._image_createFromTextureSource=(a,b,c,e)=>(w._image_createFromTextureSource=W.image_createFromTextureSource)(a,b,c,e);w._image_ref=a=>(w._image_ref=W.image_ref)(a);w._image_dispose=a=>(w._image_dispose=W.image_dispose)(a);w._image_getWidth=a=>(w._image_getWidth=W.image_getWidth)(a);
91
- w._image_getHeight=a=>(w._image_getHeight=W.image_getHeight)(a);w._paint_create=(a,b,c,e,f,h,l,m)=>(w._paint_create=W.paint_create)(a,b,c,e,f,h,l,m);w._paint_dispose=a=>(w._paint_dispose=W.paint_dispose)(a);w._paint_setShader=(a,b)=>(w._paint_setShader=W.paint_setShader)(a,b);w._paint_setImageFilter=(a,b)=>(w._paint_setImageFilter=W.paint_setImageFilter)(a,b);w._paint_setColorFilter=(a,b)=>(w._paint_setColorFilter=W.paint_setColorFilter)(a,b);
92
- w._paint_setMaskFilter=(a,b)=>(w._paint_setMaskFilter=W.paint_setMaskFilter)(a,b);w._path_create=()=>(w._path_create=W.path_create)();w._path_dispose=a=>(w._path_dispose=W.path_dispose)(a);w._path_copy=a=>(w._path_copy=W.path_copy)(a);w._path_setFillType=(a,b)=>(w._path_setFillType=W.path_setFillType)(a,b);w._path_getFillType=a=>(w._path_getFillType=W.path_getFillType)(a);w._path_moveTo=(a,b,c)=>(w._path_moveTo=W.path_moveTo)(a,b,c);
93
- w._path_relativeMoveTo=(a,b,c)=>(w._path_relativeMoveTo=W.path_relativeMoveTo)(a,b,c);w._path_lineTo=(a,b,c)=>(w._path_lineTo=W.path_lineTo)(a,b,c);w._path_relativeLineTo=(a,b,c)=>(w._path_relativeLineTo=W.path_relativeLineTo)(a,b,c);w._path_quadraticBezierTo=(a,b,c,e,f)=>(w._path_quadraticBezierTo=W.path_quadraticBezierTo)(a,b,c,e,f);w._path_relativeQuadraticBezierTo=(a,b,c,e,f)=>(w._path_relativeQuadraticBezierTo=W.path_relativeQuadraticBezierTo)(a,b,c,e,f);
94
- w._path_cubicTo=(a,b,c,e,f,h,l)=>(w._path_cubicTo=W.path_cubicTo)(a,b,c,e,f,h,l);w._path_relativeCubicTo=(a,b,c,e,f,h,l)=>(w._path_relativeCubicTo=W.path_relativeCubicTo)(a,b,c,e,f,h,l);w._path_conicTo=(a,b,c,e,f,h)=>(w._path_conicTo=W.path_conicTo)(a,b,c,e,f,h);w._path_relativeConicTo=(a,b,c,e,f,h)=>(w._path_relativeConicTo=W.path_relativeConicTo)(a,b,c,e,f,h);w._path_arcToOval=(a,b,c,e,f)=>(w._path_arcToOval=W.path_arcToOval)(a,b,c,e,f);
95
- w._path_arcToRotated=(a,b,c,e,f,h,l,m)=>(w._path_arcToRotated=W.path_arcToRotated)(a,b,c,e,f,h,l,m);w._path_relativeArcToRotated=(a,b,c,e,f,h,l,m)=>(w._path_relativeArcToRotated=W.path_relativeArcToRotated)(a,b,c,e,f,h,l,m);w._path_addRect=(a,b)=>(w._path_addRect=W.path_addRect)(a,b);w._path_addOval=(a,b)=>(w._path_addOval=W.path_addOval)(a,b);w._path_addArc=(a,b,c,e)=>(w._path_addArc=W.path_addArc)(a,b,c,e);w._path_addPolygon=(a,b,c,e)=>(w._path_addPolygon=W.path_addPolygon)(a,b,c,e);
96
- w._path_addRRect=(a,b)=>(w._path_addRRect=W.path_addRRect)(a,b);w._path_addPath=(a,b,c,e)=>(w._path_addPath=W.path_addPath)(a,b,c,e);w._path_close=a=>(w._path_close=W.path_close)(a);w._path_reset=a=>(w._path_reset=W.path_reset)(a);w._path_contains=(a,b,c)=>(w._path_contains=W.path_contains)(a,b,c);w._path_transform=(a,b)=>(w._path_transform=W.path_transform)(a,b);w._path_getBounds=(a,b)=>(w._path_getBounds=W.path_getBounds)(a,b);w._path_combine=(a,b,c)=>(w._path_combine=W.path_combine)(a,b,c);
97
- w._path_getSvgString=a=>(w._path_getSvgString=W.path_getSvgString)(a);w._pictureRecorder_create=()=>(w._pictureRecorder_create=W.pictureRecorder_create)();w._pictureRecorder_dispose=a=>(w._pictureRecorder_dispose=W.pictureRecorder_dispose)(a);w._pictureRecorder_beginRecording=(a,b)=>(w._pictureRecorder_beginRecording=W.pictureRecorder_beginRecording)(a,b);w._pictureRecorder_endRecording=a=>(w._pictureRecorder_endRecording=W.pictureRecorder_endRecording)(a);
98
- w._picture_getCullRect=(a,b)=>(w._picture_getCullRect=W.picture_getCullRect)(a,b);w._picture_dispose=a=>(w._picture_dispose=W.picture_dispose)(a);w._picture_approximateBytesUsed=a=>(w._picture_approximateBytesUsed=W.picture_approximateBytesUsed)(a);w._shader_createLinearGradient=(a,b,c,e,f,h)=>(w._shader_createLinearGradient=W.shader_createLinearGradient)(a,b,c,e,f,h);w._shader_createRadialGradient=(a,b,c,e,f,h,l,m)=>(w._shader_createRadialGradient=W.shader_createRadialGradient)(a,b,c,e,f,h,l,m);
99
- w._shader_createConicalGradient=(a,b,c,e,f,h,l,m)=>(w._shader_createConicalGradient=W.shader_createConicalGradient)(a,b,c,e,f,h,l,m);w._shader_createSweepGradient=(a,b,c,e,f,h,l,m,p)=>(w._shader_createSweepGradient=W.shader_createSweepGradient)(a,b,c,e,f,h,l,m,p);w._shader_dispose=a=>(w._shader_dispose=W.shader_dispose)(a);w._runtimeEffect_create=a=>(w._runtimeEffect_create=W.runtimeEffect_create)(a);w._runtimeEffect_dispose=a=>(w._runtimeEffect_dispose=W.runtimeEffect_dispose)(a);
100
- w._runtimeEffect_getUniformSize=a=>(w._runtimeEffect_getUniformSize=W.runtimeEffect_getUniformSize)(a);w._shader_createRuntimeEffectShader=(a,b,c,e)=>(w._shader_createRuntimeEffectShader=W.shader_createRuntimeEffectShader)(a,b,c,e);w._shader_createFromImage=(a,b,c,e,f)=>(w._shader_createFromImage=W.shader_createFromImage)(a,b,c,e,f);w._skString_allocate=a=>(w._skString_allocate=W.skString_allocate)(a);w._skString_getData=a=>(w._skString_getData=W.skString_getData)(a);
101
- w._skString_getLength=a=>(w._skString_getLength=W.skString_getLength)(a);w._skString_free=a=>(w._skString_free=W.skString_free)(a);w._skString16_allocate=a=>(w._skString16_allocate=W.skString16_allocate)(a);w._skString16_getData=a=>(w._skString16_getData=W.skString16_getData)(a);w._skString16_free=a=>(w._skString16_free=W.skString16_free)(a);w._surface_create=()=>(w._surface_create=W.surface_create)();w._surface_getThreadId=a=>(w._surface_getThreadId=W.surface_getThreadId)(a);
102
- w._surface_setCallbackHandler=(a,b)=>(w._surface_setCallbackHandler=W.surface_setCallbackHandler)(a,b);w._surface_destroy=a=>(w._surface_destroy=W.surface_destroy)(a);var ic=w._surface_dispose=a=>(ic=w._surface_dispose=W.surface_dispose)(a);w._surface_renderPictures=(a,b,c)=>(w._surface_renderPictures=W.surface_renderPictures)(a,b,c);var gc=w._surface_renderPicturesOnWorker=(a,b,c,e,f)=>(gc=w._surface_renderPicturesOnWorker=W.surface_renderPicturesOnWorker)(a,b,c,e,f);
103
- w._surface_rasterizeImage=(a,b,c)=>(w._surface_rasterizeImage=W.surface_rasterizeImage)(a,b,c);var jc=w._surface_rasterizeImageOnWorker=(a,b,c,e)=>(jc=w._surface_rasterizeImageOnWorker=W.surface_rasterizeImageOnWorker)(a,b,c,e),hc=w._surface_onRenderComplete=(a,b,c)=>(hc=w._surface_onRenderComplete=W.surface_onRenderComplete)(a,b,c),kc=w._surface_onRasterizeComplete=(a,b,c)=>(kc=w._surface_onRasterizeComplete=W.surface_onRasterizeComplete)(a,b,c);
104
- w._skwasm_isMultiThreaded=()=>(w._skwasm_isMultiThreaded=W.skwasm_isMultiThreaded)();w._lineMetrics_create=(a,b,c,e,f,h,l,m,p)=>(w._lineMetrics_create=W.lineMetrics_create)(a,b,c,e,f,h,l,m,p);w._lineMetrics_dispose=a=>(w._lineMetrics_dispose=W.lineMetrics_dispose)(a);w._lineMetrics_getHardBreak=a=>(w._lineMetrics_getHardBreak=W.lineMetrics_getHardBreak)(a);w._lineMetrics_getAscent=a=>(w._lineMetrics_getAscent=W.lineMetrics_getAscent)(a);w._lineMetrics_getDescent=a=>(w._lineMetrics_getDescent=W.lineMetrics_getDescent)(a);
 
105
  w._lineMetrics_getUnscaledAscent=a=>(w._lineMetrics_getUnscaledAscent=W.lineMetrics_getUnscaledAscent)(a);w._lineMetrics_getHeight=a=>(w._lineMetrics_getHeight=W.lineMetrics_getHeight)(a);w._lineMetrics_getWidth=a=>(w._lineMetrics_getWidth=W.lineMetrics_getWidth)(a);w._lineMetrics_getLeft=a=>(w._lineMetrics_getLeft=W.lineMetrics_getLeft)(a);w._lineMetrics_getBaseline=a=>(w._lineMetrics_getBaseline=W.lineMetrics_getBaseline)(a);w._lineMetrics_getLineNumber=a=>(w._lineMetrics_getLineNumber=W.lineMetrics_getLineNumber)(a);
106
  w._lineMetrics_getStartIndex=a=>(w._lineMetrics_getStartIndex=W.lineMetrics_getStartIndex)(a);w._lineMetrics_getEndIndex=a=>(w._lineMetrics_getEndIndex=W.lineMetrics_getEndIndex)(a);w._paragraph_dispose=a=>(w._paragraph_dispose=W.paragraph_dispose)(a);w._paragraph_getWidth=a=>(w._paragraph_getWidth=W.paragraph_getWidth)(a);w._paragraph_getHeight=a=>(w._paragraph_getHeight=W.paragraph_getHeight)(a);w._paragraph_getLongestLine=a=>(w._paragraph_getLongestLine=W.paragraph_getLongestLine)(a);
107
  w._paragraph_getMinIntrinsicWidth=a=>(w._paragraph_getMinIntrinsicWidth=W.paragraph_getMinIntrinsicWidth)(a);w._paragraph_getMaxIntrinsicWidth=a=>(w._paragraph_getMaxIntrinsicWidth=W.paragraph_getMaxIntrinsicWidth)(a);w._paragraph_getAlphabeticBaseline=a=>(w._paragraph_getAlphabeticBaseline=W.paragraph_getAlphabeticBaseline)(a);w._paragraph_getIdeographicBaseline=a=>(w._paragraph_getIdeographicBaseline=W.paragraph_getIdeographicBaseline)(a);
 
31
  for(V=0;288>=V;++V)R[V]=ec.subarray(0,V);var fc=new Int32Array(288);for(V=0;288>=V;++V)Hb[V]=fc.subarray(0,V);
32
  (function(){if(w.skwasmSingleThreaded){Xb=function(){return!0};let c;Nb=function(e,f){c=f};Ob=function(){return performance.now()};S=function(e){queueMicrotask(()=>c(e))}}else{Xb=function(){return!1};let c=0;Nb=function(e,f){function h({data:l}){const m=l.h;m&&("syncTimeOrigin"==m?c=performance.timeOrigin-l.timeOrigin:f(l))}e?(D[e].addEventListener("message",h),D[e].postMessage({h:"syncTimeOrigin",timeOrigin:performance.timeOrigin})):addEventListener("message",h)};Ob=function(){return performance.now()+
33
  c};S=function(e,f,h){h?D[h].postMessage(e,{transfer:f}):postMessage(e,{transfer:f})}}const a=new Map,b=new Map;ac=function(c,e,f){S({h:"setAssociatedObject",F:e,object:f},[f],c)};Wb=function(c){return b.get(c)};Pb=function(c){Nb(c,function(e){var f=e.h;if(f)switch(f){case "renderPictures":gc(e.l,e.V,e.U,e.m,Ob());break;case "onRenderComplete":hc(e.l,e.m,{imageBitmaps:e.R,rasterStartMilliseconds:e.X,rasterEndMilliseconds:e.W});break;case "setAssociatedObject":b.set(e.F,e.object);break;case "disposeAssociatedObject":e=
34
+ e.F;f=b.get(e);f.close&&f.close();b.delete(e);break;case "disposeSurface":ic(e.l);break;case "rasterizeImage":jc(e.l,e.image,e.format,e.m);break;case "onRasterizeComplete":kc(e.l,e.data,e.m);break;default:console.warn(`unrecognized skwasm message: ${f}`)}})};Ub=function(c,e,f,h,l){S({h:"renderPictures",l:e,V:f,U:h,m:l},[],c)};Rb=function(c,e){c=new OffscreenCanvas(c,e);e=ob(c);a.set(e,c);return e};Zb=function(c,e,f){c=a.get(c);c.width=e;c.height=f};Mb=function(c,e,f,h){h||=[];c=a.get(c);h.push(createImageBitmap(c,
35
+ 0,0,e,f));return h};$b=async function(c,e,f,h){e=e?await Promise.all(e):[];S({h:"onRenderComplete",l:c,m:h,R:e,X:f,W:Ob()},[...e])};Qb=function(c,e,f){const h=P.v,l=h.createTexture();h.bindTexture(h.TEXTURE_2D,l);h.pixelStorei(h.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0);h.texImage2D(h.TEXTURE_2D,0,h.RGBA,e,f,0,h.RGBA,h.UNSIGNED_BYTE,c);h.pixelStorei(h.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1);h.bindTexture(h.TEXTURE_2D,null);c=M(H);H[c]=l;return c};Vb=function(c,e){S({h:"disposeAssociatedObject",F:e},[],c)};Sb=
36
+ function(c,e){S({h:"disposeSurface",l:e},[],c)};Tb=function(c,e,f,h,l){S({h:"rasterizeImage",l:e,image:f,format:h,m:l},[],c)};Yb=function(c,e,f){S({h:"onRasterizeComplete",l:c,data:e,m:f})}})();
37
  var wc={__cxa_throw:(a,b,c)=>{var e=new Ra(a);t()[e.s+16>>2]=0;t()[e.s+4>>2]=b;t()[e.s+8>>2]=c;Sa=a;Ta++;throw Sa;},__syscall_fcntl64:function(){return 0},__syscall_fstat64:()=>{},__syscall_ioctl:function(){return 0},__syscall_openat:function(){},_abort_js:()=>{Ga("")},_emscripten_create_wasm_worker:(a,b)=>{let c=D[Wa]=new Worker(ma("skwasm.ww.js"));c.postMessage({$ww:Wa,wasm:qa,js:w.mainScriptUrlOrBlob||_scriptName,wasmMemory:g,sb:a,sz:b});c.onmessage=Da;return Wa++},_emscripten_get_now_is_monotonic:()=>
38
  1,_emscripten_runtime_keepalive_clear:()=>{za=!1;Oa=0},_emscripten_throw_longjmp:()=>{throw Infinity;},_mmap_js:function(){return-52},_munmap_js:function(){},_setitimer_js:(a,b)=>{Xa[a]&&(clearTimeout(Xa[a].id),delete Xa[a]);if(!b)return 0;var c=setTimeout(()=>{delete Xa[a];Qa(()=>lc(a,performance.now()))},b);Xa[a]={id:c,aa:b};return 0},_tzset_js:(a,b,c,e)=>{var f=(new Date).getFullYear(),h=(new Date(f,0,1)).getTimezoneOffset();f=(new Date(f,6,1)).getTimezoneOffset();var l=Math.max(h,f);t()[a>>2]=
39
  60*l;r()[b>>2]=Number(h!=f);b=m=>{var p=Math.abs(m);return`UTC${0<=m?"-":"+"}${String(Math.floor(p/60)).padStart(2,"0")}${String(p%60).padStart(2,"0")}`};a=b(h);b=b(f);f<h?(E(a,c,17),E(b,e,17)):(E(a,e,17),E(b,c,17))},emscripten_console_warn:a=>{console.warn(C(a))},emscripten_get_now:()=>performance.now(),emscripten_glActiveTexture:a=>F.activeTexture(a),emscripten_glAttachShader:(a,b)=>{F.attachShader(G[a],I[b])},emscripten_glBeginQuery:(a,b)=>{F.beginQuery(a,J[b])},emscripten_glBeginQueryEXT:(a,b)=>
 
73
  "EXT_polygon_offset_clamp"==b&&(F.P=F.getExtension("EXT_polygon_offset_clamp"));"EXT_clip_control"==b&&(F.O=F.getExtension("EXT_clip_control"));"WEBGL_polygon_mode"==b&&(F.Y=F.getExtension("WEBGL_polygon_mode"));return!!a.v.getExtension(b)},emscripten_webgl_get_current_context:()=>P?P.handle:0,emscripten_webgl_make_context_current:a=>{P=ib[a];w.$=F=P?.v;return!a||F?0:-5},environ_get:(a,b)=>{var c=0;Kb().forEach((e,f)=>{var h=b+c;f=t()[a+4*f>>2]=h;for(h=0;h<e.length;++h)d()[f++]=e.charCodeAt(h);d()[f]=
74
  0;c+=e.length+1});return 0},environ_sizes_get:(a,b)=>{var c=Kb();t()[a>>2]=c.length;var e=0;c.forEach(f=>e+=f.length+1);t()[b>>2]=e;return 0},fd_close:()=>52,fd_pread:function(){return 52},fd_read:()=>52,fd_seek:function(){return 70},fd_write:(a,b,c,e)=>{for(var f=0,h=0;h<c;h++){var l=t()[b>>2],m=t()[b+4>>2];b+=8;for(var p=0;p<m;p++){var v=q()[l+p],T=Lb[a];0===v||10===v?((1===a?pa:y)(Va(T)),T.length=0):T.push(v)}f+=m}t()[e>>2]=f;return 0},glDeleteTextures:rb,glGetIntegerv:yb,glGetString:Cb,glGetStringi:Db,
75
  invoke_ii:mc,invoke_iii:nc,invoke_iiii:oc,invoke_iiiii:pc,invoke_iiiiiii:qc,invoke_vi:rc,invoke_vii:sc,invoke_viii:tc,invoke_viiii:uc,invoke_viiiiiii:vc,memory:g,proc_exit:Pa,skwasm_captureImageBitmap:Mb,skwasm_connectThread:Pb,skwasm_createGlTextureFromTextureSource:Qb,skwasm_createOffscreenCanvas:Rb,skwasm_dispatchDisposeSurface:Sb,skwasm_dispatchRasterizeImage:Tb,skwasm_dispatchRenderPictures:Ub,skwasm_disposeAssociatedObjectOnThread:Vb,skwasm_getAssociatedObject:Wb,skwasm_isSingleThreaded:Xb,
76
+ skwasm_postRasterizeResult:Yb,skwasm_resizeCanvas:Zb,skwasm_resolveAndPostImages:$b,skwasm_setAssociatedObjectOnThread:ac},W=function(){function a(c,e){W=c.exports;w.wasmExports=W;B=W.__indirect_function_table;wa.unshift(W.__wasm_call_ctors);qa=e;z--;0==z&&(null!==Fa&&(clearInterval(Fa),Fa=null),A&&(c=A,A=null,c()));return W}var b={env:wc,wasi_snapshot_preview1:wc};z++;if(w.instantiateWasm)try{return w.instantiateWasm(b,a)}catch(c){y(`Module.instantiateWasm callback failed with error: ${c}`),fa(c)}Ia??=
77
+ Ha("skwasm.wasm")?"skwasm.wasm":ma("skwasm.wasm");La(b,function(c){a(c.instance,c.module)}).catch(fa);return{}}();w._canvas_saveLayer=(a,b,c,e,f)=>(w._canvas_saveLayer=W.canvas_saveLayer)(a,b,c,e,f);w._canvas_save=a=>(w._canvas_save=W.canvas_save)(a);w._canvas_restore=a=>(w._canvas_restore=W.canvas_restore)(a);w._canvas_restoreToCount=(a,b)=>(w._canvas_restoreToCount=W.canvas_restoreToCount)(a,b);w._canvas_getSaveCount=a=>(w._canvas_getSaveCount=W.canvas_getSaveCount)(a);
78
  w._canvas_translate=(a,b,c)=>(w._canvas_translate=W.canvas_translate)(a,b,c);w._canvas_scale=(a,b,c)=>(w._canvas_scale=W.canvas_scale)(a,b,c);w._canvas_rotate=(a,b)=>(w._canvas_rotate=W.canvas_rotate)(a,b);w._canvas_skew=(a,b,c)=>(w._canvas_skew=W.canvas_skew)(a,b,c);w._canvas_transform=(a,b)=>(w._canvas_transform=W.canvas_transform)(a,b);w._canvas_clipRect=(a,b,c,e)=>(w._canvas_clipRect=W.canvas_clipRect)(a,b,c,e);w._canvas_clipRRect=(a,b,c)=>(w._canvas_clipRRect=W.canvas_clipRRect)(a,b,c);
79
  w._canvas_clipPath=(a,b,c)=>(w._canvas_clipPath=W.canvas_clipPath)(a,b,c);w._canvas_drawColor=(a,b,c)=>(w._canvas_drawColor=W.canvas_drawColor)(a,b,c);w._canvas_drawLine=(a,b,c,e,f,h)=>(w._canvas_drawLine=W.canvas_drawLine)(a,b,c,e,f,h);w._canvas_drawPaint=(a,b)=>(w._canvas_drawPaint=W.canvas_drawPaint)(a,b);w._canvas_drawRect=(a,b,c)=>(w._canvas_drawRect=W.canvas_drawRect)(a,b,c);w._canvas_drawRRect=(a,b,c)=>(w._canvas_drawRRect=W.canvas_drawRRect)(a,b,c);
80
  w._canvas_drawDRRect=(a,b,c,e)=>(w._canvas_drawDRRect=W.canvas_drawDRRect)(a,b,c,e);w._canvas_drawOval=(a,b,c)=>(w._canvas_drawOval=W.canvas_drawOval)(a,b,c);w._canvas_drawCircle=(a,b,c,e,f)=>(w._canvas_drawCircle=W.canvas_drawCircle)(a,b,c,e,f);w._canvas_drawArc=(a,b,c,e,f,h)=>(w._canvas_drawArc=W.canvas_drawArc)(a,b,c,e,f,h);w._canvas_drawPath=(a,b,c)=>(w._canvas_drawPath=W.canvas_drawPath)(a,b,c);w._canvas_drawShadow=(a,b,c,e,f,h)=>(w._canvas_drawShadow=W.canvas_drawShadow)(a,b,c,e,f,h);
 
88
  w._colorFilter_compose=(a,b)=>(w._colorFilter_compose=W.colorFilter_compose)(a,b);w._colorFilter_dispose=a=>(w._colorFilter_dispose=W.colorFilter_dispose)(a);w._maskFilter_createBlur=(a,b)=>(w._maskFilter_createBlur=W.maskFilter_createBlur)(a,b);w._maskFilter_dispose=a=>(w._maskFilter_dispose=W.maskFilter_dispose)(a);w._fontCollection_create=()=>(w._fontCollection_create=W.fontCollection_create)();w._fontCollection_dispose=a=>(w._fontCollection_dispose=W.fontCollection_dispose)(a);
89
  w._typeface_create=a=>(w._typeface_create=W.typeface_create)(a);w._typeface_dispose=a=>(w._typeface_dispose=W.typeface_dispose)(a);w._typefaces_filterCoveredCodePoints=(a,b,c,e)=>(w._typefaces_filterCoveredCodePoints=W.typefaces_filterCoveredCodePoints)(a,b,c,e);w._fontCollection_registerTypeface=(a,b,c)=>(w._fontCollection_registerTypeface=W.fontCollection_registerTypeface)(a,b,c);w._fontCollection_clearCaches=a=>(w._fontCollection_clearCaches=W.fontCollection_clearCaches)(a);
90
  w._image_createFromPicture=(a,b,c)=>(w._image_createFromPicture=W.image_createFromPicture)(a,b,c);w._image_createFromPixels=(a,b,c,e,f)=>(w._image_createFromPixels=W.image_createFromPixels)(a,b,c,e,f);w._image_createFromTextureSource=(a,b,c,e)=>(w._image_createFromTextureSource=W.image_createFromTextureSource)(a,b,c,e);w._image_ref=a=>(w._image_ref=W.image_ref)(a);w._image_dispose=a=>(w._image_dispose=W.image_dispose)(a);w._image_getWidth=a=>(w._image_getWidth=W.image_getWidth)(a);
91
+ w._image_getHeight=a=>(w._image_getHeight=W.image_getHeight)(a);w._skwasm_getLiveObjectCounts=a=>(w._skwasm_getLiveObjectCounts=W.skwasm_getLiveObjectCounts)(a);w._paint_create=(a,b,c,e,f,h,l,m)=>(w._paint_create=W.paint_create)(a,b,c,e,f,h,l,m);w._paint_dispose=a=>(w._paint_dispose=W.paint_dispose)(a);w._paint_setShader=(a,b)=>(w._paint_setShader=W.paint_setShader)(a,b);w._paint_setDither=(a,b)=>(w._paint_setDither=W.paint_setDither)(a,b);
92
+ w._paint_setImageFilter=(a,b)=>(w._paint_setImageFilter=W.paint_setImageFilter)(a,b);w._paint_setColorFilter=(a,b)=>(w._paint_setColorFilter=W.paint_setColorFilter)(a,b);w._paint_setMaskFilter=(a,b)=>(w._paint_setMaskFilter=W.paint_setMaskFilter)(a,b);w._path_create=()=>(w._path_create=W.path_create)();w._path_dispose=a=>(w._path_dispose=W.path_dispose)(a);w._path_copy=a=>(w._path_copy=W.path_copy)(a);w._path_setFillType=(a,b)=>(w._path_setFillType=W.path_setFillType)(a,b);
93
+ w._path_getFillType=a=>(w._path_getFillType=W.path_getFillType)(a);w._path_moveTo=(a,b,c)=>(w._path_moveTo=W.path_moveTo)(a,b,c);w._path_relativeMoveTo=(a,b,c)=>(w._path_relativeMoveTo=W.path_relativeMoveTo)(a,b,c);w._path_lineTo=(a,b,c)=>(w._path_lineTo=W.path_lineTo)(a,b,c);w._path_relativeLineTo=(a,b,c)=>(w._path_relativeLineTo=W.path_relativeLineTo)(a,b,c);w._path_quadraticBezierTo=(a,b,c,e,f)=>(w._path_quadraticBezierTo=W.path_quadraticBezierTo)(a,b,c,e,f);
94
+ w._path_relativeQuadraticBezierTo=(a,b,c,e,f)=>(w._path_relativeQuadraticBezierTo=W.path_relativeQuadraticBezierTo)(a,b,c,e,f);w._path_cubicTo=(a,b,c,e,f,h,l)=>(w._path_cubicTo=W.path_cubicTo)(a,b,c,e,f,h,l);w._path_relativeCubicTo=(a,b,c,e,f,h,l)=>(w._path_relativeCubicTo=W.path_relativeCubicTo)(a,b,c,e,f,h,l);w._path_conicTo=(a,b,c,e,f,h)=>(w._path_conicTo=W.path_conicTo)(a,b,c,e,f,h);w._path_relativeConicTo=(a,b,c,e,f,h)=>(w._path_relativeConicTo=W.path_relativeConicTo)(a,b,c,e,f,h);
95
+ w._path_arcToOval=(a,b,c,e,f)=>(w._path_arcToOval=W.path_arcToOval)(a,b,c,e,f);w._path_arcToRotated=(a,b,c,e,f,h,l,m)=>(w._path_arcToRotated=W.path_arcToRotated)(a,b,c,e,f,h,l,m);w._path_relativeArcToRotated=(a,b,c,e,f,h,l,m)=>(w._path_relativeArcToRotated=W.path_relativeArcToRotated)(a,b,c,e,f,h,l,m);w._path_addRect=(a,b)=>(w._path_addRect=W.path_addRect)(a,b);w._path_addOval=(a,b)=>(w._path_addOval=W.path_addOval)(a,b);w._path_addArc=(a,b,c,e)=>(w._path_addArc=W.path_addArc)(a,b,c,e);
96
+ w._path_addPolygon=(a,b,c,e)=>(w._path_addPolygon=W.path_addPolygon)(a,b,c,e);w._path_addRRect=(a,b)=>(w._path_addRRect=W.path_addRRect)(a,b);w._path_addPath=(a,b,c,e)=>(w._path_addPath=W.path_addPath)(a,b,c,e);w._path_close=a=>(w._path_close=W.path_close)(a);w._path_reset=a=>(w._path_reset=W.path_reset)(a);w._path_contains=(a,b,c)=>(w._path_contains=W.path_contains)(a,b,c);w._path_transform=(a,b)=>(w._path_transform=W.path_transform)(a,b);
97
+ w._path_getBounds=(a,b)=>(w._path_getBounds=W.path_getBounds)(a,b);w._path_combine=(a,b,c)=>(w._path_combine=W.path_combine)(a,b,c);w._path_getSvgString=a=>(w._path_getSvgString=W.path_getSvgString)(a);w._pictureRecorder_create=()=>(w._pictureRecorder_create=W.pictureRecorder_create)();w._pictureRecorder_dispose=a=>(w._pictureRecorder_dispose=W.pictureRecorder_dispose)(a);w._pictureRecorder_beginRecording=(a,b)=>(w._pictureRecorder_beginRecording=W.pictureRecorder_beginRecording)(a,b);
98
+ w._pictureRecorder_endRecording=a=>(w._pictureRecorder_endRecording=W.pictureRecorder_endRecording)(a);w._picture_getCullRect=(a,b)=>(w._picture_getCullRect=W.picture_getCullRect)(a,b);w._picture_dispose=a=>(w._picture_dispose=W.picture_dispose)(a);w._picture_approximateBytesUsed=a=>(w._picture_approximateBytesUsed=W.picture_approximateBytesUsed)(a);w._shader_createLinearGradient=(a,b,c,e,f,h)=>(w._shader_createLinearGradient=W.shader_createLinearGradient)(a,b,c,e,f,h);
99
+ w._shader_createRadialGradient=(a,b,c,e,f,h,l,m)=>(w._shader_createRadialGradient=W.shader_createRadialGradient)(a,b,c,e,f,h,l,m);w._shader_createConicalGradient=(a,b,c,e,f,h,l,m)=>(w._shader_createConicalGradient=W.shader_createConicalGradient)(a,b,c,e,f,h,l,m);w._shader_createSweepGradient=(a,b,c,e,f,h,l,m,p)=>(w._shader_createSweepGradient=W.shader_createSweepGradient)(a,b,c,e,f,h,l,m,p);w._shader_dispose=a=>(w._shader_dispose=W.shader_dispose)(a);
100
+ w._runtimeEffect_create=a=>(w._runtimeEffect_create=W.runtimeEffect_create)(a);w._runtimeEffect_dispose=a=>(w._runtimeEffect_dispose=W.runtimeEffect_dispose)(a);w._runtimeEffect_getUniformSize=a=>(w._runtimeEffect_getUniformSize=W.runtimeEffect_getUniformSize)(a);w._shader_createRuntimeEffectShader=(a,b,c,e)=>(w._shader_createRuntimeEffectShader=W.shader_createRuntimeEffectShader)(a,b,c,e);w._shader_createFromImage=(a,b,c,e,f)=>(w._shader_createFromImage=W.shader_createFromImage)(a,b,c,e,f);
101
+ w._skString_allocate=a=>(w._skString_allocate=W.skString_allocate)(a);w._skString_getData=a=>(w._skString_getData=W.skString_getData)(a);w._skString_getLength=a=>(w._skString_getLength=W.skString_getLength)(a);w._skString_free=a=>(w._skString_free=W.skString_free)(a);w._skString16_allocate=a=>(w._skString16_allocate=W.skString16_allocate)(a);w._skString16_getData=a=>(w._skString16_getData=W.skString16_getData)(a);w._skString16_free=a=>(w._skString16_free=W.skString16_free)(a);
102
+ w._surface_create=()=>(w._surface_create=W.surface_create)();w._surface_getThreadId=a=>(w._surface_getThreadId=W.surface_getThreadId)(a);w._surface_setCallbackHandler=(a,b)=>(w._surface_setCallbackHandler=W.surface_setCallbackHandler)(a,b);w._surface_destroy=a=>(w._surface_destroy=W.surface_destroy)(a);var ic=w._surface_dispose=a=>(ic=w._surface_dispose=W.surface_dispose)(a);w._surface_renderPictures=(a,b,c)=>(w._surface_renderPictures=W.surface_renderPictures)(a,b,c);
103
+ var gc=w._surface_renderPicturesOnWorker=(a,b,c,e,f)=>(gc=w._surface_renderPicturesOnWorker=W.surface_renderPicturesOnWorker)(a,b,c,e,f);w._surface_rasterizeImage=(a,b,c)=>(w._surface_rasterizeImage=W.surface_rasterizeImage)(a,b,c);
104
+ var jc=w._surface_rasterizeImageOnWorker=(a,b,c,e)=>(jc=w._surface_rasterizeImageOnWorker=W.surface_rasterizeImageOnWorker)(a,b,c,e),hc=w._surface_onRenderComplete=(a,b,c)=>(hc=w._surface_onRenderComplete=W.surface_onRenderComplete)(a,b,c),kc=w._surface_onRasterizeComplete=(a,b,c)=>(kc=w._surface_onRasterizeComplete=W.surface_onRasterizeComplete)(a,b,c);w._skwasm_isMultiThreaded=()=>(w._skwasm_isMultiThreaded=W.skwasm_isMultiThreaded)();
105
+ w._lineMetrics_create=(a,b,c,e,f,h,l,m,p)=>(w._lineMetrics_create=W.lineMetrics_create)(a,b,c,e,f,h,l,m,p);w._lineMetrics_dispose=a=>(w._lineMetrics_dispose=W.lineMetrics_dispose)(a);w._lineMetrics_getHardBreak=a=>(w._lineMetrics_getHardBreak=W.lineMetrics_getHardBreak)(a);w._lineMetrics_getAscent=a=>(w._lineMetrics_getAscent=W.lineMetrics_getAscent)(a);w._lineMetrics_getDescent=a=>(w._lineMetrics_getDescent=W.lineMetrics_getDescent)(a);
106
  w._lineMetrics_getUnscaledAscent=a=>(w._lineMetrics_getUnscaledAscent=W.lineMetrics_getUnscaledAscent)(a);w._lineMetrics_getHeight=a=>(w._lineMetrics_getHeight=W.lineMetrics_getHeight)(a);w._lineMetrics_getWidth=a=>(w._lineMetrics_getWidth=W.lineMetrics_getWidth)(a);w._lineMetrics_getLeft=a=>(w._lineMetrics_getLeft=W.lineMetrics_getLeft)(a);w._lineMetrics_getBaseline=a=>(w._lineMetrics_getBaseline=W.lineMetrics_getBaseline)(a);w._lineMetrics_getLineNumber=a=>(w._lineMetrics_getLineNumber=W.lineMetrics_getLineNumber)(a);
107
  w._lineMetrics_getStartIndex=a=>(w._lineMetrics_getStartIndex=W.lineMetrics_getStartIndex)(a);w._lineMetrics_getEndIndex=a=>(w._lineMetrics_getEndIndex=W.lineMetrics_getEndIndex)(a);w._paragraph_dispose=a=>(w._paragraph_dispose=W.paragraph_dispose)(a);w._paragraph_getWidth=a=>(w._paragraph_getWidth=W.paragraph_getWidth)(a);w._paragraph_getHeight=a=>(w._paragraph_getHeight=W.paragraph_getHeight)(a);w._paragraph_getLongestLine=a=>(w._paragraph_getLongestLine=W.paragraph_getLongestLine)(a);
108
  w._paragraph_getMinIntrinsicWidth=a=>(w._paragraph_getMinIntrinsicWidth=W.paragraph_getMinIntrinsicWidth)(a);w._paragraph_getMaxIntrinsicWidth=a=>(w._paragraph_getMaxIntrinsicWidth=W.paragraph_getMaxIntrinsicWidth)(a);w._paragraph_getAlphabeticBaseline=a=>(w._paragraph_getAlphabeticBaseline=W.paragraph_getAlphabeticBaseline)(a);w._paragraph_getIdeographicBaseline=a=>(w._paragraph_getIdeographicBaseline=W.paragraph_getIdeographicBaseline)(a);
build/web/canvaskit/skwasm.js.symbols CHANGED
The diff for this file is too large to render. See raw diff
 
build/web/canvaskit/skwasm.wasm CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:822307ead1c1293f100fe2703cb703d30b32f745d34ed951610d69caf2ba0f25
3
- size 3429369
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:eab8f0df5027670550425a66f06bf537d99032a50b2a2fb176e3f82ef50cce3c
3
+ size 3443467
build/web/canvaskit/skwasm_heavy.js CHANGED
@@ -31,9 +31,9 @@ Ib[b]?delete a[b]:a[b]=Ib[b];var c=[];for(b in a)c.push(`${b}=${a[b]}`);Jb=c}ret
31
  for(V=0;288>=V;++V)R[V]=ec.subarray(0,V);var fc=new Int32Array(288);for(V=0;288>=V;++V)Hb[V]=fc.subarray(0,V);
32
  (function(){if(w.skwasmSingleThreaded){Xb=function(){return!0};let c;Nb=function(e,f){c=f};Ob=function(){return performance.now()};S=function(e){queueMicrotask(()=>c(e))}}else{Xb=function(){return!1};let c=0;Nb=function(e,f){function h({data:l}){const m=l.h;m&&("syncTimeOrigin"==m?c=performance.timeOrigin-l.timeOrigin:f(l))}e?(D[e].addEventListener("message",h),D[e].postMessage({h:"syncTimeOrigin",timeOrigin:performance.timeOrigin})):addEventListener("message",h)};Ob=function(){return performance.now()+
33
  c};S=function(e,f,h){h?D[h].postMessage(e,{transfer:f}):postMessage(e,{transfer:f})}}const a=new Map,b=new Map;ac=function(c,e,f){S({h:"setAssociatedObject",F:e,object:f},[f],c)};Wb=function(c){return b.get(c)};Pb=function(c){Nb(c,function(e){var f=e.h;if(f)switch(f){case "renderPictures":gc(e.l,e.V,e.U,e.m,Ob());break;case "onRenderComplete":hc(e.l,e.m,{imageBitmaps:e.R,rasterStartMilliseconds:e.X,rasterEndMilliseconds:e.W});break;case "setAssociatedObject":b.set(e.F,e.object);break;case "disposeAssociatedObject":e=
34
- e.F;f=b.get(e);f.close&&f.close();b.delete(e);break;case "disposeSurface":ic(e.l);break;case "rasterizeImage":jc(e.l,e.image,e.format,e.m);break;case "onRasterizeComplete":kc(e.l,e.data,e.m);break;default:console.warn(`unrecognized skwasm message: ${f}`)}})};Ub=function(c,e,f,h,l){S({h:"renderPictures",l:e,V:f,U:h,m:l},[],c)};Rb=function(c,e){c=new OffscreenCanvas(c,e);e=ob(c);a.set(e,c);return e};$b=function(c,e,f){c=a.get(c);c.width=e;c.height=f};Mb=function(c,e){e||=[];c=a.get(c);e.push(c.transferToImageBitmap());
35
- return e};Yb=async function(c,e,f,h){S({h:"onRenderComplete",l:c,m:h,R:e,X:f,W:Ob()},[...e])};Qb=function(c,e,f){const h=P.v,l=h.createTexture();h.bindTexture(h.TEXTURE_2D,l);h.pixelStorei(h.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0);h.texImage2D(h.TEXTURE_2D,0,h.RGBA,e,f,0,h.RGBA,h.UNSIGNED_BYTE,c);h.pixelStorei(h.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1);h.bindTexture(h.TEXTURE_2D,null);c=M(H);H[c]=l;return c};Vb=function(c,e){S({h:"disposeAssociatedObject",F:e},[],c)};Sb=function(c,e){S({h:"disposeSurface",l:e},
36
- [],c)};Tb=function(c,e,f,h,l){S({h:"rasterizeImage",l:e,image:f,format:h,m:l},[],c)};Zb=function(c,e,f){S({h:"onRasterizeComplete",l:c,data:e,m:f})}})();
37
  var wc={__cxa_throw:(a,b,c)=>{var e=new Ra(a);t()[e.s+16>>2]=0;t()[e.s+4>>2]=b;t()[e.s+8>>2]=c;Sa=a;Ta++;throw Sa;},__syscall_fcntl64:function(){return 0},__syscall_fstat64:()=>{},__syscall_ioctl:function(){return 0},__syscall_lstat64:()=>{},__syscall_newfstatat:()=>{},__syscall_openat:function(){},__syscall_stat64:()=>{},_abort_js:()=>{Ga("")},_emscripten_create_wasm_worker:(a,b)=>{let c=D[Wa]=new Worker(ma("skwasm_heavy.ww.js"));c.postMessage({$ww:Wa,wasm:qa,js:w.mainScriptUrlOrBlob||_scriptName,
38
  wasmMemory:g,sb:a,sz:b});c.onmessage=Da;return Wa++},_emscripten_get_now_is_monotonic:()=>1,_emscripten_runtime_keepalive_clear:()=>{za=!1;Oa=0},_emscripten_throw_longjmp:()=>{throw Infinity;},_mmap_js:function(){return-52},_munmap_js:function(){},_setitimer_js:(a,b)=>{Xa[a]&&(clearTimeout(Xa[a].id),delete Xa[a]);if(!b)return 0;var c=setTimeout(()=>{delete Xa[a];Qa(()=>lc(a,performance.now()))},b);Xa[a]={id:c,aa:b};return 0},_tzset_js:(a,b,c,e)=>{var f=(new Date).getFullYear(),h=(new Date(f,0,1)).getTimezoneOffset();
39
  f=(new Date(f,6,1)).getTimezoneOffset();var l=Math.max(h,f);t()[a>>2]=60*l;r()[b>>2]=Number(h!=f);b=m=>{var p=Math.abs(m);return`UTC${0<=m?"-":"+"}${String(Math.floor(p/60)).padStart(2,"0")}${String(p%60).padStart(2,"0")}`};a=b(h);b=b(f);f<h?(E(a,c,17),E(b,e,17)):(E(a,e,17),E(b,c,17))},emscripten_console_warn:a=>{console.warn(C(a))},emscripten_get_now:()=>performance.now(),emscripten_glActiveTexture:a=>F.activeTexture(a),emscripten_glAttachShader:(a,b)=>{F.attachShader(G[a],I[b])},emscripten_glBeginQuery:(a,
@@ -73,8 +73,8 @@ void 0}if(f)return!0}return!1},emscripten_wasm_worker_post_function_v:(a,b)=>{D[
73
  "EXT_polygon_offset_clamp"==b&&(F.P=F.getExtension("EXT_polygon_offset_clamp"));"EXT_clip_control"==b&&(F.O=F.getExtension("EXT_clip_control"));"WEBGL_polygon_mode"==b&&(F.Y=F.getExtension("WEBGL_polygon_mode"));return!!a.v.getExtension(b)},emscripten_webgl_get_current_context:()=>P?P.handle:0,emscripten_webgl_make_context_current:a=>{P=ib[a];w.$=F=P?.v;return!a||F?0:-5},environ_get:(a,b)=>{var c=0;Kb().forEach((e,f)=>{var h=b+c;f=t()[a+4*f>>2]=h;for(h=0;h<e.length;++h)d()[f++]=e.charCodeAt(h);d()[f]=
74
  0;c+=e.length+1});return 0},environ_sizes_get:(a,b)=>{var c=Kb();t()[a>>2]=c.length;var e=0;c.forEach(f=>e+=f.length+1);t()[b>>2]=e;return 0},fd_close:()=>52,fd_pread:function(){return 52},fd_read:()=>52,fd_seek:function(){return 70},fd_write:(a,b,c,e)=>{for(var f=0,h=0;h<c;h++){var l=t()[b>>2],m=t()[b+4>>2];b+=8;for(var p=0;p<m;p++){var v=q()[l+p],T=Lb[a];0===v||10===v?((1===a?pa:y)(Va(T)),T.length=0):T.push(v)}f+=m}t()[e>>2]=f;return 0},glDeleteTextures:rb,glGetIntegerv:yb,glGetString:Cb,glGetStringi:Db,
75
  invoke_ii:mc,invoke_iii:nc,invoke_iiii:oc,invoke_iiiii:pc,invoke_iiiiiii:qc,invoke_vi:rc,invoke_vii:sc,invoke_viii:tc,invoke_viiii:uc,invoke_viiiiiii:vc,memory:g,proc_exit:Pa,skwasm_captureImageBitmap:Mb,skwasm_connectThread:Pb,skwasm_createGlTextureFromTextureSource:Qb,skwasm_createOffscreenCanvas:Rb,skwasm_dispatchDisposeSurface:Sb,skwasm_dispatchRasterizeImage:Tb,skwasm_dispatchRenderPictures:Ub,skwasm_disposeAssociatedObjectOnThread:Vb,skwasm_getAssociatedObject:Wb,skwasm_isSingleThreaded:Xb,
76
- skwasm_postImages:Yb,skwasm_postRasterizeResult:Zb,skwasm_resizeCanvas:$b,skwasm_setAssociatedObjectOnThread:ac},W=function(){function a(c,e){W=c.exports;w.wasmExports=W;B=W.__indirect_function_table;wa.unshift(W.__wasm_call_ctors);qa=e;z--;0==z&&(null!==Fa&&(clearInterval(Fa),Fa=null),A&&(c=A,A=null,c()));return W}var b={env:wc,wasi_snapshot_preview1:wc};z++;if(w.instantiateWasm)try{return w.instantiateWasm(b,a)}catch(c){y(`Module.instantiateWasm callback failed with error: ${c}`),fa(c)}Ia??=Ha("skwasm_heavy.wasm")?
77
- "skwasm_heavy.wasm":ma("skwasm_heavy.wasm");La(b,function(c){a(c.instance,c.module)}).catch(fa);return{}}();w._canvas_saveLayer=(a,b,c,e,f)=>(w._canvas_saveLayer=W.canvas_saveLayer)(a,b,c,e,f);w._canvas_save=a=>(w._canvas_save=W.canvas_save)(a);w._canvas_restore=a=>(w._canvas_restore=W.canvas_restore)(a);w._canvas_restoreToCount=(a,b)=>(w._canvas_restoreToCount=W.canvas_restoreToCount)(a,b);w._canvas_getSaveCount=a=>(w._canvas_getSaveCount=W.canvas_getSaveCount)(a);
78
  w._canvas_translate=(a,b,c)=>(w._canvas_translate=W.canvas_translate)(a,b,c);w._canvas_scale=(a,b,c)=>(w._canvas_scale=W.canvas_scale)(a,b,c);w._canvas_rotate=(a,b)=>(w._canvas_rotate=W.canvas_rotate)(a,b);w._canvas_skew=(a,b,c)=>(w._canvas_skew=W.canvas_skew)(a,b,c);w._canvas_transform=(a,b)=>(w._canvas_transform=W.canvas_transform)(a,b);w._canvas_clipRect=(a,b,c,e)=>(w._canvas_clipRect=W.canvas_clipRect)(a,b,c,e);w._canvas_clipRRect=(a,b,c)=>(w._canvas_clipRRect=W.canvas_clipRRect)(a,b,c);
79
  w._canvas_clipPath=(a,b,c)=>(w._canvas_clipPath=W.canvas_clipPath)(a,b,c);w._canvas_drawColor=(a,b,c)=>(w._canvas_drawColor=W.canvas_drawColor)(a,b,c);w._canvas_drawLine=(a,b,c,e,f,h)=>(w._canvas_drawLine=W.canvas_drawLine)(a,b,c,e,f,h);w._canvas_drawPaint=(a,b)=>(w._canvas_drawPaint=W.canvas_drawPaint)(a,b);w._canvas_drawRect=(a,b,c)=>(w._canvas_drawRect=W.canvas_drawRect)(a,b,c);w._canvas_drawRRect=(a,b,c)=>(w._canvas_drawRRect=W.canvas_drawRRect)(a,b,c);
80
  w._canvas_drawDRRect=(a,b,c,e)=>(w._canvas_drawDRRect=W.canvas_drawDRRect)(a,b,c,e);w._canvas_drawOval=(a,b,c)=>(w._canvas_drawOval=W.canvas_drawOval)(a,b,c);w._canvas_drawCircle=(a,b,c,e,f)=>(w._canvas_drawCircle=W.canvas_drawCircle)(a,b,c,e,f);w._canvas_drawArc=(a,b,c,e,f,h)=>(w._canvas_drawArc=W.canvas_drawArc)(a,b,c,e,f,h);w._canvas_drawPath=(a,b,c)=>(w._canvas_drawPath=W.canvas_drawPath)(a,b,c);w._canvas_drawShadow=(a,b,c,e,f,h)=>(w._canvas_drawShadow=W.canvas_drawShadow)(a,b,c,e,f,h);
@@ -88,20 +88,21 @@ w._colorFilter_createMode=(a,b)=>(w._colorFilter_createMode=W.colorFilter_create
88
  w._colorFilter_compose=(a,b)=>(w._colorFilter_compose=W.colorFilter_compose)(a,b);w._colorFilter_dispose=a=>(w._colorFilter_dispose=W.colorFilter_dispose)(a);w._maskFilter_createBlur=(a,b)=>(w._maskFilter_createBlur=W.maskFilter_createBlur)(a,b);w._maskFilter_dispose=a=>(w._maskFilter_dispose=W.maskFilter_dispose)(a);w._fontCollection_create=()=>(w._fontCollection_create=W.fontCollection_create)();w._fontCollection_dispose=a=>(w._fontCollection_dispose=W.fontCollection_dispose)(a);
89
  w._typeface_create=a=>(w._typeface_create=W.typeface_create)(a);w._typeface_dispose=a=>(w._typeface_dispose=W.typeface_dispose)(a);w._typefaces_filterCoveredCodePoints=(a,b,c,e)=>(w._typefaces_filterCoveredCodePoints=W.typefaces_filterCoveredCodePoints)(a,b,c,e);w._fontCollection_registerTypeface=(a,b,c)=>(w._fontCollection_registerTypeface=W.fontCollection_registerTypeface)(a,b,c);w._fontCollection_clearCaches=a=>(w._fontCollection_clearCaches=W.fontCollection_clearCaches)(a);
90
  w._image_createFromPicture=(a,b,c)=>(w._image_createFromPicture=W.image_createFromPicture)(a,b,c);w._image_createFromPixels=(a,b,c,e,f)=>(w._image_createFromPixels=W.image_createFromPixels)(a,b,c,e,f);w._image_createFromTextureSource=(a,b,c,e)=>(w._image_createFromTextureSource=W.image_createFromTextureSource)(a,b,c,e);w._image_ref=a=>(w._image_ref=W.image_ref)(a);w._image_dispose=a=>(w._image_dispose=W.image_dispose)(a);w._image_getWidth=a=>(w._image_getWidth=W.image_getWidth)(a);
91
- w._image_getHeight=a=>(w._image_getHeight=W.image_getHeight)(a);w._paint_create=(a,b,c,e,f,h,l,m)=>(w._paint_create=W.paint_create)(a,b,c,e,f,h,l,m);w._paint_dispose=a=>(w._paint_dispose=W.paint_dispose)(a);w._paint_setShader=(a,b)=>(w._paint_setShader=W.paint_setShader)(a,b);w._paint_setImageFilter=(a,b)=>(w._paint_setImageFilter=W.paint_setImageFilter)(a,b);w._paint_setColorFilter=(a,b)=>(w._paint_setColorFilter=W.paint_setColorFilter)(a,b);
92
- w._paint_setMaskFilter=(a,b)=>(w._paint_setMaskFilter=W.paint_setMaskFilter)(a,b);w._path_create=()=>(w._path_create=W.path_create)();w._path_dispose=a=>(w._path_dispose=W.path_dispose)(a);w._path_copy=a=>(w._path_copy=W.path_copy)(a);w._path_setFillType=(a,b)=>(w._path_setFillType=W.path_setFillType)(a,b);w._path_getFillType=a=>(w._path_getFillType=W.path_getFillType)(a);w._path_moveTo=(a,b,c)=>(w._path_moveTo=W.path_moveTo)(a,b,c);
93
- w._path_relativeMoveTo=(a,b,c)=>(w._path_relativeMoveTo=W.path_relativeMoveTo)(a,b,c);w._path_lineTo=(a,b,c)=>(w._path_lineTo=W.path_lineTo)(a,b,c);w._path_relativeLineTo=(a,b,c)=>(w._path_relativeLineTo=W.path_relativeLineTo)(a,b,c);w._path_quadraticBezierTo=(a,b,c,e,f)=>(w._path_quadraticBezierTo=W.path_quadraticBezierTo)(a,b,c,e,f);w._path_relativeQuadraticBezierTo=(a,b,c,e,f)=>(w._path_relativeQuadraticBezierTo=W.path_relativeQuadraticBezierTo)(a,b,c,e,f);
94
- w._path_cubicTo=(a,b,c,e,f,h,l)=>(w._path_cubicTo=W.path_cubicTo)(a,b,c,e,f,h,l);w._path_relativeCubicTo=(a,b,c,e,f,h,l)=>(w._path_relativeCubicTo=W.path_relativeCubicTo)(a,b,c,e,f,h,l);w._path_conicTo=(a,b,c,e,f,h)=>(w._path_conicTo=W.path_conicTo)(a,b,c,e,f,h);w._path_relativeConicTo=(a,b,c,e,f,h)=>(w._path_relativeConicTo=W.path_relativeConicTo)(a,b,c,e,f,h);w._path_arcToOval=(a,b,c,e,f)=>(w._path_arcToOval=W.path_arcToOval)(a,b,c,e,f);
95
- w._path_arcToRotated=(a,b,c,e,f,h,l,m)=>(w._path_arcToRotated=W.path_arcToRotated)(a,b,c,e,f,h,l,m);w._path_relativeArcToRotated=(a,b,c,e,f,h,l,m)=>(w._path_relativeArcToRotated=W.path_relativeArcToRotated)(a,b,c,e,f,h,l,m);w._path_addRect=(a,b)=>(w._path_addRect=W.path_addRect)(a,b);w._path_addOval=(a,b)=>(w._path_addOval=W.path_addOval)(a,b);w._path_addArc=(a,b,c,e)=>(w._path_addArc=W.path_addArc)(a,b,c,e);w._path_addPolygon=(a,b,c,e)=>(w._path_addPolygon=W.path_addPolygon)(a,b,c,e);
96
- w._path_addRRect=(a,b)=>(w._path_addRRect=W.path_addRRect)(a,b);w._path_addPath=(a,b,c,e)=>(w._path_addPath=W.path_addPath)(a,b,c,e);w._path_close=a=>(w._path_close=W.path_close)(a);w._path_reset=a=>(w._path_reset=W.path_reset)(a);w._path_contains=(a,b,c)=>(w._path_contains=W.path_contains)(a,b,c);w._path_transform=(a,b)=>(w._path_transform=W.path_transform)(a,b);w._path_getBounds=(a,b)=>(w._path_getBounds=W.path_getBounds)(a,b);w._path_combine=(a,b,c)=>(w._path_combine=W.path_combine)(a,b,c);
97
- w._path_getSvgString=a=>(w._path_getSvgString=W.path_getSvgString)(a);w._pictureRecorder_create=()=>(w._pictureRecorder_create=W.pictureRecorder_create)();w._pictureRecorder_dispose=a=>(w._pictureRecorder_dispose=W.pictureRecorder_dispose)(a);w._pictureRecorder_beginRecording=(a,b)=>(w._pictureRecorder_beginRecording=W.pictureRecorder_beginRecording)(a,b);w._pictureRecorder_endRecording=a=>(w._pictureRecorder_endRecording=W.pictureRecorder_endRecording)(a);
98
- w._picture_getCullRect=(a,b)=>(w._picture_getCullRect=W.picture_getCullRect)(a,b);w._picture_dispose=a=>(w._picture_dispose=W.picture_dispose)(a);w._picture_approximateBytesUsed=a=>(w._picture_approximateBytesUsed=W.picture_approximateBytesUsed)(a);w._shader_createLinearGradient=(a,b,c,e,f,h)=>(w._shader_createLinearGradient=W.shader_createLinearGradient)(a,b,c,e,f,h);w._shader_createRadialGradient=(a,b,c,e,f,h,l,m)=>(w._shader_createRadialGradient=W.shader_createRadialGradient)(a,b,c,e,f,h,l,m);
99
- w._shader_createConicalGradient=(a,b,c,e,f,h,l,m)=>(w._shader_createConicalGradient=W.shader_createConicalGradient)(a,b,c,e,f,h,l,m);w._shader_createSweepGradient=(a,b,c,e,f,h,l,m,p)=>(w._shader_createSweepGradient=W.shader_createSweepGradient)(a,b,c,e,f,h,l,m,p);w._shader_dispose=a=>(w._shader_dispose=W.shader_dispose)(a);w._runtimeEffect_create=a=>(w._runtimeEffect_create=W.runtimeEffect_create)(a);w._runtimeEffect_dispose=a=>(w._runtimeEffect_dispose=W.runtimeEffect_dispose)(a);
100
- w._runtimeEffect_getUniformSize=a=>(w._runtimeEffect_getUniformSize=W.runtimeEffect_getUniformSize)(a);w._shader_createRuntimeEffectShader=(a,b,c,e)=>(w._shader_createRuntimeEffectShader=W.shader_createRuntimeEffectShader)(a,b,c,e);w._shader_createFromImage=(a,b,c,e,f)=>(w._shader_createFromImage=W.shader_createFromImage)(a,b,c,e,f);w._skString_allocate=a=>(w._skString_allocate=W.skString_allocate)(a);w._skString_getData=a=>(w._skString_getData=W.skString_getData)(a);
101
- w._skString_getLength=a=>(w._skString_getLength=W.skString_getLength)(a);w._skString_free=a=>(w._skString_free=W.skString_free)(a);w._skString16_allocate=a=>(w._skString16_allocate=W.skString16_allocate)(a);w._skString16_getData=a=>(w._skString16_getData=W.skString16_getData)(a);w._skString16_free=a=>(w._skString16_free=W.skString16_free)(a);w._surface_create=()=>(w._surface_create=W.surface_create)();w._surface_getThreadId=a=>(w._surface_getThreadId=W.surface_getThreadId)(a);
102
- w._surface_setCallbackHandler=(a,b)=>(w._surface_setCallbackHandler=W.surface_setCallbackHandler)(a,b);w._surface_destroy=a=>(w._surface_destroy=W.surface_destroy)(a);var ic=w._surface_dispose=a=>(ic=w._surface_dispose=W.surface_dispose)(a);w._surface_renderPictures=(a,b,c)=>(w._surface_renderPictures=W.surface_renderPictures)(a,b,c);var gc=w._surface_renderPicturesOnWorker=(a,b,c,e,f)=>(gc=w._surface_renderPicturesOnWorker=W.surface_renderPicturesOnWorker)(a,b,c,e,f);
103
- w._surface_rasterizeImage=(a,b,c)=>(w._surface_rasterizeImage=W.surface_rasterizeImage)(a,b,c);var jc=w._surface_rasterizeImageOnWorker=(a,b,c,e)=>(jc=w._surface_rasterizeImageOnWorker=W.surface_rasterizeImageOnWorker)(a,b,c,e),hc=w._surface_onRenderComplete=(a,b,c)=>(hc=w._surface_onRenderComplete=W.surface_onRenderComplete)(a,b,c),kc=w._surface_onRasterizeComplete=(a,b,c)=>(kc=w._surface_onRasterizeComplete=W.surface_onRasterizeComplete)(a,b,c);
104
- w._skwasm_isMultiThreaded=()=>(w._skwasm_isMultiThreaded=W.skwasm_isMultiThreaded)();w._lineMetrics_create=(a,b,c,e,f,h,l,m,p)=>(w._lineMetrics_create=W.lineMetrics_create)(a,b,c,e,f,h,l,m,p);w._lineMetrics_dispose=a=>(w._lineMetrics_dispose=W.lineMetrics_dispose)(a);w._lineMetrics_getHardBreak=a=>(w._lineMetrics_getHardBreak=W.lineMetrics_getHardBreak)(a);w._lineMetrics_getAscent=a=>(w._lineMetrics_getAscent=W.lineMetrics_getAscent)(a);w._lineMetrics_getDescent=a=>(w._lineMetrics_getDescent=W.lineMetrics_getDescent)(a);
 
105
  w._lineMetrics_getUnscaledAscent=a=>(w._lineMetrics_getUnscaledAscent=W.lineMetrics_getUnscaledAscent)(a);w._lineMetrics_getHeight=a=>(w._lineMetrics_getHeight=W.lineMetrics_getHeight)(a);w._lineMetrics_getWidth=a=>(w._lineMetrics_getWidth=W.lineMetrics_getWidth)(a);w._lineMetrics_getLeft=a=>(w._lineMetrics_getLeft=W.lineMetrics_getLeft)(a);w._lineMetrics_getBaseline=a=>(w._lineMetrics_getBaseline=W.lineMetrics_getBaseline)(a);w._lineMetrics_getLineNumber=a=>(w._lineMetrics_getLineNumber=W.lineMetrics_getLineNumber)(a);
106
  w._lineMetrics_getStartIndex=a=>(w._lineMetrics_getStartIndex=W.lineMetrics_getStartIndex)(a);w._lineMetrics_getEndIndex=a=>(w._lineMetrics_getEndIndex=W.lineMetrics_getEndIndex)(a);w._paragraph_dispose=a=>(w._paragraph_dispose=W.paragraph_dispose)(a);w._paragraph_getWidth=a=>(w._paragraph_getWidth=W.paragraph_getWidth)(a);w._paragraph_getHeight=a=>(w._paragraph_getHeight=W.paragraph_getHeight)(a);w._paragraph_getLongestLine=a=>(w._paragraph_getLongestLine=W.paragraph_getLongestLine)(a);
107
  w._paragraph_getMinIntrinsicWidth=a=>(w._paragraph_getMinIntrinsicWidth=W.paragraph_getMinIntrinsicWidth)(a);w._paragraph_getMaxIntrinsicWidth=a=>(w._paragraph_getMaxIntrinsicWidth=W.paragraph_getMaxIntrinsicWidth)(a);w._paragraph_getAlphabeticBaseline=a=>(w._paragraph_getAlphabeticBaseline=W.paragraph_getAlphabeticBaseline)(a);w._paragraph_getIdeographicBaseline=a=>(w._paragraph_getIdeographicBaseline=W.paragraph_getIdeographicBaseline)(a);
 
31
  for(V=0;288>=V;++V)R[V]=ec.subarray(0,V);var fc=new Int32Array(288);for(V=0;288>=V;++V)Hb[V]=fc.subarray(0,V);
32
  (function(){if(w.skwasmSingleThreaded){Xb=function(){return!0};let c;Nb=function(e,f){c=f};Ob=function(){return performance.now()};S=function(e){queueMicrotask(()=>c(e))}}else{Xb=function(){return!1};let c=0;Nb=function(e,f){function h({data:l}){const m=l.h;m&&("syncTimeOrigin"==m?c=performance.timeOrigin-l.timeOrigin:f(l))}e?(D[e].addEventListener("message",h),D[e].postMessage({h:"syncTimeOrigin",timeOrigin:performance.timeOrigin})):addEventListener("message",h)};Ob=function(){return performance.now()+
33
  c};S=function(e,f,h){h?D[h].postMessage(e,{transfer:f}):postMessage(e,{transfer:f})}}const a=new Map,b=new Map;ac=function(c,e,f){S({h:"setAssociatedObject",F:e,object:f},[f],c)};Wb=function(c){return b.get(c)};Pb=function(c){Nb(c,function(e){var f=e.h;if(f)switch(f){case "renderPictures":gc(e.l,e.V,e.U,e.m,Ob());break;case "onRenderComplete":hc(e.l,e.m,{imageBitmaps:e.R,rasterStartMilliseconds:e.X,rasterEndMilliseconds:e.W});break;case "setAssociatedObject":b.set(e.F,e.object);break;case "disposeAssociatedObject":e=
34
+ e.F;f=b.get(e);f.close&&f.close();b.delete(e);break;case "disposeSurface":ic(e.l);break;case "rasterizeImage":jc(e.l,e.image,e.format,e.m);break;case "onRasterizeComplete":kc(e.l,e.data,e.m);break;default:console.warn(`unrecognized skwasm message: ${f}`)}})};Ub=function(c,e,f,h,l){S({h:"renderPictures",l:e,V:f,U:h,m:l},[],c)};Rb=function(c,e){c=new OffscreenCanvas(c,e);e=ob(c);a.set(e,c);return e};Zb=function(c,e,f){c=a.get(c);c.width=e;c.height=f};Mb=function(c,e,f,h){h||=[];c=a.get(c);h.push(createImageBitmap(c,
35
+ 0,0,e,f));return h};$b=async function(c,e,f,h){e=e?await Promise.all(e):[];S({h:"onRenderComplete",l:c,m:h,R:e,X:f,W:Ob()},[...e])};Qb=function(c,e,f){const h=P.v,l=h.createTexture();h.bindTexture(h.TEXTURE_2D,l);h.pixelStorei(h.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!0);h.texImage2D(h.TEXTURE_2D,0,h.RGBA,e,f,0,h.RGBA,h.UNSIGNED_BYTE,c);h.pixelStorei(h.UNPACK_PREMULTIPLY_ALPHA_WEBGL,!1);h.bindTexture(h.TEXTURE_2D,null);c=M(H);H[c]=l;return c};Vb=function(c,e){S({h:"disposeAssociatedObject",F:e},[],c)};Sb=
36
+ function(c,e){S({h:"disposeSurface",l:e},[],c)};Tb=function(c,e,f,h,l){S({h:"rasterizeImage",l:e,image:f,format:h,m:l},[],c)};Yb=function(c,e,f){S({h:"onRasterizeComplete",l:c,data:e,m:f})}})();
37
  var wc={__cxa_throw:(a,b,c)=>{var e=new Ra(a);t()[e.s+16>>2]=0;t()[e.s+4>>2]=b;t()[e.s+8>>2]=c;Sa=a;Ta++;throw Sa;},__syscall_fcntl64:function(){return 0},__syscall_fstat64:()=>{},__syscall_ioctl:function(){return 0},__syscall_lstat64:()=>{},__syscall_newfstatat:()=>{},__syscall_openat:function(){},__syscall_stat64:()=>{},_abort_js:()=>{Ga("")},_emscripten_create_wasm_worker:(a,b)=>{let c=D[Wa]=new Worker(ma("skwasm_heavy.ww.js"));c.postMessage({$ww:Wa,wasm:qa,js:w.mainScriptUrlOrBlob||_scriptName,
38
  wasmMemory:g,sb:a,sz:b});c.onmessage=Da;return Wa++},_emscripten_get_now_is_monotonic:()=>1,_emscripten_runtime_keepalive_clear:()=>{za=!1;Oa=0},_emscripten_throw_longjmp:()=>{throw Infinity;},_mmap_js:function(){return-52},_munmap_js:function(){},_setitimer_js:(a,b)=>{Xa[a]&&(clearTimeout(Xa[a].id),delete Xa[a]);if(!b)return 0;var c=setTimeout(()=>{delete Xa[a];Qa(()=>lc(a,performance.now()))},b);Xa[a]={id:c,aa:b};return 0},_tzset_js:(a,b,c,e)=>{var f=(new Date).getFullYear(),h=(new Date(f,0,1)).getTimezoneOffset();
39
  f=(new Date(f,6,1)).getTimezoneOffset();var l=Math.max(h,f);t()[a>>2]=60*l;r()[b>>2]=Number(h!=f);b=m=>{var p=Math.abs(m);return`UTC${0<=m?"-":"+"}${String(Math.floor(p/60)).padStart(2,"0")}${String(p%60).padStart(2,"0")}`};a=b(h);b=b(f);f<h?(E(a,c,17),E(b,e,17)):(E(a,e,17),E(b,c,17))},emscripten_console_warn:a=>{console.warn(C(a))},emscripten_get_now:()=>performance.now(),emscripten_glActiveTexture:a=>F.activeTexture(a),emscripten_glAttachShader:(a,b)=>{F.attachShader(G[a],I[b])},emscripten_glBeginQuery:(a,
 
73
  "EXT_polygon_offset_clamp"==b&&(F.P=F.getExtension("EXT_polygon_offset_clamp"));"EXT_clip_control"==b&&(F.O=F.getExtension("EXT_clip_control"));"WEBGL_polygon_mode"==b&&(F.Y=F.getExtension("WEBGL_polygon_mode"));return!!a.v.getExtension(b)},emscripten_webgl_get_current_context:()=>P?P.handle:0,emscripten_webgl_make_context_current:a=>{P=ib[a];w.$=F=P?.v;return!a||F?0:-5},environ_get:(a,b)=>{var c=0;Kb().forEach((e,f)=>{var h=b+c;f=t()[a+4*f>>2]=h;for(h=0;h<e.length;++h)d()[f++]=e.charCodeAt(h);d()[f]=
74
  0;c+=e.length+1});return 0},environ_sizes_get:(a,b)=>{var c=Kb();t()[a>>2]=c.length;var e=0;c.forEach(f=>e+=f.length+1);t()[b>>2]=e;return 0},fd_close:()=>52,fd_pread:function(){return 52},fd_read:()=>52,fd_seek:function(){return 70},fd_write:(a,b,c,e)=>{for(var f=0,h=0;h<c;h++){var l=t()[b>>2],m=t()[b+4>>2];b+=8;for(var p=0;p<m;p++){var v=q()[l+p],T=Lb[a];0===v||10===v?((1===a?pa:y)(Va(T)),T.length=0):T.push(v)}f+=m}t()[e>>2]=f;return 0},glDeleteTextures:rb,glGetIntegerv:yb,glGetString:Cb,glGetStringi:Db,
75
  invoke_ii:mc,invoke_iii:nc,invoke_iiii:oc,invoke_iiiii:pc,invoke_iiiiiii:qc,invoke_vi:rc,invoke_vii:sc,invoke_viii:tc,invoke_viiii:uc,invoke_viiiiiii:vc,memory:g,proc_exit:Pa,skwasm_captureImageBitmap:Mb,skwasm_connectThread:Pb,skwasm_createGlTextureFromTextureSource:Qb,skwasm_createOffscreenCanvas:Rb,skwasm_dispatchDisposeSurface:Sb,skwasm_dispatchRasterizeImage:Tb,skwasm_dispatchRenderPictures:Ub,skwasm_disposeAssociatedObjectOnThread:Vb,skwasm_getAssociatedObject:Wb,skwasm_isSingleThreaded:Xb,
76
+ skwasm_postRasterizeResult:Yb,skwasm_resizeCanvas:Zb,skwasm_resolveAndPostImages:$b,skwasm_setAssociatedObjectOnThread:ac},W=function(){function a(c,e){W=c.exports;w.wasmExports=W;B=W.__indirect_function_table;wa.unshift(W.__wasm_call_ctors);qa=e;z--;0==z&&(null!==Fa&&(clearInterval(Fa),Fa=null),A&&(c=A,A=null,c()));return W}var b={env:wc,wasi_snapshot_preview1:wc};z++;if(w.instantiateWasm)try{return w.instantiateWasm(b,a)}catch(c){y(`Module.instantiateWasm callback failed with error: ${c}`),fa(c)}Ia??=
77
+ Ha("skwasm_heavy.wasm")?"skwasm_heavy.wasm":ma("skwasm_heavy.wasm");La(b,function(c){a(c.instance,c.module)}).catch(fa);return{}}();w._canvas_saveLayer=(a,b,c,e,f)=>(w._canvas_saveLayer=W.canvas_saveLayer)(a,b,c,e,f);w._canvas_save=a=>(w._canvas_save=W.canvas_save)(a);w._canvas_restore=a=>(w._canvas_restore=W.canvas_restore)(a);w._canvas_restoreToCount=(a,b)=>(w._canvas_restoreToCount=W.canvas_restoreToCount)(a,b);w._canvas_getSaveCount=a=>(w._canvas_getSaveCount=W.canvas_getSaveCount)(a);
78
  w._canvas_translate=(a,b,c)=>(w._canvas_translate=W.canvas_translate)(a,b,c);w._canvas_scale=(a,b,c)=>(w._canvas_scale=W.canvas_scale)(a,b,c);w._canvas_rotate=(a,b)=>(w._canvas_rotate=W.canvas_rotate)(a,b);w._canvas_skew=(a,b,c)=>(w._canvas_skew=W.canvas_skew)(a,b,c);w._canvas_transform=(a,b)=>(w._canvas_transform=W.canvas_transform)(a,b);w._canvas_clipRect=(a,b,c,e)=>(w._canvas_clipRect=W.canvas_clipRect)(a,b,c,e);w._canvas_clipRRect=(a,b,c)=>(w._canvas_clipRRect=W.canvas_clipRRect)(a,b,c);
79
  w._canvas_clipPath=(a,b,c)=>(w._canvas_clipPath=W.canvas_clipPath)(a,b,c);w._canvas_drawColor=(a,b,c)=>(w._canvas_drawColor=W.canvas_drawColor)(a,b,c);w._canvas_drawLine=(a,b,c,e,f,h)=>(w._canvas_drawLine=W.canvas_drawLine)(a,b,c,e,f,h);w._canvas_drawPaint=(a,b)=>(w._canvas_drawPaint=W.canvas_drawPaint)(a,b);w._canvas_drawRect=(a,b,c)=>(w._canvas_drawRect=W.canvas_drawRect)(a,b,c);w._canvas_drawRRect=(a,b,c)=>(w._canvas_drawRRect=W.canvas_drawRRect)(a,b,c);
80
  w._canvas_drawDRRect=(a,b,c,e)=>(w._canvas_drawDRRect=W.canvas_drawDRRect)(a,b,c,e);w._canvas_drawOval=(a,b,c)=>(w._canvas_drawOval=W.canvas_drawOval)(a,b,c);w._canvas_drawCircle=(a,b,c,e,f)=>(w._canvas_drawCircle=W.canvas_drawCircle)(a,b,c,e,f);w._canvas_drawArc=(a,b,c,e,f,h)=>(w._canvas_drawArc=W.canvas_drawArc)(a,b,c,e,f,h);w._canvas_drawPath=(a,b,c)=>(w._canvas_drawPath=W.canvas_drawPath)(a,b,c);w._canvas_drawShadow=(a,b,c,e,f,h)=>(w._canvas_drawShadow=W.canvas_drawShadow)(a,b,c,e,f,h);
 
88
  w._colorFilter_compose=(a,b)=>(w._colorFilter_compose=W.colorFilter_compose)(a,b);w._colorFilter_dispose=a=>(w._colorFilter_dispose=W.colorFilter_dispose)(a);w._maskFilter_createBlur=(a,b)=>(w._maskFilter_createBlur=W.maskFilter_createBlur)(a,b);w._maskFilter_dispose=a=>(w._maskFilter_dispose=W.maskFilter_dispose)(a);w._fontCollection_create=()=>(w._fontCollection_create=W.fontCollection_create)();w._fontCollection_dispose=a=>(w._fontCollection_dispose=W.fontCollection_dispose)(a);
89
  w._typeface_create=a=>(w._typeface_create=W.typeface_create)(a);w._typeface_dispose=a=>(w._typeface_dispose=W.typeface_dispose)(a);w._typefaces_filterCoveredCodePoints=(a,b,c,e)=>(w._typefaces_filterCoveredCodePoints=W.typefaces_filterCoveredCodePoints)(a,b,c,e);w._fontCollection_registerTypeface=(a,b,c)=>(w._fontCollection_registerTypeface=W.fontCollection_registerTypeface)(a,b,c);w._fontCollection_clearCaches=a=>(w._fontCollection_clearCaches=W.fontCollection_clearCaches)(a);
90
  w._image_createFromPicture=(a,b,c)=>(w._image_createFromPicture=W.image_createFromPicture)(a,b,c);w._image_createFromPixels=(a,b,c,e,f)=>(w._image_createFromPixels=W.image_createFromPixels)(a,b,c,e,f);w._image_createFromTextureSource=(a,b,c,e)=>(w._image_createFromTextureSource=W.image_createFromTextureSource)(a,b,c,e);w._image_ref=a=>(w._image_ref=W.image_ref)(a);w._image_dispose=a=>(w._image_dispose=W.image_dispose)(a);w._image_getWidth=a=>(w._image_getWidth=W.image_getWidth)(a);
91
+ w._image_getHeight=a=>(w._image_getHeight=W.image_getHeight)(a);w._skwasm_getLiveObjectCounts=a=>(w._skwasm_getLiveObjectCounts=W.skwasm_getLiveObjectCounts)(a);w._paint_create=(a,b,c,e,f,h,l,m)=>(w._paint_create=W.paint_create)(a,b,c,e,f,h,l,m);w._paint_dispose=a=>(w._paint_dispose=W.paint_dispose)(a);w._paint_setShader=(a,b)=>(w._paint_setShader=W.paint_setShader)(a,b);w._paint_setDither=(a,b)=>(w._paint_setDither=W.paint_setDither)(a,b);
92
+ w._paint_setImageFilter=(a,b)=>(w._paint_setImageFilter=W.paint_setImageFilter)(a,b);w._paint_setColorFilter=(a,b)=>(w._paint_setColorFilter=W.paint_setColorFilter)(a,b);w._paint_setMaskFilter=(a,b)=>(w._paint_setMaskFilter=W.paint_setMaskFilter)(a,b);w._path_create=()=>(w._path_create=W.path_create)();w._path_dispose=a=>(w._path_dispose=W.path_dispose)(a);w._path_copy=a=>(w._path_copy=W.path_copy)(a);w._path_setFillType=(a,b)=>(w._path_setFillType=W.path_setFillType)(a,b);
93
+ w._path_getFillType=a=>(w._path_getFillType=W.path_getFillType)(a);w._path_moveTo=(a,b,c)=>(w._path_moveTo=W.path_moveTo)(a,b,c);w._path_relativeMoveTo=(a,b,c)=>(w._path_relativeMoveTo=W.path_relativeMoveTo)(a,b,c);w._path_lineTo=(a,b,c)=>(w._path_lineTo=W.path_lineTo)(a,b,c);w._path_relativeLineTo=(a,b,c)=>(w._path_relativeLineTo=W.path_relativeLineTo)(a,b,c);w._path_quadraticBezierTo=(a,b,c,e,f)=>(w._path_quadraticBezierTo=W.path_quadraticBezierTo)(a,b,c,e,f);
94
+ w._path_relativeQuadraticBezierTo=(a,b,c,e,f)=>(w._path_relativeQuadraticBezierTo=W.path_relativeQuadraticBezierTo)(a,b,c,e,f);w._path_cubicTo=(a,b,c,e,f,h,l)=>(w._path_cubicTo=W.path_cubicTo)(a,b,c,e,f,h,l);w._path_relativeCubicTo=(a,b,c,e,f,h,l)=>(w._path_relativeCubicTo=W.path_relativeCubicTo)(a,b,c,e,f,h,l);w._path_conicTo=(a,b,c,e,f,h)=>(w._path_conicTo=W.path_conicTo)(a,b,c,e,f,h);w._path_relativeConicTo=(a,b,c,e,f,h)=>(w._path_relativeConicTo=W.path_relativeConicTo)(a,b,c,e,f,h);
95
+ w._path_arcToOval=(a,b,c,e,f)=>(w._path_arcToOval=W.path_arcToOval)(a,b,c,e,f);w._path_arcToRotated=(a,b,c,e,f,h,l,m)=>(w._path_arcToRotated=W.path_arcToRotated)(a,b,c,e,f,h,l,m);w._path_relativeArcToRotated=(a,b,c,e,f,h,l,m)=>(w._path_relativeArcToRotated=W.path_relativeArcToRotated)(a,b,c,e,f,h,l,m);w._path_addRect=(a,b)=>(w._path_addRect=W.path_addRect)(a,b);w._path_addOval=(a,b)=>(w._path_addOval=W.path_addOval)(a,b);w._path_addArc=(a,b,c,e)=>(w._path_addArc=W.path_addArc)(a,b,c,e);
96
+ w._path_addPolygon=(a,b,c,e)=>(w._path_addPolygon=W.path_addPolygon)(a,b,c,e);w._path_addRRect=(a,b)=>(w._path_addRRect=W.path_addRRect)(a,b);w._path_addPath=(a,b,c,e)=>(w._path_addPath=W.path_addPath)(a,b,c,e);w._path_close=a=>(w._path_close=W.path_close)(a);w._path_reset=a=>(w._path_reset=W.path_reset)(a);w._path_contains=(a,b,c)=>(w._path_contains=W.path_contains)(a,b,c);w._path_transform=(a,b)=>(w._path_transform=W.path_transform)(a,b);
97
+ w._path_getBounds=(a,b)=>(w._path_getBounds=W.path_getBounds)(a,b);w._path_combine=(a,b,c)=>(w._path_combine=W.path_combine)(a,b,c);w._path_getSvgString=a=>(w._path_getSvgString=W.path_getSvgString)(a);w._pictureRecorder_create=()=>(w._pictureRecorder_create=W.pictureRecorder_create)();w._pictureRecorder_dispose=a=>(w._pictureRecorder_dispose=W.pictureRecorder_dispose)(a);w._pictureRecorder_beginRecording=(a,b)=>(w._pictureRecorder_beginRecording=W.pictureRecorder_beginRecording)(a,b);
98
+ w._pictureRecorder_endRecording=a=>(w._pictureRecorder_endRecording=W.pictureRecorder_endRecording)(a);w._picture_getCullRect=(a,b)=>(w._picture_getCullRect=W.picture_getCullRect)(a,b);w._picture_dispose=a=>(w._picture_dispose=W.picture_dispose)(a);w._picture_approximateBytesUsed=a=>(w._picture_approximateBytesUsed=W.picture_approximateBytesUsed)(a);w._shader_createLinearGradient=(a,b,c,e,f,h)=>(w._shader_createLinearGradient=W.shader_createLinearGradient)(a,b,c,e,f,h);
99
+ w._shader_createRadialGradient=(a,b,c,e,f,h,l,m)=>(w._shader_createRadialGradient=W.shader_createRadialGradient)(a,b,c,e,f,h,l,m);w._shader_createConicalGradient=(a,b,c,e,f,h,l,m)=>(w._shader_createConicalGradient=W.shader_createConicalGradient)(a,b,c,e,f,h,l,m);w._shader_createSweepGradient=(a,b,c,e,f,h,l,m,p)=>(w._shader_createSweepGradient=W.shader_createSweepGradient)(a,b,c,e,f,h,l,m,p);w._shader_dispose=a=>(w._shader_dispose=W.shader_dispose)(a);
100
+ w._runtimeEffect_create=a=>(w._runtimeEffect_create=W.runtimeEffect_create)(a);w._runtimeEffect_dispose=a=>(w._runtimeEffect_dispose=W.runtimeEffect_dispose)(a);w._runtimeEffect_getUniformSize=a=>(w._runtimeEffect_getUniformSize=W.runtimeEffect_getUniformSize)(a);w._shader_createRuntimeEffectShader=(a,b,c,e)=>(w._shader_createRuntimeEffectShader=W.shader_createRuntimeEffectShader)(a,b,c,e);w._shader_createFromImage=(a,b,c,e,f)=>(w._shader_createFromImage=W.shader_createFromImage)(a,b,c,e,f);
101
+ w._skString_allocate=a=>(w._skString_allocate=W.skString_allocate)(a);w._skString_getData=a=>(w._skString_getData=W.skString_getData)(a);w._skString_getLength=a=>(w._skString_getLength=W.skString_getLength)(a);w._skString_free=a=>(w._skString_free=W.skString_free)(a);w._skString16_allocate=a=>(w._skString16_allocate=W.skString16_allocate)(a);w._skString16_getData=a=>(w._skString16_getData=W.skString16_getData)(a);w._skString16_free=a=>(w._skString16_free=W.skString16_free)(a);
102
+ w._surface_create=()=>(w._surface_create=W.surface_create)();w._surface_getThreadId=a=>(w._surface_getThreadId=W.surface_getThreadId)(a);w._surface_setCallbackHandler=(a,b)=>(w._surface_setCallbackHandler=W.surface_setCallbackHandler)(a,b);w._surface_destroy=a=>(w._surface_destroy=W.surface_destroy)(a);var ic=w._surface_dispose=a=>(ic=w._surface_dispose=W.surface_dispose)(a);w._surface_renderPictures=(a,b,c)=>(w._surface_renderPictures=W.surface_renderPictures)(a,b,c);
103
+ var gc=w._surface_renderPicturesOnWorker=(a,b,c,e,f)=>(gc=w._surface_renderPicturesOnWorker=W.surface_renderPicturesOnWorker)(a,b,c,e,f);w._surface_rasterizeImage=(a,b,c)=>(w._surface_rasterizeImage=W.surface_rasterizeImage)(a,b,c);
104
+ var jc=w._surface_rasterizeImageOnWorker=(a,b,c,e)=>(jc=w._surface_rasterizeImageOnWorker=W.surface_rasterizeImageOnWorker)(a,b,c,e),hc=w._surface_onRenderComplete=(a,b,c)=>(hc=w._surface_onRenderComplete=W.surface_onRenderComplete)(a,b,c),kc=w._surface_onRasterizeComplete=(a,b,c)=>(kc=w._surface_onRasterizeComplete=W.surface_onRasterizeComplete)(a,b,c);w._skwasm_isMultiThreaded=()=>(w._skwasm_isMultiThreaded=W.skwasm_isMultiThreaded)();
105
+ w._lineMetrics_create=(a,b,c,e,f,h,l,m,p)=>(w._lineMetrics_create=W.lineMetrics_create)(a,b,c,e,f,h,l,m,p);w._lineMetrics_dispose=a=>(w._lineMetrics_dispose=W.lineMetrics_dispose)(a);w._lineMetrics_getHardBreak=a=>(w._lineMetrics_getHardBreak=W.lineMetrics_getHardBreak)(a);w._lineMetrics_getAscent=a=>(w._lineMetrics_getAscent=W.lineMetrics_getAscent)(a);w._lineMetrics_getDescent=a=>(w._lineMetrics_getDescent=W.lineMetrics_getDescent)(a);
106
  w._lineMetrics_getUnscaledAscent=a=>(w._lineMetrics_getUnscaledAscent=W.lineMetrics_getUnscaledAscent)(a);w._lineMetrics_getHeight=a=>(w._lineMetrics_getHeight=W.lineMetrics_getHeight)(a);w._lineMetrics_getWidth=a=>(w._lineMetrics_getWidth=W.lineMetrics_getWidth)(a);w._lineMetrics_getLeft=a=>(w._lineMetrics_getLeft=W.lineMetrics_getLeft)(a);w._lineMetrics_getBaseline=a=>(w._lineMetrics_getBaseline=W.lineMetrics_getBaseline)(a);w._lineMetrics_getLineNumber=a=>(w._lineMetrics_getLineNumber=W.lineMetrics_getLineNumber)(a);
107
  w._lineMetrics_getStartIndex=a=>(w._lineMetrics_getStartIndex=W.lineMetrics_getStartIndex)(a);w._lineMetrics_getEndIndex=a=>(w._lineMetrics_getEndIndex=W.lineMetrics_getEndIndex)(a);w._paragraph_dispose=a=>(w._paragraph_dispose=W.paragraph_dispose)(a);w._paragraph_getWidth=a=>(w._paragraph_getWidth=W.paragraph_getWidth)(a);w._paragraph_getHeight=a=>(w._paragraph_getHeight=W.paragraph_getHeight)(a);w._paragraph_getLongestLine=a=>(w._paragraph_getLongestLine=W.paragraph_getLongestLine)(a);
108
  w._paragraph_getMinIntrinsicWidth=a=>(w._paragraph_getMinIntrinsicWidth=W.paragraph_getMinIntrinsicWidth)(a);w._paragraph_getMaxIntrinsicWidth=a=>(w._paragraph_getMaxIntrinsicWidth=W.paragraph_getMaxIntrinsicWidth)(a);w._paragraph_getAlphabeticBaseline=a=>(w._paragraph_getAlphabeticBaseline=W.paragraph_getAlphabeticBaseline)(a);w._paragraph_getIdeographicBaseline=a=>(w._paragraph_getIdeographicBaseline=W.paragraph_getIdeographicBaseline)(a);
build/web/canvaskit/skwasm_heavy.js.symbols CHANGED
The diff for this file is too large to render. See raw diff
 
build/web/canvaskit/skwasm_heavy.wasm CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:382502d782012c48ddd037e89585f3ed8e0fb708471a22d49ea008d27797f2e1
3
- size 4920187
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:4c9edc9a9bd8817c12ac650bd24a3e5a21fb1b857758728e9819f62c5c013a22
3
+ size 4933843
build/web/flutter.js CHANGED
@@ -1,6 +1,6 @@
1
- (()=>{var S={blink:!0,gecko:!1,webkit:!1,unknown:!1},P=()=>navigator.vendor==="Google Inc."||navigator.userAgent.includes("Edg/")?"blink":navigator.vendor==="Apple Computer, Inc."?"webkit":navigator.vendor===""&&navigator.userAgent.includes("Firefox")?"gecko":"unknown",_=P(),j=()=>typeof ImageDecoder>"u"?!1:_==="blink",A=()=>typeof Intl.v8BreakIterator<"u"&&typeof Intl.Segmenter<"u",x=()=>{let i=[0,97,115,109,1,0,0,0,1,5,1,95,1,120,0];return WebAssembly.validate(new Uint8Array(i))},p={browserEngine:_,hasImageCodecs:j(),hasChromiumBreakIterators:A(),supportsWasmGC:x(),crossOriginIsolated:window.crossOriginIsolated};function l(...i){return new URL(L(...i),document.baseURI).toString()}function L(...i){return i.filter(e=>!!e).map((e,t)=>t===0?C(e):K(C(e))).filter(e=>e.length).join("/")}function K(i){let e=0;for(;e<i.length&&i.charAt(e)==="/";)e++;return i.substring(e)}function C(i){let e=i.length;for(;e>0&&i.charAt(e-1)==="/";)e--;return i.substring(0,e)}function I(i,e){return i.canvasKitBaseUrl?i.canvasKitBaseUrl:e.engineRevision&&!e.useLocalCanvasKit?L("https://www.gstatic.com/flutter-canvaskit",e.engineRevision):"canvaskit"}var v=class{constructor(){this._scriptLoaded=!1}setTrustedTypesPolicy(e){this._ttPolicy=e}async loadEntrypoint(e){let{entrypointUrl:t=l("main.dart.js"),onEntrypointLoaded:r,nonce:n}=e||{};return this._loadJSEntrypoint(t,r,n)}async load(e,t,r,n,s){s??=o=>{o.initializeEngine(r).then(d=>d.runApp())};let{entryPointBaseUrl:a}=r;if(e.compileTarget==="dart2wasm")return this._loadWasmEntrypoint(e,t,a,s);{let o=e.mainJsPath??"main.dart.js",d=l(a,o);return this._loadJSEntrypoint(d,s,n)}}didCreateEngineInitializer(e){typeof this._didCreateEngineInitializerResolve=="function"&&(this._didCreateEngineInitializerResolve(e),this._didCreateEngineInitializerResolve=null,delete _flutter.loader.didCreateEngineInitializer),typeof this._onEntrypointLoaded=="function"&&this._onEntrypointLoaded(e)}_loadJSEntrypoint(e,t,r){let n=typeof t=="function";if(!this._scriptLoaded){this._scriptLoaded=!0;let s=this._createScriptTag(e,r);if(n)console.debug("Injecting <script> tag. Using callback."),this._onEntrypointLoaded=t,document.head.append(s);else return new Promise((a,o)=>{console.debug("Injecting <script> tag. Using Promises. Use the callback approach instead!"),this._didCreateEngineInitializerResolve=a,s.addEventListener("error",o),document.head.append(s)})}}async _loadWasmEntrypoint(e,t,r,n){if(!this._scriptLoaded){this._scriptLoaded=!0,this._onEntrypointLoaded=n;let{mainWasmPath:s,jsSupportRuntimePath:a}=e,o=l(r,s),d=l(r,a);this._ttPolicy!=null&&(d=this._ttPolicy.createScriptURL(d));let m=(await import(d)).compileStreaming(fetch(o)),c;e.renderer==="skwasm"?c=(async()=>{let u=await t.skwasm;return window._flutter_skwasmInstance=u,{skwasm:u.wasmExports,skwasmWrapper:u,ffi:{memory:u.wasmMemory}}})():c=Promise.resolve({}),await(await(await m).instantiate(await c)).invokeMain()}}_createScriptTag(e,t){let r=document.createElement("script");r.type="application/javascript",t&&(r.nonce=t);let n=e;return this._ttPolicy!=null&&(n=this._ttPolicy.createScriptURL(e)),r.src=n,r}};async function T(i,e,t){if(e<0)return i;let r,n=new Promise((s,a)=>{r=setTimeout(()=>{a(new Error(`${t} took more than ${e}ms to resolve. Moving on.`,{cause:T}))},e)});return Promise.race([i,n]).finally(()=>{clearTimeout(r)})}var h=class{setTrustedTypesPolicy(e){this._ttPolicy=e}loadServiceWorker(e){if(!e)return console.debug("Null serviceWorker configuration. Skipping."),Promise.resolve();if(!("serviceWorker"in navigator)){let o="Service Worker API unavailable.";return window.isSecureContext||(o+=`
2
  The current context is NOT secure.`,o+=`
3
- Read more: https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts`),Promise.reject(new Error(o))}let{serviceWorkerVersion:t,serviceWorkerUrl:r=l(`flutter_service_worker.js?v=${t}`),timeoutMillis:n=4e3}=e,s=r;this._ttPolicy!=null&&(s=this._ttPolicy.createScriptURL(s));let a=navigator.serviceWorker.register(s).then(o=>this._getNewServiceWorker(o,t)).then(this._waitForServiceWorkerActivation);return T(a,n,"prepareServiceWorker")}async _getNewServiceWorker(e,t){if(!e.active&&(e.installing||e.waiting))return console.debug("Installing/Activating first service worker."),e.installing||e.waiting;if(e.active.scriptURL.endsWith(t))return console.debug("Loading from existing service worker."),e.active;{let r=await e.update();return console.debug("Updating service worker."),r.installing||r.waiting||r.active}}async _waitForServiceWorkerActivation(e){if(!e||e.state==="activated")if(e){console.debug("Service worker already active.");return}else throw new Error("Cannot activate a null service worker!");return new Promise((t,r)=>{e.addEventListener("statechange",()=>{e.state==="activated"&&(console.debug("Activated new service worker."),t())})})}};var g=class{constructor(e,t="flutter-js"){let r=e||[/\.js$/,/\.mjs$/];window.trustedTypes&&(this.policy=trustedTypes.createPolicy(t,{createScriptURL:function(n){if(n.startsWith("blob:"))return n;let s=new URL(n,window.location),a=s.pathname.split("/").pop();if(r.some(d=>d.test(a)))return s.toString();console.error("URL rejected by TrustedTypes policy",t,":",n,"(download prevented)")}}))}};var k=i=>{let e=WebAssembly.compileStreaming(fetch(i));return(t,r)=>((async()=>{let n=await e,s=await WebAssembly.instantiate(n,t);r(s,n)})(),{})};var E=(i,e,t,r)=>(window.flutterCanvasKitLoaded=(async()=>{if(window.flutterCanvasKit)return window.flutterCanvasKit;let n=t.hasChromiumBreakIterators&&t.hasImageCodecs;if(!n&&e.canvasKitVariant=="chromium")throw"Chromium CanvasKit variant specifically requested, but unsupported in this browser";let s=n&&e.canvasKitVariant!=="full",a=r;e.canvasKitVariant=="experimentalWebParagraph"?a=l(a,"experimental_webparagraph"):s&&(a=l(a,"chromium"));let o=l(a,"canvaskit.js");i.flutterTT.policy&&(o=i.flutterTT.policy.createScriptURL(o));let d=k(l(a,"canvaskit.wasm")),w=await import(o);return window.flutterCanvasKit=await w.default({instantiateWasm:d}),window.flutterCanvasKit})(),window.flutterCanvasKitLoaded);var W=async(i,e,t,r)=>{let s=!t.hasImageCodecs||!t.hasChromiumBreakIterators?"skwasm_heavy":"skwasm",a=l(r,`${s}.js`),o=a;i.flutterTT.policy&&(o=i.flutterTT.policy.createScriptURL(o));let d=k(l(r,`${s}.wasm`));return await(await import(o)).default({skwasmSingleThreaded:!t.crossOriginIsolated||e.forceSingleThreadedSkwasm,instantiateWasm:d,locateFile:(m,c)=>{if(m.endsWith(".ww.js")){let y=l(r,m);return URL.createObjectURL(new Blob([`
4
  "use strict";
5
 
6
  let eventListener;
@@ -28,5 +28,5 @@ eventListener = (message) => {
28
  addEventListener("message", eventListener);
29
  };
30
  addEventListener("message", eventListener);
31
- `],{type:"application/javascript"}))}return url},mainScriptUrlOrBlob:a})};var b=class{async loadEntrypoint(e){let{serviceWorker:t,...r}=e||{},n=new g,s=new h;s.setTrustedTypesPolicy(n.policy),await s.loadServiceWorker(t).catch(o=>{console.warn("Exception while loading service worker:",o)});let a=new v;return a.setTrustedTypesPolicy(n.policy),this.didCreateEngineInitializer=a.didCreateEngineInitializer.bind(a),a.loadEntrypoint(r)}async load({serviceWorkerSettings:e,onEntrypointLoaded:t,nonce:r,config:n}={}){n??={};let s=_flutter.buildConfig;if(!s)throw"FlutterLoader.load requires _flutter.buildConfig to be set";let a=n.wasmAllowList?.[p.browserEngine]??S[p.browserEngine],o=u=>{switch(u){case"skwasm":return p.supportsWasmGC&&a;default:return!0}},d=(u,U)=>u.renderer==U,w=u=>u.compileTarget==="dart2wasm"&&!p.supportsWasmGC||n.renderer&&!d(u,n.renderer)?!1:o(u.renderer),m=s.builds.find(w);if(!m)throw"FlutterLoader could not find a build compatible with configuration and environment.";let c={};c.flutterTT=new g,e&&(c.serviceWorkerLoader=new h,c.serviceWorkerLoader.setTrustedTypesPolicy(c.flutterTT.policy),await c.serviceWorkerLoader.loadServiceWorker(e).catch(u=>{console.warn("Exception while loading service worker:",u)}));let y=I(n,s);m.renderer==="canvaskit"?c.canvasKit=E(c,n,p,y):m.renderer==="skwasm"&&(c.skwasm=W(c,n,p,y));let f=new v;return f.setTrustedTypesPolicy(c.flutterTT.policy),this.didCreateEngineInitializer=f.didCreateEngineInitializer.bind(f),f.load(m,c,n,r,t)}};window._flutter||(window._flutter={});window._flutter.loader||(window._flutter.loader=new b);})();
32
  //# sourceMappingURL=flutter.js.map
 
1
+ (()=>{var C={blink:!0,gecko:!1,webkit:!1,unknown:!1},R=()=>navigator.vendor==="Google Inc."||navigator.userAgent.includes("Edg/")?"blink":navigator.vendor==="Apple Computer, Inc."?"webkit":navigator.vendor===""&&navigator.userAgent.includes("Firefox")?"gecko":"unknown",L=R(),x=()=>typeof ImageDecoder>"u"?!1:L==="blink",K=()=>typeof Intl.v8BreakIterator<"u"&&typeof Intl.Segmenter<"u",B=()=>{let i=[0,97,115,109,1,0,0,0,1,5,1,95,1,120,0];return WebAssembly.validate(new Uint8Array(i))},w={browserEngine:L,hasImageCodecs:x(),hasChromiumBreakIterators:K(),supportsWasmGC:B(),crossOriginIsolated:window.crossOriginIsolated};function c(...i){return new URL(T(...i),document.baseURI).toString()}function T(...i){return i.filter(e=>!!e).map((e,r)=>r===0?I(e):z(I(e))).filter(e=>e.length).join("/")}function z(i){let e=0;for(;e<i.length&&i.charAt(e)==="/";)e++;return i.substring(e)}function I(i){let e=i.length;for(;e>0&&i.charAt(e-1)==="/";)e--;return i.substring(0,e)}function U(i,e){return i.canvasKitBaseUrl?i.canvasKitBaseUrl:e.engineRevision&&!e.useLocalCanvasKit?T("https://www.gstatic.com/flutter-canvaskit",e.engineRevision):"canvaskit"}var v=class{constructor(){this._scriptLoaded=!1}setTrustedTypesPolicy(e){this._ttPolicy=e}async loadEntrypoint(e){let{entrypointUrl:r=c("main.dart.js"),onEntrypointLoaded:t,nonce:n}=e||{};return this._loadJSEntrypoint(r,t,n)}async load(e,r,t,n,s){s??=u=>{u.initializeEngine(t).then(m=>m.runApp())};let{entrypointBaseUrl:a}=t,{entryPointBaseUrl:o}=t;if(!a&&o&&(console.warn("[deprecated] `entryPointBaseUrl` is deprecated and will be removed in a future release. Use `entrypointBaseUrl` instead."),a=o),e.compileTarget==="dart2wasm")return this._loadWasmEntrypoint(e,r,a,s);{let u=e.mainJsPath??"main.dart.js",m=c(a,u);return this._loadJSEntrypoint(m,s,n)}}didCreateEngineInitializer(e){typeof this._didCreateEngineInitializerResolve=="function"&&(this._didCreateEngineInitializerResolve(e),this._didCreateEngineInitializerResolve=null,delete _flutter.loader.didCreateEngineInitializer),typeof this._onEntrypointLoaded=="function"&&this._onEntrypointLoaded(e)}_loadJSEntrypoint(e,r,t){let n=typeof r=="function";if(!this._scriptLoaded){this._scriptLoaded=!0;let s=this._createScriptTag(e,t);if(n)console.debug("Injecting <script> tag. Using callback."),this._onEntrypointLoaded=r,document.head.append(s);else return new Promise((a,o)=>{console.debug("Injecting <script> tag. Using Promises. Use the callback approach instead!"),this._didCreateEngineInitializerResolve=a,s.addEventListener("error",o),document.head.append(s)})}}async _loadWasmEntrypoint(e,r,t,n){if(!this._scriptLoaded){this._scriptLoaded=!0,this._onEntrypointLoaded=n;let{mainWasmPath:s,jsSupportRuntimePath:a}=e,o=c(t,s),u=c(t,a);this._ttPolicy!=null&&(u=this._ttPolicy.createScriptURL(u));let p=(await import(u)).compileStreaming(fetch(o)),l;e.renderer==="skwasm"?l=(async()=>{let d=await r.skwasm;return window._flutter_skwasmInstance=d,{skwasm:d.wasmExports,skwasmWrapper:d,ffi:{memory:d.wasmMemory}}})():l=Promise.resolve({}),await(await(await p).instantiate(await l,{loadDynamicModule:async(d,S)=>{let j=fetch(c(t,d)),_=c(t,S);this._ttPolicy!=null&&(_=this._ttPolicy.createScriptURL(_));let A=import(_);return[await j,await A]}})).invokeMain()}}_createScriptTag(e,r){let t=document.createElement("script");t.type="application/javascript",r&&(t.nonce=r);let n=e;return this._ttPolicy!=null&&(n=this._ttPolicy.createScriptURL(e)),t.src=n,t}};async function E(i,e,r){if(e<0)return i;let t,n=new Promise((s,a)=>{t=setTimeout(()=>{a(new Error(`${r} took more than ${e}ms to resolve. Moving on.`,{cause:E}))},e)});return Promise.race([i,n]).finally(()=>{clearTimeout(t)})}var h=class{setTrustedTypesPolicy(e){this._ttPolicy=e}loadServiceWorker(e){if(!e)return console.debug("Null serviceWorker configuration. Skipping."),Promise.resolve();if(!("serviceWorker"in navigator)){let o="Service Worker API unavailable.";return window.isSecureContext||(o+=`
2
  The current context is NOT secure.`,o+=`
3
+ Read more: https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts`),Promise.reject(new Error(o))}let{serviceWorkerVersion:r,serviceWorkerUrl:t=c(`flutter_service_worker.js?v=${r}`),timeoutMillis:n=4e3}=e,s=t;this._ttPolicy!=null&&(s=this._ttPolicy.createScriptURL(s));let a=navigator.serviceWorker.register(s).then(o=>this._getNewServiceWorker(o,r)).then(this._waitForServiceWorkerActivation);return E(a,n,"prepareServiceWorker")}async _getNewServiceWorker(e,r){if(!e.active&&(e.installing||e.waiting))return console.debug("Installing/Activating first service worker."),e.installing||e.waiting;if(e.active.scriptURL.endsWith(r))return console.debug("Loading from existing service worker."),e.active;{let t=await e.update();return console.debug("Updating service worker."),t.installing||t.waiting||t.active}}async _waitForServiceWorkerActivation(e){if(!e||e.state==="activated")if(e){console.debug("Service worker already active.");return}else throw new Error("Cannot activate a null service worker!");return new Promise((r,t)=>{e.addEventListener("statechange",()=>{e.state==="activated"&&(console.debug("Activated new service worker."),r())})})}};var g=class{constructor(e,r="flutter-js"){let t=e||[/\.js$/,/\.mjs$/];window.trustedTypes&&(this.policy=trustedTypes.createPolicy(r,{createScriptURL:function(n){if(n.startsWith("blob:"))return n;let s=new URL(n,window.location),a=s.pathname.split("/").pop();if(t.some(u=>u.test(a)))return s.toString();console.error("URL rejected by TrustedTypes policy",r,":",n,"(download prevented)")}}))}};var k=i=>{let e=WebAssembly.compileStreaming(fetch(i));return(r,t)=>((async()=>{let n=await e,s=await WebAssembly.instantiate(n,r);t(s,n)})(),{})};var W=(i,e,r,t)=>(window.flutterCanvasKitLoaded=(async()=>{if(window.flutterCanvasKit)return window.flutterCanvasKit;let n=r.hasChromiumBreakIterators&&r.hasImageCodecs;if(!n&&e.canvasKitVariant=="chromium")throw"Chromium CanvasKit variant specifically requested, but unsupported in this browser";let s=n&&e.canvasKitVariant!=="full",a=t;e.canvasKitVariant=="experimentalWebParagraph"?a=c(a,"experimental_webparagraph"):s&&(a=c(a,"chromium"));let o=c(a,"canvaskit.js");i.flutterTT.policy&&(o=i.flutterTT.policy.createScriptURL(o));let u=k(c(a,"canvaskit.wasm")),m=await import(o);return window.flutterCanvasKit=await m.default({instantiateWasm:u}),window.flutterCanvasKit})(),window.flutterCanvasKitLoaded);var P=async(i,e,r,t)=>{let s=!r.hasImageCodecs||!r.hasChromiumBreakIterators?"skwasm_heavy":"skwasm",a=c(t,`${s}.js`),o=a;i.flutterTT.policy&&(o=i.flutterTT.policy.createScriptURL(o));let u=k(c(t,`${s}.wasm`));return await(await import(o)).default({skwasmSingleThreaded:!r.crossOriginIsolated||e.forceSingleThreadedSkwasm,instantiateWasm:u,locateFile:(p,l)=>{if(p.endsWith(".ww.js")){let y=c(t,p);return URL.createObjectURL(new Blob([`
4
  "use strict";
5
 
6
  let eventListener;
 
28
  addEventListener("message", eventListener);
29
  };
30
  addEventListener("message", eventListener);
31
+ `],{type:"application/javascript"}))}return url},mainScriptUrlOrBlob:a})};var b=class{async loadEntrypoint(e){let{serviceWorker:r,...t}=e||{},n=new g,s=new h;s.setTrustedTypesPolicy(n.policy),await s.loadServiceWorker(r).catch(o=>{console.warn("Exception while loading service worker:",o)});let a=new v;return a.setTrustedTypesPolicy(n.policy),this.didCreateEngineInitializer=a.didCreateEngineInitializer.bind(a),a.loadEntrypoint(t)}async load({serviceWorkerSettings:e,onEntrypointLoaded:r,nonce:t,config:n}={}){n??={};let s=_flutter.buildConfig;if(!s)throw"FlutterLoader.load requires _flutter.buildConfig to be set";let a=n.wasmAllowList?.[w.browserEngine]??C[w.browserEngine],o=d=>{switch(d){case"skwasm":return w.supportsWasmGC&&a;default:return!0}},u=(d,S)=>d.renderer==S,m=d=>d.compileTarget==="dart2wasm"&&!w.supportsWasmGC||n.renderer&&!u(d,n.renderer)?!1:o(d.renderer),p=s.builds.find(m);if(!p)throw"FlutterLoader could not find a build compatible with configuration and environment.";let l={};l.flutterTT=new g,e&&(l.serviceWorkerLoader=new h,l.serviceWorkerLoader.setTrustedTypesPolicy(l.flutterTT.policy),await l.serviceWorkerLoader.loadServiceWorker(e).catch(d=>{console.warn("Exception while loading service worker:",d)}));let y=U(n,s);p.renderer==="canvaskit"?l.canvasKit=W(l,n,w,y):p.renderer==="skwasm"&&(l.skwasm=P(l,n,w,y));let f=new v;return f.setTrustedTypesPolicy(l.flutterTT.policy),this.didCreateEngineInitializer=f.didCreateEngineInitializer.bind(f),f.load(p,l,n,t,r)}};window._flutter||(window._flutter={});window._flutter.loader||(window._flutter.loader=new b);})();
32
  //# sourceMappingURL=flutter.js.map
build/web/flutter_bootstrap.js CHANGED
@@ -1,6 +1,6 @@
1
- (()=>{var S={blink:!0,gecko:!1,webkit:!1,unknown:!1},P=()=>navigator.vendor==="Google Inc."||navigator.userAgent.includes("Edg/")?"blink":navigator.vendor==="Apple Computer, Inc."?"webkit":navigator.vendor===""&&navigator.userAgent.includes("Firefox")?"gecko":"unknown",_=P(),j=()=>typeof ImageDecoder>"u"?!1:_==="blink",A=()=>typeof Intl.v8BreakIterator<"u"&&typeof Intl.Segmenter<"u",x=()=>{let i=[0,97,115,109,1,0,0,0,1,5,1,95,1,120,0];return WebAssembly.validate(new Uint8Array(i))},p={browserEngine:_,hasImageCodecs:j(),hasChromiumBreakIterators:A(),supportsWasmGC:x(),crossOriginIsolated:window.crossOriginIsolated};function l(...i){return new URL(L(...i),document.baseURI).toString()}function L(...i){return i.filter(e=>!!e).map((e,t)=>t===0?C(e):K(C(e))).filter(e=>e.length).join("/")}function K(i){let e=0;for(;e<i.length&&i.charAt(e)==="/";)e++;return i.substring(e)}function C(i){let e=i.length;for(;e>0&&i.charAt(e-1)==="/";)e--;return i.substring(0,e)}function I(i,e){return i.canvasKitBaseUrl?i.canvasKitBaseUrl:e.engineRevision&&!e.useLocalCanvasKit?L("https://www.gstatic.com/flutter-canvaskit",e.engineRevision):"canvaskit"}var v=class{constructor(){this._scriptLoaded=!1}setTrustedTypesPolicy(e){this._ttPolicy=e}async loadEntrypoint(e){let{entrypointUrl:t=l("main.dart.js"),onEntrypointLoaded:r,nonce:n}=e||{};return this._loadJSEntrypoint(t,r,n)}async load(e,t,r,n,s){s??=o=>{o.initializeEngine(r).then(d=>d.runApp())};let{entryPointBaseUrl:a}=r;if(e.compileTarget==="dart2wasm")return this._loadWasmEntrypoint(e,t,a,s);{let o=e.mainJsPath??"main.dart.js",d=l(a,o);return this._loadJSEntrypoint(d,s,n)}}didCreateEngineInitializer(e){typeof this._didCreateEngineInitializerResolve=="function"&&(this._didCreateEngineInitializerResolve(e),this._didCreateEngineInitializerResolve=null,delete _flutter.loader.didCreateEngineInitializer),typeof this._onEntrypointLoaded=="function"&&this._onEntrypointLoaded(e)}_loadJSEntrypoint(e,t,r){let n=typeof t=="function";if(!this._scriptLoaded){this._scriptLoaded=!0;let s=this._createScriptTag(e,r);if(n)console.debug("Injecting <script> tag. Using callback."),this._onEntrypointLoaded=t,document.head.append(s);else return new Promise((a,o)=>{console.debug("Injecting <script> tag. Using Promises. Use the callback approach instead!"),this._didCreateEngineInitializerResolve=a,s.addEventListener("error",o),document.head.append(s)})}}async _loadWasmEntrypoint(e,t,r,n){if(!this._scriptLoaded){this._scriptLoaded=!0,this._onEntrypointLoaded=n;let{mainWasmPath:s,jsSupportRuntimePath:a}=e,o=l(r,s),d=l(r,a);this._ttPolicy!=null&&(d=this._ttPolicy.createScriptURL(d));let m=(await import(d)).compileStreaming(fetch(o)),c;e.renderer==="skwasm"?c=(async()=>{let u=await t.skwasm;return window._flutter_skwasmInstance=u,{skwasm:u.wasmExports,skwasmWrapper:u,ffi:{memory:u.wasmMemory}}})():c=Promise.resolve({}),await(await(await m).instantiate(await c)).invokeMain()}}_createScriptTag(e,t){let r=document.createElement("script");r.type="application/javascript",t&&(r.nonce=t);let n=e;return this._ttPolicy!=null&&(n=this._ttPolicy.createScriptURL(e)),r.src=n,r}};async function T(i,e,t){if(e<0)return i;let r,n=new Promise((s,a)=>{r=setTimeout(()=>{a(new Error(`${t} took more than ${e}ms to resolve. Moving on.`,{cause:T}))},e)});return Promise.race([i,n]).finally(()=>{clearTimeout(r)})}var h=class{setTrustedTypesPolicy(e){this._ttPolicy=e}loadServiceWorker(e){if(!e)return console.debug("Null serviceWorker configuration. Skipping."),Promise.resolve();if(!("serviceWorker"in navigator)){let o="Service Worker API unavailable.";return window.isSecureContext||(o+=`
2
  The current context is NOT secure.`,o+=`
3
- Read more: https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts`),Promise.reject(new Error(o))}let{serviceWorkerVersion:t,serviceWorkerUrl:r=l(`flutter_service_worker.js?v=${t}`),timeoutMillis:n=4e3}=e,s=r;this._ttPolicy!=null&&(s=this._ttPolicy.createScriptURL(s));let a=navigator.serviceWorker.register(s).then(o=>this._getNewServiceWorker(o,t)).then(this._waitForServiceWorkerActivation);return T(a,n,"prepareServiceWorker")}async _getNewServiceWorker(e,t){if(!e.active&&(e.installing||e.waiting))return console.debug("Installing/Activating first service worker."),e.installing||e.waiting;if(e.active.scriptURL.endsWith(t))return console.debug("Loading from existing service worker."),e.active;{let r=await e.update();return console.debug("Updating service worker."),r.installing||r.waiting||r.active}}async _waitForServiceWorkerActivation(e){if(!e||e.state==="activated")if(e){console.debug("Service worker already active.");return}else throw new Error("Cannot activate a null service worker!");return new Promise((t,r)=>{e.addEventListener("statechange",()=>{e.state==="activated"&&(console.debug("Activated new service worker."),t())})})}};var g=class{constructor(e,t="flutter-js"){let r=e||[/\.js$/,/\.mjs$/];window.trustedTypes&&(this.policy=trustedTypes.createPolicy(t,{createScriptURL:function(n){if(n.startsWith("blob:"))return n;let s=new URL(n,window.location),a=s.pathname.split("/").pop();if(r.some(d=>d.test(a)))return s.toString();console.error("URL rejected by TrustedTypes policy",t,":",n,"(download prevented)")}}))}};var k=i=>{let e=WebAssembly.compileStreaming(fetch(i));return(t,r)=>((async()=>{let n=await e,s=await WebAssembly.instantiate(n,t);r(s,n)})(),{})};var E=(i,e,t,r)=>(window.flutterCanvasKitLoaded=(async()=>{if(window.flutterCanvasKit)return window.flutterCanvasKit;let n=t.hasChromiumBreakIterators&&t.hasImageCodecs;if(!n&&e.canvasKitVariant=="chromium")throw"Chromium CanvasKit variant specifically requested, but unsupported in this browser";let s=n&&e.canvasKitVariant!=="full",a=r;e.canvasKitVariant=="experimentalWebParagraph"?a=l(a,"experimental_webparagraph"):s&&(a=l(a,"chromium"));let o=l(a,"canvaskit.js");i.flutterTT.policy&&(o=i.flutterTT.policy.createScriptURL(o));let d=k(l(a,"canvaskit.wasm")),w=await import(o);return window.flutterCanvasKit=await w.default({instantiateWasm:d}),window.flutterCanvasKit})(),window.flutterCanvasKitLoaded);var W=async(i,e,t,r)=>{let s=!t.hasImageCodecs||!t.hasChromiumBreakIterators?"skwasm_heavy":"skwasm",a=l(r,`${s}.js`),o=a;i.flutterTT.policy&&(o=i.flutterTT.policy.createScriptURL(o));let d=k(l(r,`${s}.wasm`));return await(await import(o)).default({skwasmSingleThreaded:!t.crossOriginIsolated||e.forceSingleThreadedSkwasm,instantiateWasm:d,locateFile:(m,c)=>{if(m.endsWith(".ww.js")){let y=l(r,m);return URL.createObjectURL(new Blob([`
4
  "use strict";
5
 
6
  let eventListener;
@@ -28,16 +28,16 @@ eventListener = (message) => {
28
  addEventListener("message", eventListener);
29
  };
30
  addEventListener("message", eventListener);
31
- `],{type:"application/javascript"}))}return url},mainScriptUrlOrBlob:a})};var b=class{async loadEntrypoint(e){let{serviceWorker:t,...r}=e||{},n=new g,s=new h;s.setTrustedTypesPolicy(n.policy),await s.loadServiceWorker(t).catch(o=>{console.warn("Exception while loading service worker:",o)});let a=new v;return a.setTrustedTypesPolicy(n.policy),this.didCreateEngineInitializer=a.didCreateEngineInitializer.bind(a),a.loadEntrypoint(r)}async load({serviceWorkerSettings:e,onEntrypointLoaded:t,nonce:r,config:n}={}){n??={};let s=_flutter.buildConfig;if(!s)throw"FlutterLoader.load requires _flutter.buildConfig to be set";let a=n.wasmAllowList?.[p.browserEngine]??S[p.browserEngine],o=u=>{switch(u){case"skwasm":return p.supportsWasmGC&&a;default:return!0}},d=(u,U)=>u.renderer==U,w=u=>u.compileTarget==="dart2wasm"&&!p.supportsWasmGC||n.renderer&&!d(u,n.renderer)?!1:o(u.renderer),m=s.builds.find(w);if(!m)throw"FlutterLoader could not find a build compatible with configuration and environment.";let c={};c.flutterTT=new g,e&&(c.serviceWorkerLoader=new h,c.serviceWorkerLoader.setTrustedTypesPolicy(c.flutterTT.policy),await c.serviceWorkerLoader.loadServiceWorker(e).catch(u=>{console.warn("Exception while loading service worker:",u)}));let y=I(n,s);m.renderer==="canvaskit"?c.canvasKit=E(c,n,p,y):m.renderer==="skwasm"&&(c.skwasm=W(c,n,p,y));let f=new v;return f.setTrustedTypesPolicy(c.flutterTT.policy),this.didCreateEngineInitializer=f.didCreateEngineInitializer.bind(f),f.load(m,c,n,r,t)}};window._flutter||(window._flutter={});window._flutter.loader||(window._flutter.loader=new b);})();
32
  //# sourceMappingURL=flutter.js.map
33
 
34
  if (!window._flutter) {
35
  window._flutter = {};
36
  }
37
- _flutter.buildConfig = {"engineRevision":"308a517184276f9526eb6026e55cfcbde1e5ad1f","builds":[{"compileTarget":"dart2js","renderer":"canvaskit","mainJsPath":"main.dart.js"}]};
38
 
39
  _flutter.loader.load({
40
  serviceWorkerSettings: {
41
- serviceWorkerVersion: "3373940864"
42
  }
43
  });
 
1
+ (()=>{var C={blink:!0,gecko:!1,webkit:!1,unknown:!1},R=()=>navigator.vendor==="Google Inc."||navigator.userAgent.includes("Edg/")?"blink":navigator.vendor==="Apple Computer, Inc."?"webkit":navigator.vendor===""&&navigator.userAgent.includes("Firefox")?"gecko":"unknown",L=R(),x=()=>typeof ImageDecoder>"u"?!1:L==="blink",K=()=>typeof Intl.v8BreakIterator<"u"&&typeof Intl.Segmenter<"u",B=()=>{let i=[0,97,115,109,1,0,0,0,1,5,1,95,1,120,0];return WebAssembly.validate(new Uint8Array(i))},w={browserEngine:L,hasImageCodecs:x(),hasChromiumBreakIterators:K(),supportsWasmGC:B(),crossOriginIsolated:window.crossOriginIsolated};function c(...i){return new URL(T(...i),document.baseURI).toString()}function T(...i){return i.filter(e=>!!e).map((e,r)=>r===0?I(e):z(I(e))).filter(e=>e.length).join("/")}function z(i){let e=0;for(;e<i.length&&i.charAt(e)==="/";)e++;return i.substring(e)}function I(i){let e=i.length;for(;e>0&&i.charAt(e-1)==="/";)e--;return i.substring(0,e)}function U(i,e){return i.canvasKitBaseUrl?i.canvasKitBaseUrl:e.engineRevision&&!e.useLocalCanvasKit?T("https://www.gstatic.com/flutter-canvaskit",e.engineRevision):"canvaskit"}var v=class{constructor(){this._scriptLoaded=!1}setTrustedTypesPolicy(e){this._ttPolicy=e}async loadEntrypoint(e){let{entrypointUrl:r=c("main.dart.js"),onEntrypointLoaded:t,nonce:n}=e||{};return this._loadJSEntrypoint(r,t,n)}async load(e,r,t,n,s){s??=u=>{u.initializeEngine(t).then(m=>m.runApp())};let{entrypointBaseUrl:a}=t,{entryPointBaseUrl:o}=t;if(!a&&o&&(console.warn("[deprecated] `entryPointBaseUrl` is deprecated and will be removed in a future release. Use `entrypointBaseUrl` instead."),a=o),e.compileTarget==="dart2wasm")return this._loadWasmEntrypoint(e,r,a,s);{let u=e.mainJsPath??"main.dart.js",m=c(a,u);return this._loadJSEntrypoint(m,s,n)}}didCreateEngineInitializer(e){typeof this._didCreateEngineInitializerResolve=="function"&&(this._didCreateEngineInitializerResolve(e),this._didCreateEngineInitializerResolve=null,delete _flutter.loader.didCreateEngineInitializer),typeof this._onEntrypointLoaded=="function"&&this._onEntrypointLoaded(e)}_loadJSEntrypoint(e,r,t){let n=typeof r=="function";if(!this._scriptLoaded){this._scriptLoaded=!0;let s=this._createScriptTag(e,t);if(n)console.debug("Injecting <script> tag. Using callback."),this._onEntrypointLoaded=r,document.head.append(s);else return new Promise((a,o)=>{console.debug("Injecting <script> tag. Using Promises. Use the callback approach instead!"),this._didCreateEngineInitializerResolve=a,s.addEventListener("error",o),document.head.append(s)})}}async _loadWasmEntrypoint(e,r,t,n){if(!this._scriptLoaded){this._scriptLoaded=!0,this._onEntrypointLoaded=n;let{mainWasmPath:s,jsSupportRuntimePath:a}=e,o=c(t,s),u=c(t,a);this._ttPolicy!=null&&(u=this._ttPolicy.createScriptURL(u));let p=(await import(u)).compileStreaming(fetch(o)),l;e.renderer==="skwasm"?l=(async()=>{let d=await r.skwasm;return window._flutter_skwasmInstance=d,{skwasm:d.wasmExports,skwasmWrapper:d,ffi:{memory:d.wasmMemory}}})():l=Promise.resolve({}),await(await(await p).instantiate(await l,{loadDynamicModule:async(d,S)=>{let j=fetch(c(t,d)),_=c(t,S);this._ttPolicy!=null&&(_=this._ttPolicy.createScriptURL(_));let A=import(_);return[await j,await A]}})).invokeMain()}}_createScriptTag(e,r){let t=document.createElement("script");t.type="application/javascript",r&&(t.nonce=r);let n=e;return this._ttPolicy!=null&&(n=this._ttPolicy.createScriptURL(e)),t.src=n,t}};async function E(i,e,r){if(e<0)return i;let t,n=new Promise((s,a)=>{t=setTimeout(()=>{a(new Error(`${r} took more than ${e}ms to resolve. Moving on.`,{cause:E}))},e)});return Promise.race([i,n]).finally(()=>{clearTimeout(t)})}var h=class{setTrustedTypesPolicy(e){this._ttPolicy=e}loadServiceWorker(e){if(!e)return console.debug("Null serviceWorker configuration. Skipping."),Promise.resolve();if(!("serviceWorker"in navigator)){let o="Service Worker API unavailable.";return window.isSecureContext||(o+=`
2
  The current context is NOT secure.`,o+=`
3
+ Read more: https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts`),Promise.reject(new Error(o))}let{serviceWorkerVersion:r,serviceWorkerUrl:t=c(`flutter_service_worker.js?v=${r}`),timeoutMillis:n=4e3}=e,s=t;this._ttPolicy!=null&&(s=this._ttPolicy.createScriptURL(s));let a=navigator.serviceWorker.register(s).then(o=>this._getNewServiceWorker(o,r)).then(this._waitForServiceWorkerActivation);return E(a,n,"prepareServiceWorker")}async _getNewServiceWorker(e,r){if(!e.active&&(e.installing||e.waiting))return console.debug("Installing/Activating first service worker."),e.installing||e.waiting;if(e.active.scriptURL.endsWith(r))return console.debug("Loading from existing service worker."),e.active;{let t=await e.update();return console.debug("Updating service worker."),t.installing||t.waiting||t.active}}async _waitForServiceWorkerActivation(e){if(!e||e.state==="activated")if(e){console.debug("Service worker already active.");return}else throw new Error("Cannot activate a null service worker!");return new Promise((r,t)=>{e.addEventListener("statechange",()=>{e.state==="activated"&&(console.debug("Activated new service worker."),r())})})}};var g=class{constructor(e,r="flutter-js"){let t=e||[/\.js$/,/\.mjs$/];window.trustedTypes&&(this.policy=trustedTypes.createPolicy(r,{createScriptURL:function(n){if(n.startsWith("blob:"))return n;let s=new URL(n,window.location),a=s.pathname.split("/").pop();if(t.some(u=>u.test(a)))return s.toString();console.error("URL rejected by TrustedTypes policy",r,":",n,"(download prevented)")}}))}};var k=i=>{let e=WebAssembly.compileStreaming(fetch(i));return(r,t)=>((async()=>{let n=await e,s=await WebAssembly.instantiate(n,r);t(s,n)})(),{})};var W=(i,e,r,t)=>(window.flutterCanvasKitLoaded=(async()=>{if(window.flutterCanvasKit)return window.flutterCanvasKit;let n=r.hasChromiumBreakIterators&&r.hasImageCodecs;if(!n&&e.canvasKitVariant=="chromium")throw"Chromium CanvasKit variant specifically requested, but unsupported in this browser";let s=n&&e.canvasKitVariant!=="full",a=t;e.canvasKitVariant=="experimentalWebParagraph"?a=c(a,"experimental_webparagraph"):s&&(a=c(a,"chromium"));let o=c(a,"canvaskit.js");i.flutterTT.policy&&(o=i.flutterTT.policy.createScriptURL(o));let u=k(c(a,"canvaskit.wasm")),m=await import(o);return window.flutterCanvasKit=await m.default({instantiateWasm:u}),window.flutterCanvasKit})(),window.flutterCanvasKitLoaded);var P=async(i,e,r,t)=>{let s=!r.hasImageCodecs||!r.hasChromiumBreakIterators?"skwasm_heavy":"skwasm",a=c(t,`${s}.js`),o=a;i.flutterTT.policy&&(o=i.flutterTT.policy.createScriptURL(o));let u=k(c(t,`${s}.wasm`));return await(await import(o)).default({skwasmSingleThreaded:!r.crossOriginIsolated||e.forceSingleThreadedSkwasm,instantiateWasm:u,locateFile:(p,l)=>{if(p.endsWith(".ww.js")){let y=c(t,p);return URL.createObjectURL(new Blob([`
4
  "use strict";
5
 
6
  let eventListener;
 
28
  addEventListener("message", eventListener);
29
  };
30
  addEventListener("message", eventListener);
31
+ `],{type:"application/javascript"}))}return url},mainScriptUrlOrBlob:a})};var b=class{async loadEntrypoint(e){let{serviceWorker:r,...t}=e||{},n=new g,s=new h;s.setTrustedTypesPolicy(n.policy),await s.loadServiceWorker(r).catch(o=>{console.warn("Exception while loading service worker:",o)});let a=new v;return a.setTrustedTypesPolicy(n.policy),this.didCreateEngineInitializer=a.didCreateEngineInitializer.bind(a),a.loadEntrypoint(t)}async load({serviceWorkerSettings:e,onEntrypointLoaded:r,nonce:t,config:n}={}){n??={};let s=_flutter.buildConfig;if(!s)throw"FlutterLoader.load requires _flutter.buildConfig to be set";let a=n.wasmAllowList?.[w.browserEngine]??C[w.browserEngine],o=d=>{switch(d){case"skwasm":return w.supportsWasmGC&&a;default:return!0}},u=(d,S)=>d.renderer==S,m=d=>d.compileTarget==="dart2wasm"&&!w.supportsWasmGC||n.renderer&&!u(d,n.renderer)?!1:o(d.renderer),p=s.builds.find(m);if(!p)throw"FlutterLoader could not find a build compatible with configuration and environment.";let l={};l.flutterTT=new g,e&&(l.serviceWorkerLoader=new h,l.serviceWorkerLoader.setTrustedTypesPolicy(l.flutterTT.policy),await l.serviceWorkerLoader.loadServiceWorker(e).catch(d=>{console.warn("Exception while loading service worker:",d)}));let y=U(n,s);p.renderer==="canvaskit"?l.canvasKit=W(l,n,w,y):p.renderer==="skwasm"&&(l.skwasm=P(l,n,w,y));let f=new v;return f.setTrustedTypesPolicy(l.flutterTT.policy),this.didCreateEngineInitializer=f.didCreateEngineInitializer.bind(f),f.load(p,l,n,t,r)}};window._flutter||(window._flutter={});window._flutter.loader||(window._flutter.loader=new b);})();
32
  //# sourceMappingURL=flutter.js.map
33
 
34
  if (!window._flutter) {
35
  window._flutter = {};
36
  }
37
+ _flutter.buildConfig = {"engineRevision":"1c9c20e7c3dd48c66f400a24d48ea806b4ab312a","builds":[{"compileTarget":"dart2js","renderer":"canvaskit","mainJsPath":"main.dart.js"},{}]};
38
 
39
  _flutter.loader.load({
40
  serviceWorkerSettings: {
41
+ serviceWorkerVersion: "573687876"
42
  }
43
  });
build/web/flutter_service_worker.js CHANGED
@@ -3,14 +3,14 @@ const MANIFEST = 'flutter-app-manifest';
3
  const TEMP = 'flutter-temp-cache';
4
  const CACHE_NAME = 'flutter-app-cache';
5
 
6
- const RESOURCES = {"flutter_bootstrap.js": "4d796cc647be99d9fe8247a46a38c499",
7
  "version.json": "68350cac7987de2728345c72918dd067",
8
  "tikslop.png": "570e1db759046e2d224fef729983634e",
9
  "index.html": "3a7029b3672560e7938aab6fa4d30a46",
10
  "/": "3a7029b3672560e7938aab6fa4d30a46",
11
- "main.dart.js": "845632734923e772c5c0b347097b56fb",
12
  "tikslop.svg": "26140ba0d153b213b122bc6ebcc17f6c",
13
- "flutter.js": "2a09505589bbbd07ac54b434883c2f03",
14
  "favicon.png": "c8a183c516004e648a7bac7497c89b97",
15
  "icons/Icon-192.png": "9d17785814071b986002307441ec7a8f",
16
  "icons/Icon-maskable-192.png": "9d17785814071b986002307441ec7a8f",
@@ -18,7 +18,7 @@ const RESOURCES = {"flutter_bootstrap.js": "4d796cc647be99d9fe8247a46a38c499",
18
  "icons/Icon-512.png": "8682b581a7dab984ef4f9b7f21976a64",
19
  "manifest.json": "c0904388ddaba6a9bd572a80f79a8dcc",
20
  "assets/AssetManifest.json": "7c3f24a308a466794e1c04bd7b46567e",
21
- "assets/NOTICES": "2ecef5d78a3acc9d689e2e67ce1cee5b",
22
  "assets/FontManifest.json": "dc3d03800ccca4601324923c0b1d6d57",
23
  "assets/AssetManifest.bin.json": "b4f8d70a60cc7fe6916c636377e8d4bc",
24
  "assets/packages/cupertino_icons/assets/CupertinoIcons.ttf": "33b7d9392238c04c131b6ce224e13711",
@@ -32,18 +32,18 @@ const RESOURCES = {"flutter_bootstrap.js": "4d796cc647be99d9fe8247a46a38c499",
32
  "assets/assets/config/custom.yaml": "52bd30aa4d8b980626a5eb02d0871c01",
33
  "assets/assets/config/default.yaml": "9ca1d05d06721c2b6f6382a1ba40af48",
34
  "assets/assets/config/tikslop.yaml": "827c4e5a1b1de9d04f9e259ad321dfd0",
35
- "canvaskit/skwasm.js": "4087d5eaf9b62d309478803602d8e131",
36
- "canvaskit/skwasm_heavy.js": "dddba7cbf636e5e28af8de827a6e5b49",
37
- "canvaskit/skwasm.js.symbols": "ffc07b382ae1e2cf61303ec4391ea4ad",
38
- "canvaskit/canvaskit.js.symbols": "e3cc169dd15213381373db1f9ef39f3e",
39
- "canvaskit/skwasm_heavy.js.symbols": "b68a224b193a61133813a90fe58898a6",
40
- "canvaskit/skwasm.wasm": "11199b1ab0318df784d266b683cf5b5e",
41
- "canvaskit/chromium/canvaskit.js.symbols": "8fce22f4d72ad11f225a4999cd247660",
42
  "canvaskit/chromium/canvaskit.js": "5e27aae346eee469027c80af0751d53d",
43
- "canvaskit/chromium/canvaskit.wasm": "79d736074b25feb64730127812c13239",
44
  "canvaskit/canvaskit.js": "140ccb7d34d0a55065fbd422b843add6",
45
- "canvaskit/canvaskit.wasm": "5a48c3461a11f40f5cc2e152558af3e7",
46
- "canvaskit/skwasm_heavy.wasm": "126e7cd71ed5dc8161d5210ee14db260"};
47
  // The application shell files that are downloaded before a service worker can
48
  // start.
49
  const CORE = ["main.dart.js",
 
3
  const TEMP = 'flutter-temp-cache';
4
  const CACHE_NAME = 'flutter-app-cache';
5
 
6
+ const RESOURCES = {"flutter_bootstrap.js": "581857f4e7740fdd5901e95f9d2a7bc3",
7
  "version.json": "68350cac7987de2728345c72918dd067",
8
  "tikslop.png": "570e1db759046e2d224fef729983634e",
9
  "index.html": "3a7029b3672560e7938aab6fa4d30a46",
10
  "/": "3a7029b3672560e7938aab6fa4d30a46",
11
+ "main.dart.js": "d0545221a5e9d6dd47253d8149064a25",
12
  "tikslop.svg": "26140ba0d153b213b122bc6ebcc17f6c",
13
+ "flutter.js": "888483df48293866f9f41d3d9274a779",
14
  "favicon.png": "c8a183c516004e648a7bac7497c89b97",
15
  "icons/Icon-192.png": "9d17785814071b986002307441ec7a8f",
16
  "icons/Icon-maskable-192.png": "9d17785814071b986002307441ec7a8f",
 
18
  "icons/Icon-512.png": "8682b581a7dab984ef4f9b7f21976a64",
19
  "manifest.json": "c0904388ddaba6a9bd572a80f79a8dcc",
20
  "assets/AssetManifest.json": "7c3f24a308a466794e1c04bd7b46567e",
21
+ "assets/NOTICES": "90391d860ca53976ec1b643b3e6286b7",
22
  "assets/FontManifest.json": "dc3d03800ccca4601324923c0b1d6d57",
23
  "assets/AssetManifest.bin.json": "b4f8d70a60cc7fe6916c636377e8d4bc",
24
  "assets/packages/cupertino_icons/assets/CupertinoIcons.ttf": "33b7d9392238c04c131b6ce224e13711",
 
32
  "assets/assets/config/custom.yaml": "52bd30aa4d8b980626a5eb02d0871c01",
33
  "assets/assets/config/default.yaml": "9ca1d05d06721c2b6f6382a1ba40af48",
34
  "assets/assets/config/tikslop.yaml": "827c4e5a1b1de9d04f9e259ad321dfd0",
35
+ "canvaskit/skwasm.js": "1ef3ea3a0fec4569e5d531da25f34095",
36
+ "canvaskit/skwasm_heavy.js": "413f5b2b2d9345f37de148e2544f584f",
37
+ "canvaskit/skwasm.js.symbols": "0088242d10d7e7d6d2649d1fe1bda7c1",
38
+ "canvaskit/canvaskit.js.symbols": "58832fbed59e00d2190aa295c4d70360",
39
+ "canvaskit/skwasm_heavy.js.symbols": "3c01ec03b5de6d62c34e17014d1decd3",
40
+ "canvaskit/skwasm.wasm": "264db41426307cfc7fa44b95a7772109",
41
+ "canvaskit/chromium/canvaskit.js.symbols": "193deaca1a1424049326d4a91ad1d88d",
42
  "canvaskit/chromium/canvaskit.js": "5e27aae346eee469027c80af0751d53d",
43
+ "canvaskit/chromium/canvaskit.wasm": "24c77e750a7fa6d474198905249ff506",
44
  "canvaskit/canvaskit.js": "140ccb7d34d0a55065fbd422b843add6",
45
+ "canvaskit/canvaskit.wasm": "07b9f5853202304d3b0749d9306573cc",
46
+ "canvaskit/skwasm_heavy.wasm": "8034ad26ba2485dab2fd49bdd786837b"};
47
  // The application shell files that are downloaded before a service worker can
48
  // start.
49
  const CORE = ["main.dart.js",
build/web/index.html CHANGED
@@ -156,7 +156,7 @@
156
  </script>
157
 
158
  <!-- Add version parameter for cache busting -->
159
- <script src="flutter_bootstrap.js?v=1753207416" async></script>
160
 
161
  <!-- Add cache busting script -->
162
  <script>
 
156
  </script>
157
 
158
  <!-- Add version parameter for cache busting -->
159
+ <script src="flutter_bootstrap.js?v=1753208400" async></script>
160
 
161
  <!-- Add cache busting script -->
162
  <script>
build/web/main.dart.js CHANGED
The diff for this file is too large to render. See raw diff
 
docs/for-bots/huggingface/supported-hf-providers.html ADDED
@@ -0,0 +1 @@
 
 
1
+ <table data-svelte-h="svelte-1nf7cww"><thead><tr><th>Provider</th> <th align="center">Chat completion (LLM)</th> <th align="center">Chat completion (VLM)</th> <th align="center">Feature Extraction</th> <th align="center">Text to Image</th> <th align="center">Text to video</th> <th align="center">Speech to text</th></tr></thead> <tbody><tr><td><a href="./providers/cerebras">Cerebras</a></td> <td align="center">✅</td> <td align="center"></td> <td align="center"></td> <td align="center"></td> <td align="center"></td> <td align="center"></td></tr> <tr><td><a href="./providers/cohere">Cohere</a></td> <td align="center">✅</td> <td align="center">✅</td> <td align="center"></td> <td align="center"></td> <td align="center"></td> <td align="center"></td></tr> <tr><td><a href="./providers/fal-ai">Fal AI</a></td> <td align="center"></td> <td align="center"></td> <td align="center"></td> <td align="center">✅</td> <td align="center">✅</td> <td align="center">✅</td></tr> <tr><td><a href="./providers/featherless-ai">Featherless AI</a></td> <td align="center">✅</td> <td align="center">✅</td> <td align="center"></td> <td align="center"></td> <td align="center"></td> <td align="center"></td></tr> <tr><td><a href="./providers/fireworks-ai">Fireworks</a></td> <td align="center">✅</td> <td align="center">✅</td> <td align="center"></td> <td align="center"></td> <td align="center"></td> <td align="center"></td></tr> <tr><td><a href="./providers/groq">Groq</a></td> <td align="center">✅</td> <td align="center"></td> <td align="center"></td> <td align="center"></td> <td align="center"></td> <td align="center"></td></tr> <tr><td><a href="./providers/hf-inference">HF Inference</a></td> <td align="center">✅</td> <td align="center">✅</td> <td align="center">✅</td> <td align="center">✅</td> <td align="center"></td> <td align="center">✅</td></tr> <tr><td><a href="./providers/hyperbolic">Hyperbolic</a></td> <td align="center">✅</td> <td align="center">✅</td> <td align="center"></td> <td align="center"></td> <td align="center"></td> <td align="center"></td></tr> <tr><td><a href="./providers/nebius">Nebius</a></td> <td align="center">✅</td> <td align="center">✅</td> <td align="center">✅</td> <td align="center">✅</td> <td align="center"></td> <td align="center"></td></tr> <tr><td><a href="./providers/novita">Novita</a></td> <td align="center">✅</td> <td align="center">✅</td> <td align="center"></td> <td align="center"></td> <td align="center">✅</td> <td align="center"></td></tr> <tr><td><a href="./providers/nscale">Nscale</a></td> <td align="center">✅</td> <td align="center">✅</td> <td align="center"></td> <td align="center">✅</td> <td align="center"></td> <td align="center"></td></tr> <tr><td><a href="./providers/replicate">Replicate</a></td> <td align="center"></td> <td align="center"></td> <td align="center"></td> <td align="center">✅</td> <td align="center">✅</td> <td align="center">✅</td></tr> <tr><td><a href="./providers/sambanova">SambaNova</a></td> <td align="center">✅</td> <td align="center"></td> <td align="center">✅</td> <td align="center"></td> <td align="center"></td> <td align="center"></td></tr> <tr><td><a href="./providers/together">Together</a></td> <td align="center">✅</td> <td align="center">✅</td> <td align="center"></td> <td align="center">✅</td> <td align="center"></td> <td align="center"></td></tr></tbody></table>
lib/screens/settings_screen.dart CHANGED
@@ -154,7 +154,7 @@ class _SettingsScreenState extends State<SettingsScreen> {
154
  ? 'Enter HF API key to unlock providers'
155
  : 'Select your preferred LLM provider',
156
  ),
157
- value: _selectedLlmProvider,
158
  onChanged: _hfApiKeyController.text.isEmpty ? null : (String? newValue) {
159
  if (newValue != null) {
160
  // Prevent selecting non-builtin providers without HF API key
@@ -219,7 +219,7 @@ class _SettingsScreenState extends State<SettingsScreen> {
219
  ? 'Using default built-in model'
220
  : 'Select the model to use',
221
  ),
222
- value: _selectedLlmModel,
223
  onChanged: _hfApiKeyController.text.isEmpty ? null : (String? newValue) {
224
  if (newValue != null) {
225
  setState(() {
@@ -323,8 +323,8 @@ class _SettingsScreenState extends State<SettingsScreen> {
323
  },
324
  ),
325
  SwitchListTile(
326
- title: const Text('Enable simulation'),
327
- subtitle: const Text('Allow video descriptions to evolve over time'),
328
  value: _enableSimulation,
329
  onChanged: (value) {
330
  setState(() {
@@ -358,7 +358,7 @@ class _SettingsScreenState extends State<SettingsScreen> {
358
  decoration: const InputDecoration(
359
  labelText: 'Video Generation Model',
360
  ),
361
- value: 'ltx-video-2b-0.9.8',
362
  onChanged: null, // Disabled
363
  items: const [
364
  DropdownMenuItem(
 
154
  ? 'Enter HF API key to unlock providers'
155
  : 'Select your preferred LLM provider',
156
  ),
157
+ initialValue: _selectedLlmProvider,
158
  onChanged: _hfApiKeyController.text.isEmpty ? null : (String? newValue) {
159
  if (newValue != null) {
160
  // Prevent selecting non-builtin providers without HF API key
 
219
  ? 'Using default built-in model'
220
  : 'Select the model to use',
221
  ),
222
+ initialValue: _selectedLlmModel,
223
  onChanged: _hfApiKeyController.text.isEmpty ? null : (String? newValue) {
224
  if (newValue != null) {
225
  setState(() {
 
323
  },
324
  ),
325
  SwitchListTile(
326
+ title: const Text('Enable world simulator engine'),
327
+ subtitle: const Text('Allow video descriptions to evolve over time using a LLM (this consumes tokens, your Hugging Face account will be billed)'),
328
  value: _enableSimulation,
329
  onChanged: (value) {
330
  setState(() {
 
358
  decoration: const InputDecoration(
359
  labelText: 'Video Generation Model',
360
  ),
361
+ initialValue: 'ltx-video-2b-0.9.8',
362
  onChanged: null, // Disabled
363
  items: const [
364
  DropdownMenuItem(
lib/services/websocket_api_service.dart CHANGED
@@ -12,7 +12,6 @@ import 'package:tikslop/models/chat_message.dart';
12
  import 'package:flutter/foundation.dart';
13
  import 'package:uuid/uuid.dart';
14
  import 'package:web_socket_channel/web_socket_channel.dart';
15
- import 'package:http/http.dart' as http;
16
  import '../models/search_state.dart';
17
  import '../models/video_result.dart';
18
  import '../models/video_orientation.dart';
 
12
  import 'package:flutter/foundation.dart';
13
  import 'package:uuid/uuid.dart';
14
  import 'package:web_socket_channel/web_socket_channel.dart';
 
15
  import '../models/search_state.dart';
16
  import '../models/video_result.dart';
17
  import '../models/video_orientation.dart';
macos/Flutter/GeneratedPluginRegistrant.swift CHANGED
@@ -18,5 +18,5 @@ func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) {
18
  SharedPreferencesPlugin.register(with: registry.registrar(forPlugin: "SharedPreferencesPlugin"))
19
  UrlLauncherPlugin.register(with: registry.registrar(forPlugin: "UrlLauncherPlugin"))
20
  FVPVideoPlayerPlugin.register(with: registry.registrar(forPlugin: "FVPVideoPlayerPlugin"))
21
- FLTWebViewFlutterPlugin.register(with: registry.registrar(forPlugin: "FLTWebViewFlutterPlugin"))
22
  }
 
18
  SharedPreferencesPlugin.register(with: registry.registrar(forPlugin: "SharedPreferencesPlugin"))
19
  UrlLauncherPlugin.register(with: registry.registrar(forPlugin: "UrlLauncherPlugin"))
20
  FVPVideoPlayerPlugin.register(with: registry.registrar(forPlugin: "FVPVideoPlayerPlugin"))
21
+ WebViewFlutterPlugin.register(with: registry.registrar(forPlugin: "WebViewFlutterPlugin"))
22
  }
pubspec.lock CHANGED
@@ -85,10 +85,10 @@ packages:
85
  dependency: transitive
86
  description:
87
  name: ffi
88
- sha256: "16ed7b077ef01ad6170a3d0c57caa4a112a38d7a2ed5602e0aca9ca6f3d98da6"
89
  url: "https://pub.dev"
90
  source: hosted
91
- version: "2.1.3"
92
  file:
93
  dependency: transitive
94
  description:
@@ -122,26 +122,26 @@ packages:
122
  dependency: "direct main"
123
  description:
124
  name: flutter_secure_storage
125
- sha256: "165164745e6afb5c0e3e3fcc72a012fb9e58496fb26ffb92cf22e16a821e85d0"
126
  url: "https://pub.dev"
127
  source: hosted
128
- version: "9.2.2"
129
  flutter_secure_storage_linux:
130
  dependency: transitive
131
  description:
132
  name: flutter_secure_storage_linux
133
- sha256: "4d91bfc23047422cbcd73ac684bc169859ee766482517c22172c86596bf1464b"
134
  url: "https://pub.dev"
135
  source: hosted
136
- version: "1.2.1"
137
  flutter_secure_storage_macos:
138
  dependency: transitive
139
  description:
140
  name: flutter_secure_storage_macos
141
- sha256: "1693ab11121a5f925bbea0be725abfcfbbcf36c1e29e571f84a0c0f436147a81"
142
  url: "https://pub.dev"
143
  source: hosted
144
- version: "3.1.2"
145
  flutter_secure_storage_platform_interface:
146
  dependency: transitive
147
  description:
@@ -196,18 +196,18 @@ packages:
196
  dependency: transitive
197
  description:
198
  name: html
199
- sha256: "1fc58edeaec4307368c60d59b7e15b9d658b57d7f3125098b6294153c75337ec"
200
  url: "https://pub.dev"
201
  source: hosted
202
- version: "0.15.5"
203
  http:
204
  dependency: "direct main"
205
  description:
206
  name: http
207
- sha256: b9c29a161230ee03d3ccf545097fccd9b87a5264228c5d348202e0f0c28f9010
208
  url: "https://pub.dev"
209
  source: hosted
210
- version: "1.2.2"
211
  http_parser:
212
  dependency: transitive
213
  description:
@@ -228,10 +228,10 @@ packages:
228
  dependency: "direct main"
229
  description:
230
  name: idb_shim
231
- sha256: "9e7ec816139bfafb69ae4b3668ad29dbd43c53428d6eb31f9332d42bd4fa7205"
232
  url: "https://pub.dev"
233
  source: hosted
234
- version: "2.6.1+7"
235
  intl:
236
  dependency: transitive
237
  description:
@@ -324,18 +324,18 @@ packages:
324
  dependency: transitive
325
  description:
326
  name: path_provider_android
327
- sha256: "8c4967f8b7cb46dc914e178daa29813d83ae502e0529d7b0478330616a691ef7"
328
  url: "https://pub.dev"
329
  source: hosted
330
- version: "2.2.14"
331
  path_provider_foundation:
332
  dependency: transitive
333
  description:
334
  name: path_provider_foundation
335
- sha256: f234384a3fdd67f989b4d54a5d73ca2a6c422fa55ae694381ae0f4375cd1ea16
336
  url: "https://pub.dev"
337
  source: hosted
338
- version: "2.4.0"
339
  path_provider_linux:
340
  dependency: transitive
341
  description:
@@ -380,34 +380,34 @@ packages:
380
  dependency: transitive
381
  description:
382
  name: sembast
383
- sha256: "61f893e50fe2fa7d14529d275d45ac31871d7ad2ae3a745f9aa3afc0b447d75b"
384
  url: "https://pub.dev"
385
  source: hosted
386
- version: "3.7.5+2"
387
  shared_preferences:
388
  dependency: "direct main"
389
  description:
390
  name: shared_preferences
391
- sha256: "95f9997ca1fb9799d494d0cb2a780fd7be075818d59f00c43832ed112b158a82"
392
  url: "https://pub.dev"
393
  source: hosted
394
- version: "2.3.3"
395
  shared_preferences_android:
396
  dependency: transitive
397
  description:
398
  name: shared_preferences_android
399
- sha256: "3b9febd815c9ca29c9e3520d50ec32f49157711e143b7a4ca039eb87e8ade5ab"
400
  url: "https://pub.dev"
401
  source: hosted
402
- version: "2.3.3"
403
  shared_preferences_foundation:
404
  dependency: transitive
405
  description:
406
  name: shared_preferences_foundation
407
- sha256: "07e050c7cd39bad516f8d64c455f04508d09df104be326d8c02551590a0d513d"
408
  url: "https://pub.dev"
409
  source: hosted
410
- version: "2.5.3"
411
  shared_preferences_linux:
412
  dependency: transitive
413
  description:
@@ -428,10 +428,10 @@ packages:
428
  dependency: transitive
429
  description:
430
  name: shared_preferences_web
431
- sha256: d2ca4132d3946fec2184261726b355836a82c33d7d5b67af32692aff18a4684e
432
  url: "https://pub.dev"
433
  source: hosted
434
- version: "2.4.2"
435
  shared_preferences_windows:
436
  dependency: transitive
437
  description:
@@ -489,10 +489,10 @@ packages:
489
  dependency: "direct main"
490
  description:
491
  name: synchronized
492
- sha256: "69fe30f3a8b04a0be0c15ae6490fc859a78ef4c43ae2dd5e8a623d45bfcf9225"
493
  url: "https://pub.dev"
494
  source: hosted
495
- version: "3.3.0+3"
496
  term_glyph:
497
  dependency: transitive
498
  description:
@@ -505,10 +505,10 @@ packages:
505
  dependency: transitive
506
  description:
507
  name: test_api
508
- sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd
509
  url: "https://pub.dev"
510
  source: hosted
511
- version: "0.7.4"
512
  typed_data:
513
  dependency: transitive
514
  description:
@@ -537,26 +537,26 @@ packages:
537
  dependency: "direct main"
538
  description:
539
  name: url_launcher
540
- sha256: "9d06212b1362abc2f0f0d78e6f09f726608c74e3b9462e8368bb03314aa8d603"
541
  url: "https://pub.dev"
542
  source: hosted
543
- version: "6.3.1"
544
  url_launcher_android:
545
  dependency: transitive
546
  description:
547
  name: url_launcher_android
548
- sha256: "6fc2f56536ee873eeb867ad176ae15f304ccccc357848b351f6f0d8d4a40d193"
549
  url: "https://pub.dev"
550
  source: hosted
551
- version: "6.3.14"
552
  url_launcher_ios:
553
  dependency: transitive
554
  description:
555
  name: url_launcher_ios
556
- sha256: e43b677296fadce447e987a2f519dcf5f6d1e527dc35d01ffab4fff5b8a7063e
557
  url: "https://pub.dev"
558
  source: hosted
559
- version: "6.3.1"
560
  url_launcher_linux:
561
  dependency: transitive
562
  description:
@@ -569,10 +569,10 @@ packages:
569
  dependency: transitive
570
  description:
571
  name: url_launcher_macos
572
- sha256: "769549c999acdb42b8bcfa7c43d72bf79a382ca7441ab18a808e101149daf672"
573
  url: "https://pub.dev"
574
  source: hosted
575
- version: "3.2.1"
576
  url_launcher_platform_interface:
577
  dependency: transitive
578
  description:
@@ -585,18 +585,18 @@ packages:
585
  dependency: transitive
586
  description:
587
  name: url_launcher_web
588
- sha256: "772638d3b34c779ede05ba3d38af34657a05ac55b06279ea6edd409e323dca8e"
589
  url: "https://pub.dev"
590
  source: hosted
591
- version: "2.3.3"
592
  url_launcher_windows:
593
  dependency: transitive
594
  description:
595
  name: url_launcher_windows
596
- sha256: "44cf3aabcedde30f2dba119a9dea3b0f2672fbe6fa96e85536251d678216b3c4"
597
  url: "https://pub.dev"
598
  source: hosted
599
- version: "3.1.3"
600
  uuid:
601
  dependency: "direct main"
602
  description:
@@ -609,122 +609,122 @@ packages:
609
  dependency: transitive
610
  description:
611
  name: vector_math
612
- sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803"
613
  url: "https://pub.dev"
614
  source: hosted
615
- version: "2.1.4"
616
  video_player:
617
  dependency: "direct main"
618
  description:
619
  name: video_player
620
- sha256: "4a8c3492d734f7c39c2588a3206707a05ee80cef52e8c7f3b2078d430c84bc17"
621
  url: "https://pub.dev"
622
  source: hosted
623
- version: "2.9.2"
624
  video_player_android:
625
  dependency: transitive
626
  description:
627
  name: video_player_android
628
- sha256: "391e092ba4abe2f93b3e625bd6b6a6ec7d7414279462c1c0ee42b5ab8d0a0898"
629
  url: "https://pub.dev"
630
  source: hosted
631
- version: "2.7.16"
632
  video_player_avfoundation:
633
  dependency: transitive
634
  description:
635
  name: video_player_avfoundation
636
- sha256: "0b146e5d82e886ff43e5a46c6bcbe390761b802864a6e2503eb612d69a405dfa"
637
  url: "https://pub.dev"
638
  source: hosted
639
- version: "2.6.3"
640
  video_player_platform_interface:
641
  dependency: transitive
642
  description:
643
  name: video_player_platform_interface
644
- sha256: "229d7642ccd9f3dc4aba169609dd6b5f3f443bb4cc15b82f7785fcada5af9bbb"
645
  url: "https://pub.dev"
646
  source: hosted
647
- version: "6.2.3"
648
  video_player_web:
649
  dependency: transitive
650
  description:
651
  name: video_player_web
652
- sha256: "881b375a934d8ebf868c7fb1423b2bfaa393a0a265fa3f733079a86536064a10"
653
  url: "https://pub.dev"
654
  source: hosted
655
- version: "2.3.3"
656
  vm_service:
657
  dependency: transitive
658
  description:
659
  name: vm_service
660
- sha256: ddfa8d30d89985b96407efce8acbdd124701f96741f2d981ca860662f1c0dc02
661
  url: "https://pub.dev"
662
  source: hosted
663
- version: "15.0.0"
664
  web:
665
  dependency: transitive
666
  description:
667
  name: web
668
- sha256: cd3543bd5798f6ad290ea73d210f423502e71900302dde696f8bff84bf89a1cb
669
  url: "https://pub.dev"
670
  source: hosted
671
- version: "1.1.0"
672
  web_socket:
673
  dependency: transitive
674
  description:
675
  name: web_socket
676
- sha256: "3c12d96c0c9a4eec095246debcea7b86c0324f22df69893d538fcc6f1b8cce83"
677
  url: "https://pub.dev"
678
  source: hosted
679
- version: "0.1.6"
680
  web_socket_channel:
681
  dependency: "direct main"
682
  description:
683
  name: web_socket_channel
684
- sha256: "9f187088ed104edd8662ca07af4b124465893caf063ba29758f97af57e61da8f"
685
  url: "https://pub.dev"
686
  source: hosted
687
- version: "3.0.1"
688
  webview_flutter:
689
  dependency: "direct main"
690
  description:
691
  name: webview_flutter
692
- sha256: "889a0a678e7c793c308c68739996227c9661590605e70b1f6cf6b9a6634f7aec"
693
  url: "https://pub.dev"
694
  source: hosted
695
- version: "4.10.0"
696
  webview_flutter_android:
697
  dependency: transitive
698
  description:
699
  name: webview_flutter_android
700
- sha256: "285cedfd9441267f6cca8843458620b5fda1af75b04f5818d0441acda5d7df19"
701
  url: "https://pub.dev"
702
  source: hosted
703
- version: "4.1.0"
704
  webview_flutter_platform_interface:
705
  dependency: transitive
706
  description:
707
  name: webview_flutter_platform_interface
708
- sha256: d937581d6e558908d7ae3dc1989c4f87b786891ab47bb9df7de548a151779d8d
709
  url: "https://pub.dev"
710
  source: hosted
711
- version: "2.10.0"
712
  webview_flutter_wkwebview:
713
  dependency: transitive
714
  description:
715
  name: webview_flutter_wkwebview
716
- sha256: b7e92f129482460951d96ef9a46b49db34bd2e1621685de26e9eaafd9674e7eb
717
  url: "https://pub.dev"
718
  source: hosted
719
- version: "3.16.3"
720
  win32:
721
  dependency: transitive
722
  description:
723
  name: win32
724
- sha256: "84ba388638ed7a8cb3445a320c8273136ab2631cd5f2c57888335504ddab1bc2"
725
  url: "https://pub.dev"
726
  source: hosted
727
- version: "5.8.0"
728
  xdg_directories:
729
  dependency: transitive
730
  description:
@@ -737,10 +737,10 @@ packages:
737
  dependency: "direct main"
738
  description:
739
  name: yaml
740
- sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5"
741
  url: "https://pub.dev"
742
  source: hosted
743
- version: "3.1.2"
744
  sdks:
745
- dart: ">=3.7.0-0 <4.0.0"
746
- flutter: ">=3.24.0"
 
85
  dependency: transitive
86
  description:
87
  name: ffi
88
+ sha256: "289279317b4b16eb2bb7e271abccd4bf84ec9bdcbe999e278a94b804f5630418"
89
  url: "https://pub.dev"
90
  source: hosted
91
+ version: "2.1.4"
92
  file:
93
  dependency: transitive
94
  description:
 
122
  dependency: "direct main"
123
  description:
124
  name: flutter_secure_storage
125
+ sha256: "9cad52d75ebc511adfae3d447d5d13da15a55a92c9410e50f67335b6d21d16ea"
126
  url: "https://pub.dev"
127
  source: hosted
128
+ version: "9.2.4"
129
  flutter_secure_storage_linux:
130
  dependency: transitive
131
  description:
132
  name: flutter_secure_storage_linux
133
+ sha256: be76c1d24a97d0b98f8b54bce6b481a380a6590df992d0098f868ad54dc8f688
134
  url: "https://pub.dev"
135
  source: hosted
136
+ version: "1.2.3"
137
  flutter_secure_storage_macos:
138
  dependency: transitive
139
  description:
140
  name: flutter_secure_storage_macos
141
+ sha256: "6c0a2795a2d1de26ae202a0d78527d163f4acbb11cde4c75c670f3a0fc064247"
142
  url: "https://pub.dev"
143
  source: hosted
144
+ version: "3.1.3"
145
  flutter_secure_storage_platform_interface:
146
  dependency: transitive
147
  description:
 
196
  dependency: transitive
197
  description:
198
  name: html
199
+ sha256: "6d1264f2dffa1b1101c25a91dff0dc2daee4c18e87cd8538729773c073dbf602"
200
  url: "https://pub.dev"
201
  source: hosted
202
+ version: "0.15.6"
203
  http:
204
  dependency: "direct main"
205
  description:
206
  name: http
207
+ sha256: "2c11f3f94c687ee9bad77c171151672986360b2b001d109814ee7140b2cf261b"
208
  url: "https://pub.dev"
209
  source: hosted
210
+ version: "1.4.0"
211
  http_parser:
212
  dependency: transitive
213
  description:
 
228
  dependency: "direct main"
229
  description:
230
  name: idb_shim
231
+ sha256: ee391deb010143823d25db15f8b002945e19dcb5f2dd5b696a98cb6db7644012
232
  url: "https://pub.dev"
233
  source: hosted
234
+ version: "2.6.7"
235
  intl:
236
  dependency: transitive
237
  description:
 
324
  dependency: transitive
325
  description:
326
  name: path_provider_android
327
+ sha256: d0d310befe2c8ab9e7f393288ccbb11b60c019c6b5afc21973eeee4dda2b35e9
328
  url: "https://pub.dev"
329
  source: hosted
330
+ version: "2.2.17"
331
  path_provider_foundation:
332
  dependency: transitive
333
  description:
334
  name: path_provider_foundation
335
+ sha256: "4843174df4d288f5e29185bd6e72a6fbdf5a4a4602717eed565497429f179942"
336
  url: "https://pub.dev"
337
  source: hosted
338
+ version: "2.4.1"
339
  path_provider_linux:
340
  dependency: transitive
341
  description:
 
380
  dependency: transitive
381
  description:
382
  name: sembast
383
+ sha256: "7119cf6f79bd1d48c8ec7943f4facd96c15ab26823021ed0792a487c7cd34441"
384
  url: "https://pub.dev"
385
  source: hosted
386
+ version: "3.8.5+1"
387
  shared_preferences:
388
  dependency: "direct main"
389
  description:
390
  name: shared_preferences
391
+ sha256: "6e8bf70b7fef813df4e9a36f658ac46d107db4b4cfe1048b477d4e453a8159f5"
392
  url: "https://pub.dev"
393
  source: hosted
394
+ version: "2.5.3"
395
  shared_preferences_android:
396
  dependency: transitive
397
  description:
398
  name: shared_preferences_android
399
+ sha256: "20cbd561f743a342c76c151d6ddb93a9ce6005751e7aa458baad3858bfbfb6ac"
400
  url: "https://pub.dev"
401
  source: hosted
402
+ version: "2.4.10"
403
  shared_preferences_foundation:
404
  dependency: transitive
405
  description:
406
  name: shared_preferences_foundation
407
+ sha256: "6a52cfcdaeac77cad8c97b539ff688ccfc458c007b4db12be584fbe5c0e49e03"
408
  url: "https://pub.dev"
409
  source: hosted
410
+ version: "2.5.4"
411
  shared_preferences_linux:
412
  dependency: transitive
413
  description:
 
428
  dependency: transitive
429
  description:
430
  name: shared_preferences_web
431
+ sha256: c49bd060261c9a3f0ff445892695d6212ff603ef3115edbb448509d407600019
432
  url: "https://pub.dev"
433
  source: hosted
434
+ version: "2.4.3"
435
  shared_preferences_windows:
436
  dependency: transitive
437
  description:
 
489
  dependency: "direct main"
490
  description:
491
  name: synchronized
492
+ sha256: c254ade258ec8282947a0acbbc90b9575b4f19673533ee46f2f6e9b3aeefd7c0
493
  url: "https://pub.dev"
494
  source: hosted
495
+ version: "3.4.0"
496
  term_glyph:
497
  dependency: transitive
498
  description:
 
505
  dependency: transitive
506
  description:
507
  name: test_api
508
+ sha256: "522f00f556e73044315fa4585ec3270f1808a4b186c936e612cab0b565ff1e00"
509
  url: "https://pub.dev"
510
  source: hosted
511
+ version: "0.7.6"
512
  typed_data:
513
  dependency: transitive
514
  description:
 
537
  dependency: "direct main"
538
  description:
539
  name: url_launcher
540
+ sha256: f6a7e5c4835bb4e3026a04793a4199ca2d14c739ec378fdfe23fc8075d0439f8
541
  url: "https://pub.dev"
542
  source: hosted
543
+ version: "6.3.2"
544
  url_launcher_android:
545
  dependency: transitive
546
  description:
547
  name: url_launcher_android
548
+ sha256: "8582d7f6fe14d2652b4c45c9b6c14c0b678c2af2d083a11b604caeba51930d79"
549
  url: "https://pub.dev"
550
  source: hosted
551
+ version: "6.3.16"
552
  url_launcher_ios:
553
  dependency: transitive
554
  description:
555
  name: url_launcher_ios
556
+ sha256: "7f2022359d4c099eea7df3fdf739f7d3d3b9faf3166fb1dd390775176e0b76cb"
557
  url: "https://pub.dev"
558
  source: hosted
559
+ version: "6.3.3"
560
  url_launcher_linux:
561
  dependency: transitive
562
  description:
 
569
  dependency: transitive
570
  description:
571
  name: url_launcher_macos
572
+ sha256: "17ba2000b847f334f16626a574c702b196723af2a289e7a93ffcb79acff855c2"
573
  url: "https://pub.dev"
574
  source: hosted
575
+ version: "3.2.2"
576
  url_launcher_platform_interface:
577
  dependency: transitive
578
  description:
 
585
  dependency: transitive
586
  description:
587
  name: url_launcher_web
588
+ sha256: "4bd2b7b4dc4d4d0b94e5babfffbca8eac1a126c7f3d6ecbc1a11013faa3abba2"
589
  url: "https://pub.dev"
590
  source: hosted
591
+ version: "2.4.1"
592
  url_launcher_windows:
593
  dependency: transitive
594
  description:
595
  name: url_launcher_windows
596
+ sha256: "3284b6d2ac454cf34f114e1d3319866fdd1e19cdc329999057e44ffe936cfa77"
597
  url: "https://pub.dev"
598
  source: hosted
599
+ version: "3.1.4"
600
  uuid:
601
  dependency: "direct main"
602
  description:
 
609
  dependency: transitive
610
  description:
611
  name: vector_math
612
+ sha256: d530bd74fea330e6e364cda7a85019c434070188383e1cd8d9777ee586914c5b
613
  url: "https://pub.dev"
614
  source: hosted
615
+ version: "2.2.0"
616
  video_player:
617
  dependency: "direct main"
618
  description:
619
  name: video_player
620
+ sha256: "0d55b1f1a31e5ad4c4967bfaa8ade0240b07d20ee4af1dfef5f531056512961a"
621
  url: "https://pub.dev"
622
  source: hosted
623
+ version: "2.10.0"
624
  video_player_android:
625
  dependency: transitive
626
  description:
627
  name: video_player_android
628
+ sha256: "4a5135754a62dbc827a64a42ef1f8ed72c962e191c97e2d48744225c2b9ebb73"
629
  url: "https://pub.dev"
630
  source: hosted
631
+ version: "2.8.7"
632
  video_player_avfoundation:
633
  dependency: transitive
634
  description:
635
  name: video_player_avfoundation
636
+ sha256: "9fedd55023249f3a02738c195c906b4e530956191febf0838e37d0dac912f953"
637
  url: "https://pub.dev"
638
  source: hosted
639
+ version: "2.8.0"
640
  video_player_platform_interface:
641
  dependency: transitive
642
  description:
643
  name: video_player_platform_interface
644
+ sha256: cf2a1d29a284db648fd66cbd18aacc157f9862d77d2cc790f6f9678a46c1db5a
645
  url: "https://pub.dev"
646
  source: hosted
647
+ version: "6.4.0"
648
  video_player_web:
649
  dependency: transitive
650
  description:
651
  name: video_player_web
652
+ sha256: "9f3c00be2ef9b76a95d94ac5119fb843dca6f2c69e6c9968f6f2b6c9e7afbdeb"
653
  url: "https://pub.dev"
654
  source: hosted
655
+ version: "2.4.0"
656
  vm_service:
657
  dependency: transitive
658
  description:
659
  name: vm_service
660
+ sha256: "45caa6c5917fa127b5dbcfbd1fa60b14e583afdc08bfc96dda38886ca252eb60"
661
  url: "https://pub.dev"
662
  source: hosted
663
+ version: "15.0.2"
664
  web:
665
  dependency: transitive
666
  description:
667
  name: web
668
+ sha256: "868d88a33d8a87b18ffc05f9f030ba328ffefba92d6c127917a2ba740f9cfe4a"
669
  url: "https://pub.dev"
670
  source: hosted
671
+ version: "1.1.1"
672
  web_socket:
673
  dependency: transitive
674
  description:
675
  name: web_socket
676
+ sha256: "34d64019aa8e36bf9842ac014bb5d2f5586ca73df5e4d9bf5c936975cae6982c"
677
  url: "https://pub.dev"
678
  source: hosted
679
+ version: "1.0.1"
680
  web_socket_channel:
681
  dependency: "direct main"
682
  description:
683
  name: web_socket_channel
684
+ sha256: d645757fb0f4773d602444000a8131ff5d48c9e47adfe9772652dd1a4f2d45c8
685
  url: "https://pub.dev"
686
  source: hosted
687
+ version: "3.0.3"
688
  webview_flutter:
689
  dependency: "direct main"
690
  description:
691
  name: webview_flutter
692
+ sha256: c3e4fe614b1c814950ad07186007eff2f2e5dd2935eba7b9a9a1af8e5885f1ba
693
  url: "https://pub.dev"
694
  source: hosted
695
+ version: "4.13.0"
696
  webview_flutter_android:
697
  dependency: transitive
698
  description:
699
  name: webview_flutter_android
700
+ sha256: "9573ad97890d199ac3ab32399aa33a5412163b37feb573eb5b0a76b35e9ffe41"
701
  url: "https://pub.dev"
702
  source: hosted
703
+ version: "4.8.2"
704
  webview_flutter_platform_interface:
705
  dependency: transitive
706
  description:
707
  name: webview_flutter_platform_interface
708
+ sha256: f0dc2dc3a2b1e3a6abdd6801b9355ebfeb3b8f6cde6b9dc7c9235909c4a1f147
709
  url: "https://pub.dev"
710
  source: hosted
711
+ version: "2.13.1"
712
  webview_flutter_wkwebview:
713
  dependency: transitive
714
  description:
715
  name: webview_flutter_wkwebview
716
+ sha256: "71523b9048cf510cfa1fd4e0a3fa5e476a66e0884d5df51d59d5023dba237107"
717
  url: "https://pub.dev"
718
  source: hosted
719
+ version: "3.22.1"
720
  win32:
721
  dependency: transitive
722
  description:
723
  name: win32
724
+ sha256: "66814138c3562338d05613a6e368ed8cfb237ad6d64a9e9334be3f309acfca03"
725
  url: "https://pub.dev"
726
  source: hosted
727
+ version: "5.14.0"
728
  xdg_directories:
729
  dependency: transitive
730
  description:
 
737
  dependency: "direct main"
738
  description:
739
  name: yaml
740
+ sha256: b9da305ac7c39faa3f030eccd175340f968459dae4af175130b3fc47e40d76ce
741
  url: "https://pub.dev"
742
  source: hosted
743
+ version: "3.1.3"
744
  sdks:
745
+ dart: ">=3.8.0 <4.0.0"
746
+ flutter: ">=3.29.0"