+
+v1.8.3 - Jan 22, 2024
+
+Importer tests: disable some tests in 2021.3 because the method is not available
+Rename test: log warning in 2021.3 to mention that the following warning is expected
+
v1.8.2 - Dec 26, 2023
diff --git a/Docs~/html/search/all_11.js b/Docs~/html/search/all_11.js
index 8a70eb0c..452a5363 100644
--- a/Docs~/html/search/all_11.js
+++ b/Docs~/html/search/all_11.js
@@ -1,13 +1,4 @@
var searchData=
[
- ['label_0',['Label',['../class_code_smile_editor_1_1_asset_1_1_label.html',1,'CodeSmileEditor::Asset']]],
- ['labels_1',['Labels',['../class_code_smile_editor_1_1_asset_a537c910df9f9f5d24a916b70934f4de8.html#a537c910df9f9f5d24a916b70934f4de8',1,'CodeSmileEditor::Asset']]],
- ['license_2',['GPL License',['../index.html#gpl-license',1,'']]],
- ['load_3c_20t_20_3e_3',['Load< T >',['../class_code_smile_editor_1_1_asset_a5d27be243c1f698cba116b768e3f65ec.html#a5d27be243c1f698cba116b768e3f65ec',1,'CodeSmileEditor.Asset.Load< T >()'],['../class_code_smile_editor_1_1_asset_1_1_file_a4f89e334c74903942522d0e0066d28b7.html#a4f89e334c74903942522d0e0066d28b7',1,'CodeSmileEditor.Asset.File.Load< T >()']]],
- ['loadall_4',['LoadAll',['../class_code_smile_editor_1_1_asset_1_1_sub_asset_a5a074e1dfad018aec7956375a8cf6099.html#a5a074e1dfad018aec7956375a8cf6099',1,'CodeSmileEditor::Asset::SubAsset']]],
- ['loadasync_5',['LoadAsync',['../class_code_smile_editor_1_1_asset_1_1_file_a1de889c18256fc25aa6f53507d448050.html#a1de889c18256fc25aa6f53507d448050',1,'CodeSmileEditor::Asset::File']]],
- ['loadmain_3c_20t_20_3e_6',['LoadMain< T >',['../class_code_smile_editor_1_1_asset_1_1_file_a8cc280e1c5ddde8511c2af5541365b3f.html#a8cc280e1c5ddde8511c2af5541365b3f',1,'CodeSmileEditor.Asset.File.LoadMain< T >([NotNull] Path path)'],['../class_code_smile_editor_1_1_asset_1_1_file_a9702d12ef27f2d0dfd1f8201fbb37088.html#a9702d12ef27f2d0dfd1f8201fbb37088',1,'CodeSmileEditor.Asset.File.LoadMain< T >(GUID guid)']]],
- ['loadorcreate_3c_20t_20_3e_7',['LoadOrCreate< T >',['../class_code_smile_editor_1_1_asset_1_1_file_a8e86208ec0d709c8259baacdb5e70281.html#a8e86208ec0d709c8259baacdb5e70281',1,'CodeSmileEditor::Asset::File']]],
- ['loadvisible_8',['LoadVisible',['../class_code_smile_editor_1_1_asset_1_1_sub_asset_aa1295ba7d9693917c8af65241aa0d3ae.html#aa1295ba7d9693917c8af65241aa0d3ae',1,'CodeSmileEditor::Asset::SubAsset']]],
- ['log_9',['Change Log',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html',1,'']]]
+ ['jan_2022_202024_0',['v1.8.3 - Jan 22, 2024',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v183---jan-22-2024',1,'']]]
];
diff --git a/Docs~/html/search/all_12.js b/Docs~/html/search/all_12.js
index b36658fb..8a70eb0c 100644
--- a/Docs~/html/search/all_12.js
+++ b/Docs~/html/search/all_12.js
@@ -1,9 +1,13 @@
var searchData=
[
- ['mainobject_0',['MainObject',['../class_code_smile_editor_1_1_asset_ab39ec1f49ab79e8ae84c6a53a2458f2d.html#ab39ec1f49ab79e8ae84c6a53a2458f2d',1,'CodeSmileEditor::Asset']]],
- ['mainobjecttype_1',['MainObjectType',['../class_code_smile_editor_1_1_asset_a15e35df5acbfe3751310d7fd241a6295.html#a15e35df5acbfe3751310d7fd241a6295',1,'CodeSmileEditor::Asset']]],
- ['makeeditable_2',['MakeEditable',['../class_code_smile_editor_1_1_asset_1_1_version_control_a43dd5490eaead3d1d8e0b72879e5d2f8.html#a43dd5490eaead3d1d8e0b72879e5d2f8',1,'CodeSmileEditor.Asset.VersionControl.MakeEditable([NotNull] Path path)'],['../class_code_smile_editor_1_1_asset_1_1_version_control_ab13913c709a6e8bc08412828d8ce86af.html#ab13913c709a6e8bc08412828d8ce86af',1,'CodeSmileEditor.Asset.VersionControl.MakeEditable([NotNull] Path[] paths, out List< String > notEditablePaths)'],['../class_code_smile_editor_1_1_asset_1_1_version_control_a0418e950cb362718e024a62216d057dc.html#a0418e950cb362718e024a62216d057dc',1,'CodeSmileEditor.Asset.VersionControl.MakeEditable([NotNull] String[] paths, out List< String > notEditablePaths)']]],
- ['makeeditableinteractive_3',['MakeEditableInteractive',['../class_code_smile_editor_1_1_asset_1_1_version_control_ad298d4e4fcf5043ab4d20e64bce3617f.html#ad298d4e4fcf5043ab4d20e64bce3617f',1,'CodeSmileEditor.Asset.VersionControl.MakeEditableInteractive([NotNull] Path[] paths, out List< String > notEditablePaths, String prompt=null)'],['../class_code_smile_editor_1_1_asset_1_1_version_control_a8eac8f1fdbd0e9009799ceeb46dc6b5c.html#a8eac8f1fdbd0e9009799ceeb46dc6b5c',1,'CodeSmileEditor.Asset.VersionControl.MakeEditableInteractive([NotNull] String[] paths, out List< String > notEditablePaths, String prompt=null)']]],
- ['metapath_4',['MetaPath',['../class_code_smile_editor_1_1_asset_1_1_path_a0084f5ad8a13c505013748101a81b1df.html#a0084f5ad8a13c505013748101a81b1df',1,'CodeSmileEditor.Asset.Path.MetaPath'],['../class_code_smile_editor_1_1_asset_a0084f5ad8a13c505013748101a81b1df.html#a0084f5ad8a13c505013748101a81b1df',1,'CodeSmileEditor.Asset.MetaPath']]],
- ['move_5',['Move',['../class_code_smile_editor_1_1_asset_a45faf9fc17e3cb57b87d2ae09e4dd7f8.html#a45faf9fc17e3cb57b87d2ae09e4dd7f8',1,'CodeSmileEditor.Asset.Move()'],['../class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9dbc6b65d0efec125ca6ec75.html#a996c0cfd9dbc6b65d0efec125ca6ec75',1,'CodeSmileEditor.Asset.File.Move()']]]
+ ['label_0',['Label',['../class_code_smile_editor_1_1_asset_1_1_label.html',1,'CodeSmileEditor::Asset']]],
+ ['labels_1',['Labels',['../class_code_smile_editor_1_1_asset_a537c910df9f9f5d24a916b70934f4de8.html#a537c910df9f9f5d24a916b70934f4de8',1,'CodeSmileEditor::Asset']]],
+ ['license_2',['GPL License',['../index.html#gpl-license',1,'']]],
+ ['load_3c_20t_20_3e_3',['Load< T >',['../class_code_smile_editor_1_1_asset_a5d27be243c1f698cba116b768e3f65ec.html#a5d27be243c1f698cba116b768e3f65ec',1,'CodeSmileEditor.Asset.Load< T >()'],['../class_code_smile_editor_1_1_asset_1_1_file_a4f89e334c74903942522d0e0066d28b7.html#a4f89e334c74903942522d0e0066d28b7',1,'CodeSmileEditor.Asset.File.Load< T >()']]],
+ ['loadall_4',['LoadAll',['../class_code_smile_editor_1_1_asset_1_1_sub_asset_a5a074e1dfad018aec7956375a8cf6099.html#a5a074e1dfad018aec7956375a8cf6099',1,'CodeSmileEditor::Asset::SubAsset']]],
+ ['loadasync_5',['LoadAsync',['../class_code_smile_editor_1_1_asset_1_1_file_a1de889c18256fc25aa6f53507d448050.html#a1de889c18256fc25aa6f53507d448050',1,'CodeSmileEditor::Asset::File']]],
+ ['loadmain_3c_20t_20_3e_6',['LoadMain< T >',['../class_code_smile_editor_1_1_asset_1_1_file_a8cc280e1c5ddde8511c2af5541365b3f.html#a8cc280e1c5ddde8511c2af5541365b3f',1,'CodeSmileEditor.Asset.File.LoadMain< T >([NotNull] Path path)'],['../class_code_smile_editor_1_1_asset_1_1_file_a9702d12ef27f2d0dfd1f8201fbb37088.html#a9702d12ef27f2d0dfd1f8201fbb37088',1,'CodeSmileEditor.Asset.File.LoadMain< T >(GUID guid)']]],
+ ['loadorcreate_3c_20t_20_3e_7',['LoadOrCreate< T >',['../class_code_smile_editor_1_1_asset_1_1_file_a8e86208ec0d709c8259baacdb5e70281.html#a8e86208ec0d709c8259baacdb5e70281',1,'CodeSmileEditor::Asset::File']]],
+ ['loadvisible_8',['LoadVisible',['../class_code_smile_editor_1_1_asset_1_1_sub_asset_aa1295ba7d9693917c8af65241aa0d3ae.html#aa1295ba7d9693917c8af65241aa0d3ae',1,'CodeSmileEditor::Asset::SubAsset']]],
+ ['log_9',['Change Log',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html',1,'']]]
];
diff --git a/Docs~/html/search/all_13.js b/Docs~/html/search/all_13.js
index e90fd2b2..b36658fb 100644
--- a/Docs~/html/search/all_13.js
+++ b/Docs~/html/search/all_13.js
@@ -1,13 +1,9 @@
var searchData=
[
- ['namespaceprefix_0',['NamespacePrefix',['../class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a0d4894d317ef790042b43eb297af0cb5.html#a0d4894d317ef790042b43eb297af0cb5',1,'CodeSmileEditor::Asset::Database::CacheServer']]],
- ['needs_20this_1',['Who needs this?',['../index.html#who-needs-this',1,'']]],
- ['nov_2010_202023_2',['v1.1.0 - Nov 10, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v110---nov-10-2023',1,'']]],
- ['nov_2012_202023_3',['v1.1.3 - Nov 12, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v113---nov-12-2023',1,'']]],
- ['nov_2013_202023_4',['v1.1.4 - Nov 13, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v114---nov-13-2023',1,'']]],
- ['nov_2022_202023_5',['Nov 22 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v120---nov-22-2023',1,'v1.2.0 - Nov 22, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v121---nov-22-2023',1,'v1.2.1 - Nov 22, 2023']]],
- ['nov_2023_202023_6',['v1.3.0 - Nov 23, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v130---nov-23-2023',1,'']]],
- ['nov_2024_202023_7',['Nov 24 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v131---nov-24-2023',1,'v1.3.1 - Nov 24, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v140---nov-24-2023',1,'v1.4.0 - Nov 24, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v141---nov-24-2023',1,'v1.4.1 - Nov 24, 2023']]],
- ['nov_2030_202023_8',['v1.6.0 - Nov 30, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v160---nov-30-2023',1,'']]],
- ['nov_209_202023_9',['v1.0.0 - Nov 9, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v100---nov-9-2023',1,'']]]
+ ['mainobject_0',['MainObject',['../class_code_smile_editor_1_1_asset_ab39ec1f49ab79e8ae84c6a53a2458f2d.html#ab39ec1f49ab79e8ae84c6a53a2458f2d',1,'CodeSmileEditor::Asset']]],
+ ['mainobjecttype_1',['MainObjectType',['../class_code_smile_editor_1_1_asset_a15e35df5acbfe3751310d7fd241a6295.html#a15e35df5acbfe3751310d7fd241a6295',1,'CodeSmileEditor::Asset']]],
+ ['makeeditable_2',['MakeEditable',['../class_code_smile_editor_1_1_asset_1_1_version_control_a43dd5490eaead3d1d8e0b72879e5d2f8.html#a43dd5490eaead3d1d8e0b72879e5d2f8',1,'CodeSmileEditor.Asset.VersionControl.MakeEditable([NotNull] Path path)'],['../class_code_smile_editor_1_1_asset_1_1_version_control_ab13913c709a6e8bc08412828d8ce86af.html#ab13913c709a6e8bc08412828d8ce86af',1,'CodeSmileEditor.Asset.VersionControl.MakeEditable([NotNull] Path[] paths, out List< String > notEditablePaths)'],['../class_code_smile_editor_1_1_asset_1_1_version_control_a0418e950cb362718e024a62216d057dc.html#a0418e950cb362718e024a62216d057dc',1,'CodeSmileEditor.Asset.VersionControl.MakeEditable([NotNull] String[] paths, out List< String > notEditablePaths)']]],
+ ['makeeditableinteractive_3',['MakeEditableInteractive',['../class_code_smile_editor_1_1_asset_1_1_version_control_ad298d4e4fcf5043ab4d20e64bce3617f.html#ad298d4e4fcf5043ab4d20e64bce3617f',1,'CodeSmileEditor.Asset.VersionControl.MakeEditableInteractive([NotNull] Path[] paths, out List< String > notEditablePaths, String prompt=null)'],['../class_code_smile_editor_1_1_asset_1_1_version_control_a8eac8f1fdbd0e9009799ceeb46dc6b5c.html#a8eac8f1fdbd0e9009799ceeb46dc6b5c',1,'CodeSmileEditor.Asset.VersionControl.MakeEditableInteractive([NotNull] String[] paths, out List< String > notEditablePaths, String prompt=null)']]],
+ ['metapath_4',['MetaPath',['../class_code_smile_editor_1_1_asset_1_1_path_a0084f5ad8a13c505013748101a81b1df.html#a0084f5ad8a13c505013748101a81b1df',1,'CodeSmileEditor.Asset.Path.MetaPath'],['../class_code_smile_editor_1_1_asset_a0084f5ad8a13c505013748101a81b1df.html#a0084f5ad8a13c505013748101a81b1df',1,'CodeSmileEditor.Asset.MetaPath']]],
+ ['move_5',['Move',['../class_code_smile_editor_1_1_asset_a45faf9fc17e3cb57b87d2ae09e4dd7f8.html#a45faf9fc17e3cb57b87d2ae09e4dd7f8',1,'CodeSmileEditor.Asset.Move()'],['../class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9dbc6b65d0efec125ca6ec75.html#a996c0cfd9dbc6b65d0efec125ca6ec75',1,'CodeSmileEditor.Asset.File.Move()']]]
];
diff --git a/Docs~/html/search/all_14.js b/Docs~/html/search/all_14.js
index 35d07722..e90fd2b2 100644
--- a/Docs~/html/search/all_14.js
+++ b/Docs~/html/search/all_14.js
@@ -1,12 +1,13 @@
var searchData=
[
- ['openexternal_0',['OpenExternal',['../class_code_smile_editor_1_1_asset_a0666c1c07cd6e3eef35e058c2e09fdf9.html#a0666c1c07cd6e3eef35e058c2e09fdf9',1,'CodeSmileEditor.Asset.OpenExternal()'],['../class_code_smile_editor_1_1_asset_1_1_file_aac35e74243833f4963e3cf8ab1a4f845.html#aac35e74243833f4963e3cf8ab1a4f845',1,'CodeSmileEditor.Asset.File.OpenExternal([NotNull] Object asset, Int32 lineNumber=-1, Int32 columnNumber=-1)'],['../class_code_smile_editor_1_1_asset_1_1_file_a009c655c2959b1ccd6b5a94a6da261e4.html#a009c655c2959b1ccd6b5a94a6da261e4',1,'CodeSmileEditor.Asset.File.OpenExternal(Int32 instanceId, Int32 lineNumber=-1, Int32 columnNumber=-1)'],['../class_code_smile_editor_1_1_asset_1_1_file_a0f433ac6de466ab7e094565c97af8db9.html#a0f433ac6de466ab7e094565c97af8db9',1,'CodeSmileEditor.Asset.File.OpenExternal([NotNull] Path path, Int32 lineNumber=-1, Int32 columnNumber=-1)'],['../class_code_smile_editor_1_1_asset_1_1_path_abb6aabf6ef3879246a9410a4b03cff6a.html#abb6aabf6ef3879246a9410a4b03cff6a',1,'CodeSmileEditor.Asset.Path.OpenExternal()']]],
- ['operator_20asset_1',['operator Asset',['../class_code_smile_editor_1_1_asset_ac84df38322545eff4fb610f424420751.html#ac84df38322545eff4fb610f424420751',1,'CodeSmileEditor.Asset.operator Asset(Object asset)'],['../class_code_smile_editor_1_1_asset_a23920865dfc0888bc17dc618ab30cbe0.html#a23920865dfc0888bc17dc618ab30cbe0',1,'CodeSmileEditor.Asset.operator Asset(Path path)'],['../class_code_smile_editor_1_1_asset_aa01a879ca0793e3def47211f4d8d338d.html#aa01a879ca0793e3def47211f4d8d338d',1,'CodeSmileEditor.Asset.operator Asset(String path)'],['../class_code_smile_editor_1_1_asset_ae41aa018507db1deffb10096f33e3bb6.html#ae41aa018507db1deffb10096f33e3bb6',1,'CodeSmileEditor.Asset.operator Asset(GUID guid)']]],
- ['operator_20object_2',['operator Object',['../class_code_smile_editor_1_1_asset_ae36538faed7f7dd4bd6d2a42867bbee1.html#ae36538faed7f7dd4bd6d2a42867bbee1',1,'CodeSmileEditor::Asset']]],
- ['operator_20path_3',['operator Path',['../class_code_smile_editor_1_1_asset_1_1_path_a8f41e9c71f0bf56b0fe80ef591334128.html#a8f41e9c71f0bf56b0fe80ef591334128',1,'CodeSmileEditor::Asset::Path']]],
- ['operator_20string_4',['operator String',['../class_code_smile_editor_1_1_asset_1_1_path_a294e1f7dac5c8247c2f32d50653ff2f6.html#a294e1f7dac5c8247c2f32d50653ff2f6',1,'CodeSmileEditor::Asset::Path']]],
- ['operator_21_3d_5',['operator!=',['../class_code_smile_editor_1_1_asset_1_1_path_a0a26f18bf392e944599d94a316d0dd9c.html#a0a26f18bf392e944599d94a316d0dd9c',1,'CodeSmileEditor.Asset.Path.operator!=(Path path1, Path path2)'],['../class_code_smile_editor_1_1_asset_1_1_path_a4061b79c8350f444d3691461e0f94e95.html#a4061b79c8350f444d3691461e0f94e95',1,'CodeSmileEditor.Asset.Path.operator!=(Path path1, System.Object other)'],['../class_code_smile_editor_1_1_asset_1_1_path_aeada9e1217349c548458a8b0ac2d1fca.html#aeada9e1217349c548458a8b0ac2d1fca',1,'CodeSmileEditor.Asset.Path.operator!=(System.Object other, Path path)']]],
- ['operator_3d_3d_6',['operator==',['../class_code_smile_editor_1_1_asset_1_1_path_aba3e55bf4914578717ffd4ec9707c29f.html#aba3e55bf4914578717ffd4ec9707c29f',1,'CodeSmileEditor.Asset.Path.operator==(Path path1, Path path2)'],['../class_code_smile_editor_1_1_asset_1_1_path_ad65aa0fe0b7d3cd28b1d33eeac3548cd.html#ad65aa0fe0b7d3cd28b1d33eeac3548cd',1,'CodeSmileEditor.Asset.Path.operator==(Path path1, System.Object other)'],['../class_code_smile_editor_1_1_asset_1_1_path_a66235cf211f3a38e4149fa48fc685f67.html#a66235cf211f3a38e4149fa48fc685f67',1,'CodeSmileEditor.Asset.Path.operator==(System.Object other, Path path)']]],
- ['owningbundle_7',['OwningBundle',['../class_code_smile_editor_1_1_asset_af8ffb2f0dfbb3585bd764056147d01b3.html#af8ffb2f0dfbb3585bd764056147d01b3',1,'CodeSmileEditor::Asset']]],
- ['owningbundlevariant_8',['OwningBundleVariant',['../class_code_smile_editor_1_1_asset_a91f88014dec2b3bff50d35f595e6409d.html#a91f88014dec2b3bff50d35f595e6409d',1,'CodeSmileEditor::Asset']]]
+ ['namespaceprefix_0',['NamespacePrefix',['../class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a0d4894d317ef790042b43eb297af0cb5.html#a0d4894d317ef790042b43eb297af0cb5',1,'CodeSmileEditor::Asset::Database::CacheServer']]],
+ ['needs_20this_1',['Who needs this?',['../index.html#who-needs-this',1,'']]],
+ ['nov_2010_202023_2',['v1.1.0 - Nov 10, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v110---nov-10-2023',1,'']]],
+ ['nov_2012_202023_3',['v1.1.3 - Nov 12, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v113---nov-12-2023',1,'']]],
+ ['nov_2013_202023_4',['v1.1.4 - Nov 13, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v114---nov-13-2023',1,'']]],
+ ['nov_2022_202023_5',['Nov 22 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v120---nov-22-2023',1,'v1.2.0 - Nov 22, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v121---nov-22-2023',1,'v1.2.1 - Nov 22, 2023']]],
+ ['nov_2023_202023_6',['v1.3.0 - Nov 23, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v130---nov-23-2023',1,'']]],
+ ['nov_2024_202023_7',['Nov 24 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v131---nov-24-2023',1,'v1.3.1 - Nov 24, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v140---nov-24-2023',1,'v1.4.0 - Nov 24, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v141---nov-24-2023',1,'v1.4.1 - Nov 24, 2023']]],
+ ['nov_2030_202023_8',['v1.6.0 - Nov 30, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v160---nov-30-2023',1,'']]],
+ ['nov_209_202023_9',['v1.0.0 - Nov 9, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v100---nov-9-2023',1,'']]]
];
diff --git a/Docs~/html/search/all_15.js b/Docs~/html/search/all_15.js
index 713eeede..35d07722 100644
--- a/Docs~/html/search/all_15.js
+++ b/Docs~/html/search/all_15.js
@@ -1,7 +1,12 @@
var searchData=
[
- ['package_0',['Package',['../class_code_smile_editor_1_1_asset_1_1_package.html',1,'CodeSmileEditor::Asset']]],
- ['path_1',['Path',['../class_code_smile_editor_1_1_asset_1_1_path.html',1,'Asset.Path'],['../class_code_smile_editor_1_1_asset_1_1_path_a14cdcaf6215972759787431b363f763c.html#a14cdcaf6215972759787431b363f763c',1,'CodeSmileEditor.Asset.Path.Path([NotNull] String fullOrRelativePath)'],['../class_code_smile_editor_1_1_asset_1_1_path_ab81690d1d82ddd90548e3d804b5afa29.html#ab81690d1d82ddd90548e3d804b5afa29',1,'CodeSmileEditor.Asset.Path.Path([NotNull] String folderPath, [NotNull] String fileName, [NotNull] String extension=DefaultExtension)'],['../class_code_smile_editor_1_1_asset_1_1_path_a3d0d7574b95b19be03fdfd90e6c628e2.html#a3d0d7574b95b19be03fdfd90e6c628e2',1,'CodeSmileEditor.Asset.Path.Path([NotNull] Object asset)']]],
- ['pathsnotdeleted_2',['PathsNotDeleted',['../class_code_smile_editor_1_1_asset_1_1_file_a02854122d4449e39feb8c1dfdc8bd537.html#a02854122d4449e39feb8c1dfdc8bd537',1,'CodeSmileEditor::Asset::File']]],
- ['port_3',['Port',['../class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_abd00b91d5bf24c2777bdc3914e79aab6.html#abd00b91d5bf24c2777bdc3914e79aab6',1,'CodeSmileEditor::Asset::Database::CacheServer']]]
+ ['openexternal_0',['OpenExternal',['../class_code_smile_editor_1_1_asset_a0666c1c07cd6e3eef35e058c2e09fdf9.html#a0666c1c07cd6e3eef35e058c2e09fdf9',1,'CodeSmileEditor.Asset.OpenExternal()'],['../class_code_smile_editor_1_1_asset_1_1_file_aac35e74243833f4963e3cf8ab1a4f845.html#aac35e74243833f4963e3cf8ab1a4f845',1,'CodeSmileEditor.Asset.File.OpenExternal([NotNull] Object asset, Int32 lineNumber=-1, Int32 columnNumber=-1)'],['../class_code_smile_editor_1_1_asset_1_1_file_a009c655c2959b1ccd6b5a94a6da261e4.html#a009c655c2959b1ccd6b5a94a6da261e4',1,'CodeSmileEditor.Asset.File.OpenExternal(Int32 instanceId, Int32 lineNumber=-1, Int32 columnNumber=-1)'],['../class_code_smile_editor_1_1_asset_1_1_file_a0f433ac6de466ab7e094565c97af8db9.html#a0f433ac6de466ab7e094565c97af8db9',1,'CodeSmileEditor.Asset.File.OpenExternal([NotNull] Path path, Int32 lineNumber=-1, Int32 columnNumber=-1)'],['../class_code_smile_editor_1_1_asset_1_1_path_abb6aabf6ef3879246a9410a4b03cff6a.html#abb6aabf6ef3879246a9410a4b03cff6a',1,'CodeSmileEditor.Asset.Path.OpenExternal()']]],
+ ['operator_20asset_1',['operator Asset',['../class_code_smile_editor_1_1_asset_ac84df38322545eff4fb610f424420751.html#ac84df38322545eff4fb610f424420751',1,'CodeSmileEditor.Asset.operator Asset(Object asset)'],['../class_code_smile_editor_1_1_asset_a23920865dfc0888bc17dc618ab30cbe0.html#a23920865dfc0888bc17dc618ab30cbe0',1,'CodeSmileEditor.Asset.operator Asset(Path path)'],['../class_code_smile_editor_1_1_asset_aa01a879ca0793e3def47211f4d8d338d.html#aa01a879ca0793e3def47211f4d8d338d',1,'CodeSmileEditor.Asset.operator Asset(String path)'],['../class_code_smile_editor_1_1_asset_ae41aa018507db1deffb10096f33e3bb6.html#ae41aa018507db1deffb10096f33e3bb6',1,'CodeSmileEditor.Asset.operator Asset(GUID guid)']]],
+ ['operator_20object_2',['operator Object',['../class_code_smile_editor_1_1_asset_ae36538faed7f7dd4bd6d2a42867bbee1.html#ae36538faed7f7dd4bd6d2a42867bbee1',1,'CodeSmileEditor::Asset']]],
+ ['operator_20path_3',['operator Path',['../class_code_smile_editor_1_1_asset_1_1_path_a8f41e9c71f0bf56b0fe80ef591334128.html#a8f41e9c71f0bf56b0fe80ef591334128',1,'CodeSmileEditor::Asset::Path']]],
+ ['operator_20string_4',['operator String',['../class_code_smile_editor_1_1_asset_1_1_path_a294e1f7dac5c8247c2f32d50653ff2f6.html#a294e1f7dac5c8247c2f32d50653ff2f6',1,'CodeSmileEditor::Asset::Path']]],
+ ['operator_21_3d_5',['operator!=',['../class_code_smile_editor_1_1_asset_1_1_path_a0a26f18bf392e944599d94a316d0dd9c.html#a0a26f18bf392e944599d94a316d0dd9c',1,'CodeSmileEditor.Asset.Path.operator!=(Path path1, Path path2)'],['../class_code_smile_editor_1_1_asset_1_1_path_a4061b79c8350f444d3691461e0f94e95.html#a4061b79c8350f444d3691461e0f94e95',1,'CodeSmileEditor.Asset.Path.operator!=(Path path1, System.Object other)'],['../class_code_smile_editor_1_1_asset_1_1_path_aeada9e1217349c548458a8b0ac2d1fca.html#aeada9e1217349c548458a8b0ac2d1fca',1,'CodeSmileEditor.Asset.Path.operator!=(System.Object other, Path path)']]],
+ ['operator_3d_3d_6',['operator==',['../class_code_smile_editor_1_1_asset_1_1_path_aba3e55bf4914578717ffd4ec9707c29f.html#aba3e55bf4914578717ffd4ec9707c29f',1,'CodeSmileEditor.Asset.Path.operator==(Path path1, Path path2)'],['../class_code_smile_editor_1_1_asset_1_1_path_ad65aa0fe0b7d3cd28b1d33eeac3548cd.html#ad65aa0fe0b7d3cd28b1d33eeac3548cd',1,'CodeSmileEditor.Asset.Path.operator==(Path path1, System.Object other)'],['../class_code_smile_editor_1_1_asset_1_1_path_a66235cf211f3a38e4149fa48fc685f67.html#a66235cf211f3a38e4149fa48fc685f67',1,'CodeSmileEditor.Asset.Path.operator==(System.Object other, Path path)']]],
+ ['owningbundle_7',['OwningBundle',['../class_code_smile_editor_1_1_asset_af8ffb2f0dfbb3585bd764056147d01b3.html#af8ffb2f0dfbb3585bd764056147d01b3',1,'CodeSmileEditor::Asset']]],
+ ['owningbundlevariant_8',['OwningBundleVariant',['../class_code_smile_editor_1_1_asset_a91f88014dec2b3bff50d35f595e6409d.html#a91f88014dec2b3bff50d35f595e6409d',1,'CodeSmileEditor::Asset']]]
];
diff --git a/Docs~/html/search/all_16.js b/Docs~/html/search/all_16.js
index 7be8855f..90ec383d 100644
--- a/Docs~/html/search/all_16.js
+++ b/Docs~/html/search/all_16.js
@@ -1,11 +1,8 @@
var searchData=
[
- ['register_0',['Register',['../class_code_smile_editor_1_1_asset_1_1_dependency_a2a075809ed33b78a5b235ce1daaadbaa.html#a2a075809ed33b78a5b235ce1daaadbaa',1,'CodeSmileEditor::Asset::Dependency']]],
- ['releasefilehandles_1',['ReleaseFileHandles',['../class_code_smile_editor_1_1_asset_1_1_database_afa24e66e009892bc1032c64f512f349d.html#afa24e66e009892bc1032c64f512f349d',1,'CodeSmileEditor::Asset::Database']]],
- ['remove_2',['Remove',['../class_code_smile_editor_1_1_asset_1_1_bundle_afda9d0ade24a5ad0d52c2f2f1a7bc86a.html#afda9d0ade24a5ad0d52c2f2f1a7bc86a',1,'CodeSmileEditor.Asset.Bundle.Remove()'],['../class_code_smile_editor_1_1_asset_1_1_sub_asset_af2517f14782bec5f449da4bc4937cf8c.html#af2517f14782bec5f449da4bc4937cf8c',1,'CodeSmileEditor.Asset.SubAsset.Remove()']]],
- ['removesubasset_3',['RemoveSubAsset',['../class_code_smile_editor_1_1_asset_ae1e3a3de65cb69b8ac09a0e10f2dbabd.html#ae1e3a3de65cb69b8ac09a0e10f2dbabd',1,'CodeSmileEditor::Asset']]],
- ['removeunused_4',['RemoveUnused',['../class_code_smile_editor_1_1_asset_1_1_bundle_a08d9f8415b580743cbd887fb5d66aba0.html#a08d9f8415b580743cbd887fb5d66aba0',1,'CodeSmileEditor::Asset::Bundle']]],
- ['rename_5',['Rename',['../class_code_smile_editor_1_1_asset_a28fe22006383d71d5b564df4a46b2675.html#a28fe22006383d71d5b564df4a46b2675',1,'CodeSmileEditor.Asset.Rename()'],['../class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396a4bfed873f01e8622033ab.html#a34bfcab396a4bfed873f01e8622033ab',1,'CodeSmileEditor.Asset.File.Rename()'],['../class_code_smile_editor_1_1_asset_1_1_path_ab20dbdb9f71c4595e668cf0cb5f5ad7c.html#ab20dbdb9f71c4595e668cf0cb5f5ad7c',1,'CodeSmileEditor.Asset.Path.Rename()']]],
- ['requirements_6',['Requirements',['../index.html#requirements',1,'']]],
- ['resetreconnecttimer_7',['ResetReconnectTimer',['../class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a69d55faf286c564a2244d84908fb8de7.html#a69d55faf286c564a2244d84908fb8de7',1,'CodeSmileEditor::Asset::Database::CacheServer']]]
+ ['package_0',['Package',['../class_code_smile_editor_1_1_asset_1_1_package.html',1,'CodeSmileEditor::Asset']]],
+ ['packages_20getting_20started_1',['CodeSmile Packages - Getting Started',['../md__p_1_2de_8codesmile_8assetdatabase_2_g_e_t_t_i_n_g_01_s_t_a_r_t_e_d.html',1,'']]],
+ ['path_2',['Path',['../class_code_smile_editor_1_1_asset_1_1_path.html',1,'Asset.Path'],['../class_code_smile_editor_1_1_asset_1_1_path_a14cdcaf6215972759787431b363f763c.html#a14cdcaf6215972759787431b363f763c',1,'CodeSmileEditor.Asset.Path.Path([NotNull] String fullOrRelativePath)'],['../class_code_smile_editor_1_1_asset_1_1_path_ab81690d1d82ddd90548e3d804b5afa29.html#ab81690d1d82ddd90548e3d804b5afa29',1,'CodeSmileEditor.Asset.Path.Path([NotNull] String folderPath, [NotNull] String fileName, [NotNull] String extension=DefaultExtension)'],['../class_code_smile_editor_1_1_asset_1_1_path_a3d0d7574b95b19be03fdfd90e6c628e2.html#a3d0d7574b95b19be03fdfd90e6c628e2',1,'CodeSmileEditor.Asset.Path.Path([NotNull] Object asset)']]],
+ ['pathsnotdeleted_3',['PathsNotDeleted',['../class_code_smile_editor_1_1_asset_1_1_file_a02854122d4449e39feb8c1dfdc8bd537.html#a02854122d4449e39feb8c1dfdc8bd537',1,'CodeSmileEditor::Asset::File']]],
+ ['port_4',['Port',['../class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_abd00b91d5bf24c2777bdc3914e79aab6.html#abd00b91d5bf24c2777bdc3914e79aab6',1,'CodeSmileEditor::Asset::Database::CacheServer']]]
];
diff --git a/Docs~/html/search/all_17.js b/Docs~/html/search/all_17.js
index f7ebc242..0332b048 100644
--- a/Docs~/html/search/all_17.js
+++ b/Docs~/html/search/all_17.js
@@ -1,19 +1,12 @@
var searchData=
[
- ['save_0',['Save',['../class_code_smile_editor_1_1_asset_a5df140c1ee51aadf7fe88ce3fb9cac33.html#a5df140c1ee51aadf7fe88ce3fb9cac33',1,'CodeSmileEditor.Asset.Save()'],['../class_code_smile_editor_1_1_asset_1_1_file_a07847a761e01e0d2fdd91c3cf6db50d2.html#a07847a761e01e0d2fdd91c3cf6db50d2',1,'CodeSmileEditor.Asset.File.Save([NotNull] Object asset)'],['../class_code_smile_editor_1_1_asset_1_1_file_a0d399890489ab279eb57b94b19f2d19c.html#a0d399890489ab279eb57b94b19f2d19c',1,'CodeSmileEditor.Asset.File.Save(GUID guid)']]],
- ['saveall_1',['SaveAll',['../class_code_smile_editor_1_1_asset_1_1_database_af4aa665fc0bbfcf9f076d5da1457b2c4.html#af4aa665fc0bbfcf9f076d5da1457b2c4',1,'CodeSmileEditor::Asset::Database']]],
- ['saveas_2',['SaveAs',['../class_code_smile_editor_1_1_asset_a1c6432dab22d51bcf01bf6ad221e7119.html#a1c6432dab22d51bcf01bf6ad221e7119',1,'CodeSmileEditor::Asset']]],
- ['saveasnew_3',['SaveAsNew',['../class_code_smile_editor_1_1_asset_af23adc642520b7f00cb047865ef50ad0.html#af23adc642520b7f00cb047865ef50ad0',1,'CodeSmileEditor::Asset']]],
- ['setall_4',['SetAll',['../class_code_smile_editor_1_1_asset_1_1_label_a82888b12b37f839fbabcb62e8fe169af.html#a82888b12b37f839fbabcb62e8fe169af',1,'CodeSmileEditor::Asset::Label']]],
- ['setdirty_5',['SetDirty',['../class_code_smile_editor_1_1_asset_ac9fdda28d3fb7be683439603387df920.html#ac9fdda28d3fb7be683439603387df920',1,'CodeSmileEditor::Asset']]],
- ['setlabels_6',['SetLabels',['../class_code_smile_editor_1_1_asset_af924398cf4176684f1c3bad2017f9ed5.html#af924398cf4176684f1c3bad2017f9ed5',1,'CodeSmileEditor::Asset']]],
- ['setmain_7',['SetMain',['../class_code_smile_editor_1_1_asset_1_1_sub_asset_ac4fb08375dcad548d850eec212582519.html#ac4fb08375dcad548d850eec212582519',1,'CodeSmileEditor.Asset.SubAsset.SetMain([NotNull] Object subAsset, [NotNull] Path path)'],['../class_code_smile_editor_1_1_asset_1_1_sub_asset_a61bfe373deb21386f749d2f947da5476.html#a61bfe373deb21386f749d2f947da5476',1,'CodeSmileEditor.Asset.SubAsset.SetMain([NotNull] Object subAsset, [NotNull] Object asset)']]],
- ['setoverride_3c_20t_20_3e_8',['SetOverride< T >',['../class_code_smile_editor_1_1_asset_1_1_importer_adc9eeee37a0d895ad4f37e583288e2e7.html#adc9eeee37a0d895ad4f37e583288e2e7',1,'CodeSmileEditor::Asset::Importer']]],
- ['snippets_9',['Example Code Snippets',['../index.html#example-code-snippets',1,'']]],
- ['status_10',['Status',['../class_code_smile_editor_1_1_asset_1_1_status.html',1,'CodeSmileEditor::Asset']]],
- ['subasset_11',['SubAsset',['../class_code_smile_editor_1_1_asset_1_1_sub_asset.html',1,'CodeSmileEditor::Asset']]],
- ['subassets_12',['SubAssets',['../class_code_smile_editor_1_1_asset_accd20b073ee732df08cf6ba0b9b8a389.html#accd20b073ee732df08cf6ba0b9b8a389',1,'CodeSmileEditor::Asset']]],
- ['subfolders_13',['SubFolders',['../class_code_smile_editor_1_1_asset_1_1_path_a0247c4e1ee282e42b31b89c70bebe85f.html#a0247c4e1ee282e42b31b89c70bebe85f',1,'CodeSmileEditor::Asset::Path']]],
- ['support_14',['What about support?',['../index.html#what-about-support',1,'']]],
- ['support_20feeback_15',['Support & Feeback',['../index.html#support--feeback',1,'']]]
+ ['refresh_0',['Where's Refresh?',['../index.html#wheres-refresh',1,'']]],
+ ['register_1',['Register',['../class_code_smile_editor_1_1_asset_1_1_dependency_a2a075809ed33b78a5b235ce1daaadbaa.html#a2a075809ed33b78a5b235ce1daaadbaa',1,'CodeSmileEditor::Asset::Dependency']]],
+ ['releasefilehandles_2',['ReleaseFileHandles',['../class_code_smile_editor_1_1_asset_1_1_database_afa24e66e009892bc1032c64f512f349d.html#afa24e66e009892bc1032c64f512f349d',1,'CodeSmileEditor::Asset::Database']]],
+ ['remove_3',['Remove',['../class_code_smile_editor_1_1_asset_1_1_bundle_afda9d0ade24a5ad0d52c2f2f1a7bc86a.html#afda9d0ade24a5ad0d52c2f2f1a7bc86a',1,'CodeSmileEditor.Asset.Bundle.Remove()'],['../class_code_smile_editor_1_1_asset_1_1_sub_asset_af2517f14782bec5f449da4bc4937cf8c.html#af2517f14782bec5f449da4bc4937cf8c',1,'CodeSmileEditor.Asset.SubAsset.Remove()']]],
+ ['removesubasset_4',['RemoveSubAsset',['../class_code_smile_editor_1_1_asset_ae1e3a3de65cb69b8ac09a0e10f2dbabd.html#ae1e3a3de65cb69b8ac09a0e10f2dbabd',1,'CodeSmileEditor::Asset']]],
+ ['removeunused_5',['RemoveUnused',['../class_code_smile_editor_1_1_asset_1_1_bundle_a08d9f8415b580743cbd887fb5d66aba0.html#a08d9f8415b580743cbd887fb5d66aba0',1,'CodeSmileEditor::Asset::Bundle']]],
+ ['rename_6',['Rename',['../class_code_smile_editor_1_1_asset_a28fe22006383d71d5b564df4a46b2675.html#a28fe22006383d71d5b564df4a46b2675',1,'CodeSmileEditor.Asset.Rename()'],['../class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396a4bfed873f01e8622033ab.html#a34bfcab396a4bfed873f01e8622033ab',1,'CodeSmileEditor.Asset.File.Rename()'],['../class_code_smile_editor_1_1_asset_1_1_path_ab20dbdb9f71c4595e668cf0cb5f5ad7c.html#ab20dbdb9f71c4595e668cf0cb5f5ad7c',1,'CodeSmileEditor.Asset.Path.Rename()']]],
+ ['requirements_7',['Requirements',['../index.html#requirements',1,'']]],
+ ['resetreconnecttimer_8',['ResetReconnectTimer',['../class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a69d55faf286c564a2244d84908fb8de7.html#a69d55faf286c564a2244d84908fb8de7',1,'CodeSmileEditor::Asset::Database::CacheServer']]]
];
diff --git a/Docs~/html/search/all_18.js b/Docs~/html/search/all_18.js
index 545efc99..7f241d59 100644
--- a/Docs~/html/search/all_18.js
+++ b/Docs~/html/search/all_18.js
@@ -1,10 +1,21 @@
var searchData=
[
- ['t_20trust_20this_0',['I don't trust this ..',['../index.html#i-dont-trust-this-',1,'']]],
- ['this_1',['This',['../index.html#i-dont-trust-this-',1,'I don't trust this ..'],['../index.html#who-needs-this',1,'Who needs this?']]],
- ['tometa_2',['ToMeta',['../class_code_smile_editor_1_1_asset_1_1_path_af4219b5ed1497e66fd495b412688ecf3.html#af4219b5ed1497e66fd495b412688ecf3',1,'CodeSmileEditor::Asset::Path']]],
- ['tostring_3',['ToString',['../class_code_smile_editor_1_1_asset_1_1_path_a012fbb0f39e57c0a44ec83dd408fcda3.html#a012fbb0f39e57c0a44ec83dd408fcda3',1,'CodeSmileEditor::Asset::Path']]],
- ['tostrings_4',['ToStrings',['../class_code_smile_editor_1_1_asset_1_1_path_a698b564cc49ed111277f35dac618252d.html#a698b564cc49ed111277f35dac618252d',1,'CodeSmileEditor::Asset::Path']]],
- ['trash_5',['Trash',['../class_code_smile_editor_1_1_asset_a9ff25b59d227ab5d89fdabafffb9876a.html#a9ff25b59d227ab5d89fdabafffb9876a',1,'CodeSmileEditor.Asset.Trash()'],['../class_code_smile_editor_1_1_asset_1_1_file_a7b0aaffab801a8597c60daff4bccb177.html#a7b0aaffab801a8597c60daff4bccb177',1,'CodeSmileEditor.Asset.File.Trash([NotNull] Path path)'],['../class_code_smile_editor_1_1_asset_1_1_file_aaecd043609a6fb930141fd2cf906b808.html#aaecd043609a6fb930141fd2cf906b808',1,'CodeSmileEditor.Asset.File.Trash([NotNull] Object asset)'],['../class_code_smile_editor_1_1_asset_1_1_file_a648bb9fbc03561bb60612a090b8317d2.html#a648bb9fbc03561bb60612a090b8317d2',1,'CodeSmileEditor.Asset.File.Trash([NotNull] IEnumerable< Path > paths)'],['../class_code_smile_editor_1_1_asset_1_1_file_a5c0a13cf46027517d371dd2d3c49fdee.html#a5c0a13cf46027517d371dd2d3c49fdee',1,'CodeSmileEditor.Asset.File.Trash([NotNull] IEnumerable< String > paths)']]],
- ['trust_20this_6',['I don't trust this ..',['../index.html#i-dont-trust-this-',1,'']]]
+ ['s_20refresh_0',['Where's Refresh?',['../index.html#wheres-refresh',1,'']]],
+ ['save_1',['Save',['../class_code_smile_editor_1_1_asset_a5df140c1ee51aadf7fe88ce3fb9cac33.html#a5df140c1ee51aadf7fe88ce3fb9cac33',1,'CodeSmileEditor.Asset.Save()'],['../class_code_smile_editor_1_1_asset_1_1_file_a07847a761e01e0d2fdd91c3cf6db50d2.html#a07847a761e01e0d2fdd91c3cf6db50d2',1,'CodeSmileEditor.Asset.File.Save([NotNull] Object asset)'],['../class_code_smile_editor_1_1_asset_1_1_file_a0d399890489ab279eb57b94b19f2d19c.html#a0d399890489ab279eb57b94b19f2d19c',1,'CodeSmileEditor.Asset.File.Save(GUID guid)']]],
+ ['saveall_2',['SaveAll',['../class_code_smile_editor_1_1_asset_1_1_database_af4aa665fc0bbfcf9f076d5da1457b2c4.html#af4aa665fc0bbfcf9f076d5da1457b2c4',1,'CodeSmileEditor::Asset::Database']]],
+ ['saveas_3',['SaveAs',['../class_code_smile_editor_1_1_asset_a1c6432dab22d51bcf01bf6ad221e7119.html#a1c6432dab22d51bcf01bf6ad221e7119',1,'CodeSmileEditor::Asset']]],
+ ['saveasnew_4',['SaveAsNew',['../class_code_smile_editor_1_1_asset_af23adc642520b7f00cb047865ef50ad0.html#af23adc642520b7f00cb047865ef50ad0',1,'CodeSmileEditor::Asset']]],
+ ['setall_5',['SetAll',['../class_code_smile_editor_1_1_asset_1_1_label_a82888b12b37f839fbabcb62e8fe169af.html#a82888b12b37f839fbabcb62e8fe169af',1,'CodeSmileEditor::Asset::Label']]],
+ ['setdirty_6',['SetDirty',['../class_code_smile_editor_1_1_asset_ac9fdda28d3fb7be683439603387df920.html#ac9fdda28d3fb7be683439603387df920',1,'CodeSmileEditor::Asset']]],
+ ['setlabels_7',['SetLabels',['../class_code_smile_editor_1_1_asset_af924398cf4176684f1c3bad2017f9ed5.html#af924398cf4176684f1c3bad2017f9ed5',1,'CodeSmileEditor::Asset']]],
+ ['setmain_8',['SetMain',['../class_code_smile_editor_1_1_asset_1_1_sub_asset_ac4fb08375dcad548d850eec212582519.html#ac4fb08375dcad548d850eec212582519',1,'CodeSmileEditor.Asset.SubAsset.SetMain([NotNull] Object subAsset, [NotNull] Path path)'],['../class_code_smile_editor_1_1_asset_1_1_sub_asset_a61bfe373deb21386f749d2f947da5476.html#a61bfe373deb21386f749d2f947da5476',1,'CodeSmileEditor.Asset.SubAsset.SetMain([NotNull] Object subAsset, [NotNull] Object asset)']]],
+ ['setoverride_3c_20t_20_3e_9',['SetOverride< T >',['../class_code_smile_editor_1_1_asset_1_1_importer_adc9eeee37a0d895ad4f37e583288e2e7.html#adc9eeee37a0d895ad4f37e583288e2e7',1,'CodeSmileEditor::Asset::Importer']]],
+ ['snippets_10',['Example Code Snippets',['../index.html#example-code-snippets',1,'']]],
+ ['started_11',['CodeSmile Packages - Getting Started',['../md__p_1_2de_8codesmile_8assetdatabase_2_g_e_t_t_i_n_g_01_s_t_a_r_t_e_d.html',1,'']]],
+ ['status_12',['Status',['../class_code_smile_editor_1_1_asset_1_1_status.html',1,'CodeSmileEditor::Asset']]],
+ ['subasset_13',['SubAsset',['../class_code_smile_editor_1_1_asset_1_1_sub_asset.html',1,'CodeSmileEditor::Asset']]],
+ ['subassets_14',['SubAssets',['../class_code_smile_editor_1_1_asset_accd20b073ee732df08cf6ba0b9b8a389.html#accd20b073ee732df08cf6ba0b9b8a389',1,'CodeSmileEditor::Asset']]],
+ ['subfolders_15',['SubFolders',['../class_code_smile_editor_1_1_asset_1_1_path_a0247c4e1ee282e42b31b89c70bebe85f.html#a0247c4e1ee282e42b31b89c70bebe85f',1,'CodeSmileEditor::Asset::Path']]],
+ ['support_16',['What about support?',['../index.html#what-about-support',1,'']]],
+ ['support_20feeback_17',['Support & Feeback',['../index.html#support--feeback',1,'']]]
];
diff --git a/Docs~/html/search/all_19.js b/Docs~/html/search/all_19.js
index 66ffd6b6..545efc99 100644
--- a/Docs~/html/search/all_19.js
+++ b/Docs~/html/search/all_19.js
@@ -1,10 +1,10 @@
var searchData=
[
- ['uniquefilepath_0',['UniqueFilePath',['../class_code_smile_editor_1_1_asset_1_1_path_a095641cd17b35305e83b4dcee0704e0b.html#a095641cd17b35305e83b4dcee0704e0b',1,'CodeSmileEditor::Asset::Path']]],
- ['uniquifyfilename_1',['UniquifyFileName',['../class_code_smile_editor_1_1_asset_1_1_path_a90bc7d03e89ae59ba4653ff9109f0fec.html#a90bc7d03e89ae59ba4653ff9109f0fec',1,'CodeSmileEditor::Asset::Path']]],
- ['unregister_2',['Unregister',['../class_code_smile_editor_1_1_asset_1_1_dependency_a23e341be7d456b3badf13a34970b25ff.html#a23e341be7d456b3badf13a34970b25ff',1,'CodeSmileEditor::Asset::Dependency']]],
- ['unused_3',['Unused',['../class_code_smile_editor_1_1_asset_1_1_bundle_a096ba8fe96373ca1cdf4edf80991a6cc.html#a096ba8fe96373ca1cdf4edf80991a6cc',1,'CodeSmileEditor::Asset::Bundle']]],
- ['upgradeallassetserializationversions_4',['UpgradeAllAssetSerializationVersions',['../class_code_smile_editor_1_1_asset_1_1_database_a3006ad7769d5ba3b477a5c153f20dd27.html#a3006ad7769d5ba3b477a5c153f20dd27',1,'CodeSmileEditor::Asset::Database']]],
- ['upgradeassetserializationversion_5',['UpgradeAssetSerializationVersion',['../class_code_smile_editor_1_1_asset_1_1_database_a0bdd680cb405e96d92b6a7af338ad27f.html#a0bdd680cb405e96d92b6a7af338ad27f',1,'CodeSmileEditor.Asset.Database.UpgradeAssetSerializationVersion([NotNull] IEnumerable< Path > paths, ForceReserializeAssetsOptions options=ForceReserializeAssetsOptions.ReserializeAssetsAndMetadata)'],['../class_code_smile_editor_1_1_asset_1_1_database_a94a77b56376fbb7f52ba2bece53f45b7.html#a94a77b56376fbb7f52ba2bece53f45b7',1,'CodeSmileEditor.Asset.Database.UpgradeAssetSerializationVersion([NotNull] IEnumerable< String > paths, ForceReserializeAssetsOptions options=ForceReserializeAssetsOptions.ReserializeAssetsAndMetadata)']]],
- ['uploadsallowed_6',['UploadsAllowed',['../class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_adace505fc9ae3b5da05e0759ac552186.html#adace505fc9ae3b5da05e0759ac552186',1,'CodeSmileEditor::Asset::Database::CacheServer']]]
+ ['t_20trust_20this_0',['I don't trust this ..',['../index.html#i-dont-trust-this-',1,'']]],
+ ['this_1',['This',['../index.html#i-dont-trust-this-',1,'I don't trust this ..'],['../index.html#who-needs-this',1,'Who needs this?']]],
+ ['tometa_2',['ToMeta',['../class_code_smile_editor_1_1_asset_1_1_path_af4219b5ed1497e66fd495b412688ecf3.html#af4219b5ed1497e66fd495b412688ecf3',1,'CodeSmileEditor::Asset::Path']]],
+ ['tostring_3',['ToString',['../class_code_smile_editor_1_1_asset_1_1_path_a012fbb0f39e57c0a44ec83dd408fcda3.html#a012fbb0f39e57c0a44ec83dd408fcda3',1,'CodeSmileEditor::Asset::Path']]],
+ ['tostrings_4',['ToStrings',['../class_code_smile_editor_1_1_asset_1_1_path_a698b564cc49ed111277f35dac618252d.html#a698b564cc49ed111277f35dac618252d',1,'CodeSmileEditor::Asset::Path']]],
+ ['trash_5',['Trash',['../class_code_smile_editor_1_1_asset_a9ff25b59d227ab5d89fdabafffb9876a.html#a9ff25b59d227ab5d89fdabafffb9876a',1,'CodeSmileEditor.Asset.Trash()'],['../class_code_smile_editor_1_1_asset_1_1_file_a7b0aaffab801a8597c60daff4bccb177.html#a7b0aaffab801a8597c60daff4bccb177',1,'CodeSmileEditor.Asset.File.Trash([NotNull] Path path)'],['../class_code_smile_editor_1_1_asset_1_1_file_aaecd043609a6fb930141fd2cf906b808.html#aaecd043609a6fb930141fd2cf906b808',1,'CodeSmileEditor.Asset.File.Trash([NotNull] Object asset)'],['../class_code_smile_editor_1_1_asset_1_1_file_a648bb9fbc03561bb60612a090b8317d2.html#a648bb9fbc03561bb60612a090b8317d2',1,'CodeSmileEditor.Asset.File.Trash([NotNull] IEnumerable< Path > paths)'],['../class_code_smile_editor_1_1_asset_1_1_file_a5c0a13cf46027517d371dd2d3c49fdee.html#a5c0a13cf46027517d371dd2d3c49fdee',1,'CodeSmileEditor.Asset.File.Trash([NotNull] IEnumerable< String > paths)']]],
+ ['trust_20this_6',['I don't trust this ..',['../index.html#i-dont-trust-this-',1,'']]]
];
diff --git a/Docs~/html/search/all_1a.js b/Docs~/html/search/all_1a.js
index 5236c4a0..66ffd6b6 100644
--- a/Docs~/html/search/all_1a.js
+++ b/Docs~/html/search/all_1a.js
@@ -1,21 +1,10 @@
var searchData=
[
- ['v1_200_200_20nov_209_202023_0',['v1.0.0 - Nov 9, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v100---nov-9-2023',1,'']]],
- ['v1_201_200_20nov_2010_202023_1',['v1.1.0 - Nov 10, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v110---nov-10-2023',1,'']]],
- ['v1_201_203_20nov_2012_202023_2',['v1.1.3 - Nov 12, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v113---nov-12-2023',1,'']]],
- ['v1_201_204_20nov_2013_202023_3',['v1.1.4 - Nov 13, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v114---nov-13-2023',1,'']]],
- ['v1_202_200_20nov_2022_202023_4',['v1.2.0 - Nov 22, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v120---nov-22-2023',1,'']]],
- ['v1_202_201_20nov_2022_202023_5',['v1.2.1 - Nov 22, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v121---nov-22-2023',1,'']]],
- ['v1_203_200_20nov_2023_202023_6',['v1.3.0 - Nov 23, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v130---nov-23-2023',1,'']]],
- ['v1_203_201_20nov_2024_202023_7',['v1.3.1 - Nov 24, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v131---nov-24-2023',1,'']]],
- ['v1_204_200_20nov_2024_202023_8',['v1.4.0 - Nov 24, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v140---nov-24-2023',1,'']]],
- ['v1_204_201_20nov_2024_202023_9',['v1.4.1 - Nov 24, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v141---nov-24-2023',1,'']]],
- ['v1_206_200_20nov_2030_202023_10',['v1.6.0 - Nov 30, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v160---nov-30-2023',1,'']]],
- ['v1_207_200_20dec_2003_202023_11',['v1.7.0 - Dec 03, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v170---dec-03-2023',1,'']]],
- ['v1_207_201_20dec_2005_202023_12',['v1.7.1 - Dec 05, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v171---dec-05-2023',1,'']]],
- ['v1_208_200_20dec_2009_202023_13',['v1.8.0 - Dec 09, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v180---dec-09-2023',1,'']]],
- ['v1_208_201_20dec_2021_202023_14',['v1.8.1 - Dec 21, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v181---dec-21-2023',1,'']]],
- ['v1_208_202_20dec_2026_202023_15',['v1.8.2 - Dec 26, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v182---dec-26-2023',1,'']]],
- ['versioncontrol_16',['VersionControl',['../class_code_smile_editor_1_1_asset_1_1_version_control.html',1,'CodeSmileEditor::Asset']]],
- ['visiblesubassets_17',['VisibleSubAssets',['../class_code_smile_editor_1_1_asset_ace611059f2ab296e1be5b51d33617000.html#ace611059f2ab296e1be5b51d33617000',1,'CodeSmileEditor::Asset']]]
+ ['uniquefilepath_0',['UniqueFilePath',['../class_code_smile_editor_1_1_asset_1_1_path_a095641cd17b35305e83b4dcee0704e0b.html#a095641cd17b35305e83b4dcee0704e0b',1,'CodeSmileEditor::Asset::Path']]],
+ ['uniquifyfilename_1',['UniquifyFileName',['../class_code_smile_editor_1_1_asset_1_1_path_a90bc7d03e89ae59ba4653ff9109f0fec.html#a90bc7d03e89ae59ba4653ff9109f0fec',1,'CodeSmileEditor::Asset::Path']]],
+ ['unregister_2',['Unregister',['../class_code_smile_editor_1_1_asset_1_1_dependency_a23e341be7d456b3badf13a34970b25ff.html#a23e341be7d456b3badf13a34970b25ff',1,'CodeSmileEditor::Asset::Dependency']]],
+ ['unused_3',['Unused',['../class_code_smile_editor_1_1_asset_1_1_bundle_a096ba8fe96373ca1cdf4edf80991a6cc.html#a096ba8fe96373ca1cdf4edf80991a6cc',1,'CodeSmileEditor::Asset::Bundle']]],
+ ['upgradeallassetserializationversions_4',['UpgradeAllAssetSerializationVersions',['../class_code_smile_editor_1_1_asset_1_1_database_a3006ad7769d5ba3b477a5c153f20dd27.html#a3006ad7769d5ba3b477a5c153f20dd27',1,'CodeSmileEditor::Asset::Database']]],
+ ['upgradeassetserializationversion_5',['UpgradeAssetSerializationVersion',['../class_code_smile_editor_1_1_asset_1_1_database_a0bdd680cb405e96d92b6a7af338ad27f.html#a0bdd680cb405e96d92b6a7af338ad27f',1,'CodeSmileEditor.Asset.Database.UpgradeAssetSerializationVersion([NotNull] IEnumerable< Path > paths, ForceReserializeAssetsOptions options=ForceReserializeAssetsOptions.ReserializeAssetsAndMetadata)'],['../class_code_smile_editor_1_1_asset_1_1_database_a94a77b56376fbb7f52ba2bece53f45b7.html#a94a77b56376fbb7f52ba2bece53f45b7',1,'CodeSmileEditor.Asset.Database.UpgradeAssetSerializationVersion([NotNull] IEnumerable< String > paths, ForceReserializeAssetsOptions options=ForceReserializeAssetsOptions.ReserializeAssetsAndMetadata)']]],
+ ['uploadsallowed_6',['UploadsAllowed',['../class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_adace505fc9ae3b5da05e0759ac552186.html#adace505fc9ae3b5da05e0759ac552186',1,'CodeSmileEditor::Asset::Database::CacheServer']]]
];
diff --git a/Docs~/html/search/all_1b.js b/Docs~/html/search/all_1b.js
index a815d036..d447591f 100644
--- a/Docs~/html/search/all_1b.js
+++ b/Docs~/html/search/all_1b.js
@@ -1,6 +1,22 @@
var searchData=
[
- ['what_20about_20support_0',['What about support?',['../index.html#what-about-support',1,'']]],
- ['who_20needs_20this_1',['Who needs this?',['../index.html#who-needs-this',1,'']]],
- ['why_2',['But .. why?',['../index.html#but--why',1,'']]]
+ ['v1_200_200_20nov_209_202023_0',['v1.0.0 - Nov 9, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v100---nov-9-2023',1,'']]],
+ ['v1_201_200_20nov_2010_202023_1',['v1.1.0 - Nov 10, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v110---nov-10-2023',1,'']]],
+ ['v1_201_203_20nov_2012_202023_2',['v1.1.3 - Nov 12, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v113---nov-12-2023',1,'']]],
+ ['v1_201_204_20nov_2013_202023_3',['v1.1.4 - Nov 13, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v114---nov-13-2023',1,'']]],
+ ['v1_202_200_20nov_2022_202023_4',['v1.2.0 - Nov 22, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v120---nov-22-2023',1,'']]],
+ ['v1_202_201_20nov_2022_202023_5',['v1.2.1 - Nov 22, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v121---nov-22-2023',1,'']]],
+ ['v1_203_200_20nov_2023_202023_6',['v1.3.0 - Nov 23, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v130---nov-23-2023',1,'']]],
+ ['v1_203_201_20nov_2024_202023_7',['v1.3.1 - Nov 24, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v131---nov-24-2023',1,'']]],
+ ['v1_204_200_20nov_2024_202023_8',['v1.4.0 - Nov 24, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v140---nov-24-2023',1,'']]],
+ ['v1_204_201_20nov_2024_202023_9',['v1.4.1 - Nov 24, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v141---nov-24-2023',1,'']]],
+ ['v1_206_200_20nov_2030_202023_10',['v1.6.0 - Nov 30, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v160---nov-30-2023',1,'']]],
+ ['v1_207_200_20dec_2003_202023_11',['v1.7.0 - Dec 03, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v170---dec-03-2023',1,'']]],
+ ['v1_207_201_20dec_2005_202023_12',['v1.7.1 - Dec 05, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v171---dec-05-2023',1,'']]],
+ ['v1_208_200_20dec_2009_202023_13',['v1.8.0 - Dec 09, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v180---dec-09-2023',1,'']]],
+ ['v1_208_201_20dec_2021_202023_14',['v1.8.1 - Dec 21, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v181---dec-21-2023',1,'']]],
+ ['v1_208_202_20dec_2026_202023_15',['v1.8.2 - Dec 26, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v182---dec-26-2023',1,'']]],
+ ['v1_208_203_20jan_2022_202024_16',['v1.8.3 - Jan 22, 2024',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v183---jan-22-2024',1,'']]],
+ ['versioncontrol_17',['VersionControl',['../class_code_smile_editor_1_1_asset_1_1_version_control.html',1,'CodeSmileEditor::Asset']]],
+ ['visiblesubassets_18',['VisibleSubAssets',['../class_code_smile_editor_1_1_asset_ace611059f2ab296e1be5b51d33617000.html#ace611059f2ab296e1be5b51d33617000',1,'CodeSmileEditor::Asset']]]
];
diff --git a/Docs~/html/search/all_1c.js b/Docs~/html/search/all_1c.js
new file mode 100644
index 00000000..85af4fec
--- /dev/null
+++ b/Docs~/html/search/all_1c.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+ ['what_20about_20support_0',['What about support?',['../index.html#what-about-support',1,'']]],
+ ['where_20s_20refresh_1',['Where's Refresh?',['../index.html#wheres-refresh',1,'']]],
+ ['who_20needs_20this_2',['Who needs this?',['../index.html#who-needs-this',1,'']]],
+ ['why_3',['But .. why?',['../index.html#but--why',1,'']]]
+];
diff --git a/Docs~/html/search/all_2.js b/Docs~/html/search/all_2.js
index ca5c9f6a..a36cfeff 100644
--- a/Docs~/html/search/all_2.js
+++ b/Docs~/html/search/all_2.js
@@ -4,9 +4,11 @@ var searchData=
['2_201_20nov_2022_202023_1',['v1.2.1 - Nov 22, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v121---nov-22-2023',1,'']]],
['2_20dec_2026_202023_2',['v1.8.2 - Dec 26, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v182---dec-26-2023',1,'']]],
['2023_3',['2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v100---nov-9-2023',1,'v1.0.0 - Nov 9, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v110---nov-10-2023',1,'v1.1.0 - Nov 10, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v113---nov-12-2023',1,'v1.1.3 - Nov 12, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v114---nov-13-2023',1,'v1.1.4 - Nov 13, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v120---nov-22-2023',1,'v1.2.0 - Nov 22, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v121---nov-22-2023',1,'v1.2.1 - Nov 22, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v130---nov-23-2023',1,'v1.3.0 - Nov 23, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v131---nov-24-2023',1,'v1.3.1 - Nov 24, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v140---nov-24-2023',1,'v1.4.0 - Nov 24, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v141---nov-24-2023',1,'v1.4.1 - Nov 24, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v160---nov-30-2023',1,'v1.6.0 - Nov 30, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v170---dec-03-2023',1,'v1.7.0 - Dec 03, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v171---dec-05-2023',1,'v1.7.1 - Dec 05, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v180---dec-09-2023',1,'v1.8.0 - Dec 09, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v181---dec-21-2023',1,'v1.8.1 - Dec 21, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v182---dec-26-2023',1,'v1.8.2 - Dec 26, 2023']]],
- ['21_202023_4',['v1.8.1 - Dec 21, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v181---dec-21-2023',1,'']]],
- ['22_202023_5',['22 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v120---nov-22-2023',1,'v1.2.0 - Nov 22, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v121---nov-22-2023',1,'v1.2.1 - Nov 22, 2023']]],
- ['23_202023_6',['v1.3.0 - Nov 23, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v130---nov-23-2023',1,'']]],
- ['24_202023_7',['24 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v131---nov-24-2023',1,'v1.3.1 - Nov 24, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v140---nov-24-2023',1,'v1.4.0 - Nov 24, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v141---nov-24-2023',1,'v1.4.1 - Nov 24, 2023']]],
- ['26_202023_8',['v1.8.2 - Dec 26, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v182---dec-26-2023',1,'']]]
+ ['2024_4',['v1.8.3 - Jan 22, 2024',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v183---jan-22-2024',1,'']]],
+ ['21_202023_5',['v1.8.1 - Dec 21, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v181---dec-21-2023',1,'']]],
+ ['22_202023_6',['22 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v120---nov-22-2023',1,'v1.2.0 - Nov 22, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v121---nov-22-2023',1,'v1.2.1 - Nov 22, 2023']]],
+ ['22_202024_7',['v1.8.3 - Jan 22, 2024',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v183---jan-22-2024',1,'']]],
+ ['23_202023_8',['v1.3.0 - Nov 23, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v130---nov-23-2023',1,'']]],
+ ['24_202023_9',['24 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v131---nov-24-2023',1,'v1.3.1 - Nov 24, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v140---nov-24-2023',1,'v1.4.0 - Nov 24, 2023'],['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v141---nov-24-2023',1,'v1.4.1 - Nov 24, 2023']]],
+ ['26_202023_10',['v1.8.2 - Dec 26, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v182---dec-26-2023',1,'']]]
];
diff --git a/Docs~/html/search/all_3.js b/Docs~/html/search/all_3.js
index af1ecd30..f64f8f7f 100644
--- a/Docs~/html/search/all_3.js
+++ b/Docs~/html/search/all_3.js
@@ -2,6 +2,7 @@ var searchData=
[
['3_200_20nov_2023_202023_0',['v1.3.0 - Nov 23, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v130---nov-23-2023',1,'']]],
['3_201_20nov_2024_202023_1',['v1.3.1 - Nov 24, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v131---nov-24-2023',1,'']]],
- ['3_20nov_2012_202023_2',['v1.1.3 - Nov 12, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v113---nov-12-2023',1,'']]],
- ['30_202023_3',['v1.6.0 - Nov 30, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v160---nov-30-2023',1,'']]]
+ ['3_20jan_2022_202024_2',['v1.8.3 - Jan 22, 2024',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v183---jan-22-2024',1,'']]],
+ ['3_20nov_2012_202023_3',['v1.1.3 - Nov 12, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v113---nov-12-2023',1,'']]],
+ ['30_202023_4',['v1.6.0 - Nov 30, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v160---nov-30-2023',1,'']]]
];
diff --git a/Docs~/html/search/all_7.js b/Docs~/html/search/all_7.js
index a010d616..cff374fb 100644
--- a/Docs~/html/search/all_7.js
+++ b/Docs~/html/search/all_7.js
@@ -2,5 +2,6 @@ var searchData=
[
['8_200_20dec_2009_202023_0',['v1.8.0 - Dec 09, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v180---dec-09-2023',1,'']]],
['8_201_20dec_2021_202023_1',['v1.8.1 - Dec 21, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v181---dec-21-2023',1,'']]],
- ['8_202_20dec_2026_202023_2',['v1.8.2 - Dec 26, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v182---dec-26-2023',1,'']]]
+ ['8_202_20dec_2026_202023_2',['v1.8.2 - Dec 26, 2023',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v182---dec-26-2023',1,'']]],
+ ['8_203_20jan_2022_202024_3',['v1.8.3 - Jan 22, 2024',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html#v183---jan-22-2024',1,'']]]
];
diff --git a/Docs~/html/search/all_b.js b/Docs~/html/search/all_b.js
index e437c472..0ddbaf9b 100644
--- a/Docs~/html/search/all_b.js
+++ b/Docs~/html/search/all_b.js
@@ -11,14 +11,15 @@ var searchData=
['clearoverride_8',['ClearOverride',['../class_code_smile_editor_1_1_asset_1_1_importer_ad3ff923faecf93e9371b98d6217be0df.html#ad3ff923faecf93e9371b98d6217be0df',1,'CodeSmileEditor::Asset::Importer']]],
['code_20snippets_9',['Example Code Snippets',['../index.html#example-code-snippets',1,'']]],
['codesmile_20assetdatabase_10',['CodeSmile AssetDatabase',['../index.html',1,'']]],
- ['codesmileeditor_11',['CodeSmileEditor',['../namespace_code_smile_editor.html',1,'']]],
- ['connected_12',['Connected',['../class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a0f5601571ed30a21f8d5b0d1dcd769cf.html#a0f5601571ed30a21f8d5b0d1dcd769cf',1,'CodeSmileEditor::Asset::Database::CacheServer']]],
- ['connectedaddress_13',['ConnectedAddress',['../class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a6d323f9b74b844dd3c1772b8002a3c38.html#a6d323f9b74b844dd3c1772b8002a3c38',1,'CodeSmileEditor::Asset::Database::CacheServer']]],
- ['contains_14',['Contains',['../class_code_smile_editor_1_1_asset_1_1_database_a9f98188e77af88fa79da70d1765765ff.html#a9f98188e77af88fa79da70d1765765ff',1,'CodeSmileEditor.Asset.Database.Contains(Object instance)'],['../class_code_smile_editor_1_1_asset_1_1_database_aebd60455d5568e8715f48750a2a15710.html#aebd60455d5568e8715f48750a2a15710',1,'CodeSmileEditor.Asset.Database.Contains(Int32 instanceId)']]],
- ['copy_15',['Copy',['../class_code_smile_editor_1_1_asset_1_1_file_a68db67f53a3a2a6002b9922d2678bc96.html#a68db67f53a3a2a6002b9922d2678bc96',1,'CodeSmileEditor::Asset::File']]],
- ['copyasnew_16',['CopyAsNew',['../class_code_smile_editor_1_1_asset_1_1_file_a73e80cb6412abff44ed9c172f7f92e36.html#a73e80cb6412abff44ed9c172f7f92e36',1,'CodeSmileEditor::Asset::File']]],
- ['create_17',['Create',['../class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222.html#a64bf135da6d9a9b8a5b59c50e839d222',1,'CodeSmileEditor.Asset.File.Create([NotNull] Byte[] contents, [NotNull] Path path)'],['../class_code_smile_editor_1_1_asset_1_1_file_a57a28b554ce2ca500c6eeba3a17852b2.html#a57a28b554ce2ca500c6eeba3a17852b2',1,'CodeSmileEditor.Asset.File.Create([NotNull] String contents, [NotNull] Path path)'],['../class_code_smile_editor_1_1_asset_1_1_file_acfdbd887acb03dfdc27a2e7628055a8a.html#acfdbd887acb03dfdc27a2e7628055a8a',1,'CodeSmileEditor.Asset.File.Create([NotNull] Object instance, [NotNull] Path path)']]],
- ['createasnew_18',['CreateAsNew',['../class_code_smile_editor_1_1_asset_1_1_file_aceef508c424cb6d38e755ddd6bde4dd7.html#aceef508c424cb6d38e755ddd6bde4dd7',1,'CodeSmileEditor.Asset.File.CreateAsNew([NotNull] Byte[] contents, [NotNull] Path path)'],['../class_code_smile_editor_1_1_asset_1_1_file_a709af33f201b4704e1919a289b93189d.html#a709af33f201b4704e1919a289b93189d',1,'CodeSmileEditor.Asset.File.CreateAsNew([NotNull] String contents, [NotNull] Path path)'],['../class_code_smile_editor_1_1_asset_1_1_file_a7fe77714391ee2e69e6b2b45fc97dff6.html#a7fe77714391ee2e69e6b2b45fc97dff6',1,'CodeSmileEditor.Asset.File.CreateAsNew([NotNull] Object instance, [NotNull] Path path)']]],
- ['createfolders_19',['CreateFolders',['../class_code_smile_editor_1_1_asset_1_1_path_a707c1a8b6f6fab6ad12485008e38ce41.html#a707c1a8b6f6fab6ad12485008e38ce41',1,'CodeSmileEditor.Asset.Path.CreateFolders()'],['../class_code_smile_editor_1_1_asset_1_1_path_aa30592adbaf54202ead85cd483107e55.html#aa30592adbaf54202ead85cd483107e55',1,'CodeSmileEditor.Asset.Path.CreateFolders([NotNull] Path path)']]],
- ['createorload_3c_20t_20_3e_20',['CreateOrLoad< T >',['../class_code_smile_editor_1_1_asset_1_1_file_a5ed30d6c3ba66e66db44c0d8490dcdfc.html#a5ed30d6c3ba66e66db44c0d8490dcdfc',1,'CodeSmileEditor::Asset::File']]]
+ ['codesmile_20packages_20getting_20started_11',['CodeSmile Packages - Getting Started',['../md__p_1_2de_8codesmile_8assetdatabase_2_g_e_t_t_i_n_g_01_s_t_a_r_t_e_d.html',1,'']]],
+ ['codesmileeditor_12',['CodeSmileEditor',['../namespace_code_smile_editor.html',1,'']]],
+ ['connected_13',['Connected',['../class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a0f5601571ed30a21f8d5b0d1dcd769cf.html#a0f5601571ed30a21f8d5b0d1dcd769cf',1,'CodeSmileEditor::Asset::Database::CacheServer']]],
+ ['connectedaddress_14',['ConnectedAddress',['../class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a6d323f9b74b844dd3c1772b8002a3c38.html#a6d323f9b74b844dd3c1772b8002a3c38',1,'CodeSmileEditor::Asset::Database::CacheServer']]],
+ ['contains_15',['Contains',['../class_code_smile_editor_1_1_asset_1_1_database_a9f98188e77af88fa79da70d1765765ff.html#a9f98188e77af88fa79da70d1765765ff',1,'CodeSmileEditor.Asset.Database.Contains(Object instance)'],['../class_code_smile_editor_1_1_asset_1_1_database_aebd60455d5568e8715f48750a2a15710.html#aebd60455d5568e8715f48750a2a15710',1,'CodeSmileEditor.Asset.Database.Contains(Int32 instanceId)']]],
+ ['copy_16',['Copy',['../class_code_smile_editor_1_1_asset_1_1_file_a68db67f53a3a2a6002b9922d2678bc96.html#a68db67f53a3a2a6002b9922d2678bc96',1,'CodeSmileEditor::Asset::File']]],
+ ['copyasnew_17',['CopyAsNew',['../class_code_smile_editor_1_1_asset_1_1_file_a73e80cb6412abff44ed9c172f7f92e36.html#a73e80cb6412abff44ed9c172f7f92e36',1,'CodeSmileEditor::Asset::File']]],
+ ['create_18',['Create',['../class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222.html#a64bf135da6d9a9b8a5b59c50e839d222',1,'CodeSmileEditor.Asset.File.Create([NotNull] Byte[] contents, [NotNull] Path path)'],['../class_code_smile_editor_1_1_asset_1_1_file_a57a28b554ce2ca500c6eeba3a17852b2.html#a57a28b554ce2ca500c6eeba3a17852b2',1,'CodeSmileEditor.Asset.File.Create([NotNull] String contents, [NotNull] Path path)'],['../class_code_smile_editor_1_1_asset_1_1_file_acfdbd887acb03dfdc27a2e7628055a8a.html#acfdbd887acb03dfdc27a2e7628055a8a',1,'CodeSmileEditor.Asset.File.Create([NotNull] Object instance, [NotNull] Path path)']]],
+ ['createasnew_19',['CreateAsNew',['../class_code_smile_editor_1_1_asset_1_1_file_aceef508c424cb6d38e755ddd6bde4dd7.html#aceef508c424cb6d38e755ddd6bde4dd7',1,'CodeSmileEditor.Asset.File.CreateAsNew([NotNull] Byte[] contents, [NotNull] Path path)'],['../class_code_smile_editor_1_1_asset_1_1_file_a709af33f201b4704e1919a289b93189d.html#a709af33f201b4704e1919a289b93189d',1,'CodeSmileEditor.Asset.File.CreateAsNew([NotNull] String contents, [NotNull] Path path)'],['../class_code_smile_editor_1_1_asset_1_1_file_a7fe77714391ee2e69e6b2b45fc97dff6.html#a7fe77714391ee2e69e6b2b45fc97dff6',1,'CodeSmileEditor.Asset.File.CreateAsNew([NotNull] Object instance, [NotNull] Path path)']]],
+ ['createfolders_20',['CreateFolders',['../class_code_smile_editor_1_1_asset_1_1_path_a707c1a8b6f6fab6ad12485008e38ce41.html#a707c1a8b6f6fab6ad12485008e38ce41',1,'CodeSmileEditor.Asset.Path.CreateFolders()'],['../class_code_smile_editor_1_1_asset_1_1_path_aa30592adbaf54202ead85cd483107e55.html#aa30592adbaf54202ead85cd483107e55',1,'CodeSmileEditor.Asset.Path.CreateFolders([NotNull] Path path)']]],
+ ['createorload_3c_20t_20_3e_21',['CreateOrLoad< T >',['../class_code_smile_editor_1_1_asset_1_1_file_a5ed30d6c3ba66e66db44c0d8490dcdfc.html#a5ed30d6c3ba66e66db44c0d8490dcdfc',1,'CodeSmileEditor::Asset::File']]]
];
diff --git a/Docs~/html/search/all_f.js b/Docs~/html/search/all_f.js
index 7984849e..54729b8f 100644
--- a/Docs~/html/search/all_f.js
+++ b/Docs~/html/search/all_f.js
@@ -25,6 +25,7 @@ var searchData=
['getscene_22',['GetScene',['../class_code_smile_editor_1_1_asset_1_1_path_ac408187e90e22a29a6c0bf20a0306532.html#ac408187e90e22a29a6c0bf20a0306532',1,'CodeSmileEditor::Asset::Path']]],
['getsubfolders_23',['GetSubFolders',['../class_code_smile_editor_1_1_asset_1_1_path_a2d28ed0af9ce1a5b78cfea13d920fbf6.html#a2d28ed0af9ce1a5b78cfea13d920fbf6',1,'CodeSmileEditor::Asset::Path']]],
['getsubtype_24',['GetSubType',['../class_code_smile_editor_1_1_asset_ab9e60595a8cc5748f38f91b3ed83aeca.html#ab9e60595a8cc5748f38f91b3ed83aeca',1,'CodeSmileEditor::Asset']]],
- ['gpl_20license_25',['GPL License',['../index.html#gpl-license',1,'']]],
- ['guid_26',['Guid',['../class_code_smile_editor_1_1_asset_1_1_path_a66a3fc7176ae79e7e9ee85df99c5ff7c.html#a66a3fc7176ae79e7e9ee85df99c5ff7c',1,'CodeSmileEditor.Asset.Path.Guid'],['../class_code_smile_editor_1_1_asset_a66a3fc7176ae79e7e9ee85df99c5ff7c.html#a66a3fc7176ae79e7e9ee85df99c5ff7c',1,'CodeSmileEditor.Asset.Guid']]]
+ ['getting_20started_25',['CodeSmile Packages - Getting Started',['../md__p_1_2de_8codesmile_8assetdatabase_2_g_e_t_t_i_n_g_01_s_t_a_r_t_e_d.html',1,'']]],
+ ['gpl_20license_26',['GPL License',['../index.html#gpl-license',1,'']]],
+ ['guid_27',['Guid',['../class_code_smile_editor_1_1_asset_1_1_path_a66a3fc7176ae79e7e9ee85df99c5ff7c.html#a66a3fc7176ae79e7e9ee85df99c5ff7c',1,'CodeSmileEditor.Asset.Path.Guid'],['../class_code_smile_editor_1_1_asset_a66a3fc7176ae79e7e9ee85df99c5ff7c.html#a66a3fc7176ae79e7e9ee85df99c5ff7c',1,'CodeSmileEditor.Asset.Guid']]]
];
diff --git a/Docs~/html/search/pages_1.js b/Docs~/html/search/pages_1.js
index 297cb55b..dd64e9fc 100644
--- a/Docs~/html/search/pages_1.js
+++ b/Docs~/html/search/pages_1.js
@@ -1,5 +1,6 @@
var searchData=
[
['change_20log_0',['Change Log',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html',1,'']]],
- ['codesmile_20assetdatabase_1',['CodeSmile AssetDatabase',['../index.html',1,'']]]
+ ['codesmile_20assetdatabase_1',['CodeSmile AssetDatabase',['../index.html',1,'']]],
+ ['codesmile_20packages_20getting_20started_2',['CodeSmile Packages - Getting Started',['../md__p_1_2de_8codesmile_8assetdatabase_2_g_e_t_t_i_n_g_01_s_t_a_r_t_e_d.html',1,'']]]
];
diff --git a/Docs~/html/search/pages_2.js b/Docs~/html/search/pages_2.js
index 4975d331..0ff7e186 100644
--- a/Docs~/html/search/pages_2.js
+++ b/Docs~/html/search/pages_2.js
@@ -1,4 +1,4 @@
var searchData=
[
- ['log_0',['Change Log',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html',1,'']]]
+ ['getting_20started_0',['CodeSmile Packages - Getting Started',['../md__p_1_2de_8codesmile_8assetdatabase_2_g_e_t_t_i_n_g_01_s_t_a_r_t_e_d.html',1,'']]]
];
diff --git a/Docs~/html/search/pages_3.js b/Docs~/html/search/pages_3.js
new file mode 100644
index 00000000..4975d331
--- /dev/null
+++ b/Docs~/html/search/pages_3.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['log_0',['Change Log',['../md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html',1,'']]]
+];
diff --git a/Docs~/html/search/pages_4.js b/Docs~/html/search/pages_4.js
new file mode 100644
index 00000000..facc1c11
--- /dev/null
+++ b/Docs~/html/search/pages_4.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['packages_20getting_20started_0',['CodeSmile Packages - Getting Started',['../md__p_1_2de_8codesmile_8assetdatabase_2_g_e_t_t_i_n_g_01_s_t_a_r_t_e_d.html',1,'']]]
+];
diff --git a/Docs~/html/search/pages_5.js b/Docs~/html/search/pages_5.js
new file mode 100644
index 00000000..6ae319c2
--- /dev/null
+++ b/Docs~/html/search/pages_5.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['started_0',['CodeSmile Packages - Getting Started',['../md__p_1_2de_8codesmile_8assetdatabase_2_g_e_t_t_i_n_g_01_s_t_a_r_t_e_d.html',1,'']]]
+];
diff --git a/Docs~/html/search/searchdata.js b/Docs~/html/search/searchdata.js
index ebe01dbd..d8218c15 100644
--- a/Docs~/html/search/searchdata.js
+++ b/Docs~/html/search/searchdata.js
@@ -1,11 +1,11 @@
var indexSectionsWithContent =
{
- 0: "012346789abcdefgilmnoprstuvw",
+ 0: "012346789abcdefgijlmnoprstuvw",
1: "abcdfilpsv",
2: "c",
3: "abcdefgilmoprstu",
4: "acdefgilmnopsuv",
- 5: "acl"
+ 5: "acglps"
};
var indexSectionNames =
diff --git a/Docs~/html/sitemap.xml b/Docs~/html/sitemap.xml
index 5c55542f..d7f0e1a3 100644
--- a/Docs~/html/sitemap.xml
+++ b/Docs~/html/sitemap.xml
@@ -5,58 +5,58 @@
xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9
http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd">
- https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8cs_source.html
+ https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_database_8cs_source.html
- https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_database_8cs_source.html
+ https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8cs_source.html
- https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_database_8_cache_server_8cs_source.html
+ https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_path_8_static_8cs_source.html
- https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_bundle_8cs_source.html
+ https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_label_8cs_source.html
- https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_static_8cs_source.html
+ https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_bundle_8cs_source.html
https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_importer_8cs_source.html
- https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_dependency_8cs_source.html
+ https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_file_8cs_source.html
- https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_label_8cs_source.html
+ https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_static_8cs_source.html
- https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_file_8cs_source.html
+ https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_database_8_cache_server_8cs_source.html
- https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_properties_8cs_source.html
+ https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_dependency_8cs_source.html
- https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_path_8_static_8cs_source.html
+ https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_package_8cs_source.html
- https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_sub_asset_8cs_source.html
+ https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_properties_8cs_source.html
https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_path_8cs_source.html
- https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_load_exception_8cs_source.html
+ https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_status_8cs_source.html
- https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_version_control_8cs_source.html
+ https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_string_extensions_8cs_source.html
- https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_status_8cs_source.html
+ https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_load_exception_8cs_source.html
- https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_package_8cs_source.html
+ https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_version_control_8cs_source.html
- https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_string_extensions_8cs_source.html
+ https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_sub_asset_8cs_source.html
https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/_asset_8_throw_if_8cs_source.html
@@ -64,6 +64,9 @@
https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.html
+
+ https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/md__p_1_2de_8codesmile_8assetdatabase_2_g_e_t_t_i_n_g_01_s_t_a_r_t_e_d.html
+
https://codesmile-0000011110110111.github.io/de.codesmile.editor.assetdatabase/html/sitemap.xml/namespace_code_smile_editor.html
diff --git a/Docs~/latex/Makefile b/Docs~/latex/Makefile
new file mode 100644
index 00000000..7f829721
--- /dev/null
+++ b/Docs~/latex/Makefile
@@ -0,0 +1,27 @@
+LATEX_CMD?=pdflatex
+MKIDX_CMD?=makeindex
+BIBTEX_CMD?=bibtex
+LATEX_COUNT?=8
+MANUAL_FILE?=refman
+
+all: $(MANUAL_FILE).pdf
+
+pdf: $(MANUAL_FILE).pdf
+
+$(MANUAL_FILE).pdf: clean $(MANUAL_FILE).tex
+ $(LATEX_CMD) $(MANUAL_FILE)
+ $(MKIDX_CMD) $(MANUAL_FILE).idx
+ $(LATEX_CMD) $(MANUAL_FILE)
+ latex_count=$(LATEX_COUNT) ; \
+ while grep -E -s 'Rerun (LaTeX|to get cross-references right|to get bibliographical references right)' $(MANUAL_FILE).log && [ $$latex_count -gt 0 ] ;\
+ do \
+ echo "Rerunning latex...." ;\
+ $(LATEX_CMD) $(MANUAL_FILE) ;\
+ latex_count=`expr $$latex_count - 1` ;\
+ done
+ $(MKIDX_CMD) $(MANUAL_FILE).idx
+ $(LATEX_CMD) $(MANUAL_FILE)
+
+
+clean:
+ rm -f *.ps *.dvi *.aux *.toc *.idx *.ind *.ilg *.log *.out *.brf *.blg *.bbl $(MANUAL_FILE).pdf
diff --git a/Docs~/latex/_asset_8_bundle_8cs_source.tex b/Docs~/latex/_asset_8_bundle_8cs_source.tex
new file mode 100644
index 00000000..4bb4b230
--- /dev/null
+++ b/Docs~/latex/_asset_8_bundle_8cs_source.tex
@@ -0,0 +1,46 @@
+\doxysubsection{Asset.\+Bundle.\+cs}
+\hypertarget{_asset_8_bundle_8cs_source}{}\label{_asset_8_bundle_8cs_source}\index{P:/de.codesmile.assetdatabase/Editor/Asset.Bundle.cs@{P:/de.codesmile.assetdatabase/Editor/Asset.Bundle.cs}}
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00001}00001\ \textcolor{comment}{//\ Copyright\ (C)\ 2021-\/2023\ Steffen\ Itterheim}}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00002}00002\ \textcolor{comment}{//\ Refer\ to\ included\ LICENSE\ file\ for\ terms\ and\ conditions.}}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00003}00003\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00004}00004\ \textcolor{keyword}{using\ }System;}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00005}00005\ \textcolor{keyword}{using\ }System.Diagnostics.CodeAnalysis;}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00006}00006\ \textcolor{keyword}{using\ }UnityEditor;}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00007}00007\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00008}\mbox{\hyperlink{namespace_code_smile_editor}{00008}}\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{namespace_code_smile_editor}{CodeSmileEditor}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00009}00009\ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00010}\mbox{\hyperlink{class_code_smile_editor_1_1_asset}{00010}}\ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{sealed}\ \textcolor{keyword}{partial\ class\ }\mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00011}00011\ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00018}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle}{00018}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keyword}{class\ }\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle}{Bundle}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00019}00019\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00028}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a7a491f4df9b8c6216b664e600b7ab0e3_a7a491f4df9b8c6216b664e600b7ab0e3}{00028}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a7a491f4df9b8c6216b664e600b7ab0e3_a7a491f4df9b8c6216b664e600b7ab0e3}{All}}\ =>\ AssetDatabase.GetAllAssetBundleNames();}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00029}00029\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00038}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a096ba8fe96373ca1cdf4edf80991a6cc_a096ba8fe96373ca1cdf4edf80991a6cc}{00038}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a096ba8fe96373ca1cdf4edf80991a6cc_a096ba8fe96373ca1cdf4edf80991a6cc}{Unused}}\ =>\ AssetDatabase.GetUnusedAssetBundleNames();}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00039}00039\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00051}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a08d9f8415b580743cbd887fb5d66aba0_a08d9f8415b580743cbd887fb5d66aba0}{00051}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a08d9f8415b580743cbd887fb5d66aba0_a08d9f8415b580743cbd887fb5d66aba0}{RemoveUnused}}()\ =>\ AssetDatabase.RemoveUnusedAssetBundleNames();}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00052}00052\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00063}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_afda9d0ade24a5ad0d52c2f2f1a7bc86a_afda9d0ade24a5ad0d52c2f2f1a7bc86a}{00063}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_afda9d0ade24a5ad0d52c2f2f1a7bc86a_afda9d0ade24a5ad0d52c2f2f1a7bc86a}{Remove}}([NotNull]\ String\ bundleName)\ =>\ AssetDatabase.RemoveAssetBundleName(bundleName,\ \textcolor{keyword}{false});}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00064}00064\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00075}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a7393007e2bfa2a7dafd3e6bf47115f53_a7393007e2bfa2a7dafd3e6bf47115f53}{00075}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a7393007e2bfa2a7dafd3e6bf47115f53_a7393007e2bfa2a7dafd3e6bf47115f53}{ForceRemove}}([NotNull]\ String\ bundleName)\ =>\ AssetDatabase.RemoveAssetBundleName(bundleName,\ \textcolor{keyword}{true});}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00076}00076\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00087}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a86ace93f7ce9f411e2994177f4cc60c2_a86ace93f7ce9f411e2994177f4cc60c2}{00087}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a86ace93f7ce9f411e2994177f4cc60c2_a86ace93f7ce9f411e2994177f4cc60c2}{GetDirectDependencies}}([NotNull]\ String\ bundleName)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00088}00088\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.GetAssetBundleDependencies(bundleName,\ \textcolor{keyword}{false});}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00089}00089\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00100}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_ae45aacadca51b6d99273ef60c47523f3_ae45aacadca51b6d99273ef60c47523f3}{00100}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_ae45aacadca51b6d99273ef60c47523f3_ae45aacadca51b6d99273ef60c47523f3}{GetAllDependencies}}([NotNull]\ String\ bundleName)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00101}00101\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.GetAssetBundleDependencies(bundleName,\ \textcolor{keyword}{true});}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00102}00102\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00113}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a92f937447af1b0ac29f167b8d5de21e0_a92f937447af1b0ac29f167b8d5de21e0}{00113}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a92f937447af1b0ac29f167b8d5de21e0_a92f937447af1b0ac29f167b8d5de21e0}{GetAllPaths}}([NotNull]\ String\ bundleName)\ =>\ AssetDatabase.GetAssetPathsFromAssetBundle(bundleName);}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00114}00114\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00126}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_aa5dd51c1b0b63b4552afdd78da4e2e81_aa5dd51c1b0b63b4552afdd78da4e2e81}{00126}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_aa5dd51c1b0b63b4552afdd78da4e2e81_aa5dd51c1b0b63b4552afdd78da4e2e81}{GetPaths}}([NotNull]\ String\ bundleName,\ [NotNull]\ String\ assetName)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00127}00127\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.GetAssetPathsFromAssetBundleAndAssetName(bundleName,\ assetName);}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00128}00128\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00142}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a17c3d7ba18536daa627d478d36aa7d95_a17c3d7ba18536daa627d478d36aa7d95}{00142}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a17c3d7ba18536daa627d478d36aa7d95_a17c3d7ba18536daa627d478d36aa7d95}{GetOwningBundle}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ AssetDatabase.GetImplicitAssetBundleName(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00143}00143\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00157}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a51999ea1e987b932993409830b86bad3_a51999ea1e987b932993409830b86bad3}{00157}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a51999ea1e987b932993409830b86bad3_a51999ea1e987b932993409830b86bad3}{GetOwningBundleVariant}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ AssetDatabase.GetImplicitAssetBundleVariantName(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00158}00158\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00159}00159\ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_bundle_8cs_source_l00160}00160\ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/_asset_8_database_8_cache_server_8cs_source.tex b/Docs~/latex/_asset_8_database_8_cache_server_8cs_source.tex
new file mode 100644
index 00000000..6b706d68
--- /dev/null
+++ b/Docs~/latex/_asset_8_database_8_cache_server_8cs_source.tex
@@ -0,0 +1,53 @@
+\doxysubsection{Asset.\+Database.\+Cache\+Server.\+cs}
+\hypertarget{_asset_8_database_8_cache_server_8cs_source}{}\label{_asset_8_database_8_cache_server_8cs_source}\index{P:/de.codesmile.assetdatabase/Editor/Asset.Database.CacheServer.cs@{P:/de.codesmile.assetdatabase/Editor/Asset.Database.CacheServer.cs}}
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00001}00001\ \textcolor{comment}{//\ Copyright\ (C)\ 2021-\/2023\ Steffen\ Itterheim}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00002}00002\ \textcolor{comment}{//\ Refer\ to\ included\ LICENSE\ file\ for\ terms\ and\ conditions.}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00003}00003\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00004}00004\ \textcolor{keyword}{using\ }System;}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00005}00005\ \textcolor{keyword}{using\ }System.Diagnostics.CodeAnalysis;}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00006}00006\ \textcolor{keyword}{using\ }UnityEditor;}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00007}00007\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00008}00008\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{namespace_code_smile_editor}{CodeSmileEditor}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00009}00009\ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00010}00010\ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{sealed}\ \textcolor{keyword}{partial\ class\ }Asset}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00011}00011\ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00012}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database}{00012}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keyword}{partial\ class\ }\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database}{Database}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00013}00013\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00017}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server}{00017}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keyword}{class\ }\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server}{CacheServer}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00018}00018\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00026}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a0d54cbeba816f7543a911249ba11c571_a0d54cbeba816f7543a911249ba11c571}{00026}}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a0d54cbeba816f7543a911249ba11c571_a0d54cbeba816f7543a911249ba11c571}{Enabled}}\ =>\ AssetDatabase.IsCacheServerEnabled();}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00027}00027\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00035}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a0f5601571ed30a21f8d5b0d1dcd769cf_a0f5601571ed30a21f8d5b0d1dcd769cf}{00035}}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a0f5601571ed30a21f8d5b0d1dcd769cf_a0f5601571ed30a21f8d5b0d1dcd769cf}{Connected}}\ =>\ AssetDatabase.IsConnectedToCacheServer();}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00036}00036\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00047}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a6d323f9b74b844dd3c1772b8002a3c38_a6d323f9b74b844dd3c1772b8002a3c38}{00047}}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a6d323f9b74b844dd3c1772b8002a3c38_a6d323f9b74b844dd3c1772b8002a3c38}{ConnectedAddress}}\ =>\ AssetDatabase.GetCurrentCacheServerIp();}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00048}00048\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00059}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a59ea01f052d1a1cdcd46b7652a31eb7b_a59ea01f052d1a1cdcd46b7652a31eb7b}{00059}}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a59ea01f052d1a1cdcd46b7652a31eb7b_a59ea01f052d1a1cdcd46b7652a31eb7b}{Address}}\ =>\ AssetDatabase.GetCacheServerAddress();}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00060}00060\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00071}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_abd00b91d5bf24c2777bdc3914e79aab6_abd00b91d5bf24c2777bdc3914e79aab6}{00071}}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ UInt16\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_abd00b91d5bf24c2777bdc3914e79aab6_abd00b91d5bf24c2777bdc3914e79aab6}{Port}}\ =>\ AssetDatabase.GetCacheServerPort();}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00072}00072\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00080}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a0d4894d317ef790042b43eb297af0cb5_a0d4894d317ef790042b43eb297af0cb5}{00080}}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a0d4894d317ef790042b43eb297af0cb5_a0d4894d317ef790042b43eb297af0cb5}{NamespacePrefix}}\ =>\ AssetDatabase.GetCacheServerNamespacePrefix();}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00081}00081\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00089}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_adace505fc9ae3b5da05e0759ac552186_adace505fc9ae3b5da05e0759ac552186}{00089}}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_adace505fc9ae3b5da05e0759ac552186_adace505fc9ae3b5da05e0759ac552186}{UploadsAllowed}}\ =>\ AssetDatabase.GetCacheServerEnableUpload();}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00090}00090\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00098}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a27fb9a87ab3f56a3f3bb83347e27cdc5_a27fb9a87ab3f56a3f3bb83347e27cdc5}{00098}}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a27fb9a87ab3f56a3f3bb83347e27cdc5_a27fb9a87ab3f56a3f3bb83347e27cdc5}{DownloadsAllowed}}\ =>\ AssetDatabase.GetCacheServerEnableDownload();}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00099}00099\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00107}00107\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ not\ testable}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00108}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_ab7e00eb132c285b4e57d86fcb20a0eab_ab7e00eb132c285b4e57d86fcb20a0eab}{00108}}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_ab7e00eb132c285b4e57d86fcb20a0eab_ab7e00eb132c285b4e57d86fcb20a0eab}{ApplySettings}}()\ =>\ AssetDatabase.RefreshSettings();}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00109}00109\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00121}00121\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ not\ testable,\ requires\ external\ service}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00122}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a2ceac4f87b79ab2f6e11c52ee1bfc237_a2ceac4f87b79ab2f6e11c52ee1bfc237}{00122}}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a2ceac4f87b79ab2f6e11c52ee1bfc237_a2ceac4f87b79ab2f6e11c52ee1bfc237}{CanConnect}}([NotNull]\ String\ ipAddress,\ UInt16\ port)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00123}00123\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.CanConnectToCacheServer(ipAddress,\ port);}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00124}00124\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00133}00133\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ not\ testable}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00134}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a69d55faf286c564a2244d84908fb8de7_a69d55faf286c564a2244d84908fb8de7}{00134}}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a69d55faf286c564a2244d84908fb8de7_a69d55faf286c564a2244d84908fb8de7}{ResetReconnectTimer}}()\ =>\ AssetDatabase.ResetCacheServerReconnectTimer();}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00135}00135\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00143}00143\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ not\ testable,\ requires\ external\ service}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00144}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a03214d814cc25d687cf283544c0b7478_a03214d814cc25d687cf283544c0b7478}{00144}}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a03214d814cc25d687cf283544c0b7478_a03214d814cc25d687cf283544c0b7478}{Disconnect}}()\ =>\ AssetDatabase.CloseCacheServerConnection();}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00145}00145\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00146}00146\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00147}00147\ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8_cache_server_8cs_source_l00148}00148\ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/_asset_8_database_8cs_source.tex b/Docs~/latex/_asset_8_database_8cs_source.tex
new file mode 100644
index 00000000..5096ea60
--- /dev/null
+++ b/Docs~/latex/_asset_8_database_8cs_source.tex
@@ -0,0 +1,73 @@
+\doxysubsection{Asset.\+Database.\+cs}
+\hypertarget{_asset_8_database_8cs_source}{}\label{_asset_8_database_8cs_source}\index{P:/de.codesmile.assetdatabase/Editor/Asset.Database.cs@{P:/de.codesmile.assetdatabase/Editor/Asset.Database.cs}}
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00001}00001\ \textcolor{comment}{//\ Copyright\ (C)\ 2021-\/2023\ Steffen\ Itterheim}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00002}00002\ \textcolor{comment}{//\ Refer\ to\ included\ LICENSE\ file\ for\ terms\ and\ conditions.}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00003}00003\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00004}00004\ \textcolor{keyword}{using\ }System;}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00005}00005\ \textcolor{keyword}{using\ }System.Collections.Generic;}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00006}00006\ \textcolor{keyword}{using\ }System.Diagnostics.CodeAnalysis;}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00007}00007\ \textcolor{keyword}{using\ }UnityEditor;}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00008}00008\ \textcolor{keyword}{using\ }Object\ =\ UnityEngine.Object;}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00009}00009\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00010}00010\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{namespace_code_smile_editor}{CodeSmileEditor}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00011}00011\ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00012}00012\ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{sealed}\ \textcolor{keyword}{partial\ class\ }Asset}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00013}00013\ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00018}00018\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keyword}{partial\ class\ }Database}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00019}00019\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00032}00032\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00033}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a46c1f775624b940edb495a5c2b08583c_a46c1f775624b940edb495a5c2b08583c}{00033}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Int32\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a46c1f775624b940edb495a5c2b08583c_a46c1f775624b940edb495a5c2b08583c}{DesiredWorkerCount}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00034}00034\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00035}00035\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{get}\ =>\ AssetDatabase.DesiredWorkerCount;}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00036}00036\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{set}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00037}00037\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00038}00038\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.DesiredWorkerCount\ =\ value;}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00039}00039\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.ForceToDesiredWorkerCount();}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00040}00040\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00041}00041\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00042}00042\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00053}00053\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00054}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a6190225c177bf52f95b2cdbcb99ccc2a_a6190225c177bf52f95b2cdbcb99ccc2a}{00054}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a6190225c177bf52f95b2cdbcb99ccc2a_a6190225c177bf52f95b2cdbcb99ccc2a}{DirectoryMonitoring}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00055}00055\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00056}00056\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{get}\ =>\ AssetDatabase.IsDirectoryMonitoringEnabled();}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00057}00057\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{set}\ =>\ EditorPrefs.SetBool(\textcolor{stringliteral}{"{}DirectoryMonitoring"{}},\ value);}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00058}00058\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00059}00059\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00068}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a9f98188e77af88fa79da70d1765765ff_a9f98188e77af88fa79da70d1765765ff}{00068}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a9f98188e77af88fa79da70d1765765ff_a9f98188e77af88fa79da70d1765765ff}{Contains}}(Object\ instance)\ =>\ instance\ !=\ \textcolor{keyword}{null}\ ?\ AssetDatabase.Contains(instance)\ :\ \textcolor{keyword}{false};}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00069}00069\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00078}00078\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00079}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_aebd60455d5568e8715f48750a2a15710_aebd60455d5568e8715f48750a2a15710}{00079}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_aebd60455d5568e8715f48750a2a15710_aebd60455d5568e8715f48750a2a15710}{Contains}}(Int32\ instanceId)\ =>\ AssetDatabase.Contains(instanceId);}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00080}00080\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00095}00095\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ untestable}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00096}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a4f2683df249d67e506e9f2d9d9fe2b5a_a4f2683df249d67e506e9f2d9d9fe2b5a}{00096}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a4f2683df249d67e506e9f2d9d9fe2b5a_a4f2683df249d67e506e9f2d9d9fe2b5a}{AllowAutoRefresh}}()\ =>\ AssetDatabase.AllowAutoRefresh();}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00097}00097\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00109}00109\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ untestable}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00110}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_adb25c0a19eaf845815b001486373db4c_adb25c0a19eaf845815b001486373db4c}{00110}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_adb25c0a19eaf845815b001486373db4c_adb25c0a19eaf845815b001486373db4c}{DisallowAutoRefresh}}()\ =>\ AssetDatabase.DisallowAutoRefresh();}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00111}00111\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00123}00123\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ untestable}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00124}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_afa24e66e009892bc1032c64f512f349d_afa24e66e009892bc1032c64f512f349d}{00124}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_afa24e66e009892bc1032c64f512f349d_afa24e66e009892bc1032c64f512f349d}{ReleaseFileHandles}}()\ =>\ AssetDatabase.ReleaseCachedFileHandles();}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00125}00125\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00142}00142\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ untestable}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00143}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a3006ad7769d5ba3b477a5c153f20dd27_a3006ad7769d5ba3b477a5c153f20dd27}{00143}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a3006ad7769d5ba3b477a5c153f20dd27_a3006ad7769d5ba3b477a5c153f20dd27}{UpgradeAllAssetSerializationVersions}}()\ =>\ AssetDatabase.ForceReserializeAssets();}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00144}00144\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00163}00163\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ untestable}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00164}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a0bdd680cb405e96d92b6a7af338ad27f_a0bdd680cb405e96d92b6a7af338ad27f}{00164}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a0bdd680cb405e96d92b6a7af338ad27f_a0bdd680cb405e96d92b6a7af338ad27f}{UpgradeAssetSerializationVersion}}([NotNull]\ IEnumerable\ paths,}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00165}00165\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ForceReserializeAssetsOptions\ options\ =\ ForceReserializeAssetsOptions.ReserializeAssetsAndMetadata)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00166}00166\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a0bdd680cb405e96d92b6a7af338ad27f_a0bdd680cb405e96d92b6a7af338ad27f}{UpgradeAssetSerializationVersion}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a698b564cc49ed111277f35dac618252d_a698b564cc49ed111277f35dac618252d}{ToStrings}}(paths),\ options);}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00167}00167\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00186}00186\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ untestable}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00187}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a94a77b56376fbb7f52ba2bece53f45b7_a94a77b56376fbb7f52ba2bece53f45b7}{00187}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a94a77b56376fbb7f52ba2bece53f45b7_a94a77b56376fbb7f52ba2bece53f45b7}{UpgradeAssetSerializationVersion}}([NotNull]\ IEnumerable\ paths,}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00188}00188\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ForceReserializeAssetsOptions\ options\ =\ ForceReserializeAssetsOptions.ReserializeAssetsAndMetadata)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00189}00189\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.ForceReserializeAssets(paths,\ options);}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00190}00190\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00206}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_af4aa665fc0bbfcf9f076d5da1457b2c4_af4aa665fc0bbfcf9f076d5da1457b2c4}{00206}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_af4aa665fc0bbfcf9f076d5da1457b2c4_af4aa665fc0bbfcf9f076d5da1457b2c4}{SaveAll}}()\ =>\ AssetDatabase.SaveAssets();}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00207}00207\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00260}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a7c993d64861e62fbdcff3700690b2318_a7c993d64861e62fbdcff3700690b2318}{00260}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a7c993d64861e62fbdcff3700690b2318_a7c993d64861e62fbdcff3700690b2318}{ImportAll}}(ImportAssetOptions\ options\ =\ ImportAssetOptions.Default)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00261}00261\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.Refresh(options);}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00262}00262\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00263}00263\ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_database_8cs_source_l00264}00264\ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/_asset_8_dependency_8cs_source.tex b/Docs~/latex/_asset_8_dependency_8cs_source.tex
new file mode 100644
index 00000000..617f14dc
--- /dev/null
+++ b/Docs~/latex/_asset_8_dependency_8cs_source.tex
@@ -0,0 +1,40 @@
+\doxysubsection{Asset.\+Dependency.\+cs}
+\hypertarget{_asset_8_dependency_8cs_source}{}\label{_asset_8_dependency_8cs_source}\index{P:/de.codesmile.assetdatabase/Editor/Asset.Dependency.cs@{P:/de.codesmile.assetdatabase/Editor/Asset.Dependency.cs}}
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00001}00001\ \textcolor{comment}{//\ Copyright\ (C)\ 2021-\/2023\ Steffen\ Itterheim}}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00002}00002\ \textcolor{comment}{//\ Refer\ to\ included\ LICENSE\ file\ for\ terms\ and\ conditions.}}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00003}00003\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00004}00004\ \textcolor{keyword}{using\ }System;}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00005}00005\ \textcolor{keyword}{using\ }System.Diagnostics.CodeAnalysis;}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00006}00006\ \textcolor{keyword}{using\ }UnityEditor;}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00007}00007\ \textcolor{keyword}{using\ }UnityEngine;}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00008}00008\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00009}00009\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{namespace_code_smile_editor}{CodeSmileEditor}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00010}00010\ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00011}00011\ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{sealed}\ \textcolor{keyword}{partial\ class\ }Asset}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00012}00012\ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00016}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency}{00016}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keyword}{class\ }\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency}{Dependency}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00017}00017\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00029}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a3fd889e4426d5d12102ee08e7b291a0f_a3fd889e4426d5d12102ee08e7b291a0f}{00029}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a3fd889e4426d5d12102ee08e7b291a0f_a3fd889e4426d5d12102ee08e7b291a0f}{GetDirect}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ AssetDatabase.GetDependencies(path,\ \textcolor{keyword}{false});}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00030}00030\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00042}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_af349cee54bc70ac16cf55f3ab204b1f9_af349cee54bc70ac16cf55f3ab204b1f9}{00042}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_af349cee54bc70ac16cf55f3ab204b1f9_af349cee54bc70ac16cf55f3ab204b1f9}{GetDirect}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}[]\ paths)\ =>\ AssetDatabase.GetDependencies(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a698b564cc49ed111277f35dac618252d_a698b564cc49ed111277f35dac618252d}{ToStrings}}(paths),\ \textcolor{keyword}{false});}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00043}00043\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00055}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a5281d751f8d22a0cf586636bb925cbca_a5281d751f8d22a0cf586636bb925cbca}{00055}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a5281d751f8d22a0cf586636bb925cbca_a5281d751f8d22a0cf586636bb925cbca}{GetAll}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ AssetDatabase.GetDependencies(path,\ \textcolor{keyword}{true});}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00056}00056\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00068}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a3158b26e37b698fdeb8cc380d475ee1c_a3158b26e37b698fdeb8cc380d475ee1c}{00068}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a3158b26e37b698fdeb8cc380d475ee1c_a3158b26e37b698fdeb8cc380d475ee1c}{GetAll}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}[]\ paths)\ =>\ AssetDatabase.GetDependencies(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a698b564cc49ed111277f35dac618252d_a698b564cc49ed111277f35dac618252d}{ToStrings}}(paths),\ \textcolor{keyword}{true});}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00069}00069\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00083}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a2a075809ed33b78a5b235ce1daaadbaa_a2a075809ed33b78a5b235ce1daaadbaa}{00083}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a2a075809ed33b78a5b235ce1daaadbaa_a2a075809ed33b78a5b235ce1daaadbaa}{Register}}([NotNull]\ String\ globalDependencyName,\ Hash128\ dependencyHash)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00084}00084\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.RegisterCustomDependency(globalDependencyName,\ dependencyHash);}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00085}00085\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00096}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a23e341be7d456b3badf13a34970b25ff_a23e341be7d456b3badf13a34970b25ff}{00096}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ UInt32\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a23e341be7d456b3badf13a34970b25ff_a23e341be7d456b3badf13a34970b25ff}{Unregister}}([NotNull]\ String\ globalDependencyNamePrefix)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00097}00097\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.UnregisterCustomDependencyPrefixFilter(globalDependencyNamePrefix);}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00098}00098\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00110}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a3e3f046819f75953102e43ecf130e92a_a3e3f046819f75953102e43ecf130e92a}{00110}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Hash128\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a3e3f046819f75953102e43ecf130e92a_a3e3f046819f75953102e43ecf130e92a}{GetHash}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ AssetDatabase.GetAssetDependencyHash(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00111}00111\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00123}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a773bdd015f687ec5ea5ab318448ee246_a773bdd015f687ec5ea5ab318448ee246}{00123}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Hash128\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a773bdd015f687ec5ea5ab318448ee246_a773bdd015f687ec5ea5ab318448ee246}{GetHash}}(GUID\ guid)\ =>\ AssetDatabase.GetAssetDependencyHash(guid);}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00124}00124\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00125}00125\ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_dependency_8cs_source_l00126}00126\ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/_asset_8_file_8cs_source.tex b/Docs~/latex/_asset_8_file_8cs_source.tex
new file mode 100644
index 00000000..e5c15941
--- /dev/null
+++ b/Docs~/latex/_asset_8_file_8cs_source.tex
@@ -0,0 +1,314 @@
+\doxysubsection{Asset.\+File.\+cs}
+\hypertarget{_asset_8_file_8cs_source}{}\label{_asset_8_file_8cs_source}\index{P:/de.codesmile.assetdatabase/Editor/Asset.File.cs@{P:/de.codesmile.assetdatabase/Editor/Asset.File.cs}}
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00001}00001\ \textcolor{comment}{//\ Copyright\ (C)\ 2021-\/2023\ Steffen\ Itterheim}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00002}00002\ \textcolor{comment}{//\ Refer\ to\ included\ LICENSE\ file\ for\ terms\ and\ conditions.}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00003}00003\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00004}00004\ \textcolor{keyword}{using\ }System;}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00005}00005\ \textcolor{keyword}{using\ }System.Collections.Generic;}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00006}00006\ \textcolor{keyword}{using\ }System.Diagnostics.CodeAnalysis;}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00007}00007\ \textcolor{keyword}{using\ }System.Linq;}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00008}00008\ \textcolor{keyword}{using\ }System.Text;}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00009}00009\ \textcolor{keyword}{using\ }UnityEditor;}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00010}00010\ \textcolor{keyword}{using\ }Object\ =\ UnityEngine.Object;}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00011}00011\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00012}00012\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{namespace_code_smile_editor}{CodeSmileEditor}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00013}00013\ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00014}00014\ \ \ \ \ \textcolor{comment}{//\ This\ file\ contains\ asset\ 'file\ operations'\ related\ method\ groups,\ in\ that\ order:}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00015}00015\ \ \ \ \ \textcolor{comment}{//\ Create}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00016}00016\ \ \ \ \ \textcolor{comment}{//\ Save}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00017}00017\ \ \ \ \ \textcolor{comment}{//\ Import}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00018}00018\ \ \ \ \ \textcolor{comment}{//\ Load}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00019}00019\ \ \ \ \ \textcolor{comment}{//\ Find}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00020}00020\ \ \ \ \ \textcolor{comment}{//\ Copy}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00021}00021\ \ \ \ \ \textcolor{comment}{//\ Move}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00022}00022\ \ \ \ \ \textcolor{comment}{//\ Rename}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00023}00023\ \ \ \ \ \textcolor{comment}{//\ Open}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00024}00024\ \ \ \ \ \textcolor{comment}{//\ Delete}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00025}00025\ \ \ \ \ \textcolor{comment}{//\ Trash}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00026}00026\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00027}00027\ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{sealed}\ \textcolor{keyword}{partial\ class\ }Asset}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00028}00028\ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00032}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file}{00032}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keyword}{class\ }\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file}{File}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00033}00033\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00034}00034\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ \textcolor{keyword}{static}\ List\ s\_PathsNotDeleted\ =\ \textcolor{keyword}{new}();}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00035}00035\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00045}00045\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ trivial}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00046}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a02854122d4449e39feb8c1dfdc8bd537_a02854122d4449e39feb8c1dfdc8bd537}{00046}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ IList\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a02854122d4449e39feb8c1dfdc8bd537_a02854122d4449e39feb8c1dfdc8bd537}{PathsNotDeleted}}\ =>\ s\_PathsNotDeleted;}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00047}00047\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00075}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_ab0082c2158f7de6376b26a75827bd7a2_ab0082c2158f7de6376b26a75827bd7a2}{00075}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_ab0082c2158f7de6376b26a75827bd7a2_ab0082c2158f7de6376b26a75827bd7a2}{BatchEditing}}([NotNull]\ Action\ massAssetFileEditAction)}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00076}00076\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00077}00077\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{try}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00078}00078\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00079}00079\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ StartAssetEditing();}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00080}00080\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00081}00081\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ massAssetFileEditAction?.Invoke();}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00082}00082\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00083}00083\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{finally}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00084}00084\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00085}00085\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ StopAssetEditing();}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00086}00086\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00087}00087\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00088}00088\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00101}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222}{00101}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Object\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222}{Create}}([NotNull]\ Byte[]\ contents,\ [NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00102}00102\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ CreateInternal(contents,\ path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00103}00103\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00117}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_aceef508c424cb6d38e755ddd6bde4dd7_aceef508c424cb6d38e755ddd6bde4dd7}{00117}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Object\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_aceef508c424cb6d38e755ddd6bde4dd7_aceef508c424cb6d38e755ddd6bde4dd7}{CreateAsNew}}([NotNull]\ Byte[]\ contents,\ [NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00118}00118\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ CreateInternal(contents,\ path.UniqueFilePath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00119}00119\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00132}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a57a28b554ce2ca500c6eeba3a17852b2_a57a28b554ce2ca500c6eeba3a17852b2}{00132}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Object\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a57a28b554ce2ca500c6eeba3a17852b2_a57a28b554ce2ca500c6eeba3a17852b2}{Create}}([NotNull]\ String\ contents,\ [NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00133}00133\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ CreateInternal(contents,\ path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00134}00134\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00148}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a709af33f201b4704e1919a289b93189d_a709af33f201b4704e1919a289b93189d}{00148}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Object\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a709af33f201b4704e1919a289b93189d_a709af33f201b4704e1919a289b93189d}{CreateAsNew}}([NotNull]\ String\ contents,\ [NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00149}00149\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ CreateInternal(contents,\ path.UniqueFilePath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00150}00150\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00165}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_acfdbd887acb03dfdc27a2e7628055a8a_acfdbd887acb03dfdc27a2e7628055a8a}{00165}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Object\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_acfdbd887acb03dfdc27a2e7628055a8a_acfdbd887acb03dfdc27a2e7628055a8a}{Create}}([NotNull]\ Object\ instance,\ [NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00166}00166\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ CreateInternal(instance,\ path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00167}00167\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00182}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a7fe77714391ee2e69e6b2b45fc97dff6_a7fe77714391ee2e69e6b2b45fc97dff6}{00182}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Object\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a7fe77714391ee2e69e6b2b45fc97dff6_a7fe77714391ee2e69e6b2b45fc97dff6}{CreateAsNew}}([NotNull]\ Object\ instance,\ [NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00183}00183\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ CreateInternal(instance,\ path.UniqueFilePath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00184}00184\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00203}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a5ed30d6c3ba66e66db44c0d8490dcdfc_a5ed30d6c3ba66e66db44c0d8490dcdfc}{00203}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ T\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a5ed30d6c3ba66e66db44c0d8490dcdfc_a5ed30d6c3ba66e66db44c0d8490dcdfc}{CreateOrLoad}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path,\ [NotNull]\ Func\ getInstance)\ where\ T\ :\ Object\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00204}00204\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ LoadOrCreate(path,\ getInstance);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00205}00205\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00218}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a07847a761e01e0d2fdd91c3cf6db50d2_a07847a761e01e0d2fdd91c3cf6db50d2}{00218}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a07847a761e01e0d2fdd91c3cf6db50d2_a07847a761e01e0d2fdd91c3cf6db50d2}{Save}}([NotNull]\ Object\ asset)\ =>\ SaveInternal(asset);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00219}00219\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00238}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_af8f67d95622e7afce379eaa04c82eaf6_af8f67d95622e7afce379eaa04c82eaf6}{00238}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_af8f67d95622e7afce379eaa04c82eaf6_af8f67d95622e7afce379eaa04c82eaf6}{ForceSave}}([NotNull]\ Object\ asset)\ =>\ SaveInternal(asset,\ \textcolor{keyword}{true});}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00239}00239\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00249}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a0d399890489ab279eb57b94b19f2d19c_a0d399890489ab279eb57b94b19f2d19c}{00249}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a0d399890489ab279eb57b94b19f2d19c_a0d399890489ab279eb57b94b19f2d19c}{Save}}(GUID\ guid)}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00250}00250\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00251}00251\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.NotAnAssetGuid(guid);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00252}00252\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00253}00253\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.SaveAssetIfDirty(guid);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00254}00254\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00255}00255\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00275}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_ae11a13bfe131ec8b20a5a5667e75ec97_ae11a13bfe131ec8b20a5a5667e75ec97}{00275}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_ae11a13bfe131ec8b20a5a5667e75ec97_ae11a13bfe131ec8b20a5a5667e75ec97}{Import}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path,\ ImportAssetOptions\ options\ =\ ImportAssetOptions.Default)}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00276}00276\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00277}00277\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(path,\ nameof(path));}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00278}00278\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.DoesNotExistInFileSystem(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00279}00279\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00280}00280\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.ImportAsset(path,\ options);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00281}00281\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00282}00282\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00307}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a4dc6aff1e32f03b26ec0e310fb4233c0_a4dc6aff1e32f03b26ec0e310fb4233c0}{00307}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ T\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a4dc6aff1e32f03b26ec0e310fb4233c0_a4dc6aff1e32f03b26ec0e310fb4233c0}{ImportAndLoad}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path,}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00308}00308\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ImportAssetOptions\ options\ =\ ImportAssetOptions.Default)}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00309}00309\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ where\ T\ :\ Object\ =>\ Load(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00310}00310\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00324}00324\ \ \ \ \ \ \ \ \ \ \ \ \ public\ static\ \textcolor{keywordtype}{void}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00325}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_ae3c1d18d1f26557851b440b5704d2188_ae3c1d18d1f26557851b440b5704d2188}{00325}}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Import([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}[]\ paths,\ ImportAssetOptions\ options\ =\ ImportAssetOptions.Default)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00326}00326\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Import(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.ToStrings(paths),\ options);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00327}00327\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00341}00341\ \ \ \ \ \ \ \ \ \ \ \ \ public\ static\ \textcolor{keywordtype}{void}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00342}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a39290f9fb99198f7df818bc5cafb0e1a_a39290f9fb99198f7df818bc5cafb0e1a}{00342}}\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Import([NotNull]\ String[]\ paths,\ ImportAssetOptions\ options\ =\ ImportAssetOptions.Default)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00343}00343\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_ab0082c2158f7de6376b26a75827bd7a2_ab0082c2158f7de6376b26a75827bd7a2}{BatchEditing}}(}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00344}00344\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ()\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00345}00345\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00346}00346\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{foreach}\ (var\ path\ \textcolor{keywordflow}{in}\ paths)}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00347}00347\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.ImportAsset(path,\ options);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00348}00348\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \});}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00349}00349\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00371}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a4f89e334c74903942522d0e0066d28b7_a4f89e334c74903942522d0e0066d28b7}{00371}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ T\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a5d27be243c1f698cba116b768e3f65ec_a5d27be243c1f698cba116b768e3f65ec}{Load}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ where\ T\ :\ Object}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00372}00372\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00373}00373\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(path,\ nameof(path));}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00374}00374\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00375}00375\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ImportIfNotImported(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00376}00376\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.LoadAssetAtPath(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00377}00377\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00378}00378\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00393}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a8e86208ec0d709c8259baacdb5e70281_a8e86208ec0d709c8259baacdb5e70281}{00393}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ T\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a8e86208ec0d709c8259baacdb5e70281_a8e86208ec0d709c8259baacdb5e70281}{LoadOrCreate}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path,\ [NotNull]\ Func\ getInstance)\ where\ T\ :\ Object}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00394}00394\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00395}00395\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (path.ExistsInFileSystem\ ==\ \textcolor{keyword}{false})}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00396}00396\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222}{Create}}(getInstance.Invoke(),\ path)\ as\ T;}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00397}00397\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00398}00398\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a4dc6aff1e32f03b26ec0e310fb4233c0_a4dc6aff1e32f03b26ec0e310fb4233c0}{ImportAndLoad}}(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00399}00399\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00400}00400\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00416}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a8cc280e1c5ddde8511c2af5541365b3f_a8cc280e1c5ddde8511c2af5541365b3f}{00416}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ T\ LoadMain([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ where\ T\ :\ Object}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00417}00417\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00418}00418\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(path,\ nameof(path));}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00419}00419\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.DoesNotExistInFileSystem(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00420}00420\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00421}00421\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ImportIfNotImported(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00422}00422\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.LoadMainAssetAtPath(path)\ as\ T;}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00423}00423\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00424}00424\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00440}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a9702d12ef27f2d0dfd1f8201fbb37088_a9702d12ef27f2d0dfd1f8201fbb37088}{00440}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ T\ LoadMain(GUID\ guid)\ where\ T\ :\ Object}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00441}00441\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00442}00442\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.NotAnAssetGuid(guid);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00443}00443\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00444}00444\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ path\ =\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Get}}(guid);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00445}00445\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ImportIfNotImported(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00446}00446\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ LoadMain(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00447}00447\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00448}00448\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00464}00464\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00465}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a1de889c18256fc25aa6f53507d448050_a1de889c18256fc25aa6f53507d448050}{00465}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ AssetDatabaseLoadOperation\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a1de889c18256fc25aa6f53507d448050_a1de889c18256fc25aa6f53507d448050}{LoadAsync}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path,\ Int64\ localFileId)}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00466}00466\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00467}00467\ \textcolor{preprocessor}{\#if\ UNITY\_2022\_2\_OR\_NEWER}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00468}00468\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.LoadObjectAsync(path,\ localFileId);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00469}00469\ \textcolor{preprocessor}{\#else}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00470}00470\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ \textcolor{keyword}{new}\ NotSupportedException(\textcolor{stringliteral}{"{}AssetDatabase.LoadObjectAsync\ not\ available\ in\ this\ editor\ version"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00471}00471\ \textcolor{preprocessor}{\#endif}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00472}00472\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00473}00473\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00493}00493\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00494}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a9824149809d0caf6b7853241fe518852_a9824149809d0caf6b7853241fe518852}{00494}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a9824149809d0caf6b7853241fe518852_a9824149809d0caf6b7853241fe518852}{Find}}([NotNull]\ String\ filter,\ String[]\ searchInFolders\ =\ \textcolor{keyword}{null})\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00495}00495\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ searchInFolders\ ==\ \textcolor{keyword}{null}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00496}00496\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ?\ AssetDatabase.FindAssets(filter)}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00497}00497\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ :\ AssetDatabase.FindAssets(filter,\ searchInFolders);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00498}00498\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00519}00519\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00520}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a6a20df93ae9409f4216c6f98cf334c30_a6a20df93ae9409f4216c6f98cf334c30}{00520}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ GUID[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a6a20df93ae9409f4216c6f98cf334c30_a6a20df93ae9409f4216c6f98cf334c30}{FindGuids}}([NotNull]\ String\ filter,\ String[]\ searchInFolders\ =\ \textcolor{keyword}{null})\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00521}00521\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a9824149809d0caf6b7853241fe518852_a9824149809d0caf6b7853241fe518852}{Find}}(filter,\ searchInFolders).Select(guid\ =>\ \textcolor{keyword}{new}\ GUID(guid)).ToArray();}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00522}00522\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00543}00543\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00544}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_aeb2b5afda3ab0df2521ff86e9d7c80b8_aeb2b5afda3ab0df2521ff86e9d7c80b8}{00544}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_aeb2b5afda3ab0df2521ff86e9d7c80b8_aeb2b5afda3ab0df2521ff86e9d7c80b8}{FindPaths}}([NotNull]\ String\ filter,\ String[]\ searchInFolders\ =\ \textcolor{keyword}{null})\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00545}00545\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a9824149809d0caf6b7853241fe518852_a9824149809d0caf6b7853241fe518852}{Find}}(filter,\ searchInFolders).Select(guid\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Get}}(\textcolor{keyword}{new}\ GUID(guid))).ToArray();}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00546}00546\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00564}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a68db67f53a3a2a6002b9922d2678bc96_a68db67f53a3a2a6002b9922d2678bc96}{00564}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a68db67f53a3a2a6002b9922d2678bc96_a68db67f53a3a2a6002b9922d2678bc96}{Copy}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ sourcePath,\ [NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ destinationPath)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00565}00565\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ CopyInternal(sourcePath,\ destinationPath,\ \textcolor{keyword}{true});}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00566}00566\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00585}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a73e80cb6412abff44ed9c172f7f92e36_a73e80cb6412abff44ed9c172f7f92e36}{00585}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a73e80cb6412abff44ed9c172f7f92e36_a73e80cb6412abff44ed9c172f7f92e36}{CopyAsNew}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ sourcePath,\ [NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ destinationPath)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00586}00586\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ CopyInternal(sourcePath,\ destinationPath.UniqueFilePath,\ \textcolor{keyword}{false});}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00587}00587\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00607}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a2bdf010d46d8dd5ea6420e4bdc75c9aa_a2bdf010d46d8dd5ea6420e4bdc75c9aa}{00607}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a2bdf010d46d8dd5ea6420e4bdc75c9aa_a2bdf010d46d8dd5ea6420e4bdc75c9aa}{CanMove}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ sourcePath,\ [NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ destinationPath)}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00608}00608\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00609}00609\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (sourcePath\ ==\ \textcolor{keyword}{null}\ ||\ destinationPath\ ==\ \textcolor{keyword}{null})}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00610}00610\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00611}00611\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00612}00612\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ Succeeded(AssetDatabase.ValidateMoveAsset(sourcePath,\ destinationPath));}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00613}00613\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00614}00614\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00633}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9dbc6b65d0efec125ca6ec75_a996c0cfd9dbc6b65d0efec125ca6ec75}{00633}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9dbc6b65d0efec125ca6ec75_a996c0cfd9dbc6b65d0efec125ca6ec75}{Move}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ sourcePath,\ [NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ destinationPath)}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00634}00634\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00635}00635\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (sourcePath\ ==\ \textcolor{keyword}{null}\ ||\ destinationPath\ ==\ \textcolor{keyword}{null})}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00636}00636\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00637}00637\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00638}00638\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ destinationPath.CreateFolders();}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00639}00639\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ Succeeded(AssetDatabase.MoveAsset(sourcePath,\ destinationPath));}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00640}00640\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00641}00641\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00659}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396a4bfed873f01e8622033ab_a34bfcab396a4bfed873f01e8622033ab}{00659}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396a4bfed873f01e8622033ab_a34bfcab396a4bfed873f01e8622033ab}{Rename}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path,\ String\ newFileName)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00660}00660\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ String.IsNullOrEmpty(newFileName)\ ==\ \textcolor{keyword}{false}\ \&\&\ Succeeded(AssetDatabase.RenameAsset(path,\ newFileName));}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00661}00661\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00673}00673\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00674}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a3d74dc290eb0f6815b0f1eac29c6c2e6_a3d74dc290eb0f6815b0f1eac29c6c2e6}{00674}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a3d74dc290eb0f6815b0f1eac29c6c2e6_a3d74dc290eb0f6815b0f1eac29c6c2e6}{CanOpenInEditor}}([NotNull]\ Object\ instance)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00675}00675\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ac1b2c03d50954442d3462c97a5dc8882_ac1b2c03d50954442d3462c97a5dc8882}{CanOpenInEditor}}(instance.GetInstanceID());}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00676}00676\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00688}00688\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00689}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_aabdb1dcc073e89416e72eccf3839ad1d_aabdb1dcc073e89416e72eccf3839ad1d}{00689}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_aabdb1dcc073e89416e72eccf3839ad1d_aabdb1dcc073e89416e72eccf3839ad1d}{CanOpenInEditor}}(Int32\ instanceId)\ =>\ AssetDatabase.CanOpenAssetInEditor(instanceId);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00690}00690\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00704}00704\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ cannot\ be\ tested}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00705}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_aac35e74243833f4963e3cf8ab1a4f845_aac35e74243833f4963e3cf8ab1a4f845}{00705}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_aac35e74243833f4963e3cf8ab1a4f845_aac35e74243833f4963e3cf8ab1a4f845}{OpenExternal}}([NotNull]\ Object\ asset,\ Int32\ lineNumber\ =\ -\/1,\ Int32\ columnNumber\ =\ -\/1)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00706}00706\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.OpenAsset(asset,\ lineNumber,\ columnNumber);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00707}00707\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00721}00721\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ cannot\ be\ tested}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00722}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a009c655c2959b1ccd6b5a94a6da261e4_a009c655c2959b1ccd6b5a94a6da261e4}{00722}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a009c655c2959b1ccd6b5a94a6da261e4_a009c655c2959b1ccd6b5a94a6da261e4}{OpenExternal}}(Int32\ instanceId,\ Int32\ lineNumber\ =\ -\/1,\ Int32\ columnNumber\ =\ -\/1)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00723}00723\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.OpenAsset(instanceId,\ lineNumber,\ columnNumber);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00724}00724\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00738}00738\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ cannot\ be\ tested}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00739}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a0f433ac6de466ab7e094565c97af8db9_a0f433ac6de466ab7e094565c97af8db9}{00739}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a0f433ac6de466ab7e094565c97af8db9_a0f433ac6de466ab7e094565c97af8db9}{OpenExternal}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path,\ Int32\ lineNumber\ =\ -\/1,\ Int32\ columnNumber\ =\ -\/1)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00740}00740\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_aac35e74243833f4963e3cf8ab1a4f845_aac35e74243833f4963e3cf8ab1a4f845}{OpenExternal}}(Load(path),\ lineNumber,\ columnNumber);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00741}00741\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00753}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a5a01eb8f2adc1117b9df394acbe3c529_a5a01eb8f2adc1117b9df394acbe3c529}{00753}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a5a01eb8f2adc1117b9df394acbe3c529_a5a01eb8f2adc1117b9df394acbe3c529}{Delete}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00754}00754\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ path.Exists\ prevents\ Unity\ from\ spitting\ out\ an\ unnecessary\ warning\ message}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00755}00755\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ path\ !=\ \textcolor{keyword}{null}\ \&\&\ path.Exists\ \&\&\ AssetDatabase.DeleteAsset(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00756}00756\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00768}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_ac644ddb8e561a93366765ea0017771ec_ac644ddb8e561a93366765ea0017771ec}{00768}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_ac644ddb8e561a93366765ea0017771ec_ac644ddb8e561a93366765ea0017771ec}{Delete}}([NotNull]\ Object\ asset)\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_ac644ddb8e561a93366765ea0017771ec_ac644ddb8e561a93366765ea0017771ec}{Delete}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Get}}(asset));}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00769}00769\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00783}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a0ee72382871919c7584e6962088c34ba_a0ee72382871919c7584e6962088c34ba}{00783}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a0ee72382871919c7584e6962088c34ba_a0ee72382871919c7584e6962088c34ba}{Delete}}([NotNull]\ IEnumerable\ paths)\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a0ee72382871919c7584e6962088c34ba_a0ee72382871919c7584e6962088c34ba}{Delete}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a698b564cc49ed111277f35dac618252d_a698b564cc49ed111277f35dac618252d}{ToStrings}}(paths));}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00784}00784\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00798}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a397f277ed8b22e8ee60662f7b8b3ef06_a397f277ed8b22e8ee60662f7b8b3ef06}{00798}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a397f277ed8b22e8ee60662f7b8b3ef06_a397f277ed8b22e8ee60662f7b8b3ef06}{Delete}}([NotNull]\ IEnumerable\ paths)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00799}00799\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.DeleteAssets(paths.ToArray(),\ s\_PathsNotDeleted\ =\ \textcolor{keyword}{new}\ List());}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00800}00800\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00816}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a7b0aaffab801a8597c60daff4bccb177_a7b0aaffab801a8597c60daff4bccb177}{00816}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a7b0aaffab801a8597c60daff4bccb177_a7b0aaffab801a8597c60daff4bccb177}{Trash}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ path\ !=\ \textcolor{keyword}{null}\ \&\&\ AssetDatabase.MoveAssetToTrash(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00817}00817\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00833}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_aaecd043609a6fb930141fd2cf906b808_aaecd043609a6fb930141fd2cf906b808}{00833}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_aaecd043609a6fb930141fd2cf906b808_aaecd043609a6fb930141fd2cf906b808}{Trash}}([NotNull]\ Object\ asset)\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_aaecd043609a6fb930141fd2cf906b808_aaecd043609a6fb930141fd2cf906b808}{Trash}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Get}}(asset));}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00834}00834\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00849}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a648bb9fbc03561bb60612a090b8317d2_a648bb9fbc03561bb60612a090b8317d2}{00849}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a648bb9fbc03561bb60612a090b8317d2_a648bb9fbc03561bb60612a090b8317d2}{Trash}}([NotNull]\ IEnumerable\ paths)\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a648bb9fbc03561bb60612a090b8317d2_a648bb9fbc03561bb60612a090b8317d2}{Trash}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a698b564cc49ed111277f35dac618252d_a698b564cc49ed111277f35dac618252d}{ToStrings}}(paths));}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00850}00850\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00865}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a5c0a13cf46027517d371dd2d3c49fdee_a5c0a13cf46027517d371dd2d3c49fdee}{00865}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a5c0a13cf46027517d371dd2d3c49fdee_a5c0a13cf46027517d371dd2d3c49fdee}{Trash}}([NotNull]\ IEnumerable\ paths)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00866}00866\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.MoveAssetsToTrash(paths.ToArray(),\ s\_PathsNotDeleted\ =\ \textcolor{keyword}{new}\ List());}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00867}00867\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00868}00868\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ Internal\ on\ purpose:\ use\ Asset.File.BatchEditing(Action)\ instead}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00869}00869\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ untestable}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00870}00870\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{internal}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ StartAssetEditing()\ =>\ AssetDatabase.StartAssetEditing();}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00871}00871\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00872}00872\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ Internal\ on\ purpose:\ use\ Asset.File.BatchEditing(Action)\ instead}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00873}00873\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ untestable}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00874}00874\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{internal}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ StopAssetEditing()\ =>\ AssetDatabase.StopAssetEditing();}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00875}00875\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00876}00876\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{internal}\ \textcolor{keyword}{static}\ Object\ CreateInternal([NotNull]\ Byte[]\ bytes,\ [NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00877}00877\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00878}00878\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(bytes,\ nameof(bytes));}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00879}00879\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(path,\ nameof(path));}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00880}00880\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00881}00881\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ path.CreateFolders();}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00882}00882\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ System.IO.File.WriteAllBytes(path,\ bytes);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00883}00883\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ ImportAndLoad(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00884}00884\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00885}00885\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00886}00886\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{internal}\ \textcolor{keyword}{static}\ Object\ CreateInternal([NotNull]\ String\ contents,\ [NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00887}00887\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00888}00888\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(contents,\ nameof(contents));}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00889}00889\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(path,\ nameof(path));}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00890}00890\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00891}00891\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ path.CreateFolders();}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00892}00892\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ System.IO.File.WriteAllText(path,\ contents,\ Encoding.UTF8);\ \textcolor{comment}{//\ string\ assets\ ought\ to\ be\ UTF8}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00893}00893\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ ImportAndLoad(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00894}00894\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00895}00895\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00896}00896\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{internal}\ \textcolor{keyword}{static}\ Object\ CreateInternal([NotNull]\ Object\ instance,\ [NotNull]\ Path\ path)}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00897}00897\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00898}00898\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(instance,\ nameof(instance));}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00899}00899\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(path,\ nameof(path));}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00900}00900\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00901}00901\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ path.CreateFolders();}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00902}00902\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.CreateAsset(instance,\ path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00903}00903\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ instance;}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00904}00904\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00905}00905\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00906}00906\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{internal}\ \textcolor{keyword}{static}\ Boolean\ CopyInternal([NotNull]\ Path\ sourcePath,\ [NotNull]\ Path\ destinationPath,}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00907}00907\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Boolean\ overwriteExisting)}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00908}00908\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00909}00909\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(sourcePath,\ nameof(sourcePath));}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00910}00910\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(destinationPath,\ nameof(destinationPath));}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00911}00911\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.AssetPathNotInDatabase(sourcePath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00912}00912\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.SourceAndDestPathAreEqual(sourcePath,\ destinationPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00913}00913\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00914}00914\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ destinationPath.CreateFolders();}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00915}00915\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00916}00916\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ success\ =\ AssetDatabase.CopyAsset(sourcePath,\ destinationPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00917}00917\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ SetLastErrorMessage(success\ ?\ String.Empty\ :\ \$\textcolor{stringliteral}{"{}failed\ to\ copy\ \{sourcePath\}\ to\ \{destinationPath\}"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00918}00918\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ success;}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00919}00919\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00920}00920\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00921}00921\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ SaveInternal([NotNull]\ Object\ asset,\ Boolean\ forceSave\ =\ \textcolor{keyword}{false})}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00922}00922\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00923}00923\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(asset,\ nameof(asset));}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00924}00924\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.NotInDatabase(asset);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00925}00925\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00926}00926\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (forceSave)}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00927}00927\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ EditorUtility.SetDirty(asset);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00928}00928\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00929}00929\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.SaveAssetIfDirty(asset);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00930}00930\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00931}00931\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00932}00932\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ ImportIfNotImported([NotNull]\ Path\ path,}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00933}00933\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ImportAssetOptions\ options\ =\ ImportAssetOptions.Default)}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00934}00934\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00935}00935\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ Not\ in\ database\ but\ on\ disk?\ =>\ Import\ path}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00936}00936\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ Cannot\ determine\ if\ existing\ file\ has\ been\ updated\ though.}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00937}00937\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (path.Exists\ ==\ \textcolor{keyword}{false}\ \&\&\ path.ExistsInFileSystem)}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00938}00938\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_ae11a13bfe131ec8b20a5a5667e75ec97_ae11a13bfe131ec8b20a5a5667e75ec97}{Import}}(path,\ options);}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00939}00939\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00940}00940\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00941}00941\ \textcolor{preprocessor}{\#if\ !UNITY\_2022\_2\_OR\_NEWER\ }\textcolor{comment}{//\ dummy\ for\ LoadAsync\ in\ earlier\ versions}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00942}00942\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{class\ }AssetDatabaseLoadOperation\ \{\}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00943}00943\ \textcolor{preprocessor}{\#endif}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00944}00944\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00945}00945\ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_file_8cs_source_l00946}00946\ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/_asset_8_importer_8cs_source.tex b/Docs~/latex/_asset_8_importer_8cs_source.tex
new file mode 100644
index 00000000..47eca8ef
--- /dev/null
+++ b/Docs~/latex/_asset_8_importer_8cs_source.tex
@@ -0,0 +1,117 @@
+\doxysubsection{Asset.\+Importer.\+cs}
+\hypertarget{_asset_8_importer_8cs_source}{}\label{_asset_8_importer_8cs_source}\index{P:/de.codesmile.assetdatabase/Editor/Asset.Importer.cs@{P:/de.codesmile.assetdatabase/Editor/Asset.Importer.cs}}
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00001}00001\ \textcolor{comment}{//\ Copyright\ (C)\ 2021-\/2023\ Steffen\ Itterheim}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00002}00002\ \textcolor{comment}{//\ Refer\ to\ included\ LICENSE\ file\ for\ terms\ and\ conditions.}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00003}00003\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00004}00004\ \textcolor{keyword}{using\ }System;}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00005}00005\ \textcolor{keyword}{using\ }System.Diagnostics.CodeAnalysis;}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00006}00006\ \textcolor{keyword}{using\ }System.Reflection;}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00007}00007\ \textcolor{keyword}{using\ }UnityEditor;}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00008}00008\ \textcolor{keyword}{using\ }Object\ =\ UnityEngine.Object;}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00009}00009\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00010}00010\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{namespace_code_smile_editor}{CodeSmileEditor}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00011}00011\ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00012}00012\ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{sealed}\ \textcolor{keyword}{partial\ class\ }Asset}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00013}00013\ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00017}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer}{00017}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keyword}{class\ }\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer}{Importer}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00018}00018\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00031}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a357d4eb1c100686c1c135b3b1eb2aa70_a357d4eb1c100686c1c135b3b1eb2aa70}{00031}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Type\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a357d4eb1c100686c1c135b3b1eb2aa70_a357d4eb1c100686c1c135b3b1eb2aa70}{GetActive}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00032}00032\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00033}00033\ \textcolor{preprocessor}{\#if\ UNITY\_2022\_2\_OR\_NEWER}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00034}00034\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.GetImporterType(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00035}00035\ \textcolor{preprocessor}{\#else}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00036}00036\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ UnityEngine.Debug.LogWarning(\textcolor{stringliteral}{"{}GetImporterType\ not\ available\ in\ this\ Unity\ version\ -\/\ returning\ null"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00037}00037\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{null};}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00038}00038\ \textcolor{preprocessor}{\#endif}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00039}00039\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00040}00040\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00053}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a728bec89f163cf82119c37e0c73dfc0d_a728bec89f163cf82119c37e0c73dfc0d}{00053}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Type\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a728bec89f163cf82119c37e0c73dfc0d_a728bec89f163cf82119c37e0c73dfc0d}{GetActive}}(GUID\ guid)}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00054}00054\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00055}00055\ \textcolor{preprocessor}{\#if\ UNITY\_2022\_2\_OR\_NEWER}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00056}00056\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.GetImporterType(guid);}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00057}00057\ \textcolor{preprocessor}{\#else}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00058}00058\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ UnityEngine.Debug.LogWarning(\textcolor{stringliteral}{"{}GetImporterType\ not\ available\ in\ this\ Unity\ version\ -\/\ returning\ null"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00059}00059\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{null};}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00060}00060\ \textcolor{preprocessor}{\#endif}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00061}00061\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00062}00062\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00075}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a5f0b2c4e6ed271387f7c924aa88e7d86_a5f0b2c4e6ed271387f7c924aa88e7d86}{00075}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Type\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a5f0b2c4e6ed271387f7c924aa88e7d86_a5f0b2c4e6ed271387f7c924aa88e7d86}{GetActive}}([NotNull]\ Object\ asset)\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a5f0b2c4e6ed271387f7c924aa88e7d86_a5f0b2c4e6ed271387f7c924aa88e7d86}{GetActive}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a856bd8735a17035cea08243c66e0eee8_a856bd8735a17035cea08243c66e0eee8}{GetGuid}}(asset));}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00076}00076\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00089}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_ad8916acf5622365b4fc9bfdbd7d64ba2_ad8916acf5622365b4fc9bfdbd7d64ba2}{00089}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Type[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_ad8916acf5622365b4fc9bfdbd7d64ba2_ad8916acf5622365b4fc9bfdbd7d64ba2}{GetActive}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}[]\ paths)\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_ad8916acf5622365b4fc9bfdbd7d64ba2_ad8916acf5622365b4fc9bfdbd7d64ba2}{GetActive}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a698b564cc49ed111277f35dac618252d_a698b564cc49ed111277f35dac618252d}{ToStrings}}(paths));}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00090}00090\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00103}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_ac0bb98eb8d643f17f30448075c4e91bb_ac0bb98eb8d643f17f30448075c4e91bb}{00103}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Type[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_ac0bb98eb8d643f17f30448075c4e91bb_ac0bb98eb8d643f17f30448075c4e91bb}{GetActive}}([NotNull]\ String[]\ paths)}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00104}00104\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00105}00105\ \textcolor{preprocessor}{\#if\ UNITY\_2022\_2\_OR\_NEWER}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00106}00106\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.GetImporterTypes(paths);}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00107}00107\ \textcolor{preprocessor}{\#else}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00108}00108\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ \textcolor{keyword}{new}\ NotSupportedException(\textcolor{stringliteral}{"{}GetImporterTypes\ not\ available\ in\ this\ Unity\ version"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00109}00109\ \textcolor{preprocessor}{\#endif}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00110}00110\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00111}00111\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00124}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a80fd54a4f3cc505e2e9a42b4ca924656_a80fd54a4f3cc505e2e9a42b4ca924656}{00124}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Type[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a80fd54a4f3cc505e2e9a42b4ca924656_a80fd54a4f3cc505e2e9a42b4ca924656}{GetActive}}(ReadOnlySpan\ guids)}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00125}00125\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00126}00126\ \textcolor{preprocessor}{\#if\ UNITY\_2022\_2\_OR\_NEWER}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00127}00127\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.GetImporterTypes(guids);}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00128}00128\ \textcolor{preprocessor}{\#else}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00129}00129\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ UnityEngine.Debug.LogWarning(\textcolor{stringliteral}{"{}GetImporterTypes\ not\ available\ in\ this\ Unity\ version\ -\/\ returning\ empty\ array"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00130}00130\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{new}\ Type[0];}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00131}00131\ \textcolor{preprocessor}{\#endif}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00132}00132\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00133}00133\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00143}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_aee616cbd3cbe9e7b8256aed74fe20254_aee616cbd3cbe9e7b8256aed74fe20254}{00143}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Type[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_aee616cbd3cbe9e7b8256aed74fe20254_aee616cbd3cbe9e7b8256aed74fe20254}{GetAvailable}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00144}00144\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00145}00145\ \textcolor{preprocessor}{\#if\ UNITY\_2022\_1\_OR\_NEWER}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00146}00146\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.GetAvailableImporters(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00147}00147\ \textcolor{preprocessor}{\#else}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00148}00148\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.GetAvailableImporterTypes(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00149}00149\ \textcolor{preprocessor}{\#endif}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00150}00150\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00151}00151\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00161}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_aa6e8b1b03c3aa82d03d45c885bf795b9_aa6e8b1b03c3aa82d03d45c885bf795b9}{00161}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Type[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_aa6e8b1b03c3aa82d03d45c885bf795b9_aa6e8b1b03c3aa82d03d45c885bf795b9}{GetAvailable}}([NotNull]\ Object\ asset)\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_aa6e8b1b03c3aa82d03d45c885bf795b9_aa6e8b1b03c3aa82d03d45c885bf795b9}{GetAvailable}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Get}}(asset));}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00162}00162\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00173}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a19ff837d74e7666438a7938cf0f7126d_a19ff837d74e7666438a7938cf0f7126d}{00173}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Type\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a19ff837d74e7666438a7938cf0f7126d_a19ff837d74e7666438a7938cf0f7126d}{GetDefault}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00174}00174\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00175}00175\ \textcolor{preprocessor}{\#if\ UNITY\_2022\_1\_OR\_NEWER}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00176}00176\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.GetDefaultImporter(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00177}00177\ \textcolor{preprocessor}{\#else}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00178}00178\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ \textcolor{keyword}{new}\ NotSupportedException(\textcolor{stringliteral}{"{}GetDefaultImporter\ is\ not\ available\ in\ this\ Unity\ version"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00179}00179\ \textcolor{preprocessor}{\#endif}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00180}00180\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00181}00181\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00192}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a88db6e9742be35bd23b068b28850b0d9_a88db6e9742be35bd23b068b28850b0d9}{00192}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Type\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a88db6e9742be35bd23b068b28850b0d9_a88db6e9742be35bd23b068b28850b0d9}{GetDefault}}([NotNull]\ Object\ asset)\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a88db6e9742be35bd23b068b28850b0d9_a88db6e9742be35bd23b068b28850b0d9}{GetDefault}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Get}}(asset));}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00193}00193\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00205}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_ad5caea48acd697af0a7787ebcb643512_ad5caea48acd697af0a7787ebcb643512}{00205}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Type\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_ad5caea48acd697af0a7787ebcb643512_ad5caea48acd697af0a7787ebcb643512}{GetOverride}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ AssetDatabase.GetImporterOverride(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00206}00206\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00218}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a9662ee14bf9f8ee4a25ceb8017c00c63_a9662ee14bf9f8ee4a25ceb8017c00c63}{00218}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Type\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a9662ee14bf9f8ee4a25ceb8017c00c63_a9662ee14bf9f8ee4a25ceb8017c00c63}{GetOverride}}([NotNull]\ Object\ asset)\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a9662ee14bf9f8ee4a25ceb8017c00c63_a9662ee14bf9f8ee4a25ceb8017c00c63}{GetOverride}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Get}}(asset));}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00219}00219\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00232}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_adc9eeee37a0d895ad4f37e583288e2e7_adc9eeee37a0d895ad4f37e583288e2e7}{00232}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_adc9eeee37a0d895ad4f37e583288e2e7_adc9eeee37a0d895ad4f37e583288e2e7}{SetOverride}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00233}00233\ \textcolor{preprocessor}{\#if\ UNITY\_2022\_1\_OR\_NEWER}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00234}00234\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ where\ T\ :\ AssetImporter}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00235}00235\ \textcolor{preprocessor}{\#else}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00236}00236\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ where\ T\ :\ UnityEditor.AssetImporters.ScriptedImporter}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00237}00237\ \textcolor{preprocessor}{\#endif}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00238}00238\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00239}00239\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.SetImporterOverride(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00240}00240\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00241}00241\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00254}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_ad3ff923faecf93e9371b98d6217be0df_ad3ff923faecf93e9371b98d6217be0df}{00254}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_ad3ff923faecf93e9371b98d6217be0df_ad3ff923faecf93e9371b98d6217be0df}{ClearOverride}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ AssetDatabase.ClearImporterOverride(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00255}00255\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00270}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_abf047cc58c6e0a054b319bb93fb9ae5d_abf047cc58c6e0a054b319bb93fb9ae5d}{00270}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_abf047cc58c6e0a054b319bb93fb9ae5d_abf047cc58c6e0a054b319bb93fb9ae5d}{IsOverridden}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a19ff837d74e7666438a7938cf0f7126d_a19ff837d74e7666438a7938cf0f7126d}{GetDefault}}(path)\ !=\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_ad5caea48acd697af0a7787ebcb643512_ad5caea48acd697af0a7787ebcb643512}{GetOverride}}(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00271}00271\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00284}00284\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ cannot\ be\ tested}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00285}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a1a9a83a1db886ceb61eecb0933d27f30_a1a9a83a1db886ceb61eecb0933d27f30}{00285}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a1a9a83a1db886ceb61eecb0933d27f30_a1a9a83a1db886ceb61eecb0933d27f30}{ApplySettings}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ AssetDatabase.WriteImportSettingsIfDirty(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00286}00286\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00287}00287\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{internal}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ SetImporterOverride([NotNull]\ Type\ value,\ [NotNull]\ String\ assetPath)}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00288}00288\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00289}00289\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ methodName\ =\ \textcolor{stringliteral}{"{}SetImporterOverride"{}};}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00290}00290\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ bindingFlags\ =\ BindingFlags.Public\ |\ BindingFlags.Static;}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00291}00291\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ methodInfo\ =\ typeof(AssetDatabase).GetMethod(methodName,\ bindingFlags).MakeGenericMethod(value);}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00292}00292\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ methodInfo.Invoke(\textcolor{keyword}{null},\ \textcolor{keyword}{new}\ System.Object[]\ \{\ assetPath\ \});}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00293}00293\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00294}00294\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00295}00295\ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_importer_8cs_source_l00296}00296\ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/_asset_8_label_8cs_source.tex b/Docs~/latex/_asset_8_label_8cs_source.tex
new file mode 100644
index 00000000..63ba9970
--- /dev/null
+++ b/Docs~/latex/_asset_8_label_8cs_source.tex
@@ -0,0 +1,51 @@
+\doxysubsection{Asset.\+Label.\+cs}
+\hypertarget{_asset_8_label_8cs_source}{}\label{_asset_8_label_8cs_source}\index{P:/de.codesmile.assetdatabase/Editor/Asset.Label.cs@{P:/de.codesmile.assetdatabase/Editor/Asset.Label.cs}}
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00001}00001\ \textcolor{comment}{//\ Copyright\ (C)\ 2021-\/2023\ Steffen\ Itterheim}}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00002}00002\ \textcolor{comment}{//\ Refer\ to\ included\ LICENSE\ file\ for\ terms\ and\ conditions.}}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00003}00003\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00004}00004\ \textcolor{keyword}{using\ }System;}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00005}00005\ \textcolor{keyword}{using\ }System.Collections.Generic;}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00006}00006\ \textcolor{keyword}{using\ }System.Diagnostics.CodeAnalysis;}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00007}00007\ \textcolor{keyword}{using\ }UnityEditor;}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00008}00008\ \textcolor{keyword}{using\ }Object\ =\ UnityEngine.Object;}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00009}00009\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00010}00010\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{namespace_code_smile_editor}{CodeSmileEditor}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00011}00011\ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00012}00012\ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{sealed}\ \textcolor{keyword}{partial\ class\ }Asset}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00013}00013\ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00017}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label}{00017}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keyword}{class\ }\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label}{Label}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00018}00018\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00029}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf}{00029}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf}{GetAll}}([NotNull]\ Object\ asset)\ =>\ AssetDatabase.GetLabels(asset);}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00030}00030\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00041}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_af12ef27390e185dc2458c579d4a20aa2_af12ef27390e185dc2458c579d4a20aa2}{00041}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_af12ef27390e185dc2458c579d4a20aa2_af12ef27390e185dc2458c579d4a20aa2}{GetAll}}(GUID\ guid)\ =>\ AssetDatabase.GetLabels(guid);}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00042}00042\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00053}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_a82888b12b37f839fbabcb62e8fe169af_a82888b12b37f839fbabcb62e8fe169af}{00053}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_a82888b12b37f839fbabcb62e8fe169af_a82888b12b37f839fbabcb62e8fe169af}{SetAll}}([NotNull]\ Object\ asset,\ [NotNull]\ String[]\ labels)}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00054}00054\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00055}00055\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(asset,\ nameof(asset));}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00056}00056\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(labels,\ nameof(labels));}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00057}00057\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00058}00058\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.SetLabels(asset,\ labels);}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00059}00059\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00060}00060\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00071}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_ad2dd0c24ca248dac498e168471c296ae_ad2dd0c24ca248dac498e168471c296ae}{00071}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_ad2dd0c24ca248dac498e168471c296ae_ad2dd0c24ca248dac498e168471c296ae}{Add}}([NotNull]\ Object\ asset,\ [NotNull]\ String\ label)}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00072}00072\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00073}00073\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ existingLabels\ =\ \textcolor{keyword}{new}\ List(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf}{GetAll}}(asset));}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00074}00074\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ existingLabels.Add(label);}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00075}00075\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.SetLabels(asset,\ existingLabels.ToArray());}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00076}00076\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00077}00077\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00088}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_a0db1d630d411ce9b9afaab8893ca433c_a0db1d630d411ce9b9afaab8893ca433c}{00088}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_a0db1d630d411ce9b9afaab8893ca433c_a0db1d630d411ce9b9afaab8893ca433c}{Add}}([NotNull]\ Object\ asset,\ [NotNull]\ String[]\ labels)}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00089}00089\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00090}00090\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ existingLabels\ =\ \textcolor{keyword}{new}\ List(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf}{GetAll}}(asset));}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00091}00091\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ existingLabels.AddRange(labels);}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00092}00092\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.SetLabels(asset,\ existingLabels.ToArray());}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00093}00093\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00094}00094\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00104}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_ad0347f47f2f71137fe48133c157904ff_ad0347f47f2f71137fe48133c157904ff}{00104}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_ad0347f47f2f71137fe48133c157904ff_ad0347f47f2f71137fe48133c157904ff}{ClearAll}}([NotNull]\ Object\ asset)\ =>\ AssetDatabase.ClearLabels(asset);}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00105}00105\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00106}00106\ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_label_8cs_source_l00107}00107\ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/_asset_8_package_8cs_source.tex b/Docs~/latex/_asset_8_package_8cs_source.tex
new file mode 100644
index 00000000..2bd62732
--- /dev/null
+++ b/Docs~/latex/_asset_8_package_8cs_source.tex
@@ -0,0 +1,57 @@
+\doxysubsection{Asset.\+Package.\+cs}
+\hypertarget{_asset_8_package_8cs_source}{}\label{_asset_8_package_8cs_source}\index{P:/de.codesmile.assetdatabase/Editor/Asset.Package.cs@{P:/de.codesmile.assetdatabase/Editor/Asset.Package.cs}}
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00001}00001\ \textcolor{comment}{//\ Copyright\ (C)\ 2021-\/2023\ Steffen\ Itterheim}}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00002}00002\ \textcolor{comment}{//\ Refer\ to\ included\ LICENSE\ file\ for\ terms\ and\ conditions.}}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00003}00003\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00004}00004\ \textcolor{keyword}{using\ }System;}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00005}00005\ \textcolor{keyword}{using\ }System.Diagnostics.CodeAnalysis;}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00006}00006\ \textcolor{keyword}{using\ }UnityEditor;}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00007}00007\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00008}00008\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{namespace_code_smile_editor}{CodeSmileEditor}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00009}00009\ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00010}00010\ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{sealed}\ \textcolor{keyword}{partial\ class\ }Asset}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00011}00011\ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00019}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_package}{00019}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keyword}{class\ }\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_package}{Package}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00020}00020\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00030}00030\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00031}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_package_ac41a72ed18bd8c2d23212f32791b0a2a_ac41a72ed18bd8c2d23212f32791b0a2a}{00031}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_package_ac41a72ed18bd8c2d23212f32791b0a2a_ac41a72ed18bd8c2d23212f32791b0a2a}{Import}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ packagePath)}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00032}00032\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00033}00033\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ExtensionIsNotUnityPackage(packagePath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00034}00034\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00035}00035\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.ImportPackage(packagePath,\ \textcolor{keyword}{false});}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00036}00036\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00037}00037\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00048}00048\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ not\ testable}}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00049}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_package_a99d2e4c6e164f99d46f0da6cb23d9aa9_a99d2e4c6e164f99d46f0da6cb23d9aa9}{00049}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_package_a99d2e4c6e164f99d46f0da6cb23d9aa9_a99d2e4c6e164f99d46f0da6cb23d9aa9}{ImportInteractive}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ packagePath)}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00050}00050\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00051}00051\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ExtensionIsNotUnityPackage(packagePath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00052}00052\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00053}00053\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.ImportPackage(packagePath,\ \textcolor{keyword}{true});}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00054}00054\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00055}00055\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00069}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_package_aa1e7a86c8e5db3200570af6809a69f2a_aa1e7a86c8e5db3200570af6809a69f2a}{00069}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_package_aa1e7a86c8e5db3200570af6809a69f2a_aa1e7a86c8e5db3200570af6809a69f2a}{Export}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ assetPath,\ [NotNull]\ String\ packagePath,}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00070}00070\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ExportPackageOptions\ options\ =\ ExportPackageOptions.Default)}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00071}00071\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00072}00072\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ExtensionIsNotUnityPackage(packagePath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00073}00073\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00074}00074\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.ExportPackage(assetPath,\ packagePath,\ options);}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00075}00075\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00076}00076\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00090}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_package_a379ffb8db80b0c38b681a7580cd55e4c_a379ffb8db80b0c38b681a7580cd55e4c}{00090}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_package_a379ffb8db80b0c38b681a7580cd55e4c_a379ffb8db80b0c38b681a7580cd55e4c}{Export}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}[]\ assetPaths,\ [NotNull]\ String\ packagePath,}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00091}00091\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ExportPackageOptions\ options\ =\ ExportPackageOptions.Default)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00092}00092\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_package_aa1e7a86c8e5db3200570af6809a69f2a_aa1e7a86c8e5db3200570af6809a69f2a}{Export}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a698b564cc49ed111277f35dac618252d_a698b564cc49ed111277f35dac618252d}{ToStrings}}(assetPaths),\ packagePath,\ options);}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00093}00093\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00107}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_package_a52bfc150210997b319e205ebd13e87a8_a52bfc150210997b319e205ebd13e87a8}{00107}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_package_a52bfc150210997b319e205ebd13e87a8_a52bfc150210997b319e205ebd13e87a8}{Export}}([NotNull]\ String[]\ assetPaths,\ [NotNull]\ String\ packagePath,}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00108}00108\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ExportPackageOptions\ options\ =\ ExportPackageOptions.Default)}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00109}00109\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00110}00110\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ExtensionIsNotUnityPackage(packagePath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00111}00111\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00112}00112\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.ExportPackage(assetPaths,\ packagePath,\ options);}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00113}00113\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00114}00114\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00115}00115\ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_package_8cs_source_l00116}00116\ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/_asset_8_path_8_static_8cs_source.tex b/Docs~/latex/_asset_8_path_8_static_8cs_source.tex
new file mode 100644
index 00000000..21394d9e
--- /dev/null
+++ b/Docs~/latex/_asset_8_path_8_static_8cs_source.tex
@@ -0,0 +1,209 @@
+\doxysubsection{Asset.\+Path.\+Static.\+cs}
+\hypertarget{_asset_8_path_8_static_8cs_source}{}\label{_asset_8_path_8_static_8cs_source}\index{P:/de.codesmile.assetdatabase/Editor/Asset.Path.Static.cs@{P:/de.codesmile.assetdatabase/Editor/Asset.Path.Static.cs}}
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00001}00001\ \textcolor{comment}{//\ Copyright\ (C)\ 2021-\/2023\ Steffen\ Itterheim}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00002}00002\ \textcolor{comment}{//\ Refer\ to\ included\ LICENSE\ file\ for\ terms\ and\ conditions.}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00003}00003\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00004}00004\ \textcolor{keyword}{using\ }System;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00005}00005\ \textcolor{keyword}{using\ }System.Collections.Generic;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00006}00006\ \textcolor{keyword}{using\ }System.Diagnostics.CodeAnalysis;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00007}00007\ \textcolor{keyword}{using\ }System.IO;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00008}00008\ \textcolor{keyword}{using\ }System.Linq;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00009}00009\ \textcolor{keyword}{using\ }UnityEditor;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00010}00010\ \textcolor{keyword}{using\ }UnityEngine;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00011}00011\ \textcolor{keyword}{using\ }Object\ =\ UnityEngine.Object;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00012}00012\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00013}00013\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{namespace_code_smile_editor}{CodeSmileEditor}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00014}00014\ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00015}00015\ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{sealed}\ \textcolor{keyword}{partial\ class\ }Asset}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00016}00016\ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00017}00017\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{partial\ class\ }Path}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00018}00018\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00019}00019\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ all\ lowercase}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00020}00020\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ \textcolor{keyword}{static}\ readonly\ String[]\ s\_AllowedAssetSubfolders\ =}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00021}00021\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{\ \textcolor{stringliteral}{"{}assets"{}},\ \textcolor{stringliteral}{"{}library"{}},\ \textcolor{stringliteral}{"{}logs"{}},\ \textcolor{stringliteral}{"{}packages"{}},\ \textcolor{stringliteral}{"{}projectsettings"{}},\ \textcolor{stringliteral}{"{}temp"{}},\ \textcolor{stringliteral}{"{}usersettings"{}}\ \};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00022}00022\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00029}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_abd29565587282b14cb265fb107ae0093_abd29565587282b14cb265fb107ae0093}{00029}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_abd29565587282b14cb265fb107ae0093_abd29565587282b14cb265fb107ae0093}{FullAssetsPath}}\ =>\ Application.dataPath;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00030}00030\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00034}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ad031047c157ca34623ef3d8794c321a4_ad031047c157ca34623ef3d8794c321a4}{00034}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ad031047c157ca34623ef3d8794c321a4_ad031047c157ca34623ef3d8794c321a4}{FullPackagesPath}}\ =>\ \$\textcolor{stringliteral}{"{}\{FullProjectPath\}/Packages"{}};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00035}00035\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00039}00039\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ returns\ string\ interpolation}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00040}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a005a32c04a661e398af4f2a6f866242a_a005a32c04a661e398af4f2a6f866242a}{00040}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a005a32c04a661e398af4f2a6f866242a_a005a32c04a661e398af4f2a6f866242a}{FullLibraryPath}}\ =>\ \$\textcolor{stringliteral}{"{}\{FullProjectPath\}/Library"{}};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00041}00041\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00045}00045\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ returns\ string\ interpolation}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00046}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a6724fa2743590cd1a81b41b61102e7fe_a6724fa2743590cd1a81b41b61102e7fe}{00046}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a6724fa2743590cd1a81b41b61102e7fe_a6724fa2743590cd1a81b41b61102e7fe}{FullLogsPath}}\ =>\ \$\textcolor{stringliteral}{"{}\{FullProjectPath\}/Logs"{}};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00047}00047\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00051}00051\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ returns\ string\ interpolation}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00052}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ac7167ec9e63c61ff6a42a820af23747c_ac7167ec9e63c61ff6a42a820af23747c}{00052}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ac7167ec9e63c61ff6a42a820af23747c_ac7167ec9e63c61ff6a42a820af23747c}{FullProjectSettingsPath}}\ =>\ \$\textcolor{stringliteral}{"{}\{FullProjectPath\}/ProjectSettings"{}};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00053}00053\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00057}00057\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ returns\ string\ interpolation}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00058}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a2fcfa4fd2c52adca3fa729bf78e72d3b_a2fcfa4fd2c52adca3fa729bf78e72d3b}{00058}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a2fcfa4fd2c52adca3fa729bf78e72d3b_a2fcfa4fd2c52adca3fa729bf78e72d3b}{FullUserSettingsPath}}\ =>\ \$\textcolor{stringliteral}{"{}\{FullProjectPath\}/UserSettings"{}};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00059}00059\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00063}00063\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ returns\ string\ interpolation}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00064}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a77508ff7f04d30b6160f254e53adbeb6_a77508ff7f04d30b6160f254e53adbeb6}{00064}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a77508ff7f04d30b6160f254e53adbeb6_a77508ff7f04d30b6160f254e53adbeb6}{FullProjectTempPath}}\ =>\ \$\textcolor{stringliteral}{"{}\{FullProjectPath\}/Temp"{}};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00065}00065\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00069}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a3a4a27e26891e69d91d724cdf661656e_a3a4a27e26891e69d91d724cdf661656e}{00069}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a3a4a27e26891e69d91d724cdf661656e_a3a4a27e26891e69d91d724cdf661656e}{FullProjectPath}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_abd29565587282b14cb265fb107ae0093_abd29565587282b14cb265fb107ae0093}{FullAssetsPath}}.Substring(0,\ Application.dataPath.Length\ -\/\ 6);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00070}00070\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00080}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{00080}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Get}}([NotNull]\ Object\ asset)}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00081}00081\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00082}00082\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ path\ =\ AssetDatabase.GetAssetPath(asset);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00083}00083\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ String.IsNullOrEmpty(path)\ ?\ null\ :\ (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}})path;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00084}00084\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00085}00085\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00096}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_afc3f6187881696bfef4a6ab5f09539fe_afc3f6187881696bfef4a6ab5f09539fe}{00096}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_afc3f6187881696bfef4a6ab5f09539fe_afc3f6187881696bfef4a6ab5f09539fe}{Get}}(GUID\ guid)}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00097}00097\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00098}00098\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ path\ =\ AssetDatabase.GUIDToAssetPath(guid);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00099}00099\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ String.IsNullOrEmpty(path)\ ?\ null\ :\ (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}})path;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00100}00100\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00101}00101\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00114}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a7b337848207b6bc5aebde6ae18e18d54_a7b337848207b6bc5aebde6ae18e18d54}{00114}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a7b337848207b6bc5aebde6ae18e18d54_a7b337848207b6bc5aebde6ae18e18d54}{Get}}([NotNull]\ Object[]\ assets)}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00115}00115\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00116}00116\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(assets,\ nameof(assets));}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00117}00117\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00118}00118\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ objectCount\ =\ assets.Length;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00119}00119\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ paths\ =\ \textcolor{keyword}{new}\ String[objectCount];}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00120}00120\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{for}\ (var\ i\ =\ 0;\ i\ <\ objectCount;\ i++)}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00121}00121\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ paths[i]\ =\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Get}}(assets[i]);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00122}00122\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00123}00123\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ paths;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00124}00124\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00125}00125\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00139}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a942d35c4445bef86b8675fa4ee8893ee_a942d35c4445bef86b8675fa4ee8893ee}{00139}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ GUID\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a942d35c4445bef86b8675fa4ee8893ee_a942d35c4445bef86b8675fa4ee8893ee}{GetGuid}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path,}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00140}00140\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetPathToGUIDOptions\ options\ =\ AssetPathToGUIDOptions.IncludeRecentlyDeletedAssets)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00141}00141\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{new}(AssetDatabase.AssetPathToGUID(path,\ options));}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00142}00142\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00153}00153\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00154}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_af4219b5ed1497e66fd495b412688ecf3_af4219b5ed1497e66fd495b412688ecf3}{00154}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_af4219b5ed1497e66fd495b412688ecf3_af4219b5ed1497e66fd495b412688ecf3}{ToMeta}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ AssetDatabase.GetTextMetaFilePathFromAssetPath(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00155}00155\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00166}00166\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00167}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a18298002ca84eab9c56ac238dedc53e8_a18298002ca84eab9c56ac238dedc53e8}{00167}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a18298002ca84eab9c56ac238dedc53e8_a18298002ca84eab9c56ac238dedc53e8}{FromMeta}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ AssetDatabase.GetAssetPathFromTextMetaFilePath(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00168}00168\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00178}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ac408187e90e22a29a6c0bf20a0306532_ac408187e90e22a29a6c0bf20a0306532}{00178}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ac408187e90e22a29a6c0bf20a0306532_ac408187e90e22a29a6c0bf20a0306532}{GetScene}}([NotNull]\ Object\ instanceOrAsset)\ =>\ AssetDatabase.GetAssetOrScenePath(instanceOrAsset);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00179}00179\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00194}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_afe4dd70515ffc4868599918fc76c32b9_afe4dd70515ffc4868599918fc76c32b9}{00194}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_afe4dd70515ffc4868599918fc76c32b9_afe4dd70515ffc4868599918fc76c32b9}{IsValid}}([NotNull]\ String\ path)}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00195}00195\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00196}00196\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ isValid\ =\ \textcolor{keyword}{true};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00197}00197\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00198}00198\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{try}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00199}00199\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00200}00200\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ System.IO\ will\ throw\ for\ most\ illegal\ chars,\ plus\ some\ extra\ checks}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00201}00201\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ fileName\ =\ System.IO.Path.GetFileName(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00202}00202\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ folderName\ =\ System.IO.Path.GetDirectoryName(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00203}00203\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00204}00204\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ check\ folder\ name\ for\ some\ chars\ that\ System.IO\ allows\ in\ GetDirectoryName}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00205}00205\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ testIllegalChars\ =\ \textcolor{keyword}{new}\ Func(c\ =>\ c\ ==\ \textcolor{charliteral}{'*'}\ ||\ c\ ==\ \textcolor{charliteral}{'?'}\ ||\ c\ ==\ \textcolor{charliteral}{':'});}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00206}00206\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ isValid\ =\ folderName.Any(testIllegalChars)\ ==\ \textcolor{keyword}{false};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00207}00207\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00208}00208\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (isValid)}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00209}00209\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00210}00210\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ check\ filename\ for\ some\ chars\ that\ System.IO\ allows\ in\ GetFileName}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00211}00211\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ fileName\ =\ path.Substring(folderName.Length,\ path.Length\ -\/\ folderName.Length);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00212}00212\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ isValid\ =\ fileName.Any(testIllegalChars)\ ==\ \textcolor{keyword}{false};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00213}00213\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00214}00214\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00215}00215\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{catch}\ (Exception\ ex)}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00216}00216\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00217}00217\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ SetLastErrorMessage(\$\textcolor{stringliteral}{"{}\{ex.Message\}\ =>\ \(\backslash\)"{}\{path\}\(\backslash\)"{}"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00218}00218\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ isValid\ =\ \textcolor{keyword}{false};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00219}00219\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00220}00220\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00221}00221\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ isValid;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00222}00222\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00223}00223\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00232}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ae2e7b500cc4d1f97b7c6051181aa833f_ae2e7b500cc4d1f97b7c6051181aa833f}{00232}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ae2e7b500cc4d1f97b7c6051181aa833f_ae2e7b500cc4d1f97b7c6051181aa833f}{FileExists}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ System.IO.File.Exists(path.m\_RelativePath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00233}00233\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00242}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe0620f7baaa0c21543f455c_a18386e05fe0620f7baaa0c21543f455c}{00242}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe0620f7baaa0c21543f455c_a18386e05fe0620f7baaa0c21543f455c}{FolderExists}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ Directory.Exists(path.m\_RelativePath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00243}00243\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00254}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa30592adbaf54202ead85cd483107e55_aa30592adbaf54202ead85cd483107e55}{00254}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ GUID\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa30592adbaf54202ead85cd483107e55_aa30592adbaf54202ead85cd483107e55}{CreateFolders}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00255}00255\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00256}00256\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(path,\ nameof(path));}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00257}00257\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.PathIsNotValid(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00258}00258\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00259}00259\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ae2e7b500cc4d1f97b7c6051181aa833f_ae2e7b500cc4d1f97b7c6051181aa833f}{FileExists}}(path))}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00260}00260\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ path.FolderPath.Guid;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00261}00261\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00262}00262\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ if\ the\ last\ part\ has\ an\ extension\ we\ assume\ the\ path\ points\ to\ a\ file}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00263}00263\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ isPresumablyFilePath\ =\ String.IsNullOrEmpty(path.Extension)\ ==\ \textcolor{keyword}{false};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00264}00264\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ folderPath\ =\ isPresumablyFilePath\ ?\ path.FolderPath\ :\ path;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00265}00265\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe0620f7baaa0c21543f455c_a18386e05fe0620f7baaa0c21543f455c}{FolderExists}}(folderPath))}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00266}00266\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ folderPath.Guid;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00267}00267\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00268}00268\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ folderNames\ =\ ((String)folderPath).Split(\textcolor{keyword}{new}[]\ \{\ \textcolor{charliteral}{'/'}\ \});}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00269}00269\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ folderGuid\ =\ GuidForExistingPath(folderNames[0]);\ \textcolor{comment}{//\ first\ is\ "{}Assets"{}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00270}00270\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ partialPath\ =\ folderNames[0];}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00271}00271\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{for}\ (var\ i\ =\ 1;\ i\ <\ folderNames.Length;\ i++)}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00272}00272\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00273}00273\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ partialPath\ +=\ \$\textcolor{stringliteral}{"{}/\{folderNames[i]\}"{}};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00274}00274\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe0620f7baaa0c21543f455c_a18386e05fe0620f7baaa0c21543f455c}{FolderExists}}(partialPath))}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00275}00275\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00276}00276\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ folderGuid\ =\ GuidForExistingPath(partialPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00277}00277\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{continue};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00278}00278\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00279}00279\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00280}00280\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ folderGuid\ =\ CreateSubFolder(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Get}}(folderGuid),\ folderNames[i]);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00281}00281\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00282}00282\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00283}00283\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ folderGuid;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00284}00284\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00285}00285\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00295}00295\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00296}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a2d28ed0af9ce1a5b78cfea13d920fbf6_a2d28ed0af9ce1a5b78cfea13d920fbf6}{00296}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a2d28ed0af9ce1a5b78cfea13d920fbf6_a2d28ed0af9ce1a5b78cfea13d920fbf6}{GetSubFolders}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ AssetDatabase.GetSubFolders(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00297}00297\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00314}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a90bc7d03e89ae59ba4653ff9109f0fec_a90bc7d03e89ae59ba4653ff9109f0fec}{00314}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a90bc7d03e89ae59ba4653ff9109f0fec_a90bc7d03e89ae59ba4653ff9109f0fec}{UniquifyFileName}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00315}00315\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00316}00316\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ uniquePath\ =\ AssetDatabase.GenerateUniqueAssetPath(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00317}00317\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ String.IsNullOrEmpty(uniquePath)\ ?\ path\ :\ uniquePath;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00318}00318\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00319}00319\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00325}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a698b564cc49ed111277f35dac618252d_a698b564cc49ed111277f35dac618252d}{00325}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a698b564cc49ed111277f35dac618252d_a698b564cc49ed111277f35dac618252d}{ToStrings}}([NotNull]\ IEnumerable\ paths)\ =>\ paths.Cast().ToArray();}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00326}00326\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00327}00327\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{internal}\ \textcolor{keyword}{static}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ UniquifyAsNeeded([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path,\ Boolean\ overwriteExisting)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00328}00328\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ overwriteExisting\ ?\ path\ :\ path.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a095641cd17b35305e83b4dcee0704e0b_a095641cd17b35305e83b4dcee0704e0b}{UniqueFilePath}};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00329}00329\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00330}00330\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ \textcolor{keyword}{static}\ GUID\ CreateSubFolder([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ parentFolder,\ [NotNull]\ String\ subFolderName)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00331}00331\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{new}(AssetDatabase.CreateFolder(parentFolder,\ subFolderName));}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00332}00332\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00333}00333\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ \textcolor{keyword}{static}\ String\ ToRelative([NotNull]\ String\ fullOrRelativePath)}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00334}00334\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00335}00335\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ relativePath\ =\ fullOrRelativePath;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00336}00336\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (IsRelative(relativePath)\ ==\ \textcolor{keyword}{false})}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00337}00337\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00338}00338\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.NotAProjectPath(fullOrRelativePath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00339}00339\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ relativePath\ =\ MakeRelative(fullOrRelativePath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00340}00340\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00341}00341\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00342}00342\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ relativePath\ =\ relativePath.Trim(\textcolor{charliteral}{'/'});}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00343}00343\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00344}00344\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.PathIsNotValid(relativePath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00345}00345\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ relativePath;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00346}00346\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00347}00347\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00348}00348\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ \textcolor{keyword}{static}\ Boolean\ IsRelative([NotNull]\ String\ path)}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00349}00349\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00350}00350\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ path\ =\ path.TrimStart(\textcolor{charliteral}{'/'}).ToLower();}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00351}00351\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00352}00352\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ path\ must\ start\ with\ given\ project\ root\ subfolder\ names\ (eg\ 'Assets',\ 'Packages',\ 'Library'\ ..)}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00353}00353\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ and\ bei\ either\ just\ the\ subfolder\ (length\ equals)\ or\ be\ followed\ by\ a\ path\ separator}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00354}00354\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{foreach}\ (var\ allowedSubfolder\ \textcolor{keywordflow}{in}\ s\_AllowedAssetSubfolders)}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00355}00355\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00356}00356\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ doesStartsWith\ =\ path.StartsWith(allowedSubfolder);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00357}00357\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ subfolderLength\ =\ allowedSubfolder.Length;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00358}00358\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ lengthMatches\ =\ path.Length\ ==\ subfolderLength;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00359}00359\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (doesStartsWith\ \&\&\ (lengthMatches\ ||\ path[subfolderLength].\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a16e59bfb7ec5500d91fa1e8baaed7ec3_a16e59bfb7ec5500d91fa1e8baaed7ec3}{Equals}}(\textcolor{charliteral}{'/'})))}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00360}00360\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{true};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00361}00361\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00362}00362\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00363}00363\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00364}00364\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00365}00365\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00366}00366\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ \textcolor{keyword}{static}\ String\ MakeRelative([NotNull]\ String\ fullOrRelativePath)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00367}00367\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ fullOrRelativePath.Substring(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a3a4a27e26891e69d91d724cdf661656e_a3a4a27e26891e69d91d724cdf661656e}{FullProjectPath}}.Length).Trim(\textcolor{charliteral}{'/'});}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00368}00368\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00369}00369\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ \textcolor{keyword}{static}\ GUID\ GuidForExistingPath([NotNull]\ String\ path)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00370}00370\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{new}(AssetDatabase.AssetPathToGUID(path,\ AssetPathToGUIDOptions.OnlyExistingAssets));}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00371}00371\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00372}00372\ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8_static_8cs_source_l00373}00373\ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/_asset_8_path_8cs_source.tex b/Docs~/latex/_asset_8_path_8cs_source.tex
new file mode 100644
index 00000000..3b17172d
--- /dev/null
+++ b/Docs~/latex/_asset_8_path_8cs_source.tex
@@ -0,0 +1,164 @@
+\doxysubsection{Asset.\+Path.\+cs}
+\hypertarget{_asset_8_path_8cs_source}{}\label{_asset_8_path_8cs_source}\index{P:/de.codesmile.assetdatabase/Editor/Asset.Path.cs@{P:/de.codesmile.assetdatabase/Editor/Asset.Path.cs}}
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00001}00001\ \textcolor{comment}{//\ Copyright\ (C)\ 2021-\/2023\ Steffen\ Itterheim}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00002}00002\ \textcolor{comment}{//\ Refer\ to\ included\ LICENSE\ file\ for\ terms\ and\ conditions.}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00003}00003\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00004}00004\ \textcolor{keyword}{using\ }System;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00005}00005\ \textcolor{keyword}{using\ }System.Diagnostics.CodeAnalysis;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00006}00006\ \textcolor{keyword}{using\ }UnityEditor;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00007}00007\ \textcolor{keyword}{using\ }UnityEngine;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00008}00008\ \textcolor{keyword}{using\ }Object\ =\ UnityEngine.Object;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00009}00009\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00010}00010\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{namespace_code_smile_editor}{CodeSmileEditor}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00011}00011\ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00012}00012\ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{sealed}\ \textcolor{keyword}{partial\ class\ }Asset}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00013}00013\ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00024}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{00024}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{partial\ class\ }\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ :\ IEquatable,\ IEquatable}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00025}00025\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00026}00026\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ \textcolor{keyword}{const}\ String\ DefaultExtension\ =\ \textcolor{stringliteral}{"{}asset"{}};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00027}00027\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00028}00028\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ String\ m\_RelativePath\ =\ String.Empty;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00029}00029\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00039}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a66a3fc7176ae79e7e9ee85df99c5ff7c_a66a3fc7176ae79e7e9ee85df99c5ff7c}{00039}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ GUID\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a66a3fc7176ae79e7e9ee85df99c5ff7c_a66a3fc7176ae79e7e9ee85df99c5ff7c}{Guid}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a942d35c4445bef86b8675fa4ee8893ee_a942d35c4445bef86b8675fa4ee8893ee}{GetGuid}}(\textcolor{keyword}{this},\ AssetPathToGUIDOptions.OnlyExistingAssets);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00040}00040\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00057}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_abd65d5ceb97d69f280079d5bfa8c75ea_abd65d5ceb97d69f280079d5bfa8c75ea}{00057}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_abd65d5ceb97d69f280079d5bfa8c75ea_abd65d5ceb97d69f280079d5bfa8c75ea}{Exists}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00058}00058\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00059}00059\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{get}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00060}00060\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00061}00061\ \textcolor{preprocessor}{\#if\ UNITY\_2023\_2\_OR\_NEWER}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00062}00062\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.AssetPathExists(m\_RelativePath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00063}00063\ \textcolor{preprocessor}{\#else}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00064}00064\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.AssetPathToGUID(m\_RelativePath,\ AssetPathToGUIDOptions.OnlyExistingAssets).Length\ >\ 0;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00065}00065\ \textcolor{preprocessor}{\#endif}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00066}00066\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00067}00067\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00068}00068\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00084}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a60c6f10f04d962b32a6563c6b842b81c_a60c6f10f04d962b32a6563c6b842b81c}{00084}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a60c6f10f04d962b32a6563c6b842b81c_a60c6f10f04d962b32a6563c6b842b81c}{ExistsInFileSystem}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ae2e7b500cc4d1f97b7c6051181aa833f_ae2e7b500cc4d1f97b7c6051181aa833f}{FileExists}}(\textcolor{keyword}{this})\ ||\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe0620f7baaa0c21543f455c_a18386e05fe0620f7baaa0c21543f455c}{FolderExists}}(\textcolor{keyword}{this});}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00085}00085\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00095}00095\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00096}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a0084f5ad8a13c505013748101a81b1df_a0084f5ad8a13c505013748101a81b1df}{00096}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a0084f5ad8a13c505013748101a81b1df_a0084f5ad8a13c505013748101a81b1df}{MetaPath}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_af4219b5ed1497e66fd495b412688ecf3_af4219b5ed1497e66fd495b412688ecf3}{ToMeta}}(\textcolor{keyword}{this});}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00097}00097\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00107}00107\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00108}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a54bbd4600c9787134d849c022cefe90e_a54bbd4600c9787134d849c022cefe90e}{00108}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a54bbd4600c9787134d849c022cefe90e_a54bbd4600c9787134d849c022cefe90e}{AssetPath}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a18298002ca84eab9c56ac238dedc53e8_a18298002ca84eab9c56ac238dedc53e8}{FromMeta}}(\textcolor{keyword}{this});}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00109}00109\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00118}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a66d760f8140181f272630b4f226a56c5_a66d760f8140181f272630b4f226a56c5}{00118}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ String\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a66d760f8140181f272630b4f226a56c5_a66d760f8140181f272630b4f226a56c5}{Extension}}\ =>\ System.IO.Path.GetExtension(m\_RelativePath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00119}00119\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00127}00127\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00128}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a5066dd8adab56e4ea54fe46b9db3bd9a_a5066dd8adab56e4ea54fe46b9db3bd9a}{00128}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ String\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a5066dd8adab56e4ea54fe46b9db3bd9a_a5066dd8adab56e4ea54fe46b9db3bd9a}{FileName}}\ =>\ System.IO.Path.GetFileName(m\_RelativePath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00129}00129\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00137}00137\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00138}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a3693da5482c390a2146fe9dc6d38b197_a3693da5482c390a2146fe9dc6d38b197}{00138}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ String\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a3693da5482c390a2146fe9dc6d38b197_a3693da5482c390a2146fe9dc6d38b197}{FileNameWithoutExtension}}\ =>\ System.IO.Path.GetFileNameWithoutExtension(m\_RelativePath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00139}00139\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00146}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_af15b23e15a17c04d3a45a054a18d6443_af15b23e15a17c04d3a45a054a18d6443}{00146}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ String\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_af15b23e15a17c04d3a45a054a18d6443_af15b23e15a17c04d3a45a054a18d6443}{FullPath}}\ =>\ System.IO.Path.GetFullPath(m\_RelativePath).ToForwardSlashes();}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00147}00147\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00160}00160\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00161}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a0247c4e1ee282e42b31b89c70bebe85f_a0247c4e1ee282e42b31b89c70bebe85f}{00161}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ String[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a0247c4e1ee282e42b31b89c70bebe85f_a0247c4e1ee282e42b31b89c70bebe85f}{SubFolders}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a2d28ed0af9ce1a5b78cfea13d920fbf6_a2d28ed0af9ce1a5b78cfea13d920fbf6}{GetSubFolders}}(\textcolor{keyword}{this});}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00162}00162\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00172}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a86fde1a385ff90d8002ae30a7c39cab9_a86fde1a385ff90d8002ae30a7c39cab9}{00172}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a86fde1a385ff90d8002ae30a7c39cab9_a86fde1a385ff90d8002ae30a7c39cab9}{FolderPath}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00173}00173\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00174}00174\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{get}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00175}00175\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00176}00176\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ dirName\ =\ System.IO.Path.GetDirectoryName(m\_RelativePath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00177}00177\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ String.IsNullOrEmpty(dirName)\ ?\ null\ :\ dirName;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00178}00178\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00179}00179\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00180}00180\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00192}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a095641cd17b35305e83b4dcee0704e0b_a095641cd17b35305e83b4dcee0704e0b}{00192}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a095641cd17b35305e83b4dcee0704e0b_a095641cd17b35305e83b4dcee0704e0b}{UniqueFilePath}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a90bc7d03e89ae59ba4653ff9109f0fec_a90bc7d03e89ae59ba4653ff9109f0fec}{UniquifyFileName}}(\textcolor{keyword}{this});}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00193}00193\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00194}00194\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{keyword}{private}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}()\ \{\}\ \textcolor{comment}{//\ disallowed\ parameterless\ ctor}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00195}00195\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00223}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a14cdcaf6215972759787431b363f763c_a14cdcaf6215972759787431b363f763c}{00223}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a14cdcaf6215972759787431b363f763c_a14cdcaf6215972759787431b363f763c}{Path}}([NotNull]\ String\ fullOrRelativePath)}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00224}00224\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00225}00225\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.NullOrWhitespace(fullOrRelativePath,\ nameof(fullOrRelativePath));}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00226}00226\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ m\_RelativePath\ =\ ToRelative(fullOrRelativePath.ToForwardSlashes());}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00227}00227\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00228}00228\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00251}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ab81690d1d82ddd90548e3d804b5afa29_ab81690d1d82ddd90548e3d804b5afa29}{00251}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ab81690d1d82ddd90548e3d804b5afa29_ab81690d1d82ddd90548e3d804b5afa29}{Path}}([NotNull]\ String\ folderPath,\ [NotNull]\ String\ fileName,\ [NotNull]\ String\ extension\ =\ DefaultExtension)}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00252}00252\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00253}00253\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.NullOrWhitespace(folderPath,\ nameof(folderPath));}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00254}00254\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.NullOrWhitespace(fileName,\ nameof(fileName));}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00255}00255\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.NullOrWhitespace(extension,\ nameof(extension));}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00256}00256\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ContainsPathSeparators(fileName,\ nameof(fileName));}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00257}00257\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00258}00258\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ relativeDir\ =\ ToRelative(folderPath.ToForwardSlashes());}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00259}00259\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ m\_RelativePath\ =\ \$\textcolor{stringliteral}{"{}\{relativeDir\}/\{fileName\}.\{extension.TrimStart('.').ToLower()\}"{}};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00260}00260\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00261}00261\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00270}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a3d0d7574b95b19be03fdfd90e6c628e2_a3d0d7574b95b19be03fdfd90e6c628e2}{00270}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a3d0d7574b95b19be03fdfd90e6c628e2_a3d0d7574b95b19be03fdfd90e6c628e2}{Path}}([NotNull]\ Object\ asset)}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00271}00271\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00272}00272\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(asset,\ nameof(asset));}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00273}00273\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.NotInDatabase(asset);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00274}00274\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00275}00275\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ m\_RelativePath\ =\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Get}}(asset);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00276}00276\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00277}00277\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00284}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a16e59bfb7ec5500d91fa1e8baaed7ec3_a16e59bfb7ec5500d91fa1e8baaed7ec3}{00284}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a16e59bfb7ec5500d91fa1e8baaed7ec3_a16e59bfb7ec5500d91fa1e8baaed7ec3}{Equals}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ other)}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00285}00285\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00286}00286\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (ReferenceEquals(other,\ \textcolor{keyword}{null}))}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00287}00287\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00288}00288\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (ReferenceEquals(\textcolor{keyword}{this},\ other))}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00289}00289\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{true};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00290}00290\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00291}00291\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ m\_RelativePath.Equals(other.m\_RelativePath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00292}00292\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00293}00293\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00301}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a7fe15db208e12203a2ddd105a60446a0_a7fe15db208e12203a2ddd105a60446a0}{00301}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a7fe15db208e12203a2ddd105a60446a0_a7fe15db208e12203a2ddd105a60446a0}{Equals}}(String\ other)\ =>\ m\_RelativePath.Equals(\textcolor{keyword}{new}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}(other).m\_RelativePath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00302}00302\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00308}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a294e1f7dac5c8247c2f32d50653ff2f6_a294e1f7dac5c8247c2f32d50653ff2f6}{00308}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ implicit\ \textcolor{keyword}{operator}\ String(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ path\ !=\ \textcolor{keyword}{null}\ ?\ path.m\_RelativePath\ :\ \textcolor{keyword}{null};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00309}00309\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00315}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a8f41e9c71f0bf56b0fe80ef591334128_a8f41e9c71f0bf56b0fe80ef591334128}{00315}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ implicit\ \textcolor{keyword}{operator}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}(String\ path)\ =>\ path\ !=\ \textcolor{keyword}{null}\ ?\ \textcolor{keyword}{new}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}(path)\ :\ null;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00316}00316\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00323}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aba3e55bf4914578717ffd4ec9707c29f_aba3e55bf4914578717ffd4ec9707c29f}{00323}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aba3e55bf4914578717ffd4ec9707c29f_aba3e55bf4914578717ffd4ec9707c29f}{operator\ ==}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path1,\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path2)}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00324}00324\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00325}00325\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (ReferenceEquals(path1,\ path2))}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00326}00326\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{true};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00327}00327\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (ReferenceEquals(path1,\ \textcolor{keyword}{null}))}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00328}00328\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00329}00329\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (ReferenceEquals(path2,\ \textcolor{keyword}{null}))}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00330}00330\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00331}00331\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00332}00332\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ path1.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a16e59bfb7ec5500d91fa1e8baaed7ec3_a16e59bfb7ec5500d91fa1e8baaed7ec3}{Equals}}(path2);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00333}00333\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00334}00334\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00341}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a0a26f18bf392e944599d94a316d0dd9c_a0a26f18bf392e944599d94a316d0dd9c}{00341}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a0a26f18bf392e944599d94a316d0dd9c_a0a26f18bf392e944599d94a316d0dd9c}{operator\ !=}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path1,\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path2)\ =>\ !(path1\ ==\ path2);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00342}00342\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00349}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ad65aa0fe0b7d3cd28b1d33eeac3548cd_ad65aa0fe0b7d3cd28b1d33eeac3548cd}{00349}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aba3e55bf4914578717ffd4ec9707c29f_aba3e55bf4914578717ffd4ec9707c29f}{operator\ ==}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path1,\ System.Object\ other)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00350}00350\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ other\ is\ String\ str\ ?\ path1.Equals(str)\ :\ path1.Equals(other\ as\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00351}00351\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00358}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a4061b79c8350f444d3691461e0f94e95_a4061b79c8350f444d3691461e0f94e95}{00358}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a0a26f18bf392e944599d94a316d0dd9c_a0a26f18bf392e944599d94a316d0dd9c}{operator\ !=}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path1,\ System.Object\ other)\ =>\ !(path1\ ==\ other);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00359}00359\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00366}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a66235cf211f3a38e4149fa48fc685f67_a66235cf211f3a38e4149fa48fc685f67}{00366}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aba3e55bf4914578717ffd4ec9707c29f_aba3e55bf4914578717ffd4ec9707c29f}{operator\ ==}}(System.Object\ other,\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ path\ ==\ other;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00367}00367\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00374}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aeada9e1217349c548458a8b0ac2d1fca_aeada9e1217349c548458a8b0ac2d1fca}{00374}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a0a26f18bf392e944599d94a316d0dd9c_a0a26f18bf392e944599d94a316d0dd9c}{operator\ !=}}(System.Object\ other,\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ !(path\ ==\ other);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00375}00375\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00382}00382\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ cannot\ be\ tested}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00383}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_abb6aabf6ef3879246a9410a4b03cff6a_abb6aabf6ef3879246a9410a4b03cff6a}{00383}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_abb6aabf6ef3879246a9410a4b03cff6a_abb6aabf6ef3879246a9410a4b03cff6a}{OpenExternal}}()\ =>\ Application.OpenURL(System.IO.Path.GetFullPath(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a86fde1a385ff90d8002ae30a7c39cab9_a86fde1a385ff90d8002ae30a7c39cab9}{FolderPath}}));}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00384}00384\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00391}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ab20dbdb9f71c4595e668cf0cb5f5ad7c_ab20dbdb9f71c4595e668cf0cb5f5ad7c}{00391}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ab20dbdb9f71c4595e668cf0cb5f5ad7c_ab20dbdb9f71c4595e668cf0cb5f5ad7c}{Rename}}(String\ newFileOrFolderName)}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00392}00392\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00393}00393\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (String.IsNullOrEmpty(newFileOrFolderName)\ ==\ \textcolor{keyword}{false})}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00394}00394\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ m\_RelativePath\ =\ \$\textcolor{stringliteral}{"{}\{FolderPath\}/\{System.IO.Path.GetFileName(newFileOrFolderName)\}"{}};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00395}00395\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00396}00396\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00412}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a707c1a8b6f6fab6ad12485008e38ce41_a707c1a8b6f6fab6ad12485008e38ce41}{00412}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ GUID\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a707c1a8b6f6fab6ad12485008e38ce41_a707c1a8b6f6fab6ad12485008e38ce41}{CreateFolders}}()\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a707c1a8b6f6fab6ad12485008e38ce41_a707c1a8b6f6fab6ad12485008e38ce41}{CreateFolders}}(\textcolor{keyword}{this});}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00413}00413\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00419}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a012fbb0f39e57c0a44ec83dd408fcda3_a012fbb0f39e57c0a44ec83dd408fcda3}{00419}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{override}\ String\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a012fbb0f39e57c0a44ec83dd408fcda3_a012fbb0f39e57c0a44ec83dd408fcda3}{ToString}}()\ =>\ m\_RelativePath;}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00420}00420\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00430}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a37cffbb9ed1db3b0e77664ad01b6fd01_a37cffbb9ed1db3b0e77664ad01b6fd01}{00430}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{override}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a37cffbb9ed1db3b0e77664ad01b6fd01_a37cffbb9ed1db3b0e77664ad01b6fd01}{Equals}}(System.Object\ obj)}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00431}00431\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00432}00432\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (obj\ is\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00433}00433\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a16e59bfb7ec5500d91fa1e8baaed7ec3_a16e59bfb7ec5500d91fa1e8baaed7ec3}{Equals}}(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00434}00434\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (obj\ is\ String\ str)}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00435}00435\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a16e59bfb7ec5500d91fa1e8baaed7ec3_a16e59bfb7ec5500d91fa1e8baaed7ec3}{Equals}}(str);}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00436}00436\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00437}00437\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00438}00438\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00439}00439\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00444}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ab86e9330a2bab918bbad0e2cbadb58a8_ab86e9330a2bab918bbad0e2cbadb58a8}{00444}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{override}\ Int32\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ab86e9330a2bab918bbad0e2cbadb58a8_ab86e9330a2bab918bbad0e2cbadb58a8}{GetHashCode}}()\ =>\ m\_RelativePath.GetHashCode();}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00445}00445\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00446}00446\ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_path_8cs_source_l00447}00447\ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/_asset_8_properties_8cs_source.tex b/Docs~/latex/_asset_8_properties_8cs_source.tex
new file mode 100644
index 00000000..e7b2f7c5
--- /dev/null
+++ b/Docs~/latex/_asset_8_properties_8cs_source.tex
@@ -0,0 +1,102 @@
+\doxysubsection{Asset.\+Properties.\+cs}
+\hypertarget{_asset_8_properties_8cs_source}{}\label{_asset_8_properties_8cs_source}\index{P:/de.codesmile.assetdatabase/Editor/Asset.Properties.cs@{P:/de.codesmile.assetdatabase/Editor/Asset.Properties.cs}}
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00001}00001\ \textcolor{comment}{//\ Copyright\ (C)\ 2021-\/2023\ Steffen\ Itterheim}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00002}00002\ \textcolor{comment}{//\ Refer\ to\ included\ LICENSE\ file\ for\ terms\ and\ conditions.}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00003}00003\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00004}00004\ \textcolor{keyword}{using\ }System;}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00005}00005\ \textcolor{keyword}{using\ }System.Diagnostics.CodeAnalysis;}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00006}00006\ \textcolor{keyword}{using\ }UnityEditor;}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00007}00007\ \textcolor{keyword}{using\ }UnityEngine;}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00008}00008\ \textcolor{keyword}{using\ }Object\ =\ UnityEngine.Object;}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00009}00009\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00010}00010\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{namespace_code_smile_editor}{CodeSmileEditor}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00011}00011\ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00012}00012\ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{sealed}\ \textcolor{keyword}{partial\ class\ }Asset}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00013}00013\ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00035}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_ab39ec1f49ab79e8ae84c6a53a2458f2d_ab39ec1f49ab79e8ae84c6a53a2458f2d}{00035}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ Object\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ab39ec1f49ab79e8ae84c6a53a2458f2d_ab39ec1f49ab79e8ae84c6a53a2458f2d}{MainObject}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00036}00036\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00037}00037\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ This\ 'loads'\ the\ asset\ but\ most\ of\ the\ time\ simply\ returns\ the\ internally\ cached\ instance.}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00038}00038\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ We\ need\ to\ load\ the\ instance\ because\ the\ user\ may\ have\ called\ static\ SubAsset.SetMain().}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00039}00039\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{get}\ =>\ m\_MainObject\ =\ LoadMain();}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00040}00040\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{set}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00041}00041\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00042}00042\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset}{SubAsset}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_ac4fb08375dcad548d850eec212582519_ac4fb08375dcad548d850eec212582519}{SetMain}}(value,\ m\_AssetPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00043}00043\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ m\_MainObject\ =\ value;}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00044}00044\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00045}00045\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00046}00046\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00053}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a15e35df5acbfe3751310d7fd241a6295_a15e35df5acbfe3751310d7fd241a6295}{00053}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ Type\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a15e35df5acbfe3751310d7fd241a6295_a15e35df5acbfe3751310d7fd241a6295}{MainObjectType}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a3192f3d24b4397b10f50ef366ee3feba_a3192f3d24b4397b10f50ef366ee3feba}{GetMainType}}(m\_AssetPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00054}00054\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00061}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a54bbd4600c9787134d849c022cefe90e_a54bbd4600c9787134d849c022cefe90e}{00061}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a54bbd4600c9787134d849c022cefe90e_a54bbd4600c9787134d849c022cefe90e}{AssetPath}}\ =>\ m\_AssetPath;}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00062}00062\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00069}00069\ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00070}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a0084f5ad8a13c505013748101a81b1df_a0084f5ad8a13c505013748101a81b1df}{00070}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a0084f5ad8a13c505013748101a81b1df_a0084f5ad8a13c505013748101a81b1df}{MetaPath}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_af4219b5ed1497e66fd495b412688ecf3_af4219b5ed1497e66fd495b412688ecf3}{ToMeta}}(m\_AssetPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00071}00071\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00078}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a66a3fc7176ae79e7e9ee85df99c5ff7c_a66a3fc7176ae79e7e9ee85df99c5ff7c}{00078}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ GUID\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a66a3fc7176ae79e7e9ee85df99c5ff7c_a66a3fc7176ae79e7e9ee85df99c5ff7c}{Guid}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a942d35c4445bef86b8675fa4ee8893ee_a942d35c4445bef86b8675fa4ee8893ee}{GetGuid}}(m\_AssetPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00079}00079\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00086}00086\ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00087}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a2d3c3468bf091cc7260b4cdca91b4a55_a2d3c3468bf091cc7260b4cdca91b4a55}{00087}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ Int64\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a2d3c3468bf091cc7260b4cdca91b4a55_a2d3c3468bf091cc7260b4cdca91b4a55}{FileId}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a2adfcc36a6b34de943aedfdd1db882f6_a2adfcc36a6b34de943aedfdd1db882f6}{GetFileId}}(m\_MainObject);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00088}00088\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00092}00092\ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00093}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a68c0326ba0d934f74e65a06f805627e0_a68c0326ba0d934f74e65a06f805627e0}{00093}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ Texture2D\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a68c0326ba0d934f74e65a06f805627e0_a68c0326ba0d934f74e65a06f805627e0}{Icon}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a8039d1c88de4736a9f3e706e224efdff_a8039d1c88de4736a9f3e706e224efdff}{GetIcon}}(m\_AssetPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00094}00094\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00103}00103\ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00104}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_af8ffb2f0dfbb3585bd764056147d01b3_af8ffb2f0dfbb3585bd764056147d01b3}{00104}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ String\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_af8ffb2f0dfbb3585bd764056147d01b3_af8ffb2f0dfbb3585bd764056147d01b3}{OwningBundle}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle}{Bundle}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a17c3d7ba18536daa627d478d36aa7d95_a17c3d7ba18536daa627d478d36aa7d95}{GetOwningBundle}}(m\_AssetPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00105}00105\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00114}00114\ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00115}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a91f88014dec2b3bff50d35f595e6409d_a91f88014dec2b3bff50d35f595e6409d}{00115}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ String\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a91f88014dec2b3bff50d35f595e6409d_a91f88014dec2b3bff50d35f595e6409d}{OwningBundleVariant}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle}{Bundle}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a51999ea1e987b932993409830b86bad3_a51999ea1e987b932993409830b86bad3}{GetOwningBundleVariant}}(m\_AssetPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00116}00116\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00124}00124\ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00125}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a0ae61d10248f285be98d0bab84ca431e_a0ae61d10248f285be98d0bab84ca431e}{00125}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ String[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a0ae61d10248f285be98d0bab84ca431e_a0ae61d10248f285be98d0bab84ca431e}{DirectDependencies}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency}{Dependency}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a3fd889e4426d5d12102ee08e7b291a0f_a3fd889e4426d5d12102ee08e7b291a0f}{GetDirect}}(m\_AssetPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00126}00126\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00134}00134\ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00135}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_af2fc7a5ab674d2293e0c80bcceb709f6_af2fc7a5ab674d2293e0c80bcceb709f6}{00135}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ String[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_af2fc7a5ab674d2293e0c80bcceb709f6_af2fc7a5ab674d2293e0c80bcceb709f6}{Dependencies}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency}{Dependency}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a5281d751f8d22a0cf586636bb925cbca_a5281d751f8d22a0cf586636bb925cbca}{GetAll}}(m\_AssetPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00136}00136\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00143}00143\ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00144}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a171f2bcee950b6e79886c7507f9beb27_a171f2bcee950b6e79886c7507f9beb27}{00144}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ Type\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a171f2bcee950b6e79886c7507f9beb27_a171f2bcee950b6e79886c7507f9beb27}{DefaultImporter}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer}{Importer}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a19ff837d74e7666438a7938cf0f7126d_a19ff837d74e7666438a7938cf0f7126d}{GetDefault}}(m\_AssetPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00145}00145\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00155}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a57983fe52530259a94425f11144dcf12_a57983fe52530259a94425f11144dcf12}{00155}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ Type\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a57983fe52530259a94425f11144dcf12_a57983fe52530259a94425f11144dcf12}{ActiveImporter}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00156}00156\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00157}00157\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{get}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00158}00158\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00159}00159\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ overridden\ =\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer}{Importer}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_ad5caea48acd697af0a7787ebcb643512_ad5caea48acd697af0a7787ebcb643512}{GetOverride}}(m\_AssetPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00160}00160\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ overridden\ !=\ \textcolor{keyword}{null}\ ?\ overridden\ :\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer}{Importer}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a19ff837d74e7666438a7938cf0f7126d_a19ff837d74e7666438a7938cf0f7126d}{GetDefault}}(m\_AssetPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00161}00161\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00162}00162\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{set}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00163}00163\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00164}00164\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (value\ ==\ \textcolor{keyword}{null})}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00165}00165\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer}{Importer}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_ad3ff923faecf93e9371b98d6217be0df_ad3ff923faecf93e9371b98d6217be0df}{ClearOverride}}(m\_AssetPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00166}00166\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{else}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00167}00167\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer}{Importer}}.SetImporterOverride(value,\ m\_AssetPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00168}00168\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00169}00169\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00170}00170\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00177}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_afd494f6a711cc6e5683d95823c87f916_afd494f6a711cc6e5683d95823c87f916}{00177}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ Type[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_afd494f6a711cc6e5683d95823c87f916_afd494f6a711cc6e5683d95823c87f916}{AvailableImporters}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer}{Importer}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_aee616cbd3cbe9e7b8256aed74fe20254_aee616cbd3cbe9e7b8256aed74fe20254}{GetAvailable}}(m\_AssetPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00178}00178\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00188}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_ac3eef672ee8ea3c14524ee2a1d7fbfef_ac3eef672ee8ea3c14524ee2a1d7fbfef}{00188}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ac3eef672ee8ea3c14524ee2a1d7fbfef_ac3eef672ee8ea3c14524ee2a1d7fbfef}{IsImporterOverridden}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a57983fe52530259a94425f11144dcf12_a57983fe52530259a94425f11144dcf12}{ActiveImporter}}\ !=\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a171f2bcee950b6e79886c7507f9beb27_a171f2bcee950b6e79886c7507f9beb27}{DefaultImporter}};}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00189}00189\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00196}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a537c910df9f9f5d24a916b70934f4de8_a537c910df9f9f5d24a916b70934f4de8}{00196}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ String[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a537c910df9f9f5d24a916b70934f4de8_a537c910df9f9f5d24a916b70934f4de8}{Labels}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00197}00197\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00198}00198\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{get}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label}{Label}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf}{GetAll}}(m\_MainObject);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00199}00199\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{set}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label}{Label}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_a82888b12b37f839fbabcb62e8fe169af_a82888b12b37f839fbabcb62e8fe169af}{SetAll}}(m\_MainObject,\ value);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00200}00200\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00201}00201\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00209}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_af3886ebc9167b6615000ad5835ded3d2_af3886ebc9167b6615000ad5835ded3d2}{00209}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_af3886ebc9167b6615000ad5835ded3d2_af3886ebc9167b6615000ad5835ded3d2}{IsDeleted}}\ =>\ m\_AssetPath\ ==\ \textcolor{keyword}{null}\ \&\&\ m\_MainObject\ ==\ \textcolor{keyword}{null};}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00210}00210\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00219}00219\ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00220}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_ae1533f44e1d6a3921dcf9dc0c73e5721_ae1533f44e1d6a3921dcf9dc0c73e5721}{00220}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ae1533f44e1d6a3921dcf9dc0c73e5721_ae1533f44e1d6a3921dcf9dc0c73e5721}{IsForeign}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status}{Status}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_a7e01a4788d69647e6e8340c25603bf55_a7e01a4788d69647e6e8340c25603bf55}{IsForeign}}(m\_MainObject);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00221}00221\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00230}00230\ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00231}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a993540e3a2141abe3463b2a75655f931_a993540e3a2141abe3463b2a75655f931}{00231}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a993540e3a2141abe3463b2a75655f931_a993540e3a2141abe3463b2a75655f931}{IsNative}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status}{Status}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_ae18940b59316f20181bba69e710e0cba_ae18940b59316f20181bba69e710e0cba}{IsNative}}(m\_MainObject);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00232}00232\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00236}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a16590be90618aaa5682dbdc597fd5223_a16590be90618aaa5682dbdc597fd5223}{00236}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a16590be90618aaa5682dbdc597fd5223_a16590be90618aaa5682dbdc597fd5223}{IsScene}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status}{Status}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_a6b15799af1dbe039078b5e8c2e435dc2_a6b15799af1dbe039078b5e8c2e435dc2}{IsScene}}(m\_MainObject);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00237}00237\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00247}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_accd20b073ee732df08cf6ba0b9b8a389_accd20b073ee732df08cf6ba0b9b8a389}{00247}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ Object[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_accd20b073ee732df08cf6ba0b9b8a389_accd20b073ee732df08cf6ba0b9b8a389}{SubAssets}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a16590be90618aaa5682dbdc597fd5223_a16590be90618aaa5682dbdc597fd5223}{IsScene}}\ ?\ \textcolor{keyword}{new}\ Object[0]\ :\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset}{SubAsset}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_a5a074e1dfad018aec7956375a8cf6099_a5a074e1dfad018aec7956375a8cf6099}{LoadAll}}(m\_AssetPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00248}00248\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00258}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_ace611059f2ab296e1be5b51d33617000_ace611059f2ab296e1be5b51d33617000}{00258}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ Object[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ace611059f2ab296e1be5b51d33617000_ace611059f2ab296e1be5b51d33617000}{VisibleSubAssets}}\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a16590be90618aaa5682dbdc597fd5223_a16590be90618aaa5682dbdc597fd5223}{IsScene}}\ ?\ \textcolor{keyword}{new}\ Object[0]\ :\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset}{SubAsset}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_aa1295ba7d9693917c8af65241aa0d3ae_aa1295ba7d9693917c8af65241aa0d3ae}{LoadVisible}}(m\_AssetPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00259}00259\ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_properties_8cs_source_l00260}00260\ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/_asset_8_static_8cs_source.tex b/Docs~/latex/_asset_8_static_8cs_source.tex
new file mode 100644
index 00000000..5d11ce0b
--- /dev/null
+++ b/Docs~/latex/_asset_8_static_8cs_source.tex
@@ -0,0 +1,90 @@
+\doxysubsection{Asset.\+Static.\+cs}
+\hypertarget{_asset_8_static_8cs_source}{}\label{_asset_8_static_8cs_source}\index{P:/de.codesmile.assetdatabase/Editor/Asset.Static.cs@{P:/de.codesmile.assetdatabase/Editor/Asset.Static.cs}}
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00001}00001\ \textcolor{comment}{//\ Copyright\ (C)\ 2021-\/2023\ Steffen\ Itterheim}}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00002}00002\ \textcolor{comment}{//\ Refer\ to\ included\ LICENSE\ file\ for\ terms\ and\ conditions.}}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00003}00003\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00004}00004\ \textcolor{keyword}{using\ }System;}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00005}00005\ \textcolor{keyword}{using\ }System.Diagnostics.CodeAnalysis;}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00006}00006\ \textcolor{keyword}{using\ }UnityEditor;}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00007}00007\ \textcolor{keyword}{using\ }UnityEngine;}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00008}00008\ \textcolor{keyword}{using\ }Object\ =\ UnityEngine.Object;}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00009}00009\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00010}00010\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{namespace_code_smile_editor}{CodeSmileEditor}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00011}00011\ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00012}00012\ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{sealed}\ \textcolor{keyword}{partial\ class\ }Asset}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00013}00013\ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00014}00014\ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ \textcolor{keyword}{static}\ String\ s\_LastErrorMessage\ =\ String.Empty;}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00015}00015\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00025}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a3192f3d24b4397b10f50ef366ee3feba_a3192f3d24b4397b10f50ef366ee3feba}{00025}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Type\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a3192f3d24b4397b10f50ef366ee3feba_a3192f3d24b4397b10f50ef366ee3feba}{GetMainType}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ AssetDatabase.GetMainAssetTypeAtPath(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00026}00026\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00041}00041\ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00042}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a82b0bb0beb5f5422951631789bca4256_a82b0bb0beb5f5422951631789bca4256}{00042}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Type\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a82b0bb0beb5f5422951631789bca4256_a82b0bb0beb5f5422951631789bca4256}{GetMainType}}(GUID\ guid)}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00043}00043\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00044}00044\ \textcolor{preprocessor}{\#if\ UNITY\_2023\_2\_OR\_NEWER\ }\textcolor{comment}{//\ It's\ also\ available\ in\ 2022.2\ but\ not\ in\ the\ early\ patch\ versions\ (eg\ 7f1\ onwards)}}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00045}00045\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.GetMainAssetTypeFromGUID(guid);}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00046}00046\ \textcolor{preprocessor}{\#else}}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00047}00047\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a3192f3d24b4397b10f50ef366ee3feba_a3192f3d24b4397b10f50ef366ee3feba}{GetMainType}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Get}}(guid));}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00048}00048\ \textcolor{preprocessor}{\#endif}}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00049}00049\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00050}00050\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00061}00061\ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00062}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_ab9e60595a8cc5748f38f91b3ed83aeca_ab9e60595a8cc5748f38f91b3ed83aeca}{00062}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Type\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ab9e60595a8cc5748f38f91b3ed83aeca_ab9e60595a8cc5748f38f91b3ed83aeca}{GetSubType}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path,\ Int64\ fileId)\ =>\ AssetDatabase.GetTypeFromPathAndFileID(path,\ fileId);}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00063}00063\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00078}00078\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00079}00079\ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ ValueTuple\ makes\ doxygen\ accept\ it\ as\ documented,\ see:\ https://github.com/doxygen/doxygen/issues/9618}}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00080}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a0b39fc9791994323a44a1126f3a41b99_a0b39fc9791994323a44a1126f3a41b99}{00080}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ ValueTuple\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a0b39fc9791994323a44a1126f3a41b99_a0b39fc9791994323a44a1126f3a41b99}{GetGuidAndFileId}}([NotNull]\ Object\ asset)}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00081}00081\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00082}00082\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (asset\ ==\ \textcolor{keyword}{null})}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00083}00083\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ (\textcolor{keyword}{new}\ GUID(),\ 0L);}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00084}00084\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00085}00085\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ explicit\ variable\ +\ assign\ because\ Unity\ 2021\ has\ both\ long\ and\ int\ variants\ of\ the\ TryGetGUID*\ method}}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00086}00086\ \ \ \ \ \ \ \ \ \ \ \ \ var\ localId\ =\ Int64.MaxValue;}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00087}00087\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.TryGetGUIDAndLocalFileIdentifier(asset,\ out\ var\ guid,\ out\ localId)}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00088}00088\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ?\ (\textcolor{keyword}{new}\ GUID(guid),\ localId)}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00089}00089\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ :\ (\textcolor{keyword}{new}\ GUID(),\ 0L);}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00090}00090\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00091}00091\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00103}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a856bd8735a17035cea08243c66e0eee8_a856bd8735a17035cea08243c66e0eee8}{00103}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ GUID\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a856bd8735a17035cea08243c66e0eee8_a856bd8735a17035cea08243c66e0eee8}{GetGuid}}([NotNull]\ Object\ asset)}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00104}00104\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00105}00105\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (asset\ ==\ \textcolor{keyword}{null})}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00106}00106\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{new}\ GUID();}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00107}00107\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00108}00108\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ explicit\ variable\ +\ assign\ because\ Unity\ 2021\ has\ both\ long\ and\ int\ variants\ of\ the\ TryGetGUID*\ method}}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00109}00109\ \ \ \ \ \ \ \ \ \ \ \ \ var\ localId\ =\ Int64.MaxValue;}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00110}00110\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.TryGetGUIDAndLocalFileIdentifier(asset,\ out\ var\ guid,\ out\ localId)}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00111}00111\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ?\ \textcolor{keyword}{new}\ GUID(guid)}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00112}00112\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ :\ \textcolor{keyword}{new}\ GUID();}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00113}00113\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00114}00114\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00126}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a2adfcc36a6b34de943aedfdd1db882f6_a2adfcc36a6b34de943aedfdd1db882f6}{00126}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Int64\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a2adfcc36a6b34de943aedfdd1db882f6_a2adfcc36a6b34de943aedfdd1db882f6}{GetFileId}}([NotNull]\ Object\ asset)}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00127}00127\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00128}00128\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (asset\ ==\ \textcolor{keyword}{null})}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00129}00129\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ 0L;}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00130}00130\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00131}00131\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ explicit\ variable\ +\ assign\ because\ Unity\ 2021\ has\ both\ long\ and\ int\ variants\ of\ the\ TryGetGUID*\ method}}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00132}00132\ \ \ \ \ \ \ \ \ \ \ \ \ var\ localId\ =\ Int64.MaxValue;}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00133}00133\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.TryGetGUIDAndLocalFileIdentifier(asset,\ out\ var\ \_,\ out\ localId)\ ?\ localId\ :\ 0L;}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00134}00134\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00135}00135\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00144}00144\ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00145}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a8039d1c88de4736a9f3e706e224efdff_a8039d1c88de4736a9f3e706e224efdff}{00145}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Texture2D\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a8039d1c88de4736a9f3e706e224efdff_a8039d1c88de4736a9f3e706e224efdff}{GetIcon}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ AssetDatabase.GetCachedIcon(path)\ as\ Texture2D;}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00146}00146\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00155}00155\ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00156}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_ac028cbad5fe3dab688c9dff304f80ad2_ac028cbad5fe3dab688c9dff304f80ad2}{00156}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Texture2D\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ac028cbad5fe3dab688c9dff304f80ad2_ac028cbad5fe3dab688c9dff304f80ad2}{GetIcon}}([NotNull]\ Object\ asset)\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ac028cbad5fe3dab688c9dff304f80ad2_ac028cbad5fe3dab688c9dff304f80ad2}{GetIcon}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Get}}(asset));}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00157}00157\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00172}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{00172}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ String\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{GetLastErrorMessage}}()\ =>\ s\_LastErrorMessage;}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00173}00173\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00174}00174\ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ SetLastErrorMessage(String\ message)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00175}00175\ \ \ \ \ \ \ \ \ \ \ \ \ s\_LastErrorMessage\ =\ message\ !=\ \textcolor{keyword}{null}\ ?\ message\ :\ String.Empty;}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00176}00176\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00177}00177\ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ \textcolor{keyword}{static}\ Boolean\ Succeeded(String\ possibleErrorMessage)}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00178}00178\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00179}00179\ \ \ \ \ \ \ \ \ \ \ \ \ SetLastErrorMessage(possibleErrorMessage);}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00180}00180\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ String.IsNullOrEmpty(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{GetLastErrorMessage}}());}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00181}00181\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00182}00182\ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_static_8cs_source_l00183}00183\ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/_asset_8_status_8cs_source.tex b/Docs~/latex/_asset_8_status_8cs_source.tex
new file mode 100644
index 00000000..9a6159ae
--- /dev/null
+++ b/Docs~/latex/_asset_8_status_8cs_source.tex
@@ -0,0 +1,44 @@
+\doxysubsection{Asset.\+Status.\+cs}
+\hypertarget{_asset_8_status_8cs_source}{}\label{_asset_8_status_8cs_source}\index{P:/de.codesmile.assetdatabase/Editor/Asset.Status.cs@{P:/de.codesmile.assetdatabase/Editor/Asset.Status.cs}}
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00001}00001\ \textcolor{comment}{//\ Copyright\ (C)\ 2021-\/2023\ Steffen\ Itterheim}}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00002}00002\ \textcolor{comment}{//\ Refer\ to\ included\ LICENSE\ file\ for\ terms\ and\ conditions.}}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00003}00003\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00004}00004\ \textcolor{keyword}{using\ }NUnit.Framework;}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00005}00005\ \textcolor{keyword}{using\ }System;}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00006}00006\ \textcolor{keyword}{using\ }System.Diagnostics.CodeAnalysis;}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00007}00007\ \textcolor{keyword}{using\ }UnityEditor;}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00008}00008\ \textcolor{keyword}{using\ }Object\ =\ UnityEngine.Object;}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00009}00009\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00010}00010\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{namespace_code_smile_editor}{CodeSmileEditor}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00011}00011\ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00012}00012\ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{sealed}\ \textcolor{keyword}{partial\ class\ }Asset}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00013}00013\ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00017}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status}{00017}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keyword}{class\ }\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status}{Status}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00018}00018\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00034}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_afcaefd0248a5d2a59a833699fb4f1d51_afcaefd0248a5d2a59a833699fb4f1d51}{00034}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_afcaefd0248a5d2a59a833699fb4f1d51_afcaefd0248a5d2a59a833699fb4f1d51}{IsImported}}([NotNull]\ Object\ instance)\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database}{Database}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a9f98188e77af88fa79da70d1765765ff_a9f98188e77af88fa79da70d1765765ff}{Contains}}(instance);}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00035}00035\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00052}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_a377ccf450db930a010100f0d89b09285_a377ccf450db930a010100f0d89b09285}{00052}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_a377ccf450db930a010100f0d89b09285_a377ccf450db930a010100f0d89b09285}{IsImported}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ path\ !=\ \textcolor{keyword}{null}\ \&\&\ path.Exists;}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00053}00053\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00064}00064\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00065}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_a8d5877df6d14dca99ed79ec50f067783_a8d5877df6d14dca99ed79ec50f067783}{00065}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_a8d5877df6d14dca99ed79ec50f067783_a8d5877df6d14dca99ed79ec50f067783}{IsLoaded}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ AssetDatabase.IsMainAssetAtPathLoaded(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00066}00066\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00076}00076\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00077}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_a2e6860cd8479a284c3c81f4377ed100a_a2e6860cd8479a284c3c81f4377ed100a}{00077}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_a2e6860cd8479a284c3c81f4377ed100a_a2e6860cd8479a284c3c81f4377ed100a}{IsMain}}([NotNull]\ Object\ asset)\ =>\ AssetDatabase.IsMainAsset(asset);}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00078}00078\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00088}00088\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00089}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_ac715a31d20c073c37844f5d8839496cd_ac715a31d20c073c37844f5d8839496cd}{00089}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_ac715a31d20c073c37844f5d8839496cd_ac715a31d20c073c37844f5d8839496cd}{IsSub}}([NotNull]\ Object\ asset)\ =>\ AssetDatabase.IsSubAsset(asset);}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00090}00090\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00105}00105\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00106}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_a7e01a4788d69647e6e8340c25603bf55_a7e01a4788d69647e6e8340c25603bf55}{00106}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_a7e01a4788d69647e6e8340c25603bf55_a7e01a4788d69647e6e8340c25603bf55}{IsForeign}}([NotNull]\ Object\ asset)\ =>\ AssetDatabase.IsForeignAsset(asset);}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00107}00107\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00122}00122\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00123}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_ae18940b59316f20181bba69e710e0cba_ae18940b59316f20181bba69e710e0cba}{00123}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_ae18940b59316f20181bba69e710e0cba_ae18940b59316f20181bba69e710e0cba}{IsNative}}([NotNull]\ Object\ asset)\ =>\ AssetDatabase.IsNativeAsset(asset);}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00124}00124\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00130}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_a6b15799af1dbe039078b5e8c2e435dc2_a6b15799af1dbe039078b5e8c2e435dc2}{00130}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_a6b15799af1dbe039078b5e8c2e435dc2_a6b15799af1dbe039078b5e8c2e435dc2}{IsScene}}([NotNull]\ Object\ asset)\ =>\ asset\ is\ SceneAsset;}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00131}00131\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00132}00132\ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_status_8cs_source_l00133}00133\ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/_asset_8_sub_asset_8cs_source.tex b/Docs~/latex/_asset_8_sub_asset_8cs_source.tex
new file mode 100644
index 00000000..ec3689c3
--- /dev/null
+++ b/Docs~/latex/_asset_8_sub_asset_8cs_source.tex
@@ -0,0 +1,61 @@
+\doxysubsection{Asset.\+Sub\+Asset.\+cs}
+\hypertarget{_asset_8_sub_asset_8cs_source}{}\label{_asset_8_sub_asset_8cs_source}\index{P:/de.codesmile.assetdatabase/Editor/Asset.SubAsset.cs@{P:/de.codesmile.assetdatabase/Editor/Asset.SubAsset.cs}}
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00001}00001\ \textcolor{comment}{//\ Copyright\ (C)\ 2021-\/2023\ Steffen\ Itterheim}}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00002}00002\ \textcolor{comment}{//\ Refer\ to\ included\ LICENSE\ file\ for\ terms\ and\ conditions.}}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00003}00003\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00004}00004\ \textcolor{keyword}{using\ }System;}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00005}00005\ \textcolor{keyword}{using\ }System.Diagnostics.CodeAnalysis;}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00006}00006\ \textcolor{keyword}{using\ }UnityEditor;}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00007}00007\ \textcolor{keyword}{using\ }Object\ =\ UnityEngine.Object;}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00008}00008\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00009}00009\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{namespace_code_smile_editor}{CodeSmileEditor}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00010}00010\ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00011}00011\ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{sealed}\ \textcolor{keyword}{partial\ class\ }Asset}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00012}00012\ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00016}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset}{00016}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keyword}{class\ }\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset}{SubAsset}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00017}00017\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00038}00038\ \ \ \ \ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00039}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_aba5beee6f12d0eed16af62bd8e96d6e6_aba5beee6f12d0eed16af62bd8e96d6e6}{00039}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_aba5beee6f12d0eed16af62bd8e96d6e6_aba5beee6f12d0eed16af62bd8e96d6e6}{Extract}}([NotNull]\ Object\ subAsset,\ [NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ destinationPath)}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00040}00040\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00041}00041\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(subAsset,\ nameof(subAsset));}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00042}00042\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(destinationPath,\ nameof(destinationPath));}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00043}00043\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00044}00044\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ Succeeded(AssetDatabase.ExtractAsset(subAsset,\ destinationPath));}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00045}00045\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00046}00046\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00058}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_a651286de3f2c9fef50eb5720f0a1b3a8_a651286de3f2c9fef50eb5720f0a1b3a8}{00058}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_a651286de3f2c9fef50eb5720f0a1b3a8_a651286de3f2c9fef50eb5720f0a1b3a8}{Add}}([NotNull]\ Object\ subAssetInstance,\ [NotNull]\ Object\ asset)}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00059}00059\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00060}00060\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(subAssetInstance,\ nameof(subAssetInstance));}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00061}00061\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.SubObjectIsGameObject(subAssetInstance);}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00062}00062\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.AlreadyAnAsset(subAssetInstance);}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00063}00063\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(asset,\ nameof(asset));}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00064}00064\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.NotAnAssetWithAssetExtension(asset);}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00065}00065\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00066}00066\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.AddObjectToAsset(subAssetInstance,\ asset);}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00067}00067\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00068}00068\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00078}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_af2517f14782bec5f449da4bc4937cf8c_af2517f14782bec5f449da4bc4937cf8c}{00078}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_af2517f14782bec5f449da4bc4937cf8c_af2517f14782bec5f449da4bc4937cf8c}{Remove}}([NotNull]\ Object\ subAsset)}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00079}00079\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00080}00080\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(subAsset,\ nameof(subAsset));}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00081}00081\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00082}00082\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.RemoveObjectFromAsset(subAsset);}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00083}00083\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00084}00084\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00097}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_ac4fb08375dcad548d850eec212582519_ac4fb08375dcad548d850eec212582519}{00097}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_ac4fb08375dcad548d850eec212582519_ac4fb08375dcad548d850eec212582519}{SetMain}}([NotNull]\ Object\ subAsset,\ [NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00098}00098\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00099}00099\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.SetMainObject(subAsset,\ path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00100}00100\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file}{File}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_ae11a13bfe131ec8b20a5a5667e75ec97_ae11a13bfe131ec8b20a5a5667e75ec97}{Import}}(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00101}00101\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00102}00102\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00115}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_a61bfe373deb21386f749d2f947da5476_a61bfe373deb21386f749d2f947da5476}{00115}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_a61bfe373deb21386f749d2f947da5476_a61bfe373deb21386f749d2f947da5476}{SetMain}}([NotNull]\ Object\ subAsset,\ [NotNull]\ Object\ asset)\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_a61bfe373deb21386f749d2f947da5476_a61bfe373deb21386f749d2f947da5476}{SetMain}}(subAsset,\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Get}}(asset));}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00116}00116\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00136}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_a5a074e1dfad018aec7956375a8cf6099_a5a074e1dfad018aec7956375a8cf6099}{00136}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Object[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_a5a074e1dfad018aec7956375a8cf6099_a5a074e1dfad018aec7956375a8cf6099}{LoadAll}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ AssetDatabase.LoadAllAssetsAtPath(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00137}00137\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00159}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_aa1295ba7d9693917c8af65241aa0d3ae_aa1295ba7d9693917c8af65241aa0d3ae}{00159}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Object[]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_aa1295ba7d9693917c8af65241aa0d3ae_aa1295ba7d9693917c8af65241aa0d3ae}{LoadVisible}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ AssetDatabase.LoadAllAssetRepresentationsAtPath(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00160}00160\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00161}00161\ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_sub_asset_8cs_source_l00162}00162\ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/_asset_8_throw_if_8cs_source.tex b/Docs~/latex/_asset_8_throw_if_8cs_source.tex
new file mode 100644
index 00000000..eb0771bc
--- /dev/null
+++ b/Docs~/latex/_asset_8_throw_if_8cs_source.tex
@@ -0,0 +1,168 @@
+\doxysubsection{Asset.\+Throw\+If.\+cs}
+\hypertarget{_asset_8_throw_if_8cs_source}{}\label{_asset_8_throw_if_8cs_source}\index{P:/de.codesmile.assetdatabase/Editor/Asset.ThrowIf.cs@{P:/de.codesmile.assetdatabase/Editor/Asset.ThrowIf.cs}}
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00001}00001\ \textcolor{comment}{//\ Copyright\ (C)\ 2021-\/2023\ Steffen\ Itterheim}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00002}00002\ \textcolor{comment}{//\ Refer\ to\ included\ LICENSE\ file\ for\ terms\ and\ conditions.}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00003}00003\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00004}00004\ \textcolor{keyword}{using\ }System;}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00005}00005\ \textcolor{keyword}{using\ }System.IO;}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00006}00006\ \textcolor{keyword}{using\ }UnityEditor;}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00007}00007\ \textcolor{keyword}{using\ }UnityEngine;}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00008}00008\ \textcolor{keyword}{using\ }Object\ =\ System.Object;}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00009}00009\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00010}00010\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{namespace_code_smile_editor}{CodeSmileEditor}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00011}00011\ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00012}00012\ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{sealed}\ \textcolor{keyword}{partial\ class\ }Asset}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00013}00013\ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00017}00017\ \ \ \ \ \ \ \ \ \textcolor{keyword}{internal}\ \textcolor{keyword}{static}\ \textcolor{keyword}{class\ }ThrowIf}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00018}00018\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00019}00019\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ ArgumentIsNull(Object\ obj,\ String\ argName)}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00020}00020\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00021}00021\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (obj\ ==\ \textcolor{keyword}{null})}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00022}00022\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ \textcolor{keyword}{new}\ ArgumentNullException(argName);}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00023}00023\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00024}00024\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00025}00025\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ DoesNotExistInFileSystem(Path\ path)}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00026}00026\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00027}00027\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (path.ExistsInFileSystem\ ==\ \textcolor{keyword}{false})}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00028}00028\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ \textcolor{keyword}{new}\ FileNotFoundException(\$\textcolor{stringliteral}{"{}path\ does\ not\ exist:\ '\{path\}'"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00029}00029\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00030}00030\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00031}00031\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ AlreadyAnAsset(UnityEngine.Object\ obj)}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00032}00032\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00033}00033\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (Status.IsImported(obj))}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00034}00034\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ \textcolor{keyword}{new}\ ArgumentException(\$\textcolor{stringliteral}{"{}object\ already\ is\ an\ asset\ file:\ \{obj\}"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00035}00035\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00036}00036\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00037}00037\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ AssetPathNotInDatabase(Path\ path)}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00038}00038\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00039}00039\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (path.Exists\ ==\ \textcolor{keyword}{false})}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00040}00040\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ \textcolor{keyword}{new}\ ArgumentException(\$\textcolor{stringliteral}{"{}path\ does\ not\ exist\ or\ not\ imported:\ \{path\}"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00041}00041\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00042}00042\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00043}00043\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ NotInDatabase(UnityEngine.Object\ obj)}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00044}00044\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00045}00045\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (Status.IsImported(obj)\ ==\ \textcolor{keyword}{false})}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00046}00046\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ \textcolor{keyword}{new}\ ArgumentException(\$\textcolor{stringliteral}{"{}object\ is\ not\ an\ asset:\ \{obj\}"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00047}00047\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00048}00048\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00049}00049\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ NotAnAssetGuid(GUID\ guid)}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00050}00050\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00051}00051\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (Path.Get(guid)\ ==\ \textcolor{keyword}{null})}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00052}00052\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ \textcolor{keyword}{new}\ ArgumentException(\$\textcolor{stringliteral}{"{}guid\ is\ not\ an\ asset:\ \{guid\}"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00053}00053\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00054}00054\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00055}00055\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{/*}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00056}00056\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ public\ static\ void\ AssetDeleted(Asset\ asset)}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00057}00057\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \{}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00058}00058\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ if\ (asset.IsDeleted)}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00059}00059\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ throw\ new\ InvalidOperationException("{}asset\ has\ been\ deleted"{});}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00060}00060\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00061}00061\ \textcolor{comment}{}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00062}00062\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ public\ static\ void\ AssetNotImported(Path\ path,\ Type\ assetType)}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00063}00063\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \{}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00064}00064\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ if\ (assetType\ ==\ null)}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00065}00065\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00066}00066\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ //\ path\ exists\ in\ file\ system\ yet\ ADB\ does\ not\ know\ its\ type\ -\/\ missing\ Import()\ ?}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00067}00067\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ throw\ new\ AssetLoadException("{}cannot\ load\ asset\ -\/\ file\ exists\ but\ asset\ type\ is\ null,\ "{}\ +}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00068}00068\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \$"{}most\ likely\ the\ asset\ has\ not\ been\ imported;\ path:\ \{path\}"{});}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00069}00069\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00070}00070\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00071}00071\ \textcolor{comment}{}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00072}00072\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ public\ static\ void\ AssetTypeMismatch(Path\ path,\ Type\ assetType)\ where\ T\ :\ UnityEngine.Object}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00073}00073\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \{}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00074}00074\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ if\ (typeof(T).IsAssignableFrom(assetType)\ ==\ false)}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00075}00075\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00076}00076\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ //\ types\ just\ don't\ match}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00077}00077\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ throw\ new\ AssetLoadException(\$"{}cannot\ load\ asset,\ type\ mismatch:\ \{typeof(T)\}\ "{}\ +}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00078}00078\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \$"{}not\ assignable\ from\ asset\ type:\ \{assetType.FullName\};\ path:\ \{path\}"{});}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00079}00079\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00080}00080\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00081}00081\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ */}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00082}00082\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00083}00083\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ AssetLoadReturnedNull(UnityEngine.Object\ obj,\ Path\ path)}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00084}00084\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00085}00085\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (obj\ ==\ \textcolor{keyword}{null})}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00086}00086\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00087}00087\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ path\ exists\ +\ type\ is\ known,\ yet\ load\ throws\ null?}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00088}00088\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ Probably\ ADB\ or\ asset\ in\ invalid\ state\ ...}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00089}00089\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ \textcolor{keyword}{new}\ AssetLoadException(\textcolor{stringliteral}{"{}asset\ load\ returned\ null\ -\/\ this\ can\ occur\ if\ the\ AssetDatabase\ "{}}\ +}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00090}00090\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{stringliteral}{"{}is\ currently\ initializing\ (eg\ static\ ctor)\ or\ when\ importing\ an\ asset\ "{}}\ +}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00091}00091\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{stringliteral}{"{}async\ or\ while\ ADB\ is\ 'paused',\ or\ if\ the\ type\ does\ not\ math,\ or\ "{}}\ +}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00092}00092\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \$\textcolor{stringliteral}{"{}some\ other\ reason\ (please\ report);\ path:\ \{path\}"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00093}00093\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00094}00094\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00095}00095\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00096}00096\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ PathIsNotValid(String\ path)}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00097}00097\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00098}00098\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (Path.IsValid(path)\ ==\ \textcolor{keyword}{false})}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00099}00099\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ \textcolor{keyword}{new}\ ArgumentException(\$\textcolor{stringliteral}{"{}invalid\ path:\ \{GetLastErrorMessage()\}"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00100}00100\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00101}00101\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00102}00102\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ NotAProjectPath(String\ fullPath)}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00103}00103\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00104}00104\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ rootPath\ =\ Path.FullProjectPath;}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00105}00105\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (fullPath.StartsWith(rootPath)\ ==\ \textcolor{keyword}{false})}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00106}00106\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00107}00107\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ \textcolor{keyword}{new}\ ArgumentException(}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00108}00108\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \$\textcolor{stringliteral}{"{}invalid\ relative\ or\ project\ path:\ '\{fullPath\}'\ -\/\ relative\ paths\ must\ start\ with\ 'Assets',\ full\ paths\ must\ include\ the\ project's\ root\ directory"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00109}00109\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00110}00110\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00111}00111\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00112}00112\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ NullOrWhitespace(String\ param,\ String\ paramName)}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00113}00113\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00114}00114\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (param\ ==\ \textcolor{keyword}{null})}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00115}00115\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ \textcolor{keyword}{new}\ ArgumentNullException(\$\textcolor{stringliteral}{"{}\{paramName\}\ is\ null"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00116}00116\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (String.IsNullOrWhiteSpace(param))}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00117}00117\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ \textcolor{keyword}{new}\ ArgumentException(\$\textcolor{stringliteral}{"{}\{paramName\}\ is\ empty\ or\ whitespace"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00118}00118\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00119}00119\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00120}00120\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ ContainsPathSeparators(String\ fileName,\ String\ paramName)}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00121}00121\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00122}00122\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ normalized\ =\ fileName.ToForwardSlashes();}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00123}00123\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (normalized.Contains(\textcolor{charliteral}{'/'}))}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00124}00124\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ \textcolor{keyword}{new}\ ArgumentException(\$\textcolor{stringliteral}{"{}filename\ contains\ path\ separators:\ '\{fileName\}'"{}},\ paramName);}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00125}00125\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00126}00126\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00127}00127\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ SubObjectIsGameObject(UnityEngine.Object\ subObject)}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00128}00128\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00129}00129\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (subObject\ is\ GameObject\ go)}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00130}00130\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ \textcolor{keyword}{new}\ ArgumentException(\$\textcolor{stringliteral}{"{}sub\ assets\ must\ not\ be\ of\ type\ GameObject:\ \{subObject\}"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00131}00131\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00132}00132\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00133}00133\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ NotAnAssetWithAssetExtension(UnityEngine.Object\ assetObject)}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00134}00134\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00135}00135\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ path\ =\ Path.Get(assetObject);}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00136}00136\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (path.Extension.Equals(\textcolor{stringliteral}{"{}.asset"{}})\ ==\ \textcolor{keyword}{false})}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00137}00137\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ \textcolor{keyword}{new}\ ArgumentException(\textcolor{stringliteral}{"{}sub\ assets\ only\ supported\ with\ '.asset'\ extension:\ \{path\}"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00138}00138\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00139}00139\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00140}00140\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ ExtensionIsNotUnityPackage(Path\ path)}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00141}00141\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00142}00142\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (path.Extension.ToLower().Equals(\textcolor{stringliteral}{"{}.unitypackage"{}})\ ==\ \textcolor{keyword}{false})}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00143}00143\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ \textcolor{keyword}{new}\ ArgumentException(\$\textcolor{stringliteral}{"{}file\ does\ not\ have\ .unitypackage\ extension:\ \{path\}"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00144}00144\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00145}00145\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00146}00146\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ SourceAndDestPathAreEqual(Path\ sourcePath,\ Path\ destinationPath)}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00147}00147\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00148}00148\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (sourcePath.Equals(destinationPath))}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00149}00149\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ \textcolor{keyword}{new}\ ArgumentException(\$\textcolor{stringliteral}{"{}source\ and\ destination\ path\ are\ equal:\ \{sourcePath\}"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00150}00150\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00151}00151\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00152}00152\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{/*public\ static\ void\ NotAnAsset(UnityEngine.Object\ obj)}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00153}00153\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \{}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00154}00154\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ if\ (Database.Contains(obj)\ ==\ false)}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00155}00155\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ throw\ new\ ArgumentException(\$"{}\{obj\}\ is\ not\ an\ asset\ file"{});}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00156}00156\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00157}00157\ \textcolor{comment}{}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00158}00158\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ public\ static\ void\ NotAnAsset(Int32\ instanceId)}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00159}00159\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \{}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00160}00160\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ if\ (Database.Contains(instanceId)\ ==\ false)}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00161}00161\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ throw\ new\ ArgumentException(\$"{}\{instanceId\}\ is\ not\ an\ asset\ instance\ ID"{});}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00162}00162\ \textcolor{comment}{\ \ \ \ \ \ \ \ \ \ \ \ \}*/}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00163}00163\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00164}00164\ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_throw_if_8cs_source_l00165}00165\ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/_asset_8_version_control_8cs_source.tex b/Docs~/latex/_asset_8_version_control_8cs_source.tex
new file mode 100644
index 00000000..12234c73
--- /dev/null
+++ b/Docs~/latex/_asset_8_version_control_8cs_source.tex
@@ -0,0 +1,112 @@
+\doxysubsection{Asset.\+Version\+Control.\+cs}
+\hypertarget{_asset_8_version_control_8cs_source}{}\label{_asset_8_version_control_8cs_source}\index{P:/de.codesmile.assetdatabase/Editor/Asset.VersionControl.cs@{P:/de.codesmile.assetdatabase/Editor/Asset.VersionControl.cs}}
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00001}00001\ \textcolor{comment}{//\ Copyright\ (C)\ 2021-\/2023\ Steffen\ Itterheim}}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00002}00002\ \textcolor{comment}{//\ Refer\ to\ included\ LICENSE\ file\ for\ terms\ and\ conditions.}}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00003}00003\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00004}00004\ \textcolor{keyword}{using\ }System;}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00005}00005\ \textcolor{keyword}{using\ }System.Collections.Generic;}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00006}00006\ \textcolor{keyword}{using\ }System.Diagnostics.CodeAnalysis;}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00007}00007\ \textcolor{keyword}{using\ }UnityEditor;}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00008}00008\ \textcolor{keyword}{using\ }Object\ =\ UnityEngine.Object;}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00009}00009\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00010}00010\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{namespace_code_smile_editor}{CodeSmileEditor}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00011}00011\ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00012}00012\ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{sealed}\ \textcolor{keyword}{partial\ class\ }Asset}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00013}00013\ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00017}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control}{00017}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keyword}{class\ }\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control}{VersionControl}}}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00018}00018\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00019}00019\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ \textcolor{keyword}{const}\ StatusQueryOptions\ DefaultStatusQueryOption\ =\ StatusQueryOptions.UseCachedIfPossible;}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00020}00020\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00039}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}{00039}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}{CanMakeEditable}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path,\ StatusQueryOptions\ options\ =\ DefaultStatusQueryOption)}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00040}00040\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00041}00041\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ canOpen\ =\ AssetDatabase.CanOpenForEdit(path,\ out\ var\ message,\ options);}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00042}00042\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (canOpen\ ==\ \textcolor{keyword}{false})}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00043}00043\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ SetLastErrorMessage(message);}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00044}00044\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00045}00045\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ canOpen;}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00046}00046\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00047}00047\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00066}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a7f6bbb0782e7f7635706b0e0bc921341_a7f6bbb0782e7f7635706b0e0bc921341}{00066}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a7f6bbb0782e7f7635706b0e0bc921341_a7f6bbb0782e7f7635706b0e0bc921341}{CanMakeEditable}}([NotNull]\ Object\ asset,\ StatusQueryOptions\ options\ =\ DefaultStatusQueryOption)}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00067}00067\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00068}00068\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(asset,\ nameof(asset));}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00069}00069\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00070}00070\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}{CanMakeEditable}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Get}}(asset),\ options);}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00071}00071\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00072}00072\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00090}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a805c285250d01e10b7eafe7f8bea9f3b_a805c285250d01e10b7eafe7f8bea9f3b}{00090}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a805c285250d01e10b7eafe7f8bea9f3b_a805c285250d01e10b7eafe7f8bea9f3b}{CanMakeEditable}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}[]\ paths,\ out\ List\ notEditablePaths,}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00091}00091\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ StatusQueryOptions\ options\ =\ DefaultStatusQueryOption)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00092}00092\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}{CanMakeEditable}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a698b564cc49ed111277f35dac618252d_a698b564cc49ed111277f35dac618252d}{ToStrings}}(paths),\ out\ notEditablePaths,\ options);}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00093}00093\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00111}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_ac136cd1d20cf4aacbca01dd9d23f4d22_ac136cd1d20cf4aacbca01dd9d23f4d22}{00111}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_ac136cd1d20cf4aacbca01dd9d23f4d22_ac136cd1d20cf4aacbca01dd9d23f4d22}{CanMakeEditable}}([NotNull]\ String[]\ paths,\ out\ List\ notEditablePaths,}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00112}00112\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ StatusQueryOptions\ options\ =\ DefaultStatusQueryOption)}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00113}00113\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00114}00114\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ notEditablePaths\ =\ \textcolor{keyword}{new}\ List();}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00115}00115\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.CanOpenForEdit(paths,\ notEditablePaths,\ options);}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00116}00116\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00117}00117\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00135}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a2e5d0d18f7ef51ec5ea8a79689584125_a2e5d0d18f7ef51ec5ea8a79689584125}{00135}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a2e5d0d18f7ef51ec5ea8a79689584125_a2e5d0d18f7ef51ec5ea8a79689584125}{CanMakeEditable}}([NotNull]\ Object[]\ assets,\ out\ List\ notEditablePaths,}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00136}00136\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ StatusQueryOptions\ options\ =\ DefaultStatusQueryOption)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00137}00137\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}{CanMakeEditable}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Get}}(assets),\ out\ notEditablePaths,\ options);}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00138}00138\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00156}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a98a4620e539f0cf83a99cb54b154be49_a98a4620e539f0cf83a99cb54b154be49}{00156}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a98a4620e539f0cf83a99cb54b154be49_a98a4620e539f0cf83a99cb54b154be49}{IsMetaEditable}}([NotNull]\ Object\ asset,\ StatusQueryOptions\ options\ =\ DefaultStatusQueryOption)}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00157}00157\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00158}00158\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ isOpen\ =\ AssetDatabase.IsMetaFileOpenForEdit(asset,\ out\ var\ message,\ options);}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00159}00159\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (isOpen\ ==\ \textcolor{keyword}{false})}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00160}00160\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ SetLastErrorMessage(message);}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00161}00161\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00162}00162\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ isOpen;}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00163}00163\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00164}00164\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00182}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a14fd4d4a0447ac1dacde2ae694c39339_a14fd4d4a0447ac1dacde2ae694c39339}{00182}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a14fd4d4a0447ac1dacde2ae694c39339_a14fd4d4a0447ac1dacde2ae694c39339}{IsEditable}}([NotNull]\ Object\ asset,\ StatusQueryOptions\ options\ =\ DefaultStatusQueryOption)}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00183}00183\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00184}00184\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ isOpen\ =\ AssetDatabase.IsOpenForEdit(asset,\ out\ var\ message,\ options);}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00185}00185\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (isOpen\ ==\ \textcolor{keyword}{false})}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00186}00186\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ SetLastErrorMessage(message);}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00187}00187\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00188}00188\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ isOpen;}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00189}00189\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00190}00190\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00205}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a01231010fea0f9fbcadb4708e84c668a_a01231010fea0f9fbcadb4708e84c668a}{00205}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a01231010fea0f9fbcadb4708e84c668a_a01231010fea0f9fbcadb4708e84c668a}{IsEditable}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}[]\ paths,\ out\ List\ notEditablePaths,}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00206}00206\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ StatusQueryOptions\ options\ =\ DefaultStatusQueryOption)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00207}00207\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a14fd4d4a0447ac1dacde2ae694c39339_a14fd4d4a0447ac1dacde2ae694c39339}{IsEditable}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a698b564cc49ed111277f35dac618252d_a698b564cc49ed111277f35dac618252d}{ToStrings}}(paths),\ out\ notEditablePaths,\ options);}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00208}00208\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00223}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_ad786f63df78897c77c7b158140e97ded_ad786f63df78897c77c7b158140e97ded}{00223}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_ad786f63df78897c77c7b158140e97ded_ad786f63df78897c77c7b158140e97ded}{IsEditable}}([NotNull]\ String[]\ paths,\ out\ List\ notEditablePaths,}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00224}00224\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ StatusQueryOptions\ options\ =\ DefaultStatusQueryOption)}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00225}00225\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00226}00226\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ notEditablePaths\ =\ \textcolor{keyword}{new}\ List();}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00227}00227\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.IsOpenForEdit(paths,\ notEditablePaths,\ options);}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00228}00228\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00229}00229\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00244}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_ad8a9e3f4c51382aa26b9de11e0f9d0a6_ad8a9e3f4c51382aa26b9de11e0f9d0a6}{00244}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_ad8a9e3f4c51382aa26b9de11e0f9d0a6_ad8a9e3f4c51382aa26b9de11e0f9d0a6}{IsEditable}}([NotNull]\ Object[]\ assets,\ out\ List\ notEditablePaths,}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00245}00245\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ StatusQueryOptions\ options\ =\ DefaultStatusQueryOption)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00246}00246\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a14fd4d4a0447ac1dacde2ae694c39339_a14fd4d4a0447ac1dacde2ae694c39339}{IsEditable}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Get}}(assets),\ out\ notEditablePaths,\ options);}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00247}00247\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00261}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a43dd5490eaead3d1d8e0b72879e5d2f8_a43dd5490eaead3d1d8e0b72879e5d2f8}{00261}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a43dd5490eaead3d1d8e0b72879e5d2f8_a43dd5490eaead3d1d8e0b72879e5d2f8}{MakeEditable}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ AssetDatabase.MakeEditable(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00262}00262\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00277}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_ab13913c709a6e8bc08412828d8ce86af_ab13913c709a6e8bc08412828d8ce86af}{00277}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_ab13913c709a6e8bc08412828d8ce86af_ab13913c709a6e8bc08412828d8ce86af}{MakeEditable}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}[]\ paths,\ out\ List\ notEditablePaths)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00278}00278\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ MakeMultipleEditable(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a698b564cc49ed111277f35dac618252d_a698b564cc49ed111277f35dac618252d}{ToStrings}}(paths),\ out\ notEditablePaths);}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00279}00279\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00294}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a0418e950cb362718e024a62216d057dc_a0418e950cb362718e024a62216d057dc}{00294}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a0418e950cb362718e024a62216d057dc_a0418e950cb362718e024a62216d057dc}{MakeEditable}}([NotNull]\ String[]\ paths,\ out\ List\ notEditablePaths)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00295}00295\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ MakeMultipleEditable(paths,\ out\ notEditablePaths);}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00296}00296\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00313}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_ad298d4e4fcf5043ab4d20e64bce3617f_ad298d4e4fcf5043ab4d20e64bce3617f}{00313}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_ad298d4e4fcf5043ab4d20e64bce3617f_ad298d4e4fcf5043ab4d20e64bce3617f}{MakeEditableInteractive}}([NotNull]\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}[]\ paths,\ out\ List\ notEditablePaths,}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00314}00314\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ String\ prompt\ =\ \textcolor{keyword}{null})\ =>\ MakeMultipleEditable(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a698b564cc49ed111277f35dac618252d_a698b564cc49ed111277f35dac618252d}{ToStrings}}(paths),\ out\ notEditablePaths,}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00315}00315\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ prompt\ !=\ \textcolor{keyword}{null}\ ?\ prompt\ :\ \textcolor{stringliteral}{"{}Open\ for\ Edit?"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00316}00316\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00333}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a8eac8f1fdbd0e9009799ceeb46dc6b5c_a8eac8f1fdbd0e9009799ceeb46dc6b5c}{00333}}\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a8eac8f1fdbd0e9009799ceeb46dc6b5c_a8eac8f1fdbd0e9009799ceeb46dc6b5c}{MakeEditableInteractive}}([NotNull]\ String[]\ paths,\ out\ List\ notEditablePaths,}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00334}00334\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ String\ prompt\ =\ \textcolor{keyword}{null})\ =>\ MakeMultipleEditable(paths,\ out\ notEditablePaths,}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00335}00335\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ prompt\ !=\ \textcolor{keyword}{null}\ ?\ prompt\ :\ \textcolor{stringliteral}{"{}Open\ for\ Edit?"{}});}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00336}00336\ }
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00337}00337\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ \textcolor{keyword}{static}\ Boolean\ MakeMultipleEditable([NotNull]\ String[]\ paths,\ out\ List\ notEditablePaths,}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00338}00338\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ String\ prompt\ =\ \textcolor{keyword}{null})}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00339}00339\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00340}00340\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ notEditablePaths\ =\ \textcolor{keyword}{new}\ List();}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00341}00341\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.MakeEditable(paths,\ prompt,\ notEditablePaths);}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00342}00342\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00343}00343\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00344}00344\ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8_version_control_8cs_source_l00345}00345\ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/_asset_8cs_source.tex b/Docs~/latex/_asset_8cs_source.tex
new file mode 100644
index 00000000..b027deae
--- /dev/null
+++ b/Docs~/latex/_asset_8cs_source.tex
@@ -0,0 +1,202 @@
+\doxysubsection{Asset.\+cs}
+\hypertarget{_asset_8cs_source}{}\label{_asset_8cs_source}\index{P:/de.codesmile.assetdatabase/Editor/Asset.cs@{P:/de.codesmile.assetdatabase/Editor/Asset.cs}}
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00001}00001\ \textcolor{comment}{//\ Copyright\ (C)\ 2021-\/2023\ Steffen\ Itterheim}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00002}00002\ \textcolor{comment}{//\ Refer\ to\ included\ LICENSE\ file\ for\ terms\ and\ conditions.}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00003}00003\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00004}00004\ \textcolor{keyword}{using\ }System;}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00005}00005\ \textcolor{keyword}{using\ }System.Diagnostics.CodeAnalysis;}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00006}00006\ \textcolor{keyword}{using\ }System.IO;}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00007}00007\ \textcolor{keyword}{using\ }UnityEditor;}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00008}00008\ \textcolor{keyword}{using\ }UnityEngine.TestTools;}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00009}00009\ \textcolor{keyword}{using\ }Object\ =\ UnityEngine.Object;}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00010}00010\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00011}00011\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{namespace_code_smile_editor}{CodeSmileEditor}}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00012}00012\ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00019}00019\ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{sealed}\ \textcolor{keyword}{partial\ class\ }Asset}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00020}00020\ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00021}00021\ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ Path\ m\_AssetPath;}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00022}00022\ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ Object\ m\_MainObject;}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00023}00023\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00024}00024\ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{keyword}{private}\ Asset()\ \{\}\ \textcolor{comment}{//\ disallow\ parameterless\ ctor}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00025}00025\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00042}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a547d8367ae51323946fe990575c2840f_a547d8367ae51323946fe990575c2840f}{00042}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a547d8367ae51323946fe990575c2840f_a547d8367ae51323946fe990575c2840f}{Asset}}(Byte[]\ contents,\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path,\ Boolean\ overwriteExisting\ =\ \textcolor{keyword}{false})}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00043}00043\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00044}00044\ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(contents,\ nameof(contents));}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00045}00045\ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(path,\ nameof(path));}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00046}00046\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00047}00047\ \ \ \ \ \ \ \ \ \ \ \ \ path\ =\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.UniquifyAsNeeded(path,\ overwriteExisting);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00048}00048\ \ \ \ \ \ \ \ \ \ \ \ \ var\ asset\ =\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file}{File}}.CreateInternal(contents,\ path);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00049}00049\ \ \ \ \ \ \ \ \ \ \ \ \ InitWithMainObject(asset);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00050}00050\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00051}00051\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00067}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a8f0fe59560dc52244f4af7d3875bdea1_a8f0fe59560dc52244f4af7d3875bdea1}{00067}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a8f0fe59560dc52244f4af7d3875bdea1_a8f0fe59560dc52244f4af7d3875bdea1}{Asset}}(String\ contents,\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path,\ Boolean\ overwriteExisting\ =\ \textcolor{keyword}{false})}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00068}00068\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00069}00069\ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(contents,\ nameof(contents));}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00070}00070\ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(path,\ nameof(path));}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00071}00071\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00072}00072\ \ \ \ \ \ \ \ \ \ \ \ \ path\ =\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.UniquifyAsNeeded(path,\ overwriteExisting);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00073}00073\ \ \ \ \ \ \ \ \ \ \ \ \ var\ asset\ =\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file}{File}}.CreateInternal(contents,\ path);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00074}00074\ \ \ \ \ \ \ \ \ \ \ \ \ InitWithMainObject(asset);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00075}00075\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00076}00076\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00096}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_ac6a1f3eb995796ea388c01daf3f30326_ac6a1f3eb995796ea388c01daf3f30326}{00096}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ac6a1f3eb995796ea388c01daf3f30326_ac6a1f3eb995796ea388c01daf3f30326}{Asset}}(Object\ asset,\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path,\ Boolean\ overwriteExisting\ =\ \textcolor{keyword}{false})}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00097}00097\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00098}00098\ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(asset,\ nameof(asset));}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00099}00099\ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(path,\ nameof(path));}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00100}00100\ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.AlreadyAnAsset(asset);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00101}00101\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00102}00102\ \ \ \ \ \ \ \ \ \ \ \ \ path\ =\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}.UniquifyAsNeeded(path,\ overwriteExisting);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00103}00103\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file}{File}}.CreateInternal(asset,\ path);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00104}00104\ \ \ \ \ \ \ \ \ \ \ \ \ InitWithMainObject(asset);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00105}00105\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00106}00106\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00117}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a2139e47981f864d23cbf802ceeadb730_a2139e47981f864d23cbf802ceeadb730}{00117}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a2139e47981f864d23cbf802ceeadb730_a2139e47981f864d23cbf802ceeadb730}{Asset}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ InitWithPath(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00118}00118\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00128}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a1b9aaba05c3acd1f57830883c53c0f1c_a1b9aaba05c3acd1f57830883c53c0f1c}{00128}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a1b9aaba05c3acd1f57830883c53c0f1c_a1b9aaba05c3acd1f57830883c53c0f1c}{Asset}}(GUID\ assetGuid)\ =>\ InitWithGuid(assetGuid);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00129}00129\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00140}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a1c606a7df96ba8897ce11d53af1e5c62_a1c606a7df96ba8897ce11d53af1e5c62}{00140}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a1c606a7df96ba8897ce11d53af1e5c62_a1c606a7df96ba8897ce11d53af1e5c62}{Asset}}(Object\ asset)\ =>\ InitWithMainObject(asset);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00141}00141\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00152}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_ae36538faed7f7dd4bd6d2a42867bbee1_ae36538faed7f7dd4bd6d2a42867bbee1}{00152}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ implicit\ \textcolor{keyword}{operator}\ Object(\mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}}\ asset)\ =>\ asset\ !=\ \textcolor{keyword}{null}\ ?\ asset.MainObject\ :\ \textcolor{keyword}{null};}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00153}00153\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00165}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_ac84df38322545eff4fb610f424420751_ac84df38322545eff4fb610f424420751}{00165}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ implicit\ \textcolor{keyword}{operator}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}}(Object\ asset)\ =>\ asset\ !=\ \textcolor{keyword}{null}\ ?\ \textcolor{keyword}{new}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}}(asset)\ :\ null;}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00166}00166\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00177}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a23920865dfc0888bc17dc618ab30cbe0_a23920865dfc0888bc17dc618ab30cbe0}{00177}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ implicit\ \textcolor{keyword}{operator}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ path\ !=\ \textcolor{keyword}{null}\ ?\ \textcolor{keyword}{new}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}}(path)\ :\ null;}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00178}00178\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00190}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_aa01a879ca0793e3def47211f4d8d338d_aa01a879ca0793e3def47211f4d8d338d}{00190}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ implicit\ \textcolor{keyword}{operator}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}}(String\ path)\ =>\ (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}})path;\ \textcolor{comment}{//\ implicit\ forward\ to\ Asset(Path)}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00191}00191\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00203}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_ae41aa018507db1deffb10096f33e3bb6_ae41aa018507db1deffb10096f33e3bb6}{00203}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{static}\ implicit\ \textcolor{keyword}{operator}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}}(GUID\ guid)\ =>\ guid.Empty()\ ==\ \textcolor{keyword}{false}\ ?\ \textcolor{keyword}{new}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}}(guid)\ :\ null;}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00204}00204\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00214}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a192accd4daaea8a0cf39c331b9fcb95c_a192accd4daaea8a0cf39c331b9fcb95c}{00214}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ T\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a192accd4daaea8a0cf39c331b9fcb95c_a192accd4daaea8a0cf39c331b9fcb95c}{GetMain}}()\ where\ T\ :\ Object\ =>\ m\_MainObject\ as\ T;}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00215}00215\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00226}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a5df140c1ee51aadf7fe88ce3fb9cac33_a5df140c1ee51aadf7fe88ce3fb9cac33}{00226}}\ \ \ \ \ \ \ \ \ public\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a5df140c1ee51aadf7fe88ce3fb9cac33_a5df140c1ee51aadf7fe88ce3fb9cac33}{Save}}()\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file}{File}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a5df140c1ee51aadf7fe88ce3fb9cac33_a5df140c1ee51aadf7fe88ce3fb9cac33}{Save}}(m\_MainObject);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00227}00227\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00238}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a80bd55f3de91ab63e74b3f66c1d1dd4b_a80bd55f3de91ab63e74b3f66c1d1dd4b}{00238}}\ \ \ \ \ \ \ \ \ public\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a80bd55f3de91ab63e74b3f66c1d1dd4b_a80bd55f3de91ab63e74b3f66c1d1dd4b}{ForceSave}}()\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file}{File}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a80bd55f3de91ab63e74b3f66c1d1dd4b_a80bd55f3de91ab63e74b3f66c1d1dd4b}{ForceSave}}(m\_MainObject);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00239}00239\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00256}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a1c6432dab22d51bcf01bf6ad221e7119_a1c6432dab22d51bcf01bf6ad221e7119}{00256}}\ \ \ \ \ \ \ \ \ public\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a1c6432dab22d51bcf01bf6ad221e7119_a1c6432dab22d51bcf01bf6ad221e7119}{SaveAs}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file}{File}}.Copy(m\_AssetPath,\ path)\ ?\ new\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}}(path)\ :\ null;}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00257}00257\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00274}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_af23adc642520b7f00cb047865ef50ad0_af23adc642520b7f00cb047865ef50ad0}{00274}}\ \ \ \ \ \ \ \ \ public\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_af23adc642520b7f00cb047865ef50ad0_af23adc642520b7f00cb047865ef50ad0}{SaveAsNew}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ path)}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00275}00275\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00276}00276\ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(path,\ nameof(path));}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00277}00277\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00278}00278\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a1c6432dab22d51bcf01bf6ad221e7119_a1c6432dab22d51bcf01bf6ad221e7119}{SaveAs}}(path.UniqueFilePath);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00279}00279\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00280}00280\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00289}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_ad06bce954d9c1e05d9f53e0274a9f85a_ad06bce954d9c1e05d9f53e0274a9f85a}{00289}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ad06bce954d9c1e05d9f53e0274a9f85a_ad06bce954d9c1e05d9f53e0274a9f85a}{Duplicate}}()\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_af23adc642520b7f00cb047865ef50ad0_af23adc642520b7f00cb047865ef50ad0}{SaveAsNew}}(m\_AssetPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00290}00290\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00297}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_ac9fdda28d3fb7be683439603387df920_ac9fdda28d3fb7be683439603387df920}{00297}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ac9fdda28d3fb7be683439603387df920_ac9fdda28d3fb7be683439603387df920}{SetDirty}}()\ =>\ EditorUtility.SetDirty(m\_MainObject);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00298}00298\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00299}00299\ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ NOTE:\ there\ is\ no\ public\ Import()\ method\ needed\ since\ the\ main\ object\ is\ guaranteed\ to\ be\ imported}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00300}00300\ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ private,\ not\ used}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00301}00301\ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ \textcolor{keywordtype}{void}\ Import()\ \{\}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00302}00302\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00303}00303\ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ Private\ on\ purpose:\ the\ main\ object\ is\ automatically\ loaded\ when\ instantiating\ an\ Asset\ class.}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00304}00304\ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ T\ LoadMain()\ where\ T\ :\ Object\ =>\ m\_AssetPath\ !=\ null\ ?\ (T)(m\_MainObject\ =\ File.Load(m\_AssetPath))\ :\ null;}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00305}00305\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00319}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a5d27be243c1f698cba116b768e3f65ec_a5d27be243c1f698cba116b768e3f65ec}{00319}}\ \ \ \ \ \ \ \ \ public\ T\ Load()\ where\ T\ :\ Object\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file}{File}}.Load(m\_AssetPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00320}00320\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00334}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a31854cee2c427159e4ff866257872323_a31854cee2c427159e4ff866257872323}{00334}}\ \ \ \ \ \ \ \ \ public\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a31854cee2c427159e4ff866257872323_a31854cee2c427159e4ff866257872323}{CanMove}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ destinationPath)\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file}{File}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a31854cee2c427159e4ff866257872323_a31854cee2c427159e4ff866257872323}{CanMove}}(m\_AssetPath,\ destinationPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00335}00335\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00350}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a45faf9fc17e3cb57b87d2ae09e4dd7f8_a45faf9fc17e3cb57b87d2ae09e4dd7f8}{00350}}\ \ \ \ \ \ \ \ \ public\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a45faf9fc17e3cb57b87d2ae09e4dd7f8_a45faf9fc17e3cb57b87d2ae09e4dd7f8}{Move}}(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\ destinationPath)}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00351}00351\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00352}00352\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file}{File}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9dbc6b65d0efec125ca6ec75_a996c0cfd9dbc6b65d0efec125ca6ec75}{Move}}(m\_AssetPath,\ destinationPath))}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00353}00353\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00354}00354\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ SetAssetPathFromObject();}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00355}00355\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{true};}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00356}00356\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00357}00357\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00358}00358\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00359}00359\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00360}00360\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00391}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a28fe22006383d71d5b564df4a46b2675_a28fe22006383d71d5b564df4a46b2675}{00391}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a28fe22006383d71d5b564df4a46b2675_a28fe22006383d71d5b564df4a46b2675}{Rename}}(String\ newFileName)}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00392}00392\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00393}00393\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file}{File}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396a4bfed873f01e8622033ab_a34bfcab396a4bfed873f01e8622033ab}{Rename}}(m\_AssetPath,\ newFileName))}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00394}00394\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00395}00395\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ SetAssetPathFromObject();}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00396}00396\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{true};}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00397}00397\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00398}00398\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00399}00399\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00400}00400\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00401}00401\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00413}00413\ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00414}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_ac1b2c03d50954442d3462c97a5dc8882_ac1b2c03d50954442d3462c97a5dc8882}{00414}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ Boolean\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ac1b2c03d50954442d3462c97a5dc8882_ac1b2c03d50954442d3462c97a5dc8882}{CanOpenInEditor}}()\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file}{File}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a3d74dc290eb0f6815b0f1eac29c6c2e6_a3d74dc290eb0f6815b0f1eac29c6c2e6}{CanOpenInEditor}}(m\_MainObject);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00415}00415\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00424}00424\ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ cannot\ be\ tested}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00425}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a0666c1c07cd6e3eef35e058c2e09fdf9_a0666c1c07cd6e3eef35e058c2e09fdf9}{00425}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a0666c1c07cd6e3eef35e058c2e09fdf9_a0666c1c07cd6e3eef35e058c2e09fdf9}{OpenExternal}}(Int32\ lineNumber\ =\ -\/1,\ Int32\ columnNumber\ =\ -\/1)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00426}00426\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file}{File}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_aac35e74243833f4963e3cf8ab1a4f845_aac35e74243833f4963e3cf8ab1a4f845}{OpenExternal}}(m\_MainObject,\ lineNumber,\ columnNumber);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00427}00427\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00442}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_af6ce8c8d3d810ae286e98e54aa360adf_af6ce8c8d3d810ae286e98e54aa360adf}{00442}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ Object\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_af6ce8c8d3d810ae286e98e54aa360adf_af6ce8c8d3d810ae286e98e54aa360adf}{Delete}}()}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00443}00443\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00444}00444\ \ \ \ \ \ \ \ \ \ \ \ \ var\ mainObject\ =\ m\_MainObject;}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00445}00445\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file}{File}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a5a01eb8f2adc1117b9df394acbe3c529_a5a01eb8f2adc1117b9df394acbe3c529}{Delete}}(m\_AssetPath))}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00446}00446\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ InvalidateInstance();}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00447}00447\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00448}00448\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ mainObject;}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00449}00449\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00450}00450\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00465}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a9ff25b59d227ab5d89fdabafffb9876a_a9ff25b59d227ab5d89fdabafffb9876a}{00465}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ Object\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a9ff25b59d227ab5d89fdabafffb9876a_a9ff25b59d227ab5d89fdabafffb9876a}{Trash}}()}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00466}00466\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00467}00467\ \ \ \ \ \ \ \ \ \ \ \ \ var\ mainObject\ =\ m\_MainObject;}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00468}00468\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file}{File}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a7b0aaffab801a8597c60daff4bccb177_a7b0aaffab801a8597c60daff4bccb177}{Trash}}(m\_AssetPath))}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00469}00469\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ InvalidateInstance();}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00470}00470\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00471}00471\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ mainObject;}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00472}00472\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00473}00473\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00483}00483\ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00484}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_af924398cf4176684f1c3bad2017f9ed5_af924398cf4176684f1c3bad2017f9ed5}{00484}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_af924398cf4176684f1c3bad2017f9ed5_af924398cf4176684f1c3bad2017f9ed5}{SetLabels}}(String[]\ labels)\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label}{Label}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_a82888b12b37f839fbabcb62e8fe169af_a82888b12b37f839fbabcb62e8fe169af}{SetAll}}(m\_MainObject,\ labels);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00485}00485\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00494}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a1ec7cb3d4ed6edc811690f8855a7982f_a1ec7cb3d4ed6edc811690f8855a7982f}{00494}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a1ec7cb3d4ed6edc811690f8855a7982f_a1ec7cb3d4ed6edc811690f8855a7982f}{ClearLabels}}()\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label}{Label}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_ad0347f47f2f71137fe48133c157904ff_ad0347f47f2f71137fe48133c157904ff}{ClearAll}}(m\_MainObject);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00495}00495\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00508}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a2ebda9df65a71b44245f958679cf302a_a2ebda9df65a71b44245f958679cf302a}{00508}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a2ebda9df65a71b44245f958679cf302a_a2ebda9df65a71b44245f958679cf302a}{AddLabel}}(String\ label)\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label}{Label}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_ad2dd0c24ca248dac498e168471c296ae_ad2dd0c24ca248dac498e168471c296ae}{Add}}(m\_MainObject,\ label);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00509}00509\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00518}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a677d0e58f64014b9722f943987c6ece5_a677d0e58f64014b9722f943987c6ece5}{00518}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a677d0e58f64014b9722f943987c6ece5_a677d0e58f64014b9722f943987c6ece5}{AddLabels}}(String[]\ labels)\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label}{Label}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_ad2dd0c24ca248dac498e168471c296ae_ad2dd0c24ca248dac498e168471c296ae}{Add}}(m\_MainObject,\ labels);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00519}00519\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00530}00530\ \ \ \ \ \ \ \ \ [ExcludeFromCodeCoverage]\ \textcolor{comment}{//\ simple\ relay}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00531}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a6e9b9cc6eb629d6e34d6ea90088e0148_a6e9b9cc6eb629d6e34d6ea90088e0148}{00531}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a6e9b9cc6eb629d6e34d6ea90088e0148_a6e9b9cc6eb629d6e34d6ea90088e0148}{ExportPackage}}(String\ packagePath,\ ExportPackageOptions\ options\ =\ ExportPackageOptions.Default)\ =>}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00532}00532\ \ \ \ \ \ \ \ \ \ \ \ \ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_package}{Package}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_package_aa1e7a86c8e5db3200570af6809a69f2a_aa1e7a86c8e5db3200570af6809a69f2a}{Export}}(m\_AssetPath,\ packagePath,\ options);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00533}00533\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00543}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a7adbbe2c45d2f0188f60917a3d870946_a7adbbe2c45d2f0188f60917a3d870946}{00543}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a7adbbe2c45d2f0188f60917a3d870946_a7adbbe2c45d2f0188f60917a3d870946}{AddSubAsset}}(Object\ instance)\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset}{SubAsset}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_a651286de3f2c9fef50eb5720f0a1b3a8_a651286de3f2c9fef50eb5720f0a1b3a8}{Add}}(instance,\ m\_MainObject);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00544}00544\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00553}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_ae1e3a3de65cb69b8ac09a0e10f2dbabd_ae1e3a3de65cb69b8ac09a0e10f2dbabd}{00553}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keywordtype}{void}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ae1e3a3de65cb69b8ac09a0e10f2dbabd_ae1e3a3de65cb69b8ac09a0e10f2dbabd}{RemoveSubAsset}}(Object\ subAsset)\ =>\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset}{SubAsset}}.\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_af2517f14782bec5f449da4bc4937cf8c_af2517f14782bec5f449da4bc4937cf8c}{Remove}}(subAsset);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00554}00554\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00555}00555\ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ \textcolor{keywordtype}{void}\ InvalidateInstance()}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00556}00556\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00557}00557\ \ \ \ \ \ \ \ \ \ \ \ \ m\_AssetPath\ =\ \textcolor{keyword}{null};}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00558}00558\ \ \ \ \ \ \ \ \ \ \ \ \ m\_MainObject\ =\ \textcolor{keyword}{null};}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00559}00559\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00560}00560\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00561}00561\ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ \textcolor{keywordtype}{void}\ SetAssetPathFromObject()\ =>\ m\_AssetPath\ =\ Path.Get(m\_MainObject);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00562}00562\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00563}00563\ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ \textcolor{keywordtype}{void}\ InitWithPath(Path\ path)}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00564}00564\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00565}00565\ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(path,\ nameof(path));}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00566}00566\ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.DoesNotExistInFileSystem(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00567}00567\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00568}00568\ \ \ \ \ \ \ \ \ \ \ \ \ m\_AssetPath\ =\ path;}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00569}00569\ \ \ \ \ \ \ \ \ \ \ \ \ m\_MainObject\ =\ Status.IsImported(path)\ ?\ LoadMain()\ :\ File.ImportAndLoad(path);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00570}00570\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00571}00571\ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.AssetLoadReturnedNull(m\_MainObject,\ m\_AssetPath);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00572}00572\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00573}00573\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00574}00574\ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ \textcolor{keywordtype}{void}\ InitWithMainObject(Object\ mainObject)}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00575}00575\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00576}00576\ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(mainObject,\ nameof(mainObject));}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00577}00577\ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.NotInDatabase(mainObject);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00578}00578\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00579}00579\ \ \ \ \ \ \ \ \ \ \ \ \ m\_MainObject\ =\ mainObject;}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00580}00580\ \ \ \ \ \ \ \ \ \ \ \ \ m\_AssetPath\ =\ Path.Get(mainObject);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00581}00581\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00582}00582\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00583}00583\ \ \ \ \ \ \ \ \ \textcolor{keyword}{private}\ \textcolor{keywordtype}{void}\ InitWithGuid(GUID\ guid)}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00584}00584\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00585}00585\ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.NotAnAssetGuid(guid);}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00586}00586\ }
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00587}00587\ \ \ \ \ \ \ \ \ \ \ \ \ InitWithPath(Path.Get(guid));}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00588}00588\ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00589}00589\ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_8cs_source_l00590}00590\ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/_asset_load_exception_8cs_source.tex b/Docs~/latex/_asset_load_exception_8cs_source.tex
new file mode 100644
index 00000000..12135c72
--- /dev/null
+++ b/Docs~/latex/_asset_load_exception_8cs_source.tex
@@ -0,0 +1,28 @@
+\doxysubsection{Asset\+Load\+Exception.\+cs}
+\hypertarget{_asset_load_exception_8cs_source}{}\label{_asset_load_exception_8cs_source}\index{P:/de.codesmile.assetdatabase/Editor/AssetLoadException.cs@{P:/de.codesmile.assetdatabase/Editor/AssetLoadException.cs}}
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{\Hypertarget{_asset_load_exception_8cs_source_l00001}00001\ \textcolor{comment}{//\ Copyright\ (C)\ 2021-\/2023\ Steffen\ Itterheim}}
+\DoxyCodeLine{\Hypertarget{_asset_load_exception_8cs_source_l00002}00002\ \textcolor{comment}{//\ Refer\ to\ included\ LICENSE\ file\ for\ terms\ and\ conditions.}}
+\DoxyCodeLine{\Hypertarget{_asset_load_exception_8cs_source_l00003}00003\ }
+\DoxyCodeLine{\Hypertarget{_asset_load_exception_8cs_source_l00004}00004\ \textcolor{keyword}{using\ }System;}
+\DoxyCodeLine{\Hypertarget{_asset_load_exception_8cs_source_l00005}00005\ \textcolor{keyword}{using\ }System.Diagnostics.CodeAnalysis;}
+\DoxyCodeLine{\Hypertarget{_asset_load_exception_8cs_source_l00006}00006\ \textcolor{keyword}{using\ }UnityEngine;}
+\DoxyCodeLine{\Hypertarget{_asset_load_exception_8cs_source_l00007}00007\ }
+\DoxyCodeLine{\Hypertarget{_asset_load_exception_8cs_source_l00008}00008\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{namespace_code_smile_editor}{CodeSmileEditor}}}
+\DoxyCodeLine{\Hypertarget{_asset_load_exception_8cs_source_l00009}00009\ \{}
+\DoxyCodeLine{\Hypertarget{_asset_load_exception_8cs_source_l00014}00014\ \ \ \ \ [ExcludeFromCodeCoverage]}
+\DoxyCodeLine{\Hypertarget{_asset_load_exception_8cs_source_l00015}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_load_exception}{00015}}\ \ \ \ \ \textcolor{keyword}{public}\ \textcolor{keyword}{class\ }\mbox{\hyperlink{class_code_smile_editor_1_1_asset_load_exception}{AssetLoadException}}\ :\ UnityException}
+\DoxyCodeLine{\Hypertarget{_asset_load_exception_8cs_source_l00016}00016\ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_asset_load_exception_8cs_source_l00020}00020\ \ \ \ \ \ \ \ \ \textcolor{keyword}{internal}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_load_exception}{AssetLoadException}}()}
+\DoxyCodeLine{\Hypertarget{_asset_load_exception_8cs_source_l00021}00021\ \ \ \ \ \ \ \ \ \ \ \ \ :\ base(\textcolor{stringliteral}{"{}asset\ load\ failed"{}})\ \{\}}
+\DoxyCodeLine{\Hypertarget{_asset_load_exception_8cs_source_l00022}00022\ }
+\DoxyCodeLine{\Hypertarget{_asset_load_exception_8cs_source_l00027}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_load_exception_a14844af4b9e1ad1822b11d8e7a99b991_a14844af4b9e1ad1822b11d8e7a99b991}{00027}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_load_exception_a14844af4b9e1ad1822b11d8e7a99b991_a14844af4b9e1ad1822b11d8e7a99b991}{AssetLoadException}}(String\ message)}
+\DoxyCodeLine{\Hypertarget{_asset_load_exception_8cs_source_l00028}00028\ \ \ \ \ \ \ \ \ \ \ \ \ :\ base(message)\ \{\}}
+\DoxyCodeLine{\Hypertarget{_asset_load_exception_8cs_source_l00029}00029\ }
+\DoxyCodeLine{\Hypertarget{_asset_load_exception_8cs_source_l00035}\mbox{\hyperlink{class_code_smile_editor_1_1_asset_load_exception_a19e920f646406abb17bf92089cd69b8f_a19e920f646406abb17bf92089cd69b8f}{00035}}\ \ \ \ \ \ \ \ \ \textcolor{keyword}{public}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_load_exception_a19e920f646406abb17bf92089cd69b8f_a19e920f646406abb17bf92089cd69b8f}{AssetLoadException}}(String\ message,\ Exception\ innerException)}
+\DoxyCodeLine{\Hypertarget{_asset_load_exception_8cs_source_l00036}00036\ \ \ \ \ \ \ \ \ \ \ \ \ :\ base(message,\ innerException)\ \{\}}
+\DoxyCodeLine{\Hypertarget{_asset_load_exception_8cs_source_l00037}00037\ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_asset_load_exception_8cs_source_l00038}00038\ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/_string_extensions_8cs_source.tex b/Docs~/latex/_string_extensions_8cs_source.tex
new file mode 100644
index 00000000..bc9cfb88
--- /dev/null
+++ b/Docs~/latex/_string_extensions_8cs_source.tex
@@ -0,0 +1,18 @@
+\doxysubsection{String\+Extensions.\+cs}
+\hypertarget{_string_extensions_8cs_source}{}\label{_string_extensions_8cs_source}\index{P:/de.codesmile.assetdatabase/Editor/StringExtensions.cs@{P:/de.codesmile.assetdatabase/Editor/StringExtensions.cs}}
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{\Hypertarget{_string_extensions_8cs_source_l00001}00001\ \textcolor{comment}{//\ Copyright\ (C)\ 2021-\/2023\ Steffen\ Itterheim}}
+\DoxyCodeLine{\Hypertarget{_string_extensions_8cs_source_l00002}00002\ \textcolor{comment}{//\ Refer\ to\ included\ LICENSE\ file\ for\ terms\ and\ conditions.}}
+\DoxyCodeLine{\Hypertarget{_string_extensions_8cs_source_l00003}00003\ }
+\DoxyCodeLine{\Hypertarget{_string_extensions_8cs_source_l00004}00004\ \textcolor{keyword}{using\ }System;}
+\DoxyCodeLine{\Hypertarget{_string_extensions_8cs_source_l00005}00005\ }
+\DoxyCodeLine{\Hypertarget{_string_extensions_8cs_source_l00006}00006\ \textcolor{keyword}{namespace\ }\mbox{\hyperlink{namespace_code_smile_editor}{CodeSmileEditor}}}
+\DoxyCodeLine{\Hypertarget{_string_extensions_8cs_source_l00007}00007\ \{}
+\DoxyCodeLine{\Hypertarget{_string_extensions_8cs_source_l00011}00011\ \ \ \ \ \textcolor{keyword}{internal}\ \textcolor{keyword}{static}\ \textcolor{keyword}{class\ }StringExtensions}
+\DoxyCodeLine{\Hypertarget{_string_extensions_8cs_source_l00012}00012\ \ \ \ \ \{}
+\DoxyCodeLine{\Hypertarget{_string_extensions_8cs_source_l00022}00022\ \ \ \ \ \ \ \ \ \textcolor{keyword}{internal}\ \textcolor{keyword}{static}\ String\ ToForwardSlashes(\textcolor{keyword}{this}\ String\ path)\ =>\ path.Replace(\textcolor{charliteral}{'\(\backslash\)\(\backslash\)'},\ \textcolor{charliteral}{'/'});}
+\DoxyCodeLine{\Hypertarget{_string_extensions_8cs_source_l00023}00023\ \ \ \ \ \}}
+\DoxyCodeLine{\Hypertarget{_string_extensions_8cs_source_l00024}00024\ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/annotated.tex b/Docs~/latex/annotated.tex
new file mode 100644
index 00000000..947f8dcc
--- /dev/null
+++ b/Docs~/latex/annotated.tex
@@ -0,0 +1,17 @@
+\doxysubsection{Class List}
+Here are the classes, structs, unions and interfaces with brief descriptions\+:\begin{DoxyCompactList}
+\item\contentsline{section}{\mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}} \\*Replacement implementation for Unity\textquotesingle{}s {\itshape massive} Asset\+Database class with a cleaner interface and more error checking. Asset is instantiable so you can work with assets like you do with Unity\+Engine.\+Object. In fact, Asset is essentially a wrapper around the asset\textquotesingle{}s Unity\+Engine.\+Object (see\+: Main\+Object) }{\pageref{class_code_smile_editor_1_1_asset}}{}
+\item\contentsline{section}{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle}{Asset.\+Bundle}} \\*Groups all asset bundle related functionality }{\pageref{class_code_smile_editor_1_1_asset_1_1_bundle}}{}
+\item\contentsline{section}{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database}{Asset.\+Database}} \\*Groups all asset database functionality }{\pageref{class_code_smile_editor_1_1_asset_1_1_database}}{}
+\item\contentsline{section}{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server}{Asset.\+Database.\+Cache\+Server}} \\*Groups Cache\+Server (Accelerator) related functionality }{\pageref{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server}}{}
+\item\contentsline{section}{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency}{Asset.\+Dependency}} \\*Groups all dependency related functionality }{\pageref{class_code_smile_editor_1_1_asset_1_1_dependency}}{}
+\item\contentsline{section}{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file}{Asset.\+File}} \\*Groups file related operations }{\pageref{class_code_smile_editor_1_1_asset_1_1_file}}{}
+\item\contentsline{section}{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer}{Asset.\+Importer}} \\*Groups all Asset\+Importer related functionality }{\pageref{class_code_smile_editor_1_1_asset_1_1_importer}}{}
+\item\contentsline{section}{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label}{Asset.\+Label}} \\*Groups all asset label related static methods }{\pageref{class_code_smile_editor_1_1_asset_1_1_label}}{}
+\item\contentsline{section}{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_package}{Asset.\+Package}} \\*Groups import/export functionality for \href{https://docs.unity3d.com/Manual/AssetPackages.html}{\texttt{ .unitypackage files}} (Asset Packages) }{\pageref{class_code_smile_editor_1_1_asset_1_1_package}}{}
+\item\contentsline{section}{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Asset.\+Path}} \\*Represents a relative path to an asset file or folder, typically under \textquotesingle{}Assets\textquotesingle{} or \textquotesingle{}Packages\textquotesingle{} }{\pageref{class_code_smile_editor_1_1_asset_1_1_path}}{}
+\item\contentsline{section}{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status}{Asset.\+Status}} \\*Groups asset status related functions }{\pageref{class_code_smile_editor_1_1_asset_1_1_status}}{}
+\item\contentsline{section}{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset}{Asset.\+Sub\+Asset}} \\*Groups all Sub-\/\+Asset related functionality }{\pageref{class_code_smile_editor_1_1_asset_1_1_sub_asset}}{}
+\item\contentsline{section}{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control}{Asset.\+Version\+Control}} \\*Groups version control related functionality }{\pageref{class_code_smile_editor_1_1_asset_1_1_version_control}}{}
+\item\contentsline{section}{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_load_exception}{Asset\+Load\+Exception}} \\*Thrown in cases where loading an existing asset fails. That means the Asset\+Database returned null on loading. This happens in a few situations in Unity where the Asset\+Database is unavailable, such as in a static ctor }{\pageref{class_code_smile_editor_1_1_asset_load_exception}}{}
+\end{DoxyCompactList}
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset.tex b/Docs~/latex/class_code_smile_editor_1_1_asset.tex
new file mode 100644
index 00000000..d18839c4
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset.tex
@@ -0,0 +1,2229 @@
+\doxysubsection{Asset Class Reference}
+\hypertarget{class_code_smile_editor_1_1_asset}{}\label{class_code_smile_editor_1_1_asset}\index{Asset@{Asset}}
+
+
+Replacement implementation for Unity\textquotesingle{}s {\itshape massive} Asset\+Database class with a cleaner interface and more error checking. Asset is instantiable so you can work with assets like you do with Unity\+Engine.\+Object. In fact, Asset is essentially a wrapper around the asset\textquotesingle{}s Unity\+Engine.\+Object (see\+: Main\+Object).
+
+
+
+
+Collaboration diagram for Asset\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[height=550pt]{class_code_smile_editor_1_1_asset__coll__graph}
+\end{center}
+\end{figure}
+\doxysubsubsubsection*{Classes}
+\begin{DoxyCompactItemize}
+\item
+class \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle}{Bundle}}
+\begin{DoxyCompactList}\small\item\em Groups all asset bundle related functionality. \end{DoxyCompactList}\item
+class \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database}{Database}}
+\begin{DoxyCompactList}\small\item\em Groups all asset database functionality. \end{DoxyCompactList}\item
+class \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency}{Dependency}}
+\begin{DoxyCompactList}\small\item\em Groups all dependency related functionality. \end{DoxyCompactList}\item
+class \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file}{File}}
+\begin{DoxyCompactList}\small\item\em Groups file related operations. \end{DoxyCompactList}\item
+class \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer}{Importer}}
+\begin{DoxyCompactList}\small\item\em Groups all Asset\+Importer related functionality. \end{DoxyCompactList}\item
+class \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label}{Label}}
+\begin{DoxyCompactList}\small\item\em Groups all asset label related static methods. \end{DoxyCompactList}\item
+class \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_package}{Package}}
+\begin{DoxyCompactList}\small\item\em Groups import/export functionality for \href{https://docs.unity3d.com/Manual/AssetPackages.html}{\texttt{ .unitypackage files}} (Asset Packages). \end{DoxyCompactList}\item
+class \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}
+\begin{DoxyCompactList}\small\item\em Represents a relative path to an asset file or folder, typically under \textquotesingle{}Assets\textquotesingle{} or \textquotesingle{}Packages\textquotesingle{}. \end{DoxyCompactList}\item
+class \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status}{Status}}
+\begin{DoxyCompactList}\small\item\em Groups asset status related functions. \end{DoxyCompactList}\item
+class \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset}{Sub\+Asset}}
+\begin{DoxyCompactList}\small\item\em Groups all Sub-\/\+Asset related functionality. \end{DoxyCompactList}\item
+class {\bfseries Throw\+If}
+\begin{DoxyCompactList}\small\item\em Contains error-\/ and sanity-\/checking methods for the entire Asset group of classes. \end{DoxyCompactList}\item
+class \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control}{Version\+Control}}
+\begin{DoxyCompactList}\small\item\em Groups version control related functionality. \end{DoxyCompactList}\end{DoxyCompactItemize}
+\doxysubsubsubsection*{Public Member Functions}
+\begin{DoxyCompactItemize}
+\item
+\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a547d8367ae51323946fe990575c2840f_a547d8367ae51323946fe990575c2840f}{Asset}} (Byte\mbox{[}$\,$\mbox{]} contents, \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path, Boolean overwrite\+Existing=false)
+\begin{DoxyCompactList}\small\item\em Creates an asset file from a byte array. \end{DoxyCompactList}\item
+\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a1b9aaba05c3acd1f57830883c53c0f1c_a1b9aaba05c3acd1f57830883c53c0f1c}{Asset}} (GUID asset\+Guid)
+\begin{DoxyCompactList}\small\item\em Loads the asset using its GUID. \end{DoxyCompactList}\item
+\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a1c606a7df96ba8897ce11d53af1e5c62_a1c606a7df96ba8897ce11d53af1e5c62}{Asset}} (Object asset)
+\begin{DoxyCompactList}\small\item\em Uses an existing asset reference. \end{DoxyCompactList}\item
+\mbox{\hyperlink{class_code_smile_editor_1_1_asset_ac6a1f3eb995796ea388c01daf3f30326_ac6a1f3eb995796ea388c01daf3f30326}{Asset}} (Object asset, \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path, Boolean overwrite\+Existing=false)
+\begin{DoxyCompactList}\small\item\em Creates an asset file from an existing Unity\+Engine.\+Object instance. \end{DoxyCompactList}\item
+\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a2139e47981f864d23cbf802ceeadb730_a2139e47981f864d23cbf802ceeadb730}{Asset}} (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Loads the asset at path. \end{DoxyCompactList}\item
+\mbox{\hyperlink{class_code_smile_editor_1_1_asset_a8f0fe59560dc52244f4af7d3875bdea1_a8f0fe59560dc52244f4af7d3875bdea1}{Asset}} (String contents, \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path, Boolean overwrite\+Existing=false)
+\begin{DoxyCompactList}\small\item\em Creates an asset file from a string. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a2ebda9df65a71b44245f958679cf302a_a2ebda9df65a71b44245f958679cf302a}{Add\+Label}} (String label)
+\begin{DoxyCompactList}\small\item\em Adds a label to the asset. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a677d0e58f64014b9722f943987c6ece5_a677d0e58f64014b9722f943987c6ece5}{Add\+Labels}} (String\mbox{[}$\,$\mbox{]} labels)
+\begin{DoxyCompactList}\small\item\em Adds several labels to the asset. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a7adbbe2c45d2f0188f60917a3d870946_a7adbbe2c45d2f0188f60917a3d870946}{Add\+Sub\+Asset}} (Object instance)
+\begin{DoxyCompactList}\small\item\em Adds an object as a sub-\/object to the asset. The object must not already be an asset. \end{DoxyCompactList}\item
+Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a31854cee2c427159e4ff866257872323_a31854cee2c427159e4ff866257872323}{Can\+Move}} (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} destination\+Path)
+\begin{DoxyCompactList}\small\item\em Tests if a Move operation will be successful without actually moving the asset. \end{DoxyCompactList}\item
+Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ac1b2c03d50954442d3462c97a5dc8882_ac1b2c03d50954442d3462c97a5dc8882}{Can\+Open\+In\+Editor}} ()
+\begin{DoxyCompactList}\small\item\em Returns true if the asset can be opened (edited) by the Unity Editor itself. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a1ec7cb3d4ed6edc811690f8855a7982f_a1ec7cb3d4ed6edc811690f8855a7982f}{Clear\+Labels}} ()
+\begin{DoxyCompactList}\small\item\em Removes all labels from the asset. \end{DoxyCompactList}\item
+Object \mbox{\hyperlink{class_code_smile_editor_1_1_asset_af6ce8c8d3d810ae286e98e54aa360adf_af6ce8c8d3d810ae286e98e54aa360adf}{Delete}} ()
+\begin{DoxyCompactList}\small\item\em Deletes the asset file. \end{DoxyCompactList}\item
+\mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ad06bce954d9c1e05d9f53e0274a9f85a_ad06bce954d9c1e05d9f53e0274a9f85a}{Duplicate}} ()
+\begin{DoxyCompactList}\small\item\em Creates a duplicate of the asset with a new, unique file name. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a6e9b9cc6eb629d6e34d6ea90088e0148_a6e9b9cc6eb629d6e34d6ea90088e0148}{Export\+Package}} (String package\+Path, Export\+Package\+Options options=Export\+Package\+Options.\+Default)
+\begin{DoxyCompactList}\small\item\em Exports this asset and its dependencies as a .unitypackage. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a80bd55f3de91ab63e74b3f66c1d1dd4b_a80bd55f3de91ab63e74b3f66c1d1dd4b}{Force\+Save}} ()
+\begin{DoxyCompactList}\small\item\em Saves the asset to disk, regardless of whether it is marked as \textquotesingle{}dirty\textquotesingle{}. \end{DoxyCompactList}\item
+T \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a192accd4daaea8a0cf39c331b9fcb95c_a192accd4daaea8a0cf39c331b9fcb95c}{Get\+Main$<$ T $>$}} ()
+\begin{DoxyCompactList}\small\item\em Gets the main object cast to T. \end{DoxyCompactList}\item
+T \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a5d27be243c1f698cba116b768e3f65ec_a5d27be243c1f698cba116b768e3f65ec}{Load$<$ T $>$}} ()
+\begin{DoxyCompactList}\small\item\em Loads a (sub) object from the asset identified by type. \end{DoxyCompactList}\item
+Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a45faf9fc17e3cb57b87d2ae09e4dd7f8_a45faf9fc17e3cb57b87d2ae09e4dd7f8}{Move}} (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} destination\+Path)
+\begin{DoxyCompactList}\small\item\em Moves asset to destination path. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a0666c1c07cd6e3eef35e058c2e09fdf9_a0666c1c07cd6e3eef35e058c2e09fdf9}{Open\+External}} (Int32 line\+Number=-\/1, Int32 column\+Number=-\/1)
+\begin{DoxyCompactList}\small\item\em Opens the asset in the external (associated) application. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ae1e3a3de65cb69b8ac09a0e10f2dbabd_ae1e3a3de65cb69b8ac09a0e10f2dbabd}{Remove\+Sub\+Asset}} (Object sub\+Asset)
+\begin{DoxyCompactList}\small\item\em Removes an object from the asset\textquotesingle{}s sub-\/objects. \end{DoxyCompactList}\item
+Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a28fe22006383d71d5b564df4a46b2675_a28fe22006383d71d5b564df4a46b2675}{Rename}} (String new\+File\+Name)
+\begin{DoxyCompactList}\small\item\em Renames an asset\textquotesingle{}s file name (without extension) or a folder. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a5df140c1ee51aadf7fe88ce3fb9cac33_a5df140c1ee51aadf7fe88ce3fb9cac33}{Save}} ()
+\begin{DoxyCompactList}\small\item\em Saves any changes to the asset to disk. \end{DoxyCompactList}\item
+\mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a1c6432dab22d51bcf01bf6ad221e7119_a1c6432dab22d51bcf01bf6ad221e7119}{Save\+As}} (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Saves a copy of the asset to a new path. Overwrites any existing asset at path. \end{DoxyCompactList}\item
+\mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_af23adc642520b7f00cb047865ef50ad0_af23adc642520b7f00cb047865ef50ad0}{Save\+As\+New}} (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Saves a copy of the asset to a new path. Generates a unique file/folder name if path already exists. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ac9fdda28d3fb7be683439603387df920_ac9fdda28d3fb7be683439603387df920}{Set\+Dirty}} ()
+\begin{DoxyCompactList}\small\item\em Marks the main object as dirty. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_af924398cf4176684f1c3bad2017f9ed5_af924398cf4176684f1c3bad2017f9ed5}{Set\+Labels}} (String\mbox{[}$\,$\mbox{]} labels)
+\begin{DoxyCompactList}\small\item\em Sets the asset\textquotesingle{}s labels, replacing all previously existing labels. \end{DoxyCompactList}\item
+Object \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a9ff25b59d227ab5d89fdabafffb9876a_a9ff25b59d227ab5d89fdabafffb9876a}{Trash}} ()
+\begin{DoxyCompactList}\small\item\em Moves the asset to the OS trash. Same as Delete, but recoverable. \end{DoxyCompactList}\end{DoxyCompactItemize}
+\doxysubsubsubsection*{Static Public Member Functions}
+\begin{DoxyCompactItemize}
+\item
+static Int64 \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a2adfcc36a6b34de943aedfdd1db882f6_a2adfcc36a6b34de943aedfdd1db882f6}{Get\+File\+Id}} (\mbox{[}Not\+Null\mbox{]} Object asset)
+\begin{DoxyCompactList}\small\item\em Returns the local File\+ID of the object. \end{DoxyCompactList}\item
+static GUID \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a856bd8735a17035cea08243c66e0eee8_a856bd8735a17035cea08243c66e0eee8}{Get\+Guid}} (\mbox{[}Not\+Null\mbox{]} Object asset)
+\begin{DoxyCompactList}\small\item\em Returns the GUID of an object. Returns an empty GUID if the object is null or not an asset. \end{DoxyCompactList}\item
+static Value\+Tuple$<$ GUID, Int64 $>$ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a0b39fc9791994323a44a1126f3a41b99_a0b39fc9791994323a44a1126f3a41b99}{Get\+Guid\+And\+File\+Id}} (\mbox{[}Not\+Null\mbox{]} Object asset)
+\item
+static Texture2D \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ac028cbad5fe3dab688c9dff304f80ad2_ac028cbad5fe3dab688c9dff304f80ad2}{Get\+Icon}} (\mbox{[}Not\+Null\mbox{]} Object asset)
+\begin{DoxyCompactList}\small\item\em Returns the icon associated with the asset type. \end{DoxyCompactList}\item
+static Texture2D \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a8039d1c88de4736a9f3e706e224efdff_a8039d1c88de4736a9f3e706e224efdff}{Get\+Icon}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Returns the icon associated with the asset type. \end{DoxyCompactList}\item
+static String \mbox{\hyperlink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Get\+Last\+Error\+Message}} ()
+\begin{DoxyCompactList}\small\item\em Returns the last error message returned by some methods that provide such a failure message. \end{DoxyCompactList}\item
+static Type \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a3192f3d24b4397b10f50ef366ee3feba_a3192f3d24b4397b10f50ef366ee3feba}{Get\+Main\+Type}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Returns the type of the main asset at the path. \end{DoxyCompactList}\item
+static Type \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a82b0bb0beb5f5422951631789bca4256_a82b0bb0beb5f5422951631789bca4256}{Get\+Main\+Type}} (GUID guid)
+\begin{DoxyCompactList}\small\item\em Returns the type of the main asset for the GUID. \end{DoxyCompactList}\item
+static Type \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ab9e60595a8cc5748f38f91b3ed83aeca_ab9e60595a8cc5748f38f91b3ed83aeca}{Get\+Sub\+Type}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path, Int64 file\+Id)
+\begin{DoxyCompactList}\small\item\em Gets the type of a sub asset by the main asset\textquotesingle{}s path and the local file ID of the sub-\/asset. \end{DoxyCompactList}\item
+static implicit \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ae41aa018507db1deffb10096f33e3bb6_ae41aa018507db1deffb10096f33e3bb6}{operator Asset}} (GUID guid)
+\begin{DoxyCompactList}\small\item\em Implicit conversion of GUID to an asset instance. \end{DoxyCompactList}\item
+static implicit \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ac84df38322545eff4fb610f424420751_ac84df38322545eff4fb610f424420751}{operator Asset}} (Object asset)
+\begin{DoxyCompactList}\small\item\em Implicit conversion of Unity\+Engine.\+Object to an Asset. \end{DoxyCompactList}\item
+static implicit \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a23920865dfc0888bc17dc618ab30cbe0_a23920865dfc0888bc17dc618ab30cbe0}{operator Asset}} (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Implicit conversion of Asset.\+Path to an Asset instance. \end{DoxyCompactList}\item
+static implicit \mbox{\hyperlink{class_code_smile_editor_1_1_asset_aa01a879ca0793e3def47211f4d8d338d_aa01a879ca0793e3def47211f4d8d338d}{operator Asset}} (String path)
+\begin{DoxyCompactList}\small\item\em Implicit conversion of string path to an asset instance. \end{DoxyCompactList}\item
+static implicit \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ae36538faed7f7dd4bd6d2a42867bbee1_ae36538faed7f7dd4bd6d2a42867bbee1}{operator Object}} (\mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}} asset)
+\begin{DoxyCompactList}\small\item\em Implicit conversion to Unity\+Engine.\+Object. \end{DoxyCompactList}\end{DoxyCompactItemize}
+\doxysubsubsubsection*{Properties}
+\begin{DoxyCompactItemize}
+\item
+Type \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a57983fe52530259a94425f11144dcf12_a57983fe52530259a94425f11144dcf12}{Active\+Importer}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the active Asset\+Importer type for this asset. \end{DoxyCompactList}\item
+\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a54bbd4600c9787134d849c022cefe90e_a54bbd4600c9787134d849c022cefe90e}{Asset\+Path}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the path to the asset (file or folder). \end{DoxyCompactList}\item
+Type\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_afd494f6a711cc6e5683d95823c87f916_afd494f6a711cc6e5683d95823c87f916}{Available\+Importers}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the available importers for this asset. \end{DoxyCompactList}\item
+Type \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a171f2bcee950b6e79886c7507f9beb27_a171f2bcee950b6e79886c7507f9beb27}{Default\+Importer}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the default Asset\+Importer type for this asset. \end{DoxyCompactList}\item
+String\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_af2fc7a5ab674d2293e0c80bcceb709f6_af2fc7a5ab674d2293e0c80bcceb709f6}{Dependencies}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the assets\textquotesingle{} direct and indirect dependencies (recursive). \end{DoxyCompactList}\item
+String\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a0ae61d10248f285be98d0bab84ca431e_a0ae61d10248f285be98d0bab84ca431e}{Direct\+Dependencies}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the assets\textquotesingle{} direct dependencies. \end{DoxyCompactList}\item
+Int64 \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a2d3c3468bf091cc7260b4cdca91b4a55_a2d3c3468bf091cc7260b4cdca91b4a55}{File\+Id}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the local File\+ID of the asset. \end{DoxyCompactList}\item
+GUID \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a66a3fc7176ae79e7e9ee85df99c5ff7c_a66a3fc7176ae79e7e9ee85df99c5ff7c}{Guid}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the asset\textquotesingle{}s GUID. \end{DoxyCompactList}\item
+Texture2D \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a68c0326ba0d934f74e65a06f805627e0_a68c0326ba0d934f74e65a06f805627e0}{Icon}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the icon texture associated with the asset type. \end{DoxyCompactList}\item
+Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_af3886ebc9167b6615000ad5835ded3d2_af3886ebc9167b6615000ad5835ded3d2}{Is\+Deleted}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns true after the asset has been deleted. \end{DoxyCompactList}\item
+Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ae1533f44e1d6a3921dcf9dc0c73e5721_ae1533f44e1d6a3921dcf9dc0c73e5721}{Is\+Foreign}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns whether this is a foreign asset. \end{DoxyCompactList}\item
+Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ac3eef672ee8ea3c14524ee2a1d7fbfef_ac3eef672ee8ea3c14524ee2a1d7fbfef}{Is\+Importer\+Overridden}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns true if the asset\textquotesingle{}s default Asset\+Importer type has been overridden. \end{DoxyCompactList}\item
+Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a993540e3a2141abe3463b2a75655f931_a993540e3a2141abe3463b2a75655f931}{Is\+Native}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns whether this is a native asset. \end{DoxyCompactList}\item
+Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a16590be90618aaa5682dbdc597fd5223_a16590be90618aaa5682dbdc597fd5223}{Is\+Scene}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns true if this is a scene asset. \end{DoxyCompactList}\item
+String\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a537c910df9f9f5d24a916b70934f4de8_a537c910df9f9f5d24a916b70934f4de8}{Labels}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Sets or gets the labels associated with the asset. \end{DoxyCompactList}\item
+Object \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ab39ec1f49ab79e8ae84c6a53a2458f2d_ab39ec1f49ab79e8ae84c6a53a2458f2d}{Main\+Object}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Gets or sets the asset\textquotesingle{}s main object. \end{DoxyCompactList}\item
+Type \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a15e35df5acbfe3751310d7fd241a6295_a15e35df5acbfe3751310d7fd241a6295}{Main\+Object\+Type}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the type of the main asset at the given path. \end{DoxyCompactList}\item
+\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a0084f5ad8a13c505013748101a81b1df_a0084f5ad8a13c505013748101a81b1df}{Meta\+Path}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the path to the .meta file for the asset. \end{DoxyCompactList}\item
+String \mbox{\hyperlink{class_code_smile_editor_1_1_asset_af8ffb2f0dfbb3585bd764056147d01b3_af8ffb2f0dfbb3585bd764056147d01b3}{Owning\+Bundle}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the bundle name the asset belongs to. \end{DoxyCompactList}\item
+String \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a91f88014dec2b3bff50d35f595e6409d_a91f88014dec2b3bff50d35f595e6409d}{Owning\+Bundle\+Variant}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the bundle variant name the asset belongs to. \end{DoxyCompactList}\item
+Object\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_accd20b073ee732df08cf6ba0b9b8a389_accd20b073ee732df08cf6ba0b9b8a389}{Sub\+Assets}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Loads and returns all sub objects the asset is comprised of. \end{DoxyCompactList}\item
+Object\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_ace611059f2ab296e1be5b51d33617000_ace611059f2ab296e1be5b51d33617000}{Visible\+Sub\+Assets}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Loads and returns only those asset objects that are shown in the project view. \end{DoxyCompactList}\end{DoxyCompactItemize}
+
+
+\doxysubsubsection{Detailed Description}
+Replacement implementation for Unity\textquotesingle{}s {\itshape massive} Asset\+Database class with a cleaner interface and more error checking. Asset is instantiable so you can work with assets like you do with Unity\+Engine.\+Object. In fact, Asset is essentially a wrapper around the asset\textquotesingle{}s Unity\+Engine.\+Object (see\+: Main\+Object).
+
+Definition at line \mbox{\hyperlink{_asset_8_bundle_8cs_source_l00010}{10}} of file \mbox{\hyperlink{_asset_8_bundle_8cs_source}{Asset.\+Bundle.\+cs}}.
+
+
+
+\doxysubsubsection{Constructor \& Destructor Documentation}
+\Hypertarget{class_code_smile_editor_1_1_asset_a547d8367ae51323946fe990575c2840f_a547d8367ae51323946fe990575c2840f}\label{class_code_smile_editor_1_1_asset_a547d8367ae51323946fe990575c2840f_a547d8367ae51323946fe990575c2840f}
+\index{Asset@{Asset}!Asset@{Asset}}
+\index{Asset@{Asset}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{Asset()}{Asset()}\hspace{0.1cm}{\footnotesize\ttfamily [1/6]}}
+{\footnotesize\ttfamily \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}} (\begin{DoxyParamCaption}\item[{Byte\mbox{[}$\,$\mbox{]}}]{contents, }\item[{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path, }\item[{Boolean}]{overwrite\+Existing = {\ttfamily false} }\end{DoxyParamCaption})}
+
+
+
+Creates an asset file from a byte array.
+
+Writes the data to a file, then imports the file and loads the asset object.
+
+
+\begin{DoxyParams}{Parameters}
+{\em contents} & The data to save as an asset file.\\
+\hline
+{\em path} & Path where to save the new asset file, with extension.\\
+\hline
+{\em overwrite\+Existing} & If true, will overwrite any existing asset at path. Otherwise does not overwrite but generates a unique filename (default). \\
+\hline
+\end{DoxyParams}
+
+\begin{DoxyExceptions}{Exceptions}
+{\em System.\+Argument\+Null\+Exception} & If contents is null.\\
+\hline
+{\em System.\+Argument\+Null\+Exception} & If the path is null.\\
+\hline
+\end{DoxyExceptions}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset}{Code\+Smile\+Editor.\+Asset(string,\+Code\+Smile\+Editor.\+Asset.\+Path,bool)}
+\item \doxylink{class_code_smile_editor_1_1_asset}{Code\+Smile\+Editor.\+Asset(\+Object,\+Code\+Smile\+Editor.\+Asset.\+Path,bool)}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8cs_source_l00042}{42}} of file \mbox{\hyperlink{_asset_8cs_source}{Asset.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00043\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00044\ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(contents,\ nameof(contents));}
+\DoxyCodeLine{00045\ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(path,\ nameof(path));}
+\DoxyCodeLine{00046\ }
+\DoxyCodeLine{00047\ \ \ \ \ \ \ \ \ \ \ \ \ path\ =\ Path.UniquifyAsNeeded(path,\ overwriteExisting);}
+\DoxyCodeLine{00048\ \ \ \ \ \ \ \ \ \ \ \ \ var\ asset\ =\ File.CreateInternal(contents,\ path);}
+\DoxyCodeLine{00049\ \ \ \ \ \ \ \ \ \ \ \ \ InitWithMainObject(asset);}
+\DoxyCodeLine{00050\ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_a8f0fe59560dc52244f4af7d3875bdea1_a8f0fe59560dc52244f4af7d3875bdea1}\label{class_code_smile_editor_1_1_asset_a8f0fe59560dc52244f4af7d3875bdea1_a8f0fe59560dc52244f4af7d3875bdea1}
+\index{Asset@{Asset}!Asset@{Asset}}
+\index{Asset@{Asset}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{Asset()}{Asset()}\hspace{0.1cm}{\footnotesize\ttfamily [2/6]}}
+{\footnotesize\ttfamily \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}} (\begin{DoxyParamCaption}\item[{String}]{contents, }\item[{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path, }\item[{Boolean}]{overwrite\+Existing = {\ttfamily false} }\end{DoxyParamCaption})}
+
+
+
+Creates an asset file from a string.
+
+
+\begin{DoxyParams}{Parameters}
+{\em contents} & The string to save as an asset file.\\
+\hline
+{\em path} & Path where to save the new asset file, with extension.\\
+\hline
+{\em overwrite\+Existing} & If true, will overwrite any existing asset at path. Otherwise does not overwrite but generates a unique filename (default). \\
+\hline
+\end{DoxyParams}
+
+\begin{DoxyExceptions}{Exceptions}
+{\em Argument\+Null\+Exception} & If contents is null.\\
+\hline
+{\em Argument\+Null\+Exception} & If the path is null.\\
+\hline
+\end{DoxyExceptions}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset}{Code\+Smile\+Editor.\+Asset(\+Byte\mbox{[}$\,$\mbox{]},\+Code\+Smile\+Editor.\+Asset.\+Path,\+Boolean)}
+\item \doxylink{class_code_smile_editor_1_1_asset}{Code\+Smile\+Editor.\+Asset(\+Object,\+Code\+Smile\+Editor.\+Asset.\+Path,\+Boolean)}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8cs_source_l00067}{67}} of file \mbox{\hyperlink{_asset_8cs_source}{Asset.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00068\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00069\ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(contents,\ nameof(contents));}
+\DoxyCodeLine{00070\ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(path,\ nameof(path));}
+\DoxyCodeLine{00071\ }
+\DoxyCodeLine{00072\ \ \ \ \ \ \ \ \ \ \ \ \ path\ =\ Path.UniquifyAsNeeded(path,\ overwriteExisting);}
+\DoxyCodeLine{00073\ \ \ \ \ \ \ \ \ \ \ \ \ var\ asset\ =\ File.CreateInternal(contents,\ path);}
+\DoxyCodeLine{00074\ \ \ \ \ \ \ \ \ \ \ \ \ InitWithMainObject(asset);}
+\DoxyCodeLine{00075\ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_ac6a1f3eb995796ea388c01daf3f30326_ac6a1f3eb995796ea388c01daf3f30326}\label{class_code_smile_editor_1_1_asset_ac6a1f3eb995796ea388c01daf3f30326_ac6a1f3eb995796ea388c01daf3f30326}
+\index{Asset@{Asset}!Asset@{Asset}}
+\index{Asset@{Asset}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{Asset()}{Asset()}\hspace{0.1cm}{\footnotesize\ttfamily [3/6]}}
+{\footnotesize\ttfamily \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}} (\begin{DoxyParamCaption}\item[{Object}]{asset, }\item[{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path, }\item[{Boolean}]{overwrite\+Existing = {\ttfamily false} }\end{DoxyParamCaption})}
+
+
+
+Creates an asset file from an existing Unity\+Engine.\+Object instance.
+
+The object must not already be an asset file (throws exception).
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & The instance to create as an asset file.\\
+\hline
+{\em path} & Path where to save the new asset file, with extension.\\
+\hline
+{\em overwrite\+Existing} & If true, will overwrite any existing asset at path. Otherwise does not overwrite but generates a unique filename (default). \\
+\hline
+\end{DoxyParams}
+
+\begin{DoxyExceptions}{Exceptions}
+{\em Argument\+Null\+Exception} & If the object is null.\\
+\hline
+{\em Argument\+Null\+Exception} & If the path is null.\\
+\hline
+{\em Argument\+Exception} & If the object is already an asset on disk.\\
+\hline
+\end{DoxyExceptions}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset}{Code\+Smile\+Editor.\+Asset(\+Byte\mbox{[}$\,$\mbox{]},\+Code\+Smile\+Editor.\+Asset.\+Path,\+Boolean)}
+\item \doxylink{class_code_smile_editor_1_1_asset}{Code\+Smile\+Editor.\+Asset(\+String,\+Code\+Smile\+Editor.\+Asset.\+Path,\+Boolean)}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8cs_source_l00096}{96}} of file \mbox{\hyperlink{_asset_8cs_source}{Asset.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00097\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00098\ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(asset,\ nameof(asset));}
+\DoxyCodeLine{00099\ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(path,\ nameof(path));}
+\DoxyCodeLine{00100\ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.AlreadyAnAsset(asset);}
+\DoxyCodeLine{00101\ }
+\DoxyCodeLine{00102\ \ \ \ \ \ \ \ \ \ \ \ \ path\ =\ Path.UniquifyAsNeeded(path,\ overwriteExisting);}
+\DoxyCodeLine{00103\ \ \ \ \ \ \ \ \ \ \ \ \ File.CreateInternal(asset,\ path);}
+\DoxyCodeLine{00104\ \ \ \ \ \ \ \ \ \ \ \ \ InitWithMainObject(asset);}
+\DoxyCodeLine{00105\ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_a2139e47981f864d23cbf802ceeadb730_a2139e47981f864d23cbf802ceeadb730}\label{class_code_smile_editor_1_1_asset_a2139e47981f864d23cbf802ceeadb730_a2139e47981f864d23cbf802ceeadb730}
+\index{Asset@{Asset}!Asset@{Asset}}
+\index{Asset@{Asset}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{Asset()}{Asset()}\hspace{0.1cm}{\footnotesize\ttfamily [4/6]}}
+{\footnotesize\ttfamily \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})}
+
+
+
+Loads the asset at path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an existing asset.\\
+\hline
+\end{DoxyParams}
+
+\begin{DoxyExceptions}{Exceptions}
+{\em Argument\+Null\+Exception} & If the path is null.\\
+\hline
+{\em File\+Not\+Found\+Exception} & If the path is not an asset on disk.\\
+\hline
+\end{DoxyExceptions}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset}{Code\+Smile\+Editor.\+Asset(\+Object)}
+\item \doxylink{class_code_smile_editor_1_1_asset}{Code\+Smile\+Editor.\+Asset(\+GUID)}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_a1b9aaba05c3acd1f57830883c53c0f1c_a1b9aaba05c3acd1f57830883c53c0f1c}\label{class_code_smile_editor_1_1_asset_a1b9aaba05c3acd1f57830883c53c0f1c_a1b9aaba05c3acd1f57830883c53c0f1c}
+\index{Asset@{Asset}!Asset@{Asset}}
+\index{Asset@{Asset}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{Asset()}{Asset()}\hspace{0.1cm}{\footnotesize\ttfamily [5/6]}}
+{\footnotesize\ttfamily \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}} (\begin{DoxyParamCaption}\item[{GUID}]{asset\+Guid }\end{DoxyParamCaption})}
+
+
+
+Loads the asset using its GUID.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset\+Guid} & GUID of an asset.\\
+\hline
+\end{DoxyParams}
+
+\begin{DoxyExceptions}{Exceptions}
+{\em Argument\+Exception} & If the GUID is not in the Asset\+Database (not an asset).\\
+\hline
+\end{DoxyExceptions}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset}{Code\+Smile\+Editor.\+Asset(\+Object)}
+\item \doxylink{class_code_smile_editor_1_1_asset}{Code\+Smile\+Editor.\+Asset(\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_a1c606a7df96ba8897ce11d53af1e5c62_a1c606a7df96ba8897ce11d53af1e5c62}\label{class_code_smile_editor_1_1_asset_a1c606a7df96ba8897ce11d53af1e5c62_a1c606a7df96ba8897ce11d53af1e5c62}
+\index{Asset@{Asset}!Asset@{Asset}}
+\index{Asset@{Asset}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{Asset()}{Asset()}\hspace{0.1cm}{\footnotesize\ttfamily [6/6]}}
+{\footnotesize\ttfamily \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}} (\begin{DoxyParamCaption}\item[{Object}]{asset }\end{DoxyParamCaption})}
+
+
+
+Uses an existing asset reference.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & Instance of an asset.\\
+\hline
+\end{DoxyParams}
+
+\begin{DoxyExceptions}{Exceptions}
+{\em Argument\+Null\+Exception} & If the object is null.\\
+\hline
+{\em Argument\+Exception} & If the object is not an asset on disk.\\
+\hline
+\end{DoxyExceptions}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset}{Code\+Smile\+Editor.\+Asset(\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset}{Code\+Smile\+Editor.\+Asset(\+GUID)}
+\end{DoxyItemize}
+
+\doxysubsubsection{Member Function Documentation}
+\Hypertarget{class_code_smile_editor_1_1_asset_a2ebda9df65a71b44245f958679cf302a_a2ebda9df65a71b44245f958679cf302a}\label{class_code_smile_editor_1_1_asset_a2ebda9df65a71b44245f958679cf302a_a2ebda9df65a71b44245f958679cf302a}
+\index{Asset@{Asset}!AddLabel@{AddLabel}}
+\index{AddLabel@{AddLabel}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{AddLabel()}{AddLabel()}}
+{\footnotesize\ttfamily void Add\+Label (\begin{DoxyParamCaption}\item[{String}]{label }\end{DoxyParamCaption})}
+
+
+
+Adds a label to the asset.
+
+When setting multiple labels use \doxylink{class_code_smile_editor_1_1_asset_a677d0e58f64014b9722f943987c6ece5_a677d0e58f64014b9722f943987c6ece5}{Code\+Smile\+Editor.\+Asset.\+Add\+Labels} or \doxylink{class_code_smile_editor_1_1_asset_af924398cf4176684f1c3bad2017f9ed5_af924398cf4176684f1c3bad2017f9ed5}{Code\+Smile\+Editor.\+Asset.\+Set\+Labels} as this will be more efficient.
+
+
+\begin{DoxyParams}{Parameters}
+{\em label} & The label to add.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a677d0e58f64014b9722f943987c6ece5_a677d0e58f64014b9722f943987c6ece5}{Code\+Smile\+Editor.\+Asset.\+Add\+Labels}
+\item \doxylink{class_code_smile_editor_1_1_asset_af924398cf4176684f1c3bad2017f9ed5_af924398cf4176684f1c3bad2017f9ed5}{Code\+Smile\+Editor.\+Asset.\+Set\+Labels}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_a677d0e58f64014b9722f943987c6ece5_a677d0e58f64014b9722f943987c6ece5}\label{class_code_smile_editor_1_1_asset_a677d0e58f64014b9722f943987c6ece5_a677d0e58f64014b9722f943987c6ece5}
+\index{Asset@{Asset}!AddLabels@{AddLabels}}
+\index{AddLabels@{AddLabels}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{AddLabels()}{AddLabels()}}
+{\footnotesize\ttfamily void Add\+Labels (\begin{DoxyParamCaption}\item[{String\mbox{[}$\,$\mbox{]}}]{labels }\end{DoxyParamCaption})}
+
+
+
+Adds several labels to the asset.
+
+
+\begin{DoxyParams}{Parameters}
+{\em labels} & An array of labels to add.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a2ebda9df65a71b44245f958679cf302a_a2ebda9df65a71b44245f958679cf302a}{Code\+Smile\+Editor.\+Asset.\+Add\+Label}
+\item \doxylink{class_code_smile_editor_1_1_asset_af924398cf4176684f1c3bad2017f9ed5_af924398cf4176684f1c3bad2017f9ed5}{Code\+Smile\+Editor.\+Asset.\+Set\+Labels}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_a7adbbe2c45d2f0188f60917a3d870946_a7adbbe2c45d2f0188f60917a3d870946}\label{class_code_smile_editor_1_1_asset_a7adbbe2c45d2f0188f60917a3d870946_a7adbbe2c45d2f0188f60917a3d870946}
+\index{Asset@{Asset}!AddSubAsset@{AddSubAsset}}
+\index{AddSubAsset@{AddSubAsset}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{AddSubAsset()}{AddSubAsset()}}
+{\footnotesize\ttfamily void Add\+Sub\+Asset (\begin{DoxyParamCaption}\item[{Object}]{instance }\end{DoxyParamCaption})}
+
+
+
+Adds an object as a sub-\/object to the asset. The object must not already be an asset.
+
+This implicitly saves the change to disk -\/ you do NOT need to call Save() afterwards.
+
+
+\begin{DoxyParams}{Parameters}
+{\em instance} & The object instance to add as subobject to this asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_ae1e3a3de65cb69b8ac09a0e10f2dbabd_ae1e3a3de65cb69b8ac09a0e10f2dbabd}{Code\+Smile\+Editor.\+Asset.\+Remove\+Sub\+Asset}
+\item \doxylink{class_code_smile_editor_1_1_asset_accd20b073ee732df08cf6ba0b9b8a389_accd20b073ee732df08cf6ba0b9b8a389}{Code\+Smile\+Editor.\+Asset.\+Sub\+Assets}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_a31854cee2c427159e4ff866257872323_a31854cee2c427159e4ff866257872323}\label{class_code_smile_editor_1_1_asset_a31854cee2c427159e4ff866257872323_a31854cee2c427159e4ff866257872323}
+\index{Asset@{Asset}!CanMove@{CanMove}}
+\index{CanMove@{CanMove}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{CanMove()}{CanMove()}}
+{\footnotesize\ttfamily Boolean Can\+Move (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{destination\+Path }\end{DoxyParamCaption})}
+
+
+
+Tests if a Move operation will be successful without actually moving the asset.
+
+Returns false if one or more folders in destination\+Path do not exist. On failure, use \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message} to get the failure error message.
+
+
+\begin{DoxyParams}{Parameters}
+{\em destination\+Path} & The path where to move the asset to. May have a different extension.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if moving the asset will be successful, false otherwise.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a45faf9fc17e3cb57b87d2ae09e4dd7f8_a45faf9fc17e3cb57b87d2ae09e4dd7f8}{Code\+Smile\+Editor.\+Asset.\+Move}
+\item \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_ac1b2c03d50954442d3462c97a5dc8882_ac1b2c03d50954442d3462c97a5dc8882}\label{class_code_smile_editor_1_1_asset_ac1b2c03d50954442d3462c97a5dc8882_ac1b2c03d50954442d3462c97a5dc8882}
+\index{Asset@{Asset}!CanOpenInEditor@{CanOpenInEditor}}
+\index{CanOpenInEditor@{CanOpenInEditor}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{CanOpenInEditor()}{CanOpenInEditor()}}
+{\footnotesize\ttfamily Boolean Can\+Open\+In\+Editor (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
+
+
+
+Returns true if the asset can be opened (edited) by the Unity Editor itself.
+
+Example assets where this is true\+: materials, .unity (scene), .asset files, .. Where it is false\+: audio clips, scripts, reflection probes, ..
+
+\begin{DoxyReturn}{Returns}
+True if the editor can edit this asset type.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a0666c1c07cd6e3eef35e058c2e09fdf9_a0666c1c07cd6e3eef35e058c2e09fdf9}{Code\+Smile\+Editor.\+Asset.\+Open\+External}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_a1ec7cb3d4ed6edc811690f8855a7982f_a1ec7cb3d4ed6edc811690f8855a7982f}\label{class_code_smile_editor_1_1_asset_a1ec7cb3d4ed6edc811690f8855a7982f_a1ec7cb3d4ed6edc811690f8855a7982f}
+\index{Asset@{Asset}!ClearLabels@{ClearLabels}}
+\index{ClearLabels@{ClearLabels}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{ClearLabels()}{ClearLabels()}}
+{\footnotesize\ttfamily void Clear\+Labels (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
+
+
+
+Removes all labels from the asset.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a2ebda9df65a71b44245f958679cf302a_a2ebda9df65a71b44245f958679cf302a}{Code\+Smile\+Editor.\+Asset.\+Add\+Label}
+\item \doxylink{class_code_smile_editor_1_1_asset_a677d0e58f64014b9722f943987c6ece5_a677d0e58f64014b9722f943987c6ece5}{Code\+Smile\+Editor.\+Asset.\+Add\+Labels}
+\item \doxylink{class_code_smile_editor_1_1_asset_af924398cf4176684f1c3bad2017f9ed5_af924398cf4176684f1c3bad2017f9ed5}{Code\+Smile\+Editor.\+Asset.\+Set\+Labels}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_af6ce8c8d3d810ae286e98e54aa360adf_af6ce8c8d3d810ae286e98e54aa360adf}\label{class_code_smile_editor_1_1_asset_af6ce8c8d3d810ae286e98e54aa360adf_af6ce8c8d3d810ae286e98e54aa360adf}
+\index{Asset@{Asset}!Delete@{Delete}}
+\index{Delete@{Delete}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{Delete()}{Delete()}}
+{\footnotesize\ttfamily Object Delete (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
+
+
+
+Deletes the asset file.
+
+Does NOT destroy the object reference. CAUTION\+: The asset instance is no longer valid after this call and should be discarded.
+
+\begin{DoxyReturn}{Returns}
+If successful, returns the former Main\+Object. It is no longer an asset but still a valid instance. Returns null if the object wasn\textquotesingle{}t deleted.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a9ff25b59d227ab5d89fdabafffb9876a_a9ff25b59d227ab5d89fdabafffb9876a}{Code\+Smile\+Editor.\+Asset.\+Trash}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8cs_source_l00442}{442}} of file \mbox{\hyperlink{_asset_8cs_source}{Asset.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00443\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00444\ \ \ \ \ \ \ \ \ \ \ \ \ var\ mainObject\ =\ m\_MainObject;}
+\DoxyCodeLine{00445\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (File.Delete(m\_AssetPath))}
+\DoxyCodeLine{00446\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ InvalidateInstance();}
+\DoxyCodeLine{00447\ }
+\DoxyCodeLine{00448\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ mainObject;}
+\DoxyCodeLine{00449\ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+References \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a5a01eb8f2adc1117b9df394acbe3c529_a5a01eb8f2adc1117b9df394acbe3c529}{Asset.\+File.\+Delete()}}.
+
+Here is the call graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=299pt]{class_code_smile_editor_1_1_asset_af6ce8c8d3d810ae286e98e54aa360adf_af6ce8c8d3d810ae286e98e54aa360adf_cgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_ad06bce954d9c1e05d9f53e0274a9f85a_ad06bce954d9c1e05d9f53e0274a9f85a}\label{class_code_smile_editor_1_1_asset_ad06bce954d9c1e05d9f53e0274a9f85a_ad06bce954d9c1e05d9f53e0274a9f85a}
+\index{Asset@{Asset}!Duplicate@{Duplicate}}
+\index{Duplicate@{Duplicate}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{Duplicate()}{Duplicate()}}
+{\footnotesize\ttfamily \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}} Duplicate (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
+
+
+
+Creates a duplicate of the asset with a new, unique file name.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{asset.Duplicate();}
+
+\end{DoxyCode}
+ is short for
+\begin{DoxyCode}{0}
+\DoxyCodeLine{asset.SaveAsNew(asset.AssetPath);}
+
+\end{DoxyCode}
+
+
+\begin{DoxyReturn}{Returns}
+The asset instance of the duplicate.
+\end{DoxyReturn}
+\Hypertarget{class_code_smile_editor_1_1_asset_a6e9b9cc6eb629d6e34d6ea90088e0148_a6e9b9cc6eb629d6e34d6ea90088e0148}\label{class_code_smile_editor_1_1_asset_a6e9b9cc6eb629d6e34d6ea90088e0148_a6e9b9cc6eb629d6e34d6ea90088e0148}
+\index{Asset@{Asset}!ExportPackage@{ExportPackage}}
+\index{ExportPackage@{ExportPackage}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{ExportPackage()}{ExportPackage()}}
+{\footnotesize\ttfamily void Export\+Package (\begin{DoxyParamCaption}\item[{String}]{package\+Path, }\item[{Export\+Package\+Options}]{options = {\ttfamily ExportPackageOptions.Default} }\end{DoxyParamCaption})}
+
+
+
+Exports this asset and its dependencies as a .unitypackage.
+
+
+\begin{DoxyParams}{Parameters}
+{\em package\+Path} & Full path to a .unitypackage file. May point to any location on the file system as long as the user has write permissions there. \\
+\hline
+{\em options} & \href{https://docs.unity3d.com/ScriptReference/ExportPackageOptions.html}{\texttt{ Export\+Package\+Options}} \\
+\hline
+\end{DoxyParams}
+\Hypertarget{class_code_smile_editor_1_1_asset_a80bd55f3de91ab63e74b3f66c1d1dd4b_a80bd55f3de91ab63e74b3f66c1d1dd4b}\label{class_code_smile_editor_1_1_asset_a80bd55f3de91ab63e74b3f66c1d1dd4b_a80bd55f3de91ab63e74b3f66c1d1dd4b}
+\index{Asset@{Asset}!ForceSave@{ForceSave}}
+\index{ForceSave@{ForceSave}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{ForceSave()}{ForceSave()}}
+{\footnotesize\ttfamily void Force\+Save (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
+
+
+
+Saves the asset to disk, regardless of whether it is marked as \textquotesingle{}dirty\textquotesingle{}.
+
+Force saving is achieved by flagging the object as dirty with \href{https://docs.unity3d.com/ScriptReference/EditorUtility.SetDirty.html}{\texttt{ Editor\+Utility.\+Set\+Dirty()}}.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a5df140c1ee51aadf7fe88ce3fb9cac33_a5df140c1ee51aadf7fe88ce3fb9cac33}{Code\+Smile\+Editor.\+Asset.\+Save()}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_a2adfcc36a6b34de943aedfdd1db882f6_a2adfcc36a6b34de943aedfdd1db882f6}\label{class_code_smile_editor_1_1_asset_a2adfcc36a6b34de943aedfdd1db882f6_a2adfcc36a6b34de943aedfdd1db882f6}
+\index{Asset@{Asset}!GetFileId@{GetFileId}}
+\index{GetFileId@{GetFileId}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{GetFileId()}{GetFileId()}}
+{\footnotesize\ttfamily static Int64 Get\+File\+Id (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns the local File\+ID of the object.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The local file\+ID or 0 if obj is null or not an asset.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a856bd8735a17035cea08243c66e0eee8_a856bd8735a17035cea08243c66e0eee8}{Code\+Smile\+Editor.\+Asset.\+Get\+Guid}
+\item \doxylink{class_code_smile_editor_1_1_asset_a0b39fc9791994323a44a1126f3a41b99_a0b39fc9791994323a44a1126f3a41b99}{Code\+Smile\+Editor.\+Asset.\+Get\+Guid\+And\+File\+Id}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.TryGetGUIDAndLocalFileIdentifier.html}{\texttt{ Asset\+Database.\+Try\+Get\+GUIDAnd\+Local\+File\+Identifier}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_static_8cs_source_l00126}{126}} of file \mbox{\hyperlink{_asset_8_static_8cs_source}{Asset.\+Static.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00127\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00128\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (asset\ ==\ \textcolor{keyword}{null})}
+\DoxyCodeLine{00129\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ 0L;}
+\DoxyCodeLine{00130\ }
+\DoxyCodeLine{00131\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ explicit\ variable\ +\ assign\ because\ Unity\ 2021\ has\ both\ long\ and\ int\ variants\ of\ the\ TryGetGUID*\ method}}
+\DoxyCodeLine{00132\ \ \ \ \ \ \ \ \ \ \ \ \ var\ localId\ =\ Int64.MaxValue;}
+\DoxyCodeLine{00133\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.TryGetGUIDAndLocalFileIdentifier(asset,\ out\ var\ \_,\ out\ localId)\ ?\ localId\ :\ 0L;}
+\DoxyCodeLine{00134\ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_a856bd8735a17035cea08243c66e0eee8_a856bd8735a17035cea08243c66e0eee8}\label{class_code_smile_editor_1_1_asset_a856bd8735a17035cea08243c66e0eee8_a856bd8735a17035cea08243c66e0eee8}
+\index{Asset@{Asset}!GetGuid@{GetGuid}}
+\index{GetGuid@{GetGuid}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{GetGuid()}{GetGuid()}}
+{\footnotesize\ttfamily static GUID Get\+Guid (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns the GUID of an object. Returns an empty GUID if the object is null or not an asset.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & An asset instance.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The GUID of the asset. Returns empty GUID if the asset is null or not an asset.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a2adfcc36a6b34de943aedfdd1db882f6_a2adfcc36a6b34de943aedfdd1db882f6}{Code\+Smile\+Editor.\+Asset.\+Get\+File\+Id}
+\item \doxylink{class_code_smile_editor_1_1_asset_a0b39fc9791994323a44a1126f3a41b99_a0b39fc9791994323a44a1126f3a41b99}{Code\+Smile\+Editor.\+Asset.\+Get\+Guid\+And\+File\+Id}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.TryGetGUIDAndLocalFileIdentifier.html}{\texttt{ Asset\+Database.\+Try\+Get\+GUIDAnd\+Local\+File\+Identifier}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_static_8cs_source_l00103}{103}} of file \mbox{\hyperlink{_asset_8_static_8cs_source}{Asset.\+Static.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00104\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00105\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (asset\ ==\ \textcolor{keyword}{null})}
+\DoxyCodeLine{00106\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{new}\ GUID();}
+\DoxyCodeLine{00107\ }
+\DoxyCodeLine{00108\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ explicit\ variable\ +\ assign\ because\ Unity\ 2021\ has\ both\ long\ and\ int\ variants\ of\ the\ TryGetGUID*\ method}}
+\DoxyCodeLine{00109\ \ \ \ \ \ \ \ \ \ \ \ \ var\ localId\ =\ Int64.MaxValue;}
+\DoxyCodeLine{00110\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.TryGetGUIDAndLocalFileIdentifier(asset,\ out\ var\ guid,\ out\ localId)}
+\DoxyCodeLine{00111\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ?\ \textcolor{keyword}{new}\ GUID(guid)}
+\DoxyCodeLine{00112\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ :\ new\ GUID();}
+\DoxyCodeLine{00113\ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_a0b39fc9791994323a44a1126f3a41b99_a0b39fc9791994323a44a1126f3a41b99}\label{class_code_smile_editor_1_1_asset_a0b39fc9791994323a44a1126f3a41b99_a0b39fc9791994323a44a1126f3a41b99}
+\index{Asset@{Asset}!GetGuidAndFileId@{GetGuidAndFileId}}
+\index{GetGuidAndFileId@{GetGuidAndFileId}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{GetGuidAndFileId()}{GetGuidAndFileId()}}
+{\footnotesize\ttfamily static Value\+Tuple$<$ GUID, Int64 $>$ Get\+Guid\+And\+File\+Id (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+Example usage\+:
+\begin{DoxyCode}{0}
+\DoxyCodeLine{var\ (guid,\ fileId)\ =\ Asset.GetGuidAndFileId(obj);}
+
+\end{DoxyCode}
+
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & Object from which GUID and File\+Id should be obtained.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The GUID and local File ID of the object. Returns an empty GUID and 0 if obj is null or not an asset.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a856bd8735a17035cea08243c66e0eee8_a856bd8735a17035cea08243c66e0eee8}{Code\+Smile\+Editor.\+Asset.\+Get\+Guid}
+\item \doxylink{class_code_smile_editor_1_1_asset_a2adfcc36a6b34de943aedfdd1db882f6_a2adfcc36a6b34de943aedfdd1db882f6}{Code\+Smile\+Editor.\+Asset.\+Get\+File\+Id}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.TryGetGUIDAndLocalFileIdentifier.html}{\texttt{ Asset\+Database.\+Try\+Get\+GUIDAnd\+Local\+File\+Identifier}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_static_8cs_source_l00080}{80}} of file \mbox{\hyperlink{_asset_8_static_8cs_source}{Asset.\+Static.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00081\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00082\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (asset\ ==\ \textcolor{keyword}{null})}
+\DoxyCodeLine{00083\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ (\textcolor{keyword}{new}\ GUID(),\ 0L);}
+\DoxyCodeLine{00084\ }
+\DoxyCodeLine{00085\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ explicit\ variable\ +\ assign\ because\ Unity\ 2021\ has\ both\ long\ and\ int\ variants\ of\ the\ TryGetGUID*\ method}}
+\DoxyCodeLine{00086\ \ \ \ \ \ \ \ \ \ \ \ \ var\ localId\ =\ Int64.MaxValue;}
+\DoxyCodeLine{00087\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.TryGetGUIDAndLocalFileIdentifier(asset,\ out\ var\ guid,\ out\ localId)}
+\DoxyCodeLine{00088\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ?\ (\textcolor{keyword}{new}\ GUID(guid),\ localId)}
+\DoxyCodeLine{00089\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ :\ (new\ GUID(),\ 0L);}
+\DoxyCodeLine{00090\ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_ac028cbad5fe3dab688c9dff304f80ad2_ac028cbad5fe3dab688c9dff304f80ad2}\label{class_code_smile_editor_1_1_asset_ac028cbad5fe3dab688c9dff304f80ad2_ac028cbad5fe3dab688c9dff304f80ad2}
+\index{Asset@{Asset}!GetIcon@{GetIcon}}
+\index{GetIcon@{GetIcon}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{GetIcon()}{GetIcon()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
+{\footnotesize\ttfamily static Texture2D Get\+Icon (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns the icon associated with the asset type.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & The object for which to get the icon.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The object\textquotesingle{}s icon texture or null. If the obj is a sub-\/asset then the main asset\textquotesingle{}s icon is returned.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a8039d1c88de4736a9f3e706e224efdff_a8039d1c88de4736a9f3e706e224efdff}{Code\+Smile\+Editor.\+Asset.\+Get\+Icon(\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_a8039d1c88de4736a9f3e706e224efdff_a8039d1c88de4736a9f3e706e224efdff}\label{class_code_smile_editor_1_1_asset_a8039d1c88de4736a9f3e706e224efdff_a8039d1c88de4736a9f3e706e224efdff}
+\index{Asset@{Asset}!GetIcon@{GetIcon}}
+\index{GetIcon@{GetIcon}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{GetIcon()}{GetIcon()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
+{\footnotesize\ttfamily static Texture2D Get\+Icon (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns the icon associated with the asset type.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The icon texture cast as Texture2D, or null.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_ac028cbad5fe3dab688c9dff304f80ad2_ac028cbad5fe3dab688c9dff304f80ad2}{Code\+Smile\+Editor.\+Asset.\+Get\+Icon(\+Object)}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}\label{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}
+\index{Asset@{Asset}!GetLastErrorMessage@{GetLastErrorMessage}}
+\index{GetLastErrorMessage@{GetLastErrorMessage}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{GetLastErrorMessage()}{GetLastErrorMessage()}}
+{\footnotesize\ttfamily static String Get\+Last\+Error\+Message (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns the last error message returned by some methods that provide such a failure message.
+
+\begin{DoxyReturn}{Returns}
+The last error message or empty string if the last operation succeeded.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396a4bfed873f01e8622033ab_a34bfcab396a4bfed873f01e8622033ab}{Code\+Smile\+Editor.\+Asset.\+File.\+Rename}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9dbc6b65d0efec125ca6ec75_a996c0cfd9dbc6b65d0efec125ca6ec75}{Code\+Smile\+Editor.\+Asset.\+File.\+Move}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a68db67f53a3a2a6002b9922d2678bc96_a68db67f53a3a2a6002b9922d2678bc96}{Code\+Smile\+Editor.\+Asset.\+File.\+Copy}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a73e80cb6412abff44ed9c172f7f92e36_a73e80cb6412abff44ed9c172f7f92e36}{Code\+Smile\+Editor.\+Asset.\+File.\+Copy\+As\+New}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_afe4dd70515ffc4868599918fc76c32b9_afe4dd70515ffc4868599918fc76c32b9}{Code\+Smile\+Editor.\+Asset.\+Path.\+Is\+Valid}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a14fd4d4a0447ac1dacde2ae694c39339_a14fd4d4a0447ac1dacde2ae694c39339}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Is\+Editable}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a98a4620e539f0cf83a99cb54b154be49_a98a4620e539f0cf83a99cb54b154be49}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Is\+Meta\+Editable}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Can\+Make\+Editable}
+\end{DoxyItemize}
+
+References \mbox{\hyperlink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Asset.\+Get\+Last\+Error\+Message()}}.
+
+
+
+Referenced by \mbox{\hyperlink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Asset.\+Get\+Last\+Error\+Message()}}.
+
+Here is the call graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=191pt]{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac_cgraph}
+\end{center}
+\end{figure}
+Here is the caller graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=191pt]{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac_icgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_a192accd4daaea8a0cf39c331b9fcb95c_a192accd4daaea8a0cf39c331b9fcb95c}\label{class_code_smile_editor_1_1_asset_a192accd4daaea8a0cf39c331b9fcb95c_a192accd4daaea8a0cf39c331b9fcb95c}
+\index{Asset@{Asset}!GetMain$<$ T $>$@{GetMain$<$ T $>$}}
+\index{GetMain$<$ T $>$@{GetMain$<$ T $>$}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{GetMain$<$ T $>$()}{GetMain< T >()}}
+{\footnotesize\ttfamily T Get\+Main$<$ T $>$ (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
+
+
+
+Gets the main object cast to T.
+
+This is an alias for\+:
+\begin{DoxyCode}{0}
+\DoxyCodeLine{var\ obj\ =\ asset.MainObject\ as\ T;}
+
+\end{DoxyCode}
+
+
+
+\begin{DoxyTemplParams}{Template Parameters}
+{\em T} & Type derived from Unity\+Engine.\+Object.\\
+\hline
+\end{DoxyTemplParams}
+\begin{DoxyReturn}{Returns}
+Returns Main\+Object cast to T or null if main object is not of type T.
+\end{DoxyReturn}
+\begin{Desc}
+\item[Type Constraints]\begin{description}
+\item[{\em T} : {\em Object}]\end{description}
+\end{Desc}
+\Hypertarget{class_code_smile_editor_1_1_asset_a3192f3d24b4397b10f50ef366ee3feba_a3192f3d24b4397b10f50ef366ee3feba}\label{class_code_smile_editor_1_1_asset_a3192f3d24b4397b10f50ef366ee3feba_a3192f3d24b4397b10f50ef366ee3feba}
+\index{Asset@{Asset}!GetMainType@{GetMainType}}
+\index{GetMainType@{GetMainType}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{GetMainType()}{GetMainType()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
+{\footnotesize\ttfamily static Type Get\+Main\+Type (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns the type of the main asset at the path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+Type of the asset. Null if the path does not exist.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetMainAssetTypeAtPath.html}{\texttt{ Asset\+Database.\+Get\+Main\+Asset\+Type\+At\+Path}}
+\end{DoxyItemize}
+
+Referenced by \mbox{\hyperlink{_asset_8_static_8cs_source_l00042}{Asset.\+Get\+Main\+Type()}}.
+
+Here is the caller graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=264pt]{class_code_smile_editor_1_1_asset_a3192f3d24b4397b10f50ef366ee3feba_a3192f3d24b4397b10f50ef366ee3feba_icgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_a82b0bb0beb5f5422951631789bca4256_a82b0bb0beb5f5422951631789bca4256}\label{class_code_smile_editor_1_1_asset_a82b0bb0beb5f5422951631789bca4256_a82b0bb0beb5f5422951631789bca4256}
+\index{Asset@{Asset}!GetMainType@{GetMainType}}
+\index{GetMainType@{GetMainType}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{GetMainType()}{GetMainType()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
+{\footnotesize\ttfamily static Type Get\+Main\+Type (\begin{DoxyParamCaption}\item[{GUID}]{guid }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns the type of the main asset for the GUID.
+
+In Unity 2023.\+2 it uses Asset\+Database.\+Get\+Main\+Asset\+Type\+From\+GUID. The method exists in 2022.\+2 but not in the early patch versions 0f1 through 6f1. In earlier versions the type is obtained from the path\textquotesingle{}s GUID.
+
+
+\begin{DoxyParams}{Parameters}
+{\em guid} & Guid of an asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+Type of the asset. Null if the guid is not known or not an asset.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetMainAssetTypeFromGUID.html}{\texttt{ Asset\+Database.\+Get\+Main\+Asset\+Type\+From\+GUID}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_static_8cs_source_l00042}{42}} of file \mbox{\hyperlink{_asset_8_static_8cs_source}{Asset.\+Static.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00043\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00044\ \textcolor{preprocessor}{\#if\ UNITY\_2023\_2\_OR\_NEWER\ }\textcolor{comment}{//\ It's\ also\ available\ in\ 2022.2\ but\ not\ in\ the\ early\ patch\ versions\ (eg\ 7f1\ onwards)}}
+\DoxyCodeLine{00045\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.GetMainAssetTypeFromGUID(guid);}
+\DoxyCodeLine{00046\ \textcolor{preprocessor}{\#else }}
+\DoxyCodeLine{00047\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a3192f3d24b4397b10f50ef366ee3feba_a3192f3d24b4397b10f50ef366ee3feba}{GetMainType}}(Path.Get(guid));}
+\DoxyCodeLine{00048\ \textcolor{preprocessor}{\#endif }}
+\DoxyCodeLine{00049\ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+References \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00080}{Asset.\+Path.\+Get()}}, and \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a3192f3d24b4397b10f50ef366ee3feba_a3192f3d24b4397b10f50ef366ee3feba}{Asset.\+Get\+Main\+Type()}}.
+
+Here is the call graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=349pt]{class_code_smile_editor_1_1_asset_a82b0bb0beb5f5422951631789bca4256_a82b0bb0beb5f5422951631789bca4256_cgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_ab9e60595a8cc5748f38f91b3ed83aeca_ab9e60595a8cc5748f38f91b3ed83aeca}\label{class_code_smile_editor_1_1_asset_ab9e60595a8cc5748f38f91b3ed83aeca_ab9e60595a8cc5748f38f91b3ed83aeca}
+\index{Asset@{Asset}!GetSubType@{GetSubType}}
+\index{GetSubType@{GetSubType}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{GetSubType()}{GetSubType()}}
+{\footnotesize\ttfamily static Type Get\+Sub\+Type (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path, }\item[{Int64}]{file\+Id }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Gets the type of a sub asset by the main asset\textquotesingle{}s path and the local file ID of the sub-\/asset.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset.\\
+\hline
+{\em file\+Id} & Local file ID of the sub-\/asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+Type of the Sub\+Asset, or null.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetTypeFromPathAndFileID.html}{\texttt{ Asset\+Database.\+Get\+Type\+From\+Path\+And\+File\+ID}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_a5d27be243c1f698cba116b768e3f65ec_a5d27be243c1f698cba116b768e3f65ec}\label{class_code_smile_editor_1_1_asset_a5d27be243c1f698cba116b768e3f65ec_a5d27be243c1f698cba116b768e3f65ec}
+\index{Asset@{Asset}!Load$<$ T $>$@{Load$<$ T $>$}}
+\index{Load$<$ T $>$@{Load$<$ T $>$}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{Load$<$ T $>$()}{Load< T >()}}
+{\footnotesize\ttfamily T Load$<$ T $>$ (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
+
+
+
+Loads a (sub) object from the asset identified by type.
+
+To load the main object of the Asset instance use the \doxylink{class_code_smile_editor_1_1_asset_ab39ec1f49ab79e8ae84c6a53a2458f2d_ab39ec1f49ab79e8ae84c6a53a2458f2d}{Code\+Smile\+Editor.\+Asset.\+Main\+Object} property.
+
+
+\begin{DoxyTemplParams}{Template Parameters}
+{\em T} & Unity\+Engine.\+Object derived type.\\
+\hline
+\end{DoxyTemplParams}
+\begin{DoxyReturn}{Returns}
+Returns the \textquotesingle{}first\textquotesingle{} asset of the type found.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_accd20b073ee732df08cf6ba0b9b8a389_accd20b073ee732df08cf6ba0b9b8a389}{Code\+Smile\+Editor.\+Asset.\+Sub\+Assets}
+\item \doxylink{class_code_smile_editor_1_1_asset_ace611059f2ab296e1be5b51d33617000_ace611059f2ab296e1be5b51d33617000}{Code\+Smile\+Editor.\+Asset.\+Visible\+Sub\+Assets}
+\item \doxylink{class_code_smile_editor_1_1_asset_ab39ec1f49ab79e8ae84c6a53a2458f2d_ab39ec1f49ab79e8ae84c6a53a2458f2d}{Code\+Smile\+Editor.\+Asset.\+Main\+Object}
+\end{DoxyItemize}\begin{Desc}
+\item[Type Constraints]\begin{description}
+\item[{\em T} : {\em Object}]\end{description}
+\end{Desc}
+\Hypertarget{class_code_smile_editor_1_1_asset_a45faf9fc17e3cb57b87d2ae09e4dd7f8_a45faf9fc17e3cb57b87d2ae09e4dd7f8}\label{class_code_smile_editor_1_1_asset_a45faf9fc17e3cb57b87d2ae09e4dd7f8_a45faf9fc17e3cb57b87d2ae09e4dd7f8}
+\index{Asset@{Asset}!Move@{Move}}
+\index{Move@{Move}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{Move()}{Move()}}
+{\footnotesize\ttfamily Boolean Move (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{destination\+Path }\end{DoxyParamCaption})}
+
+
+
+Moves asset to destination path.
+
+Missing folders in destination path will be created automatically. After the move, the \doxylink{class_code_smile_editor_1_1_asset_a54bbd4600c9787134d849c022cefe90e_a54bbd4600c9787134d849c022cefe90e}{Code\+Smile\+Editor.\+Asset.\+Asset\+Path} property is updated accordingly. On failure, use \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message} to get the failure error message.
+
+
+\begin{DoxyParams}{Parameters}
+{\em destination\+Path} & The path where to move the asset to. May have a different extension.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if moving the asset will be successful, false otherwise.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a31854cee2c427159e4ff866257872323_a31854cee2c427159e4ff866257872323}{Code\+Smile\+Editor.\+Asset.\+Can\+Move}
+\item \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8cs_source_l00350}{350}} of file \mbox{\hyperlink{_asset_8cs_source}{Asset.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00351\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00352\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (File.Move(m\_AssetPath,\ destinationPath))}
+\DoxyCodeLine{00353\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00354\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ SetAssetPathFromObject();}
+\DoxyCodeLine{00355\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{true};}
+\DoxyCodeLine{00356\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{00357\ }
+\DoxyCodeLine{00358\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
+\DoxyCodeLine{00359\ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+References \mbox{\hyperlink{_asset_8_file_8cs_source_l00633}{Asset.\+File.\+Move()}}.
+
+Here is the call graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=316pt]{class_code_smile_editor_1_1_asset_a45faf9fc17e3cb57b87d2ae09e4dd7f8_a45faf9fc17e3cb57b87d2ae09e4dd7f8_cgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_a0666c1c07cd6e3eef35e058c2e09fdf9_a0666c1c07cd6e3eef35e058c2e09fdf9}\label{class_code_smile_editor_1_1_asset_a0666c1c07cd6e3eef35e058c2e09fdf9_a0666c1c07cd6e3eef35e058c2e09fdf9}
+\index{Asset@{Asset}!OpenExternal@{OpenExternal}}
+\index{OpenExternal@{OpenExternal}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{OpenExternal()}{OpenExternal()}}
+{\footnotesize\ttfamily void Open\+External (\begin{DoxyParamCaption}\item[{Int32}]{line\+Number = {\ttfamily -\/1}, }\item[{Int32}]{column\+Number = {\ttfamily -\/1} }\end{DoxyParamCaption})}
+
+
+
+Opens the asset in the external (associated) application.
+
+Optional line and column numbers can be specified for text files and applications that support this.
+
+
+\begin{DoxyParams}{Parameters}
+{\em line\+Number} & Line number to highlight. Support depends on application. Default\+: -\/1\\
+\hline
+{\em column\+Number} & Column/character number to highlight. Support depends on application. Default\+: -\/1\\
+\hline
+\end{DoxyParams}
+\Hypertarget{class_code_smile_editor_1_1_asset_ae41aa018507db1deffb10096f33e3bb6_ae41aa018507db1deffb10096f33e3bb6}\label{class_code_smile_editor_1_1_asset_ae41aa018507db1deffb10096f33e3bb6_ae41aa018507db1deffb10096f33e3bb6}
+\index{Asset@{Asset}!operator Asset@{operator Asset}}
+\index{operator Asset@{operator Asset}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{operator Asset()}{operator Asset()}\hspace{0.1cm}{\footnotesize\ttfamily [1/4]}}
+{\footnotesize\ttfamily static implicit operator \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}} (\begin{DoxyParamCaption}\item[{GUID}]{guid }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Implicit conversion of GUID to an asset instance.
+
+
+\begin{DoxyParams}{Parameters}
+{\em guid} & An asset instance.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+An asset instance or null if guid is empty.
+\end{DoxyReturn}
+
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{\textcolor{comment}{//\ loads\ the\ asset}}
+\DoxyCodeLine{Asset\ asset\ =\ guid;}
+
+\end{DoxyCode}
+ \Hypertarget{class_code_smile_editor_1_1_asset_ac84df38322545eff4fb610f424420751_ac84df38322545eff4fb610f424420751}\label{class_code_smile_editor_1_1_asset_ac84df38322545eff4fb610f424420751_ac84df38322545eff4fb610f424420751}
+\index{Asset@{Asset}!operator Asset@{operator Asset}}
+\index{operator Asset@{operator Asset}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{operator Asset()}{operator Asset()}\hspace{0.1cm}{\footnotesize\ttfamily [2/4]}}
+{\footnotesize\ttfamily static implicit operator \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}} (\begin{DoxyParamCaption}\item[{Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Implicit conversion of Unity\+Engine.\+Object to an Asset.
+
+Throws exception if obj is not an asset object.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & Existing asset reference.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+An asset instance or null if obj is null.
+\end{DoxyReturn}
+
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{Asset\ asset\ =\ obj;\ \textcolor{comment}{//\ implicit\ conversion:\ Object\ to\ Asset}}
+
+\end{DoxyCode}
+ \Hypertarget{class_code_smile_editor_1_1_asset_a23920865dfc0888bc17dc618ab30cbe0_a23920865dfc0888bc17dc618ab30cbe0}\label{class_code_smile_editor_1_1_asset_a23920865dfc0888bc17dc618ab30cbe0_a23920865dfc0888bc17dc618ab30cbe0}
+\index{Asset@{Asset}!operator Asset@{operator Asset}}
+\index{operator Asset@{operator Asset}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{operator Asset()}{operator Asset()}\hspace{0.1cm}{\footnotesize\ttfamily [3/4]}}
+{\footnotesize\ttfamily static implicit operator \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}} (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Implicit conversion of Asset.\+Path to an Asset instance.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+An asset instance or null if path is null.
+\end{DoxyReturn}
+
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{Asset\ asset\ =\ \textcolor{keyword}{new}\ Path(\textcolor{stringliteral}{"{}Assets/folder/file.asset"{}});}
+
+\end{DoxyCode}
+ \Hypertarget{class_code_smile_editor_1_1_asset_aa01a879ca0793e3def47211f4d8d338d_aa01a879ca0793e3def47211f4d8d338d}\label{class_code_smile_editor_1_1_asset_aa01a879ca0793e3def47211f4d8d338d_aa01a879ca0793e3def47211f4d8d338d}
+\index{Asset@{Asset}!operator Asset@{operator Asset}}
+\index{operator Asset@{operator Asset}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{operator Asset()}{operator Asset()}\hspace{0.1cm}{\footnotesize\ttfamily [4/4]}}
+{\footnotesize\ttfamily static implicit operator \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}} (\begin{DoxyParamCaption}\item[{String}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Implicit conversion of string path to an asset instance.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+An asset instance or null if path is null.
+\end{DoxyReturn}
+
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{\textcolor{comment}{//\ this\ imports\ \&\ loads\ the\ asset,\ neat\ ey?\ :)}}
+\DoxyCodeLine{Asset\ asset\ =\ \textcolor{stringliteral}{"{}Assets/Folder/MyAsset.asset"{}};}
+
+\end{DoxyCode}
+ \Hypertarget{class_code_smile_editor_1_1_asset_ae36538faed7f7dd4bd6d2a42867bbee1_ae36538faed7f7dd4bd6d2a42867bbee1}\label{class_code_smile_editor_1_1_asset_ae36538faed7f7dd4bd6d2a42867bbee1_ae36538faed7f7dd4bd6d2a42867bbee1}
+\index{Asset@{Asset}!operator Object@{operator Object}}
+\index{operator Object@{operator Object}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{operator Object()}{operator Object()}}
+{\footnotesize\ttfamily static implicit operator Object (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}}}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Implicit conversion to Unity\+Engine.\+Object.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & The main object of the asset.\\
+\hline
+\end{DoxyParams}
+
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{Object\ obj\ =\ asset;\ \textcolor{comment}{//\ implicit\ conversion}}
+
+\end{DoxyCode}
+
+
+\begin{DoxyReturn}{Returns}
+The asset\textquotesingle{}s Main\+Object property.
+\end{DoxyReturn}
+\Hypertarget{class_code_smile_editor_1_1_asset_ae1e3a3de65cb69b8ac09a0e10f2dbabd_ae1e3a3de65cb69b8ac09a0e10f2dbabd}\label{class_code_smile_editor_1_1_asset_ae1e3a3de65cb69b8ac09a0e10f2dbabd_ae1e3a3de65cb69b8ac09a0e10f2dbabd}
+\index{Asset@{Asset}!RemoveSubAsset@{RemoveSubAsset}}
+\index{RemoveSubAsset@{RemoveSubAsset}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{RemoveSubAsset()}{RemoveSubAsset()}}
+{\footnotesize\ttfamily void Remove\+Sub\+Asset (\begin{DoxyParamCaption}\item[{Object}]{sub\+Asset }\end{DoxyParamCaption})}
+
+
+
+Removes an object from the asset\textquotesingle{}s sub-\/objects.
+
+
+\begin{DoxyParams}{Parameters}
+{\em sub\+Asset} & The sub-\/asset object to remove.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a7adbbe2c45d2f0188f60917a3d870946_a7adbbe2c45d2f0188f60917a3d870946}{Code\+Smile\+Editor.\+Asset.\+Add\+Sub\+Asset}
+\item \doxylink{class_code_smile_editor_1_1_asset_accd20b073ee732df08cf6ba0b9b8a389_accd20b073ee732df08cf6ba0b9b8a389}{Code\+Smile\+Editor.\+Asset.\+Sub\+Assets}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_a28fe22006383d71d5b564df4a46b2675_a28fe22006383d71d5b564df4a46b2675}\label{class_code_smile_editor_1_1_asset_a28fe22006383d71d5b564df4a46b2675_a28fe22006383d71d5b564df4a46b2675}
+\index{Asset@{Asset}!Rename@{Rename}}
+\index{Rename@{Rename}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{Rename()}{Rename()}}
+{\footnotesize\ttfamily Boolean Rename (\begin{DoxyParamCaption}\item[{String}]{new\+File\+Name }\end{DoxyParamCaption})}
+
+
+
+Renames an asset\textquotesingle{}s file name (without extension) or a folder.
+
+Use \doxylink{class_code_smile_editor_1_1_asset_a45faf9fc17e3cb57b87d2ae09e4dd7f8_a45faf9fc17e3cb57b87d2ae09e4dd7f8}{Code\+Smile\+Editor.\+Asset.\+Move} if you need to change the file\textquotesingle{}s extension.
+
+Rename file\+:
+\begin{DoxyCode}{0}
+\DoxyCodeLine{Asset\ asset\ =\ \textcolor{keyword}{new}\ Asset(obj,\ \textcolor{stringliteral}{"{}Assets/initial\ name.asset"{}});}
+\DoxyCodeLine{asset.Rename(\textcolor{stringliteral}{"{}new\ file\ name"{}});}
+
+\end{DoxyCode}
+ Rename folder\+:
+\begin{DoxyCode}{0}
+\DoxyCodeLine{Asset\ asset\ =\ \textcolor{keyword}{new}\ Asset(obj,\ \textcolor{stringliteral}{"{}Assets/subfloder"{}});}
+\DoxyCodeLine{asset.Rename(\textcolor{stringliteral}{"{}subfolder"{}});}
+
+\end{DoxyCode}
+
+
+
+\begin{DoxyParams}{Parameters}
+{\em new\+File\+Name} & The new name of the file or folder, without extension. Must not be a path. \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if the rename succeeded. The Asset\+Path property will be updated accordingly. If false, \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message} provides a human-\/readable failure reason and the Asset\+Path property remains unchanged.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a45faf9fc17e3cb57b87d2ae09e4dd7f8_a45faf9fc17e3cb57b87d2ae09e4dd7f8}{Code\+Smile\+Editor.\+Asset.\+Move}
+\item \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8cs_source_l00391}{391}} of file \mbox{\hyperlink{_asset_8cs_source}{Asset.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00392\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00393\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (File.Rename(m\_AssetPath,\ newFileName))}
+\DoxyCodeLine{00394\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00395\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ SetAssetPathFromObject();}
+\DoxyCodeLine{00396\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{true};}
+\DoxyCodeLine{00397\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{00398\ }
+\DoxyCodeLine{00399\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
+\DoxyCodeLine{00400\ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+References \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396a4bfed873f01e8622033ab_a34bfcab396a4bfed873f01e8622033ab}{Asset.\+File.\+Rename()}}.
+
+Here is the call graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=307pt]{class_code_smile_editor_1_1_asset_a28fe22006383d71d5b564df4a46b2675_a28fe22006383d71d5b564df4a46b2675_cgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_a5df140c1ee51aadf7fe88ce3fb9cac33_a5df140c1ee51aadf7fe88ce3fb9cac33}\label{class_code_smile_editor_1_1_asset_a5df140c1ee51aadf7fe88ce3fb9cac33_a5df140c1ee51aadf7fe88ce3fb9cac33}
+\index{Asset@{Asset}!Save@{Save}}
+\index{Save@{Save}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{Save()}{Save()}}
+{\footnotesize\ttfamily void Save (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
+
+
+
+Saves any changes to the asset to disk.
+
+Not every change marks an object as \textquotesingle{}dirty\textquotesingle{}. In such cases you need to use \doxylink{class_code_smile_editor_1_1_asset_a80bd55f3de91ab63e74b3f66c1d1dd4b_a80bd55f3de91ab63e74b3f66c1d1dd4b}{Code\+Smile\+Editor.\+Asset.\+Force\+Save()}.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a80bd55f3de91ab63e74b3f66c1d1dd4b_a80bd55f3de91ab63e74b3f66c1d1dd4b}{Code\+Smile\+Editor.\+Asset.\+Force\+Save()}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_a1c6432dab22d51bcf01bf6ad221e7119_a1c6432dab22d51bcf01bf6ad221e7119}\label{class_code_smile_editor_1_1_asset_a1c6432dab22d51bcf01bf6ad221e7119_a1c6432dab22d51bcf01bf6ad221e7119}
+\index{Asset@{Asset}!SaveAs@{SaveAs}}
+\index{SaveAs@{SaveAs}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{SaveAs()}{SaveAs()}}
+{\footnotesize\ttfamily \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}} Save\+As (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})}
+
+
+
+Saves a copy of the asset to a new path. Overwrites any existing asset at path.
+
+Will automatically create missing folders.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & The path where to save the copy.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The copy of the Asset or null if copying failed. Use \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message} to get the human readable error message.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a5df140c1ee51aadf7fe88ce3fb9cac33_a5df140c1ee51aadf7fe88ce3fb9cac33}{Code\+Smile\+Editor.\+Asset.\+Save}
+\item \doxylink{class_code_smile_editor_1_1_asset_af23adc642520b7f00cb047865ef50ad0_af23adc642520b7f00cb047865ef50ad0}{Code\+Smile\+Editor.\+Asset.\+Save\+As\+New}
+\item \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message}
+\end{DoxyItemize}
+
+Referenced by \mbox{\hyperlink{_asset_8cs_source_l00274}{Asset.\+Save\+As\+New()}}.
+
+Here is the caller graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=233pt]{class_code_smile_editor_1_1_asset_a1c6432dab22d51bcf01bf6ad221e7119_a1c6432dab22d51bcf01bf6ad221e7119_icgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_af23adc642520b7f00cb047865ef50ad0_af23adc642520b7f00cb047865ef50ad0}\label{class_code_smile_editor_1_1_asset_af23adc642520b7f00cb047865ef50ad0_af23adc642520b7f00cb047865ef50ad0}
+\index{Asset@{Asset}!SaveAsNew@{SaveAsNew}}
+\index{SaveAsNew@{SaveAsNew}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{SaveAsNew()}{SaveAsNew()}}
+{\footnotesize\ttfamily \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}} Save\+As\+New (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})}
+
+
+
+Saves a copy of the asset to a new path. Generates a unique file/folder name if path already exists.
+
+Will automatically create missing folders.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & The path where to save the copy. Note that actual path of the asset may change.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The copy of the Asset or null if copying failed. Use \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message} to get the human readable error message.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a5df140c1ee51aadf7fe88ce3fb9cac33_a5df140c1ee51aadf7fe88ce3fb9cac33}{Code\+Smile\+Editor.\+Asset.\+Save}
+\item \doxylink{class_code_smile_editor_1_1_asset_a1c6432dab22d51bcf01bf6ad221e7119_a1c6432dab22d51bcf01bf6ad221e7119}{Code\+Smile\+Editor.\+Asset.\+Save\+As}
+\item \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8cs_source_l00274}{274}} of file \mbox{\hyperlink{_asset_8cs_source}{Asset.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00275\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00276\ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(path,\ nameof(path));}
+\DoxyCodeLine{00277\ }
+\DoxyCodeLine{00278\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a1c6432dab22d51bcf01bf6ad221e7119_a1c6432dab22d51bcf01bf6ad221e7119}{SaveAs}}(path.UniqueFilePath);}
+\DoxyCodeLine{00279\ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+References \mbox{\hyperlink{class_code_smile_editor_1_1_asset_a1c6432dab22d51bcf01bf6ad221e7119_a1c6432dab22d51bcf01bf6ad221e7119}{Asset.\+Save\+As()}}.
+
+Here is the call graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=233pt]{class_code_smile_editor_1_1_asset_af23adc642520b7f00cb047865ef50ad0_af23adc642520b7f00cb047865ef50ad0_cgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_ac9fdda28d3fb7be683439603387df920_ac9fdda28d3fb7be683439603387df920}\label{class_code_smile_editor_1_1_asset_ac9fdda28d3fb7be683439603387df920_ac9fdda28d3fb7be683439603387df920}
+\index{Asset@{Asset}!SetDirty@{SetDirty}}
+\index{SetDirty@{SetDirty}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{SetDirty()}{SetDirty()}}
+{\footnotesize\ttfamily void Set\+Dirty (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
+
+
+
+Marks the main object as dirty.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a80bd55f3de91ab63e74b3f66c1d1dd4b_a80bd55f3de91ab63e74b3f66c1d1dd4b}{Code\+Smile\+Editor.\+Asset.\+Force\+Save}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_af924398cf4176684f1c3bad2017f9ed5_af924398cf4176684f1c3bad2017f9ed5}\label{class_code_smile_editor_1_1_asset_af924398cf4176684f1c3bad2017f9ed5_af924398cf4176684f1c3bad2017f9ed5}
+\index{Asset@{Asset}!SetLabels@{SetLabels}}
+\index{SetLabels@{SetLabels}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{SetLabels()}{SetLabels()}}
+{\footnotesize\ttfamily void Set\+Labels (\begin{DoxyParamCaption}\item[{String\mbox{[}$\,$\mbox{]}}]{labels }\end{DoxyParamCaption})}
+
+
+
+Sets the asset\textquotesingle{}s labels, replacing all previously existing labels.
+
+
+\begin{DoxyParams}{Parameters}
+{\em labels} & An array of labels.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a2ebda9df65a71b44245f958679cf302a_a2ebda9df65a71b44245f958679cf302a}{Code\+Smile\+Editor.\+Asset.\+Add\+Label}
+\item \doxylink{class_code_smile_editor_1_1_asset_a677d0e58f64014b9722f943987c6ece5_a677d0e58f64014b9722f943987c6ece5}{Code\+Smile\+Editor.\+Asset.\+Add\+Labels}
+\item \doxylink{class_code_smile_editor_1_1_asset_a1ec7cb3d4ed6edc811690f8855a7982f_a1ec7cb3d4ed6edc811690f8855a7982f}{Code\+Smile\+Editor.\+Asset.\+Clear\+Labels}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_a9ff25b59d227ab5d89fdabafffb9876a_a9ff25b59d227ab5d89fdabafffb9876a}\label{class_code_smile_editor_1_1_asset_a9ff25b59d227ab5d89fdabafffb9876a_a9ff25b59d227ab5d89fdabafffb9876a}
+\index{Asset@{Asset}!Trash@{Trash}}
+\index{Trash@{Trash}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{Trash()}{Trash()}}
+{\footnotesize\ttfamily Object Trash (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
+
+
+
+Moves the asset to the OS trash. Same as Delete, but recoverable.
+
+Does NOT destroy the object reference. CAUTION\+: The asset instance is no longer valid after this call and should be discarded.
+
+\begin{DoxyReturn}{Returns}
+If successful, returns the former Main\+Object. It is no longer an asset but still a valid instance. Returns null if the object wasn\textquotesingle{}t deleted.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_af6ce8c8d3d810ae286e98e54aa360adf_af6ce8c8d3d810ae286e98e54aa360adf}{Code\+Smile\+Editor.\+Asset.\+Delete}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8cs_source_l00465}{465}} of file \mbox{\hyperlink{_asset_8cs_source}{Asset.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00466\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00467\ \ \ \ \ \ \ \ \ \ \ \ \ var\ mainObject\ =\ m\_MainObject;}
+\DoxyCodeLine{00468\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (File.Trash(m\_AssetPath))}
+\DoxyCodeLine{00469\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ InvalidateInstance();}
+\DoxyCodeLine{00470\ }
+\DoxyCodeLine{00471\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ mainObject;}
+\DoxyCodeLine{00472\ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+References \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a7b0aaffab801a8597c60daff4bccb177_a7b0aaffab801a8597c60daff4bccb177}{Asset.\+File.\+Trash()}}.
+
+Here is the call graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=295pt]{class_code_smile_editor_1_1_asset_a9ff25b59d227ab5d89fdabafffb9876a_a9ff25b59d227ab5d89fdabafffb9876a_cgraph}
+\end{center}
+\end{figure}
+
+
+\doxysubsubsection{Property Documentation}
+\Hypertarget{class_code_smile_editor_1_1_asset_a57983fe52530259a94425f11144dcf12_a57983fe52530259a94425f11144dcf12}\label{class_code_smile_editor_1_1_asset_a57983fe52530259a94425f11144dcf12_a57983fe52530259a94425f11144dcf12}
+\index{Asset@{Asset}!ActiveImporter@{ActiveImporter}}
+\index{ActiveImporter@{ActiveImporter}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{ActiveImporter}{ActiveImporter}}
+{\footnotesize\ttfamily Type Active\+Importer\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}}
+
+
+
+Returns the active Asset\+Importer type for this asset.
+
+Will be the Default\+Importer type unless the importer was overridden.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a171f2bcee950b6e79886c7507f9beb27_a171f2bcee950b6e79886c7507f9beb27}{Code\+Smile\+Editor.\+Asset.\+Default\+Importer}
+\item Code\+Smile\+Editor.\+Asset.\+Set\+Active\+Importer$<$\+T$>$
+\item Code\+Smile\+Editor.\+Asset.\+Set\+Active\+Importer\+To\+Default
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_properties_8cs_source_l00155}{155}} of file \mbox{\hyperlink{_asset_8_properties_8cs_source}{Asset.\+Properties.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00156\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00157\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{get}}
+\DoxyCodeLine{00158\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00159\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ overridden\ =\ Importer.GetOverride(m\_AssetPath);}
+\DoxyCodeLine{00160\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ overridden\ !=\ \textcolor{keyword}{null}\ ?\ overridden\ :\ Importer.GetDefault(m\_AssetPath);}
+\DoxyCodeLine{00161\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{00162\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{set}}
+\DoxyCodeLine{00163\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00164\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (value\ ==\ \textcolor{keyword}{null})}
+\DoxyCodeLine{00165\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Importer.ClearOverride(m\_AssetPath);}
+\DoxyCodeLine{00166\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{else}}
+\DoxyCodeLine{00167\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ Importer.SetImporterOverride(value,\ m\_AssetPath);}
+\DoxyCodeLine{00168\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{00169\ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_a54bbd4600c9787134d849c022cefe90e_a54bbd4600c9787134d849c022cefe90e}\label{class_code_smile_editor_1_1_asset_a54bbd4600c9787134d849c022cefe90e_a54bbd4600c9787134d849c022cefe90e}
+\index{Asset@{Asset}!AssetPath@{AssetPath}}
+\index{AssetPath@{AssetPath}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{AssetPath}{AssetPath}}
+{\footnotesize\ttfamily \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} Asset\+Path\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns the path to the asset (file or folder).
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a0084f5ad8a13c505013748101a81b1df_a0084f5ad8a13c505013748101a81b1df}{Code\+Smile\+Editor.\+Asset.\+Meta\+Path}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_properties_8cs_source_l00061}{61}} of file \mbox{\hyperlink{_asset_8_properties_8cs_source}{Asset.\+Properties.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_afd494f6a711cc6e5683d95823c87f916_afd494f6a711cc6e5683d95823c87f916}\label{class_code_smile_editor_1_1_asset_afd494f6a711cc6e5683d95823c87f916_afd494f6a711cc6e5683d95823c87f916}
+\index{Asset@{Asset}!AvailableImporters@{AvailableImporters}}
+\index{AvailableImporters@{AvailableImporters}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{AvailableImporters}{AvailableImporters}}
+{\footnotesize\ttfamily Type \mbox{[}$\,$\mbox{]} Available\+Importers\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns the available importers for this asset.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_aee616cbd3cbe9e7b8256aed74fe20254_aee616cbd3cbe9e7b8256aed74fe20254}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Available}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_properties_8cs_source_l00177}{177}} of file \mbox{\hyperlink{_asset_8_properties_8cs_source}{Asset.\+Properties.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_a171f2bcee950b6e79886c7507f9beb27_a171f2bcee950b6e79886c7507f9beb27}\label{class_code_smile_editor_1_1_asset_a171f2bcee950b6e79886c7507f9beb27_a171f2bcee950b6e79886c7507f9beb27}
+\index{Asset@{Asset}!DefaultImporter@{DefaultImporter}}
+\index{DefaultImporter@{DefaultImporter}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{DefaultImporter}{DefaultImporter}}
+{\footnotesize\ttfamily Type Default\+Importer\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns the default Asset\+Importer type for this asset.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a57983fe52530259a94425f11144dcf12_a57983fe52530259a94425f11144dcf12}{Code\+Smile\+Editor.\+Asset.\+Active\+Importer}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_properties_8cs_source_l00144}{144}} of file \mbox{\hyperlink{_asset_8_properties_8cs_source}{Asset.\+Properties.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_af2fc7a5ab674d2293e0c80bcceb709f6_af2fc7a5ab674d2293e0c80bcceb709f6}\label{class_code_smile_editor_1_1_asset_af2fc7a5ab674d2293e0c80bcceb709f6_af2fc7a5ab674d2293e0c80bcceb709f6}
+\index{Asset@{Asset}!Dependencies@{Dependencies}}
+\index{Dependencies@{Dependencies}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{Dependencies}{Dependencies}}
+{\footnotesize\ttfamily String \mbox{[}$\,$\mbox{]} Dependencies\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns the assets\textquotesingle{} direct and indirect dependencies (recursive).
+
+\begin{DoxyReturn}{Returns}
+Returns paths to the dependent assets.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a0ae61d10248f285be98d0bab84ca431e_a0ae61d10248f285be98d0bab84ca431e}{Code\+Smile\+Editor.\+Asset.\+Direct\+Dependencies}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_properties_8cs_source_l00135}{135}} of file \mbox{\hyperlink{_asset_8_properties_8cs_source}{Asset.\+Properties.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_a0ae61d10248f285be98d0bab84ca431e_a0ae61d10248f285be98d0bab84ca431e}\label{class_code_smile_editor_1_1_asset_a0ae61d10248f285be98d0bab84ca431e_a0ae61d10248f285be98d0bab84ca431e}
+\index{Asset@{Asset}!DirectDependencies@{DirectDependencies}}
+\index{DirectDependencies@{DirectDependencies}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{DirectDependencies}{DirectDependencies}}
+{\footnotesize\ttfamily String \mbox{[}$\,$\mbox{]} Direct\+Dependencies\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns the assets\textquotesingle{} direct dependencies.
+
+\begin{DoxyReturn}{Returns}
+Returns paths to the directly dependent assets.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_af2fc7a5ab674d2293e0c80bcceb709f6_af2fc7a5ab674d2293e0c80bcceb709f6}{Code\+Smile\+Editor.\+Asset.\+Dependencies}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_properties_8cs_source_l00125}{125}} of file \mbox{\hyperlink{_asset_8_properties_8cs_source}{Asset.\+Properties.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_a2d3c3468bf091cc7260b4cdca91b4a55_a2d3c3468bf091cc7260b4cdca91b4a55}\label{class_code_smile_editor_1_1_asset_a2d3c3468bf091cc7260b4cdca91b4a55_a2d3c3468bf091cc7260b4cdca91b4a55}
+\index{Asset@{Asset}!FileId@{FileId}}
+\index{FileId@{FileId}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{FileId}{FileId}}
+{\footnotesize\ttfamily Int64 File\+Id\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns the local File\+ID of the asset.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a66a3fc7176ae79e7e9ee85df99c5ff7c_a66a3fc7176ae79e7e9ee85df99c5ff7c}{Code\+Smile\+Editor.\+Asset.\+Guid}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_properties_8cs_source_l00087}{87}} of file \mbox{\hyperlink{_asset_8_properties_8cs_source}{Asset.\+Properties.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_a66a3fc7176ae79e7e9ee85df99c5ff7c_a66a3fc7176ae79e7e9ee85df99c5ff7c}\label{class_code_smile_editor_1_1_asset_a66a3fc7176ae79e7e9ee85df99c5ff7c_a66a3fc7176ae79e7e9ee85df99c5ff7c}
+\index{Asset@{Asset}!Guid@{Guid}}
+\index{Guid@{Guid}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{Guid}{Guid}}
+{\footnotesize\ttfamily GUID Guid\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns the asset\textquotesingle{}s GUID.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a2d3c3468bf091cc7260b4cdca91b4a55_a2d3c3468bf091cc7260b4cdca91b4a55}{Code\+Smile\+Editor.\+Asset.\+File\+Id}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_properties_8cs_source_l00078}{78}} of file \mbox{\hyperlink{_asset_8_properties_8cs_source}{Asset.\+Properties.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_a68c0326ba0d934f74e65a06f805627e0_a68c0326ba0d934f74e65a06f805627e0}\label{class_code_smile_editor_1_1_asset_a68c0326ba0d934f74e65a06f805627e0_a68c0326ba0d934f74e65a06f805627e0}
+\index{Asset@{Asset}!Icon@{Icon}}
+\index{Icon@{Icon}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{Icon}{Icon}}
+{\footnotesize\ttfamily Texture2D Icon\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns the icon texture associated with the asset type.
+
+
+
+Definition at line \mbox{\hyperlink{_asset_8_properties_8cs_source_l00093}{93}} of file \mbox{\hyperlink{_asset_8_properties_8cs_source}{Asset.\+Properties.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_af3886ebc9167b6615000ad5835ded3d2_af3886ebc9167b6615000ad5835ded3d2}\label{class_code_smile_editor_1_1_asset_af3886ebc9167b6615000ad5835ded3d2_af3886ebc9167b6615000ad5835ded3d2}
+\index{Asset@{Asset}!IsDeleted@{IsDeleted}}
+\index{IsDeleted@{IsDeleted}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{IsDeleted}{IsDeleted}}
+{\footnotesize\ttfamily Boolean Is\+Deleted\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns true after the asset has been deleted.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a5a01eb8f2adc1117b9df394acbe3c529_a5a01eb8f2adc1117b9df394acbe3c529}{Code\+Smile\+Editor.\+Asset.\+File.\+Delete(\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a7b0aaffab801a8597c60daff4bccb177_a7b0aaffab801a8597c60daff4bccb177}{Code\+Smile\+Editor.\+Asset.\+File.\+Trash(\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_properties_8cs_source_l00209}{209}} of file \mbox{\hyperlink{_asset_8_properties_8cs_source}{Asset.\+Properties.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_ae1533f44e1d6a3921dcf9dc0c73e5721_ae1533f44e1d6a3921dcf9dc0c73e5721}\label{class_code_smile_editor_1_1_asset_ae1533f44e1d6a3921dcf9dc0c73e5721_ae1533f44e1d6a3921dcf9dc0c73e5721}
+\index{Asset@{Asset}!IsForeign@{IsForeign}}
+\index{IsForeign@{IsForeign}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{IsForeign}{IsForeign}}
+{\footnotesize\ttfamily Boolean Is\+Foreign\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns whether this is a foreign asset.
+
+\begin{DoxyReturn}{Returns}
+
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_status_a7e01a4788d69647e6e8340c25603bf55_a7e01a4788d69647e6e8340c25603bf55}{Code\+Smile\+Editor.\+Asset.\+Status.\+Is\+Foreign}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_status_ae18940b59316f20181bba69e710e0cba_ae18940b59316f20181bba69e710e0cba}{Code\+Smile\+Editor.\+Asset.\+Status.\+Is\+Native}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_properties_8cs_source_l00220}{220}} of file \mbox{\hyperlink{_asset_8_properties_8cs_source}{Asset.\+Properties.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_ac3eef672ee8ea3c14524ee2a1d7fbfef_ac3eef672ee8ea3c14524ee2a1d7fbfef}\label{class_code_smile_editor_1_1_asset_ac3eef672ee8ea3c14524ee2a1d7fbfef_ac3eef672ee8ea3c14524ee2a1d7fbfef}
+\index{Asset@{Asset}!IsImporterOverridden@{IsImporterOverridden}}
+\index{IsImporterOverridden@{IsImporterOverridden}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{IsImporterOverridden}{IsImporterOverridden}}
+{\footnotesize\ttfamily Boolean Is\+Importer\+Overridden\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns true if the asset\textquotesingle{}s default Asset\+Importer type has been overridden.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a57983fe52530259a94425f11144dcf12_a57983fe52530259a94425f11144dcf12}{Code\+Smile\+Editor.\+Asset.\+Active\+Importer}
+\item \doxylink{class_code_smile_editor_1_1_asset_a171f2bcee950b6e79886c7507f9beb27_a171f2bcee950b6e79886c7507f9beb27}{Code\+Smile\+Editor.\+Asset.\+Default\+Importer}
+\item Code\+Smile\+Editor.\+Asset.\+Set\+Active\+Importer$<$\+T$>$
+\item Code\+Smile\+Editor.\+Asset.\+Set\+Active\+Importer\+To\+Default
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_properties_8cs_source_l00188}{188}} of file \mbox{\hyperlink{_asset_8_properties_8cs_source}{Asset.\+Properties.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_a993540e3a2141abe3463b2a75655f931_a993540e3a2141abe3463b2a75655f931}\label{class_code_smile_editor_1_1_asset_a993540e3a2141abe3463b2a75655f931_a993540e3a2141abe3463b2a75655f931}
+\index{Asset@{Asset}!IsNative@{IsNative}}
+\index{IsNative@{IsNative}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{IsNative}{IsNative}}
+{\footnotesize\ttfamily Boolean Is\+Native\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns whether this is a native asset.
+
+\begin{DoxyReturn}{Returns}
+
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_status_a7e01a4788d69647e6e8340c25603bf55_a7e01a4788d69647e6e8340c25603bf55}{Code\+Smile\+Editor.\+Asset.\+Status.\+Is\+Foreign}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_status_ae18940b59316f20181bba69e710e0cba_ae18940b59316f20181bba69e710e0cba}{Code\+Smile\+Editor.\+Asset.\+Status.\+Is\+Native}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_properties_8cs_source_l00231}{231}} of file \mbox{\hyperlink{_asset_8_properties_8cs_source}{Asset.\+Properties.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_a16590be90618aaa5682dbdc597fd5223_a16590be90618aaa5682dbdc597fd5223}\label{class_code_smile_editor_1_1_asset_a16590be90618aaa5682dbdc597fd5223_a16590be90618aaa5682dbdc597fd5223}
+\index{Asset@{Asset}!IsScene@{IsScene}}
+\index{IsScene@{IsScene}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{IsScene}{IsScene}}
+{\footnotesize\ttfamily Boolean Is\+Scene\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns true if this is a scene asset.
+
+
+
+Definition at line \mbox{\hyperlink{_asset_8_properties_8cs_source_l00236}{236}} of file \mbox{\hyperlink{_asset_8_properties_8cs_source}{Asset.\+Properties.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_a537c910df9f9f5d24a916b70934f4de8_a537c910df9f9f5d24a916b70934f4de8}\label{class_code_smile_editor_1_1_asset_a537c910df9f9f5d24a916b70934f4de8_a537c910df9f9f5d24a916b70934f4de8}
+\index{Asset@{Asset}!Labels@{Labels}}
+\index{Labels@{Labels}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{Labels}{Labels}}
+{\footnotesize\ttfamily String \mbox{[}$\,$\mbox{]} Labels\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}}
+
+
+
+Sets or gets the labels associated with the asset.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_af924398cf4176684f1c3bad2017f9ed5_af924398cf4176684f1c3bad2017f9ed5}{Code\+Smile\+Editor.\+Asset.\+Set\+Labels}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_properties_8cs_source_l00196}{196}} of file \mbox{\hyperlink{_asset_8_properties_8cs_source}{Asset.\+Properties.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00197\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00198\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{get}\ =>\ Label.GetAll(m\_MainObject);}
+\DoxyCodeLine{00199\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{set}\ =>\ Label.SetAll(m\_MainObject,\ value);}
+\DoxyCodeLine{00200\ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_ab39ec1f49ab79e8ae84c6a53a2458f2d_ab39ec1f49ab79e8ae84c6a53a2458f2d}\label{class_code_smile_editor_1_1_asset_ab39ec1f49ab79e8ae84c6a53a2458f2d_ab39ec1f49ab79e8ae84c6a53a2458f2d}
+\index{Asset@{Asset}!MainObject@{MainObject}}
+\index{MainObject@{MainObject}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{MainObject}{MainObject}}
+{\footnotesize\ttfamily Object Main\+Object\hspace{0.3cm}{\ttfamily [get]}, {\ttfamily [set]}}
+
+
+
+Gets or sets the asset\textquotesingle{}s main object.
+
+To cast the main object to a specific type you may simply cast the asset\+:
+\begin{DoxyCode}{0}
+\DoxyCodeLine{var\ myObj\ =\ (MyType)asset;}
+
+\end{DoxyCode}
+ Is short for\+:
+\begin{DoxyCode}{0}
+\DoxyCodeLine{var\ myObj\ =\ (MyType)asset.MainObject;}
+
+\end{DoxyCode}
+ The same works with the \textquotesingle{}as\textquotesingle{} operator\+:
+\begin{DoxyCode}{0}
+\DoxyCodeLine{var\ myObj\ =\ asset\ as\ MyType;}
+
+\end{DoxyCode}
+ Is short for\+:
+\begin{DoxyCode}{0}
+\DoxyCodeLine{var\ myObj\ =\ asset.MainObject\ as\ MyType;}
+
+\end{DoxyCode}
+ Lastly you can also use the generic getter\+:
+\begin{DoxyCode}{0}
+\DoxyCodeLine{var\ myObj\ =\ asset.Get();}
+
+\end{DoxyCode}
+
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_sub_asset}{Code\+Smile\+Editor.\+Asset.\+Sub\+Asset}
+\item Code\+Smile\+Editor.\+Asset.\+Sub\+Asset.\+Set\+Main(\+Unity\+Engine.\+Object,\+Code\+Smile\+Editor.\+Asset.\+Path)
+\item Code\+Smile\+Editor.\+Asset.\+Sub\+Asset.\+Set\+Main(\+Unity\+Engine.\+Object,\+Unity\+Engine.\+Object)
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a8cc280e1c5ddde8511c2af5541365b3f_a8cc280e1c5ddde8511c2af5541365b3f}{Code\+Smile\+Editor.\+Asset.\+File.\+Load\+Main$<$\+T$>$(\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_properties_8cs_source_l00035}{35}} of file \mbox{\hyperlink{_asset_8_properties_8cs_source}{Asset.\+Properties.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00036\ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00037\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ This\ 'loads'\ the\ asset\ but\ most\ of\ the\ time\ simply\ returns\ the\ internally\ cached\ instance.}}
+\DoxyCodeLine{00038\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ We\ need\ to\ load\ the\ instance\ because\ the\ user\ may\ have\ called\ static\ SubAsset.SetMain().}}
+\DoxyCodeLine{00039\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{get}\ =>\ m\_MainObject\ =\ LoadMain();}
+\DoxyCodeLine{00040\ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{set}}
+\DoxyCodeLine{00041\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00042\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ SubAsset.SetMain(value,\ m\_AssetPath);}
+\DoxyCodeLine{00043\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ m\_MainObject\ =\ value;}
+\DoxyCodeLine{00044\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{00045\ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_a15e35df5acbfe3751310d7fd241a6295_a15e35df5acbfe3751310d7fd241a6295}\label{class_code_smile_editor_1_1_asset_a15e35df5acbfe3751310d7fd241a6295_a15e35df5acbfe3751310d7fd241a6295}
+\index{Asset@{Asset}!MainObjectType@{MainObjectType}}
+\index{MainObjectType@{MainObjectType}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{MainObjectType}{MainObjectType}}
+{\footnotesize\ttfamily Type Main\+Object\+Type\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns the type of the main asset at the given path.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a3192f3d24b4397b10f50ef366ee3feba_a3192f3d24b4397b10f50ef366ee3feba}{Code\+Smile\+Editor.\+Asset.\+Get\+Main\+Type(\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_properties_8cs_source_l00053}{53}} of file \mbox{\hyperlink{_asset_8_properties_8cs_source}{Asset.\+Properties.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_a0084f5ad8a13c505013748101a81b1df_a0084f5ad8a13c505013748101a81b1df}\label{class_code_smile_editor_1_1_asset_a0084f5ad8a13c505013748101a81b1df_a0084f5ad8a13c505013748101a81b1df}
+\index{Asset@{Asset}!MetaPath@{MetaPath}}
+\index{MetaPath@{MetaPath}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{MetaPath}{MetaPath}}
+{\footnotesize\ttfamily \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} Meta\+Path\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns the path to the .meta file for the asset.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a54bbd4600c9787134d849c022cefe90e_a54bbd4600c9787134d849c022cefe90e}{Code\+Smile\+Editor.\+Asset.\+Asset\+Path}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_properties_8cs_source_l00070}{70}} of file \mbox{\hyperlink{_asset_8_properties_8cs_source}{Asset.\+Properties.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_af8ffb2f0dfbb3585bd764056147d01b3_af8ffb2f0dfbb3585bd764056147d01b3}\label{class_code_smile_editor_1_1_asset_af8ffb2f0dfbb3585bd764056147d01b3_af8ffb2f0dfbb3585bd764056147d01b3}
+\index{Asset@{Asset}!OwningBundle@{OwningBundle}}
+\index{OwningBundle@{OwningBundle}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{OwningBundle}{OwningBundle}}
+{\footnotesize\ttfamily String Owning\+Bundle\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns the bundle name the asset belongs to.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The bundle name or an empty string.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_a91f88014dec2b3bff50d35f595e6409d_a91f88014dec2b3bff50d35f595e6409d}{Code\+Smile\+Editor.\+Asset.\+Owning\+Bundle\+Variant}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_properties_8cs_source_l00104}{104}} of file \mbox{\hyperlink{_asset_8_properties_8cs_source}{Asset.\+Properties.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_a91f88014dec2b3bff50d35f595e6409d_a91f88014dec2b3bff50d35f595e6409d}\label{class_code_smile_editor_1_1_asset_a91f88014dec2b3bff50d35f595e6409d_a91f88014dec2b3bff50d35f595e6409d}
+\index{Asset@{Asset}!OwningBundleVariant@{OwningBundleVariant}}
+\index{OwningBundleVariant@{OwningBundleVariant}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{OwningBundleVariant}{OwningBundleVariant}}
+{\footnotesize\ttfamily String Owning\+Bundle\+Variant\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns the bundle variant name the asset belongs to.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The bundle variant name or empty string.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_af8ffb2f0dfbb3585bd764056147d01b3_af8ffb2f0dfbb3585bd764056147d01b3}{Code\+Smile\+Editor.\+Asset.\+Owning\+Bundle}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_properties_8cs_source_l00115}{115}} of file \mbox{\hyperlink{_asset_8_properties_8cs_source}{Asset.\+Properties.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_accd20b073ee732df08cf6ba0b9b8a389_accd20b073ee732df08cf6ba0b9b8a389}\label{class_code_smile_editor_1_1_asset_accd20b073ee732df08cf6ba0b9b8a389_accd20b073ee732df08cf6ba0b9b8a389}
+\index{Asset@{Asset}!SubAssets@{SubAssets}}
+\index{SubAssets@{SubAssets}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{SubAssets}{SubAssets}}
+{\footnotesize\ttfamily Object \mbox{[}$\,$\mbox{]} Sub\+Assets\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Loads and returns all sub objects the asset is comprised of.
+
+Whether the main object is included in this list depends on the type of asset.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_ace611059f2ab296e1be5b51d33617000_ace611059f2ab296e1be5b51d33617000}{Code\+Smile\+Editor.\+Asset.\+Visible\+Sub\+Assets}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_properties_8cs_source_l00247}{247}} of file \mbox{\hyperlink{_asset_8_properties_8cs_source}{Asset.\+Properties.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_ace611059f2ab296e1be5b51d33617000_ace611059f2ab296e1be5b51d33617000}\label{class_code_smile_editor_1_1_asset_ace611059f2ab296e1be5b51d33617000_ace611059f2ab296e1be5b51d33617000}
+\index{Asset@{Asset}!VisibleSubAssets@{VisibleSubAssets}}
+\index{VisibleSubAssets@{VisibleSubAssets}!Asset@{Asset}}
+\doxyparagraph{\texorpdfstring{VisibleSubAssets}{VisibleSubAssets}}
+{\footnotesize\ttfamily Object \mbox{[}$\,$\mbox{]} Visible\+Sub\+Assets\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Loads and returns only those asset objects that are shown in the project view.
+
+Does not include the main asset.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_accd20b073ee732df08cf6ba0b9b8a389_accd20b073ee732df08cf6ba0b9b8a389}{Code\+Smile\+Editor.\+Asset.\+Sub\+Assets}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_properties_8cs_source_l00258}{258}} of file \mbox{\hyperlink{_asset_8_properties_8cs_source}{Asset.\+Properties.\+cs}}.
+
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_bundle.tex b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_bundle.tex
new file mode 100644
index 00000000..f616cb0c
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_bundle.tex
@@ -0,0 +1,343 @@
+\doxysubsection{Asset.\+Bundle Class Reference}
+\hypertarget{class_code_smile_editor_1_1_asset_1_1_bundle}{}\label{class_code_smile_editor_1_1_asset_1_1_bundle}\index{Asset.Bundle@{Asset.Bundle}}
+
+
+Groups all asset bundle related functionality.
+
+
+
+
+Collaboration diagram for Asset.\+Bundle\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=212pt]{class_code_smile_editor_1_1_asset_1_1_bundle__coll__graph}
+\end{center}
+\end{figure}
+\doxysubsubsubsection*{Static Public Member Functions}
+\begin{DoxyCompactItemize}
+\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a7393007e2bfa2a7dafd3e6bf47115f53_a7393007e2bfa2a7dafd3e6bf47115f53}{Force\+Remove}} (\mbox{[}Not\+Null\mbox{]} String bundle\+Name)
+\begin{DoxyCompactList}\small\item\em Removes a specific asset bundle by name. \end{DoxyCompactList}\item
+static String\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_ae45aacadca51b6d99273ef60c47523f3_ae45aacadca51b6d99273ef60c47523f3}{Get\+All\+Dependencies}} (\mbox{[}Not\+Null\mbox{]} String bundle\+Name)
+\begin{DoxyCompactList}\small\item\em Returns all bundle names that the given asset bundle depends on, directly or indirectly (recursive). \end{DoxyCompactList}\item
+static String\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a92f937447af1b0ac29f167b8d5de21e0_a92f937447af1b0ac29f167b8d5de21e0}{Get\+All\+Paths}} (\mbox{[}Not\+Null\mbox{]} String bundle\+Name)
+\begin{DoxyCompactList}\small\item\em Returns all asset paths that are part of a given asset bundle. \end{DoxyCompactList}\item
+static String\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a86ace93f7ce9f411e2994177f4cc60c2_a86ace93f7ce9f411e2994177f4cc60c2}{Get\+Direct\+Dependencies}} (\mbox{[}Not\+Null\mbox{]} String bundle\+Name)
+\begin{DoxyCompactList}\small\item\em Returns the bundle names that the given asset bundle directly depends on. \end{DoxyCompactList}\item
+static String \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a17c3d7ba18536daa627d478d36aa7d95_a17c3d7ba18536daa627d478d36aa7d95}{Get\+Owning\+Bundle}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Returns the bundle name that contains the asset path. \end{DoxyCompactList}\item
+static String \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a51999ea1e987b932993409830b86bad3_a51999ea1e987b932993409830b86bad3}{Get\+Owning\+Bundle\+Variant}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Returns the bundle variant name that contains the asset path. \end{DoxyCompactList}\item
+static String\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_aa5dd51c1b0b63b4552afdd78da4e2e81_aa5dd51c1b0b63b4552afdd78da4e2e81}{Get\+Paths}} (\mbox{[}Not\+Null\mbox{]} String bundle\+Name, \mbox{[}Not\+Null\mbox{]} String asset\+Name)
+\begin{DoxyCompactList}\small\item\em Returns the asset paths in a given asset bundle that matches an asset name. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_afda9d0ade24a5ad0d52c2f2f1a7bc86a_afda9d0ade24a5ad0d52c2f2f1a7bc86a}{Remove}} (\mbox{[}Not\+Null\mbox{]} String bundle\+Name)
+\begin{DoxyCompactList}\small\item\em Removes a specific asset bundle by name. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a08d9f8415b580743cbd887fb5d66aba0_a08d9f8415b580743cbd887fb5d66aba0}{Remove\+Unused}} ()
+\begin{DoxyCompactList}\small\item\em Removes all unused asset bundles. \end{DoxyCompactList}\end{DoxyCompactItemize}
+\doxysubsubsubsection*{Properties}
+\begin{DoxyCompactItemize}
+\item
+static String\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a7a491f4df9b8c6216b664e600b7ab0e3_a7a491f4df9b8c6216b664e600b7ab0e3}{All}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns all asset bundle names. \end{DoxyCompactList}\item
+static String\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_bundle_a096ba8fe96373ca1cdf4edf80991a6cc_a096ba8fe96373ca1cdf4edf80991a6cc}{Unused}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns all unused asset bundle names. \end{DoxyCompactList}\end{DoxyCompactItemize}
+
+
+\doxysubsubsection{Detailed Description}
+Groups all asset bundle related functionality.
+
+Note\+: Unity recommends to use the Addressables package to manage Bundles rather than through code.
+
+Definition at line \mbox{\hyperlink{_asset_8_bundle_8cs_source_l00018}{18}} of file \mbox{\hyperlink{_asset_8_bundle_8cs_source}{Asset.\+Bundle.\+cs}}.
+
+
+
+\doxysubsubsection{Member Function Documentation}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_bundle_a7393007e2bfa2a7dafd3e6bf47115f53_a7393007e2bfa2a7dafd3e6bf47115f53}\label{class_code_smile_editor_1_1_asset_1_1_bundle_a7393007e2bfa2a7dafd3e6bf47115f53_a7393007e2bfa2a7dafd3e6bf47115f53}
+\index{Asset.Bundle@{Asset.Bundle}!ForceRemove@{ForceRemove}}
+\index{ForceRemove@{ForceRemove}!Asset.Bundle@{Asset.Bundle}}
+\doxyparagraph{\texorpdfstring{ForceRemove()}{ForceRemove()}}
+{\footnotesize\ttfamily static void Force\+Remove (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{bundle\+Name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Removes a specific asset bundle by name.
+
+CAUTION\+: The bundle is removed even if it is currently in use.
+
+
+\begin{DoxyParams}{Parameters}
+{\em bundle\+Name} & Name of the asset bundle to remove.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_bundle_afda9d0ade24a5ad0d52c2f2f1a7bc86a_afda9d0ade24a5ad0d52c2f2f1a7bc86a}{Code\+Smile\+Editor.\+Asset.\+Bundle.\+Remove}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.RemoveAssetBundleName.html}{\texttt{ Asset\+Database.\+Remove\+Asset\+Bundle\+Name}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_bundle_ae45aacadca51b6d99273ef60c47523f3_ae45aacadca51b6d99273ef60c47523f3}\label{class_code_smile_editor_1_1_asset_1_1_bundle_ae45aacadca51b6d99273ef60c47523f3_ae45aacadca51b6d99273ef60c47523f3}
+\index{Asset.Bundle@{Asset.Bundle}!GetAllDependencies@{GetAllDependencies}}
+\index{GetAllDependencies@{GetAllDependencies}!Asset.Bundle@{Asset.Bundle}}
+\doxyparagraph{\texorpdfstring{GetAllDependencies()}{GetAllDependencies()}}
+{\footnotesize\ttfamily static String\mbox{[}$\,$\mbox{]} Get\+All\+Dependencies (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{bundle\+Name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns all bundle names that the given asset bundle depends on, directly or indirectly (recursive).
+
+
+\begin{DoxyParams}{Parameters}
+{\em bundle\+Name} & Name of the asset bundle.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+Directly dependent asset bundle names or an empty array if there are no direct dependencies.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_bundle_ae45aacadca51b6d99273ef60c47523f3_ae45aacadca51b6d99273ef60c47523f3}{Code\+Smile\+Editor.\+Asset.\+Bundle.\+Get\+All\+Dependencies}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetAssetBundleDependencies.html}{\texttt{ Asset\+Database.\+Get\+Asset\+Bundle\+Dependencies}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_bundle_a92f937447af1b0ac29f167b8d5de21e0_a92f937447af1b0ac29f167b8d5de21e0}\label{class_code_smile_editor_1_1_asset_1_1_bundle_a92f937447af1b0ac29f167b8d5de21e0_a92f937447af1b0ac29f167b8d5de21e0}
+\index{Asset.Bundle@{Asset.Bundle}!GetAllPaths@{GetAllPaths}}
+\index{GetAllPaths@{GetAllPaths}!Asset.Bundle@{Asset.Bundle}}
+\doxyparagraph{\texorpdfstring{GetAllPaths()}{GetAllPaths()}}
+{\footnotesize\ttfamily static String\mbox{[}$\,$\mbox{]} Get\+All\+Paths (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{bundle\+Name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns all asset paths that are part of a given asset bundle.
+
+
+\begin{DoxyParams}{Parameters}
+{\em bundle\+Name} & Name of the asset bundle.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The paths to assets belonging to this bundle. Is empty if no assets belong to the bundle.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_bundle_aa5dd51c1b0b63b4552afdd78da4e2e81_aa5dd51c1b0b63b4552afdd78da4e2e81}{Code\+Smile\+Editor.\+Asset.\+Bundle.\+Get\+Paths}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetAssetPathsFromAssetBundle.html}{\texttt{ Asset\+Database.\+Get\+Asset\+Paths\+From\+Asset\+Bundle}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_bundle_a86ace93f7ce9f411e2994177f4cc60c2_a86ace93f7ce9f411e2994177f4cc60c2}\label{class_code_smile_editor_1_1_asset_1_1_bundle_a86ace93f7ce9f411e2994177f4cc60c2_a86ace93f7ce9f411e2994177f4cc60c2}
+\index{Asset.Bundle@{Asset.Bundle}!GetDirectDependencies@{GetDirectDependencies}}
+\index{GetDirectDependencies@{GetDirectDependencies}!Asset.Bundle@{Asset.Bundle}}
+\doxyparagraph{\texorpdfstring{GetDirectDependencies()}{GetDirectDependencies()}}
+{\footnotesize\ttfamily static String\mbox{[}$\,$\mbox{]} Get\+Direct\+Dependencies (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{bundle\+Name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns the bundle names that the given asset bundle directly depends on.
+
+
+\begin{DoxyParams}{Parameters}
+{\em bundle\+Name} & Name of the asset bundle.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+Directly dependent asset bundle names or an empty array if there are no direct dependencies.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_bundle_ae45aacadca51b6d99273ef60c47523f3_ae45aacadca51b6d99273ef60c47523f3}{Code\+Smile\+Editor.\+Asset.\+Bundle.\+Get\+All\+Dependencies}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetAssetBundleDependencies.html}{\texttt{ Asset\+Database.\+Get\+Asset\+Bundle\+Dependencies}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_bundle_a17c3d7ba18536daa627d478d36aa7d95_a17c3d7ba18536daa627d478d36aa7d95}\label{class_code_smile_editor_1_1_asset_1_1_bundle_a17c3d7ba18536daa627d478d36aa7d95_a17c3d7ba18536daa627d478d36aa7d95}
+\index{Asset.Bundle@{Asset.Bundle}!GetOwningBundle@{GetOwningBundle}}
+\index{GetOwningBundle@{GetOwningBundle}!Asset.Bundle@{Asset.Bundle}}
+\doxyparagraph{\texorpdfstring{GetOwningBundle()}{GetOwningBundle()}}
+{\footnotesize\ttfamily static String Get\+Owning\+Bundle (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns the bundle name that contains the asset path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The name of the bundle this asset belongs to. Empty string if the asset path does not belong to an asset bundle.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_bundle_a51999ea1e987b932993409830b86bad3_a51999ea1e987b932993409830b86bad3}{Code\+Smile\+Editor.\+Asset.\+Bundle.\+Get\+Owning\+Bundle\+Variant}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetImplicitAssetBundleName.html}{\texttt{ Asset\+Database.\+Get\+Implicit\+Asset\+Bundle\+Name}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_bundle_a51999ea1e987b932993409830b86bad3_a51999ea1e987b932993409830b86bad3}\label{class_code_smile_editor_1_1_asset_1_1_bundle_a51999ea1e987b932993409830b86bad3_a51999ea1e987b932993409830b86bad3}
+\index{Asset.Bundle@{Asset.Bundle}!GetOwningBundleVariant@{GetOwningBundleVariant}}
+\index{GetOwningBundleVariant@{GetOwningBundleVariant}!Asset.Bundle@{Asset.Bundle}}
+\doxyparagraph{\texorpdfstring{GetOwningBundleVariant()}{GetOwningBundleVariant()}}
+{\footnotesize\ttfamily static String Get\+Owning\+Bundle\+Variant (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns the bundle variant name that contains the asset path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The name of the bundle variant this asset belongs to. Empty string if the asset path does not belong to an asset bundle.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_bundle_a17c3d7ba18536daa627d478d36aa7d95_a17c3d7ba18536daa627d478d36aa7d95}{Code\+Smile\+Editor.\+Asset.\+Bundle.\+Get\+Owning\+Bundle}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetImplicitAssetBundleVariantName.html}{\texttt{ Asset\+Database.\+Get\+Implicit\+Asset\+Bundle\+Variant\+Name}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_bundle_aa5dd51c1b0b63b4552afdd78da4e2e81_aa5dd51c1b0b63b4552afdd78da4e2e81}\label{class_code_smile_editor_1_1_asset_1_1_bundle_aa5dd51c1b0b63b4552afdd78da4e2e81_aa5dd51c1b0b63b4552afdd78da4e2e81}
+\index{Asset.Bundle@{Asset.Bundle}!GetPaths@{GetPaths}}
+\index{GetPaths@{GetPaths}!Asset.Bundle@{Asset.Bundle}}
+\doxyparagraph{\texorpdfstring{GetPaths()}{GetPaths()}}
+{\footnotesize\ttfamily static String\mbox{[}$\,$\mbox{]} Get\+Paths (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{bundle\+Name, }\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{asset\+Name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns the asset paths in a given asset bundle that matches an asset name.
+
+
+\begin{DoxyParams}{Parameters}
+{\em bundle\+Name} & Name of the asset bundle.\\
+\hline
+{\em asset\+Name} & Filter string that asset name needs to match.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The paths to assets whose name matches the filter string. Empty string if there are no matches.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_bundle_a92f937447af1b0ac29f167b8d5de21e0_a92f937447af1b0ac29f167b8d5de21e0}{Code\+Smile\+Editor.\+Asset.\+Bundle.\+Get\+All\+Paths}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetAssetPathsFromAssetBundleAndAssetName.html}{\texttt{ Asset\+Database.\+Get\+Asset\+Paths\+From\+Asset\+Bundle\+And\+Asset\+Name}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_bundle_afda9d0ade24a5ad0d52c2f2f1a7bc86a_afda9d0ade24a5ad0d52c2f2f1a7bc86a}\label{class_code_smile_editor_1_1_asset_1_1_bundle_afda9d0ade24a5ad0d52c2f2f1a7bc86a_afda9d0ade24a5ad0d52c2f2f1a7bc86a}
+\index{Asset.Bundle@{Asset.Bundle}!Remove@{Remove}}
+\index{Remove@{Remove}!Asset.Bundle@{Asset.Bundle}}
+\doxyparagraph{\texorpdfstring{Remove()}{Remove()}}
+{\footnotesize\ttfamily static void Remove (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{bundle\+Name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Removes a specific asset bundle by name.
+
+If the bundle is currently in use, it will NOT be removed.
+
+
+\begin{DoxyParams}{Parameters}
+{\em bundle\+Name} & Name of the asset bundle to remove.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_bundle_a7393007e2bfa2a7dafd3e6bf47115f53_a7393007e2bfa2a7dafd3e6bf47115f53}{Code\+Smile\+Editor.\+Asset.\+Bundle.\+Force\+Remove}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.RemoveAssetBundleName.html}{\texttt{ Asset\+Database.\+Remove\+Asset\+Bundle\+Name}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_bundle_a08d9f8415b580743cbd887fb5d66aba0_a08d9f8415b580743cbd887fb5d66aba0}\label{class_code_smile_editor_1_1_asset_1_1_bundle_a08d9f8415b580743cbd887fb5d66aba0_a08d9f8415b580743cbd887fb5d66aba0}
+\index{Asset.Bundle@{Asset.Bundle}!RemoveUnused@{RemoveUnused}}
+\index{RemoveUnused@{RemoveUnused}!Asset.Bundle@{Asset.Bundle}}
+\doxyparagraph{\texorpdfstring{RemoveUnused()}{RemoveUnused()}}
+{\footnotesize\ttfamily static void Remove\+Unused (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Removes all unused asset bundles.
+
+Returns all unused asset bundle names.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_bundle_a096ba8fe96373ca1cdf4edf80991a6cc_a096ba8fe96373ca1cdf4edf80991a6cc}{Code\+Smile\+Editor.\+Asset.\+Bundle.\+Unused}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.RemoveUnusedAssetBundleNames.html}{\texttt{ Asset\+Database.\+Remove\+Unused\+Asset\+Bundle\+Names}}
+\end{DoxyItemize}
+
+\doxysubsubsection{Property Documentation}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_bundle_a7a491f4df9b8c6216b664e600b7ab0e3_a7a491f4df9b8c6216b664e600b7ab0e3}\label{class_code_smile_editor_1_1_asset_1_1_bundle_a7a491f4df9b8c6216b664e600b7ab0e3_a7a491f4df9b8c6216b664e600b7ab0e3}
+\index{Asset.Bundle@{Asset.Bundle}!All@{All}}
+\index{All@{All}!Asset.Bundle@{Asset.Bundle}}
+\doxyparagraph{\texorpdfstring{All}{All}}
+{\footnotesize\ttfamily String \mbox{[}$\,$\mbox{]} All\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [get]}}
+
+
+
+Returns all asset bundle names.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_bundle_a096ba8fe96373ca1cdf4edf80991a6cc_a096ba8fe96373ca1cdf4edf80991a6cc}{Code\+Smile\+Editor.\+Asset.\+Bundle.\+Unused}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetAllAssetBundleNames.html}{\texttt{ Asset\+Database.\+Get\+All\+Asset\+Bundle\+Names}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_bundle_8cs_source_l00028}{28}} of file \mbox{\hyperlink{_asset_8_bundle_8cs_source}{Asset.\+Bundle.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_bundle_a096ba8fe96373ca1cdf4edf80991a6cc_a096ba8fe96373ca1cdf4edf80991a6cc}\label{class_code_smile_editor_1_1_asset_1_1_bundle_a096ba8fe96373ca1cdf4edf80991a6cc_a096ba8fe96373ca1cdf4edf80991a6cc}
+\index{Asset.Bundle@{Asset.Bundle}!Unused@{Unused}}
+\index{Unused@{Unused}!Asset.Bundle@{Asset.Bundle}}
+\doxyparagraph{\texorpdfstring{Unused}{Unused}}
+{\footnotesize\ttfamily String \mbox{[}$\,$\mbox{]} Unused\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [get]}}
+
+
+
+Returns all unused asset bundle names.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_bundle_a7a491f4df9b8c6216b664e600b7ab0e3_a7a491f4df9b8c6216b664e600b7ab0e3}{Code\+Smile\+Editor.\+Asset.\+Bundle.\+All}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetUnusedAssetBundleNames.html}{\texttt{ Asset\+Database.\+Get\+Unused\+Asset\+Bundle\+Names}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_bundle_8cs_source_l00038}{38}} of file \mbox{\hyperlink{_asset_8_bundle_8cs_source}{Asset.\+Bundle.\+cs}}.
+
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_bundle__coll__graph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_bundle__coll__graph.md5
new file mode 100644
index 00000000..e13305f7
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_bundle__coll__graph.md5
@@ -0,0 +1 @@
+166b7e0c241580ee22bb8efe50dd43f4
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_bundle__coll__graph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_bundle__coll__graph.pdf
new file mode 100644
index 00000000..c5a6bbcd
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_bundle__coll__graph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_database.tex b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_database.tex
new file mode 100644
index 00000000..290f2584
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_database.tex
@@ -0,0 +1,401 @@
+\doxysubsection{Asset.\+Database Class Reference}
+\hypertarget{class_code_smile_editor_1_1_asset_1_1_database}{}\label{class_code_smile_editor_1_1_asset_1_1_database}\index{Asset.Database@{Asset.Database}}
+
+
+Groups all asset database functionality.
+
+
+
+
+Collaboration diagram for Asset.\+Database\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=224pt]{class_code_smile_editor_1_1_asset_1_1_database__coll__graph}
+\end{center}
+\end{figure}
+\doxysubsubsubsection*{Classes}
+\begin{DoxyCompactItemize}
+\item
+class \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server}{Cache\+Server}}
+\begin{DoxyCompactList}\small\item\em Groups Cache\+Server (Accelerator) related functionality. \end{DoxyCompactList}\end{DoxyCompactItemize}
+\doxysubsubsubsection*{Static Public Member Functions}
+\begin{DoxyCompactItemize}
+\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a4f2683df249d67e506e9f2d9d9fe2b5a_a4f2683df249d67e506e9f2d9d9fe2b5a}{Allow\+Auto\+Refresh}} ()
+\begin{DoxyCompactList}\small\item\em Will allow Unity to automatically import assets. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_aebd60455d5568e8715f48750a2a15710_aebd60455d5568e8715f48750a2a15710}{Contains}} (Int32 instance\+Id)
+\begin{DoxyCompactList}\small\item\em Tests if the asset is in the database. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a9f98188e77af88fa79da70d1765765ff_a9f98188e77af88fa79da70d1765765ff}{Contains}} (Object instance)
+\begin{DoxyCompactList}\small\item\em Tests if the asset is in the database. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_adb25c0a19eaf845815b001486373db4c_adb25c0a19eaf845815b001486373db4c}{Disallow\+Auto\+Refresh}} ()
+\begin{DoxyCompactList}\small\item\em Will stop Unity from automatically importing assets. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a7c993d64861e62fbdcff3700690b2318_a7c993d64861e62fbdcff3700690b2318}{Import\+All}} (Import\+Asset\+Options options=Import\+Asset\+Options.\+Default)
+\begin{DoxyCompactList}\small\item\em Scans for {\bfseries{external}} file system modifications and updates the Database accordingly. Prefer to use \doxylink{class_code_smile_editor_1_1_asset_1_1_file_ae11a13bfe131ec8b20a5a5667e75ec97_ae11a13bfe131ec8b20a5a5667e75ec97}{Code\+Smile\+Editor.\+Asset.\+File.\+Import} within \doxylink{class_code_smile_editor_1_1_asset_1_1_file_ab0082c2158f7de6376b26a75827bd7a2_ab0082c2158f7de6376b26a75827bd7a2}{Code\+Smile\+Editor.\+Asset.\+File.\+Batch\+Editing}. {\bfseries{CAUTION}}\+: Import\+All (\textquotesingle{}Refresh\textquotesingle{}) unloads unused resources. This can degrade editor performance! \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_afa24e66e009892bc1032c64f512f349d_afa24e66e009892bc1032c64f512f349d}{Release\+File\+Handles}} ()
+\begin{DoxyCompactList}\small\item\em Releases any cached file handles that Unity holds. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_af4aa665fc0bbfcf9f076d5da1457b2c4_af4aa665fc0bbfcf9f076d5da1457b2c4}{Save\+All}} ()
+\begin{DoxyCompactList}\small\item\em Saves all unsaved (dirty) assets. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a3006ad7769d5ba3b477a5c153f20dd27_a3006ad7769d5ba3b477a5c153f20dd27}{Upgrade\+All\+Asset\+Serialization\+Versions}} ()
+\begin{DoxyCompactList}\small\item\em Updates all native asset files to reflect any changes in serialization in the current editor version. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a0bdd680cb405e96d92b6a7af338ad27f_a0bdd680cb405e96d92b6a7af338ad27f}{Upgrade\+Asset\+Serialization\+Version}} (\mbox{[}Not\+Null\mbox{]} IEnumerable$<$ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} $>$ paths, Force\+Reserialize\+Assets\+Options options=Force\+Reserialize\+Assets\+Options.\+Reserialize\+Assets\+And\+Metadata)
+\begin{DoxyCompactList}\small\item\em Updates all native asset files to reflect any changes in serialization in the current editor version. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a94a77b56376fbb7f52ba2bece53f45b7_a94a77b56376fbb7f52ba2bece53f45b7}{Upgrade\+Asset\+Serialization\+Version}} (\mbox{[}Not\+Null\mbox{]} IEnumerable$<$ String $>$ paths, Force\+Reserialize\+Assets\+Options options=Force\+Reserialize\+Assets\+Options.\+Reserialize\+Assets\+And\+Metadata)
+\begin{DoxyCompactList}\small\item\em Updates all native asset files to reflect any changes in serialization in the current editor version. \end{DoxyCompactList}\end{DoxyCompactItemize}
+\doxysubsubsubsection*{Properties}
+\begin{DoxyCompactItemize}
+\item
+static Int32 \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a46c1f775624b940edb495a5c2b08583c_a46c1f775624b940edb495a5c2b08583c}{Desired\+Worker\+Count}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Gets or sets the desired worker count. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_a6190225c177bf52f95b2cdbcb99ccc2a_a6190225c177bf52f95b2cdbcb99ccc2a}{Directory\+Monitoring}}\hspace{0.3cm}{\ttfamily \mbox{[}get, set\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns whether directory monitoring is enabled in Preferences. \end{DoxyCompactList}\end{DoxyCompactItemize}
+
+
+\doxysubsubsection{Detailed Description}
+Groups all asset database functionality.
+
+Turns out there isn\textquotesingle{}t actually that much that is \textquotesingle{}database\textquotesingle{} related after all.
+
+Definition at line \mbox{\hyperlink{_asset_8_database_8_cache_server_8cs_source_l00012}{12}} of file \mbox{\hyperlink{_asset_8_database_8_cache_server_8cs_source}{Asset.\+Database.\+Cache\+Server.\+cs}}.
+
+
+
+\doxysubsubsection{Member Function Documentation}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_a4f2683df249d67e506e9f2d9d9fe2b5a_a4f2683df249d67e506e9f2d9d9fe2b5a}\label{class_code_smile_editor_1_1_asset_1_1_database_a4f2683df249d67e506e9f2d9d9fe2b5a_a4f2683df249d67e506e9f2d9d9fe2b5a}
+\index{Asset.Database@{Asset.Database}!AllowAutoRefresh@{AllowAutoRefresh}}
+\index{AllowAutoRefresh@{AllowAutoRefresh}!Asset.Database@{Asset.Database}}
+\doxyparagraph{\texorpdfstring{AllowAutoRefresh()}{AllowAutoRefresh()}}
+{\footnotesize\ttfamily static void Allow\+Auto\+Refresh (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Will allow Unity to automatically import assets.
+
+This has no effect if Preferences =\texorpdfstring{$>$}{>} Asset Pipeline =\texorpdfstring{$>$}{>} Auto Refresh is disabled.
+
+Must be called in pair with \doxylink{class_code_smile_editor_1_1_asset_1_1_database_adb25c0a19eaf845815b001486373db4c_adb25c0a19eaf845815b001486373db4c}{Code\+Smile\+Editor.\+Asset.\+Database.\+Disallow\+Auto\+Refresh}.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_database_adb25c0a19eaf845815b001486373db4c_adb25c0a19eaf845815b001486373db4c}{Code\+Smile\+Editor.\+Asset.\+Database.\+Disallow\+Auto\+Refresh}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.AllowAutoRefresh.html}{\texttt{ Asset\+Database.\+Allow\+Auto\+Refresh}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_aebd60455d5568e8715f48750a2a15710_aebd60455d5568e8715f48750a2a15710}\label{class_code_smile_editor_1_1_asset_1_1_database_aebd60455d5568e8715f48750a2a15710_aebd60455d5568e8715f48750a2a15710}
+\index{Asset.Database@{Asset.Database}!Contains@{Contains}}
+\index{Contains@{Contains}!Asset.Database@{Asset.Database}}
+\doxyparagraph{\texorpdfstring{Contains()}{Contains()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
+{\footnotesize\ttfamily static Boolean Contains (\begin{DoxyParamCaption}\item[{Int32}]{instance\+Id }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tests if the asset is in the database.
+
+
+\begin{DoxyParams}{Parameters}
+{\em instance\+Id} & The instance ID of an asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+Returns true if the asset is imported. Returns false if the asset is not in the database.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.Contains.html}{\texttt{ Asset\+Database.\+Contains}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_a9f98188e77af88fa79da70d1765765ff_a9f98188e77af88fa79da70d1765765ff}\label{class_code_smile_editor_1_1_asset_1_1_database_a9f98188e77af88fa79da70d1765765ff_a9f98188e77af88fa79da70d1765765ff}
+\index{Asset.Database@{Asset.Database}!Contains@{Contains}}
+\index{Contains@{Contains}!Asset.Database@{Asset.Database}}
+\doxyparagraph{\texorpdfstring{Contains()}{Contains()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
+{\footnotesize\ttfamily static Boolean Contains (\begin{DoxyParamCaption}\item[{Object}]{instance }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tests if the asset is in the database.
+
+
+\begin{DoxyParams}{Parameters}
+{\em instance} & Instance to test.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+Returns true if the asset is imported. Returns false if the asset is not in the database, or if obj is null.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.Contains.html}{\texttt{ Asset\+Database.\+Contains}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_adb25c0a19eaf845815b001486373db4c_adb25c0a19eaf845815b001486373db4c}\label{class_code_smile_editor_1_1_asset_1_1_database_adb25c0a19eaf845815b001486373db4c_adb25c0a19eaf845815b001486373db4c}
+\index{Asset.Database@{Asset.Database}!DisallowAutoRefresh@{DisallowAutoRefresh}}
+\index{DisallowAutoRefresh@{DisallowAutoRefresh}!Asset.Database@{Asset.Database}}
+\doxyparagraph{\texorpdfstring{DisallowAutoRefresh()}{DisallowAutoRefresh()}}
+{\footnotesize\ttfamily static void Disallow\+Auto\+Refresh (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Will stop Unity from automatically importing assets.
+
+Must be called in pair with \doxylink{class_code_smile_editor_1_1_asset_1_1_database_a4f2683df249d67e506e9f2d9d9fe2b5a_a4f2683df249d67e506e9f2d9d9fe2b5a}{Code\+Smile\+Editor.\+Asset.\+Database.\+Allow\+Auto\+Refresh}.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_database_a4f2683df249d67e506e9f2d9d9fe2b5a_a4f2683df249d67e506e9f2d9d9fe2b5a}{Code\+Smile\+Editor.\+Asset.\+Database.\+Allow\+Auto\+Refresh}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.DisallowAutoRefresh.html}{\texttt{ Asset\+Database.\+Disallow\+Auto\+Refresh}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_a7c993d64861e62fbdcff3700690b2318_a7c993d64861e62fbdcff3700690b2318}\label{class_code_smile_editor_1_1_asset_1_1_database_a7c993d64861e62fbdcff3700690b2318_a7c993d64861e62fbdcff3700690b2318}
+\index{Asset.Database@{Asset.Database}!ImportAll@{ImportAll}}
+\index{ImportAll@{ImportAll}!Asset.Database@{Asset.Database}}
+\doxyparagraph{\texorpdfstring{ImportAll()}{ImportAll()}}
+{\footnotesize\ttfamily static void Import\+All (\begin{DoxyParamCaption}\item[{Import\+Asset\+Options}]{options = {\ttfamily ImportAssetOptions.Default} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Scans for {\bfseries{external}} file system modifications and updates the Database accordingly. Prefer to use \doxylink{class_code_smile_editor_1_1_asset_1_1_file_ae11a13bfe131ec8b20a5a5667e75ec97_ae11a13bfe131ec8b20a5a5667e75ec97}{Code\+Smile\+Editor.\+Asset.\+File.\+Import} within \doxylink{class_code_smile_editor_1_1_asset_1_1_file_ab0082c2158f7de6376b26a75827bd7a2_ab0082c2158f7de6376b26a75827bd7a2}{Code\+Smile\+Editor.\+Asset.\+File.\+Batch\+Editing}. {\bfseries{CAUTION}}\+: Import\+All (\textquotesingle{}Refresh\textquotesingle{}) unloads unused resources. This can degrade editor performance!
+
+For best performance, prefer to use \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a39290f9fb99198f7df818bc5cafb0e1a_a39290f9fb99198f7df818bc5cafb0e1a}{Code\+Smile\+Editor.\+Asset.\+File.\+Import(\+String\mbox{[}$\,$\mbox{]},\+Import\+Asset\+Options)} to import multiple assets in a batch operation.
+
+When to call Import\+All (same as Asset\+Database.\+Refresh)\+:
+\begin{DoxyItemize}
+\item After System.\+IO.\+File/\+Directory or similar methods modified files/folders in the project.
+\item After running an external process that possibly modified files/folders in the project. There is no need to call Import\+All / \textquotesingle{}Refresh\textquotesingle{} in any other situation!
+\end{DoxyItemize}
+
+Modified means the following\+:
+\begin{DoxyItemize}
+\item Create a file / folder
+\item Delete or trash a file / folder
+\item Move or rename a file / folder
+\item Change a file\textquotesingle{}s contents
+\item Change attributes of a file/folder
+\end{DoxyItemize}
+
+History\+: I believe there was a time around Unity 3.\+x-\/ish where the Editor did not have an "{}auto refresh"{} feature, so calling \textquotesingle{}Asset\+Database.\+Refresh\textquotesingle{} after any Asset\+Database operation was common. This seems to have stuck, even though it is no longer required. \textquotesingle{}Refresh\textquotesingle{} remains over-\/used with no thought given to its necessity or performance implications.
+
+Any file operation done VIA the Asset\+Database these days does {\bfseries{not}} require an Asset\+Database refresh! Only file operations that bypass the Asset\+Database require importing affected files. In most cases you know which files are affects, so import them individually. Everyone will thank you for the effort!
+
+{\bfseries{CAUTION\+:}} Since this method unloads \textquotesingle{}unused\textquotesingle{} assets, any unloaded asset will have to be reloaded when accessed again. Worst case scenario\+: An editor script that indiscriminately calls this method after common editor operations, such as selection change events, can severely degrade Editor performance!
+
+Further reading for the curious\+: \href{https://docs.unity3d.com/Manual/AssetDatabaseRefreshing.html}{\texttt{ Asset\+Database Refreshing}}
+
+
+\begin{DoxyParams}{Parameters}
+{\em options} & \href{https://docs.unity3d.com/ScriptReference/ImportAssetOptions.html}{\texttt{ Import\+Asset\+Options}} \\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a39290f9fb99198f7df818bc5cafb0e1a_a39290f9fb99198f7df818bc5cafb0e1a}{Code\+Smile\+Editor.\+Asset.\+File.\+Import(\+String\mbox{[}$\,$\mbox{]},\+Import\+Asset\+Options)}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.Refresh.html}{\texttt{ Asset\+Database.\+Refresh}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_afa24e66e009892bc1032c64f512f349d_afa24e66e009892bc1032c64f512f349d}\label{class_code_smile_editor_1_1_asset_1_1_database_afa24e66e009892bc1032c64f512f349d_afa24e66e009892bc1032c64f512f349d}
+\index{Asset.Database@{Asset.Database}!ReleaseFileHandles@{ReleaseFileHandles}}
+\index{ReleaseFileHandles@{ReleaseFileHandles}!Asset.Database@{Asset.Database}}
+\doxyparagraph{\texorpdfstring{ReleaseFileHandles()}{ReleaseFileHandles()}}
+{\footnotesize\ttfamily static void Release\+File\+Handles (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Releases any cached file handles that Unity holds.
+
+May be required to allow external asset or meta file modifications to operate without causing access exceptions.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.ReleaseCachedFileHandles.html}{\texttt{ Asset\+Database.\+Release\+Cached\+File\+Handles}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_af4aa665fc0bbfcf9f076d5da1457b2c4_af4aa665fc0bbfcf9f076d5da1457b2c4}\label{class_code_smile_editor_1_1_asset_1_1_database_af4aa665fc0bbfcf9f076d5da1457b2c4_af4aa665fc0bbfcf9f076d5da1457b2c4}
+\index{Asset.Database@{Asset.Database}!SaveAll@{SaveAll}}
+\index{SaveAll@{SaveAll}!Asset.Database@{Asset.Database}}
+\doxyparagraph{\texorpdfstring{SaveAll()}{SaveAll()}}
+{\footnotesize\ttfamily static void Save\+All (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Saves all unsaved (dirty) assets.
+
+CAUTION\+: Consider that a user generally does NOT want an editor script to \textquotesingle{}randomly\textquotesingle{} save all unsaved assets! Use only where absolutely appropriate, otherwise prefer to use \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a07847a761e01e0d2fdd91c3cf6db50d2_a07847a761e01e0d2fdd91c3cf6db50d2}{Code\+Smile\+Editor.\+Asset.\+File.\+Save} to explicitly save each modified asset. Preferably do so within a \doxylink{class_code_smile_editor_1_1_asset_1_1_file_ab0082c2158f7de6376b26a75827bd7a2_ab0082c2158f7de6376b26a75827bd7a2}{Code\+Smile\+Editor.\+Asset.\+File.\+Batch\+Editing} operation. Just be nice to fellow Editor users. ;)
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a07847a761e01e0d2fdd91c3cf6db50d2_a07847a761e01e0d2fdd91c3cf6db50d2}{Code\+Smile\+Editor.\+Asset.\+File.\+Save}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_af8f67d95622e7afce379eaa04c82eaf6_af8f67d95622e7afce379eaa04c82eaf6}{Code\+Smile\+Editor.\+Asset.\+File.\+Force\+Save}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_ab0082c2158f7de6376b26a75827bd7a2_ab0082c2158f7de6376b26a75827bd7a2}{Code\+Smile\+Editor.\+Asset.\+File.\+Batch\+Editing}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.SaveAssets.html}{\texttt{ Asset\+Database.\+Save\+Assets}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_a3006ad7769d5ba3b477a5c153f20dd27_a3006ad7769d5ba3b477a5c153f20dd27}\label{class_code_smile_editor_1_1_asset_1_1_database_a3006ad7769d5ba3b477a5c153f20dd27_a3006ad7769d5ba3b477a5c153f20dd27}
+\index{Asset.Database@{Asset.Database}!UpgradeAllAssetSerializationVersions@{UpgradeAllAssetSerializationVersions}}
+\index{UpgradeAllAssetSerializationVersions@{UpgradeAllAssetSerializationVersions}!Asset.Database@{Asset.Database}}
+\doxyparagraph{\texorpdfstring{UpgradeAllAssetSerializationVersions()}{UpgradeAllAssetSerializationVersions()}}
+{\footnotesize\ttfamily static void Upgrade\+All\+Asset\+Serialization\+Versions (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Updates all native asset files to reflect any changes in serialization in the current editor version.
+
+Use this after upgrading Unity Editor versions and you want to make sure all native assets are serialized to the current serialization format. Depending on whether Unity made changes to the serialization format this may change between none to all native assets, including .meta files. Use with caution when working with source control\+: discuss implications with the team / tech lead.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item Upgrade\+Asset\+Serialization\+Version
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.ForceReserializeAssets.html}{\texttt{ Asset\+Database.\+Force\+Reserialize\+Assets}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_a0bdd680cb405e96d92b6a7af338ad27f_a0bdd680cb405e96d92b6a7af338ad27f}\label{class_code_smile_editor_1_1_asset_1_1_database_a0bdd680cb405e96d92b6a7af338ad27f_a0bdd680cb405e96d92b6a7af338ad27f}
+\index{Asset.Database@{Asset.Database}!UpgradeAssetSerializationVersion@{UpgradeAssetSerializationVersion}}
+\index{UpgradeAssetSerializationVersion@{UpgradeAssetSerializationVersion}!Asset.Database@{Asset.Database}}
+\doxyparagraph{\texorpdfstring{UpgradeAssetSerializationVersion()}{UpgradeAssetSerializationVersion()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
+{\footnotesize\ttfamily static void Upgrade\+Asset\+Serialization\+Version (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} IEnumerable$<$ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} $>$}]{paths, }\item[{Force\+Reserialize\+Assets\+Options}]{options = {\ttfamily ForceReserializeAssetsOptions.ReserializeAssetsAndMetadata} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Updates all native asset files to reflect any changes in serialization in the current editor version.
+
+Use this after upgrading Unity Editor versions and you want to make sure all native assets are serialized to the current serialization format. Depending on whether Unity made changes to the serialization format this may change between none to all native assets. Use with caution when working with source control\+: discuss implications with the team / tech lead.
+
+
+\begin{DoxyParams}{Parameters}
+{\em paths} & Paths to assets to reserialize to the current serialization version.\\
+\hline
+{\em options} & \href{https://docs.unity3d.com/ScriptReference/ForceReserializeAssetsOptions.html}{\texttt{ Force\+Reserialize\+Assets\+Options}} \\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item Upgrade\+All\+Asset\+Serialization\+Versions
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.ForceReserializeAssets.html}{\texttt{ Asset\+Database.\+Force\+Reserialize\+Assets}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_a94a77b56376fbb7f52ba2bece53f45b7_a94a77b56376fbb7f52ba2bece53f45b7}\label{class_code_smile_editor_1_1_asset_1_1_database_a94a77b56376fbb7f52ba2bece53f45b7_a94a77b56376fbb7f52ba2bece53f45b7}
+\index{Asset.Database@{Asset.Database}!UpgradeAssetSerializationVersion@{UpgradeAssetSerializationVersion}}
+\index{UpgradeAssetSerializationVersion@{UpgradeAssetSerializationVersion}!Asset.Database@{Asset.Database}}
+\doxyparagraph{\texorpdfstring{UpgradeAssetSerializationVersion()}{UpgradeAssetSerializationVersion()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
+{\footnotesize\ttfamily static void Upgrade\+Asset\+Serialization\+Version (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} IEnumerable$<$ String $>$}]{paths, }\item[{Force\+Reserialize\+Assets\+Options}]{options = {\ttfamily ForceReserializeAssetsOptions.ReserializeAssetsAndMetadata} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Updates all native asset files to reflect any changes in serialization in the current editor version.
+
+Use this after upgrading Unity Editor versions and you want to make sure all native assets are serialized to the current serialization format. Depending on whether Unity made changes to the serialization format this may change between none to all native assets. Use with caution when working with source control\+: discuss implications with the team / tech lead.
+
+
+\begin{DoxyParams}{Parameters}
+{\em paths} & Paths to assets to reserialize to the current serialization version.\\
+\hline
+{\em options} & \href{https://docs.unity3d.com/ScriptReference/ForceReserializeAssetsOptions.html}{\texttt{ Force\+Reserialize\+Assets\+Options}} \\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item Upgrade\+All\+Asset\+Serialization\+Versions
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.ForceReserializeAssets.html}{\texttt{ Asset\+Database.\+Force\+Reserialize\+Assets}}
+\end{DoxyItemize}
+
+\doxysubsubsection{Property Documentation}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_a46c1f775624b940edb495a5c2b08583c_a46c1f775624b940edb495a5c2b08583c}\label{class_code_smile_editor_1_1_asset_1_1_database_a46c1f775624b940edb495a5c2b08583c_a46c1f775624b940edb495a5c2b08583c}
+\index{Asset.Database@{Asset.Database}!DesiredWorkerCount@{DesiredWorkerCount}}
+\index{DesiredWorkerCount@{DesiredWorkerCount}!Asset.Database@{Asset.Database}}
+\doxyparagraph{\texorpdfstring{DesiredWorkerCount}{DesiredWorkerCount}}
+{\footnotesize\ttfamily Int32 Desired\+Worker\+Count\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [get]}, {\ttfamily [set]}}
+
+
+
+Gets or sets the desired worker count.
+
+Setting the worked count calls Force\+To\+Desired\+Worker\+Count() to ensure the worker count is updated.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.DesiredWorkerCount.html}{\texttt{ Asset\+Database.\+Desired\+Worker\+Count}}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.ForceToDesiredWorkerCount.html}{\texttt{ Asset\+Database.\+Force\+To\+Desired\+Worker\+Count}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_database_8cs_source_l00033}{33}} of file \mbox{\hyperlink{_asset_8_database_8cs_source}{Asset.\+Database.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00034\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00035\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{get}\ =>\ AssetDatabase.DesiredWorkerCount;}
+\DoxyCodeLine{00036\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{set}}
+\DoxyCodeLine{00037\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00038\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.DesiredWorkerCount\ =\ value;}
+\DoxyCodeLine{00039\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.ForceToDesiredWorkerCount();}
+\DoxyCodeLine{00040\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{00041\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_a6190225c177bf52f95b2cdbcb99ccc2a_a6190225c177bf52f95b2cdbcb99ccc2a}\label{class_code_smile_editor_1_1_asset_1_1_database_a6190225c177bf52f95b2cdbcb99ccc2a_a6190225c177bf52f95b2cdbcb99ccc2a}
+\index{Asset.Database@{Asset.Database}!DirectoryMonitoring@{DirectoryMonitoring}}
+\index{DirectoryMonitoring@{DirectoryMonitoring}!Asset.Database@{Asset.Database}}
+\doxyparagraph{\texorpdfstring{DirectoryMonitoring}{DirectoryMonitoring}}
+{\footnotesize\ttfamily Boolean Directory\+Monitoring\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [get]}, {\ttfamily [set]}}
+
+
+
+Returns whether directory monitoring is enabled in Preferences.
+
+Directory\+Monitoring is automatically disabled when symlinks are used in the project.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.IsDirectoryMonitoringEnabled.html}{\texttt{ Asset\+Database.\+Is\+Directory\+Monitoring\+Enabled}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_database_8cs_source_l00054}{54}} of file \mbox{\hyperlink{_asset_8_database_8cs_source}{Asset.\+Database.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00055\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00056\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{get}\ =>\ AssetDatabase.IsDirectoryMonitoringEnabled();}
+\DoxyCodeLine{00057\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{set}\ =>\ EditorPrefs.SetBool(\textcolor{stringliteral}{"{}DirectoryMonitoring"{}},\ value);}
+\DoxyCodeLine{00058\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server.tex b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server.tex
new file mode 100644
index 00000000..545ae673
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server.tex
@@ -0,0 +1,324 @@
+\doxysubsection{Asset.\+Database.\+Cache\+Server Class Reference}
+\hypertarget{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server}{}\label{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server}\index{Asset.Database.CacheServer@{Asset.Database.CacheServer}}
+
+
+Groups Cache\+Server (Accelerator) related functionality.
+
+
+
+
+Collaboration diagram for Asset.\+Database.\+Cache\+Server\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=217pt]{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server__coll__graph}
+\end{center}
+\end{figure}
+\doxysubsubsubsection*{Static Public Member Functions}
+\begin{DoxyCompactItemize}
+\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_ab7e00eb132c285b4e57d86fcb20a0eab_ab7e00eb132c285b4e57d86fcb20a0eab}{Apply\+Settings}} ()
+\begin{DoxyCompactList}\small\item\em Applies modified cache server (Accelerator) settings so that they take effect immediately. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a2ceac4f87b79ab2f6e11c52ee1bfc237_a2ceac4f87b79ab2f6e11c52ee1bfc237}{Can\+Connect}} (\mbox{[}Not\+Null\mbox{]} String ip\+Address, UInt16 port)
+\begin{DoxyCompactList}\small\item\em Tests if the cache server (Accelerator) connection can be established with the given IP address and port number. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a03214d814cc25d687cf283544c0b7478_a03214d814cc25d687cf283544c0b7478}{Disconnect}} ()
+\begin{DoxyCompactList}\small\item\em Disconnects any active cache server (Accelerator) connection. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a69d55faf286c564a2244d84908fb8de7_a69d55faf286c564a2244d84908fb8de7}{Reset\+Reconnect\+Timer}} ()
+\begin{DoxyCompactList}\small\item\em Resets the internal reconnect timer which subsequently increases to up to 5 minutes if connection attempts fail repeatedly. \end{DoxyCompactList}\end{DoxyCompactItemize}
+\doxysubsubsubsection*{Properties}
+\begin{DoxyCompactItemize}
+\item
+static String \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a59ea01f052d1a1cdcd46b7652a31eb7b_a59ea01f052d1a1cdcd46b7652a31eb7b}{Address}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the cache server (Accelerator) IP address from Project Settings. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a0f5601571ed30a21f8d5b0d1dcd769cf_a0f5601571ed30a21f8d5b0d1dcd769cf}{Connected}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns true if the editor is connected to a cache server (Accelerator). \end{DoxyCompactList}\item
+static String \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a6d323f9b74b844dd3c1772b8002a3c38_a6d323f9b74b844dd3c1772b8002a3c38}{Connected\+Address}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the cache server (Accelerator) IP address the editor is currently connected to. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a27fb9a87ab3f56a3f3bb83347e27cdc5_a27fb9a87ab3f56a3f3bb83347e27cdc5}{Downloads\+Allowed}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns whether the cache server (Accelerator) is allowed to download files. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a0d54cbeba816f7543a911249ba11c571_a0d54cbeba816f7543a911249ba11c571}{Enabled}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns true if cache server (Accelerator) is enabled in Project Settings / Preferences. \end{DoxyCompactList}\item
+static String \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a0d4894d317ef790042b43eb297af0cb5_a0d4894d317ef790042b43eb297af0cb5}{Namespace\+Prefix}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the cache server (Accelerator) namespace prefix from Project Settings. \end{DoxyCompactList}\item
+static UInt16 \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_abd00b91d5bf24c2777bdc3914e79aab6_abd00b91d5bf24c2777bdc3914e79aab6}{Port}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the cache server (Accelerator) port number from Project Settings. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_adace505fc9ae3b5da05e0759ac552186_adace505fc9ae3b5da05e0759ac552186}{Uploads\+Allowed}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns whether the cache server (Accelerator) is allowed to upload files. \end{DoxyCompactList}\end{DoxyCompactItemize}
+
+
+\doxysubsubsection{Detailed Description}
+Groups Cache\+Server (Accelerator) related functionality.
+
+Definition at line \mbox{\hyperlink{_asset_8_database_8_cache_server_8cs_source_l00017}{17}} of file \mbox{\hyperlink{_asset_8_database_8_cache_server_8cs_source}{Asset.\+Database.\+Cache\+Server.\+cs}}.
+
+
+
+\doxysubsubsection{Member Function Documentation}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_ab7e00eb132c285b4e57d86fcb20a0eab_ab7e00eb132c285b4e57d86fcb20a0eab}\label{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_ab7e00eb132c285b4e57d86fcb20a0eab_ab7e00eb132c285b4e57d86fcb20a0eab}
+\index{Asset.Database.CacheServer@{Asset.Database.CacheServer}!ApplySettings@{ApplySettings}}
+\index{ApplySettings@{ApplySettings}!Asset.Database.CacheServer@{Asset.Database.CacheServer}}
+\doxyparagraph{\texorpdfstring{ApplySettings()}{ApplySettings()}}
+{\footnotesize\ttfamily static void Apply\+Settings (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Applies modified cache server (Accelerator) settings so that they take effect immediately.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.RefreshSettings.html}{\texttt{ Asset\+Database.\+Refresh\+Settings}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a2ceac4f87b79ab2f6e11c52ee1bfc237_a2ceac4f87b79ab2f6e11c52ee1bfc237}\label{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a2ceac4f87b79ab2f6e11c52ee1bfc237_a2ceac4f87b79ab2f6e11c52ee1bfc237}
+\index{Asset.Database.CacheServer@{Asset.Database.CacheServer}!CanConnect@{CanConnect}}
+\index{CanConnect@{CanConnect}!Asset.Database.CacheServer@{Asset.Database.CacheServer}}
+\doxyparagraph{\texorpdfstring{CanConnect()}{CanConnect()}}
+{\footnotesize\ttfamily static Boolean Can\+Connect (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{ip\+Address, }\item[{UInt16}]{port }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tests if the cache server (Accelerator) connection can be established with the given IP address and port number.
+
+
+\begin{DoxyParams}{Parameters}
+{\em ip\+Address} & The IP address to connect to.\\
+\hline
+{\em port} & The port number of the Cache Server/\+Accelerator service.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if connection could be established, false otherwise.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.CanConnectToCacheServer.html}{\texttt{ Asset\+Database.\+Can\+Connect\+To\+Cache\+Server}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a03214d814cc25d687cf283544c0b7478_a03214d814cc25d687cf283544c0b7478}\label{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a03214d814cc25d687cf283544c0b7478_a03214d814cc25d687cf283544c0b7478}
+\index{Asset.Database.CacheServer@{Asset.Database.CacheServer}!Disconnect@{Disconnect}}
+\index{Disconnect@{Disconnect}!Asset.Database.CacheServer@{Asset.Database.CacheServer}}
+\doxyparagraph{\texorpdfstring{Disconnect()}{Disconnect()}}
+{\footnotesize\ttfamily static void Disconnect (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Disconnects any active cache server (Accelerator) connection.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.CloseCacheServerConnection.html}{\texttt{ Asset\+Database.\+Close\+Cache\+Server\+Connection}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a69d55faf286c564a2244d84908fb8de7_a69d55faf286c564a2244d84908fb8de7}\label{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a69d55faf286c564a2244d84908fb8de7_a69d55faf286c564a2244d84908fb8de7}
+\index{Asset.Database.CacheServer@{Asset.Database.CacheServer}!ResetReconnectTimer@{ResetReconnectTimer}}
+\index{ResetReconnectTimer@{ResetReconnectTimer}!Asset.Database.CacheServer@{Asset.Database.CacheServer}}
+\doxyparagraph{\texorpdfstring{ResetReconnectTimer()}{ResetReconnectTimer()}}
+{\footnotesize\ttfamily static void Reset\+Reconnect\+Timer (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Resets the internal reconnect timer which subsequently increases to up to 5 minutes if connection attempts fail repeatedly.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.ResetCacheServerReconnectTimer.html}{\texttt{ Asset\+Database.\+Reset\+Cache\+Server\+Reconnect\+Timer}}
+\end{DoxyItemize}
+
+\doxysubsubsection{Property Documentation}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a59ea01f052d1a1cdcd46b7652a31eb7b_a59ea01f052d1a1cdcd46b7652a31eb7b}\label{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a59ea01f052d1a1cdcd46b7652a31eb7b_a59ea01f052d1a1cdcd46b7652a31eb7b}
+\index{Asset.Database.CacheServer@{Asset.Database.CacheServer}!Address@{Address}}
+\index{Address@{Address}!Asset.Database.CacheServer@{Asset.Database.CacheServer}}
+\doxyparagraph{\texorpdfstring{Address}{Address}}
+{\footnotesize\ttfamily String Address\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [get]}}
+
+
+
+Returns the cache server (Accelerator) IP address from Project Settings.
+
+Returns an empty string if there is no connection.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetCacheServerAddress.html}{\texttt{ Asset\+Database.\+Get\+Cache\+Server\+Address}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_database_8_cache_server_8cs_source_l00059}{59}} of file \mbox{\hyperlink{_asset_8_database_8_cache_server_8cs_source}{Asset.\+Database.\+Cache\+Server.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a0f5601571ed30a21f8d5b0d1dcd769cf_a0f5601571ed30a21f8d5b0d1dcd769cf}\label{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a0f5601571ed30a21f8d5b0d1dcd769cf_a0f5601571ed30a21f8d5b0d1dcd769cf}
+\index{Asset.Database.CacheServer@{Asset.Database.CacheServer}!Connected@{Connected}}
+\index{Connected@{Connected}!Asset.Database.CacheServer@{Asset.Database.CacheServer}}
+\doxyparagraph{\texorpdfstring{Connected}{Connected}}
+{\footnotesize\ttfamily Boolean Connected\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [get]}}
+
+
+
+Returns true if the editor is connected to a cache server (Accelerator).
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.IsConnectedToCacheServer.html}{\texttt{ Asset\+Database.\+Is\+Connected\+To\+Cache\+Server}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_database_8_cache_server_8cs_source_l00035}{35}} of file \mbox{\hyperlink{_asset_8_database_8_cache_server_8cs_source}{Asset.\+Database.\+Cache\+Server.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a6d323f9b74b844dd3c1772b8002a3c38_a6d323f9b74b844dd3c1772b8002a3c38}\label{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a6d323f9b74b844dd3c1772b8002a3c38_a6d323f9b74b844dd3c1772b8002a3c38}
+\index{Asset.Database.CacheServer@{Asset.Database.CacheServer}!ConnectedAddress@{ConnectedAddress}}
+\index{ConnectedAddress@{ConnectedAddress}!Asset.Database.CacheServer@{Asset.Database.CacheServer}}
+\doxyparagraph{\texorpdfstring{ConnectedAddress}{ConnectedAddress}}
+{\footnotesize\ttfamily String Connected\+Address\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [get]}}
+
+
+
+Returns the cache server (Accelerator) IP address the editor is currently connected to.
+
+Returns an empty string if there is no connection.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetCurrentCacheServerIp.html}{\texttt{ Asset\+Database.\+Get\+Current\+Cache\+Server\+Ip}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_database_8_cache_server_8cs_source_l00047}{47}} of file \mbox{\hyperlink{_asset_8_database_8_cache_server_8cs_source}{Asset.\+Database.\+Cache\+Server.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a27fb9a87ab3f56a3f3bb83347e27cdc5_a27fb9a87ab3f56a3f3bb83347e27cdc5}\label{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a27fb9a87ab3f56a3f3bb83347e27cdc5_a27fb9a87ab3f56a3f3bb83347e27cdc5}
+\index{Asset.Database.CacheServer@{Asset.Database.CacheServer}!DownloadsAllowed@{DownloadsAllowed}}
+\index{DownloadsAllowed@{DownloadsAllowed}!Asset.Database.CacheServer@{Asset.Database.CacheServer}}
+\doxyparagraph{\texorpdfstring{DownloadsAllowed}{DownloadsAllowed}}
+{\footnotesize\ttfamily Boolean Downloads\+Allowed\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [get]}}
+
+
+
+Returns whether the cache server (Accelerator) is allowed to download files.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetCacheServerEnableDownload.html}{\texttt{ Asset\+Database.\+Get\+Cache\+Server\+Enable\+Download}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_database_8_cache_server_8cs_source_l00098}{98}} of file \mbox{\hyperlink{_asset_8_database_8_cache_server_8cs_source}{Asset.\+Database.\+Cache\+Server.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a0d54cbeba816f7543a911249ba11c571_a0d54cbeba816f7543a911249ba11c571}\label{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a0d54cbeba816f7543a911249ba11c571_a0d54cbeba816f7543a911249ba11c571}
+\index{Asset.Database.CacheServer@{Asset.Database.CacheServer}!Enabled@{Enabled}}
+\index{Enabled@{Enabled}!Asset.Database.CacheServer@{Asset.Database.CacheServer}}
+\doxyparagraph{\texorpdfstring{Enabled}{Enabled}}
+{\footnotesize\ttfamily Boolean Enabled\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [get]}}
+
+
+
+Returns true if cache server (Accelerator) is enabled in Project Settings / Preferences.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.IsCacheServerEnabled.html}{\texttt{ Asset\+Database.\+Is\+Cache\+Server\+Enabled}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_database_8_cache_server_8cs_source_l00026}{26}} of file \mbox{\hyperlink{_asset_8_database_8_cache_server_8cs_source}{Asset.\+Database.\+Cache\+Server.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a0d4894d317ef790042b43eb297af0cb5_a0d4894d317ef790042b43eb297af0cb5}\label{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a0d4894d317ef790042b43eb297af0cb5_a0d4894d317ef790042b43eb297af0cb5}
+\index{Asset.Database.CacheServer@{Asset.Database.CacheServer}!NamespacePrefix@{NamespacePrefix}}
+\index{NamespacePrefix@{NamespacePrefix}!Asset.Database.CacheServer@{Asset.Database.CacheServer}}
+\doxyparagraph{\texorpdfstring{NamespacePrefix}{NamespacePrefix}}
+{\footnotesize\ttfamily String Namespace\+Prefix\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [get]}}
+
+
+
+Returns the cache server (Accelerator) namespace prefix from Project Settings.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetCacheServerNamespacePrefix.html}{\texttt{ Asset\+Database.\+Get\+Cache\+Server\+Namespace\+Prefix}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_database_8_cache_server_8cs_source_l00080}{80}} of file \mbox{\hyperlink{_asset_8_database_8_cache_server_8cs_source}{Asset.\+Database.\+Cache\+Server.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_abd00b91d5bf24c2777bdc3914e79aab6_abd00b91d5bf24c2777bdc3914e79aab6}\label{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_abd00b91d5bf24c2777bdc3914e79aab6_abd00b91d5bf24c2777bdc3914e79aab6}
+\index{Asset.Database.CacheServer@{Asset.Database.CacheServer}!Port@{Port}}
+\index{Port@{Port}!Asset.Database.CacheServer@{Asset.Database.CacheServer}}
+\doxyparagraph{\texorpdfstring{Port}{Port}}
+{\footnotesize\ttfamily UInt16 Port\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [get]}}
+
+
+
+Returns the cache server (Accelerator) port number from Project Settings.
+
+Returns 0 if the port is unset.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetCacheServerPort.html}{\texttt{ Asset\+Database.\+Get\+Cache\+Server\+Port}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_database_8_cache_server_8cs_source_l00071}{71}} of file \mbox{\hyperlink{_asset_8_database_8_cache_server_8cs_source}{Asset.\+Database.\+Cache\+Server.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_adace505fc9ae3b5da05e0759ac552186_adace505fc9ae3b5da05e0759ac552186}\label{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_adace505fc9ae3b5da05e0759ac552186_adace505fc9ae3b5da05e0759ac552186}
+\index{Asset.Database.CacheServer@{Asset.Database.CacheServer}!UploadsAllowed@{UploadsAllowed}}
+\index{UploadsAllowed@{UploadsAllowed}!Asset.Database.CacheServer@{Asset.Database.CacheServer}}
+\doxyparagraph{\texorpdfstring{UploadsAllowed}{UploadsAllowed}}
+{\footnotesize\ttfamily Boolean Uploads\+Allowed\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [get]}}
+
+
+
+Returns whether the cache server (Accelerator) is allowed to upload files.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetCacheServerEnableUpload.html}{\texttt{ Asset\+Database.\+Get\+Cache\+Server\+Enable\+Upload}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_database_8_cache_server_8cs_source_l00089}{89}} of file \mbox{\hyperlink{_asset_8_database_8_cache_server_8cs_source}{Asset.\+Database.\+Cache\+Server.\+cs}}.
+
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server__coll__graph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server__coll__graph.md5
new file mode 100644
index 00000000..d2b8d2fb
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server__coll__graph.md5
@@ -0,0 +1 @@
+3ffe2d6ec0a308ce607f4dfcb5569dcf
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server__coll__graph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server__coll__graph.pdf
new file mode 100644
index 00000000..2093f8da
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server__coll__graph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_database__coll__graph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_database__coll__graph.md5
new file mode 100644
index 00000000..b044abe9
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_database__coll__graph.md5
@@ -0,0 +1 @@
+58a392f4a4ffbc965e45a8471662cc88
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_database__coll__graph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_database__coll__graph.pdf
new file mode 100644
index 00000000..3a1b961b
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_database__coll__graph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_dependency.tex b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_dependency.tex
new file mode 100644
index 00000000..2d8f751c
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_dependency.tex
@@ -0,0 +1,270 @@
+\doxysubsection{Asset.\+Dependency Class Reference}
+\hypertarget{class_code_smile_editor_1_1_asset_1_1_dependency}{}\label{class_code_smile_editor_1_1_asset_1_1_dependency}\index{Asset.Dependency@{Asset.Dependency}}
+
+
+Groups all dependency related functionality.
+
+
+
+
+Collaboration diagram for Asset.\+Dependency\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=172pt]{class_code_smile_editor_1_1_asset_1_1_dependency__coll__graph}
+\end{center}
+\end{figure}
+\doxysubsubsubsection*{Static Public Member Functions}
+\begin{DoxyCompactItemize}
+\item
+static String\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a5281d751f8d22a0cf586636bb925cbca_a5281d751f8d22a0cf586636bb925cbca}{Get\+All}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Returns all (direct and indirect) dependencies of the asset at the given path. \end{DoxyCompactList}\item
+static String\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a3158b26e37b698fdeb8cc380d475ee1c_a3158b26e37b698fdeb8cc380d475ee1c}{Get\+All}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\mbox{[}$\,$\mbox{]} paths)
+\begin{DoxyCompactList}\small\item\em Returns all (direct and indirect) dependencies of the assets at the given paths. Returns paths to dependent assets. \end{DoxyCompactList}\item
+static String\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a3fd889e4426d5d12102ee08e7b291a0f_a3fd889e4426d5d12102ee08e7b291a0f}{Get\+Direct}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Returns the direct dependencies of the asset at the given path. \end{DoxyCompactList}\item
+static String\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_af349cee54bc70ac16cf55f3ab204b1f9_af349cee54bc70ac16cf55f3ab204b1f9}{Get\+Direct}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\mbox{[}$\,$\mbox{]} paths)
+\begin{DoxyCompactList}\small\item\em Returns the direct dependencies of the assets at the given paths. \end{DoxyCompactList}\item
+static Hash128 \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a3e3f046819f75953102e43ecf130e92a_a3e3f046819f75953102e43ecf130e92a}{Get\+Hash}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Returns the dependency value hash for the asset at path. \end{DoxyCompactList}\item
+static Hash128 \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a773bdd015f687ec5ea5ab318448ee246_a773bdd015f687ec5ea5ab318448ee246}{Get\+Hash}} (GUID guid)
+\begin{DoxyCompactList}\small\item\em Returns the dependency hash for the asset. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a2a075809ed33b78a5b235ce1daaadbaa_a2a075809ed33b78a5b235ce1daaadbaa}{Register}} (\mbox{[}Not\+Null\mbox{]} String global\+Dependency\+Name, Hash128 dependency\+Hash)
+\begin{DoxyCompactList}\small\item\em Registers a custom dependency to be used in conjunction with a custom Asset\+Importer. \end{DoxyCompactList}\item
+static UInt32 \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_dependency_a23e341be7d456b3badf13a34970b25ff_a23e341be7d456b3badf13a34970b25ff}{Unregister}} (\mbox{[}Not\+Null\mbox{]} String global\+Dependency\+Name\+Prefix)
+\begin{DoxyCompactList}\small\item\em Unregisters one or more custom dependencies with the given prefix (eg \textquotesingle{}Starts\+With\textquotesingle{}). \end{DoxyCompactList}\end{DoxyCompactItemize}
+
+
+\doxysubsubsection{Detailed Description}
+Groups all dependency related functionality.
+
+Definition at line \mbox{\hyperlink{_asset_8_dependency_8cs_source_l00016}{16}} of file \mbox{\hyperlink{_asset_8_dependency_8cs_source}{Asset.\+Dependency.\+cs}}.
+
+
+
+\doxysubsubsection{Member Function Documentation}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_dependency_a5281d751f8d22a0cf586636bb925cbca_a5281d751f8d22a0cf586636bb925cbca}\label{class_code_smile_editor_1_1_asset_1_1_dependency_a5281d751f8d22a0cf586636bb925cbca_a5281d751f8d22a0cf586636bb925cbca}
+\index{Asset.Dependency@{Asset.Dependency}!GetAll@{GetAll}}
+\index{GetAll@{GetAll}!Asset.Dependency@{Asset.Dependency}}
+\doxyparagraph{\texorpdfstring{GetAll()}{GetAll()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
+{\footnotesize\ttfamily static String\mbox{[}$\,$\mbox{]} Get\+All (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns all (direct and indirect) dependencies of the asset at the given path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+Paths to dependent assets, or empty array if there are no dependencies.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_dependency_a3158b26e37b698fdeb8cc380d475ee1c_a3158b26e37b698fdeb8cc380d475ee1c}{Code\+Smile\+Editor.\+Asset.\+Dependency.\+Get\+All(\+Code\+Smile\+Editor.\+Asset.\+Path\mbox{[}$\,$\mbox{]})}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_dependency_a3fd889e4426d5d12102ee08e7b291a0f_a3fd889e4426d5d12102ee08e7b291a0f}{Code\+Smile\+Editor.\+Asset.\+Dependency.\+Get\+Direct(\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetDependencies.html}{\texttt{ Asset\+Database.\+Get\+Dependencies}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_dependency_a3158b26e37b698fdeb8cc380d475ee1c_a3158b26e37b698fdeb8cc380d475ee1c}\label{class_code_smile_editor_1_1_asset_1_1_dependency_a3158b26e37b698fdeb8cc380d475ee1c_a3158b26e37b698fdeb8cc380d475ee1c}
+\index{Asset.Dependency@{Asset.Dependency}!GetAll@{GetAll}}
+\index{GetAll@{GetAll}!Asset.Dependency@{Asset.Dependency}}
+\doxyparagraph{\texorpdfstring{GetAll()}{GetAll()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
+{\footnotesize\ttfamily static String\mbox{[}$\,$\mbox{]} Get\+All (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\mbox{[}$\,$\mbox{]}}]{paths }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns all (direct and indirect) dependencies of the assets at the given paths. Returns paths to dependent assets.
+
+
+\begin{DoxyParams}{Parameters}
+{\em paths} & Paths to asset files.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+Paths to dependent assets, or empty array if there are no dependencies.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_dependency_a5281d751f8d22a0cf586636bb925cbca_a5281d751f8d22a0cf586636bb925cbca}{Code\+Smile\+Editor.\+Asset.\+Dependency.\+Get\+All(\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_dependency_af349cee54bc70ac16cf55f3ab204b1f9_af349cee54bc70ac16cf55f3ab204b1f9}{Code\+Smile\+Editor.\+Asset.\+Dependency.\+Get\+Direct(\+Code\+Smile\+Editor.\+Asset.\+Path\mbox{[}$\,$\mbox{]})}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetDependencies.html}{\texttt{ Asset\+Database.\+Get\+Dependencies}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_dependency_a3fd889e4426d5d12102ee08e7b291a0f_a3fd889e4426d5d12102ee08e7b291a0f}\label{class_code_smile_editor_1_1_asset_1_1_dependency_a3fd889e4426d5d12102ee08e7b291a0f_a3fd889e4426d5d12102ee08e7b291a0f}
+\index{Asset.Dependency@{Asset.Dependency}!GetDirect@{GetDirect}}
+\index{GetDirect@{GetDirect}!Asset.Dependency@{Asset.Dependency}}
+\doxyparagraph{\texorpdfstring{GetDirect()}{GetDirect()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
+{\footnotesize\ttfamily static String\mbox{[}$\,$\mbox{]} Get\+Direct (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns the direct dependencies of the asset at the given path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+Paths to dependent assets, or empty array if there are no dependencies.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_dependency_a5281d751f8d22a0cf586636bb925cbca_a5281d751f8d22a0cf586636bb925cbca}{Code\+Smile\+Editor.\+Asset.\+Dependency.\+Get\+All(\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_dependency_af349cee54bc70ac16cf55f3ab204b1f9_af349cee54bc70ac16cf55f3ab204b1f9}{Code\+Smile\+Editor.\+Asset.\+Dependency.\+Get\+Direct(\+Code\+Smile\+Editor.\+Asset.\+Path\mbox{[}$\,$\mbox{]})}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetDependencies.html}{\texttt{ Asset\+Database.\+Get\+Dependencies}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_dependency_af349cee54bc70ac16cf55f3ab204b1f9_af349cee54bc70ac16cf55f3ab204b1f9}\label{class_code_smile_editor_1_1_asset_1_1_dependency_af349cee54bc70ac16cf55f3ab204b1f9_af349cee54bc70ac16cf55f3ab204b1f9}
+\index{Asset.Dependency@{Asset.Dependency}!GetDirect@{GetDirect}}
+\index{GetDirect@{GetDirect}!Asset.Dependency@{Asset.Dependency}}
+\doxyparagraph{\texorpdfstring{GetDirect()}{GetDirect()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
+{\footnotesize\ttfamily static String\mbox{[}$\,$\mbox{]} Get\+Direct (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\mbox{[}$\,$\mbox{]}}]{paths }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns the direct dependencies of the assets at the given paths.
+
+
+\begin{DoxyParams}{Parameters}
+{\em paths} & Paths to asset files.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+Paths to dependent assets, or empty array if there are no dependencies.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_dependency_a3158b26e37b698fdeb8cc380d475ee1c_a3158b26e37b698fdeb8cc380d475ee1c}{Code\+Smile\+Editor.\+Asset.\+Dependency.\+Get\+All(\+Code\+Smile\+Editor.\+Asset.\+Path\mbox{[}$\,$\mbox{]})}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_dependency_a3fd889e4426d5d12102ee08e7b291a0f_a3fd889e4426d5d12102ee08e7b291a0f}{Code\+Smile\+Editor.\+Asset.\+Dependency.\+Get\+Direct(\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetDependencies.html}{\texttt{ Asset\+Database.\+Get\+Dependencies}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_dependency_a3e3f046819f75953102e43ecf130e92a_a3e3f046819f75953102e43ecf130e92a}\label{class_code_smile_editor_1_1_asset_1_1_dependency_a3e3f046819f75953102e43ecf130e92a_a3e3f046819f75953102e43ecf130e92a}
+\index{Asset.Dependency@{Asset.Dependency}!GetHash@{GetHash}}
+\index{GetHash@{GetHash}!Asset.Dependency@{Asset.Dependency}}
+\doxyparagraph{\texorpdfstring{GetHash()}{GetHash()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
+{\footnotesize\ttfamily static Hash128 Get\+Hash (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns the dependency value hash for the asset at path.
+
+If the hash changed it means the asset contents may have changed.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The dependency hash value for this asset.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_dependency_a2a075809ed33b78a5b235ce1daaadbaa_a2a075809ed33b78a5b235ce1daaadbaa}{Code\+Smile\+Editor.\+Asset.\+Dependency.\+Register}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetAssetDependencyHash.html}{\texttt{ Asset\+Database.\+Get\+Asset\+Dependency\+Hash}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_dependency_a773bdd015f687ec5ea5ab318448ee246_a773bdd015f687ec5ea5ab318448ee246}\label{class_code_smile_editor_1_1_asset_1_1_dependency_a773bdd015f687ec5ea5ab318448ee246_a773bdd015f687ec5ea5ab318448ee246}
+\index{Asset.Dependency@{Asset.Dependency}!GetHash@{GetHash}}
+\index{GetHash@{GetHash}!Asset.Dependency@{Asset.Dependency}}
+\doxyparagraph{\texorpdfstring{GetHash()}{GetHash()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
+{\footnotesize\ttfamily static Hash128 Get\+Hash (\begin{DoxyParamCaption}\item[{GUID}]{guid }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns the dependency hash for the asset.
+
+If the hash changed it means the asset contents may have changed.
+
+
+\begin{DoxyParams}{Parameters}
+{\em guid} & GUID of an asset file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The dependency hash value for this asset.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_dependency_a2a075809ed33b78a5b235ce1daaadbaa_a2a075809ed33b78a5b235ce1daaadbaa}{Code\+Smile\+Editor.\+Asset.\+Dependency.\+Register}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetAssetDependencyHash.html}{\texttt{ Asset\+Database.\+Get\+Asset\+Dependency\+Hash}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_dependency_a2a075809ed33b78a5b235ce1daaadbaa_a2a075809ed33b78a5b235ce1daaadbaa}\label{class_code_smile_editor_1_1_asset_1_1_dependency_a2a075809ed33b78a5b235ce1daaadbaa_a2a075809ed33b78a5b235ce1daaadbaa}
+\index{Asset.Dependency@{Asset.Dependency}!Register@{Register}}
+\index{Register@{Register}!Asset.Dependency@{Asset.Dependency}}
+\doxyparagraph{\texorpdfstring{Register()}{Register()}}
+{\footnotesize\ttfamily static void Register (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{global\+Dependency\+Name, }\item[{Hash128}]{dependency\+Hash }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Registers a custom dependency to be used in conjunction with a custom Asset\+Importer.
+
+
+\begin{DoxyParams}{Parameters}
+{\em global\+Dependency\+Name} & A global name for the dependency.\\
+\hline
+{\em dependency\+Hash} & The current hash of the dependency value which, if changed, indicates that the asset has changed. \\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_dependency_a23e341be7d456b3badf13a34970b25ff_a23e341be7d456b3badf13a34970b25ff}{Code\+Smile\+Editor.\+Asset.\+Dependency.\+Unregister}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.RegisterCustomDependency.html}{\texttt{ Asset\+Database.\+Register\+Custom\+Dependency}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_dependency_a23e341be7d456b3badf13a34970b25ff_a23e341be7d456b3badf13a34970b25ff}\label{class_code_smile_editor_1_1_asset_1_1_dependency_a23e341be7d456b3badf13a34970b25ff_a23e341be7d456b3badf13a34970b25ff}
+\index{Asset.Dependency@{Asset.Dependency}!Unregister@{Unregister}}
+\index{Unregister@{Unregister}!Asset.Dependency@{Asset.Dependency}}
+\doxyparagraph{\texorpdfstring{Unregister()}{Unregister()}}
+{\footnotesize\ttfamily static UInt32 Unregister (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{global\+Dependency\+Name\+Prefix }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Unregisters one or more custom dependencies with the given prefix (eg \textquotesingle{}Starts\+With\textquotesingle{}).
+
+
+\begin{DoxyParams}{Parameters}
+{\em global\+Dependency\+Name\+Prefix} & A \textquotesingle{}starts with\textquotesingle{} filter string of the dependencies to unregister.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The number of custom dependencies that were removed.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_dependency_a2a075809ed33b78a5b235ce1daaadbaa_a2a075809ed33b78a5b235ce1daaadbaa}{Code\+Smile\+Editor.\+Asset.\+Dependency.\+Register}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.UnregisterCustomDependencyPrefixFilter.html}{\texttt{ Asset\+Database.\+Unregister\+Custom\+Dependency\+Prefix\+Filter}}
+\end{DoxyItemize}
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_dependency__coll__graph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_dependency__coll__graph.md5
new file mode 100644
index 00000000..0649c822
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_dependency__coll__graph.md5
@@ -0,0 +1 @@
+7912a9bb191575eff8dae8ed587a5235
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_dependency__coll__graph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_dependency__coll__graph.pdf
new file mode 100644
index 00000000..6f908005
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_dependency__coll__graph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file.tex b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file.tex
new file mode 100644
index 00000000..760faa8c
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file.tex
@@ -0,0 +1,1738 @@
+\doxysubsection{Asset.\+File Class Reference}
+\hypertarget{class_code_smile_editor_1_1_asset_1_1_file}{}\label{class_code_smile_editor_1_1_asset_1_1_file}\index{Asset.File@{Asset.File}}
+
+
+Groups file related operations.
+
+
+
+
+Collaboration diagram for Asset.\+File\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=180pt]{class_code_smile_editor_1_1_asset_1_1_file__coll__graph}
+\end{center}
+\end{figure}
+\doxysubsubsubsection*{Classes}
+\begin{DoxyCompactItemize}
+\item
+class {\bfseries Asset\+Database\+Load\+Operation}
+\end{DoxyCompactItemize}
+\doxysubsubsubsection*{Static Public Member Functions}
+\begin{DoxyCompactItemize}
+\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_ab0082c2158f7de6376b26a75827bd7a2_ab0082c2158f7de6376b26a75827bd7a2}{Batch\+Editing}} (\mbox{[}Not\+Null\mbox{]} Action mass\+Asset\+File\+Edit\+Action)
+\begin{DoxyCompactList}\small\item\em Batch multiple asset file operations to improve execution speed. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a2bdf010d46d8dd5ea6420e4bdc75c9aa_a2bdf010d46d8dd5ea6420e4bdc75c9aa}{Can\+Move}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} source\+Path, \mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} destination\+Path)
+\begin{DoxyCompactList}\small\item\em Tests if an asset can be moved to destination without moving the asset. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a3d74dc290eb0f6815b0f1eac29c6c2e6_a3d74dc290eb0f6815b0f1eac29c6c2e6}{Can\+Open\+In\+Editor}} (\mbox{[}Not\+Null\mbox{]} Object instance)
+\begin{DoxyCompactList}\small\item\em Returns true if the given object can be opened (edited) by the Unity editor. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_aabdb1dcc073e89416e72eccf3839ad1d_aabdb1dcc073e89416e72eccf3839ad1d}{Can\+Open\+In\+Editor}} (Int32 instance\+Id)
+\begin{DoxyCompactList}\small\item\em Returns true if the given object can be opened (edited) by the Unity editor. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a68db67f53a3a2a6002b9922d2678bc96_a68db67f53a3a2a6002b9922d2678bc96}{Copy}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} source\+Path, \mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} destination\+Path)
+\begin{DoxyCompactList}\small\item\em Copies an asset from source to destination path. Overwrites any existing assets. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a73e80cb6412abff44ed9c172f7f92e36_a73e80cb6412abff44ed9c172f7f92e36}{Copy\+As\+New}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} source\+Path, \mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} destination\+Path)
+\begin{DoxyCompactList}\small\item\em Copies an asset from source to destination path. Generates a unique file name if an asset already exist at destination\+Path. \end{DoxyCompactList}\item
+static Object \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222}{Create}} (\mbox{[}Not\+Null\mbox{]} Byte\mbox{[}$\,$\mbox{]} contents, \mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Writes the byte array to disk, then imports and loads the asset. Overwrites any existing file. \end{DoxyCompactList}\item
+static Object \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_acfdbd887acb03dfdc27a2e7628055a8a_acfdbd887acb03dfdc27a2e7628055a8a}{Create}} (\mbox{[}Not\+Null\mbox{]} Object instance, \mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Writes the object to disk. Overwrites any existing file. \end{DoxyCompactList}\item
+static Object \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a57a28b554ce2ca500c6eeba3a17852b2_a57a28b554ce2ca500c6eeba3a17852b2}{Create}} (\mbox{[}Not\+Null\mbox{]} String contents, \mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Writes the string to disk, then imports and loads the asset. Overwrites any existing file. \end{DoxyCompactList}\item
+static Object \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_aceef508c424cb6d38e755ddd6bde4dd7_aceef508c424cb6d38e755ddd6bde4dd7}{Create\+As\+New}} (\mbox{[}Not\+Null\mbox{]} Byte\mbox{[}$\,$\mbox{]} contents, \mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Writes the byte array to disk, then imports and loads the asset. Generates a unique file name if an asset exists at the path. \end{DoxyCompactList}\item
+static Object \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a7fe77714391ee2e69e6b2b45fc97dff6_a7fe77714391ee2e69e6b2b45fc97dff6}{Create\+As\+New}} (\mbox{[}Not\+Null\mbox{]} Object instance, \mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Writes the object to disk. Generates a unique file name if an asset exists at the path. \end{DoxyCompactList}\item
+static Object \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a709af33f201b4704e1919a289b93189d_a709af33f201b4704e1919a289b93189d}{Create\+As\+New}} (\mbox{[}Not\+Null\mbox{]} String contents, \mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Writes the string to disk, then imports and loads the asset. Generates a unique file name if an asset exists at the path. \end{DoxyCompactList}\item
+static T \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a5ed30d6c3ba66e66db44c0d8490dcdfc_a5ed30d6c3ba66e66db44c0d8490dcdfc}{Create\+Or\+Load$<$ T $>$}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path, \mbox{[}Not\+Null\mbox{]} Func$<$ T $>$ get\+Instance)
+\begin{DoxyCompactList}\small\item\em Loads or creates an asset at path. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a0ee72382871919c7584e6962088c34ba_a0ee72382871919c7584e6962088c34ba}{Delete}} (\mbox{[}Not\+Null\mbox{]} IEnumerable$<$ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} $>$ paths)
+\begin{DoxyCompactList}\small\item\em Tries to delete multiple files/folders. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a397f277ed8b22e8ee60662f7b8b3ef06_a397f277ed8b22e8ee60662f7b8b3ef06}{Delete}} (\mbox{[}Not\+Null\mbox{]} IEnumerable$<$ String $>$ paths)
+\begin{DoxyCompactList}\small\item\em Tries to delete multiple files/folders. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_ac644ddb8e561a93366765ea0017771ec_ac644ddb8e561a93366765ea0017771ec}{Delete}} (\mbox{[}Not\+Null\mbox{]} Object asset)
+\begin{DoxyCompactList}\small\item\em Deletes an asset file or folder. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a5a01eb8f2adc1117b9df394acbe3c529_a5a01eb8f2adc1117b9df394acbe3c529}{Delete}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Deletes an asset file or folder. \end{DoxyCompactList}\item
+static String\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a9824149809d0caf6b7853241fe518852_a9824149809d0caf6b7853241fe518852}{Find}} (\mbox{[}Not\+Null\mbox{]} String filter, String\mbox{[}$\,$\mbox{]} search\+In\+Folders=null)
+\begin{DoxyCompactList}\small\item\em Finds asset GUIDs by the given filter criteria. \end{DoxyCompactList}\item
+static GUID\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a6a20df93ae9409f4216c6f98cf334c30_a6a20df93ae9409f4216c6f98cf334c30}{Find\+Guids}} (\mbox{[}Not\+Null\mbox{]} String filter, String\mbox{[}$\,$\mbox{]} search\+In\+Folders=null)
+\begin{DoxyCompactList}\small\item\em Finds asset GUIDs by the given filter criteria. \end{DoxyCompactList}\item
+static \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_aeb2b5afda3ab0df2521ff86e9d7c80b8_aeb2b5afda3ab0df2521ff86e9d7c80b8}{Find\+Paths}} (\mbox{[}Not\+Null\mbox{]} String filter, String\mbox{[}$\,$\mbox{]} search\+In\+Folders=null)
+\begin{DoxyCompactList}\small\item\em Finds asset paths by the given filter criteria. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_af8f67d95622e7afce379eaa04c82eaf6_af8f67d95622e7afce379eaa04c82eaf6}{Force\+Save}} (\mbox{[}Not\+Null\mbox{]} Object asset)
+\begin{DoxyCompactList}\small\item\em Forces the object to be saved to disk. Marks the object as dirty and then calls \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a07847a761e01e0d2fdd91c3cf6db50d2_a07847a761e01e0d2fdd91c3cf6db50d2}{Code\+Smile\+Editor.\+Asset.\+File.\+Save}. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_ae11a13bfe131ec8b20a5a5667e75ec97_ae11a13bfe131ec8b20a5a5667e75ec97}{Import}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path, Import\+Asset\+Options options=Import\+Asset\+Options.\+Default)
+\begin{DoxyCompactList}\small\item\em Imports a file at a given path that was created or modified \textquotesingle{}externally\textquotesingle{}. Externally refers to any means other than Asset\+Database methods such as System.\+IO or batch scripts. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_ae3c1d18d1f26557851b440b5704d2188_ae3c1d18d1f26557851b440b5704d2188}{Import}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\mbox{[}$\,$\mbox{]} paths, Import\+Asset\+Options options=Import\+Asset\+Options.\+Default)
+\begin{DoxyCompactList}\small\item\em Imports multiple paths that were created or modified \textquotesingle{}externally\textquotesingle{}. Externally refers to any means other than Asset\+Database methods such as System.\+IO or batch scripts. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a39290f9fb99198f7df818bc5cafb0e1a_a39290f9fb99198f7df818bc5cafb0e1a}{Import}} (\mbox{[}Not\+Null\mbox{]} String\mbox{[}$\,$\mbox{]} paths, Import\+Asset\+Options options=Import\+Asset\+Options.\+Default)
+\begin{DoxyCompactList}\small\item\em Imports multiple paths that were created or modified \textquotesingle{}externally\textquotesingle{}. Externally refers to any means other than Asset\+Database methods such as System.\+IO or batch scripts. \end{DoxyCompactList}\item
+static T \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a4dc6aff1e32f03b26ec0e310fb4233c0_a4dc6aff1e32f03b26ec0e310fb4233c0}{Import\+And\+Load$<$ T $>$}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path, Import\+Asset\+Options options=Import\+Asset\+Options.\+Default)
+\begin{DoxyCompactList}\small\item\em Imports a file at a given path that was created or modified \textquotesingle{}externally\textquotesingle{}, then loads and returns the asset object. See \doxylink{class_code_smile_editor_1_1_asset_1_1_file_ae11a13bfe131ec8b20a5a5667e75ec97_ae11a13bfe131ec8b20a5a5667e75ec97}{Code\+Smile\+Editor.\+Asset.\+File.\+Import} for more info. \end{DoxyCompactList}\item
+static T \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a4f89e334c74903942522d0e0066d28b7_a4f89e334c74903942522d0e0066d28b7}{Load$<$ T $>$}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Loads an asset at path. \end{DoxyCompactList}\item
+static Asset\+Database\+Load\+Operation \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a1de889c18256fc25aa6f53507d448050_a1de889c18256fc25aa6f53507d448050}{Load\+Async}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path, Int64 local\+File\+Id)
+\begin{DoxyCompactList}\small\item\em Loads an object and its dependencies asynchronously. \end{DoxyCompactList}\item
+static T \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a8cc280e1c5ddde8511c2af5541365b3f_a8cc280e1c5ddde8511c2af5541365b3f}{Load\+Main$<$ T $>$}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Loads the main (root) asset at the path. \end{DoxyCompactList}\item
+static T \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a9702d12ef27f2d0dfd1f8201fbb37088_a9702d12ef27f2d0dfd1f8201fbb37088}{Load\+Main$<$ T $>$}} (GUID guid)
+\begin{DoxyCompactList}\small\item\em Loads the main (root) asset object for the GUID. \end{DoxyCompactList}\item
+static T \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a8e86208ec0d709c8259baacdb5e70281_a8e86208ec0d709c8259baacdb5e70281}{Load\+Or\+Create$<$ T $>$}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path, \mbox{[}Not\+Null\mbox{]} Func$<$ T $>$ get\+Instance)
+\begin{DoxyCompactList}\small\item\em Loads an asset at path or creates the asset if needed. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9dbc6b65d0efec125ca6ec75_a996c0cfd9dbc6b65d0efec125ca6ec75}{Move}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} source\+Path, \mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} destination\+Path)
+\begin{DoxyCompactList}\small\item\em Moves an asset file to destination path. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_aac35e74243833f4963e3cf8ab1a4f845_aac35e74243833f4963e3cf8ab1a4f845}{Open\+External}} (\mbox{[}Not\+Null\mbox{]} Object asset, Int32 line\+Number=-\/1, Int32 column\+Number=-\/1)
+\begin{DoxyCompactList}\small\item\em Opens the asset in the application associated with the file\textquotesingle{}s extension. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a0f433ac6de466ab7e094565c97af8db9_a0f433ac6de466ab7e094565c97af8db9}{Open\+External}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path, Int32 line\+Number=-\/1, Int32 column\+Number=-\/1)
+\begin{DoxyCompactList}\small\item\em Opens the asset in the application associated with the file\textquotesingle{}s extension. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a009c655c2959b1ccd6b5a94a6da261e4_a009c655c2959b1ccd6b5a94a6da261e4}{Open\+External}} (Int32 instance\+Id, Int32 line\+Number=-\/1, Int32 column\+Number=-\/1)
+\begin{DoxyCompactList}\small\item\em Opens the asset in the application associated with the file\textquotesingle{}s extension. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396a4bfed873f01e8622033ab_a34bfcab396a4bfed873f01e8622033ab}{Rename}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path, String new\+File\+Name)
+\begin{DoxyCompactList}\small\item\em Renames an asset\textquotesingle{}s file or folder name. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a07847a761e01e0d2fdd91c3cf6db50d2_a07847a761e01e0d2fdd91c3cf6db50d2}{Save}} (\mbox{[}Not\+Null\mbox{]} Object asset)
+\begin{DoxyCompactList}\small\item\em Saves the object to disk if it is dirty. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a0d399890489ab279eb57b94b19f2d19c_a0d399890489ab279eb57b94b19f2d19c}{Save}} (GUID guid)
+\begin{DoxyCompactList}\small\item\em Saves any changes to the asset to disk, by GUID. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a648bb9fbc03561bb60612a090b8317d2_a648bb9fbc03561bb60612a090b8317d2}{Trash}} (\mbox{[}Not\+Null\mbox{]} IEnumerable$<$ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} $>$ paths)
+\begin{DoxyCompactList}\small\item\em Tries to move multiple files/folders to the OS trash. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a5c0a13cf46027517d371dd2d3c49fdee_a5c0a13cf46027517d371dd2d3c49fdee}{Trash}} (\mbox{[}Not\+Null\mbox{]} IEnumerable$<$ String $>$ paths)
+\begin{DoxyCompactList}\small\item\em Tries to move multiple files/folders to the OS trash. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_aaecd043609a6fb930141fd2cf906b808_aaecd043609a6fb930141fd2cf906b808}{Trash}} (\mbox{[}Not\+Null\mbox{]} Object asset)
+\begin{DoxyCompactList}\small\item\em Moves an asset file or folder to the OS trash. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a7b0aaffab801a8597c60daff4bccb177_a7b0aaffab801a8597c60daff4bccb177}{Trash}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Moves an asset file or folder to the OS trash. \end{DoxyCompactList}\end{DoxyCompactItemize}
+\doxysubsubsubsection*{Properties}
+\begin{DoxyCompactItemize}
+\item
+static IList$<$ String $>$ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a02854122d4449e39feb8c1dfdc8bd537_a02854122d4449e39feb8c1dfdc8bd537}{Paths\+Not\+Deleted}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em The paths that failed to be deleted or trashed. Is an empty list if no failure occured on the last call to Delete\+Many or Trash\+Many. \end{DoxyCompactList}\end{DoxyCompactItemize}
+
+
+\doxysubsubsection{Detailed Description}
+Groups file related operations.
+
+Definition at line \mbox{\hyperlink{_asset_8_file_8cs_source_l00032}{32}} of file \mbox{\hyperlink{_asset_8_file_8cs_source}{Asset.\+File.\+cs}}.
+
+
+
+\doxysubsubsection{Member Function Documentation}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_ab0082c2158f7de6376b26a75827bd7a2_ab0082c2158f7de6376b26a75827bd7a2}\label{class_code_smile_editor_1_1_asset_1_1_file_ab0082c2158f7de6376b26a75827bd7a2_ab0082c2158f7de6376b26a75827bd7a2}
+\index{Asset.File@{Asset.File}!BatchEditing@{BatchEditing}}
+\index{BatchEditing@{BatchEditing}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{BatchEditing()}{BatchEditing()}}
+{\footnotesize\ttfamily static void Batch\+Editing (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Action}]{mass\+Asset\+File\+Edit\+Action }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Batch multiple asset file operations to improve execution speed.
+
+Within the mass\+Asset\+File\+Edit\+Action the Asset\+Database will queue any \doxylink{class_code_smile_editor_1_1_asset_1_1_file}{Code\+Smile\+Editor.\+Asset.\+File} operations and runs them afterwards in a single refresh cycle. This can significantly speed up mass file operations.
+
+The callback Action is safeguarded against exceptions leaving the Asset\+Database in a \textquotesingle{}suspended\textquotesingle{} state. Also note that Allow.. and Disallow\+Auto\+Refresh calls are already implied when using Start/\+Stop\+Asset\+Editing. See the code snippet below for implementation details.
+
+CAUTION\+:
+\begin{DoxyItemize}
+\item Importing an asset and subsequently trying to load the asset within the callback will return null.
+\item When \textquotesingle{}externally\textquotesingle{} modifying files and importing those, consider the above implication. You need to defer loading and working with these objects. Calling Batch\+Editing twice is good practice (first modify \& import, then load the assets).
+\end{DoxyItemize}
+
+
+\begin{DoxyParams}{Parameters}
+{\em mass\+Asset\+File\+Edit\+Action} & Write any mass file editing code in this action.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.StartAssetEditing.html}{\texttt{ Asset\+Database.\+Start\+Asset\+Editing}}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.StopAssetEditing.html}{\texttt{ Asset\+Database.\+Stop\+Asset\+Editing}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_file_8cs_source_l00075}{75}} of file \mbox{\hyperlink{_asset_8_file_8cs_source}{Asset.\+File.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00076\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00077\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{try}}
+\DoxyCodeLine{00078\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00079\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ StartAssetEditing();}
+\DoxyCodeLine{00080\ }
+\DoxyCodeLine{00081\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ massAssetFileEditAction?.Invoke();}
+\DoxyCodeLine{00082\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{00083\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{finally}}
+\DoxyCodeLine{00084\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00085\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ StopAssetEditing();}
+\DoxyCodeLine{00086\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{00087\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a2bdf010d46d8dd5ea6420e4bdc75c9aa_a2bdf010d46d8dd5ea6420e4bdc75c9aa}\label{class_code_smile_editor_1_1_asset_1_1_file_a2bdf010d46d8dd5ea6420e4bdc75c9aa_a2bdf010d46d8dd5ea6420e4bdc75c9aa}
+\index{Asset.File@{Asset.File}!CanMove@{CanMove}}
+\index{CanMove@{CanMove}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{CanMove()}{CanMove()}}
+{\footnotesize\ttfamily static Boolean Can\+Move (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{source\+Path, }\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{destination\+Path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tests if an asset can be moved to destination without moving the asset.
+
+Note\+: This returns false if any folders of destination\+Path do not exist.
+
+
+\begin{DoxyParams}{Parameters}
+{\em source\+Path} & The path to an asset file.\\
+\hline
+{\em destination\+Path} & The path to move the file to. May have a different extension.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if moving the asset will be successful, false if part of the destination\+Path does not exist or other reasons. Use \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message} to get the failure message.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9dbc6b65d0efec125ca6ec75_a996c0cfd9dbc6b65d0efec125ca6ec75}{Code\+Smile\+Editor.\+Asset.\+File.\+Move}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396a4bfed873f01e8622033ab_a34bfcab396a4bfed873f01e8622033ab}{Code\+Smile\+Editor.\+Asset.\+File.\+Rename}
+\item \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.ValidateMoveAsset.html}{\texttt{ Asset\+Database.\+Validate\+Move\+Asset}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_file_8cs_source_l00607}{607}} of file \mbox{\hyperlink{_asset_8_file_8cs_source}{Asset.\+File.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00608\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00609\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (sourcePath\ ==\ \textcolor{keyword}{null}\ ||\ destinationPath\ ==\ \textcolor{keyword}{null})}
+\DoxyCodeLine{00610\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
+\DoxyCodeLine{00611\ }
+\DoxyCodeLine{00612\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ Succeeded(AssetDatabase.ValidateMoveAsset(sourcePath,\ destinationPath));}
+\DoxyCodeLine{00613\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a3d74dc290eb0f6815b0f1eac29c6c2e6_a3d74dc290eb0f6815b0f1eac29c6c2e6}\label{class_code_smile_editor_1_1_asset_1_1_file_a3d74dc290eb0f6815b0f1eac29c6c2e6_a3d74dc290eb0f6815b0f1eac29c6c2e6}
+\index{Asset.File@{Asset.File}!CanOpenInEditor@{CanOpenInEditor}}
+\index{CanOpenInEditor@{CanOpenInEditor}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{CanOpenInEditor()}{CanOpenInEditor()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
+{\footnotesize\ttfamily static Boolean Can\+Open\+In\+Editor (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{instance }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns true if the given object can be opened (edited) by the Unity editor.
+
+Returns false if obj is not an asset but an in-\/memory instance.
+
+
+\begin{DoxyParams}{Parameters}
+{\em instance} & The object to test for editability.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if Unity can open assets of this type. False if it cannot or if obj is not an asset.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_aac35e74243833f4963e3cf8ab1a4f845_aac35e74243833f4963e3cf8ab1a4f845}{Code\+Smile\+Editor.\+Asset.\+File.\+Open\+External}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.CanOpenAssetInEditor.html}{\texttt{ Asset\+Database.\+Can\+Open\+Asset\+In\+Editor}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_aabdb1dcc073e89416e72eccf3839ad1d_aabdb1dcc073e89416e72eccf3839ad1d}\label{class_code_smile_editor_1_1_asset_1_1_file_aabdb1dcc073e89416e72eccf3839ad1d_aabdb1dcc073e89416e72eccf3839ad1d}
+\index{Asset.File@{Asset.File}!CanOpenInEditor@{CanOpenInEditor}}
+\index{CanOpenInEditor@{CanOpenInEditor}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{CanOpenInEditor()}{CanOpenInEditor()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
+{\footnotesize\ttfamily static Boolean Can\+Open\+In\+Editor (\begin{DoxyParamCaption}\item[{Int32}]{instance\+Id }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns true if the given object can be opened (edited) by the Unity editor.
+
+Throws an exception if instance\+Id is not an asset but an in-\/memory instance.
+
+
+\begin{DoxyParams}{Parameters}
+{\em instance\+Id} & The instance ID of an asset object.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if Unity can open assets of this type. False if it cannot or if instance\+Id is not an asset.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_aac35e74243833f4963e3cf8ab1a4f845_aac35e74243833f4963e3cf8ab1a4f845}{Code\+Smile\+Editor.\+Asset.\+File.\+Open\+External}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.CanOpenAssetInEditor.html}{\texttt{ Asset\+Database.\+Can\+Open\+Asset\+In\+Editor}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a68db67f53a3a2a6002b9922d2678bc96_a68db67f53a3a2a6002b9922d2678bc96}\label{class_code_smile_editor_1_1_asset_1_1_file_a68db67f53a3a2a6002b9922d2678bc96_a68db67f53a3a2a6002b9922d2678bc96}
+\index{Asset.File@{Asset.File}!Copy@{Copy}}
+\index{Copy@{Copy}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{Copy()}{Copy()}}
+{\footnotesize\ttfamily static Boolean Copy (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{source\+Path, }\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{destination\+Path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Copies an asset from source to destination path. Overwrites any existing assets.
+
+Will create any missing destination folders automatically.
+
+
+\begin{DoxyParams}{Parameters}
+{\em source\+Path} & The source asset to copy.\\
+\hline
+{\em destination\+Path} & Path to destination file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if copying succeeded, false if it failed. Use \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message} to get the failure message.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a73e80cb6412abff44ed9c172f7f92e36_a73e80cb6412abff44ed9c172f7f92e36}{Code\+Smile\+Editor.\+Asset.\+File.\+Copy\+As\+New}
+\item \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.CopyAsset.html}{\texttt{ Asset\+Database.\+Copy\+Asset}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a73e80cb6412abff44ed9c172f7f92e36_a73e80cb6412abff44ed9c172f7f92e36}\label{class_code_smile_editor_1_1_asset_1_1_file_a73e80cb6412abff44ed9c172f7f92e36_a73e80cb6412abff44ed9c172f7f92e36}
+\index{Asset.File@{Asset.File}!CopyAsNew@{CopyAsNew}}
+\index{CopyAsNew@{CopyAsNew}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{CopyAsNew()}{CopyAsNew()}}
+{\footnotesize\ttfamily static Boolean Copy\+As\+New (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{source\+Path, }\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{destination\+Path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Copies an asset from source to destination path. Generates a unique file name if an asset already exist at destination\+Path.
+
+Will create any missing destination folders automatically.
+
+
+\begin{DoxyParams}{Parameters}
+{\em source\+Path} & The source asset to copy.\\
+\hline
+{\em destination\+Path} & Path to destination file. Note that the actual file name may differ.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if copying succeeded, false if it failed. Use \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message} to get the failure message.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a68db67f53a3a2a6002b9922d2678bc96_a68db67f53a3a2a6002b9922d2678bc96}{Code\+Smile\+Editor.\+Asset.\+File.\+Copy}
+\item \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.CopyAsset.html}{\texttt{ Asset\+Database.\+Copy\+Asset}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222}\label{class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222}
+\index{Asset.File@{Asset.File}!Create@{Create}}
+\index{Create@{Create}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{Create()}{Create()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}}
+{\footnotesize\ttfamily static Object Create (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Byte\mbox{[}$\,$\mbox{]}}]{contents, }\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Writes the byte array to disk, then imports and loads the asset. Overwrites any existing file.
+
+Creates missing folders in the destination path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em contents} & The bytes to write.\\
+\hline
+{\em path} & Path to a file with extension.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The newly created asset.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_aceef508c424cb6d38e755ddd6bde4dd7_aceef508c424cb6d38e755ddd6bde4dd7}{Code\+Smile\+Editor.\+Asset.\+File.\+Create\+As\+New(\+Byte\mbox{[}$\,$\mbox{]},\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a57a28b554ce2ca500c6eeba3a17852b2_a57a28b554ce2ca500c6eeba3a17852b2}{Code\+Smile\+Editor.\+Asset.\+File.\+Create(\+String,\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_acfdbd887acb03dfdc27a2e7628055a8a_acfdbd887acb03dfdc27a2e7628055a8a}{Code\+Smile\+Editor.\+Asset.\+File.\+Create(\+Object,\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\end{DoxyItemize}
+
+Referenced by \mbox{\hyperlink{_asset_8_file_8cs_source_l00393}{Asset.\+File.\+Load\+Or\+Create$<$ T $>$()}}.
+
+Here is the caller graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=260pt]{class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222_icgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_acfdbd887acb03dfdc27a2e7628055a8a_acfdbd887acb03dfdc27a2e7628055a8a}\label{class_code_smile_editor_1_1_asset_1_1_file_acfdbd887acb03dfdc27a2e7628055a8a_acfdbd887acb03dfdc27a2e7628055a8a}
+\index{Asset.File@{Asset.File}!Create@{Create}}
+\index{Create@{Create}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{Create()}{Create()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}}
+{\footnotesize\ttfamily static Object Create (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{instance, }\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Writes the object to disk. Overwrites any existing file.
+
+Creates missing folders in the destination path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em instance} & The object to save as an asset file.\\
+\hline
+{\em path} & Path to a file with extension.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The newly created asset.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a7fe77714391ee2e69e6b2b45fc97dff6_a7fe77714391ee2e69e6b2b45fc97dff6}{Code\+Smile\+Editor.\+Asset.\+File.\+Create\+As\+New(\+Object,\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222}{Code\+Smile\+Editor.\+Asset.\+File.\+Create(\+Byte\mbox{[}$\,$\mbox{]},\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a57a28b554ce2ca500c6eeba3a17852b2_a57a28b554ce2ca500c6eeba3a17852b2}{Code\+Smile\+Editor.\+Asset.\+File.\+Create(\+String,\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a5ed30d6c3ba66e66db44c0d8490dcdfc_a5ed30d6c3ba66e66db44c0d8490dcdfc}{Code\+Smile\+Editor.\+Asset.\+File.\+Create\+Or\+Load$<$\+T$>$}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.CreateAsset.html}{\texttt{ Asset\+Database.\+Create\+Asset}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a57a28b554ce2ca500c6eeba3a17852b2_a57a28b554ce2ca500c6eeba3a17852b2}\label{class_code_smile_editor_1_1_asset_1_1_file_a57a28b554ce2ca500c6eeba3a17852b2_a57a28b554ce2ca500c6eeba3a17852b2}
+\index{Asset.File@{Asset.File}!Create@{Create}}
+\index{Create@{Create}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{Create()}{Create()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}}
+{\footnotesize\ttfamily static Object Create (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{contents, }\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Writes the string to disk, then imports and loads the asset. Overwrites any existing file.
+
+Creates missing folders in the destination path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em contents} & The string to write.\\
+\hline
+{\em path} & Path to a file with extension.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The newly created asset.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a709af33f201b4704e1919a289b93189d_a709af33f201b4704e1919a289b93189d}{Code\+Smile\+Editor.\+Asset.\+File.\+Create\+As\+New(\+String,\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222}{Code\+Smile\+Editor.\+Asset.\+File.\+Create(\+Byte\mbox{[}$\,$\mbox{]},\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_acfdbd887acb03dfdc27a2e7628055a8a_acfdbd887acb03dfdc27a2e7628055a8a}{Code\+Smile\+Editor.\+Asset.\+File.\+Create(\+Object,\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_aceef508c424cb6d38e755ddd6bde4dd7_aceef508c424cb6d38e755ddd6bde4dd7}\label{class_code_smile_editor_1_1_asset_1_1_file_aceef508c424cb6d38e755ddd6bde4dd7_aceef508c424cb6d38e755ddd6bde4dd7}
+\index{Asset.File@{Asset.File}!CreateAsNew@{CreateAsNew}}
+\index{CreateAsNew@{CreateAsNew}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{CreateAsNew()}{CreateAsNew()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}}
+{\footnotesize\ttfamily static Object Create\+As\+New (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Byte\mbox{[}$\,$\mbox{]}}]{contents, }\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Writes the byte array to disk, then imports and loads the asset. Generates a unique file name if an asset exists at the path.
+
+Creates missing folders in the destination path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em contents} & The bytes to write.\\
+\hline
+{\em path} & Path to a file with extension. Note that the asset\textquotesingle{}s actual file name may differ.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The newly created asset.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222}{Code\+Smile\+Editor.\+Asset.\+File.\+Create(\+Byte\mbox{[}$\,$\mbox{]},\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a709af33f201b4704e1919a289b93189d_a709af33f201b4704e1919a289b93189d}{Code\+Smile\+Editor.\+Asset.\+File.\+Create\+As\+New(\+String,\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a7fe77714391ee2e69e6b2b45fc97dff6_a7fe77714391ee2e69e6b2b45fc97dff6}{Code\+Smile\+Editor.\+Asset.\+File.\+Create\+As\+New(\+Object,\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a7fe77714391ee2e69e6b2b45fc97dff6_a7fe77714391ee2e69e6b2b45fc97dff6}\label{class_code_smile_editor_1_1_asset_1_1_file_a7fe77714391ee2e69e6b2b45fc97dff6_a7fe77714391ee2e69e6b2b45fc97dff6}
+\index{Asset.File@{Asset.File}!CreateAsNew@{CreateAsNew}}
+\index{CreateAsNew@{CreateAsNew}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{CreateAsNew()}{CreateAsNew()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}}
+{\footnotesize\ttfamily static Object Create\+As\+New (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{instance, }\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Writes the object to disk. Generates a unique file name if an asset exists at the path.
+
+Creates missing folders in the destination path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em instance} & The object to save as an asset file.\\
+\hline
+{\em path} & Path to a file with extension. Note that the asset\textquotesingle{}s actual file name may differ.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The newly created asset.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_acfdbd887acb03dfdc27a2e7628055a8a_acfdbd887acb03dfdc27a2e7628055a8a}{Code\+Smile\+Editor.\+Asset.\+File.\+Create(\+Object,\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_aceef508c424cb6d38e755ddd6bde4dd7_aceef508c424cb6d38e755ddd6bde4dd7}{Code\+Smile\+Editor.\+Asset.\+File.\+Create\+As\+New(\+Byte\mbox{[}$\,$\mbox{]},\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a709af33f201b4704e1919a289b93189d_a709af33f201b4704e1919a289b93189d}{Code\+Smile\+Editor.\+Asset.\+File.\+Create\+As\+New(\+String,\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a5ed30d6c3ba66e66db44c0d8490dcdfc_a5ed30d6c3ba66e66db44c0d8490dcdfc}{Code\+Smile\+Editor.\+Asset.\+File.\+Create\+Or\+Load$<$\+T$>$}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.CreateAsset.html}{\texttt{ Asset\+Database.\+Create\+Asset}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a709af33f201b4704e1919a289b93189d_a709af33f201b4704e1919a289b93189d}\label{class_code_smile_editor_1_1_asset_1_1_file_a709af33f201b4704e1919a289b93189d_a709af33f201b4704e1919a289b93189d}
+\index{Asset.File@{Asset.File}!CreateAsNew@{CreateAsNew}}
+\index{CreateAsNew@{CreateAsNew}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{CreateAsNew()}{CreateAsNew()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}}
+{\footnotesize\ttfamily static Object Create\+As\+New (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{contents, }\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Writes the string to disk, then imports and loads the asset. Generates a unique file name if an asset exists at the path.
+
+Creates missing folders in the destination path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em contents} & The string to write.\\
+\hline
+{\em path} & Path to a file with extension. Note that the asset\textquotesingle{}s actual file name may differ.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The newly created asset.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222}{Code\+Smile\+Editor.\+Asset.\+File.\+Create(\+Byte\mbox{[}$\,$\mbox{]},\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_aceef508c424cb6d38e755ddd6bde4dd7_aceef508c424cb6d38e755ddd6bde4dd7}{Code\+Smile\+Editor.\+Asset.\+File.\+Create\+As\+New(\+Byte\mbox{[}$\,$\mbox{]},\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a7fe77714391ee2e69e6b2b45fc97dff6_a7fe77714391ee2e69e6b2b45fc97dff6}{Code\+Smile\+Editor.\+Asset.\+File.\+Create\+As\+New(\+Object,\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a5ed30d6c3ba66e66db44c0d8490dcdfc_a5ed30d6c3ba66e66db44c0d8490dcdfc}\label{class_code_smile_editor_1_1_asset_1_1_file_a5ed30d6c3ba66e66db44c0d8490dcdfc_a5ed30d6c3ba66e66db44c0d8490dcdfc}
+\index{Asset.File@{Asset.File}!CreateOrLoad$<$ T $>$@{CreateOrLoad$<$ T $>$}}
+\index{CreateOrLoad$<$ T $>$@{CreateOrLoad$<$ T $>$}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{CreateOrLoad$<$ T $>$()}{CreateOrLoad< T >()}}
+{\footnotesize\ttfamily static T Create\+Or\+Load$<$ T $>$ (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path, }\item[{\mbox{[}\+Not\+Null\mbox{]} Func$<$ T $>$}]{get\+Instance }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Loads or creates an asset at path.
+
+Will first attempt to load the asset at path. If this fails, will create an asset from the object returned by get\+Instance. This is an alias for Code\+Smile\+Editor.\+Asset.\+Load\+Or\+Create\{T\}.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset file.\\
+\hline
+{\em get\+Instance} & Func that returns a Unity\+Engine.\+Object\\
+\hline
+\end{DoxyParams}
+
+\begin{DoxyTemplParams}{Template Parameters}
+{\em T} & Unity\+Engine.\+Object derived type.\\
+\hline
+\end{DoxyTemplParams}
+\begin{DoxyReturn}{Returns}
+The loaded or created object of type T, or null if the object is not of type T. Note that the asset file gets created in this case.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a8e86208ec0d709c8259baacdb5e70281_a8e86208ec0d709c8259baacdb5e70281}{Code\+Smile\+Editor.\+Asset.\+File.\+Load\+Or\+Create$<$\+T$>$}
+\end{DoxyItemize}\begin{Desc}
+\item[Type Constraints]\begin{description}
+\item[{\em T} : {\em Object}]\end{description}
+\end{Desc}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a0ee72382871919c7584e6962088c34ba_a0ee72382871919c7584e6962088c34ba}\label{class_code_smile_editor_1_1_asset_1_1_file_a0ee72382871919c7584e6962088c34ba_a0ee72382871919c7584e6962088c34ba}
+\index{Asset.File@{Asset.File}!Delete@{Delete}}
+\index{Delete@{Delete}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{Delete()}{Delete()}\hspace{0.1cm}{\footnotesize\ttfamily [1/4]}}
+{\footnotesize\ttfamily static Boolean Delete (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} IEnumerable$<$ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} $>$}]{paths }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tries to delete multiple files/folders.
+
+
+\begin{DoxyParams}{Parameters}
+{\em paths} & The paths to delete.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if all assets where deleted, false if one or more failed to delete. On failure, you can access failed paths via \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a02854122d4449e39feb8c1dfdc8bd537_a02854122d4449e39feb8c1dfdc8bd537}{Code\+Smile\+Editor.\+Asset.\+File.\+Paths\+Not\+Deleted} property.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a5c0a13cf46027517d371dd2d3c49fdee_a5c0a13cf46027517d371dd2d3c49fdee}{Code\+Smile\+Editor.\+Asset.\+File.\+Trash(\+IEnumerable$<$\+String$>$)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a02854122d4449e39feb8c1dfdc8bd537_a02854122d4449e39feb8c1dfdc8bd537}{Code\+Smile\+Editor.\+Asset.\+File.\+Paths\+Not\+Deleted}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.DeleteAssets.html}{\texttt{ Asset\+Database.\+Delete\+Assets}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a397f277ed8b22e8ee60662f7b8b3ef06_a397f277ed8b22e8ee60662f7b8b3ef06}\label{class_code_smile_editor_1_1_asset_1_1_file_a397f277ed8b22e8ee60662f7b8b3ef06_a397f277ed8b22e8ee60662f7b8b3ef06}
+\index{Asset.File@{Asset.File}!Delete@{Delete}}
+\index{Delete@{Delete}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{Delete()}{Delete()}\hspace{0.1cm}{\footnotesize\ttfamily [2/4]}}
+{\footnotesize\ttfamily static Boolean Delete (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} IEnumerable$<$ String $>$}]{paths }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tries to delete multiple files/folders.
+
+
+\begin{DoxyParams}{Parameters}
+{\em paths} & The paths to delete.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if all assets where deleted, false if one or more failed to delete. On failure, you can access failed paths via \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a02854122d4449e39feb8c1dfdc8bd537_a02854122d4449e39feb8c1dfdc8bd537}{Code\+Smile\+Editor.\+Asset.\+File.\+Paths\+Not\+Deleted} property.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a5c0a13cf46027517d371dd2d3c49fdee_a5c0a13cf46027517d371dd2d3c49fdee}{Code\+Smile\+Editor.\+Asset.\+File.\+Trash(\+IEnumerable$<$\+String$>$)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a02854122d4449e39feb8c1dfdc8bd537_a02854122d4449e39feb8c1dfdc8bd537}{Code\+Smile\+Editor.\+Asset.\+File.\+Paths\+Not\+Deleted}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.DeleteAssets.html}{\texttt{ Asset\+Database.\+Delete\+Assets}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_ac644ddb8e561a93366765ea0017771ec_ac644ddb8e561a93366765ea0017771ec}\label{class_code_smile_editor_1_1_asset_1_1_file_ac644ddb8e561a93366765ea0017771ec_ac644ddb8e561a93366765ea0017771ec}
+\index{Asset.File@{Asset.File}!Delete@{Delete}}
+\index{Delete@{Delete}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{Delete()}{Delete()}\hspace{0.1cm}{\footnotesize\ttfamily [3/4]}}
+{\footnotesize\ttfamily static Boolean Delete (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Deletes an asset file or folder.
+
+Does nothing if there is no file or folder at the given path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & The asset to delete.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if the asset was deleted, false otherwise.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a5a01eb8f2adc1117b9df394acbe3c529_a5a01eb8f2adc1117b9df394acbe3c529}{Code\+Smile\+Editor.\+Asset.\+File.\+Delete(\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_aaecd043609a6fb930141fd2cf906b808_aaecd043609a6fb930141fd2cf906b808}{Code\+Smile\+Editor.\+Asset.\+File.\+Trash(\+Object)}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.DeleteAsset.html}{\texttt{ Asset\+Database.\+Delete\+Asset}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a5a01eb8f2adc1117b9df394acbe3c529_a5a01eb8f2adc1117b9df394acbe3c529}\label{class_code_smile_editor_1_1_asset_1_1_file_a5a01eb8f2adc1117b9df394acbe3c529_a5a01eb8f2adc1117b9df394acbe3c529}
+\index{Asset.File@{Asset.File}!Delete@{Delete}}
+\index{Delete@{Delete}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{Delete()}{Delete()}\hspace{0.1cm}{\footnotesize\ttfamily [4/4]}}
+{\footnotesize\ttfamily static Boolean Delete (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Deletes an asset file or folder.
+
+Does nothing if there is no file or folder at the given path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & The path to delete.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if the asset was deleted, false otherwise.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_ac644ddb8e561a93366765ea0017771ec_ac644ddb8e561a93366765ea0017771ec}{Code\+Smile\+Editor.\+Asset.\+File.\+Delete(\+Object)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a7b0aaffab801a8597c60daff4bccb177_a7b0aaffab801a8597c60daff4bccb177}{Code\+Smile\+Editor.\+Asset.\+File.\+Trash(\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.DeleteAsset.html}{\texttt{ Asset\+Database.\+Delete\+Asset}}
+\end{DoxyItemize}
+
+Referenced by \mbox{\hyperlink{_asset_8cs_source_l00442}{Asset.\+Delete()}}.
+
+Here is the caller graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=308pt]{class_code_smile_editor_1_1_asset_1_1_file_a5a01eb8f2adc1117b9df394acbe3c529_a5a01eb8f2adc1117b9df394acbe3c529_icgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a9824149809d0caf6b7853241fe518852_a9824149809d0caf6b7853241fe518852}\label{class_code_smile_editor_1_1_asset_1_1_file_a9824149809d0caf6b7853241fe518852_a9824149809d0caf6b7853241fe518852}
+\index{Asset.File@{Asset.File}!Find@{Find}}
+\index{Find@{Find}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{Find()}{Find()}}
+{\footnotesize\ttfamily static String\mbox{[}$\,$\mbox{]} Find (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{filter, }\item[{String\mbox{[}$\,$\mbox{]}}]{search\+In\+Folders = {\ttfamily null} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Finds asset GUIDs by the given filter criteria.
+
+
+\begin{DoxyParams}{Parameters}
+{\em filter} & A search filter string.\\
+\hline
+{\em search\+In\+Folders} & A list of folders to recursively search for files. Limiting the searched folders speeds up Find. \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+An array of string GUIDs. Empty array if there were no search results.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a6a20df93ae9409f4216c6f98cf334c30_a6a20df93ae9409f4216c6f98cf334c30}{Code\+Smile\+Editor.\+Asset.\+File.\+Find\+Guids}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_aeb2b5afda3ab0df2521ff86e9d7c80b8_aeb2b5afda3ab0df2521ff86e9d7c80b8}{Code\+Smile\+Editor.\+Asset.\+File.\+Find\+Paths}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.FindAssets.html}{\texttt{ Asset\+Database.\+Find\+Assets}}
+\item \href{https://forum.unity.com/threads/please-document-assetdatabase-findassets-filters.964907/}{\texttt{ Search Filter String Examples }}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a6a20df93ae9409f4216c6f98cf334c30_a6a20df93ae9409f4216c6f98cf334c30}\label{class_code_smile_editor_1_1_asset_1_1_file_a6a20df93ae9409f4216c6f98cf334c30_a6a20df93ae9409f4216c6f98cf334c30}
+\index{Asset.File@{Asset.File}!FindGuids@{FindGuids}}
+\index{FindGuids@{FindGuids}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{FindGuids()}{FindGuids()}}
+{\footnotesize\ttfamily static GUID\mbox{[}$\,$\mbox{]} Find\+Guids (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{filter, }\item[{String\mbox{[}$\,$\mbox{]}}]{search\+In\+Folders = {\ttfamily null} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Finds asset GUIDs by the given filter criteria.
+
+Casts the result of \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a9824149809d0caf6b7853241fe518852_a9824149809d0caf6b7853241fe518852}{Code\+Smile\+Editor.\+Asset.\+File.\+Find}.
+
+
+\begin{DoxyParams}{Parameters}
+{\em filter} & A search filter string.\\
+\hline
+{\em search\+In\+Folders} & A list of folders to recursively search for files. Limiting the searched folders speeds up Find. \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+An array of GUIDs. Empty array if there were no search results.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a9824149809d0caf6b7853241fe518852_a9824149809d0caf6b7853241fe518852}{Code\+Smile\+Editor.\+Asset.\+File.\+Find}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_aeb2b5afda3ab0df2521ff86e9d7c80b8_aeb2b5afda3ab0df2521ff86e9d7c80b8}{Code\+Smile\+Editor.\+Asset.\+File.\+Find\+Paths}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.FindAssets.html}{\texttt{ Asset\+Database.\+Find\+Assets}}
+\item \href{https://forum.unity.com/threads/please-document-assetdatabase-findassets-filters.964907/}{\texttt{ Search Filter String Examples }}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_aeb2b5afda3ab0df2521ff86e9d7c80b8_aeb2b5afda3ab0df2521ff86e9d7c80b8}\label{class_code_smile_editor_1_1_asset_1_1_file_aeb2b5afda3ab0df2521ff86e9d7c80b8_aeb2b5afda3ab0df2521ff86e9d7c80b8}
+\index{Asset.File@{Asset.File}!FindPaths@{FindPaths}}
+\index{FindPaths@{FindPaths}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{FindPaths()}{FindPaths()}}
+{\footnotesize\ttfamily static \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\mbox{[}$\,$\mbox{]} Find\+Paths (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{filter, }\item[{String\mbox{[}$\,$\mbox{]}}]{search\+In\+Folders = {\ttfamily null} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Finds asset paths by the given filter criteria.
+
+Converts the list of string guids from \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a9824149809d0caf6b7853241fe518852_a9824149809d0caf6b7853241fe518852}{Code\+Smile\+Editor.\+Asset.\+File.\+Find} to actual Paths.
+
+
+\begin{DoxyParams}{Parameters}
+{\em filter} & A search filter string.\\
+\hline
+{\em search\+In\+Folders} & A list of folders to recursively search for files. Limiting the searched folders speeds up Find. \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+An Path array. Empty array if there were no search results.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a9824149809d0caf6b7853241fe518852_a9824149809d0caf6b7853241fe518852}{Code\+Smile\+Editor.\+Asset.\+File.\+Find}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a6a20df93ae9409f4216c6f98cf334c30_a6a20df93ae9409f4216c6f98cf334c30}{Code\+Smile\+Editor.\+Asset.\+File.\+Find\+Guids}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.FindAssets.html}{\texttt{ Asset\+Database.\+Find\+Assets}}
+\item \href{https://forum.unity.com/threads/please-document-assetdatabase-findassets-filters.964907/}{\texttt{ Search Filter String Examples }}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_af8f67d95622e7afce379eaa04c82eaf6_af8f67d95622e7afce379eaa04c82eaf6}\label{class_code_smile_editor_1_1_asset_1_1_file_af8f67d95622e7afce379eaa04c82eaf6_af8f67d95622e7afce379eaa04c82eaf6}
+\index{Asset.File@{Asset.File}!ForceSave@{ForceSave}}
+\index{ForceSave@{ForceSave}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{ForceSave()}{ForceSave()}}
+{\footnotesize\ttfamily static void Force\+Save (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Forces the object to be saved to disk. Marks the object as dirty and then calls \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a07847a761e01e0d2fdd91c3cf6db50d2_a07847a761e01e0d2fdd91c3cf6db50d2}{Code\+Smile\+Editor.\+Asset.\+File.\+Save}.
+
+This should only be used if the asset doesn\textquotesingle{}t save otherwise, since unnecessarily writing an object to disk is a slow operation. Example where this may be required would be changes to fields of a Scriptable\+Object without using the \href{https://docs.unity3d.com/ScriptReference/SerializedObject.html}{\texttt{ Serialized\+Object}} or \href{https://docs.unity3d.com/ScriptReference/SerializedProperty.html}{\texttt{ Serialized\+Property}} classes.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & The asset to mark as dirty, then save.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a07847a761e01e0d2fdd91c3cf6db50d2_a07847a761e01e0d2fdd91c3cf6db50d2}{Code\+Smile\+Editor.\+Asset.\+File.\+Save}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.SaveAssetIfDirty.html}{\texttt{ Asset\+Database.\+Save\+Asset\+If\+Dirty}}
+\item \href{https://docs.unity3d.com/ScriptReference/EditorUtility.SetDirty.html}{\texttt{ Editor\+Utility.\+Set\+Dirty}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_ae11a13bfe131ec8b20a5a5667e75ec97_ae11a13bfe131ec8b20a5a5667e75ec97}\label{class_code_smile_editor_1_1_asset_1_1_file_ae11a13bfe131ec8b20a5a5667e75ec97_ae11a13bfe131ec8b20a5a5667e75ec97}
+\index{Asset.File@{Asset.File}!Import@{Import}}
+\index{Import@{Import}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{Import()}{Import()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}}
+{\footnotesize\ttfamily static void Import (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path, }\item[{Import\+Asset\+Options}]{options = {\ttfamily ImportAssetOptions\+:\+:Default} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Imports a file at a given path that was created or modified \textquotesingle{}externally\textquotesingle{}. Externally refers to any means other than Asset\+Database methods such as System.\+IO or batch scripts.
+
+You may want to use the Create overloads that automatically create the file, then import and load the new file\+:
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222}{Code\+Smile\+Editor.\+Asset.\+File.\+Create(\+Byte\mbox{[}$\,$\mbox{]},\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a57a28b554ce2ca500c6eeba3a17852b2_a57a28b554ce2ca500c6eeba3a17852b2}{Code\+Smile\+Editor.\+Asset.\+File.\+Create(\+String,\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\end{DoxyItemize}
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset.\\
+\hline
+{\em options} & \href{https://docs.unity3d.com/ScriptReference/ImportAssetOptions.html}{\texttt{ Import\+Asset\+Options}} \\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a4dc6aff1e32f03b26ec0e310fb4233c0_a4dc6aff1e32f03b26ec0e310fb4233c0}{Code\+Smile\+Editor.\+Asset.\+File.\+Import\+And\+Load$<$\+T$>$}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222}{Code\+Smile\+Editor.\+Asset.\+File.\+Create(\+Byte\mbox{[}$\,$\mbox{]},\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a57a28b554ce2ca500c6eeba3a17852b2_a57a28b554ce2ca500c6eeba3a17852b2}{Code\+Smile\+Editor.\+Asset.\+File.\+Create(\+String,\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.ImportAsset.html}{\texttt{ Asset\+Database.\+Import\+Asset}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_file_8cs_source_l00275}{275}} of file \mbox{\hyperlink{_asset_8_file_8cs_source}{Asset.\+File.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00276\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00277\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(path,\ nameof(path));}
+\DoxyCodeLine{00278\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.DoesNotExistInFileSystem(path);}
+\DoxyCodeLine{00279\ }
+\DoxyCodeLine{00280\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.ImportAsset(path,\ options);}
+\DoxyCodeLine{00281\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+Referenced by \mbox{\hyperlink{_asset_8_sub_asset_8cs_source_l00097}{Asset.\+Sub\+Asset.\+Set\+Main()}}.
+
+Here is the caller graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=297pt]{class_code_smile_editor_1_1_asset_1_1_file_ae11a13bfe131ec8b20a5a5667e75ec97_ae11a13bfe131ec8b20a5a5667e75ec97_icgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_ae3c1d18d1f26557851b440b5704d2188_ae3c1d18d1f26557851b440b5704d2188}\label{class_code_smile_editor_1_1_asset_1_1_file_ae3c1d18d1f26557851b440b5704d2188_ae3c1d18d1f26557851b440b5704d2188}
+\index{Asset.File@{Asset.File}!Import@{Import}}
+\index{Import@{Import}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{Import()}{Import()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}}
+{\footnotesize\ttfamily static void Import (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\mbox{[}$\,$\mbox{]}}]{paths, }\item[{Import\+Asset\+Options}]{options = {\ttfamily ImportAssetOptions.Default} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Imports multiple paths that were created or modified \textquotesingle{}externally\textquotesingle{}. Externally refers to any means other than Asset\+Database methods such as System.\+IO or batch scripts.
+
+Internally runs Batch\+Editing to batch the import operations.
+
+
+\begin{DoxyParams}{Parameters}
+{\em paths} & Paths to assets.\\
+\hline
+{\em options} & \href{https://docs.unity3d.com/ScriptReference/ImportAssetOptions.html}{\texttt{ Import\+Asset\+Options}} \\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_ab0082c2158f7de6376b26a75827bd7a2_ab0082c2158f7de6376b26a75827bd7a2}{Code\+Smile\+Editor.\+Asset.\+File.\+Batch\+Editing}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.ImportAsset.html}{\texttt{ Asset\+Database.\+Import\+Asset}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a39290f9fb99198f7df818bc5cafb0e1a_a39290f9fb99198f7df818bc5cafb0e1a}\label{class_code_smile_editor_1_1_asset_1_1_file_a39290f9fb99198f7df818bc5cafb0e1a_a39290f9fb99198f7df818bc5cafb0e1a}
+\index{Asset.File@{Asset.File}!Import@{Import}}
+\index{Import@{Import}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{Import()}{Import()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}}
+{\footnotesize\ttfamily static void Import (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String\mbox{[}$\,$\mbox{]}}]{paths, }\item[{Import\+Asset\+Options}]{options = {\ttfamily ImportAssetOptions.Default} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Imports multiple paths that were created or modified \textquotesingle{}externally\textquotesingle{}. Externally refers to any means other than Asset\+Database methods such as System.\+IO or batch scripts.
+
+Internally runs Batch\+Editing to batch the import operations.
+
+
+\begin{DoxyParams}{Parameters}
+{\em paths} & Paths to assets.\\
+\hline
+{\em options} & \href{https://docs.unity3d.com/ScriptReference/ImportAssetOptions.html}{\texttt{ Import\+Asset\+Options}} \\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_ab0082c2158f7de6376b26a75827bd7a2_ab0082c2158f7de6376b26a75827bd7a2}{Code\+Smile\+Editor.\+Asset.\+File.\+Batch\+Editing}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.ImportAsset.html}{\texttt{ Asset\+Database.\+Import\+Asset}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a4dc6aff1e32f03b26ec0e310fb4233c0_a4dc6aff1e32f03b26ec0e310fb4233c0}\label{class_code_smile_editor_1_1_asset_1_1_file_a4dc6aff1e32f03b26ec0e310fb4233c0_a4dc6aff1e32f03b26ec0e310fb4233c0}
+\index{Asset.File@{Asset.File}!ImportAndLoad$<$ T $>$@{ImportAndLoad$<$ T $>$}}
+\index{ImportAndLoad$<$ T $>$@{ImportAndLoad$<$ T $>$}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{ImportAndLoad$<$ T $>$()}{ImportAndLoad< T >()}}
+{\footnotesize\ttfamily static T Import\+And\+Load$<$ T $>$ (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path, }\item[{Import\+Asset\+Options}]{options = {\ttfamily ImportAssetOptions.Default} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Imports a file at a given path that was created or modified \textquotesingle{}externally\textquotesingle{}, then loads and returns the asset object. See \doxylink{class_code_smile_editor_1_1_asset_1_1_file_ae11a13bfe131ec8b20a5a5667e75ec97_ae11a13bfe131ec8b20a5a5667e75ec97}{Code\+Smile\+Editor.\+Asset.\+File.\+Import} for more info.
+
+You may want to use the Create overloads that automatically create the file, then import and load the new file\+:
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222}{Code\+Smile\+Editor.\+Asset.\+File.\+Create(\+Byte\mbox{[}$\,$\mbox{]},\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a57a28b554ce2ca500c6eeba3a17852b2_a57a28b554ce2ca500c6eeba3a17852b2}{Code\+Smile\+Editor.\+Asset.\+File.\+Create(\+String,\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\end{DoxyItemize}
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset.\\
+\hline
+{\em options} & \href{https://docs.unity3d.com/ScriptReference/ImportAssetOptions.html}{\texttt{ Import\+Asset\+Options}} \\
+\hline
+\end{DoxyParams}
+
+\begin{DoxyTemplParams}{Template Parameters}
+{\em T} & A Unity\+Engine.\+Object derived type.\\
+\hline
+\end{DoxyTemplParams}
+\begin{DoxyReturn}{Returns}
+The asset object, or null if the asset could not be loaded or is not of type T.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a4dc6aff1e32f03b26ec0e310fb4233c0_a4dc6aff1e32f03b26ec0e310fb4233c0}{Code\+Smile\+Editor.\+Asset.\+File.\+Import\+And\+Load$<$\+T$>$}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a4f89e334c74903942522d0e0066d28b7_a4f89e334c74903942522d0e0066d28b7}{Code\+Smile\+Editor.\+Asset.\+File.\+Load$<$\+T$>$(\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222}{Code\+Smile\+Editor.\+Asset.\+File.\+Create(\+Byte\mbox{[}$\,$\mbox{]},\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a57a28b554ce2ca500c6eeba3a17852b2_a57a28b554ce2ca500c6eeba3a17852b2}{Code\+Smile\+Editor.\+Asset.\+File.\+Create(\+String,\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.ImportAsset.html}{\texttt{ Asset\+Database.\+Import\+Asset}}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.LoadAssetAtPath.html}{\texttt{ Asset\+Database.\+Load\+Asset\+At\+Path}}
+\end{DoxyItemize}\begin{Desc}
+\item[Type Constraints]\begin{description}
+\item[{\em T} : {\em Object}]\end{description}
+\end{Desc}
+
+
+Referenced by \mbox{\hyperlink{_asset_8_file_8cs_source_l00393}{Asset.\+File.\+Load\+Or\+Create$<$ T $>$()}}.
+
+Here is the caller graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=320pt]{class_code_smile_editor_1_1_asset_1_1_file_a4dc6aff1e32f03b26ec0e310fb4233c0_a4dc6aff1e32f03b26ec0e310fb4233c0_icgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a4f89e334c74903942522d0e0066d28b7_a4f89e334c74903942522d0e0066d28b7}\label{class_code_smile_editor_1_1_asset_1_1_file_a4f89e334c74903942522d0e0066d28b7_a4f89e334c74903942522d0e0066d28b7}
+\index{Asset.File@{Asset.File}!Load$<$ T $>$@{Load$<$ T $>$}}
+\index{Load$<$ T $>$@{Load$<$ T $>$}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{Load$<$ T $>$()}{Load< T >()}}
+{\footnotesize\ttfamily static T Load$<$ T $>$ (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Loads an asset at path.
+
+
+\begin{DoxyItemize}
+\item Will import the asset if it is not yet in the Asset\+Database.
+\item Will only load visible sub-\/objects. Returns the first object of the type found.
+\item Use \doxylink{class_code_smile_editor_1_1_asset_1_1_sub_asset_aa1295ba7d9693917c8af65241aa0d3ae_aa1295ba7d9693917c8af65241aa0d3ae}{Code\+Smile\+Editor.\+Asset.\+Sub\+Asset.\+Load\+Visible} if you need a specific sub-\/asset.
+\end{DoxyItemize}
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset file.\\
+\hline
+\end{DoxyParams}
+
+\begin{DoxyTemplParams}{Template Parameters}
+{\em T} & Unity\+Engine.\+Object derived type.\\
+\hline
+\end{DoxyTemplParams}
+\begin{DoxyReturn}{Returns}
+The loaded asset object, or null if the asset does not exist or does not contain a visible object of type T.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a8cc280e1c5ddde8511c2af5541365b3f_a8cc280e1c5ddde8511c2af5541365b3f}{Code\+Smile\+Editor.\+Asset.\+File.\+Load\+Main$<$\+T$>$}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a8e86208ec0d709c8259baacdb5e70281_a8e86208ec0d709c8259baacdb5e70281}{Code\+Smile\+Editor.\+Asset.\+File.\+Load\+Or\+Create$<$\+T$>$}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_sub_asset_aa1295ba7d9693917c8af65241aa0d3ae_aa1295ba7d9693917c8af65241aa0d3ae}{Code\+Smile\+Editor.\+Asset.\+Sub\+Asset.\+Load\+Visible}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_sub_asset_a5a074e1dfad018aec7956375a8cf6099_a5a074e1dfad018aec7956375a8cf6099}{Code\+Smile\+Editor.\+Asset.\+Sub\+Asset.\+Load\+All}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.LoadAssetAtPath.html}{\texttt{ Asset\+Database.\+Load\+Asset\+At\+Path}}
+\end{DoxyItemize}\begin{Desc}
+\item[Type Constraints]\begin{description}
+\item[{\em T} : {\em Object}]\end{description}
+\end{Desc}
+
+
+Definition at line \mbox{\hyperlink{_asset_8_file_8cs_source_l00371}{371}} of file \mbox{\hyperlink{_asset_8_file_8cs_source}{Asset.\+File.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00371\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ :\ Object}
+\DoxyCodeLine{00372\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00373\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(path,\ nameof(path));}
+\DoxyCodeLine{00374\ }
+\DoxyCodeLine{00375\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ImportIfNotImported(path);}
+\DoxyCodeLine{00376\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.LoadAssetAtPath(path);}
+\DoxyCodeLine{00377\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a1de889c18256fc25aa6f53507d448050_a1de889c18256fc25aa6f53507d448050}\label{class_code_smile_editor_1_1_asset_1_1_file_a1de889c18256fc25aa6f53507d448050_a1de889c18256fc25aa6f53507d448050}
+\index{Asset.File@{Asset.File}!LoadAsync@{LoadAsync}}
+\index{LoadAsync@{LoadAsync}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{LoadAsync()}{LoadAsync()}}
+{\footnotesize\ttfamily static Asset\+Database\+Load\+Operation Load\+Async (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path, }\item[{Int64}]{local\+File\+Id }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Loads an object and its dependencies asynchronously.
+
+Available in Unity 2022.\+2 or newer. In previous versions throws a Not\+Supported\+Exception.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & The path to an asset file.\\
+\hline
+{\em local\+File\+Id} & The local file ID of the (sub) asset. I\textquotesingle{}m sorry but this is what Unity requires.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+An \href{https://docs.unity3d.com/ScriptReference/AssetDatabaseLoadOperation.html}{\texttt{ Asset\+Database\+Load\+Operation}} to track progress.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.LoadObjectAsync.html}{\texttt{ Asset\+Database.\+Load\+Object\+Async}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_file_8cs_source_l00465}{465}} of file \mbox{\hyperlink{_asset_8_file_8cs_source}{Asset.\+File.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00466\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00467\ \textcolor{preprocessor}{\#if\ UNITY\_2022\_2\_OR\_NEWER }}
+\DoxyCodeLine{00468\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.LoadObjectAsync(path,\ localFileId);}
+\DoxyCodeLine{00469\ \textcolor{preprocessor}{\#else }}
+\DoxyCodeLine{00470\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ \textcolor{keyword}{new}\ NotSupportedException(\textcolor{stringliteral}{"{}AssetDatabase.LoadObjectAsync\ not\ available\ in\ this\ editor\ version"{}});}
+\DoxyCodeLine{00471\ \textcolor{preprocessor}{\#endif }}
+\DoxyCodeLine{00472\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a8cc280e1c5ddde8511c2af5541365b3f_a8cc280e1c5ddde8511c2af5541365b3f}\label{class_code_smile_editor_1_1_asset_1_1_file_a8cc280e1c5ddde8511c2af5541365b3f_a8cc280e1c5ddde8511c2af5541365b3f}
+\index{Asset.File@{Asset.File}!LoadMain$<$ T $>$@{LoadMain$<$ T $>$}}
+\index{LoadMain$<$ T $>$@{LoadMain$<$ T $>$}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{LoadMain$<$ T $>$()}{LoadMain< T >()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
+{\footnotesize\ttfamily static T Load\+Main$<$ T $>$ (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Loads the main (root) asset at the path.
+
+
+\begin{DoxyItemize}
+\item Will import the asset if it is not yet in the Asset\+Database.
+\end{DoxyItemize}
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset file.\\
+\hline
+\end{DoxyParams}
+
+\begin{DoxyTemplParams}{Template Parameters}
+{\em T} & Unity\+Engine.\+Object derived type.\\
+\hline
+\end{DoxyTemplParams}
+\begin{DoxyReturn}{Returns}
+The asset or null if the path does not exist.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a4f89e334c74903942522d0e0066d28b7_a4f89e334c74903942522d0e0066d28b7}{Code\+Smile\+Editor.\+Asset.\+File.\+Load$<$\+T$>$(\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a8e86208ec0d709c8259baacdb5e70281_a8e86208ec0d709c8259baacdb5e70281}{Code\+Smile\+Editor.\+Asset.\+File.\+Load\+Or\+Create$<$\+T$>$}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.LoadMainAssetAtPath.html}{\texttt{ Asset\+Database.\+Load\+Main\+Asset\+At\+Path}}
+\end{DoxyItemize}\begin{Desc}
+\item[Type Constraints]\begin{description}
+\item[{\em T} : {\em Object}]\end{description}
+\end{Desc}
+
+
+Definition at line \mbox{\hyperlink{_asset_8_file_8cs_source_l00416}{416}} of file \mbox{\hyperlink{_asset_8_file_8cs_source}{Asset.\+File.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00416\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ :\ Object}
+\DoxyCodeLine{00417\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00418\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(path,\ nameof(path));}
+\DoxyCodeLine{00419\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.DoesNotExistInFileSystem(path);}
+\DoxyCodeLine{00420\ }
+\DoxyCodeLine{00421\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ImportIfNotImported(path);}
+\DoxyCodeLine{00422\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.LoadMainAssetAtPath(path)\ as\ T;}
+\DoxyCodeLine{00423\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a9702d12ef27f2d0dfd1f8201fbb37088_a9702d12ef27f2d0dfd1f8201fbb37088}\label{class_code_smile_editor_1_1_asset_1_1_file_a9702d12ef27f2d0dfd1f8201fbb37088_a9702d12ef27f2d0dfd1f8201fbb37088}
+\index{Asset.File@{Asset.File}!LoadMain$<$ T $>$@{LoadMain$<$ T $>$}}
+\index{LoadMain$<$ T $>$@{LoadMain$<$ T $>$}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{LoadMain$<$ T $>$()}{LoadMain< T >()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
+{\footnotesize\ttfamily static T Load\+Main$<$ T $>$ (\begin{DoxyParamCaption}\item[{GUID}]{guid }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Loads the main (root) asset object for the GUID.
+
+
+\begin{DoxyItemize}
+\item Will import the asset if it is not yet in the Asset\+Database.
+\end{DoxyItemize}
+
+
+\begin{DoxyParams}{Parameters}
+{\em guid} & GUID of an asset.\\
+\hline
+\end{DoxyParams}
+
+\begin{DoxyTemplParams}{Template Parameters}
+{\em T} & Unity\+Engine.\+Object derived type.\\
+\hline
+\end{DoxyTemplParams}
+\begin{DoxyReturn}{Returns}
+The asset object or null if the guid is not an asset guid.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a8cc280e1c5ddde8511c2af5541365b3f_a8cc280e1c5ddde8511c2af5541365b3f}{Code\+Smile\+Editor.\+Asset.\+File.\+Load\+Main$<$\+T$>$(\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a8e86208ec0d709c8259baacdb5e70281_a8e86208ec0d709c8259baacdb5e70281}{Code\+Smile\+Editor.\+Asset.\+File.\+Load\+Or\+Create$<$\+T$>$}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.LoadMainAssetAtPath.html}{\texttt{ Asset\+Database.\+Load\+Main\+Asset\+At\+Path}}
+\end{DoxyItemize}\begin{Desc}
+\item[Type Constraints]\begin{description}
+\item[{\em T} : {\em Object}]\end{description}
+\end{Desc}
+
+
+Definition at line \mbox{\hyperlink{_asset_8_file_8cs_source_l00440}{440}} of file \mbox{\hyperlink{_asset_8_file_8cs_source}{Asset.\+File.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00440\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ :\ Object}
+\DoxyCodeLine{00441\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00442\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.NotAnAssetGuid(guid);}
+\DoxyCodeLine{00443\ }
+\DoxyCodeLine{00444\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ path\ =\ Path.Get(guid);}
+\DoxyCodeLine{00445\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ImportIfNotImported(path);}
+\DoxyCodeLine{00446\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ LoadMain(path);}
+\DoxyCodeLine{00447\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+References \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00080}{Asset.\+Path.\+Get()}}.
+
+Here is the call graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=350pt]{class_code_smile_editor_1_1_asset_1_1_file_a9702d12ef27f2d0dfd1f8201fbb37088_a9702d12ef27f2d0dfd1f8201fbb37088_cgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a8e86208ec0d709c8259baacdb5e70281_a8e86208ec0d709c8259baacdb5e70281}\label{class_code_smile_editor_1_1_asset_1_1_file_a8e86208ec0d709c8259baacdb5e70281_a8e86208ec0d709c8259baacdb5e70281}
+\index{Asset.File@{Asset.File}!LoadOrCreate$<$ T $>$@{LoadOrCreate$<$ T $>$}}
+\index{LoadOrCreate$<$ T $>$@{LoadOrCreate$<$ T $>$}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{LoadOrCreate$<$ T $>$()}{LoadOrCreate< T >()}}
+{\footnotesize\ttfamily static T Load\+Or\+Create$<$ T $>$ (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path, }\item[{\mbox{[}\+Not\+Null\mbox{]} Func$<$ T $>$}]{get\+Instance }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Loads an asset at path or creates the asset if needed.
+
+
+\begin{DoxyItemize}
+\item If the file does not exist, creates the asset using the object returned from {\bfseries{get\+Instance}} parameter.
+\item If the asset isn\textquotesingle{}t in the database, imports and loads the asset.
+\end{DoxyItemize}
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset file.\\
+\hline
+{\em get\+Instance} & Method that returns an object instance. Invoked only if the asset needs to be created.\\
+\hline
+\end{DoxyParams}
+
+\begin{DoxyTemplParams}{Template Parameters}
+{\em T} & Unity\+Engine.\+Object derived type.\\
+\hline
+\end{DoxyTemplParams}
+\begin{DoxyReturn}{Returns}
+The loaded or created asset.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a4f89e334c74903942522d0e0066d28b7_a4f89e334c74903942522d0e0066d28b7}{Code\+Smile\+Editor.\+Asset.\+File.\+Load$<$\+T$>$(\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\end{DoxyItemize}\begin{Desc}
+\item[Type Constraints]\begin{description}
+\item[{\em T} : {\em Object}]\end{description}
+\end{Desc}
+
+
+Definition at line \mbox{\hyperlink{_asset_8_file_8cs_source_l00393}{393}} of file \mbox{\hyperlink{_asset_8_file_8cs_source}{Asset.\+File.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00393\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ :\ Object}
+\DoxyCodeLine{00394\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00395\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (path.ExistsInFileSystem\ ==\ \textcolor{keyword}{false})}
+\DoxyCodeLine{00396\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222}{Create}}(getInstance.Invoke(),\ path)\ as\ T;}
+\DoxyCodeLine{00397\ }
+\DoxyCodeLine{00398\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a4dc6aff1e32f03b26ec0e310fb4233c0_a4dc6aff1e32f03b26ec0e310fb4233c0}{ImportAndLoad}}(path);}
+\DoxyCodeLine{00399\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+References \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222}{Asset.\+File.\+Create()}}, and \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_file_a4dc6aff1e32f03b26ec0e310fb4233c0_a4dc6aff1e32f03b26ec0e310fb4233c0}{Asset.\+File.\+Import\+And\+Load$<$ T $>$()}}.
+
+Here is the call graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=320pt]{class_code_smile_editor_1_1_asset_1_1_file_a8e86208ec0d709c8259baacdb5e70281_a8e86208ec0d709c8259baacdb5e70281_cgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9dbc6b65d0efec125ca6ec75_a996c0cfd9dbc6b65d0efec125ca6ec75}\label{class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9dbc6b65d0efec125ca6ec75_a996c0cfd9dbc6b65d0efec125ca6ec75}
+\index{Asset.File@{Asset.File}!Move@{Move}}
+\index{Move@{Move}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{Move()}{Move()}}
+{\footnotesize\ttfamily static Boolean Move (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{source\+Path, }\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{destination\+Path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Moves an asset file to destination path.
+
+Any missing folders in destination\+Path will be created automatically.
+
+
+\begin{DoxyParams}{Parameters}
+{\em source\+Path} & The path to an asset file.\\
+\hline
+{\em destination\+Path} & The path to move the file to. May have a different extension.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if moving the asset will be successful, false if move failed. Use \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message} to get the failure message.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a2bdf010d46d8dd5ea6420e4bdc75c9aa_a2bdf010d46d8dd5ea6420e4bdc75c9aa}{Code\+Smile\+Editor.\+Asset.\+File.\+Can\+Move}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396a4bfed873f01e8622033ab_a34bfcab396a4bfed873f01e8622033ab}{Code\+Smile\+Editor.\+Asset.\+File.\+Rename}
+\item \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.MoveAsset.html}{\texttt{ Asset\+Database.\+Move\+Asset}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_file_8cs_source_l00633}{633}} of file \mbox{\hyperlink{_asset_8_file_8cs_source}{Asset.\+File.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00634\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00635\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (sourcePath\ ==\ \textcolor{keyword}{null}\ ||\ destinationPath\ ==\ \textcolor{keyword}{null})}
+\DoxyCodeLine{00636\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
+\DoxyCodeLine{00637\ }
+\DoxyCodeLine{00638\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ destinationPath.CreateFolders();}
+\DoxyCodeLine{00639\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ Succeeded(AssetDatabase.MoveAsset(sourcePath,\ destinationPath));}
+\DoxyCodeLine{00640\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+Referenced by \mbox{\hyperlink{_asset_8cs_source_l00350}{Asset.\+Move()}}.
+
+Here is the caller graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=297pt]{class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9dbc6b65d0efec125ca6ec75_a996c0cfd9dbc6b65d0efec125ca6ec75_icgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_aac35e74243833f4963e3cf8ab1a4f845_aac35e74243833f4963e3cf8ab1a4f845}\label{class_code_smile_editor_1_1_asset_1_1_file_aac35e74243833f4963e3cf8ab1a4f845_aac35e74243833f4963e3cf8ab1a4f845}
+\index{Asset.File@{Asset.File}!OpenExternal@{OpenExternal}}
+\index{OpenExternal@{OpenExternal}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{OpenExternal()}{OpenExternal()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}}
+{\footnotesize\ttfamily static void Open\+External (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset, }\item[{Int32}]{line\+Number = {\ttfamily -\/1}, }\item[{Int32}]{column\+Number = {\ttfamily -\/1} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Opens the asset in the application associated with the file\textquotesingle{}s extension.
+
+Optional line and column numbers can be specified for text files and applications that support this.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & The asset to open externally.\\
+\hline
+{\em line\+Number} & Optional line number to highlight. Depends on application support.\\
+\hline
+{\em column\+Number} & Optional column/character number to highlight. Depends on application support.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a3d74dc290eb0f6815b0f1eac29c6c2e6_a3d74dc290eb0f6815b0f1eac29c6c2e6}{Code\+Smile\+Editor.\+Asset.\+File.\+Can\+Open\+In\+Editor(\+Object)}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.OpenAsset.html}{\texttt{ Asset\+Database.\+Open\+Asset}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a0f433ac6de466ab7e094565c97af8db9_a0f433ac6de466ab7e094565c97af8db9}\label{class_code_smile_editor_1_1_asset_1_1_file_a0f433ac6de466ab7e094565c97af8db9_a0f433ac6de466ab7e094565c97af8db9}
+\index{Asset.File@{Asset.File}!OpenExternal@{OpenExternal}}
+\index{OpenExternal@{OpenExternal}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{OpenExternal()}{OpenExternal()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}}
+{\footnotesize\ttfamily static void Open\+External (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path, }\item[{Int32}]{line\+Number = {\ttfamily -\/1}, }\item[{Int32}]{column\+Number = {\ttfamily -\/1} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Opens the asset in the application associated with the file\textquotesingle{}s extension.
+
+Optional line and column numbers can be specified for text files and applications that support this.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & The path to open externally.\\
+\hline
+{\em line\+Number} & Optional line number to highlight. Depends on application support.\\
+\hline
+{\em column\+Number} & Optional column/character number to highlight. Depends on application support.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a3d74dc290eb0f6815b0f1eac29c6c2e6_a3d74dc290eb0f6815b0f1eac29c6c2e6}{Code\+Smile\+Editor.\+Asset.\+File.\+Can\+Open\+In\+Editor(\+Object)}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.OpenAsset.html}{\texttt{ Asset\+Database.\+Open\+Asset}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a009c655c2959b1ccd6b5a94a6da261e4_a009c655c2959b1ccd6b5a94a6da261e4}\label{class_code_smile_editor_1_1_asset_1_1_file_a009c655c2959b1ccd6b5a94a6da261e4_a009c655c2959b1ccd6b5a94a6da261e4}
+\index{Asset.File@{Asset.File}!OpenExternal@{OpenExternal}}
+\index{OpenExternal@{OpenExternal}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{OpenExternal()}{OpenExternal()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}}
+{\footnotesize\ttfamily static void Open\+External (\begin{DoxyParamCaption}\item[{Int32}]{instance\+Id, }\item[{Int32}]{line\+Number = {\ttfamily -\/1}, }\item[{Int32}]{column\+Number = {\ttfamily -\/1} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Opens the asset in the application associated with the file\textquotesingle{}s extension.
+
+Optional line and column numbers can be specified for text files and applications that support this.
+
+
+\begin{DoxyParams}{Parameters}
+{\em instance\+Id} & An instance ID of the asset to open externally.\\
+\hline
+{\em line\+Number} & Optional line number to highlight. Depends on application support.\\
+\hline
+{\em column\+Number} & Optional column/character number to highlight. Depends on application support.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_aabdb1dcc073e89416e72eccf3839ad1d_aabdb1dcc073e89416e72eccf3839ad1d}{Code\+Smile\+Editor.\+Asset.\+File.\+Can\+Open\+In\+Editor(\+Int32)}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.OpenAsset.html}{\texttt{ Asset\+Database.\+Open\+Asset}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396a4bfed873f01e8622033ab_a34bfcab396a4bfed873f01e8622033ab}\label{class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396a4bfed873f01e8622033ab_a34bfcab396a4bfed873f01e8622033ab}
+\index{Asset.File@{Asset.File}!Rename@{Rename}}
+\index{Rename@{Rename}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{Rename()}{Rename()}}
+{\footnotesize\ttfamily static Boolean Rename (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path, }\item[{String}]{new\+File\+Name }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Renames an asset\textquotesingle{}s file or folder name.
+
+Cannot be used to change a file\textquotesingle{}s extension. Use \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9dbc6b65d0efec125ca6ec75_a996c0cfd9dbc6b65d0efec125ca6ec75}{Code\+Smile\+Editor.\+Asset.\+File.\+Move} to change the extension.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset file.\\
+\hline
+{\em new\+File\+Name} & The new file name without extension.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if the rename succeeded, false otherwise. On failure use \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message} to get the failure reason.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9dbc6b65d0efec125ca6ec75_a996c0cfd9dbc6b65d0efec125ca6ec75}{Code\+Smile\+Editor.\+Asset.\+File.\+Move}
+\item \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.RenameAsset.html}{\texttt{ Asset\+Database.\+Rename\+Asset}}
+\end{DoxyItemize}
+
+Referenced by \mbox{\hyperlink{_asset_8cs_source_l00391}{Asset.\+Rename()}}.
+
+Here is the caller graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=324pt]{class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396a4bfed873f01e8622033ab_a34bfcab396a4bfed873f01e8622033ab_icgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a07847a761e01e0d2fdd91c3cf6db50d2_a07847a761e01e0d2fdd91c3cf6db50d2}\label{class_code_smile_editor_1_1_asset_1_1_file_a07847a761e01e0d2fdd91c3cf6db50d2_a07847a761e01e0d2fdd91c3cf6db50d2}
+\index{Asset.File@{Asset.File}!Save@{Save}}
+\index{Save@{Save}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{Save()}{Save()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
+{\footnotesize\ttfamily static void Save (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Saves the object to disk if it is dirty.
+
+Depending on how changes were made you may have to use \doxylink{class_code_smile_editor_1_1_asset_1_1_file_af8f67d95622e7afce379eaa04c82eaf6_af8f67d95622e7afce379eaa04c82eaf6}{Code\+Smile\+Editor.\+Asset.\+File.\+Force\+Save} instead.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & The asset to save.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_af8f67d95622e7afce379eaa04c82eaf6_af8f67d95622e7afce379eaa04c82eaf6}{Code\+Smile\+Editor.\+Asset.\+File.\+Force\+Save}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.SaveAssetIfDirty.html}{\texttt{ Asset\+Database.\+Save\+Asset\+If\+Dirty}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a0d399890489ab279eb57b94b19f2d19c_a0d399890489ab279eb57b94b19f2d19c}\label{class_code_smile_editor_1_1_asset_1_1_file_a0d399890489ab279eb57b94b19f2d19c_a0d399890489ab279eb57b94b19f2d19c}
+\index{Asset.File@{Asset.File}!Save@{Save}}
+\index{Save@{Save}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{Save()}{Save()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
+{\footnotesize\ttfamily static void Save (\begin{DoxyParamCaption}\item[{GUID}]{guid }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Saves any changes to the asset to disk, by GUID.
+
+
+\begin{DoxyParams}{Parameters}
+{\em guid} & The guid of the asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item File.\+Save
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.SaveAssetIfDirty.html}{\texttt{ Asset\+Database.\+Save\+Asset\+If\+Dirty}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_file_8cs_source_l00249}{249}} of file \mbox{\hyperlink{_asset_8_file_8cs_source}{Asset.\+File.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00250\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00251\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.NotAnAssetGuid(guid);}
+\DoxyCodeLine{00252\ }
+\DoxyCodeLine{00253\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.SaveAssetIfDirty(guid);}
+\DoxyCodeLine{00254\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a648bb9fbc03561bb60612a090b8317d2_a648bb9fbc03561bb60612a090b8317d2}\label{class_code_smile_editor_1_1_asset_1_1_file_a648bb9fbc03561bb60612a090b8317d2_a648bb9fbc03561bb60612a090b8317d2}
+\index{Asset.File@{Asset.File}!Trash@{Trash}}
+\index{Trash@{Trash}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{Trash()}{Trash()}\hspace{0.1cm}{\footnotesize\ttfamily [1/4]}}
+{\footnotesize\ttfamily static Boolean Trash (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} IEnumerable$<$ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} $>$}]{paths }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tries to move multiple files/folders to the OS trash.
+
+
+\begin{DoxyParams}{Parameters}
+{\em paths} & The asset paths to trash.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if all assets where trashed, false if one or more failed to trash whose paths you can access via the \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a02854122d4449e39feb8c1dfdc8bd537_a02854122d4449e39feb8c1dfdc8bd537}{Code\+Smile\+Editor.\+Asset.\+File.\+Paths\+Not\+Deleted} property.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a397f277ed8b22e8ee60662f7b8b3ef06_a397f277ed8b22e8ee60662f7b8b3ef06}{Code\+Smile\+Editor.\+Asset.\+File.\+Delete(\+IEnumerable$<$\+String$>$)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a02854122d4449e39feb8c1dfdc8bd537_a02854122d4449e39feb8c1dfdc8bd537}{Code\+Smile\+Editor.\+Asset.\+File.\+Paths\+Not\+Deleted}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.MoveAssetsToTrash.html}{\texttt{ Asset\+Database.\+Move\+Assets\+To\+Trash}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a5c0a13cf46027517d371dd2d3c49fdee_a5c0a13cf46027517d371dd2d3c49fdee}\label{class_code_smile_editor_1_1_asset_1_1_file_a5c0a13cf46027517d371dd2d3c49fdee_a5c0a13cf46027517d371dd2d3c49fdee}
+\index{Asset.File@{Asset.File}!Trash@{Trash}}
+\index{Trash@{Trash}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{Trash()}{Trash()}\hspace{0.1cm}{\footnotesize\ttfamily [2/4]}}
+{\footnotesize\ttfamily static Boolean Trash (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} IEnumerable$<$ String $>$}]{paths }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tries to move multiple files/folders to the OS trash.
+
+
+\begin{DoxyParams}{Parameters}
+{\em paths} & The asset paths to trash.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if all assets where trashed, false if one or more failed to trash whose paths you can access via the \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a02854122d4449e39feb8c1dfdc8bd537_a02854122d4449e39feb8c1dfdc8bd537}{Code\+Smile\+Editor.\+Asset.\+File.\+Paths\+Not\+Deleted} property.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a397f277ed8b22e8ee60662f7b8b3ef06_a397f277ed8b22e8ee60662f7b8b3ef06}{Code\+Smile\+Editor.\+Asset.\+File.\+Delete(\+IEnumerable$<$\+String$>$)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a02854122d4449e39feb8c1dfdc8bd537_a02854122d4449e39feb8c1dfdc8bd537}{Code\+Smile\+Editor.\+Asset.\+File.\+Paths\+Not\+Deleted}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.MoveAssetsToTrash.html}{\texttt{ Asset\+Database.\+Move\+Assets\+To\+Trash}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_aaecd043609a6fb930141fd2cf906b808_aaecd043609a6fb930141fd2cf906b808}\label{class_code_smile_editor_1_1_asset_1_1_file_aaecd043609a6fb930141fd2cf906b808_aaecd043609a6fb930141fd2cf906b808}
+\index{Asset.File@{Asset.File}!Trash@{Trash}}
+\index{Trash@{Trash}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{Trash()}{Trash()}\hspace{0.1cm}{\footnotesize\ttfamily [3/4]}}
+{\footnotesize\ttfamily static Boolean Trash (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Moves an asset file or folder to the OS trash.
+
+Similar to delete, but recoverable by user action. Does nothing if there is no file or folder at the given path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & The asset to trash.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if the asset was trashed, false otherwise.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a5a01eb8f2adc1117b9df394acbe3c529_a5a01eb8f2adc1117b9df394acbe3c529}{Code\+Smile\+Editor.\+Asset.\+File.\+Delete(\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_aaecd043609a6fb930141fd2cf906b808_aaecd043609a6fb930141fd2cf906b808}{Code\+Smile\+Editor.\+Asset.\+File.\+Trash(\+Object)}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.MoveAssetToTrash.html}{\texttt{ Asset\+Database.\+Move\+Asset\+To\+Trash}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a7b0aaffab801a8597c60daff4bccb177_a7b0aaffab801a8597c60daff4bccb177}\label{class_code_smile_editor_1_1_asset_1_1_file_a7b0aaffab801a8597c60daff4bccb177_a7b0aaffab801a8597c60daff4bccb177}
+\index{Asset.File@{Asset.File}!Trash@{Trash}}
+\index{Trash@{Trash}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{Trash()}{Trash()}\hspace{0.1cm}{\footnotesize\ttfamily [4/4]}}
+{\footnotesize\ttfamily static Boolean Trash (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Moves an asset file or folder to the OS trash.
+
+Similar to delete, but recoverable by user action. Does nothing if there is no file or folder at the given path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & The asset path to trash.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if the asset was trashed, false otherwise.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a5a01eb8f2adc1117b9df394acbe3c529_a5a01eb8f2adc1117b9df394acbe3c529}{Code\+Smile\+Editor.\+Asset.\+File.\+Delete(\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_aaecd043609a6fb930141fd2cf906b808_aaecd043609a6fb930141fd2cf906b808}{Code\+Smile\+Editor.\+Asset.\+File.\+Trash(\+Object)}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.MoveAssetToTrash.html}{\texttt{ Asset\+Database.\+Move\+Asset\+To\+Trash}}
+\end{DoxyItemize}
+
+Referenced by \mbox{\hyperlink{_asset_8cs_source_l00465}{Asset.\+Trash()}}.
+
+Here is the caller graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=300pt]{class_code_smile_editor_1_1_asset_1_1_file_a7b0aaffab801a8597c60daff4bccb177_a7b0aaffab801a8597c60daff4bccb177_icgraph}
+\end{center}
+\end{figure}
+
+
+\doxysubsubsection{Property Documentation}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_file_a02854122d4449e39feb8c1dfdc8bd537_a02854122d4449e39feb8c1dfdc8bd537}\label{class_code_smile_editor_1_1_asset_1_1_file_a02854122d4449e39feb8c1dfdc8bd537_a02854122d4449e39feb8c1dfdc8bd537}
+\index{Asset.File@{Asset.File}!PathsNotDeleted@{PathsNotDeleted}}
+\index{PathsNotDeleted@{PathsNotDeleted}!Asset.File@{Asset.File}}
+\doxyparagraph{\texorpdfstring{PathsNotDeleted}{PathsNotDeleted}}
+{\footnotesize\ttfamily IList$<$String$>$ Paths\+Not\+Deleted\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [get]}}
+
+
+
+The paths that failed to be deleted or trashed. Is an empty list if no failure occured on the last call to Delete\+Many or Trash\+Many.
+
+\begin{DoxyReturn}{Returns}
+The list of paths that could not be deleted, or an empty array.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a397f277ed8b22e8ee60662f7b8b3ef06_a397f277ed8b22e8ee60662f7b8b3ef06}{Code\+Smile\+Editor.\+Asset.\+File.\+Delete(\+IEnumerable$<$\+String$>$)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_file_a5c0a13cf46027517d371dd2d3c49fdee_a5c0a13cf46027517d371dd2d3c49fdee}{Code\+Smile\+Editor.\+Asset.\+File.\+Trash(\+IEnumerable$<$\+String$>$)}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_file_8cs_source_l00046}{46}} of file \mbox{\hyperlink{_asset_8_file_8cs_source}{Asset.\+File.\+cs}}.
+
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file__coll__graph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file__coll__graph.md5
new file mode 100644
index 00000000..db76c817
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file__coll__graph.md5
@@ -0,0 +1 @@
+cd85880bc522b06f4b28d5bfb361943e
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file__coll__graph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file__coll__graph.pdf
new file mode 100644
index 00000000..f7954b06
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file__coll__graph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396a4bfed873f01e8622033ab_a34bfcab396a4bfed873f01e8622033ab_icgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396a4bfed873f01e8622033ab_a34bfcab396a4bfed873f01e8622033ab_icgraph.md5
new file mode 100644
index 00000000..efe9b140
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396a4bfed873f01e8622033ab_a34bfcab396a4bfed873f01e8622033ab_icgraph.md5
@@ -0,0 +1 @@
+938d770ddf884938dfc0a7c55e1f9855
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396a4bfed873f01e8622033ab_a34bfcab396a4bfed873f01e8622033ab_icgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396a4bfed873f01e8622033ab_a34bfcab396a4bfed873f01e8622033ab_icgraph.pdf
new file mode 100644
index 00000000..ea3cee04
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396a4bfed873f01e8622033ab_a34bfcab396a4bfed873f01e8622033ab_icgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a4dc6aff1e32f03b26ec0e310fb4233c0_a4dc6aff1e32f03b26ec0e310fb4233c0_icgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a4dc6aff1e32f03b26ec0e310fb4233c0_a4dc6aff1e32f03b26ec0e310fb4233c0_icgraph.md5
new file mode 100644
index 00000000..c87e7cdd
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a4dc6aff1e32f03b26ec0e310fb4233c0_a4dc6aff1e32f03b26ec0e310fb4233c0_icgraph.md5
@@ -0,0 +1 @@
+966b4b34ac8cfaea9c509ad3f53d7aa2
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a4dc6aff1e32f03b26ec0e310fb4233c0_a4dc6aff1e32f03b26ec0e310fb4233c0_icgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a4dc6aff1e32f03b26ec0e310fb4233c0_a4dc6aff1e32f03b26ec0e310fb4233c0_icgraph.pdf
new file mode 100644
index 00000000..c2251cc8
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a4dc6aff1e32f03b26ec0e310fb4233c0_a4dc6aff1e32f03b26ec0e310fb4233c0_icgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a5a01eb8f2adc1117b9df394acbe3c529_a5a01eb8f2adc1117b9df394acbe3c529_icgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a5a01eb8f2adc1117b9df394acbe3c529_a5a01eb8f2adc1117b9df394acbe3c529_icgraph.md5
new file mode 100644
index 00000000..2e3486fa
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a5a01eb8f2adc1117b9df394acbe3c529_a5a01eb8f2adc1117b9df394acbe3c529_icgraph.md5
@@ -0,0 +1 @@
+241ae2f74622bd77cb25969961b47a04
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a5a01eb8f2adc1117b9df394acbe3c529_a5a01eb8f2adc1117b9df394acbe3c529_icgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a5a01eb8f2adc1117b9df394acbe3c529_a5a01eb8f2adc1117b9df394acbe3c529_icgraph.pdf
new file mode 100644
index 00000000..b24873cc
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a5a01eb8f2adc1117b9df394acbe3c529_a5a01eb8f2adc1117b9df394acbe3c529_icgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222_icgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222_icgraph.md5
new file mode 100644
index 00000000..3f551099
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222_icgraph.md5
@@ -0,0 +1 @@
+2f6eea2f96334ea838f4874c7b4342a9
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222_icgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222_icgraph.pdf
new file mode 100644
index 00000000..a274c615
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222_icgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a7b0aaffab801a8597c60daff4bccb177_a7b0aaffab801a8597c60daff4bccb177_icgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a7b0aaffab801a8597c60daff4bccb177_a7b0aaffab801a8597c60daff4bccb177_icgraph.md5
new file mode 100644
index 00000000..dd92922b
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a7b0aaffab801a8597c60daff4bccb177_a7b0aaffab801a8597c60daff4bccb177_icgraph.md5
@@ -0,0 +1 @@
+3d1ed616cce25fef3dad6f9216caa6c8
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a7b0aaffab801a8597c60daff4bccb177_a7b0aaffab801a8597c60daff4bccb177_icgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a7b0aaffab801a8597c60daff4bccb177_a7b0aaffab801a8597c60daff4bccb177_icgraph.pdf
new file mode 100644
index 00000000..2e6cc76e
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a7b0aaffab801a8597c60daff4bccb177_a7b0aaffab801a8597c60daff4bccb177_icgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a8e86208ec0d709c8259baacdb5e70281_a8e86208ec0d709c8259baacdb5e70281_cgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a8e86208ec0d709c8259baacdb5e70281_a8e86208ec0d709c8259baacdb5e70281_cgraph.md5
new file mode 100644
index 00000000..f6ee3c76
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a8e86208ec0d709c8259baacdb5e70281_a8e86208ec0d709c8259baacdb5e70281_cgraph.md5
@@ -0,0 +1 @@
+309d8e98c8d69c9cc001591292094c9e
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a8e86208ec0d709c8259baacdb5e70281_a8e86208ec0d709c8259baacdb5e70281_cgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a8e86208ec0d709c8259baacdb5e70281_a8e86208ec0d709c8259baacdb5e70281_cgraph.pdf
new file mode 100644
index 00000000..1700f800
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a8e86208ec0d709c8259baacdb5e70281_a8e86208ec0d709c8259baacdb5e70281_cgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a9702d12ef27f2d0dfd1f8201fbb37088_a9702d12ef27f2d0dfd1f8201fbb37088_cgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a9702d12ef27f2d0dfd1f8201fbb37088_a9702d12ef27f2d0dfd1f8201fbb37088_cgraph.md5
new file mode 100644
index 00000000..a674a584
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a9702d12ef27f2d0dfd1f8201fbb37088_a9702d12ef27f2d0dfd1f8201fbb37088_cgraph.md5
@@ -0,0 +1 @@
+d89f79c11e1b57ae7e239c187b9cc6fa
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a9702d12ef27f2d0dfd1f8201fbb37088_a9702d12ef27f2d0dfd1f8201fbb37088_cgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a9702d12ef27f2d0dfd1f8201fbb37088_a9702d12ef27f2d0dfd1f8201fbb37088_cgraph.pdf
new file mode 100644
index 00000000..13dd4aa7
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a9702d12ef27f2d0dfd1f8201fbb37088_a9702d12ef27f2d0dfd1f8201fbb37088_cgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9dbc6b65d0efec125ca6ec75_a996c0cfd9dbc6b65d0efec125ca6ec75_icgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9dbc6b65d0efec125ca6ec75_a996c0cfd9dbc6b65d0efec125ca6ec75_icgraph.md5
new file mode 100644
index 00000000..34fdadf1
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9dbc6b65d0efec125ca6ec75_a996c0cfd9dbc6b65d0efec125ca6ec75_icgraph.md5
@@ -0,0 +1 @@
+19fad37f87067cbe92175f729b965a5e
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9dbc6b65d0efec125ca6ec75_a996c0cfd9dbc6b65d0efec125ca6ec75_icgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9dbc6b65d0efec125ca6ec75_a996c0cfd9dbc6b65d0efec125ca6ec75_icgraph.pdf
new file mode 100644
index 00000000..03fc10e9
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9dbc6b65d0efec125ca6ec75_a996c0cfd9dbc6b65d0efec125ca6ec75_icgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_ae11a13bfe131ec8b20a5a5667e75ec97_ae11a13bfe131ec8b20a5a5667e75ec97_icgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_ae11a13bfe131ec8b20a5a5667e75ec97_ae11a13bfe131ec8b20a5a5667e75ec97_icgraph.md5
new file mode 100644
index 00000000..10af5c18
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_ae11a13bfe131ec8b20a5a5667e75ec97_ae11a13bfe131ec8b20a5a5667e75ec97_icgraph.md5
@@ -0,0 +1 @@
+70ad5c56ba0a84b298062505811c0bbf
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_ae11a13bfe131ec8b20a5a5667e75ec97_ae11a13bfe131ec8b20a5a5667e75ec97_icgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_ae11a13bfe131ec8b20a5a5667e75ec97_ae11a13bfe131ec8b20a5a5667e75ec97_icgraph.pdf
new file mode 100644
index 00000000..f15bb4ca
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_file_ae11a13bfe131ec8b20a5a5667e75ec97_ae11a13bfe131ec8b20a5a5667e75ec97_icgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_importer.tex b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_importer.tex
new file mode 100644
index 00000000..2d28842e
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_importer.tex
@@ -0,0 +1,630 @@
+\doxysubsection{Asset.\+Importer Class Reference}
+\hypertarget{class_code_smile_editor_1_1_asset_1_1_importer}{}\label{class_code_smile_editor_1_1_asset_1_1_importer}\index{Asset.Importer@{Asset.Importer}}
+
+
+Groups all Asset\+Importer related functionality.
+
+
+
+
+Collaboration diagram for Asset.\+Importer\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=189pt]{class_code_smile_editor_1_1_asset_1_1_importer__coll__graph}
+\end{center}
+\end{figure}
+\doxysubsubsubsection*{Static Public Member Functions}
+\begin{DoxyCompactItemize}
+\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a1a9a83a1db886ceb61eecb0933d27f30_a1a9a83a1db886ceb61eecb0933d27f30}{Apply\+Settings}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Writes any unsaved changes of the given asset\textquotesingle{}s importer to disk. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_ad3ff923faecf93e9371b98d6217be0df_ad3ff923faecf93e9371b98d6217be0df}{Clear\+Override}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Clears an Asset\+Importer override for the specified asset. \end{DoxyCompactList}\item
+static Type \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a5f0b2c4e6ed271387f7c924aa88e7d86_a5f0b2c4e6ed271387f7c924aa88e7d86}{Get\+Active}} (\mbox{[}Not\+Null\mbox{]} Object asset)
+\begin{DoxyCompactList}\small\item\em Gets the active Asset\+Importer type used for the given asset. \end{DoxyCompactList}\item
+static Type \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a357d4eb1c100686c1c135b3b1eb2aa70_a357d4eb1c100686c1c135b3b1eb2aa70}{Get\+Active}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Gets the active Asset\+Importer type used for the given asset. \end{DoxyCompactList}\item
+static Type\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_ad8916acf5622365b4fc9bfdbd7d64ba2_ad8916acf5622365b4fc9bfdbd7d64ba2}{Get\+Active}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\mbox{[}$\,$\mbox{]} paths)
+\begin{DoxyCompactList}\small\item\em Gets the active Asset\+Importer types used for the given assets. \end{DoxyCompactList}\item
+static Type\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_ac0bb98eb8d643f17f30448075c4e91bb_ac0bb98eb8d643f17f30448075c4e91bb}{Get\+Active}} (\mbox{[}Not\+Null\mbox{]} String\mbox{[}$\,$\mbox{]} paths)
+\begin{DoxyCompactList}\small\item\em Gets the active Asset\+Importer types used for the given assets. \end{DoxyCompactList}\item
+static Type \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a728bec89f163cf82119c37e0c73dfc0d_a728bec89f163cf82119c37e0c73dfc0d}{Get\+Active}} (GUID guid)
+\begin{DoxyCompactList}\small\item\em Gets the active Asset\+Importer type used for the given asset. \end{DoxyCompactList}\item
+static Type\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a80fd54a4f3cc505e2e9a42b4ca924656_a80fd54a4f3cc505e2e9a42b4ca924656}{Get\+Active}} (Read\+Only\+Span$<$ GUID $>$ guids)
+\begin{DoxyCompactList}\small\item\em Gets the active Asset\+Importer types used for the given assets. \end{DoxyCompactList}\item
+static Type\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_aa6e8b1b03c3aa82d03d45c885bf795b9_aa6e8b1b03c3aa82d03d45c885bf795b9}{Get\+Available}} (\mbox{[}Not\+Null\mbox{]} Object asset)
+\begin{DoxyCompactList}\small\item\em Gets the available Asset\+Importer types for assets of this kind. \end{DoxyCompactList}\item
+static Type\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_aee616cbd3cbe9e7b8256aed74fe20254_aee616cbd3cbe9e7b8256aed74fe20254}{Get\+Available}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Gets the available Asset\+Importer types for assets of this kind. \end{DoxyCompactList}\item
+static Type \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a88db6e9742be35bd23b068b28850b0d9_a88db6e9742be35bd23b068b28850b0d9}{Get\+Default}} (\mbox{[}Not\+Null\mbox{]} Object asset)
+\begin{DoxyCompactList}\small\item\em Returns an asset\textquotesingle{}s default importer type. \end{DoxyCompactList}\item
+static Type \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a19ff837d74e7666438a7938cf0f7126d_a19ff837d74e7666438a7938cf0f7126d}{Get\+Default}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Returns an asset\textquotesingle{}s default importer type. \end{DoxyCompactList}\item
+static Type \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_a9662ee14bf9f8ee4a25ceb8017c00c63_a9662ee14bf9f8ee4a25ceb8017c00c63}{Get\+Override}} (\mbox{[}Not\+Null\mbox{]} Object asset)
+\begin{DoxyCompactList}\small\item\em Returns an asset\textquotesingle{}s overridden importer type. \end{DoxyCompactList}\item
+static Type \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_ad5caea48acd697af0a7787ebcb643512_ad5caea48acd697af0a7787ebcb643512}{Get\+Override}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Returns an asset\textquotesingle{}s overridden importer type. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_abf047cc58c6e0a054b319bb93fb9ae5d_abf047cc58c6e0a054b319bb93fb9ae5d}{Is\+Overridden}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Returns true if the Asset\+Importer type for this asset has been overridden. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_importer_adc9eeee37a0d895ad4f37e583288e2e7_adc9eeee37a0d895ad4f37e583288e2e7}{Set\+Override$<$ T $>$}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Sets the custom Asset\+Importer to use for the specified asset. \end{DoxyCompactList}\end{DoxyCompactItemize}
+
+
+\doxysubsubsection{Detailed Description}
+Groups all Asset\+Importer related functionality.
+
+Definition at line \mbox{\hyperlink{_asset_8_importer_8cs_source_l00017}{17}} of file \mbox{\hyperlink{_asset_8_importer_8cs_source}{Asset.\+Importer.\+cs}}.
+
+
+
+\doxysubsubsection{Member Function Documentation}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_importer_a1a9a83a1db886ceb61eecb0933d27f30_a1a9a83a1db886ceb61eecb0933d27f30}\label{class_code_smile_editor_1_1_asset_1_1_importer_a1a9a83a1db886ceb61eecb0933d27f30_a1a9a83a1db886ceb61eecb0933d27f30}
+\index{Asset.Importer@{Asset.Importer}!ApplySettings@{ApplySettings}}
+\index{ApplySettings@{ApplySettings}!Asset.Importer@{Asset.Importer}}
+\doxyparagraph{\texorpdfstring{ApplySettings()}{ApplySettings()}}
+{\footnotesize\ttfamily static void Apply\+Settings (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Writes any unsaved changes of the given asset\textquotesingle{}s importer to disk.
+
+This is mainly used to force the Cache\+Server/\+Accelerator to import the asset. It does so without user interaction.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.WriteImportSettingsIfDirty.html}{\texttt{ Asset\+Database.\+Write\+Import\+Settings\+If\+Dirty}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_importer_ad3ff923faecf93e9371b98d6217be0df_ad3ff923faecf93e9371b98d6217be0df}\label{class_code_smile_editor_1_1_asset_1_1_importer_ad3ff923faecf93e9371b98d6217be0df_ad3ff923faecf93e9371b98d6217be0df}
+\index{Asset.Importer@{Asset.Importer}!ClearOverride@{ClearOverride}}
+\index{ClearOverride@{ClearOverride}!Asset.Importer@{Asset.Importer}}
+\doxyparagraph{\texorpdfstring{ClearOverride()}{ClearOverride()}}
+{\footnotesize\ttfamily static void Clear\+Override (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Clears an Asset\+Importer override for the specified asset.
+
+The asset will then use the default importer.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_adc9eeee37a0d895ad4f37e583288e2e7_adc9eeee37a0d895ad4f37e583288e2e7}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Set\+Override$<$\+T$>$}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_ad5caea48acd697af0a7787ebcb643512_ad5caea48acd697af0a7787ebcb643512}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Override}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_a19ff837d74e7666438a7938cf0f7126d_a19ff837d74e7666438a7938cf0f7126d}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Default}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.ClearImporterOverride.html}{\texttt{ Asset\+Database.\+Clear\+Importer\+Override}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_importer_a5f0b2c4e6ed271387f7c924aa88e7d86_a5f0b2c4e6ed271387f7c924aa88e7d86}\label{class_code_smile_editor_1_1_asset_1_1_importer_a5f0b2c4e6ed271387f7c924aa88e7d86_a5f0b2c4e6ed271387f7c924aa88e7d86}
+\index{Asset.Importer@{Asset.Importer}!GetActive@{GetActive}}
+\index{GetActive@{GetActive}!Asset.Importer@{Asset.Importer}}
+\doxyparagraph{\texorpdfstring{GetActive()}{GetActive()}\hspace{0.1cm}{\footnotesize\ttfamily [1/6]}}
+{\footnotesize\ttfamily static Type Get\+Active (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Gets the active Asset\+Importer type used for the given asset.
+
+Available in Unity 2022.\+2 or newer. In previous versions throws a Not\+Supported\+Exception.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & Instance of an asset file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The Asset\+Importer type in use for the specified asset.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_a19ff837d74e7666438a7938cf0f7126d_a19ff837d74e7666438a7938cf0f7126d}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Default}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_ad5caea48acd697af0a7787ebcb643512_ad5caea48acd697af0a7787ebcb643512}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Override}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetImporterType.html}{\texttt{ Asset\+Database.\+Get\+Importer\+Type}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_importer_a357d4eb1c100686c1c135b3b1eb2aa70_a357d4eb1c100686c1c135b3b1eb2aa70}\label{class_code_smile_editor_1_1_asset_1_1_importer_a357d4eb1c100686c1c135b3b1eb2aa70_a357d4eb1c100686c1c135b3b1eb2aa70}
+\index{Asset.Importer@{Asset.Importer}!GetActive@{GetActive}}
+\index{GetActive@{GetActive}!Asset.Importer@{Asset.Importer}}
+\doxyparagraph{\texorpdfstring{GetActive()}{GetActive()}\hspace{0.1cm}{\footnotesize\ttfamily [2/6]}}
+{\footnotesize\ttfamily static Type Get\+Active (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Gets the active Asset\+Importer type used for the given asset.
+
+Available in Unity 2022.\+2 or newer. In previous versions throws a Not\+Supported\+Exception.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The Asset\+Importer type in use for the specified asset.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_a19ff837d74e7666438a7938cf0f7126d_a19ff837d74e7666438a7938cf0f7126d}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Default}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_ad5caea48acd697af0a7787ebcb643512_ad5caea48acd697af0a7787ebcb643512}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Override}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetImporterType.html}{\texttt{ Asset\+Database.\+Get\+Importer\+Type}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_importer_8cs_source_l00031}{31}} of file \mbox{\hyperlink{_asset_8_importer_8cs_source}{Asset.\+Importer.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00032\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00033\ \textcolor{preprocessor}{\#if\ UNITY\_2022\_2\_OR\_NEWER }}
+\DoxyCodeLine{00034\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.GetImporterType(path);}
+\DoxyCodeLine{00035\ \textcolor{preprocessor}{\#else }}
+\DoxyCodeLine{00036\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ UnityEngine.Debug.LogWarning(\textcolor{stringliteral}{"{}GetImporterType\ not\ available\ in\ this\ Unity\ version\ -\/\ returning\ null"{}});}
+\DoxyCodeLine{00037\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{null};}
+\DoxyCodeLine{00038\ \textcolor{preprocessor}{\#endif }}
+\DoxyCodeLine{00039\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_importer_ad8916acf5622365b4fc9bfdbd7d64ba2_ad8916acf5622365b4fc9bfdbd7d64ba2}\label{class_code_smile_editor_1_1_asset_1_1_importer_ad8916acf5622365b4fc9bfdbd7d64ba2_ad8916acf5622365b4fc9bfdbd7d64ba2}
+\index{Asset.Importer@{Asset.Importer}!GetActive@{GetActive}}
+\index{GetActive@{GetActive}!Asset.Importer@{Asset.Importer}}
+\doxyparagraph{\texorpdfstring{GetActive()}{GetActive()}\hspace{0.1cm}{\footnotesize\ttfamily [3/6]}}
+{\footnotesize\ttfamily static Type\mbox{[}$\,$\mbox{]} Get\+Active (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\mbox{[}$\,$\mbox{]}}]{paths }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Gets the active Asset\+Importer types used for the given assets.
+
+Available in Unity 2022.\+2 or newer. Throws Not\+Supported\+Exception in earlier versions.
+
+
+\begin{DoxyParams}{Parameters}
+{\em paths} & Paths to asset files.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The Asset\+Importer types in use for the specified assets.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_a19ff837d74e7666438a7938cf0f7126d_a19ff837d74e7666438a7938cf0f7126d}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Default}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_ad5caea48acd697af0a7787ebcb643512_ad5caea48acd697af0a7787ebcb643512}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Override}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetImporterTypes.html}{\texttt{ Asset\+Database.\+Get\+Importer\+Types}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_importer_ac0bb98eb8d643f17f30448075c4e91bb_ac0bb98eb8d643f17f30448075c4e91bb}\label{class_code_smile_editor_1_1_asset_1_1_importer_ac0bb98eb8d643f17f30448075c4e91bb_ac0bb98eb8d643f17f30448075c4e91bb}
+\index{Asset.Importer@{Asset.Importer}!GetActive@{GetActive}}
+\index{GetActive@{GetActive}!Asset.Importer@{Asset.Importer}}
+\doxyparagraph{\texorpdfstring{GetActive()}{GetActive()}\hspace{0.1cm}{\footnotesize\ttfamily [4/6]}}
+{\footnotesize\ttfamily static Type\mbox{[}$\,$\mbox{]} Get\+Active (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String\mbox{[}$\,$\mbox{]}}]{paths }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Gets the active Asset\+Importer types used for the given assets.
+
+Available in Unity 2022.\+2 or newer. Throws Not\+Supported\+Exception in earlier versions.
+
+
+\begin{DoxyParams}{Parameters}
+{\em paths} & Paths to asset files.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The Asset\+Importer types in use for the specified assets.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_a19ff837d74e7666438a7938cf0f7126d_a19ff837d74e7666438a7938cf0f7126d}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Default}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_ad5caea48acd697af0a7787ebcb643512_ad5caea48acd697af0a7787ebcb643512}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Override}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetImporterTypes.html}{\texttt{ Asset\+Database.\+Get\+Importer\+Types}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_importer_8cs_source_l00103}{103}} of file \mbox{\hyperlink{_asset_8_importer_8cs_source}{Asset.\+Importer.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00104\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00105\ \textcolor{preprocessor}{\#if\ UNITY\_2022\_2\_OR\_NEWER }}
+\DoxyCodeLine{00106\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.GetImporterTypes(paths);}
+\DoxyCodeLine{00107\ \textcolor{preprocessor}{\#else }}
+\DoxyCodeLine{00108\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ \textcolor{keyword}{new}\ NotSupportedException(\textcolor{stringliteral}{"{}GetImporterTypes\ not\ available\ in\ this\ Unity\ version"{}});}
+\DoxyCodeLine{00109\ \textcolor{preprocessor}{\#endif }}
+\DoxyCodeLine{00110\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_importer_a728bec89f163cf82119c37e0c73dfc0d_a728bec89f163cf82119c37e0c73dfc0d}\label{class_code_smile_editor_1_1_asset_1_1_importer_a728bec89f163cf82119c37e0c73dfc0d_a728bec89f163cf82119c37e0c73dfc0d}
+\index{Asset.Importer@{Asset.Importer}!GetActive@{GetActive}}
+\index{GetActive@{GetActive}!Asset.Importer@{Asset.Importer}}
+\doxyparagraph{\texorpdfstring{GetActive()}{GetActive()}\hspace{0.1cm}{\footnotesize\ttfamily [5/6]}}
+{\footnotesize\ttfamily static Type Get\+Active (\begin{DoxyParamCaption}\item[{GUID}]{guid }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Gets the active Asset\+Importer type used for the given asset.
+
+Available in Unity 2022.\+2 or newer. In previous versions throws a Not\+Supported\+Exception.
+
+
+\begin{DoxyParams}{Parameters}
+{\em guid} & GUID of an asset file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The Asset\+Importer type in use for the specified asset.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_a19ff837d74e7666438a7938cf0f7126d_a19ff837d74e7666438a7938cf0f7126d}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Default}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_ad5caea48acd697af0a7787ebcb643512_ad5caea48acd697af0a7787ebcb643512}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Override}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetImporterType.html}{\texttt{ Asset\+Database.\+Get\+Importer\+Type}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_importer_8cs_source_l00053}{53}} of file \mbox{\hyperlink{_asset_8_importer_8cs_source}{Asset.\+Importer.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00054\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00055\ \textcolor{preprocessor}{\#if\ UNITY\_2022\_2\_OR\_NEWER }}
+\DoxyCodeLine{00056\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.GetImporterType(guid);}
+\DoxyCodeLine{00057\ \textcolor{preprocessor}{\#else }}
+\DoxyCodeLine{00058\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ UnityEngine.Debug.LogWarning(\textcolor{stringliteral}{"{}GetImporterType\ not\ available\ in\ this\ Unity\ version\ -\/\ returning\ null"{}});}
+\DoxyCodeLine{00059\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{null};}
+\DoxyCodeLine{00060\ \textcolor{preprocessor}{\#endif }}
+\DoxyCodeLine{00061\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_importer_a80fd54a4f3cc505e2e9a42b4ca924656_a80fd54a4f3cc505e2e9a42b4ca924656}\label{class_code_smile_editor_1_1_asset_1_1_importer_a80fd54a4f3cc505e2e9a42b4ca924656_a80fd54a4f3cc505e2e9a42b4ca924656}
+\index{Asset.Importer@{Asset.Importer}!GetActive@{GetActive}}
+\index{GetActive@{GetActive}!Asset.Importer@{Asset.Importer}}
+\doxyparagraph{\texorpdfstring{GetActive()}{GetActive()}\hspace{0.1cm}{\footnotesize\ttfamily [6/6]}}
+{\footnotesize\ttfamily static Type\mbox{[}$\,$\mbox{]} Get\+Active (\begin{DoxyParamCaption}\item[{Read\+Only\+Span$<$ GUID $>$}]{guids }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Gets the active Asset\+Importer types used for the given assets.
+
+Available in Unity 2022.\+2 or newer. Throws Not\+Supported\+Exception in earlier versions.
+
+
+\begin{DoxyParams}{Parameters}
+{\em guids} & GUIDs to asset files.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The Asset\+Importer types in use for the specified assets.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_a19ff837d74e7666438a7938cf0f7126d_a19ff837d74e7666438a7938cf0f7126d}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Default}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_ad5caea48acd697af0a7787ebcb643512_ad5caea48acd697af0a7787ebcb643512}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Override}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetImporterTypes.html}{\texttt{ Asset\+Database.\+Get\+Importer\+Types}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_importer_8cs_source_l00124}{124}} of file \mbox{\hyperlink{_asset_8_importer_8cs_source}{Asset.\+Importer.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00125\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00126\ \textcolor{preprocessor}{\#if\ UNITY\_2022\_2\_OR\_NEWER }}
+\DoxyCodeLine{00127\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.GetImporterTypes(guids);}
+\DoxyCodeLine{00128\ \textcolor{preprocessor}{\#else }}
+\DoxyCodeLine{00129\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ UnityEngine.Debug.LogWarning(\textcolor{stringliteral}{"{}GetImporterTypes\ not\ available\ in\ this\ Unity\ version\ -\/\ returning\ empty\ array"{}});}
+\DoxyCodeLine{00130\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{new}\ Type[0];}
+\DoxyCodeLine{00131\ \textcolor{preprocessor}{\#endif }}
+\DoxyCodeLine{00132\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_importer_aa6e8b1b03c3aa82d03d45c885bf795b9_aa6e8b1b03c3aa82d03d45c885bf795b9}\label{class_code_smile_editor_1_1_asset_1_1_importer_aa6e8b1b03c3aa82d03d45c885bf795b9_aa6e8b1b03c3aa82d03d45c885bf795b9}
+\index{Asset.Importer@{Asset.Importer}!GetAvailable@{GetAvailable}}
+\index{GetAvailable@{GetAvailable}!Asset.Importer@{Asset.Importer}}
+\doxyparagraph{\texorpdfstring{GetAvailable()}{GetAvailable()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
+{\footnotesize\ttfamily static Type\mbox{[}$\,$\mbox{]} Get\+Available (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Gets the available Asset\+Importer types for assets of this kind.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & Instance of an asset file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+Asset\+Importer types that handle importing assets of the same kind as the given asset file.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetAvailableImporters.html}{\texttt{ Asset\+Database.\+Get\+Available\+Importers}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_importer_aee616cbd3cbe9e7b8256aed74fe20254_aee616cbd3cbe9e7b8256aed74fe20254}\label{class_code_smile_editor_1_1_asset_1_1_importer_aee616cbd3cbe9e7b8256aed74fe20254_aee616cbd3cbe9e7b8256aed74fe20254}
+\index{Asset.Importer@{Asset.Importer}!GetAvailable@{GetAvailable}}
+\index{GetAvailable@{GetAvailable}!Asset.Importer@{Asset.Importer}}
+\doxyparagraph{\texorpdfstring{GetAvailable()}{GetAvailable()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
+{\footnotesize\ttfamily static Type\mbox{[}$\,$\mbox{]} Get\+Available (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Gets the available Asset\+Importer types for assets of this kind.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+Asset\+Importer types that handle importing assets of the same kind as the given asset file.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetAvailableImporters.html}{\texttt{ Asset\+Database.\+Get\+Available\+Importers}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_importer_8cs_source_l00143}{143}} of file \mbox{\hyperlink{_asset_8_importer_8cs_source}{Asset.\+Importer.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00144\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00145\ \textcolor{preprocessor}{\#if\ UNITY\_2022\_1\_OR\_NEWER }}
+\DoxyCodeLine{00146\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.GetAvailableImporters(path);}
+\DoxyCodeLine{00147\ \textcolor{preprocessor}{\#else }}
+\DoxyCodeLine{00148\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.GetAvailableImporterTypes(path);}
+\DoxyCodeLine{00149\ \textcolor{preprocessor}{\#endif }}
+\DoxyCodeLine{00150\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_importer_a88db6e9742be35bd23b068b28850b0d9_a88db6e9742be35bd23b068b28850b0d9}\label{class_code_smile_editor_1_1_asset_1_1_importer_a88db6e9742be35bd23b068b28850b0d9_a88db6e9742be35bd23b068b28850b0d9}
+\index{Asset.Importer@{Asset.Importer}!GetDefault@{GetDefault}}
+\index{GetDefault@{GetDefault}!Asset.Importer@{Asset.Importer}}
+\doxyparagraph{\texorpdfstring{GetDefault()}{GetDefault()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
+{\footnotesize\ttfamily static Type Get\+Default (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns an asset\textquotesingle{}s default importer type.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & An asset instance.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The type of the default importer for assets of this kind.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_ad5caea48acd697af0a7787ebcb643512_ad5caea48acd697af0a7787ebcb643512}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Override}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetDefaultImporter.html}{\texttt{ Asset\+Database.\+Get\+Default\+Importer}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_importer_a19ff837d74e7666438a7938cf0f7126d_a19ff837d74e7666438a7938cf0f7126d}\label{class_code_smile_editor_1_1_asset_1_1_importer_a19ff837d74e7666438a7938cf0f7126d_a19ff837d74e7666438a7938cf0f7126d}
+\index{Asset.Importer@{Asset.Importer}!GetDefault@{GetDefault}}
+\index{GetDefault@{GetDefault}!Asset.Importer@{Asset.Importer}}
+\doxyparagraph{\texorpdfstring{GetDefault()}{GetDefault()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
+{\footnotesize\ttfamily static Type Get\+Default (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns an asset\textquotesingle{}s default importer type.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The type of the default importer for assets of this kind.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_ad5caea48acd697af0a7787ebcb643512_ad5caea48acd697af0a7787ebcb643512}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Override}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetDefaultImporter.html}{\texttt{ Asset\+Database.\+Get\+Default\+Importer}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_importer_8cs_source_l00173}{173}} of file \mbox{\hyperlink{_asset_8_importer_8cs_source}{Asset.\+Importer.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00174\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00175\ \textcolor{preprocessor}{\#if\ UNITY\_2022\_1\_OR\_NEWER }}
+\DoxyCodeLine{00176\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.GetDefaultImporter(path);}
+\DoxyCodeLine{00177\ \textcolor{preprocessor}{\#else }}
+\DoxyCodeLine{00178\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{throw}\ \textcolor{keyword}{new}\ NotSupportedException(\textcolor{stringliteral}{"{}GetDefaultImporter\ is\ not\ available\ in\ this\ Unity\ version"{}});}
+\DoxyCodeLine{00179\ \textcolor{preprocessor}{\#endif }}
+\DoxyCodeLine{00180\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_importer_a9662ee14bf9f8ee4a25ceb8017c00c63_a9662ee14bf9f8ee4a25ceb8017c00c63}\label{class_code_smile_editor_1_1_asset_1_1_importer_a9662ee14bf9f8ee4a25ceb8017c00c63_a9662ee14bf9f8ee4a25ceb8017c00c63}
+\index{Asset.Importer@{Asset.Importer}!GetOverride@{GetOverride}}
+\index{GetOverride@{GetOverride}!Asset.Importer@{Asset.Importer}}
+\doxyparagraph{\texorpdfstring{GetOverride()}{GetOverride()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
+{\footnotesize\ttfamily static Type Get\+Override (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns an asset\textquotesingle{}s overridden importer type.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & An asset instance.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The overridden Asset\+Importer type or null if there is no overridden importer.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_adc9eeee37a0d895ad4f37e583288e2e7_adc9eeee37a0d895ad4f37e583288e2e7}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Set\+Override$<$\+T$>$}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_a19ff837d74e7666438a7938cf0f7126d_a19ff837d74e7666438a7938cf0f7126d}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Default}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetImporterOverride.html}{\texttt{ Asset\+Database.\+Get\+Importer\+Override}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_importer_ad5caea48acd697af0a7787ebcb643512_ad5caea48acd697af0a7787ebcb643512}\label{class_code_smile_editor_1_1_asset_1_1_importer_ad5caea48acd697af0a7787ebcb643512_ad5caea48acd697af0a7787ebcb643512}
+\index{Asset.Importer@{Asset.Importer}!GetOverride@{GetOverride}}
+\index{GetOverride@{GetOverride}!Asset.Importer@{Asset.Importer}}
+\doxyparagraph{\texorpdfstring{GetOverride()}{GetOverride()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
+{\footnotesize\ttfamily static Type Get\+Override (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns an asset\textquotesingle{}s overridden importer type.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The overridden Asset\+Importer type or null if there is no overridden importer.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_adc9eeee37a0d895ad4f37e583288e2e7_adc9eeee37a0d895ad4f37e583288e2e7}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Set\+Override$<$\+T$>$}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_a19ff837d74e7666438a7938cf0f7126d_a19ff837d74e7666438a7938cf0f7126d}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Default}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetImporterOverride.html}{\texttt{ Asset\+Database.\+Get\+Importer\+Override}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_importer_abf047cc58c6e0a054b319bb93fb9ae5d_abf047cc58c6e0a054b319bb93fb9ae5d}\label{class_code_smile_editor_1_1_asset_1_1_importer_abf047cc58c6e0a054b319bb93fb9ae5d_abf047cc58c6e0a054b319bb93fb9ae5d}
+\index{Asset.Importer@{Asset.Importer}!IsOverridden@{IsOverridden}}
+\index{IsOverridden@{IsOverridden}!Asset.Importer@{Asset.Importer}}
+\doxyparagraph{\texorpdfstring{IsOverridden()}{IsOverridden()}}
+{\footnotesize\ttfamily static Boolean Is\+Overridden (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns true if the Asset\+Importer type for this asset has been overridden.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if the importer for the asset is overriden, false if it uses the default importer.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_adc9eeee37a0d895ad4f37e583288e2e7_adc9eeee37a0d895ad4f37e583288e2e7}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Set\+Override$<$\+T$>$}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_ad5caea48acd697af0a7787ebcb643512_ad5caea48acd697af0a7787ebcb643512}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Override}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_a19ff837d74e7666438a7938cf0f7126d_a19ff837d74e7666438a7938cf0f7126d}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Default}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetDefaultImporter.html}{\texttt{ Asset\+Database.\+Get\+Default\+Importer}}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.ClearImporterOverride.html}{\texttt{ Asset\+Database.\+Clear\+Importer\+Override}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_importer_adc9eeee37a0d895ad4f37e583288e2e7_adc9eeee37a0d895ad4f37e583288e2e7}\label{class_code_smile_editor_1_1_asset_1_1_importer_adc9eeee37a0d895ad4f37e583288e2e7_adc9eeee37a0d895ad4f37e583288e2e7}
+\index{Asset.Importer@{Asset.Importer}!SetOverride$<$ T $>$@{SetOverride$<$ T $>$}}
+\index{SetOverride$<$ T $>$@{SetOverride$<$ T $>$}!Asset.Importer@{Asset.Importer}}
+\doxyparagraph{\texorpdfstring{SetOverride$<$ T $>$()}{SetOverride< T >()}}
+{\footnotesize\ttfamily static void Set\+Override$<$ T $>$ (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Sets the custom Asset\+Importer to use for the specified asset.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset file.\\
+\hline
+\end{DoxyParams}
+
+\begin{DoxyTemplParams}{Template Parameters}
+{\em T} & Type derived from Asset\+Importer. Note\+: in Unity 2021.\+3 T is Scripted\+Importer.\\
+\hline
+\end{DoxyTemplParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_ad3ff923faecf93e9371b98d6217be0df_ad3ff923faecf93e9371b98d6217be0df}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Clear\+Override}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_ad5caea48acd697af0a7787ebcb643512_ad5caea48acd697af0a7787ebcb643512}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Override}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_importer_a19ff837d74e7666438a7938cf0f7126d_a19ff837d74e7666438a7938cf0f7126d}{Code\+Smile\+Editor.\+Asset.\+Importer.\+Get\+Default}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.SetImporterOverride.html}{\texttt{ Asset\+Database.\+Set\+Importer\+Override}}
+\end{DoxyItemize}\begin{Desc}
+\item[Type Constraints]\begin{description}
+\item[{\em T} : {\em Unity\+Editor.\+Asset\+Importers.\+Scripted\+Importer}]\end{description}
+\end{Desc}
+
+
+Definition at line \mbox{\hyperlink{_asset_8_importer_8cs_source_l00232}{232}} of file \mbox{\hyperlink{_asset_8_importer_8cs_source}{Asset.\+Importer.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00234\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ :\ AssetImporter}
+\DoxyCodeLine{00235\ \textcolor{preprocessor}{\#else }}
+\DoxyCodeLine{00236\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ where\ T\ :\ UnityEditor.AssetImporters.ScriptedImporter}
+\DoxyCodeLine{00237\ \textcolor{preprocessor}{\#endif }}
+\DoxyCodeLine{00238\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00239\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.SetImporterOverride(path);}
+\DoxyCodeLine{00240\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_importer__coll__graph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_importer__coll__graph.md5
new file mode 100644
index 00000000..951b9f76
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_importer__coll__graph.md5
@@ -0,0 +1 @@
+d49b9f8b3589d1d7e0d78e573509f2f3
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_importer__coll__graph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_importer__coll__graph.pdf
new file mode 100644
index 00000000..0199596b
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_importer__coll__graph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label.tex b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label.tex
new file mode 100644
index 00000000..1242bb11
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label.tex
@@ -0,0 +1,280 @@
+\doxysubsection{Asset.\+Label Class Reference}
+\hypertarget{class_code_smile_editor_1_1_asset_1_1_label}{}\label{class_code_smile_editor_1_1_asset_1_1_label}\index{Asset.Label@{Asset.Label}}
+
+
+Groups all asset label related static methods.
+
+
+
+
+Collaboration diagram for Asset.\+Label\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=141pt]{class_code_smile_editor_1_1_asset_1_1_label__coll__graph}
+\end{center}
+\end{figure}
+\doxysubsubsubsection*{Static Public Member Functions}
+\begin{DoxyCompactItemize}
+\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_ad2dd0c24ca248dac498e168471c296ae_ad2dd0c24ca248dac498e168471c296ae}{Add}} (\mbox{[}Not\+Null\mbox{]} Object asset, \mbox{[}Not\+Null\mbox{]} String label)
+\begin{DoxyCompactList}\small\item\em Adds a single label to an asset\textquotesingle{}s list of labels. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_a0db1d630d411ce9b9afaab8893ca433c_a0db1d630d411ce9b9afaab8893ca433c}{Add}} (\mbox{[}Not\+Null\mbox{]} Object asset, \mbox{[}Not\+Null\mbox{]} String\mbox{[}$\,$\mbox{]} labels)
+\begin{DoxyCompactList}\small\item\em Adds several labels to an asset\textquotesingle{}s list of labels. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_ad0347f47f2f71137fe48133c157904ff_ad0347f47f2f71137fe48133c157904ff}{Clear\+All}} (\mbox{[}Not\+Null\mbox{]} Object asset)
+\begin{DoxyCompactList}\small\item\em Clears all labels of an asset. \end{DoxyCompactList}\item
+static String\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf}{Get\+All}} (\mbox{[}Not\+Null\mbox{]} Object asset)
+\begin{DoxyCompactList}\small\item\em Returns an asset\textquotesingle{}s labels. \end{DoxyCompactList}\item
+static String\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_af12ef27390e185dc2458c579d4a20aa2_af12ef27390e185dc2458c579d4a20aa2}{Get\+All}} (GUID guid)
+\begin{DoxyCompactList}\small\item\em Returns an asset\textquotesingle{}s labels. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_a82888b12b37f839fbabcb62e8fe169af_a82888b12b37f839fbabcb62e8fe169af}{Set\+All}} (\mbox{[}Not\+Null\mbox{]} Object asset, \mbox{[}Not\+Null\mbox{]} String\mbox{[}$\,$\mbox{]} labels)
+\begin{DoxyCompactList}\small\item\em Sets an asset\textquotesingle{}s labels. Replaces any existing labels. \end{DoxyCompactList}\end{DoxyCompactItemize}
+
+
+\doxysubsubsection{Detailed Description}
+Groups all asset label related static methods.
+
+Definition at line \mbox{\hyperlink{_asset_8_label_8cs_source_l00017}{17}} of file \mbox{\hyperlink{_asset_8_label_8cs_source}{Asset.\+Label.\+cs}}.
+
+
+
+\doxysubsubsection{Member Function Documentation}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_label_ad2dd0c24ca248dac498e168471c296ae_ad2dd0c24ca248dac498e168471c296ae}\label{class_code_smile_editor_1_1_asset_1_1_label_ad2dd0c24ca248dac498e168471c296ae_ad2dd0c24ca248dac498e168471c296ae}
+\index{Asset.Label@{Asset.Label}!Add@{Add}}
+\index{Add@{Add}!Asset.Label@{Asset.Label}}
+\doxyparagraph{\texorpdfstring{Add()}{Add()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
+{\footnotesize\ttfamily static void Add (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset, }\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{label }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Adds a single label to an asset\textquotesingle{}s list of labels.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & Instance of an asset.\\
+\hline
+{\em label} & The label to add.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_label_a0db1d630d411ce9b9afaab8893ca433c_a0db1d630d411ce9b9afaab8893ca433c}{Code\+Smile\+Editor.\+Asset.\+Label.\+Add(\+Object,\+String\mbox{[}$\,$\mbox{]})}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf}{Code\+Smile\+Editor.\+Asset.\+Label.\+Get\+All}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_label_a82888b12b37f839fbabcb62e8fe169af_a82888b12b37f839fbabcb62e8fe169af}{Code\+Smile\+Editor.\+Asset.\+Label.\+Set\+All}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_label_8cs_source_l00071}{71}} of file \mbox{\hyperlink{_asset_8_label_8cs_source}{Asset.\+Label.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00072\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00073\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ existingLabels\ =\ \textcolor{keyword}{new}\ List(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf}{GetAll}}(asset));}
+\DoxyCodeLine{00074\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ existingLabels.Add(label);}
+\DoxyCodeLine{00075\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.SetLabels(asset,\ existingLabels.ToArray());}
+\DoxyCodeLine{00076\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+References \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf}{Asset.\+Label.\+Get\+All()}}.
+
+Here is the call graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=192pt]{class_code_smile_editor_1_1_asset_1_1_label_ad2dd0c24ca248dac498e168471c296ae_ad2dd0c24ca248dac498e168471c296ae_cgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_label_a0db1d630d411ce9b9afaab8893ca433c_a0db1d630d411ce9b9afaab8893ca433c}\label{class_code_smile_editor_1_1_asset_1_1_label_a0db1d630d411ce9b9afaab8893ca433c_a0db1d630d411ce9b9afaab8893ca433c}
+\index{Asset.Label@{Asset.Label}!Add@{Add}}
+\index{Add@{Add}!Asset.Label@{Asset.Label}}
+\doxyparagraph{\texorpdfstring{Add()}{Add()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
+{\footnotesize\ttfamily static void Add (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset, }\item[{\mbox{[}\+Not\+Null\mbox{]} String\mbox{[}$\,$\mbox{]}}]{labels }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Adds several labels to an asset\textquotesingle{}s list of labels.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & Instance of an asset.\\
+\hline
+{\em labels} & The labels to add.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_label_ad2dd0c24ca248dac498e168471c296ae_ad2dd0c24ca248dac498e168471c296ae}{Code\+Smile\+Editor.\+Asset.\+Label.\+Add(\+Object,\+String)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf}{Code\+Smile\+Editor.\+Asset.\+Label.\+Get\+All}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_label_a82888b12b37f839fbabcb62e8fe169af_a82888b12b37f839fbabcb62e8fe169af}{Code\+Smile\+Editor.\+Asset.\+Label.\+Set\+All}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_label_8cs_source_l00088}{88}} of file \mbox{\hyperlink{_asset_8_label_8cs_source}{Asset.\+Label.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00089\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00090\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ existingLabels\ =\ \textcolor{keyword}{new}\ List(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf}{GetAll}}(asset));}
+\DoxyCodeLine{00091\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ existingLabels.AddRange(labels);}
+\DoxyCodeLine{00092\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.SetLabels(asset,\ existingLabels.ToArray());}
+\DoxyCodeLine{00093\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+References \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf}{Asset.\+Label.\+Get\+All()}}.
+
+Here is the call graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=192pt]{class_code_smile_editor_1_1_asset_1_1_label_a0db1d630d411ce9b9afaab8893ca433c_a0db1d630d411ce9b9afaab8893ca433c_cgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_label_ad0347f47f2f71137fe48133c157904ff_ad0347f47f2f71137fe48133c157904ff}\label{class_code_smile_editor_1_1_asset_1_1_label_ad0347f47f2f71137fe48133c157904ff_ad0347f47f2f71137fe48133c157904ff}
+\index{Asset.Label@{Asset.Label}!ClearAll@{ClearAll}}
+\index{ClearAll@{ClearAll}!Asset.Label@{Asset.Label}}
+\doxyparagraph{\texorpdfstring{ClearAll()}{ClearAll()}}
+{\footnotesize\ttfamily static void Clear\+All (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Clears all labels of an asset.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & Instance of an asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf}{Code\+Smile\+Editor.\+Asset.\+Label.\+Get\+All}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_label_a82888b12b37f839fbabcb62e8fe169af_a82888b12b37f839fbabcb62e8fe169af}{Code\+Smile\+Editor.\+Asset.\+Label.\+Set\+All}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.ClearLabels.html}{\texttt{ Asset\+Database.\+Clear\+Labels}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf}\label{class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf}
+\index{Asset.Label@{Asset.Label}!GetAll@{GetAll}}
+\index{GetAll@{GetAll}!Asset.Label@{Asset.Label}}
+\doxyparagraph{\texorpdfstring{GetAll()}{GetAll()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
+{\footnotesize\ttfamily static String\mbox{[}$\,$\mbox{]} Get\+All (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns an asset\textquotesingle{}s labels.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & Instance of an asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The labels of the asset or an empty array.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_label_ad2dd0c24ca248dac498e168471c296ae_ad2dd0c24ca248dac498e168471c296ae}{Code\+Smile\+Editor.\+Asset.\+Label.\+Add}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_label_a82888b12b37f839fbabcb62e8fe169af_a82888b12b37f839fbabcb62e8fe169af}{Code\+Smile\+Editor.\+Asset.\+Label.\+Set\+All}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetLabels.html}{\texttt{ Asset\+Database.\+Get\+Labels}}
+\end{DoxyItemize}
+
+Referenced by \mbox{\hyperlink{_asset_8_label_8cs_source_l00071}{Asset.\+Label.\+Add()}}, and \mbox{\hyperlink{_asset_8_label_8cs_source_l00088}{Asset.\+Label.\+Add()}}.
+
+Here is the caller graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=192pt]{class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf_icgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_label_af12ef27390e185dc2458c579d4a20aa2_af12ef27390e185dc2458c579d4a20aa2}\label{class_code_smile_editor_1_1_asset_1_1_label_af12ef27390e185dc2458c579d4a20aa2_af12ef27390e185dc2458c579d4a20aa2}
+\index{Asset.Label@{Asset.Label}!GetAll@{GetAll}}
+\index{GetAll@{GetAll}!Asset.Label@{Asset.Label}}
+\doxyparagraph{\texorpdfstring{GetAll()}{GetAll()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
+{\footnotesize\ttfamily static String\mbox{[}$\,$\mbox{]} Get\+All (\begin{DoxyParamCaption}\item[{GUID}]{guid }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns an asset\textquotesingle{}s labels.
+
+
+\begin{DoxyParams}{Parameters}
+{\em guid} & GUID of an asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The labels of the asset or an empty array.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_label_ad2dd0c24ca248dac498e168471c296ae_ad2dd0c24ca248dac498e168471c296ae}{Code\+Smile\+Editor.\+Asset.\+Label.\+Add}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_label_a82888b12b37f839fbabcb62e8fe169af_a82888b12b37f839fbabcb62e8fe169af}{Code\+Smile\+Editor.\+Asset.\+Label.\+Set\+All}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetLabels.html}{\texttt{ Asset\+Database.\+Get\+Labels}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_label_a82888b12b37f839fbabcb62e8fe169af_a82888b12b37f839fbabcb62e8fe169af}\label{class_code_smile_editor_1_1_asset_1_1_label_a82888b12b37f839fbabcb62e8fe169af_a82888b12b37f839fbabcb62e8fe169af}
+\index{Asset.Label@{Asset.Label}!SetAll@{SetAll}}
+\index{SetAll@{SetAll}!Asset.Label@{Asset.Label}}
+\doxyparagraph{\texorpdfstring{SetAll()}{SetAll()}}
+{\footnotesize\ttfamily static void Set\+All (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset, }\item[{\mbox{[}\+Not\+Null\mbox{]} String\mbox{[}$\,$\mbox{]}}]{labels }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Sets an asset\textquotesingle{}s labels. Replaces any existing labels.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & Instance of an asset.\\
+\hline
+{\em labels} & An array of labels.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_label_ad2dd0c24ca248dac498e168471c296ae_ad2dd0c24ca248dac498e168471c296ae}{Code\+Smile\+Editor.\+Asset.\+Label.\+Add}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf}{Code\+Smile\+Editor.\+Asset.\+Label.\+Get\+All}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.SetLabels.html}{\texttt{ Asset\+Database.\+Set\+Labels}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_label_8cs_source_l00053}{53}} of file \mbox{\hyperlink{_asset_8_label_8cs_source}{Asset.\+Label.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00054\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00055\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(asset,\ nameof(asset));}
+\DoxyCodeLine{00056\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(labels,\ nameof(labels));}
+\DoxyCodeLine{00057\ }
+\DoxyCodeLine{00058\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.SetLabels(asset,\ labels);}
+\DoxyCodeLine{00059\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label__coll__graph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label__coll__graph.md5
new file mode 100644
index 00000000..8e577611
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label__coll__graph.md5
@@ -0,0 +1 @@
+8170e911fe2ad516380553c100404cd7
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label__coll__graph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label__coll__graph.pdf
new file mode 100644
index 00000000..2099abfb
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label__coll__graph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label_a0db1d630d411ce9b9afaab8893ca433c_a0db1d630d411ce9b9afaab8893ca433c_cgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label_a0db1d630d411ce9b9afaab8893ca433c_a0db1d630d411ce9b9afaab8893ca433c_cgraph.md5
new file mode 100644
index 00000000..c9fedefc
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label_a0db1d630d411ce9b9afaab8893ca433c_a0db1d630d411ce9b9afaab8893ca433c_cgraph.md5
@@ -0,0 +1 @@
+cd1fc1a3f9f38884b05a19d57138f35f
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label_a0db1d630d411ce9b9afaab8893ca433c_a0db1d630d411ce9b9afaab8893ca433c_cgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label_a0db1d630d411ce9b9afaab8893ca433c_a0db1d630d411ce9b9afaab8893ca433c_cgraph.pdf
new file mode 100644
index 00000000..4df9a74b
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label_a0db1d630d411ce9b9afaab8893ca433c_a0db1d630d411ce9b9afaab8893ca433c_cgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf_icgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf_icgraph.md5
new file mode 100644
index 00000000..341fef90
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf_icgraph.md5
@@ -0,0 +1 @@
+ecc9f1426777d16769f14a6481fd7206
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf_icgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf_icgraph.pdf
new file mode 100644
index 00000000..141823c1
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf_icgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label_ad2dd0c24ca248dac498e168471c296ae_ad2dd0c24ca248dac498e168471c296ae_cgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label_ad2dd0c24ca248dac498e168471c296ae_ad2dd0c24ca248dac498e168471c296ae_cgraph.md5
new file mode 100644
index 00000000..191e87d1
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label_ad2dd0c24ca248dac498e168471c296ae_ad2dd0c24ca248dac498e168471c296ae_cgraph.md5
@@ -0,0 +1 @@
+b8c602058ae71d4d6cd845100a8a23a9
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label_ad2dd0c24ca248dac498e168471c296ae_ad2dd0c24ca248dac498e168471c296ae_cgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label_ad2dd0c24ca248dac498e168471c296ae_ad2dd0c24ca248dac498e168471c296ae_cgraph.pdf
new file mode 100644
index 00000000..4df9a74b
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_label_ad2dd0c24ca248dac498e168471c296ae_ad2dd0c24ca248dac498e168471c296ae_cgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_package.tex b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_package.tex
new file mode 100644
index 00000000..107d161a
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_package.tex
@@ -0,0 +1,228 @@
+\doxysubsection{Asset.\+Package Class Reference}
+\hypertarget{class_code_smile_editor_1_1_asset_1_1_package}{}\label{class_code_smile_editor_1_1_asset_1_1_package}\index{Asset.Package@{Asset.Package}}
+
+
+Groups import/export functionality for \href{https://docs.unity3d.com/Manual/AssetPackages.html}{\texttt{ .unitypackage files}} (Asset Packages).
+
+
+
+
+Collaboration diagram for Asset.\+Package\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=174pt]{class_code_smile_editor_1_1_asset_1_1_package__coll__graph}
+\end{center}
+\end{figure}
+\doxysubsubsubsection*{Static Public Member Functions}
+\begin{DoxyCompactItemize}
+\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_package_aa1e7a86c8e5db3200570af6809a69f2a_aa1e7a86c8e5db3200570af6809a69f2a}{Export}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} asset\+Path, \mbox{[}Not\+Null\mbox{]} String package\+Path, Export\+Package\+Options options=Export\+Package\+Options.\+Default)
+\begin{DoxyCompactList}\small\item\em Exports the asset and its dependencies to a .unitypackage file. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_package_a379ffb8db80b0c38b681a7580cd55e4c_a379ffb8db80b0c38b681a7580cd55e4c}{Export}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\mbox{[}$\,$\mbox{]} asset\+Paths, \mbox{[}Not\+Null\mbox{]} String package\+Path, Export\+Package\+Options options=Export\+Package\+Options.\+Default)
+\begin{DoxyCompactList}\small\item\em Exports multiple assets and their dependencies to the package\+Path file. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_package_a52bfc150210997b319e205ebd13e87a8_a52bfc150210997b319e205ebd13e87a8}{Export}} (\mbox{[}Not\+Null\mbox{]} String\mbox{[}$\,$\mbox{]} asset\+Paths, \mbox{[}Not\+Null\mbox{]} String package\+Path, Export\+Package\+Options options=Export\+Package\+Options.\+Default)
+\begin{DoxyCompactList}\small\item\em Exports multiple assets and their dependencies to the package\+Path file. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_package_ac41a72ed18bd8c2d23212f32791b0a2a_ac41a72ed18bd8c2d23212f32791b0a2a}{Import}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} package\+Path)
+\begin{DoxyCompactList}\small\item\em Silently imports a .unitypackage file at the given path. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_package_a99d2e4c6e164f99d46f0da6cb23d9aa9_a99d2e4c6e164f99d46f0da6cb23d9aa9}{Import\+Interactive}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} package\+Path)
+\begin{DoxyCompactList}\small\item\em Imports a .unitypackage file at the given path interactively. \end{DoxyCompactList}\end{DoxyCompactItemize}
+
+
+\doxysubsubsection{Detailed Description}
+Groups import/export functionality for \href{https://docs.unity3d.com/Manual/AssetPackages.html}{\texttt{ .unitypackage files}} (Asset Packages).
+
+Does not contain Package Manager (npm packages) functionality.
+
+Definition at line \mbox{\hyperlink{_asset_8_package_8cs_source_l00019}{19}} of file \mbox{\hyperlink{_asset_8_package_8cs_source}{Asset.\+Package.\+cs}}.
+
+
+
+\doxysubsubsection{Member Function Documentation}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_package_aa1e7a86c8e5db3200570af6809a69f2a_aa1e7a86c8e5db3200570af6809a69f2a}\label{class_code_smile_editor_1_1_asset_1_1_package_aa1e7a86c8e5db3200570af6809a69f2a_aa1e7a86c8e5db3200570af6809a69f2a}
+\index{Asset.Package@{Asset.Package}!Export@{Export}}
+\index{Export@{Export}!Asset.Package@{Asset.Package}}
+\doxyparagraph{\texorpdfstring{Export()}{Export()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}}
+{\footnotesize\ttfamily static void Export (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{asset\+Path, }\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{package\+Path, }\item[{Export\+Package\+Options}]{options = {\ttfamily ExportPackageOptions\+:\+:Default} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Exports the asset and its dependencies to a .unitypackage file.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset\+Path} & The asset to export.\\
+\hline
+{\em package\+Path} & Path to file with the .unitypackage extension.\\
+\hline
+{\em options} & \href{https://docs.unity3d.com/ScriptReference/ExportPackageOptions.html}{\texttt{ Export\+Package\+Options}} \\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_package_a52bfc150210997b319e205ebd13e87a8_a52bfc150210997b319e205ebd13e87a8}{Code\+Smile\+Editor.\+Asset.\+Package.\+Export(\+String\mbox{[}$\,$\mbox{]},\+String,\+Export\+Package\+Options)}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.ExportPackage.html}{\texttt{ Asset\+Database.\+Export\+Package}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_package_8cs_source_l00069}{69}} of file \mbox{\hyperlink{_asset_8_package_8cs_source}{Asset.\+Package.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00071\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00072\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ExtensionIsNotUnityPackage(packagePath);}
+\DoxyCodeLine{00073\ }
+\DoxyCodeLine{00074\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.ExportPackage(assetPath,\ packagePath,\ options);}
+\DoxyCodeLine{00075\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_package_a379ffb8db80b0c38b681a7580cd55e4c_a379ffb8db80b0c38b681a7580cd55e4c}\label{class_code_smile_editor_1_1_asset_1_1_package_a379ffb8db80b0c38b681a7580cd55e4c_a379ffb8db80b0c38b681a7580cd55e4c}
+\index{Asset.Package@{Asset.Package}!Export@{Export}}
+\index{Export@{Export}!Asset.Package@{Asset.Package}}
+\doxyparagraph{\texorpdfstring{Export()}{Export()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}}
+{\footnotesize\ttfamily static void Export (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\mbox{[}$\,$\mbox{]}}]{asset\+Paths, }\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{package\+Path, }\item[{Export\+Package\+Options}]{options = {\ttfamily ExportPackageOptions.Default} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Exports multiple assets and their dependencies to the package\+Path file.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset\+Paths} & The assets to export.\\
+\hline
+{\em package\+Path} & Path to file with the .unitypackage extension.\\
+\hline
+{\em options} & \href{https://docs.unity3d.com/ScriptReference/ExportPackageOptions.html}{\texttt{ Export\+Package\+Options}} \\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_package_aa1e7a86c8e5db3200570af6809a69f2a_aa1e7a86c8e5db3200570af6809a69f2a}{Code\+Smile\+Editor.\+Asset.\+Package.\+Export(\+Code\+Smile\+Editor.\+Asset.\+Path,\+String,\+Export\+Package\+Options)}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.ExportPackage.html}{\texttt{ Asset\+Database.\+Export\+Package}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_package_a52bfc150210997b319e205ebd13e87a8_a52bfc150210997b319e205ebd13e87a8}\label{class_code_smile_editor_1_1_asset_1_1_package_a52bfc150210997b319e205ebd13e87a8_a52bfc150210997b319e205ebd13e87a8}
+\index{Asset.Package@{Asset.Package}!Export@{Export}}
+\index{Export@{Export}!Asset.Package@{Asset.Package}}
+\doxyparagraph{\texorpdfstring{Export()}{Export()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}}
+{\footnotesize\ttfamily static void Export (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String\mbox{[}$\,$\mbox{]}}]{asset\+Paths, }\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{package\+Path, }\item[{Export\+Package\+Options}]{options = {\ttfamily ExportPackageOptions\+:\+:Default} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Exports multiple assets and their dependencies to the package\+Path file.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset\+Paths} & The assets to export.\\
+\hline
+{\em package\+Path} & Path to file with the .unitypackage extension.\\
+\hline
+{\em options} & \href{https://docs.unity3d.com/ScriptReference/ExportPackageOptions.html}{\texttt{ Export\+Package\+Options}} \\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_package_aa1e7a86c8e5db3200570af6809a69f2a_aa1e7a86c8e5db3200570af6809a69f2a}{Code\+Smile\+Editor.\+Asset.\+Package.\+Export(\+Code\+Smile\+Editor.\+Asset.\+Path,\+String,\+Export\+Package\+Options)}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.ExportPackage.html}{\texttt{ Asset\+Database.\+Export\+Package}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_package_8cs_source_l00107}{107}} of file \mbox{\hyperlink{_asset_8_package_8cs_source}{Asset.\+Package.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00109\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00110\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ExtensionIsNotUnityPackage(packagePath);}
+\DoxyCodeLine{00111\ }
+\DoxyCodeLine{00112\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.ExportPackage(assetPaths,\ packagePath,\ options);}
+\DoxyCodeLine{00113\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_package_ac41a72ed18bd8c2d23212f32791b0a2a_ac41a72ed18bd8c2d23212f32791b0a2a}\label{class_code_smile_editor_1_1_asset_1_1_package_ac41a72ed18bd8c2d23212f32791b0a2a_ac41a72ed18bd8c2d23212f32791b0a2a}
+\index{Asset.Package@{Asset.Package}!Import@{Import}}
+\index{Import@{Import}!Asset.Package@{Asset.Package}}
+\doxyparagraph{\texorpdfstring{Import()}{Import()}}
+{\footnotesize\ttfamily static void Import (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{package\+Path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Silently imports a .unitypackage file at the given path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em package\+Path} & Path to file with the .unitypackage extension.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_package_a99d2e4c6e164f99d46f0da6cb23d9aa9_a99d2e4c6e164f99d46f0da6cb23d9aa9}{Code\+Smile\+Editor.\+Asset.\+Package.\+Import\+Interactive}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.ImportPackage.html}{\texttt{ Asset\+Database.\+Import\+Package}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_package_8cs_source_l00031}{31}} of file \mbox{\hyperlink{_asset_8_package_8cs_source}{Asset.\+Package.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00032\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00033\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ExtensionIsNotUnityPackage(packagePath);}
+\DoxyCodeLine{00034\ }
+\DoxyCodeLine{00035\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.ImportPackage(packagePath,\ \textcolor{keyword}{false});}
+\DoxyCodeLine{00036\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_package_a99d2e4c6e164f99d46f0da6cb23d9aa9_a99d2e4c6e164f99d46f0da6cb23d9aa9}\label{class_code_smile_editor_1_1_asset_1_1_package_a99d2e4c6e164f99d46f0da6cb23d9aa9_a99d2e4c6e164f99d46f0da6cb23d9aa9}
+\index{Asset.Package@{Asset.Package}!ImportInteractive@{ImportInteractive}}
+\index{ImportInteractive@{ImportInteractive}!Asset.Package@{Asset.Package}}
+\doxyparagraph{\texorpdfstring{ImportInteractive()}{ImportInteractive()}}
+{\footnotesize\ttfamily static void Import\+Interactive (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{package\+Path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Imports a .unitypackage file at the given path interactively.
+
+Shows the import package dialogue to the user before importing.
+
+
+\begin{DoxyParams}{Parameters}
+{\em package\+Path} & Path to file with the .unitypackage extension.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_package_ac41a72ed18bd8c2d23212f32791b0a2a_ac41a72ed18bd8c2d23212f32791b0a2a}{Code\+Smile\+Editor.\+Asset.\+Package.\+Import}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.ImportPackage.html}{\texttt{ Asset\+Database.\+Import\+Package}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_package_8cs_source_l00049}{49}} of file \mbox{\hyperlink{_asset_8_package_8cs_source}{Asset.\+Package.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00050\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00051\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ExtensionIsNotUnityPackage(packagePath);}
+\DoxyCodeLine{00052\ }
+\DoxyCodeLine{00053\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.ImportPackage(packagePath,\ \textcolor{keyword}{true});}
+\DoxyCodeLine{00054\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_package__coll__graph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_package__coll__graph.md5
new file mode 100644
index 00000000..2fb6688e
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_package__coll__graph.md5
@@ -0,0 +1 @@
+4ab03b6d6ae32444e724eb47be84f716
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_package__coll__graph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_package__coll__graph.pdf
new file mode 100644
index 00000000..6530e61b
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_package__coll__graph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path.tex b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path.tex
new file mode 100644
index 00000000..d53ebded
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path.tex
@@ -0,0 +1,1744 @@
+\doxysubsection{Asset.\+Path Class Reference}
+\hypertarget{class_code_smile_editor_1_1_asset_1_1_path}{}\label{class_code_smile_editor_1_1_asset_1_1_path}\index{Asset.Path@{Asset.Path}}
+
+
+Represents a relative path to an asset file or folder, typically under \textquotesingle{}Assets\textquotesingle{} or \textquotesingle{}Packages\textquotesingle{}.
+
+
+
+
+Inheritance diagram for Asset.\+Path\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[height=550pt]{class_code_smile_editor_1_1_asset_1_1_path__inherit__graph}
+\end{center}
+\end{figure}
+
+
+Collaboration diagram for Asset.\+Path\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[height=550pt]{class_code_smile_editor_1_1_asset_1_1_path__coll__graph}
+\end{center}
+\end{figure}
+\doxysubsubsubsection*{Public Member Functions}
+\begin{DoxyCompactItemize}
+\item
+\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a3d0d7574b95b19be03fdfd90e6c628e2_a3d0d7574b95b19be03fdfd90e6c628e2}{Path}} (\mbox{[}Not\+Null\mbox{]} Object asset)
+\begin{DoxyCompactList}\small\item\em Creates an asset path from an asset instance. \end{DoxyCompactList}\item
+\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ab81690d1d82ddd90548e3d804b5afa29_ab81690d1d82ddd90548e3d804b5afa29}{Path}} (\mbox{[}Not\+Null\mbox{]} String folder\+Path, \mbox{[}Not\+Null\mbox{]} String file\+Name, \mbox{[}Not\+Null\mbox{]} String extension=Default\+Extension)
+\begin{DoxyCompactList}\small\item\em Creates an asset path by combining folder path, file name and extension. \end{DoxyCompactList}\item
+\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a14cdcaf6215972759787431b363f763c_a14cdcaf6215972759787431b363f763c}{Path}} (\mbox{[}Not\+Null\mbox{]} String full\+Or\+Relative\+Path)
+\begin{DoxyCompactList}\small\item\em Creates an asset path from either an absolute or relative path. \end{DoxyCompactList}\item
+GUID \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a707c1a8b6f6fab6ad12485008e38ce41_a707c1a8b6f6fab6ad12485008e38ce41}{Create\+Folders}} ()
+\begin{DoxyCompactList}\small\item\em Creates the folders in the path recursively. \end{DoxyCompactList}\item
+Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a16e59bfb7ec5500d91fa1e8baaed7ec3_a16e59bfb7ec5500d91fa1e8baaed7ec3}{Equals}} (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} other)
+\begin{DoxyCompactList}\small\item\em Tests another path for equality. \end{DoxyCompactList}\item
+Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a7fe15db208e12203a2ddd105a60446a0_a7fe15db208e12203a2ddd105a60446a0}{Equals}} (String other)
+\begin{DoxyCompactList}\small\item\em Tests another path for equality. \end{DoxyCompactList}\item
+override Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a37cffbb9ed1db3b0e77664ad01b6fd01_a37cffbb9ed1db3b0e77664ad01b6fd01}{Equals}} (System.\+Object obj)
+\begin{DoxyCompactList}\small\item\em Tests path for equality with an object. \end{DoxyCompactList}\item
+override Int32 \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ab86e9330a2bab918bbad0e2cbadb58a8_ab86e9330a2bab918bbad0e2cbadb58a8}{Get\+Hash\+Code}} ()
+\begin{DoxyCompactList}\small\item\em Returns the internal path string\textquotesingle{}s hash code. \end{DoxyCompactList}\item
+void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_abb6aabf6ef3879246a9410a4b03cff6a_abb6aabf6ef3879246a9410a4b03cff6a}{Open\+External}} ()
+\begin{DoxyCompactList}\small\item\em Opens the folder externally, for example File Explorer (Windows) or Finder (Mac). \end{DoxyCompactList}\item
+void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ab20dbdb9f71c4595e668cf0cb5f5ad7c_ab20dbdb9f71c4595e668cf0cb5f5ad7c}{Rename}} (String new\+File\+Or\+Folder\+Name)
+\begin{DoxyCompactList}\small\item\em Renames the last element of the \doxylink{class_code_smile_editor_1_1_asset_1_1_path}{Code\+Smile\+Editor.\+Asset.\+Path} instance. \end{DoxyCompactList}\item
+override String \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a012fbb0f39e57c0a44ec83dd408fcda3_a012fbb0f39e57c0a44ec83dd408fcda3}{To\+String}} ()
+\begin{DoxyCompactList}\small\item\em Returns the relative path as string. \end{DoxyCompactList}\end{DoxyCompactItemize}
+\doxysubsubsubsection*{Static Public Member Functions}
+\begin{DoxyCompactItemize}
+\item
+static GUID \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa30592adbaf54202ead85cd483107e55_aa30592adbaf54202ead85cd483107e55}{Create\+Folders}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Creates any missing folders in the path. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ae2e7b500cc4d1f97b7c6051181aa833f_ae2e7b500cc4d1f97b7c6051181aa833f}{File\+Exists}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Tests if the given file exists in the file system. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe0620f7baaa0c21543f455c_a18386e05fe0620f7baaa0c21543f455c}{Folder\+Exists}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Tests if the given folder exists in the file system. \end{DoxyCompactList}\item
+static \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a18298002ca84eab9c56ac238dedc53e8_a18298002ca84eab9c56ac238dedc53e8}{From\+Meta}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Returns the asset\textquotesingle{}s file path from a .meta file path. \end{DoxyCompactList}\item
+static \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Get}} (\mbox{[}Not\+Null\mbox{]} Object asset)
+\begin{DoxyCompactList}\small\item\em Gets the relative path of an asset. \end{DoxyCompactList}\item
+static String\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a7b337848207b6bc5aebde6ae18e18d54_a7b337848207b6bc5aebde6ae18e18d54}{Get}} (\mbox{[}Not\+Null\mbox{]} Object\mbox{[}$\,$\mbox{]} assets)
+\begin{DoxyCompactList}\small\item\em Converts an array of asset instances to their asset paths. \end{DoxyCompactList}\item
+static \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_afc3f6187881696bfef4a6ab5f09539fe_afc3f6187881696bfef4a6ab5f09539fe}{Get}} (GUID guid)
+\begin{DoxyCompactList}\small\item\em Gets the relative path of an asset. \end{DoxyCompactList}\item
+static GUID \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a942d35c4445bef86b8675fa4ee8893ee_a942d35c4445bef86b8675fa4ee8893ee}{Get\+Guid}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path, Asset\+Path\+To\+GUIDOptions options=Asset\+Path\+To\+GUIDOptions.\+Include\+Recently\+Deleted\+Assets)
+\begin{DoxyCompactList}\small\item\em Returns the GUID for an asset path. \end{DoxyCompactList}\item
+static \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ac408187e90e22a29a6c0bf20a0306532_ac408187e90e22a29a6c0bf20a0306532}{Get\+Scene}} (\mbox{[}Not\+Null\mbox{]} Object instance\+Or\+Asset)
+\begin{DoxyCompactList}\small\item\em Returns the scene\textquotesingle{}s path if the object is instantiated in a scene, otherwise returns the object\textquotesingle{}s path. \end{DoxyCompactList}\item
+static String\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a2d28ed0af9ce1a5b78cfea13d920fbf6_a2d28ed0af9ce1a5b78cfea13d920fbf6}{Get\+Sub\+Folders}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Returns the names of all subfolders in the path. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_afe4dd70515ffc4868599918fc76c32b9_afe4dd70515ffc4868599918fc76c32b9}{Is\+Valid}} (\mbox{[}Not\+Null\mbox{]} String path)
+\begin{DoxyCompactList}\small\item\em Returns true if the provided path is valid. \end{DoxyCompactList}\item
+static implicit \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a8f41e9c71f0bf56b0fe80ef591334128_a8f41e9c71f0bf56b0fe80ef591334128}{operator Path}} (String path)
+\begin{DoxyCompactList}\small\item\em Implicit conversion to Path from a string. \end{DoxyCompactList}\item
+static implicit \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a294e1f7dac5c8247c2f32d50653ff2f6_a294e1f7dac5c8247c2f32d50653ff2f6}{operator String}} (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Implicit conversion to string. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a0a26f18bf392e944599d94a316d0dd9c_a0a26f18bf392e944599d94a316d0dd9c}{operator!=}} (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path1, \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path2)
+\begin{DoxyCompactList}\small\item\em Tests two path instances for inequality. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a4061b79c8350f444d3691461e0f94e95_a4061b79c8350f444d3691461e0f94e95}{operator!=}} (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path1, System.\+Object other)
+\begin{DoxyCompactList}\small\item\em Tests for inequality with an object. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aeada9e1217349c548458a8b0ac2d1fca_aeada9e1217349c548458a8b0ac2d1fca}{operator!=}} (System.\+Object other, \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Tests for inequality with an object. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aba3e55bf4914578717ffd4ec9707c29f_aba3e55bf4914578717ffd4ec9707c29f}{operator==}} (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path1, \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path2)
+\begin{DoxyCompactList}\small\item\em Tests two path instances for equality. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ad65aa0fe0b7d3cd28b1d33eeac3548cd_ad65aa0fe0b7d3cd28b1d33eeac3548cd}{operator==}} (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path1, System.\+Object other)
+\begin{DoxyCompactList}\small\item\em Tests for equality with an object. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a66235cf211f3a38e4149fa48fc685f67_a66235cf211f3a38e4149fa48fc685f67}{operator==}} (System.\+Object other, \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Tests for equality with an object. \end{DoxyCompactList}\item
+static \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_af4219b5ed1497e66fd495b412688ecf3_af4219b5ed1497e66fd495b412688ecf3}{To\+Meta}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Returns the .meta file path for an asset path. \end{DoxyCompactList}\item
+static String\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a698b564cc49ed111277f35dac618252d_a698b564cc49ed111277f35dac618252d}{To\+Strings}} (\mbox{[}Not\+Null\mbox{]} IEnumerable$<$ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} $>$ paths)
+\begin{DoxyCompactList}\small\item\em Converts an IEnumerable collection of Path instances to a string array. \end{DoxyCompactList}\item
+static \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a90bc7d03e89ae59ba4653ff9109f0fec_a90bc7d03e89ae59ba4653ff9109f0fec}{Uniquify\+File\+Name}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Returns the path altered with a numbering if an asset already exists (and is imported) at the path. \end{DoxyCompactList}\end{DoxyCompactItemize}
+\doxysubsubsubsection*{Properties}
+\begin{DoxyCompactItemize}
+\item
+\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a54bbd4600c9787134d849c022cefe90e_a54bbd4600c9787134d849c022cefe90e}{Asset\+Path}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the path to the asset file if the path represents a .meta file. \end{DoxyCompactList}\item
+Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_abd65d5ceb97d69f280079d5bfa8c75ea_abd65d5ceb97d69f280079d5bfa8c75ea}{Exists}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns true if the path exists in the Asset\+Database. \end{DoxyCompactList}\item
+Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a60c6f10f04d962b32a6563c6b842b81c_a60c6f10f04d962b32a6563c6b842b81c}{Exists\+In\+File\+System}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns true if the path exists in the file system. \end{DoxyCompactList}\item
+String \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a66d760f8140181f272630b4f226a56c5_a66d760f8140181f272630b4f226a56c5}{Extension}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the extension of the path. \end{DoxyCompactList}\item
+String \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a5066dd8adab56e4ea54fe46b9db3bd9a_a5066dd8adab56e4ea54fe46b9db3bd9a}{File\+Name}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the file name with extension. \end{DoxyCompactList}\item
+String \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a3693da5482c390a2146fe9dc6d38b197_a3693da5482c390a2146fe9dc6d38b197}{File\+Name\+Without\+Extension}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the file name without extension. \end{DoxyCompactList}\item
+\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a86fde1a385ff90d8002ae30a7c39cab9_a86fde1a385ff90d8002ae30a7c39cab9}{Folder\+Path}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the relative path to the directory the file or folder is in. \end{DoxyCompactList}\item
+static String \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_abd29565587282b14cb265fb107ae0093_abd29565587282b14cb265fb107ae0093}{Full\+Assets\+Path}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the absolute path to the project\textquotesingle{}s {\ttfamily Assets} subfolder. \end{DoxyCompactList}\item
+static String \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a005a32c04a661e398af4f2a6f866242a_a005a32c04a661e398af4f2a6f866242a}{Full\+Library\+Path}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the absolute path to the project\textquotesingle{}s {\ttfamily Library} subfolder. \end{DoxyCompactList}\item
+static String \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a6724fa2743590cd1a81b41b61102e7fe_a6724fa2743590cd1a81b41b61102e7fe}{Full\+Logs\+Path}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the absolute path to the project\textquotesingle{}s {\ttfamily Logs} subfolder. \end{DoxyCompactList}\item
+static String \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ad031047c157ca34623ef3d8794c321a4_ad031047c157ca34623ef3d8794c321a4}{Full\+Packages\+Path}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the absolute path to the project\textquotesingle{}s {\ttfamily Packages} subfolder. \end{DoxyCompactList}\item
+String \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_af15b23e15a17c04d3a45a054a18d6443_af15b23e15a17c04d3a45a054a18d6443}{Full\+Path}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the full (absolute) path with forward slashes as separators. \end{DoxyCompactList}\item
+static String \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a3a4a27e26891e69d91d724cdf661656e_a3a4a27e26891e69d91d724cdf661656e}{Full\+Project\+Path}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the absolute path to the project\textquotesingle{}s root folder. \end{DoxyCompactList}\item
+static String \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ac7167ec9e63c61ff6a42a820af23747c_ac7167ec9e63c61ff6a42a820af23747c}{Full\+Project\+Settings\+Path}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the absolute path to the project\textquotesingle{}s {\ttfamily Project\+Settings} subfolder. \end{DoxyCompactList}\item
+static String \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a77508ff7f04d30b6160f254e53adbeb6_a77508ff7f04d30b6160f254e53adbeb6}{Full\+Project\+Temp\+Path}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the absolute path to the project\textquotesingle{}s {\ttfamily Temp} subfolder. \end{DoxyCompactList}\item
+static String \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a2fcfa4fd2c52adca3fa729bf78e72d3b_a2fcfa4fd2c52adca3fa729bf78e72d3b}{Full\+User\+Settings\+Path}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the absolute path to the project\textquotesingle{}s {\ttfamily User\+Settings} subfolder. \end{DoxyCompactList}\item
+GUID \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a66a3fc7176ae79e7e9ee85df99c5ff7c_a66a3fc7176ae79e7e9ee85df99c5ff7c}{Guid}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the GUID for the path. \end{DoxyCompactList}\item
+\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a0084f5ad8a13c505013748101a81b1df_a0084f5ad8a13c505013748101a81b1df}{Meta\+Path}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the path to the .meta file if the path is an asset file or folder. \end{DoxyCompactList}\item
+String\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a0247c4e1ee282e42b31b89c70bebe85f_a0247c4e1ee282e42b31b89c70bebe85f}{Sub\+Folders}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the names of all folders in a path to a folder. \end{DoxyCompactList}\item
+\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a095641cd17b35305e83b4dcee0704e0b_a095641cd17b35305e83b4dcee0704e0b}{Unique\+File\+Path}}\hspace{0.3cm}{\ttfamily \mbox{[}get\mbox{]}}
+\begin{DoxyCompactList}\small\item\em Returns the path altered with a numbering if an asset already exists (and is imported) at the path. \end{DoxyCompactList}\end{DoxyCompactItemize}
+
+
+\doxysubsubsection{Detailed Description}
+Represents a relative path to an asset file or folder, typically under \textquotesingle{}Assets\textquotesingle{} or \textquotesingle{}Packages\textquotesingle{}.
+
+
+\begin{DoxyItemize}
+\item Guards against inconsistencies like invalid paths (not under project root), illegal characters, etc.
+\item Converts path separators to forward slashes for compatibility with OS X, Linux
+\item Converts absolute paths to relative paths
+\item Implicitly convertible to/from string eg "{}use it like a string path"{}
+\item Provides quick access to File I/O tasks like\+: get file\textquotesingle{}s folder, extension, full path, exists, meta file, etc.
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8cs_source_l00024}{24}} of file \mbox{\hyperlink{_asset_8_path_8cs_source}{Asset.\+Path.\+cs}}.
+
+
+
+\doxysubsubsection{Constructor \& Destructor Documentation}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a14cdcaf6215972759787431b363f763c_a14cdcaf6215972759787431b363f763c}\label{class_code_smile_editor_1_1_asset_1_1_path_a14cdcaf6215972759787431b363f763c_a14cdcaf6215972759787431b363f763c}
+\index{Asset.Path@{Asset.Path}!Path@{Path}}
+\index{Path@{Path}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{Path()}{Path()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}}
+{\footnotesize\ttfamily \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{full\+Or\+Relative\+Path }\end{DoxyParamCaption})}
+
+
+
+Creates an asset path from either an absolute or relative path.
+
+When passing an absolute path, it is required that the absolute path starts with the project\textquotesingle{}s root folder. This safeguards against accidentally using an absolute path from a different project.
+
+A path can also point to other locations in the project root folder where assets may be stored. The allowed subfolders (case insensitive) are\+:
+\begin{DoxyItemize}
+\item Assets
+\item Library
+\item Logs
+\item Packages
+\item Project\+Settings
+\item Temp
+\item User\+Settings
+\end{DoxyItemize}
+
+Example input path\+:
+\begin{DoxyCode}{0}
+\DoxyCodeLine{C:\(\backslash\)Users\(\backslash\)Urso\ Clever\(\backslash\)Untiy\ Porjects\(\backslash\)Firts\ Projcet\(\backslash\)Assets\(\backslash\)something\(\backslash\)file.asset}
+
+\end{DoxyCode}
+ Results in\+:
+\begin{DoxyCode}{0}
+\DoxyCodeLine{Assets/something/file.asset}
+
+\end{DoxyCode}
+
+
+
+\begin{DoxyParams}{Parameters}
+{\em full\+Or\+Relative\+Path} & Relative or absolute path to an asset file or folder.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path}{Code\+Smile\+Editor.\+Asset.\+Path(\+String,\+String,\+String)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path}{Code\+Smile\+Editor.\+Asset.\+Path(\+Object)}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8cs_source_l00223}{223}} of file \mbox{\hyperlink{_asset_8_path_8cs_source}{Asset.\+Path.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00224\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00225\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.NullOrWhitespace(fullOrRelativePath,\ nameof(fullOrRelativePath));}
+\DoxyCodeLine{00226\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ m\_RelativePath\ =\ ToRelative(fullOrRelativePath.ToForwardSlashes());}
+\DoxyCodeLine{00227\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_ab81690d1d82ddd90548e3d804b5afa29_ab81690d1d82ddd90548e3d804b5afa29}\label{class_code_smile_editor_1_1_asset_1_1_path_ab81690d1d82ddd90548e3d804b5afa29_ab81690d1d82ddd90548e3d804b5afa29}
+\index{Asset.Path@{Asset.Path}!Path@{Path}}
+\index{Path@{Path}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{Path()}{Path()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}}
+{\footnotesize\ttfamily \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{folder\+Path, }\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{file\+Name, }\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{extension = {\ttfamily DefaultExtension} }\end{DoxyParamCaption})}
+
+
+
+Creates an asset path by combining folder path, file name and extension.
+
+The default extension is "{}.\+asset"{}. Note that Asset\+Importers rely on file extensions.
+
+Example parameters\+: {\ttfamily "{}\textbackslash{}\+Assets\textbackslash{}\+Some/\+Sub\textbackslash{}\+Dir"{}, "{}\+New File"{}, "{}\+My\+Ext"{}}
+
+Resulting path\+: {\ttfamily "{}\+Assets/\+Some/\+Sub/\+Dir/\+New File.\+myext"{}}
+
+
+\begin{DoxyParams}{Parameters}
+{\em folder\+Path} & Absolute or relative path to a folder. Leading/trailing path separators are trimmed. \\
+\hline
+{\em file\+Name} & Name of the file without extension. Must not contain path separators.\\
+\hline
+{\em extension} & Extension of the file (default\+: \textquotesingle{}asset\textquotesingle{}). Leading dots will be trimmed. Extension will be lowercase. \\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path}{Code\+Smile\+Editor.\+Asset.\+Path(\+String)}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8cs_source_l00251}{251}} of file \mbox{\hyperlink{_asset_8_path_8cs_source}{Asset.\+Path.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00252\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00253\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.NullOrWhitespace(folderPath,\ nameof(folderPath));}
+\DoxyCodeLine{00254\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.NullOrWhitespace(fileName,\ nameof(fileName));}
+\DoxyCodeLine{00255\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.NullOrWhitespace(extension,\ nameof(extension));}
+\DoxyCodeLine{00256\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ContainsPathSeparators(fileName,\ nameof(fileName));}
+\DoxyCodeLine{00257\ }
+\DoxyCodeLine{00258\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ relativeDir\ =\ ToRelative(folderPath.ToForwardSlashes());}
+\DoxyCodeLine{00259\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ m\_RelativePath\ =\ \$\textcolor{stringliteral}{"{}\{relativeDir\}/\{fileName\}.\{extension.TrimStart('.').ToLower()\}"{}};}
+\DoxyCodeLine{00260\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a3d0d7574b95b19be03fdfd90e6c628e2_a3d0d7574b95b19be03fdfd90e6c628e2}\label{class_code_smile_editor_1_1_asset_1_1_path_a3d0d7574b95b19be03fdfd90e6c628e2_a3d0d7574b95b19be03fdfd90e6c628e2}
+\index{Asset.Path@{Asset.Path}!Path@{Path}}
+\index{Path@{Path}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{Path()}{Path()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}}
+{\footnotesize\ttfamily \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})}
+
+
+
+Creates an asset path from an asset instance.
+
+Throws exception if asset is not an asset on disk.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & Instance of an asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path}{Code\+Smile\+Editor.\+Asset.\+Path(\+String)}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8cs_source_l00270}{270}} of file \mbox{\hyperlink{_asset_8_path_8cs_source}{Asset.\+Path.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00271\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00272\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(asset,\ nameof(asset));}
+\DoxyCodeLine{00273\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.NotInDatabase(asset);}
+\DoxyCodeLine{00274\ }
+\DoxyCodeLine{00275\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ m\_RelativePath\ =\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Get}}(asset);}
+\DoxyCodeLine{00276\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+References \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00080}{Asset.\+Path.\+Get()}}.
+
+Here is the call graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=184pt]{class_code_smile_editor_1_1_asset_1_1_path_a3d0d7574b95b19be03fdfd90e6c628e2_a3d0d7574b95b19be03fdfd90e6c628e2_cgraph}
+\end{center}
+\end{figure}
+
+
+\doxysubsubsection{Member Function Documentation}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a707c1a8b6f6fab6ad12485008e38ce41_a707c1a8b6f6fab6ad12485008e38ce41}\label{class_code_smile_editor_1_1_asset_1_1_path_a707c1a8b6f6fab6ad12485008e38ce41_a707c1a8b6f6fab6ad12485008e38ce41}
+\index{Asset.Path@{Asset.Path}!CreateFolders@{CreateFolders}}
+\index{CreateFolders@{CreateFolders}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{CreateFolders()}{CreateFolders()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
+{\footnotesize\ttfamily GUID Create\+Folders (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
+
+
+
+Creates the folders in the path recursively.
+
+The \doxylink{class_code_smile_editor_1_1_asset_1_1_file}{Code\+Smile\+Editor.\+Asset.\+File} write operations use this internally to create any missing folders, so you do not need to call this yourself in those cases.
+
+Path may point to a file. It is assumed that if the last element of the path contains a dot it has an extension and is therefore a file.
+
+\begin{DoxyReturn}{Returns}
+The GUID of the deepest (last) folder in the path.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_aa30592adbaf54202ead85cd483107e55_aa30592adbaf54202ead85cd483107e55}{Code\+Smile\+Editor.\+Asset.\+Path.\+Create\+Folders(\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_aa30592adbaf54202ead85cd483107e55_aa30592adbaf54202ead85cd483107e55}\label{class_code_smile_editor_1_1_asset_1_1_path_aa30592adbaf54202ead85cd483107e55_aa30592adbaf54202ead85cd483107e55}
+\index{Asset.Path@{Asset.Path}!CreateFolders@{CreateFolders}}
+\index{CreateFolders@{CreateFolders}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{CreateFolders()}{CreateFolders()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
+{\footnotesize\ttfamily static GUID Create\+Folders (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Creates any missing folders in the path.
+
+Unlike Asset\+Database.\+Create\+Folder this creates the entire path in one go rather than each folder one by one.
+
+Path may point to either a file or folder. If the last path element has an extension it is considered a file.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to a file or folder.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+GUID of the deepest (last) folder in the path.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.CreateFolder.html}{\texttt{ Asset\+Database.\+Create\+Folder}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00254}{254}} of file \mbox{\hyperlink{_asset_8_path_8_static_8cs_source}{Asset.\+Path.\+Static.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00255\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00256\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(path,\ nameof(path));}
+\DoxyCodeLine{00257\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.PathIsNotValid(path);}
+\DoxyCodeLine{00258\ }
+\DoxyCodeLine{00259\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ae2e7b500cc4d1f97b7c6051181aa833f_ae2e7b500cc4d1f97b7c6051181aa833f}{FileExists}}(path))}
+\DoxyCodeLine{00260\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ path.FolderPath.Guid;}
+\DoxyCodeLine{00261\ }
+\DoxyCodeLine{00262\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ if\ the\ last\ part\ has\ an\ extension\ we\ assume\ the\ path\ points\ to\ a\ file}}
+\DoxyCodeLine{00263\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ isPresumablyFilePath\ =\ String.IsNullOrEmpty(path.Extension)\ ==\ \textcolor{keyword}{false};}
+\DoxyCodeLine{00264\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ folderPath\ =\ isPresumablyFilePath\ ?\ path.FolderPath\ :\ path;}
+\DoxyCodeLine{00265\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe0620f7baaa0c21543f455c_a18386e05fe0620f7baaa0c21543f455c}{FolderExists}}(folderPath))}
+\DoxyCodeLine{00266\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ folderPath.Guid;}
+\DoxyCodeLine{00267\ }
+\DoxyCodeLine{00268\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ folderNames\ =\ ((String)folderPath).Split(\textcolor{keyword}{new}[]\ \{\ \textcolor{charliteral}{'/'}\ \});}
+\DoxyCodeLine{00269\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ folderGuid\ =\ GuidForExistingPath(folderNames[0]);\ \textcolor{comment}{//\ first\ is\ "{}Assets"{}}}
+\DoxyCodeLine{00270\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ partialPath\ =\ folderNames[0];}
+\DoxyCodeLine{00271\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{for}\ (var\ i\ =\ 1;\ i\ <\ folderNames.Length;\ i++)}
+\DoxyCodeLine{00272\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00273\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ partialPath\ +=\ \$\textcolor{stringliteral}{"{}/\{folderNames[i]\}"{}};}
+\DoxyCodeLine{00274\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe0620f7baaa0c21543f455c_a18386e05fe0620f7baaa0c21543f455c}{FolderExists}}(partialPath))}
+\DoxyCodeLine{00275\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00276\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ folderGuid\ =\ GuidForExistingPath(partialPath);}
+\DoxyCodeLine{00277\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{continue};}
+\DoxyCodeLine{00278\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{00279\ }
+\DoxyCodeLine{00280\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ folderGuid\ =\ CreateSubFolder(\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Get}}(folderGuid),\ folderNames[i]);}
+\DoxyCodeLine{00281\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{00282\ }
+\DoxyCodeLine{00283\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ folderGuid;}
+\DoxyCodeLine{00284\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+References \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_ae2e7b500cc4d1f97b7c6051181aa833f_ae2e7b500cc4d1f97b7c6051181aa833f}{Asset.\+Path.\+File\+Exists()}}, \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe0620f7baaa0c21543f455c_a18386e05fe0620f7baaa0c21543f455c}{Asset.\+Path.\+Folder\+Exists()}}, and \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00080}{Asset.\+Path.\+Get()}}.
+
+Here is the call graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=264pt]{class_code_smile_editor_1_1_asset_1_1_path_aa30592adbaf54202ead85cd483107e55_aa30592adbaf54202ead85cd483107e55_cgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a16e59bfb7ec5500d91fa1e8baaed7ec3_a16e59bfb7ec5500d91fa1e8baaed7ec3}\label{class_code_smile_editor_1_1_asset_1_1_path_a16e59bfb7ec5500d91fa1e8baaed7ec3_a16e59bfb7ec5500d91fa1e8baaed7ec3}
+\index{Asset.Path@{Asset.Path}!Equals@{Equals}}
+\index{Equals@{Equals}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{Equals()}{Equals()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}}
+{\footnotesize\ttfamily Boolean Equals (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{other }\end{DoxyParamCaption})}
+
+
+
+Tests another path for equality.
+
+They are equal if their internal relative path strings are equal.
+
+
+\begin{DoxyParams}{Parameters}
+{\em other} & A path instance or null.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if this path equals the other path. False otherwise.
+\end{DoxyReturn}
+
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8cs_source_l00284}{284}} of file \mbox{\hyperlink{_asset_8_path_8cs_source}{Asset.\+Path.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00285\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00286\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (ReferenceEquals(other,\ \textcolor{keyword}{null}))}
+\DoxyCodeLine{00287\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
+\DoxyCodeLine{00288\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (ReferenceEquals(\textcolor{keyword}{this},\ other))}
+\DoxyCodeLine{00289\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{true};}
+\DoxyCodeLine{00290\ }
+\DoxyCodeLine{00291\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ m\_RelativePath.Equals(other.m\_RelativePath);}
+\DoxyCodeLine{00292\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+Referenced by \mbox{\hyperlink{_asset_8_path_8cs_source_l00430}{Asset.\+Path.\+Equals()}}, and \mbox{\hyperlink{_asset_8_path_8cs_source_l00323}{Asset.\+Path.\+operator==()}}.
+
+Here is the caller graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=225pt]{class_code_smile_editor_1_1_asset_1_1_path_a16e59bfb7ec5500d91fa1e8baaed7ec3_a16e59bfb7ec5500d91fa1e8baaed7ec3_icgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a7fe15db208e12203a2ddd105a60446a0_a7fe15db208e12203a2ddd105a60446a0}\label{class_code_smile_editor_1_1_asset_1_1_path_a7fe15db208e12203a2ddd105a60446a0_a7fe15db208e12203a2ddd105a60446a0}
+\index{Asset.Path@{Asset.Path}!Equals@{Equals}}
+\index{Equals@{Equals}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{Equals()}{Equals()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}}
+{\footnotesize\ttfamily Boolean Equals (\begin{DoxyParamCaption}\item[{String}]{other }\end{DoxyParamCaption})}
+
+
+
+Tests another path for equality.
+
+They are equal if their internal relative path strings are equal.
+
+The string is elevated to a Path instance, and then compared.
+
+
+\begin{DoxyParams}{Parameters}
+{\em other} & A path string or null.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if this path equals the other path. False otherwise.
+\end{DoxyReturn}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a37cffbb9ed1db3b0e77664ad01b6fd01_a37cffbb9ed1db3b0e77664ad01b6fd01}\label{class_code_smile_editor_1_1_asset_1_1_path_a37cffbb9ed1db3b0e77664ad01b6fd01_a37cffbb9ed1db3b0e77664ad01b6fd01}
+\index{Asset.Path@{Asset.Path}!Equals@{Equals}}
+\index{Equals@{Equals}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{Equals()}{Equals()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}}
+{\footnotesize\ttfamily override Boolean Equals (\begin{DoxyParamCaption}\item[{System\+::\+Object}]{obj }\end{DoxyParamCaption})}
+
+
+
+Tests path for equality with an object.
+
+If the object is a Path or String will use the respective Equals method for these types. In all other cases returns false.
+
+
+\begin{DoxyParams}{Parameters}
+{\em obj} & \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if the path equals the input string or Path. False otherwise or if input is neither string nor Path.
+\end{DoxyReturn}
+
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8cs_source_l00430}{430}} of file \mbox{\hyperlink{_asset_8_path_8cs_source}{Asset.\+Path.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00431\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00432\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (obj\ is\ Path\ path)}
+\DoxyCodeLine{00433\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a16e59bfb7ec5500d91fa1e8baaed7ec3_a16e59bfb7ec5500d91fa1e8baaed7ec3}{Equals}}(path);}
+\DoxyCodeLine{00434\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (obj\ is\ String\ str)}
+\DoxyCodeLine{00435\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_a16e59bfb7ec5500d91fa1e8baaed7ec3_a16e59bfb7ec5500d91fa1e8baaed7ec3}{Equals}}(str);}
+\DoxyCodeLine{00436\ }
+\DoxyCodeLine{00437\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
+\DoxyCodeLine{00438\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+References \mbox{\hyperlink{_asset_8_path_8cs_source_l00284}{Asset.\+Path.\+Equals()}}.
+
+Here is the call graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=208pt]{class_code_smile_editor_1_1_asset_1_1_path_a37cffbb9ed1db3b0e77664ad01b6fd01_a37cffbb9ed1db3b0e77664ad01b6fd01_cgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_ae2e7b500cc4d1f97b7c6051181aa833f_ae2e7b500cc4d1f97b7c6051181aa833f}\label{class_code_smile_editor_1_1_asset_1_1_path_ae2e7b500cc4d1f97b7c6051181aa833f_ae2e7b500cc4d1f97b7c6051181aa833f}
+\index{Asset.Path@{Asset.Path}!FileExists@{FileExists}}
+\index{FileExists@{FileExists}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{FileExists()}{FileExists()}}
+{\footnotesize\ttfamily static Boolean File\+Exists (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tests if the given file exists in the file system.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to a file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if the file exists in the file system. False otherwise.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe0620f7baaa0c21543f455c_a18386e05fe0620f7baaa0c21543f455c}{Code\+Smile\+Editor.\+Asset.\+Path.\+Folder\+Exists}
+\end{DoxyItemize}
+
+Referenced by \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00254}{Asset.\+Path.\+Create\+Folders()}}.
+
+Here is the caller graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=252pt]{class_code_smile_editor_1_1_asset_1_1_path_ae2e7b500cc4d1f97b7c6051181aa833f_ae2e7b500cc4d1f97b7c6051181aa833f_icgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe0620f7baaa0c21543f455c_a18386e05fe0620f7baaa0c21543f455c}\label{class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe0620f7baaa0c21543f455c_a18386e05fe0620f7baaa0c21543f455c}
+\index{Asset.Path@{Asset.Path}!FolderExists@{FolderExists}}
+\index{FolderExists@{FolderExists}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{FolderExists()}{FolderExists()}}
+{\footnotesize\ttfamily static Boolean Folder\+Exists (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tests if the given folder exists in the file system.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to a folder.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if the folder exists in the file system. False otherwise.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_ae2e7b500cc4d1f97b7c6051181aa833f_ae2e7b500cc4d1f97b7c6051181aa833f}{Code\+Smile\+Editor.\+Asset.\+Path.\+File\+Exists}
+\end{DoxyItemize}
+
+Referenced by \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00254}{Asset.\+Path.\+Create\+Folders()}}.
+
+Here is the caller graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=264pt]{class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe0620f7baaa0c21543f455c_a18386e05fe0620f7baaa0c21543f455c_icgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a18298002ca84eab9c56ac238dedc53e8_a18298002ca84eab9c56ac238dedc53e8}\label{class_code_smile_editor_1_1_asset_1_1_path_a18298002ca84eab9c56ac238dedc53e8_a18298002ca84eab9c56ac238dedc53e8}
+\index{Asset.Path@{Asset.Path}!FromMeta@{FromMeta}}
+\index{FromMeta@{FromMeta}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{FromMeta()}{FromMeta()}}
+{\footnotesize\ttfamily static \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} From\+Meta (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns the asset\textquotesingle{}s file path from a .meta file path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to a .meta file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The corresponding path to an asset file or folder.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_af4219b5ed1497e66fd495b412688ecf3_af4219b5ed1497e66fd495b412688ecf3}{Code\+Smile\+Editor.\+Asset.\+Path.\+To\+Meta}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetAssetPathFromTextMetaFilePath.html}{\texttt{ Asset\+Database.\+Get\+Asset\+Path\+From\+Text\+Meta\+File\+Path}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}\label{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}
+\index{Asset.Path@{Asset.Path}!Get@{Get}}
+\index{Get@{Get}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{Get()}{Get()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}}
+{\footnotesize\ttfamily static \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} Get (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Gets the relative path of an asset.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & Instance of an asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The relative path to the asset file, or null if the object is not an asset.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_afc3f6187881696bfef4a6ab5f09539fe_afc3f6187881696bfef4a6ab5f09539fe}{Code\+Smile\+Editor.\+Asset.\+Path.\+Get(\+GUID)}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetAssetPath.html}{\texttt{ Asset\+Database.\+Get\+Asset\+Path}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00080}{80}} of file \mbox{\hyperlink{_asset_8_path_8_static_8cs_source}{Asset.\+Path.\+Static.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00081\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00082\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ path\ =\ AssetDatabase.GetAssetPath(asset);}
+\DoxyCodeLine{00083\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ String.IsNullOrEmpty(path)\ ?\ null\ :\ (Path)path;}
+\DoxyCodeLine{00084\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+Referenced by \mbox{\hyperlink{_asset_8_path_8cs_source_l00270}{Asset.\+Path.\+Path()}}, \mbox{\hyperlink{_asset_8_version_control_8cs_source_l00066}{Asset.\+Version\+Control.\+Can\+Make\+Editable()}}, \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00254}{Asset.\+Path.\+Create\+Folders()}}, \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00114}{Asset.\+Path.\+Get()}}, \mbox{\hyperlink{_asset_8_static_8cs_source_l00042}{Asset.\+Get\+Main\+Type()}}, and \mbox{\hyperlink{_asset_8_file_8cs_source_l00440}{Asset.\+File.\+Load\+Main$<$ T $>$()}}.
+
+Here is the caller graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=301pt]{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8_icgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a7b337848207b6bc5aebde6ae18e18d54_a7b337848207b6bc5aebde6ae18e18d54}\label{class_code_smile_editor_1_1_asset_1_1_path_a7b337848207b6bc5aebde6ae18e18d54_a7b337848207b6bc5aebde6ae18e18d54}
+\index{Asset.Path@{Asset.Path}!Get@{Get}}
+\index{Get@{Get}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{Get()}{Get()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}}
+{\footnotesize\ttfamily static String\mbox{[}$\,$\mbox{]} Get (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object\mbox{[}$\,$\mbox{]}}]{assets }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Converts an array of asset instances to their asset paths.
+
+
+\begin{DoxyParams}{Parameters}
+{\em assets} & Asset instances.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+An array of paths for each input object. The returned array has the same size. Items can be null if the input object was either null or not an asset.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Code\+Smile\+Editor.\+Asset.\+Path.\+Get(\+Object)}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetAssetPath.html}{\texttt{ Asset\+Database.\+Get\+Asset\+Path}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00114}{114}} of file \mbox{\hyperlink{_asset_8_path_8_static_8cs_source}{Asset.\+Path.\+Static.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00115\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00116\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(assets,\ nameof(assets));}
+\DoxyCodeLine{00117\ }
+\DoxyCodeLine{00118\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ objectCount\ =\ assets.Length;}
+\DoxyCodeLine{00119\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ paths\ =\ \textcolor{keyword}{new}\ String[objectCount];}
+\DoxyCodeLine{00120\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{for}\ (var\ i\ =\ 0;\ i\ <\ objectCount;\ i++)}
+\DoxyCodeLine{00121\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ paths[i]\ =\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Get}}(assets[i]);}
+\DoxyCodeLine{00122\ }
+\DoxyCodeLine{00123\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ paths;}
+\DoxyCodeLine{00124\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+References \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00080}{Asset.\+Path.\+Get()}}.
+
+Here is the call graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=180pt]{class_code_smile_editor_1_1_asset_1_1_path_a7b337848207b6bc5aebde6ae18e18d54_a7b337848207b6bc5aebde6ae18e18d54_cgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_afc3f6187881696bfef4a6ab5f09539fe_afc3f6187881696bfef4a6ab5f09539fe}\label{class_code_smile_editor_1_1_asset_1_1_path_afc3f6187881696bfef4a6ab5f09539fe_afc3f6187881696bfef4a6ab5f09539fe}
+\index{Asset.Path@{Asset.Path}!Get@{Get}}
+\index{Get@{Get}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{Get()}{Get()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}}
+{\footnotesize\ttfamily static \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} Get (\begin{DoxyParamCaption}\item[{GUID}]{guid }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Gets the relative path of an asset.
+
+
+\begin{DoxyParams}{Parameters}
+{\em guid} & GUID of an asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The relative path to the asset file, or null if the object is not an asset.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{Code\+Smile\+Editor.\+Asset.\+Path.\+Get(\+Object)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_a7b337848207b6bc5aebde6ae18e18d54_a7b337848207b6bc5aebde6ae18e18d54}{Code\+Smile\+Editor.\+Asset.\+Path.\+Get(\+Object\mbox{[}$\,$\mbox{]})}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetAssetPath.html}{\texttt{ Asset\+Database.\+Get\+Asset\+Path}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00096}{96}} of file \mbox{\hyperlink{_asset_8_path_8_static_8cs_source}{Asset.\+Path.\+Static.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00097\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00098\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ path\ =\ AssetDatabase.GUIDToAssetPath(guid);}
+\DoxyCodeLine{00099\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ String.IsNullOrEmpty(path)\ ?\ null\ :\ (Path)path;}
+\DoxyCodeLine{00100\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a942d35c4445bef86b8675fa4ee8893ee_a942d35c4445bef86b8675fa4ee8893ee}\label{class_code_smile_editor_1_1_asset_1_1_path_a942d35c4445bef86b8675fa4ee8893ee_a942d35c4445bef86b8675fa4ee8893ee}
+\index{Asset.Path@{Asset.Path}!GetGuid@{GetGuid}}
+\index{GetGuid@{GetGuid}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{GetGuid()}{GetGuid()}}
+{\footnotesize\ttfamily static GUID Get\+Guid (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path, }\item[{Asset\+Path\+To\+GUIDOptions}]{options = {\ttfamily AssetPathToGUIDOptions.IncludeRecentlyDeletedAssets} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns the GUID for an asset path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset.\\
+\hline
+{\em options} & \href{https://docs.unity3d.com/ScriptReference/AssetPathToGUIDOptions.html}{\texttt{ Asset\+Path\+To\+GUIDOptions}} \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+GUID of the asset or an empty GUID if the path does not exist in the database.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_abd65d5ceb97d69f280079d5bfa8c75ea_abd65d5ceb97d69f280079d5bfa8c75ea}{Code\+Smile\+Editor.\+Asset.\+Path.\+Exists}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.AssetPathToGUID.html}{\texttt{ Asset\+Database.\+Asset\+Path\+To\+GUID}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_ab86e9330a2bab918bbad0e2cbadb58a8_ab86e9330a2bab918bbad0e2cbadb58a8}\label{class_code_smile_editor_1_1_asset_1_1_path_ab86e9330a2bab918bbad0e2cbadb58a8_ab86e9330a2bab918bbad0e2cbadb58a8}
+\index{Asset.Path@{Asset.Path}!GetHashCode@{GetHashCode}}
+\index{GetHashCode@{GetHashCode}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{GetHashCode()}{GetHashCode()}}
+{\footnotesize\ttfamily override Int32 Get\+Hash\+Code (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
+
+
+
+Returns the internal path string\textquotesingle{}s hash code.
+
+\begin{DoxyReturn}{Returns}
+The hash code of the relative path string.
+\end{DoxyReturn}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_ac408187e90e22a29a6c0bf20a0306532_ac408187e90e22a29a6c0bf20a0306532}\label{class_code_smile_editor_1_1_asset_1_1_path_ac408187e90e22a29a6c0bf20a0306532_ac408187e90e22a29a6c0bf20a0306532}
+\index{Asset.Path@{Asset.Path}!GetScene@{GetScene}}
+\index{GetScene@{GetScene}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{GetScene()}{GetScene()}}
+{\footnotesize\ttfamily static \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} Get\+Scene (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{instance\+Or\+Asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns the scene\textquotesingle{}s path if the object is instantiated in a scene, otherwise returns the object\textquotesingle{}s path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em instance\+Or\+Asset} & An object instance or asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The scene path if the object is an instance in the scene. Otherwise the asset\textquotesingle{}s path.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetAssetOrScenePath.html}{\texttt{ Asset\+Database.\+Get\+Asset\+Or\+Scene\+Path}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a2d28ed0af9ce1a5b78cfea13d920fbf6_a2d28ed0af9ce1a5b78cfea13d920fbf6}\label{class_code_smile_editor_1_1_asset_1_1_path_a2d28ed0af9ce1a5b78cfea13d920fbf6_a2d28ed0af9ce1a5b78cfea13d920fbf6}
+\index{Asset.Path@{Asset.Path}!GetSubFolders@{GetSubFolders}}
+\index{GetSubFolders@{GetSubFolders}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{GetSubFolders()}{GetSubFolders()}}
+{\footnotesize\ttfamily static String\mbox{[}$\,$\mbox{]} Get\+Sub\+Folders (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns the names of all subfolders in the path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to a folder.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+Names of each subfolder in the path. Empty array if there are no subfolders or the path points to a file.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetSubFolders.html}{\texttt{ Asset\+Database.\+Get\+Sub\+Folders}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_afe4dd70515ffc4868599918fc76c32b9_afe4dd70515ffc4868599918fc76c32b9}\label{class_code_smile_editor_1_1_asset_1_1_path_afe4dd70515ffc4868599918fc76c32b9_afe4dd70515ffc4868599918fc76c32b9}
+\index{Asset.Path@{Asset.Path}!IsValid@{IsValid}}
+\index{IsValid@{IsValid}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{IsValid()}{IsValid()}}
+{\footnotesize\ttfamily static Boolean Is\+Valid (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns true if the provided path is valid.
+
+If this returns false \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message} contains the error message.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & String representation of an absolute or relative path.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if the string is a valid path and contains no illegal characters for a path or file, and isn\textquotesingle{}t too long. False in all other cases.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00194}{194}} of file \mbox{\hyperlink{_asset_8_path_8_static_8cs_source}{Asset.\+Path.\+Static.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00195\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00196\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ isValid\ =\ \textcolor{keyword}{true};}
+\DoxyCodeLine{00197\ }
+\DoxyCodeLine{00198\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{try}}
+\DoxyCodeLine{00199\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00200\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ System.IO\ will\ throw\ for\ most\ illegal\ chars,\ plus\ some\ extra\ checks}}
+\DoxyCodeLine{00201\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ fileName\ =\ System.IO.Path.GetFileName(path);}
+\DoxyCodeLine{00202\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ folderName\ =\ System.IO.Path.GetDirectoryName(path);}
+\DoxyCodeLine{00203\ }
+\DoxyCodeLine{00204\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ check\ folder\ name\ for\ some\ chars\ that\ System.IO\ allows\ in\ GetDirectoryName}}
+\DoxyCodeLine{00205\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ testIllegalChars\ =\ \textcolor{keyword}{new}\ Func(c\ =>\ c\ ==\ \textcolor{charliteral}{'*'}\ ||\ c\ ==\ \textcolor{charliteral}{'?'}\ ||\ c\ ==\ \textcolor{charliteral}{':'});}
+\DoxyCodeLine{00206\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ isValid\ =\ folderName.Any(testIllegalChars)\ ==\ \textcolor{keyword}{false};}
+\DoxyCodeLine{00207\ }
+\DoxyCodeLine{00208\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (isValid)}
+\DoxyCodeLine{00209\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00210\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{comment}{//\ check\ filename\ for\ some\ chars\ that\ System.IO\ allows\ in\ GetFileName}}
+\DoxyCodeLine{00211\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ fileName\ =\ path.Substring(folderName.Length,\ path.Length\ -\/\ folderName.Length);}
+\DoxyCodeLine{00212\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ isValid\ =\ fileName.Any(testIllegalChars)\ ==\ \textcolor{keyword}{false};}
+\DoxyCodeLine{00213\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{00214\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{00215\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{catch}\ (Exception\ ex)}
+\DoxyCodeLine{00216\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00217\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ SetLastErrorMessage(\$\textcolor{stringliteral}{"{}\{ex.Message\}\ =>\ \(\backslash\)"{}\{path\}\(\backslash\)"{}"{}});}
+\DoxyCodeLine{00218\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ isValid\ =\ \textcolor{keyword}{false};}
+\DoxyCodeLine{00219\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{00220\ }
+\DoxyCodeLine{00221\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ isValid;}
+\DoxyCodeLine{00222\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_abb6aabf6ef3879246a9410a4b03cff6a_abb6aabf6ef3879246a9410a4b03cff6a}\label{class_code_smile_editor_1_1_asset_1_1_path_abb6aabf6ef3879246a9410a4b03cff6a_abb6aabf6ef3879246a9410a4b03cff6a}
+\index{Asset.Path@{Asset.Path}!OpenExternal@{OpenExternal}}
+\index{OpenExternal@{OpenExternal}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{OpenExternal()}{OpenExternal()}}
+{\footnotesize\ttfamily void Open\+External (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
+
+
+
+Opens the folder externally, for example File Explorer (Windows) or Finder (Mac).
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/Application.OpenURL.html}{\texttt{ Application.\+Open\+URL}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a8f41e9c71f0bf56b0fe80ef591334128_a8f41e9c71f0bf56b0fe80ef591334128}\label{class_code_smile_editor_1_1_asset_1_1_path_a8f41e9c71f0bf56b0fe80ef591334128_a8f41e9c71f0bf56b0fe80ef591334128}
+\index{Asset.Path@{Asset.Path}!operator Path@{operator Path}}
+\index{operator Path@{operator Path}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{operator Path()}{operator Path()}}
+{\footnotesize\ttfamily static implicit operator \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} (\begin{DoxyParamCaption}\item[{String}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Implicit conversion to Path from a string.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Input string path. Path may be absolute or relative.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+Relative path as string.
+\end{DoxyReturn}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a294e1f7dac5c8247c2f32d50653ff2f6_a294e1f7dac5c8247c2f32d50653ff2f6}\label{class_code_smile_editor_1_1_asset_1_1_path_a294e1f7dac5c8247c2f32d50653ff2f6_a294e1f7dac5c8247c2f32d50653ff2f6}
+\index{Asset.Path@{Asset.Path}!operator String@{operator String}}
+\index{operator String@{operator String}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{operator String()}{operator String()}}
+{\footnotesize\ttfamily static implicit operator String (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Implicit conversion to string.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Input path.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+Relative path as string.
+\end{DoxyReturn}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a0a26f18bf392e944599d94a316d0dd9c_a0a26f18bf392e944599d94a316d0dd9c}\label{class_code_smile_editor_1_1_asset_1_1_path_a0a26f18bf392e944599d94a316d0dd9c_a0a26f18bf392e944599d94a316d0dd9c}
+\index{Asset.Path@{Asset.Path}!operator"!=@{operator"!=}}
+\index{operator"!=@{operator"!=}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{operator"!=()}{operator!=()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}}
+{\footnotesize\ttfamily static Boolean operator!= (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path1, }\item[{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path2 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tests two path instances for inequality.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path1} & A Path.\\
+\hline
+{\em path2} & Another path.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+
+\end{DoxyReturn}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a4061b79c8350f444d3691461e0f94e95_a4061b79c8350f444d3691461e0f94e95}\label{class_code_smile_editor_1_1_asset_1_1_path_a4061b79c8350f444d3691461e0f94e95_a4061b79c8350f444d3691461e0f94e95}
+\index{Asset.Path@{Asset.Path}!operator"!=@{operator"!=}}
+\index{operator"!=@{operator"!=}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{operator"!=()}{operator!=()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}}
+{\footnotesize\ttfamily static Boolean operator!= (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path1, }\item[{System.\+Object}]{other }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tests for inequality with an object.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path1} & A Path.\\
+\hline
+{\em other} & Any instance.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+
+\end{DoxyReturn}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_aeada9e1217349c548458a8b0ac2d1fca_aeada9e1217349c548458a8b0ac2d1fca}\label{class_code_smile_editor_1_1_asset_1_1_path_aeada9e1217349c548458a8b0ac2d1fca_aeada9e1217349c548458a8b0ac2d1fca}
+\index{Asset.Path@{Asset.Path}!operator"!=@{operator"!=}}
+\index{operator"!=@{operator"!=}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{operator"!=()}{operator!=()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}}
+{\footnotesize\ttfamily static Boolean operator!= (\begin{DoxyParamCaption}\item[{System.\+Object}]{other, }\item[{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tests for inequality with an object.
+
+
+\begin{DoxyParams}{Parameters}
+{\em other} & Any instance.\\
+\hline
+{\em path} & A Path.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+
+\end{DoxyReturn}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_aba3e55bf4914578717ffd4ec9707c29f_aba3e55bf4914578717ffd4ec9707c29f}\label{class_code_smile_editor_1_1_asset_1_1_path_aba3e55bf4914578717ffd4ec9707c29f_aba3e55bf4914578717ffd4ec9707c29f}
+\index{Asset.Path@{Asset.Path}!operator==@{operator==}}
+\index{operator==@{operator==}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{operator==()}{operator==()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}}
+{\footnotesize\ttfamily static Boolean operator== (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path1, }\item[{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path2 }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tests two path instances for equality.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path1} & A Path.\\
+\hline
+{\em path2} & Another path.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if both paths point to the same location. False otherwise.
+\end{DoxyReturn}
+
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8cs_source_l00323}{323}} of file \mbox{\hyperlink{_asset_8_path_8cs_source}{Asset.\+Path.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00324\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00325\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (ReferenceEquals(path1,\ path2))}
+\DoxyCodeLine{00326\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{true};}
+\DoxyCodeLine{00327\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (ReferenceEquals(path1,\ \textcolor{keyword}{null}))}
+\DoxyCodeLine{00328\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
+\DoxyCodeLine{00329\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (ReferenceEquals(path2,\ \textcolor{keyword}{null}))}
+\DoxyCodeLine{00330\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \textcolor{keyword}{false};}
+\DoxyCodeLine{00331\ }
+\DoxyCodeLine{00332\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ path1.Equals(path2);}
+\DoxyCodeLine{00333\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+References \mbox{\hyperlink{_asset_8_path_8cs_source_l00284}{Asset.\+Path.\+Equals()}}.
+
+Here is the call graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=225pt]{class_code_smile_editor_1_1_asset_1_1_path_aba3e55bf4914578717ffd4ec9707c29f_aba3e55bf4914578717ffd4ec9707c29f_cgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_ad65aa0fe0b7d3cd28b1d33eeac3548cd_ad65aa0fe0b7d3cd28b1d33eeac3548cd}\label{class_code_smile_editor_1_1_asset_1_1_path_ad65aa0fe0b7d3cd28b1d33eeac3548cd_ad65aa0fe0b7d3cd28b1d33eeac3548cd}
+\index{Asset.Path@{Asset.Path}!operator==@{operator==}}
+\index{operator==@{operator==}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{operator==()}{operator==()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}}
+{\footnotesize\ttfamily static Boolean operator== (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path1, }\item[{System.\+Object}]{other }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tests for equality with an object.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path1} & A Path.\\
+\hline
+{\em other} & Any instance.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if both paths point to the same location. False otherwise.
+\end{DoxyReturn}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a66235cf211f3a38e4149fa48fc685f67_a66235cf211f3a38e4149fa48fc685f67}\label{class_code_smile_editor_1_1_asset_1_1_path_a66235cf211f3a38e4149fa48fc685f67_a66235cf211f3a38e4149fa48fc685f67}
+\index{Asset.Path@{Asset.Path}!operator==@{operator==}}
+\index{operator==@{operator==}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{operator==()}{operator==()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}}
+{\footnotesize\ttfamily static Boolean operator== (\begin{DoxyParamCaption}\item[{System.\+Object}]{other, }\item[{\mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tests for equality with an object.
+
+
+\begin{DoxyParams}{Parameters}
+{\em other} & Any instance.\\
+\hline
+{\em path} & A Path.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if both paths point to the same location. False otherwise.
+\end{DoxyReturn}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_ab20dbdb9f71c4595e668cf0cb5f5ad7c_ab20dbdb9f71c4595e668cf0cb5f5ad7c}\label{class_code_smile_editor_1_1_asset_1_1_path_ab20dbdb9f71c4595e668cf0cb5f5ad7c_ab20dbdb9f71c4595e668cf0cb5f5ad7c}
+\index{Asset.Path@{Asset.Path}!Rename@{Rename}}
+\index{Rename@{Rename}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{Rename()}{Rename()}}
+{\footnotesize\ttfamily void Rename (\begin{DoxyParamCaption}\item[{String}]{new\+File\+Or\+Folder\+Name }\end{DoxyParamCaption})}
+
+
+
+Renames the last element of the \doxylink{class_code_smile_editor_1_1_asset_1_1_path}{Code\+Smile\+Editor.\+Asset.\+Path} instance.
+
+NOTE\+: This does {\bfseries{not}} rename a file/folder on disk! It renames the Path instance.
+
+When renaming a file you must specifiy the new filename with extension.
+
+
+\begin{DoxyParams}{Parameters}
+{\em new\+File\+Or\+Folder\+Name} & Name of a folder or file with extension. Does nothing if input is null or empty.\\
+\hline
+\end{DoxyParams}
+
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8cs_source_l00391}{391}} of file \mbox{\hyperlink{_asset_8_path_8cs_source}{Asset.\+Path.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00392\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00393\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (String.IsNullOrEmpty(newFileOrFolderName)\ ==\ \textcolor{keyword}{false})}
+\DoxyCodeLine{00394\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ m\_RelativePath\ =\ \$\textcolor{stringliteral}{"{}\{FolderPath\}/\{System.IO.Path.GetFileName(newFileOrFolderName)\}"{}};}
+\DoxyCodeLine{00395\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_af4219b5ed1497e66fd495b412688ecf3_af4219b5ed1497e66fd495b412688ecf3}\label{class_code_smile_editor_1_1_asset_1_1_path_af4219b5ed1497e66fd495b412688ecf3_af4219b5ed1497e66fd495b412688ecf3}
+\index{Asset.Path@{Asset.Path}!ToMeta@{ToMeta}}
+\index{ToMeta@{ToMeta}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{ToMeta()}{ToMeta()}}
+{\footnotesize\ttfamily static \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} To\+Meta (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns the .meta file path for an asset path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The corresponding .meta file path.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_a18298002ca84eab9c56ac238dedc53e8_a18298002ca84eab9c56ac238dedc53e8}{Code\+Smile\+Editor.\+Asset.\+Path.\+From\+Meta}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetTextMetaFilePathFromAssetPath.html}{\texttt{ Asset\+Database.\+Get\+Text\+Meta\+File\+Path\+From\+Asset\+Path}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a012fbb0f39e57c0a44ec83dd408fcda3_a012fbb0f39e57c0a44ec83dd408fcda3}\label{class_code_smile_editor_1_1_asset_1_1_path_a012fbb0f39e57c0a44ec83dd408fcda3_a012fbb0f39e57c0a44ec83dd408fcda3}
+\index{Asset.Path@{Asset.Path}!ToString@{ToString}}
+\index{ToString@{ToString}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{ToString()}{ToString()}}
+{\footnotesize\ttfamily override String To\+String (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
+
+
+
+Returns the relative path as string.
+
+Same as implicit string conversion.
+
+\begin{DoxyReturn}{Returns}
+The relative path as a string.
+\end{DoxyReturn}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a698b564cc49ed111277f35dac618252d_a698b564cc49ed111277f35dac618252d}\label{class_code_smile_editor_1_1_asset_1_1_path_a698b564cc49ed111277f35dac618252d_a698b564cc49ed111277f35dac618252d}
+\index{Asset.Path@{Asset.Path}!ToStrings@{ToStrings}}
+\index{ToStrings@{ToStrings}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{ToStrings()}{ToStrings()}}
+{\footnotesize\ttfamily static String\mbox{[}$\,$\mbox{]} To\+Strings (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} IEnumerable$<$ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} $>$}]{paths }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Converts an IEnumerable collection of Path instances to a string array.
+
+
+\begin{DoxyParams}{Parameters}
+{\em paths} & Input paths.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+Relative paths as strings.
+\end{DoxyReturn}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a90bc7d03e89ae59ba4653ff9109f0fec_a90bc7d03e89ae59ba4653ff9109f0fec}\label{class_code_smile_editor_1_1_asset_1_1_path_a90bc7d03e89ae59ba4653ff9109f0fec_a90bc7d03e89ae59ba4653ff9109f0fec}
+\index{Asset.Path@{Asset.Path}!UniquifyFileName@{UniquifyFileName}}
+\index{UniquifyFileName@{UniquifyFileName}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{UniquifyFileName()}{UniquifyFileName()}}
+{\footnotesize\ttfamily static \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} Uniquify\+File\+Name (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns the path altered with a numbering if an asset already exists (and is imported) at the path.
+
+See also\+: Project Settings =\texorpdfstring{$>$}{>} Editor =\texorpdfstring{$>$}{>} Numbering Scheme
+
+PS\+: "{}\+Uniquify"{} is a proper english verb. It means "{}to make unique"{}. Methods carrying this verb are commonly found in SQL database APIs.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & The input path.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+The path possibly altered with a number in the last path element.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GenerateUniqueAssetPath.html}{\texttt{ Asset\+Database.\+Generate\+Unique\+Asset\+Path}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00314}{314}} of file \mbox{\hyperlink{_asset_8_path_8_static_8cs_source}{Asset.\+Path.\+Static.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00315\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00316\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ uniquePath\ =\ AssetDatabase.GenerateUniqueAssetPath(path);}
+\DoxyCodeLine{00317\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ String.IsNullOrEmpty(uniquePath)\ ?\ path\ :\ uniquePath;}
+\DoxyCodeLine{00318\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+\doxysubsubsection{Property Documentation}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a54bbd4600c9787134d849c022cefe90e_a54bbd4600c9787134d849c022cefe90e}\label{class_code_smile_editor_1_1_asset_1_1_path_a54bbd4600c9787134d849c022cefe90e_a54bbd4600c9787134d849c022cefe90e}
+\index{Asset.Path@{Asset.Path}!AssetPath@{AssetPath}}
+\index{AssetPath@{AssetPath}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{AssetPath}{AssetPath}}
+{\footnotesize\ttfamily \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} Asset\+Path\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns the path to the asset file if the path represents a .meta file.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_a0084f5ad8a13c505013748101a81b1df_a0084f5ad8a13c505013748101a81b1df}{Code\+Smile\+Editor.\+Asset.\+Path.\+Meta\+Path}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_a18298002ca84eab9c56ac238dedc53e8_a18298002ca84eab9c56ac238dedc53e8}{Code\+Smile\+Editor.\+Asset.\+Path.\+From\+Meta}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetAssetPathFromTextMetaFilePath.html}{\texttt{ Asset\+Database.\+Get\+Asset\+Path\+From\+Text\+Meta\+File\+Path}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8cs_source_l00108}{108}} of file \mbox{\hyperlink{_asset_8_path_8cs_source}{Asset.\+Path.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_abd65d5ceb97d69f280079d5bfa8c75ea_abd65d5ceb97d69f280079d5bfa8c75ea}\label{class_code_smile_editor_1_1_asset_1_1_path_abd65d5ceb97d69f280079d5bfa8c75ea_abd65d5ceb97d69f280079d5bfa8c75ea}
+\index{Asset.Path@{Asset.Path}!Exists@{Exists}}
+\index{Exists@{Exists}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{Exists}{Exists}}
+{\footnotesize\ttfamily Boolean Exists\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns true if the path exists in the Asset\+Database.
+
+This may still return true for asset files that have been deleted externally if those changes have not been imported via \doxylink{class_code_smile_editor_1_1_asset_1_1_database_a7c993d64861e62fbdcff3700690b2318_a7c993d64861e62fbdcff3700690b2318}{Code\+Smile\+Editor.\+Asset.\+Database.\+Import\+All}.
+
+In Unity 2023.\+2 or newer uses the new Asset\+Path\+Exists method. In earlier versions Asset\+Path\+To\+GUID is used.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_a60c6f10f04d962b32a6563c6b842b81c_a60c6f10f04d962b32a6563c6b842b81c}{Code\+Smile\+Editor.\+Asset.\+Path.\+Exists\+In\+File\+System}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_status_afcaefd0248a5d2a59a833699fb4f1d51_afcaefd0248a5d2a59a833699fb4f1d51}{Code\+Smile\+Editor.\+Asset.\+Status.\+Is\+Imported}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.AssetPathExists.html}{\texttt{ Asset\+Database.\+Asset\+Path\+Exists}}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.AssetPathToGUID.html}{\texttt{ Asset\+Database.\+Asset\+Path\+To\+GUID}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8cs_source_l00057}{57}} of file \mbox{\hyperlink{_asset_8_path_8cs_source}{Asset.\+Path.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00058\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00059\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{get}}
+\DoxyCodeLine{00060\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00061\ \textcolor{preprocessor}{\#if\ UNITY\_2023\_2\_OR\_NEWER }}
+\DoxyCodeLine{00062\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.AssetPathExists(m\_RelativePath);}
+\DoxyCodeLine{00063\ \textcolor{preprocessor}{\#else }}
+\DoxyCodeLine{00064\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ AssetDatabase.AssetPathToGUID(m\_RelativePath,\ AssetPathToGUIDOptions.OnlyExistingAssets).Length\ >\ 0;}
+\DoxyCodeLine{00065\ \textcolor{preprocessor}{\#endif }}
+\DoxyCodeLine{00066\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{00067\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a60c6f10f04d962b32a6563c6b842b81c_a60c6f10f04d962b32a6563c6b842b81c}\label{class_code_smile_editor_1_1_asset_1_1_path_a60c6f10f04d962b32a6563c6b842b81c_a60c6f10f04d962b32a6563c6b842b81c}
+\index{Asset.Path@{Asset.Path}!ExistsInFileSystem@{ExistsInFileSystem}}
+\index{ExistsInFileSystem@{ExistsInFileSystem}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{ExistsInFileSystem}{ExistsInFileSystem}}
+{\footnotesize\ttfamily Boolean Exists\+In\+File\+System\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns true if the path exists in the file system.
+
+This checks for physical existance of a file or folder using the System.\+IO methods. It may return true where \doxylink{class_code_smile_editor_1_1_asset_1_1_path_abd65d5ceb97d69f280079d5bfa8c75ea_abd65d5ceb97d69f280079d5bfa8c75ea}{Code\+Smile\+Editor.\+Asset.\+Path.\+Exists} returns false.
+
+In such a case this may indicate that the asset has been created but not yet imported. The corresponding status check is\+: \doxylink{class_code_smile_editor_1_1_asset_1_1_status_afcaefd0248a5d2a59a833699fb4f1d51_afcaefd0248a5d2a59a833699fb4f1d51}{Code\+Smile\+Editor.\+Asset.\+Status.\+Is\+Imported}.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_abd65d5ceb97d69f280079d5bfa8c75ea_abd65d5ceb97d69f280079d5bfa8c75ea}{Code\+Smile\+Editor.\+Asset.\+Path.\+Exists}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_status_afcaefd0248a5d2a59a833699fb4f1d51_afcaefd0248a5d2a59a833699fb4f1d51}{Code\+Smile\+Editor.\+Asset.\+Status.\+Is\+Imported}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8cs_source_l00084}{84}} of file \mbox{\hyperlink{_asset_8_path_8cs_source}{Asset.\+Path.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a66d760f8140181f272630b4f226a56c5_a66d760f8140181f272630b4f226a56c5}\label{class_code_smile_editor_1_1_asset_1_1_path_a66d760f8140181f272630b4f226a56c5_a66d760f8140181f272630b4f226a56c5}
+\index{Asset.Path@{Asset.Path}!Extension@{Extension}}
+\index{Extension@{Extension}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{Extension}{Extension}}
+{\footnotesize\ttfamily String Extension\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns the extension of the path.
+
+\begin{DoxyReturn}{Returns}
+The extension with a leading dot (eg \textquotesingle{}.txt\textquotesingle{}) or an empty string if there is no extension.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_a5066dd8adab56e4ea54fe46b9db3bd9a_a5066dd8adab56e4ea54fe46b9db3bd9a}{Code\+Smile\+Editor.\+Asset.\+Path.\+File\+Name}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_a3693da5482c390a2146fe9dc6d38b197_a3693da5482c390a2146fe9dc6d38b197}{Code\+Smile\+Editor.\+Asset.\+Path.\+File\+Name\+Without\+Extension}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8cs_source_l00118}{118}} of file \mbox{\hyperlink{_asset_8_path_8cs_source}{Asset.\+Path.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a5066dd8adab56e4ea54fe46b9db3bd9a_a5066dd8adab56e4ea54fe46b9db3bd9a}\label{class_code_smile_editor_1_1_asset_1_1_path_a5066dd8adab56e4ea54fe46b9db3bd9a_a5066dd8adab56e4ea54fe46b9db3bd9a}
+\index{Asset.Path@{Asset.Path}!FileName@{FileName}}
+\index{FileName@{FileName}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{FileName}{FileName}}
+{\footnotesize\ttfamily String File\+Name\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns the file name with extension.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_a66d760f8140181f272630b4f226a56c5_a66d760f8140181f272630b4f226a56c5}{Code\+Smile\+Editor.\+Asset.\+Path.\+Extension}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_a3693da5482c390a2146fe9dc6d38b197_a3693da5482c390a2146fe9dc6d38b197}{Code\+Smile\+Editor.\+Asset.\+Path.\+File\+Name\+Without\+Extension}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8cs_source_l00128}{128}} of file \mbox{\hyperlink{_asset_8_path_8cs_source}{Asset.\+Path.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a3693da5482c390a2146fe9dc6d38b197_a3693da5482c390a2146fe9dc6d38b197}\label{class_code_smile_editor_1_1_asset_1_1_path_a3693da5482c390a2146fe9dc6d38b197_a3693da5482c390a2146fe9dc6d38b197}
+\index{Asset.Path@{Asset.Path}!FileNameWithoutExtension@{FileNameWithoutExtension}}
+\index{FileNameWithoutExtension@{FileNameWithoutExtension}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{FileNameWithoutExtension}{FileNameWithoutExtension}}
+{\footnotesize\ttfamily String File\+Name\+Without\+Extension\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns the file name without extension.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_a66d760f8140181f272630b4f226a56c5_a66d760f8140181f272630b4f226a56c5}{Code\+Smile\+Editor.\+Asset.\+Path.\+Extension}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_a5066dd8adab56e4ea54fe46b9db3bd9a_a5066dd8adab56e4ea54fe46b9db3bd9a}{Code\+Smile\+Editor.\+Asset.\+Path.\+File\+Name}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8cs_source_l00138}{138}} of file \mbox{\hyperlink{_asset_8_path_8cs_source}{Asset.\+Path.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a86fde1a385ff90d8002ae30a7c39cab9_a86fde1a385ff90d8002ae30a7c39cab9}\label{class_code_smile_editor_1_1_asset_1_1_path_a86fde1a385ff90d8002ae30a7c39cab9_a86fde1a385ff90d8002ae30a7c39cab9}
+\index{Asset.Path@{Asset.Path}!FolderPath@{FolderPath}}
+\index{FolderPath@{FolderPath}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{FolderPath}{FolderPath}}
+{\footnotesize\ttfamily \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} Folder\+Path\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns the relative path to the directory the file or folder is in.
+
+\begin{DoxyReturn}{Returns}
+The parent folder of the file or folder. Returns null if it\textquotesingle{}s the root path eg "{}\+Assets"{}.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_a5066dd8adab56e4ea54fe46b9db3bd9a_a5066dd8adab56e4ea54fe46b9db3bd9a}{Code\+Smile\+Editor.\+Asset.\+Path.\+File\+Name}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_a3693da5482c390a2146fe9dc6d38b197_a3693da5482c390a2146fe9dc6d38b197}{Code\+Smile\+Editor.\+Asset.\+Path.\+File\+Name\+Without\+Extension}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_a66d760f8140181f272630b4f226a56c5_a66d760f8140181f272630b4f226a56c5}{Code\+Smile\+Editor.\+Asset.\+Path.\+Extension}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8cs_source_l00172}{172}} of file \mbox{\hyperlink{_asset_8_path_8cs_source}{Asset.\+Path.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00173\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00174\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keyword}{get}}
+\DoxyCodeLine{00175\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00176\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ dirName\ =\ System.IO.Path.GetDirectoryName(m\_RelativePath);}
+\DoxyCodeLine{00177\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ String.IsNullOrEmpty(dirName)\ ?\ null\ :\ dirName;}
+\DoxyCodeLine{00178\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+\DoxyCodeLine{00179\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_abd29565587282b14cb265fb107ae0093_abd29565587282b14cb265fb107ae0093}\label{class_code_smile_editor_1_1_asset_1_1_path_abd29565587282b14cb265fb107ae0093_abd29565587282b14cb265fb107ae0093}
+\index{Asset.Path@{Asset.Path}!FullAssetsPath@{FullAssetsPath}}
+\index{FullAssetsPath@{FullAssetsPath}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{FullAssetsPath}{FullAssetsPath}}
+{\footnotesize\ttfamily String Full\+Assets\+Path\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [get]}}
+
+
+
+Returns the absolute path to the project\textquotesingle{}s {\ttfamily Assets} subfolder.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \href{https://docs.unity3d.com/ScriptReference/Application-dataPath.html}{\texttt{ Application.\+data\+Path}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00029}{29}} of file \mbox{\hyperlink{_asset_8_path_8_static_8cs_source}{Asset.\+Path.\+Static.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a005a32c04a661e398af4f2a6f866242a_a005a32c04a661e398af4f2a6f866242a}\label{class_code_smile_editor_1_1_asset_1_1_path_a005a32c04a661e398af4f2a6f866242a_a005a32c04a661e398af4f2a6f866242a}
+\index{Asset.Path@{Asset.Path}!FullLibraryPath@{FullLibraryPath}}
+\index{FullLibraryPath@{FullLibraryPath}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{FullLibraryPath}{FullLibraryPath}}
+{\footnotesize\ttfamily String Full\+Library\+Path\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [get]}}
+
+
+
+Returns the absolute path to the project\textquotesingle{}s {\ttfamily Library} subfolder.
+
+
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00040}{40}} of file \mbox{\hyperlink{_asset_8_path_8_static_8cs_source}{Asset.\+Path.\+Static.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a6724fa2743590cd1a81b41b61102e7fe_a6724fa2743590cd1a81b41b61102e7fe}\label{class_code_smile_editor_1_1_asset_1_1_path_a6724fa2743590cd1a81b41b61102e7fe_a6724fa2743590cd1a81b41b61102e7fe}
+\index{Asset.Path@{Asset.Path}!FullLogsPath@{FullLogsPath}}
+\index{FullLogsPath@{FullLogsPath}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{FullLogsPath}{FullLogsPath}}
+{\footnotesize\ttfamily String Full\+Logs\+Path\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [get]}}
+
+
+
+Returns the absolute path to the project\textquotesingle{}s {\ttfamily Logs} subfolder.
+
+
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00046}{46}} of file \mbox{\hyperlink{_asset_8_path_8_static_8cs_source}{Asset.\+Path.\+Static.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_ad031047c157ca34623ef3d8794c321a4_ad031047c157ca34623ef3d8794c321a4}\label{class_code_smile_editor_1_1_asset_1_1_path_ad031047c157ca34623ef3d8794c321a4_ad031047c157ca34623ef3d8794c321a4}
+\index{Asset.Path@{Asset.Path}!FullPackagesPath@{FullPackagesPath}}
+\index{FullPackagesPath@{FullPackagesPath}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{FullPackagesPath}{FullPackagesPath}}
+{\footnotesize\ttfamily String Full\+Packages\+Path\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [get]}}
+
+
+
+Returns the absolute path to the project\textquotesingle{}s {\ttfamily Packages} subfolder.
+
+
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00034}{34}} of file \mbox{\hyperlink{_asset_8_path_8_static_8cs_source}{Asset.\+Path.\+Static.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_af15b23e15a17c04d3a45a054a18d6443_af15b23e15a17c04d3a45a054a18d6443}\label{class_code_smile_editor_1_1_asset_1_1_path_af15b23e15a17c04d3a45a054a18d6443_af15b23e15a17c04d3a45a054a18d6443}
+\index{Asset.Path@{Asset.Path}!FullPath@{FullPath}}
+\index{FullPath@{FullPath}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{FullPath}{FullPath}}
+{\footnotesize\ttfamily String Full\+Path\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns the full (absolute) path with forward slashes as separators.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_a86fde1a385ff90d8002ae30a7c39cab9_a86fde1a385ff90d8002ae30a7c39cab9}{Code\+Smile\+Editor.\+Asset.\+Path.\+Folder\+Path}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8cs_source_l00146}{146}} of file \mbox{\hyperlink{_asset_8_path_8cs_source}{Asset.\+Path.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a3a4a27e26891e69d91d724cdf661656e_a3a4a27e26891e69d91d724cdf661656e}\label{class_code_smile_editor_1_1_asset_1_1_path_a3a4a27e26891e69d91d724cdf661656e_a3a4a27e26891e69d91d724cdf661656e}
+\index{Asset.Path@{Asset.Path}!FullProjectPath@{FullProjectPath}}
+\index{FullProjectPath@{FullProjectPath}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{FullProjectPath}{FullProjectPath}}
+{\footnotesize\ttfamily String Full\+Project\+Path\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [get]}}
+
+
+
+Returns the absolute path to the project\textquotesingle{}s root folder.
+
+
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00069}{69}} of file \mbox{\hyperlink{_asset_8_path_8_static_8cs_source}{Asset.\+Path.\+Static.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_ac7167ec9e63c61ff6a42a820af23747c_ac7167ec9e63c61ff6a42a820af23747c}\label{class_code_smile_editor_1_1_asset_1_1_path_ac7167ec9e63c61ff6a42a820af23747c_ac7167ec9e63c61ff6a42a820af23747c}
+\index{Asset.Path@{Asset.Path}!FullProjectSettingsPath@{FullProjectSettingsPath}}
+\index{FullProjectSettingsPath@{FullProjectSettingsPath}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{FullProjectSettingsPath}{FullProjectSettingsPath}}
+{\footnotesize\ttfamily String Full\+Project\+Settings\+Path\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [get]}}
+
+
+
+Returns the absolute path to the project\textquotesingle{}s {\ttfamily Project\+Settings} subfolder.
+
+
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00052}{52}} of file \mbox{\hyperlink{_asset_8_path_8_static_8cs_source}{Asset.\+Path.\+Static.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a77508ff7f04d30b6160f254e53adbeb6_a77508ff7f04d30b6160f254e53adbeb6}\label{class_code_smile_editor_1_1_asset_1_1_path_a77508ff7f04d30b6160f254e53adbeb6_a77508ff7f04d30b6160f254e53adbeb6}
+\index{Asset.Path@{Asset.Path}!FullProjectTempPath@{FullProjectTempPath}}
+\index{FullProjectTempPath@{FullProjectTempPath}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{FullProjectTempPath}{FullProjectTempPath}}
+{\footnotesize\ttfamily String Full\+Project\+Temp\+Path\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [get]}}
+
+
+
+Returns the absolute path to the project\textquotesingle{}s {\ttfamily Temp} subfolder.
+
+
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00064}{64}} of file \mbox{\hyperlink{_asset_8_path_8_static_8cs_source}{Asset.\+Path.\+Static.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a2fcfa4fd2c52adca3fa729bf78e72d3b_a2fcfa4fd2c52adca3fa729bf78e72d3b}\label{class_code_smile_editor_1_1_asset_1_1_path_a2fcfa4fd2c52adca3fa729bf78e72d3b_a2fcfa4fd2c52adca3fa729bf78e72d3b}
+\index{Asset.Path@{Asset.Path}!FullUserSettingsPath@{FullUserSettingsPath}}
+\index{FullUserSettingsPath@{FullUserSettingsPath}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{FullUserSettingsPath}{FullUserSettingsPath}}
+{\footnotesize\ttfamily String Full\+User\+Settings\+Path\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [get]}}
+
+
+
+Returns the absolute path to the project\textquotesingle{}s {\ttfamily User\+Settings} subfolder.
+
+
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00058}{58}} of file \mbox{\hyperlink{_asset_8_path_8_static_8cs_source}{Asset.\+Path.\+Static.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a66a3fc7176ae79e7e9ee85df99c5ff7c_a66a3fc7176ae79e7e9ee85df99c5ff7c}\label{class_code_smile_editor_1_1_asset_1_1_path_a66a3fc7176ae79e7e9ee85df99c5ff7c_a66a3fc7176ae79e7e9ee85df99c5ff7c}
+\index{Asset.Path@{Asset.Path}!Guid@{Guid}}
+\index{Guid@{Guid}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{Guid}{Guid}}
+{\footnotesize\ttfamily GUID Guid\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns the GUID for the path.
+
+\begin{DoxyReturn}{Returns}
+The GUID for the asset at the path, or an empty GUID if the asset does not exist in the database.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_abd65d5ceb97d69f280079d5bfa8c75ea_abd65d5ceb97d69f280079d5bfa8c75ea}{Code\+Smile\+Editor.\+Asset.\+Path.\+Exists}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.AssetPathToGUID.html}{\texttt{ Asset\+Database.\+Asset\+Path\+To\+GUID}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8cs_source_l00039}{39}} of file \mbox{\hyperlink{_asset_8_path_8cs_source}{Asset.\+Path.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a0084f5ad8a13c505013748101a81b1df_a0084f5ad8a13c505013748101a81b1df}\label{class_code_smile_editor_1_1_asset_1_1_path_a0084f5ad8a13c505013748101a81b1df_a0084f5ad8a13c505013748101a81b1df}
+\index{Asset.Path@{Asset.Path}!MetaPath@{MetaPath}}
+\index{MetaPath@{MetaPath}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{MetaPath}{MetaPath}}
+{\footnotesize\ttfamily \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} Meta\+Path\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns the path to the .meta file if the path is an asset file or folder.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_a54bbd4600c9787134d849c022cefe90e_a54bbd4600c9787134d849c022cefe90e}{Code\+Smile\+Editor.\+Asset.\+Path.\+Asset\+Path}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_af4219b5ed1497e66fd495b412688ecf3_af4219b5ed1497e66fd495b412688ecf3}{Code\+Smile\+Editor.\+Asset.\+Path.\+To\+Meta}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetTextMetaFilePathFromAssetPath.html}{\texttt{ Asset\+Database.\+Get\+Text\+Meta\+File\+Path\+From\+Asset\+Path}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8cs_source_l00096}{96}} of file \mbox{\hyperlink{_asset_8_path_8cs_source}{Asset.\+Path.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a0247c4e1ee282e42b31b89c70bebe85f_a0247c4e1ee282e42b31b89c70bebe85f}\label{class_code_smile_editor_1_1_asset_1_1_path_a0247c4e1ee282e42b31b89c70bebe85f_a0247c4e1ee282e42b31b89c70bebe85f}
+\index{Asset.Path@{Asset.Path}!SubFolders@{SubFolders}}
+\index{SubFolders@{SubFolders}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{SubFolders}{SubFolders}}
+{\footnotesize\ttfamily String \mbox{[}$\,$\mbox{]} Sub\+Folders\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns the names of all folders in a path to a folder.
+
+If the path points to a file this returns an empty array. Use Code\+Smile\+Editor.\+Asset.\+Path.\+Folder\+Path.\+Sub\+Folders in this case to first get the file\textquotesingle{}s folder.
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_a2d28ed0af9ce1a5b78cfea13d920fbf6_a2d28ed0af9ce1a5b78cfea13d920fbf6}{Code\+Smile\+Editor.\+Asset.\+Path.\+Get\+Sub\+Folders}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GetSubFolders.html}{\texttt{ Asset\+Database.\+Get\+Sub\+Folders}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8cs_source_l00161}{161}} of file \mbox{\hyperlink{_asset_8_path_8cs_source}{Asset.\+Path.\+cs}}.
+
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_path_a095641cd17b35305e83b4dcee0704e0b_a095641cd17b35305e83b4dcee0704e0b}\label{class_code_smile_editor_1_1_asset_1_1_path_a095641cd17b35305e83b4dcee0704e0b_a095641cd17b35305e83b4dcee0704e0b}
+\index{Asset.Path@{Asset.Path}!UniqueFilePath@{UniqueFilePath}}
+\index{UniqueFilePath@{UniqueFilePath}!Asset.Path@{Asset.Path}}
+\doxyparagraph{\texorpdfstring{UniqueFilePath}{UniqueFilePath}}
+{\footnotesize\ttfamily \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} Unique\+File\+Path\hspace{0.3cm}{\ttfamily [get]}}
+
+
+
+Returns the path altered with a numbering if an asset already exists (and is imported) at the path.
+
+See also\+: Project Settings =\texorpdfstring{$>$}{>} Editor =\texorpdfstring{$>$}{>} Numbering Scheme
+
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_path_a90bc7d03e89ae59ba4653ff9109f0fec_a90bc7d03e89ae59ba4653ff9109f0fec}{Code\+Smile\+Editor.\+Asset.\+Path.\+Uniquify\+File\+Name}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.GenerateUniqueAssetPath.html}{\texttt{ Asset\+Database.\+Generate\+Unique\+Asset\+Path}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_path_8cs_source_l00192}{192}} of file \mbox{\hyperlink{_asset_8_path_8cs_source}{Asset.\+Path.\+cs}}.
+
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path__coll__graph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path__coll__graph.md5
new file mode 100644
index 00000000..9be91f11
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path__coll__graph.md5
@@ -0,0 +1 @@
+72eb4f9b1671df09d94f0d9e84cfef7a
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path__coll__graph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path__coll__graph.pdf
new file mode 100644
index 00000000..114f10f9
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path__coll__graph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path__inherit__graph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path__inherit__graph.md5
new file mode 100644
index 00000000..9be91f11
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path__inherit__graph.md5
@@ -0,0 +1 @@
+72eb4f9b1671df09d94f0d9e84cfef7a
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path__inherit__graph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path__inherit__graph.pdf
new file mode 100644
index 00000000..114f10f9
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path__inherit__graph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a16e59bfb7ec5500d91fa1e8baaed7ec3_a16e59bfb7ec5500d91fa1e8baaed7ec3_icgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a16e59bfb7ec5500d91fa1e8baaed7ec3_a16e59bfb7ec5500d91fa1e8baaed7ec3_icgraph.md5
new file mode 100644
index 00000000..ccd3a00e
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a16e59bfb7ec5500d91fa1e8baaed7ec3_a16e59bfb7ec5500d91fa1e8baaed7ec3_icgraph.md5
@@ -0,0 +1 @@
+eb2f42b9eef8a2d6fac935e20a4cfb46
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a16e59bfb7ec5500d91fa1e8baaed7ec3_a16e59bfb7ec5500d91fa1e8baaed7ec3_icgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a16e59bfb7ec5500d91fa1e8baaed7ec3_a16e59bfb7ec5500d91fa1e8baaed7ec3_icgraph.pdf
new file mode 100644
index 00000000..16ff8415
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a16e59bfb7ec5500d91fa1e8baaed7ec3_a16e59bfb7ec5500d91fa1e8baaed7ec3_icgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe0620f7baaa0c21543f455c_a18386e05fe0620f7baaa0c21543f455c_icgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe0620f7baaa0c21543f455c_a18386e05fe0620f7baaa0c21543f455c_icgraph.md5
new file mode 100644
index 00000000..e9799cb6
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe0620f7baaa0c21543f455c_a18386e05fe0620f7baaa0c21543f455c_icgraph.md5
@@ -0,0 +1 @@
+c6f70d1fab6826929744d43d4b4b4352
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe0620f7baaa0c21543f455c_a18386e05fe0620f7baaa0c21543f455c_icgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe0620f7baaa0c21543f455c_a18386e05fe0620f7baaa0c21543f455c_icgraph.pdf
new file mode 100644
index 00000000..44f6ac39
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe0620f7baaa0c21543f455c_a18386e05fe0620f7baaa0c21543f455c_icgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a37cffbb9ed1db3b0e77664ad01b6fd01_a37cffbb9ed1db3b0e77664ad01b6fd01_cgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a37cffbb9ed1db3b0e77664ad01b6fd01_a37cffbb9ed1db3b0e77664ad01b6fd01_cgraph.md5
new file mode 100644
index 00000000..63141635
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a37cffbb9ed1db3b0e77664ad01b6fd01_a37cffbb9ed1db3b0e77664ad01b6fd01_cgraph.md5
@@ -0,0 +1 @@
+e117ae7f90552ddda1caef7c14b95e90
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a37cffbb9ed1db3b0e77664ad01b6fd01_a37cffbb9ed1db3b0e77664ad01b6fd01_cgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a37cffbb9ed1db3b0e77664ad01b6fd01_a37cffbb9ed1db3b0e77664ad01b6fd01_cgraph.pdf
new file mode 100644
index 00000000..05820b24
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a37cffbb9ed1db3b0e77664ad01b6fd01_a37cffbb9ed1db3b0e77664ad01b6fd01_cgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a3d0d7574b95b19be03fdfd90e6c628e2_a3d0d7574b95b19be03fdfd90e6c628e2_cgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a3d0d7574b95b19be03fdfd90e6c628e2_a3d0d7574b95b19be03fdfd90e6c628e2_cgraph.md5
new file mode 100644
index 00000000..75a20fcd
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a3d0d7574b95b19be03fdfd90e6c628e2_a3d0d7574b95b19be03fdfd90e6c628e2_cgraph.md5
@@ -0,0 +1 @@
+0ae2a3997e066679993a269b68ef37c3
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a3d0d7574b95b19be03fdfd90e6c628e2_a3d0d7574b95b19be03fdfd90e6c628e2_cgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a3d0d7574b95b19be03fdfd90e6c628e2_a3d0d7574b95b19be03fdfd90e6c628e2_cgraph.pdf
new file mode 100644
index 00000000..d9f25e51
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a3d0d7574b95b19be03fdfd90e6c628e2_a3d0d7574b95b19be03fdfd90e6c628e2_cgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a7b337848207b6bc5aebde6ae18e18d54_a7b337848207b6bc5aebde6ae18e18d54_cgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a7b337848207b6bc5aebde6ae18e18d54_a7b337848207b6bc5aebde6ae18e18d54_cgraph.md5
new file mode 100644
index 00000000..787f4fda
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a7b337848207b6bc5aebde6ae18e18d54_a7b337848207b6bc5aebde6ae18e18d54_cgraph.md5
@@ -0,0 +1 @@
+bc2b0dd51bb521ea27f29f87160f2bf1
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a7b337848207b6bc5aebde6ae18e18d54_a7b337848207b6bc5aebde6ae18e18d54_cgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a7b337848207b6bc5aebde6ae18e18d54_a7b337848207b6bc5aebde6ae18e18d54_cgraph.pdf
new file mode 100644
index 00000000..c26e705f
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_a7b337848207b6bc5aebde6ae18e18d54_a7b337848207b6bc5aebde6ae18e18d54_cgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_aa30592adbaf54202ead85cd483107e55_aa30592adbaf54202ead85cd483107e55_cgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_aa30592adbaf54202ead85cd483107e55_aa30592adbaf54202ead85cd483107e55_cgraph.md5
new file mode 100644
index 00000000..cec1fd5a
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_aa30592adbaf54202ead85cd483107e55_aa30592adbaf54202ead85cd483107e55_cgraph.md5
@@ -0,0 +1 @@
+1ecb553ac0effcdbb78847aed4b148f2
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_aa30592adbaf54202ead85cd483107e55_aa30592adbaf54202ead85cd483107e55_cgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_aa30592adbaf54202ead85cd483107e55_aa30592adbaf54202ead85cd483107e55_cgraph.pdf
new file mode 100644
index 00000000..480e2617
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_aa30592adbaf54202ead85cd483107e55_aa30592adbaf54202ead85cd483107e55_cgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8_icgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8_icgraph.md5
new file mode 100644
index 00000000..92e52f28
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8_icgraph.md5
@@ -0,0 +1 @@
+d31ea6ec7ecef2c605c6b2399f375c69
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8_icgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8_icgraph.pdf
new file mode 100644
index 00000000..646155bb
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8_icgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_aba3e55bf4914578717ffd4ec9707c29f_aba3e55bf4914578717ffd4ec9707c29f_cgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_aba3e55bf4914578717ffd4ec9707c29f_aba3e55bf4914578717ffd4ec9707c29f_cgraph.md5
new file mode 100644
index 00000000..f5fdc085
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_aba3e55bf4914578717ffd4ec9707c29f_aba3e55bf4914578717ffd4ec9707c29f_cgraph.md5
@@ -0,0 +1 @@
+9484f59b73f1b8f3181acf8138ffdee8
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_aba3e55bf4914578717ffd4ec9707c29f_aba3e55bf4914578717ffd4ec9707c29f_cgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_aba3e55bf4914578717ffd4ec9707c29f_aba3e55bf4914578717ffd4ec9707c29f_cgraph.pdf
new file mode 100644
index 00000000..b7710455
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_aba3e55bf4914578717ffd4ec9707c29f_aba3e55bf4914578717ffd4ec9707c29f_cgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_ae2e7b500cc4d1f97b7c6051181aa833f_ae2e7b500cc4d1f97b7c6051181aa833f_icgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_ae2e7b500cc4d1f97b7c6051181aa833f_ae2e7b500cc4d1f97b7c6051181aa833f_icgraph.md5
new file mode 100644
index 00000000..981b50ab
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_ae2e7b500cc4d1f97b7c6051181aa833f_ae2e7b500cc4d1f97b7c6051181aa833f_icgraph.md5
@@ -0,0 +1 @@
+396ba3301b8ee1778679c320cc77b552
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_ae2e7b500cc4d1f97b7c6051181aa833f_ae2e7b500cc4d1f97b7c6051181aa833f_icgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_ae2e7b500cc4d1f97b7c6051181aa833f_ae2e7b500cc4d1f97b7c6051181aa833f_icgraph.pdf
new file mode 100644
index 00000000..8dd3cf63
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_path_ae2e7b500cc4d1f97b7c6051181aa833f_ae2e7b500cc4d1f97b7c6051181aa833f_icgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_status.tex b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_status.tex
new file mode 100644
index 00000000..0861a73b
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_status.tex
@@ -0,0 +1,270 @@
+\doxysubsection{Asset.\+Status Class Reference}
+\hypertarget{class_code_smile_editor_1_1_asset_1_1_status}{}\label{class_code_smile_editor_1_1_asset_1_1_status}\index{Asset.Status@{Asset.Status}}
+
+
+Groups asset status related functions.
+
+
+
+
+Collaboration diagram for Asset.\+Status\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=149pt]{class_code_smile_editor_1_1_asset_1_1_status__coll__graph}
+\end{center}
+\end{figure}
+\doxysubsubsubsection*{Static Public Member Functions}
+\begin{DoxyCompactItemize}
+\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_a7e01a4788d69647e6e8340c25603bf55_a7e01a4788d69647e6e8340c25603bf55}{Is\+Foreign}} (\mbox{[}Not\+Null\mbox{]} Object asset)
+\begin{DoxyCompactList}\small\item\em Returns whether this is a foreign asset. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_afcaefd0248a5d2a59a833699fb4f1d51_afcaefd0248a5d2a59a833699fb4f1d51}{Is\+Imported}} (\mbox{[}Not\+Null\mbox{]} Object instance)
+\begin{DoxyCompactList}\small\item\em Checks if the object is an asset in the Asset\+Database. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_a377ccf450db930a010100f0d89b09285_a377ccf450db930a010100f0d89b09285}{Is\+Imported}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Checks if the path is in the Asset\+Database. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_a8d5877df6d14dca99ed79ec50f067783_a8d5877df6d14dca99ed79ec50f067783}{Is\+Loaded}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Returns whether the (main) asset at the path is loaded. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_a2e6860cd8479a284c3c81f4377ed100a_a2e6860cd8479a284c3c81f4377ed100a}{Is\+Main}} (\mbox{[}Not\+Null\mbox{]} Object asset)
+\begin{DoxyCompactList}\small\item\em Returns whether this object is the asset\textquotesingle{}s \textquotesingle{}main\textquotesingle{} object. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_ae18940b59316f20181bba69e710e0cba_ae18940b59316f20181bba69e710e0cba}{Is\+Native}} (\mbox{[}Not\+Null\mbox{]} Object asset)
+\begin{DoxyCompactList}\small\item\em Returns whether this is a native asset. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_a6b15799af1dbe039078b5e8c2e435dc2_a6b15799af1dbe039078b5e8c2e435dc2}{Is\+Scene}} (\mbox{[}Not\+Null\mbox{]} Object asset)
+\begin{DoxyCompactList}\small\item\em Returns true if the given object is of type Scene\+Asset. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_status_ac715a31d20c073c37844f5d8839496cd_ac715a31d20c073c37844f5d8839496cd}{Is\+Sub}} (\mbox{[}Not\+Null\mbox{]} Object asset)
+\begin{DoxyCompactList}\small\item\em Returns whether this object is a sub-\/asset of a composite asset. \end{DoxyCompactList}\end{DoxyCompactItemize}
+
+
+\doxysubsubsection{Detailed Description}
+Groups asset status related functions.
+
+Definition at line \mbox{\hyperlink{_asset_8_status_8cs_source_l00017}{17}} of file \mbox{\hyperlink{_asset_8_status_8cs_source}{Asset.\+Status.\+cs}}.
+
+
+
+\doxysubsubsection{Member Function Documentation}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_status_a7e01a4788d69647e6e8340c25603bf55_a7e01a4788d69647e6e8340c25603bf55}\label{class_code_smile_editor_1_1_asset_1_1_status_a7e01a4788d69647e6e8340c25603bf55_a7e01a4788d69647e6e8340c25603bf55}
+\index{Asset.Status@{Asset.Status}!IsForeign@{IsForeign}}
+\index{IsForeign@{IsForeign}!Asset.Status@{Asset.Status}}
+\doxyparagraph{\texorpdfstring{IsForeign()}{IsForeign()}}
+{\footnotesize\ttfamily static Boolean Is\+Foreign (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns whether this is a foreign asset.
+
+A foreign asset is any type of file that Unity doesn\textquotesingle{}t edit directly. Examples of foreign assets\+: scenes (.unity), prefabs, assembly definitions, ..
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & Instance of an asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if it is a foreign asset, false otherwise.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_status_ae18940b59316f20181bba69e710e0cba_ae18940b59316f20181bba69e710e0cba}{Code\+Smile\+Editor.\+Asset.\+Status.\+Is\+Native}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.IsForeignAsset.html}{\texttt{ Asset\+Database.\+Is\+Foreign\+Asset}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_status_afcaefd0248a5d2a59a833699fb4f1d51_afcaefd0248a5d2a59a833699fb4f1d51}\label{class_code_smile_editor_1_1_asset_1_1_status_afcaefd0248a5d2a59a833699fb4f1d51_afcaefd0248a5d2a59a833699fb4f1d51}
+\index{Asset.Status@{Asset.Status}!IsImported@{IsImported}}
+\index{IsImported@{IsImported}!Asset.Status@{Asset.Status}}
+\doxyparagraph{\texorpdfstring{IsImported()}{IsImported()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
+{\footnotesize\ttfamily static Boolean Is\+Imported (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{instance }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Checks if the object is an asset in the Asset\+Database.
+
+If you are sure the asset file exists but this method returns false then you need to Import() the asset.
+
+Unlike Asset\+Database, will not throw a Null\+Ref if you pass null.
+
+
+\begin{DoxyParams}{Parameters}
+{\em instance} & The instance to test.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+Returns false if the object isn\textquotesingle{}t in the database or if the object is null.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_status_a377ccf450db930a010100f0d89b09285_a377ccf450db930a010100f0d89b09285}{Code\+Smile\+Editor.\+Asset.\+Status.\+Is\+Imported(\+Code\+Smile\+Editor.\+Asset.\+Path)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_status_a8d5877df6d14dca99ed79ec50f067783_a8d5877df6d14dca99ed79ec50f067783}{Code\+Smile\+Editor.\+Asset.\+Status.\+Is\+Loaded}
+\item Contains
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.Contains.html}{\texttt{ Asset\+Database.\+Contains}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_status_a377ccf450db930a010100f0d89b09285_a377ccf450db930a010100f0d89b09285}\label{class_code_smile_editor_1_1_asset_1_1_status_a377ccf450db930a010100f0d89b09285_a377ccf450db930a010100f0d89b09285}
+\index{Asset.Status@{Asset.Status}!IsImported@{IsImported}}
+\index{IsImported@{IsImported}!Asset.Status@{Asset.Status}}
+\doxyparagraph{\texorpdfstring{IsImported()}{IsImported()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
+{\footnotesize\ttfamily static Boolean Is\+Imported (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Checks if the path is in the Asset\+Database.
+
+If you are sure the asset path exists but this method returns false then you need to Import() the asset.
+
+Unlike Asset\+Database, will not throw a Null\+Ref if you pass null.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+Returns false if the path isn\textquotesingle{}t in the database or if the path is null.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_status_afcaefd0248a5d2a59a833699fb4f1d51_afcaefd0248a5d2a59a833699fb4f1d51}{Code\+Smile\+Editor.\+Asset.\+Status.\+Is\+Imported(\+Object)}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_status_a8d5877df6d14dca99ed79ec50f067783_a8d5877df6d14dca99ed79ec50f067783}{Code\+Smile\+Editor.\+Asset.\+Status.\+Is\+Loaded}
+\item Contains
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.AssetPathExists.html}{\texttt{ Asset\+Database.\+Asset\+Path\+Exists}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_status_a8d5877df6d14dca99ed79ec50f067783_a8d5877df6d14dca99ed79ec50f067783}\label{class_code_smile_editor_1_1_asset_1_1_status_a8d5877df6d14dca99ed79ec50f067783_a8d5877df6d14dca99ed79ec50f067783}
+\index{Asset.Status@{Asset.Status}!IsLoaded@{IsLoaded}}
+\index{IsLoaded@{IsLoaded}!Asset.Status@{Asset.Status}}
+\doxyparagraph{\texorpdfstring{IsLoaded()}{IsLoaded()}}
+{\footnotesize\ttfamily static Boolean Is\+Loaded (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns whether the (main) asset at the path is loaded.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if the object at the path is loaded, false otherwise.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_status_afcaefd0248a5d2a59a833699fb4f1d51_afcaefd0248a5d2a59a833699fb4f1d51}{Code\+Smile\+Editor.\+Asset.\+Status.\+Is\+Imported}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.IsMainAssetAtPathLoaded.html}{\texttt{ Asset\+Database.\+Is\+Main\+Asset\+At\+Path\+Loaded}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_status_a2e6860cd8479a284c3c81f4377ed100a_a2e6860cd8479a284c3c81f4377ed100a}\label{class_code_smile_editor_1_1_asset_1_1_status_a2e6860cd8479a284c3c81f4377ed100a_a2e6860cd8479a284c3c81f4377ed100a}
+\index{Asset.Status@{Asset.Status}!IsMain@{IsMain}}
+\index{IsMain@{IsMain}!Asset.Status@{Asset.Status}}
+\doxyparagraph{\texorpdfstring{IsMain()}{IsMain()}}
+{\footnotesize\ttfamily static Boolean Is\+Main (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns whether this object is the asset\textquotesingle{}s \textquotesingle{}main\textquotesingle{} object.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & Instance of an asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if it\textquotesingle{}s the asset\textquotesingle{}s main object, false otherwise.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_status_ac715a31d20c073c37844f5d8839496cd_ac715a31d20c073c37844f5d8839496cd}{Code\+Smile\+Editor.\+Asset.\+Status.\+Is\+Sub}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.IsMainAsset.html}{\texttt{ Asset\+Database.\+Is\+Main\+Asset}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_status_ae18940b59316f20181bba69e710e0cba_ae18940b59316f20181bba69e710e0cba}\label{class_code_smile_editor_1_1_asset_1_1_status_ae18940b59316f20181bba69e710e0cba_ae18940b59316f20181bba69e710e0cba}
+\index{Asset.Status@{Asset.Status}!IsNative@{IsNative}}
+\index{IsNative@{IsNative}!Asset.Status@{Asset.Status}}
+\doxyparagraph{\texorpdfstring{IsNative()}{IsNative()}}
+{\footnotesize\ttfamily static Boolean Is\+Native (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns whether this is a native asset.
+
+Native assets are editable within Unity, for example materials and animation controllers. There are notable exceptions, such as scenes, prefabs and assembly definitions that are considered foreign assets.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & Instance of an asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if it is a native asset, false otherwise.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_status_a7e01a4788d69647e6e8340c25603bf55_a7e01a4788d69647e6e8340c25603bf55}{Code\+Smile\+Editor.\+Asset.\+Status.\+Is\+Foreign}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.IsNativeAsset.html}{\texttt{ Asset\+Database.\+Is\+Native\+Asset}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_status_a6b15799af1dbe039078b5e8c2e435dc2_a6b15799af1dbe039078b5e8c2e435dc2}\label{class_code_smile_editor_1_1_asset_1_1_status_a6b15799af1dbe039078b5e8c2e435dc2_a6b15799af1dbe039078b5e8c2e435dc2}
+\index{Asset.Status@{Asset.Status}!IsScene@{IsScene}}
+\index{IsScene@{IsScene}!Asset.Status@{Asset.Status}}
+\doxyparagraph{\texorpdfstring{IsScene()}{IsScene()}}
+{\footnotesize\ttfamily static Boolean Is\+Scene (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns true if the given object is of type Scene\+Asset.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & The instance to test for being a Scene\+Asset type.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if the object is of type Scene\+Asset. False otherwise.
+\end{DoxyReturn}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_status_ac715a31d20c073c37844f5d8839496cd_ac715a31d20c073c37844f5d8839496cd}\label{class_code_smile_editor_1_1_asset_1_1_status_ac715a31d20c073c37844f5d8839496cd_ac715a31d20c073c37844f5d8839496cd}
+\index{Asset.Status@{Asset.Status}!IsSub@{IsSub}}
+\index{IsSub@{IsSub}!Asset.Status@{Asset.Status}}
+\doxyparagraph{\texorpdfstring{IsSub()}{IsSub()}}
+{\footnotesize\ttfamily static Boolean Is\+Sub (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns whether this object is a sub-\/asset of a composite asset.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & Instance of an asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if it\textquotesingle{}s a sub asset, false otherwise.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_status_a2e6860cd8479a284c3c81f4377ed100a_a2e6860cd8479a284c3c81f4377ed100a}{Code\+Smile\+Editor.\+Asset.\+Status.\+Is\+Main}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.IsSubAsset.html}{\texttt{ Asset\+Database.\+Is\+Sub\+Asset}}
+\end{DoxyItemize}
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_status__coll__graph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_status__coll__graph.md5
new file mode 100644
index 00000000..80493837
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_status__coll__graph.md5
@@ -0,0 +1 @@
+d1bdcba57834d07d7cddc920fb1426e8
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_status__coll__graph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_status__coll__graph.pdf
new file mode 100644
index 00000000..3cf725d6
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_status__coll__graph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_sub_asset.tex b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_sub_asset.tex
new file mode 100644
index 00000000..0db62a40
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_sub_asset.tex
@@ -0,0 +1,319 @@
+\doxysubsection{Asset.\+Sub\+Asset Class Reference}
+\hypertarget{class_code_smile_editor_1_1_asset_1_1_sub_asset}{}\label{class_code_smile_editor_1_1_asset_1_1_sub_asset}\index{Asset.SubAsset@{Asset.SubAsset}}
+
+
+Groups all Sub-\/\+Asset related functionality.
+
+
+
+
+Collaboration diagram for Asset.\+Sub\+Asset\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=161pt]{class_code_smile_editor_1_1_asset_1_1_sub_asset__coll__graph}
+\end{center}
+\end{figure}
+\doxysubsubsubsection*{Static Public Member Functions}
+\begin{DoxyCompactItemize}
+\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_a651286de3f2c9fef50eb5720f0a1b3a8_a651286de3f2c9fef50eb5720f0a1b3a8}{Add}} (\mbox{[}Not\+Null\mbox{]} Object sub\+Asset\+Instance, \mbox{[}Not\+Null\mbox{]} Object asset)
+\begin{DoxyCompactList}\small\item\em Adds an object as sub-\/asset to the asset. This change is implicitly saved to disk. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_aba5beee6f12d0eed16af62bd8e96d6e6_aba5beee6f12d0eed16af62bd8e96d6e6}{Extract}} (\mbox{[}Not\+Null\mbox{]} Object sub\+Asset, \mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} destination\+Path)
+\begin{DoxyCompactList}\small\item\em Extracts a sub-\/object of an asset as an asset of its own. \end{DoxyCompactList}\item
+static Object\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_a5a074e1dfad018aec7956375a8cf6099_a5a074e1dfad018aec7956375a8cf6099}{Load\+All}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Loads all sub-\/asset objects of an asset. \end{DoxyCompactList}\item
+static Object\mbox{[}$\,$\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_aa1295ba7d9693917c8af65241aa0d3ae_aa1295ba7d9693917c8af65241aa0d3ae}{Load\+Visible}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Loads only the visible (representation) sub-\/asset objects of an asset. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_af2517f14782bec5f449da4bc4937cf8c_af2517f14782bec5f449da4bc4937cf8c}{Remove}} (\mbox{[}Not\+Null\mbox{]} Object sub\+Asset)
+\begin{DoxyCompactList}\small\item\em Removes a sub-\/object from the asset it is contained in. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_a61bfe373deb21386f749d2f947da5476_a61bfe373deb21386f749d2f947da5476}{Set\+Main}} (\mbox{[}Not\+Null\mbox{]} Object sub\+Asset, \mbox{[}Not\+Null\mbox{]} Object asset)
+\begin{DoxyCompactList}\small\item\em Sets (changes) an asset\textquotesingle{}s \textquotesingle{}main\textquotesingle{} object to one of its sub-\/assets. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_sub_asset_ac4fb08375dcad548d850eec212582519_ac4fb08375dcad548d850eec212582519}{Set\+Main}} (\mbox{[}Not\+Null\mbox{]} Object sub\+Asset, \mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Sets (changes) an asset\textquotesingle{}s \textquotesingle{}main\textquotesingle{} object to one of its sub-\/assets. \end{DoxyCompactList}\end{DoxyCompactItemize}
+
+
+\doxysubsubsection{Detailed Description}
+Groups all Sub-\/\+Asset related functionality.
+
+Definition at line \mbox{\hyperlink{_asset_8_sub_asset_8cs_source_l00016}{16}} of file \mbox{\hyperlink{_asset_8_sub_asset_8cs_source}{Asset.\+Sub\+Asset.\+cs}}.
+
+
+
+\doxysubsubsection{Member Function Documentation}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_sub_asset_a651286de3f2c9fef50eb5720f0a1b3a8_a651286de3f2c9fef50eb5720f0a1b3a8}\label{class_code_smile_editor_1_1_asset_1_1_sub_asset_a651286de3f2c9fef50eb5720f0a1b3a8_a651286de3f2c9fef50eb5720f0a1b3a8}
+\index{Asset.SubAsset@{Asset.SubAsset}!Add@{Add}}
+\index{Add@{Add}!Asset.SubAsset@{Asset.SubAsset}}
+\doxyparagraph{\texorpdfstring{Add()}{Add()}}
+{\footnotesize\ttfamily static void Add (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{sub\+Asset\+Instance, }\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Adds an object as sub-\/asset to the asset. This change is implicitly saved to disk.
+
+You do NOT need to call Save() afterwards.
+
+
+\begin{DoxyParams}{Parameters}
+{\em sub\+Asset\+Instance} & The object to add as a sub-\/asset. It must not already be an asset.\\
+\hline
+{\em asset} & Instance of an asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_sub_asset_af2517f14782bec5f449da4bc4937cf8c_af2517f14782bec5f449da4bc4937cf8c}{Code\+Smile\+Editor.\+Asset.\+Sub\+Asset.\+Remove}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.AddObjectToAsset.html}{\texttt{ Asset\+Database.\+Add\+Object\+To\+Asset}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_sub_asset_8cs_source_l00058}{58}} of file \mbox{\hyperlink{_asset_8_sub_asset_8cs_source}{Asset.\+Sub\+Asset.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00059\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00060\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(subAssetInstance,\ nameof(subAssetInstance));}
+\DoxyCodeLine{00061\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.SubObjectIsGameObject(subAssetInstance);}
+\DoxyCodeLine{00062\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.AlreadyAnAsset(subAssetInstance);}
+\DoxyCodeLine{00063\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(asset,\ nameof(asset));}
+\DoxyCodeLine{00064\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.NotAnAssetWithAssetExtension(asset);}
+\DoxyCodeLine{00065\ }
+\DoxyCodeLine{00066\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.AddObjectToAsset(subAssetInstance,\ asset);}
+\DoxyCodeLine{00067\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_sub_asset_aba5beee6f12d0eed16af62bd8e96d6e6_aba5beee6f12d0eed16af62bd8e96d6e6}\label{class_code_smile_editor_1_1_asset_1_1_sub_asset_aba5beee6f12d0eed16af62bd8e96d6e6_aba5beee6f12d0eed16af62bd8e96d6e6}
+\index{Asset.SubAsset@{Asset.SubAsset}!Extract@{Extract}}
+\index{Extract@{Extract}!Asset.SubAsset@{Asset.SubAsset}}
+\doxyparagraph{\texorpdfstring{Extract()}{Extract()}}
+{\footnotesize\ttfamily static Boolean Extract (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{sub\+Asset, }\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{destination\+Path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Extracts a sub-\/object of an asset as an asset of its own.
+
+This is the same as dragging a sub-\/asset outside the containing asset in the project view. For example an animation or material dragged from a FBX asset.
+
+Only visible sub assets are extractable.
+
+
+\begin{DoxyParams}{Parameters}
+{\em sub\+Asset} & Instance of a sub-\/asset.\\
+\hline
+{\em destination\+Path} & Path to the extracted asset file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if extraction succeeded. False otherwise, in that case \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message} provides the error message.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_sub_asset_af2517f14782bec5f449da4bc4937cf8c_af2517f14782bec5f449da4bc4937cf8c}{Code\+Smile\+Editor.\+Asset.\+Sub\+Asset.\+Remove}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.ExtractAsset.html}{\texttt{ Asset\+Database.\+Extract\+Asset}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_sub_asset_8cs_source_l00039}{39}} of file \mbox{\hyperlink{_asset_8_sub_asset_8cs_source}{Asset.\+Sub\+Asset.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00040\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00041\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(subAsset,\ nameof(subAsset));}
+\DoxyCodeLine{00042\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(destinationPath,\ nameof(destinationPath));}
+\DoxyCodeLine{00043\ }
+\DoxyCodeLine{00044\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ Succeeded(AssetDatabase.ExtractAsset(subAsset,\ destinationPath));}
+\DoxyCodeLine{00045\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_sub_asset_a5a074e1dfad018aec7956375a8cf6099_a5a074e1dfad018aec7956375a8cf6099}\label{class_code_smile_editor_1_1_asset_1_1_sub_asset_a5a074e1dfad018aec7956375a8cf6099_a5a074e1dfad018aec7956375a8cf6099}
+\index{Asset.SubAsset@{Asset.SubAsset}!LoadAll@{LoadAll}}
+\index{LoadAll@{LoadAll}!Asset.SubAsset@{Asset.SubAsset}}
+\doxyparagraph{\texorpdfstring{LoadAll()}{LoadAll()}}
+{\footnotesize\ttfamily static Object\mbox{[}$\,$\mbox{]} Load\+All (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Loads all sub-\/asset objects of an asset.
+
+Whether the main object is included in this list depends on the type of asset.
+
+CAUTION\+: Calling this on scene assets is not supported (error messages in console).
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+All sub-\/assets of the asset, possibly excluding the main asset. Or an empty array if load failed or there are no sub-\/assets and the asset type does not include the main type in the sub-\/assets list.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_sub_asset_aa1295ba7d9693917c8af65241aa0d3ae_aa1295ba7d9693917c8af65241aa0d3ae}{Code\+Smile\+Editor.\+Asset.\+Sub\+Asset.\+Load\+Visible}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.LoadAllAssetsAtPath.html}{\texttt{ Asset\+Database.\+Load\+All\+Assets\+At\+Path}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_sub_asset_aa1295ba7d9693917c8af65241aa0d3ae_aa1295ba7d9693917c8af65241aa0d3ae}\label{class_code_smile_editor_1_1_asset_1_1_sub_asset_aa1295ba7d9693917c8af65241aa0d3ae_aa1295ba7d9693917c8af65241aa0d3ae}
+\index{Asset.SubAsset@{Asset.SubAsset}!LoadVisible@{LoadVisible}}
+\index{LoadVisible@{LoadVisible}!Asset.SubAsset@{Asset.SubAsset}}
+\doxyparagraph{\texorpdfstring{LoadVisible()}{LoadVisible()}}
+{\footnotesize\ttfamily static Object\mbox{[}$\,$\mbox{]} Load\+Visible (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Loads only the visible (representation) sub-\/asset objects of an asset.
+
+The visible representations are those sub-\/assets you see in the project view when an asset is expandable like a folder.
+
+Does not include the main asset.
+
+CAUTION\+: Calling this on scene assets is not supported (error messages in console).
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+All visible sub-\/assets of the asset, excluding the main asset. Or an empty array if load failed or there are no sub-\/assets.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_sub_asset_a5a074e1dfad018aec7956375a8cf6099_a5a074e1dfad018aec7956375a8cf6099}{Code\+Smile\+Editor.\+Asset.\+Sub\+Asset.\+Load\+All}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.LoadAllAssetRepresentationsAtPath.html}{\texttt{ Asset\+Database.\+Load\+All\+Asset\+Representations\+At\+Path}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_sub_asset_af2517f14782bec5f449da4bc4937cf8c_af2517f14782bec5f449da4bc4937cf8c}\label{class_code_smile_editor_1_1_asset_1_1_sub_asset_af2517f14782bec5f449da4bc4937cf8c_af2517f14782bec5f449da4bc4937cf8c}
+\index{Asset.SubAsset@{Asset.SubAsset}!Remove@{Remove}}
+\index{Remove@{Remove}!Asset.SubAsset@{Asset.SubAsset}}
+\doxyparagraph{\texorpdfstring{Remove()}{Remove()}}
+{\footnotesize\ttfamily static void Remove (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{sub\+Asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Removes a sub-\/object from the asset it is contained in.
+
+
+\begin{DoxyParams}{Parameters}
+{\em sub\+Asset} & Instance of a sub-\/asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_sub_asset_a651286de3f2c9fef50eb5720f0a1b3a8_a651286de3f2c9fef50eb5720f0a1b3a8}{Code\+Smile\+Editor.\+Asset.\+Sub\+Asset.\+Add}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.RemoveObjectFromAsset.html}{\texttt{ Asset\+Database.\+Remove\+Object\+From\+Asset}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_sub_asset_8cs_source_l00078}{78}} of file \mbox{\hyperlink{_asset_8_sub_asset_8cs_source}{Asset.\+Sub\+Asset.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00079\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00080\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(subAsset,\ nameof(subAsset));}
+\DoxyCodeLine{00081\ }
+\DoxyCodeLine{00082\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.RemoveObjectFromAsset(subAsset);}
+\DoxyCodeLine{00083\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_sub_asset_a61bfe373deb21386f749d2f947da5476_a61bfe373deb21386f749d2f947da5476}\label{class_code_smile_editor_1_1_asset_1_1_sub_asset_a61bfe373deb21386f749d2f947da5476_a61bfe373deb21386f749d2f947da5476}
+\index{Asset.SubAsset@{Asset.SubAsset}!SetMain@{SetMain}}
+\index{SetMain@{SetMain}!Asset.SubAsset@{Asset.SubAsset}}
+\doxyparagraph{\texorpdfstring{SetMain()}{SetMain()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
+{\footnotesize\ttfamily static void Set\+Main (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{sub\+Asset, }\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Sets (changes) an asset\textquotesingle{}s \textquotesingle{}main\textquotesingle{} object to one of its sub-\/assets.
+
+Automatically imports the asset after changing the main type so that the change takes immediate effect.
+
+
+\begin{DoxyParams}{Parameters}
+{\em sub\+Asset} & Instance of a sub-\/asset. Must be a sub-\/asset of the asset.\\
+\hline
+{\em asset} & Instance of the asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_status_a2e6860cd8479a284c3c81f4377ed100a_a2e6860cd8479a284c3c81f4377ed100a}{Code\+Smile\+Editor.\+Asset.\+Status.\+Is\+Main}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_status_ac715a31d20c073c37844f5d8839496cd_ac715a31d20c073c37844f5d8839496cd}{Code\+Smile\+Editor.\+Asset.\+Status.\+Is\+Sub}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.SetMainObject.html}{\texttt{ Asset\+Database.\+Set\+Main\+Object}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_sub_asset_ac4fb08375dcad548d850eec212582519_ac4fb08375dcad548d850eec212582519}\label{class_code_smile_editor_1_1_asset_1_1_sub_asset_ac4fb08375dcad548d850eec212582519_ac4fb08375dcad548d850eec212582519}
+\index{Asset.SubAsset@{Asset.SubAsset}!SetMain@{SetMain}}
+\index{SetMain@{SetMain}!Asset.SubAsset@{Asset.SubAsset}}
+\doxyparagraph{\texorpdfstring{SetMain()}{SetMain()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
+{\footnotesize\ttfamily static void Set\+Main (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{sub\+Asset, }\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Sets (changes) an asset\textquotesingle{}s \textquotesingle{}main\textquotesingle{} object to one of its sub-\/assets.
+
+Automatically imports the asset after changing the main type so that the change takes immediate effect.
+
+
+\begin{DoxyParams}{Parameters}
+{\em sub\+Asset} & Instance of a sub-\/asset. Must be a sub-\/asset of the asset.\\
+\hline
+{\em path} & Path to the asset file.\\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_status_a2e6860cd8479a284c3c81f4377ed100a_a2e6860cd8479a284c3c81f4377ed100a}{Code\+Smile\+Editor.\+Asset.\+Status.\+Is\+Main}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_status_ac715a31d20c073c37844f5d8839496cd_ac715a31d20c073c37844f5d8839496cd}{Code\+Smile\+Editor.\+Asset.\+Status.\+Is\+Sub}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.SetMainObject.html}{\texttt{ Asset\+Database.\+Set\+Main\+Object}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_sub_asset_8cs_source_l00097}{97}} of file \mbox{\hyperlink{_asset_8_sub_asset_8cs_source}{Asset.\+Sub\+Asset.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00098\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00099\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.SetMainObject(subAsset,\ path);}
+\DoxyCodeLine{00100\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ File.Import(path);}
+\DoxyCodeLine{00101\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+References \mbox{\hyperlink{_asset_8_file_8cs_source_l00275}{Asset.\+File.\+Import()}}.
+
+Here is the call graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=307pt]{class_code_smile_editor_1_1_asset_1_1_sub_asset_ac4fb08375dcad548d850eec212582519_ac4fb08375dcad548d850eec212582519_cgraph}
+\end{center}
+\end{figure}
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_sub_asset__coll__graph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_sub_asset__coll__graph.md5
new file mode 100644
index 00000000..1f813c85
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_sub_asset__coll__graph.md5
@@ -0,0 +1 @@
+65be1c3726bdd30afb3e0cec6adbaa7d
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_sub_asset__coll__graph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_sub_asset__coll__graph.pdf
new file mode 100644
index 00000000..de3cc36a
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_sub_asset__coll__graph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_sub_asset_ac4fb08375dcad548d850eec212582519_ac4fb08375dcad548d850eec212582519_cgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_sub_asset_ac4fb08375dcad548d850eec212582519_ac4fb08375dcad548d850eec212582519_cgraph.md5
new file mode 100644
index 00000000..f495a7c1
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_sub_asset_ac4fb08375dcad548d850eec212582519_ac4fb08375dcad548d850eec212582519_cgraph.md5
@@ -0,0 +1 @@
+43861504c58f8ebdd34923b53b5c7d5f
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_sub_asset_ac4fb08375dcad548d850eec212582519_ac4fb08375dcad548d850eec212582519_cgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_sub_asset_ac4fb08375dcad548d850eec212582519_ac4fb08375dcad548d850eec212582519_cgraph.pdf
new file mode 100644
index 00000000..26940756
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_sub_asset_ac4fb08375dcad548d850eec212582519_ac4fb08375dcad548d850eec212582519_cgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_version_control.tex b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_version_control.tex
new file mode 100644
index 00000000..b286aa5a
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_version_control.tex
@@ -0,0 +1,640 @@
+\doxysubsection{Asset.\+Version\+Control Class Reference}
+\hypertarget{class_code_smile_editor_1_1_asset_1_1_version_control}{}\label{class_code_smile_editor_1_1_asset_1_1_version_control}\index{Asset.VersionControl@{Asset.VersionControl}}
+
+
+Groups version control related functionality.
+
+
+
+
+Collaboration diagram for Asset.\+Version\+Control\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=206pt]{class_code_smile_editor_1_1_asset_1_1_version_control__coll__graph}
+\end{center}
+\end{figure}
+\doxysubsubsubsection*{Static Public Member Functions}
+\begin{DoxyCompactItemize}
+\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a7f6bbb0782e7f7635706b0e0bc921341_a7f6bbb0782e7f7635706b0e0bc921341}{Can\+Make\+Editable}} (\mbox{[}Not\+Null\mbox{]} Object asset, Status\+Query\+Options options=Default\+Status\+Query\+Option)
+\begin{DoxyCompactList}\small\item\em Returns true if the asset can be opened for editing in the version control system. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a2e5d0d18f7ef51ec5ea8a79689584125_a2e5d0d18f7ef51ec5ea8a79689584125}{Can\+Make\+Editable}} (\mbox{[}Not\+Null\mbox{]} Object\mbox{[}$\,$\mbox{]} assets, out List$<$ String $>$ not\+Editable\+Paths, Status\+Query\+Options options=Default\+Status\+Query\+Option)
+\begin{DoxyCompactList}\small\item\em Tests which assets can be made editable and provides a list of paths that cannot be opened for editing in the version control system. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}{Can\+Make\+Editable}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path, Status\+Query\+Options options=Default\+Status\+Query\+Option)
+\begin{DoxyCompactList}\small\item\em Returns true if the asset can be opened for editing in the version control system. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a805c285250d01e10b7eafe7f8bea9f3b_a805c285250d01e10b7eafe7f8bea9f3b}{Can\+Make\+Editable}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\mbox{[}$\,$\mbox{]} paths, out List$<$ String $>$ not\+Editable\+Paths, Status\+Query\+Options options=Default\+Status\+Query\+Option)
+\begin{DoxyCompactList}\small\item\em Tests which assets can be made editable and provides a list of paths that cannot be opened for editing in the version control system. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_ac136cd1d20cf4aacbca01dd9d23f4d22_ac136cd1d20cf4aacbca01dd9d23f4d22}{Can\+Make\+Editable}} (\mbox{[}Not\+Null\mbox{]} String\mbox{[}$\,$\mbox{]} paths, out List$<$ String $>$ not\+Editable\+Paths, Status\+Query\+Options options=Default\+Status\+Query\+Option)
+\begin{DoxyCompactList}\small\item\em Tests which assets can be made editable and provides a list of paths that cannot be opened for editing in the version control system. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a14fd4d4a0447ac1dacde2ae694c39339_a14fd4d4a0447ac1dacde2ae694c39339}{Is\+Editable}} (\mbox{[}Not\+Null\mbox{]} Object asset, Status\+Query\+Options options=Default\+Status\+Query\+Option)
+\begin{DoxyCompactList}\small\item\em Returns true if the asset file is open for editing in the version control system. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_ad8a9e3f4c51382aa26b9de11e0f9d0a6_ad8a9e3f4c51382aa26b9de11e0f9d0a6}{Is\+Editable}} (\mbox{[}Not\+Null\mbox{]} Object\mbox{[}$\,$\mbox{]} assets, out List$<$ String $>$ not\+Editable\+Paths, Status\+Query\+Options options=Default\+Status\+Query\+Option)
+\begin{DoxyCompactList}\small\item\em Tests if the assets can be opened for editing in the version control system. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a01231010fea0f9fbcadb4708e84c668a_a01231010fea0f9fbcadb4708e84c668a}{Is\+Editable}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\mbox{[}$\,$\mbox{]} paths, out List$<$ String $>$ not\+Editable\+Paths, Status\+Query\+Options options=Default\+Status\+Query\+Option)
+\begin{DoxyCompactList}\small\item\em Tests if the assets can be opened for editing in the version control system. \end{DoxyCompactList}\item
+static void \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_ad786f63df78897c77c7b158140e97ded_ad786f63df78897c77c7b158140e97ded}{Is\+Editable}} (\mbox{[}Not\+Null\mbox{]} String\mbox{[}$\,$\mbox{]} paths, out List$<$ String $>$ not\+Editable\+Paths, Status\+Query\+Options options=Default\+Status\+Query\+Option)
+\begin{DoxyCompactList}\small\item\em Tests if the assets can be opened for editing in the version control system. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a98a4620e539f0cf83a99cb54b154be49_a98a4620e539f0cf83a99cb54b154be49}{Is\+Meta\+Editable}} (\mbox{[}Not\+Null\mbox{]} Object asset, Status\+Query\+Options options=Default\+Status\+Query\+Option)
+\begin{DoxyCompactList}\small\item\em Returns true if the meta file is open for editing in the version control system. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a43dd5490eaead3d1d8e0b72879e5d2f8_a43dd5490eaead3d1d8e0b72879e5d2f8}{Make\+Editable}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}} path)
+\begin{DoxyCompactList}\small\item\em Tries to open the path for editing in the version control system. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_ab13913c709a6e8bc08412828d8ce86af_ab13913c709a6e8bc08412828d8ce86af}{Make\+Editable}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\mbox{[}$\,$\mbox{]} paths, out List$<$ String $>$ not\+Editable\+Paths)
+\begin{DoxyCompactList}\small\item\em Tries to open multiple paths for editing in the version control system. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a0418e950cb362718e024a62216d057dc_a0418e950cb362718e024a62216d057dc}{Make\+Editable}} (\mbox{[}Not\+Null\mbox{]} String\mbox{[}$\,$\mbox{]} paths, out List$<$ String $>$ not\+Editable\+Paths)
+\begin{DoxyCompactList}\small\item\em Tries to open multiple paths for editing in the version control system. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_ad298d4e4fcf5043ab4d20e64bce3617f_ad298d4e4fcf5043ab4d20e64bce3617f}{Make\+Editable\+Interactive}} (\mbox{[}Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\mbox{[}$\,$\mbox{]} paths, out List$<$ String $>$ not\+Editable\+Paths, String prompt=null)
+\begin{DoxyCompactList}\small\item\em Tries to open multiple paths for editing in the version control system. Shows a prompt to the user unless the editor is in batch operation mode. \end{DoxyCompactList}\item
+static Boolean \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a8eac8f1fdbd0e9009799ceeb46dc6b5c_a8eac8f1fdbd0e9009799ceeb46dc6b5c}{Make\+Editable\+Interactive}} (\mbox{[}Not\+Null\mbox{]} String\mbox{[}$\,$\mbox{]} paths, out List$<$ String $>$ not\+Editable\+Paths, String prompt=null)
+\begin{DoxyCompactList}\small\item\em Tries to open multiple paths for editing in the version control system. Shows a prompt to the user unless the editor is in batch operation mode. \end{DoxyCompactList}\end{DoxyCompactItemize}
+
+
+\doxysubsubsection{Detailed Description}
+Groups version control related functionality.
+
+Definition at line \mbox{\hyperlink{_asset_8_version_control_8cs_source_l00017}{17}} of file \mbox{\hyperlink{_asset_8_version_control_8cs_source}{Asset.\+Version\+Control.\+cs}}.
+
+
+
+\doxysubsubsection{Member Function Documentation}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_version_control_a7f6bbb0782e7f7635706b0e0bc921341_a7f6bbb0782e7f7635706b0e0bc921341}\label{class_code_smile_editor_1_1_asset_1_1_version_control_a7f6bbb0782e7f7635706b0e0bc921341_a7f6bbb0782e7f7635706b0e0bc921341}
+\index{Asset.VersionControl@{Asset.VersionControl}!CanMakeEditable@{CanMakeEditable}}
+\index{CanMakeEditable@{CanMakeEditable}!Asset.VersionControl@{Asset.VersionControl}}
+\doxyparagraph{\texorpdfstring{CanMakeEditable()}{CanMakeEditable()}\hspace{0.1cm}{\footnotesize\ttfamily [1/5]}}
+{\footnotesize\ttfamily static Boolean Can\+Make\+Editable (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset, }\item[{Status\+Query\+Options}]{options = {\ttfamily DefaultStatusQueryOption} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns true if the asset can be opened for editing in the version control system.
+
+If this method returns false, \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message()} returns the error message.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & Instance of an asset.\\
+\hline
+{\em options} & \href{https://docs.unity3d.com/ScriptReference/StatusQueryOptions.html}{\texttt{ Status\+Query\+Options}} \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if the path can be opened for editing, false otherwise.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a43dd5490eaead3d1d8e0b72879e5d2f8_a43dd5490eaead3d1d8e0b72879e5d2f8}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Make\+Editable}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a14fd4d4a0447ac1dacde2ae694c39339_a14fd4d4a0447ac1dacde2ae694c39339}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Is\+Editable}
+\item \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.CanOpenForEdit.html}{\texttt{ Asset\+Database.\+Can\+Open\+For\+Edit}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_version_control_8cs_source_l00066}{66}} of file \mbox{\hyperlink{_asset_8_version_control_8cs_source}{Asset.\+Version\+Control.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00067\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00068\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ ThrowIf.ArgumentIsNull(asset,\ nameof(asset));}
+\DoxyCodeLine{00069\ }
+\DoxyCodeLine{00070\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}{CanMakeEditable}}(Path.Get(asset),\ options);}
+\DoxyCodeLine{00071\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+References \mbox{\hyperlink{_asset_8_version_control_8cs_source_l00039}{Asset.\+Version\+Control.\+Can\+Make\+Editable()}}, and \mbox{\hyperlink{_asset_8_path_8_static_8cs_source_l00080}{Asset.\+Path.\+Get()}}.
+
+Here is the call graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=350pt]{class_code_smile_editor_1_1_asset_1_1_version_control_a7f6bbb0782e7f7635706b0e0bc921341_a7f6bbb0782e7f7635706b0e0bc921341_cgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_version_control_a2e5d0d18f7ef51ec5ea8a79689584125_a2e5d0d18f7ef51ec5ea8a79689584125}\label{class_code_smile_editor_1_1_asset_1_1_version_control_a2e5d0d18f7ef51ec5ea8a79689584125_a2e5d0d18f7ef51ec5ea8a79689584125}
+\index{Asset.VersionControl@{Asset.VersionControl}!CanMakeEditable@{CanMakeEditable}}
+\index{CanMakeEditable@{CanMakeEditable}!Asset.VersionControl@{Asset.VersionControl}}
+\doxyparagraph{\texorpdfstring{CanMakeEditable()}{CanMakeEditable()}\hspace{0.1cm}{\footnotesize\ttfamily [2/5]}}
+{\footnotesize\ttfamily static void Can\+Make\+Editable (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object\mbox{[}$\,$\mbox{]}}]{assets, }\item[{out List$<$ String $>$}]{not\+Editable\+Paths, }\item[{Status\+Query\+Options}]{options = {\ttfamily DefaultStatusQueryOption} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tests which assets can be made editable and provides a list of paths that cannot be opened for editing in the version control system.
+
+To get a failure message query each individual path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em assets} & Instances of assets.\\
+\hline
+{\em not\+Editable\+Paths} & List of paths that cannot be opened for editing. List is empty if all can be opened.\\
+\hline
+{\em options} & \href{https://docs.unity3d.com/ScriptReference/StatusQueryOptions.html}{\texttt{ Status\+Query\+Options}} \\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a43dd5490eaead3d1d8e0b72879e5d2f8_a43dd5490eaead3d1d8e0b72879e5d2f8}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Make\+Editable}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a14fd4d4a0447ac1dacde2ae694c39339_a14fd4d4a0447ac1dacde2ae694c39339}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Is\+Editable}
+\item \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.CanOpenForEdit.html}{\texttt{ Asset\+Database.\+Can\+Open\+For\+Edit}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}\label{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}
+\index{Asset.VersionControl@{Asset.VersionControl}!CanMakeEditable@{CanMakeEditable}}
+\index{CanMakeEditable@{CanMakeEditable}!Asset.VersionControl@{Asset.VersionControl}}
+\doxyparagraph{\texorpdfstring{CanMakeEditable()}{CanMakeEditable()}\hspace{0.1cm}{\footnotesize\ttfamily [3/5]}}
+{\footnotesize\ttfamily static Boolean Can\+Make\+Editable (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path, }\item[{Status\+Query\+Options}]{options = {\ttfamily DefaultStatusQueryOption} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns true if the asset can be opened for editing in the version control system.
+
+If this method returns false, \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message()} returns the error message.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset.\\
+\hline
+{\em options} & \href{https://docs.unity3d.com/ScriptReference/StatusQueryOptions.html}{\texttt{ Status\+Query\+Options}} \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if the path can be opened for editing, false otherwise.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a43dd5490eaead3d1d8e0b72879e5d2f8_a43dd5490eaead3d1d8e0b72879e5d2f8}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Make\+Editable}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a14fd4d4a0447ac1dacde2ae694c39339_a14fd4d4a0447ac1dacde2ae694c39339}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Is\+Editable}
+\item \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.CanOpenForEdit.html}{\texttt{ Asset\+Database.\+Can\+Open\+For\+Edit}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_version_control_8cs_source_l00039}{39}} of file \mbox{\hyperlink{_asset_8_version_control_8cs_source}{Asset.\+Version\+Control.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00040\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00041\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ canOpen\ =\ AssetDatabase.CanOpenForEdit(path,\ out\ var\ message,\ options);}
+\DoxyCodeLine{00042\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (canOpen\ ==\ \textcolor{keyword}{false})}
+\DoxyCodeLine{00043\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ SetLastErrorMessage(message);}
+\DoxyCodeLine{00044\ }
+\DoxyCodeLine{00045\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ canOpen;}
+\DoxyCodeLine{00046\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+
+
+Referenced by \mbox{\hyperlink{_asset_8_version_control_8cs_source_l00066}{Asset.\+Version\+Control.\+Can\+Make\+Editable()}}.
+
+Here is the caller graph for this function\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=301pt]{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9_icgraph}
+\end{center}
+\end{figure}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_version_control_a805c285250d01e10b7eafe7f8bea9f3b_a805c285250d01e10b7eafe7f8bea9f3b}\label{class_code_smile_editor_1_1_asset_1_1_version_control_a805c285250d01e10b7eafe7f8bea9f3b_a805c285250d01e10b7eafe7f8bea9f3b}
+\index{Asset.VersionControl@{Asset.VersionControl}!CanMakeEditable@{CanMakeEditable}}
+\index{CanMakeEditable@{CanMakeEditable}!Asset.VersionControl@{Asset.VersionControl}}
+\doxyparagraph{\texorpdfstring{CanMakeEditable()}{CanMakeEditable()}\hspace{0.1cm}{\footnotesize\ttfamily [4/5]}}
+{\footnotesize\ttfamily static void Can\+Make\+Editable (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\mbox{[}$\,$\mbox{]}}]{paths, }\item[{out List$<$ String $>$}]{not\+Editable\+Paths, }\item[{Status\+Query\+Options}]{options = {\ttfamily DefaultStatusQueryOption} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tests which assets can be made editable and provides a list of paths that cannot be opened for editing in the version control system.
+
+To get a failure message query each individual path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em paths} & Paths to assets.\\
+\hline
+{\em not\+Editable\+Paths} & List of paths that cannot be opened for editing. List is empty if all can be opened.\\
+\hline
+{\em options} & \href{https://docs.unity3d.com/ScriptReference/StatusQueryOptions.html}{\texttt{ Status\+Query\+Options}} \\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a43dd5490eaead3d1d8e0b72879e5d2f8_a43dd5490eaead3d1d8e0b72879e5d2f8}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Make\+Editable}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a14fd4d4a0447ac1dacde2ae694c39339_a14fd4d4a0447ac1dacde2ae694c39339}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Is\+Editable}
+\item \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.CanOpenForEdit.html}{\texttt{ Asset\+Database.\+Can\+Open\+For\+Edit}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_version_control_ac136cd1d20cf4aacbca01dd9d23f4d22_ac136cd1d20cf4aacbca01dd9d23f4d22}\label{class_code_smile_editor_1_1_asset_1_1_version_control_ac136cd1d20cf4aacbca01dd9d23f4d22_ac136cd1d20cf4aacbca01dd9d23f4d22}
+\index{Asset.VersionControl@{Asset.VersionControl}!CanMakeEditable@{CanMakeEditable}}
+\index{CanMakeEditable@{CanMakeEditable}!Asset.VersionControl@{Asset.VersionControl}}
+\doxyparagraph{\texorpdfstring{CanMakeEditable()}{CanMakeEditable()}\hspace{0.1cm}{\footnotesize\ttfamily [5/5]}}
+{\footnotesize\ttfamily static void Can\+Make\+Editable (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String\mbox{[}$\,$\mbox{]}}]{paths, }\item[{out List$<$ String $>$}]{not\+Editable\+Paths, }\item[{Status\+Query\+Options}]{options = {\ttfamily DefaultStatusQueryOption} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tests which assets can be made editable and provides a list of paths that cannot be opened for editing in the version control system.
+
+To get a failure message query each individual path.
+
+
+\begin{DoxyParams}{Parameters}
+{\em paths} & Instances of assets.\\
+\hline
+{\em not\+Editable\+Paths} & List of paths that cannot be opened for editing. List is empty if all can be opened.\\
+\hline
+{\em options} & \href{https://docs.unity3d.com/ScriptReference/StatusQueryOptions.html}{\texttt{ Status\+Query\+Options}} \\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a43dd5490eaead3d1d8e0b72879e5d2f8_a43dd5490eaead3d1d8e0b72879e5d2f8}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Make\+Editable}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a14fd4d4a0447ac1dacde2ae694c39339_a14fd4d4a0447ac1dacde2ae694c39339}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Is\+Editable}
+\item \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.CanOpenForEdit.html}{\texttt{ Asset\+Database.\+Can\+Open\+For\+Edit}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_version_control_8cs_source_l00111}{111}} of file \mbox{\hyperlink{_asset_8_version_control_8cs_source}{Asset.\+Version\+Control.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00113\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00114\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ notEditablePaths\ =\ \textcolor{keyword}{new}\ List();}
+\DoxyCodeLine{00115\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.CanOpenForEdit(paths,\ notEditablePaths,\ options);}
+\DoxyCodeLine{00116\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_version_control_a14fd4d4a0447ac1dacde2ae694c39339_a14fd4d4a0447ac1dacde2ae694c39339}\label{class_code_smile_editor_1_1_asset_1_1_version_control_a14fd4d4a0447ac1dacde2ae694c39339_a14fd4d4a0447ac1dacde2ae694c39339}
+\index{Asset.VersionControl@{Asset.VersionControl}!IsEditable@{IsEditable}}
+\index{IsEditable@{IsEditable}!Asset.VersionControl@{Asset.VersionControl}}
+\doxyparagraph{\texorpdfstring{IsEditable()}{IsEditable()}\hspace{0.1cm}{\footnotesize\ttfamily [1/4]}}
+{\footnotesize\ttfamily static Boolean Is\+Editable (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset, }\item[{Status\+Query\+Options}]{options = {\ttfamily DefaultStatusQueryOption} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns true if the asset file is open for editing in the version control system.
+
+If this method returns false, \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message()} returns the error message.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & Instance of an asset.\\
+\hline
+{\em options} & \href{https://docs.unity3d.com/ScriptReference/StatusQueryOptions.html}{\texttt{ Status\+Query\+Options}} \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a98a4620e539f0cf83a99cb54b154be49_a98a4620e539f0cf83a99cb54b154be49}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Is\+Meta\+Editable}
+\item \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.IsOpenForEdit.html}{\texttt{ Asset\+Database.\+Is\+Open\+For\+Edit}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_version_control_8cs_source_l00182}{182}} of file \mbox{\hyperlink{_asset_8_version_control_8cs_source}{Asset.\+Version\+Control.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00183\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00184\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ isOpen\ =\ AssetDatabase.IsOpenForEdit(asset,\ out\ var\ message,\ options);}
+\DoxyCodeLine{00185\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (isOpen\ ==\ \textcolor{keyword}{false})}
+\DoxyCodeLine{00186\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ SetLastErrorMessage(message);}
+\DoxyCodeLine{00187\ }
+\DoxyCodeLine{00188\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ isOpen;}
+\DoxyCodeLine{00189\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_version_control_ad8a9e3f4c51382aa26b9de11e0f9d0a6_ad8a9e3f4c51382aa26b9de11e0f9d0a6}\label{class_code_smile_editor_1_1_asset_1_1_version_control_ad8a9e3f4c51382aa26b9de11e0f9d0a6_ad8a9e3f4c51382aa26b9de11e0f9d0a6}
+\index{Asset.VersionControl@{Asset.VersionControl}!IsEditable@{IsEditable}}
+\index{IsEditable@{IsEditable}!Asset.VersionControl@{Asset.VersionControl}}
+\doxyparagraph{\texorpdfstring{IsEditable()}{IsEditable()}\hspace{0.1cm}{\footnotesize\ttfamily [2/4]}}
+{\footnotesize\ttfamily static void Is\+Editable (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object\mbox{[}$\,$\mbox{]}}]{assets, }\item[{out List$<$ String $>$}]{not\+Editable\+Paths, }\item[{Status\+Query\+Options}]{options = {\ttfamily DefaultStatusQueryOption} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tests if the assets can be opened for editing in the version control system.
+
+To get an error message query each failed path individually.
+
+
+\begin{DoxyParams}{Parameters}
+{\em assets} & Instances of assets.\\
+\hline
+{\em not\+Editable\+Paths} & List of paths that are not editable. Is empty if all paths are editable.\\
+\hline
+{\em options} & \href{https://docs.unity3d.com/ScriptReference/StatusQueryOptions.html}{\texttt{ Status\+Query\+Options}} \\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Can\+Make\+Editable}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.IsOpenForEdit.html}{\texttt{ Asset\+Database.\+Is\+Open\+For\+Edit}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_version_control_a01231010fea0f9fbcadb4708e84c668a_a01231010fea0f9fbcadb4708e84c668a}\label{class_code_smile_editor_1_1_asset_1_1_version_control_a01231010fea0f9fbcadb4708e84c668a_a01231010fea0f9fbcadb4708e84c668a}
+\index{Asset.VersionControl@{Asset.VersionControl}!IsEditable@{IsEditable}}
+\index{IsEditable@{IsEditable}!Asset.VersionControl@{Asset.VersionControl}}
+\doxyparagraph{\texorpdfstring{IsEditable()}{IsEditable()}\hspace{0.1cm}{\footnotesize\ttfamily [3/4]}}
+{\footnotesize\ttfamily static void Is\+Editable (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\mbox{[}$\,$\mbox{]}}]{paths, }\item[{out List$<$ String $>$}]{not\+Editable\+Paths, }\item[{Status\+Query\+Options}]{options = {\ttfamily DefaultStatusQueryOption} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tests if the assets can be opened for editing in the version control system.
+
+To get an error message query each failed path individually.
+
+
+\begin{DoxyParams}{Parameters}
+{\em paths} & Paths to assets.\\
+\hline
+{\em not\+Editable\+Paths} & List of paths that are not editable. Is empty if all paths are editable.\\
+\hline
+{\em options} & \href{https://docs.unity3d.com/ScriptReference/StatusQueryOptions.html}{\texttt{ Status\+Query\+Options}} \\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Can\+Make\+Editable}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.IsOpenForEdit.html}{\texttt{ Asset\+Database.\+Is\+Open\+For\+Edit}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_version_control_ad786f63df78897c77c7b158140e97ded_ad786f63df78897c77c7b158140e97ded}\label{class_code_smile_editor_1_1_asset_1_1_version_control_ad786f63df78897c77c7b158140e97ded_ad786f63df78897c77c7b158140e97ded}
+\index{Asset.VersionControl@{Asset.VersionControl}!IsEditable@{IsEditable}}
+\index{IsEditable@{IsEditable}!Asset.VersionControl@{Asset.VersionControl}}
+\doxyparagraph{\texorpdfstring{IsEditable()}{IsEditable()}\hspace{0.1cm}{\footnotesize\ttfamily [4/4]}}
+{\footnotesize\ttfamily static void Is\+Editable (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String\mbox{[}$\,$\mbox{]}}]{paths, }\item[{out List$<$ String $>$}]{not\+Editable\+Paths, }\item[{Status\+Query\+Options}]{options = {\ttfamily DefaultStatusQueryOption} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tests if the assets can be opened for editing in the version control system.
+
+To get an error message query each failed path individually.
+
+
+\begin{DoxyParams}{Parameters}
+{\em paths} & Paths to assets.\\
+\hline
+{\em not\+Editable\+Paths} & List of paths that are not editable. Is empty if all paths are editable.\\
+\hline
+{\em options} & \href{https://docs.unity3d.com/ScriptReference/StatusQueryOptions.html}{\texttt{ Status\+Query\+Options}} \\
+\hline
+\end{DoxyParams}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Can\+Make\+Editable}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.IsOpenForEdit.html}{\texttt{ Asset\+Database.\+Is\+Open\+For\+Edit}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_version_control_8cs_source_l00223}{223}} of file \mbox{\hyperlink{_asset_8_version_control_8cs_source}{Asset.\+Version\+Control.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00225\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00226\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ notEditablePaths\ =\ \textcolor{keyword}{new}\ List();}
+\DoxyCodeLine{00227\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ AssetDatabase.IsOpenForEdit(paths,\ notEditablePaths,\ options);}
+\DoxyCodeLine{00228\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_version_control_a98a4620e539f0cf83a99cb54b154be49_a98a4620e539f0cf83a99cb54b154be49}\label{class_code_smile_editor_1_1_asset_1_1_version_control_a98a4620e539f0cf83a99cb54b154be49_a98a4620e539f0cf83a99cb54b154be49}
+\index{Asset.VersionControl@{Asset.VersionControl}!IsMetaEditable@{IsMetaEditable}}
+\index{IsMetaEditable@{IsMetaEditable}!Asset.VersionControl@{Asset.VersionControl}}
+\doxyparagraph{\texorpdfstring{IsMetaEditable()}{IsMetaEditable()}}
+{\footnotesize\ttfamily static Boolean Is\+Meta\+Editable (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} Object}]{asset, }\item[{Status\+Query\+Options}]{options = {\ttfamily DefaultStatusQueryOption} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Returns true if the meta file is open for editing in the version control system.
+
+If this method returns false, \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message()} returns the error message.
+
+
+\begin{DoxyParams}{Parameters}
+{\em asset} & Instance of an asset.\\
+\hline
+{\em options} & \href{https://docs.unity3d.com/ScriptReference/StatusQueryOptions.html}{\texttt{ Status\+Query\+Options}} \\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a14fd4d4a0447ac1dacde2ae694c39339_a14fd4d4a0447ac1dacde2ae694c39339}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Is\+Editable}
+\item \doxylink{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{Code\+Smile\+Editor.\+Asset.\+Get\+Last\+Error\+Message}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.IsMetaFileOpenForEdit.html}{\texttt{ Asset\+Database.\+Is\+Meta\+File\+Open\+For\+Edit}}
+\end{DoxyItemize}
+
+Definition at line \mbox{\hyperlink{_asset_8_version_control_8cs_source_l00156}{156}} of file \mbox{\hyperlink{_asset_8_version_control_8cs_source}{Asset.\+Version\+Control.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00157\ \ \ \ \ \ \ \ \ \ \ \ \ \{}
+\DoxyCodeLine{00158\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ var\ isOpen\ =\ AssetDatabase.IsMetaFileOpenForEdit(asset,\ out\ var\ message,\ options);}
+\DoxyCodeLine{00159\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{if}\ (isOpen\ ==\ \textcolor{keyword}{false})}
+\DoxyCodeLine{00160\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ SetLastErrorMessage(message);}
+\DoxyCodeLine{00161\ }
+\DoxyCodeLine{00162\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \textcolor{keywordflow}{return}\ isOpen;}
+\DoxyCodeLine{00163\ \ \ \ \ \ \ \ \ \ \ \ \ \}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_1_1_version_control_a43dd5490eaead3d1d8e0b72879e5d2f8_a43dd5490eaead3d1d8e0b72879e5d2f8}\label{class_code_smile_editor_1_1_asset_1_1_version_control_a43dd5490eaead3d1d8e0b72879e5d2f8_a43dd5490eaead3d1d8e0b72879e5d2f8}
+\index{Asset.VersionControl@{Asset.VersionControl}!MakeEditable@{MakeEditable}}
+\index{MakeEditable@{MakeEditable}!Asset.VersionControl@{Asset.VersionControl}}
+\doxyparagraph{\texorpdfstring{MakeEditable()}{MakeEditable()}\hspace{0.1cm}{\footnotesize\ttfamily [1/3]}}
+{\footnotesize\ttfamily static Boolean Make\+Editable (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}}]{path }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tries to open the path for editing in the version control system.
+
+Use \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Can\+Make\+Editable} to get an error message if this method returns false.
+
+
+\begin{DoxyParams}{Parameters}
+{\em path} & Path to an asset.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if the path is now editable, false if at least one failed to open.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Can\+Make\+Editable}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.MakeEditable.html}{\texttt{ Asset\+Database.\+Make\+Editable}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_version_control_ab13913c709a6e8bc08412828d8ce86af_ab13913c709a6e8bc08412828d8ce86af}\label{class_code_smile_editor_1_1_asset_1_1_version_control_ab13913c709a6e8bc08412828d8ce86af_ab13913c709a6e8bc08412828d8ce86af}
+\index{Asset.VersionControl@{Asset.VersionControl}!MakeEditable@{MakeEditable}}
+\index{MakeEditable@{MakeEditable}!Asset.VersionControl@{Asset.VersionControl}}
+\doxyparagraph{\texorpdfstring{MakeEditable()}{MakeEditable()}\hspace{0.1cm}{\footnotesize\ttfamily [2/3]}}
+{\footnotesize\ttfamily static Boolean Make\+Editable (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\mbox{[}$\,$\mbox{]}}]{paths, }\item[{out List$<$ String $>$}]{not\+Editable\+Paths }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tries to open multiple paths for editing in the version control system.
+
+Use \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Can\+Make\+Editable} to get an error message for individual paths.
+
+
+\begin{DoxyParams}{Parameters}
+{\em paths} & Paths to assets.\\
+\hline
+{\em not\+Editable\+Paths} & List of paths that are not editable. Is empty if all paths are editable.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if the path is now editable, false if at least one failed to open.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Can\+Make\+Editable}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.MakeEditable.html}{\texttt{ Asset\+Database.\+Make\+Editable}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_version_control_a0418e950cb362718e024a62216d057dc_a0418e950cb362718e024a62216d057dc}\label{class_code_smile_editor_1_1_asset_1_1_version_control_a0418e950cb362718e024a62216d057dc_a0418e950cb362718e024a62216d057dc}
+\index{Asset.VersionControl@{Asset.VersionControl}!MakeEditable@{MakeEditable}}
+\index{MakeEditable@{MakeEditable}!Asset.VersionControl@{Asset.VersionControl}}
+\doxyparagraph{\texorpdfstring{MakeEditable()}{MakeEditable()}\hspace{0.1cm}{\footnotesize\ttfamily [3/3]}}
+{\footnotesize\ttfamily static Boolean Make\+Editable (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String\mbox{[}$\,$\mbox{]}}]{paths, }\item[{out List$<$ String $>$}]{not\+Editable\+Paths }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tries to open multiple paths for editing in the version control system.
+
+Use \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Can\+Make\+Editable} to get an error message for individual paths.
+
+
+\begin{DoxyParams}{Parameters}
+{\em paths} & Paths to assets.\\
+\hline
+{\em not\+Editable\+Paths} & List of paths that are not editable. Is empty if all paths are editable.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if the paths are now editable, false if at least one failed to open.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Can\+Make\+Editable}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.MakeEditable.html}{\texttt{ Asset\+Database.\+Make\+Editable}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_version_control_ad298d4e4fcf5043ab4d20e64bce3617f_ad298d4e4fcf5043ab4d20e64bce3617f}\label{class_code_smile_editor_1_1_asset_1_1_version_control_ad298d4e4fcf5043ab4d20e64bce3617f_ad298d4e4fcf5043ab4d20e64bce3617f}
+\index{Asset.VersionControl@{Asset.VersionControl}!MakeEditableInteractive@{MakeEditableInteractive}}
+\index{MakeEditableInteractive@{MakeEditableInteractive}!Asset.VersionControl@{Asset.VersionControl}}
+\doxyparagraph{\texorpdfstring{MakeEditableInteractive()}{MakeEditableInteractive()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
+{\footnotesize\ttfamily static Boolean Make\+Editable\+Interactive (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} \mbox{\hyperlink{class_code_smile_editor_1_1_asset_1_1_path}{Path}}\mbox{[}$\,$\mbox{]}}]{paths, }\item[{out List$<$ String $>$}]{not\+Editable\+Paths, }\item[{String}]{prompt = {\ttfamily null} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tries to open multiple paths for editing in the version control system. Shows a prompt to the user unless the editor is in batch operation mode.
+
+Use \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Can\+Make\+Editable} to get an error message for individual paths.
+
+
+\begin{DoxyParams}{Parameters}
+{\em paths} & Paths to assets.\\
+\hline
+{\em not\+Editable\+Paths} & List of paths that are not editable. Is empty if all paths are editable.\\
+\hline
+{\em prompt} & A message for the interactive dialog or null to use the default message.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if the paths are now editable, false if at least one failed to open.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Can\+Make\+Editable}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.MakeEditable.html}{\texttt{ Asset\+Database.\+Make\+Editable}}
+\end{DoxyItemize}\Hypertarget{class_code_smile_editor_1_1_asset_1_1_version_control_a8eac8f1fdbd0e9009799ceeb46dc6b5c_a8eac8f1fdbd0e9009799ceeb46dc6b5c}\label{class_code_smile_editor_1_1_asset_1_1_version_control_a8eac8f1fdbd0e9009799ceeb46dc6b5c_a8eac8f1fdbd0e9009799ceeb46dc6b5c}
+\index{Asset.VersionControl@{Asset.VersionControl}!MakeEditableInteractive@{MakeEditableInteractive}}
+\index{MakeEditableInteractive@{MakeEditableInteractive}!Asset.VersionControl@{Asset.VersionControl}}
+\doxyparagraph{\texorpdfstring{MakeEditableInteractive()}{MakeEditableInteractive()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
+{\footnotesize\ttfamily static Boolean Make\+Editable\+Interactive (\begin{DoxyParamCaption}\item[{\mbox{[}\+Not\+Null\mbox{]} String\mbox{[}$\,$\mbox{]}}]{paths, }\item[{out List$<$ String $>$}]{not\+Editable\+Paths, }\item[{String}]{prompt = {\ttfamily null} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}
+
+
+
+Tries to open multiple paths for editing in the version control system. Shows a prompt to the user unless the editor is in batch operation mode.
+
+Use \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Can\+Make\+Editable} to get an error message for individual paths.
+
+
+\begin{DoxyParams}{Parameters}
+{\em paths} & Paths to assets.\\
+\hline
+{\em not\+Editable\+Paths} & List of paths that are not editable. Is empty if all paths are editable.\\
+\hline
+{\em prompt} & A message for the interactive dialog or null to use the default message.\\
+\hline
+\end{DoxyParams}
+\begin{DoxyReturn}{Returns}
+True if the paths are now editable, false if at least one failed to open.
+\end{DoxyReturn}
+\begin{DoxySeeAlso}{See also}
+
+
+
+\end{DoxySeeAlso}
+
+\begin{DoxyItemize}
+\item \doxylink{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}{Code\+Smile\+Editor.\+Asset.\+Version\+Control.\+Can\+Make\+Editable}
+\item \href{https://docs.unity3d.com/ScriptReference/AssetDatabase.MakeEditable.html}{\texttt{ Asset\+Database.\+Make\+Editable}}
+\end{DoxyItemize}
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_version_control__coll__graph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_version_control__coll__graph.md5
new file mode 100644
index 00000000..161ce88c
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_version_control__coll__graph.md5
@@ -0,0 +1 @@
+1aaecef438b3bf2ac82174d491a2d306
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_version_control__coll__graph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_version_control__coll__graph.pdf
new file mode 100644
index 00000000..feface42
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_version_control__coll__graph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9_icgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9_icgraph.md5
new file mode 100644
index 00000000..8abfedec
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9_icgraph.md5
@@ -0,0 +1 @@
+5d5ef93ddeae690b9863ee602bf600bf
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9_icgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9_icgraph.pdf
new file mode 100644
index 00000000..5f31719e
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9_icgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_version_control_a7f6bbb0782e7f7635706b0e0bc921341_a7f6bbb0782e7f7635706b0e0bc921341_cgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_version_control_a7f6bbb0782e7f7635706b0e0bc921341_a7f6bbb0782e7f7635706b0e0bc921341_cgraph.md5
new file mode 100644
index 00000000..ac5b123c
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_version_control_a7f6bbb0782e7f7635706b0e0bc921341_a7f6bbb0782e7f7635706b0e0bc921341_cgraph.md5
@@ -0,0 +1 @@
+cf0608f719b68a21c71486f34bccf417
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_version_control_a7f6bbb0782e7f7635706b0e0bc921341_a7f6bbb0782e7f7635706b0e0bc921341_cgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_version_control_a7f6bbb0782e7f7635706b0e0bc921341_a7f6bbb0782e7f7635706b0e0bc921341_cgraph.pdf
new file mode 100644
index 00000000..8939d89c
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_1_1_version_control_a7f6bbb0782e7f7635706b0e0bc921341_a7f6bbb0782e7f7635706b0e0bc921341_cgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset__coll__graph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset__coll__graph.md5
new file mode 100644
index 00000000..1eedf048
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset__coll__graph.md5
@@ -0,0 +1 @@
+0998e7074a07736d4e00abbb0d0b1c81
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset__coll__graph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset__coll__graph.pdf
new file mode 100644
index 00000000..938c0ad0
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset__coll__graph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_a1c6432dab22d51bcf01bf6ad221e7119_a1c6432dab22d51bcf01bf6ad221e7119_icgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_a1c6432dab22d51bcf01bf6ad221e7119_a1c6432dab22d51bcf01bf6ad221e7119_icgraph.md5
new file mode 100644
index 00000000..25f59e12
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_a1c6432dab22d51bcf01bf6ad221e7119_a1c6432dab22d51bcf01bf6ad221e7119_icgraph.md5
@@ -0,0 +1 @@
+6ecf0af01f44741bad964a86d209373e
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_a1c6432dab22d51bcf01bf6ad221e7119_a1c6432dab22d51bcf01bf6ad221e7119_icgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_a1c6432dab22d51bcf01bf6ad221e7119_a1c6432dab22d51bcf01bf6ad221e7119_icgraph.pdf
new file mode 100644
index 00000000..4d47f1c2
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_a1c6432dab22d51bcf01bf6ad221e7119_a1c6432dab22d51bcf01bf6ad221e7119_icgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_a28fe22006383d71d5b564df4a46b2675_a28fe22006383d71d5b564df4a46b2675_cgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_a28fe22006383d71d5b564df4a46b2675_a28fe22006383d71d5b564df4a46b2675_cgraph.md5
new file mode 100644
index 00000000..4292a507
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_a28fe22006383d71d5b564df4a46b2675_a28fe22006383d71d5b564df4a46b2675_cgraph.md5
@@ -0,0 +1 @@
+805b530f99ded2a228df34292fb27581
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_a28fe22006383d71d5b564df4a46b2675_a28fe22006383d71d5b564df4a46b2675_cgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_a28fe22006383d71d5b564df4a46b2675_a28fe22006383d71d5b564df4a46b2675_cgraph.pdf
new file mode 100644
index 00000000..3eb931f5
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_a28fe22006383d71d5b564df4a46b2675_a28fe22006383d71d5b564df4a46b2675_cgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_a3192f3d24b4397b10f50ef366ee3feba_a3192f3d24b4397b10f50ef366ee3feba_icgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_a3192f3d24b4397b10f50ef366ee3feba_a3192f3d24b4397b10f50ef366ee3feba_icgraph.md5
new file mode 100644
index 00000000..6cb32677
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_a3192f3d24b4397b10f50ef366ee3feba_a3192f3d24b4397b10f50ef366ee3feba_icgraph.md5
@@ -0,0 +1 @@
+e5e908bf01565d3e73223da16c6a1857
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_a3192f3d24b4397b10f50ef366ee3feba_a3192f3d24b4397b10f50ef366ee3feba_icgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_a3192f3d24b4397b10f50ef366ee3feba_a3192f3d24b4397b10f50ef366ee3feba_icgraph.pdf
new file mode 100644
index 00000000..7fe9db24
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_a3192f3d24b4397b10f50ef366ee3feba_a3192f3d24b4397b10f50ef366ee3feba_icgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_a45faf9fc17e3cb57b87d2ae09e4dd7f8_a45faf9fc17e3cb57b87d2ae09e4dd7f8_cgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_a45faf9fc17e3cb57b87d2ae09e4dd7f8_a45faf9fc17e3cb57b87d2ae09e4dd7f8_cgraph.md5
new file mode 100644
index 00000000..7b2d13a0
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_a45faf9fc17e3cb57b87d2ae09e4dd7f8_a45faf9fc17e3cb57b87d2ae09e4dd7f8_cgraph.md5
@@ -0,0 +1 @@
+e5936c847724f258cd43f46b4c288acb
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_a45faf9fc17e3cb57b87d2ae09e4dd7f8_a45faf9fc17e3cb57b87d2ae09e4dd7f8_cgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_a45faf9fc17e3cb57b87d2ae09e4dd7f8_a45faf9fc17e3cb57b87d2ae09e4dd7f8_cgraph.pdf
new file mode 100644
index 00000000..07c4edab
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_a45faf9fc17e3cb57b87d2ae09e4dd7f8_a45faf9fc17e3cb57b87d2ae09e4dd7f8_cgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_a82b0bb0beb5f5422951631789bca4256_a82b0bb0beb5f5422951631789bca4256_cgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_a82b0bb0beb5f5422951631789bca4256_a82b0bb0beb5f5422951631789bca4256_cgraph.md5
new file mode 100644
index 00000000..c63923ed
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_a82b0bb0beb5f5422951631789bca4256_a82b0bb0beb5f5422951631789bca4256_cgraph.md5
@@ -0,0 +1 @@
+bb2951371f358b5704847558160ce1de
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_a82b0bb0beb5f5422951631789bca4256_a82b0bb0beb5f5422951631789bca4256_cgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_a82b0bb0beb5f5422951631789bca4256_a82b0bb0beb5f5422951631789bca4256_cgraph.pdf
new file mode 100644
index 00000000..00a9a32b
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_a82b0bb0beb5f5422951631789bca4256_a82b0bb0beb5f5422951631789bca4256_cgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_a9ff25b59d227ab5d89fdabafffb9876a_a9ff25b59d227ab5d89fdabafffb9876a_cgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_a9ff25b59d227ab5d89fdabafffb9876a_a9ff25b59d227ab5d89fdabafffb9876a_cgraph.md5
new file mode 100644
index 00000000..e741d2c7
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_a9ff25b59d227ab5d89fdabafffb9876a_a9ff25b59d227ab5d89fdabafffb9876a_cgraph.md5
@@ -0,0 +1 @@
+a9def4ff674bc4ffee8648e2630dac96
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_a9ff25b59d227ab5d89fdabafffb9876a_a9ff25b59d227ab5d89fdabafffb9876a_cgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_a9ff25b59d227ab5d89fdabafffb9876a_a9ff25b59d227ab5d89fdabafffb9876a_cgraph.pdf
new file mode 100644
index 00000000..8e55ea57
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_a9ff25b59d227ab5d89fdabafffb9876a_a9ff25b59d227ab5d89fdabafffb9876a_cgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac_cgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac_cgraph.md5
new file mode 100644
index 00000000..855752a7
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac_cgraph.md5
@@ -0,0 +1 @@
+3f43538542a39dae34d9cac5e6afd584
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac_cgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac_cgraph.pdf
new file mode 100644
index 00000000..8c1a37d1
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac_cgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac_icgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac_icgraph.md5
new file mode 100644
index 00000000..9cae255c
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac_icgraph.md5
@@ -0,0 +1 @@
+98c7697f8739befea10137648081e104
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac_icgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac_icgraph.pdf
new file mode 100644
index 00000000..26d5227e
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac_icgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_af23adc642520b7f00cb047865ef50ad0_af23adc642520b7f00cb047865ef50ad0_cgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_af23adc642520b7f00cb047865ef50ad0_af23adc642520b7f00cb047865ef50ad0_cgraph.md5
new file mode 100644
index 00000000..8de0344f
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_af23adc642520b7f00cb047865ef50ad0_af23adc642520b7f00cb047865ef50ad0_cgraph.md5
@@ -0,0 +1 @@
+5c311ea74a611e646350ba6b91c1e497
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_af23adc642520b7f00cb047865ef50ad0_af23adc642520b7f00cb047865ef50ad0_cgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_af23adc642520b7f00cb047865ef50ad0_af23adc642520b7f00cb047865ef50ad0_cgraph.pdf
new file mode 100644
index 00000000..cba7acce
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_af23adc642520b7f00cb047865ef50ad0_af23adc642520b7f00cb047865ef50ad0_cgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_af6ce8c8d3d810ae286e98e54aa360adf_af6ce8c8d3d810ae286e98e54aa360adf_cgraph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_af6ce8c8d3d810ae286e98e54aa360adf_af6ce8c8d3d810ae286e98e54aa360adf_cgraph.md5
new file mode 100644
index 00000000..9078da54
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_af6ce8c8d3d810ae286e98e54aa360adf_af6ce8c8d3d810ae286e98e54aa360adf_cgraph.md5
@@ -0,0 +1 @@
+f26a7d3cbc1db8c09cc4bbf590573287
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_af6ce8c8d3d810ae286e98e54aa360adf_af6ce8c8d3d810ae286e98e54aa360adf_cgraph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_af6ce8c8d3d810ae286e98e54aa360adf_af6ce8c8d3d810ae286e98e54aa360adf_cgraph.pdf
new file mode 100644
index 00000000..5c60bde2
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_af6ce8c8d3d810ae286e98e54aa360adf_af6ce8c8d3d810ae286e98e54aa360adf_cgraph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_load_exception.tex b/Docs~/latex/class_code_smile_editor_1_1_asset_load_exception.tex
new file mode 100644
index 00000000..9e524681
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_load_exception.tex
@@ -0,0 +1,94 @@
+\doxysubsection{Asset\+Load\+Exception Class Reference}
+\hypertarget{class_code_smile_editor_1_1_asset_load_exception}{}\label{class_code_smile_editor_1_1_asset_load_exception}\index{AssetLoadException@{AssetLoadException}}
+
+
+Thrown in cases where loading an existing asset fails. That means the Asset\+Database returned null on loading. This happens in a few situations in Unity where the Asset\+Database is unavailable, such as in a static ctor.
+
+
+
+
+Inheritance diagram for Asset\+Load\+Exception\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=194pt]{class_code_smile_editor_1_1_asset_load_exception__inherit__graph}
+\end{center}
+\end{figure}
+
+
+Collaboration diagram for Asset\+Load\+Exception\+:
+\nopagebreak
+\begin{figure}[H]
+\begin{center}
+\leavevmode
+\includegraphics[width=194pt]{class_code_smile_editor_1_1_asset_load_exception__coll__graph}
+\end{center}
+\end{figure}
+\doxysubsubsubsection*{Public Member Functions}
+\begin{DoxyCompactItemize}
+\item
+\mbox{\hyperlink{class_code_smile_editor_1_1_asset_load_exception_a14844af4b9e1ad1822b11d8e7a99b991_a14844af4b9e1ad1822b11d8e7a99b991}{Asset\+Load\+Exception}} (String message)
+\begin{DoxyCompactList}\small\item\em Instantiates exception with message. \end{DoxyCompactList}\item
+\mbox{\hyperlink{class_code_smile_editor_1_1_asset_load_exception_a19e920f646406abb17bf92089cd69b8f_a19e920f646406abb17bf92089cd69b8f}{Asset\+Load\+Exception}} (String message, Exception inner\+Exception)
+\begin{DoxyCompactList}\small\item\em Instantiates exception with message and inner exception. \end{DoxyCompactList}\end{DoxyCompactItemize}
+
+
+\doxysubsubsection{Detailed Description}
+Thrown in cases where loading an existing asset fails. That means the Asset\+Database returned null on loading. This happens in a few situations in Unity where the Asset\+Database is unavailable, such as in a static ctor.
+
+Definition at line \mbox{\hyperlink{_asset_load_exception_8cs_source_l00015}{15}} of file \mbox{\hyperlink{_asset_load_exception_8cs_source}{Asset\+Load\+Exception.\+cs}}.
+
+
+
+\doxysubsubsection{Constructor \& Destructor Documentation}
+\Hypertarget{class_code_smile_editor_1_1_asset_load_exception_a14844af4b9e1ad1822b11d8e7a99b991_a14844af4b9e1ad1822b11d8e7a99b991}\label{class_code_smile_editor_1_1_asset_load_exception_a14844af4b9e1ad1822b11d8e7a99b991_a14844af4b9e1ad1822b11d8e7a99b991}
+\index{AssetLoadException@{AssetLoadException}!AssetLoadException@{AssetLoadException}}
+\index{AssetLoadException@{AssetLoadException}!AssetLoadException@{AssetLoadException}}
+\doxyparagraph{\texorpdfstring{AssetLoadException()}{AssetLoadException()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
+{\footnotesize\ttfamily \mbox{\hyperlink{class_code_smile_editor_1_1_asset_load_exception}{Asset\+Load\+Exception}} (\begin{DoxyParamCaption}\item[{String}]{message }\end{DoxyParamCaption})}
+
+
+
+Instantiates exception with message.
+
+
+\begin{DoxyParams}{Parameters}
+{\em message} & Exception message\\
+\hline
+\end{DoxyParams}
+
+
+Definition at line \mbox{\hyperlink{_asset_load_exception_8cs_source_l00027}{27}} of file \mbox{\hyperlink{_asset_load_exception_8cs_source}{Asset\+Load\+Exception.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00028\ \ \ \ \ \ \ \ \ \ \ \ \ :\ base(message)\ \{\}}
+
+\end{DoxyCode}
+\Hypertarget{class_code_smile_editor_1_1_asset_load_exception_a19e920f646406abb17bf92089cd69b8f_a19e920f646406abb17bf92089cd69b8f}\label{class_code_smile_editor_1_1_asset_load_exception_a19e920f646406abb17bf92089cd69b8f_a19e920f646406abb17bf92089cd69b8f}
+\index{AssetLoadException@{AssetLoadException}!AssetLoadException@{AssetLoadException}}
+\index{AssetLoadException@{AssetLoadException}!AssetLoadException@{AssetLoadException}}
+\doxyparagraph{\texorpdfstring{AssetLoadException()}{AssetLoadException()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
+{\footnotesize\ttfamily \mbox{\hyperlink{class_code_smile_editor_1_1_asset_load_exception}{Asset\+Load\+Exception}} (\begin{DoxyParamCaption}\item[{String}]{message, }\item[{Exception}]{inner\+Exception }\end{DoxyParamCaption})}
+
+
+
+Instantiates exception with message and inner exception.
+
+
+\begin{DoxyParams}{Parameters}
+{\em message} & Exception message\\
+\hline
+{\em inner\+Exception} & Inner exception that is rethrown\\
+\hline
+\end{DoxyParams}
+
+
+Definition at line \mbox{\hyperlink{_asset_load_exception_8cs_source_l00035}{35}} of file \mbox{\hyperlink{_asset_load_exception_8cs_source}{Asset\+Load\+Exception.\+cs}}.
+
+
+\begin{DoxyCode}{0}
+\DoxyCodeLine{00036\ \ \ \ \ \ \ \ \ \ \ \ \ :\ base(message,\ innerException)\ \{\}}
+
+\end{DoxyCode}
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_load_exception__coll__graph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_load_exception__coll__graph.md5
new file mode 100644
index 00000000..d8a1ed29
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_load_exception__coll__graph.md5
@@ -0,0 +1 @@
+fb6627927ae30c71fbfcf285eeebe47e
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_load_exception__coll__graph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_load_exception__coll__graph.pdf
new file mode 100644
index 00000000..9231cfc6
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_load_exception__coll__graph.pdf differ
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_load_exception__inherit__graph.md5 b/Docs~/latex/class_code_smile_editor_1_1_asset_load_exception__inherit__graph.md5
new file mode 100644
index 00000000..d8a1ed29
--- /dev/null
+++ b/Docs~/latex/class_code_smile_editor_1_1_asset_load_exception__inherit__graph.md5
@@ -0,0 +1 @@
+fb6627927ae30c71fbfcf285eeebe47e
\ No newline at end of file
diff --git a/Docs~/latex/class_code_smile_editor_1_1_asset_load_exception__inherit__graph.pdf b/Docs~/latex/class_code_smile_editor_1_1_asset_load_exception__inherit__graph.pdf
new file mode 100644
index 00000000..9231cfc6
Binary files /dev/null and b/Docs~/latex/class_code_smile_editor_1_1_asset_load_exception__inherit__graph.pdf differ
diff --git a/Docs~/latex/doxygen.sty b/Docs~/latex/doxygen.sty
new file mode 100644
index 00000000..4bfc17fa
--- /dev/null
+++ b/Docs~/latex/doxygen.sty
@@ -0,0 +1,694 @@
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{doxygen}
+
+% Packages used by this style file
+\RequirePackage{alltt}
+%%\RequirePackage{array} %% moved to refman.tex due to workaround for LaTex 2019 version and unmaintained tabu package
+\RequirePackage{calc}
+\RequirePackage{float}
+%%\RequirePackage{ifthen} %% moved to refman.tex due to workaround for LaTex 2019 version and unmaintained tabu package
+\RequirePackage{verbatim}
+\RequirePackage[table]{xcolor}
+\RequirePackage{longtable_doxygen}
+\RequirePackage{tabu_doxygen}
+\RequirePackage{fancyvrb}
+\RequirePackage{tabularx}
+\RequirePackage{multicol}
+\RequirePackage{multirow}
+\RequirePackage{hanging}
+\RequirePackage{ifpdf}
+\RequirePackage{adjustbox}
+\RequirePackage{amssymb}
+\RequirePackage{stackengine}
+\RequirePackage{enumitem}
+\RequirePackage{alphalph}
+\RequirePackage[normalem]{ulem} % for strikeout, but don't modify emphasis
+
+%---------- Internal commands used in this style file ----------------
+
+\newcommand{\ensurespace}[1]{%
+ \begingroup%
+ \setlength{\dimen@}{#1}%
+ \vskip\z@\@plus\dimen@%
+ \penalty -100\vskip\z@\@plus -\dimen@%
+ \vskip\dimen@%
+ \penalty 9999%
+ \vskip -\dimen@%
+ \vskip\z@skip% hide the previous |\vskip| from |\addvspace|
+ \endgroup%
+}
+
+\newcommand{\DoxyHorRuler}[1]{%
+ \setlength{\parskip}{0ex plus 0ex minus 0ex}%
+ \ifthenelse{#1=0}%
+ {%
+ \hrule%
+ }%
+ {%
+ \hrulefilll%
+ }%
+}
+\newcommand{\DoxyLabelFont}{}
+\newcommand{\entrylabel}[1]{%
+ {%
+ \parbox[b]{\labelwidth-4pt}{%
+ \makebox[0pt][l]{\DoxyLabelFont#1}%
+ \vspace{1.5\baselineskip}%
+ }%
+ }%
+}
+
+\newenvironment{DoxyDesc}[1]{%
+ \ensurespace{4\baselineskip}%
+ \begin{list}{}{%
+ \settowidth{\labelwidth}{20pt}%
+ %\setlength{\parsep}{0pt}%
+ \setlength{\itemsep}{0pt}%
+ \setlength{\leftmargin}{\labelwidth+\labelsep}%
+ \renewcommand{\makelabel}{\entrylabel}%
+ }%
+ \item[#1]%
+}{%
+ \end{list}%
+}
+
+\newsavebox{\xrefbox}
+\newlength{\xreflength}
+\newcommand{\xreflabel}[1]{%
+ \sbox{\xrefbox}{#1}%
+ \setlength{\xreflength}{\wd\xrefbox}%
+ \ifthenelse{\xreflength>\labelwidth}{%
+ \begin{minipage}{\textwidth}%
+ \setlength{\parindent}{0pt}%
+ \hangindent=15pt\bfseries #1\vspace{1.2\itemsep}%
+ \end{minipage}%
+ }{%
+ \parbox[b]{\labelwidth}{\makebox[0pt][l]{\textbf{#1}}}%
+ }%
+}
+
+%---------- Commands used by doxygen LaTeX output generator ----------
+
+% Used by ...
+\newenvironment{DoxyPre}{%
+ \small%
+ \begin{alltt}%
+}{%
+ \end{alltt}%
+ \normalsize%
+}
+% Necessary for redefining not defined characters, i.e. "Replacement Character" in tex output.
+\newlength{\CodeWidthChar}
+\newlength{\CodeHeightChar}
+\settowidth{\CodeWidthChar}{?}
+\settoheight{\CodeHeightChar}{?}
+% Necessary for hanging indent
+\newlength{\DoxyCodeWidth}
+
+\newcommand\DoxyCodeLine[1]{
+ \ifthenelse{\equal{\detokenize{#1}}{}}
+ {
+ \vspace*{\baselineskip}
+ }
+ {
+ \hangpara{\DoxyCodeWidth}{1}{#1}\par
+ }
+}
+
+\newcommand\NiceSpace{%
+ \discretionary{}{\kern\fontdimen2\font}{\kern\fontdimen2\font}%
+}
+
+% Used by @code ... @endcode
+\newenvironment{DoxyCode}[1]{%
+ \par%
+ \scriptsize%
+ \normalfont\ttfamily%
+ \rightskip0pt plus 1fil%
+ \settowidth{\DoxyCodeWidth}{000000}%
+ \settowidth{\CodeWidthChar}{?}%
+ \settoheight{\CodeHeightChar}{?}%
+ \setlength{\parskip}{0ex plus 0ex minus 0ex}%
+ \ifthenelse{\equal{#1}{0}}
+ {
+ {\lccode`~32 \lowercase{\global\let~}\NiceSpace}\obeyspaces%
+ }
+ {
+ {\lccode`~32 \lowercase{\global\let~}}\obeyspaces%
+ }
+
+}{%
+ \normalfont%
+ \normalsize%
+ \settowidth{\CodeWidthChar}{?}%
+ \settoheight{\CodeHeightChar}{?}%
+}
+
+% Redefining not defined characters, i.e. "Replacement Character" in tex output.
+\def\ucr{\adjustbox{width=\CodeWidthChar,height=\CodeHeightChar}{\stackinset{c}{}{c}{-.2pt}{%
+ \textcolor{white}{\sffamily\bfseries\small ?}}{%
+ \rotatebox{45}{$\blacksquare$}}}}
+
+% Used by @example, @include, @includelineno and @dontinclude
+\newenvironment{DoxyCodeInclude}[1]{%
+ \DoxyCode{#1}%
+}{%
+ \endDoxyCode%
+}
+
+% Used by @verbatim ... @endverbatim
+\newenvironment{DoxyVerb}{%
+ \par%
+ \footnotesize%
+ \verbatim%
+}{%
+ \endverbatim%
+ \normalsize%
+}
+
+% Used by @verbinclude
+\newenvironment{DoxyVerbInclude}{%
+ \DoxyVerb%
+}{%
+ \endDoxyVerb%
+}
+
+% Used by numbered lists (using '-#' or ... )
+\setlistdepth{12}
+\newlist{DoxyEnumerate}{enumerate}{12}
+\setlist[DoxyEnumerate,1]{label=\arabic*.}
+\setlist[DoxyEnumerate,2]{label=(\enumalphalphcnt*)}
+\setlist[DoxyEnumerate,3]{label=\roman*.}
+\setlist[DoxyEnumerate,4]{label=\enumAlphAlphcnt*.}
+\setlist[DoxyEnumerate,5]{label=\arabic*.}
+\setlist[DoxyEnumerate,6]{label=(\enumalphalphcnt*)}
+\setlist[DoxyEnumerate,7]{label=\roman*.}
+\setlist[DoxyEnumerate,8]{label=\enumAlphAlphcnt*.}
+\setlist[DoxyEnumerate,9]{label=\arabic*.}
+\setlist[DoxyEnumerate,10]{label=(\enumalphalphcnt*)}
+\setlist[DoxyEnumerate,11]{label=\roman*.}
+\setlist[DoxyEnumerate,12]{label=\enumAlphAlphcnt*.}
+
+% Used by bullet lists (using '-', @li, @arg, or )
+\setlistdepth{12}
+\newlist{DoxyItemize}{itemize}{12}
+\setlist[DoxyItemize]{label=\textperiodcentered}
+
+\setlist[DoxyItemize,1]{label=\textbullet}
+\setlist[DoxyItemize,2]{label=\normalfont\bfseries \textendash}
+\setlist[DoxyItemize,3]{label=\textasteriskcentered}
+\setlist[DoxyItemize,4]{label=\textperiodcentered}
+
+% Used by description lists (using ... )
+\newenvironment{DoxyDescription}{%
+ \description%
+}{%
+ \enddescription%
+}
+
+% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc
+% (only if caption is specified)
+\newenvironment{DoxyImage}{%
+ \begin{figure}[H]%
+ \centering%
+}{%
+ \end{figure}%
+}
+
+% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc
+% (only if no caption is specified)
+\newenvironment{DoxyImageNoCaption}{%
+ \begin{center}%
+}{%
+ \end{center}%
+}
+
+% Used by @image
+% (only if inline is specified)
+\newenvironment{DoxyInlineImage}{%
+}{%
+}
+
+% Used by @attention
+\newenvironment{DoxyAttention}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @author and @authors
+\newenvironment{DoxyAuthor}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @date
+\newenvironment{DoxyDate}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @invariant
+\newenvironment{DoxyInvariant}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @note
+\newenvironment{DoxyNote}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @post
+\newenvironment{DoxyPostcond}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @pre
+\newenvironment{DoxyPrecond}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @copyright
+\newenvironment{DoxyCopyright}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @remark
+\newenvironment{DoxyRemark}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @return and @returns
+\newenvironment{DoxyReturn}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @since
+\newenvironment{DoxySince}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @see
+\newenvironment{DoxySeeAlso}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @version
+\newenvironment{DoxyVersion}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @warning
+\newenvironment{DoxyWarning}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by @par and @paragraph
+\newenvironment{DoxyParagraph}[1]{%
+ \begin{DoxyDesc}{#1}%
+}{%
+ \end{DoxyDesc}%
+}
+
+% Used by parameter lists
+\newenvironment{DoxyParams}[2][]{%
+ \tabulinesep=1mm%
+ \par%
+ \ifthenelse{\equal{#1}{}}%
+ {\begin{longtabu*}spread 0pt [l]{|X[-1,l]|X[-1,l]|}}% name + description
+ {\ifthenelse{\equal{#1}{1}}%
+ {\begin{longtabu*}spread 0pt [l]{|X[-1,l]|X[-1,l]|X[-1,l]|}}% in/out + name + desc
+ {\begin{longtabu*}spread 0pt [l]{|X[-1,l]|X[-1,l]|X[-1,l]|X[-1,l]|}}% in/out + type + name + desc
+ }
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]%
+ \hline%
+ \endfirsthead%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]%
+ \hline%
+ \endhead%
+}{%
+ \end{longtabu*}%
+ \vspace{6pt}%
+}
+
+% Used for fields of simple structs
+\newenvironment{DoxyFields}[1]{%
+ \tabulinesep=1mm%
+ \par%
+ \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|X[-1,l]|}%
+ \multicolumn{3}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \hline%
+ \endfirsthead%
+ \multicolumn{3}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \hline%
+ \endhead%
+}{%
+ \end{longtabu*}%
+ \vspace{6pt}%
+}
+
+% Used for fields simple class style enums
+\newenvironment{DoxyEnumFields}[1]{%
+ \tabulinesep=1mm%
+ \par%
+ \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \hline%
+ \endfirsthead%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \hline%
+ \endhead%
+}{%
+ \end{longtabu*}%
+ \vspace{6pt}%
+}
+
+% Used for parameters within a detailed function description
+\newenvironment{DoxyParamCaption}{%
+ \renewcommand{\item}[2][]{\\ \hspace*{2.0cm} ##1 {\em ##2}}%
+}{%
+}
+
+% Used by return value lists
+\newenvironment{DoxyRetVals}[1]{%
+ \tabulinesep=1mm%
+ \par%
+ \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \hline%
+ \endfirsthead%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \hline%
+ \endhead%
+}{%
+ \end{longtabu*}%
+ \vspace{6pt}%
+}
+
+% Used by exception lists
+\newenvironment{DoxyExceptions}[1]{%
+ \tabulinesep=1mm%
+ \par%
+ \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \hline%
+ \endfirsthead%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \hline%
+ \endhead%
+}{%
+ \end{longtabu*}%
+ \vspace{6pt}%
+}
+
+% Used by template parameter lists
+\newenvironment{DoxyTemplParams}[1]{%
+ \tabulinesep=1mm%
+ \par%
+ \begin{longtabu*}spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \hline%
+ \endfirsthead%
+ \multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
+ \hline%
+ \endhead%
+}{%
+ \end{longtabu*}%
+ \vspace{6pt}%
+}
+
+% Used for member lists
+\newenvironment{DoxyCompactItemize}{%
+ \begin{itemize}%
+ \setlength{\itemsep}{-3pt}%
+ \setlength{\parsep}{0pt}%
+ \setlength{\topsep}{0pt}%
+ \setlength{\partopsep}{0pt}%
+}{%
+ \end{itemize}%
+}
+
+% Used for member descriptions
+\newenvironment{DoxyCompactList}{%
+ \begin{list}{}{%
+ \setlength{\leftmargin}{0.5cm}%
+ \setlength{\itemsep}{0pt}%
+ \setlength{\parsep}{0pt}%
+ \setlength{\topsep}{0pt}%
+ \renewcommand{\makelabel}{\hfill}%
+ }%
+}{%
+ \end{list}%
+}
+
+% Used for reference lists (@bug, @deprecated, @todo, etc.)
+\newenvironment{DoxyRefList}{%
+ \begin{list}{}{%
+ \setlength{\labelwidth}{10pt}%
+ \setlength{\leftmargin}{\labelwidth}%
+ \addtolength{\leftmargin}{\labelsep}%
+ \renewcommand{\makelabel}{\xreflabel}%
+ }%
+}{%
+ \end{list}%
+}
+
+% Used by @bug, @deprecated, @todo, etc.
+\newenvironment{DoxyRefDesc}[1]{%
+ \begin{list}{}{%
+ \renewcommand\makelabel[1]{\textbf{##1}}%
+ \settowidth\labelwidth{\makelabel{#1}}%
+ \setlength\leftmargin{\labelwidth+\labelsep}%
+ }%
+}{%
+ \end{list}%
+}
+
+% Used by parameter lists and simple sections
+\newenvironment{Desc}
+{\begin{list}{}{%
+ \settowidth{\labelwidth}{20pt}%
+ \setlength{\parsep}{0pt}%
+ \setlength{\itemsep}{0pt}%
+ \setlength{\leftmargin}{\labelwidth+\labelsep}%
+ \renewcommand{\makelabel}{\entrylabel}%
+ }
+}{%
+ \end{list}%
+}
+
+% Used by tables
+\newcommand{\PBS}[1]{\let\temp=\\#1\let\\=\temp}%
+\newenvironment{TabularC}[1]%
+{\tabulinesep=1mm
+\begin{longtabu*}spread 0pt [c]{*#1{|X[-1]}|}}%
+{\end{longtabu*}\par}%
+
+\newenvironment{TabularNC}[1]%
+{\begin{tabu}spread 0pt [l]{*#1{|X[-1]}|}}%
+{\end{tabu}\par}%
+
+% Used for member group headers
+\newenvironment{Indent}{%
+ \begin{list}{}{%
+ \setlength{\leftmargin}{0.5cm}%
+ }%
+ \item[]\ignorespaces%
+}{%
+ \unskip%
+ \end{list}%
+}
+
+% Used when hyperlinks are turned on
+\newcommand{\doxylink}[2]{%
+ \mbox{\hyperlink{#1}{#2}}%
+}
+
+% Used when hyperlinks are turned on
+% Third argument is the SectionType, see the doxygen internal
+% documentation for the values (relevant: Page ... Subsubsection).
+\newcommand{\doxysectlink}[3]{%
+ \mbox{\hyperlink{#1}{#2}}%
+}
+% Used when hyperlinks are turned off
+\newcommand{\doxyref}[3]{%
+ \textbf{#1} (\textnormal{#2}\,\pageref{#3})%
+}
+
+% Used when hyperlinks are turned off
+% Fourth argument is the SectionType, see the doxygen internal
+% documentation for the values (relevant: Page ... Subsubsection).
+\newcommand{\doxysectref}[4]{%
+ \textbf{#1} (\textnormal{#2}\,\pageref{#3})%
+}
+
+% Used to link to a table when hyperlinks are turned on
+\newcommand{\doxytablelink}[2]{%
+ \ref{#1}%
+}
+
+% Used to link to a table when hyperlinks are turned off
+\newcommand{\doxytableref}[3]{%
+ \ref{#3}%
+}
+
+% Used by @addindex
+\newcommand{\lcurly}{\{}
+\newcommand{\rcurly}{\}}
+
+% Colors used for syntax highlighting
+\definecolor{comment}{rgb}{0.5,0.0,0.0}
+\definecolor{keyword}{rgb}{0.0,0.5,0.0}
+\definecolor{keywordtype}{rgb}{0.38,0.25,0.125}
+\definecolor{keywordflow}{rgb}{0.88,0.5,0.0}
+\definecolor{preprocessor}{rgb}{0.5,0.38,0.125}
+\definecolor{stringliteral}{rgb}{0.0,0.125,0.25}
+\definecolor{charliteral}{rgb}{0.0,0.5,0.5}
+\definecolor{xmlcdata}{rgb}{0.0,0.0,0.0}
+\definecolor{vhdldigit}{rgb}{1.0,0.0,1.0}
+\definecolor{vhdlkeyword}{rgb}{0.43,0.0,0.43}
+\definecolor{vhdllogic}{rgb}{1.0,0.0,0.0}
+\definecolor{vhdlchar}{rgb}{0.0,0.0,0.0}
+
+% Color used for table heading
+\newcommand{\tableheadbgcolor}{lightgray}%
+
+% Version of hypertarget with correct landing location
+\newcommand{\Hypertarget}[1]{\Hy@raisedlink{\hypertarget{#1}{}}}
+
+% possibility to have sections etc. be within the margins
+% unfortunately had to copy part of book.cls and add \raggedright
+\makeatletter
+\newcounter{subsubsubsection}[subsubsection]
+\newcounter{subsubsubsubsection}[subsubsubsection]
+\newcounter{subsubsubsubsubsection}[subsubsubsubsection]
+\newcounter{subsubsubsubsubsubsection}[subsubsubsubsubsection]
+\renewcommand{\thesubsubsubsection}{\thesubsubsection.\arabic{subsubsubsection}}
+\renewcommand{\thesubsubsubsubsection}{\thesubsubsubsection.\arabic{subsubsubsubsection}}
+\renewcommand{\thesubsubsubsubsubsection}{\thesubsubsubsubsection.\arabic{subsubsubsubsubsection}}
+\renewcommand{\thesubsubsubsubsubsubsection}{\thesubsubsubsubsubsection.\arabic{subsubsubsubsubsubsection}}
+\newcommand{\subsubsubsectionmark}[1]{}
+\newcommand{\subsubsubsubsectionmark}[1]{}
+\newcommand{\subsubsubsubsubsectionmark}[1]{}
+\newcommand{\subsubsubsubsubsubsectionmark}[1]{}
+\def\toclevel@subsubsubsection{4}
+\def\toclevel@subsubsubsubsection{5}
+\def\toclevel@subsubsubsubsubsection{6}
+\def\toclevel@subsubsubsubsubsubsection{7}
+\def\toclevel@paragraph{8}
+\def\toclevel@subparagraph{9}
+
+\newcommand\doxysection{\@startsection {section}{1}{\z@}%
+ {-3.5ex \@plus -1ex \@minus -.2ex}%
+ {2.3ex \@plus.2ex}%
+ {\raggedright\normalfont\Large\bfseries}}
+\newcommand\doxysubsection{\@startsection{subsection}{2}{\z@}%
+ {-3.25ex\@plus -1ex \@minus -.2ex}%
+ {1.5ex \@plus .2ex}%
+ {\raggedright\normalfont\large\bfseries}}
+\newcommand\doxysubsubsection{\@startsection{subsubsection}{3}{\z@}%
+ {-3.25ex\@plus -1ex \@minus -.2ex}%
+ {1.5ex \@plus .2ex}%
+ {\raggedright\normalfont\normalsize\bfseries}}
+\newcommand\doxysubsubsubsection{\@startsection{subsubsubsection}{4}{\z@}%
+ {-3.25ex\@plus -1ex \@minus -.2ex}%
+ {1.5ex \@plus .2ex}%
+ {\raggedright\normalfont\normalsize\bfseries}}
+\newcommand\doxysubsubsubsubsection{\@startsection{subsubsubsubsection}{5}{\z@}%
+ {-3.25ex\@plus -1ex \@minus -.2ex}%
+ {1.5ex \@plus .2ex}%
+ {\raggedright\normalfont\normalsize\bfseries}}
+\newcommand\doxysubsubsubsubsubsection{\@startsection{subsubsubsubsubsection}{6}{\z@}%
+ {-3.25ex\@plus -1ex \@minus -.2ex}%
+ {1.5ex \@plus .2ex}%
+ {\raggedright\normalfont\normalsize\bfseries}}
+\newcommand\doxysubsubsubsubsubsubsection{\@startsection{subsubsubsubsubsubsection}{7}{\z@}%
+ {-3.25ex\@plus -1ex \@minus -.2ex}%
+ {1.5ex \@plus .2ex}%
+ {\raggedright\normalfont\normalsize\bfseries}}
+\newcommand\doxyparagraph{\@startsection{paragraph}{8}{\z@}%
+ {-3.25ex\@plus -1ex \@minus -.2ex}%
+ {1.5ex \@plus .2ex}%
+ {\raggedright\normalfont\normalsize\bfseries}}
+\newcommand\doxysubparagraph{\@startsection{subparagraph}{9}{\parindent}%
+ {-3.25ex\@plus -1ex \@minus -.2ex}%
+ {1.5ex \@plus .2ex}%
+ {\raggedright\normalfont\normalsize\bfseries}}
+
+\newcommand\l@subsubsubsection{\@dottedtocline{4}{6.1em}{7.8em}}
+\newcommand\l@subsubsubsubsection{\@dottedtocline{5}{6.1em}{9.4em}}
+\newcommand\l@subsubsubsubsubsection{\@dottedtocline{6}{6.1em}{11em}}
+\newcommand\l@subsubsubsubsubsubsection{\@dottedtocline{7}{6.1em}{12.6em}}
+\renewcommand\l@paragraph{\@dottedtocline{8}{6.1em}{14.2em}}
+\renewcommand\l@subparagraph{\@dottedtocline{9}{6.1em}{15.8em}}
+\makeatother
+% the sectsty doesn't look to be maintained but gives, in our case, some warning like:
+% LaTeX Warning: Command \underline has changed.
+% Check if current package is valid.
+% unfortunately had to copy the relevant part
+\newcommand*{\doxypartfont} [1]
+ {\gdef\SS@partnumberfont{\SS@sectid{0}\SS@nopart\SS@makeulinepartchap#1}
+ \gdef\SS@parttitlefont{\SS@sectid{0}\SS@titlepart\SS@makeulinepartchap#1}}
+\newcommand*{\doxychapterfont} [1]
+ {\gdef\SS@chapnumfont{\SS@sectid{1}\SS@nopart\SS@makeulinepartchap#1}
+ \gdef\SS@chaptitlefont{\SS@sectid{1}\SS@titlepart\SS@makeulinepartchap#1}}
+\newcommand*{\doxysectionfont} [1]
+ {\gdef\SS@sectfont{\SS@sectid{2}\SS@rr\SS@makeulinesect#1}}
+\newcommand*{\doxysubsectionfont} [1]
+ {\gdef\SS@subsectfont{\SS@sectid{3}\SS@rr\SS@makeulinesect#1}}
+\newcommand*{\doxysubsubsectionfont} [1]
+ {\gdef\SS@subsubsectfont{\SS@sectid{4}\SS@rr\SS@makeulinesect#1}}
+\newcommand*{\doxyparagraphfont} [1]
+ {\gdef\SS@parafont{\SS@sectid{5}\SS@rr\SS@makeulinesect#1}}
+\newcommand*{\doxysubparagraphfont} [1]
+ {\gdef\SS@subparafont{\SS@sectid{6}\SS@rr\SS@makeulinesect#1}}
+\newcommand*{\doxyminisecfont} [1]
+ {\gdef\SS@minisecfont{\SS@sectid{7}\SS@rr\SS@makeulinepartchap#1}}
+\newcommand*{\doxyallsectionsfont} [1] {\doxypartfont{#1}%
+ \doxychapterfont{#1}%
+ \doxysectionfont{#1}%
+ \doxysubsectionfont{#1}%
+ \doxysubsubsectionfont{#1}%
+ \doxyparagraphfont{#1}%
+ \doxysubparagraphfont{#1}%
+ \doxyminisecfont{#1}}%
+% Define caption that is also suitable in a table
+\makeatletter
+\def\doxyfigcaption{%
+\H@refstepcounter{figure}%
+\@dblarg{\@caption{figure}}}
+\makeatother
+
+% Define alpha enumarative names for counters > 26
+\makeatletter
+\def\enumalphalphcnt#1{\expandafter\@enumalphalphcnt\csname c@#1\endcsname}
+\def\@enumalphalphcnt#1{\alphalph{#1}}
+\def\enumAlphAlphcnt#1{\expandafter\@enumAlphAlphcnt\csname c@#1\endcsname}
+\def\@enumAlphAlphcnt#1{\AlphAlph{#1}}
+\makeatother
+\AddEnumerateCounter{\enumalphalphcnt}{\@enumalphalphcnt}{aa}
+\AddEnumerateCounter{\enumAlphAlphcnt}{\@enumAlphAlphcnt}{AA}
diff --git a/Docs~/latex/etoc_doxygen.sty b/Docs~/latex/etoc_doxygen.sty
new file mode 100644
index 00000000..5f7e1274
--- /dev/null
+++ b/Docs~/latex/etoc_doxygen.sty
@@ -0,0 +1,2178 @@
+%%
+%% This is file etoc_doxygen.sty
+%%
+%% Apart from this header notice and the renaming from etoc to
+%% etoc_doxygen (also in \ProvidesPackage) it is an identical
+%% copy of
+%%
+%% etoc.sty
+%%
+%% at version 1.2b of 2023/07/01.
+%%
+%% This file has been provided to Doxygen team courtesy of the
+%% author for benefit of users having a LaTeX installation not
+%% yet providing version 1.2a or later of etoc, whose
+%% deeplevels feature is required.
+%%
+%% The original source etoc.dtx (only of the latest version at
+%% any given time) is available at
+%%
+%% https://ctan.org/pkg/etoc
+%%
+%% and contains the terms for copying and modification as well
+%% as author contact information.
+%%
+%% In brief any modified versions of this file must be renamed
+%% with new filenames distinct from etoc.sty.
+%%
+%% Package: etoc
+%% Version: 1.2b
+%% License: LPPL 1.3c
+%% Copyright (C) 2012-2023 Jean-Francois B.
+\NeedsTeXFormat{LaTeX2e}[2003/12/01]
+\ProvidesPackage{etoc_doxygen}[2023/07/01 v1.2b Completely customisable TOCs (JFB)]
+\newif\ifEtoc@oldLaTeX
+\@ifl@t@r\fmtversion{2020/10/01}
+ {}
+ {\Etoc@oldLaTeXtrue
+ \PackageInfo{etoc}{Old LaTeX (\fmtversion) detected!\MessageBreak
+ Since 1.1a (2023/01/14), etoc prefers LaTeX at least\MessageBreak
+ as recent as 2020-10-01, for reasons of the .toc file,\MessageBreak
+ and used to require it (from 1.1a to 1.2).\MessageBreak
+ This etoc (1.2b) does not *require* it, but has not been\MessageBreak
+ tested thoroughly on old LaTeX (especially if document\MessageBreak
+ does not use hyperref) and retrofitting was done only\MessageBreak
+ on basis of author partial remembrances of old context.\MessageBreak
+ Reported}}
+\RequirePackage{kvoptions}
+\SetupKeyvalOptions{prefix=Etoc@}
+\newif\ifEtoc@lof
+\DeclareVoidOption{lof}{\Etoc@loftrue
+ \PackageInfo{etoc}{Experimental support for \string\locallistoffigures.\MessageBreak
+ Barely tested, use at own risk}%
+}
+\newif\ifEtoc@lot
+\DeclareVoidOption{lot}{\Etoc@lottrue
+ \PackageInfo{etoc}{Experimental support for \string\locallistoftables.\MessageBreak
+ Barely tested, use at own risk}%
+}
+\@ifclassloaded{memoir}{
+\PackageInfo{etoc}
+ {As this is with memoir class, all `...totoc' options\MessageBreak
+ are set true by default. Reported}
+\DeclareBoolOption[true]{maintoctotoc}
+\DeclareBoolOption[true]{localtoctotoc}
+\DeclareBoolOption[true]{localloftotoc}
+\DeclareBoolOption[true]{locallottotoc}
+}{
+\DeclareBoolOption[false]{maintoctotoc}
+\DeclareBoolOption[false]{localtoctotoc}
+\DeclareBoolOption[false]{localloftotoc}
+\DeclareBoolOption[false]{locallottotoc}
+}
+\DeclareBoolOption[true]{ouroboros}
+\DeclareBoolOption[false]{deeplevels}
+\DeclareDefaultOption{\PackageWarning{etoc}{Option `\CurrentOption' is unknown.}}
+\ProcessKeyvalOptions*
+\DisableKeyvalOption[action=error,package=etoc]{etoc}{lof}
+\DisableKeyvalOption[action=error,package=etoc]{etoc}{lot}
+\DisableKeyvalOption[action=error,package=etoc]{etoc}{deeplevels}
+\def\etocsetup#1{\setkeys{etoc}{#1}}
+\def\etocifmaintoctotoc{\ifEtoc@maintoctotoc
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}
+\def\etociflocaltoctotoc{\ifEtoc@localtoctotoc
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}
+\def\etociflocalloftotoc{\ifEtoc@localloftotoc
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}
+\def\etociflocallottotoc{\ifEtoc@locallottotoc
+ \expandafter\@firstoftwo
+ \else
+ \expandafter\@secondoftwo
+ \fi}
+\RequirePackage{multicol}
+\def\etoc@{\etoc@}
+\long\def\Etoc@gobtoetoc@ #1\etoc@{}
+\newtoks\Etoc@toctoks
+\def\Etoc@par{\par}
+\def\etocinline{\def\Etoc@par{}}
+\let\etocnopar\etocinline
+\def\etocdisplay{\def\Etoc@par{\par}}
+\let\Etoc@global\@empty
+\def\etocglobaldefs{\let\Etoc@global\global\let\tof@global\global}
+\def\etoclocaldefs {\let\Etoc@global\@empty\let\tof@global\@empty}
+\newif\ifEtoc@numbered
+\newif\ifEtoc@hyperref
+\newif\ifEtoc@parskip
+\newif\ifEtoc@tocwithid
+\newif\ifEtoc@standardlines
+\newif\ifEtoc@etocstyle
+\newif\ifEtoc@classstyle
+\newif\ifEtoc@keeporiginaltoc
+\newif\ifEtoc@skipprefix
+\newif\ifEtoc@isfirst
+\newif\ifEtoc@localtoc
+\newif\ifEtoc@skipthisone
+\newif\ifEtoc@stoptoc
+\newif\ifEtoc@notactive
+\newif\ifEtoc@mustclosegroup
+\newif\ifEtoc@isemptytoc
+\newif\ifEtoc@checksemptiness
+\def\etocchecksemptiness {\Etoc@checksemptinesstrue }
+\def\etocdoesnotcheckemptiness {\Etoc@checksemptinessfalse }
+\newif\ifEtoc@notocifnotoc
+\def\etocnotocifnotoc {\Etoc@checksemptinesstrue\Etoc@notocifnotoctrue }
+\newcounter{etoc@tocid}
+\def\Etoc@tocext{toc}
+\def\Etoc@lofext{lof}
+\def\Etoc@lotext{lot}
+\let\Etoc@currext\Etoc@tocext
+\def\etocifislocal{\ifEtoc@localtoc\expandafter\@firstoftwo\else
+ \expandafter\@secondoftwo\fi
+ }
+\def\etocifislocaltoc{\etocifislocal{\ifx\Etoc@currext\Etoc@tocext
+ \expandafter\@firstoftwo\else
+ \expandafter\@secondoftwo\fi}%
+ {\@secondoftwo}%
+ }
+\def\etocifislocallof{\etocifislocal{\ifx\Etoc@currext\Etoc@lofext
+ \expandafter\@firstoftwo\else
+ \expandafter\@secondoftwo\fi}%
+ {\@secondoftwo}%
+ }
+\def\etocifislocallot{\etocifislocal{\ifx\Etoc@currext\Etoc@lotext
+ \expandafter\@firstoftwo\else
+ \expandafter\@secondoftwo\fi}%
+ {\@secondoftwo}%
+ }
+\expandafter\def\csname Etoc@-3@@\endcsname {-\thr@@}
+\expandafter\def\csname Etoc@-2@@\endcsname {-\tw@}
+\expandafter\let\csname Etoc@-1@@\endcsname \m@ne
+\expandafter\let\csname Etoc@0@@\endcsname \z@
+\expandafter\let\csname Etoc@1@@\endcsname \@ne
+\expandafter\let\csname Etoc@2@@\endcsname \tw@
+\expandafter\let\csname Etoc@3@@\endcsname \thr@@
+\expandafter\chardef\csname Etoc@4@@\endcsname 4
+\expandafter\chardef\csname Etoc@5@@\endcsname 5
+\expandafter\chardef\csname Etoc@6@@\endcsname 6
+\ifEtoc@deeplevels
+ \expandafter\chardef\csname Etoc@7@@\endcsname 7
+ \expandafter\chardef\csname Etoc@8@@\endcsname 8
+ \expandafter\chardef\csname Etoc@9@@\endcsname 9
+ \expandafter\chardef\csname Etoc@10@@\endcsname 10
+ \expandafter\chardef\csname Etoc@11@@\endcsname 11
+ \expandafter\chardef\csname Etoc@12@@\endcsname 12
+\fi
+\expandafter\let\expandafter\Etoc@maxlevel
+ \csname Etoc@\ifEtoc@deeplevels12\else6\fi @@\endcsname
+\edef\etocthemaxlevel{\number\Etoc@maxlevel}
+\@ifclassloaded{memoir}{\def\Etoc@minf{-\thr@@}}{\def\Etoc@minf{-\tw@}}
+\let\Etoc@none@@ \Etoc@minf
+\expandafter\let\expandafter\Etoc@all@@
+ \csname Etoc@\ifEtoc@deeplevels11\else5\fi @@\endcsname
+\let\Etoc@dolevels\@empty
+\def\Etoc@newlevel #1{\expandafter\def\expandafter\Etoc@dolevels\expandafter
+ {\Etoc@dolevels\Etoc@do{#1}}}
+\ifdefined\expanded
+ \def\etocsetlevel#1#2{\expanded{\noexpand\etoc@setlevel{#1}{#2}}}%
+\else
+ \def\etocsetlevel#1#2{{\edef\Etoc@tmp{\noexpand\etoc@setlevel{#1}{#2}}\expandafter}\Etoc@tmp}%
+\fi
+\def\etoc@setlevel#1#2{%
+ \edef\Etoc@tmp{\the\numexpr#2}%
+ \if1\ifnum\Etoc@tmp>\Etoc@maxlevel0\fi\unless\ifnum\Etoc@minf<\Etoc@tmp;\fi1%
+ \ifEtoc@deeplevels
+ \in@{.#1,}{.none,.all,.figure,.table,.-3,.-2,.-1,.0,.1,.2,.3,.4,.5,.6,%
+ .7,.8,.9,.10,.11,.12,}%
+ \else
+ \in@{.#1,}{.none,.all,.figure,.table,.-3,.-2,.-1,.0,.1,.2,.3,.4,.5,.6,}%
+ \fi
+ \ifin@\else\if\@car#1\@nil @\in@true\fi\fi
+ \ifin@
+ \PackageWarning{etoc}
+ {Sorry, but `#1' is forbidden as level name.\MessageBreak
+ \if\@car#1\@nil @%
+ (because of the @ as first character)\MessageBreak\fi
+ Reported}%
+ \else
+ \etocifunknownlevelTF{#1}{\Etoc@newlevel{#1}}{}%
+ \expandafter\let\csname Etoc@#1@@\expandafter\endcsname
+ \csname Etoc@\Etoc@tmp @@\endcsname
+ \expandafter\edef\csname Etoc@@#1@@\endcsname
+ {\expandafter\noexpand\csname Etoc@#1@@\endcsname}%
+ \expandafter\edef\csname toclevel@@#1\endcsname
+ {\expandafter\noexpand\csname toclevel@#1\endcsname}%
+ \fi
+ \else
+ \PackageWarning{etoc}
+ {Argument `\detokenize{#2}' of \string\etocsetlevel\space should
+ represent one of\MessageBreak
+ \ifnum\Etoc@minf=-\thr@@-2, \fi-1, 0, 1, 2, \ifEtoc@deeplevels ...\else3, 4\fi,
+ \the\numexpr\Etoc@maxlevel-1, or \number\Etoc@maxlevel\space
+ but evaluates to \Etoc@tmp.\MessageBreak
+ The level of `#1' will be set to \number\Etoc@maxlevel.\MessageBreak
+ Tables of contents will ignore `#1' as long\MessageBreak
+ as its level is \number\Etoc@maxlevel\space (=\string\etocthemaxlevel).%
+ \MessageBreak
+ Reported}%
+ \etocifunknownlevelTF{#1}{\Etoc@newlevel{#1}}{}%
+ \expandafter\let\csname Etoc@#1@@\endcsname\Etoc@maxlevel
+ \fi
+}
+\def\etoclevel#1{\csname Etoc@#1@@\endcsname}
+\def\etocthelevel#1{\number\csname Etoc@#1@@\endcsname}
+\def\etocifunknownlevelTF#1{\@ifundefined{Etoc@#1@@}}
+\@ifclassloaded{memoir}{\etocsetlevel{book}{-2}}{}
+\etocsetlevel{part}{-1}
+\etocsetlevel{chapter}{0}
+\etocsetlevel{section}{1}
+\etocsetlevel{subsection}{2}
+\etocsetlevel{subsubsection}{3}
+\etocsetlevel{paragraph}{4}
+\etocsetlevel{subparagraph}{5}
+\ifdefined\c@chapter
+ \etocsetlevel{appendix}{0}
+\else
+ \etocsetlevel{appendix}{1}
+\fi
+\def\Etoc@do#1{\@namedef{l@@#1}{\csname l@#1\endcsname}}
+\Etoc@dolevels
+\let\Etoc@figure@@\Etoc@maxlevel
+\let\Etoc@table@@ \Etoc@maxlevel
+\let\Etoc@gobblethreeorfour\@gobblefour
+\ifdefined\@gobblethree
+ \let\Etoc@gobblethree\@gobblethree
+\else
+ \long\def\Etoc@gobblethree#1#2#3{}%
+\fi
+\AtBeginDocument{%
+\@ifpackageloaded{parskip}{\Etoc@parskiptrue}{}%
+\@ifpackageloaded{hyperref}
+ {\Etoc@hyperreftrue}
+ {\ifEtoc@oldLaTeX
+ \let\Etoc@gobblethreeorfour\Etoc@gobblethree
+ \let\Etoc@etoccontentsline@fourargs\Etoc@etoccontentsline@
+ \long\def\Etoc@etoccontentsline@#1#2#3{%
+ \Etoc@etoccontentsline@fourargs{#1}{#2}{#3}{}%
+ }%
+ \fi
+ }%
+}
+\def\etocskipfirstprefix {\global\Etoc@skipprefixtrue }
+\def\Etoc@updatestackofends#1\etoc@{\gdef\Etoc@stackofends{#1}}
+\def\Etoc@stackofends{{-3}{}}
+\def\Etoc@doendsandbegin{%
+ \expandafter\Etoc@traversestackofends\Etoc@stackofends\etoc@
+}
+\def\Etoc@traversestackofends#1{%
+ \ifnum#1>\Etoc@level
+ \csname Etoc@end@#1\endcsname
+ \expandafter\Etoc@traversestackofends
+ \else
+ \Etoc@traversestackofends@done{#1}%
+ \fi
+}
+\def\Etoc@traversestackofends@done#1#2{#2%
+ \ifnum#1<\Etoc@level
+ \csname Etoc@begin@\the\numexpr\Etoc@level\endcsname
+ \Etoc@global\Etoc@isfirsttrue
+ \edef\Etoc@tmp{{\the\numexpr\Etoc@level}}%
+ \else
+ \Etoc@global\Etoc@isfirstfalse
+ \let\Etoc@tmp\@empty
+ \fi
+ \expandafter\Etoc@updatestackofends\Etoc@tmp{#1}%
+}
+\def\Etoc@etoccontentsline #1{%
+ \let\Etoc@next\Etoc@gobblethreeorfour
+ \ifnum\csname Etoc@#1@@\endcsname=\Etoc@maxlevel
+ \else
+ \Etoc@skipthisonefalse
+ \global\expandafter\let\expandafter\Etoc@level\csname Etoc@#1@@\endcsname
+ \if @\@car#1\@nil\else\global\let\Etoc@virtualtop\Etoc@level\fi
+ \ifEtoc@localtoc
+ \ifEtoc@stoptoc
+ \Etoc@skipthisonetrue
+ \else
+ \ifEtoc@notactive
+ \Etoc@skipthisonetrue
+ \else
+ \unless\ifnum\Etoc@level>\etoclocaltop
+ \Etoc@skipthisonetrue
+ \global\Etoc@stoptoctrue
+ \fi
+ \fi
+ \fi
+ \fi
+ \ifEtoc@skipthisone
+ \else
+ \unless\ifnum\Etoc@level>\c@tocdepth
+ \ifEtoc@standardlines
+ \let\Etoc@next\Etoc@savedcontentsline
+ \else
+ \let\Etoc@next\Etoc@etoccontentsline@
+ \fi
+ \fi
+ \fi
+ \fi
+ \Etoc@next{#1}%
+}
+\def\Etoc@etoccontentsline@ #1#2#3#4{%
+ \Etoc@doendsandbegin
+ \Etoc@global\edef\Etoc@prefix {\expandafter\noexpand
+ \csname Etoc@prefix@\the\numexpr\Etoc@level\endcsname }%
+ \Etoc@global\edef\Etoc@contents{\expandafter\noexpand
+ \csname Etoc@contents@\the\numexpr\Etoc@level\endcsname }%
+ \ifEtoc@skipprefix \Etoc@global\def\Etoc@prefix{\@empty}\fi
+ \global\Etoc@skipprefixfalse
+ \Etoc@lxyz{#2}{#3}{#4}%
+ \Etoc@prefix
+ \Etoc@contents
+}
+\def\Etoc@lxyz #1#2#3{%
+ \ifEtoc@hyperref
+ \Etoc@global\def\etocthelink##1{\hyperlink{#3}{##1}}%
+ \else
+ \Etoc@global\let\etocthelink\@firstofone
+ \fi
+ \Etoc@global\def\etocthepage {#2}%
+ \ifEtoc@hyperref
+ \ifx\etocthepage\@empty
+ \Etoc@global\let\etocthelinkedpage\@empty
+ \else
+ \Etoc@global\def\etocthelinkedpage{\hyperlink {#3}{#2}}%
+ \fi
+ \else
+ \Etoc@global\let\etocthelinkedpage\etocthepage
+ \fi
+ \Etoc@global\def\etocthename{#1}%
+ \futurelet\Etoc@getnb@token\Etoc@@getnb #1\hspace\etoc@
+ \ifEtoc@hyperref
+ \def\Etoc@tmp##1##2{\Etoc@global\def##2{\hyperlink{#3}{##1}}}%
+ \expandafter\Etoc@tmp\expandafter{\etocthename}\etocthelinkedname
+ \ifEtoc@numbered
+ \expandafter\Etoc@tmp\expandafter{\etocthenumber}\etocthelinkednumber
+ \else
+ \Etoc@global\let\etocthelinkednumber\@empty
+ \fi
+ \else
+ \Etoc@global\let\etocthelinkedname \etocthename
+ \Etoc@global\let\etocthelinkednumber\etocthenumber
+ \fi
+ \Etoc@global\expandafter\let\csname etoclink \endcsname \etocthelink
+ \Etoc@global\expandafter\let\csname etocname \endcsname \etocthename
+ \Etoc@global\expandafter\let\csname etocnumber \endcsname\etocthenumber
+ \Etoc@global\expandafter\let\csname etocpage \endcsname \etocthepage
+ \ifEtoc@hyperref
+ \Etoc@lxyz@linktoc
+ \fi
+}
+\def\Etoc@lxyz@linktoc{%
+ \ifcase\Hy@linktoc
+ \or
+ \Etoc@global\expandafter\let\csname etocname \endcsname\etocthelinkedname
+ \Etoc@global\expandafter\let\csname etocnumber \endcsname\etocthelinkednumber
+ \or % page
+ \Etoc@global\expandafter\let\csname etocpage \endcsname\etocthelinkedpage
+ \else % all
+ \Etoc@global\expandafter\let\csname etocname \endcsname\etocthelinkedname
+ \Etoc@global\expandafter\let\csname etocnumber \endcsname\etocthelinkednumber
+ \Etoc@global\expandafter\let\csname etocpage \endcsname\etocthelinkedpage
+ \fi
+}
+\def\Etoc@@getnb {%
+ \let\Etoc@next\Etoc@getnb
+ \ifx\Etoc@getnb@token\@sptoken\let\Etoc@next\Etoc@getnb@nonbr\fi
+ \ifx\Etoc@getnb@token\bgroup \let\Etoc@next\Etoc@getnb@nonbr\fi
+ \Etoc@next
+}
+\def\Etoc@getnb #1{%
+ \in@{#1}{\numberline\chapternumberline\partnumberline\booknumberline}%
+ \ifin@
+ \let\Etoc@next\Etoc@getnb@nmbrd
+ \else
+ \ifnum\Etoc@level=\m@ne
+ \let\Etoc@next\Etoc@@getit
+ \else
+ \let\Etoc@next\Etoc@getnb@nonbr
+ \fi
+ \in@{#1}{\nonumberline}%
+ \ifin@
+ \let\Etoc@next\Etoc@getnb@nonumberline
+ \fi
+ \fi
+ \Etoc@next #1%
+}
+\def\Etoc@getnb@nmbrd #1#2{%
+ \Etoc@global\Etoc@numberedtrue
+ \Etoc@global\def\etocthenumber {#2}%
+ \Etoc@getnb@nmbrd@getname\@empty
+}%
+\def\Etoc@getnb@nmbrd@getname #1\hspace\etoc@ {%
+ \Etoc@global\expandafter\def\expandafter\etocthename\expandafter{#1}%
+}
+\def\Etoc@getnb@nonbr #1\etoc@ {%
+ \Etoc@global\Etoc@numberedfalse
+ \Etoc@global\let\etocthenumber \@empty
+}
+\def\Etoc@getnb@nonumberline #1\hspace\etoc@ {%
+ \Etoc@global\Etoc@numberedfalse
+ \Etoc@global\let\etocthenumber \@empty
+ \Etoc@global\expandafter\def\expandafter\etocthename\expandafter{\@gobble#1}%
+}
+\def\Etoc@@getit #1\hspace#2{%
+ \ifx\etoc@#2%
+ \Etoc@global\Etoc@numberedfalse
+ \Etoc@global\let\etocthenumber \@empty
+ \else
+ \Etoc@global\Etoc@numberedtrue
+ \Etoc@global\def\etocthenumber {#1}%
+ \expandafter\Etoc@getit@getname \expandafter\@empty
+ \fi
+}
+\def\Etoc@getit@getname #1\hspace\etoc@ {%
+ \Etoc@global\expandafter\def\expandafter\etocthename\expandafter{#1}%
+}
+\let\etocthename \@empty
+\let\etocthenumber \@empty
+\let\etocthepage \@empty
+\let\etocthelinkedname \@empty
+\let\etocthelinkednumber \@empty
+\let\etocthelinkedpage \@empty
+\let\etocthelink \@firstofone
+\DeclareRobustCommand*{\etocname} {}
+\DeclareRobustCommand*{\etocnumber}{}
+\DeclareRobustCommand*{\etocpage} {}
+\DeclareRobustCommand*{\etoclink} {\@firstofone}
+\DeclareRobustCommand*{\etocifnumbered}
+ {\ifEtoc@numbered\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi}
+\expandafter\let\expandafter\etocxifnumbered\csname etocifnumbered \endcsname
+\DeclareRobustCommand*{\etociffirst}
+ {\ifEtoc@isfirst\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi}
+\expandafter\let\expandafter\etocxiffirst\csname etociffirst \endcsname
+\def\Etoc@readtoc {%
+ \ifeof \Etoc@tf
+ \else
+ \read \Etoc@tf to \Etoc@buffer
+ \Etoc@toctoks=\expandafter\expandafter\expandafter
+ {\expandafter\the\expandafter\Etoc@toctoks\Etoc@buffer}%
+ \expandafter\Etoc@readtoc
+ \fi
+}
+\Etoc@toctoks {}% (superfluous, but for clarity)
+\AtBeginDocument{\IfFileExists{\jobname.toc}
+ {{\endlinechar=\m@ne
+ \makeatletter
+ \newread\Etoc@tf
+ \openin\Etoc@tf\@filef@und
+ \Etoc@readtoc
+ \global\Etoc@toctoks=\expandafter{\the\Etoc@toctoks}%
+ \closein\Etoc@tf}}
+ {\typeout{No file \jobname.toc.}}}
+\def\Etoc@openouttoc{%
+ \ifEtoc@hyperref
+ \ifx\hyper@last\@undefined
+ \IfFileExists{\jobname .toc}
+ {\Hy@WarningNoLine
+ {old toc file detected; run LaTeX again (cheers from `etoc')}%
+ \global\Etoc@toctoks={}%
+ }
+ {}%
+ \fi
+ \fi
+ \if@filesw
+ \newwrite \tf@toc
+ \immediate \openout \tf@toc \jobname .toc\relax
+ \fi
+ \global\let\Etoc@openouttoc\empty
+}
+\def\Etoc@toctoc{%
+ \gdef\Etoc@stackofends{{-3}{}}%
+ \global\let\Etoc@level\Etoc@minf
+ \global\let\Etoc@virtualtop\Etoc@minf
+ \the\Etoc@toctoks
+ \ifEtoc@notactive
+ \else
+ \gdef\Etoc@level{-\thr@@}%
+ \Etoc@doendsandbegin
+ \fi
+}
+\def\Etoc@@startlocaltoc#1#2{%
+ \ifEtoc@localtoc
+ \ifnum #1=#2\relax
+ \global\let\etoclocaltop\Etoc@virtualtop
+ \Etoc@@startlocaltochook
+ \etoclocaltableofcontentshook
+ \ifEtoc@etocstyle
+ \etocetoclocaltocmaketitle
+ \fi
+ \ifx\Etoc@aftertitlehook\@empty
+ \else
+ \ifEtoc@localtoctotoc
+ \ifEtoc@ouroboros
+ \else
+ \let\Etoc@tmp\contentsline
+ \def\contentsline{\let\contentsline\Etoc@tmp\Etoc@gobblethreeorfour}%
+ \fi
+ \fi
+ \fi
+ \global\Etoc@notactivefalse
+ \fi
+ \fi
+}
+\let\etoc@startlocaltoc\@gobble
+\let\Etoc@@startlocaltoc@toc\Etoc@@startlocaltoc
+\let\Etoc@@startlocaltochook\@empty
+\unless\ifEtoc@deeplevels
+ \def\etocdivisionnameatlevel#1{%
+ \ifcase\numexpr#1\relax
+ \ifdefined\c@chapter chapter\else section\fi%
+ \or section%
+ \or subsection%
+ \or subsubsection%
+ \or paragraph%
+ \or subparagraph%
+ \or empty%
+ \else\ifnum\numexpr#1<\m@ne
+ book%
+ \else
+ part%
+ \fi
+ \fi
+ }
+\else
+ \def\etocdivisionnameatlevel#1{%
+ \ifcase\numexpr#1\relax
+ \ifdefined\c@chapter chapter\else section\fi%
+ \or section%
+ \or subsection%
+ \or subsubsection%
+ \or subsubsubsection%
+ \or subsubsubsubsection%
+ \or subsubsubsubsubsection%
+ \or subsubsubsubsubsubsection%
+ \or paragraph%
+ \or subparagraph%
+ \else\ifnum\numexpr#1>\z@
+ empty%
+ \else\ifnum\numexpr#1=\m@ne
+ part%
+ \else
+ book%
+ \fi\fi
+ \fi
+ }
+\fi
+\def\etoclocalheadtotoc#1#2{\addcontentsline{toc}{@#1}{#2}}
+\def\etocglobalheadtotoc{\addcontentsline{toc}}
+\providecommand*\UseName{\@nameuse}
+\def\etocetoclocaltocmaketitle{%
+ \UseName{\etocdivisionnameatlevel{\etoclocaltop+1}}*{\localcontentsname}%
+ \if@noskipsec\leavevmode\par\fi
+ \etociflocaltoctotoc
+ {\etocifisstarred
+ {}% star variant, do not add to toc
+ {\etoclocalheadtotoc
+ {\etocdivisionnameatlevel{\etoclocaltop+1}}%
+ {\localcontentsname}%
+ }%
+ }%
+ {}%
+}%
+\def\localcontentsname {\contentsname}%
+\let\etoclocaltableofcontentshook\@empty
+\if1\ifEtoc@lof0\fi\ifEtoc@lot0\fi1%
+\else
+\AtBeginDocument{%
+ \let\Etoc@originaladdcontentsline\addcontentsline
+ \def\addcontentsline{\Etoc@hackedaddcontentsline}%
+}%
+\fi
+\ifEtoc@lof
+ \ifEtoc@lot
+ \def\Etoc@hackedaddcontentsline#1{%
+ \expanded{\noexpand\in@{.#1,}}{.lof,.lot,}%
+ \ifin@\expandafter\Etoc@hackedaddcontentsline@i
+ \else\expandafter\Etoc@originaladdcontentsline
+ \fi {#1}}
+ \else
+ \def\Etoc@hackedaddcontentsline#1{%
+ \expanded{\noexpand\in@{.#1,}}{.lof,}%
+ \ifin@\expandafter\Etoc@hackedaddcontentsline@i
+ \else\expandafter\Etoc@originaladdcontentsline
+ \fi {#1}}
+ \fi
+\else
+ \def\Etoc@hackedaddcontentsline#1{%
+ \expanded{\noexpand\in@{.#1,}}{.lot,}%
+ \ifin@\expandafter\Etoc@hackedaddcontentsline@i
+ \else\expandafter\Etoc@originaladdcontentsline
+ \fi {#1}}
+\fi
+\def\Etoc@hackedaddcontentsline@i#1#2#3{%
+ \expanded{\noexpand\in@{.#1;#2,}}{.lof;figure,.lot;table,}%
+ \ifin@
+ \addtocontents {toc}{%
+ \protect\contentsline{#2}{#3}{\thepage}{\ifEtoc@hyperref\@currentHref\fi}%
+ \ifdefined\protected@file@percent\protected@file@percent\fi
+ }%
+ \fi
+ \Etoc@originaladdcontentsline{#1}{#2}{#3}%
+}
+\unless\ifdefined\expanded
+ \def\Etoc@hackedaddcontentsline#1{%
+ {\edef\Etoc@tmp{\noexpand\in@{.#1,}{\ifEtoc@lof.lof,\fi\ifEtoc@lot.lot,\fi}}\expandafter}%
+ \Etoc@tmp
+ \ifin@\expandafter\Etoc@hackedaddcontentsline@i
+ \else\expandafter\Etoc@originaladdcontentsline
+ \fi {#1}%
+ }
+ \def\Etoc@hackedaddcontentsline@i#1#2#3{%
+ {\edef\Etoc@tmp{\noexpand\in@{.#1;#2,}}\expandafter}%
+ \Etoc@tmp{.lof;figure,.lot;table,}%
+ \ifin@
+ \addtocontents {toc}{%
+ \protect\contentsline{#2}{#3}{\thepage}{\ifEtoc@hyperref\@currentHref\fi}%
+ \ifdefined\protected@file@percent\protected@file@percent\fi
+ }%
+ \fi
+ \Etoc@originaladdcontentsline{#1}{#2}{#3}%
+ }
+\fi
+\def\Etoc@@startlocallistof#1#2#3{%
+ \ifEtoc@localtoc
+ \ifnum #2=#3\relax
+ \global\let\etoclocaltop\Etoc@virtualtop
+ \global\Etoc@notactivefalse
+ \Etoc@@startlocaltochook
+ \csname etoclocallistof#1shook\endcsname
+ \ifEtoc@etocstyle
+ \csname etocetoclistof#1smaketitle\endcsname
+ \fi
+ \fi
+ \fi
+}
+\def\Etoc@@startlocallistof@setlevels#1{%
+ \ifnum\etoclocaltop<\z@
+ \expandafter\let\csname Etoc@#1@@\endcsname\@ne
+ \else
+ \expandafter\let\csname Etoc@#1@@\expandafter\endcsname
+ \csname Etoc@\the\numexpr\etoclocaltop+\@ne @@\endcsname
+ \fi
+ \def\Etoc@do##1{%
+ \ifnum\etoclevel{##1}>\etoclocaltop
+ \expandafter\let\csname Etoc@##1@@\endcsname\Etoc@maxlevel
+ \fi}%
+ \Etoc@dolevels
+}
+\def\etoclocallistoffigureshook{\etocstandardlines}
+\def\etoclocallistoftableshook {\etocstandardlines}
+\def\locallistfigurename{\listfigurename}
+\def\locallisttablename {\listtablename}
+\def\etocetoclistoffiguresmaketitle{%
+ \UseName{\etocdivisionnameatlevel{\etoclocaltop+1}}*{\locallistfigurename}%
+ \ifnum\etoclocaltop>\tw@\mbox{}\par\fi
+ \etociflocalloftotoc
+ {\etocifisstarred
+ {}% star variant, do not add to toc
+ {\etoclocalheadtotoc
+ {\etocdivisionnameatlevel{\etoclocaltop+1}}%
+ {\locallistfigurename}%
+ }%
+ }%
+ {}%
+}%
+\def\etocetoclistoftablesmaketitle{%
+ \UseName{\etocdivisionnameatlevel{\etoclocaltop+1}}*{\locallisttablename}%
+ \ifnum\etoclocaltop>\tw@\mbox{}\par\fi
+ \etociflocallottotoc
+ {\etocifisstarred
+ {}% star variant, do not add to toc
+ {\etoclocalheadtotoc
+ {\etocdivisionnameatlevel{\etoclocaltop+1}}%
+ {\locallisttablename}%
+ }%
+ }%
+ {}%
+}%
+\let\Etoc@listofreset\@empty
+\ifEtoc@lof
+ \def\locallistoffigures{%
+ \def\Etoc@listofreset{%
+ \let\Etoc@currext\Etoc@tocext
+ \let\Etoc@@startlocaltoc\Etoc@@startlocaltoc@toc
+ \let\Etoc@@startlocaltochook\@empty
+ \let\Etoc@listofreset\@empty
+ \let\Etoc@listofhook\@empty
+ }%
+ \let\Etoc@currext\Etoc@lofext
+ \def\Etoc@@startlocaltoc{\Etoc@@startlocallistof{figure}}%
+ \def\Etoc@@startlocaltochook{\Etoc@@startlocallistof@setlevels{figure}}%
+ \def\Etoc@listofhook{%
+ \def\Etoc@do####1{%
+ \expandafter\let\csname Etoc@@####1@@\endcsname\Etoc@maxlevel
+ }%
+ \Etoc@dolevels
+ }%
+ \localtableofcontents
+ }
+\else
+ \def\locallistoffigures{%
+ \PackageError{etoc}{%
+ \string\locallistoffigures \on@line\space but\MessageBreak
+ package was loaded without `lof' option}%
+ {Try again with \string\usepackage[lof]{etoc}}%
+ }
+\fi
+\ifEtoc@lot
+ \def\locallistoftables{%
+ \def\Etoc@listofreset{%
+ \let\Etoc@currext\Etoc@tocext
+ \let\Etoc@@startlocaltoc\Etoc@@startlocaltoc@toc
+ \let\Etoc@@startlocaltochook\@empty
+ \let\Etoc@listofreset\@empty
+ \let\Etoc@listofhook\@empty
+ }%
+ \let\Etoc@currext\Etoc@lotext
+ \def\Etoc@@startlocaltoc{\Etoc@@startlocallistof{table}}%
+ \def\Etoc@@startlocaltochook{\Etoc@@startlocallistof@setlevels{table}}%
+ \def\Etoc@listofhook{%
+ \def\Etoc@do####1{%
+ \expandafter\let\csname Etoc@@####1@@\endcsname\Etoc@maxlevel
+ }%
+ \Etoc@dolevels
+ }%
+ \localtableofcontents
+ }
+\else
+ \def\locallistoftables{%
+ \PackageError{etoc}{%
+ \string\locallistoftable \on@line\space but\MessageBreak
+ package was loaded without `lot' option}%
+ {Try again with \string\usepackage[lot]{etoc}}%
+ }
+\fi
+\def\Etoc@checkifempty {%
+ \global\Etoc@isemptytoctrue
+ \global\Etoc@stoptocfalse
+ \global\let\Etoc@level\Etoc@minf
+ \global\let\Etoc@virtualtop\Etoc@minf
+ \gdef\Etoc@stackofends{{-3}{}}%
+ \begingroup
+ \ifEtoc@localtoc
+ \def\etoc@startlocaltoc##1{%
+ \ifnum##1=\Etoc@tocid\relax
+ \global\let\etoclocaltop\Etoc@virtualtop
+ \Etoc@@startlocaltochook
+ \global\Etoc@notactivefalse
+ \fi
+ }%
+ \let\contentsline\Etoc@testingcontentslinelocal
+ \else
+ \let\contentsline\Etoc@testingcontentsline
+ \fi
+ \Etoc@storetocdepth
+ \let\Etoc@setlocaltop@doendsandbegin\@empty
+ \the\Etoc@toctoks
+ \Etoc@restoretocdepth
+ \endgroup
+}
+\DeclareRobustCommand*\etocifwasempty
+ {\ifEtoc@isemptytoc\expandafter\@firstoftwo\else\expandafter\@secondoftwo\fi }
+\expandafter\let\expandafter\etocxifwasempty\csname etocifwasempty \endcsname
+\def\Etoc@testingcontentslinelocal #1{%
+ \ifEtoc@stoptoc
+ \else
+ \ifnum\csname Etoc@#1@@\endcsname=\Etoc@maxlevel
+ \else
+ \global\expandafter\let\expandafter\Etoc@level\csname Etoc@#1@@\endcsname
+ \if @\@car#1\@nil\else\global\let\Etoc@virtualtop\Etoc@level\fi
+ \ifEtoc@notactive
+ \else
+ \ifnum\Etoc@level>\etoclocaltop
+ \unless\ifnum\Etoc@level>\c@tocdepth
+ \global\Etoc@isemptytocfalse
+ \global\Etoc@stoptoctrue
+ \fi
+ \else
+ \global\Etoc@stoptoctrue
+ \fi
+ \fi
+ \fi
+ \fi
+ \Etoc@gobblethreeorfour{}%
+}
+\def\Etoc@testingcontentsline #1{%
+ \ifEtoc@stoptoc
+ \else
+ \ifnum\csname Etoc@#1@@\endcsname=\Etoc@maxlevel
+ \else
+ \unless\ifnum\csname Etoc@#1@@\endcsname>\c@tocdepth
+ \global\Etoc@isemptytocfalse
+ \global\Etoc@stoptoctrue
+ \fi
+ \fi
+ \fi
+ \Etoc@gobblethreeorfour{}%
+}
+\def\Etoc@localtableofcontents#1{%
+ \gdef\etoclocaltop{-\@m}%
+ \Etoc@localtoctrue
+ \global\Etoc@isemptytocfalse
+ \edef\Etoc@tocid{#1}%
+ \ifnum\Etoc@tocid<\@ne
+ \setbox0\hbox{\ref{Unknown toc ref \@secondoftwo#1. \space Rerun LaTeX}}%
+ \global\Etoc@stoptoctrue
+ \gdef\etoclocaltop{-\thr@@}%
+ \Etoc@tableofcontents
+ \expandafter\Etoc@gobtoetoc@
+ \fi
+ \global\Etoc@notactivetrue
+ \ifEtoc@checksemptiness
+ \Etoc@checkifempty
+ \fi
+ \ifEtoc@isemptytoc
+ \ifEtoc@notactive
+ \setbox0\hbox{\ref{Unknown toc ID \number\Etoc@tocid. \space Rerun LaTeX}}%
+ \global\Etoc@isemptytocfalse
+ \global\Etoc@stoptoctrue
+ \gdef\etoclocaltop{-\thr@@}%
+ \Etoc@tableofcontents
+ \expandafter\expandafter\expandafter\Etoc@gobtoetoc@
+ \fi
+ \else
+ \global\Etoc@stoptocfalse
+ \global\Etoc@notactivetrue
+ \edef\etoc@startlocaltoc##1%
+ {\noexpand\Etoc@@startlocaltoc{##1}{\Etoc@tocid}}%
+ \Etoc@tableofcontents
+ \fi
+ \@gobble\etoc@
+ \endgroup\ifEtoc@mustclosegroup\endgroup\fi
+ \Etoc@tocdepthreset
+ \Etoc@listofreset
+ \etocaftertochook
+}% \Etoc@localtableofcontents
+\def\Etoc@getref #1{%
+ \@ifundefined{r@#1}
+ {0}
+ {\expandafter\Etoc@getref@i\romannumeral-`0%
+ \expandafter\expandafter\expandafter
+ \@car\csname r@#1\endcsname0\@nil\@etoc
+ }%
+}
+\def\Etoc@getref@i#1#2\@etoc{\ifnum9<1\string#1 #1#2\else 0\fi}
+\def\Etoc@ref#1{\Etoc@localtableofcontents{\Etoc@getref{#1}}}
+\def\Etoc@label#1{\label{#1}\futurelet\Etoc@nexttoken\Etoc@t@bleofcontents}
+\@firstofone{\def\Etoc@again} {\futurelet\Etoc@nexttoken\Etoc@t@bleofcontents}
+\def\Etoc@dothis #1#2\etoc@ {\fi #1}
+\def\Etoc@t@bleofcontents{%
+ \gdef\etoclocaltop{-\@M}%
+ \ifx\Etoc@nexttoken\label\Etoc@dothis{\expandafter\Etoc@label\@gobble}\fi
+ \ifx\Etoc@nexttoken\@sptoken\Etoc@dothis{\Etoc@again}\fi
+ \ifx\Etoc@nexttoken\ref\Etoc@dothis{\expandafter\Etoc@ref\@gobble}\fi
+ \ifEtoc@tocwithid\Etoc@dothis{\Etoc@localtableofcontents{\c@etoc@tocid}}\fi
+ \global\Etoc@isemptytocfalse
+ \ifEtoc@checksemptiness\Etoc@checkifempty\fi
+ \ifEtoc@isemptytoc
+ \ifEtoc@notocifnotoc
+ \expandafter\expandafter\expandafter\@gobble
+ \fi
+ \fi
+ \Etoc@tableofcontents
+ \endgroup
+ \ifEtoc@mustclosegroup\endgroup\fi
+ \Etoc@tocdepthreset
+ \Etoc@listofreset
+ \etocaftertochook
+ \@gobble\etoc@
+ }% \Etoc@t@bleofcontents
+\def\Etoc@table@fcontents{%
+ \refstepcounter{etoc@tocid}%
+ \Etoc@tocwithidfalse
+ \futurelet\Etoc@nexttoken\Etoc@t@bleofcontents
+}
+\def\Etoc@localtable@fcontents{%
+ \refstepcounter{etoc@tocid}%
+ \addtocontents{toc}{\string\etoc@startlocaltoc{\the\c@etoc@tocid}}%
+ \Etoc@tocwithidtrue
+ \futurelet\Etoc@nexttoken\Etoc@t@bleofcontents
+}
+\def\etoctableofcontents{%
+ \Etoc@openouttoc
+ \Etoc@tocdepthset
+ \begingroup
+ \@ifstar
+ {\let\Etoc@aftertitlehook\@empty\Etoc@table@fcontents}
+ {\def\Etoc@aftertitlehook{\etocaftertitlehook}\Etoc@table@fcontents}%
+}% \etoctableofcontents
+\def\etocifisstarred{\ifx\Etoc@aftertitlehook\@empty
+ \expandafter\@firstoftwo\else
+ \expandafter\@secondoftwo
+ \fi}
+\let\etocoriginaltableofcontents\tableofcontents
+\let\tableofcontents\etoctableofcontents
+\let\Etoc@listofhook\@empty
+\newcommand*\localtableofcontents{%
+ \Etoc@openouttoc
+ \Etoc@tocdepthset
+ \begingroup
+ \Etoc@listofhook
+ \@ifstar
+ {\let\Etoc@aftertitlehook\@empty\Etoc@localtable@fcontents}
+ {\def\Etoc@aftertitlehook{\etocaftertitlehook}\Etoc@localtable@fcontents}%
+}% \localtableofcontents
+\newcommand*\localtableofcontentswithrelativedepth[1]{%
+ \def\Etoc@@startlocaltochook{%
+ \global\c@tocdepth\numexpr\etoclocaltop+#1\relax
+ }%
+ \def\Etoc@listofreset{\let\Etoc@@startlocaltochook\@empty
+ \let\Etoc@listofreset\@empty}%
+ \localtableofcontents
+}% \localtableofcontentswithrelativedepth
+\newcommand\etocsettocstyle[2]{%
+ \Etoc@etocstylefalse
+ \Etoc@classstylefalse
+ \def\Etoc@tableofcontents@user@before{#1}%
+ \def\Etoc@tableofcontents@user@after {#2}%
+}%
+\def\etocstoretocstyleinto#1{%
+%% \@ifdefinable#1{%
+ \edef#1{\noexpand\Etoc@etocstylefalse\noexpand\Etoc@classstylefalse
+ \def\noexpand\Etoc@tableofcontents@user@before{%
+ \unexpanded\expandafter{\Etoc@tableofcontents@user@before}%
+ }%
+ \def\noexpand\Etoc@tableofcontents@user@after{%
+ \unexpanded\expandafter{\Etoc@tableofcontents@user@after}%
+ }%
+ }%
+%% }%
+}%
+\def\Etoc@tableofcontents {%
+ \Etoc@tableofcontents@etoc@before
+ \ifEtoc@localtoc\ifEtoc@etocstyle\expandafter\expandafter\expandafter\@gobble\fi\fi
+ \Etoc@tableofcontents@user@before
+ \Etoc@tableofcontents@contents
+ \ifEtoc@localtoc\ifEtoc@etocstyle\expandafter\expandafter\expandafter\@gobble\fi\fi
+ \Etoc@tableofcontents@user@after
+ \Etoc@tableofcontents@etoc@after
+ \@gobble\etoc@
+}
+\def\Etoc@tableofcontents@etoc@before{%
+ \ifnum\c@tocdepth>\Etoc@minf
+ \else
+ \expandafter\Etoc@gobtoetoc@
+ \fi
+ \Etoc@par
+ \Etoc@beforetitlehook
+ \etocbeforetitlehook
+ \Etoc@storetocdepth
+ \let\Etoc@savedcontentsline\contentsline
+ \let\contentsline\Etoc@etoccontentsline
+ \ifEtoc@standardlines
+ \else
+ \def\Etoc@do##1{%
+ \expandafter\def\csname etocsaved##1tocline\endcsname
+ {\PackageError{etoc}{%
+ \expandafter\string\csname etocsaved##1tocline\endcsname\space
+ has been deprecated\MessageBreak
+ at 1.1a and is removed at 1.2.\MessageBreak
+ Use \expandafter\string\csname l@##1\endcsname\space directly.\MessageBreak
+ Reported \on@line}%
+ {I will use \expandafter\string
+ \csname l@##1\endcsname\space myself for this time.%
+ }%
+ \csname l@##1\endcsname
+ }%
+ }%
+ \Etoc@dolevels
+ \fi
+}%
+\def\Etoc@tableofcontents@contents{%
+ \Etoc@tocdepthset
+ \ifEtoc@parskip\parskip\z@skip\fi
+ \Etoc@aftertitlehook
+ \gdef\etoclocaltop{-\thr@@}%
+ \Etoc@toctoc
+ \etocaftercontentshook
+}%
+\def\Etoc@tableofcontents@etoc@after{%
+ \@nobreakfalse
+ \Etoc@restoretocdepth
+ \ifx\Etoc@global\global
+ \@ifundefined{tof@finish}
+ {}
+ {\ifx\tof@finish\@empty
+ \else
+ \global\let\contentsline\Etoc@savedcontentsline
+ \fi
+ }%
+ \fi
+}
+\def\etocsetstyle#1{\ifcsname Etoc@#1@@\endcsname
+ \expandafter\Etoc@setstyle@a
+ \else
+ \expandafter\Etoc@setstyle@error
+ \fi {#1}%
+}
+\def\Etoc@setstyle@error #1{%
+ \PackageWarning{etoc}{`#1' is unknown to etoc. \space Did you\MessageBreak
+ forget some \string\etocsetlevel{#1}{}?\MessageBreak
+ Reported}%
+ \@gobblefour
+}
+\def\Etoc@setstyle@a #1{%
+ \edef\Etoc@tmp{\the\numexpr\csname Etoc@#1@@\endcsname}%
+ \if1\unless\ifnum\Etoc@tmp<\Etoc@maxlevel 0\fi
+ \unless\ifnum\Etoc@tmp>\Etoc@minf 0\fi1%
+ \Etoc@standardlinesfalse
+ \expandafter\Etoc@setstyle@b\expandafter\Etoc@tmp
+ \else
+ \ifnum\Etoc@tmp=\Etoc@maxlevel
+ \in@{.#1,}{.figure,.table,}%
+ \ifin@
+ \PackageWarning{etoc}
+ {You can not use \string\etocsetstyle\space with `#1'.\MessageBreak
+ Check the package documentation (in particular about\MessageBreak
+ \string\etoclocallistoffigureshook/\string\etoclocallistoftableshook)%
+ \MessageBreak on how to customize
+ figure and table entries in local\MessageBreak lists. Reported}%
+ \else
+ \PackageInfo{etoc}
+ {Attempt to set the style of `#1',\MessageBreak
+ whose level is currently the maximal one \etocthemaxlevel,\MessageBreak
+ which is never displayed. \space This will be ignored\MessageBreak
+ but note that we do quit compatibility mode.\MessageBreak
+ Reported}%
+ \Etoc@standardlinesfalse
+ \fi
+ \else
+ \PackageWarning{etoc}{This should not happen. Reported}%
+ \fi
+ \expandafter\@gobblefour
+ \fi
+}
+\long\def\Etoc@setstyle@b#1#2#3#4#5{%
+ \expandafter\def\csname Etoc@begin@#1\endcsname {#2}%
+ \expandafter\def\csname Etoc@prefix@#1\endcsname {#3}%
+ \expandafter\def\csname Etoc@contents@#1\endcsname {#4}%
+ \expandafter\def\csname Etoc@end@#1\endcsname {#5}%
+}
+\def\Etoc@setstyle@e#1{%
+ \expandafter\let\csname Etoc@begin@#1\endcsname \@empty
+ \expandafter\let\csname Etoc@prefix@#1\endcsname \@empty
+ \expandafter\let\csname Etoc@contents@#1\endcsname \@empty
+ \expandafter\let\csname Etoc@end@#1\endcsname \@empty
+}
+\def\Etoc@storelines@a#1{%
+ \noexpand\Etoc@setstyle@b{#1}%
+ {\expandafter\Etoc@expandonce\csname Etoc@begin@#1\endcsname}%
+ {\expandafter\Etoc@expandonce\csname Etoc@prefix@#1\endcsname}%
+ {\expandafter\Etoc@expandonce\csname Etoc@contents@#1\endcsname}%
+ {\expandafter\Etoc@expandonce\csname Etoc@end@#1\endcsname}%
+}
+\def\Etoc@expandonce#1{\unexpanded\expandafter{#1}}
+\def\etocstorelinestylesinto#1{%
+ \edef#1{\Etoc@storelines@a{-2}\Etoc@storelines@a{-1}\Etoc@storelines@a{0}%
+ \Etoc@storelines@a {1}\Etoc@storelines@a {2}\Etoc@storelines@a{3}%
+ \Etoc@storelines@a {4}\Etoc@storelines@a {5}%
+ \ifEtoc@deeplevels
+ \Etoc@storelines@a{6}\Etoc@storelines@a{7}\Etoc@storelines@a{8}%
+ \Etoc@storelines@a{9}\Etoc@storelines@a{10}\Etoc@storelines@a{11}%
+ \fi
+ }%
+}
+\def\etocstorethislinestyleinto#1#2{%
+ \edef#2{\expandafter\Etoc@storelines@a\expandafter{\number\etoclevel{#1}}}%
+}%
+\def\etocfontminustwo {\normalfont \LARGE \bfseries}
+\def\etocfontminusone {\normalfont \large \bfseries}
+\def\etocfontzero {\normalfont \large \bfseries}
+\def\etocfontone {\normalfont \normalsize \bfseries}
+\def\etocfonttwo {\normalfont \normalsize}
+\def\etocfontthree {\normalfont \footnotesize}
+\def\etocsepminustwo {4ex \@plus .5ex \@minus .5ex}
+\def\etocsepminusone {4ex \@plus .5ex \@minus .5ex}
+\def\etocsepzero {2.5ex \@plus .4ex \@minus .4ex}
+\def\etocsepone {1.5ex \@plus .3ex \@minus .3ex}
+\def\etocseptwo {.5ex \@plus .1ex \@minus .1ex}
+\def\etocsepthree {.25ex \@plus .05ex \@minus .05ex}
+\def\etocbaselinespreadminustwo {1}
+\def\etocbaselinespreadminusone {1}
+\def\etocbaselinespreadzero {1}
+\def\etocbaselinespreadone {1}
+\def\etocbaselinespreadtwo {1}
+\def\etocbaselinespreadthree {.9}
+\def\etocminustwoleftmargin {1.5em plus 0.5fil}
+\def\etocminustworightmargin {1.5em plus -0.5fil}
+\def\etocminusoneleftmargin {1em}
+\def\etocminusonerightmargin {1em}
+\def\etoctoclineleaders
+ {\hbox{\normalfont\normalsize\hb@xt@2ex {\hss.\hss}}}
+\def\etocabbrevpagename {p.~}
+\def\etocpartname {Part}
+\def\etocbookname {Book}
+\def\etocdefaultlines{%
+ \Etoc@standardlinesfalse
+ \etocdefaultlines@setbook
+ \etocdefaultlines@setpart
+ \etocdefaultlines@setchapter
+ \etocdefaultlines@setsection
+ \etocdefaultlines@setsubsection
+ \etocdefaultlines@setsubsubsection
+ \etocdefaultlines@setdeeperones
+}
+\def\etocnoprotrusion{\leavevmode\kern-\p@\kern\p@}
+\@ifclassloaded{memoir}{%
+ \def\etocdefaultlines@setbook{%
+ \Etoc@setstyle@b
+ {-2}%
+ {\addpenalty\@M\etocskipfirstprefix}
+ {\addpenalty\@secpenalty}
+ {\begingroup
+ \etocfontminustwo
+ \addvspace{\etocsepminustwo}%
+ \parindent \z@
+ \leftskip \etocminustwoleftmargin
+ \rightskip \etocminustworightmargin
+ \parfillskip \@flushglue
+ \vbox{\etocifnumbered{\etoclink{\etocbookname\enspace\etocthenumber:\quad}}{}%
+ \etocname
+ \baselineskip\etocbaselinespreadminustwo\baselineskip
+ \par}%
+ \addpenalty\@M\addvspace{\etocsepminusone}%
+ \endgroup}
+ {}%
+ }
+ }{\let\etocdefaultlines@setbook\@empty}
+\def\etocdefaultlines@setpart{%
+\Etoc@setstyle@b
+ {-1}%
+ {\addpenalty\@M\etocskipfirstprefix}
+ {\addpenalty\@secpenalty}
+ {\begingroup
+ \etocfontminusone
+ \addvspace{\etocsepminusone}%
+ \parindent \z@
+ \leftskip \etocminusoneleftmargin
+ \rightskip \etocminusonerightmargin
+ \parfillskip \@flushglue
+ \vbox{\etocifnumbered{\etoclink{\etocpartname\enspace\etocthenumber.\quad}}{}%
+ \etocname
+ \baselineskip\etocbaselinespreadminusone\baselineskip
+ \par}%
+ \addpenalty\@M\addvspace{\etocsepzero}%
+ \endgroup}
+ {}%
+}
+\def\etocdefaultlines@setchapter{%
+\Etoc@setstyle@b
+ {0}%
+ {\addpenalty\@M\etocskipfirstprefix}
+ {\addpenalty\@itempenalty}
+ {\begingroup
+ \etocfontzero
+ \addvspace{\etocsepzero}%
+ \parindent \z@ \parfillskip \@flushglue
+ \vbox{\etocifnumbered{\etocnumber.\enspace}{}\etocname
+ \baselineskip\etocbaselinespreadzero\baselineskip
+ \par}%
+ \endgroup}
+ {\addpenalty{-\@highpenalty}\addvspace{\etocsepminusone}}%
+}
+\def\etocdefaultlines@setsection{%
+\Etoc@setstyle@b
+ {1}%
+ {\addpenalty\@M\etocskipfirstprefix}
+ {\addpenalty\@itempenalty}
+ {\begingroup
+ \etocfontone
+ \addvspace{\etocsepone}%
+ \parindent \z@ \parfillskip \z@
+ \setbox\z@\vbox{\parfillskip\@flushglue
+ \etocname\par
+ \setbox\tw@\lastbox
+ \global\setbox\@ne\hbox{\unhbox\tw@\ }}%
+ \dimen\z@=\wd\@ne
+ \setbox\z@=\etoctoclineleaders
+ \advance\dimen\z@\wd\z@
+ \etocifnumbered
+ {\setbox\tw@\hbox{\etocnumber, \etocabbrevpagename\etocpage\etocnoprotrusion}}
+ {\setbox\tw@\hbox{\etocabbrevpagename\etocpage\etocnoprotrusion}}%
+ \advance\dimen\z@\wd\tw@
+ \ifdim\dimen\z@ < \linewidth
+ \vbox{\etocname~%
+ \leaders\box\z@\hfil\box\tw@
+ \baselineskip\etocbaselinespreadone\baselineskip
+ \par}%
+ \else
+ \vbox{\etocname~%
+ \leaders\copy\z@\hfil\break
+ \hbox{}\leaders\box\z@\hfil\box\tw@
+ \baselineskip\etocbaselinespreadone\baselineskip
+ \par}%
+ \fi
+ \endgroup}
+ {\addpenalty\@secpenalty\addvspace{\etocsepzero}}%
+}
+\def\etocdefaultlines@setsubsection{%
+\Etoc@setstyle@b
+ {2}%
+ {\addpenalty\@medpenalty\etocskipfirstprefix}
+ {\addpenalty\@itempenalty}
+ {\begingroup
+ \etocfonttwo
+ \addvspace{\etocseptwo}%
+ \parindent \z@ \parfillskip \z@
+ \setbox\z@\vbox{\parfillskip\@flushglue
+ \etocname\par\setbox\tw@\lastbox
+ \global\setbox\@ne\hbox{\unhbox\tw@}}%
+ \dimen\z@=\wd\@ne
+ \setbox\z@=\etoctoclineleaders
+ \advance\dimen\z@\wd\z@
+ \etocifnumbered
+ {\setbox\tw@\hbox{\etocnumber, \etocabbrevpagename\etocpage\etocnoprotrusion}}
+ {\setbox\tw@\hbox{\etocabbrevpagename\etocpage\etocnoprotrusion}}%
+ \advance\dimen\z@\wd\tw@
+ \ifdim\dimen\z@ < \linewidth
+ \vbox{\etocname~%
+ \leaders\box\z@\hfil\box\tw@
+ \baselineskip\etocbaselinespreadtwo\baselineskip
+ \par}%
+ \else
+ \vbox{\etocname~%
+ \leaders\copy\z@\hfil\break
+ \hbox{}\leaders\box\z@\hfil\box\tw@
+ \baselineskip\etocbaselinespreadtwo\baselineskip
+ \par}%
+ \fi
+ \endgroup}
+ {\addpenalty\@secpenalty\addvspace{\etocsepone}}%
+}
+\def\etocdefaultlines@setsubsubsection{%
+\Etoc@setstyle@b
+ {3}%
+ {\addpenalty\@M
+ \etocfontthree
+ \vspace{\etocsepthree}%
+ \noindent
+ \etocskipfirstprefix}
+ {\allowbreak\,--\,}
+ {\etocname}
+ {.\hfil
+ \begingroup
+ \baselineskip\etocbaselinespreadthree\baselineskip
+ \par
+ \endgroup
+ \addpenalty{-\@highpenalty}}
+}
+\def\etocdefaultlines@setdeeperones{%
+\Etoc@setstyle@e{4}%
+\Etoc@setstyle@e{5}%
+\ifEtoc@deeplevels
+ \Etoc@setstyle@e{6}%
+ \Etoc@setstyle@e{7}%
+ \Etoc@setstyle@e{8}%
+ \Etoc@setstyle@e{9}%
+ \Etoc@setstyle@e{10}%
+ \Etoc@setstyle@e{11}%
+\fi
+}
+\def\etocabovetocskip{3.5ex \@plus 1ex \@minus .2ex}
+\def\etocbelowtocskip{3.5ex \@plus 1ex \@minus .2ex}
+\def\etoccolumnsep{2em}
+\def\etocmulticolsep{0ex}
+\def\etocmulticolpretolerance{-1}
+\def\etocmulticoltolerance{200}
+\def\etocdefaultnbcol{2}
+\def\etocinnertopsep{2ex}
+\newcommand\etocmulticolstyle[2][\etocdefaultnbcol]{%
+\etocsettocstyle
+ {\let\etocoldpar\par
+ \addvspace{\etocabovetocskip}%
+ \ifnum #1>\@ne
+ \expandafter\@firstoftwo
+ \else \expandafter\@secondoftwo
+ \fi
+ {\multicolpretolerance\etocmulticolpretolerance
+ \multicoltolerance\etocmulticoltolerance
+ \setlength{\columnsep}{\etoccolumnsep}%
+ \setlength{\multicolsep}{\etocmulticolsep}%
+ \begin{multicols}{#1}[#2\etocoldpar\addvspace{\etocinnertopsep}]}
+ {#2\ifvmode\else\begingroup\interlinepenalty\@M\parskip\z@skip
+ \@@par\endgroup
+ \fi
+ \nobreak\addvspace{\etocinnertopsep}%
+ \pretolerance\etocmulticolpretolerance
+ \tolerance\etocmulticoltolerance}%
+ }%
+ {\ifnum #1>\@ne
+ \expandafter\@firstofone
+ \else \expandafter\@gobble
+ \fi
+ {\end{multicols}}%
+ \addvspace{\etocbelowtocskip}}%
+}
+\def\etocinnerbottomsep{3.5ex}
+\def\etocinnerleftsep{2em}
+\def\etocinnerrightsep{2em}
+\def\etoctoprule{\hrule}
+\def\etocleftrule{\vrule}
+\def\etocrightrule{\vrule}
+\def\etocbottomrule{\hrule}
+\def\etoctoprulecolorcmd{\relax}
+\def\etocbottomrulecolorcmd{\relax}
+\def\etocleftrulecolorcmd{\relax}
+\def\etocrightrulecolorcmd{\relax}
+\def\etoc@ruledheading #1{%
+ \hb@xt@\linewidth{\color@begingroup
+ \hss #1\hss\hskip-\linewidth
+ \etoctoprulecolorcmd\leaders\etoctoprule\hss
+ \phantom{#1}%
+ \leaders\etoctoprule\hss\color@endgroup}%
+ \nointerlineskip\nobreak\vskip\etocinnertopsep}
+\newcommand*\etocruledstyle[2][\etocdefaultnbcol]{%
+\etocsettocstyle
+ {\addvspace{\etocabovetocskip}%
+ \ifnum #1>\@ne
+ \expandafter\@firstoftwo
+ \else \expandafter\@secondoftwo
+ \fi
+ {\multicolpretolerance\etocmulticolpretolerance
+ \multicoltolerance\etocmulticoltolerance
+ \setlength{\columnsep}{\etoccolumnsep}%
+ \setlength{\multicolsep}{\etocmulticolsep}%
+ \begin{multicols}{#1}[\etoc@ruledheading{#2}]}
+ {\etoc@ruledheading{#2}%
+ \pretolerance\etocmulticolpretolerance
+ \tolerance\etocmulticoltolerance}}
+ {\ifnum #1>\@ne\expandafter\@firstofone
+ \else \expandafter\@gobble
+ \fi
+ {\end{multicols}}%
+ \addvspace{\etocbelowtocskip}}}
+\def\etocframedmphook{\relax}
+\long\def\etocbkgcolorcmd{\relax}
+\long\def\Etoc@relax{\relax}
+\newbox\etoc@framed@titlebox
+\newbox\etoc@framed@contentsbox
+\newcommand*\etocframedstyle[2][\etocdefaultnbcol]{%
+\etocsettocstyle{%
+ \addvspace{\etocabovetocskip}%
+ \sbox\z@{#2}%
+ \dimen\z@\dp\z@
+ \ifdim\wd\z@<\linewidth \dp\z@\z@ \else \dimen\z@\z@ \fi
+ \setbox\etoc@framed@titlebox=\hb@xt@\linewidth{\color@begingroup
+ \hss
+ \ifx\etocbkgcolorcmd\Etoc@relax
+ \else
+ \sbox\tw@{\color{white}%
+ \vrule\@width\wd\z@\@height\ht\z@\@depth\dimen\z@}%
+ \ifdim\wd\z@<\linewidth \dp\tw@\z@\fi
+ \box\tw@
+ \hskip-\wd\z@
+ \fi
+ \copy\z@
+ \hss
+ \hskip-\linewidth
+ \etoctoprulecolorcmd\leaders\etoctoprule\hss
+ \hskip\wd\z@
+ \etoctoprulecolorcmd\leaders\etoctoprule\hss\color@endgroup}%
+ \setbox\z@\hbox{\etocleftrule\etocrightrule}%
+ \dimen\tw@\linewidth\advance\dimen\tw@-\wd\z@
+ \advance\dimen\tw@-\etocinnerleftsep
+ \advance\dimen\tw@-\etocinnerrightsep
+ \setbox\etoc@framed@contentsbox=\vbox\bgroup
+ \hsize\dimen\tw@
+ \kern\dimen\z@
+ \vskip\etocinnertopsep
+ \hbox\bgroup
+ \begin{minipage}{\hsize}%
+ \etocframedmphook
+ \ifnum #1>\@ne
+ \expandafter\@firstoftwo
+ \else \expandafter\@secondoftwo
+ \fi
+ {\multicolpretolerance\etocmulticolpretolerance
+ \multicoltolerance\etocmulticoltolerance
+ \setlength{\columnsep}{\etoccolumnsep}%
+ \setlength{\multicolsep}{\etocmulticolsep}%
+ \begin{multicols}{#1}}
+ {\pretolerance\etocmulticolpretolerance
+ \tolerance\etocmulticoltolerance}}
+ {\ifnum #1>\@ne\expandafter\@firstofone
+ \else \expandafter\@gobble
+ \fi
+ {\end{multicols}\unskip }%
+ \end{minipage}%
+ \egroup
+ \vskip\etocinnerbottomsep
+ \egroup
+ \vbox{\hsize\linewidth
+ \ifx\etocbkgcolorcmd\Etoc@relax
+ \else
+ \kern\ht\etoc@framed@titlebox
+ \kern\dp\etoc@framed@titlebox
+ \hb@xt@\linewidth{\color@begingroup
+ \etocleftrulecolorcmd\etocleftrule
+ \etocbkgcolorcmd
+ \leaders\vrule
+ \@height\ht\etoc@framed@contentsbox
+ \@depth\dp\etoc@framed@contentsbox
+ \hss
+ \etocrightrulecolorcmd\etocrightrule
+ \color@endgroup}\nointerlineskip
+ \vskip-\dp\etoc@framed@contentsbox
+ \vskip-\ht\etoc@framed@contentsbox
+ \vskip-\dp\etoc@framed@titlebox
+ \vskip-\ht\etoc@framed@titlebox
+ \fi
+ \box\etoc@framed@titlebox\nointerlineskip
+ \hb@xt@\linewidth{\color@begingroup
+ {\etocleftrulecolorcmd\etocleftrule}%
+ \hss\box\etoc@framed@contentsbox\hss
+ \etocrightrulecolorcmd\etocrightrule\color@endgroup}
+ \nointerlineskip
+ \vskip\ht\etoc@framed@contentsbox
+ \vskip\dp\etoc@framed@contentsbox
+ \hb@xt@\linewidth{\color@begingroup\etocbottomrulecolorcmd
+ \leaders\etocbottomrule\hss\color@endgroup}}
+ \addvspace{\etocbelowtocskip}}}
+\newcommand\etoc@multicoltoc[2][\etocdefaultnbcol]{%
+ \etocmulticolstyle[#1]{#2}%
+ \tableofcontents}
+\newcommand\etoc@multicoltoci[2][\etocdefaultnbcol]{%
+ \etocmulticolstyle[#1]{#2}%
+ \tableofcontents*}
+\newcommand\etoc@local@multicoltoc[2][\etocdefaultnbcol]{%
+ \etocmulticolstyle[#1]{#2}%
+ \localtableofcontents}
+\newcommand\etoc@local@multicoltoci[2][\etocdefaultnbcol]{%
+ \etocmulticolstyle[#1]{#2}%
+ \localtableofcontents*}
+\newcommand*\etoc@ruledtoc[2][\etocdefaultnbcol]{%
+ \etocruledstyle[#1]{#2}%
+ \tableofcontents}
+\newcommand*\etoc@ruledtoci[2][\etocdefaultnbcol]{%
+ \etocruledstyle[#1]{#2}%
+ \tableofcontents*}
+\newcommand*\etoc@local@ruledtoc[2][\etocdefaultnbcol]{%
+ \etocruledstyle[#1]{#2}%
+ \localtableofcontents}
+\newcommand*\etoc@local@ruledtoci[2][\etocdefaultnbcol]{%
+ \etocruledstyle[#1]{#2}%
+ \localtableofcontents*}
+\newcommand*\etoc@framedtoc[2][\etocdefaultnbcol]{%
+ \etocframedstyle[#1]{#2}%
+ \tableofcontents}
+\newcommand*\etoc@framedtoci[2][\etocdefaultnbcol]{%
+ \etocframedstyle[#1]{#2}%
+ \tableofcontents*}
+\newcommand*\etoc@local@framedtoc[2][\etocdefaultnbcol]{%
+ \etocframedstyle[#1]{#2}%
+ \localtableofcontents}
+\newcommand*\etoc@local@framedtoci[2][\etocdefaultnbcol]{%
+ \etocframedstyle[#1]{#2}%
+ \localtableofcontents*}
+\def\etocmulticol{\begingroup
+ \Etoc@mustclosegrouptrue
+ \@ifstar
+ {\etoc@multicoltoci}
+ {\etoc@multicoltoc}}
+\def\etocruled{\begingroup
+ \Etoc@mustclosegrouptrue
+ \@ifstar
+ {\etoc@ruledtoci}
+ {\etoc@ruledtoc}}
+\def\etocframed{\begingroup
+ \Etoc@mustclosegrouptrue
+ \@ifstar
+ {\etoc@framedtoci}
+ {\etoc@framedtoc}}
+\def\etoclocalmulticol{\begingroup
+ \Etoc@mustclosegrouptrue
+ \@ifstar
+ {\etoc@local@multicoltoci}
+ {\etoc@local@multicoltoc}}
+\def\etoclocalruled{\begingroup
+ \Etoc@mustclosegrouptrue
+ \@ifstar
+ {\etoc@local@ruledtoci}
+ {\etoc@local@ruledtoc}}
+\def\etoclocalframed{\begingroup
+ \Etoc@mustclosegrouptrue
+ \@ifstar
+ {\etoc@local@framedtoci}
+ {\etoc@local@framedtoc}}
+\def\etocmemoirtoctotocfmt #1#2{%
+ \PackageWarning{etoc}
+ {\string\etocmemoirtoctotocfmt\space is deprecated.\MessageBreak
+ Use in its place \string\etocsettoclineforclasstoc,\MessageBreak
+ and \string\etocsettoclineforclasslistof{toc} (or {lof}, {lot}).
+ I will do this now.\MessageBreak
+ Reported}%
+ \etocsettoclineforclasstoc{#1}{#2}%
+ \etocsettoclineforclasslistof{toc}{#1}{#2}%
+}
+\def\etocsettoclineforclasstoc #1#2{%
+ \def\etocclassmaintocaddtotoc{\etocglobalheadtotoc{#1}{#2}}%
+}
+\def\etocsettoclineforclasslistof #1#2#3{%
+ \@namedef{etocclasslocal#1addtotoc}{\etoclocalheadtotoc{#2}{#3}}%
+}
+\let\etocclasslocaltocaddtotoc\@empty
+\let\etocclasslocallofaddtotoc\@empty
+\let\etocclasslocallotaddtotoc\@empty
+\ifdefined\c@chapter
+ \def\etocclasslocaltocmaketitle{\section*{\localcontentsname}}
+ \def\etocclasslocallofmaketitle{\section*{\locallistfigurename}}
+ \def\etocclasslocallotmaketitle{\section*{\locallisttablename}}
+ \etocsettoclineforclasstoc {chapter}{\contentsname}
+ \etocsettoclineforclasslistof{toc}{section}{\localcontentsname}
+ \etocsettoclineforclasslistof{lof}{section}{\locallistfigurename}
+ \etocsettoclineforclasslistof{lot}{section}{\locallisttablename}
+\else
+ \def\etocclasslocaltocmaketitle{\subsection*{\localcontentsname}}%
+ \def\etocclasslocallofmaketitle{\subsection*{\locallistfigurename}}%
+ \def\etocclasslocallotmaketitle{\subsection*{\locallisttablename}}%
+ \etocsettoclineforclasstoc {section}{\contentsname}
+ \etocsettoclineforclasslistof{toc}{subsection}{\localcontentsname}
+ \etocsettoclineforclasslistof{lof}{subsection}{\locallistfigurename}
+ \etocsettoclineforclasslistof{lot}{subsection}{\locallisttablename}
+\fi
+\def\etocclasslocalperhapsaddtotoc #1{%
+ \etocifisstarred
+ {}
+ {\csname ifEtoc@local#1totoc\endcsname
+ \csname etocclasslocal#1addtotoc\endcsname
+ \fi
+ }%
+}
+\def\etocarticlestyle{%
+ \etocsettocstyle
+ {\ifEtoc@localtoc
+ \@nameuse{etocclasslocal\Etoc@currext maketitle}%
+ \etocclasslocalperhapsaddtotoc\Etoc@currext
+ \else
+ \section *{\contentsname
+ \@mkboth {\MakeUppercase \contentsname}
+ {\MakeUppercase \contentsname}}%
+ \etocifisstarred{}{\etocifmaintoctotoc{\etocclassmaintocaddtotoc}{}}%
+ \fi
+ }
+ {}%
+}
+\def\etocarticlestylenomarks{%
+ \etocsettocstyle
+ {\ifEtoc@localtoc
+ \@nameuse{etocclasslocal\Etoc@currext maketitle}%
+ \etocclasslocalperhapsaddtotoc\Etoc@currext
+ \else
+ \section *{\contentsname}%
+ \etocifisstarred{}{\etocifmaintoctotoc{\etocclassmaintocaddtotoc}{}}%
+ \fi
+ }
+ {}%
+}
+\def\etocbookstyle{%
+ \etocsettocstyle
+ {\if@twocolumn \@restonecoltrue \onecolumn \else \@restonecolfalse \fi
+ \ifEtoc@localtoc
+ \@nameuse{etocclasslocal\Etoc@currext maketitle}%
+ \etocclasslocalperhapsaddtotoc\Etoc@currext
+ \else
+ \chapter *{\contentsname
+ \@mkboth {\MakeUppercase \contentsname}
+ {\MakeUppercase \contentsname}}%
+ \etocifisstarred{}{\etocifmaintoctotoc{\etocclassmaintocaddtotoc}{}}%
+ \fi
+ }%
+ {\if@restonecol \twocolumn \fi}%
+}
+\def\etocbookstylenomarks{%
+ \etocsettocstyle
+ {\if@twocolumn \@restonecoltrue \onecolumn \else \@restonecolfalse \fi
+ \ifEtoc@localtoc
+ \@nameuse{etocclasslocal\Etoc@currext maketitle}%
+ \etocclasslocalperhapsaddtotoc\Etoc@currext
+ \else
+ \chapter *{\contentsname}%
+ \etocifisstarred{}{\etocifmaintoctotoc{\etocclassmaintocaddtotoc}{}}%
+ \fi
+ }%
+ {\if@restonecol \twocolumn \fi}%
+}
+\let\etocreportstyle\etocbookstyle
+\let\etocreportstylenomarks\etocbookstylenomarks
+\def\etocmemoirstyle{%
+ \etocsettocstyle
+ {\ensureonecol \par \begingroup \phantomsection
+ \ifx\Etoc@aftertitlehook\@empty
+ \else
+ \ifmem@em@starred@listof
+ \else
+ \ifEtoc@localtoc
+ \etocclasslocalperhapsaddtotoc\Etoc@currext
+ \else
+ \ifEtoc@maintoctotoc
+ \etocclassmaintocaddtotoc
+ \fi
+ \fi
+ \fi
+ \fi
+ \ifEtoc@localtoc
+ \@namedef{@\Etoc@currext maketitle}{%
+ \@nameuse{etocclasslocal\Etoc@currext maketitle}%
+ }%
+ \fi
+ \@nameuse {@\Etoc@currext maketitle} %<< space token here from memoir code
+ \ifx\Etoc@aftertitlehook\@empty
+ \else
+ \Etoc@aftertitlehook \let \Etoc@aftertitlehook \relax
+ \fi
+ \parskip \cftparskip \@nameuse {cft\Etoc@currext beforelisthook}%
+ }%
+ {\@nameuse {cft\Etoc@currext afterlisthook}%
+ \endgroup\restorefromonecol
+ }%
+}
+\let\Etoc@beforetitlehook\@empty
+\if1\@ifclassloaded{scrartcl}0{\@ifclassloaded{scrbook}0{\@ifclassloaded{scrreprt}01}}%
+\expandafter\@gobble
+\else
+ \ifdefined\setuptoc
+ \def\Etoc@beforetitlehook{%
+ \ifEtoc@localtoc
+ \etocclasslocalperhapsaddtotoc\Etoc@currext
+ \setuptoc{\Etoc@currext}{leveldown}%
+ \else
+ \etocifisstarred{}{\etocifmaintoctotoc{\setuptoc{toc}{totoc}}}%
+ \fi
+ }%
+ \fi
+\expandafter\@firstofone
+\fi
+{\def\etocclasslocalperhapsaddtotoc #1{%
+ \etocifisstarred
+ {}%
+ {\csname ifEtoc@local#1totoc\endcsname
+ \setuptoc{\Etoc@currext}{totoc}%
+ \fi
+ }%
+ }%
+}
+\ifdefined\Iftocfeature
+ \def\etoc@Iftocfeature{\Iftocfeature}%
+\else
+ \def\etoc@Iftocfeature{\iftocfeature}%
+\fi
+\def\etocscrartclstyle{%
+ \etocsettocstyle
+ {\ifx\Etoc@currext\Etoc@tocext
+ \expandafter\@firstofone
+ \else
+ \expandafter\@gobble
+ \fi
+ {\let\if@dynlist\if@tocleft}%
+ \edef\@currext{\Etoc@currext}%
+ \@ifundefined{listof\@currext name}%
+ {\def\list@fname{\listofname~\@currext}}%
+ {\expandafter\let\expandafter\list@fname
+ \csname listof\@currext name\endcsname}%
+ \etoc@Iftocfeature {\@currext}{onecolumn}
+ {\etoc@Iftocfeature {\@currext}{leveldown}
+ {}
+ {\if@twocolumn \aftergroup \twocolumn \onecolumn \fi }}
+ {}%
+ \etoc@Iftocfeature {\@currext}{numberline}%
+ {\def \nonumberline {\numberline {}}}{}%
+ \expandafter\tocbasic@listhead\expandafter {\list@fname}%
+ \begingroup \expandafter \expandafter \expandafter
+ \endgroup \expandafter
+ \ifx
+ \csname microtypesetup\endcsname \relax
+ \else
+ \etoc@Iftocfeature {\@currext}{noprotrusion}{}
+ {\microtypesetup {protrusion=false}%
+ \PackageInfo {tocbasic}%
+ {character protrusion at \@currext\space deactivated}}%
+ \fi
+ \etoc@Iftocfeature{\@currext}{noparskipfake}{}{%
+ \ifvmode \@tempskipa\lastskip \vskip-\lastskip
+ \addtolength{\@tempskipa}{\parskip}\vskip\@tempskipa\fi
+ }%
+ \setlength {\parskip }{\z@ }%
+ \setlength {\parindent }{\z@ }%
+ \setlength {\parfillskip }{\z@ \@plus 1fil}%
+ \csname tocbasic@@before@hook\endcsname
+ \csname tb@\@currext @before@hook\endcsname
+ }% end of before_toc
+ {% start of after_toc
+ \providecommand\tocbasic@end@toc@file{}\tocbasic@end@toc@file
+ \edef\@currext{\Etoc@currext}%
+ \csname tb@\@currext @after@hook\endcsname
+ \csname tocbasic@@after@hook\endcsname
+ }% end of after_toc
+}
+\let\etocscrbookstyle\etocscrartclstyle
+\let\etocscrreprtstyle\etocscrartclstyle
+\def\etocclasstocstyle{\etocarticlestyle}
+\newcommand*\etocmarkboth[1]{%
+ \@mkboth{\MakeUppercase{#1}}{\MakeUppercase{#1}}}
+\newcommand*\etocmarkbothnouc[1]{\@mkboth{#1}{#1}}
+\newcommand\etoctocstyle[3][section]{\etocmulticolstyle[#2]%
+ {\csname #1\endcsname *{#3}}}
+\newcommand\etoctocstylewithmarks[4][section]{\etocmulticolstyle[#2]%
+ {\csname #1\endcsname *{#3\etocmarkboth{#4}}}}
+\newcommand\etoctocstylewithmarksnouc[4][section]{\etocmulticolstyle[#2]%
+ {\csname #1\endcsname *{#3\etocmarkbothnouc{#4}}}}
+\def\Etoc@redefetocstylesforchapters{%
+ \renewcommand\etoctocstylewithmarks[4][chapter]{%
+ \etocmulticolstyle[##2]{\csname ##1\endcsname *{##3\etocmarkboth{##4}}}%
+ }
+ \renewcommand\etoctocstylewithmarksnouc[4][chapter]{%
+ \etocmulticolstyle[##2]{\csname ##1\endcsname *{##3\etocmarkbothnouc{##4}}}%
+ }
+ \renewcommand\etoctocstyle[3][chapter]{%
+ \etocmulticolstyle[##2]{\csname ##1\endcsname *{##3}}
+ }
+}
+\@ifclassloaded{scrartcl}
+ {\renewcommand*\etocclasstocstyle{\etocscrartclstyle}}{}
+\@ifclassloaded{book}
+ {\renewcommand*\etocfontone{\normalfont\normalsize}
+ \renewcommand*\etocclasstocstyle{\etocbookstyle}
+ \Etoc@redefetocstylesforchapters}{}
+\@ifclassloaded{report}
+ {\renewcommand*\etocfontone{\normalfont\normalsize}
+ \renewcommand*\etocclasstocstyle{\etocreportstyle}
+ \Etoc@redefetocstylesforchapters}{}
+\@ifclassloaded{scrbook}
+ {\renewcommand*\etocfontone{\normalfont\normalsize}
+ \renewcommand*\etocclasstocstyle{\etocscrbookstyle}
+ \Etoc@redefetocstylesforchapters}{}
+\@ifclassloaded{scrreprt}
+ {\renewcommand*\etocfontone{\normalfont\normalsize}
+ \renewcommand*\etocclasstocstyle{\etocscrreprtstyle}
+ \Etoc@redefetocstylesforchapters}{}
+\@ifclassloaded{memoir}
+ {\renewcommand*\etocfontone{\normalfont\normalsize}
+ \renewcommand*\etocclasstocstyle{\etocmemoirstyle}
+ \Etoc@redefetocstylesforchapters}{}
+\def\etoctocloftstyle {%
+ \etocsettocstyle{%
+ \@cfttocstart
+ \par
+ \begingroup
+ \parindent\z@ \parskip\cftparskip
+ \@nameuse{@cftmake\Etoc@currext title}%
+ \ifEtoc@localtoc
+ \etoctocloftlocalperhapsaddtotoc\Etoc@currext
+ \else
+ \etocifisstarred {}{\ifEtoc@maintoctotoc\@cftdobibtoc\fi}%
+ \fi
+ }%
+ {%
+ \endgroup
+ \@cfttocfinish
+ }%
+}
+\def\etoctocloftlocalperhapsaddtotoc#1{%
+ \etocifisstarred
+ {}%
+ {\csname ifEtoc@local#1totoc\endcsname
+ \ifdefined\c@chapter\def\@tocextra{@section}\else\def\@tocextra{@subsection}\fi
+ \csname @cftdobib#1\endcsname
+ \fi
+ }%
+}
+\def\etoctocbibindstyle {%
+ \etocsettocstyle {%
+ \toc@start
+ \ifEtoc@localtoc
+ \@nameuse{etocclasslocal\Etoc@currext maketitle}%
+ \etocclasslocalperhapsaddtotoc\Etoc@currext
+ \else
+ \etoc@tocbibind@dotoctitle
+ \fi
+ }%
+ {\toc@finish}%
+}
+\def\etoc@tocbibind@dotoctitle {%
+ \if@bibchapter
+ \etocifisstarred
+ {\chapter*{\contentsname}\prw@mkboth{\contentsname} % id.
+ }%
+ {\ifEtoc@maintoctotoc
+ \toc@chapter{\contentsname} %<-space from original
+ \else
+ \chapter*{\contentsname}\prw@mkboth{\contentsname} % id.
+ \fi
+ }%
+ \else
+ \etocifisstarred
+ {\@nameuse{\@tocextra}*{\contentsname\prw@mkboth{\contentsname}} %<-space
+ }
+ {\ifEtoc@maintoctotoc
+ \toc@section{\@tocextra}{\contentsname} %<-space from original
+ \else
+ \@nameuse{\@tocextra}*{\contentsname\prw@mkboth{\contentsname}} % id.
+ \fi
+ }%
+ \fi
+}%
+\@ifclassloaded{memoir}
+{}
+{% memoir not loaded
+ \@ifpackageloaded{tocloft}
+ {\if@cftnctoc\else
+ \ifEtoc@keeporiginaltoc
+ \else
+ \AtBeginDocument{\let\tableofcontents\etoctableofcontents}%
+ \fi
+ \fi }
+ {\AtBeginDocument
+ {\@ifpackageloaded{tocloft}
+ {\if@cftnctoc\else
+ \PackageWarningNoLine {etoc}
+ {Package `tocloft' was loaded after `etoc'.\MessageBreak
+ To prevent it from overwriting \protect\tableofcontents, it will\MessageBreak
+ be tricked into believing to have been loaded with its\MessageBreak
+ option `titles'. \space But this will cause the `tocloft'\MessageBreak
+ customization of the titles of the main list of figures\MessageBreak
+ and list of tables to not apply either.\MessageBreak
+ You should load `tocloft' before `etoc'.}%
+ \AtEndDocument{\PackageWarning{etoc}
+ {Please load `tocloft' before `etoc'!\@gobbletwo}}%
+ \fi
+ \@cftnctoctrue }%
+ {}%
+ }%
+ }%
+}
+\@ifclassloaded{memoir}
+{}
+{% memoir not loaded
+ \AtBeginDocument{%
+ \@ifpackageloaded{tocloft}
+ {%
+ \def\etocclasstocstyle{%
+ \etoctocloftstyle
+ \Etoc@classstyletrue
+ }%
+ \ifEtoc@etocstyle
+ \ifEtoc@classstyle
+ \etocclasstocstyle
+ \Etoc@etocstyletrue
+ \fi
+ \else
+ \ifEtoc@classstyle
+ \etocclasstocstyle
+ \fi
+ \fi
+ }%
+ {% no tocloft
+ \@ifpackageloaded {tocbibind}
+ {\if@dotoctoc
+ \def\etocclasstocstyle{%
+ \etoctocbibindstyle
+ \Etoc@classstyletrue
+ }%
+ \ifEtoc@etocstyle
+ \ifEtoc@classstyle
+ \etocclasstocstyle
+ \Etoc@etocstyletrue
+ \fi
+ \else
+ \ifEtoc@classstyle
+ \etocclasstocstyle
+ \fi
+ \fi
+ \ifEtoc@keeporiginaltoc
+ \else
+ \let\tableofcontents\etoctableofcontents
+ \fi
+ }%
+ {}%
+ }%
+ \@ifpackageloaded{tocbibind}
+ {% tocbibind, perhaps with tocloft
+ \if@dotoctoc
+ \ifEtoc@keeporiginaltoc
+ \else
+ \let\tableofcontents\etoctableofcontents
+ \fi
+ \etocsetup{maintoctotoc,localtoctotoc}%
+ \PackageInfo{etoc}{%
+ Setting (or re-setting) the options `maintoctotoc' and\MessageBreak
+ `localtoctotoc' to true as tocbibind was detected and\MessageBreak
+ found to be configured for `TOC to toc'.\MessageBreak
+ Reported at begin document}%
+ \fi
+ \if@dotoclof
+ \ifEtoc@lof
+ \etocsetup{localloftotoc}%
+ \PackageInfo{etoc}{%
+ Setting (or re-setting) `localloftotoc=true' as the\MessageBreak
+ package tocbibind was detected and is configured for\MessageBreak
+ `LOF to toc'. Reported at begin document}%
+ \fi
+ \fi
+ \if@dotoclot
+ \ifEtoc@lot
+ \etocsetup{locallottotoc}%
+ \PackageInfo{etoc}{%
+ Setting (or re-setting) `locallottotoc=true' as the\MessageBreak
+ package tocbibind was detected and is configured for\MessageBreak
+ `LOT to toc'. Reported at begin document}%
+ \fi
+ \fi
+ }% end of tocbibind branch
+ {}%
+ }% end of at begin document
+}% end of not with memoir branch
+\def\Etoc@addtocontents #1#2{%
+ \addtocontents {toc}{%
+ \protect\contentsline{#1}{#2}{\thepage}{\ifEtoc@hyperref\@currentHref\fi}%
+ \ifdefined\protected@file@percent\protected@file@percent\fi
+ }%
+}
+\def\Etoc@addcontentsline@ #1#2#3{%
+ \@namedef{toclevel@#1}{#3}\addcontentsline {toc}{#1}{#2}%
+}
+\DeclareRobustCommand*{\etoctoccontentsline}
+ {\@ifstar{\Etoc@addcontentsline@}{\Etoc@addtocontents}}
+\def\Etoc@addtocontents@immediately#1#2{%
+ \begingroup
+ \let\Etoc@originalwrite\write
+ \def\write{\immediate\Etoc@originalwrite}%
+ \Etoc@addtocontents{#1}{#2}%
+ \endgroup
+}
+\def\Etoc@addcontentsline@@immediately#1#2#3{%
+ \begingroup
+ \let\Etoc@originalwrite\write
+ \def\write{\immediate\Etoc@originalwrite}%
+ \Etoc@addcontentsline@{#1}{#2}{#3}%
+ \endgoroup
+}
+\DeclareRobustCommand*{\etocimmediatetoccontentsline}
+ {\@ifstar{\Etoc@addcontentsline@@immediately}{\Etoc@addtocontents@immediately}}
+\def\Etoc@storetocdepth {\xdef\Etoc@savedtocdepth{\number\c@tocdepth}}
+\def\Etoc@restoretocdepth {\global\c@tocdepth\Etoc@savedtocdepth\relax}
+\def\etocobeytoctocdepth {\def\etoc@settocdepth
+ {\afterassignment\Etoc@@nottoodeep \global\c@tocdepth}}
+\def\Etoc@@nottoodeep {\ifnum\Etoc@savedtocdepth<\c@tocdepth
+ \global\c@tocdepth\Etoc@savedtocdepth\relax\fi }
+\def\etocignoretoctocdepth {\let\etoc@settocdepth\@gobble }
+\def\etocsettocdepth {\futurelet\Etoc@nexttoken\Etoc@set@tocdepth }
+\def\Etoc@set@tocdepth {\ifx\Etoc@nexttoken\bgroup
+ \expandafter\Etoc@set@tocdepth@
+ \else\expandafter\Etoc@set@toctocdepth
+ \fi }
+\def\Etoc@set@tocdepth@ #1{\@ifundefined {Etoc@#1@@}
+ {\PackageWarning{etoc}
+ {Unknown sectioning unit #1, \protect\etocsettocdepth\space ignored}}
+ {\global\c@tocdepth\csname Etoc@#1@@\endcsname}%
+}
+\def\Etoc@set@toctocdepth #1#{\Etoc@set@toctocdepth@ }
+\def\Etoc@set@toctocdepth@ #1{%
+ \@ifundefined{Etoc@#1@@}%
+ {\PackageWarning{etoc}
+ {Unknown sectioning depth #1, \protect\etocsettocdepth.toc ignored}}%
+ {\addtocontents {toc}
+ {\protect\etoc@settocdepth\expandafter\protect\csname Etoc@#1@@\endcsname}}%
+}
+\def\etocimmediatesettocdepth #1#{\Etoc@set@toctocdepth@immediately}
+\def\Etoc@set@toctocdepth@immediately #1{%
+ \@ifundefined{Etoc@#1@@}%
+ {\PackageWarning{etoc}
+ {Unknown sectioning depth #1, \protect\etocimmediatesettocdepth.toc ignored}}%
+ {\begingroup
+ \let\Etoc@originalwrite\write
+ \def\write{\immediate\Etoc@originalwrite}%
+ \addtocontents {toc}
+ {\protect\etoc@settocdepth\expandafter\protect
+ \csname Etoc@#1@@\endcsname}%
+ \endgroup
+ }%
+}
+\def\etocdepthtag #1#{\Etoc@depthtag }
+\def\Etoc@depthtag #1{\addtocontents {toc}{\protect\etoc@depthtag {#1}}}
+\def\etocimmediatedepthtag #1#{\Etoc@depthtag@immediately }
+\def\Etoc@depthtag@immediately #1{%
+ \begingroup
+ \let\Etoc@originalwrite\write
+ \def\write{\immediate\Etoc@originalwrite}%
+ \addtocontents {toc}{\protect\etoc@depthtag {#1}}%
+ \endgroup
+}
+\def\etocignoredepthtags {\let\etoc@depthtag \@gobble }
+\def\etocobeydepthtags {\let\etoc@depthtag \Etoc@depthtag@ }
+\def\Etoc@depthtag@ #1{\@ifundefined{Etoc@depthof@#1}%
+ {}% ignore in silence if tag has no associated depth
+ {\afterassignment\Etoc@@nottoodeep
+ \global\c@tocdepth\csname Etoc@depthof@#1\endcsname}%
+}
+\def\etocsettagdepth #1#2{\@ifundefined{Etoc@#2@@}%
+ {\PackageWarning{etoc}
+ {Unknown sectioning depth #2, \protect\etocsettagdepth\space ignored}}%
+ {\@namedef{Etoc@depthof@#1}{\@nameuse{Etoc@#2@@}}}%
+}
+\def\Etoc@tocvsec@err #1{\PackageError {etoc}
+ {The command \protect#1\space is incompatible with `etoc'}
+ {Use \protect\etocsettocdepth.toc as replacement}%
+}%
+\AtBeginDocument {%
+ \@ifclassloaded{memoir}
+ {\PackageInfo {etoc}
+ {Regarding `memoir' class command \protect\settocdepth, consider\MessageBreak
+ \protect\etocsettocdepth.toc as a drop-in replacement with more\MessageBreak
+ capabilities (see `etoc' manual). \space
+ Also, \protect\etocsettocdepth\MessageBreak
+ and \protect\etocsetnexttocdepth\space should be used in place of\MessageBreak
+ `memoir' command \protect\maxtocdepth\@gobble}%
+ }%
+ {\@ifpackageloaded {tocvsec2}{%
+ \def\maxtocdepth #1{\Etoc@tocvsec@err \maxtocdepth }%
+ \def\settocdepth #1{\Etoc@tocvsec@err \settocdepth }%
+ \def\resettocdepth {\@ifstar {\Etoc@tocvsec@err \resettocdepth }%
+ {\Etoc@tocvsec@err \resettocdepth }%
+ }%
+ \def\save@tocdepth #1#2#3{}%
+ \let\reset@tocdepth\relax
+ \let\remax@tocdepth\relax
+ \let\tableofcontents\etoctableofcontents
+ \PackageWarningNoLine {etoc}
+ {Package `tocvsec2' detected and its modification of\MessageBreak
+ \protect\tableofcontents\space reverted. \space Use
+ \protect\etocsettocdepth.toc\MessageBreak as a replacement
+ for `tocvsec2' toc-related commands}%
+ }% tocvsec2 loaded
+ {}% tocvsec2 not loaded
+ }%
+}%
+\def\invisibletableofcontents {\etocsetnexttocdepth {-3}\tableofcontents }%
+\def\invisiblelocaltableofcontents
+ {\etocsetnexttocdepth {-3}\localtableofcontents }%
+\def\etocsetnexttocdepth #1{%
+ \@ifundefined{Etoc@#1@@}
+ {\PackageWarning{etoc}
+ {Unknown sectioning unit #1, \protect\etocsetnextocdepth\space ignored}}
+ {\Etoc@setnexttocdepth{\csname Etoc@#1@@\endcsname}}%
+}%
+\def\Etoc@setnexttocdepth#1{%
+ \def\Etoc@tocdepthset{%
+ \Etoc@tocdepthreset
+ \edef\Etoc@tocdepthreset {%
+ \global\c@tocdepth\the\c@tocdepth\space
+ \global\let\noexpand\Etoc@tocdepthreset\noexpand\@empty
+ }%
+ \global\c@tocdepth#1%
+ \global\let\Etoc@tocdepthset\@empty
+ }%
+}%
+\let\Etoc@tocdepthreset\@empty
+\let\Etoc@tocdepthset \@empty
+\def\etocsetlocaltop #1#{\Etoc@set@localtop}%
+\def\Etoc@set@localtop #1{%
+ \@ifundefined{Etoc@#1@@}%
+ {\PackageWarning{etoc}
+ {Unknown sectioning depth #1, \protect\etocsetlocaltop.toc ignored}}%
+ {\addtocontents {toc}
+ {\protect\etoc@setlocaltop\expandafter\protect\csname Etoc@#1@@\endcsname}}%
+}%
+\def\etocimmediatesetlocaltop #1#{\Etoc@set@localtop@immediately}%
+\def\Etoc@set@localtop@immediately #1{%
+ \@ifundefined{Etoc@#1@@}%
+ {\PackageWarning{etoc}
+ {Unknown sectioning depth #1, \protect\etocimmediatesetlocaltop.toc ignored}}%
+ {\begingroup
+ \let\Etoc@originalwrite\write
+ \def\write{\immediate\Etoc@originalwrite}%
+ \addtocontents {toc}
+ {\protect\etoc@setlocaltop\expandafter\protect
+ \csname Etoc@#1@@\endcsname}%
+ \endgroup
+ }%
+}%
+\def\etoc@setlocaltop #1{%
+ \ifnum#1=\Etoc@maxlevel
+ \Etoc@skipthisonetrue
+ \else
+ \Etoc@skipthisonefalse
+ \global\let\Etoc@level #1%
+ \global\let\Etoc@virtualtop #1%
+ \ifEtoc@localtoc
+ \ifEtoc@stoptoc
+ \Etoc@skipthisonetrue
+ \else
+ \ifEtoc@notactive
+ \Etoc@skipthisonetrue
+ \else
+ \unless\ifnum\Etoc@level>\etoclocaltop
+ \Etoc@skipthisonetrue
+ \global\Etoc@stoptoctrue
+ \fi
+ \fi
+ \fi
+ \fi
+ \fi
+ \let\Etoc@next\@empty
+ \ifEtoc@skipthisone
+ \else
+ \ifnum\Etoc@level>\c@tocdepth
+ \else
+ \ifEtoc@standardlines
+ \else
+ \let\Etoc@next\Etoc@setlocaltop@doendsandbegin
+ \fi
+ \fi
+ \fi
+ \Etoc@next
+}%
+\def\Etoc@setlocaltop@doendsandbegin{%
+ \Etoc@doendsandbegin
+ \global\Etoc@skipprefixfalse
+}
+\addtocontents {toc}{\protect\@ifundefined{etoctocstyle}%
+ {\let\protect\etoc@startlocaltoc\protect\@gobble
+ \let\protect\etoc@settocdepth\protect\@gobble
+ \let\protect\etoc@depthtag\protect\@gobble
+ \let\protect\etoc@setlocaltop\protect\@gobble}{}}%
+\def\etocstandardlines {\Etoc@standardlinestrue}
+\def\etoctoclines {\Etoc@standardlinesfalse}
+\etocdefaultlines
+\etocstandardlines
+\def\etocstandarddisplaystyle{%
+ \PackageWarningNoLine{etoc}{%
+ \string\etocstandarddisplaystyle \on@line\MessageBreak
+ is deprecated. \space Please use \string\etocclasstocstyle}%
+}
+\expandafter\def\expandafter\etocclasstocstyle\expandafter{%
+ \etocclasstocstyle
+ \Etoc@classstyletrue
+}
+\def\etocetoclocaltocstyle{\Etoc@etocstyletrue}
+\def\etocusertocstyle{\Etoc@etocstylefalse}
+\etocclasstocstyle
+\etocetoclocaltocstyle
+\etocobeytoctocdepth
+\etocobeydepthtags
+\let\etocbeforetitlehook \@empty
+\let\etocaftertitlehook \@empty
+\let\etocaftercontentshook \@empty
+\let\etocaftertochook \@empty
+\def\etockeeporiginaltableofcontents
+ {\Etoc@keeporiginaltoctrue\let\tableofcontents\etocoriginaltableofcontents}%
+\endinput
+%%
+%% End of file `etoc.sty'.
diff --git a/Docs~/latex/hierarchy.tex b/Docs~/latex/hierarchy.tex
new file mode 100644
index 00000000..96cca55f
--- /dev/null
+++ b/Docs~/latex/hierarchy.tex
@@ -0,0 +1,22 @@
+\doxysubsection{Class Hierarchy}
+This inheritance list is sorted roughly, but not completely, alphabetically\+:\begin{DoxyCompactList}
+\item \contentsline{section}{Asset}{\pageref{class_code_smile_editor_1_1_asset}}{}
+\item \contentsline{section}{Asset.\+Bundle}{\pageref{class_code_smile_editor_1_1_asset_1_1_bundle}}{}
+\item \contentsline{section}{Asset.\+Database}{\pageref{class_code_smile_editor_1_1_asset_1_1_database}}{}
+\item \contentsline{section}{Asset.\+Database.\+Cache\+Server}{\pageref{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server}}{}
+\item \contentsline{section}{Asset.\+Dependency}{\pageref{class_code_smile_editor_1_1_asset_1_1_dependency}}{}
+\item \contentsline{section}{Asset.\+File}{\pageref{class_code_smile_editor_1_1_asset_1_1_file}}{}
+\item \contentsline{section}{Asset.\+Importer}{\pageref{class_code_smile_editor_1_1_asset_1_1_importer}}{}
+\item \contentsline{section}{Asset.\+Label}{\pageref{class_code_smile_editor_1_1_asset_1_1_label}}{}
+\item \contentsline{section}{Asset.\+Package}{\pageref{class_code_smile_editor_1_1_asset_1_1_package}}{}
+\item \contentsline{section}{Asset.\+Status}{\pageref{class_code_smile_editor_1_1_asset_1_1_status}}{}
+\item \contentsline{section}{Asset.\+Sub\+Asset}{\pageref{class_code_smile_editor_1_1_asset_1_1_sub_asset}}{}
+\item \contentsline{section}{Asset.\+Version\+Control}{\pageref{class_code_smile_editor_1_1_asset_1_1_version_control}}{}
+\item IEquatable\begin{DoxyCompactList}
+\item \contentsline{section}{Asset.\+Path}{\pageref{class_code_smile_editor_1_1_asset_1_1_path}}{}
+\item \contentsline{section}{Asset.\+Path}{\pageref{class_code_smile_editor_1_1_asset_1_1_path}}{}
+\end{DoxyCompactList}
+\item Unity\+Exception\begin{DoxyCompactList}
+\item \contentsline{section}{Asset\+Load\+Exception}{\pageref{class_code_smile_editor_1_1_asset_load_exception}}{}
+\end{DoxyCompactList}
+\end{DoxyCompactList}
diff --git a/Docs~/latex/index.tex b/Docs~/latex/index.tex
new file mode 100644
index 00000000..eee1f57f
--- /dev/null
+++ b/Docs~/latex/index.tex
@@ -0,0 +1,122 @@
+\doxysection{Code\+Smile Asset\+Database}
+\hypertarget{index}{}\label{index}\index{CodeSmile AssetDatabase@{CodeSmile AssetDatabase}}
+\label{index_md__p_1_2de_8codesmile_8assetdatabase_2_r_e_a_d_m_e}%
+\Hypertarget{index_md__p_1_2de_8codesmile_8assetdatabase_2_r_e_a_d_m_e}%
+ It\textquotesingle{}s Unity\textquotesingle{}s age-\/old Asset\+Database -\/ in clean code form! It will make you smile. \+:)\hypertarget{index_who-needs-this}{}\doxysubsection{\texorpdfstring{Who needs this?}{Who needs this?}}\label{index_who-needs-this}
+I do! Actually, I WANTED it. \+:)
+
+I spent a great deal of time to make Asset\+Database tasks dead simple for a layperson.
+
+And anyone who doesn\textquotesingle{}t want to be bothered with how all of this assetcrapbase works and what all the edge-\/cases and side-\/effects could be, might be, and really just want to have this working and move on!\hypertarget{index_but--why}{}\doxysubsection{\texorpdfstring{But .. why?}{But .. why?}}\label{index_but--why}
+Unload your mind. Put yourself at ease.
+
+For every task there is a single call and you are DONE!
+
+The structure and naming is intended to be EXTREMELY simple to find your way around and then to call the appropriate method with fewer parameters, with names that speak for themselves.
+
+No longer do you need to wonder what a \textquotesingle{}valid folder\textquotesingle{} might be. Or ponder what it means to \textquotesingle{}force reserialize all assets\textquotesingle{}.
+
+Let alone the ubiquitous \textquotesingle{}Save\+All\+Assets\textquotesingle{} followed by \textquotesingle{}Refresh\textquotesingle{} -\/ are you calling that in your scripts? 99\% chance you just put it there out of habit. You never gave it any thought. You have no idea what it really does. Not even that it can cripple editor performance. Or when calling it is indeed {\bfseries{required}}. (Hint\+: almost never!)
+
+Or just being confused, once again, about whether you need to use {\ttfamily Asset\+Database.\+Get\+Text\+Meta\+File\+Path\+From\+Asset\+Path} or {\ttfamily Asset\+Database.\+Get\+Asset\+Path\+From\+Text\+Meta\+File\+Path}. Or the unholy trinity\+: {\ttfamily Asset\+Path.\+Asset\+Path\+To\+GUID}\texorpdfstring{$\sim$}{\string~}{\ttfamily Asset\+Path.\+GUIDFrom\+Asset\+Path}\texorpdfstring{$\sim$}{\string~}{\ttfamily Asset\+Path.\+GUIDTo\+Asset\+Path}.\hypertarget{index_example-code-snippets}{}\doxysubsection{\texorpdfstring{Example Code Snippets}{Example Code Snippets}}\label{index_example-code-snippets}
+{\ttfamily Asset data = "{}\+Assets/\+Folder/\+Data.\+asset"{};} // Load an asset from its path
+
+{\ttfamily data.\+Force\+Save();} // mark asset as dirty and save it
+
+{\ttfamily data.\+Add\+Sub\+Asset(sub\+Data);} // Add a sub-\/asset (implicitly saved)
+
+{\ttfamily data.\+Active\+Importer = typeof(\+My\+Data\+Importer);} // Change asset\textquotesingle{}s importer
+
+{\ttfamily var obj = Asset.\+File.\+Create(str, "{}\+Assets/\+Folder/\+Data.\+asset"{});} // Create (overwrite) asset from string
+
+{\ttfamily var obj = Asset.\+File.\+Create\+As\+New(bytes, "{}\+Assets/\+Folder/\+Data.\+asset"{});} // Create new asset from byte\mbox{[}\mbox{]}
+
+{\ttfamily var asset = new Asset(bytes, "{}\+Assets/\+Folder/\+Data.\+asset"{});} // Same as above using Asset ctor
+
+The \textquotesingle{}create\textquotesingle{} methods above cover EVERY ASPECT and edge-\/cases\+:
+\begin{DoxyItemize}
+\item Error checking (null arguments, path validation, ..)
+\item Create non-\/existing folders of the path
+\item Generate a unique filename (unless overwriting)
+\item Write the string/bytes to file
+\item Import the new asset file
+\item Load the new asset file
+\end{DoxyItemize}
+
+{\ttfamily var actual\+Path = asset.\+Asset\+Path;} // Filename might have changed, eg "{}\+Data (3).\+asset"{}
+
+{\ttfamily asset.\+Export\+Package("{}\+I\+:/leveldata.\+unitypackage"{});} // Export as .unitypackage
+
+{\ttfamily var obj = asset.\+Main\+Object;} // Get asset\textquotesingle{}s Unity\+Engine.\+Object instance
+
+{\ttfamily var level\+Data = asset.\+Get\+As\texorpdfstring{$<$}{<}Level\+Data\texorpdfstring{$>$}{>}();} // Get it as specific type (may be null)
+
+{\ttfamily var level\+Data = (Level\+Data)asset;} // Cast to a type (may throw)
+
+{\ttfamily var sub\+Assets = asset.\+Sub\+Assets;} // Do I need to keep explaining these calls?
+
+{\ttfamily var asset\+Dupe = asset.\+Duplicate();} // Because you need a duplicate ..
+
+{\ttfamily asset\+Dupe.\+Delete();} // .. but then decided you don\textquotesingle{}t.
+
+{\ttfamily var new\+Asset = asset.\+Save\+As\+New("{}\+Assets/\+Elsewhere/\+Daydah.\+asset"{});} // Now you want a copy?
+
+{\ttfamily new\+Asset.\+Trash();} // Okay. Either you\textquotesingle{}re bored or excited to work with the Asset\+Database for the first time EVER. \+:)
+
+{\ttfamily Asset.\+File.\+Batch\+Editing(() =\texorpdfstring{$>$}{>} \{ /\texorpdfstring{$\ast$}{*} mass file IO \texorpdfstring{$\ast$}{*}/ \});} // Speed up calling many Asset.\+File.\texorpdfstring{$\ast$}{*} methods (loop)
+
+{\ttfamily Asset.\+File.\+Import(paths);} // Mass import of paths, batched internally
+
+{\ttfamily var msg = Asset.\+Get\+Last\+Error\+Message();} // A file operation failed? Show this!\hypertarget{index_i-dont-trust-this-}{}\doxysubsection{\texorpdfstring{I don\textquotesingle{}t trust this ..}{I don\textquotesingle{}t trust this ..}}\label{index_i-dont-trust-this-}
+The implementation is utmost CORRECT -\/ there are no unnecessary, performance-\/degrading calls such as \textquotesingle{}Refresh\textquotesingle{} and \textquotesingle{}Save\+All\+Assets\textquotesingle{} littered throughout like you\textquotesingle{}ll find in most editor scripts -\/ unfortunately even in popular assets/libraries!
+
+It is also extensively unit TESTED to be correct.
+
+And I happen to love correct, clean code. Most developers move on when their code works. I cannot move on until I understand {\bfseries{why}} my code works.\hypertarget{index_what-about-support}{}\doxysubsection{\texorpdfstring{What about support?}{What about support?}}\label{index_what-about-support}
+\href{https://codesmile-0000011110110111.github.io/de.codesmile.assetdatabase/html/index.html}{\texttt{ The documentation}} is more complete with more details and caveats mentioned than Unity\textquotesingle{}s.
+
+And if there\textquotesingle{}s anything out of the ordinary, open an issue or \href{mailto:steffen@steffenitterheim.de}{\texttt{ contact me}}. I also have a \href{https://discord.gg/JN3Jz8qkeV}{\texttt{ Discord channel}}.\hypertarget{index_wheres-refresh}{}\doxysubsection{\texorpdfstring{Where\textquotesingle{}s Refresh?}{Where\textquotesingle{}s Refresh?}}\label{index_wheres-refresh}
+I did mention you don\textquotesingle{}t need it, right? ;)
+
+But if you do, here\textquotesingle{}s Waldo\+: {\ttfamily Asset.\+Database.\+Import\+All();}
+
+Caution\+: This is an expensive (!) database operation in that it scans the ENTIRE "{}\+Assets"{} tree and tests ALL (!) files for changes made EXTERNALLY (eg System.\+IO methods, bash scripts).
+
+Refresh also unloads all unused (cached) resources, forcing them to be reloaded from disk on the next use. You can imagine how this has a negative impact on editor performance.
+
+Since Refresh() has been excessively overused I decided to name it closer to what it actually does.\hypertarget{index_documentation}{}\doxysubsection{\texorpdfstring{Documentation}{Documentation}}\label{index_documentation}
+
+\begin{DoxyItemize}
+\item \href{https://codesmile-0000011110110111.github.io/de.codesmile.assetdatabase/html/index.html}{\texttt{ Scripting API Reference}}
+\item \href{https://docs.google.com/spreadsheets/d/134BEPXTx3z80snNAF3Gafgq3j5kEhmFzFBKT_z1s6Rw/edit?usp=sharing}{\texttt{ Transition Guide}} (Asset\+Database method mapping)
+\item \href{https://github.com/CodeSmile-0000011110110111/de.codesmile.assetdatabase/blob/main/CHANGELOG.md}{\texttt{ Changelog}}
+\end{DoxyItemize}\hypertarget{index_installation}{}\doxysubsection{\texorpdfstring{Installation}{Installation}}\label{index_installation}
+This software is a Unity Package Manager \textquotesingle{}npm package\textquotesingle{}.
+
+
+\begin{DoxyItemize}
+\item Open Window =\texorpdfstring{$>$}{>} Package Manager in Unity Editor
+\item Choose "{}\+Install package from git URL..."{}
+\item Enter this URL\+: {\ttfamily \href{https://github.com/CodeSmile-0000011110110111/de.codesmile.editor.assetdatabase.git}{\texttt{ https\+://github.\+com/\+Code\+Smile-\/0000011110110111/de.\+codesmile.\+editor.\+assetdatabase.\+git}}}
+\end{DoxyItemize}
+
+This package is currently not available on Open\+UPM.\hypertarget{index_requirements}{}\doxysubsection{\texorpdfstring{Requirements}{Requirements}}\label{index_requirements}
+
+\begin{DoxyItemize}
+\item Unity 2021.\+3.\+3f1 or newer (\texorpdfstring{$\ast$}{*})
+\item A smile \+:)
+\end{DoxyItemize}
+
+Sorry, I will not backport to 2020 or older due to extensive use of C\# 9 features.\hypertarget{index_gpl-license}{}\doxysubsection{\texorpdfstring{GPL License}{GPL License}}\label{index_gpl-license}
+This software is licensed under the GNU General Public License v3.\+0 (GPL 3.\+0). The main implication is that any work you publish that uses this software requires the entire work to be published as open source software under the same GPL 3.\+0 license.
+
+This software will also be available on the Unity Asset Store under the Asset Store EULA.
+
+If you wish to license this software under different terms, for example to create Asset Store tools, please contact me!
+
+
+\begin{DoxyItemize}
+\item Steffen aka Code\+Smile
+\item \href{mailto:steffen@steffenitterheim.de}{\texttt{ Email}} / \href{https://discord.gg/JN3Jz8qkeV}{\texttt{ Discord}}
+\end{DoxyItemize}\hypertarget{index_support--feeback}{}\doxysubsection{\texorpdfstring{Support \& Feeback}{Support \& Feeback}}\label{index_support--feeback}
+Very welcome! Please prefer to create an issue in the Git\+Hub repository, specifically if you encounter issues or to request a feature. Contact me directly (see above) for any other feedback and questions.
\ No newline at end of file
diff --git a/Docs~/latex/longtable_doxygen.sty b/Docs~/latex/longtable_doxygen.sty
new file mode 100644
index 00000000..e94b78b6
--- /dev/null
+++ b/Docs~/latex/longtable_doxygen.sty
@@ -0,0 +1,456 @@
+%%
+%% This is file `longtable.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% longtable.dtx (with options: `package')
+%%
+%% This is a generated file.
+%%
+%% The source is maintained by the LaTeX Project team and bug
+%% reports for it can be opened at http://latex-project.org/bugs.html
+%% (but please observe conditions on bug reports sent to that address!)
+%%
+%% Copyright 1993-2016
+%% The LaTeX3 Project and any individual authors listed elsewhere
+%% in this file.
+%%
+%% This file was generated from file(s) of the Standard LaTeX `Tools Bundle'.
+%% --------------------------------------------------------------------------
+%%
+%% It may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%%
+%% This file may only be distributed together with a copy of the LaTeX
+%% `Tools Bundle'. You may however distribute the LaTeX `Tools Bundle'
+%% without such generated files.
+%%
+%% The list of all files belonging to the LaTeX `Tools Bundle' is
+%% given in the file `manifest.txt'.
+%%
+%% File: longtable.dtx Copyright (C) 1990-2001 David Carlisle
+\NeedsTeXFormat{LaTeX2e}[1995/06/01]
+\ProvidesPackage{longtable_doxygen}
+ [2014/10/28 v4.11 Multi-page Table package (DPC) - frozen version for doxygen]
+\def\LT@err{\PackageError{longtable}}
+\def\LT@warn{\PackageWarning{longtable}}
+\def\LT@final@warn{%
+ \AtEndDocument{%
+ \LT@warn{Table \@width s have changed. Rerun LaTeX.\@gobbletwo}}%
+ \global\let\LT@final@warn\relax}
+\DeclareOption{errorshow}{%
+ \def\LT@warn{\PackageInfo{longtable}}}
+\DeclareOption{pausing}{%
+ \def\LT@warn#1{%
+ \LT@err{#1}{This is not really an error}}}
+\DeclareOption{set}{}
+\DeclareOption{final}{}
+\ProcessOptions
+\newskip\LTleft \LTleft=\fill
+\newskip\LTright \LTright=\fill
+\newskip\LTpre \LTpre=\bigskipamount
+\newskip\LTpost \LTpost=\bigskipamount
+\newcount\LTchunksize \LTchunksize=20
+\let\c@LTchunksize\LTchunksize
+\newdimen\LTcapwidth \LTcapwidth=4in
+\newbox\LT@head
+\newbox\LT@firsthead
+\newbox\LT@foot
+\newbox\LT@lastfoot
+\newcount\LT@cols
+\newcount\LT@rows
+\newcounter{LT@tables}
+\newcounter{LT@chunks}[LT@tables]
+\ifx\c@table\undefined
+ \newcounter{table}
+ \def\fnum@table{\tablename~\thetable}
+\fi
+\ifx\tablename\undefined
+ \def\tablename{Table}
+\fi
+\newtoks\LT@p@ftn
+\mathchardef\LT@end@pen=30000
+\def\longtable{%
+ \par
+ \ifx\multicols\@undefined
+ \else
+ \ifnum\col@number>\@ne
+ \@twocolumntrue
+ \fi
+ \fi
+ \if@twocolumn
+ \LT@err{longtable not in 1-column mode}\@ehc
+ \fi
+ \begingroup
+ \@ifnextchar[\LT@array{\LT@array[x]}}
+\def\LT@array[#1]#2{%
+ \refstepcounter{table}\stepcounter{LT@tables}%
+ \if l#1%
+ \LTleft\z@ \LTright\fill
+ \else\if r#1%
+ \LTleft\fill \LTright\z@
+ \else\if c#1%
+ \LTleft\fill \LTright\fill
+ \fi\fi\fi
+ \let\LT@mcol\multicolumn
+ \let\LT@@tabarray\@tabarray
+ \let\LT@@hl\hline
+ \def\@tabarray{%
+ \let\hline\LT@@hl
+ \LT@@tabarray}%
+ \let\\\LT@tabularcr\let\tabularnewline\\%
+ \def\newpage{\noalign{\break}}%
+ \def\pagebreak{\noalign{\ifnum`}=0\fi\@testopt{\LT@no@pgbk-}4}%
+ \def\nopagebreak{\noalign{\ifnum`}=0\fi\@testopt\LT@no@pgbk4}%
+ \let\hline\LT@hline \let\kill\LT@kill\let\caption\LT@caption
+ \@tempdima\ht\strutbox
+ \let\@endpbox\LT@endpbox
+ \ifx\extrarowheight\@undefined
+ \let\@acol\@tabacol
+ \let\@classz\@tabclassz \let\@classiv\@tabclassiv
+ \def\@startpbox{\vtop\LT@startpbox}%
+ \let\@@startpbox\@startpbox
+ \let\@@endpbox\@endpbox
+ \let\LT@LL@FM@cr\@tabularcr
+ \else
+ \advance\@tempdima\extrarowheight
+ \col@sep\tabcolsep
+ \let\@startpbox\LT@startpbox\let\LT@LL@FM@cr\@arraycr
+ \fi
+ \setbox\@arstrutbox\hbox{\vrule
+ \@height \arraystretch \@tempdima
+ \@depth \arraystretch \dp \strutbox
+ \@width \z@}%
+ \let\@sharp##\let\protect\relax
+ \begingroup
+ \@mkpream{#2}%
+ \xdef\LT@bchunk{%
+ \global\advance\c@LT@chunks\@ne
+ \global\LT@rows\z@\setbox\z@\vbox\bgroup
+ \LT@setprevdepth
+ \tabskip\LTleft \noexpand\halign to\hsize\bgroup
+ \tabskip\z@ \@arstrut \@preamble \tabskip\LTright \cr}%
+ \endgroup
+ \expandafter\LT@nofcols\LT@bchunk&\LT@nofcols
+ \LT@make@row
+ \m@th\let\par\@empty
+ \everycr{}\lineskip\z@\baselineskip\z@
+ \LT@bchunk}
+\def\LT@no@pgbk#1[#2]{\penalty #1\@getpen{#2}\ifnum`{=0\fi}}
+\def\LT@start{%
+ \let\LT@start\endgraf
+ \endgraf\penalty\z@\vskip\LTpre
+ \dimen@\pagetotal
+ \advance\dimen@ \ht\ifvoid\LT@firsthead\LT@head\else\LT@firsthead\fi
+ \advance\dimen@ \dp\ifvoid\LT@firsthead\LT@head\else\LT@firsthead\fi
+ \advance\dimen@ \ht\LT@foot
+ \dimen@ii\vfuzz
+ \vfuzz\maxdimen
+ \setbox\tw@\copy\z@
+ \setbox\tw@\vsplit\tw@ to \ht\@arstrutbox
+ \setbox\tw@\vbox{\unvbox\tw@}%
+ \vfuzz\dimen@ii
+ \advance\dimen@ \ht
+ \ifdim\ht\@arstrutbox>\ht\tw@\@arstrutbox\else\tw@\fi
+ \advance\dimen@\dp
+ \ifdim\dp\@arstrutbox>\dp\tw@\@arstrutbox\else\tw@\fi
+ \advance\dimen@ -\pagegoal
+ \ifdim \dimen@>\z@\vfil\break\fi
+ \global\@colroom\@colht
+ \ifvoid\LT@foot\else
+ \advance\vsize-\ht\LT@foot
+ \global\advance\@colroom-\ht\LT@foot
+ \dimen@\pagegoal\advance\dimen@-\ht\LT@foot\pagegoal\dimen@
+ \maxdepth\z@
+ \fi
+ \ifvoid\LT@firsthead\copy\LT@head\else\box\LT@firsthead\fi\nobreak
+ \output{\LT@output}}
+\def\endlongtable{%
+ \crcr
+ \noalign{%
+ \let\LT@entry\LT@entry@chop
+ \xdef\LT@save@row{\LT@save@row}}%
+ \LT@echunk
+ \LT@start
+ \unvbox\z@
+ \LT@get@widths
+ \if@filesw
+ {\let\LT@entry\LT@entry@write\immediate\write\@auxout{%
+ \gdef\expandafter\noexpand
+ \csname LT@\romannumeral\c@LT@tables\endcsname
+ {\LT@save@row}}}%
+ \fi
+ \ifx\LT@save@row\LT@@save@row
+ \else
+ \LT@warn{Column \@width s have changed\MessageBreak
+ in table \thetable}%
+ \LT@final@warn
+ \fi
+ \endgraf\penalty -\LT@end@pen
+ \endgroup
+ \global\@mparbottom\z@
+ \pagegoal\vsize
+ \endgraf\penalty\z@\addvspace\LTpost
+ \ifvoid\footins\else\insert\footins{}\fi}
+\def\LT@nofcols#1&{%
+ \futurelet\@let@token\LT@n@fcols}
+\def\LT@n@fcols{%
+ \advance\LT@cols\@ne
+ \ifx\@let@token\LT@nofcols
+ \expandafter\@gobble
+ \else
+ \expandafter\LT@nofcols
+ \fi}
+\def\LT@tabularcr{%
+ \relax\iffalse{\fi\ifnum0=`}\fi
+ \@ifstar
+ {\def\crcr{\LT@crcr\noalign{\nobreak}}\let\cr\crcr
+ \LT@t@bularcr}%
+ {\LT@t@bularcr}}
+\let\LT@crcr\crcr
+\let\LT@setprevdepth\relax
+\def\LT@t@bularcr{%
+ \global\advance\LT@rows\@ne
+ \ifnum\LT@rows=\LTchunksize
+ \gdef\LT@setprevdepth{%
+ \prevdepth\z@\global
+ \global\let\LT@setprevdepth\relax}%
+ \expandafter\LT@xtabularcr
+ \else
+ \ifnum0=`{}\fi
+ \expandafter\LT@LL@FM@cr
+ \fi}
+\def\LT@xtabularcr{%
+ \@ifnextchar[\LT@argtabularcr\LT@ntabularcr}
+\def\LT@ntabularcr{%
+ \ifnum0=`{}\fi
+ \LT@echunk
+ \LT@start
+ \unvbox\z@
+ \LT@get@widths
+ \LT@bchunk}
+\def\LT@argtabularcr[#1]{%
+ \ifnum0=`{}\fi
+ \ifdim #1>\z@
+ \unskip\@xargarraycr{#1}%
+ \else
+ \@yargarraycr{#1}%
+ \fi
+ \LT@echunk
+ \LT@start
+ \unvbox\z@
+ \LT@get@widths
+ \LT@bchunk}
+\def\LT@echunk{%
+ \crcr\LT@save@row\cr\egroup
+ \global\setbox\@ne\lastbox
+ \unskip
+ \egroup}
+\def\LT@entry#1#2{%
+ \ifhmode\@firstofone{&}\fi\omit
+ \ifnum#1=\c@LT@chunks
+ \else
+ \kern#2\relax
+ \fi}
+\def\LT@entry@chop#1#2{%
+ \noexpand\LT@entry
+ {\ifnum#1>\c@LT@chunks
+ 1}{0pt%
+ \else
+ #1}{#2%
+ \fi}}
+\def\LT@entry@write{%
+ \noexpand\LT@entry^^J%
+ \@spaces}
+\def\LT@kill{%
+ \LT@echunk
+ \LT@get@widths
+ \expandafter\LT@rebox\LT@bchunk}
+\def\LT@rebox#1\bgroup{%
+ #1\bgroup
+ \unvbox\z@
+ \unskip
+ \setbox\z@\lastbox}
+\def\LT@blank@row{%
+ \xdef\LT@save@row{\expandafter\LT@build@blank
+ \romannumeral\number\LT@cols 001 }}
+\def\LT@build@blank#1{%
+ \if#1m%
+ \noexpand\LT@entry{1}{0pt}%
+ \expandafter\LT@build@blank
+ \fi}
+\def\LT@make@row{%
+ \global\expandafter\let\expandafter\LT@save@row
+ \csname LT@\romannumeral\c@LT@tables\endcsname
+ \ifx\LT@save@row\relax
+ \LT@blank@row
+ \else
+ {\let\LT@entry\or
+ \if!%
+ \ifcase\expandafter\expandafter\expandafter\LT@cols
+ \expandafter\@gobble\LT@save@row
+ \or
+ \else
+ \relax
+ \fi
+ !%
+ \else
+ \aftergroup\LT@blank@row
+ \fi}%
+ \fi}
+\let\setlongtables\relax
+\def\LT@get@widths{%
+ \setbox\tw@\hbox{%
+ \unhbox\@ne
+ \let\LT@old@row\LT@save@row
+ \global\let\LT@save@row\@empty
+ \count@\LT@cols
+ \loop
+ \unskip
+ \setbox\tw@\lastbox
+ \ifhbox\tw@
+ \LT@def@row
+ \advance\count@\m@ne
+ \repeat}%
+ \ifx\LT@@save@row\@undefined
+ \let\LT@@save@row\LT@save@row
+ \fi}
+\def\LT@def@row{%
+ \let\LT@entry\or
+ \edef\@tempa{%
+ \ifcase\expandafter\count@\LT@old@row
+ \else
+ {1}{0pt}%
+ \fi}%
+ \let\LT@entry\relax
+ \xdef\LT@save@row{%
+ \LT@entry
+ \expandafter\LT@max@sel\@tempa
+ \LT@save@row}}
+\def\LT@max@sel#1#2{%
+ {\ifdim#2=\wd\tw@
+ #1%
+ \else
+ \number\c@LT@chunks
+ \fi}%
+ {\the\wd\tw@}}
+\def\LT@hline{%
+ \noalign{\ifnum0=`}\fi
+ \penalty\@M
+ \futurelet\@let@token\LT@@hline}
+\def\LT@@hline{%
+ \ifx\@let@token\hline
+ \global\let\@gtempa\@gobble
+ \gdef\LT@sep{\penalty-\@medpenalty\vskip\doublerulesep}%
+ \else
+ \global\let\@gtempa\@empty
+ \gdef\LT@sep{\penalty-\@lowpenalty\vskip-\arrayrulewidth}%
+ \fi
+ \ifnum0=`{\fi}%
+ \multispan\LT@cols
+ \unskip\leaders\hrule\@height\arrayrulewidth\hfill\cr
+ \noalign{\LT@sep}%
+ \multispan\LT@cols
+ \unskip\leaders\hrule\@height\arrayrulewidth\hfill\cr
+ \noalign{\penalty\@M}%
+ \@gtempa}
+\def\LT@caption{%
+ \noalign\bgroup
+ \@ifnextchar[{\egroup\LT@c@ption\@firstofone}\LT@capti@n}
+\def\LT@c@ption#1[#2]#3{%
+ \LT@makecaption#1\fnum@table{#3}%
+ \def\@tempa{#2}%
+ \ifx\@tempa\@empty\else
+ {\let\\\space
+ \addcontentsline{lot}{table}{\protect\numberline{\thetable}{#2}}}%
+ \fi}
+\def\LT@capti@n{%
+ \@ifstar
+ {\egroup\LT@c@ption\@gobble[]}%
+ {\egroup\@xdblarg{\LT@c@ption\@firstofone}}}
+\def\LT@makecaption#1#2#3{%
+ \LT@mcol\LT@cols c{\hbox to\z@{\hss\parbox[t]\LTcapwidth{%
+ \sbox\@tempboxa{#1{#2: }#3}%
+ \ifdim\wd\@tempboxa>\hsize
+ #1{#2: }#3%
+ \else
+ \hbox to\hsize{\hfil\box\@tempboxa\hfil}%
+ \fi
+ \endgraf\vskip\baselineskip}%
+ \hss}}}
+\def\LT@output{%
+ \ifnum\outputpenalty <-\@Mi
+ \ifnum\outputpenalty > -\LT@end@pen
+ \LT@err{floats and marginpars not allowed in a longtable}\@ehc
+ \else
+ \setbox\z@\vbox{\unvbox\@cclv}%
+ \ifdim \ht\LT@lastfoot>\ht\LT@foot
+ \dimen@\pagegoal
+ \advance\dimen@-\ht\LT@lastfoot
+ \ifdim\dimen@<\ht\z@
+ \setbox\@cclv\vbox{\unvbox\z@\copy\LT@foot\vss}%
+ \@makecol
+ \@outputpage
+ \setbox\z@\vbox{\box\LT@head}%
+ \fi
+ \fi
+ \global\@colroom\@colht
+ \global\vsize\@colht
+ \vbox
+ {\unvbox\z@\box\ifvoid\LT@lastfoot\LT@foot\else\LT@lastfoot\fi}%
+ \fi
+ \else
+ \setbox\@cclv\vbox{\unvbox\@cclv\copy\LT@foot\vss}%
+ \@makecol
+ \@outputpage
+ \global\vsize\@colroom
+ \copy\LT@head\nobreak
+ \fi}
+\def\LT@end@hd@ft#1{%
+ \LT@echunk
+ \ifx\LT@start\endgraf
+ \LT@err
+ {Longtable head or foot not at start of table}%
+ {Increase LTchunksize}%
+ \fi
+ \setbox#1\box\z@
+ \LT@get@widths
+ \LT@bchunk}
+\def\endfirsthead{\LT@end@hd@ft\LT@firsthead}
+\def\endhead{\LT@end@hd@ft\LT@head}
+\def\endfoot{\LT@end@hd@ft\LT@foot}
+\def\endlastfoot{\LT@end@hd@ft\LT@lastfoot}
+\def\LT@startpbox#1{%
+ \bgroup
+ \let\@footnotetext\LT@p@ftntext
+ \setlength\hsize{#1}%
+ \@arrayparboxrestore
+ \vrule \@height \ht\@arstrutbox \@width \z@}
+\def\LT@endpbox{%
+ \@finalstrut\@arstrutbox
+ \egroup
+ \the\LT@p@ftn
+ \global\LT@p@ftn{}%
+ \hfil}
+%% added \long to prevent:
+% LaTeX Warning: Command \LT@p@ftntext has changed.
+%
+% from the original repository (https://github.com/latex3/latex2e/blob/develop/required/tools/longtable.dtx):
+% \changes{v4.15}{2021/03/28}
+% {make long for gh/364}
+% Inside the `p' column, just save up the footnote text in a token
+% register.
+\long\def\LT@p@ftntext#1{%
+ \edef\@tempa{\the\LT@p@ftn\noexpand\footnotetext[\the\c@footnote]}%
+ \global\LT@p@ftn\expandafter{\@tempa{#1}}}%
+
+\@namedef{ver@longtable.sty}{2014/10/28 v4.11 Multi-page Table package (DPC) - frozen version for doxygen}
+\endinput
+%%
+%% End of file `longtable.sty'.
diff --git a/Docs~/latex/make.bat b/Docs~/latex/make.bat
new file mode 100644
index 00000000..96da1c8b
--- /dev/null
+++ b/Docs~/latex/make.bat
@@ -0,0 +1,56 @@
+pushd %~dp0
+if not %errorlevel% == 0 goto :end
+
+set ORG_LATEX_CMD=%LATEX_CMD%
+set ORG_MKIDX_CMD=%MKIDX_CMD%
+set ORG_BIBTEX_CMD=%BIBTEX_CMD%
+set ORG_LATEX_COUNT=%LATEX_COUNT%
+set ORG_MANUAL_FILE=%MANUAL_FILE%
+if "X"%LATEX_CMD% == "X" set LATEX_CMD=pdflatex
+if "X"%MKIDX_CMD% == "X" set MKIDX_CMD=makeindex
+if "X"%BIBTEX_CMD% == "X" set BIBTEX_CMD=bibtex
+if "X"%LATEX_COUNT% == "X" set LATEX_COUNT=8
+if "X"%MANUAL_FILE% == "X" set MANUAL_FILE=refman
+
+del /s /f *.ps *.dvi *.aux *.toc *.idx *.ind *.ilg *.log *.out *.brf *.blg *.bbl %MANUAL_FILE%.pdf
+
+
+%LATEX_CMD% %MANUAL_FILE%
+echo ----
+%MKIDX_CMD% %MANUAL_FILE%.idx
+echo ----
+%LATEX_CMD% %MANUAL_FILE%
+
+setlocal enabledelayedexpansion
+set count=%LATEX_COUNT%
+:repeat
+set content=X
+for /F "tokens=*" %%T in ( 'findstr /C:"Rerun LaTeX" %MANUAL_FILE%.log' ) do set content="%%~T"
+if !content! == X for /F "tokens=*" %%T in ( 'findstr /C:"Rerun to get cross-references right" %MANUAL_FILE%.log' ) do set content="%%~T"
+if !content! == X for /F "tokens=*" %%T in ( 'findstr /C:"Rerun to get bibliographical references right" %MANUAL_FILE%.log' ) do set content="%%~T"
+if !content! == X goto :skip
+set /a count-=1
+if !count! EQU 0 goto :skip
+
+echo ----
+%LATEX_CMD% %MANUAL_FILE%
+goto :repeat
+:skip
+endlocal
+%MKIDX_CMD% %MANUAL_FILE%.idx
+%LATEX_CMD% %MANUAL_FILE%
+
+@REM reset environment
+popd
+set LATEX_CMD=%ORG_LATEX_CMD%
+set ORG_LATEX_CMD=
+set MKIDX_CMD=%ORG_MKIDX_CMD%
+set ORG_MKIDX_CMD=
+set BIBTEX_CMD=%ORG_BIBTEX_CMD%
+set ORG_BIBTEX_CMD=
+set MANUAL_FILE=%ORG_MANUAL_FILE%
+set ORG_MANUAL_FILE=
+set LATEX_COUNT=%ORG_LATEX_COUNT%
+set ORG_LATEX_COUNT=
+
+:end
diff --git a/Docs~/latex/md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.tex b/Docs~/latex/md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.tex
new file mode 100644
index 00000000..f02c99d8
--- /dev/null
+++ b/Docs~/latex/md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.tex
@@ -0,0 +1,117 @@
+\doxysection{Change Log}
+\hypertarget{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g}{}\label{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g}\index{Change Log@{Change Log}}
+\label{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_change-log}%
+\Hypertarget{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_change-log}%
+ \hypertarget{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v183---jan-22-2024}{}\doxyparagraph{\texorpdfstring{v1.\+8.\+3 -\/ Jan 22, 2024}{v1.\+8.\+3 -\/ Jan 22, 2024}}\label{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v183---jan-22-2024}
+
+\begin{DoxyItemize}
+\item Importer tests\+: disable some tests in 2021.\+3 because the method is not available
+\item Rename test\+: log warning in 2021.\+3 to mention that the following warning is expected
+\end{DoxyItemize}\hypertarget{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v182---dec-26-2023}{}\doxyparagraph{\texorpdfstring{v1.\+8.\+2 -\/ Dec 26, 2023}{v1.\+8.\+2 -\/ Dec 26, 2023}}\label{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v182---dec-26-2023}
+
+\begin{DoxyItemize}
+\item updated README and API docs
+\item removed extra call to Import\+If\+Not\+Imported in method chain
+\end{DoxyItemize}\hypertarget{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v181---dec-21-2023}{}\doxyparagraph{\texorpdfstring{v1.\+8.\+1 -\/ Dec 21, 2023}{v1.\+8.\+1 -\/ Dec 21, 2023}}\label{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v181---dec-21-2023}
+
+\begin{DoxyItemize}
+\item added Available\+Importers property
+\item added missing Asset.\+Importer, Asset.\+Path and Asset.\+File.\+Create tests
+\end{DoxyItemize}\hypertarget{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v180---dec-09-2023}{}\doxyparagraph{\texorpdfstring{v1.\+8.\+0 -\/ Dec 09, 2023}{v1.\+8.\+0 -\/ Dec 09, 2023}}\label{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v180---dec-09-2023}
+
+\begin{DoxyItemize}
+\item renamed Force\+Reserialize\+Assets to Upgrade\+Asset\+Serialization\+Version and
+\item renamed Force\+Reserialize\+All\+Assets to Upgrade\+All\+Asset\+Serialization\+Versions (\texorpdfstring{$\ast$}{*})
+\end{DoxyItemize}
+
+(\texorpdfstring{$\ast$}{*}) To provide more rationale\+: I saw a user\textquotesingle{}s script where the user helplessly threw in the usual candidates due to some issue, but this also included "{}\+Force\+Reserialize\+Assets"{} That\textquotesingle{}s when I realized the name of the method only describes what it does internally but not its intent respectively what it should be used for\+: upgrading the version of serialized assets.\hypertarget{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v171---dec-05-2023}{}\doxyparagraph{\texorpdfstring{v1.\+7.\+1 -\/ Dec 05, 2023}{v1.\+7.\+1 -\/ Dec 05, 2023}}\label{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v171---dec-05-2023}
+
+\begin{DoxyItemize}
+\item rename package to de.\+codesmile.\+assetdabase (removed the \textquotesingle{}editor\textquotesingle{} part)
+\item Asset.\+File.\+Delete avoids unnecessary warning message from Unity if path.\+Exists is false
+\end{DoxyItemize}\hypertarget{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v170---dec-03-2023}{}\doxyparagraph{\texorpdfstring{v1.\+7.\+0 -\/ Dec 03, 2023}{v1.\+7.\+0 -\/ Dec 03, 2023}}\label{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v170---dec-03-2023}
+
+\begin{DoxyItemize}
+\item Import() throws if file does not exist
+\item added setter to Active\+Importer property
+\item removed Set\+Active\+Importer\+To\+Default and Set\+Active\+Importer methods
+\item added \mbox{[}Not\+Null\mbox{]} attributes
+\item code cleanup
+\end{DoxyItemize}\hypertarget{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v160---nov-30-2023}{}\doxyparagraph{\texorpdfstring{v1.\+6.\+0 -\/ Nov 30, 2023}{v1.\+6.\+0 -\/ Nov 30, 2023}}\label{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v160---nov-30-2023}
+
+\begin{DoxyItemize}
+\item changed namespace from Code\+Smile.\+Editor.\texorpdfstring{$\ast$}{*} to \doxylink{namespace_code_smile_editor}{Code\+Smile\+Editor}.\texorpdfstring{$\ast$}{*}
+\item new Asset(\+Path) now auto-\/imports assets that exist on disk but not in DB
+\item changed load methods to import assets that exist on disk but not in DB
+\item added create asset from string (ctor and Asset.\+Create)
+\item added create asset from byte\mbox{[}\mbox{]} (ctor and Asset.\+Create)
+\item added Import\+And\+Load$<$\+T$>$
+\item added Import(\+Path\mbox{[}$\,$\mbox{]}) to batch-\/import multiple assets
+\item added Is\+Imported(\+Path)
+\item added setter to Directory\+Monitoring
+\item added Database.\+Contains back and redirected Status.\+Is\+Imported (same)
+\item added paths to all important subfolders (eg Packages, Library, ..)
+\item split Create into Create and Create\+As\+New
+\item split Copy into Copy and Copy\+As\+New
+\item renamed Copy instance method to Save\+As and Save\+As\+New
+\item renamed Failed\+To\+Delete\+Paths to Paths\+Not\+Deleted
+\item renamed To\+Asset\+Paths(\+Object\mbox{[}$\,$\mbox{]}) to Get(\+Object\mbox{[}$\,$\mbox{]})
+\item fixed compile errors in some Unity versions
+\item Get\+Icon returns Texture2D
+\end{DoxyItemize}\hypertarget{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v141---nov-24-2023}{}\doxyparagraph{\texorpdfstring{v1.\+4.\+1 -\/ Nov 24, 2023}{v1.\+4.\+1 -\/ Nov 24, 2023}}\label{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v141---nov-24-2023}
+
+\begin{DoxyItemize}
+\item added static Get\+Main\+Type(guid)
+\end{DoxyItemize}\hypertarget{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v140---nov-24-2023}{}\doxyparagraph{\texorpdfstring{v1.\+4.\+0 -\/ Nov 24, 2023}{v1.\+4.\+0 -\/ Nov 24, 2023}}\label{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v140---nov-24-2023}
+
+\begin{DoxyItemize}
+\item added static Get\+Sub\+Type
+\item renamed Status Is\+Foreign\+Asset to Is\+Foreign
+\item renamed Status Is\+Native\+Asset to Is\+Native
+\item renamed Database Directory\+Monitoring\+Enabled to Directory\+Monitoring
+\item renamed Dependency Set to Register
+\item renamed Dependency Remove to Unregister
+\item renamed Importer Save\+Settings to Apply\+Settings
+\item renamed Path Open\+Folder to Open\+External
+\item renamed Path Uniquify\+Filename to Uniquify\+File\+Name (camel case)
+\item removed various Exclude\+From\+Code\+Coverage attributes, added comment with reason to the remaining ones
+\end{DoxyItemize}\hypertarget{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v131---nov-24-2023}{}\doxyparagraph{\texorpdfstring{v1.\+3.\+1 -\/ Nov 24, 2023}{v1.\+3.\+1 -\/ Nov 24, 2023}}\label{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v131---nov-24-2023}
+
+\begin{DoxyItemize}
+\item added several \textquotesingle{}Object\textquotesingle{} getters to methods with only \textquotesingle{}Path\textquotesingle{} parameters
+\item added static Get\+Guid method
+\item added static Get\+Guid\+And\+File\+Id method
+\end{DoxyItemize}\hypertarget{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v130---nov-23-2023}{}\doxyparagraph{\texorpdfstring{v1.\+3.\+0 -\/ Nov 23, 2023}{v1.\+3.\+0 -\/ Nov 23, 2023}}\label{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v130---nov-23-2023}
+
+\begin{DoxyItemize}
+\item Fixed all technical documentation issues.
+\item Create\+Folders now internalized the assumption that the last part of a path, if it contains no extension, is also a folder.
+\item Removed Folder\+Path\+Assumptive
+\item Folder\+Path does not throw but returns null if called on a root folder path ie "{}\+Assets"{}.
+\end{DoxyItemize}\hypertarget{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v121---nov-22-2023}{}\doxyparagraph{\texorpdfstring{v1.\+2.\+1 -\/ Nov 22, 2023}{v1.\+2.\+1 -\/ Nov 22, 2023}}\label{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v121---nov-22-2023}
+
+\begin{DoxyItemize}
+\item Fixed compile error in Unity 2021.\+3.
+\item Tested in all minor Unity versions from 2021.\+3 through 2023.\+3.
+\end{DoxyItemize}\hypertarget{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v120---nov-22-2023}{}\doxyparagraph{\texorpdfstring{v1.\+2.\+0 -\/ Nov 22, 2023}{v1.\+2.\+0 -\/ Nov 22, 2023}}\label{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v120---nov-22-2023}
+
+\begin{DoxyItemize}
+\item First release that\textquotesingle{}s nearly complete. Redesign for 99\% of all Asset\+Database methods.
+\item Major refactoring of API Design.
+\end{DoxyItemize}\hypertarget{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v114---nov-13-2023}{}\doxyparagraph{\texorpdfstring{v1.\+1.\+4 -\/ Nov 13, 2023}{v1.\+1.\+4 -\/ Nov 13, 2023}}\label{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v114---nov-13-2023}
+
+\begin{DoxyItemize}
+\item Fixed a compile error in Unity 2021.\+3.
+\end{DoxyItemize}\hypertarget{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v113---nov-12-2023}{}\doxyparagraph{\texorpdfstring{v1.\+1.\+3 -\/ Nov 12, 2023}{v1.\+1.\+3 -\/ Nov 12, 2023}}\label{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v113---nov-12-2023}
+
+\begin{DoxyItemize}
+\item Documentation added and updated.
+\end{DoxyItemize}\hypertarget{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v110---nov-10-2023}{}\doxyparagraph{\texorpdfstring{v1.\+1.\+0 -\/ Nov 10, 2023}{v1.\+1.\+0 -\/ Nov 10, 2023}}\label{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v110---nov-10-2023}
+
+\begin{DoxyItemize}
+\item Mainly refactoring.
+\end{DoxyItemize}\hypertarget{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v100---nov-9-2023}{}\doxyparagraph{\texorpdfstring{v1.\+0.\+0 -\/ Nov 9, 2023}{v1.\+0.\+0 -\/ Nov 9, 2023}}\label{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v100---nov-9-2023}
+
+\begin{DoxyItemize}
+\item First release
+\end{DoxyItemize}
\ No newline at end of file
diff --git a/Docs~/latex/md__p_1_2de_8codesmile_8assetdatabase_2_g_e_t_t_i_n_g_01_s_t_a_r_t_e_d.tex b/Docs~/latex/md__p_1_2de_8codesmile_8assetdatabase_2_g_e_t_t_i_n_g_01_s_t_a_r_t_e_d.tex
new file mode 100644
index 00000000..08a38198
--- /dev/null
+++ b/Docs~/latex/md__p_1_2de_8codesmile_8assetdatabase_2_g_e_t_t_i_n_g_01_s_t_a_r_t_e_d.tex
@@ -0,0 +1,21 @@
+\doxysection{Code\+Smile Packages -\/ Getting Started}
+\hypertarget{md__p_1_2de_8codesmile_8assetdatabase_2_g_e_t_t_i_n_g_01_s_t_a_r_t_e_d}{}\label{md__p_1_2de_8codesmile_8assetdatabase_2_g_e_t_t_i_n_g_01_s_t_a_r_t_e_d}\index{CodeSmile Packages -\/ Getting Started@{CodeSmile Packages -\/ Getting Started}}
+\label{md__p_1_2de_8codesmile_8assetdatabase_2_g_e_t_t_i_n_g_01_s_t_a_r_t_e_d_codesmile-packages---getting-started}%
+\Hypertarget{md__p_1_2de_8codesmile_8assetdatabase_2_g_e_t_t_i_n_g_01_s_t_a_r_t_e_d_codesmile-packages---getting-started}%
+ Orientation mainly for Asset Store customers since there is nothing under \textquotesingle{}Assets\textquotesingle{} after installation because everything is in \textquotesingle{}proper\textquotesingle{} npm packages.
+
+Check the Menu for available functionality\+:
+\begin{DoxyItemize}
+\item Window =\texorpdfstring{$>$}{>} Code\+Smile =\texorpdfstring{$>$}{>} ..
+\end{DoxyItemize}
+
+Run the Tests to confirm that everything is alright\+:
+\begin{DoxyItemize}
+\item Window =\texorpdfstring{$>$}{>} General =\texorpdfstring{$>$}{>} Test Runner -\/\texorpdfstring{$>$}{>} (Edit\+Mode) -\/\texorpdfstring{$>$}{>} select Code\+Smile\texorpdfstring{$\ast$}{*} -\/\texorpdfstring{$>$}{>} (Run Selected)
+\end{DoxyItemize}
+
+Locate the Packages (README, scripts, etc)\+:
+\begin{DoxyItemize}
+\item Project view\+: {\ttfamily Packages/\+Code\+Smile \texorpdfstring{$\ast$}{*}}
+\item File system\+: {\ttfamily \texorpdfstring{$<$}{<}path-\/to-\/project\texorpdfstring{$>$}{>}/\+Packages/de.codesmile.\texorpdfstring{$\ast$}{*}}
+\end{DoxyItemize}
\ No newline at end of file
diff --git a/Docs~/latex/namespace_code_smile_editor.tex b/Docs~/latex/namespace_code_smile_editor.tex
new file mode 100644
index 00000000..3dc6a162
--- /dev/null
+++ b/Docs~/latex/namespace_code_smile_editor.tex
@@ -0,0 +1,11 @@
+\doxysubsection{Code\+Smile\+Editor Namespace Reference}
+\hypertarget{namespace_code_smile_editor}{}\label{namespace_code_smile_editor}\index{CodeSmileEditor@{CodeSmileEditor}}
+\doxysubsubsubsection*{Classes}
+\begin{DoxyCompactItemize}
+\item
+class \mbox{\hyperlink{class_code_smile_editor_1_1_asset}{Asset}}
+\begin{DoxyCompactList}\small\item\em Replacement implementation for Unity\textquotesingle{}s {\itshape massive} Asset\+Database class with a cleaner interface and more error checking. Asset is instantiable so you can work with assets like you do with Unity\+Engine.\+Object. In fact, Asset is essentially a wrapper around the asset\textquotesingle{}s Unity\+Engine.\+Object (see\+: Main\+Object). \end{DoxyCompactList}\item
+class \mbox{\hyperlink{class_code_smile_editor_1_1_asset_load_exception}{Asset\+Load\+Exception}}
+\begin{DoxyCompactList}\small\item\em Thrown in cases where loading an existing asset fails. That means the Asset\+Database returned null on loading. This happens in a few situations in Unity where the Asset\+Database is unavailable, such as in a static ctor. \end{DoxyCompactList}\item
+class {\bfseries String\+Extensions}
+\begin{DoxyCompactList}\small\item\em Extensions for System.\+String. \end{DoxyCompactList}\end{DoxyCompactItemize}
diff --git a/Docs~/latex/refman.aux b/Docs~/latex/refman.aux
new file mode 100644
index 00000000..b996c26c
--- /dev/null
+++ b/Docs~/latex/refman.aux
@@ -0,0 +1,1275 @@
+\relax
+\providecommand\hyper@newdestlabel[2]{}
+\providecommand\HyperFirstAtBeginDocument{\AtBeginDocument}
+\HyperFirstAtBeginDocument{\ifx\hyper@anchor\@undefined
+\global\let\oldnewlabel\newlabel
+\gdef\newlabel#1#2{\newlabelxx{#1}#2}
+\gdef\newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}}
+\AtEndDocument{\ifx\hyper@anchor\@undefined
+\let\newlabel\oldnewlabel
+\fi}
+\fi}
+\global\let\hyper@last\relax
+\gdef\HyperFirstAtBeginDocument#1{#1}
+\providecommand\HyField@AuxAddToFields[1]{}
+\providecommand\HyField@AuxAddToCoFields[2]{}
+\providecommand \oddpage@label [2]{}
+\@writefile{toc}{\@ifundefined {etoctocstyle}{\let \etoc@startlocaltoc \@gobble \let \etoc@settocdepth \@gobble \let \etoc@depthtag \@gobble \let \etoc@setlocaltop \@gobble }{}}
+\@writefile{toc}{\contentsline {section}{\numberline {1}Code\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Smile Asset\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Database}{1}{section.1}\protected@file@percent }
+\newlabel{index}{{1}{1}{Code\+Smile Asset\+Database}{section.1}{}}
+\newlabel{index_md__p_1_2de_8codesmile_8assetdatabase_2_r_e_a_d_m_e}{{1}{1}{Code\+Smile Asset\+Database}{section.1}{}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {1.1}Who needs this?}{1}{subsection.1.1}\protected@file@percent }
+\newlabel{index_who-needs-this}{{1.1}{1}{\texorpdfstring {Who needs this?}{Who needs this?}}{subsection.1.1}{}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {1.2}But .. why?}{2}{subsection.1.2}\protected@file@percent }
+\newlabel{index_but--why}{{1.2}{2}{\texorpdfstring {But .. why?}{But .. why?}}{subsection.1.2}{}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {1.3}Example Code Snippets}{2}{subsection.1.3}\protected@file@percent }
+\newlabel{index_example-code-snippets}{{1.3}{2}{\texorpdfstring {Example Code Snippets}{Example Code Snippets}}{subsection.1.3}{}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {1.4}I don\textquotesingle {}t trust this ..}{3}{subsection.1.4}\protected@file@percent }
+\newlabel{index_i-dont-trust-this-}{{1.4}{3}{\texorpdfstring {I don\textquotesingle {}t trust this ..}{I don\textquotesingle {}t trust this ..}}{subsection.1.4}{}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {1.5}What about support?}{3}{subsection.1.5}\protected@file@percent }
+\newlabel{index_what-about-support}{{1.5}{3}{\texorpdfstring {What about support?}{What about support?}}{subsection.1.5}{}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {1.6}Where\textquotesingle {}s Refresh?}{4}{subsection.1.6}\protected@file@percent }
+\newlabel{index_wheres-refresh}{{1.6}{4}{\texorpdfstring {Where\textquotesingle {}s Refresh?}{Where\textquotesingle {}s Refresh?}}{subsection.1.6}{}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {1.7}Documentation}{4}{subsection.1.7}\protected@file@percent }
+\newlabel{index_documentation}{{1.7}{4}{\texorpdfstring {Documentation}{Documentation}}{subsection.1.7}{}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {1.8}Installation}{4}{subsection.1.8}\protected@file@percent }
+\newlabel{index_installation}{{1.8}{4}{\texorpdfstring {Installation}{Installation}}{subsection.1.8}{}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {1.9}Requirements}{4}{subsection.1.9}\protected@file@percent }
+\newlabel{index_requirements}{{1.9}{4}{\texorpdfstring {Requirements}{Requirements}}{subsection.1.9}{}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {1.10}GPL License}{4}{subsection.1.10}\protected@file@percent }
+\newlabel{index_gpl-license}{{1.10}{4}{\texorpdfstring {GPL License}{GPL License}}{subsection.1.10}{}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {1.11}Support \& Feeback}{5}{subsection.1.11}\protected@file@percent }
+\newlabel{index_support--feeback}{{1.11}{5}{\texorpdfstring {Support \& Feeback}{Support \& Feeback}}{subsection.1.11}{}}
+\@writefile{toc}{\contentsline {section}{\numberline {2}Change Log}{5}{section.2}\protected@file@percent }
+\newlabel{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g}{{2}{5}{Change Log}{section.2}{}}
+\newlabel{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_change-log}{{2}{5}{Change Log}{section.2}{}}
+\@writefile{toc}{\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}8.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}3 -\/ Jan 22, 2024}{5}{section*.1}\protected@file@percent }
+\newlabel{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v183---jan-22-2024}{{2}{5}{\texorpdfstring {v1.\+8.\+3 -\/ Jan 22, 2024}{v1.\+8.\+3 -\/ Jan 22, 2024}}{section*.1}{}}
+\@writefile{toc}{\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}8.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}2 -\/ Dec 26, 2023}{5}{section*.2}\protected@file@percent }
+\newlabel{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v182---dec-26-2023}{{2}{5}{\texorpdfstring {v1.\+8.\+2 -\/ Dec 26, 2023}{v1.\+8.\+2 -\/ Dec 26, 2023}}{section*.2}{}}
+\@writefile{toc}{\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}8.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}1 -\/ Dec 21, 2023}{5}{section*.3}\protected@file@percent }
+\newlabel{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v181---dec-21-2023}{{2}{5}{\texorpdfstring {v1.\+8.\+1 -\/ Dec 21, 2023}{v1.\+8.\+1 -\/ Dec 21, 2023}}{section*.3}{}}
+\@writefile{toc}{\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}8.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}0 -\/ Dec 09, 2023}{5}{section*.4}\protected@file@percent }
+\newlabel{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v180---dec-09-2023}{{2}{5}{\texorpdfstring {v1.\+8.\+0 -\/ Dec 09, 2023}{v1.\+8.\+0 -\/ Dec 09, 2023}}{section*.4}{}}
+\@writefile{toc}{\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}7.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}1 -\/ Dec 05, 2023}{5}{section*.5}\protected@file@percent }
+\newlabel{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v171---dec-05-2023}{{2}{5}{\texorpdfstring {v1.\+7.\+1 -\/ Dec 05, 2023}{v1.\+7.\+1 -\/ Dec 05, 2023}}{section*.5}{}}
+\@writefile{toc}{\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}7.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}0 -\/ Dec 03, 2023}{6}{section*.6}\protected@file@percent }
+\newlabel{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v170---dec-03-2023}{{2}{6}{\texorpdfstring {v1.\+7.\+0 -\/ Dec 03, 2023}{v1.\+7.\+0 -\/ Dec 03, 2023}}{section*.6}{}}
+\@writefile{toc}{\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}6.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}0 -\/ Nov 30, 2023}{6}{section*.7}\protected@file@percent }
+\newlabel{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v160---nov-30-2023}{{2}{6}{\texorpdfstring {v1.\+6.\+0 -\/ Nov 30, 2023}{v1.\+6.\+0 -\/ Nov 30, 2023}}{section*.7}{}}
+\@writefile{toc}{\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}4.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}1 -\/ Nov 24, 2023}{6}{section*.8}\protected@file@percent }
+\newlabel{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v141---nov-24-2023}{{2}{6}{\texorpdfstring {v1.\+4.\+1 -\/ Nov 24, 2023}{v1.\+4.\+1 -\/ Nov 24, 2023}}{section*.8}{}}
+\@writefile{toc}{\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}4.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}0 -\/ Nov 24, 2023}{7}{section*.9}\protected@file@percent }
+\newlabel{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v140---nov-24-2023}{{2}{7}{\texorpdfstring {v1.\+4.\+0 -\/ Nov 24, 2023}{v1.\+4.\+0 -\/ Nov 24, 2023}}{section*.9}{}}
+\@writefile{toc}{\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}3.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}1 -\/ Nov 24, 2023}{7}{section*.10}\protected@file@percent }
+\newlabel{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v131---nov-24-2023}{{2}{7}{\texorpdfstring {v1.\+3.\+1 -\/ Nov 24, 2023}{v1.\+3.\+1 -\/ Nov 24, 2023}}{section*.10}{}}
+\@writefile{toc}{\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}3.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}0 -\/ Nov 23, 2023}{7}{section*.11}\protected@file@percent }
+\newlabel{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v130---nov-23-2023}{{2}{7}{\texorpdfstring {v1.\+3.\+0 -\/ Nov 23, 2023}{v1.\+3.\+0 -\/ Nov 23, 2023}}{section*.11}{}}
+\@writefile{toc}{\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}2.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}1 -\/ Nov 22, 2023}{7}{section*.12}\protected@file@percent }
+\newlabel{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v121---nov-22-2023}{{2}{7}{\texorpdfstring {v1.\+2.\+1 -\/ Nov 22, 2023}{v1.\+2.\+1 -\/ Nov 22, 2023}}{section*.12}{}}
+\@writefile{toc}{\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}2.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}0 -\/ Nov 22, 2023}{7}{section*.13}\protected@file@percent }
+\newlabel{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v120---nov-22-2023}{{2}{7}{\texorpdfstring {v1.\+2.\+0 -\/ Nov 22, 2023}{v1.\+2.\+0 -\/ Nov 22, 2023}}{section*.13}{}}
+\@writefile{toc}{\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}4 -\/ Nov 13, 2023}{7}{section*.14}\protected@file@percent }
+\newlabel{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v114---nov-13-2023}{{2}{7}{\texorpdfstring {v1.\+1.\+4 -\/ Nov 13, 2023}{v1.\+1.\+4 -\/ Nov 13, 2023}}{section*.14}{}}
+\@writefile{toc}{\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}3 -\/ Nov 12, 2023}{8}{section*.15}\protected@file@percent }
+\newlabel{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v113---nov-12-2023}{{2}{8}{\texorpdfstring {v1.\+1.\+3 -\/ Nov 12, 2023}{v1.\+1.\+3 -\/ Nov 12, 2023}}{section*.15}{}}
+\@writefile{toc}{\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}0 -\/ Nov 10, 2023}{8}{section*.16}\protected@file@percent }
+\newlabel{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v110---nov-10-2023}{{2}{8}{\texorpdfstring {v1.\+1.\+0 -\/ Nov 10, 2023}{v1.\+1.\+0 -\/ Nov 10, 2023}}{section*.16}{}}
+\@writefile{toc}{\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}0.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}0 -\/ Nov 9, 2023}{8}{section*.17}\protected@file@percent }
+\newlabel{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g_v100---nov-9-2023}{{2}{8}{\texorpdfstring {v1.\+0.\+0 -\/ Nov 9, 2023}{v1.\+0.\+0 -\/ Nov 9, 2023}}{section*.17}{}}
+\@writefile{toc}{\contentsline {section}{\numberline {3}Code\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Smile Packages -\/ Getting Started}{8}{section.3}\protected@file@percent }
+\newlabel{md__p_1_2de_8codesmile_8assetdatabase_2_g_e_t_t_i_n_g_01_s_t_a_r_t_e_d}{{3}{8}{Code\+Smile Packages -\/ Getting Started}{section.3}{}}
+\newlabel{md__p_1_2de_8codesmile_8assetdatabase_2_g_e_t_t_i_n_g_01_s_t_a_r_t_e_d_codesmile-packages---getting-started}{{3}{8}{Code\+Smile Packages -\/ Getting Started}{section.3}{}}
+\@writefile{toc}{\contentsline {section}{\numberline {4}Hierarchical Index}{8}{section.4}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsection}{\numberline {4.1}Class Hierarchy}{8}{subsection.4.1}\protected@file@percent }
+\@writefile{toc}{\contentsline {section}{\numberline {5}Class Index}{9}{section.5}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsection}{\numberline {5.1}Class List}{9}{subsection.5.1}\protected@file@percent }
+\@writefile{toc}{\contentsline {section}{\numberline {6}Namespace Documentation}{10}{section.6}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsection}{\numberline {6.1}Code\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Smile\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Editor Namespace Reference}{10}{subsection.6.1}\protected@file@percent }
+\newlabel{namespace_code_smile_editor}{{6.1}{10}{Code\+Smile\+Editor Namespace Reference}{subsection.6.1}{}}
+\@writefile{toc}{\contentsline {section}{\numberline {7}Class Documentation}{10}{section.7}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.1}Asset Class Reference}{10}{subsection.7.1}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset}{{7.1}{10}{Asset Class Reference}{subsection.7.1}{}}
+\gdef \LT@i {\LT@entry
+ {3}{80.58673pt}\LT@entry
+ {3}{374.65738pt}}
+\gdef \LT@ii {\LT@entry
+ {3}{139.33768pt}\LT@entry
+ {3}{81.84235pt}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.1.1}Detailed Description}{15}{subsubsection.7.1.1}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.1.2}Constructor \& Destructor Documentation}{15}{subsubsection.7.1.2}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a547d8367ae51323946fe990575c2840f_a547d8367ae51323946fe990575c2840f}{{7.1.2}{15}{Constructor \& Destructor Documentation}{subsubsection.7.1.2}{}}
+\@writefile{toc}{\contentsline {paragraph}{Asset()\hspace {0.1cm}{\footnotesize \ttfamily [1/6]}}{15}{section*.24}\protected@file@percent }
+\gdef \LT@iii {\LT@entry
+ {3}{80.58673pt}\LT@entry
+ {3}{374.65738pt}}
+\gdef \LT@iv {\LT@entry
+ {3}{106.83026pt}\LT@entry
+ {3}{81.84235pt}}
+\newlabel{class_code_smile_editor_1_1_asset_a8f0fe59560dc52244f4af7d3875bdea1_a8f0fe59560dc52244f4af7d3875bdea1}{{7.1.2}{16}{\texorpdfstring {Asset()}{Asset()}\hspace {0.1cm}{\footnotesize \ttfamily [1/6]}}{table.2}{}}
+\@writefile{toc}{\contentsline {paragraph}{Asset()\hspace {0.1cm}{\footnotesize \ttfamily [2/6]}}{16}{section*.25}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_ac6a1f3eb995796ea388c01daf3f30326_ac6a1f3eb995796ea388c01daf3f30326}{{7.1.2}{16}{\texorpdfstring {Asset()}{Asset()}\hspace {0.1cm}{\footnotesize \ttfamily [2/6]}}{table.4}{}}
+\@writefile{toc}{\contentsline {paragraph}{Asset()\hspace {0.1cm}{\footnotesize \ttfamily [3/6]}}{16}{section*.26}\protected@file@percent }
+\gdef \LT@v {\LT@entry
+ {3}{80.58673pt}\LT@entry
+ {3}{374.65738pt}}
+\gdef \LT@vi {\LT@entry
+ {3}{106.83026pt}\LT@entry
+ {3}{169.97752pt}}
+\gdef \LT@vii {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{112.32489pt}}
+\gdef \LT@viii {\LT@entry
+ {3}{106.83026pt}\LT@entry
+ {3}{146.47882pt}}
+\newlabel{class_code_smile_editor_1_1_asset_a2139e47981f864d23cbf802ceeadb730_a2139e47981f864d23cbf802ceeadb730}{{7.1.2}{17}{\texorpdfstring {Asset()}{Asset()}\hspace {0.1cm}{\footnotesize \ttfamily [3/6]}}{table.6}{}}
+\@writefile{toc}{\contentsline {paragraph}{Asset()\hspace {0.1cm}{\footnotesize \ttfamily [4/6]}}{17}{section*.27}\protected@file@percent }
+\gdef \LT@ix {\LT@entry
+ {3}{53.31726pt}\LT@entry
+ {3}{83.93042pt}}
+\gdef \LT@x {\LT@entry
+ {3}{91.33252pt}\LT@entry
+ {3}{229.50206pt}}
+\gdef \LT@xi {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{95.45016pt}}
+\gdef \LT@xii {\LT@entry
+ {3}{106.83026pt}\LT@entry
+ {3}{152.97675pt}}
+\newlabel{class_code_smile_editor_1_1_asset_a1b9aaba05c3acd1f57830883c53c0f1c_a1b9aaba05c3acd1f57830883c53c0f1c}{{7.1.2}{18}{\texorpdfstring {Asset()}{Asset()}\hspace {0.1cm}{\footnotesize \ttfamily [4/6]}}{table.8}{}}
+\@writefile{toc}{\contentsline {paragraph}{Asset()\hspace {0.1cm}{\footnotesize \ttfamily [5/6]}}{18}{section*.28}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a1c606a7df96ba8897ce11d53af1e5c62_a1c606a7df96ba8897ce11d53af1e5c62}{{7.1.2}{18}{\texorpdfstring {Asset()}{Asset()}\hspace {0.1cm}{\footnotesize \ttfamily [5/6]}}{table.10}{}}
+\@writefile{toc}{\contentsline {paragraph}{Asset()\hspace {0.1cm}{\footnotesize \ttfamily [6/6]}}{18}{section*.29}\protected@file@percent }
+\gdef \LT@xiii {\LT@entry
+ {3}{31.80762pt}\LT@entry
+ {3}{79.43947pt}}
+\gdef \LT@xiv {\LT@entry
+ {3}{36.30759pt}\LT@entry
+ {3}{112.09076pt}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.1.3}Member Function Documentation}{19}{subsubsection.7.1.3}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a2ebda9df65a71b44245f958679cf302a_a2ebda9df65a71b44245f958679cf302a}{{7.1.3}{19}{Member Function Documentation}{subsubsection.7.1.3}{}}
+\@writefile{toc}{\contentsline {paragraph}{AddLabel()}{19}{section*.30}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a677d0e58f64014b9722f943987c6ece5_a677d0e58f64014b9722f943987c6ece5}{{7.1.3}{19}{\texorpdfstring {AddLabel()}{AddLabel()}}{table.13}{}}
+\@writefile{toc}{\contentsline {paragraph}{AddLabels()}{19}{section*.31}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a7adbbe2c45d2f0188f60917a3d870946_a7adbbe2c45d2f0188f60917a3d870946}{{7.1.3}{19}{\texorpdfstring {AddLabels()}{AddLabels()}}{table.14}{}}
+\@writefile{toc}{\contentsline {paragraph}{AddSubAsset()}{19}{section*.32}\protected@file@percent }
+\gdef \LT@xv {\LT@entry
+ {3}{46.3154pt}\LT@entry
+ {3}{224.0125pt}}
+\gdef \LT@xvi {\LT@entry
+ {3}{74.47575pt}\LT@entry
+ {3}{287.20033pt}}
+\newlabel{class_code_smile_editor_1_1_asset_a31854cee2c427159e4ff866257872323_a31854cee2c427159e4ff866257872323}{{7.1.3}{20}{\texorpdfstring {AddSubAsset()}{AddSubAsset()}}{table.15}{}}
+\@writefile{toc}{\contentsline {paragraph}{CanMove()}{20}{section*.33}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_ac1b2c03d50954442d3462c97a5dc8882_ac1b2c03d50954442d3462c97a5dc8882}{{7.1.3}{20}{\texorpdfstring {CanMove()}{CanMove()}}{table.16}{}}
+\@writefile{toc}{\contentsline {paragraph}{CanOpenInEditor()}{20}{section*.34}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a1ec7cb3d4ed6edc811690f8855a7982f_a1ec7cb3d4ed6edc811690f8855a7982f}{{7.1.3}{21}{\texorpdfstring {CanOpenInEditor()}{CanOpenInEditor()}}{section*.34}{}}
+\@writefile{toc}{\contentsline {paragraph}{ClearLabels()}{21}{section*.35}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_af6ce8c8d3d810ae286e98e54aa360adf_af6ce8c8d3d810ae286e98e54aa360adf}{{7.1.3}{21}{\texorpdfstring {ClearLabels()}{ClearLabels()}}{section*.35}{}}
+\@writefile{toc}{\contentsline {paragraph}{Delete()}{21}{section*.36}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_ad06bce954d9c1e05d9f53e0274a9f85a_ad06bce954d9c1e05d9f53e0274a9f85a}{{7.1.3}{22}{\texorpdfstring {Delete()}{Delete()}}{figure.caption.37}{}}
+\@writefile{toc}{\contentsline {paragraph}{Duplicate()}{22}{section*.38}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a6e9b9cc6eb629d6e34d6ea90088e0148_a6e9b9cc6eb629d6e34d6ea90088e0148}{{7.1.3}{22}{\texorpdfstring {Duplicate()}{Duplicate()}}{section*.38}{}}
+\@writefile{toc}{\contentsline {paragraph}{ExportPackage()}{22}{section*.39}\protected@file@percent }
+\gdef \LT@xvii {\LT@entry
+ {3}{64.79216pt}\LT@entry
+ {3}{390.45195pt}}
+\gdef \LT@xviii {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{12.4pt}}
+\newlabel{class_code_smile_editor_1_1_asset_a80bd55f3de91ab63e74b3f66c1d1dd4b_a80bd55f3de91ab63e74b3f66c1d1dd4b}{{7.1.3}{23}{\texorpdfstring {ExportPackage()}{ExportPackage()}}{table.17}{}}
+\@writefile{toc}{\contentsline {paragraph}{ForceSave()}{23}{section*.40}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a2adfcc36a6b34de943aedfdd1db882f6_a2adfcc36a6b34de943aedfdd1db882f6}{{7.1.3}{23}{\texorpdfstring {ForceSave()}{ForceSave()}}{section*.40}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetFileId()}{23}{section*.41}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a856bd8735a17035cea08243c66e0eee8_a856bd8735a17035cea08243c66e0eee8}{{7.1.3}{23}{\texorpdfstring {GetFileId()}{GetFileId()}}{table.18}{}}
+\gdef \LT@xix {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{85.8026pt}}
+\gdef \LT@xx {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{232.49034pt}}
+\@writefile{toc}{\contentsline {paragraph}{GetGuid()}{24}{section*.42}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a0b39fc9791994323a44a1126f3a41b99_a0b39fc9791994323a44a1126f3a41b99}{{7.1.3}{24}{\texorpdfstring {GetGuid()}{GetGuid()}}{table.19}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetGuidAndFileId()}{24}{section*.43}\protected@file@percent }
+\gdef \LT@xxi {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{154.20082pt}}
+\gdef \LT@xxii {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{79.58348pt}}
+\newlabel{class_code_smile_editor_1_1_asset_ac028cbad5fe3dab688c9dff304f80ad2_ac028cbad5fe3dab688c9dff304f80ad2}{{7.1.3}{25}{\texorpdfstring {GetGuidAndFileId()}{GetGuidAndFileId()}}{table.20}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetIcon()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{25}{section*.44}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a8039d1c88de4736a9f3e706e224efdff_a8039d1c88de4736a9f3e706e224efdff}{{7.1.3}{25}{\texorpdfstring {GetIcon()}{GetIcon()}\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{table.21}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetIcon()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{25}{section*.45}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac}{{7.1.3}{26}{\texorpdfstring {GetIcon()}{GetIcon()}\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{table.22}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetLastErrorMessage()}{26}{section*.46}\protected@file@percent }
+\gdef \LT@xxiii {\LT@entry
+ {3}{18.29893pt}\LT@entry
+ {3}{165.64893pt}}
+\gdef \LT@xxiv {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{79.58348pt}}
+\newlabel{class_code_smile_editor_1_1_asset_a192accd4daaea8a0cf39c331b9fcb95c_a192accd4daaea8a0cf39c331b9fcb95c}{{7.1.3}{27}{\texorpdfstring {GetLastErrorMessage()}{GetLastErrorMessage()}}{figure.caption.48}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetMain$<$ T $>$()}{27}{section*.49}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a3192f3d24b4397b10f50ef366ee3feba_a3192f3d24b4397b10f50ef366ee3feba}{{7.1.3}{27}{\texorpdfstring {GetMain$<$ T $>$()}{GetMain< T >()}}{table.23}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetMainType()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{27}{section*.50}\protected@file@percent }
+\gdef \LT@xxv {\LT@entry
+ {3}{29.80966pt}\LT@entry
+ {3}{80.43845pt}}
+\newlabel{class_code_smile_editor_1_1_asset_a82b0bb0beb5f5422951631789bca4256_a82b0bb0beb5f5422951631789bca4256}{{7.1.3}{28}{\texorpdfstring {GetMainType()}{GetMainType()}\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{figure.caption.51}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetMainType()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{28}{section*.52}\protected@file@percent }
+\gdef \LT@xxvi {\LT@entry
+ {3}{31.80762pt}\LT@entry
+ {3}{128.4525pt}}
+\newlabel{class_code_smile_editor_1_1_asset_ab9e60595a8cc5748f38f91b3ed83aeca_ab9e60595a8cc5748f38f91b3ed83aeca}{{7.1.3}{29}{\texorpdfstring {GetMainType()}{GetMainType()}\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{figure.caption.53}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetSubType()}{29}{section*.54}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a5d27be243c1f698cba116b768e3f65ec_a5d27be243c1f698cba116b768e3f65ec}{{7.1.3}{29}{\texorpdfstring {GetSubType()}{GetSubType()}}{table.26}{}}
+\@writefile{toc}{\contentsline {paragraph}{Load$<$ T $>$()}{29}{section*.55}\protected@file@percent }
+\gdef \LT@xxvii {\LT@entry
+ {3}{18.29893pt}\LT@entry
+ {3}{143.09538pt}}
+\gdef \LT@xxviii {\LT@entry
+ {3}{74.47575pt}\LT@entry
+ {3}{287.20033pt}}
+\newlabel{class_code_smile_editor_1_1_asset_a45faf9fc17e3cb57b87d2ae09e4dd7f8_a45faf9fc17e3cb57b87d2ae09e4dd7f8}{{7.1.3}{30}{\texorpdfstring {Load$<$ T $>$()}{Load< T >()}}{table.27}{}}
+\@writefile{toc}{\contentsline {paragraph}{Move()}{30}{section*.56}\protected@file@percent }
+\gdef \LT@xxix {\LT@entry
+ {3}{73.81001pt}\LT@entry
+ {3}{342.24263pt}}
+\gdef \LT@xxx {\LT@entry
+ {3}{29.80966pt}\LT@entry
+ {3}{85.8026pt}}
+\newlabel{class_code_smile_editor_1_1_asset_a0666c1c07cd6e3eef35e058c2e09fdf9_a0666c1c07cd6e3eef35e058c2e09fdf9}{{7.1.3}{31}{\texorpdfstring {Move()}{Move()}}{figure.caption.57}{}}
+\@writefile{toc}{\contentsline {paragraph}{OpenExternal()}{31}{section*.58}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_ae41aa018507db1deffb10096f33e3bb6_ae41aa018507db1deffb10096f33e3bb6}{{7.1.3}{31}{\texorpdfstring {OpenExternal()}{OpenExternal()}}{table.29}{}}
+\@writefile{toc}{\contentsline {paragraph}{operator Asset()\hspace {0.1cm}{\footnotesize \ttfamily [1/4]}}{31}{section*.59}\protected@file@percent }
+\gdef \LT@xxxi {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{110.53415pt}}
+\gdef \LT@xxxii {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{93.45229pt}}
+\gdef \LT@xxxiii {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{93.45229pt}}
+\newlabel{class_code_smile_editor_1_1_asset_ac84df38322545eff4fb610f424420751_ac84df38322545eff4fb610f424420751}{{7.1.3}{32}{\texorpdfstring {operator Asset()}{operator Asset()}\hspace {0.1cm}{\footnotesize \ttfamily [1/4]}}{table.30}{}}
+\@writefile{toc}{\contentsline {paragraph}{operator Asset()\hspace {0.1cm}{\footnotesize \ttfamily [2/4]}}{32}{section*.60}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a23920865dfc0888bc17dc618ab30cbe0_a23920865dfc0888bc17dc618ab30cbe0}{{7.1.3}{32}{\texorpdfstring {operator Asset()}{operator Asset()}\hspace {0.1cm}{\footnotesize \ttfamily [2/4]}}{table.31}{}}
+\@writefile{toc}{\contentsline {paragraph}{operator Asset()\hspace {0.1cm}{\footnotesize \ttfamily [3/4]}}{32}{section*.61}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_aa01a879ca0793e3def47211f4d8d338d_aa01a879ca0793e3def47211f4d8d338d}{{7.1.3}{32}{\texorpdfstring {operator Asset()}{operator Asset()}\hspace {0.1cm}{\footnotesize \ttfamily [3/4]}}{table.32}{}}
+\@writefile{toc}{\contentsline {paragraph}{operator Asset()\hspace {0.1cm}{\footnotesize \ttfamily [4/4]}}{32}{section*.62}\protected@file@percent }
+\gdef \LT@xxxiv {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{127.95746pt}}
+\gdef \LT@xxxv {\LT@entry
+ {3}{49.81639pt}\LT@entry
+ {3}{140.45859pt}}
+\newlabel{class_code_smile_editor_1_1_asset_ae36538faed7f7dd4bd6d2a42867bbee1_ae36538faed7f7dd4bd6d2a42867bbee1}{{7.1.3}{33}{\texorpdfstring {operator Asset()}{operator Asset()}\hspace {0.1cm}{\footnotesize \ttfamily [4/4]}}{table.33}{}}
+\@writefile{toc}{\contentsline {paragraph}{operator Object()}{33}{section*.63}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_ae1e3a3de65cb69b8ac09a0e10f2dbabd_ae1e3a3de65cb69b8ac09a0e10f2dbabd}{{7.1.3}{33}{\texorpdfstring {operator Object()}{operator Object()}}{table.34}{}}
+\@writefile{toc}{\contentsline {paragraph}{RemoveSubAsset()}{33}{section*.64}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a28fe22006383d71d5b564df4a46b2675_a28fe22006383d71d5b564df4a46b2675}{{7.1.3}{33}{\texorpdfstring {RemoveSubAsset()}{RemoveSubAsset()}}{table.35}{}}
+\@writefile{toc}{\contentsline {paragraph}{Rename()}{33}{section*.65}\protected@file@percent }
+\gdef \LT@xxxvi {\LT@entry
+ {3}{67.62717pt}\LT@entry
+ {3}{302.47241pt}}
+\newlabel{class_code_smile_editor_1_1_asset_a5df140c1ee51aadf7fe88ce3fb9cac33_a5df140c1ee51aadf7fe88ce3fb9cac33}{{7.1.3}{34}{\texorpdfstring {Rename()}{Rename()}}{figure.caption.66}{}}
+\@writefile{toc}{\contentsline {paragraph}{Save()}{34}{section*.67}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a1c6432dab22d51bcf01bf6ad221e7119_a1c6432dab22d51bcf01bf6ad221e7119}{{7.1.3}{34}{\texorpdfstring {Save()}{Save()}}{section*.67}{}}
+\gdef \LT@xxxvii {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{143.89627pt}}
+\@writefile{toc}{\contentsline {paragraph}{SaveAs()}{35}{section*.68}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_af23adc642520b7f00cb047865ef50ad0_af23adc642520b7f00cb047865ef50ad0}{{7.1.3}{35}{\texorpdfstring {SaveAs()}{SaveAs()}}{figure.caption.69}{}}
+\@writefile{toc}{\contentsline {paragraph}{SaveAsNew()}{35}{section*.70}\protected@file@percent }
+\gdef \LT@xxxviii {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{332.69405pt}}
+\newlabel{class_code_smile_editor_1_1_asset_ac9fdda28d3fb7be683439603387df920_ac9fdda28d3fb7be683439603387df920}{{7.1.3}{36}{\texorpdfstring {SaveAsNew()}{SaveAsNew()}}{figure.caption.71}{}}
+\@writefile{toc}{\contentsline {paragraph}{SetDirty()}{36}{section*.72}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_af924398cf4176684f1c3bad2017f9ed5_af924398cf4176684f1c3bad2017f9ed5}{{7.1.3}{36}{\texorpdfstring {SetDirty()}{SetDirty()}}{section*.72}{}}
+\@writefile{toc}{\contentsline {paragraph}{SetLabels()}{36}{section*.73}\protected@file@percent }
+\gdef \LT@xxxix {\LT@entry
+ {3}{36.30759pt}\LT@entry
+ {3}{84.43454pt}}
+\newlabel{class_code_smile_editor_1_1_asset_a9ff25b59d227ab5d89fdabafffb9876a_a9ff25b59d227ab5d89fdabafffb9876a}{{7.1.3}{37}{\texorpdfstring {SetLabels()}{SetLabels()}}{table.39}{}}
+\@writefile{toc}{\contentsline {paragraph}{Trash()}{37}{section*.74}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.1.4}Property Documentation}{38}{subsubsection.7.1.4}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a57983fe52530259a94425f11144dcf12_a57983fe52530259a94425f11144dcf12}{{7.1.4}{38}{Property Documentation}{subsubsection.7.1.4}{}}
+\@writefile{toc}{\contentsline {paragraph}{ActiveImporter}{38}{section*.76}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a54bbd4600c9787134d849c022cefe90e_a54bbd4600c9787134d849c022cefe90e}{{7.1.4}{38}{\texorpdfstring {ActiveImporter}{ActiveImporter}}{section*.76}{}}
+\@writefile{toc}{\contentsline {paragraph}{AssetPath}{38}{section*.77}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_afd494f6a711cc6e5683d95823c87f916_afd494f6a711cc6e5683d95823c87f916}{{7.1.4}{38}{\texorpdfstring {AssetPath}{AssetPath}}{section*.77}{}}
+\@writefile{toc}{\contentsline {paragraph}{AvailableImporters}{38}{section*.78}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a171f2bcee950b6e79886c7507f9beb27_a171f2bcee950b6e79886c7507f9beb27}{{7.1.4}{38}{\texorpdfstring {AvailableImporters}{AvailableImporters}}{section*.78}{}}
+\@writefile{toc}{\contentsline {paragraph}{DefaultImporter}{39}{section*.79}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_af2fc7a5ab674d2293e0c80bcceb709f6_af2fc7a5ab674d2293e0c80bcceb709f6}{{7.1.4}{39}{\texorpdfstring {DefaultImporter}{DefaultImporter}}{section*.79}{}}
+\@writefile{toc}{\contentsline {paragraph}{Dependencies}{39}{section*.80}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a0ae61d10248f285be98d0bab84ca431e_a0ae61d10248f285be98d0bab84ca431e}{{7.1.4}{39}{\texorpdfstring {Dependencies}{Dependencies}}{section*.80}{}}
+\@writefile{toc}{\contentsline {paragraph}{DirectDependencies}{39}{section*.81}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a2d3c3468bf091cc7260b4cdca91b4a55_a2d3c3468bf091cc7260b4cdca91b4a55}{{7.1.4}{39}{\texorpdfstring {DirectDependencies}{DirectDependencies}}{section*.81}{}}
+\@writefile{toc}{\contentsline {paragraph}{FileId}{40}{section*.82}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a66a3fc7176ae79e7e9ee85df99c5ff7c_a66a3fc7176ae79e7e9ee85df99c5ff7c}{{7.1.4}{40}{\texorpdfstring {FileId}{FileId}}{section*.82}{}}
+\@writefile{toc}{\contentsline {paragraph}{Guid}{40}{section*.83}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a68c0326ba0d934f74e65a06f805627e0_a68c0326ba0d934f74e65a06f805627e0}{{7.1.4}{40}{\texorpdfstring {Guid}{Guid}}{section*.83}{}}
+\@writefile{toc}{\contentsline {paragraph}{Icon}{40}{section*.84}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_af3886ebc9167b6615000ad5835ded3d2_af3886ebc9167b6615000ad5835ded3d2}{{7.1.4}{40}{\texorpdfstring {Icon}{Icon}}{section*.84}{}}
+\@writefile{toc}{\contentsline {paragraph}{IsDeleted}{40}{section*.85}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_ae1533f44e1d6a3921dcf9dc0c73e5721_ae1533f44e1d6a3921dcf9dc0c73e5721}{{7.1.4}{40}{\texorpdfstring {IsDeleted}{IsDeleted}}{section*.85}{}}
+\@writefile{toc}{\contentsline {paragraph}{IsForeign}{41}{section*.86}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_ac3eef672ee8ea3c14524ee2a1d7fbfef_ac3eef672ee8ea3c14524ee2a1d7fbfef}{{7.1.4}{41}{\texorpdfstring {IsForeign}{IsForeign}}{section*.86}{}}
+\@writefile{toc}{\contentsline {paragraph}{IsImporterOverridden}{41}{section*.87}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a993540e3a2141abe3463b2a75655f931_a993540e3a2141abe3463b2a75655f931}{{7.1.4}{41}{\texorpdfstring {IsImporterOverridden}{IsImporterOverridden}}{section*.87}{}}
+\@writefile{toc}{\contentsline {paragraph}{IsNative}{41}{section*.88}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a16590be90618aaa5682dbdc597fd5223_a16590be90618aaa5682dbdc597fd5223}{{7.1.4}{41}{\texorpdfstring {IsNative}{IsNative}}{section*.88}{}}
+\@writefile{toc}{\contentsline {paragraph}{IsScene}{42}{section*.89}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a537c910df9f9f5d24a916b70934f4de8_a537c910df9f9f5d24a916b70934f4de8}{{7.1.4}{42}{\texorpdfstring {IsScene}{IsScene}}{section*.89}{}}
+\@writefile{toc}{\contentsline {paragraph}{Labels}{42}{section*.90}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_ab39ec1f49ab79e8ae84c6a53a2458f2d_ab39ec1f49ab79e8ae84c6a53a2458f2d}{{7.1.4}{42}{\texorpdfstring {Labels}{Labels}}{section*.90}{}}
+\@writefile{toc}{\contentsline {paragraph}{MainObject}{42}{section*.91}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a15e35df5acbfe3751310d7fd241a6295_a15e35df5acbfe3751310d7fd241a6295}{{7.1.4}{42}{\texorpdfstring {MainObject}{MainObject}}{section*.91}{}}
+\gdef \LT@xl {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{79.58348pt}}
+\@writefile{toc}{\contentsline {paragraph}{MainObjectType}{43}{section*.92}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a0084f5ad8a13c505013748101a81b1df_a0084f5ad8a13c505013748101a81b1df}{{7.1.4}{43}{\texorpdfstring {MainObjectType}{MainObjectType}}{section*.92}{}}
+\@writefile{toc}{\contentsline {paragraph}{MetaPath}{43}{section*.93}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_af8ffb2f0dfbb3585bd764056147d01b3_af8ffb2f0dfbb3585bd764056147d01b3}{{7.1.4}{43}{\texorpdfstring {MetaPath}{MetaPath}}{section*.93}{}}
+\@writefile{toc}{\contentsline {paragraph}{OwningBundle}{43}{section*.94}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_a91f88014dec2b3bff50d35f595e6409d_a91f88014dec2b3bff50d35f595e6409d}{{7.1.4}{43}{\texorpdfstring {OwningBundle}{OwningBundle}}{table.40}{}}
+\gdef \LT@xli {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{79.58348pt}}
+\@writefile{toc}{\contentsline {paragraph}{OwningBundleVariant}{44}{section*.95}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_accd20b073ee732df08cf6ba0b9b8a389_accd20b073ee732df08cf6ba0b9b8a389}{{7.1.4}{44}{\texorpdfstring {OwningBundleVariant}{OwningBundleVariant}}{table.41}{}}
+\@writefile{toc}{\contentsline {paragraph}{SubAssets}{44}{section*.96}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_ace611059f2ab296e1be5b51d33617000_ace611059f2ab296e1be5b51d33617000}{{7.1.4}{44}{\texorpdfstring {SubAssets}{SubAssets}}{section*.96}{}}
+\@writefile{toc}{\contentsline {paragraph}{VisibleSubAssets}{44}{section*.97}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.2}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Bundle Class Reference}{45}{subsection.7.2}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_bundle}{{7.2}{45}{Asset.\+Bundle Class Reference}{subsection.7.2}{}}
+\gdef \LT@xlii {\LT@entry
+ {3}{63.64015pt}\LT@entry
+ {3}{159.29503pt}}
+\gdef \LT@xliii {\LT@entry
+ {3}{63.64015pt}\LT@entry
+ {3}{117.13985pt}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.1}Detailed Description}{46}{subsubsection.7.2.1}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.2}Member Function Documentation}{46}{subsubsection.7.2.2}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_bundle_a7393007e2bfa2a7dafd3e6bf47115f53_a7393007e2bfa2a7dafd3e6bf47115f53}{{7.2.2}{46}{Member Function Documentation}{subsubsection.7.2.2}{}}
+\@writefile{toc}{\contentsline {paragraph}{ForceRemove()}{46}{section*.101}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_bundle_ae45aacadca51b6d99273ef60c47523f3_ae45aacadca51b6d99273ef60c47523f3}{{7.2.2}{46}{\texorpdfstring {ForceRemove()}{ForceRemove()}}{table.42}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetAllDependencies()}{46}{section*.102}\protected@file@percent }
+\gdef \LT@xliv {\LT@entry
+ {3}{63.64015pt}\LT@entry
+ {3}{117.13985pt}}
+\gdef \LT@xlv {\LT@entry
+ {3}{63.64015pt}\LT@entry
+ {3}{117.13985pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_bundle_a92f937447af1b0ac29f167b8d5de21e0_a92f937447af1b0ac29f167b8d5de21e0}{{7.2.2}{47}{\texorpdfstring {GetAllDependencies()}{GetAllDependencies()}}{table.43}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetAllPaths()}{47}{section*.103}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_bundle_a86ace93f7ce9f411e2994177f4cc60c2_a86ace93f7ce9f411e2994177f4cc60c2}{{7.2.2}{47}{\texorpdfstring {GetAllPaths()}{GetAllPaths()}}{table.44}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetDirectDependencies()}{47}{section*.104}\protected@file@percent }
+\gdef \LT@xlvi {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{93.45229pt}}
+\gdef \LT@xlvii {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{93.45229pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_bundle_a17c3d7ba18536daa627d478d36aa7d95_a17c3d7ba18536daa627d478d36aa7d95}{{7.2.2}{48}{\texorpdfstring {GetDirectDependencies()}{GetDirectDependencies()}}{table.45}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetOwningBundle()}{48}{section*.105}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_bundle_a51999ea1e987b932993409830b86bad3_a51999ea1e987b932993409830b86bad3}{{7.2.2}{48}{\texorpdfstring {GetOwningBundle()}{GetOwningBundle()}}{table.46}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetOwningBundleVariant()}{48}{section*.106}\protected@file@percent }
+\gdef \LT@xlviii {\LT@entry
+ {3}{63.64015pt}\LT@entry
+ {3}{190.11002pt}}
+\gdef \LT@xlix {\LT@entry
+ {3}{63.64015pt}\LT@entry
+ {3}{159.29503pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_bundle_aa5dd51c1b0b63b4552afdd78da4e2e81_aa5dd51c1b0b63b4552afdd78da4e2e81}{{7.2.2}{49}{\texorpdfstring {GetOwningBundleVariant()}{GetOwningBundleVariant()}}{table.47}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetPaths()}{49}{section*.107}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_bundle_afda9d0ade24a5ad0d52c2f2f1a7bc86a_afda9d0ade24a5ad0d52c2f2f1a7bc86a}{{7.2.2}{49}{\texorpdfstring {GetPaths()}{GetPaths()}}{table.48}{}}
+\@writefile{toc}{\contentsline {paragraph}{Remove()}{49}{section*.108}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_bundle_a08d9f8415b580743cbd887fb5d66aba0_a08d9f8415b580743cbd887fb5d66aba0}{{7.2.2}{50}{\texorpdfstring {Remove()}{Remove()}}{table.49}{}}
+\@writefile{toc}{\contentsline {paragraph}{RemoveUnused()}{50}{section*.109}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.2.3}Property Documentation}{50}{subsubsection.7.2.3}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_bundle_a7a491f4df9b8c6216b664e600b7ab0e3_a7a491f4df9b8c6216b664e600b7ab0e3}{{7.2.3}{50}{Property Documentation}{subsubsection.7.2.3}{}}
+\@writefile{toc}{\contentsline {paragraph}{All}{50}{section*.110}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_bundle_a096ba8fe96373ca1cdf4edf80991a6cc_a096ba8fe96373ca1cdf4edf80991a6cc}{{7.2.3}{50}{\texorpdfstring {All}{All}}{section*.110}{}}
+\@writefile{toc}{\contentsline {paragraph}{Unused}{50}{section*.111}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.3}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Database Class Reference}{51}{subsection.7.3}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database}{{7.3}{51}{Asset.\+Database Class Reference}{subsection.7.3}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.3.1}Detailed Description}{52}{subsubsection.7.3.1}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.3.2}Member Function Documentation}{52}{subsubsection.7.3.2}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_a4f2683df249d67e506e9f2d9d9fe2b5a_a4f2683df249d67e506e9f2d9d9fe2b5a}{{7.3.2}{52}{Member Function Documentation}{subsubsection.7.3.2}{}}
+\@writefile{toc}{\contentsline {paragraph}{AllowAutoRefresh()}{52}{section*.116}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_aebd60455d5568e8715f48750a2a15710_aebd60455d5568e8715f48750a2a15710}{{7.3.2}{52}{\texorpdfstring {AllowAutoRefresh()}{AllowAutoRefresh()}}{section*.116}{}}
+\@writefile{toc}{\contentsline {paragraph}{Contains()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{52}{section*.117}\protected@file@percent }
+\gdef \LT@l {\LT@entry
+ {3}{53.8212pt}\LT@entry
+ {3}{124.45659pt}}
+\gdef \LT@li {\LT@entry
+ {3}{46.3154pt}\LT@entry
+ {3}{75.93848pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_a9f98188e77af88fa79da70d1765765ff_a9f98188e77af88fa79da70d1765765ff}{{7.3.2}{53}{\texorpdfstring {Contains()}{Contains()}\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{table.50}{}}
+\@writefile{toc}{\contentsline {paragraph}{Contains()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{53}{section*.118}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_adb25c0a19eaf845815b001486373db4c_adb25c0a19eaf845815b001486373db4c}{{7.3.2}{53}{\texorpdfstring {Contains()}{Contains()}\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{table.51}{}}
+\@writefile{toc}{\contentsline {paragraph}{DisallowAutoRefresh()}{53}{section*.119}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_a7c993d64861e62fbdcff3700690b2318_a7c993d64861e62fbdcff3700690b2318}{{7.3.2}{53}{\texorpdfstring {DisallowAutoRefresh()}{DisallowAutoRefresh()}}{section*.119}{}}
+\gdef \LT@lii {\LT@entry
+ {3}{41.81543pt}\LT@entry
+ {3}{126.4pt}}
+\@writefile{toc}{\contentsline {paragraph}{ImportAll()}{54}{section*.120}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_afa24e66e009892bc1032c64f512f349d_afa24e66e009892bc1032c64f512f349d}{{7.3.2}{55}{\texorpdfstring {ImportAll()}{ImportAll()}}{table.52}{}}
+\@writefile{toc}{\contentsline {paragraph}{ReleaseFileHandles()}{55}{section*.121}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_af4aa665fc0bbfcf9f076d5da1457b2c4_af4aa665fc0bbfcf9f076d5da1457b2c4}{{7.3.2}{55}{\texorpdfstring {ReleaseFileHandles()}{ReleaseFileHandles()}}{section*.121}{}}
+\@writefile{toc}{\contentsline {paragraph}{SaveAll()}{55}{section*.122}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_a3006ad7769d5ba3b477a5c153f20dd27_a3006ad7769d5ba3b477a5c153f20dd27}{{7.3.2}{55}{\texorpdfstring {SaveAll()}{SaveAll()}}{section*.122}{}}
+\@writefile{toc}{\contentsline {paragraph}{UpgradeAllAssetSerializationVersions()}{55}{section*.123}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_a0bdd680cb405e96d92b6a7af338ad27f_a0bdd680cb405e96d92b6a7af338ad27f}{{7.3.2}{55}{\texorpdfstring {UpgradeAllAssetSerializationVersions()}{UpgradeAllAssetSerializationVersions()}}{section*.123}{}}
+\gdef \LT@liii {\LT@entry
+ {3}{41.81543pt}\LT@entry
+ {3}{266.54555pt}}
+\gdef \LT@liv {\LT@entry
+ {3}{41.81543pt}\LT@entry
+ {3}{266.54555pt}}
+\@writefile{toc}{\contentsline {paragraph}{UpgradeAssetSerializationVersion()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{56}{section*.124}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_a94a77b56376fbb7f52ba2bece53f45b7_a94a77b56376fbb7f52ba2bece53f45b7}{{7.3.2}{56}{\texorpdfstring {UpgradeAssetSerializationVersion()}{UpgradeAssetSerializationVersion()}\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{table.53}{}}
+\@writefile{toc}{\contentsline {paragraph}{UpgradeAssetSerializationVersion()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{56}{section*.125}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.3.3}Property Documentation}{57}{subsubsection.7.3.3}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_a46c1f775624b940edb495a5c2b08583c_a46c1f775624b940edb495a5c2b08583c}{{7.3.3}{57}{Property Documentation}{subsubsection.7.3.3}{}}
+\@writefile{toc}{\contentsline {paragraph}{DesiredWorkerCount}{57}{section*.126}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_a6190225c177bf52f95b2cdbcb99ccc2a_a6190225c177bf52f95b2cdbcb99ccc2a}{{7.3.3}{57}{\texorpdfstring {DesiredWorkerCount}{DesiredWorkerCount}}{section*.126}{}}
+\@writefile{toc}{\contentsline {paragraph}{DirectoryMonitoring}{57}{section*.127}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.4}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Database.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Cache\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Server Class Reference}{58}{subsection.7.4}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server}{{7.4}{58}{Asset.\+Database.\+Cache\+Server Class Reference}{subsection.7.4}{}}
+\gdef \LT@lv {\LT@entry
+ {3}{52.81332pt}\LT@entry
+ {3}{243.34415pt}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.4.1}Detailed Description}{59}{subsubsection.7.4.1}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.4.2}Member Function Documentation}{59}{subsubsection.7.4.2}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_ab7e00eb132c285b4e57d86fcb20a0eab_ab7e00eb132c285b4e57d86fcb20a0eab}{{7.4.2}{59}{Member Function Documentation}{subsubsection.7.4.2}{}}
+\@writefile{toc}{\contentsline {paragraph}{ApplySettings()}{59}{section*.131}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a2ceac4f87b79ab2f6e11c52ee1bfc237_a2ceac4f87b79ab2f6e11c52ee1bfc237}{{7.4.2}{59}{\texorpdfstring {ApplySettings()}{ApplySettings()}}{section*.131}{}}
+\@writefile{toc}{\contentsline {paragraph}{CanConnect()}{59}{section*.132}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a03214d814cc25d687cf283544c0b7478_a03214d814cc25d687cf283544c0b7478}{{7.4.2}{60}{\texorpdfstring {CanConnect()}{CanConnect()}}{table.55}{}}
+\@writefile{toc}{\contentsline {paragraph}{Disconnect()}{60}{section*.133}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a69d55faf286c564a2244d84908fb8de7_a69d55faf286c564a2244d84908fb8de7}{{7.4.2}{60}{\texorpdfstring {Disconnect()}{Disconnect()}}{section*.133}{}}
+\@writefile{toc}{\contentsline {paragraph}{ResetReconnectTimer()}{60}{section*.134}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.4.3}Property Documentation}{60}{subsubsection.7.4.3}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a59ea01f052d1a1cdcd46b7652a31eb7b_a59ea01f052d1a1cdcd46b7652a31eb7b}{{7.4.3}{60}{Property Documentation}{subsubsection.7.4.3}{}}
+\@writefile{toc}{\contentsline {paragraph}{Address}{60}{section*.135}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a0f5601571ed30a21f8d5b0d1dcd769cf_a0f5601571ed30a21f8d5b0d1dcd769cf}{{7.4.3}{60}{\texorpdfstring {Address}{Address}}{section*.135}{}}
+\@writefile{toc}{\contentsline {paragraph}{Connected}{61}{section*.136}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a6d323f9b74b844dd3c1772b8002a3c38_a6d323f9b74b844dd3c1772b8002a3c38}{{7.4.3}{61}{\texorpdfstring {Connected}{Connected}}{section*.136}{}}
+\@writefile{toc}{\contentsline {paragraph}{ConnectedAddress}{61}{section*.137}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a27fb9a87ab3f56a3f3bb83347e27cdc5_a27fb9a87ab3f56a3f3bb83347e27cdc5}{{7.4.3}{61}{\texorpdfstring {ConnectedAddress}{ConnectedAddress}}{section*.137}{}}
+\@writefile{toc}{\contentsline {paragraph}{DownloadsAllowed}{61}{section*.138}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a0d54cbeba816f7543a911249ba11c571_a0d54cbeba816f7543a911249ba11c571}{{7.4.3}{61}{\texorpdfstring {DownloadsAllowed}{DownloadsAllowed}}{section*.138}{}}
+\@writefile{toc}{\contentsline {paragraph}{Enabled}{62}{section*.139}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_a0d4894d317ef790042b43eb297af0cb5_a0d4894d317ef790042b43eb297af0cb5}{{7.4.3}{62}{\texorpdfstring {Enabled}{Enabled}}{section*.139}{}}
+\@writefile{toc}{\contentsline {paragraph}{NamespacePrefix}{62}{section*.140}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_abd00b91d5bf24c2777bdc3914e79aab6_abd00b91d5bf24c2777bdc3914e79aab6}{{7.4.3}{62}{\texorpdfstring {NamespacePrefix}{NamespacePrefix}}{section*.140}{}}
+\@writefile{toc}{\contentsline {paragraph}{Port}{62}{section*.141}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server_adace505fc9ae3b5da05e0759ac552186_adace505fc9ae3b5da05e0759ac552186}{{7.4.3}{62}{\texorpdfstring {Port}{Port}}{section*.141}{}}
+\@writefile{toc}{\contentsline {paragraph}{UploadsAllowed}{63}{section*.142}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.5}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Dependency Class Reference}{63}{subsection.7.5}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_dependency}{{7.5}{63}{Asset.\+Dependency Class Reference}{subsection.7.5}{}}
+\gdef \LT@lvi {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{93.45229pt}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.5.1}Detailed Description}{64}{subsubsection.7.5.1}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.5.2}Member Function Documentation}{64}{subsubsection.7.5.2}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_dependency_a5281d751f8d22a0cf586636bb925cbca_a5281d751f8d22a0cf586636bb925cbca}{{7.5.2}{64}{Member Function Documentation}{subsubsection.7.5.2}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetAll()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{64}{section*.145}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_dependency_a3158b26e37b698fdeb8cc380d475ee1c_a3158b26e37b698fdeb8cc380d475ee1c}{{7.5.2}{64}{\texorpdfstring {GetAll()}{GetAll()}\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{table.56}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetAll()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{64}{section*.146}\protected@file@percent }
+\gdef \LT@lvii {\LT@entry
+ {3}{34.81357pt}\LT@entry
+ {3}{89.94252pt}}
+\gdef \LT@lviii {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{93.45229pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_dependency_a3fd889e4426d5d12102ee08e7b291a0f_a3fd889e4426d5d12102ee08e7b291a0f}{{7.5.2}{65}{\texorpdfstring {GetAll()}{GetAll()}\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{table.57}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetDirect()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{65}{section*.147}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_dependency_af349cee54bc70ac16cf55f3ab204b1f9_af349cee54bc70ac16cf55f3ab204b1f9}{{7.5.2}{65}{\texorpdfstring {GetDirect()}{GetDirect()}\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{table.58}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetDirect()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{65}{section*.148}\protected@file@percent }
+\gdef \LT@lix {\LT@entry
+ {3}{34.81357pt}\LT@entry
+ {3}{89.94252pt}}
+\gdef \LT@lx {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{93.45229pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_dependency_a3e3f046819f75953102e43ecf130e92a_a3e3f046819f75953102e43ecf130e92a}{{7.5.2}{66}{\texorpdfstring {GetDirect()}{GetDirect()}\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{table.59}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetHash()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{66}{section*.149}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_dependency_a773bdd015f687ec5ea5ab318448ee246_a773bdd015f687ec5ea5ab318448ee246}{{7.5.2}{66}{\texorpdfstring {GetHash()}{GetHash()}\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{table.60}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetHash()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{66}{section*.150}\protected@file@percent }
+\gdef \LT@lxi {\LT@entry
+ {3}{29.80966pt}\LT@entry
+ {3}{97.79922pt}}
+\gdef \LT@lxii {\LT@entry
+ {3}{111.33937pt}\LT@entry
+ {3}{343.90474pt}}
+\gdef \LT@lxiii {\LT@entry
+ {3}{134.34303pt}\LT@entry
+ {3}{247.48343pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_dependency_a2a075809ed33b78a5b235ce1daaadbaa_a2a075809ed33b78a5b235ce1daaadbaa}{{7.5.2}{67}{\texorpdfstring {GetHash()}{GetHash()}\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{table.61}{}}
+\@writefile{toc}{\contentsline {paragraph}{Register()}{67}{section*.151}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_dependency_a23e341be7d456b3badf13a34970b25ff_a23e341be7d456b3badf13a34970b25ff}{{7.5.2}{67}{\texorpdfstring {Register()}{Register()}}{table.62}{}}
+\@writefile{toc}{\contentsline {paragraph}{Unregister()}{67}{section*.152}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.6}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}File Class Reference}{68}{subsection.7.6}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file}{{7.6}{68}{Asset.\+File Class Reference}{subsection.7.6}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.6.1}Detailed Description}{70}{subsubsection.7.6.1}\protected@file@percent }
+\gdef \LT@lxiv {\LT@entry
+ {3}{111.82527pt}\LT@entry
+ {3}{194.46617pt}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.6.2}Member Function Documentation}{71}{subsubsection.7.6.2}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_ab0082c2158f7de6376b26a75827bd7a2_ab0082c2158f7de6376b26a75827bd7a2}{{7.6.2}{71}{Member Function Documentation}{subsubsection.7.6.2}{}}
+\@writefile{toc}{\contentsline {paragraph}{BatchEditing()}{71}{section*.157}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a2bdf010d46d8dd5ea6420e4bdc75c9aa_a2bdf010d46d8dd5ea6420e4bdc75c9aa}{{7.6.2}{71}{\texorpdfstring {BatchEditing()}{BatchEditing()}}{table.64}{}}
+\@writefile{toc}{\contentsline {paragraph}{CanMove()}{71}{section*.158}\protected@file@percent }
+\gdef \LT@lxv {\LT@entry
+ {3}{74.47575pt}\LT@entry
+ {3}{250.18405pt}}
+\gdef \LT@lxvi {\LT@entry
+ {3}{46.3154pt}\LT@entry
+ {3}{135.78708pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a3d74dc290eb0f6815b0f1eac29c6c2e6_a3d74dc290eb0f6815b0f1eac29c6c2e6}{{7.6.2}{72}{\texorpdfstring {CanMove()}{CanMove()}}{table.65}{}}
+\@writefile{toc}{\contentsline {paragraph}{CanOpenInEditor()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{72}{section*.159}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_aabdb1dcc073e89416e72eccf3839ad1d_aabdb1dcc073e89416e72eccf3839ad1d}{{7.6.2}{72}{\texorpdfstring {CanOpenInEditor()}{CanOpenInEditor()}\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{table.66}{}}
+\gdef \LT@lxvii {\LT@entry
+ {3}{53.8212pt}\LT@entry
+ {3}{150.97002pt}}
+\gdef \LT@lxviii {\LT@entry
+ {3}{74.47575pt}\LT@entry
+ {3}{114.27805pt}}
+\@writefile{toc}{\contentsline {paragraph}{CanOpenInEditor()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{73}{section*.160}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a68db67f53a3a2a6002b9922d2678bc96_a68db67f53a3a2a6002b9922d2678bc96}{{7.6.2}{73}{\texorpdfstring {CanOpenInEditor()}{CanOpenInEditor()}\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{table.67}{}}
+\@writefile{toc}{\contentsline {paragraph}{Copy()}{73}{section*.161}\protected@file@percent }
+\gdef \LT@lxix {\LT@entry
+ {3}{74.47575pt}\LT@entry
+ {3}{266.63539pt}}
+\gdef \LT@lxx {\LT@entry
+ {3}{46.81934pt}\LT@entry
+ {3}{123.8266pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a73e80cb6412abff44ed9c172f7f92e36_a73e80cb6412abff44ed9c172f7f92e36}{{7.6.2}{74}{\texorpdfstring {Copy()}{Copy()}}{table.68}{}}
+\@writefile{toc}{\contentsline {paragraph}{CopyAsNew()}{74}{section*.162}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222}{{7.6.2}{74}{\texorpdfstring {CopyAsNew()}{CopyAsNew()}}{table.69}{}}
+\@writefile{toc}{\contentsline {paragraph}{Create()\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{74}{section*.163}\protected@file@percent }
+\gdef \LT@lxxi {\LT@entry
+ {3}{46.3154pt}\LT@entry
+ {3}{150.43025pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_acfdbd887acb03dfdc27a2e7628055a8a_acfdbd887acb03dfdc27a2e7628055a8a}{{7.6.2}{75}{\texorpdfstring {Create()}{Create()}\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{figure.caption.164}{}}
+\@writefile{toc}{\contentsline {paragraph}{Create()\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{75}{section*.165}\protected@file@percent }
+\gdef \LT@lxxii {\LT@entry
+ {3}{46.81934pt}\LT@entry
+ {3}{123.8266pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a57a28b554ce2ca500c6eeba3a17852b2_a57a28b554ce2ca500c6eeba3a17852b2}{{7.6.2}{76}{\texorpdfstring {Create()}{Create()}\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{table.71}{}}
+\@writefile{toc}{\contentsline {paragraph}{Create()\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{76}{section*.166}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_aceef508c424cb6d38e755ddd6bde4dd7_aceef508c424cb6d38e755ddd6bde4dd7}{{7.6.2}{76}{\texorpdfstring {Create()}{Create()}\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{table.72}{}}
+\@writefile{toc}{\contentsline {paragraph}{CreateAsNew()\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{76}{section*.167}\protected@file@percent }
+\gdef \LT@lxxiii {\LT@entry
+ {3}{46.81934pt}\LT@entry
+ {3}{317.73636pt}}
+\gdef \LT@lxxiv {\LT@entry
+ {3}{46.3154pt}\LT@entry
+ {3}{317.73636pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a7fe77714391ee2e69e6b2b45fc97dff6_a7fe77714391ee2e69e6b2b45fc97dff6}{{7.6.2}{77}{\texorpdfstring {CreateAsNew()}{CreateAsNew()}\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{table.73}{}}
+\@writefile{toc}{\contentsline {paragraph}{CreateAsNew()\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{77}{section*.168}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a709af33f201b4704e1919a289b93189d_a709af33f201b4704e1919a289b93189d}{{7.6.2}{77}{\texorpdfstring {CreateAsNew()}{CreateAsNew()}\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{table.74}{}}
+\gdef \LT@lxxv {\LT@entry
+ {3}{46.81934pt}\LT@entry
+ {3}{317.73636pt}}
+\gdef \LT@lxxvi {\LT@entry
+ {3}{59.32904pt}\LT@entry
+ {3}{167.55681pt}}
+\gdef \LT@lxxvii {\LT@entry
+ {3}{18.29893pt}\LT@entry
+ {3}{143.09538pt}}
+\@writefile{toc}{\contentsline {paragraph}{CreateAsNew()\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{78}{section*.169}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a5ed30d6c3ba66e66db44c0d8490dcdfc_a5ed30d6c3ba66e66db44c0d8490dcdfc}{{7.6.2}{78}{\texorpdfstring {CreateAsNew()}{CreateAsNew()}\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{table.75}{}}
+\@writefile{toc}{\contentsline {paragraph}{CreateOrLoad$<$ T $>$()}{78}{section*.170}\protected@file@percent }
+\gdef \LT@lxxviii {\LT@entry
+ {3}{34.81357pt}\LT@entry
+ {3}{91.81425pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a0ee72382871919c7584e6962088c34ba_a0ee72382871919c7584e6962088c34ba}{{7.6.2}{79}{\texorpdfstring {CreateOrLoad$<$ T $>$()}{CreateOrLoad< T >()}}{table.77}{}}
+\@writefile{toc}{\contentsline {paragraph}{Delete()\hspace {0.1cm}{\footnotesize \ttfamily [1/4]}}{79}{section*.171}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a397f277ed8b22e8ee60662f7b8b3ef06_a397f277ed8b22e8ee60662f7b8b3ef06}{{7.6.2}{79}{\texorpdfstring {Delete()}{Delete()}\hspace {0.1cm}{\footnotesize \ttfamily [1/4]}}{table.78}{}}
+\@writefile{toc}{\contentsline {paragraph}{Delete()\hspace {0.1cm}{\footnotesize \ttfamily [2/4]}}{79}{section*.172}\protected@file@percent }
+\gdef \LT@lxxix {\LT@entry
+ {3}{34.81357pt}\LT@entry
+ {3}{91.81425pt}}
+\gdef \LT@lxxx {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{91.31032pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_ac644ddb8e561a93366765ea0017771ec_ac644ddb8e561a93366765ea0017771ec}{{7.6.2}{80}{\texorpdfstring {Delete()}{Delete()}\hspace {0.1cm}{\footnotesize \ttfamily [2/4]}}{table.79}{}}
+\@writefile{toc}{\contentsline {paragraph}{Delete()\hspace {0.1cm}{\footnotesize \ttfamily [3/4]}}{80}{section*.173}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a5a01eb8f2adc1117b9df394acbe3c529_a5a01eb8f2adc1117b9df394acbe3c529}{{7.6.2}{80}{\texorpdfstring {Delete()}{Delete()}\hspace {0.1cm}{\footnotesize \ttfamily [3/4]}}{table.80}{}}
+\@writefile{toc}{\contentsline {paragraph}{Delete()\hspace {0.1cm}{\footnotesize \ttfamily [4/4]}}{80}{section*.174}\protected@file@percent }
+\gdef \LT@lxxxi {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{87.31429pt}}
+\gdef \LT@lxxxii {\LT@entry
+ {3}{77.04996pt}\LT@entry
+ {3}{373.95859pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a9824149809d0caf6b7853241fe518852_a9824149809d0caf6b7853241fe518852}{{7.6.2}{81}{\texorpdfstring {Delete()}{Delete()}\hspace {0.1cm}{\footnotesize \ttfamily [4/4]}}{figure.caption.175}{}}
+\@writefile{toc}{\contentsline {paragraph}{Find()}{81}{section*.176}\protected@file@percent }
+\gdef \LT@lxxxiii {\LT@entry
+ {3}{77.04996pt}\LT@entry
+ {3}{373.95859pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a6a20df93ae9409f4216c6f98cf334c30_a6a20df93ae9409f4216c6f98cf334c30}{{7.6.2}{82}{\texorpdfstring {Find()}{Find()}}{table.82}{}}
+\@writefile{toc}{\contentsline {paragraph}{FindGuids()}{82}{section*.177}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_aeb2b5afda3ab0df2521ff86e9d7c80b8_aeb2b5afda3ab0df2521ff86e9d7c80b8}{{7.6.2}{82}{\texorpdfstring {FindGuids()}{FindGuids()}}{table.83}{}}
+\@writefile{toc}{\contentsline {paragraph}{FindPaths()}{82}{section*.178}\protected@file@percent }
+\gdef \LT@lxxxiv {\LT@entry
+ {3}{77.04996pt}\LT@entry
+ {3}{373.95859pt}}
+\gdef \LT@lxxxv {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{161.51775pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_af8f67d95622e7afce379eaa04c82eaf6_af8f67d95622e7afce379eaa04c82eaf6}{{7.6.2}{83}{\texorpdfstring {FindPaths()}{FindPaths()}}{table.84}{}}
+\@writefile{toc}{\contentsline {paragraph}{ForceSave()}{83}{section*.179}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_ae11a13bfe131ec8b20a5a5667e75ec97_ae11a13bfe131ec8b20a5a5667e75ec97}{{7.6.2}{83}{\texorpdfstring {ForceSave()}{ForceSave()}}{table.85}{}}
+\@writefile{toc}{\contentsline {paragraph}{Import()\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{83}{section*.180}\protected@file@percent }
+\gdef \LT@lxxxvi {\LT@entry
+ {3}{41.81543pt}\LT@entry
+ {3}{126.4pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_ae3c1d18d1f26557851b440b5704d2188_ae3c1d18d1f26557851b440b5704d2188}{{7.6.2}{84}{\texorpdfstring {Import()}{Import()}\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{figure.caption.181}{}}
+\@writefile{toc}{\contentsline {paragraph}{Import()\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{84}{section*.182}\protected@file@percent }
+\gdef \LT@lxxxvii {\LT@entry
+ {3}{41.81543pt}\LT@entry
+ {3}{126.4pt}}
+\gdef \LT@lxxxviii {\LT@entry
+ {3}{41.81543pt}\LT@entry
+ {3}{126.4pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a39290f9fb99198f7df818bc5cafb0e1a_a39290f9fb99198f7df818bc5cafb0e1a}{{7.6.2}{85}{\texorpdfstring {Import()}{Import()}\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{table.87}{}}
+\@writefile{toc}{\contentsline {paragraph}{Import()\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{85}{section*.183}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a4dc6aff1e32f03b26ec0e310fb4233c0_a4dc6aff1e32f03b26ec0e310fb4233c0}{{7.6.2}{85}{\texorpdfstring {Import()}{Import()}\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{table.88}{}}
+\@writefile{toc}{\contentsline {paragraph}{ImportAndLoad$<$ T $>$()}{85}{section*.184}\protected@file@percent }
+\gdef \LT@lxxxix {\LT@entry
+ {3}{41.81543pt}\LT@entry
+ {3}{126.4pt}}
+\gdef \LT@xc {\LT@entry
+ {3}{18.29893pt}\LT@entry
+ {3}{151.60016pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a4f89e334c74903942522d0e0066d28b7_a4f89e334c74903942522d0e0066d28b7}{{7.6.2}{86}{\texorpdfstring {ImportAndLoad$<$ T $>$()}{ImportAndLoad< T >()}}{figure.caption.185}{}}
+\@writefile{toc}{\contentsline {paragraph}{Load$<$ T $>$()}{86}{section*.186}\protected@file@percent }
+\gdef \LT@xci {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{93.45229pt}}
+\gdef \LT@xcii {\LT@entry
+ {3}{18.29893pt}\LT@entry
+ {3}{143.09538pt}}
+\gdef \LT@xciii {\LT@entry
+ {3}{53.30824pt}\LT@entry
+ {3}{308.76347pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a1de889c18256fc25aa6f53507d448050_a1de889c18256fc25aa6f53507d448050}{{7.6.2}{87}{\texorpdfstring {Load$<$ T $>$()}{Load< T >()}}{table.92}{}}
+\@writefile{toc}{\contentsline {paragraph}{LoadAsync()}{87}{section*.187}\protected@file@percent }
+\gdef \LT@xciv {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{93.45229pt}}
+\gdef \LT@xcv {\LT@entry
+ {3}{18.29893pt}\LT@entry
+ {3}{143.09538pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a8cc280e1c5ddde8511c2af5541365b3f_a8cc280e1c5ddde8511c2af5541365b3f}{{7.6.2}{88}{\texorpdfstring {LoadAsync()}{LoadAsync()}}{table.93}{}}
+\@writefile{toc}{\contentsline {paragraph}{LoadMain$<$ T $>$()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{88}{section*.188}\protected@file@percent }
+\gdef \LT@xcvi {\LT@entry
+ {3}{29.80966pt}\LT@entry
+ {3}{83.93042pt}}
+\gdef \LT@xcvii {\LT@entry
+ {3}{18.29893pt}\LT@entry
+ {3}{143.09538pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a9702d12ef27f2d0dfd1f8201fbb37088_a9702d12ef27f2d0dfd1f8201fbb37088}{{7.6.2}{89}{\texorpdfstring {LoadMain$<$ T $>$()}{LoadMain< T >()}\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{table.95}{}}
+\@writefile{toc}{\contentsline {paragraph}{LoadMain$<$ T $>$()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{89}{section*.189}\protected@file@percent }
+\gdef \LT@xcviii {\LT@entry
+ {3}{59.32904pt}\LT@entry
+ {3}{351.68356pt}}
+\gdef \LT@xcix {\LT@entry
+ {3}{18.29893pt}\LT@entry
+ {3}{143.09538pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a8e86208ec0d709c8259baacdb5e70281_a8e86208ec0d709c8259baacdb5e70281}{{7.6.2}{90}{\texorpdfstring {LoadMain$<$ T $>$()}{LoadMain< T >()}\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{figure.caption.190}{}}
+\@writefile{toc}{\contentsline {paragraph}{LoadOrCreate$<$ T $>$()}{90}{section*.191}\protected@file@percent }
+\gdef \LT@c {\LT@entry
+ {3}{74.47575pt}\LT@entry
+ {3}{250.18405pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9dbc6b65d0efec125ca6ec75_a996c0cfd9dbc6b65d0efec125ca6ec75}{{7.6.2}{91}{\texorpdfstring {LoadOrCreate$<$ T $>$()}{LoadOrCreate< T >()}}{figure.caption.192}{}}
+\@writefile{toc}{\contentsline {paragraph}{Move()}{91}{section*.193}\protected@file@percent }
+\gdef \LT@ci {\LT@entry
+ {3}{73.81001pt}\LT@entry
+ {3}{331.31717pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_aac35e74243833f4963e3cf8ab1a4f845_aac35e74243833f4963e3cf8ab1a4f845}{{7.6.2}{92}{\texorpdfstring {Move()}{Move()}}{figure.caption.194}{}}
+\@writefile{toc}{\contentsline {paragraph}{OpenExternal()\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{92}{section*.195}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a0f433ac6de466ab7e094565c97af8db9_a0f433ac6de466ab7e094565c97af8db9}{{7.6.2}{92}{\texorpdfstring {OpenExternal()}{OpenExternal()}\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{table.101}{}}
+\gdef \LT@cii {\LT@entry
+ {3}{73.81001pt}\LT@entry
+ {3}{331.31717pt}}
+\gdef \LT@ciii {\LT@entry
+ {3}{73.81001pt}\LT@entry
+ {3}{331.31717pt}}
+\@writefile{toc}{\contentsline {paragraph}{OpenExternal()\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{93}{section*.196}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a009c655c2959b1ccd6b5a94a6da261e4_a009c655c2959b1ccd6b5a94a6da261e4}{{7.6.2}{93}{\texorpdfstring {OpenExternal()}{OpenExternal()}\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{table.102}{}}
+\@writefile{toc}{\contentsline {paragraph}{OpenExternal()\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{93}{section*.197}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396a4bfed873f01e8622033ab_a34bfcab396a4bfed873f01e8622033ab}{{7.6.2}{93}{\texorpdfstring {OpenExternal()}{OpenExternal()}\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{table.103}{}}
+\gdef \LT@civ {\LT@entry
+ {3}{67.62717pt}\LT@entry
+ {3}{160.01509pt}}
+\@writefile{toc}{\contentsline {paragraph}{Rename()}{94}{section*.198}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a07847a761e01e0d2fdd91c3cf6db50d2_a07847a761e01e0d2fdd91c3cf6db50d2}{{7.6.2}{94}{\texorpdfstring {Rename()}{Rename()}}{figure.caption.199}{}}
+\@writefile{toc}{\contentsline {paragraph}{Save()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{94}{section*.200}\protected@file@percent }
+\gdef \LT@cv {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{85.39763pt}}
+\gdef \LT@cvi {\LT@entry
+ {3}{29.80966pt}\LT@entry
+ {3}{98.95103pt}}
+\gdef \LT@cvii {\LT@entry
+ {3}{34.81357pt}\LT@entry
+ {3}{111.36185pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a0d399890489ab279eb57b94b19f2d19c_a0d399890489ab279eb57b94b19f2d19c}{{7.6.2}{95}{\texorpdfstring {Save()}{Save()}\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{table.105}{}}
+\@writefile{toc}{\contentsline {paragraph}{Save()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{95}{section*.201}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a648bb9fbc03561bb60612a090b8317d2_a648bb9fbc03561bb60612a090b8317d2}{{7.6.2}{95}{\texorpdfstring {Save()}{Save()}\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{table.106}{}}
+\@writefile{toc}{\contentsline {paragraph}{Trash()\hspace {0.1cm}{\footnotesize \ttfamily [1/4]}}{95}{section*.202}\protected@file@percent }
+\gdef \LT@cviii {\LT@entry
+ {3}{34.81357pt}\LT@entry
+ {3}{111.36185pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a5c0a13cf46027517d371dd2d3c49fdee_a5c0a13cf46027517d371dd2d3c49fdee}{{7.6.2}{96}{\texorpdfstring {Trash()}{Trash()}\hspace {0.1cm}{\footnotesize \ttfamily [1/4]}}{table.107}{}}
+\@writefile{toc}{\contentsline {paragraph}{Trash()\hspace {0.1cm}{\footnotesize \ttfamily [2/4]}}{96}{section*.203}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_aaecd043609a6fb930141fd2cf906b808_aaecd043609a6fb930141fd2cf906b808}{{7.6.2}{96}{\texorpdfstring {Trash()}{Trash()}\hspace {0.1cm}{\footnotesize \ttfamily [2/4]}}{table.108}{}}
+\@writefile{toc}{\contentsline {paragraph}{Trash()\hspace {0.1cm}{\footnotesize \ttfamily [3/4]}}{96}{section*.204}\protected@file@percent }
+\gdef \LT@cix {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{86.84637pt}}
+\gdef \LT@cx {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{106.86188pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a7b0aaffab801a8597c60daff4bccb177_a7b0aaffab801a8597c60daff4bccb177}{{7.6.2}{97}{\texorpdfstring {Trash()}{Trash()}\hspace {0.1cm}{\footnotesize \ttfamily [3/4]}}{table.109}{}}
+\@writefile{toc}{\contentsline {paragraph}{Trash()\hspace {0.1cm}{\footnotesize \ttfamily [4/4]}}{97}{section*.205}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.6.3}Property Documentation}{98}{subsubsection.7.6.3}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_file_a02854122d4449e39feb8c1dfdc8bd537_a02854122d4449e39feb8c1dfdc8bd537}{{7.6.3}{98}{Property Documentation}{subsubsection.7.6.3}{}}
+\@writefile{toc}{\contentsline {paragraph}{PathsNotDeleted}{98}{section*.207}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.7}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Importer Class Reference}{98}{subsection.7.7}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_importer}{{7.7}{98}{Asset.\+Importer Class Reference}{subsection.7.7}{}}
+\gdef \LT@cxi {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{93.45229pt}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.7.1}Detailed Description}{100}{subsubsection.7.7.1}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.7.2}Member Function Documentation}{100}{subsubsection.7.7.2}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_importer_a1a9a83a1db886ceb61eecb0933d27f30_a1a9a83a1db886ceb61eecb0933d27f30}{{7.7.2}{100}{Member Function Documentation}{subsubsection.7.7.2}{}}
+\@writefile{toc}{\contentsline {paragraph}{ApplySettings()}{100}{section*.210}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_importer_ad3ff923faecf93e9371b98d6217be0df_ad3ff923faecf93e9371b98d6217be0df}{{7.7.2}{100}{\texorpdfstring {ApplySettings()}{ApplySettings()}}{table.111}{}}
+\@writefile{toc}{\contentsline {paragraph}{ClearOverride()}{100}{section*.211}\protected@file@percent }
+\gdef \LT@cxii {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{93.45229pt}}
+\gdef \LT@cxiii {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{109.31897pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_importer_a5f0b2c4e6ed271387f7c924aa88e7d86_a5f0b2c4e6ed271387f7c924aa88e7d86}{{7.7.2}{101}{\texorpdfstring {ClearOverride()}{ClearOverride()}}{table.112}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetActive()\hspace {0.1cm}{\footnotesize \ttfamily [1/6]}}{101}{section*.212}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_importer_a357d4eb1c100686c1c135b3b1eb2aa70_a357d4eb1c100686c1c135b3b1eb2aa70}{{7.7.2}{101}{\texorpdfstring {GetActive()}{GetActive()}\hspace {0.1cm}{\footnotesize \ttfamily [1/6]}}{table.113}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetActive()\hspace {0.1cm}{\footnotesize \ttfamily [2/6]}}{101}{section*.213}\protected@file@percent }
+\gdef \LT@cxiv {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{93.45229pt}}
+\gdef \LT@cxv {\LT@entry
+ {3}{34.81357pt}\LT@entry
+ {3}{89.94252pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_importer_ad8916acf5622365b4fc9bfdbd7d64ba2_ad8916acf5622365b4fc9bfdbd7d64ba2}{{7.7.2}{102}{\texorpdfstring {GetActive()}{GetActive()}\hspace {0.1cm}{\footnotesize \ttfamily [2/6]}}{table.114}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetActive()\hspace {0.1cm}{\footnotesize \ttfamily [3/6]}}{102}{section*.214}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_importer_ac0bb98eb8d643f17f30448075c4e91bb_ac0bb98eb8d643f17f30448075c4e91bb}{{7.7.2}{102}{\texorpdfstring {GetActive()}{GetActive()}\hspace {0.1cm}{\footnotesize \ttfamily [3/6]}}{table.115}{}}
+\gdef \LT@cxvi {\LT@entry
+ {3}{34.81357pt}\LT@entry
+ {3}{89.94252pt}}
+\gdef \LT@cxvii {\LT@entry
+ {3}{29.80966pt}\LT@entry
+ {3}{97.79922pt}}
+\@writefile{toc}{\contentsline {paragraph}{GetActive()\hspace {0.1cm}{\footnotesize \ttfamily [4/6]}}{103}{section*.215}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_importer_a728bec89f163cf82119c37e0c73dfc0d_a728bec89f163cf82119c37e0c73dfc0d}{{7.7.2}{103}{\texorpdfstring {GetActive()}{GetActive()}\hspace {0.1cm}{\footnotesize \ttfamily [4/6]}}{table.116}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetActive()\hspace {0.1cm}{\footnotesize \ttfamily [5/6]}}{103}{section*.216}\protected@file@percent }
+\gdef \LT@cxviii {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{94.28946pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_importer_a80fd54a4f3cc505e2e9a42b4ca924656_a80fd54a4f3cc505e2e9a42b4ca924656}{{7.7.2}{104}{\texorpdfstring {GetActive()}{GetActive()}\hspace {0.1cm}{\footnotesize \ttfamily [5/6]}}{table.117}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetActive()\hspace {0.1cm}{\footnotesize \ttfamily [6/6]}}{104}{section*.217}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_importer_aa6e8b1b03c3aa82d03d45c885bf795b9_aa6e8b1b03c3aa82d03d45c885bf795b9}{{7.7.2}{104}{\texorpdfstring {GetActive()}{GetActive()}\hspace {0.1cm}{\footnotesize \ttfamily [6/6]}}{table.118}{}}
+\gdef \LT@cxix {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{109.31897pt}}
+\gdef \LT@cxx {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{93.45229pt}}
+\@writefile{toc}{\contentsline {paragraph}{GetAvailable()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{105}{section*.218}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_importer_aee616cbd3cbe9e7b8256aed74fe20254_aee616cbd3cbe9e7b8256aed74fe20254}{{7.7.2}{105}{\texorpdfstring {GetAvailable()}{GetAvailable()}\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{table.119}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetAvailable()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{105}{section*.219}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_importer_a88db6e9742be35bd23b068b28850b0d9_a88db6e9742be35bd23b068b28850b0d9}{{7.7.2}{105}{\texorpdfstring {GetAvailable()}{GetAvailable()}\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{table.120}{}}
+\gdef \LT@cxxi {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{85.8026pt}}
+\gdef \LT@cxxii {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{93.45229pt}}
+\@writefile{toc}{\contentsline {paragraph}{GetDefault()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{106}{section*.220}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_importer_a19ff837d74e7666438a7938cf0f7126d_a19ff837d74e7666438a7938cf0f7126d}{{7.7.2}{106}{\texorpdfstring {GetDefault()}{GetDefault()}\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{table.121}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetDefault()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{106}{section*.221}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_importer_a9662ee14bf9f8ee4a25ceb8017c00c63_a9662ee14bf9f8ee4a25ceb8017c00c63}{{7.7.2}{106}{\texorpdfstring {GetDefault()}{GetDefault()}\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{table.122}{}}
+\gdef \LT@cxxiii {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{85.8026pt}}
+\gdef \LT@cxxiv {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{93.45229pt}}
+\@writefile{toc}{\contentsline {paragraph}{GetOverride()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{107}{section*.222}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_importer_ad5caea48acd697af0a7787ebcb643512_ad5caea48acd697af0a7787ebcb643512}{{7.7.2}{107}{\texorpdfstring {GetOverride()}{GetOverride()}\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{table.123}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetOverride()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{107}{section*.223}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_importer_abf047cc58c6e0a054b319bb93fb9ae5d_abf047cc58c6e0a054b319bb93fb9ae5d}{{7.7.2}{107}{\texorpdfstring {GetOverride()}{GetOverride()}\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{table.124}{}}
+\gdef \LT@cxxv {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{93.45229pt}}
+\gdef \LT@cxxvi {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{93.45229pt}}
+\gdef \LT@cxxvii {\LT@entry
+ {3}{18.29893pt}\LT@entry
+ {3}{320.97586pt}}
+\@writefile{toc}{\contentsline {paragraph}{IsOverridden()}{108}{section*.224}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_importer_adc9eeee37a0d895ad4f37e583288e2e7_adc9eeee37a0d895ad4f37e583288e2e7}{{7.7.2}{108}{\texorpdfstring {IsOverridden()}{IsOverridden()}}{table.125}{}}
+\@writefile{toc}{\contentsline {paragraph}{SetOverride$<$ T $>$()}{108}{section*.225}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.8}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Label Class Reference}{109}{subsection.7.8}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_label}{{7.8}{109}{Asset.\+Label Class Reference}{subsection.7.8}{}}
+\gdef \LT@cxxviii {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{95.45016pt}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.8.1}Detailed Description}{110}{subsubsection.7.8.1}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.8.2}Member Function Documentation}{110}{subsubsection.7.8.2}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_label_ad2dd0c24ca248dac498e168471c296ae_ad2dd0c24ca248dac498e168471c296ae}{{7.8.2}{110}{Member Function Documentation}{subsubsection.7.8.2}{}}
+\@writefile{toc}{\contentsline {paragraph}{Add()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{110}{section*.228}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_label_a0db1d630d411ce9b9afaab8893ca433c_a0db1d630d411ce9b9afaab8893ca433c}{{7.8.2}{110}{\texorpdfstring {Add()}{Add()}\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{figure.caption.229}{}}
+\gdef \LT@cxxix {\LT@entry
+ {3}{36.30759pt}\LT@entry
+ {3}{95.45016pt}}
+\gdef \LT@cxxx {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{95.45016pt}}
+\@writefile{toc}{\contentsline {paragraph}{Add()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{111}{section*.230}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_label_ad0347f47f2f71137fe48133c157904ff_ad0347f47f2f71137fe48133c157904ff}{{7.8.2}{111}{\texorpdfstring {Add()}{Add()}\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{figure.caption.231}{}}
+\@writefile{toc}{\contentsline {paragraph}{ClearAll()}{111}{section*.232}\protected@file@percent }
+\gdef \LT@cxxxi {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{95.45016pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf}{{7.8.2}{112}{\texorpdfstring {ClearAll()}{ClearAll()}}{table.130}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetAll()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{112}{section*.233}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_label_af12ef27390e185dc2458c579d4a20aa2_af12ef27390e185dc2458c579d4a20aa2}{{7.8.2}{112}{\texorpdfstring {GetAll()}{GetAll()}\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{figure.caption.234}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetAll()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{113}{section*.235}\protected@file@percent }
+\gdef \LT@cxxxii {\LT@entry
+ {3}{29.80966pt}\LT@entry
+ {3}{83.93042pt}}
+\gdef \LT@cxxxiii {\LT@entry
+ {3}{36.30759pt}\LT@entry
+ {3}{95.45016pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_label_a82888b12b37f839fbabcb62e8fe169af_a82888b12b37f839fbabcb62e8fe169af}{{7.8.2}{114}{\texorpdfstring {GetAll()}{GetAll()}\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{table.132}{}}
+\@writefile{toc}{\contentsline {paragraph}{SetAll()}{114}{section*.236}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.9}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Package Class Reference}{115}{subsection.7.9}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_package}{{7.9}{115}{Asset.\+Package Class Reference}{subsection.7.9}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.9.1}Detailed Description}{115}{subsubsection.7.9.1}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.9.2}Member Function Documentation}{115}{subsubsection.7.9.2}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_package_aa1e7a86c8e5db3200570af6809a69f2a_aa1e7a86c8e5db3200570af6809a69f2a}{{7.9.2}{115}{Member Function Documentation}{subsubsection.7.9.2}{}}
+\@writefile{toc}{\contentsline {paragraph}{Export()\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{115}{section*.239}\protected@file@percent }
+\gdef \LT@cxxxiv {\LT@entry
+ {3}{64.79216pt}\LT@entry
+ {3}{189.18332pt}}
+\gdef \LT@cxxxv {\LT@entry
+ {3}{64.79216pt}\LT@entry
+ {3}{189.18332pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_package_a379ffb8db80b0c38b681a7580cd55e4c_a379ffb8db80b0c38b681a7580cd55e4c}{{7.9.2}{116}{\texorpdfstring {Export()}{Export()}\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{table.134}{}}
+\@writefile{toc}{\contentsline {paragraph}{Export()\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{116}{section*.240}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_package_a52bfc150210997b319e205ebd13e87a8_a52bfc150210997b319e205ebd13e87a8}{{7.9.2}{116}{\texorpdfstring {Export()}{Export()}\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{table.135}{}}
+\@writefile{toc}{\contentsline {paragraph}{Export()\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{116}{section*.241}\protected@file@percent }
+\gdef \LT@cxxxvi {\LT@entry
+ {3}{64.79216pt}\LT@entry
+ {3}{189.18332pt}}
+\gdef \LT@cxxxvii {\LT@entry
+ {3}{64.79216pt}\LT@entry
+ {3}{189.18332pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_package_ac41a72ed18bd8c2d23212f32791b0a2a_ac41a72ed18bd8c2d23212f32791b0a2a}{{7.9.2}{117}{\texorpdfstring {Export()}{Export()}\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{table.136}{}}
+\@writefile{toc}{\contentsline {paragraph}{Import()}{117}{section*.242}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_package_a99d2e4c6e164f99d46f0da6cb23d9aa9_a99d2e4c6e164f99d46f0da6cb23d9aa9}{{7.9.2}{117}{\texorpdfstring {Import()}{Import()}}{table.137}{}}
+\@writefile{toc}{\contentsline {paragraph}{ImportInteractive()}{117}{section*.243}\protected@file@percent }
+\gdef \LT@cxxxviii {\LT@entry
+ {3}{64.79216pt}\LT@entry
+ {3}{189.18332pt}}
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.10}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Path Class Reference}{118}{subsection.7.10}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path}{{7.10}{118}{Asset.\+Path Class Reference}{subsection.7.10}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.10.1}Detailed Description}{123}{subsubsection.7.10.1}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.10.2}Constructor \& Destructor Documentation}{123}{subsubsection.7.10.2}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a14cdcaf6215972759787431b363f763c_a14cdcaf6215972759787431b363f763c}{{7.10.2}{123}{Constructor \& Destructor Documentation}{subsubsection.7.10.2}{}}
+\@writefile{toc}{\contentsline {paragraph}{Path()\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{123}{section*.249}\protected@file@percent }
+\gdef \LT@cxxxix {\LT@entry
+ {3}{84.73557pt}\LT@entry
+ {3}{209.54959pt}}
+\gdef \LT@cxl {\LT@entry
+ {3}{53.19121pt}\LT@entry
+ {3}{394.27058pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_ab81690d1d82ddd90548e3d804b5afa29_ab81690d1d82ddd90548e3d804b5afa29}{{7.10.2}{124}{\texorpdfstring {Path()}{Path()}\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{table.139}{}}
+\@writefile{toc}{\contentsline {paragraph}{Path()\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{124}{section*.250}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a3d0d7574b95b19be03fdfd90e6c628e2_a3d0d7574b95b19be03fdfd90e6c628e2}{{7.10.2}{124}{\texorpdfstring {Path()}{Path()}\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{table.140}{}}
+\gdef \LT@cxli {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{95.45016pt}}
+\@writefile{toc}{\contentsline {paragraph}{Path()\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{125}{section*.251}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.10.3}Member Function Documentation}{125}{subsubsection.7.10.3}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a707c1a8b6f6fab6ad12485008e38ce41_a707c1a8b6f6fab6ad12485008e38ce41}{{7.10.3}{125}{Member Function Documentation}{subsubsection.7.10.3}{}}
+\@writefile{toc}{\contentsline {paragraph}{CreateFolders()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{125}{section*.253}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_aa30592adbaf54202ead85cd483107e55_aa30592adbaf54202ead85cd483107e55}{{7.10.3}{125}{\texorpdfstring {CreateFolders()}{CreateFolders()}\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{section*.253}{}}
+\gdef \LT@cxlii {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{99.36493pt}}
+\@writefile{toc}{\contentsline {paragraph}{CreateFolders()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{126}{section*.254}\protected@file@percent }
+\gdef \LT@cxliii {\LT@entry
+ {3}{33.31053pt}\LT@entry
+ {3}{103.85593pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a16e59bfb7ec5500d91fa1e8baaed7ec3_a16e59bfb7ec5500d91fa1e8baaed7ec3}{{7.10.3}{127}{\texorpdfstring {CreateFolders()}{CreateFolders()}\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{figure.caption.255}{}}
+\@writefile{toc}{\contentsline {paragraph}{Equals()\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{127}{section*.256}\protected@file@percent }
+\gdef \LT@cxliv {\LT@entry
+ {3}{33.31053pt}\LT@entry
+ {3}{92.47998pt}}
+\gdef \LT@cxlv {\LT@entry
+ {3}{24.80576pt}\LT@entry
+ {1}{21.08142pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a7fe15db208e12203a2ddd105a60446a0_a7fe15db208e12203a2ddd105a60446a0}{{7.10.3}{128}{\texorpdfstring {Equals()}{Equals()}\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{figure.caption.257}{}}
+\@writefile{toc}{\contentsline {paragraph}{Equals()\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{128}{section*.258}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a37cffbb9ed1db3b0e77664ad01b6fd01_a37cffbb9ed1db3b0e77664ad01b6fd01}{{7.10.3}{128}{\texorpdfstring {Equals()}{Equals()}\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{table.144}{}}
+\@writefile{toc}{\contentsline {paragraph}{Equals()\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{128}{section*.259}\protected@file@percent }
+\gdef \LT@cxlvi {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{64.43684pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_ae2e7b500cc4d1f97b7c6051181aa833f_ae2e7b500cc4d1f97b7c6051181aa833f}{{7.10.3}{129}{\texorpdfstring {Equals()}{Equals()}\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{figure.caption.260}{}}
+\@writefile{toc}{\contentsline {paragraph}{FileExists()}{129}{section*.261}\protected@file@percent }
+\gdef \LT@cxlvii {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{74.85847pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe0620f7baaa0c21543f455c_a18386e05fe0620f7baaa0c21543f455c}{{7.10.3}{130}{\texorpdfstring {FileExists()}{FileExists()}}{figure.caption.262}{}}
+\@writefile{toc}{\contentsline {paragraph}{FolderExists()}{130}{section*.263}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a18298002ca84eab9c56ac238dedc53e8_a18298002ca84eab9c56ac238dedc53e8}{{7.10.3}{130}{\texorpdfstring {FolderExists()}{FolderExists()}}{figure.caption.264}{}}
+\@writefile{toc}{\contentsline {paragraph}{FromMeta()}{130}{section*.265}\protected@file@percent }
+\gdef \LT@cxlviii {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{89.44724pt}}
+\gdef \LT@cxlix {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{95.45016pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8}{{7.10.3}{131}{\texorpdfstring {FromMeta()}{FromMeta()}}{table.148}{}}
+\@writefile{toc}{\contentsline {paragraph}{Get()\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{131}{section*.266}\protected@file@percent }
+\gdef \LT@cl {\LT@entry
+ {3}{38.8096pt}\LT@entry
+ {3}{77.79286pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a7b337848207b6bc5aebde6ae18e18d54_a7b337848207b6bc5aebde6ae18e18d54}{{7.10.3}{132}{\texorpdfstring {Get()}{Get()}\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{figure.caption.267}{}}
+\@writefile{toc}{\contentsline {paragraph}{Get()\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{132}{section*.268}\protected@file@percent }
+\gdef \LT@cli {\LT@entry
+ {3}{29.80966pt}\LT@entry
+ {3}{83.93042pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_afc3f6187881696bfef4a6ab5f09539fe_afc3f6187881696bfef4a6ab5f09539fe}{{7.10.3}{133}{\texorpdfstring {Get()}{Get()}\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{figure.caption.269}{}}
+\@writefile{toc}{\contentsline {paragraph}{Get()\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{133}{section*.270}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a942d35c4445bef86b8675fa4ee8893ee_a942d35c4445bef86b8675fa4ee8893ee}{{7.10.3}{133}{\texorpdfstring {Get()}{Get()}\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{table.151}{}}
+\gdef \LT@clii {\LT@entry
+ {3}{41.81543pt}\LT@entry
+ {3}{150.4pt}}
+\gdef \LT@cliii {\LT@entry
+ {3}{78.82281pt}\LT@entry
+ {3}{122.95367pt}}
+\@writefile{toc}{\contentsline {paragraph}{GetGuid()}{134}{section*.271}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_ab86e9330a2bab918bbad0e2cbadb58a8_ab86e9330a2bab918bbad0e2cbadb58a8}{{7.10.3}{134}{\texorpdfstring {GetGuid()}{GetGuid()}}{table.152}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetHashCode()}{134}{section*.272}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_ac408187e90e22a29a6c0bf20a0306532_ac408187e90e22a29a6c0bf20a0306532}{{7.10.3}{134}{\texorpdfstring {GetHashCode()}{GetHashCode()}}{section*.272}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetScene()}{134}{section*.273}\protected@file@percent }
+\gdef \LT@cliv {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{74.85847pt}}
+\gdef \LT@clv {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{219.41316pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a2d28ed0af9ce1a5b78cfea13d920fbf6_a2d28ed0af9ce1a5b78cfea13d920fbf6}{{7.10.3}{135}{\texorpdfstring {GetScene()}{GetScene()}}{table.153}{}}
+\@writefile{toc}{\contentsline {paragraph}{GetSubFolders()}{135}{section*.274}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_afe4dd70515ffc4868599918fc76c32b9_afe4dd70515ffc4868599918fc76c32b9}{{7.10.3}{135}{\texorpdfstring {GetSubFolders()}{GetSubFolders()}}{table.154}{}}
+\@writefile{toc}{\contentsline {paragraph}{IsValid()}{135}{section*.275}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_abb6aabf6ef3879246a9410a4b03cff6a_abb6aabf6ef3879246a9410a4b03cff6a}{{7.10.3}{136}{\texorpdfstring {IsValid()}{IsValid()}}{table.155}{}}
+\@writefile{toc}{\contentsline {paragraph}{OpenExternal()}{136}{section*.276}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a8f41e9c71f0bf56b0fe80ef591334128_a8f41e9c71f0bf56b0fe80ef591334128}{{7.10.3}{136}{\texorpdfstring {OpenExternal()}{OpenExternal()}}{section*.276}{}}
+\@writefile{toc}{\contentsline {paragraph}{operator Path()}{136}{section*.277}\protected@file@percent }
+\gdef \LT@clvi {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{213.23941pt}}
+\gdef \LT@clvii {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{54.93289pt}}
+\gdef \LT@clviii {\LT@entry
+ {3}{35.3175pt}\LT@entry
+ {3}{66.43472pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a294e1f7dac5c8247c2f32d50653ff2f6_a294e1f7dac5c8247c2f32d50653ff2f6}{{7.10.3}{137}{\texorpdfstring {operator Path()}{operator Path()}}{table.156}{}}
+\@writefile{toc}{\contentsline {paragraph}{operator String()}{137}{section*.278}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a0a26f18bf392e944599d94a316d0dd9c_a0a26f18bf392e944599d94a316d0dd9c}{{7.10.3}{137}{\texorpdfstring {operator String()}{operator String()}}{table.157}{}}
+\@writefile{toc}{\contentsline {paragraph}{operator"!=()\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{137}{section*.279}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a4061b79c8350f444d3691461e0f94e95_a4061b79c8350f444d3691461e0f94e95}{{7.10.3}{137}{\texorpdfstring {operator"!=()}{operator!=()}\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{table.158}{}}
+\@writefile{toc}{\contentsline {paragraph}{operator"!=()\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{137}{section*.280}\protected@file@percent }
+\gdef \LT@clix {\LT@entry
+ {3}{35.3175pt}\LT@entry
+ {3}{66.15611pt}}
+\gdef \LT@clx {\LT@entry
+ {3}{33.31053pt}\LT@entry
+ {3}{66.15611pt}}
+\gdef \LT@clxi {\LT@entry
+ {3}{35.3175pt}\LT@entry
+ {3}{66.43472pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_aeada9e1217349c548458a8b0ac2d1fca_aeada9e1217349c548458a8b0ac2d1fca}{{7.10.3}{138}{\texorpdfstring {operator"!=()}{operator!=()}\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{table.159}{}}
+\@writefile{toc}{\contentsline {paragraph}{operator"!=()\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{138}{section*.281}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_aba3e55bf4914578717ffd4ec9707c29f_aba3e55bf4914578717ffd4ec9707c29f}{{7.10.3}{138}{\texorpdfstring {operator"!=()}{operator!=()}\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{table.160}{}}
+\@writefile{toc}{\contentsline {paragraph}{operator==()\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{138}{section*.282}\protected@file@percent }
+\gdef \LT@clxii {\LT@entry
+ {3}{35.3175pt}\LT@entry
+ {3}{66.15611pt}}
+\gdef \LT@clxiii {\LT@entry
+ {3}{33.31053pt}\LT@entry
+ {3}{66.15611pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_ad65aa0fe0b7d3cd28b1d33eeac3548cd_ad65aa0fe0b7d3cd28b1d33eeac3548cd}{{7.10.3}{139}{\texorpdfstring {operator==()}{operator==()}\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{figure.caption.283}{}}
+\@writefile{toc}{\contentsline {paragraph}{operator==()\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{139}{section*.284}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a66235cf211f3a38e4149fa48fc685f67_a66235cf211f3a38e4149fa48fc685f67}{{7.10.3}{139}{\texorpdfstring {operator==()}{operator==()}\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{table.162}{}}
+\@writefile{toc}{\contentsline {paragraph}{operator==()\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{139}{section*.285}\protected@file@percent }
+\gdef \LT@clxiv {\LT@entry
+ {3}{102.86157pt}\LT@entry
+ {3}{314.58626pt}}
+\gdef \LT@clxv {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{79.58348pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_ab20dbdb9f71c4595e668cf0cb5f5ad7c_ab20dbdb9f71c4595e668cf0cb5f5ad7c}{{7.10.3}{140}{\texorpdfstring {operator==()}{operator==()}\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{table.163}{}}
+\@writefile{toc}{\contentsline {paragraph}{Rename()}{140}{section*.286}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_af4219b5ed1497e66fd495b412688ecf3_af4219b5ed1497e66fd495b412688ecf3}{{7.10.3}{140}{\texorpdfstring {Rename()}{Rename()}}{table.164}{}}
+\@writefile{toc}{\contentsline {paragraph}{ToMeta()}{140}{section*.287}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a012fbb0f39e57c0a44ec83dd408fcda3_a012fbb0f39e57c0a44ec83dd408fcda3}{{7.10.3}{140}{\texorpdfstring {ToMeta()}{ToMeta()}}{table.165}{}}
+\gdef \LT@clxvi {\LT@entry
+ {3}{34.81357pt}\LT@entry
+ {3}{59.29794pt}}
+\gdef \LT@clxvii {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{72.4376pt}}
+\@writefile{toc}{\contentsline {paragraph}{ToString()}{141}{section*.288}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a698b564cc49ed111277f35dac618252d_a698b564cc49ed111277f35dac618252d}{{7.10.3}{141}{\texorpdfstring {ToString()}{ToString()}}{section*.288}{}}
+\@writefile{toc}{\contentsline {paragraph}{ToStrings()}{141}{section*.289}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a90bc7d03e89ae59ba4653ff9109f0fec_a90bc7d03e89ae59ba4653ff9109f0fec}{{7.10.3}{141}{\texorpdfstring {ToStrings()}{ToStrings()}}{table.166}{}}
+\@writefile{toc}{\contentsline {paragraph}{UniquifyFileName()}{141}{section*.290}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.10.4}Property Documentation}{142}{subsubsection.7.10.4}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a54bbd4600c9787134d849c022cefe90e_a54bbd4600c9787134d849c022cefe90e}{{7.10.4}{142}{Property Documentation}{subsubsection.7.10.4}{}}
+\@writefile{toc}{\contentsline {paragraph}{AssetPath}{142}{section*.291}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_abd65d5ceb97d69f280079d5bfa8c75ea_abd65d5ceb97d69f280079d5bfa8c75ea}{{7.10.4}{142}{\texorpdfstring {AssetPath}{AssetPath}}{section*.291}{}}
+\@writefile{toc}{\contentsline {paragraph}{Exists}{142}{section*.292}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a60c6f10f04d962b32a6563c6b842b81c_a60c6f10f04d962b32a6563c6b842b81c}{{7.10.4}{142}{\texorpdfstring {Exists}{Exists}}{section*.292}{}}
+\@writefile{toc}{\contentsline {paragraph}{ExistsInFileSystem}{143}{section*.293}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a66d760f8140181f272630b4f226a56c5_a66d760f8140181f272630b4f226a56c5}{{7.10.4}{143}{\texorpdfstring {ExistsInFileSystem}{ExistsInFileSystem}}{section*.293}{}}
+\@writefile{toc}{\contentsline {paragraph}{Extension}{143}{section*.294}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a5066dd8adab56e4ea54fe46b9db3bd9a_a5066dd8adab56e4ea54fe46b9db3bd9a}{{7.10.4}{143}{\texorpdfstring {Extension}{Extension}}{section*.294}{}}
+\@writefile{toc}{\contentsline {paragraph}{FileName}{143}{section*.295}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a3693da5482c390a2146fe9dc6d38b197_a3693da5482c390a2146fe9dc6d38b197}{{7.10.4}{143}{\texorpdfstring {FileName}{FileName}}{section*.295}{}}
+\@writefile{toc}{\contentsline {paragraph}{FileNameWithoutExtension}{144}{section*.296}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a86fde1a385ff90d8002ae30a7c39cab9_a86fde1a385ff90d8002ae30a7c39cab9}{{7.10.4}{144}{\texorpdfstring {FileNameWithoutExtension}{FileNameWithoutExtension}}{section*.296}{}}
+\@writefile{toc}{\contentsline {paragraph}{FolderPath}{144}{section*.297}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_abd29565587282b14cb265fb107ae0093_abd29565587282b14cb265fb107ae0093}{{7.10.4}{144}{\texorpdfstring {FolderPath}{FolderPath}}{section*.297}{}}
+\@writefile{toc}{\contentsline {paragraph}{FullAssetsPath}{144}{section*.298}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a005a32c04a661e398af4f2a6f866242a_a005a32c04a661e398af4f2a6f866242a}{{7.10.4}{144}{\texorpdfstring {FullAssetsPath}{FullAssetsPath}}{section*.298}{}}
+\@writefile{toc}{\contentsline {paragraph}{FullLibraryPath}{145}{section*.299}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a6724fa2743590cd1a81b41b61102e7fe_a6724fa2743590cd1a81b41b61102e7fe}{{7.10.4}{145}{\texorpdfstring {FullLibraryPath}{FullLibraryPath}}{section*.299}{}}
+\@writefile{toc}{\contentsline {paragraph}{FullLogsPath}{145}{section*.300}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_ad031047c157ca34623ef3d8794c321a4_ad031047c157ca34623ef3d8794c321a4}{{7.10.4}{145}{\texorpdfstring {FullLogsPath}{FullLogsPath}}{section*.300}{}}
+\@writefile{toc}{\contentsline {paragraph}{FullPackagesPath}{145}{section*.301}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_af15b23e15a17c04d3a45a054a18d6443_af15b23e15a17c04d3a45a054a18d6443}{{7.10.4}{145}{\texorpdfstring {FullPackagesPath}{FullPackagesPath}}{section*.301}{}}
+\@writefile{toc}{\contentsline {paragraph}{FullPath}{145}{section*.302}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a3a4a27e26891e69d91d724cdf661656e_a3a4a27e26891e69d91d724cdf661656e}{{7.10.4}{145}{\texorpdfstring {FullPath}{FullPath}}{section*.302}{}}
+\@writefile{toc}{\contentsline {paragraph}{FullProjectPath}{145}{section*.303}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_ac7167ec9e63c61ff6a42a820af23747c_ac7167ec9e63c61ff6a42a820af23747c}{{7.10.4}{145}{\texorpdfstring {FullProjectPath}{FullProjectPath}}{section*.303}{}}
+\@writefile{toc}{\contentsline {paragraph}{FullProjectSettingsPath}{146}{section*.304}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a77508ff7f04d30b6160f254e53adbeb6_a77508ff7f04d30b6160f254e53adbeb6}{{7.10.4}{146}{\texorpdfstring {FullProjectSettingsPath}{FullProjectSettingsPath}}{section*.304}{}}
+\@writefile{toc}{\contentsline {paragraph}{FullProjectTempPath}{146}{section*.305}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a2fcfa4fd2c52adca3fa729bf78e72d3b_a2fcfa4fd2c52adca3fa729bf78e72d3b}{{7.10.4}{146}{\texorpdfstring {FullProjectTempPath}{FullProjectTempPath}}{section*.305}{}}
+\@writefile{toc}{\contentsline {paragraph}{FullUserSettingsPath}{146}{section*.306}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a66a3fc7176ae79e7e9ee85df99c5ff7c_a66a3fc7176ae79e7e9ee85df99c5ff7c}{{7.10.4}{146}{\texorpdfstring {FullUserSettingsPath}{FullUserSettingsPath}}{section*.306}{}}
+\@writefile{toc}{\contentsline {paragraph}{Guid}{146}{section*.307}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a0084f5ad8a13c505013748101a81b1df_a0084f5ad8a13c505013748101a81b1df}{{7.10.4}{146}{\texorpdfstring {Guid}{Guid}}{section*.307}{}}
+\@writefile{toc}{\contentsline {paragraph}{MetaPath}{147}{section*.308}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a0247c4e1ee282e42b31b89c70bebe85f_a0247c4e1ee282e42b31b89c70bebe85f}{{7.10.4}{147}{\texorpdfstring {MetaPath}{MetaPath}}{section*.308}{}}
+\@writefile{toc}{\contentsline {paragraph}{SubFolders}{147}{section*.309}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_path_a095641cd17b35305e83b4dcee0704e0b_a095641cd17b35305e83b4dcee0704e0b}{{7.10.4}{147}{\texorpdfstring {SubFolders}{SubFolders}}{section*.309}{}}
+\@writefile{toc}{\contentsline {paragraph}{UniqueFilePath}{147}{section*.310}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.11}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Status Class Reference}{148}{subsection.7.11}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_status}{{7.11}{148}{Asset.\+Status Class Reference}{subsection.7.11}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.11.1}Detailed Description}{148}{subsubsection.7.11.1}\protected@file@percent }
+\gdef \LT@clxviii {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{95.45016pt}}
+\gdef \LT@clxix {\LT@entry
+ {3}{46.3154pt}\LT@entry
+ {3}{93.44319pt}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.11.2}Member Function Documentation}{149}{subsubsection.7.11.2}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_status_a7e01a4788d69647e6e8340c25603bf55_a7e01a4788d69647e6e8340c25603bf55}{{7.11.2}{149}{Member Function Documentation}{subsubsection.7.11.2}{}}
+\@writefile{toc}{\contentsline {paragraph}{IsForeign()}{149}{section*.313}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_status_afcaefd0248a5d2a59a833699fb4f1d51_afcaefd0248a5d2a59a833699fb4f1d51}{{7.11.2}{149}{\texorpdfstring {IsForeign()}{IsForeign()}}{table.168}{}}
+\@writefile{toc}{\contentsline {paragraph}{IsImported()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{149}{section*.314}\protected@file@percent }
+\gdef \LT@clxx {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{79.58348pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_status_a377ccf450db930a010100f0d89b09285_a377ccf450db930a010100f0d89b09285}{{7.11.2}{150}{\texorpdfstring {IsImported()}{IsImported()}\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{table.169}{}}
+\@writefile{toc}{\contentsline {paragraph}{IsImported()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{150}{section*.315}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_status_a8d5877df6d14dca99ed79ec50f067783_a8d5877df6d14dca99ed79ec50f067783}{{7.11.2}{150}{\texorpdfstring {IsImported()}{IsImported()}\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{table.170}{}}
+\@writefile{toc}{\contentsline {paragraph}{IsLoaded()}{150}{section*.316}\protected@file@percent }
+\gdef \LT@clxxi {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{79.58348pt}}
+\gdef \LT@clxxii {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{95.45016pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_status_a2e6860cd8479a284c3c81f4377ed100a_a2e6860cd8479a284c3c81f4377ed100a}{{7.11.2}{151}{\texorpdfstring {IsLoaded()}{IsLoaded()}}{table.171}{}}
+\@writefile{toc}{\contentsline {paragraph}{IsMain()}{151}{section*.317}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_status_ae18940b59316f20181bba69e710e0cba_ae18940b59316f20181bba69e710e0cba}{{7.11.2}{151}{\texorpdfstring {IsMain()}{IsMain()}}{table.172}{}}
+\@writefile{toc}{\contentsline {paragraph}{IsNative()}{151}{section*.318}\protected@file@percent }
+\gdef \LT@clxxiii {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{95.45016pt}}
+\gdef \LT@clxxiv {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{208.10088pt}}
+\gdef \LT@clxxv {\LT@entry
+ {3}{34.30963pt}\LT@entry
+ {3}{95.45016pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_status_a6b15799af1dbe039078b5e8c2e435dc2_a6b15799af1dbe039078b5e8c2e435dc2}{{7.11.2}{152}{\texorpdfstring {IsNative()}{IsNative()}}{table.173}{}}
+\@writefile{toc}{\contentsline {paragraph}{IsScene()}{152}{section*.319}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_status_ac715a31d20c073c37844f5d8839496cd_ac715a31d20c073c37844f5d8839496cd}{{7.11.2}{152}{\texorpdfstring {IsScene()}{IsScene()}}{table.174}{}}
+\@writefile{toc}{\contentsline {paragraph}{IsSub()}{152}{section*.320}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.12}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Sub\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Asset Class Reference}{153}{subsection.7.12}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_sub_asset}{{7.12}{153}{Asset.\+Sub\+Asset Class Reference}{subsection.7.12}{}}
+\gdef \LT@clxxvi {\LT@entry
+ {3}{83.83574pt}\LT@entry
+ {3}{274.04216pt}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.12.1}Detailed Description}{154}{subsubsection.7.12.1}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.12.2}Member Function Documentation}{154}{subsubsection.7.12.2}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_sub_asset_a651286de3f2c9fef50eb5720f0a1b3a8_a651286de3f2c9fef50eb5720f0a1b3a8}{{7.12.2}{154}{Member Function Documentation}{subsubsection.7.12.2}{}}
+\@writefile{toc}{\contentsline {paragraph}{Add()}{154}{section*.323}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_sub_asset_aba5beee6f12d0eed16af62bd8e96d6e6_aba5beee6f12d0eed16af62bd8e96d6e6}{{7.12.2}{154}{\texorpdfstring {Add()}{Add()}}{table.176}{}}
+\@writefile{toc}{\contentsline {paragraph}{Extract()}{154}{section*.324}\protected@file@percent }
+\gdef \LT@clxxvii {\LT@entry
+ {3}{74.47575pt}\LT@entry
+ {3}{135.11241pt}}
+\gdef \LT@clxxviii {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{93.45229pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_sub_asset_a5a074e1dfad018aec7956375a8cf6099_a5a074e1dfad018aec7956375a8cf6099}{{7.12.2}{155}{\texorpdfstring {Extract()}{Extract()}}{table.177}{}}
+\@writefile{toc}{\contentsline {paragraph}{LoadAll()}{155}{section*.325}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_sub_asset_aa1295ba7d9693917c8af65241aa0d3ae_aa1295ba7d9693917c8af65241aa0d3ae}{{7.12.2}{155}{\texorpdfstring {LoadAll()}{LoadAll()}}{table.178}{}}
+\gdef \LT@clxxix {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{93.45229pt}}
+\gdef \LT@clxxx {\LT@entry
+ {3}{49.81639pt}\LT@entry
+ {3}{107.95097pt}}
+\@writefile{toc}{\contentsline {paragraph}{LoadVisible()}{156}{section*.326}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_sub_asset_af2517f14782bec5f449da4bc4937cf8c_af2517f14782bec5f449da4bc4937cf8c}{{7.12.2}{156}{\texorpdfstring {LoadVisible()}{LoadVisible()}}{table.179}{}}
+\@writefile{toc}{\contentsline {paragraph}{Remove()}{156}{section*.327}\protected@file@percent }
+\gdef \LT@clxxxi {\LT@entry
+ {3}{49.81639pt}\LT@entry
+ {3}{243.61392pt}}
+\gdef \LT@clxxxii {\LT@entry
+ {3}{49.81639pt}\LT@entry
+ {3}{243.61392pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_sub_asset_a61bfe373deb21386f749d2f947da5476_a61bfe373deb21386f749d2f947da5476}{{7.12.2}{157}{\texorpdfstring {Remove()}{Remove()}}{table.180}{}}
+\@writefile{toc}{\contentsline {paragraph}{SetMain()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{157}{section*.328}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_sub_asset_ac4fb08375dcad548d850eec212582519_ac4fb08375dcad548d850eec212582519}{{7.12.2}{157}{\texorpdfstring {SetMain()}{SetMain()}\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{table.181}{}}
+\@writefile{toc}{\contentsline {paragraph}{SetMain()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{157}{section*.329}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.13}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Version\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Control Class Reference}{158}{subsection.7.13}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_version_control}{{7.13}{158}{Asset.\+Version\+Control Class Reference}{subsection.7.13}{}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.13.1}Detailed Description}{159}{subsubsection.7.13.1}\protected@file@percent }
+\gdef \LT@clxxxiii {\LT@entry
+ {3}{41.81543pt}\LT@entry
+ {3}{126.4pt}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.13.2}Member Function Documentation}{160}{subsubsection.7.13.2}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_version_control_a7f6bbb0782e7f7635706b0e0bc921341_a7f6bbb0782e7f7635706b0e0bc921341}{{7.13.2}{160}{Member Function Documentation}{subsubsection.7.13.2}{}}
+\@writefile{toc}{\contentsline {paragraph}{CanMakeEditable()\hspace {0.1cm}{\footnotesize \ttfamily [1/5]}}{160}{section*.333}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_version_control_a2e5d0d18f7ef51ec5ea8a79689584125_a2e5d0d18f7ef51ec5ea8a79689584125}{{7.13.2}{160}{\texorpdfstring {CanMakeEditable()}{CanMakeEditable()}\hspace {0.1cm}{\footnotesize \ttfamily [1/5]}}{figure.caption.334}{}}
+\gdef \LT@clxxxiv {\LT@entry
+ {3}{80.29868pt}\LT@entry
+ {3}{333.40454pt}}
+\gdef \LT@clxxxv {\LT@entry
+ {3}{41.81543pt}\LT@entry
+ {3}{126.4pt}}
+\@writefile{toc}{\contentsline {paragraph}{CanMakeEditable()\hspace {0.1cm}{\footnotesize \ttfamily [2/5]}}{161}{section*.335}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9}{{7.13.2}{161}{\texorpdfstring {CanMakeEditable()}{CanMakeEditable()}\hspace {0.1cm}{\footnotesize \ttfamily [2/5]}}{table.184}{}}
+\@writefile{toc}{\contentsline {paragraph}{CanMakeEditable()\hspace {0.1cm}{\footnotesize \ttfamily [3/5]}}{161}{section*.336}\protected@file@percent }
+\gdef \LT@clxxxvi {\LT@entry
+ {3}{80.29868pt}\LT@entry
+ {3}{333.40454pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_version_control_a805c285250d01e10b7eafe7f8bea9f3b_a805c285250d01e10b7eafe7f8bea9f3b}{{7.13.2}{162}{\texorpdfstring {CanMakeEditable()}{CanMakeEditable()}\hspace {0.1cm}{\footnotesize \ttfamily [3/5]}}{figure.caption.337}{}}
+\@writefile{toc}{\contentsline {paragraph}{CanMakeEditable()\hspace {0.1cm}{\footnotesize \ttfamily [4/5]}}{162}{section*.338}\protected@file@percent }
+\gdef \LT@clxxxvii {\LT@entry
+ {3}{80.29868pt}\LT@entry
+ {3}{333.40454pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_version_control_ac136cd1d20cf4aacbca01dd9d23f4d22_ac136cd1d20cf4aacbca01dd9d23f4d22}{{7.13.2}{163}{\texorpdfstring {CanMakeEditable()}{CanMakeEditable()}\hspace {0.1cm}{\footnotesize \ttfamily [4/5]}}{table.186}{}}
+\@writefile{toc}{\contentsline {paragraph}{CanMakeEditable()\hspace {0.1cm}{\footnotesize \ttfamily [5/5]}}{163}{section*.339}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_version_control_a14fd4d4a0447ac1dacde2ae694c39339_a14fd4d4a0447ac1dacde2ae694c39339}{{7.13.2}{163}{\texorpdfstring {CanMakeEditable()}{CanMakeEditable()}\hspace {0.1cm}{\footnotesize \ttfamily [5/5]}}{table.187}{}}
+\@writefile{toc}{\contentsline {paragraph}{IsEditable()\hspace {0.1cm}{\footnotesize \ttfamily [1/4]}}{163}{section*.340}\protected@file@percent }
+\gdef \LT@clxxxviii {\LT@entry
+ {3}{41.81543pt}\LT@entry
+ {3}{126.4pt}}
+\gdef \LT@clxxxix {\LT@entry
+ {3}{80.29868pt}\LT@entry
+ {3}{277.00278pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_version_control_ad8a9e3f4c51382aa26b9de11e0f9d0a6_ad8a9e3f4c51382aa26b9de11e0f9d0a6}{{7.13.2}{164}{\texorpdfstring {IsEditable()}{IsEditable()}\hspace {0.1cm}{\footnotesize \ttfamily [1/4]}}{table.188}{}}
+\@writefile{toc}{\contentsline {paragraph}{IsEditable()\hspace {0.1cm}{\footnotesize \ttfamily [2/4]}}{164}{section*.341}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_version_control_a01231010fea0f9fbcadb4708e84c668a_a01231010fea0f9fbcadb4708e84c668a}{{7.13.2}{164}{\texorpdfstring {IsEditable()}{IsEditable()}\hspace {0.1cm}{\footnotesize \ttfamily [2/4]}}{table.189}{}}
+\gdef \LT@cxc {\LT@entry
+ {3}{80.29868pt}\LT@entry
+ {3}{277.00278pt}}
+\gdef \LT@cxci {\LT@entry
+ {3}{80.29868pt}\LT@entry
+ {3}{277.00278pt}}
+\@writefile{toc}{\contentsline {paragraph}{IsEditable()\hspace {0.1cm}{\footnotesize \ttfamily [3/4]}}{165}{section*.342}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_version_control_ad786f63df78897c77c7b158140e97ded_ad786f63df78897c77c7b158140e97ded}{{7.13.2}{165}{\texorpdfstring {IsEditable()}{IsEditable()}\hspace {0.1cm}{\footnotesize \ttfamily [3/4]}}{table.190}{}}
+\@writefile{toc}{\contentsline {paragraph}{IsEditable()\hspace {0.1cm}{\footnotesize \ttfamily [4/4]}}{165}{section*.343}\protected@file@percent }
+\gdef \LT@cxcii {\LT@entry
+ {3}{41.81543pt}\LT@entry
+ {3}{126.4pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_version_control_a98a4620e539f0cf83a99cb54b154be49_a98a4620e539f0cf83a99cb54b154be49}{{7.13.2}{166}{\texorpdfstring {IsEditable()}{IsEditable()}\hspace {0.1cm}{\footnotesize \ttfamily [4/4]}}{table.191}{}}
+\@writefile{toc}{\contentsline {paragraph}{IsMetaEditable()}{166}{section*.344}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_version_control_a43dd5490eaead3d1d8e0b72879e5d2f8_a43dd5490eaead3d1d8e0b72879e5d2f8}{{7.13.2}{166}{\texorpdfstring {IsMetaEditable()}{IsMetaEditable()}}{table.192}{}}
+\@writefile{toc}{\contentsline {paragraph}{MakeEditable()\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{166}{section*.345}\protected@file@percent }
+\gdef \LT@cxciii {\LT@entry
+ {3}{30.3136pt}\LT@entry
+ {3}{79.58348pt}}
+\gdef \LT@cxciv {\LT@entry
+ {3}{80.29868pt}\LT@entry
+ {3}{277.00278pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_version_control_ab13913c709a6e8bc08412828d8ce86af_ab13913c709a6e8bc08412828d8ce86af}{{7.13.2}{167}{\texorpdfstring {MakeEditable()}{MakeEditable()}\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{table.193}{}}
+\@writefile{toc}{\contentsline {paragraph}{MakeEditable()\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{167}{section*.346}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_version_control_a0418e950cb362718e024a62216d057dc_a0418e950cb362718e024a62216d057dc}{{7.13.2}{167}{\texorpdfstring {MakeEditable()}{MakeEditable()}\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{table.194}{}}
+\@writefile{toc}{\contentsline {paragraph}{MakeEditable()\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{167}{section*.347}\protected@file@percent }
+\gdef \LT@cxcv {\LT@entry
+ {3}{80.29868pt}\LT@entry
+ {3}{277.00278pt}}
+\gdef \LT@cxcvi {\LT@entry
+ {3}{80.29868pt}\LT@entry
+ {3}{294.45398pt}}
+\newlabel{class_code_smile_editor_1_1_asset_1_1_version_control_ad298d4e4fcf5043ab4d20e64bce3617f_ad298d4e4fcf5043ab4d20e64bce3617f}{{7.13.2}{168}{\texorpdfstring {MakeEditable()}{MakeEditable()}\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{table.195}{}}
+\@writefile{toc}{\contentsline {paragraph}{MakeEditableInteractive()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{168}{section*.348}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_1_1_version_control_a8eac8f1fdbd0e9009799ceeb46dc6b5c_a8eac8f1fdbd0e9009799ceeb46dc6b5c}{{7.13.2}{168}{\texorpdfstring {MakeEditableInteractive()}{MakeEditableInteractive()}\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{table.196}{}}
+\gdef \LT@cxcvii {\LT@entry
+ {3}{80.29868pt}\LT@entry
+ {3}{294.45398pt}}
+\@writefile{toc}{\contentsline {paragraph}{MakeEditableInteractive()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{169}{section*.349}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsection}{\numberline {7.14}Asset\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Load\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Exception Class Reference}{169}{subsection.7.14}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_load_exception}{{7.14}{169}{Asset\+Load\+Exception Class Reference}{subsection.7.14}{}}
+\gdef \LT@cxcviii {\LT@entry
+ {3}{49.31245pt}\LT@entry
+ {3}{90.93265pt}}
+\gdef \LT@cxcix {\LT@entry
+ {3}{72.32489pt}\LT@entry
+ {3}{137.55139pt}}
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.14.1}Detailed Description}{171}{subsubsection.7.14.1}\protected@file@percent }
+\@writefile{toc}{\contentsline {subsubsection}{\numberline {7.14.2}Constructor \& Destructor Documentation}{171}{subsubsection.7.14.2}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_load_exception_a14844af4b9e1ad1822b11d8e7a99b991_a14844af4b9e1ad1822b11d8e7a99b991}{{7.14.2}{171}{Constructor \& Destructor Documentation}{subsubsection.7.14.2}{}}
+\@writefile{toc}{\contentsline {paragraph}{AssetLoadException()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{171}{section*.353}\protected@file@percent }
+\newlabel{class_code_smile_editor_1_1_asset_load_exception_a19e920f646406abb17bf92089cd69b8f_a19e920f646406abb17bf92089cd69b8f}{{7.14.2}{171}{\texorpdfstring {AssetLoadException()}{AssetLoadException()}\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{table.198}{}}
+\@writefile{toc}{\contentsline {paragraph}{AssetLoadException()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{171}{section*.354}\protected@file@percent }
+\@writefile{toc}{\contentsline {section}{Index}{173}{section*.355}\protected@file@percent }
+\gdef \@abspage@last{180}
diff --git a/Docs~/latex/refman.idx b/Docs~/latex/refman.idx
new file mode 100644
index 00000000..37d29fdd
--- /dev/null
+++ b/Docs~/latex/refman.idx
@@ -0,0 +1,540 @@
+\indexentry{CodeSmile AssetDatabase@{CodeSmile AssetDatabase}|hyperpage}{1}
+\indexentry{Change Log@{Change Log}|hyperpage}{5}
+\indexentry{CodeSmile Packages -\/ Getting Started@{CodeSmile Packages -\/ Getting Started}|hyperpage}{8}
+\indexentry{CodeSmileEditor@{CodeSmileEditor}|hyperpage}{10}
+\indexentry{Asset@{Asset}|hyperpage}{10}
+\indexentry{Asset@{Asset}!Asset@{Asset}|hyperpage}{15}
+\indexentry{Asset@{Asset}!Asset@{Asset}|hyperpage}{15}
+\indexentry{Asset@{Asset}!Asset@{Asset}|hyperpage}{16}
+\indexentry{Asset@{Asset}!Asset@{Asset}|hyperpage}{16}
+\indexentry{Asset@{Asset}!Asset@{Asset}|hyperpage}{16}
+\indexentry{Asset@{Asset}!Asset@{Asset}|hyperpage}{16}
+\indexentry{Asset@{Asset}!Asset@{Asset}|hyperpage}{17}
+\indexentry{Asset@{Asset}!Asset@{Asset}|hyperpage}{17}
+\indexentry{Asset@{Asset}!Asset@{Asset}|hyperpage}{18}
+\indexentry{Asset@{Asset}!Asset@{Asset}|hyperpage}{18}
+\indexentry{Asset@{Asset}!Asset@{Asset}|hyperpage}{18}
+\indexentry{Asset@{Asset}!Asset@{Asset}|hyperpage}{18}
+\indexentry{Asset@{Asset}!AddLabel@{AddLabel}|hyperpage}{19}
+\indexentry{AddLabel@{AddLabel}!Asset@{Asset}|hyperpage}{19}
+\indexentry{Asset@{Asset}!AddLabels@{AddLabels}|hyperpage}{19}
+\indexentry{AddLabels@{AddLabels}!Asset@{Asset}|hyperpage}{19}
+\indexentry{Asset@{Asset}!AddSubAsset@{AddSubAsset}|hyperpage}{19}
+\indexentry{AddSubAsset@{AddSubAsset}!Asset@{Asset}|hyperpage}{19}
+\indexentry{Asset@{Asset}!CanMove@{CanMove}|hyperpage}{20}
+\indexentry{CanMove@{CanMove}!Asset@{Asset}|hyperpage}{20}
+\indexentry{Asset@{Asset}!CanOpenInEditor@{CanOpenInEditor}|hyperpage}{20}
+\indexentry{CanOpenInEditor@{CanOpenInEditor}!Asset@{Asset}|hyperpage}{20}
+\indexentry{Asset@{Asset}!ClearLabels@{ClearLabels}|hyperpage}{21}
+\indexentry{ClearLabels@{ClearLabels}!Asset@{Asset}|hyperpage}{21}
+\indexentry{Asset@{Asset}!Delete@{Delete}|hyperpage}{21}
+\indexentry{Delete@{Delete}!Asset@{Asset}|hyperpage}{21}
+\indexentry{Asset@{Asset}!Duplicate@{Duplicate}|hyperpage}{22}
+\indexentry{Duplicate@{Duplicate}!Asset@{Asset}|hyperpage}{22}
+\indexentry{Asset@{Asset}!ExportPackage@{ExportPackage}|hyperpage}{22}
+\indexentry{ExportPackage@{ExportPackage}!Asset@{Asset}|hyperpage}{22}
+\indexentry{Asset@{Asset}!ForceSave@{ForceSave}|hyperpage}{23}
+\indexentry{ForceSave@{ForceSave}!Asset@{Asset}|hyperpage}{23}
+\indexentry{Asset@{Asset}!GetFileId@{GetFileId}|hyperpage}{23}
+\indexentry{GetFileId@{GetFileId}!Asset@{Asset}|hyperpage}{23}
+\indexentry{Asset@{Asset}!GetGuid@{GetGuid}|hyperpage}{23}
+\indexentry{GetGuid@{GetGuid}!Asset@{Asset}|hyperpage}{23}
+\indexentry{Asset@{Asset}!GetGuidAndFileId@{GetGuidAndFileId}|hyperpage}{24}
+\indexentry{GetGuidAndFileId@{GetGuidAndFileId}!Asset@{Asset}|hyperpage}{24}
+\indexentry{Asset@{Asset}!GetIcon@{GetIcon}|hyperpage}{25}
+\indexentry{GetIcon@{GetIcon}!Asset@{Asset}|hyperpage}{25}
+\indexentry{Asset@{Asset}!GetIcon@{GetIcon}|hyperpage}{25}
+\indexentry{GetIcon@{GetIcon}!Asset@{Asset}|hyperpage}{25}
+\indexentry{Asset@{Asset}!GetLastErrorMessage@{GetLastErrorMessage}|hyperpage}{26}
+\indexentry{GetLastErrorMessage@{GetLastErrorMessage}!Asset@{Asset}|hyperpage}{26}
+\indexentry{Asset@{Asset}!GetMain$<$ T $>$@{GetMain$<$ T $>$}|hyperpage}{27}
+\indexentry{GetMain$<$ T $>$@{GetMain$<$ T $>$}!Asset@{Asset}|hyperpage}{27}
+\indexentry{Asset@{Asset}!GetMainType@{GetMainType}|hyperpage}{27}
+\indexentry{GetMainType@{GetMainType}!Asset@{Asset}|hyperpage}{27}
+\indexentry{Asset@{Asset}!GetMainType@{GetMainType}|hyperpage}{28}
+\indexentry{GetMainType@{GetMainType}!Asset@{Asset}|hyperpage}{28}
+\indexentry{Asset@{Asset}!GetSubType@{GetSubType}|hyperpage}{29}
+\indexentry{GetSubType@{GetSubType}!Asset@{Asset}|hyperpage}{29}
+\indexentry{Asset@{Asset}!Load$<$ T $>$@{Load$<$ T $>$}|hyperpage}{29}
+\indexentry{Load$<$ T $>$@{Load$<$ T $>$}!Asset@{Asset}|hyperpage}{29}
+\indexentry{Asset@{Asset}!Move@{Move}|hyperpage}{30}
+\indexentry{Move@{Move}!Asset@{Asset}|hyperpage}{30}
+\indexentry{Asset@{Asset}!OpenExternal@{OpenExternal}|hyperpage}{31}
+\indexentry{OpenExternal@{OpenExternal}!Asset@{Asset}|hyperpage}{31}
+\indexentry{Asset@{Asset}!operator Asset@{operator Asset}|hyperpage}{31}
+\indexentry{operator Asset@{operator Asset}!Asset@{Asset}|hyperpage}{31}
+\indexentry{Asset@{Asset}!operator Asset@{operator Asset}|hyperpage}{32}
+\indexentry{operator Asset@{operator Asset}!Asset@{Asset}|hyperpage}{32}
+\indexentry{Asset@{Asset}!operator Asset@{operator Asset}|hyperpage}{32}
+\indexentry{operator Asset@{operator Asset}!Asset@{Asset}|hyperpage}{32}
+\indexentry{Asset@{Asset}!operator Asset@{operator Asset}|hyperpage}{32}
+\indexentry{operator Asset@{operator Asset}!Asset@{Asset}|hyperpage}{32}
+\indexentry{Asset@{Asset}!operator Object@{operator Object}|hyperpage}{33}
+\indexentry{operator Object@{operator Object}!Asset@{Asset}|hyperpage}{33}
+\indexentry{Asset@{Asset}!RemoveSubAsset@{RemoveSubAsset}|hyperpage}{33}
+\indexentry{RemoveSubAsset@{RemoveSubAsset}!Asset@{Asset}|hyperpage}{33}
+\indexentry{Asset@{Asset}!Rename@{Rename}|hyperpage}{33}
+\indexentry{Rename@{Rename}!Asset@{Asset}|hyperpage}{33}
+\indexentry{Asset@{Asset}!Save@{Save}|hyperpage}{34}
+\indexentry{Save@{Save}!Asset@{Asset}|hyperpage}{34}
+\indexentry{Asset@{Asset}!SaveAs@{SaveAs}|hyperpage}{34}
+\indexentry{SaveAs@{SaveAs}!Asset@{Asset}|hyperpage}{34}
+\indexentry{Asset@{Asset}!SaveAsNew@{SaveAsNew}|hyperpage}{35}
+\indexentry{SaveAsNew@{SaveAsNew}!Asset@{Asset}|hyperpage}{35}
+\indexentry{Asset@{Asset}!SetDirty@{SetDirty}|hyperpage}{36}
+\indexentry{SetDirty@{SetDirty}!Asset@{Asset}|hyperpage}{36}
+\indexentry{Asset@{Asset}!SetLabels@{SetLabels}|hyperpage}{36}
+\indexentry{SetLabels@{SetLabels}!Asset@{Asset}|hyperpage}{36}
+\indexentry{Asset@{Asset}!Trash@{Trash}|hyperpage}{37}
+\indexentry{Trash@{Trash}!Asset@{Asset}|hyperpage}{37}
+\indexentry{Asset@{Asset}!ActiveImporter@{ActiveImporter}|hyperpage}{38}
+\indexentry{ActiveImporter@{ActiveImporter}!Asset@{Asset}|hyperpage}{38}
+\indexentry{Asset@{Asset}!AssetPath@{AssetPath}|hyperpage}{38}
+\indexentry{AssetPath@{AssetPath}!Asset@{Asset}|hyperpage}{38}
+\indexentry{Asset@{Asset}!AvailableImporters@{AvailableImporters}|hyperpage}{38}
+\indexentry{AvailableImporters@{AvailableImporters}!Asset@{Asset}|hyperpage}{38}
+\indexentry{Asset@{Asset}!DefaultImporter@{DefaultImporter}|hyperpage}{38}
+\indexentry{DefaultImporter@{DefaultImporter}!Asset@{Asset}|hyperpage}{38}
+\indexentry{Asset@{Asset}!Dependencies@{Dependencies}|hyperpage}{39}
+\indexentry{Dependencies@{Dependencies}!Asset@{Asset}|hyperpage}{39}
+\indexentry{Asset@{Asset}!DirectDependencies@{DirectDependencies}|hyperpage}{39}
+\indexentry{DirectDependencies@{DirectDependencies}!Asset@{Asset}|hyperpage}{39}
+\indexentry{Asset@{Asset}!FileId@{FileId}|hyperpage}{39}
+\indexentry{FileId@{FileId}!Asset@{Asset}|hyperpage}{39}
+\indexentry{Asset@{Asset}!Guid@{Guid}|hyperpage}{40}
+\indexentry{Guid@{Guid}!Asset@{Asset}|hyperpage}{40}
+\indexentry{Asset@{Asset}!Icon@{Icon}|hyperpage}{40}
+\indexentry{Icon@{Icon}!Asset@{Asset}|hyperpage}{40}
+\indexentry{Asset@{Asset}!IsDeleted@{IsDeleted}|hyperpage}{40}
+\indexentry{IsDeleted@{IsDeleted}!Asset@{Asset}|hyperpage}{40}
+\indexentry{Asset@{Asset}!IsForeign@{IsForeign}|hyperpage}{40}
+\indexentry{IsForeign@{IsForeign}!Asset@{Asset}|hyperpage}{40}
+\indexentry{Asset@{Asset}!IsImporterOverridden@{IsImporterOverridden}|hyperpage}{41}
+\indexentry{IsImporterOverridden@{IsImporterOverridden}!Asset@{Asset}|hyperpage}{41}
+\indexentry{Asset@{Asset}!IsNative@{IsNative}|hyperpage}{41}
+\indexentry{IsNative@{IsNative}!Asset@{Asset}|hyperpage}{41}
+\indexentry{Asset@{Asset}!IsScene@{IsScene}|hyperpage}{41}
+\indexentry{IsScene@{IsScene}!Asset@{Asset}|hyperpage}{41}
+\indexentry{Asset@{Asset}!Labels@{Labels}|hyperpage}{42}
+\indexentry{Labels@{Labels}!Asset@{Asset}|hyperpage}{42}
+\indexentry{Asset@{Asset}!MainObject@{MainObject}|hyperpage}{42}
+\indexentry{MainObject@{MainObject}!Asset@{Asset}|hyperpage}{42}
+\indexentry{Asset@{Asset}!MainObjectType@{MainObjectType}|hyperpage}{42}
+\indexentry{MainObjectType@{MainObjectType}!Asset@{Asset}|hyperpage}{42}
+\indexentry{Asset@{Asset}!MetaPath@{MetaPath}|hyperpage}{43}
+\indexentry{MetaPath@{MetaPath}!Asset@{Asset}|hyperpage}{43}
+\indexentry{Asset@{Asset}!OwningBundle@{OwningBundle}|hyperpage}{43}
+\indexentry{OwningBundle@{OwningBundle}!Asset@{Asset}|hyperpage}{43}
+\indexentry{Asset@{Asset}!OwningBundleVariant@{OwningBundleVariant}|hyperpage}{43}
+\indexentry{OwningBundleVariant@{OwningBundleVariant}!Asset@{Asset}|hyperpage}{43}
+\indexentry{Asset@{Asset}!SubAssets@{SubAssets}|hyperpage}{44}
+\indexentry{SubAssets@{SubAssets}!Asset@{Asset}|hyperpage}{44}
+\indexentry{Asset@{Asset}!VisibleSubAssets@{VisibleSubAssets}|hyperpage}{44}
+\indexentry{VisibleSubAssets@{VisibleSubAssets}!Asset@{Asset}|hyperpage}{44}
+\indexentry{Asset.Bundle@{Asset.Bundle}|hyperpage}{45}
+\indexentry{Asset.Bundle@{Asset.Bundle}!ForceRemove@{ForceRemove}|hyperpage}{46}
+\indexentry{ForceRemove@{ForceRemove}!Asset.Bundle@{Asset.Bundle}|hyperpage}{46}
+\indexentry{Asset.Bundle@{Asset.Bundle}!GetAllDependencies@{GetAllDependencies}|hyperpage}{46}
+\indexentry{GetAllDependencies@{GetAllDependencies}!Asset.Bundle@{Asset.Bundle}|hyperpage}{46}
+\indexentry{Asset.Bundle@{Asset.Bundle}!GetAllPaths@{GetAllPaths}|hyperpage}{47}
+\indexentry{GetAllPaths@{GetAllPaths}!Asset.Bundle@{Asset.Bundle}|hyperpage}{47}
+\indexentry{Asset.Bundle@{Asset.Bundle}!GetDirectDependencies@{GetDirectDependencies}|hyperpage}{47}
+\indexentry{GetDirectDependencies@{GetDirectDependencies}!Asset.Bundle@{Asset.Bundle}|hyperpage}{47}
+\indexentry{Asset.Bundle@{Asset.Bundle}!GetOwningBundle@{GetOwningBundle}|hyperpage}{48}
+\indexentry{GetOwningBundle@{GetOwningBundle}!Asset.Bundle@{Asset.Bundle}|hyperpage}{48}
+\indexentry{Asset.Bundle@{Asset.Bundle}!GetOwningBundleVariant@{GetOwningBundleVariant}|hyperpage}{48}
+\indexentry{GetOwningBundleVariant@{GetOwningBundleVariant}!Asset.Bundle@{Asset.Bundle}|hyperpage}{48}
+\indexentry{Asset.Bundle@{Asset.Bundle}!GetPaths@{GetPaths}|hyperpage}{49}
+\indexentry{GetPaths@{GetPaths}!Asset.Bundle@{Asset.Bundle}|hyperpage}{49}
+\indexentry{Asset.Bundle@{Asset.Bundle}!Remove@{Remove}|hyperpage}{49}
+\indexentry{Remove@{Remove}!Asset.Bundle@{Asset.Bundle}|hyperpage}{49}
+\indexentry{Asset.Bundle@{Asset.Bundle}!RemoveUnused@{RemoveUnused}|hyperpage}{50}
+\indexentry{RemoveUnused@{RemoveUnused}!Asset.Bundle@{Asset.Bundle}|hyperpage}{50}
+\indexentry{Asset.Bundle@{Asset.Bundle}!All@{All}|hyperpage}{50}
+\indexentry{All@{All}!Asset.Bundle@{Asset.Bundle}|hyperpage}{50}
+\indexentry{Asset.Bundle@{Asset.Bundle}!Unused@{Unused}|hyperpage}{50}
+\indexentry{Unused@{Unused}!Asset.Bundle@{Asset.Bundle}|hyperpage}{50}
+\indexentry{Asset.Database@{Asset.Database}|hyperpage}{51}
+\indexentry{Asset.Database@{Asset.Database}!AllowAutoRefresh@{AllowAutoRefresh}|hyperpage}{52}
+\indexentry{AllowAutoRefresh@{AllowAutoRefresh}!Asset.Database@{Asset.Database}|hyperpage}{52}
+\indexentry{Asset.Database@{Asset.Database}!Contains@{Contains}|hyperpage}{52}
+\indexentry{Contains@{Contains}!Asset.Database@{Asset.Database}|hyperpage}{52}
+\indexentry{Asset.Database@{Asset.Database}!Contains@{Contains}|hyperpage}{53}
+\indexentry{Contains@{Contains}!Asset.Database@{Asset.Database}|hyperpage}{53}
+\indexentry{Asset.Database@{Asset.Database}!DisallowAutoRefresh@{DisallowAutoRefresh}|hyperpage}{53}
+\indexentry{DisallowAutoRefresh@{DisallowAutoRefresh}!Asset.Database@{Asset.Database}|hyperpage}{53}
+\indexentry{Asset.Database@{Asset.Database}!ImportAll@{ImportAll}|hyperpage}{53}
+\indexentry{ImportAll@{ImportAll}!Asset.Database@{Asset.Database}|hyperpage}{53}
+\indexentry{Asset.Database@{Asset.Database}!ReleaseFileHandles@{ReleaseFileHandles}|hyperpage}{55}
+\indexentry{ReleaseFileHandles@{ReleaseFileHandles}!Asset.Database@{Asset.Database}|hyperpage}{55}
+\indexentry{Asset.Database@{Asset.Database}!SaveAll@{SaveAll}|hyperpage}{55}
+\indexentry{SaveAll@{SaveAll}!Asset.Database@{Asset.Database}|hyperpage}{55}
+\indexentry{Asset.Database@{Asset.Database}!UpgradeAllAssetSerializationVersions@{UpgradeAllAssetSerializationVersions}|hyperpage}{55}
+\indexentry{UpgradeAllAssetSerializationVersions@{UpgradeAllAssetSerializationVersions}!Asset.Database@{Asset.Database}|hyperpage}{55}
+\indexentry{Asset.Database@{Asset.Database}!UpgradeAssetSerializationVersion@{UpgradeAssetSerializationVersion}|hyperpage}{55}
+\indexentry{UpgradeAssetSerializationVersion@{UpgradeAssetSerializationVersion}!Asset.Database@{Asset.Database}|hyperpage}{55}
+\indexentry{Asset.Database@{Asset.Database}!UpgradeAssetSerializationVersion@{UpgradeAssetSerializationVersion}|hyperpage}{56}
+\indexentry{UpgradeAssetSerializationVersion@{UpgradeAssetSerializationVersion}!Asset.Database@{Asset.Database}|hyperpage}{56}
+\indexentry{Asset.Database@{Asset.Database}!DesiredWorkerCount@{DesiredWorkerCount}|hyperpage}{57}
+\indexentry{DesiredWorkerCount@{DesiredWorkerCount}!Asset.Database@{Asset.Database}|hyperpage}{57}
+\indexentry{Asset.Database@{Asset.Database}!DirectoryMonitoring@{DirectoryMonitoring}|hyperpage}{57}
+\indexentry{DirectoryMonitoring@{DirectoryMonitoring}!Asset.Database@{Asset.Database}|hyperpage}{57}
+\indexentry{Asset.Database.CacheServer@{Asset.Database.CacheServer}|hyperpage}{58}
+\indexentry{Asset.Database.CacheServer@{Asset.Database.CacheServer}!ApplySettings@{ApplySettings}|hyperpage}{59}
+\indexentry{ApplySettings@{ApplySettings}!Asset.Database.CacheServer@{Asset.Database.CacheServer}|hyperpage}{59}
+\indexentry{Asset.Database.CacheServer@{Asset.Database.CacheServer}!CanConnect@{CanConnect}|hyperpage}{59}
+\indexentry{CanConnect@{CanConnect}!Asset.Database.CacheServer@{Asset.Database.CacheServer}|hyperpage}{59}
+\indexentry{Asset.Database.CacheServer@{Asset.Database.CacheServer}!Disconnect@{Disconnect}|hyperpage}{60}
+\indexentry{Disconnect@{Disconnect}!Asset.Database.CacheServer@{Asset.Database.CacheServer}|hyperpage}{60}
+\indexentry{Asset.Database.CacheServer@{Asset.Database.CacheServer}!ResetReconnectTimer@{ResetReconnectTimer}|hyperpage}{60}
+\indexentry{ResetReconnectTimer@{ResetReconnectTimer}!Asset.Database.CacheServer@{Asset.Database.CacheServer}|hyperpage}{60}
+\indexentry{Asset.Database.CacheServer@{Asset.Database.CacheServer}!Address@{Address}|hyperpage}{60}
+\indexentry{Address@{Address}!Asset.Database.CacheServer@{Asset.Database.CacheServer}|hyperpage}{60}
+\indexentry{Asset.Database.CacheServer@{Asset.Database.CacheServer}!Connected@{Connected}|hyperpage}{60}
+\indexentry{Connected@{Connected}!Asset.Database.CacheServer@{Asset.Database.CacheServer}|hyperpage}{60}
+\indexentry{Asset.Database.CacheServer@{Asset.Database.CacheServer}!ConnectedAddress@{ConnectedAddress}|hyperpage}{61}
+\indexentry{ConnectedAddress@{ConnectedAddress}!Asset.Database.CacheServer@{Asset.Database.CacheServer}|hyperpage}{61}
+\indexentry{Asset.Database.CacheServer@{Asset.Database.CacheServer}!DownloadsAllowed@{DownloadsAllowed}|hyperpage}{61}
+\indexentry{DownloadsAllowed@{DownloadsAllowed}!Asset.Database.CacheServer@{Asset.Database.CacheServer}|hyperpage}{61}
+\indexentry{Asset.Database.CacheServer@{Asset.Database.CacheServer}!Enabled@{Enabled}|hyperpage}{61}
+\indexentry{Enabled@{Enabled}!Asset.Database.CacheServer@{Asset.Database.CacheServer}|hyperpage}{61}
+\indexentry{Asset.Database.CacheServer@{Asset.Database.CacheServer}!NamespacePrefix@{NamespacePrefix}|hyperpage}{62}
+\indexentry{NamespacePrefix@{NamespacePrefix}!Asset.Database.CacheServer@{Asset.Database.CacheServer}|hyperpage}{62}
+\indexentry{Asset.Database.CacheServer@{Asset.Database.CacheServer}!Port@{Port}|hyperpage}{62}
+\indexentry{Port@{Port}!Asset.Database.CacheServer@{Asset.Database.CacheServer}|hyperpage}{62}
+\indexentry{Asset.Database.CacheServer@{Asset.Database.CacheServer}!UploadsAllowed@{UploadsAllowed}|hyperpage}{62}
+\indexentry{UploadsAllowed@{UploadsAllowed}!Asset.Database.CacheServer@{Asset.Database.CacheServer}|hyperpage}{62}
+\indexentry{Asset.Dependency@{Asset.Dependency}|hyperpage}{63}
+\indexentry{Asset.Dependency@{Asset.Dependency}!GetAll@{GetAll}|hyperpage}{64}
+\indexentry{GetAll@{GetAll}!Asset.Dependency@{Asset.Dependency}|hyperpage}{64}
+\indexentry{Asset.Dependency@{Asset.Dependency}!GetAll@{GetAll}|hyperpage}{64}
+\indexentry{GetAll@{GetAll}!Asset.Dependency@{Asset.Dependency}|hyperpage}{64}
+\indexentry{Asset.Dependency@{Asset.Dependency}!GetDirect@{GetDirect}|hyperpage}{65}
+\indexentry{GetDirect@{GetDirect}!Asset.Dependency@{Asset.Dependency}|hyperpage}{65}
+\indexentry{Asset.Dependency@{Asset.Dependency}!GetDirect@{GetDirect}|hyperpage}{65}
+\indexentry{GetDirect@{GetDirect}!Asset.Dependency@{Asset.Dependency}|hyperpage}{65}
+\indexentry{Asset.Dependency@{Asset.Dependency}!GetHash@{GetHash}|hyperpage}{66}
+\indexentry{GetHash@{GetHash}!Asset.Dependency@{Asset.Dependency}|hyperpage}{66}
+\indexentry{Asset.Dependency@{Asset.Dependency}!GetHash@{GetHash}|hyperpage}{66}
+\indexentry{GetHash@{GetHash}!Asset.Dependency@{Asset.Dependency}|hyperpage}{66}
+\indexentry{Asset.Dependency@{Asset.Dependency}!Register@{Register}|hyperpage}{67}
+\indexentry{Register@{Register}!Asset.Dependency@{Asset.Dependency}|hyperpage}{67}
+\indexentry{Asset.Dependency@{Asset.Dependency}!Unregister@{Unregister}|hyperpage}{67}
+\indexentry{Unregister@{Unregister}!Asset.Dependency@{Asset.Dependency}|hyperpage}{67}
+\indexentry{Asset.File@{Asset.File}|hyperpage}{68}
+\indexentry{Asset.File@{Asset.File}!BatchEditing@{BatchEditing}|hyperpage}{71}
+\indexentry{BatchEditing@{BatchEditing}!Asset.File@{Asset.File}|hyperpage}{71}
+\indexentry{Asset.File@{Asset.File}!CanMove@{CanMove}|hyperpage}{71}
+\indexentry{CanMove@{CanMove}!Asset.File@{Asset.File}|hyperpage}{71}
+\indexentry{Asset.File@{Asset.File}!CanOpenInEditor@{CanOpenInEditor}|hyperpage}{72}
+\indexentry{CanOpenInEditor@{CanOpenInEditor}!Asset.File@{Asset.File}|hyperpage}{72}
+\indexentry{Asset.File@{Asset.File}!CanOpenInEditor@{CanOpenInEditor}|hyperpage}{72}
+\indexentry{CanOpenInEditor@{CanOpenInEditor}!Asset.File@{Asset.File}|hyperpage}{72}
+\indexentry{Asset.File@{Asset.File}!Copy@{Copy}|hyperpage}{73}
+\indexentry{Copy@{Copy}!Asset.File@{Asset.File}|hyperpage}{73}
+\indexentry{Asset.File@{Asset.File}!CopyAsNew@{CopyAsNew}|hyperpage}{74}
+\indexentry{CopyAsNew@{CopyAsNew}!Asset.File@{Asset.File}|hyperpage}{74}
+\indexentry{Asset.File@{Asset.File}!Create@{Create}|hyperpage}{74}
+\indexentry{Create@{Create}!Asset.File@{Asset.File}|hyperpage}{74}
+\indexentry{Asset.File@{Asset.File}!Create@{Create}|hyperpage}{75}
+\indexentry{Create@{Create}!Asset.File@{Asset.File}|hyperpage}{75}
+\indexentry{Asset.File@{Asset.File}!Create@{Create}|hyperpage}{76}
+\indexentry{Create@{Create}!Asset.File@{Asset.File}|hyperpage}{76}
+\indexentry{Asset.File@{Asset.File}!CreateAsNew@{CreateAsNew}|hyperpage}{76}
+\indexentry{CreateAsNew@{CreateAsNew}!Asset.File@{Asset.File}|hyperpage}{76}
+\indexentry{Asset.File@{Asset.File}!CreateAsNew@{CreateAsNew}|hyperpage}{77}
+\indexentry{CreateAsNew@{CreateAsNew}!Asset.File@{Asset.File}|hyperpage}{77}
+\indexentry{Asset.File@{Asset.File}!CreateAsNew@{CreateAsNew}|hyperpage}{77}
+\indexentry{CreateAsNew@{CreateAsNew}!Asset.File@{Asset.File}|hyperpage}{77}
+\indexentry{Asset.File@{Asset.File}!CreateOrLoad$<$ T $>$@{CreateOrLoad$<$ T $>$}|hyperpage}{78}
+\indexentry{CreateOrLoad$<$ T $>$@{CreateOrLoad$<$ T $>$}!Asset.File@{Asset.File}|hyperpage}{78}
+\indexentry{Asset.File@{Asset.File}!Delete@{Delete}|hyperpage}{79}
+\indexentry{Delete@{Delete}!Asset.File@{Asset.File}|hyperpage}{79}
+\indexentry{Asset.File@{Asset.File}!Delete@{Delete}|hyperpage}{79}
+\indexentry{Delete@{Delete}!Asset.File@{Asset.File}|hyperpage}{79}
+\indexentry{Asset.File@{Asset.File}!Delete@{Delete}|hyperpage}{80}
+\indexentry{Delete@{Delete}!Asset.File@{Asset.File}|hyperpage}{80}
+\indexentry{Asset.File@{Asset.File}!Delete@{Delete}|hyperpage}{80}
+\indexentry{Delete@{Delete}!Asset.File@{Asset.File}|hyperpage}{80}
+\indexentry{Asset.File@{Asset.File}!Find@{Find}|hyperpage}{81}
+\indexentry{Find@{Find}!Asset.File@{Asset.File}|hyperpage}{81}
+\indexentry{Asset.File@{Asset.File}!FindGuids@{FindGuids}|hyperpage}{82}
+\indexentry{FindGuids@{FindGuids}!Asset.File@{Asset.File}|hyperpage}{82}
+\indexentry{Asset.File@{Asset.File}!FindPaths@{FindPaths}|hyperpage}{82}
+\indexentry{FindPaths@{FindPaths}!Asset.File@{Asset.File}|hyperpage}{82}
+\indexentry{Asset.File@{Asset.File}!ForceSave@{ForceSave}|hyperpage}{83}
+\indexentry{ForceSave@{ForceSave}!Asset.File@{Asset.File}|hyperpage}{83}
+\indexentry{Asset.File@{Asset.File}!Import@{Import}|hyperpage}{83}
+\indexentry{Import@{Import}!Asset.File@{Asset.File}|hyperpage}{83}
+\indexentry{Asset.File@{Asset.File}!Import@{Import}|hyperpage}{84}
+\indexentry{Import@{Import}!Asset.File@{Asset.File}|hyperpage}{84}
+\indexentry{Asset.File@{Asset.File}!Import@{Import}|hyperpage}{85}
+\indexentry{Import@{Import}!Asset.File@{Asset.File}|hyperpage}{85}
+\indexentry{Asset.File@{Asset.File}!ImportAndLoad$<$ T $>$@{ImportAndLoad$<$ T $>$}|hyperpage}{85}
+\indexentry{ImportAndLoad$<$ T $>$@{ImportAndLoad$<$ T $>$}!Asset.File@{Asset.File}|hyperpage}{85}
+\indexentry{Asset.File@{Asset.File}!Load$<$ T $>$@{Load$<$ T $>$}|hyperpage}{86}
+\indexentry{Load$<$ T $>$@{Load$<$ T $>$}!Asset.File@{Asset.File}|hyperpage}{86}
+\indexentry{Asset.File@{Asset.File}!LoadAsync@{LoadAsync}|hyperpage}{87}
+\indexentry{LoadAsync@{LoadAsync}!Asset.File@{Asset.File}|hyperpage}{87}
+\indexentry{Asset.File@{Asset.File}!LoadMain$<$ T $>$@{LoadMain$<$ T $>$}|hyperpage}{88}
+\indexentry{LoadMain$<$ T $>$@{LoadMain$<$ T $>$}!Asset.File@{Asset.File}|hyperpage}{88}
+\indexentry{Asset.File@{Asset.File}!LoadMain$<$ T $>$@{LoadMain$<$ T $>$}|hyperpage}{89}
+\indexentry{LoadMain$<$ T $>$@{LoadMain$<$ T $>$}!Asset.File@{Asset.File}|hyperpage}{89}
+\indexentry{Asset.File@{Asset.File}!LoadOrCreate$<$ T $>$@{LoadOrCreate$<$ T $>$}|hyperpage}{90}
+\indexentry{LoadOrCreate$<$ T $>$@{LoadOrCreate$<$ T $>$}!Asset.File@{Asset.File}|hyperpage}{90}
+\indexentry{Asset.File@{Asset.File}!Move@{Move}|hyperpage}{91}
+\indexentry{Move@{Move}!Asset.File@{Asset.File}|hyperpage}{91}
+\indexentry{Asset.File@{Asset.File}!OpenExternal@{OpenExternal}|hyperpage}{92}
+\indexentry{OpenExternal@{OpenExternal}!Asset.File@{Asset.File}|hyperpage}{92}
+\indexentry{Asset.File@{Asset.File}!OpenExternal@{OpenExternal}|hyperpage}{92}
+\indexentry{OpenExternal@{OpenExternal}!Asset.File@{Asset.File}|hyperpage}{92}
+\indexentry{Asset.File@{Asset.File}!OpenExternal@{OpenExternal}|hyperpage}{93}
+\indexentry{OpenExternal@{OpenExternal}!Asset.File@{Asset.File}|hyperpage}{93}
+\indexentry{Asset.File@{Asset.File}!Rename@{Rename}|hyperpage}{93}
+\indexentry{Rename@{Rename}!Asset.File@{Asset.File}|hyperpage}{93}
+\indexentry{Asset.File@{Asset.File}!Save@{Save}|hyperpage}{94}
+\indexentry{Save@{Save}!Asset.File@{Asset.File}|hyperpage}{94}
+\indexentry{Asset.File@{Asset.File}!Save@{Save}|hyperpage}{95}
+\indexentry{Save@{Save}!Asset.File@{Asset.File}|hyperpage}{95}
+\indexentry{Asset.File@{Asset.File}!Trash@{Trash}|hyperpage}{95}
+\indexentry{Trash@{Trash}!Asset.File@{Asset.File}|hyperpage}{95}
+\indexentry{Asset.File@{Asset.File}!Trash@{Trash}|hyperpage}{96}
+\indexentry{Trash@{Trash}!Asset.File@{Asset.File}|hyperpage}{96}
+\indexentry{Asset.File@{Asset.File}!Trash@{Trash}|hyperpage}{96}
+\indexentry{Trash@{Trash}!Asset.File@{Asset.File}|hyperpage}{96}
+\indexentry{Asset.File@{Asset.File}!Trash@{Trash}|hyperpage}{97}
+\indexentry{Trash@{Trash}!Asset.File@{Asset.File}|hyperpage}{97}
+\indexentry{Asset.File@{Asset.File}!PathsNotDeleted@{PathsNotDeleted}|hyperpage}{98}
+\indexentry{PathsNotDeleted@{PathsNotDeleted}!Asset.File@{Asset.File}|hyperpage}{98}
+\indexentry{Asset.Importer@{Asset.Importer}|hyperpage}{98}
+\indexentry{Asset.Importer@{Asset.Importer}!ApplySettings@{ApplySettings}|hyperpage}{100}
+\indexentry{ApplySettings@{ApplySettings}!Asset.Importer@{Asset.Importer}|hyperpage}{100}
+\indexentry{Asset.Importer@{Asset.Importer}!ClearOverride@{ClearOverride}|hyperpage}{100}
+\indexentry{ClearOverride@{ClearOverride}!Asset.Importer@{Asset.Importer}|hyperpage}{100}
+\indexentry{Asset.Importer@{Asset.Importer}!GetActive@{GetActive}|hyperpage}{101}
+\indexentry{GetActive@{GetActive}!Asset.Importer@{Asset.Importer}|hyperpage}{101}
+\indexentry{Asset.Importer@{Asset.Importer}!GetActive@{GetActive}|hyperpage}{101}
+\indexentry{GetActive@{GetActive}!Asset.Importer@{Asset.Importer}|hyperpage}{101}
+\indexentry{Asset.Importer@{Asset.Importer}!GetActive@{GetActive}|hyperpage}{102}
+\indexentry{GetActive@{GetActive}!Asset.Importer@{Asset.Importer}|hyperpage}{102}
+\indexentry{Asset.Importer@{Asset.Importer}!GetActive@{GetActive}|hyperpage}{102}
+\indexentry{GetActive@{GetActive}!Asset.Importer@{Asset.Importer}|hyperpage}{102}
+\indexentry{Asset.Importer@{Asset.Importer}!GetActive@{GetActive}|hyperpage}{103}
+\indexentry{GetActive@{GetActive}!Asset.Importer@{Asset.Importer}|hyperpage}{103}
+\indexentry{Asset.Importer@{Asset.Importer}!GetActive@{GetActive}|hyperpage}{104}
+\indexentry{GetActive@{GetActive}!Asset.Importer@{Asset.Importer}|hyperpage}{104}
+\indexentry{Asset.Importer@{Asset.Importer}!GetAvailable@{GetAvailable}|hyperpage}{104}
+\indexentry{GetAvailable@{GetAvailable}!Asset.Importer@{Asset.Importer}|hyperpage}{104}
+\indexentry{Asset.Importer@{Asset.Importer}!GetAvailable@{GetAvailable}|hyperpage}{105}
+\indexentry{GetAvailable@{GetAvailable}!Asset.Importer@{Asset.Importer}|hyperpage}{105}
+\indexentry{Asset.Importer@{Asset.Importer}!GetDefault@{GetDefault}|hyperpage}{105}
+\indexentry{GetDefault@{GetDefault}!Asset.Importer@{Asset.Importer}|hyperpage}{105}
+\indexentry{Asset.Importer@{Asset.Importer}!GetDefault@{GetDefault}|hyperpage}{106}
+\indexentry{GetDefault@{GetDefault}!Asset.Importer@{Asset.Importer}|hyperpage}{106}
+\indexentry{Asset.Importer@{Asset.Importer}!GetOverride@{GetOverride}|hyperpage}{106}
+\indexentry{GetOverride@{GetOverride}!Asset.Importer@{Asset.Importer}|hyperpage}{106}
+\indexentry{Asset.Importer@{Asset.Importer}!GetOverride@{GetOverride}|hyperpage}{107}
+\indexentry{GetOverride@{GetOverride}!Asset.Importer@{Asset.Importer}|hyperpage}{107}
+\indexentry{Asset.Importer@{Asset.Importer}!IsOverridden@{IsOverridden}|hyperpage}{107}
+\indexentry{IsOverridden@{IsOverridden}!Asset.Importer@{Asset.Importer}|hyperpage}{107}
+\indexentry{Asset.Importer@{Asset.Importer}!SetOverride$<$ T $>$@{SetOverride$<$ T $>$}|hyperpage}{108}
+\indexentry{SetOverride$<$ T $>$@{SetOverride$<$ T $>$}!Asset.Importer@{Asset.Importer}|hyperpage}{108}
+\indexentry{Asset.Label@{Asset.Label}|hyperpage}{109}
+\indexentry{Asset.Label@{Asset.Label}!Add@{Add}|hyperpage}{110}
+\indexentry{Add@{Add}!Asset.Label@{Asset.Label}|hyperpage}{110}
+\indexentry{Asset.Label@{Asset.Label}!Add@{Add}|hyperpage}{110}
+\indexentry{Add@{Add}!Asset.Label@{Asset.Label}|hyperpage}{110}
+\indexentry{Asset.Label@{Asset.Label}!ClearAll@{ClearAll}|hyperpage}{111}
+\indexentry{ClearAll@{ClearAll}!Asset.Label@{Asset.Label}|hyperpage}{111}
+\indexentry{Asset.Label@{Asset.Label}!GetAll@{GetAll}|hyperpage}{112}
+\indexentry{GetAll@{GetAll}!Asset.Label@{Asset.Label}|hyperpage}{112}
+\indexentry{Asset.Label@{Asset.Label}!GetAll@{GetAll}|hyperpage}{112}
+\indexentry{GetAll@{GetAll}!Asset.Label@{Asset.Label}|hyperpage}{112}
+\indexentry{Asset.Label@{Asset.Label}!SetAll@{SetAll}|hyperpage}{114}
+\indexentry{SetAll@{SetAll}!Asset.Label@{Asset.Label}|hyperpage}{114}
+\indexentry{Asset.Package@{Asset.Package}|hyperpage}{115}
+\indexentry{Asset.Package@{Asset.Package}!Export@{Export}|hyperpage}{115}
+\indexentry{Export@{Export}!Asset.Package@{Asset.Package}|hyperpage}{115}
+\indexentry{Asset.Package@{Asset.Package}!Export@{Export}|hyperpage}{116}
+\indexentry{Export@{Export}!Asset.Package@{Asset.Package}|hyperpage}{116}
+\indexentry{Asset.Package@{Asset.Package}!Export@{Export}|hyperpage}{116}
+\indexentry{Export@{Export}!Asset.Package@{Asset.Package}|hyperpage}{116}
+\indexentry{Asset.Package@{Asset.Package}!Import@{Import}|hyperpage}{117}
+\indexentry{Import@{Import}!Asset.Package@{Asset.Package}|hyperpage}{117}
+\indexentry{Asset.Package@{Asset.Package}!ImportInteractive@{ImportInteractive}|hyperpage}{117}
+\indexentry{ImportInteractive@{ImportInteractive}!Asset.Package@{Asset.Package}|hyperpage}{117}
+\indexentry{Asset.Path@{Asset.Path}|hyperpage}{118}
+\indexentry{Asset.Path@{Asset.Path}!Path@{Path}|hyperpage}{123}
+\indexentry{Path@{Path}!Asset.Path@{Asset.Path}|hyperpage}{123}
+\indexentry{Asset.Path@{Asset.Path}!Path@{Path}|hyperpage}{124}
+\indexentry{Path@{Path}!Asset.Path@{Asset.Path}|hyperpage}{124}
+\indexentry{Asset.Path@{Asset.Path}!Path@{Path}|hyperpage}{124}
+\indexentry{Path@{Path}!Asset.Path@{Asset.Path}|hyperpage}{124}
+\indexentry{Asset.Path@{Asset.Path}!CreateFolders@{CreateFolders}|hyperpage}{125}
+\indexentry{CreateFolders@{CreateFolders}!Asset.Path@{Asset.Path}|hyperpage}{125}
+\indexentry{Asset.Path@{Asset.Path}!CreateFolders@{CreateFolders}|hyperpage}{125}
+\indexentry{CreateFolders@{CreateFolders}!Asset.Path@{Asset.Path}|hyperpage}{125}
+\indexentry{Asset.Path@{Asset.Path}!Equals@{Equals}|hyperpage}{127}
+\indexentry{Equals@{Equals}!Asset.Path@{Asset.Path}|hyperpage}{127}
+\indexentry{Asset.Path@{Asset.Path}!Equals@{Equals}|hyperpage}{128}
+\indexentry{Equals@{Equals}!Asset.Path@{Asset.Path}|hyperpage}{128}
+\indexentry{Asset.Path@{Asset.Path}!Equals@{Equals}|hyperpage}{128}
+\indexentry{Equals@{Equals}!Asset.Path@{Asset.Path}|hyperpage}{128}
+\indexentry{Asset.Path@{Asset.Path}!FileExists@{FileExists}|hyperpage}{129}
+\indexentry{FileExists@{FileExists}!Asset.Path@{Asset.Path}|hyperpage}{129}
+\indexentry{Asset.Path@{Asset.Path}!FolderExists@{FolderExists}|hyperpage}{130}
+\indexentry{FolderExists@{FolderExists}!Asset.Path@{Asset.Path}|hyperpage}{130}
+\indexentry{Asset.Path@{Asset.Path}!FromMeta@{FromMeta}|hyperpage}{130}
+\indexentry{FromMeta@{FromMeta}!Asset.Path@{Asset.Path}|hyperpage}{130}
+\indexentry{Asset.Path@{Asset.Path}!Get@{Get}|hyperpage}{131}
+\indexentry{Get@{Get}!Asset.Path@{Asset.Path}|hyperpage}{131}
+\indexentry{Asset.Path@{Asset.Path}!Get@{Get}|hyperpage}{132}
+\indexentry{Get@{Get}!Asset.Path@{Asset.Path}|hyperpage}{132}
+\indexentry{Asset.Path@{Asset.Path}!Get@{Get}|hyperpage}{133}
+\indexentry{Get@{Get}!Asset.Path@{Asset.Path}|hyperpage}{133}
+\indexentry{Asset.Path@{Asset.Path}!GetGuid@{GetGuid}|hyperpage}{133}
+\indexentry{GetGuid@{GetGuid}!Asset.Path@{Asset.Path}|hyperpage}{133}
+\indexentry{Asset.Path@{Asset.Path}!GetHashCode@{GetHashCode}|hyperpage}{134}
+\indexentry{GetHashCode@{GetHashCode}!Asset.Path@{Asset.Path}|hyperpage}{134}
+\indexentry{Asset.Path@{Asset.Path}!GetScene@{GetScene}|hyperpage}{134}
+\indexentry{GetScene@{GetScene}!Asset.Path@{Asset.Path}|hyperpage}{134}
+\indexentry{Asset.Path@{Asset.Path}!GetSubFolders@{GetSubFolders}|hyperpage}{135}
+\indexentry{GetSubFolders@{GetSubFolders}!Asset.Path@{Asset.Path}|hyperpage}{135}
+\indexentry{Asset.Path@{Asset.Path}!IsValid@{IsValid}|hyperpage}{135}
+\indexentry{IsValid@{IsValid}!Asset.Path@{Asset.Path}|hyperpage}{135}
+\indexentry{Asset.Path@{Asset.Path}!OpenExternal@{OpenExternal}|hyperpage}{136}
+\indexentry{OpenExternal@{OpenExternal}!Asset.Path@{Asset.Path}|hyperpage}{136}
+\indexentry{Asset.Path@{Asset.Path}!operator Path@{operator Path}|hyperpage}{136}
+\indexentry{operator Path@{operator Path}!Asset.Path@{Asset.Path}|hyperpage}{136}
+\indexentry{Asset.Path@{Asset.Path}!operator String@{operator String}|hyperpage}{137}
+\indexentry{operator String@{operator String}!Asset.Path@{Asset.Path}|hyperpage}{137}
+\indexentry{Asset.Path@{Asset.Path}!operator"!=@{operator"!=}|hyperpage}{137}
+\indexentry{operator"!=@{operator"!=}!Asset.Path@{Asset.Path}|hyperpage}{137}
+\indexentry{Asset.Path@{Asset.Path}!operator"!=@{operator"!=}|hyperpage}{137}
+\indexentry{operator"!=@{operator"!=}!Asset.Path@{Asset.Path}|hyperpage}{137}
+\indexentry{Asset.Path@{Asset.Path}!operator"!=@{operator"!=}|hyperpage}{138}
+\indexentry{operator"!=@{operator"!=}!Asset.Path@{Asset.Path}|hyperpage}{138}
+\indexentry{Asset.Path@{Asset.Path}!operator==@{operator==}|hyperpage}{138}
+\indexentry{operator==@{operator==}!Asset.Path@{Asset.Path}|hyperpage}{138}
+\indexentry{Asset.Path@{Asset.Path}!operator==@{operator==}|hyperpage}{139}
+\indexentry{operator==@{operator==}!Asset.Path@{Asset.Path}|hyperpage}{139}
+\indexentry{Asset.Path@{Asset.Path}!operator==@{operator==}|hyperpage}{139}
+\indexentry{operator==@{operator==}!Asset.Path@{Asset.Path}|hyperpage}{139}
+\indexentry{Asset.Path@{Asset.Path}!Rename@{Rename}|hyperpage}{140}
+\indexentry{Rename@{Rename}!Asset.Path@{Asset.Path}|hyperpage}{140}
+\indexentry{Asset.Path@{Asset.Path}!ToMeta@{ToMeta}|hyperpage}{140}
+\indexentry{ToMeta@{ToMeta}!Asset.Path@{Asset.Path}|hyperpage}{140}
+\indexentry{Asset.Path@{Asset.Path}!ToString@{ToString}|hyperpage}{140}
+\indexentry{ToString@{ToString}!Asset.Path@{Asset.Path}|hyperpage}{140}
+\indexentry{Asset.Path@{Asset.Path}!ToStrings@{ToStrings}|hyperpage}{141}
+\indexentry{ToStrings@{ToStrings}!Asset.Path@{Asset.Path}|hyperpage}{141}
+\indexentry{Asset.Path@{Asset.Path}!UniquifyFileName@{UniquifyFileName}|hyperpage}{141}
+\indexentry{UniquifyFileName@{UniquifyFileName}!Asset.Path@{Asset.Path}|hyperpage}{141}
+\indexentry{Asset.Path@{Asset.Path}!AssetPath@{AssetPath}|hyperpage}{142}
+\indexentry{AssetPath@{AssetPath}!Asset.Path@{Asset.Path}|hyperpage}{142}
+\indexentry{Asset.Path@{Asset.Path}!Exists@{Exists}|hyperpage}{142}
+\indexentry{Exists@{Exists}!Asset.Path@{Asset.Path}|hyperpage}{142}
+\indexentry{Asset.Path@{Asset.Path}!ExistsInFileSystem@{ExistsInFileSystem}|hyperpage}{142}
+\indexentry{ExistsInFileSystem@{ExistsInFileSystem}!Asset.Path@{Asset.Path}|hyperpage}{142}
+\indexentry{Asset.Path@{Asset.Path}!Extension@{Extension}|hyperpage}{143}
+\indexentry{Extension@{Extension}!Asset.Path@{Asset.Path}|hyperpage}{143}
+\indexentry{Asset.Path@{Asset.Path}!FileName@{FileName}|hyperpage}{143}
+\indexentry{FileName@{FileName}!Asset.Path@{Asset.Path}|hyperpage}{143}
+\indexentry{Asset.Path@{Asset.Path}!FileNameWithoutExtension@{FileNameWithoutExtension}|hyperpage}{143}
+\indexentry{FileNameWithoutExtension@{FileNameWithoutExtension}!Asset.Path@{Asset.Path}|hyperpage}{143}
+\indexentry{Asset.Path@{Asset.Path}!FolderPath@{FolderPath}|hyperpage}{144}
+\indexentry{FolderPath@{FolderPath}!Asset.Path@{Asset.Path}|hyperpage}{144}
+\indexentry{Asset.Path@{Asset.Path}!FullAssetsPath@{FullAssetsPath}|hyperpage}{144}
+\indexentry{FullAssetsPath@{FullAssetsPath}!Asset.Path@{Asset.Path}|hyperpage}{144}
+\indexentry{Asset.Path@{Asset.Path}!FullLibraryPath@{FullLibraryPath}|hyperpage}{144}
+\indexentry{FullLibraryPath@{FullLibraryPath}!Asset.Path@{Asset.Path}|hyperpage}{144}
+\indexentry{Asset.Path@{Asset.Path}!FullLogsPath@{FullLogsPath}|hyperpage}{145}
+\indexentry{FullLogsPath@{FullLogsPath}!Asset.Path@{Asset.Path}|hyperpage}{145}
+\indexentry{Asset.Path@{Asset.Path}!FullPackagesPath@{FullPackagesPath}|hyperpage}{145}
+\indexentry{FullPackagesPath@{FullPackagesPath}!Asset.Path@{Asset.Path}|hyperpage}{145}
+\indexentry{Asset.Path@{Asset.Path}!FullPath@{FullPath}|hyperpage}{145}
+\indexentry{FullPath@{FullPath}!Asset.Path@{Asset.Path}|hyperpage}{145}
+\indexentry{Asset.Path@{Asset.Path}!FullProjectPath@{FullProjectPath}|hyperpage}{145}
+\indexentry{FullProjectPath@{FullProjectPath}!Asset.Path@{Asset.Path}|hyperpage}{145}
+\indexentry{Asset.Path@{Asset.Path}!FullProjectSettingsPath@{FullProjectSettingsPath}|hyperpage}{145}
+\indexentry{FullProjectSettingsPath@{FullProjectSettingsPath}!Asset.Path@{Asset.Path}|hyperpage}{145}
+\indexentry{Asset.Path@{Asset.Path}!FullProjectTempPath@{FullProjectTempPath}|hyperpage}{146}
+\indexentry{FullProjectTempPath@{FullProjectTempPath}!Asset.Path@{Asset.Path}|hyperpage}{146}
+\indexentry{Asset.Path@{Asset.Path}!FullUserSettingsPath@{FullUserSettingsPath}|hyperpage}{146}
+\indexentry{FullUserSettingsPath@{FullUserSettingsPath}!Asset.Path@{Asset.Path}|hyperpage}{146}
+\indexentry{Asset.Path@{Asset.Path}!Guid@{Guid}|hyperpage}{146}
+\indexentry{Guid@{Guid}!Asset.Path@{Asset.Path}|hyperpage}{146}
+\indexentry{Asset.Path@{Asset.Path}!MetaPath@{MetaPath}|hyperpage}{146}
+\indexentry{MetaPath@{MetaPath}!Asset.Path@{Asset.Path}|hyperpage}{146}
+\indexentry{Asset.Path@{Asset.Path}!SubFolders@{SubFolders}|hyperpage}{147}
+\indexentry{SubFolders@{SubFolders}!Asset.Path@{Asset.Path}|hyperpage}{147}
+\indexentry{Asset.Path@{Asset.Path}!UniqueFilePath@{UniqueFilePath}|hyperpage}{147}
+\indexentry{UniqueFilePath@{UniqueFilePath}!Asset.Path@{Asset.Path}|hyperpage}{147}
+\indexentry{Asset.Status@{Asset.Status}|hyperpage}{148}
+\indexentry{Asset.Status@{Asset.Status}!IsForeign@{IsForeign}|hyperpage}{149}
+\indexentry{IsForeign@{IsForeign}!Asset.Status@{Asset.Status}|hyperpage}{149}
+\indexentry{Asset.Status@{Asset.Status}!IsImported@{IsImported}|hyperpage}{149}
+\indexentry{IsImported@{IsImported}!Asset.Status@{Asset.Status}|hyperpage}{149}
+\indexentry{Asset.Status@{Asset.Status}!IsImported@{IsImported}|hyperpage}{150}
+\indexentry{IsImported@{IsImported}!Asset.Status@{Asset.Status}|hyperpage}{150}
+\indexentry{Asset.Status@{Asset.Status}!IsLoaded@{IsLoaded}|hyperpage}{150}
+\indexentry{IsLoaded@{IsLoaded}!Asset.Status@{Asset.Status}|hyperpage}{150}
+\indexentry{Asset.Status@{Asset.Status}!IsMain@{IsMain}|hyperpage}{151}
+\indexentry{IsMain@{IsMain}!Asset.Status@{Asset.Status}|hyperpage}{151}
+\indexentry{Asset.Status@{Asset.Status}!IsNative@{IsNative}|hyperpage}{151}
+\indexentry{IsNative@{IsNative}!Asset.Status@{Asset.Status}|hyperpage}{151}
+\indexentry{Asset.Status@{Asset.Status}!IsScene@{IsScene}|hyperpage}{152}
+\indexentry{IsScene@{IsScene}!Asset.Status@{Asset.Status}|hyperpage}{152}
+\indexentry{Asset.Status@{Asset.Status}!IsSub@{IsSub}|hyperpage}{152}
+\indexentry{IsSub@{IsSub}!Asset.Status@{Asset.Status}|hyperpage}{152}
+\indexentry{Asset.SubAsset@{Asset.SubAsset}|hyperpage}{153}
+\indexentry{Asset.SubAsset@{Asset.SubAsset}!Add@{Add}|hyperpage}{154}
+\indexentry{Add@{Add}!Asset.SubAsset@{Asset.SubAsset}|hyperpage}{154}
+\indexentry{Asset.SubAsset@{Asset.SubAsset}!Extract@{Extract}|hyperpage}{154}
+\indexentry{Extract@{Extract}!Asset.SubAsset@{Asset.SubAsset}|hyperpage}{154}
+\indexentry{Asset.SubAsset@{Asset.SubAsset}!LoadAll@{LoadAll}|hyperpage}{155}
+\indexentry{LoadAll@{LoadAll}!Asset.SubAsset@{Asset.SubAsset}|hyperpage}{155}
+\indexentry{Asset.SubAsset@{Asset.SubAsset}!LoadVisible@{LoadVisible}|hyperpage}{155}
+\indexentry{LoadVisible@{LoadVisible}!Asset.SubAsset@{Asset.SubAsset}|hyperpage}{155}
+\indexentry{Asset.SubAsset@{Asset.SubAsset}!Remove@{Remove}|hyperpage}{156}
+\indexentry{Remove@{Remove}!Asset.SubAsset@{Asset.SubAsset}|hyperpage}{156}
+\indexentry{Asset.SubAsset@{Asset.SubAsset}!SetMain@{SetMain}|hyperpage}{157}
+\indexentry{SetMain@{SetMain}!Asset.SubAsset@{Asset.SubAsset}|hyperpage}{157}
+\indexentry{Asset.SubAsset@{Asset.SubAsset}!SetMain@{SetMain}|hyperpage}{157}
+\indexentry{SetMain@{SetMain}!Asset.SubAsset@{Asset.SubAsset}|hyperpage}{157}
+\indexentry{Asset.VersionControl@{Asset.VersionControl}|hyperpage}{158}
+\indexentry{Asset.VersionControl@{Asset.VersionControl}!CanMakeEditable@{CanMakeEditable}|hyperpage}{160}
+\indexentry{CanMakeEditable@{CanMakeEditable}!Asset.VersionControl@{Asset.VersionControl}|hyperpage}{160}
+\indexentry{Asset.VersionControl@{Asset.VersionControl}!CanMakeEditable@{CanMakeEditable}|hyperpage}{160}
+\indexentry{CanMakeEditable@{CanMakeEditable}!Asset.VersionControl@{Asset.VersionControl}|hyperpage}{160}
+\indexentry{Asset.VersionControl@{Asset.VersionControl}!CanMakeEditable@{CanMakeEditable}|hyperpage}{161}
+\indexentry{CanMakeEditable@{CanMakeEditable}!Asset.VersionControl@{Asset.VersionControl}|hyperpage}{161}
+\indexentry{Asset.VersionControl@{Asset.VersionControl}!CanMakeEditable@{CanMakeEditable}|hyperpage}{162}
+\indexentry{CanMakeEditable@{CanMakeEditable}!Asset.VersionControl@{Asset.VersionControl}|hyperpage}{162}
+\indexentry{Asset.VersionControl@{Asset.VersionControl}!CanMakeEditable@{CanMakeEditable}|hyperpage}{163}
+\indexentry{CanMakeEditable@{CanMakeEditable}!Asset.VersionControl@{Asset.VersionControl}|hyperpage}{163}
+\indexentry{Asset.VersionControl@{Asset.VersionControl}!IsEditable@{IsEditable}|hyperpage}{163}
+\indexentry{IsEditable@{IsEditable}!Asset.VersionControl@{Asset.VersionControl}|hyperpage}{163}
+\indexentry{Asset.VersionControl@{Asset.VersionControl}!IsEditable@{IsEditable}|hyperpage}{164}
+\indexentry{IsEditable@{IsEditable}!Asset.VersionControl@{Asset.VersionControl}|hyperpage}{164}
+\indexentry{Asset.VersionControl@{Asset.VersionControl}!IsEditable@{IsEditable}|hyperpage}{164}
+\indexentry{IsEditable@{IsEditable}!Asset.VersionControl@{Asset.VersionControl}|hyperpage}{164}
+\indexentry{Asset.VersionControl@{Asset.VersionControl}!IsEditable@{IsEditable}|hyperpage}{165}
+\indexentry{IsEditable@{IsEditable}!Asset.VersionControl@{Asset.VersionControl}|hyperpage}{165}
+\indexentry{Asset.VersionControl@{Asset.VersionControl}!IsMetaEditable@{IsMetaEditable}|hyperpage}{166}
+\indexentry{IsMetaEditable@{IsMetaEditable}!Asset.VersionControl@{Asset.VersionControl}|hyperpage}{166}
+\indexentry{Asset.VersionControl@{Asset.VersionControl}!MakeEditable@{MakeEditable}|hyperpage}{166}
+\indexentry{MakeEditable@{MakeEditable}!Asset.VersionControl@{Asset.VersionControl}|hyperpage}{166}
+\indexentry{Asset.VersionControl@{Asset.VersionControl}!MakeEditable@{MakeEditable}|hyperpage}{167}
+\indexentry{MakeEditable@{MakeEditable}!Asset.VersionControl@{Asset.VersionControl}|hyperpage}{167}
+\indexentry{Asset.VersionControl@{Asset.VersionControl}!MakeEditable@{MakeEditable}|hyperpage}{167}
+\indexentry{MakeEditable@{MakeEditable}!Asset.VersionControl@{Asset.VersionControl}|hyperpage}{167}
+\indexentry{Asset.VersionControl@{Asset.VersionControl}!MakeEditableInteractive@{MakeEditableInteractive}|hyperpage}{168}
+\indexentry{MakeEditableInteractive@{MakeEditableInteractive}!Asset.VersionControl@{Asset.VersionControl}|hyperpage}{168}
+\indexentry{Asset.VersionControl@{Asset.VersionControl}!MakeEditableInteractive@{MakeEditableInteractive}|hyperpage}{168}
+\indexentry{MakeEditableInteractive@{MakeEditableInteractive}!Asset.VersionControl@{Asset.VersionControl}|hyperpage}{168}
+\indexentry{AssetLoadException@{AssetLoadException}|hyperpage}{169}
+\indexentry{AssetLoadException@{AssetLoadException}!AssetLoadException@{AssetLoadException}|hyperpage}{171}
+\indexentry{AssetLoadException@{AssetLoadException}!AssetLoadException@{AssetLoadException}|hyperpage}{171}
+\indexentry{AssetLoadException@{AssetLoadException}!AssetLoadException@{AssetLoadException}|hyperpage}{171}
+\indexentry{AssetLoadException@{AssetLoadException}!AssetLoadException@{AssetLoadException}|hyperpage}{171}
diff --git a/Docs~/latex/refman.ilg b/Docs~/latex/refman.ilg
new file mode 100644
index 00000000..f548685a
--- /dev/null
+++ b/Docs~/latex/refman.ilg
@@ -0,0 +1,6 @@
+This is makeindex, version 2.16 [MiKTeX 23.10].
+Scanning input file refman.idx....done (540 entries accepted, 0 rejected).
+Sorting entries.......done (5205 comparisons).
+Generating output file refman.ind....done (624 lines written, 0 warnings).
+Output written in refman.ind.
+Transcript written in refman.ilg.
diff --git a/Docs~/latex/refman.ind b/Docs~/latex/refman.ind
new file mode 100644
index 00000000..ee7c829c
--- /dev/null
+++ b/Docs~/latex/refman.ind
@@ -0,0 +1,624 @@
+\begin{theindex}
+
+ \item {ActiveImporter}
+ \subitem {Asset}, \hyperpage{38}
+ \item {Add}
+ \subitem {Asset.Label}, \hyperpage{110}
+ \subitem {Asset.SubAsset}, \hyperpage{154}
+ \item {AddLabel}
+ \subitem {Asset}, \hyperpage{19}
+ \item {AddLabels}
+ \subitem {Asset}, \hyperpage{19}
+ \item {Address}
+ \subitem {Asset.Database.CacheServer}, \hyperpage{60}
+ \item {AddSubAsset}
+ \subitem {Asset}, \hyperpage{19}
+ \item {All}
+ \subitem {Asset.Bundle}, \hyperpage{50}
+ \item {AllowAutoRefresh}
+ \subitem {Asset.Database}, \hyperpage{52}
+ \item {ApplySettings}
+ \subitem {Asset.Database.CacheServer}, \hyperpage{59}
+ \subitem {Asset.Importer}, \hyperpage{100}
+ \item {Asset}, \hyperpage{10}
+ \subitem {ActiveImporter}, \hyperpage{38}
+ \subitem {AddLabel}, \hyperpage{19}
+ \subitem {AddLabels}, \hyperpage{19}
+ \subitem {AddSubAsset}, \hyperpage{19}
+ \subitem {Asset}, \hyperpage{15--18}
+ \subitem {AssetPath}, \hyperpage{38}
+ \subitem {AvailableImporters}, \hyperpage{38}
+ \subitem {CanMove}, \hyperpage{20}
+ \subitem {CanOpenInEditor}, \hyperpage{20}
+ \subitem {ClearLabels}, \hyperpage{21}
+ \subitem {DefaultImporter}, \hyperpage{38}
+ \subitem {Delete}, \hyperpage{21}
+ \subitem {Dependencies}, \hyperpage{39}
+ \subitem {DirectDependencies}, \hyperpage{39}
+ \subitem {Duplicate}, \hyperpage{22}
+ \subitem {ExportPackage}, \hyperpage{22}
+ \subitem {FileId}, \hyperpage{39}
+ \subitem {ForceSave}, \hyperpage{23}
+ \subitem {GetFileId}, \hyperpage{23}
+ \subitem {GetGuid}, \hyperpage{23}
+ \subitem {GetGuidAndFileId}, \hyperpage{24}
+ \subitem {GetIcon}, \hyperpage{25}
+ \subitem {GetLastErrorMessage}, \hyperpage{26}
+ \subitem {GetMain$<$ T $>$}, \hyperpage{27}
+ \subitem {GetMainType}, \hyperpage{27, 28}
+ \subitem {GetSubType}, \hyperpage{29}
+ \subitem {Guid}, \hyperpage{40}
+ \subitem {Icon}, \hyperpage{40}
+ \subitem {IsDeleted}, \hyperpage{40}
+ \subitem {IsForeign}, \hyperpage{40}
+ \subitem {IsImporterOverridden}, \hyperpage{41}
+ \subitem {IsNative}, \hyperpage{41}
+ \subitem {IsScene}, \hyperpage{41}
+ \subitem {Labels}, \hyperpage{42}
+ \subitem {Load$<$ T $>$}, \hyperpage{29}
+ \subitem {MainObject}, \hyperpage{42}
+ \subitem {MainObjectType}, \hyperpage{42}
+ \subitem {MetaPath}, \hyperpage{43}
+ \subitem {Move}, \hyperpage{30}
+ \subitem {OpenExternal}, \hyperpage{31}
+ \subitem {operator Asset}, \hyperpage{31, 32}
+ \subitem {operator Object}, \hyperpage{33}
+ \subitem {OwningBundle}, \hyperpage{43}
+ \subitem {OwningBundleVariant}, \hyperpage{43}
+ \subitem {RemoveSubAsset}, \hyperpage{33}
+ \subitem {Rename}, \hyperpage{33}
+ \subitem {Save}, \hyperpage{34}
+ \subitem {SaveAs}, \hyperpage{34}
+ \subitem {SaveAsNew}, \hyperpage{35}
+ \subitem {SetDirty}, \hyperpage{36}
+ \subitem {SetLabels}, \hyperpage{36}
+ \subitem {SubAssets}, \hyperpage{44}
+ \subitem {Trash}, \hyperpage{37}
+ \subitem {VisibleSubAssets}, \hyperpage{44}
+ \item {Asset.Bundle}, \hyperpage{45}
+ \subitem {All}, \hyperpage{50}
+ \subitem {ForceRemove}, \hyperpage{46}
+ \subitem {GetAllDependencies}, \hyperpage{46}
+ \subitem {GetAllPaths}, \hyperpage{47}
+ \subitem {GetDirectDependencies}, \hyperpage{47}
+ \subitem {GetOwningBundle}, \hyperpage{48}
+ \subitem {GetOwningBundleVariant}, \hyperpage{48}
+ \subitem {GetPaths}, \hyperpage{49}
+ \subitem {Remove}, \hyperpage{49}
+ \subitem {RemoveUnused}, \hyperpage{50}
+ \subitem {Unused}, \hyperpage{50}
+ \item {Asset.Database}, \hyperpage{51}
+ \subitem {AllowAutoRefresh}, \hyperpage{52}
+ \subitem {Contains}, \hyperpage{52, 53}
+ \subitem {DesiredWorkerCount}, \hyperpage{57}
+ \subitem {DirectoryMonitoring}, \hyperpage{57}
+ \subitem {DisallowAutoRefresh}, \hyperpage{53}
+ \subitem {ImportAll}, \hyperpage{53}
+ \subitem {ReleaseFileHandles}, \hyperpage{55}
+ \subitem {SaveAll}, \hyperpage{55}
+ \subitem {UpgradeAllAssetSerializationVersions}, \hyperpage{55}
+ \subitem {UpgradeAssetSerializationVersion}, \hyperpage{55, 56}
+ \item {Asset.Database.CacheServer}, \hyperpage{58}
+ \subitem {Address}, \hyperpage{60}
+ \subitem {ApplySettings}, \hyperpage{59}
+ \subitem {CanConnect}, \hyperpage{59}
+ \subitem {Connected}, \hyperpage{60}
+ \subitem {ConnectedAddress}, \hyperpage{61}
+ \subitem {Disconnect}, \hyperpage{60}
+ \subitem {DownloadsAllowed}, \hyperpage{61}
+ \subitem {Enabled}, \hyperpage{61}
+ \subitem {NamespacePrefix}, \hyperpage{62}
+ \subitem {Port}, \hyperpage{62}
+ \subitem {ResetReconnectTimer}, \hyperpage{60}
+ \subitem {UploadsAllowed}, \hyperpage{62}
+ \item {Asset.Dependency}, \hyperpage{63}
+ \subitem {GetAll}, \hyperpage{64}
+ \subitem {GetDirect}, \hyperpage{65}
+ \subitem {GetHash}, \hyperpage{66}
+ \subitem {Register}, \hyperpage{67}
+ \subitem {Unregister}, \hyperpage{67}
+ \item {Asset.File}, \hyperpage{68}
+ \subitem {BatchEditing}, \hyperpage{71}
+ \subitem {CanMove}, \hyperpage{71}
+ \subitem {CanOpenInEditor}, \hyperpage{72}
+ \subitem {Copy}, \hyperpage{73}
+ \subitem {CopyAsNew}, \hyperpage{74}
+ \subitem {Create}, \hyperpage{74--76}
+ \subitem {CreateAsNew}, \hyperpage{76, 77}
+ \subitem {CreateOrLoad$<$ T $>$}, \hyperpage{78}
+ \subitem {Delete}, \hyperpage{79, 80}
+ \subitem {Find}, \hyperpage{81}
+ \subitem {FindGuids}, \hyperpage{82}
+ \subitem {FindPaths}, \hyperpage{82}
+ \subitem {ForceSave}, \hyperpage{83}
+ \subitem {Import}, \hyperpage{83--85}
+ \subitem {ImportAndLoad$<$ T $>$}, \hyperpage{85}
+ \subitem {Load$<$ T $>$}, \hyperpage{86}
+ \subitem {LoadAsync}, \hyperpage{87}
+ \subitem {LoadMain$<$ T $>$}, \hyperpage{88, 89}
+ \subitem {LoadOrCreate$<$ T $>$}, \hyperpage{90}
+ \subitem {Move}, \hyperpage{91}
+ \subitem {OpenExternal}, \hyperpage{92, 93}
+ \subitem {PathsNotDeleted}, \hyperpage{98}
+ \subitem {Rename}, \hyperpage{93}
+ \subitem {Save}, \hyperpage{94, 95}
+ \subitem {Trash}, \hyperpage{95--97}
+ \item {Asset.Importer}, \hyperpage{98}
+ \subitem {ApplySettings}, \hyperpage{100}
+ \subitem {ClearOverride}, \hyperpage{100}
+ \subitem {GetActive}, \hyperpage{101--104}
+ \subitem {GetAvailable}, \hyperpage{104, 105}
+ \subitem {GetDefault}, \hyperpage{105, 106}
+ \subitem {GetOverride}, \hyperpage{106, 107}
+ \subitem {IsOverridden}, \hyperpage{107}
+ \subitem {SetOverride$<$ T $>$}, \hyperpage{108}
+ \item {Asset.Label}, \hyperpage{109}
+ \subitem {Add}, \hyperpage{110}
+ \subitem {ClearAll}, \hyperpage{111}
+ \subitem {GetAll}, \hyperpage{112}
+ \subitem {SetAll}, \hyperpage{114}
+ \item {Asset.Package}, \hyperpage{115}
+ \subitem {Export}, \hyperpage{115, 116}
+ \subitem {Import}, \hyperpage{117}
+ \subitem {ImportInteractive}, \hyperpage{117}
+ \item {Asset.Path}, \hyperpage{118}
+ \subitem {AssetPath}, \hyperpage{142}
+ \subitem {CreateFolders}, \hyperpage{125}
+ \subitem {Equals}, \hyperpage{127, 128}
+ \subitem {Exists}, \hyperpage{142}
+ \subitem {ExistsInFileSystem}, \hyperpage{142}
+ \subitem {Extension}, \hyperpage{143}
+ \subitem {FileExists}, \hyperpage{129}
+ \subitem {FileName}, \hyperpage{143}
+ \subitem {FileNameWithoutExtension}, \hyperpage{143}
+ \subitem {FolderExists}, \hyperpage{130}
+ \subitem {FolderPath}, \hyperpage{144}
+ \subitem {FromMeta}, \hyperpage{130}
+ \subitem {FullAssetsPath}, \hyperpage{144}
+ \subitem {FullLibraryPath}, \hyperpage{144}
+ \subitem {FullLogsPath}, \hyperpage{145}
+ \subitem {FullPackagesPath}, \hyperpage{145}
+ \subitem {FullPath}, \hyperpage{145}
+ \subitem {FullProjectPath}, \hyperpage{145}
+ \subitem {FullProjectSettingsPath}, \hyperpage{145}
+ \subitem {FullProjectTempPath}, \hyperpage{146}
+ \subitem {FullUserSettingsPath}, \hyperpage{146}
+ \subitem {Get}, \hyperpage{131--133}
+ \subitem {GetGuid}, \hyperpage{133}
+ \subitem {GetHashCode}, \hyperpage{134}
+ \subitem {GetScene}, \hyperpage{134}
+ \subitem {GetSubFolders}, \hyperpage{135}
+ \subitem {Guid}, \hyperpage{146}
+ \subitem {IsValid}, \hyperpage{135}
+ \subitem {MetaPath}, \hyperpage{146}
+ \subitem {OpenExternal}, \hyperpage{136}
+ \subitem {operator Path}, \hyperpage{136}
+ \subitem {operator String}, \hyperpage{137}
+ \subitem {operator!=}, \hyperpage{137, 138}
+ \subitem {operator==}, \hyperpage{138, 139}
+ \subitem {Path}, \hyperpage{123, 124}
+ \subitem {Rename}, \hyperpage{140}
+ \subitem {SubFolders}, \hyperpage{147}
+ \subitem {ToMeta}, \hyperpage{140}
+ \subitem {ToString}, \hyperpage{140}
+ \subitem {ToStrings}, \hyperpage{141}
+ \subitem {UniqueFilePath}, \hyperpage{147}
+ \subitem {UniquifyFileName}, \hyperpage{141}
+ \item {Asset.Status}, \hyperpage{148}
+ \subitem {IsForeign}, \hyperpage{149}
+ \subitem {IsImported}, \hyperpage{149, 150}
+ \subitem {IsLoaded}, \hyperpage{150}
+ \subitem {IsMain}, \hyperpage{151}
+ \subitem {IsNative}, \hyperpage{151}
+ \subitem {IsScene}, \hyperpage{152}
+ \subitem {IsSub}, \hyperpage{152}
+ \item {Asset.SubAsset}, \hyperpage{153}
+ \subitem {Add}, \hyperpage{154}
+ \subitem {Extract}, \hyperpage{154}
+ \subitem {LoadAll}, \hyperpage{155}
+ \subitem {LoadVisible}, \hyperpage{155}
+ \subitem {Remove}, \hyperpage{156}
+ \subitem {SetMain}, \hyperpage{157}
+ \item {Asset.VersionControl}, \hyperpage{158}
+ \subitem {CanMakeEditable}, \hyperpage{160--163}
+ \subitem {IsEditable}, \hyperpage{163--165}
+ \subitem {IsMetaEditable}, \hyperpage{166}
+ \subitem {MakeEditable}, \hyperpage{166, 167}
+ \subitem {MakeEditableInteractive}, \hyperpage{168}
+ \item {AssetLoadException}, \hyperpage{169}
+ \subitem {AssetLoadException}, \hyperpage{171}
+ \item {AssetPath}
+ \subitem {Asset}, \hyperpage{38}
+ \subitem {Asset.Path}, \hyperpage{142}
+ \item {AvailableImporters}
+ \subitem {Asset}, \hyperpage{38}
+
+ \indexspace
+
+ \item {BatchEditing}
+ \subitem {Asset.File}, \hyperpage{71}
+
+ \indexspace
+
+ \item {CanConnect}
+ \subitem {Asset.Database.CacheServer}, \hyperpage{59}
+ \item {CanMakeEditable}
+ \subitem {Asset.VersionControl}, \hyperpage{160--163}
+ \item {CanMove}
+ \subitem {Asset}, \hyperpage{20}
+ \subitem {Asset.File}, \hyperpage{71}
+ \item {CanOpenInEditor}
+ \subitem {Asset}, \hyperpage{20}
+ \subitem {Asset.File}, \hyperpage{72}
+ \item {Change Log}, \hyperpage{5}
+ \item {ClearAll}
+ \subitem {Asset.Label}, \hyperpage{111}
+ \item {ClearLabels}
+ \subitem {Asset}, \hyperpage{21}
+ \item {ClearOverride}
+ \subitem {Asset.Importer}, \hyperpage{100}
+ \item {CodeSmile AssetDatabase}, \hyperpage{1}
+ \item {CodeSmile Packages -\/ Getting Started}, \hyperpage{8}
+ \item {CodeSmileEditor}, \hyperpage{10}
+ \item {Connected}
+ \subitem {Asset.Database.CacheServer}, \hyperpage{60}
+ \item {ConnectedAddress}
+ \subitem {Asset.Database.CacheServer}, \hyperpage{61}
+ \item {Contains}
+ \subitem {Asset.Database}, \hyperpage{52, 53}
+ \item {Copy}
+ \subitem {Asset.File}, \hyperpage{73}
+ \item {CopyAsNew}
+ \subitem {Asset.File}, \hyperpage{74}
+ \item {Create}
+ \subitem {Asset.File}, \hyperpage{74--76}
+ \item {CreateAsNew}
+ \subitem {Asset.File}, \hyperpage{76, 77}
+ \item {CreateFolders}
+ \subitem {Asset.Path}, \hyperpage{125}
+ \item {CreateOrLoad$<$ T $>$}
+ \subitem {Asset.File}, \hyperpage{78}
+
+ \indexspace
+
+ \item {DefaultImporter}
+ \subitem {Asset}, \hyperpage{38}
+ \item {Delete}
+ \subitem {Asset}, \hyperpage{21}
+ \subitem {Asset.File}, \hyperpage{79, 80}
+ \item {Dependencies}
+ \subitem {Asset}, \hyperpage{39}
+ \item {DesiredWorkerCount}
+ \subitem {Asset.Database}, \hyperpage{57}
+ \item {DirectDependencies}
+ \subitem {Asset}, \hyperpage{39}
+ \item {DirectoryMonitoring}
+ \subitem {Asset.Database}, \hyperpage{57}
+ \item {DisallowAutoRefresh}
+ \subitem {Asset.Database}, \hyperpage{53}
+ \item {Disconnect}
+ \subitem {Asset.Database.CacheServer}, \hyperpage{60}
+ \item {DownloadsAllowed}
+ \subitem {Asset.Database.CacheServer}, \hyperpage{61}
+ \item {Duplicate}
+ \subitem {Asset}, \hyperpage{22}
+
+ \indexspace
+
+ \item {Enabled}
+ \subitem {Asset.Database.CacheServer}, \hyperpage{61}
+ \item {Equals}
+ \subitem {Asset.Path}, \hyperpage{127, 128}
+ \item {Exists}
+ \subitem {Asset.Path}, \hyperpage{142}
+ \item {ExistsInFileSystem}
+ \subitem {Asset.Path}, \hyperpage{142}
+ \item {Export}
+ \subitem {Asset.Package}, \hyperpage{115, 116}
+ \item {ExportPackage}
+ \subitem {Asset}, \hyperpage{22}
+ \item {Extension}
+ \subitem {Asset.Path}, \hyperpage{143}
+ \item {Extract}
+ \subitem {Asset.SubAsset}, \hyperpage{154}
+
+ \indexspace
+
+ \item {FileExists}
+ \subitem {Asset.Path}, \hyperpage{129}
+ \item {FileId}
+ \subitem {Asset}, \hyperpage{39}
+ \item {FileName}
+ \subitem {Asset.Path}, \hyperpage{143}
+ \item {FileNameWithoutExtension}
+ \subitem {Asset.Path}, \hyperpage{143}
+ \item {Find}
+ \subitem {Asset.File}, \hyperpage{81}
+ \item {FindGuids}
+ \subitem {Asset.File}, \hyperpage{82}
+ \item {FindPaths}
+ \subitem {Asset.File}, \hyperpage{82}
+ \item {FolderExists}
+ \subitem {Asset.Path}, \hyperpage{130}
+ \item {FolderPath}
+ \subitem {Asset.Path}, \hyperpage{144}
+ \item {ForceRemove}
+ \subitem {Asset.Bundle}, \hyperpage{46}
+ \item {ForceSave}
+ \subitem {Asset}, \hyperpage{23}
+ \subitem {Asset.File}, \hyperpage{83}
+ \item {FromMeta}
+ \subitem {Asset.Path}, \hyperpage{130}
+ \item {FullAssetsPath}
+ \subitem {Asset.Path}, \hyperpage{144}
+ \item {FullLibraryPath}
+ \subitem {Asset.Path}, \hyperpage{144}
+ \item {FullLogsPath}
+ \subitem {Asset.Path}, \hyperpage{145}
+ \item {FullPackagesPath}
+ \subitem {Asset.Path}, \hyperpage{145}
+ \item {FullPath}
+ \subitem {Asset.Path}, \hyperpage{145}
+ \item {FullProjectPath}
+ \subitem {Asset.Path}, \hyperpage{145}
+ \item {FullProjectSettingsPath}
+ \subitem {Asset.Path}, \hyperpage{145}
+ \item {FullProjectTempPath}
+ \subitem {Asset.Path}, \hyperpage{146}
+ \item {FullUserSettingsPath}
+ \subitem {Asset.Path}, \hyperpage{146}
+
+ \indexspace
+
+ \item {Get}
+ \subitem {Asset.Path}, \hyperpage{131--133}
+ \item {GetActive}
+ \subitem {Asset.Importer}, \hyperpage{101--104}
+ \item {GetAll}
+ \subitem {Asset.Dependency}, \hyperpage{64}
+ \subitem {Asset.Label}, \hyperpage{112}
+ \item {GetAllDependencies}
+ \subitem {Asset.Bundle}, \hyperpage{46}
+ \item {GetAllPaths}
+ \subitem {Asset.Bundle}, \hyperpage{47}
+ \item {GetAvailable}
+ \subitem {Asset.Importer}, \hyperpage{104, 105}
+ \item {GetDefault}
+ \subitem {Asset.Importer}, \hyperpage{105, 106}
+ \item {GetDirect}
+ \subitem {Asset.Dependency}, \hyperpage{65}
+ \item {GetDirectDependencies}
+ \subitem {Asset.Bundle}, \hyperpage{47}
+ \item {GetFileId}
+ \subitem {Asset}, \hyperpage{23}
+ \item {GetGuid}
+ \subitem {Asset}, \hyperpage{23}
+ \subitem {Asset.Path}, \hyperpage{133}
+ \item {GetGuidAndFileId}
+ \subitem {Asset}, \hyperpage{24}
+ \item {GetHash}
+ \subitem {Asset.Dependency}, \hyperpage{66}
+ \item {GetHashCode}
+ \subitem {Asset.Path}, \hyperpage{134}
+ \item {GetIcon}
+ \subitem {Asset}, \hyperpage{25}
+ \item {GetLastErrorMessage}
+ \subitem {Asset}, \hyperpage{26}
+ \item {GetMain$<$ T $>$}
+ \subitem {Asset}, \hyperpage{27}
+ \item {GetMainType}
+ \subitem {Asset}, \hyperpage{27, 28}
+ \item {GetOverride}
+ \subitem {Asset.Importer}, \hyperpage{106, 107}
+ \item {GetOwningBundle}
+ \subitem {Asset.Bundle}, \hyperpage{48}
+ \item {GetOwningBundleVariant}
+ \subitem {Asset.Bundle}, \hyperpage{48}
+ \item {GetPaths}
+ \subitem {Asset.Bundle}, \hyperpage{49}
+ \item {GetScene}
+ \subitem {Asset.Path}, \hyperpage{134}
+ \item {GetSubFolders}
+ \subitem {Asset.Path}, \hyperpage{135}
+ \item {GetSubType}
+ \subitem {Asset}, \hyperpage{29}
+ \item {Guid}
+ \subitem {Asset}, \hyperpage{40}
+ \subitem {Asset.Path}, \hyperpage{146}
+
+ \indexspace
+
+ \item {Icon}
+ \subitem {Asset}, \hyperpage{40}
+ \item {Import}
+ \subitem {Asset.File}, \hyperpage{83--85}
+ \subitem {Asset.Package}, \hyperpage{117}
+ \item {ImportAll}
+ \subitem {Asset.Database}, \hyperpage{53}
+ \item {ImportAndLoad$<$ T $>$}
+ \subitem {Asset.File}, \hyperpage{85}
+ \item {ImportInteractive}
+ \subitem {Asset.Package}, \hyperpage{117}
+ \item {IsDeleted}
+ \subitem {Asset}, \hyperpage{40}
+ \item {IsEditable}
+ \subitem {Asset.VersionControl}, \hyperpage{163--165}
+ \item {IsForeign}
+ \subitem {Asset}, \hyperpage{40}
+ \subitem {Asset.Status}, \hyperpage{149}
+ \item {IsImported}
+ \subitem {Asset.Status}, \hyperpage{149, 150}
+ \item {IsImporterOverridden}
+ \subitem {Asset}, \hyperpage{41}
+ \item {IsLoaded}
+ \subitem {Asset.Status}, \hyperpage{150}
+ \item {IsMain}
+ \subitem {Asset.Status}, \hyperpage{151}
+ \item {IsMetaEditable}
+ \subitem {Asset.VersionControl}, \hyperpage{166}
+ \item {IsNative}
+ \subitem {Asset}, \hyperpage{41}
+ \subitem {Asset.Status}, \hyperpage{151}
+ \item {IsOverridden}
+ \subitem {Asset.Importer}, \hyperpage{107}
+ \item {IsScene}
+ \subitem {Asset}, \hyperpage{41}
+ \subitem {Asset.Status}, \hyperpage{152}
+ \item {IsSub}
+ \subitem {Asset.Status}, \hyperpage{152}
+ \item {IsValid}
+ \subitem {Asset.Path}, \hyperpage{135}
+
+ \indexspace
+
+ \item {Labels}
+ \subitem {Asset}, \hyperpage{42}
+ \item {Load$<$ T $>$}
+ \subitem {Asset}, \hyperpage{29}
+ \subitem {Asset.File}, \hyperpage{86}
+ \item {LoadAll}
+ \subitem {Asset.SubAsset}, \hyperpage{155}
+ \item {LoadAsync}
+ \subitem {Asset.File}, \hyperpage{87}
+ \item {LoadMain$<$ T $>$}
+ \subitem {Asset.File}, \hyperpage{88, 89}
+ \item {LoadOrCreate$<$ T $>$}
+ \subitem {Asset.File}, \hyperpage{90}
+ \item {LoadVisible}
+ \subitem {Asset.SubAsset}, \hyperpage{155}
+
+ \indexspace
+
+ \item {MainObject}
+ \subitem {Asset}, \hyperpage{42}
+ \item {MainObjectType}
+ \subitem {Asset}, \hyperpage{42}
+ \item {MakeEditable}
+ \subitem {Asset.VersionControl}, \hyperpage{166, 167}
+ \item {MakeEditableInteractive}
+ \subitem {Asset.VersionControl}, \hyperpage{168}
+ \item {MetaPath}
+ \subitem {Asset}, \hyperpage{43}
+ \subitem {Asset.Path}, \hyperpage{146}
+ \item {Move}
+ \subitem {Asset}, \hyperpage{30}
+ \subitem {Asset.File}, \hyperpage{91}
+
+ \indexspace
+
+ \item {NamespacePrefix}
+ \subitem {Asset.Database.CacheServer}, \hyperpage{62}
+
+ \indexspace
+
+ \item {OpenExternal}
+ \subitem {Asset}, \hyperpage{31}
+ \subitem {Asset.File}, \hyperpage{92, 93}
+ \subitem {Asset.Path}, \hyperpage{136}
+ \item {operator Asset}
+ \subitem {Asset}, \hyperpage{31, 32}
+ \item {operator Object}
+ \subitem {Asset}, \hyperpage{33}
+ \item {operator Path}
+ \subitem {Asset.Path}, \hyperpage{136}
+ \item {operator String}
+ \subitem {Asset.Path}, \hyperpage{137}
+ \item {operator!=}
+ \subitem {Asset.Path}, \hyperpage{137, 138}
+ \item {operator==}
+ \subitem {Asset.Path}, \hyperpage{138, 139}
+ \item {OwningBundle}
+ \subitem {Asset}, \hyperpage{43}
+ \item {OwningBundleVariant}
+ \subitem {Asset}, \hyperpage{43}
+
+ \indexspace
+
+ \item {Path}
+ \subitem {Asset.Path}, \hyperpage{123, 124}
+ \item {PathsNotDeleted}
+ \subitem {Asset.File}, \hyperpage{98}
+ \item {Port}
+ \subitem {Asset.Database.CacheServer}, \hyperpage{62}
+
+ \indexspace
+
+ \item {Register}
+ \subitem {Asset.Dependency}, \hyperpage{67}
+ \item {ReleaseFileHandles}
+ \subitem {Asset.Database}, \hyperpage{55}
+ \item {Remove}
+ \subitem {Asset.Bundle}, \hyperpage{49}
+ \subitem {Asset.SubAsset}, \hyperpage{156}
+ \item {RemoveSubAsset}
+ \subitem {Asset}, \hyperpage{33}
+ \item {RemoveUnused}
+ \subitem {Asset.Bundle}, \hyperpage{50}
+ \item {Rename}
+ \subitem {Asset}, \hyperpage{33}
+ \subitem {Asset.File}, \hyperpage{93}
+ \subitem {Asset.Path}, \hyperpage{140}
+ \item {ResetReconnectTimer}
+ \subitem {Asset.Database.CacheServer}, \hyperpage{60}
+
+ \indexspace
+
+ \item {Save}
+ \subitem {Asset}, \hyperpage{34}
+ \subitem {Asset.File}, \hyperpage{94, 95}
+ \item {SaveAll}
+ \subitem {Asset.Database}, \hyperpage{55}
+ \item {SaveAs}
+ \subitem {Asset}, \hyperpage{34}
+ \item {SaveAsNew}
+ \subitem {Asset}, \hyperpage{35}
+ \item {SetAll}
+ \subitem {Asset.Label}, \hyperpage{114}
+ \item {SetDirty}
+ \subitem {Asset}, \hyperpage{36}
+ \item {SetLabels}
+ \subitem {Asset}, \hyperpage{36}
+ \item {SetMain}
+ \subitem {Asset.SubAsset}, \hyperpage{157}
+ \item {SetOverride$<$ T $>$}
+ \subitem {Asset.Importer}, \hyperpage{108}
+ \item {SubAssets}
+ \subitem {Asset}, \hyperpage{44}
+ \item {SubFolders}
+ \subitem {Asset.Path}, \hyperpage{147}
+
+ \indexspace
+
+ \item {ToMeta}
+ \subitem {Asset.Path}, \hyperpage{140}
+ \item {ToString}
+ \subitem {Asset.Path}, \hyperpage{140}
+ \item {ToStrings}
+ \subitem {Asset.Path}, \hyperpage{141}
+ \item {Trash}
+ \subitem {Asset}, \hyperpage{37}
+ \subitem {Asset.File}, \hyperpage{95--97}
+
+ \indexspace
+
+ \item {UniqueFilePath}
+ \subitem {Asset.Path}, \hyperpage{147}
+ \item {UniquifyFileName}
+ \subitem {Asset.Path}, \hyperpage{141}
+ \item {Unregister}
+ \subitem {Asset.Dependency}, \hyperpage{67}
+ \item {Unused}
+ \subitem {Asset.Bundle}, \hyperpage{50}
+ \item {UpgradeAllAssetSerializationVersions}
+ \subitem {Asset.Database}, \hyperpage{55}
+ \item {UpgradeAssetSerializationVersion}
+ \subitem {Asset.Database}, \hyperpage{55, 56}
+ \item {UploadsAllowed}
+ \subitem {Asset.Database.CacheServer}, \hyperpage{62}
+
+ \indexspace
+
+ \item {VisibleSubAssets}
+ \subitem {Asset}, \hyperpage{44}
+
+\end{theindex}
diff --git a/Docs~/latex/refman.log b/Docs~/latex/refman.log
new file mode 100644
index 00000000..1bdc5f7f
--- /dev/null
+++ b/Docs~/latex/refman.log
@@ -0,0 +1,4188 @@
+This is pdfTeX, Version 3.141592653-2.6-1.40.25 (MiKTeX 23.10) (preloaded format=pdflatex 2024.1.22) 22 JAN 2024 17:49
+entering extended mode
+ restricted \write18 enabled.
+ %&-line parsing enabled.
+**./refman.tex
+(refman.tex
+LaTeX2e <2023-06-01> patch level 1
+L3 programming layer <2023-08-29>
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/base\article.cls
+Document Class: article 2023/05/17 v1.4n Standard LaTeX document class
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/base\size10.clo
+File: size10.clo 2023/05/17 v1.4n Standard LaTeX file (size option)
+)
+\c@part=\count185
+\c@section=\count186
+\c@subsection=\count187
+\c@subsubsection=\count188
+\c@paragraph=\count189
+\c@subparagraph=\count190
+\c@figure=\count191
+\c@table=\count192
+\abovecaptionskip=\skip48
+\belowcaptionskip=\skip49
+\bibindent=\dimen140
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/base\ifthen.sty
+Package: ifthen 2022/04/13 v1.1d Standard LaTeX ifthen package (DPC)
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/tools\array.sty
+Rollback for package 'array' requested -> date 2016-10-06.
+ Best approximation is the release introduced on 2016-10-06.
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/tools\array-2016-10
+-06.sty
+Package: array 2016/10/06 v2.4d Tabular extension package (FMi)
+\col@sep=\dimen141
+\extrarowheight=\dimen142
+\NC@list=\toks17
+\extratabsurround=\skip50
+\backup@length=\skip51
+))
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/generic/infwarerr\infware
+rr.sty
+package info suppressed
+) (doxygen.sty
+Package: doxygen
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/base\alltt.sty
+Package: alltt 2021/01/29 v2.0g defines alltt environment
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/tools\calc.sty
+Package: calc 2017/05/25 v4.3 Infix arithmetic (KKT,FJ)
+\calc@Acount=\count193
+\calc@Bcount=\count194
+\calc@Adimen=\dimen143
+\calc@Bdimen=\dimen144
+\calc@Askip=\skip52
+\calc@Bskip=\skip53
+LaTeX Info: Redefining \setlength on input line 80.
+LaTeX Info: Redefining \addtolength on input line 81.
+\calc@Ccount=\count195
+\calc@Cskip=\skip54
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/float\float.sty
+Package: float 2001/11/08 v1.3d Float enhancements (AL)
+\c@float@type=\count196
+\float@exts=\toks18
+\float@box=\box51
+\@float@everytoks=\toks19
+\@floatcapt=\box52
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/tools\verbatim.sty
+Package: verbatim 2022-07-02 v1.5u LaTeX2e package for verbatim enhancements
+\every@verbatim=\toks20
+\verbatim@line=\toks21
+\verbatim@in@stream=\read2
+) (C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/xcolor\xcolor.sty
+Package: xcolor 2022/06/12 v2.14 LaTeX color extensions (UK)
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/graphics-cfg\color.
+cfg
+File: color.cfg 2016/01/02 v1.6 sample color configuration
+)
+Package xcolor Info: Driver file: pdftex.def on input line 227.
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/graphics-def\pdftex
+.def
+File: pdftex.def 2022/09/22 v1.2b Graphics/color driver for pdftex
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/colortbl\colortbl.s
+ty
+Package: colortbl 2022/06/20 v1.0f Color table columns (DPC)
+\everycr=\toks22
+\minrowclearance=\skip55
+\rownum=\count197
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/graphics\mathcolor.
+ltx)
+Package xcolor Info: Model `cmy' substituted by `cmy0' on input line 1353.
+Package xcolor Info: Model `hsb' substituted by `rgb' on input line 1357.
+Package xcolor Info: Model `RGB' extended on input line 1369.
+Package xcolor Info: Model `HTML' substituted by `rgb' on input line 1371.
+Package xcolor Info: Model `Hsb' substituted by `hsb' on input line 1372.
+Package xcolor Info: Model `tHsb' substituted by `hsb' on input line 1373.
+Package xcolor Info: Model `HSB' substituted by `hsb' on input line 1374.
+Package xcolor Info: Model `Gray' substituted by `gray' on input line 1375.
+Package xcolor Info: Model `wave' substituted by `hsb' on input line 1376.
+) (longtable_doxygen.sty
+Package: longtable_doxygen 2014/10/28 v4.11 Multi-page Table package (DPC) - fr
+ozen version for doxygen
+\LTleft=\skip56
+\LTright=\skip57
+\LTpre=\skip58
+\LTpost=\skip59
+\LTchunksize=\count198
+\LTcapwidth=\dimen145
+\LT@head=\box53
+\LT@firsthead=\box54
+\LT@foot=\box55
+\LT@lastfoot=\box56
+\LT@cols=\count199
+\LT@rows=\count266
+\c@LT@tables=\count267
+\c@LT@chunks=\count268
+\LT@p@ftn=\toks23
+) (tabu_doxygen.sty
+Package: tabu_doxygen 2011/02/26 v2.8 - flexible LaTeX tabulars (FC), frozen ve
+rsion for doxygen
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/varwidth\varwidth.s
+ty
+Package: varwidth 2009/03/30 ver 0.92; Variable-width minipages
+\@vwid@box=\box57
+\sift@deathcycles=\count269
+\@vwid@loff=\dimen146
+\@vwid@roff=\dimen147
+)
+\c@taburow=\count270
+\tabu@nbcols=\count271
+\tabu@cnt=\count272
+\tabu@Xcol=\count273
+\tabu@alloc=\count274
+\tabu@nested=\count275
+\tabu@target=\dimen148
+\tabu@spreadtarget=\dimen149
+\tabu@naturalX=\dimen150
+\tabucolX=\dimen151
+\tabu@Xsum=\dimen152
+\extrarowdepth=\dimen153
+\abovetabulinesep=\dimen154
+\belowtabulinesep=\dimen155
+\tabustrutrule=\dimen156
+\tabu@thebody=\toks24
+\tabu@footnotes=\toks25
+\tabu@box=\box58
+\tabu@arstrutbox=\box59
+\tabu@hleads=\box60
+\tabu@vleads=\box61
+\tabu@cellskip=\skip60
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/fancyvrb\fancyvrb.s
+ty
+Package: fancyvrb 2023/11/06 4.5b verbatim text (tvz,hv)
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/graphics\keyval.sty
+Package: keyval 2022/05/29 v1.15 key=value parser (DPC)
+\KV@toks@=\toks26
+)
+\FV@CodeLineNo=\count276
+\FV@InFile=\read3
+\FV@TabBox=\box62
+\c@FancyVerbLine=\count277
+\FV@StepNumber=\count278
+\FV@OutFile=\write3
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/tools\tabularx.sty
+Package: tabularx 2020/01/15 v2.11c `tabularx' package (DPC)
+\TX@col@width=\dimen157
+\TX@old@table=\dimen158
+\TX@old@col=\dimen159
+\TX@target=\dimen160
+\TX@delta=\dimen161
+\TX@cols=\count279
+\TX@ftn=\toks27
+) (C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/tools\multicol.st
+y
+Package: multicol 2023/03/30 v1.9f multicolumn formatting (FMi)
+\c@tracingmulticols=\count280
+\mult@box=\box63
+\multicol@leftmargin=\dimen162
+\c@unbalance=\count281
+\c@collectmore=\count282
+\doublecol@number=\count283
+\multicoltolerance=\count284
+\multicolpretolerance=\count285
+\full@width=\dimen163
+\page@free=\dimen164
+\premulticols=\dimen165
+\postmulticols=\dimen166
+\multicolsep=\skip61
+\multicolbaselineskip=\skip62
+\partial@page=\box64
+\last@line=\box65
+\mc@boxedresult=\box66
+\maxbalancingoverflow=\dimen167
+\mult@rightbox=\box67
+\mult@grightbox=\box68
+\mult@firstbox=\box69
+\mult@gfirstbox=\box70
+\@tempa=\box71
+\@tempa=\box72
+\@tempa=\box73
+\@tempa=\box74
+\@tempa=\box75
+\@tempa=\box76
+\@tempa=\box77
+\@tempa=\box78
+\@tempa=\box79
+\@tempa=\box80
+\@tempa=\box81
+\@tempa=\box82
+\@tempa=\box83
+\@tempa=\box84
+\@tempa=\box85
+\@tempa=\box86
+\@tempa=\box87
+\@tempa=\box88
+\@tempa=\box89
+\@tempa=\box90
+\@tempa=\box91
+\@tempa=\box92
+\@tempa=\box93
+\@tempa=\box94
+\@tempa=\box95
+\@tempa=\box96
+\@tempa=\box97
+\@tempa=\box98
+\@tempa=\box99
+\@tempa=\box100
+\@tempa=\box101
+\@tempa=\box102
+\@tempa=\box103
+\@tempa=\box104
+\@tempa=\box105
+\@tempa=\box106
+\c@minrows=\count286
+\c@columnbadness=\count287
+\c@finalcolumnbadness=\count288
+\last@try=\dimen168
+\multicolovershoot=\dimen169
+\multicolundershoot=\dimen170
+\mult@nat@firstbox=\box107
+\colbreak@box=\box108
+\mc@col@check@num=\count289
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/multirow\multirow.s
+ty
+Package: multirow 2021/03/15 v2.8 Span multiple rows of a table
+\multirow@colwidth=\skip63
+\multirow@cntb=\count290
+\multirow@dima=\skip64
+\bigstrutjot=\dimen171
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/hanging\hanging.sty
+Package: hanging 2009/09/02 v1.2b hanging paragraphs and punctuation
+\h@ngcommawd=\skip65
+\h@ngfstopwd=\skip66
+\h@ngquotewd=\skip67
+\h@ngdquotewd=\skip68
+\h@ngquerywd=\skip69
+\h@ngexclwd=\skip70
+\h@ngcolonwd=\skip71
+\h@ngscolonwd=\skip72
+) (C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/generic/iftex\ifpdf.sty
+Package: ifpdf 2019/10/25 v3.4 ifpdf legacy package. Use iftex instead.
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/generic/iftex\iftex.sty
+Package: iftex 2022/02/03 v1.0f TeX engine tests
+))
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/adjustbox\adjustbox
+.sty
+Package: adjustbox 2022/10/17 v1.3a Adjusting TeX boxes (trim, clip, ...)
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/xkeyval\xkeyval.sty
+Package: xkeyval 2022/06/16 v2.9 package option processing (HA)
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/generic/xkeyval\xkeyval.t
+ex
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/generic/xkeyval\xkvutils.
+tex
+\XKV@toks=\toks28
+\XKV@tempa@toks=\toks29
+)
+\XKV@depth=\count291
+File: xkeyval.tex 2014/12/03 v2.7a key=value parser (HA)
+))
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/adjustbox\adjcalc.s
+ty
+Package: adjcalc 2012/05/16 v1.1 Provides advanced setlength with multiple back
+-ends (calc, etex, pgfmath)
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/adjustbox\trimclip.
+sty
+Package: trimclip 2020/08/19 v1.2 Trim and clip general TeX material
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/graphics\graphicx.s
+ty
+Package: graphicx 2021/09/16 v1.2d Enhanced LaTeX Graphics (DPC,SPQR)
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/graphics\graphics.s
+ty
+Package: graphics 2022/03/10 v1.4e Standard LaTeX Graphics (DPC,SPQR)
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/graphics\trig.sty
+Package: trig 2021/08/11 v1.11 sin cos tan (DPC)
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/graphics-cfg\graphi
+cs.cfg
+File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration
+)
+Package graphics Info: Driver file: pdftex.def on input line 107.
+)
+\Gin@req@height=\dimen172
+\Gin@req@width=\dimen173
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/collectbox\collectb
+ox.sty
+Package: collectbox 2022/10/17 v0.4c Collect macro arguments as boxes
+\collectedbox=\box109
+)
+\tc@llx=\dimen174
+\tc@lly=\dimen175
+\tc@urx=\dimen176
+\tc@ury=\dimen177
+Package trimclip Info: Using driver 'tc-pdftex.def'.
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/adjustbox\tc-pdftex
+.def
+File: tc-pdftex.def 2019/01/04 v2.2 Clipping driver for pdftex
+))
+\adjbox@Width=\dimen178
+\adjbox@Height=\dimen179
+\adjbox@Depth=\dimen180
+\adjbox@Totalheight=\dimen181
+\adjbox@pwidth=\dimen182
+\adjbox@pheight=\dimen183
+\adjbox@pdepth=\dimen184
+\adjbox@ptotalheight=\dimen185
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/ifoddpage\ifoddpage
+.sty
+Package: ifoddpage 2022/10/18 v1.2 Conditionals for odd/even page detection
+\c@checkoddpage=\count292
+))
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/amsfonts\amssymb.st
+y
+Package: amssymb 2013/01/14 v3.01 AMS font symbols
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/amsfonts\amsfonts.s
+ty
+Package: amsfonts 2013/01/14 v3.01 Basic AMSFonts support
+\@emptytoks=\toks30
+\symAMSa=\mathgroup4
+\symAMSb=\mathgroup5
+LaTeX Font Info: Redeclaring math symbol \hbar on input line 98.
+LaTeX Font Info: Overwriting math alphabet `\mathfrak' in version `bold'
+(Font) U/euf/m/n --> U/euf/b/n on input line 106.
+))
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/stackengine\stacken
+gine.sty
+Package: stackengine 2021/07/22 v4.11\ Stacking text and objects in convenient
+ways
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/etoolbox\etoolbox.s
+ty
+Package: etoolbox 2020/10/05 v2.5k e-TeX tools for LaTeX (JAW)
+\etb@tempcnta=\count293
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/listofitems\listofi
+tems.sty
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/generic/listofitems\listo
+fitems.tex
+\loi_cnt_foreach_nest=\count294
+\loi_nestcnt=\count295
+)
+Package: listofitems 2019/08/21 v1.63 Grab items in lists using user-specified
+sep char (CT)
+)
+\c@@stackindex=\count296
+\@boxshift=\skip73
+\stack@tmplength=\skip74
+\temp@stkl=\skip75
+\@stackedboxwidth=\skip76
+\@addedbox=\box110
+\@anchorbox=\box111
+\@insetbox=\box112
+\se@backgroundbox=\box113
+\stackedbox=\box114
+\@centerbox=\box115
+\c@ROWcellindex@=\count297
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/enumitem\enumitem.s
+ty
+Package: enumitem 2019/06/20 v3.9 Customized lists
+\labelindent=\skip77
+\enit@outerparindent=\dimen186
+\enit@toks=\toks31
+\enit@inbox=\box116
+\enit@count@id=\count298
+\enitdp@description=\count299
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/generic/alphalph\alphalph
+.sty
+Package: alphalph 2019/12/09 v2.6 Convert numbers to letters (HO)
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/generic/intcalc\intcalc.s
+ty
+Package: intcalc 2019/12/15 v1.3 Expandable calculations with integers (HO)
+)) (C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/ulem\ulem.sty
+\UL@box=\box117
+\UL@hyphenbox=\box118
+\UL@skip=\skip78
+\UL@hook=\toks32
+\UL@height=\dimen187
+\UL@pe=\count300
+\UL@pixel=\dimen188
+\ULC@box=\box119
+Package: ulem 2019/11/18
+\ULdepth=\dimen189
+)
+\xrefbox=\box120
+\xreflength=\skip79
+\CodeWidthChar=\skip80
+\CodeHeightChar=\skip81
+\DoxyCodeWidth=\skip82
+\c@DoxyEnumeratei=\count301
+\c@DoxyEnumerateii=\count302
+\c@DoxyEnumerateiii=\count303
+\c@DoxyEnumerateiv=\count304
+\c@DoxyEnumeratev=\count305
+\c@DoxyEnumeratevi=\count306
+\c@DoxyEnumeratevii=\count307
+\c@DoxyEnumerateviii=\count308
+\c@DoxyEnumerateix=\count309
+\c@DoxyEnumeratex=\count310
+\c@DoxyEnumeratexi=\count311
+\c@DoxyEnumeratexii=\count312
+\enitdp@DoxyEnumerate=\count313
+\enitdp@DoxyItemize=\count314
+\c@subsubsubsection=\count315
+\c@subsubsubsubsection=\count316
+\c@subsubsubsubsubsection=\count317
+\c@subsubsubsubsubsubsection=\count318
+) (C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/base\inputenc.sty
+Package: inputenc 2021/02/14 v1.3d Input encoding file
+\inpenc@prehook=\toks33
+\inpenc@posthook=\toks34
+) (C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/base\makeidx.sty
+Package: makeidx 2021/10/04 v1.0m Standard LaTeX package
+) (C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/base\textcomp.sty
+Package: textcomp 2020/02/02 v2.0n Standard LaTeX package
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/wasysym\wasysym.sty
+Package: wasysym 2020/01/19 v2.4 Wasy-2 symbol support package
+\symwasy=\mathgroup6
+LaTeX Font Info: Overwriting symbol font `wasy' in version `bold'
+(Font) U/wasy/m/n --> U/wasy/b/n on input line 93.
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/generic/iftex\ifxetex.sty
+Package: ifxetex 2019/10/25 v0.7 ifxetex legacy package. Use iftex instead.
+) (C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/base\fontenc.sty
+Package: fontenc 2021/04/29 v2.0v Standard LaTeX package
+) (C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/psnfss\helvet.sty
+Package: helvet 2020/03/25 PSNFSS-v9.3 (WaS)
+) (C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/psnfss\courier.st
+y
+Package: courier 2020/03/25 PSNFSS-v9.3 (WaS)
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/geometry\geometry.s
+ty
+Package: geometry 2020/01/02 v5.9 Page Geometry
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/generic/iftex\ifvtex.sty
+Package: ifvtex 2019/10/25 v1.7 ifvtex legacy package. Use iftex instead.
+)
+\Gm@cnth=\count319
+\Gm@cntv=\count320
+\c@Gm@tempcnt=\count321
+\Gm@bindingoffset=\dimen190
+\Gm@wd@mp=\dimen191
+\Gm@odd@mp=\dimen192
+\Gm@even@mp=\dimen193
+\Gm@layoutwidth=\dimen194
+\Gm@layoutheight=\dimen195
+\Gm@layouthoffset=\dimen196
+\Gm@layoutvoffset=\dimen197
+\Gm@dimlist=\toks35
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/geometry\geometry.c
+fg))
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/changepage\changepa
+ge.sty
+Package: changepage 2009/10/20 v1.0c check page and change page layout
+\c@cp@cntr=\count322
+\cp@tempcnt=\count323
+LaTeX Info: Redefining \checkoddpage on input line 59.
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/fancyhdr\fancyhdr.s
+ty
+Package: fancyhdr 2022/11/09 v4.1 Extensive control of page headers and footers
+
+\f@nch@headwidth=\skip83
+\f@nch@O@elh=\skip84
+\f@nch@O@erh=\skip85
+\f@nch@O@olh=\skip86
+\f@nch@O@orh=\skip87
+\f@nch@O@elf=\skip88
+\f@nch@O@erf=\skip89
+\f@nch@O@olf=\skip90
+\f@nch@O@orf=\skip91
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/natbib\natbib.sty
+Package: natbib 2010/09/13 8.31b (PWD, AO)
+\bibhang=\skip92
+\bibsep=\skip93
+LaTeX Info: Redefining \cite on input line 694.
+\c@NAT@ctr=\count324
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/tocloft\tocloft.sty
+Package: tocloft 2017/08/31 v2.3i parameterised ToC, etc., typesetting
+Package tocloft Info: The document has section divisions on input line 51.
+\cftparskip=\skip94
+\cftbeforetoctitleskip=\skip95
+\cftaftertoctitleskip=\skip96
+\cftbeforepartskip=\skip97
+\cftpartnumwidth=\skip98
+\cftpartindent=\skip99
+\cftbeforesecskip=\skip100
+\cftsecindent=\skip101
+\cftsecnumwidth=\skip102
+\cftbeforesubsecskip=\skip103
+\cftsubsecindent=\skip104
+\cftsubsecnumwidth=\skip105
+\cftbeforesubsubsecskip=\skip106
+\cftsubsubsecindent=\skip107
+\cftsubsubsecnumwidth=\skip108
+\cftbeforeparaskip=\skip109
+\cftparaindent=\skip110
+\cftparanumwidth=\skip111
+\cftbeforesubparaskip=\skip112
+\cftsubparaindent=\skip113
+\cftsubparanumwidth=\skip114
+\cftbeforeloftitleskip=\skip115
+\cftafterloftitleskip=\skip116
+\cftbeforefigskip=\skip117
+\cftfigindent=\skip118
+\cftfignumwidth=\skip119
+\c@lofdepth=\count325
+\c@lotdepth=\count326
+\cftbeforelottitleskip=\skip120
+\cftafterlottitleskip=\skip121
+\cftbeforetabskip=\skip122
+\cfttabindent=\skip123
+\cfttabnumwidth=\skip124
+)
+\@indexfile=\write4
+\openout4 = `refman.idx'.
+
+
+Writing index file refman.idx
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/newunicodechar\newu
+nicodechar.sty
+Package: newunicodechar 2018/04/08 v1.2 Defining Unicode characters
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/hyperref\hyperref.s
+ty
+Package: hyperref 2023-07-08 v7.01b Hypertext links for LaTeX
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/generic/ltxcmds\ltxcmds.s
+ty
+Package: ltxcmds 2023-12-04 v1.26 LaTeX kernel commands for general use (HO)
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/generic/pdftexcmds\pdftex
+cmds.sty
+Package: pdftexcmds 2020-06-27 v0.33 Utility functions of pdfTeX for LuaTeX (HO
+)
+Package pdftexcmds Info: \pdf@primitive is available.
+Package pdftexcmds Info: \pdf@ifprimitive is available.
+Package pdftexcmds Info: \pdfdraftmode found.
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/kvsetkeys\kvsetkeys
+.sty
+Package: kvsetkeys 2022-10-05 v1.19 Key value parser (HO)
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/generic/kvdefinekeys\kvde
+finekeys.sty
+Package: kvdefinekeys 2019-12-19 v1.6 Define keys (HO)
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/generic/pdfescape\pdfesca
+pe.sty
+Package: pdfescape 2019/12/09 v1.15 Implements pdfTeX's escape features (HO)
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/hycolor\hycolor.sty
+Package: hycolor 2020-01-27 v1.10 Color options for hyperref/bookmark (HO)
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/letltxmacro\letltxm
+acro.sty
+Package: letltxmacro 2019/12/03 v1.6 Let assignment for LaTeX macros (HO)
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/auxhook\auxhook.sty
+Package: auxhook 2019-12-17 v1.6 Hooks for auxiliary files (HO)
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/hyperref\nameref.st
+y
+Package: nameref 2023-08-07 v2.53 Cross-referencing by name of section
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/refcount\refcount.s
+ty
+Package: refcount 2019/12/15 v3.6 Data extraction from label references (HO)
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/generic/gettitlestring\ge
+ttitlestring.sty
+Package: gettitlestring 2019/12/15 v1.6 Cleanup title references (HO)
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/kvoptions\kvoptions
+.sty
+Package: kvoptions 2022-06-15 v3.15 Key value format for package options (HO)
+))
+\c@section@level=\count327
+)
+\@linkdim=\dimen198
+\Hy@linkcounter=\count328
+\Hy@pagecounter=\count329
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/hyperref\pd1enc.def
+File: pd1enc.def 2023-07-08 v7.01b Hyperref: PDFDocEncoding definition (HO)
+Now handling font encoding PD1 ...
+... no UTF-8 mapping file for font encoding PD1
+)
+\Hy@SavedSpaceFactor=\count330
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/hyperref\puenc.def
+File: puenc.def 2023-07-08 v7.01b Hyperref: PDF Unicode definition (HO)
+Now handling font encoding PU ...
+... no UTF-8 mapping file for font encoding PU
+)
+Package hyperref Info: Hyper figures OFF on input line 4167.
+Package hyperref Info: Link nesting OFF on input line 4172.
+Package hyperref Info: Hyper index ON on input line 4175.
+Package hyperref Info: Plain pages OFF on input line 4182.
+Package hyperref Info: Backreferencing ON on input line 4185.
+Package hyperref Info: Implicit mode ON; LaTeX internals redefined.
+Package hyperref Info: Bookmarks ON on input line 4434.
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/hyperref\backref.st
+y
+Package: backref 2023/04/20 v1.42 Bibliographical back referencing
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/rerunfilecheck\reru
+nfilecheck.sty
+Package: rerunfilecheck 2022-07-10 v1.10 Rerun checks for auxiliary files (HO)
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/base\atveryend-ltx.
+sty
+Package: atveryend-ltx 2020/08/19 v1.0a Emulation of the original atveryend pac
+kage
+with kernel methods
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/generic/uniquecounter\uni
+quecounter.sty
+Package: uniquecounter 2019/12/15 v1.4 Provide unlimited unique counter (HO)
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/generic/bigintcalc\bigint
+calc.sty
+Package: bigintcalc 2019/12/15 v1.5 Expandable calculations on big integers (HO
+)
+))
+Package uniquecounter Info: New unique counter `rerunfilecheck' on input line 2
+85.
+))
+\c@Hy@tempcnt=\count331
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/url\url.sty
+\Urlmuskip=\muskip16
+Package: url 2013/09/16 ver 3.4 Verb mode for urls, etc.
+)
+LaTeX Info: Redefining \url on input line 4772.
+\XeTeXLinkMargin=\dimen199
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/generic/bitset\bitset.sty
+Package: bitset 2019/12/09 v1.3 Handle bit-vector datatype (HO)
+)
+\Fld@menulength=\count332
+\Field@Width=\dimen256
+\Fld@charsize=\dimen257
+Package hyperref Info: Hyper figures OFF on input line 6051.
+Package hyperref Info: Link nesting OFF on input line 6056.
+Package hyperref Info: Hyper index ON on input line 6059.
+Package hyperref Info: backreferencing ON on input line 6064.
+Package hyperref Info: Link coloring OFF on input line 6071.
+Package hyperref Info: Link coloring with OCG OFF on input line 6076.
+Package hyperref Info: PDF/A mode OFF on input line 6081.
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/base\atbegshi-ltx.s
+ty
+Package: atbegshi-ltx 2021/01/10 v1.0c Emulation of the original atbegshi
+package with kernel methods
+)
+\Hy@abspage=\count333
+\c@Item=\count334
+\c@Hfootnote=\count335
+)
+Package hyperref Info: Driver: hpdftex.
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/hyperref\hpdftex.de
+f
+File: hpdftex.def 2023-07-08 v7.01b Hyperref driver for pdfTeX
+\Fld@listcount=\count336
+\c@bookmark@seq@number=\count337
+\Hy@SectionHShift=\skip125
+)
+Package hyperref Info: Option `colorlinks' set `true' on input line 159.
+Package hyperref Info: Option `unicode' set `true' on input line 159.
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/caption\caption.sty
+Package: caption 2023/08/05 v3.6o Customizing captions (AR)
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/caption\caption3.st
+y
+Package: caption3 2023/07/31 v2.4d caption3 kernel (AR)
+\caption@tempdima=\dimen258
+\captionmargin=\dimen259
+\caption@leftmargin=\dimen260
+\caption@rightmargin=\dimen261
+\caption@width=\dimen262
+\caption@indent=\dimen263
+\caption@parindent=\dimen264
+\caption@hangindent=\dimen265
+Package caption Info: Standard document class detected.
+)
+\c@caption@flags=\count338
+\c@continuedfloat=\count339
+Package caption Info: changepage package is loaded.
+\caption@adjustwidth@hsize=\dimen266
+\caption@adjustwidth@linewidth=\dimen267
+Package caption Info: float package is loaded.
+Package caption Info: hyperref package is loaded.
+Package caption Info: longtable package is loaded.
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/caption\ltcaption.s
+ty
+Package: ltcaption 2021/01/08 v1.4c longtable captions (AR)
+)) (C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/etoc\etoc.sty
+Package: etoc 2023/10/29 v1.2d Completely customisable TOCs (JFB)
+\Etoc@toctoks=\toks36
+\c@etoc@tocid=\count340
+\etoc@framed@titlebox=\box121
+\etoc@framed@contentsbox=\box122
+)
+LaTeX Font Info: Trying to load font information for T1+phv on input line 18
+1.
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/psnfss\t1phv.fd
+File: t1phv.fd 2020/03/25 scalable font definitions for T1/phv.
+)
+LaTeX Font Info: Font shape `T1/phv/m/n' will be
+(Font) scaled to size 8.99994pt on input line 181.
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/l3backend\l3backend
+-pdftex.def
+File: l3backend-pdftex.def 2023-04-19 L3 backend support: PDF output (pdfTeX)
+\l__color_backend_stack_int=\count341
+\l__pdf_internal_box=\box123
+) (refman.aux)
+\openout1 = `refman.aux'.
+
+LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 181.
+LaTeX Font Info: ... okay on input line 181.
+LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 181.
+LaTeX Font Info: ... okay on input line 181.
+LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 181.
+LaTeX Font Info: ... okay on input line 181.
+LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 181.
+LaTeX Font Info: ... okay on input line 181.
+LaTeX Font Info: Checking defaults for TS1/cmr/m/n on input line 181.
+LaTeX Font Info: ... okay on input line 181.
+LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 181.
+LaTeX Font Info: ... okay on input line 181.
+LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 181.
+LaTeX Font Info: ... okay on input line 181.
+LaTeX Font Info: Checking defaults for PD1/pdf/m/n on input line 181.
+LaTeX Font Info: ... okay on input line 181.
+LaTeX Font Info: Checking defaults for PU/pdf/m/n on input line 181.
+LaTeX Font Info: ... okay on input line 181.
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/context/base/mkii\supp-pd
+f.mkii
+[Loading MPS to PDF converter (version 2006.09.02).]
+\scratchcounter=\count342
+\scratchdimen=\dimen268
+\scratchbox=\box124
+\nofMPsegments=\count343
+\nofMParguments=\count344
+\everyMPshowfont=\toks37
+\MPscratchCnt=\count345
+\MPscratchDim=\dimen269
+\MPnumerator=\count346
+\makeMPintoPDFobject=\count347
+\everyMPtoPDFconversion=\toks38
+)
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/epstopdf-pkg\epstop
+df-base.sty
+Package: epstopdf-base 2020-01-24 v2.11 Base part for package epstopdf
+Package epstopdf-base Info: Redefining graphics rule for `.eps' on input line 4
+85.
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/00miktex\epstopdf-s
+ys.cfg
+File: epstopdf-sys.cfg 2021/03/18 v2.0 Configuration of epstopdf for MiKTeX
+))
+*geometry* driver: auto-detecting
+*geometry* detected driver: pdftex
+*geometry* verbose mode - [ preamble ] result:
+* driver: pdftex
+* paper: a4paper
+* layout:
+* layoutoffset:(h,v)=(0.0pt,0.0pt)
+* modes: twoside
+* h-part:(L,W,R)=(71.13188pt, 455.24411pt, 71.13188pt)
+* v-part:(T,H,B)=(71.13188pt, 702.78308pt, 71.13188pt)
+* \paperwidth=597.50787pt
+* \paperheight=845.04684pt
+* \textwidth=455.24411pt
+* \textheight=702.78308pt
+* \oddsidemargin=-1.1381pt
+* \evensidemargin=-1.1381pt
+* \topmargin=-38.1381pt
+* \headheight=12.0pt
+* \headsep=25.0pt
+* \topskip=10.0pt
+* \footskip=30.0pt
+* \marginparwidth=121.0pt
+* \marginparsep=11.0pt
+* \columnsep=10.0pt
+* \skip\footins=9.0pt plus 4.0pt minus 2.0pt
+* \hoffset=0.0pt
+* \voffset=0.0pt
+* \mag=1000
+* \@twocolumnfalse
+* \@twosidetrue
+* \@mparswitchtrue
+* \@reversemarginfalse
+* (1in=72.27pt=25.4mm, 1cm=28.453pt)
+
+Package backref Info: ** backref set up for natbib ** on input line 181.
+Package hyperref Info: Link coloring ON on input line 181.
+(refman.out) (refman.out)
+\@outlinefile=\write5
+\openout5 = `refman.out'.
+
+Package caption Info: Begin \AtBeginDocument code.
+Package caption Info: End \AtBeginDocument code.
+\Etoc@tf=\read4
+Package hyperref Info: Option `pageanchor' set `false' on input line 189.
+Package hyperref Info: Option `bookmarksnumbered' set `true' on input line 189.
+
+Package hyperref Info: Option `unicode' set `true' on input line 189.
+LaTeX Font Info: Font shape `T1/phv/m/n' will be
+(Font) scaled to size 12.9599pt on input line 194.
+LaTeX Font Info: Font shape `T1/phv/m/n' will be
+(Font) scaled to size 6.29996pt on input line 194.
+LaTeX Font Info: Trying to load font information for U+msa on input line 194
+.
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/amsfonts\umsa.fd
+File: umsa.fd 2013/01/14 v3.01 AMS symbols A
+)
+LaTeX Font Info: Trying to load font information for U+msb on input line 194
+.
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/amsfonts\umsb.fd
+File: umsb.fd 2013/01/14 v3.01 AMS symbols B
+)
+LaTeX Font Info: Trying to load font information for U+wasy on input line 19
+4.
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/wasysym\uwasy.fd
+File: uwasy.fd 2020/01/19 v2.4 Wasy-2 symbol font definitions
+)
+LaTeX Font Info: Font shape `T1/phv/m/n' will be
+(Font) scaled to size 10.79993pt on input line 195.
+
+[1
+
+{C:/Users/CodeSmile/AppData/Local/MiKTeX/fonts/map/pdftex/pdftex.map}{C:/Users/
+CodeSmile/AppData/Local/Programs/MiKTeX/fonts/enc/dvips/base/8r.enc}]
+\tf@toc=\write6
+\openout6 = `refman.toc'.
+
+LaTeX Font Info: Font shape `T1/phv/b/n' will be
+(Font) scaled to size 8.99994pt on input line 202.
+LaTeX Font Info: Font shape `T1/phv/b/n' will be
+(Font) scaled to size 6.29996pt on input line 202.
+LaTeX Font Info: Trying to load font information for TS1+phv on input line 2
+02.
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/psnfss\ts1phv.fd
+File: ts1phv.fd 2020/03/25 scalable font definitions for TS1/phv.
+)
+LaTeX Font Info: Font shape `TS1/phv/m/n' will be
+(Font) scaled to size 8.99994pt on input line 202.
+
+[1]
+Package hyperref Info: Option `pageanchor' set `true' on input line 204.
+ (index.tex
+LaTeX Font Info: Font shape `T1/phv/b/n' will be
+(Font) scaled to size 12.9599pt on input line 1.
+LaTeX Font Info: Font shape `T1/phv/b/n' will be
+(Font) scaled to size 10.79993pt on input line 5.
+ [1]
+LaTeX Font Info: Trying to load font information for T1+pcr on input line 21
+.
+
+(C:\Users\CodeSmile\AppData\Local\Programs\MiKTeX\tex/latex/psnfss\t1pcr.fd
+File: t1pcr.fd 2001/06/04 font definitions for T1/pcr.
+)
+Underfull \hbox (badness 2050) in paragraph at lines 32--33
+[]\T1/pcr/m/n/10 var obj = Asset.[]File.[]Create[]As[]New(bytes, "[]Assets/[]Fo
+lder/[]Data.[]asset"); \T1/phv/m/n/10 // Cre-ate
+ []
+
+[2]
+Underfull \hbox (badness 5133) in paragraph at lines 66--67
+[]\T1/pcr/m/n/10 Asset.[]File.[]Batch[]Editing(() =$\OML/cmm/m/it/10 >$ \T1/pcr
+/m/n/10 { /$\OMS/cmsy/m/n/10 ^^C$ \T1/pcr/m/n/10 mass file IO $\OMS/cmsy/m/n/10
+ ^^C$\T1/pcr/m/n/10 / }); \T1/phv/m/n/10 // Speed up call-ing many
+ []
+
+LaTeX Font Info: Font shape `TS1/phv/b/n' will be
+(Font) scaled to size 10.79993pt on input line 70.
+LaTeX Font Info: Font shape `TS1/phv/b/n' will be
+(Font) scaled to size 8.99994pt on input line 98.
+[3]) (md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g.tex [4]
+[5] [6] [7])
+(md__p_1_2de_8codesmile_8assetdatabase_2_g_e_t_t_i_n_g_01_s_t_a_r_t_e_d.tex)
+(hierarchy.tex [8]) (annotated.tex
+LaTeX Font Info: Font shape `T1/phv/b/it' in size <10> not available
+(Font) Font shape `T1/phv/b/sl' tried instead on input line 3.
+LaTeX Font Info: Font shape `T1/phv/b/sl' will be
+(Font) scaled to size 8.99994pt on input line 3.
+ [9]) (namespace_code_smile_editor.tex
+LaTeX Font Info: Font shape `T1/phv/m/n' will be
+(Font) scaled to size 8.09995pt on input line 7.
+LaTeX Font Info: Font shape `T1/phv/m/it' in size <9> not available
+(Font) Font shape `T1/phv/m/sl' tried instead on input line 7.
+LaTeX Font Info: Font shape `T1/phv/m/sl' will be
+(Font) scaled to size 8.09995pt on input line 7.
+LaTeX Font Info: Font shape `TS1/phv/m/it' in size <9> not available
+(Font) Font shape `TS1/phv/m/sl' tried instead on input line 7.
+LaTeX Font Info: Font shape `TS1/phv/m/sl' will be
+(Font) scaled to size 8.09995pt on input line 7.
+LaTeX Font Info: Font shape `T1/phv/m/it' in size <7> not available
+(Font) Font shape `T1/phv/m/sl' tried instead on input line 7.
+LaTeX Font Info: Font shape `T1/phv/m/sl' will be
+(Font) scaled to size 6.29996pt on input line 7.
+)
+(class_code_smile_editor_1_1_asset.tex
+LaTeX Font Info: Font shape `T1/phv/m/it' in size <10> not available
+(Font) Font shape `T1/phv/m/sl' tried instead on input line 5.
+LaTeX Font Info: Font shape `T1/phv/m/sl' will be
+(Font) scaled to size 8.99994pt on input line 5.
+ <./class_code_smile_editor_1_1_asset__coll__graph.pdf>
+
+File: class_code_smile_editor_1_1_asset__coll__graph.pdf Graphic file (type pdf
+)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset__coll__graph.pdf us
+ed on input line 15.
+(pdftex.def) Requested size: 161.91548pt x 550.0pt.
+ [10] [11]
+LaTeX Font Info: Font shape `T1/pcr/m/it' in size <9> not available
+(Font) Font shape `T1/pcr/m/sl' tried instead on input line 34.
+ [12] [13] [14]
+LaTeX Font Info: Font shape `T1/phv/b/n' will be
+(Font) scaled to size 7.19995pt on input line 195.
+LaTeX Font Info: Font shape `T1/phv/m/n' will be
+(Font) scaled to size 7.19995pt on input line 196.
+LaTeX Font Info: Font shape `T1/pcr/m/it' in size <8> not available
+(Font) Font shape `T1/pcr/m/sl' tried instead on input line 196.
+LaTeX Font Info: Font shape `T1/pcr/m/it' in size <7> not available
+(Font) Font shape `T1/pcr/m/sl' tried instead on input line 196.
+
+Underfull \hbox (badness 10000) detected at line 220
+[][][]
+ []
+
+[15]
+Underfull \hbox (badness 10000) detected at line 271
+[][][]
+ []
+
+[16]
+Underfull \hbox (badness 10000) detected at line 326
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 374
+[][][]
+ []
+
+[17]
+Underfull \hbox (badness 10000) detected at line 403
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 434
+[][][]
+ []
+
+[18]
+Underfull \hbox (badness 10000) detected at line 463
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 487
+[][][]
+ []
+
+[19]
+Underfull \hbox (badness 10000) detected at line 513
+[][][]
+ []
+
+
+Overfull \hbox (47.36218pt too wide) in paragraph at lines 532--533
+[]\T1/phv/m/n/10 Returns false if one or more fold-ers in destination[]Path do
+not ex-ist. On fail-ure, use []
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 539
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 542
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 563
+[][][]
+ []
+
+[20]
+Underfull \hbox (badness 10000) detected at line 566
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 584
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 606
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 609
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_af6ce8c8d3d810ae286e98e54aa360adf_af6ce8c
+8d3d810ae286e98e54aa360adf_cgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_af6ce8c8d3d810ae286e98e54aa360adf_af6ce
+8c8d3d810ae286e98e54aa360adf_cgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_af6ce8c8d3d810ae286e
+98e54aa360adf_af6ce8c8d3d810ae286e98e54aa360adf_cgraph.pdf used on input line
+641.
+(pdftex.def) Requested size: 299.0pt x 112.00974pt.
+ [21]
+Underfull \hbox (badness 10000) detected at line 666
+[][][]
+ []
+
+[22]
+Underfull \hbox (badness 10000) detected at line 698
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 721
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 724
+[][][]
+ []
+
+[23]
+Underfull \hbox (badness 10000) detected at line 765
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 768
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 814
+[][][]
+ []
+
+[24]
+Underfull \hbox (badness 10000) detected at line 817
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 860
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 863
+[][][]
+ []
+
+
+Overfull \vbox (2.46281pt too high) has occurred while \output is active []
+
+
+[25]
+Underfull \hbox (badness 10000) detected at line 886
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 889
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 907
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 910
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa25
+44ba26b2d2d71f6e7b68f18fac_cgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa
+2544ba26b2d2d71f6e7b68f18fac_cgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71
+f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac_cgraph.pdf used on input line
+938.
+(pdftex.def) Requested size: 191.0pt x 118.00664pt.
+ <./class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa25
+44ba26b2d2d71f6e7b68f18fac_icgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71f6e7b68f18fac_af1aa
+2544ba26b2d2d71f6e7b68f18fac_icgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_af1aa2544ba26b2d2d71
+f6e7b68f18fac_af1aa2544ba26b2d2d71f6e7b68f18fac_icgraph.pdf used on input line
+ 946.
+(pdftex.def) Requested size: 191.0pt x 118.00664pt.
+
+[26]
+Underfull \hbox (badness 10000) detected at line 971
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 975
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 993
+[][][]
+ []
+
+[27]
+Underfull \hbox (badness 10000) detected at line 996
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_a3192f3d24b4397b10f50ef366ee3feba_a3192f3
+d24b4397b10f50ef366ee3feba_icgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_a3192f3d24b4397b10f50ef366ee3feba_a3192
+f3d24b4397b10f50ef366ee3feba_icgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_a3192f3d24b4397b10f5
+0ef366ee3feba_a3192f3d24b4397b10f50ef366ee3feba_icgraph.pdf used on input line
+ 1013.
+(pdftex.def) Requested size: 264.0pt x 100.00716pt.
+
+Underfull \hbox (badness 10000) detected at line 1033
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1036
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_a82b0bb0beb5f5422951631789bca4256_a82b0bb
+0beb5f5422951631789bca4256_cgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_a82b0bb0beb5f5422951631789bca4256_a82b0
+bb0beb5f5422951631789bca4256_cgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_a82b0bb0beb5f5422951
+631789bca4256_a82b0bb0beb5f5422951631789bca4256_cgraph.pdf used on input line
+1068.
+(pdftex.def) Requested size: 349.0pt x 138.00987pt.
+ [28]
+Overfull \hbox (1.47571pt too wide) in paragraph at lines 3--3
+[]\T1/phv/m/sl/10 file[]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1088
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1091
+[][][]
+ []
+
+[29]
+Underfull \hbox (badness 10000) detected at line 1116
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1119
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1130
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1150
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1153
+[][][]
+ []
+
+[30] <./class_code_smile_editor_1_1_asset_a45faf9fc17e3cb57b87d2ae09e4dd7f8_a45
+faf9fc17e3cb57b87d2ae09e4dd7f8_cgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_a45faf9fc17e3cb57b87d2ae09e4dd7f8_a45fa
+f9fc17e3cb57b87d2ae09e4dd7f8_cgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_a45faf9fc17e3cb57b87
+d2ae09e4dd7f8_a45faf9fc17e3cb57b87d2ae09e4dd7f8_cgraph.pdf used on input line
+1188.
+(pdftex.def) Requested size: 316.0pt x 100.00868pt.
+ [31]
+Underfull \hbox (badness 10000) detected at line 1225
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1253
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1278
+[][][]
+ []
+
+
+Overfull \vbox (8.19077pt too high) has occurred while \output is active []
+
+
+[32]
+Underfull \hbox (badness 10000) detected at line 1303
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1338
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1356
+[][][]
+ []
+
+[33]
+Underfull \hbox (badness 10000) detected at line 1396
+[][][]
+ []
+
+
+Underfull \hbox (badness 2103) in paragraph at lines 1397--1398
+[]\T1/phv/m/n/10 True if the re-name suc-ceeded. The Asset[]Path prop-erty will
+ be up-dated ac-cord-ingly. If false,
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1399
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_a28fe22006383d71d5b564df4a46b2675_a28fe22
+006383d71d5b564df4a46b2675_cgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_a28fe22006383d71d5b564df4a46b2675_a28fe
+22006383d71d5b564df4a46b2675_cgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_a28fe22006383d71d5b5
+64df4a46b2675_a28fe22006383d71d5b564df4a46b2675_cgraph.pdf used on input line
+1434.
+(pdftex.def) Requested size: 307.0pt x 112.00803pt.
+
+Underfull \hbox (badness 10000) detected at line 1449
+[][][]
+ []
+
+[34]
+Underfull \hbox (badness 10000) detected at line 1474
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1477
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_a1c6432dab22d51bcf01bf6ad221e7119_a1c6432
+dab22d51bcf01bf6ad221e7119_icgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_a1c6432dab22d51bcf01bf6ad221e7119_a1c64
+32dab22d51bcf01bf6ad221e7119_icgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_a1c6432dab22d51bcf01
+bf6ad221e7119_a1c6432dab22d51bcf01bf6ad221e7119_icgraph.pdf used on input line
+ 1496.
+(pdftex.def) Requested size: 233.0pt x 100.00562pt.
+ [35]
+Underfull \hbox (badness 10000) detected at line 1516
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1519
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_af23adc642520b7f00cb047865ef50ad0_af23adc
+642520b7f00cb047865ef50ad0_cgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_af23adc642520b7f00cb047865ef50ad0_af23a
+dc642520b7f00cb047865ef50ad0_cgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_af23adc642520b7f00cb
+047865ef50ad0_af23adc642520b7f00cb047865ef50ad0_cgraph.pdf used on input line
+1551.
+(pdftex.def) Requested size: 233.0pt x 100.00562pt.
+
+Underfull \hbox (badness 10000) detected at line 1564
+[][][]
+ []
+
+[36]
+Underfull \hbox (badness 10000) detected at line 1587
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1609
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1612
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_a9ff25b59d227ab5d89fdabafffb9876a_a9ff25b
+59d227ab5d89fdabafffb9876a_cgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_a9ff25b59d227ab5d89fdabafffb9876a_a9ff2
+5b59d227ab5d89fdabafffb9876a_cgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_a9ff25b59d227ab5d89f
+dabafffb9876a_a9ff25b59d227ab5d89fdabafffb9876a_cgraph.pdf used on input line
+1644.
+(pdftex.def) Requested size: 295.0pt x 112.00288pt.
+ [37]
+Underfull \hbox (badness 10000) detected at line 1662
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1704
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1726
+[][][]
+ []
+
+[38]
+Underfull \hbox (badness 10000) detected at line 1748
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1770
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1773
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1795
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1798
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1820
+[][][]
+ []
+
+[39]
+Underfull \hbox (badness 10000) detected at line 1842
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1878
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1901
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1904
+[][][]
+ []
+
+[40]
+Underfull \hbox (badness 10000) detected at line 1927
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1952
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1955
+[][][]
+ []
+
+[41]
+Underfull \hbox (badness 10000) detected at line 1992
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 2049
+[][][]
+ []
+
+[42]
+Underfull \hbox (badness 10000) detected at line 2088
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 2110
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 2137
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 2140
+[][][]
+ []
+
+[43]
+Underfull \hbox (badness 10000) detected at line 2167
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 2170
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 2194
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 2218
+[][][]
+ []
+
+) (class_code_smile_editor_1_1_asset_1_1_bundle.tex <./class_code_smile_editor_
+1_1_asset_1_1_bundle__coll__graph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_bundle__coll__graph.pdf Graphic fil
+e (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_bundle__coll__gr
+aph.pdf used on input line 15.
+(pdftex.def) Requested size: 212.0pt x 276.01555pt.
+ [44] [45]
+Underfull \hbox (badness 10000) detected at line 75
+[][][]
+ []
+
+[46]
+Underfull \hbox (badness 10000) detected at line 99
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 102
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 126
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 129
+[][][]
+ []
+
+[47]
+Underfull \hbox (badness 10000) detected at line 153
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 156
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 180
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 183
+[][][]
+ []
+
+[48]
+Underfull \hbox (badness 10000) detected at line 207
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 210
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 236
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 239
+[][][]
+ []
+
+
+Overfull \vbox (9.50528pt too high) has occurred while \output is active []
+
+
+[49]
+Underfull \hbox (badness 10000) detected at line 265
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 286
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 308
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 331
+[][][]
+ []
+
+) (class_code_smile_editor_1_1_asset_1_1_database.tex <./class_code_smile_edito
+r_1_1_asset_1_1_database__coll__graph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_database__coll__graph.pdf Graphic f
+ile (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_database__coll__
+graph.pdf used on input line 15.
+(pdftex.def) Requested size: 224.0pt x 328.01346pt.
+ [50]
+LaTeX Font Info: Font shape `T1/phv/b/it' in size <9> not available
+(Font) Font shape `T1/phv/b/sl' tried instead on input line 35.
+LaTeX Font Info: Font shape `T1/phv/b/sl' will be
+(Font) scaled to size 8.09995pt on input line 35.
+
+Underfull \hbox (badness 3826) in paragraph at lines 35--35
+[]\T1/phv/m/sl/9 Scans for \T1/phv/b/sl/9 ex-ter-nal \T1/phv/m/sl/9 file sys-te
+m mod-i-fi-ca-tions and up-dates the Database ac-cord-ingly. Pre-fer to use
+ []
+
+[51]
+Underfull \hbox (badness 10000) detected at line 79
+[][][]
+ []
+
+
+Overfull \hbox (1.47571pt too wide) in paragraph at lines 1--1
+[]\T1/phv/m/sl/10 instance[]
+ []
+
+[52]
+Underfull \hbox (badness 10000) detected at line 103
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 106
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 129
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 132
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 152
+[][][]
+ []
+
+[53]
+Underfull \hbox (badness 2856) in paragraph at lines 169--170
+[]\T1/phv/m/n/10 Scans for \T1/phv/b/n/10 ex-ter-nal \T1/phv/m/n/10 file sys-te
+m mod-i-fi-ca-tions and up-dates the Database ac-cord-ingly. Pre-fer to use
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 201
+[][][]
+ []
+
+[54]
+Underfull \hbox (badness 10000) detected at line 222
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 242
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 265
+[][][]
+ []
+
+
+Overfull \hbox (76.8617pt too wide) in paragraph at lines 278--279
+| \T1/pcr/m/n/8 Force[]Reserialize[]Assets[]Options \T1/pcr/m/sl/8 options = F
+orceReserializeAssetsOptions.ReserializeAssetsAndMetadata
+ []
+
+[55]
+Underfull \hbox (badness 10000) detected at line 293
+[][][]
+ []
+
+
+Overfull \hbox (76.8617pt too wide) in paragraph at lines 306--307
+| \T1/pcr/m/n/8 Force[]Reserialize[]Assets[]Options \T1/pcr/m/sl/8 options = F
+orceReserializeAssetsOptions.ReserializeAssetsAndMetadata
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 321
+[][][]
+ []
+
+[56]
+Underfull \hbox (badness 10000) detected at line 345
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 382
+[][][]
+ []
+
+) (class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server.tex <./class
+_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server__coll__graph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server__coll__gr
+aph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_database_1_1_cac
+he_server__coll__graph.pdf used on input line 15.
+(pdftex.def) Requested size: 217.0pt x 291.99855pt.
+
+[57] [58]
+Underfull \hbox (badness 10000) detected at line 68
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 93
+[][][]
+ []
+
+[59]
+Underfull \hbox (badness 10000) detected at line 96
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 114
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 132
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 155
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 177
+[][][]
+ []
+
+[60]
+Underfull \hbox (badness 10000) detected at line 201
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 223
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 245
+[][][]
+ []
+
+[61]
+Underfull \hbox (badness 10000) detected at line 267
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 291
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 313
+[][][]
+ []
+
+) (class_code_smile_editor_1_1_asset_1_1_dependency.tex <./class_code_smile_edi
+tor_1_1_asset_1_1_dependency__coll__graph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_dependency__coll__graph.pdf Graphic
+ file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_dependency__coll
+__graph.pdf used on input line 15.
+(pdftex.def) Requested size: 172.0pt x 244.00252pt.
+ [62] [63]
+Underfull \hbox (badness 10000) detected at line 62
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 65
+[][][]
+ []
+
+[64]
+Underfull \hbox (badness 10000) detected at line 90
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 93
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 118
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 121
+[][][]
+ []
+
+[65]
+Underfull \hbox (badness 10000) detected at line 146
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 149
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 176
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 179
+[][][]
+ []
+
+[66]
+Underfull \hbox (badness 10000) detected at line 205
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 208
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 234
+[][][]
+ []
+
+
+Overfull \vbox (3.34293pt too high) has occurred while \output is active []
+
+
+[67]
+Underfull \hbox (badness 10000) detected at line 258
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 261
+[][][]
+ []
+
+) (class_code_smile_editor_1_1_asset_1_1_file.tex <./class_code_smile_editor_1_
+1_asset_1_1_file__coll__graph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_file__coll__graph.pdf Graphic file
+(type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_file__coll__grap
+h.pdf used on input line 15.
+(pdftex.def) Requested size: 180.0pt x 388.00404pt.
+ [68] [69] [70]
+Underfull \hbox (badness 10000) detected at line 148
+[][][]
+ []
+
+[71]
+Underfull \hbox (badness 10000) detected at line 196
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 199
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 241
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 244
+[][][]
+ []
+
+[72]
+Overfull \hbox (1.47571pt too wide) in paragraph at lines 1--1
+[]\T1/phv/m/sl/10 instance[]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 270
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 273
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 301
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 304
+[][][]
+ []
+
+[73]
+Underfull \hbox (badness 10000) detected at line 333
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 336
+[][][]
+ []
+
+
+Overfull \vbox (7.0027pt too high) has occurred while \output is active []
+
+
+[74]
+Underfull \hbox (badness 10000) detected at line 365
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 368
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d22
+2_a64bf135da6d9a9b8a5b59c50e839d222_icgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6d9a9b8a5b59c50e839d
+222_a64bf135da6d9a9b8a5b59c50e839d222_icgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_file_a64bf135da6
+d9a9b8a5b59c50e839d222_a64bf135da6d9a9b8a5b59c50e839d222_icgraph.pdf used on i
+nput line 387.
+(pdftex.def) Requested size: 260.0pt x 100.00102pt.
+
+Underfull \hbox (badness 10000) detected at line 409
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 412
+[][][]
+ []
+
+[75]
+Underfull \hbox (badness 10000) detected at line 443
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 446
+[][][]
+ []
+
+[76]
+Underfull \hbox (badness 10000) detected at line 475
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 478
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 507
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 510
+[][][]
+ []
+
+[77]
+Underfull \hbox (badness 10000) detected at line 541
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 544
+[][][]
+ []
+
+[78]
+Underfull \hbox (badness 10000) detected at line 578
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 581
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 590
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 608
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 611
+[][][]
+ []
+
+[79]
+Underfull \hbox (badness 10000) detected at line 636
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 639
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 666
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 669
+[][][]
+ []
+
+[80]
+Underfull \hbox (badness 10000) detected at line 696
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 699
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_1_1_file_a5a01eb8f2adc1117b9df394acbe3c52
+9_a5a01eb8f2adc1117b9df394acbe3c529_icgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_file_a5a01eb8f2adc1117b9df394acbe3c
+529_a5a01eb8f2adc1117b9df394acbe3c529_icgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_file_a5a01eb8f2a
+dc1117b9df394acbe3c529_a5a01eb8f2adc1117b9df394acbe3c529_icgraph.pdf used on i
+nput line 718.
+(pdftex.def) Requested size: 308.0pt x 100.00868pt.
+
+Underfull \hbox (badness 10000) detected at line 738
+[][][]
+ []
+
+[81]
+Underfull \hbox (badness 10000) detected at line 741
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 771
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 774
+[][][]
+ []
+
+[82]
+Underfull \hbox (badness 10000) detected at line 804
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 807
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 835
+[][][]
+ []
+
+[83]
+Underfull \hbox (badness 10000) detected at line 868
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_1_1_file_ae11a13bfe131ec8b20a5a5667e75ec9
+7_ae11a13bfe131ec8b20a5a5667e75ec97_icgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_file_ae11a13bfe131ec8b20a5a5667e75e
+c97_ae11a13bfe131ec8b20a5a5667e75ec97_icgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_file_ae11a13bfe1
+31ec8b20a5a5667e75ec97_ae11a13bfe131ec8b20a5a5667e75ec97_icgraph.pdf used on i
+nput line 902.
+(pdftex.def) Requested size: 297.0pt x 112.0063pt.
+ [84]
+Underfull \hbox (badness 10000) detected at line 924
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 952
+[][][]
+ []
+
+[85]
+Underfull \hbox (badness 10000) detected at line 989
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 992
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1006
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_1_1_file_a4dc6aff1e32f03b26ec0e310fb4233c
+0_a4dc6aff1e32f03b26ec0e310fb4233c0_icgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_file_a4dc6aff1e32f03b26ec0e310fb423
+3c0_a4dc6aff1e32f03b26ec0e310fb4233c0_icgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_file_a4dc6aff1e3
+2f03b26ec0e310fb4233c0_a4dc6aff1e32f03b26ec0e310fb4233c0_icgraph.pdf used on i
+nput line 1018.
+(pdftex.def) Requested size: 320.0pt x 100.00255pt.
+ [86]
+Underfull \hbox (badness 10000) detected at line 1048
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1051
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1064
+[][][]
+ []
+
+[87]
+Underfull \hbox (badness 10000) detected at line 1101
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1104
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1152
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1155
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1166
+[][][]
+ []
+
+[88]
+Underfull \hbox (badness 10000) detected at line 1210
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1213
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1224
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_1_1_file_a9702d12ef27f2d0dfd1f8201fbb3708
+8_a9702d12ef27f2d0dfd1f8201fbb37088_cgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_file_a9702d12ef27f2d0dfd1f8201fbb37
+088_a9702d12ef27f2d0dfd1f8201fbb37088_cgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_file_a9702d12ef2
+7f2d0dfd1f8201fbb37088_a9702d12ef27f2d0dfd1f8201fbb37088_cgraph.pdf used on in
+put line 1252.
+(pdftex.def) Requested size: 350.0pt x 98.04518pt.
+ [89]
+Underfull \hbox (badness 10000) detected at line 1283
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1286
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1295
+[][][]
+ []
+
+[90] <./class_code_smile_editor_1_1_asset_1_1_file_a8e86208ec0d709c8259baacdb5e
+70281_a8e86208ec0d709c8259baacdb5e70281_cgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_file_a8e86208ec0d709c8259baacdb5e70
+281_a8e86208ec0d709c8259baacdb5e70281_cgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_file_a8e86208ec0
+d709c8259baacdb5e70281_a8e86208ec0d709c8259baacdb5e70281_cgraph.pdf used on in
+put line 1322.
+(pdftex.def) Requested size: 320.0pt x 138.00354pt.
+
+Underfull \hbox (badness 10000) detected at line 1344
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1347
+[][][]
+ []
+
+[91] <./class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9dbc6b65d0efec125ca
+6ec75_a996c0cfd9dbc6b65d0efec125ca6ec75_icgraph.pdf>
+
+
+File: class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9dbc6b65d0efec125ca6e
+c75_a996c0cfd9dbc6b65d0efec125ca6ec75_icgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_file_a996c0cfd9d
+bc6b65d0efec125ca6ec75_a996c0cfd9dbc6b65d0efec125ca6ec75_icgraph.pdf used on i
+nput line 1382.
+(pdftex.def) Requested size: 297.0pt x 100.00562pt.
+
+Underfull \hbox (badness 10000) detected at line 1406
+[][][]
+ []
+
+[92]
+Underfull \hbox (badness 10000) detected at line 1436
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1466
+[][][]
+ []
+
+[93]
+Underfull \hbox (badness 10000) detected at line 1494
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1497
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396a4bfed873f01e8622033a
+b_a34bfcab396a4bfed873f01e8622033ab_icgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396a4bfed873f01e862203
+3ab_a34bfcab396a4bfed873f01e8622033ab_icgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_file_a34bfcab396
+a4bfed873f01e8622033ab_a34bfcab396a4bfed873f01e8622033ab_icgraph.pdf used on i
+nput line 1516.
+(pdftex.def) Requested size: 324.0pt x 100.00716pt.
+ [94]
+Underfull \hbox (badness 10000) detected at line 1536
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1560
+[][][]
+ []
+
+[95]
+Underfull \hbox (badness 10000) detected at line 1597
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1600
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1625
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1628
+[][][]
+ []
+
+[96]
+Underfull \hbox (badness 10000) detected at line 1655
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1658
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1685
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1688
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_1_1_file_a7b0aaffab801a8597c60daff4bccb17
+7_a7b0aaffab801a8597c60daff4bccb177_icgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_file_a7b0aaffab801a8597c60daff4bccb
+177_a7b0aaffab801a8597c60daff4bccb177_icgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_file_a7b0aaffab8
+01a8597c60daff4bccb177_a7b0aaffab801a8597c60daff4bccb177_icgraph.pdf used on i
+nput line 1707.
+(pdftex.def) Requested size: 300.0pt x 100.00868pt.
+ [97]
+Underfull \hbox (badness 10000) detected at line 1723
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1726
+[][][]
+ []
+
+) (class_code_smile_editor_1_1_asset_1_1_importer.tex <./class_code_smile_edito
+r_1_1_asset_1_1_importer__coll__graph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_importer__coll__graph.pdf Graphic f
+ile (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_importer__coll__
+graph.pdf used on input line 15.
+(pdftex.def) Requested size: 189.0pt x 308.00792pt.
+ [98] [99]
+Underfull \hbox (badness 10000) detected at line 80
+[][][]
+ []
+
+[100]
+Underfull \hbox (badness 10000) detected at line 105
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 133
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 136
+[][][]
+ []
+
+[101]
+Underfull \hbox (badness 10000) detected at line 163
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 166
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 209
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 212
+[][][]
+ []
+
+[102]
+Underfull \hbox (badness 10000) detected at line 239
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 242
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 284
+[][][]
+ []
+
+[103]
+Underfull \hbox (badness 10000) detected at line 287
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 330
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 333
+[][][]
+ []
+
+[104]
+Underfull \hbox (badness 10000) detected at line 374
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 377
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 400
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 403
+[][][]
+ []
+
+[105]
+Underfull \hbox (badness 10000) detected at line 441
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 444
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 468
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 471
+[][][]
+ []
+
+[106]
+Underfull \hbox (badness 10000) detected at line 510
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 513
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 538
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 541
+[][][]
+ []
+
+[107]
+Underfull \hbox (badness 10000) detected at line 566
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 569
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 601
+[][][]
+ []
+
+[108]
+Underfull \hbox (badness 10000) detected at line 613
+[][][]
+ []
+
+LaTeX Font Info: Font shape `T1/phv/b/it' in size <7> not available
+(Font) Font shape `T1/phv/b/sl' tried instead on input line 614.
+LaTeX Font Info: Font shape `T1/phv/b/sl' will be
+(Font) scaled to size 6.29996pt on input line 614.
+) (class_code_smile_editor_1_1_asset_1_1_label.tex <./class_code_smile_editor_1
+_1_asset_1_1_label__coll__graph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_label__coll__graph.pdf Graphic file
+ (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_label__coll__gra
+ph.pdf used on input line 15.
+(pdftex.def) Requested size: 141.0pt x 212.01843pt.
+ [109]
+Underfull \hbox (badness 10000) detected at line 60
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_1_1_label_ad2dd0c24ca248dac498e168471c296
+ae_ad2dd0c24ca248dac498e168471c296ae_cgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_label_ad2dd0c24ca248dac498e168471c2
+96ae_ad2dd0c24ca248dac498e168471c296ae_cgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_label_ad2dd0c24c
+a248dac498e168471c296ae_ad2dd0c24ca248dac498e168471c296ae_cgraph.pdf used on i
+nput line 92.
+(pdftex.def) Requested size: 192.0pt x 99.9995pt.
+ [110]
+Underfull \hbox (badness 10000) detected at line 112
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_1_1_label_a0db1d630d411ce9b9afaab8893ca43
+3c_a0db1d630d411ce9b9afaab8893ca433c_cgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_label_a0db1d630d411ce9b9afaab8893ca
+433c_a0db1d630d411ce9b9afaab8893ca433c_cgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_label_a0db1d630d
+411ce9b9afaab8893ca433c_a0db1d630d411ce9b9afaab8893ca433c_cgraph.pdf used on i
+nput line 144.
+(pdftex.def) Requested size: 192.0pt x 99.9995pt.
+
+Overfull \vbox (0.77353pt too high) has occurred while \output is active []
+
+
+[111]
+Underfull \hbox (badness 10000) detected at line 162
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 187
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 190
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f9e
+bf_a4418d3b1b76b6577c27d30a67b4f9ebf_icgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b76b6577c27d30a67b4f
+9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf_icgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_label_a4418d3b1b
+76b6577c27d30a67b4f9ebf_a4418d3b1b76b6577c27d30a67b4f9ebf_icgraph.pdf used on
+input line 209.
+(pdftex.def) Requested size: 192.0pt x 137.99931pt.
+ [112] [113]
+Underfull \hbox (badness 10000) detected at line 227
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 230
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 257
+[][][]
+ []
+
+) (class_code_smile_editor_1_1_asset_1_1_package.tex <./class_code_smile_editor
+_1_1_asset_1_1_package__coll__graph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_package__coll__graph.pdf Graphic fi
+le (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_package__coll__g
+raph.pdf used on input line 15.
+(pdftex.def) Requested size: 174.0pt x 196.01102pt.
+ [114]
+Underfull \hbox (badness 2538) in paragraph at lines 21--22
+[]\T1/phv/m/n/10 static void [] ([]Not[]Null[] [] asset[]Path, []Not[]Null[] St
+ring package[]Path, Export[]Package[]Options
+ []
+
+
+Underfull \hbox (badness 1009) in paragraph at lines 23--24
+[]\T1/phv/m/n/10 static void [] ([]Not[]Null[] [][]$ $[] asset[]Paths, []Not[]N
+ull[] String package[]Path, Export[]Package[]Options
+ []
+
+[115]
+Underfull \hbox (badness 10000) detected at line 62
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 103
+[][][]
+ []
+
+[116]
+Underfull \hbox (badness 10000) detected at line 131
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 168
+[][][]
+ []
+
+[117]
+Underfull \hbox (badness 10000) detected at line 207
+[][][]
+ []
+
+) (class_code_smile_editor_1_1_asset_1_1_path.tex <./class_code_smile_editor_1_
+1_asset_1_1_path__inherit__graph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_path__inherit__graph.pdf Graphic fi
+le (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_path__inherit__g
+raph.pdf used on input line 15.
+(pdftex.def) Requested size: 219.41371pt x 550.0pt.
+ [118] <./class_code_smile_editor_1_1_asset_1_1_path__coll__graph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_path__coll__graph.pdf Graphic file
+(type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_path__coll__grap
+h.pdf used on input line 25.
+(pdftex.def) Requested size: 219.41371pt x 550.0pt.
+ [119] [120] [121] [122] [123]
+Underfull \hbox (badness 10000) detected at line 202
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 248
+[][][]
+ []
+
+[124]
+Underfull \hbox (badness 10000) detected at line 290
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_1_1_path_a3d0d7574b95b19be03fdfd90e6c628e
+2_a3d0d7574b95b19be03fdfd90e6c628e2_cgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_path_a3d0d7574b95b19be03fdfd90e6c62
+8e2_a3d0d7574b95b19be03fdfd90e6c628e2_cgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_path_a3d0d7574b9
+5b19be03fdfd90e6c628e2_a3d0d7574b95b19be03fdfd90e6c628e2_cgraph.pdf used on in
+put line 321.
+(pdftex.def) Requested size: 184.0pt x 100.00102pt.
+
+Underfull \hbox (badness 10000) detected at line 341
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 344
+[][][]
+ []
+
+[125]
+Underfull \hbox (badness 10000) detected at line 371
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 374
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_1_1_path_aa30592adbaf54202ead85cd483107e5
+5_aa30592adbaf54202ead85cd483107e55_cgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_path_aa30592adbaf54202ead85cd483107
+e55_aa30592adbaf54202ead85cd483107e55_cgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_path_aa30592adba
+f54202ead85cd483107e55_aa30592adbaf54202ead85cd483107e55_cgraph.pdf used on in
+put line 429.
+(pdftex.def) Requested size: 264.0pt x 176.0126pt.
+ [126]
+Underfull \hbox (badness 10000) detected at line 449
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_1_1_path_a16e59bfb7ec5500d91fa1e8baaed7ec
+3_a16e59bfb7ec5500d91fa1e8baaed7ec3_icgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_path_a16e59bfb7ec5500d91fa1e8baaed7
+ec3_a16e59bfb7ec5500d91fa1e8baaed7ec3_icgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_path_a16e59bfb7e
+c5500d91fa1e8baaed7ec3_a16e59bfb7ec5500d91fa1e8baaed7ec3_icgraph.pdf used on i
+nput line 477.
+(pdftex.def) Requested size: 225.0pt x 138.00777pt.
+ [127]
+Underfull \hbox (badness 10000) detected at line 499
+[][][]
+ []
+
+[128]
+Underfull \hbox (badness 10000) detected at line 519
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_1_1_path_a37cffbb9ed1db3b0e77664ad01b6fd0
+1_a37cffbb9ed1db3b0e77664ad01b6fd01_cgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_path_a37cffbb9ed1db3b0e77664ad01b6f
+d01_a37cffbb9ed1db3b0e77664ad01b6fd01_cgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_path_a37cffbb9ed
+1db3b0e77664ad01b6fd01_a37cffbb9ed1db3b0e77664ad01b6fd01_cgraph.pdf used on in
+put line 547.
+(pdftex.def) Requested size: 208.0pt x 100.00562pt.
+
+Underfull \hbox (badness 10000) detected at line 565
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 568
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_1_1_path_ae2e7b500cc4d1f97b7c6051181aa833
+f_ae2e7b500cc4d1f97b7c6051181aa833f_icgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_path_ae2e7b500cc4d1f97b7c6051181aa8
+33f_ae2e7b500cc4d1f97b7c6051181aa833f_icgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_path_ae2e7b500cc
+4d1f97b7c6051181aa833f_ae2e7b500cc4d1f97b7c6051181aa833f_icgraph.pdf used on i
+nput line 585.
+(pdftex.def) Requested size: 252.0pt x 100.00255pt.
+ [129]
+Underfull \hbox (badness 10000) detected at line 603
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 606
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe0620f7baaa0c21543f455
+c_a18386e05fe0620f7baaa0c21543f455c_icgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe0620f7baaa0c21543f4
+55c_a18386e05fe0620f7baaa0c21543f455c_icgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_path_a18386e05fe
+0620f7baaa0c21543f455c_a18386e05fe0620f7baaa0c21543f455c_icgraph.pdf used on i
+nput line 623.
+(pdftex.def) Requested size: 264.0pt x 100.00716pt.
+ [130]
+Underfull \hbox (badness 10000) detected at line 641
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 644
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 668
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 671
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) in paragraph at lines 694--695
+[]\T1/phv/m/n/10 Referenced by [], [], [],
+ []
+
+ <./class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1df
+8_aa3620ff1f8b2c02fc1282284cd7c1df8_icgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8b2c02fc1282284cd7c1
+df8_aa3620ff1f8b2c02fc1282284cd7c1df8_icgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_path_aa3620ff1f8
+b2c02fc1282284cd7c1df8_aa3620ff1f8b2c02fc1282284cd7c1df8_icgraph.pdf used on i
+nput line 701.
+(pdftex.def) Requested size: 301.0pt x 325.9984pt.
+ [131]
+Underfull \hbox (badness 10000) detected at line 719
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 722
+[][][]
+ []
+
+[132] <./class_code_smile_editor_1_1_asset_1_1_path_a7b337848207b6bc5aebde6ae18
+e18d54_a7b337848207b6bc5aebde6ae18e18d54_cgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_path_a7b337848207b6bc5aebde6ae18e18
+d54_a7b337848207b6bc5aebde6ae18e18d54_cgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_path_a7b33784820
+7b6bc5aebde6ae18e18d54_a7b337848207b6bc5aebde6ae18e18d54_cgraph.pdf used on in
+put line 758.
+(pdftex.def) Requested size: 180.0pt x 100.00102pt.
+
+Underfull \hbox (badness 10000) detected at line 776
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 779
+[][][]
+ []
+
+[133]
+Underfull \hbox (badness 10000) detected at line 818
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 821
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 840
+[][][]
+ []
+
+[134]
+Underfull \hbox (badness 10000) detected at line 858
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 861
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 884
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 887
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 912
+[][][]
+ []
+
+[135]
+Underfull \hbox (badness 10000) detected at line 915
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 969
+[][][]
+ []
+
+[136]
+Underfull \hbox (badness 10000) detected at line 992
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1010
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1030
+[][][]
+ []
+
+[137]
+Underfull \hbox (badness 10000) detected at line 1050
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1070
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1090
+[][][]
+ []
+
+[138] <./class_code_smile_editor_1_1_asset_1_1_path_aba3e55bf4914578717ffd4ec97
+07c29f_aba3e55bf4914578717ffd4ec9707c29f_cgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_path_aba3e55bf4914578717ffd4ec9707c
+29f_aba3e55bf4914578717ffd4ec9707c29f_cgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_path_aba3e55bf49
+14578717ffd4ec9707c29f_aba3e55bf4914578717ffd4ec9707c29f_cgraph.pdf used on in
+put line 1120.
+(pdftex.def) Requested size: 225.0pt x 100.00562pt.
+
+Underfull \hbox (badness 10000) detected at line 1140
+[][][]
+ []
+
+[139]
+Underfull \hbox (badness 10000) detected at line 1160
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1209
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1212
+[][][]
+ []
+
+[140]
+Underfull \hbox (badness 10000) detected at line 1233
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1251
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1273
+[][][]
+ []
+
+[141]
+Underfull \hbox (badness 10000) detected at line 1276
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1309
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1337
+[][][]
+ []
+
+[142]
+Underfull \hbox (badness 10000) detected at line 1380
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1403
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1406
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1429
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1452
+[][][]
+ []
+
+[143]
+Underfull \hbox (badness 10000) detected at line 1475
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1478
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1513
+[][][]
+ []
+
+[144]
+Underfull \hbox (badness 10000) detected at line 1577
+[][][]
+ []
+
+[145]
+Underfull \hbox (badness 10000) detected at line 1655
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1658
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1681
+[][][]
+ []
+
+[146]
+Underfull \hbox (badness 10000) detected at line 1707
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 1732
+[][][]
+ []
+
+) (class_code_smile_editor_1_1_asset_1_1_status.tex <./class_code_smile_editor_
+1_1_asset_1_1_status__coll__graph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_status__coll__graph.pdf Graphic fil
+e (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_status__coll__gr
+aph.pdf used on input line 15.
+(pdftex.def) Requested size: 149.0pt x 244.01747pt.
+ [147] [148]
+Underfull \hbox (badness 10000) detected at line 64
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 67
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 95
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 98
+[][][]
+ []
+
+[149]
+Underfull \hbox (badness 10000) detected at line 128
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 131
+[][][]
+ []
+
+[150]
+Underfull \hbox (badness 10000) detected at line 157
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 160
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 184
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 187
+[][][]
+ []
+
+[151]
+Underfull \hbox (badness 10000) detected at line 213
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 216
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 240
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 258
+[][][]
+ []
+
+[152]
+Underfull \hbox (badness 10000) detected at line 261
+[][][]
+ []
+
+) (class_code_smile_editor_1_1_asset_1_1_sub_asset.tex <./class_code_smile_edit
+or_1_1_asset_1_1_sub_asset__coll__graph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_sub_asset__coll__graph.pdf Graphic
+file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_sub_asset__coll_
+_graph.pdf used on input line 15.
+(pdftex.def) Requested size: 161.0pt x 228.01285pt.
+ [153]
+Underfull \hbox (badness 10000) detected at line 64
+[][][]
+ []
+
+[154]
+Underfull \hbox (badness 10000) detected at line 111
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 114
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 156
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 159
+[][][]
+ []
+
+[155]
+Underfull \hbox (badness 10000) detected at line 189
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 192
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 216
+[][][]
+ []
+
+[156]
+Underfull \hbox (badness 10000) detected at line 257
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 286
+[][][]
+ []
+
+[157] <./class_code_smile_editor_1_1_asset_1_1_sub_asset_ac4fb08375dcad548d850e
+ec212582519_ac4fb08375dcad548d850eec212582519_cgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_sub_asset_ac4fb08375dcad548d850eec2
+12582519_ac4fb08375dcad548d850eec212582519_cgraph.pdf Graphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_sub_asset_ac4fb0
+8375dcad548d850eec212582519_ac4fb08375dcad548d850eec212582519_cgraph.pdf used
+on input line 317.
+(pdftex.def) Requested size: 307.0pt x 112.00803pt.
+)
+(class_code_smile_editor_1_1_asset_1_1_version_control.tex <./class_code_smile_
+editor_1_1_asset_1_1_version_control__coll__graph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_version_control__coll__graph.pdf Gr
+aphic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_version_control_
+_coll__graph.pdf used on input line 15.
+(pdftex.def) Requested size: 206.0pt x 356.00916pt.
+ [158] [159]
+Underfull \hbox (badness 10000) detected at line 80
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 83
+[][][]
+ []
+
+ <./class_code_smile_editor_1_1_asset_1_1_version_control_a7f6bbb0782e7f7635706
+b0e0bc921341_a7f6bbb0782e7f7635706b0e0bc921341_cgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_version_control_a7f6bbb0782e7f76357
+06b0e0bc921341_a7f6bbb0782e7f7635706b0e0bc921341_cgraph.pdf Graphic file (type
+pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_version_control_
+a7f6bbb0782e7f7635706b0e0bc921341_a7f6bbb0782e7f7635706b0e0bc921341_cgraph.pdf
+ used on input line 116.
+(pdftex.def) Requested size: 350.0pt x 131.25058pt.
+ [160]
+Underfull \hbox (badness 10000) detected at line 140
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 170
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 173
+[][][]
+ []
+
+[161] <./class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f412156
+1ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9_icgraph.pdf>
+
+File: class_code_smile_editor_1_1_asset_1_1_version_control_a50c91ed4f4121561ad
+75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9_icgraph.pdf Graphic file (type
+ pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_1_1_version_control_
+a50c91ed4f4121561ad75f3f2efc38af9_a50c91ed4f4121561ad75f3f2efc38af9_icgraph.pdf
+ used on input line 208.
+(pdftex.def) Requested size: 301.0pt x 99.9995pt.
+ [162]
+Underfull \hbox (badness 10000) detected at line 232
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 264
+[][][]
+ []
+
+[163]
+Underfull \hbox (badness 10000) detected at line 306
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 309
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 355
+[][][]
+ []
+
+[164]
+Underfull \hbox (badness 10000) detected at line 385
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 415
+[][][]
+ []
+
+[165]
+Underfull \hbox (badness 10000) detected at line 455
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 458
+[][][]
+ []
+
+[166]
+Underfull \hbox (badness 10000) detected at line 500
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 503
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 531
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 534
+[][][]
+ []
+
+[167]
+Underfull \hbox (badness 10000) detected at line 562
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 565
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 595
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 598
+[][][]
+ []
+
+[168]
+Underfull \hbox (badness 10000) detected at line 628
+[][][]
+ []
+
+
+Underfull \hbox (badness 10000) detected at line 631
+[][][]
+ []
+
+) (class_code_smile_editor_1_1_asset_load_exception.tex <./class_code_smile_edi
+tor_1_1_asset_load_exception__inherit__graph.pdf>
+
+File: class_code_smile_editor_1_1_asset_load_exception__inherit__graph.pdf Grap
+hic file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_load_exception__inhe
+rit__graph.pdf used on input line 15.
+(pdftex.def) Requested size: 194.0pt x 252.01035pt.
+ [169] <./class_code_smile_editor_1_1_asset_load_exception__coll__graph.pdf>
+
+File: class_code_smile_editor_1_1_asset_load_exception__coll__graph.pdf Graphic
+ file (type pdf)
+
+Package pdftex.def Info: class_code_smile_editor_1_1_asset_load_exception__coll
+__graph.pdf used on input line 25.
+(pdftex.def) Requested size: 194.0pt x 252.01035pt.
+ [170]) [171] [172
+
+] (refman.ind
+[173
+
+] [174] [175] [176] [177] [178
+
+]) (refman.aux)
+ ***********
+LaTeX2e <2023-06-01> patch level 1
+L3 programming layer <2023-08-29>
+ ***********
+Package rerunfilecheck Info: File `refman.out' has not changed.
+(rerunfilecheck) Checksum: 2E40A3B05DEFDEA2E41B5C6EB58202A7;15299.
+ )
+Here is how much of TeX's memory you used:
+ 20194 strings out of 475248
+ 423622 string characters out of 5755925
+ 1948785 words of memory out of 5000000
+ 40080 multiletter control sequences out of 15000+600000
+ 615476 words of font info for 112 fonts, out of 8000000 for 9000
+ 1141 hyphenation exceptions out of 8191
+ 101i,16n,117p,811b,742s stack positions out of 10000i,1000n,20000p,200000b,200000s
+
+pdfTeX warning (dest): name{_asset_load_exception_8cs_source_l00035} has been r
+eferenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_load_exception_8cs_source_l00027} has been r
+eferenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_load_exception_8cs_source} has been referenc
+ed but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_load_exception_8cs_source_l00015} has been r
+eferenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_version_control_8cs_source_l00156} has bee
+n referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_version_control_8cs_source_l00223} has bee
+n referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_version_control_8cs_source_l00182} has bee
+n referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_version_control_8cs_source_l00111} has bee
+n referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_version_control_8cs_source_l00039} has bee
+n referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_version_control_8cs_source} has been refer
+enced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_version_control_8cs_source_l00017} has bee
+n referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_sub_asset_8cs_source_l00078} has been refe
+renced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_sub_asset_8cs_source_l00039} has been refe
+renced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_sub_asset_8cs_source_l00058} has been refe
+renced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_sub_asset_8cs_source} has been referenced
+but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_sub_asset_8cs_source_l00016} has been refe
+renced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_status_8cs_source} has been referenced but
+ does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_status_8cs_source_l00017} has been referen
+ced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8cs_source_l00192} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8cs_source_l00161} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8cs_source_l00096} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8cs_source_l00039} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8_static_8cs_source_l00058} has been
+referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8_static_8cs_source_l00064} has been
+referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8_static_8cs_source_l00052} has been
+referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8_static_8cs_source_l00069} has been
+referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8cs_source_l00146} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8_static_8cs_source_l00034} has been
+referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8_static_8cs_source_l00046} has been
+referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8_static_8cs_source_l00040} has been
+referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8_static_8cs_source_l00029} has been
+referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8cs_source_l00172} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8cs_source_l00138} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8cs_source_l00128} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8cs_source_l00118} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8cs_source_l00084} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8cs_source_l00057} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8cs_source_l00108} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8_static_8cs_source_l00314} has been
+referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8cs_source_l00391} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8_static_8cs_source_l00194} has been
+referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8_static_8cs_source_l00096} has been
+referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8_static_8cs_source_l00114} has been
+referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_version_control_8cs_source_l00066} has bee
+n referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8cs_source_l00323} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8cs_source_l00430} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8cs_source_l00284} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8_static_8cs_source} has been referen
+ced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8_static_8cs_source_l00254} has been
+referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8cs_source_l00270} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8cs_source_l00251} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8cs_source_l00223} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8cs_source} has been referenced but d
+oes not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8cs_source_l00024} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_package_8cs_source_l00049} has been refere
+nced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_package_8cs_source_l00031} has been refere
+nced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_package_8cs_source_l00107} has been refere
+nced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_package_8cs_source_l00069} has been refere
+nced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_package_8cs_source} has been referenced bu
+t does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_package_8cs_source_l00019} has been refere
+nced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_label_8cs_source_l00053} has been referenc
+ed but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_label_8cs_source_l00088} has been referenc
+ed but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_label_8cs_source_l00071} has been referenc
+ed but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_label_8cs_source} has been referenced but
+does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_label_8cs_source_l00017} has been referenc
+ed but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_importer_8cs_source_l00232} has been refer
+enced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_importer_8cs_source_l00173} has been refer
+enced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_importer_8cs_source_l00143} has been refer
+enced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_importer_8cs_source_l00124} has been refer
+enced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_importer_8cs_source_l00053} has been refer
+enced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_importer_8cs_source_l00103} has been refer
+enced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_importer_8cs_source_l00031} has been refer
+enced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_importer_8cs_source} has been referenced b
+ut does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_importer_8cs_source_l00017} has been refer
+enced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_file_8cs_source_l00046} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_file_8cs_source_l00249} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_file_8cs_source_l00440} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_file_8cs_source_l00416} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_file_8cs_source_l00465} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_file_8cs_source_l00371} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_sub_asset_8cs_source_l00097} has been refe
+renced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_file_8cs_source_l00275} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_file_8cs_source_l00393} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_file_8cs_source_l00607} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_file_8cs_source_l00075} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_file_8cs_source} has been referenced but d
+oes not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_file_8cs_source_l00032} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_dependency_8cs_source} has been referenced
+ but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_dependency_8cs_source_l00016} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_database_8_cache_server_8cs_source_l00089}
+ has been referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_database_8_cache_server_8cs_source_l00071}
+ has been referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_database_8_cache_server_8cs_source_l00080}
+ has been referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_database_8_cache_server_8cs_source_l00026}
+ has been referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_database_8_cache_server_8cs_source_l00098}
+ has been referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_database_8_cache_server_8cs_source_l00047}
+ has been referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_database_8_cache_server_8cs_source_l00035}
+ has been referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_database_8_cache_server_8cs_source_l00059}
+ has been referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_database_8_cache_server_8cs_source_l00017}
+ has been referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_database_8cs_source_l00054} has been refer
+enced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_database_8cs_source} has been referenced b
+ut does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_database_8cs_source_l00033} has been refer
+enced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_database_8_cache_server_8cs_source} has be
+en referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_database_8_cache_server_8cs_source_l00012}
+ has been referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_bundle_8cs_source_l00038} has been referen
+ced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_bundle_8cs_source_l00028} has been referen
+ced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_bundle_8cs_source_l00018} has been referen
+ced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source_l00258} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source_l00247} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source_l00115} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source_l00104} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source_l00070} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source_l00053} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source_l00035} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source_l00196} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source_l00236} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source_l00231} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source_l00188} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source_l00220} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source_l00209} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source_l00093} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source_l00078} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source_l00087} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source_l00125} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source_l00135} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source_l00144} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source_l00177} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source_l00061} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source} has been referenced
+ but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_properties_8cs_source_l00155} has been ref
+erenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8cs_source_l00465} has been referenced but d
+oes not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8cs_source_l00274} has been referenced but d
+oes not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8cs_source_l00391} has been referenced but d
+oes not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_file_8cs_source_l00633} has been reference
+d but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8cs_source_l00350} has been referenced but d
+oes not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_path_8_static_8cs_source_l00080} has been
+referenced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_static_8cs_source_l00042} has been referen
+ced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_static_8cs_source_l00080} has been referen
+ced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_static_8cs_source_l00103} has been referen
+ced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_static_8cs_source} has been referenced but
+ does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_static_8cs_source_l00126} has been referen
+ced but does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8cs_source_l00442} has been referenced but d
+oes not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8cs_source_l00096} has been referenced but d
+oes not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8cs_source_l00067} has been referenced but d
+oes not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8cs_source} has been referenced but does not
+ exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8cs_source_l00042} has been referenced but d
+oes not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_bundle_8cs_source} has been referenced but
+ does not exist, replaced by a fixed one
+
+
+pdfTeX warning (dest): name{_asset_8_bundle_8cs_source_l00010} has been referen
+ced but does not exist, replaced by a fixed one
+
+
+Output written on refman.pdf (180 pages, 1887252 bytes).
+PDF statistics:
+ 4865 PDF objects out of 5155 (max. 8388607)
+ 1263 named destinations out of 1440 (max. 500000)
+ 827 words of extra memory for PDF output out of 10000 (max. 10000000)
+
diff --git a/Docs~/latex/refman.out b/Docs~/latex/refman.out
new file mode 100644
index 00000000..da62fd54
--- /dev/null
+++ b/Docs~/latex/refman.out
@@ -0,0 +1,72 @@
+\BOOKMARK [1][-]{section.1}{\376\377\0001\000\040\000C\000o\000d\000e\000S\000m\000i\000l\000e\000\040\000A\000s\000s\000e\000t\000D\000a\000t\000a\000b\000a\000s\000e}{}% 1
+\BOOKMARK [2][-]{subsection.1.1}{\376\377\0001\000.\0001\000\040\000W\000h\000o\000\040\000n\000e\000e\000d\000s\000\040\000t\000h\000i\000s\000?}{section.1}% 2
+\BOOKMARK [2][-]{subsection.1.2}{\376\377\0001\000.\0002\000\040\000B\000u\000t\000\040\000.\000.\000\040\000w\000h\000y\000?}{section.1}% 3
+\BOOKMARK [2][-]{subsection.1.3}{\376\377\0001\000.\0003\000\040\000E\000x\000a\000m\000p\000l\000e\000\040\000C\000o\000d\000e\000\040\000S\000n\000i\000p\000p\000e\000t\000s}{section.1}% 4
+\BOOKMARK [2][-]{subsection.1.4}{\376\377\0001\000.\0004\000\040\000I\000\040\000d\000o\000n\000\047\000t\000\040\000t\000r\000u\000s\000t\000\040\000t\000h\000i\000s\000\040\000.\000.}{section.1}% 5
+\BOOKMARK [2][-]{subsection.1.5}{\376\377\0001\000.\0005\000\040\000W\000h\000a\000t\000\040\000a\000b\000o\000u\000t\000\040\000s\000u\000p\000p\000o\000r\000t\000?}{section.1}% 6
+\BOOKMARK [2][-]{subsection.1.6}{\376\377\0001\000.\0006\000\040\000W\000h\000e\000r\000e\000\047\000s\000\040\000R\000e\000f\000r\000e\000s\000h\000?}{section.1}% 7
+\BOOKMARK [2][-]{subsection.1.7}{\376\377\0001\000.\0007\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{section.1}% 8
+\BOOKMARK [2][-]{subsection.1.8}{\376\377\0001\000.\0008\000\040\000I\000n\000s\000t\000a\000l\000l\000a\000t\000i\000o\000n}{section.1}% 9
+\BOOKMARK [2][-]{subsection.1.9}{\376\377\0001\000.\0009\000\040\000R\000e\000q\000u\000i\000r\000e\000m\000e\000n\000t\000s}{section.1}% 10
+\BOOKMARK [2][-]{subsection.1.10}{\376\377\0001\000.\0001\0000\000\040\000G\000P\000L\000\040\000L\000i\000c\000e\000n\000s\000e}{section.1}% 11
+\BOOKMARK [2][-]{subsection.1.11}{\376\377\0001\000.\0001\0001\000\040\000S\000u\000p\000p\000o\000r\000t\000\040\000\046\000\040\000F\000e\000e\000b\000a\000c\000k}{section.1}% 12
+\BOOKMARK [1][-]{section.2}{\376\377\0002\000\040\000C\000h\000a\000n\000g\000e\000\040\000L\000o\000g}{}% 13
+\BOOKMARK [1][-]{section.3}{\376\377\0003\000\040\000C\000o\000d\000e\000S\000m\000i\000l\000e\000\040\000P\000a\000c\000k\000a\000g\000e\000s\000\040\000-\000\040\000G\000e\000t\000t\000i\000n\000g\000\040\000S\000t\000a\000r\000t\000e\000d}{}% 14
+\BOOKMARK [1][-]{section.4}{\376\377\0004\000\040\000H\000i\000e\000r\000a\000r\000c\000h\000i\000c\000a\000l\000\040\000I\000n\000d\000e\000x}{}% 15
+\BOOKMARK [2][-]{subsection.4.1}{\376\377\0004\000.\0001\000\040\000C\000l\000a\000s\000s\000\040\000H\000i\000e\000r\000a\000r\000c\000h\000y}{section.4}% 16
+\BOOKMARK [1][-]{section.5}{\376\377\0005\000\040\000C\000l\000a\000s\000s\000\040\000I\000n\000d\000e\000x}{}% 17
+\BOOKMARK [2][-]{subsection.5.1}{\376\377\0005\000.\0001\000\040\000C\000l\000a\000s\000s\000\040\000L\000i\000s\000t}{section.5}% 18
+\BOOKMARK [1][-]{section.6}{\376\377\0006\000\040\000N\000a\000m\000e\000s\000p\000a\000c\000e\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{}% 19
+\BOOKMARK [2][-]{subsection.6.1}{\376\377\0006\000.\0001\000\040\000C\000o\000d\000e\000S\000m\000i\000l\000e\000E\000d\000i\000t\000o\000r\000\040\000N\000a\000m\000e\000s\000p\000a\000c\000e\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e}{section.6}% 20
+\BOOKMARK [1][-]{section.7}{\376\377\0007\000\040\000C\000l\000a\000s\000s\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{}% 21
+\BOOKMARK [2][-]{subsection.7.1}{\376\377\0007\000.\0001\000\040\000A\000s\000s\000e\000t\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e}{section.7}% 22
+\BOOKMARK [3][-]{subsubsection.7.1.1}{\376\377\0007\000.\0001\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n}{subsection.7.1}% 23
+\BOOKMARK [3][-]{subsubsection.7.1.2}{\376\377\0007\000.\0001\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{subsection.7.1}% 24
+\BOOKMARK [3][-]{subsubsection.7.1.3}{\376\377\0007\000.\0001\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{subsection.7.1}% 25
+\BOOKMARK [3][-]{subsubsection.7.1.4}{\376\377\0007\000.\0001\000.\0004\000\040\000P\000r\000o\000p\000e\000r\000t\000y\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{subsection.7.1}% 26
+\BOOKMARK [2][-]{subsection.7.2}{\376\377\0007\000.\0002\000\040\000A\000s\000s\000e\000t\000.\000B\000u\000n\000d\000l\000e\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e}{section.7}% 27
+\BOOKMARK [3][-]{subsubsection.7.2.1}{\376\377\0007\000.\0002\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n}{subsection.7.2}% 28
+\BOOKMARK [3][-]{subsubsection.7.2.2}{\376\377\0007\000.\0002\000.\0002\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{subsection.7.2}% 29
+\BOOKMARK [3][-]{subsubsection.7.2.3}{\376\377\0007\000.\0002\000.\0003\000\040\000P\000r\000o\000p\000e\000r\000t\000y\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{subsection.7.2}% 30
+\BOOKMARK [2][-]{subsection.7.3}{\376\377\0007\000.\0003\000\040\000A\000s\000s\000e\000t\000.\000D\000a\000t\000a\000b\000a\000s\000e\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e}{section.7}% 31
+\BOOKMARK [3][-]{subsubsection.7.3.1}{\376\377\0007\000.\0003\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n}{subsection.7.3}% 32
+\BOOKMARK [3][-]{subsubsection.7.3.2}{\376\377\0007\000.\0003\000.\0002\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{subsection.7.3}% 33
+\BOOKMARK [3][-]{subsubsection.7.3.3}{\376\377\0007\000.\0003\000.\0003\000\040\000P\000r\000o\000p\000e\000r\000t\000y\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{subsection.7.3}% 34
+\BOOKMARK [2][-]{subsection.7.4}{\376\377\0007\000.\0004\000\040\000A\000s\000s\000e\000t\000.\000D\000a\000t\000a\000b\000a\000s\000e\000.\000C\000a\000c\000h\000e\000S\000e\000r\000v\000e\000r\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e}{section.7}% 35
+\BOOKMARK [3][-]{subsubsection.7.4.1}{\376\377\0007\000.\0004\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n}{subsection.7.4}% 36
+\BOOKMARK [3][-]{subsubsection.7.4.2}{\376\377\0007\000.\0004\000.\0002\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{subsection.7.4}% 37
+\BOOKMARK [3][-]{subsubsection.7.4.3}{\376\377\0007\000.\0004\000.\0003\000\040\000P\000r\000o\000p\000e\000r\000t\000y\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{subsection.7.4}% 38
+\BOOKMARK [2][-]{subsection.7.5}{\376\377\0007\000.\0005\000\040\000A\000s\000s\000e\000t\000.\000D\000e\000p\000e\000n\000d\000e\000n\000c\000y\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e}{section.7}% 39
+\BOOKMARK [3][-]{subsubsection.7.5.1}{\376\377\0007\000.\0005\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n}{subsection.7.5}% 40
+\BOOKMARK [3][-]{subsubsection.7.5.2}{\376\377\0007\000.\0005\000.\0002\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{subsection.7.5}% 41
+\BOOKMARK [2][-]{subsection.7.6}{\376\377\0007\000.\0006\000\040\000A\000s\000s\000e\000t\000.\000F\000i\000l\000e\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e}{section.7}% 42
+\BOOKMARK [3][-]{subsubsection.7.6.1}{\376\377\0007\000.\0006\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n}{subsection.7.6}% 43
+\BOOKMARK [3][-]{subsubsection.7.6.2}{\376\377\0007\000.\0006\000.\0002\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{subsection.7.6}% 44
+\BOOKMARK [3][-]{subsubsection.7.6.3}{\376\377\0007\000.\0006\000.\0003\000\040\000P\000r\000o\000p\000e\000r\000t\000y\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{subsection.7.6}% 45
+\BOOKMARK [2][-]{subsection.7.7}{\376\377\0007\000.\0007\000\040\000A\000s\000s\000e\000t\000.\000I\000m\000p\000o\000r\000t\000e\000r\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e}{section.7}% 46
+\BOOKMARK [3][-]{subsubsection.7.7.1}{\376\377\0007\000.\0007\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n}{subsection.7.7}% 47
+\BOOKMARK [3][-]{subsubsection.7.7.2}{\376\377\0007\000.\0007\000.\0002\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{subsection.7.7}% 48
+\BOOKMARK [2][-]{subsection.7.8}{\376\377\0007\000.\0008\000\040\000A\000s\000s\000e\000t\000.\000L\000a\000b\000e\000l\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e}{section.7}% 49
+\BOOKMARK [3][-]{subsubsection.7.8.1}{\376\377\0007\000.\0008\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n}{subsection.7.8}% 50
+\BOOKMARK [3][-]{subsubsection.7.8.2}{\376\377\0007\000.\0008\000.\0002\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{subsection.7.8}% 51
+\BOOKMARK [2][-]{subsection.7.9}{\376\377\0007\000.\0009\000\040\000A\000s\000s\000e\000t\000.\000P\000a\000c\000k\000a\000g\000e\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e}{section.7}% 52
+\BOOKMARK [3][-]{subsubsection.7.9.1}{\376\377\0007\000.\0009\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n}{subsection.7.9}% 53
+\BOOKMARK [3][-]{subsubsection.7.9.2}{\376\377\0007\000.\0009\000.\0002\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{subsection.7.9}% 54
+\BOOKMARK [2][-]{subsection.7.10}{\376\377\0007\000.\0001\0000\000\040\000A\000s\000s\000e\000t\000.\000P\000a\000t\000h\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e}{section.7}% 55
+\BOOKMARK [3][-]{subsubsection.7.10.1}{\376\377\0007\000.\0001\0000\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n}{subsection.7.10}% 56
+\BOOKMARK [3][-]{subsubsection.7.10.2}{\376\377\0007\000.\0001\0000\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{subsection.7.10}% 57
+\BOOKMARK [3][-]{subsubsection.7.10.3}{\376\377\0007\000.\0001\0000\000.\0003\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{subsection.7.10}% 58
+\BOOKMARK [3][-]{subsubsection.7.10.4}{\376\377\0007\000.\0001\0000\000.\0004\000\040\000P\000r\000o\000p\000e\000r\000t\000y\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{subsection.7.10}% 59
+\BOOKMARK [2][-]{subsection.7.11}{\376\377\0007\000.\0001\0001\000\040\000A\000s\000s\000e\000t\000.\000S\000t\000a\000t\000u\000s\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e}{section.7}% 60
+\BOOKMARK [3][-]{subsubsection.7.11.1}{\376\377\0007\000.\0001\0001\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n}{subsection.7.11}% 61
+\BOOKMARK [3][-]{subsubsection.7.11.2}{\376\377\0007\000.\0001\0001\000.\0002\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{subsection.7.11}% 62
+\BOOKMARK [2][-]{subsection.7.12}{\376\377\0007\000.\0001\0002\000\040\000A\000s\000s\000e\000t\000.\000S\000u\000b\000A\000s\000s\000e\000t\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e}{section.7}% 63
+\BOOKMARK [3][-]{subsubsection.7.12.1}{\376\377\0007\000.\0001\0002\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n}{subsection.7.12}% 64
+\BOOKMARK [3][-]{subsubsection.7.12.2}{\376\377\0007\000.\0001\0002\000.\0002\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{subsection.7.12}% 65
+\BOOKMARK [2][-]{subsection.7.13}{\376\377\0007\000.\0001\0003\000\040\000A\000s\000s\000e\000t\000.\000V\000e\000r\000s\000i\000o\000n\000C\000o\000n\000t\000r\000o\000l\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e}{section.7}% 66
+\BOOKMARK [3][-]{subsubsection.7.13.1}{\376\377\0007\000.\0001\0003\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n}{subsection.7.13}% 67
+\BOOKMARK [3][-]{subsubsection.7.13.2}{\376\377\0007\000.\0001\0003\000.\0002\000\040\000M\000e\000m\000b\000e\000r\000\040\000F\000u\000n\000c\000t\000i\000o\000n\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{subsection.7.13}% 68
+\BOOKMARK [2][-]{subsection.7.14}{\376\377\0007\000.\0001\0004\000\040\000A\000s\000s\000e\000t\000L\000o\000a\000d\000E\000x\000c\000e\000p\000t\000i\000o\000n\000\040\000C\000l\000a\000s\000s\000\040\000R\000e\000f\000e\000r\000e\000n\000c\000e}{section.7}% 69
+\BOOKMARK [3][-]{subsubsection.7.14.1}{\376\377\0007\000.\0001\0004\000.\0001\000\040\000D\000e\000t\000a\000i\000l\000e\000d\000\040\000D\000e\000s\000c\000r\000i\000p\000t\000i\000o\000n}{subsection.7.14}% 70
+\BOOKMARK [3][-]{subsubsection.7.14.2}{\376\377\0007\000.\0001\0004\000.\0002\000\040\000C\000o\000n\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000\046\000\040\000D\000e\000s\000t\000r\000u\000c\000t\000o\000r\000\040\000D\000o\000c\000u\000m\000e\000n\000t\000a\000t\000i\000o\000n}{subsection.7.14}% 71
+\BOOKMARK [1][-]{section*.355}{\376\377\000I\000n\000d\000e\000x}{}% 72
diff --git a/Docs~/latex/refman.tex b/Docs~/latex/refman.tex
new file mode 100644
index 00000000..ebd3a32f
--- /dev/null
+++ b/Docs~/latex/refman.tex
@@ -0,0 +1,238 @@
+ % Handle batch mode
+ \nonstopmode
+ % to overcome problems with too many open files
+ \let\mypdfximage\pdfximage\def\pdfximage{\immediate\mypdfximage}
+ \pdfminorversion=7
+ % Set document class depending on configuration
+ \documentclass[twoside]{article}
+ %% moved from doxygen.sty due to workaround for LaTex 2019 version and unmaintained tabu package
+ \usepackage{ifthen}
+ \ifx\requestedLaTeXdate\undefined
+ \usepackage{array}
+ \else
+ \usepackage{array}[=2016-10-06]
+ \fi
+ %%
+ % Packages required by doxygen
+ \makeatletter
+ \providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion}
+ % suppress package identification of infwarerr as it contains the word "warning"
+ \let\@@protected@wlog\protected@wlog
+ \def\protected@wlog#1{\wlog{package info suppressed}}
+ \RequirePackage{infwarerr}
+ \let\protected@wlog\@@protected@wlog
+ \makeatother
+ \IfFormatAtLeastTF{2016/01/01}{}{\usepackage{fixltx2e}} % for \textsubscript
+ \IfFormatAtLeastTF{2015/01/01}{\pdfsuppresswarningpagegroup=1}{}
+ \usepackage{doxygen}
+ \usepackage{graphicx}
+ \usepackage[utf8]{inputenc}
+ \usepackage{makeidx}
+ \PassOptionsToPackage{warn}{textcomp}
+ \usepackage{textcomp}
+ \usepackage[nointegrals]{wasysym}
+ \usepackage{ifxetex}
+ % NLS support packages
+ % Define default fonts
+ % Font selection
+ \usepackage[T1]{fontenc}
+ % set main and monospaced font
+ \usepackage[scaled=.90]{helvet}
+\usepackage{courier}
+\renewcommand{\familydefault}{\sfdefault}
+ \doxyallsectionsfont{%
+ \fontseries{bc}\selectfont%
+ \color{darkgray}%
+ }
+ \renewcommand{\DoxyLabelFont}{%
+ \fontseries{bc}\selectfont%
+ \color{darkgray}%
+ }
+ \newcommand{\+}{\discretionary{\mbox{\scriptsize$\hookleftarrow$}}{}{}}
+ % Arguments of doxygenemoji:
+ % 1) '::' form of the emoji, already LaTeX-escaped
+ % 2) file with the name of the emoji without the .png extension
+ % in case image exist use this otherwise use the '::' form
+ \newcommand{\doxygenemoji}[2]{%
+ \IfFileExists{./#2.png}{\raisebox{-0.1em}{\includegraphics[height=0.9em]{./#2.png}}}{#1}%
+ }
+ % Page & text layout
+ \usepackage{geometry}
+ \geometry{%
+ a4paper,%
+ top=2.5cm,%
+ bottom=2.5cm,%
+ left=2.5cm,%
+ right=2.5cm%
+ }
+ \usepackage{changepage}
+ % Allow a bit of overflow to go unnoticed by other means
+ \tolerance=750
+ \hfuzz=15pt
+ \hbadness=750
+ \setlength{\emergencystretch}{15pt}
+ \setlength{\parindent}{0cm}
+ \newcommand{\doxynormalparskip}{\setlength{\parskip}{3ex plus 2ex minus 2ex}}
+ \newcommand{\doxytocparskip}{\setlength{\parskip}{1ex plus 0ex minus 0ex}}
+ \doxynormalparskip
+ % Redefine paragraph/subparagraph environments, using sectsty fonts
+ \makeatletter
+ \renewcommand{\paragraph}{%
+ \@startsection{paragraph}{4}{0ex}{-1.0ex}{1.0ex}{%
+ \normalfont\normalsize\bfseries\SS@parafont%
+ }%
+ }
+ \renewcommand{\subparagraph}{%
+ \@startsection{subparagraph}{5}{0ex}{-1.0ex}{1.0ex}{%
+ \normalfont\normalsize\bfseries\SS@subparafont%
+ }%
+ }
+ \makeatother
+ \makeatletter
+ \newcommand\hrulefilll{\leavevmode\leaders\hrule\hskip 0pt plus 1filll\kern\z@}
+ \makeatother
+ % Headers & footers
+ \usepackage{fancyhdr}
+ \pagestyle{fancyplain}
+ \renewcommand{\footrulewidth}{0.4pt}
+ \fancypagestyle{fancyplain}{
+ \fancyhf{}
+ \fancyhead[LE, RO]{\bfseries\thepage}
+ \fancyhead[LO]{\bfseries\rightmark}
+ \fancyhead[RE]{\bfseries\leftmark}
+ \fancyfoot[LO, RE]{\bfseries\scriptsize Generated by Doxygen }
+ }
+ \fancypagestyle{plain}{
+ \fancyhf{}
+ \fancyfoot[LO, RE]{\bfseries\scriptsize Generated by Doxygen }
+ \renewcommand{\headrulewidth}{0pt}
+ }
+ \pagestyle{fancyplain}
+ \renewcommand{\sectionmark}[1]{%
+ \markright{\thesection\ #1}%
+ }
+ % ToC, LoF, LoT, bibliography, and index
+ % Indices & bibliography
+ \usepackage{natbib}
+ \usepackage[titles]{tocloft}
+ \setcounter{tocdepth}{3}
+ \setcounter{secnumdepth}{5}
+ % creating indexes
+ \makeindex
+ \usepackage{newunicodechar}
+ \makeatletter
+ \def\doxynewunicodechar#1#2{%
+ \@tempswafalse
+ \edef\nuc@tempa{\detokenize{#1}}%
+ \if\relax\nuc@tempa\relax
+ \nuc@emptyargerr
+ \else
+ \edef\@tempb{\expandafter\@car\nuc@tempa\@nil}%
+ \nuc@check
+ \if@tempswa
+ \@namedef{u8:\nuc@tempa}{#2}%
+ \fi
+ \fi
+ }
+ \makeatother
+ \doxynewunicodechar{⁻}{${}^{-}$}% Superscript minus
+ \doxynewunicodechar{²}{${}^{2}$}% Superscript two
+ \doxynewunicodechar{³}{${}^{3}$}% Superscript three
+ % Hyperlinks
+ % Hyperlinks (required, but should be loaded last)
+ \ifpdf
+ \usepackage[pdftex,pagebackref=true]{hyperref}
+ \else
+ \ifxetex
+ \usepackage[pagebackref=true]{hyperref}
+ \else
+ \usepackage[ps2pdf,pagebackref=true]{hyperref}
+ \fi
+ \fi
+ \hypersetup{%
+ colorlinks=true,%
+ linkcolor=blue,%
+ citecolor=blue,%
+ unicode,%
+ pdftitle={Code\+Smile Asset\+Database},%
+ pdfsubject={Clean and accessible version of Unity\textquotesingle{}s \texorpdfstring{$\sim$}{\string~}20 year old Asset\+Database.}%
+ }
+ % Custom commands used by the header
+ % Custom commands
+ \newcommand{\clearemptydoublepage}{%
+ \newpage{\pagestyle{empty}\cleardoublepage}%
+ }
+ % caption style definition
+ \usepackage{caption}
+ \captionsetup{labelsep=space,justification=centering,font={bf},singlelinecheck=off,skip=4pt,position=top}
+ % in page table of contents
+ \IfFormatAtLeastTF{2023/05/01}{\usepackage[deeplevels]{etoc}}{\usepackage[deeplevels]{etoc_doxygen}}
+ \etocsettocstyle{\doxytocparskip}{\doxynormalparskip}
+ \etocsetlevel{subsubsubsection}{4}
+ \etocsetlevel{subsubsubsubsection}{5}
+ \etocsetlevel{subsubsubsubsubsection}{6}
+ \etocsetlevel{subsubsubsubsubsubsection}{7}
+ \etocsetlevel{paragraph}{8}
+ \etocsetlevel{subparagraph}{9}
+ % prevent numbers overlap the titles in toc
+ \renewcommand{\numberline}[1]{#1~}
+% End of preamble, now comes the document contents
+%===== C O N T E N T S =====
+\begin{document}
+ \raggedbottom
+ % Titlepage & ToC
+ % To avoid duplicate page anchors due to reuse of same numbers for
+ % the index (be it as roman numbers)
+ \hypersetup{pageanchor=false,
+ bookmarksnumbered=true,
+ pdfencoding=unicode
+ }
+ \pagenumbering{alph}
+ \begin{titlepage}
+ \vspace*{7cm}
+ \begin{center}%
+ {\Large Code\+Smile Asset\+Database}\\
+ [1ex]\large 1.\+8 \\
+ \vspace*{1cm}
+ {\large Generated by Doxygen 1.10.0}\\
+ \end{center}
+ \end{titlepage}
+ \pagenumbering{roman}
+ \tableofcontents
+ \pagenumbering{arabic}
+ % re-enable anchors again
+ \hypersetup{pageanchor=true}
+%--- Begin generated contents ---
+\input{index}
+\input{md__p_1_2de_8codesmile_8assetdatabase_2_c_h_a_n_g_e_l_o_g}
+\input{md__p_1_2de_8codesmile_8assetdatabase_2_g_e_t_t_i_n_g_01_s_t_a_r_t_e_d}
+\doxysection{Hierarchical Index}
+\input{hierarchy}
+\doxysection{Class Index}
+\input{annotated}
+\doxysection{Namespace Documentation}
+\input{namespace_code_smile_editor}
+\doxysection{Class Documentation}
+\input{class_code_smile_editor_1_1_asset}
+\input{class_code_smile_editor_1_1_asset_1_1_bundle}
+\input{class_code_smile_editor_1_1_asset_1_1_database}
+\input{class_code_smile_editor_1_1_asset_1_1_database_1_1_cache_server}
+\input{class_code_smile_editor_1_1_asset_1_1_dependency}
+\input{class_code_smile_editor_1_1_asset_1_1_file}
+\input{class_code_smile_editor_1_1_asset_1_1_importer}
+\input{class_code_smile_editor_1_1_asset_1_1_label}
+\input{class_code_smile_editor_1_1_asset_1_1_package}
+\input{class_code_smile_editor_1_1_asset_1_1_path}
+\input{class_code_smile_editor_1_1_asset_1_1_status}
+\input{class_code_smile_editor_1_1_asset_1_1_sub_asset}
+\input{class_code_smile_editor_1_1_asset_1_1_version_control}
+\input{class_code_smile_editor_1_1_asset_load_exception}
+%--- End generated contents ---
+% Index
+ \newpage
+ \phantomsection
+ \clearemptydoublepage
+ \addcontentsline{toc}{section}{\indexname}
+ \printindex
+% Required for some languages (in combination with latexdocumentpre from the header)
+\end{document}
diff --git a/Docs~/latex/refman.toc b/Docs~/latex/refman.toc
new file mode 100644
index 00000000..3968405e
--- /dev/null
+++ b/Docs~/latex/refman.toc
@@ -0,0 +1,351 @@
+\@ifundefined {etoctocstyle}{\let \etoc@startlocaltoc \@gobble \let \etoc@settocdepth \@gobble \let \etoc@depthtag \@gobble \let \etoc@setlocaltop \@gobble }{}
+\contentsline {section}{\numberline {1}Code\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Smile Asset\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Database}{1}{section.1}%
+\contentsline {subsection}{\numberline {1.1}Who needs this?}{1}{subsection.1.1}%
+\contentsline {subsection}{\numberline {1.2}But .. why?}{2}{subsection.1.2}%
+\contentsline {subsection}{\numberline {1.3}Example Code Snippets}{2}{subsection.1.3}%
+\contentsline {subsection}{\numberline {1.4}I don\textquotesingle {}t trust this ..}{3}{subsection.1.4}%
+\contentsline {subsection}{\numberline {1.5}What about support?}{3}{subsection.1.5}%
+\contentsline {subsection}{\numberline {1.6}Where\textquotesingle {}s Refresh?}{4}{subsection.1.6}%
+\contentsline {subsection}{\numberline {1.7}Documentation}{4}{subsection.1.7}%
+\contentsline {subsection}{\numberline {1.8}Installation}{4}{subsection.1.8}%
+\contentsline {subsection}{\numberline {1.9}Requirements}{4}{subsection.1.9}%
+\contentsline {subsection}{\numberline {1.10}GPL License}{4}{subsection.1.10}%
+\contentsline {subsection}{\numberline {1.11}Support \& Feeback}{5}{subsection.1.11}%
+\contentsline {section}{\numberline {2}Change Log}{5}{section.2}%
+\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}8.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}3 -\/ Jan 22, 2024}{5}{section*.1}%
+\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}8.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}2 -\/ Dec 26, 2023}{5}{section*.2}%
+\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}8.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}1 -\/ Dec 21, 2023}{5}{section*.3}%
+\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}8.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}0 -\/ Dec 09, 2023}{5}{section*.4}%
+\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}7.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}1 -\/ Dec 05, 2023}{5}{section*.5}%
+\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}7.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}0 -\/ Dec 03, 2023}{6}{section*.6}%
+\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}6.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}0 -\/ Nov 30, 2023}{6}{section*.7}%
+\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}4.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}1 -\/ Nov 24, 2023}{6}{section*.8}%
+\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}4.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}0 -\/ Nov 24, 2023}{7}{section*.9}%
+\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}3.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}1 -\/ Nov 24, 2023}{7}{section*.10}%
+\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}3.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}0 -\/ Nov 23, 2023}{7}{section*.11}%
+\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}2.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}1 -\/ Nov 22, 2023}{7}{section*.12}%
+\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}2.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}0 -\/ Nov 22, 2023}{7}{section*.13}%
+\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}4 -\/ Nov 13, 2023}{7}{section*.14}%
+\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}3 -\/ Nov 12, 2023}{8}{section*.15}%
+\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}0 -\/ Nov 10, 2023}{8}{section*.16}%
+\contentsline {paragraph}{v1.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}0.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}0 -\/ Nov 9, 2023}{8}{section*.17}%
+\contentsline {section}{\numberline {3}Code\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Smile Packages -\/ Getting Started}{8}{section.3}%
+\contentsline {section}{\numberline {4}Hierarchical Index}{8}{section.4}%
+\contentsline {subsection}{\numberline {4.1}Class Hierarchy}{8}{subsection.4.1}%
+\contentsline {section}{\numberline {5}Class Index}{9}{section.5}%
+\contentsline {subsection}{\numberline {5.1}Class List}{9}{subsection.5.1}%
+\contentsline {section}{\numberline {6}Namespace Documentation}{10}{section.6}%
+\contentsline {subsection}{\numberline {6.1}Code\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Smile\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Editor Namespace Reference}{10}{subsection.6.1}%
+\contentsline {section}{\numberline {7}Class Documentation}{10}{section.7}%
+\contentsline {subsection}{\numberline {7.1}Asset Class Reference}{10}{subsection.7.1}%
+\contentsline {subsubsection}{\numberline {7.1.1}Detailed Description}{15}{subsubsection.7.1.1}%
+\contentsline {subsubsection}{\numberline {7.1.2}Constructor \& Destructor Documentation}{15}{subsubsection.7.1.2}%
+\contentsline {paragraph}{Asset()\hspace {0.1cm}{\footnotesize \ttfamily [1/6]}}{15}{section*.24}%
+\contentsline {paragraph}{Asset()\hspace {0.1cm}{\footnotesize \ttfamily [2/6]}}{16}{section*.25}%
+\contentsline {paragraph}{Asset()\hspace {0.1cm}{\footnotesize \ttfamily [3/6]}}{16}{section*.26}%
+\contentsline {paragraph}{Asset()\hspace {0.1cm}{\footnotesize \ttfamily [4/6]}}{17}{section*.27}%
+\contentsline {paragraph}{Asset()\hspace {0.1cm}{\footnotesize \ttfamily [5/6]}}{18}{section*.28}%
+\contentsline {paragraph}{Asset()\hspace {0.1cm}{\footnotesize \ttfamily [6/6]}}{18}{section*.29}%
+\contentsline {subsubsection}{\numberline {7.1.3}Member Function Documentation}{19}{subsubsection.7.1.3}%
+\contentsline {paragraph}{AddLabel()}{19}{section*.30}%
+\contentsline {paragraph}{AddLabels()}{19}{section*.31}%
+\contentsline {paragraph}{AddSubAsset()}{19}{section*.32}%
+\contentsline {paragraph}{CanMove()}{20}{section*.33}%
+\contentsline {paragraph}{CanOpenInEditor()}{20}{section*.34}%
+\contentsline {paragraph}{ClearLabels()}{21}{section*.35}%
+\contentsline {paragraph}{Delete()}{21}{section*.36}%
+\contentsline {paragraph}{Duplicate()}{22}{section*.38}%
+\contentsline {paragraph}{ExportPackage()}{22}{section*.39}%
+\contentsline {paragraph}{ForceSave()}{23}{section*.40}%
+\contentsline {paragraph}{GetFileId()}{23}{section*.41}%
+\contentsline {paragraph}{GetGuid()}{24}{section*.42}%
+\contentsline {paragraph}{GetGuidAndFileId()}{24}{section*.43}%
+\contentsline {paragraph}{GetIcon()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{25}{section*.44}%
+\contentsline {paragraph}{GetIcon()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{25}{section*.45}%
+\contentsline {paragraph}{GetLastErrorMessage()}{26}{section*.46}%
+\contentsline {paragraph}{GetMain$<$ T $>$()}{27}{section*.49}%
+\contentsline {paragraph}{GetMainType()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{27}{section*.50}%
+\contentsline {paragraph}{GetMainType()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{28}{section*.52}%
+\contentsline {paragraph}{GetSubType()}{29}{section*.54}%
+\contentsline {paragraph}{Load$<$ T $>$()}{29}{section*.55}%
+\contentsline {paragraph}{Move()}{30}{section*.56}%
+\contentsline {paragraph}{OpenExternal()}{31}{section*.58}%
+\contentsline {paragraph}{operator Asset()\hspace {0.1cm}{\footnotesize \ttfamily [1/4]}}{31}{section*.59}%
+\contentsline {paragraph}{operator Asset()\hspace {0.1cm}{\footnotesize \ttfamily [2/4]}}{32}{section*.60}%
+\contentsline {paragraph}{operator Asset()\hspace {0.1cm}{\footnotesize \ttfamily [3/4]}}{32}{section*.61}%
+\contentsline {paragraph}{operator Asset()\hspace {0.1cm}{\footnotesize \ttfamily [4/4]}}{32}{section*.62}%
+\contentsline {paragraph}{operator Object()}{33}{section*.63}%
+\contentsline {paragraph}{RemoveSubAsset()}{33}{section*.64}%
+\contentsline {paragraph}{Rename()}{33}{section*.65}%
+\contentsline {paragraph}{Save()}{34}{section*.67}%
+\contentsline {paragraph}{SaveAs()}{35}{section*.68}%
+\contentsline {paragraph}{SaveAsNew()}{35}{section*.70}%
+\contentsline {paragraph}{SetDirty()}{36}{section*.72}%
+\contentsline {paragraph}{SetLabels()}{36}{section*.73}%
+\contentsline {paragraph}{Trash()}{37}{section*.74}%
+\contentsline {subsubsection}{\numberline {7.1.4}Property Documentation}{38}{subsubsection.7.1.4}%
+\contentsline {paragraph}{ActiveImporter}{38}{section*.76}%
+\contentsline {paragraph}{AssetPath}{38}{section*.77}%
+\contentsline {paragraph}{AvailableImporters}{38}{section*.78}%
+\contentsline {paragraph}{DefaultImporter}{39}{section*.79}%
+\contentsline {paragraph}{Dependencies}{39}{section*.80}%
+\contentsline {paragraph}{DirectDependencies}{39}{section*.81}%
+\contentsline {paragraph}{FileId}{40}{section*.82}%
+\contentsline {paragraph}{Guid}{40}{section*.83}%
+\contentsline {paragraph}{Icon}{40}{section*.84}%
+\contentsline {paragraph}{IsDeleted}{40}{section*.85}%
+\contentsline {paragraph}{IsForeign}{41}{section*.86}%
+\contentsline {paragraph}{IsImporterOverridden}{41}{section*.87}%
+\contentsline {paragraph}{IsNative}{41}{section*.88}%
+\contentsline {paragraph}{IsScene}{42}{section*.89}%
+\contentsline {paragraph}{Labels}{42}{section*.90}%
+\contentsline {paragraph}{MainObject}{42}{section*.91}%
+\contentsline {paragraph}{MainObjectType}{43}{section*.92}%
+\contentsline {paragraph}{MetaPath}{43}{section*.93}%
+\contentsline {paragraph}{OwningBundle}{43}{section*.94}%
+\contentsline {paragraph}{OwningBundleVariant}{44}{section*.95}%
+\contentsline {paragraph}{SubAssets}{44}{section*.96}%
+\contentsline {paragraph}{VisibleSubAssets}{44}{section*.97}%
+\contentsline {subsection}{\numberline {7.2}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Bundle Class Reference}{45}{subsection.7.2}%
+\contentsline {subsubsection}{\numberline {7.2.1}Detailed Description}{46}{subsubsection.7.2.1}%
+\contentsline {subsubsection}{\numberline {7.2.2}Member Function Documentation}{46}{subsubsection.7.2.2}%
+\contentsline {paragraph}{ForceRemove()}{46}{section*.101}%
+\contentsline {paragraph}{GetAllDependencies()}{46}{section*.102}%
+\contentsline {paragraph}{GetAllPaths()}{47}{section*.103}%
+\contentsline {paragraph}{GetDirectDependencies()}{47}{section*.104}%
+\contentsline {paragraph}{GetOwningBundle()}{48}{section*.105}%
+\contentsline {paragraph}{GetOwningBundleVariant()}{48}{section*.106}%
+\contentsline {paragraph}{GetPaths()}{49}{section*.107}%
+\contentsline {paragraph}{Remove()}{49}{section*.108}%
+\contentsline {paragraph}{RemoveUnused()}{50}{section*.109}%
+\contentsline {subsubsection}{\numberline {7.2.3}Property Documentation}{50}{subsubsection.7.2.3}%
+\contentsline {paragraph}{All}{50}{section*.110}%
+\contentsline {paragraph}{Unused}{50}{section*.111}%
+\contentsline {subsection}{\numberline {7.3}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Database Class Reference}{51}{subsection.7.3}%
+\contentsline {subsubsection}{\numberline {7.3.1}Detailed Description}{52}{subsubsection.7.3.1}%
+\contentsline {subsubsection}{\numberline {7.3.2}Member Function Documentation}{52}{subsubsection.7.3.2}%
+\contentsline {paragraph}{AllowAutoRefresh()}{52}{section*.116}%
+\contentsline {paragraph}{Contains()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{52}{section*.117}%
+\contentsline {paragraph}{Contains()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{53}{section*.118}%
+\contentsline {paragraph}{DisallowAutoRefresh()}{53}{section*.119}%
+\contentsline {paragraph}{ImportAll()}{54}{section*.120}%
+\contentsline {paragraph}{ReleaseFileHandles()}{55}{section*.121}%
+\contentsline {paragraph}{SaveAll()}{55}{section*.122}%
+\contentsline {paragraph}{UpgradeAllAssetSerializationVersions()}{55}{section*.123}%
+\contentsline {paragraph}{UpgradeAssetSerializationVersion()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{56}{section*.124}%
+\contentsline {paragraph}{UpgradeAssetSerializationVersion()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{56}{section*.125}%
+\contentsline {subsubsection}{\numberline {7.3.3}Property Documentation}{57}{subsubsection.7.3.3}%
+\contentsline {paragraph}{DesiredWorkerCount}{57}{section*.126}%
+\contentsline {paragraph}{DirectoryMonitoring}{57}{section*.127}%
+\contentsline {subsection}{\numberline {7.4}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Database.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Cache\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Server Class Reference}{58}{subsection.7.4}%
+\contentsline {subsubsection}{\numberline {7.4.1}Detailed Description}{59}{subsubsection.7.4.1}%
+\contentsline {subsubsection}{\numberline {7.4.2}Member Function Documentation}{59}{subsubsection.7.4.2}%
+\contentsline {paragraph}{ApplySettings()}{59}{section*.131}%
+\contentsline {paragraph}{CanConnect()}{59}{section*.132}%
+\contentsline {paragraph}{Disconnect()}{60}{section*.133}%
+\contentsline {paragraph}{ResetReconnectTimer()}{60}{section*.134}%
+\contentsline {subsubsection}{\numberline {7.4.3}Property Documentation}{60}{subsubsection.7.4.3}%
+\contentsline {paragraph}{Address}{60}{section*.135}%
+\contentsline {paragraph}{Connected}{61}{section*.136}%
+\contentsline {paragraph}{ConnectedAddress}{61}{section*.137}%
+\contentsline {paragraph}{DownloadsAllowed}{61}{section*.138}%
+\contentsline {paragraph}{Enabled}{62}{section*.139}%
+\contentsline {paragraph}{NamespacePrefix}{62}{section*.140}%
+\contentsline {paragraph}{Port}{62}{section*.141}%
+\contentsline {paragraph}{UploadsAllowed}{63}{section*.142}%
+\contentsline {subsection}{\numberline {7.5}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Dependency Class Reference}{63}{subsection.7.5}%
+\contentsline {subsubsection}{\numberline {7.5.1}Detailed Description}{64}{subsubsection.7.5.1}%
+\contentsline {subsubsection}{\numberline {7.5.2}Member Function Documentation}{64}{subsubsection.7.5.2}%
+\contentsline {paragraph}{GetAll()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{64}{section*.145}%
+\contentsline {paragraph}{GetAll()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{64}{section*.146}%
+\contentsline {paragraph}{GetDirect()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{65}{section*.147}%
+\contentsline {paragraph}{GetDirect()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{65}{section*.148}%
+\contentsline {paragraph}{GetHash()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{66}{section*.149}%
+\contentsline {paragraph}{GetHash()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{66}{section*.150}%
+\contentsline {paragraph}{Register()}{67}{section*.151}%
+\contentsline {paragraph}{Unregister()}{67}{section*.152}%
+\contentsline {subsection}{\numberline {7.6}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}File Class Reference}{68}{subsection.7.6}%
+\contentsline {subsubsection}{\numberline {7.6.1}Detailed Description}{70}{subsubsection.7.6.1}%
+\contentsline {subsubsection}{\numberline {7.6.2}Member Function Documentation}{71}{subsubsection.7.6.2}%
+\contentsline {paragraph}{BatchEditing()}{71}{section*.157}%
+\contentsline {paragraph}{CanMove()}{71}{section*.158}%
+\contentsline {paragraph}{CanOpenInEditor()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{72}{section*.159}%
+\contentsline {paragraph}{CanOpenInEditor()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{73}{section*.160}%
+\contentsline {paragraph}{Copy()}{73}{section*.161}%
+\contentsline {paragraph}{CopyAsNew()}{74}{section*.162}%
+\contentsline {paragraph}{Create()\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{74}{section*.163}%
+\contentsline {paragraph}{Create()\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{75}{section*.165}%
+\contentsline {paragraph}{Create()\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{76}{section*.166}%
+\contentsline {paragraph}{CreateAsNew()\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{76}{section*.167}%
+\contentsline {paragraph}{CreateAsNew()\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{77}{section*.168}%
+\contentsline {paragraph}{CreateAsNew()\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{78}{section*.169}%
+\contentsline {paragraph}{CreateOrLoad$<$ T $>$()}{78}{section*.170}%
+\contentsline {paragraph}{Delete()\hspace {0.1cm}{\footnotesize \ttfamily [1/4]}}{79}{section*.171}%
+\contentsline {paragraph}{Delete()\hspace {0.1cm}{\footnotesize \ttfamily [2/4]}}{79}{section*.172}%
+\contentsline {paragraph}{Delete()\hspace {0.1cm}{\footnotesize \ttfamily [3/4]}}{80}{section*.173}%
+\contentsline {paragraph}{Delete()\hspace {0.1cm}{\footnotesize \ttfamily [4/4]}}{80}{section*.174}%
+\contentsline {paragraph}{Find()}{81}{section*.176}%
+\contentsline {paragraph}{FindGuids()}{82}{section*.177}%
+\contentsline {paragraph}{FindPaths()}{82}{section*.178}%
+\contentsline {paragraph}{ForceSave()}{83}{section*.179}%
+\contentsline {paragraph}{Import()\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{83}{section*.180}%
+\contentsline {paragraph}{Import()\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{84}{section*.182}%
+\contentsline {paragraph}{Import()\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{85}{section*.183}%
+\contentsline {paragraph}{ImportAndLoad$<$ T $>$()}{85}{section*.184}%
+\contentsline {paragraph}{Load$<$ T $>$()}{86}{section*.186}%
+\contentsline {paragraph}{LoadAsync()}{87}{section*.187}%
+\contentsline {paragraph}{LoadMain$<$ T $>$()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{88}{section*.188}%
+\contentsline {paragraph}{LoadMain$<$ T $>$()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{89}{section*.189}%
+\contentsline {paragraph}{LoadOrCreate$<$ T $>$()}{90}{section*.191}%
+\contentsline {paragraph}{Move()}{91}{section*.193}%
+\contentsline {paragraph}{OpenExternal()\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{92}{section*.195}%
+\contentsline {paragraph}{OpenExternal()\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{93}{section*.196}%
+\contentsline {paragraph}{OpenExternal()\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{93}{section*.197}%
+\contentsline {paragraph}{Rename()}{94}{section*.198}%
+\contentsline {paragraph}{Save()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{94}{section*.200}%
+\contentsline {paragraph}{Save()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{95}{section*.201}%
+\contentsline {paragraph}{Trash()\hspace {0.1cm}{\footnotesize \ttfamily [1/4]}}{95}{section*.202}%
+\contentsline {paragraph}{Trash()\hspace {0.1cm}{\footnotesize \ttfamily [2/4]}}{96}{section*.203}%
+\contentsline {paragraph}{Trash()\hspace {0.1cm}{\footnotesize \ttfamily [3/4]}}{96}{section*.204}%
+\contentsline {paragraph}{Trash()\hspace {0.1cm}{\footnotesize \ttfamily [4/4]}}{97}{section*.205}%
+\contentsline {subsubsection}{\numberline {7.6.3}Property Documentation}{98}{subsubsection.7.6.3}%
+\contentsline {paragraph}{PathsNotDeleted}{98}{section*.207}%
+\contentsline {subsection}{\numberline {7.7}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Importer Class Reference}{98}{subsection.7.7}%
+\contentsline {subsubsection}{\numberline {7.7.1}Detailed Description}{100}{subsubsection.7.7.1}%
+\contentsline {subsubsection}{\numberline {7.7.2}Member Function Documentation}{100}{subsubsection.7.7.2}%
+\contentsline {paragraph}{ApplySettings()}{100}{section*.210}%
+\contentsline {paragraph}{ClearOverride()}{100}{section*.211}%
+\contentsline {paragraph}{GetActive()\hspace {0.1cm}{\footnotesize \ttfamily [1/6]}}{101}{section*.212}%
+\contentsline {paragraph}{GetActive()\hspace {0.1cm}{\footnotesize \ttfamily [2/6]}}{101}{section*.213}%
+\contentsline {paragraph}{GetActive()\hspace {0.1cm}{\footnotesize \ttfamily [3/6]}}{102}{section*.214}%
+\contentsline {paragraph}{GetActive()\hspace {0.1cm}{\footnotesize \ttfamily [4/6]}}{103}{section*.215}%
+\contentsline {paragraph}{GetActive()\hspace {0.1cm}{\footnotesize \ttfamily [5/6]}}{103}{section*.216}%
+\contentsline {paragraph}{GetActive()\hspace {0.1cm}{\footnotesize \ttfamily [6/6]}}{104}{section*.217}%
+\contentsline {paragraph}{GetAvailable()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{105}{section*.218}%
+\contentsline {paragraph}{GetAvailable()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{105}{section*.219}%
+\contentsline {paragraph}{GetDefault()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{106}{section*.220}%
+\contentsline {paragraph}{GetDefault()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{106}{section*.221}%
+\contentsline {paragraph}{GetOverride()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{107}{section*.222}%
+\contentsline {paragraph}{GetOverride()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{107}{section*.223}%
+\contentsline {paragraph}{IsOverridden()}{108}{section*.224}%
+\contentsline {paragraph}{SetOverride$<$ T $>$()}{108}{section*.225}%
+\contentsline {subsection}{\numberline {7.8}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Label Class Reference}{109}{subsection.7.8}%
+\contentsline {subsubsection}{\numberline {7.8.1}Detailed Description}{110}{subsubsection.7.8.1}%
+\contentsline {subsubsection}{\numberline {7.8.2}Member Function Documentation}{110}{subsubsection.7.8.2}%
+\contentsline {paragraph}{Add()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{110}{section*.228}%
+\contentsline {paragraph}{Add()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{111}{section*.230}%
+\contentsline {paragraph}{ClearAll()}{111}{section*.232}%
+\contentsline {paragraph}{GetAll()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{112}{section*.233}%
+\contentsline {paragraph}{GetAll()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{113}{section*.235}%
+\contentsline {paragraph}{SetAll()}{114}{section*.236}%
+\contentsline {subsection}{\numberline {7.9}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Package Class Reference}{115}{subsection.7.9}%
+\contentsline {subsubsection}{\numberline {7.9.1}Detailed Description}{115}{subsubsection.7.9.1}%
+\contentsline {subsubsection}{\numberline {7.9.2}Member Function Documentation}{115}{subsubsection.7.9.2}%
+\contentsline {paragraph}{Export()\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{115}{section*.239}%
+\contentsline {paragraph}{Export()\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{116}{section*.240}%
+\contentsline {paragraph}{Export()\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{116}{section*.241}%
+\contentsline {paragraph}{Import()}{117}{section*.242}%
+\contentsline {paragraph}{ImportInteractive()}{117}{section*.243}%
+\contentsline {subsection}{\numberline {7.10}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Path Class Reference}{118}{subsection.7.10}%
+\contentsline {subsubsection}{\numberline {7.10.1}Detailed Description}{123}{subsubsection.7.10.1}%
+\contentsline {subsubsection}{\numberline {7.10.2}Constructor \& Destructor Documentation}{123}{subsubsection.7.10.2}%
+\contentsline {paragraph}{Path()\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{123}{section*.249}%
+\contentsline {paragraph}{Path()\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{124}{section*.250}%
+\contentsline {paragraph}{Path()\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{125}{section*.251}%
+\contentsline {subsubsection}{\numberline {7.10.3}Member Function Documentation}{125}{subsubsection.7.10.3}%
+\contentsline {paragraph}{CreateFolders()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{125}{section*.253}%
+\contentsline {paragraph}{CreateFolders()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{126}{section*.254}%
+\contentsline {paragraph}{Equals()\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{127}{section*.256}%
+\contentsline {paragraph}{Equals()\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{128}{section*.258}%
+\contentsline {paragraph}{Equals()\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{128}{section*.259}%
+\contentsline {paragraph}{FileExists()}{129}{section*.261}%
+\contentsline {paragraph}{FolderExists()}{130}{section*.263}%
+\contentsline {paragraph}{FromMeta()}{130}{section*.265}%
+\contentsline {paragraph}{Get()\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{131}{section*.266}%
+\contentsline {paragraph}{Get()\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{132}{section*.268}%
+\contentsline {paragraph}{Get()\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{133}{section*.270}%
+\contentsline {paragraph}{GetGuid()}{134}{section*.271}%
+\contentsline {paragraph}{GetHashCode()}{134}{section*.272}%
+\contentsline {paragraph}{GetScene()}{134}{section*.273}%
+\contentsline {paragraph}{GetSubFolders()}{135}{section*.274}%
+\contentsline {paragraph}{IsValid()}{135}{section*.275}%
+\contentsline {paragraph}{OpenExternal()}{136}{section*.276}%
+\contentsline {paragraph}{operator Path()}{136}{section*.277}%
+\contentsline {paragraph}{operator String()}{137}{section*.278}%
+\contentsline {paragraph}{operator"!=()\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{137}{section*.279}%
+\contentsline {paragraph}{operator"!=()\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{137}{section*.280}%
+\contentsline {paragraph}{operator"!=()\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{138}{section*.281}%
+\contentsline {paragraph}{operator==()\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{138}{section*.282}%
+\contentsline {paragraph}{operator==()\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{139}{section*.284}%
+\contentsline {paragraph}{operator==()\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{139}{section*.285}%
+\contentsline {paragraph}{Rename()}{140}{section*.286}%
+\contentsline {paragraph}{ToMeta()}{140}{section*.287}%
+\contentsline {paragraph}{ToString()}{141}{section*.288}%
+\contentsline {paragraph}{ToStrings()}{141}{section*.289}%
+\contentsline {paragraph}{UniquifyFileName()}{141}{section*.290}%
+\contentsline {subsubsection}{\numberline {7.10.4}Property Documentation}{142}{subsubsection.7.10.4}%
+\contentsline {paragraph}{AssetPath}{142}{section*.291}%
+\contentsline {paragraph}{Exists}{142}{section*.292}%
+\contentsline {paragraph}{ExistsInFileSystem}{143}{section*.293}%
+\contentsline {paragraph}{Extension}{143}{section*.294}%
+\contentsline {paragraph}{FileName}{143}{section*.295}%
+\contentsline {paragraph}{FileNameWithoutExtension}{144}{section*.296}%
+\contentsline {paragraph}{FolderPath}{144}{section*.297}%
+\contentsline {paragraph}{FullAssetsPath}{144}{section*.298}%
+\contentsline {paragraph}{FullLibraryPath}{145}{section*.299}%
+\contentsline {paragraph}{FullLogsPath}{145}{section*.300}%
+\contentsline {paragraph}{FullPackagesPath}{145}{section*.301}%
+\contentsline {paragraph}{FullPath}{145}{section*.302}%
+\contentsline {paragraph}{FullProjectPath}{145}{section*.303}%
+\contentsline {paragraph}{FullProjectSettingsPath}{146}{section*.304}%
+\contentsline {paragraph}{FullProjectTempPath}{146}{section*.305}%
+\contentsline {paragraph}{FullUserSettingsPath}{146}{section*.306}%
+\contentsline {paragraph}{Guid}{146}{section*.307}%
+\contentsline {paragraph}{MetaPath}{147}{section*.308}%
+\contentsline {paragraph}{SubFolders}{147}{section*.309}%
+\contentsline {paragraph}{UniqueFilePath}{147}{section*.310}%
+\contentsline {subsection}{\numberline {7.11}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Status Class Reference}{148}{subsection.7.11}%
+\contentsline {subsubsection}{\numberline {7.11.1}Detailed Description}{148}{subsubsection.7.11.1}%
+\contentsline {subsubsection}{\numberline {7.11.2}Member Function Documentation}{149}{subsubsection.7.11.2}%
+\contentsline {paragraph}{IsForeign()}{149}{section*.313}%
+\contentsline {paragraph}{IsImported()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{149}{section*.314}%
+\contentsline {paragraph}{IsImported()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{150}{section*.315}%
+\contentsline {paragraph}{IsLoaded()}{150}{section*.316}%
+\contentsline {paragraph}{IsMain()}{151}{section*.317}%
+\contentsline {paragraph}{IsNative()}{151}{section*.318}%
+\contentsline {paragraph}{IsScene()}{152}{section*.319}%
+\contentsline {paragraph}{IsSub()}{152}{section*.320}%
+\contentsline {subsection}{\numberline {7.12}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Sub\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Asset Class Reference}{153}{subsection.7.12}%
+\contentsline {subsubsection}{\numberline {7.12.1}Detailed Description}{154}{subsubsection.7.12.1}%
+\contentsline {subsubsection}{\numberline {7.12.2}Member Function Documentation}{154}{subsubsection.7.12.2}%
+\contentsline {paragraph}{Add()}{154}{section*.323}%
+\contentsline {paragraph}{Extract()}{154}{section*.324}%
+\contentsline {paragraph}{LoadAll()}{155}{section*.325}%
+\contentsline {paragraph}{LoadVisible()}{156}{section*.326}%
+\contentsline {paragraph}{Remove()}{156}{section*.327}%
+\contentsline {paragraph}{SetMain()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{157}{section*.328}%
+\contentsline {paragraph}{SetMain()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{157}{section*.329}%
+\contentsline {subsection}{\numberline {7.13}Asset.\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Version\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Control Class Reference}{158}{subsection.7.13}%
+\contentsline {subsubsection}{\numberline {7.13.1}Detailed Description}{159}{subsubsection.7.13.1}%
+\contentsline {subsubsection}{\numberline {7.13.2}Member Function Documentation}{160}{subsubsection.7.13.2}%
+\contentsline {paragraph}{CanMakeEditable()\hspace {0.1cm}{\footnotesize \ttfamily [1/5]}}{160}{section*.333}%
+\contentsline {paragraph}{CanMakeEditable()\hspace {0.1cm}{\footnotesize \ttfamily [2/5]}}{161}{section*.335}%
+\contentsline {paragraph}{CanMakeEditable()\hspace {0.1cm}{\footnotesize \ttfamily [3/5]}}{161}{section*.336}%
+\contentsline {paragraph}{CanMakeEditable()\hspace {0.1cm}{\footnotesize \ttfamily [4/5]}}{162}{section*.338}%
+\contentsline {paragraph}{CanMakeEditable()\hspace {0.1cm}{\footnotesize \ttfamily [5/5]}}{163}{section*.339}%
+\contentsline {paragraph}{IsEditable()\hspace {0.1cm}{\footnotesize \ttfamily [1/4]}}{163}{section*.340}%
+\contentsline {paragraph}{IsEditable()\hspace {0.1cm}{\footnotesize \ttfamily [2/4]}}{164}{section*.341}%
+\contentsline {paragraph}{IsEditable()\hspace {0.1cm}{\footnotesize \ttfamily [3/4]}}{165}{section*.342}%
+\contentsline {paragraph}{IsEditable()\hspace {0.1cm}{\footnotesize \ttfamily [4/4]}}{165}{section*.343}%
+\contentsline {paragraph}{IsMetaEditable()}{166}{section*.344}%
+\contentsline {paragraph}{MakeEditable()\hspace {0.1cm}{\footnotesize \ttfamily [1/3]}}{166}{section*.345}%
+\contentsline {paragraph}{MakeEditable()\hspace {0.1cm}{\footnotesize \ttfamily [2/3]}}{167}{section*.346}%
+\contentsline {paragraph}{MakeEditable()\hspace {0.1cm}{\footnotesize \ttfamily [3/3]}}{167}{section*.347}%
+\contentsline {paragraph}{MakeEditableInteractive()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{168}{section*.348}%
+\contentsline {paragraph}{MakeEditableInteractive()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{169}{section*.349}%
+\contentsline {subsection}{\numberline {7.14}Asset\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Load\discretionary {\mbox {\scriptsize $\hookleftarrow $}}{}{}Exception Class Reference}{169}{subsection.7.14}%
+\contentsline {subsubsection}{\numberline {7.14.1}Detailed Description}{171}{subsubsection.7.14.1}%
+\contentsline {subsubsection}{\numberline {7.14.2}Constructor \& Destructor Documentation}{171}{subsubsection.7.14.2}%
+\contentsline {paragraph}{AssetLoadException()\hspace {0.1cm}{\footnotesize \ttfamily [1/2]}}{171}{section*.353}%
+\contentsline {paragraph}{AssetLoadException()\hspace {0.1cm}{\footnotesize \ttfamily [2/2]}}{171}{section*.354}%
+\contentsline {section}{Index}{173}{section*.355}%
diff --git a/Docs~/latex/steffen portrait codesmile logo larger top-left-64x62.png b/Docs~/latex/steffen portrait codesmile logo larger top-left-64x62.png
new file mode 100644
index 00000000..0f720d2b
Binary files /dev/null and b/Docs~/latex/steffen portrait codesmile logo larger top-left-64x62.png differ
diff --git a/Docs~/latex/tabu_doxygen.sty b/Docs~/latex/tabu_doxygen.sty
new file mode 100644
index 00000000..3f17d1d0
--- /dev/null
+++ b/Docs~/latex/tabu_doxygen.sty
@@ -0,0 +1,2557 @@
+%%
+%% This is file `tabu.sty',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% tabu.dtx (with options: `package')
+%%
+%% This is a generated file.
+%% Copyright (FC) 2010-2011 - lppl
+%%
+%% tabu : 2011/02/26 v2.8 - tabu : Flexible LaTeX tabulars
+%%
+%% **********************************************************************************************
+%% \begin{tabu} { preamble } => default target: \linewidth or \linegoal
+%% \begin{tabu} to { preamble } => target specified
+%% \begin{tabu} spread { preamble } => target relative to the ``natural width''
+%%
+%% tabu works in text and in math modes.
+%%
+%% X columns: automatic width adjustment + horizontal and vertical alignment
+%% \begin{tabu} { X[4c] X[1c] X[-2ml] }
+%%
+%% Horizontal lines and / or leaders:
+%% \hline\hline => double horizontal line
+%% \firsthline\hline => for nested tabulars
+%% \lasthline\hline => for nested tabulars
+%% \tabucline[line spec]{column-column} => ``funny'' lines (dash/leader)
+%% Automatic lines / leaders :
+%% \everyrow{\hline\hline}
+%%
+%% Vertical lines and / or leaders:
+%% \begin{tabu} { |[3pt red] X[4c] X[1c] X[-2ml] |[3pt blue] }
+%% \begin{tabu} { |[3pt red] X[4c] X[1c] X[-2ml] |[3pt on 2pt off 4pt blue] }
+%%
+%% Fixed vertical spacing adjustment:
+%% \extrarowheight= \extrarowdepth=
+%% or: \extrarowsep= => may be prefixed by \global
+%%
+%% Dynamic vertical spacing adjustment:
+%% \abovetabulinesep= \belowtabulinesep=
+%% or: \tabulinesep= => may be prefixed by \global
+%%
+%% delarray.sty shortcuts: in math and text modes
+%% \begin{tabu} .... \({ preamble }\)
+%%
+%% Algorithms reports:
+%% \tracingtabu=1 \tracingtabu=2
+%%
+%% **********************************************************************************************
+%%
+%% This work may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either
+%% version 1.3 of this license or (at your option) any later
+%% version. The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%%
+%% This work consists of the main source file tabu.dtx
+%% and the derived files
+%% tabu.sty, tabu.pdf, tabu.ins
+%%
+%% tabu : Flexible LaTeX tabulars
+%% lppl copyright 2010-2011 by FC
+%%
+
+\NeedsTeXFormat{LaTeX2e}[2005/12/01]
+\ProvidesPackage{tabu_doxygen}[2011/02/26 v2.8 - flexible LaTeX tabulars (FC), frozen version for doxygen]
+\RequirePackage{array}[2008/09/09]
+\RequirePackage{varwidth}[2009/03/30]
+\AtEndOfPackage{\tabu@AtEnd \let\tabu@AtEnd \@undefined}
+\let\tabu@AtEnd\@empty
+\def\TMP@EnsureCode#1={%
+ \edef\tabu@AtEnd{\tabu@AtEnd
+ \catcode#1 \the\catcode#1}%
+ \catcode#1=%
+}% \TMP@EnsureCode
+\TMP@EnsureCode 33 = 12 % !
+\TMP@EnsureCode 58 = 12 % : (for siunitx)
+\TMP@EnsureCode124 = 12 % |
+\TMP@EnsureCode 36 = 3 % $ = math shift
+\TMP@EnsureCode 38 = 4 % & = tab alignment character
+\TMP@EnsureCode 32 = 10 % space
+\TMP@EnsureCode 94 = 7 % ^
+\TMP@EnsureCode 95 = 8 % _
+%% Constants --------------------------------------------------------
+\newcount \c@taburow \def\thetaburow {\number\c@taburow}
+\newcount \tabu@nbcols
+\newcount \tabu@cnt
+\newcount \tabu@Xcol
+\let\tabu@start \@tempcnta
+\let\tabu@stop \@tempcntb
+\newcount \tabu@alloc \tabu@alloc=\m@ne
+\newcount \tabu@nested
+\def\tabu@alloc@{\global\advance\tabu@alloc \@ne \tabu@nested\tabu@alloc}
+\newdimen \tabu@target
+\newdimen \tabu@spreadtarget
+\newdimen \tabu@naturalX
+\newdimen \tabucolX
+\let\tabu@DELTA \@tempdimc
+\let\tabu@thick \@tempdima
+\let\tabu@on \@tempdimb
+\let\tabu@off \@tempdimc
+\newdimen \tabu@Xsum
+\newdimen \extrarowdepth
+\newdimen \abovetabulinesep
+\newdimen \belowtabulinesep
+\newdimen \tabustrutrule \tabustrutrule \z@
+\newtoks \tabu@thebody
+\newtoks \tabu@footnotes
+\newsavebox \tabu@box
+\newsavebox \tabu@arstrutbox
+\newsavebox \tabu@hleads
+\newsavebox \tabu@vleads
+\newif \iftabu@colortbl
+\newif \iftabu@siunitx
+\newif \iftabu@measuring
+\newif \iftabu@spread
+\newif \iftabu@negcoef
+\newif \iftabu@everyrow
+\def\tabu@everyrowtrue {\global\let\iftabu@everyrow \iftrue}
+\def\tabu@everyrowfalse{\global\let\iftabu@everyrow \iffalse}
+\newif \iftabu@long
+\newif \iftabuscantokens
+\def\tabu@rescan {\tabu@verbatim \scantokens }
+%% Utilities (for internal usage) -----------------------------------
+\def\tabu@gobblespace #1 {#1}
+\def\tabu@gobbletoken #1#2{#1}
+\def\tabu@gobbleX{\futurelet\@let@token \tabu@gobblex}
+\def\tabu@gobblex{\if ^^J\noexpand\@let@token \expandafter\@gobble
+ \else\ifx \@sptoken\@let@token
+ \expandafter\tabu@gobblespace\expandafter\tabu@gobbleX
+ \fi\fi
+}% \tabu@gobblex
+\def\tabu@X{^^J}
+{\obeyspaces
+\global\let\tabu@spxiii= % saves an active space (for \ifx)
+\gdef\tabu@@spxiii{ }}
+\def\tabu@ifenvir {% only for \multicolumn
+ \expandafter\tabu@if@nvir\csname\@currenvir\endcsname
+}% \tabu@ifenvir
+\def\tabu@if@nvir #1{\csname @\ifx\tabu#1first\else
+ \ifx\longtabu#1first\else
+ second\fi\fi oftwo\endcsname
+}% \tabu@ifenvir
+\def\tabu@modulo #1#2{\numexpr\ifnum\numexpr#1=\z@ 0\else #1-(#1-(#2-1)/2)/(#2)*(#2)\fi}
+{\catcode`\&=3
+\gdef\tabu@strtrim #1{% #1 = control sequence to trim
+ \ifodd 1\ifx #1\@empty \else \ifx #1\space \else 0\fi \fi
+ \let\tabu@c@l@r \@empty \let#1\@empty
+ \else \expandafter \tabu@trimspaces #1\@nnil
+ \fi
+}% \tabu@strtrim
+\gdef\tabu@trimspaces #1\@nnil{\let\tabu@c@l@r=#2\tabu@firstspace .#1& }%
+\gdef\tabu@firstspace #1#2#3 &{\tabu@lastspace #2#3&}
+\gdef\tabu@lastspace #1{\def #3{#1}%
+ \ifx #3\tabu@c@l@r \def\tabu@c@l@r{\protect\color{#1}}\expandafter\remove@to@nnil \fi
+ \tabu@trimspaces #1\@nnil}
+}% \catcode
+\def\tabu@sanitizearg #1#2{{%
+ \csname \ifcsname if@safe@actives\endcsname %
+ @safe@activestrue\else
+ relax\fi \endcsname
+ \edef#2{#1}\tabu@strtrim#2\@onelevel@sanitize#2%
+ \expandafter}\expandafter\def\expandafter#2\expandafter{#2}%
+}% \tabu@sanitizearg
+\def\tabu@textbar #1{\begingroup \endlinechar\m@ne \scantokens{\def\:{|}}%
+ \expandafter\endgroup \expandafter#1\:% !!! semi simple group !!!
+}% \tabu@textbar
+\def\tabu@everyrow@bgroup{\iftabu@everyrow \begingroup \else \noalign{\ifnum0=`}\fi \fi}
+\def\tabu@everyrow@egroup{%
+ \iftabu@everyrow \expandafter \endgroup \the\toks@
+ \else \ifnum0=`{\fi}%
+ \fi
+}% \tabu@everyrow@egroup
+\def\tabu@arstrut {\global\setbox\@arstrutbox \hbox{\vrule
+ height \arraystretch \dimexpr\ht\strutbox+\extrarowheight
+ depth \arraystretch \dimexpr\dp\strutbox+\extrarowdepth
+ width \z@}%
+}% \tabu@arstrut
+\def\tabu@rearstrut {%
+ \@tempdima \arraystretch\dimexpr\ht\strutbox+\extrarowheight \relax
+ \@tempdimb \arraystretch\dimexpr\dp\strutbox+\extrarowdepth \relax
+ \ifodd 1\ifdim \ht\@arstrutbox=\@tempdima
+ \ifdim \dp\@arstrutbox=\@tempdimb 0 \fi\fi
+ \tabu@mkarstrut
+ \fi
+}% \tabu@rearstrut
+\def\tabu@@DBG #1{\ifdim\tabustrutrule>\z@ \color{#1}\fi}
+\def\tabu@DBG@arstrut {\global\setbox\@arstrutbox
+ \hbox to\z@{\hbox to\z@{\hss
+ {\tabu@DBG{cyan}\vrule
+ height \arraystretch \dimexpr\ht\strutbox+\extrarowheight
+ depth \z@
+ width \tabustrutrule}\kern-\tabustrutrule
+ {\tabu@DBG{pink}\vrule
+ height \z@
+ depth \arraystretch \dimexpr\dp\strutbox+\extrarowdepth
+ width \tabustrutrule}}}%
+}% \tabu@DBG@arstrut
+\def\tabu@save@decl{\toks\count@ \expandafter{\the\toks\expandafter\count@
+ \@nextchar}}%
+\def\tabu@savedecl{\ifcat$\d@llarend\else
+ \let\save@decl \tabu@save@decl \fi % no inversion of tokens in text mode
+}% \tabu@savedecl
+\def\tabu@finalstrut #1{\unskip\ifhmode\nobreak\fi\vrule height\z@ depth\z@ width\z@}
+\newcommand*\tabuDisableCommands {\g@addto@macro\tabu@trialh@@k }
+\let\tabu@trialh@@k \@empty
+\def\tabu@nowrite #1#{{\afterassignment}\toks@}
+\let\tabu@write\write
+\let\tabu@immediate\immediate
+\def\tabu@WRITE{\begingroup
+ \def\immediate\write{\aftergroup\endgroup
+ \tabu@immediate\tabu@write}%
+}% \tabu@WRITE
+\expandafter\def\expandafter\tabu@GenericError\expandafter{%
+ \expandafter\tabu@WRITE\GenericError}
+\def\tabu@warn{\tabu@WRITE\PackageWarning{tabu}}
+\def\tabu@noxfootnote [#1]{\@gobble}
+\def\tabu@nocolor #1#{\@gobble}
+\newcommand*\tabu@norowcolor[2][]{}
+\def\tabu@maybesiunitx #1{\def\tabu@temp{#1}%
+ \futurelet\@let@token \tabu@m@ybesiunitx}
+\def\tabu@m@ybesiunitx #1{\def\tabu@m@ybesiunitx {%
+ \ifx #1\@let@token \let\tabu@cellleft \@empty \let\tabu@cellright \@empty \fi
+ \tabu@temp}% \tabu@m@ybesiunitx
+}\expandafter\tabu@m@ybesiunitx \csname siunitx_table_collect_begin:Nn\endcsname
+\def\tabu@celllalign@def #1{\def\tabu@celllalign{\tabu@maybesiunitx{#1}}}%
+%% Fixed vertical spacing adjustment: \extrarowsep ------------------
+\newcommand*\extrarowsep{\edef\tabu@C@extra{\the\numexpr\tabu@C@extra+1}%
+ \iftabu@everyrow \aftergroup\tabu@Gextra
+ \else \aftergroup\tabu@n@Gextra
+ \fi
+ \@ifnextchar={\tabu@gobbletoken\tabu@extra} \tabu@extra
+}% \extrarowsep
+\def\tabu@extra {\@ifnextchar_%
+ {\tabu@gobbletoken{\tabu@setextra\extrarowheight \extrarowdepth}}
+ {\ifx ^\@let@token \def\tabu@temp{%
+ \tabu@gobbletoken{\tabu@setextra\extrarowdepth \extrarowheight}}%
+ \else \let\tabu@temp \@empty
+ \afterassignment \tabu@setextrasep \extrarowdepth
+ \fi \tabu@temp}%
+}% \tabu@extra
+\def\tabu@setextra #1#2{\def\tabu@temp{\tabu@extr@#1#2}\afterassignment\tabu@temp#2}
+\def\tabu@extr@ #1#2{\@ifnextchar^%
+ {\tabu@gobbletoken{\tabu@setextra\extrarowdepth \extrarowheight}}
+ {\ifx _\@let@token \def\tabu@temp{%
+ \tabu@gobbletoken{\tabu@setextra\extrarowheight \extrarowdepth}}%
+ \else \let\tabu@temp \@empty
+ \tabu@Gsave \tabu@G@extra \tabu@C@extra \extrarowheight \extrarowdepth
+ \fi \tabu@temp}%
+}% \tabu@extr@
+\def\tabu@setextrasep {\extrarowheight=\extrarowdepth
+ \tabu@Gsave \tabu@G@extra \tabu@C@extra \extrarowheight \extrarowdepth
+}% \tabu@setextrasep
+\def\tabu@Gextra{\ifx \tabu@G@extra\@empty \else {\tabu@Rextra}\fi}
+\def\tabu@n@Gextra{\ifx \tabu@G@extra\@empty \else \noalign{\tabu@Rextra}\fi}
+\def\tabu@Rextra{\tabu@Grestore \tabu@G@extra \tabu@C@extra}
+\let\tabu@C@extra \z@
+\let\tabu@G@extra \@empty
+%% Dynamic vertical spacing adjustment: \tabulinesep ----------------
+\newcommand*\tabulinesep{\edef\tabu@C@linesep{\the\numexpr\tabu@C@linesep+1}%
+ \iftabu@everyrow \aftergroup\tabu@Glinesep
+ \else \aftergroup\tabu@n@Glinesep
+ \fi
+ \@ifnextchar={\tabu@gobbletoken\tabu@linesep} \tabu@linesep
+}% \tabulinesep
+\def\tabu@linesep {\@ifnextchar_%
+ {\tabu@gobbletoken{\tabu@setsep\abovetabulinesep \belowtabulinesep}}
+ {\ifx ^\@let@token \def\tabu@temp{%
+ \tabu@gobbletoken{\tabu@setsep\belowtabulinesep \abovetabulinesep}}%
+ \else \let\tabu@temp \@empty
+ \afterassignment \tabu@setlinesep \abovetabulinesep
+ \fi \tabu@temp}%
+}% \tabu@linesep
+\def\tabu@setsep #1#2{\def\tabu@temp{\tabu@sets@p#1#2}\afterassignment\tabu@temp#2}
+\def\tabu@sets@p #1#2{\@ifnextchar^%
+ {\tabu@gobbletoken{\tabu@setsep\belowtabulinesep \abovetabulinesep}}
+ {\ifx _\@let@token \def\tabu@temp{%
+ \tabu@gobbletoken{\tabu@setsep\abovetabulinesep \belowtabulinesep}}%
+ \else \let\tabu@temp \@empty
+ \tabu@Gsave \tabu@G@linesep \tabu@C@linesep \abovetabulinesep \belowtabulinesep
+ \fi \tabu@temp}%
+}% \tabu@sets@p
+\def\tabu@setlinesep {\belowtabulinesep=\abovetabulinesep
+ \tabu@Gsave \tabu@G@linesep \tabu@C@linesep \abovetabulinesep \belowtabulinesep
+}% \tabu@setlinesep
+\def\tabu@Glinesep{\ifx \tabu@G@linesep\@empty \else {\tabu@Rlinesep}\fi}
+\def\tabu@n@Glinesep{\ifx \tabu@G@linesep\@empty \else \noalign{\tabu@Rlinesep}\fi}
+\def\tabu@Rlinesep{\tabu@Grestore \tabu@G@linesep \tabu@C@linesep}
+\let\tabu@C@linesep \z@
+\let\tabu@G@linesep \@empty
+%% \global\extrarowsep and \global\tabulinesep -------------------
+\def\tabu@Gsave #1#2#3#4{\xdef#1{#1%
+ \toks#2{\toks\the\currentgrouplevel{\global#3\the#3\global#4\the#4}}}%
+}% \tabu@Gsave
+\def\tabu@Grestore#1#2{%
+ \toks#2{}#1\toks\currentgrouplevel\expandafter{\expandafter}\the\toks#2\relax
+ \ifcat$\the\toks\currentgrouplevel$\else
+ \global\let#1\@empty \global\let#2\z@
+ \the\toks\currentgrouplevel
+ \fi
+}% \tabu@Grestore
+%% Setting code for every row ---------------------------------------
+\newcommand*\everyrow{\tabu@everyrow@bgroup
+ \tabu@start \z@ \tabu@stop \z@ \tabu@evrstartstop
+}% \everyrow
+\def\tabu@evrstartstop {\@ifnextchar^%
+ {\afterassignment \tabu@evrstartstop \tabu@stop=}%
+ {\ifx ^\@let@token
+ \afterassignment\tabu@evrstartstop \tabu@start=%
+ \else \afterassignment\tabu@everyr@w \toks@
+ \fi}%
+}% \tabu@evrstartstop
+\def\tabu@everyr@w {%
+ \xdef\tabu@everyrow{%
+ \noexpand\tabu@everyrowfalse
+ \let\noalign \relax
+ \noexpand\tabu@rowfontreset
+ \iftabu@colortbl \noexpand\tabu@rc@ \fi % \taburowcolors
+ \let\noexpand\tabu@docline \noexpand\tabu@docline@evr
+ \the\toks@
+ \noexpand\tabu@evrh@@k
+ \noexpand\tabu@rearstrut
+ \global\advance\c@taburow \@ne}%
+ \iftabu@everyrow \toks@\expandafter
+ {\expandafter\def\expandafter\tabu@evr@L\expandafter{\the\toks@}\ignorespaces}%
+ \else \xdef\tabu@evr@G{\the\toks@}%
+ \fi
+ \tabu@everyrow@egroup
+}% \tabu@everyr@w
+\def\tabu@evr {\def\tabu@evrh@@k} % for internal use only
+\tabu@evr{}
+%% line style and leaders -------------------------------------------
+\newcommand*\newtabulinestyle [1]{%
+ {\@for \@tempa :=#1\do{\expandafter\tabu@newlinestyle \@tempa==\@nil}}%
+}% \newtabulinestyle
+\def\tabu@newlinestyle #1=#2=#3\@nil{\tabu@getline {#2}%
+ \tabu@sanitizearg {#1}\@tempa
+ \ifodd 1\ifx \@tempa\@empty \ifdefined\tabu@linestyle@ 0 \fi\fi
+ \global\expandafter\let
+ \csname tabu@linestyle@\@tempa \endcsname =\tabu@thestyle \fi
+}% \tabu@newlinestyle
+\newcommand*\tabulinestyle [1]{\tabu@everyrow@bgroup \tabu@getline{#1}%
+ \iftabu@everyrow
+ \toks@\expandafter{\expandafter \def \expandafter
+ \tabu@ls@L\expandafter{\tabu@thestyle}\ignorespaces}%
+ \gdef\tabu@ls@{\tabu@ls@L}%
+ \else
+ \global\let\tabu@ls@G \tabu@thestyle
+ \gdef\tabu@ls@{\tabu@ls@G}%
+ \fi
+ \tabu@everyrow@egroup
+}% \tabulinestyle
+\newcommand*\taburulecolor{\tabu@everyrow@bgroup \tabu@textbar \tabu@rulecolor}
+\def\tabu@rulecolor #1{\toks@{}%
+ \def\tabu@temp #1##1#1{\tabu@ruledrsc{##1}}\@ifnextchar #1%
+ \tabu@temp
+ \tabu@rulearc
+}% \tabu@rulecolor
+\def\tabu@ruledrsc #1{\edef\tabu@temp{#1}\tabu@strtrim\tabu@temp
+ \ifx \tabu@temp\@empty \def\tabu@temp{\tabu@rule@drsc@ {}{}}%
+ \else \edef\tabu@temp{\noexpand\tabu@rule@drsc@ {}{\tabu@temp}}%
+ \fi
+ \tabu@temp
+}% \tabu@ruledrsc@
+\def\tabu@ruledrsc@ #1#{\tabu@rule@drsc@ {#1}}
+\def\tabu@rule@drsc@ #1#2{%
+ \iftabu@everyrow
+ \ifx \\#1#2\\\toks@{\let\CT@drsc@ \relax}%
+ \else \toks@{\def\CT@drsc@{\color #1{#2}}}%
+ \fi
+ \else
+ \ifx \\#1#2\\\global\let\CT@drsc@ \relax
+ \else \gdef\CT@drsc@{\color #1{#2}}%
+ \fi
+ \fi
+ \tabu@rulearc
+}% \tabu@rule@drsc@
+\def\tabu@rulearc #1#{\tabu@rule@arc@ {#1}}
+\def\tabu@rule@arc@ #1#2{%
+ \iftabu@everyrow
+ \ifx \\#1#2\\\toks@\expandafter{\the\toks@ \def\CT@arc@{}}%
+ \else \toks@\expandafter{\the\toks@ \def\CT@arc@{\color #1{#2}}}%
+ \fi
+ \toks@\expandafter{\the\toks@
+ \let\tabu@arc@L \CT@arc@
+ \let\tabu@drsc@L \CT@drsc@
+ \ignorespaces}%
+ \else
+ \ifx \\#1#2\\\gdef\CT@arc@{}%
+ \else \gdef\CT@arc@{\color #1{#2}}%
+ \fi
+ \global\let\tabu@arc@G \CT@arc@
+ \global\let\tabu@drsc@G \CT@drsc@
+ \fi
+ \tabu@everyrow@egroup
+}% \tabu@rule@arc@
+\def\taburowcolors {\tabu@everyrow@bgroup \@testopt \tabu@rowcolors 1}
+\def\tabu@rowcolors [#1]#2#{\tabu@rowc@lors{#1}{#2}}
+\def\tabu@rowc@lors #1#2#3{%
+ \toks@{}\@defaultunits \count@ =\number0#2\relax \@nnil
+ \@defaultunits \tabu@start =\number0#1\relax \@nnil
+ \ifnum \count@<\tw@ \count@=\tw@ \fi
+ \advance\tabu@start \m@ne
+ \ifnum \tabu@start<\z@ \tabu@start \z@ \fi
+ \tabu@rowcolorseries #3\in@..\in@ \@nnil
+}% \tabu@rowcolors
+\def\tabu@rowcolorseries #1..#2\in@ #3\@nnil {%
+ \ifx \in@#1\relax
+ \iftabu@everyrow \toks@{\def\tabu@rc@{}\let\tabu@rc@L \tabu@rc@}%
+ \else \gdef\tabu@rc@{}\global\let\tabu@rc@G \tabu@rc@
+ \fi
+ \else
+ \ifx \\#2\\\tabu@rowcolorserieserror \fi
+ \tabu@sanitizearg{#1}\tabu@temp
+ \tabu@sanitizearg{#2}\@tempa
+ \advance\count@ \m@ne
+ \iftabu@everyrow
+ \def\tabu@rc@ ##1##2##3##4{\def\tabu@rc@{%
+ \ifnum ##2=\c@taburow
+ \definecolorseries{tabu@rcseries@\the\tabu@nested}{rgb}{last}{##3}{##4}\fi
+ \ifnum \c@taburow<##2 \else
+ \ifnum \tabu@modulo {\c@taburow-##2}{##1+1}=\z@
+ \resetcolorseries[{##1}]{tabu@rcseries@\the\tabu@nested}\fi
+ \xglobal\colorlet{tabu@rc@\the\tabu@nested}{tabu@rcseries@\the\tabu@nested!!+}%
+ \rowcolor{tabu@rc@\the\tabu@nested}\fi}%
+ }\edef\x{\noexpand\tabu@rc@ {\the\count@}
+ {\the\tabu@start}
+ {\tabu@temp}
+ {\@tempa}%
+ }\x
+ \toks@\expandafter{\expandafter\def\expandafter\tabu@rc@\expandafter{\tabu@rc@}}%
+ \toks@\expandafter{\the\toks@ \let\tabu@rc@L \tabu@rc@ \ignorespaces}%
+ \else % inside \noalign
+ \definecolorseries{tabu@rcseries@\the\tabu@nested}{rgb}{last}{\tabu@temp}{\@tempa}%
+ \expandafter\resetcolorseries\expandafter[\the\count@]{tabu@rcseries@\the\tabu@nested}%
+ \xglobal\colorlet{tabu@rc@\the\tabu@nested}{tabu@rcseries@\the\tabu@nested!!+}%
+ \let\noalign \relax \rowcolor{tabu@rc@\the\tabu@nested}%
+ \def\tabu@rc@ ##1##2{\gdef\tabu@rc@{%
+ \ifnum \tabu@modulo {\c@taburow-##2}{##1+1}=\@ne
+ \resetcolorseries[{##1}]{tabu@rcseries@\the\tabu@nested}\fi
+ \xglobal\colorlet{tabu@rc@\the\tabu@nested}{tabu@rcseries@\the\tabu@nested!!+}%
+ \rowcolor{tabu@rc@\the\tabu@nested}}%
+ }\edef\x{\noexpand\tabu@rc@{\the\count@}{\the\c@taburow}}\x
+ \global\let\tabu@rc@G \tabu@rc@
+ \fi
+ \fi
+ \tabu@everyrow@egroup
+}% \tabu@rowcolorseries
+\tabuDisableCommands {\let\tabu@rc@ \@empty }
+\def\tabu@rowcolorserieserror {\PackageError{tabu}
+ {Invalid syntax for \string\taburowcolors
+ \MessageBreak Please look at the documentation!}\@ehd
+}% \tabu@rowcolorserieserror
+\newcommand*\tabureset {%
+ \tabulinesep=\z@ \extrarowsep=\z@ \extratabsurround=\z@
+ \tabulinestyle{}\everyrow{}\taburulecolor||{}\taburowcolors{}%
+}% \tabureset
+%% Parsing the line styles ------------------------------------------
+\def\tabu@getline #1{\begingroup
+ \csname \ifcsname if@safe@actives\endcsname %
+ @safe@activestrue\else
+ relax\fi \endcsname
+ \edef\tabu@temp{#1}\tabu@sanitizearg{#1}\@tempa
+ \let\tabu@thestyle \relax
+ \ifcsname tabu@linestyle@\@tempa \endcsname
+ \edef\tabu@thestyle{\endgroup
+ \def\tabu@thestyle{\expandafter\noexpand
+ \csname tabu@linestyle@\@tempa\endcsname}%
+ }\tabu@thestyle
+ \else \expandafter\tabu@definestyle \tabu@temp \@nil
+ \fi
+}% \tabu@getline
+\def\tabu@definestyle #1#2\@nil {\endlinechar \m@ne \makeatletter
+ \tabu@thick \maxdimen \tabu@on \maxdimen \tabu@off \maxdimen
+ \let\tabu@c@lon \@undefined \let\tabu@c@loff \@undefined
+ \ifodd 1\ifcat .#1\else\ifcat\relax #1\else 0\fi\fi % catcode 12 or non expandable cs
+ \def\tabu@temp{\tabu@getparam{thick}}%
+ \else \def\tabu@temp{\tabu@getparam{thick}\maxdimen}%
+ \fi
+ {%
+ \let\tabu@ \relax
+ \def\:{\obeyspaces \tabu@oXIII \tabu@commaXIII \edef\:}% (space active \: happy ;-))
+ \scantokens{\:{\tabu@temp #1#2 \tabu@\tabu@}}%
+ \expandafter}\expandafter
+ \def\expandafter\:\expandafter{\:}% line spec rewritten now ;-)
+ \def\;{\def\:}%
+ \scantokens\expandafter{\expandafter\;\expandafter{\:}}% space is now inactive (catcode 10)
+ \let\tabu@ \tabu@getcolor \:% all arguments are ready now ;-)
+ \ifdefined\tabu@c@lon \else \let\tabu@c@lon\@empty \fi
+ \ifx \tabu@c@lon\@empty \def\tabu@c@lon{\CT@arc@}\fi
+ \ifdefined\tabu@c@loff \else \let\tabu@c@loff \@empty \fi
+ \ifdim \tabu@on=\maxdimen \ifdim \tabu@off<\maxdimen
+ \tabu@on \tabulineon \fi\fi
+ \ifdim \tabu@off=\maxdimen \ifdim \tabu@on<\maxdimen
+ \tabu@off \tabulineoff \fi\fi
+ \ifodd 1\ifdim \tabu@off=\maxdimen \ifdim \tabu@on=\maxdimen 0 \fi\fi
+ \in@true %
+ \else \in@false %
+ \fi
+ \ifdim\tabu@thick=\maxdimen \def\tabu@thick{\arrayrulewidth}%
+ \else \edef\tabu@thick{\the\tabu@thick}%
+ \fi
+ \edef \tabu@thestyle ##1##2{\endgroup
+ \def\tabu@thestyle{%
+ \ifin@ \noexpand\tabu@leadersstyle {\tabu@thick}
+ {\the\tabu@on}{##1}
+ {\the\tabu@off}{##2}%
+ \else \noexpand\tabu@rulesstyle
+ {##1\vrule width \tabu@thick}%
+ {##1\leaders \hrule height \tabu@thick \hfil}%
+ \fi}%
+ }\expandafter \expandafter
+ \expandafter \tabu@thestyle \expandafter
+ \expandafter \expandafter
+ {\expandafter\tabu@c@lon\expandafter}\expandafter{\tabu@c@loff}%
+}% \tabu@definestyle
+{\catcode`\O=\active \lccode`\O=`\o \catcode`\,=\active
+ \lowercase{\gdef\tabu@oXIII {\catcode`\o=\active \let O=\tabu@oxiii}}
+ \gdef\tabu@commaXIII {\catcode`\,=\active \let ,=\space}
+}% \catcode
+\def\tabu@oxiii #1{%
+ \ifcase \ifx n#1\z@ \else
+ \ifx f#1\@ne\else
+ \tw@ \fi\fi
+ \expandafter\tabu@onxiii
+ \or \expandafter\tabu@ofxiii
+ \else o%
+ \fi#1}%
+\def\tabu@onxiii #1#2{%
+ \ifcase \ifx !#2\tw@ \else
+ \ifcat.\noexpand#2\z@ \else
+ \ifx \tabu@spxiii#2\@ne\else
+ \tw@ \fi\fi\fi
+ \tabu@getparam{on}#2\expandafter\@gobble
+ \or \expandafter\tabu@onxiii % (space is active)
+ \else o\expandafter\@firstofone
+ \fi{#1#2}}%
+\def\tabu@ofxiii #1#2{%
+ \ifx #2f\expandafter\tabu@offxiii
+ \else o\expandafter\@firstofone
+ \fi{#1#2}}
+\def\tabu@offxiii #1#2{%
+ \ifcase \ifx !#2\tw@ \else
+ \ifcat.\noexpand#2\z@ \else
+ \ifx\tabu@spxiii#2\@ne \else
+ \tw@ \fi\fi\fi
+ \tabu@getparam{off}#2\expandafter\@gobble
+ \or \expandafter\tabu@offxiii % (space is active)
+ \else o\expandafter\@firstofone
+ \fi{#1#2}}
+\def\tabu@getparam #1{\tabu@ \csname tabu@#1\endcsname=}
+\def\tabu@getcolor #1{% \tabu@ <- \tabu@getcolor after \edef
+ \ifx \tabu@#1\else % no more spec
+ \let\tabu@theparam=#1\afterassignment \tabu@getc@l@r #1\fi
+}% \tabu@getcolor
+\def\tabu@getc@l@r #1\tabu@ {%
+ \def\tabu@temp{#1}\tabu@strtrim \tabu@temp
+ \ifx \tabu@temp\@empty
+ \else%\ifcsname \string\color@\tabu@temp \endcsname % if the color exists
+ \ifx \tabu@theparam \tabu@off \let\tabu@c@loff \tabu@c@l@r
+ \else \let\tabu@c@lon \tabu@c@l@r
+ \fi
+ %\else \tabu@warncolour{\tabu@temp}%
+ \fi%\fi
+ \tabu@ % next spec
+}% \tabu@getc@l@r
+\def\tabu@warncolour #1{\PackageWarning{tabu}
+ {Color #1 is not defined. Default color used}%
+}% \tabu@warncolour
+\def\tabu@leadersstyle #1#2#3#4#5{\def\tabu@leaders{{#1}{#2}{#3}{#4}{#5}}%
+ \ifx \tabu@leaders\tabu@leaders@G \else
+ \tabu@LEADERS{#1}{#2}{#3}{#4}{#5}\fi
+}% \tabu@leadersstyle
+\def\tabu@rulesstyle #1#2{\let\tabu@leaders \@undefined
+ \gdef\tabu@thevrule{#1}\gdef\tabu@thehrule{#2}%
+}% \tabu@rulesstyle
+%% The leaders boxes ------------------------------------------------
+\def\tabu@LEADERS #1#2#3#4#5{%% width, dash, dash color, gap, gap color
+ {\let\color \tabu@color % => during trials -> \color = \tabu@nocolor
+ {% % but the leaders boxes should have colors !
+ \def\@therule{\vrule}\def\@thick{height}\def\@length{width}%
+ \def\@box{\hbox}\def\@unbox{\unhbox}\def\@elt{\wd}%
+ \def\@skip{\hskip}\def\@ss{\hss}\def\tabu@leads{\tabu@hleads}%
+ \tabu@l@@d@rs {#1}{#2}{#3}{#4}{#5}%
+ \global\let\tabu@thehleaders \tabu@theleaders
+ }%
+ {%
+ \def\@therule{\hrule}\def\@thick{width}\def\@length{height}%
+ \def\@box{\vbox}\def\@unbox{\unvbox}\def\@elt{\ht}%
+ \def\@skip{\vskip}\def\@ss{\vss}\def\tabu@leads{\tabu@vleads}%
+ \tabu@l@@d@rs {#1}{#2}{#3}{#4}{#5}%
+ \global\let\tabu@thevleaders \tabu@theleaders
+ }%
+ \gdef\tabu@leaders@G{{#1}{#2}{#3}{#4}{#5}}%
+ }%
+}% \tabu@LEADERS
+\def\tabu@therule #1#2{\@therule \@thick#1\@length\dimexpr#2/2 \@depth\z@}
+\def\tabu@l@@d@rs #1#2#3#4#5{%% width, dash, dash color, gap, gap color
+ \global\setbox \tabu@leads=\@box{%
+ {#3\tabu@therule{#1}{#2}}%
+ \ifx\\#5\\\@skip#4\else{#5\tabu@therule{#1}{#4*2}}\fi
+ {#3\tabu@therule{#1}{#2}}}%
+ \global\setbox\tabu@leads=\@box to\@elt\tabu@leads{\@ss
+ {#3\tabu@therule{#1}{#2}}\@unbox\tabu@leads}%
+ \edef\tabu@theleaders ##1{\def\noexpand\tabu@theleaders {%
+ {##1\tabu@therule{#1}{#2}}%
+ \xleaders \copy\tabu@leads \@ss
+ \tabu@therule{0pt}{-#2}{##1\tabu@therule{#1}{#2}}}%
+ }\tabu@theleaders{#3}%
+}% \tabu@l@@d@rs
+%% \tabu \endtabu \tabu* \longtabu \endlongtabu \longtabu* ----------
+\newcommand*\tabu {\tabu@longfalse
+ \ifmmode \def\tabu@ {\array}\def\endtabu {\endarray}%
+ \else \def\tabu@ {\tabu@tabular}\def\endtabu {\endtabular}\fi
+ \expandafter\let\csname tabu*\endcsname \tabu
+ \expandafter\def\csname endtabu*\endcsname{\endtabu}%
+ \tabu@spreadfalse \tabu@negcoeffalse \tabu@settarget
+}% {tabu}
+\let\tabu@tabular \tabular %
+\expandafter\def\csname tabu*\endcsname{\tabuscantokenstrue \tabu}
+\newcommand*\longtabu {\tabu@longtrue
+ \ifmmode\PackageError{tabu}{longtabu not allowed in math mode}\fi
+ \def\tabu@{\longtable}\def\endlongtabu{\endlongtable}%
+ \LTchunksize=\@M
+ \expandafter\let\csname tabu*\endcsname \tabu
+ \expandafter\def\csname endlongtabu*\endcsname{\endlongtabu}%
+ \let\LT@startpbox \tabu@LT@startpbox % \everypar{ array struts }
+ \tabu@spreadfalse \tabu@negcoeffalse \tabu@settarget
+}% {longtabu}
+\expandafter\def\csname longtabu*\endcsname{\tabuscantokenstrue \longtabu}
+\def\tabu@nolongtabu{\PackageError{tabu}
+ {longtabu requires the longtable package}\@ehd}
+%% Read the target and then : \tabular or \@array ------------------
+\def\tabu@settarget {\futurelet\@let@token \tabu@sett@rget }
+\def\tabu@sett@rget {\tabu@target \z@
+ \ifcase \ifx \bgroup\@let@token \z@ \else
+ \ifx \@sptoken\@let@token \@ne \else
+ \if t\@let@token \tw@ \else
+ \if s\@let@token \thr@@\else
+ \z@\fi\fi\fi\fi
+ \expandafter\tabu@begin
+ \or \expandafter\tabu@gobblespace\expandafter\tabu@settarget
+ \or \expandafter\tabu@to
+ \or \expandafter\tabu@spread
+ \fi
+}% \tabu@sett@rget
+\def\tabu@to to{\def\tabu@halignto{to}\tabu@gettarget}
+\def\tabu@spread spread{\tabu@spreadtrue\def\tabu@halignto{spread}\tabu@gettarget}
+\def\tabu@gettarget {\afterassignment\tabu@linegoaltarget \tabu@target }
+\def\tabu@linegoaltarget {\futurelet\tabu@temp \tabu@linegoalt@rget }
+\def\tabu@linegoalt@rget {%
+ \ifx \tabu@temp\LNGL@setlinegoal
+ \LNGL@setlinegoal \expandafter \@firstoftwo \fi % @gobbles \LNGL@setlinegoal
+ \tabu@begin
+}% \tabu@linegoalt@rget
+\def\tabu@begin #1#{%
+ \iftabu@measuring \expandafter\tabu@nestedmeasure \fi
+ \ifdim \tabu@target=\z@ \let\tabu@halignto \@empty
+ \else \edef\tabu@halignto{\tabu@halignto\the\tabu@target}%
+ \fi
+ \@testopt \tabu@tabu@ \tabu@aligndefault #1\@nil
+}% \tabu@begin
+\long\def\tabu@tabu@ [#1]#2\@nil #3{\tabu@setup
+ \def\tabu@align {#1}\def\tabu@savedpream{\NC@find #3}%
+ \tabu@ [\tabu@align ]#2{#3\tabu@rewritefirst }%
+}% \tabu@tabu@
+\def\tabu@nestedmeasure {%
+ \ifodd 1\iftabu@spread \else \ifdim\tabu@target=\z@ \else 0 \fi\fi\relax
+ \tabu@spreadtrue
+ \else \begingroup \iffalse{\fi \ifnum0=`}\fi
+ \toks@{}\def\tabu@stack{b}%
+ \expandafter\tabu@collectbody\expandafter\tabu@quickrule
+ \expandafter\endgroup
+ \fi
+}% \tabu@nestedmeasure
+\def\tabu@quickrule {\indent\vrule height\z@ depth\z@ width\tabu@target}
+%% \tabu@setup \tabu@init \tabu@indent
+\def\tabu@setup{\tabu@alloc@
+ \ifcase \tabu@nested
+ \ifmmode \else \iftabu@spread\else \ifdim\tabu@target=\z@
+ \let\tabu@afterendpar \par
+ \fi\fi\fi
+ \def\tabu@aligndefault{c}\tabu@init \tabu@indent
+ \else %
+ \def\tabu@aligndefault{t}\let\tabudefaulttarget \linewidth
+ \fi
+ \let\tabu@thetarget \tabudefaulttarget \let\tabu@restored \@undefined
+ \edef\tabu@NC@list{\the\NC@list}\NC@list{\NC@do \tabu@rewritefirst}%
+ \everycr{}\let\@startpbox \tabu@startpbox % for nested tabu inside longtabu...
+ \let\@endpbox \tabu@endpbox % idem " " " " " "
+ \let\@tabarray \tabu@tabarray % idem " " " " " "
+ \tabu@setcleanup \tabu@setreset
+}% \tabu@setup
+\def\tabu@init{\tabu@starttimer \tabu@measuringfalse
+ \edef\tabu@hfuzz {\the\dimexpr\hfuzz+1sp}\global\tabu@footnotes{}%
+ \let\firsthline \tabu@firsthline \let\lasthline \tabu@lasthline
+ \let\firstline \tabu@firstline \let\lastline \tabu@lastline
+ \let\hline \tabu@hline \let\@xhline \tabu@xhline
+ \let\color \tabu@color \let\@arstrutbox \tabu@arstrutbox
+ \iftabu@colortbl\else\let\LT@@hline \tabu@LT@@hline \fi
+ \tabu@trivlist %
+ \let\@footnotetext \tabu@footnotetext \let\@xfootnotetext \tabu@xfootnotetext
+ \let\@xfootnote \tabu@xfootnote \let\centering \tabu@centering
+ \let\raggedright \tabu@raggedright \let\raggedleft \tabu@raggedleft
+ \let\tabudecimal \tabu@tabudecimal \let\Centering \tabu@Centering
+ \let\RaggedRight \tabu@RaggedRight \let\RaggedLeft \tabu@RaggedLeft
+ \let\justifying \tabu@justifying \let\rowfont \tabu@rowfont
+ \let\fbox \tabu@fbox \let\color@b@x \tabu@color@b@x
+ \let\tabu@@everycr \everycr \let\tabu@@everypar \everypar
+ \let\tabu@prepnext@tokORI \prepnext@tok\let\prepnext@tok \tabu@prepnext@tok
+ \let\tabu@multicolumnORI\multicolumn \let\multicolumn \tabu@multicolumn
+ \let\tabu@startpbox \@startpbox % for nested tabu inside longtabu pfff !!!
+ \let\tabu@endpbox \@endpbox % idem " " " " " " "
+ \let\tabu@tabarray \@tabarray % idem " " " " " " "
+ \tabu@adl@fix \let\endarray \tabu@endarray % colortbl & arydshln (delarray)
+ \iftabu@colortbl\CT@everycr\expandafter{\expandafter\iftabu@everyrow \the\CT@everycr \fi}\fi
+}% \tabu@init
+\def\tabu@indent{% correction for indentation
+ \ifdim \parindent>\z@\ifx \linewidth\tabudefaulttarget
+ \everypar\expandafter{%
+ \the\everypar\everypar\expandafter{\the\everypar}%
+ \setbox\z@=\lastbox
+ \ifdim\wd\z@>\z@ \edef\tabu@thetarget
+ {\the\dimexpr -\wd\z@+\tabudefaulttarget}\fi
+ \box\z@}%
+ \fi\fi
+}% \tabu@indent
+\def\tabu@setcleanup {% saves last global assignments
+ \ifodd 1\ifmmode \else \iftabu@long \else 0\fi\fi\relax
+ \def\tabu@aftergroupcleanup{%
+ \def\tabu@aftergroupcleanup{\aftergroup\tabu@cleanup}}%
+ \else
+ \def\tabu@aftergroupcleanup{%
+ \aftergroup\aftergroup\aftergroup\tabu@cleanup
+ \let\tabu@aftergroupcleanup \relax}%
+ \fi
+ \let\tabu@arc@Gsave \tabu@arc@G
+ \let\tabu@arc@G \tabu@arc@L %
+ \let\tabu@drsc@Gsave \tabu@drsc@G
+ \let\tabu@drsc@G \tabu@drsc@L %
+ \let\tabu@ls@Gsave \tabu@ls@G
+ \let\tabu@ls@G \tabu@ls@L %
+ \let\tabu@rc@Gsave \tabu@rc@G
+ \let\tabu@rc@G \tabu@rc@L %
+ \let\tabu@evr@Gsave \tabu@evr@G
+ \let\tabu@evr@G \tabu@evr@L %
+ \let\tabu@celllalign@save \tabu@celllalign
+ \let\tabu@cellralign@save \tabu@cellralign
+ \let\tabu@cellleft@save \tabu@cellleft
+ \let\tabu@cellright@save \tabu@cellright
+ \let\tabu@@celllalign@save \tabu@@celllalign
+ \let\tabu@@cellralign@save \tabu@@cellralign
+ \let\tabu@@cellleft@save \tabu@@cellleft
+ \let\tabu@@cellright@save \tabu@@cellright
+ \let\tabu@rowfontreset@save \tabu@rowfontreset
+ \let\tabu@@rowfontreset@save\tabu@@rowfontreset
+ \let\tabu@rowfontreset \@empty
+ \edef\tabu@alloc@save {\the\tabu@alloc}% restore at \tabu@reset
+ \edef\c@taburow@save {\the\c@taburow}%
+ \edef\tabu@naturalX@save {\the\tabu@naturalX}%
+ \let\tabu@naturalXmin@save \tabu@naturalXmin
+ \let\tabu@naturalXmax@save \tabu@naturalXmax
+ \let\tabu@mkarstrut@save \tabu@mkarstrut
+ \edef\tabu@clarstrut{%
+ \extrarowheight \the\dimexpr \ht\@arstrutbox-\ht\strutbox \relax
+ \extrarowdepth \the\dimexpr \dp\@arstrutbox-\dp\strutbox \relax
+ \let\noexpand\@arraystretch \@ne \noexpand\tabu@rearstrut}%
+}% \tabu@setcleanup
+\def\tabu@cleanup {\begingroup
+ \globaldefs\@ne \tabu@everyrowtrue
+ \let\tabu@arc@G \tabu@arc@Gsave
+ \let\CT@arc@ \tabu@arc@G
+ \let\tabu@drsc@G \tabu@drsc@Gsave
+ \let\CT@drsc@ \tabu@drsc@G
+ \let\tabu@ls@G \tabu@ls@Gsave
+ \let\tabu@ls@ \tabu@ls@G
+ \let\tabu@rc@G \tabu@rc@Gsave
+ \let\tabu@rc@ \tabu@rc@G
+ \let\CT@do@color \relax
+ \let\tabu@evr@G \tabu@evr@Gsave
+ \let\tabu@celllalign \tabu@celllalign@save
+ \let\tabu@cellralign \tabu@cellralign@save
+ \let\tabu@cellleft \tabu@cellleft@save
+ \let\tabu@cellright \tabu@cellright@save
+ \let\tabu@@celllalign \tabu@@celllalign@save
+ \let\tabu@@cellralign \tabu@@cellralign@save
+ \let\tabu@@cellleft \tabu@@cellleft@save
+ \let\tabu@@cellright \tabu@@cellright@save
+ \let\tabu@rowfontreset \tabu@rowfontreset@save
+ \let\tabu@@rowfontreset \tabu@@rowfontreset@save
+ \tabu@naturalX =\tabu@naturalX@save
+ \let\tabu@naturalXmax \tabu@naturalXmax@save
+ \let\tabu@naturalXmin \tabu@naturalXmin@save
+ \let\tabu@mkarstrut \tabu@mkarstrut@save
+ \c@taburow =\c@taburow@save
+ \ifcase \tabu@nested \tabu@alloc \m@ne\fi
+ \endgroup %
+ \ifcase \tabu@nested
+ \the\tabu@footnotes \global\tabu@footnotes{}%
+ \tabu@afterendpar \tabu@elapsedtime
+ \fi
+ \tabu@clarstrut
+ \everyrow\expandafter {\tabu@evr@G}%
+}% \tabu@cleanup
+\let\tabu@afterendpar \relax
+\def\tabu@setreset {%
+ \edef\tabu@savedparams {% \relax for \tabu@message@save
+ \ifmmode \col@sep \the\arraycolsep
+ \else \col@sep \the\tabcolsep \fi \relax
+ \arrayrulewidth \the\arrayrulewidth \relax
+ \doublerulesep \the\doublerulesep \relax
+ \extratabsurround \the\extratabsurround \relax
+ \extrarowheight \the\extrarowheight \relax
+ \extrarowdepth \the\extrarowdepth \relax
+ \abovetabulinesep \the\abovetabulinesep \relax
+ \belowtabulinesep \the\belowtabulinesep \relax
+ \def\noexpand\arraystretch{\arraystretch}%
+ \ifdefined\minrowclearance \minrowclearance\the\minrowclearance\relax\fi}%
+ \begingroup
+ \@temptokena\expandafter{\tabu@savedparams}% => only for \savetabu / \usetabu
+ \ifx \tabu@arc@L\relax \else \tabu@setsave \tabu@arc@L \fi
+ \ifx \tabu@drsc@L\relax \else \tabu@setsave \tabu@drsc@L \fi
+ \tabu@setsave \tabu@ls@L \tabu@setsave \tabu@evr@L
+ \expandafter \endgroup \expandafter
+ \def\expandafter\tabu@saved@ \expandafter{\the\@temptokena
+ \let\tabu@arc@G \tabu@arc@L
+ \let\tabu@drsc@G \tabu@drsc@L
+ \let\tabu@ls@G \tabu@ls@L
+ \let\tabu@rc@G \tabu@rc@L
+ \let\tabu@evr@G \tabu@evr@L}%
+ \def\tabu@reset{\tabu@savedparams
+ \tabu@everyrowtrue \c@taburow \z@
+ \let\CT@arc@ \tabu@arc@L
+ \let\CT@drsc@ \tabu@drsc@L
+ \let\tabu@ls@ \tabu@ls@L
+ \let\tabu@rc@ \tabu@rc@L
+ \global\tabu@alloc \tabu@alloc@save
+ \everyrow\expandafter{\tabu@evr@L}}%
+}% \tabu@reset
+\def\tabu@setsave #1{\expandafter\tabu@sets@ve #1\@nil{#1}}
+\long\def\tabu@sets@ve #1\@nil #2{\@temptokena\expandafter{\the\@temptokena \def#2{#1}}}
+%% The Rewriting Process -------------------------------------------
+\def\tabu@newcolumntype #1{%
+ \expandafter\tabu@new@columntype
+ \csname NC@find@\string#1\expandafter\endcsname
+ \csname NC@rewrite@\string#1\endcsname
+ {#1}%
+}% \tabu@newcolumntype
+\def\tabu@new@columntype #1#2#3{%
+ \def#1##1#3{\NC@{##1}}%
+ \let#2\relax \newcommand*#2%
+}% \tabu@new@columntype
+\def\tabu@privatecolumntype #1{%
+ \expandafter\tabu@private@columntype
+ \csname NC@find@\string#1\expandafter\endcsname
+ \csname NC@rewrite@\string#1\expandafter\endcsname
+ \csname tabu@NC@find@\string#1\expandafter\endcsname
+ \csname tabu@NC@rewrite@\string#1\endcsname
+ {#1}%
+}% \tabu@privatecolumntype
+\def\tabu@private@columntype#1#2#3#4{%
+ \g@addto@macro\tabu@privatecolumns{\let#1#3\let#2#4}%
+ \tabu@new@columntype#3#4%
+}% \tabu@private@columntype
+\let\tabu@privatecolumns \@empty
+\newcommand*\tabucolumn [1]{\expandafter \def \expandafter
+ \tabu@highprioritycolumns\expandafter{\tabu@highprioritycolumns
+ \NC@do #1}}%
+\let\tabu@highprioritycolumns \@empty
+%% The | ``column'' : rewriting process --------------------------
+\tabu@privatecolumntype |{\tabu@rewritevline}
+\newcommand*\tabu@rewritevline[1][]{\tabu@vlinearg{#1}%
+ \expandafter \NC@find \tabu@rewritten}
+\def\tabu@lines #1{%
+ \ifx|#1\else \tabu@privatecolumntype #1{\tabu@rewritevline}\fi
+ \NC@list\expandafter{\the\NC@list \NC@do #1}%
+}% \tabu@lines@
+\def\tabu@vlinearg #1{%
+ \ifx\\#1\\\def\tabu@thestyle {\tabu@ls@}%
+ \else\tabu@getline {#1}%
+ \fi
+ \def\tabu@rewritten ##1{\def\tabu@rewritten{!{##1\tabu@thevline}}%
+ }\expandafter\tabu@rewritten\expandafter{\tabu@thestyle}%
+ \expandafter \tabu@keepls \tabu@thestyle \@nil
+}% \tabu@vlinearg
+\def\tabu@keepls #1\@nil{%
+ \ifcat $\@cdr #1\@nil $%
+ \ifx \relax#1\else
+ \ifx \tabu@ls@#1\else
+ \let#1\relax
+ \xdef\tabu@mkpreambuffer{\tabu@mkpreambuffer
+ \tabu@savels\noexpand#1}\fi\fi\fi
+}% \tabu@keepls
+\def\tabu@thevline {\begingroup
+ \ifdefined\tabu@leaders
+ \setbox\@tempboxa=\vtop to\dimexpr
+ \ht\@arstrutbox+\dp\@arstrutbox{{\tabu@thevleaders}}%
+ \ht\@tempboxa=\ht\@arstrutbox \dp\@tempboxa=\dp\@arstrutbox
+ \box\@tempboxa
+ \else
+ \tabu@thevrule
+ \fi \endgroup
+}% \tabu@thevline
+\def\tabu@savels #1{%
+ \expandafter\let\csname\string#1\endcsname #1%
+ \expandafter\def\expandafter\tabu@reset\expandafter{\tabu@reset
+ \tabu@resetls#1}}%
+\def\tabu@resetls #1{\expandafter\let\expandafter#1\csname\string#1\endcsname}%
+%% \multicolumn inside tabu environment -----------------------------
+\tabu@newcolumntype \tabu@rewritemulticolumn{%
+ \aftergroup \tabu@endrewritemulticolumn % after \@mkpream group
+ \NC@list{\NC@do *}\tabu@textbar \tabu@lines
+ \tabu@savedecl
+ \tabu@privatecolumns
+ \NC@list\expandafter{\the\expandafter\NC@list \tabu@NC@list}%
+ \let\tabu@savels \relax
+ \NC@find
+}% \tabu@rewritemulticolumn
+\def\tabu@endrewritemulticolumn{\gdef\tabu@mkpreambuffer{}\endgroup}
+\def\tabu@multicolumn{\tabu@ifenvir \tabu@multic@lumn \tabu@multicolumnORI}
+\long\def\tabu@multic@lumn #1#2#3{\multispan{#1}\begingroup
+ \tabu@everyrowtrue
+ \NC@list{\NC@do \tabu@rewritemulticolumn}%
+ \expandafter\@gobbletwo % gobbles \multispan{#1}
+ \tabu@multicolumnORI{#1}{\tabu@rewritemulticolumn #2}%
+ {\iftabuscantokens \tabu@rescan \else \expandafter\@firstofone \fi
+ {#3}}%
+}% \tabu@multic@lumn
+%% The X column(s): rewriting process -----------------------------
+\tabu@privatecolumntype X[1][]{\begingroup \tabu@siunitx{\endgroup \tabu@rewriteX {#1}}}
+\def\tabu@nosiunitx #1{#1{}{}\expandafter \NC@find \tabu@rewritten }
+\def\tabu@siunitx #1{\@ifnextchar \bgroup
+ {\tabu@rewriteX@Ss{#1}}
+ {\tabu@nosiunitx{#1}}}
+\def\tabu@rewriteX@Ss #1#2{\@temptokena{}%
+ \@defaultunits \let\tabu@temp =#2\relax\@nnil
+ \ifodd 1\ifx S\tabu@temp \else \ifx s\tabu@temp \else 0 \fi\fi
+ \def\NC@find{\def\NC@find >####1####2<####3\relax{#1 {####1}{####3}%
+ }\expandafter\NC@find \the\@temptokena \relax
+ }\expandafter\NC@rewrite@S \@gobble #2\relax
+ \else \tabu@siunitxerror
+ \fi
+ \expandafter \NC@find \tabu@rewritten
+}% \tabu@rewriteX@Ss
+\def\tabu@siunitxerror {\PackageError{tabu}{Not a S nor s column !
+ \MessageBreak X column can only embed siunitx S or s columns}\@ehd
+}% \tabu@siunitxerror
+\def\tabu@rewriteX #1#2#3{\tabu@Xarg {#1}{#2}{#3}%
+ \iftabu@measuring
+ \else \tabu@measuringtrue % first X column found in the preamble
+ \let\@halignto \relax \let\tabu@halignto \relax
+ \iftabu@spread \tabu@spreadtarget \tabu@target \tabu@target \z@
+ \else \tabu@spreadtarget \z@ \fi
+ \ifdim \tabu@target=\z@
+ \setlength\tabu@target \tabu@thetarget
+ \tabu@message{\tabu@message@defaulttarget}%
+ \else \tabu@message{\tabu@message@target}\fi
+ \fi
+}% \tabu@rewriteX
+\def\tabu@rewriteXrestore #1#2#3{\let\@halignto \relax
+ \def\tabu@rewritten{l}}
+\def\tabu@Xarg #1#2#3{%
+ \advance\tabu@Xcol \@ne \let\tabu@Xlcr \@empty
+ \let\tabu@Xdisp \@empty \let\tabu@Xmath \@empty
+ \ifx\\#1\\%
+ \def\tabu@rewritten{p}\tabucolX \p@ %
+ \else
+ \let\tabu@rewritten \@empty \let\tabu@temp \@empty \tabucolX \z@
+ \tabu@Xparse {}#1\relax
+ \fi
+ \tabu@Xrewritten{#2}{#3}%
+}% \tabu@Xarg
+\def\tabu@Xparse #1{\futurelet\@let@token \tabu@Xtest}
+\expandafter\def\expandafter\tabu@Xparsespace\space{\tabu@Xparse{}}
+\def\tabu@Xtest{%
+ \ifcase \ifx \relax\@let@token \z@ \else
+ \if ,\@let@token \m@ne\else
+ \if p\@let@token 1\else
+ \if m\@let@token 2\else
+ \if b\@let@token 3\else
+ \if l\@let@token 4\else
+ \if c\@let@token 5\else
+ \if r\@let@token 6\else
+ \if j\@let@token 7\else
+ \if L\@let@token 8\else
+ \if C\@let@token 9\else
+ \if R\@let@token 10\else
+ \if J\@let@token 11\else
+ \ifx \@sptoken\@let@token 12\else
+ \if .\@let@token 13\else
+ \if -\@let@token 13\else
+ \ifcat $\@let@token 14\else
+ 15\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\relax
+ \or \tabu@Xtype {p}%
+ \or \tabu@Xtype {m}%
+ \or \tabu@Xtype {b}%
+ \or \tabu@Xalign \raggedright\relax
+ \or \tabu@Xalign \centering\relax
+ \or \tabu@Xalign \raggedleft\relax
+ \or \tabu@Xalign \tabu@justify\relax
+ \or \tabu@Xalign \RaggedRight\raggedright
+ \or \tabu@Xalign \Centering\centering
+ \or \tabu@Xalign \RaggedLeft\raggedleft
+ \or \tabu@Xalign \justifying\tabu@justify
+ \or \expandafter \tabu@Xparsespace
+ \or \expandafter \tabu@Xcoef
+ \or \expandafter \tabu@Xm@th
+ \or \tabu@Xcoef{}%
+ \else\expandafter \tabu@Xparse
+ \fi
+}% \tabu@Xtest
+\def\tabu@Xalign #1#2{%
+ \ifx \tabu@Xlcr\@empty \else \PackageWarning{tabu}
+ {Duplicate horizontal alignment specification}\fi
+ \ifdefined#1\def\tabu@Xlcr{#1}\let#1\relax
+ \else \def\tabu@Xlcr{#2}\let#2\relax\fi
+ \expandafter\tabu@Xparse
+}% \tabu@Xalign
+\def\tabu@Xtype #1{%
+ \ifx \tabu@rewritten\@empty \else \PackageWarning{tabu}
+ {Duplicate vertical alignment specification}\fi
+ \def\tabu@rewritten{#1}\expandafter\tabu@Xparse
+}% \tabu@Xtype
+\def\tabu@Xcoef#1{\edef\tabu@temp{\tabu@temp#1}%
+ \afterassignment\tabu@Xc@ef \tabu@cnt\number\if-#10\fi
+}% \tabu@Xcoef
+\def\tabu@Xc@ef{\advance\tabucolX \tabu@temp\the\tabu@cnt\p@
+ \tabu@Xparse{}%
+}% \tabu@Xc@ef
+\def\tabu@Xm@th #1{\futurelet \@let@token \tabu@Xd@sp}
+\def\tabu@Xd@sp{\let\tabu@Xmath=$%
+ \ifx $\@let@token \def\tabu@Xdisp{\displaystyle}%
+ \expandafter\tabu@Xparse
+ \else \expandafter\tabu@Xparse\expandafter{\expandafter}%
+ \fi
+}% \tabu@Xd@sp
+\def\tabu@Xrewritten {%
+ \ifx \tabu@rewritten\@empty \def\tabu@rewritten{p}\fi
+ \ifdim \tabucolX<\z@ \tabu@negcoeftrue
+ \else\ifdim \tabucolX=\z@ \tabucolX \p@
+ \fi\fi
+ \edef\tabu@temp{{\the\tabu@Xcol}{\tabu@strippt\tabucolX}}%
+ \edef\tabu@Xcoefs{\tabu@Xcoefs \tabu@ \tabu@temp}%
+ \edef\tabu@rewritten ##1##2{\def\noexpand\tabu@rewritten{%
+ >{\tabu@Xlcr \ifx$\tabu@Xmath$\tabu@Xdisp\fi ##1}%
+ \tabu@rewritten {\tabu@hsize \tabu@temp}%
+ <{##2\ifx$\tabu@Xmath$\fi}}%
+ }\tabu@rewritten
+}% \tabu@Xrewritten
+\def\tabu@hsize #1#2{%
+ \ifdim #2\p@<\z@
+ \ifdim \tabucolX=\maxdimen \tabu@wd{#1}\else
+ \ifdim \tabu@wd{#1}<-#2\tabucolX \tabu@wd{#1}\else -#2\tabucolX\fi
+ \fi
+ \else #2\tabucolX
+ \fi
+}% \tabu@hsize
+%% \usetabu and \preamble: rewriting process ---------------------
+\tabu@privatecolumntype \usetabu [1]{%
+ \ifx\\#1\\\tabu@saveerr{}\else
+ \@ifundefined{tabu@saved@\string#1}
+ {\tabu@saveerr{#1}}
+ {\let\tabu@rewriteX \tabu@rewriteXrestore
+ \csname tabu@saved@\string#1\expandafter\endcsname\expandafter\@ne}%
+ \fi
+}% \NC@rewrite@\usetabu
+\tabu@privatecolumntype \preamble [1]{%
+ \ifx\\#1\\\tabu@saveerr{}\else
+ \@ifundefined{tabu@saved@\string#1}
+ {\tabu@saveerr{#1}}
+ {\csname tabu@saved@\string#1\expandafter\endcsname\expandafter\z@}%
+ \fi
+}% \NC@rewrite@\preamble
+%% Controlling the rewriting process -------------------------------
+\tabu@newcolumntype \tabu@rewritefirst{%
+ \iftabu@long \aftergroup \tabu@longpream %
+ \else \aftergroup \tabu@pream
+ \fi
+ \let\tabu@ \relax \let\tabu@hsize \relax
+ \let\tabu@Xcoefs \@empty \let\tabu@savels \relax
+ \tabu@Xcol \z@ \tabu@cnt \tw@
+ \gdef\tabu@mkpreambuffer{\tabu@{}}\tabu@measuringfalse
+ \global\setbox\@arstrutbox \box\@arstrutbox
+ \NC@list{\NC@do *}\tabu@textbar \tabu@lines
+ \NC@list\expandafter{\the\NC@list \NC@do X}%
+ \iftabu@siunitx %
+ \NC@list\expandafter{\the\NC@list \NC@do S\NC@do s}\fi
+ \NC@list\expandafter{\the\expandafter\NC@list \tabu@highprioritycolumns}%
+ \expandafter\def\expandafter\tabu@NC@list\expandafter{%
+ \the\expandafter\NC@list \tabu@NC@list}% % * | X S
+ \NC@list\expandafter{\expandafter \NC@do \expandafter\usetabu
+ \expandafter \NC@do \expandafter\preamble
+ \the\NC@list \NC@do \tabu@rewritemiddle
+ \NC@do \tabu@rewritelast}%
+ \tabu@savedecl
+ \tabu@privatecolumns
+ \edef\tabu@prev{\the\@temptokena}\NC@find \tabu@rewritemiddle
+}% NC@rewrite@\tabu@rewritefirst
+\tabu@newcolumntype \tabu@rewritemiddle{%
+ \edef\tabu@temp{\the\@temptokena}\NC@find \tabu@rewritelast
+}% \NC@rewrite@\tabu@rewritemiddle
+\tabu@newcolumntype \tabu@rewritelast{%
+ \ifx \tabu@temp\tabu@prev \advance\tabu@cnt \m@ne
+ \NC@list\expandafter{\tabu@NC@list \NC@do \tabu@rewritemiddle
+ \NC@do \tabu@rewritelast}%
+ \else \let\tabu@prev\tabu@temp
+ \fi
+ \ifcase \tabu@cnt \expandafter\tabu@endrewrite
+ \else \expandafter\NC@find \expandafter\tabu@rewritemiddle
+ \fi
+}% \NC@rewrite@\tabu@rewritelast
+%% Choosing the strategy --------------------------------------------
+\def\tabu@endrewrite {%
+ \let\tabu@temp \NC@find
+ \ifx \@arrayright\relax \let\@arrayright \@empty \fi
+ \count@=%
+ \ifx \@finalstrut\tabu@finalstrut \z@ % outer in mode 0 print
+ \iftabu@measuring
+ \xdef\tabu@mkpreambuffer{\tabu@mkpreambuffer
+ \tabu@target \csname tabu@\the\tabu@nested.T\endcsname
+ \tabucolX \csname tabu@\the\tabu@nested.X\endcsname
+ \edef\@halignto {\ifx\@arrayright\@empty to\tabu@target\fi}}%
+ \fi
+ \else\iftabu@measuring 4 % X columns
+ \xdef\tabu@mkpreambuffer{\tabu@{\tabu@mkpreambuffer
+ \tabu@target \the\tabu@target
+ \tabu@spreadtarget \the\tabu@spreadtarget}%
+ \def\noexpand\tabu@Xcoefs{\tabu@Xcoefs}%
+ \edef\tabu@halignto{\ifx \@arrayright\@empty to\tabu@target\fi}}%
+ \let\tabu@Xcoefs \relax
+ \else\ifcase\tabu@nested \thr@@ % outer, no X
+ \global\let\tabu@afterendpar \relax
+ \else \@ne % inner, no X, outer in mode 1 or 2
+ \fi
+ \ifdefined\tabu@usetabu
+ \else \ifdim\tabu@target=\z@
+ \else \let\tabu@temp \tabu@extracolsep
+ \fi\fi
+ \fi
+ \fi
+ \xdef\tabu@mkpreambuffer{\count@ \the\count@ \tabu@mkpreambuffer}%
+ \tabu@temp
+}% \tabu@endrewrite
+\def\tabu@extracolsep{\@defaultunits \expandafter\let
+ \expandafter\tabu@temp \expandafter=\the\@temptokena \relax\@nnil
+ \ifx \tabu@temp\@sptoken
+ \expandafter\tabu@gobblespace \expandafter\tabu@extracolsep
+ \else
+ \edef\tabu@temp{\noexpand\NC@find
+ \if |\noexpand\tabu@temp @%
+ \else\if !\noexpand\tabu@temp @%
+ \else !%
+ \fi\fi
+ {\noexpand\extracolsep\noexpand\@flushglue}}%
+ \fi
+ \tabu@temp
+}% \tabu@extrac@lsep
+%% Implementing the strategy ----------------------------------------
+\long\def\tabu@pream #1\@preamble {%
+ \let\tabu@ \tabu@@ \tabu@mkpreambuffer \tabu@aftergroupcleanup
+ \NC@list\expandafter {\tabu@NC@list}% in case of nesting...
+ \ifdefined\tabu@usetabu \tabu@usetabu \tabu@target \z@ \fi
+ \let\tabu@savedpreamble \@preamble
+ \global\let\tabu@elapsedtime \relax
+ \tabu@thebody ={#1\tabu@aftergroupcleanup}%
+ \tabu@thebody =\expandafter{\the\expandafter\tabu@thebody
+ \@preamble}%
+ \edef\tabuthepreamble {\the\tabu@thebody}% ( no @ allowed for \scantokens )
+ \tabu@select
+}% \tabu@pream
+\long\def\tabu@longpream #1\LT@bchunk #2\LT@bchunk{%
+ \let\tabu@ \tabu@@ \tabu@mkpreambuffer \tabu@aftergroupcleanup
+ \NC@list\expandafter {\tabu@NC@list}% in case of nesting...
+ \let\tabu@savedpreamble \@preamble
+ \global\let\tabu@elapsedtime \relax
+ \tabu@thebody ={#1\LT@bchunk #2\tabu@aftergroupcleanup \LT@bchunk}%
+ \edef\tabuthepreamble {\the\tabu@thebody}% ( no @ allowed for \scantokens )
+ \tabu@select
+}% \tabu@longpream
+\def\tabu@select {%
+ \ifnum\tabu@nested>\z@ \tabuscantokensfalse \fi
+ \ifnum \count@=\@ne \iftabu@measuring \count@=\tw@ \fi\fi
+ \ifcase \count@
+ \global\let\tabu@elapsedtime \relax
+ \tabu@seteverycr
+ \expandafter \tabuthepreamble % vertical adjustment (inherited from outer)
+ \or % exit in vertical measure + struts per cell because no X and outer in mode 3
+ \tabu@evr{\tabu@verticalinit}\tabu@celllalign@def{\tabu@verticalmeasure}%
+ \def\tabu@cellralign{\tabu@verticalspacing}%
+ \tabu@seteverycr
+ \expandafter \tabuthepreamble
+ \or % exit without measure because no X and outer in mode 4
+ \tabu@evr{}\tabu@celllalign@def{}\let\tabu@cellralign \@empty
+ \tabu@seteverycr
+ \expandafter \tabuthepreamble
+ \else % needs trials
+ \tabu@evr{}\tabu@celllalign@def{}\let\tabu@cellralign \@empty
+ \tabu@savecounters
+ \expandafter \tabu@setstrategy
+ \fi
+}% \tabu@select
+\def\tabu@@ {\gdef\tabu@mkpreambuffer}
+%% Protections to set up before trials ------------------------------
+\def\tabu@setstrategy {\begingroup %
+ \tabu@trialh@@k \tabu@cnt \z@ % number of trials
+ \hbadness \@M \let\hbadness \@tempcnta
+ \hfuzz \maxdimen \let\hfuzz \@tempdima
+ \let\write \tabu@nowrite\let\GenericError \tabu@GenericError
+ \let\savetabu \@gobble \let\tabudefaulttarget \linewidth
+ \let\@footnotetext \@gobble \let\@xfootnote \tabu@xfootnote
+ \let\color \tabu@nocolor\let\rowcolor \tabu@norowcolor
+ \let\tabu@aftergroupcleanup \relax % only after the last trial
+ \tabu@mkpreambuffer
+ \ifnum \count@>\thr@@ \let\@halignto \@empty \tabucolX@init
+ \def\tabu@lasttry{\m@ne\p@}\fi
+ \begingroup \iffalse{\fi \ifnum0=`}\fi
+ \toks@{}\def\tabu@stack{b}\iftabuscantokens \endlinechar=10 \obeyspaces \fi %
+ \tabu@collectbody \tabu@strategy %
+}% \tabu@setstrategy
+\def\tabu@savecounters{%
+ \def\@elt ##1{\csname c@##1\endcsname\the\csname c@##1\endcsname}%
+ \edef\tabu@clckpt {\begingroup \globaldefs=\@ne \cl@@ckpt \endgroup}\let\@elt \relax
+}% \tabu@savecounters
+\def\tabucolX@init {% \tabucolX <= \tabu@target / (sum coefs > 0)
+ \dimen@ \z@ \tabu@Xsum \z@ \tabucolX \z@ \let\tabu@ \tabu@Xinit \tabu@Xcoefs
+ \ifdim \dimen@>\z@
+ \@tempdima \dimexpr \tabu@target *\p@/\dimen@ + \tabu@hfuzz\relax
+ \ifdim \tabucolX<\@tempdima \tabucolX \@tempdima \fi
+ \fi
+}% \tabucolX@init
+\def\tabu@Xinit #1#2{\tabu@Xcol #1 \advance \tabu@Xsum
+ \ifdim #2\p@>\z@ #2\p@ \advance\dimen@ #2\p@
+ \else -#2\p@ \tabu@negcoeftrue
+ \@tempdima \dimexpr \tabu@target*\p@/\dimexpr-#2\p@\relax \relax
+ \ifdim \tabucolX<\@tempdima \tabucolX \@tempdima \fi
+ \tabu@wddef{#1}{0pt}%
+ \fi
+}% \tabu@Xinit
+%% Collecting the environment body ----------------------------------
+\long\def\tabu@collectbody #1#2\end #3{%
+ \edef\tabu@stack{\tabu@pushbegins #2\begin\end\expandafter\@gobble\tabu@stack}%
+ \ifx \tabu@stack\@empty
+ \toks@\expandafter{\expandafter\tabu@thebody\expandafter{\the\toks@ #2}%
+ \def\tabu@end@envir{\end{#3}}%
+ \iftabuscantokens
+ \iftabu@long \def\tabu@endenvir {\end{#3}\tabu@gobbleX}%
+ \else \def\tabu@endenvir {\let\endarray \@empty
+ \end{#3}\tabu@gobbleX}%
+ \fi
+ \else \def\tabu@endenvir {\end{#3}}\fi}%
+ \let\tabu@collectbody \tabu@endofcollect
+ \else\def\tabu@temp{#3}%
+ \ifx \tabu@temp\@empty \toks@\expandafter{\the\toks@ #2\end }%
+ \else \ifx\tabu@temp\tabu@@spxiii \toks@\expandafter{\the\toks@ #2\end #3}%
+ \else \ifx\tabu@temp\tabu@X \toks@\expandafter{\the\toks@ #2\end #3}%
+ \else \toks@\expandafter{\the\toks@ #2\end{#3}}%
+ \fi\fi\fi
+ \fi
+ \tabu@collectbody{#1}%
+}% \tabu@collectbody
+\long\def\tabu@pushbegins#1\begin#2{\ifx\end#2\else b\expandafter\tabu@pushbegins\fi}%
+\def\tabu@endofcollect #1{\ifnum0=`{}\fi
+ \expandafter\endgroup \the\toks@ #1%
+}% \tabu@endofcollect
+%% The trials: switching between strategies -------------------------
+\def\tabu@strategy {\relax % stops \count@ assignment !
+ \ifcase\count@ % case 0 = print with vertical adjustment (outer is finished)
+ \expandafter \tabu@endoftrials
+ \or % case 1 = exit in vertical measure (outer in mode 3)
+ \expandafter\xdef\csname tabu@\the\tabu@nested.T\endcsname{\the\tabu@target}%
+ \expandafter\xdef\csname tabu@\the\tabu@nested.X\endcsname{\the\tabucolX}%
+ \expandafter \tabu@endoftrials
+ \or % case 2 = exit with a rule replacing the table (outer in mode 4)
+ \expandafter \tabu@quickend
+ \or % case 3 = outer is in mode 3 because of no X
+ \begingroup
+ \tabu@evr{\tabu@verticalinit}\tabu@celllalign@def{\tabu@verticalmeasure}%
+ \def\tabu@cellralign{\tabu@verticalspacing}%
+ \expandafter \tabu@measuring
+ \else % case 4 = horizontal measure
+ \begingroup
+ \global\let\tabu@elapsedtime \tabu@message@etime
+ \long\def\multicolumn##1##2##3{\multispan{##1}}%
+ \let\tabu@startpboxORI \@startpbox
+ \iftabu@spread
+ \def\tabu@naturalXmax {\z@}%
+ \let\tabu@naturalXmin \tabu@naturalXmax
+ \tabu@evr{\global\tabu@naturalX \z@}%
+ \let\@startpbox \tabu@startpboxmeasure
+ \else\iftabu@negcoef
+ \let\@startpbox \tabu@startpboxmeasure
+ \else \let\@startpbox \tabu@startpboxquick
+ \fi\fi
+ \expandafter \tabu@measuring
+ \fi
+}% \tabu@strategy
+\def\tabu@measuring{\expandafter \tabu@trial \expandafter
+ \count@ \the\count@ \tabu@endtrial
+}% \tabu@measuring
+\def\tabu@trial{\iftabu@long \tabu@longtrial \else \tabu@shorttrial \fi}
+\def\tabu@shorttrial {\setbox\tabu@box \hbox\bgroup \tabu@seteverycr
+ \ifx \tabu@savecounters\relax \else
+ \let\tabu@savecounters \relax \tabu@clckpt \fi
+ $\iftabuscantokens \tabu@rescan \else \expandafter\@secondoftwo \fi
+ \expandafter{\expandafter \tabuthepreamble
+ \the\tabu@thebody
+ \csname tabu@adl@endtrial\endcsname
+ \endarray}$\egroup % got \tabu@box
+}% \tabu@shorttrial
+\def\tabu@longtrial {\setbox\tabu@box \hbox\bgroup \tabu@seteverycr
+ \ifx \tabu@savecounters\relax \else
+ \let\tabu@savecounters \relax \tabu@clckpt \fi
+ \iftabuscantokens \tabu@rescan \else \expandafter\@secondoftwo \fi
+ \expandafter{\expandafter \tabuthepreamble
+ \the\tabu@thebody
+ \tabuendlongtrial}\egroup % got \tabu@box
+}% \tabu@longtrial
+\def\tabuendlongtrial{% no @ allowed for \scantokens
+ \LT@echunk \global\setbox\@ne \hbox{\unhbox\@ne}\kern\wd\@ne
+ \LT@get@widths
+}% \tabuendlongtrial
+\def\tabu@adl@endtrial{%
+ \crcr \noalign{\global\adl@ncol \tabu@nbcols}}% anything global is crap, junky and fails !
+\def\tabu@seteverycr {\tabu@reset
+ \everycr \expandafter{\the\everycr \tabu@everycr}%
+ \let\everycr \tabu@noeverycr %
+}% \tabu@seteverycr
+\def\tabu@noeverycr{{\aftergroup\tabu@restoreeverycr \afterassignment}\toks@}
+\def\tabu@restoreeverycr {\let\everycr \tabu@@everycr}
+\def\tabu@everycr {\iftabu@everyrow \noalign{\tabu@everyrow}\fi}
+\def\tabu@endoftrials {%
+ \iftabuscantokens \expandafter\@firstoftwo
+ \else \expandafter\@secondoftwo
+ \fi
+ {\expandafter \tabu@closetrialsgroup \expandafter
+ \tabu@rescan \expandafter{%
+ \expandafter\tabuthepreamble
+ \the\expandafter\tabu@thebody
+ \iftabu@long \else \endarray \fi}}
+ {\expandafter\tabu@closetrialsgroup \expandafter
+ \tabuthepreamble
+ \the\tabu@thebody}%
+ \tabu@endenvir % Finish !
+}% \tabu@endoftrials
+\def\tabu@closetrialsgroup {%
+ \toks@\expandafter{\tabu@endenvir}%
+ \edef\tabu@bufferX{\endgroup
+ \tabucolX \the\tabucolX
+ \tabu@target \the\tabu@target
+ \tabu@cnt \the\tabu@cnt
+ \def\noexpand\tabu@endenvir{\the\toks@}%
+ %Quid de \@halignto = \tabu@halignto ??
+ }% \tabu@bufferX
+ \tabu@bufferX
+ \ifcase\tabu@nested % print out (outer in mode 0)
+ \global\tabu@cnt \tabu@cnt
+ \tabu@evr{\tabu@verticaldynamicadjustment}%
+ \tabu@celllalign@def{\everypar{}}\let\tabu@cellralign \@empty
+ \let\@finalstrut \tabu@finalstrut
+ \else % vertical measure of nested tabu
+ \tabu@evr{\tabu@verticalinit}%
+ \tabu@celllalign@def{\tabu@verticalmeasure}%
+ \def\tabu@cellralign{\tabu@verticalspacing}%
+ \fi
+ \tabu@clckpt \let\@halignto \tabu@halignto
+ \let\@halignto \@empty
+ \tabu@seteverycr
+ \ifdim \tabustrutrule>\z@ \ifnum\tabu@nested=\z@
+ \setbox\@arstrutbox \box\voidb@x % force \@arstrutbox to be rebuilt (visible struts)
+ \fi\fi
+}% \tabu@closetrialsgroup
+\def\tabu@quickend {\expandafter \endgroup \expandafter
+ \tabu@target \the\tabu@target \tabu@quickrule
+ \let\endarray \relax \tabu@endenvir
+}% \tabu@quickend
+\def\tabu@endtrial {\relax % stops \count@ assignment !
+ \ifcase \count@ \tabu@err % case 0 = impossible here
+ \or \tabu@err % case 1 = impossible here
+ \or \tabu@err % case 2 = impossible here
+ \or % case 3 = outer goes into mode 0
+ \def\tabu@bufferX{\endgroup}\count@ \z@
+ \else % case 4 = outer goes into mode 3
+ \iftabu@spread \tabu@spreadarith % inner into mode 1 (outer in mode 3)
+ \else \tabu@arith % or 2 (outer in mode 4)
+ \fi
+ \count@=%
+ \ifcase\tabu@nested \thr@@ % outer goes into mode 3
+ \else\iftabu@measuring \tw@ % outer is in mode 4
+ \else \@ne % outer is in mode 3
+ \fi\fi
+ \edef\tabu@bufferX{\endgroup
+ \tabucolX \the\tabucolX
+ \tabu@target \the\tabu@target}%
+ \fi
+ \expandafter \tabu@bufferX \expandafter
+ \count@ \the\count@ \tabu@strategy
+}% \tabu@endtrial
+\def\tabu@err{\errmessage{(tabu) Internal impossible error! (\count@=\the\count@)}}
+%% The algorithms: compute the widths / stop or go on ---------------
+\def\tabu@arithnegcoef {%
+ \@tempdima \z@ \dimen@ \z@ \let\tabu@ \tabu@arith@negcoef \tabu@Xcoefs
+}% \tabu@arithnegcoef
+\def\tabu@arith@negcoef #1#2{%
+ \ifdim #2\p@>\z@ \advance\dimen@ #2\p@ % saturated by definition
+ \advance\@tempdima #2\tabucolX
+ \else
+ \ifdim -#2\tabucolX <\tabu@wd{#1}% c_i X < natural width <= \tabu@target-> saturated
+ \advance\dimen@ -#2\p@
+ \advance\@tempdima -#2\tabucolX
+ \else
+ \advance\@tempdima \tabu@wd{#1}% natural width <= c_i X => neutralised
+ \ifdim \tabu@wd{#1}<\tabu@target \else % neutralised
+ \advance\dimen@ -#2\p@ % saturated (natural width = tabu@target)
+ \fi
+ \fi
+ \fi
+}% \tabu@arith@negcoef
+\def\tabu@givespace #1#2{% here \tabu@DELTA < \z@
+ \ifdim \@tempdima=\z@
+ \tabu@wddef{#1}{\the\dimexpr -\tabu@DELTA*\p@/\tabu@Xsum}%
+ \else
+ \tabu@wddef{#1}{\the\dimexpr \tabu@hsize{#1}{#2}
+ *(\p@ -\tabu@DELTA*\p@/\@tempdima)/\p@\relax}%
+ \fi
+}% \tabu@givespace
+\def\tabu@arith {\advance\tabu@cnt \@ne
+ \ifnum \tabu@cnt=\@ne \tabu@message{\tabu@titles}\fi
+ \tabu@arithnegcoef
+ \@tempdimb \dimexpr \wd\tabu@box -\@tempdima \relax %
+ \tabu@DELTA = \dimexpr \wd\tabu@box - \tabu@target \relax
+ \tabu@message{\tabu@message@arith}%
+ \ifdim \tabu@DELTA <\tabu@hfuzz
+ \ifdim \tabu@DELTA<\z@ % wd (tabu)<\tabu@target ?
+ \let\tabu@ \tabu@givespace \tabu@Xcoefs
+ \advance\@tempdima \@tempdimb \advance\@tempdima -\tabu@DELTA % for message
+ \else % already converged: nothing to do but nearly impossible...
+ \fi
+ \tabucolX \maxdimen
+ \tabu@measuringfalse
+ \else % need for narrower X columns
+ \tabucolX =\dimexpr (\@tempdima -\tabu@DELTA) *\p@/\tabu@Xsum \relax
+ \tabu@measuringtrue
+ \@whilesw \iftabu@measuring\fi {%
+ \advance\tabu@cnt \@ne
+ \tabu@arithnegcoef
+ \tabu@DELTA =\dimexpr \@tempdima+\@tempdimb -\tabu@target \relax % always < 0 here
+ \tabu@message{\tabu@header
+ \tabu@msgalign \tabucolX { }{ }{ }{ }{ }\@@
+ \tabu@msgalign \@tempdima+\@tempdimb { }{ }{ }{ }{ }\@@
+ \tabu@msgalign \tabu@target { }{ }{ }{ }{ }\@@
+ \tabu@msgalign@PT \dimen@ { }{}{}{}{}{}{}\@@
+ \ifdim -\tabu@DELTA<\tabu@hfuzz \tabu@spaces target ok\else
+ \tabu@msgalign \dimexpr -\tabu@DELTA *\p@/\dimen@ {}{}{}{}{}\@@
+ \fi}%
+ \ifdim -\tabu@DELTA<\tabu@hfuzz
+ \advance\@tempdima \@tempdimb % for message
+ \tabu@measuringfalse
+ \else
+ \advance\tabucolX \dimexpr -\tabu@DELTA *\p@/\dimen@ \relax
+ \fi
+ }%
+ \fi
+ \tabu@message{\tabu@message@reached}%
+ \edef\tabu@bufferX{\endgroup \tabu@cnt \the\tabu@cnt
+ \tabucolX \the\tabucolX
+ \tabu@target \the\tabu@target}%
+}% \tabu@arith
+\def\tabu@spreadarith {%
+ \dimen@ \z@ \@tempdima \tabu@naturalXmax \let\tabu@ \tabu@spread@arith \tabu@Xcoefs
+ \edef\tabu@naturalXmin {\the\dimexpr\tabu@naturalXmin*\dimen@/\p@}%
+ \@tempdimc =\dimexpr \wd\tabu@box -\tabu@naturalXmax+\tabu@naturalXmin \relax
+ \iftabu@measuring
+ \tabu@target =\dimexpr \@tempdimc+\tabu@spreadtarget \relax
+ \edef\tabu@bufferX{\endgroup \tabucolX \the\tabucolX \tabu@target\the\tabu@target}%
+ \else
+ \tabu@message{\tabu@message@spreadarith}%
+ \ifdim \dimexpr \@tempdimc+\tabu@spreadtarget >\tabu@target
+ \tabu@message{(tabu) spread
+ \ifdim \@tempdimc>\tabu@target useless here: default target used%
+ \else too large: reduced to fit default target\fi.}%
+ \else
+ \tabu@target =\dimexpr \@tempdimc+\tabu@spreadtarget \relax
+ \tabu@message{(tabu) spread: New target set to \the\tabu@target^^J}%
+ \fi
+ \begingroup \let\tabu@wddef \@gobbletwo
+ \@tempdimb \@tempdima
+ \tabucolX@init
+ \tabu@arithnegcoef
+ \wd\tabu@box =\dimexpr \wd\tabu@box +\@tempdima-\@tempdimb \relax
+ \expandafter\endgroup \expandafter\tabucolX \the\tabucolX
+ \tabu@arith
+ \fi
+}% \tabu@spreadarith
+\def\tabu@spread@arith #1#2{%
+ \ifdim #2\p@>\z@ \advance\dimen@ #2\p@
+ \else \advance\@tempdima \tabu@wd{#1}\relax
+ \fi
+}% \tabu@spread@arith
+%% Reporting in the .log file ---------------------------------------
+\def\tabu@message@defaulttarget{%
+ \ifnum\tabu@nested=\z@^^J(tabu) Default target:
+ \ifx\tabudefaulttarget\linewidth \string\linewidth
+ \ifdim \tabu@thetarget=\linewidth \else
+ -\the\dimexpr\linewidth-\tabu@thetarget\fi =
+ \else\ifx\tabudefaulttarget\linegoal\string\linegoal=
+ \fi\fi
+ \else (tabu) Default target (nested): \fi
+ \the\tabu@target \on@line
+ \ifnum\tabu@nested=\z@ , page \the\c@page\fi}
+\def\tabu@message@target {^^J(tabu) Target specified:
+ \the\tabu@target \on@line, page \the\c@page}
+\def\tabu@message@arith {\tabu@header
+ \tabu@msgalign \tabucolX { }{ }{ }{ }{ }\@@
+ \tabu@msgalign \wd\tabu@box { }{ }{ }{ }{ }\@@
+ \tabu@msgalign \tabu@target { }{ }{ }{ }{ }\@@
+ \tabu@msgalign@PT \dimen@ { }{}{}{}{}{}{}\@@
+ \ifdim \tabu@DELTA<\tabu@hfuzz giving space\else
+ \tabu@msgalign \dimexpr (\@tempdima-\tabu@DELTA) *\p@/\tabu@Xsum -\tabucolX {}{}{}{}{}\@@
+ \fi
+}% \tabu@message@arith
+\def\tabu@message@spreadarith {\tabu@spreadheader
+ \tabu@msgalign \tabu@spreadtarget { }{ }{ }{ }{}\@@
+ \tabu@msgalign \wd\tabu@box { }{ }{ }{ }{}\@@
+ \tabu@msgalign -\tabu@naturalXmax { }{}{}{}{}\@@
+ \tabu@msgalign \tabu@naturalXmin { }{ }{ }{ }{}\@@
+ \tabu@msgalign \ifdim \dimexpr\@tempdimc>\tabu@target \tabu@target
+ \else \@tempdimc+\tabu@spreadtarget \fi
+ {}{}{}{}{}\@@}
+\def\tabu@message@negcoef #1#2{
+ \tabu@spaces\tabu@spaces\space * #1. X[\rem@pt#2]:
+ \space width = \tabu@wd {#1}
+ \expandafter\string\csname tabu@\the\tabu@nested.W\number#1\endcsname
+ \ifdim -\tabu@pt#2\tabucolX<\tabu@target
+ < \number-\rem@pt#2 X
+ = \the\dimexpr -\tabu@pt#2\tabucolX \relax
+ \else
+ <= \the\tabu@target\space < \number-\rem@pt#2 X\fi}
+\def\tabu@message@reached{\tabu@header
+ ******* Reached Target:
+ hfuzz = \tabu@hfuzz\on@line\space *******}
+\def\tabu@message@etime{\edef\tabu@stoptime{\the\pdfelapsedtime}%
+ \tabu@message{(tabu)\tabu@spaces Time elapsed during measure:
+ \the\numexpr(\tabu@stoptime-\tabu@starttime-32767)/65536\relax sec
+ \the\numexpr\numexpr(\tabu@stoptime-\tabu@starttime)
+ -\numexpr(\tabu@stoptime-\tabu@starttime-32767)/65536\relax*65536\relax
+ *1000/65536\relax ms \tabu@spaces(\the\tabu@cnt\space
+ cycle\ifnum\tabu@cnt>\@ne s\fi)^^J^^J}}
+\def\tabu@message@verticalsp {%
+ \ifdim \@tempdima>\tabu@ht
+ \ifdim \@tempdimb>\tabu@dp
+ \expandafter\expandafter\expandafter\string\tabu@ht =
+ \tabu@msgalign \@tempdima { }{ }{ }{ }{ }\@@
+ \expandafter\expandafter\expandafter\string\tabu@dp =
+ \tabu@msgalign \@tempdimb { }{ }{ }{ }{ }\@@^^J%
+ \else
+ \expandafter\expandafter\expandafter\string\tabu@ht =
+ \tabu@msgalign \@tempdima { }{ }{ }{ }{ }\@@^^J%
+ \fi
+ \else\ifdim \@tempdimb>\tabu@dp
+ \tabu@spaces\tabu@spaces\tabu@spaces
+ \expandafter\expandafter\expandafter\string\tabu@dp =
+ \tabu@msgalign \@tempdimb { }{ }{ }{ }{ }\@@^^J\fi
+ \fi
+}% \tabu@message@verticalsp
+\edef\tabu@spaces{\@spaces}
+\def\tabu@strippt{\expandafter\tabu@pt\the}
+{\@makeother\P \@makeother\T\lowercase{\gdef\tabu@pt #1PT{#1}}}
+\def\tabu@msgalign{\expandafter\tabu@msg@align\the\dimexpr}
+\def\tabu@msgalign@PT{\expandafter\tabu@msg@align\romannumeral-`\0\tabu@strippt}
+\def\do #1{%
+ \def\tabu@msg@align##1.##2##3##4##5##6##7##8##9\@@{%
+ \ifnum##1<10 #1 #1\else
+ \ifnum##1<100 #1 \else
+ \ifnum##1<\@m #1\fi\fi\fi
+ ##1.##2##3##4##5##6##7##8#1}%
+ \def\tabu@header{(tabu) \ifnum\tabu@cnt<10 #1\fi\the\tabu@cnt) }%
+ \def\tabu@titles{\ifnum \tabu@nested=\z@
+ (tabu) Try#1 #1 tabu X #1 #1 #1tabu Width #1 #1 Target
+ #1 #1 #1 Coefs #1 #1 #1 Update^^J\fi}%
+ \def\tabu@spreadheader{%
+ (tabu) Try#1 #1 Spread #1 #1 tabu Width #1 #1 #1 Nat. X #1 #1 #1 #1Nat. Min.
+ #1 New Target^^J%
+ (tabu) sprd}
+ \def\tabu@message@save {\begingroup
+ \def\x ####1{\tabu@msg@align ####1{ }{ }{ }{ }{}\@@}
+ \def\z ####1{\expandafter\x\expandafter{\romannumeral-`\0\tabu@strippt
+ \dimexpr####1\p@{ }{ }}}%
+ \let\color \relax \def\tabu@rulesstyle ####1####2{\detokenize{####1}}%
+ \let\CT@arc@ \relax \let\@preamble \@gobble
+ \let\tabu@savedpream \@firstofone
+ \let\tabu@savedparams \@firstofone
+ \def\tabu@target ####1\relax {(tabu) target #1 #1 #1 #1 #1 = \x{####1}^^J}%
+ \def\tabucolX ####1\relax {(tabu) X columns width#1 = \x{####1}^^J}%
+ \def\tabu@nbcols ####1\relax {(tabu) Number of columns: \z{####1}^^J}%
+ \def\tabu@aligndefault ####1{(tabu) Default alignment: #1 #1 ####1^^J}%
+ \def\col@sep ####1\relax {(tabu) column sep #1 #1 #1 = \x{####1}^^J}%
+ \def\arrayrulewidth ####1\relax{(tabu) arrayrulewidth #1 = \x{####1}}%
+ \def\doublerulesep ####1\relax { doublerulesep = \x{####1}^^J}%
+ \def\extratabsurround####1\relax{(tabu) extratabsurround = \x{####1}^^J}%
+ \def\extrarowheight ####1\relax{(tabu) extrarowheight #1 = \x{####1}}%
+ \def\extrarowdepth ####1\relax {extrarowdepth = \x{####1}^^J}%
+ \def\abovetabulinesep####1\relax{(tabu) abovetabulinesep=\x{####1} }%
+ \def\belowtabulinesep####1\relax{ belowtabulinesep=\x{####1}^^J}%
+ \def\arraystretch ####1{(tabu) arraystretch #1 #1 = \z{####1}^^J}%
+ \def\minrowclearance####1\relax{(tabu) minrowclearance #1 = \x{####1}^^J}%
+ \def\tabu@arc@L ####1{(tabu) taburulecolor #1 #1 = ####1^^J}%
+ \def\tabu@drsc@L ####1{(tabu) tabudoublerulecolor= ####1^^J}%
+ \def\tabu@evr@L ####1{(tabu) everyrow #1 #1 #1 #1 = \detokenize{####1}^^J}%
+ \def\tabu@ls@L ####1{(tabu) line style = \detokenize{####1}^^J}%
+ \def\NC@find ####1\@nil{(tabu) tabu preamble#1 #1 = \detokenize{####1}^^J}%
+ \def\tabu@wddef####1####2{(tabu) Natural width ####1 = \x{####2}^^J}%
+ \let\edef \@gobbletwo \let\def \@empty \let\let \@gobbletwo
+ \tabu@message{%
+ (tabu) \string\savetabu{\tabu@temp}: \on@line^^J%
+ \tabu@usetabu \@nil^^J}%
+ \endgroup}
+}\do{ }
+%% Measuring the natural width (varwidth) - store the results -------
+\def\tabu@startpboxmeasure #1{\bgroup % entering \vtop
+ \edef\tabu@temp{\expandafter\@secondoftwo \ifx\tabu@hsize #1\else\relax\fi}%
+ \ifodd 1\ifx \tabu@temp\@empty 0 \else % starts with \tabu@hsize ?
+ \iftabu@spread \else % if spread -> measure
+ \ifdim \tabu@temp\p@>\z@ 0 \fi\fi\fi% if coef>0 -> do not measure
+ \let\@startpbox \tabu@startpboxORI % restore immediately (nesting)
+ \tabu@measuringtrue % for the quick option...
+ \tabu@Xcol =\expandafter\@firstoftwo\ifx\tabu@hsize #1\fi
+ \ifdim \tabu@temp\p@>\z@ \ifdim \tabu@temp\tabucolX<\tabu@target
+ \tabu@target=\tabu@temp\tabucolX \fi\fi
+ \setbox\tabu@box \hbox \bgroup
+ \begin{varwidth}\tabu@target
+ \let\FV@ListProcessLine \tabu@FV@ListProcessLine % \hbox to natural width...
+ \narrowragged \arraybackslash \parfillskip \@flushglue
+ \ifdefined\pdfadjustspacing \pdfadjustspacing\z@ \fi
+ \bgroup \aftergroup\tabu@endpboxmeasure
+ \ifdefined \cellspacetoplimit \tabu@cellspacepatch \fi
+ \else \expandafter\@gobble
+ \tabu@startpboxquick{#1}% \@gobble \bgroup
+ \fi
+}% \tabu@startpboxmeasure
+\def\tabu@cellspacepatch{\def\bcolumn##1\@nil{}\let\ecolumn\@empty
+ \bgroup\color@begingroup}
+\def\tabu@endpboxmeasure {%
+ \@finalstrut \@arstrutbox
+ \end{varwidth}\egroup %
+ \ifdim \tabu@temp\p@ <\z@ % neg coef
+ \ifdim \tabu@wd\tabu@Xcol <\wd\tabu@box
+ \tabu@wddef\tabu@Xcol {\the\wd\tabu@box}%
+ \tabu@debug{\tabu@message@endpboxmeasure}%
+ \fi
+ \else % spread coef>0
+ \global\advance \tabu@naturalX \wd\tabu@box
+ \@tempdima =\dimexpr \wd\tabu@box *\p@/\dimexpr \tabu@temp\p@\relax \relax
+ \ifdim \tabu@naturalXmax <\tabu@naturalX
+ \xdef\tabu@naturalXmax {\the\tabu@naturalX}\fi
+ \ifdim \tabu@naturalXmin <\@tempdima
+ \xdef\tabu@naturalXmin {\the\@tempdima}\fi
+ \fi
+ \box\tabu@box \egroup % end of \vtop (measure) restore \tabu@target
+}% \tabu@endpboxmeasure
+\def\tabu@wddef #1{\expandafter\xdef
+ \csname tabu@\the\tabu@nested.W\number#1\endcsname}
+\def\tabu@wd #1{\csname tabu@\the\tabu@nested.W\number#1\endcsname}
+\def\tabu@message@endpboxmeasure{\tabu@spaces\tabu@spaces<-> % <-> save natural wd
+ \the\tabu@Xcol. X[\tabu@temp]:
+ target = \the\tabucolX \space
+ \expandafter\expandafter\expandafter\string\tabu@wd\tabu@Xcol
+ =\tabu@wd\tabu@Xcol
+}% \tabu@message@endpboxmeasure
+\def\tabu@startpboxquick {\bgroup
+ \let\@startpbox \tabu@startpboxORI % restore immediately
+ \let\tabu \tabu@quick % \begin is expanded before...
+ \expandafter\@gobble \@startpbox % gobbles \bgroup
+}% \tabu@startpboxquick
+\def\tabu@quick {\begingroup \iffalse{\fi \ifnum0=`}\fi
+ \toks@{}\def\tabu@stack{b}\tabu@collectbody \tabu@endquick
+}% \tabu@quick
+\def\tabu@endquick {%
+ \ifodd 1\ifx\tabu@end@envir\tabu@endtabu \else
+ \ifx\tabu@end@envir\tabu@endtabus \else 0\fi\fi\relax
+ \endgroup
+ \else \let\endtabu \relax
+ \tabu@end@envir
+ \fi
+}% \tabu@quick
+\def\tabu@endtabu {\end{tabu}}
+\def\tabu@endtabus {\end{tabu*}}
+%% Measuring the heights and depths - store the results -------------
+\def\tabu@verticalmeasure{\everypar{}%
+ \ifnum \currentgrouptype>12 % 14=semi-simple, 15=math shift group
+ \setbox\tabu@box =\hbox\bgroup
+ \let\tabu@verticalspacing \tabu@verticalsp@lcr
+ \d@llarbegin % after \hbox ...
+ \else
+ \edef\tabu@temp{\ifnum\currentgrouptype=5\vtop
+ \else\ifnum\currentgrouptype=12\vcenter
+ \else\vbox\fi\fi}%
+ \setbox\tabu@box \hbox\bgroup$\tabu@temp \bgroup
+ \let\tabu@verticalspacing \tabu@verticalsp@pmb
+ \fi
+}% \tabu@verticalmeasure
+\def\tabu@verticalsp@lcr{%
+ \d@llarend \egroup %
+ \@tempdima \dimexpr \ht\tabu@box+\abovetabulinesep
+ \@tempdimb \dimexpr \dp\tabu@box+\belowtabulinesep \relax
+ \ifdim\tabustrutrule>\z@ \tabu@debug{\tabu@message@verticalsp}\fi
+ \ifdim \tabu@ht<\@tempdima \tabu@htdef{\the\@tempdima}\fi
+ \ifdim \tabu@dp<\@tempdimb \tabu@dpdef{\the\@tempdimb}\fi
+ \noindent\vrule height\@tempdima depth\@tempdimb
+}% \tabu@verticalsp@lcr
+\def\tabu@verticalsp@pmb{% inserts struts as needed
+ \par \expandafter\egroup
+ \expandafter$\expandafter
+ \egroup \expandafter
+ \@tempdimc \the\prevdepth
+ \@tempdima \dimexpr \ht\tabu@box+\abovetabulinesep
+ \@tempdimb \dimexpr \dp\tabu@box+\belowtabulinesep \relax
+ \ifdim\tabustrutrule>\z@ \tabu@debug{\tabu@message@verticalsp}\fi
+ \ifdim \tabu@ht<\@tempdima \tabu@htdef{\the\@tempdima}\fi
+ \ifdim \tabu@dp<\@tempdimb \tabu@dpdef{\the\@tempdimb}\fi
+ \let\@finalstrut \@gobble
+ \hrule height\@tempdima depth\@tempdimb width\hsize
+%% \box\tabu@box
+}% \tabu@verticalsp@pmb
+
+\def\tabu@verticalinit{%
+ \ifnum \c@taburow=\z@ \tabu@rearstrut \fi % after \tabu@reset !
+ \advance\c@taburow \@ne
+ \tabu@htdef{\the\ht\@arstrutbox}\tabu@dpdef{\the\dp\@arstrutbox}%
+ \advance\c@taburow \m@ne
+}% \tabu@verticalinit
+\def\tabu@htdef {\expandafter\xdef \csname tabu@\the\tabu@nested.H\the\c@taburow\endcsname}
+\def\tabu@ht {\csname tabu@\the\tabu@nested.H\the\c@taburow\endcsname}
+\def\tabu@dpdef {\expandafter\xdef \csname tabu@\the\tabu@nested.D\the\c@taburow\endcsname}
+\def\tabu@dp {\csname tabu@\the\tabu@nested.D\the\c@taburow\endcsname}
+\def\tabu@verticaldynamicadjustment {%
+ \advance\c@taburow \@ne
+ \extrarowheight \dimexpr\tabu@ht - \ht\strutbox
+ \extrarowdepth \dimexpr\tabu@dp - \dp\strutbox
+ \let\arraystretch \@empty
+ \advance\c@taburow \m@ne
+}% \tabu@verticaldynamicadjustment
+\def\tabuphantomline{\crcr \noalign{%
+ {\globaldefs \@ne
+ \setbox\@arstrutbox \box\voidb@x
+ \let\tabu@@celllalign \tabu@celllalign
+ \let\tabu@@cellralign \tabu@cellralign
+ \let\tabu@@cellleft \tabu@cellleft
+ \let\tabu@@cellright \tabu@cellright
+ \let\tabu@@thevline \tabu@thevline
+ \let\tabu@celllalign \@empty
+ \let\tabu@cellralign \@empty
+ \let\tabu@cellright \@empty
+ \let\tabu@cellleft \@empty
+ \let\tabu@thevline \relax}%
+ \edef\tabu@temp{\tabu@multispan \tabu@nbcols{\noindent &}}%
+ \toks@\expandafter{\tabu@temp \noindent\tabu@everyrowfalse \cr
+ \noalign{\tabu@rearstrut
+ {\globaldefs\@ne
+ \let\tabu@celllalign \tabu@@celllalign
+ \let\tabu@cellralign \tabu@@cellralign
+ \let\tabu@cellleft \tabu@@cellleft
+ \let\tabu@cellright \tabu@@cellright
+ \let\tabu@thevline \tabu@@thevline}}}%
+ \expandafter}\the\toks@
+}% \tabuphantomline
+%% \firsthline and \lasthline corrections ---------------------------
+\def\tabu@firstline {\tabu@hlineAZ \tabu@firsthlinecorrection {}}
+\def\tabu@firsthline{\tabu@hlineAZ \tabu@firsthlinecorrection \hline}
+\def\tabu@lastline {\tabu@hlineAZ \tabu@lasthlinecorrection {}}
+\def\tabu@lasthline {\tabu@hlineAZ \tabu@lasthlinecorrection \hline}
+\def\tabu@hline {% replaces \hline if no colortbl (see \AtBeginDocument)
+ \noalign{\ifnum0=`}\fi
+ {\CT@arc@\hrule height\arrayrulewidth}%
+ \futurelet \tabu@temp \tabu@xhline
+}% \tabu@hline
+\def\tabu@xhline{%
+ \ifx \tabu@temp \hline
+ {\ifx \CT@drsc@\relax \vskip
+ \else\ifx \CT@drsc@\@empty \vskip
+ \else \CT@drsc@\hrule height
+ \fi\fi
+ \doublerulesep}%
+ \fi
+ \ifnum0=`{\fi}%
+}% \tabu@xhline
+\def\tabu@hlineAZ #1#2{\noalign{\ifnum0=`}\fi \dimen@ \z@ \count@ \z@
+ \toks@{}\def\tabu@hlinecorrection{#1}\def\tabu@temp{#2}%
+ \tabu@hlineAZsurround
+}% \tabu@hlineAZ
+\newcommand*\tabu@hlineAZsurround[1][\extratabsurround]{%
+ \extratabsurround #1\let\tabucline \tabucline@scan
+ \let\hline \tabu@hlinescan \let\firsthline \hline
+ \let\cline \tabu@clinescan \let\lasthline \hline
+ \expandafter \futurelet \expandafter \tabu@temp
+ \expandafter \tabu@nexthlineAZ \tabu@temp
+}% \tabu@hlineAZsurround
+\def\tabu@hlinescan {\tabu@thick \arrayrulewidth \tabu@xhlineAZ \hline}
+\def\tabu@clinescan #1{\tabu@thick \arrayrulewidth \tabu@xhlineAZ {\cline{#1}}}
+\def\tabucline@scan{\@testopt \tabucline@sc@n {}}
+\def\tabucline@sc@n #1[#2]{\tabu@xhlineAZ {\tabucline[{#1}]{#2}}}
+\def\tabu@nexthlineAZ{%
+ \ifx \tabu@temp\hline \else
+ \ifx \tabu@temp\cline \else
+ \ifx \tabu@temp\tabucline \else
+ \tabu@hlinecorrection
+ \fi\fi\fi
+}% \tabu@nexthlineAZ
+\def\tabu@xhlineAZ #1{%
+ \toks@\expandafter{\the\toks@ #1}%
+ \@tempdimc \tabu@thick % The last line width
+ \ifcase\count@ \@tempdimb \tabu@thick % The first line width
+ \else \advance\dimen@ \dimexpr \tabu@thick+\doublerulesep \relax
+ \fi
+ \advance\count@ \@ne \futurelet \tabu@temp \tabu@nexthlineAZ
+}% \tabu@xhlineAZ
+\def\tabu@firsthlinecorrection{% \count@ = number of \hline -1
+ \@tempdima \dimexpr \ht\@arstrutbox+\dimen@
+ \edef\firsthline{%
+ \omit \hbox to\z@{\hss{\noexpand\tabu@DBG{yellow}\vrule
+ height \the\dimexpr\@tempdima+\extratabsurround
+ depth \dp\@arstrutbox
+ width \tabustrutrule}\hss}\cr
+ \noalign{\vskip -\the\dimexpr \@tempdima+\@tempdimb
+ +\dp\@arstrutbox \relax}%
+ \the\toks@
+ }\ifnum0=`{\fi
+ \expandafter}\firsthline % we are then !
+}% \tabu@firsthlinecorrection
+\def\tabu@lasthlinecorrection{%
+ \@tempdima \dimexpr \dp\@arstrutbox+\dimen@+\@tempdimb+\@tempdimc
+ \edef\lasthline{%
+ \the\toks@
+ \noalign{\vskip -\the\dimexpr\dimen@+\@tempdimb+\dp\@arstrutbox}%
+ \omit \hbox to\z@{\hss{\noexpand\tabu@DBG{yellow}\vrule
+ depth \the\dimexpr \dp\@arstrutbox+\@tempdimb+\dimen@
+ +\extratabsurround-\@tempdimc
+ height \z@
+ width \tabustrutrule}\hss}\cr
+ }\ifnum0=`{\fi
+ \expandafter}\lasthline % we are then !
+}% \tabu@lasthlinecorrection
+\def\tabu@LT@@hline{%
+ \ifx\LT@next\hline
+ \global\let\LT@next \@gobble
+ \ifx \CT@drsc@\relax
+ \gdef\CT@LT@sep{%
+ \noalign{\penalty-\@medpenalty\vskip\doublerulesep}}%
+ \else
+ \gdef\CT@LT@sep{%
+ \multispan\LT@cols{%
+ \CT@drsc@\leaders\hrule\@height\doublerulesep\hfill}\cr}%
+ \fi
+ \else
+ \global\let\LT@next\empty
+ \gdef\CT@LT@sep{%
+ \noalign{\penalty-\@lowpenalty\vskip-\arrayrulewidth}}%
+ \fi
+ \ifnum0=`{\fi}%
+ \multispan\LT@cols
+ {\CT@arc@\leaders\hrule\@height\arrayrulewidth\hfill}\cr
+ \CT@LT@sep
+ \multispan\LT@cols
+ {\CT@arc@\leaders\hrule\@height\arrayrulewidth\hfill}\cr
+ \noalign{\penalty\@M}%
+ \LT@next
+}% \tabu@LT@@hline
+%% Horizontal lines : \tabucline ------------------------------------
+\let\tabu@start \@tempcnta
+\let\tabu@stop \@tempcntb
+\newcommand*\tabucline{\noalign{\ifnum0=`}\fi \tabu@cline}
+\newcommand*\tabu@cline[2][]{\tabu@startstop{#2}%
+ \ifnum \tabu@stop<\z@ \toks@{}%
+ \else \tabu@clinearg{#1}\tabu@thestyle
+ \edef\tabucline{\toks@{%
+ \ifnum \tabu@start>\z@ \omit
+ \tabu@multispan\tabu@start {\span\omit}&\fi
+ \omit \tabu@multispan\tabu@stop {\span\omit}%
+ \tabu@thehline\cr
+ }}\tabucline
+ \tabu@tracinglines{(tabu:tabucline) Style: #1^^J\the\toks@^^J^^J}%
+ \fi
+ \futurelet \tabu@temp \tabu@xcline
+}% \tabu@cline
+\def\tabu@clinearg #1{%
+ \ifx\\#1\\\let\tabu@thestyle \tabu@ls@
+ \else \@defaultunits \expandafter\let\expandafter\@tempa
+ \romannumeral-`\0#1\relax \@nnil
+ \ifx \hbox\@tempa \tabu@clinebox{#1}%
+ \else\ifx \box\@tempa \tabu@clinebox{#1}%
+ \else\ifx \vbox\@tempa \tabu@clinebox{#1}%
+ \else\ifx \vtop\@tempa \tabu@clinebox{#1}%
+ \else\ifx \copy\@tempa \tabu@clinebox{#1}%
+ \else\ifx \leaders\@tempa \tabu@clineleads{#1}%
+ \else\ifx \cleaders\@tempa \tabu@clineleads{#1}%
+ \else\ifx \xleaders\@tempa \tabu@clineleads{#1}%
+ \else\tabu@getline {#1}%
+ \fi\fi\fi\fi\fi\fi\fi\fi
+ \fi
+}% \tabu@clinearg
+\def\tabu@clinebox #1{\tabu@clineleads{\xleaders#1\hss}}
+\def\tabu@clineleads #1{%
+ \let\tabu@thestyle \relax \let\tabu@leaders \@undefined
+ \gdef\tabu@thehrule{#1}}
+\def\tabu@thehline{\begingroup
+ \ifdefined\tabu@leaders
+ \noexpand\tabu@thehleaders
+ \else \noexpand\tabu@thehrule
+ \fi \endgroup
+}% \tabu@thehline
+\def\tabu@xcline{%
+ \ifx \tabu@temp\tabucline
+ \toks@\expandafter{\the\toks@ \noalign
+ {\ifx\CT@drsc@\relax \vskip
+ \else \CT@drsc@\hrule height
+ \fi
+ \doublerulesep}}%
+ \fi
+ \tabu@docline
+}% \tabu@xcline
+\def\tabu@docline {\ifnum0=`{\fi \expandafter}\the\toks@}
+\def\tabu@docline@evr {\xdef\tabu@doclineafter{\the\toks@}%
+ \ifnum0=`{\fi}\aftergroup\tabu@doclineafter}
+\def\tabu@multispan #1#2{%
+ \ifnum\numexpr#1>\@ne #2\expandafter\tabu@multispan
+ \else \expandafter\@gobbletwo
+ \fi {#1-1}{#2}%
+}% \tabu@multispan
+\def\tabu@startstop #1{\tabu@start@stop #1\relax 1-\tabu@nbcols \@nnil}
+\def\tabu@start@stop #1-#2\@nnil{%
+ \@defaultunits \tabu@start\number 0#1\relax \@nnil
+ \@defaultunits \tabu@stop \number 0#2\relax \@nnil
+ \tabu@stop \ifnum \tabu@start>\tabu@nbcols \m@ne
+ \else\ifnum \tabu@stop=\z@ \tabu@nbcols
+ \else\ifnum \tabu@stop>\tabu@nbcols \tabu@nbcols
+ \else \tabu@stop
+ \fi\fi\fi
+ \advance\tabu@start \m@ne
+ \ifnum \tabu@start>\z@ \advance\tabu@stop -\tabu@start \fi
+}% \tabu@start@stop
+%% Numbers: siunitx S columns (and \tabudecimal) -------------------
+\def\tabu@tabudecimal #1{%
+ \def\tabu@decimal{#1}\@temptokena{}%
+ \let\tabu@getdecimal@ \tabu@getdecimal@ignorespaces
+ \tabu@scandecimal
+}% \tabu@tabudecimal
+\def\tabu@scandecimal{\futurelet \tabu@temp \tabu@getdecimal@}
+\def\tabu@skipdecimal#1{#1\tabu@scandecimal}
+\def\tabu@getdecimal@ignorespaces{%
+ \ifcase 0\ifx\tabu@temp\ignorespaces\else
+ \ifx\tabu@temp\@sptoken1\else
+ 2\fi\fi\relax
+ \let\tabu@getdecimal@ \tabu@getdecimal
+ \expandafter\tabu@skipdecimal
+ \or \expandafter\tabu@gobblespace\expandafter\tabu@scandecimal
+ \else \expandafter\tabu@skipdecimal
+ \fi
+}% \tabu@getdecimal@ignorespaces
+\def\tabu@get@decimal#1{\@temptokena\expandafter{\the\@temptokena #1}%
+ \tabu@scandecimal}
+\def\do#1{%
+ \def\tabu@get@decimalspace#1{%
+ \@temptokena\expandafter{\the\@temptokena #1}\tabu@scandecimal}%
+}\do{ }
+\let\tabu@@tabudecimal \tabu@tabudecimal
+\def\tabu@getdecimal{%
+ \ifcase 0\ifx 0\tabu@temp\else
+ \ifx 1\tabu@temp\else
+ \ifx 2\tabu@temp\else
+ \ifx 3\tabu@temp\else
+ \ifx 4\tabu@temp\else
+ \ifx 5\tabu@temp\else
+ \ifx 6\tabu@temp\else
+ \ifx 7\tabu@temp\else
+ \ifx 8\tabu@temp\else
+ \ifx 9\tabu@temp\else
+ \ifx .\tabu@temp\else
+ \ifx ,\tabu@temp\else
+ \ifx -\tabu@temp\else
+ \ifx +\tabu@temp\else
+ \ifx e\tabu@temp\else
+ \ifx E\tabu@temp\else
+ \ifx\tabu@cellleft\tabu@temp1\else
+ \ifx\ignorespaces\tabu@temp1\else
+ \ifx\@sptoken\tabu@temp2\else
+ 3\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\relax
+ \expandafter\tabu@get@decimal
+ \or \expandafter\tabu@skipdecimal
+ \or \expandafter\tabu@get@decimalspace
+ \else\expandafter\tabu@printdecimal
+ \fi
+}% \tabu@getdecimal
+\def\tabu@printdecimal{%
+ \edef\tabu@temp{\the\@temptokena}%
+ \ifx\tabu@temp\@empty\else
+ \ifx\tabu@temp\space\else
+ \expandafter\tabu@decimal\expandafter{\the\@temptokena}%
+ \fi\fi
+}% \tabu@printdecimal
+%% Verbatim inside X columns ----------------------------------------
+\def\tabu@verbatim{%
+ \let\verb \tabu@verb
+ \let\FV@DefineCheckEnd \tabu@FV@DefineCheckEnd
+}% \tabu@verbatim
+\let\tabu@ltx@verb \verb
+\def\tabu@verb{\@ifstar {\tabu@ltx@verb*} \tabu@ltx@verb}
+\def\tabu@fancyvrb {%
+ \def\tabu@FV@DefineCheckEnd ##1{%
+ \def\tabu@FV@DefineCheckEnd{%
+ ##1%
+ \let\FV@CheckEnd \tabu@FV@CheckEnd
+ \let\FV@@CheckEnd \tabu@FV@@CheckEnd
+ \let\FV@@@CheckEnd \tabu@FV@@@CheckEnd
+ \edef\FV@EndScanning{%
+ \def\noexpand\next{\noexpand\end{\FV@EnvironName}}%
+ \global\let\noexpand\FV@EnvironName\relax
+ \noexpand\next}%
+ \xdef\FV@EnvironName{\detokenize\expandafter{\FV@EnvironName}}}%
+ }\expandafter\tabu@FV@DefineCheckEnd\expandafter{\FV@DefineCheckEnd}
+}% \tabu@fancyvrb
+\def\tabu@FV@CheckEnd #1{\expandafter\FV@@CheckEnd \detokenize{#1\end{}}\@nil}
+\edef\tabu@FV@@@CheckEnd {\detokenize{\end{}}}
+\begingroup
+\catcode`\[1 \catcode`\]2
+\@makeother\{ \@makeother\}
+ \edef\x[\endgroup
+ \def\noexpand\tabu@FV@@CheckEnd ##1\detokenize[\end{]##2\detokenize[}]##3%
+ ]\x \@nil{\def\@tempa{#2}\def\@tempb{#3}}
+\def\tabu@FV@ListProcessLine #1{%
+ \hbox {%to \hsize{%
+ \kern\leftmargin
+ \hbox {%to \linewidth{%
+ \FV@LeftListNumber
+ \FV@LeftListFrame
+ \FancyVerbFormatLine{#1}\hss
+%% DG/SR modification begin - Jan. 28, 1998 (for numbers=right add-on)
+%% \FV@RightListFrame}%
+ \FV@RightListFrame
+ \FV@RightListNumber}%
+%% DG/SR modification end
+ \hss}}
+%% \savetabu --------------------------------------------------------
+\newcommand*\savetabu[1]{\noalign{%
+ \tabu@sanitizearg{#1}\tabu@temp
+ \ifx \tabu@temp\@empty \tabu@savewarn{}{The tabu will not be saved}\else
+ \@ifundefined{tabu@saved@\tabu@temp}{}{\tabu@savewarn{#1}{Overwriting}}%
+ \ifdefined\tabu@restored \expandafter\let
+ \csname tabu@saved@\tabu@temp \endcsname \tabu@restored
+ \else {\tabu@save}%
+ \fi
+ \fi}%
+}% \savetabu
+\def\tabu@save {%
+ \toks0\expandafter{\tabu@saved@}%
+ \iftabu@negcoef
+ \let\tabu@wddef \relax \let\tabu@ \tabu@savewd \edef\tabu@savewd{\tabu@Xcoefs}%
+ \toks0\expandafter{\the\toks\expandafter0\tabu@savewd}\fi
+ \toks1\expandafter{\tabu@savedpream}%
+ \toks2\expandafter{\tabu@savedpreamble}%
+ \let\@preamble \relax
+ \let\tabu@savedpream \relax \let\tabu@savedparams \relax
+ \edef\tabu@preamble{%
+ \def\noexpand\tabu@aligndefault{\tabu@align}%
+ \def\tabu@savedparams {\noexpand\the\toks0}%
+ \def\tabu@savedpream {\noexpand\the\toks1}}%
+ \edef\tabu@usetabu{%
+ \def\@preamble {\noexpand\the\toks2}%
+ \tabu@target \the\tabu@target \relax
+ \tabucolX \the\tabucolX \relax
+ \tabu@nbcols \the\tabu@nbcols \relax
+ \def\noexpand\tabu@aligndefault{\tabu@align}%
+ \def\tabu@savedparams {\noexpand\the\toks0}%
+ \def\tabu@savedpream {\noexpand\the\toks1}}%
+ \let\tabu@aligndefault \relax \let\@sharp \relax
+ \edef\@tempa{\noexpand\tabu@s@ved
+ {\tabu@usetabu}
+ {\tabu@preamble}
+ {\the\toks1}}\@tempa
+ \tabu@message@save
+}% \tabu@save
+\long\def\tabu@s@ved #1#2#3{%
+ \def\tabu@usetabu{#1}%
+ \expandafter\gdef\csname tabu@saved@\tabu@temp\endcsname ##1{%
+ \ifodd ##1% \usetabu
+ \tabu@measuringfalse \tabu@spreadfalse % Just in case...
+ \gdef\tabu@usetabu {%
+ \ifdim \tabu@target>\z@ \tabu@warn@usetabu \fi
+ \global\let\tabu@usetabu \@undefined
+ \def\@halignto {to\tabu@target}%
+ #1%
+ \ifx \tabu@align\tabu@aligndefault@text
+ \ifnum \tabu@nested=\z@
+ \let\tabu@align \tabu@aligndefault \fi\fi}%
+ \else % \preamble
+ \gdef\tabu@preamble {%
+ \global\let\tabu@preamble \@undefined
+ #2%
+ \ifx \tabu@align\tabu@aligndefault@text
+ \ifnum \tabu@nested=\z@
+ \let\tabu@align \tabu@aligndefault \fi\fi}%
+ \fi
+ #3}%
+}% \tabu@s@ved
+\def\tabu@aligndefault@text {\tabu@aligndefault}%
+\def\tabu@warn@usetabu {\PackageWarning{tabu}
+ {Specifying a target with \string\usetabu\space is useless
+ \MessageBreak The target cannot be changed!}}
+\def\tabu@savewd #1#2{\ifdim #2\p@<\z@ \tabu@wddef{#1}{\tabu@wd{#1}}\fi}
+\def\tabu@savewarn#1#2{\PackageInfo{tabu}
+ {User-name `#1' already used for \string\savetabu
+ \MessageBreak #2}}%
+\def\tabu@saveerr#1{\PackageError{tabu}
+ {User-name `#1' is unknown for \string\usetabu
+ \MessageBreak I cannot restore an unknown preamble!}\@ehd}
+%% \rowfont ---------------------------------------------------------
+\newskip \tabu@cellskip
+\def\tabu@rowfont{\ifdim \baselineskip=\z@\noalign\fi
+ {\ifnum0=`}\fi \tabu@row@font}
+\newcommand*\tabu@row@font[2][]{%
+ \ifnum7=\currentgrouptype
+ \global\let\tabu@@cellleft \tabu@cellleft
+ \global\let\tabu@@cellright \tabu@cellright
+ \global\let\tabu@@celllalign \tabu@celllalign
+ \global\let\tabu@@cellralign \tabu@cellralign
+ \global\let\tabu@@rowfontreset\tabu@rowfontreset
+ \fi
+ \global\let\tabu@rowfontreset \tabu@rowfont@reset
+ \expandafter\gdef\expandafter\tabu@cellleft\expandafter{\tabu@cellleft #2}%
+ \ifcsname tabu@cell@#1\endcsname % row alignment
+ \csname tabu@cell@#1\endcsname \fi
+ \ifnum0=`{\fi}% end of group / noalign group
+}% \rowfont
+\def\tabu@ifcolorleavevmode #1{\let\color \tabu@leavevmodecolor #1\let\color\tabu@color}%
+\def\tabu@rowfont@reset{%
+ \global\let\tabu@rowfontreset \tabu@@rowfontreset
+ \global\let\tabu@cellleft \tabu@@cellleft
+ \global\let\tabu@cellright \tabu@@cellright
+ \global\let\tabu@cellfont \@empty
+ \global\let\tabu@celllalign \tabu@@celllalign
+ \global\let\tabu@cellralign \tabu@@cellralign
+}% \tabu@@rowfontreset
+\let\tabu@rowfontreset \@empty % overwritten \AtBeginDocument if colortbl
+%% \tabu@prepnext@tok -----------------------------------------------
+\newif \iftabu@cellright
+\def\tabu@prepnext@tok{%
+ \ifnum \count@<\z@ %
+ \@tempcnta \@M %
+ \tabu@nbcols\z@
+ \let\tabu@fornoopORI \@fornoop
+ \tabu@cellrightfalse
+ \else
+ \ifcase \numexpr \count@-\@tempcnta \relax % (case 0): prev. token is left
+ \advance \tabu@nbcols \@ne
+ \iftabu@cellright % before-previous token is right and is finished
+ \tabu@cellrightfalse %
+ \tabu@righttok
+ \fi
+ \tabu@lefttok
+ \or % (case 1) previous token is right
+ \tabu@cellrighttrue \let\@fornoop \tabu@lastnoop
+ \else % special column: do not change the token
+ \iftabu@cellright % before-previous token is right
+ \tabu@cellrightfalse
+ \tabu@righttok
+ \fi
+ \fi % \ifcase
+ \fi
+ \tabu@prepnext@tokORI
+}% \tabu@prepnext@tok
+\long\def\tabu@lastnoop#1\@@#2#3{\tabu@lastn@@p #2\@nextchar \in@\in@@}
+\def\tabu@lastn@@p #1\@nextchar #2#3\in@@{%
+ \ifx \in@#2\else
+ \let\@fornoop \tabu@fornoopORI
+ \xdef\tabu@mkpreambuffer{\tabu@nbcols\the\tabu@nbcols \tabu@mkpreambuffer}%
+ \toks0\expandafter{\expandafter\tabu@everyrowtrue \the\toks0}%
+ \expandafter\prepnext@tok
+ \fi
+}% \tabu@lastnoop
+\def\tabu@righttok{%
+ \advance \count@ \m@ne
+ \toks\count@\expandafter {\the\toks\count@ \tabu@cellright \tabu@cellralign}%
+ \advance \count@ \@ne
+}% \tabu@righttok
+\def\tabu@lefttok{\toks\count@\expandafter{\expandafter\tabu@celllalign
+ \the\toks\count@ \tabu@cellleft}% after because of $
+}% \tabu@lefttok
+%% Neutralisation of glues ------------------------------------------
+\let\tabu@cellleft \@empty
+\let\tabu@cellright \@empty
+\tabu@celllalign@def{\tabu@cellleft}%
+\let\tabu@cellralign \@empty
+\def\tabu@cell@align #1#2#3{%
+ \let\tabu@maybesiunitx \toks@ \tabu@celllalign
+ \global \expandafter \tabu@celllalign@def \expandafter {\the\toks@ #1}%
+ \toks@\expandafter{\tabu@cellralign #2}%
+ \xdef\tabu@cellralign{\the\toks@}%
+ \toks@\expandafter{\tabu@cellleft #3}%
+ \xdef\tabu@cellleft{\the\toks@}%
+}% \tabu@cell@align
+\def\tabu@cell@l{% force alignment to left
+ \tabu@cell@align
+ {\tabu@removehfil \raggedright \tabu@cellleft}% left
+ {\tabu@flush1\tabu@ignorehfil}% right
+ \raggedright
+}% \tabu@cell@l
+\def\tabu@cell@c{% force alignment to center
+ \tabu@cell@align
+ {\tabu@removehfil \centering \tabu@flush{.5}\tabu@cellleft}
+ {\tabu@flush{.5}\tabu@ignorehfil}
+ \centering
+}% \tabu@cell@c
+\def\tabu@cell@r{% force alignment to right
+ \tabu@cell@align
+ {\tabu@removehfil \raggedleft \tabu@flush1\tabu@cellleft}
+ \tabu@ignorehfil
+ \raggedleft
+}% \tabu@cell@r
+\def\tabu@cell@j{% force justification (for p, m, b columns)
+ \tabu@cell@align
+ {\tabu@justify\tabu@cellleft}
+ {}
+ \tabu@justify
+}% \tabu@cell@j
+\def\tabu@justify{%
+ \leftskip\z@skip \@rightskip\leftskip \rightskip\@rightskip
+ \parfillskip\@flushglue
+}% \tabu@justify
+%% ragged2e settings
+\def\tabu@cell@L{% force alignment to left (ragged2e)
+ \tabu@cell@align
+ {\tabu@removehfil \RaggedRight \tabu@cellleft}
+ {\tabu@flush 1\tabu@ignorehfil}
+ \RaggedRight
+}% \tabu@cell@L
+\def\tabu@cell@C{% force alignment to center (ragged2e)
+ \tabu@cell@align
+ {\tabu@removehfil \Centering \tabu@flush{.5}\tabu@cellleft}
+ {\tabu@flush{.5}\tabu@ignorehfil}
+ \Centering
+}% \tabu@cell@C
+\def\tabu@cell@R{% force alignment to right (ragged2e)
+ \tabu@cell@align
+ {\tabu@removehfil \RaggedLeft \tabu@flush 1\tabu@cellleft}
+ \tabu@ignorehfil
+ \RaggedLeft
+}% \tabu@cell@R
+\def\tabu@cell@J{% force justification (ragged2e)
+ \tabu@cell@align
+ {\justifying \tabu@cellleft}
+ {}
+ \justifying
+}% \tabu@cell@J
+\def\tabu@flush#1{%
+ \iftabu@colortbl % colortbl uses \hfill rather than \hfil
+ \hskip \ifnum13<\currentgrouptype \stretch{#1}%
+ \else \ifdim#1pt<\p@ \tabu@cellskip
+ \else \stretch{#1}
+ \fi\fi \relax
+ \else % array.sty
+ \ifnum 13<\currentgrouptype
+ \hfil \hskip1sp \relax \fi
+ \fi
+}% \tabu@flush
+\let\tabu@hfil \hfil
+\let\tabu@hfill \hfill
+\let\tabu@hskip \hskip
+\def\tabu@removehfil{%
+ \iftabu@colortbl
+ \unkern \tabu@cellskip =\lastskip
+ \ifnum\gluestretchorder\tabu@cellskip =\tw@ \hskip-\tabu@cellskip
+ \else \tabu@cellskip \z@skip
+ \fi
+ \else
+ \ifdim\lastskip=1sp\unskip\fi
+ \ifnum\gluestretchorder\lastskip =\@ne
+ \hfilneg % \hfilneg for array.sty but not for colortbl...
+ \fi
+ \fi
+}% \tabu@removehfil
+\def\tabu@ignorehfil{\aftergroup \tabu@nohfil}
+\def\tabu@nohfil{% \hfil -> do nothing + restore original \hfil
+ \def\hfil{\let\hfil \tabu@hfil}% local to (alignment template) group
+}% \tabu@nohfil
+\def\tabu@colortblalignments {% if colortbl
+ \def\tabu@nohfil{%
+ \def\hfil {\let\hfil \tabu@hfil}% local to (alignment template) group
+ \def\hfill {\let\hfill \tabu@hfill}% (colortbl uses \hfill) pfff...
+ \def\hskip ####1\relax{\let\hskip \tabu@hskip}}% local
+}% \tabu@colortblalignments
+%% Taking care of footnotes and hyperfootnotes ----------------------
+\long\def\tabu@footnotetext #1{%
+ \edef\@tempa{\the\tabu@footnotes
+ \noexpand\footnotetext [\the\csname c@\@mpfn\endcsname]}%
+ \global\tabu@footnotes\expandafter{\@tempa {#1}}}%
+\long\def\tabu@xfootnotetext [#1]#2{%
+ \global\tabu@footnotes\expandafter{\the\tabu@footnotes
+ \footnotetext [{#1}]{#2}}}
+\let\tabu@xfootnote \@xfootnote
+\long\def\tabu@Hy@ftntext{\tabu@Hy@ftntxt {\the \c@footnote }}
+\long\def\tabu@Hy@xfootnote [#1]{%
+ \begingroup
+ \value\@mpfn #1\relax
+ \protected@xdef \@thefnmark {\thempfn}%
+ \endgroup
+ \@footnotemark \tabu@Hy@ftntxt {#1}%
+}% \tabu@Hy@xfootnote
+\long\def\tabu@Hy@ftntxt #1#2{%
+ \edef\@tempa{%
+ \the\tabu@footnotes
+ \begingroup
+ \value\@mpfn #1\relax
+ \noexpand\protected@xdef\noexpand\@thefnmark {\noexpand\thempfn}%
+ \expandafter \noexpand \expandafter
+ \tabu@Hy@footnotetext \expandafter{\Hy@footnote@currentHref}%
+ }%
+ \global\tabu@footnotes\expandafter{\@tempa {#2}%
+ \endgroup}%
+}% \tabu@Hy@ftntxt
+\long\def\tabu@Hy@footnotetext #1#2{%
+ \H@@footnotetext{%
+ \ifHy@nesting
+ \hyper@@anchor {#1}{#2}%
+ \else
+ \Hy@raisedlink{%
+ \hyper@@anchor {#1}{\relax}%
+ }%
+ \def\@currentHref {#1}%
+ \let\@currentlabelname \@empty
+ #2%
+ \fi
+ }%
+}% \tabu@Hy@footnotetext
+%% No need for \arraybackslash ! ------------------------------------
+\def\tabu@latextwoe {%
+\def\tabu@temp##1##2##3{{\toks@\expandafter{##2##3}\xdef##1{\the\toks@}}}
+\tabu@temp \tabu@centering \centering \arraybackslash
+\tabu@temp \tabu@raggedleft \raggedleft \arraybackslash
+\tabu@temp \tabu@raggedright \raggedright \arraybackslash
+}% \tabu@latextwoe
+\def\tabu@raggedtwoe {%
+\def\tabu@temp ##1##2##3{{\toks@\expandafter{##2##3}\xdef##1{\the\toks@}}}
+\tabu@temp \tabu@Centering \Centering \arraybackslash
+\tabu@temp \tabu@RaggedLeft \RaggedLeft \arraybackslash
+\tabu@temp \tabu@RaggedRight \RaggedRight \arraybackslash
+\tabu@temp \tabu@justifying \justifying \arraybackslash
+}% \tabu@raggedtwoe
+\def\tabu@normalcrbackslash{\let\\\@normalcr}
+\def\tabu@trivlist{\expandafter\def\expandafter\@trivlist\expandafter{%
+ \expandafter\tabu@normalcrbackslash \@trivlist}}
+%% Utilities: \fbox \fcolorbox and \tabudecimal -------------------
+\def\tabu@fbox {\leavevmode\afterassignment\tabu@beginfbox \setbox\@tempboxa\hbox}
+\def\tabu@beginfbox {\bgroup \kern\fboxsep
+ \bgroup\aftergroup\tabu@endfbox}
+\def\tabu@endfbox {\kern\fboxsep\egroup\egroup
+ \@frameb@x\relax}
+\def\tabu@color@b@x #1#2{\leavevmode \bgroup
+ \def\tabu@docolor@b@x{#1{#2\color@block{\wd\z@}{\ht\z@}{\dp\z@}\box\z@}}%
+ \afterassignment\tabu@begincolor@b@x \setbox\z@ \hbox
+}% \tabu@color@b@x
+\def\tabu@begincolor@b@x {\kern\fboxsep \bgroup
+ \aftergroup\tabu@endcolor@b@x \set@color}
+\def\tabu@endcolor@b@x {\kern\fboxsep \egroup
+ \dimen@\ht\z@ \advance\dimen@ \fboxsep \ht\z@ \dimen@
+ \dimen@\dp\z@ \advance\dimen@ \fboxsep \dp\z@ \dimen@
+ \tabu@docolor@b@x \egroup
+}% \tabu@endcolor@b@x
+%% Corrections (arydshln, delarray, colortbl) -----------------------
+\def\tabu@fix@arrayright {%% \@arrayright is missing from \endarray
+ \iftabu@colortbl
+ \ifdefined\adl@array %
+ \def\tabu@endarray{%
+ \adl@endarray \egroup \adl@arrayrestore \CT@end \egroup %
+ \@arrayright %
+ \gdef\@preamble{}}%
+ \else %
+ \def\tabu@endarray{%
+ \crcr \egroup \egroup %
+ \@arrayright %
+ \gdef\@preamble{}\CT@end}%
+ \fi
+ \else
+ \ifdefined\adl@array %
+ \def\tabu@endarray{%
+ \adl@endarray \egroup \adl@arrayrestore \egroup %
+ \@arrayright %
+ \gdef\@preamble{}}%
+ \else %
+ \PackageWarning{tabu}
+ {\string\@arrayright\space is missing from the
+ \MessageBreak definition of \string\endarray.
+ \MessageBreak Compatibility with delarray.sty is broken.}%
+ \fi\fi
+}% \tabu@fix@arrayright
+\def\tabu@adl@xarraydashrule #1#2#3{%
+ \ifnum\@lastchclass=\adl@class@start\else
+ \ifnum\@lastchclass=\@ne\else
+ \ifnum\@lastchclass=5 \else % @-arg (class 5) and !-arg (class 1)
+ \adl@leftrulefalse \fi\fi % must be treated the same
+ \fi
+ \ifadl@zwvrule\else \ifadl@inactive\else
+ \@addtopreamble{\vrule\@width\arrayrulewidth
+ \@height\z@ \@depth\z@}\fi \fi
+ \ifadl@leftrule
+ \@addtopreamble{\adl@vlineL{\CT@arc@}{\adl@dashgapcolor}%
+ {\number#1}#3}%
+ \else \@addtopreamble{\adl@vlineR{\CT@arc@}{\adl@dashgapcolor}%
+ {\number#2}#3}
+ \fi
+}% \tabu@adl@xarraydashrule
+\def\tabu@adl@act@endpbox {%
+ \unskip \ifhmode \nobreak \fi \@finalstrut \@arstrutbox
+ \egroup \egroup
+ \adl@colhtdp \box\adl@box \hfil
+}% \tabu@adl@act@endpbox
+\def\tabu@adl@fix {%
+ \let\adl@xarraydashrule \tabu@adl@xarraydashrule % arydshln
+ \let\adl@act@endpbox \tabu@adl@act@endpbox % arydshln
+ \let\adl@act@@endpbox \tabu@adl@act@endpbox % arydshln
+ \let\@preamerror \@preamerr % arydshln
+}% \tabu@adl@fix
+%% Correction for longtable' \@startbox definition ------------------
+%% => \everypar is ``missing'' : TeX should be in vertical mode
+\def\tabu@LT@startpbox #1{%
+ \bgroup
+ \let\@footnotetext\LT@p@ftntext
+ \setlength\hsize{#1}%
+ \@arrayparboxrestore
+ \everypar{%
+ \vrule \@height \ht\@arstrutbox \@width \z@
+ \everypar{}}%
+}% \tabu@LT@startpbox
+%% \tracingtabu and the package options ------------------
+\DeclareOption{delarray}{\AtEndOfPackage{\RequirePackage{delarray}}}
+\DeclareOption{linegoal}{%
+ \AtEndOfPackage{%
+ \RequirePackage{linegoal}[2010/12/07]%
+ \let\tabudefaulttarget \linegoal% \linegoal is \linewidth if not pdfTeX
+}}
+\DeclareOption{scantokens}{\tabuscantokenstrue}
+\DeclareOption{debugshow}{\AtEndOfPackage{\tracingtabu=\tw@}}
+\def\tracingtabu {\begingroup\@ifnextchar=%
+ {\afterassignment\tabu@tracing\count@}
+ {\afterassignment\tabu@tracing\count@1\relax}}
+\def\tabu@tracing{\expandafter\endgroup
+ \expandafter\tabu@tr@cing \the\count@ \relax
+}% \tabu@tracing
+\def\tabu@tr@cing #1\relax {%
+ \ifnum#1>\thr@@ \let\tabu@tracinglines\message
+ \else \let\tabu@tracinglines\@gobble
+ \fi
+ \ifnum#1>\tw@ \let\tabu@DBG \tabu@@DBG
+ \def\tabu@mkarstrut {\tabu@DBG@arstrut}%
+ \tabustrutrule 1.5\p@
+ \else \let\tabu@DBG \@gobble
+ \def\tabu@mkarstrut {\tabu@arstrut}%
+ \tabustrutrule \z@
+ \fi
+ \ifnum#1>\@ne \let\tabu@debug \message
+ \else \let\tabu@debug \@gobble
+ \fi
+ \ifnum#1>\z@
+ \let\tabu@message \message
+ \let\tabu@tracing@save \tabu@message@save
+ \let\tabu@starttimer \tabu@pdftimer
+ \else
+ \let\tabu@message \@gobble
+ \let\tabu@tracing@save \@gobble
+ \let\tabu@starttimer \relax
+ \fi
+}% \tabu@tr@cing
+%% Setup \AtBeginDocument
+\AtBeginDocument{\tabu@AtBeginDocument}
+\def\tabu@AtBeginDocument{\let\tabu@AtBeginDocument \@undefined
+ \ifdefined\arrayrulecolor \tabu@colortbltrue %
+ \tabu@colortblalignments % different glues are used
+ \else \tabu@colortblfalse \fi
+ \ifdefined\CT@arc@ \else \let\CT@arc@ \relax \fi
+ \ifdefined\CT@drsc@\else \let\CT@drsc@ \relax \fi
+ \let\tabu@arc@L \CT@arc@ \let\tabu@drsc@L \CT@drsc@
+ \ifodd 1\ifcsname siunitx_table_collect_begin:Nn\endcsname %
+ \expandafter\ifx
+ \csname siunitx_table_collect_begin:Nn\endcsname\relax 0\fi\fi\relax
+ \tabu@siunitxtrue
+ \else \let\tabu@maybesiunitx \@firstofone %
+ \let\tabu@siunitx \tabu@nosiunitx
+ \tabu@siunitxfalse
+ \fi
+ \ifdefined\adl@array %
+ \else \let\tabu@adl@fix \relax
+ \let\tabu@adl@endtrial \@empty \fi
+ \ifdefined\longtable %
+ \else \let\longtabu \tabu@nolongtabu \fi
+ \ifdefined\cellspacetoplimit \tabu@warn@cellspace\fi
+ \csname\ifcsname ifHy@hyperfootnotes\endcsname %
+ ifHy@hyperfootnotes\else iffalse\fi\endcsname
+ \let\tabu@footnotetext \tabu@Hy@ftntext
+ \let\tabu@xfootnote \tabu@Hy@xfootnote \fi
+ \ifdefined\FV@DefineCheckEnd%