From 00cc86f9fea10444cf6c82556c9eec70173f44dc Mon Sep 17 00:00:00 2001 From: Willy <11148913+willyfromtheblock@users.noreply.github.com> Date: Wed, 7 Dec 2022 11:07:17 +0100 Subject: [PATCH] 1.1.1 (#208) * version bump and 2do * hint that enabling background notification can improve performance * address book: add visibility toggle for sending addresses * refactor * changelog * enable native FlutterCryptography * cache getGenericBox * move hive operations into EncryptedBox * 2dos * sent tab navigator: add jump to end and jump to front * changelog * intercept ege case where last recipient can not pay for fees because fees are too large (e.g. fee 0.42, last recipient 0.01) * add unit tests * rm unused import --- CHANGELOG.md | 4 + assets/translations/en.json | 2 + lib/exceptions/exceptions.dart | 4 + lib/main.dart | 4 + lib/providers/active_wallets.dart | 16 +- lib/providers/encrypted_box.dart | 18 +- lib/providers/servers.dart | 5 +- lib/screens/wallet/wallet_import_scan.dart | 22 +- lib/widgets/wallet/addresses_tab.dart | 139 +-- lib/widgets/wallet/send_tab.dart | 87 +- lib/widgets/wallet/send_tab_navigator.dart | 44 +- pubspec.lock | 14 + pubspec.yaml | 3 +- test/csvs/test_1000.csv | 1000 ++++++++++++++++++++ test/csvs/test_500.csv | 500 ++++++++++ test/transaction_building_test.dart | 281 ++++-- 16 files changed, 1950 insertions(+), 193 deletions(-) create mode 100644 lib/exceptions/exceptions.dart create mode 100644 test/csvs/test_1000.csv create mode 100644 test/csvs/test_500.csv diff --git a/CHANGELOG.md b/CHANGELOG.md index 3aee8183..6379f93c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +### **1.1.1** (2022-12-06) +* Address book: allow hiding of sending addresses +* Send tab: allow fast forwarding or rewiding to addresses + ### **1.1.0** (2022-12-03) * More CSV import fixes diff --git a/assets/translations/en.json b/assets/translations/en.json index e8ee4566..a57c9294 100644 --- a/assets/translations/en.json +++ b/assets/translations/en.json @@ -212,6 +212,7 @@ "send_enter_address": "Please enter an address", "send_enter_amount": "Please enter an amount", "send_errors_solve": "Please resolve errors …", + "send_errors_cant_pay_fees": "Can not pay for fees. $feesMissing $letter_code are presently missing. Consider removing addresses or reducing their transaction amount.", "send_import_csv": "Import from CSV", "send_fee": "Fee: -$amount $letter_code", "send_invalid_address": "Invalid address", @@ -305,6 +306,7 @@ "wallet_send_label_hint_metadata": "Metadata is unencrypted and will be publicly visible on the blockchain.", "wallet_scan_appBar_title": "Scanning your imported seed", "wallet_scan_notice": "This might take a while. Don't close this screen!", + "wallet_scan_notice_bg_notifications": "Enabling background notifications in App Settings can severely improve scanning reliability.", "wallet_send": "Send", "wallet_transactions": "Transactions", "wallets_list": "Your wallets", diff --git a/lib/exceptions/exceptions.dart b/lib/exceptions/exceptions.dart new file mode 100644 index 00000000..5c8ab03b --- /dev/null +++ b/lib/exceptions/exceptions.dart @@ -0,0 +1,4 @@ +class CantPayForFeesException implements Exception { + int feesMissing; + CantPayForFeesException(this.feesMissing); +} diff --git a/lib/main.dart b/lib/main.dart index c689c17d..32ff860f 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,3 +1,4 @@ +import 'package:cryptography_flutter/cryptography_flutter.dart'; import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter_localizations/flutter_localizations.dart'; @@ -123,6 +124,9 @@ void main() async { } if (!kIsWeb) { + // Enable Flutter cryptography + FlutterCryptography.enable(); + //init logger await FlutterLogs.initLogs( logLevelsEnabled: [ diff --git a/lib/providers/active_wallets.dart b/lib/providers/active_wallets.dart index 32e6286a..2c2abcd2 100644 --- a/lib/providers/active_wallets.dart +++ b/lib/providers/active_wallets.dart @@ -16,6 +16,7 @@ import 'package:coinslib/src/utils/constants/op.dart'; import 'package:hex/hex.dart'; import 'package:peercoin/models/buildresult.dart'; +import '../exceptions/exceptions.dart'; import '../models/available_coins.dart'; import '../models/coin_wallet.dart'; import '../tools/app_localizations.dart'; @@ -31,11 +32,10 @@ class ActiveWallets with ChangeNotifier { ActiveWallets(this._encryptedBox); late String _seedPhrase; String _unusedAddress = ''; - late Box _walletBox; + late Box _walletBox; Box? _vaultBox; final Map _wifs = {}; - // ignore: prefer_final_fields - Map _specificWalletCache = {}; + final Map _specificWalletCache = {}; final Map _hdWalletCache = {}; Future init() async { @@ -80,7 +80,7 @@ class ActiveWallets with ChangeNotifier { } List get activeWalletsValues { - return _walletBox.values.toList() as List; + return _walletBox.values.toList(); } List get activeWalletsKeys { @@ -96,8 +96,7 @@ class ActiveWallets with ChangeNotifier { } Future addWallet(String name, String title, String letterCode) async { - var box = await Hive.openBox('wallets', - encryptionCipher: HiveAesCipher(await _encryptedBox.key as List)); + var box = await _encryptedBox.getWalletBox(); await box.put(name, CoinWallet(name, title, letterCode)); notifyListeners(); } @@ -716,6 +715,11 @@ class ActiveWallets with ChangeNotifier { 'no change needed, tx amount $txAmount, fee $fee, reduced output added for ${recipients.keys.last} ${txAmount - fee}', ); recipients.update(recipients.keys.last, (value) => value - fee); + if (recipients.values.last < coin.minimumTxValue) { + throw CantPayForFeesException( + recipients.values.last * -1, + ); + } txAmount = parseTxOutputValue(recipients); feesHaveBeenDeductedFromRecipient = true; } diff --git a/lib/providers/encrypted_box.dart b/lib/providers/encrypted_box.dart index ad6945b8..34e6ad96 100644 --- a/lib/providers/encrypted_box.dart +++ b/lib/providers/encrypted_box.dart @@ -7,6 +7,7 @@ import 'package:hive/hive.dart'; import 'package:flutter_secure_storage/flutter_secure_storage.dart'; import '../models/coin_wallet.dart'; +import '../models/server.dart'; class EncryptedBox with ChangeNotifier { final Map _cryptoBox = {}; @@ -77,14 +78,23 @@ class EncryptedBox with ChangeNotifier { } Future getGenericBox(String name) async { - _cryptoBox[name] = await Hive.openBox( - name, + if (!_cryptoBox.containsKey(name)) { + _cryptoBox[name] = await Hive.openBox( + name, + encryptionCipher: HiveAesCipher(await key as Uint8List), + ); + } + return _cryptoBox[name]; + } + + Future> getServerBox(String identifier) async { + return await Hive.openBox( + 'serverBox-$identifier', encryptionCipher: HiveAesCipher(await key as Uint8List), ); - return _cryptoBox[name]; } - Future getWalletBox() async { + Future> getWalletBox() async { return await Hive.openBox( 'wallets', encryptionCipher: HiveAesCipher(await key as Uint8List), diff --git a/lib/providers/servers.dart b/lib/providers/servers.dart index 5f3863fa..fe54ff9f 100644 --- a/lib/providers/servers.dart +++ b/lib/providers/servers.dart @@ -16,10 +16,7 @@ class Servers with ChangeNotifier { Future init(String identifier) async { LoggerWrapper.logInfo('Servers', 'init', 'init server provider'); - _serverBox = await Hive.openBox( - 'serverBox-$identifier', - encryptionCipher: HiveAesCipher(await _encryptedBox.key as List), - ); + _serverBox = await _encryptedBox.getServerBox(identifier); final seedServers = AvailableCoins.getSpecificCoin(identifier).electrumServers; diff --git a/lib/screens/wallet/wallet_import_scan.dart b/lib/screens/wallet/wallet_import_scan.dart index 533ebafd..186e86e3 100644 --- a/lib/screens/wallet/wallet_import_scan.dart +++ b/lib/screens/wallet/wallet_import_scan.dart @@ -40,7 +40,9 @@ class _WalletImportScanScreenState extends State { appBar: AppBar( title: Center( child: Text( - AppLocalizations.instance.translate('wallet_scan_appBar_title'), + AppLocalizations.instance.translate( + 'wallet_scan_appBar_title', + ), ), ), ), @@ -52,6 +54,24 @@ class _WalletImportScanScreenState extends State { Text( AppLocalizations.instance.translate('wallet_scan_notice'), ), + if (_backgroundNotificationsAvailable == false) + Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + const SizedBox(height: 20), + const Divider(), + const SizedBox(height: 20), + Padding( + padding: const EdgeInsets.symmetric(horizontal: 20), + child: Text( + AppLocalizations.instance.translate( + 'wallet_scan_notice_bg_notifications', + ), + textAlign: TextAlign.center, + ), + ), + ], + ), const SizedBox(height: 20), PeerButton( text: AppLocalizations.instance diff --git a/lib/widgets/wallet/addresses_tab.dart b/lib/widgets/wallet/addresses_tab.dart index e525db7b..57068e6d 100644 --- a/lib/widgets/wallet/addresses_tab.dart +++ b/lib/widgets/wallet/addresses_tab.dart @@ -51,6 +51,7 @@ class _AddressTabState extends State { bool _showUsed = true; bool _showEmpty = true; bool _showUnwatched = false; + bool _showSendingAddresses = true; final Map _addressBalanceMap = {}; final Map _isWatchedMap = {}; late ActiveWallets _activeWallets; @@ -272,6 +273,12 @@ class _AddressTabState extends State { ); } + void _toggleSendingAddressesVisilibity() { + setState(() { + _showSendingAddresses = !_showSendingAddresses; + }); + } + Future _toggleWatched(WalletAddress addr) async { String snackText; final scaffoldMessenger = ScaffoldMessenger.of(context); @@ -449,8 +456,10 @@ class _AddressTabState extends State { Icons.share, color: Theme.of(context).colorScheme.secondary, ), - onTap: () => - WalletHomeQr.showQrDialog(context, addr.address), + onTap: () => WalletHomeQr.showQrDialog( + context, + addr.address, + ), ), IconSlideAction( caption: AppLocalizations.instance @@ -470,40 +479,48 @@ class _AddressTabState extends State { caption: AppLocalizations.instance .translate('addressbook_swipe_delete'), color: Theme.of(context).errorColor, - iconWidget: - const Icon(Icons.delete, color: Colors.white), + iconWidget: const Icon( + Icons.delete, + color: Colors.white, + ), onTap: () async { await showDialog( context: context, builder: (_) => AlertDialog( title: Text( AppLocalizations.instance.translate( - 'addressbook_dialog_remove_title'), + 'addressbook_dialog_remove_title', + ), ), content: Text(addr.address), actions: [ TextButton.icon( - label: Text(AppLocalizations.instance - .translate( - 'server_settings_alert_cancel')), + label: Text( + AppLocalizations.instance.translate( + 'server_settings_alert_cancel'), + ), icon: const Icon(Icons.cancel), onPressed: () { Navigator.of(context).pop(); }), TextButton.icon( - label: Text(AppLocalizations.instance - .translate('jail_dialog_button')), + label: Text( + AppLocalizations.instance + .translate('jail_dialog_button'), + ), icon: const Icon(Icons.check), onPressed: () { - context - .read() - .removeAddress(widget.walletName, addr); + context.read().removeAddress( + widget.walletName, + addr, + ); applyFilter(); ScaffoldMessenger.of(context).showSnackBar( SnackBar( content: Text( AppLocalizations.instance.translate( - 'addressbook_dialog_remove_snack'), + 'addressbook_dialog_remove_snack', + ), textAlign: TextAlign.center, ), duration: const Duration(seconds: 5), @@ -683,8 +700,10 @@ class _AddressTabState extends State { ChoiceChip( backgroundColor: Theme.of(context).backgroundColor, selectedColor: Theme.of(context).shadowColor, - visualDensity: - const VisualDensity(horizontal: 0.0, vertical: -4), + visualDensity: const VisualDensity( + horizontal: 0.0, + vertical: -4, + ), label: AutoSizeText( AppLocalizations.instance .translate('addressbook_hide_change'), @@ -708,8 +727,10 @@ class _AddressTabState extends State { ChoiceChip( backgroundColor: Theme.of(context).backgroundColor, selectedColor: Theme.of(context).shadowColor, - visualDensity: - const VisualDensity(horizontal: 0.0, vertical: -4), + visualDensity: const VisualDensity( + horizontal: 0.0, + vertical: -4, + ), label: AutoSizeText( AppLocalizations.instance .translate('addressbook_hide_unwatched'), @@ -732,20 +753,19 @@ class _AddressTabState extends State { backgroundColor: Theme.of(context).backgroundColor, selectedColor: Theme.of(context).shadowColor, visualDensity: const VisualDensity( - horizontal: 0.0, vertical: -4), - // ignore: avoid_unnecessary_containers - label: Container( - child: AutoSizeText( - _showLabel - ? AppLocalizations.instance - .translate('addressbook_show_balance') - : AppLocalizations.instance - .translate('addressbook_show_label'), - textAlign: TextAlign.center, - minFontSize: 10, - style: TextStyle( - color: Theme.of(context).colorScheme.secondary, - ), + horizontal: 0.0, + vertical: -4, + ), + label: AutoSizeText( + _showLabel + ? AppLocalizations.instance + .translate('addressbook_show_balance') + : AppLocalizations.instance + .translate('addressbook_show_label'), + textAlign: TextAlign.center, + minFontSize: 10, + style: TextStyle( + color: Theme.of(context).colorScheme.secondary, ), ), selected: _showLabel, @@ -768,7 +788,9 @@ class _AddressTabState extends State { backgroundColor: Theme.of(context).backgroundColor, selectedColor: Theme.of(context).shadowColor, visualDensity: const VisualDensity( - horizontal: 0.0, vertical: -4), + horizontal: 0.0, + vertical: -4, + ), label: AutoSizeText( AppLocalizations.instance .translate('addressbook_hide_used'), @@ -791,7 +813,9 @@ class _AddressTabState extends State { backgroundColor: Theme.of(context).backgroundColor, selectedColor: Theme.of(context).shadowColor, visualDensity: const VisualDensity( - horizontal: 0.0, vertical: -4), + horizontal: 0.0, + vertical: -4, + ), label: AutoSizeText( AppLocalizations.instance .translate('addressbook_hide_empty'), @@ -941,29 +965,38 @@ class _AddressTabState extends State { ), ), ), - kIsWeb - ? SliverAppBar( - centerTitle: false, - automaticallyImplyLeading: false, - title: Text( - AppLocalizations.instance.translate( - 'addressbook_bottom_bar_sending_addresses'), - style: TextStyle( + SliverAppBar( + centerTitle: false, + automaticallyImplyLeading: false, + title: Text( + AppLocalizations.instance.translate( + 'addressbook_bottom_bar_sending_addresses', + ), + style: kIsWeb + ? TextStyle( fontWeight: FontWeight.w600, color: Theme.of(context).colorScheme.onPrimary, - ), - ), - ) - : SliverAppBar( - automaticallyImplyLeading: false, - title: Text( - AppLocalizations.instance.translate( - 'addressbook_bottom_bar_sending_addresses', - ), - ), + ) + : const TextStyle(), + ), + actions: [ + IconButton( + padding: const EdgeInsets.symmetric( + horizontal: 16, + ), + onPressed: () => _toggleSendingAddressesVisilibity(), + icon: Icon( + _showSendingAddresses + ? Icons.visibility_off + : Icons.visibility, ), + ), + ], + ), SliverList( - delegate: SliverChildListDelegate(listSend), + delegate: SliverChildListDelegate( + _showSendingAddresses ? listSend : [const SizedBox()], + ), ), sliverToBoxAdapter, const SliverToBoxAdapter( diff --git a/lib/widgets/wallet/send_tab.dart b/lib/widgets/wallet/send_tab.dart index 519012f2..15c0bebf 100644 --- a/lib/widgets/wallet/send_tab.dart +++ b/lib/widgets/wallet/send_tab.dart @@ -9,6 +9,7 @@ import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_typeahead/flutter_typeahead.dart'; +import 'package:peercoin/exceptions/exceptions.dart'; import 'package:peercoin/models/buildresult.dart'; import 'package:peercoin/widgets/wallet/send_tab_management.dart'; import 'package:peercoin/widgets/wallet/send_tab_navigator.dart'; @@ -604,13 +605,35 @@ class _SendTabState extends State { return recipients; } - Future _buildTx() async { - return await _activeWallets.buildTransaction( - identifier: widget.wallet.name, - recipients: _buildRecipientMap(), - fee: 0, - opReturn: _opReturnKey.currentState?.value ?? '', - ); + Future _buildTx() async { + try { + return await _activeWallets.buildTransaction( + identifier: widget.wallet.name, + recipients: _buildRecipientMap(), + fee: 0, + opReturn: _opReturnKey.currentState?.value ?? '', + ); + } catch (e) { + if (e.runtimeType == CantPayForFeesException) { + final exception = e as CantPayForFeesException; + ScaffoldMessenger.of(context).showSnackBar( + SnackBar( + content: Text( + AppLocalizations.instance.translate( + 'send_errors_cant_pay_fees', + { + 'feesMissing': + (exception.feesMissing / _decimalProduct).toString(), + 'letter_code': widget.wallet.letterCode + }, + ), + ), + duration: const Duration(seconds: 7), + ), + ); + } + } + return null; } void _calcAmountInputHelperText(int index) { @@ -719,30 +742,32 @@ class _SendTabState extends State { void _showTransactionConfirmation(context) async { var buildResult = await _buildTx(); - await Navigator.of(context).pushNamed( - Routes.transactionConfirmation, - arguments: TransactionConfirmationArguments( - buildResult: buildResult, - decimalProduct: _decimalProduct, - coinLetterCode: widget.wallet.letterCode, - coinIdentifier: widget.wallet.name, - callBackAfterSend: () => widget.changeIndex(Tabs.transactions), - fiatPricePerCoin: _coinValue, - fiatCode: _appSettings.selectedCurrency, - ), - ); - //persist labels - _labelControllerList.asMap().forEach( - (index, controller) { - if (controller.text != '') { - _activeWallets.updateLabel( - widget.wallet.name, - _addressControllerList[index].text, - controller.text, - ); - } - }, - ); + if (buildResult != null) { + await Navigator.of(context).pushNamed( + Routes.transactionConfirmation, + arguments: TransactionConfirmationArguments( + buildResult: buildResult, + decimalProduct: _decimalProduct, + coinLetterCode: widget.wallet.letterCode, + coinIdentifier: widget.wallet.name, + callBackAfterSend: () => widget.changeIndex(Tabs.transactions), + fiatPricePerCoin: _coinValue, + fiatCode: _appSettings.selectedCurrency, + ), + ); + //persist labels + _labelControllerList.asMap().forEach( + (index, controller) { + if (controller.text != '') { + _activeWallets.updateLabel( + widget.wallet.name, + _addressControllerList[index].text, + controller.text, + ); + } + }, + ); + } } Future importCsv() async { diff --git a/lib/widgets/wallet/send_tab_navigator.dart b/lib/widgets/wallet/send_tab_navigator.dart index 81f2630f..ba4f5219 100644 --- a/lib/widgets/wallet/send_tab_navigator.dart +++ b/lib/widgets/wallet/send_tab_navigator.dart @@ -15,14 +15,25 @@ class SendTabNavigator extends StatelessWidget { @override Widget build(BuildContext context) { return Row( - mainAxisAlignment: MainAxisAlignment.end, + mainAxisAlignment: MainAxisAlignment.center, children: [ currentIndex - 1 > 0 - ? IconButton( - onPressed: () => raiseNewindex(currentIndex - 1), - icon: const Icon(Icons.arrow_left_rounded), - ) - : const SizedBox(), + ? Row(children: [ + IconButton( + onPressed: () => raiseNewindex(1), + icon: const Icon( + Icons.fast_rewind_rounded, + size: 15, + ), + ), + IconButton( + onPressed: () => raiseNewindex(currentIndex - 1), + icon: const Icon(Icons.arrow_left_rounded), + ), + ]) + : const SizedBox( + width: 96, + ), Text( AppLocalizations.instance.translate('send_navigator', { "index": currentIndex.toString(), @@ -34,13 +45,24 @@ class SendTabNavigator extends StatelessWidget { ), ), currentIndex + 1 <= numberOfRecipients - ? IconButton( - onPressed: () => raiseNewindex(currentIndex + 1), - icon: const Icon(Icons.arrow_right_rounded), + ? Row( + children: [ + IconButton( + onPressed: () => raiseNewindex(currentIndex + 1), + icon: const Icon(Icons.arrow_right_rounded), + ), + IconButton( + onPressed: () => raiseNewindex(numberOfRecipients), + icon: const Icon( + Icons.fast_forward_rounded, + size: 15, + ), + ), + ], ) : const SizedBox( - width: 48, - ) + width: 96, + ), ], ); } diff --git a/pubspec.lock b/pubspec.lock index 9b04fa7b..e75dad53 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -253,6 +253,20 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "3.0.2" + cryptography: + dependency: transitive + description: + name: cryptography + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.5" + cryptography_flutter: + dependency: "direct main" + description: + name: cryptography_flutter + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.2" csslib: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index c6333f89..26286c22 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,7 +1,7 @@ name: peercoin description: A new Peercoin wallet. -version: 1.1.0+121 +version: 1.1.1+122 environment: sdk: '>=2.12.0 <3.0.0' @@ -54,6 +54,7 @@ dependencies: protobuf: ^2.1.0 grpc: ^3.1.0 mockito: ^5.3.2 + cryptography_flutter: ^2.0.2 dev_dependencies: integration_test: diff --git a/test/csvs/test_1000.csv b/test/csvs/test_1000.csv new file mode 100644 index 00000000..673c1bfd --- /dev/null +++ b/test/csvs/test_1000.csv @@ -0,0 +1,1000 @@ +tpc1qcanvas0000000000000000000000000000000000000qyvgqcvps5v688m,0.01,"Pixel (561, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000qyvsqcv8sz52gf7,0.01,"Pixel (562, 195) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyvcqcvrsuqkr8f,0.01,"Pixel (563, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qydqqcvrs0mf9zj,0.01,"Pixel (564, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qydgqcvrsyqqafa,0.01,"Pixel (565, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qydsqcvrseymu5v,0.01,"Pixel (566, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qydcqcvpsvvvef0,0.01,"Pixel (567, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000qywqqcvrsan9vrv,0.01,"Pixel (568, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywgqcvpsgmjf70,0.01,"Pixel (569, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000qywsqcvrstvh44j,0.01,"Pixel (570, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywcqcvrsqh7d7a,0.01,"Pixel (571, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0qqcvrsnvptmx,0.01,"Pixel (572, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0gqcvrschgnsf,0.01,"Pixel (573, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0sqcvpsmqd0m5,0.01,"Pixel (574, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000qy0cqcvpssmyhsm,0.01,"Pixel (575, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000qysqqcv8sc7nhv8,0.01,"Pixel (576, 195) Purple" +tpc1qcanvas0000000000000000000000000000000000000qysgqcvrsx20uzs,0.01,"Pixel (577, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyssqcv8swppw6e,0.01,"Pixel (578, 195) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyscqcvrss4a95w,0.01,"Pixel (579, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3qqcvrsrwzr34,0.01,"Pixel (580, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3gqcvrsg4tm66,0.01,"Pixel (581, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3sqcvrs43s68t,0.01,"Pixel (582, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3cqcvzs3hkc8z,0.01,"Pixel (583, 195) Red" +tpc1qcanvas0000000000000000000000000000000000000qyjqqcvrs3xw2st,0.01,"Pixel (584, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyjgqcvrs6a8jmy,0.01,"Pixel (585, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyjsqcvrs8eunx4,0.01,"Pixel (586, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyjcqcvrsvz4td6,0.01,"Pixel (587, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qynqqcvzssy9hr8,0.01,"Pixel (588, 195) Red" +tpc1qcanvas0000000000000000000000000000000000000qyngqcvrs5zr4rw,0.01,"Pixel (589, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qynsqcvrsfxc57l,0.01,"Pixel (590, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyncqcvpsuw03ru,0.01,"Pixel (591, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000qy5qqcvrsukkcj7,0.01,"Pixel (592, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy5gqcvrshdlqe3,0.01,"Pixel (593, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy5sqcvrs2fypyq,0.01,"Pixel (594, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy5cqcvpslpnyer,0.01,"Pixel (595, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000qy4qqcvpsv6vzuc,0.01,"Pixel (596, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000qy4gqcvps8p96hh,0.01,"Pixel (597, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000qy4sqcv8s3e44ej,0.01,"Pixel (598, 195) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy4cqcvrs0df7h9,0.01,"Pixel (599, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qykqqcvzs0u3vqv,0.01,"Pixel (600, 195) Red" +tpc1qcanvas0000000000000000000000000000000000000qykgqcvrst6hwq9,0.01,"Pixel (601, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyksqcvrsk7v0a5,0.01,"Pixel (602, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qykcqcvpsrkm2qh,0.01,"Pixel (603, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000qyhqqcvpssdyv9v,0.01,"Pixel (604, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000qyhgqcvrs99nfc0,0.01,"Pixel (605, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyhsqcv8sdwamqx,0.01,"Pixel (606, 195) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyhcqcvrsn6psw3,0.01,"Pixel (607, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qycqqcvpscv3gq3,0.01,"Pixel (608, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000qycgqcvrsdyxdaj,0.01,"Pixel (609, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qycsqcv8s90gl9m,0.01,"Pixel (610, 195) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyccqcvps9g2faq,0.01,"Pixel (611, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000qyeqqcv8sa07pt0,0.01,"Pixel (612, 195) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyegqcvrsrmz29c,0.01,"Pixel (613, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyesqcvpsqv8kw9,0.01,"Pixel (614, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000qyecqcvrs4ysnnx,0.01,"Pixel (615, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy6qqcvpsymexe9,0.01,"Pixel (616, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000qy6gqcvrs3nwryx,0.01,"Pixel (617, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy6sqcvrsvh4zeh,0.01,"Pixel (618, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy6cqcvpselz8y5,0.01,"Pixel (619, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000qymqqcv8spck0jm,0.01,"Pixel (620, 195) Purple" +tpc1qcanvas0000000000000000000000000000000000000qymgqcvrslv2yuv,0.01,"Pixel (621, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymsqcvrszg39pa,0.01,"Pixel (622, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymcqcvrsfnca2j,0.01,"Pixel (623, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyuqqcvrshclfdu,0.01,"Pixel (624, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyugqcv8sfvrzrt,0.01,"Pixel (625, 195) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyusqcvrsp8dsmz,0.01,"Pixel (626, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyucqcvrs2uygsd,0.01,"Pixel (627, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyaqqcvrse8mw4k,0.01,"Pixel (628, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyagqcvrsjujk7e,0.01,"Pixel (629, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyasqcvrs0cfhrg,0.01,"Pixel (630, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyacqcvrsyrq0g8,0.01,"Pixel (631, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy7qqcvrst0h85g,0.01,"Pixel (632, 195) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy7gqcvps78qzft,0.01,"Pixel (633, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000qy7sqcvpqkznmpf,0.01,"Pixel (634, 195) Grey" +tpc1qcanvas0000000000000000000000000000000000000qy7cqcvpsgcjml4,0.01,"Pixel (635, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000qylqqcvpsmrda6w,0.01,"Pixel (636, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000qylgqcvpq9evayj,0.01,"Pixel (637, 195) Grey" +tpc1qcanvas0000000000000000000000000000000000000qylsqcvpsdulyvs,0.01,"Pixel (638, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000qylcqcvpsx8ku8l,0.01,"Pixel (639, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qqqcvpscp2rqa,0.01,"Pixel (640, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qgqcvpsn6rmtj,0.01,"Pixel (641, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qsqcvpsw7c6kr,0.01,"Pixel (642, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qcqcvps993zav,0.01,"Pixel (643, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pqqcvpsk7wych,0.01,"Pixel (644, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pgqcvpsa98unc,0.01,"Pixel (645, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000q9psqcvpsqpuawf,0.01,"Pixel (646, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pcqcvpst6499x,0.01,"Pixel (647, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zqqcvpsykzdef,0.01,"Pixel (648, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zgqcvps0dt4jx,0.01,"Pixel (649, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zsqcvpsjfs50h,0.01,"Pixel (650, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zcqcvpsejevyc,0.01,"Pixel (651, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rqqcvps2fx2pr,0.01,"Pixel (652, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rgqcvpspj0j2v,0.01,"Pixel (653, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rsqcvpsuk5nha,0.01,"Pixel (654, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rcqcvpshdatuj,0.01,"Pixel (655, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000q9yqqcvpsfx6lmu,0.01,"Pixel (656, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ygqcvpszan8sn,0.01,"Pixel (657, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ysqcvpslegxdz,0.01,"Pixel (658, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ycqcvps5zp7xd,0.01,"Pixel (659, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000q99qqcvps8e7crk,0.01,"Pixel (660, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000q99gqcvpsvzhqge,0.01,"Pixel (661, 195) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqqqcspqpwgfjh,0.01,"Pixel (512, 196) Grey" +tpc1qcanvas0000000000000000000000000000000000000qyqgqcspsl5ffvt,0.01,"Pixel (513, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqsqcspszsjg36,0.01,"Pixel (514, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqcqcspsftms64,0.01,"Pixel (515, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qypqqcsps6syklw,0.01,"Pixel (516, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qypgqcsps3tdw5p,0.01,"Pixel (517, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qypsqcspsv0k0fs,0.01,"Pixel (518, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qypcqcsps85lhzl,0.01,"Pixel (519, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzqqcspsgcgl7s,0.01,"Pixel (520, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzgqcspsrrp84l,0.01,"Pixel (521, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzsqcsps786xgw,0.01,"Pixel (522, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzcqcsps4un7rp,0.01,"Pixel (523, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrqqcspsx8vcx6,0.01,"Pixel (524, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrgqcspsdu9qd4,0.01,"Pixel (525, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrsqcspssc7psy,0.01,"Pixel (526, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrcqcspqwzlpwc,0.01,"Pixel (527, 196) Grey" +tpc1qcanvas0000000000000000000000000000000000000qyyqqcsps9gsdu9,0.01,"Pixel (528, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyygqcspswne4h2,0.01,"Pixel (529, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyysqcspsnhz52m,0.01,"Pixel (530, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyycqcspscvtvp5,0.01,"Pixel (531, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qy9qqcspsth52y0,0.01,"Pixel (532, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qy9gqcsrs7lr0ev,0.01,"Pixel (533, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy9sqcspsagxnj3,0.01,"Pixel (534, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qy9cqcsrsgq3k0j,0.01,"Pixel (535, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyxqqcspselcr93,0.01,"Pixel (536, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyxgqcspsjy3mw7,0.01,"Pixel (537, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyxsqcs8syup5qm,0.01,"Pixel (538, 196) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyxcqcsrs6galwv,0.01,"Pixel (539, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8qqcspshquyam,0.01,"Pixel (540, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qy8gqcs8sh87j9q,0.01,"Pixel (541, 196) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy8sqcsrslvsqaf,0.01,"Pixel (542, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8cqcsps2y89q2,0.01,"Pixel (543, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qygqqcspslpfqcx,0.01,"Pixel (544, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyggqcsrs2f7999,0.01,"Pixel (545, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygsqcsrshd9yc5,0.01,"Pixel (546, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygcqcs8sfee0kr,0.01,"Pixel (547, 196) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyfqqcsps37d8qv,0.01,"Pixel (548, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyfgqcsps69yltr,0.01,"Pixel (549, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyfsqcsrsejprq7,0.01,"Pixel (550, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyfcqcspsv6kxaa,0.01,"Pixel (551, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qy2qqcs8sg22qjx,0.01,"Pixel (552, 196) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy2gqcsrsk7ktu3,0.01,"Pixel (553, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2sqcsrst6d2pq,0.01,"Pixel (554, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2cqcsrsqpyj20,0.01,"Pixel (555, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytqqcsrsn6m505,0.01,"Pixel (556, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytgqcsrscpjvym,0.01,"Pixel (557, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytsqcsrs99fde2,0.01,"Pixel (558, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytcqcsrsw7q4j9,0.01,"Pixel (559, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyvqqcsrss48p4t,0.01,"Pixel (560, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyvgqcsrsmwwe7y,0.01,"Pixel (561, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyvsqcs8sn9qtxd,0.01,"Pixel (562, 196) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyvcqcspsnzza7k,0.01,"Pixel (563, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qydqqcsrs72rxdp,0.01,"Pixel (564, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qydgqcsrs4327xw,0.01,"Pixel (565, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qydsqcsrsg43lml,0.01,"Pixel (566, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qydcqcsrsrwc8ss,0.01,"Pixel (567, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywqqcsrsvz00vl,0.01,"Pixel (568, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywgqcs8sjknyzg,0.01,"Pixel (569, 196) Purple" +tpc1qcanvas0000000000000000000000000000000000000qywsqcsrs6aak6p,0.01,"Pixel (570, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywcqcsrs3x5w3w,0.01,"Pixel (571, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0qqcsrszatg54,0.01,"Pixel (572, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0gqcsrsfxzsl6,0.01,"Pixel (573, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0sqcs8spdvz8n,0.01,"Pixel (574, 196) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy0cqcsrslesffy,0.01,"Pixel (575, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qysqqcspsznj6sq,0.01,"Pixel (576, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qysgqcspsfgmzm0,0.01,"Pixel (577, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyssqcsrs2l77sj,0.01,"Pixel (578, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyscqcsrspyhxma,0.01,"Pixel (579, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3qqcsrsjlgq7x,0.01,"Pixel (580, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3gqcsrseypc4f,0.01,"Pixel (581, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3sqcsrsyq6egc,0.01,"Pixel (582, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3cqcsrs0mnprh,0.01,"Pixel (583, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyjqqcs8s4c366q,0.01,"Pixel (584, 196) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyjgqcszsy3ztl3,0.01,"Pixel (585, 196) Red" +tpc1qcanvas0000000000000000000000000000000000000qyjsqcsrskgksfx,0.01,"Pixel (586, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyjcqcszsjwsjf0,0.01,"Pixel (587, 196) Red" +tpc1qcanvas0000000000000000000000000000000000000qynqqcsrswgqw8j,0.01,"Pixel (588, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyngqcsrs9nfkva,0.01,"Pixel (589, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qynsqcsrschjh3v,0.01,"Pixel (590, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyncqcsrsnvm06r,0.01,"Pixel (591, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy5qqcspsn5zxtp,0.01,"Pixel (592, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qy5gqcsrsxu4rkz,0.01,"Pixel (593, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy5sqcsps9tslal,0.01,"Pixel (594, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qy5cqcsrssr86qu,0.01,"Pixel (595, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy4qqcspsatxpnt,0.01,"Pixel (596, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qy4gqcspsks0ecy,0.01,"Pixel (597, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qy4sqcsrs4829ne,0.01,"Pixel (598, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy4cqcsrs7urack,0.01,"Pixel (599, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qykqqcsrs3s54ye,0.01,"Pixel (600, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qykgqcsrs6tad0k,0.01,"Pixel (601, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyksqcsrs80xvj8,0.01,"Pixel (602, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qykcqcs8sem68us,0.01,"Pixel (603, 196) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyhqqcsrsl0sjun,0.01,"Pixel (604, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyhgqcsps288hps,0.01,"Pixel (605, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyhsqcsrsfszt2d,0.01,"Pixel (606, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyhcqcsrszttnpz,0.01,"Pixel (607, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qycqqcs8szps9uk,0.01,"Pixel (608, 196) Purple" +tpc1qcanvas0000000000000000000000000000000000000qycgqcsrsu4vwjp,0.01,"Pixel (609, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qycsqcspslzfjeu,0.01,"Pixel (610, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyccqcsrs227hyl,0.01,"Pixel (611, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyeqqcs8sv75zyu,0.01,"Pixel (612, 196) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyegqcsrsj2gf2t,0.01,"Pixel (613, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyesqcsps3ad4pk,0.01,"Pixel (614, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyecqcs8s360red,0.01,"Pixel (615, 196) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy6qqcsrstedcq6,0.01,"Pixel (616, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy6gqcsrsqzyqt4,0.01,"Pixel (617, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy6sqcs8sgf2jnu,0.01,"Pixel (618, 196) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy6cqcsrskakeat,0.01,"Pixel (619, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymqqcspsm4hzwu,0.01,"Pixel (620, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qymgqcsrswaq8nl,0.01,"Pixel (621, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymsqcsrsnemxww,0.01,"Pixel (622, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymcqcsrsczj79p,0.01,"Pixel (623, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyuqqcsrsxf42z0,0.01,"Pixel (624, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyugqcsrsdjujfq,0.01,"Pixel (625, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyusqcsrssk8n53,0.01,"Pixel (626, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyucqcsrsmdwtl7,0.01,"Pixel (627, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyaqqcsrsgk3d69,0.01,"Pixel (628, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyagqcsrsrdc432,0.01,"Pixel (629, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyasqcsrs7fr5vm,0.01,"Pixel (630, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyacqcsrs4j2v85,0.01,"Pixel (631, 196) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy7qqcs8s03gh7r,0.01,"Pixel (632, 196) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy7gqcsps0k2pxc,0.01,"Pixel (633, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qy7sqcspsjj3qmf,0.01,"Pixel (634, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qy7cqcspsefccsx,0.01,"Pixel (635, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qylqqcsps2j874a,0.01,"Pixel (636, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qylgqcspspfwx7j,0.01,"Pixel (637, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qylsqcspsud48rr,0.01,"Pixel (638, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qylcqcspshkulgv,0.01,"Pixel (639, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qqqcspsfsqq0w,0.01,"Pixel (640, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qgqcspsztfcyp,0.01,"Pixel (641, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qsqcspsl0jees,0.01,"Pixel (642, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qcqcsps55mpjl,0.01,"Pixel (643, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pqqcsps80y8hy,0.01,"Pixel (644, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pgqcspsv5dlut,0.01,"Pixel (645, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000q9psqcsps3sk7p6,0.01,"Pixel (646, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pcqcsps6tlx24,0.01,"Pixel (647, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zqqcsps48gwk6,0.01,"Pixel (648, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zgqcsps7upka4,0.01,"Pixel (649, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zsqcspsrc6hqy,0.01,"Pixel (650, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zcqcspsgrn0tt,0.01,"Pixel (651, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rqqcspsmcvfws,0.01,"Pixel (652, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rgqcspssr939l,0.01,"Pixel (653, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rsqcspsd87scw,0.01,"Pixel (654, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rcqcspsxuhgnp,0.01,"Pixel (655, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000q9yqqcspschsu50,0.01,"Pixel (656, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ygqcspsnveylq,0.01,"Pixel (657, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ysqcspswgz9z3,0.01,"Pixel (658, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ycqcsps9ntaf7,0.01,"Pixel (659, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000q99qqcspskg5mv9,0.01,"Pixel (660, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000q99gqcspsanar82,0.01,"Pixel (661, 196) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqqqc5psu8dlcl,0.01,"Pixel (512, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqgqc5pshuy8ns,0.01,"Pixel (513, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqsqc5pqleh7mj,0.01,"Pixel (514, 197) Grey" +tpc1qcanvas0000000000000000000000000000000000000qyqcqc5psprk79w,0.01,"Pixel (515, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qypqqc5psjcfcq4,0.01,"Pixel (516, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qypgqc5pqvzgc7f,0.01,"Pixel (517, 197) Grey" +tpc1qcanvas0000000000000000000000000000000000000qypsqc5psy8mpkt,0.01,"Pixel (518, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qypcqc5ps0ujeay,0.01,"Pixel (519, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzqqc5pq43df5c,0.01,"Pixel (520, 197) Grey" +tpc1qcanvas0000000000000000000000000000000000000qyzgqc5psttvf2y,0.01,"Pixel (521, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzsqc5pqrwlszx,0.01,"Pixel (522, 197) Grey" +tpc1qcanvas0000000000000000000000000000000000000qyzcqc5psa57su6,0.01,"Pixel (523, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrqqc5pqmwfwvj,0.01,"Pixel (524, 197) Grey" +tpc1qcanvas0000000000000000000000000000000000000qyrgqc5ps95gwjw,0.01,"Pixel (525, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrsqc5pscsn00l,0.01,"Pixel (526, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrcqc5psnt6hys,0.01,"Pixel (527, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qyyqqc5psdqarr7,0.01,"Pixel (528, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qyygqc5psxm5mg3,0.01,"Pixel (529, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qyysqc5pqw78zqn,0.01,"Pixel (530, 197) Grey" +tpc1qcanvas0000000000000000000000000000000000000qyycqc5pq99w6tu,0.01,"Pixel (531, 197) Grey" +tpc1qcanvas0000000000000000000000000000000000000qy9qqc5psrleym5,0.01,"Pixel (532, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qy9gqc5rskhwpxh,0.01,"Pixel (533, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy9sqc5ps4qtad2,0.01,"Pixel (534, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qy9cqc5ps7mz9x9,0.01,"Pixel (535, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qyxqqc5rs0ytsvx,0.01,"Pixel (536, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyxgqc5ps6vu439,0.01,"Pixel (537, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qyxsqc5rsemef6c,0.01,"Pixel (538, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyxcqc5rsjqs33h,0.01,"Pixel (539, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8qqc5rspm0h5v,0.01,"Pixel (540, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8gqc5ps5ncjf0,0.01,"Pixel (541, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qy8sqc5rshyawzj,0.01,"Pixel (542, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8cqc58sfsp9v9,0.01,"Pixel (543, 197) Purple" +tpc1qcanvas0000000000000000000000000000000000000qygqqc5rsf66n33,0.01,"Pixel (544, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyggqc5rszpnt67,0.01,"Pixel (545, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygsqc5rsl9g280,0.01,"Pixel (546, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygcqc5rs57pjvq,0.01,"Pixel (547, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyfqqc5rs8975fm,0.01,"Pixel (548, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyfgqc58se3zl8v,0.01,"Pixel (549, 197) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyfsqc5rs36vdl9,0.01,"Pixel (550, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyfcqc5rs6p9452,0.01,"Pixel (551, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2qqc5rs4djag9,0.01,"Pixel (552, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2gqc5rs7km9r2,0.01,"Pixel (553, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2sqc5rsrjqy7m,0.01,"Pixel (554, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2cqc5rsgffu45,0.01,"Pixel (555, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytqqc5rsmjk6s0,0.01,"Pixel (556, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytgqc5rssflzmq,0.01,"Pixel (557, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytsqc5rsddyrx3,0.01,"Pixel (558, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytcqc5rsxkdmd7,0.01,"Pixel (559, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyvqqc58sdjlu0g,0.01,"Pixel (560, 197) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyvgqc5rsnxrhpl,0.01,"Pixel (561, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyvsqc5pss3xt2z,0.01,"Pixel (562, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qyvcqc5psm20npd,0.01,"Pixel (563, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qydqqc5rskzwgj6,0.01,"Pixel (564, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qydgqc58sgkjrud,0.01,"Pixel (565, 197) Purple" +tpc1qcanvas0000000000000000000000000000000000000qydsqc5rsqau3yy,0.01,"Pixel (566, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qydcqc5rstx4f0t,0.01,"Pixel (567, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywqqc5rsy2zpny,0.01,"Pixel (568, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywgqc5ps3z4yw8,0.01,"Pixel (569, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qywsqc5psvxw9nk,0.01,"Pixel (570, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qywcqc5rseweqw4,0.01,"Pixel (571, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0qqc5rs24xxtw,0.01,"Pixel (572, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0gqc5rspw07qp,0.01,"Pixel (573, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0sqc58sf9pvcg,0.01,"Pixel (574, 197) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy0cqc5psfzr6qn,0.01,"Pixel (575, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qysqqc5rs5gpfeh,0.01,"Pixel (576, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qysgqc5rslng3jc,0.01,"Pixel (577, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyssqc5rszhns0f,0.01,"Pixel (578, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyscqc5rsfv6gyx,0.01,"Pixel (579, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3qqc5rs6h9wpa,0.01,"Pixel (580, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3gqc5rs3vvk2j,0.01,"Pixel (581, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3sqc5rsvghhhr,0.01,"Pixel (582, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3cqc5rs8n70uv,0.01,"Pixel (583, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyjqqc5zs8zxat9,0.01,"Pixel (584, 197) Red" +tpc1qcanvas0000000000000000000000000000000000000qyjgqc5rsryqltv,0.01,"Pixel (585, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyjsqc5rs7qm7ka,0.01,"Pixel (586, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyjcqc5rs4mjxaj,0.01,"Pixel (587, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qynqqc5rsxqdqcf,0.01,"Pixel (588, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyngqc5rsdmycnx,0.01,"Pixel (589, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qynsqc5rssllewh,0.01,"Pixel (590, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyncqc5rsmykp9c,0.01,"Pixel (591, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy5qqc5psmu0g56,0.01,"Pixel (592, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qy5gqc58smmd7vp,0.01,"Pixel (593, 197) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy5sqc5rsnsrv5g,0.01,"Pixel (594, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy5cqc5psxc5fft,0.01,"Pixel (595, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qy4qqc5ps4rt0vs,0.01,"Pixel (596, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qy4gqc5ps7czh8l,0.01,"Pixel (597, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qy4sqc58sgqjcf6,0.01,"Pixel (598, 197) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy4cqc5rsk5wn8d,0.01,"Pixel (599, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qykqqc5rsecemmz,0.01,"Pixel (600, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qykgqc5rsjrsrsd,0.01,"Pixel (601, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyksqc5rs08tzdu,0.01,"Pixel (602, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qykcqc5rsyuz6xn,0.01,"Pixel (603, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyhqqc5psf5rp4y,0.01,"Pixel (604, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qyhgqc5psz02e7t,0.01,"Pixel (605, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qyhsqc5pslt3cr6,0.01,"Pixel (606, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qyhcqc5ps5scqg4,0.01,"Pixel (607, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qycqqc5rslxgcx4,0.01,"Pixel (608, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qycgqc58spj5ngz,0.01,"Pixel (609, 197) Purple" +tpc1qcanvas0000000000000000000000000000000000000qycsqc5psh2yux8,0.01,"Pixel (610, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qyccqc5psu3dydg,0.01,"Pixel (611, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qyeqqc5rs3evl7l,0.01,"Pixel (612, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyegqc5psy3m6ru,0.01,"Pixel (613, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qyesqc5rs8x7xgp,0.01,"Pixel (614, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyecqc5psjwfr4z,0.01,"Pixel (615, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qy6qqc58sk7496e,0.01,"Pixel (616, 197) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy6gqc5pskehnzz,0.01,"Pixel (617, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qy6sqc58sqp8uv8,0.01,"Pixel (618, 197) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy6cqc5rs74mhzs,0.01,"Pixel (619, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymqqc5rsdwy38t,0.01,"Pixel (620, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymgqc5rsx4dfvy,0.01,"Pixel (621, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymsqc5rsm3kg34,0.01,"Pixel (622, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymcqc5rss2ls66,0.01,"Pixel (623, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyuqqc58smwdhcv,0.01,"Pixel (624, 197) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyugqc5rs963ukm,0.01,"Pixel (625, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyusqc5rsc72at2,0.01,"Pixel (626, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyucqc5rsn9r9q9,0.01,"Pixel (627, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyaqqc5rsq7ur97,0.01,"Pixel (628, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyagqc5rst94mw3,0.01,"Pixel (629, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyasqc5rskpw6nq,0.01,"Pixel (630, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyacqc5rsa68zc0,0.01,"Pixel (631, 197) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy7qqc58s8e9epc,0.01,"Pixel (632, 197) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy7gqc5ps8780er,0.01,"Pixel (633, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qy7sqc5ps66uwyj,0.01,"Pixel (634, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qy7cqc5ps3p4k0a,0.01,"Pixel (635, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qylqqc5psz62s2x,0.01,"Pixel (636, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qylgqc5psfprgpf,0.01,"Pixel (637, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qylsqc5ps59cfuc,0.01,"Pixel (638, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qylcqc5psl733hh,0.01,"Pixel (639, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qqqc5pspcdws4,0.01,"Pixel (640, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qgqc5ps2rykm6,0.01,"Pixel (641, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qsqc5psh8lhxt,0.01,"Pixel (642, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qcqc5psuuk0dy,0.01,"Pixel (643, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pqqc5ps08ffgl,0.01,"Pixel (644, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pgqc5psyuq3rs,0.01,"Pixel (645, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000q9psqc5psecms7p,0.01,"Pixel (646, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pcqc5pq8z6sqa,0.01,"Pixel (647, 197) Grey" +tpc1qcanvas0000000000000000000000000000000000000q9zqqc5psa09qfp,0.01,"Pixel (648, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zgqc5psk5vczw,0.01,"Pixel (649, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zsqc5pstshell,0.01,"Pixel (650, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zcqc5psqt7p5s,0.01,"Pixel (651, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rqqc5psnsp83t,0.01,"Pixel (652, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rgqc5psctgl6y,0.01,"Pixel (653, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rsqc5ps90n784,0.01,"Pixel (654, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rcqc5psw56xv6,0.01,"Pixel (655, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000q9yqqc5psslajt5,0.01,"Pixel (656, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ygqc5psmy52qm,0.01,"Pixel (657, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ysqc5psxq0ta2,0.01,"Pixel (658, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ycqc5psdmxnk9,0.01,"Pixel (659, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000q99qqc5ps7qe4n7,0.01,"Pixel (660, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000q99gqc5ps4msdc3,0.01,"Pixel (661, 197) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqqqccpq37j49g,0.01,"Pixel (512, 198) Grey" +tpc1qcanvas0000000000000000000000000000000000000qyqgqccps0yn4m5,0.01,"Pixel (513, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqsqccpsjqg5x9,0.01,"Pixel (514, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqcqccpsempvd2,0.01,"Pixel (515, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qypqqccps2q72g3,0.01,"Pixel (516, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qypgqccpspmhjr7,0.01,"Pixel (517, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qypsqccpsulvn70,0.01,"Pixel (518, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qypcqccpshy9t4q,0.01,"Pixel (519, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzqqccpscgjrf0,0.01,"Pixel (520, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzgqccpsnnmmzq,0.01,"Pixel (521, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzsqccpswhq6l3,0.01,"Pixel (522, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzcqccps9vfz57,0.01,"Pixel (523, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrqqccpskhky39,0.01,"Pixel (524, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrgqccpsavlu62,0.01,"Pixel (525, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrsqccpsqgya8m,0.01,"Pixel (526, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrcqccpstnd9v5,0.01,"Pixel (527, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyyqqccpqqezf7f,0.01,"Pixel (528, 198) Grey" +tpc1qcanvas0000000000000000000000000000000000000qyygqccps7rrfq4,0.01,"Pixel (529, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyysqccpsr8cgay,0.01,"Pixel (530, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyycqccpsgu3skt,0.01,"Pixel (531, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qy9qqccpsm8wkns,0.01,"Pixel (532, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qy9gqccpssu8wcl,0.01,"Pixel (533, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qy9sqccrsntzjnz,0.01,"Pixel (534, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy9cqccpsxr4hwp,0.01,"Pixel (535, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyxqqccpsf0zljw,0.01,"Pixel (536, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyxgqccrsu8460d,0.01,"Pixel (537, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyxsqccpslssxys,0.01,"Pixel (538, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyxcqccps5te70l,0.01,"Pixel (539, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qy8qqccrserc9ug,0.01,"Pixel (540, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8gqcc8s8hywjl,0.01,"Pixel (541, 198) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy8sqccrs0u2u2k,0.01,"Pixel (542, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8cqccrsy8rype,0.01,"Pixel (543, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygqqccrs3zdpe4,0.01,"Pixel (544, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyggqccrs6eyej6,0.01,"Pixel (545, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygsqccrs8alc0t,0.01,"Pixel (546, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygcqccrsvxkqyy,0.01,"Pixel (547, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyfqqccpspwhmhn,0.01,"Pixel (548, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyfgqccps247ruu,0.01,"Pixel (549, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyfsqcc8sudwvje,0.01,"Pixel (550, 198) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyfcqccrszej8uw,0.01,"Pixel (551, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2qqccrsd490qp,0.01,"Pixel (552, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2gqccrsxwvhtw,0.01,"Pixel (553, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2sqccrsm2hkkl,0.01,"Pixel (554, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2cqccrss37was,0.01,"Pixel (555, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytqqccrsr2pgct,0.01,"Pixel (556, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytgqccrsg3gsny,0.01,"Pixel (557, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytsqccrs44n3w4,0.01,"Pixel (558, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytcqccpsqay5nk,0.01,"Pixel (559, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyvqqccps7krq5c,0.01,"Pixel (560, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyvgqcc8s73pkvr,0.01,"Pixel (561, 198) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyvsqccrsk60y52,0.01,"Pixel (562, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyvcqccrsapxul9,0.01,"Pixel (563, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qydqqccpssf88vj,0.01,"Pixel (564, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qydgqccrs9psz33,0.01,"Pixel (565, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qydsqcc8sd27sfc,0.01,"Pixel (566, 198) Purple" +tpc1qcanvas0000000000000000000000000000000000000qydcqccrsn7zm80,0.01,"Pixel (567, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywqqccrsuj4nmq,0.01,"Pixel (568, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywgqccrshfuts0,0.01,"Pixel (569, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywsqccrs2d82d7,0.01,"Pixel (570, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywcqcc8s5emprf,0.01,"Pixel (571, 198) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy0qqccrsjd35r2,0.01,"Pixel (572, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0gqccrsekcvg9,0.01,"Pixel (573, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0sqcc8s3ak7sv,0.01,"Pixel (574, 198) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy0cqccrs0f247m,0.01,"Pixel (575, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qysqqcc8selrg5t,0.01,"Pixel (576, 198) Purple" +tpc1qcanvas0000000000000000000000000000000000000qysgqccpsecp7vs,0.01,"Pixel (577, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyssqccrs60yz8d,0.01,"Pixel (578, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyscqccrs35d6vz,0.01,"Pixel (579, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3qqccrsz0jufe,0.01,"Pixel (580, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3gqccrsf5myzk,0.01,"Pixel (581, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3sqccrs5sq9l8,0.01,"Pixel (582, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3cqccrsltfa5g,0.01,"Pixel (583, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyjqqccrss874g8,0.01,"Pixel (584, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyjgqcc8swnz7xs,0.01,"Pixel (585, 198) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyjsqccrsxcvv7e,0.01,"Pixel (586, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyjcqccpsnsmfr6,0.01,"Pixel (587, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qynqqccpsqty0xp,0.01,"Pixel (588, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyngqccpstsdhdw,0.01,"Pixel (589, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qynsqccpsk5kksl,0.01,"Pixel (590, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyncqccpsa0lwms,0.01,"Pixel (591, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qy5qqccrsahx82j,0.01,"Pixel (592, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy5gqccpsgl3zh3,0.01,"Pixel (593, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qy5sqccps4m2r2q,0.01,"Pixel (594, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qy5cqccps7qrmp0,0.01,"Pixel (595, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qy4qqccrsngzqjc,0.01,"Pixel (596, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy4gqccpsxq490m,0.01,"Pixel (597, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qy4sqccpsmywyj2,0.01,"Pixel (598, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qy4cqccpssl8ue9,0.01,"Pixel (599, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qykqqcc8s50m6k7,0.01,"Pixel (600, 198) Purple" +tpc1qcanvas0000000000000000000000000000000000000qykgqccrs2m83cf,0.01,"Pixel (601, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyksqcc8szsfrqq,0.01,"Pixel (602, 198) Purple" +tpc1qcanvas0000000000000000000000000000000000000qykcqccrsuy4gwh,0.01,"Pixel (603, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyhqqcc8s6slaw5,0.01,"Pixel (604, 198) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyhgqccrsyyrkqr,0.01,"Pixel (605, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyhsqccps8nx2t7,0.01,"Pixel (606, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyhcqccrsjm30ka,0.01,"Pixel (607, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qycqqcc8sj32etf,0.01,"Pixel (608, 198) Purple" +tpc1qcanvas0000000000000000000000000000000000000qycgqccrsv9kj97,0.01,"Pixel (609, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qycsqccrs3pdnc0,0.01,"Pixel (610, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyccqccpsyf6k9v,0.01,"Pixel (611, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyeqqcc8suww7nr,0.01,"Pixel (612, 198) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyegqccrsz6j4a5,0.01,"Pixel (613, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyesqccpspdhfkf,0.01,"Pixel (614, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyecqccrs59qvt2,0.01,"Pixel (615, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy6qqccps96fepf,0.01,"Pixel (616, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qy6gqccrssj7uu2,0.01,"Pixel (617, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy6sqcc8sceswyr,0.01,"Pixel (618, 198) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy6cqccrsxdv925,0.01,"Pixel (619, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymqqccpst9d7er,0.01,"Pixel (620, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qymgqccrs7d6myq,0.01,"Pixel (621, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymsqccrsrfp6e3,0.01,"Pixel (622, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymcqccrsgjgzj7,0.01,"Pixel (623, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyuqqccrske0k4s,0.01,"Pixel (624, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyugqccrsazxw7l,0.01,"Pixel (625, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyusqccrsqxa0rw,0.01,"Pixel (626, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyucqccrsta5hgp,0.01,"Pixel (627, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyaqqccrscxt3d6,0.01,"Pixel (628, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyagqccrsnazfx4,0.01,"Pixel (629, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyasqccrsweegmy,0.01,"Pixel (630, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyacqccrs9zssst,0.01,"Pixel (631, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy7qqcc8slpjtfu,0.01,"Pixel (632, 198) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy7gqccrsp4wq8t,0.01,"Pixel (633, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy7sqccpszztuvk,0.01,"Pixel (634, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qy7cqccpsfezy8e,0.01,"Pixel (635, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qylqqccps6zazzz,0.01,"Pixel (636, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qylgqccpqycuzu7,0.01,"Pixel (637, 198) Grey" +tpc1qcanvas0000000000000000000000000000000000000qylsqccpsva0m5u,0.01,"Pixel (638, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qylcqccps8xxrln,0.01,"Pixel (639, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qqqccpseq6uc3,0.01,"Pixel (640, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qgqccpsjmnyn7,0.01,"Pixel (641, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qsqccps0lg9w0,0.01,"Pixel (642, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qcqccpsyypa9q,0.01,"Pixel (643, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pqqccpshl7mqm,0.01,"Pixel (644, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pgqccpsuyhrt5,0.01,"Pixel (645, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9psqccpspqvzk9,0.01,"Pixel (646, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pcqccps2m96a2,0.01,"Pixel (647, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zqqccps9hjjp9,0.01,"Pixel (648, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zgqccpswvm222,0.01,"Pixel (649, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zsqccpsngqthm,0.01,"Pixel (650, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zcqccpscnfnu5,0.01,"Pixel (651, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rqqccpstgk4e0,0.01,"Pixel (652, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rgqccpsqnldjq,0.01,"Pixel (653, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rsqccpsahyv03,0.01,"Pixel (654, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rcqccpskvd5y7,0.01,"Pixel (655, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9yqqccpsg82qrs,0.01,"Pixel (656, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ygqccpsrurcgl,0.01,"Pixel (657, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ysqccps7cce4w,0.01,"Pixel (658, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ycqccps4r3p7p,0.01,"Pixel (659, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q99qqccpsxcw8m6,0.01,"Pixel (660, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q99gqccpsdr8ls4,0.01,"Pixel (661, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqqqcupsvhhr0q,0.01,"Pixel (512, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqgqcups8v7my0,0.01,"Pixel (513, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqsqcupq0fdzvd,0.01,"Pixel (514, 199) Grey" +tpc1qcanvas0000000000000000000000000000000000000qyqcqcups3nvzj3,0.01,"Pixel (515, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qypqqcupszgnyh2,0.01,"Pixel (516, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qypgqcupsfn6uu9,0.01,"Pixel (517, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qypsqcupqpkf958,0.01,"Pixel (518, 199) Grey" +tpc1qcanvas0000000000000000000000000000000000000qypcqcupslvg92m,0.01,"Pixel (519, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzqqcupssqldk5,0.01,"Pixel (520, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzgqcupsmmk4am,0.01,"Pixel (521, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzsqcupqn79v4e,0.01,"Pixel (522, 199) Grey" +tpc1qcanvas0000000000000000000000000000000000000qyzcqcupsdyyvt9,0.01,"Pixel (523, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrqqcups7lm2w7,0.01,"Pixel (524, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrgqcups4yjj93,0.01,"Pixel (525, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrsqcupqapptdn,0.01,"Pixel (526, 199) Grey" +tpc1qcanvas0000000000000000000000000000000000000qyrcqcupsrmqtn0,0.01,"Pixel (527, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyyqqcupsas8l5p,0.01,"Pixel (528, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyygqcupsktw8lw,0.01,"Pixel (529, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyysqcupst04xzl,0.01,"Pixel (530, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyycqcurs78zrlu,0.01,"Pixel (531, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy9qqcursdua968,0.01,"Pixel (532, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy9gqcupsc52q8y,0.01,"Pixel (533, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy9sqcups9s3p64,0.01,"Pixel (534, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy9cqcursscxy8k,0.01,"Pixel (535, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyxqqcupsp803d4,0.01,"Pixel (536, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyxgqcups2uxfx6,0.01,"Pixel (537, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyxsqcursftr4d8,0.01,"Pixel (538, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyxcqcupsur5ssy,0.01,"Pixel (539, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy8qqcurs3t4trn,0.01,"Pixel (540, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8gqcurs6sungu,0.01,"Pixel (541, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8sqcurs858j4d,0.01,"Pixel (542, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8cqcursv0w27z,0.01,"Pixel (543, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygqqcurse2q0xw,0.01,"Pixel (544, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyggqcursj3fhdp,0.01,"Pixel (545, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygsqcurs04jkss,0.01,"Pixel (546, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygcqcu8s3pwa78,0.01,"Pixel (547, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyfqqcursh4yg7y,0.01,"Pixel (548, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyfgqcursuwds4t,0.01,"Pixel (549, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyfsqcu8s59rzdz,0.01,"Pixel (550, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyfcqcurs23lfr4,0.01,"Pixel (551, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2qqcurs9agpl6,0.01,"Pixel (552, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2gqcurswxpe54,0.01,"Pixel (553, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2sqcursnz6cfy,0.01,"Pixel (554, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2cqcurscenqzt,0.01,"Pixel (555, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytqqcurstzvx8s,0.01,"Pixel (556, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytgqcursqe97vl,0.01,"Pixel (557, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytsqcursaa7l3w,0.01,"Pixel (558, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytcqcupsg4f6vd,0.01,"Pixel (559, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyvqqcursgdsna0,0.01,"Pixel (560, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyvgqcupsa98kqv,0.01,"Pixel (561, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyvsqcu8stahewf,0.01,"Pixel (562, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyvcqcupst640kj,0.01,"Pixel (563, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qydqqcu8snap8qa,0.01,"Pixel (564, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qydgqcursdfavw2,0.01,"Pixel (565, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qydsqcupsw7cs9h,0.01,"Pixel (566, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qydcqcursmk04c5,0.01,"Pixel (567, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywqqcurs56caym,0.01,"Pixel (568, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywgqcurslp3905,0.01,"Pixel (569, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywsqcursz92yj9,0.01,"Pixel (570, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywcqcu8su3k0uj,0.01,"Pixel (571, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy0qqcurs69u6u3,0.01,"Pixel (572, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0gqcurs374zh7,0.01,"Pixel (573, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0sqcursv6wr20,0.01,"Pixel (574, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0cqcurs8p8mpq,0.01,"Pixel (575, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qysqqcu8s3hwxts,0.01,"Pixel (576, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qysgqcups3svsnt,0.01,"Pixel (577, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyssqcursj8fvck,0.01,"Pixel (578, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyscqcurseuq5ne,0.01,"Pixel (579, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3qqcurs28ljkz,0.01,"Pixel (580, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3gqcurspuk2ad,0.01,"Pixel (581, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3sqcu8sfhcc9y,0.01,"Pixel (582, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy3cqcurshryntn,0.01,"Pixel (583, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyjqqcupsxudxps,0.01,"Pixel (584, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyjgqcupsd8y72l,0.01,"Pixel (585, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyjsqcurswspzpz,0.01,"Pixel (586, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyjcqcupsmck8up,0.01,"Pixel (587, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qynqqcupsgrfpe6,0.01,"Pixel (588, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyngqcursat7yye,0.01,"Pixel (589, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qynsqcups7umc0y,0.01,"Pixel (590, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyncqcups48jqyt,0.01,"Pixel (591, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy5qqcupstv45r9,0.01,"Pixel (592, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy5gqcupsqhuvg2,0.01,"Pixel (593, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy5sqcursrqesrh,0.01,"Pixel (594, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy5cqcupskgw475,0.01,"Pixel (595, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy4qqcursmq0wdr,0.01,"Pixel (596, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy4gqcupswgctsq,0.01,"Pixel (597, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy4sqcupsnvr2d3,0.01,"Pixel (598, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy4cqcupsch2jx7,0.01,"Pixel (599, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qykqqcursfgr8va,0.01,"Pixel (600, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qykgqcurszn2l8j,0.01,"Pixel (601, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyksqcurslh376r,0.01,"Pixel (602, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qykcqcu8sprd455,0.01,"Pixel (603, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyhqqcupseyeazm,0.01,"Pixel (604, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyhgqcursvvwclc,0.01,"Pixel (605, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyhsqcu8sy8q283,0.01,"Pixel (606, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyhcqcurs6nupfx,0.01,"Pixel (607, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qycqqcups39ve8x,0.01,"Pixel (608, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qycgqcursydmu69,0.01,"Pixel (609, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qycsqcu8svx4wzv,0.01,"Pixel (610, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyccqcursjjf9vm,0.01,"Pixel (611, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyeqqcupsl6g7lv,0.01,"Pixel (612, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyegqcurs2jlmz0,0.01,"Pixel (613, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyesqcu8sze3f6x,0.01,"Pixel (614, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyecqcursuddz53,0.01,"Pixel (615, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy6qqcupsdjyh7j,0.01,"Pixel (616, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy6gqcupsxfd04a,0.01,"Pixel (617, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy6sqcurs97gn7q,0.01,"Pixel (618, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy6cqcursw9pt40,0.01,"Pixel (619, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymqqcursa77ds5,0.01,"Pixel (620, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymgqcursk9h4mm,0.01,"Pixel (621, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymsqcurstpv5x2,0.01,"Pixel (622, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymcqcursq69vd9,0.01,"Pixel (623, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyuqqcu8st7ht0n,0.01,"Pixel (624, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyugqcurs42tqpy,0.01,"Pixel (625, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyusqcursgwspu4,0.01,"Pixel (626, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyucqcursr4eeh6,0.01,"Pixel (627, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyaqqcursswxljp,0.01,"Pixel (628, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyagqcursm408ew,0.01,"Pixel (629, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyasqcursx35xyl,0.01,"Pixel (630, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyacqcursd2a70s,0.01,"Pixel (631, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy7qqcu8shfl9k8,0.01,"Pixel (632, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy7gqcupshwanwu,0.01,"Pixel (633, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy7sqcupqltw2x7,0.01,"Pixel (634, 199) Grey" +tpc1qcanvas0000000000000000000000000000000000000qy7cqcupsp302cz,0.01,"Pixel (635, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qylqqcupsj2svae,0.01,"Pixel (636, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qylgqcupse3e5kk,0.01,"Pixel (637, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qylsqcupsy4z4t8,0.01,"Pixel (638, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qylcqcups0wtdqg,0.01,"Pixel (639, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qqqcups3ghj82,0.01,"Pixel (640, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qgqcupq0jkjek,0.01,"Pixel (641, 199) Grey" +tpc1qcanvas0000000000000000000000000000000000000q9qsqcups8h9t35,0.01,"Pixel (642, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qcqcupsvvvn6m,0.01,"Pixel (643, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pqqcupslhn4lq,0.01,"Pixel (644, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pgqcups5v6d50,0.01,"Pixel (645, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9psqcupsfgpvf7,0.01,"Pixel (646, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pcqcupszng5z3,0.01,"Pixel (647, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zqqcupsdllu77,0.01,"Pixel (648, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zgqcupsxyky43,0.01,"Pixel (649, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zsqcupsmqd9gq,0.01,"Pixel (650, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zcqcupssmyar0,0.01,"Pixel (651, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rqqcupsrqmmx5,0.01,"Pixel (652, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rgqcupsgmjrdm,0.01,"Pixel (653, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rsqcups4lfzs2,0.01,"Pixel (654, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rcqcups7yq6m9,0.01,"Pixel (655, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9yqqcupsq08wut,0.01,"Pixel (656, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ygqcupst5wkhy,0.01,"Pixel (657, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ysqcupsks4h24,0.01,"Pixel (658, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ycqcupsatu0p6,0.01,"Pixel (659, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q99qqcupswsrfyp,0.01,"Pixel (660, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q99gqcups9t230w,0.01,"Pixel (661, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqqqeqpsv2t6t7,0.01,"Pixel (512, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqgqeqps83zzq3,0.01,"Pixel (513, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqsqeqps64eraq,0.01,"Pixel (514, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqcqeqps3wsmk0,0.01,"Pixel (515, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qypqqeqpqh589x8,0.01,"Pixel (516, 200) Grey" +tpc1qcanvas0000000000000000000000000000000000000qypgqeqpsfwx9cm,0.01,"Pixel (517, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qypsqeqps52ay92,0.01,"Pixel (518, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qypcqeqpsl35uw9,0.01,"Pixel (519, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzqqeqpq9utv8e,0.01,"Pixel (520, 200) Grey" +tpc1qcanvas0000000000000000000000000000000000000qyzgqeqpsmx2ve9,0.01,"Pixel (521, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzsqeqpsxz3dy5,0.01,"Pixel (522, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzcqeqpsdec40m,0.01,"Pixel (523, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrqqeqpqtr0tln,0.01,"Pixel (524, 200) Grey" +tpc1qcanvas0000000000000000000000000000000000000qyrgqeqps4ewtp0,0.01,"Pixel (525, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrsqeqpsga42u7,0.01,"Pixel (526, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrcqeqpsrxujh3,0.01,"Pixel (527, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyyqqeqpsadmxsl,0.01,"Pixel (528, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyygqeqpskkj7ms,0.01,"Pixel (529, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyysqeqrs4phzsd,0.01,"Pixel (530, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyycqeqpsqfq8dw,0.01,"Pixel (531, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qy9qqeqpsnjlpg4,0.01,"Pixel (532, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qy9gqeqrsx6gy4k,0.01,"Pixel (533, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy9sqeq8sw3xkdl,0.01,"Pixel (534, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy9cqeqpswkyq4y,0.01,"Pixel (535, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyxqqeqrslfd4l8,0.01,"Pixel (536, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyxgqeqps2p6szy,0.01,"Pixel (537, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyxsqeqrsfklvfe,0.01,"Pixel (538, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyxcqeq8shzr88w,0.01,"Pixel (539, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy8qqeqrs3kfj8d,0.01,"Pixel (540, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8gqeqrs6dq2vz,0.01,"Pixel (541, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8sqeqrs8fmt3n,0.01,"Pixel (542, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8cqeqrsvjjn6u,0.01,"Pixel (543, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygqqeqrsehukzs,0.01,"Pixel (544, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyggqeqrsjv4wfl,0.01,"Pixel (545, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygsqeqrs0gw05w,0.01,"Pixel (546, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygcqeqps6qe2fd,0.01,"Pixel (547, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyfqqeqpsfmxvvk,0.01,"Pixel (548, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyfgqeqrsun3f34,0.01,"Pixel (549, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyfsqeqrsph2gvy,0.01,"Pixel (550, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyfcqeqrs2vrs8t,0.01,"Pixel (551, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2qqeqrs9q5cmy,0.01,"Pixel (552, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2gqeqrswmaqst,0.01,"Pixel (553, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2sqeqrsnlxpd6,0.01,"Pixel (554, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2cqeqrscy0ex4,0.01,"Pixel (555, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytqqeqrstlslrw,0.01,"Pixel (556, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytgqeqrsqye8gp,0.01,"Pixel (557, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytsqeqrsaqzx4s,0.01,"Pixel (558, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytcqeqpsgg4rgn,0.01,"Pixel (559, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyvqqeqpskrjh0a,0.01,"Pixel (560, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyvgqeqrsrt9jj7,0.01,"Pixel (561, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyvsqeqpsquqwer,0.01,"Pixel (562, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyvcqeqrs45htyq,0.01,"Pixel (563, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qydqqeqpscukshh,0.01,"Pixel (564, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qydgqeq8scm5x0v,0.01,"Pixel (565, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qydsqeqrsss65h9,0.01,"Pixel (566, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qydcqeqrsmtnvu2,0.01,"Pixel (567, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywqqeqrs58yyq9,0.01,"Pixel (568, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywgqeqrsludut2,0.01,"Pixel (569, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywsqeqrszckakm,0.01,"Pixel (570, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywcqeqrsfrl9a5,0.01,"Pixel (571, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0qqeqrs6cqrc0,0.01,"Pixel (572, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0gqeqrs3rfmnq,0.01,"Pixel (573, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0sqeqrsv8j6w3,0.01,"Pixel (574, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0cqeqrs8umz97,0.01,"Pixel (575, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qysqqeq8s32jl0w,0.01,"Pixel (576, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qysgqeqrs07w5pe,0.01,"Pixel (577, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyssqeqpsvftg2y,0.01,"Pixel (578, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyscqeqrsepudh8,0.01,"Pixel (579, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3qqeqrs26rtju,0.01,"Pixel (580, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3gqeqrspp2nen,0.01,"Pixel (581, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3sqeqpszk00jw,0.01,"Pixel (582, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qy3cqeqpsfdxhep,0.01,"Pixel (583, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyjqqeqpsxp3l9w,0.01,"Pixel (584, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyjgqeqrsnfx6cd,0.01,"Pixel (585, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyjsqeqpss7rxns,0.01,"Pixel (586, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyjcqeqpsm927cl,0.01,"Pixel (587, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qynqqeqpsg74cay,0.01,"Pixel (588, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyngqeqpsr9uqkt,0.01,"Pixel (589, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qynsqeqrsqjeuak,0.01,"Pixel (590, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyncqeqps46weq4,0.01,"Pixel (591, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qy5qqeqrs4zhs3h,0.01,"Pixel (592, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy5gqeq8stktmlq,0.01,"Pixel (593, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy5sqeqrsra9f8f,0.01,"Pixel (594, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy5cqeqrsgxv3vx,0.01,"Pixel (595, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy4qqeqrsmanhfa,0.01,"Pixel (596, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy4gqeqrssx60zj,0.01,"Pixel (597, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy4sqeqpsn3lnf0,0.01,"Pixel (598, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qy4cqeqpsc2ktzq,0.01,"Pixel (599, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qykqqeq8su62ddm,0.01,"Pixel (600, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qykgqeqrszwkxrv,0.01,"Pixel (601, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyksqeq8s29c5m9,0.01,"Pixel (602, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qykcqeqrs53yl4j,0.01,"Pixel (603, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyhqqeqrs82mesf,0.01,"Pixel (604, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyhgqeqrsv3jpmx,0.01,"Pixel (605, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyhsqeqps0xhasm,0.01,"Pixel (606, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyhcqeq8s0p4tgq,0.01,"Pixel (607, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qycqqeq8s6ymwsv,0.01,"Pixel (608, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qycgqeqrsys897m,0.01,"Pixel (609, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qycsqeqps88ze4x,0.01,"Pixel (610, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyccqeq8s8qq0da,0.01,"Pixel (611, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyeqqeqrsp526d7,0.01,"Pixel (612, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyegqeqps5ualsa,0.01,"Pixel (613, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyesqeq8szyds7c,0.01,"Pixel (614, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyecqeqpszr0xxr,0.01,"Pixel (615, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qy6qqeqrsnuxnvq,0.01,"Pixel (616, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy6gqeq8sdg6czh,0.01,"Pixel (617, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy6sqeqrs9r5267,0.01,"Pixel (618, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy6cqeqpsstr08a,0.01,"Pixel (619, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qymqqeqrsarz552,0.01,"Pixel (620, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymgqeqrskctvl9,0.01,"Pixel (621, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymsqeqrstusdz5,0.01,"Pixel (622, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymcqeqrsq8e4fm,0.01,"Pixel (623, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyuqqeqrs7v7pw4,0.01,"Pixel (624, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyugqeqrs4hhe96,0.01,"Pixel (625, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyusqeqrsgnvcct,0.01,"Pixel (626, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyucqeqrsrg9qny,0.01,"Pixel (627, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyaqqeqrssn6xkl,0.01,"Pixel (628, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyagqeqrsmgn7as,0.01,"Pixel (629, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyasqeqrsxvglqp,0.01,"Pixel (630, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyacqeqrsdhp8tw,0.01,"Pixel (631, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy7qqeqrszmk0hp,0.01,"Pixel (632, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy7gqeqpshnp22z,0.01,"Pixel (633, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qy7sqeqps2h6thn,0.01,"Pixel (634, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qy7cqeqpspvnnuu,0.01,"Pixel (635, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qylqqeqpsjhv4e8,0.01,"Pixel (636, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qylgqeqpsev9djg,0.01,"Pixel (637, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qylsqeqpsyg7v0e,0.01,"Pixel (638, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qylcqeqps0nh5yk,0.01,"Pixel (639, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qqqeqps34ttr5,0.01,"Pixel (640, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qgqeqps6wzngm,0.01,"Pixel (641, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qsqeqps82ej42,0.01,"Pixel (642, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qcqeqpsv3s279,0.01,"Pixel (643, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pqqeqpsl20vm7,0.01,"Pixel (644, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pgqeqps53x5s3,0.01,"Pixel (645, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9psqeqpsf4a4dq,0.01,"Pixel (646, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pcqeqpszw5dx0,0.01,"Pixel (647, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zqqeqpsdzr96q,0.01,"Pixel (648, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zgqeqpsxe2a30,0.01,"Pixel (649, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zsqeqpsma3uv7,0.01,"Pixel (650, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zcqeqpssxcy83,0.01,"Pixel (651, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rqqeqpsra8zz2,0.01,"Pixel (652, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rgqeqpsgxw6f9,0.01,"Pixel (653, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rsqeqps4z4m55,0.01,"Pixel (654, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rcqeqps7eurlm,0.01,"Pixel (655, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9yqqeqpsqjmhc4,0.01,"Pixel (656, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ygqeqpstfj0n6,0.01,"Pixel (657, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ysqeqpskdfwwt,0.01,"Pixel (658, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ycqeqpsakqk9y,0.01,"Pixel (659, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q99qqeqpswdlsql,0.01,"Pixel (660, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q99gqeqps9kkgts,0.01,"Pixel (661, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqqqeypsyzx559,0.01,"Pixel (512, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqgqeyps0e0vl2,0.01,"Pixel (513, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqsqeypsja5dzm,0.01,"Pixel (514, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqcqeypsexa4f5,0.01,"Pixel (515, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qypqqeyps2aznv0,0.01,"Pixel (516, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qypgqeypspxtt8q,0.01,"Pixel (517, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qypsqeypsuzs263,0.01,"Pixel (518, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qypcqeypsheej37,0.01,"Pixel (519, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzqqeypsc4w6d3,0.01,"Pixel (520, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzgqeypsnw8zx7,0.01,"Pixel (521, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzsqeypsw2urm0,0.01,"Pixel (522, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzcqeyps934msq,0.01,"Pixel (523, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrqqeypsk22a4m,0.01,"Pixel (524, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrgqeypsa3r975,0.01,"Pixel (525, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrsqeypsq4cyr9,0.01,"Pixel (526, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrcqeypstw3ug2,0.01,"Pixel (527, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyyqqeyps49kg0y,0.01,"Pixel (528, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyygqeyps77lsyt,0.01,"Pixel (529, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyysqeypsr6y3e6,0.01,"Pixel (530, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyycqeypsgpdfj4,0.01,"Pixel (531, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qy9qqeypsm6j0hw,0.01,"Pixel (532, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qy9gqeypsspmhup,0.01,"Pixel (533, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qy9sqeyrsnk7thu,0.01,"Pixel (534, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy9cqey8sdzzqet,0.01,"Pixel (535, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyxqqeyrshpqmqu,0.01,"Pixel (536, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyxgqeypszfh7al,0.01,"Pixel (537, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyxsqeyrsp7jzkz,0.01,"Pixel (538, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyxcqeyrs29m6ad,0.01,"Pixel (539, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8qqeyrse7yuck,0.01,"Pixel (540, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8gqeyrsj9dyne,0.01,"Pixel (541, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8sqeyrs0pk9wg,0.01,"Pixel (542, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8cqeyrsy6la98,0.01,"Pixel (543, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygqqeyrs3l3cat,0.01,"Pixel (544, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyggqeyrs6ycqky,0.01,"Pixel (545, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygsqey8sj0kjwd,0.01,"Pixel (546, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qygcqeyrsvm2eq6,0.01,"Pixel (547, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyfqqeyrslq4l9p,0.01,"Pixel (548, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyfgqeyrs5mu8ww,0.01,"Pixel (549, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyfsqeyrsfl8xnl,0.01,"Pixel (550, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyfcqeyrszyw7cs,0.01,"Pixel (551, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2qqeyrsdgekyl,0.01,"Pixel (552, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2gqeyrsxnsw0s,0.01,"Pixel (553, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2sqeyrsmht0jp,0.01,"Pixel (554, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2cqeyrssvzhew,0.01,"Pixel (555, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytqqeyrsrha3u4,0.01,"Pixel (556, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytgqeyrsgv5fh6,0.01,"Pixel (557, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytsqey8sq86m0n,0.01,"Pixel (558, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qytcqeyrs7nxspy,0.01,"Pixel (559, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyvqqey8s4h5hrj,0.01,"Pixel (560, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyvgqeyrstrgud9,0.01,"Pixel (561, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyvsqeypsg5dqxc,0.01,"Pixel (562, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyvcqeypsr0ycdh,0.01,"Pixel (563, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qydqqeyrsw89r7q,0.01,"Pixel (564, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qydgqeypsm0jxrr,0.01,"Pixel (565, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qydsqeypsxtf87j,0.01,"Pixel (566, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qydcqeyrsnr7zr3,0.01,"Pixel (567, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywqqeypszuhhfj,0.01,"Pixel (568, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qywgqeyrsh5qj53,0.01,"Pixel (569, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywsqeyrs2smnfq,0.01,"Pixel (570, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywcqeyrsptjtz0,0.01,"Pixel (571, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0qqeyrsjsdd85,0.01,"Pixel (572, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0gqeyrsety4vm,0.01,"Pixel (573, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0sqeyrsy0l532,0.01,"Pixel (574, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0cqeyrs05kv69,0.01,"Pixel (575, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qysqqey8sezl3s4,0.01,"Pixel (576, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qysgqeyrs8kr67z,0.01,"Pixel (577, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyssqey8s0adgxt,0.01,"Pixel (578, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyscqeyps06077s,0.01,"Pixel (579, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qy3qqeypsupscmt,0.01,"Pixel (580, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qy3gqeyrsff8axg,0.01,"Pixel (581, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3sqeyps27zpd4,0.01,"Pixel (582, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qy3cqeypsp9tex6,0.01,"Pixel (583, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyjqqeypswfu364,0.01,"Pixel (584, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyjgqeyps9j4f36,0.01,"Pixel (585, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyjsqeyrsx9s468,0.01,"Pixel (586, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyjcqeypsnd8s8y,0.01,"Pixel (587, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qynqqeyrs79xt5n,0.01,"Pixel (588, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyngqeypstd3wfs,0.01,"Pixel (589, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qynsqeyrsg65jzd,0.01,"Pixel (590, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyncqeyrsrpa2fz,0.01,"Pixel (591, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy5qqeyrsa267wv,0.01,"Pixel (592, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy5gqeyrsk3nx9r,0.01,"Pixel (593, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy5sqeyzsyg8an5,0.01,"Pixel (594, 201) Red" +tpc1qcanvas0000000000000000000000000000000000000qy5cqey8s4p5vk9,0.01,"Pixel (595, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy4qqeyzsug3raq,0.01,"Pixel (596, 201) Red" +tpc1qcanvas0000000000000000000000000000000000000qy4gqeyrscwhpaf,0.01,"Pixel (597, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy4sqeyrs92vqqc,0.01,"Pixel (598, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy4cqeyrsw39cth,0.01,"Pixel (599, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qykqqeyrspajshc,0.01,"Pixel (600, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qykgqeyrs2xmguh,0.01,"Pixel (601, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyksqeyrshzqfpx,0.01,"Pixel (602, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qykcqey8sfkuz03,0.01,"Pixel (603, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyhqqeyrs0zkh0j,0.01,"Pixel (604, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyhgqeyps62pjj3,0.01,"Pixel (605, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyhsqeyps8w6n0q,0.01,"Pixel (606, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyhcqeypsv4nty0,0.01,"Pixel (607, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qycqqeyrs8rrn20,0.01,"Pixel (608, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qycgqeyrsvc2tpq,0.01,"Pixel (609, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qycsqeyrs3u32u3,0.01,"Pixel (610, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyccqey8s0gdpjx,0.01,"Pixel (611, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyeqqeyrsfu85j9,0.01,"Pixel (612, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyegqeyrsz8wve2,0.01,"Pixel (613, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyesqey8s2vq7pr,0.01,"Pixel (614, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyecqeyrs5cu405,0.01,"Pixel (615, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy6qqeyps984q9h,0.01,"Pixel (616, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qy6gqeyrss0z9c5,0.01,"Pixel (617, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy6sqey8scyvhqa,0.01,"Pixel (618, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy6cqeyrsxssuw2,0.01,"Pixel (619, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymqqey8sqy6fwf,0.01,"Pixel (620, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qymgqeyrs7sxzq7,0.01,"Pixel (621, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymsqeyrsr5ara0,0.01,"Pixel (622, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymcqeyrsg05mkq,0.01,"Pixel (623, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyuqqey8srtxu5k,0.01,"Pixel (624, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyugqeyrsal6h6p,0.01,"Pixel (625, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyusqeyrsqmpk8s,0.01,"Pixel (626, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyucqeyrstqgwvl,0.01,"Pixel (627, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyaqqeyrscmhgfy,0.01,"Pixel (628, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyagqeyrsnq7szt,0.01,"Pixel (629, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyasqeyrswy93l6,0.01,"Pixel (630, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyacqeyrs9lvf54,0.01,"Pixel (631, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy7qqey8sluwjdz,0.01,"Pixel (632, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy7gqeypslmvy4e,0.01,"Pixel (633, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qy7sqeypszlh9gg,0.01,"Pixel (634, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qy7cqeypsfy7ar8,0.01,"Pixel (635, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qylqqeypq07frn0,0.01,"Pixel (636, 201) Grey" +tpc1qcanvas0000000000000000000000000000000000000qylgqeyps3ygrdn,0.01,"Pixel (637, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qylsqeypsvqnzsz,0.01,"Pixel (638, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qylcqeyps8m66md,0.01,"Pixel (639, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qqqeypseax9u0,0.01,"Pixel (640, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qgqeypsjx0ahq,0.01,"Pixel (641, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qsqeyps0z5u23,0.01,"Pixel (642, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qcqeypsyeayp7,0.01,"Pixel (643, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pqqeypshzzzy9,0.01,"Pixel (644, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pgqeypsuet602,0.01,"Pixel (645, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9psqeypspasmjm,0.01,"Pixel (646, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pcqeyps2xere5,0.01,"Pixel (647, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zqqeyps92wt9m,0.01,"Pixel (648, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zgqeypsw38nw5,0.01,"Pixel (649, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zsqeypsn4ujn9,0.01,"Pixel (650, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zcqeypscw42c2,0.01,"Pixel (651, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rqqeypst42va3,0.01,"Pixel (652, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rgqeypsqwr5k7,0.01,"Pixel (653, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rsqeypsa2c4t0,0.01,"Pixel (654, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rcqeypsk33dqq,0.01,"Pixel (655, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9yqqeypsg6ke8w,0.01,"Pixel (656, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ygqeypsrplpvp,0.01,"Pixel (657, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ysqeyps79yq3s,0.01,"Pixel (658, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ycqeyps47dc6l,0.01,"Pixel (659, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q99qqeypsx9j7ly,0.01,"Pixel (660, 201) Black" diff --git a/test/csvs/test_500.csv b/test/csvs/test_500.csv new file mode 100644 index 00000000..e43a893d --- /dev/null +++ b/test/csvs/test_500.csv @@ -0,0 +1,500 @@ +tpc1qcanvas0000000000000000000000000000000000000qyccqccpsyf6k9v,0.01,"Pixel (611, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyeqqcc8suww7nr,0.01,"Pixel (612, 198) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyegqccrsz6j4a5,0.01,"Pixel (613, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyesqccpspdhfkf,0.01,"Pixel (614, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyecqccrs59qvt2,0.01,"Pixel (615, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy6qqccps96fepf,0.01,"Pixel (616, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qy6gqccrssj7uu2,0.01,"Pixel (617, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy6sqcc8sceswyr,0.01,"Pixel (618, 198) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy6cqccrsxdv925,0.01,"Pixel (619, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymqqccpst9d7er,0.01,"Pixel (620, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qymgqccrs7d6myq,0.01,"Pixel (621, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymsqccrsrfp6e3,0.01,"Pixel (622, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymcqccrsgjgzj7,0.01,"Pixel (623, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyuqqccrske0k4s,0.01,"Pixel (624, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyugqccrsazxw7l,0.01,"Pixel (625, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyusqccrsqxa0rw,0.01,"Pixel (626, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyucqccrsta5hgp,0.01,"Pixel (627, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyaqqccrscxt3d6,0.01,"Pixel (628, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyagqccrsnazfx4,0.01,"Pixel (629, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyasqccrsweegmy,0.01,"Pixel (630, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyacqccrs9zssst,0.01,"Pixel (631, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy7qqcc8slpjtfu,0.01,"Pixel (632, 198) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy7gqccrsp4wq8t,0.01,"Pixel (633, 198) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy7sqccpszztuvk,0.01,"Pixel (634, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qy7cqccpsfezy8e,0.01,"Pixel (635, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qylqqccps6zazzz,0.01,"Pixel (636, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qylgqccpqycuzu7,0.01,"Pixel (637, 198) Grey" +tpc1qcanvas0000000000000000000000000000000000000qylsqccpsva0m5u,0.01,"Pixel (638, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qylcqccps8xxrln,0.01,"Pixel (639, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qqqccpseq6uc3,0.01,"Pixel (640, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qgqccpsjmnyn7,0.01,"Pixel (641, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qsqccps0lg9w0,0.01,"Pixel (642, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qcqccpsyypa9q,0.01,"Pixel (643, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pqqccpshl7mqm,0.01,"Pixel (644, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pgqccpsuyhrt5,0.01,"Pixel (645, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9psqccpspqvzk9,0.01,"Pixel (646, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pcqccps2m96a2,0.01,"Pixel (647, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zqqccps9hjjp9,0.01,"Pixel (648, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zgqccpswvm222,0.01,"Pixel (649, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zsqccpsngqthm,0.01,"Pixel (650, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zcqccpscnfnu5,0.01,"Pixel (651, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rqqccpstgk4e0,0.01,"Pixel (652, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rgqccpsqnldjq,0.01,"Pixel (653, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rsqccpsahyv03,0.01,"Pixel (654, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rcqccpskvd5y7,0.01,"Pixel (655, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9yqqccpsg82qrs,0.01,"Pixel (656, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ygqccpsrurcgl,0.01,"Pixel (657, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ysqccps7cce4w,0.01,"Pixel (658, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ycqccps4r3p7p,0.01,"Pixel (659, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q99qqccpsxcw8m6,0.01,"Pixel (660, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000q99gqccpsdr8ls4,0.01,"Pixel (661, 198) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqqqcupsvhhr0q,0.01,"Pixel (512, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqgqcups8v7my0,0.01,"Pixel (513, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqsqcupq0fdzvd,0.01,"Pixel (514, 199) Grey" +tpc1qcanvas0000000000000000000000000000000000000qyqcqcups3nvzj3,0.01,"Pixel (515, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qypqqcupszgnyh2,0.01,"Pixel (516, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qypgqcupsfn6uu9,0.01,"Pixel (517, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qypsqcupqpkf958,0.01,"Pixel (518, 199) Grey" +tpc1qcanvas0000000000000000000000000000000000000qypcqcupslvg92m,0.01,"Pixel (519, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzqqcupssqldk5,0.01,"Pixel (520, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzgqcupsmmk4am,0.01,"Pixel (521, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzsqcupqn79v4e,0.01,"Pixel (522, 199) Grey" +tpc1qcanvas0000000000000000000000000000000000000qyzcqcupsdyyvt9,0.01,"Pixel (523, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrqqcups7lm2w7,0.01,"Pixel (524, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrgqcups4yjj93,0.01,"Pixel (525, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrsqcupqapptdn,0.01,"Pixel (526, 199) Grey" +tpc1qcanvas0000000000000000000000000000000000000qyrcqcupsrmqtn0,0.01,"Pixel (527, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyyqqcupsas8l5p,0.01,"Pixel (528, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyygqcupsktw8lw,0.01,"Pixel (529, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyysqcupst04xzl,0.01,"Pixel (530, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyycqcurs78zrlu,0.01,"Pixel (531, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy9qqcursdua968,0.01,"Pixel (532, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy9gqcupsc52q8y,0.01,"Pixel (533, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy9sqcups9s3p64,0.01,"Pixel (534, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy9cqcursscxy8k,0.01,"Pixel (535, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyxqqcupsp803d4,0.01,"Pixel (536, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyxgqcups2uxfx6,0.01,"Pixel (537, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyxsqcursftr4d8,0.01,"Pixel (538, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyxcqcupsur5ssy,0.01,"Pixel (539, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy8qqcurs3t4trn,0.01,"Pixel (540, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8gqcurs6sungu,0.01,"Pixel (541, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8sqcurs858j4d,0.01,"Pixel (542, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8cqcursv0w27z,0.01,"Pixel (543, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygqqcurse2q0xw,0.01,"Pixel (544, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyggqcursj3fhdp,0.01,"Pixel (545, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygsqcurs04jkss,0.01,"Pixel (546, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygcqcu8s3pwa78,0.01,"Pixel (547, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyfqqcursh4yg7y,0.01,"Pixel (548, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyfgqcursuwds4t,0.01,"Pixel (549, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyfsqcu8s59rzdz,0.01,"Pixel (550, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyfcqcurs23lfr4,0.01,"Pixel (551, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2qqcurs9agpl6,0.01,"Pixel (552, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2gqcurswxpe54,0.01,"Pixel (553, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2sqcursnz6cfy,0.01,"Pixel (554, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2cqcurscenqzt,0.01,"Pixel (555, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytqqcurstzvx8s,0.01,"Pixel (556, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytgqcursqe97vl,0.01,"Pixel (557, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytsqcursaa7l3w,0.01,"Pixel (558, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytcqcupsg4f6vd,0.01,"Pixel (559, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyvqqcursgdsna0,0.01,"Pixel (560, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyvgqcupsa98kqv,0.01,"Pixel (561, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyvsqcu8stahewf,0.01,"Pixel (562, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyvcqcupst640kj,0.01,"Pixel (563, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qydqqcu8snap8qa,0.01,"Pixel (564, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qydgqcursdfavw2,0.01,"Pixel (565, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qydsqcupsw7cs9h,0.01,"Pixel (566, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qydcqcursmk04c5,0.01,"Pixel (567, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywqqcurs56caym,0.01,"Pixel (568, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywgqcurslp3905,0.01,"Pixel (569, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywsqcursz92yj9,0.01,"Pixel (570, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywcqcu8su3k0uj,0.01,"Pixel (571, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy0qqcurs69u6u3,0.01,"Pixel (572, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0gqcurs374zh7,0.01,"Pixel (573, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0sqcursv6wr20,0.01,"Pixel (574, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0cqcurs8p8mpq,0.01,"Pixel (575, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qysqqcu8s3hwxts,0.01,"Pixel (576, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qysgqcups3svsnt,0.01,"Pixel (577, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyssqcursj8fvck,0.01,"Pixel (578, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyscqcurseuq5ne,0.01,"Pixel (579, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3qqcurs28ljkz,0.01,"Pixel (580, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3gqcurspuk2ad,0.01,"Pixel (581, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3sqcu8sfhcc9y,0.01,"Pixel (582, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy3cqcurshryntn,0.01,"Pixel (583, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyjqqcupsxudxps,0.01,"Pixel (584, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyjgqcupsd8y72l,0.01,"Pixel (585, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyjsqcurswspzpz,0.01,"Pixel (586, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyjcqcupsmck8up,0.01,"Pixel (587, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qynqqcupsgrfpe6,0.01,"Pixel (588, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyngqcursat7yye,0.01,"Pixel (589, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qynsqcups7umc0y,0.01,"Pixel (590, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyncqcups48jqyt,0.01,"Pixel (591, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy5qqcupstv45r9,0.01,"Pixel (592, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy5gqcupsqhuvg2,0.01,"Pixel (593, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy5sqcursrqesrh,0.01,"Pixel (594, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy5cqcupskgw475,0.01,"Pixel (595, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy4qqcursmq0wdr,0.01,"Pixel (596, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy4gqcupswgctsq,0.01,"Pixel (597, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy4sqcupsnvr2d3,0.01,"Pixel (598, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy4cqcupsch2jx7,0.01,"Pixel (599, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qykqqcursfgr8va,0.01,"Pixel (600, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qykgqcurszn2l8j,0.01,"Pixel (601, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyksqcurslh376r,0.01,"Pixel (602, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qykcqcu8sprd455,0.01,"Pixel (603, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyhqqcupseyeazm,0.01,"Pixel (604, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyhgqcursvvwclc,0.01,"Pixel (605, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyhsqcu8sy8q283,0.01,"Pixel (606, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyhcqcurs6nupfx,0.01,"Pixel (607, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qycqqcups39ve8x,0.01,"Pixel (608, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qycgqcursydmu69,0.01,"Pixel (609, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qycsqcu8svx4wzv,0.01,"Pixel (610, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyccqcursjjf9vm,0.01,"Pixel (611, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyeqqcupsl6g7lv,0.01,"Pixel (612, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyegqcurs2jlmz0,0.01,"Pixel (613, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyesqcu8sze3f6x,0.01,"Pixel (614, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyecqcursuddz53,0.01,"Pixel (615, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy6qqcupsdjyh7j,0.01,"Pixel (616, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy6gqcupsxfd04a,0.01,"Pixel (617, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy6sqcurs97gn7q,0.01,"Pixel (618, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy6cqcursw9pt40,0.01,"Pixel (619, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymqqcursa77ds5,0.01,"Pixel (620, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymgqcursk9h4mm,0.01,"Pixel (621, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymsqcurstpv5x2,0.01,"Pixel (622, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymcqcursq69vd9,0.01,"Pixel (623, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyuqqcu8st7ht0n,0.01,"Pixel (624, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyugqcurs42tqpy,0.01,"Pixel (625, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyusqcursgwspu4,0.01,"Pixel (626, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyucqcursr4eeh6,0.01,"Pixel (627, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyaqqcursswxljp,0.01,"Pixel (628, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyagqcursm408ew,0.01,"Pixel (629, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyasqcursx35xyl,0.01,"Pixel (630, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyacqcursd2a70s,0.01,"Pixel (631, 199) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy7qqcu8shfl9k8,0.01,"Pixel (632, 199) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy7gqcupshwanwu,0.01,"Pixel (633, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qy7sqcupqltw2x7,0.01,"Pixel (634, 199) Grey" +tpc1qcanvas0000000000000000000000000000000000000qy7cqcupsp302cz,0.01,"Pixel (635, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qylqqcupsj2svae,0.01,"Pixel (636, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qylgqcupse3e5kk,0.01,"Pixel (637, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qylsqcupsy4z4t8,0.01,"Pixel (638, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qylcqcups0wtdqg,0.01,"Pixel (639, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qqqcups3ghj82,0.01,"Pixel (640, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qgqcupq0jkjek,0.01,"Pixel (641, 199) Grey" +tpc1qcanvas0000000000000000000000000000000000000q9qsqcups8h9t35,0.01,"Pixel (642, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qcqcupsvvvn6m,0.01,"Pixel (643, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pqqcupslhn4lq,0.01,"Pixel (644, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pgqcups5v6d50,0.01,"Pixel (645, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9psqcupsfgpvf7,0.01,"Pixel (646, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pcqcupszng5z3,0.01,"Pixel (647, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zqqcupsdllu77,0.01,"Pixel (648, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zgqcupsxyky43,0.01,"Pixel (649, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zsqcupsmqd9gq,0.01,"Pixel (650, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zcqcupssmyar0,0.01,"Pixel (651, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rqqcupsrqmmx5,0.01,"Pixel (652, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rgqcupsgmjrdm,0.01,"Pixel (653, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rsqcups4lfzs2,0.01,"Pixel (654, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rcqcups7yq6m9,0.01,"Pixel (655, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9yqqcupsq08wut,0.01,"Pixel (656, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ygqcupst5wkhy,0.01,"Pixel (657, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ysqcupsks4h24,0.01,"Pixel (658, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ycqcupsatu0p6,0.01,"Pixel (659, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q99qqcupswsrfyp,0.01,"Pixel (660, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000q99gqcups9t230w,0.01,"Pixel (661, 199) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqqqeqpsv2t6t7,0.01,"Pixel (512, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqgqeqps83zzq3,0.01,"Pixel (513, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqsqeqps64eraq,0.01,"Pixel (514, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqcqeqps3wsmk0,0.01,"Pixel (515, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qypqqeqpqh589x8,0.01,"Pixel (516, 200) Grey" +tpc1qcanvas0000000000000000000000000000000000000qypgqeqpsfwx9cm,0.01,"Pixel (517, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qypsqeqps52ay92,0.01,"Pixel (518, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qypcqeqpsl35uw9,0.01,"Pixel (519, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzqqeqpq9utv8e,0.01,"Pixel (520, 200) Grey" +tpc1qcanvas0000000000000000000000000000000000000qyzgqeqpsmx2ve9,0.01,"Pixel (521, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzsqeqpsxz3dy5,0.01,"Pixel (522, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzcqeqpsdec40m,0.01,"Pixel (523, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrqqeqpqtr0tln,0.01,"Pixel (524, 200) Grey" +tpc1qcanvas0000000000000000000000000000000000000qyrgqeqps4ewtp0,0.01,"Pixel (525, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrsqeqpsga42u7,0.01,"Pixel (526, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrcqeqpsrxujh3,0.01,"Pixel (527, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyyqqeqpsadmxsl,0.01,"Pixel (528, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyygqeqpskkj7ms,0.01,"Pixel (529, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyysqeqrs4phzsd,0.01,"Pixel (530, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyycqeqpsqfq8dw,0.01,"Pixel (531, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qy9qqeqpsnjlpg4,0.01,"Pixel (532, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qy9gqeqrsx6gy4k,0.01,"Pixel (533, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy9sqeq8sw3xkdl,0.01,"Pixel (534, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy9cqeqpswkyq4y,0.01,"Pixel (535, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyxqqeqrslfd4l8,0.01,"Pixel (536, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyxgqeqps2p6szy,0.01,"Pixel (537, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyxsqeqrsfklvfe,0.01,"Pixel (538, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyxcqeq8shzr88w,0.01,"Pixel (539, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy8qqeqrs3kfj8d,0.01,"Pixel (540, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8gqeqrs6dq2vz,0.01,"Pixel (541, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8sqeqrs8fmt3n,0.01,"Pixel (542, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8cqeqrsvjjn6u,0.01,"Pixel (543, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygqqeqrsehukzs,0.01,"Pixel (544, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyggqeqrsjv4wfl,0.01,"Pixel (545, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygsqeqrs0gw05w,0.01,"Pixel (546, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygcqeqps6qe2fd,0.01,"Pixel (547, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyfqqeqpsfmxvvk,0.01,"Pixel (548, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyfgqeqrsun3f34,0.01,"Pixel (549, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyfsqeqrsph2gvy,0.01,"Pixel (550, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyfcqeqrs2vrs8t,0.01,"Pixel (551, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2qqeqrs9q5cmy,0.01,"Pixel (552, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2gqeqrswmaqst,0.01,"Pixel (553, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2sqeqrsnlxpd6,0.01,"Pixel (554, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2cqeqrscy0ex4,0.01,"Pixel (555, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytqqeqrstlslrw,0.01,"Pixel (556, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytgqeqrsqye8gp,0.01,"Pixel (557, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytsqeqrsaqzx4s,0.01,"Pixel (558, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytcqeqpsgg4rgn,0.01,"Pixel (559, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyvqqeqpskrjh0a,0.01,"Pixel (560, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyvgqeqrsrt9jj7,0.01,"Pixel (561, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyvsqeqpsquqwer,0.01,"Pixel (562, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyvcqeqrs45htyq,0.01,"Pixel (563, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qydqqeqpscukshh,0.01,"Pixel (564, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qydgqeq8scm5x0v,0.01,"Pixel (565, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qydsqeqrsss65h9,0.01,"Pixel (566, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qydcqeqrsmtnvu2,0.01,"Pixel (567, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywqqeqrs58yyq9,0.01,"Pixel (568, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywgqeqrsludut2,0.01,"Pixel (569, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywsqeqrszckakm,0.01,"Pixel (570, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywcqeqrsfrl9a5,0.01,"Pixel (571, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0qqeqrs6cqrc0,0.01,"Pixel (572, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0gqeqrs3rfmnq,0.01,"Pixel (573, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0sqeqrsv8j6w3,0.01,"Pixel (574, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0cqeqrs8umz97,0.01,"Pixel (575, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qysqqeq8s32jl0w,0.01,"Pixel (576, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qysgqeqrs07w5pe,0.01,"Pixel (577, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyssqeqpsvftg2y,0.01,"Pixel (578, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyscqeqrsepudh8,0.01,"Pixel (579, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3qqeqrs26rtju,0.01,"Pixel (580, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3gqeqrspp2nen,0.01,"Pixel (581, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3sqeqpszk00jw,0.01,"Pixel (582, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qy3cqeqpsfdxhep,0.01,"Pixel (583, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyjqqeqpsxp3l9w,0.01,"Pixel (584, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyjgqeqrsnfx6cd,0.01,"Pixel (585, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyjsqeqpss7rxns,0.01,"Pixel (586, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyjcqeqpsm927cl,0.01,"Pixel (587, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qynqqeqpsg74cay,0.01,"Pixel (588, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyngqeqpsr9uqkt,0.01,"Pixel (589, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qynsqeqrsqjeuak,0.01,"Pixel (590, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyncqeqps46weq4,0.01,"Pixel (591, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qy5qqeqrs4zhs3h,0.01,"Pixel (592, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy5gqeq8stktmlq,0.01,"Pixel (593, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy5sqeqrsra9f8f,0.01,"Pixel (594, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy5cqeqrsgxv3vx,0.01,"Pixel (595, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy4qqeqrsmanhfa,0.01,"Pixel (596, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy4gqeqrssx60zj,0.01,"Pixel (597, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy4sqeqpsn3lnf0,0.01,"Pixel (598, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qy4cqeqpsc2ktzq,0.01,"Pixel (599, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qykqqeq8su62ddm,0.01,"Pixel (600, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qykgqeqrszwkxrv,0.01,"Pixel (601, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyksqeq8s29c5m9,0.01,"Pixel (602, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qykcqeqrs53yl4j,0.01,"Pixel (603, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyhqqeqrs82mesf,0.01,"Pixel (604, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyhgqeqrsv3jpmx,0.01,"Pixel (605, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyhsqeqps0xhasm,0.01,"Pixel (606, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyhcqeq8s0p4tgq,0.01,"Pixel (607, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qycqqeq8s6ymwsv,0.01,"Pixel (608, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qycgqeqrsys897m,0.01,"Pixel (609, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qycsqeqps88ze4x,0.01,"Pixel (610, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyccqeq8s8qq0da,0.01,"Pixel (611, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyeqqeqrsp526d7,0.01,"Pixel (612, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyegqeqps5ualsa,0.01,"Pixel (613, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyesqeq8szyds7c,0.01,"Pixel (614, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyecqeqpszr0xxr,0.01,"Pixel (615, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qy6qqeqrsnuxnvq,0.01,"Pixel (616, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy6gqeq8sdg6czh,0.01,"Pixel (617, 200) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy6sqeqrs9r5267,0.01,"Pixel (618, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy6cqeqpsstr08a,0.01,"Pixel (619, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qymqqeqrsarz552,0.01,"Pixel (620, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymgqeqrskctvl9,0.01,"Pixel (621, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymsqeqrstusdz5,0.01,"Pixel (622, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymcqeqrsq8e4fm,0.01,"Pixel (623, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyuqqeqrs7v7pw4,0.01,"Pixel (624, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyugqeqrs4hhe96,0.01,"Pixel (625, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyusqeqrsgnvcct,0.01,"Pixel (626, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyucqeqrsrg9qny,0.01,"Pixel (627, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyaqqeqrssn6xkl,0.01,"Pixel (628, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyagqeqrsmgn7as,0.01,"Pixel (629, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyasqeqrsxvglqp,0.01,"Pixel (630, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyacqeqrsdhp8tw,0.01,"Pixel (631, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy7qqeqrszmk0hp,0.01,"Pixel (632, 200) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy7gqeqpshnp22z,0.01,"Pixel (633, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qy7sqeqps2h6thn,0.01,"Pixel (634, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qy7cqeqpspvnnuu,0.01,"Pixel (635, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qylqqeqpsjhv4e8,0.01,"Pixel (636, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qylgqeqpsev9djg,0.01,"Pixel (637, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qylsqeqpsyg7v0e,0.01,"Pixel (638, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qylcqeqps0nh5yk,0.01,"Pixel (639, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qqqeqps34ttr5,0.01,"Pixel (640, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qgqeqps6wzngm,0.01,"Pixel (641, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qsqeqps82ej42,0.01,"Pixel (642, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qcqeqpsv3s279,0.01,"Pixel (643, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pqqeqpsl20vm7,0.01,"Pixel (644, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pgqeqps53x5s3,0.01,"Pixel (645, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9psqeqpsf4a4dq,0.01,"Pixel (646, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pcqeqpszw5dx0,0.01,"Pixel (647, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zqqeqpsdzr96q,0.01,"Pixel (648, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zgqeqpsxe2a30,0.01,"Pixel (649, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zsqeqpsma3uv7,0.01,"Pixel (650, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zcqeqpssxcy83,0.01,"Pixel (651, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rqqeqpsra8zz2,0.01,"Pixel (652, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rgqeqpsgxw6f9,0.01,"Pixel (653, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rsqeqps4z4m55,0.01,"Pixel (654, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rcqeqps7eurlm,0.01,"Pixel (655, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9yqqeqpsqjmhc4,0.01,"Pixel (656, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ygqeqpstfj0n6,0.01,"Pixel (657, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ysqeqpskdfwwt,0.01,"Pixel (658, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ycqeqpsakqk9y,0.01,"Pixel (659, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q99qqeqpswdlsql,0.01,"Pixel (660, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000q99gqeqps9kkgts,0.01,"Pixel (661, 200) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqqqeypsyzx559,0.01,"Pixel (512, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqgqeyps0e0vl2,0.01,"Pixel (513, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqsqeypsja5dzm,0.01,"Pixel (514, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyqcqeypsexa4f5,0.01,"Pixel (515, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qypqqeyps2aznv0,0.01,"Pixel (516, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qypgqeypspxtt8q,0.01,"Pixel (517, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qypsqeypsuzs263,0.01,"Pixel (518, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qypcqeypsheej37,0.01,"Pixel (519, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzqqeypsc4w6d3,0.01,"Pixel (520, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzgqeypsnw8zx7,0.01,"Pixel (521, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzsqeypsw2urm0,0.01,"Pixel (522, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyzcqeyps934msq,0.01,"Pixel (523, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrqqeypsk22a4m,0.01,"Pixel (524, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrgqeypsa3r975,0.01,"Pixel (525, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrsqeypsq4cyr9,0.01,"Pixel (526, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyrcqeypstw3ug2,0.01,"Pixel (527, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyyqqeyps49kg0y,0.01,"Pixel (528, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyygqeyps77lsyt,0.01,"Pixel (529, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyysqeypsr6y3e6,0.01,"Pixel (530, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyycqeypsgpdfj4,0.01,"Pixel (531, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qy9qqeypsm6j0hw,0.01,"Pixel (532, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qy9gqeypsspmhup,0.01,"Pixel (533, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qy9sqeyrsnk7thu,0.01,"Pixel (534, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy9cqey8sdzzqet,0.01,"Pixel (535, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyxqqeyrshpqmqu,0.01,"Pixel (536, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyxgqeypszfh7al,0.01,"Pixel (537, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyxsqeyrsp7jzkz,0.01,"Pixel (538, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyxcqeyrs29m6ad,0.01,"Pixel (539, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8qqeyrse7yuck,0.01,"Pixel (540, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8gqeyrsj9dyne,0.01,"Pixel (541, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8sqeyrs0pk9wg,0.01,"Pixel (542, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy8cqeyrsy6la98,0.01,"Pixel (543, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygqqeyrs3l3cat,0.01,"Pixel (544, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyggqeyrs6ycqky,0.01,"Pixel (545, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qygsqey8sj0kjwd,0.01,"Pixel (546, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qygcqeyrsvm2eq6,0.01,"Pixel (547, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyfqqeyrslq4l9p,0.01,"Pixel (548, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyfgqeyrs5mu8ww,0.01,"Pixel (549, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyfsqeyrsfl8xnl,0.01,"Pixel (550, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyfcqeyrszyw7cs,0.01,"Pixel (551, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2qqeyrsdgekyl,0.01,"Pixel (552, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2gqeyrsxnsw0s,0.01,"Pixel (553, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2sqeyrsmht0jp,0.01,"Pixel (554, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy2cqeyrssvzhew,0.01,"Pixel (555, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytqqeyrsrha3u4,0.01,"Pixel (556, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytgqeyrsgv5fh6,0.01,"Pixel (557, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qytsqey8sq86m0n,0.01,"Pixel (558, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qytcqeyrs7nxspy,0.01,"Pixel (559, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyvqqey8s4h5hrj,0.01,"Pixel (560, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyvgqeyrstrgud9,0.01,"Pixel (561, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyvsqeypsg5dqxc,0.01,"Pixel (562, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyvcqeypsr0ycdh,0.01,"Pixel (563, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qydqqeyrsw89r7q,0.01,"Pixel (564, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qydgqeypsm0jxrr,0.01,"Pixel (565, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qydsqeypsxtf87j,0.01,"Pixel (566, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qydcqeyrsnr7zr3,0.01,"Pixel (567, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywqqeypszuhhfj,0.01,"Pixel (568, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qywgqeyrsh5qj53,0.01,"Pixel (569, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywsqeyrs2smnfq,0.01,"Pixel (570, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qywcqeyrsptjtz0,0.01,"Pixel (571, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0qqeyrsjsdd85,0.01,"Pixel (572, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0gqeyrsety4vm,0.01,"Pixel (573, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0sqeyrsy0l532,0.01,"Pixel (574, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy0cqeyrs05kv69,0.01,"Pixel (575, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qysqqey8sezl3s4,0.01,"Pixel (576, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qysgqeyrs8kr67z,0.01,"Pixel (577, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyssqey8s0adgxt,0.01,"Pixel (578, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyscqeyps06077s,0.01,"Pixel (579, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qy3qqeypsupscmt,0.01,"Pixel (580, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qy3gqeyrsff8axg,0.01,"Pixel (581, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy3sqeyps27zpd4,0.01,"Pixel (582, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qy3cqeypsp9tex6,0.01,"Pixel (583, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyjqqeypswfu364,0.01,"Pixel (584, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyjgqeyps9j4f36,0.01,"Pixel (585, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyjsqeyrsx9s468,0.01,"Pixel (586, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyjcqeypsnd8s8y,0.01,"Pixel (587, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qynqqeyrs79xt5n,0.01,"Pixel (588, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyngqeypstd3wfs,0.01,"Pixel (589, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qynsqeyrsg65jzd,0.01,"Pixel (590, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyncqeyrsrpa2fz,0.01,"Pixel (591, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy5qqeyrsa267wv,0.01,"Pixel (592, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy5gqeyrsk3nx9r,0.01,"Pixel (593, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy5sqeyzsyg8an5,0.01,"Pixel (594, 201) Red" +tpc1qcanvas0000000000000000000000000000000000000qy5cqey8s4p5vk9,0.01,"Pixel (595, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy4qqeyzsug3raq,0.01,"Pixel (596, 201) Red" +tpc1qcanvas0000000000000000000000000000000000000qy4gqeyrscwhpaf,0.01,"Pixel (597, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy4sqeyrs92vqqc,0.01,"Pixel (598, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy4cqeyrsw39cth,0.01,"Pixel (599, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qykqqeyrspajshc,0.01,"Pixel (600, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qykgqeyrs2xmguh,0.01,"Pixel (601, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyksqeyrshzqfpx,0.01,"Pixel (602, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qykcqey8sfkuz03,0.01,"Pixel (603, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyhqqeyrs0zkh0j,0.01,"Pixel (604, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyhgqeyps62pjj3,0.01,"Pixel (605, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyhsqeyps8w6n0q,0.01,"Pixel (606, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qyhcqeypsv4nty0,0.01,"Pixel (607, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qycqqeyrs8rrn20,0.01,"Pixel (608, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qycgqeyrsvc2tpq,0.01,"Pixel (609, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qycsqeyrs3u32u3,0.01,"Pixel (610, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyccqey8s0gdpjx,0.01,"Pixel (611, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyeqqeyrsfu85j9,0.01,"Pixel (612, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyegqeyrsz8wve2,0.01,"Pixel (613, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyesqey8s2vq7pr,0.01,"Pixel (614, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyecqeyrs5cu405,0.01,"Pixel (615, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy6qqeyps984q9h,0.01,"Pixel (616, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qy6gqeyrss0z9c5,0.01,"Pixel (617, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy6sqey8scyvhqa,0.01,"Pixel (618, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy6cqeyrsxssuw2,0.01,"Pixel (619, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymqqey8sqy6fwf,0.01,"Pixel (620, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qymgqeyrs7sxzq7,0.01,"Pixel (621, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymsqeyrsr5ara0,0.01,"Pixel (622, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qymcqeyrsg05mkq,0.01,"Pixel (623, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyuqqey8srtxu5k,0.01,"Pixel (624, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qyugqeyrsal6h6p,0.01,"Pixel (625, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyusqeyrsqmpk8s,0.01,"Pixel (626, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyucqeyrstqgwvl,0.01,"Pixel (627, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyaqqeyrscmhgfy,0.01,"Pixel (628, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyagqeyrsnq7szt,0.01,"Pixel (629, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyasqeyrswy93l6,0.01,"Pixel (630, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qyacqeyrs9lvf54,0.01,"Pixel (631, 201) Brown" +tpc1qcanvas0000000000000000000000000000000000000qy7qqey8sluwjdz,0.01,"Pixel (632, 201) Purple" +tpc1qcanvas0000000000000000000000000000000000000qy7gqeypslmvy4e,0.01,"Pixel (633, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qy7sqeypszlh9gg,0.01,"Pixel (634, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qy7cqeypsfy7ar8,0.01,"Pixel (635, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qylqqeypq07frn0,0.01,"Pixel (636, 201) Grey" +tpc1qcanvas0000000000000000000000000000000000000qylgqeyps3ygrdn,0.01,"Pixel (637, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qylsqeypsvqnzsz,0.01,"Pixel (638, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000qylcqeyps8m66md,0.01,"Pixel (639, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qqqeypseax9u0,0.01,"Pixel (640, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qgqeypsjx0ahq,0.01,"Pixel (641, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qsqeyps0z5u23,0.01,"Pixel (642, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9qcqeypsyeayp7,0.01,"Pixel (643, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pqqeypshzzzy9,0.01,"Pixel (644, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pgqeypsuet602,0.01,"Pixel (645, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9psqeypspasmjm,0.01,"Pixel (646, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9pcqeyps2xere5,0.01,"Pixel (647, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zqqeyps92wt9m,0.01,"Pixel (648, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zgqeypsw38nw5,0.01,"Pixel (649, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zsqeypsn4ujn9,0.01,"Pixel (650, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9zcqeypscw42c2,0.01,"Pixel (651, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rqqeypst42va3,0.01,"Pixel (652, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rgqeypsqwr5k7,0.01,"Pixel (653, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rsqeypsa2c4t0,0.01,"Pixel (654, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9rcqeypsk33dqq,0.01,"Pixel (655, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9yqqeypsg6ke8w,0.01,"Pixel (656, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ygqeypsrplpvp,0.01,"Pixel (657, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ysqeyps79yq3s,0.01,"Pixel (658, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q9ycqeyps47dc6l,0.01,"Pixel (659, 201) Black" +tpc1qcanvas0000000000000000000000000000000000000q99qqeypsx9j7ly,0.01,"Pixel (660, 201) Black" diff --git a/test/transaction_building_test.dart b/test/transaction_building_test.dart index 677e5d48..3a9214f6 100644 --- a/test/transaction_building_test.dart +++ b/test/transaction_building_test.dart @@ -1,15 +1,18 @@ import 'dart:io'; +import 'dart:math'; import 'dart:typed_data'; import 'package:flutter_test/flutter_test.dart'; import 'package:hive/hive.dart'; import 'package:mockito/mockito.dart'; +import 'package:peercoin/exceptions/exceptions.dart'; import 'package:peercoin/models/coin_wallet.dart'; import 'package:peercoin/models/wallet_address.dart'; import 'package:peercoin/models/wallet_transaction.dart'; import 'package:peercoin/models/wallet_utxo.dart'; import 'package:peercoin/providers/active_wallets.dart'; import 'package:peercoin/providers/encrypted_box.dart'; +import 'package:fast_csv/fast_csv.dart' as fast_csv; class MockHiveBox extends Mock implements EncryptedBox { @override @@ -23,7 +26,7 @@ class MockHiveBox extends Mock implements EncryptedBox { } @override - Future getWalletBox() async { + Future> getWalletBox() async { return await Hive.openBox( 'wallets', ); @@ -32,9 +35,15 @@ class MockHiveBox extends Mock implements EncryptedBox { void main() async { const walletName = 'peercoin'; + const testnetWalletName = 'peercoinTestnet'; final ActiveWallets wallet = ActiveWallets(MockHiveBox()); TestWidgetsFlutterBinding.ensureInitialized(); + final decimalProduct = pow( + 10, + 6, + ).toInt(); + setUpAll(() async { Hive.init("test"); Hive.registerAdapter(CoinWalletAdapter()); @@ -42,7 +51,8 @@ void main() async { Hive.registerAdapter(WalletAddressAdapter()); Hive.registerAdapter(WalletUtxoAdapter()); await wallet.init(); - wallet.addWallet(walletName, walletName, 'ppc'); + wallet.addWallet(walletName, walletName, 'PPC'); + wallet.addWallet(testnetWalletName, testnetWalletName, 'tPPC'); }); tearDownAll(() async { @@ -52,92 +62,199 @@ void main() async { File('test/wallets.lock').delete(); }); - test( - 'Generate unused address', - () async { - await wallet.generateUnusedAddress(walletName); - assert(wallet.getUnusedAddress == 'PXDR4KZn2WdTocNx1GPJXR96PfzZBvWqKQ'); - }, - ); + group( + 'mainnet', + () { + test( + 'Generate unused mainnet address', + () async { + await wallet.generateUnusedAddress(walletName); + assert( + wallet.getUnusedAddress == 'PXDR4KZn2WdTocNx1GPJXR96PfzZBvWqKQ'); + }, + ); + + test( + 'Add mainnet utxo', + () async { + await wallet.putUtxos( + walletName, + wallet.getUnusedAddress, + [ + { + "tx_hash": + "6c0e78d2a2bdc8777e2bb9c30cd25b58a1fb18c7ca55b89a1e179c288da99efd", + "tx_pos": 1, + "height": 99, + "value": 138139, //test output of 0.138139 + } + ], + ); - test( - 'Add utxo', - () async { - await wallet.putUtxos( - walletName, - wallet.getUnusedAddress, - [ - { - "tx_hash": - "6c0e78d2a2bdc8777e2bb9c30cd25b58a1fb18c7ca55b89a1e179c288da99efd", - "tx_pos": 1, - "height": 99, - "value": 138139, //test output of 0.138139 - } - ], + final getUtxos = await wallet.getWalletUtxos(walletName); + assert(getUtxos.length == 1); + assert(getUtxos[0].runtimeType == WalletUtxo); + assert(getUtxos[0].address == wallet.getUnusedAddress); + }, ); - final getUtxos = await wallet.getWalletUtxos(walletName); - assert(getUtxos.length == 1); - assert(getUtxos[0].runtimeType == WalletUtxo); - assert(getUtxos[0].address == wallet.getUnusedAddress); + test('Build transaction, spend 100% of wallet balance', () async { + final result = await wallet.buildTransaction( + identifier: walletName, + fee: 0, + recipients: { + "p92W3t7YkKfQEPDb7cG9jQ6iMh7cpKLvwK": 138139, + }, + ); + assert( + result.hex == + "0300000001fd9ea98d289c171e9ab855cac718fba1585bd20cc3b92b7e77c8bda2d2780e6c010000006a47304402207e31cc2a56347884bc52a904819815dc17775795a57c35e648147963c69956a102202a8d6309ea95958e9c28698c2bb23c397e115f358af73e74831e53d3671b4d140121022036646b3fd79dee41351f727f0a6e10d0e7f98585961bc14e7aadaf5f4b66abffffffff01391402000000000017a91426308eea0cfcbe5bc51a5d28f297b92842db43578700000000", + ); + }); + + test('Build transaction, spend ~50% of wallet balance, with change', + () async { + final result = await wallet.buildTransaction( + identifier: walletName, + fee: 0, + recipients: { + "p92W3t7YkKfQEPDb7cG9jQ6iMh7cpKLvwK": 69069, + }, + ); + assert( + result.hex == + "0300000001fd9ea98d289c171e9ab855cac718fba1585bd20cc3b92b7e77c8bda2d2780e6c010000006a47304402207a4105863579f9226c6a711ec411bc52ad1f3a804efd4faded49ea576d54db670220507762cae442f4572cd63e030bb82d4fb9b27aafcaf717ac33af8062bb28c9090121022036646b3fd79dee41351f727f0a6e10d0e7f98585961bc14e7aadaf5f4b66abffffffff0218050100000000001976a914f82d58dd8487044d8d0879c15a2a3516a425de2a88accd0d01000000000017a91426308eea0cfcbe5bc51a5d28f297b92842db43578700000000", + ); + }); + + test( + 'Build transaction, spend 100% of wallet balance, with fees deducted from last recipient', + () async { + final result = await wallet.buildTransaction( + identifier: walletName, + fee: 0, + recipients: { + "pc1qcanvas0000000000000000000000000000000000000qyscr6u9qpr7jag": + 10000, + "pc1qcanvas0000000000000000000000000000000000000qy3qr6c9q6sv68g": + 10000, + "pc1qcanvas0000000000000000000000000000000000000qy3gr659qfnjsyr": + 10000, + "pc1qcanvas0000000000000000000000000000000000000qy3sr659q5hf3ej": + 10000, + "pc1qcanvas0000000000000000000000000000000000000qy3cr6c9q85hm6e": + 10000, + "pc1qcanvas0000000000000000000000000000000000000qyjqr6u9qqsdaed": + 10000, + "pc1qcanvas0000000000000000000000000000000000000qy3qrmq9qj9adud": + 10000, + "pc1qcanvas0000000000000000000000000000000000000qy3crmq9q0pxvpu": + 10000, + "pc1qcanvas0000000000000000000000000000000000000qy3srmy9qvjz64g": + 10000, + "pc1qcanvas0000000000000000000000000000000000000qy3grmy9q3kemge": + 10000, + "pc1qcanvas0000000000000000000000000000000000000qy3sr6u9qy8ndwd": + 10000, + "pc1qcanvas0000000000000000000000000000000000000qy3gr6u9qergvnu": + 10000, + "pc1qcanvas0000000000000000000000000000000000000qy3gr6c9q3t9zv8": + 18000, + }, + ); + assert( + result.hex == + "0300000001fd9ea98d289c171e9ab855cac718fba1585bd20cc3b92b7e77c8bda2d2780e6c010000006a4730440220402478a7caee83751fda54971f2f6ab1071a4bf17b060f8f4ffd93dcfe08b73e02200ac9fe3e8e01f829c66cfeed48e1a53a970c80aad97ef98c5ff0fd5d279f49b10121022036646b3fd79dee41351f727f0a6e10d0e7f98585961bc14e7aadaf5f4b66abffffffff0d1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024303d70a1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024403d60a1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024503d50a1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024603d50a1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024703d60a1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024803d70a1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024403d80a1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024703d80a1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024603d90a1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024503d90a1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024603d70a1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024503d70ae32a000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024503d60a00000000", + ); + }); }, ); - test('Build transaction, spend 100% of wallet balance', () async { - final result = await wallet.buildTransaction( - identifier: walletName, - fee: 0, - recipients: { - "p92W3t7YkKfQEPDb7cG9jQ6iMh7cpKLvwK": 138139, - }, - ); - assert( - result.hex == - "0300000001fd9ea98d289c171e9ab855cac718fba1585bd20cc3b92b7e77c8bda2d2780e6c010000006a47304402207e31cc2a56347884bc52a904819815dc17775795a57c35e648147963c69956a102202a8d6309ea95958e9c28698c2bb23c397e115f358af73e74831e53d3671b4d140121022036646b3fd79dee41351f727f0a6e10d0e7f98585961bc14e7aadaf5f4b66abffffffff01391402000000000017a91426308eea0cfcbe5bc51a5d28f297b92842db43578700000000", - ); - }); + group( + 'testnet', + () { + test( + 'Generate unused testnet address', + () async { + await wallet.generateUnusedAddress(testnetWalletName); + assert( + wallet.getUnusedAddress == 'n49CCQFuncaXbtBoNm39gSP9dvRP2eFFSw'); + }, + ); - test('Build transaction, spend ~50% of wallet balance, with change', - () async { - final result = await wallet.buildTransaction( - identifier: walletName, - fee: 0, - recipients: { - "p92W3t7YkKfQEPDb7cG9jQ6iMh7cpKLvwK": 69069, - }, - ); - assert( - result.hex == - "0300000001fd9ea98d289c171e9ab855cac718fba1585bd20cc3b92b7e77c8bda2d2780e6c010000006a47304402207a4105863579f9226c6a711ec411bc52ad1f3a804efd4faded49ea576d54db670220507762cae442f4572cd63e030bb82d4fb9b27aafcaf717ac33af8062bb28c9090121022036646b3fd79dee41351f727f0a6e10d0e7f98585961bc14e7aadaf5f4b66abffffffff0218050100000000001976a914f82d58dd8487044d8d0879c15a2a3516a425de2a88accd0d01000000000017a91426308eea0cfcbe5bc51a5d28f297b92842db43578700000000", - ); - }); + test('Add testnet UTXO', () async { + await wallet.putUtxos( + testnetWalletName, + wallet.getUnusedAddress, + [ + { + "tx_hash": + "6c0e78d2a2bdc8777e2bb9c30cd25b58a1fb18c7ca55b89a1e179c288da99efd", + "tx_pos": 1, + "height": 99, + "value": 10000000, //test output of 10 + } + ], + ); + final getUtxos = await wallet.getWalletUtxos(testnetWalletName); + assert(getUtxos.length == 1); + assert(getUtxos[0].runtimeType == WalletUtxo); + assert(getUtxos[0].address == wallet.getUnusedAddress); + assert(getUtxos[0].value == 10000000); + }); - test( - 'Build transaction, spend 100% of wallet balance, with fees deducted from last recipient', - () async { - final result = await wallet.buildTransaction( - identifier: walletName, - fee: 0, - recipients: { - "pc1qcanvas0000000000000000000000000000000000000qyscr6u9qpr7jag": 10000, - "pc1qcanvas0000000000000000000000000000000000000qy3qr6c9q6sv68g": 10000, - "pc1qcanvas0000000000000000000000000000000000000qy3gr659qfnjsyr": 10000, - "pc1qcanvas0000000000000000000000000000000000000qy3sr659q5hf3ej": 10000, - "pc1qcanvas0000000000000000000000000000000000000qy3cr6c9q85hm6e": 10000, - "pc1qcanvas0000000000000000000000000000000000000qyjqr6u9qqsdaed": 10000, - "pc1qcanvas0000000000000000000000000000000000000qy3qrmq9qj9adud": 10000, - "pc1qcanvas0000000000000000000000000000000000000qy3crmq9q0pxvpu": 10000, - "pc1qcanvas0000000000000000000000000000000000000qy3srmy9qvjz64g": 10000, - "pc1qcanvas0000000000000000000000000000000000000qy3grmy9q3kemge": 10000, - "pc1qcanvas0000000000000000000000000000000000000qy3sr6u9qy8ndwd": 10000, - "pc1qcanvas0000000000000000000000000000000000000qy3gr6u9qergvnu": 10000, - "pc1qcanvas0000000000000000000000000000000000000qy3gr6c9q3t9zv8": 18000, - }, - ); - assert( - result.hex == - "0300000001fd9ea98d289c171e9ab855cac718fba1585bd20cc3b92b7e77c8bda2d2780e6c010000006a4730440220402478a7caee83751fda54971f2f6ab1071a4bf17b060f8f4ffd93dcfe08b73e02200ac9fe3e8e01f829c66cfeed48e1a53a970c80aad97ef98c5ff0fd5d279f49b10121022036646b3fd79dee41351f727f0a6e10d0e7f98585961bc14e7aadaf5f4b66abffffffff0d1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024303d70a1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024403d60a1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024503d50a1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024603d50a1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024703d60a1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024803d70a1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024403d80a1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024703d80a1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024603d90a1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024503d90a1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024603d70a1027000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024503d70ae32a000000000000220020c766cec1ef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bdef7bde024503d60a00000000", - ); - }); + test( + 'Import 1000 addresses from CSV, only have 10 PPC utxo and expect exception', + () async { + Map recipientMap = {}; + final parsed = fast_csv + .parse(await File('./test/csvs/test_1000.csv').readAsString()); + for (final row in parsed) { + final address = row[0]; + final amount = double.parse( + row[1].replaceAll(',', '.'), + ); + recipientMap[address] = (amount * decimalProduct).toInt(); + } + Exception error = Exception(); + try { + await wallet.buildTransaction( + identifier: testnetWalletName, + fee: 0, + recipients: recipientMap, + ); + } catch (e) { + error = e as Exception; + } + assert(error.runtimeType == CantPayForFeesException); + final asCantPayEx = error as CantPayForFeesException; + assert(asCantPayEx.feesMissing == 421590); + }); + + test('Import 500 addresses from CSV and build', () async { + Map recipientMap = {}; + final parsed = fast_csv + .parse(await File('./test/csvs/test_500.csv').readAsString()); + for (final row in parsed) { + final address = row[0]; + final amount = double.parse( + row[1].replaceAll(',', '.'), + ); + recipientMap[address] = (amount * decimalProduct).toInt(); + } + + final result = await wallet.buildTransaction( + identifier: testnetWalletName, + fee: 0, + recipients: recipientMap, + ); + assert(result.totalAmount == 5000000); + assert(result.fee == 216930); + assert( + result.id == + "2d5b05caf02eb07571fc3685e404e1c00085ce6bd75862a61ddb282b37d73838", + ); + }); + }, + ); }