├── .gitattributes
├── .gitignore
├── CSharpOsu.sln
├── CSharpOsu
├── CSharpOsu.cs
├── CSharpOsu.csproj
├── Converters
│ ├── ApprovedConvert.cs
│ ├── BoolConvert.cs
│ └── ModsConvert.cs
├── Module
│ ├── Model.cs
│ ├── OsuBeatmap.cs
│ ├── OsuMatch.cs
│ ├── OsuReplay.cs
│ ├── OsuScore.cs
│ ├── OsuUser.cs
│ ├── OsuUserBest.cs
│ └── OsuUserRecent.cs
└── Util
│ ├── BinaryHandler.cs
│ ├── Enums.cs
│ ├── Strings.cs
│ └── Utility.cs
├── Examples
└── Osu-Replay-Compiler
│ └── Osu-Replay-Compiler
│ ├── App.config
│ ├── Osu-Replay-Compiler.csproj
│ ├── Program.cs
│ └── Properties
│ └── AssemblyInfo.cs
├── LICENSE
├── README.md
├── _config.yml
└── docs
├── SearchHelp.aspx
├── SearchHelp.inc.php
├── SearchHelp.php
├── Web.Config
├── WebKI.xml
├── WebTOC.xml
├── fti
├── FTI_100.json
├── FTI_101.json
├── FTI_102.json
├── FTI_103.json
├── FTI_104.json
├── FTI_105.json
├── FTI_106.json
├── FTI_107.json
├── FTI_108.json
├── FTI_109.json
├── FTI_110.json
├── FTI_111.json
├── FTI_112.json
├── FTI_113.json
├── FTI_114.json
├── FTI_115.json
├── FTI_116.json
├── FTI_117.json
├── FTI_118.json
├── FTI_119.json
├── FTI_95.json
├── FTI_97.json
├── FTI_98.json
├── FTI_99.json
└── FTI_Files.json
├── html
├── 00540a1f-b43b-849f-613d-9a402db6b6fe.htm
├── 011b58e1-c751-1e85-8873-a1b71a85de47.htm
├── 0170d10e-31ac-222c-ca36-682e6e710c2e.htm
├── 0212a2fc-ce95-a802-fca9-8a7df73dcb5f.htm
├── 039d032d-fdaa-dd15-96c4-ddc8ae697d5f.htm
├── 03f53d27-1804-df16-1811-dd8161d9ca58.htm
├── 04ff1706-4509-d0ba-6f5e-347142671dda.htm
├── 050e873b-a322-952e-2c55-f7d071a29a17.htm
├── 05b7fc50-3281-4158-024b-d323a083ffcd.htm
├── 05bdaa7a-fd43-4c69-36d9-5c5e4b99eb73.htm
├── 05e28c36-1d21-a902-5a8d-ef13c0061de8.htm
├── 0688eeb5-f96f-a8af-25f6-fad2e9cce1d0.htm
├── 074ec819-946a-1e6b-4825-21fd4aeb2e9a.htm
├── 07f691a8-f43b-14e2-9789-418bef4b71c9.htm
├── 08da0c68-a63c-3beb-24e7-616c391d104c.htm
├── 08e892aa-eb91-37b7-bb01-fa215488b272.htm
├── 0a84eefc-e0fe-b6be-b89b-2ce18ac80ec8.htm
├── 0cc776d8-31da-f68e-e32f-07479afc76cc.htm
├── 0d020578-8eb1-c518-94b5-be57715981ab.htm
├── 0d1aa67e-3ff2-8a7a-3e5b-319ac78bc752.htm
├── 0e1d80f5-25d3-d933-fd58-9c0fa64cd0ec.htm
├── 0e678bdd-2c8a-ccad-b6ec-105c719d7346.htm
├── 0e9f1996-641e-d916-68b8-49eb54bead26.htm
├── 0ef577e0-de68-62c3-ffe9-ad04490cf514.htm
├── 0f889495-a197-c324-09e3-f2eeb173415e.htm
├── 1121b22f-da3a-3ce9-f5ee-1f8e08c4fbbf.htm
├── 1189739e-261d-64af-907f-65f5a518151a.htm
├── 1355ec67-9118-1a41-fcb7-2af922dca15f.htm
├── 171cef80-5ebc-f479-ca32-3b417557b847.htm
├── 182ef957-908a-d456-ddc8-a93f5015e5a2.htm
├── 188a3a82-25e4-0bd5-6c42-c1d4d802621c.htm
├── 197672d6-f13d-5741-ed21-50392b28caf3.htm
├── 1a3cf8bf-3c51-eb26-953a-b029a63ae856.htm
├── 1a47ea24-f09e-2622-1c24-c74ee8bfb3ba.htm
├── 1b5c8aca-d47b-176f-2967-89ab89295e3b.htm
├── 1b5ff63f-ed1d-a8f4-8add-0f91b3d2a933.htm
├── 1bad2b86-c67e-2e8b-9a3f-9e4708a072d7.htm
├── 1be296e3-86e3-9179-5def-2851005df662.htm
├── 1d37cd34-2f82-edc0-672c-4b25ee0f14da.htm
├── 1da00778-0a42-20de-592d-6c5adb29a6fd.htm
├── 21b8fdc6-80d5-6a33-2ff5-68d7c84c1031.htm
├── 21e515ff-7ec7-5acf-2870-d31fc7dd0d33.htm
├── 22502ff7-4ba8-0560-0446-10eaf41dad10.htm
├── 22c2bf1b-e33b-dfec-7a7a-c56d3031241d.htm
├── 22c50749-f121-6672-ec33-d90a8be43d85.htm
├── 23d51bda-59ca-0528-5673-b745be96e7f5.htm
├── 256d9c1c-7a35-13e4-5935-180356c4a892.htm
├── 2588241a-625d-ab4a-efdf-7f05fc0ea824.htm
├── 25e83543-51b7-34d7-cd74-5aa83df931b9.htm
├── 2687fd0d-ff45-54f4-4691-62a12dbf6ca0.htm
├── 28cff653-a905-c15c-7a58-ed925aaa5f45.htm
├── 2ad6aa1a-ebc7-50e1-c688-5a98496975de.htm
├── 2cb91361-1af6-f405-9165-e1dd26e74a21.htm
├── 3119c9f4-6927-c8be-b853-2b6e5f93fea6.htm
├── 31967e26-ab3d-e758-64e3-e67c30b3227b.htm
├── 324dc3ba-c6bb-271d-cb3d-429bc1276de3.htm
├── 34e6dad3-399b-2540-0a15-65c4f20ecd55.htm
├── 35f14b78-29f1-3ed1-1088-1ed87f934fa2.htm
├── 370e3cc5-a776-d27e-9018-5711425f6bfd.htm
├── 38e5932a-622e-4a92-93ad-6f0361eccf39.htm
├── 39f674af-f8c1-ff4b-11d2-1ac415fea2fe.htm
├── 3a076697-3a76-b71d-da2c-bbbaa5d3af75.htm
├── 3a44a954-3c37-ef49-d6e9-c3f25882e7ff.htm
├── 3efe7d46-c58b-5cca-54df-ff038f5c7da1.htm
├── 40823983-0592-59bb-c790-489c46ab6683.htm
├── 41d007de-2006-f48e-2351-0475d4305152.htm
├── 4264b650-b56c-6353-6c9e-03b4825a27c7.htm
├── 439d4e21-9e43-26ea-45f4-0a798a764335.htm
├── 4400f6de-0cc5-c829-7566-bacdb3b07cfb.htm
├── 44843d11-4dac-7d52-6437-e3786c8ea116.htm
├── 47c96d64-0d93-212e-bd81-ab65b2b0963c.htm
├── 485d42ec-13b3-7308-db8d-c4b67ee97970.htm
├── 49bb44b2-8379-008c-3d58-4d0b94eef53f.htm
├── 49f8ce92-a1dd-5cf6-c646-c655ad0346f2.htm
├── 4a631c4a-2a3b-09ee-9aa7-388f6ea5447e.htm
├── 4a80c94b-8b72-4f84-b02d-30d32d893f58.htm
├── 4b1fee5a-46e0-d460-8329-22f4d25aa4d1.htm
├── 4b42f4d3-c5ff-a888-aa22-84abfc2c43f7.htm
├── 4c8f9da0-5781-ad65-02fd-149ec59cdfbb.htm
├── 4d3b7904-9947-f881-b618-0b04cec3b2e7.htm
├── 4daf9623-afe5-72df-c8c3-d1ccbc7be79c.htm
├── 4f920d6c-303c-331d-c53c-fb1b1dac5ed7.htm
├── 50167d01-03d8-d091-7301-f9c9b073032f.htm
├── 50425a07-64da-a2c0-7b14-3c14735b218f.htm
├── 51415f1a-e269-7674-1356-8cc816d3a1b1.htm
├── 52368e2c-9022-4787-57aa-dbf8a20617d9.htm
├── 52f521da-0e73-6c9b-1a5b-1429d85749e8.htm
├── 56cfd8e2-7c03-af9e-1db9-966cf7705b2d.htm
├── 58bcebb5-1f47-f6d3-709f-f3e387915de0.htm
├── 593a6f64-b2d6-02fc-2f6b-c552f1aa7822.htm
├── 59a8dbe1-a0a4-65ab-51a1-313baf1ecd6a.htm
├── 5a6a779c-3422-8aa3-b811-ea1322e975b1.htm
├── 5c4f5a44-10da-5fd1-ffa6-b2e24570412a.htm
├── 5c76ebcc-b36b-ce5e-736b-406b647981c6.htm
├── 5cdb2860-f626-94cd-810e-77a52c1cfd74.htm
├── 5de845a5-52e6-a4b1-bfa7-23311809370f.htm
├── 5fab97a2-4bef-bd38-5cac-d471adbcd775.htm
├── 6035e0ba-39eb-9406-2a5d-08adb9928e1d.htm
├── 61dada65-40d9-93b4-03b6-23c343a97fad.htm
├── 62728b22-849e-0005-a00e-fadabbeb3e88.htm
├── 654bc424-4e21-3edd-6a3f-7b9c1430a149.htm
├── 6583ee86-b8df-ee5c-1316-45be8058bf23.htm
├── 658a6483-4dac-4db7-4fa1-4606d4286c59.htm
├── 66c3f42a-e84f-452a-3c73-7a553f17e754.htm
├── 675fe54d-a091-1bff-8efe-0d24972e2c45.htm
├── 684dc2b6-0f24-68e8-cfee-fa5dc9222e43.htm
├── 68a18509-850c-1592-1970-f9cd5364ab81.htm
├── 690718e7-1ec6-3d05-cf54-7983c208ba30.htm
├── 69c10542-97ea-dad0-10ea-2db7f78d5d44.htm
├── 6ab545f4-f5eb-8094-6658-1e2bf36e4247.htm
├── 6b87b4c5-8aea-cbe7-1e40-7273fb085127.htm
├── 6c88f2a1-70ed-710b-1c56-302787675869.htm
├── 6d76a6c9-5f1d-33a7-1264-c1a51b40eb4a.htm
├── 6e5f9dd8-fce8-a7ae-db88-eccc3a8c3d0b.htm
├── 7176f140-e070-999d-3f1e-45f101d6fbda.htm
├── 719ebcbb-f4f0-a521-0380-ca7a8b970f55.htm
├── 7246f690-3efe-929a-8b1c-0ccfe56f474f.htm
├── 756bcb21-5ee5-2518-b313-c52566ea6405.htm
├── 7620a833-c879-d877-330e-2d52a2227c88.htm
├── 76a474ff-96e5-fb90-b61f-3b4366a16175.htm
├── 7724eea4-fdcf-9da8-feb9-0ea26bedae6a.htm
├── 783ec537-4e1c-87c1-fe4e-dbd349ea2229.htm
├── 7a674a75-a95f-5c4f-b880-b0a2b5386251.htm
├── 7b35ee17-80f6-3079-9bf4-10795ce16ed0.htm
├── 7b8b4d5e-581e-33ce-3be8-df840c5a2db5.htm
├── 7cde2ad4-9720-393b-b57d-1cd7de70d705.htm
├── 7d4e9008-2c8c-c7e9-e0af-7b61401302e6.htm
├── 7d7e1f6f-fd9f-fe1e-58d5-c80b4d403a1a.htm
├── 7d91ac74-3029-4c8b-dc52-72de6135723c.htm
├── 7d96a975-3ab9-7c64-3f68-867036bc8560.htm
├── 7d994de7-3c99-4848-de06-3dcdf4381048.htm
├── 7e5dab30-2c98-f835-78de-ea949153f42c.htm
├── 7e916232-5ecd-9145-a74a-e9d3a4f352cb.htm
├── 7f67c7df-3c51-00e1-1228-841e79fccb60.htm
├── 7f7e3734-7524-1815-6c19-740c18e57160.htm
├── 7f9c5ab8-91f7-9ba6-8cdd-0848cee5603f.htm
├── 7fd48a03-a155-47a3-591e-7b27c07e38da.htm
├── 80a8f108-1a5f-ca5d-5d96-6fba03da8c02.htm
├── 80aced1b-55e3-37d1-9597-4aa1e4fe821a.htm
├── 826b0229-4c91-6c89-d018-df298c6882c2.htm
├── 83f4b57e-4d57-cfec-ff27-554b74ea7413.htm
├── 8587745f-58f9-c0b2-a7eb-45c2927099eb.htm
├── 858f87c8-172f-ee3d-1050-ec7e846fa080.htm
├── 865c2134-c50c-5460-b85c-269f4bd78ea7.htm
├── 87340d89-d679-f635-5d2b-1563dcff10a3.htm
├── 886c4335-74df-dc77-7de0-bdde37d35fda.htm
├── 88ddb0f4-2525-c2b2-0cc6-e64e65815830.htm
├── 8ac98b6b-cdd9-206d-a8e0-d5619a73ff3f.htm
├── 8ad4288f-3a38-2ae4-8975-766c4d13d2ed.htm
├── 8c4a6fae-35fb-b1fb-7990-801c534190b5.htm
├── 8d43a793-d9b7-ebc7-ed52-618878c177d6.htm
├── 8d9c9cb9-6ec1-0ad9-b388-220a3289a61b.htm
├── 8e16a07e-87e4-918e-1fbd-ba6b4f99d6d7.htm
├── 8e40ac07-ec52-4424-22ce-930ce3fe6df6.htm
├── 8e69f29b-0c54-b5fb-69b3-f158059d8aaa.htm
├── 8efc8e28-bff8-e09e-f86a-7b62c2f6ff95.htm
├── 8f644080-e58c-c8ad-bef6-cd7c66e4d0ea.htm
├── 90646cfd-c042-3516-06d6-80aac71b852d.htm
├── 90865df8-e100-609f-b0d5-eedf033577f2.htm
├── 90fa92b3-f3a1-068c-0780-849cf4d7a7d9.htm
├── 91196e53-0387-6bf7-8b5f-fbc2718cae14.htm
├── 9148ff12-c054-8b67-a988-dae69b96b5dc.htm
├── 917acca6-866c-5b42-3cf1-5713aa5ab1ee.htm
├── 9376c6f1-f961-0b37-20ab-efd05856398b.htm
├── 93ae7eac-7b49-6911-4dd5-50e7d70e32b5.htm
├── 940e2da5-6928-a3bc-ac87-b39c94dadb16.htm
├── 9580d069-4953-b16d-e833-3a40808d849f.htm
├── 96638815-020e-d745-5e0d-6748b85d4bb9.htm
├── 96da6bb5-239a-89d1-1fbf-0eb158b2b6db.htm
├── 96ea8260-bd6b-6351-d27b-9ab515583ab3.htm
├── 9737d269-0220-aa44-ad72-ecb3e84ae0b5.htm
├── 9800d1f9-ffa2-2e19-06c0-57fb4d171519.htm
├── 9ad9cf2c-20dc-13f5-ad5e-d8084f29c63f.htm
├── 9c907bb9-756a-a283-5533-a26a937ed6a1.htm
├── 9d3369dd-170f-fc86-e7be-198d0f7d3505.htm
├── 9f7aca55-f030-6eb0-6bdd-2a897c087a96.htm
├── GeneralError.htm
├── PageNotFound.htm
├── a0cc9a0c-9fae-83a0-b78e-4119edd8f2a4.htm
├── a33e8d10-ae51-d6a7-72c2-a7cfa45c9608.htm
├── a40d26e1-bbde-d36b-0628-58f12e28533a.htm
├── a4ed9548-832c-3d9d-c81a-8a7bb00ecc6a.htm
├── a5e1f604-ab51-f0db-805c-be221614acbd.htm
├── a8932693-6e51-145b-f02b-7581d86e4e27.htm
├── aa414526-6edd-5cb6-e665-4be53d71c634.htm
├── aa93259c-7c9a-5aaa-6a7a-5ac889f055e1.htm
├── aae770bc-2b46-5334-c2df-d7e00ab9eb7d.htm
├── ab8064b6-a168-480b-b8d5-b29a6e4fa934.htm
├── abd9e6c2-101f-5163-6274-a1c0d0ccb552.htm
├── ad0c2df0-0aa3-3236-16da-8dd78734ca10.htm
├── ad353c14-5383-ed08-3224-ed2fb6ebc532.htm
├── ad55f0dd-0026-e9c7-d8f1-1534769d7537.htm
├── ae16a85d-8852-9366-9fcd-48b46cccf73e.htm
├── af3e6f52-6dd3-ca03-a041-7e6609b88f2e.htm
├── af78f2c8-7bec-cb0e-cba2-1bf256d72614.htm
├── b08ac4b9-8363-84b1-67a0-4efae59c3aae.htm
├── b0ca4bc7-7a2f-1c23-6a1f-7b207afffcca.htm
├── b1890466-a751-7d2c-0619-a3263f616ffe.htm
├── b1ddc823-6d06-9016-b09d-b2b1388c042a.htm
├── b22d08d1-baef-345b-f043-b87d96d22dd0.htm
├── b24c17e4-4ade-4241-fbc9-ae9fb7de45b0.htm
├── b2988e42-25bf-b3d7-1590-825d9f7b93b8.htm
├── b37adc63-bfa6-a001-a2be-e514464e74f5.htm
├── b45fb1d7-53bb-8e27-e145-dfb8a494383f.htm
├── b4e3b7b7-8a33-35be-84be-8d02523b7687.htm
├── b4e9f5ed-34c8-7649-d398-66d98bbc32a8.htm
├── b59e4ff0-0672-5a7f-27a1-b148f1b1e33a.htm
├── b7123852-aae6-bfc1-7521-b21ed0cc8fb9.htm
├── b74ad381-5a71-0c1d-93ec-795d620b3899.htm
├── b8305d66-0b91-8a2d-175c-13057a281a2a.htm
├── b9801dc4-e75a-4326-743a-733bac9c28f2.htm
├── b9de971b-f96d-2508-bcf1-2986055b6fbb.htm
├── b9f5cd13-463c-0702-b188-c69bb5beb848.htm
├── ba00559d-ec23-76a5-e8ec-60aa75ea2b9c.htm
├── ba12ed92-1980-094c-361c-3ae8348c5db8.htm
├── bc0215a0-9829-526f-96ef-890b6dfdee6a.htm
├── bc81e4e8-f4fa-1f6d-6a95-914614726b1a.htm
├── bcc7c410-ebf8-d7fa-6fe1-1dd342310495.htm
├── bd11609c-463a-905d-57a4-934d74b103d7.htm
├── bd1c2f4b-c65c-c9d9-3ecb-fbd6f57c37f0.htm
├── bf78b5b4-d404-0c89-65a6-22dea7418957.htm
├── c1360f53-bcfe-9d56-9a3d-5e0c9b7f2af4.htm
├── c14f6514-56e6-ea63-a911-f93540adc74a.htm
├── c1d8b86c-a052-d900-90bc-6cfb8c63f5e5.htm
├── c20832f2-3a95-70c4-5a41-aa089128c87a.htm
├── c25194b5-0975-18ac-ccc6-4088c96a9031.htm
├── c3183b80-eae9-2210-4247-46fe36f095fd.htm
├── c33316da-52cb-385d-a17b-7be4387e7ed1.htm
├── c5137dbf-9b0d-c986-995d-a5e52238a06b.htm
├── c622d6f3-5168-1811-ca3f-e0a54cee170e.htm
├── c644cdfa-572e-beda-b1bc-ecddcead3c98.htm
├── c772a17c-470a-7f99-da38-78e5ab5d4069.htm
├── c82933da-c608-0eec-7701-9b7ad49b831e.htm
├── c8852fd0-3280-e21e-b037-e7b45caf546f.htm
├── c9a09671-4aa1-a92d-1e68-80439314f1b6.htm
├── c9d05cd2-1d9d-0d14-bef7-a05205fdc567.htm
├── ca5cbfa5-d710-3f0b-b104-856a5f9a9398.htm
├── cb76fd49-2e15-0ba8-43c3-09f67c62cfaa.htm
├── cd663f80-1dc6-04d3-5eae-1b20ef46d6f4.htm
├── cd9d4573-1436-a9f1-de19-6ca16864f98b.htm
├── ce57610e-4e26-abb3-c259-cf2212c3ff73.htm
├── ce58e85b-7590-12f7-4edd-0c89cd945969.htm
├── cea6bdde-c8d6-e50a-48ca-4a9da23480c1.htm
├── ceea4e77-829f-0d25-15da-f389947d8794.htm
├── d086e133-c0fc-15aa-eac3-548cc8ada863.htm
├── d1e255b6-33f9-16bc-d6cc-c8becba4f496.htm
├── d23f730e-8cf7-a5e3-34af-cedf74adbe17.htm
├── d540f320-1267-dcfd-9dce-575b96d23d88.htm
├── d6307973-e05a-51ba-9941-0b5f96ca86a0.htm
├── d791ef97-c5fb-f280-0454-bc32ae9b2fbb.htm
├── d8757481-3f87-52ca-6148-4d5514add87a.htm
├── d97c4bed-8909-abe8-e394-d880d0772377.htm
├── dac18e8e-d78d-a206-9c8d-a64770696720.htm
├── dba6963b-bedb-820c-d443-2fa1cbaaff88.htm
├── dc514001-7c68-af28-153d-f93679a2d4c7.htm
├── dcbb05a3-5e4d-df19-959f-18cd4078e81f.htm
├── dcc1a1d0-f9e1-55ca-0cc3-4375cf79db87.htm
├── dcd08b1a-3a34-7358-bf9d-d095544b3706.htm
├── de817cc4-a22a-c12d-7595-1d9a8e957ac2.htm
├── e028eacc-62b2-d7f6-3f48-039bba353904.htm
├── e0f51417-b059-3859-5c44-1788eb62e635.htm
├── e26e3330-404a-3541-819e-0a5c6cf732de.htm
├── e30b8c62-47a5-fd84-8736-e9a23a390365.htm
├── e3bb76f3-f7d0-bb9e-efa9-eae810acb7ae.htm
├── e59b7af3-1b11-be11-981d-5c252ae7be5f.htm
├── e6d08d5c-642d-22ae-3af5-93e87f001302.htm
├── e7814ef5-71d9-77b8-a519-eeb2cbc155e6.htm
├── e8a1e289-9162-e85c-9f39-6e4b76638134.htm
├── e8a8c59c-89e1-3ce0-1ba7-e24d48abc755.htm
├── e9df7179-0c85-1319-7eb3-0c6740710452.htm
├── eb09fb43-bc31-823c-6bbc-e4d434a09138.htm
├── eb71d2b3-ff4d-452b-2a16-a05403b8748b.htm
├── eba71c61-3fb9-65b0-909f-12497d7daabb.htm
├── ec0d5324-faea-102c-026b-1f2dbc1ced98.htm
├── edbdf51e-0028-fe3a-9e6a-390c45872809.htm
├── f0190191-76da-9ee4-0fc5-910d1317176b.htm
├── f10245de-ba17-5e95-4da1-616545ed3eee.htm
├── f1320318-9f5c-1d80-5ef9-7eeae114385d.htm
├── f22f1425-dcb4-08c7-f0ec-515da0db16df.htm
├── f32a513e-1fd6-b291-a63b-b2a3aecd5233.htm
├── f4356d19-a566-dc5f-8110-5da4e0f8f2a4.htm
├── f4cf982e-c269-500e-efae-8e6ac9e38e0a.htm
├── f5b385ba-540e-2ec4-a401-2e3efef57886.htm
├── f6e61fa0-75b2-8e25-c963-0941278ab4d6.htm
├── f9a16a45-d490-c5cb-e3c4-990f656213d1.htm
├── f9f8bb65-da43-386f-6cb8-32c32b9bdaf0.htm
├── fd2833dc-fdd3-2de7-c814-185b41c265b9.htm
├── fe20c4c8-2e9e-c8d8-7ab9-269f8e65d8fb.htm
└── introduction.htm
├── icons
├── AlertCaution.png
├── AlertNote.png
├── AlertSecurity.png
├── CFW.gif
├── CodeExample.png
├── Help.png
├── Search.png
├── SectionCollapsed.png
├── SectionExpanded.png
├── TocClose.gif
├── TocCollapsed.gif
├── TocExpanded.gif
├── TocOpen.gif
├── favicon.ico
├── privclass.gif
├── privdelegate.gif
├── privenumeration.gif
├── privevent.gif
├── privextension.gif
├── privfield.gif
├── privinterface.gif
├── privmethod.gif
├── privproperty.gif
├── privstructure.gif
├── protclass.gif
├── protdelegate.gif
├── protenumeration.gif
├── protevent.gif
├── protextension.gif
├── protfield.gif
├── protinterface.gif
├── protmethod.gif
├── protoperator.gif
├── protproperty.gif
├── protstructure.gif
├── pubclass.gif
├── pubdelegate.gif
├── pubenumeration.gif
├── pubevent.gif
├── pubextension.gif
├── pubfield.gif
├── pubinterface.gif
├── pubmethod.gif
├── puboperator.gif
├── pubproperty.gif
├── pubstructure.gif
├── slMobile.gif
├── static.gif
└── xna.gif
├── index.html
├── scripts
├── branding-Website.js
├── branding.js
├── clipboard.min.js
└── jquery-3.3.1.min.js
├── search.html
├── styles
├── branding-Help1.css
├── branding-HelpViewer.css
├── branding-Website.css
├── branding-cs-CZ.css
├── branding-de-DE.css
├── branding-en-US.css
├── branding-es-ES.css
├── branding-fr-FR.css
├── branding-it-IT.css
├── branding-ja-JP.css
├── branding-ko-KR.css
├── branding-pl-PL.css
├── branding-pt-BR.css
├── branding-ru-RU.css
├── branding-tr-TR.css
├── branding-zh-CN.css
├── branding-zh-TW.css
└── branding.css
└── toc
├── 050e873b-a322-952e-2c55-f7d071a29a17.xml
├── 05bdaa7a-fd43-4c69-36d9-5c5e4b99eb73.xml
├── 0688eeb5-f96f-a8af-25f6-fad2e9cce1d0.xml
├── 07f691a8-f43b-14e2-9789-418bef4b71c9.xml
├── 0a84eefc-e0fe-b6be-b89b-2ce18ac80ec8.xml
├── 0d1aa67e-3ff2-8a7a-3e5b-319ac78bc752.xml
├── 0f889495-a197-c324-09e3-f2eeb173415e.xml
├── 1d37cd34-2f82-edc0-672c-4b25ee0f14da.xml
├── 22c50749-f121-6672-ec33-d90a8be43d85.xml
├── 23d51bda-59ca-0528-5673-b745be96e7f5.xml
├── 25e83543-51b7-34d7-cd74-5aa83df931b9.xml
├── 31967e26-ab3d-e758-64e3-e67c30b3227b.xml
├── 3a44a954-3c37-ef49-d6e9-c3f25882e7ff.xml
├── 3efe7d46-c58b-5cca-54df-ff038f5c7da1.xml
├── 41d007de-2006-f48e-2351-0475d4305152.xml
├── 4400f6de-0cc5-c829-7566-bacdb3b07cfb.xml
├── 4a631c4a-2a3b-09ee-9aa7-388f6ea5447e.xml
├── 4b42f4d3-c5ff-a888-aa22-84abfc2c43f7.xml
├── 52f521da-0e73-6c9b-1a5b-1429d85749e8.xml
├── 593a6f64-b2d6-02fc-2f6b-c552f1aa7822.xml
├── 59a8dbe1-a0a4-65ab-51a1-313baf1ecd6a.xml
├── 5c76ebcc-b36b-ce5e-736b-406b647981c6.xml
├── 654bc424-4e21-3edd-6a3f-7b9c1430a149.xml
├── 6583ee86-b8df-ee5c-1316-45be8058bf23.xml
├── 66c3f42a-e84f-452a-3c73-7a553f17e754.xml
├── 6b87b4c5-8aea-cbe7-1e40-7273fb085127.xml
├── 7724eea4-fdcf-9da8-feb9-0ea26bedae6a.xml
├── 7a674a75-a95f-5c4f-b880-b0a2b5386251.xml
├── 7cde2ad4-9720-393b-b57d-1cd7de70d705.xml
├── 7e5dab30-2c98-f835-78de-ea949153f42c.xml
├── 8e69f29b-0c54-b5fb-69b3-f158059d8aaa.xml
├── 8f644080-e58c-c8ad-bef6-cd7c66e4d0ea.xml
├── 91196e53-0387-6bf7-8b5f-fbc2718cae14.xml
├── 9148ff12-c054-8b67-a988-dae69b96b5dc.xml
├── 93ae7eac-7b49-6911-4dd5-50e7d70e32b5.xml
├── a33e8d10-ae51-d6a7-72c2-a7cfa45c9608.xml
├── aa93259c-7c9a-5aaa-6a7a-5ac889f055e1.xml
├── ab8064b6-a168-480b-b8d5-b29a6e4fa934.xml
├── ae16a85d-8852-9366-9fcd-48b46cccf73e.xml
├── b0ca4bc7-7a2f-1c23-6a1f-7b207afffcca.xml
├── b8305d66-0b91-8a2d-175c-13057a281a2a.xml
├── b9801dc4-e75a-4326-743a-733bac9c28f2.xml
├── c644cdfa-572e-beda-b1bc-ecddcead3c98.xml
├── ca5cbfa5-d710-3f0b-b104-856a5f9a9398.xml
├── d1e255b6-33f9-16bc-d6cc-c8becba4f496.xml
├── e028eacc-62b2-d7f6-3f48-039bba353904.xml
├── e6d08d5c-642d-22ae-3af5-93e87f001302.xml
├── e9df7179-0c85-1319-7eb3-0c6740710452.xml
├── eb09fb43-bc31-823c-6bbc-e4d434a09138.xml
├── f1320318-9f5c-1d80-5ef9-7eeae114385d.xml
├── f4cf982e-c269-500e-efae-8e6ac9e38e0a.xml
└── roottoc.xml
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
3 |
4 | # Custom for Visual Studio
5 | *.cs diff=csharp
6 |
7 | # Standard to msysgit
8 | *.doc diff=astextplain
9 | *.DOC diff=astextplain
10 | *.docx diff=astextplain
11 | *.DOCX diff=astextplain
12 | *.dot diff=astextplain
13 | *.DOT diff=astextplain
14 | *.pdf diff=astextplain
15 | *.PDF diff=astextplain
16 | *.rtf diff=astextplain
17 | *.RTF diff=astextplain
18 |
--------------------------------------------------------------------------------
/CSharpOsu.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio Version 16
4 | VisualStudioVersion = 16.0.28729.10
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CSharpOsu", "CSharpOsu\CSharpOsu.csproj", "{3108AE4A-DE35-40AE-A449-1EFB9719367D}"
7 | EndProject
8 | Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Osu-Replay-Compiler", "Examples\Osu-Replay-Compiler\Osu-Replay-Compiler\Osu-Replay-Compiler.csproj", "{FAC3FB6E-FAE8-42D1-B74E-6C7248A6F208}"
9 | EndProject
10 | Global
11 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
12 | Debug|Any CPU = Debug|Any CPU
13 | Release|Any CPU = Release|Any CPU
14 | EndGlobalSection
15 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
16 | {3108AE4A-DE35-40AE-A449-1EFB9719367D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
17 | {3108AE4A-DE35-40AE-A449-1EFB9719367D}.Debug|Any CPU.Build.0 = Debug|Any CPU
18 | {3108AE4A-DE35-40AE-A449-1EFB9719367D}.Release|Any CPU.ActiveCfg = Release|Any CPU
19 | {3108AE4A-DE35-40AE-A449-1EFB9719367D}.Release|Any CPU.Build.0 = Release|Any CPU
20 | {FAC3FB6E-FAE8-42D1-B74E-6C7248A6F208}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
21 | {FAC3FB6E-FAE8-42D1-B74E-6C7248A6F208}.Debug|Any CPU.Build.0 = Debug|Any CPU
22 | {FAC3FB6E-FAE8-42D1-B74E-6C7248A6F208}.Release|Any CPU.ActiveCfg = Release|Any CPU
23 | {FAC3FB6E-FAE8-42D1-B74E-6C7248A6F208}.Release|Any CPU.Build.0 = Release|Any CPU
24 | EndGlobalSection
25 | GlobalSection(SolutionProperties) = preSolution
26 | HideSolutionNode = FALSE
27 | EndGlobalSection
28 | GlobalSection(ExtensibilityGlobals) = postSolution
29 | SolutionGuid = {791F4123-5722-4219-9EF1-7C8E2735582D}
30 | EndGlobalSection
31 | EndGlobal
32 |
--------------------------------------------------------------------------------
/CSharpOsu/CSharpOsu.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netstandard2.0
5 | preview
6 |
7 |
8 |
9 | \bin\Debug\CSharpOsu.xml
10 | 1701;1702;1591
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/CSharpOsu/Converters/ApprovedConvert.cs:
--------------------------------------------------------------------------------
1 | using CSharpOsu.Util.Enums;
2 | using Newtonsoft.Json;
3 | using System;
4 |
5 | namespace CSharpOsu.Util.Converters
6 | {
7 | // Thanks to Game4all and his circles.NET project (https://github.com/Game4all/circles.NET)
8 | public class ApprovedConvert : JsonConverter
9 | {
10 | public ApprovedConvert()
11 | {
12 | }
13 |
14 | public override bool CanConvert(Type objectType)
15 | {
16 | throw new NotImplementedException();
17 | }
18 |
19 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) => (ApprovedStatus)int.Parse((string)reader.Value);
20 |
21 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
22 | {
23 | throw new NotImplementedException();
24 | }
25 | }
26 | }
--------------------------------------------------------------------------------
/CSharpOsu/Converters/BoolConvert.cs:
--------------------------------------------------------------------------------
1 | using Newtonsoft.Json;
2 | using System;
3 |
4 | namespace CSharpOsu.Util.Converters
5 | {
6 | // Thanks to Game4all and his circles.NET project (https://github.com/Game4all/circles.NET)
7 | internal class BoolConvert : JsonConverter
8 | {
9 | public BoolConvert()
10 | {
11 | }
12 |
13 | public override bool CanConvert(Type objectType) => true;
14 |
15 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
16 | {
17 | var value = Convert.ToInt32(reader.Value);
18 | bool boolValue = value != 0;
19 | return boolValue;
20 | }
21 |
22 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
23 | {
24 | throw new NotImplementedException();
25 | }
26 | }
27 | }
--------------------------------------------------------------------------------
/CSharpOsu/Converters/ModsConvert.cs:
--------------------------------------------------------------------------------
1 | using CSharpOsu.Util.Enums;
2 | using Newtonsoft.Json;
3 | using System;
4 | using System.Collections.Generic;
5 | using System.Linq;
6 |
7 | namespace CSharpOsu.Util.Converters
8 | {
9 | // Thanks to Game4all and his circles.NET project (https://github.com/Game4all/circles.NET)
10 | public class ModsConvert : JsonConverter
11 | {
12 | public ModsConvert()
13 | {
14 | }
15 |
16 | public override bool CanConvert(Type objectType)
17 | {
18 | if (objectType == typeof(Mods[]))
19 | return true;
20 | else
21 | return false;
22 | }
23 |
24 | public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
25 | {
26 | var encodedFlags = int.Parse((string)reader.Value);
27 | return GetUniqueFlags((Mods)encodedFlags);
28 | }
29 |
30 | public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
31 | {
32 | throw new NotImplementedException();
33 | }
34 | private Mods[] GetUniqueFlags(Mods flags)
35 | {
36 | ulong flag = 1;
37 | var mods = new List();
38 | foreach (var value in System.Enum.GetValues(flags.GetType()).Cast())
39 | {
40 | ulong bits = Convert.ToUInt64(value);
41 | while (flag < bits)
42 | {
43 | flag <<= 1;
44 | }
45 |
46 | if (flag == bits && flags.HasFlag(value))
47 | {
48 | mods.Add(value);
49 | }
50 | }
51 |
52 | if (mods.Contains(Mods.DoubleTime) && mods.Contains(Mods.Nightcore))
53 | {
54 | mods.RemoveAll((s) => s == Mods.DoubleTime || s == Mods.Nightcore);
55 | mods.Add(Mods.Nightcore);
56 | }
57 | if (mods.Contains(Mods.SuddenDeath) && mods.Contains(Mods.Perfect))
58 | {
59 | mods.RemoveAll((s) => s == Mods.SuddenDeath || s == Mods.Perfect);
60 | mods.Add(Mods.Perfect);
61 | }
62 |
63 | return mods.ToArray();
64 | }
65 | }
66 | }
67 |
--------------------------------------------------------------------------------
/CSharpOsu/Module/Model.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace CSharpOsu.Module
8 | {
9 | public interface Model
10 | {
11 | string error { get; set; }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/CSharpOsu/Module/OsuBeatmap.cs:
--------------------------------------------------------------------------------
1 | using CSharpOsu.Util.Converters;
2 | using CSharpOsu.Util.Enums;
3 | using Newtonsoft.Json;
4 | using System;
5 | using System.Collections.Generic;
6 | using System.Linq;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace CSharpOsu.Module
11 | {
12 | public class OsuBeatmap : Model
13 | {
14 | public long beatmapset_id { get; set; }
15 | public long beatmap_id { get; set; }
16 | [JsonConverter(typeof(ApprovedConvert))]
17 | public ApprovedStatus approved { get; set; }
18 | public int total_length { get; set; }
19 | public int hit_length { get; set; }
20 | ///
21 | /// This is the version documented from osu!api.
22 | ///
23 | [JsonProperty(PropertyName = "version")]
24 | public string difficulty { get; set; }
25 | [JsonProperty(PropertyName = "file_md5")]
26 | public string MD5 { get; set; }
27 | [JsonProperty(PropertyName = "diff_size")]
28 | public float CS { get; set; }
29 | [JsonProperty(PropertyName = "diff_overall")]
30 | public float OD { get; set; }
31 | [JsonProperty(PropertyName = "diff_approach")]
32 | public float AR { get; set; }
33 | [JsonProperty(PropertyName = "diff_drain")]
34 | public float HP { get; set; }
35 | public mode mode { get; set; }
36 | public DateTime? submit_date { get; set; }
37 | public DateTime? approved_date { get; set; }
38 | public DateTime last_update { get; set; }
39 | public string artist { get; set; }
40 | public string title { get; set; }
41 | public string creator { get; set; }
42 | public string creator_id { get; set; }
43 | public float bpm { get; set; }
44 | public string source { get; set; }
45 | public string tags { get; set; }
46 | public string genre_id { get; set; }
47 | public string language_id { get; set; }
48 | public int favourite_count { get; set; }
49 | public float rating { get; set; }
50 | public int playcount { get; set; }
51 | public int passcount { get; set; }
52 | public int? max_combo { get; set; }
53 | [JsonProperty(PropertyName = "difficultyrating")]
54 | public float StarRating { get; set; }
55 | [JsonProperty(PropertyName = "diff_aim")]
56 | public float? AimRating { get; set; }
57 | [JsonProperty(PropertyName = "diff_speed")]
58 | public float? SpeedRating { get; set; }
59 | [JsonProperty(PropertyName = "count_normal")]
60 | public int CountNormal { get; set; }
61 | [JsonProperty(PropertyName = "count_slider")]
62 | public int CountSlider { get; set; }
63 | [JsonProperty(PropertyName = "count_spinner")]
64 | public int CountSpinner { get; set; }
65 | [JsonProperty(PropertyName = "artist_unicode")]
66 | public string ArtistUnicode { get; set; }
67 | [JsonProperty(PropertyName = "title_unicode")]
68 | public string TitleUnicode { get; set; }
69 | [JsonConverter(typeof(BoolConvert))]
70 | [JsonProperty(PropertyName = "storyboard")]
71 | public bool HasStoryboard { get; set; }
72 | [JsonConverter(typeof(BoolConvert))]
73 | [JsonProperty(PropertyName = "video")]
74 | public bool HasVideo { get; set; }
75 | [JsonConverter(typeof(BoolConvert))]
76 | [JsonProperty(PropertyName = "download_unavailable")]
77 | public bool DownloadUnavailable { get; set; }
78 | [JsonConverter(typeof(BoolConvert))]
79 | [JsonProperty(PropertyName = "audio_unavailable")]
80 | public bool AudioUnavailable { get; set; }
81 | public string Packs { get; set; }
82 | public string thumbnail { get; set; }
83 | public string beatmapset_url { get; set; }
84 | public string beatmap_url { get; set; }
85 | public string download { get; set; }
86 | public string download_no_video { get; set; }
87 | public string osu_direct { get; set; }
88 | public string error { get; set; }
89 | }
90 | }
91 |
--------------------------------------------------------------------------------
/CSharpOsu/Module/OsuMatch.cs:
--------------------------------------------------------------------------------
1 | using CSharpOsu.Util.Converters;
2 | using CSharpOsu.Util.Enums;
3 | using Newtonsoft.Json;
4 | using System;
5 | using System.Collections.Generic;
6 | using System.Linq;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace CSharpOsu.Module
11 | {
12 | public class Match
13 | {
14 | public long match_id { get; set; }
15 | public string name { get; set; }
16 | public DateTime start_time { get; set; }
17 | public DateTime? end_time { get; set; }
18 | }
19 |
20 | public class Score
21 | {
22 | public short slot { get; set; }
23 | public short team { get; set; }
24 | public long user_id { get; set; }
25 | public int score { get; set; }
26 | public int maxcombo { get; set; }
27 | public string rank { get; set; }
28 | public long count50 { get; set; }
29 | public long count100 { get; set; }
30 | public long count300 { get; set; }
31 | public long countmiss { get; set; }
32 | public long countkatu { get; set; }
33 | public long countgeki { get; set; }
34 | [JsonConverter(typeof(BoolConvert))]
35 | public bool perfect { get; set; }
36 | [JsonConverter(typeof(BoolConvert))]
37 | public bool pass { get; set; }
38 | }
39 |
40 | public class Game
41 | {
42 | public long game_id { get; set; }
43 | public DateTime start_time { get; set; }
44 | public DateTime? end_time { get; set; }
45 | public long beatmap_id { get; set; }
46 | public mode play_mode { get; set; }
47 | public string match_type { get; set; }
48 | public string scoring_type { get; set; }
49 | public string team_type { get; set; }
50 |
51 | [JsonConverter(typeof(ModsConvert))]
52 | public Mods[] mods { get; set; }
53 |
54 | public List scores { get; set; }
55 | }
56 |
57 | public class OsuMatch : Model
58 | {
59 | public Match match { get; set; }
60 | public List games { get; set; }
61 | public string error { get; set; }
62 | }
63 | }
64 |
--------------------------------------------------------------------------------
/CSharpOsu/Module/OsuReplay.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace CSharpOsu.Module
8 | {
9 | public class OsuReplay: Model
10 | {
11 | public string content { get; set; }
12 | public string encoding { get; set; }
13 | public string error { get; set; }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/CSharpOsu/Module/OsuScore.cs:
--------------------------------------------------------------------------------
1 | using CSharpOsu.Util.Converters;
2 | using CSharpOsu.Util.Enums;
3 | using Newtonsoft.Json;
4 | using System;
5 | using System.Collections.Generic;
6 | using System.Linq;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace CSharpOsu.Module
11 | {
12 | public class OsuScore : Model
13 | {
14 | public long score_id { get; set; }
15 | public int score { get; set; }
16 | public string username { get; set; }
17 | public long count50 { get; set; }
18 | public long count100 { get; set; }
19 | public long count300 { get; set; }
20 | public long countmiss { get; set; }
21 | public short maxcombo { get; set; }
22 | public long countkatu { get; set; }
23 | public long countgeki { get; set; }
24 | [JsonConverter(typeof(BoolConvert))]
25 | public bool perfect { get; set; }
26 |
27 | [JsonConverter(converterType: typeof(ModsConvert))]
28 | public Mods[] enabled_mods { get; set; }
29 |
30 | public long user_id { get; set; }
31 | public DateTime date { get; set; }
32 | public string rank { get; set; }
33 | public float pp { get; set; }
34 | public string error { get; set; }
35 | }
36 | }
37 |
38 |
--------------------------------------------------------------------------------
/CSharpOsu/Module/OsuUser.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace CSharpOsu.Module
8 | {
9 | public class Event
10 | {
11 | public string display_html { get; set; }
12 | public long? beatmap_id { get; set; }
13 | public long? beatmapset_id { get; set; }
14 | public DateTime date { get; set; }
15 | public short epicfactor { get; set; }
16 | }
17 |
18 | public class OsuUser : Model
19 | {
20 | public long user_id { get; set; }
21 | public string username { get; set; }
22 | public DateTime join_date { get; set; }
23 | public long count300 { get; set; }
24 | public long count100 { get; set; }
25 | public long count50 { get; set; }
26 | public long playcount { get; set; }
27 | public long ranked_score { get; set; }
28 | public long total_score { get; set; }
29 | public int pp_rank { get; set; }
30 | public float level { get; set; }
31 | public float pp_raw { get; set; }
32 | public float accuracy { get; set; }
33 | public int count_rank_ss { get; set; }
34 | public int count_rank_ssh { get; set; }
35 | public int count_rank_s { get; set; }
36 | public int count_rank_sh { get; set; }
37 | public int count_rank_a { get; set; }
38 | public string country { get; set; }
39 | public int total_seconds_played { get; set; }
40 | public int pp_country_rank { get; set; }
41 | public List events { get; set; }
42 | public string url { get; set; }
43 | public string image { get; set; }
44 | public string flag { get; set; }
45 | public string flag_old { get; set; }
46 | public string spectateUser { get; set; }
47 | public string error { get; set; }
48 | }
49 | }
50 |
--------------------------------------------------------------------------------
/CSharpOsu/Module/OsuUserBest.cs:
--------------------------------------------------------------------------------
1 | using CSharpOsu.Util.Converters;
2 | using CSharpOsu.Util.Enums;
3 | using Newtonsoft.Json;
4 | using System;
5 | using System.Collections.Generic;
6 | using System.Linq;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace CSharpOsu.Module
11 | {
12 | public class OsuUserBest : Model
13 | {
14 | public long beatmap_id { get; set; }
15 | public int score { get; set; }
16 | public long maxcombo { get; set; }
17 | public long count50 { get; set; }
18 | public long count100 { get; set; }
19 | public long count300 { get; set; }
20 | public long countmiss { get; set; }
21 | public long countkatu { get; set; }
22 | public long countgeki { get; set; }
23 | [JsonConverter(typeof(BoolConvert))]
24 | public bool perfect { get; set; }
25 |
26 | [JsonConverter(typeof(ModsConvert))]
27 | public Mods[] enabled_mods { get; set; }
28 |
29 | public long user_id { get; set; }
30 | public DateTime date { get; set; }
31 | public string rank { get; set; }
32 | public float pp { get; set; }
33 | ///
34 | /// You will need math round to 2 decimals to get a fancy value.
35 | ///
36 | public float accuracy { get; set; }
37 |
38 | public string error { get; set; }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/CSharpOsu/Module/OsuUserRecent.cs:
--------------------------------------------------------------------------------
1 | using CSharpOsu.Util.Converters;
2 | using CSharpOsu.Util.Enums;
3 | using Newtonsoft.Json;
4 | using System;
5 | using System.Collections.Generic;
6 | using System.Linq;
7 | using System.Text;
8 | using System.Threading.Tasks;
9 |
10 | namespace CSharpOsu.Module
11 | {
12 | public class OsuUserRecent : Model
13 | {
14 | public long beatmap_id { get; set; }
15 | public int score { get; set; }
16 | public long maxcombo { get; set; }
17 | public long count50 { get; set; }
18 | public long count100 { get; set; }
19 | public long count300 { get; set; }
20 | public long countmiss { get; set; }
21 | public long countkatu { get; set; }
22 | public long countgeki { get; set; }
23 | [JsonConverter(typeof(BoolConvert))]
24 | public bool perfect { get; set; }
25 |
26 | [JsonConverter(typeof(ModsConvert))]
27 | public Mods[] enabled_mods { get; set; }
28 |
29 | public long user_id { get; set; }
30 | public DateTime date { get; set; }
31 | public string rank { get; set; }
32 | ///
33 | /// You will need math round to 2 decimals to get a fancy value.
34 | ///
35 | public float accuracy { get; set; }
36 |
37 | public string error { get; set; }
38 | }
39 | }
40 |
--------------------------------------------------------------------------------
/CSharpOsu/Util/BinaryHandler.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.IO;
4 | using System.Linq;
5 | using System.Security.Cryptography;
6 | using System.Text;
7 | using System.Threading.Tasks;
8 |
9 | namespace CSharpOsu.Util.BinaryHandler
10 | {
11 | internal class BinHandler
12 | {
13 | BinaryWriter binWriter;
14 |
15 | public BinHandler(BinaryWriter _binWriter)
16 | {
17 | binWriter = _binWriter;
18 | }
19 |
20 | ///
21 | /// Binary String
22 | ///
23 | /// A string.
24 | public void writeString(string? str)
25 | {
26 | binWriter.Write((byte)0x0B);
27 | binWriter.Write(str);
28 | }
29 |
30 | ///
31 | /// Binary Byte
32 | ///
33 | /// A string.
34 | public void writeByte(string? bt)
35 | {
36 | binWriter.Write(byte.Parse(bt));
37 | }
38 |
39 | ///
40 | /// Binary Short
41 | ///
42 | /// A short.
43 | public void writeShort(long? srt)
44 | {
45 | binWriter.Write(Convert.ToUInt16(srt));
46 | }
47 |
48 | ///
49 | /// Binary Int
50 | ///
51 | /// A int.
52 | public void writeInteger(int? i)
53 | {
54 | binWriter.Write(Convert.ToUInt32(i));
55 | }
56 |
57 | ///
58 | /// Binary Database Timestamp
59 | ///
60 | /// A DateTime format.
61 | public void writeDate(DateTime datestr)
62 | {
63 | // Weird string and timestamp manipulation. I have no clue how it works.
64 | // The credits for this one goes to omkelderman(https://github.com/omkelderman/osu-replay-downloader).
65 |
66 | var constant = 429.4967296;
67 |
68 | var temp1 = (GetTime(datestr) / 1000) + 62135596800;
69 | var temp2 = temp1 / constant;
70 | var high = Math.Round(temp2);
71 | var low = (temp2 - high) * constant * 10000000;
72 | byte[] toBytes2 = BitConverter.GetBytes(Convert.ToInt32(high));
73 | byte[] toBytes1 = BitConverter.GetBytes(Convert.ToInt32(low));
74 |
75 |
76 | binWriter.Write(toBytes1, 0, 4);
77 | binWriter.Write(toBytes2, 0, 4);
78 | }
79 |
80 | ///
81 | /// Unix Timestamp
82 | ///
83 | /// A DateTime format.
84 | ///
85 | private Int64 GetTime(DateTime date)
86 | {
87 | Int64 retval = 0;
88 | var st = new DateTime(1970, 1, 1);
89 | TimeSpan t = (date.ToUniversalTime() - st);
90 | retval = (Int64)(t.TotalMilliseconds);
91 | return retval;
92 | }
93 |
94 | ///
95 | /// Calculate MD5Hash
96 | ///
97 | /// String to encode.
98 | ///
99 | public string MD5Hash(string input)
100 |
101 | {
102 | MD5 md5 = System.Security.Cryptography.MD5.Create();
103 | StringBuilder sb = new StringBuilder();
104 |
105 | byte[] inputBytes = System.Text.Encoding.ASCII.GetBytes(input);
106 | byte[] hash = md5.ComputeHash(inputBytes);
107 |
108 | for (int i = 0; i < hash.Length; i++)
109 | { sb.Append(hash[i].ToString("X2")); }
110 |
111 | return sb.ToString().ToLower();
112 |
113 | }
114 | }
115 | }
116 |
--------------------------------------------------------------------------------
/CSharpOsu/Util/Enums.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace CSharpOsu.Util.Enums
8 | {
9 | public enum mode { osu, Taiko, CtB, osuMania }
10 | public enum conv { notIncluded, Included }
11 |
12 | [Flags]
13 | public enum Mods
14 | {
15 | None = 0,
16 | NoFail = 1,
17 | Easy = 2,
18 | TouchDevice = 4,
19 | Hidden = 8,
20 | HardRock = 16,
21 | SuddenDeath = 32,
22 | DoubleTime = 64,
23 | Relax = 128,
24 | HalfTime = 256,
25 | Nightcore = 512,
26 | Flashlight = 1024,
27 | Autoplay = 2048,
28 | SpunOut = 4096,
29 | Relax2 = 8192,
30 | Perfect = 16384,
31 | Key4 = 32768,
32 | Key5 = 65536,
33 | Key6 = 131072,
34 | Key7 = 262144,
35 | Key8 = 524288,
36 | FadeIn = 1048576,
37 | Random = 2097152,
38 | Cinema = 4194304,
39 | Target = 8388608,
40 | Key9 = 16777216,
41 | KeyCoop = 33554432,
42 | Key1 = 67108864,
43 | Key3 = 134217728,
44 | Key2 = 268435456,
45 | ScoreV2 = 536870912,
46 | LastMod = 1073741824,
47 | }
48 | public enum ApprovedStatus
49 | {
50 | Graveyarded = -2,
51 | Pending = -1,
52 | Ranked = 1,
53 | Approved = 2,
54 | Qualified = 3,
55 | Loved = 4,
56 | }
57 | }
58 |
--------------------------------------------------------------------------------
/CSharpOsu/Util/Strings.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 | using CSharpOsu.Util.Enums;
7 |
8 | namespace CSharpOsu.Util.Strings
9 | {
10 | internal class Strings
11 | {
12 | public string Key { get; internal set; }
13 |
14 | protected virtual string osuApiUrl => "https://osu.ppy.sh/api/";
15 | public string osuDowload = "https://osu.ppy.sh/d/";
16 | public string osuDirect = "osu://s/";
17 |
18 | public string osuBeatmap = "get_beatmaps?";
19 | public string osuScores = "get_scores?";
20 | public string osuUser = "get_user?";
21 | public string osuUserBest = "get_user_best?";
22 | public string osuUserRecent = "get_user_recent?";
23 | public string osuMatch = "get_match?";
24 | public string osuReplay = "get_replay?";
25 |
26 | public string Beatmap() { return osuApiUrl + osuBeatmap + "k=" + Key; }
27 | public string User(string id) { return osuApiUrl + osuUser + "k=" + Key + "&u=" + id; }
28 | public string Score(long beatmap) { return osuApiUrl + osuScores + "k=" + Key + "&b=" + beatmap; }
29 | public string User_Best(string user) { return osuApiUrl + osuUserBest + "k=" + Key + "&u=" + user; }
30 | public string User_Recent(string user) { return osuApiUrl + osuUserRecent + "k=" + Key + "&u=" + user; }
31 | public string Match(int match) { return osuApiUrl + osuMatch + "k=" + Key + "&mp=" + match; }
32 | public string Replay(mode mode, long beatmap, string user) { return osuApiUrl + osuReplay + "k=" + Key + "&m=" + (int)mode + "&b=" + beatmap + "&u=" + user; }
33 |
34 | // Thanks to Game4all and his circles.NET project (https://github.com/Game4all/circles.NET)
35 | // Not implemented yet.
36 | internal string CreateURL(string endpoint, params object[] queryStrings)
37 | {
38 | var sb = new StringBuilder();
39 | sb.Append(osuApiUrl);
40 | sb.Append(endpoint);
41 |
42 | for (int i = 0; i < queryStrings.Length; i += 2) //query strings are given this way [0] = QueryStringName, [1] = QueryStringValue
43 | {
44 | if (i == 0) //first parameter should always be API key
45 | {
46 | sb.Append($"{queryStrings[i].ToString()}={queryStrings[i + 1].ToString()}");
47 | continue;
48 | }
49 |
50 | if (queryStrings[i + 1] != null) //if the query string value is != null , let's add it to the url
51 | sb.Append($"&{queryStrings[i].ToString()}={queryStrings[i + 1].ToString()}");
52 | }
53 | return sb.ToString();
54 | }
55 | }
56 | }
57 |
--------------------------------------------------------------------------------
/CSharpOsu/Util/Utility.cs:
--------------------------------------------------------------------------------
1 | using CSharpOsu.Module;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.Linq;
5 | using System.Net;
6 | using System.Net.Http;
7 | using System.Web;
8 | using System.Text;
9 | using System.Threading.Tasks;
10 | using CSharpOsu.Util.Enums;
11 | using Newtonsoft.Json;
12 |
13 | namespace CSharpOsu.Util
14 | {
15 | internal class Utility
16 | {
17 | HttpClient client;
18 | private bool throwIfNull;
19 |
20 | public Utility(HttpClient? _client, bool _throwIfNull) { client = _client; throwIfNull = _throwIfNull; }
21 | public string GetUrl(string url)
22 | {
23 | try
24 | {
25 | var json = client.GetAsync(url).Result.Content.ReadAsStringAsync().Result;
26 | if (throwIfNull)
27 | if (json == "[]") { throw new Exception("No objects have been found for those arguments"); }
28 | return json;
29 | }
30 | catch (WebException ex)
31 | {
32 | throw new WebException(ex.Message);
33 | }
34 | }
35 |
36 | public void ErrorHandler(Model obj) {
37 | if (obj.error != null)
38 | {
39 | throw new Exception(obj.error);
40 | }
41 | }
42 |
43 | public void ErrorHandler(Model[] objs)
44 | {
45 | foreach (var obj in objs)
46 | {
47 | if (obj.error != null)
48 | {
49 | throw new Exception(obj.error);
50 | }
51 | }
52 | }
53 |
54 | public float accuracyCalculator(OsuBeatmap[] bt, long count50, long count100, long count300, long countmiss, long countkatu,long countgeki)
55 | {
56 | var mapMode = bt[0].mode;
57 | float totalPointsOfHits;
58 | float totalNumberOfHits;
59 | float accuracy;
60 | // Logical switch for every mode
61 | switch (mapMode)
62 | {
63 | case mode.osu:
64 | totalPointsOfHits = (count50) * 50 + (count100) * 100 + (count300) * 300;
65 | totalNumberOfHits = (countmiss) + (count50) + (count100) + (count300);
66 |
67 | accuracy = totalPointsOfHits / (totalNumberOfHits * 300);
68 | break;
69 |
70 | case mode.Taiko:
71 | totalPointsOfHits = ((count100) * 0.5f + (count300) * 1) * 300;
72 | totalNumberOfHits = (countmiss) + (count100) + (count300);
73 |
74 | accuracy = totalPointsOfHits / (totalNumberOfHits * 300);
75 | break;
76 |
77 | case mode.CtB:
78 | totalPointsOfHits = (count50 + count100 + count300);
79 | totalNumberOfHits = (countmiss) + (count50) + (count100) + (count300) + (countkatu);
80 |
81 | accuracy = totalPointsOfHits / totalNumberOfHits;
82 | break;
83 |
84 | case mode.osuMania:
85 | totalPointsOfHits = (count50) * 50 + (count100) * 100 + (countkatu) * 200 + (count300 + countgeki) * 300;
86 | totalNumberOfHits = (countmiss) + (count50) + (count100) + (countkatu) + (count300) + (countgeki);
87 |
88 | accuracy = totalPointsOfHits / (totalNumberOfHits * 300);
89 | break;
90 |
91 | default:
92 | accuracy = 0;
93 | break;
94 | }
95 | return (accuracy * 100);
96 | }
97 | }
98 | }
99 |
--------------------------------------------------------------------------------
/Examples/Osu-Replay-Compiler/Osu-Replay-Compiler/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/Examples/Osu-Replay-Compiler/Osu-Replay-Compiler/Osu-Replay-Compiler.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | PackageReference
6 |
7 |
8 | Debug
9 | AnyCPU
10 | {FAC3FB6E-FAE8-42D1-B74E-6C7248A6F208}
11 | Exe
12 | Osu_Replay_Compiler
13 | Osu-Replay-Compiler
14 | v4.6.1
15 | 512
16 | true
17 |
18 |
19 |
20 | AnyCPU
21 | true
22 | full
23 | false
24 | bin\Debug\
25 | DEBUG;TRACE
26 | prompt
27 | 4
28 |
29 |
30 | AnyCPU
31 | pdbonly
32 | true
33 | bin\Release\
34 | TRACE
35 | prompt
36 | 4
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 | {3108ae4a-de35-40ae-a449-1efb9719367d}
58 | CSharpOsu
59 |
60 |
61 |
62 |
--------------------------------------------------------------------------------
/Examples/Osu-Replay-Compiler/Osu-Replay-Compiler/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using CSharpOsu;
3 | using System.IO;
4 | using System.Diagnostics;
5 | using CSharpOsu.Util.Enums;
6 | using System.Text;
7 | using System.Collections.Generic;
8 |
9 | namespace Osu_Replay_Compiler
10 | {
11 | class Program
12 | {
13 | public static void Main(string[] args)
14 | {
15 | string osukey = "";
16 | try {
17 | osukey = File.ReadAllText(@"Osu.txt");
18 | }
19 | catch { Console.WriteLine("API File not found!"); }
20 |
21 | if (osukey == "")
22 | {
23 | Console.WriteLine("API key not found!");
24 | Console.Write("Enter API key: ");
25 | File.WriteAllText(@"Osu.txt", Console.ReadLine());
26 | osukey = File.ReadAllText(@"Osu.txt");
27 | } else{ Console.WriteLine("API Key found!"); }
28 |
29 | OsuClient Osu = new OsuClient(osukey);
30 |
31 | Console.WriteLine("0. Osu!");
32 | Console.WriteLine("1. Taiko");
33 | Console.WriteLine("2. CatchTheBeat");
34 | Console.WriteLine("3. Osu!Mania");
35 | Console.Write("Mode(int 0-3): ");
36 | mode _m =0;
37 | switch (Convert.ToInt32(Console.ReadLine()))
38 | {
39 | case 0:
40 | _m = mode.osu;
41 | break;
42 | case 1:
43 | _m = mode.Taiko;
44 | break;
45 | case 2:
46 | _m = mode.CtB;
47 | break;
48 | case 3:
49 | _m = mode.osuMania;
50 | break;
51 | }
52 |
53 | Console.Write("Beatmap_id(/b/): ");
54 | long _b = Convert.ToInt64(Console.ReadLine());
55 |
56 | Console.Write("User(/u/): ");
57 | string _u = Console.ReadLine();
58 |
59 | List mods=new List();
60 | Console.Write("Mods(Eg: Hidden,DoubleTime): ");
61 | var cacheRead = Console.ReadLine();
62 | if (cacheRead != null)
63 | {
64 | var modsStrings =cacheRead.Split(',');
65 | foreach (var mod in modsStrings)
66 | {
67 | mods.Add((Mods)Enum.Parse(typeof(Mods),mod));
68 | }
69 | }
70 |
71 | Console.WriteLine("[WARNING! If the file already exist it will be overwritten.]");
72 | Console.Write("File name(without extension): ");
73 | string y = Console.ReadLine();
74 |
75 | File.WriteAllBytes(@"" + y + ".osr", Osu.GetReplay(_m, _u,_b,Osu.modsCalculator(mods)));
76 |
77 | openreplay(y);
78 | }
79 |
80 | public static void openreplay(string y)
81 | {
82 | Console.Write("Open replay?[Y/N]: ");
83 | string x = Console.ReadLine();
84 | if (x == "Y" || x == "y")
85 | {
86 | Process.Start(@"" + y + ".osr");
87 | }
88 | else if (x == "N"|| x == "n")
89 | {
90 | Environment.Exit(0x12);
91 | }
92 | else
93 | {
94 | openreplay(y);
95 | }
96 | }
97 | }
98 | }
99 |
100 |
--------------------------------------------------------------------------------
/Examples/Osu-Replay-Compiler/Osu-Replay-Compiler/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("Osu-Replay-Compiler")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("Osu-Replay-Compiler")]
13 | [assembly: AssemblyCopyright("Copyright © 2017")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Setting ComVisible to false makes the types in this assembly not visible
18 | // to COM components. If you need to access a type in this assembly from
19 | // COM, set the ComVisible attribute to true on that type.
20 | [assembly: ComVisible(false)]
21 |
22 | // The following GUID is for the ID of the typelib if this project is exposed to COM
23 | [assembly: Guid("fac3fb6e-fae8-42d1-b74e-6c7248a6f208")]
24 |
25 | // Version information for an assembly consists of the following four values:
26 | //
27 | // Major Version
28 | // Minor Version
29 | // Build Number
30 | // Revision
31 | //
32 | // You can specify all the values or you can default the Build and Revision Numbers
33 | // by using the '*' as shown below:
34 | // [assembly: AssemblyVersion("1.0.*")]
35 | [assembly: AssemblyVersion("1.0.0.0")]
36 | [assembly: AssemblyFileVersion("1.0.0.0")]
37 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 Xferno2
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 |
2 | # CSharpOsu []() [](https://www.codefactor.io/repository/github/xferno2/csharposu)
3 | C# library for [osu!api](https://github.com/ppy/osu-api/wiki)
4 | using [Newtonsoft.Json](https://github.com/JamesNK/Newtonsoft.Json) project. This library is CLS Compilant.
5 |
6 | ## Nuget [](https://www.nuget.org/packages/CSharpOSU)
7 | [](https://www.nuget.org/packages/CSharpOSU)
8 |
9 | ### Documentation [here](https://xferno2.github.io/CSharpOsu/).
10 |
--------------------------------------------------------------------------------
/_config.yml:
--------------------------------------------------------------------------------
1 | theme: jekyll-theme-cayman
--------------------------------------------------------------------------------
/docs/SearchHelp.inc.php:
--------------------------------------------------------------------------------
1 |
2 | // Contributed to the Sandcastle Help File Builder project by Thomas Levesque
3 |
4 | class Ranking
5 | {
6 | public $filename;
7 | public $pageTitle;
8 | public $rank;
9 |
10 | function __construct($file, $title, $rank)
11 | {
12 | $this->filename = $file;
13 | $this->pageTitle = $title;
14 | $this->rank = $rank;
15 | }
16 | }
17 |
18 |
19 | ///
20 | /// Split the search text up into keywords
21 | ///
22 | /// The keywords to parse
23 | /// A list containing the words for which to search
24 | function ParseKeywords($keywords)
25 | {
26 | $keywordList = array();
27 | $words = preg_split("/[^\w]+/", $keywords);
28 |
29 | foreach($words as $word)
30 | {
31 | $checkWord = strtolower($word);
32 | $first = substr($checkWord, 0, 1);
33 | if(strlen($checkWord) > 2 && !ctype_digit($first) && !in_array($checkWord, $keywordList))
34 | {
35 | array_push($keywordList, $checkWord);
36 | }
37 | }
38 |
39 | return $keywordList;
40 | }
41 |
42 |
43 | ///
44 | /// Search for the specified keywords and return the results as a block of
45 | /// HTML.
46 | ///
47 | /// The keywords for which to search
48 | /// The file list
49 | /// The dictionary used to find the words
50 | /// True to sort by title, false to sort by
51 | /// ranking
52 | /// A block of HTML representing the search results.
53 | function Search($keywords, $fileInfo, $wordDictionary, $sortByTitle)
54 | {
55 | $sb = "";
56 | $matches = array();
57 | $matchingFileIndices = array();
58 | $rankings = array();
59 |
60 | $isFirst = true;
61 |
62 | foreach($keywords as $word)
63 | {
64 | if (!array_key_exists($word, $wordDictionary))
65 | {
66 | return "Nothing found ";
67 | }
68 | $occurrences = $wordDictionary[$word];
69 |
70 | $matches[$word] = $occurrences;
71 | $occurrenceIndices = array();
72 |
73 | // Get a list of the file indices for this match
74 | foreach($occurrences as $entry)
75 | array_push($occurrenceIndices, ($entry >> 16));
76 |
77 | if($isFirst)
78 | {
79 | $isFirst = false;
80 | foreach($occurrenceIndices as $i)
81 | {
82 | array_push($matchingFileIndices, $i);
83 | }
84 | }
85 | else
86 | {
87 | // After the first match, remove files that do not appear for
88 | // all found keywords.
89 | for($idx = 0; $idx < count($matchingFileIndices); $idx++)
90 | {
91 | if (!in_array($matchingFileIndices[$idx], $occurrenceIndices))
92 | {
93 | array_splice($matchingFileIndices, $idx, 1);
94 | $idx--;
95 | }
96 | }
97 | }
98 | }
99 |
100 | if(count($matchingFileIndices) == 0)
101 | {
102 | return "Nothing found ";
103 | }
104 |
105 | // Rank the files based on the number of times the words occurs
106 | foreach($matchingFileIndices as $index)
107 | {
108 | // Split out the title, filename, and word count
109 | $fileIndex = explode("\x00", $fileInfo[$index]);
110 |
111 | $title = $fileIndex[0];
112 | $filename = $fileIndex[1];
113 | $wordCount = intval($fileIndex[2]);
114 | $matchCount = 0;
115 |
116 | foreach($keywords as $words)
117 | {
118 | $occurrences = $matches[$word];
119 |
120 | foreach($occurrences as $entry)
121 | {
122 | if(($entry >> 16) == $index)
123 | $matchCount += $entry & 0xFFFF;
124 | }
125 | }
126 |
127 | $r = new Ranking($filename, $title, $matchCount * 1000 / $wordCount);
128 | array_push($rankings, $r);
129 |
130 | if(count($rankings) > 99)
131 | break;
132 | }
133 |
134 | // Sort by rank in descending order or by page title in ascending order
135 | if($sortByTitle)
136 | {
137 | usort($rankings, "cmprankbytitle");
138 | }
139 | else
140 | {
141 | usort($rankings, "cmprank");
142 | }
143 |
144 | // Format the file list and return the results
145 | foreach($rankings as $r)
146 | {
147 | $f = $r->filename;
148 | $t = $r->pageTitle;
149 | $sb .= "$t ";
150 | }
151 |
152 | $sb .= " Omitted $c more results
";
158 | }
159 |
160 | return $sb;
161 | }
162 |
163 | function cmprank($x, $y)
164 | {
165 | return $y->rank - $x->rank;
166 | }
167 |
168 | function cmprankbytitle($x, $y)
169 | {
170 | return strcmp($x->pageTitle, $y->pageTitle);
171 | }
172 |
173 | ?>
174 |
--------------------------------------------------------------------------------
/docs/SearchHelp.php:
--------------------------------------------------------------------------------
1 |
2 | // Contributed to the Sandcastle Help File Builder project by Thomas Levesque
3 |
4 | include("SearchHelp.inc.php");
5 |
6 | $sortByTitle = false;
7 |
8 | // The keywords for which to search should be passed in the query string
9 | $searchText = $_GET["Keywords"];
10 |
11 | if(empty($searchText))
12 | {
13 | ?>
14 | Nothing found
15 |
16 | return;
17 | }
18 |
19 | // An optional SortByTitle option can also be specified
20 | if($_GET["SortByTitle"] == "true")
21 | $sortByTitle = true;
22 |
23 | $keywords = ParseKeywords($searchText);
24 | $letters = array();
25 | $wordDictionary = array();
26 |
27 | // Load the file index
28 | $json = file_get_contents("fti/FTI_Files.json");
29 | $fileList = json_decode($json);
30 |
31 | // Load the required word index files
32 | foreach($keywords as $word)
33 | {
34 | $letter = substr($word, 0, 1);
35 |
36 | if(!in_array($letter, $letters))
37 | {
38 | array_push($letters, $letter);
39 | $ascii = ord($letter);
40 | $ftiFile = "fti/FTI_$ascii.json";
41 |
42 | if(file_exists($ftiFile))
43 | {
44 | $json = file_get_contents($ftiFile);
45 | $ftiWords = json_decode($json, true);
46 |
47 | foreach($ftiWords as $ftiWord => $val)
48 | {
49 | $wordDictionary[$ftiWord] = $val;
50 | }
51 | }
52 | }
53 | }
54 |
55 | // Perform the search and return the results as a block of HTML
56 | $results = Search($keywords, $fileList, $wordDictionary, $sortByTitle);
57 | echo $results;
58 | ?>
--------------------------------------------------------------------------------
/docs/Web.Config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
32 |
33 |
34 |
35 |
--------------------------------------------------------------------------------
/docs/fti/FTI_100.json:
--------------------------------------------------------------------------------
1 | {"datetime":[1966087,2097159,5963783,6094855,7340039,8060935,9043973,9109511,10420229,11403271,11665414,12451847,13959175,14811143,16318471,18677767],"defaults":[589826,2818049,7405570,9043969,10420225,14090242,14680065],"downloading":[18022401],"download_no_video":[786433,9633798,11927553],"description":[524290,720897,786434,983041,1310722,1638402,2293761,2555907,2621441,2686977,2752515,3211265,3342339,3866625,3997697,4063233,4718593,4849665,5046273,5373953,5636097,5701633,6029313,6160385,6553602,6684674,6946818,7012353,7274497,7995395,8257538,8323074,8585217,10092545,10158081,10289153,10354689,10485761,10813441,11272193,11534337,11927553,12189697,12976130,13697025,14155777,14483457,14548993,15073281,15990785,16056324,16121858,16711681,16777217,17563649,18219010,18284546,18743298],"download":[786433,11927553,18808838],"days":[9043969],"datestr":[11665413],"database":[6684673,10158081,11665409],"determine":[10420225],"documentation":[131073,196609,262145,327681,393217,458755,524289,786433,851974,917505,1048577,1114113,1179649,1245185,1310721,1376257,1441795,1507329,1572865,1638401,1703937,1769473,1835013,1900545,1966081,2031618,2097153,2162689,2228225,2424833,2490369,2555905,2752513,2883585,2949121,3014657,3080193,3145729,3211265,3276801,3342337,3407873,3473409,3538945,3604481,3670017,3735558,3801089,3932161,3997697,4128769,4194305,4259843,4456449,4587521,4653057,4718593,4980737,5111809,5177345,5242881,5308417,5373953,5439489,5505025,5767169,5832705,5898241,5963777,6094849,6160385,6225921,6291458,6356993,6422529,6488067,6553601,6619137,6684673,6750209,6815745,6946817,7077889,7143425,7208961,7340033,7471105,7536643,7667713,7798785,7864321,7929857,7995393,8060929,8126465,8192001,8257537,8323073,8388609,8454145,8519681,8650758,8716289,8781825,8978433,9109505,9175041,9240577,9306113,9371649,9502721,9568257,9633793,9699331,9764865,9830401,9895937,9961474,10027009,10092545,10223617,10354689,10551297,10616833,10747905,10878977,11010049,11075585,11141121,11206659,11337729,11403265,11468801,11599873,11730945,11796481,11862017,11993091,12058625,12124161,12189697,12255233,12320769,12386305,12451841,12582913,12648452,12713985,12779521,12845058,12910593,12976129,13041665,13107201,13172737,13238273,13303809,13369345,13434889,13500417,13565953,13631491,13762561,13828097,13959169,14024705,14155777,14221313,14286849,14352385,14614529,14745601,14811137,14942209,15007745,15073281,15138817,15204353,15269889,15335428,15400961,15466497,15532035,15663105,15728641,15794177,15859713,16056321,16121857,16187393,16252929,16318465,16384001,16449537,16515073,16580609,16646145,16711681,16777217,16842753,16908289,16973825,17039361,17104900,17235969,17301505,17367044,17432577,17498113,17629185,17760257,17825793,17891329,18153473,18219009,18284545,18350081,18415617,18546689,18677761,18743297,18808833,18874369],"dll":[131073,196609,262145,327681,393217,458753,524289,589825,655361,786433,851969,917505,1048577,1114113,1179649,1245185,1310721,1376257,1441793,1507329,1572865,1638401,1703937,1769473,1835009,1900545,1966081,2031617,2097153,2162689,2228225,2359297,2424833,2490369,2555905,2752513,2818049,2883585,2949121,3014657,3080193,3145729,3211265,3276801,3342337,3407873,3473409,3538945,3604481,3670017,3735553,3801089,3932161,3997697,4128769,4194305,4259841,4325377,4390913,4456449,4521985,4587521,4653057,4915201,4980737,5111809,5177345,5242881,5308417,5439489,5505025,5570561,5767169,5832705,5898241,5963777,6094849,6225921,6291457,6356993,6422529,6488065,6553601,6619137,6684673,6750209,6815745,6881281,6946817,7077889,7143425,7208961,7340033,7405569,7471105,7536641,7602177,7667713,7798785,7733249,7864321,7929857,7995393,8060929,8126465,8192001,8257537,8323073,8388609,8454145,8519681,8650753,8716289,8781825,8847361,8912897,8978433,9043969,9109505,9175041,9240577,9306113,9371649,9437185,9502721,9568257,9633793,9699329,9764865,9830401,9895937,9961473,10027009,10223617,10420225,10551297,10616833,10682369,10747905,10878977,10944513,11010049,11075585,11141121,11206657,11337729,11403265,11468801,11599873,11665409,11730945,11796481,11862017,11993089,12058625,12124161,12189697,12255233,12320769,12386305,12451841,12517377,12582913,12648449,12713985,12779521,12845057,12910593,12976129,13041665,13107201,13172737,13238273,13303809,13369345,13434881,13500417,13565953,13631489,13762561,13828097,13893633,13959169,14024705,14090241,14221313,14286849,14352385,14417921,14614529,14680065,14745601,14811137,14876673,14942209,15007745,15073281,15138817,15204353,15269889,15335425,15400961,15466497,15532033,15597569,15663105,15728641,15794177,15859713,15925249,16056321,16121857,16187393,16252929,16318465,16384001,16449537,16515073,16580609,16646145,16711681,16842753,16908289,16973825,17039361,17104897,17170433,17235969,17301505,17367041,17432577,17498113,17629185,17694721,17760257,17825793,17891329,18153473,18219009,18350081,18415617,18481153,18546689,18612225,18677761,18743297,18808833,18874369],"difficulty":[786433,7733253,10420225,11927553],"display_html":[4849665,5505030,12976129],"default":[589825,1,7405569,9043970,10420228,14090241,14680066],"data":[4325377],"doubletime":[3997697],"decimals":[5636097,11272193,14417921,14876673,18219009,18743297],"date":[524289,2097157,4849665,5636097,5963782,9043969,10420226,11272193,11403270,12451846,12976129,14811142,17563649,18219009,18743297],"documented":[786433,7733249,11927553],"defaultarg":[589828,2818049,7405570,9043970,10420232,14090242,14680066]}
--------------------------------------------------------------------------------
/docs/fti/FTI_101.json:
--------------------------------------------------------------------------------
1 | {"encoding":[1900550,6946817,13697025],"existingvalue":[851975,3735559,8650759],"events":[720897,8257537,13565958],"enabled_mods":[524289,5636097,7798790,11272193,14942214,16842758,17563649,18219009,18743297],"encode":[1245185],"enumeration":[3211266,3997698,4718593,15073282,16711682],"enumerations":[4718593],"event":[4849667,5505027,8847366,9043969,12255235,12451843,12976138,13565959,16515075,17235971,18284545],"error":[524289,720897,786433,1310721,1572870,2162696,4128776,5636097,6225928,6815752,6946817,8257537,10027016,10813441,11272193,11796488,11927553,12189697,13369352,13697025,14548993,14680065,17563649,17956866,18219009,18743297],"endpoint":[17104902],"effect":[10420225],"epicfactor":[4849665,12976129,17235974],"easy":[3997697],"exposes":[524289,720897,786433,983041,1310721,1638401,2293761,2555905,2621441,2686977,2752513,3342337,4063233,4849665,5636097,5701633,6029313,6553601,6684673,6946817,7012353,7995393,8257537,8323073,8585217,10158081,10289153,10485761,10813441,11272193,11534337,11927553,12189697,12976129,13697025,14483457,14548993,15990785,16056321,16121857,17563649,18219009,18743297],"enum":[3211266,3997698,15073282,16711682],"errorhandler":[2031624,2555906,3866627,9961480,10289154],"enums":[1835014,2818049,3211267,3997699,4325377,4718594,10092545,11993092,15073283,16711683],"end":[524289,786433,1310721,1638401,2555905,2752513,3342337,6553601,6684673,6946817,7995393,8257537,8323073,12189697,12976129,16056321,16121857,18219009,18743297],"example":[10420225],"end_time":[2621441,6553601,8060934,8323073,11534337,16318470],"entered":[18087937]}
--------------------------------------------------------------------------------
/docs/fti/FTI_102.json:
--------------------------------------------------------------------------------
1 | {"follow":[1],"function":[458753,589825,851969,1245185,1441793,1835009,2097153,2818049,3735553,4259841,4325377,6291457,6488065,7405569,7536641,8650753,9043969,9699329,10420225,10944513,11206657,11993089,13434881,13631489,14090241,15532033,17104897,17694721],"following":[524289,720897,786433,983041,1310721,1638401,2293761,2555905,2621441,2686977,2752513,3342337,4063233,4849665,5636097,5701633,6029313,6553601,6684673,6946817,7012353,7995393,8257537,8323073,8585217,10158081,10289153,10485761,10813441,11272193,11534337,11927553,12189697,12976129,13697025,14483457,14548993,15990785,16056321,16121857,17563649,18219009,18743297],"field":[4194306,6619138,7471106,11862018,13041666,14352386,14614530,15466498,16187394,16908290],"flag":[720897,8257537,8978438],"float":[196612,3014660,3145732,3604484,4980740,8454148,9240580,9568260,10551300,12386308,13172740,13434882,14024708,14417924,14876676,15859716,18350084],"fields":[2555905,7274498,14483458,16056321],"flashlight":[3997697],"format":[2097153,11665409],"first":[18022401],"fancy":[5636097,11272193,14417921,14876673,18219009,18743297],"false":[14680069],"flagsattribute":[3997700],"fetch":[589825,4325377,7405569,9043969,10420225,14090241,17694721],"flags":[11993094],"file":[2818050,5046273,10944513,15990785,16121857],"favourite_count":[786433,6422534,11927553],"flag_old":[720897,8257537,18153478],"friend":[327681,2555905,2752513,6684673,16056321,17104897],"fadein":[3997697],"float32":[196609,3014657,3145729,3604481,4980737,8454145,9240577,9568257,10551297,12386305,13172737,13434881,14024705,14417921,14876673,15859713,18350081]}
--------------------------------------------------------------------------------
/docs/fti/FTI_103.json:
--------------------------------------------------------------------------------
1 | {"games":[1310721,11141126,14548993],"graveyarded":[16711681],"getuniqueflags":[3342337,5701633,11993096],"github":[589825,2818049,10944513],"generic":[10944513],"getreplay":[2818054,4325382,5046275,15990786,16121858],"genre_id":[786433,5308422,11927553],"getting":[18022401],"geturl":[1441800,2555905,10289153],"getscore":[589829,15990785,16121857],"gettime":[2097158,6684673,10158081],"game":[655366,2424835,2490371,2883587,3801091,5767171,6553610,7340035,8060931,11141127,11534339,11730947,13500419,18284545,18415619],"getuserbest":[14090245,15990785,16121857],"gets":[2293762,2752514,3342338,7995394,8585218,10485762],"getuser":[9043973,15990785,16121857],"game_id":[6553601,11534337,13500422],"getuserrecent":[7405573,15990785,16121857],"getbeatmap":[10420229,15990785,16121857],"getmatch":[15990785,16121857,17694725],"general":[17956865]}
--------------------------------------------------------------------------------
/docs/fti/FTI_104.json:
--------------------------------------------------------------------------------
1 | {"hit_length":[786433,1048582,11927553],"hidden":[3997697],"https":[589825,2818049,10944513],"hash":[10420227],"halftime":[3997697],"hierarchy":[524289,786433,1310721,1638401,2555905,2752513,3342337,6553601,6684673,6946817,7995393,8257537,8323073,12976129,16056321,16121857,18219009,18743297],"httpclient":[12845063,14680078],"http":[12845059,14680065],"hardrock":[3997697],"hashes":[10420225]}
--------------------------------------------------------------------------------
/docs/fti/FTI_105.json:
--------------------------------------------------------------------------------
1 | {"int32":[131073,393217,589825,917505,1048577,1703937,1769473,2949121,3932161,4456449,4587521,4653057,6422529,6488068,7405569,8126465,8519681,9437185,10420225,11010049,13303809,14090241,15204353,17694721,17760257,17891329],"introduction":[4784129,18022401],"int64":[262146,458757,589828,1507330,1835015,2097154,2818054,3080194,3473410,3670018,4325382,5046276,5111810,5177346,5242882,5767170,5898242,6356994,7208962,7667714,7864322,8192002,8388610,9175042,9371650,9502722,9764866,9830402,9895938,10420226,10616834,10747906,10944515,11075586,11337730,11468802,11599874,12124162,12255234,12320770,12713986,12779522,13434946,13500418,13762562,13828098,14745602,15007746,15400962,15794178,15925250,15990789,16121861,16252930,16384002,16449538,16515074,17432578,17498114,17825794],"input":[1245189],"interfaces":[18284545],"int":[131077,393221,589827,917509,1048581,1703941,1769477,2949125,3932165,4456453,4587525,4653061,6422533,6488067,6684673,7405571,8126469,8519685,9437189,10158081,10420227,11010053,13303813,14090243,15204357,17694723,17760261,17891333],"instance":[524289,655361,786433,1310721,1638401,2359297,2555905,2752513,3342337,4390913,4521985,4915201,5570561,6553601,6684673,6881281,6946817,7602177,7995393,8257537,8323073,8847361,10420225,10682369,12517377,12845057,12976129,13893633,15597569,16056321,16580609,17170433,18219009,18481153,18743297],"initializes":[524289,655361,786433,1310721,1638401,2359297,2555905,2752513,3342337,4390913,4521985,4915201,5570561,6553601,6684673,6881281,6946817,7602177,7995393,8257537,8323073,8847361,10682369,12517377,12845057,12976129,13893633,15597569,16056321,16580609,17170433,18219009,18481153,18743297],"internal":[327683,2555906,2752514,6684674,14680065,16056322,17104899],"informations":[589825,4325377,5046273,7405569,9043969,14090241,15990790,16121862,17694721],"information":[589826,7405569,10420225,14090241,15990785,16121857,17694721],"inheritance":[524289,786433,1310721,1638401,2555905,2752513,3342337,6553601,6684673,6946817,7995393,8257537,8323073,12976129,16056321,16121857,18219009,18743297],"int16":[3407874,12910594,17235970,17301506],"inherited":[2293762,2752514,3342338,7995394,8585218,10485762],"integer":[131073,393217,589825,917505,1048577,1703937,1769473,2949121,3932161,4456449,4587521,4653057,6422529,6488065,7405569,8126465,8519681,9437185,10420225,11010049,13303809,14090241,15204353,17694721,17760257,17891329],"inherits":[2752513,3342337,7995393],"interface":[524289,786433,1310721,1572865,6946817,8257537,10813441,12189701,18219009,18284545,18743297],"inherit":[2752513,3342337,7995393],"indicating":[2293762,2752514,3342338,7995394,8585218,10485762],"included":[10420227,15073281],"image":[720897,5832710,8257537],"implements":[524289,786433,1310721,2162689,4128769,6225921,6815745,6946817,8257537,10027009,11796481,13369345,18219009,18743297],"independently":[10420225]}
--------------------------------------------------------------------------------
/docs/fti/FTI_106.json:
--------------------------------------------------------------------------------
1 | {"jsonconverter":[2293764,2752524,3342348,5701635,6029315,7012355,7995404,8585220,10485764],"join_date":[720897,6094854,8257537],"json":[851980,2293762,2752514,3342338,3735564,7995394,8585218,8650764,10485762,12648456,15335432,17367048],"jsonserializer":[851980,2752514,3342338,3735564,5701634,6029314,7012354,7995394,8650764,12648458,15335434,17367050],"jsonwriter":[2752513,3342337,5701633,6029313,7012353,7995393,12648458,15335434,17367050],"jsonreader":[851980,2752513,3342337,3735564,5701633,6029313,7012353,7995393,8650764]}
--------------------------------------------------------------------------------
/docs/fti/FTI_107.json:
--------------------------------------------------------------------------------
1 | {"key8":[3997697],"key9":[3997697],"keycoop":[3997697],"key":[327686,2686977,14680071,16056321,16121857],"key1":[3997697],"key2":[3997697],"key3":[3997697],"key4":[3997697],"key5":[3997697],"key6":[3997697],"key7":[3997697]}
--------------------------------------------------------------------------------
/docs/fti/FTI_108.json:
--------------------------------------------------------------------------------
1 | {"lobby":[15990785,16121857,17694722],"library":[18022402],"lastmod":[3997697],"logical":[10420225],"locate":[18087937],"list":[2424839,3866625,5046273,10944518,11141127,13565959],"level":[720897,3604486,8257537],"let":[589828,2818049,7405570,9043970,10420232,14090242,14680066],"long":[262152,458756,589832,1507336,1835012,2097156,2818056,3080200,3473416,3670024,4325384,5111816,5177352,5242888,5767176,5898248,6357000,7208968,7667720,7864328,8192008,8388616,9175048,9371656,9502728,9764872,9830408,9895944,10420228,10616840,10747912,10944516,11075592,11337736,11468808,11599880,12124168,12255240,12320776,12713992,12779528,13434904,13500424,13762568,13828104,14745608,15007752,15400968,15794184,15925252,16252936,16384008,16449544,16515080,17432584,17498120,17825800],"looking":[18087937],"language_id":[786433,11927553,12582918],"link":[1],"load":[17956865],"longer":[18087937],"loved":[16711681],"last_update":[786433,11927553,18677766]}
--------------------------------------------------------------------------------
/docs/fti/FTI_110.json:
--------------------------------------------------------------------------------
1 | {"nullable":[589839,1966087,2818054,4325382,4980743,5046274,7405578,8060935,9043978,9109511,9437189,10420249,12386311,13303815,14090250,15925253,15990786,16121858,16318471],"needed":[2818049,5046273,15990785,16121857],"number":[9043969],"notincluded":[15073281],"nullptr":[589828,2818049,7405570,9043970,10420231,14090242,14680065],"nightcore":[3997697],"namespaces":[10092545],"net":[12845059,14680065],"namespace":[131074,196610,262146,327682,393218,458754,524290,589826,655362,720897,786434,851970,917506,1048578,983041,1114114,1179650,1245186,1310722,1376258,1441794,1507330,1572866,1638402,1703938,1769474,1835010,1900546,1966082,2031618,2097154,2162690,2228226,2293761,2359298,2424834,2490370,2555906,2621441,2686977,2752514,2818050,2883586,2949122,3014658,3080194,3145730,3211266,3276802,3342338,3407874,3473410,3538946,3604482,3670018,3735554,3801090,3866625,3932162,3997698,4063233,4128770,4194306,4259842,4325378,4390914,4456450,4521986,4587522,4653058,4718593,4849665,4915202,4980738,5046273,5111810,5177346,5242882,5308418,5373953,5439490,5505026,5570562,5636097,5701633,5767170,5832706,5898242,5963778,6029313,6094850,6160385,6225922,6291458,6356994,6422530,6488066,6553602,6619138,6684674,6750210,6815746,6881282,6946818,7012353,7077890,7143426,7208962,7274497,7340034,7405570,7471106,7536642,7602178,7667714,7798786,7733250,7864322,7929858,7995394,8060930,8126466,8192002,8257538,8323074,8388610,8454146,8519682,8585217,8650754,8716290,8781826,8847362,8912898,8978434,9043970,9109506,9175042,9240578,9306114,9371650,9437186,9502722,9568258,9633794,9699330,9764866,9830402,9895938,9961474,10027010,10092545,10158081,10223618,10289153,10354689,10420226,10485761,10551298,10616834,10682370,10747906,10813441,10878978,10944514,11010050,11075586,11141122,11206658,11272193,11337730,11403266,11468802,11534337,11599874,11665410,11730946,11796482,11862018,11927553,11993090,12058626,12124162,12189698,12255234,12320770,12386306,12451842,12517378,12582914,12648450,12713986,12779522,12845058,12910594,12976130,13041666,13107202,13172738,13238274,13303810,13369346,13434882,13500418,13565954,13631490,13697025,13762562,13828098,13893634,13959170,14024706,14090242,14155777,14221314,14286850,14352386,14417922,14483457,14548993,14614530,14680066,14745602,14811138,14876674,14942210,15007746,15073282,15138818,15204354,15269890,15335426,15400962,15466498,15532034,15597570,15663106,15728642,15794178,15859714,15925250,15990785,16056322,16121858,16187394,16252930,16318466,16384002,16449538,16515074,16580610,16646146,16711682,16777217,16842754,16908290,16973826,17039362,17104898,17170434,17235970,17301506,17367042,17432578,17498114,17563649,17629186,17694722,17760258,17825794,17891330,18153474,18219010,18284545,18350082,18415618,18481154,18546690,18612226,18677762,18743298,18808834,18874370],"newtonsoft":[851980,3735564,8650764,12648456,15335432,17367048],"null":[589832,2818050,7405572,9043972,10420238,14090244,14680068],"need":[5636097,11272193,14417921,14876673,18219009,18743297],"nofail":[3997697],"new":[524289,655363,786433,1310721,1638401,2359299,2555905,2752513,3342337,4390915,4521987,4915203,5570563,6553601,6684673,6881283,6946817,7602179,7995393,8257537,8323073,8847363,10682371,12517379,12845059,12976129,13893635,14680066,15597571,16056321,16580611,17170435,18219009,18481155,18743297],"nuget":[18022401]}
--------------------------------------------------------------------------------
/docs/fti/FTI_111.json:
--------------------------------------------------------------------------------
1 | {"object":[524289,786433,851986,1310721,1638401,2555905,2752515,3342339,3735570,5701634,6029314,6553601,6684673,6946817,7012354,7995395,8257537,8323073,8650770,12648458,12976129,15335434,16056321,16121857,17104905,17367050,18219009,18743297],"objects":[14680065],"osuapiurl":[2686977,16056321,18874375],"occurred":[17956865],"optional":[589833,2818050,4784129,7405573,9043974,10420244,14090245,14680068],"osubeatmap":[786442,917507,1048579,1966083,2162691,2949123,3014659,3276803,3670019,4194310,4980739,5111811,5308419,6422531,7143427,7733250,7929859,8454147,9109507,9240579,9306115,9568259,9633795,10420229,10551299,10878979,11927555,12058627,12386307,12582915,13107203,13172739,13238275,13303811,13434894,14024707,14286851,14483457,15138819,15728643,16056321,16973827,17629187,17760259,18284545,18481158,18677763,18808835],"osu_direct":[786433,11927553,15728646],"osuuserbest":[1769475,2359302,3145731,9371651,9830403,11075587,11272195,11599875,13369347,13828099,14090245,14483457,14614534,14811139,14876674,14942211,15663107,16056321,16252931,16646147,17432579,17498115,17825795,18284545,18743306],"overrides":[851969,2752515,3342339,3735553,5701635,6029315,7012355,7995395,8650753,9699329,11206657,12648449,13631489,15335425,17367041],"osuclient":[589826,2818050,4325378,5046274,7405570,9043970,10420226,10944514,14090242,14680069,15990787,16121865,16777217,17694722],"one":[4784129],"osudowload":[14483457,16056321,16187398],"overload":[2031617,2818049,3866625,4325377,5046273,9961473],"osudirect":[6619142,14483457,16056321],"osuuser":[131075,196611,262147,393219,720899,1114115,1507331,1703939,2228227,3538947,3604483,3932163,4456451,4521990,4653059,5832707,6094851,6356995,6815747,8126467,8257546,8978435,9043973,9502723,9895939,10223619,12713987,13565955,14352390,14483457,15400963,16056321,17891331,18153475,18284545,18350083],"osuuserrecent":[5242883,5439491,5636099,5898243,5963779,6225923,7077891,7208963,7405573,7602182,8192003,8519683,10616835,11468803,11862022,14417922,14483457,14745603,15007747,16056321,16384003,16842755,18219018,18284545],"obj":[2031622],"osr":[2818050,5046273,10420225,10944513,15990785,16121857],"override":[851971,2162689,3735555,4128769,6225921,6815745,8650755,9699331,10027009,11206659,11796481,12648451,13369345,13631491,15335427,17367043,18874369],"overridable":[18874369],"objs":[9961478],"osureplay":[1900547,4325381,6946826,10027011,13041670,13697027,13893638,14483457,15269891,16056321,18284545],"osuscore":[524298,589829,1376259,3473411,4390918,5177347,6750211,7798787,8716291,9764867,11010051,11337731,11403267,11796483,12320771,12779523,12910595,13762563,15794179,15859715,17563651,18284545],"objecttype":[851975,3735559,8650759,9699335,11206663,13631495],"osumatch":[1310730,4128771,8781827,11141123,14483457,14548995,15466502,15597574,16056321,17694725,18284545],"osuscores":[7471110,14483457,16056321],"osumania":[3211265],"osu":[589827,786433,2818049,3211265,7405570,7733249,9043970,10420226,10944513,11927553,14090242,14680065,16121857]}
--------------------------------------------------------------------------------
/docs/fti/FTI_112.json:
--------------------------------------------------------------------------------
1 | {"pending":[16711681],"perfect":[524289,983041,1179654,1638401,3997697,5636097,7077894,8716294,11272193,15663110,17563649,18219009,18743297],"property":[131076,196612,262148,327684,393220,917508,1048580,1114116,1179652,1376260,1507332,1572868,1703940,1769476,1900548,1966084,2162692,2228228,2424836,2490372,2883588,2949124,3014660,3080196,3145732,3276804,3407876,3473412,3538948,3604484,3670020,3801092,3932164,4128772,4456452,4587524,4653060,4980740,5111812,5177348,5242884,5308420,5439492,5505028,5767172,5832708,5898244,5963780,6094852,6225924,6356996,6422532,6750212,6815748,7077892,7143428,7208964,7340036,7667716,7798788,7733252,7864324,7929860,8060932,8126468,8192004,8388612,8454148,8519684,8716292,8781828,8978436,9109508,9175044,9240580,9306116,9371652,9502724,9568260,9633796,9764868,9830404,9895940,10027012,10223620,10551300,10616836,10747908,10878980,11010052,11075588,11141124,11337732,11403268,11468804,11599876,11730948,11796484,12058628,12124164,12255236,12320772,12386308,12451844,12582916,12713988,12779524,12910596,13107204,13172740,13238276,13303812,13369348,13500420,13565956,13762564,13828100,13959172,14024708,14221316,14286852,14417924,14745604,14811140,14876676,14942212,15007748,15138820,15204356,15269892,15400964,15663108,15728644,15794180,15859716,16252932,16318468,16384004,16449540,16515076,16646148,16842756,16973828,17039364,17235972,17301508,17432580,17498116,17629188,17760260,17825796,17891332,18153476,18350084,18415620,18546692,18677764,18808836,18874372],"param":[458753,851972,1441793,1835011,2031617,3735556,4259841,6488065,7536641,8650756,9699329,9961473,11206657,11993089,12648451,12845058,13434887,13631489,15335427,15532033,16580609,17104898,17367043],"protected":[18874371],"pass":[983041,1638401,18546694],"playcount":[720897,786433,1507334,2949126,8257537,11927553],"ppy":[589825,2818049,10944513],"pp_country_rank":[131078,720897,8257537],"parameters":[458753,589825,851969,1245185,1441793,1835009,2031617,2097153,2818049,3735553,4259841,4325377,6488065,7405569,7536641,8650753,8912897,9043969,9437185,9699329,9961473,10420225,10944513,11206657,11665409,11993089,12648449,12845057,13434881,13631489,14090241,14680065,15335425,15532033,15925249,16580609,17104897,17367041,17694721,18612225],"persists":[17956865],"project":[18022401],"play_mode":[6553601,11534337,11730950],"properties":[524289,720898,786433,983042,1310721,1638401,2293762,2621442,2686978,2752513,3342337,4849666,5636098,6553601,6946817,7995393,8257537,8323073,8585218,10485762,10813442,11272194,11534338,11927554,12189697,12976129,13697026,14548994,16056321,17563650,18219009,18743297],"params":[17104897],"private":[2097156,11993092,16908292],"pp_raw":[720897,8257537,18350086],"played":[2818051,4325379,10420225],"provide":[10420225],"page":[17956865,18087940],"paramarray":[17104897],"public":[131075,196611,262147,327683,393219,458755,524291,589827,655363,786435,851971,917507,1048579,1114115,1179651,1245187,1310723,1376259,1441795,1507331,1638403,1703939,1769475,1835011,1900547,1966083,2031619,2162691,2228227,2359299,2424835,2490371,2752513,2818051,2883587,2949123,3014659,3080195,3145731,3211267,3276803,3342340,3407875,3473411,3538947,3604483,3670019,3735555,3801091,3932163,3997699,4128771,4194307,4259843,4325379,4390915,4456451,4521987,4587523,4653059,4915203,4980739,5111811,5177347,5242883,5308419,5439491,5505027,5570563,5767171,5832707,5898243,5963779,6094851,6225923,6291459,6356995,6422531,6488067,6553603,6619139,6750211,6815747,6881283,6946819,7077891,7143427,7208963,7340035,7405571,7471107,7536643,7602179,7667715,7798787,7733251,7864323,7929859,7995396,8060931,8126467,8192003,8257539,8323075,8388611,8454147,8519683,8650755,8716291,8781827,8847363,8912899,8978435,9043971,9109507,9175043,9240579,9306115,9371651,9437187,9502723,9568259,9633795,9699331,9764867,9830403,9895939,9961475,10027011,10223619,10420227,10551299,10616835,10682371,10747907,10878979,10944515,11010051,11075587,11141123,11206659,11337731,11403267,11468803,11599875,11665411,11730947,11796483,11862019,12058627,12124163,12189699,12255235,12320771,12386307,12451843,12517379,12582915,12648451,12713987,12779523,12845059,12910595,12976131,13041667,13107203,13172739,13238275,13303811,13369347,13434883,13500419,13565955,13631491,13762563,13828099,13893635,13959171,14024707,14090243,14221315,14286851,14352387,14417923,14614531,14680067,14745603,14811139,14876675,14942211,15007747,15073283,15138819,15204355,15269891,15335427,15400963,15466499,15532035,15597571,15663107,15728643,15794179,15859715,15925251,16121859,16187395,16252931,16318467,16384003,16449539,16515075,16580611,16646147,16711683,16842755,16973827,17039363,17170435,17235971,17301507,17367043,17432579,17498115,17629187,17694723,17760259,17825795,17891331,18153475,18219011,18350083,18415619,18481155,18546691,18612227,18677763,18743299,18808835],"passcount":[786433,917510,11927553],"pp_rank":[393222,720897,8257537]}
--------------------------------------------------------------------------------
/docs/fti/FTI_113.json:
--------------------------------------------------------------------------------
1 | {"querystrings":[17104902],"qualified":[16711681]}
--------------------------------------------------------------------------------
/docs/fti/FTI_114.json:
--------------------------------------------------------------------------------
1 | {"recent":[7405570,15990785,16121857],"returns":[458753,851969,1245185,1441793,1835009,2097153,3735553,4259841,6291457,6488065,7536641,8650753,9699329,11206657,11993089,13434881,13631489,15532033,17104897],"rating":[786433,9568262,10420225,11927553],"relax2":[3997697],"requested":[18087937],"random":[3997697],"request":[10420225],"replay":[1835018,2818049,4063233,4325379,5046273,10420225,15990785,16056321,16121857],"relax":[3997697],"returned":[9043969,10420226,14680065],"round":[5636097,11272193,14417921,14876673,18219009,18743297],"rank":[524289,983041,1638401,5439494,5636097,6750214,11272193,14221318,16646150,17563649,18219009,18743297],"ranked":[10420225,16711681],"reference":[131073,196609,262145,327681,393217,458753,524289,589825,655361,720897,786433,851969,917505,1048577,983041,1114113,1179649,1245185,1310721,1376257,1441793,1507329,1572865,1638401,1703937,1769473,1835009,1900545,1966081,2031617,2097153,2162689,2228225,2293761,2359297,2424833,2490369,2555905,2621441,2686977,2752513,2818049,2883585,2949121,3014657,3080193,3145729,3211265,3276801,3342337,3407873,3473409,3538945,3604481,3670017,3735553,3801089,3866625,3932161,3997697,4063233,4128769,4194305,4259841,4325377,4390913,4456449,4521985,4587521,4653057,4849665,4915201,4980737,5046273,5111809,5177345,5242881,5308417,5439489,5505025,5570561,5636097,5701633,5767169,5832705,5898241,5963777,6029313,6094849,6225921,6291457,6356993,6422529,6488065,6553601,6619137,6684673,6750209,6815745,6881281,6946817,7012353,7077889,7143425,7208961,7274497,7340033,7405569,7471105,7536641,7602177,7667713,7733249,7798785,7864321,7929857,7995393,8060929,8126465,8192001,8257537,8323073,8388609,8454145,8519681,8585217,8650753,8716289,8781825,8847361,8912897,8978433,9043969,9109505,9175041,9240577,9306113,9371649,9437185,9502721,9568257,9633793,9699329,9764865,9830401,9895937,9961473,10027009,10158081,10223617,10289153,10420225,10485761,10551297,10616833,10682369,10747905,10813441,10878977,10944513,11010049,11075585,11141121,11206657,11272193,11337729,11403265,11468801,11534337,11599873,11665409,11730945,11796481,11862017,11927553,11993089,12058625,12124161,12189697,12255233,12320769,12386305,12451841,12517377,12582913,12648449,12713985,12779521,12845057,12910593,12976129,13041665,13107201,13172737,13238273,13303809,13369345,13434881,13500417,13565953,13631489,13697025,13762561,13828097,13893633,13959169,14024705,14090241,14221313,14286849,14352385,14417921,14483457,14548993,14614529,14680065,14745601,14811137,14876673,14942209,15007745,15073281,15138817,15204353,15269889,15335425,15400961,15466497,15532033,15597569,15663105,15728641,15794177,15859713,15925249,15990785,16056321,16121857,16187393,16252929,16318465,16384001,16449537,16515073,16580609,16646145,16711681,16842753,16908289,16973825,17039361,17104897,17170433,17235969,17301505,17367041,17432577,17498113,17563649,17629185,17694721,17760257,17825793,17891329,18153473,18219009,18350081,18415617,18481153,18546689,18612225,18677761,18743297,18808833,18874369],"redirected":[1],"replays":[10420225],"ranked_score":[720897,8257537,9502726],"range":[589825,7405569,9043969,14090241],"readjson":[851980,2752514,3342338,3735564,5701634,6029314,7012354,7995394,8650764],"required":[4784129,9043969],"return":[458753,589828,851969,1245185,1441793,1835009,2097153,2818050,3735553,4259841,4325378,5046274,6291457,6488065,7405571,7536641,8650753,9043971,9699329,10420228,10944514,11206657,11993089,13434881,13631489,14090243,15532033,15990793,16121865,17104897,17694722],"read":[2293761,2752513,3342337,7995393,8585217,10485761],"readonly":[18874369],"ref":[524289,786433,1310721,1638401,2555905,2752513,3342337,6553601,6684673,6946817,7995393,8257537,8323073,12976129,16056321,16121857,18219009,18743297],"results":[589825,7405569,10420225,14090241],"reader":[851975,3735559,8650759]}
--------------------------------------------------------------------------------
/docs/fti/FTI_116.json:
--------------------------------------------------------------------------------
1 | {"typo":[18087937],"true":[10420228],"target":[3997697],"throw":[14680065],"tags":[786433,9306118,11927553],"title":[65537,786433,4784129,11927553,17629190],"thumbnail":[786433,11927553,16973830],"taiko":[589825,3211265,7405569,9043969,10420225,14090241],"type":[131073,196609,262145,327681,393217,458754,524290,589830,720897,786434,851985,917505,983041,1048577,1114113,1179649,1245186,1310722,1376257,1441794,1507329,1572865,1638402,1703937,1769473,1835012,1900545,1966081,2031617,2097154,2162689,2228225,2293761,2424833,2490369,2555906,2621441,2686977,2752516,2818053,2883585,2949121,3014657,3080193,3145729,3211265,3276801,3342340,3407873,3473409,3538945,3604481,3670017,3735569,3801089,3932161,3997697,4063233,4128769,4194305,4259842,4325381,4456449,4587521,4653057,4849665,4980737,5111809,5177345,5242881,5308417,5439489,5505025,5636097,5701635,5767169,5832705,5898241,5963777,6029315,6094849,6225921,6291457,6356993,6422529,6488066,6553602,6619137,6684674,6750209,6815745,6946818,7012355,7077889,7143425,7208961,7340033,7405572,7471105,7536642,7667713,7733249,7798785,7864321,7929857,7995396,8060929,8126465,8192001,8257538,8323074,8388609,8454145,8519681,8585217,8650769,8716289,8781825,8912897,8978433,9043972,9109505,9175041,9240577,9306113,9371649,9437185,9502721,9568257,9633793,9699339,9764865,9830401,9895937,9961473,10027009,10158081,10223617,10289153,10420233,10485761,10551297,10616833,10747905,10813441,10878977,10944514,11010049,11075585,11141121,11206667,11272193,11337729,11403265,11468801,11534337,11599873,11665409,11730945,11796481,11862017,11927553,11993090,12058625,12124161,12189698,12255233,12320769,12386305,12451841,12582913,12648451,12713985,12779521,12845058,12910593,12976130,13041665,13107201,13172737,13238273,13303809,13369345,13434888,13500417,13565953,13631499,13697025,13762561,13828097,13959169,14024705,14090244,14221313,14286849,14352385,14417921,14483457,14548993,14614529,14680067,14745601,14811137,14876673,14942209,15007745,15073281,15138817,15204353,15269889,15335427,15400961,15466497,15532034,15663105,15728641,15794177,15859713,15925249,15990785,16056322,16121858,16187393,16252929,16318465,16384001,16449537,16515073,16580609,16646145,16711681,16842753,16908289,16973825,17039361,17104899,17235969,17301505,17367043,17432577,17498113,17563649,17629185,17694722,17760257,17825793,17891329,18153473,18219010,18350081,18415617,18546689,18612225,18677761,18743298,18808833,18874369],"total_score":[720897,8257537,9895942],"total_length":[786433,11927553,17760262],"topic":[1],"top":[524290,589825,720897,786434,983041,1310722,1638402,2293761,2555907,2621441,2686977,2752515,3342339,3866625,4063233,4849665,5046273,5636097,5701633,6029313,6553602,6684674,6946818,7012353,7274497,7405569,7995395,8257538,8323074,8585217,10158081,10289153,10485761,10813441,11272193,11534337,11927553,12189697,12976130,13697025,14090241,14483457,14548993,15990785,16056324,16121858,17563649,18087937,18219010,18743298],"team_type":[2883590,6553601,11534337],"trying":[10420225],"team":[983041,1638401,17301510],"throwifnull":[2555905,7274497,16908294],"touchdevice":[3997697],"timestamp":[2097153,6684674,10158082,11665409],"total_seconds_played":[720897,8257537,17891334],"try":[17956865,18087937]}
--------------------------------------------------------------------------------
/docs/fti/FTI_117.json:
--------------------------------------------------------------------------------
1 | {"utility":[1441797,2031620,2555914,3866626,7274498,9961476,10289155,10354689,12845064,13434891,16908291],"util":[327683,458757,851976,1245187,1441797,1835021,2031620,2097155,2293761,2555908,2686977,2752516,2818049,3211267,3342340,3735560,3866625,3997699,4063233,4194307,4259845,4325377,4718594,4915202,5373954,5570562,5701633,6029313,6160386,6291460,6488069,6619139,6684676,7012353,7274497,7471107,7536645,7995396,8585217,8650760,8912898,9437186,9699333,9961476,10092549,10158081,10289153,10354690,10485761,11206661,11665410,11862019,11993097,12517378,12648454,12845060,13041667,13434891,13631493,14155778,14352387,14483457,14614531,15073283,15335430,15466499,15532037,15925250,16056324,16187395,16580611,16711683,16908291,17104902,17170434,17367046,18612226,18874371],"unix":[2097153,6684673,10158081],"username":[524289,589825,720897,1114118,1376262,7405569,8257537,9043969,10420225,14090241,17563649],"unsigned":[2818049],"used":[10420225],"user":[1835014,2818049,4063233,4259846,4325377,7405570,7536648,9043971,10420225,14090242,15532038,15990787,16056321,16121859],"user_best":[4063233,15532040,16056321],"unit":[655361,2031617,2359297,4390913,4521985,4915201,5570561,6291457,6881281,7602177,8847361,8912897,9437185,9961473,10682369,11665409,12517377,12648450,13893633,15335426,15597569,15925249,17170433,17367042,18481153,18612225],"user_recent":[4063233,4259848,16056321],"url":[720897,1441798,8257537,10223622,18087937],"user_id":[524289,589825,720897,983041,1638401,3473414,5242886,5636097,7405569,8257537,8388614,11272193,14090241,15400966,17498118,17563649,18219009,18743297]}
--------------------------------------------------------------------------------
/docs/fti/FTI_118.json:
--------------------------------------------------------------------------------
1 | {"val":[4194305,6619137,7471105,11862017,13041665,14352385,14614529,15466497,16187393,16908289],"void":[131073,196609,262145,327681,393217,917505,1048577,1114113,1179649,1376257,1507329,1572865,1703937,1769473,1900545,1966081,2031618,2162689,2228225,2424833,2490369,2883585,2949121,3014657,3080193,3145729,3276801,3407873,3473409,3538945,3604481,3670017,3801089,3932161,4128769,4456449,4587521,4653057,4980737,5111809,5177345,5242881,5308417,5439489,5505025,5767169,5832705,5898241,5963777,6094849,6225921,6356993,6422529,6750209,6815745,7077889,7143425,7208961,7340033,7667713,7798785,7733249,7864321,7929857,8060929,8126465,8192001,8388609,8454145,8519681,8716289,8781825,8912898,8978433,9109505,9175041,9240577,9306113,9371649,9437186,9502721,9568257,9633793,9764865,9830401,9895937,9961474,10027009,10223617,10551297,10616833,10747905,10878977,11010049,11075585,11141121,11337729,11403265,11468801,11599873,11665410,11730945,11796481,12058625,12124161,12255233,12320769,12386305,12451841,12582913,12648450,12713985,12779521,12910593,13107201,13172737,13238273,13303809,13369345,13500417,13565953,13762561,13828097,13959169,14024705,14221313,14286849,14417921,14745601,14811137,14876673,14942209,15007745,15138817,15204353,15269889,15335426,15400961,15663105,15728641,15794177,15859713,15925250,16252929,16318465,16384001,16449537,16515073,16646145,16842753,16973825,17039361,17235969,17301505,17367042,17432577,17498113,17629185,17760257,17825793,17891329,18153473,18350081,18415617,18546689,18612226,18677761,18808833],"value":[131074,196610,262146,327682,393218,458753,589826,851969,917506,1048578,1114114,1179650,1245185,1376258,1441793,1507330,1572866,1703938,1769474,1835009,1900546,1966082,2097153,2162690,2228226,2293762,2424834,2490370,2752514,2818049,2883586,2949122,3014658,3080194,3145730,3211265,3276802,3342338,3407874,3473410,3538946,3604482,3670018,3735553,3801090,3932162,3997697,4128770,4194305,4259841,4325377,4456450,4587522,4653058,4980738,5111810,5177346,5242882,5308418,5439490,5505026,5636097,5767170,5832706,5898242,5963778,6094850,6225922,6291457,6356994,6422530,6488065,6619137,6750210,6815746,7077890,7143426,7208962,7340034,7405570,7471105,7536641,7667714,7798786,7733250,7864322,7929858,7995394,8060930,8126466,8192002,8388610,8454146,8519682,8585218,8650753,8716290,8781826,8978434,9043970,9109506,9175042,9240578,9306114,9371650,9502722,9568258,9633794,9699329,9764866,9830402,9895938,10027010,10223618,10420225,10485762,10551298,10616834,10747906,10878978,10944513,11010050,11075586,11141122,11206657,11272193,11337730,11403266,11468802,11599874,11730946,11796482,11862017,11993089,12058626,12124162,12255234,12320770,12386306,12451842,12582914,12648455,12713986,12779522,12910594,13041665,13107202,13172738,13238274,13303810,13369346,13434881,13500418,13565954,13631489,13762562,13828098,13959170,14024706,14090242,14221314,14286850,14352385,14417923,14614529,14745602,14811138,14876675,14942210,15007746,15073281,15138818,15204354,15269890,15335431,15400962,15466497,15532033,15663106,15728642,15794178,15859714,16187393,16252930,16318466,16384002,16449538,16515074,16646146,16711681,16842754,16908289,16973826,17039362,17104897,17235970,17301506,17367047,17432578,17498114,17629186,17694721,17760258,17825794,17891330,18153474,18219009,18350082,18415618,18546690,18677762,18743297,18808834,18874369],"version":[131073,196609,262145,327681,393217,458753,524289,589825,655361,786434,851969,917505,1048577,1114113,1179649,1245185,1310721,1376257,1441793,1507329,1572865,1638401,1703937,1769473,1835009,1900545,1966081,2031617,2097153,2162689,2228225,2359297,2424833,2490369,2555905,2752513,2818049,2883585,2949121,3014657,3080193,3145729,3211265,3276801,3342337,3407873,3473409,3538945,3604481,3670017,3735553,3801089,3932161,3997697,4128769,4194305,4259841,4325377,4390913,4456449,4521985,4587521,4653057,4915201,4980737,5111809,5177345,5242881,5308417,5439489,5505025,5570561,5767169,5832705,5898241,5963777,6094849,6225921,6291457,6356993,6422529,6488065,6553601,6619137,6684673,6750209,6815745,6881281,6946817,7077889,7143425,7208961,7340033,7405569,7471105,7536641,7602177,7667713,7733250,7798785,7864321,7929857,7995393,8060929,8126465,8192001,8257537,8323073,8388609,8454145,8519681,8650753,8716289,8781825,8847361,8912897,8978433,9043969,9109505,9175041,9240577,9306113,9371649,9437185,9502721,9568257,9633793,9699329,9764865,9830401,9895937,9961473,10027009,10223617,10420225,10551297,10616833,10682369,10747905,10878977,10944513,11010049,11075585,11141121,11206657,11337729,11403265,11468801,11599873,11665409,11730945,11796481,11862017,11927553,11993089,12058625,12124161,12189697,12255233,12320769,12386305,12451841,12517377,12582913,12648449,12713985,12779521,12845057,12910593,12976129,13041665,13107201,13172737,13238273,13303809,13369345,13434881,13500417,13565953,13631489,13762561,13828097,13893633,13959169,14024705,14090241,14221313,14286849,14352385,14417921,14614529,14680065,14745601,14811137,14876673,14942209,15007745,15073281,15138817,15204353,15269889,15335425,15400961,15466497,15532033,15597569,15663105,15728641,15794177,15859713,15925249,16056321,16121857,16187393,16252929,16318465,16384001,16449537,16515073,16580609,16646145,16711681,16842753,16908289,16973825,17039361,17104897,17170433,17235969,17301505,17367041,17432577,17498113,17629185,17694721,17760257,17825793,17891329,18153473,18219009,18350081,18415617,18481153,18546689,18612225,18677761,18743297,18808833,18874369],"virtual":[851969,2162689,3735553,4128769,6225921,6815745,8650753,9699329,10027009,11206657,11796481,12648449,13369345,13631489,15335425,17367041,18874370]}
--------------------------------------------------------------------------------
/docs/fti/FTI_119.json:
--------------------------------------------------------------------------------
1 | {"write":[2293761,2752513,3342337,7995393,8585217,10485761],"writejson":[2752514,3342338,5701634,6029314,7012354,7995394,12648458,15335434,17367050],"writer":[12648455,15335431,17367047],"writeinteger":[6684673,9437189,10158081],"wiki":[589825,2818049,10944513],"web":[18087937],"writestring":[6684673,10158081,18612229],"wip":[18022401],"writeshort":[6684673,10158081,15925253],"writedate":[6684673,10158081,11665413],"writebyte":[6684673,8912901,10158081]}
--------------------------------------------------------------------------------
/docs/fti/FTI_95.json:
--------------------------------------------------------------------------------
1 | {"_mp":[17694725],"_throwifnull":[12845062,14680071],"_binwriter":[16580614],"_id":[10420231],"_isset":[10420231],"_client":[12845062],"_limit":[589831,7405575,10420231,14090247],"_since":[10420231],"_event_days":[9043975],"_mods":[589831,2818055,4325381]}
--------------------------------------------------------------------------------
/docs/fti/FTI_97.json:
--------------------------------------------------------------------------------
1 | {"array":[589825,2818049,3801091,7405569,7798787,9043969,9961473,10420225,11993089,13434881,14090241,14942211,16842755,17104897],"assembly":[131073,196609,262145,327681,393217,458753,524289,589825,655361,786433,851969,917505,1048577,1114113,1179649,1245185,1310721,1376257,1441793,1507329,1572865,1638401,1703937,1769473,1835009,1900545,1966081,2031617,2097153,2162689,2228225,2359297,2424833,2490369,2555905,2752513,2818049,2883585,2949121,3014657,3080193,3145729,3211265,3276801,3342337,3407873,3473409,3538945,3604481,3670017,3735553,3801089,3932161,3997697,4128769,4194305,4259841,4325377,4390913,4456449,4521985,4587521,4653057,4915201,4980737,5111809,5177345,5242881,5308417,5439489,5505025,5570561,5767169,5832705,5898241,5963777,6094849,6225921,6291457,6356993,6422529,6488065,6553601,6619137,6684673,6750209,6815745,6881281,6946817,7077889,7143425,7208961,7340033,7405569,7471105,7536641,7602177,7667713,7798785,7733249,7864321,7929857,7995393,8060929,8126465,8192001,8257537,8323073,8388609,8454145,8519681,8650753,8716289,8781825,8847361,8912897,8978433,9043969,9109505,9175041,9240577,9306113,9371649,9437185,9502721,9568257,9633793,9699329,9764865,9830401,9895937,9961473,10027009,10223617,10420225,10551297,10616833,10682369,10747905,10878977,10944513,11010049,11075585,11141121,11206657,11337729,11403265,11468801,11599873,11665409,11730945,11796481,11862017,11993089,12058625,12124161,12189697,12255233,12320769,12386305,12451841,12517377,12582913,12648449,12713985,12779521,12845057,12910593,12976129,13041665,13107201,13172737,13238273,13303809,13369345,13434881,13500417,13565953,13631489,13762561,13828097,13893633,13959169,14024705,14090241,14221313,14286849,14352385,14417921,14614529,14680065,14745601,14811137,14876673,14942209,15007745,15073281,15138817,15204353,15269889,15335425,15400961,15466497,15532033,15597569,15663105,15728641,15794177,15859713,15925249,16056321,16121857,16187393,16252929,16318465,16384001,16449537,16515073,16580609,16646145,16711681,16842753,16908289,16973825,17039361,17104897,17170433,17235969,17301505,17367041,17432577,17498113,17629185,17694721,17760257,17825793,17891329,18153473,18219009,18350081,18415617,18481153,18546689,18612225,18677761,18743297,18808833,18874369],"accuracycalculator":[2555905,10289153,13434894],"automatically":[1],"administrator":[17956865],"abstract":[851969,1572865,2162689,3735553,4128769,6225921,6815745,8650753,9699329,10027009,11206657,11796481,12648449,13369345,13631489,15335425,17367041,18874369],"autoplay":[3997697],"artist":[786433,7143430,11927553],"approvedconvert":[851976,6029315,6160385,7995402,8585219,9699333,15335430,17170438],"accuracy":[196614,720897,5636097,8257537,11272193,14417925,14876677,18219009,18743297],"approved":[786433,10878982,11927553,16711681],"address":[18087937],"available":[18087937],"approved_date":[786433,1966086,11927553],"aimrating":[786433,11927553,12386310],"add":[4784129,18022401],"a5b99395a42bd55bc5eb1d2411cbdf8b":[10420225],"api":[589825,786433,2818049,7733249,10944513,11927553,14680066,16121857],"approvedstatus":[4718593,10878983,16711686]}
--------------------------------------------------------------------------------
/docs/fti/FTI_98.json:
--------------------------------------------------------------------------------
1 | {"beatmap":[458758,589825,1835014,2818051,4063233,4325379,6291463,10420230,15990785,16056321,16121857],"beatmap_id":[589825,786433,3670022,4849665,5636097,5767174,6553601,8192006,11075590,11272193,11534337,11927553,12976129,16515078,18219009,18743297],"beatmap_url":[786433,11927553,13107206],"box":[18087937],"binary":[6684677,8912897,9437185,10158085,11665409,15925249,18612225],"bool":[1179653,7077893,8716293,9699332,10420227,11206660,12845059,13631492,14680067,15663109,16908291,18546693],"byte":[2818052,6684673,8912897,10158081],"beatmapset":[10420226],"beatmapset_id":[786433,4849665,5111814,11927553,12255238,12976129],"best":[14090242,15990785,16121857],"bytes":[2818050,5046273,10944513,15990785,16121857],"bpm":[786433,10551302,11927553],"boolean":[1179650,7077890,8716290,9699330,10420226,11206658,12845060,13631490,14680066,15663106,16908290,18546690],"binaryhandler":[1245187,2097155,5373954,6684676,8912898,9437186,10092545,10158081,11665410,15925250,16580611,18612226],"boolconvert":[2293763,2752522,6160385,7012355,8650760,11206661,12517382,12648454],"beatmaps":[10420228,15990785,16121857],"binarywriter":[16580614],"beatmapset_url":[786433,11927553,13238278],"binhandler":[1245187,2097155,5373953,6684682,8912898,9437186,10158083,11665410,15925250,16580615,18612226]}
--------------------------------------------------------------------------------
/docs/html/23d51bda-59ca-0528-5673-b745be96e7f5.htm:
--------------------------------------------------------------------------------
1 | Strings Properties
--------------------------------------------------------------------------------
/docs/html/3a44a954-3c37-ef49-d6e9-c3f25882e7ff.htm:
--------------------------------------------------------------------------------
1 | CSharpOsu.Util.BinaryHandler Namespace CSharpOsu.Util.BinaryHandler Namespace
[Missing <summary> documentation for "N:CSharpOsu.Util.BinaryHandler"]
Classes
--------------------------------------------------------------------------------
/docs/html/4a631c4a-2a3b-09ee-9aa7-388f6ea5447e.htm:
--------------------------------------------------------------------------------
1 | CSharpOsu.Util.Enums Namespace CSharpOsu.Util.Enums Namespace
[Missing <summary> documentation for "N:CSharpOsu.Util.Enums"]
Enumerations
--------------------------------------------------------------------------------
/docs/html/4a80c94b-8b72-4f84-b02d-30d32d893f58.htm:
--------------------------------------------------------------------------------
1 | Sample1 Sample1
Optional section titleAdd one or more sections with content
--------------------------------------------------------------------------------
/docs/html/5c76ebcc-b36b-ce5e-736b-406b647981c6.htm:
--------------------------------------------------------------------------------
1 | Utility Fields Utility Fields
Fields See Also
--------------------------------------------------------------------------------
/docs/html/6583ee86-b8df-ee5c-1316-45be8058bf23.htm:
--------------------------------------------------------------------------------
1 | CSharpOsu.Util.Converters Namespace CSharpOsu.Util.Converters Namespace
[Missing <summary> documentation for "N:CSharpOsu.Util.Converters"]
Classes
--------------------------------------------------------------------------------
/docs/html/8e69f29b-0c54-b5fb-69b3-f158059d8aaa.htm:
--------------------------------------------------------------------------------
1 | Documentation Documentation
Namespaces
--------------------------------------------------------------------------------
/docs/html/8f644080-e58c-c8ad-bef6-cd7c66e4d0ea.htm:
--------------------------------------------------------------------------------
1 | CSharpOsu.Util Namespace CSharpOsu.Util Namespace
[Missing <summary> documentation for "N:CSharpOsu.Util"]
Classes
--------------------------------------------------------------------------------
/docs/html/93ae7eac-7b49-6911-4dd5-50e7d70e32b5.htm:
--------------------------------------------------------------------------------
1 | Model Properties
--------------------------------------------------------------------------------
/docs/html/GeneralError.htm:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 | General Error
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
23 |
24 |
We're sorry, a general error has occurred.
25 |
Please try to load the page again. If the error persists, please contact the site administrator.
26 |
27 |
28 |
29 |
30 |
--------------------------------------------------------------------------------
/docs/html/PageNotFound.htm:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 | Page Not Found
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
23 |
24 |
We're sorry, the page you requested cannot be found.
25 |
The URL might be misspelled or the page you are looking for is no longer available. If you entered
26 | the web address, check that it doesn't contain a typo. You can use the search box at the top of the page to
27 | try and locate the page.
28 |
29 |
30 |
31 |
32 |
--------------------------------------------------------------------------------
/docs/html/b8305d66-0b91-8a2d-175c-13057a281a2a.htm:
--------------------------------------------------------------------------------
1 | CSharpOsu.Util.Strings Namespace CSharpOsu.Util.Strings Namespace
[Missing <summary> documentation for "N:CSharpOsu.Util.Strings"]
Classes
--------------------------------------------------------------------------------
/docs/html/f4cf982e-c269-500e-efae-8e6ac9e38e0a.htm:
--------------------------------------------------------------------------------
1 | CSharpOsu Namespace CSharpOsu Namespace
[Missing <summary> documentation for "N:CSharpOsu"]
Classes
--------------------------------------------------------------------------------
/docs/html/introduction.htm:
--------------------------------------------------------------------------------
1 | Introduction(WIP) Introduction(WIP)
First steps to use CSharpOsu library.
Getting Started
2 | To get started, add the library to your project by downloading it from NuGet
--------------------------------------------------------------------------------
/docs/icons/AlertCaution.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/AlertCaution.png
--------------------------------------------------------------------------------
/docs/icons/AlertNote.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/AlertNote.png
--------------------------------------------------------------------------------
/docs/icons/AlertSecurity.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/AlertSecurity.png
--------------------------------------------------------------------------------
/docs/icons/CFW.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/CFW.gif
--------------------------------------------------------------------------------
/docs/icons/CodeExample.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/CodeExample.png
--------------------------------------------------------------------------------
/docs/icons/Help.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/Help.png
--------------------------------------------------------------------------------
/docs/icons/Search.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/Search.png
--------------------------------------------------------------------------------
/docs/icons/SectionCollapsed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/SectionCollapsed.png
--------------------------------------------------------------------------------
/docs/icons/SectionExpanded.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/SectionExpanded.png
--------------------------------------------------------------------------------
/docs/icons/TocClose.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/TocClose.gif
--------------------------------------------------------------------------------
/docs/icons/TocCollapsed.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/TocCollapsed.gif
--------------------------------------------------------------------------------
/docs/icons/TocExpanded.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/TocExpanded.gif
--------------------------------------------------------------------------------
/docs/icons/TocOpen.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/TocOpen.gif
--------------------------------------------------------------------------------
/docs/icons/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/favicon.ico
--------------------------------------------------------------------------------
/docs/icons/privclass.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/privclass.gif
--------------------------------------------------------------------------------
/docs/icons/privdelegate.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/privdelegate.gif
--------------------------------------------------------------------------------
/docs/icons/privenumeration.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/privenumeration.gif
--------------------------------------------------------------------------------
/docs/icons/privevent.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/privevent.gif
--------------------------------------------------------------------------------
/docs/icons/privextension.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/privextension.gif
--------------------------------------------------------------------------------
/docs/icons/privfield.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/privfield.gif
--------------------------------------------------------------------------------
/docs/icons/privinterface.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/privinterface.gif
--------------------------------------------------------------------------------
/docs/icons/privmethod.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/privmethod.gif
--------------------------------------------------------------------------------
/docs/icons/privproperty.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/privproperty.gif
--------------------------------------------------------------------------------
/docs/icons/privstructure.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/privstructure.gif
--------------------------------------------------------------------------------
/docs/icons/protclass.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/protclass.gif
--------------------------------------------------------------------------------
/docs/icons/protdelegate.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/protdelegate.gif
--------------------------------------------------------------------------------
/docs/icons/protenumeration.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/protenumeration.gif
--------------------------------------------------------------------------------
/docs/icons/protevent.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/protevent.gif
--------------------------------------------------------------------------------
/docs/icons/protextension.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/protextension.gif
--------------------------------------------------------------------------------
/docs/icons/protfield.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/protfield.gif
--------------------------------------------------------------------------------
/docs/icons/protinterface.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/protinterface.gif
--------------------------------------------------------------------------------
/docs/icons/protmethod.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/protmethod.gif
--------------------------------------------------------------------------------
/docs/icons/protoperator.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/protoperator.gif
--------------------------------------------------------------------------------
/docs/icons/protproperty.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/protproperty.gif
--------------------------------------------------------------------------------
/docs/icons/protstructure.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/protstructure.gif
--------------------------------------------------------------------------------
/docs/icons/pubclass.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/pubclass.gif
--------------------------------------------------------------------------------
/docs/icons/pubdelegate.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/pubdelegate.gif
--------------------------------------------------------------------------------
/docs/icons/pubenumeration.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/pubenumeration.gif
--------------------------------------------------------------------------------
/docs/icons/pubevent.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/pubevent.gif
--------------------------------------------------------------------------------
/docs/icons/pubextension.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/pubextension.gif
--------------------------------------------------------------------------------
/docs/icons/pubfield.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/pubfield.gif
--------------------------------------------------------------------------------
/docs/icons/pubinterface.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/pubinterface.gif
--------------------------------------------------------------------------------
/docs/icons/pubmethod.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/pubmethod.gif
--------------------------------------------------------------------------------
/docs/icons/puboperator.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/puboperator.gif
--------------------------------------------------------------------------------
/docs/icons/pubproperty.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/pubproperty.gif
--------------------------------------------------------------------------------
/docs/icons/pubstructure.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/pubstructure.gif
--------------------------------------------------------------------------------
/docs/icons/slMobile.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/slMobile.gif
--------------------------------------------------------------------------------
/docs/icons/static.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/static.gif
--------------------------------------------------------------------------------
/docs/icons/xna.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Xferno2/CSharpOsu/6f8ce3ac9a96670dd220c4885cbf018052ba9d46/docs/icons/xna.gif
--------------------------------------------------------------------------------
/docs/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
9 | CSharpOsu - Redirect
10 |
11 |
12 | If you are not redirected automatically, follow this link to the default topic .
13 |
14 |
15 |
--------------------------------------------------------------------------------
/docs/search.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | CSharpOsu - Search
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
15 |
16 |
17 |
18 |
23 |
24 |
25 | Sort by title
26 |
27 |
28 |
29 |
30 |
31 | Back
32 |
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/docs/styles/branding-Help1.css:
--------------------------------------------------------------------------------
1 | /* Define the userData cache persistence mechanism for Help 1 files */
2 | .userDataStyle {
3 | behavior: url(#default#userdata);
4 | }
5 |
6 | /* Style adjustments for Help 1 */
7 | .pageBody {
8 | padding-top: 0px 20px 0px 0px;
9 | }
10 |
11 | table {
12 | width: 95%;
13 | padding-right: 20px;
14 | }
15 |
16 | table.members {
17 | width: 95%;
18 | padding-right: 20px;
19 | }
20 |
21 | th p {
22 | padding-bottom: 0px;
23 | }
24 |
25 | td p {
26 | padding-bottom: 5px;
27 | }
28 |
29 | .codeSnippetContainerTabs {
30 | top: 1px;
31 | }
32 |
33 | .codeSnippetToolBarText {
34 | top: -13px;
35 | }
36 |
37 | .codeSnippetContainerTabSingle {
38 | padding: 2px 15px 0px 15px;
39 | height: 22px;
40 | }
41 |
--------------------------------------------------------------------------------
/docs/styles/branding-HelpViewer.css:
--------------------------------------------------------------------------------
1 | /* Style adjustments for Help Viewer */
2 | .pageBody {
3 | padding-top: 0px 20px 0px 0px;
4 | }
5 |
6 | table {
7 | width: 95%;
8 | padding-right: 20px;
9 | }
10 |
11 | table.members {
12 | width: 95%;
13 | padding-right: 20px;
14 | }
15 |
16 | th p {
17 | padding-bottom: 0px;
18 | }
19 |
20 | td p {
21 | padding-bottom: 5px;
22 | }
23 |
24 | .codeSnippetContainerTabs {
25 | top: 1px;
26 | }
27 |
28 | .codeSnippetToolBarText {
29 | top: -13px;
30 | }
31 |
32 | .codeSnippetContainerTabSingle {
33 | padding: 2px 15px 0px 15px;
34 | height: 22px;
35 | }
36 |
37 | .codeSnippetContainerTab a:visited {
38 | color: #000000;
39 | }
40 |
41 | .codeSnippetContainerTabActive a:visited {
42 | color: #000000;
43 | }
44 |
45 | span.keyword {
46 | color: #0000ff;
47 | font-weight: normal;
48 | }
49 |
--------------------------------------------------------------------------------
/docs/styles/branding-Website.css:
--------------------------------------------------------------------------------
1 | /* Style adjustments for websites */
2 | .pageBody {
3 | padding: 0px 20px 0px 0px;
4 | }
5 | .topicContent {
6 | margin-left: 280px;
7 | }
8 |
9 | /* Lightweight TOC */
10 | .tocCollapsed {
11 | background: url('../icons/TocCollapsed.gif') no-repeat scroll center;
12 | width: 17px;
13 | height: 20px;
14 | overflow: hidden;
15 | }
16 | .tocExpanded {
17 | background: url('../icons/TocExpanded.gif') no-repeat scroll center;
18 | width: 17px;
19 | height: 20px;
20 | overflow: hidden;
21 | }
22 | .tocResize {
23 | position: absolute;
24 | top: 90px;
25 | left: 300px;
26 | width: 5px;
27 | height: 20px;
28 | padding-right: 5px;
29 | }
30 | .tocResize img {
31 | border: none;
32 | cursor: pointer;
33 | }
34 | div#leftNav {
35 | float: left;
36 | margin: 0px -1px 0 0;
37 | width: 280px;
38 | min-height: 10px;
39 | position: relative;
40 | border-right: 1px solid #b6b6b6;
41 | padding-left: 10px;
42 | padding-top: 15px;
43 | }
44 | div#tocNav {
45 | font-family: 'Segoe UI' ,Verdana,Arial;
46 | overflow-x: hidden;
47 | line-height: normal;
48 | margin: -20px 0 0 -4px;
49 | }
50 | div#tocNav > div {
51 | overflow-x: hidden;
52 | white-space: normal;
53 | width: auto;
54 | margin-bottom: 5px;
55 | }
56 | div#leftNav a, div#leftNav a:link, div#leftNav a:visited {
57 | color: #1364c4;
58 | text-decoration: none;
59 | }
60 | div#leftNav a:hover {
61 | color: #3390b1;
62 | }
63 | div#tocNav > div > a, div#tocNav > div > a:link, div#tocNav > div > a:visited {
64 | display: block;
65 | margin-left: 18px;
66 | overflow: hidden;
67 | }
68 | div#tocNav > div.current > a, div#tocNav > div.current > a:link, div#tocNav > div.current > a:visited {
69 | color: #000;
70 | font-weight: bold;
71 | text-decoration: none;
72 | }
73 | div#tocNav > div > a.tocExpanded, div#tocNav > div > a.tocCollapsed {
74 | float: left;
75 | display: inline-block;
76 | margin-left: 0;
77 | vertical-align: top;
78 | }
79 | div#tocResizableEW {
80 | cursor: e-resize;
81 | width: 15px;
82 | top: 0;
83 | height: 100%;
84 | position: absolute;
85 | display: block;
86 | font-size: 0.5px;
87 | right: -7px;
88 | }
89 | .toclevel0:first-child {
90 | margin-top: 16px;
91 | }
92 | div#tocNav > div.toclevel1 {
93 | padding-left: 17px;
94 | }
95 | div#tocNav > div.toclevel2 {
96 | padding-left: 34px;
97 | }
98 | div#tocNav > div.toclevel3 {
99 | padding-left: 51px;
100 | }
101 | div#tocNav > div.toclevel4 {
102 | padding-left: 68px;
103 | }
104 | div#tocNav > div.toclevel5 {
105 | padding-left: 85px;
106 | }
107 | div#tocNav > div.toclevel6 {
108 | padding-left: 102px;
109 | }
110 | div#tocNav > div.toclevel7 {
111 | padding-left: 119px;
112 | }
113 | div#tocNav > div.toclevel8 {
114 | padding-left: 136px;
115 | }
116 | div#tocNav > div.toclevel9 {
117 | padding-left: 153px;
118 | }
119 | div#tocNav > div.toclevel10 {
120 | padding-left: 170px;
121 | }
122 |
123 | /* Search form */
124 | form#SearchForm {
125 | float: right;
126 | background-color: #eee;
127 | width: 280px;
128 | }
129 | form#SearchForm input {
130 | background-color: #eee;
131 | border: 0;
132 | height: 22px;
133 | width: 230px;
134 | color: #3b3b3b;
135 | display: inline-block;
136 | margin: 1px 0 0 0;
137 | padding: 1px 4px 1px 10px;
138 | }
139 | form#SearchForm button {
140 | background: url('../icons/Search.png') no-repeat scroll center;
141 | background-color: #eee;
142 | float: right;
143 | border: 0;
144 | margin: 3px 2px 0 0;
145 | cursor: pointer;
146 | color: #3b3b3b;
147 | width: 19px;
148 | height: 18px;
149 | overflow: hidden;
150 | }
151 | .searchContainer {
152 | width: 700px;
153 | margin-top: 50px;
154 | margin-left: auto;
155 | margin-right: auto;
156 | }
157 |
--------------------------------------------------------------------------------
/docs/styles/branding-cs-CZ.css:
--------------------------------------------------------------------------------
1 | /* Start CS-CZ locale-specific CSS */
2 |
3 | /* End locale-specific CSS */
4 |
--------------------------------------------------------------------------------
/docs/styles/branding-de-DE.css:
--------------------------------------------------------------------------------
1 | /* Start DE-DE locale-specific CSS */
2 |
3 | /* End locale-specific CSS */
4 |
--------------------------------------------------------------------------------
/docs/styles/branding-en-US.css:
--------------------------------------------------------------------------------
1 | /* Start EN-US locale-specific CSS */
2 |
3 | /* End locale-specific CSS */
4 |
--------------------------------------------------------------------------------
/docs/styles/branding-es-ES.css:
--------------------------------------------------------------------------------
1 | /* Start ES-ES locale-specific CSS */
2 |
3 | /* End locale-specific CSS */
4 |
--------------------------------------------------------------------------------
/docs/styles/branding-fr-FR.css:
--------------------------------------------------------------------------------
1 | /* Start FR-FR locale-specific CSS */
2 |
3 | /* End locale-specific CSS */
4 |
--------------------------------------------------------------------------------
/docs/styles/branding-it-IT.css:
--------------------------------------------------------------------------------
1 | /* Start IT-IT locale-specific CSS */
2 |
3 | /* End locale-specific CSS */
4 |
--------------------------------------------------------------------------------
/docs/styles/branding-ja-JP.css:
--------------------------------------------------------------------------------
1 | /* Start JA-JP locale-specific CSS */
2 | body
3 | {
4 | font-family: Segoe UI, Verdana, Arial, MS Pゴシック;
5 | }
6 | pre
7 | {
8 | font-family: Consolas, Courier, monospace, MS ゴシック;
9 | }
10 | span.tt
11 | {
12 | font-family: Consolas, Courier, monospace, MS ゴシック;
13 | }
14 | span.code
15 | {
16 | font-family: Consolas, Courier, monospace, MS ゴシック;
17 | }
18 | /* End locale-specific CSS */
19 |
--------------------------------------------------------------------------------
/docs/styles/branding-ko-KR.css:
--------------------------------------------------------------------------------
1 | /* Start KO-KR locale-specific CSS */
2 | body
3 | {
4 | font-family: Malgun Gothic, Segoe UI, Verdana, Arial;
5 | font-size: 0.75em; /*9pt*/
6 | }
7 | pre
8 | {
9 | font-family: Consolas, Courier, monospace, 돋움체;
10 | }
11 | span.tt
12 | {
13 | font-family: Consolas, Courier, monospace, 돋움체;
14 | }
15 | span.code
16 | {
17 | font-family: Consolas, Courier, monospace, 돋움체;
18 | }
19 | /* End locale-specific CSS */
20 |
--------------------------------------------------------------------------------
/docs/styles/branding-pl-PL.css:
--------------------------------------------------------------------------------
1 | /* Start PL-PL locale-specific CSS */
2 |
3 | /* End locale-specific CSS */
4 |
--------------------------------------------------------------------------------
/docs/styles/branding-pt-BR.css:
--------------------------------------------------------------------------------
1 | /* Start PT-BR locale-specific CSS */
2 |
3 | /* End locale-specific CSS */
4 |
--------------------------------------------------------------------------------
/docs/styles/branding-ru-RU.css:
--------------------------------------------------------------------------------
1 | /* Start RU-RU locale-specific CSS */
2 |
3 | /* End locale-specific CSS */
4 |
--------------------------------------------------------------------------------
/docs/styles/branding-tr-TR.css:
--------------------------------------------------------------------------------
1 | /* Start TR-TR locale-specific CSS */
2 |
3 | /* End locale-specific CSS */
4 |
--------------------------------------------------------------------------------
/docs/styles/branding-zh-CN.css:
--------------------------------------------------------------------------------
1 | /* Start ZH-CN locale-specific CSS */
2 | body
3 | {
4 | font-family: "Microsoft YaHei UI","Microsoft YaHei","SimSun","Segoe UI","Lucida Grande",Verdana,Arial,Helvetica,sans-serif
5 | }
6 | pre
7 | {
8 | font-family: Consolas, Courier, monospace!important;
9 | }
10 | span.tt
11 | {
12 | font-family: Consolas, Courier, monospace;
13 | }
14 | span.code
15 | {
16 | font-family: Consolas, Courier, monospace;
17 | }
18 | /* End locale-specific CSS */
19 |
--------------------------------------------------------------------------------
/docs/styles/branding-zh-TW.css:
--------------------------------------------------------------------------------
1 | /* Start ZH-TW locale-specific CSS */
2 | body
3 | {
4 | font-family: MS JhengHei, MingLiU, Segoe UI, Verdana, Arial;
5 | }
6 | pre
7 | {
8 | font-family: Consolas, Courier, monospace, 細明體;
9 | }
10 | span.tt
11 | {
12 | font-family: Consolas, Courier, monospace, 細明體;
13 | }
14 | span.code
15 | {
16 | font-family: Consolas, Courier, monospace, 細明體;
17 | }
18 | /* End locale-specific CSS */
19 |
--------------------------------------------------------------------------------
/docs/toc/050e873b-a322-952e-2c55-f7d071a29a17.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/05bdaa7a-fd43-4c69-36d9-5c5e4b99eb73.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/0688eeb5-f96f-a8af-25f6-fad2e9cce1d0.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/07f691a8-f43b-14e2-9789-418bef4b71c9.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/0a84eefc-e0fe-b6be-b89b-2ce18ac80ec8.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/0d1aa67e-3ff2-8a7a-3e5b-319ac78bc752.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/0f889495-a197-c324-09e3-f2eeb173415e.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/1d37cd34-2f82-edc0-672c-4b25ee0f14da.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/22c50749-f121-6672-ec33-d90a8be43d85.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/23d51bda-59ca-0528-5673-b745be96e7f5.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/25e83543-51b7-34d7-cd74-5aa83df931b9.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/31967e26-ab3d-e758-64e3-e67c30b3227b.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/3a44a954-3c37-ef49-d6e9-c3f25882e7ff.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/3efe7d46-c58b-5cca-54df-ff038f5c7da1.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/41d007de-2006-f48e-2351-0475d4305152.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/4400f6de-0cc5-c829-7566-bacdb3b07cfb.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/4a631c4a-2a3b-09ee-9aa7-388f6ea5447e.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/4b42f4d3-c5ff-a888-aa22-84abfc2c43f7.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/52f521da-0e73-6c9b-1a5b-1429d85749e8.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/593a6f64-b2d6-02fc-2f6b-c552f1aa7822.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/59a8dbe1-a0a4-65ab-51a1-313baf1ecd6a.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/5c76ebcc-b36b-ce5e-736b-406b647981c6.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/654bc424-4e21-3edd-6a3f-7b9c1430a149.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/6583ee86-b8df-ee5c-1316-45be8058bf23.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/66c3f42a-e84f-452a-3c73-7a553f17e754.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/6b87b4c5-8aea-cbe7-1e40-7273fb085127.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/7724eea4-fdcf-9da8-feb9-0ea26bedae6a.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/7a674a75-a95f-5c4f-b880-b0a2b5386251.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/7cde2ad4-9720-393b-b57d-1cd7de70d705.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/7e5dab30-2c98-f835-78de-ea949153f42c.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/8e69f29b-0c54-b5fb-69b3-f158059d8aaa.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/8f644080-e58c-c8ad-bef6-cd7c66e4d0ea.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/91196e53-0387-6bf7-8b5f-fbc2718cae14.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/9148ff12-c054-8b67-a988-dae69b96b5dc.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/93ae7eac-7b49-6911-4dd5-50e7d70e32b5.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/a33e8d10-ae51-d6a7-72c2-a7cfa45c9608.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/aa93259c-7c9a-5aaa-6a7a-5ac889f055e1.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/ab8064b6-a168-480b-b8d5-b29a6e4fa934.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/ae16a85d-8852-9366-9fcd-48b46cccf73e.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/b0ca4bc7-7a2f-1c23-6a1f-7b207afffcca.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/b8305d66-0b91-8a2d-175c-13057a281a2a.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/b9801dc4-e75a-4326-743a-733bac9c28f2.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/c644cdfa-572e-beda-b1bc-ecddcead3c98.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/ca5cbfa5-d710-3f0b-b104-856a5f9a9398.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/d1e255b6-33f9-16bc-d6cc-c8becba4f496.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/e028eacc-62b2-d7f6-3f48-039bba353904.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/e6d08d5c-642d-22ae-3af5-93e87f001302.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/e9df7179-0c85-1319-7eb3-0c6740710452.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/eb09fb43-bc31-823c-6bbc-e4d434a09138.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/f1320318-9f5c-1d80-5ef9-7eeae114385d.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/f4cf982e-c269-500e-efae-8e6ac9e38e0a.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/toc/roottoc.xml:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------