| ofs | hex dump | ascii |
|---|
| 0000 | 00 00 0f 81 00 00 32 0c 00 00 00 15 00 00 10 00 00 00 00 00 32 30 31 39 2e 33 2e 36 66 31 00 fe | ......2.............2019.3.6f1.. |
| 0020 | ff ff ff 01 02 00 00 00 0b 04 00 00 00 ff ff 66 9a 86 21 eb 14 35 98 39 dd 34 1d 51 0e c1 f3 42 | ...............f..!..5.9.4.Q...B |
| 0040 | 00 00 00 ed 00 00 00 02 00 00 00 00 00 00 00 37 00 00 80 ff ff ff ff 00 00 00 00 00 80 00 00 00 | ...............7................ |
| 0060 | 00 00 00 00 00 00 00 01 00 01 00 a6 03 00 80 b2 01 00 80 04 00 00 00 01 00 00 00 01 00 00 00 00 | ................................ |
| 0080 | 00 00 00 00 00 00 00 01 00 01 00 0d 00 00 00 45 04 00 80 0c 00 00 00 02 00 00 00 01 00 00 00 00 | ...............E................ |
| 00a0 | 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 03 00 00 00 01 00 80 00 00 | ...............#................ |
| 00c0 | 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 04 00 00 00 01 00 80 00 00 | ...............,................ |
| 00e0 | 00 00 00 00 00 00 00 01 00 01 00 35 00 00 00 61 04 00 80 0c 00 00 00 05 00 00 00 01 00 00 00 00 | ...........5...a................ |
| 0100 | 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 06 00 00 00 01 00 80 00 00 | ...............#................ |
| 0120 | 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 07 00 00 00 01 00 80 00 00 | ...............,................ |
| 0140 | 00 00 00 00 00 00 00 01 00 01 00 86 02 00 80 72 04 00 80 0c 00 00 00 08 00 00 00 01 00 00 00 00 | ...............r................ |
| 0160 | 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 09 00 00 00 01 00 80 00 00 | ...............#................ |
| 0180 | 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 0a 00 00 00 01 00 80 00 00 | ...............,................ |
| 01a0 | 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 ab 01 00 80 ff ff ff ff 0b 00 00 00 01 80 08 00 00 | ...........H.................... |
| 01c0 | 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 0c 00 00 00 01 40 08 00 00 | ...........1...1............@... |
| 01e0 | 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 0d 00 00 00 01 00 08 00 00 | ................................ |
| 0200 | 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 0e 00 00 00 01 00 08 00 00 | ...........Q...j................ |
| 0220 | 00 00 00 00 00 00 00 01 00 01 00 f1 00 00 80 4a 00 00 00 ff ff ff ff 0f 00 00 00 00 c0 00 00 00 | ...............J................ |
| 0240 | 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 10 00 00 00 00 80 00 00 00 | ...........1...1................ |
| 0260 | 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 11 00 00 00 00 00 00 00 00 | ................................ |
| 0280 | 00 00 00 00 00 00 00 01 00 03 00 1f 02 00 80 6a 00 00 80 ff ff ff ff 12 00 00 00 00 80 00 00 00 | ...............j................ |
| 02a0 | 00 00 00 00 00 00 00 01 00 04 00 5c 00 00 00 9b 00 00 80 ff ff ff ff 13 00 00 00 00 80 00 00 00 | ...........\.................... |
| 02c0 | 00 00 00 00 00 00 00 01 00 05 00 48 03 00 80 72 00 00 00 ff ff ff ff 14 00 00 00 00 80 00 00 00 | ...........H...r................ |
| 02e0 | 00 00 00 00 00 00 00 01 00 06 01 31 00 00 80 31 00 00 80 ff ff ff ff 15 00 00 00 01 40 00 00 00 | ...........1...1............@... |
| 0300 | 00 00 00 00 00 00 00 01 00 07 00 de 00 00 80 1b 03 00 80 04 00 00 00 16 00 00 00 01 00 00 00 00 | ................................ |
| 0320 | 00 00 00 00 00 00 00 01 00 07 00 51 00 00 80 6a 00 00 80 01 00 00 00 17 00 00 00 01 00 00 00 00 | ...........Q...j................ |
| 0340 | 00 00 00 00 00 00 00 01 00 05 00 48 03 00 80 77 00 00 00 ff ff ff ff 18 00 00 00 00 80 00 00 00 | ...........H...w................ |
| 0360 | 00 00 00 00 00 00 00 01 00 06 01 31 00 00 80 31 00 00 80 ff ff ff ff 19 00 00 00 01 40 00 00 00 | ...........1...1............@... |
| 0380 | 00 00 00 00 00 00 00 01 00 07 00 de 00 00 80 1b 03 00 80 04 00 00 00 1a 00 00 00 01 00 00 00 00 | ................................ |
| 03a0 | 00 00 00 00 00 00 00 01 00 07 00 51 00 00 80 6a 00 00 80 01 00 00 00 1b 00 00 00 01 00 00 00 00 | ...........Q...j................ |
| 03c0 | 00 00 00 00 00 00 00 01 00 05 00 48 03 00 80 80 00 00 00 ff ff ff ff 1c 00 00 00 00 80 00 00 00 | ...........H.................... |
| 03e0 | 00 00 00 00 00 00 00 01 00 06 01 31 00 00 80 31 00 00 80 ff ff ff ff 1d 00 00 00 01 40 00 00 00 | ...........1...1............@... |
| 0400 | 00 00 00 00 00 00 00 01 00 07 00 de 00 00 80 1b 03 00 80 04 00 00 00 1e 00 00 00 01 00 00 00 00 | ................................ |
| 0420 | 00 00 00 00 00 00 00 01 00 07 00 51 00 00 80 6a 00 00 80 01 00 00 00 1f 00 00 00 01 00 00 00 00 | ...........Q...j................ |
| 0440 | 00 00 00 00 00 00 00 01 00 04 00 79 02 00 80 0a 03 00 80 0c 00 00 00 20 00 00 00 00 00 00 00 00 | ...........y.................... |
| 0460 | 00 00 00 00 00 00 00 01 00 05 00 de 00 00 80 23 00 00 00 04 00 00 00 21 00 00 00 01 00 80 00 00 | ...............#.......!........ |
| 0480 | 00 00 00 00 00 00 00 01 00 05 00 2e 03 00 80 2c 00 00 00 08 00 00 00 22 00 00 00 01 00 80 00 00 | ...............,......."........ |
| 04a0 | 00 00 00 00 00 00 00 01 00 01 00 11 03 00 80 85 00 00 00 ff ff ff ff 23 00 00 00 01 40 08 00 00 | .......................#....@... |
| 04c0 | 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 24 00 00 00 01 00 08 00 00 | ...........1...1.......$........ |
| 04e0 | 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 25 00 00 00 01 00 08 00 00 | .......................%........ |
| 0500 | 00 00 00 00 00 00 00 01 00 03 00 2e 03 00 80 6a 00 00 80 08 00 00 00 26 00 00 00 01 00 08 00 00 | ...............j.......&........ |
| 0520 | 00 00 00 00 00 00 00 01 00 01 00 d5 03 00 80 93 00 00 00 ff ff ff ff 27 00 00 00 00 80 00 00 00 | .......................'........ |
| 0540 | 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 28 00 00 00 00 c0 00 00 00 | ...........1...1.......(........ |
| 0560 | 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 29 00 00 00 00 00 00 00 00 | .......................)........ |
| 0580 | 00 00 00 00 00 00 00 01 00 03 00 1f 02 00 80 6a 00 00 80 ff ff ff ff 2a 00 00 00 00 80 00 00 00 | ...............j.......*........ |
| 05a0 | 00 00 00 00 00 00 00 01 00 04 00 48 03 00 80 9b 00 00 80 ff ff ff ff 2b 00 00 00 00 80 00 00 00 | ...........H...........+........ |
| 05c0 | 00 00 00 00 00 00 00 01 00 05 01 31 00 00 80 31 00 00 80 ff ff ff ff 2c 00 00 00 01 40 00 00 00 | ...........1...1.......,....@... |
| 05e0 | 00 00 00 00 00 00 00 01 00 06 00 de 00 00 80 1b 03 00 80 04 00 00 00 2d 00 00 00 01 00 00 00 00 | .......................-........ |
| 0600 | 00 00 00 00 00 00 00 01 00 06 00 51 00 00 80 6a 00 00 80 01 00 00 00 2e 00 00 00 01 00 00 00 00 | ...........Q...j................ |
| 0620 | 00 00 00 00 00 00 00 01 00 04 00 79 02 00 80 0a 03 00 80 0c 00 00 00 2f 00 00 00 00 00 00 00 00 | ...........y.........../........ |
| 0640 | 00 00 00 00 00 00 00 01 00 05 00 de 00 00 80 23 00 00 00 04 00 00 00 30 00 00 00 01 00 80 00 00 | ...............#.......0........ |
| 0660 | 00 00 00 00 00 00 00 01 00 05 00 2e 03 00 80 2c 00 00 00 08 00 00 00 31 00 00 00 01 00 80 00 00 | ...............,.......1........ |
| 0680 | 00 00 00 00 00 00 00 01 00 01 00 20 03 00 80 a7 00 00 00 02 00 00 00 32 00 00 00 00 40 00 00 00 | .......................2....@... |
| 06a0 | 00 00 00 00 00 00 00 01 00 01 00 be 02 00 80 b6 00 00 00 0c 00 00 00 33 00 00 00 00 40 00 00 00 | .......................3....@... |
| 06c0 | 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 23 00 00 00 04 00 00 00 34 00 00 00 01 00 80 00 00 | ...............#.......4........ |
| 06e0 | 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 2c 00 00 00 08 00 00 00 35 00 00 00 01 00 80 00 00 | ...............,.......5........ |
| 0700 | 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 bb 00 00 00 ff ff ff ff 36 00 00 00 01 80 00 00 00 | ...........H...........6........ |
| 0720 | 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 37 00 00 00 01 40 00 00 00 | ...........1...1.......7....@... |
| 0740 | 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 38 00 00 00 01 00 00 00 00 | .......................8........ |
| 0760 | 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 39 00 00 00 01 00 00 00 00 | ...........Q...j.......9........ |
| 0780 | 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 c6 00 00 00 ff ff ff ff 3a 00 00 00 01 80 00 00 00 | ...........H...........:........ |
| 07a0 | 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 3b 00 00 00 01 40 00 00 00 | ...........1...1.......;....@... |
| 07c0 | 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 3c 00 00 00 01 00 00 00 00 | .......................<........ |
| 07e0 | 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 3d 00 00 00 01 00 00 00 00 | ...........Q...j.......=........ |
| 0800 | 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 d8 00 00 00 ff ff ff ff 3e 00 00 00 01 80 00 00 00 | ...........H...........>........ |
| 0820 | 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 00 00 80 ff ff ff ff 3f 00 00 00 01 40 00 00 00 | ...........1...1.......?....@... |
| 0840 | 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b 03 00 80 04 00 00 00 40 00 00 00 01 00 00 00 00 | .......................@........ |
| 0860 | 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a 00 00 80 01 00 00 00 41 00 00 00 01 00 00 00 00 | ...........Q...j.......A........ |
| 0880 | 00 00 00 00 00 00 00 4d 6f 6e 6f 49 6d 70 6f 72 74 65 72 00 50 50 74 72 3c 45 64 69 74 6f 72 45 | .......MonoImporter.PPtr<EditorE |
| 08a0 | 78 74 65 6e 73 69 6f 6e 3e 00 6d 5f 46 69 6c 65 49 44 00 6d 5f 50 61 74 68 49 44 00 50 50 74 72 | xtension>.m_FileID.m_PathID.PPtr |
| 08c0 | 3c 50 72 65 66 61 62 49 6e 73 74 61 6e 63 65 3e 00 6d 5f 45 78 74 65 72 6e 61 6c 4f 62 6a 65 63 | <PrefabInstance>.m_ExternalObjec |
| 08e0 | 74 73 00 53 6f 75 72 63 65 41 73 73 65 74 49 64 65 6e 74 69 66 69 65 72 00 74 79 70 65 00 61 73 | ts.SourceAssetIdentifier.type.as |
| 0900 | 73 65 6d 62 6c 79 00 6e 61 6d 65 00 6d 5f 55 73 65 64 46 69 6c 65 49 44 73 00 6d 5f 44 65 66 61 | sembly.name.m_UsedFileIDs.m_Defa |
| 0920 | 75 6c 74 52 65 66 65 72 65 6e 63 65 73 00 65 78 65 63 75 74 69 6f 6e 4f 72 64 65 72 00 69 63 6f | ultReferences.executionOrder.ico |
| 0940 | 6e 00 6d 5f 55 73 65 72 44 61 74 61 00 6d 5f 41 73 73 65 74 42 75 6e 64 6c 65 4e 61 6d 65 00 6d | n.m_UserData.m_AssetBundleName.m |
| 0960 | 5f 41 73 73 65 74 42 75 6e 64 6c 65 56 61 72 69 61 6e 74 00 00 00 00 00 73 00 00 00 00 ff ff a3 | _AssetBundleVariant.....s....... |
| 0980 | 47 f1 d7 dc 8f 5a 35 36 a0 3a 21 40 69 c1 4a 2a 00 00 00 81 00 00 00 05 00 00 00 15 01 00 80 37 | G....Z56.:!@i.J*...............7 |
| 09a0 | 00 00 80 ff ff ff ff 00 00 00 00 00 80 00 00 00 00 00 00 00 00 00 00 01 00 01 00 a6 03 00 80 b2 | ................................ |
| 09c0 | 01 00 80 04 00 00 00 01 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 00 00 00 00 45 | ...............................E |
| 09e0 | 04 00 80 0c 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 | ................................ |
| 0a00 | 00 00 00 04 00 00 00 03 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f | ................................ |
| 0a20 | 00 00 00 08 00 00 00 04 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 28 00 00 00 61 | ...........................(...a |
| 0a40 | 04 00 80 0c 00 00 00 05 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 | ................................ |
| 0a60 | 00 00 00 04 00 00 00 06 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f | ................................ |
| 0a80 | 00 00 00 08 00 00 00 07 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 86 02 00 80 72 | ...............................r |
| 0aa0 | 04 00 80 0c 00 00 00 08 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 | ................................ |
| 0ac0 | 00 00 00 04 00 00 00 09 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f | ................................ |
| 0ae0 | 00 00 00 08 00 00 00 0a 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 ab | ...........................H.... |
| 0b00 | 01 00 80 ff ff ff ff 0b 00 00 00 01 80 08 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 | ...........................1...1 |
| 0b20 | 00 00 80 ff ff ff ff 0c 00 00 00 01 40 08 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b | ............@................... |
| 0b40 | 03 00 80 04 00 00 00 0d 00 00 00 01 00 08 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a | ...........................Q...j |
| 0b60 | 00 00 80 01 00 00 00 0e 00 00 00 01 00 08 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 ea | ...........................H.... |
| 0b80 | 01 00 80 ff ff ff ff 0f 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 | ...........................1...1 |
| 0ba0 | 00 00 80 ff ff ff ff 10 00 00 00 01 40 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b | ............@................... |
| 0bc0 | 03 00 80 04 00 00 00 11 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a | ...........................Q...j |
| 0be0 | 00 00 80 01 00 00 00 12 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 f1 00 00 80 3d | ...............................= |
| 0c00 | 00 00 00 ff ff ff ff 13 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 | ...........................1...1 |
| 0c20 | 00 00 80 ff ff ff ff 14 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b | ................................ |
| 0c40 | 03 00 80 04 00 00 00 15 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 1f 02 00 80 6a | ...............................j |
| 0c60 | 00 00 80 ff ff ff ff 16 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 04 00 48 03 00 80 9b | ...........................H.... |
| 0c80 | 00 00 80 ff ff ff ff 17 00 00 00 01 80 00 00 00 00 00 00 00 00 00 00 01 00 05 01 31 00 00 80 31 | ...........................1...1 |
| 0ca0 | 00 00 80 ff ff ff ff 18 00 00 00 01 40 00 00 00 00 00 00 00 00 00 00 01 00 06 00 de 00 00 80 1b | ............@................... |
| 0cc0 | 03 00 80 04 00 00 00 19 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 06 00 51 00 00 80 6a | ...........................Q...j |
| 0ce0 | 00 00 80 01 00 00 00 1a 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 04 00 79 02 00 80 0a | ...........................y.... |
| 0d00 | 03 00 80 0c 00 00 00 1b 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 05 00 de 00 00 80 16 | ................................ |
| 0d20 | 00 00 00 04 00 00 00 1c 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 05 00 2e 03 00 80 1f | ................................ |
| 0d40 | 00 00 00 08 00 00 00 1d 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 79 02 00 80 51 | ...........................y...Q |
| 0d60 | 00 00 00 0c 00 00 00 1e 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 02 00 de 00 00 80 16 | ................................ |
| 0d80 | 00 00 00 04 00 00 00 1f 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 02 00 2e 03 00 80 1f | ................................ |
| 0da0 | 00 00 00 08 00 00 00 20 00 00 00 01 00 80 00 00 00 00 00 00 00 00 00 01 00 01 00 de 00 00 80 58 | ...............................X |
| 0dc0 | 00 00 00 04 00 00 00 21 00 00 00 10 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 69 | .......!...................H...i |
| 0de0 | 00 00 00 ff ff ff ff 22 00 00 00 10 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 | ......."...................1...1 |
| 0e00 | 00 00 80 ff ff ff ff 23 00 00 00 11 40 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b | .......#....@................... |
| 0e20 | 03 00 80 04 00 00 00 24 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a | .......$...................Q...j |
| 0e40 | 00 00 80 01 00 00 00 25 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 01 00 01 00 48 03 00 80 75 | .......%...................H...u |
| 0e60 | 00 00 00 ff ff ff ff 26 00 00 00 10 80 00 00 00 00 00 00 00 00 00 00 01 00 02 01 31 00 00 80 31 | .......&...................1...1 |
| 0e80 | 00 00 80 ff ff ff ff 27 00 00 00 11 40 00 00 00 00 00 00 00 00 00 00 01 00 03 00 de 00 00 80 1b | .......'....@................... |
| 0ea0 | 03 00 80 04 00 00 00 28 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 01 00 03 00 51 00 00 80 6a | .......(...................Q...j |
| 0ec0 | 00 00 80 01 00 00 00 29 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 50 50 74 72 3c 45 64 69 74 | .......)...............PPtr<Edit |
| 0ee0 | 6f 72 45 78 74 65 6e 73 69 6f 6e 3e 00 6d 5f 46 69 6c 65 49 44 00 6d 5f 50 61 74 68 49 44 00 50 | orExtension>.m_FileID.m_PathID.P |
| 0f00 | 50 74 72 3c 50 72 65 66 61 62 49 6e 73 74 61 6e 63 65 3e 00 6d 5f 44 65 66 61 75 6c 74 52 65 66 | Ptr<PrefabInstance>.m_DefaultRef |
| 0f20 | 65 72 65 6e 63 65 73 00 6d 5f 49 63 6f 6e 00 6d 5f 45 78 65 63 75 74 69 6f 6e 4f 72 64 65 72 00 | erences.m_Icon.m_ExecutionOrder. |
| 0f40 | 6d 5f 43 6c 61 73 73 4e 61 6d 65 00 6d 5f 4e 61 6d 65 73 70 61 63 65 00 00 00 00 00 02 00 00 00 | m_ClassName.m_Namespace......... |
| 0f60 | 03 00 00 00 00 00 00 00 00 00 00 00 5c 00 00 00 00 00 00 00 e0 79 af 00 00 00 00 00 60 00 00 00 | ............\........y......`... |
| 0f80 | ac 21 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | .!.............................. |
| 0fa0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0fc0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 0fe0 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 1000 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 1020 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 e0 79 af 00 00 00 00 00 00 00 00 00 | .....................y.......... |
| 1040 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 1060 | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................................ |
| 1080 | 00 00 00 00 00 00 00 00 0c 00 00 00 49 6e 74 65 72 76 61 6c 54 72 65 65 47 21 00 00 75 73 69 6e | ............IntervalTreeG!..usin |
| 10a0 | 67 20 53 79 73 74 65 6d 3b 0a 75 73 69 6e 67 20 53 79 73 74 65 6d 2e 43 6f 6c 6c 65 63 74 69 6f | g.System;.using.System.Collectio |
| 10c0 | 6e 73 2e 47 65 6e 65 72 69 63 3b 0a 0a 6e 61 6d 65 73 70 61 63 65 20 55 6e 69 74 79 45 6e 67 69 | ns.Generic;..namespace.UnityEngi |
| 10e0 | 6e 65 2e 54 69 6d 65 6c 69 6e 65 0a 7b 0a 20 20 20 20 69 6e 74 65 72 66 61 63 65 20 49 49 6e 74 | ne.Timeline.{.....interface.IInt |
| 1100 | 65 72 76 61 6c 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 49 6e 74 36 34 20 69 6e 74 65 72 76 | erval.....{.........Int64.interv |
| 1120 | 61 6c 53 74 61 72 74 20 7b 20 67 65 74 3b 20 7d 0a 20 20 20 20 20 20 20 20 49 6e 74 36 34 20 69 | alStart.{.get;.}.........Int64.i |
| 1140 | 6e 74 65 72 76 61 6c 45 6e 64 20 7b 20 67 65 74 3b 20 7d 0a 20 20 20 20 7d 0a 0a 20 20 20 20 73 | ntervalEnd.{.get;.}.....}......s |
| 1160 | 74 72 75 63 74 20 49 6e 74 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 20 20 20 20 20 20 20 20 20 2f | truct.IntervalTreeNode........./ |
| 1180 | 2f 20 69 6e 74 65 72 76 61 6c 20 6e 6f 64 65 2c 0a 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 70 | /.interval.node,.....{.........p |
| 11a0 | 75 62 6c 69 63 20 49 6e 74 36 34 20 63 65 6e 74 65 72 3b 20 20 20 20 20 20 20 20 2f 2f 20 6d 69 | ublic.Int64.center;........//.mi |
| 11c0 | 64 70 6f 69 6e 74 20 66 6f 72 20 74 68 69 73 20 6e 6f 64 65 0a 20 20 20 20 20 20 20 20 70 75 62 | dpoint.for.this.node.........pub |
| 11e0 | 6c 69 63 20 69 6e 74 20 66 69 72 73 74 3b 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 69 6e 64 65 | lic.int.first;...........//.inde |
| 1200 | 78 20 6f 66 20 66 69 72 73 74 20 65 6c 65 6d 65 6e 74 20 6f 66 20 74 68 69 73 20 6e 6f 64 65 20 | x.of.first.element.of.this.node. |
| 1220 | 69 6e 20 6d 5f 45 6e 74 72 69 65 73 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 69 6e 74 20 | in.m_Entries.........public.int. |
| 1240 | 6c 61 73 74 3b 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 69 6e 64 65 78 20 6f 66 20 74 68 65 | last;............//.index.of.the |
| 1260 | 20 6c 61 73 74 20 65 6c 65 6d 65 6e 74 20 6f 66 20 74 68 69 73 20 6e 6f 64 65 20 69 6e 20 6d 5f | .last.element.of.this.node.in.m_ |
| 1280 | 45 6e 74 72 69 65 73 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 69 6e 74 20 6c 65 66 74 3b | Entries.........public.int.left; |
| 12a0 | 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 69 6e 64 65 78 20 69 6e 20 6d 5f 4e 6f 64 65 73 20 | ............//.index.in.m_Nodes. |
| 12c0 | 6f 66 20 74 68 65 20 6c 65 66 74 20 73 75 62 6e 6f 64 65 0a 20 20 20 20 20 20 20 20 70 75 62 6c | of.the.left.subnode.........publ |
| 12e0 | 69 63 20 69 6e 74 20 72 69 67 68 74 3b 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 69 6e 64 65 78 | ic.int.right;...........//.index |
| 1300 | 20 69 6e 20 6d 5f 4e 6f 64 65 73 20 6f 66 20 74 68 65 20 72 69 67 68 74 20 73 75 62 6e 6f 64 65 | .in.m_Nodes.of.the.right.subnode |
| 1320 | 0a 20 20 20 20 7d 0a 0a 20 20 20 20 63 6c 61 73 73 20 49 6e 74 65 72 76 61 6c 54 72 65 65 3c 54 | .....}......class.IntervalTree<T |
| 1340 | 3e 20 77 68 65 72 65 20 54 20 3a 20 49 49 6e 74 65 72 76 61 6c 0a 20 20 20 20 7b 0a 20 20 20 20 | >.where.T.:.IInterval.....{..... |
| 1360 | 20 20 20 20 69 6e 74 65 72 6e 61 6c 20 73 74 72 75 63 74 20 45 6e 74 72 79 0a 20 20 20 20 20 20 | ....internal.struct.Entry....... |
| 1380 | 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 49 6e 74 36 34 20 69 6e 74 | ..{.............public.Int64.int |
| 13a0 | 65 72 76 61 6c 53 74 61 72 74 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 49 | ervalStart;.............public.I |
| 13c0 | 6e 74 36 34 20 69 6e 74 65 72 76 61 6c 45 6e 64 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 70 75 | nt64.intervalEnd;.............pu |
| 13e0 | 62 6c 69 63 20 54 20 69 74 65 6d 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 | blic.T.item;.........}.......... |
| 1400 | 63 6f 6e 73 74 20 69 6e 74 20 6b 4d 69 6e 4e 6f 64 65 53 69 7a 65 20 3d 20 31 30 3b 20 20 20 20 | const.int.kMinNodeSize.=.10;.... |
| 1420 | 20 2f 2f 20 74 68 65 20 6d 69 6e 69 6d 75 6d 20 6e 75 6d 62 65 72 20 6f 66 20 65 6e 74 72 69 65 | .//.the.minimum.number.of.entrie |
| 1440 | 73 20 74 6f 20 68 61 76 65 20 73 75 62 6e 6f 64 65 73 0a 20 20 20 20 20 20 20 20 63 6f 6e 73 74 | s.to.have.subnodes.........const |
| 1460 | 20 69 6e 74 20 6b 49 6e 76 61 6c 69 64 4e 6f 64 65 20 3d 20 2d 31 3b 0a 20 20 20 20 20 20 20 20 | .int.kInvalidNode.=.-1;......... |
| 1480 | 63 6f 6e 73 74 20 49 6e 74 36 34 20 6b 43 65 6e 74 65 72 55 6e 6b 6e 6f 77 6e 20 3d 20 49 6e 74 | const.Int64.kCenterUnknown.=.Int |
| 14a0 | 36 34 2e 4d 61 78 56 61 6c 75 65 3b 20 2f 2f 20 63 65 6e 74 65 72 20 68 61 73 6e 27 74 20 62 65 | 64.MaxValue;.//.center.hasn't.be |
| 14c0 | 65 6e 20 63 61 6c 63 75 6c 61 74 65 64 2e 20 69 6e 64 69 63 61 74 65 73 20 6e 6f 20 63 68 69 6c | en.calculated..indicates.no.chil |
| 14e0 | 64 72 65 6e 0a 0a 20 20 20 20 20 20 20 20 72 65 61 64 6f 6e 6c 79 20 4c 69 73 74 3c 45 6e 74 72 | dren..........readonly.List<Entr |
| 1500 | 79 3e 20 6d 5f 45 6e 74 72 69 65 73 20 3d 20 6e 65 77 20 4c 69 73 74 3c 45 6e 74 72 79 3e 28 29 | y>.m_Entries.=.new.List<Entry>() |
| 1520 | 3b 0a 20 20 20 20 20 20 20 20 72 65 61 64 6f 6e 6c 79 20 4c 69 73 74 3c 49 6e 74 65 72 76 61 6c | ;.........readonly.List<Interval |
| 1540 | 54 72 65 65 4e 6f 64 65 3e 20 6d 5f 4e 6f 64 65 73 20 3d 20 6e 65 77 20 4c 69 73 74 3c 49 6e 74 | TreeNode>.m_Nodes.=.new.List<Int |
| 1560 | 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 3e 28 29 3b 0a 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c | ervalTreeNode>();..........///.< |
| 1580 | 73 75 6d 6d 61 72 79 3e 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 57 68 65 74 68 65 72 20 74 68 65 | summary>.........///.Whether.the |
| 15a0 | 20 74 72 65 65 20 77 69 6c 6c 20 62 65 20 72 65 62 75 69 6c 74 20 6f 6e 20 74 68 65 20 6e 65 78 | .tree.will.be.rebuilt.on.the.nex |
| 15c0 | 74 20 71 75 65 72 79 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0a 20 | t.query.........///.</summary>.. |
| 15e0 | 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 62 6f 6f 6c 20 64 69 72 74 79 20 7b 20 67 65 74 3b 20 | .......public.bool.dirty.{.get;. |
| 1600 | 69 6e 74 65 72 6e 61 6c 20 73 65 74 3b 20 7d 0a 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 | internal.set;.}..........///.<su |
| 1620 | 6d 6d 61 72 79 3e 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 41 64 64 20 61 6e 20 49 49 6e 74 65 72 | mmary>.........///.Add.an.IInter |
| 1640 | 76 61 6c 20 74 6f 20 74 68 65 20 74 72 65 65 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 | val.to.the.tree.........///.</su |
| 1660 | 6d 6d 61 72 79 3e 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 76 6f 69 64 20 41 64 64 28 54 | mmary>.........public.void.Add(T |
| 1680 | 20 69 74 65 6d 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 | .item).........{.............if. |
| 16a0 | 28 69 74 65 6d 20 3d 3d 20 6e 75 6c 6c 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 | (item.==.null).................r |
| 16c0 | 65 74 75 72 6e 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 45 6e 74 72 69 65 73 2e 41 64 | eturn;..............m_Entries.Ad |
| 16e0 | 64 28 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6e 65 77 20 45 6e 74 72 79 28 29 0a 20 | d(.................new.Entry().. |
| 1700 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ...............{................ |
| 1720 | 20 20 20 20 20 69 6e 74 65 72 76 61 6c 53 74 61 72 74 20 3d 20 69 74 65 6d 2e 69 6e 74 65 72 76 | .....intervalStart.=.item.interv |
| 1740 | 61 6c 53 74 61 72 74 2c 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 | alStart,.....................int |
| 1760 | 65 72 76 61 6c 45 6e 64 20 3d 20 69 74 65 6d 2e 69 6e 74 65 72 76 61 6c 45 6e 64 2c 0a 20 20 20 | ervalEnd.=.item.intervalEnd,.... |
| 1780 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 74 65 6d 20 3d 20 69 74 65 6d 0a 20 20 20 | .................item.=.item.... |
| 17a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 29 3b 0a 20 20 | .............}.............);... |
| 17c0 | 20 20 20 20 20 20 20 20 20 20 64 69 72 74 79 20 3d 20 74 72 75 65 3b 0a 20 20 20 20 20 20 20 20 | ..........dirty.=.true;......... |
| 17e0 | 7d 0a 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e 0a 20 20 20 20 20 20 20 | }..........///.<summary>........ |
| 1800 | 20 2f 2f 2f 20 51 75 65 72 79 20 74 68 65 20 74 72 65 65 20 61 74 20 61 20 70 61 72 74 69 63 75 | .///.Query.the.tree.at.a.particu |
| 1820 | 6c 61 72 20 74 69 6d 65 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0a | lar.time.........///.</summary>. |
| 1840 | 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 70 61 72 61 6d 20 6e 61 6d 65 3d 22 76 61 6c 75 65 22 3e | ........///.<param.name="value"> |
| 1860 | 3c 2f 70 61 72 61 6d 3e 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 70 61 72 61 6d 20 6e 61 6d 65 | </param>.........///.<param.name |
| 1880 | 3d 22 72 65 73 75 6c 74 73 22 3e 3c 2f 70 61 72 61 6d 3e 0a 20 20 20 20 20 20 20 20 70 75 62 6c | ="results"></param>.........publ |
| 18a0 | 69 63 20 76 6f 69 64 20 49 6e 74 65 72 73 65 63 74 73 57 69 74 68 28 49 6e 74 36 34 20 76 61 6c | ic.void.IntersectsWith(Int64.val |
| 18c0 | 75 65 2c 20 4c 69 73 74 3c 54 3e 20 72 65 73 75 6c 74 73 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 | ue,.List<T>.results).........{.. |
| 18e0 | 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 45 6e 74 72 69 65 73 2e 43 6f 75 6e 74 20 3d | ...........if.(m_Entries.Count.= |
| 1900 | 3d 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0a 0a 20 20 | =.0).................return;.... |
| 1920 | 20 20 20 20 20 20 20 20 20 20 69 66 20 28 64 69 72 74 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 | ..........if.(dirty)............ |
| 1940 | 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 65 62 75 69 6c 64 28 29 3b 0a 20 20 | .{.................Rebuild();... |
| 1960 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 69 72 74 79 20 3d 20 66 61 6c 73 65 3b 0a 20 20 20 | ..............dirty.=.false;.... |
| 1980 | 20 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 4e 6f | .........}..............if.(m_No |
| 19a0 | 64 65 73 2e 43 6f 75 6e 74 20 3e 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 51 | des.Count.>.0).................Q |
| 19c0 | 75 65 72 79 28 6d 5f 4e 6f 64 65 73 5b 30 5d 2c 20 76 61 6c 75 65 2c 20 72 65 73 75 6c 74 73 29 | uery(m_Nodes[0],.value,.results) |
| 19e0 | 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 73 75 6d 6d 61 72 | ;.........}..........///.<summar |
| 1a00 | 79 3e 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 51 75 65 72 79 20 74 68 65 20 74 72 65 65 20 61 74 | y>.........///.Query.the.tree.at |
| 1a20 | 20 61 20 70 61 72 74 69 63 75 6c 61 72 20 72 61 6e 67 65 20 6f 66 20 74 69 6d 65 0a 20 20 20 20 | .a.particular.range.of.time..... |
| 1a40 | 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c | ....///.</summary>.........///.< |
| 1a60 | 70 61 72 61 6d 20 6e 61 6d 65 3d 22 73 74 61 72 74 22 3e 3c 2f 70 61 72 61 6d 3e 0a 20 20 20 20 | param.name="start"></param>..... |
| 1a80 | 20 20 20 20 2f 2f 2f 20 3c 70 61 72 61 6d 20 6e 61 6d 65 3d 22 65 6e 64 22 3e 3c 2f 70 61 72 61 | ....///.<param.name="end"></para |
| 1aa0 | 6d 3e 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 70 61 72 61 6d 20 6e 61 6d 65 3d 22 72 65 73 75 | m>.........///.<param.name="resu |
| 1ac0 | 6c 74 73 22 3e 3c 2f 70 61 72 61 6d 3e 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 76 6f 69 | lts"></param>.........public.voi |
| 1ae0 | 64 20 49 6e 74 65 72 73 65 63 74 73 57 69 74 68 52 61 6e 67 65 28 49 6e 74 36 34 20 73 74 61 72 | d.IntersectsWithRange(Int64.star |
| 1b00 | 74 2c 20 49 6e 74 36 34 20 65 6e 64 2c 20 4c 69 73 74 3c 54 3e 20 72 65 73 75 6c 74 73 29 0a 20 | t,.Int64.end,.List<T>.results).. |
| 1b20 | 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 73 74 61 72 74 20 3e | .......{.............if.(start.> |
| 1b40 | 20 65 6e 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0a 0a 20 | .end).................return;... |
| 1b60 | 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 45 6e 74 72 69 65 73 2e 43 6f 75 6e 74 20 3d | ...........if.(m_Entries.Count.= |
| 1b80 | 3d 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0a 0a 20 20 | =.0).................return;.... |
| 1ba0 | 20 20 20 20 20 20 20 20 20 20 69 66 20 28 64 69 72 74 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 | ..........if.(dirty)............ |
| 1bc0 | 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 65 62 75 69 6c 64 28 29 3b 0a 20 20 | .{.................Rebuild();... |
| 1be0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 69 72 74 79 20 3d 20 66 61 6c 73 65 3b 0a 20 20 20 | ..............dirty.=.false;.... |
| 1c00 | 20 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 6d 5f 4e 6f | .........}..............if.(m_No |
| 1c20 | 64 65 73 2e 43 6f 75 6e 74 20 3e 20 30 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 51 | des.Count.>.0).................Q |
| 1c40 | 75 65 72 79 52 61 6e 67 65 28 6d 5f 4e 6f 64 65 73 5b 30 5d 2c 20 73 74 61 72 74 2c 20 65 6e 64 | ueryRange(m_Nodes[0],.start,.end |
| 1c60 | 2c 20 72 65 73 75 6c 74 73 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 2f | ,.results);.........}........../ |
| 1c80 | 2f 2f 20 3c 73 75 6d 6d 61 72 79 3e 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 55 70 64 61 74 65 73 | //.<summary>.........///.Updates |
| 1ca0 | 20 74 68 65 20 69 6e 74 65 72 76 61 6c 73 20 66 72 6f 6d 20 74 68 65 69 72 20 73 6f 75 72 63 65 | .the.intervals.from.their.source |
| 1cc0 | 2e 20 55 73 65 20 74 68 69 73 20 74 6f 20 64 65 74 65 63 74 20 69 66 20 74 68 65 20 64 61 74 61 | ..Use.this.to.detect.if.the.data |
| 1ce0 | 20 69 6e 20 74 68 65 20 74 72 65 65 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 68 61 73 20 63 68 61 | .in.the.tree.........///.has.cha |
| 1d00 | 6e 67 65 64 2e 0a 20 20 20 20 20 20 20 20 2f 2f 2f 20 3c 2f 73 75 6d 6d 61 72 79 3e 0a 20 20 20 | nged..........///.</summary>.... |
| 1d20 | 20 20 20 20 20 70 75 62 6c 69 63 20 76 6f 69 64 20 55 70 64 61 74 65 49 6e 74 65 72 76 61 6c 73 | .....public.void.UpdateIntervals |
| 1d40 | 28 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 62 6f 6f 6c 20 69 73 | ().........{.............bool.is |
| 1d60 | 44 69 72 74 79 20 3d 20 66 61 6c 73 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 | Dirty.=.false;.............for.( |
| 1d80 | 69 6e 74 20 69 20 3d 20 30 3b 20 69 20 3c 20 6d 5f 45 6e 74 72 69 65 73 2e 43 6f 75 6e 74 3b 20 | int.i.=.0;.i.<.m_Entries.Count;. |
| 1da0 | 69 2b 2b 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 | i++).............{.............. |
| 1dc0 | 20 20 20 76 61 72 20 6e 20 3d 20 6d 5f 45 6e 74 72 69 65 73 5b 69 5d 3b 0a 20 20 20 20 20 20 20 | ...var.n.=.m_Entries[i];........ |
| 1de0 | 20 20 20 20 20 20 20 20 20 76 61 72 20 73 20 3d 20 6e 2e 69 74 65 6d 2e 69 6e 74 65 72 76 61 6c | .........var.s.=.n.item.interval |
| 1e00 | 53 74 61 72 74 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 65 20 3d 20 6e | Start;.................var.e.=.n |
| 1e20 | 2e 69 74 65 6d 2e 69 6e 74 65 72 76 61 6c 45 6e 64 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .item.intervalEnd;.............. |
| 1e40 | 20 20 20 20 69 73 44 69 72 74 79 20 7c 3d 20 6e 2e 69 6e 74 65 72 76 61 6c 53 74 61 72 74 20 21 | ....isDirty.|=.n.intervalStart.! |
| 1e60 | 3d 20 73 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 73 44 69 72 74 79 20 7c 3d 20 | =.s;.................isDirty.|=. |
| 1e80 | 6e 2e 69 6e 74 65 72 76 61 6c 45 6e 64 20 21 3d 20 65 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 | n.intervalEnd.!=.e;............. |
| 1ea0 | 20 20 20 20 20 6d 5f 45 6e 74 72 69 65 73 5b 69 5d 20 3d 20 6e 65 77 20 45 6e 74 72 79 28 29 0a | .....m_Entries[i].=.new.Entry(). |
| 1ec0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | ................{............... |
| 1ee0 | 20 20 20 20 20 20 69 6e 74 65 72 76 61 6c 53 74 61 72 74 20 3d 20 73 2c 0a 20 20 20 20 20 20 20 | ......intervalStart.=.s,........ |
| 1f00 | 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 65 72 76 61 6c 45 6e 64 20 3d 20 65 2c 0a 20 20 | .............intervalEnd.=.e,... |
| 1f20 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 74 65 6d 20 3d 20 6e 2e 69 74 65 6d 0a | ..................item.=.n.item. |
| 1f40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d | ................};.............} |
| 1f60 | 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 64 69 72 74 79 20 7c 3d 20 69 73 44 69 72 74 79 3b 0a | ..............dirty.|=.isDirty;. |
| 1f80 | 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 76 6f 69 64 20 | ........}..........private.void. |
| 1fa0 | 51 75 65 72 79 28 49 6e 74 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 20 69 6e 74 65 72 76 61 6c 54 | Query(IntervalTreeNode.intervalT |
| 1fc0 | 72 65 65 4e 6f 64 65 2c 20 49 6e 74 36 34 20 76 61 6c 75 65 2c 20 4c 69 73 74 3c 54 3e 20 72 65 | reeNode,.Int64.value,.List<T>.re |
| 1fe0 | 73 75 6c 74 73 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 | sults).........{.............for |
| 2000 | 20 28 69 6e 74 20 69 20 3d 20 69 6e 74 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 2e 66 69 72 73 74 | .(int.i.=.intervalTreeNode.first |
| 2020 | 3b 20 69 20 3c 3d 20 69 6e 74 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 2e 6c 61 73 74 3b 20 69 2b | ;.i.<=.intervalTreeNode.last;.i+ |
| 2040 | 2b 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | +).............{................ |
| 2060 | 20 76 61 72 20 65 6e 74 72 79 20 3d 20 6d 5f 45 6e 74 72 69 65 73 5b 69 5d 3b 0a 20 20 20 20 20 | .var.entry.=.m_Entries[i];...... |
| 2080 | 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 76 61 6c 75 65 20 3e 3d 20 65 6e 74 72 79 2e 69 6e | ...........if.(value.>=.entry.in |
| 20a0 | 74 65 72 76 61 6c 53 74 61 72 74 20 26 26 20 76 61 6c 75 65 20 3c 20 65 6e 74 72 79 2e 69 6e 74 | tervalStart.&&.value.<.entry.int |
| 20c0 | 65 72 76 61 6c 45 6e 64 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 | ervalEnd).................{..... |
| 20e0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 73 75 6c 74 73 2e 41 64 64 28 65 6e 74 72 | ................results.Add(entr |
| 2100 | 79 2e 69 74 65 6d 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 | y.item);.................}...... |
| 2120 | 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 69 6e 74 65 72 76 | .......}..............if.(interv |
| 2140 | 61 6c 54 72 65 65 4e 6f 64 65 2e 63 65 6e 74 65 72 20 3d 3d 20 6b 43 65 6e 74 65 72 55 6e 6b 6e | alTreeNode.center.==.kCenterUnkn |
| 2160 | 6f 77 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 3b 0a 20 20 20 | own).................return;.... |
| 2180 | 20 20 20 20 20 20 20 20 20 69 66 20 28 69 6e 74 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 2e 6c 65 | .........if.(intervalTreeNode.le |
| 21a0 | 66 74 20 21 3d 20 6b 49 6e 76 61 6c 69 64 4e 6f 64 65 20 26 26 20 76 61 6c 75 65 20 3c 20 69 6e | ft.!=.kInvalidNode.&&.value.<.in |
| 21c0 | 74 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 2e 63 65 6e 74 65 72 29 0a 20 20 20 20 20 20 20 20 20 | tervalTreeNode.center).......... |
| 21e0 | 20 20 20 20 20 20 20 51 75 65 72 79 28 6d 5f 4e 6f 64 65 73 5b 69 6e 74 65 72 76 61 6c 54 72 65 | .......Query(m_Nodes[intervalTre |
| 2200 | 65 4e 6f 64 65 2e 6c 65 66 74 5d 2c 20 76 61 6c 75 65 2c 20 72 65 73 75 6c 74 73 29 3b 0a 20 20 | eNode.left],.value,.results);... |
| 2220 | 20 20 20 20 20 20 20 20 20 20 69 66 20 28 69 6e 74 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 2e 72 | ..........if.(intervalTreeNode.r |
| 2240 | 69 67 68 74 20 21 3d 20 6b 49 6e 76 61 6c 69 64 4e 6f 64 65 20 26 26 20 76 61 6c 75 65 20 3e 20 | ight.!=.kInvalidNode.&&.value.>. |
| 2260 | 69 6e 74 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 2e 63 65 6e 74 65 72 29 0a 20 20 20 20 20 20 20 | intervalTreeNode.center)........ |
| 2280 | 20 20 20 20 20 20 20 20 20 51 75 65 72 79 28 6d 5f 4e 6f 64 65 73 5b 69 6e 74 65 72 76 61 6c 54 | .........Query(m_Nodes[intervalT |
| 22a0 | 72 65 65 4e 6f 64 65 2e 72 69 67 68 74 5d 2c 20 76 61 6c 75 65 2c 20 72 65 73 75 6c 74 73 29 3b | reeNode.right],.value,.results); |
| 22c0 | 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 76 6f 69 64 | .........}..........private.void |
| 22e0 | 20 51 75 65 72 79 52 61 6e 67 65 28 49 6e 74 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 20 69 6e 74 | .QueryRange(IntervalTreeNode.int |
| 2300 | 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 2c 20 49 6e 74 36 34 20 73 74 61 72 74 2c 20 49 6e 74 36 | ervalTreeNode,.Int64.start,.Int6 |
| 2320 | 34 20 65 6e 64 2c 20 4c 69 73 74 3c 54 3e 20 72 65 73 75 6c 74 73 29 0a 20 20 20 20 20 20 20 20 | 4.end,.List<T>.results)......... |
| 2340 | 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 66 6f 72 20 28 69 6e 74 20 69 20 3d 20 69 6e 74 65 72 | {.............for.(int.i.=.inter |
| 2360 | 76 61 6c 54 72 65 65 4e 6f 64 65 2e 66 69 72 73 74 3b 20 69 20 3c 3d 20 69 6e 74 65 72 76 61 6c | valTreeNode.first;.i.<=.interval |
| 2380 | 54 72 65 65 4e 6f 64 65 2e 6c 61 73 74 3b 20 69 2b 2b 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 | TreeNode.last;.i++)............. |
| 23a0 | 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 65 6e 74 72 79 20 3d 20 6d 5f | {.................var.entry.=.m_ |
| 23c0 | 45 6e 74 72 69 65 73 5b 69 5d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 | Entries[i];.................if.( |
| 23e0 | 65 6e 64 20 3e 3d 20 65 6e 74 72 79 2e 69 6e 74 65 72 76 61 6c 53 74 61 72 74 20 26 26 20 73 74 | end.>=.entry.intervalStart.&&.st |
| 2400 | 61 72 74 20 3c 20 65 6e 74 72 79 2e 69 6e 74 65 72 76 61 6c 45 6e 64 29 0a 20 20 20 20 20 20 20 | art.<.entry.intervalEnd)........ |
| 2420 | 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 72 | .........{.....................r |
| 2440 | 65 73 75 6c 74 73 2e 41 64 64 28 65 6e 74 72 79 2e 69 74 65 6d 29 3b 0a 20 20 20 20 20 20 20 20 | esults.Add(entry.item);......... |
| 2460 | 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 | ........}.............}......... |
| 2480 | 20 20 20 20 20 69 66 20 28 69 6e 74 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 2e 63 65 6e 74 65 72 | .....if.(intervalTreeNode.center |
| 24a0 | 20 3d 3d 20 6b 43 65 6e 74 65 72 55 6e 6b 6e 6f 77 6e 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .==.kCenterUnknown)............. |
| 24c0 | 20 20 20 20 72 65 74 75 72 6e 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 69 6e 74 65 | ....return;.............if.(inte |
| 24e0 | 72 76 61 6c 54 72 65 65 4e 6f 64 65 2e 6c 65 66 74 20 21 3d 20 6b 49 6e 76 61 6c 69 64 4e 6f 64 | rvalTreeNode.left.!=.kInvalidNod |
| 2500 | 65 20 26 26 20 73 74 61 72 74 20 3c 20 69 6e 74 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 2e 63 65 | e.&&.start.<.intervalTreeNode.ce |
| 2520 | 6e 74 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 51 75 65 72 79 52 61 6e 67 65 | nter).................QueryRange |
| 2540 | 28 6d 5f 4e 6f 64 65 73 5b 69 6e 74 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 2e 6c 65 66 74 5d 2c | (m_Nodes[intervalTreeNode.left], |
| 2560 | 20 73 74 61 72 74 2c 20 65 6e 64 2c 20 72 65 73 75 6c 74 73 29 3b 0a 20 20 20 20 20 20 20 20 20 | .start,.end,.results);.......... |
| 2580 | 20 20 20 69 66 20 28 69 6e 74 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 2e 72 69 67 68 74 20 21 3d | ...if.(intervalTreeNode.right.!= |
| 25a0 | 20 6b 49 6e 76 61 6c 69 64 4e 6f 64 65 20 26 26 20 65 6e 64 20 3e 20 69 6e 74 65 72 76 61 6c 54 | .kInvalidNode.&&.end.>.intervalT |
| 25c0 | 72 65 65 4e 6f 64 65 2e 63 65 6e 74 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | reeNode.center)................. |
| 25e0 | 51 75 65 72 79 52 61 6e 67 65 28 6d 5f 4e 6f 64 65 73 5b 69 6e 74 65 72 76 61 6c 54 72 65 65 4e | QueryRange(m_Nodes[intervalTreeN |
| 2600 | 6f 64 65 2e 72 69 67 68 74 5d 2c 20 73 74 61 72 74 2c 20 65 6e 64 2c 20 72 65 73 75 6c 74 73 29 | ode.right],.start,.end,.results) |
| 2620 | 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 70 72 69 76 61 74 65 20 76 6f 69 | ;.........}..........private.voi |
| 2640 | 64 20 52 65 62 75 69 6c 64 28 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 | d.Rebuild().........{........... |
| 2660 | 20 20 6d 5f 4e 6f 64 65 73 2e 43 6c 65 61 72 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d | ..m_Nodes.Clear();.............m |
| 2680 | 5f 4e 6f 64 65 73 2e 43 61 70 61 63 69 74 79 20 3d 20 6d 5f 45 6e 74 72 69 65 73 2e 43 61 70 61 | _Nodes.Capacity.=.m_Entries.Capa |
| 26a0 | 63 69 74 79 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 52 65 62 75 69 6c 64 28 30 2c 20 6d 5f 45 | city;.............Rebuild(0,.m_E |
| 26c0 | 6e 74 72 69 65 73 2e 43 6f 75 6e 74 20 2d 20 31 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 | ntries.Count.-.1);.........}.... |
| 26e0 | 20 20 20 20 20 20 70 72 69 76 61 74 65 20 69 6e 74 20 52 65 62 75 69 6c 64 28 69 6e 74 20 73 74 | ......private.int.Rebuild(int.st |
| 2700 | 61 72 74 2c 20 69 6e 74 20 65 6e 64 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 | art,.int.end).........{......... |
| 2720 | 20 20 20 20 49 6e 74 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 20 69 6e 74 65 72 76 61 6c 54 72 65 | ....IntervalTreeNode.intervalTre |
| 2740 | 65 4e 6f 64 65 20 3d 20 6e 65 77 20 49 6e 74 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 28 29 3b 0a | eNode.=.new.IntervalTreeNode();. |
| 2760 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 6d 69 6e 69 6d 75 6d 20 73 69 7a 65 2c 20 64 6f | .............//.minimum.size,.do |
| 2780 | 6e 27 74 20 73 75 62 64 69 76 69 64 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 20 63 6f | n't.subdivide.............int.co |
| 27a0 | 75 6e 74 20 3d 20 65 6e 64 20 2d 20 73 74 61 72 74 20 2b 20 31 3b 0a 20 20 20 20 20 20 20 20 20 | unt.=.end.-.start.+.1;.......... |
| 27c0 | 20 20 20 69 66 20 28 63 6f 75 6e 74 20 3c 20 6b 4d 69 6e 4e 6f 64 65 53 69 7a 65 29 0a 20 20 20 | ...if.(count.<.kMinNodeSize).... |
| 27e0 | 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 65 72 | .........{.................inter |
| 2800 | 76 61 6c 54 72 65 65 4e 6f 64 65 20 3d 20 6e 65 77 20 49 6e 74 65 72 76 61 6c 54 72 65 65 4e 6f | valTreeNode.=.new.IntervalTreeNo |
| 2820 | 64 65 28 29 20 7b 63 65 6e 74 65 72 20 3d 20 6b 43 65 6e 74 65 72 55 6e 6b 6e 6f 77 6e 2c 20 66 | de().{center.=.kCenterUnknown,.f |
| 2840 | 69 72 73 74 20 3d 20 73 74 61 72 74 2c 20 6c 61 73 74 20 3d 20 65 6e 64 2c 20 6c 65 66 74 20 3d | irst.=.start,.last.=.end,.left.= |
| 2860 | 20 6b 49 6e 76 61 6c 69 64 4e 6f 64 65 2c 20 72 69 67 68 74 20 3d 20 6b 49 6e 76 61 6c 69 64 4e | .kInvalidNode,.right.=.kInvalidN |
| 2880 | 6f 64 65 7d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 4e 6f 64 65 73 2e 41 64 | ode};.................m_Nodes.Ad |
| 28a0 | 64 28 69 6e 74 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 | d(intervalTreeNode);............ |
| 28c0 | 20 20 20 20 20 72 65 74 75 72 6e 20 6d 5f 4e 6f 64 65 73 2e 43 6f 75 6e 74 20 2d 20 31 3b 0a 20 | .....return.m_Nodes.Count.-.1;.. |
| 28e0 | 20 20 20 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6d 69 | ...........}..............var.mi |
| 2900 | 6e 20 3d 20 49 6e 74 36 34 2e 4d 61 78 56 61 6c 75 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | n.=.Int64.MaxValue;............. |
| 2920 | 76 61 72 20 6d 61 78 20 3d 20 49 6e 74 36 34 2e 4d 69 6e 56 61 6c 75 65 3b 0a 0a 20 20 20 20 20 | var.max.=.Int64.MinValue;....... |
| 2940 | 20 20 20 20 20 20 20 66 6f 72 20 28 69 6e 74 20 69 20 3d 20 73 74 61 72 74 3b 20 69 20 3c 3d 20 | .......for.(int.i.=.start;.i.<=. |
| 2960 | 65 6e 64 3b 20 69 2b 2b 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 | end;.i++).............{......... |
| 2980 | 20 20 20 20 20 20 20 20 76 61 72 20 6f 20 3d 20 6d 5f 45 6e 74 72 69 65 73 5b 69 5d 3b 0a 20 20 | ........var.o.=.m_Entries[i];... |
| 29a0 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 69 6e 20 3d 20 4d 61 74 68 2e 4d 69 6e 28 6d 69 6e | ..............min.=.Math.Min(min |
| 29c0 | 2c 20 6f 2e 69 6e 74 65 72 76 61 6c 53 74 61 72 74 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ,.o.intervalStart);............. |
| 29e0 | 20 20 20 20 6d 61 78 20 3d 20 4d 61 74 68 2e 4d 61 78 28 6d 61 78 2c 20 6f 2e 69 6e 74 65 72 76 | ....max.=.Math.Max(max,.o.interv |
| 2a00 | 61 6c 45 6e 64 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 20 | alEnd);.............}........... |
| 2a20 | 20 20 20 76 61 72 20 63 65 6e 74 65 72 20 3d 20 28 6d 61 78 20 2b 20 6d 69 6e 29 20 2f 20 32 3b | ...var.center.=.(max.+.min)./.2; |
| 2a40 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 2e 63 65 | .............intervalTreeNode.ce |
| 2a60 | 6e 74 65 72 20 3d 20 63 65 6e 74 65 72 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 2f 2f 20 66 | nter.=.center;..............//.f |
| 2a80 | 69 72 73 74 20 70 61 73 73 2c 20 70 75 74 20 65 76 65 72 79 20 74 68 69 6e 67 20 6c 65 66 74 20 | irst.pass,.put.every.thing.left. |
| 2aa0 | 6f 66 20 63 65 6e 74 65 72 2c 20 6c 65 66 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 20 | of.center,.left.............int. |
| 2ac0 | 78 20 3d 20 73 74 61 72 74 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 20 79 20 3d 20 65 | x.=.start;.............int.y.=.e |
| 2ae0 | 6e 64 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 6c 65 20 28 74 72 75 65 29 0a 20 20 20 | nd;.............while.(true).... |
| 2b00 | 20 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 6c 65 | .........{.................while |
| 2b20 | 20 28 78 20 3c 3d 20 65 6e 64 20 26 26 20 6d 5f 45 6e 74 72 69 65 73 5b 78 5d 2e 69 6e 74 65 72 | .(x.<=.end.&&.m_Entries[x].inter |
| 2b40 | 76 61 6c 45 6e 64 20 3c 20 63 65 6e 74 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | valEnd.<.center)................ |
| 2b60 | 20 20 20 20 20 78 2b 2b 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 6c 65 | .....x++;..................while |
| 2b80 | 20 28 79 20 3e 3d 20 73 74 61 72 74 20 26 26 20 6d 5f 45 6e 74 72 69 65 73 5b 79 5d 2e 69 6e 74 | .(y.>=.start.&&.m_Entries[y].int |
| 2ba0 | 65 72 76 61 6c 45 6e 64 20 3e 3d 20 63 65 6e 74 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 | ervalEnd.>=.center)............. |
| 2bc0 | 20 20 20 20 20 20 20 20 79 2d 2d 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 | ........y--;..................if |
| 2be0 | 20 28 78 20 3e 20 79 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 | .(x.>.y).....................bre |
| 2c00 | 61 6b 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6e 6f 64 65 58 20 3d | ak;..................var.nodeX.= |
| 2c20 | 20 6d 5f 45 6e 74 72 69 65 73 5b 78 5d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 | .m_Entries[x];.................v |
| 2c40 | 61 72 20 6e 6f 64 65 59 20 3d 20 6d 5f 45 6e 74 72 69 65 73 5b 79 5d 3b 0a 0a 20 20 20 20 20 20 | ar.nodeY.=.m_Entries[y];........ |
| 2c60 | 20 20 20 20 20 20 20 20 20 20 6d 5f 45 6e 74 72 69 65 73 5b 79 5d 20 3d 20 6e 6f 64 65 58 3b 0a | ..........m_Entries[y].=.nodeX;. |
| 2c80 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 5f 45 6e 74 72 69 65 73 5b 78 5d 20 3d 20 6e | ................m_Entries[x].=.n |
| 2ca0 | 6f 64 65 59 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 20 20 20 | odeY;.............}............. |
| 2cc0 | 20 69 6e 74 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 2e 66 69 72 73 74 20 3d 20 78 3b 0a 0a 20 20 | .intervalTreeNode.first.=.x;.... |
| 2ce0 | 20 20 20 20 20 20 20 20 20 20 2f 2f 20 73 65 63 6f 6e 64 20 70 61 73 73 2c 20 70 75 74 20 65 76 | ..........//.second.pass,.put.ev |
| 2d00 | 65 72 79 20 73 74 61 72 74 20 70 61 73 73 65 64 20 74 68 65 20 63 65 6e 74 65 72 20 72 69 67 68 | ery.start.passed.the.center.righ |
| 2d20 | 74 0a 20 20 20 20 20 20 20 20 20 20 20 20 79 20 3d 20 65 6e 64 3b 0a 20 20 20 20 20 20 20 20 20 | t.............y.=.end;.......... |
| 2d40 | 20 20 20 77 68 69 6c 65 20 28 74 72 75 65 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 7b 0a 20 20 | ...while.(true).............{... |
| 2d60 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 6c 65 20 28 78 20 3c 3d 20 65 6e 64 20 26 26 | ..............while.(x.<=.end.&& |
| 2d80 | 20 6d 5f 45 6e 74 72 69 65 73 5b 78 5d 2e 69 6e 74 65 72 76 61 6c 53 74 61 72 74 20 3c 3d 20 63 | .m_Entries[x].intervalStart.<=.c |
| 2da0 | 65 6e 74 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 78 2b 2b 3b 0a | enter).....................x++;. |
| 2dc0 | 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 77 68 69 6c 65 20 28 79 20 3e 3d 20 73 74 61 | .................while.(y.>=.sta |
| 2de0 | 72 74 20 26 26 20 6d 5f 45 6e 74 72 69 65 73 5b 79 5d 2e 69 6e 74 65 72 76 61 6c 53 74 61 72 74 | rt.&&.m_Entries[y].intervalStart |
| 2e00 | 20 3e 20 63 65 6e 74 65 72 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 79 | .>.center).....................y |
| 2e20 | 2d 2d 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 66 20 28 78 20 3e 20 79 29 0a | --;..................if.(x.>.y). |
| 2e40 | 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 72 65 61 6b 3b 0a 0a 20 20 20 20 | ....................break;...... |
| 2e60 | 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6e 6f 64 65 58 20 3d 20 6d 5f 45 6e 74 72 69 65 | ............var.nodeX.=.m_Entrie |
| 2e80 | 73 5b 78 5d 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 76 61 72 20 6e 6f 64 65 59 20 | s[x];.................var.nodeY. |
| 2ea0 | 3d 20 6d 5f 45 6e 74 72 69 65 73 5b 79 5d 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | =.m_Entries[y];................. |
| 2ec0 | 20 6d 5f 45 6e 74 72 69 65 73 5b 79 5d 20 3d 20 6e 6f 64 65 58 3b 0a 20 20 20 20 20 20 20 20 20 | .m_Entries[y].=.nodeX;.......... |
| 2ee0 | 20 20 20 20 20 20 20 6d 5f 45 6e 74 72 69 65 73 5b 78 5d 20 3d 20 6e 6f 64 65 59 3b 0a 20 20 20 | .......m_Entries[x].=.nodeY;.... |
| 2f00 | 20 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 65 72 76 61 6c | .........}..............interval |
| 2f20 | 54 72 65 65 4e 6f 64 65 2e 6c 61 73 74 20 3d 20 79 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 | TreeNode.last.=.y;.............. |
| 2f40 | 2f 2f 20 72 65 73 65 72 76 65 20 61 20 70 6c 61 63 65 0a 20 20 20 20 20 20 20 20 20 20 20 20 6d | //.reserve.a.place.............m |
| 2f60 | 5f 4e 6f 64 65 73 2e 41 64 64 28 6e 65 77 20 49 6e 74 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 28 | _Nodes.Add(new.IntervalTreeNode( |
| 2f80 | 29 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 20 69 6e 64 65 78 20 3d 20 6d 5f 4e 6f | ));.............int.index.=.m_No |
| 2fa0 | 64 65 73 2e 43 6f 75 6e 74 20 2d 20 31 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 65 | des.Count.-.1;..............inte |
| 2fc0 | 72 76 61 6c 54 72 65 65 4e 6f 64 65 2e 6c 65 66 74 20 3d 20 6b 49 6e 76 61 6c 69 64 4e 6f 64 65 | rvalTreeNode.left.=.kInvalidNode |
| 2fe0 | 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 2e 72 | ;.............intervalTreeNode.r |
| 3000 | 69 67 68 74 20 3d 20 6b 49 6e 76 61 6c 69 64 4e 6f 64 65 3b 0a 0a 20 20 20 20 20 20 20 20 20 20 | ight.=.kInvalidNode;............ |
| 3020 | 20 20 69 66 20 28 73 74 61 72 74 20 3c 20 69 6e 74 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 2e 66 | ..if.(start.<.intervalTreeNode.f |
| 3040 | 69 72 73 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 65 72 76 61 6c 54 72 | irst).................intervalTr |
| 3060 | 65 65 4e 6f 64 65 2e 6c 65 66 74 20 3d 20 52 65 62 75 69 6c 64 28 73 74 61 72 74 2c 20 69 6e 74 | eeNode.left.=.Rebuild(start,.int |
| 3080 | 65 72 76 61 6c 54 72 65 65 4e 6f 64 65 2e 66 69 72 73 74 20 2d 20 31 29 3b 0a 0a 20 20 20 20 20 | ervalTreeNode.first.-.1);....... |
| 30a0 | 20 20 20 20 20 20 20 69 66 20 28 65 6e 64 20 3e 20 69 6e 74 65 72 76 61 6c 54 72 65 65 4e 6f 64 | .......if.(end.>.intervalTreeNod |
| 30c0 | 65 2e 6c 61 73 74 29 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 69 6e 74 65 72 76 61 6c | e.last).................interval |
| 30e0 | 54 72 65 65 4e 6f 64 65 2e 72 69 67 68 74 20 3d 20 52 65 62 75 69 6c 64 28 69 6e 74 65 72 76 61 | TreeNode.right.=.Rebuild(interva |
| 3100 | 6c 54 72 65 65 4e 6f 64 65 2e 6c 61 73 74 20 2b 20 31 2c 20 65 6e 64 29 3b 0a 0a 20 20 20 20 20 | lTreeNode.last.+.1,.end);....... |
| 3120 | 20 20 20 20 20 20 20 6d 5f 4e 6f 64 65 73 5b 69 6e 64 65 78 5d 20 3d 20 69 6e 74 65 72 76 61 6c | .......m_Nodes[index].=.interval |
| 3140 | 54 72 65 65 4e 6f 64 65 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 72 65 74 75 72 6e 20 69 6e 64 | TreeNode;.............return.ind |
| 3160 | 65 78 3b 0a 20 20 20 20 20 20 20 20 7d 0a 0a 20 20 20 20 20 20 20 20 70 75 62 6c 69 63 20 76 6f | ex;.........}..........public.vo |
| 3180 | 69 64 20 43 6c 65 61 72 28 29 0a 20 20 20 20 20 20 20 20 7b 0a 20 20 20 20 20 20 20 20 20 20 20 | id.Clear().........{............ |
| 31a0 | 20 6d 5f 45 6e 74 72 69 65 73 2e 43 6c 65 61 72 28 29 3b 0a 20 20 20 20 20 20 20 20 20 20 20 20 | .m_Entries.Clear();............. |
| 31c0 | 6d 5f 4e 6f 64 65 73 2e 43 6c 65 61 72 28 29 3b 0a 20 20 20 20 20 20 20 20 7d 0a 20 20 20 20 7d | m_Nodes.Clear();.........}.....} |
| 31e0 | 0a 7d 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0c 00 00 00 49 6e 74 65 | .}..........................Inte |
| 3200 | 72 76 61 6c 54 72 65 65 00 00 00 00 | rvalTree.... |