From 72a8ede2237060771d4f81f830c25fab106c6542 Mon Sep 17 00:00:00 2001 From: louis Date: Tue, 28 May 2024 16:29:41 +0200 Subject: [PATCH] Update(dev): gitingore --- NE_PAS_TOUCHER/DSQ.xcframework/Info.plist | 65 - .../DouShouQiModel.framework/DouShouQiModel | Bin 155784 -> 0 bytes .../Headers/DouShouQiModel-Swift.h | 311 - .../Headers/DouShouQiModel.h | 18 - .../DouShouQiModel.framework/Info.plist | Bin 763 -> 0 bytes .../arm64-apple-ios.abi.json | 8546 ----------------- .../arm64-apple-ios.private.swiftinterface | 266 - .../arm64-apple-ios.swiftdoc | Bin 684 -> 0 bytes .../arm64-apple-ios.swiftinterface | 266 - .../Modules/module.modulemap | 11 - .../DouShouQiModel.framework/DouShouQiModel | Bin 355376 -> 0 bytes .../Headers/DouShouQiModel-Swift.h | 618 -- .../Headers/DouShouQiModel.h | 18 - .../DouShouQiModel.framework/Info.plist | Bin 743 -> 0 bytes .../arm64-apple-ios-simulator.abi.json | 8546 ----------------- ...apple-ios-simulator.private.swiftinterface | 266 - .../arm64-apple-ios-simulator.swiftdoc | Bin 696 -> 0 bytes .../arm64-apple-ios-simulator.swiftinterface | 266 - .../x86_64-apple-ios-simulator.abi.json | 8546 ----------------- ...apple-ios-simulator.private.swiftinterface | 266 - .../x86_64-apple-ios-simulator.swiftdoc | Bin 696 -> 0 bytes .../x86_64-apple-ios-simulator.swiftinterface | 266 - .../Modules/module.modulemap | 11 - .../_CodeSignature/CodeResources | 245 - .../DouShouQiModel.framework/DouShouQiModel | 1 - .../DouShouQiModel.framework/Headers | 1 - .../DouShouQiModel.framework/Modules | 1 - .../DouShouQiModel.framework/Resources | 1 - .../Versions/A/DouShouQiModel | Bin 337600 -> 0 bytes .../Versions/A/Headers/DouShouQiModel-Swift.h | 618 -- .../Versions/A/Headers/DouShouQiModel.h | 18 - .../arm64-apple-macos.abi.json | 8546 ----------------- .../arm64-apple-macos.private.swiftinterface | 266 - .../arm64-apple-macos.swiftdoc | Bin 688 -> 0 bytes .../arm64-apple-macos.swiftinterface | 266 - .../x86_64-apple-macos.abi.json | 8546 ----------------- .../x86_64-apple-macos.private.swiftinterface | 266 - .../x86_64-apple-macos.swiftdoc | Bin 688 -> 0 bytes .../x86_64-apple-macos.swiftinterface | 266 - .../Versions/A/Modules/module.modulemap | 11 - .../Versions/A/Resources/Info.plist | 46 - .../DouShouQiModel.framework/Versions/Current | 1 - 42 files changed, 47385 deletions(-) delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/Info.plist delete mode 100755 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/DouShouQiModel delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Headers/DouShouQiModel-Swift.h delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Headers/DouShouQiModel.h delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Info.plist delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios.abi.json delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios.private.swiftinterface delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios.swiftdoc delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios.swiftinterface delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/module.modulemap delete mode 100755 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/DouShouQiModel delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Headers/DouShouQiModel-Swift.h delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Headers/DouShouQiModel.h delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Info.plist delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.abi.json delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftdoc delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftinterface delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.abi.json delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.swiftdoc delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.swiftinterface delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/module.modulemap delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/_CodeSignature/CodeResources delete mode 120000 NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/DouShouQiModel delete mode 120000 NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Headers delete mode 120000 NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Modules delete mode 120000 NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Resources delete mode 100755 NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/DouShouQiModel delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Headers/DouShouQiModel-Swift.h delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Headers/DouShouQiModel.h delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/arm64-apple-macos.abi.json delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/arm64-apple-macos.private.swiftinterface delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/arm64-apple-macos.swiftdoc delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/arm64-apple-macos.swiftinterface delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/x86_64-apple-macos.abi.json delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/x86_64-apple-macos.private.swiftinterface delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/x86_64-apple-macos.swiftdoc delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/x86_64-apple-macos.swiftinterface delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/module.modulemap delete mode 100644 NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Resources/Info.plist delete mode 120000 NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/Current diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/Info.plist b/NE_PAS_TOUCHER/DSQ.xcframework/Info.plist deleted file mode 100644 index 6cefe51..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/Info.plist +++ /dev/null @@ -1,65 +0,0 @@ - - - - - AvailableLibraries - - - BinaryPath - DouShouQiModel.framework/DouShouQiModel - DebugSymbolsPath - dSYMs - LibraryIdentifier - ios-arm64 - LibraryPath - DouShouQiModel.framework - SupportedArchitectures - - arm64 - - SupportedPlatform - ios - - - BinaryPath - DouShouQiModel.framework/DouShouQiModel - DebugSymbolsPath - dSYMs - LibraryIdentifier - ios-arm64_x86_64-simulator - LibraryPath - DouShouQiModel.framework - SupportedArchitectures - - arm64 - x86_64 - - SupportedPlatform - ios - SupportedPlatformVariant - simulator - - - BinaryPath - DouShouQiModel.framework/Versions/A/DouShouQiModel - DebugSymbolsPath - dSYMs - LibraryIdentifier - macos-arm64_x86_64 - LibraryPath - DouShouQiModel.framework - SupportedArchitectures - - arm64 - x86_64 - - SupportedPlatform - macos - - - CFBundlePackageType - XFWK - XCFrameworkFormatVersion - 1.0 - - diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/DouShouQiModel b/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/DouShouQiModel deleted file mode 100755 index 47dbe4c96a9b08118b8726048d8ded768456f43f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 155784 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¬}ScV(Jz^M($aZf0)e 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 diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Headers/DouShouQiModel-Swift.h b/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Headers/DouShouQiModel-Swift.h deleted file mode 100644 index d7b3274..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Headers/DouShouQiModel-Swift.h +++ /dev/null @@ -1,311 +0,0 @@ -#if 0 -#elif defined(__arm64__) && __arm64__ -// Generated by Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5) -#ifndef DOUSHOUQIMODEL_SWIFT_H -#define DOUSHOUQIMODEL_SWIFT_H -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wgcc-compat" - -#if !defined(__has_include) -# define __has_include(x) 0 -#endif -#if !defined(__has_attribute) -# define __has_attribute(x) 0 -#endif -#if !defined(__has_feature) -# define __has_feature(x) 0 -#endif -#if !defined(__has_warning) -# define __has_warning(x) 0 -#endif - -#if __has_include() -# include -#endif - -#pragma clang diagnostic ignored "-Wauto-import" -#if defined(__OBJC__) -#include -#endif -#if defined(__cplusplus) -#include -#include -#include -#include -#include -#include -#include -#else -#include -#include -#include -#include -#endif -#if defined(__cplusplus) -#if defined(__arm64e__) && __has_include() -# include -#else -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wreserved-macro-identifier" -# ifndef __ptrauth_swift_value_witness_function_pointer -# define __ptrauth_swift_value_witness_function_pointer(x) -# endif -# ifndef __ptrauth_swift_class_method_pointer -# define __ptrauth_swift_class_method_pointer(x) -# endif -#pragma clang diagnostic pop -#endif -#endif - -#if !defined(SWIFT_TYPEDEFS) -# define SWIFT_TYPEDEFS 1 -# if __has_include() -# include -# elif !defined(__cplusplus) -typedef uint_least16_t char16_t; -typedef uint_least32_t char32_t; -# endif -typedef float swift_float2 __attribute__((__ext_vector_type__(2))); -typedef float swift_float3 __attribute__((__ext_vector_type__(3))); -typedef float swift_float4 __attribute__((__ext_vector_type__(4))); -typedef double swift_double2 __attribute__((__ext_vector_type__(2))); -typedef double swift_double3 __attribute__((__ext_vector_type__(3))); -typedef double swift_double4 __attribute__((__ext_vector_type__(4))); -typedef int swift_int2 __attribute__((__ext_vector_type__(2))); -typedef int swift_int3 __attribute__((__ext_vector_type__(3))); -typedef int swift_int4 __attribute__((__ext_vector_type__(4))); -typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2))); -typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3))); -typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4))); -#endif - -#if !defined(SWIFT_PASTE) -# define SWIFT_PASTE_HELPER(x, y) x##y -# define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y) -#endif -#if !defined(SWIFT_METATYPE) -# define SWIFT_METATYPE(X) Class -#endif -#if !defined(SWIFT_CLASS_PROPERTY) -# if __has_feature(objc_class_property) -# define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__ -# else -# define SWIFT_CLASS_PROPERTY(...) -# endif -#endif -#if !defined(SWIFT_RUNTIME_NAME) -# if __has_attribute(objc_runtime_name) -# define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X))) -# else -# define SWIFT_RUNTIME_NAME(X) -# endif -#endif -#if !defined(SWIFT_COMPILE_NAME) -# if __has_attribute(swift_name) -# define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X))) -# else -# define SWIFT_COMPILE_NAME(X) -# endif -#endif -#if !defined(SWIFT_METHOD_FAMILY) -# if __has_attribute(objc_method_family) -# define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X))) -# else -# define SWIFT_METHOD_FAMILY(X) -# endif -#endif -#if !defined(SWIFT_NOESCAPE) -# if __has_attribute(noescape) -# define SWIFT_NOESCAPE __attribute__((noescape)) -# else -# define SWIFT_NOESCAPE -# endif -#endif -#if !defined(SWIFT_RELEASES_ARGUMENT) -# if __has_attribute(ns_consumed) -# define SWIFT_RELEASES_ARGUMENT __attribute__((ns_consumed)) -# else -# define SWIFT_RELEASES_ARGUMENT -# endif -#endif -#if !defined(SWIFT_WARN_UNUSED_RESULT) -# if __has_attribute(warn_unused_result) -# define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result)) -# else -# define SWIFT_WARN_UNUSED_RESULT -# endif -#endif -#if !defined(SWIFT_NORETURN) -# if __has_attribute(noreturn) -# define SWIFT_NORETURN __attribute__((noreturn)) -# else -# define SWIFT_NORETURN -# endif -#endif -#if !defined(SWIFT_CLASS_EXTRA) -# define SWIFT_CLASS_EXTRA -#endif -#if !defined(SWIFT_PROTOCOL_EXTRA) -# define SWIFT_PROTOCOL_EXTRA -#endif -#if !defined(SWIFT_ENUM_EXTRA) -# define SWIFT_ENUM_EXTRA -#endif -#if !defined(SWIFT_CLASS) -# if __has_attribute(objc_subclassing_restricted) -# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA -# define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# else -# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# endif -#endif -#if !defined(SWIFT_RESILIENT_CLASS) -# if __has_attribute(objc_class_stub) -# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub)) -# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME) -# else -# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) -# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME) -# endif -#endif -#if !defined(SWIFT_PROTOCOL) -# define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA -# define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA -#endif -#if !defined(SWIFT_EXTENSION) -# define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__) -#endif -#if !defined(OBJC_DESIGNATED_INITIALIZER) -# if __has_attribute(objc_designated_initializer) -# define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer)) -# else -# define OBJC_DESIGNATED_INITIALIZER -# endif -#endif -#if !defined(SWIFT_ENUM_ATTR) -# if __has_attribute(enum_extensibility) -# define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility))) -# else -# define SWIFT_ENUM_ATTR(_extensibility) -# endif -#endif -#if !defined(SWIFT_ENUM) -# define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type -# if __has_feature(generalized_swift_name) -# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type -# else -# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility) -# endif -#endif -#if !defined(SWIFT_UNAVAILABLE) -# define SWIFT_UNAVAILABLE __attribute__((unavailable)) -#endif -#if !defined(SWIFT_UNAVAILABLE_MSG) -# define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg))) -#endif -#if !defined(SWIFT_AVAILABILITY) -# define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__))) -#endif -#if !defined(SWIFT_WEAK_IMPORT) -# define SWIFT_WEAK_IMPORT __attribute__((weak_import)) -#endif -#if !defined(SWIFT_DEPRECATED) -# define SWIFT_DEPRECATED __attribute__((deprecated)) -#endif -#if !defined(SWIFT_DEPRECATED_MSG) -# define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__))) -#endif -#if !defined(SWIFT_DEPRECATED_OBJC) -# if __has_feature(attribute_diagnose_if_objc) -# define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning"))) -# else -# define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg) -# endif -#endif -#if defined(__OBJC__) -#if !defined(IBSegueAction) -# define IBSegueAction -#endif -#endif -#if !defined(SWIFT_EXTERN) -# if defined(__cplusplus) -# define SWIFT_EXTERN extern "C" -# else -# define SWIFT_EXTERN extern -# endif -#endif -#if !defined(SWIFT_CALL) -# define SWIFT_CALL __attribute__((swiftcall)) -#endif -#if !defined(SWIFT_INDIRECT_RESULT) -# define SWIFT_INDIRECT_RESULT __attribute__((swift_indirect_result)) -#endif -#if !defined(SWIFT_CONTEXT) -# define SWIFT_CONTEXT __attribute__((swift_context)) -#endif -#if !defined(SWIFT_ERROR_RESULT) -# define SWIFT_ERROR_RESULT __attribute__((swift_error_result)) -#endif -#if defined(__cplusplus) -# define SWIFT_NOEXCEPT noexcept -#else -# define SWIFT_NOEXCEPT -#endif -#if !defined(SWIFT_C_INLINE_THUNK) -# if __has_attribute(always_inline) -# if __has_attribute(nodebug) -# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) __attribute__((nodebug)) -# else -# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) -# endif -# else -# define SWIFT_C_INLINE_THUNK inline -# endif -#endif -#if defined(_WIN32) -#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL) -# define SWIFT_IMPORT_STDLIB_SYMBOL __declspec(dllimport) -#endif -#else -#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL) -# define SWIFT_IMPORT_STDLIB_SYMBOL -#endif -#endif -#if defined(__OBJC__) -#if __has_feature(objc_modules) -#if __has_warning("-Watimport-in-framework-header") -#pragma clang diagnostic ignored "-Watimport-in-framework-header" -#endif -#endif - -#endif -#pragma clang diagnostic ignored "-Wproperty-attribute-mismatch" -#pragma clang diagnostic ignored "-Wduplicate-method-arg" -#if __has_warning("-Wpragma-clang-attribute") -# pragma clang diagnostic ignored "-Wpragma-clang-attribute" -#endif -#pragma clang diagnostic ignored "-Wunknown-pragmas" -#pragma clang diagnostic ignored "-Wnullability" -#pragma clang diagnostic ignored "-Wdollar-in-identifier-extension" - -#if __has_attribute(external_source_symbol) -# pragma push_macro("any") -# undef any -# pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="DouShouQiModel",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol)) -# pragma pop_macro("any") -#endif - -#if defined(__OBJC__) -#endif -#if __has_attribute(external_source_symbol) -# pragma clang attribute pop -#endif -#if defined(__cplusplus) -#endif -#pragma clang diagnostic pop -#endif - -#else -#error unsupported Swift architecture -#endif diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Headers/DouShouQiModel.h b/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Headers/DouShouQiModel.h deleted file mode 100644 index 5bbf06a..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Headers/DouShouQiModel.h +++ /dev/null @@ -1,18 +0,0 @@ -// -// DouShouQiModel.h -// DouShouQiModel -// -// Created by Marc ChevaldonnΓ© on 14/05/2024. -// - -#import - -//! Project version number for DouShouQiModel. -FOUNDATION_EXPORT double DouShouQiModelVersionNumber; - -//! Project version string for DouShouQiModel. -FOUNDATION_EXPORT const unsigned char DouShouQiModelVersionString[]; - -// In this header, you should import all the public headers of your framework using statements like #import - - diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Info.plist b/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Info.plist deleted file mode 100644 index e83fb5fe8f9556626c1424e0cafa75505ea9c486..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 763 zcmY*W%Wl&^6rC9gv_KoTp^%0a+VZAg*`_Hggw!~ZqBLz9J54}Q+=)F&Mjb!!qYwcL zw(R%-7G=$bAK(YrAy~8F2lxXfiLI2`+4PYifCTt z#uwA|#mK}WjY9E%PTLYCy;y0KHCdESt~Y75?+!P*FB`(T>DnUpJVr#Gjb;#tj2+ve z$*|KCWkaefaz3XtsW)`Ffi6E0l~#g=K$mlh)R1%eoFsL0nZNe={sRFD=;UD?`}Wo* zm!HfZosE-2Oh#B7{Pb&1N;QP!0+$}{009YfTqw4nnfv; kL0R++70@oy&>OiFz~~@2j^I%o DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO11notFinishedyA2CmF", - "mangledName": "$s14DouShouQiModel6ResultO11notFinishedyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "even", - "printedName": "even", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Result.Type) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO4evenyA2CmF", - "mangledName": "$s14DouShouQiModel6ResultO4evenyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "winner", - "printedName": "winner", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Result.Type) -> (DouShouQiModel.Owner, DouShouQiModel.WinningReason) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner, DouShouQiModel.WinningReason) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(winner: DouShouQiModel.Owner, reason: DouShouQiModel.WinningReason)", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO6winneryAcA5OwnerO_AA13WinningReasonOtcACmF", - "mangledName": "$s14DouShouQiModel6ResultO6winneryAcA5OwnerO_AA13WinningReasonOtcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6ResultO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel6ResultO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel6ResultO", - "mangledName": "$s14DouShouQiModel6ResultO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "TypeDecl", - "name": "WinningReason", - "printedName": "WinningReason", - "children": [ - { - "kind": "Var", - "name": "denReached", - "printedName": "denReached", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO10denReachedyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO10denReachedyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "noMorePieces", - "printedName": "noMorePieces", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO12noMorePiecesyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO12noMorePiecesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "tooManyOccurences", - "printedName": "tooManyOccurences", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO17tooManyOccurencesyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO17tooManyOccurencesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "noMovesLeft", - "printedName": "noMovesLeft", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO11noMovesLeftyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO11noMovesLeftyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel13WinningReasonO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel13WinningReasonO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel13WinningReasonO9hashValueSivp", - "mangledName": "$s14DouShouQiModel13WinningReasonO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel13WinningReasonO9hashValueSivg", - "mangledName": "$s14DouShouQiModel13WinningReasonO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel13WinningReasonO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel13WinningReasonO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel13WinningReasonO", - "mangledName": "$s14DouShouQiModel13WinningReasonO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "BoardResult", - "printedName": "BoardResult", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel11BoardResultO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "ok", - "printedName": "ok", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> (DouShouQiModel.Piece?) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece?) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece?)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO2okyAcA5PieceVSg_tcACmF", - "mangledName": "$s14DouShouQiModel11BoardResultO2okyAcA5PieceVSg_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "failed", - "printedName": "failed", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> (DouShouQiModel.BoardFailingReason) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(reason: DouShouQiModel.BoardFailingReason)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO6failedyAcA0E13FailingReasonO_tcACmF", - "mangledName": "$s14DouShouQiModel11BoardResultO6failedyAcA0E13FailingReasonO_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11BoardResultO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel11BoardResultO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel11BoardResultO", - "mangledName": "$s14DouShouQiModel11BoardResultO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "TypeDecl", - "name": "BoardFailingReason", - "printedName": "BoardFailingReason", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "outOfBounds", - "printedName": "outOfBounds", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO11outOfBoundsyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO11outOfBoundsyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cellNotEmpty", - "printedName": "cellNotEmpty", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO12cellNotEmptyyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO12cellNotEmptyyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cellEmpty", - "printedName": "cellEmpty", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9cellEmptyyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9cellEmptyyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel18BoardFailingReasonO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9hashValueSivp", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9hashValueSivg", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel18BoardFailingReasonO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel18BoardFailingReasonO", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "HumanPlayer", - "printedName": "HumanPlayer", - "children": [ - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:andInputMethod:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.HumanPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ] - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel11HumanPlayerC8withName5andId0I11InputMethodACSgSS_AA5OwnerOAA4MoveVSgACctcfc", - "mangledName": "$s14DouShouQiModel11HumanPlayerC8withName5andId0I11InputMethodACSgSS_AA5OwnerOAA4MoveVSgACctcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.HumanPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel11HumanPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel11HumanPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11HumanPlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "mangledName": "$s14DouShouQiModel11HumanPlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "changeInput", - "printedName": "changeInput(input:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11HumanPlayerC11changeInput5inputyAA4MoveVSgACc_tF", - "mangledName": "$s14DouShouQiModel11HumanPlayerC11changeInput5inputyAA4MoveVSgACc_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11HumanPlayerC10chooseMoveyyAA0H0VSgYaKF", - "mangledName": "$s14DouShouQiModel11HumanPlayerC10chooseMoveyyAA0H0VSgYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel11HumanPlayerC", - "mangledName": "$s14DouShouQiModel11HumanPlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "superclassUsr": "s:14DouShouQiModel6PlayerC", - "inheritsConvenienceInitializers": true, - "superclassNames": [ - "DouShouQiModel.Player" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "ClassicRules", - "printedName": "ClassicRules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11createBoardAA0H0VyFZ", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11createBoardAA0H0VyFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10checkBoardyyAA0H0VKFZ", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10checkBoardyyAA0H0VKFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init()", - "children": [ - { - "kind": "TypeNominal", - "name": "ClassicRules", - "printedName": "DouShouQiModel.ClassicRules", - "usr": "s:14DouShouQiModel12ClassicRulesV" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12ClassicRulesVACycfc", - "mangledName": "$s14DouShouQiModel12ClassicRulesVACycfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(occurences:historic:)", - "children": [ - { - "kind": "TypeNominal", - "name": "ClassicRules", - "printedName": "DouShouQiModel.ClassicRules", - "usr": "s:14DouShouQiModel12ClassicRulesV" - }, - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toM00n2ToP0SbAA0K0V_S4itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toM00n2ToP0SbAA0K0V_S4itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard04withH0SbAA0K0V_AA0H0VtF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard04withH0SbAA0K0V_AA0H0VtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10isGameOver9withBoard16andLastRowPlayed0lM12ColumnPlayerSb_AA6ResultOtAA0K0V_S2itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10isGameOver9withBoard16andLastRowPlayed0lM12ColumnPlayerSb_AA6ResultOtAA0K0V_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10playedMove_15onStartingBoard012andResultingK0yAA0H0V_AA0K0VAJtKF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10playedMove_15onStartingBoard012andResultingK0yAA0H0V_AA0K0VAJtKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel12ClassicRulesV", - "mangledName": "$s14DouShouQiModel12ClassicRulesV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Rules", - "printedName": "Rules", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Cell", - "printedName": "Cell", - "children": [ - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel4CellV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel4CellV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "cellType", - "printedName": "cellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV8cellTypeAA0eG0Ovp", - "mangledName": "$s14DouShouQiModel4CellV8cellTypeAA0eG0Ovp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV8cellTypeAA0eG0Ovg", - "mangledName": "$s14DouShouQiModel4CellV8cellTypeAA0eG0Ovg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "initialOwner", - "printedName": "initialOwner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV12initialOwnerAA0G0Ovp", - "mangledName": "$s14DouShouQiModel4CellV12initialOwnerAA0G0Ovp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV12initialOwnerAA0G0Ovg", - "mangledName": "$s14DouShouQiModel4CellV12initialOwnerAA0G0Ovg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "piece", - "printedName": "piece", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvp", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvg", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - }, - { - "kind": "Accessor", - "name": "Set", - "printedName": "Set()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvs", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvs", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "set" - }, - { - "kind": "Accessor", - "name": "Modify", - "printedName": "Modify()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvM", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvM", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "_modify" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(ofType:ownedBy:withPiece:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "hasDefaultArg": true, - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "hasDefaultArg": true, - "usr": "s:Sq" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4CellV6ofType7ownedBy9withPieceAcA0eG0O_AA5OwnerOAA0K0VSgtcfc", - "mangledName": "$s14DouShouQiModel4CellV6ofType7ownedBy9withPieceAcA0eG0O_AA5OwnerOAA0K0VSgtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4CellV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel4CellV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel4CellV", - "mangledName": "$s14DouShouQiModel4CellV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "VerySimpleRules", - "printedName": "VerySimpleRules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11createBoardAA0I0VyFZ", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11createBoardAA0I0VyFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10checkBoardyyAA0I0VKFZ", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10checkBoardyyAA0I0VKFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init()", - "children": [ - { - "kind": "TypeNominal", - "name": "VerySimpleRules", - "printedName": "DouShouQiModel.VerySimpleRules", - "usr": "s:14DouShouQiModel15VerySimpleRulesV" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel15VerySimpleRulesVACycfc", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesVACycfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(occurences:historic:)", - "children": [ - { - "kind": "TypeNominal", - "name": "VerySimpleRules", - "printedName": "DouShouQiModel.VerySimpleRules", - "usr": "s:14DouShouQiModel15VerySimpleRulesV" - }, - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toN00o2ToQ0SbAA0L0V_S4itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toN00o2ToQ0SbAA0L0V_S4itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard04withI0SbAA0L0V_AA0I0VtF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard04withI0SbAA0L0V_AA0I0VtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10isGameOver9withBoard16andLastRowPlayed0mN12ColumnPlayerSb_AA6ResultOtAA0L0V_S2itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10isGameOver9withBoard16andLastRowPlayed0mN12ColumnPlayerSb_AA6ResultOtAA0L0V_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10playedMove_15onStartingBoard012andResultingL0yAA0I0V_AA0L0VAJtKF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10playedMove_15onStartingBoard012andResultingL0yAA0I0V_AA0L0VAJtKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel15VerySimpleRulesV", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Rules", - "printedName": "Rules", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Rules", - "printedName": "Rules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11createBoardAA0G0VyFZ", - "mangledName": "$s14DouShouQiModel5RulesP11createBoardAA0G0VyFZ", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "static": true, - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10checkBoardyyAA0G0VKFZ", - "mangledName": "$s14DouShouQiModel5RulesP10checkBoardyyAA0G0VKFZ", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "static": true, - "protocolReq": true, - "throwing": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel5RulesP13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel5RulesP8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel5RulesP8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11isMoveValid7onBoard7fromRow13andFromColumn02toL00m2ToO0SbAA0J0V_S4itF", - "mangledName": "$s14DouShouQiModel5RulesP11isMoveValid7onBoard7fromRow13andFromColumn02toL00m2ToO0SbAA0J0V_S4itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11isMoveValid7onBoard04withG0SbAA0J0V_AA0G0VtF", - "mangledName": "$s14DouShouQiModel5RulesP11isMoveValid7onBoard04withG0SbAA0J0V_AA0G0VtF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10isGameOver9withBoard16andLastRowPlayed0kL12ColumnPlayerSb_AA6ResultOtAA0J0V_S2itF", - "mangledName": "$s14DouShouQiModel5RulesP10isGameOver9withBoard16andLastRowPlayed0kL12ColumnPlayerSb_AA6ResultOtAA0J0V_S2itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10playedMove_15onStartingBoard012andResultingJ0yAA0G0V_AA0J0VAJtKF", - "mangledName": "$s14DouShouQiModel5RulesP10playedMove_15onStartingBoard012andResultingJ0yAA0G0V_AA0J0VAJtKF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "declAttributes": [ - "Mutating" - ], - "throwing": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "protocolReq": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5RulesP8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel5RulesP8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "protocolReq": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5RulesP8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel5RulesP8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Protocol", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Player", - "printedName": "Player", - "children": [ - { - "kind": "Var", - "name": "name", - "printedName": "name", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6PlayerC4nameSSvp", - "mangledName": "$s14DouShouQiModel6PlayerC4nameSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "Final", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6PlayerC4nameSSvg", - "mangledName": "$s14DouShouQiModel6PlayerC4nameSSvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "declAttributes": [ - "Final" - ], - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "id", - "printedName": "id", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6PlayerC2idAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel6PlayerC2idAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "Final", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6PlayerC2idAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel6PlayerC2idAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "declAttributes": [ - "Final" - ], - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Player?", - "children": [ - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel6PlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel6PlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6PlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "mangledName": "$s14DouShouQiModel6PlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addPlayedCallbacksListener", - "printedName": "addPlayedCallbacksListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Move?, DouShouQiModel.Player) async throws -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Move?, DouShouQiModel.Player)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6PlayerC26addPlayedCallbacksListeneryyyAA4MoveVSg_ACtYaKcF", - "mangledName": "$s14DouShouQiModel6PlayerC26addPlayedCallbacksListeneryyyAA4MoveVSg_ACtYaKcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "notifyPlayed", - "printedName": "notifyPlayed(withMove:andPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6PlayerC12notifyPlayed8withMove03andE0yAA0I0VSg_ACtYaKF", - "mangledName": "$s14DouShouQiModel6PlayerC12notifyPlayed8withMove03andE0yAA0I0VSg_ACtYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel6PlayerC", - "mangledName": "$s14DouShouQiModel6PlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "GameError", - "printedName": "GameError", - "children": [ - { - "kind": "Var", - "name": "invalidMove", - "printedName": "invalidMove", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO11invalidMoveyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO11invalidMoveyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "nextPlayerError", - "printedName": "nextPlayerError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO010nextPlayerF0yA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO010nextPlayerF0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badPlayerId", - "printedName": "badPlayerId", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> (Swift.String) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(Swift.String) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(message: Swift.String)", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO11badPlayerIdyACSS_tcACmF", - "mangledName": "$s14DouShouQiModel9GameErrorO11badPlayerIdyACSS_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidRules", - "printedName": "invalidRules", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO12invalidRulesyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO12invalidRulesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidPlayer", - "printedName": "invalidPlayer", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO13invalidPlayeryA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO13invalidPlayeryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidGame", - "printedName": "invalidGame", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO07invalidE0yA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO07invalidE0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidBoard", - "printedName": "invalidBoard", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO12invalidBoardyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO12invalidBoardyA2CmF", - "moduleName": "DouShouQiModel" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel9GameErrorO", - "mangledName": "$s14DouShouQiModel9GameErrorO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Error", - "printedName": "Error", - "usr": "s:s5ErrorP", - "mangledName": "$ss5ErrorP" - }, - { - "kind": "Conformance", - "name": "Sendable", - "printedName": "Sendable", - "usr": "s:s8SendableP", - "mangledName": "$ss8SendableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "RandomPlayer", - "printedName": "RandomPlayer", - "children": [ - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12RandomPlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "mangledName": "$s14DouShouQiModel12RandomPlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.RandomPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "RandomPlayer", - "printedName": "DouShouQiModel.RandomPlayer", - "usr": "s:14DouShouQiModel12RandomPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12RandomPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel12RandomPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "overriding": true, - "implicit": true, - "declAttributes": [ - "Override" - ], - "init_kind": "Designated" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel12RandomPlayerC", - "mangledName": "$s14DouShouQiModel12RandomPlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "superclassUsr": "s:14DouShouQiModel8IAPlayerC", - "inheritsConvenienceInitializers": true, - "superclassNames": [ - "DouShouQiModel.IAPlayer", - "DouShouQiModel.Player" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "CellType", - "printedName": "CellType", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "jungle", - "printedName": "jungle", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO6jungleyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO6jungleyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "water", - "printedName": "water", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO5wateryA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO5wateryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "trap", - "printedName": "trap", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO4trapyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO4trapyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "den", - "printedName": "den", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO3denyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO3denyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "allCases", - "printedName": "allCases", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel8CellTypeO8allCasesSayACGvpZ", - "mangledName": "$s14DouShouQiModel8CellTypeO8allCasesSayACGvpZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel8CellTypeO8allCasesSayACGvgZ", - "mangledName": "$s14DouShouQiModel8CellTypeO8allCasesSayACGvgZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel8CellTypeO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel8CellTypeO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel8CellTypeO9hashValueSivp", - "mangledName": "$s14DouShouQiModel8CellTypeO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel8CellTypeO9hashValueSivg", - "mangledName": "$s14DouShouQiModel8CellTypeO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel8CellTypeO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel8CellTypeO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel8CellTypeO", - "mangledName": "$s14DouShouQiModel8CellTypeO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "CaseIterable", - "printedName": "CaseIterable", - "children": [ - { - "kind": "TypeWitness", - "name": "AllCases", - "printedName": "AllCases", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ] - } - ], - "usr": "s:s12CaseIterableP", - "mangledName": "$ss12CaseIterableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Board", - "printedName": "Board", - "children": [ - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5BoardV4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "nbRows", - "printedName": "nbRows", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV6nbRowsSivp", - "mangledName": "$s14DouShouQiModel5BoardV6nbRowsSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl", - "RawDocComment" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV6nbRowsSivg", - "mangledName": "$s14DouShouQiModel5BoardV6nbRowsSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "nbColumns", - "printedName": "nbColumns", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV9nbColumnsSivp", - "mangledName": "$s14DouShouQiModel5BoardV9nbColumnsSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl", - "RawDocComment" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV9nbColumnsSivg", - "mangledName": "$s14DouShouQiModel5BoardV9nbColumnsSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "grid", - "printedName": "grid", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvp", - "mangledName": "$s14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvg", - "mangledName": "$s14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withGrid:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Board?", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel5BoardV8withGridACSgSaySayAA4CellVGG_tcfc", - "mangledName": "$s14DouShouQiModel5BoardV8withGridACSgSaySayAA4CellVGG_tcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "countPieces", - "printedName": "countPieces(of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11countPieces2ofSiAA5OwnerO_tF", - "mangledName": "$s14DouShouQiModel5BoardV11countPieces2ofSiAA5OwnerO_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "countPieces", - "printedName": "countPieces()", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11countPiecesSi04nbOfgI7Player1_Si0higI7Player2tyF", - "mangledName": "$s14DouShouQiModel5BoardV11countPiecesSi04nbOfgI7Player1_Si0higI7Player2tyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "insert", - "printedName": "insert(piece:atRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV6insert5piece5atRow9andColumnAA0E6ResultOAA5PieceV_S2itF", - "mangledName": "$s14DouShouQiModel5BoardV6insert5piece5atRow9andColumnAA0E6ResultOAA5PieceV_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "removePiece", - "printedName": "removePiece(atRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11removePiece5atRow9andColumnAA0E6ResultOSi_SitF", - "mangledName": "$s14DouShouQiModel5BoardV11removePiece5atRow9andColumnAA0E6ResultOSi_SitF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV9hashValueSivp", - "mangledName": "$s14DouShouQiModel5BoardV9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV9hashValueSivg", - "mangledName": "$s14DouShouQiModel5BoardV9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5BoardV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel5BoardV", - "mangledName": "$s14DouShouQiModel5BoardV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Piece", - "printedName": "Piece", - "children": [ - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel5PieceV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel5PieceV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "owner", - "printedName": "owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV5ownerAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel5PieceV5ownerAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV5ownerAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel5PieceV5ownerAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "animal", - "printedName": "animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV6animalAA6AnimalOvp", - "mangledName": "$s14DouShouQiModel5PieceV6animalAA6AnimalOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV6animalAA6AnimalOvg", - "mangledName": "$s14DouShouQiModel5PieceV6animalAA6AnimalOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withOwner:andAnimal:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel5PieceV9withOwner9andAnimalAcA0G0O_AA0I0Otcfc", - "mangledName": "$s14DouShouQiModel5PieceV9withOwner9andAnimalAcA0G0O_AA0I0Otcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV9hashValueSivp", - "mangledName": "$s14DouShouQiModel5PieceV9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV9hashValueSivg", - "mangledName": "$s14DouShouQiModel5PieceV9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5PieceV4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5PieceV4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5PieceV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5PieceV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel5PieceV", - "mangledName": "$s14DouShouQiModel5PieceV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "InvalidBoardError", - "printedName": "InvalidBoardError", - "children": [ - { - "kind": "Var", - "name": "unknownError", - "printedName": "unknownError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO07unknownG0yA2CmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO07unknownG0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badDimensions", - "printedName": "badDimensions", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(nbRows: Swift.Int, nbColumns: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO13badDimensionsyACSi_SitcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO13badDimensionsyACSi_SitcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badCellType", - "printedName": "badCellType", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.CellType, Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType, Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO11badCellTypeyAcA0iJ0O_S2itcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO11badCellTypeyAcA0iJ0O_S2itcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "multipleOccurenceOfSamePiece", - "printedName": "multipleOccurenceOfSamePiece", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO28multipleOccurenceOfSamePieceyAcA0L0V_tcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO28multipleOccurenceOfSamePieceyAcA0L0V_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "pieceWithNoOwner", - "printedName": "pieceWithNoOwner", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO16pieceWithNoOwneryAcA5PieceV_tcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO16pieceWithNoOwneryAcA5PieceV_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "pieceNotAllowedOnThisCell", - "printedName": "pieceNotAllowedOnThisCell", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece, DouShouQiModel.Cell) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece, DouShouQiModel.Cell) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO25pieceNotAllowedOnThisCellyAcA5PieceV_AA0M0VtcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO25pieceNotAllowedOnThisCellyAcA5PieceV_AA0M0VtcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Error", - "printedName": "Error", - "usr": "s:s5ErrorP", - "mangledName": "$ss5ErrorP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Sendable", - "printedName": "Sendable", - "usr": "s:s8SendableP", - "mangledName": "$ss8SendableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Owner", - "printedName": "Owner", - "children": [ - { - "kind": "Var", - "name": "noOne", - "printedName": "noOne", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO5noOneyA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO5noOneyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "player1", - "printedName": "player1", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO7player1yA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO7player1yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "player2", - "printedName": "player2", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO7player2yA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO7player2yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "simpleDescription", - "printedName": "simpleDescription", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5OwnerO17simpleDescriptionSSvp", - "mangledName": "$s14DouShouQiModel5OwnerO17simpleDescriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5OwnerO17simpleDescriptionSSvg", - "mangledName": "$s14DouShouQiModel5OwnerO17simpleDescriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5OwnerO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5OwnerO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5OwnerO9hashValueSivp", - "mangledName": "$s14DouShouQiModel5OwnerO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5OwnerO9hashValueSivg", - "mangledName": "$s14DouShouQiModel5OwnerO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5OwnerO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5OwnerO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel5OwnerO", - "mangledName": "$s14DouShouQiModel5OwnerO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "RawDocComment" - ] - }, - { - "kind": "TypeDecl", - "name": "IAPlayer", - "printedName": "IAPlayer", - "children": [ - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.IAPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "IAPlayer", - "printedName": "DouShouQiModel.IAPlayer", - "usr": "s:14DouShouQiModel8IAPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel8IAPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel8IAPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "overriding": true, - "implicit": true, - "declAttributes": [ - "Override" - ], - "init_kind": "Designated" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel8IAPlayerC", - "mangledName": "$s14DouShouQiModel8IAPlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "superclassUsr": "s:14DouShouQiModel6PlayerC", - "inheritsConvenienceInitializers": true, - "superclassNames": [ - "DouShouQiModel.Player" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Move", - "printedName": "Move", - "children": [ - { - "kind": "Var", - "name": "owner", - "printedName": "owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV5ownerAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel4MoveV5ownerAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV5ownerAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel4MoveV5ownerAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rowOrigin", - "printedName": "rowOrigin", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV9rowOriginSivp", - "mangledName": "$s14DouShouQiModel4MoveV9rowOriginSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV9rowOriginSivg", - "mangledName": "$s14DouShouQiModel4MoveV9rowOriginSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "columnOrigin", - "printedName": "columnOrigin", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV12columnOriginSivp", - "mangledName": "$s14DouShouQiModel4MoveV12columnOriginSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV12columnOriginSivg", - "mangledName": "$s14DouShouQiModel4MoveV12columnOriginSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rowDestination", - "printedName": "rowDestination", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV14rowDestinationSivp", - "mangledName": "$s14DouShouQiModel4MoveV14rowDestinationSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV14rowDestinationSivg", - "mangledName": "$s14DouShouQiModel4MoveV14rowDestinationSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "columnDestination", - "printedName": "columnDestination", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV17columnDestinationSivp", - "mangledName": "$s14DouShouQiModel4MoveV17columnDestinationSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV17columnDestinationSivg", - "mangledName": "$s14DouShouQiModel4MoveV17columnDestinationSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(of:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4MoveV2of7fromRow13andFromColumn02toH00i2ToK0AcA5OwnerO_S4itcfc", - "mangledName": "$s14DouShouQiModel4MoveV2of7fromRow13andFromColumn02toH00i2ToK0AcA5OwnerO_S4itcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel4MoveV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel4MoveV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4MoveV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel4MoveV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel4MoveV", - "mangledName": "$s14DouShouQiModel4MoveV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Animal", - "printedName": "Animal", - "children": [ - { - "kind": "Var", - "name": "rat", - "printedName": "rat", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3ratyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3ratyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cat", - "printedName": "cat", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3catyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3catyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "dog", - "printedName": "dog", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3dogyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3dogyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "wolf", - "printedName": "wolf", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO4wolfyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO4wolfyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "leopard", - "printedName": "leopard", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO7leopardyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO7leopardyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "tiger", - "printedName": "tiger", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO5tigeryA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO5tigeryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "lion", - "printedName": "lion", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO4lionyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO4lionyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "elephant", - "printedName": "elephant", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO8elephantyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO8elephantyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "rawValue", - "printedName": "rawValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6AnimalO8rawValueSivp", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6AnimalO8rawValueSivg", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(rawValue:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Animal?", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel6AnimalO8rawValueACSgSi_tcfc", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueACSgSi_tcfc", - "moduleName": "DouShouQiModel", - "implicit": true, - "init_kind": "Designated" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel6AnimalO", - "mangledName": "$s14DouShouQiModel6AnimalO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "enumRawTypeName": "Int", - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "RawRepresentable", - "printedName": "RawRepresentable", - "children": [ - { - "kind": "TypeWitness", - "name": "RawValue", - "printedName": "RawValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ], - "usr": "s:SY", - "mangledName": "$sSY" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Game", - "printedName": "Game", - "children": [ - { - "kind": "Var", - "name": "board", - "printedName": "board", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameC5boardAA5BoardVvp", - "mangledName": "$s14DouShouQiModel4GameC5boardAA5BoardVvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameC5boardAA5BoardVvg", - "mangledName": "$s14DouShouQiModel4GameC5boardAA5BoardVvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rules", - "printedName": "rules", - "children": [ - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameC5rulesAA5Rules_pvp", - "mangledName": "$s14DouShouQiModel4GameC5rulesAA5Rules_pvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameC5rulesAA5Rules_pvg", - "mangledName": "$s14DouShouQiModel4GameC5rulesAA5Rules_pvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "players", - "printedName": "players", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Owner : DouShouQiModel.Player]", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameC7playersSDyAA5OwnerOAA6PlayerCGvp", - "mangledName": "$s14DouShouQiModel4GameC7playersSDyAA5OwnerOAA6PlayerCGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Final", - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Owner : DouShouQiModel.Player]", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameC7playersSDyAA5OwnerOAA6PlayerCGvg", - "mangledName": "$s14DouShouQiModel4GameC7playersSDyAA5OwnerOAA6PlayerCGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "declAttributes": [ - "Final" - ], - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withRules:andPlayer1:andPlayer2:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameC" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4GameC9withRules10andPlayer10H7Player2AcA0G0_p_AA6PlayerCAItKcfc", - "mangledName": "$s14DouShouQiModel4GameC9withRules10andPlayer10H7Player2AcA0G0_p_AA6PlayerCAItKcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withBoard:andRules:andPlayer1:andPlayer2:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameC" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4GameC9withBoard8andRules0H7Player10H7Player2AcA0G0V_AA0I0_pAA6PlayerCALtKcfc", - "mangledName": "$s14DouShouQiModel4GameC9withBoard8andRules0H7Player10H7Player2AcA0G0V_AA0I0_pAA6PlayerCALtKcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl", - "RawDocComment" - ], - "throwing": true, - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "addGameStartedListener", - "printedName": "addGameStartedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC03addE15StartedListeneryyyAA5BoardVcF", - "mangledName": "$s14DouShouQiModel4GameC03addE15StartedListeneryyyAA5BoardVcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addPlayerNotifiedListener", - "printedName": "addPlayerNotifiedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Player) async throws -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Player)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC25addPlayerNotifiedListeneryyyAA5BoardV_AA0G0CtYaKcF", - "mangledName": "$s14DouShouQiModel4GameC25addPlayerNotifiedListeneryyyAA5BoardV_AA0G0CtYaKcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addGameChangedListener", - "printedName": "addGameChangedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Game) async -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameC" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC03addE15ChangedListeneryyyACYacF", - "mangledName": "$s14DouShouQiModel4GameC03addE15ChangedListeneryyyACYacF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addGameOverListener", - "printedName": "addGameOverListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Player?", - "children": [ - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:Sq" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC03addE12OverListeneryyyAA5BoardV_AA6ResultOAA6PlayerCSgtcF", - "mangledName": "$s14DouShouQiModel4GameC03addE12OverListeneryyyAA5BoardV_AA6ResultOAA6PlayerCSgtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addMoveChosenCallbacksListener", - "printedName": "addMoveChosenCallbacksListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC30addMoveChosenCallbacksListeneryyyAA5BoardV_AA0G0VAA6PlayerCtcF", - "mangledName": "$s14DouShouQiModel4GameC30addMoveChosenCallbacksListeneryyyAA5BoardV_AA0G0VAA6PlayerCtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addInvalidMoveCallbacksListener", - "printedName": "addInvalidMoveCallbacksListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC31addInvalidMoveCallbacksListeneryyyAA5BoardV_AA0H0VAA6PlayerCSbtcF", - "mangledName": "$s14DouShouQiModel4GameC31addInvalidMoveCallbacksListeneryyyAA5BoardV_AA0H0VAA6PlayerCSbtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addBoardChangedListener", - "printedName": "addBoardChangedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC23addBoardChangedListeneryyyAA0G0VcF", - "mangledName": "$s14DouShouQiModel4GameC23addBoardChangedListeneryyyAA0G0VcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addPieceRemovedListener", - "printedName": "addPieceRemovedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(Swift.Int, Swift.Int, DouShouQiModel.Piece) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Int, Swift.Int, DouShouQiModel.Piece)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC23addPieceRemovedListeneryyySi_SiAA0G0VtcF", - "mangledName": "$s14DouShouQiModel4GameC23addPieceRemovedListeneryyySi_SiAA0G0VtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "onPlayed", - "printedName": "onPlayed(with:from:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC8onPlayed4with4fromyAA4MoveVSg_AA6PlayerCtYaKF", - "mangledName": "$s14DouShouQiModel4GameC8onPlayed4with4fromyAA4MoveVSg_AA6PlayerCtYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "isOver", - "printedName": "isOver", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameC6isOverSbvp", - "mangledName": "$s14DouShouQiModel4GameC6isOverSbvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameC6isOverSbvg", - "mangledName": "$s14DouShouQiModel4GameC6isOverSbvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "start", - "printedName": "start()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC5startyyYaKF", - "mangledName": "$s14DouShouQiModel4GameC5startyyYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel4GameC", - "mangledName": "$s14DouShouQiModel4GameC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl", - "RawDocComment" - ] - } - ], - "json_format_version": 8 - }, - "ConstValues": [ - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 81, - "length": 1, - "value": "9" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 111, - "length": 1, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 148, - "length": 1, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 3048, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 3088, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 3941, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Dictionary", - "offset": 4285, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 4475, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 4517, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 4565, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 4967, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 6169, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 6189, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 6229, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 9685, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 10586, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 10906, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11013, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 11170, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11188, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11280, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11325, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11433, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11477, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11569, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11632, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11740, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 12266, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12307, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12319, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12326, - "length": 2, - "value": "-1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12703, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12714, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12721, - "length": 2, - "value": "-1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 13086, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 13464, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 15597, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 15704, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 15728, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 15845, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 15869, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 16049, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 16149, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 16579, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 16584, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Dictionary", - "offset": 16948, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 17004, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 122, - "length": 81, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 147, - "length": 4, - "value": "\"ΓΈ\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 152, - "length": 2, - "value": "\" on \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 167, - "length": 1, - "value": "\", \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 202, - "length": 1, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 89, - "length": 1, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 119, - "length": 1, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2067, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2107, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2267, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2277, - "length": 1, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2419, - "length": 1, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2429, - "length": 1, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2964, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3004, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 3773, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3793, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3833, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 4182, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 4292, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 4531, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 4639, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4773, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4782, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4800, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4809, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4925, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 5013, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 6962, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 7077, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7105, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 7230, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7258, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7350, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Dictionary", - "offset": 8072, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 8128, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Player.swift", - "kind": "Array", - "offset": 418, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "BooleanLiteral", - "offset": 475, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 570, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 694, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 981, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 996, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1015, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1049, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1212, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1278, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1548, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1579, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1979, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 2010, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 122, - "length": 40, - "value": "\"[\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 150, - "length": 1, - "value": "\":\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 160, - "length": 1, - "value": "\"]\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 183, - "length": 3, - "value": "\"x\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 229, - "length": 3, - "value": "\"1\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 275, - "length": 3, - "value": "\"2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 616, - "length": 87, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 625, - "length": 1, - "value": "\": [\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 640, - "length": 1, - "value": "\",\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 656, - "length": 1, - "value": "\"] -> [\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 679, - "length": 1, - "value": "\", \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 701, - "length": 1, - "value": "\"]\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "StringLiteral", - "offset": 513, - "length": 55, - "value": "\"The ids of players are not .player1 and then .player2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "StringLiteral", - "offset": 1483, - "length": 55, - "value": "\"The ids of players are not .player1 and then .player2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 1754, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 2090, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 2582, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 3012, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 3416, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 3827, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 4261, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 4580, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "BooleanLiteral", - "offset": 6361, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "BooleanLiteral", - "offset": 7044, - "length": 5, - "value": "false" - } - ] -} \ No newline at end of file diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios.private.swiftinterface b/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios.private.swiftinterface deleted file mode 100644 index a95eaf4..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios.private.swiftinterface +++ /dev/null @@ -1,266 +0,0 @@ -// swift-interface-format-version: 1.0 -// swift-compiler-version: Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5) -// swift-module-flags: -target arm64-apple-ios16.0 -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -module-name DouShouQiModel -// swift-module-flags-ignorable: -enable-bare-slash-regex -@_exported import DouShouQiModel -import Foundation -import Swift -import _Concurrency -import _StringProcessing -import _SwiftConcurrencyShims -public enum Result : Swift.Equatable { - case notFinished - case even - case winner(winner: DouShouQiModel.Owner, reason: DouShouQiModel.WinningReason) - public static func == (a: DouShouQiModel.Result, b: DouShouQiModel.Result) -> Swift.Bool -} -public enum WinningReason { - case denReached, noMorePieces, tooManyOccurences, noMovesLeft - public static func == (a: DouShouQiModel.WinningReason, b: DouShouQiModel.WinningReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -public enum BoardResult : Swift.Equatable { - case unknown - case ok(piece: DouShouQiModel.Piece?) - case failed(reason: DouShouQiModel.BoardFailingReason) - public static func == (a: DouShouQiModel.BoardResult, b: DouShouQiModel.BoardResult) -> Swift.Bool -} -public enum BoardFailingReason { - case unknown, outOfBounds, cellNotEmpty, cellEmpty - public static func == (a: DouShouQiModel.BoardFailingReason, b: DouShouQiModel.BoardFailingReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class HumanPlayer : DouShouQiModel.Player { - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner, andInputMethod input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - #if compiler(>=5.3) && $AsyncAwait - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - public func changeInput(input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - #if compiler(>=5.3) && $AsyncAwait - public func chooseMove(_ move: DouShouQiModel.Move?) async throws - #endif - @objc deinit -} -public struct ClassicRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public struct Cell : Swift.CustomStringConvertible, Swift.Equatable { - public var description: Swift.String { - get - } - public let cellType: DouShouQiModel.CellType - public let initialOwner: DouShouQiModel.Owner - public var piece: DouShouQiModel.Piece? - public init(ofType cellType: DouShouQiModel.CellType, ownedBy initialOwner: DouShouQiModel.Owner = .noOne, withPiece piece: DouShouQiModel.Piece? = nil) - public static func == (a: DouShouQiModel.Cell, b: DouShouQiModel.Cell) -> Swift.Bool -} -public struct VerySimpleRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public protocol Rules { - static func createBoard() -> DouShouQiModel.Board - static func checkBoard(_ board: DouShouQiModel.Board) throws - func getNextPlayer() -> DouShouQiModel.Owner - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - func isMoveValid(onBoard: DouShouQiModel.Board, fromRow: Swift.Int, andFromColumn: Swift.Int, toRow: Swift.Int, andToColumn: Swift.Int) -> Swift.Bool - func isMoveValid(onBoard: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - func isGameOver(withBoard: DouShouQiModel.Board, andLastRowPlayed: Swift.Int, andLastColumnPlayer: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - var occurences: [DouShouQiModel.Board : Swift.Int] { get } - var historic: [DouShouQiModel.Move] { get } -} -public class Player { - final public let name: Swift.String - final public let id: DouShouQiModel.Owner - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - #if compiler(>=5.3) && $AsyncAwait - public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - #if compiler(>=5.3) && $AsyncAwait - public func addPlayedCallbacksListener(_ listener: @escaping (DouShouQiModel.Move?, DouShouQiModel.Player) async throws -> Swift.Void) - #endif - #if compiler(>=5.3) && $AsyncAwait - public func notifyPlayed(withMove move: DouShouQiModel.Move?, andPlayer player: DouShouQiModel.Player) async throws - #endif - @objc deinit -} -public enum GameError : Swift.Error { - case invalidMove, nextPlayerError, badPlayerId(message: Swift.String), invalidRules, invalidPlayer, invalidGame, invalidBoard -} -@_inheritsConvenienceInitializers public class RandomPlayer : DouShouQiModel.IAPlayer { - #if compiler(>=5.3) && $AsyncAwait - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public enum CellType : Swift.CaseIterable { - case unknown, jungle, water, trap, den - public static func == (a: DouShouQiModel.CellType, b: DouShouQiModel.CellType) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public typealias AllCases = [DouShouQiModel.CellType] - public static var allCases: [DouShouQiModel.CellType] { - get - } - public var hashValue: Swift.Int { - get - } -} -public struct Board : Swift.Hashable { - public func hash(into hasher: inout Swift.Hasher) - public let nbRows: Swift.Int - public let nbColumns: Swift.Int - public var grid: [[DouShouQiModel.Cell]] { - get - } - public init?(withGrid grid: [[DouShouQiModel.Cell]]) - public func countPieces(of owner: DouShouQiModel.Owner) -> Swift.Int - public func countPieces() -> (nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int) - public mutating func insert(piece: DouShouQiModel.Piece, atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public mutating func removePiece(atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public static func == (a: DouShouQiModel.Board, b: DouShouQiModel.Board) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public struct Piece : Swift.CustomStringConvertible, Swift.Hashable { - public var description: Swift.String { - get - } - public let owner: DouShouQiModel.Owner - public let animal: DouShouQiModel.Animal - public init(withOwner owner: DouShouQiModel.Owner, andAnimal animal: DouShouQiModel.Animal) - public func hash(into hasher: inout Swift.Hasher) - public static func == (a: DouShouQiModel.Piece, b: DouShouQiModel.Piece) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public enum InvalidBoardError : Swift.Error, Swift.Equatable { - case unknownError - case badDimensions(nbRows: Swift.Int, nbColumns: Swift.Int) - case badCellType(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int) - case multipleOccurenceOfSamePiece(piece: DouShouQiModel.Piece) - case pieceWithNoOwner(piece: DouShouQiModel.Piece) - case pieceNotAllowedOnThisCell(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell) - public static func == (a: DouShouQiModel.InvalidBoardError, b: DouShouQiModel.InvalidBoardError) -> Swift.Bool -} -public enum Owner { - case noOne, player1, player2 - public var simpleDescription: Swift.String { - get - } - public static func == (a: DouShouQiModel.Owner, b: DouShouQiModel.Owner) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class IAPlayer : DouShouQiModel.Player { - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public struct Move : Swift.CustomStringConvertible, Swift.Equatable { - public let owner: DouShouQiModel.Owner - public let rowOrigin: Swift.Int - public let columnOrigin: Swift.Int - public let rowDestination: Swift.Int - public let columnDestination: Swift.Int - public init(of owner: DouShouQiModel.Owner, fromRow rowOrigin: Swift.Int, andFromColumn colOrigin: Swift.Int, toRow rowDest: Swift.Int, andToColumn colDest: Swift.Int) - public var description: Swift.String { - get - } - public static func == (a: DouShouQiModel.Move, b: DouShouQiModel.Move) -> Swift.Bool -} -public enum Animal : Swift.Int { - case rat, cat, dog, wolf, leopard, tiger, lion, elephant - public init?(rawValue: Swift.Int) - public typealias RawValue = Swift.Int - public var rawValue: Swift.Int { - get - } -} -public class Game { - public var board: DouShouQiModel.Board { - get - } - public var rules: any DouShouQiModel.Rules { - get - } - final public let players: [DouShouQiModel.Owner : DouShouQiModel.Player] - public init(withRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public init(withBoard board: DouShouQiModel.Board, andRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public func addGameStartedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public func addPlayerNotifiedListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Player) async throws -> Swift.Void) - #endif - #if compiler(>=5.3) && $AsyncAwait - public func addGameChangedListener(_ listener: @escaping (DouShouQiModel.Game) async -> Swift.Void) - #endif - public func addGameOverListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> Swift.Void) - public func addMoveChosenCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> Swift.Void) - public func addInvalidMoveCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> Swift.Void) - public func addBoardChangedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - public func addPieceRemovedListener(_ listener: @escaping (Swift.Int, Swift.Int, DouShouQiModel.Piece) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public func onPlayed(with move: DouShouQiModel.Move?, from player: DouShouQiModel.Player) async throws - #endif - public var isOver: Swift.Bool { - get - } - #if compiler(>=5.3) && $AsyncAwait - public func start() async throws - #endif - @objc deinit -} -extension DouShouQiModel.WinningReason : Swift.Equatable {} -extension DouShouQiModel.WinningReason : Swift.Hashable {} -extension DouShouQiModel.BoardFailingReason : Swift.Equatable {} -extension DouShouQiModel.BoardFailingReason : Swift.Hashable {} -extension DouShouQiModel.CellType : Swift.Equatable {} -extension DouShouQiModel.CellType : Swift.Hashable {} -extension DouShouQiModel.Owner : Swift.Equatable {} -extension DouShouQiModel.Owner : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.Equatable {} -extension DouShouQiModel.Animal : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.RawRepresentable {} diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios.swiftdoc b/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios.swiftdoc deleted file mode 100644 index b732cc2c96b3aa10d5b34c5fce2e9e0b2808e214..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 684 zcmaDfX9YVW2Lpp90|Ns)qlJ#c+7Dby0=U-%aP4>CT5rI$Ux91Q2d>2%xY!*xUFbQa zy@N^j#3Ahshx9v`wD%m+SaZl(Xp58P1t*OOP8vYc#=uE?50mBGjnH89XK)H48yX)=@m&2h;u4bI3f4b1e-Pf5*TV3-FKODxJYGto^1*`S-5 zUub$g#vN0m7xi$sisc(iA5=4 zW_d|L`Q^pInPmksKy`Vgxk;%-3i)XYMLOE@-8b7D*~~;zP%nb9;g&yb}~c)yHh~kLv;#P Swift.Bool -} -public enum WinningReason { - case denReached, noMorePieces, tooManyOccurences, noMovesLeft - public static func == (a: DouShouQiModel.WinningReason, b: DouShouQiModel.WinningReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -public enum BoardResult : Swift.Equatable { - case unknown - case ok(piece: DouShouQiModel.Piece?) - case failed(reason: DouShouQiModel.BoardFailingReason) - public static func == (a: DouShouQiModel.BoardResult, b: DouShouQiModel.BoardResult) -> Swift.Bool -} -public enum BoardFailingReason { - case unknown, outOfBounds, cellNotEmpty, cellEmpty - public static func == (a: DouShouQiModel.BoardFailingReason, b: DouShouQiModel.BoardFailingReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class HumanPlayer : DouShouQiModel.Player { - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner, andInputMethod input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - #if compiler(>=5.3) && $AsyncAwait - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - public func changeInput(input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - #if compiler(>=5.3) && $AsyncAwait - public func chooseMove(_ move: DouShouQiModel.Move?) async throws - #endif - @objc deinit -} -public struct ClassicRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public struct Cell : Swift.CustomStringConvertible, Swift.Equatable { - public var description: Swift.String { - get - } - public let cellType: DouShouQiModel.CellType - public let initialOwner: DouShouQiModel.Owner - public var piece: DouShouQiModel.Piece? - public init(ofType cellType: DouShouQiModel.CellType, ownedBy initialOwner: DouShouQiModel.Owner = .noOne, withPiece piece: DouShouQiModel.Piece? = nil) - public static func == (a: DouShouQiModel.Cell, b: DouShouQiModel.Cell) -> Swift.Bool -} -public struct VerySimpleRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public protocol Rules { - static func createBoard() -> DouShouQiModel.Board - static func checkBoard(_ board: DouShouQiModel.Board) throws - func getNextPlayer() -> DouShouQiModel.Owner - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - func isMoveValid(onBoard: DouShouQiModel.Board, fromRow: Swift.Int, andFromColumn: Swift.Int, toRow: Swift.Int, andToColumn: Swift.Int) -> Swift.Bool - func isMoveValid(onBoard: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - func isGameOver(withBoard: DouShouQiModel.Board, andLastRowPlayed: Swift.Int, andLastColumnPlayer: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - var occurences: [DouShouQiModel.Board : Swift.Int] { get } - var historic: [DouShouQiModel.Move] { get } -} -public class Player { - final public let name: Swift.String - final public let id: DouShouQiModel.Owner - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - #if compiler(>=5.3) && $AsyncAwait - public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - #if compiler(>=5.3) && $AsyncAwait - public func addPlayedCallbacksListener(_ listener: @escaping (DouShouQiModel.Move?, DouShouQiModel.Player) async throws -> Swift.Void) - #endif - #if compiler(>=5.3) && $AsyncAwait - public func notifyPlayed(withMove move: DouShouQiModel.Move?, andPlayer player: DouShouQiModel.Player) async throws - #endif - @objc deinit -} -public enum GameError : Swift.Error { - case invalidMove, nextPlayerError, badPlayerId(message: Swift.String), invalidRules, invalidPlayer, invalidGame, invalidBoard -} -@_inheritsConvenienceInitializers public class RandomPlayer : DouShouQiModel.IAPlayer { - #if compiler(>=5.3) && $AsyncAwait - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public enum CellType : Swift.CaseIterable { - case unknown, jungle, water, trap, den - public static func == (a: DouShouQiModel.CellType, b: DouShouQiModel.CellType) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public typealias AllCases = [DouShouQiModel.CellType] - public static var allCases: [DouShouQiModel.CellType] { - get - } - public var hashValue: Swift.Int { - get - } -} -public struct Board : Swift.Hashable { - public func hash(into hasher: inout Swift.Hasher) - public let nbRows: Swift.Int - public let nbColumns: Swift.Int - public var grid: [[DouShouQiModel.Cell]] { - get - } - public init?(withGrid grid: [[DouShouQiModel.Cell]]) - public func countPieces(of owner: DouShouQiModel.Owner) -> Swift.Int - public func countPieces() -> (nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int) - public mutating func insert(piece: DouShouQiModel.Piece, atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public mutating func removePiece(atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public static func == (a: DouShouQiModel.Board, b: DouShouQiModel.Board) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public struct Piece : Swift.CustomStringConvertible, Swift.Hashable { - public var description: Swift.String { - get - } - public let owner: DouShouQiModel.Owner - public let animal: DouShouQiModel.Animal - public init(withOwner owner: DouShouQiModel.Owner, andAnimal animal: DouShouQiModel.Animal) - public func hash(into hasher: inout Swift.Hasher) - public static func == (a: DouShouQiModel.Piece, b: DouShouQiModel.Piece) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public enum InvalidBoardError : Swift.Error, Swift.Equatable { - case unknownError - case badDimensions(nbRows: Swift.Int, nbColumns: Swift.Int) - case badCellType(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int) - case multipleOccurenceOfSamePiece(piece: DouShouQiModel.Piece) - case pieceWithNoOwner(piece: DouShouQiModel.Piece) - case pieceNotAllowedOnThisCell(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell) - public static func == (a: DouShouQiModel.InvalidBoardError, b: DouShouQiModel.InvalidBoardError) -> Swift.Bool -} -public enum Owner { - case noOne, player1, player2 - public var simpleDescription: Swift.String { - get - } - public static func == (a: DouShouQiModel.Owner, b: DouShouQiModel.Owner) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class IAPlayer : DouShouQiModel.Player { - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public struct Move : Swift.CustomStringConvertible, Swift.Equatable { - public let owner: DouShouQiModel.Owner - public let rowOrigin: Swift.Int - public let columnOrigin: Swift.Int - public let rowDestination: Swift.Int - public let columnDestination: Swift.Int - public init(of owner: DouShouQiModel.Owner, fromRow rowOrigin: Swift.Int, andFromColumn colOrigin: Swift.Int, toRow rowDest: Swift.Int, andToColumn colDest: Swift.Int) - public var description: Swift.String { - get - } - public static func == (a: DouShouQiModel.Move, b: DouShouQiModel.Move) -> Swift.Bool -} -public enum Animal : Swift.Int { - case rat, cat, dog, wolf, leopard, tiger, lion, elephant - public init?(rawValue: Swift.Int) - public typealias RawValue = Swift.Int - public var rawValue: Swift.Int { - get - } -} -public class Game { - public var board: DouShouQiModel.Board { - get - } - public var rules: any DouShouQiModel.Rules { - get - } - final public let players: [DouShouQiModel.Owner : DouShouQiModel.Player] - public init(withRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public init(withBoard board: DouShouQiModel.Board, andRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public func addGameStartedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public func addPlayerNotifiedListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Player) async throws -> Swift.Void) - #endif - #if compiler(>=5.3) && $AsyncAwait - public func addGameChangedListener(_ listener: @escaping (DouShouQiModel.Game) async -> Swift.Void) - #endif - public func addGameOverListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> Swift.Void) - public func addMoveChosenCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> Swift.Void) - public func addInvalidMoveCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> Swift.Void) - public func addBoardChangedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - public func addPieceRemovedListener(_ listener: @escaping (Swift.Int, Swift.Int, DouShouQiModel.Piece) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public func onPlayed(with move: DouShouQiModel.Move?, from player: DouShouQiModel.Player) async throws - #endif - public var isOver: Swift.Bool { - get - } - #if compiler(>=5.3) && $AsyncAwait - public func start() async throws - #endif - @objc deinit -} -extension DouShouQiModel.WinningReason : Swift.Equatable {} -extension DouShouQiModel.WinningReason : Swift.Hashable {} -extension DouShouQiModel.BoardFailingReason : Swift.Equatable {} -extension DouShouQiModel.BoardFailingReason : Swift.Hashable {} -extension DouShouQiModel.CellType : Swift.Equatable {} -extension DouShouQiModel.CellType : Swift.Hashable {} -extension DouShouQiModel.Owner : Swift.Equatable {} -extension DouShouQiModel.Owner : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.Equatable {} -extension DouShouQiModel.Animal : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.RawRepresentable {} diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/module.modulemap b/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/module.modulemap deleted file mode 100644 index e7aa10a..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64/DouShouQiModel.framework/Modules/module.modulemap +++ /dev/null @@ -1,11 +0,0 @@ -framework module DouShouQiModel { - umbrella header "DouShouQiModel.h" - export * - - module * { export * } -} - -module DouShouQiModel.Swift { - header "DouShouQiModel-Swift.h" - requires objc -} diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/DouShouQiModel b/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/DouShouQiModel deleted file mode 100755 index 25b6b0919a2e1279df75ad808d70d7ca381b7438..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 355376 zcmeFa3wTu3x$r*|0t5wjP}FF>42U+?ThgLt1atxk?vWXY2T)pxph$$uCBlrL5)CG? z+1*a1t+w>^*h8)M(2M6#TLapv34tWugCd}|f~c^^@d8@8cwxTZyY`-I0^&L6d%pkw zc?O=z-h1t}-nG`d-ut@jXAeH{l*{GHbGuyqx%P3nd^|l;!u>I%4dkj)U3qg=ntIOt z$zdRefgA>M7|3BDhk+ahau~>AAcuh*267n4VIYTr90qb2$YCIdfgA>M7|3BDhk+ah zau~>AAcuh*267n4VIYTr90qb2$YCIdfgA>M7|3BDhk+ahau~>AAcuh*267n4VIYTr z90qb2$YCIdfgA>M7|3BDhk+ahau~>AAcuh*267n4VIYTr|5XgU^w|do+4%2f60s`PL`CcfAyRakp9nkrie>^gPnKNr-x=O38gY- z!}E-?-<^7_4Nsm`0}@5@UG<4uxlW(HC=|YaQ8FnT-slN7oM}$;63>YO1r9vvv;3Pr zeddDsi&72DhPQH}4XE%aJHI?<-+@=?z?0|0!<)&d&Y6Fs zlRvwCh4XFvea`_R&*|fv4LeCMYCIP8Xy4pg8(sp2JZHmjnxZaAcr&l74TTrZ%5Gn+ z18=ocNS==f-gS!>Etna)H5;DiX1jeQ4m^22JiPGy#dGH0Fn!Ma8py9lf2$mLA{*tO zJRct3tl86R7G5`RmYqMleby~@`-%qG@8#KHJ(X~@%Qf46WB(Po+)R<_(<{m+mrox% zal#~9Iw$0@&&i$jEHLFK<0P~+efo_HQc~~G@bpAufS0(XxY8My$c^)_ryR{}pWa~i zvw#lCKY31vXQ!tAPM^Nu`tQ%2K65VPI(N>ZPYk!Ar1=0_wnoP zoy?oJV16PYyM4Yl>=H$Z3|!OOmkm$GLFYGpdcZ$nd}W2-<_1!n(QD;a{j;A-9rdYa26Y*EEe{@w2Uq{VgofN|)5zC71& zdU^W|(xjfotN;G+3rkCW|MP<E^Djd5H_W72bs@}>U zVAM~wuMS546&5+yeZiz#7lmfcyC5*<`i0jmy!C={BH{!ii!Kql8lF;# zHfT9usw@NUJ3P5v7laorykPE}>*XgB;QaFQZ@86vyOez}ReCx1rDbqNW;wfQ=Z{G* zDfRjI(I3^1yaB>cY2}pJCbg=Yu?rT?N-wVPkf0AmNjEI{s`9BWr$M6rdLJbd?ckPw zhipg1bqmo(hbf=u8g|(7a~46rGiN6u^sJxZJaqjNumAq6nV~ti%o^)J5Im;i;VbYs zee8nyGs6oP&YC~-)?^z1;W`C86mwPMGHc1Knc>iN*Uz0bU2$8Am@@OtU2xqEvljNq zBk<1RCww>c+j*{44A9xmvkN|xf2TUnyJzINd;yh|`;)^!4g)z1xKKn?>r4CFA7 z!$1xLISk}5ki$R@133)jFp$GQ4g)z1xKKn?>r4CFA7!$1xLISk}5ki$R@133)j zFp$GQ4g)z1xKKn?>r4CFA7!$1xLISk}5ki)?L?=dh%H{Pv|Uc@Gt8twE7mrI_t zmj0LY)9!1nZm(Hxzds@4efg9s-Pm8QwbZ%%#s+H)TYB||^#$eC)$J;O`IJd|!~0ca zsCES+^Hv26t2AyMFWHQ3)^S{|A$FOnYot(3P0jh*>5U4Pz1814ybXhGcu$WGo2DrvL2m zTXyhE>DM5db1cotQ_We{kq1b6kXc@j^xZht?J9k_J&m5AkCtPaArG6Mfiud6x$x?S zjy`I<<8hZw3{XcT;L2NT6GL0W{`}Ah4g2%LXENGu#=bCi##$ zj%Xj6BO_W6Zv!=IL`P?is9TLFU2;aWk29ju$>fN-!H+SKzuM6?%Rd6<^ZfSm`+}d0 zaXY_z_&v$b;@8d3kyp~WdI6^7WfuRb%AEI%PumzZK9bwX|38zz>jo;>cUXCb{JmeY zA%B0$)w<6v)4ROPmjAuW-%1DGSbEqCedm%P!EYj; zTPEZoSQ28ohkU+h*+B%dYvE|c)^3r`F888u!gGD7<(qBWi;%Ed%hh>pI|>Ip>+bFg z|HNZw*_?PfTt~L>Ya*VFwq<+ZA{SyellM~kHF6iC!(IA}Fo}CDe_RdS?q#1zo!Xc- zN7@`uy+;eoN0awJ1UA;uH%CggamAI5@zBu9<~uyPS=miOA=j;3 zi=@zW3I&aQu~E7?dhaE0rqv%VHS4xo+qkI&Ufh~+FO`>2`QvsA_UT54^`_(lz-a&o z82b@Ch1Zl%E5EjUdcwZ7`=k1@*Kfotw3cChBUlnND$4>!rxgQ$YOWkCL35W-yWgm! zx$lHds%)O+2^w{UK_jf1xt7d91M--~ip&R~@~E_i$5|ymZFHZ*1}#(*Ddb_+3AN-H!F1KU}-IRU16E zL^lWh#Ve`fiyK=*h0S9<0poVYa#4}rcr*4L5PUzctshWQdT}RLyYU}J(i=~UrSW&D zY-x?oZr`LTttF4D%eBFkQg<1^!LQUkxV*X2;|G0y&=)Xbu?y&@bqo*{+WK-+`UY4F zXH*PnNyYM3H@1qeat&Bf@<`X7_+ZqO@~ia7+~EaPesf$wW$6bp442WA5}E>)?z8^cR}D(Q*n3U+wbjvun1VISGvNn~`97_%KOGyVYlW8= z%FR^WyqqqLn~kA=8U(|rznp47bRAIB#xDaN996(zD%L6vnl(PZxpa83-?*a|n4oCf z5_FW-_$Q$HBXEaN*~*p1R(AP2@2)3V{sqnXvjgUx#X;k#W*&8Oy2t9uce~29!f`r( zCQOxPN?RvDx$`0OnlgQ6AKkqbK;0GQP5A*MZtbN+z}RJdsIDJb2f6xH^Z&EIi)LTd?}nuZ;OS5r>D9d-<}$Zp6?Ea4-qpkmgP53(<8zCx^a?j z{#9BLG%wN{tO6Qi&8BU-dArXV$xX27gAla*hZWMk$msEim{@;qhVkr-MbR~>mPJb` zlhRj*8;}322ZY~LSoNFNF0r2P15V-_{N8_r&-9yj)LK&{AxU#RJL-&DmosYJep8K_ z9&ZJ;HuMR#e)Fo?GWdGi_WXdk)SVj03b)4@L^XbeqpjTXMUxMIN!`v6ui@xy%8(PMBOd-5mmi>%Mw0uxcX$G%Y|tbcqKj}wka*$-l` ztNhO<^0%eue}w!Q;;}mVXWpmAU&=!)|5$?jo5`EfmwU=vJj_4gwO2=wbmo+Gav zHZ-;+^;-t-9i~2;wT{svQ(bo182G`=d7nixkJyz~L2%EUjxSHd2MjNU6~JL&r_ z*Hg2}pv(Xr1$q|#JSs@<^cBkSHC&61m1|`5V^YAH16vs#PmM}1^D#!R6c9x&1&-mW z75Du+q@@k^dHhfJ;d~i611DfCDe3f;aU5G;-5BdhK@rvU$KIj*)`6lEBM~TWHz>5B z^r59=i!-6r^bVyq4T>A?lA;b2cYmOiWJ2-u4&{1KXkiNMpZihDf+!iSk5C9+A#XTMQ&F- zToy1d+-Qh2+h^S)wM8ns<^CVP=H9H_F23T~T5)B!HnIKNEmR_%~9Y)&ILlhm`+>NqJ$3a7f=v!@b#ez-;1$)mkGBxv*T|!&N2HE~D?U zs!Te3)fo&1EEDZ)+Gt=elSKtr?rF_phz^y-Du^NXo%O-OnWww{o9O6fD! zk}ss!qgP6@+1I#0we=@FSvSZV1(IU50HA$mOE~2Zyomk9v0o#jpOnllyZz5dHrih+ zWsSby<5i~o#<;luTGUAuwJYhHCckX?JZQso-j^Ku{iic{UwEkZGT7ip$AU1A&B9WA zqurmh_z!(qeX27VW2-f#=F}?Kf?UF4fINCCc8`S_0$T6=fsF z`Lz2w^>|yrdqBId&F47~J_V~rmF?8qKBDZ>&!ueV!WUwBrOy~$bV8z4b~jV{Fu{*T zI~=H;XLI0|8Pc6TI4FV_8GxkzRQVl$RACsrLaMKx%XqA$nBQ10eA{(E%+_7jU$_R1 zi~YuQ499&5kq~`=9Z-e8ICo7vEH;-YrZTW+%(3CoCM6v3xe3;&F7P(n|DG- zeP>Z0eAZR^GDxn+83xgnD|Mr8RqUipeIH+^dq371+W@3)-sT2qp`H53s|&S;%{=03 z>Bf}hv9pM)2aGdhc)r*#RRPrms#&)RV{N%V-VyZf4n3lq6aCW2WbJc?wrn$|Z1l&6@6F36_R^b)l#$-NCy>5Y zZ+?Tto8FtNXhJW&*$u9bus7CTr#A)C8}#Yn#^x^qH+yVQSgJRteC^)6`h(2gG=JG^ zZ_rXl+MAOTy}1NXQTXd{z1fR(*P}O2QbxvRf=HRQ% z!EUXvpLTXrl?Y*@sn)*Ckc(o^$K*vI@(A-RynoGFbCO_cgAOy1y--pmPOy||NZh%= zfZba2pSef&>kX|QvJ^>q9JN3FQ>0C6(1_|rH6lyg_{XHWfbodVC3d}TURfCMejLyy zehfPk3sLNBJ=`QUt_PHA3jRM*Dqwsl^6wEzvL>OS6TnObj4@mrG~V*ZTLU9iBelk7 zIm|COvJ%PlE_b?lmDHvE=ye{hFavu%y7#+<+K*n~aXg|xH=k4uHz#)%`Mob|4K2I~ zm^XBKkSSX8?^UVEn~{ar1MvYKiR7KqSlJzdus$`zx6uF1Fe_-O{l&t zdL_jj`_LwnVq{!d<*Qob>D=gTR)N?)4g1|%<1r*O>@Uz7`*Pzqzgws`yL(>nDCPqVR{DqKX%ako;RnU*_)xU~QIy+NP?hO z>!yMYWk4Nu%@E9TtwE4k-dypT$8Su2jnHZ6HR8ETUn>h5(_ZrhN6vvV{!QWU$SC6m z@`87*{%W~l_=GY9XHD%;M(hqn7Hj{NcaX(Ydg?c}#p;5_N3mi2(aq`=v6KA9KZI-U z#YDu?i%X)`JX9WxgTb>u47xwm>W|`)ZU>F$t?3`h?OOrkVUeT4Axj8aA%`)s-V^Z{ ziSQhqsUlx7!TPJ`z!syQD8jOVPX4@on&#<15dec5`^a9=|~_O3pY^xB*LWPUqf z))Y2ZzJxKG(wtzhr^+kuVe1Mo@VY^O?OBQ9gcnkLu<43<9DVC<`h8(jgJGS4Ib}c zeDaK-@g@^;L1Sak zoObeT1dXV+DO-Z#>h7&5+Z^`jBP&;iPu52USA~a&lG6g-%GHP~!RPKqv`gFm_^I*9<|0= zrPE&08gJxAThlr^E*Sg4cX>(@%k>b;J6hul(1;=yrOIq#ITeGBq`>2G(p7HfJBC_BF&B;u@C@L$AfERM8xgDrZt-8Do)sD z-L_LSqu+QP73))JqTe191sPi;;jUDC?hyKM)?yi$gk{m2emw3<85jiBz z=}B}?hpi{^tCo32p(zhS

7VnuMl28G(_lDLqMhB}4w%`Z5ZTuPgs{C-voW^yLbz z@jpZ-B=n{Df4$1TK=1m}Z+udTvOGh{#8Z__JW*ugu}WDE6!o|R&a>e=`m#$U*!uD+ zTVG<~2a%J?NBjE9a`8L83diLr%M~a~rHD=7n^SQ7cGBG=(3BEY#Wgr0P1!(Rr74$i zlc6bBiKZMYdO$Sg>pv1wT^AMMShF1N2rL`MB5SL3HOe zq{P0d@MnA!9Rw&ztt3@j(*`Tmj8wd&-TiHnk_6>w)Ai6twl+OI;g4s~ldVth`)|-w z3r({1sY6dnrzG@gh_}7c(^u-#H=q)wPoGgY=u`0sZErBmzWVPd)5~|*^l~4N(~K*J zUX(JmX@+`m2ek&l<5y_X-zd}_8NJ*j!y>L=4^7%7nslxrmPhWfiDkNySG!_2C3I&g zrIm*J7B@=6W$DdLR?S=TCf)ISI!kYE621BRG`%U28U^(|K}t$*zMvin`AliGG{9nu zw<71OXqCk49oJ7Z=UImk(CcrOVXLH+9feGIFlnmu=J7HRN+4$nY8jpARB5{`NO;A% zY`ehP`oEz$6W(D`z8+eC;u(BXH?J+MXr5&|g_ZSqZ_Awtj(R72Y8_qRps+@X*xS*J z*K((n=GEK~SG~fl_}o#Nm&+@Y)qWT&jcy)nZ5bed+R)}f93c1E+_{|~1dof+c)=J%&E;QSeQi<^Dyn1V&UodZjF%_7g zv76|qj4$1$9wzm?v~Z%xxRG@z$NAi$9G`{~RtL;L8w&Cnt@(ST21btO{lCb2^)A$g zj>KXZL&_EA$U|Gd#^JCE368z3f~)_~y|uf;TLNBve|TfSTY^981Xkw*Uj3kI+}bYd{ma$xll~M#?Xn&x zr%ai>h5P0i(Q4h(YFq8T+)jtV>N&nPb z?S6DZM1#j(4?_VG?-yQUB&?4tb z9tpvpsertoMNU(tmVUxa;$mj8Mby%>HT3LQxen_Su0iuNX&!zern)!lRl9rl3WURV z?}w7*h{q1&P$rTk@ap%rY4@z)Ceb}6&hO>X9t>8l$;A8H9`OqNk(=r5J{iu`cm^U1 z=r6siAgk){Xm0%8SG9<2I3sztm~E^fsxBgw?b zBL7dwFKIvI>WEkLKd>F~+G<6{2=ERv+2ZwkQUfIes^soo#cRTc`KoJ5{9!tx+xZz& zRwrfYup6W^@?y$rk*B2?Cq3oh7c*7wqc8CGD*$dJYXYFKx-gRfeymr(zi|Lh$`JUy zwsgrM0FUfd16<(%e(kFPpMD6yZ4^ygznL!2XUoD*#`02o+2?A^rdCL1HSVBzW!4v4 z#O}jZYI;LVE#@{L5h9g-6eTMX>oCiql+_gk3S)kmKQiw?49N~Pv8()%tKF=Cyd}(* zj6#;IJWWk?TPmBE5=kwttQXU^qnNwp>aGl+tO|K9w5YOd>2NE&o6Q{+!*{c0mz;&{ z);hbA=*&JVxKYS3yqaCF%l+mpX`0sxeoLq|ygC}9@u~4;IgxH`whh2yW;Wj)NqJ^Rfd)7fcOKsvu?+ox06gdi$i&?uYGgIjta5(l+qv(!_IH^)jw z!QxwBQLV3T2a9K3O#OmIbm&SkF=Y-fHpN*_%5)yPor*Cu z;C{htv)=@C%A~RWSuBX1wK{rJ7GnQtV|A0fH+D+PRkrICX3wlcm;cV*6J|F zzL>&_>#2f4hPl#3b5^D!v1#v;iTJFAw~WWSU!pTzyW7L!pu$@&!`)mytTc`fUAdo7 zbvN9$mBH9f+`+=;*e!(2;>~VwyV7Eg+a=Y@i5v-0(~Es$59Db9^Ns?UL=Tv^6zS#! z4jo86=~-4PoKvPt3r^{cUgcdBV+Tz4Bfx?@@Pi zVcL59ba|muNNc_e)dpq?{oboES@_g9s*mu=0&bww%?yuD`t>|&Et8u)TFbQNVKoh( z_X+2hz7ZQx{%9T#?ogldN8JJQQqWw$b|+UoCyNZOD4X0oG<=lS^2TbnnxSS)mrKk5 z-dH8X3FEING||o2%DArL{w1qLqI0su?-xpe)va`LuSk|a?!1JMl47fbB&<(}#|6ZN z27mwgycjkggyz)zmE9)hyygCex)fI5 zfz2}AJcX(Jeby`|bG2la{#FqZ*|zLCwz0TkL+BK@ASE`yzU?Cxpg8R{#_5cjo+fh` z&Yc4BI0xdQLkLG?ZVS^MRNP;sZl{3r z2PAI9oHYL3lQXzw+~B__6@*B5c|xZ&qd-@&7OW5b_ct6Ipf#PM?&2)LK9)P8f)MfO zvU2ucXidK+1sOeZtn9tIRuoa_dcjQJ=VV~Q-NDEm#VLC%XfEC#G%wIQE0+%thVQIg z(O<5zGS#T0jUQR(QV=p&ULM~pk0Zgy?GKoX_6N*!4%L1pf}{_%ykJ%_!6LW~;R@K#6 ztz;5!qv>5}&^ldmv#8u3e<^Ix?`G>io^iRN=Lq=7==E%JXYWez1#EziB;70Nrb35O zT>BZe*KiT(=)aSffhvT^>F9$DTVkN5N=K(rJTXv5Fgy{mrwz{%9y5o>B^lJh$l3yd ze<{xrd6591RGczD0+E~Su#O#|m|y6Gb+!@K>3{)eM?l9&0?rHS>CX- z1dMM740yP6Od+sb9b<~bJhK+lh}f~#CDJ$<+vg-V_4|##Gw;w!&g5nj*~CfB z>8BkM54QDNT|ss9-Q+X7jntMdwV&a7CcOUWvNU)$KHlAsiH}#4&*}QSh(iX{`U=iU;B<((?w~nOQL#mK6hfE&xS*MT z^}2C1lR4;I$Q~(=divNJq=fUlF42U?*qRX4Yz%3Oc~Go&=uM)?2r3rUTi5opiN+6b z-5eP(&Oz-JrPN+@xHK|dzNYCjd&5{2O|jYtMc|6DVNCjJjiOY!@;a@hA_NFS8JGL~ zkvl!8-_2|&8%H6MbUo7dXl|3F@7RCPhj}`Z*QZBr_sFg?9iO#yFH)1MI_%&IDolc+b-Mr#jldIO1Jq}&jBIQ{ej%;#%DsU^^z{* zOaJLBt?=rGyE^J=hXxY!`>F9~|5+9D7%XfoH@*-mwYGx~W8>b9TFZfkU2cD$y29G) zj90*Yk?uXPv|l;s3}2@H9xn-n?B++pSkEXT+#MSZaqK0{>N*PZ&%A)gFRXij$tW7H z)xYH~+ZaC18L9LQEy%PMwrX1a)`6^}m3f`AKQh{j)G1O;CKRfgj4=y$OzE=jr|Vfw zpPk+GaXp)UOo8yv?$|krrbh;;rn8j~yA)pm(3b$ZM-S3?jFF-TbEO9rZHXQvW`qM>fZ2+%s9RN3!J}JG(h`+QJr2)e1a1sdi>v$uJ+(wlh3ZqGpEPPcz3EAGDVx4qwQf?4slvq7Q4 zIN*Qf-JtfH{aOR|58~yZ8eJI%S!VFtr>UKX2~FqjWS=C1f2hzvZSo1AV_AnVrSok6lPJqx=dOF9Cox<>_=c{@hS*phKt%kVNVA#-p) zrApb<`D3ouPgMO9li#Wj-Rk!qtQ(?x_uEub-Bovz-`lbD-($y;wsb1@i5E*v0=p&b zDl83p4~7R`5gFpuWs7F_!h(SNfYvgg89p6fMut6P(3%1uj7$gcYo*0x)b6SzE&3h7 zq@u~{F8jgWL|b9(VIQr(?ZbW(BKdo-F!T57@n>U0j05^B+ht>HAd-JjH-{W#GK$@@ zeuJKlMWS`po*)7?K6ZE}`N&~*+4@2m;|EgG@>ze|d;P`_Sh~^YH*YNoM27gUFh*>- z!kE0J;0mK+3kG93D9p#d$JLIv*7oxo<&H#4%}1(3XiC_c2I~dc5p0tRZI)OhBdG6V z+=-nHZI`7Tj2DjZ1|K_ow`vW)hCUz)oX;^HGHs2Wm6UI6v(eAM-RV(gp3s!Z`9P6@ z*TC0nb?=a_@J8Wq-8;Fffc4|%(k_+=F!6+PmF=$KKR@c0@O&d@Ke&RC8$G<(%B-Q* zc&36iYB)09x_yqzwaOj(0ge|gn9TP18}2M*H*As0bSG4WQ(@K?TUU~^Mq6-v6s{6? zO?LTEiv3{X;4rtz^z;5ckHfw$om0+Yg|fa&ZF%0KH42Reyxcq~uL-g@%H|8!c03PJ zY}L&XXsX)^^^tcJYEApajleBxC;T6Jiv4%7QX~v`j;7Xkk7I$xUBmc0`R-vX;Cfx&g#Kv5Y+MG+ zno94+&~Kx+a9jGa1U_US8rGMHNumzKO8D3r`ba3iZ&QF@C}6jLUw2?AgQ&KJv;N@) z8ThtEQ_w{vkGg$jquim(p)8eWoenj!JmOW!vu;tTQXonBD|xm1)`f}^**kPtg=pNT zlD%W$w(53u1WQJH)P8q+e|8bF-8X{G-oH6hgu%QnPI2Oj^xj}y{8vT*tI63DFXJ7# z(+53I^e7`+_%brir+nRpb(cvygWi4NLHSbn=S^@9FLwS{_Ue%?& zQbD~ETYm_Y{-5aD-!{hjKH(!%Aab4ERK}jBx;NssMS~*zB4hgis*W=i>>7%shNsnV zr}Ul3n-P)?3r?~PY?B(Iv7d`)vXoxY{H}mO05{!EwgZ?6dn;X^$@owGwv7K7J;xtY zJ~jU06aSCKU!eUjjQ@-y8GjsinRvj&$oD}9(84Vk*Guydej{ECnwOU_Kaj^HLOvZ_ z>O!ImU5x0mwqt(^U93`c!E`A?3A&J&Ob@ykk)(^|>UA1joaE3&-K~kiR5WpJ&GI9o zhtdB#^e~s+d@Xud_I@*6;rP9BV_(pm#du9)62bequ1(kmp`6I31?#qnqw%+iWPv7^7t_8RH z&zLschgqQHh#0+?JQ5$2B>~JM{GNuX^BiWatY{8zK|1gBb4Z&QbyM-6m=PlCI9vd}qDRKZ^`XzHaw3}G z_sX?V(WA<~grBu~iLbGiyi1E*BTQxn*889nt+7eyilx&cmK=NU@yjIb?2U4s2)i(7 zBOA-kNRtoVE?ukW*+9G`}G>WaD)EmpbpkyB_O5=J$Uxc)QYVS1!0&rW~PNv{$D|6W>q67sJt)_1J} zANj704@?xsMae+Kb;WRabn@^r9NQ5@%!WU^w{ks;ItHO=WoY%s2n4x!pvFE@W8DZr z(^P52zabEk`Viw&tCy(0%A}ELli)J6E4q+=2vCAjt3p@Xl(`l(;303vFuCl`;~a`n zj{FAosC9oGXE+uRx%#;dN z*g}}o4bt12=|3%de-%Y=S<%F+StkpsiM}WK@4wgrYkhXAR6|G?{tG`}VSFt7_me*h z|7{S{4EB2j_ES8NP}6!k%Q>cKI_FJKXS{BBN~v#IDo1?pT>2wSShq6z6s=PVDT!~} z#e3Lx>%#T;C(VJ#lM?*L4Y5jTmJ0raS0Gdp4xaU0LC}}h>AYn<3@x3|%aJ)OxeKqd z?#D3fjr(4N`zB!Q4)Fzy;h4GM6}l1HSfCrzHX_X@2tO{j`H?k$D)=i?F&NG;<~f;+ zDb}>Dj2-6u3B63%ONu}5u=%rFi^O;ZO~F*q6xPAI*riaU@CGlLfm1IPZ=B`u2I)v7 zm9BW>=1lwv9AzJ*_~T~y<3-#Anw8EYs4~BpF|1J_8aaGjzznU!wwbn${t?Gv7wF!~ z=V6)e3zx8j;&?C@txmB_cU`HpT(OLiw3ijX2=hu8>V#jmIQ(+G;+N;$p)(aJrLl^y z?vzYcx!M;yPblS!KM~#hPCCzE%6Ek-V2_u4)RE*D$@~(T{hgOPY!kPh=9!UV!mb$B z5kBb2I;W@nE9ZQn*)R+4RI9ODEg9d0{Mc@rvBEs)hg8Vnq1BG>|7*F4bFR@Y>u20r zKet~@OeaEOzjAcbD=9~-Q;uKSy69i96-r{B6n(U-To|5F%7%biq})`dI;XmEUM4dCjxTwc^)T)5o6OMKTU@c1)W3Sa!BN+V z;E9S?ylIW#71JxicNFy-{jHNIz1nR~*@Vf_TG3qEe5E_v^~K-Hls8PH6R9yiHx9Oa zNC-}Xkhrv_ADPp3%K%h`*7UYi6j|ct!3b{(^|$2Ak=QZfqWyr70SXskLx1WvCAP0n|U^!_mpIhg1Tk{EzZSTN_kN5zX-4y~~$d|p?q zuQi@N08_~rVl?8@aNHz|Ed`)HU~(6tL@ycBe9En3nnSlTC&Qe5ysh>)4%ow=%{sd# zYkfc!0VpcndKO}PY!SjP zN;j*MjM~YB17;Rh%TB$sP3}>1%I?vEd;Di$5GR$Jgp(RUglzYHd02e>?2@? z2^f5(c$gS55@ucPxsrS|ZP_HyK8XE6e4`oQDPW9b$T$Nn93VyyM19$zXG z<5X7HG!H397p`iaT<&&kQ(``$V)2_d`y&(ZMbRA@>hIqftu+0BecEB`zg8{sOSxmk z5gu?`SyBgH;pjjz+?JL>6iN7eM-TE&Hhv`vi;mP93rYD3eHe(`Y_~B(7b;Qeql2gD z$etT?Y;fBbcp5)}^NK{~Ji#rl!zzDd>2SC8N1m)l_@j92@XkS5hI7!=j1tYXyRo@X zcl`Sv_BO-U)84)doZ9w&ul9Dr)-Fw{>(;t&CvYWpgVwZzcleLc_b7CAYu$0SJ_&TI zao81={pd{Hc3HR3Nn4T9l=VxpsJ)l?XL>vUdXI_cCu_*k=>7O%(0l!Hf=~&}E0PnE z&-4}5vjoKl&j<~tp&5RkP4eRR#inG^M^E~1{krro zPLuG!@I&%IYt&4Rm-uJLO1G4MW0H1C^Vmx zHv%Wa{!7t2_Fsm7)RWj>{*NTFzrbyZ*q`RfYUR(@C-z_VM(o2<^5DqmT_S3SruWta zy_cuxy{qoqf+L&OcM7dL{xSaC&w!Tl=hEoirn98R6EE(>Ow$yX60?78?7Wn+ljrpQ zgv!L9E2EC2eVXCVouyDKnxiK#^*Wy?hLrUkz{wn@eE@56yhXp*?}aFOf3NtF`2#uD zZXXj^;<6(Q#uka7X7iEvK%GYyy(|BGgb=mnH@MRqwjT_5_jAqApf`@X+W2T=b3L+L5E8Kp@Eg0LbKYpX)znU6- zA7|Wk;|rsjKFinL>vT6~``k!4_v)e;tHnk?xRugOq3e-F9+`;@oz2-w;X$n8eF)d3 zgNdWXgZypp^cf!+@{lz~;CGHKqJQ^MRd;xxT5%LR706#USf}dX;!y^93h=)CtN#f==4+(BKaG}$> zjaxmUZwEhb!@j!aM}6+k)7`BsqGjQ&!NOa?$eGKx2u79;PoZSE-~0FQ04Bqp5_Amo zx9!Rc7@t`q1Y!ak$e7 zFy0QB3$R&7YbUd$MQgfA63x-ao+1m)7Ry>=vEW0@a8?rnV6Dn;q)^>fR#O!x`GtUl zvtDkstn^{s+1mbcwb#qFDld?7EXZ0Ne?^`wo@70iKmKBP9r|gjRV(k!>TZ?~F@3-c zO65wmU~VfB!xc<*$-gAOpaZu`ltrzV+iI_uvj=l@)k&%w531_>PWlF`bIc|7dO4=; zWu%T(JqWLoL&u!>4W{ybnXm|&=hOCH`#@g^CR8?a-70Ri^rG156H7sx^$2Ij8h?*7 zpAAZ#C33P%)B1w8P?uUF_cQvs%97LhqGe)wM@Ij;NUa0<)^Aw{^t_~xlXSCkrL?v| z*2jGy;;>=#on&Nu-lk)W&s~g`Gd>(!A)R%`X9O@3<8uVVGK=h~VY!m0%wc)$*Y>c) z##x;VEe&4r52?&vVD^B#P?fkc3ENhn^k7c9Dwp04xFhq%K3JX%4!ykwo34z;EAECw$UL4 zG{xz)Xks2;1GrQCgXITnso7`unN%eq4YqDN7v@r}?` zF!yrN0G#&%K`ZTCVZ23{mD3q)ue#znpDadTUbK5m^FR;xXz4*SUPka51Gn2V_}E=P zmtHfAAAJ!xstKdt2D$$ZYpu3^jh_Na*2+5WX0gk(#`^4;x?h2MZ@4S;YgOE=*vf7^IZv7nxyG2&R(sTN1tRBd;P?tah|Bnlb)6J5cCp^< zgx|>VJnsg~VWNqCsT;(dWNi#w#TP-rm+YJrRBc!)D=s|JH&^*dkq746n1_KVam7`E0a+gftGb6zsX^5h)1 zEDU;sldD+WIO0Kgckcu6?wu^-lpMT!8U<)+B+6p1MsQ)T-?IG;dyS=>lyD4~=F3a6 zlS1}wXm`iSC^(R<1D|rw0TQx>gHgHL;*ry}*x0bb1CG!Lqo>jW7{6NzMMlp&TiO$D zeZs>tNdDsA6k7yHwpZy-R!V3SAJ`PTY8=KG;nZ{av?piP93V5{AA%CCp$nOFE{+u` zb(GRaB+BZN5a$hq_lNiRz16O8EOwbH{Z~p`X1;31G_0Y7?7U8(Vpl1Bg2G>j==xqE zD{tK_6SBVKEmvfvCn+lv7^XkBAFJ@YX(jmm8Cj!6A{&$XF(n@bpLibN^LQcWBr@65 z>Qb1@Q_0R|80~IBY=yQaw0u})=rXKnK3m5D6YB+)4WqXWR*03bHVxUK20FY- ztvCMdFQtkLUnGryq}4*}SR`_-6|tr7wG4cs_cJA{(Y`v51$4`H$`>uI8|_?WX}Lx_ zx%!lAYY0djrB*VJDQF&3gdVY8<87=I{;8%y2)WhfrvxJvN#RJ{)(T^<^+r^t9^%&d zq}eLS*Be^%=^JGGpZ^2=H zn=}7@EGNcaTfg+jY)`#fTeF+RB4oQIfFu0lq0Dj>$)sZ2c26KOqQJkb!^I8{YXp3__KrJs{OZ~FQEHZiq zBxJP<&W&y2wBN-17*|w4jfX7;#fdm=+!3WcnR5Z&;0x*v; ziupTuhLs63@MySsE;ItmP84&ORI=Z%&S6kS<(<^6>YGG;YJE66D1;GzMnsljo6dVN zp3l364J>LRDr+4>7C-jrf50|nwZ=cnFd3iI|0RsI)ef?qbuBloQ2l2!Lm9>$+r7-& zEu5v@vX??PMWM5TVxP5%Y&6MPxqKWO8);|w=0jt|o{bu{F<{)Vu^_;76f;q>*M}uo zGBfPp=-UcMaz-kvVz7!e6~tG4zVW%<`;3>FEohz6xoP=j{X2*=FV&5a?AoF$iwdlcpDX-X zPjO{Z#3n?WU)1_$oe7Me$vgA*0%RGBm7_o4F~Ltg;N9ZDo8J?j=m&u*AN-&dLGx0- zaj8|Q3dF5aDL^G`-6-JGZUxr43c@z4NM+cqDtFvQyM6M#QO<)O+&}TXLg}9k{4#3? z!3Ab43fR}kdXRqB%RH-32(kp!kq5+zj$2Zso7!4r1QtV^TD~?!J;esqGvylEArE)< z=`Wx4&G28O|7=J+ik*lviK|z4P({Ze2|;-x}?>ypRv=@>f0-`bHcH z$ajp@`Z&Ii`vQtA{rkn>h856FtxNjbh-L-h=LitJ?Vv~B_ohB`zwX|qr1VAfMRfYs z6hHUi7x^$nmb~zxkgcCeS8aJQ^8Q}r#ZTG5DE#n$Szi1Xbt`#s2KDtKFYe{N;+=Ew z3cs$rs1mD##TsYt*Xj$X!eJ(Y%o&C9IlQ-IHEVrLz2KxJ*Ta1apr>F zPqlj(CYRQPrH9tdn4Uo2EV)B#64fIioVWb@w$;`W)2X|R7{ZsN!p1|Or8lkEPo*Va z)K0c*9?_ntlrhW%8tou!>g}6ZZy)4sQo$rY#c=0Qbw_DO!zIZS$DdBp6Y(lJfV5uP zWPBoP7lJ0yA@4tzE>ugMw}R!`Ir_e>wKabC`r4Ty?EfN-HtN`oCEq}qDBnQg6DDRv(e<-VUvCs@&K| zo^&aGC$XWL#4F6D=gg2Zb{nqbX@VI#XSOWXZLX98=Hvs;v0`OBvZgz5jxMK}P~Xwx z$^wrL)f!)7AOftoZfxVmFK{rOaQ%XB(*KoAEwQ?IEOa_VPL%I%4sK)bd^e}@R@SrZ zV3j;@8gC`%H5OK!Q^mQw;zNmR>SA?-?4J993^W=nF!J_7f;6qHQ)gDFawT(4Z)y#{ zQ*Y~-cKV#1`}Xe8!4;nu>qf=rSPY@hefr2n;HiOpoV&AaOmoFKx@_?u!xn$)V~fAK zn*m6i-Xeyfb~2c&4T^IpBO=&q62CB3B+Uwq5?DB-Tg1CSmL+*1r}4ukB$1 zCMYCz&5k!X@wACVl$fbn4)Ow#t9?P1FJYZL)-Ezxm(|pqn973JbsQPM-tFZTW$VJz za0>|za%?o~nPt+;@7=34%;JWV5%!C)ZT_A-sP8QNivTvuU~jEiS6L>%#@GrGjpPyP znfwHMq4`qxLzVE!Lu{ADI+?OMz$tn5NCsC_;0Qt4ty+uD!OD!J&ys_i*ffoCmOOPRGOybTinVOc!vtctr&-N1gfK=+B`B3hv(D6oT7=@=Qz6ca8C-$$ zw35RuR&hq*>RZbEk^vuFnKY677Of@BUdhmgNh92@66q+5Jm%q!y`7YL(ih6?RkSb;s^v9L`%O-D9~@TA(R4q!5?L zC%z1$wOpjFIkuS{ShemNqe^`+yPnr+_OtRwF;@{>+EZaSen@2=Awtv&L-n})<==MM zwL7X$c(DFgJHhqf)9q_fLC4j|7)0i6wT`+}D3K`oD?DQPy=iTTNXj;A@sGGZ<&=Bp zY0rZB9_x3!W1sm}J#zeysfsAb>#af%ec#|BJ`GN|wMqaa3hsFNTn~0zt)xZz4u>7D zFh}i9w&yLWagw~G#=cUcVoWv@q&t`y_9Xf>=xQ!V+B@>>&UjuE%&RfTV9Qf&O@9^v zRDwkNnd8gyXv$!EW?MgL@ms+^i5dQCb@VKeJ@8YHRv&VcovH zc7M<^NV`U>YGXL~FuZ(B{;E8!{J?gXe8S-7)hka-s zV~{sx@15g(e_pG9v*mmcR=wGINOrB+ph@7|>ehGif`C|OZ_9x^Q z=67)FC1%}ezWR6oqs$=h6iTjPcM~(bb`W1UMGWvCnPO-jZ=jT&8 z>B)(SqwbNRR^J9q4^C3x7gFGP3J_m@O4bV{%WP(PGdr5ew?TK`i!dJS^K|-3><>}$ zHPB=^@rZuad%3Rka_Y;S#hK-5dM~#!y<8u9!52R>>N~&pa!b<7A!J@8tI^^Vnr=@BbZ4M!~}01bSls?*-g{#s1$m<_7S#zK!Iw zHc__c{@=yNWbFS{{+E2eZ{m|8-S$~0?h)PF=WBew?|4dD+jpzju0SZDUI{1u(-4cR z$M^gGL2`=!?D(7=Pta{wgQy3}NNZGjOZHx(6A`7-`K$5sr>xdmPT*h--8}V|e^Z)K zj$6d6iG3r>UuXS-ED35XlCpC1O}Swbe5ZV89Lpnib_RcnnRpqkLfshZkCLF~IJa3B0TzvVD*MwM z%X8^qOsw!lu^*=76)$@+MdhPmJ5HkE1{OZc$FD*Fh+*P@(&bZpdzOyJHmDabK)%1{ zk1Upt?@81RYT)C0Uaa~+pGAeWXECmY(c=_|Q>UR<>^(*4r+cJSnls^?Ax~4|<;;&r zljBvpOsGn``$kC<^Fty}1XbU1f~u2vlu+P`VT2Z5XJ)y){vcsM56LLb zin6_0(-7|2gjZ1dvX9mGzIrx;-M3B#lOaRaR0@qV-qtiB)yQLI(i`SYIxrI%tX4re z(GEQKq=F4R#^oh^SQ2C5MjtQSvH@FO$PJ#_^r^&ZBru~k zMfUxUH1nxq0jNH`HfyEW^|8@@qgIYMdI%jRr*XD=Ae)t($Ix0V287&D$+T8#ncM2C z;p7&k>lzNu=5vY=;&^k~#rrvkC4cd*iRQT%bH>XOj`9DpFZy}p_pr!3isA#WW1z{G zki?>v1B`z+4CDKEVtiu&Z5dM*`rXjbZ`u1UAGZq63(6-nJFU*UZNvEinjAE?2XQR< zrk-PI`6Hp>1oPh#T*>T)_Ja{%FvCoO=$*A*0i(^j;Y2}fm_%`A1i`IQH$}=Sx4=_^ zeQ$78xY20i3ziM>f>2>Y+#NoF2K5gYM!(N{=c{aAAeCyo93ger$J|A$c!RT>HAP_U zJwdppHF~*vO^$YJ7~K&&@o1o72D;?LqqXY9BP*7-+AZJxbdHO%I_0cxC;Qc$*5sV$RBpV6KXAo%*^D74 zH_0bneV%=Ce3PBDaDO@HFO_?CmwWaHyx-F9Yp?JiETV3o_LGjrH^PHh7FFycI{!G| zd{w7Bjc8<6k4ca9#c9jB5SSVAfT&}EI+pyuab6RPYY-kB8-m!Z!F``BU%}WbTqY9# zBW_rey9v1=2R7~Ck=e+l9M)9cz}fwSYRdVnIP>~Z6?`>M(1{+(D}+V+!S?#4&7S=7 z7I*llvT4n@sLF-pQ+A?1@B`M03)5UJXl1eUJdzMCMtG%F0GCU!b3B5c6okE53Agj9 zyJUgY>Wrq#4#@GxYhGIR4Bycvmcl$Q2=0(ZNkc0Rh)CLV7b^H@79+>Ym%Sv@_OMV_ zO@(n86PX~kEDf;gH)U)Z;(fKIecU0$xcflvIxAP%mSN>;xdx0+5Ts0Wb3T?itJ{+O^g&}M6OUTc zC%xpiXT|GQ1&x1NzXFkoyqyBetg8>23kt;3+_lV>Z|g{x^KR1J$Vv9GIveDbF{Kc_ zD5oXMu{s-IyI?b78IRr!E|;4UM^JAl<3>a`t|KQz#J+3A#WiF-HKIQ;VbYgcv2T+H z-wec|CCfjsLK0ba)T=B3;}WLbG7i3xF5LkDuE;SN%w(J(%U8yf_!$3&S(B&-q^ApJ zJS)N=PJ}9IJx4YKa<^nHBx{!aBlf(UK~fzJ(=5k-GUfc4S;^;&^JngY`E2|1#{+Hq za}*g9_Ge_c)OPsuXUc(q{rTu85X)rB_Ow6uF|6W#IQDOKwB_^k^%vHz%=2cfA8@=( zM*b5JfGPWt^J_Amt)BxfEx)yfDdMze8y~ao%*4l($Q((`&Hr_mQYM*wc_(;i|6Z%mAwa*aRU&h0am zjV}kZ$`^y)Sh$D`lb;?M^loHxw0v6NK=|iT*O*dH7AjyX8a|!rkFlVjl8yGzP~y$O#$MYqh2}tSTC`)w+%9 zW0xZ^yIHAG5a>f2XS|~Zzm)hq*ZDPTmkU%O6I~}u&>zyt9;omHMf4W z4fOA8Qb6Cj-3Hnx_Pc~eQ`ZE)3x7%Ut0=X4uy6Qk(Iw$4WjYlN((P!Ft+oc?+)0$Q zH61>N6J^8nwTH?iO_nd<+4*7@S>I;~4-$H0S_6G{0}rvd?C-n<3c9%nKfQdq#F#Sd z9px`)&sUy6De-)dQLuZTuiSYXh)K;?Zs9QzZ|N~#*}+SJ_mq^$oc~n#t4d5MCgv;e zR|VqMGAWQgU%6C4*k;XE8G4zoRQ*ZJPmUp1`uya#?NaIUum6wdCk=e+jCd92pB7Zd z-%9F}_`j&rLFe0F(R`g`*G(x1!Y zRXRkHgvZg9Rq5|}p31W{#~$w~Ra#3Pq1SDH5K0Rc6BRh7yt&fjH|h%gMz|<;zRt+6 zT_Ph(y2>=V$&y2TMo*`7@W>q^q|2h%x&-F6U8;rs(fzbEIvar?JVVGD3){1O%6o* zK0#NKA1>HqePfW|j02P^i(@NOb`cqWOvc1s5jnAM&%jj9A0^f^=-Lw>jG9t@l^&Tp zyr3#*%-8+KEk4{ZCgaCdX@zoD$l!4^Scb!BjH^X(oJ^lf_cHm?u)eUG;-8L+{^w#u z`|0((;AELJc*wK@kf)B~DW>1LZZ2U$;*KSg5KEhW?x;A7l4D^^;$mWjUcciv5e zM*RbAzMwh3mZjCjLF1|ABracXPfgc;IMY3&3L-6#nf?B1K%M|W=( zHC18WlrMv_oe~m<+p4atj^;{3Rsb3{3^E5pY+^-ua>E>Uh{-Al0-e6&Hlvq<~6(Y-Lox_bB zbPHkqVWqSzGI~7fIM$z=VLUtIP;^bIP0^v0Ny+CP^(V(8X#S_**KaC(`psX}^JG09 zCMmvwPeg~A2EJp7HAWH+(@SUAx}0I__M2+h(A(hEu3*9v_Al1TAhH50pL3AhsZp$O zdz=wegI73C4I{L6l{11xy1Tu?oUKN07;TZ!J6T;nvc4s4OCP--iMCIUUYGa*GI}YG zJ!9}xyg!Rxi=@+_Mrh0$7n1ruvL50pI3Rr`>4NMO!sFYs{eSd_IA92ZBGFg_DNPeN zeo-k6<&b3RPkb>?`h1U^4|1bmpIwK3KglUC4v@ z>gYt0vg=FAw;~L6oKE}LJsJFYMds)y-eUk7DVFNuc&CejnS)mFmQMeei{JeWgpJUV z1qx6t0d79I)=SsR<8R3bCFv)-Jv0N+a;W}GOXz=gztiA3{&A6Y#m$lzZClPw1_f3} zeI%u=KS9@=8N-8(-rEn+qy8n^XY1eNo9>eL0<)L*L@H({?1Sw7q~jNpjK$NHh(=$n zKC?h~x3P=JT#|1MleQ*_$ct8XhzOC-bnKysC^27X!>kvUrx}^;KeG1JivZ7P(!I6m zP3izKN7N)`Upe-Mnmste{Z$eS`ilKkSE4g6ib9Xx*O->V*x>68p2U=->}2;XkS41w zRwr`nY_a+XpVQf5#jdl~tSwgOJxH0v7Asi-uXdgho;;|wSzRhy@Gkv5@Z?#FvbASQ?EEnx^P_pHwBuaLr_y=P&n}0s|6$T!rx4mQY0-e2^0q=+5 zLCjQs4!wE&-VF=c-?)ppXEv>TX8lkAConUV&)|7z(n=YnnKVgdVi)0O|A)OdkB_pt z;>PbxCM2vG6*Q==qhgD#OTroyYC;l7G#dmF7fgm^LPnFBF*AWgMMqgoI!5D;ds>&G zwHm7eTEIb6BDET=Ahi~wqC6BUaj8T_=J!44-e=~S$%ejtfA2pt^SRHt%em*?d+v7b zj_pI*GC~Ert^<@UU~<&ddSrZt_WP5MseOJE$?2nghWlg$v2gEG{ko52_nZ55{{&oH zxEHNTKlC@UdvU++cd+}J{kl8YJ*98=pH?2wR1Q`i3Ta*O-+%ABIsL*JE)E^g9#(U@ z>%Lyaff`l4NZ<^#EE3qN&&7c*2kliH?8r-P9%2<$9Qf%v6o)!^>8m*OHGV50K|zi2 zZo`~2szyeK$NvlW-W6lMEyjFBl$q)+rjxEoUXMvWETnF& zJAz-5#L0lGlC_P%-8Y0cl*5A7;^<;-T^?k411E69UWY8)do6qz=OYHDzi?3cRGvyp zc<=J}>oMZM4!&!#;8&E4ZJtX`qN{tR=F^Fb1e!PEI1dF)8h-wFG2(tIVf-uxV-LBc z5YAiBVMv7i^5Nv^yXkYn^J9j7>L?6<-M@6h#RNWgx54AhgKm$`s@?Phl1Mw#WCzfTV?|1K#d zdo%7f#kMPIF{0Yv>keTZ@Y#rbAk090jT|(;$DSLT!v0kA&sdYD{31qd;IHqYCpNWti-x>+UgmfvuuJ z+BEoK0;KBkxk0&gw6+x^JY3?@gljEZmicLY6-!#Ui5^!YWrZ%VLEf##bPBdmhj1Yt zP8FS$h|pb}L|CrYo_aDEZnK?A;5(h70aaYkVP3w!&l&m&aK znT687!9~8gc;2x2CK7}T)!@B(t)ETTG~_oIc_{9drj3Ft98qWd$JU;3R7YPM4Z z!t+7*-cClI53(BOgYuhq;by?VjH}_Sx!{GSgsK3sUYj1$wqs>KYI2BX(;bY~9iAG} z$IGQ^x;_oG)O7t3#_4)oVYKf|nz0`O0z8NCLpe<|A)MN%a8O4n9CD5Hikk%m{XG`Xx}ZaSTh_HH85-@i zav7%sjxM?eXxdKig@`J}^1x2oUNrPQT(@oWrC=WX0OlodQvaK!qxMZsfBV2!d~W}n zC8y$?Y*(vJnW<9u?uih_dic^0h&nFUASp(_YbCZnMJq7oJ;dp@GU})nZbAIQKbCiJ zAKFg1m%oP1$)~_6JS3@wkJydITQm9E1iCUooyWs#V`mM)MksWQa{l3b2w>P6g{}D1 zv3!YElj29qDaxHH1t#6s;##(r+BL`xWbG@2hKjHSPNRD5*t4Mc{7?I?C>Z- zTc;H<;Y14%bbiLZj{*PxL4HO2@1fi~31OguK7%4jm12mb^D>-3CyIZNUwJD=^!Y>F zQ~w>#AHJ7Y(Vb^H^dbr4>93(r*N{t~n6U5dNc}~7fkM@}9l`#3Yiyy(ApE}X+Mq&1 zqNOf#XX^6f^y>~CM1XY{EPvIK9=z_5z+fQdHr5EyQXtHH3k5{R%Nm&w%d1lfXu!zo4b;+oy*j*Jovrb?+>JXC^9X1-!JcxoBct@xZfWEe#fEP zmcK-yf2W5IO?2qj9r_-zTzY(S5c96fh~X8M>o6G|>Uwpy31#2E7T_)1!Zu`A|JlMV&BY|l@)rU^ z>weJ0-i#0)iV9)XK7?($A-ab9MyQQYXct4BP*mQKSn2@$2(wT5mIG7nkYE3C2Q>?- zRUrQ~z9Gq-j@S9lfb{uj+kqtaV@t|A1zL?}ET7N8iLUB^rkyUoF%@JKpGs74I1` zwr|+Iw~W{W7YR-FO}7a@Q4jgPFcVrq$Y=kV4u?V)FAz>Rxl=){yG zxbF#k*HpFQ$n1K^tsVJi&$9Z`yk)EpT=J@oHnz~N8nl@EE~Kc3w08mX@fbA1Te%xT z%s#9J9MCo^*XPL<_rZhDd$c2wTG?gB?w5>_XQ(`c^Q#0cbv~_TE`Wsof#wB8bpN^O zyRo;*m(JsLh%j7iPR5Xc+6xS6y=B?hW4h@??3~g*T|kkTg^j6O>vtENU19Z&^Uf>^ zT>Y^vpDy$bX(w=O4`{;y@xBc0=YL|~4hrpCctv_-Pp4l1y7yz)%FQqp7@CTRoY5T~HJ`uyGq8ONjzT?;&H5C- zrzn2SU*}J&7b!RWo((&A|L>j9Fp`Qwd-KUhF@%Ep!hDeE`2;@Ab#NdxmE7xN#>Y zc!2BOmMlFlP;d|gudpt0Ve|jIr%$TF7}oz?g74g_=JT=GvqyV>J|}yQ^l-^}fvXSN zu<5Q-+X4q{=AzUdq||03fx9@xc~vvF=HN|x6k5kX$=suDL$icwUZ%bDVWgAJ8q0JZ zwC#IR9uSG@uc@~_dq_RTvsikYHaod~6!v9fN6ob;#nZtgnnW?qUuB(7@{k9`9@`nL z{J?T2+KR5cmW55I^pLeKJRcc{!KPN z>X+Way^luiPaTB5_Q!dV*w!fO55X=H+i3Y_Abw#FZZCf2;j(CKlfxXw+Y9&p^%L6j z8_oYHckK8a$o((4WGmL44)C0fF7rw>GQP&VX$O41^tbWUQsOnJKzzh193FPtbK3^(bo{9+%pkvf?x7 z)z&!Nd9dPNRK)_$a48X=r%#eq8g>H4YdUiR)>OFxXhB?rD}sK zYaS;LfqCe~0=_NysF$H`-z@J+pgE}ydK_vCwYqc!EgWAY3(qWHpx%ahh~9>}lplqX zZ$r)Fx1kh=@HW&odI73_e4p<^J&P`i$@zx!vrvEJL+3e$Ybz1&efxQWCLBKTs}Fg+ z_HW=)Sf1a4t_AXZ4;o+Xnz_Wk!~!6oT5)^M^T+Z=6UUuF%fDZporT*MrYeco)MGxBJm)@<0pR10!#|9$6DeYyrUJ0yY7Cu3ZGA z7Z)lYrxKaIPKX=if5^E5pAV<^7O6}DQKgO=@UuXgFUUKfok^ka6oY(PF}i%pgWWja zO~2tk1_8vs@4PeZHynd~F4I~vO$ z-phrw8$Z1`v#y&?G|XY zm&rbo+QZ^^I;vZr{O+T@dIe=S(q6qtooUPD&L)IRF+qFvFc9?i3U%llb)NnbI{8jL zD2C`5CCec?M#+5+(Q&GOwwZ_Mr^q4tnE^8Uj@jI0O<9K_dg2eD!Gm-{+slJ=z&a>#xS)tbnV-ArR`93U&ymZ$c1TLfud= zK?R^TKtWOny$NOP-_T0r-w@M2p?o8ZNcmp4x8=NO^U@fzH^w|C#vC&rMFR`GTY@); zaT<`0zYQrsH&GBM!o>2D)Pk0uy@BwHD@NZ|XnHRz^bt-prmTDdR(a{03(_%{xeXP3 z@BOggbHyuffi4|yCIs2>rGkmY*8HJw0cYRUKrs7~_tgO=)Ynu23$|4-S?VuseyJ*b zTm1!idID3U=t17V8w#noZ`20i7%zp|aDX*`vj!W@+H`(5jxm2x)m->xQ*KXAQ|`A_ z&C9++1KEvrt{&|M%!ur>f@)%Ya{ka@;m{6WGUgFzF&aY9zHg8>)4_K-^}Q78TBsH% z9BknE6SRf20*XztG|t_s?K_vMM7VFJ5pq<2g#MBGMQhQ}lp~6vF#8hKKcd8>$(bWs zA05l&=>pzJmq;C<0hxL^WBVCM!jq7x%Y%u_zfHu$o^Xv$A1tEMyZlgMopt%E zxU+1k3L|rEq71ne<@dyuG36KaI%e*2jD*gxk1 zZSeWym4t?lV>zI+X1y5WLW-kIJU9; z-y2h31BoLsT^DJ;lORK&{my_$rj6ogCw}%)RQrwjRcohnV@**rr>b zFAlfYm|vyP2by2~0mWdj`BlBKKK%JrT-);hZhrN5klkYDSLJb)v_^FL^0-Pr>tC~g zKznF^$OQ>r|N5J8olRf=g6lx-6R&T*03@dMG&IrcUo7ADyFTb->f!als~RYsz>=2)%Tq|4dnXPG(a^Ub6?og%Y&zdDv#3X`?w58Gfw1+>}5O!ynx~LRVqoJ@|iVo7l%5&0{3^;ftqHq<#-K3`5o< zs&w{Wr?C~*Q8cbpG)^NLFD|s5{u`R{4@d7)?LtYYJ%-RVv4qkUp^piF6QV#rb+y(Q zNn=e6jkA~r=92XU{U?i9a6o$y4st-H6Z%kl3vNhI5cBc0xN4jw@6{hK+BoZFKDUllT2lpwEKgLV>gYU;e zLo2VxQnEqH5wlUg4OeB2H_9K77rtE<(>|h#Kt5pMpXW>RLT~2b4wUDUk;T|V_NF}Q z5}AL9l`mrXpBG4cWdpp1=Vy{gplg{t{u-3rU75tp#D{@^Iy=Dn^eKdh*V`dt*r3%; zBy+gaHp){5c>s6a&=UCma~PLJg5L6+od1kk57*X_4;k8@q1B#|6m$_GN*=@2y$kpL z9YqjwEzjrCc%Pmg;49yHhll)!Jn*fM>#a%uGkKsVMjq%{-Xr(j^|9W{p+g>^&SooN?GA z=No6E2Jmq>(F)9+VaobpE;(O`ehXE2OMc5TqS(bzs{}6kXNnrO3aY5tC4p4lQ0qt5 z$?{11T|py{mSkEMqFvslQSHSJHhS3w`&>HJeel%rAgak6AG#h^yKkC|+6hD%Rqy>o zPJEu)>>}%Hn16*W_2Y?oNEAo%#p&F_6Cv7f8RlB_c!uV_zRIJ6QyBX;mty>jhPXM~ zmKT`WgD^wrruD%ehlgaB;QkNLR_z7xpVwTlw(8hPyLsqt+wV8sgD`n74Q(bo5%|0V z69?xG;V>W8cXw((0|taKM9dn#x};bCqR&5G_gRq99qsfkC0^K8CyE1!pSp;4?gFTC zsA?z=R6~CAN!ur>4Vy~yq2p_VxDWz0|52Y zfKS)MrW}zCZe5P@w=9_Dzt)D=Msmy`g}F?BgUy_>atfKSPj($zzgHioI|rV#feymb z(m(@e-Dr~ukZ7|>s)ZnSw^N^=_3A7eo{3%-#3s=3Fr=9g7aYTNWl&*%foSoCs|U27 zQRG`@tXqpP7Qr4wsUCcH7I9#|_9Y-+MnY?ToMpHoql_IdFX7iHQdT^VfL}D>qop_U zjoK+I9)*c-)(=d_vlKIiLL}Z~gB=$IZ7lp_@LPc}A$pPs*qPV70LQ-F<01H>IVIHZ}fVlt9U+a;vjNY}j5Ev~q)E@c%h2GadJ`I|qbqu|L10;{K! zQIK=7WSKLW12{$oprsJ)KsX(bAq_7QH#H}+3pazOthf_ahIEWw8kLSYsF_Gd;JM!E z2*-b&s=bdf+^;PM)YGvE)cZ-tD->`f9qXTtO$YL0z4jKch-0%TB4`?Z1Gsk|rQohM zDlRiTb>yJlKguAIujH+t3|Vu8nkrQ{KbzzwNs>? zDyKG9>ZyimBcaz$1l1Srfst=0KniJF*AZ~p2l0{84=0XTF8f4Or$d9H-j4PP5ycH7 zL7;@&mEKn(UHd8(`B&%$zrBy)j*rOJ6tpfoaejTLY8Lit^MDFj7>%1mzXRyK37%mf zXhXX(0KtS9f+HgGOI~0pt#$W&lR4L1j}@y-+(yyGLe9lg(R}r4ACc9MJOhS3GewU7 zfDo3C`reP5-@Kige6;iGrUEQ%$(ssnv_U*D$v@&5$OTqiw;SPI**He z_xgF{f@Wu?Rs;XE<$EZCITKOjv;E&p0w>fR3)Hu$GdQz2tSJ7)@&|jLuE~UKyn8+h z-&oMgT2Ei>H~~XOz(0|TkbEgQCO=~7B~!Bifwx>mqDzJ@ zS)e0;aPj5@idJn0I&a#nMAI0@VaKErL+H9aT^fD_n5errC6$e}4|*sNcORgYNAtNp z%fF1oks_+nkW3(pWXo!N!;>hbXWd5xpX)(;MY71lAk@DsvXf;Ih#pc7fk47C$P}W% z*90EW?gjzW-HAkd*S$&x*{?0(q=YmVpe}>#gbbp6kPdvlF*m!Upyj!0l8IP6`9?bv zD@{m%Ux{j+SX?rSY9GQUl>qXsy3`j_$NUH^_U?i~JG2_X zwaj?;GIEd|vjvXCznG5s&DdoaQ!pf2V{lxZV(WA(2Ubq5EtR9`+ycudL0OY|xljVBa4i9XINb5(2)^QVb~f#msLS(oNfV}?7rK6;2>+hI-odI}Ky@*F0=t{Qik{4$4`;pvZG9|U!N zdG-xZA4{Usv-;Pu>1p8nSLyix&PY$gVW#J=Cm&{d=7uBN&|iAaG@uNSo;5gvZpfbw z&S^t?`J5jOFePaMl0sQDf|JD71Eea)&}xo3+*IB7qRN7m6zIN(`))XwL}T38n5SFw=K19CM=HU;1`LWA&9jb)IE>VPGRs z3cvUqfC0mvAraMq5gPTT{1erHzb9kQMQYyC~=btI^v$s13rtMb0tz3YAn zZ&6lTTBG{AlEUUEX>6O{yq3nca%{YchPG;Wyo!dlG;GF!Sv9mh4(Zc}K5Cfx0m9MO zL!#)T;a2C_ultN1kjQUY+XnAg?|Fa%!6{h^y|85?$@og@AhEs&GEA1AZSl_9dQ1Uh z6L89kr=ZCXtfHtE1|B7^DQg$lvd+41+}-e>vhrqfZ&|xu2EplQ%JuWaI1|rn-bmvI z1aKDuC=Aq$(JcpVfyBlZ)%^PVbkl#{Np4Z%B z13d)UgdlN3n&$}ur40qx;EYo_m>h1UCD)V{J#eS1(dF#gINU>p`G|M5lMoH$Te~(E z8ajw@1;g4kG_Nh?ExekD@^Oa#CfBJe1wxd=ft7S!HA;-XX=SFg>`bxxGl(rmtjr@f zt3OYg7Qj@{{74rfPQeW0VD@Wf3cqC|lWcj8iL~57Nc0r^9_?SJP^|WA+X2-x>3D^n zgTkBP7s8e!U&3g6v?mGD8<~<37)i8ZN~sOc>*2*x>ne`esk!Z>=V*oBDC4Pn3z2K4 z#exs=0{7b}6wKlmYV=mzfx^I&hWx+{er98C8*mEnbZi$%7y;aQ0FpB6I3>+3k}-w; zrWQ&QW}n-2j_6ODtt5^_C!NQ=U(yxkp*a~%9Ef)5e`qc|Qcms}hH}$)*#ROpNq zVz71tmqP8h3RPGh+KM2jI+USj6Sr#U3Mh>=(Gc~QGBoo(1LSUd# zR3acXh6@=wR^$4u@nBFp4=}>>T@*SB$Z6yLCne-L%KVhI9G52fs_HKEj8q7A07f$` zPnH$jO4&i><$(4lh585}Vr$J0y_vG|Vq$b)*=p@nB0z=R#%Kq$YY3vee3RRTN6GG> zs)=(}fd{CdpoF9FAY}QJ z7282GzhzZ2yHgXjN`noxH@N*`J#6WRrjBBi*UZoH5lvi!`D74QT;!;%e0USa=_=I{fCZ*o&v zxLW(h2D}#8((zS~+J`v4uG^qop+%sBY1%ee`!~)+X%h9nNm<7}rla@xdn*)Wg7^s5s`gJlF{y<}`P0)^M38`^^vBOnxzmh7i9k zlq7PR9-*eEX(c`Bl489s0~kmGRcSqjvYC}jf!fg>RL%638&#JuRU3s4h8m}WW?rX@ zRBNi5s1~bH9=cguh#HcGnVc-@v?zGEP|GLRRs(d-9@i!8LU*_31Vk89NCg2;WknO!ho|l-V*?;V@7?2>5Y*=jVUo@L ztmM7NAx6ag{1%$$lLfHlhWD9KwAJYb;u*4+I!as$gWhpBh^$Fju^bkNS}Wc_qzNfM zqGzMFB#Ee_%7lJSkXHg}?YK4EALjazYKl7eRl;DuHi6P96GSc2e(g9|$e!!I)dUe|iU?vzMF9oTkHSG^q#*DdweG~Hjt{AoFN3IeZ5rZ6{gMOwxv7JT z?tYk)%`FriFqBOwm{e^Fn)iaK`7~ohxAA0V@g%Eu=uQ}TODo*bqEP)rdN9Se zupP#oY+Omj8g*TXE_uy&P$IRvu`bPpqSmjqu->tT`WrBTJm9_@q%>z-59qZ~XM>m$ zE0NPOk(}W$k<@{>`=MnfAQ^aha7fTjnU z(Z0nzH#B~&TWVHod!V6I^KnAVM|MI?${<|Iq?5ZSlNOfX@GGXzIFo`ea8b@Pwi;kQ zHa&5)vzk_Lmrcd39;X0}9sQe#Zlq72jZTbLNJ+G$7%1_Rt~SEj`=)ZvJiem3nzZx` z!bOxzEl*luMw{*dpdVf0gv*@9qqk{*m1aYd&}lGMMN)x@IPA|2T#H*1KF}&Cy=a#& zW*E{g2Soeqhez2ypMWq_`;0kT?Ac@9_tVyDS1hMuIpbWcBBA=qx6 znN0BnOIK@G!iiQtMYs{ob3$P= zUVq!Ky~Y9V(KZ9-sTQ<(7hNlbiSy9;koxy%4>Hbv?JhtXrR9bGDxZ!=J4CV6QpqzF z@D!<8tqoxf4^p&p=((^z-$Qi@Iig`<4uS7|2o|_iXaQKFy#u?wHo9uhaELsj$NdN~ z_dBIVtuGb?9;1diFYr7Ss>n(s$Al949_XXYV4M&h^wGSU8u)z**O>Y4*zm&lnW6Q3 zl4=2BP9-059#s{s5hUb&QYkByGu0;Td-P3uBKNcYN6T-YfsQV}t-L_h;D2z~ER{?7 z?KH@5Pqx9fAkbJ2X=x3#^b$5|WjnM~53fS_#EicK@)=or`virODhmn|uCvm`w_so5 zTP~W5#Sq;d4U#w9Lr+Eam!L%>p(fZxB)445Z7Q+tNv3YNkp3#jZ2Prhj>{emCp-|R zkahuJl+5-$Rp6*A%dis$M@q5lL`?-m32b^372qZcn=nC4<^zvrA?i|g&@Ehe#M)%j zFJtE{Y<|E>ZagPTe8>qbV!85<$50eL&>jM$n(z!@RJ%p*i$vNjd0&2b@**mFM5g;_ z$^IfDgW2$Y@6SgS=vCh3dNdb$!~OXkh_|7%r&5Fif1y&KX$Xzhd#$)azmt;JGJ_J! z%j}RQ^lD(dtZVNs_)+sY{g!|9-%qXwArxv^4j!Q5r8UB+@rk+7*#GS(Bwt(95PX7_@@2dX^701_Q6kH z4*-)S8<}NjO(+Q%6Ee#-jg~AsUa{;+Hixtk6e+L{o;hpLlEthL@P0o`TiNnkc=`!5 zZW>QdI6wjd0dJ&3MGEitkBT47r_p2}$_&u;qN2B!>tWZseCq2>)%o%s#P#_t^iKDs z5M-DZZNlUje2g89*aNlz!XAmwm{@A}U5#$I6M2LknYa`ZqK_?~E*;ydbpV-~hakgx z2y?Gu#xaK|sQDzmHxeBco(D(a>H!`t|4OlWHw8rxZH8X2e*=Bb8m&grt0c%n!G%<; zII+09v7n_I9WIYH-o|(%gR%ERK*sdtr&`kv>aZ?F4{#0SXULwrv{Rl|q8Z7jA7E4@ z<+5C?Ki3DdnpWKn_EFREuYZ!@;nIiX9k50&Y$9jv={c%R|1%*&&@K%8fg+@&vKLoF zPx}t?n{Q|%ElFiN$i3wTKbh&y$*ni6ftG&QMvK&mT(LFH#kt#USW7Z+YX2z))S593~U_QOO?ma0`q3l>R$C!`>>Jau@}xGbh$Xb z=Ln(|E05v!5bXvE4UDJai}Kf-9LeXD)F4Het}KF{*u`@N`OQ3#HA=YC5X*>!>wvh< z5-z=}iXpD#Bh7D6|M=8S5W>8d>LR6S07MHUkRT~7r(+Nj$(QwLf`XBru{T30S@l+#tiJ;i=h5}-y#@^#-x0y}DXRX{ z)~8tcs+H0hc%F)fp~rbt5xx?zfB9+^Tz`ywwFZHpQEzAPKpTKI79@1}>SE4Yd1vRn zDTFF3FkV8%L|72$m~x{zu@2VqoLDEchB>j1K|+_Q(u-7?p|%u)LMu=WG8L7X{tL`6 z5k3`|YXP~yEF>b~0z+4XQh_0XsvCspH*kU3G3v(_7z;;Xk9H6~sjVDAEHM@sDmsw@ z6GVX-OqBA=Xi`4N-d5(w1Clj-w`ng?s-65aKR{l4i&Eu?8`m$6;~uRV5OJi^Bn$P` zKT4E(WTfPJ0+9*J5WHp-C3f{+zWbJ^h*O5r-GN{rPf-cbRzt7LQ!LW9%%}$Tfb!H$ z@N+ow6qO8=_Z|ihXcXM3@M@5!x?o4Wy~N-M{f-xL@GcG@vGxF9gcrSKk-`=i`ewZ) zqh61KmDwvJa1(`sco2CAQxup{n4;)~g{dG6+@9gG+6IVGP2^Y+7Na~IxsX=PaF5nN zku#Rbnja%Z;e1eR`-JhBEm_5RCBwDIhF*#hkZsVUcvmYQm9q||sci_|n|-}CCpMn7Vu z?U#CDmG-gJx03!{=&>mg$G9T$BCW4$bjUxlu@Umn!o3@TOXofN;|K4C31mccfv}w z@x5~VR@2%Qh|5lJD-xG;klj>L3MvwBhb!XJ0+4U&K)J~$!5l^BBTNN@2eIu;mU>Sy zHvDLLBIbRna)e&MuV5RtXot#^W9kFWCo2Bu1&)l$0(JiR$GE4g9cmyU&tn<M@w0ILIF;=Mf~%o0}O{wB@#^!5QRSdb4N;lR5*pBK8L+i1q967>C6bjvt+(HDJo<qLd=U4hLELFR zWT5bO4&siR(FgQDzAyLK`WBwAM8%7|ALh@1-#p_JVjozH6@OM_XrXrzU42w?^&Tqm zdts<86Eu6z2gvgiGDke&Q1LJkJzVCD3e|>8)a6qiWEv->eoA{{CGv8BX>3qXB%f^$_uVMy2(!Sw6_Zah| zG3GmC%&TI|OJdAbG3NO(=2>BLzwvzr1C3bu!kC`h266We;$Aw4`$Xw3+wTZJ`i<{$ zx;^`p`U$un?36$7_c8wdk-vZ9?>hdz#oxd4cRPRIYR<;%_#87xK4^zjpps@YliL#r$>h_j3Ny!JE)2ZvI}uUoU^_`MZ?Ajr_fezsvZ0 zEq|}$?{faGsrAoTOla?rsuh6Y1#>eWI?nnDtOq zWRL-Goi4-z%o*f`i?rXAEc}$b>>9h*>#UetU*qtKf1H7i0(kN#%jtI5b-U;pGeQ@F z%AW~#<6`hWK^Qv?c%P|q1}}&w5-Y-szw3sB0{B)_Q6jk_AHO5HYbL3vEz<{DYo< z;}ujOTm(v#1?2#(jl2e)SPgula{M>gb>D*b4FG!pUjY=ihC+`3CIjkxK27p(w!PMo zTUX~+B}}?fxur0OULq7EYWmH!yDHta;n)b##?}&-;*$?P>;@m?Pv-CGu=C@Do*wQb zggX>=8w_|9&JVv9;_n#Id;(Yw{Oy3N0bc=ZH~9C#{~Y+g+Tfq!nhU!};D06XZv&hG za}!Ps>fvsPlou)=^BO%4j;65=Qaozmf4YG-+1X*|0L^^Bak%kd8ek3JsenE}J&c_Q zBNuiDhcjt>Bo7GhJ_BCbwd{^MB23mux#ebpT%HF0J25o=1iQS)BVpBm#^zrM@q_`7 z;`$uy{(%g;A8o&vk-CqkhyfF8h~0X6{sfbji*I!`TrA-*^j7kUlTsY#x0haLIX z@h$yhQvDY{&nV-hO9h=uww&`~ZXx$e>zaDnUPetfo?MJzTozH+r>BxoMhahx1 zp!Ouv0ceB2k$@Qn{~O@n@GD;G(pzful%ilIVDpMT5}%TZK9&GugiF=Z)aB}ZME>3CR8sbh%= z;*@D5VT6({-OKpLG5$2*moA>{p(>1v2TINyn(IE8`)+l`A0Cq{5LW;nyX+@Ryx7yJFkLl*GXGCB*ErCu&+~@gfQRD zre7;lfJ_wMVPpZ{rhibmGhYm&FpuHyG58{#<}${0BF4Vi!t^)78|O`*6fL_><{rC5 zm|q)5zDyGmL8lNt%RKpx#d)s9SGvpKPzq&7)E{E3GShIN`7X3m0?Y>xUMzQn`9rdW zHG(&VOf=XeKf5&LNpXB$kVi_1(C3|OXHU_jcZ z);hdi`(i3?!u%}|h3PhO2_;Rso$53=W7-Cb*|1r}HsieB^a0I>IE;;vZiLcYwBxVUY{^K zfRj<7I(#abD4?azDJY*nfcr?ehii&CbW+%4{wws8$fpnCKKU5O>rDzPl+@Wyrg7fV z3lWRs#v#+p8-ZPB-h(enlKCk%{ew)vxEl~9#f4I0Zh_t$q|b2piz-2;$3UG*)Z#M4 zn^4;5a~nRTi^;zW4#IpMS^kDTjrc_DCz91K=wrvHbdhvvEEA|kY!8dZMnuAtMX4|! z2dpv=*K$F=evJ>xAD7`hCvrt&{Xd~EGmnI;DjH;K`XNCTA;ww9IA7pv-i?neZtQYD zyWC7J+wh@c$o4DQeks}i86R1+$wgL&B|7dRL^b?-;)_sdE==8+m3RvJ)DI7Z^3Xq+ zU}uIRw|C&S25$F#bSPA=`VLAjxvhuW1z+OLuTKtzR=|z?kY93xs2ExRx12qPLiZW` zp;!j}aPz_~_47laAlzQYv=h?LW3VJeV>BRkMzO4XBq05cl7MA((o$Goe|jin1>ArZ zo7(+Ls$@L=WE0|dP?g%D5WyCx47kk^_#ymt2wz(e3SFY&O>rkTdb29!E8LB~C={xO z8^ud^>ww#}a4V_DX%2(GY+yYBw|ck%UFf12#gBeE#O4qF{aC1{TZc%ee>%dOitu(L zE~g zI$vXqWl`x#ggxa+3EU=r9SU`zP)&lHF;6DJZ42BAeg_3N3WpTYOody{e{tviLnw=I zBYJxIJc!-ne}&ubM?<08Rd_^~($odFkKs0cO(^sP+{R&Zv(8(f@Q>0&v~qtg#5Abs ze+Y#rt`EcSufKu6Kgu#fVe0W|g4T#LgzQxdmtyr+EZM2!k(ZX6_@bn7mH_wUDsbiT&Ku=AiSmx zsyq#X*S+!Z@Om~KUbt;99v)s^@bK`&=EK8Vukc!N#uIra7N~kuzN0t4`{Nt=8xMcR zpOi&~%k7)xbUD4%j!NNJ;&6#dhYNFg6=Zg~3*B`N9wmB(&+RU>yBdotD(dSTt_sWq zk@FIVx4=>56Yk4J73Rj^sor(D%e~Yk-1WZVs+sP3SEW}_4_xH-<<@$9jckxQr^{0h zuMvvXPOr~h=d55H9^E5qKBv7#joqTmpa?1sS&qMGBZb-27vw~HelHN$~94NSc{F$ERQfa0oB zq&hr?XXaes^i>zRqsFCrp0hhL0nv6ZbyOC+=7HN3h8};(375Or<&b==OIL6L(U38Q z#4I=fF)KvlXIi>2P`$7gBhhhd!5gi{{{@{2Mlml zIr~B(|Jev}abJ$0L+-^(9CeYxWgrf1E$TvcwcG1(^^Kv*4ijcGVM1b>eu7iRx z6mX}P;v}d%qln)QnTcX$79+U7BK<1Z(WxcU(=R1Pf4#vE$yoZY2YsrpKVZ-s?GM4e zMEOrJggFy-pDRDJp#Q|+zYBVDC)yNGW0)@+@Phs5H^Y7u{9B+*@K1dU^>qT~r{I>X zXk(Uy?aA#s2%C4qP1mo6{z(HK^?CGbgWXEFk^Ua&uUCGEugjtTy}=LBBJ}`h*D5^H z(>r~Bg=aw==(hm&1S!6HSVS`)xMY6@^fMI=@;eRs%OER~8}TTKH27TtyVI2)GWVxX zH{eV#=qJVKZJ>8F6vc~vZ7QA=Cdm-`@8<@8#~Sow4EhvNH z-A|$42R-p{7xa6f{|r!uDf5o>MiVr1T#_ zPqIGY?0|l!((i=+Go>fD@1TElzr-`vA9AC35~SZJ2K|T7??C(-J~!|XbR}klhee

E$`4|>WUqC??yD*amM zcPo7!^gT+y9{Ld|M})r#`lFTJ3|=1redkAz+o4iF4uu|u>VWzTDgy^tFM;wyorY7z zZBVD-!Ko6c8=-bX*|boo9BKtr5Nh0Bn4va6bwT<5jd2Im`%q#Z#u!iqh(jgR)lgJ- zX&gHqWjqs##++SHc^FHSLp=<&0qPy7&!8+AD;y6s52^-g1yt&1Qofg~R+vjgI(v{d z?0-UDn}iMUJE(4iO)ba!aFfzMEb%Lw=gW?rj8PX!%hP5i2uiD|#ZCDUd zA@oIm5=&`PQiv55;_^XdIB!T3JwJLTaqbN7QYU12j3?1vQNODHwxJ#v%`e25ACED= zjk0aTe$Q0jOgYKG|Q1G4^E& z4=1{Le47JEKZ4ZW;Ac9K*Un9*w-zLtju>t+jfEMjB&M;@+f50ku~4?@Sib@?sTp)@ zs?xJYeW>pnAx4`nu}or{G)ymHJeJrBQyX9xO*ffDVkW$ICWv8O@Zd=l!~N)h+Y`l* z&P0)DMJHz)A`;7oh#`K!Ak4vJF`^R*Dj6n5mJbt_PD}uG4;L1!VVkM(P8%sq<$&!Y z#i-yYk&>ArtmRgij}S-LFi`XyDJ*GYgsBY^UaiN7Z+FqISub6XMORV)(PF)0z8 zBZgY%!cQsu&J&iB`9gHf7YUg)H1QxT?JkkjdWA?RuNO&JG&8j~AiOI<`zm2dyGoc# z0R2}XURS{%^wz5p&#T3eZC49(*VQ5c>#vs1YeiD$a-@5?Na|hzx~s%dtvKl9X@b59 zG@FD)G>e3i7BQr=1#!IzxHpLeTdPPazZE#QBCUX}x559NBDwu8Vd}a|n8j*gN?R?G z{ebOQ_({84jLyWuPxswoNXb3GzeiX+_acq=iZPw{iK9#I7sq%WfcXK?0~8MmOY4I$ zKPXbu+JtCp6JyhU2m9ZPV?Doz|KDTU@gZT!d{iWO{vbrj8j;|C4DOE$bLQhhlmoUs zE|P73L|Xocym~?$?|%aHo)A9^J}G{l`II=p-!5!j?Lt_e7M8ZBh1vRN`1`X+wmyS& zJtKy+JtGpkpzj7udlvD2RwTAQi*odwFtqLTh0p=Hkx$^~K>D+*L zY!r!Y8&OsO#U{ADC@kecq$3C%z%D@RX5{&1#BDQZ0NP#>C#Ah4M9E7c$+`u8wuqq~ zz&5~cK=HB|+VwKh@Txeu^Hr3I4q^6mAg-^8ajmbx{xvbA>ot*R+XlbeM51S#7}5&Z z33Kb~;*_@6#V@RHK>r4K)+t11C-Uhn#PKch%OGIp+al5bwiwb5*!?!beMgLMe+T*T zj z{&3Tfw&CzQ++<3_gWZ`UOr{{gQKsqbqf8<=$~424ViKMdQ$m~7BvP@x1M_kg4^%4@ z*lFp8N;M(=P=2WOP~A}2^lK@BYJh5k!p2PtHhEf7vE66^R4deas4l2vi?HND`JvWB zbwiC$6c%tplmo7YLc3(?fwBz&E|dpqHB=BvgR&+eZcyb=O;GJnJE71xTgF3`Ks7+M zL3KcNLlOPa^uf<`KEu$rtRl9F3ZLL3h}QW{N&<45z7#vi#&hpOJzxBFmp{eSD* zpH8>?jlSLcqdN|9A-}0_OMlp)B!9C;Sy!3Q8#yF@dD4wTZl=r4xZe@@_(8? z&m}+3pU&ToOQkz`Oz34CAdU;H3_;Kmg{dHdd)BI)J@YDPSn}3?W)i?e$ zfBsv3n!k+Of1E$P{CMt_{vPQk9|@1j&-(iY$D=w@@{q(EsQyv;S&!WY^jio$|Mc>s z+Cd7J>S@X25|57D@=wPrh_utY;V>TSSoFJA4HUxdw4uGBdg^~c;x#IAVLU^7J_&d` z72d1?>cJ)Cwn5VCRqqYySOL5>3U6D23Rq8vA%0H)FNk$2`dv0aI^F?Z@)n6VP&y6* zuUz5HfS!MSggXvlHM}h84U~=o;FZ53@dnB_AMn;62Ht(Z>sELJwZkt{{9cve4utm^ z@VXQph9~`|cQo=~&9;8hYsio3lvjV1co)agQ{`o688Oz1en-Mo1#9fm98|DLL2J3R zpQP|MDD$%l`W1ZrQbkw!dtX5r4XdAA5w0IeW=K&bvqeD`PGBCQ%yO>U>c`L&KPzon zU?}?=s~^KuHjhwHRyV7ElrpC%XjSkC1&>tlCpZ+IhnJnSwu8@B{^I3ZAIoNeZ5f?b?otLRoxH}?kxGsY^~8DsO=wVob7|EXwlTd=t16`}Eg>{uo zmtNpEaJp>loQ$vaCDKOnUpMy$F+ark`OXvQ|IJfBn}Q6Ta;KWUELqGb_aM zQpx8w%nea|tZzzaQ!q`zOa)66ELYH@pkKjO1=|$t{JW$l-cfWFEKyMBGv=G{vx-gy zt=q{wIG-DCi01RxF??=&pXg-LNB$JU^nCMpWcqENlCxEmE9h4+sGuIt%smpXRlzQX zneZupI!qEL3fxe7ZJH+WOB5_;Xj9mziFBG>MC#*b#Clzc}FsPt7ME*)>u8n^> zjIA%3&5{p#!IW~DEU#Q&lz+XS(c3BA+#mFq6hF-bv4dUF(IFW*s>;42CLU5Aw6QBu zD97nR=EDrKLc65Q{lRwSE_ebfQ%HG=a$NqB#7VqPS;Fq%qk?{hIu`oB-%_}da`Lb) zXJ!(e!!IXkm`5f2c7}bI6XJ&-^Q@dc1=|?fU?+b&W8$OB&)qb5GsMS6cksg8AIwzl zeugDtyrQqeB;=Sef2spS&lYaLq#U2gzVvcJWegbdmr3C8`ICwHVZskG?3+J5z-YBf zJeo%){C0*m=;g0R#Z&KR^>IXd4&i4iEP$By$nTN#x(WuyYgKsNgW$C(JW)6>y>^9X z9Rx3^@N9$Nbt=5HLGZd1UgjWp-3qT{5Ik{(kd+>SjD&|d;|G3Oi}M0r()liDF+$!jXyZ4w6mN>KhXlZMJ+o^BC`aSp^e z5a&Rg191+-IS}VSoC9$V#5oY>K%4_{4#YVS=RlkTaSp^e5a&Rg191+-IS}VSoC9$V z#5oY>K%4_{4#YVS=RlkTaSp^e5a&Rg191+-IS}VSoC9$V#5oY>K%4_{4#YVS=RlkT zy*O|kZ0Jmpey&JIu)64+2Au;ryq^tdF`vjwpAT zZaRPEhobbyrclN=))t7He_Xo#9BwN-9^TInGzv8~|Za>vRu%4x-{jU-iJGt&kW^0wGVeH7n#aEvmf_7)Q_v5}mxwrM>Uas7O{kT^v_pW~2J<46^=h_%g@`uvbpxkZ!xcim+lo)q-<$Bem z+-F3&myk2N`vI*`_dpqcGQVR>H||Z_LiyQkME$>_*U!WS=J1 z+;AvlBeVM1_<{|qxRlLSzlb^a7fYv(=|t|i$b`QnD9Q<{N7L2)2AzC?M<(Yftivgz zx6cR=Kk9ezR@@(r z3lGe<;ht^4V*$x*1H|>Wplg`lrr_Nbn7faX?|ta`sKZ$PuUGs}J6if*ub`f|wttZ>lAn5cC}#w#KbGEQ+&@L~ zGYxo@pX;G0Kjl3@CD6&ARY9AAdVbpeNftO)tjeFBAF(hxKZBwJe8zRVp&fw4$K8N< zA}7=ZxEt^rKwQxs8V3H6nfOoqB>v-S?$C5VJW&(+4ItsIJ^^Q45fhz%Hg#S#Hr?%< zZW~3Ke*Zg9S({YQqItip@smu`;cn}<9_{jLX}h!0Vg z27}HIy*$LGC-WtWuPyAOYbco`{LuNRp9hZh|6BIoe>sx(Mh(u75*6-`D@Wboc+UeL z{sTUg15!O~Dw6Nwq&3R=l3XawZOYuEpzVC=zWPcD+vZD{dXm;V1(ZF^re?6KO+34ev;~GD>^8ur}Eyf z2p_Dlqn}@$z+ z+gK%4_{4#YVS z=RlkTaSp^e5a&Rg191+-IS}VSoC9$V#5oY>K%4_{4#YVS=RlkTaSp^e5a&Rg191+- zIS}VSoC9$V#5oY>K%4_{4#YX|f0+X|(5Le}-8c$j2c#1r`cFTY}*h58f9+H)ELswFs&X>Q1OPppG=d4eB>g1yHv_ z9fGP#5SF*0sw~3N3bhUDYpCgoz=1Lk5f(qxFOr01HB={*HCb4EP&=WH9V#s4P@Pbh z4ilCyp+*dc9aJmS%TVSK!ZIIf71Rq*Jy2;Q5hm1qP;Wqu8YL1kp$ecbfm#B!YLqaq z9wjVmq27ZMDZ(-y>LMsV)LN)+sBu_#=g70o0RF zT~Nc00zaTKp)P^C8tU<*#L#!3dZ28hg=H3$Z?qVCC*aP}!aQz_u$&8Z5!6j%kURL5 zjq_$?)zoC$y$-K8eFDLJpQFycsK!w;uZErH+Lz9^*VH>oFO(LgdFd0&>g-GN?A~g2 znB;XhDoZCg%Y3uuT|r(-^Cnfpagx*Jb2oaY5Tc`Q{*?yzY2+@cI+rZgeHD77@6tK* z7O`&51c$@zY%E>WP}bm^b&{bu!3niizM()n3!Gf^|@4s&IQ6Gu(B~#ZH&KCTk|5?@gOr zRt65(XQpK%po?TkQNE_sIlRs*9btbN6?Tuk!s%EN%2oE^?rr7dLtqcw}jrJn_8T3&SLG^0VjV7Z+vC zz3?Yc%B`z&*D3B#WvZ$188yD1+E^btft5;!8E~{`?I!eRM zr*1#BtkPX;cglQ{TvtA(mDPJ4b@{F;HxtxbM%|+~cc8#I!xbTKZY1z%dt>0yF1-S0 zXT5KjTtPMNXFktx3Ji1Kr!SvMOrw(2SKj8{t&uUFxg?_dLEv zW8sQ&FjRFEuo{QYjfTeHks8*BLsgx_AglkI+D#Z7wH2O5hSXw;GWVj(D$3j* zAJS4&B_zo*_Q|;zWmCN9GDn3kY(+I8$KmzWxj~Qdr2XHDwf@K(sqWt+#YIK)M2S+@+#_sjzySzTTt0GKN zxkV>IS(ez*C)#WJ^oOoGI@&1dIgKuRt+QfYqbE!rwq%^ySZJsGsVuVBI`UoAY@iL- z<2N8uzN^sTvsc=E_EI0(OM@Tq(gnV87p+@6!DHZ6TppbuW$klT#Mpb!cR8=9choe_ zbyPX(9AHdknak}es;{XjbD^Q4q9EB@<91(uzK3~%2vxf)b%$E}<&K%|21!V_bQ@S) z7oCZ9NKPbgq$!e%Ua(PS7eaR}*6DeDl{L;qkknjg5OhnQ-Fvw#lTkJ*_oD2O246+B zZdDJ-#DgO1sEjJiOPw_}^QzI+>v)xjIgqlvjjjrrXvUvcFUpE%o||1(m^&{kyCAEy zv}{~i**sr1gn+VAsTVi!d&G0!4ee~a;k2>uRsLneqZQ>yGvlwzWnmYY6t7EH*bxu~OV zS8;^!%&GOR%U$lJuEwkhGN`;laZ!<2R5~Xs3!-SXMXb3IgBQ_xugL^%{>5Ywt6!vW zFT>?vSBTePZoije)2eLWhwVouVNR>4cDucfLbOqhjagY~d1*+|h4%Ai%@c2%(krS_ z%TT`{8BKQ57buem7f4yz6(q9@4Yb>sc9WvL-h74FWVQ%@3nC+4hOU!tPB3SSH_R1c zC(Ny_6qoi}q^$wPeSBgXCLh)%rkvN!8C2q0^^GvtBu5zx!3-P2_xbo_2?XHp< zd!wT+TdcMq%O9dBbzP5Psc3ziqlbGnP{tmnY+5Y-WAPNu7hi!;Mzs?oi8?1rRcQ_w zKA9=cFLll?E47C+U^aJ!dn_?1OT@PbtaTL)p;0|5E@#hr)}Dvr`%jD0I~&O;hU7Ah z(!?0)Q;@0xyVp0@y_BO}nO0MXA)mXZzE-89bP@7mib|mmW#zoI`DGZ{VW{$<#a&TR z&&{1ztW5M!x+|%il%-FGQ0Sv}-?f+nN=u)BkR%n@otLIc9cUB5taE+m%@Q4nC^Nq& zCI$V(q+p2hBW)5zH!rPpkqTUvSA>6S($uOtcP-+cJ`vPsK`&#THo@mEOiOc3nCC8u z_$!@6k;aJMTmf<4ht?KZCy6zJLpLTly=OxT;tiCDFOnvr zpD9AOBeOYNP9bZwB_m@GQvBP$qnPWln}*2Ah#7M-oW+r{F4_8e@*rqP#oGv~l}pms zswAx&N+oIIP?Rc%kJ90t;B-xJSBag;ddV`9T_Uy&MZtt;#5RCg8Z#P{?}lR7>K_LC z$0+_;X|vL@vc#%k*^MNC-3o{HFDPR+aFw@NAQ!yg=Ph3-mrr=-0D#XWRyNhgFZ>83&=_QK9&NZkJ7Q6UrSgrULbVI}3 zV&!lY2*&ArpYYr9r3(7c@JjI*W?^C~XJ75YUPL7@yhz+Xyh=PZ98nceS*L3)NWhSDjhB~(WqW%xK(?6(};AJo0(nUs6sQT ztZyGNfvoEs+*x?T_VT|mx!!#C$D^A$4ZA5}-Z@_huo%HE$KqR``WGiv|NXpy0 zM}lMALunhy9{e8({=;@>6Ll}`zy>$jPaby=TSv-{;%_5G5^`sRK6MiA)P6g%zgZb^ z^T?Bv&?cZx|f=ir_6?PR_Ge$sb8D&xF$6vg>(nD6>AE!*Z%y;`=v zk3#WTjf{_N+49roQ_J?;sKad8YKsPG*$Tof+h0Z*TDA{H{fL&WfLk_1jaoJklr7uu zAtSUkF?(*~@2ymjWy_W?TPO+~Uf>he`!lQFcJ$G*6{V%Q(X!2n_>(Q$m)6*p4aBHr z`_$T3%hqE>J--9-K+Co!C0+dWi2hr)?~Xtww@}R6eoHaeWA`IlwnvXNHbH$ffJpii zN1|+TN%~rqq+5=nl62Qmy;`JHk(?u zuA^kj_8A;HAE)Gfty;E~qg^5}8f0#kEt~(y4Dr}eS>ns13dJp>i^RQfTm2;0H~y~R zZ!5kcA$^g(GTQ+e7$X)I@to(T6?2!VON<*wPXtbmv)1AAViE%lL^ejbrI4+aNV#S7 z6c5Rn7m)DbW=-!JTQu)WF&&Z zR*1r;2f1lXMlFOGr>DjdZk&p%N+B|EBgP4#G8*>q@|ai=dD|H9H-MRT@$eSeK)rsn zOT2wFq^vtw{{0g%%#W`~O4DWA*{Cq8*<3d|UA#GZg6JGmD0UuQBtAM?3A)&rV={FI8!ZdNkyY~BlY@iO6Gql)g?M$+lGD>g_%bM8ucM& z*(~o$mCf?*RFRx6HXPHdS^m#4{Wi;A9iuZYoT_h+nI`T}EfjC07KxpyrQ+YIVhG4u zCWz05PrShCaz(}#;**h+=Q}W?>8wRQt4{EDqo?M(mXOrLA`g$vipAGQXRtAPa3T&O zU9EnqDmx#c6fG9*#}cd79*gu|Pxf8PzJu-GI2L&nJyj?+91GFJNpk{RvQZFcrxh;| z?|_7VIg#jOLhbzB4RYuJpcfX@z2g>(yN;s(??28f9y$)J53y{`xbLf=w=l+QaBW-3 zQB}42pU1hxhp_Ew;r@~-H<6#A>7wh{UfB>hPSzweR9puz{8=I%J8p`*imLWh49pyr zGaFf&W_KFS{eSGe30zah`Zqo&0ZG6G1zA;sRt2<*-~v`9fD7PSp;o(rJBW&FE81S8 zbV0HA606m!tysH|Snj2*w%Qf73)L=KTkUSt-WH?_?g>?Szt5aGNeG~{_x^tW_y2xk zdpPHrGxN+d&&;#TGczYM(G-V6ho-^1O`pxZ_P0ahXfRP(q*KQG*=M0++0UWl*tt+K z)USj#zo@`%`ZdsB@dWYYiw~#+=CGGLFJ!NGMq7F6OCt3{q<(@_3oUuE@7|a5evi~M zo#6)YDc+1Rm~+g;EGr*Vh2$wyr(f#GfL$OuHxNZ1e<)M*dzXdmQWvy|r(P7PkAy8`MPW>yUNu214Vg)V^p7r_ z^%G~#gUjnoGgqj5XhFvzqcIGli*x8ojPL%+Zr|iH<@7QjhtCI4X`=e zDpZ}k1e0aLdI?x99P3qq^+B8I& z7B|C6YNUgWycvge{eVKqE5~#*9GKfXaA3WL$Ua2`@`3TN7#Nqs7qYA2(5>6ZV$RNB ztGkkvt?P>Z;u*JzjN7{|WX~hDRLQuDXWT;>H<3GU+2~2Zh)N{9RVnxJrzrDvSEimO z&$z_Y_I|d$>mu^Q!CbD2G8f#>-t4-V=8gIJax~&3upHS)<7J(|wY?ka@8-ew+UxH| zgziC-;d!z>C9hDWvsooi{}kz)Wx6(Sx-3X|Sm62zxXuAS!dv*3XyK|`7P7}~!H9g# z1A&ak@l^6U%qnItn{JuTcF-H1f49j0GV;HU)Z*tU|J!(~1tFCGL*zet3zJ8298G|! zxzQA`%WNnS?uW3P0HVfA6LtVTD0Rd*ejvzT;3`ZRQ5w?PYd2xPJB%PVmlg|<;p z_1)s~fgV-|a^2dLXft$VLr z?(?^L(pWgq(}Nj!`d*R#1yBD5>BT(#Es_2UPd|_J5}sZm(jSf>JZmGEhpX+X>=`qi zM@PozW?ZG3Ps9{%_Q%i=I57z+QLzni)I{-q-GqAMECRb-6H)APp?M$k*!3^W(*6O zPyP`(pRI~Q>L#*}g~$zz|H3=CDcd4q*wu&uWb_t6VCA~+XD1@#(Rc?levcf>9*Y{s zj8Vd%ZHl^yL3=uismV8;#0ol5gesZ+vj-`*No*%bsrZ>Y1iz5ij%Y@Dj=gSLEZ^2E zJtw;V{AuH7%}!N>3Vw8Sc8(p6S%S#Sv%N4PY6-`5c#2E7$ym%vdoAK-gM$O6QV`5B zp@Hcbp_nq+IUmV>0-D-$L{J3?@?hI`$;0l|-o)p9z47)eRWciED46NUlO5i+Q5f{^ z_9nlvf8!kx>@b!5l`xiYyc-1GqFV{C@m8kFnU7_1dXDX%ruIA!C%Gw{l1Uv{+{UrzpEenrB@@ztE_i_cC`0Ew)0jV z;TZ*X^4N|GOEDM0u&=o_p6%!}mVMG^96Qk`omCS-d=^qjLl>6d^S;!Oulk~aJl(?o zZo^wJod11}=j>;9sjv2pu|Kbl#@Ja$Vxr)CHk$C2BE8(mCHbJ-@He98vkIhs^&~aC zlF!IWXi6yj{^QYd!@rA0!v`(qJ~-5a(<(aqp>HE*obB7}WT3Y1fcbgju?nippf2|n zs+Sc;Hw@qWGkPrhAbK1-5}nRYgT`9kWfd>U9J<(#T2$8$`mvt6^2l}iTh9N!C-Q8L zp*+vTfV(`sQlyvj^w%hzmsN09^7K!Uegt*745BY$D5%So2#H+c{2Z*O%0`gfXM{n< z^Uk%PxaASfe8J@HvGdvUu^?^(G5ITuRp>8Hiafb`GgfBue#%25+1qui0yD%kV)D9} zW|_P`rjgQnE(URPPI2NunRK}FZ^gv3pJK+cU9scXp4fEuVeCy5-`Ak9xPs`f<*|oy zJd;1aY5@F?0btuM>I92O-GtPqky^`BYei}qQeQ=?g{M}D)PqRfXVd^ONr02_>7W~!-Z9b9 z^I&?%I|}l!TL$|PNE@ywfO5p$GT7chO$FY518D|M+Fn80g}8;x7Ds`&uLtyF2jiLz z#AUGhIOr^1xKb1@k6*}Mi^ovnsTCsi1EhW&|5qb*8SJh2n}+JJR)}g1FVQHqifZ2; zypSCn45iy}4dT1_CL?ti7at*WKei@5jvX6}mJu2?w!i$*e*!bymNAB{y^VSBIK(9O zM<3bgU>Boh8^=z@a<7;b-v*x^Za-8s|7*ZsrpCS~yJCF*wi$V|?a<-d7CF5;iqe~T zxph=dH5VZ{d)9&>59H0AWe3*`LBNgYE#`l>@xQg)i?Z;)wJ#Hn+3dq1q%J=hf?y-9 zXo^iN`-hMvK894Ri7&t;+(F`-LzIn*>?CTb*g;xv_j`nGD%&`8KHEAJeBMl2&&oZs zBmD1Ps!uKJzL$r}y6^R&Q+TZ4?V(H)%TCls-{u+K zLc)(C!vSRYWEjNFvDA#H5BK)r=!+>JWKWs;2|xdpVOToB^gEwVWM**tPu?JA9rI_5 zP=f0;L*R382<YxeprwMRD9A58_z;4+?*f$I8ujvWx$i6^o$!p*c`-a{_U>GKc zKk5<91YFAnsFL&1fKu=rfD`F&A|K{w*Y)$*!-@0R+Qd9ooVb)dnTT48dAA@3@Rbq1 z;cRc>4E9bUE%bapEQZx4^v5omnb?`f4(MC3PIgg0mTgNM$6iUC#oj{=#XCHinw8Kh z)CN3a{>>9=SK{$wW%(&-J}XZGy^qnLv}^~Tz4~E6Y{^K3_pra$F|;-$HL|!{lKNv8 zokP&JCk=c6u}T`Ej;T#zVn3G%rak=pe9~CA0#ogFvjfrp<*7)K21~> z=RXFe#V3hlrQ9Vg;m^-;$Fw=e{BrV=MN=2pCFE){I+7RO#{X{Se~<9B%nFXKkfWQ; z-XBiG;qY)+aqe*+5x(*F!{@UzNG)GaEGsqvKQ~C&S!^_T4Lm0GASv~Xm({(Kejb>EIXPy zj(wZDm@n^RP32T7Ef^dN#z5*dfR)@fkR3{nV@F5D({x-c2mB0VUqQlwlH^=9ZYlPo zE@Gu=@}^w&&omq+SlqAw@Vuqz*?CKE&l!uIsB_uFX$=#w_&_UOYGi(RzP{y>MbgoOK{_Jg75$T6XZc3!78vkSXMcA@Dv@+0(t_yd3B@XdRHB-oi`MIq zW5I+9&jr4^=;*9yolb{KuR9_|Pq1hz+8$|B(Y8Wc>~+MaLUja%YNhCMb*q$u3V~+43h5zi+Vz_N3mqUNfLusd8-PQMOC4$^*qu_rz=qvt1O;Jyp8}{ zxnxiQUv#uCdV+5>8l*QMwL~iSIHJ}WRD@ecf3ke>u2!|cH+n+3y2Mi^LRI0>kO)<| zM+InzoxgsgWl;UD6G#aSC>;Clt{(YtO*l*sSYr_T;&@bjRu0- zC|Q9#dNg=~egYDU(Sd^4VpX(`Dn$M00U5u7djTkp=C6?1q9zPF{RGaRXni!WDjD@z z_%GTwt5!?hv0wtO=m}XRt&U)PEI=n^(SwEmS0QB;hb}OHpGQ;}6Gyxj)be)HsL9f0 z6-%fSJRq(_qe3(lPehyiZ-H;t1aM0bFVcOP{7-}7-bFGn%TO5(6>zP92MCzy<@YH9 zHYCgN-Aew~WjIg36? zSHM#R{EmQM7VtL$J}qF2fO}}<@>K%9L%_cY_%Q)r7w`uHZhMzZ&s72Y3%I*h#up;s z3<2u|{G@=R1^j`42MYM2fRh9q<}KqJBVZf>yAZ1pE&H{~+M61^kPEd*Vk&iT~FHJWjwKcgy_A7qGX0cL>;5z=s7K zB;a}h_YiPQTN!_E0Z$U}NCB4$c!q%Y2sm57HUS$1JfNM7?@0j{3iu@fKPljH0eeF5 zsC}Obc#(k53iynGHTTHv?blw;A0pr<1l(W1?+AF9fWte;`R@|&SOI4Vc!q%I3-})b zULxRk1-x9qRspXTa8ExO|2hG$5by>8Zx(Q=fIk&*xqvSV_%#8m{bhV_2slQ-l>*Kd z@DTwQ3;4Kz_X+qr0ski8(*pLzu|MK>oq+EUaLBzfe;*NWgn%mrtQYWg0jCJKdw`5@ zoPh5U@FW4}3iuuYR|=c$0va3HT!c8w9NGB$qD~@F2i#(Fd$T z#y3a6^6zRhwn4xP#QV1eEdO38V`r7}`{nX&JIna81>8@-^6z3YHdDY>@%|qImVYOb zv3CSqctFO7?FyVe`F9WT+(m}v-|1y6TEG?W$@wvRVC^s^{%X7ohYPqwz{3FJ4Q1p1 zvhdd#epH6Bec#Kly?wvCz$)ZKlKp*v3*6TQ zPI7_ob%B?=z#ClPau@i07r07>VYTIdTC~iWzHTmXe-}8-13S_2qihz9UD7x-QmIM)SU;R4fi*}1+KW!TQ2eJ=1PF0jR={1q1%T(0gTuzyIb@Q*mf;0_e%7qNi&&ykod4FEcj7%I1 zUb=|nU%Zh|sP}WuEGNY_PU<%>GtN;GTaa+%8@slb%*4TKEO;-ONn4re)Sc6*Y)5_> zZGUI93l`8mo^uGo3ke8Q+9V+rgdlwye6uX*eK1l}^n!Y+y`(XVPU- zVg@u$>mTi$HbXvc-y-_vEnPw%b;0LFTHYo)dNzB0i_kBcIcqLhg;;qewpH?&c_xbI zO(*`(&`r<7CmR;wu<7)fI@h4P>yjD1VUd`AJ47LW-n6{AIn#CERc212}&gn_x`~X|v00a&zOx(K9VY zDfa5PwpB*N_lk|44(9!dHa8vvGW%qd|0QG!r50vue*8AVD29`(1U8{W#2#hWoDecP1bM^ex|V4~MZd-e+#HN;yh1H+Kf=e_ z8d^u80eNR;E=Zj@J7xat<#~;brd=H>5~Nc;o#ccuJ>40YnlGeER9y;uM!ngz zzG+$({tP)c9UF}(ao*PA;7xk^pn3QV6h5AqNnez@v9BEG*j041to>pdeqy4f&aFf7 zHu7kjXR@PEi=Ajkkw%-l>>poToH%>}KELS17W%Yh!>=&5xI!V;jatQJw^3&`w*Kik zPIQ13c5XDGLxqWM;lxQf<=e9PQZq)ZQ45q40!~yn-PC?f9m94Euk@UO@>w1_;FLH> z9KmTcR_$ku$ybHTiemCXw8m2zN7uX3_Gf25B0q0e|LNF$*SIplF3cPhP0-R_k#~K! zaJ6}K`@x|IHu3T|8GB@^88V!P*yV|npYJzWa^TD^~%mciW`Hel3#)2c) z;P`t3x5jRI?Ugp=*Kkzi8_jN9ebctbQF;1oB71%lC7tRPv-2CY-GT7t=oCv~Zt8Bytdv>`-{#SOwT#Gu@dc)Dw6h?CD zn#Xs;?pOHdOdofE|2jTCIpX-5q^r?@O2_xITd<^q6{UuYX*Ve4SmXIKrQ{{3KU1RN z>einrIb5t}HC4v(naSaa8HxN$ldiqdAgBdKq)tklnBJnCEk@Y_DujI8uzp9LW@~n2 zX+fP0-BeWFEZRmnTY%l}FW(5UbEX#HB;KjfZ;Uqxqe>F8ckh zRlP3FJ|9%@LH_i&hYxycso%$5_sn}^{p802uC2FZyguM)LHW$ZzfD{J^A8iBi&^vg z>64iO8oz+Qm46+QKj5X`Go(>x9~n3)=BJ2`UdiuT*B-1~`R~gKwoBDhz3061VZT0o z{Qvpn-htN555;~q_IuMWk8S#4_4~&whOHfR-E-3;J3OP$dM4{j&wW4C93K@EY<((W`R2O*iId7&JuuAc z=Xai-+3D8NZ>$RJv*TE1?~R^o$F=Q}_?+$f@$Ekx`FYTo@CT#T&h`4@m(-n$-}}hx zkGQWsS@%c9sHtB|Wh34{=J_|z@z;}c2FDbF3bH z-9C(yI^1?5Wo}jEl%Bf6mybU7$??1VU)=Ls&ZwkG5x3ue(6jE3$~K$(f8FauyEZRO zd|}%kKOIWF{f@F-U$=fdE_>0f!|$KowZ7zET`xo>Zf{@v*nQj1ZSDK`+V{U$QJC=5 zi;ss~{&xTLypFx{pXoicSNY*%J;wIx^jWv#VE(1eXsk1j*Lmju2lv2`|W+tZ&$VLP{hJ^@3m^PE4*{gLFuy?^SICM8#$tPz{%`m z`cA!GjO|$3vQb)%(bufK68G+wzvgd zokNYsvg>xV8sSvgfR^=9MyKYjmB>&~s> zmZp@iUv&OdnI+3~z#9Ey&*4MIoVqx+TUgf*a{g2NH!J_I*OG3Z^!>-(>t@{cX#D*L zdj0*L2afdlBH_@c%5N_v?kRXA{Ppswo$u<}D>d8ytt01?zMqtu^UXg~Ixp#W*7HD2 z_wRl08ekn(e&EBXcWjd%3ftZ9=`WT)Gy3)Kvb{fB9y)GR_U`9jNI80Pm~`;{Ws@&2 zINkPmdUdTa;EL&y^TVwE3l6LtdCzkN<=u9b)Q*33cvhEh{=V~}Z6&)~eKN-TBh?)v zz4S4gCTvZK{mQug%UATDm!|Fgtmo=6-pl0EnK&OO{SsY)^8PO?A+c4$N<>sqn{$iuPnRbtLP@<`$GIm0>Le6@2s4eb7#z(;filVPZ{4Y z0tvw_q7T2oydwCtUIhoit~dlK{AR~Ded+@IhWSia`YZxpxhO<%i}3N^9b1CmH)<#!#nCc- z(E=aAH^#Sg{sTGlXJqE!r?^qZ6<>wGw^zs;!8gV?GdpwEqN(#{$^^LLTQ*Rp&!Cmx z6Ri9|38nZjmMy=L|B_xVL=o{*F3ID^rOVn`(Z_m`+XW_^bWuOiSjx6z2%=cVW3r{rDR zn>9hkr^p$>F8CCY;V1>ZoO$>uNa|Wwe1!s^^78=%D@|8ua=th02d6g%nJ%UmX)Z9) zNS7inN;?%JB-16z(oK}ti19|SOFNx1Q$Nm_x@4*&$rYdG5t+VdG2RHiF}`Vw9oAME zCl37jzl-*Yex)}`+vr)mrAPjc#>u>SdGj4GjS~f8Outnw5#&f}K%Xl<>W36unVDl! z$BiB_JXMwk#wtY43V}$#(J#p`y>-S#DZY=MaMmingWFJ3ZpUf(e}(-uu#l;3wGsW{@u;=UvEmd?i@%*mVY#3x6h zjGFwfxCVHC1SGM(OBXNdJ2z(=D%SOe<;5?j*)cS(AKlq}{f^&;6Bvk(&V0BDA2XBl=1*U`Xwl61)AQ{# z00rv=K1ATo`(@^`nbVgpnL2Im%uFtAj=|J0-`u>ZGiEMol!x&3z(sPGa$aI3=%7de zlbq4N&H`SbQ?ZKCJjwm%f0zRk8S~dLeS9RYFiD$h3EUo1q0T%$2I&{azhk<#LNZ-T zX2vQtGaFR;_={?d`Go|w;o6Es)5Y-zN-1ysLFwql@t(-r%5<$jGCqNPRo$2o!{_tO z$a@jb7PX&Qd47tQABplKOekw498J-1BfP7f@G8#*P2g>=4NH06o3|m`sUGDyr-^#B zOrIZtE2=Z=klBVUgt%s8wr2~c;;unj7@k+*S;q_$d3z}h`A#uMnm5wY+OXR*wQS)u zq=SDvZ-S(;_X{M&|JsUoP1n@SSjt!}JC|h3Vr=)d75jN#;JKDf7-n3Bd$^&k(EwU0 zpJr8{kzLzfspKPCHH_sGEp(kyvHl6Q>V;|#mQiTgJ~4u6d?Hy%2O1Nppkpnr)KzOj z!uGFR7}B-t7q>w)cZA`mksIdrb z9D_FIYFig&p^aLU0T2DdJXrpIxD^q;tUcg(qBBg#_O3#E=vj+ren&pKQyZMyskDvW zC0tZ5EJfdQd>RM72&?*b;O6BGpoi&O8zsmWl|f$;9lYMD)Q`ZiQ_V6WTC?`m2|+Q` zhilM(Y1D`P)`Vyt(xiu7Q!k95e#E%cfiGbgbNgwm`s$Zeq2J(ZK`$6OAW+nv>OlHl z(RcCMdxK&l+Oym3?>zMJO5bUKPZPfVF6CWH3uwp$y}XamSN1+KHql2OPJMKd`beYn zQ9SRXhnnaklmT!2!+hB?&Qs8%@Cs>;KEgA#Q;U3br#^x=!g)%tB>2mD54lo!|5xGUZ~RG*GOd1j zg_AC&_qz5e%ORU~U5vhMs8cUB)T!w6V&6M^g6Rlr{dw(s;c~jdv`^I{A*2Jbe zeSG0{=t`=qGn+`V8?nks=0rWDBdMM+3GX5MnvR7bBx{;g+e1i4K+ZD?p|_|!@i{D- zEyJDbtVrk^Oh5CZpa;F7=d$bT`$qy7=|sveA-@*+NjAb-v-qjk>-$%!rO_JX<#L2H zx=j&}nNhh9d8f8rezM z4u{=w(P^-$#c7FBW4rS|qSO5C{I+JkWx9N)1piD0pH6MMc90n_s6EVA)M~R;tukLy zOXkb)2Q6xUv!pRhJdM5^G8B3WX+dgzeBc&Fux)SdE28^{@&GUL&VF0sz zg>koeHH&|8lEm}oA}{6!{=Dy>)7$z3wx~OrV+4+|UD<|HqE1yS!^AVFb1={2XTAq_ zf7C(rTw9S0x|2YEqRE>19`}iwYmd^7JE7+bIuOks<}so^q8U^E1~i`l&6}KP9)`T_ zKr_*)!LuPiZ)+vWhc`iQTf8H_MB{!Vdb8lqS-|5SLzzFx$>lrWMw{S=uRwnkkT32J z{;SLvk>?WUiN@X!-wa_JE+DNEK6qFsX2ZCvjReoNS5+pG^=#0;bfRR!5{{kMU!x51 z?gZ}CU+2RWUi+C9UZ2D}Kh9%6@Hh$dB!b5WIe(pPL<)Ghy^EvXHP_{O3sJA3m1H8n zg4*^L@Dab>5OscOuhZXN=K;KP@X29oDq87nl+IXKBi=kQDcNLbMSUrm<#zd*PoaOD zX)dj=5B#DlvoQ~SS;gvyhwNYd$PoB9w#tD>BVDiS!(~B*I>1l=x7EX6sV|U@+WeT! zdQxS&^ciGgg{SFqPiDK8EE&J(s<%;FDh4wfbh52-7_$|6vfU?>nC-+sy>0*M_lH!h zes74yiutwIGFvd}TZQ&rQU^eeDu$M{U4{1*Lo2)uLr;V-+ZCi={JYv3FG+AoDKVE7DLmXxAjh7z1?7MDj`PKCKSKIPo)EeDtuueMA7YGgn)cLxtn3i_g!*bX`b2xL zJ~9%0g1JkPMGak+B+qY$qF(Bk+xR`uJc8(GvR{JGFCFE6QB%J(O`|;S*imPGe=(BA zncnuxZE{_mMO(iZM|cwDHbO^GpBh>vn|{4sAE?Y14Q=(dA5f0Q>UVU<`+r}r-z4iz zdH(2}_n63gROJ0edge=2j$)fksa<%5mY$ot4Ny{!ba z6{_?$)l9ujk7wS_gY4)9jBnC$m)qfvHjo~pe3~5SFG=QkICy>vWA8WAQQN7pYN|MYAj1`?yM?phgRsy#PV>be06@FravHLaQ#~5lwh>Kjcgb12Oi!I(koLdhB6PsP?=9%jKh$RZ00I2Id3lV7E->M z6+O(Ma}scpexZ5^S2im-AECFLzl`z&nc=)s3$OQxCdar!KRKFEi^|yZLDxIyYu{YH9u4z(Ipw1^rC3Bi;5ilTb8c^n zp<#Pdz(3v}Q4MjPAKbVKyPs8%3UCO7FIE@W`1?RsqCQ>Q{4Kd7C z3fc7A;fe7)0%LYK#xCqYW|FCHcA|-F0Qnj9(6tSHK8+dWj%Xf9vW0oFmuZebc-W2+ zw$DKaVuHrp9=OA{U=FjJ##xriFf~Oz{b^n->mjNazRQuwGRVGBZ6o@Wd>j|+Vw@kuHtay2a9u~^$G}Hr*hV$#mT}ZW zrzk!X7Mq5WZMGB`hEzenSh_Lel8#hg5@L|7$@cTMuaVmxj``cGz`uBPC*vuUB|Xy> za-xQwdlYqNL6;Qby$1AVtC;O!q&3L{J^9(JIK0-!xC?n|z=H49UM4AdX+55!gBbU&qq8qZ2@ebRB#(ievvAkNUgl*HavZo)@=b?Uk6!8Nl@XBkrZAnbEYG=JAI0 zY2hDj(Xyzuy{;u6%RTzgdY_zJYi{?CwiKz@z_aQo^R5uR?c*-2!#q!I(LW`9e3_>{ z{-o48w+uc>iIiSPF%F7jV7_gPl)Ts83Or@N(s=w9)n-bV2p@ZGpl6g#t`dBI13 z{a&fk)Ewx-G6I0(9uLGjP^J`Ph-fPToySprn;(2dbwEwYwfc;d6^pG}lsl=?)=UdU zJR|49Wf3ASUvj-ZBNFk&sE%?xemdf*k*yHR>5Mq3hGkUkWbs#~OD3wj3iATXPG&rn z%#0TgGUI8Cw=>`k;uaf%(UxrJ$Bt6)t`CA(2JzIQ4mIxtJteI%A8V(#z1u3KW=w0A z5#NUG`4ak|CAjlF8{&SnqXYLk;5L9(1$XaOEF;*9?Rlq#xFORG=b>0r# zA8T30K5w??#TMe;qHc(LmahZ%eMGkt?%v*@+lTEb25#bEnAEXG+P`rN>D@En;W8cD z@CW!Ae6AjH8)`0Xn`q4eKO?Ut9*dMThZCgWni}v`3!S2wr`^gho>r}9#t5I_BGtKv zj;T>!DfyS^n-71h&$t)krKx)E6ZL%kYxDJt2CdE2Qyu51=dl`$yJqScF6w#e><#Mi zYQCP&oaz}>Ri6>vOg&Meo+&@ypdPFPHP@a!PW5>Go8qXtFBCbYv3+etD&#x`@;(Z3 zKN9jk!gMunIQ$G*H&OooJ%|WI8Pw?@1G)&mA zfQCVUowfX`YC)t0Qtt>gqEz*HVsYV58t4p7RJ!sbfg{8ud--z;=hA ztwFddcQ9itWLCQ>Gmd%c%fi>4p3l~una_e&jbjm0+jdF?J!)&N9|XPb!3O>Y{#Al!VHkJHxIE*NSazylc-d*tt+}oBR=-s&o~>FvL|Roa zgz~OL-mZA}yE?>7?ePzn;!kzM95$?CsI*E|MtuPuz5Hl#`s$W0oLEc*uLseW;+Wzyiyfh zqiRch4Jqmfz6Rbt!qh2zr0HE%yIhMZwa%bQt23x4)iLSrx-8p|Nop z*8^xT`82OVpOt)7-#@!G`W=4DtzXw?>_?300`iPP9@*Ev1Nt}vdO02Xc_Q@m?a==d zp#MF&Z~C9;{y$r`KACJqJJ8?@TH1rA4xr5swgUD-?TPu3Y$FCh*Pd<1_L+s9*yCa+ zqCMCKE5>9f@`Xl1w-sRj1#CpsAo4GR%x%$jALy80U?+YBY&{{F{_tV8I>amez-w3g zklKZ9umN9*-97}sJ_K_6puxO!7y4Vq6>QFheqAYr)|5bhYv2d1lr%NdURCw1GV_OY95TOk& z(n9|yK=1E|-q;0sdL8+$XxVPEeWW)_{|owitzCbQTdv1=Bww8L_co!w>s0|bU8{y8H}E7fgtnL4$ugmji_e4SoBrH<=(@QQT&Nt8Pc9bXFFPQF@Y zSMAoObk-Gh8|e5p=0^w0I{sJCSBgG92_5v?Y&~evgBFZ`=&jZM^0=xTsM#6{y%qGO z%H&_IHc@_>Up)&wPjoh=v%ni!$K&1ux|+t3(!XKwUG_syVMix)e4zQ`ZixQ~9e)LS zirV7b@2ycjpuP3=N>$+D3o6a79o=0uF^8$cB$iaRll(bZi9l&d!S>h5)fa2-0CCH|Dc_oRZ;MBZbQ5d1}L-wO< zq-;Nek(RTsP_^ z5Q|at@M8GfG-qm{ho{4S!2c=){~}@EB0U}ZGP5w&&-T^t%akIy-8c&yLVJQF_-bLe zXI-w(Al*$mWEt+H!&`Ngb%+Ie!>+?K8|v`w&?~1Adn%Ruib50}K5wKc(?y482_3$j zVo*X~BvCn69bVw%cRuD(rs#=|7%Ms#J@H#+Lmhq^u`ESbAciLE@Ly#ePV-3>-V>cQ z1;X#_1ziE(ll)H76+dBKQb_(f?$nnGj};x>8+;)hemC|wC_0>CWyHTKAN@YsUlsXF zJukZn2iZd0)j{cxIj$-SlIQ0j7LHoR;4dyVeKJ}8&=5=Fi2e#o2%u`6;lD+B#yfjyl?N!MC z=k}_pc}@L656oTKz;?EU4Q&To>I<9N9&?ut*azgn<6LCJg2Wsq9yVvMn7{0Ev0oJu z+i-uF_4Np0zakMk9{@NKHYp6=B-5py`hCB^o)PZf&~Jo)9p*yY5ogOnyt@!>*^ar83chpU?QIa>-9N+^ z^PqA}VIrxW6xWA;9D;e!T}bd4%R ztMwV};jhu$KLs`}1vc*8w%Egu`8esh3dF*2zS7^W_Y!2ir$zcj_dWq@aRvNr;1`A>K3EDGoN;DGoMT#KF$m=TWyWFM$j+ zX9xd)eztbg@4JfiUD~4-iaw$}Uu4fdfDR$qJcTt)%18P|$?Jo60d1|Xf04+HviI(a4kl^pFy9z0Uum<&Ph+6tIv1@dNLCI5Cy*1_GPwncd~tF zdwQ72Mo!}~4?jN7={R$QDd={Z=d{l)L2O2+POD?;37G5LRcC>1BpaC}Y~-`h6BL)J z?Ak`2XuD9LE|9x=7dkhIUb$h2}Ukero&bL5Ci63^z@KFI+je4WHk1{I|*! zbX1PXkZpVxzHTMi#ynvgo#I&Bj|M$kq3cG%_MC9Cjimb}TYW|u+D^7{17hqH!y;Wr zazgQu`WR=O(+N6fBINmY$n^xs_jt(pIQYn8u^#R5U-yyeEX~zC33Wg=GqI2AP7l=W zII~0k@I~m70O*oIS#r$$DXh1~zo@s_Aj5ZiuyeT>F9k@Ojx}8de=Zyst;Ga{$a=Sv zF443FdVjlDO3iBcN`rl{KL@-ooUPd!06)YZbIH&z)h5FCW-E5C2IH6FeHQSAwP6E? zbh~+ZfA}#}z6#}Akxu1|mq>uL>f(R}Ylv}nB8xes7-Xnl!rfi{lo z4dBwd;5q;qXbP7?7ul2|>gR4)55zb)jk(Ynq>+EGgI=SU59N6fd1&oW!Wc?mSf|2x zlGl`j&4`a~xQKU@ZyDjj`sMw&JLCHiviS_~UE=us&57uTIXthQc_zQpo=5qNz~wuK zqtBDk_emIE*zbY$Zdx~YwmB5Pw`|%TatbmnudfB0OM+#3|Bf+Cc0+>hrG8i5Zx-*@ z<9$=*i*HiCP`uyROnHNNZ)~RiW#awjX38%R?>FE*t@&Tg!#<+fYVg7Xg{@UL)iKXJRI4hvOcK_v@91QGeU7p&Lvu#><7v=sqjMgNqxF|lz?FtMW13bU zPj)#I_QnEx)DgJr5Tk5L1_y|?hCl{WA%mHa!2`e>DP%AOGFXSX4$TKh4g*LI(Z1Ip zN3(+A|A9to$K#?M{*v{zH=Np1>EUS02G~-0J<7i(74~(`iY0uF>7)v4Ot7oemcy6- zc5HM`u2Xvg8nmZ`>?`nd`R@l`0PQjavVnu40~GpIn13`!zyH@V{e`e+kHVj?hn~;H zo$Q(cI(#Gi`yBB6tT#KFi#g(D+V=pt-j4TY5lgD_wZ6U`^V~yto(uoyameAj=!1c!*FR*9ogI+@Dn-+`pZE-`W|(Jm`nT`>Yizcr#b73 zI>@b}3$>yTO3{WFprgWIe~RcXVNC*U*w999LjrVMD$;Yo=N!=K?SnRfrrf8f&W@s8 zK{W_wWR!Z#?OKcHxu-JYwxbQW@HX_ta*U;w7)#T@7o{E9G?rk~I*GBQ^abgwF~DJ&-dOjYYUj{>Ly@Nn>-385 z^MO6Sh%z)5UPQi&ct^P62^acp5bh0iUx+yqI?`G9_2PN`%su#>bf05Sj5TvO58yrR`)O{^kFpPMAoQ)J zVD*ryFnR9`&N3J;UasFndu0PL?>K?ISj(Viv2UrE_ALd&k03vGOV>ox9YVi73!Ayo zo7qy*gSmfU!Txz#m$azqUN9tRCwy4ww-V&jsOfxjK<-qW`;rQ<{#k(dEB52l_^OD; zn8P}a?wZ%2Lg);#a~Dxov2_Ez>Al{Dy^D4`NAGEWJ@suL@&0?fSLmhjTL8R-zp4EY z%3g?@?UA|wyK@PCnZma?&bL)Vsz5Kv8SOWE0equep#=FB_LrSR@&t&nGD-r+sTGx6@Ec>i4k-UXQZ-+*_{dr4f+h-)MC zCfYYq6r(roiXCRE-i7_h7-NZQ#5T#-lB60f+NJ`mX(JWU{(d=KRkH@VQKMBAY1Uw@ zKv!0&3q!ESHU3l)Go5)tGVwiLYG&MBz>d>mD2BYg=i)D%wQzySDvYVo13$ohOMJ@TcR;cLjS?$ z6(Fs&E&9;juj(2t(n+s)Yt=<5SnEuEL?1r|eVouvZUf?z6KVY;!Apkk0!(e9wL|%Q z^j*shu*Xj#hCx2!l`}Yxf-#TyMLguhNPc@V;u#Ec{RZ!ljx%e(aJ73@06cqrTp_n{<*ksZ;L*|n4O{y zjG_IJ@#>%$qC4IzC`Jd`^HnTg8K2H`0A;KazPkjz$+%O$=i@pLS#-6D^#|2Qua0K6 zKXScIw&^~mD|ffX{ILyUQEd^6Qsb;fN35s#n>%4l`;_ZVZT2Rbbl7tpfp$-xp*P)$ z`kSeT=Tvbc)y9z?BHLrS@evMU`etpx^^c(nU*(rf<668!e8eLz% zDGNSTSWmPSzEnaOI~R^SeDqq)_*z!1)ao?G^SnrvP4&%-46%t%83pAjG3HO;k z*n@_;uEOtE=>7(Mi#Td6Gw{9m<>4jmj9QeXHhqnERq#)&v~Q$4_>Fi5=krFf2OhB@ z&gZ9-ZNbE6!Q; zg1w3(9>VwRiaGaYZ#k9_k*?WFey6$MZfiAcviI{U6YaIZUI09+O<%NPwl5&38zEy9 zhbaZVOR$NA`*}R;pg&JxjMKTea>PUvJ=wrQ$X5{LD+01}&__P|n8kV2)u=+hVvqmC zRVYh3B;i43qHkIpYLKt5J>LT&U)&64O3*M{LKcfBKlM|j)3|sUcj}u5ai@N~wqhLQ zXe{Ju4CHFG>5tqr)78;fgFC3^b95SWRF3Y{hWRMRXl({#DI9G%4cgA2Ef=9f?t@LD zHdiZsoF)1g--;+kxj{-g_RzzZDGx91U|fszBBU3BUk&H?*fWiND70VsX}ni_TGCHs zx6go<&Eox2cu)Gm0KSjugL9?m%QW1ZI#0sKQ^WHl#dMxz80diP7*Ajxi#4R1o+sgB zSjXE@Oy@}^qrB^Rk|`R;`G!oVb8wTd)o)VHAt>i1o^eX6xmF+80r{som8pOZSISU3 zJBW7rQah7zMllny?mJcJOFA2hGhrC>7r-Nm8_-@!cM zS(GKfcWuRR(31?hk`VJi+$UKw{%|YSHeJpW+s|Hj8z$~WdFAW{wbKSzo@WJ^=Mz0> zM@3g=tAKA#XEW#=V<6HidWiEGy3m`R&sfrRxG4+eC5$8GdHkT+v*4FSXwgR^#s?onK1Vr$nP{xRuMoTl=Q>8K)0-IThtFl3 z1fDl_UY=|_jo~X|3`73-xFEeztqzX@zt%HJyXynAnZ{Eg&YEIhY7Nf)XG{hkao&Fr z!9{>cSAB}{N_tdMvknB8!q*|aP5LWG^l6TYb)at_B_e)7V-UVh2O8tbxhm%~{>0}j z(%BW=jlcAUo(Ehv`%R4d#&UTHZK;D?(%KodiRQ;7msr={K<#sFQxE7`*EVfIo4#q# zrjBM$w1MVYiM&l6&8ax+u$#9jSon1TX6yyz<5g+fRJ4uil-m}Fwl$R5y4mlSD*edY z$0CipMf+&(*wnciS?{ROKDoc>yziCAJWQwiB5n>H`zp%Ieye2kguaE2=Qv3p5&uu2 zKS-`!=dCnnEulWc)zrL3t{2}4Lw!}yWly1=5^-*do=LxL!JWn<^&_22zXjtUoX?{i z@fu~`K<#TTjzIlEdTIcZjFATV{*ht57H6)!J(zKd6uGv4{m5hH#BH)VzBR!%% z`IrXhuuA7-TQ%Lk-U2xvnDuOuDJUmDj@o>WXea4$<@sKuX;|Reld6!KwHW_lQV5p= znsd-|FZgS;PE~`LXb#SWMMwcfk=Vy|5__4U`!k{tj|h{zYo_BFG{w{0CuI5 zBj?+JefLq}6b}qGQ{Do=M_`wUFW%wDw^UvS-OypBDov3V?Mm}xNAZ10f33?qZ@j~q zv!kh!b}h9%8}dza!$&brvq{JH(C-7>KD!6o=Q=*eM_DJ-ZDLcm++5Om->b7j)PtXBBV*H#@N0@KNc@Hn51N_KF z{L@cTugxZYQ9ox>KOftYg7v9N(3{=WYpXU=Z%U9nYV=ZK9r>^wq3_=UpHe_Gts$O5 ze|Bn(^CYlw3Fue&vl&&e^Q2?1VBCg7C)7drTvoS-?(u*QQk(x!dqN&snKwcni58;o z-&hYngK_jD`jmWvb6hSFo2~O2xSe7&7|*4sH%!aUb;BID1ag;%Gm8(m07r!tIDFW- z3XFLLM=JVAvue#2x|7dIXAcvkPCOP(cghQWTtjjag}HkTe3Q93bF97Q%(1Qo59Z;@ zl-kssx>TQ$DY0`8w;x?+0Wa|JG2=R1G~Vhd27M7}?U9BHKOa{)*6BaP6^6C=65u9$CGE#8H{hApiO7#2dmoNF z#o(Hn|2DS<#%(pm#2SpDwHQO#&%Hi3{LmI1>$TP!V>u1uAqwqH>t3;Ct(py_@A|EU zypGAqio-sH+^HC=R4Y#Ol%C1A%-Z^uv>rnP3_y9_oQ;3-`$X0WC zKgKyv!bk0*dvi98bT4f35th~22;0y7_NCnRbTkL|l40uS2yeFAAY_DOl4RsHz?y4_ z0bLt;?4!1tqV1}VH7b@`hjpe5Iwwc=;5Oi(ISAn>gdQjbf0Xj3uJE70tI@y}CQ0Yg zb`*Ux1^R<<1_CF=Z6nkb-)P!bd=u%#j>b#DYc;_^W>ZwMDH8iCd{BoT=VOVNsW}mG zG#_I*y{z%5bISGlJzARYU>==-wVNo|;>zVYRx9Gx8a3O4FU#UQXJE}7_#KtYmyy4> zCr&G;!GGgvl@ik0$Z1g`EdptT_b0%F7vB=&ce~NZ{rHLK z$4@|8OZu^1jrdnyE36}V!Kc(B5wWHK3j zEc;g-q09Z@U(uXhZ61L7$&Vqqs_H18nXAV5ifA+3dZ8!7JmkK(D9C9ld>fp{SiiR0 zM_UlXKDTz~+HcZnObWTJ@?o}bA;;a&cNOG+O-GCcxRrG^<#{mDDj~aTyH(;N(NSx) zkk8x|Io5T6i=E9jhp826e}%hzKa+e~sE3EB3>JSYu5L~iaJYoz33&dH6keuRFH zhs=J2zK+X}uvVfSu-nE;=!grL_hhSNxzEAcc&y|Hxeqb-0gb7Uy$`TglIHqkQx3tF zRl%NU@^h?pB-8p6?tI7G<)+-mi2JyHc`1zddXHBfZ zcU8x+VuCa3;1BX`lIMv`A^qCFcEAv9z)D6udNsj*+_$oq(W9wATy(|_Bs-4 zuX0R_>Q^ovSI*NSk2muApp0u=nZ9)-)Yz@lCAqd z56M;)**(ZsHDr#<)r$?~itPLx$QQ}goE>Ywxl70u$wnn)s(L5Zet`3R;G;89KJd@F zgV!WyZ=Q@d?JEeeRvl!8qPH8~N1zWh z@QttgyqQTZAX_AFSB1O{A$h}l@?p&+7ySK$T;7I|yoq;* zV1t!+ByU4V-o(4Ju*1qbk~gaNC-|mHy=P%>m3nF4KFJ%^uXVDuod3a{imD-Rm(XWg ztQXyOuig|7dy@{?tLlsMq~x!284Nb}1rI4kN$IF_V3m_^!u=80c7^{JUeudNR=T49 zs87eD>;=eA_zh$yTgVQbv203i&fY+72sg=2wU8b7CkbVRBnj`Tn%a9xw zzI^8x$i-;L2jaqcso1;Klnl|{CQszS+4M{=$dCr|hi`1GfPKPzjN%<6LlnP`@5DL` z#>9si{>t@x3R9L9J^~AqZacUeP?4WzS-dHFMo+L1d|U{igT+5 z?0+b9(gCjlR_tPP^BXmI3mws5enWm&3j7{3bS~M5xnh2kyJOuqu=9L=LvtpI6^(}e z%7xt?1G~Ex?{b5+=9i$mb8Rb+t;@+>_Bftj%IUT25au(z-~)`rI9Q4CK=YYH%X6*O zY9F&V{F)q$8yY7xpE-ni4*GIW4sYvB80O>H9C=Q-#% zyYJgh-Y0K`9n<_H*{a3f6UFbvcO=%Q3BNZDelMSkIr+Wcp??uq_0PG9-&!R6)-}R! zjlg^c0fYEZj8|uSis1O}h(_~OKls6@1AFy)IQfrJux%Rnbr)d63ekVD;5XT~m5BSK z!I#$H8$*@o!&u?3Qux|FV=bm6N~I{CPiovv{fbN&XL7srXcxX;F6IIQNk*oV?hG{3a~5nb!LcH}KknqGq&dwCicsGeF)s*5 zOb4;VoBFs^ra2#%_8GeRxSPcI%SHX9%jvtJf69Ms!Mv=AaaqnVE`Pw8e&;zEt!vV_ zd=KBWQ^utRe&Ypj>@?$3?QAg8hU5Aa(V zoAiwJZ9X>FiS);D|DPV4@y(3QQYSm&I`2|^$s5hPZst3hyEZ@PQhY}~?>dFJl#B1E z%)7RMKYw=KMLJzs`!0ZehYj0c;B&YAe7(u}U5d-Q#|cfDGtvc;`F_}J?8~g_xc|v58__<*OCXzFaP|mm zCfF;c^)P(CqlacI?Q`gcc9PH40e6jo9j*RZ{Yv%6>&|N)O5LixHvEZ*Ybiw<*xT2- zN+vb%F9ohWFTg)U9DXXUC7_RRR<_b?eOKjIgLr&hA^f#U?*RTiFct8wgda}6nvzzB zZ_!X3IT`Qdwa3Qx@vrdXmKN~i4uv1OF2+~Ek5cTZmoO(MURXdE@!~Vwi5J=>G~Z|E zB3>@sqPdpz#EtmSAAE?=1QaPepfP#?xDNmqwV!xL@SCFT9ye$^{NPV~HqeQ;N3PcP`&CFt7GO*(oS zd1;@JLG9S@^`$40uh<@TJ_IRBDPfrMbPD0tQz|W2@bQ8TR@y?l#%K!&~kF@t%-s2TurZKgM z@_`3KahLZ#$#bwPcc)2IHtojs4GPr{*bnZ`&!Hfq4SsXK~kCjXMy(A(@AtN_)RPZwvg{ z(2*L3n6TLIlq za^r2S-vr&;Xb;3Jod2M`63V`gvykPBXJ`*lusOc2e$&M;!Wm$$yHdX?0_*u&?16ya znj4OCgpc0uwRsI9S@|0CQ-b3FS7Gi+>(Yf-myQGvBEwHKSR*ckKO2xUh_4CdpzZv( z4DttA3o$k|nD2amwN+Y=dK>*u^u*a@S|(ri8btfxNN0bKHq)3d^uhV(^Oy@k9#ip5 z>m${Ouf{{CLT-+1K;P4vJmep84ZDOmSV=9N2gY6aM&x@}p$v@$N~iCxV1DvB^&9Q| zcpbEqb_gvB%E6v`@SfJ~vaqj-V#^lLS4@3`Z;+BdMQi_b4k}{BGXDLLOtrQ~1^M&C z*`rg)`+wN`7wD>stN$OLa}wYL5CcgdT$IB_4T=iNEiIPAMGc6GfOjnk7fB=nLQqg2 zJzQ#oT1zSxs>>@+Ij&mHK=W)wH5&tTb~-xwn3~y1xysp@AaO~e3DNN31FY^ zv)2E=7AI@6=QH=&GqY#Uo|!#rBfs6QBc9UJnX7>xdG{m+n^@hx1NBczwxfF9O_;Z6 z$4cn?bDW>Nkvw&GXPWf(A*=Q7_j%{;b#|<%oi~S65@$2G()zjS8NjSWejto=6^n03 zHny)F9U9MdXY6_v-cxeVNLt37*^7A-CorBv`1x(Ry^n{>up0y2D91|1fcj9O zrEl4Z@$}n}&VMo9>{)B#oIp5*DP_zrhxVOPaa+Z0@G3FxL7a=($t6~OCAO4&CPMU(XFGgFpN3w%!u*yqUU?(L(d_eWSzc#?$578KQ}UBUpM#RaISn` z0q4T){_e=h0($AUr-8cwPM5>~FOgf){RiYU_WnaAx@t;~H}lGoL1^CX$sRjAxt$jx zP9OG0zJCn9-`XO{DCF2{}jKyyn^e0F6 zPS8`Mx2&ds?|g7SjytBDHyAcWcS7lJ(tB2+en;4Tte-w&4nO(0!r!z#EB`l>Lvw!p z^G3X_2=Z1FDWh;KoDBkBnrl3qAv0^Jd!sJs8mF>eJAG6*_ysnIS8S z)0`6`ZLJITvxeG-9726$9`{)`rkJ6t*;lFAVakS5mYuyh7o_tQ%meL^(G-P{Z6Kpr z4(%UO6dk60O1!l2;A$ z(>~5yZ$Hpxi0UQ(KKN_AmgsI-LUD9QtL1Zd2j)DBe7N~HAB2NR;6S{%#X;q9WmU9; z>Ma~p_V(=AoKxFCeRZd#J9`&{|9Wf1(9hrj8T0joQMtTxcU=-~DK}$fXkMSjJ)yR< zijWIM5|LT`YBeWDqTTP$y4+NBNuxc%PY>`TTBSMhMEZ#4#N4G;H|m}TnPU#F@4@c? z9GLTayY}aSU_i1BA=xY`TB; z_x|1opD*^)Mu{(N!Ws8w(mr^-7qaW$D0$oq-HS7y-eKcqC6>56?;+nfcN3Pm^lq`R zsm^py-U@GM;%6OP2QQBt@=#q$$zv926xww8CheIGX*P~!?k^7-8LAx`ArA8GPTCWW zuqVv^L`UTj3BD^A~i|!$?#H)%_q+bMIMu$i&LN(H%g}>_Q~kdX$@?P zT%_p4w)YQaE=t30xa%jLQ93$G+h$t%h|bJz0Eh1*JL!e|q8>PlIjjJCb7!(2O09in z2WwSNUQM}J58oEfw0jnXZ8I9ue2_FtNlSEHc^6#5J;St!^%q@CPJ4AP^a%yZltPxbi-8HmEFPVCQFdve_7@LowBbr$)@;JFI=EBV%W)Kl{TXS{c{ z#=aB2{vXt>i#s2$x#?l*{A2nvbH<=5WM=i!rAt}7G|(lpaTO#;_iQ>RejD-R(V{Ef zJmIZPZ>4W5jpX`k{3Ms%)@>=W8e|_|&O(3rwARRKn!d+CnJe@rLk;z)IfgeG7_XU_ zMVybliFrqAUi;9Omz#Fj}Ij`9dp8eXiws($$mzlyFwY_j#&c28A3~A4!8h%uI zUE0$pZqr(ewVv`DK2T>A$PXF!nS*0>_i*R)4B8O>aftAx_$ud1jD^zgw)gI%bI(xs(R=(Ur9xp;2gbu>rBm_pmFv@_^SPbm zQ=Tq0tvT6`ssqQr(pV|d*$MiM;tJ>7?X!D+52C{m+M1~{+|*e=SuE-@B{XE#NN^B&(9^ejZMfT= zQ=m&)kDrY0Y}w=VlOBtw)ZW6H<|DNQ`n`JNmJL6cjoY=ZZ}db5zVt|qOUu4<9QS|4 zXNTx>@3Yo1z>iZ>D$+P_x05@aX7S(94-mI^+}B5$H%>Bjb;##T$TaE*=%csfJbgH) zN(OS0S0CM7?5DP3?fr4e=nCZGmS4@8MBTWH3BRAKHn)9adrCzib*keWK-K5v(QyYr>lYo9j;sRY`&NRzJ9 zJ|=hPNhWu1A5&IEpB2sAJKB?HyvJJ!;+2OA&$yWne=xD~m`CP?;s-XrrFRsFI~5*c z6f%Tqz-cA1y6M1W3*p^KZ#!}Rhj5A;Z?$Y5U>VRO@XBU|`A1;~B~`V`K)sTchs!kg&*FzvwI$(Y-~pXikOW+hPlOX=y`bR65{ z-QpbhH0Zzv`EP{J(>uc-5Qn!cbJsGjh>wfxOX=wIaO9O6A)Vm++(G_NZvsas(-hJf zO*%c(O)mW2pd7tJ&YQE!$Gt`V8Smzzd+W2z}t8(ogW^Qj(f{4+W5Ac>X%cEj8^gexA0v2+YXBF z-hhjSD{OxLTX!z}{G{-C)q(fqlJd->%r;N|jXRgd)TA^Dsc#;2T^?(!`&e+Hclc}> zdb2(R=NT1xd#mwnT>o9R=I-bga*rn3*ct^MCnk|x`^Y51K7tytz2haoX4c@GZDep&O zbsdSfpT46sPO!M^oH!2H+?!QhdV2TT4y7kd{Lw1-ja3o&qf~SoVAt6I?M;1)@$Hvc za&Dc~kZyO*TG;ohG-v6(D(Qlgo-px&U+@lq^fdQO$=Vg?Eb!;(mXKa9t6QRv=%fFh zR90dba)ln`Q_39IJ=Ehd>GJmLb}V(OWXwxGFPU#KWAiG`k^B=Hr0_l2s}F6w-|>{0 ziGHoUwa|et>z^z=k@>3O&7>Z?PH}vAbW<+V!yf_|ueE=|#xDwUaZvK^}g+ zh3B9SkZ+=U>2UiuQ_<-q9fjH8AY$d`;axk?!TT9!HeT*j`%IUm$kn;a=gE#Uc8$eP zvf&8wOn+{Q!B?rBrtp3ZxSiaY_iLu0_rub$tkV0mKV1!z=%NMN;cfYd-`cEFnFnjWlO?S;ge^Pz@Gb6f~J)A$YZ%8}@W}AYvCtJaMd6J+9L9cR=XYpAEoIxwnKJd^x!^~9@D}YkP+z?Z zGL?NrmH$ophH!1zgZPLxgU{d9i!!ABSKgM}dYL`&QbpS_pUaCPk@F*UWe~jW_Ym>;u3f=JNIj`&-NhdJmaH8M%xxt7|AHjk;5}CVqXq zxnhFTH8dUkJb*sOYH+x=b@mxWU$NqTaFH(ou{-y2hh^tHT1#9SYz)RZE`<` zR(||X^wWOIzNz}yXzB_-&e_#fQSQIgcSi3IcVm0CQ zJ~w;#$lkLO3tF3}nh%qi_^S(ZF|w%}G#-ct?O9n(KJPFW)K(Zz1j~WAzL)J>Pa7?tc2J`x;kwF56{(e&q|?5zxEy zVeU~dmf`*KkSAzQw5AO@J>dU#vM()pOI!N(d5rh*^vfS$#Q#ZFCb#LNAKo z|1N+wJrM4&OR^%pk1=OaN$n@NefmAgcRJhq*6#!3^z#QgnLWE1!y3zbfbX|8d-eeb zhO^qHhqJED3U@sDbM8v7=va2&i(zy9ud*JvZv;H2)|PvqFFnH@cWs2GNU!Io+_zTx z+u0A2uBV@HR-&=bHulAHXa~`+q38=45^1_m4Swj4+H3L7!F_(^%T4x-zA4Q}LpPXk z2Vb>YZzr$i98|w!#ph)umUD-`4qfEPUMj?UT>*YSfOpVhAtui^3EU3UrZdKa!5`C%S-mK^RO*>Aqt@;&);uSl?E53uy zihAg^5kH=020f3isZ!Fb;jG2Buk*IVb!UV8wxjcHFHmwg*$pxuegDn5zYi?^z?3at zdgwQSPvJhl-UPmredl7{1Lm%K?p@3QFCzOgDdTT4+VkaHx!wWpFI_a;w`p(hlD~T2 zUEG)998?#{21S>In-KEBa>~4yah(NjCea^{Z=tRKsIt=5H7T7>*8XsgF?DC=n_R`; zf}dzlPug7l+0wSh(R<_E4@Z;UW-os}d2gqD$^F9rwz4JYcTjJVJu?WsuWWm^Ju~k7Q4BhK-k%xZ34; z5BX|Oa*9juQVS2>lWbbogZClF60gvva)@o(=M;-q7!u>DlnE zd>;Kp`l$T*pf_(E%71#g_9uJ3{R?z!R098i9*}CeqpQTaM?H6c9xCmdlunM9PVfF6 z4B|5nUTG}l(z&+f$d^jBhF@ZG*xE&kr`}rdAtqu*6`ju+1#F&&S+^pZ1EY5mW4Q1 zCAr*l#MOArx-3+2uRHIdvT6PGPvE_hpK&(r8P3_WfD9 z-dN|u$9@G}s5+5$XRTfN9e76iQq?Hx#o3Upz0v)Cj;VX+Td}&0-73$j?5sT>^F#*y zY0EfM*OfeP1wZ0nB~L5wu$a9E!nKW`^$s#by~DBh?v&b`X|aBh|BBsX&<(^~1})1- zlw15}CVpmNc495C@&fXw{E_QBm35A?exOZ!eMh>JSj}9fb7uSg%o(%yM^)58*IxK? z^pAAr$dwO`$gel2+SuST1)E$~lk`_wMMbU2P?muXF6@jW230pIG!pS2lPt8y*!agRK?_I-4({#iU3Z&gUq9L-8j9S>yi&Jq zlz4%R#J9;)V<^|cE{V}9L$ht->w2Y4n5)(2n=7B!@64M)TyGtxe#ZU}x_*>bcURA? z6P340~rjNHdl%Y25E`jl2>Oz2{#l7<1Lg4P*(s%{oH zFPk^_{n=PPU2A3W>U-ID)E?8t@a%=g8#kd)%AL^8y7x)H5}ISj$jIXx#)$Is#))vq z`$KmGG;}!Jz9QwF{w+#0AD&<4pOKy)K-F?E=A3Qo5D%!lbt4C|< zj_py~Tz}VjSha!9-L0lQ7eNnmA3nY;+9tMPE$OiaOQ?SE#Vh)C>|NHmFZvEr;u}s7 z-GEo!&-%}+XNJ=+r8&Q`@71*#W5-?je^BQ;kD$&d%eC{_xBa@iKBT&jpzc1+o*FWl zy;&EGsvJ>v1@23S#E{Ll+~#U;%}b@UNhFswddM4}y%?Wr_X3s8Z}(q)C(!OXdna9% z&9}SK3y<~Y?w0ynlf2JAIPX!xyf+?s-Ust_hrereq<4$*#TQifE?dKS!?mB>(r~xv zRdo3akL!W;Y+0b7-==!E#mtT zzBS&SwNPh#{@>iII?{V)w(hax%dV#GlC7r&?wKv8OsfAv;E~)jOU6M7I8d6pXC^$D zq%tEZ^cGBXNU;|L^eejrsz6tzFd@0{6_$p*+IHVBq2InI+@F_66>l`8X(4 zUm)!q(rV}neD|_-X8+&9=Ih?vT%>&;tz9`^(c-8$;myLY(2%5bxGb>4XIeNQ99 zw*4Xh__B97qgTa!8~>hNYs#d#ZeJHy|LMW8FxrlVx43Wk4tr#KDMtY?r+pT6<~`7G zp4FlD5b25Tenc9ox6Y_v!nk?+7u>HRd z)ILVzUarp{YfbIZ&g1QUcx$ihQ>J@F)?VJH>=@r3@59^Y&ON`6)y-$a#QKz_`tGI= z{8;n)V2=d%V~zm#KL+>J%+)sw?*SULmU;^BtAH)hpo8$9o`iSO6Atepjl<$S+NbP_ zX7H}K!utvfTgLkkWQ~I{mvk|i6ET-!&c_7Tdg70wsmx6}hs!z5hZzq!;!nb+;#SfZ z9~?zzem?u@$}`B9u|8>tH=20Gq^&jHk*0smVbV{YXQb!ZuI0!#2cxsYFCr&f3STWd z`)|8OYyX$Ik@6!)U~X=0>c(3HrB50B{Dj-(l&z?@spv)8>eK8UB<0a4pI98`oJ;)!6Km>!Id6oC%-Tu(v{)>+ zg7r9Oqc#N3LPs1vgae(WPU9>!dIB!e{$=%GlyeH{k0t${ zF_XJk=W82sBxxsMoO&3cAgmkns!uomk|U$cDAXwLn8no{w_ zKT}ylwSqrx4bP1(yb2GPaJa5MT9%-ER>+!*A*0;kxG< zK_;sG#I>D}rA+ho6n79-Yk3nI@wVuCWU@@abr8{Wd!6t;gYe=PE7w zx3?}oba>4JGHSC!uF=2SbiJ~MJo3R!DbTLbr@FqdsdM8Ry|Pn7zYu-$*XS!cyFSw5 z8hu>F7S^WMleWJ`e~__IiJTx;b)$|$1sm$vxE^V;R=)%~sI@w6_1cMJS*wqJLhaeG zR;TU0$y$8^d8*AWu&_(wGL@m(HaqgQdNR(pUZK85zoL#`qZdy3oo@5XNPNM!>b!NT zw@&o&X;|mv#HZ9oE{biaGNnVHLDFgeqqZYWSzajT4#^xeo|EZz4QWfSxoD*LHtCf2 z*XUcwOEkU8Tcdk-X)_zw=nE!>Dnzp_jd+Cey0X3rgr05w*zH}aulsBDckydntG7(E z^E^4H%`;ifDV{`f&SywVEA8fBd?;HNPl90upd;F|j9E}e&gUbv=vev)^t zabfOrVSF5E4f?Yz=3(eT{mX_kAC3Ee!d*SGuIfIVCFQKcYsA%_OU{2~+#mg~E%!_A zw1YmqGbQ7XC#P+>Z}QJG?$`d`Sloi~o+qBpu%r?10p?WhM@%-v_t!w=YtNBt4Eyzh zH$*SS31wFiw>cTE^^YG{){nif2c0b8Qo`nFjdzIq=DsXALi_Z?=vlgYQT~DOg3TnVppH>?Oknr?`=~5Eu!Y~KUBKmK)Sv?rI~bF zs>8m_BdbFV;r#OZ_MJ9v)AEZ?_S>pZZB;j>$$hz~+F?S6vXS`p;v91~%BpaYjVCp^ zFLzKnUo}m~wzJ6*?{4=2V#;e!tgf}6-u9;H1?#W=+uU8N9o)4l;I375PftfcD(&_u zb<};U{m93grV&ZlGSJuV{&!uX9c*l!Bpxkl_xx&C3!x#Xmqjyp$WpP~M@ zocVejX6(S_-6EVF*S*)A6CUX1y~PFJ#C_O}j45RG3u}xSEcy`%-eXITt&hN0=}ddt z)!Ap}z?=Cz61-C`XW|B{zrnLLISZY41Z9{)d28VDMtq!deI8}#N4xeL+@b6aW71DS zH|)5ycIZIv`F2mvONYW{FoNyOlXs_FG?sewgHNN~I0tSvjqBB+>`vm0C(f+2_IKtJ zCyh7}!gKC=;YRUrl!tG7wi>tfiz&CpWg2z|7Yd3_(5^O|zUf2OZup z4ZIaR^X9hjJL8aFwrihu=PYF1v#{TW{@U&Eo|GGzI_LJFQ-vp+iu|^o&Xe@4kq8B8jx_+~ZNXy6>vyoP>8b20MJ=d7N{&{FvCH z{yj}6oke>KFu+OeJLS@h!kS2J)<6%p~?0d)0|BEx| z?E44bQS43o+jkV(_P8^Hb3s|(Gr3*QHjDnne#+Bd)IZftZRyV4>?JM#d}oDAYY$^f z`|Hw;Dt!{V15-_!I~Wg>*w3$FpC)tBO|>fD{tV4!ofDq`^%lz)(9_P`7qMwDmwZZE z)ui(e7w$vgZ@`zP3EKrP*`6mKEEJcF{{ zh`d5+ZXzF@XIA??MPJe$T_I5X_lDbbu9{%ZF%>&i(?nT$u{t4W?v7ECu=;yO~NK-wXj8AZe@eTUrr}T$%&eQ%29Btw~gY@IQ zw+vFd#crxrALTq?KCl<@W&$;~y)o^TOLn<6XAX5wojX^FUer~4x2kt8^i_8iDc5AZ zFPg*mRO(*}9`p|SpQzs|>R*HD$(f-v&MMV(2yu4@jnQ85^ z?#yLOX`D$uqH?RO=y6?C*j9R6TfWDxaF=8D(O-Ogsa(%6cWUoMZ{f*Z<#+z(Y)CoLL!3 zFXkbw^KYSj^{&v~3nf=zzIZuQ7DpyjN*^p=`qSZSmmXiM^M%CQyrh$88fU&9Hg9g_ z%qw)MY$1{y9cO+?E5lHWGm)@1lq<18E83JA;4-N@W z;EeMK6F1b=cS&}uZN}}4FL(opc>OS%!#C1D!QqoVO~}%+ex;m;!iZMANPpW%yZ6(( zEEv|=d*XbrMMutgoG~1~eaf&?F{fdFAao3RgfF;hB>nR|=vaTf&%*t+A7I`m9nm!@pU^_Aqct8{7PU~XeR7>Vq7J~UG0jFLwtyux6NX!(N}&a|$Iwl+g} zcXm$!eM#w_MjbR(M6W5kJqHkFOle&f2c~hZ{Z4eNCoo0O>G7Bm+)vhehy6kB9GgAU zJC6Gz3f&zC4cEIh!i(x7ya*?Hw+6mrkD-3Af|p`&aUD3h0COSs7egIp#X}cbyrBDf z(fODkf|LKo)H}Q=y?Dp-8}Q<<`}SYj^eiQOTyRaX!n8U&c}=m-en+1_Xq1O)JZ|aOjQlz&?xtqqCg+zU*@ZDy zjvPtloo&)CVN5IUN*g~jvA&sfR8IAWNJMfdWQxpv$!Ys_Q8<;kkTieZOj;q<16B_P zVc>TUtp_9j(0VXNp$DTNpa-KT=O$IZCB80j+F92SJ%Y4m?E~CK}4S$(K)v4ky2@E!l(c>`=^k`&LdSuuA+#h}! znwwYs0Q_8}T|ZN$&l^gVz1xhgices$tzPStUG5r-rqCG`2p+ zTlX(YJ1hN6((c6jH4Qp!B9T}wvNmt+4-F39gH}1vopQ)>=+3iU`*Tk^k8-f~U)S&6 zjDy$yk-*x&R%`!sf9=1Bwg0+ti!%;h`x6Hml8M}4(MGNPb?4eRIuZ@6{jsZmrV&n1 z^QcEt`Zv%N?STwRH<<%4gE6OI)OPhty|YU?tCz<8wf4}$W1)39@MWiBKMnf;%9s99 z=Q5bAbaU;TVFTNmJEP&AZ+B>I21_SL4Bk!S?^M!zpEuw~if0X_jq7<_?BDW>ht9YD zC&(W;O`N&8m+atMbF2+}R_xzOqletN^VAFXwxlrycg?dWe>GvtN6@E}zq)M8M<4Z zuW9W458lCD>dRN-6Tf7f2j>)juF62pF4;LUA-8sJoExLeOTAW94iBw}5BKLK`sE`ZTw7g{Zge(8V@QC zX@p$bwlATV*Pow)G{L94rOZXP??2eREXsQfj zmqju?e-AB!-{JPOcB3;z>3jkV?rA0S5r^FWvwBy&{Xf6l!85x4{-3S0_WxX7Zvs{J zkJ(#-hO?&_*#Em1O3@;;{D1VBAjsU?@w{Y zm9r!spB!4wTd`%K3elY9Vb4wWctE~qzm>1tIb$HGG5f_#?%+@1?D(ar$U<8oXF%4# zxp&Jq{v%eg`fnrQTrDGXv$J^68A#Uaq}7Tl0B13pXftbr=K7s@}dxesoVW1mUb`P>5-419|7+di$+nSf!0k$g^ZyI_|Lbe>Bq&RGZ1 z*^YeINgm$ElfNq7$$@xjF5Yw(ue{x|&E>y)^xtOsAO9VyJg_;0du>wuZh`o9$9VZp zcJY0EI-lYGc~ZRggz@$G?6UDP66d&h{+i+Ma<^*+kACmJbPV_(jf{2_Z!LNHcJ5;i z7CjVAPg@(SXve*q{@71lAFDVWd(TjN^yQrYMJ#l|7x|$Jo5+rG*tbZ-Sbbs5>|5rz zwWmLyt6u8A!TpLTcR!R)B%O6;s(C_vWuxYE_`MG_pO**b^PoN*%J_}+>6Dw?2T3=` z+v&YM6ORv`C_+W&XQeybq&ye zi`Q@WAT1TYps^gKPTFJsfenB7`8FQNOLpb8xS71zAFF$sex^K--$+lbr3rQ|@}b*< z?D2m%fA(r&{_K^s4mpA{OrgAX9a7z}4q^U0{?PO1hX?IJGJhU_`1zCa&?jww`cL*C zZNH@-`SWLU_sKJ9oA@YX4z!)_T1ij+K-y4rJKowm6DU~`8@==)@7yct*uJm(ShZ8a z(DM}Nc`EcAnm#&Imc_dhk|z!&?P`~{?tdxmZt5qbz3&R>c_+?uKo5?`P4jAJn@7_< z1>K9X^9N^}_M*c@caL=MNP8;D3$KyV)OARGtB zsVygCH4I&z+QC3Gk-34xJe^evX}>YUp5IHRvGJ2*b-!!RSz_+Ae10YJt0s8NvS*g` zey;XlRJM^B-kriOXf_eCbX0Zix-Zp$D<=T5aEG&rIB7bvL88pT4%5aJ|?I?#Fr2nwLY+HDs@xZLIF; zosrx-8X2hi=Cn|m-#6#mwCVG$<7btCSDlk&5Bd7-db@K8cGlF3v0FYV+P~~n-U3jc z;I8~ibVjl7WLB8tUb4E;v>yBtx58t?!?H7JBdzr+O>UPSrtWm&d3f!XxR{v6T@RX4iX_Du+8nuW zX(->~VEMdqjkRfK+PYV#bWfbgx5{UZX<9z%Ky6Y!-DkDs>zbJF`s@IkRz~79Abeov ziRj1|Uu|&~&>iw2Z!he}eQoRb=7{+My>`f(Lb+xA7MnNwg+~55hkIS>cURkVyCk~V zbh8uLK<$?g1m;8Mwv&$f?*B(_I{h{aO$48mGedFzq-?V8*}#*ca~x&ce%E+zpgR!0d1kTY~~ZT2K!FV z)B164AWn1X76#HSJ50J)HjkBY8V-fo_#>ZWna*|8btZTJ;wR2~maV2no=hwORcj0v48DsPWH zVV0#479Mu3^B*|0Ont|m|Ac0RG2(gs^QDhaMti2)$prm7yj9FS6@A=&M)dl=?Y@V= zFJ<;Jb@xyP7K2Y3(V1w9e=eA_Z3FEb@8{#)CpKkwkPkA96}`-evdZ4v$3^#jAKI-i z@OD>*m$ zfiZb3`KB{BcZA33#JV`OOuBrf(`i3+yJ|J}s=XXiZTzr~#Es&eyRFYL@$n+)^c zbv2s*LS?TKPxPCyvAenXuS;P5>&*N&hj<6<_~@2+i?}vD=D*8v_vXJY38kqu_#Z56 zod1^beGBuS^q{G3>!qLcB<3={^|r{5tc=I2Gv`)pyL@qq=l^fc0u-WSN_4sA(NIM- zXU?vK_T8#Hn8)`yK4J&-I-fVcgn!}dL!BYu{F!KKxh+rU#Lq0uOcVh(wAMYUjKoi{ zp8+i{`)9+PvPt(nG%msK#0&8k&l8waRvbL1WG8qBfVWXPC%$L%=#p3pRN2-5Rrc}L zJu~rJ!f8&)lRI3t~ z$*FAjo@NfxQL%(Q313G=8tL^L+2yc0Dp&{GbA!6i(w#X(eJW1cA2E0MX99ydDLMth z@Mb}m!`3N2yn%Q5AN0XB)QL7wow~U?rKwJ59J)^MQJebpI`tdXY3CkSC(>@IPSt@h zs*{~>UjAlx_4iV@%C>G!+tZ`r4vqSTcaKK*CjR$#^@T&xXU&oR+$B1F*mj7X)zA(% z2it)$pmtb~oBGzHzFf8NJ*Rt|B~0B zFCl#Ac4U6{2sd6EY>HeoplKVRBSHALID`I0j|69xjW|0kh%@Mga5l@~>gM0~oZ%@d)ixow&eb`@spS6Z&DQxhovh zgL4p#Df?!1>fo1`v|FlEt3a3|suMh0$lWD*C0Hluxat&gb=r;Jy`zqxPQ4DV+b7sg z@3Eh2=_YBnRHrS0Fh^9U^2R#-Fjyz%B-QD4+%#UFQ=QH^f;x>H_>KDBYQMas-BO)? z7zlF&b=qxW+(&ZlbVaaE%&)4`Dp#l5Ri|-BP$#Wf52J%A*iH-l@{)E-bt(>oQJr*# zuMIbR=i|luq#MPqMD+jEL58jpt;N{l!0ToY=|fj!N@% zMSEa`Y_EqLuu+jGbB818y@;Lhi<(9Vt(`@atz9-UgYaY?vr>q}#D zxBNI(w`gh@-m+_h%;{fkkPA*7m7CMc41J&jx;&%s!}BIqbXm;1hcidz)`ugrM&h<{ zN4V@Q(zu8EYmW5!>i;4BN_bGoL`uh+C*$tz+11FW#8bBWD?C`98S@S09>O@!F2m zvRJ6{tf92gcHTmHFy$x1*Qa!=-8VXvTfOvq!*@R1y5ft`^hbEzPi*|m1bSdsma}Hi zo2ffezyWV(%KroB&wR8pm%8cgH|eod87iz_cH&VByCt>(RqpLmMpbNkV{*l-lp{(x zs(Jf26S=DTg5!rbb6{lUUhaa(P4dOxap&;ekItnZq0W z>ZE$qat}I>_e>kh-IcXhH!BAfU#7J7ep$cD$A8sXjrd>UEYGV(~pP zR<{s*4}+&a!1}<)_h%Vq!~C%6q&m;Db?uUv>+1Y7U^3o^2k`!kU*-VbKkGv~P|hFP zG%^!E05;YkT=qd9&R^TH(=D;og;@*~{<+U#-<4BY##+BFiE}ONmRJZpz*^I zI8(m$XR$iPm+24kC5ay~y4}%;a|;LN~eGj?HX*+Y=p@O9r#=hA#3hoQ404 zI}*2{kCS&cCJR5(@BZrVO)LQX9Gy$N$Ep4`*yhnCai)d5gAAgJ1}6&FG?E`WBN&;9W6jz>-9m{w25M@FIseg4X$ ztI~9GhQq~E-}>uElPeA&zmDr}KI21U`LCo^!}#;YL|4kuBk=-z|DIcS#szY3eV;cn zcP-~&YaVXYuU~xpRa4 zX0ND*cJarkSN_JgkJnJIZ_OEF=Lpr|cyz>TY!_`e>0f5zVZNUtAJM(VcJAtynB~$b0{&(5 zwd=Nx0%c97z^)CO)dM&)Hb$%#cUli65j#p{@ohp^jdKJ8Ms>o{i>n=f7Yi}MJ;8$ zIK?a)f$Uf9if(R;AGPBS%H`wfa@^NIpSTaWCnP*UhtL}izOxhDty)=4yBr4`O1piI zo7#2D4#{mey8zDKntC=k^VXJ8aFzyM)E_2?Rn4+ z(et72GM};^qHz!(f-LvfjPnS6|7mCgZ>wz?1$}uI-Qkl*RlN0EQ};D}aqAs~nd0ks z%yx7mD{+!7Kkt`V*d=i~u<|9JZZztzQypwyJp!7M_CbSu$m#>}8KtH(5^@C~~H#_k+ zK|6*$n&I__?8IBvKQplfsCkR`(f1T^ccYpC%@#5Pvw8}t{mUf zu}3*$d!**DGWCs&hkKjq-T1A|H#3m{THbL&w1IaF$|Ig>!FRlDF_e)7%^|~6U_Bh-;T0}q9Ji3gw?ZrNq zzqhBjEzP6jU0rShzLVC%Jem?eD|sIM4&m)QD*dM|&7-c(r`bHZBnm9dPRs%xb{=J4 zNcTkd{dpAg=*WsX+S|%3=rfu_w=y29o{f3BMHrW_f-mvm(kqg7u{TDyFg|mx_Qz+M z)BBQ@7-7qikvPkh>s*zm+3_j5s=4IQWzksJi(Y=wxf7ID!+hRy`ThQ>{+GO;vLzhQ z%leO|eGggW%KXjT`v$V9^JK|KZv9euTH~I^ij$l4M}H3~!|#tNp*Pv@t2y;H- z{=ykI>f-ms5VF**;VUY(z*jwI>zI+);OhDju(7V5{+G}FcA{_Fc6unKOuSju-&|Y4 zqg9@GMa65R_ec1&eE2lASymQ29(d>QW{bn{2gmD>50moFsfqf6{aqo zGJFRAzo0{;w#nS>Xw@)V#;n8;3%ev@zy|$7*Ei|`)!gmTg>z|-vuT$x@cN@GzGN=< z`k1E+s{8il=k0fSM@{t%&fAim4N!izPaQhlwX|o|RQN$~R&|Z3`wi{6qd4|_# ze$$ye7?=K9>IK3z&H=X%f9E^C?(0ZX-PaDc>={|U;e89U+54xiOK2<3Nkj%llGanK z!H*EfD*H;CW@h4dO4HHbU&8kU>1_SdL+Ap&nm#+WDXo3QrMV7h=lR{pBH@kHpM&!} zc<|&!qYp99FY)wg{gkwP+PabVyQF7o25wcfi=E$TQ@c*4P3=0FHucxZ{oMS1*W2`| z_D9yHlU*H_09P@;AFfUF2=`6ewAiMfk+{~v>_iFBwdsmOw`t3BW7Q>Yu3+45MQ50u z)6XAOAw6#@+mnplgXi^(#8_K~%*44Cc1c{MvV7M_zx?h=vyt9L;dP&bkA!{ zoUXK7zd96O66|k>oY$8$?Q8u=KYupwe*o>g&fI7FoaxXwukTK4(*OK<{W!n>wKT7X zFRa*d1G>zpi{JO`yuRf8iY<)q-`P55BwluP-3x52YxDDZ)lIIApb?e7IKSdGM<>)) znat%|p%dO*e*5s(pbMh8`FBTZ(=HC^c$VDqp-|ahUB2&Hn3ecI`FnIBsSjzr3*G&u z^ZBjNE$aFfWxT`X^_v%oAiDnj^>_*>!^7K}V0^D0Ey3o)fE^DL9Vt4^$uX?@su6eZW~o|6HZ~riUG! zfwxH3pDvlZ=8rtdvX47&!;eU_VIQ{Fzy{jt&8yO#?Y$ck)R~_4dECcF9#l_xE1-(pv2$h=2S>U=*XxttyUcjdHvEMvcU-Sb|*SVj3S z11H&|Pc1X(oo}05hV9)guF}vu-#3IT1OCg?JFj-q*`%gA=Y2jp4zFwTKh)fs)|A$L z!r5n!$7#BEpN#KOCg$FEX~g+|8fF@MQOWI>oR-c4_G%_ie?0p79ZS*g7)H0_Bh*8B z5dCpGcyE1|JWO+E=DFKZm#H)2eVXoPOtWctJh9Fp`RAkk^YT+$NY9?ZPg++@Agxl? z6@_8x*-1LTPX7p=;m!abgD8`~HtFrobD>jXE6*h9*$b;S;7!3{@=+?mIXy?Iez8JVrdZyP%ie-ca0WDKtYs)|_?F~!bRVdtyLHmxV&F}Ez0FzeV|7C?FNS&R4tc;0 z9oXYy9@IU8XO>K<-G=EpDYl_z+{oO*l*mxY^sDLT9*y_p(Hl}rhiV_mTkmOY-r35j zdn0dLOMIQnT^^1MO<|9yF^u+mo4<#a555;r?+q!4<@?VM3-1?F|=bV*z0ay}- zH^D!SUq1HdaH|1FUYWh}wv?~vz8_CIs6;1Q3i}XwNdM3&n3FO6Fgci$FehS8!1TrR z!Q8=GWjRJ?mA{X<9g~mylzsJGxZ}Sf9lpYFuix571?=z<4esy~4R+QQ4R-kH2KyBO z`*#EOsR8>n0XsZtLtOZ%2K$nL{f>bB?tuMA0sD^w_WJ_%p9Sm>1?;~L*q;vApAFc5 z8?e6=u>U?_e=T5tBVgYgu)iI!|0Q7mTfn{}VE;$J{!zgGNx=T^fPH_!{zbt4b-*5m zZusrnI$&=buy+X9I|b~W1NLqK`|$yL?|}Wpfc@lv{j`AnjDUSe!2Yd({W}5ssDS+( z&mPO^({IAW3(uW6^89a&nX_P0;hY5*6`en4`i$ae6!&pwkDi?5ek$rK{NL^o9Zajv z?bA&A4sFxTvE8{&?Ar)(-5_ILN1=%KOEDoV1-R9I{dK*uUkDX$HRf#GxXaum921|3 z)i;KV+-A(FxUCL^LnoE#h1>Zsl7f8+FPQIOJP<#R`1&=iqnS8k{(|BX&&!sGIn-QQ zG<$Z@?3oj16wIG9JIOD_efuC-;kU>;Gf+O&_f_2TQtBJ(8>1Xg;1)>=_aJU70^wE@ z?q1xgx%BS+QjF@m9Je1p7zIlRFSyRZO@a8^Tz&o64vv~rFmHOW(ki3s?Eh?la|()z zlMvvC^Xm_d3;yyJTvsrALUF;O8S^~na_6h?-7$VVn#%qWX`u;;73qdb(J+6p~6`b{jDJ$=q~4W%J{ z>+FS9d4l8SU*ymJZ9@pP)pp!sKW{99#{XNmaW||Xobr4Xw=N)8urJ{S^Bs%_;%ofB zfL|rJ_kJn1+`qyNy*Ebi9S5iXqA}kUUfmT%Z9RF>+!;2y${4JB+7M&nfwWb&uSk<~ zR2IJe-}UwS&P3oTm=5&u`#5>*!7Ubuuk`MIjWMkd~;>Kj*R^84|!J{*(&oPu;a6I7!%N^Vrh(DM3s!w?!zRIrpq(0S{ zPZiv84> z!ej^HtBk7m@Ibh}i;WpO`-XzzqUjc=!OpJm!S+^P*Dr|gt4VK@PpIf!igOWeYu7iH zB}N`+%PkO2by5AY7(9Y^5niy$!J0t)IPn9&3vZn5Q(UjMDx-ca;?wgUJJOBKa_`%Y z1&zz=$#;67Y^uWy+}6F&Sch9E!{xYf-=rb7!kv%XU4d|0y|TLgYC_o*G3qx8!ROpC zqY3_gPW;rQG=HKrf7_V1S;G8>+k5^*LCJ-`#khTdMQ}ag1@}6b{bFPM81Wb2w2Tc`^-T=-8k9^ivswKgH7zI<2Up@Al`@ zbDw@+=G^lgEOceYK+3C33arg zo+Fg!XTrDH7@b4~aIz@qRB`(eVZPSTf+ zU%d4 z5;D0i3ZH31O$l-Ez?58GpbCUP#Vr{-Cj72kaVGn47WNX=ZPB7>Cj6rH3GePpCgC0Y z54}LyCQY>=!Vh}Bo2~CF@_hhb&+mJl-_zEwT7FCMn>5q&o$2|O;(mF7#pK1F%k2su zx{RQ%$hO5V!kUHZ1|s=f?Tqa=^%;qvsSaxNi3R5)=MAVTMg}OoMtR z9duIB5c($p@c$|P4I?G|!^W@hmDmRaPv@W4-K@{4)~Ba@#_>g%b$T~oCIDveA`7N#|(6Gp!b4_H50748<&PX|V!*rNL%U*nbIVhGCR zn2*2sx_&HB-<(%Kxeh<_f0X=J%&4!w%9UGXmml|M>+A8mYEFH9A$}^C@5f!&`qOz- zpqd9Z;(>Uh35D+N`V;UYxbaysl}|q(cJw|`tLy!a6#Dh{A@z(8C%=DE&M_zx?oV0t zQ(1*Ku^X}rYH8u)^fH8d!qJMEE#p+U97LK5mrppg<)*Ld>)#=-k5PiKH{#W&HSUCo zJ&B*n5nokbKb&$%QKnxGg4mzRBpeQe5g3fQtk9Sffch@H*Xx7Dq%$Ag!j!{FJWhRE^(n@LTz-`ufN5>s#A=os`xB`1nPba?(**A0h6S#MOF4 zeMEWsCvObQxVAYHD^$Mq7ayYgBwwLPdn3DgY!YzB*>nDc`_u(r?7H;?N zjx66bzdy2Yd4D*vaC?t1TzQq3Uh%75eQMk|x@+6P_-+Yr8dvLy7yNm=sF^*dG)&VrH)uNgIG!R+btjb`8r=9HX$-Q1Ez_QSIk z&7Qk}sEsKW7R@i2Gp}fx4Pzw)6s@GFpx9fTS!TG|@Uz8*7fm;FB{-Wtx}dmtYQeNw z^Uc(P>E7~e>~vG)ElBNRY4(hTC7y@3G`La)Ob?#iL<;<~P*% z+6A*`7SAv@7QhUdl6eJlg-heHGyuoXn3?k^C>SD8L0|zyQO6WrH)HnvqB*l|!J9}) zkO3oJEkdN#&;S=+Gl^O^toto;E-fl4ykJg~wXEOf)}Kb8*mG{2G5x~Xlfky~@XPOE zV)mR1XV38PIB%eXXDAJ?#Bg30&MTT(G~0OGm;1nZ%#8UZMY9V^D89|o^AEaCEV%KK zg5m`;%)EjUGYvC+&P;RToZ@Rt@r*fh5vQ7xqM2Z&SV_z%o-wzu0PfEJO_jja%(F5{ z+syOk`(75#1R0Y`3g(pr+dmM(ivt3Rt|@9Rh~keX$C=G}l8*c@ykW+?#?BQ;9P4$A zh0%p`=FgbjdS7VpI(pEWx zdAl+3&-?#KjR_mtub?5XVpZXQX$X3nzOq_P7g|N*VOK40l15*Uw97jwP(zPs2XS zrJ=aF*sq1Zk)LqXMizco;dZKvqwkjN0|Q~s2-pWD*`uV_8KZLPSMJKGJjFx!zvBb( zx&`c60sFB5dqj3uezk*N=YLbT-SFK?_aE4IVHY0%hJ7dYkAYsEUfapui85_=aW>=s zI`&O2ocf%2Lj7LC?RgjO4eY;l_8r*8>nqIL*ta?RHtf6^>hhysVE@IZ-gj{PD4xnG zsNdfM_U+i;rhE%O3E+@)y^xJKynu8oUA#{S|E#m`z`owumCgode+|3B%U@}!JmT5> z--|AszMl!$e;Kep8nBlK>}vw{9|!C|#GY_vSAP)ir?weJ8J6KE`wIMTb#d;(zA)e( z57<{ayT;I3XJ3O|?W1&*5AUa1`_tGzboM;#wa&gCdwcqk!v7X~XJ-$C>yFqz-T`0q z0lYb86J{?a`@{PBoWH}9W9DMs!%X-`eSHn4{XgNmG3A)|F#S0wI{|YS=3`9GPS%c? z$1!726i|p+k9iN1y^Ay{!*t9o7>(V>F*)?{80IoeH71YsLO$jZ%=4J781z!tr?OV) zftidc#w^2R^Z1m;MTkGauQ0XLtt&8sTNL;OW;b~&)O+}OD+wI=O_^LWI$6p!aA0uz z&||N>(9MS*;&>d(J~hWb`H@@7?~H@Cry623SH58l(sC3R7tV+lO`ji~b4}Du=h1?B zGotXL(bGJKfl>Cpq9uhhX8SId5pg**m;NBjrFon}GOKWuKbYRoHnKF8kDe~foi_i* zB6xY$lh7;8tN!mb#z64<*`)78()VWib};-KN#B1-`hGjG@jd=UZEAKUXLZ8P$_O}fO$lDGGxNFz^huBP!$vHdqB>rn@AfI z=8nI~Y->_iBG5q(VhZ|9Lr*e2S2B&(0{b3g+Vt;WB5OLBv^B??@Ou>OL*R54(aX|J z+nRI}9?;RWYM*IB%Q8)PHH-Aef$g*S&NAUxXU1M<6JFTaq`cDEg!Tfrbzv_w+oW8T zZCXzrZd%39GOa7WV?y~OOv>~ad_l~#${A(ajX#GnpJPH>&oSW|>>mR&&ow5BxO5P3 z%(*6Y@43XuGojS6)MK1UeQ%s;_567zbM8^G5Mrqz=-n$(XMnPUgtV$vg=jp=)T7n^yhrFdftHqHcGY(CWKP_;Kv(fZKr8!1g~d zrpFIVr~JE3Mtp_I9EKK#sxp((_eUmF_#-;XJto}a9%IG>rvppwF`@UcM^~EE)O(HT zf3L|J_G8m|?T<~DM^>5ehpX6&UQL>-P3n`t%GD;j|4(SYpO~)E`%HM{ee|3AOt-%G zBWt9776bIh&H0{lUmgUb-zh_J+dp-DE zZ$fK;>wq=Dl^aY--m{ebS;7LJ2WE3fvBz^JrTz2N^?4I60e<{~38%hDd%sATDotp8 zCHVsN81XF|O}G*`;AInC`wC%SF|C&U9y#*wO(^vb>|g%Dgojm;UzIU)Uo)Y~*Gy{v zKhjRG^ZmN%we@w=d)S+d=QkM_Z<;;_fYUb{Za$g5sas6Acnjs+Vooqy&55tPZBmQ3 znUl6{qb=Vxse9iwIg|flQWyTsw2r-xZ1H{5Z^BL!UboYnylIy?CHArDKmK3l)V2Sj z@BEAT{9op@VS8xTJ?8YapP2#Kd(FTe`^*^&_d$C0n=|wGoA9#zX3&TG&EVqCP3W%A z&5+DmGjwGwW4+ddN;o;UhEunXaJqOma4&EnjKZ2PO!#$R|1Zt3HD4OD_Dd7aJ78L^ zgRy`Fq~u}dV#+b^VX|R6I76Kh$E?HDU2#{|qm%v#JQj7epTVy0ut zF;$pajNvz^l}RbYlw+W4DZ4Sz)+XgLOdPWoQ;k6{Ny;!xA!Y@p3R8=TM#vAd5L1q+ z!qj4N(ntfNJRo!S7rJR86+b?d-oB?9fJ-)JuN9=T1`K&&OkRil%i158{>;1hSviRu6F!kNajW0M=gd1)&NrTYk` z>YrZt>2lOBufu=|4dI)w$1sAa9s|1CBGvazRYZPcI_wTz%+#hDi2i# z)j;(XURO-@;*M#IJD{PTIQ%HQ%DoKp$TTl}w6VU2%*)5?T{FCR>y?;(V>(P|4zJDC zvtb+*d1*NIM1AkDheyA^ti9381Afi><#kxm*k2k5iXDZp zYxbvn)nB5E4l3V4bmbPp6}oV#jd>hYZzZgBAIA*8$xC;<9Q8}0SIyPO?-$Vrytvc7 znCe@xCVfj}#nDIgW92cykCW;mi54{wRi7|GR)qzEsGQ3%&p+(tCA@hD~KHv7&B%DVF?jqbH>%4F^ZtsouDsL>u!F@>eeT8^WKI_G6pdWc1CN!YEA)1Hp zy~^i#FZ`j#Zx3+su?rWV4N3jYtB&e9p72%d4eEE5=bSW;-P=m|=8lOO^II=mo}Hy} z%WE;9u6Mo;PDRj zbTH~*F9&-&*vCQjGo^EagC{z8l7l%8_H*!L2TyTO{Ymjpb?`I?Pj_&Dg99D(BpK=P zGu^kwz2XmckmH{Ad#Hn&L*<|A;I|z7wu8eRJj=oFI5@(=n1dr79Od9>2gf*gwu4vM z21_@E4*K6M!D1IK+ct2_c>SwE{zIx!!!pXeXZ_R7ZU^^T7`3_T--=P{p;29Cus^>) z=hzO@SRVhoB{;~1f5pO>QL6g+P_}?wTh#k1;X0?Sa<(h7WUF^Z}4o+}zx`PWHyv4z|gUcLT z?O?fsk)>XG!yTON;A#i=I%t_a@*lIz3xAh|6L9f^=oZHwPR{zu)`LbTG%k;SR z*uUKS_S>V>eZTG?_we~0zCGri+Y}GeTWF7Mk1D;G{&_!#SihaCPxtWf$}i=eZrZQ& zU|$D|9rVlF{#TxVv4gKz7$c_l^I;pq13&bi>|cA~2RJy$!l(-k)sTSQG}7a%+<3{d zA=2X)Iyk|>iyWNjpg-RHapsRZpKcr}J*j?H38tI5&j~h9Prk&b|MT)sH-j7;W?@v0 z_P0B!K9#OM$^Gw0>GULoi&~e1`(1K9ziB&6e@6+Yo4pn`-ww5eShvj! zx8A|$EsV<1{?@sA`2ERW|0S32NZa93n`(OeG6yer@CpZCu?zl~{j&d(=BM3me#*82 zke0)l0m6T}>2a8F=`LLKFyW#uT;Icl8{op_941`Mh3kKqa1&g(0fz~f@4^i_Ot`r& z+_1xhi`#H>!C@?1^(JR@I5#e%?@fGHVNd65xV{H$Vb2D89_C8hXzB61+dceemwIr* zau4R;;lau~1-)Oa4KHvW{T;=?Q4Ac#z)=hw#lTSv9L2y<3>?M4Q4Ac#z)=hw#lTSv z9L2y<3>?M4Q4Ac#z)=hw#lTSv9L2y<3>?M4Q4Ac#z)=hw#lTSv9L2y<3>?M4Q4Ac# zz)=hw#lTSv9L2y<3>?M4Q4Ac#z)=hw#lTSv9E5?zxabaxe~-lv5IF#~L-lW{ohH_Uq|IJDMDws;R$@#z4#NVrT1phcj^-r#$SKee-0xte$_1ST$6MDrs=fQ4pH0g|NHWM({x%YPu!Mg?vWvfP*Kb=nAIp)Q_J0FlfMh zlso?ioAFowT_waOYwZD(-B*^V`$FeU()R@W zo!{V}Y{|LTd-G;GupG~;Y=HE5)%U%AezpCM#x2mlxZDSz$MWm?sJ`8=#40*TH{Z42 z>2Z^E&nr2dc{ZI!{TwmkwZW(*G>#s3`W0d}-I#4toEvJYv7}$5oBpH6<9l9tr|6S= z&&hDvL)P7_xAlrP(7EJr{`W!^f^_?K_h79}KVO-AqhIll&|!^&gn2+zTi4&=zE=QI z$6J3N@c(P?Yv7_P_P=MBRZ-C>NlDEpF{#XUc@Zou78V5MO&86&-n%Zl3#=`>>+Yh` z?cR%}iAqUkMka}6W{HWWMORc(N-8xg>Y7FJ9PTz8T2 zpBcf=bwdyqDVqj)D9-M3bf5kCuNVABUC+a>5@&bj_N}K^-tu(UhZ)R6XqmshnXG^E zmZuW_XnEGdQ7ZX9+gx1nA5A0uMX;lHyivA}3h@0QQUBcK;eYlm&qk5}Uhw(fi)lDh z9`kUsV0Fy)`}N%_ZT!Y|h1{435c<4pZczX|&qkrFq55n_L$ zf4=Kjz9VR&*)R7sdh+rX>bJkqKm2c(;B9UMt#X&5cG&X#9X)diikk=-&V7AAT_l-+4Xa-;wGDA0pn%t4C)% z>23lK-=Q8H#F@6keN#}Ea94xx`bFTpHIL(ZfkW~AJ}R&L6F;vPIQY*TNBotaHTd3S zD=2EQqn+aH=F@%l=i{K@qwQ}zyyfrwjHuWzo$ZVE@@r@NXYu_Sb~mt{?w(J}$ICD6 zCuuvaLxq-04}&U^uXES>Uxu) zui#F@U4RSkLxQ6E5c%zWh+-Pt18~p6y#se1?uNdQ!!3h*3+@73R0vU6;VR)8;Cl80 zhFb;q4%}~Wx&4XaLAYADCb+NQF2D`Df+#YtAiZb9t%TbRd>n3IC{ZN9rNg=4=EGIN zHNh#agdDCM?i5_aRnQOjDBM?YAp?ja4{jOUakw_P!C^%4moU@7wOb$$LQ^Llhs&Ss@0}3iN191c&){mWnjph%}>tgn3NKy%T}y)In36= z6q|Ln$>B2RTTITobEy}nN~ufNJB#x4kWE!Z+a0FaW?P9f-DWY3$u||)942-0nB)?} zeJ0mbb(+q_V)G4^U^UHk(Ewxht{jKDz-4lD7)GVjnp|3!&7m(erNkO+_R<8K!(3># z>MiPIB;Tow)9EJb=jfA_DTwG^o<5&YV;m-@`F@ipT!KMw*Bi{P(%53#Y^2m*i`J~o z?^sio)uWzKGrq*-oElr`u+0IdW|7M{ogK8fbR|}c4Ge(pxw=`p`&~}em^|b;r^ID1 zL5>_IeeqmBInZin7v{}mY)8lFPz7D)!V*+5wZozJu;W%a zMq?__mslvNsIM7T)Fr#kqNjSMvO4XI?#fFC1>>&hamv)p)U4F(JYC*Bxv9FGG@Ujz zPd7CqCsUo5s@0{dwdv~Q%v9av)Jan^CNrPfQfFMY2`wh4)IQD5%Qh}%V(L8}6`G8c zyo{V|_2hg0fTmQ3!{*4cGiKr#$aSWw#_9@9uGHdulhJ50W^0+ebect5SSk|W_8F%$ z*o-Evd3K?%hIpOPR;)KO-hJQfp&*3? zb>B-sT*dijs|k&xgr~!OYpkw-wqUeMt(hiK=bU3MKnCot()K0nbE94BKq*^HE*n~7 zyMWYAcyAOqOeUf$X0_FQ)=@J6U@A7)OWBzk0HU+y&ot<4b{FzuDIi>>j)i2j`ABl| zXPOKykBC-Bjmhb9*r1SQLZ_#)46E67x7k&c0)yqgk#B<8QX32=r_&>Hn2m)du5+@< zV$wU29Ihrm@Rkl4?&ziq1?RqFG_i!ISoBV3hSllPTMZtS;+}67gfLeR6R)>)7!G}g zZ?aL@G^JL3vDuJUYWJvzl)~iFEIlnBW46B7lwqZ97iQ0$zAimwShGwny;1MdYh5rg z?ZSXdD|ll)j$3R7$M9#k&o@It>@pktQZF9LIx6sy(Vux=bI*=W2*>L17MJH(F#f8|d zXpua2r^{$D=j$ALE83)6=+Zmy<8{(UB1+Fk1}!c_ky})Pj@FJUYcl#&<~e4IC9eoQ z7j3fIN!+4nCq~6Zao35Rdm(L|*i_re3>MbSAmbm@JQfVwY zKU=BO-PG?#x8T07ib1aCP}9MJ#!}m%jiwz3_tE*tLs-1a={;E5ox(=8w{IdYamQ;B zedPgm&-Zp$CRg}WMW>)WXP`Ht<0O#-Utw;7+G3%;oa$tq){=*29O?APoPM73EcCX& zl=jF>g)#=pG|EZ$&n|SA+&w(j1PqXPVco-ZXzxitK`_x=ZJ{y-_mdHj*>Ilvc0N3} z(ItaaUP+Cp=%`a_XQ|b|+X$;(c_l=blRP0smzA2QPRUejwYo^1F3**MRO__V$h#XQ zx4I^3@^uEip$LsH(wS_#d#Yay?UW1EU8&`xT})lsbL#uVtyFnLs+GF26m280$p83x^E&GG70$Cp^|v)blZOV!alrtw*1 zS~i)XoupP{7+#nnO9#^d8;pz?K@f|T#1(at2hWV6WIvLJF~9O5k#!cQRlTt?(d zLy^tqG-aVXD=k&4mFY@k=N|pUv^?^jOl2s7L53;DxHHa7kMI&p{lb$v#Xy@MISSP+ zRCU`99^Y2^Eb_V>c~{Ev$SzzoM&Ep8^p(ne7ib+$D zmAn&VBL{;@$j3nn(#&`}n}}33Cn8lE@@tThoDU*BROGZQ0XDISc1Urssu@P|vpkD@ z8k9|b2r3}+6hxkE(>silO-_s=bBHCqq*!mwwdhMtjuf&)f#OI-66QZ6gYr|ExU72- zb60ZkIZ9O_`CMVono5pBO+t|w6DNlm^+>A$%W+KaRIPcuPOJB@KAsJgK2i92nN3b8 zP*vAp3avnUFxJ1$m>0V$QcdTX?mJ+w00%3BUi@K)TS%7`66y!M-lyl zz2XZTwqhh*6$9mIxaJ90M!RfTN~JYA&z9>Ar;Vj)F7HL;227w_=!{WrTv;gy`cF@@ zlT~btEsgOuE4xh|?S<-5jdTPl$u3lfFMGvc7?O=q2`^($1;tRbGFU;5K1owv{{&6B zJ9T4`IG(Wf1?eeaZzbofHUwY78*;H5QPs1G)FLX<3%zMY+SnVF%H*Q?a7LT0(Y6B8 z9PF-G?bXgEuk==sMg)dMSkeQjg$X&)8 zSZg7*%!262%05<7L!}i64{lZjCy-se)ns9xEV8aoHmSqCwWnx^#_zD00|T(H4-5dL z^UqLep3KE>oX^q%fxBWL0BAoFwZG>aEU+Blc>HIgbUu=q91 zj_ko9B;_|GrJ`>Ed8RLtK*zRb!{ibyNK7TK_L+>Lu@$?U>-xS5vbBaLr;#1&*|7mf zqEH%5R@h`TE?8<|fdA81WwkM`Gff4sj6(cSNHi5YOssQodgO~j;$1cyM!2Opo@V2@ zxikc(VknG6*|j*VzZQu&zna^Khx*Z?E$5TA?;2Y;2C`m z3zE({gl+wJ$FRL0>7^o1gt*6No<8hcNN0mCav{WLltv!ymqniMmrXYH(~>t3=aDtE zK+e8Qk2TM->#g)y`8-eZw*EB9+xuUhS=-b`R!nOpjT6v41U7O?$$L(5csJ~rZyptPZTA4!wPwiApxRQyHl7-`0|U5WJB%9#chl@06^8An0akJj(nCwRVLN?g z0(o+PnzRncA{Pf_lSN@LdbKo)dUo8(j*U2yAXUEJm}0^N3Da3Nq%%)Y=CJ@nnoO9cd6ji8mh67{4j`CxL*dLIYEoBij#xd z&t1uRXgsb&*h)6=)sv0kRpM!?mO(ob*(YO^RspY2TQ;%~q>-9zj0r7dO>})nRin z%2@P&OT*$bth4EOhYfbvEG&n7H86oe--!r0hJ2MjMVm?eTF%tU!IY_*!N}v&RNg4$ zTbR6lFv`bwS(dCDj6sQ+E*7y`jY>FPnKPU0go*~HVm&)nvSSm}Daa~Z6GayJeQ+U} zH-tvGaEOyUG6V%yMI&unNskR8>W$3DE4W)%P36s^MZY=3O5TO^;3KqPDw*cvbmY`q zMcx@4Pz*m0=B)@uiq(Hic4m{uhm5fm&}JQvNtnr)T*`*g>^_~knUEFlP!3tcuvS~h zhU+g3NuYI!hJ~DZoK0RIl11Jhl1)AxBC7e9Lpoo=VEy^Ok^Yutl#`}6X#vb6PhUHW zthpAsWYSeax*5{fAgyE4eNEi&UP$*}ixCi;&>1r^*)U;ZRf;)6$~}4mrg1y2Wg~Wz z&pr1vgnIZ8!K3N?p?zSt2V~tnNx+pDQPKP(;0xErkw|I&^88(Z2F$|UG zahj*2Li#pvIv6&l^_1ZK#fVvCQv~WI zlP(we*#+sF5$Ns_2^}h?6k)P$O~JxTK9(Pyolr?L>7|inV_Sp@Dnxr_nl7aSGkLEL zJeQ)$eisQm{um|v>>geWt=G>Y$F9fXK@IIK3-idS>zM(B=q&SCAy`{k($p4J0U^&$Yyyb~ZVGy@L+HK`t{zI{R$$ z{0&YzVJt1>YY%TjOWAUo(DQ=HMZ*#QaMX5B{KHxN5bfJW`<=?oG}1z{g~{t7uVU${ ze4M509SF_}T?e7-Q|f`0RjtV3Nl1Tyv~5oi7A}6p)zKz&sqz#uFVaAkL?T7Z|61Yy z=}5FcNL#j1|1aRG{#EXOGyHFlB)k?U(3vmIt};EI*E5ypDw>)O6gD6I>FnMDQ)jv+ zVnySzNETG3gpy7I>+H1gi6*DcV8Px%Vj6Z)R?e)TWz)EaQdzl$9*>|{=~77Zh+=YJ zgq5_6u#v+fN=WMn_+yMUmotA0DW4kh;EhI7ek19tr0peDMOF=qCf{BcLq3X#BOl%{ z#_XgvL7R^v93F3HD<4iij(0EJxYITsrha&WjV~-1*}OiM&fq<(8(2s4=7hF1)YvbF zGdoM(jm#p)Mr4!oBMQi)H^P*!qq&>EiI@4hk+d$|o=CArj}U$}GM@YM zlmCXeDp*{VI0mjL9*(jVbTRHvS1QdI_fJ&PRYy*&j*k54)Vwtc6K$sYjL6=$n8a4%NQ7$x2Q_dVD4AADiJDjhcqRFy-N>XmTtnj&^zu zG*}+@Z1ToUW083;8K2ygMSi#`oBV#0=+Nffe2ETi;mst7j!UPK?}pH&sT5LmBQ=p;>HW-Z4)73BUA`QBZRCia#2j*$yAk^$zKp8uP1c9L!dG)Fu zMR|U16l}(Mn$SW#dBZG+Pjpz`#-q}|II5F}8)O?o)|FAc%}j5j(EBsf`}-&&H(T)t z)y0P+U8NN4u-v%U=Dr_g%}2JJw4Tnp70soMru!_*!#)wqr?=A7e@XAM*qem>Cni64 zE0OyQcmI8>HJ`6zF|8L7u4O4r`;j+zE!r^JN;Z#1Q(I1J(V_LU7F98weE7R}G#~!% zAB}OBihO)az`*OtQL$wEs4?V`TiN2yc+km~b^IvBJOtJLqg%(4C8M**YooKt8>6-4 zLquIwO%v3#krz+HZ8U?sZ-bp+@;Y`rgu6&IJGL^PD$kJm*lp3C>r)7K$VXp=lImNg zgudr!JaxNy#@8yXpXH8!NK&FL8!GSJ50D zRiTwEW6V89kG1SrM(1kiPalk?e#)cKCYgM`kgsI&8pvx{ShvnCOkNN9QN-m}iFQWQ zY&Xp>W0&3MqxJ3%^p#u7*lE8KSwd_5+#NU*3~i(;%~X$%s&f|9%(89@DG+2ABU zAHzxB06(W_t?T3eS_nCz3LyCxRi`AM$11j;(R(x+3+61v>M=a&7|O4U9!m~JXOSmj zvdQWgE!iA%3B$LC=3*C3|8chNP=jkao2MfWZtwQ=F zq}7ntG3g;8-3aL`aRG~E7+_$r3`3gOZmyQymwAcRvI!Wnu;uDJ@<^O_xy*n44#Uak z;@Fs=d(QSFy_rg7F}mIyZ$P%>mPZaisqeD{q#SE*dF0vnjuzbx zA!%hSY3oJOK1-NIzD}TvaC_oZWMe|7i*R}5+XRf?Sm1gQc;(nxq-HGb#A$V@6Vf_J zUmg2LSLyP|y0MpBrpqG@i1r|h_PB`lh1+M5jkm*G_&$AjYix(Bbf_1vz_W_{l#oDn z+>V@4H9>gf{7q~wIdOYlCOLaMUj3xghNCECD<2 z!;u8x9W#$%+;oT0R_H<7?r^lbxBU*7C>HJz4JWr?InLwtyF2FCECn9;6a2O^zem{d zI6JOqqo`Hv*uZoYlFf;LI!5VH=eG1a}WPG<;g4vt2<1Cf@0NbCMSchq;G{ojRQ&ORz_ zc%G)XknFyT7D)45L_Wqn(>HcJ0e3&y7IDxCbNyWyf_O*02cW%~X|EUBYm%t;bxEkh zAJACWinP=x%_2J?E!z)2Xmkr|4(-X;7vN9PtewbFu zQ_q0sUMf5bbERQ<4=?w5tJVc|K#w~=ITr6YdK=oJSxhwQl1Y&0jLF_{VjfKD)$V8VuOg+V*b~PVHY6?kfwFfH*L-Xe8~D}{ zX-#oC^mb1RIhF#_S>R@NY+}c?OzC>2ZYxt)NH%F`b=ams@v;$jqZqyH)mX`XNY5;z zlr_9SnO%;fdx-e8hPU8v;paS+2R^TBNr}NjNKcv$r^J#|DRFb~DBIh*pVW+*Swdf- z^LVS)1gslBr}4b_Lv4M^c)ayPUex%G8@Fq+$cLJ2@|i|UzSsD@ImC?2yj0ZowbWQG z$7q<=?AkN~*^&mfpQqBA<*cq^jEtH>CzE)-yF0CzG^bg~fixRwfzMXvr;+(DgDzU1 ze@ruywzO_N->px}B8Stm$*Hsgav=>#5X-DNWMOKC+FcdO$D_E{(PSLK5#5fGzCq6K zrg@)0d^A4Z%$LKdxe<>gK1JAO7Iq&Ci$^y+U23r88!b}r8@!Mnl^vTOo>Wtvn?z_tOWDpq4F(H7ZCCYiJF zmav7K&hQoB;RAizMV_IrR?*+lp^7j?lqO6Ql~knAgeYodO|mdWWN1jGtU(s62oCk! zen6oKb5+Q~72%=odk1B8vd|itJtSdNx!hhRPYNCt8xay5VoX2MV{TZOQaM*Sbm-88 zu*gj1QJFIDP;hNXTi>RB`-01Qp6XL8Z3|I+;Du z*eZ(%ZI-pl<|>ShL3yo;8d+UXbI_rlO+8!WWkHoeRXrMd4jo!4KQF83vA)+4d7J!* ztW4e}(`aI&VyA~_(i20IfaQ&{W<^WT&@-|S{6Z0dVp@nMDRgbn+%RR{dHJdyHL?nM z;wt&kAWs^?k%lIDjiO#gRZ&gB;YcBVI2A=i9+gE^$nEE4NuxrlWFeOH$Z}cwsF09g zdkBOyMeF4>GW^!cX@m+zdU$$`Y{s;_a79FD)Yc&Te0gT%Dw!p6RJkl7J&e<@&?quB z)7;b+H3l7&A;yEUgYtdysN7sdW>i>MSe2|suF%8=$EJrRq$h=jZAG>cBc>~+Cr*n{ zXqKbQSQZtED!DQ&Jw048G&C&St>3NNg1ARTD8fQ$ma2k~JY|?BGc+VTOrg}ZNn63#n9u1C&m@g|D3Kufe($u3x)*`c{x5#GD3;x$Ei#k4FMvcN=A)l@cZ|*sx zQh{7fw+x*TIRlw2mzBxVBO{}tq7;fug(eBygoiVVaIl9=OFu4{;(XB~t({o;!gBa9 zSs9rg%JC3^iv*4nIO-~XKV9HDv2Es00-t?|-?s^TXgV{BDo@e%fax(NAP zV9h`I{ejpzMbks}a(uJERr@)uL`_g;1+?m34BQ4a{`|cIPMCrujdfXN4da5 z1zsU=gup$}u4w-56xbo~y#jwN@LYjaS91T01%6!MwF2)H_+^2wM?0nZ-w`-V;DZ7i z1^!&%r2-!nc$dH@1a1@fM}bEU;QG%C{8xb$LwWwI1P&MYfWQ#~|03{>0tbb0eK!jn zEpURsMFJ-YTq$sxz^@CODe!55Ckq@3J4N}JDex457Yn>V;3|Qe1+EkLg243xj~K}H z?G$*rz;6kBpTPSBZWg#zVEG^({3A|6>%)wmWF@aYKd_mw7 z0*ABzYYM;kzoIn#Hw%0V#RJMnT?)^?Uf_CxpA@)J;I{>C7C2}q4}VbLc;Nmh1OES7 z3F-mI{QqYYvRq)h*q6IQVE%tW2|3{oKaZ!U|Ft}Pk-#c}`TxHp#3XQ=xW80j{{J8e z*(q>2`+tUnd@V5l|Ax>#jO*wBj~9E31#V>juMm?9WaSD>Akwek>A7CuP=W6R#vReS z6EedOKg=&EAFlJmJN)pQe)s^#p8S2ru_u4u`(ZhJLgcwW&=23{hm-yApZ)Otei&P~ zee~D);Wz#8agNbz^B-PQ_6a}S56Al934Yk-hv^iyeSZJxhu`nRzHkI z2%r1ee)!LR_&z`US3kVW57RXRq~F8O>wb8@A8z#v|EnJc%Z>j{R}N*1;1i?y%7>6X^17bFr@-&jzv8U1yrhUJ<4* zYq$5?z39~W_^yGTe(b-qVZY4a z;Wzymw1okM#h+Z$V(wByKsdbS1NtIZ8oK|dgCpb?y3}T()j0vEe=fTb)g#mD)4`4f5M{IMh5 z7u03R1~4EReuO&3%|+*SO4t`~eE*}7(d}n{G;i)<7qaQDL!FR`-E)^0Ni5&&&{ffh z%J&ECamVTP*sOrk?AYFP+!ih;IhU*(0V!$!(utQFtv0?GU+=;v9Ch?VU|o-u6TI*I zT*|8|+V|TJ-5uO|4R64RwsVrbfx112_67-f^~(E^C$%OQpMGjbOW-G-x*eft)&aR< zZ8xB>0(*b0xm`Lyg@=s}Y^dm>yE$=k@4@Zfe5sR8EFcH&_xIbSy5p>>I@%=dtzKI5 z7{1enZa-4Tiw!aXb=9*2n2uF3WJNHHSn-vez^RP4=>5}nxw9YPpXDpofOq2pBNKFC z=HRvj-7OXVPIfoz3pWSdu8i)&3DAxY&fVkBO8ZWx>rqNTCAjoZn|ECu@W!(b-a6|Z zFgmdYj!Xg@4v)cm>|$8s>3Thpb~LVGs_59LFfjU#`yOxP+CrLaYX>3Q#Vuy%UF6-X z@Y3qsJ%uMv{^jdcrp@Q-N&_?IOT*K(KHa*UkQ(tctD`X9&pm3?d205>NB`3BS=0g%8B^7hwcYaBZI#_fg=imL z#_#phY0O?P-H6k7n2M-7RU6>58`?eN<*pRB_tXuY%qVopk=sY7S>Yb=tegIR`#hu( z@37CrCEmDTzepVMHb{@D^o0kU^Wlf$Xd=f;4D24EujfpIqhW>!D|$?*shgZVvuxMi!Oz{=_Cfr*K`G}RzURoy{_8ZuM?F;aw~FFC+4C!I zUwU|9uagBoZ=ABdS9PynUR{#4XX&V~rbL}t{IB>YH|&Vb4c)e~f`~NZ0k$TGx?TVErmc6pA);Qzj_ZKg0xNi2KC9Xbu2G1L}`N0={SN}Mr z;cVsP*}LLThs-5cpMU0y;a?7W_xHUykCcB@eb=tKpMH;-HtzSfzufRhxi0D6(%j*W zlc_}){`Oe^bFb~}|LYQEx_0`=e?Ra_dGwwyjx@ZjNPD%U`gq03p=Z86aNZGpBBs^8 zIqi6ES@rir;@@Ae;aGx2{n3glU)xrnZ~D1<)8SR0J=l12+1SWe zKV5Hh+`V{TV)WN5XEdsQTvD?kv8rXy*K5W`EjIKV^v`|&8eco=LP7Y91J~BSdh5X7 z$((0wpX~{)xzIW>a?yfk7R)YwxN+mKbBnLhJ)Sk|#|h7Ff3NJT>)u|ncT@G19q*6*mvdBt#9?ZrRTOj;gQ7; zr+hr1tmJsVRhqej!Y1_j_Kc!he{3Q5}0k^;X_*Z|~6SRHFF582-cdu(syd^gJn(z;njXSox zRad0373SUa^XcjbM=V;bd$#9QA2i>8>yDWd27hYp-k?`0|OJ@xzxXvOj)x{)bmT^>OIfzN=SHw6^BF zR()on+45Z8do@>I{F5Q{x{d#+-7?Mg*0%+XihsTT{(bVCX+17Ju=Roa7aZQPBz@7S z7cO7lWtsKh_lYW(D=dhXC7?Z-ZMG%z2Rdge%;*T&!<`w6x$y+-usWr$vLAxsGia1 zwQ*)rzclU5ZA%|}cA4#!UcZf4t4s|FpB4XTuj0qUzMV1FKKaw{Gp_m1ohK7F)c-y4 z;6vF*FEp(F^@X4a{V!J>d}rE>&qlxY=123c@3&;xw2Qx;eSg(O%RJLPyVm8$r%(EM zO7*^d70aGJ8dFU~J z(uKr;#DK(r#DK(r#DK(r#DK(r#DK(r#DK(r#DK(r#DK(r#DK(r#DK(r#DK(r#DK(r z#DK(r#DK(r#DK(r#DK(r#DK(r#DK(r#DK(r#DK(r#DK(r#DK(r#DK(r#DK(r#DK(r q#DK(r#DK(r#DK(r#DK(r#DK(r#DK(r#DK(r#DK(r#K8Z<4E!&~bn3wX diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Headers/DouShouQiModel-Swift.h b/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Headers/DouShouQiModel-Swift.h deleted file mode 100644 index 5e14e79..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Headers/DouShouQiModel-Swift.h +++ /dev/null @@ -1,618 +0,0 @@ -#if 0 -#elif defined(__arm64__) && __arm64__ -// Generated by Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5) -#ifndef DOUSHOUQIMODEL_SWIFT_H -#define DOUSHOUQIMODEL_SWIFT_H -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wgcc-compat" - -#if !defined(__has_include) -# define __has_include(x) 0 -#endif -#if !defined(__has_attribute) -# define __has_attribute(x) 0 -#endif -#if !defined(__has_feature) -# define __has_feature(x) 0 -#endif -#if !defined(__has_warning) -# define __has_warning(x) 0 -#endif - -#if __has_include() -# include -#endif - -#pragma clang diagnostic ignored "-Wauto-import" -#if defined(__OBJC__) -#include -#endif -#if defined(__cplusplus) -#include -#include -#include -#include -#include -#include -#include -#else -#include -#include -#include -#include -#endif -#if defined(__cplusplus) -#if defined(__arm64e__) && __has_include() -# include -#else -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wreserved-macro-identifier" -# ifndef __ptrauth_swift_value_witness_function_pointer -# define __ptrauth_swift_value_witness_function_pointer(x) -# endif -# ifndef __ptrauth_swift_class_method_pointer -# define __ptrauth_swift_class_method_pointer(x) -# endif -#pragma clang diagnostic pop -#endif -#endif - -#if !defined(SWIFT_TYPEDEFS) -# define SWIFT_TYPEDEFS 1 -# if __has_include() -# include -# elif !defined(__cplusplus) -typedef uint_least16_t char16_t; -typedef uint_least32_t char32_t; -# endif -typedef float swift_float2 __attribute__((__ext_vector_type__(2))); -typedef float swift_float3 __attribute__((__ext_vector_type__(3))); -typedef float swift_float4 __attribute__((__ext_vector_type__(4))); -typedef double swift_double2 __attribute__((__ext_vector_type__(2))); -typedef double swift_double3 __attribute__((__ext_vector_type__(3))); -typedef double swift_double4 __attribute__((__ext_vector_type__(4))); -typedef int swift_int2 __attribute__((__ext_vector_type__(2))); -typedef int swift_int3 __attribute__((__ext_vector_type__(3))); -typedef int swift_int4 __attribute__((__ext_vector_type__(4))); -typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2))); -typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3))); -typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4))); -#endif - -#if !defined(SWIFT_PASTE) -# define SWIFT_PASTE_HELPER(x, y) x##y -# define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y) -#endif -#if !defined(SWIFT_METATYPE) -# define SWIFT_METATYPE(X) Class -#endif -#if !defined(SWIFT_CLASS_PROPERTY) -# if __has_feature(objc_class_property) -# define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__ -# else -# define SWIFT_CLASS_PROPERTY(...) -# endif -#endif -#if !defined(SWIFT_RUNTIME_NAME) -# if __has_attribute(objc_runtime_name) -# define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X))) -# else -# define SWIFT_RUNTIME_NAME(X) -# endif -#endif -#if !defined(SWIFT_COMPILE_NAME) -# if __has_attribute(swift_name) -# define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X))) -# else -# define SWIFT_COMPILE_NAME(X) -# endif -#endif -#if !defined(SWIFT_METHOD_FAMILY) -# if __has_attribute(objc_method_family) -# define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X))) -# else -# define SWIFT_METHOD_FAMILY(X) -# endif -#endif -#if !defined(SWIFT_NOESCAPE) -# if __has_attribute(noescape) -# define SWIFT_NOESCAPE __attribute__((noescape)) -# else -# define SWIFT_NOESCAPE -# endif -#endif -#if !defined(SWIFT_RELEASES_ARGUMENT) -# if __has_attribute(ns_consumed) -# define SWIFT_RELEASES_ARGUMENT __attribute__((ns_consumed)) -# else -# define SWIFT_RELEASES_ARGUMENT -# endif -#endif -#if !defined(SWIFT_WARN_UNUSED_RESULT) -# if __has_attribute(warn_unused_result) -# define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result)) -# else -# define SWIFT_WARN_UNUSED_RESULT -# endif -#endif -#if !defined(SWIFT_NORETURN) -# if __has_attribute(noreturn) -# define SWIFT_NORETURN __attribute__((noreturn)) -# else -# define SWIFT_NORETURN -# endif -#endif -#if !defined(SWIFT_CLASS_EXTRA) -# define SWIFT_CLASS_EXTRA -#endif -#if !defined(SWIFT_PROTOCOL_EXTRA) -# define SWIFT_PROTOCOL_EXTRA -#endif -#if !defined(SWIFT_ENUM_EXTRA) -# define SWIFT_ENUM_EXTRA -#endif -#if !defined(SWIFT_CLASS) -# if __has_attribute(objc_subclassing_restricted) -# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA -# define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# else -# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# endif -#endif -#if !defined(SWIFT_RESILIENT_CLASS) -# if __has_attribute(objc_class_stub) -# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub)) -# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME) -# else -# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) -# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME) -# endif -#endif -#if !defined(SWIFT_PROTOCOL) -# define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA -# define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA -#endif -#if !defined(SWIFT_EXTENSION) -# define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__) -#endif -#if !defined(OBJC_DESIGNATED_INITIALIZER) -# if __has_attribute(objc_designated_initializer) -# define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer)) -# else -# define OBJC_DESIGNATED_INITIALIZER -# endif -#endif -#if !defined(SWIFT_ENUM_ATTR) -# if __has_attribute(enum_extensibility) -# define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility))) -# else -# define SWIFT_ENUM_ATTR(_extensibility) -# endif -#endif -#if !defined(SWIFT_ENUM) -# define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type -# if __has_feature(generalized_swift_name) -# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type -# else -# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility) -# endif -#endif -#if !defined(SWIFT_UNAVAILABLE) -# define SWIFT_UNAVAILABLE __attribute__((unavailable)) -#endif -#if !defined(SWIFT_UNAVAILABLE_MSG) -# define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg))) -#endif -#if !defined(SWIFT_AVAILABILITY) -# define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__))) -#endif -#if !defined(SWIFT_WEAK_IMPORT) -# define SWIFT_WEAK_IMPORT __attribute__((weak_import)) -#endif -#if !defined(SWIFT_DEPRECATED) -# define SWIFT_DEPRECATED __attribute__((deprecated)) -#endif -#if !defined(SWIFT_DEPRECATED_MSG) -# define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__))) -#endif -#if !defined(SWIFT_DEPRECATED_OBJC) -# if __has_feature(attribute_diagnose_if_objc) -# define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning"))) -# else -# define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg) -# endif -#endif -#if defined(__OBJC__) -#if !defined(IBSegueAction) -# define IBSegueAction -#endif -#endif -#if !defined(SWIFT_EXTERN) -# if defined(__cplusplus) -# define SWIFT_EXTERN extern "C" -# else -# define SWIFT_EXTERN extern -# endif -#endif -#if !defined(SWIFT_CALL) -# define SWIFT_CALL __attribute__((swiftcall)) -#endif -#if !defined(SWIFT_INDIRECT_RESULT) -# define SWIFT_INDIRECT_RESULT __attribute__((swift_indirect_result)) -#endif -#if !defined(SWIFT_CONTEXT) -# define SWIFT_CONTEXT __attribute__((swift_context)) -#endif -#if !defined(SWIFT_ERROR_RESULT) -# define SWIFT_ERROR_RESULT __attribute__((swift_error_result)) -#endif -#if defined(__cplusplus) -# define SWIFT_NOEXCEPT noexcept -#else -# define SWIFT_NOEXCEPT -#endif -#if !defined(SWIFT_C_INLINE_THUNK) -# if __has_attribute(always_inline) -# if __has_attribute(nodebug) -# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) __attribute__((nodebug)) -# else -# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) -# endif -# else -# define SWIFT_C_INLINE_THUNK inline -# endif -#endif -#if defined(_WIN32) -#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL) -# define SWIFT_IMPORT_STDLIB_SYMBOL __declspec(dllimport) -#endif -#else -#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL) -# define SWIFT_IMPORT_STDLIB_SYMBOL -#endif -#endif -#if defined(__OBJC__) -#if __has_feature(objc_modules) -#if __has_warning("-Watimport-in-framework-header") -#pragma clang diagnostic ignored "-Watimport-in-framework-header" -#endif -#endif - -#endif -#pragma clang diagnostic ignored "-Wproperty-attribute-mismatch" -#pragma clang diagnostic ignored "-Wduplicate-method-arg" -#if __has_warning("-Wpragma-clang-attribute") -# pragma clang diagnostic ignored "-Wpragma-clang-attribute" -#endif -#pragma clang diagnostic ignored "-Wunknown-pragmas" -#pragma clang diagnostic ignored "-Wnullability" -#pragma clang diagnostic ignored "-Wdollar-in-identifier-extension" - -#if __has_attribute(external_source_symbol) -# pragma push_macro("any") -# undef any -# pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="DouShouQiModel",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol)) -# pragma pop_macro("any") -#endif - -#if defined(__OBJC__) -#endif -#if __has_attribute(external_source_symbol) -# pragma clang attribute pop -#endif -#if defined(__cplusplus) -#endif -#pragma clang diagnostic pop -#endif - -#elif defined(__x86_64__) && __x86_64__ -// Generated by Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5) -#ifndef DOUSHOUQIMODEL_SWIFT_H -#define DOUSHOUQIMODEL_SWIFT_H -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wgcc-compat" - -#if !defined(__has_include) -# define __has_include(x) 0 -#endif -#if !defined(__has_attribute) -# define __has_attribute(x) 0 -#endif -#if !defined(__has_feature) -# define __has_feature(x) 0 -#endif -#if !defined(__has_warning) -# define __has_warning(x) 0 -#endif - -#if __has_include() -# include -#endif - -#pragma clang diagnostic ignored "-Wauto-import" -#if defined(__OBJC__) -#include -#endif -#if defined(__cplusplus) -#include -#include -#include -#include -#include -#include -#include -#else -#include -#include -#include -#include -#endif -#if defined(__cplusplus) -#if defined(__arm64e__) && __has_include() -# include -#else -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wreserved-macro-identifier" -# ifndef __ptrauth_swift_value_witness_function_pointer -# define __ptrauth_swift_value_witness_function_pointer(x) -# endif -# ifndef __ptrauth_swift_class_method_pointer -# define __ptrauth_swift_class_method_pointer(x) -# endif -#pragma clang diagnostic pop -#endif -#endif - -#if !defined(SWIFT_TYPEDEFS) -# define SWIFT_TYPEDEFS 1 -# if __has_include() -# include -# elif !defined(__cplusplus) -typedef uint_least16_t char16_t; -typedef uint_least32_t char32_t; -# endif -typedef float swift_float2 __attribute__((__ext_vector_type__(2))); -typedef float swift_float3 __attribute__((__ext_vector_type__(3))); -typedef float swift_float4 __attribute__((__ext_vector_type__(4))); -typedef double swift_double2 __attribute__((__ext_vector_type__(2))); -typedef double swift_double3 __attribute__((__ext_vector_type__(3))); -typedef double swift_double4 __attribute__((__ext_vector_type__(4))); -typedef int swift_int2 __attribute__((__ext_vector_type__(2))); -typedef int swift_int3 __attribute__((__ext_vector_type__(3))); -typedef int swift_int4 __attribute__((__ext_vector_type__(4))); -typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2))); -typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3))); -typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4))); -#endif - -#if !defined(SWIFT_PASTE) -# define SWIFT_PASTE_HELPER(x, y) x##y -# define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y) -#endif -#if !defined(SWIFT_METATYPE) -# define SWIFT_METATYPE(X) Class -#endif -#if !defined(SWIFT_CLASS_PROPERTY) -# if __has_feature(objc_class_property) -# define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__ -# else -# define SWIFT_CLASS_PROPERTY(...) -# endif -#endif -#if !defined(SWIFT_RUNTIME_NAME) -# if __has_attribute(objc_runtime_name) -# define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X))) -# else -# define SWIFT_RUNTIME_NAME(X) -# endif -#endif -#if !defined(SWIFT_COMPILE_NAME) -# if __has_attribute(swift_name) -# define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X))) -# else -# define SWIFT_COMPILE_NAME(X) -# endif -#endif -#if !defined(SWIFT_METHOD_FAMILY) -# if __has_attribute(objc_method_family) -# define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X))) -# else -# define SWIFT_METHOD_FAMILY(X) -# endif -#endif -#if !defined(SWIFT_NOESCAPE) -# if __has_attribute(noescape) -# define SWIFT_NOESCAPE __attribute__((noescape)) -# else -# define SWIFT_NOESCAPE -# endif -#endif -#if !defined(SWIFT_RELEASES_ARGUMENT) -# if __has_attribute(ns_consumed) -# define SWIFT_RELEASES_ARGUMENT __attribute__((ns_consumed)) -# else -# define SWIFT_RELEASES_ARGUMENT -# endif -#endif -#if !defined(SWIFT_WARN_UNUSED_RESULT) -# if __has_attribute(warn_unused_result) -# define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result)) -# else -# define SWIFT_WARN_UNUSED_RESULT -# endif -#endif -#if !defined(SWIFT_NORETURN) -# if __has_attribute(noreturn) -# define SWIFT_NORETURN __attribute__((noreturn)) -# else -# define SWIFT_NORETURN -# endif -#endif -#if !defined(SWIFT_CLASS_EXTRA) -# define SWIFT_CLASS_EXTRA -#endif -#if !defined(SWIFT_PROTOCOL_EXTRA) -# define SWIFT_PROTOCOL_EXTRA -#endif -#if !defined(SWIFT_ENUM_EXTRA) -# define SWIFT_ENUM_EXTRA -#endif -#if !defined(SWIFT_CLASS) -# if __has_attribute(objc_subclassing_restricted) -# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA -# define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# else -# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# endif -#endif -#if !defined(SWIFT_RESILIENT_CLASS) -# if __has_attribute(objc_class_stub) -# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub)) -# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME) -# else -# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) -# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME) -# endif -#endif -#if !defined(SWIFT_PROTOCOL) -# define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA -# define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA -#endif -#if !defined(SWIFT_EXTENSION) -# define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__) -#endif -#if !defined(OBJC_DESIGNATED_INITIALIZER) -# if __has_attribute(objc_designated_initializer) -# define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer)) -# else -# define OBJC_DESIGNATED_INITIALIZER -# endif -#endif -#if !defined(SWIFT_ENUM_ATTR) -# if __has_attribute(enum_extensibility) -# define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility))) -# else -# define SWIFT_ENUM_ATTR(_extensibility) -# endif -#endif -#if !defined(SWIFT_ENUM) -# define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type -# if __has_feature(generalized_swift_name) -# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type -# else -# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility) -# endif -#endif -#if !defined(SWIFT_UNAVAILABLE) -# define SWIFT_UNAVAILABLE __attribute__((unavailable)) -#endif -#if !defined(SWIFT_UNAVAILABLE_MSG) -# define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg))) -#endif -#if !defined(SWIFT_AVAILABILITY) -# define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__))) -#endif -#if !defined(SWIFT_WEAK_IMPORT) -# define SWIFT_WEAK_IMPORT __attribute__((weak_import)) -#endif -#if !defined(SWIFT_DEPRECATED) -# define SWIFT_DEPRECATED __attribute__((deprecated)) -#endif -#if !defined(SWIFT_DEPRECATED_MSG) -# define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__))) -#endif -#if !defined(SWIFT_DEPRECATED_OBJC) -# if __has_feature(attribute_diagnose_if_objc) -# define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning"))) -# else -# define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg) -# endif -#endif -#if defined(__OBJC__) -#if !defined(IBSegueAction) -# define IBSegueAction -#endif -#endif -#if !defined(SWIFT_EXTERN) -# if defined(__cplusplus) -# define SWIFT_EXTERN extern "C" -# else -# define SWIFT_EXTERN extern -# endif -#endif -#if !defined(SWIFT_CALL) -# define SWIFT_CALL __attribute__((swiftcall)) -#endif -#if !defined(SWIFT_INDIRECT_RESULT) -# define SWIFT_INDIRECT_RESULT __attribute__((swift_indirect_result)) -#endif -#if !defined(SWIFT_CONTEXT) -# define SWIFT_CONTEXT __attribute__((swift_context)) -#endif -#if !defined(SWIFT_ERROR_RESULT) -# define SWIFT_ERROR_RESULT __attribute__((swift_error_result)) -#endif -#if defined(__cplusplus) -# define SWIFT_NOEXCEPT noexcept -#else -# define SWIFT_NOEXCEPT -#endif -#if !defined(SWIFT_C_INLINE_THUNK) -# if __has_attribute(always_inline) -# if __has_attribute(nodebug) -# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) __attribute__((nodebug)) -# else -# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) -# endif -# else -# define SWIFT_C_INLINE_THUNK inline -# endif -#endif -#if defined(_WIN32) -#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL) -# define SWIFT_IMPORT_STDLIB_SYMBOL __declspec(dllimport) -#endif -#else -#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL) -# define SWIFT_IMPORT_STDLIB_SYMBOL -#endif -#endif -#if defined(__OBJC__) -#if __has_feature(objc_modules) -#if __has_warning("-Watimport-in-framework-header") -#pragma clang diagnostic ignored "-Watimport-in-framework-header" -#endif -#endif - -#endif -#pragma clang diagnostic ignored "-Wproperty-attribute-mismatch" -#pragma clang diagnostic ignored "-Wduplicate-method-arg" -#if __has_warning("-Wpragma-clang-attribute") -# pragma clang diagnostic ignored "-Wpragma-clang-attribute" -#endif -#pragma clang diagnostic ignored "-Wunknown-pragmas" -#pragma clang diagnostic ignored "-Wnullability" -#pragma clang diagnostic ignored "-Wdollar-in-identifier-extension" - -#if __has_attribute(external_source_symbol) -# pragma push_macro("any") -# undef any -# pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="DouShouQiModel",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol)) -# pragma pop_macro("any") -#endif - -#if defined(__OBJC__) -#endif -#if __has_attribute(external_source_symbol) -# pragma clang attribute pop -#endif -#if defined(__cplusplus) -#endif -#pragma clang diagnostic pop -#endif - -#else -#error unsupported Swift architecture -#endif diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Headers/DouShouQiModel.h b/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Headers/DouShouQiModel.h deleted file mode 100644 index 5bbf06a..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Headers/DouShouQiModel.h +++ /dev/null @@ -1,18 +0,0 @@ -// -// DouShouQiModel.h -// DouShouQiModel -// -// Created by Marc ChevaldonnΓ© on 14/05/2024. -// - -#import - -//! Project version number for DouShouQiModel. -FOUNDATION_EXPORT double DouShouQiModelVersionNumber; - -//! Project version string for DouShouQiModel. -FOUNDATION_EXPORT const unsigned char DouShouQiModelVersionString[]; - -// In this header, you should import all the public headers of your framework using statements like #import - - diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Info.plist b/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Info.plist deleted file mode 100644 index 33fe5476a1d97be812dbdb900c14367a31ba094d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 743 zcmZ8d%Wl&^6rDS~3KZfth0;PxDUVVlMz%{}!2+pqBZVq7t=$HyD%QlABqPQi<3~l{ z2iWletYFCoA+cn~AMgWRuwjAV7nr2BQt;;9dmiI^ZYvZ#PIUc1n*x07_=%IJ#!jC( zJAUqbL7SK?PF=V-eQ9QT_VShas|(i_7p~v9d27klimNFX?HcuZJYXC4aB{Voa%D9Q z+JaeZp9vZIEJ(Ikm&?G_CUb7>CG*mRwgfu@R@+L-JDf$XHkT`_K}TBLOO&5R{T&v? zs@u!iC)8Ij6!Wo8z2~&coPMa#*&MZdGDhhh4q#h+aO~}8TeV^z~rPf%t z4WhrFQz3Z0Cj(}yKdIO<+B95k(UU%*VJH|;-7sxTgxL3qCuq DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO11notFinishedyA2CmF", - "mangledName": "$s14DouShouQiModel6ResultO11notFinishedyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "even", - "printedName": "even", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Result.Type) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO4evenyA2CmF", - "mangledName": "$s14DouShouQiModel6ResultO4evenyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "winner", - "printedName": "winner", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Result.Type) -> (DouShouQiModel.Owner, DouShouQiModel.WinningReason) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner, DouShouQiModel.WinningReason) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(winner: DouShouQiModel.Owner, reason: DouShouQiModel.WinningReason)", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO6winneryAcA5OwnerO_AA13WinningReasonOtcACmF", - "mangledName": "$s14DouShouQiModel6ResultO6winneryAcA5OwnerO_AA13WinningReasonOtcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6ResultO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel6ResultO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel6ResultO", - "mangledName": "$s14DouShouQiModel6ResultO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "TypeDecl", - "name": "WinningReason", - "printedName": "WinningReason", - "children": [ - { - "kind": "Var", - "name": "denReached", - "printedName": "denReached", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO10denReachedyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO10denReachedyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "noMorePieces", - "printedName": "noMorePieces", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO12noMorePiecesyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO12noMorePiecesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "tooManyOccurences", - "printedName": "tooManyOccurences", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO17tooManyOccurencesyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO17tooManyOccurencesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "noMovesLeft", - "printedName": "noMovesLeft", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO11noMovesLeftyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO11noMovesLeftyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel13WinningReasonO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel13WinningReasonO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel13WinningReasonO9hashValueSivp", - "mangledName": "$s14DouShouQiModel13WinningReasonO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel13WinningReasonO9hashValueSivg", - "mangledName": "$s14DouShouQiModel13WinningReasonO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel13WinningReasonO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel13WinningReasonO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel13WinningReasonO", - "mangledName": "$s14DouShouQiModel13WinningReasonO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "BoardResult", - "printedName": "BoardResult", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel11BoardResultO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "ok", - "printedName": "ok", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> (DouShouQiModel.Piece?) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece?) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece?)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO2okyAcA5PieceVSg_tcACmF", - "mangledName": "$s14DouShouQiModel11BoardResultO2okyAcA5PieceVSg_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "failed", - "printedName": "failed", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> (DouShouQiModel.BoardFailingReason) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(reason: DouShouQiModel.BoardFailingReason)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO6failedyAcA0E13FailingReasonO_tcACmF", - "mangledName": "$s14DouShouQiModel11BoardResultO6failedyAcA0E13FailingReasonO_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11BoardResultO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel11BoardResultO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel11BoardResultO", - "mangledName": "$s14DouShouQiModel11BoardResultO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "TypeDecl", - "name": "BoardFailingReason", - "printedName": "BoardFailingReason", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "outOfBounds", - "printedName": "outOfBounds", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO11outOfBoundsyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO11outOfBoundsyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cellNotEmpty", - "printedName": "cellNotEmpty", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO12cellNotEmptyyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO12cellNotEmptyyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cellEmpty", - "printedName": "cellEmpty", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9cellEmptyyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9cellEmptyyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel18BoardFailingReasonO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9hashValueSivp", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9hashValueSivg", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel18BoardFailingReasonO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel18BoardFailingReasonO", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "HumanPlayer", - "printedName": "HumanPlayer", - "children": [ - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:andInputMethod:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.HumanPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ] - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel11HumanPlayerC8withName5andId0I11InputMethodACSgSS_AA5OwnerOAA4MoveVSgACctcfc", - "mangledName": "$s14DouShouQiModel11HumanPlayerC8withName5andId0I11InputMethodACSgSS_AA5OwnerOAA4MoveVSgACctcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.HumanPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel11HumanPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel11HumanPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11HumanPlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "mangledName": "$s14DouShouQiModel11HumanPlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "changeInput", - "printedName": "changeInput(input:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11HumanPlayerC11changeInput5inputyAA4MoveVSgACc_tF", - "mangledName": "$s14DouShouQiModel11HumanPlayerC11changeInput5inputyAA4MoveVSgACc_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11HumanPlayerC10chooseMoveyyAA0H0VSgYaKF", - "mangledName": "$s14DouShouQiModel11HumanPlayerC10chooseMoveyyAA0H0VSgYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel11HumanPlayerC", - "mangledName": "$s14DouShouQiModel11HumanPlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "superclassUsr": "s:14DouShouQiModel6PlayerC", - "inheritsConvenienceInitializers": true, - "superclassNames": [ - "DouShouQiModel.Player" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "ClassicRules", - "printedName": "ClassicRules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11createBoardAA0H0VyFZ", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11createBoardAA0H0VyFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10checkBoardyyAA0H0VKFZ", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10checkBoardyyAA0H0VKFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init()", - "children": [ - { - "kind": "TypeNominal", - "name": "ClassicRules", - "printedName": "DouShouQiModel.ClassicRules", - "usr": "s:14DouShouQiModel12ClassicRulesV" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12ClassicRulesVACycfc", - "mangledName": "$s14DouShouQiModel12ClassicRulesVACycfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(occurences:historic:)", - "children": [ - { - "kind": "TypeNominal", - "name": "ClassicRules", - "printedName": "DouShouQiModel.ClassicRules", - "usr": "s:14DouShouQiModel12ClassicRulesV" - }, - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toM00n2ToP0SbAA0K0V_S4itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toM00n2ToP0SbAA0K0V_S4itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard04withH0SbAA0K0V_AA0H0VtF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard04withH0SbAA0K0V_AA0H0VtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10isGameOver9withBoard16andLastRowPlayed0lM12ColumnPlayerSb_AA6ResultOtAA0K0V_S2itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10isGameOver9withBoard16andLastRowPlayed0lM12ColumnPlayerSb_AA6ResultOtAA0K0V_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10playedMove_15onStartingBoard012andResultingK0yAA0H0V_AA0K0VAJtKF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10playedMove_15onStartingBoard012andResultingK0yAA0H0V_AA0K0VAJtKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel12ClassicRulesV", - "mangledName": "$s14DouShouQiModel12ClassicRulesV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Rules", - "printedName": "Rules", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Cell", - "printedName": "Cell", - "children": [ - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel4CellV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel4CellV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "cellType", - "printedName": "cellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV8cellTypeAA0eG0Ovp", - "mangledName": "$s14DouShouQiModel4CellV8cellTypeAA0eG0Ovp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV8cellTypeAA0eG0Ovg", - "mangledName": "$s14DouShouQiModel4CellV8cellTypeAA0eG0Ovg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "initialOwner", - "printedName": "initialOwner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV12initialOwnerAA0G0Ovp", - "mangledName": "$s14DouShouQiModel4CellV12initialOwnerAA0G0Ovp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV12initialOwnerAA0G0Ovg", - "mangledName": "$s14DouShouQiModel4CellV12initialOwnerAA0G0Ovg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "piece", - "printedName": "piece", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvp", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvg", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - }, - { - "kind": "Accessor", - "name": "Set", - "printedName": "Set()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvs", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvs", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "set" - }, - { - "kind": "Accessor", - "name": "Modify", - "printedName": "Modify()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvM", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvM", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "_modify" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(ofType:ownedBy:withPiece:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "hasDefaultArg": true, - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "hasDefaultArg": true, - "usr": "s:Sq" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4CellV6ofType7ownedBy9withPieceAcA0eG0O_AA5OwnerOAA0K0VSgtcfc", - "mangledName": "$s14DouShouQiModel4CellV6ofType7ownedBy9withPieceAcA0eG0O_AA5OwnerOAA0K0VSgtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4CellV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel4CellV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel4CellV", - "mangledName": "$s14DouShouQiModel4CellV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "VerySimpleRules", - "printedName": "VerySimpleRules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11createBoardAA0I0VyFZ", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11createBoardAA0I0VyFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10checkBoardyyAA0I0VKFZ", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10checkBoardyyAA0I0VKFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init()", - "children": [ - { - "kind": "TypeNominal", - "name": "VerySimpleRules", - "printedName": "DouShouQiModel.VerySimpleRules", - "usr": "s:14DouShouQiModel15VerySimpleRulesV" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel15VerySimpleRulesVACycfc", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesVACycfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(occurences:historic:)", - "children": [ - { - "kind": "TypeNominal", - "name": "VerySimpleRules", - "printedName": "DouShouQiModel.VerySimpleRules", - "usr": "s:14DouShouQiModel15VerySimpleRulesV" - }, - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toN00o2ToQ0SbAA0L0V_S4itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toN00o2ToQ0SbAA0L0V_S4itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard04withI0SbAA0L0V_AA0I0VtF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard04withI0SbAA0L0V_AA0I0VtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10isGameOver9withBoard16andLastRowPlayed0mN12ColumnPlayerSb_AA6ResultOtAA0L0V_S2itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10isGameOver9withBoard16andLastRowPlayed0mN12ColumnPlayerSb_AA6ResultOtAA0L0V_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10playedMove_15onStartingBoard012andResultingL0yAA0I0V_AA0L0VAJtKF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10playedMove_15onStartingBoard012andResultingL0yAA0I0V_AA0L0VAJtKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel15VerySimpleRulesV", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Rules", - "printedName": "Rules", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Rules", - "printedName": "Rules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11createBoardAA0G0VyFZ", - "mangledName": "$s14DouShouQiModel5RulesP11createBoardAA0G0VyFZ", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "static": true, - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10checkBoardyyAA0G0VKFZ", - "mangledName": "$s14DouShouQiModel5RulesP10checkBoardyyAA0G0VKFZ", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "static": true, - "protocolReq": true, - "throwing": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel5RulesP13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel5RulesP8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel5RulesP8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11isMoveValid7onBoard7fromRow13andFromColumn02toL00m2ToO0SbAA0J0V_S4itF", - "mangledName": "$s14DouShouQiModel5RulesP11isMoveValid7onBoard7fromRow13andFromColumn02toL00m2ToO0SbAA0J0V_S4itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11isMoveValid7onBoard04withG0SbAA0J0V_AA0G0VtF", - "mangledName": "$s14DouShouQiModel5RulesP11isMoveValid7onBoard04withG0SbAA0J0V_AA0G0VtF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10isGameOver9withBoard16andLastRowPlayed0kL12ColumnPlayerSb_AA6ResultOtAA0J0V_S2itF", - "mangledName": "$s14DouShouQiModel5RulesP10isGameOver9withBoard16andLastRowPlayed0kL12ColumnPlayerSb_AA6ResultOtAA0J0V_S2itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10playedMove_15onStartingBoard012andResultingJ0yAA0G0V_AA0J0VAJtKF", - "mangledName": "$s14DouShouQiModel5RulesP10playedMove_15onStartingBoard012andResultingJ0yAA0G0V_AA0J0VAJtKF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "declAttributes": [ - "Mutating" - ], - "throwing": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "protocolReq": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5RulesP8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel5RulesP8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "protocolReq": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5RulesP8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel5RulesP8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Protocol", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Player", - "printedName": "Player", - "children": [ - { - "kind": "Var", - "name": "name", - "printedName": "name", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6PlayerC4nameSSvp", - "mangledName": "$s14DouShouQiModel6PlayerC4nameSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "Final", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6PlayerC4nameSSvg", - "mangledName": "$s14DouShouQiModel6PlayerC4nameSSvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "declAttributes": [ - "Final" - ], - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "id", - "printedName": "id", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6PlayerC2idAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel6PlayerC2idAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "Final", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6PlayerC2idAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel6PlayerC2idAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "declAttributes": [ - "Final" - ], - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Player?", - "children": [ - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel6PlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel6PlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6PlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "mangledName": "$s14DouShouQiModel6PlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addPlayedCallbacksListener", - "printedName": "addPlayedCallbacksListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Move?, DouShouQiModel.Player) async throws -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Move?, DouShouQiModel.Player)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6PlayerC26addPlayedCallbacksListeneryyyAA4MoveVSg_ACtYaKcF", - "mangledName": "$s14DouShouQiModel6PlayerC26addPlayedCallbacksListeneryyyAA4MoveVSg_ACtYaKcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "notifyPlayed", - "printedName": "notifyPlayed(withMove:andPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6PlayerC12notifyPlayed8withMove03andE0yAA0I0VSg_ACtYaKF", - "mangledName": "$s14DouShouQiModel6PlayerC12notifyPlayed8withMove03andE0yAA0I0VSg_ACtYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel6PlayerC", - "mangledName": "$s14DouShouQiModel6PlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "GameError", - "printedName": "GameError", - "children": [ - { - "kind": "Var", - "name": "invalidMove", - "printedName": "invalidMove", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO11invalidMoveyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO11invalidMoveyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "nextPlayerError", - "printedName": "nextPlayerError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO010nextPlayerF0yA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO010nextPlayerF0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badPlayerId", - "printedName": "badPlayerId", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> (Swift.String) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(Swift.String) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(message: Swift.String)", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO11badPlayerIdyACSS_tcACmF", - "mangledName": "$s14DouShouQiModel9GameErrorO11badPlayerIdyACSS_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidRules", - "printedName": "invalidRules", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO12invalidRulesyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO12invalidRulesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidPlayer", - "printedName": "invalidPlayer", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO13invalidPlayeryA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO13invalidPlayeryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidGame", - "printedName": "invalidGame", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO07invalidE0yA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO07invalidE0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidBoard", - "printedName": "invalidBoard", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO12invalidBoardyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO12invalidBoardyA2CmF", - "moduleName": "DouShouQiModel" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel9GameErrorO", - "mangledName": "$s14DouShouQiModel9GameErrorO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Error", - "printedName": "Error", - "usr": "s:s5ErrorP", - "mangledName": "$ss5ErrorP" - }, - { - "kind": "Conformance", - "name": "Sendable", - "printedName": "Sendable", - "usr": "s:s8SendableP", - "mangledName": "$ss8SendableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "RandomPlayer", - "printedName": "RandomPlayer", - "children": [ - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12RandomPlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "mangledName": "$s14DouShouQiModel12RandomPlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.RandomPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "RandomPlayer", - "printedName": "DouShouQiModel.RandomPlayer", - "usr": "s:14DouShouQiModel12RandomPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12RandomPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel12RandomPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "overriding": true, - "implicit": true, - "declAttributes": [ - "Override" - ], - "init_kind": "Designated" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel12RandomPlayerC", - "mangledName": "$s14DouShouQiModel12RandomPlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "superclassUsr": "s:14DouShouQiModel8IAPlayerC", - "inheritsConvenienceInitializers": true, - "superclassNames": [ - "DouShouQiModel.IAPlayer", - "DouShouQiModel.Player" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "CellType", - "printedName": "CellType", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "jungle", - "printedName": "jungle", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO6jungleyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO6jungleyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "water", - "printedName": "water", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO5wateryA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO5wateryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "trap", - "printedName": "trap", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO4trapyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO4trapyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "den", - "printedName": "den", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO3denyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO3denyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "allCases", - "printedName": "allCases", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel8CellTypeO8allCasesSayACGvpZ", - "mangledName": "$s14DouShouQiModel8CellTypeO8allCasesSayACGvpZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel8CellTypeO8allCasesSayACGvgZ", - "mangledName": "$s14DouShouQiModel8CellTypeO8allCasesSayACGvgZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel8CellTypeO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel8CellTypeO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel8CellTypeO9hashValueSivp", - "mangledName": "$s14DouShouQiModel8CellTypeO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel8CellTypeO9hashValueSivg", - "mangledName": "$s14DouShouQiModel8CellTypeO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel8CellTypeO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel8CellTypeO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel8CellTypeO", - "mangledName": "$s14DouShouQiModel8CellTypeO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "CaseIterable", - "printedName": "CaseIterable", - "children": [ - { - "kind": "TypeWitness", - "name": "AllCases", - "printedName": "AllCases", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ] - } - ], - "usr": "s:s12CaseIterableP", - "mangledName": "$ss12CaseIterableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Board", - "printedName": "Board", - "children": [ - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5BoardV4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "nbRows", - "printedName": "nbRows", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV6nbRowsSivp", - "mangledName": "$s14DouShouQiModel5BoardV6nbRowsSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl", - "RawDocComment" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV6nbRowsSivg", - "mangledName": "$s14DouShouQiModel5BoardV6nbRowsSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "nbColumns", - "printedName": "nbColumns", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV9nbColumnsSivp", - "mangledName": "$s14DouShouQiModel5BoardV9nbColumnsSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl", - "RawDocComment" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV9nbColumnsSivg", - "mangledName": "$s14DouShouQiModel5BoardV9nbColumnsSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "grid", - "printedName": "grid", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvp", - "mangledName": "$s14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvg", - "mangledName": "$s14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withGrid:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Board?", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel5BoardV8withGridACSgSaySayAA4CellVGG_tcfc", - "mangledName": "$s14DouShouQiModel5BoardV8withGridACSgSaySayAA4CellVGG_tcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "countPieces", - "printedName": "countPieces(of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11countPieces2ofSiAA5OwnerO_tF", - "mangledName": "$s14DouShouQiModel5BoardV11countPieces2ofSiAA5OwnerO_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "countPieces", - "printedName": "countPieces()", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11countPiecesSi04nbOfgI7Player1_Si0higI7Player2tyF", - "mangledName": "$s14DouShouQiModel5BoardV11countPiecesSi04nbOfgI7Player1_Si0higI7Player2tyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "insert", - "printedName": "insert(piece:atRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV6insert5piece5atRow9andColumnAA0E6ResultOAA5PieceV_S2itF", - "mangledName": "$s14DouShouQiModel5BoardV6insert5piece5atRow9andColumnAA0E6ResultOAA5PieceV_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "removePiece", - "printedName": "removePiece(atRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11removePiece5atRow9andColumnAA0E6ResultOSi_SitF", - "mangledName": "$s14DouShouQiModel5BoardV11removePiece5atRow9andColumnAA0E6ResultOSi_SitF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV9hashValueSivp", - "mangledName": "$s14DouShouQiModel5BoardV9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV9hashValueSivg", - "mangledName": "$s14DouShouQiModel5BoardV9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5BoardV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel5BoardV", - "mangledName": "$s14DouShouQiModel5BoardV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Piece", - "printedName": "Piece", - "children": [ - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel5PieceV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel5PieceV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "owner", - "printedName": "owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV5ownerAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel5PieceV5ownerAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV5ownerAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel5PieceV5ownerAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "animal", - "printedName": "animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV6animalAA6AnimalOvp", - "mangledName": "$s14DouShouQiModel5PieceV6animalAA6AnimalOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV6animalAA6AnimalOvg", - "mangledName": "$s14DouShouQiModel5PieceV6animalAA6AnimalOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withOwner:andAnimal:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel5PieceV9withOwner9andAnimalAcA0G0O_AA0I0Otcfc", - "mangledName": "$s14DouShouQiModel5PieceV9withOwner9andAnimalAcA0G0O_AA0I0Otcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV9hashValueSivp", - "mangledName": "$s14DouShouQiModel5PieceV9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV9hashValueSivg", - "mangledName": "$s14DouShouQiModel5PieceV9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5PieceV4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5PieceV4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5PieceV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5PieceV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel5PieceV", - "mangledName": "$s14DouShouQiModel5PieceV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "InvalidBoardError", - "printedName": "InvalidBoardError", - "children": [ - { - "kind": "Var", - "name": "unknownError", - "printedName": "unknownError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO07unknownG0yA2CmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO07unknownG0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badDimensions", - "printedName": "badDimensions", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(nbRows: Swift.Int, nbColumns: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO13badDimensionsyACSi_SitcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO13badDimensionsyACSi_SitcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badCellType", - "printedName": "badCellType", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.CellType, Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType, Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO11badCellTypeyAcA0iJ0O_S2itcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO11badCellTypeyAcA0iJ0O_S2itcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "multipleOccurenceOfSamePiece", - "printedName": "multipleOccurenceOfSamePiece", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO28multipleOccurenceOfSamePieceyAcA0L0V_tcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO28multipleOccurenceOfSamePieceyAcA0L0V_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "pieceWithNoOwner", - "printedName": "pieceWithNoOwner", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO16pieceWithNoOwneryAcA5PieceV_tcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO16pieceWithNoOwneryAcA5PieceV_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "pieceNotAllowedOnThisCell", - "printedName": "pieceNotAllowedOnThisCell", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece, DouShouQiModel.Cell) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece, DouShouQiModel.Cell) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO25pieceNotAllowedOnThisCellyAcA5PieceV_AA0M0VtcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO25pieceNotAllowedOnThisCellyAcA5PieceV_AA0M0VtcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Error", - "printedName": "Error", - "usr": "s:s5ErrorP", - "mangledName": "$ss5ErrorP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Sendable", - "printedName": "Sendable", - "usr": "s:s8SendableP", - "mangledName": "$ss8SendableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Owner", - "printedName": "Owner", - "children": [ - { - "kind": "Var", - "name": "noOne", - "printedName": "noOne", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO5noOneyA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO5noOneyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "player1", - "printedName": "player1", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO7player1yA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO7player1yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "player2", - "printedName": "player2", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO7player2yA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO7player2yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "simpleDescription", - "printedName": "simpleDescription", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5OwnerO17simpleDescriptionSSvp", - "mangledName": "$s14DouShouQiModel5OwnerO17simpleDescriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5OwnerO17simpleDescriptionSSvg", - "mangledName": "$s14DouShouQiModel5OwnerO17simpleDescriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5OwnerO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5OwnerO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5OwnerO9hashValueSivp", - "mangledName": "$s14DouShouQiModel5OwnerO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5OwnerO9hashValueSivg", - "mangledName": "$s14DouShouQiModel5OwnerO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5OwnerO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5OwnerO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel5OwnerO", - "mangledName": "$s14DouShouQiModel5OwnerO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "RawDocComment" - ] - }, - { - "kind": "TypeDecl", - "name": "IAPlayer", - "printedName": "IAPlayer", - "children": [ - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.IAPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "IAPlayer", - "printedName": "DouShouQiModel.IAPlayer", - "usr": "s:14DouShouQiModel8IAPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel8IAPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel8IAPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "overriding": true, - "implicit": true, - "declAttributes": [ - "Override" - ], - "init_kind": "Designated" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel8IAPlayerC", - "mangledName": "$s14DouShouQiModel8IAPlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "superclassUsr": "s:14DouShouQiModel6PlayerC", - "inheritsConvenienceInitializers": true, - "superclassNames": [ - "DouShouQiModel.Player" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Move", - "printedName": "Move", - "children": [ - { - "kind": "Var", - "name": "owner", - "printedName": "owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV5ownerAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel4MoveV5ownerAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV5ownerAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel4MoveV5ownerAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rowOrigin", - "printedName": "rowOrigin", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV9rowOriginSivp", - "mangledName": "$s14DouShouQiModel4MoveV9rowOriginSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV9rowOriginSivg", - "mangledName": "$s14DouShouQiModel4MoveV9rowOriginSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "columnOrigin", - "printedName": "columnOrigin", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV12columnOriginSivp", - "mangledName": "$s14DouShouQiModel4MoveV12columnOriginSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV12columnOriginSivg", - "mangledName": "$s14DouShouQiModel4MoveV12columnOriginSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rowDestination", - "printedName": "rowDestination", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV14rowDestinationSivp", - "mangledName": "$s14DouShouQiModel4MoveV14rowDestinationSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV14rowDestinationSivg", - "mangledName": "$s14DouShouQiModel4MoveV14rowDestinationSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "columnDestination", - "printedName": "columnDestination", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV17columnDestinationSivp", - "mangledName": "$s14DouShouQiModel4MoveV17columnDestinationSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV17columnDestinationSivg", - "mangledName": "$s14DouShouQiModel4MoveV17columnDestinationSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(of:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4MoveV2of7fromRow13andFromColumn02toH00i2ToK0AcA5OwnerO_S4itcfc", - "mangledName": "$s14DouShouQiModel4MoveV2of7fromRow13andFromColumn02toH00i2ToK0AcA5OwnerO_S4itcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel4MoveV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel4MoveV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4MoveV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel4MoveV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel4MoveV", - "mangledName": "$s14DouShouQiModel4MoveV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Animal", - "printedName": "Animal", - "children": [ - { - "kind": "Var", - "name": "rat", - "printedName": "rat", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3ratyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3ratyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cat", - "printedName": "cat", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3catyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3catyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "dog", - "printedName": "dog", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3dogyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3dogyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "wolf", - "printedName": "wolf", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO4wolfyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO4wolfyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "leopard", - "printedName": "leopard", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO7leopardyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO7leopardyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "tiger", - "printedName": "tiger", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO5tigeryA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO5tigeryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "lion", - "printedName": "lion", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO4lionyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO4lionyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "elephant", - "printedName": "elephant", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO8elephantyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO8elephantyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "rawValue", - "printedName": "rawValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6AnimalO8rawValueSivp", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6AnimalO8rawValueSivg", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(rawValue:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Animal?", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel6AnimalO8rawValueACSgSi_tcfc", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueACSgSi_tcfc", - "moduleName": "DouShouQiModel", - "implicit": true, - "init_kind": "Designated" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel6AnimalO", - "mangledName": "$s14DouShouQiModel6AnimalO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "enumRawTypeName": "Int", - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "RawRepresentable", - "printedName": "RawRepresentable", - "children": [ - { - "kind": "TypeWitness", - "name": "RawValue", - "printedName": "RawValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ], - "usr": "s:SY", - "mangledName": "$sSY" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Game", - "printedName": "Game", - "children": [ - { - "kind": "Var", - "name": "board", - "printedName": "board", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameC5boardAA5BoardVvp", - "mangledName": "$s14DouShouQiModel4GameC5boardAA5BoardVvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameC5boardAA5BoardVvg", - "mangledName": "$s14DouShouQiModel4GameC5boardAA5BoardVvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rules", - "printedName": "rules", - "children": [ - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameC5rulesAA5Rules_pvp", - "mangledName": "$s14DouShouQiModel4GameC5rulesAA5Rules_pvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameC5rulesAA5Rules_pvg", - "mangledName": "$s14DouShouQiModel4GameC5rulesAA5Rules_pvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "players", - "printedName": "players", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Owner : DouShouQiModel.Player]", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameC7playersSDyAA5OwnerOAA6PlayerCGvp", - "mangledName": "$s14DouShouQiModel4GameC7playersSDyAA5OwnerOAA6PlayerCGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Final", - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Owner : DouShouQiModel.Player]", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameC7playersSDyAA5OwnerOAA6PlayerCGvg", - "mangledName": "$s14DouShouQiModel4GameC7playersSDyAA5OwnerOAA6PlayerCGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "declAttributes": [ - "Final" - ], - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withRules:andPlayer1:andPlayer2:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameC" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4GameC9withRules10andPlayer10H7Player2AcA0G0_p_AA6PlayerCAItKcfc", - "mangledName": "$s14DouShouQiModel4GameC9withRules10andPlayer10H7Player2AcA0G0_p_AA6PlayerCAItKcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withBoard:andRules:andPlayer1:andPlayer2:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameC" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4GameC9withBoard8andRules0H7Player10H7Player2AcA0G0V_AA0I0_pAA6PlayerCALtKcfc", - "mangledName": "$s14DouShouQiModel4GameC9withBoard8andRules0H7Player10H7Player2AcA0G0V_AA0I0_pAA6PlayerCALtKcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl", - "RawDocComment" - ], - "throwing": true, - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "addGameStartedListener", - "printedName": "addGameStartedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC03addE15StartedListeneryyyAA5BoardVcF", - "mangledName": "$s14DouShouQiModel4GameC03addE15StartedListeneryyyAA5BoardVcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addPlayerNotifiedListener", - "printedName": "addPlayerNotifiedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Player) async throws -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Player)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC25addPlayerNotifiedListeneryyyAA5BoardV_AA0G0CtYaKcF", - "mangledName": "$s14DouShouQiModel4GameC25addPlayerNotifiedListeneryyyAA5BoardV_AA0G0CtYaKcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addGameChangedListener", - "printedName": "addGameChangedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Game) async -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameC" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC03addE15ChangedListeneryyyACYacF", - "mangledName": "$s14DouShouQiModel4GameC03addE15ChangedListeneryyyACYacF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addGameOverListener", - "printedName": "addGameOverListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Player?", - "children": [ - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:Sq" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC03addE12OverListeneryyyAA5BoardV_AA6ResultOAA6PlayerCSgtcF", - "mangledName": "$s14DouShouQiModel4GameC03addE12OverListeneryyyAA5BoardV_AA6ResultOAA6PlayerCSgtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addMoveChosenCallbacksListener", - "printedName": "addMoveChosenCallbacksListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC30addMoveChosenCallbacksListeneryyyAA5BoardV_AA0G0VAA6PlayerCtcF", - "mangledName": "$s14DouShouQiModel4GameC30addMoveChosenCallbacksListeneryyyAA5BoardV_AA0G0VAA6PlayerCtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addInvalidMoveCallbacksListener", - "printedName": "addInvalidMoveCallbacksListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC31addInvalidMoveCallbacksListeneryyyAA5BoardV_AA0H0VAA6PlayerCSbtcF", - "mangledName": "$s14DouShouQiModel4GameC31addInvalidMoveCallbacksListeneryyyAA5BoardV_AA0H0VAA6PlayerCSbtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addBoardChangedListener", - "printedName": "addBoardChangedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC23addBoardChangedListeneryyyAA0G0VcF", - "mangledName": "$s14DouShouQiModel4GameC23addBoardChangedListeneryyyAA0G0VcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addPieceRemovedListener", - "printedName": "addPieceRemovedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(Swift.Int, Swift.Int, DouShouQiModel.Piece) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Int, Swift.Int, DouShouQiModel.Piece)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC23addPieceRemovedListeneryyySi_SiAA0G0VtcF", - "mangledName": "$s14DouShouQiModel4GameC23addPieceRemovedListeneryyySi_SiAA0G0VtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "onPlayed", - "printedName": "onPlayed(with:from:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC8onPlayed4with4fromyAA4MoveVSg_AA6PlayerCtYaKF", - "mangledName": "$s14DouShouQiModel4GameC8onPlayed4with4fromyAA4MoveVSg_AA6PlayerCtYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "isOver", - "printedName": "isOver", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameC6isOverSbvp", - "mangledName": "$s14DouShouQiModel4GameC6isOverSbvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameC6isOverSbvg", - "mangledName": "$s14DouShouQiModel4GameC6isOverSbvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "start", - "printedName": "start()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC5startyyYaKF", - "mangledName": "$s14DouShouQiModel4GameC5startyyYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel4GameC", - "mangledName": "$s14DouShouQiModel4GameC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl", - "RawDocComment" - ] - } - ], - "json_format_version": 8 - }, - "ConstValues": [ - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 81, - "length": 1, - "value": "9" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 111, - "length": 1, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 148, - "length": 1, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 3048, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 3088, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 3941, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Dictionary", - "offset": 4285, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 4475, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 4517, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 4565, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 4967, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 6169, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 6189, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 6229, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 9685, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 10586, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 10906, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11013, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 11170, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11188, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11280, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11325, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11433, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11477, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11569, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11632, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11740, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 12266, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12307, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12319, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12326, - "length": 2, - "value": "-1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12703, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12714, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12721, - "length": 2, - "value": "-1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 13086, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 13464, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 15597, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 15704, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 15728, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 15845, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 15869, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 16049, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 16149, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 16579, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 16584, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Dictionary", - "offset": 16948, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 17004, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 122, - "length": 81, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 147, - "length": 4, - "value": "\"ΓΈ\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 152, - "length": 2, - "value": "\" on \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 167, - "length": 1, - "value": "\", \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 202, - "length": 1, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 89, - "length": 1, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 119, - "length": 1, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2067, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2107, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2267, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2277, - "length": 1, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2419, - "length": 1, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2429, - "length": 1, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2964, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3004, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 3773, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3793, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3833, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 4182, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 4292, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 4531, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 4639, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4773, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4782, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4800, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4809, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4925, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 5013, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 6962, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 7077, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7105, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 7230, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7258, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7350, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Dictionary", - "offset": 8072, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 8128, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Player.swift", - "kind": "Array", - "offset": 418, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "BooleanLiteral", - "offset": 475, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 570, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 694, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 981, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 996, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1015, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1049, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1212, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1278, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1548, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1579, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1979, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 2010, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 122, - "length": 40, - "value": "\"[\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 150, - "length": 1, - "value": "\":\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 160, - "length": 1, - "value": "\"]\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 183, - "length": 3, - "value": "\"x\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 229, - "length": 3, - "value": "\"1\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 275, - "length": 3, - "value": "\"2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 616, - "length": 87, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 625, - "length": 1, - "value": "\": [\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 640, - "length": 1, - "value": "\",\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 656, - "length": 1, - "value": "\"] -> [\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 679, - "length": 1, - "value": "\", \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 701, - "length": 1, - "value": "\"]\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "StringLiteral", - "offset": 513, - "length": 55, - "value": "\"The ids of players are not .player1 and then .player2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "StringLiteral", - "offset": 1483, - "length": 55, - "value": "\"The ids of players are not .player1 and then .player2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 1754, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 2090, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 2582, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 3012, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 3416, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 3827, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 4261, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 4580, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "BooleanLiteral", - "offset": 6361, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "BooleanLiteral", - "offset": 7044, - "length": 5, - "value": "false" - } - ] -} \ No newline at end of file diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface b/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface deleted file mode 100644 index d1cea63..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface +++ /dev/null @@ -1,266 +0,0 @@ -// swift-interface-format-version: 1.0 -// swift-compiler-version: Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5) -// swift-module-flags: -target arm64-apple-ios16.0-simulator -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -module-name DouShouQiModel -// swift-module-flags-ignorable: -enable-bare-slash-regex -@_exported import DouShouQiModel -import Foundation -import Swift -import _Concurrency -import _StringProcessing -import _SwiftConcurrencyShims -public enum Result : Swift.Equatable { - case notFinished - case even - case winner(winner: DouShouQiModel.Owner, reason: DouShouQiModel.WinningReason) - public static func == (a: DouShouQiModel.Result, b: DouShouQiModel.Result) -> Swift.Bool -} -public enum WinningReason { - case denReached, noMorePieces, tooManyOccurences, noMovesLeft - public static func == (a: DouShouQiModel.WinningReason, b: DouShouQiModel.WinningReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -public enum BoardResult : Swift.Equatable { - case unknown - case ok(piece: DouShouQiModel.Piece?) - case failed(reason: DouShouQiModel.BoardFailingReason) - public static func == (a: DouShouQiModel.BoardResult, b: DouShouQiModel.BoardResult) -> Swift.Bool -} -public enum BoardFailingReason { - case unknown, outOfBounds, cellNotEmpty, cellEmpty - public static func == (a: DouShouQiModel.BoardFailingReason, b: DouShouQiModel.BoardFailingReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class HumanPlayer : DouShouQiModel.Player { - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner, andInputMethod input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - #if compiler(>=5.3) && $AsyncAwait - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - public func changeInput(input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - #if compiler(>=5.3) && $AsyncAwait - public func chooseMove(_ move: DouShouQiModel.Move?) async throws - #endif - @objc deinit -} -public struct ClassicRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public struct Cell : Swift.CustomStringConvertible, Swift.Equatable { - public var description: Swift.String { - get - } - public let cellType: DouShouQiModel.CellType - public let initialOwner: DouShouQiModel.Owner - public var piece: DouShouQiModel.Piece? - public init(ofType cellType: DouShouQiModel.CellType, ownedBy initialOwner: DouShouQiModel.Owner = .noOne, withPiece piece: DouShouQiModel.Piece? = nil) - public static func == (a: DouShouQiModel.Cell, b: DouShouQiModel.Cell) -> Swift.Bool -} -public struct VerySimpleRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public protocol Rules { - static func createBoard() -> DouShouQiModel.Board - static func checkBoard(_ board: DouShouQiModel.Board) throws - func getNextPlayer() -> DouShouQiModel.Owner - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - func isMoveValid(onBoard: DouShouQiModel.Board, fromRow: Swift.Int, andFromColumn: Swift.Int, toRow: Swift.Int, andToColumn: Swift.Int) -> Swift.Bool - func isMoveValid(onBoard: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - func isGameOver(withBoard: DouShouQiModel.Board, andLastRowPlayed: Swift.Int, andLastColumnPlayer: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - var occurences: [DouShouQiModel.Board : Swift.Int] { get } - var historic: [DouShouQiModel.Move] { get } -} -public class Player { - final public let name: Swift.String - final public let id: DouShouQiModel.Owner - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - #if compiler(>=5.3) && $AsyncAwait - public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - #if compiler(>=5.3) && $AsyncAwait - public func addPlayedCallbacksListener(_ listener: @escaping (DouShouQiModel.Move?, DouShouQiModel.Player) async throws -> Swift.Void) - #endif - #if compiler(>=5.3) && $AsyncAwait - public func notifyPlayed(withMove move: DouShouQiModel.Move?, andPlayer player: DouShouQiModel.Player) async throws - #endif - @objc deinit -} -public enum GameError : Swift.Error { - case invalidMove, nextPlayerError, badPlayerId(message: Swift.String), invalidRules, invalidPlayer, invalidGame, invalidBoard -} -@_inheritsConvenienceInitializers public class RandomPlayer : DouShouQiModel.IAPlayer { - #if compiler(>=5.3) && $AsyncAwait - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public enum CellType : Swift.CaseIterable { - case unknown, jungle, water, trap, den - public static func == (a: DouShouQiModel.CellType, b: DouShouQiModel.CellType) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public typealias AllCases = [DouShouQiModel.CellType] - public static var allCases: [DouShouQiModel.CellType] { - get - } - public var hashValue: Swift.Int { - get - } -} -public struct Board : Swift.Hashable { - public func hash(into hasher: inout Swift.Hasher) - public let nbRows: Swift.Int - public let nbColumns: Swift.Int - public var grid: [[DouShouQiModel.Cell]] { - get - } - public init?(withGrid grid: [[DouShouQiModel.Cell]]) - public func countPieces(of owner: DouShouQiModel.Owner) -> Swift.Int - public func countPieces() -> (nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int) - public mutating func insert(piece: DouShouQiModel.Piece, atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public mutating func removePiece(atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public static func == (a: DouShouQiModel.Board, b: DouShouQiModel.Board) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public struct Piece : Swift.CustomStringConvertible, Swift.Hashable { - public var description: Swift.String { - get - } - public let owner: DouShouQiModel.Owner - public let animal: DouShouQiModel.Animal - public init(withOwner owner: DouShouQiModel.Owner, andAnimal animal: DouShouQiModel.Animal) - public func hash(into hasher: inout Swift.Hasher) - public static func == (a: DouShouQiModel.Piece, b: DouShouQiModel.Piece) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public enum InvalidBoardError : Swift.Error, Swift.Equatable { - case unknownError - case badDimensions(nbRows: Swift.Int, nbColumns: Swift.Int) - case badCellType(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int) - case multipleOccurenceOfSamePiece(piece: DouShouQiModel.Piece) - case pieceWithNoOwner(piece: DouShouQiModel.Piece) - case pieceNotAllowedOnThisCell(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell) - public static func == (a: DouShouQiModel.InvalidBoardError, b: DouShouQiModel.InvalidBoardError) -> Swift.Bool -} -public enum Owner { - case noOne, player1, player2 - public var simpleDescription: Swift.String { - get - } - public static func == (a: DouShouQiModel.Owner, b: DouShouQiModel.Owner) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class IAPlayer : DouShouQiModel.Player { - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public struct Move : Swift.CustomStringConvertible, Swift.Equatable { - public let owner: DouShouQiModel.Owner - public let rowOrigin: Swift.Int - public let columnOrigin: Swift.Int - public let rowDestination: Swift.Int - public let columnDestination: Swift.Int - public init(of owner: DouShouQiModel.Owner, fromRow rowOrigin: Swift.Int, andFromColumn colOrigin: Swift.Int, toRow rowDest: Swift.Int, andToColumn colDest: Swift.Int) - public var description: Swift.String { - get - } - public static func == (a: DouShouQiModel.Move, b: DouShouQiModel.Move) -> Swift.Bool -} -public enum Animal : Swift.Int { - case rat, cat, dog, wolf, leopard, tiger, lion, elephant - public init?(rawValue: Swift.Int) - public typealias RawValue = Swift.Int - public var rawValue: Swift.Int { - get - } -} -public class Game { - public var board: DouShouQiModel.Board { - get - } - public var rules: any DouShouQiModel.Rules { - get - } - final public let players: [DouShouQiModel.Owner : DouShouQiModel.Player] - public init(withRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public init(withBoard board: DouShouQiModel.Board, andRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public func addGameStartedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public func addPlayerNotifiedListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Player) async throws -> Swift.Void) - #endif - #if compiler(>=5.3) && $AsyncAwait - public func addGameChangedListener(_ listener: @escaping (DouShouQiModel.Game) async -> Swift.Void) - #endif - public func addGameOverListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> Swift.Void) - public func addMoveChosenCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> Swift.Void) - public func addInvalidMoveCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> Swift.Void) - public func addBoardChangedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - public func addPieceRemovedListener(_ listener: @escaping (Swift.Int, Swift.Int, DouShouQiModel.Piece) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public func onPlayed(with move: DouShouQiModel.Move?, from player: DouShouQiModel.Player) async throws - #endif - public var isOver: Swift.Bool { - get - } - #if compiler(>=5.3) && $AsyncAwait - public func start() async throws - #endif - @objc deinit -} -extension DouShouQiModel.WinningReason : Swift.Equatable {} -extension DouShouQiModel.WinningReason : Swift.Hashable {} -extension DouShouQiModel.BoardFailingReason : Swift.Equatable {} -extension DouShouQiModel.BoardFailingReason : Swift.Hashable {} -extension DouShouQiModel.CellType : Swift.Equatable {} -extension DouShouQiModel.CellType : Swift.Hashable {} -extension DouShouQiModel.Owner : Swift.Equatable {} -extension DouShouQiModel.Owner : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.Equatable {} -extension DouShouQiModel.Animal : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.RawRepresentable {} diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftdoc b/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftdoc deleted file mode 100644 index afa4fb6b0c4573a14664563bf1804a197eea511f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 696 zcmaDfX9YVW2Lpp90|Ns)qlJ#c+7Dby0=U-%aP4>CT5rI$Ux91Q2d>2%xY!*xUFbQa zy@N^j#3Ahshx9v`wD%m+SaZl(Xp58P1t*OOP8vYc#=uE?50mBGjnH89XK)H48yX)=@m&2h;u4bI3f4b1e-Pf5*TV0Z@{ZGs_BOfa>x}bCXhw6!Oy)ih!aZx+EjBSOKgS>w zeSHOdYC$0b2F%*U=hT6$XduSv2+O=A=lq<~+&r*5z@PM80|e diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftinterface b/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftinterface deleted file mode 100644 index d1cea63..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftinterface +++ /dev/null @@ -1,266 +0,0 @@ -// swift-interface-format-version: 1.0 -// swift-compiler-version: Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5) -// swift-module-flags: -target arm64-apple-ios16.0-simulator -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -module-name DouShouQiModel -// swift-module-flags-ignorable: -enable-bare-slash-regex -@_exported import DouShouQiModel -import Foundation -import Swift -import _Concurrency -import _StringProcessing -import _SwiftConcurrencyShims -public enum Result : Swift.Equatable { - case notFinished - case even - case winner(winner: DouShouQiModel.Owner, reason: DouShouQiModel.WinningReason) - public static func == (a: DouShouQiModel.Result, b: DouShouQiModel.Result) -> Swift.Bool -} -public enum WinningReason { - case denReached, noMorePieces, tooManyOccurences, noMovesLeft - public static func == (a: DouShouQiModel.WinningReason, b: DouShouQiModel.WinningReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -public enum BoardResult : Swift.Equatable { - case unknown - case ok(piece: DouShouQiModel.Piece?) - case failed(reason: DouShouQiModel.BoardFailingReason) - public static func == (a: DouShouQiModel.BoardResult, b: DouShouQiModel.BoardResult) -> Swift.Bool -} -public enum BoardFailingReason { - case unknown, outOfBounds, cellNotEmpty, cellEmpty - public static func == (a: DouShouQiModel.BoardFailingReason, b: DouShouQiModel.BoardFailingReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class HumanPlayer : DouShouQiModel.Player { - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner, andInputMethod input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - #if compiler(>=5.3) && $AsyncAwait - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - public func changeInput(input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - #if compiler(>=5.3) && $AsyncAwait - public func chooseMove(_ move: DouShouQiModel.Move?) async throws - #endif - @objc deinit -} -public struct ClassicRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public struct Cell : Swift.CustomStringConvertible, Swift.Equatable { - public var description: Swift.String { - get - } - public let cellType: DouShouQiModel.CellType - public let initialOwner: DouShouQiModel.Owner - public var piece: DouShouQiModel.Piece? - public init(ofType cellType: DouShouQiModel.CellType, ownedBy initialOwner: DouShouQiModel.Owner = .noOne, withPiece piece: DouShouQiModel.Piece? = nil) - public static func == (a: DouShouQiModel.Cell, b: DouShouQiModel.Cell) -> Swift.Bool -} -public struct VerySimpleRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public protocol Rules { - static func createBoard() -> DouShouQiModel.Board - static func checkBoard(_ board: DouShouQiModel.Board) throws - func getNextPlayer() -> DouShouQiModel.Owner - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - func isMoveValid(onBoard: DouShouQiModel.Board, fromRow: Swift.Int, andFromColumn: Swift.Int, toRow: Swift.Int, andToColumn: Swift.Int) -> Swift.Bool - func isMoveValid(onBoard: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - func isGameOver(withBoard: DouShouQiModel.Board, andLastRowPlayed: Swift.Int, andLastColumnPlayer: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - var occurences: [DouShouQiModel.Board : Swift.Int] { get } - var historic: [DouShouQiModel.Move] { get } -} -public class Player { - final public let name: Swift.String - final public let id: DouShouQiModel.Owner - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - #if compiler(>=5.3) && $AsyncAwait - public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - #if compiler(>=5.3) && $AsyncAwait - public func addPlayedCallbacksListener(_ listener: @escaping (DouShouQiModel.Move?, DouShouQiModel.Player) async throws -> Swift.Void) - #endif - #if compiler(>=5.3) && $AsyncAwait - public func notifyPlayed(withMove move: DouShouQiModel.Move?, andPlayer player: DouShouQiModel.Player) async throws - #endif - @objc deinit -} -public enum GameError : Swift.Error { - case invalidMove, nextPlayerError, badPlayerId(message: Swift.String), invalidRules, invalidPlayer, invalidGame, invalidBoard -} -@_inheritsConvenienceInitializers public class RandomPlayer : DouShouQiModel.IAPlayer { - #if compiler(>=5.3) && $AsyncAwait - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public enum CellType : Swift.CaseIterable { - case unknown, jungle, water, trap, den - public static func == (a: DouShouQiModel.CellType, b: DouShouQiModel.CellType) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public typealias AllCases = [DouShouQiModel.CellType] - public static var allCases: [DouShouQiModel.CellType] { - get - } - public var hashValue: Swift.Int { - get - } -} -public struct Board : Swift.Hashable { - public func hash(into hasher: inout Swift.Hasher) - public let nbRows: Swift.Int - public let nbColumns: Swift.Int - public var grid: [[DouShouQiModel.Cell]] { - get - } - public init?(withGrid grid: [[DouShouQiModel.Cell]]) - public func countPieces(of owner: DouShouQiModel.Owner) -> Swift.Int - public func countPieces() -> (nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int) - public mutating func insert(piece: DouShouQiModel.Piece, atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public mutating func removePiece(atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public static func == (a: DouShouQiModel.Board, b: DouShouQiModel.Board) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public struct Piece : Swift.CustomStringConvertible, Swift.Hashable { - public var description: Swift.String { - get - } - public let owner: DouShouQiModel.Owner - public let animal: DouShouQiModel.Animal - public init(withOwner owner: DouShouQiModel.Owner, andAnimal animal: DouShouQiModel.Animal) - public func hash(into hasher: inout Swift.Hasher) - public static func == (a: DouShouQiModel.Piece, b: DouShouQiModel.Piece) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public enum InvalidBoardError : Swift.Error, Swift.Equatable { - case unknownError - case badDimensions(nbRows: Swift.Int, nbColumns: Swift.Int) - case badCellType(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int) - case multipleOccurenceOfSamePiece(piece: DouShouQiModel.Piece) - case pieceWithNoOwner(piece: DouShouQiModel.Piece) - case pieceNotAllowedOnThisCell(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell) - public static func == (a: DouShouQiModel.InvalidBoardError, b: DouShouQiModel.InvalidBoardError) -> Swift.Bool -} -public enum Owner { - case noOne, player1, player2 - public var simpleDescription: Swift.String { - get - } - public static func == (a: DouShouQiModel.Owner, b: DouShouQiModel.Owner) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class IAPlayer : DouShouQiModel.Player { - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public struct Move : Swift.CustomStringConvertible, Swift.Equatable { - public let owner: DouShouQiModel.Owner - public let rowOrigin: Swift.Int - public let columnOrigin: Swift.Int - public let rowDestination: Swift.Int - public let columnDestination: Swift.Int - public init(of owner: DouShouQiModel.Owner, fromRow rowOrigin: Swift.Int, andFromColumn colOrigin: Swift.Int, toRow rowDest: Swift.Int, andToColumn colDest: Swift.Int) - public var description: Swift.String { - get - } - public static func == (a: DouShouQiModel.Move, b: DouShouQiModel.Move) -> Swift.Bool -} -public enum Animal : Swift.Int { - case rat, cat, dog, wolf, leopard, tiger, lion, elephant - public init?(rawValue: Swift.Int) - public typealias RawValue = Swift.Int - public var rawValue: Swift.Int { - get - } -} -public class Game { - public var board: DouShouQiModel.Board { - get - } - public var rules: any DouShouQiModel.Rules { - get - } - final public let players: [DouShouQiModel.Owner : DouShouQiModel.Player] - public init(withRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public init(withBoard board: DouShouQiModel.Board, andRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public func addGameStartedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public func addPlayerNotifiedListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Player) async throws -> Swift.Void) - #endif - #if compiler(>=5.3) && $AsyncAwait - public func addGameChangedListener(_ listener: @escaping (DouShouQiModel.Game) async -> Swift.Void) - #endif - public func addGameOverListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> Swift.Void) - public func addMoveChosenCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> Swift.Void) - public func addInvalidMoveCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> Swift.Void) - public func addBoardChangedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - public func addPieceRemovedListener(_ listener: @escaping (Swift.Int, Swift.Int, DouShouQiModel.Piece) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public func onPlayed(with move: DouShouQiModel.Move?, from player: DouShouQiModel.Player) async throws - #endif - public var isOver: Swift.Bool { - get - } - #if compiler(>=5.3) && $AsyncAwait - public func start() async throws - #endif - @objc deinit -} -extension DouShouQiModel.WinningReason : Swift.Equatable {} -extension DouShouQiModel.WinningReason : Swift.Hashable {} -extension DouShouQiModel.BoardFailingReason : Swift.Equatable {} -extension DouShouQiModel.BoardFailingReason : Swift.Hashable {} -extension DouShouQiModel.CellType : Swift.Equatable {} -extension DouShouQiModel.CellType : Swift.Hashable {} -extension DouShouQiModel.Owner : Swift.Equatable {} -extension DouShouQiModel.Owner : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.Equatable {} -extension DouShouQiModel.Animal : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.RawRepresentable {} diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.abi.json b/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.abi.json deleted file mode 100644 index c28e9fd..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.abi.json +++ /dev/null @@ -1,8546 +0,0 @@ -{ - "ABIRoot": { - "kind": "Root", - "name": "TopLevel", - "printedName": "TopLevel", - "children": [ - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Result", - "printedName": "Result", - "children": [ - { - "kind": "Var", - "name": "notFinished", - "printedName": "notFinished", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Result.Type) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO11notFinishedyA2CmF", - "mangledName": "$s14DouShouQiModel6ResultO11notFinishedyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "even", - "printedName": "even", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Result.Type) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO4evenyA2CmF", - "mangledName": "$s14DouShouQiModel6ResultO4evenyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "winner", - "printedName": "winner", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Result.Type) -> (DouShouQiModel.Owner, DouShouQiModel.WinningReason) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner, DouShouQiModel.WinningReason) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(winner: DouShouQiModel.Owner, reason: DouShouQiModel.WinningReason)", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO6winneryAcA5OwnerO_AA13WinningReasonOtcACmF", - "mangledName": "$s14DouShouQiModel6ResultO6winneryAcA5OwnerO_AA13WinningReasonOtcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6ResultO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel6ResultO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel6ResultO", - "mangledName": "$s14DouShouQiModel6ResultO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "TypeDecl", - "name": "WinningReason", - "printedName": "WinningReason", - "children": [ - { - "kind": "Var", - "name": "denReached", - "printedName": "denReached", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO10denReachedyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO10denReachedyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "noMorePieces", - "printedName": "noMorePieces", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO12noMorePiecesyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO12noMorePiecesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "tooManyOccurences", - "printedName": "tooManyOccurences", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO17tooManyOccurencesyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO17tooManyOccurencesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "noMovesLeft", - "printedName": "noMovesLeft", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO11noMovesLeftyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO11noMovesLeftyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel13WinningReasonO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel13WinningReasonO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel13WinningReasonO9hashValueSivp", - "mangledName": "$s14DouShouQiModel13WinningReasonO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel13WinningReasonO9hashValueSivg", - "mangledName": "$s14DouShouQiModel13WinningReasonO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel13WinningReasonO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel13WinningReasonO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel13WinningReasonO", - "mangledName": "$s14DouShouQiModel13WinningReasonO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "BoardResult", - "printedName": "BoardResult", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel11BoardResultO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "ok", - "printedName": "ok", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> (DouShouQiModel.Piece?) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece?) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece?)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO2okyAcA5PieceVSg_tcACmF", - "mangledName": "$s14DouShouQiModel11BoardResultO2okyAcA5PieceVSg_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "failed", - "printedName": "failed", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> (DouShouQiModel.BoardFailingReason) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(reason: DouShouQiModel.BoardFailingReason)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO6failedyAcA0E13FailingReasonO_tcACmF", - "mangledName": "$s14DouShouQiModel11BoardResultO6failedyAcA0E13FailingReasonO_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11BoardResultO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel11BoardResultO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel11BoardResultO", - "mangledName": "$s14DouShouQiModel11BoardResultO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "TypeDecl", - "name": "BoardFailingReason", - "printedName": "BoardFailingReason", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "outOfBounds", - "printedName": "outOfBounds", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO11outOfBoundsyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO11outOfBoundsyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cellNotEmpty", - "printedName": "cellNotEmpty", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO12cellNotEmptyyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO12cellNotEmptyyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cellEmpty", - "printedName": "cellEmpty", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9cellEmptyyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9cellEmptyyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel18BoardFailingReasonO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9hashValueSivp", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9hashValueSivg", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel18BoardFailingReasonO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel18BoardFailingReasonO", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "HumanPlayer", - "printedName": "HumanPlayer", - "children": [ - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:andInputMethod:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.HumanPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ] - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel11HumanPlayerC8withName5andId0I11InputMethodACSgSS_AA5OwnerOAA4MoveVSgACctcfc", - "mangledName": "$s14DouShouQiModel11HumanPlayerC8withName5andId0I11InputMethodACSgSS_AA5OwnerOAA4MoveVSgACctcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.HumanPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel11HumanPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel11HumanPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11HumanPlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "mangledName": "$s14DouShouQiModel11HumanPlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "changeInput", - "printedName": "changeInput(input:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11HumanPlayerC11changeInput5inputyAA4MoveVSgACc_tF", - "mangledName": "$s14DouShouQiModel11HumanPlayerC11changeInput5inputyAA4MoveVSgACc_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11HumanPlayerC10chooseMoveyyAA0H0VSgYaKF", - "mangledName": "$s14DouShouQiModel11HumanPlayerC10chooseMoveyyAA0H0VSgYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel11HumanPlayerC", - "mangledName": "$s14DouShouQiModel11HumanPlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "superclassUsr": "s:14DouShouQiModel6PlayerC", - "inheritsConvenienceInitializers": true, - "superclassNames": [ - "DouShouQiModel.Player" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "ClassicRules", - "printedName": "ClassicRules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11createBoardAA0H0VyFZ", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11createBoardAA0H0VyFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10checkBoardyyAA0H0VKFZ", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10checkBoardyyAA0H0VKFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init()", - "children": [ - { - "kind": "TypeNominal", - "name": "ClassicRules", - "printedName": "DouShouQiModel.ClassicRules", - "usr": "s:14DouShouQiModel12ClassicRulesV" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12ClassicRulesVACycfc", - "mangledName": "$s14DouShouQiModel12ClassicRulesVACycfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(occurences:historic:)", - "children": [ - { - "kind": "TypeNominal", - "name": "ClassicRules", - "printedName": "DouShouQiModel.ClassicRules", - "usr": "s:14DouShouQiModel12ClassicRulesV" - }, - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toM00n2ToP0SbAA0K0V_S4itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toM00n2ToP0SbAA0K0V_S4itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard04withH0SbAA0K0V_AA0H0VtF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard04withH0SbAA0K0V_AA0H0VtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10isGameOver9withBoard16andLastRowPlayed0lM12ColumnPlayerSb_AA6ResultOtAA0K0V_S2itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10isGameOver9withBoard16andLastRowPlayed0lM12ColumnPlayerSb_AA6ResultOtAA0K0V_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10playedMove_15onStartingBoard012andResultingK0yAA0H0V_AA0K0VAJtKF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10playedMove_15onStartingBoard012andResultingK0yAA0H0V_AA0K0VAJtKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel12ClassicRulesV", - "mangledName": "$s14DouShouQiModel12ClassicRulesV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Rules", - "printedName": "Rules", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Cell", - "printedName": "Cell", - "children": [ - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel4CellV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel4CellV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "cellType", - "printedName": "cellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV8cellTypeAA0eG0Ovp", - "mangledName": "$s14DouShouQiModel4CellV8cellTypeAA0eG0Ovp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV8cellTypeAA0eG0Ovg", - "mangledName": "$s14DouShouQiModel4CellV8cellTypeAA0eG0Ovg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "initialOwner", - "printedName": "initialOwner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV12initialOwnerAA0G0Ovp", - "mangledName": "$s14DouShouQiModel4CellV12initialOwnerAA0G0Ovp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV12initialOwnerAA0G0Ovg", - "mangledName": "$s14DouShouQiModel4CellV12initialOwnerAA0G0Ovg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "piece", - "printedName": "piece", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvp", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvg", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - }, - { - "kind": "Accessor", - "name": "Set", - "printedName": "Set()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvs", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvs", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "set" - }, - { - "kind": "Accessor", - "name": "Modify", - "printedName": "Modify()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvM", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvM", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "_modify" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(ofType:ownedBy:withPiece:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "hasDefaultArg": true, - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "hasDefaultArg": true, - "usr": "s:Sq" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4CellV6ofType7ownedBy9withPieceAcA0eG0O_AA5OwnerOAA0K0VSgtcfc", - "mangledName": "$s14DouShouQiModel4CellV6ofType7ownedBy9withPieceAcA0eG0O_AA5OwnerOAA0K0VSgtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4CellV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel4CellV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel4CellV", - "mangledName": "$s14DouShouQiModel4CellV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "VerySimpleRules", - "printedName": "VerySimpleRules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11createBoardAA0I0VyFZ", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11createBoardAA0I0VyFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10checkBoardyyAA0I0VKFZ", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10checkBoardyyAA0I0VKFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init()", - "children": [ - { - "kind": "TypeNominal", - "name": "VerySimpleRules", - "printedName": "DouShouQiModel.VerySimpleRules", - "usr": "s:14DouShouQiModel15VerySimpleRulesV" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel15VerySimpleRulesVACycfc", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesVACycfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(occurences:historic:)", - "children": [ - { - "kind": "TypeNominal", - "name": "VerySimpleRules", - "printedName": "DouShouQiModel.VerySimpleRules", - "usr": "s:14DouShouQiModel15VerySimpleRulesV" - }, - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toN00o2ToQ0SbAA0L0V_S4itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toN00o2ToQ0SbAA0L0V_S4itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard04withI0SbAA0L0V_AA0I0VtF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard04withI0SbAA0L0V_AA0I0VtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10isGameOver9withBoard16andLastRowPlayed0mN12ColumnPlayerSb_AA6ResultOtAA0L0V_S2itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10isGameOver9withBoard16andLastRowPlayed0mN12ColumnPlayerSb_AA6ResultOtAA0L0V_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10playedMove_15onStartingBoard012andResultingL0yAA0I0V_AA0L0VAJtKF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10playedMove_15onStartingBoard012andResultingL0yAA0I0V_AA0L0VAJtKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel15VerySimpleRulesV", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Rules", - "printedName": "Rules", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Rules", - "printedName": "Rules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11createBoardAA0G0VyFZ", - "mangledName": "$s14DouShouQiModel5RulesP11createBoardAA0G0VyFZ", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "static": true, - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10checkBoardyyAA0G0VKFZ", - "mangledName": "$s14DouShouQiModel5RulesP10checkBoardyyAA0G0VKFZ", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "static": true, - "protocolReq": true, - "throwing": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel5RulesP13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel5RulesP8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel5RulesP8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11isMoveValid7onBoard7fromRow13andFromColumn02toL00m2ToO0SbAA0J0V_S4itF", - "mangledName": "$s14DouShouQiModel5RulesP11isMoveValid7onBoard7fromRow13andFromColumn02toL00m2ToO0SbAA0J0V_S4itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11isMoveValid7onBoard04withG0SbAA0J0V_AA0G0VtF", - "mangledName": "$s14DouShouQiModel5RulesP11isMoveValid7onBoard04withG0SbAA0J0V_AA0G0VtF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10isGameOver9withBoard16andLastRowPlayed0kL12ColumnPlayerSb_AA6ResultOtAA0J0V_S2itF", - "mangledName": "$s14DouShouQiModel5RulesP10isGameOver9withBoard16andLastRowPlayed0kL12ColumnPlayerSb_AA6ResultOtAA0J0V_S2itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10playedMove_15onStartingBoard012andResultingJ0yAA0G0V_AA0J0VAJtKF", - "mangledName": "$s14DouShouQiModel5RulesP10playedMove_15onStartingBoard012andResultingJ0yAA0G0V_AA0J0VAJtKF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "declAttributes": [ - "Mutating" - ], - "throwing": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "protocolReq": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5RulesP8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel5RulesP8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "protocolReq": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5RulesP8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel5RulesP8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Protocol", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Player", - "printedName": "Player", - "children": [ - { - "kind": "Var", - "name": "name", - "printedName": "name", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6PlayerC4nameSSvp", - "mangledName": "$s14DouShouQiModel6PlayerC4nameSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "Final", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6PlayerC4nameSSvg", - "mangledName": "$s14DouShouQiModel6PlayerC4nameSSvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "declAttributes": [ - "Final" - ], - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "id", - "printedName": "id", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6PlayerC2idAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel6PlayerC2idAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "Final", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6PlayerC2idAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel6PlayerC2idAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "declAttributes": [ - "Final" - ], - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Player?", - "children": [ - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel6PlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel6PlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6PlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "mangledName": "$s14DouShouQiModel6PlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addPlayedCallbacksListener", - "printedName": "addPlayedCallbacksListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Move?, DouShouQiModel.Player) async throws -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Move?, DouShouQiModel.Player)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6PlayerC26addPlayedCallbacksListeneryyyAA4MoveVSg_ACtYaKcF", - "mangledName": "$s14DouShouQiModel6PlayerC26addPlayedCallbacksListeneryyyAA4MoveVSg_ACtYaKcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "notifyPlayed", - "printedName": "notifyPlayed(withMove:andPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6PlayerC12notifyPlayed8withMove03andE0yAA0I0VSg_ACtYaKF", - "mangledName": "$s14DouShouQiModel6PlayerC12notifyPlayed8withMove03andE0yAA0I0VSg_ACtYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel6PlayerC", - "mangledName": "$s14DouShouQiModel6PlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "GameError", - "printedName": "GameError", - "children": [ - { - "kind": "Var", - "name": "invalidMove", - "printedName": "invalidMove", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO11invalidMoveyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO11invalidMoveyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "nextPlayerError", - "printedName": "nextPlayerError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO010nextPlayerF0yA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO010nextPlayerF0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badPlayerId", - "printedName": "badPlayerId", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> (Swift.String) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(Swift.String) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(message: Swift.String)", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO11badPlayerIdyACSS_tcACmF", - "mangledName": "$s14DouShouQiModel9GameErrorO11badPlayerIdyACSS_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidRules", - "printedName": "invalidRules", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO12invalidRulesyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO12invalidRulesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidPlayer", - "printedName": "invalidPlayer", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO13invalidPlayeryA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO13invalidPlayeryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidGame", - "printedName": "invalidGame", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO07invalidE0yA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO07invalidE0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidBoard", - "printedName": "invalidBoard", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO12invalidBoardyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO12invalidBoardyA2CmF", - "moduleName": "DouShouQiModel" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel9GameErrorO", - "mangledName": "$s14DouShouQiModel9GameErrorO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Error", - "printedName": "Error", - "usr": "s:s5ErrorP", - "mangledName": "$ss5ErrorP" - }, - { - "kind": "Conformance", - "name": "Sendable", - "printedName": "Sendable", - "usr": "s:s8SendableP", - "mangledName": "$ss8SendableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "RandomPlayer", - "printedName": "RandomPlayer", - "children": [ - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12RandomPlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "mangledName": "$s14DouShouQiModel12RandomPlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.RandomPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "RandomPlayer", - "printedName": "DouShouQiModel.RandomPlayer", - "usr": "s:14DouShouQiModel12RandomPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12RandomPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel12RandomPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "overriding": true, - "implicit": true, - "declAttributes": [ - "Override" - ], - "init_kind": "Designated" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel12RandomPlayerC", - "mangledName": "$s14DouShouQiModel12RandomPlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "superclassUsr": "s:14DouShouQiModel8IAPlayerC", - "inheritsConvenienceInitializers": true, - "superclassNames": [ - "DouShouQiModel.IAPlayer", - "DouShouQiModel.Player" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "CellType", - "printedName": "CellType", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "jungle", - "printedName": "jungle", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO6jungleyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO6jungleyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "water", - "printedName": "water", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO5wateryA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO5wateryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "trap", - "printedName": "trap", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO4trapyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO4trapyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "den", - "printedName": "den", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO3denyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO3denyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "allCases", - "printedName": "allCases", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel8CellTypeO8allCasesSayACGvpZ", - "mangledName": "$s14DouShouQiModel8CellTypeO8allCasesSayACGvpZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel8CellTypeO8allCasesSayACGvgZ", - "mangledName": "$s14DouShouQiModel8CellTypeO8allCasesSayACGvgZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel8CellTypeO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel8CellTypeO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel8CellTypeO9hashValueSivp", - "mangledName": "$s14DouShouQiModel8CellTypeO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel8CellTypeO9hashValueSivg", - "mangledName": "$s14DouShouQiModel8CellTypeO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel8CellTypeO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel8CellTypeO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel8CellTypeO", - "mangledName": "$s14DouShouQiModel8CellTypeO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "CaseIterable", - "printedName": "CaseIterable", - "children": [ - { - "kind": "TypeWitness", - "name": "AllCases", - "printedName": "AllCases", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ] - } - ], - "usr": "s:s12CaseIterableP", - "mangledName": "$ss12CaseIterableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Board", - "printedName": "Board", - "children": [ - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5BoardV4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "nbRows", - "printedName": "nbRows", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV6nbRowsSivp", - "mangledName": "$s14DouShouQiModel5BoardV6nbRowsSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl", - "RawDocComment" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV6nbRowsSivg", - "mangledName": "$s14DouShouQiModel5BoardV6nbRowsSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "nbColumns", - "printedName": "nbColumns", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV9nbColumnsSivp", - "mangledName": "$s14DouShouQiModel5BoardV9nbColumnsSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl", - "RawDocComment" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV9nbColumnsSivg", - "mangledName": "$s14DouShouQiModel5BoardV9nbColumnsSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "grid", - "printedName": "grid", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvp", - "mangledName": "$s14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvg", - "mangledName": "$s14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withGrid:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Board?", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel5BoardV8withGridACSgSaySayAA4CellVGG_tcfc", - "mangledName": "$s14DouShouQiModel5BoardV8withGridACSgSaySayAA4CellVGG_tcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "countPieces", - "printedName": "countPieces(of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11countPieces2ofSiAA5OwnerO_tF", - "mangledName": "$s14DouShouQiModel5BoardV11countPieces2ofSiAA5OwnerO_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "countPieces", - "printedName": "countPieces()", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11countPiecesSi04nbOfgI7Player1_Si0higI7Player2tyF", - "mangledName": "$s14DouShouQiModel5BoardV11countPiecesSi04nbOfgI7Player1_Si0higI7Player2tyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "insert", - "printedName": "insert(piece:atRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV6insert5piece5atRow9andColumnAA0E6ResultOAA5PieceV_S2itF", - "mangledName": "$s14DouShouQiModel5BoardV6insert5piece5atRow9andColumnAA0E6ResultOAA5PieceV_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "removePiece", - "printedName": "removePiece(atRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11removePiece5atRow9andColumnAA0E6ResultOSi_SitF", - "mangledName": "$s14DouShouQiModel5BoardV11removePiece5atRow9andColumnAA0E6ResultOSi_SitF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV9hashValueSivp", - "mangledName": "$s14DouShouQiModel5BoardV9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV9hashValueSivg", - "mangledName": "$s14DouShouQiModel5BoardV9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5BoardV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel5BoardV", - "mangledName": "$s14DouShouQiModel5BoardV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Piece", - "printedName": "Piece", - "children": [ - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel5PieceV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel5PieceV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "owner", - "printedName": "owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV5ownerAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel5PieceV5ownerAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV5ownerAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel5PieceV5ownerAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "animal", - "printedName": "animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV6animalAA6AnimalOvp", - "mangledName": "$s14DouShouQiModel5PieceV6animalAA6AnimalOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV6animalAA6AnimalOvg", - "mangledName": "$s14DouShouQiModel5PieceV6animalAA6AnimalOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withOwner:andAnimal:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel5PieceV9withOwner9andAnimalAcA0G0O_AA0I0Otcfc", - "mangledName": "$s14DouShouQiModel5PieceV9withOwner9andAnimalAcA0G0O_AA0I0Otcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV9hashValueSivp", - "mangledName": "$s14DouShouQiModel5PieceV9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV9hashValueSivg", - "mangledName": "$s14DouShouQiModel5PieceV9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5PieceV4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5PieceV4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5PieceV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5PieceV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel5PieceV", - "mangledName": "$s14DouShouQiModel5PieceV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "InvalidBoardError", - "printedName": "InvalidBoardError", - "children": [ - { - "kind": "Var", - "name": "unknownError", - "printedName": "unknownError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO07unknownG0yA2CmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO07unknownG0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badDimensions", - "printedName": "badDimensions", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(nbRows: Swift.Int, nbColumns: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO13badDimensionsyACSi_SitcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO13badDimensionsyACSi_SitcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badCellType", - "printedName": "badCellType", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.CellType, Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType, Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO11badCellTypeyAcA0iJ0O_S2itcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO11badCellTypeyAcA0iJ0O_S2itcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "multipleOccurenceOfSamePiece", - "printedName": "multipleOccurenceOfSamePiece", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO28multipleOccurenceOfSamePieceyAcA0L0V_tcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO28multipleOccurenceOfSamePieceyAcA0L0V_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "pieceWithNoOwner", - "printedName": "pieceWithNoOwner", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO16pieceWithNoOwneryAcA5PieceV_tcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO16pieceWithNoOwneryAcA5PieceV_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "pieceNotAllowedOnThisCell", - "printedName": "pieceNotAllowedOnThisCell", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece, DouShouQiModel.Cell) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece, DouShouQiModel.Cell) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO25pieceNotAllowedOnThisCellyAcA5PieceV_AA0M0VtcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO25pieceNotAllowedOnThisCellyAcA5PieceV_AA0M0VtcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Error", - "printedName": "Error", - "usr": "s:s5ErrorP", - "mangledName": "$ss5ErrorP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Sendable", - "printedName": "Sendable", - "usr": "s:s8SendableP", - "mangledName": "$ss8SendableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Owner", - "printedName": "Owner", - "children": [ - { - "kind": "Var", - "name": "noOne", - "printedName": "noOne", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO5noOneyA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO5noOneyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "player1", - "printedName": "player1", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO7player1yA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO7player1yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "player2", - "printedName": "player2", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO7player2yA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO7player2yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "simpleDescription", - "printedName": "simpleDescription", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5OwnerO17simpleDescriptionSSvp", - "mangledName": "$s14DouShouQiModel5OwnerO17simpleDescriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5OwnerO17simpleDescriptionSSvg", - "mangledName": "$s14DouShouQiModel5OwnerO17simpleDescriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5OwnerO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5OwnerO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5OwnerO9hashValueSivp", - "mangledName": "$s14DouShouQiModel5OwnerO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5OwnerO9hashValueSivg", - "mangledName": "$s14DouShouQiModel5OwnerO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5OwnerO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5OwnerO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel5OwnerO", - "mangledName": "$s14DouShouQiModel5OwnerO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "RawDocComment" - ] - }, - { - "kind": "TypeDecl", - "name": "IAPlayer", - "printedName": "IAPlayer", - "children": [ - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.IAPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "IAPlayer", - "printedName": "DouShouQiModel.IAPlayer", - "usr": "s:14DouShouQiModel8IAPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel8IAPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel8IAPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "overriding": true, - "implicit": true, - "declAttributes": [ - "Override" - ], - "init_kind": "Designated" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel8IAPlayerC", - "mangledName": "$s14DouShouQiModel8IAPlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "superclassUsr": "s:14DouShouQiModel6PlayerC", - "inheritsConvenienceInitializers": true, - "superclassNames": [ - "DouShouQiModel.Player" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Move", - "printedName": "Move", - "children": [ - { - "kind": "Var", - "name": "owner", - "printedName": "owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV5ownerAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel4MoveV5ownerAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV5ownerAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel4MoveV5ownerAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rowOrigin", - "printedName": "rowOrigin", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV9rowOriginSivp", - "mangledName": "$s14DouShouQiModel4MoveV9rowOriginSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV9rowOriginSivg", - "mangledName": "$s14DouShouQiModel4MoveV9rowOriginSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "columnOrigin", - "printedName": "columnOrigin", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV12columnOriginSivp", - "mangledName": "$s14DouShouQiModel4MoveV12columnOriginSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV12columnOriginSivg", - "mangledName": "$s14DouShouQiModel4MoveV12columnOriginSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rowDestination", - "printedName": "rowDestination", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV14rowDestinationSivp", - "mangledName": "$s14DouShouQiModel4MoveV14rowDestinationSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV14rowDestinationSivg", - "mangledName": "$s14DouShouQiModel4MoveV14rowDestinationSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "columnDestination", - "printedName": "columnDestination", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV17columnDestinationSivp", - "mangledName": "$s14DouShouQiModel4MoveV17columnDestinationSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV17columnDestinationSivg", - "mangledName": "$s14DouShouQiModel4MoveV17columnDestinationSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(of:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4MoveV2of7fromRow13andFromColumn02toH00i2ToK0AcA5OwnerO_S4itcfc", - "mangledName": "$s14DouShouQiModel4MoveV2of7fromRow13andFromColumn02toH00i2ToK0AcA5OwnerO_S4itcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel4MoveV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel4MoveV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4MoveV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel4MoveV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel4MoveV", - "mangledName": "$s14DouShouQiModel4MoveV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Animal", - "printedName": "Animal", - "children": [ - { - "kind": "Var", - "name": "rat", - "printedName": "rat", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3ratyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3ratyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cat", - "printedName": "cat", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3catyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3catyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "dog", - "printedName": "dog", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3dogyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3dogyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "wolf", - "printedName": "wolf", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO4wolfyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO4wolfyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "leopard", - "printedName": "leopard", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO7leopardyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO7leopardyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "tiger", - "printedName": "tiger", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO5tigeryA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO5tigeryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "lion", - "printedName": "lion", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO4lionyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO4lionyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "elephant", - "printedName": "elephant", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO8elephantyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO8elephantyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "rawValue", - "printedName": "rawValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6AnimalO8rawValueSivp", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6AnimalO8rawValueSivg", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(rawValue:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Animal?", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel6AnimalO8rawValueACSgSi_tcfc", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueACSgSi_tcfc", - "moduleName": "DouShouQiModel", - "implicit": true, - "init_kind": "Designated" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel6AnimalO", - "mangledName": "$s14DouShouQiModel6AnimalO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "enumRawTypeName": "Int", - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "RawRepresentable", - "printedName": "RawRepresentable", - "children": [ - { - "kind": "TypeWitness", - "name": "RawValue", - "printedName": "RawValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ], - "usr": "s:SY", - "mangledName": "$sSY" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Game", - "printedName": "Game", - "children": [ - { - "kind": "Var", - "name": "board", - "printedName": "board", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameC5boardAA5BoardVvp", - "mangledName": "$s14DouShouQiModel4GameC5boardAA5BoardVvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameC5boardAA5BoardVvg", - "mangledName": "$s14DouShouQiModel4GameC5boardAA5BoardVvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rules", - "printedName": "rules", - "children": [ - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameC5rulesAA5Rules_pvp", - "mangledName": "$s14DouShouQiModel4GameC5rulesAA5Rules_pvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameC5rulesAA5Rules_pvg", - "mangledName": "$s14DouShouQiModel4GameC5rulesAA5Rules_pvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "players", - "printedName": "players", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Owner : DouShouQiModel.Player]", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameC7playersSDyAA5OwnerOAA6PlayerCGvp", - "mangledName": "$s14DouShouQiModel4GameC7playersSDyAA5OwnerOAA6PlayerCGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Final", - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Owner : DouShouQiModel.Player]", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameC7playersSDyAA5OwnerOAA6PlayerCGvg", - "mangledName": "$s14DouShouQiModel4GameC7playersSDyAA5OwnerOAA6PlayerCGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "declAttributes": [ - "Final" - ], - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withRules:andPlayer1:andPlayer2:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameC" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4GameC9withRules10andPlayer10H7Player2AcA0G0_p_AA6PlayerCAItKcfc", - "mangledName": "$s14DouShouQiModel4GameC9withRules10andPlayer10H7Player2AcA0G0_p_AA6PlayerCAItKcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withBoard:andRules:andPlayer1:andPlayer2:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameC" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4GameC9withBoard8andRules0H7Player10H7Player2AcA0G0V_AA0I0_pAA6PlayerCALtKcfc", - "mangledName": "$s14DouShouQiModel4GameC9withBoard8andRules0H7Player10H7Player2AcA0G0V_AA0I0_pAA6PlayerCALtKcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl", - "RawDocComment" - ], - "throwing": true, - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "addGameStartedListener", - "printedName": "addGameStartedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC03addE15StartedListeneryyyAA5BoardVcF", - "mangledName": "$s14DouShouQiModel4GameC03addE15StartedListeneryyyAA5BoardVcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addPlayerNotifiedListener", - "printedName": "addPlayerNotifiedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Player) async throws -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Player)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC25addPlayerNotifiedListeneryyyAA5BoardV_AA0G0CtYaKcF", - "mangledName": "$s14DouShouQiModel4GameC25addPlayerNotifiedListeneryyyAA5BoardV_AA0G0CtYaKcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addGameChangedListener", - "printedName": "addGameChangedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Game) async -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameC" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC03addE15ChangedListeneryyyACYacF", - "mangledName": "$s14DouShouQiModel4GameC03addE15ChangedListeneryyyACYacF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addGameOverListener", - "printedName": "addGameOverListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Player?", - "children": [ - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:Sq" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC03addE12OverListeneryyyAA5BoardV_AA6ResultOAA6PlayerCSgtcF", - "mangledName": "$s14DouShouQiModel4GameC03addE12OverListeneryyyAA5BoardV_AA6ResultOAA6PlayerCSgtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addMoveChosenCallbacksListener", - "printedName": "addMoveChosenCallbacksListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC30addMoveChosenCallbacksListeneryyyAA5BoardV_AA0G0VAA6PlayerCtcF", - "mangledName": "$s14DouShouQiModel4GameC30addMoveChosenCallbacksListeneryyyAA5BoardV_AA0G0VAA6PlayerCtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addInvalidMoveCallbacksListener", - "printedName": "addInvalidMoveCallbacksListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC31addInvalidMoveCallbacksListeneryyyAA5BoardV_AA0H0VAA6PlayerCSbtcF", - "mangledName": "$s14DouShouQiModel4GameC31addInvalidMoveCallbacksListeneryyyAA5BoardV_AA0H0VAA6PlayerCSbtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addBoardChangedListener", - "printedName": "addBoardChangedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC23addBoardChangedListeneryyyAA0G0VcF", - "mangledName": "$s14DouShouQiModel4GameC23addBoardChangedListeneryyyAA0G0VcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addPieceRemovedListener", - "printedName": "addPieceRemovedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(Swift.Int, Swift.Int, DouShouQiModel.Piece) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Int, Swift.Int, DouShouQiModel.Piece)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC23addPieceRemovedListeneryyySi_SiAA0G0VtcF", - "mangledName": "$s14DouShouQiModel4GameC23addPieceRemovedListeneryyySi_SiAA0G0VtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "onPlayed", - "printedName": "onPlayed(with:from:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC8onPlayed4with4fromyAA4MoveVSg_AA6PlayerCtYaKF", - "mangledName": "$s14DouShouQiModel4GameC8onPlayed4with4fromyAA4MoveVSg_AA6PlayerCtYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "isOver", - "printedName": "isOver", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameC6isOverSbvp", - "mangledName": "$s14DouShouQiModel4GameC6isOverSbvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameC6isOverSbvg", - "mangledName": "$s14DouShouQiModel4GameC6isOverSbvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "start", - "printedName": "start()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC5startyyYaKF", - "mangledName": "$s14DouShouQiModel4GameC5startyyYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel4GameC", - "mangledName": "$s14DouShouQiModel4GameC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl", - "RawDocComment" - ] - } - ], - "json_format_version": 8 - }, - "ConstValues": [ - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 81, - "length": 1, - "value": "9" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 111, - "length": 1, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 148, - "length": 1, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 3048, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 3088, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 3941, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Dictionary", - "offset": 4285, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 4475, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 4517, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 4565, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 4967, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 6169, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 6189, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 6229, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 9685, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 10586, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 10906, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11013, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 11170, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11188, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11280, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11325, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11433, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11477, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11569, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11632, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11740, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 12266, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12307, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12319, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12326, - "length": 2, - "value": "-1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12703, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12714, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12721, - "length": 2, - "value": "-1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 13086, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 13464, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 15597, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 15704, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 15728, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 15845, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 15869, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 16049, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 16149, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 16579, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 16584, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Dictionary", - "offset": 16948, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 17004, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 122, - "length": 81, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 147, - "length": 4, - "value": "\"ΓΈ\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 152, - "length": 2, - "value": "\" on \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 167, - "length": 1, - "value": "\", \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 202, - "length": 1, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 89, - "length": 1, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 119, - "length": 1, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2067, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2107, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2267, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2277, - "length": 1, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2419, - "length": 1, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2429, - "length": 1, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2964, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3004, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 3773, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3793, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3833, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 4182, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 4292, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 4531, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 4639, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4773, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4782, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4800, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4809, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4925, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 5013, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 6962, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 7077, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7105, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 7230, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7258, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7350, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Dictionary", - "offset": 8072, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 8128, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Player.swift", - "kind": "Array", - "offset": 418, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "BooleanLiteral", - "offset": 475, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 570, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 694, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 981, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 996, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1015, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1049, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1212, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1278, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1548, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1579, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1979, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 2010, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 122, - "length": 40, - "value": "\"[\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 150, - "length": 1, - "value": "\":\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 160, - "length": 1, - "value": "\"]\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 183, - "length": 3, - "value": "\"x\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 229, - "length": 3, - "value": "\"1\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 275, - "length": 3, - "value": "\"2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 616, - "length": 87, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 625, - "length": 1, - "value": "\": [\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 640, - "length": 1, - "value": "\",\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 656, - "length": 1, - "value": "\"] -> [\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 679, - "length": 1, - "value": "\", \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 701, - "length": 1, - "value": "\"]\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "StringLiteral", - "offset": 513, - "length": 55, - "value": "\"The ids of players are not .player1 and then .player2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "StringLiteral", - "offset": 1483, - "length": 55, - "value": "\"The ids of players are not .player1 and then .player2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 1754, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 2090, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 2582, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 3012, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 3416, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 3827, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 4261, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 4580, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "BooleanLiteral", - "offset": 6361, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "BooleanLiteral", - "offset": 7044, - "length": 5, - "value": "false" - } - ] -} \ No newline at end of file diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface b/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface deleted file mode 100644 index 9404081..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface +++ /dev/null @@ -1,266 +0,0 @@ -// swift-interface-format-version: 1.0 -// swift-compiler-version: Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5) -// swift-module-flags: -target x86_64-apple-ios16.0-simulator -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -module-name DouShouQiModel -// swift-module-flags-ignorable: -enable-bare-slash-regex -@_exported import DouShouQiModel -import Foundation -import Swift -import _Concurrency -import _StringProcessing -import _SwiftConcurrencyShims -public enum Result : Swift.Equatable { - case notFinished - case even - case winner(winner: DouShouQiModel.Owner, reason: DouShouQiModel.WinningReason) - public static func == (a: DouShouQiModel.Result, b: DouShouQiModel.Result) -> Swift.Bool -} -public enum WinningReason { - case denReached, noMorePieces, tooManyOccurences, noMovesLeft - public static func == (a: DouShouQiModel.WinningReason, b: DouShouQiModel.WinningReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -public enum BoardResult : Swift.Equatable { - case unknown - case ok(piece: DouShouQiModel.Piece?) - case failed(reason: DouShouQiModel.BoardFailingReason) - public static func == (a: DouShouQiModel.BoardResult, b: DouShouQiModel.BoardResult) -> Swift.Bool -} -public enum BoardFailingReason { - case unknown, outOfBounds, cellNotEmpty, cellEmpty - public static func == (a: DouShouQiModel.BoardFailingReason, b: DouShouQiModel.BoardFailingReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class HumanPlayer : DouShouQiModel.Player { - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner, andInputMethod input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - #if compiler(>=5.3) && $AsyncAwait - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - public func changeInput(input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - #if compiler(>=5.3) && $AsyncAwait - public func chooseMove(_ move: DouShouQiModel.Move?) async throws - #endif - @objc deinit -} -public struct ClassicRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public struct Cell : Swift.CustomStringConvertible, Swift.Equatable { - public var description: Swift.String { - get - } - public let cellType: DouShouQiModel.CellType - public let initialOwner: DouShouQiModel.Owner - public var piece: DouShouQiModel.Piece? - public init(ofType cellType: DouShouQiModel.CellType, ownedBy initialOwner: DouShouQiModel.Owner = .noOne, withPiece piece: DouShouQiModel.Piece? = nil) - public static func == (a: DouShouQiModel.Cell, b: DouShouQiModel.Cell) -> Swift.Bool -} -public struct VerySimpleRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public protocol Rules { - static func createBoard() -> DouShouQiModel.Board - static func checkBoard(_ board: DouShouQiModel.Board) throws - func getNextPlayer() -> DouShouQiModel.Owner - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - func isMoveValid(onBoard: DouShouQiModel.Board, fromRow: Swift.Int, andFromColumn: Swift.Int, toRow: Swift.Int, andToColumn: Swift.Int) -> Swift.Bool - func isMoveValid(onBoard: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - func isGameOver(withBoard: DouShouQiModel.Board, andLastRowPlayed: Swift.Int, andLastColumnPlayer: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - var occurences: [DouShouQiModel.Board : Swift.Int] { get } - var historic: [DouShouQiModel.Move] { get } -} -public class Player { - final public let name: Swift.String - final public let id: DouShouQiModel.Owner - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - #if compiler(>=5.3) && $AsyncAwait - public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - #if compiler(>=5.3) && $AsyncAwait - public func addPlayedCallbacksListener(_ listener: @escaping (DouShouQiModel.Move?, DouShouQiModel.Player) async throws -> Swift.Void) - #endif - #if compiler(>=5.3) && $AsyncAwait - public func notifyPlayed(withMove move: DouShouQiModel.Move?, andPlayer player: DouShouQiModel.Player) async throws - #endif - @objc deinit -} -public enum GameError : Swift.Error { - case invalidMove, nextPlayerError, badPlayerId(message: Swift.String), invalidRules, invalidPlayer, invalidGame, invalidBoard -} -@_inheritsConvenienceInitializers public class RandomPlayer : DouShouQiModel.IAPlayer { - #if compiler(>=5.3) && $AsyncAwait - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public enum CellType : Swift.CaseIterable { - case unknown, jungle, water, trap, den - public static func == (a: DouShouQiModel.CellType, b: DouShouQiModel.CellType) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public typealias AllCases = [DouShouQiModel.CellType] - public static var allCases: [DouShouQiModel.CellType] { - get - } - public var hashValue: Swift.Int { - get - } -} -public struct Board : Swift.Hashable { - public func hash(into hasher: inout Swift.Hasher) - public let nbRows: Swift.Int - public let nbColumns: Swift.Int - public var grid: [[DouShouQiModel.Cell]] { - get - } - public init?(withGrid grid: [[DouShouQiModel.Cell]]) - public func countPieces(of owner: DouShouQiModel.Owner) -> Swift.Int - public func countPieces() -> (nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int) - public mutating func insert(piece: DouShouQiModel.Piece, atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public mutating func removePiece(atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public static func == (a: DouShouQiModel.Board, b: DouShouQiModel.Board) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public struct Piece : Swift.CustomStringConvertible, Swift.Hashable { - public var description: Swift.String { - get - } - public let owner: DouShouQiModel.Owner - public let animal: DouShouQiModel.Animal - public init(withOwner owner: DouShouQiModel.Owner, andAnimal animal: DouShouQiModel.Animal) - public func hash(into hasher: inout Swift.Hasher) - public static func == (a: DouShouQiModel.Piece, b: DouShouQiModel.Piece) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public enum InvalidBoardError : Swift.Error, Swift.Equatable { - case unknownError - case badDimensions(nbRows: Swift.Int, nbColumns: Swift.Int) - case badCellType(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int) - case multipleOccurenceOfSamePiece(piece: DouShouQiModel.Piece) - case pieceWithNoOwner(piece: DouShouQiModel.Piece) - case pieceNotAllowedOnThisCell(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell) - public static func == (a: DouShouQiModel.InvalidBoardError, b: DouShouQiModel.InvalidBoardError) -> Swift.Bool -} -public enum Owner { - case noOne, player1, player2 - public var simpleDescription: Swift.String { - get - } - public static func == (a: DouShouQiModel.Owner, b: DouShouQiModel.Owner) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class IAPlayer : DouShouQiModel.Player { - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public struct Move : Swift.CustomStringConvertible, Swift.Equatable { - public let owner: DouShouQiModel.Owner - public let rowOrigin: Swift.Int - public let columnOrigin: Swift.Int - public let rowDestination: Swift.Int - public let columnDestination: Swift.Int - public init(of owner: DouShouQiModel.Owner, fromRow rowOrigin: Swift.Int, andFromColumn colOrigin: Swift.Int, toRow rowDest: Swift.Int, andToColumn colDest: Swift.Int) - public var description: Swift.String { - get - } - public static func == (a: DouShouQiModel.Move, b: DouShouQiModel.Move) -> Swift.Bool -} -public enum Animal : Swift.Int { - case rat, cat, dog, wolf, leopard, tiger, lion, elephant - public init?(rawValue: Swift.Int) - public typealias RawValue = Swift.Int - public var rawValue: Swift.Int { - get - } -} -public class Game { - public var board: DouShouQiModel.Board { - get - } - public var rules: any DouShouQiModel.Rules { - get - } - final public let players: [DouShouQiModel.Owner : DouShouQiModel.Player] - public init(withRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public init(withBoard board: DouShouQiModel.Board, andRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public func addGameStartedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public func addPlayerNotifiedListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Player) async throws -> Swift.Void) - #endif - #if compiler(>=5.3) && $AsyncAwait - public func addGameChangedListener(_ listener: @escaping (DouShouQiModel.Game) async -> Swift.Void) - #endif - public func addGameOverListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> Swift.Void) - public func addMoveChosenCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> Swift.Void) - public func addInvalidMoveCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> Swift.Void) - public func addBoardChangedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - public func addPieceRemovedListener(_ listener: @escaping (Swift.Int, Swift.Int, DouShouQiModel.Piece) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public func onPlayed(with move: DouShouQiModel.Move?, from player: DouShouQiModel.Player) async throws - #endif - public var isOver: Swift.Bool { - get - } - #if compiler(>=5.3) && $AsyncAwait - public func start() async throws - #endif - @objc deinit -} -extension DouShouQiModel.WinningReason : Swift.Equatable {} -extension DouShouQiModel.WinningReason : Swift.Hashable {} -extension DouShouQiModel.BoardFailingReason : Swift.Equatable {} -extension DouShouQiModel.BoardFailingReason : Swift.Hashable {} -extension DouShouQiModel.CellType : Swift.Equatable {} -extension DouShouQiModel.CellType : Swift.Hashable {} -extension DouShouQiModel.Owner : Swift.Equatable {} -extension DouShouQiModel.Owner : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.Equatable {} -extension DouShouQiModel.Animal : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.RawRepresentable {} diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.swiftdoc b/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.swiftdoc deleted file mode 100644 index a83d9d1f3896bf73ddba5c7a3472239d2c22e76d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 696 zcmaDfX9YVW2Lpp90|Ns)qlJ#c+7Dby0=U-%aP4>CT5rI$Ux91Q2d>2%xY!*xUFbQa zy@N^j#3Ahshx9v`wD%m+SaZl(Xp58P1t*OOP8vYc#=uE?50mBGjnH89XK)H48yX)=@m&2h;u4bI3f4b1e-Pf5*TVE6_UtFSPOH#5;q1X-b* znO|&Zre~mAoS9pilUR~p1aU^IAOk}nkZHswz~d#un85@QW?*7?#VP(>1;`5p;$ka9 z6I2^ao$?clQo_vgl7jNfi-R-E3S@xl@=9})Qi~Mw(-ew;q9D2?BePfmtQO>TRv=ac zVtsvm1$=5jAp-`?+QsM8fvjjC#_0&lyd>xRoYLGpush^|N)cu!LnN>}1>`+cr(jhM Yb`3P Swift.Bool -} -public enum WinningReason { - case denReached, noMorePieces, tooManyOccurences, noMovesLeft - public static func == (a: DouShouQiModel.WinningReason, b: DouShouQiModel.WinningReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -public enum BoardResult : Swift.Equatable { - case unknown - case ok(piece: DouShouQiModel.Piece?) - case failed(reason: DouShouQiModel.BoardFailingReason) - public static func == (a: DouShouQiModel.BoardResult, b: DouShouQiModel.BoardResult) -> Swift.Bool -} -public enum BoardFailingReason { - case unknown, outOfBounds, cellNotEmpty, cellEmpty - public static func == (a: DouShouQiModel.BoardFailingReason, b: DouShouQiModel.BoardFailingReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class HumanPlayer : DouShouQiModel.Player { - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner, andInputMethod input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - #if compiler(>=5.3) && $AsyncAwait - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - public func changeInput(input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - #if compiler(>=5.3) && $AsyncAwait - public func chooseMove(_ move: DouShouQiModel.Move?) async throws - #endif - @objc deinit -} -public struct ClassicRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public struct Cell : Swift.CustomStringConvertible, Swift.Equatable { - public var description: Swift.String { - get - } - public let cellType: DouShouQiModel.CellType - public let initialOwner: DouShouQiModel.Owner - public var piece: DouShouQiModel.Piece? - public init(ofType cellType: DouShouQiModel.CellType, ownedBy initialOwner: DouShouQiModel.Owner = .noOne, withPiece piece: DouShouQiModel.Piece? = nil) - public static func == (a: DouShouQiModel.Cell, b: DouShouQiModel.Cell) -> Swift.Bool -} -public struct VerySimpleRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public protocol Rules { - static func createBoard() -> DouShouQiModel.Board - static func checkBoard(_ board: DouShouQiModel.Board) throws - func getNextPlayer() -> DouShouQiModel.Owner - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - func isMoveValid(onBoard: DouShouQiModel.Board, fromRow: Swift.Int, andFromColumn: Swift.Int, toRow: Swift.Int, andToColumn: Swift.Int) -> Swift.Bool - func isMoveValid(onBoard: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - func isGameOver(withBoard: DouShouQiModel.Board, andLastRowPlayed: Swift.Int, andLastColumnPlayer: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - var occurences: [DouShouQiModel.Board : Swift.Int] { get } - var historic: [DouShouQiModel.Move] { get } -} -public class Player { - final public let name: Swift.String - final public let id: DouShouQiModel.Owner - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - #if compiler(>=5.3) && $AsyncAwait - public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - #if compiler(>=5.3) && $AsyncAwait - public func addPlayedCallbacksListener(_ listener: @escaping (DouShouQiModel.Move?, DouShouQiModel.Player) async throws -> Swift.Void) - #endif - #if compiler(>=5.3) && $AsyncAwait - public func notifyPlayed(withMove move: DouShouQiModel.Move?, andPlayer player: DouShouQiModel.Player) async throws - #endif - @objc deinit -} -public enum GameError : Swift.Error { - case invalidMove, nextPlayerError, badPlayerId(message: Swift.String), invalidRules, invalidPlayer, invalidGame, invalidBoard -} -@_inheritsConvenienceInitializers public class RandomPlayer : DouShouQiModel.IAPlayer { - #if compiler(>=5.3) && $AsyncAwait - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public enum CellType : Swift.CaseIterable { - case unknown, jungle, water, trap, den - public static func == (a: DouShouQiModel.CellType, b: DouShouQiModel.CellType) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public typealias AllCases = [DouShouQiModel.CellType] - public static var allCases: [DouShouQiModel.CellType] { - get - } - public var hashValue: Swift.Int { - get - } -} -public struct Board : Swift.Hashable { - public func hash(into hasher: inout Swift.Hasher) - public let nbRows: Swift.Int - public let nbColumns: Swift.Int - public var grid: [[DouShouQiModel.Cell]] { - get - } - public init?(withGrid grid: [[DouShouQiModel.Cell]]) - public func countPieces(of owner: DouShouQiModel.Owner) -> Swift.Int - public func countPieces() -> (nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int) - public mutating func insert(piece: DouShouQiModel.Piece, atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public mutating func removePiece(atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public static func == (a: DouShouQiModel.Board, b: DouShouQiModel.Board) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public struct Piece : Swift.CustomStringConvertible, Swift.Hashable { - public var description: Swift.String { - get - } - public let owner: DouShouQiModel.Owner - public let animal: DouShouQiModel.Animal - public init(withOwner owner: DouShouQiModel.Owner, andAnimal animal: DouShouQiModel.Animal) - public func hash(into hasher: inout Swift.Hasher) - public static func == (a: DouShouQiModel.Piece, b: DouShouQiModel.Piece) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public enum InvalidBoardError : Swift.Error, Swift.Equatable { - case unknownError - case badDimensions(nbRows: Swift.Int, nbColumns: Swift.Int) - case badCellType(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int) - case multipleOccurenceOfSamePiece(piece: DouShouQiModel.Piece) - case pieceWithNoOwner(piece: DouShouQiModel.Piece) - case pieceNotAllowedOnThisCell(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell) - public static func == (a: DouShouQiModel.InvalidBoardError, b: DouShouQiModel.InvalidBoardError) -> Swift.Bool -} -public enum Owner { - case noOne, player1, player2 - public var simpleDescription: Swift.String { - get - } - public static func == (a: DouShouQiModel.Owner, b: DouShouQiModel.Owner) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class IAPlayer : DouShouQiModel.Player { - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public struct Move : Swift.CustomStringConvertible, Swift.Equatable { - public let owner: DouShouQiModel.Owner - public let rowOrigin: Swift.Int - public let columnOrigin: Swift.Int - public let rowDestination: Swift.Int - public let columnDestination: Swift.Int - public init(of owner: DouShouQiModel.Owner, fromRow rowOrigin: Swift.Int, andFromColumn colOrigin: Swift.Int, toRow rowDest: Swift.Int, andToColumn colDest: Swift.Int) - public var description: Swift.String { - get - } - public static func == (a: DouShouQiModel.Move, b: DouShouQiModel.Move) -> Swift.Bool -} -public enum Animal : Swift.Int { - case rat, cat, dog, wolf, leopard, tiger, lion, elephant - public init?(rawValue: Swift.Int) - public typealias RawValue = Swift.Int - public var rawValue: Swift.Int { - get - } -} -public class Game { - public var board: DouShouQiModel.Board { - get - } - public var rules: any DouShouQiModel.Rules { - get - } - final public let players: [DouShouQiModel.Owner : DouShouQiModel.Player] - public init(withRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public init(withBoard board: DouShouQiModel.Board, andRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public func addGameStartedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public func addPlayerNotifiedListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Player) async throws -> Swift.Void) - #endif - #if compiler(>=5.3) && $AsyncAwait - public func addGameChangedListener(_ listener: @escaping (DouShouQiModel.Game) async -> Swift.Void) - #endif - public func addGameOverListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> Swift.Void) - public func addMoveChosenCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> Swift.Void) - public func addInvalidMoveCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> Swift.Void) - public func addBoardChangedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - public func addPieceRemovedListener(_ listener: @escaping (Swift.Int, Swift.Int, DouShouQiModel.Piece) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public func onPlayed(with move: DouShouQiModel.Move?, from player: DouShouQiModel.Player) async throws - #endif - public var isOver: Swift.Bool { - get - } - #if compiler(>=5.3) && $AsyncAwait - public func start() async throws - #endif - @objc deinit -} -extension DouShouQiModel.WinningReason : Swift.Equatable {} -extension DouShouQiModel.WinningReason : Swift.Hashable {} -extension DouShouQiModel.BoardFailingReason : Swift.Equatable {} -extension DouShouQiModel.BoardFailingReason : Swift.Hashable {} -extension DouShouQiModel.CellType : Swift.Equatable {} -extension DouShouQiModel.CellType : Swift.Hashable {} -extension DouShouQiModel.Owner : Swift.Equatable {} -extension DouShouQiModel.Owner : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.Equatable {} -extension DouShouQiModel.Animal : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.RawRepresentable {} diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/module.modulemap b/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/module.modulemap deleted file mode 100644 index e7aa10a..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/Modules/module.modulemap +++ /dev/null @@ -1,11 +0,0 @@ -framework module DouShouQiModel { - umbrella header "DouShouQiModel.h" - export * - - module * { export * } -} - -module DouShouQiModel.Swift { - header "DouShouQiModel-Swift.h" - requires objc -} diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/_CodeSignature/CodeResources b/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/_CodeSignature/CodeResources deleted file mode 100644 index c34fa55..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/ios-arm64_x86_64-simulator/DouShouQiModel.framework/_CodeSignature/CodeResources +++ /dev/null @@ -1,245 +0,0 @@ - - - - - files - - Headers/DouShouQiModel-Swift.h - - Ugz84k7Dtyq8c1kVv5knXzRL8M8= - - Headers/DouShouQiModel.h - - oRFeERlH0MoI6LrvagIzL3ni4lM= - - Info.plist - - nK7+MI/Ze6f+km/d+6SafK4UOHw= - - Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.abi.json - - 5wlrw/S604f6EkkdO0sjydo0+Bc= - - Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface - - iWelfKfa40hASjZTv+0MmwJpt14= - - Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftdoc - - uNDHcaRHf/ULIsVZEMiJY2HGm4c= - - Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftinterface - - iWelfKfa40hASjZTv+0MmwJpt14= - - Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftmodule - - hIkz8AGNOjj+boCk29AkmkNg7U4= - - Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.abi.json - - 5wlrw/S604f6EkkdO0sjydo0+Bc= - - Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface - - ulNUxrIsFIWqKNx6spilb7IJVR0= - - Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.swiftdoc - - tkYnhquJQVCRsNSI7Hl83a7/uFk= - - Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.swiftinterface - - ulNUxrIsFIWqKNx6spilb7IJVR0= - - Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.swiftmodule - - 0ZAcidlUuohX1myhyQosgBBZq1s= - - Modules/module.modulemap - - tOh1oseR3w5cW6xQIaaghrv9LlM= - - - files2 - - Headers/DouShouQiModel-Swift.h - - hash2 - - X8yw4Beas8gUjOV/b4G2i2nanoGnSlTcLKeBiIYLXRI= - - - Headers/DouShouQiModel.h - - hash2 - - a0LOmZXPnWhpMKaBoW1IdxOGAzn4RhRBe32928+2jeU= - - - Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.abi.json - - hash2 - - btM982otm47LMNIetdE5JR553fM9PjFPuS8AXm0+EpQ= - - - Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.private.swiftinterface - - hash2 - - oe48ffKwbmJhKUMG/td3wfVID9DF4QgJz/dIPJweV5g= - - - Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftdoc - - hash2 - - cpfiPzUVsQ9nZcmz7k/CLhMlNAa3hCWAVPNrKBhrKls= - - - Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftinterface - - hash2 - - oe48ffKwbmJhKUMG/td3wfVID9DF4QgJz/dIPJweV5g= - - - Modules/DouShouQiModel.swiftmodule/arm64-apple-ios-simulator.swiftmodule - - hash2 - - q85NBK13clOQfgVFgVjmL6pWsskBEw+Z45xPFMxL1+E= - - - Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.abi.json - - hash2 - - btM982otm47LMNIetdE5JR553fM9PjFPuS8AXm0+EpQ= - - - Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.private.swiftinterface - - hash2 - - agKcCCqs9pHq1e94l4ouc5WojSYeRzzGkrHxkw9FZ8c= - - - Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.swiftdoc - - hash2 - - SsJ/b3BHzQ9S5Wz5tzNZPeo8WQ4dX+hCQFo95fU45as= - - - Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.swiftinterface - - hash2 - - agKcCCqs9pHq1e94l4ouc5WojSYeRzzGkrHxkw9FZ8c= - - - Modules/DouShouQiModel.swiftmodule/x86_64-apple-ios-simulator.swiftmodule - - hash2 - - 0C4f5rpOmGFG3B9PLb/e4rylk+OdtHUNKJ+aW1e+MCE= - - - Modules/module.modulemap - - hash2 - - XJ885pOXSQHhlMUP6dyA/ER9+SP/HZ+IMImbB4k5+rI= - - - - rules - - ^.* - - ^.*\.lproj/ - - optional - - weight - 1000 - - ^.*\.lproj/locversion.plist$ - - omit - - weight - 1100 - - ^Base\.lproj/ - - weight - 1010 - - ^version.plist$ - - - rules2 - - .*\.dSYM($|/) - - weight - 11 - - ^(.*/)?\.DS_Store$ - - omit - - weight - 2000 - - ^.* - - ^.*\.lproj/ - - optional - - weight - 1000 - - ^.*\.lproj/locversion.plist$ - - omit - - weight - 1100 - - ^Base\.lproj/ - - weight - 1010 - - ^Info\.plist$ - - omit - - weight - 20 - - ^PkgInfo$ - - omit - - weight - 20 - - ^embedded\.provisionprofile$ - - weight - 20 - - ^version\.plist$ - - weight - 20 - - - - diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/DouShouQiModel b/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/DouShouQiModel deleted file mode 120000 index 4c7f364..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/DouShouQiModel +++ /dev/null @@ -1 +0,0 @@ -Versions/Current/DouShouQiModel \ No newline at end of file diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Headers b/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Headers deleted file mode 120000 index a177d2a..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Headers +++ /dev/null @@ -1 +0,0 @@ -Versions/Current/Headers \ No newline at end of file diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Modules b/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Modules deleted file mode 120000 index 5736f31..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Modules +++ /dev/null @@ -1 +0,0 @@ -Versions/Current/Modules \ No newline at end of file diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Resources b/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Resources deleted file mode 120000 index 953ee36..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Resources +++ /dev/null @@ -1 +0,0 @@ -Versions/Current/Resources \ No newline at end of file diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/DouShouQiModel b/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/DouShouQiModel deleted file mode 100755 index fecd509bdb009b388b92723acce805da11aed451..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 337600 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 RJAcrC{58kEjbV20{{m^IE^Pn+ diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Headers/DouShouQiModel-Swift.h b/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Headers/DouShouQiModel-Swift.h deleted file mode 100644 index 5e14e79..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Headers/DouShouQiModel-Swift.h +++ /dev/null @@ -1,618 +0,0 @@ -#if 0 -#elif defined(__arm64__) && __arm64__ -// Generated by Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5) -#ifndef DOUSHOUQIMODEL_SWIFT_H -#define DOUSHOUQIMODEL_SWIFT_H -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wgcc-compat" - -#if !defined(__has_include) -# define __has_include(x) 0 -#endif -#if !defined(__has_attribute) -# define __has_attribute(x) 0 -#endif -#if !defined(__has_feature) -# define __has_feature(x) 0 -#endif -#if !defined(__has_warning) -# define __has_warning(x) 0 -#endif - -#if __has_include() -# include -#endif - -#pragma clang diagnostic ignored "-Wauto-import" -#if defined(__OBJC__) -#include -#endif -#if defined(__cplusplus) -#include -#include -#include -#include -#include -#include -#include -#else -#include -#include -#include -#include -#endif -#if defined(__cplusplus) -#if defined(__arm64e__) && __has_include() -# include -#else -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wreserved-macro-identifier" -# ifndef __ptrauth_swift_value_witness_function_pointer -# define __ptrauth_swift_value_witness_function_pointer(x) -# endif -# ifndef __ptrauth_swift_class_method_pointer -# define __ptrauth_swift_class_method_pointer(x) -# endif -#pragma clang diagnostic pop -#endif -#endif - -#if !defined(SWIFT_TYPEDEFS) -# define SWIFT_TYPEDEFS 1 -# if __has_include() -# include -# elif !defined(__cplusplus) -typedef uint_least16_t char16_t; -typedef uint_least32_t char32_t; -# endif -typedef float swift_float2 __attribute__((__ext_vector_type__(2))); -typedef float swift_float3 __attribute__((__ext_vector_type__(3))); -typedef float swift_float4 __attribute__((__ext_vector_type__(4))); -typedef double swift_double2 __attribute__((__ext_vector_type__(2))); -typedef double swift_double3 __attribute__((__ext_vector_type__(3))); -typedef double swift_double4 __attribute__((__ext_vector_type__(4))); -typedef int swift_int2 __attribute__((__ext_vector_type__(2))); -typedef int swift_int3 __attribute__((__ext_vector_type__(3))); -typedef int swift_int4 __attribute__((__ext_vector_type__(4))); -typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2))); -typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3))); -typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4))); -#endif - -#if !defined(SWIFT_PASTE) -# define SWIFT_PASTE_HELPER(x, y) x##y -# define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y) -#endif -#if !defined(SWIFT_METATYPE) -# define SWIFT_METATYPE(X) Class -#endif -#if !defined(SWIFT_CLASS_PROPERTY) -# if __has_feature(objc_class_property) -# define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__ -# else -# define SWIFT_CLASS_PROPERTY(...) -# endif -#endif -#if !defined(SWIFT_RUNTIME_NAME) -# if __has_attribute(objc_runtime_name) -# define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X))) -# else -# define SWIFT_RUNTIME_NAME(X) -# endif -#endif -#if !defined(SWIFT_COMPILE_NAME) -# if __has_attribute(swift_name) -# define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X))) -# else -# define SWIFT_COMPILE_NAME(X) -# endif -#endif -#if !defined(SWIFT_METHOD_FAMILY) -# if __has_attribute(objc_method_family) -# define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X))) -# else -# define SWIFT_METHOD_FAMILY(X) -# endif -#endif -#if !defined(SWIFT_NOESCAPE) -# if __has_attribute(noescape) -# define SWIFT_NOESCAPE __attribute__((noescape)) -# else -# define SWIFT_NOESCAPE -# endif -#endif -#if !defined(SWIFT_RELEASES_ARGUMENT) -# if __has_attribute(ns_consumed) -# define SWIFT_RELEASES_ARGUMENT __attribute__((ns_consumed)) -# else -# define SWIFT_RELEASES_ARGUMENT -# endif -#endif -#if !defined(SWIFT_WARN_UNUSED_RESULT) -# if __has_attribute(warn_unused_result) -# define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result)) -# else -# define SWIFT_WARN_UNUSED_RESULT -# endif -#endif -#if !defined(SWIFT_NORETURN) -# if __has_attribute(noreturn) -# define SWIFT_NORETURN __attribute__((noreturn)) -# else -# define SWIFT_NORETURN -# endif -#endif -#if !defined(SWIFT_CLASS_EXTRA) -# define SWIFT_CLASS_EXTRA -#endif -#if !defined(SWIFT_PROTOCOL_EXTRA) -# define SWIFT_PROTOCOL_EXTRA -#endif -#if !defined(SWIFT_ENUM_EXTRA) -# define SWIFT_ENUM_EXTRA -#endif -#if !defined(SWIFT_CLASS) -# if __has_attribute(objc_subclassing_restricted) -# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA -# define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# else -# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# endif -#endif -#if !defined(SWIFT_RESILIENT_CLASS) -# if __has_attribute(objc_class_stub) -# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub)) -# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME) -# else -# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) -# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME) -# endif -#endif -#if !defined(SWIFT_PROTOCOL) -# define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA -# define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA -#endif -#if !defined(SWIFT_EXTENSION) -# define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__) -#endif -#if !defined(OBJC_DESIGNATED_INITIALIZER) -# if __has_attribute(objc_designated_initializer) -# define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer)) -# else -# define OBJC_DESIGNATED_INITIALIZER -# endif -#endif -#if !defined(SWIFT_ENUM_ATTR) -# if __has_attribute(enum_extensibility) -# define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility))) -# else -# define SWIFT_ENUM_ATTR(_extensibility) -# endif -#endif -#if !defined(SWIFT_ENUM) -# define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type -# if __has_feature(generalized_swift_name) -# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type -# else -# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility) -# endif -#endif -#if !defined(SWIFT_UNAVAILABLE) -# define SWIFT_UNAVAILABLE __attribute__((unavailable)) -#endif -#if !defined(SWIFT_UNAVAILABLE_MSG) -# define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg))) -#endif -#if !defined(SWIFT_AVAILABILITY) -# define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__))) -#endif -#if !defined(SWIFT_WEAK_IMPORT) -# define SWIFT_WEAK_IMPORT __attribute__((weak_import)) -#endif -#if !defined(SWIFT_DEPRECATED) -# define SWIFT_DEPRECATED __attribute__((deprecated)) -#endif -#if !defined(SWIFT_DEPRECATED_MSG) -# define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__))) -#endif -#if !defined(SWIFT_DEPRECATED_OBJC) -# if __has_feature(attribute_diagnose_if_objc) -# define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning"))) -# else -# define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg) -# endif -#endif -#if defined(__OBJC__) -#if !defined(IBSegueAction) -# define IBSegueAction -#endif -#endif -#if !defined(SWIFT_EXTERN) -# if defined(__cplusplus) -# define SWIFT_EXTERN extern "C" -# else -# define SWIFT_EXTERN extern -# endif -#endif -#if !defined(SWIFT_CALL) -# define SWIFT_CALL __attribute__((swiftcall)) -#endif -#if !defined(SWIFT_INDIRECT_RESULT) -# define SWIFT_INDIRECT_RESULT __attribute__((swift_indirect_result)) -#endif -#if !defined(SWIFT_CONTEXT) -# define SWIFT_CONTEXT __attribute__((swift_context)) -#endif -#if !defined(SWIFT_ERROR_RESULT) -# define SWIFT_ERROR_RESULT __attribute__((swift_error_result)) -#endif -#if defined(__cplusplus) -# define SWIFT_NOEXCEPT noexcept -#else -# define SWIFT_NOEXCEPT -#endif -#if !defined(SWIFT_C_INLINE_THUNK) -# if __has_attribute(always_inline) -# if __has_attribute(nodebug) -# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) __attribute__((nodebug)) -# else -# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) -# endif -# else -# define SWIFT_C_INLINE_THUNK inline -# endif -#endif -#if defined(_WIN32) -#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL) -# define SWIFT_IMPORT_STDLIB_SYMBOL __declspec(dllimport) -#endif -#else -#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL) -# define SWIFT_IMPORT_STDLIB_SYMBOL -#endif -#endif -#if defined(__OBJC__) -#if __has_feature(objc_modules) -#if __has_warning("-Watimport-in-framework-header") -#pragma clang diagnostic ignored "-Watimport-in-framework-header" -#endif -#endif - -#endif -#pragma clang diagnostic ignored "-Wproperty-attribute-mismatch" -#pragma clang diagnostic ignored "-Wduplicate-method-arg" -#if __has_warning("-Wpragma-clang-attribute") -# pragma clang diagnostic ignored "-Wpragma-clang-attribute" -#endif -#pragma clang diagnostic ignored "-Wunknown-pragmas" -#pragma clang diagnostic ignored "-Wnullability" -#pragma clang diagnostic ignored "-Wdollar-in-identifier-extension" - -#if __has_attribute(external_source_symbol) -# pragma push_macro("any") -# undef any -# pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="DouShouQiModel",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol)) -# pragma pop_macro("any") -#endif - -#if defined(__OBJC__) -#endif -#if __has_attribute(external_source_symbol) -# pragma clang attribute pop -#endif -#if defined(__cplusplus) -#endif -#pragma clang diagnostic pop -#endif - -#elif defined(__x86_64__) && __x86_64__ -// Generated by Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5) -#ifndef DOUSHOUQIMODEL_SWIFT_H -#define DOUSHOUQIMODEL_SWIFT_H -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wgcc-compat" - -#if !defined(__has_include) -# define __has_include(x) 0 -#endif -#if !defined(__has_attribute) -# define __has_attribute(x) 0 -#endif -#if !defined(__has_feature) -# define __has_feature(x) 0 -#endif -#if !defined(__has_warning) -# define __has_warning(x) 0 -#endif - -#if __has_include() -# include -#endif - -#pragma clang diagnostic ignored "-Wauto-import" -#if defined(__OBJC__) -#include -#endif -#if defined(__cplusplus) -#include -#include -#include -#include -#include -#include -#include -#else -#include -#include -#include -#include -#endif -#if defined(__cplusplus) -#if defined(__arm64e__) && __has_include() -# include -#else -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wreserved-macro-identifier" -# ifndef __ptrauth_swift_value_witness_function_pointer -# define __ptrauth_swift_value_witness_function_pointer(x) -# endif -# ifndef __ptrauth_swift_class_method_pointer -# define __ptrauth_swift_class_method_pointer(x) -# endif -#pragma clang diagnostic pop -#endif -#endif - -#if !defined(SWIFT_TYPEDEFS) -# define SWIFT_TYPEDEFS 1 -# if __has_include() -# include -# elif !defined(__cplusplus) -typedef uint_least16_t char16_t; -typedef uint_least32_t char32_t; -# endif -typedef float swift_float2 __attribute__((__ext_vector_type__(2))); -typedef float swift_float3 __attribute__((__ext_vector_type__(3))); -typedef float swift_float4 __attribute__((__ext_vector_type__(4))); -typedef double swift_double2 __attribute__((__ext_vector_type__(2))); -typedef double swift_double3 __attribute__((__ext_vector_type__(3))); -typedef double swift_double4 __attribute__((__ext_vector_type__(4))); -typedef int swift_int2 __attribute__((__ext_vector_type__(2))); -typedef int swift_int3 __attribute__((__ext_vector_type__(3))); -typedef int swift_int4 __attribute__((__ext_vector_type__(4))); -typedef unsigned int swift_uint2 __attribute__((__ext_vector_type__(2))); -typedef unsigned int swift_uint3 __attribute__((__ext_vector_type__(3))); -typedef unsigned int swift_uint4 __attribute__((__ext_vector_type__(4))); -#endif - -#if !defined(SWIFT_PASTE) -# define SWIFT_PASTE_HELPER(x, y) x##y -# define SWIFT_PASTE(x, y) SWIFT_PASTE_HELPER(x, y) -#endif -#if !defined(SWIFT_METATYPE) -# define SWIFT_METATYPE(X) Class -#endif -#if !defined(SWIFT_CLASS_PROPERTY) -# if __has_feature(objc_class_property) -# define SWIFT_CLASS_PROPERTY(...) __VA_ARGS__ -# else -# define SWIFT_CLASS_PROPERTY(...) -# endif -#endif -#if !defined(SWIFT_RUNTIME_NAME) -# if __has_attribute(objc_runtime_name) -# define SWIFT_RUNTIME_NAME(X) __attribute__((objc_runtime_name(X))) -# else -# define SWIFT_RUNTIME_NAME(X) -# endif -#endif -#if !defined(SWIFT_COMPILE_NAME) -# if __has_attribute(swift_name) -# define SWIFT_COMPILE_NAME(X) __attribute__((swift_name(X))) -# else -# define SWIFT_COMPILE_NAME(X) -# endif -#endif -#if !defined(SWIFT_METHOD_FAMILY) -# if __has_attribute(objc_method_family) -# define SWIFT_METHOD_FAMILY(X) __attribute__((objc_method_family(X))) -# else -# define SWIFT_METHOD_FAMILY(X) -# endif -#endif -#if !defined(SWIFT_NOESCAPE) -# if __has_attribute(noescape) -# define SWIFT_NOESCAPE __attribute__((noescape)) -# else -# define SWIFT_NOESCAPE -# endif -#endif -#if !defined(SWIFT_RELEASES_ARGUMENT) -# if __has_attribute(ns_consumed) -# define SWIFT_RELEASES_ARGUMENT __attribute__((ns_consumed)) -# else -# define SWIFT_RELEASES_ARGUMENT -# endif -#endif -#if !defined(SWIFT_WARN_UNUSED_RESULT) -# if __has_attribute(warn_unused_result) -# define SWIFT_WARN_UNUSED_RESULT __attribute__((warn_unused_result)) -# else -# define SWIFT_WARN_UNUSED_RESULT -# endif -#endif -#if !defined(SWIFT_NORETURN) -# if __has_attribute(noreturn) -# define SWIFT_NORETURN __attribute__((noreturn)) -# else -# define SWIFT_NORETURN -# endif -#endif -#if !defined(SWIFT_CLASS_EXTRA) -# define SWIFT_CLASS_EXTRA -#endif -#if !defined(SWIFT_PROTOCOL_EXTRA) -# define SWIFT_PROTOCOL_EXTRA -#endif -#if !defined(SWIFT_ENUM_EXTRA) -# define SWIFT_ENUM_EXTRA -#endif -#if !defined(SWIFT_CLASS) -# if __has_attribute(objc_subclassing_restricted) -# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_CLASS_EXTRA -# define SWIFT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_subclassing_restricted)) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# else -# define SWIFT_CLASS(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# define SWIFT_CLASS_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_CLASS_EXTRA -# endif -#endif -#if !defined(SWIFT_RESILIENT_CLASS) -# if __has_attribute(objc_class_stub) -# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) __attribute__((objc_class_stub)) -# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) __attribute__((objc_class_stub)) SWIFT_CLASS_NAMED(SWIFT_NAME) -# else -# define SWIFT_RESILIENT_CLASS(SWIFT_NAME) SWIFT_CLASS(SWIFT_NAME) -# define SWIFT_RESILIENT_CLASS_NAMED(SWIFT_NAME) SWIFT_CLASS_NAMED(SWIFT_NAME) -# endif -#endif -#if !defined(SWIFT_PROTOCOL) -# define SWIFT_PROTOCOL(SWIFT_NAME) SWIFT_RUNTIME_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA -# define SWIFT_PROTOCOL_NAMED(SWIFT_NAME) SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_PROTOCOL_EXTRA -#endif -#if !defined(SWIFT_EXTENSION) -# define SWIFT_EXTENSION(M) SWIFT_PASTE(M##_Swift_, __LINE__) -#endif -#if !defined(OBJC_DESIGNATED_INITIALIZER) -# if __has_attribute(objc_designated_initializer) -# define OBJC_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer)) -# else -# define OBJC_DESIGNATED_INITIALIZER -# endif -#endif -#if !defined(SWIFT_ENUM_ATTR) -# if __has_attribute(enum_extensibility) -# define SWIFT_ENUM_ATTR(_extensibility) __attribute__((enum_extensibility(_extensibility))) -# else -# define SWIFT_ENUM_ATTR(_extensibility) -# endif -#endif -#if !defined(SWIFT_ENUM) -# define SWIFT_ENUM(_type, _name, _extensibility) enum _name : _type _name; enum SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type -# if __has_feature(generalized_swift_name) -# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) enum _name : _type _name SWIFT_COMPILE_NAME(SWIFT_NAME); enum SWIFT_COMPILE_NAME(SWIFT_NAME) SWIFT_ENUM_ATTR(_extensibility) SWIFT_ENUM_EXTRA _name : _type -# else -# define SWIFT_ENUM_NAMED(_type, _name, SWIFT_NAME, _extensibility) SWIFT_ENUM(_type, _name, _extensibility) -# endif -#endif -#if !defined(SWIFT_UNAVAILABLE) -# define SWIFT_UNAVAILABLE __attribute__((unavailable)) -#endif -#if !defined(SWIFT_UNAVAILABLE_MSG) -# define SWIFT_UNAVAILABLE_MSG(msg) __attribute__((unavailable(msg))) -#endif -#if !defined(SWIFT_AVAILABILITY) -# define SWIFT_AVAILABILITY(plat, ...) __attribute__((availability(plat, __VA_ARGS__))) -#endif -#if !defined(SWIFT_WEAK_IMPORT) -# define SWIFT_WEAK_IMPORT __attribute__((weak_import)) -#endif -#if !defined(SWIFT_DEPRECATED) -# define SWIFT_DEPRECATED __attribute__((deprecated)) -#endif -#if !defined(SWIFT_DEPRECATED_MSG) -# define SWIFT_DEPRECATED_MSG(...) __attribute__((deprecated(__VA_ARGS__))) -#endif -#if !defined(SWIFT_DEPRECATED_OBJC) -# if __has_feature(attribute_diagnose_if_objc) -# define SWIFT_DEPRECATED_OBJC(Msg) __attribute__((diagnose_if(1, Msg, "warning"))) -# else -# define SWIFT_DEPRECATED_OBJC(Msg) SWIFT_DEPRECATED_MSG(Msg) -# endif -#endif -#if defined(__OBJC__) -#if !defined(IBSegueAction) -# define IBSegueAction -#endif -#endif -#if !defined(SWIFT_EXTERN) -# if defined(__cplusplus) -# define SWIFT_EXTERN extern "C" -# else -# define SWIFT_EXTERN extern -# endif -#endif -#if !defined(SWIFT_CALL) -# define SWIFT_CALL __attribute__((swiftcall)) -#endif -#if !defined(SWIFT_INDIRECT_RESULT) -# define SWIFT_INDIRECT_RESULT __attribute__((swift_indirect_result)) -#endif -#if !defined(SWIFT_CONTEXT) -# define SWIFT_CONTEXT __attribute__((swift_context)) -#endif -#if !defined(SWIFT_ERROR_RESULT) -# define SWIFT_ERROR_RESULT __attribute__((swift_error_result)) -#endif -#if defined(__cplusplus) -# define SWIFT_NOEXCEPT noexcept -#else -# define SWIFT_NOEXCEPT -#endif -#if !defined(SWIFT_C_INLINE_THUNK) -# if __has_attribute(always_inline) -# if __has_attribute(nodebug) -# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) __attribute__((nodebug)) -# else -# define SWIFT_C_INLINE_THUNK inline __attribute__((always_inline)) -# endif -# else -# define SWIFT_C_INLINE_THUNK inline -# endif -#endif -#if defined(_WIN32) -#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL) -# define SWIFT_IMPORT_STDLIB_SYMBOL __declspec(dllimport) -#endif -#else -#if !defined(SWIFT_IMPORT_STDLIB_SYMBOL) -# define SWIFT_IMPORT_STDLIB_SYMBOL -#endif -#endif -#if defined(__OBJC__) -#if __has_feature(objc_modules) -#if __has_warning("-Watimport-in-framework-header") -#pragma clang diagnostic ignored "-Watimport-in-framework-header" -#endif -#endif - -#endif -#pragma clang diagnostic ignored "-Wproperty-attribute-mismatch" -#pragma clang diagnostic ignored "-Wduplicate-method-arg" -#if __has_warning("-Wpragma-clang-attribute") -# pragma clang diagnostic ignored "-Wpragma-clang-attribute" -#endif -#pragma clang diagnostic ignored "-Wunknown-pragmas" -#pragma clang diagnostic ignored "-Wnullability" -#pragma clang diagnostic ignored "-Wdollar-in-identifier-extension" - -#if __has_attribute(external_source_symbol) -# pragma push_macro("any") -# undef any -# pragma clang attribute push(__attribute__((external_source_symbol(language="Swift", defined_in="DouShouQiModel",generated_declaration))), apply_to=any(function,enum,objc_interface,objc_category,objc_protocol)) -# pragma pop_macro("any") -#endif - -#if defined(__OBJC__) -#endif -#if __has_attribute(external_source_symbol) -# pragma clang attribute pop -#endif -#if defined(__cplusplus) -#endif -#pragma clang diagnostic pop -#endif - -#else -#error unsupported Swift architecture -#endif diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Headers/DouShouQiModel.h b/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Headers/DouShouQiModel.h deleted file mode 100644 index 5bbf06a..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Headers/DouShouQiModel.h +++ /dev/null @@ -1,18 +0,0 @@ -// -// DouShouQiModel.h -// DouShouQiModel -// -// Created by Marc ChevaldonnΓ© on 14/05/2024. -// - -#import - -//! Project version number for DouShouQiModel. -FOUNDATION_EXPORT double DouShouQiModelVersionNumber; - -//! Project version string for DouShouQiModel. -FOUNDATION_EXPORT const unsigned char DouShouQiModelVersionString[]; - -// In this header, you should import all the public headers of your framework using statements like #import - - diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/arm64-apple-macos.abi.json b/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/arm64-apple-macos.abi.json deleted file mode 100644 index c28e9fd..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/arm64-apple-macos.abi.json +++ /dev/null @@ -1,8546 +0,0 @@ -{ - "ABIRoot": { - "kind": "Root", - "name": "TopLevel", - "printedName": "TopLevel", - "children": [ - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Result", - "printedName": "Result", - "children": [ - { - "kind": "Var", - "name": "notFinished", - "printedName": "notFinished", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Result.Type) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO11notFinishedyA2CmF", - "mangledName": "$s14DouShouQiModel6ResultO11notFinishedyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "even", - "printedName": "even", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Result.Type) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO4evenyA2CmF", - "mangledName": "$s14DouShouQiModel6ResultO4evenyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "winner", - "printedName": "winner", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Result.Type) -> (DouShouQiModel.Owner, DouShouQiModel.WinningReason) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner, DouShouQiModel.WinningReason) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(winner: DouShouQiModel.Owner, reason: DouShouQiModel.WinningReason)", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO6winneryAcA5OwnerO_AA13WinningReasonOtcACmF", - "mangledName": "$s14DouShouQiModel6ResultO6winneryAcA5OwnerO_AA13WinningReasonOtcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6ResultO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel6ResultO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel6ResultO", - "mangledName": "$s14DouShouQiModel6ResultO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "TypeDecl", - "name": "WinningReason", - "printedName": "WinningReason", - "children": [ - { - "kind": "Var", - "name": "denReached", - "printedName": "denReached", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO10denReachedyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO10denReachedyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "noMorePieces", - "printedName": "noMorePieces", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO12noMorePiecesyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO12noMorePiecesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "tooManyOccurences", - "printedName": "tooManyOccurences", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO17tooManyOccurencesyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO17tooManyOccurencesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "noMovesLeft", - "printedName": "noMovesLeft", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO11noMovesLeftyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO11noMovesLeftyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel13WinningReasonO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel13WinningReasonO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel13WinningReasonO9hashValueSivp", - "mangledName": "$s14DouShouQiModel13WinningReasonO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel13WinningReasonO9hashValueSivg", - "mangledName": "$s14DouShouQiModel13WinningReasonO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel13WinningReasonO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel13WinningReasonO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel13WinningReasonO", - "mangledName": "$s14DouShouQiModel13WinningReasonO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "BoardResult", - "printedName": "BoardResult", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel11BoardResultO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "ok", - "printedName": "ok", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> (DouShouQiModel.Piece?) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece?) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece?)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO2okyAcA5PieceVSg_tcACmF", - "mangledName": "$s14DouShouQiModel11BoardResultO2okyAcA5PieceVSg_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "failed", - "printedName": "failed", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> (DouShouQiModel.BoardFailingReason) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(reason: DouShouQiModel.BoardFailingReason)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO6failedyAcA0E13FailingReasonO_tcACmF", - "mangledName": "$s14DouShouQiModel11BoardResultO6failedyAcA0E13FailingReasonO_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11BoardResultO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel11BoardResultO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel11BoardResultO", - "mangledName": "$s14DouShouQiModel11BoardResultO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "TypeDecl", - "name": "BoardFailingReason", - "printedName": "BoardFailingReason", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "outOfBounds", - "printedName": "outOfBounds", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO11outOfBoundsyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO11outOfBoundsyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cellNotEmpty", - "printedName": "cellNotEmpty", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO12cellNotEmptyyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO12cellNotEmptyyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cellEmpty", - "printedName": "cellEmpty", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9cellEmptyyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9cellEmptyyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel18BoardFailingReasonO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9hashValueSivp", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9hashValueSivg", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel18BoardFailingReasonO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel18BoardFailingReasonO", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "HumanPlayer", - "printedName": "HumanPlayer", - "children": [ - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:andInputMethod:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.HumanPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ] - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel11HumanPlayerC8withName5andId0I11InputMethodACSgSS_AA5OwnerOAA4MoveVSgACctcfc", - "mangledName": "$s14DouShouQiModel11HumanPlayerC8withName5andId0I11InputMethodACSgSS_AA5OwnerOAA4MoveVSgACctcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.HumanPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel11HumanPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel11HumanPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11HumanPlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "mangledName": "$s14DouShouQiModel11HumanPlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "changeInput", - "printedName": "changeInput(input:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11HumanPlayerC11changeInput5inputyAA4MoveVSgACc_tF", - "mangledName": "$s14DouShouQiModel11HumanPlayerC11changeInput5inputyAA4MoveVSgACc_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11HumanPlayerC10chooseMoveyyAA0H0VSgYaKF", - "mangledName": "$s14DouShouQiModel11HumanPlayerC10chooseMoveyyAA0H0VSgYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel11HumanPlayerC", - "mangledName": "$s14DouShouQiModel11HumanPlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "superclassUsr": "s:14DouShouQiModel6PlayerC", - "inheritsConvenienceInitializers": true, - "superclassNames": [ - "DouShouQiModel.Player" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "ClassicRules", - "printedName": "ClassicRules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11createBoardAA0H0VyFZ", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11createBoardAA0H0VyFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10checkBoardyyAA0H0VKFZ", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10checkBoardyyAA0H0VKFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init()", - "children": [ - { - "kind": "TypeNominal", - "name": "ClassicRules", - "printedName": "DouShouQiModel.ClassicRules", - "usr": "s:14DouShouQiModel12ClassicRulesV" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12ClassicRulesVACycfc", - "mangledName": "$s14DouShouQiModel12ClassicRulesVACycfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(occurences:historic:)", - "children": [ - { - "kind": "TypeNominal", - "name": "ClassicRules", - "printedName": "DouShouQiModel.ClassicRules", - "usr": "s:14DouShouQiModel12ClassicRulesV" - }, - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toM00n2ToP0SbAA0K0V_S4itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toM00n2ToP0SbAA0K0V_S4itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard04withH0SbAA0K0V_AA0H0VtF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard04withH0SbAA0K0V_AA0H0VtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10isGameOver9withBoard16andLastRowPlayed0lM12ColumnPlayerSb_AA6ResultOtAA0K0V_S2itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10isGameOver9withBoard16andLastRowPlayed0lM12ColumnPlayerSb_AA6ResultOtAA0K0V_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10playedMove_15onStartingBoard012andResultingK0yAA0H0V_AA0K0VAJtKF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10playedMove_15onStartingBoard012andResultingK0yAA0H0V_AA0K0VAJtKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel12ClassicRulesV", - "mangledName": "$s14DouShouQiModel12ClassicRulesV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Rules", - "printedName": "Rules", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Cell", - "printedName": "Cell", - "children": [ - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel4CellV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel4CellV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "cellType", - "printedName": "cellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV8cellTypeAA0eG0Ovp", - "mangledName": "$s14DouShouQiModel4CellV8cellTypeAA0eG0Ovp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV8cellTypeAA0eG0Ovg", - "mangledName": "$s14DouShouQiModel4CellV8cellTypeAA0eG0Ovg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "initialOwner", - "printedName": "initialOwner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV12initialOwnerAA0G0Ovp", - "mangledName": "$s14DouShouQiModel4CellV12initialOwnerAA0G0Ovp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV12initialOwnerAA0G0Ovg", - "mangledName": "$s14DouShouQiModel4CellV12initialOwnerAA0G0Ovg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "piece", - "printedName": "piece", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvp", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvg", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - }, - { - "kind": "Accessor", - "name": "Set", - "printedName": "Set()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvs", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvs", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "set" - }, - { - "kind": "Accessor", - "name": "Modify", - "printedName": "Modify()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvM", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvM", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "_modify" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(ofType:ownedBy:withPiece:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "hasDefaultArg": true, - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "hasDefaultArg": true, - "usr": "s:Sq" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4CellV6ofType7ownedBy9withPieceAcA0eG0O_AA5OwnerOAA0K0VSgtcfc", - "mangledName": "$s14DouShouQiModel4CellV6ofType7ownedBy9withPieceAcA0eG0O_AA5OwnerOAA0K0VSgtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4CellV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel4CellV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel4CellV", - "mangledName": "$s14DouShouQiModel4CellV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "VerySimpleRules", - "printedName": "VerySimpleRules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11createBoardAA0I0VyFZ", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11createBoardAA0I0VyFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10checkBoardyyAA0I0VKFZ", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10checkBoardyyAA0I0VKFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init()", - "children": [ - { - "kind": "TypeNominal", - "name": "VerySimpleRules", - "printedName": "DouShouQiModel.VerySimpleRules", - "usr": "s:14DouShouQiModel15VerySimpleRulesV" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel15VerySimpleRulesVACycfc", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesVACycfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(occurences:historic:)", - "children": [ - { - "kind": "TypeNominal", - "name": "VerySimpleRules", - "printedName": "DouShouQiModel.VerySimpleRules", - "usr": "s:14DouShouQiModel15VerySimpleRulesV" - }, - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toN00o2ToQ0SbAA0L0V_S4itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toN00o2ToQ0SbAA0L0V_S4itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard04withI0SbAA0L0V_AA0I0VtF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard04withI0SbAA0L0V_AA0I0VtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10isGameOver9withBoard16andLastRowPlayed0mN12ColumnPlayerSb_AA6ResultOtAA0L0V_S2itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10isGameOver9withBoard16andLastRowPlayed0mN12ColumnPlayerSb_AA6ResultOtAA0L0V_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10playedMove_15onStartingBoard012andResultingL0yAA0I0V_AA0L0VAJtKF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10playedMove_15onStartingBoard012andResultingL0yAA0I0V_AA0L0VAJtKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel15VerySimpleRulesV", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Rules", - "printedName": "Rules", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Rules", - "printedName": "Rules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11createBoardAA0G0VyFZ", - "mangledName": "$s14DouShouQiModel5RulesP11createBoardAA0G0VyFZ", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "static": true, - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10checkBoardyyAA0G0VKFZ", - "mangledName": "$s14DouShouQiModel5RulesP10checkBoardyyAA0G0VKFZ", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "static": true, - "protocolReq": true, - "throwing": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel5RulesP13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel5RulesP8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel5RulesP8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11isMoveValid7onBoard7fromRow13andFromColumn02toL00m2ToO0SbAA0J0V_S4itF", - "mangledName": "$s14DouShouQiModel5RulesP11isMoveValid7onBoard7fromRow13andFromColumn02toL00m2ToO0SbAA0J0V_S4itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11isMoveValid7onBoard04withG0SbAA0J0V_AA0G0VtF", - "mangledName": "$s14DouShouQiModel5RulesP11isMoveValid7onBoard04withG0SbAA0J0V_AA0G0VtF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10isGameOver9withBoard16andLastRowPlayed0kL12ColumnPlayerSb_AA6ResultOtAA0J0V_S2itF", - "mangledName": "$s14DouShouQiModel5RulesP10isGameOver9withBoard16andLastRowPlayed0kL12ColumnPlayerSb_AA6ResultOtAA0J0V_S2itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10playedMove_15onStartingBoard012andResultingJ0yAA0G0V_AA0J0VAJtKF", - "mangledName": "$s14DouShouQiModel5RulesP10playedMove_15onStartingBoard012andResultingJ0yAA0G0V_AA0J0VAJtKF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "declAttributes": [ - "Mutating" - ], - "throwing": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "protocolReq": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5RulesP8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel5RulesP8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "protocolReq": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5RulesP8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel5RulesP8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Protocol", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Player", - "printedName": "Player", - "children": [ - { - "kind": "Var", - "name": "name", - "printedName": "name", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6PlayerC4nameSSvp", - "mangledName": "$s14DouShouQiModel6PlayerC4nameSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "Final", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6PlayerC4nameSSvg", - "mangledName": "$s14DouShouQiModel6PlayerC4nameSSvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "declAttributes": [ - "Final" - ], - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "id", - "printedName": "id", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6PlayerC2idAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel6PlayerC2idAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "Final", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6PlayerC2idAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel6PlayerC2idAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "declAttributes": [ - "Final" - ], - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Player?", - "children": [ - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel6PlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel6PlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6PlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "mangledName": "$s14DouShouQiModel6PlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addPlayedCallbacksListener", - "printedName": "addPlayedCallbacksListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Move?, DouShouQiModel.Player) async throws -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Move?, DouShouQiModel.Player)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6PlayerC26addPlayedCallbacksListeneryyyAA4MoveVSg_ACtYaKcF", - "mangledName": "$s14DouShouQiModel6PlayerC26addPlayedCallbacksListeneryyyAA4MoveVSg_ACtYaKcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "notifyPlayed", - "printedName": "notifyPlayed(withMove:andPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6PlayerC12notifyPlayed8withMove03andE0yAA0I0VSg_ACtYaKF", - "mangledName": "$s14DouShouQiModel6PlayerC12notifyPlayed8withMove03andE0yAA0I0VSg_ACtYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel6PlayerC", - "mangledName": "$s14DouShouQiModel6PlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "GameError", - "printedName": "GameError", - "children": [ - { - "kind": "Var", - "name": "invalidMove", - "printedName": "invalidMove", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO11invalidMoveyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO11invalidMoveyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "nextPlayerError", - "printedName": "nextPlayerError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO010nextPlayerF0yA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO010nextPlayerF0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badPlayerId", - "printedName": "badPlayerId", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> (Swift.String) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(Swift.String) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(message: Swift.String)", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO11badPlayerIdyACSS_tcACmF", - "mangledName": "$s14DouShouQiModel9GameErrorO11badPlayerIdyACSS_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidRules", - "printedName": "invalidRules", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO12invalidRulesyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO12invalidRulesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidPlayer", - "printedName": "invalidPlayer", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO13invalidPlayeryA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO13invalidPlayeryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidGame", - "printedName": "invalidGame", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO07invalidE0yA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO07invalidE0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidBoard", - "printedName": "invalidBoard", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO12invalidBoardyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO12invalidBoardyA2CmF", - "moduleName": "DouShouQiModel" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel9GameErrorO", - "mangledName": "$s14DouShouQiModel9GameErrorO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Error", - "printedName": "Error", - "usr": "s:s5ErrorP", - "mangledName": "$ss5ErrorP" - }, - { - "kind": "Conformance", - "name": "Sendable", - "printedName": "Sendable", - "usr": "s:s8SendableP", - "mangledName": "$ss8SendableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "RandomPlayer", - "printedName": "RandomPlayer", - "children": [ - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12RandomPlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "mangledName": "$s14DouShouQiModel12RandomPlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.RandomPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "RandomPlayer", - "printedName": "DouShouQiModel.RandomPlayer", - "usr": "s:14DouShouQiModel12RandomPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12RandomPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel12RandomPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "overriding": true, - "implicit": true, - "declAttributes": [ - "Override" - ], - "init_kind": "Designated" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel12RandomPlayerC", - "mangledName": "$s14DouShouQiModel12RandomPlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "superclassUsr": "s:14DouShouQiModel8IAPlayerC", - "inheritsConvenienceInitializers": true, - "superclassNames": [ - "DouShouQiModel.IAPlayer", - "DouShouQiModel.Player" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "CellType", - "printedName": "CellType", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "jungle", - "printedName": "jungle", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO6jungleyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO6jungleyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "water", - "printedName": "water", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO5wateryA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO5wateryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "trap", - "printedName": "trap", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO4trapyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO4trapyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "den", - "printedName": "den", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO3denyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO3denyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "allCases", - "printedName": "allCases", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel8CellTypeO8allCasesSayACGvpZ", - "mangledName": "$s14DouShouQiModel8CellTypeO8allCasesSayACGvpZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel8CellTypeO8allCasesSayACGvgZ", - "mangledName": "$s14DouShouQiModel8CellTypeO8allCasesSayACGvgZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel8CellTypeO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel8CellTypeO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel8CellTypeO9hashValueSivp", - "mangledName": "$s14DouShouQiModel8CellTypeO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel8CellTypeO9hashValueSivg", - "mangledName": "$s14DouShouQiModel8CellTypeO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel8CellTypeO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel8CellTypeO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel8CellTypeO", - "mangledName": "$s14DouShouQiModel8CellTypeO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "CaseIterable", - "printedName": "CaseIterable", - "children": [ - { - "kind": "TypeWitness", - "name": "AllCases", - "printedName": "AllCases", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ] - } - ], - "usr": "s:s12CaseIterableP", - "mangledName": "$ss12CaseIterableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Board", - "printedName": "Board", - "children": [ - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5BoardV4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "nbRows", - "printedName": "nbRows", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV6nbRowsSivp", - "mangledName": "$s14DouShouQiModel5BoardV6nbRowsSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl", - "RawDocComment" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV6nbRowsSivg", - "mangledName": "$s14DouShouQiModel5BoardV6nbRowsSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "nbColumns", - "printedName": "nbColumns", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV9nbColumnsSivp", - "mangledName": "$s14DouShouQiModel5BoardV9nbColumnsSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl", - "RawDocComment" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV9nbColumnsSivg", - "mangledName": "$s14DouShouQiModel5BoardV9nbColumnsSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "grid", - "printedName": "grid", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvp", - "mangledName": "$s14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvg", - "mangledName": "$s14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withGrid:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Board?", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel5BoardV8withGridACSgSaySayAA4CellVGG_tcfc", - "mangledName": "$s14DouShouQiModel5BoardV8withGridACSgSaySayAA4CellVGG_tcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "countPieces", - "printedName": "countPieces(of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11countPieces2ofSiAA5OwnerO_tF", - "mangledName": "$s14DouShouQiModel5BoardV11countPieces2ofSiAA5OwnerO_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "countPieces", - "printedName": "countPieces()", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11countPiecesSi04nbOfgI7Player1_Si0higI7Player2tyF", - "mangledName": "$s14DouShouQiModel5BoardV11countPiecesSi04nbOfgI7Player1_Si0higI7Player2tyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "insert", - "printedName": "insert(piece:atRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV6insert5piece5atRow9andColumnAA0E6ResultOAA5PieceV_S2itF", - "mangledName": "$s14DouShouQiModel5BoardV6insert5piece5atRow9andColumnAA0E6ResultOAA5PieceV_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "removePiece", - "printedName": "removePiece(atRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11removePiece5atRow9andColumnAA0E6ResultOSi_SitF", - "mangledName": "$s14DouShouQiModel5BoardV11removePiece5atRow9andColumnAA0E6ResultOSi_SitF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV9hashValueSivp", - "mangledName": "$s14DouShouQiModel5BoardV9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV9hashValueSivg", - "mangledName": "$s14DouShouQiModel5BoardV9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5BoardV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel5BoardV", - "mangledName": "$s14DouShouQiModel5BoardV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Piece", - "printedName": "Piece", - "children": [ - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel5PieceV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel5PieceV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "owner", - "printedName": "owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV5ownerAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel5PieceV5ownerAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV5ownerAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel5PieceV5ownerAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "animal", - "printedName": "animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV6animalAA6AnimalOvp", - "mangledName": "$s14DouShouQiModel5PieceV6animalAA6AnimalOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV6animalAA6AnimalOvg", - "mangledName": "$s14DouShouQiModel5PieceV6animalAA6AnimalOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withOwner:andAnimal:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel5PieceV9withOwner9andAnimalAcA0G0O_AA0I0Otcfc", - "mangledName": "$s14DouShouQiModel5PieceV9withOwner9andAnimalAcA0G0O_AA0I0Otcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV9hashValueSivp", - "mangledName": "$s14DouShouQiModel5PieceV9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV9hashValueSivg", - "mangledName": "$s14DouShouQiModel5PieceV9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5PieceV4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5PieceV4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5PieceV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5PieceV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel5PieceV", - "mangledName": "$s14DouShouQiModel5PieceV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "InvalidBoardError", - "printedName": "InvalidBoardError", - "children": [ - { - "kind": "Var", - "name": "unknownError", - "printedName": "unknownError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO07unknownG0yA2CmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO07unknownG0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badDimensions", - "printedName": "badDimensions", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(nbRows: Swift.Int, nbColumns: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO13badDimensionsyACSi_SitcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO13badDimensionsyACSi_SitcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badCellType", - "printedName": "badCellType", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.CellType, Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType, Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO11badCellTypeyAcA0iJ0O_S2itcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO11badCellTypeyAcA0iJ0O_S2itcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "multipleOccurenceOfSamePiece", - "printedName": "multipleOccurenceOfSamePiece", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO28multipleOccurenceOfSamePieceyAcA0L0V_tcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO28multipleOccurenceOfSamePieceyAcA0L0V_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "pieceWithNoOwner", - "printedName": "pieceWithNoOwner", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO16pieceWithNoOwneryAcA5PieceV_tcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO16pieceWithNoOwneryAcA5PieceV_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "pieceNotAllowedOnThisCell", - "printedName": "pieceNotAllowedOnThisCell", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece, DouShouQiModel.Cell) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece, DouShouQiModel.Cell) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO25pieceNotAllowedOnThisCellyAcA5PieceV_AA0M0VtcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO25pieceNotAllowedOnThisCellyAcA5PieceV_AA0M0VtcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Error", - "printedName": "Error", - "usr": "s:s5ErrorP", - "mangledName": "$ss5ErrorP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Sendable", - "printedName": "Sendable", - "usr": "s:s8SendableP", - "mangledName": "$ss8SendableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Owner", - "printedName": "Owner", - "children": [ - { - "kind": "Var", - "name": "noOne", - "printedName": "noOne", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO5noOneyA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO5noOneyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "player1", - "printedName": "player1", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO7player1yA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO7player1yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "player2", - "printedName": "player2", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO7player2yA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO7player2yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "simpleDescription", - "printedName": "simpleDescription", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5OwnerO17simpleDescriptionSSvp", - "mangledName": "$s14DouShouQiModel5OwnerO17simpleDescriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5OwnerO17simpleDescriptionSSvg", - "mangledName": "$s14DouShouQiModel5OwnerO17simpleDescriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5OwnerO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5OwnerO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5OwnerO9hashValueSivp", - "mangledName": "$s14DouShouQiModel5OwnerO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5OwnerO9hashValueSivg", - "mangledName": "$s14DouShouQiModel5OwnerO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5OwnerO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5OwnerO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel5OwnerO", - "mangledName": "$s14DouShouQiModel5OwnerO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "RawDocComment" - ] - }, - { - "kind": "TypeDecl", - "name": "IAPlayer", - "printedName": "IAPlayer", - "children": [ - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.IAPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "IAPlayer", - "printedName": "DouShouQiModel.IAPlayer", - "usr": "s:14DouShouQiModel8IAPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel8IAPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel8IAPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "overriding": true, - "implicit": true, - "declAttributes": [ - "Override" - ], - "init_kind": "Designated" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel8IAPlayerC", - "mangledName": "$s14DouShouQiModel8IAPlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "superclassUsr": "s:14DouShouQiModel6PlayerC", - "inheritsConvenienceInitializers": true, - "superclassNames": [ - "DouShouQiModel.Player" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Move", - "printedName": "Move", - "children": [ - { - "kind": "Var", - "name": "owner", - "printedName": "owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV5ownerAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel4MoveV5ownerAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV5ownerAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel4MoveV5ownerAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rowOrigin", - "printedName": "rowOrigin", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV9rowOriginSivp", - "mangledName": "$s14DouShouQiModel4MoveV9rowOriginSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV9rowOriginSivg", - "mangledName": "$s14DouShouQiModel4MoveV9rowOriginSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "columnOrigin", - "printedName": "columnOrigin", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV12columnOriginSivp", - "mangledName": "$s14DouShouQiModel4MoveV12columnOriginSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV12columnOriginSivg", - "mangledName": "$s14DouShouQiModel4MoveV12columnOriginSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rowDestination", - "printedName": "rowDestination", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV14rowDestinationSivp", - "mangledName": "$s14DouShouQiModel4MoveV14rowDestinationSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV14rowDestinationSivg", - "mangledName": "$s14DouShouQiModel4MoveV14rowDestinationSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "columnDestination", - "printedName": "columnDestination", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV17columnDestinationSivp", - "mangledName": "$s14DouShouQiModel4MoveV17columnDestinationSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV17columnDestinationSivg", - "mangledName": "$s14DouShouQiModel4MoveV17columnDestinationSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(of:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4MoveV2of7fromRow13andFromColumn02toH00i2ToK0AcA5OwnerO_S4itcfc", - "mangledName": "$s14DouShouQiModel4MoveV2of7fromRow13andFromColumn02toH00i2ToK0AcA5OwnerO_S4itcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel4MoveV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel4MoveV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4MoveV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel4MoveV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel4MoveV", - "mangledName": "$s14DouShouQiModel4MoveV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Animal", - "printedName": "Animal", - "children": [ - { - "kind": "Var", - "name": "rat", - "printedName": "rat", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3ratyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3ratyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cat", - "printedName": "cat", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3catyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3catyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "dog", - "printedName": "dog", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3dogyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3dogyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "wolf", - "printedName": "wolf", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO4wolfyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO4wolfyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "leopard", - "printedName": "leopard", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO7leopardyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO7leopardyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "tiger", - "printedName": "tiger", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO5tigeryA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO5tigeryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "lion", - "printedName": "lion", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO4lionyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO4lionyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "elephant", - "printedName": "elephant", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO8elephantyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO8elephantyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "rawValue", - "printedName": "rawValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6AnimalO8rawValueSivp", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6AnimalO8rawValueSivg", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(rawValue:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Animal?", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel6AnimalO8rawValueACSgSi_tcfc", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueACSgSi_tcfc", - "moduleName": "DouShouQiModel", - "implicit": true, - "init_kind": "Designated" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel6AnimalO", - "mangledName": "$s14DouShouQiModel6AnimalO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "enumRawTypeName": "Int", - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "RawRepresentable", - "printedName": "RawRepresentable", - "children": [ - { - "kind": "TypeWitness", - "name": "RawValue", - "printedName": "RawValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ], - "usr": "s:SY", - "mangledName": "$sSY" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Game", - "printedName": "Game", - "children": [ - { - "kind": "Var", - "name": "board", - "printedName": "board", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameC5boardAA5BoardVvp", - "mangledName": "$s14DouShouQiModel4GameC5boardAA5BoardVvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameC5boardAA5BoardVvg", - "mangledName": "$s14DouShouQiModel4GameC5boardAA5BoardVvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rules", - "printedName": "rules", - "children": [ - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameC5rulesAA5Rules_pvp", - "mangledName": "$s14DouShouQiModel4GameC5rulesAA5Rules_pvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameC5rulesAA5Rules_pvg", - "mangledName": "$s14DouShouQiModel4GameC5rulesAA5Rules_pvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "players", - "printedName": "players", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Owner : DouShouQiModel.Player]", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameC7playersSDyAA5OwnerOAA6PlayerCGvp", - "mangledName": "$s14DouShouQiModel4GameC7playersSDyAA5OwnerOAA6PlayerCGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Final", - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Owner : DouShouQiModel.Player]", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameC7playersSDyAA5OwnerOAA6PlayerCGvg", - "mangledName": "$s14DouShouQiModel4GameC7playersSDyAA5OwnerOAA6PlayerCGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "declAttributes": [ - "Final" - ], - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withRules:andPlayer1:andPlayer2:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameC" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4GameC9withRules10andPlayer10H7Player2AcA0G0_p_AA6PlayerCAItKcfc", - "mangledName": "$s14DouShouQiModel4GameC9withRules10andPlayer10H7Player2AcA0G0_p_AA6PlayerCAItKcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withBoard:andRules:andPlayer1:andPlayer2:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameC" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4GameC9withBoard8andRules0H7Player10H7Player2AcA0G0V_AA0I0_pAA6PlayerCALtKcfc", - "mangledName": "$s14DouShouQiModel4GameC9withBoard8andRules0H7Player10H7Player2AcA0G0V_AA0I0_pAA6PlayerCALtKcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl", - "RawDocComment" - ], - "throwing": true, - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "addGameStartedListener", - "printedName": "addGameStartedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC03addE15StartedListeneryyyAA5BoardVcF", - "mangledName": "$s14DouShouQiModel4GameC03addE15StartedListeneryyyAA5BoardVcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addPlayerNotifiedListener", - "printedName": "addPlayerNotifiedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Player) async throws -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Player)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC25addPlayerNotifiedListeneryyyAA5BoardV_AA0G0CtYaKcF", - "mangledName": "$s14DouShouQiModel4GameC25addPlayerNotifiedListeneryyyAA5BoardV_AA0G0CtYaKcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addGameChangedListener", - "printedName": "addGameChangedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Game) async -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameC" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC03addE15ChangedListeneryyyACYacF", - "mangledName": "$s14DouShouQiModel4GameC03addE15ChangedListeneryyyACYacF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addGameOverListener", - "printedName": "addGameOverListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Player?", - "children": [ - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:Sq" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC03addE12OverListeneryyyAA5BoardV_AA6ResultOAA6PlayerCSgtcF", - "mangledName": "$s14DouShouQiModel4GameC03addE12OverListeneryyyAA5BoardV_AA6ResultOAA6PlayerCSgtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addMoveChosenCallbacksListener", - "printedName": "addMoveChosenCallbacksListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC30addMoveChosenCallbacksListeneryyyAA5BoardV_AA0G0VAA6PlayerCtcF", - "mangledName": "$s14DouShouQiModel4GameC30addMoveChosenCallbacksListeneryyyAA5BoardV_AA0G0VAA6PlayerCtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addInvalidMoveCallbacksListener", - "printedName": "addInvalidMoveCallbacksListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC31addInvalidMoveCallbacksListeneryyyAA5BoardV_AA0H0VAA6PlayerCSbtcF", - "mangledName": "$s14DouShouQiModel4GameC31addInvalidMoveCallbacksListeneryyyAA5BoardV_AA0H0VAA6PlayerCSbtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addBoardChangedListener", - "printedName": "addBoardChangedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC23addBoardChangedListeneryyyAA0G0VcF", - "mangledName": "$s14DouShouQiModel4GameC23addBoardChangedListeneryyyAA0G0VcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addPieceRemovedListener", - "printedName": "addPieceRemovedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(Swift.Int, Swift.Int, DouShouQiModel.Piece) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Int, Swift.Int, DouShouQiModel.Piece)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC23addPieceRemovedListeneryyySi_SiAA0G0VtcF", - "mangledName": "$s14DouShouQiModel4GameC23addPieceRemovedListeneryyySi_SiAA0G0VtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "onPlayed", - "printedName": "onPlayed(with:from:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC8onPlayed4with4fromyAA4MoveVSg_AA6PlayerCtYaKF", - "mangledName": "$s14DouShouQiModel4GameC8onPlayed4with4fromyAA4MoveVSg_AA6PlayerCtYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "isOver", - "printedName": "isOver", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameC6isOverSbvp", - "mangledName": "$s14DouShouQiModel4GameC6isOverSbvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameC6isOverSbvg", - "mangledName": "$s14DouShouQiModel4GameC6isOverSbvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "start", - "printedName": "start()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC5startyyYaKF", - "mangledName": "$s14DouShouQiModel4GameC5startyyYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel4GameC", - "mangledName": "$s14DouShouQiModel4GameC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl", - "RawDocComment" - ] - } - ], - "json_format_version": 8 - }, - "ConstValues": [ - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 81, - "length": 1, - "value": "9" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 111, - "length": 1, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 148, - "length": 1, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 3048, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 3088, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 3941, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Dictionary", - "offset": 4285, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 4475, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 4517, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 4565, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 4967, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 6169, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 6189, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 6229, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 9685, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 10586, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 10906, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11013, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 11170, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11188, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11280, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11325, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11433, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11477, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11569, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11632, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11740, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 12266, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12307, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12319, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12326, - "length": 2, - "value": "-1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12703, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12714, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12721, - "length": 2, - "value": "-1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 13086, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 13464, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 15597, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 15704, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 15728, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 15845, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 15869, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 16049, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 16149, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 16579, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 16584, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Dictionary", - "offset": 16948, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 17004, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 122, - "length": 81, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 147, - "length": 4, - "value": "\"ΓΈ\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 152, - "length": 2, - "value": "\" on \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 167, - "length": 1, - "value": "\", \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 202, - "length": 1, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 89, - "length": 1, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 119, - "length": 1, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2067, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2107, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2267, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2277, - "length": 1, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2419, - "length": 1, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2429, - "length": 1, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2964, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3004, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 3773, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3793, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3833, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 4182, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 4292, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 4531, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 4639, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4773, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4782, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4800, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4809, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4925, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 5013, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 6962, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 7077, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7105, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 7230, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7258, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7350, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Dictionary", - "offset": 8072, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 8128, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Player.swift", - "kind": "Array", - "offset": 418, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "BooleanLiteral", - "offset": 475, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 570, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 694, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 981, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 996, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1015, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1049, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1212, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1278, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1548, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1579, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1979, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 2010, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 122, - "length": 40, - "value": "\"[\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 150, - "length": 1, - "value": "\":\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 160, - "length": 1, - "value": "\"]\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 183, - "length": 3, - "value": "\"x\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 229, - "length": 3, - "value": "\"1\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 275, - "length": 3, - "value": "\"2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 616, - "length": 87, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 625, - "length": 1, - "value": "\": [\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 640, - "length": 1, - "value": "\",\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 656, - "length": 1, - "value": "\"] -> [\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 679, - "length": 1, - "value": "\", \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 701, - "length": 1, - "value": "\"]\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "StringLiteral", - "offset": 513, - "length": 55, - "value": "\"The ids of players are not .player1 and then .player2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "StringLiteral", - "offset": 1483, - "length": 55, - "value": "\"The ids of players are not .player1 and then .player2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 1754, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 2090, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 2582, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 3012, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 3416, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 3827, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 4261, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 4580, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "BooleanLiteral", - "offset": 6361, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "BooleanLiteral", - "offset": 7044, - "length": 5, - "value": "false" - } - ] -} \ No newline at end of file diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/arm64-apple-macos.private.swiftinterface b/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/arm64-apple-macos.private.swiftinterface deleted file mode 100644 index 012a385..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/arm64-apple-macos.private.swiftinterface +++ /dev/null @@ -1,266 +0,0 @@ -// swift-interface-format-version: 1.0 -// swift-compiler-version: Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5) -// swift-module-flags: -target arm64-apple-macos13.0 -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -module-name DouShouQiModel -// swift-module-flags-ignorable: -enable-bare-slash-regex -@_exported import DouShouQiModel -import Foundation -import Swift -import _Concurrency -import _StringProcessing -import _SwiftConcurrencyShims -public enum Result : Swift.Equatable { - case notFinished - case even - case winner(winner: DouShouQiModel.Owner, reason: DouShouQiModel.WinningReason) - public static func == (a: DouShouQiModel.Result, b: DouShouQiModel.Result) -> Swift.Bool -} -public enum WinningReason { - case denReached, noMorePieces, tooManyOccurences, noMovesLeft - public static func == (a: DouShouQiModel.WinningReason, b: DouShouQiModel.WinningReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -public enum BoardResult : Swift.Equatable { - case unknown - case ok(piece: DouShouQiModel.Piece?) - case failed(reason: DouShouQiModel.BoardFailingReason) - public static func == (a: DouShouQiModel.BoardResult, b: DouShouQiModel.BoardResult) -> Swift.Bool -} -public enum BoardFailingReason { - case unknown, outOfBounds, cellNotEmpty, cellEmpty - public static func == (a: DouShouQiModel.BoardFailingReason, b: DouShouQiModel.BoardFailingReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class HumanPlayer : DouShouQiModel.Player { - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner, andInputMethod input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - #if compiler(>=5.3) && $AsyncAwait - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - public func changeInput(input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - #if compiler(>=5.3) && $AsyncAwait - public func chooseMove(_ move: DouShouQiModel.Move?) async throws - #endif - @objc deinit -} -public struct ClassicRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public struct Cell : Swift.CustomStringConvertible, Swift.Equatable { - public var description: Swift.String { - get - } - public let cellType: DouShouQiModel.CellType - public let initialOwner: DouShouQiModel.Owner - public var piece: DouShouQiModel.Piece? - public init(ofType cellType: DouShouQiModel.CellType, ownedBy initialOwner: DouShouQiModel.Owner = .noOne, withPiece piece: DouShouQiModel.Piece? = nil) - public static func == (a: DouShouQiModel.Cell, b: DouShouQiModel.Cell) -> Swift.Bool -} -public struct VerySimpleRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public protocol Rules { - static func createBoard() -> DouShouQiModel.Board - static func checkBoard(_ board: DouShouQiModel.Board) throws - func getNextPlayer() -> DouShouQiModel.Owner - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - func isMoveValid(onBoard: DouShouQiModel.Board, fromRow: Swift.Int, andFromColumn: Swift.Int, toRow: Swift.Int, andToColumn: Swift.Int) -> Swift.Bool - func isMoveValid(onBoard: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - func isGameOver(withBoard: DouShouQiModel.Board, andLastRowPlayed: Swift.Int, andLastColumnPlayer: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - var occurences: [DouShouQiModel.Board : Swift.Int] { get } - var historic: [DouShouQiModel.Move] { get } -} -public class Player { - final public let name: Swift.String - final public let id: DouShouQiModel.Owner - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - #if compiler(>=5.3) && $AsyncAwait - public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - #if compiler(>=5.3) && $AsyncAwait - public func addPlayedCallbacksListener(_ listener: @escaping (DouShouQiModel.Move?, DouShouQiModel.Player) async throws -> Swift.Void) - #endif - #if compiler(>=5.3) && $AsyncAwait - public func notifyPlayed(withMove move: DouShouQiModel.Move?, andPlayer player: DouShouQiModel.Player) async throws - #endif - @objc deinit -} -public enum GameError : Swift.Error { - case invalidMove, nextPlayerError, badPlayerId(message: Swift.String), invalidRules, invalidPlayer, invalidGame, invalidBoard -} -@_inheritsConvenienceInitializers public class RandomPlayer : DouShouQiModel.IAPlayer { - #if compiler(>=5.3) && $AsyncAwait - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public enum CellType : Swift.CaseIterable { - case unknown, jungle, water, trap, den - public static func == (a: DouShouQiModel.CellType, b: DouShouQiModel.CellType) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public typealias AllCases = [DouShouQiModel.CellType] - public static var allCases: [DouShouQiModel.CellType] { - get - } - public var hashValue: Swift.Int { - get - } -} -public struct Board : Swift.Hashable { - public func hash(into hasher: inout Swift.Hasher) - public let nbRows: Swift.Int - public let nbColumns: Swift.Int - public var grid: [[DouShouQiModel.Cell]] { - get - } - public init?(withGrid grid: [[DouShouQiModel.Cell]]) - public func countPieces(of owner: DouShouQiModel.Owner) -> Swift.Int - public func countPieces() -> (nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int) - public mutating func insert(piece: DouShouQiModel.Piece, atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public mutating func removePiece(atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public static func == (a: DouShouQiModel.Board, b: DouShouQiModel.Board) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public struct Piece : Swift.CustomStringConvertible, Swift.Hashable { - public var description: Swift.String { - get - } - public let owner: DouShouQiModel.Owner - public let animal: DouShouQiModel.Animal - public init(withOwner owner: DouShouQiModel.Owner, andAnimal animal: DouShouQiModel.Animal) - public func hash(into hasher: inout Swift.Hasher) - public static func == (a: DouShouQiModel.Piece, b: DouShouQiModel.Piece) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public enum InvalidBoardError : Swift.Error, Swift.Equatable { - case unknownError - case badDimensions(nbRows: Swift.Int, nbColumns: Swift.Int) - case badCellType(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int) - case multipleOccurenceOfSamePiece(piece: DouShouQiModel.Piece) - case pieceWithNoOwner(piece: DouShouQiModel.Piece) - case pieceNotAllowedOnThisCell(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell) - public static func == (a: DouShouQiModel.InvalidBoardError, b: DouShouQiModel.InvalidBoardError) -> Swift.Bool -} -public enum Owner { - case noOne, player1, player2 - public var simpleDescription: Swift.String { - get - } - public static func == (a: DouShouQiModel.Owner, b: DouShouQiModel.Owner) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class IAPlayer : DouShouQiModel.Player { - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public struct Move : Swift.CustomStringConvertible, Swift.Equatable { - public let owner: DouShouQiModel.Owner - public let rowOrigin: Swift.Int - public let columnOrigin: Swift.Int - public let rowDestination: Swift.Int - public let columnDestination: Swift.Int - public init(of owner: DouShouQiModel.Owner, fromRow rowOrigin: Swift.Int, andFromColumn colOrigin: Swift.Int, toRow rowDest: Swift.Int, andToColumn colDest: Swift.Int) - public var description: Swift.String { - get - } - public static func == (a: DouShouQiModel.Move, b: DouShouQiModel.Move) -> Swift.Bool -} -public enum Animal : Swift.Int { - case rat, cat, dog, wolf, leopard, tiger, lion, elephant - public init?(rawValue: Swift.Int) - public typealias RawValue = Swift.Int - public var rawValue: Swift.Int { - get - } -} -public class Game { - public var board: DouShouQiModel.Board { - get - } - public var rules: any DouShouQiModel.Rules { - get - } - final public let players: [DouShouQiModel.Owner : DouShouQiModel.Player] - public init(withRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public init(withBoard board: DouShouQiModel.Board, andRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public func addGameStartedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public func addPlayerNotifiedListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Player) async throws -> Swift.Void) - #endif - #if compiler(>=5.3) && $AsyncAwait - public func addGameChangedListener(_ listener: @escaping (DouShouQiModel.Game) async -> Swift.Void) - #endif - public func addGameOverListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> Swift.Void) - public func addMoveChosenCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> Swift.Void) - public func addInvalidMoveCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> Swift.Void) - public func addBoardChangedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - public func addPieceRemovedListener(_ listener: @escaping (Swift.Int, Swift.Int, DouShouQiModel.Piece) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public func onPlayed(with move: DouShouQiModel.Move?, from player: DouShouQiModel.Player) async throws - #endif - public var isOver: Swift.Bool { - get - } - #if compiler(>=5.3) && $AsyncAwait - public func start() async throws - #endif - @objc deinit -} -extension DouShouQiModel.WinningReason : Swift.Equatable {} -extension DouShouQiModel.WinningReason : Swift.Hashable {} -extension DouShouQiModel.BoardFailingReason : Swift.Equatable {} -extension DouShouQiModel.BoardFailingReason : Swift.Hashable {} -extension DouShouQiModel.CellType : Swift.Equatable {} -extension DouShouQiModel.CellType : Swift.Hashable {} -extension DouShouQiModel.Owner : Swift.Equatable {} -extension DouShouQiModel.Owner : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.Equatable {} -extension DouShouQiModel.Animal : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.RawRepresentable {} diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/arm64-apple-macos.swiftdoc b/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/arm64-apple-macos.swiftdoc deleted file mode 100644 index 532f2359b97d66b320217f448e09da9f9ce38494..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 688 zcmaDfX9YVW2Lpp90|Ns)qlJ#c+7Dby0=U-%aP4>CT5rI$Ux91Q2d>2%xY!*xUFbQa zy@N^j#3Ahshx9v`wD%m+SaZl(Xp58P1t*OOP8vYc#=uE?50mBGjnH89XK)H48yX)=@m&2h;u4bI3f4b1e-Pf5*TU|0tfODxJYGto^1*`S-7 zn4Dj1Xsl-dwY^o4fgupcHewUt@seT8V1kM>F}&gw|E>b$g#vN0m7xi$$)-;EiA5=4 zW_d|L`Q^pInPmksKy`Vgxk;%-3i)XYMLOE@-izBD*~~;zP|6h Swift.Bool -} -public enum WinningReason { - case denReached, noMorePieces, tooManyOccurences, noMovesLeft - public static func == (a: DouShouQiModel.WinningReason, b: DouShouQiModel.WinningReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -public enum BoardResult : Swift.Equatable { - case unknown - case ok(piece: DouShouQiModel.Piece?) - case failed(reason: DouShouQiModel.BoardFailingReason) - public static func == (a: DouShouQiModel.BoardResult, b: DouShouQiModel.BoardResult) -> Swift.Bool -} -public enum BoardFailingReason { - case unknown, outOfBounds, cellNotEmpty, cellEmpty - public static func == (a: DouShouQiModel.BoardFailingReason, b: DouShouQiModel.BoardFailingReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class HumanPlayer : DouShouQiModel.Player { - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner, andInputMethod input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - #if compiler(>=5.3) && $AsyncAwait - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - public func changeInput(input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - #if compiler(>=5.3) && $AsyncAwait - public func chooseMove(_ move: DouShouQiModel.Move?) async throws - #endif - @objc deinit -} -public struct ClassicRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public struct Cell : Swift.CustomStringConvertible, Swift.Equatable { - public var description: Swift.String { - get - } - public let cellType: DouShouQiModel.CellType - public let initialOwner: DouShouQiModel.Owner - public var piece: DouShouQiModel.Piece? - public init(ofType cellType: DouShouQiModel.CellType, ownedBy initialOwner: DouShouQiModel.Owner = .noOne, withPiece piece: DouShouQiModel.Piece? = nil) - public static func == (a: DouShouQiModel.Cell, b: DouShouQiModel.Cell) -> Swift.Bool -} -public struct VerySimpleRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public protocol Rules { - static func createBoard() -> DouShouQiModel.Board - static func checkBoard(_ board: DouShouQiModel.Board) throws - func getNextPlayer() -> DouShouQiModel.Owner - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - func isMoveValid(onBoard: DouShouQiModel.Board, fromRow: Swift.Int, andFromColumn: Swift.Int, toRow: Swift.Int, andToColumn: Swift.Int) -> Swift.Bool - func isMoveValid(onBoard: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - func isGameOver(withBoard: DouShouQiModel.Board, andLastRowPlayed: Swift.Int, andLastColumnPlayer: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - var occurences: [DouShouQiModel.Board : Swift.Int] { get } - var historic: [DouShouQiModel.Move] { get } -} -public class Player { - final public let name: Swift.String - final public let id: DouShouQiModel.Owner - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - #if compiler(>=5.3) && $AsyncAwait - public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - #if compiler(>=5.3) && $AsyncAwait - public func addPlayedCallbacksListener(_ listener: @escaping (DouShouQiModel.Move?, DouShouQiModel.Player) async throws -> Swift.Void) - #endif - #if compiler(>=5.3) && $AsyncAwait - public func notifyPlayed(withMove move: DouShouQiModel.Move?, andPlayer player: DouShouQiModel.Player) async throws - #endif - @objc deinit -} -public enum GameError : Swift.Error { - case invalidMove, nextPlayerError, badPlayerId(message: Swift.String), invalidRules, invalidPlayer, invalidGame, invalidBoard -} -@_inheritsConvenienceInitializers public class RandomPlayer : DouShouQiModel.IAPlayer { - #if compiler(>=5.3) && $AsyncAwait - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public enum CellType : Swift.CaseIterable { - case unknown, jungle, water, trap, den - public static func == (a: DouShouQiModel.CellType, b: DouShouQiModel.CellType) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public typealias AllCases = [DouShouQiModel.CellType] - public static var allCases: [DouShouQiModel.CellType] { - get - } - public var hashValue: Swift.Int { - get - } -} -public struct Board : Swift.Hashable { - public func hash(into hasher: inout Swift.Hasher) - public let nbRows: Swift.Int - public let nbColumns: Swift.Int - public var grid: [[DouShouQiModel.Cell]] { - get - } - public init?(withGrid grid: [[DouShouQiModel.Cell]]) - public func countPieces(of owner: DouShouQiModel.Owner) -> Swift.Int - public func countPieces() -> (nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int) - public mutating func insert(piece: DouShouQiModel.Piece, atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public mutating func removePiece(atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public static func == (a: DouShouQiModel.Board, b: DouShouQiModel.Board) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public struct Piece : Swift.CustomStringConvertible, Swift.Hashable { - public var description: Swift.String { - get - } - public let owner: DouShouQiModel.Owner - public let animal: DouShouQiModel.Animal - public init(withOwner owner: DouShouQiModel.Owner, andAnimal animal: DouShouQiModel.Animal) - public func hash(into hasher: inout Swift.Hasher) - public static func == (a: DouShouQiModel.Piece, b: DouShouQiModel.Piece) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public enum InvalidBoardError : Swift.Error, Swift.Equatable { - case unknownError - case badDimensions(nbRows: Swift.Int, nbColumns: Swift.Int) - case badCellType(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int) - case multipleOccurenceOfSamePiece(piece: DouShouQiModel.Piece) - case pieceWithNoOwner(piece: DouShouQiModel.Piece) - case pieceNotAllowedOnThisCell(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell) - public static func == (a: DouShouQiModel.InvalidBoardError, b: DouShouQiModel.InvalidBoardError) -> Swift.Bool -} -public enum Owner { - case noOne, player1, player2 - public var simpleDescription: Swift.String { - get - } - public static func == (a: DouShouQiModel.Owner, b: DouShouQiModel.Owner) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class IAPlayer : DouShouQiModel.Player { - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public struct Move : Swift.CustomStringConvertible, Swift.Equatable { - public let owner: DouShouQiModel.Owner - public let rowOrigin: Swift.Int - public let columnOrigin: Swift.Int - public let rowDestination: Swift.Int - public let columnDestination: Swift.Int - public init(of owner: DouShouQiModel.Owner, fromRow rowOrigin: Swift.Int, andFromColumn colOrigin: Swift.Int, toRow rowDest: Swift.Int, andToColumn colDest: Swift.Int) - public var description: Swift.String { - get - } - public static func == (a: DouShouQiModel.Move, b: DouShouQiModel.Move) -> Swift.Bool -} -public enum Animal : Swift.Int { - case rat, cat, dog, wolf, leopard, tiger, lion, elephant - public init?(rawValue: Swift.Int) - public typealias RawValue = Swift.Int - public var rawValue: Swift.Int { - get - } -} -public class Game { - public var board: DouShouQiModel.Board { - get - } - public var rules: any DouShouQiModel.Rules { - get - } - final public let players: [DouShouQiModel.Owner : DouShouQiModel.Player] - public init(withRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public init(withBoard board: DouShouQiModel.Board, andRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public func addGameStartedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public func addPlayerNotifiedListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Player) async throws -> Swift.Void) - #endif - #if compiler(>=5.3) && $AsyncAwait - public func addGameChangedListener(_ listener: @escaping (DouShouQiModel.Game) async -> Swift.Void) - #endif - public func addGameOverListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> Swift.Void) - public func addMoveChosenCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> Swift.Void) - public func addInvalidMoveCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> Swift.Void) - public func addBoardChangedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - public func addPieceRemovedListener(_ listener: @escaping (Swift.Int, Swift.Int, DouShouQiModel.Piece) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public func onPlayed(with move: DouShouQiModel.Move?, from player: DouShouQiModel.Player) async throws - #endif - public var isOver: Swift.Bool { - get - } - #if compiler(>=5.3) && $AsyncAwait - public func start() async throws - #endif - @objc deinit -} -extension DouShouQiModel.WinningReason : Swift.Equatable {} -extension DouShouQiModel.WinningReason : Swift.Hashable {} -extension DouShouQiModel.BoardFailingReason : Swift.Equatable {} -extension DouShouQiModel.BoardFailingReason : Swift.Hashable {} -extension DouShouQiModel.CellType : Swift.Equatable {} -extension DouShouQiModel.CellType : Swift.Hashable {} -extension DouShouQiModel.Owner : Swift.Equatable {} -extension DouShouQiModel.Owner : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.Equatable {} -extension DouShouQiModel.Animal : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.RawRepresentable {} diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/x86_64-apple-macos.abi.json b/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/x86_64-apple-macos.abi.json deleted file mode 100644 index c28e9fd..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/x86_64-apple-macos.abi.json +++ /dev/null @@ -1,8546 +0,0 @@ -{ - "ABIRoot": { - "kind": "Root", - "name": "TopLevel", - "printedName": "TopLevel", - "children": [ - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Result", - "printedName": "Result", - "children": [ - { - "kind": "Var", - "name": "notFinished", - "printedName": "notFinished", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Result.Type) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO11notFinishedyA2CmF", - "mangledName": "$s14DouShouQiModel6ResultO11notFinishedyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "even", - "printedName": "even", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Result.Type) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO4evenyA2CmF", - "mangledName": "$s14DouShouQiModel6ResultO4evenyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "winner", - "printedName": "winner", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Result.Type) -> (DouShouQiModel.Owner, DouShouQiModel.WinningReason) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner, DouShouQiModel.WinningReason) -> DouShouQiModel.Result", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(winner: DouShouQiModel.Owner, reason: DouShouQiModel.WinningReason)", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Result.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6ResultO6winneryAcA5OwnerO_AA13WinningReasonOtcACmF", - "mangledName": "$s14DouShouQiModel6ResultO6winneryAcA5OwnerO_AA13WinningReasonOtcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6ResultO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel6ResultO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel6ResultO", - "mangledName": "$s14DouShouQiModel6ResultO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "TypeDecl", - "name": "WinningReason", - "printedName": "WinningReason", - "children": [ - { - "kind": "Var", - "name": "denReached", - "printedName": "denReached", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO10denReachedyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO10denReachedyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "noMorePieces", - "printedName": "noMorePieces", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO12noMorePiecesyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO12noMorePiecesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "tooManyOccurences", - "printedName": "tooManyOccurences", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO17tooManyOccurencesyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO17tooManyOccurencesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "noMovesLeft", - "printedName": "noMovesLeft", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.WinningReason.Type) -> DouShouQiModel.WinningReason", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.WinningReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel13WinningReasonO11noMovesLeftyA2CmF", - "mangledName": "$s14DouShouQiModel13WinningReasonO11noMovesLeftyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - }, - { - "kind": "TypeNominal", - "name": "WinningReason", - "printedName": "DouShouQiModel.WinningReason", - "usr": "s:14DouShouQiModel13WinningReasonO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel13WinningReasonO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel13WinningReasonO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel13WinningReasonO9hashValueSivp", - "mangledName": "$s14DouShouQiModel13WinningReasonO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel13WinningReasonO9hashValueSivg", - "mangledName": "$s14DouShouQiModel13WinningReasonO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel13WinningReasonO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel13WinningReasonO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel13WinningReasonO", - "mangledName": "$s14DouShouQiModel13WinningReasonO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "BoardResult", - "printedName": "BoardResult", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel11BoardResultO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "ok", - "printedName": "ok", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> (DouShouQiModel.Piece?) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece?) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece?)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO2okyAcA5PieceVSg_tcACmF", - "mangledName": "$s14DouShouQiModel11BoardResultO2okyAcA5PieceVSg_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "failed", - "printedName": "failed", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardResult.Type) -> (DouShouQiModel.BoardFailingReason) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason) -> DouShouQiModel.BoardResult", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(reason: DouShouQiModel.BoardFailingReason)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardResult.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel11BoardResultO6failedyAcA0E13FailingReasonO_tcACmF", - "mangledName": "$s14DouShouQiModel11BoardResultO6failedyAcA0E13FailingReasonO_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11BoardResultO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel11BoardResultO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel11BoardResultO", - "mangledName": "$s14DouShouQiModel11BoardResultO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "TypeDecl", - "name": "BoardFailingReason", - "printedName": "BoardFailingReason", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "outOfBounds", - "printedName": "outOfBounds", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO11outOfBoundsyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO11outOfBoundsyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cellNotEmpty", - "printedName": "cellNotEmpty", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO12cellNotEmptyyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO12cellNotEmptyyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cellEmpty", - "printedName": "cellEmpty", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.BoardFailingReason.Type) -> DouShouQiModel.BoardFailingReason", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.BoardFailingReason.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9cellEmptyyA2CmF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9cellEmptyyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - }, - { - "kind": "TypeNominal", - "name": "BoardFailingReason", - "printedName": "DouShouQiModel.BoardFailingReason", - "usr": "s:14DouShouQiModel18BoardFailingReasonO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel18BoardFailingReasonO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9hashValueSivp", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel18BoardFailingReasonO9hashValueSivg", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel18BoardFailingReasonO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel18BoardFailingReasonO", - "mangledName": "$s14DouShouQiModel18BoardFailingReasonO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "HumanPlayer", - "printedName": "HumanPlayer", - "children": [ - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:andInputMethod:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.HumanPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ] - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel11HumanPlayerC8withName5andId0I11InputMethodACSgSS_AA5OwnerOAA4MoveVSgACctcfc", - "mangledName": "$s14DouShouQiModel11HumanPlayerC8withName5andId0I11InputMethodACSgSS_AA5OwnerOAA4MoveVSgACctcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.HumanPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel11HumanPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel11HumanPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11HumanPlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "mangledName": "$s14DouShouQiModel11HumanPlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "changeInput", - "printedName": "changeInput(input:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "HumanPlayer", - "printedName": "DouShouQiModel.HumanPlayer", - "usr": "s:14DouShouQiModel11HumanPlayerC" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11HumanPlayerC11changeInput5inputyAA4MoveVSgACc_tF", - "mangledName": "$s14DouShouQiModel11HumanPlayerC11changeInput5inputyAA4MoveVSgACc_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel11HumanPlayerC10chooseMoveyyAA0H0VSgYaKF", - "mangledName": "$s14DouShouQiModel11HumanPlayerC10chooseMoveyyAA0H0VSgYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel11HumanPlayerC", - "mangledName": "$s14DouShouQiModel11HumanPlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "superclassUsr": "s:14DouShouQiModel6PlayerC", - "inheritsConvenienceInitializers": true, - "superclassNames": [ - "DouShouQiModel.Player" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "ClassicRules", - "printedName": "ClassicRules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11createBoardAA0H0VyFZ", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11createBoardAA0H0VyFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10checkBoardyyAA0H0VKFZ", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10checkBoardyyAA0H0VKFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init()", - "children": [ - { - "kind": "TypeNominal", - "name": "ClassicRules", - "printedName": "DouShouQiModel.ClassicRules", - "usr": "s:14DouShouQiModel12ClassicRulesV" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12ClassicRulesVACycfc", - "mangledName": "$s14DouShouQiModel12ClassicRulesVACycfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(occurences:historic:)", - "children": [ - { - "kind": "TypeNominal", - "name": "ClassicRules", - "printedName": "DouShouQiModel.ClassicRules", - "usr": "s:14DouShouQiModel12ClassicRulesV" - }, - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toM00n2ToP0SbAA0K0V_S4itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toM00n2ToP0SbAA0K0V_S4itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard04withH0SbAA0K0V_AA0H0VtF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV11isMoveValid7onBoard04withH0SbAA0K0V_AA0H0VtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10isGameOver9withBoard16andLastRowPlayed0lM12ColumnPlayerSb_AA6ResultOtAA0K0V_S2itF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10isGameOver9withBoard16andLastRowPlayed0lM12ColumnPlayerSb_AA6ResultOtAA0K0V_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV10playedMove_15onStartingBoard012andResultingK0yAA0H0V_AA0K0VAJtKF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10playedMove_15onStartingBoard012andResultingK0yAA0H0V_AA0K0VAJtKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12ClassicRulesV13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel12ClassicRulesV13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel12ClassicRulesV10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel12ClassicRulesV8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel12ClassicRulesV", - "mangledName": "$s14DouShouQiModel12ClassicRulesV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Rules", - "printedName": "Rules", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Cell", - "printedName": "Cell", - "children": [ - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel4CellV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel4CellV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "cellType", - "printedName": "cellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV8cellTypeAA0eG0Ovp", - "mangledName": "$s14DouShouQiModel4CellV8cellTypeAA0eG0Ovp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV8cellTypeAA0eG0Ovg", - "mangledName": "$s14DouShouQiModel4CellV8cellTypeAA0eG0Ovg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "initialOwner", - "printedName": "initialOwner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV12initialOwnerAA0G0Ovp", - "mangledName": "$s14DouShouQiModel4CellV12initialOwnerAA0G0Ovp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV12initialOwnerAA0G0Ovg", - "mangledName": "$s14DouShouQiModel4CellV12initialOwnerAA0G0Ovg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "piece", - "printedName": "piece", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvp", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvg", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - }, - { - "kind": "Accessor", - "name": "Set", - "printedName": "Set()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "usr": "s:Sq" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvs", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvs", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "set" - }, - { - "kind": "Accessor", - "name": "Modify", - "printedName": "Modify()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4CellV5pieceAA5PieceVSgvM", - "mangledName": "$s14DouShouQiModel4CellV5pieceAA5PieceVSgvM", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "_modify" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(ofType:ownedBy:withPiece:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "hasDefaultArg": true, - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Piece?", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "hasDefaultArg": true, - "usr": "s:Sq" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4CellV6ofType7ownedBy9withPieceAcA0eG0O_AA5OwnerOAA0K0VSgtcfc", - "mangledName": "$s14DouShouQiModel4CellV6ofType7ownedBy9withPieceAcA0eG0O_AA5OwnerOAA0K0VSgtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4CellV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel4CellV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel4CellV", - "mangledName": "$s14DouShouQiModel4CellV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "VerySimpleRules", - "printedName": "VerySimpleRules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11createBoardAA0I0VyFZ", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11createBoardAA0I0VyFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10checkBoardyyAA0I0VKFZ", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10checkBoardyyAA0I0VKFZ", - "moduleName": "DouShouQiModel", - "static": true, - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init()", - "children": [ - { - "kind": "TypeNominal", - "name": "VerySimpleRules", - "printedName": "DouShouQiModel.VerySimpleRules", - "usr": "s:14DouShouQiModel15VerySimpleRulesV" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel15VerySimpleRulesVACycfc", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesVACycfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(occurences:historic:)", - "children": [ - { - "kind": "TypeNominal", - "name": "VerySimpleRules", - "printedName": "DouShouQiModel.VerySimpleRules", - "usr": "s:14DouShouQiModel15VerySimpleRulesV" - }, - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurences8historicACSDyAA5BoardVSiG_SayAA4MoveVGtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toN00o2ToQ0SbAA0L0V_S4itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard7fromRow13andFromColumn02toN00o2ToQ0SbAA0L0V_S4itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard04withI0SbAA0L0V_AA0I0VtF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV11isMoveValid7onBoard04withI0SbAA0L0V_AA0I0VtF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10isGameOver9withBoard16andLastRowPlayed0mN12ColumnPlayerSb_AA6ResultOtAA0L0V_S2itF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10isGameOver9withBoard16andLastRowPlayed0mN12ColumnPlayerSb_AA6ResultOtAA0L0V_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10playedMove_15onStartingBoard012andResultingL0yAA0I0V_AA0L0VAJtKF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10playedMove_15onStartingBoard012andResultingL0yAA0I0V_AA0L0VAJtKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel15VerySimpleRulesV13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel15VerySimpleRulesV", - "mangledName": "$s14DouShouQiModel15VerySimpleRulesV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Rules", - "printedName": "Rules", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Rules", - "printedName": "Rules", - "children": [ - { - "kind": "Function", - "name": "createBoard", - "printedName": "createBoard()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11createBoardAA0G0VyFZ", - "mangledName": "$s14DouShouQiModel5RulesP11createBoardAA0G0VyFZ", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "static": true, - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "checkBoard", - "printedName": "checkBoard(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10checkBoardyyAA0G0VKFZ", - "mangledName": "$s14DouShouQiModel5RulesP10checkBoardyyAA0G0VKFZ", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "static": true, - "protocolReq": true, - "throwing": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getNextPlayer", - "printedName": "getNextPlayer()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP13getNextPlayerAA5OwnerOyF", - "mangledName": "$s14DouShouQiModel5RulesP13getNextPlayerAA5OwnerOyF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "mangledName": "$s14DouShouQiModel5RulesP8getMoves2in2ofSayAA4MoveVGAA5BoardV_AA5OwnerOtF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "getMoves", - "printedName": "getMoves(in:of:fromRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "mangledName": "$s14DouShouQiModel5RulesP8getMoves2in2of7fromRow9andColumnSayAA4MoveVGAA5BoardV_AA5OwnerOS2itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11isMoveValid7onBoard7fromRow13andFromColumn02toL00m2ToO0SbAA0J0V_S4itF", - "mangledName": "$s14DouShouQiModel5RulesP11isMoveValid7onBoard7fromRow13andFromColumn02toL00m2ToO0SbAA0J0V_S4itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isMoveValid", - "printedName": "isMoveValid(onBoard:withMove:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP11isMoveValid7onBoard04withG0SbAA0J0V_AA0G0VtF", - "mangledName": "$s14DouShouQiModel5RulesP11isMoveValid7onBoard04withG0SbAA0J0V_AA0G0VtF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "isGameOver", - "printedName": "isGameOver(withBoard:andLastRowPlayed:andLastColumnPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Bool, DouShouQiModel.Result)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - } - ] - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10isGameOver9withBoard16andLastRowPlayed0kL12ColumnPlayerSb_AA6ResultOtAA0J0V_S2itF", - "mangledName": "$s14DouShouQiModel5RulesP10isGameOver9withBoard16andLastRowPlayed0kL12ColumnPlayerSb_AA6ResultOtAA0J0V_S2itF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "playedMove", - "printedName": "playedMove(_:onStartingBoard:andResultingBoard:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5RulesP10playedMove_15onStartingBoard012andResultingJ0yAA0G0V_AA0J0VAJtKF", - "mangledName": "$s14DouShouQiModel5RulesP10playedMove_15onStartingBoard012andResultingJ0yAA0G0V_AA0J0VAJtKF", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "declAttributes": [ - "Mutating" - ], - "throwing": true, - "reqNewWitnessTableEntry": true, - "funcSelfKind": "Mutating" - }, - { - "kind": "Var", - "name": "occurences", - "printedName": "occurences", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvp", - "mangledName": "$s14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvp", - "moduleName": "DouShouQiModel", - "protocolReq": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Board : Swift.Int]", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvg", - "mangledName": "$s14DouShouQiModel5RulesP10occurencesSDyAA5BoardVSiGvg", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "historic", - "printedName": "historic", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5RulesP8historicSayAA4MoveVGvp", - "mangledName": "$s14DouShouQiModel5RulesP8historicSayAA4MoveVGvp", - "moduleName": "DouShouQiModel", - "protocolReq": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Move]", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5RulesP8historicSayAA4MoveVGvg", - "mangledName": "$s14DouShouQiModel5RulesP8historicSayAA4MoveVGvg", - "moduleName": "DouShouQiModel", - "genericSig": "<Ο„_0_0 where Ο„_0_0 : DouShouQiModel.Rules>", - "sugared_genericSig": "", - "protocolReq": true, - "reqNewWitnessTableEntry": true, - "accessorKind": "get" - } - ] - } - ], - "declKind": "Protocol", - "usr": "s:14DouShouQiModel5RulesP", - "mangledName": "$s14DouShouQiModel5RulesP", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Player", - "printedName": "Player", - "children": [ - { - "kind": "Var", - "name": "name", - "printedName": "name", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6PlayerC4nameSSvp", - "mangledName": "$s14DouShouQiModel6PlayerC4nameSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "Final", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6PlayerC4nameSSvg", - "mangledName": "$s14DouShouQiModel6PlayerC4nameSSvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "declAttributes": [ - "Final" - ], - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "id", - "printedName": "id", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6PlayerC2idAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel6PlayerC2idAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "Final", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6PlayerC2idAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel6PlayerC2idAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "declAttributes": [ - "Final" - ], - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Player?", - "children": [ - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel6PlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel6PlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6PlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "mangledName": "$s14DouShouQiModel6PlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addPlayedCallbacksListener", - "printedName": "addPlayedCallbacksListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Move?, DouShouQiModel.Player) async throws -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Move?, DouShouQiModel.Player)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6PlayerC26addPlayedCallbacksListeneryyyAA4MoveVSg_ACtYaKcF", - "mangledName": "$s14DouShouQiModel6PlayerC26addPlayedCallbacksListeneryyyAA4MoveVSg_ACtYaKcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "notifyPlayed", - "printedName": "notifyPlayed(withMove:andPlayer:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel6PlayerC12notifyPlayed8withMove03andE0yAA0I0VSg_ACtYaKF", - "mangledName": "$s14DouShouQiModel6PlayerC12notifyPlayed8withMove03andE0yAA0I0VSg_ACtYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel6PlayerC", - "mangledName": "$s14DouShouQiModel6PlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "GameError", - "printedName": "GameError", - "children": [ - { - "kind": "Var", - "name": "invalidMove", - "printedName": "invalidMove", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO11invalidMoveyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO11invalidMoveyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "nextPlayerError", - "printedName": "nextPlayerError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO010nextPlayerF0yA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO010nextPlayerF0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badPlayerId", - "printedName": "badPlayerId", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> (Swift.String) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(Swift.String) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(message: Swift.String)", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO11badPlayerIdyACSS_tcACmF", - "mangledName": "$s14DouShouQiModel9GameErrorO11badPlayerIdyACSS_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidRules", - "printedName": "invalidRules", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO12invalidRulesyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO12invalidRulesyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidPlayer", - "printedName": "invalidPlayer", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO13invalidPlayeryA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO13invalidPlayeryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidGame", - "printedName": "invalidGame", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO07invalidE0yA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO07invalidE0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "invalidBoard", - "printedName": "invalidBoard", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.GameError.Type) -> DouShouQiModel.GameError", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.GameError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "GameError", - "printedName": "DouShouQiModel.GameError", - "usr": "s:14DouShouQiModel9GameErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel9GameErrorO12invalidBoardyA2CmF", - "mangledName": "$s14DouShouQiModel9GameErrorO12invalidBoardyA2CmF", - "moduleName": "DouShouQiModel" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel9GameErrorO", - "mangledName": "$s14DouShouQiModel9GameErrorO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Error", - "printedName": "Error", - "usr": "s:s5ErrorP", - "mangledName": "$ss5ErrorP" - }, - { - "kind": "Conformance", - "name": "Sendable", - "printedName": "Sendable", - "usr": "s:s8SendableP", - "mangledName": "$ss8SendableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "RandomPlayer", - "printedName": "RandomPlayer", - "children": [ - { - "kind": "Function", - "name": "chooseMove", - "printedName": "chooseMove(in:with:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel12RandomPlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "mangledName": "$s14DouShouQiModel12RandomPlayerC10chooseMove2in4withyAA5BoardV_AA5Rules_ptYaKF", - "moduleName": "DouShouQiModel", - "overriding": true, - "declAttributes": [ - "Override", - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.RandomPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "RandomPlayer", - "printedName": "DouShouQiModel.RandomPlayer", - "usr": "s:14DouShouQiModel12RandomPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel12RandomPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel12RandomPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "overriding": true, - "implicit": true, - "declAttributes": [ - "Override" - ], - "init_kind": "Designated" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel12RandomPlayerC", - "mangledName": "$s14DouShouQiModel12RandomPlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "superclassUsr": "s:14DouShouQiModel8IAPlayerC", - "inheritsConvenienceInitializers": true, - "superclassNames": [ - "DouShouQiModel.IAPlayer", - "DouShouQiModel.Player" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "CellType", - "printedName": "CellType", - "children": [ - { - "kind": "Var", - "name": "unknown", - "printedName": "unknown", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO7unknownyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO7unknownyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "jungle", - "printedName": "jungle", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO6jungleyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO6jungleyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "water", - "printedName": "water", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO5wateryA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO5wateryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "trap", - "printedName": "trap", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO4trapyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO4trapyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "den", - "printedName": "den", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType.Type) -> DouShouQiModel.CellType", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.CellType.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel8CellTypeO3denyA2CmF", - "mangledName": "$s14DouShouQiModel8CellTypeO3denyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "allCases", - "printedName": "allCases", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel8CellTypeO8allCasesSayACGvpZ", - "mangledName": "$s14DouShouQiModel8CellTypeO8allCasesSayACGvpZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel8CellTypeO8allCasesSayACGvgZ", - "mangledName": "$s14DouShouQiModel8CellTypeO8allCasesSayACGvgZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel8CellTypeO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel8CellTypeO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel8CellTypeO9hashValueSivp", - "mangledName": "$s14DouShouQiModel8CellTypeO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel8CellTypeO9hashValueSivg", - "mangledName": "$s14DouShouQiModel8CellTypeO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel8CellTypeO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel8CellTypeO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel8CellTypeO", - "mangledName": "$s14DouShouQiModel8CellTypeO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "CaseIterable", - "printedName": "CaseIterable", - "children": [ - { - "kind": "TypeWitness", - "name": "AllCases", - "printedName": "AllCases", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.CellType]", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - } - ], - "usr": "s:Sa" - } - ] - } - ], - "usr": "s:s12CaseIterableP", - "mangledName": "$ss12CaseIterableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Board", - "printedName": "Board", - "children": [ - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5BoardV4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "nbRows", - "printedName": "nbRows", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV6nbRowsSivp", - "mangledName": "$s14DouShouQiModel5BoardV6nbRowsSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl", - "RawDocComment" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV6nbRowsSivg", - "mangledName": "$s14DouShouQiModel5BoardV6nbRowsSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "nbColumns", - "printedName": "nbColumns", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV9nbColumnsSivp", - "mangledName": "$s14DouShouQiModel5BoardV9nbColumnsSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl", - "RawDocComment" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV9nbColumnsSivg", - "mangledName": "$s14DouShouQiModel5BoardV9nbColumnsSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "grid", - "printedName": "grid", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvp", - "mangledName": "$s14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvg", - "mangledName": "$s14DouShouQiModel5BoardV4gridSaySayAA4CellVGGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withGrid:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Board?", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[[DouShouQiModel.Cell]]", - "children": [ - { - "kind": "TypeNominal", - "name": "Array", - "printedName": "[DouShouQiModel.Cell]", - "children": [ - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ], - "usr": "s:Sa" - } - ], - "usr": "s:Sa" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel5BoardV8withGridACSgSaySayAA4CellVGG_tcfc", - "mangledName": "$s14DouShouQiModel5BoardV8withGridACSgSaySayAA4CellVGG_tcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "countPieces", - "printedName": "countPieces(of:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11countPieces2ofSiAA5OwnerO_tF", - "mangledName": "$s14DouShouQiModel5BoardV11countPieces2ofSiAA5OwnerO_tF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "countPieces", - "printedName": "countPieces()", - "children": [ - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11countPiecesSi04nbOfgI7Player1_Si0higI7Player2tyF", - "mangledName": "$s14DouShouQiModel5BoardV11countPiecesSi04nbOfgI7Player1_Si0higI7Player2tyF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "insert", - "printedName": "insert(piece:atRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV6insert5piece5atRow9andColumnAA0E6ResultOAA5PieceV_S2itF", - "mangledName": "$s14DouShouQiModel5BoardV6insert5piece5atRow9andColumnAA0E6ResultOAA5PieceV_S2itF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Function", - "name": "removePiece", - "printedName": "removePiece(atRow:andColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "BoardResult", - "printedName": "DouShouQiModel.BoardResult", - "usr": "s:14DouShouQiModel11BoardResultO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV11removePiece5atRow9andColumnAA0E6ResultOSi_SitF", - "mangledName": "$s14DouShouQiModel5BoardV11removePiece5atRow9andColumnAA0E6ResultOSi_SitF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Mutating", - "AccessControl" - ], - "funcSelfKind": "Mutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5BoardV9hashValueSivp", - "mangledName": "$s14DouShouQiModel5BoardV9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5BoardV9hashValueSivg", - "mangledName": "$s14DouShouQiModel5BoardV9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5BoardV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5BoardV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel5BoardV", - "mangledName": "$s14DouShouQiModel5BoardV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Piece", - "printedName": "Piece", - "children": [ - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel5PieceV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel5PieceV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "owner", - "printedName": "owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV5ownerAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel5PieceV5ownerAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV5ownerAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel5PieceV5ownerAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "animal", - "printedName": "animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV6animalAA6AnimalOvp", - "mangledName": "$s14DouShouQiModel5PieceV6animalAA6AnimalOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV6animalAA6AnimalOvg", - "mangledName": "$s14DouShouQiModel5PieceV6animalAA6AnimalOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withOwner:andAnimal:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel5PieceV9withOwner9andAnimalAcA0G0O_AA0I0Otcfc", - "mangledName": "$s14DouShouQiModel5PieceV9withOwner9andAnimalAcA0G0O_AA0I0Otcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5PieceV9hashValueSivp", - "mangledName": "$s14DouShouQiModel5PieceV9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5PieceV9hashValueSivg", - "mangledName": "$s14DouShouQiModel5PieceV9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5PieceV4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5PieceV4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5PieceV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5PieceV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel5PieceV", - "mangledName": "$s14DouShouQiModel5PieceV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "InvalidBoardError", - "printedName": "InvalidBoardError", - "children": [ - { - "kind": "Var", - "name": "unknownError", - "printedName": "unknownError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO07unknownG0yA2CmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO07unknownG0yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badDimensions", - "printedName": "badDimensions", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(nbRows: Swift.Int, nbColumns: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO13badDimensionsyACSi_SitcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO13badDimensionsyACSi_SitcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "badCellType", - "printedName": "badCellType", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.CellType, Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.CellType, Swift.Int, Swift.Int) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int)", - "children": [ - { - "kind": "TypeNominal", - "name": "CellType", - "printedName": "DouShouQiModel.CellType", - "usr": "s:14DouShouQiModel8CellTypeO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO11badCellTypeyAcA0iJ0O_S2itcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO11badCellTypeyAcA0iJ0O_S2itcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "multipleOccurenceOfSamePiece", - "printedName": "multipleOccurenceOfSamePiece", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO28multipleOccurenceOfSamePieceyAcA0L0V_tcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO28multipleOccurenceOfSamePieceyAcA0L0V_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "pieceWithNoOwner", - "printedName": "pieceWithNoOwner", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO16pieceWithNoOwneryAcA5PieceV_tcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO16pieceWithNoOwneryAcA5PieceV_tcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "pieceNotAllowedOnThisCell", - "printedName": "pieceNotAllowedOnThisCell", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.InvalidBoardError.Type) -> (DouShouQiModel.Piece, DouShouQiModel.Cell) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Piece, DouShouQiModel.Cell) -> DouShouQiModel.InvalidBoardError", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell)", - "children": [ - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - }, - { - "kind": "TypeNominal", - "name": "Cell", - "printedName": "DouShouQiModel.Cell", - "usr": "s:14DouShouQiModel4CellV" - } - ] - } - ] - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.InvalidBoardError.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO25pieceNotAllowedOnThisCellyAcA5PieceV_AA0M0VtcACmF", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO25pieceNotAllowedOnThisCellyAcA5PieceV_AA0M0VtcACmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - }, - { - "kind": "TypeNominal", - "name": "InvalidBoardError", - "printedName": "DouShouQiModel.InvalidBoardError", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel17InvalidBoardErrorO", - "mangledName": "$s14DouShouQiModel17InvalidBoardErrorO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Error", - "printedName": "Error", - "usr": "s:s5ErrorP", - "mangledName": "$ss5ErrorP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Sendable", - "printedName": "Sendable", - "usr": "s:s8SendableP", - "mangledName": "$ss8SendableP" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Owner", - "printedName": "Owner", - "children": [ - { - "kind": "Var", - "name": "noOne", - "printedName": "noOne", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO5noOneyA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO5noOneyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "player1", - "printedName": "player1", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO7player1yA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO7player1yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "player2", - "printedName": "player2", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Owner.Type) -> DouShouQiModel.Owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Owner.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel5OwnerO7player2yA2CmF", - "mangledName": "$s14DouShouQiModel5OwnerO7player2yA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "simpleDescription", - "printedName": "simpleDescription", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5OwnerO17simpleDescriptionSSvp", - "mangledName": "$s14DouShouQiModel5OwnerO17simpleDescriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5OwnerO17simpleDescriptionSSvg", - "mangledName": "$s14DouShouQiModel5OwnerO17simpleDescriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5OwnerO2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel5OwnerO2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "hashValue", - "printedName": "hashValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel5OwnerO9hashValueSivp", - "mangledName": "$s14DouShouQiModel5OwnerO9hashValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel5OwnerO9hashValueSivg", - "mangledName": "$s14DouShouQiModel5OwnerO9hashValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "hash", - "printedName": "hash(into:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Hasher", - "printedName": "Swift.Hasher", - "paramValueOwnership": "InOut", - "usr": "s:s6HasherV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel5OwnerO4hash4intoys6HasherVz_tF", - "mangledName": "$s14DouShouQiModel5OwnerO4hash4intoys6HasherVz_tF", - "moduleName": "DouShouQiModel", - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel5OwnerO", - "mangledName": "$s14DouShouQiModel5OwnerO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "RawDocComment" - ] - }, - { - "kind": "TypeDecl", - "name": "IAPlayer", - "printedName": "IAPlayer", - "children": [ - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withName:andId:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.IAPlayer?", - "children": [ - { - "kind": "TypeNominal", - "name": "IAPlayer", - "printedName": "DouShouQiModel.IAPlayer", - "usr": "s:14DouShouQiModel8IAPlayerC" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel8IAPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "mangledName": "$s14DouShouQiModel8IAPlayerC8withName5andIdACSgSS_AA5OwnerOtcfc", - "moduleName": "DouShouQiModel", - "overriding": true, - "implicit": true, - "declAttributes": [ - "Override" - ], - "init_kind": "Designated" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel8IAPlayerC", - "mangledName": "$s14DouShouQiModel8IAPlayerC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "superclassUsr": "s:14DouShouQiModel6PlayerC", - "inheritsConvenienceInitializers": true, - "superclassNames": [ - "DouShouQiModel.Player" - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Move", - "printedName": "Move", - "children": [ - { - "kind": "Var", - "name": "owner", - "printedName": "owner", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV5ownerAA5OwnerOvp", - "mangledName": "$s14DouShouQiModel4MoveV5ownerAA5OwnerOvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV5ownerAA5OwnerOvg", - "mangledName": "$s14DouShouQiModel4MoveV5ownerAA5OwnerOvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rowOrigin", - "printedName": "rowOrigin", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV9rowOriginSivp", - "mangledName": "$s14DouShouQiModel4MoveV9rowOriginSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV9rowOriginSivg", - "mangledName": "$s14DouShouQiModel4MoveV9rowOriginSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "columnOrigin", - "printedName": "columnOrigin", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV12columnOriginSivp", - "mangledName": "$s14DouShouQiModel4MoveV12columnOriginSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV12columnOriginSivg", - "mangledName": "$s14DouShouQiModel4MoveV12columnOriginSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rowDestination", - "printedName": "rowDestination", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV14rowDestinationSivp", - "mangledName": "$s14DouShouQiModel4MoveV14rowDestinationSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV14rowDestinationSivg", - "mangledName": "$s14DouShouQiModel4MoveV14rowDestinationSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "columnDestination", - "printedName": "columnDestination", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV17columnDestinationSivp", - "mangledName": "$s14DouShouQiModel4MoveV17columnDestinationSivp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV17columnDestinationSivg", - "mangledName": "$s14DouShouQiModel4MoveV17columnDestinationSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(of:fromRow:andFromColumn:toRow:andToColumn:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4MoveV2of7fromRow13andFromColumn02toH00i2ToK0AcA5OwnerO_S4itcfc", - "mangledName": "$s14DouShouQiModel4MoveV2of7fromRow13andFromColumn02toH00i2ToK0AcA5OwnerO_S4itcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "init_kind": "Designated" - }, - { - "kind": "Var", - "name": "description", - "printedName": "description", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4MoveV11descriptionSSvp", - "mangledName": "$s14DouShouQiModel4MoveV11descriptionSSvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "String", - "printedName": "Swift.String", - "usr": "s:SS" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4MoveV11descriptionSSvg", - "mangledName": "$s14DouShouQiModel4MoveV11descriptionSSvg", - "moduleName": "DouShouQiModel", - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "==", - "printedName": "==(_:_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4MoveV2eeoiySbAC_ACtFZ", - "mangledName": "$s14DouShouQiModel4MoveV2eeoiySbAC_ACtFZ", - "moduleName": "DouShouQiModel", - "static": true, - "implicit": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Struct", - "usr": "s:14DouShouQiModel4MoveV", - "mangledName": "$s14DouShouQiModel4MoveV", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "conformances": [ - { - "kind": "Conformance", - "name": "CustomStringConvertible", - "printedName": "CustomStringConvertible", - "usr": "s:s23CustomStringConvertibleP", - "mangledName": "$ss23CustomStringConvertibleP" - }, - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Animal", - "printedName": "Animal", - "children": [ - { - "kind": "Var", - "name": "rat", - "printedName": "rat", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3ratyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3ratyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "cat", - "printedName": "cat", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3catyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3catyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "dog", - "printedName": "dog", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO3dogyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO3dogyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "wolf", - "printedName": "wolf", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO4wolfyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO4wolfyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "leopard", - "printedName": "leopard", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO7leopardyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO7leopardyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "tiger", - "printedName": "tiger", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO5tigeryA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO5tigeryA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "lion", - "printedName": "lion", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO4lionyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO4lionyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "elephant", - "printedName": "elephant", - "children": [ - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Animal.Type) -> DouShouQiModel.Animal", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - }, - { - "kind": "TypeNominal", - "name": "Metatype", - "printedName": "DouShouQiModel.Animal.Type", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ] - } - ] - } - ], - "declKind": "EnumElement", - "usr": "s:14DouShouQiModel6AnimalO8elephantyA2CmF", - "mangledName": "$s14DouShouQiModel6AnimalO8elephantyA2CmF", - "moduleName": "DouShouQiModel" - }, - { - "kind": "Var", - "name": "rawValue", - "printedName": "rawValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel6AnimalO8rawValueSivp", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueSivp", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel6AnimalO8rawValueSivg", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueSivg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(rawValue:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Animal?", - "children": [ - { - "kind": "TypeNominal", - "name": "Animal", - "printedName": "DouShouQiModel.Animal", - "usr": "s:14DouShouQiModel6AnimalO" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel6AnimalO8rawValueACSgSi_tcfc", - "mangledName": "$s14DouShouQiModel6AnimalO8rawValueACSgSi_tcfc", - "moduleName": "DouShouQiModel", - "implicit": true, - "init_kind": "Designated" - } - ], - "declKind": "Enum", - "usr": "s:14DouShouQiModel6AnimalO", - "mangledName": "$s14DouShouQiModel6AnimalO", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "enumRawTypeName": "Int", - "conformances": [ - { - "kind": "Conformance", - "name": "Equatable", - "printedName": "Equatable", - "usr": "s:SQ", - "mangledName": "$sSQ" - }, - { - "kind": "Conformance", - "name": "Hashable", - "printedName": "Hashable", - "usr": "s:SH", - "mangledName": "$sSH" - }, - { - "kind": "Conformance", - "name": "RawRepresentable", - "printedName": "RawRepresentable", - "children": [ - { - "kind": "TypeWitness", - "name": "RawValue", - "printedName": "RawValue", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - } - ] - } - ], - "usr": "s:SY", - "mangledName": "$sSY" - } - ] - }, - { - "kind": "Import", - "name": "Foundation", - "printedName": "Foundation", - "declKind": "Import", - "moduleName": "DouShouQiModel" - }, - { - "kind": "TypeDecl", - "name": "Game", - "printedName": "Game", - "children": [ - { - "kind": "Var", - "name": "board", - "printedName": "board", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameC5boardAA5BoardVvp", - "mangledName": "$s14DouShouQiModel4GameC5boardAA5BoardVvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameC5boardAA5BoardVvg", - "mangledName": "$s14DouShouQiModel4GameC5boardAA5BoardVvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "rules", - "printedName": "rules", - "children": [ - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameC5rulesAA5Rules_pvp", - "mangledName": "$s14DouShouQiModel4GameC5rulesAA5Rules_pvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameC5rulesAA5Rules_pvg", - "mangledName": "$s14DouShouQiModel4GameC5rulesAA5Rules_pvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Var", - "name": "players", - "printedName": "players", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Owner : DouShouQiModel.Player]", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameC7playersSDyAA5OwnerOAA6PlayerCGvp", - "mangledName": "$s14DouShouQiModel4GameC7playersSDyAA5OwnerOAA6PlayerCGvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "Final", - "HasStorage", - "AccessControl" - ], - "isLet": true, - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Dictionary", - "printedName": "[DouShouQiModel.Owner : DouShouQiModel.Player]", - "children": [ - { - "kind": "TypeNominal", - "name": "Owner", - "printedName": "DouShouQiModel.Owner", - "usr": "s:14DouShouQiModel5OwnerO" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:SD" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameC7playersSDyAA5OwnerOAA6PlayerCGvg", - "mangledName": "$s14DouShouQiModel4GameC7playersSDyAA5OwnerOAA6PlayerCGvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "declAttributes": [ - "Final" - ], - "accessorKind": "get" - } - ] - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withRules:andPlayer1:andPlayer2:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameC" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4GameC9withRules10andPlayer10H7Player2AcA0G0_p_AA6PlayerCAItKcfc", - "mangledName": "$s14DouShouQiModel4GameC9withRules10andPlayer10H7Player2AcA0G0_p_AA6PlayerCAItKcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "init_kind": "Designated" - }, - { - "kind": "Constructor", - "name": "init", - "printedName": "init(withBoard:andRules:andPlayer1:andPlayer2:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameC" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Rules", - "printedName": "DouShouQiModel.Rules", - "usr": "s:14DouShouQiModel5RulesP" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Constructor", - "usr": "s:14DouShouQiModel4GameC9withBoard8andRules0H7Player10H7Player2AcA0G0V_AA0I0_pAA6PlayerCALtKcfc", - "mangledName": "$s14DouShouQiModel4GameC9withBoard8andRules0H7Player10H7Player2AcA0G0V_AA0I0_pAA6PlayerCALtKcfc", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl", - "RawDocComment" - ], - "throwing": true, - "init_kind": "Designated" - }, - { - "kind": "Function", - "name": "addGameStartedListener", - "printedName": "addGameStartedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC03addE15StartedListeneryyyAA5BoardVcF", - "mangledName": "$s14DouShouQiModel4GameC03addE15StartedListeneryyyAA5BoardVcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addPlayerNotifiedListener", - "printedName": "addPlayerNotifiedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Player) async throws -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Player)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC25addPlayerNotifiedListeneryyyAA5BoardV_AA0G0CtYaKcF", - "mangledName": "$s14DouShouQiModel4GameC25addPlayerNotifiedListeneryyyAA5BoardV_AA0G0CtYaKcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addGameChangedListener", - "printedName": "addGameChangedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Game) async -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Game", - "printedName": "DouShouQiModel.Game", - "usr": "s:14DouShouQiModel4GameC" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC03addE15ChangedListeneryyyACYacF", - "mangledName": "$s14DouShouQiModel4GameC03addE15ChangedListeneryyyACYacF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addGameOverListener", - "printedName": "addGameOverListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Result", - "printedName": "DouShouQiModel.Result", - "usr": "s:14DouShouQiModel6ResultO" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Player?", - "children": [ - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "usr": "s:Sq" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC03addE12OverListeneryyyAA5BoardV_AA6ResultOAA6PlayerCSgtcF", - "mangledName": "$s14DouShouQiModel4GameC03addE12OverListeneryyyAA5BoardV_AA6ResultOAA6PlayerCSgtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addMoveChosenCallbacksListener", - "printedName": "addMoveChosenCallbacksListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC30addMoveChosenCallbacksListeneryyyAA5BoardV_AA0G0VAA6PlayerCtcF", - "mangledName": "$s14DouShouQiModel4GameC30addMoveChosenCallbacksListeneryyyAA5BoardV_AA0G0VAA6PlayerCtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addInvalidMoveCallbacksListener", - "printedName": "addInvalidMoveCallbacksListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool)", - "children": [ - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - }, - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - }, - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC31addInvalidMoveCallbacksListeneryyyAA5BoardV_AA0H0VAA6PlayerCSbtcF", - "mangledName": "$s14DouShouQiModel4GameC31addInvalidMoveCallbacksListeneryyyAA5BoardV_AA0H0VAA6PlayerCSbtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addBoardChangedListener", - "printedName": "addBoardChangedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(DouShouQiModel.Board) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Board", - "printedName": "DouShouQiModel.Board", - "usr": "s:14DouShouQiModel5BoardV" - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC23addBoardChangedListeneryyyAA0G0VcF", - "mangledName": "$s14DouShouQiModel4GameC23addBoardChangedListeneryyyAA0G0VcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "addPieceRemovedListener", - "printedName": "addPieceRemovedListener(_:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeFunc", - "name": "Function", - "printedName": "(Swift.Int, Swift.Int, DouShouQiModel.Piece) -> ()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Tuple", - "printedName": "(Swift.Int, Swift.Int, DouShouQiModel.Piece)", - "children": [ - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Int", - "printedName": "Swift.Int", - "usr": "s:Si" - }, - { - "kind": "TypeNominal", - "name": "Piece", - "printedName": "DouShouQiModel.Piece", - "usr": "s:14DouShouQiModel5PieceV" - } - ] - } - ] - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC23addPieceRemovedListeneryyySi_SiAA0G0VtcF", - "mangledName": "$s14DouShouQiModel4GameC23addPieceRemovedListeneryyySi_SiAA0G0VtcF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "funcSelfKind": "NonMutating" - }, - { - "kind": "Function", - "name": "onPlayed", - "printedName": "onPlayed(with:from:)", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - }, - { - "kind": "TypeNominal", - "name": "Optional", - "printedName": "DouShouQiModel.Move?", - "children": [ - { - "kind": "TypeNominal", - "name": "Move", - "printedName": "DouShouQiModel.Move", - "usr": "s:14DouShouQiModel4MoveV" - } - ], - "usr": "s:Sq" - }, - { - "kind": "TypeNominal", - "name": "Player", - "printedName": "DouShouQiModel.Player", - "usr": "s:14DouShouQiModel6PlayerC" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC8onPlayed4with4fromyAA4MoveVSg_AA6PlayerCtYaKF", - "mangledName": "$s14DouShouQiModel4GameC8onPlayed4with4fromyAA4MoveVSg_AA6PlayerCtYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - }, - { - "kind": "Var", - "name": "isOver", - "printedName": "isOver", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - } - ], - "declKind": "Var", - "usr": "s:14DouShouQiModel4GameC6isOverSbvp", - "mangledName": "$s14DouShouQiModel4GameC6isOverSbvp", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "HasInitialValue", - "HasStorage", - "SetterAccess", - "AccessControl" - ], - "hasStorage": true, - "accessors": [ - { - "kind": "Accessor", - "name": "Get", - "printedName": "Get()", - "children": [ - { - "kind": "TypeNominal", - "name": "Bool", - "printedName": "Swift.Bool", - "usr": "s:Sb" - } - ], - "declKind": "Accessor", - "usr": "s:14DouShouQiModel4GameC6isOverSbvg", - "mangledName": "$s14DouShouQiModel4GameC6isOverSbvg", - "moduleName": "DouShouQiModel", - "implicit": true, - "accessorKind": "get" - } - ] - }, - { - "kind": "Function", - "name": "start", - "printedName": "start()", - "children": [ - { - "kind": "TypeNominal", - "name": "Void", - "printedName": "()" - } - ], - "declKind": "Func", - "usr": "s:14DouShouQiModel4GameC5startyyYaKF", - "mangledName": "$s14DouShouQiModel4GameC5startyyYaKF", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl" - ], - "throwing": true, - "funcSelfKind": "NonMutating" - } - ], - "declKind": "Class", - "usr": "s:14DouShouQiModel4GameC", - "mangledName": "$s14DouShouQiModel4GameC", - "moduleName": "DouShouQiModel", - "declAttributes": [ - "AccessControl", - "RawDocComment" - ] - } - ], - "json_format_version": 8 - }, - "ConstValues": [ - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 81, - "length": 1, - "value": "9" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 111, - "length": 1, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 148, - "length": 1, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 3048, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 3088, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 3941, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Dictionary", - "offset": 4285, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 4475, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 4517, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 4565, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 4967, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 6169, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 6189, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 6229, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 9685, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 10586, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 10906, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11013, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 11170, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11188, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11280, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11325, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11433, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11477, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11569, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11632, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 11740, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 12266, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12307, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12319, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12326, - "length": 2, - "value": "-1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12703, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12714, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 12721, - "length": 2, - "value": "-1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 13086, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 13464, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 15597, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 15704, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 15728, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 15845, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 15869, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 16049, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "BooleanLiteral", - "offset": 16149, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 16579, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "IntegerLiteral", - "offset": 16584, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Dictionary", - "offset": 16948, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/ClassicRules.swift", - "kind": "Array", - "offset": 17004, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 122, - "length": 81, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 147, - "length": 4, - "value": "\"ΓΈ\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 152, - "length": 2, - "value": "\" on \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 167, - "length": 1, - "value": "\", \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Cell.swift", - "kind": "StringLiteral", - "offset": 202, - "length": 1, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 89, - "length": 1, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 119, - "length": 1, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2067, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2107, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2267, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2277, - "length": 1, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2419, - "length": 1, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2429, - "length": 1, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 2964, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3004, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 3773, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3793, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 3833, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 4182, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 4292, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 4531, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 4639, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4773, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4782, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4800, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4809, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 4925, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 5013, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 6962, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 7077, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7105, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "IntegerLiteral", - "offset": 7230, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7258, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "BooleanLiteral", - "offset": 7350, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Dictionary", - "offset": 8072, - "length": 3, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/VerySimpleRules.swift", - "kind": "Array", - "offset": 8128, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Player.swift", - "kind": "Array", - "offset": 418, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "BooleanLiteral", - "offset": 475, - "length": 5, - "value": "false" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 570, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 694, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 981, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 996, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1015, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1049, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1212, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1278, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1548, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1579, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 1979, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Board.swift", - "kind": "IntegerLiteral", - "offset": 2010, - "length": 1, - "value": "0" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 122, - "length": 40, - "value": "\"[\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 150, - "length": 1, - "value": "\":\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Piece.swift", - "kind": "StringLiteral", - "offset": 160, - "length": 1, - "value": "\"]\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 183, - "length": 3, - "value": "\"x\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 229, - "length": 3, - "value": "\"1\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Owner.swift", - "kind": "StringLiteral", - "offset": 275, - "length": 3, - "value": "\"2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 616, - "length": 87, - "value": "\"\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 625, - "length": 1, - "value": "\": [\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 640, - "length": 1, - "value": "\",\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 656, - "length": 1, - "value": "\"] -> [\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 679, - "length": 1, - "value": "\", \"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Move.swift", - "kind": "StringLiteral", - "offset": 701, - "length": 1, - "value": "\"]\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 60, - "length": 1, - "value": "1" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 63, - "length": 3, - "value": "2" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 68, - "length": 3, - "value": "3" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 73, - "length": 4, - "value": "4" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 79, - "length": 7, - "value": "5" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 88, - "length": 5, - "value": "6" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 95, - "length": 4, - "value": "7" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Animal.swift", - "kind": "IntegerLiteral", - "offset": 101, - "length": 8, - "value": "8" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "StringLiteral", - "offset": 513, - "length": 55, - "value": "\"The ids of players are not .player1 and then .player2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "StringLiteral", - "offset": 1483, - "length": 55, - "value": "\"The ids of players are not .player1 and then .player2\"" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 1754, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 2090, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 2582, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 3012, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 3416, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 3827, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 4261, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "Array", - "offset": 4580, - "length": 2, - "value": "[]" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "BooleanLiteral", - "offset": 6361, - "length": 4, - "value": "true" - }, - { - "filePath": "\/Users\/marcchevaldonne\/Documents\/temp\/depots2023\/DouShouQi_ModelPackage\/DouShouQiModel\/Game.swift", - "kind": "BooleanLiteral", - "offset": 7044, - "length": 5, - "value": "false" - } - ] -} \ No newline at end of file diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/x86_64-apple-macos.private.swiftinterface b/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/x86_64-apple-macos.private.swiftinterface deleted file mode 100644 index dc0a8ad..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/x86_64-apple-macos.private.swiftinterface +++ /dev/null @@ -1,266 +0,0 @@ -// swift-interface-format-version: 1.0 -// swift-compiler-version: Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5) -// swift-module-flags: -target x86_64-apple-macos13.0 -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -module-name DouShouQiModel -// swift-module-flags-ignorable: -enable-bare-slash-regex -@_exported import DouShouQiModel -import Foundation -import Swift -import _Concurrency -import _StringProcessing -import _SwiftConcurrencyShims -public enum Result : Swift.Equatable { - case notFinished - case even - case winner(winner: DouShouQiModel.Owner, reason: DouShouQiModel.WinningReason) - public static func == (a: DouShouQiModel.Result, b: DouShouQiModel.Result) -> Swift.Bool -} -public enum WinningReason { - case denReached, noMorePieces, tooManyOccurences, noMovesLeft - public static func == (a: DouShouQiModel.WinningReason, b: DouShouQiModel.WinningReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -public enum BoardResult : Swift.Equatable { - case unknown - case ok(piece: DouShouQiModel.Piece?) - case failed(reason: DouShouQiModel.BoardFailingReason) - public static func == (a: DouShouQiModel.BoardResult, b: DouShouQiModel.BoardResult) -> Swift.Bool -} -public enum BoardFailingReason { - case unknown, outOfBounds, cellNotEmpty, cellEmpty - public static func == (a: DouShouQiModel.BoardFailingReason, b: DouShouQiModel.BoardFailingReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class HumanPlayer : DouShouQiModel.Player { - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner, andInputMethod input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - #if compiler(>=5.3) && $AsyncAwait - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - public func changeInput(input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - #if compiler(>=5.3) && $AsyncAwait - public func chooseMove(_ move: DouShouQiModel.Move?) async throws - #endif - @objc deinit -} -public struct ClassicRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public struct Cell : Swift.CustomStringConvertible, Swift.Equatable { - public var description: Swift.String { - get - } - public let cellType: DouShouQiModel.CellType - public let initialOwner: DouShouQiModel.Owner - public var piece: DouShouQiModel.Piece? - public init(ofType cellType: DouShouQiModel.CellType, ownedBy initialOwner: DouShouQiModel.Owner = .noOne, withPiece piece: DouShouQiModel.Piece? = nil) - public static func == (a: DouShouQiModel.Cell, b: DouShouQiModel.Cell) -> Swift.Bool -} -public struct VerySimpleRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public protocol Rules { - static func createBoard() -> DouShouQiModel.Board - static func checkBoard(_ board: DouShouQiModel.Board) throws - func getNextPlayer() -> DouShouQiModel.Owner - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - func isMoveValid(onBoard: DouShouQiModel.Board, fromRow: Swift.Int, andFromColumn: Swift.Int, toRow: Swift.Int, andToColumn: Swift.Int) -> Swift.Bool - func isMoveValid(onBoard: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - func isGameOver(withBoard: DouShouQiModel.Board, andLastRowPlayed: Swift.Int, andLastColumnPlayer: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - var occurences: [DouShouQiModel.Board : Swift.Int] { get } - var historic: [DouShouQiModel.Move] { get } -} -public class Player { - final public let name: Swift.String - final public let id: DouShouQiModel.Owner - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - #if compiler(>=5.3) && $AsyncAwait - public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - #if compiler(>=5.3) && $AsyncAwait - public func addPlayedCallbacksListener(_ listener: @escaping (DouShouQiModel.Move?, DouShouQiModel.Player) async throws -> Swift.Void) - #endif - #if compiler(>=5.3) && $AsyncAwait - public func notifyPlayed(withMove move: DouShouQiModel.Move?, andPlayer player: DouShouQiModel.Player) async throws - #endif - @objc deinit -} -public enum GameError : Swift.Error { - case invalidMove, nextPlayerError, badPlayerId(message: Swift.String), invalidRules, invalidPlayer, invalidGame, invalidBoard -} -@_inheritsConvenienceInitializers public class RandomPlayer : DouShouQiModel.IAPlayer { - #if compiler(>=5.3) && $AsyncAwait - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public enum CellType : Swift.CaseIterable { - case unknown, jungle, water, trap, den - public static func == (a: DouShouQiModel.CellType, b: DouShouQiModel.CellType) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public typealias AllCases = [DouShouQiModel.CellType] - public static var allCases: [DouShouQiModel.CellType] { - get - } - public var hashValue: Swift.Int { - get - } -} -public struct Board : Swift.Hashable { - public func hash(into hasher: inout Swift.Hasher) - public let nbRows: Swift.Int - public let nbColumns: Swift.Int - public var grid: [[DouShouQiModel.Cell]] { - get - } - public init?(withGrid grid: [[DouShouQiModel.Cell]]) - public func countPieces(of owner: DouShouQiModel.Owner) -> Swift.Int - public func countPieces() -> (nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int) - public mutating func insert(piece: DouShouQiModel.Piece, atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public mutating func removePiece(atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public static func == (a: DouShouQiModel.Board, b: DouShouQiModel.Board) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public struct Piece : Swift.CustomStringConvertible, Swift.Hashable { - public var description: Swift.String { - get - } - public let owner: DouShouQiModel.Owner - public let animal: DouShouQiModel.Animal - public init(withOwner owner: DouShouQiModel.Owner, andAnimal animal: DouShouQiModel.Animal) - public func hash(into hasher: inout Swift.Hasher) - public static func == (a: DouShouQiModel.Piece, b: DouShouQiModel.Piece) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public enum InvalidBoardError : Swift.Error, Swift.Equatable { - case unknownError - case badDimensions(nbRows: Swift.Int, nbColumns: Swift.Int) - case badCellType(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int) - case multipleOccurenceOfSamePiece(piece: DouShouQiModel.Piece) - case pieceWithNoOwner(piece: DouShouQiModel.Piece) - case pieceNotAllowedOnThisCell(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell) - public static func == (a: DouShouQiModel.InvalidBoardError, b: DouShouQiModel.InvalidBoardError) -> Swift.Bool -} -public enum Owner { - case noOne, player1, player2 - public var simpleDescription: Swift.String { - get - } - public static func == (a: DouShouQiModel.Owner, b: DouShouQiModel.Owner) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class IAPlayer : DouShouQiModel.Player { - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public struct Move : Swift.CustomStringConvertible, Swift.Equatable { - public let owner: DouShouQiModel.Owner - public let rowOrigin: Swift.Int - public let columnOrigin: Swift.Int - public let rowDestination: Swift.Int - public let columnDestination: Swift.Int - public init(of owner: DouShouQiModel.Owner, fromRow rowOrigin: Swift.Int, andFromColumn colOrigin: Swift.Int, toRow rowDest: Swift.Int, andToColumn colDest: Swift.Int) - public var description: Swift.String { - get - } - public static func == (a: DouShouQiModel.Move, b: DouShouQiModel.Move) -> Swift.Bool -} -public enum Animal : Swift.Int { - case rat, cat, dog, wolf, leopard, tiger, lion, elephant - public init?(rawValue: Swift.Int) - public typealias RawValue = Swift.Int - public var rawValue: Swift.Int { - get - } -} -public class Game { - public var board: DouShouQiModel.Board { - get - } - public var rules: any DouShouQiModel.Rules { - get - } - final public let players: [DouShouQiModel.Owner : DouShouQiModel.Player] - public init(withRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public init(withBoard board: DouShouQiModel.Board, andRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public func addGameStartedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public func addPlayerNotifiedListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Player) async throws -> Swift.Void) - #endif - #if compiler(>=5.3) && $AsyncAwait - public func addGameChangedListener(_ listener: @escaping (DouShouQiModel.Game) async -> Swift.Void) - #endif - public func addGameOverListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> Swift.Void) - public func addMoveChosenCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> Swift.Void) - public func addInvalidMoveCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> Swift.Void) - public func addBoardChangedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - public func addPieceRemovedListener(_ listener: @escaping (Swift.Int, Swift.Int, DouShouQiModel.Piece) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public func onPlayed(with move: DouShouQiModel.Move?, from player: DouShouQiModel.Player) async throws - #endif - public var isOver: Swift.Bool { - get - } - #if compiler(>=5.3) && $AsyncAwait - public func start() async throws - #endif - @objc deinit -} -extension DouShouQiModel.WinningReason : Swift.Equatable {} -extension DouShouQiModel.WinningReason : Swift.Hashable {} -extension DouShouQiModel.BoardFailingReason : Swift.Equatable {} -extension DouShouQiModel.BoardFailingReason : Swift.Hashable {} -extension DouShouQiModel.CellType : Swift.Equatable {} -extension DouShouQiModel.CellType : Swift.Hashable {} -extension DouShouQiModel.Owner : Swift.Equatable {} -extension DouShouQiModel.Owner : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.Equatable {} -extension DouShouQiModel.Animal : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.RawRepresentable {} diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/x86_64-apple-macos.swiftdoc b/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/x86_64-apple-macos.swiftdoc deleted file mode 100644 index 769dad067e64c46aab11a99eb054be312c6671d2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 688 zcmaDfX9YVW2Lpp90|Ns)qlJ#c+7Dby0=U-%aP4>CT5rI$Ux91Q2d>2%xY!*xUFbQa zy@N^j#3Ahshx9v`wD%m+SaZl(Xp58P1t*OOP8vYc#=uE?50mBGjnH89XK)H48yX)=@m&2h;u4bI3f4b1e-Pf5*TVAuu}tFSPOH#5;q1X-b* zo0yzmY-p@!0I|MRkbxl($TVUT;PH}S%wU2DGcYl{;uQa`0_24Paj})5398AaPWg#N zDPd-LNkRGL#le|n1u{T&d8N5YsYMF;X$nO^Q4n2{ky)$&RtxenD-bIJvA({(0zS2% z5CH>b?c#IlKvpym<8*{&UXpWuPHAo)*d6jfr3kZ=Arjb~0`eZJQ?M!ry9OF#APN*l QEI_Qpm7xd~2J#>P0AdKb`v3p{ diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/x86_64-apple-macos.swiftinterface b/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/x86_64-apple-macos.swiftinterface deleted file mode 100644 index dc0a8ad..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/DouShouQiModel.swiftmodule/x86_64-apple-macos.swiftinterface +++ /dev/null @@ -1,266 +0,0 @@ -// swift-interface-format-version: 1.0 -// swift-compiler-version: Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5) -// swift-module-flags: -target x86_64-apple-macos13.0 -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -module-name DouShouQiModel -// swift-module-flags-ignorable: -enable-bare-slash-regex -@_exported import DouShouQiModel -import Foundation -import Swift -import _Concurrency -import _StringProcessing -import _SwiftConcurrencyShims -public enum Result : Swift.Equatable { - case notFinished - case even - case winner(winner: DouShouQiModel.Owner, reason: DouShouQiModel.WinningReason) - public static func == (a: DouShouQiModel.Result, b: DouShouQiModel.Result) -> Swift.Bool -} -public enum WinningReason { - case denReached, noMorePieces, tooManyOccurences, noMovesLeft - public static func == (a: DouShouQiModel.WinningReason, b: DouShouQiModel.WinningReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -public enum BoardResult : Swift.Equatable { - case unknown - case ok(piece: DouShouQiModel.Piece?) - case failed(reason: DouShouQiModel.BoardFailingReason) - public static func == (a: DouShouQiModel.BoardResult, b: DouShouQiModel.BoardResult) -> Swift.Bool -} -public enum BoardFailingReason { - case unknown, outOfBounds, cellNotEmpty, cellEmpty - public static func == (a: DouShouQiModel.BoardFailingReason, b: DouShouQiModel.BoardFailingReason) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class HumanPlayer : DouShouQiModel.Player { - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner, andInputMethod input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - #if compiler(>=5.3) && $AsyncAwait - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - public func changeInput(input: @escaping (_ hp: DouShouQiModel.HumanPlayer) -> DouShouQiModel.Move?) - #if compiler(>=5.3) && $AsyncAwait - public func chooseMove(_ move: DouShouQiModel.Move?) async throws - #endif - @objc deinit -} -public struct ClassicRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public struct Cell : Swift.CustomStringConvertible, Swift.Equatable { - public var description: Swift.String { - get - } - public let cellType: DouShouQiModel.CellType - public let initialOwner: DouShouQiModel.Owner - public var piece: DouShouQiModel.Piece? - public init(ofType cellType: DouShouQiModel.CellType, ownedBy initialOwner: DouShouQiModel.Owner = .noOne, withPiece piece: DouShouQiModel.Piece? = nil) - public static func == (a: DouShouQiModel.Cell, b: DouShouQiModel.Cell) -> Swift.Bool -} -public struct VerySimpleRules : DouShouQiModel.Rules { - public static func createBoard() -> DouShouQiModel.Board - public static func checkBoard(_ board: DouShouQiModel.Board) throws - public init() - public init(occurences: [DouShouQiModel.Board : Swift.Int], historic: [DouShouQiModel.Move]) - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - public func getMoves(in board: DouShouQiModel.Board, of owner: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - public func isMoveValid(onBoard board: DouShouQiModel.Board, fromRow originRow: Swift.Int, andFromColumn originColumn: Swift.Int, toRow destinationRow: Swift.Int, andToColumn destinationColumn: Swift.Int) -> Swift.Bool - public func isMoveValid(onBoard board: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - public func isGameOver(withBoard board: DouShouQiModel.Board, andLastRowPlayed lastRow: Swift.Int, andLastColumnPlayer lastColumn: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - public mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - public func getNextPlayer() -> DouShouQiModel.Owner - public var occurences: [DouShouQiModel.Board : Swift.Int] { - get - } - public var historic: [DouShouQiModel.Move] { - get - } -} -public protocol Rules { - static func createBoard() -> DouShouQiModel.Board - static func checkBoard(_ board: DouShouQiModel.Board) throws - func getNextPlayer() -> DouShouQiModel.Owner - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner) -> [DouShouQiModel.Move] - func getMoves(in board: DouShouQiModel.Board, of: DouShouQiModel.Owner, fromRow row: Swift.Int, andColumn col: Swift.Int) -> [DouShouQiModel.Move] - func isMoveValid(onBoard: DouShouQiModel.Board, fromRow: Swift.Int, andFromColumn: Swift.Int, toRow: Swift.Int, andToColumn: Swift.Int) -> Swift.Bool - func isMoveValid(onBoard: DouShouQiModel.Board, withMove move: DouShouQiModel.Move) -> Swift.Bool - func isGameOver(withBoard: DouShouQiModel.Board, andLastRowPlayed: Swift.Int, andLastColumnPlayer: Swift.Int) -> (Swift.Bool, DouShouQiModel.Result) - mutating func playedMove(_ move: DouShouQiModel.Move, onStartingBoard board: DouShouQiModel.Board, andResultingBoard resultingBoard: DouShouQiModel.Board) throws - var occurences: [DouShouQiModel.Board : Swift.Int] { get } - var historic: [DouShouQiModel.Move] { get } -} -public class Player { - final public let name: Swift.String - final public let id: DouShouQiModel.Owner - public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - #if compiler(>=5.3) && $AsyncAwait - public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - #if compiler(>=5.3) && $AsyncAwait - public func addPlayedCallbacksListener(_ listener: @escaping (DouShouQiModel.Move?, DouShouQiModel.Player) async throws -> Swift.Void) - #endif - #if compiler(>=5.3) && $AsyncAwait - public func notifyPlayed(withMove move: DouShouQiModel.Move?, andPlayer player: DouShouQiModel.Player) async throws - #endif - @objc deinit -} -public enum GameError : Swift.Error { - case invalidMove, nextPlayerError, badPlayerId(message: Swift.String), invalidRules, invalidPlayer, invalidGame, invalidBoard -} -@_inheritsConvenienceInitializers public class RandomPlayer : DouShouQiModel.IAPlayer { - #if compiler(>=5.3) && $AsyncAwait - override public func chooseMove(in board: DouShouQiModel.Board, with rules: any DouShouQiModel.Rules) async throws - #endif - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public enum CellType : Swift.CaseIterable { - case unknown, jungle, water, trap, den - public static func == (a: DouShouQiModel.CellType, b: DouShouQiModel.CellType) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public typealias AllCases = [DouShouQiModel.CellType] - public static var allCases: [DouShouQiModel.CellType] { - get - } - public var hashValue: Swift.Int { - get - } -} -public struct Board : Swift.Hashable { - public func hash(into hasher: inout Swift.Hasher) - public let nbRows: Swift.Int - public let nbColumns: Swift.Int - public var grid: [[DouShouQiModel.Cell]] { - get - } - public init?(withGrid grid: [[DouShouQiModel.Cell]]) - public func countPieces(of owner: DouShouQiModel.Owner) -> Swift.Int - public func countPieces() -> (nbOfPiecesOfPlayer1: Swift.Int, nbOfPiecesOfPlayer2: Swift.Int) - public mutating func insert(piece: DouShouQiModel.Piece, atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public mutating func removePiece(atRow row: Swift.Int, andColumn column: Swift.Int) -> DouShouQiModel.BoardResult - public static func == (a: DouShouQiModel.Board, b: DouShouQiModel.Board) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public struct Piece : Swift.CustomStringConvertible, Swift.Hashable { - public var description: Swift.String { - get - } - public let owner: DouShouQiModel.Owner - public let animal: DouShouQiModel.Animal - public init(withOwner owner: DouShouQiModel.Owner, andAnimal animal: DouShouQiModel.Animal) - public func hash(into hasher: inout Swift.Hasher) - public static func == (a: DouShouQiModel.Piece, b: DouShouQiModel.Piece) -> Swift.Bool - public var hashValue: Swift.Int { - get - } -} -public enum InvalidBoardError : Swift.Error, Swift.Equatable { - case unknownError - case badDimensions(nbRows: Swift.Int, nbColumns: Swift.Int) - case badCellType(cellType: DouShouQiModel.CellType, row: Swift.Int, column: Swift.Int) - case multipleOccurenceOfSamePiece(piece: DouShouQiModel.Piece) - case pieceWithNoOwner(piece: DouShouQiModel.Piece) - case pieceNotAllowedOnThisCell(piece: DouShouQiModel.Piece, cell: DouShouQiModel.Cell) - public static func == (a: DouShouQiModel.InvalidBoardError, b: DouShouQiModel.InvalidBoardError) -> Swift.Bool -} -public enum Owner { - case noOne, player1, player2 - public var simpleDescription: Swift.String { - get - } - public static func == (a: DouShouQiModel.Owner, b: DouShouQiModel.Owner) -> Swift.Bool - public func hash(into hasher: inout Swift.Hasher) - public var hashValue: Swift.Int { - get - } -} -@_inheritsConvenienceInitializers public class IAPlayer : DouShouQiModel.Player { - override public init?(withName name: Swift.String, andId id: DouShouQiModel.Owner) - @objc deinit -} -public struct Move : Swift.CustomStringConvertible, Swift.Equatable { - public let owner: DouShouQiModel.Owner - public let rowOrigin: Swift.Int - public let columnOrigin: Swift.Int - public let rowDestination: Swift.Int - public let columnDestination: Swift.Int - public init(of owner: DouShouQiModel.Owner, fromRow rowOrigin: Swift.Int, andFromColumn colOrigin: Swift.Int, toRow rowDest: Swift.Int, andToColumn colDest: Swift.Int) - public var description: Swift.String { - get - } - public static func == (a: DouShouQiModel.Move, b: DouShouQiModel.Move) -> Swift.Bool -} -public enum Animal : Swift.Int { - case rat, cat, dog, wolf, leopard, tiger, lion, elephant - public init?(rawValue: Swift.Int) - public typealias RawValue = Swift.Int - public var rawValue: Swift.Int { - get - } -} -public class Game { - public var board: DouShouQiModel.Board { - get - } - public var rules: any DouShouQiModel.Rules { - get - } - final public let players: [DouShouQiModel.Owner : DouShouQiModel.Player] - public init(withRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public init(withBoard board: DouShouQiModel.Board, andRules rules: any DouShouQiModel.Rules, andPlayer1 player1: DouShouQiModel.Player, andPlayer2 player2: DouShouQiModel.Player) throws - public func addGameStartedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public func addPlayerNotifiedListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Player) async throws -> Swift.Void) - #endif - #if compiler(>=5.3) && $AsyncAwait - public func addGameChangedListener(_ listener: @escaping (DouShouQiModel.Game) async -> Swift.Void) - #endif - public func addGameOverListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Result, DouShouQiModel.Player?) -> Swift.Void) - public func addMoveChosenCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player) -> Swift.Void) - public func addInvalidMoveCallbacksListener(_ listener: @escaping (DouShouQiModel.Board, DouShouQiModel.Move, DouShouQiModel.Player, Swift.Bool) -> Swift.Void) - public func addBoardChangedListener(_ listener: @escaping (DouShouQiModel.Board) -> Swift.Void) - public func addPieceRemovedListener(_ listener: @escaping (Swift.Int, Swift.Int, DouShouQiModel.Piece) -> Swift.Void) - #if compiler(>=5.3) && $AsyncAwait - public func onPlayed(with move: DouShouQiModel.Move?, from player: DouShouQiModel.Player) async throws - #endif - public var isOver: Swift.Bool { - get - } - #if compiler(>=5.3) && $AsyncAwait - public func start() async throws - #endif - @objc deinit -} -extension DouShouQiModel.WinningReason : Swift.Equatable {} -extension DouShouQiModel.WinningReason : Swift.Hashable {} -extension DouShouQiModel.BoardFailingReason : Swift.Equatable {} -extension DouShouQiModel.BoardFailingReason : Swift.Hashable {} -extension DouShouQiModel.CellType : Swift.Equatable {} -extension DouShouQiModel.CellType : Swift.Hashable {} -extension DouShouQiModel.Owner : Swift.Equatable {} -extension DouShouQiModel.Owner : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.Equatable {} -extension DouShouQiModel.Animal : Swift.Hashable {} -extension DouShouQiModel.Animal : Swift.RawRepresentable {} diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/module.modulemap b/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/module.modulemap deleted file mode 100644 index e7aa10a..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Modules/module.modulemap +++ /dev/null @@ -1,11 +0,0 @@ -framework module DouShouQiModel { - umbrella header "DouShouQiModel.h" - export * - - module * { export * } -} - -module DouShouQiModel.Swift { - header "DouShouQiModel-Swift.h" - requires objc -} diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Resources/Info.plist b/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Resources/Info.plist deleted file mode 100644 index 7d58232..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/A/Resources/Info.plist +++ /dev/null @@ -1,46 +0,0 @@ - - - - - BuildMachineOSBuild - 23E224 - CFBundleDevelopmentRegion - en - CFBundleExecutable - DouShouQiModel - CFBundleIdentifier - fr.uca.iut.DouShouQiModel - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - DouShouQiModel - CFBundlePackageType - FMWK - CFBundleShortVersionString - 1.0 - CFBundleSupportedPlatforms - - MacOSX - - CFBundleVersion - 1 - DTCompiler - com.apple.compilers.llvm.clang.1_0 - DTPlatformBuild - - DTPlatformName - macosx - DTPlatformVersion - 14.2 - DTSDKBuild - 23C53 - DTSDKName - macosx14.2 - DTXcode - 1520 - DTXcodeBuild - 15C500b - LSMinimumSystemVersion - 13.0 - - diff --git a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/Current b/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/Current deleted file mode 120000 index 8c7e5a6..0000000 --- a/NE_PAS_TOUCHER/DSQ.xcframework/macos-arm64_x86_64/DouShouQiModel.framework/Versions/Current +++ /dev/null @@ -1 +0,0 @@ -A \ No newline at end of file