From 3c4e32458a446f2d10de87b9bf7667f495f17b82 Mon Sep 17 00:00:00 2001 From: X123M3-256 Date: Wed, 5 Apr 2023 13:47:56 +0100 Subject: [PATCH] Add large sloped turns to hybrid and single rail (#19547) * Implement large sloped turns * Fix formatting * Add sprites * Fix large turns button being active on steep slopes * Remove bad comment * Increment network,plugin,park version numbers * Update changelog * Increment park file version again --- distribution/changelog.txt | 1 + resources/g2/sprites.json | 3548 ++++++++++++--- .../flat_to_gentle_up_left_bank_diag_1_1.png | Bin 0 -> 932 bytes .../flat_to_gentle_up_left_bank_diag_1_2.png | Bin 0 -> 975 bytes .../flat_to_gentle_up_left_bank_diag_2.png | Bin 0 -> 947 bytes .../flat_to_gentle_up_left_bank_diag_3.png | Bin 0 -> 1024 bytes .../flat_to_gentle_up_left_bank_diag_4.png | Bin 0 -> 983 bytes .../flat_to_gentle_up_right_bank_diag_1.png | Bin 0 -> 996 bytes .../flat_to_gentle_up_right_bank_diag_2.png | Bin 0 -> 950 bytes .../flat_to_gentle_up_right_bank_diag_3_1.png | Bin 0 -> 941 bytes .../flat_to_gentle_up_right_bank_diag_3_2.png | Bin 0 -> 980 bytes .../flat_to_gentle_up_right_bank_diag_4.png | Bin 0 -> 970 bytes .../raptor/gentle_up_left_bank_diag_1.png | Bin 0 -> 940 bytes .../raptor/gentle_up_left_bank_diag_2.png | Bin 0 -> 919 bytes .../raptor/gentle_up_left_bank_diag_3.png | Bin 0 -> 931 bytes .../raptor/gentle_up_left_bank_diag_4.png | Bin 0 -> 913 bytes .../gentle_up_left_bank_to_flat_diag_1_1.png | Bin 0 -> 921 bytes .../gentle_up_left_bank_to_flat_diag_1_2.png | Bin 0 -> 972 bytes .../gentle_up_left_bank_to_flat_diag_2.png | Bin 0 -> 953 bytes .../gentle_up_left_bank_to_flat_diag_3.png | Bin 0 -> 1017 bytes .../gentle_up_left_bank_to_flat_diag_4.png | Bin 0 -> 967 bytes ...tle_up_left_bank_to_gentle_up_diag_1_1.png | Bin 0 -> 941 bytes ...tle_up_left_bank_to_gentle_up_diag_1_2.png | Bin 0 -> 977 bytes ...entle_up_left_bank_to_gentle_up_diag_2.png | Bin 0 -> 946 bytes ...entle_up_left_bank_to_gentle_up_diag_3.png | Bin 0 -> 1032 bytes ...entle_up_left_bank_to_gentle_up_diag_4.png | Bin 0 -> 972 bytes ...entle_up_left_bank_to_left_bank_diag_1.png | Bin 0 -> 1015 bytes ...entle_up_left_bank_to_left_bank_diag_2.png | Bin 0 -> 942 bytes ...entle_up_left_bank_to_left_bank_diag_3.png | Bin 0 -> 986 bytes ...entle_up_left_bank_to_left_bank_diag_4.png | Bin 0 -> 911 bytes .../raptor/gentle_up_right_bank_diag_1.png | Bin 0 -> 943 bytes .../raptor/gentle_up_right_bank_diag_2.png | Bin 0 -> 906 bytes .../raptor/gentle_up_right_bank_diag_3.png | Bin 0 -> 965 bytes .../raptor/gentle_up_right_bank_diag_4.png | Bin 0 -> 941 bytes .../gentle_up_right_bank_to_flat_diag_1.png | Bin 0 -> 987 bytes .../gentle_up_right_bank_to_flat_diag_2.png | Bin 0 -> 959 bytes .../gentle_up_right_bank_to_flat_diag_3_1.png | Bin 0 -> 923 bytes .../gentle_up_right_bank_to_flat_diag_3_2.png | Bin 0 -> 977 bytes .../gentle_up_right_bank_to_flat_diag_4.png | Bin 0 -> 962 bytes ...ntle_up_right_bank_to_gentle_up_diag_1.png | Bin 0 -> 1012 bytes ...ntle_up_right_bank_to_gentle_up_diag_2.png | Bin 0 -> 950 bytes ...le_up_right_bank_to_gentle_up_diag_3_1.png | Bin 0 -> 942 bytes ...le_up_right_bank_to_gentle_up_diag_3_2.png | Bin 0 -> 993 bytes ...ntle_up_right_bank_to_gentle_up_diag_4.png | Bin 0 -> 962 bytes ...tle_up_right_bank_to_right_bank_diag_1.png | Bin 0 -> 976 bytes ...tle_up_right_bank_to_right_bank_diag_2.png | Bin 0 -> 915 bytes ...tle_up_right_bank_to_right_bank_diag_3.png | Bin 0 -> 1007 bytes ...tle_up_right_bank_to_right_bank_diag_4.png | Bin 0 -> 943 bytes ...tle_up_to_gentle_up_left_bank_diag_1_1.png | Bin 0 -> 946 bytes ...tle_up_to_gentle_up_left_bank_diag_1_2.png | Bin 0 -> 994 bytes ...entle_up_to_gentle_up_left_bank_diag_2.png | Bin 0 -> 939 bytes ...entle_up_to_gentle_up_left_bank_diag_3.png | Bin 0 -> 1034 bytes ...entle_up_to_gentle_up_left_bank_diag_4.png | Bin 0 -> 984 bytes ...ntle_up_to_gentle_up_right_bank_diag_1.png | Bin 0 -> 1013 bytes ...ntle_up_to_gentle_up_right_bank_diag_2.png | Bin 0 -> 937 bytes ...le_up_to_gentle_up_right_bank_diag_3_1.png | Bin 0 -> 962 bytes ...le_up_to_gentle_up_right_bank_diag_3_2.png | Bin 0 -> 1002 bytes ...ntle_up_to_gentle_up_right_bank_diag_4.png | Bin 0 -> 977 bytes ...e_turn_left_bank_to_diag_gentle_up_1_1.png | Bin 0 -> 990 bytes ...e_turn_left_bank_to_diag_gentle_up_1_2.png | Bin 0 -> 995 bytes ...e_turn_left_bank_to_diag_gentle_up_1_3.png | Bin 0 -> 933 bytes ...e_turn_left_bank_to_diag_gentle_up_1_4.png | Bin 0 -> 977 bytes ...e_turn_left_bank_to_diag_gentle_up_2_1.png | Bin 0 -> 952 bytes ...e_turn_left_bank_to_diag_gentle_up_2_2.png | Bin 0 -> 939 bytes ...e_turn_left_bank_to_diag_gentle_up_2_3.png | Bin 0 -> 936 bytes ...e_turn_left_bank_to_diag_gentle_up_2_4.png | Bin 0 -> 954 bytes ...e_turn_left_bank_to_diag_gentle_up_3_1.png | Bin 0 -> 923 bytes ...e_turn_left_bank_to_diag_gentle_up_3_2.png | Bin 0 -> 921 bytes ...e_turn_left_bank_to_diag_gentle_up_3_3.png | Bin 0 -> 900 bytes ...e_turn_left_bank_to_diag_gentle_up_3_4.png | Bin 0 -> 931 bytes ...e_turn_left_bank_to_diag_gentle_up_4_1.png | Bin 0 -> 981 bytes ...e_turn_left_bank_to_diag_gentle_up_4_2.png | Bin 0 -> 981 bytes ...e_turn_left_bank_to_diag_gentle_up_4_3.png | Bin 0 -> 909 bytes ...e_turn_left_bank_to_diag_gentle_up_4_4.png | Bin 0 -> 965 bytes ..._left_bank_to_orthogonal_gentle_up_1_1.png | Bin 0 -> 962 bytes ..._left_bank_to_orthogonal_gentle_up_1_2.png | Bin 0 -> 860 bytes ..._left_bank_to_orthogonal_gentle_up_1_3.png | Bin 0 -> 1005 bytes ..._left_bank_to_orthogonal_gentle_up_1_4.png | Bin 0 -> 1018 bytes ..._left_bank_to_orthogonal_gentle_up_2_1.png | Bin 0 -> 904 bytes ..._left_bank_to_orthogonal_gentle_up_2_2.png | Bin 0 -> 860 bytes ..._left_bank_to_orthogonal_gentle_up_2_3.png | Bin 0 -> 929 bytes ..._left_bank_to_orthogonal_gentle_up_2_4.png | Bin 0 -> 943 bytes ..._left_bank_to_orthogonal_gentle_up_3_1.png | Bin 0 -> 963 bytes ..._left_bank_to_orthogonal_gentle_up_3_2.png | Bin 0 -> 860 bytes ..._left_bank_to_orthogonal_gentle_up_3_3.png | Bin 0 -> 1014 bytes ..._left_bank_to_orthogonal_gentle_up_3_4.png | Bin 0 -> 952 bytes ..._left_bank_to_orthogonal_gentle_up_4_1.png | Bin 0 -> 952 bytes ..._left_bank_to_orthogonal_gentle_up_4_2.png | Bin 0 -> 860 bytes ..._left_bank_to_orthogonal_gentle_up_4_3.png | Bin 0 -> 985 bytes ..._left_bank_to_orthogonal_gentle_up_4_4.png | Bin 0 -> 1007 bytes .../large_turn_left_to_diag_gentle_down_1.png | Bin 0 -> 995 bytes ...arge_turn_left_to_diag_gentle_down_1_1.png | Bin 0 -> 1009 bytes ...arge_turn_left_to_diag_gentle_down_1_2.png | Bin 0 -> 1009 bytes ...arge_turn_left_to_diag_gentle_down_1_3.png | Bin 0 -> 1009 bytes ...arge_turn_left_to_diag_gentle_down_1_4.png | Bin 0 -> 1009 bytes .../large_turn_left_to_diag_gentle_down_2.png | Bin 0 -> 1201 bytes ...arge_turn_left_to_diag_gentle_down_2_1.png | Bin 0 -> 1213 bytes ...arge_turn_left_to_diag_gentle_down_2_2.png | Bin 0 -> 1213 bytes ...arge_turn_left_to_diag_gentle_down_2_3.png | Bin 0 -> 1213 bytes ...arge_turn_left_to_diag_gentle_down_2_4.png | Bin 0 -> 1213 bytes .../large_turn_left_to_diag_gentle_down_3.png | Bin 0 -> 1156 bytes ...arge_turn_left_to_diag_gentle_down_3_1.png | Bin 0 -> 1205 bytes ...arge_turn_left_to_diag_gentle_down_3_2.png | Bin 0 -> 1205 bytes ...arge_turn_left_to_diag_gentle_down_3_3.png | Bin 0 -> 1205 bytes ...arge_turn_left_to_diag_gentle_down_3_4.png | Bin 0 -> 1205 bytes .../large_turn_left_to_diag_gentle_down_4.png | Bin 0 -> 1109 bytes ...arge_turn_left_to_diag_gentle_down_4_1.png | Bin 0 -> 1108 bytes ...arge_turn_left_to_diag_gentle_down_4_2.png | Bin 0 -> 1108 bytes ...arge_turn_left_to_diag_gentle_down_4_3.png | Bin 0 -> 1108 bytes ...arge_turn_left_to_diag_gentle_down_4_4.png | Bin 0 -> 1108 bytes .../large_turn_left_to_diag_gentle_up_1.png | Bin 0 -> 1153 bytes .../large_turn_left_to_diag_gentle_up_1_1.png | Bin 0 -> 984 bytes .../large_turn_left_to_diag_gentle_up_1_2.png | Bin 0 -> 954 bytes .../large_turn_left_to_diag_gentle_up_1_3.png | Bin 0 -> 931 bytes .../large_turn_left_to_diag_gentle_up_1_4.png | Bin 0 -> 930 bytes .../large_turn_left_to_diag_gentle_up_2.png | Bin 0 -> 1116 bytes .../large_turn_left_to_diag_gentle_up_2_1.png | Bin 0 -> 949 bytes .../large_turn_left_to_diag_gentle_up_2_2.png | Bin 0 -> 929 bytes .../large_turn_left_to_diag_gentle_up_2_3.png | Bin 0 -> 925 bytes .../large_turn_left_to_diag_gentle_up_2_4.png | Bin 0 -> 956 bytes .../large_turn_left_to_diag_gentle_up_3.png | Bin 0 -> 1002 bytes .../large_turn_left_to_diag_gentle_up_3_1.png | Bin 0 -> 915 bytes .../large_turn_left_to_diag_gentle_up_3_2.png | Bin 0 -> 922 bytes .../large_turn_left_to_diag_gentle_up_3_3.png | Bin 0 -> 893 bytes .../large_turn_left_to_diag_gentle_up_3_4.png | Bin 0 -> 922 bytes .../large_turn_left_to_diag_gentle_up_4.png | Bin 0 -> 1218 bytes .../large_turn_left_to_diag_gentle_up_4_1.png | Bin 0 -> 1014 bytes .../large_turn_left_to_diag_gentle_up_4_2.png | Bin 0 -> 1008 bytes .../large_turn_left_to_diag_gentle_up_4_3.png | Bin 0 -> 914 bytes .../large_turn_left_to_diag_gentle_up_4_4.png | Bin 0 -> 983 bytes ..._turn_left_to_orthogonal_gentle_up_1_1.png | Bin 0 -> 966 bytes ..._turn_left_to_orthogonal_gentle_up_1_2.png | Bin 0 -> 860 bytes ..._turn_left_to_orthogonal_gentle_up_1_3.png | Bin 0 -> 996 bytes ..._turn_left_to_orthogonal_gentle_up_1_4.png | Bin 0 -> 1025 bytes ..._turn_left_to_orthogonal_gentle_up_2_1.png | Bin 0 -> 895 bytes ..._turn_left_to_orthogonal_gentle_up_2_2.png | Bin 0 -> 860 bytes ..._turn_left_to_orthogonal_gentle_up_2_3.png | Bin 0 -> 934 bytes ..._turn_left_to_orthogonal_gentle_up_2_4.png | Bin 0 -> 937 bytes ..._turn_left_to_orthogonal_gentle_up_3_1.png | Bin 0 -> 965 bytes ..._turn_left_to_orthogonal_gentle_up_3_2.png | Bin 0 -> 860 bytes ..._turn_left_to_orthogonal_gentle_up_3_3.png | Bin 0 -> 1000 bytes ..._turn_left_to_orthogonal_gentle_up_3_4.png | Bin 0 -> 955 bytes ..._turn_left_to_orthogonal_gentle_up_4_1.png | Bin 0 -> 926 bytes ..._turn_left_to_orthogonal_gentle_up_4_2.png | Bin 0 -> 860 bytes ..._turn_left_to_orthogonal_gentle_up_4_3.png | Bin 0 -> 1002 bytes ..._turn_left_to_orthogonal_gentle_up_4_4.png | Bin 0 -> 1037 bytes ..._turn_right_bank_to_diag_gentle_up_1_1.png | Bin 0 -> 971 bytes ..._turn_right_bank_to_diag_gentle_up_1_2.png | Bin 0 -> 974 bytes ..._turn_right_bank_to_diag_gentle_up_1_3.png | Bin 0 -> 906 bytes ..._turn_right_bank_to_diag_gentle_up_1_4.png | Bin 0 -> 963 bytes ..._turn_right_bank_to_diag_gentle_up_2_1.png | Bin 0 -> 915 bytes ..._turn_right_bank_to_diag_gentle_up_2_2.png | Bin 0 -> 913 bytes ..._turn_right_bank_to_diag_gentle_up_2_3.png | Bin 0 -> 892 bytes ..._turn_right_bank_to_diag_gentle_up_2_4.png | Bin 0 -> 922 bytes ..._turn_right_bank_to_diag_gentle_up_3_1.png | Bin 0 -> 967 bytes ..._turn_right_bank_to_diag_gentle_up_3_2.png | Bin 0 -> 956 bytes ..._turn_right_bank_to_diag_gentle_up_3_3.png | Bin 0 -> 951 bytes ..._turn_right_bank_to_diag_gentle_up_3_4.png | Bin 0 -> 968 bytes ..._turn_right_bank_to_diag_gentle_up_4_1.png | Bin 0 -> 993 bytes ..._turn_right_bank_to_diag_gentle_up_4_2.png | Bin 0 -> 976 bytes ..._turn_right_bank_to_diag_gentle_up_4_3.png | Bin 0 -> 918 bytes ..._turn_right_bank_to_diag_gentle_up_4_4.png | Bin 0 -> 952 bytes ...right_bank_to_orthogonal_gentle_up_1_1.png | Bin 0 -> 943 bytes ...right_bank_to_orthogonal_gentle_up_1_2.png | Bin 0 -> 860 bytes ...right_bank_to_orthogonal_gentle_up_1_3.png | Bin 0 -> 981 bytes ...right_bank_to_orthogonal_gentle_up_1_4.png | Bin 0 -> 944 bytes ...right_bank_to_orthogonal_gentle_up_2_1.png | Bin 0 -> 902 bytes ...right_bank_to_orthogonal_gentle_up_2_2.png | Bin 0 -> 860 bytes ...right_bank_to_orthogonal_gentle_up_2_3.png | Bin 0 -> 936 bytes ...right_bank_to_orthogonal_gentle_up_2_4.png | Bin 0 -> 953 bytes ...right_bank_to_orthogonal_gentle_up_3_1.png | Bin 0 -> 969 bytes ...right_bank_to_orthogonal_gentle_up_3_2.png | Bin 0 -> 860 bytes ...right_bank_to_orthogonal_gentle_up_3_3.png | Bin 0 -> 1009 bytes ...right_bank_to_orthogonal_gentle_up_3_4.png | Bin 0 -> 1005 bytes ...right_bank_to_orthogonal_gentle_up_4_1.png | Bin 0 -> 952 bytes ...right_bank_to_orthogonal_gentle_up_4_2.png | Bin 0 -> 860 bytes ...right_bank_to_orthogonal_gentle_up_4_3.png | Bin 0 -> 1024 bytes ...right_bank_to_orthogonal_gentle_up_4_4.png | Bin 0 -> 1037 bytes ...large_turn_right_to_diag_gentle_down_1.png | Bin 0 -> 1104 bytes ...rge_turn_right_to_diag_gentle_down_1_1.png | Bin 0 -> 1135 bytes ...rge_turn_right_to_diag_gentle_down_1_2.png | Bin 0 -> 1135 bytes ...rge_turn_right_to_diag_gentle_down_1_3.png | Bin 0 -> 1135 bytes ...rge_turn_right_to_diag_gentle_down_1_4.png | Bin 0 -> 1135 bytes ...large_turn_right_to_diag_gentle_down_2.png | Bin 0 -> 1176 bytes ...rge_turn_right_to_diag_gentle_down_2_1.png | Bin 0 -> 1220 bytes ...rge_turn_right_to_diag_gentle_down_2_2.png | Bin 0 -> 1220 bytes ...rge_turn_right_to_diag_gentle_down_2_3.png | Bin 0 -> 1220 bytes ...rge_turn_right_to_diag_gentle_down_2_4.png | Bin 0 -> 1220 bytes ...large_turn_right_to_diag_gentle_down_3.png | Bin 0 -> 1179 bytes ...rge_turn_right_to_diag_gentle_down_3_1.png | Bin 0 -> 1217 bytes ...rge_turn_right_to_diag_gentle_down_3_2.png | Bin 0 -> 1217 bytes ...rge_turn_right_to_diag_gentle_down_3_3.png | Bin 0 -> 1217 bytes ...rge_turn_right_to_diag_gentle_down_3_4.png | Bin 0 -> 1217 bytes ...large_turn_right_to_diag_gentle_down_4.png | Bin 0 -> 1005 bytes ...rge_turn_right_to_diag_gentle_down_4_1.png | Bin 0 -> 1018 bytes ...rge_turn_right_to_diag_gentle_down_4_2.png | Bin 0 -> 1018 bytes ...rge_turn_right_to_diag_gentle_down_4_3.png | Bin 0 -> 1018 bytes ...rge_turn_right_to_diag_gentle_down_4_4.png | Bin 0 -> 1018 bytes .../large_turn_right_to_diag_gentle_up_1.png | Bin 0 -> 1196 bytes ...large_turn_right_to_diag_gentle_up_1_1.png | Bin 0 -> 1015 bytes ...large_turn_right_to_diag_gentle_up_1_2.png | Bin 0 -> 989 bytes ...large_turn_right_to_diag_gentle_up_1_3.png | Bin 0 -> 903 bytes ...large_turn_right_to_diag_gentle_up_1_4.png | Bin 0 -> 968 bytes .../large_turn_right_to_diag_gentle_up_2.png | Bin 0 -> 1010 bytes ...large_turn_right_to_diag_gentle_up_2_1.png | Bin 0 -> 908 bytes ...large_turn_right_to_diag_gentle_up_2_2.png | Bin 0 -> 921 bytes ...large_turn_right_to_diag_gentle_up_2_3.png | Bin 0 -> 896 bytes ...large_turn_right_to_diag_gentle_up_2_4.png | Bin 0 -> 925 bytes .../large_turn_right_to_diag_gentle_up_3.png | Bin 0 -> 1093 bytes ...large_turn_right_to_diag_gentle_up_3_1.png | Bin 0 -> 954 bytes ...large_turn_right_to_diag_gentle_up_3_2.png | Bin 0 -> 937 bytes ...large_turn_right_to_diag_gentle_up_3_3.png | Bin 0 -> 938 bytes ...large_turn_right_to_diag_gentle_up_3_4.png | Bin 0 -> 957 bytes .../large_turn_right_to_diag_gentle_up_4.png | Bin 0 -> 1149 bytes ...large_turn_right_to_diag_gentle_up_4_1.png | Bin 0 -> 990 bytes ...large_turn_right_to_diag_gentle_up_4_2.png | Bin 0 -> 980 bytes ...large_turn_right_to_diag_gentle_up_4_3.png | Bin 0 -> 922 bytes ...large_turn_right_to_diag_gentle_up_4_4.png | Bin 0 -> 934 bytes ...turn_right_to_orthogonal_gentle_up_1_1.png | Bin 0 -> 958 bytes ...turn_right_to_orthogonal_gentle_up_1_2.png | Bin 0 -> 860 bytes ...turn_right_to_orthogonal_gentle_up_1_3.png | Bin 0 -> 991 bytes ...turn_right_to_orthogonal_gentle_up_1_4.png | Bin 0 -> 951 bytes ...turn_right_to_orthogonal_gentle_up_2_1.png | Bin 0 -> 891 bytes ...turn_right_to_orthogonal_gentle_up_2_2.png | Bin 0 -> 860 bytes ...turn_right_to_orthogonal_gentle_up_2_3.png | Bin 0 -> 931 bytes ...turn_right_to_orthogonal_gentle_up_2_4.png | Bin 0 -> 942 bytes ...turn_right_to_orthogonal_gentle_up_3_1.png | Bin 0 -> 974 bytes ...turn_right_to_orthogonal_gentle_up_3_2.png | Bin 0 -> 860 bytes ...turn_right_to_orthogonal_gentle_up_3_3.png | Bin 0 -> 1012 bytes ...turn_right_to_orthogonal_gentle_up_3_4.png | Bin 0 -> 1029 bytes ...turn_right_to_orthogonal_gentle_up_4_1.png | Bin 0 -> 930 bytes ...turn_right_to_orthogonal_gentle_up_4_2.png | Bin 0 -> 860 bytes ...turn_right_to_orthogonal_gentle_up_4_3.png | Bin 0 -> 992 bytes ...turn_right_to_orthogonal_gentle_up_4_4.png | Bin 0 -> 1019 bytes ...eft_bank_to_gentle_up_left_bank_diag_1.png | Bin 0 -> 1012 bytes ...eft_bank_to_gentle_up_left_bank_diag_2.png | Bin 0 -> 950 bytes ...eft_bank_to_gentle_up_left_bank_diag_3.png | Bin 0 -> 999 bytes ...t_bank_to_gentle_up_left_bank_diag_3_1.png | Bin 0 -> 1000 bytes ...t_bank_to_gentle_up_left_bank_diag_3_2.png | Bin 0 -> 860 bytes ...eft_bank_to_gentle_up_left_bank_diag_4.png | Bin 0 -> 919 bytes ...ht_bank_to_gentle_up_right_bank_diag_1.png | Bin 0 -> 980 bytes ...ht_bank_to_gentle_up_right_bank_diag_2.png | Bin 0 -> 922 bytes ...ht_bank_to_gentle_up_right_bank_diag_3.png | Bin 0 -> 1010 bytes ..._bank_to_gentle_up_right_bank_diag_3_1.png | Bin 0 -> 860 bytes ..._bank_to_gentle_up_right_bank_diag_3_2.png | Bin 0 -> 1009 bytes ...ht_bank_to_gentle_up_right_bank_diag_4.png | Bin 0 -> 940 bytes .../flat_to_gentle_up_left_bank_diag_1_1.png | Bin 0 -> 1016 bytes .../flat_to_gentle_up_left_bank_diag_1_2.png | Bin 0 -> 1244 bytes .../flat_to_gentle_up_left_bank_diag_2.png | Bin 0 -> 1552 bytes .../flat_to_gentle_up_left_bank_diag_3.png | Bin 0 -> 1497 bytes .../flat_to_gentle_up_left_bank_diag_4.png | Bin 0 -> 1680 bytes .../flat_to_gentle_up_right_bank_diag_1.png | Bin 0 -> 1500 bytes .../flat_to_gentle_up_right_bank_diag_2.png | Bin 0 -> 1529 bytes .../flat_to_gentle_up_right_bank_diag_3_1.png | Bin 0 -> 1014 bytes .../flat_to_gentle_up_right_bank_diag_3_2.png | Bin 0 -> 1264 bytes .../flat_to_gentle_up_right_bank_diag_4.png | Bin 0 -> 1707 bytes .../track/rmc/gentle_up_left_bank_diag_1.png | Bin 0 -> 1287 bytes .../rmc/gentle_up_left_bank_diag_1_1.png | Bin 0 -> 907 bytes .../rmc/gentle_up_left_bank_diag_1_2.png | Bin 0 -> 1269 bytes .../track/rmc/gentle_up_left_bank_diag_2.png | Bin 0 -> 1481 bytes .../track/rmc/gentle_up_left_bank_diag_3.png | Bin 0 -> 1403 bytes .../track/rmc/gentle_up_left_bank_diag_4.png | Bin 0 -> 1583 bytes .../gentle_up_left_bank_to_flat_diag_1_1.png | Bin 0 -> 1017 bytes .../gentle_up_left_bank_to_flat_diag_1_2.png | Bin 0 -> 1198 bytes .../gentle_up_left_bank_to_flat_diag_2.png | Bin 0 -> 1625 bytes .../gentle_up_left_bank_to_flat_diag_3.png | Bin 0 -> 1469 bytes .../gentle_up_left_bank_to_flat_diag_4.png | Bin 0 -> 1689 bytes ...tle_up_left_bank_to_gentle_up_diag_1_1.png | Bin 0 -> 1036 bytes ...tle_up_left_bank_to_gentle_up_diag_1_2.png | Bin 0 -> 1223 bytes ...entle_up_left_bank_to_gentle_up_diag_2.png | Bin 0 -> 1531 bytes ...entle_up_left_bank_to_gentle_up_diag_3.png | Bin 0 -> 1540 bytes ...entle_up_left_bank_to_gentle_up_diag_4.png | Bin 0 -> 1775 bytes ...entle_up_left_bank_to_left_bank_diag_1.png | Bin 0 -> 1319 bytes ...tle_up_left_bank_to_left_bank_diag_1_1.png | Bin 0 -> 906 bytes ...tle_up_left_bank_to_left_bank_diag_1_2.png | Bin 0 -> 1296 bytes ...entle_up_left_bank_to_left_bank_diag_2.png | Bin 0 -> 1585 bytes ...entle_up_left_bank_to_left_bank_diag_3.png | Bin 0 -> 1495 bytes ...entle_up_left_bank_to_left_bank_diag_4.png | Bin 0 -> 1660 bytes .../track/rmc/gentle_up_right_bank_diag_1.png | Bin 0 -> 1427 bytes .../track/rmc/gentle_up_right_bank_diag_2.png | Bin 0 -> 1455 bytes .../track/rmc/gentle_up_right_bank_diag_3.png | Bin 0 -> 1317 bytes .../rmc/gentle_up_right_bank_diag_3_1.png | Bin 0 -> 901 bytes .../rmc/gentle_up_right_bank_diag_3_2.png | Bin 0 -> 1282 bytes .../track/rmc/gentle_up_right_bank_diag_4.png | Bin 0 -> 1592 bytes .../gentle_up_right_bank_to_flat_diag_1.png | Bin 0 -> 1460 bytes .../gentle_up_right_bank_to_flat_diag_2.png | Bin 0 -> 1588 bytes .../gentle_up_right_bank_to_flat_diag_3_1.png | Bin 0 -> 1020 bytes .../gentle_up_right_bank_to_flat_diag_3_2.png | Bin 0 -> 1229 bytes .../gentle_up_right_bank_to_flat_diag_4.png | Bin 0 -> 1713 bytes ...ntle_up_right_bank_to_gentle_up_diag_1.png | Bin 0 -> 1461 bytes ...ntle_up_right_bank_to_gentle_up_diag_2.png | Bin 0 -> 1503 bytes ...le_up_right_bank_to_gentle_up_diag_3_1.png | Bin 0 -> 1030 bytes ...le_up_right_bank_to_gentle_up_diag_3_2.png | Bin 0 -> 1243 bytes ...ntle_up_right_bank_to_gentle_up_diag_4.png | Bin 0 -> 1799 bytes ...tle_up_right_bank_to_right_bank_diag_1.png | Bin 0 -> 1456 bytes ...tle_up_right_bank_to_right_bank_diag_2.png | Bin 0 -> 1575 bytes ...tle_up_right_bank_to_right_bank_diag_3.png | Bin 0 -> 1353 bytes ...e_up_right_bank_to_right_bank_diag_3_1.png | Bin 0 -> 905 bytes ...e_up_right_bank_to_right_bank_diag_3_2.png | Bin 0 -> 1305 bytes ...tle_up_right_bank_to_right_bank_diag_4.png | Bin 0 -> 1637 bytes ...tle_up_to_gentle_up_left_bank_diag_1_1.png | Bin 0 -> 1040 bytes ...tle_up_to_gentle_up_left_bank_diag_1_2.png | Bin 0 -> 1247 bytes ...entle_up_to_gentle_up_left_bank_diag_2.png | Bin 0 -> 1495 bytes ...entle_up_to_gentle_up_left_bank_diag_3.png | Bin 0 -> 1529 bytes ...entle_up_to_gentle_up_left_bank_diag_4.png | Bin 0 -> 1771 bytes ...ntle_up_to_gentle_up_right_bank_diag_1.png | Bin 0 -> 1470 bytes ...ntle_up_to_gentle_up_right_bank_diag_2.png | Bin 0 -> 1470 bytes ...le_up_to_gentle_up_right_bank_diag_3_1.png | Bin 0 -> 1044 bytes ...le_up_to_gentle_up_right_bank_diag_3_2.png | Bin 0 -> 1279 bytes ...ntle_up_to_gentle_up_right_bank_diag_4.png | Bin 0 -> 1798 bytes ...e_turn_left_bank_to_diag_gentle_up_1_1.png | Bin 0 -> 1705 bytes ...e_turn_left_bank_to_diag_gentle_up_1_2.png | Bin 0 -> 1555 bytes ...e_turn_left_bank_to_diag_gentle_up_1_3.png | Bin 0 -> 1047 bytes ...e_turn_left_bank_to_diag_gentle_up_1_4.png | Bin 0 -> 1552 bytes ...e_turn_left_bank_to_diag_gentle_up_2_1.png | Bin 0 -> 1306 bytes ...e_turn_left_bank_to_diag_gentle_up_2_2.png | Bin 0 -> 1299 bytes ...e_turn_left_bank_to_diag_gentle_up_2_3.png | Bin 0 -> 1126 bytes ...e_turn_left_bank_to_diag_gentle_up_2_4.png | Bin 0 -> 1165 bytes ...e_turn_left_bank_to_diag_gentle_up_3_1.png | Bin 0 -> 1322 bytes ...e_turn_left_bank_to_diag_gentle_up_3_2.png | Bin 0 -> 1182 bytes ...e_turn_left_bank_to_diag_gentle_up_3_3.png | Bin 0 -> 1074 bytes ...e_turn_left_bank_to_diag_gentle_up_3_4.png | Bin 0 -> 1345 bytes ...e_turn_left_bank_to_diag_gentle_up_4_1.png | Bin 0 -> 1824 bytes ...e_turn_left_bank_to_diag_gentle_up_4_2.png | Bin 0 -> 1493 bytes ...e_turn_left_bank_to_diag_gentle_up_4_3.png | Bin 0 -> 1094 bytes ...e_turn_left_bank_to_diag_gentle_up_4_4.png | Bin 0 -> 1331 bytes ..._left_bank_to_orthogonal_gentle_up_1_1.png | Bin 0 -> 900 bytes ..._left_bank_to_orthogonal_gentle_up_1_2.png | Bin 0 -> 1229 bytes ..._left_bank_to_orthogonal_gentle_up_1_3.png | Bin 0 -> 860 bytes ..._left_bank_to_orthogonal_gentle_up_1_4.png | Bin 0 -> 860 bytes ..._left_bank_to_orthogonal_gentle_up_1_5.png | Bin 0 -> 929 bytes ..._left_bank_to_orthogonal_gentle_up_1_6.png | Bin 0 -> 1303 bytes ..._left_bank_to_orthogonal_gentle_up_1_7.png | Bin 0 -> 1040 bytes ..._left_bank_to_orthogonal_gentle_up_1_8.png | Bin 0 -> 1608 bytes ..._left_bank_to_orthogonal_gentle_up_2_1.png | Bin 0 -> 1146 bytes ..._left_bank_to_orthogonal_gentle_up_2_2.png | Bin 0 -> 860 bytes ..._left_bank_to_orthogonal_gentle_up_2_3.png | Bin 0 -> 1296 bytes ..._left_bank_to_orthogonal_gentle_up_2_4.png | Bin 0 -> 1382 bytes ..._left_bank_to_orthogonal_gentle_up_3_1.png | Bin 0 -> 1358 bytes ..._left_bank_to_orthogonal_gentle_up_3_2.png | Bin 0 -> 860 bytes ..._left_bank_to_orthogonal_gentle_up_3_3.png | Bin 0 -> 1497 bytes ..._left_bank_to_orthogonal_gentle_up_3_4.png | Bin 0 -> 1612 bytes ..._left_bank_to_orthogonal_gentle_up_4_1.png | Bin 0 -> 1357 bytes ..._left_bank_to_orthogonal_gentle_up_4_2.png | Bin 0 -> 860 bytes ..._left_bank_to_orthogonal_gentle_up_4_3.png | Bin 0 -> 1693 bytes ..._left_bank_to_orthogonal_gentle_up_4_4.png | Bin 0 -> 1963 bytes .../large_turn_left_to_diag_gentle_up_1_1.png | Bin 0 -> 1648 bytes .../large_turn_left_to_diag_gentle_up_1_2.png | Bin 0 -> 1398 bytes .../large_turn_left_to_diag_gentle_up_1_3.png | Bin 0 -> 1010 bytes .../large_turn_left_to_diag_gentle_up_1_4.png | Bin 0 -> 1409 bytes .../large_turn_left_to_diag_gentle_up_2_1.png | Bin 0 -> 1178 bytes .../large_turn_left_to_diag_gentle_up_2_2.png | Bin 0 -> 1204 bytes .../large_turn_left_to_diag_gentle_up_2_3.png | Bin 0 -> 1096 bytes .../large_turn_left_to_diag_gentle_up_2_4.png | Bin 0 -> 1156 bytes .../large_turn_left_to_diag_gentle_up_3_1.png | Bin 0 -> 1200 bytes .../large_turn_left_to_diag_gentle_up_3_2.png | Bin 0 -> 1073 bytes .../large_turn_left_to_diag_gentle_up_3_3.png | Bin 0 -> 1055 bytes .../large_turn_left_to_diag_gentle_up_3_4.png | Bin 0 -> 1129 bytes .../large_turn_left_to_diag_gentle_up_4_1.png | Bin 0 -> 1620 bytes .../large_turn_left_to_diag_gentle_up_4_2.png | Bin 0 -> 1391 bytes .../large_turn_left_to_diag_gentle_up_4_3.png | Bin 0 -> 1035 bytes .../large_turn_left_to_diag_gentle_up_4_4.png | Bin 0 -> 1288 bytes ..._turn_left_to_orthogonal_gentle_up_1_1.png | Bin 0 -> 1262 bytes ..._turn_left_to_orthogonal_gentle_up_1_2.png | Bin 0 -> 860 bytes ..._turn_left_to_orthogonal_gentle_up_1_3.png | Bin 0 -> 1340 bytes ..._turn_left_to_orthogonal_gentle_up_1_4.png | Bin 0 -> 1620 bytes ..._turn_left_to_orthogonal_gentle_up_2_1.png | Bin 0 -> 1024 bytes ..._turn_left_to_orthogonal_gentle_up_2_2.png | Bin 0 -> 860 bytes ..._turn_left_to_orthogonal_gentle_up_2_3.png | Bin 0 -> 1247 bytes ..._turn_left_to_orthogonal_gentle_up_2_4.png | Bin 0 -> 1326 bytes ..._turn_left_to_orthogonal_gentle_up_3_1.png | Bin 0 -> 1258 bytes ..._turn_left_to_orthogonal_gentle_up_3_2.png | Bin 0 -> 860 bytes ..._turn_left_to_orthogonal_gentle_up_3_3.png | Bin 0 -> 1258 bytes ..._turn_left_to_orthogonal_gentle_up_3_4.png | Bin 0 -> 1399 bytes ..._turn_left_to_orthogonal_gentle_up_4_1.png | Bin 0 -> 1224 bytes ..._turn_left_to_orthogonal_gentle_up_4_2.png | Bin 0 -> 860 bytes ..._turn_left_to_orthogonal_gentle_up_4_3.png | Bin 0 -> 1557 bytes ..._turn_left_to_orthogonal_gentle_up_4_4.png | Bin 0 -> 1893 bytes ..._turn_right_bank_to_diag_gentle_up_1_1.png | Bin 0 -> 1843 bytes ..._turn_right_bank_to_diag_gentle_up_1_2.png | Bin 0 -> 1478 bytes ..._turn_right_bank_to_diag_gentle_up_1_3.png | Bin 0 -> 1082 bytes ..._turn_right_bank_to_diag_gentle_up_1_4.png | Bin 0 -> 1316 bytes ..._turn_right_bank_to_diag_gentle_up_2_1.png | Bin 0 -> 1289 bytes ..._turn_right_bank_to_diag_gentle_up_2_2.png | Bin 0 -> 1158 bytes ..._turn_right_bank_to_diag_gentle_up_2_3.png | Bin 0 -> 1059 bytes ..._turn_right_bank_to_diag_gentle_up_2_4.png | Bin 0 -> 1327 bytes ..._turn_right_bank_to_diag_gentle_up_3_1.png | Bin 0 -> 1305 bytes ..._turn_right_bank_to_diag_gentle_up_3_2.png | Bin 0 -> 1341 bytes ..._turn_right_bank_to_diag_gentle_up_3_3.png | Bin 0 -> 1164 bytes ..._turn_right_bank_to_diag_gentle_up_3_4.png | Bin 0 -> 1185 bytes ..._turn_right_bank_to_diag_gentle_up_4_1.png | Bin 0 -> 1730 bytes ..._turn_right_bank_to_diag_gentle_up_4_2.png | Bin 0 -> 1570 bytes ..._turn_right_bank_to_diag_gentle_up_4_3.png | Bin 0 -> 1055 bytes ..._turn_right_bank_to_diag_gentle_up_4_4.png | Bin 0 -> 1541 bytes ...right_bank_to_orthogonal_gentle_up_1_1.png | Bin 0 -> 1323 bytes ...right_bank_to_orthogonal_gentle_up_1_2.png | Bin 0 -> 860 bytes ...right_bank_to_orthogonal_gentle_up_1_3.png | Bin 0 -> 1441 bytes ...right_bank_to_orthogonal_gentle_up_1_4.png | Bin 0 -> 1532 bytes ...right_bank_to_orthogonal_gentle_up_2_1.png | Bin 0 -> 1141 bytes ...right_bank_to_orthogonal_gentle_up_2_2.png | Bin 0 -> 860 bytes ...right_bank_to_orthogonal_gentle_up_2_3.png | Bin 0 -> 1291 bytes ...right_bank_to_orthogonal_gentle_up_2_4.png | Bin 0 -> 1393 bytes ...right_bank_to_orthogonal_gentle_up_3_1.png | Bin 0 -> 895 bytes ...right_bank_to_orthogonal_gentle_up_3_2.png | Bin 0 -> 1226 bytes ...right_bank_to_orthogonal_gentle_up_3_3.png | Bin 0 -> 860 bytes ...right_bank_to_orthogonal_gentle_up_3_4.png | Bin 0 -> 860 bytes ...right_bank_to_orthogonal_gentle_up_3_5.png | Bin 0 -> 933 bytes ...right_bank_to_orthogonal_gentle_up_3_6.png | Bin 0 -> 1316 bytes ...right_bank_to_orthogonal_gentle_up_3_7.png | Bin 0 -> 1045 bytes ...right_bank_to_orthogonal_gentle_up_3_8.png | Bin 0 -> 1598 bytes ...right_bank_to_orthogonal_gentle_up_4_1.png | Bin 0 -> 1363 bytes ...right_bank_to_orthogonal_gentle_up_4_2.png | Bin 0 -> 860 bytes ...right_bank_to_orthogonal_gentle_up_4_3.png | Bin 0 -> 1734 bytes ...right_bank_to_orthogonal_gentle_up_4_4.png | Bin 0 -> 2017 bytes ...large_turn_right_to_diag_gentle_up_1_1.png | Bin 0 -> 1566 bytes ...large_turn_right_to_diag_gentle_up_1_2.png | Bin 0 -> 1332 bytes ...large_turn_right_to_diag_gentle_up_1_3.png | Bin 0 -> 1013 bytes ...large_turn_right_to_diag_gentle_up_1_4.png | Bin 0 -> 1252 bytes ...large_turn_right_to_diag_gentle_up_2_1.png | Bin 0 -> 1194 bytes ...large_turn_right_to_diag_gentle_up_2_2.png | Bin 0 -> 1066 bytes ...large_turn_right_to_diag_gentle_up_2_3.png | Bin 0 -> 1057 bytes ...large_turn_right_to_diag_gentle_up_2_4.png | Bin 0 -> 1143 bytes ...large_turn_right_to_diag_gentle_up_3_1.png | Bin 0 -> 1201 bytes ...large_turn_right_to_diag_gentle_up_3_2.png | Bin 0 -> 1256 bytes ...large_turn_right_to_diag_gentle_up_3_3.png | Bin 0 -> 1128 bytes ...large_turn_right_to_diag_gentle_up_3_4.png | Bin 0 -> 1189 bytes ...large_turn_right_to_diag_gentle_up_4_1.png | Bin 0 -> 1738 bytes ...large_turn_right_to_diag_gentle_up_4_2.png | Bin 0 -> 1474 bytes ...large_turn_right_to_diag_gentle_up_4_3.png | Bin 0 -> 1016 bytes ...large_turn_right_to_diag_gentle_up_4_4.png | Bin 0 -> 1397 bytes ...turn_right_to_orthogonal_gentle_up_1_1.png | Bin 0 -> 1210 bytes ...turn_right_to_orthogonal_gentle_up_1_2.png | Bin 0 -> 860 bytes ...turn_right_to_orthogonal_gentle_up_1_3.png | Bin 0 -> 1236 bytes ...turn_right_to_orthogonal_gentle_up_1_4.png | Bin 0 -> 1357 bytes ...turn_right_to_orthogonal_gentle_up_2_1.png | Bin 0 -> 1021 bytes ...turn_right_to_orthogonal_gentle_up_2_2.png | Bin 0 -> 860 bytes ...turn_right_to_orthogonal_gentle_up_2_3.png | Bin 0 -> 1243 bytes ...turn_right_to_orthogonal_gentle_up_2_4.png | Bin 0 -> 1312 bytes ...turn_right_to_orthogonal_gentle_up_3_1.png | Bin 0 -> 1288 bytes ...turn_right_to_orthogonal_gentle_up_3_2.png | Bin 0 -> 860 bytes ...turn_right_to_orthogonal_gentle_up_3_3.png | Bin 0 -> 1394 bytes ...turn_right_to_orthogonal_gentle_up_3_4.png | Bin 0 -> 1673 bytes ...turn_right_to_orthogonal_gentle_up_4_1.png | Bin 0 -> 1229 bytes ...turn_right_to_orthogonal_gentle_up_4_2.png | Bin 0 -> 860 bytes ...turn_right_to_orthogonal_gentle_up_4_3.png | Bin 0 -> 1547 bytes ...turn_right_to_orthogonal_gentle_up_4_4.png | Bin 0 -> 1775 bytes ...eft_bank_to_gentle_up_left_bank_diag_1.png | Bin 0 -> 1350 bytes ...t_bank_to_gentle_up_left_bank_diag_1_1.png | Bin 0 -> 909 bytes ...t_bank_to_gentle_up_left_bank_diag_1_2.png | Bin 0 -> 1317 bytes ...eft_bank_to_gentle_up_left_bank_diag_2.png | Bin 0 -> 1528 bytes ...eft_bank_to_gentle_up_left_bank_diag_3.png | Bin 0 -> 1525 bytes ...eft_bank_to_gentle_up_left_bank_diag_4.png | Bin 0 -> 1626 bytes ...ht_bank_to_gentle_up_right_bank_diag_1.png | Bin 0 -> 1477 bytes ...ht_bank_to_gentle_up_right_bank_diag_2.png | Bin 0 -> 1545 bytes ...ht_bank_to_gentle_up_right_bank_diag_3.png | Bin 0 -> 1364 bytes ..._bank_to_gentle_up_right_bank_diag_3_1.png | Bin 0 -> 908 bytes ..._bank_to_gentle_up_right_bank_diag_3_2.png | Bin 0 -> 1340 bytes ...ht_bank_to_gentle_up_right_bank_diag_4.png | Bin 0 -> 1630 bytes src/openrct2-ui/windows/RideConstruction.cpp | 11 +- src/openrct2/network/NetworkBase.cpp | 2 +- src/openrct2/object/RideObject.cpp | 2 +- src/openrct2/park/ParkFile.h | 4 +- src/openrct2/ride/CarEntry.h | 19 +- src/openrct2/ride/RideData.cpp | 3 + src/openrct2/ride/Track.h | 52 +- src/openrct2/ride/TrackData.cpp | 798 +++- src/openrct2/ride/TrackData.h | 4 +- src/openrct2/ride/VehiclePaint.cpp | 248 +- src/openrct2/ride/VehicleSubpositionData.cpp | 3842 +++++++++++++---- src/openrct2/ride/coaster/HybridCoaster.cpp | 2479 +++++++++++ .../ride/coaster/SingleRailRollerCoaster.cpp | 2853 +++++++++++- .../ride/coaster/meta/HybridCoaster.h | 2 +- .../coaster/meta/SingleRailRollerCoaster.h | 2 +- src/openrct2/scripting/ScriptEngine.h | 2 +- src/openrct2/sprites.h | 20 +- 475 files changed, 12473 insertions(+), 1419 deletions(-) create mode 100644 resources/g2/track/raptor/flat_to_gentle_up_left_bank_diag_1_1.png create mode 100644 resources/g2/track/raptor/flat_to_gentle_up_left_bank_diag_1_2.png create mode 100644 resources/g2/track/raptor/flat_to_gentle_up_left_bank_diag_2.png create mode 100644 resources/g2/track/raptor/flat_to_gentle_up_left_bank_diag_3.png create mode 100644 resources/g2/track/raptor/flat_to_gentle_up_left_bank_diag_4.png create mode 100644 resources/g2/track/raptor/flat_to_gentle_up_right_bank_diag_1.png create mode 100644 resources/g2/track/raptor/flat_to_gentle_up_right_bank_diag_2.png create mode 100644 resources/g2/track/raptor/flat_to_gentle_up_right_bank_diag_3_1.png create mode 100644 resources/g2/track/raptor/flat_to_gentle_up_right_bank_diag_3_2.png create mode 100644 resources/g2/track/raptor/flat_to_gentle_up_right_bank_diag_4.png create mode 100644 resources/g2/track/raptor/gentle_up_left_bank_diag_1.png create mode 100644 resources/g2/track/raptor/gentle_up_left_bank_diag_2.png create mode 100644 resources/g2/track/raptor/gentle_up_left_bank_diag_3.png create mode 100644 resources/g2/track/raptor/gentle_up_left_bank_diag_4.png create mode 100644 resources/g2/track/raptor/gentle_up_left_bank_to_flat_diag_1_1.png create mode 100644 resources/g2/track/raptor/gentle_up_left_bank_to_flat_diag_1_2.png create mode 100644 resources/g2/track/raptor/gentle_up_left_bank_to_flat_diag_2.png create mode 100644 resources/g2/track/raptor/gentle_up_left_bank_to_flat_diag_3.png create mode 100644 resources/g2/track/raptor/gentle_up_left_bank_to_flat_diag_4.png create mode 100644 resources/g2/track/raptor/gentle_up_left_bank_to_gentle_up_diag_1_1.png create mode 100644 resources/g2/track/raptor/gentle_up_left_bank_to_gentle_up_diag_1_2.png create mode 100644 resources/g2/track/raptor/gentle_up_left_bank_to_gentle_up_diag_2.png create mode 100644 resources/g2/track/raptor/gentle_up_left_bank_to_gentle_up_diag_3.png create mode 100644 resources/g2/track/raptor/gentle_up_left_bank_to_gentle_up_diag_4.png create mode 100644 resources/g2/track/raptor/gentle_up_left_bank_to_left_bank_diag_1.png create mode 100644 resources/g2/track/raptor/gentle_up_left_bank_to_left_bank_diag_2.png create mode 100644 resources/g2/track/raptor/gentle_up_left_bank_to_left_bank_diag_3.png create mode 100644 resources/g2/track/raptor/gentle_up_left_bank_to_left_bank_diag_4.png create mode 100644 resources/g2/track/raptor/gentle_up_right_bank_diag_1.png create mode 100644 resources/g2/track/raptor/gentle_up_right_bank_diag_2.png create mode 100644 resources/g2/track/raptor/gentle_up_right_bank_diag_3.png create mode 100644 resources/g2/track/raptor/gentle_up_right_bank_diag_4.png create mode 100644 resources/g2/track/raptor/gentle_up_right_bank_to_flat_diag_1.png create mode 100644 resources/g2/track/raptor/gentle_up_right_bank_to_flat_diag_2.png create mode 100644 resources/g2/track/raptor/gentle_up_right_bank_to_flat_diag_3_1.png create mode 100644 resources/g2/track/raptor/gentle_up_right_bank_to_flat_diag_3_2.png create mode 100644 resources/g2/track/raptor/gentle_up_right_bank_to_flat_diag_4.png create mode 100644 resources/g2/track/raptor/gentle_up_right_bank_to_gentle_up_diag_1.png create mode 100644 resources/g2/track/raptor/gentle_up_right_bank_to_gentle_up_diag_2.png create mode 100644 resources/g2/track/raptor/gentle_up_right_bank_to_gentle_up_diag_3_1.png create mode 100644 resources/g2/track/raptor/gentle_up_right_bank_to_gentle_up_diag_3_2.png create mode 100644 resources/g2/track/raptor/gentle_up_right_bank_to_gentle_up_diag_4.png create mode 100644 resources/g2/track/raptor/gentle_up_right_bank_to_right_bank_diag_1.png create mode 100644 resources/g2/track/raptor/gentle_up_right_bank_to_right_bank_diag_2.png create mode 100644 resources/g2/track/raptor/gentle_up_right_bank_to_right_bank_diag_3.png create mode 100644 resources/g2/track/raptor/gentle_up_right_bank_to_right_bank_diag_4.png create mode 100644 resources/g2/track/raptor/gentle_up_to_gentle_up_left_bank_diag_1_1.png create mode 100644 resources/g2/track/raptor/gentle_up_to_gentle_up_left_bank_diag_1_2.png create mode 100644 resources/g2/track/raptor/gentle_up_to_gentle_up_left_bank_diag_2.png create mode 100644 resources/g2/track/raptor/gentle_up_to_gentle_up_left_bank_diag_3.png create mode 100644 resources/g2/track/raptor/gentle_up_to_gentle_up_left_bank_diag_4.png create mode 100644 resources/g2/track/raptor/gentle_up_to_gentle_up_right_bank_diag_1.png create mode 100644 resources/g2/track/raptor/gentle_up_to_gentle_up_right_bank_diag_2.png create mode 100644 resources/g2/track/raptor/gentle_up_to_gentle_up_right_bank_diag_3_1.png create mode 100644 resources/g2/track/raptor/gentle_up_to_gentle_up_right_bank_diag_3_2.png create mode 100644 resources/g2/track/raptor/gentle_up_to_gentle_up_right_bank_diag_4.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_1_1.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_1_2.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_1_3.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_1_4.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_2_1.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_2_2.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_2_3.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_2_4.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_3_1.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_3_2.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_3_3.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_3_4.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_4_1.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_4_2.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_4_3.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_4_4.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_1_1.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_1_2.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_1_3.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_1_4.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_2_1.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_2_2.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_2_3.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_2_4.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_3_1.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_3_2.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_3_3.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_3_4.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_4_1.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_4_2.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_4_3.png create mode 100644 resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_4_4.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_1.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_1_1.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_1_2.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_1_3.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_1_4.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_2.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_2_1.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_2_2.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_2_3.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_2_4.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_3.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_3_1.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_3_2.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_3_3.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_3_4.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_4.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_4_1.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_4_2.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_4_3.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_4_4.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_1.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_1_1.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_1_2.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_1_3.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_1_4.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_2.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_2_1.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_2_2.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_2_3.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_2_4.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_3.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_3_1.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_3_2.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_3_3.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_3_4.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_4.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_4_1.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_4_2.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_4_3.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_4_4.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_1_1.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_1_2.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_1_3.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_1_4.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_2_1.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_2_2.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_2_3.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_2_4.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_3_1.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_3_2.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_3_3.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_3_4.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_4_1.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_4_2.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_4_3.png create mode 100644 resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_4_4.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_1_1.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_1_2.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_1_3.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_1_4.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_2_1.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_2_2.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_2_3.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_2_4.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_3_1.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_3_2.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_3_3.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_3_4.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_4_1.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_4_2.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_4_3.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_4_4.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_1_1.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_1_2.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_1_3.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_1_4.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_2_1.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_2_2.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_2_3.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_2_4.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_3_1.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_3_2.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_3_3.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_3_4.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_4_1.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_4_2.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_4_3.png create mode 100644 resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_4_4.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_1.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_1_1.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_1_2.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_1_3.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_1_4.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_2.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_2_1.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_2_2.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_2_3.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_2_4.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_3.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_3_1.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_3_2.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_3_3.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_3_4.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_4.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_4_1.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_4_2.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_4_3.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_4_4.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_1.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_1_1.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_1_2.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_1_3.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_1_4.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_2.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_2_1.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_2_2.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_2_3.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_2_4.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_3.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_3_1.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_3_2.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_3_3.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_3_4.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_4.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_4_1.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_4_2.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_4_3.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_4_4.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_1_1.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_1_2.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_1_3.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_1_4.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_2_1.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_2_2.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_2_3.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_2_4.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_3_1.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_3_2.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_3_3.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_3_4.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_4_1.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_4_2.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_4_3.png create mode 100644 resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_4_4.png create mode 100644 resources/g2/track/raptor/left_bank_to_gentle_up_left_bank_diag_1.png create mode 100644 resources/g2/track/raptor/left_bank_to_gentle_up_left_bank_diag_2.png create mode 100644 resources/g2/track/raptor/left_bank_to_gentle_up_left_bank_diag_3.png create mode 100644 resources/g2/track/raptor/left_bank_to_gentle_up_left_bank_diag_3_1.png create mode 100644 resources/g2/track/raptor/left_bank_to_gentle_up_left_bank_diag_3_2.png create mode 100644 resources/g2/track/raptor/left_bank_to_gentle_up_left_bank_diag_4.png create mode 100644 resources/g2/track/raptor/right_bank_to_gentle_up_right_bank_diag_1.png create mode 100644 resources/g2/track/raptor/right_bank_to_gentle_up_right_bank_diag_2.png create mode 100644 resources/g2/track/raptor/right_bank_to_gentle_up_right_bank_diag_3.png create mode 100644 resources/g2/track/raptor/right_bank_to_gentle_up_right_bank_diag_3_1.png create mode 100644 resources/g2/track/raptor/right_bank_to_gentle_up_right_bank_diag_3_2.png create mode 100644 resources/g2/track/raptor/right_bank_to_gentle_up_right_bank_diag_4.png create mode 100644 resources/g2/track/rmc/flat_to_gentle_up_left_bank_diag_1_1.png create mode 100644 resources/g2/track/rmc/flat_to_gentle_up_left_bank_diag_1_2.png create mode 100644 resources/g2/track/rmc/flat_to_gentle_up_left_bank_diag_2.png create mode 100644 resources/g2/track/rmc/flat_to_gentle_up_left_bank_diag_3.png create mode 100644 resources/g2/track/rmc/flat_to_gentle_up_left_bank_diag_4.png create mode 100644 resources/g2/track/rmc/flat_to_gentle_up_right_bank_diag_1.png create mode 100644 resources/g2/track/rmc/flat_to_gentle_up_right_bank_diag_2.png create mode 100644 resources/g2/track/rmc/flat_to_gentle_up_right_bank_diag_3_1.png create mode 100644 resources/g2/track/rmc/flat_to_gentle_up_right_bank_diag_3_2.png create mode 100644 resources/g2/track/rmc/flat_to_gentle_up_right_bank_diag_4.png create mode 100644 resources/g2/track/rmc/gentle_up_left_bank_diag_1.png create mode 100644 resources/g2/track/rmc/gentle_up_left_bank_diag_1_1.png create mode 100644 resources/g2/track/rmc/gentle_up_left_bank_diag_1_2.png create mode 100644 resources/g2/track/rmc/gentle_up_left_bank_diag_2.png create mode 100644 resources/g2/track/rmc/gentle_up_left_bank_diag_3.png create mode 100644 resources/g2/track/rmc/gentle_up_left_bank_diag_4.png create mode 100644 resources/g2/track/rmc/gentle_up_left_bank_to_flat_diag_1_1.png create mode 100644 resources/g2/track/rmc/gentle_up_left_bank_to_flat_diag_1_2.png create mode 100644 resources/g2/track/rmc/gentle_up_left_bank_to_flat_diag_2.png create mode 100644 resources/g2/track/rmc/gentle_up_left_bank_to_flat_diag_3.png create mode 100644 resources/g2/track/rmc/gentle_up_left_bank_to_flat_diag_4.png create mode 100644 resources/g2/track/rmc/gentle_up_left_bank_to_gentle_up_diag_1_1.png create mode 100644 resources/g2/track/rmc/gentle_up_left_bank_to_gentle_up_diag_1_2.png create mode 100644 resources/g2/track/rmc/gentle_up_left_bank_to_gentle_up_diag_2.png create mode 100644 resources/g2/track/rmc/gentle_up_left_bank_to_gentle_up_diag_3.png create mode 100644 resources/g2/track/rmc/gentle_up_left_bank_to_gentle_up_diag_4.png create mode 100644 resources/g2/track/rmc/gentle_up_left_bank_to_left_bank_diag_1.png create mode 100644 resources/g2/track/rmc/gentle_up_left_bank_to_left_bank_diag_1_1.png create mode 100644 resources/g2/track/rmc/gentle_up_left_bank_to_left_bank_diag_1_2.png create mode 100644 resources/g2/track/rmc/gentle_up_left_bank_to_left_bank_diag_2.png create mode 100644 resources/g2/track/rmc/gentle_up_left_bank_to_left_bank_diag_3.png create mode 100644 resources/g2/track/rmc/gentle_up_left_bank_to_left_bank_diag_4.png create mode 100644 resources/g2/track/rmc/gentle_up_right_bank_diag_1.png create mode 100644 resources/g2/track/rmc/gentle_up_right_bank_diag_2.png create mode 100644 resources/g2/track/rmc/gentle_up_right_bank_diag_3.png create mode 100644 resources/g2/track/rmc/gentle_up_right_bank_diag_3_1.png create mode 100644 resources/g2/track/rmc/gentle_up_right_bank_diag_3_2.png create mode 100644 resources/g2/track/rmc/gentle_up_right_bank_diag_4.png create mode 100644 resources/g2/track/rmc/gentle_up_right_bank_to_flat_diag_1.png create mode 100644 resources/g2/track/rmc/gentle_up_right_bank_to_flat_diag_2.png create mode 100644 resources/g2/track/rmc/gentle_up_right_bank_to_flat_diag_3_1.png create mode 100644 resources/g2/track/rmc/gentle_up_right_bank_to_flat_diag_3_2.png create mode 100644 resources/g2/track/rmc/gentle_up_right_bank_to_flat_diag_4.png create mode 100644 resources/g2/track/rmc/gentle_up_right_bank_to_gentle_up_diag_1.png create mode 100644 resources/g2/track/rmc/gentle_up_right_bank_to_gentle_up_diag_2.png create mode 100644 resources/g2/track/rmc/gentle_up_right_bank_to_gentle_up_diag_3_1.png create mode 100644 resources/g2/track/rmc/gentle_up_right_bank_to_gentle_up_diag_3_2.png create mode 100644 resources/g2/track/rmc/gentle_up_right_bank_to_gentle_up_diag_4.png create mode 100644 resources/g2/track/rmc/gentle_up_right_bank_to_right_bank_diag_1.png create mode 100644 resources/g2/track/rmc/gentle_up_right_bank_to_right_bank_diag_2.png create mode 100644 resources/g2/track/rmc/gentle_up_right_bank_to_right_bank_diag_3.png create mode 100644 resources/g2/track/rmc/gentle_up_right_bank_to_right_bank_diag_3_1.png create mode 100644 resources/g2/track/rmc/gentle_up_right_bank_to_right_bank_diag_3_2.png create mode 100644 resources/g2/track/rmc/gentle_up_right_bank_to_right_bank_diag_4.png create mode 100644 resources/g2/track/rmc/gentle_up_to_gentle_up_left_bank_diag_1_1.png create mode 100644 resources/g2/track/rmc/gentle_up_to_gentle_up_left_bank_diag_1_2.png create mode 100644 resources/g2/track/rmc/gentle_up_to_gentle_up_left_bank_diag_2.png create mode 100644 resources/g2/track/rmc/gentle_up_to_gentle_up_left_bank_diag_3.png create mode 100644 resources/g2/track/rmc/gentle_up_to_gentle_up_left_bank_diag_4.png create mode 100644 resources/g2/track/rmc/gentle_up_to_gentle_up_right_bank_diag_1.png create mode 100644 resources/g2/track/rmc/gentle_up_to_gentle_up_right_bank_diag_2.png create mode 100644 resources/g2/track/rmc/gentle_up_to_gentle_up_right_bank_diag_3_1.png create mode 100644 resources/g2/track/rmc/gentle_up_to_gentle_up_right_bank_diag_3_2.png create mode 100644 resources/g2/track/rmc/gentle_up_to_gentle_up_right_bank_diag_4.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_1_1.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_1_2.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_1_3.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_1_4.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_2_1.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_2_2.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_2_3.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_2_4.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_3_1.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_3_2.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_3_3.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_3_4.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_4_1.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_4_2.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_4_3.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_4_4.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_1.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_2.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_3.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_4.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_5.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_6.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_7.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_8.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_2_1.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_2_2.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_2_3.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_2_4.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_3_1.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_3_2.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_3_3.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_3_4.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_4_1.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_4_2.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_4_3.png create mode 100644 resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_4_4.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_1_1.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_1_2.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_1_3.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_1_4.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_2_1.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_2_2.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_2_3.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_2_4.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_3_1.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_3_2.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_3_3.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_3_4.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_4_1.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_4_2.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_4_3.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_4_4.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_1_1.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_1_2.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_1_3.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_1_4.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_2_1.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_2_2.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_2_3.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_2_4.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_3_1.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_3_2.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_3_3.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_3_4.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_4_1.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_4_2.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_4_3.png create mode 100644 resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_4_4.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_1_1.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_1_2.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_1_3.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_1_4.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_2_1.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_2_2.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_2_3.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_2_4.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_3_1.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_3_2.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_3_3.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_3_4.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_4_1.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_4_2.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_4_3.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_4_4.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_1_1.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_1_2.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_1_3.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_1_4.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_2_1.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_2_2.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_2_3.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_2_4.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_1.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_2.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_3.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_4.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_5.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_6.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_7.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_8.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_4_1.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_4_2.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_4_3.png create mode 100644 resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_4_4.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_1_1.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_1_2.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_1_3.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_1_4.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_2_1.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_2_2.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_2_3.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_2_4.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_3_1.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_3_2.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_3_3.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_3_4.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_4_1.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_4_2.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_4_3.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_4_4.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_1_1.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_1_2.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_1_3.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_1_4.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_2_1.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_2_2.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_2_3.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_2_4.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_3_1.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_3_2.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_3_3.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_3_4.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_4_1.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_4_2.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_4_3.png create mode 100644 resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_4_4.png create mode 100644 resources/g2/track/rmc/left_bank_to_gentle_up_left_bank_diag_1.png create mode 100644 resources/g2/track/rmc/left_bank_to_gentle_up_left_bank_diag_1_1.png create mode 100644 resources/g2/track/rmc/left_bank_to_gentle_up_left_bank_diag_1_2.png create mode 100644 resources/g2/track/rmc/left_bank_to_gentle_up_left_bank_diag_2.png create mode 100644 resources/g2/track/rmc/left_bank_to_gentle_up_left_bank_diag_3.png create mode 100644 resources/g2/track/rmc/left_bank_to_gentle_up_left_bank_diag_4.png create mode 100644 resources/g2/track/rmc/right_bank_to_gentle_up_right_bank_diag_1.png create mode 100644 resources/g2/track/rmc/right_bank_to_gentle_up_right_bank_diag_2.png create mode 100644 resources/g2/track/rmc/right_bank_to_gentle_up_right_bank_diag_3.png create mode 100644 resources/g2/track/rmc/right_bank_to_gentle_up_right_bank_diag_3_1.png create mode 100644 resources/g2/track/rmc/right_bank_to_gentle_up_right_bank_diag_3_2.png create mode 100644 resources/g2/track/rmc/right_bank_to_gentle_up_right_bank_diag_4.png diff --git a/distribution/changelog.txt b/distribution/changelog.txt index 9eb0c6847d..12db5bb2ca 100644 --- a/distribution/changelog.txt +++ b/distribution/changelog.txt @@ -1,5 +1,6 @@ 0.4.5 (in development) ------------------------------------------------------------------------ +- Feature: [#19547] Add large sloped turns to hybrid coaster and single rail coaster. - Improved: [#18490] Reduce guests walking through trains on level crossing next to station. - Improved: [#19764] Miscellaneous scenery tab now grouped next to the all-scenery tab. - Fix: [#18895] Responding mechanic blocked at level crossing. diff --git a/resources/g2/sprites.json b/resources/g2/sprites.json index cf6c84183d..97a6ac4e5c 100644 --- a/resources/g2/sprites.json +++ b/resources/g2/sprites.json @@ -9939,6 +9939,1242 @@ "y_offset": -44, "palette": "keep" }, + { + "path": "track/rmc/large_turn_left_to_diag_gentle_up_1_1.png", + "x_offset": -34, + "y_offset": -40, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_diag_gentle_up_1_2.png", + "x_offset": -32, + "y_offset": -24, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_diag_gentle_up_1_3.png", + "x_offset": -3, + "y_offset": 8, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_diag_gentle_up_1_4.png", + "x_offset": -28, + "y_offset": -14, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_diag_gentle_up_2_1.png", + "x_offset": -34, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_diag_gentle_up_2_2.png", + "x_offset": -32, + "y_offset": -17, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_diag_gentle_up_2_3.png", + "x_offset": -24, + "y_offset": 8, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_diag_gentle_up_2_4.png", + "x_offset": -32, + "y_offset": -23, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_diag_gentle_up_3_1.png", + "x_offset": -8, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_diag_gentle_up_3_2.png", + "x_offset": 0, + "y_offset": -10, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_diag_gentle_up_3_3.png", + "x_offset": -32, + "y_offset": -4, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_diag_gentle_up_3_4.png", + "x_offset": -24, + "y_offset": -23, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_diag_gentle_up_4_1.png", + "x_offset": -32, + "y_offset": -21, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_diag_gentle_up_4_2.png", + "x_offset": -31, + "y_offset": -14, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_diag_gentle_up_4_3.png", + "x_offset": 0, + "y_offset": -25, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_diag_gentle_up_4_4.png", + "x_offset": 0, + "y_offset": -23, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_diag_gentle_up_1_1.png", + "x_offset": -34, + "y_offset": -21, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_diag_gentle_up_1_2.png", + "x_offset": -21, + "y_offset": -14, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_diag_gentle_up_1_3.png", + "x_offset": -15, + "y_offset": -25, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_diag_gentle_up_1_4.png", + "x_offset": -32, + "y_offset": -23, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_diag_gentle_up_2_1.png", + "x_offset": -34, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_diag_gentle_up_2_2.png", + "x_offset": -34, + "y_offset": -10, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_diag_gentle_up_2_3.png", + "x_offset": -2, + "y_offset": -4, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_diag_gentle_up_2_4.png", + "x_offset": -11, + "y_offset": -23, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_diag_gentle_up_3_1.png", + "x_offset": -13, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_diag_gentle_up_3_2.png", + "x_offset": -8, + "y_offset": -17, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_diag_gentle_up_3_3.png", + "x_offset": 0, + "y_offset": 8, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_diag_gentle_up_3_4.png", + "x_offset": 0, + "y_offset": -23, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_diag_gentle_up_4_1.png", + "x_offset": -30, + "y_offset": -40, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_diag_gentle_up_4_2.png", + "x_offset": -20, + "y_offset": -24, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_diag_gentle_up_4_3.png", + "x_offset": -32, + "y_offset": 8, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_diag_gentle_up_4_4.png", + "x_offset": -24, + "y_offset": -13, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_orthogonal_gentle_up_1_1.png", + "x_offset": 0, + "y_offset": -18, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_orthogonal_gentle_up_1_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_orthogonal_gentle_up_1_3.png", + "x_offset": -32, + "y_offset": -22, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_orthogonal_gentle_up_1_4.png", + "x_offset": -32, + "y_offset": -28, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_orthogonal_gentle_up_2_1.png", + "x_offset": -24, + "y_offset": -2, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_orthogonal_gentle_up_2_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_orthogonal_gentle_up_2_3.png", + "x_offset": -23, + "y_offset": -18, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_orthogonal_gentle_up_2_4.png", + "x_offset": -27, + "y_offset": -13, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_orthogonal_gentle_up_3_1.png", + "x_offset": -32, + "y_offset": -15, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_orthogonal_gentle_up_3_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_orthogonal_gentle_up_3_3.png", + "x_offset": -23, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_orthogonal_gentle_up_3_4.png", + "x_offset": -34, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_orthogonal_gentle_up_4_1.png", + "x_offset": -26, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_orthogonal_gentle_up_4_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_orthogonal_gentle_up_4_3.png", + "x_offset": -31, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_to_orthogonal_gentle_up_4_4.png", + "x_offset": -34, + "y_offset": -28, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_orthogonal_gentle_up_1_1.png", + "x_offset": 0, + "y_offset": -15, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_orthogonal_gentle_up_1_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_orthogonal_gentle_up_1_3.png", + "x_offset": -32, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_orthogonal_gentle_up_1_4.png", + "x_offset": -32, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_orthogonal_gentle_up_2_1.png", + "x_offset": 0, + "y_offset": -2, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_orthogonal_gentle_up_2_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_orthogonal_gentle_up_2_3.png", + "x_offset": -16, + "y_offset": -18, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_orthogonal_gentle_up_2_4.png", + "x_offset": -34, + "y_offset": -13, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_orthogonal_gentle_up_3_1.png", + "x_offset": -32, + "y_offset": -18, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_orthogonal_gentle_up_3_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_orthogonal_gentle_up_3_3.png", + "x_offset": -16, + "y_offset": -22, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_orthogonal_gentle_up_3_4.png", + "x_offset": -34, + "y_offset": -28, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_orthogonal_gentle_up_4_1.png", + "x_offset": -24, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_orthogonal_gentle_up_4_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_orthogonal_gentle_up_4_3.png", + "x_offset": -22, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_to_orthogonal_gentle_up_4_4.png", + "x_offset": -32, + "y_offset": -28, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_to_gentle_up_left_bank_diag_1_1.png", + "x_offset": -32, + "y_offset": -20, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_to_gentle_up_left_bank_diag_1_2.png", + "x_offset": -32, + "y_offset": -16, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_to_gentle_up_left_bank_diag_2.png", + "x_offset": -26, + "y_offset": -19, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_to_gentle_up_left_bank_diag_3.png", + "x_offset": -32, + "y_offset": -35, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_to_gentle_up_left_bank_diag_4.png", + "x_offset": -24, + "y_offset": -41, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_to_gentle_up_right_bank_diag_1.png", + "x_offset": -32, + "y_offset": -35, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_to_gentle_up_right_bank_diag_2.png", + "x_offset": -24, + "y_offset": -19, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_to_gentle_up_right_bank_diag_3_1.png", + "x_offset": -32, + "y_offset": -20, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_to_gentle_up_right_bank_diag_3_2.png", + "x_offset": -32, + "y_offset": -16, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_to_gentle_up_right_bank_diag_4.png", + "x_offset": -26, + "y_offset": -41, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_left_bank_to_gentle_up_diag_1_1.png", + "x_offset": -32, + "y_offset": -23, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_left_bank_to_gentle_up_diag_1_2.png", + "x_offset": -32, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_left_bank_to_gentle_up_diag_2.png", + "x_offset": -26, + "y_offset": -25, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_left_bank_to_gentle_up_diag_3.png", + "x_offset": -32, + "y_offset": -23, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_left_bank_to_gentle_up_diag_4.png", + "x_offset": -24, + "y_offset": -30, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_right_bank_to_gentle_up_diag_1.png", + "x_offset": -32, + "y_offset": -23, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_right_bank_to_gentle_up_diag_2.png", + "x_offset": -24, + "y_offset": -25, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_right_bank_to_gentle_up_diag_3_1.png", + "x_offset": -32, + "y_offset": -23, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_right_bank_to_gentle_up_diag_3_2.png", + "x_offset": -32, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_right_bank_to_gentle_up_diag_4.png", + "x_offset": -26, + "y_offset": -30, + "palette": "keep" + }, + { + "path": "track/rmc/left_bank_to_gentle_up_left_bank_diag_1_1.png", + "x_offset": -32, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/rmc/left_bank_to_gentle_up_left_bank_diag_1_2.png", + "x_offset": -32, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/rmc/left_bank_to_gentle_up_left_bank_diag_2.png", + "x_offset": -24, + "y_offset": -25, + "palette": "keep" + }, + { + "path": "track/rmc/left_bank_to_gentle_up_left_bank_diag_3.png", + "x_offset": -32, + "y_offset": -27, + "palette": "keep" + }, + { + "path": "track/rmc/left_bank_to_gentle_up_left_bank_diag_4.png", + "x_offset": -24, + "y_offset": -33, + "palette": "keep" + }, + { + "path": "track/rmc/right_bank_to_gentle_up_right_bank_diag_1.png", + "x_offset": -32, + "y_offset": -27, + "palette": "keep" + }, + { + "path": "track/rmc/right_bank_to_gentle_up_right_bank_diag_2.png", + "x_offset": -24, + "y_offset": -25, + "palette": "keep" + }, + { + "path": "track/rmc/right_bank_to_gentle_up_right_bank_diag_3_1.png", + "x_offset": -32, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/rmc/right_bank_to_gentle_up_right_bank_diag_3_2.png", + "x_offset": -32, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/rmc/right_bank_to_gentle_up_right_bank_diag_4.png", + "x_offset": -24, + "y_offset": -33, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_left_bank_to_left_bank_diag_1_1.png", + "x_offset": -32, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_left_bank_to_left_bank_diag_1_2.png", + "x_offset": -32, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_left_bank_to_left_bank_diag_2.png", + "x_offset": -24, + "y_offset": -25, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_left_bank_to_left_bank_diag_3.png", + "x_offset": -32, + "y_offset": -28, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_left_bank_to_left_bank_diag_4.png", + "x_offset": -24, + "y_offset": -33, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_right_bank_to_right_bank_diag_1.png", + "x_offset": -32, + "y_offset": -28, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_right_bank_to_right_bank_diag_2.png", + "x_offset": -24, + "y_offset": -25, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_right_bank_to_right_bank_diag_3_1.png", + "x_offset": -32, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_right_bank_to_right_bank_diag_3_2.png", + "x_offset": -32, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_right_bank_to_right_bank_diag_4.png", + "x_offset": -24, + "y_offset": -33, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_left_bank_diag_1_1.png", + "x_offset": -32, + "y_offset": -20, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_left_bank_diag_1_2.png", + "x_offset": -32, + "y_offset": -16, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_left_bank_diag_2.png", + "x_offset": -24, + "y_offset": -25, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_left_bank_diag_3.png", + "x_offset": -32, + "y_offset": -35, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_left_bank_diag_4.png", + "x_offset": -24, + "y_offset": -41, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_right_bank_diag_1.png", + "x_offset": -32, + "y_offset": -35, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_right_bank_diag_2.png", + "x_offset": -24, + "y_offset": -25, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_right_bank_diag_3_1.png", + "x_offset": -32, + "y_offset": -20, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_right_bank_diag_3_2.png", + "x_offset": -32, + "y_offset": -16, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_right_bank_diag_4.png", + "x_offset": -24, + "y_offset": -41, + "palette": "keep" + }, + { + "path": "track/rmc/flat_to_gentle_up_left_bank_diag_1_1.png", + "x_offset": -32, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/rmc/flat_to_gentle_up_left_bank_diag_1_2.png", + "x_offset": -32, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/rmc/flat_to_gentle_up_left_bank_diag_2.png", + "x_offset": -26, + "y_offset": -14, + "palette": "keep" + }, + { + "path": "track/rmc/flat_to_gentle_up_left_bank_diag_3.png", + "x_offset": -32, + "y_offset": -27, + "palette": "keep" + }, + { + "path": "track/rmc/flat_to_gentle_up_left_bank_diag_4.png", + "x_offset": -24, + "y_offset": -33, + "palette": "keep" + }, + { + "path": "track/rmc/flat_to_gentle_up_right_bank_diag_1.png", + "x_offset": -32, + "y_offset": -27, + "palette": "keep" + }, + { + "path": "track/rmc/flat_to_gentle_up_right_bank_diag_2.png", + "x_offset": -24, + "y_offset": -14, + "palette": "keep" + }, + { + "path": "track/rmc/flat_to_gentle_up_right_bank_diag_3_1.png", + "x_offset": -32, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/rmc/flat_to_gentle_up_right_bank_diag_3_2.png", + "x_offset": -32, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/rmc/flat_to_gentle_up_right_bank_diag_4.png", + "x_offset": -26, + "y_offset": -33, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_left_bank_to_flat_diag_1_1.png", + "x_offset": -32, + "y_offset": -16, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_left_bank_to_flat_diag_1_2.png", + "x_offset": -32, + "y_offset": -3, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_left_bank_to_flat_diag_2.png", + "x_offset": -26, + "y_offset": -25, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_left_bank_to_flat_diag_3.png", + "x_offset": -32, + "y_offset": -21, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_left_bank_to_flat_diag_4.png", + "x_offset": -24, + "y_offset": -21, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_right_bank_to_flat_diag_1.png", + "x_offset": -32, + "y_offset": -21, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_right_bank_to_flat_diag_2.png", + "x_offset": -24, + "y_offset": -25, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_right_bank_to_flat_diag_3_1.png", + "x_offset": -32, + "y_offset": -16, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_right_bank_to_flat_diag_3_2.png", + "x_offset": -32, + "y_offset": -3, + "palette": "keep" + }, + { + "path": "track/rmc/gentle_up_right_bank_to_flat_diag_4.png", + "x_offset": -25, + "y_offset": -21, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_diag_gentle_up_1_1.png", + "x_offset": -34, + "y_offset": -39, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_diag_gentle_up_1_2.png", + "x_offset": -32, + "y_offset": -24, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_diag_gentle_up_1_3.png", + "x_offset": 1, + "y_offset": 8, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_diag_gentle_up_1_4.png", + "x_offset": -28, + "y_offset": -25, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_diag_gentle_up_2_1.png", + "x_offset": -34, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_diag_gentle_up_2_2.png", + "x_offset": -32, + "y_offset": -17, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_diag_gentle_up_2_3.png", + "x_offset": -24, + "y_offset": 9, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_diag_gentle_up_2_4.png", + "x_offset": -32, + "y_offset": -20, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_diag_gentle_up_3_1.png", + "x_offset": -11, + "y_offset": -24, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_diag_gentle_up_3_2.png", + "x_offset": 0, + "y_offset": -22, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_diag_gentle_up_3_3.png", + "x_offset": -31, + "y_offset": -4, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_diag_gentle_up_3_4.png", + "x_offset": -24, + "y_offset": -35, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_diag_gentle_up_4_1.png", + "x_offset": -32, + "y_offset": -31, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_diag_gentle_up_4_2.png", + "x_offset": -31, + "y_offset": -20, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_diag_gentle_up_4_3.png", + "x_offset": 0, + "y_offset": -37, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_diag_gentle_up_4_4.png", + "x_offset": 0, + "y_offset": -35, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_diag_gentle_up_1_1.png", + "x_offset": -34, + "y_offset": -31, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_diag_gentle_up_1_2.png", + "x_offset": -24, + "y_offset": -20, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_diag_gentle_up_1_3.png", + "x_offset": -16, + "y_offset": -37, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_diag_gentle_up_1_4.png", + "x_offset": -32, + "y_offset": -35, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_diag_gentle_up_2_1.png", + "x_offset": -34, + "y_offset": -24, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_diag_gentle_up_2_2.png", + "x_offset": -34, + "y_offset": -22, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_diag_gentle_up_2_3.png", + "x_offset": -2, + "y_offset": -4, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_diag_gentle_up_2_4.png", + "x_offset": -15, + "y_offset": -35, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_diag_gentle_up_3_1.png", + "x_offset": -13, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_diag_gentle_up_3_2.png", + "x_offset": -8, + "y_offset": -17, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_diag_gentle_up_3_3.png", + "x_offset": 0, + "y_offset": 9, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_diag_gentle_up_3_4.png", + "x_offset": 0, + "y_offset": -20, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_diag_gentle_up_4_1.png", + "x_offset": -30, + "y_offset": -39, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_diag_gentle_up_4_2.png", + "x_offset": -20, + "y_offset": -24, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_diag_gentle_up_4_3.png", + "x_offset": -32, + "y_offset": 8, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_diag_gentle_up_4_4.png", + "x_offset": -24, + "y_offset": -25, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_1.png", + "x_offset": 0, + "y_offset": -14, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_2.png", + "x_offset": 0, + "y_offset": -14, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_3.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_4.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_5.png", + "x_offset": -20, + "y_offset": -19, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_6.png", + "x_offset": -32, + "y_offset": -16, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_7.png", + "x_offset": -32, + "y_offset": -24, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_8.png", + "x_offset": -32, + "y_offset": -25, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_2_1.png", + "x_offset": -24, + "y_offset": -9, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_2_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_2_3.png", + "x_offset": -23, + "y_offset": -14, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_2_4.png", + "x_offset": -27, + "y_offset": -11, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_3_1.png", + "x_offset": -32, + "y_offset": -27, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_3_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_3_3.png", + "x_offset": -32, + "y_offset": -23, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_3_4.png", + "x_offset": -34, + "y_offset": -24, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_4_1.png", + "x_offset": -27, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_4_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_4_3.png", + "x_offset": -31, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_4_4.png", + "x_offset": -34, + "y_offset": -40, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_1_1.png", + "x_offset": 0, + "y_offset": -27, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_1_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_1_3.png", + "x_offset": -32, + "y_offset": -23, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_1_4.png", + "x_offset": -32, + "y_offset": -24, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_2_1.png", + "x_offset": 0, + "y_offset": -9, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_2_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_2_3.png", + "x_offset": -16, + "y_offset": -14, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_2_4.png", + "x_offset": -34, + "y_offset": -11, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_1.png", + "x_offset": -24, + "y_offset": -14, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_2.png", + "x_offset": -32, + "y_offset": -14, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_3.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_4.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_5.png", + "x_offset": 0, + "y_offset": -19, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_6.png", + "x_offset": -16, + "y_offset": -16, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_7.png", + "x_offset": -9, + "y_offset": -24, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_8.png", + "x_offset": -34, + "y_offset": -25, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_4_1.png", + "x_offset": -24, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_4_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_4_3.png", + "x_offset": -22, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_4_4.png", + "x_offset": -32, + "y_offset": -40, + "palette": "keep" + }, { "path": "track/rmc/flat_lift_1.png", "x_offset": -34, @@ -13829,6 +15065,246 @@ "x_offset": -20, "y_offset": -21 }, + { + "path": "track/raptor/large_corkscrew_left_1_1.png", + "x_offset": -18, + "y_offset": -6, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_left_1_2.png", + "x_offset": -18, + "y_offset": -52, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_left_1_3.png", + "x_offset": -26, + "y_offset": -33, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_left_1_4.png", + "x_offset": -20, + "y_offset": -45, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_left_1_5.png", + "x_offset": -18, + "y_offset": -29, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_left_2_1.png", + "x_offset": -18, + "y_offset": 2, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_left_2_2.png", + "x_offset": -32, + "y_offset": -9, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_left_2_3.png", + "x_offset": -20, + "y_offset": -43, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_left_2_4.png", + "x_offset": -15, + "y_offset": -50, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_left_2_5.png", + "x_offset": -12, + "y_offset": -29, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_left_3_1.png", + "x_offset": -16, + "y_offset": 2, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_left_3_2.png", + "x_offset": -13, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_left_3_3.png", + "x_offset": 17, + "y_offset": -21, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_left_3_4.png", + "x_offset": -8, + "y_offset": -30, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_left_3_5.png", + "x_offset": -16, + "y_offset": -22, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_left_4_1.png", + "x_offset": -20, + "y_offset": -5, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_left_4_2.png", + "x_offset": -19, + "y_offset": -20, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_left_4_3.png", + "x_offset": -10, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_left_4_4.png", + "x_offset": -16, + "y_offset": -27, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_left_4_5.png", + "x_offset": -18, + "y_offset": -21, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_right_1_1.png", + "x_offset": -18, + "y_offset": -5, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_right_1_2.png", + "x_offset": -18, + "y_offset": -20, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_right_1_3.png", + "x_offset": -16, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_right_1_4.png", + "x_offset": -27, + "y_offset": -27, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_right_1_5.png", + "x_offset": -32, + "y_offset": -21, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_right_2_1.png", + "x_offset": -18, + "y_offset": 2, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_right_2_2.png", + "x_offset": -16, + "y_offset": -18, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_right_2_3.png", + "x_offset": -24, + "y_offset": -21, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_right_2_4.png", + "x_offset": -16, + "y_offset": -30, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_right_2_5.png", + "x_offset": -18, + "y_offset": -22, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_right_3_1.png", + "x_offset": -40, + "y_offset": 1, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_right_3_2.png", + "x_offset": -16, + "y_offset": -9, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_right_3_3.png", + "x_offset": -21, + "y_offset": -43, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_right_3_4.png", + "x_offset": -25, + "y_offset": -50, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_right_3_5.png", + "x_offset": -18, + "y_offset": -29, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_right_4_1.png", + "x_offset": -20, + "y_offset": -6, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_right_4_2.png", + "x_offset": -11, + "y_offset": -52, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_right_4_3.png", + "x_offset": 17, + "y_offset": -33, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_right_4_4.png", + "x_offset": -11, + "y_offset": -45, + "palette": "keep" + }, + { + "path": "track/raptor/large_corkscrew_right_4_5.png", + "x_offset": -18, + "y_offset": -29, + "palette": "keep" + }, { "path": "track/raptor/small_turn_left_bank_to_gentle_up_1_1.png", "x_offset": -23, @@ -13919,6 +15395,246 @@ "x_offset": -14, "y_offset": -9 }, + { + "path": "track/raptor/medium_half_loop_left_1_1.png", + "x_offset": -18, + "y_offset": -28, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_left_1_2.png", + "x_offset": -18, + "y_offset": -45, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_left_1_3.png", + "x_offset": -26, + "y_offset": -70, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_left_1_4.png", + "x_offset": -1, + "y_offset": -115, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_left_1_5.png", + "x_offset": -18, + "y_offset": -26, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_left_2_1.png", + "x_offset": -18, + "y_offset": -9, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_left_2_2.png", + "x_offset": -32, + "y_offset": -28, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_left_2_3.png", + "x_offset": 0, + "y_offset": -83, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_left_2_4.png", + "x_offset": -27, + "y_offset": -142, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_left_2_5.png", + "x_offset": -18, + "y_offset": -37, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_left_3_1.png", + "x_offset": -20, + "y_offset": -2, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_left_3_2.png", + "x_offset": 0, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_left_3_3.png", + "x_offset": 1, + "y_offset": -52, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_left_3_4.png", + "x_offset": -30, + "y_offset": -147, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_left_3_5.png", + "x_offset": -15, + "y_offset": -37, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_left_4_1.png", + "x_offset": -20, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_left_4_2.png", + "x_offset": -22, + "y_offset": -19, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_left_4_3.png", + "x_offset": -28, + "y_offset": -25, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_left_4_4.png", + "x_offset": -6, + "y_offset": -119, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_left_4_5.png", + "x_offset": -23, + "y_offset": -29, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_right_1_1.png", + "x_offset": -18, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_right_1_2.png", + "x_offset": -17, + "y_offset": -19, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_right_1_3.png", + "x_offset": -15, + "y_offset": -25, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_right_1_4.png", + "x_offset": -13, + "y_offset": -119, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_right_1_5.png", + "x_offset": -18, + "y_offset": -29, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_right_2_1.png", + "x_offset": -18, + "y_offset": -2, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_right_2_2.png", + "x_offset": -32, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_right_2_3.png", + "x_offset": -32, + "y_offset": -52, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_right_2_4.png", + "x_offset": -22, + "y_offset": -147, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_right_2_5.png", + "x_offset": -18, + "y_offset": -37, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_right_3_1.png", + "x_offset": -34, + "y_offset": -9, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_right_3_2.png", + "x_offset": -32, + "y_offset": -28, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_right_3_3.png", + "x_offset": -32, + "y_offset": -83, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_right_3_4.png", + "x_offset": -6, + "y_offset": -142, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_right_3_5.png", + "x_offset": -10, + "y_offset": -37, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_right_4_1.png", + "x_offset": -20, + "y_offset": -28, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_right_4_2.png", + "x_offset": -13, + "y_offset": -45, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_right_4_3.png", + "x_offset": 1, + "y_offset": -70, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_right_4_4.png", + "x_offset": -31, + "y_offset": -115, + "palette": "keep" + }, + { + "path": "track/raptor/medium_half_loop_right_4_5.png", + "x_offset": -32, + "y_offset": -26, + "palette": "keep" + }, { "path": "track/raptor/large_half_loop_left_1_1.png", "x_offset": -18, @@ -14199,586 +15915,6 @@ "x_offset": -27, "y_offset": -9 }, - { - "path": "track/raptor/small_flat_to_steep_up_1.png", - "x_offset": -18, - "y_offset": -22 - }, - { - "path": "track/raptor/small_flat_to_steep_up_2_1.png", - "x_offset": -18, - "y_offset": 2 - }, - { - "path": "track/raptor/small_flat_to_steep_up_2_2.png", - "x_offset": -13, - "y_offset": -6 - }, - { - "path": "track/raptor/small_flat_to_steep_up_3_1.png", - "x_offset": -3, - "y_offset": 2 - }, - { - "path": "track/raptor/small_flat_to_steep_up_3_2.png", - "x_offset": -21, - "y_offset": -6 - }, - { - "path": "track/raptor/small_flat_to_steep_up_4.png", - "x_offset": -21, - "y_offset": -22 - }, - { - "path": "track/raptor/small_steep_to_flat_up_1.png", - "x_offset": -18, - "y_offset": -22 - }, - { - "path": "track/raptor/small_steep_to_flat_up_2_1.png", - "x_offset": -10, - "y_offset": -10 - }, - { - "path": "track/raptor/small_steep_to_flat_up_2_2.png", - "x_offset": -18, - "y_offset": -5 - }, - { - "path": "track/raptor/small_steep_to_flat_up_3_1.png", - "x_offset": -18, - "y_offset": -10 - }, - { - "path": "track/raptor/small_steep_to_flat_up_3_2.png", - "x_offset": -4, - "y_offset": -5 - }, - { - "path": "track/raptor/small_steep_to_flat_up_4.png", - "x_offset": -18, - "y_offset": -22 - }, - { - "path": "track/raptor/small_flat_to_steep_up_diag_1.png", - "x_offset": -32, - "y_offset": -15 - }, - { - "path": "track/raptor/small_flat_to_steep_up_diag_2.png", - "x_offset": -3, - "y_offset": -6 - }, - { - "path": "track/raptor/small_flat_to_steep_up_diag_3.png", - "x_offset": -32, - "y_offset": -15 - }, - { - "path": "track/raptor/small_flat_to_steep_up_diag_4.png", - "x_offset": -3, - "y_offset": -30 - }, - { - "path": "track/raptor/small_steep_to_flat_up_diag_1.png", - "x_offset": -32, - "y_offset": -15 - }, - { - "path": "track/raptor/small_steep_to_flat_up_diag_2.png", - "x_offset": -3, - "y_offset": -10 - }, - { - "path": "track/raptor/small_steep_to_flat_up_diag_3.png", - "x_offset": -32, - "y_offset": -15 - }, - { - "path": "track/raptor/small_steep_to_flat_up_diag_4.png", - "x_offset": -3, - "y_offset": -30 - }, - { - "path": "track/raptor/large_corkscrew_left_1_1.png", - "x_offset": -18, - "y_offset": -6, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_left_1_2.png", - "x_offset": -18, - "y_offset": -52, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_left_1_3.png", - "x_offset": -26, - "y_offset": -33, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_left_1_4.png", - "x_offset": -20, - "y_offset": -45, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_left_1_5.png", - "x_offset": -18, - "y_offset": -29, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_left_2_1.png", - "x_offset": -18, - "y_offset": 2, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_left_2_2.png", - "x_offset": -32, - "y_offset": -9, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_left_2_3.png", - "x_offset": -20, - "y_offset": -43, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_left_2_4.png", - "x_offset": -15, - "y_offset": -50, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_left_2_5.png", - "x_offset": -12, - "y_offset": -29, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_left_3_1.png", - "x_offset": -16, - "y_offset": 2, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_left_3_2.png", - "x_offset": -13, - "y_offset": -12, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_left_3_3.png", - "x_offset": 17, - "y_offset": -21, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_left_3_4.png", - "x_offset": -8, - "y_offset": -30, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_left_3_5.png", - "x_offset": -16, - "y_offset": -22, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_left_4_1.png", - "x_offset": -20, - "y_offset": -5, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_left_4_2.png", - "x_offset": -19, - "y_offset": -20, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_left_4_3.png", - "x_offset": -10, - "y_offset": -7, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_left_4_4.png", - "x_offset": -16, - "y_offset": -27, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_left_4_5.png", - "x_offset": -18, - "y_offset": -21, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_right_1_1.png", - "x_offset": -18, - "y_offset": -5, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_right_1_2.png", - "x_offset": -18, - "y_offset": -20, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_right_1_3.png", - "x_offset": -16, - "y_offset": -7, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_right_1_4.png", - "x_offset": -27, - "y_offset": -27, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_right_1_5.png", - "x_offset": -32, - "y_offset": -21, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_right_2_1.png", - "x_offset": -18, - "y_offset": 2, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_right_2_2.png", - "x_offset": -16, - "y_offset": -18, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_right_2_3.png", - "x_offset": -24, - "y_offset": -21, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_right_2_4.png", - "x_offset": -16, - "y_offset": -30, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_right_2_5.png", - "x_offset": -18, - "y_offset": -22, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_right_3_1.png", - "x_offset": -40, - "y_offset": 1, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_right_3_2.png", - "x_offset": -16, - "y_offset": -9, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_right_3_3.png", - "x_offset": -21, - "y_offset": -43, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_right_3_4.png", - "x_offset": -25, - "y_offset": -50, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_right_3_5.png", - "x_offset": -18, - "y_offset": -29, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_right_4_1.png", - "x_offset": -20, - "y_offset": -6, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_right_4_2.png", - "x_offset": -11, - "y_offset": -52, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_right_4_3.png", - "x_offset": 17, - "y_offset": -33, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_right_4_4.png", - "x_offset": -11, - "y_offset": -45, - "palette": "keep" - }, - { - "path": "track/raptor/large_corkscrew_right_4_5.png", - "x_offset": -18, - "y_offset": -29, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_left_1_1.png", - "x_offset": -18, - "y_offset": -28, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_left_1_2.png", - "x_offset": -18, - "y_offset": -45, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_left_1_3.png", - "x_offset": -26, - "y_offset": -70, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_left_1_4.png", - "x_offset": -1, - "y_offset": -115, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_left_1_5.png", - "x_offset": -18, - "y_offset": -26, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_left_2_1.png", - "x_offset": -18, - "y_offset": -9, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_left_2_2.png", - "x_offset": -32, - "y_offset": -28, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_left_2_3.png", - "x_offset": 0, - "y_offset": -83, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_left_2_4.png", - "x_offset": -27, - "y_offset": -142, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_left_2_5.png", - "x_offset": -18, - "y_offset": -37, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_left_3_1.png", - "x_offset": -20, - "y_offset": -2, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_left_3_2.png", - "x_offset": 0, - "y_offset": -8, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_left_3_3.png", - "x_offset": 1, - "y_offset": -52, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_left_3_4.png", - "x_offset": -30, - "y_offset": -147, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_left_3_5.png", - "x_offset": -15, - "y_offset": -37, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_left_4_1.png", - "x_offset": -20, - "y_offset": -12, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_left_4_2.png", - "x_offset": -22, - "y_offset": -19, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_left_4_3.png", - "x_offset": -28, - "y_offset": -25, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_left_4_4.png", - "x_offset": -6, - "y_offset": -119, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_left_4_5.png", - "x_offset": -23, - "y_offset": -29, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_right_1_1.png", - "x_offset": -18, - "y_offset": -12, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_right_1_2.png", - "x_offset": -17, - "y_offset": -19, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_right_1_3.png", - "x_offset": -15, - "y_offset": -25, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_right_1_4.png", - "x_offset": -13, - "y_offset": -119, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_right_1_5.png", - "x_offset": -18, - "y_offset": -29, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_right_2_1.png", - "x_offset": -18, - "y_offset": -2, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_right_2_2.png", - "x_offset": -32, - "y_offset": -8, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_right_2_3.png", - "x_offset": -32, - "y_offset": -52, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_right_2_4.png", - "x_offset": -22, - "y_offset": -147, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_right_2_5.png", - "x_offset": -18, - "y_offset": -37, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_right_3_1.png", - "x_offset": -34, - "y_offset": -9, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_right_3_2.png", - "x_offset": -32, - "y_offset": -28, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_right_3_3.png", - "x_offset": -32, - "y_offset": -83, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_right_3_4.png", - "x_offset": -6, - "y_offset": -142, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_right_3_5.png", - "x_offset": -10, - "y_offset": -37, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_right_4_1.png", - "x_offset": -20, - "y_offset": -28, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_right_4_2.png", - "x_offset": -13, - "y_offset": -45, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_right_4_3.png", - "x_offset": 1, - "y_offset": -70, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_right_4_4.png", - "x_offset": -31, - "y_offset": -115, - "palette": "keep" - }, - { - "path": "track/raptor/medium_half_loop_right_4_5.png", - "x_offset": -32, - "y_offset": -26, - "palette": "keep" - }, { "path": "track/raptor/zero_g_roll_left_1_1.png", "x_offset": -18, @@ -15211,6 +16347,1258 @@ "y_offset": -21, "palette": "keep" }, + { + "path": "track/raptor/small_flat_to_steep_up_1.png", + "x_offset": -18, + "y_offset": -22 + }, + { + "path": "track/raptor/small_flat_to_steep_up_2_1.png", + "x_offset": -18, + "y_offset": 2 + }, + { + "path": "track/raptor/small_flat_to_steep_up_2_2.png", + "x_offset": -13, + "y_offset": -6 + }, + { + "path": "track/raptor/small_flat_to_steep_up_3_1.png", + "x_offset": -3, + "y_offset": 2 + }, + { + "path": "track/raptor/small_flat_to_steep_up_3_2.png", + "x_offset": -21, + "y_offset": -6 + }, + { + "path": "track/raptor/small_flat_to_steep_up_4.png", + "x_offset": -21, + "y_offset": -22 + }, + { + "path": "track/raptor/small_steep_to_flat_up_1.png", + "x_offset": -18, + "y_offset": -22 + }, + { + "path": "track/raptor/small_steep_to_flat_up_2_1.png", + "x_offset": -10, + "y_offset": -10 + }, + { + "path": "track/raptor/small_steep_to_flat_up_2_2.png", + "x_offset": -18, + "y_offset": -5 + }, + { + "path": "track/raptor/small_steep_to_flat_up_3_1.png", + "x_offset": -18, + "y_offset": -10 + }, + { + "path": "track/raptor/small_steep_to_flat_up_3_2.png", + "x_offset": -4, + "y_offset": -5 + }, + { + "path": "track/raptor/small_steep_to_flat_up_4.png", + "x_offset": -18, + "y_offset": -22 + }, + { + "path": "track/raptor/small_flat_to_steep_up_diag_1.png", + "x_offset": -32, + "y_offset": -15 + }, + { + "path": "track/raptor/small_flat_to_steep_up_diag_2.png", + "x_offset": -3, + "y_offset": -6 + }, + { + "path": "track/raptor/small_flat_to_steep_up_diag_3.png", + "x_offset": -32, + "y_offset": -15 + }, + { + "path": "track/raptor/small_flat_to_steep_up_diag_4.png", + "x_offset": -3, + "y_offset": -30 + }, + { + "path": "track/raptor/small_steep_to_flat_up_diag_1.png", + "x_offset": -32, + "y_offset": -15 + }, + { + "path": "track/raptor/small_steep_to_flat_up_diag_2.png", + "x_offset": -3, + "y_offset": -10 + }, + { + "path": "track/raptor/small_steep_to_flat_up_diag_3.png", + "x_offset": -32, + "y_offset": -15 + }, + { + "path": "track/raptor/small_steep_to_flat_up_diag_4.png", + "x_offset": -3, + "y_offset": -30 + }, + { + "path": "track/raptor/large_turn_left_to_diag_gentle_up_1_1.png", + "x_offset": -18, + "y_offset": -13, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_diag_gentle_up_1_2.png", + "x_offset": -26, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_diag_gentle_up_1_3.png", + "x_offset": 19, + "y_offset": 8, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_diag_gentle_up_1_4.png", + "x_offset": -7, + "y_offset": -6, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_diag_gentle_up_2_1.png", + "x_offset": -18, + "y_offset": -2, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_diag_gentle_up_2_2.png", + "x_offset": -16, + "y_offset": -6, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_diag_gentle_up_2_3.png", + "x_offset": -24, + "y_offset": 19, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_diag_gentle_up_2_4.png", + "x_offset": -32, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_diag_gentle_up_3_1.png", + "x_offset": -6, + "y_offset": 1, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_diag_gentle_up_3_2.png", + "x_offset": 10, + "y_offset": 2, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_diag_gentle_up_3_3.png", + "x_offset": -27, + "y_offset": 4, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_diag_gentle_up_3_4.png", + "x_offset": -3, + "y_offset": -11, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_diag_gentle_up_4_1.png", + "x_offset": -23, + "y_offset": -13, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_diag_gentle_up_4_2.png", + "x_offset": -25, + "y_offset": -4, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_diag_gentle_up_4_3.png", + "x_offset": 0, + "y_offset": -9, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_diag_gentle_up_4_4.png", + "x_offset": 0, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_diag_gentle_up_1_1.png", + "x_offset": -18, + "y_offset": -13, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_diag_gentle_up_1_2.png", + "x_offset": -13, + "y_offset": -4, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_diag_gentle_up_1_3.png", + "x_offset": -10, + "y_offset": -9, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_diag_gentle_up_1_4.png", + "x_offset": -32, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_diag_gentle_up_2_1.png", + "x_offset": -18, + "y_offset": 1, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_diag_gentle_up_2_2.png", + "x_offset": -29, + "y_offset": 2, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_diag_gentle_up_2_3.png", + "x_offset": 19, + "y_offset": 4, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_diag_gentle_up_2_4.png", + "x_offset": -10, + "y_offset": -11, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_diag_gentle_up_3_1.png", + "x_offset": -16, + "y_offset": -2, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_diag_gentle_up_3_2.png", + "x_offset": -8, + "y_offset": -6, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_diag_gentle_up_3_3.png", + "x_offset": 0, + "y_offset": 19, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_diag_gentle_up_3_4.png", + "x_offset": 0, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_diag_gentle_up_4_1.png", + "x_offset": -12, + "y_offset": -13, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_diag_gentle_up_4_2.png", + "x_offset": 5, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_diag_gentle_up_4_3.png", + "x_offset": -32, + "y_offset": 8, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_diag_gentle_up_4_4.png", + "x_offset": -3, + "y_offset": -6, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_orthogonal_gentle_up_1_1.png", + "x_offset": 0, + "y_offset": -5, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_orthogonal_gentle_up_1_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_orthogonal_gentle_up_1_3.png", + "x_offset": -32, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_orthogonal_gentle_up_1_4.png", + "x_offset": -27, + "y_offset": -14, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_orthogonal_gentle_up_2_1.png", + "x_offset": -3, + "y_offset": 10, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_orthogonal_gentle_up_2_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_orthogonal_gentle_up_2_3.png", + "x_offset": 0, + "y_offset": -4, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_orthogonal_gentle_up_2_4.png", + "x_offset": -16, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_orthogonal_gentle_up_3_1.png", + "x_offset": -32, + "y_offset": -1, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_orthogonal_gentle_up_3_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_orthogonal_gentle_up_3_3.png", + "x_offset": -22, + "y_offset": 3, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_orthogonal_gentle_up_3_4.png", + "x_offset": -19, + "y_offset": 1, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_orthogonal_gentle_up_4_1.png", + "x_offset": -6, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_orthogonal_gentle_up_4_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_orthogonal_gentle_up_4_3.png", + "x_offset": -19, + "y_offset": -1, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_to_orthogonal_gentle_up_4_4.png", + "x_offset": -19, + "y_offset": -14, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_orthogonal_gentle_up_1_1.png", + "x_offset": 0, + "y_offset": -1, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_orthogonal_gentle_up_1_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_orthogonal_gentle_up_1_3.png", + "x_offset": -32, + "y_offset": 3, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_orthogonal_gentle_up_1_4.png", + "x_offset": -14, + "y_offset": 1, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_orthogonal_gentle_up_2_1.png", + "x_offset": -3, + "y_offset": 10, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_orthogonal_gentle_up_2_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_orthogonal_gentle_up_2_3.png", + "x_offset": -16, + "y_offset": -4, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_orthogonal_gentle_up_2_4.png", + "x_offset": -19, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_orthogonal_gentle_up_3_1.png", + "x_offset": -32, + "y_offset": -5, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_orthogonal_gentle_up_3_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_orthogonal_gentle_up_3_3.png", + "x_offset": -10, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_orthogonal_gentle_up_3_4.png", + "x_offset": -19, + "y_offset": -14, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_orthogonal_gentle_up_4_1.png", + "x_offset": -3, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_orthogonal_gentle_up_4_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_orthogonal_gentle_up_4_3.png", + "x_offset": -1, + "y_offset": -1, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_to_orthogonal_gentle_up_4_4.png", + "x_offset": -19, + "y_offset": -14, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_to_gentle_up_left_bank_diag_1_1.png", + "x_offset": -32, + "y_offset": 1, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_to_gentle_up_left_bank_diag_1_2.png", + "x_offset": -31, + "y_offset": -6, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_to_gentle_up_left_bank_diag_2.png", + "x_offset": -5, + "y_offset": -6, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_to_gentle_up_left_bank_diag_3.png", + "x_offset": -32, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_to_gentle_up_left_bank_diag_4.png", + "x_offset": -3, + "y_offset": -23, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_to_gentle_up_right_bank_diag_1.png", + "x_offset": -32, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_to_gentle_up_right_bank_diag_2.png", + "x_offset": -3, + "y_offset": -6, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_to_gentle_up_right_bank_diag_3_1.png", + "x_offset": -29, + "y_offset": -6, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_to_gentle_up_right_bank_diag_3_2.png", + "x_offset": -32, + "y_offset": -6, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_to_gentle_up_right_bank_diag_4.png", + "x_offset": -6, + "y_offset": -23, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_left_bank_to_gentle_up_diag_1_1.png", + "x_offset": -14, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_left_bank_to_gentle_up_diag_1_2.png", + "x_offset": -32, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_left_bank_to_gentle_up_diag_2.png", + "x_offset": -5, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_left_bank_to_gentle_up_diag_3.png", + "x_offset": -32, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_left_bank_to_gentle_up_diag_4.png", + "x_offset": -3, + "y_offset": -22, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_right_bank_to_gentle_up_diag_1.png", + "x_offset": -32, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_right_bank_to_gentle_up_diag_2.png", + "x_offset": -3, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_right_bank_to_gentle_up_diag_3_1.png", + "x_offset": -32, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_right_bank_to_gentle_up_diag_3_2.png", + "x_offset": -31, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_right_bank_to_gentle_up_diag_4.png", + "x_offset": -6, + "y_offset": -22, + "palette": "keep" + }, + { + "path": "track/raptor/left_bank_to_gentle_up_left_bank_diag_1.png", + "x_offset": -32, + "y_offset": 2, + "palette": "keep" + }, + { + "path": "track/raptor/left_bank_to_gentle_up_left_bank_diag_2.png", + "x_offset": -6, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/raptor/left_bank_to_gentle_up_left_bank_diag_3.png", + "x_offset": -32, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/left_bank_to_gentle_up_left_bank_diag_4.png", + "x_offset": -2, + "y_offset": -15, + "palette": "keep" + }, + { + "path": "track/raptor/right_bank_to_gentle_up_right_bank_diag_1.png", + "x_offset": -32, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/right_bank_to_gentle_up_right_bank_diag_2.png", + "x_offset": -2, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/raptor/right_bank_to_gentle_up_right_bank_diag_3.png", + "x_offset": -32, + "y_offset": 2, + "palette": "keep" + }, + { + "path": "track/raptor/right_bank_to_gentle_up_right_bank_diag_4.png", + "x_offset": -6, + "y_offset": -15, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_left_bank_to_left_bank_diag_1.png", + "x_offset": -32, + "y_offset": 1, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_left_bank_to_left_bank_diag_2.png", + "x_offset": -6, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_left_bank_to_left_bank_diag_3.png", + "x_offset": -32, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_left_bank_to_left_bank_diag_4.png", + "x_offset": -2, + "y_offset": -15, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_right_bank_to_right_bank_diag_1.png", + "x_offset": -32, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_right_bank_to_right_bank_diag_2.png", + "x_offset": -2, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_right_bank_to_right_bank_diag_3.png", + "x_offset": -32, + "y_offset": 1, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_right_bank_to_right_bank_diag_4.png", + "x_offset": -6, + "y_offset": -15, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_left_bank_diag_1.png", + "x_offset": -32, + "y_offset": -6, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_left_bank_diag_2.png", + "x_offset": -6, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_left_bank_diag_3.png", + "x_offset": -32, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_left_bank_diag_4.png", + "x_offset": -2, + "y_offset": -23, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_right_bank_diag_1.png", + "x_offset": -32, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_right_bank_diag_2.png", + "x_offset": -2, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_right_bank_diag_3.png", + "x_offset": -32, + "y_offset": -6, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_right_bank_diag_4.png", + "x_offset": -6, + "y_offset": -23, + "palette": "keep" + }, + { + "path": "track/raptor/flat_to_gentle_up_left_bank_diag_1_1.png", + "x_offset": -32, + "y_offset": 7, + "palette": "keep" + }, + { + "path": "track/raptor/flat_to_gentle_up_left_bank_diag_1_2.png", + "x_offset": -29, + "y_offset": 2, + "palette": "keep" + }, + { + "path": "track/raptor/flat_to_gentle_up_left_bank_diag_2.png", + "x_offset": -5, + "y_offset": -6, + "palette": "keep" + }, + { + "path": "track/raptor/flat_to_gentle_up_left_bank_diag_3.png", + "x_offset": -32, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/flat_to_gentle_up_left_bank_diag_4.png", + "x_offset": -3, + "y_offset": -15, + "palette": "keep" + }, + { + "path": "track/raptor/flat_to_gentle_up_right_bank_diag_1.png", + "x_offset": -32, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/flat_to_gentle_up_right_bank_diag_2.png", + "x_offset": -3, + "y_offset": -6, + "palette": "keep" + }, + { + "path": "track/raptor/flat_to_gentle_up_right_bank_diag_3_1.png", + "x_offset": -29, + "y_offset": 2, + "palette": "keep" + }, + { + "path": "track/raptor/flat_to_gentle_up_right_bank_diag_3_2.png", + "x_offset": -32, + "y_offset": 2, + "palette": "keep" + }, + { + "path": "track/raptor/flat_to_gentle_up_right_bank_diag_4.png", + "x_offset": -6, + "y_offset": -15, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_left_bank_to_flat_diag_1_1.png", + "x_offset": -9, + "y_offset": 1, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_left_bank_to_flat_diag_1_2.png", + "x_offset": -32, + "y_offset": 6, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_left_bank_to_flat_diag_2.png", + "x_offset": -5, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_left_bank_to_flat_diag_3.png", + "x_offset": -32, + "y_offset": 1, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_left_bank_to_flat_diag_4.png", + "x_offset": -3, + "y_offset": -14, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_right_bank_to_flat_diag_1.png", + "x_offset": -32, + "y_offset": 1, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_right_bank_to_flat_diag_2.png", + "x_offset": -3, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_right_bank_to_flat_diag_3_1.png", + "x_offset": -32, + "y_offset": 1, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_right_bank_to_flat_diag_3_2.png", + "x_offset": -30, + "y_offset": 6, + "palette": "keep" + }, + { + "path": "track/raptor/gentle_up_right_bank_to_flat_diag_4.png", + "x_offset": -6, + "y_offset": -13, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_diag_gentle_up_1_1.png", + "x_offset": -17, + "y_offset": -13, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_diag_gentle_up_1_2.png", + "x_offset": -24, + "y_offset": -24, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_diag_gentle_up_1_3.png", + "x_offset": 21, + "y_offset": 8, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_diag_gentle_up_1_4.png", + "x_offset": -6, + "y_offset": -6, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_diag_gentle_up_2_1.png", + "x_offset": -19, + "y_offset": -2, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_diag_gentle_up_2_2.png", + "x_offset": -16, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_diag_gentle_up_2_3.png", + "x_offset": -24, + "y_offset": 19, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_diag_gentle_up_2_4.png", + "x_offset": -32, + "y_offset": -6, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_diag_gentle_up_3_1.png", + "x_offset": -7, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_diag_gentle_up_3_2.png", + "x_offset": 10, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_diag_gentle_up_3_3.png", + "x_offset": -28, + "y_offset": 2, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_diag_gentle_up_3_4.png", + "x_offset": -5, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_diag_gentle_up_4_1.png", + "x_offset": -22, + "y_offset": -14, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_diag_gentle_up_4_2.png", + "x_offset": -24, + "y_offset": -5, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_diag_gentle_up_4_3.png", + "x_offset": 0, + "y_offset": -11, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_diag_gentle_up_4_4.png", + "x_offset": 0, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_diag_gentle_up_1_1.png", + "x_offset": -19, + "y_offset": -14, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_diag_gentle_up_1_2.png", + "x_offset": -14, + "y_offset": -5, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_diag_gentle_up_1_3.png", + "x_offset": -10, + "y_offset": -11, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_diag_gentle_up_1_4.png", + "x_offset": -32, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_diag_gentle_up_2_1.png", + "x_offset": -17, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_diag_gentle_up_2_2.png", + "x_offset": -28, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_diag_gentle_up_2_3.png", + "x_offset": 19, + "y_offset": 2, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_diag_gentle_up_2_4.png", + "x_offset": -9, + "y_offset": -12, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_diag_gentle_up_3_1.png", + "x_offset": -16, + "y_offset": -2, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_diag_gentle_up_3_2.png", + "x_offset": -8, + "y_offset": -7, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_diag_gentle_up_3_3.png", + "x_offset": 0, + "y_offset": 19, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_diag_gentle_up_3_4.png", + "x_offset": 0, + "y_offset": -6, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_diag_gentle_up_4_1.png", + "x_offset": -13, + "y_offset": -13, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_diag_gentle_up_4_2.png", + "x_offset": -1, + "y_offset": -24, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_diag_gentle_up_4_3.png", + "x_offset": -32, + "y_offset": 8, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_diag_gentle_up_4_4.png", + "x_offset": -6, + "y_offset": -6, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_1_1.png", + "x_offset": 0, + "y_offset": -4, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_1_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_1_3.png", + "x_offset": -32, + "y_offset": -11, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_1_4.png", + "x_offset": -26, + "y_offset": -14, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_2_1.png", + "x_offset": -5, + "y_offset": 9, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_2_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_2_3.png", + "x_offset": 0, + "y_offset": -3, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_2_4.png", + "x_offset": -16, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_3_1.png", + "x_offset": -32, + "y_offset": -2, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_3_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_3_3.png", + "x_offset": -22, + "y_offset": 2, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_3_4.png", + "x_offset": -20, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_4_1.png", + "x_offset": -4, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_4_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_4_3.png", + "x_offset": -18, + "y_offset": -2, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_4_4.png", + "x_offset": -18, + "y_offset": -15, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_1_1.png", + "x_offset": 0, + "y_offset": -2, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_1_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_1_3.png", + "x_offset": -32, + "y_offset": 2, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_1_4.png", + "x_offset": -13, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_2_1.png", + "x_offset": -2, + "y_offset": 9, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_2_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_2_3.png", + "x_offset": -16, + "y_offset": -3, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_2_4.png", + "x_offset": -18, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_3_1.png", + "x_offset": -32, + "y_offset": -4, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_3_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_3_3.png", + "x_offset": -9, + "y_offset": -11, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_3_4.png", + "x_offset": -20, + "y_offset": -14, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_4_1.png", + "x_offset": -6, + "y_offset": -8, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_4_2.png", + "x_offset": 0, + "y_offset": 0, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_4_3.png", + "x_offset": -3, + "y_offset": -2, + "palette": "keep" + }, + { + "path": "track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_4_4.png", + "x_offset": -20, + "y_offset": -15, + "palette": "keep" + }, { "path": "track/raptor/flat_lift_1.png", "x_offset": -18, diff --git a/resources/g2/track/raptor/flat_to_gentle_up_left_bank_diag_1_1.png b/resources/g2/track/raptor/flat_to_gentle_up_left_bank_diag_1_1.png new file mode 100644 index 0000000000000000000000000000000000000000..8c4bdd6b5fdc70ec9fe46d83800d5e2c66e07df6 GIT binary patch literal 932 zcmX9-L5SmI82x5CGwDoOd#DiEAQ3AB43a~TAQ9u589PIy8JmS3B4jbJMS2L5g&wjH zv1pL46iL@r(=@u>uICNM<1mirX_{>|ECT`$vQ$#lO1n*VEXL{a z-asCWwMk^olHPLVi!|2cONNBoP14n=p~+r!#mH;U#zs1I)~UbE;u--O4IKeo1sfSy z)GIGWmCcMmYX)sJbmbxxR{>-I4a1Cb*(L~=qI{mekmYHswXp3c!y$?yf~`~qoRLXh zqiP1-v{~Kd&4Jhrr2a(lXIhxHNRD7?RbHVbol_0baAaqw4MQVL>^SWw>(O!>l?A9M zfVY6OfO0Wzh}XuH8VN?y>@7_{b7OQN(-oZ~IyJi2}a`|HSYDNqj4H1o23Angqcd&)=0Na4=f>Yl*ynq z4eUiUSTEwu<_Qu2ngAw%3lIQI0ah5G9I}Wk69qm>7cvC~3w;5?8l*BH1(1QG9*cY# zg>5u*Q0l{r;5m>)Xv$by$L$W?cWWbGpG>+*60Fw=%DspduvSTMaoH!ekTO!<&D3Di znQXn;Rk%cpjH&=fVl}3$3S?Vht(N54ZNG0%f_@SQ>oi82B_~NJ1e5|oc@|D?_Yy?c z8mv~_z4m!Es5^z_9K z+-cMm`0(+g+c{~R9pAY5+Wqg7Pha`%jbh{p$Gj>vszEd(LOS Tp5FgBSBJBc`tie$Zhie6XbO$+ literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/flat_to_gentle_up_left_bank_diag_1_2.png b/resources/g2/track/raptor/flat_to_gentle_up_left_bank_diag_1_2.png new file mode 100644 index 0000000000000000000000000000000000000000..388d7d2217560d56d07a5d177efec90609986b6e GIT binary patch literal 975 zcmX9-afsV=6n=N@UD}l`xPk$LMyMDuXpksjM2(so-7V+kyi5xgi4d_$!6+FNDUxZC zDg~ny>>pJkM(7`5D|&wfEt0tiMJmKmq?3R}I;?nq6e(KdWIraxX0YCxJFwDSlizIEDb_L-;QHGVu#Ig<@2L%DioNfzdS88~2d!V`_&5tV-PqM{=pfa+~mkr5iDosaoe8Z2dFm6Zl-gFhCqbj+F8SOlF_ZOs)KH2 z=vkAXJD-Hh9SX*>_I1SJKl>V#Ee+IF$$>VrWeioE$eLWvex0j{1CZ9;J=&8Ll6uoq=- zSsSc6qa%NcCJQ&bKXee~&1U#?xgJG1f3KibpcPW!zVzEA7)S@h`Jf1JPc z`QLlLKJVTBiG1Nr_2UP>{_b(|hkJkiLcJ}!{j7Yye#Sld3R!*qp5IQMy6FBFUQIvu z;n~`WtKA<@^@(>MLVvEVe8Ybh9j<>%+}OGD!G(VxzIdm8op{9Af60IKuFGHjl6_<6 S#%swTuzh-W>(Wy%zVkl@)1n~& literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/flat_to_gentle_up_left_bank_diag_2.png b/resources/g2/track/raptor/flat_to_gentle_up_left_bank_diag_2.png new file mode 100644 index 0000000000000000000000000000000000000000..efcf6e75d49430a84e0ee2c55a49357759750607 GIT binary patch literal 947 zcmXAoL5SmY6vp4QGn3AiHAumTVaQ?+IRpt3F-nlkZf402(aE|Q4A?`I!1hojLWCZA zh-;CeJwz!|mI@s*0C~9n`q9~5)u?)d zZMB7NPaO=6QD{%%_I%+<45kZ3OCcPca!tB#b0J1mQ$g$JOf0aUS*iC=5xiR2B(V zr38bPEk<`Z(-rKV)by3kNb@E}kW?w2WaYA;F^b7oEXiuAt-jF@tRQxxq!Xuu`8vc! zC}}`cfocHlVtk*Fhjb+rtypi*ZExvD=tN~oCQsI7rmYJDQySS?+%#uhd*L^iVRs$- zXc6Hho@R88uZmJ#)7qxltJjC^cG&O7K`@_Am&+vr(gM1RaRXc$k=lf*&ZX9(;-&S` z(w(k`>G^DpiVTkP1R+ypjbTkeuobmsWXl@Ec4s^oCQ-bai(n|2t>KPAxizNO5dD@m z>Q%?SGYfm^ELyD|ArU|aumM~EA7BiyzyM`ZCDgEy@1bO-(qM7W5h0KvQ2}XyECRJT z9l}Yt7GAQKGsK=o|M6r?`KmS7U z&&NOT;f+HL_WrnkGc)fV>|Z{5_RII<%TL|CRM_165B+fOx7pDi{>!&-y!Rk~JGzp4 z`WxZ37v1~M{B(Tw=kr@H{k;3?@$TKTTOXXht$g+H>o?tK o=gwRC++I@p=r8x+*O#s5Kl}dd-_rJ-3>T+}wYZ-*2G9GxJYU}D zf#-eKmllHiV6z|_KP^UJ}U3+m`tDCk==>jXdumR?^u7to=hq2b}-P$(1*het+6 zMn^|63>zC88y_FX6!$Wjj;`OW)ljoZ z(9t-DC&U;llS!3I>9k_7T9q$YLfMhbwrqQu7(*nIaaN)Pg-NTtS`>>lxn`@jtGB$e z+pl*Inh_4765tt#<$*LXriLdQWV*?zZmQJPOy6js9g&JE43SGxr4(CNct?}mg3_sI zJ*(h1D+jKHdaX#5A*mG2WH>%2NhL+8=5mcvsadPJw%y&|_kAA$p#oXK=z4^A2&qkF zx_q&hHv2ipH}(gO{$b|;O;V8vgX76qT%r;R%W8sHl!ImYMyb44Z+Iy2hhU+1rT|Z*N|l*uOpJ6(op8W zPJ$-_k^reVD$&Rkk)1{DBJxal7(4?44=EALD!87b%0{woDvncdU8~=BQJ_U+fX+{H z1}>U0*(OzwHT<+S$T6T^~;NScdfB|4uG3_WX>b;l~ZEvxUf(4fl* z0-hcQ5mzNhMnET_`cLQ>LVg8ksGaH}(bn&sZr;mh}eEsFmemnox zzdJXletG8Pz0>Ot?w>xAKDBLMIevS1`RrO2wErG_ai@QK^`DEgzlY{u{Ne50>F1db zQqNx7-nu!oll$iU?vLNSv9^8e!in8u?`^hkt-XJC!I|FNxG~+@T>8Y=x;FOn6I$}} zYB8L>`tg~UPCRulbTs?iJI6P^_1?UMD_4_W&z7-?8#DNyRP@ssXKvQ@Z=L$+(wC24 b3I7d$ef9kcezJBaa1IOS7U!?Oy87Y&lCQKS literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/flat_to_gentle_up_left_bank_diag_4.png b/resources/g2/track/raptor/flat_to_gentle_up_left_bank_diag_4.png new file mode 100644 index 0000000000000000000000000000000000000000..1a58db301aa5ffd8472fb78947b9931c6203f9e1 GIT binary patch literal 983 zcmX9-Pl()f6n^_R`-km-BaCf?R0a$*)EuJZkV4vK%eX`~-AyrI4pF0>!xRIiI!F!? z2Rq6fA|1-8a~LGTpeYWz*gylu5@c`($;uu^2{^()r&=M%*zRFrf2I_^_a5KneII=9 zeSC4Vw6=0$1pwAIUR>YK=5kigEzM>9m%GtTfH}DM(xnR-otc@Lot>SVo134XUszaJ zTwKI3Y-wp}d3m`|EEXAt76e|FMO{}-)2P*ItyZVk^P^}#Nz&<*p@HW>5?56^1gR$J=!v>-GGabq-g1qxHRRYNS;3gPHv$7FVDLfBFUJtOJYCy9HIMkO3H3aUIf zGS)S)u#p>f^V0#2CN!FA=+HqZDgsCV8ipCUoQ>lSNxB@jBT4;od1%}BI~^2;IFm2( z1zI9FjVu|IVl%qKnQfuwiOoQE2b!Oh2^ObIMNXzfomCCNs7v*Z*6|HLwxgsOPr9Rn zFvmk)hC&$#3rGiJJB3n@R72i~mBz?)Qzt?@5|!6kyjr3f3fI+zz?9>fK5Us|ua<_b zgV;mkD3@nRN@3VCFH~i@q3i8xwby8bolflgqy7CfO%dP*kS&bq=7a#32UK|^)W@nj zsRpUDKkZEphX-ht%H`NXp+ppAiq<*K6s5YBEwg%!X207@qIf#uK@%}k&ei=$TE@VqGTwMU@*|+!7o7~0g?e3 z1=L`WDW47IT40A9LR8_82bjvary2jEip78`G6zP45nkYr25y&P{n?XL0Vlg{@ z_Vnt%kAC3l_NEMH@BVfGt^{-#}@yw|&I`0+3pT4@Xc>MYHKerwn+u}Yty43&tyNAm&Z#{E# ztNv&3*Y&@zU)z28%)OI8Tk@y7@`KBF{(JkK_V4FExqa;PyL)Qo+Y=8z6KBD8XZ*b% cj+EWCaB%9*(|_FF$_&BAh0XPE&cFJ>|46{8h5!Hn literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/flat_to_gentle_up_right_bank_diag_1.png b/resources/g2/track/raptor/flat_to_gentle_up_right_bank_diag_1.png new file mode 100644 index 0000000000000000000000000000000000000000..28a9611c1c6ccec6d8b16743e614af525a7f3741 GIT binary patch literal 996 zcmX9-VTjvw6o0qgU3%-b4vPd07@>oF2-0a7af>X|+|eDGm+i6{wI4DGtc)sAGO4U! z#4^iKj-W*gRu?6nMWXA?`w+EaCP5A<800=w2vVeC!5wtc4@J)LH)HU7@A3Qcen0rV zw{~_Ve{lc9`vKtK^6ACZc%F*ua5541caN_T00}sI=KNAjXJ%&h?c0|~BxYx4=jP_- z=jSmDOD2;G3k!HQn`M}sAn>v*YFfcC^lG)*Y}%cU7X&*|G@eYD9Pk`SVyaNcluBf| zlB?CZW=m>!)UI#z!unw72sEZ}DP6=(g|sxvHkhrd;5U_CM~}8^qsW<#gFFE$4P_oI z8Efm9Ur+bjnMsd8qa2#3XwO0@$O1?JDu(Ilv`G*aML8U|B}v=GV&61x+cxrjg2`lg zJSUNyO67H0F&WL`jFwP!#YR_lda4%{NtVdvvz$ze8e7l>y(ZOc)%J8RG=r!Sj@pB% zpXMPW16~BO0+fZZHlFWL1)tYLr9Lp6u@#^#iOy&&QO?tKg==d<*O0@i)^8d^w>tKl z)6hl3Ae~_;T4C5CFO+4uu4%1uxl^zEwjFxjU}tAM9wQ)hpqd!dP77T^?$O18P#YGU zQMo&|b|#(CUVn;GbUMxAc%ID4bWYJPMf_wZ-Dw^Dg!Ku<#Xu*PnKk+QWPz-S(#lq^z7WKyWbAdg3( z7#~0TSn8j9KX7GrMTS#<{dOrP?=3Greg4VyjbG0_5ImY(Iyd!?{q+0dQT5u9CtlpV zw0oC-idp!>I`r9h>nZJWMtPS}U%2_-?jxS&FK_N1`PcqLUwQn8D_^Chi?`<1H?E$J-NEwG%HoY@F24OgqED+k literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/flat_to_gentle_up_right_bank_diag_2.png b/resources/g2/track/raptor/flat_to_gentle_up_right_bank_diag_2.png new file mode 100644 index 0000000000000000000000000000000000000000..7f1bcacc17d0c0aaa23bd8effa50140beb0df828 GIT binary patch literal 950 zcmXAoL5SmY6vkhtGn3Agp02EJ3moAxPA?W|qznnXH?Uf;mKqvjr<;A+kLL z%(^{P=^;p2iu6#~94Z91=o|uD*bD|4u!p$zP$4V@iUGF!WqfRFn3?kp3Pp3(eARr8&dKfz_iDN>U(Dk|4Ua0P} zIZm8uI$EC3R;WmqN*sYWs*f?naFcdJd-IfSm+AiS0R=GDS!+d zby(!e$Zw!Y8^ta>4W0u@gqn;sblh&zU8g#9_3^kBMc#55p^Qb;fwhW)gUc?d`IHg! zPNI5gbG+(J&iy%>B~%$W600&LRUjJ*Yt<#kZn#~0>~*8iTgD+u=bR)VA5aVkWm&W{ z+%pj^tG`%q{oXT~lZmLRN~57$mccSDj_C=kC$fRWOl5jmt00X;Hih~u@&y!0+3|C) z75{nq17BP{RN&pe|G1W!PY?Dk9ldb-_TN?-oDf?)_rF r5$_yd*t+-8t^3|z7w*X7_VwJW=})JR9zB0QGb=<@i>U0d6H!7HOqj&gCdtSt=w#qtv1tj z`2Ii{jrB=r&0=S{@pN-9A+D#L0lSL8%It?uWTooIc zSm@x3QF%QhP|BdSj?P?!qAGv_pktVc<2FIK6y@>!siI69jfHJL7!FYw5^T9DR2YTi zbxJbny3HCcZwj!h81Z{X`x`ob!TaLnH!-~g)SQ$(UNGV&W{XnVySV*SoE!x-^s%MCic-P z!pj^**IBM1h%Hrh3}eu0jU6W(4&xwL&gWT{As|ek`WQRH#R;L#=*Cj)t~4)gO)_`B z9;auE4Jy$%&Q&TBSygGq;CV|{x_W-BJ$8E2(Kw0X^-=&`#w-=Lb<%CpgSOyz)ybeS z_3cGCNEgw1{QwC7bpQ*%&6@x)1z2H#awsBdTgdlNvQQ{6S?CE6NRTLiR6u40IV|!N z6g1JSixLkW16(mz*r408j!53p z?ZIlr4f>B^&1Ryesm-R*ZksIA;h4U_`XU?3%v_<@(lo`~2rc);;?3 zsi&ELcMdT322;5G3G@7OzrTO?R`cOIP({_smNw}GRp$F=X?c=yx)0Z;jiHUIzs literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/flat_to_gentle_up_right_bank_diag_3_2.png b/resources/g2/track/raptor/flat_to_gentle_up_right_bank_diag_3_2.png new file mode 100644 index 0000000000000000000000000000000000000000..74aedb57119d7de9b0ae894c1ba8490994556757 GIT binary patch literal 980 zcmX9-L5SmI6n-dTnQNogys8NGvW-?n;d}4#UEcTL z``$;4_EbMG22o=)b_5D5a?84uH;aU=ksX6Mu!Nvh9Q5?KUr%D^XcCGzs1#Ir zuobMUV?iT3?B=Ee93?cGs_588C@cWT04j#**{q4;y*P}fBOX)_t>Xj{IGsH^T^`d+JES&*Y7glfBX5PyH~&3 zJNf(1Z#}qr@M5y=-}p;eKmVoh%`al_-K8^+|M)8T>xS&V_SsLPYpa*&@3v0OKD=Rl zePiXqb5C5l_RQ?rPyRf;_i^r(i(AU**(?8^+P}Q^PyPMdAHEGATyL)a_QnIb-79y` e9@w4pFI*lBufKQm$*0q6V0&w4^XkUM{r>^>9inRh literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/flat_to_gentle_up_right_bank_diag_4.png b/resources/g2/track/raptor/flat_to_gentle_up_right_bank_diag_4.png new file mode 100644 index 0000000000000000000000000000000000000000..cd92af0f6aac841e4c93c073aa18c5767e57629e GIT binary patch literal 970 zcmX9-L5SmI6n>pfC!H-z!GdwkAxK?wh`UiDL3^kgBtpds z0i(pFhloWAQ=zZ{%MjfjhB1dOM2s+pvV>(0U5MC2W$U_V(SSwg@SA1fd++gG-uJ=x z-i^K8%K39op96sNJKLMr(z%}2<$N~nckYMZ0%T$DmHn-hW-^(Tm6dEZySloX%jMSA z)-Vjq=kx39>v*|bW?4oQ1x1lGt!5ayWm(;Be>n8R@HCDWNy0K9@E}WtTCLP*kj)lj zxA|^Q9t_n{V2q>obmodQR^ zpkqP1I2n|ZF@fd`N>p^_AQYAXWB?Vz^kUH@2#2CvoJ?n!_7C(ek9uNO8xiAJ<8aU@B!^p(Ty0>7s7Sc3HD;c*2)fJ2 zL$k10;wZYxa&9CRR9CP0q_7$0A?7V6taj~2J&1KPh<*o7CHj>6^La(3LqUv zZ5FvQ@*8Muqu7NY^yFgX2b26Bd-&M-aHObGUX%*`G8_TD9yr7 zvbQ)7>~tTO=&c=R!e6Yi(|S1>xpb2F{d&;ua=QYB9lTr7Wo2-r1bc? zONGB4{lEv;b``jC|K8gv`EX}*WB;kIKD)c|g!Mu`xA&)cod4~ugDbDUl-YX!>wkv7 ze0)9k!?s=ij=#|0o}B!8aJ;;i-1_74%Qtr4jP|vItzeUT@XYO>p8I$3_cyQIVN@;4Y&M(SZhtroqG*~V>1xF?An>5b#cH)&uaga% zX|?%oPZ}r#tnT%V@#9OD4M1W31LjYIB z1|}A^OS3_FH6hTFK`R}dx(G!T00ltDFtb#02*RZ(kLQmSWn8Px9OtCpM`1{?<%)na z3d!q~WYU_$8ZK}3#HKHIMyfZ_gQP}s1S3^=m6i>zYKmq{Y4!DfU|v4fI0BGd_8n~SYQ)mt`3 zsXJW_m#4EeD$=DAhvO1iQEA5Dc}rGWdbZ3Swmaj&Fp1*TTmW6hEVbn5q+6$Zw&1ta zQLi@komtph&Z5=o1PK5dfCbTLV?LbM}RgPZIcy9NH=by^Il{(*j@!Kme|9bh>PhTCf#Si|C zufLeTra4c4JiPhMr!U-n=I)hCC+`UNPlKb|Z{NB9$4B3%f4_G9ce8f&%dh{tef8F# jpWJv*c=+v&2k+&2v-j`)^Wo*Ai~{@T5BBc7esuGHHj|Zp literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_left_bank_diag_2.png b/resources/g2/track/raptor/gentle_up_left_bank_diag_2.png new file mode 100644 index 0000000000000000000000000000000000000000..ec29c1ff96698ef09fcbba0a12c4a3571a9002d1 GIT binary patch literal 919 zcmX9-L5SmI6n-=9OgdABAVmX4j8G(CSh8#m5hFy+4Ba6*SvHG3 z=FUay$A>K z7*CYhTn{5_nG82uPhzmPP&Z}5Zd0y7Pc80pAVuT$a&D#zCriCu9=Ax)8R&`Ns@TlL zq9MMXHHsyPG8Pp&x^@wYn*a)cj$tN_+a&4Iv?mCcin8c**0y~$ouVirxkghYScMXF zx@9tLn=@R&nn(j*9)+s6)PuA`@g&=73MwNTyk<(Kqc~H28kj+1$LT1^W}97vi_lPk z=m6CR+Qs-O(VEj*B$`QkxUsz4jnSpTGz^~XwU}XBm>E)NsmZ`tkFBjg$fNNt@zFNM z8$8XlIld!GJyjhV#-!Jq4~NlongqdSwaW7x0cip~#<&?Sg`~Pges01JRE2B?H0p}vKD52b5`29tx42tf-{1&|8JB+!sUo`Qld zS~@88;Cb*o$P%;_tZNW3M>}P3=iVZKzC;*fKLS+_CY4-x;pg-Ae z`N{YNtmRVDG_~6``hAmQ2Ru6#IbY%;nO!MN)@~x5LN<*i9128~$mQ|#H|qaC|AEi% zUa0WiUw?dBlC$&E_wUud|MoZe7~ZH=pFBjrzxD5}FRH}-GlqEd-Qwog@Z{y*qrVp) z|Mc{S*Wdo~_S5j)Ki|Cn_@iH|H(&a!@!BubhyVQy|6Doy7Z2X~u@r>!vy0OQAAIuF EGh1JTWdHyG literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_left_bank_diag_3.png b/resources/g2/track/raptor/gentle_up_left_bank_diag_3.png new file mode 100644 index 0000000000000000000000000000000000000000..286cb8e58bf94ccceb564255bcd1fa20f1525871 GIT binary patch literal 931 zcmX9-L5SmI82x5CGnsB3a_Avoz${Z|a|n`^h!L`oYG$b=I@#SU^pHbF0`|~DgeXM{ zMvYLGs&OdNL%|9`dI;FVfMJXfHHRLmUu#x$*!CaPOUmcXPV4v$MOqTPPIv_V)Jo_YV#Z zFbq39JS-NAM5R*UI98HGRh11xvnPt#47aV&@eC~`^D%B>dF?y%jS zFc>Q1i5^DQEa@#*p2T1cp=8R0-Jo299$DO_BSnM8Y+|O3Xil8#G!E2^uc9rf(9|dNR*m2rV*5ln zKs15s0PSM@h^S3yEfUS7(OX*H#*NXX!jui3Y}c4xLl_%UXsL-~EC$xfcQ(;roA_uI z<7J*^8XVsgrM9Z}3}e`CPkOy*G)jVCIiGJf8w8{Y^Z?_=xD=A=jA<^V?n?94?QrAH zv&s5;u|*{Y$9aONQ5BV84MDJErK{&+ok_1h9Z%9Y$(ADMGG?i`ty6A`8Foa!tA@ko z)VCMWaJ`7L>r>3BMhA+@z?7F4P6GF!fGt8iBwDFI!)QNTVCG|{eBYr>oi8$l9y!^07?O&Jd18__Z+0t z8Ln3RaPS<~Y$j=%+G-h{j>)kO&kjV+m$*n~=L)lKRFF;~n?^$p1tLo1y!`wtrT?D& zz=sdcRH**_`2C#Rub;m8@Qttj{Ua>G%@_8o+tHuNYsVjd`_1vq`?u@wt&Tn@et&WN z>u&K2?zi7Bs;}NU{rUFE4?n&1?o;KHr+2Q7zJ7G__|{+5lkd*!zkK%c#i#wE^3l~f U{?F^zxj5ACo}K>q*7@iE1O9c0egFUf literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_left_bank_diag_4.png b/resources/g2/track/raptor/gentle_up_left_bank_diag_4.png new file mode 100644 index 0000000000000000000000000000000000000000..d54a58e7838fc0a5a13e9e7c22fd416b3f2e62d4 GIT binary patch literal 913 zcmX9-L5SmI82vh(nRK=;MS6%B*a$sD2xAU$%^`=VnK2GoChKIOV8Mt1>uwJLBlOTi zz#M|~5VS}RS?nROMFJKXF^3#-2vXRB5qhYYLxqAx7YUL>4|Dj(yHTaQou@v#aVhs=3>!S6jaO;ZuM*+`sqWyrQ*Q?cm^`Uaub>9v&SX9UmWK z7}jVsPEJnnPN&1Nj3^4KD(iaBG!5IfJ#RXnM`^ms^P((S1_T}yx!LQr2Lp0AVw^GW z`O0jr#fiDh#+z**(pZ;o8ZvHmNmr+)CVOp*iPv4ujeOzk@?c-25&;?wLjhbBn;BR# zZmnnSa!H^agGvqExCo^k00lt9Fr(G72*RbPfak9jWzp}iE$i8Iijst2+Z_RC6q45{ z$)LLytGm4Ei*_haVl`N5QQjvxf{{ABO3OOeGepBtoT)aAj3~3xe3I>En|;y}psfPl z2XX|Ii*Zw2np3?*FtYA=V+MtrqHBe2>l`tZ=y8{y>0)fEnXRuqa~s-4;_b5#ZPQkp zqv$Tn^#yULs$*UEhr{`JoJ^-#6m3?kq9_m$22dWx&RSwjs7t!P5uI%>*bU>tU6u3Q z&3ccTbgRYTxI}hTn$daQlody-#76V+WHFoPX;y9o&}7V1Tb4$;1KJ-6p`*rre-T>i z#NVycvV4XFfG&Uu-~xmI3xF*KsDdJ*k%__pPh4ph=y7akS-9I}sPZEEz>b=Niz@-CMU;{AZqWYk$^I}DnEDH{O|b>d~tQD z!rOoS{%J*oi?eqgyz=e8U;p?ryw<2+qetI8ee)ZhIQi$Lx1Rhd{8WQaoX7sJ51+j8 v_vsz!v35uPt$6*HtM|+gzW?L&ykEPw|Lp4Lk3PpMDY!VlJp19@kH7pMmCAs2 literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_left_bank_to_flat_diag_1_1.png b/resources/g2/track/raptor/gentle_up_left_bank_to_flat_diag_1_1.png new file mode 100644 index 0000000000000000000000000000000000000000..981c94f5e374b29e8960506976619f27092a505d GIT binary patch literal 921 zcmX9-L5SmI82x5CGwEzugZ7Zch!J`S8Z|$mwQB!-Ef!&ttg@^qOO6Fm099$|db8J~`U7@2 z5++l1zA&QLUZ$hX)|VKpBQz|9a5|J{(leVoccpmJSuU*XVwh+Cu1I7O3DOrU{57CP{xtwFO4wkQas7ZEkR=xlh-ZD8mhyYF$=9Qb&_nH=JU-i#zkmq zKy-l`0PSJ?jF1TBA_G^hRkVl;|pvos7ht5s1H2uKU)3C7KFDI&Ec)7?nJt?uXjsPIzIHi!4dYjR=N<*&6N`l-FaX12GtC(X@LJ zIO}+tuamNTibQ}8fDPaQ1OOKRTMSSIRYC(B1wP8wDh(C~V-Z3bG8K>p$Rf~)L%xc_ z9$F4j=EJk#c~B(is94V=oIW%5T2CWOa2|R_#EUt@GPvZt%#dCW8*olI1ngn^4pmM`23JL*bfKZjiu(Ep&(j82< zTYfru4tu$jbY1K9%)!9oSeIufA{R(ptgtJU$vZ7%P{^UtltZD2Ql%`RL=1 zep8IaU(CbTp4{pE^xikgXY)t+yRT4}(jVX5DYduT{Qd0VW&Zg4S1U<4xqaIH_0}g3 F{s)N4hHC%- literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_left_bank_to_flat_diag_1_2.png b/resources/g2/track/raptor/gentle_up_left_bank_to_flat_diag_1_2.png new file mode 100644 index 0000000000000000000000000000000000000000..ae52f9e92e4e064c7197ebc1c66f7106c4801304 GIT binary patch literal 972 zcmX9-Pl()f6n^_R`^PqiISe#N)H$RQBtnEBfo5yA#%*L%n$?2rhY<$Np_Ddlw42u&}VWxVW^mw7k5$va+(e zx{6`g+S=Os`g*xisjw^~ih`=jx?VF)qt$A4yZs;tMn2g#Fj62hN_onVOA$Of{`k`O3OM|Geo1UwEJ2=G{V%5vrd{1CdUyj zKuLvi9Y_l(7vuV6DWGbRV5C)NVtO+-Mu!Sr(mA3j(N2{g=;F{+)0RH&np3|ui@L|D zkEStR;wZYxa&?=S^8@YsE4va5|$wkj3eIB7i1iri$Ad={D$|CHQT1 z*sG6xdmQ!haXg>jM*=_|en}SlOBjep! z&7U`i$KB*4oS^ZHDgj4g5`)(SvZ1n8U3Tq;*Rh9wCyo6)i_v_-$ubH7Wq?qTMZ1uD z45DTArclG<3@{Sf<4>U4ivQHj;#`P>)5SfKs_Qe(t%= ze;)n72bXtM*!ugAcM5WCXZ!r#*)P9MvyFqNo;bKNLBIX_;N5#4jZc5~)!B#C+Rp}? ze|_uvXBVH{zW%ZEy4CQ1c)pi>y7lijchBwI#1HN)48*HCzpvkZ;lbV;SIE=)%U?Ww z`_13qzCqso@W=nQyc>(pB!8mU0{;8=q%+3*{fjq+Yui^(Ui@qSC+*((U|$&*E@0=v L?)I&h-umQ!ms6u- literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_left_bank_to_flat_diag_2.png b/resources/g2/track/raptor/gentle_up_left_bank_to_flat_diag_2.png new file mode 100644 index 0000000000000000000000000000000000000000..4024a8753e320882e6ac515b201112127b73ff4f GIT binary patch literal 953 zcmXAoL5SmY6vkht(@AIRSezaz1~x*$Alco35u)S}H67{@naoaBgBCVI(8^ZHAz}{& zvzkL$ddQ(l4?PqKQZQf-bI2h`z=$Ijjci%E60t0Wjj)Fz5eqxu-z*Ei_a5KneTVP8 zTgOL@y$jD=0D!&2*Xt+QEM|4Fn9uri*QY!{9**C*c96+jF1NL{mCxt5x3>$0!p_bP zhGE5Gad&sOTC3F|2Xl+Y+u(YcLKSObs%R1DM0WfRA3l5{xkRFckGt%Yem7>`j9;7p~)S80jh zRI;H{ipgj;XN&~P6$ifT%v3LK5iCwOYMe}o8r#$by(jg?>e$o0$PD8_luVYJpv*%> zhH49lE|50Hj;oC+*$j9+Qu<57S=%8xm8gow;++Q7SGb8L_=X%=+G1#|Tx%T+H<620 zVY$MRl)|trUg*ejU(-gN&a~eT#^cEImh<^~y+(lRKn^ixQWkt%o>8r(&|5W~q~ovc zc{)wb7aLTf%4N1%Z4fn?qBV{)M5(7{%evG4;A}FD!zf+ypo*9wmra$h+tjGbyFJ+- zwa#2~5sZ>Wn5GX<7QF&s0N4O7z!|^_1C${NsB0kCLGeN&L1$pVgV%sq0we>{tEkT) zM?zj3&3Y(y;8E}_hyo}Q*4CJ=InLT zO*{T(I6L>2Xt5?Mz!F%4E;o6iEi>JgXq#y( q4wp_o`SZ^H@vVDbf0Mhh{}%SwL*M-3#X>!^gu{cQ`nRvW`}zN~0g^ue literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_left_bank_to_flat_diag_3.png b/resources/g2/track/raptor/gentle_up_left_bank_to_flat_diag_3.png new file mode 100644 index 0000000000000000000000000000000000000000..b85caf6026a4929e419c37dcd2795ebd2db8d309 GIT binary patch literal 1017 zcmX9-Z;0D;7=G`rcey{itD{Kd@}Z0}vJpoonP!p?IhQ-?nRz)b2mMeXj(`EHM2%98 zGNVQ;5+TeYRf<-OM}^=j+#qrlBCG7!3TESu)iaKMC|kjSRf-(rke?ZY=Y3zEFYoif z^S&Riu4HDX=cfT+cKP|mwP-FxH8(jH_3!Tf`8U8Ate#(Ais;D5$mrAGf`W~EYVG`v=8Hw*{EA)N+}1yPvEkYZ->+Qhm_8gwVvh0i|;6^rSD`ZWlw@luzWZMlb+$r@#=U~vv5Fk@f z;J}u!x`z2yyi-pM+XU*T(NIQ*HbSiwfCwOCm==#41Ywh;!?IhVxTC5a!?<6oA>SwH zM2f@HVv?1~j7DV*TCrKZ%A2lGZc0vD_Chtu5a~>cl_)`BavHCd#8OSJd72j(t*{*Q z>)iuC&Ot%~T!my2NE>5nc&0(-d`=6pR#$fhb_;EZR6=2hLWZ)kY+d1-x)hj7r=s^< zbKqAF0vGjK@dQIsS(;Hfz931KqEriohGqG+THtxz-QB@pfPm0|tYCCK&Nm6EO{rbJ z)XO>jLUUm64jcW$&H@05+ETMk-oKWw34mk|Wy z0SW=3D2q}g_XvbptoC|LwekphyUpivQa-N~iyECanRJDtU7q%Z^sY$tvneDekwKy= zjXVwoLUjDhshNKs{=nO7D-tZ+`|Xv8)Rz~ZTR(AW^Oi7Yo<0&={mXdz$g?k+z1Lo~ zhwrbi#!??%y(;!jAKyQ|@%e`J<~IJI{OxV(=TAqzJWG7DxqqYft9pI@=)I#~Z>rz_ zzVP5o?5DZcZ#;SFh19h--rAU#9>;Ef_1HOfaO~{Gz4+aaO4b*rp3sA(|6cm!%{}q=zD-{AOAB-g|tP_kHla z_vMYF@`at}cL3nR;kEtabY|0fX*-kl+gIN10c7CD^_vGNU0YjQUtiB;G8-Eko12?k zTU!{0ZEtU9v)N*)RALxf5O`S@HBB*1qtR%z+ueTOkD_ssES5`#2A%^+%qdEtS|w_A zx@mLmj@0X`L1>O*dpdIk3afBALo8Yq!qLdC$qX7o*shHFMlx*96L+L)tE;&i#h$&{$EiXj+Hso7P#zTwAKl(gb`Z@LQe zJQQRo>OjL}(yU1&zgPWy-E_JxvHqIc{i^wmI_}i?F?l zJv58*1(u{L46E}(O_ps<>(pv}+YYnBmXobsTGm?`Him2j$5r_Os# zIq2v^&zgjt`6OB{A0r;10$>6-03N^)V1@xoAql8%BF{z1L?Xdppv8kbmGyRkvjYUMr5gc@m-Jlodtf14;m)G>c{` z_Y`=e-kHtVPWvg$(MV7fxmwlgb%UWBEZycAPhdik9!u1`QbH<$EE07X>VK$u@7fvt`6s7Y=bMxD%wKnQ z-}N8vUL4#%x%k=TH^<^zU*G=zy&t~%Kd;<>sQ-R1{7HVF z`gQo}16J6-basN-_FnRw@tgFs_Tm?h)^5G<>fri=f7XYu?0)yl>E4g20XRH3+W+>A HTX+5k0gaqT literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_left_bank_to_gentle_up_diag_1_1.png b/resources/g2/track/raptor/gentle_up_left_bank_to_gentle_up_diag_1_1.png new file mode 100644 index 0000000000000000000000000000000000000000..507fae2dd7d66c30a49679b7bed0dd017cda7c8a GIT binary patch literal 941 zcmXAoL5SmY6vp37XC|F3YgY;e3=*MW#Gny!h?+wjGeaG-OxDRt(XbmaxCN`^5T%D8 z5$jr{utCchp-2xo^boO!!O0!;uz7<|OIP7oJFCb-rXsxLqe5of??zX&L5K%=20fTLhT z1B<%l*|4&j5NOGum4+@HgyJfI44`3{Q7+pA;ZT&v^QW>rZZu}LeLfhVC?eQORlpgU z*d{E$N(Uh(<^5475RD1c@D|y<|C@ucNX6 z6$S7HkQPu5#trb=h*BfLNb23W>19rgPG!2Hb405~ckBF67eiA?+WO2j7k)d7+;!rk zMO?0M6kTVzh9I^SrK{`xR%_JlMuR~T1oP=M%Q6In0hEie!?G9>%7kvr#m++YmaQ;z zrmNBNVzx#lx?JXPyhc_Pn$daQl;n<zd$TE@dp>!rwV6e~=AgDnq15yAPIO?*< zlTpw_lMYHfxD1{HNrbwLHFex>(LJX&^z<-nCyBpYCMahS4PdR3;NY@HY5`@WypyT^ zsuix?$we?nvy7?$M`AUmtO{gPVXcPb*iElzhkh@K{bd@X)tr+g6aY#Ap*)LDj(aSk zZS@xmuJ1mUIhly6sx+IrWf?5f<``FCeUXhMW-8OmdKGCTvMJPOQ6Qj1%8#FWvGmX7 z4}5xjq`>Qc{eCAm>f!$0&F8;8d9e4yug@0u-_Go_d%=@m-%?&UD|xS+yMt?Qz52t; z^2wd=@Ba~AKU0oB(@)5EHXgnE+THBE#@|o<`N3`c-bV)?-~L2?gx`ARxxMr6?tb`R e^S58BpBMhU`05Dmf8pjBI6OGo|M`vgzx*FY5s+m7 literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_left_bank_to_gentle_up_diag_1_2.png b/resources/g2/track/raptor/gentle_up_left_bank_to_gentle_up_diag_1_2.png new file mode 100644 index 0000000000000000000000000000000000000000..9151b84bcd39817d9fb2914d942e1cfb04de7c52 GIT binary patch literal 977 zcmX9-VTjvw6n}TUyWH)zRVdi8Ai))l5YEVgM#vy)Zggklax4b{BSr|Uheh)tLWSru z)(>Sw4M$=9P^D@Zl?CkJb_Oh4;DVk|Az;OxMkrXY!o(u|P~<-R%^3XNd;Gq<--F-p z-PqbJo;q>%1OS}cxU_yboqSr4Eoahx(^5_YWMJ#H?Taa$o12@TpU-463kwU2i;GK3 zOBjYNFE6jGtmF%Y0>jXPz{|3z>#AuQ)oQiTXmvV46!nv2GMzFs@El0us;cJ7Wujuy zHHT|7rFKW_hGs8zh9gg)Fojz+#JsH#u1>a0X0IxQ4W-vHlEd0K@n(~#h=WE!g$Gy0 z+6ERn*+Dxu?cr!lqp60DU4)_nfCQjnn32ueIPQ|9$8md-bXY14Z2Lj0g~AYLas@t5 zO9ZEpMT1goMt3>0DO7#2-j%(c79=Ht#pz;!lPOVWRYNdpQmv)60waj+D5=Ne_HY(v zdC19-F9Bfz>0)dvU+j=-$Q!ZZ3{7w1Mrco>aypAwij<>pZC&V^a$MC14RhpICt+h2 z`)Cwpb1X?I3|r!biYz<2-mFwQjuW<8aS#mq{mEp405^baU`#tJbaA;ym4-rXqKthE}O;md)pjL_wx#o#RYVs%hymtK-xU+npqer$Zhz5i{kitr2dSYFfNs zle^8*p>Geu=6DcIrw>q?0|meYZ~=UPLx2$mD1{^-%S671l7U2m!9bmdpa_WsNCsr& zk;5QQLO~hzYAEsGq46w;0w@wz*7J6Ss=LLur+2&6IQGZm7^PZx2^edYck_}*XaQ*? zoI6qdX{9@B^p1le8cfI>umo15vno%NWyUIru3h%(cGs`Rkv~o%G##>{hyp+fAe4Gh zOXVH`uUgH~h;23=!R++}Rh7$S-LedZuCjE4XMBMPMY=ChW2JyJ0@);LGAQ6tET-XS z*H-_1_yg}<-jv~`KaZ}Y#NJqcdHb2&&-&cyYtNm`Z2e(=bI zSC77G|FYxXdh!qT9{cm#|9$_$je8$$uAMvh%lUNsjne-6yYbWauiyIV?uW;W5MN-= X{Qj%EvT`Op1vV~ju7CZ?Ti5>wBT1$q literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_left_bank_to_gentle_up_diag_2.png b/resources/g2/track/raptor/gentle_up_left_bank_to_gentle_up_diag_2.png new file mode 100644 index 0000000000000000000000000000000000000000..bbb66fc3efacaf248bf23987ee66ab018c27ba3b GIT binary patch literal 946 zcmX9-F^Jn{6n=NUJNeEWhMHEi8Z?-qK?KnXs!|Q=MHk#d*Hap$xWt1FRO)~WYEg*W zYEXy?ruCq~r6zcAgPPh@1ysIp|-7!1vzA_lEZk z-+Mn^J*w>Pyt4xUy9b}_U&}b3)m!;o*8kYOlnrul_3-+YOs=i1t*@`=a=DF-jm^!? zt*tE#!}9t3_VzYjE|*!B5k)~!Bu%RshTdwmdcDDDzo{KC`SBg8>Qxf-RK= zoRLXhr7AjIwOGyOjlS4&rLM0y6V;3BBu6lnGOy5*#?^FDZ_Dk0I`DKavck9|0I!UwS|I3AwKF%I)DF>!OqVo{XjbS>l^<%NZzxeqoAr!^+e(Ap zDss^xES5NmuCiQR5Sxn9(X@WEIqGzR!65Ry`E;75DFQ+Vs)w<|qUaOKgs#uU_M+w_ zO+U4#%TaPMTcHA7EOIzrAP(EtRwzbl()* zw&M5eW7nDm{bUv{moJb2Pz5jmYycNv46wieWspT=8pw4}Jd-KVS?CJjRUnoDDS&hw zby(!c$ZMcU8^sR13Z4T=gsO}+G~8;^UAr=LG~aJUk((qD%Djj=ux3H9aoHhNkJ4k_ zPHXP6>92Z|3vZ5QDOCcF#41d&CXfwslQ=}nIVVZT0~7;7Sr+Zg z?lp*(*6Z@?|$*=e~-?efAI9qo9DTA-#+}1y>qU8gny&n mPrm1ja&D;oK0Y1@1cJff#Kgqp zkWrw5*QkIZYGn7uFumqN-XJjs_rQ^DU*A#N6z}l5`yCJ)K#er*#yjCg(A^~{@ zbOEc&m|Y5Y>ycqQh6YJA6w!f>P%8nz1Be(Vhr?PdrsKFl(>pxBm(6xH?RKq(Y&%9q z5==D7$7vBy$wXQsC7o8PY{BHpO~Gi3mYa=Jv1BSi3j`-o8JU%fe6c3hEZK6jmRoiP z_1?%1GY}CVnuWLuxQ#!(uha274?#=@yn>PSFx!j?Z6e!a zi~Wo-$TvN`Gi(eFx+640gu_%cnu;d`A}P_d!tq7XU#2!n<-K~tZ8^gp10shhLRb^y zdXA{7j9C<#)$E?Bb?xe)+ZqmUBL*N1paAFqCcqv*9|PorXOXHP(?D*Q$3Z5c%z%{w zmj@&OlB1|ZB7;X(4z-KOHQ;XW6mTr0c`PSIwLDSQQ*}dXHVckp4h9bLwPINy)fq;Q z@=aM`7GFJlh#%~7R&VD(Vf!y`b&u~aggVd6P~RI{9}<&3h{G|NuQ9Jnns>`@$t zEI=+G?hm|udR2gh-+z70C)bu2Pn|)wY|BqJy7GZny%Ego}EG%R)nZ?D$rKP3i<>i%? z6%50&+3f1-DqbuWS(Xt+K~W^b&@9WW*XylTr`HRjXqY6k`J81y;6avhnpUV($ZCyg zIDD%ucYAt2v<9&=o_HdSseI0qa9br^gX&o9eq9V(>Y!&PhmC3C9nGQ=0Xhv;0bB*^ znpo)MN8Q4FK%gmu<~lld5sHccGJuX@W?vE97bCzJtQ9*d2M=1r^p znLC{KrpKcrl%w-`4#!JmQK1=w=PgNY=;^Xr&uJcZdr1_}#{%dQW+{1FC*2C&t_gla z>9@;=zC8-t(@`{^-$ep|3Sa@a06xGWzyt%7LKacYLcWKRkxYTfLQ{aC1c?kt0c7IH zVUZ`Jpn?Vslz8wUcn%~HR2i!nxLu{2ZmH`T{eC@;{pmDDsTNTNww4oIT=qykpv;7K zXPQ5+_K#YF<6w+NGpYa_iIteVCXf|{t(7I$u6Rwm?>FPfpC%ESk2y&~0iXmBO0#IB zat}e&YwgK|YquW48Vp2DQz{jsRx??q&M_^4^+h(6n4wHh)gsbKWK*ckqCh~glpa5K zKKJ*7AGo%&rND(he|bA4?{BQXc;)fkFK$bxq9?OU+xP9Sf4Xpg=h1ubX8!yA;Juq` zlUs$N31=>U`1$Kk{JVGWnV&zneD1k_9$Qni?8}ero3}pQ?0tD{_u$p@(#=nZB6K5sjFH|!s;|AtTAI(uVn_l3f_r!Kv7@crgr_UX^QdLy|5-!446kg05aclx#U RtEmgvxVW{x_tKjm{SR$KolO7$ literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_left_bank_to_left_bank_diag_1.png b/resources/g2/track/raptor/gentle_up_left_bank_to_left_bank_diag_1.png new file mode 100644 index 0000000000000000000000000000000000000000..be5e84185c641ae2bba08f3b1921fa09f9939004 GIT binary patch literal 1015 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 literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_left_bank_to_left_bank_diag_4.png b/resources/g2/track/raptor/gentle_up_left_bank_to_left_bank_diag_4.png new file mode 100644 index 0000000000000000000000000000000000000000..9557e14df1d07572b5221ab955bb4baac5b346b9 GIT binary patch literal 911 zcmX9-L5SmI82x5CGwEzydnj1f93u1(Ar4sy7$h!P%?xpfOoq)uz=BZ%+e48YB2xA)tuC8)&B1BZ*K$C;PU3pB_2c8?cBj)}7+Mf`MUiy9YnsMzIP|>fd>$srD$9zpWN6?ykflbq+v@j;fklrT z&YQ@yxfaFdGIcgvU!X9RYZy}7RtZ-przUeX6k<@?T2R=LDcPNPyo*DgXy2S5hUFwAH+Z5($=(&xAD&o;Zb$wNzl zb`J;(NEc(LZE;R^W8O$rXJh(>o1iP1YUwOK5GhCHX1WlWN;=fnp1BQ%MeOa;0Bw_I zizO+QVSBtVP!vbkCxgMZHRAn)$?4AQ3T9fUT zop{e-E|)^LtMvQ2Wf=@TWND9Q0)dGodL>i2+CdtDY!Xcv6!IvQs`9fZjlZA$z^C^v z6uA4xuMaA6=lt}Y`!9d<*Dr6p2(Q*_KmLzC`Rdpvg)l@OetU7UXZ?nhrd1^BXmpa1{> literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_right_bank_diag_1.png b/resources/g2/track/raptor/gentle_up_right_bank_diag_1.png new file mode 100644 index 0000000000000000000000000000000000000000..a3c4e15452bca8da590ba3f9d88772cb6b0276df GIT binary patch literal 943 zcmXAoL5SmY6vp37JCm8IyH$G#7%}b^i4ZhOkPJjN<7SpRL?-KGAwpat1h$7Bf<)+{ zi;?XiEFFo^LzNzS$f1Yec45FMQE~`Up@#@PRLG%+vfIOo(JgF|QU7LH_}+Vbm-jn- z@7=wAT)VLM(jEX@IC}r^B%cR);X8%ApT7Hp2T*|PAKbW>+l`Hl&CSh1p-?Oqx3;#n zx3@72+u7OK-QC5j)hf#}q9`beWEh%dneBGF*BgvRK^#xhG+V7$1_T~tsibL@MuTj& z7^lPc`toq3hmkc&I`f4m(wNGZObNGD(lw}o#h$grsHaXwW;%A3skhGJ8UZ>DO#xg5 z8=6?uDbI$L)r3Gx2CZ~-?jjUd0b~Fj!_0EoCJ2|JJf1(3<#D|}v+YNN0g57mtyBe^ zkx5>sY9_7Ptl{!jUu^qQH&ncd9;9`WBbZv1S7^!LG*dJk*%|1Azzh;QPP@r+IA2F) z0V)dMbs$?nxfnOVYa>dF1T#@PbIZ%z7@f&<#o&l$jqa%Y&=5mQN!rG&XD$487WLMN zj}~#c!cnx!a&SI^FSbl*Y+wE`Tm!mQuEL(rwWFmf$-| z*sqU$dlvPVvv{?7gaiN;zyfdqe1I{)0t1vw7E#MWzK7D8Oo7QlSAd`fsSHQ~Wa6m9 zB2Pv^15F&1dhj%O4kQs&8EY80-K4v2ZRi}lN`i~a9;pYEneuL? z`KxBQ?oG~vIhtiu1vnC`F=b648w%U1ORnAUx_0Pylh|LTFXR;;}QPY%0!)UckmT7ZLPhfqKjU;9&(@V9AbQ0MV>a!>iP$K2W&%IIl z>*)`Cc5uzm;d?jszkKlP+b@3c>T`!5{$aoKbNbd-7nQpQ-G7Y-PcrAy zYxht3mwp#N+B@BU`Rh+#zaQWF_VUN~ZePCr%YNnbP4t5OUwY;5$5)>J{>Sa&KgB!A i=NLRWN?vjP{ORIV6lh-f-8VT1j;8*Ovg!^ASyj#lOJB|fW099!lMyKDW1};1D zg~?Q%FU%x$R=K~~h7yD6LfcjdPp1Nlo;lp*P)aBIYGD`4QCWohDw9bt85oEVXxQAw zQXgN>JG&K$N*3)*bR8g+bpccW6T@sA_ee6J=}-_ZRdw0xtv&C>Y=+X5g6hEVkp^%ZhPc&NurM7onp8 z(F4i_I>7iDAunhn742O2H%?du8M;)Nj>VG$nelaDZb^xwema}walE;@s;UYBX#+jMxH&E*q_$#u8)>vP!g7#Q!PRb2 zUa$A4&EPms5Hi)(7}gR5M^Q&+E#@x#@p8T>vV6A@!Bj9u!#$G<`pnc7qmh3X@sf5UIY#xjiND`r+71qH&%@Ws#xXhF26611bQaI*UTNnEP1S1MELU1U+70)e17)H!`74E|NP}0_@E^{eJPS37H|Fb>g^{_Z=+{$=lyT~{^Q=wul{3S p9H*{^@i0vDSd|yBB9afBNNj{{y8ceMA5N literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_right_bank_diag_3.png b/resources/g2/track/raptor/gentle_up_right_bank_diag_3.png new file mode 100644 index 0000000000000000000000000000000000000000..db041a2725bb8c7a093a3600d1b2af22a676fd78 GIT binary patch literal 965 zcmXAoQHa}g9LImX-d*l?%p5CNHAt96@({Kh1k5ml+?E^hh+M{HGq^tFAYj2hgb|^# zJmjzsodk_gp$~<17@wD7KGq0TifU~>r?Cj@rJFl15ig}j~K3oMT!u5A=T+3~tP*_@8Di({&%gZY( zE32!k7>2E_t*x)Gmn)SD%QB)UsH$ujRm(D)&1R?58w|oYK2Fp5V!<*X@Sw;W)oQ6; zCmS}?a`{eI=@0Z_WQ`MdI`c&u)A$WjE;}0O8C1_=kD6lC(Z&Na9ksI5Kbgl80Xhv0 z0X!A!n^@%HlYVJ2CQ!zpg^o@=gyIT-0-$4KaD3(HOXH)axZ-I6Xd|&*umT6Q~Zx_Hl7YsAIY|6F@A5&$#+3%~;i07d{a3{WmbM7D(jAEgt80+WTd0HFk_0!Rg9 zmXXUMUqN9Vjaw-7;d$^J$RcP8RyWE{gKm3L-#3QCW|9P1mY|$P)PS`&1h1_4q#jac z%6s!_uxJcVI^)xDiY9Za1RRM;3|mcC+ZhJ!Bo4APMvEyY%P0ht0z!Ef ztsM74MAPohW?Z-PLe_XJR;y~gZrHZTGEI)@2y7s-k<1(`bf#61P9ldwT^5A`O62_b zxeFWrJpX}@_V-lSe*Ex*+*rFiS8iPT?1$g3oIBiFEB^c+s(-$$`+xs>>&`cKzAOB6 z)ZY4f|KEF;E7HY_%ZER1K74lfLE%g3udm+v<&~xP-+Oh_eRTDH;qIHaC+BfHDBW&< z@%H)MC$-Z*mCaijzx76Xv;VsG_)t6d*>d_vXEq{0vMT=W7vONU0he2}4Az}^#TQo?KDmhdrn!_H#(nFCs{LQlPz4!Po?|1m# zyLanYyi$3!0svQzZXTW#vs~1*a;fOjwGSQxl;GAow{H}7YinzJd%ILB?dTB_Z!V-lVNB<;1xwO49&94Znrxej;GTgj^}Bbuh$F>JO{E=)wFuMO>}I! z*XM>Kc{0_*$eJbn<;oK%Oy#Pk)NoY7HOR5WoOgw2sLrNldeO^LZR zm{`=WEhhE#3`ZG_);hX$5sI4tGJuX@X07JnxJ!~A$DPaaMXR-NoG0TkiXxn;H~9uF z6P!+pCZ#%z;d0hU==#ziRJ@rUq%DHQX|c&Elw`1)DVROEH`d3286-}e4w7uL+(b1V z>IyVkK-fUK7&~r=Q&Nj~Gg13X%gfyuoy%0+VDXMf^;K?S2%)7UU1Kq{R(>~+hMUAk ztGHHYNlInd7B6%ZrEeIcPG{QhN8@o41k3q6&vOL03FHuCCN&|%l^NAq3cZ!)Wt}j0 z=j&;9x!9m8RjaX$hDbCOiZ(dTlH{IVEVHNm!Np{n#>slggDzo~Qgd{|ZBrwg_j^h> zYF+rwA{u3jc)fmtcmNf^0&oF*fD3>X2B?rMAlpK|hth>ig2}*uhd_i>2BZKo8>r79 zPewr-&3Y*H;92l2NCK!b);1bWhZ?xz#52OMn1zQ&;!y;IXBn* zbtl{mXP3beEpoCBEP;u1P2-8S!q_dzb=uy*3H?D5`&k;J^^%n&6aY#Ap(2Z3fqO2z zYmZhdb~Jo0Yc>-!O=-6c+cp`x%hE%h@dYN5=($W~Y7^-Ma!52{P{5-^DvqDMT7CNL z2To6p6?psKKR+ytc64}f`<44Yef@6bvo~H4Y~=s?@XasZ|K#%H@6)%kovSaucJ}b> zrGM_7CJ!q6+G*v*IJ^JD%zAL}%eVgT8~)SZDj)SWumAkTAAZSu d@94YD_TT#5Z+`r$d01fJ=*IEkqw9A*{~xPMk|O{B literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_right_bank_to_flat_diag_1.png b/resources/g2/track/raptor/gentle_up_right_bank_to_flat_diag_1.png new file mode 100644 index 0000000000000000000000000000000000000000..b7a3c522a318eb4be084a04137973852ab31adf6 GIT binary patch literal 987 zcmX9-Ux?du9RJ?m++CR+c2Y57gbKMMoMlAKLmqOP8}W=>Zp$!Y#3+F)SS4a)6*|nY zLLGewQf43eP%vnR0Xue^feRx-k$b2TT^~A(M}?{ZhjgxB(Gz}V3_joQm(R=h^MTLz zdvRx5IJWZ03IH72dVcdvGB=WXU}-Mtmw)@?4!|7jym3H34KZ?ea37rRy1xZY)YNl8u zO67dD#x|N#yQBGm*$ZpKk;7A%!ln!{Ybk`SlP#0ptMEZX>2-|gpc+Tcbleqi&?qQz zV9QwBz=B$O(9TSHIEwRVqM;)jp>7U90?;tbNT)3vw@K1r**!@*C=>>kb-UF4sJ#X0WkH=#KxB+AXquXiT$K@VX81mJT z>ck~~Z1*Rf_-HUiDJq?2vRQ%1$y8ovSyPm%TC%L%snrkKov0g5h8$=jX3A+xBkUs8 zEOTyE_M3$R*BS)Pc+j0pZX*sr0Wbk<02kl@V1xlmAn~YdBG*CDKqA4Qq0WIPKqLW@ z0U23Tqmd&auZVh86ghA&cm_ls6bUQpS*t|VZK3VxzF!GLH;zM;XyFB*%PG#zN)DlU zq!F?9Sal~Qf7<9Bc|$Z9lNn$LOvtBIjws4>xggqB(WzU$TMxT#9CguT$cQ5H07ZaM zl0`L8zyzAsU+l0zDSED|+oj z+{*ViPr`Ze?zQ!ApE~jCPbY+Ck3Jm-&)nL-zLt8+dFcK4y9@7{pBYd5bNug_kH5M5 i^rc^VFC7x%pR0HFcd!2Z;~R-7*gCbn`PFl;fA~M@E~;_> literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_right_bank_to_flat_diag_2.png b/resources/g2/track/raptor/gentle_up_right_bank_to_flat_diag_2.png new file mode 100644 index 0000000000000000000000000000000000000000..56d09ec88c0714f9696bdb33c5664b5b18869448 GIT binary patch literal 959 zcmXAoL5SmY6vp37r<2aqv4 z9D-A%4n=b)(nAM&h)^N0T^KQF4v~%6Lxn8#&|L%eP%(!&l%+6b8SrnGh2MLR@AAIG z_ukpPgYwSy&20eK+5c$wemZk$-O6Rse*4p*0FZ%ucMtbcxwf{pzP_HxWHvT7vf1qB z<|c+=xm<2*YYQ)xN-WEWqM#^}rd16?Z#J9VZhtuR!f+DDi{+AKK;S`^^3`gwUMCwS z(`xhGo;(<;eqfBF_H6EmG*;pBx`bO5($=WH!Co}Qpj#Oa^?1}uVrR7o%LJ%2Gz72} zY@lO7yD%LTmtz7Y3|gw_+D0fW0muLq$~s-KSk2~*p4fDyj;}al)r)H+M=<3Quh5dlRdrEs$*sQH_jE6^!nhM9gV`!5 z2vAf2uK{TSWn)|)FAu3|Am~x0Ju{qz9ij`FE@~XnDAVlE-0+?ffQe+XC267z~Ph|>p7CHiWWr$@!3LqUv zZ5BB)^6F^ZLa_rcg6BXIp(0~-4YwL}$1V>X&G(y8VTy{v+qx6`! z7gcxJ@K@dOwKqf41yux&#L7&eDv))BHEWV>)t!#zyPYU>lQ=}n87E1|0~7;7X%?;2 z?j=Oi?9Jy~ulo{XJQk}}rC!%eQ)ihb$8-hO71=;yCNiB=N=PMgdi>m5 z`DZVF;EVeQ3cUC4ljBsJ?C-vRc;ow%NP6|romVy<|AL-A?3`zR6rSGM|Kx1@n3b>I zc>A{}zkm1IpKrP+S63MGbM$Vm5&dz7|4sb$`T671^KZUA`t0G(-dFPT*FWC-@c5_f x?SD@HyL(HeqZ{GnP4j_&`1Ndkcia6TLq2-v*P}0~t&7wc_V*5UAAE3h`ae)Um<0d; literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_right_bank_to_flat_diag_3_1.png b/resources/g2/track/raptor/gentle_up_right_bank_to_flat_diag_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..3e8695325f8ab39f23b1864c86453e5d03482c51 GIT binary patch literal 923 zcmX9-L5SmI82x5CGwDoOf)qA`0V5R5YS1V-M93jKn_21*nT(r-h&ej-|87aQwzjsnw=0#(&d$#6?(W{+ z9)@AnYIT2qpJ+519LGwMsH(DQ>b7llyWQc?pG=}8xy-V>C^!~G0Tj8W>-Bb<>Nsq# zFAPV@cw$Urd!F`}t3YBfO{iHi;cAp;(!R}IbftKx%_mki>#eh3lP66Q32XgUyt3q_f=S_{{G=KCm)Nv_@y309#5 zgKk=k=5nSd*dwVM%7dvI%#A2(Q9Q{u8-mKnCa+tP)l+)D;YU`Kx=A)j*W=|T#zm;B zK(v5zfc7xnCz=ylk3}oh`b#^=y#!q-Ox@(kPLt_t!q}9iwwiX$#n4`b-8>#{(h#i@ zyw1~%#_=st>ZoepG)JAzq~DKyKaHa0-Ad5hK4h0H| z+GyTGSpYAB=RuZ0Q?Ry4xE*HTHOGNDop#eST(479dXX*QoSNtnNtWHE zZie&gXo(g%T?d}Rnk=r1R9oeomh8FhVBk)}L7If?EJ4MRmt_5@gpI ztycVK_!9PfF6p}3Zkvu{acq}ohawkBTr9Jf3bWQ4$e@r*qY;N95v6ije*W#+-!FdP z%X_CP+`jtrK}k+dj*spie)mm!bO5hck3Y)YpMT6gzIubcbAJ1)?7y?eUnGyJpIu4s zJ%8)h-~N62j&n%-a_hz_~l`uq?475nSgZa(Nee*XK@qwh;mIJtXz K{N&E3=l=t=B!|}k literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_right_bank_to_flat_diag_3_2.png b/resources/g2/track/raptor/gentle_up_right_bank_to_flat_diag_3_2.png new file mode 100644 index 0000000000000000000000000000000000000000..464dcede98f6316f75afdf6eb76f3f36899b84c8 GIT binary patch literal 977 zcmX9-Ux?du9RJ?+?s9*2R_sHaVP;$pa}XqA)I3DYcDb`VqL*_y=tIFw!puW;al}z( z!3+bd(uW{r6s)649{LbiAMPPSAA)31SQ!EPP&Hs5iWWSv%y_%u!G2~8KHu+`&&&7o zfzS8*)!uG?b@_#509f6*uyrw+ZzZ+7m`Zx|@0t4mDcE~we>S@~0G!I)Xr}yHRGTxJg5`?!uI%&`FVYAWr}H^ZrbLx3>VjUCsx77E>0W3CQ9Ycr zN5_7ehl~ta4TuVmHpaHH`3_n1c|9!DMus!B19Tu!8I{G$d8$_6+N#hsx@a7vGb~9J7*^wjvMkqBwOKBAYBj&r3O#Q$7)+;A1h@`l17q50p^M9XN*f8) zanYHSyHk4*cP1ypW3)o0(`+`ICvq}Hs~l&DQdLQoRXVkLuic4)Fdp%sh?pU#O@**a zRI|dnRk_>LdagP2o0DM>$A^dqC;%7$Hh>Gz0~lj~5=a877|3-{G?Ylt8L0E%`X}B94X0!VSOUw_=^{^*WTv8twpnuOX4kEUfjfx;6pvU@L>{0B z5K6MBCUQ@KTb1T`%r+ZOVf6b#u_%{HYNetxw8hd5o^b`n7wLgSO$s@r5XdA^lR+Mj zLNPgh_T`laPk!Lji@P$M`{U;i6JqXco!{U1`gZu_0HYWmycZQ`SQD`KDhSrqxa>{wez=Ly0Ovw@!rF8>-F{3@9+(6^S8B| zXFG4-y8iH2>)O@(TQB}|dHuq-+qa)v`{jXq#g0GvWbgEuqc^u!<w2WyIXfQFMaVpyKA5w literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_right_bank_to_flat_diag_4.png b/resources/g2/track/raptor/gentle_up_right_bank_to_flat_diag_4.png new file mode 100644 index 0000000000000000000000000000000000000000..7416b0af35cc9ba9d978b850a56053607ec3449e GIT binary patch literal 962 zcmXAoL5SmY6vp4obSCYTwd_{NVh$0i1c|!=g9Hqc)y!CjER%7v*h7&BQLFTjg{WQV zA+SZ_P?#L*TCr%s;8rGJ!C}dvho}(?6Cn#dR0vBCMXN3vwBj7*@HflC_uk{Xyx-w_ z?_h7Yd~WlxO#nEz^YYeyI&*2!*|oHPM(>jVYp{3q+IDJJR#sM5SJ&3oGMUW!`ufJk z28LnTY&Mt6;iXcEWf@Tv6h+dss$uA@R;%0X4~Je5OyW3ME?EWy9%LzBtrqKbve9I$ zHs9^ZgP}U|jWBA@=8i~X6+W*^xLF}>jp`fhaZB{Om2jxXV`~vRr%6yIK&7D}fURHy z9rN3T>7cj_3AA9)QblJrLO}^Y22e3fFBD9Iuqn#n`D0lg*J@MKyx;F5-zV5&Nx&JI z4hLhL7T+U zF08_plTS1L$)(rc{Oaw`HxCcr_~xnKKK%Hf%kMvGeSaZ&?#9(0y&v$2b#!q1lils& z$-V85j&9z5=9l;W^TJo}+&cf{ox|L=74IBmU;5&C{Cxi6^?$#^{!H1hv%S0Z^^33H F{2vDmnH~TD literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_right_bank_to_gentle_up_diag_1.png b/resources/g2/track/raptor/gentle_up_right_bank_to_gentle_up_diag_1.png new file mode 100644 index 0000000000000000000000000000000000000000..c47c17de6054c8d159c2047b1f11a09c48f3a388 GIT binary patch literal 1012 zcmX9-e~8<36n}TUYwic5V8O!WkDL_DA8|$qm_c+o&CPmdyNt_bl!&<*W?>bgWKw5^ zFe|H4Bxq$t$|xG8VAQf5Gh&%N%*LVpBd|lN1nljKD>AT*f<+JZHOJud-sAJn`@s9W z&j-g>GY94t<^bTp%CpOB(Oin^!I@apGwWyK05Ldz^u&>fPE1TpPEN*Rv8k!4>FMcs zJdR=5%*@Q}>})EXPBRQG2)rzdx~`h0Q7jg#)q1n(`Tlko4o4$~2A%^+oLALkE=S}G zbg9f$Yf_`Bwc2JUDEIn~Kw%0uZ-^;NA#9zjo6JU0Xjhd^(+IapgU}fd{R|Eo1$iE9 z8EY6=yPW7YlA{ie1~eLJXwOE-PXkB*8ipB(goWcaNje<2AxT@=Y}c~x)a$6-#+hWA zPtg*=X=KKr6pPVq&a4SVSFE&Tr=xjcmSAx@ljdYf)LGRKjFMEUYjw}?0?Q98!JyF_ zw-Y=hWk_X#C;(|=Y(14}l4_eb0;SwDouTcc4T(zXES}F$Wrb_#Ld%qcqTa2VeYZGl zSI2>i`hFtGl9a-*SzgG?a#`1F`FyinZrAI9=k>O?hr=NP+yJtQF^z=K!sQN??Fps6 z>J0L&p}jq74)(fZG*2ZGY$}x@(lSNs9A}DBNsE>hn&rw?qZ#_asK#^j51F1nyuEphyeP0#lgh?UdvY znnxNTXAf0(ly8lzojtFIx{0J z5Q@AgMRNCn7Ynt1pRHBz!|ZefRh4r&y-+Y1y2#R1o^b`HEz;W(HBiz>BalU+8iPC@ z1!DC4?7{iF`x!X9wkpHY?cZLF$mc7|Pn|gQ;g=ta4_sfInT~F9Z0GU0zn^*U1?J4Z z4;j6)wO`)6_Tu6{{zr%YJa^--PnECrhnwGTF2kdjZ!Wg%8z(Q_!Y@u=E*?Ah$j%ds zYtLQ!@BAAt_nvnb#yj8r@YOd9hsj_09{w1AZZ5wYKm7KUn{oQb?&eFkPF{U&s(<0F zcQ)5gDZBTUE;#r8PP zA-GYh_K-slWi41ChaRF<88nBWIb>lL3x=ga)hHDz_OOSj1&a*$n`Pm9@8f%i_Z`0X zKDcsN-#z!lIRMx_xV(Rqb1ARKONG3Dw|gNU6yVA$$Cq-sv9YnaxmhR_ipApA*4Fm+ zHiluPQfX&rr&_DkSe6k*K~W@KZ6)6O#W)>&L9K%>DDz*Vr3 zfkj<>Hma;91X?m^rJ*wyp|}Ph185j#;J8f?E=74feNQ@WC7o*+qS28%Lv0usL1M>gFIkS}>j)R1 zqCm9?WE&_K1A$=PGq{GbA(l=yDC4@#n4m|N1yf0h3{lhf1UVf z5#tq(qE(h_3ZkVbU0oko*0|e^hQlNX=F@4GWe5lZs6NJya4{s53EiBFokhc2T4Cl+ zSL5Z`Y>mn^j&s#&ovbM|qw~Be$sH|U)*g3zr=xKiC#$&tnuM7OZfm65q6clk?afD7OQoB}K`KsjU)wN2!ED4od^7%cPz202d3qQ+N#ZY;3Cg{QCa~?Y;8tai)B?&#c{gkL zD=S?0CuhMN%`&P29EsH#ydjV+g>5$_*KT<|JM?==>@U+8t>&C0p#V?{2<2IHa=V8h zoc3U`;0FDNFeekS(NJ0~z1=og#^IR0!1^K^Nz7EHmud}ZB(fD4ddf`d#-S?vGnTxp}99%lw|NQ0axBdsC$&|wY literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_right_bank_to_gentle_up_diag_3_1.png b/resources/g2/track/raptor/gentle_up_right_bank_to_gentle_up_diag_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..5d60c327a5898def182bb4d11844ac0c393a79fa GIT binary patch literal 942 zcmXAoPl)4m6vyBEO=s#_qzjSFKn_)cM2VO~4iVx`W{G2DGHeFBQYAvz?V$q!BjgYy zYS1c0f>a4ou}BU*1ngmiAUy;OQlwy9huw<7?V&JTm_yMV<}l*VEDPWF9^cFR9KP>; zc6cCN*}k?709W>3-Md-LXNxMA){35<{a^vC!QtyiHwwG5va-6my0*5qzP`S(v9YJxPHDbX?>z$byEWHGsD0Efl2uq?nb$+0WBU4RXed?R@&|SvED&mMxCvf7~g|Tl;(0kDmVO^WUyN`N4~&y}J+4@vc#O;`sURuHpAyI`?Ov-1&3c zwA`yl$K9(Rzxh-DnY+&!KfZzeeCz1LFK@m4;On#9Umr^UeDTfi_kXc>-u<`w)L-9z gYQGk~{r=&@jh)>6@9eg*Q*dDa#=+kAyYGDTKQ<1NYybcN literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_right_bank_to_gentle_up_diag_3_2.png b/resources/g2/track/raptor/gentle_up_right_bank_to_gentle_up_diag_3_2.png new file mode 100644 index 0000000000000000000000000000000000000000..487c8c822c069c8e44016591db31c22e4ff73468 GIT binary patch literal 993 zcmX9-QHa}g82|2icez{dR$0a3B2?EwlxzeEm_fiebF(`#F2`~%NX00*tw`c%G9aK~+n-u347VXtX*VKMeQdcs!ZV6mTqvLb_DSRx0_b zLDg)w(G=Sqr5otI$Q}$`p2TD}tqD0(&O0j6(&=4`4;pf>qs4o*QS45~VG##~genJ) zgtav+urvL3cGAPqh(Z$u9XJSu1ppC1!7we8F>%}>2$yAdMRBiO?wjV_Rtp6IPG<{T zjuP{%LKHPpHfhyi^(Jq5LcJ@wJ;jg9c?PG71y&*jl__bwRugM2rR8gWWQK7)8np-0 zAj3gcf?OH$1`rO$v~tA`Q3^OMlI?-+j-3$giey%0@M@8?Wwx#IU0sSSwcpT(o;3~{ z)5t@^Fq35nQl^wE1^97dA?2a15{QpQyBPK9h5 zoL7^&&GMdS_JiiAA5JEBQIZ20KnHLDJb*obAqFUc$Rk5Xo{QqXNPtE|oddrJu?R>4 zq~(xJBUeOz1@&qucHx2X3;G7=;jrl z&|=mZm%K@}J8kq1`~m8Zi7YUAtVm@_T)raFMpSlfDr`b1BwBm z#EV)Y_Yk;cG>1c`*?0)O*W*hisZvo5L!&8+p&A_R@pK?i`yx4#3rNW$lR!-x`5cOb zB>c?D^xqGD;PUx(310Z?&ZUGnYpbU>pT73hug@O&@yX@Xt$$Hv#_k_~?&YoJ#`m{R zuk5_Nb@kZ0PZ-bae6V>b+z)i3|Kx^eXW pe;4QOf5R=KUp{$Wzwi#+c>MP}r>-1%G&v2{&aAI~`{L{G{||^jrak}w literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_right_bank_to_gentle_up_diag_4.png b/resources/g2/track/raptor/gentle_up_right_bank_to_gentle_up_diag_4.png new file mode 100644 index 0000000000000000000000000000000000000000..d98a5553619d8aeea84c63cb505079ebe8771de6 GIT binary patch literal 962 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 w`jelZ-v68ah8bLY4%D^{>>Qt-h2GMyx$Lg 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 literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_to_gentle_up_left_bank_diag_3.png b/resources/g2/track/raptor/gentle_up_to_gentle_up_left_bank_diag_3.png new file mode 100644 index 0000000000000000000000000000000000000000..580aab076421c893b9189ae7973530c4422652fe GIT binary patch literal 1034 zcmX9-acCQL6n<^mUb}4GG(xPIoHNQzj&j2TZy4d)UAs7L^lEPsB*Im0E~8OSyrF z6B82{hD}aRPEAdPqtPhC&^*sclAtI_O;hvve7S7YYIVnHd){C;WN6@GAPT``GL%je znJir>#>y43T9fUD)^dy8p2<^KA{JDIa4tdU3TbG}cAjsP6Rn!+H4A;uJQz6f2*?y< zIM5}ms$z{I-l>L$tqAJVXegsY9U&(QAOgr3rs8-m646Q0jK#J^v6)JBa=AUjK#fL( z2}QXuEfO)AjH^^4$0&MCtMGYCDA|(PlIvcIU?X%q8j~nNVUsGa7Q})f8+Enr<{Yo& z_N(242F^i9f^Z6mERZ_J8sT`2Og1>xO%%JDInW)nEm9$cjb!3fF%hdOysb%YUg?yz zo|PXo$_K86dJZ09Nh-mxDUQ!bQc+PVnM|!%Y#4@HuXo$+!C-(Oq5@gQm@3ZO5vfI` zx_qIRH2WEQptpy${$b|;1t}b7!{Im)l_*+?#WX=I$o{fytypSSYo6l{yBx>@rb&2C zCiFB_$#PafvMZ^kmFqMr{f;vn?ja5!0iXfs02V+KpoanSA@V4zAS@#}AkTyc!LuOnkPxx763%6)k{+*`if!jz*Xs9O1 z0o4I{fRLX>!Iyi8NIqNX_1H@JA+%PDPbQ^wTFGWrhR(BenPV)TX$W*%r22^{k_nU} zQH4Qu4!MGV{On9{|G^JjU0#%6_K#mL`()?*{M^Men_vAbJa*^l$*~`QL#xr#)qQ(< ziTeEZxvjvhKmWRUYjtM-rSEs?K{Rk>^LpURP3x_|zu3f$k7l1&Z*Rh@kKdfW^XC28 z@9v$jKb_l}`Ta_0=jh4H$>zPUvAGK`{_r36h_im_#+luBKci2sys-95>Wd;g`_$d= z#-qpQ7hX613ADdmJMqrnb3g4R-h27EYb)`q#%puC_m7SqH%{%XpZjoYd2RiTl?`uW k`YwLz625aiwDJu1KHfb2G4b|U-vgXqSe*an?8>$O0ZoRrp8x;= literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_to_gentle_up_left_bank_diag_4.png b/resources/g2/track/raptor/gentle_up_to_gentle_up_left_bank_diag_4.png new file mode 100644 index 0000000000000000000000000000000000000000..7af3396e86e7dd3cc37669274d69e8050c5c18c3 GIT binary patch literal 984 zcmX9-Ux?du9RJ?m^sdZ46jm`0c_^Am)NBOFAP-SN1(6*mo}uFRUmAgY@5tMRq&gIe%FW&Ym>;CO#=}Jje;@{ zwt{sG%&%vLoow94(S$~^hK_B7f;@l>pkbJi$yhjUlcd9O2eN!vEDkN}e!Go)A7`?8 zK1a(0r;(yT6)Z-#IkP2HU8&JioWABoMS{g?G0!QKq_e6a7&W=p*4m!og;o$X!bxW| z^D{hT704BVr~qkWY&$1*N!90#uuvbF&eRUjflOs}7B7oby})&Jp=T;#RUbCZv0I(` z%~|N8agfQfBvoM8A}^E`rLOC(a=BZt`|WnFNSwIyNxekhkG6@C)4IVrZA{meZ z$jG5OgB%%oCDgB>$bm<}vmgmjkg<}Uv&vM%7CVmK>s7YCeY9?+dD`luCM~VlZ@-rJFqC3XCt&1DTo>@<=0)MWPmiJRXHo za{TP`=?9N~;L7%v0x$h`_pO9{yt(%Bg;Tqq9Z63Fr&H^%J@mgldHLb?kH4H-J$voc zU*ZRjgP+-$znDGy%uV9=o8HOWw|{;1($~_f@BDP>?XScg_4>Od{XeDp#+`f2)mxwb zoO%#{w6*`|a~r$t~zwYkN<@qCj d6&hlYzV*lJpWhwC-zAP{OE0bxJ%ILIWuv(ojSwhv3%#LgaIfB7c=_D&rg2H4~UM-8|hTO1K+tJOX! zi5ue}EV;YHci_E&5>Sro_%^VpX+7+p|!r+B8RmreTg?BW`FDbp6Hn2(~ zw>I%DH1J|^hNLnyljHb;BvllpUMRFG6}QpwZM)y?jz%K{xC&$qqnk0_!KDtB>+|J7 z)*Kd`kFfSJwttBQL&p^CAe>=GyOUKC|`sD_4J7ew4hNcc^nGmv;AG z%8@6(4sPE*_Sg3gwfW#TPffNX-Odlr%}D76I<+<2KYeQB`n!v(@|`<3x}SW0dC$Io z_pMv6zrW|Vo_u5HivGme|5n;p&U2gRPhUcl3tI<2Z|;1U|Kk_!#}6j4$G!;d!pidM K(znmOeCdBXA-fU) literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_to_gentle_up_right_bank_diag_2.png b/resources/g2/track/raptor/gentle_up_to_gentle_up_right_bank_diag_2.png new file mode 100644 index 0000000000000000000000000000000000000000..abd1e7552d9d41c1feb91ac339005e85fa5ea566 GIT binary patch literal 937 zcmXAoL5SmY6vp37XC|GgOTeNPqhz5%7Q${8a>yZQTr*1@vO5_jD`Dv&LS!RW448o) z$`Z9;S#roi4|OOKAwmyPdzeGOf)OJ0P&G&oUC2U(;?`vkS?QsN5&vdc_}+Vbm-jn- z@7+5(tXb91v$C~R$QZEtVy z?Cf9|RxB2GcXun*YL#UfQ4|zK()GG!neBGF*Yk$MFpj5bnypqW0|F1SRI1m@jRx6l zF&&5R_2t1(8%5S6apntOq%oB*nNr18Nmr*li#=Z!PKg}LQ6VVH$}4}cRbAt%`ma!w3{pk^L2y^ zP*$K~0NDb{#W=508&dU1Fca08TYl!o=uD=|I!82Xw4?F^T^w0T($;4^YZ0`wsJBi6 zw21LCN6{+F8G_hU6i3(l&F0W?BF{_0a6X-8S%!cxf$CxG02fDuGNFyR*jd#5Wpk9d z)75Z!K3k&_jpJOUQX{Jh&FDODNpeTam$imYcRU!Tak82Vph=je;I>A(4Z7bFf{rrk z8{@#9Mg8S0Uag)W0YC+?09=3oU<|Op0OgWJ)Ur_EqjV-yV6xB^AgnY2lMYIKcosYdk_f7dHS~(zq`Piy;OnDNJ4u4&GC?_uFo1291h*plq!v~BoqQl0iisLPL6vn zqTT8*7F@sgT-IbF*6T{6p|@Hl%d|PBC$NFYMiMiX>7`ml8i{NQ^;r}OD3S8x=PsB2 zdG-S*$A=2M{pi7++^7fp*KQS0@BVu2#m_FjApY?XeYE%2)en^iuYCK-Z;ztKS1*3~ zGW_@S@J~#8o%rCjpKo6N{g+GkZh!8act4)Jcj@n+j>`U5Z+&WfeE<6^_wU?1a!$Yb d`u2ANeE;#?z2mbt-pmnjaQ$%qhj-rp;(x)hjnn`D literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_to_gentle_up_right_bank_diag_3_1.png b/resources/g2/track/raptor/gentle_up_to_gentle_up_right_bank_diag_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..772c119481d26e3e1e3424be383ffb81ab9a9bdc GIT binary patch literal 962 zcmXAoQHa}g9LIlm?Ol3TZe%u7bI$gAW?&4E;qU}ayc%W9R$oqj#a25O2i_4 zh%AFDRU`JHXdWu$p-RL)+#qO>2ze-@V1zz&kcYww>%*93ROrJo{$>omzu%AV%kT5> z{r$c=JgDq!zpxDeJNuXRj?(#dTF>V)Y2TY1zY36n!}l&CX>l#vl|;5 zo12>$hUId(t*xz6xm;!#S`c_y7Bx*V4BfJUKdMdm9RCkXD}z05O%Ahfu0Oo^Tb^(q6!Ww1q~i- z8SCp<*e*=^#pMV`a~dsGbZR3Ml>sCG6~pvG!NhT!Bwda>k)&a*HZjeIy&eifoGF(1 z5-ky&N>+5LYBHM58IE9iVkeN@k?JQkg2m}dnUg6|V-;P{TT-j1_I%xs%_!-_^Zs-d z7I-MiP^tmZ1k%RXUa2x5m5|rtYI|z93p+w55>?b#yiuXrRj#iIfg#71Ht8BO&sv1t zRqUZzR4B3}Rb|*3FEnJit!Yl9F=)5LUN83j>3Fy*>v zy_Os}wV`KDLT5gSmdl5T2dDxV05*UJFa(%kfKo{UY8uFMQ8JN8&>86P;8!4#0Lg&# z5^6KZm5^UYqZUeBcp5wlq5xG1t7|2*L3Qj(-_?S^ieqm+k5S6PYrr(~yj_x9LiI^K z;p~OtEgQkAJ395JXtE%Sz!F%6E+{-vmzicww9UHPF$1p?N8UV%&~nO(BJu$xfKZx6 zE5$t%ZZ)0RjCH!tWQ<0FqR92S)@%^Z8S~#;A7rdQUr*VvfAL`Nw+q*9 F{SPo_l~e!# literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/gentle_up_to_gentle_up_right_bank_diag_3_2.png b/resources/g2/track/raptor/gentle_up_to_gentle_up_right_bank_diag_3_2.png new file mode 100644 index 0000000000000000000000000000000000000000..524538e29d3bdc0a5d375fb2cf6f2477aadbfebe GIT binary patch literal 1002 zcmX9-QHa}g82|2icj>LpI;$41578CLL!5PF5H;R1&28BccR7}Ws(r{w;Hs1nG=mCN z0`{RdauQt!RV$VmrDE73oD!izbrBCN7|(mC5V4MeeK;kPK2$j5Z^q#FeILJ<@Atv) z_gz|D;SV2LI0OKPm(MPpk0u+{1MyhYPaXX-1rUSP=hjX~bZTm9dU`q*i_Of;%+Aiv z&COvL7LUj0=jYSeY?h*O9LGwMpeO}RQ>)c#qtS94*Yoy*ARLdW9Iyxzp8pzA+eD9Es(bges)sPOQW`{T(^<$Icl&|8wJ)R^!Nj?Xd@DJXP7<i(!b zm~@jYq$Efe0j~gIVstCbJ4B(&s(#)WXjW)?Xj>#x3Y{tQq>*RZ3fIvjzpC^b+R(0s z-NwYX(a=k#XoAdBbdlxCl4K}Kvs`uzquXlvt~=P<3&RjWMg^jQQSBtx$w)o2IN)l- zf;B34LUV8Ij1Kw}lpvEyI-Tb6tVHG%hS3DECP&LEj#1xfJAvnq2Q0_}rb$U%#?2Dh ztgv=X>NJZxw%+eHM}2QR-bYam@&Fou319>401Poe5kwAEG-O*S=!*oX6x3O8c?d*6 z5+F5=3<_Bya!aUJLxBaiji*82ATMGiC9Rjqy2-aKrPHbUzC9ZGDALLlfvO}}Gc8)U z>=J6gm|?*lmphY2@4y|Pen_N%#xXvZEUB{|gnMHT$7fbU{i`FlPNZJC|K#!a zf4qBr;4EC+{A>5Y-yXf;y!O%NmGzr%=EwJ)x%R`0`}b^oQhNE;@;lcqfBx#ZbN|Ji z?>>Cv%KX1_^+|p!@pJsHsaHnx$39;C=G*?+)W*`nh0h+^x;okXTKwCHEpA=@!#;88 z`Prv#9EXMPpFZ=#;%LM2&)CBMp ztZQOXqcH3iX9EIF7&Oz-k%v%R0+0c83^NM_hafzP@_BwwmiH@_q2t`{bWju#Y_TNZ zj7;)6RW@nWVGWPB+M*js&A#Ff^f0ZE9Kn=Jyh2L`rRl!tL0yxgO-NH7z%F|z!r7o$CyE*czBE7J{??;2v?QWDn~wybgBPNUX5 z3D7t$6gi4kS*{|8HAQI{M!Qz)H5yT;lZ4^u;9xqPA|OnlS{U0chPo*|*$) zQ~5i0f8dq#I|`h+b@OsYobAmgb|1O+!T0=qxsCO$Xa9~)f4&hcIPc#4_hEnO#g_wL z{qm*N58u4d{A&HVAMVfZKJ=}2^2$%wmG3^jcuB(_`}K<--9vrjj}w=gH{N^u(No{N z|Ivv7`o@HNb?5Bi#^o2(Uw%G&?ZK-juUyn#`}Aq%`mMz?U;kI#WY;eouE6Ws V)xUm!)y}NI_SVkkXHP!=#{U>fq3i$v literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_1_1.png b/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_1_1.png new file mode 100644 index 0000000000000000000000000000000000000000..25906925c76bfd55ceda4c44603342bd814b4fc0 GIT binary patch literal 990 zcmX9-Z;0D;7=G_>dUwozD5J1|`A{$)qDIIxV#GLeXYb6o9G79I9YzRTkum~Cs1hW@ zB6U|KA1W(ekq)BtAZ`_I5=X$G85Aia%-*aLrH;ZCIkZaA`*7gTjKTB1FVC0vdEj~9 z%Ny(26N{%70pP^i>hfkhAC4=Nn2Gz1#g~QvGq7>?+)7NRrlzK+r)OqnW@l&T=H}+- z=P?XRBoYe?3+YTI!!WcU@UkqbYF^j1a=BcuH`{GD2zpU8o=g}Tcn&0SDW6Xji$uww zD^;%EkXmiU^Yw069Sm)O!gAb_CZ^3CVX0(OXZFg1U(a>hTGXkGBKv3@WN}a^DDhy) zSWCnFYO>!-O}aQ5(P*NeV+)}m10Vq?7^WqYCXQPqX>;73By|dfzG)sdo5=TZCY9mS zv_xk)EXT5 zNgh%%qzgb8Kw22vOlR9<-siP2R~_i~*b2~|M5R;~FJ-A}j%%rcr^{hk?br38Qy%;E zqtHRaAemxGD#x$|UMR_ORaG0MQoCC9o6XR52ff~SJVt+k&!zKyYL literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_1_2.png b/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_1_2.png new file mode 100644 index 0000000000000000000000000000000000000000..af8f31f7e37ea76f607f0fec4fa169384b1ba4cb GIT binary patch literal 995 zcmX9-Pl)4m6n^tJogK#tJ;d1}5sCzjvr!{N3=-XR$PAHY-K-R;5G7!hiaBJlhw28l zhwfMM|C2$5cNN|PNo4C;MCJ+HX}MWH#a{&zp${dxVX5qw6wgu zjA2+T7F$_a!BeRe!_b1jD~hCPIm6J)<+5!zS}m{B>4)KDI%R0!Igq8*TrN>45XBN* zsd9E*Zno66Z}fudaO4OSmgQD;2{*HZrI8JT*)I#eo$a;suv;02&TP^Vlb}*id=34){!q>VAnxX?~2Jt{vGDx;h; zF19CDf7%)!4Q6PSipNiV7(eD?2bAPz|-FtT*eQg@5nq{&Df@&c|!J8~4tQd$VV%-<;byyMD!g;^vFb-}m{qAH0$o*^xQe-pr&wJNd%-{{hjtvS9!K literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_1_3.png b/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_1_3.png new file mode 100644 index 0000000000000000000000000000000000000000..03c8817b6f942cd4e58231990441d3be9e2e573a GIT binary patch literal 933 zcmX9-L5SmI82x5CGwEzutMm{xhb;6EBrFkf$RS`>Giw~OJDHuVgr!Ip0v7EdhbTSt z5V40kMhI+?s)g+#hYA71IuM3PI*jA&0^i%wfeK6|0Q!n`PmB-^aVWcX;nR zJwB2yUwZix09-zN>)@okwQ`=XR?59GKD+@?f#Vyuua|UdYioOZyHcs_?Ck9B?(XgF zVHj4eR`>V!@n*BhvWzGSswx{s%d*UVzdssHf*?$i^DHaYYnB0l2Su*6T8&PJ?Dm*} z!;i+wG|;2iny1ck<%u+=@ikM%ZH;sdYGScxeK8(s^T5nzgFN##MIsTP)6f;bRk5jw z#ZG-OZLH@6${DoQ(S?gp(gaWdbPO}=b(2=Oi^a-_QJNGOeQFf3AWJ`a7H0{ zosvvivsuICt+CkmZ4Us zZ*UZ?v0PgayQ=CK#<<%J94DSk(lA_}pBF`efG~j?VeGUnMua-2+e>k7V$=Pg+o=%rXMaE7yKkR|DQDS$3xmRh%U((TaWp5PDEXxyIp z_97nVi)6iif&>5!zyfdqe1I9i3IkL^5mC=VzK61fLV?M`P=HW^OaY_t&%O>l9=BlVCnGu|y){<<4& zM)Qksi53Ob0FJ~Yrrr|Bj>`7hvTJv|p&j|dH1YE+LF*+a%P0ht0YYUKgVOF9h<q3)^i`dTCE)aVSjh)(Wj04;g6@Ez4Y(p-7w+D>`6BbngCG8DUVM!|`25PZpX|Iso=`u%d2jg7qb>E$ Vdj|h^M3nMyc>U<$n>X%${67&mjM4xA literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_1_4.png b/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_1_4.png new file mode 100644 index 0000000000000000000000000000000000000000..5864a2475a2952dcf136904d1821202b33253b41 GIT binary patch literal 977 zcmX9-U#Q!36h6KG(tEEXLSelaFc*XH$U`3DOlQ4DZssy65->vM3M&#NYSlah z>_d@)8J5w9;)>>>N?=7VGf2S*dFZ@F!*-EQgH$apg9$}~-iIsv%ou#nn?O<4v69%N}#RSWex*|3;a zoA37I!B86o<|Jy*=B`L%ResZuiguNBbgFN%drdLuRwqLv9=DR%JzRtp0yG*L0yqjb zFtDJFPX~o`LZE~}sfLamgu)Vl44`3{f#WtoI27gb{GKe2YqhCu-|P2L5D;vkBorB$ zT7-9@FP2nJ5e&29R|1n z1qF&VAT6LAjO!OGLrM(aTul%giqh8gUZXK=w}XB^^8MMt!D6vMKo~%EF?N89BSM+bwVBwOt8UU5 zEu4dNm>f+H(I$=KT(MXoOA5{CJa0;JOUss7!**vp7{+0g&IHgT%v5k&Bb_?kvjnfD zjC!@PXHSD(G7Z!89ufem049I~-~o&Q<`|$1vWP4bc`k~lG6e<;9Rd6b#4;cSkWoZ! z7P&I=>uAzKu?zQu=RgvnDr0rMXgBDNQyIAWXw-}%FG(VlX%RJGtxdrx$}Xw-lo9jJ zLiN(d=&(CE@@HtepbEf|ScSn=fvhX6Rg)aM?sn{v*NH+ei9?jmI7vc2pcoL!vS?*; z4?r}n-h9sWx({GZCZeh;^}23Z2Fo-#rYo?X$OaN~Ak#^;gftS_6zZ|a7f>W+$IqSE z{QLe7ymf9@fv4}>zL*X6PWklttt+oxK7Bmg&X>PIzdrHD%eO9_eDZmB`@OgSwDzALdZs#tqj#u8IeS=shg!| literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_2_1.png b/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_2_1.png new file mode 100644 index 0000000000000000000000000000000000000000..39d2fa1b274fdf57e2772f1baa904a7a5d6b1162 GIT binary patch literal 952 zcmX9-L5SmI6n-=9Or}%UB0WS57_~~oAUOogAxd;ILwAf!md#?ofDwXQu!kJ7Qm}`J zbtyx^9O}~5912G0A!-kU#h^?_=MF+~?m-67G0dz~Y=Uqo%H#PnS)Mc+bKAZ@9HJ;9*lJC{8JXmD zs&3M%%^D7Gxnjqc`k~@Y^&oAK9KqCUyh2L`r3Wwu$vZm0C!Sj|RclCT(d)(_!M&mS2vV{P;gjq_()=8&HyKTYmDxuq$ z`1U+%E>mE#&=(-6Ln;GO0GT-IvB;BA z&_vTNNGkc4?%R= z?sCbwgNLxDQ&H2DX47c5O_u3!%s^m$k&Pr~CetgmhIA6y6mnS<2q=;A(reeCEv;n`PS-u`R$ z_C4zJZ*Twjfq5+q0tIph#ET{1&-vThcN6v=92Dip~fVuT36 z&1!M0=1`=pJ@gQ;NWjVtm_vjp5ein!p-9CnR48m07Y$OR;Gn-*7QXi$-{pNDeD8gD z=~%pQ?y++KaN+2%emS29d7Up7@-F}Ru?SFrOD|lxnA5GTt?ljYLZPs;v$MOqySKN8 zVOX(P+~41?)@n6|p#_0g6iL&XhM_x-)9(+*;~O}dMvCs0^}E9p|zZV;|U4h`ni5u$!$I@Z%kXO()JEEaK4DKL3(6>Owq zQMWuFRn}7+t!T7X(V2@-T+7V^s2HY~%QlX?B)br|SDV#jGOS&bH(sLVq} zfocl~3rH7ZhgES*HX~k78r_BAWp0d4WvZgFxG7TI1~<}#&`=UboA-^S?_^PbllW*E zmn$quH5j(V3#OuUHEm#;<8C(^4wE2Q%w}1ZA;5JY`xrAS3n8vdsn$a1ESuiS3^RAO z9k8&smoWwu%siJC&u8pj!u+)?vo*0|f7jK*o4tQS0}5@sl6TP55!HL!TUqlAOj z#JA_sU^S1|>wAa?XaE=hE`Sd(0a#*ya>xR*4CH$#oy#QX4D@&iL`Y>o3Lw3Tx(xDU z6tvN_gHjLf2hV~eKtsmbTGckGo-2+#EexF`@mH$^^@49Iu)8trQOynOJ`_@rTaYN3rr-@Gnra7YDguJO`-vV0v;t&e*EmyrN8d~ zz+0D(6?pc}FDE&9`KbQfm4i>;{OP-gzkRY;f9W6n#rICO-}&f`!)x&qi+3M~-(Pw3 z#;*shyC>XdHaXg%~#tG-TdZy{m1i94es1^i1(kVynT2R|NHAtjz0J!ymjl} f*Zwm<%l3YLq<8)HZtX95QPT(aj8Xh)jmfXu*PU4Qz!XIb@_l z#DGzXR0&w5i#_xZunPeT&LM}oL<~}~usKwynuVf;jj)HZgr(>pe={t6y!XD#`yIab zK07(CUA^+$6#%$;^yc>kZR19LMSRhvRV&Me`(CXBo$WD1aiD8;weC&_(2QL*x$rH zT19w;r-8D|X#m~FxDhT*NOi_Emr`fd@Y42V z?as4tda>A`GK1qhLDZP&Gg*b$kQhiCyxCzjZw}bo4{FR(Ipg*(gNB@1b5x= zv-V`upIrn?v{=&>;3=%e;ti2%shri6UAyJ=?1|rtBR@?dlr4E#MggD%5X!UY!@q_*|nX{SHXsE50ZdnG$Iy~DKIbY&JnVl<4TCXCFLN<*C9127f%lYy1FP5KN z{=nI-V-;S0^xK`>ym55!%IWp5-g_{+_QUg~;>o|`FBI}$ z?XTbc=4|u+?MFBH!#DqY-TmnM(?5QB!AkGl-4dSSpRNv^{Y`N9#?K%8cmJmw_nv-9 Z{P@7-|9R*4`#AxQ4v!DMz4`XX{{t9kk$nIF literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_2_4.png b/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_2_4.png new file mode 100644 index 0000000000000000000000000000000000000000..800733bea394b71c0ff926b97fa37648db8dd59a GIT binary patch literal 954 zcmXAoQHa}g9LIlmy}R748+8;3n1@V@Mhuc+WO)c9^Kzq}nU{H))Y*p!K`REyL!1?g zWLU7wOrjLbLmvtTEF)qcju9|OkUSKO5Tp+k0xMFnu%T5tsCvTRjKTN!`|*AGeICBQ z-;K)$)l(-PI{^Tv_FvpP%;%ZB9@#GB{lcA3b$|j~zI5ecZr9e<*4Nhyg~GG_p}=o_VW9TqQuIp(%i) zU;_h-?9yaVUM2*ZGia%zV+WzQ0w4pZ7-p187C|@^RW<0E#cB?3_QbX?bwkBV)F5k+9Klp8yh2MFS2skXBX|00KQMySinDGyA52$K zNr18fcmv25P!7iR@#>JOM}m>o?5XK3oERO+bXntwW|g*U{6G^!Q%T#}#5HGrdl9*- z)JLCNc#E3ta(%Dr7Ps1(1Ow zn?;_C0v#nClzH$Vcn%~HYBHv4xYeY)PIcgEVc1Sne?Cu9&LSGXwu*v-%O0r)l#%hy zqV6x7;mS>pgDILUs4{RQR%J?cfz%bY)sP%Z_qtZ-chlIPXE9n%IY~kRpbQYov*_fw zha%do-fYJ8+=nugM6A~pUDsMIgJs$r;|i=VvXR7$WqMw#AeBTGg?cOs1e8ko@pI1> z|9bEP?;Rc}aN)O~-^$I~`+F~3dHVAY)9+7TKXY>Lm4A(wyU%;qIehcU&;A@5=T1KU z^(X(lt{?oWfBZzz`Re9V=gVgg-#jhf*m>se?tiy`w4b|m>+tNmckci6-8(;g@jhd{ y_UZ?Jf4lq3`J2~XI{Nb5?MJVscZ+}A|9xv^hRL<7m%N+_`xg)PzS(`_qyGT|A(yTI literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_3_1.png b/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..eb32fd4d1346aa086fc5b2dd56bd067bd65c9f45 GIT binary patch literal 923 zcmX9-L5SmI82x5CGwE#E?V*RrM2S!&LRfMLm_rV6%&c|HI$0-+1#^fHu!kOUh|)t2 z0Rt8(64)MsbfHKNJw&W9LXaR?h}uJxh$D0$V9}~MtQe$+f`j~KS$N;~@hjo=jCR@G9d6EOAS?R_50+&VumB$ zo5-`d7R6?ojaF-4q_HmFFeKdWlCDloP4>bOW3QXejeIdIa(`PU9Rf5O1_HPWHZ!nz z)LhP5o0LEWgEktvb`eV205X7vVMeoQ6NF1qKF?ps@}k#U+V-9A0BgkY#dlinh* zm+_=nCY#M;Bmi^)OaK=k09XL5F+de$5m_b*e3UO`3Jey;0)!pNWk3ob14knk`7#Ro zC>^5QhbO^vAc@eGvA&Mm1A6RsX1*RpPL>5lk)g_q=mBdr1Q(ZmQVS^~=iO2bHiKyE zrPtvKEla8e9Eo+9rYewqg|&K;Yxn)J9R=eo35q;Hn-wQXCUm+eR9RYzj?S6bdMls`7KU8~;4{f%neO z6nOd1t9L7MdU|qvzy8VlKOEnB^n88q(SK-p_nYj?V^2K(_>Iq=yY=i#jUSKRUcCC# zF8ux1!z=CEU%o4@UjOZ@x4!mL>gdJuhu^>Ofc^0IFD&>&dGPC}&h39IQ8>MGcJlcv H?|kq-DE*6E literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_3_2.png b/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_3_2.png new file mode 100644 index 0000000000000000000000000000000000000000..1a92e2b1a9ddb6abb41644ee7772f3afe90fb901 GIT binary patch literal 921 zcmX9-F^Jn{82x;{JNeGN8sb5;qNw0OB_e3hpg{z+(FOIQa!R8F4;s{@dT z5Y!a6xKx7&^>9HH4ITt_;RZoXQ9!gFJZNwe7gTDfp&l}bB8rC_{wM_A_kFzOz2Uv@ zo4e=I$?==V0B~~l{^`B)UMuIQRxNj}^6gE4D%}0x{_T=hDwVyxy=t|(zrTNQaBz5d zh+$Z*Ry#U6!dtBt%QB)UsH$ujnr&PCe&6%_=`>1`WtQbd!7?E5pvZMiYnmq6?Ji8MFl*6sVMVKXXQB0eILa!!8Th0&L||W zQ<6ou9oBGpdo1=tc{Edlg&t)ck|P+Y#jCVzaGE7r17+areq=?dlVqcGJ6Z4Ih5$_! z@D7kYpj?deacN3vv0$a`;o1&zH$j&Q-849&E78L?KQY9at)_ir<=LCCpU2)V4bdiP zG&zcHvs_0IyQ(@gjB&R+9S&pPPorqPT;_R>fUtn_Fm}=qXN0<-J8N;U(SmJvmb=Sh zy1iQMP@QfxI2@PAmP#`Q&)c#x&`Yu2bU2z%rdg5}YXNi_v(<*9ldegRdqOx+XXDO1 zbXM_ryGn}UIT8Tc05*UN5CY5rHW;81iimnP3Imj_6bdXBMgl|v zJ8y9nt%`?Sw<0{3=k@_7?gIeK=ga# z&4wF$uV610qNb^)Y4my)%k(+M6WCB>W0_eh^tRnXI*A+#jad{4D3#0db2sY$z5Id4 z_s&&#_uoH1DT#D;`riH8#aG{bc>Lt;*Ti4Z(~o~i{&@Dg|J%urU;n)O|Jtq3?o?Rq z*;`LOzxd+O4`KX<^3S;P_k#zg*B?H8hkJM(zhLjYzP@>&KKlOCzswt@B%IwoKmF;} HM_;}GJ)?y{ literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_3_3.png b/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_3_3.png new file mode 100644 index 0000000000000000000000000000000000000000..9a560f6b7a5f9665c565200988a3a11b0b51cd6f GIT binary patch literal 900 zcmX9-F^HsQ6n?w2yUyNlOfiKa9(XVb7Lo{OVPU`|?qL?gdYlIq79J5Y#S|VG7=p0E z8SsLI#S{{z7=pzVh74f~0~Qt*Q%pFEDJEbsgbA^@Lc$cAu!KJz2j6>-uX!JQ-+SLb zxsvYRd;cB)+`s(d;%Ph2+v;{ZZGSNM&2ry`v2oS2+!ou>P zzg-LtYXa2_IvD6KM5q`7C;$eAS^d6C5FtgyJb$AotI=rdx^L!ll;;FH7z#L}ki0=j z7OlCg8S?f_^b&cRsqxxKs}ac&j5Op`S~fY|5-nfx=f*s>($X!eX<09Jw|QTHfeQEt zNC&78-<~FkTiPz-OZJD5b(I0RW zt+Cul5GSe{nC5IUSq4EqpOCsN~_j+7UvL@Udmi68C z7WL?UpTlv99I7;9^1Ll8zR@momcewjSXM=O*a=|Bn636*gAB*?%n=e_&1R!j;%@U< zy)6!hH%I``0BnE|AOTnb>@h$s6cIT#N@7%P6$&gCrUIlAR0<#!kcFdwMX`d?Fkl?n}iSluO0_=)=$d1t`JUja%0Wy0x{ny}ey3m3DS^c6WF8 z_VzFgE0@dr`}?(ez0R_XC<>}78-`|CrsFvM{%|}F<9ME?`FhPVAn>5b6-}$QT4cM! zbX~qbP)1{Y5?QmvU9NnQ#u|LZlxuc_^bBffu@{aQ^&7LXnNGV|>TmK`B0#61Er6$D zBNK~Ud@-u7X9UU^wARt3hfrJxPylocGjZG|2#=zCp1)9(X|uVo?We;biXwuo)`c3Q zki1SwCf%@E!{e=i=mc_aqWUvEOq(P}FjAdYY1!a3Q#89ucc>3TGfeC_?Iqc0xruNA zsw&i)Kz4xgFm70r#*`KbX3}t%mY;hux=`qH`kN#` zs~E3x6y0FCrXaRe)isPkyFGT@XgEy5a5!Q?$=fQIzi_lQ8mQl0YbkCDUzA>3NNfKmPf(kF932dh#cs0c*^^h`C-pjRM z-JWdvv&(Ra7CBV~j>IGe*95YqvYn>v*)6|kPl8?&2U!}U^^%ii6aq>Cp(2ZJVfO-r z(;2K*+@Svg)@&wfn%Zg^osP*e4#)HbHW1lJX66c=HR?zwkxiiii$Vb*oaX&sU#1+7FK(T91FdaWDGu*{jAIf4zP0m!F9zFH4&{ TkFdLiIGkKNJ%0G!?JxcZ+?b4% literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_4_1.png b/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_4_1.png new file mode 100644 index 0000000000000000000000000000000000000000..0dfa62b8c40977f064cd18db63f66626fcbe99a0 GIT binary patch literal 981 zcmX9-Pl)4m6n^tJ)2(CGx)jVIyObelkO(pIH{Z_a5KneII=9 zUESF(t)6(|1OTjVy|i&5olmA!Tv2lnzB<)wLBg;DIbWjlBOuon$ zXo=tyvZPUEi%}g;Zwt03Hv6(WQ2e+`usB^Raxx{VY(*2ax>WBd9bfY!D~y}bv^zcu zay;Z^C{%$kfpjpoQz-SwO2BJTxiQw=nG>R2iOQ=iZj`7-nd_=TUza0W9kuj{XU~Gx zQRJaXn9H*yRc6>KFBr1iP}R0!^cszz(}{e4JRHtuGX%H>WD8@uIiZis1FAX}>XV8) zHTpAWnDnN{qa&21ayhn8C=o@OqE(L5MX9c&%gkP*x!>)@VU&z{P()0ZbCyClHL7j$ zUS00DtNWfc3fj|Am?Q^?2PgyR01ki$un#c70Hu%wWa`LsQ9P1J&=_d);Flnl0Lg%~ z0%|bGm5^UUgF1>`xF0+Vq5x$HtEmOcpqfsp>#F^}9Yx-B8lhARuL5Icd8Z(`gyNH0 z%sI1)ml*w{*5KG5qtT4a1502fI#=O|n#`D0(Xnc7)9QQ8DD|fYipU2P143yQ z^;GTwaNBH8CTzR)0Qz7cR4Q_i<$^4n$OF?jaise@a0%V5lp zvbXv2zkB$}&oXN}>+inu%nbt$-`?A}_gD8l@#gT?$4?%UYqdl6%&BYHZ#JdHWc3qI ayYum*KmY#cYj;ySuyt;GeegfyZlpZ` literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_4_2.png b/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_4_2.png new file mode 100644 index 0000000000000000000000000000000000000000..b8431baf889110a1e9934e423771bd6ef3046c92 GIT binary patch literal 981 zcmX9-L5SmI6n-1tS_7U^h(ib0D6>|u}yJ;d3HJrvAgkgViTuwV}(gry6E4EUR6;d}4#UEcS> z_uj|Xw@Pa(XIB7VZS$4&8|gfs7Lm=Qox;`hya4U~m-2$!x|Hf#*OHSIgyGwMy3N z#fHtb+ETZt_5))S+T)2U(3rxl>SEqhNJpbO26JEuK}#9+^my2q#_mZnC=sC2P~*Xo zv968m2_G$8O`C0wqSW;voE_N)sHJAOB725PNqeTE$f2bkQyDeg)v=R=o9jYu8f7or0h;> z{lqz%^`@uM30kFboXzJ;WI?8j8pj!;)KJr9^`6}vc6;$4oQ-)3r8(3?&}lxh(bVCt*9lb2jl^(j5( zoTTi{YWl9}`~Tc|V(Z+l`rC!w`+xnxzjNl=2k(7$N8C^jzck{#yPsDM zw|{@@%B$yZS1z6T{^b?=!o%t5#ap!xvkyuy-1^kL{r0l8`{%vA%=6JVmp}RH-u~II aN&L+p{)_BqAO4)$fz6Gr^&hY9ee^$f6QLUb literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_4_3.png b/resources/g2/track/raptor/large_turn_left_bank_to_diag_gentle_up_4_3.png new file mode 100644 index 0000000000000000000000000000000000000000..f746449c75c4a93693d851d4e536337b0c05772e GIT binary patch literal 909 zcmX9-L5SmI82x5CGwEy{g7gsB93m8q5G04l=8!{lGh-aGOqR()4n0JOShQje5qjt$ zi$RKHAz%+dd#DhwNWdNji4Y-5gbGE16s!=XV8JR2mNkch!}6P9;qiUnyS#UJ@B8@v zg?w`B_ALN7Ie+8yvf4NIbM;y^-~0NvPXKCg|K5YMitg?0?eFi`YPExdgTuqaqoX4X z!|L_=@$oUyYPC3yl_XKq6w_?mw&l8R5R9kOILj7Au`NrE1yKN1X|&tTZkOuy*?}hn zBXu%0lGL8(-fA6645kYWOCcPc@=bbdb62jE2Kszz6|=#n2zT2|Cc$8!CxWkG6AMc{ zd^u^Ba}sS>R2t~oM<{Cnr~n3rSvc;Hq)*eKAY7^HtkYRK&g1bIr76iZTOz@#lwi=Z z#pn)a`hq=@+(;QFS~xf2qC@c{E4KuVQB1yVN!CCejE!+@#krFe!+bMY?NVHXrUpa@ zs6Nm>#*YbkO1D$d%5`sLhg&~GS1Qvqd9o)no-RyGDY3QOHJ5?Cj@)e;?D7b$GrY;u zjLz{LQR-=$XPTp4Z|ZsJc$~-aYO&aEw+KiJ=m6s;xRj9EoawBj!MYu8ddb#bl+(@i za)%lWj`IW|Q!R~QO+l~~bzoFt{i!#cO{PVbmn#tr1+z8WF(|*wjQV0U(2`MS7CFmw zv{`0l`51`+I)Dw}14IBbfHelFf-0fDjiL}0OO*zTgP{nq4223v17s1%<4~xgxQpfk zRD^I7JP(Qlx{7s8!s#(XU!H_!lDK&uZ8kZoyvPo4{f6ihYDgI|Z54vQZAWD<*#-0K zc!ic*x(Pgm$t>O$sjkNLJBsgg!=aNz!#s;NMTW{1uP7)6Q~*L%7K6&}8A!K3TCe$0 z@C^2RF16cQw`=zM7RS0g8;D#aajC*CRA!^MkU=4bMk5ZzBFdGj{QS#}CpSOv!R3Vp zum1V#+Z7ScPhWdb|Mcvq?@!=`y7cou>1Thv^7=dKi!c57_tV>kK{*Cwi ty~gj{!#nT)@Wt7;-kmT1d+WQsN5S2vm+$`aM>i#-JGVbC0cMm9pl3IQv0F+ydlR@g()!d4mdZ_AO#mMTt1)JwY9bN_4QOLl}@KOHa0dl zH!%#$WHMV@Tlqqvz_N@e3W_4>df7CMMx)W`^acYj499W2ST0!x1Ri85TQ29SRkBuR znk~N5mHPwD56n^2n$8@N##BCQNO?;oZJp|w>`_AuI_hX(#KY!1c2FprwY6ZG^%CfDE8vn1SOKLD&@K@cfZ14=a_4W!>uaP!JGot{~(Y zndCL9Xwa&~>Nan7#fB@jeZ?7RUR)tLf+-ewg_d-#Y=}lvZuYdEXLykn#_ed{pRNL2 zfSdyP3XpZ6Y>eyWivy}02u7r~rlzy7Lv$q5Ih`YFMY^T(eO>fTC2HuCjyZE1i=eZL zTr>;u97oYA%T)xirYJ34@78LARx9ZBBF~$S$BV@R0bu~u!Pq`7`h+r~D^syKD?9U= zzp%&4!Tfl#LRlKexqQAz78IJ%dES)drj{(L4_fVEe-MY!aw>o(VWxsx8fjPQZe4Jj zir=jaU276_=aX=`yoCe+6~F|r0bGC~zzhSFNET7uM6QG4iA;gPLR$c@2(b)E0c7M+ zi$#u%yeb+sQS88-;5m>)P-U#D=dBvuwu^m7_x(l`x$}915*ASbww@L2yzG#gM;S41 zFUsz+=C3-VV{eKk3n~X3i4_^VERa=&tyd)5syc1UciU0u&f^d*r<^1q4^RvUC0R5R z++7ikdUrPCx}Cc+MCCBfrvTv0-s`)Ub3UKX+08<}QziKbpa2JNT)C9Xm6es%)zw0wu(r0gzP`S( zv4LUO=H}+s))ro=R9Kb~ML|_%U9Xv@;W$pW+aC^tIG&{GV!31)5O`4JVy#wgG{~mK zwAy^PrwoQ#7@6awJ)3(XjaB)gA>($Hbakq4vPX^>b*tl{k&aqf>K!j)i2#j;rU0&r z4Gb)5m!^aAa!jC%K}!vtxCq4+00lt9Fr!qm3Bsi)kLQmRWmK!U<8RBr=27l%#Ndy z0A&^MI*=AnF2?n7X-L%~!APp@ndvRu7#%5eS?7qRM7OK_Ko>((O&opNHRrywh`Ps# zkLGcy%u#feoc)6uX$NB zT)30vFguwZqas}@aX2oK6_sXmo;PKsrRB%0VY@RL4AVGS&IHh8%v4LZM!F5UX9<2w z4SV&GZ%?CMHjS6dM@Rsu0+;|UfDbSNm}7u)C?c{<bye)uKKn9N5 zEbS#Fx&rHqY$P)ih0dxKq>;#`P>)4{fD$<`KX;+{ z&yyec@bbP2uRQqUom{-XxBKdqm%jY;H+lQx^PB4j|3*KYz1r!&dG4*}pS^zL&^>*P zzxBe84+_%7og2l&ov-5SI~TU!yYt-LhcA9}I{SS;d>C1Ge&TQc`qz+fZoeFV{@)Q* z`9;3Jeeci5_|<2yF@!tJ7v#;st(#xJ`}cRFi{C!}`4Io$Z6f!Ey-WMM-@kV4lm7wt CmYPfe literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_1_2.png b/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_1_2.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_1_3.png b/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_1_3.png new file mode 100644 index 0000000000000000000000000000000000000000..fc57cad5499023aafdd019d5e473485aee2782a9 GIT binary patch literal 1005 zcmX9-QHa}g82|2i*YvKAJ`@*clrsAeHAn_QGRZ@nxuZKGmt)!4hYA@4>_dgPi&C&c z&}@{^%?v68uajVed~p!~POO|?x)9IT;(9rih&!x*X8E3+wE@G>-TrVa59}TH1HfqV!BkyRw}t_ zjjlI1yCrqHir>=*L1Q#_1PUv1X-&k9V$M>@w$5yuLeDM^x>~qXk3#2g(k~F8P*CN; zlCh44^%|LBCp#SwD5B9+K}Qxs{XBpKpkSDm$ruD-k)*?M+mf_XE)Nakpxs8j9>HYu zJWfkFP9X~#RWumY;`Ekax?j<&jVy zmz=2TPpsW(H#!;~qBNDsusB}GfL)L@V!A+Lf4brd@AGU}|aJ!X+oC zc%&9`)}-W4tNx)qIPyklI3csZ=CA^tDe<|A%+$)FWmKG|;k(VC??z!CO-HOKA`egq z2*p{{W4UJ_%vx(aW?S|%=!1b!D#?|KTB~UcZL+k@Gp@k&M0!`EqGBE?Ib@Ki#UPJI zffye@`$qcl(;xWw!m12!|M|-YF=?$Vox6DU#*OB=lUL8A65pe}<5~OXU%&Y*eLw%` z)BP(yy?5m;eEHf-`s?H^d-L)G*gJJ+bJIMY($6{nSzq5gne?;Su%vFqevZPM5z$CD#r+;LjDNuz;b5iF)J6eLd6aS7L8El#Ge_1@4d(O&-*_3 z-uw8>YI^R_Q-=UxZh2|pY&4HWMNP+|o<4td2OtJ#UOTrK(Xp|y@$vCkEH*JQF*!Lo zH8q7{*!1-D%*+g)OePs7B?!DMi>jK{b*)q?)oP7a%kjLuAQ*-rlLDRtNu14Q6Zt$@ zD5lC4u2z?tEv4=19lz4+TLO(`xLHlajSOk3R6}RBN`hOk>>N z$>S-B1C0nevWvin&L5^gJR65DYw5YOKP0-3xxuG;1&G8K{sQQCu zZ{)^#NXUTafGh%KVr&CXx2UYkYksEE)2*TDp)H9{s4P)P)0GU@RE4%K`z5to)BAR5 z=+;KQjrv|Z!BTXFVRO7tkmZW1)(eGJrQ$XkzT@=v_J+eD0zw0-hB3{!&?e*#o$CqZ ze%2Zk+Cy_MYz+>&BQ#6L<1CJ+$)rrDRF2a{sjNiHimgg@yV(jnKkV_Kh?p+N4TUuG zbiK&iWw~9?ZQDlItq;0h7(PTiKn6euFad0UZGb)oD1s!QqK<3}1zm{(je#l;P8tFU zkPJw}QH4R4gq%F;lu=;8qu^N(1;|KPUd4?9T{Y89OKrDHzHbi(K8m!695BUM-ozz~ zR2)hRICGe_!$Nyh>l`>e)E!a@U`Z^Uif4H;FEhoQXc~E|YP9XD@7aUELt&2wG4xJH$Y$kyUM&_iCRJinHJ-5r#uZb05>#dz!2~NCs?Yd2TfB*Dt z^Zm{*)el~mFMfVv`1Ag=NA5jXzWdUjr3cU5eEY`q(Kqhjef8x2wKu=Iys>${xfHx$ z<#y*TG?%=6Pn@_gSbXvceBt-?A9^dt=l{_zlXoUI4&!$&Egt>vqg`_Koqs?5?C-V7 Q$TKW2t}bl8^46vQ0ZMSaDgXcg literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_2_1.png b/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_2_1.png new file mode 100644 index 0000000000000000000000000000000000000000..f3e00c97242228a442a17712cf85a9ae69d30ea2 GIT binary patch literal 904 zcmX9-L5SmI82x5CGikRDL5dU%5}`;AL4t(c90JDO%o2y_WZ5iK$RR?&B1Hllp@$$5 zqXx|(NQEFh^pHar0`@S69D2w~z#={5&_i8w=%HW^3r6XohgtZ|vhcp|<6Yi6y!ZX^ z;7U5b_2w-AIKTYx;$eNUdRom!z5n?B_n!b7@Zh6I_iK7|baZ@t+-NjTPEJlwPtVTI zFbr!po2^!>+w1jMmJvlkRb|7_EX#CVHw>rqd6H%8qNw(JmH~kWMQ&?aXE-EBHskqx zI8kPEeUVzL+~4jZk;eLb+myRbp9~CYYO&X@n1=n;+$@$}Swx2_lL*jh7zq%l*v!OI zAK%P6`xSvo2JLlp6CjlJ02BZn!%Q4^2qK`Ui07{rWjPpZ9OwCTiqe!|J3XPxC?u~_ zl1cX+)(CiOBD%3WUZ~MZPl^G_5scL1Ra!PU%@j>f@uvDTF_YZMig8}fwuclKprb-} z0Hh66fN|5VG^eywF!R2@wW2D>(6vH$42~E{wBP4vhPbfQ+%-0#wTs;<4G(#Yb{XE` zD7w#b13?_As&5#R(P-}b>2#VW$#%W2stN&N0u^HH3>O!Kx}pbL(c5WJIa*Y~dOt63 zHV4$Eah&URC9o_s@|4&;b_Ups#0+`j9*_r=FAKGEJEwczRT8$$Br-=A+kX}TBx l2(PO#b@TMuw_jsF-h1n-&mVvHSFHe-_pdH~z4z%i{{wJfd=mfw literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_2_2.png b/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_2_2.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_2_3.png b/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_2_3.png new file mode 100644 index 0000000000000000000000000000000000000000..45382eda15ba71558ff6e39c8dff9efd90f14aef GIT binary patch literal 929 zcmX9-L5SmI82zT5nRKSE5qhX>z=%EM5Hv{8u;h@{%#s=7PG&bN0VA7%!1NF>hX_3s z4A?_)dkEM=(H?pTl0$HN=wc2zWFamEi{#Klm4H1|>|wwn1$&soZFP z+lzDQ*75CQ0JwE_dh)QiZxnM}DHr?6<$F&7%5d@Nqk9G2+uJLZO678Se}Dhr;NbA^ z5W}!arE+w1RBtpIEX#W*V~I-S8_G#*E3I?waXcFQs#@Sw<5U9VXd*=jT0 z9zPf=!PtlsXO{JrD_^8Bjj!5r-PK6Xq(%-q>4?cdn~m*!+Fj@VZj(v`7&Np5@Kh|Y zv80DDg4%XQpf!WG2D)ER~3 z4N9_U&1FrGcZOmol>4#j&x|NXlhbX{?ke4pF^cRcbJM(^t%Kz*!3C(P zP;Ua+2Fk;@QC%8SdLr1F)>}IM#!Jyep=%~bv?RKx@qsDEj+%AM#lTsGolP>>Wg%Ln zc#WfIjpdqx*izM=X%1Vhaj%z*Mp+as=kv{GgMhGs8enXIi!q_j=;l)Fu5^FhiZ|YT zJ6_)`cBo3@I9IPrWJ9GHljj{-=^BMtd)(_!gK?f_+ob@8j5#Xq8l-2@!?qB1)p*#P zhVCL6t{3TcdyNDD4Zs2L078H%zzPFYKoL>fL7|WGg+hVNLSKMLf?NTl06{9cn)L{GzGKFy4#}ro)q|I9CxxTT(2`!co9ut+f~7(j?SlrCR9=d@ow ze;@zkuT%N{m3sS*|K_t_fBx>S_3X#s$%A)xUj~!6>_6^Y-~SK)b50z*_+mna!Q(<2 O&hDL`JpK6coBsi^REP@z literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_2_4.png b/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_2_4.png new file mode 100644 index 0000000000000000000000000000000000000000..80502709a38cdcacf350a8a67ceedca6852cb81c GIT binary patch literal 943 zcmX9-L5SmI82x5CGwDos$)Q4IBS!5Zhp=WLNOp;9)O4sNGFdl+!L1T8Vi$VIAwt2T z0RtAdNYEmcEm9?ig2C-!&?VNe{kUd0M1umDPPa{nQZd;T(U>Te&ehQJA8^lg$d#(S)HPg_fE)#;j*8d}kH)Hi?fG zF<#_pM&tOpC^c2JV;KErbJXcXgFzAm^XYW8S|K1!pnDiM#HEl_Cro`VwHGyS*$h|i zbUj+0%{HjO;5bhZ6{@5%tRV=NthDv)SZmbjj)$W(PS$e~bQ!Z$+}0_#!Sq|A-&VtZ zeeBz_sK1=W>-Bvk0%!mhfSWY|U<|Op0A)}l)UuH8p>(FuU~LbB(Ipg*(gWH|1$R~R z*UfO#o16u6G+WU{;3=%a;x&9qQb1>f&If;E{)wVK*!7_FAcu@2AnM9!DENM@%Bv(!pRr;tsfK8FGkC304N{$k<5 z!ykD6`jHAR{&(-aOuSVszjXZgmmenb!7oppJA7>uJ!hZ(@D=fEb%D!wpM2u-PoLi` z!zJs_zuvrb;f-5A!_^1>Ub*`93!hYfJO2LmWi&kg?45Iyr@t*5z{A literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_3_1.png b/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..ead34b6ed6e2af760be432862ab9dd70227d2c7e GIT binary patch literal 963 zcmXAoQHa}g9LIlmZ7+ALXBkz?jFMx0$RtW0@(?6Qw#(h>E#opSgANMISkylBAxP9d z6pbuMrx}FNhbnz2l7~KISlEeqs1PMcg))Pj(2YD)s9YWpPxt+Yl+&zrEvMj1+g4UMWeWmYdUT6eSCyWQP zrC;EoC_||ZL<>k8WBaAbkgWN<7FMm9?j&}A4kfCnvUsyXSygVJ3L{+(O?BGU=dPLf z-DT*ac~B^_BvobDIxjS3*;3VBvpKXZzuyl%Z+3K)Bnbjs1G0-TgMu)^9W?)>Wl}&CXhzF1yO*igf-NX(WE+dW#Fizkr{?=9ET`n;dNkIdEPEb4xxCY z7IAh`a~I9gvO78PW@ws_MPLc6LKkX0(U6%|U9^pc(=kSFCk)&;3eaN4iX!p=MSxJ6 zMLWek6K=M8^Eun=K9fF~2(_BrXsE50#?U59cX`GY7+<81Br2|!kwPGYL_G$1JPO71 z_}Mq|e?R?!4-WQaIDh=`z0|zFw{zj@xw{{Sd(Z!{^<3usf9SiHo_w`k)X!Pj&ED|L zqZ?-*zEYI8k~1%SOMUTHqlkXIdFSh&-no4{cj?aYM?2R){iOfk-B&+5$o_fxwM!S< z=C8Yde7}8mK6rACxep)S`{&*T_I~cswdG$MzhVEDe?HE9`R4D*-HWfkn8IOicYo)b I?HjlL2e?<73;+NC literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_3_2.png b/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_3_2.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_3_3.png b/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_3_3.png new file mode 100644 index 0000000000000000000000000000000000000000..a845fbddeff0dc7fcc163ac401c1a618b27f9385 GIT binary patch literal 1014 zcmX9-Ux?du9RJ?m+^ybK?4-H~k<}xzpk-uSlrZAVje0~b$K^)VJmf~Eg$2n&WCi;W zv`W!VqtsEbN`)wW$n6TAGq9+A$k;tp2zWvVK`Rum4>yRT4;4@RnKAf$zh6Et-_Hj= z-|q+OYq^DECyoKY!s<&a8}VF@D>XM2_q+crUIv(g^_Mr#$8=(1VsdhFYHDhFdU|GN zW_ETK!?3xzx%v6|bS9Ib=`7E4k|e0AY#4gET&~xf?Y8Ut`(YT3MsyZ97DOQ-%PCDG ziluC&%GMiVtF3q)qZ?HF1DmI?Je$ykw3#O?m24XHZkg}Y^WC-{?p21NJ&ybw4hjWD z4lD_4=~$rcX&yG4sMEpe zREA4uMS@kxoKEFUTD4fC!IvGO=1F!}al-<^;MrV;l_)`FWS!S5Vx_4xUEK{#Kdc4A zR)5?{a*&cBT>zp4q=hlfbgoUx9ZnDO)xKdzmXCHtDy1@bF-KMNY)j=mLkh}juWk&S za@47h0|yQKWQrlFJk1n1z9>mmRc#cD?P|5tYzD5|-`|g-2m!7GS;y#BlJ{__OBMQj zWgy$bq8C~FqxSHqH%196nPk%G9FdWztje;6AXb!kS*cyE?X}vWAB_4OC<10kNmC&# zjcSxQry_Zc!k%OHI*nn^AB_$X2apFa04x9pU=Lt`0g55=sAM3=Mqy7RL8qa{ft!O+ z1SA2{)2K=#TSTsgx)l`Ka6fnk1RnAtrm1PONY$)d%T_(F90bmA7@$}SF92Oia8_Eh z3B@J#khLP&85O;8y?f;LQ7zz|q2o0K_1lju@GuuRRanVwS%d}kQ?Xw+u}0l9!e zKq$_l63aaRUM@8T1Ex`b0HfRGWm(cRwN%pSY?;Z{Iojdrj*#6KsbM~Y6atwfYS75# zP$0y|&pea3cmD_8+E|m|g@Ze9#N_MMm2;cVeRS;?ZSlP)ADZ5Z%p2Ew7uTO&`t;oC z!=10b{A=9(?7I~C;l)QPRQH+T?@DH=R@(BKr6nD$5n^&qI=40S;bhPXumQw;TRP}6wuaL`|M1ip{Q_YLne zeBXO;^Qd}x=dB$8xP17@{;i^4Eox`0bTRpC_z0i`H$Oc-DD2wW+WPu>sZ`q7*x20M zymaXjhGAPkI%r>iETxt!q(R!8z8xjj(BksjxDiYM7>MNk>p;A^I2HkD>q@5W}FxoO_c=Dq1E z!9^&mK-7V9fc7!IOH})GEfLL3YfY_i;iu?CVaf(i+Eu2d2|Ys^SZd}Olfarq-XaNB zS%hXOUgl{=u@W0s1$I^{Q*jw41* zbtxzJB7J(xc~9-mG8dJ{^IAGdKma{j_gwawc$5J$U-&x2xa&{QTvQ qzg{_e@$y~u*_e3Rdl8%0e!}iQ{QWNd`1D>ugu{cQ{l_=H`09Ux$dzgU literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_4_1.png b/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_4_1.png new file mode 100644 index 0000000000000000000000000000000000000000..eda5cae2faa7e256d7ba708386e34abbaee1d007 GIT binary patch literal 952 zcmXAoL8#kw9LIlseeb1j-RNA!>Vib*AxJiZ90};YI8rjDk7jP$g<{PtBpS90Hb6Tn?302-rhm72csr!A>9YH;=)W-|zRm{62^8 z@Av7Iy~?Q*XHNjYsp_TOYiU28pUP#^djHXXIzSe#yn6j&YBQP4#>PfAo88>p+}hgO z-rmMAESJme?Cg}vzBElllX77#icaGn;z?h1IycE|$z1VQZvoFb9?pI<@gYPe$!U;;ola1qYRaCJ(lZ z^>r-l6sG;+YK)@=jaDi;vJr~P01|+TVS1rp;*O>(x_gan&zSFqAequHF%6D(is4rOnw21%V@ak^6GWJ=UnMHlq8)OJ-j(1X~Fl5V`{&(>jq zhoTInIuI=&ZH#qGl>w=QydKv&Gs9cj5jv2lqQ>IQ3e~A`eN7k|a%^c+$C&%pGIZ9l zkLFRK$dXizVe7oml;w`5^_tB=rxUtv90aq;WVu`-z;z%UjOiDIAuf-p`b=og6>rfT zF73%`usE8oQJyLk*ixxNlx2$6IL;8Iwwf+$4LaRXe~?7+YQ}>qVuoBWRl;siy%z7c zJae&H2?#^2Jit!0CNmbDoH>s1Nk0GrV}13M3LB8IWE= z9R_(43L0qKMu`W$%&P?F(l81guSPfSJpKFrvu~<*|M>IolTZHp(r0&G{Q2yUKRx08a@u_a{cqlV@9@l*`{#tO w4?lU~S5x`$hu5mlIGOzipWmxKfA^!zZQXw3{^fHUDG{m{_jbR1<*i%)16q!kq5uE@ literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_4_2.png b/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_4_2.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_4_3.png b/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_4_3.png new file mode 100644 index 0000000000000000000000000000000000000000..410c4ab88e357a0b8d7171b06ff55371a5cb4244 GIT binary patch literal 985 zcmX9-QHa}g82|2icez_RD-^97q(X2x45MnmJVeN8Zgxku%UC9T=p^TY2FXK&2t_Ic zEJx=83$93n3VFyw9|Cr8gLo9_Fybi{f>fxIgDRa?I7XNqt8fp0GX}r!`}ng~()mPg>1E&*R*1- zUTRvb(-u2jxz{%aku{!pJcU)*tS%JHO3_wG*P!H9R z%p)I7!d#vqsS3@g9AA?pOHtajTGz7rt{VlxcsNXw1OcuC>0opx$MdzlESivAU5T6S-oqu4m;gAjAmmFWC1gzoGBM=jcV69 zzbWY;Cr`t9i`oXw6A2T%bp0Biss;1FPf0ZJkAsBR$NL-9x?L8qa`K~RQR1SA2{ z3&^68C!#<@gC>eScoaMX0uL1t)0Bc)qgr;k<0-vfBZ~a#G(xEst^!@pa&|%VigG~e zF>5DPe^%?woxw>kMx%tx15?DxrCgOOY7$*n1>4lTmf7=LQRq+O5Y5JnAfNzH3<#xJ zG*h|9z#H}UWWuza$1ny1zFL(uO{v#)y3}Aw4oCYu-4{wjk(yQrBo~oMqBe~J4n;zG z{LGo`{YO9W(WM;;Hvj(Z{ggDfx8AtC@%a}wg(vR3u)6gv`u)1wyM6uE2fsdl2A9qX%F5uKM%U@ZiGq<>b3RU%&Ef>)!1LAHH%|&p-X|#wRbT^Lux{Cl21` zsL_1;wQB)!`n{tZakP2mt8=@@dwW;2b?bicOyT1jPljhUgQeqlnZ4b;-R&R0IsNKH dyY<6=8RE{y1?T+3e^N`ZeRgN->o<2l{U5kXtmOaz literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_4_4.png b/resources/g2/track/raptor/large_turn_left_bank_to_orthogonal_gentle_up_4_4.png new file mode 100644 index 0000000000000000000000000000000000000000..e5d2c3176b4a42c09165384d956635ed21b8e2bd GIT binary patch literal 1007 zcmX9-Ux?du9RJ?+?s9)DGZ!BtnHgL^-9hJXF`y+~`BqB6m`xN`=Gy%ou#W-!Gq+@8<)b z@AsXvXTH)eqmt&Pp8uiLkj}0D3Y#cOw%Y9i`8nq+4OwB8-}Ctn4y8^K$ey=nPe`P z$`|NTnXA_1MpJ9G%}!A64;+EQRBp+Ta7#_uI$1ZF?V`}Gs-310?v#e1Ga30J0U8B) z9&80`7+AZU=rxk#4uOU=8f)m#M#xVC$N(CK8Ht2N5H?9V9JejYJK1c{vi9qB)NT_@ zGR@<(oZ>W6G$_?#bel74LeZ5fEyd|*UYJd>1TCgHg_3kOV+ck`F4eWVXLy0-hm~O1 z=ug@S9+C>+Sx6Otv@y1hi%l}q=8Zrt_f2PH`)FIHk~&M|MXIcF4P9uNN>J2$Rde7L zNA2n)aM8d|Bw3PD88*ucc||GfdM%%CmdovWJ@CAKw>uh*5D*5CRg7sQgchN6sBB*- z4KmI!-x}H7adUXso1i5skzjFLOr;fy);Z3UTcMoklbCgK?h+O~OniVQDEl zN7V|vTT)uJ?2c>o+O=WNACLDD51;~=05*UNumdo_07Z}mR4|e2ps**CU@%bO!4n~r z0V#kC9F-a5$jHl~P6>q$+zOrrNdQ&GayoA1sfsN&9KF>l27x;q1}M@ZvcMFUcpI0U zl;)8}$l0TeJI=Qz)y|>UN4*i51U7|yYytZ*hfyaK|eK{hZtgSwN?$P(Y{OH7yZ|=Dx_8;2kY_=pB|grdiCTp+`H6P@%w8pUBzDi;Qf8+ z`j+(cLofWXa-dzgyNmsJvGweIp+bCn^Xu&kZ{Pgw+9CEG{rv75i+C?YXhA literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_1.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_1.png new file mode 100644 index 0000000000000000000000000000000000000000..2970737015d17aab083811b14b638ed9b29feeef GIT binary patch literal 995 zcmX9-afsV=6n=NTyYzOQl&HBgck7PG<-D8}tPmk!g))Lh=pbld zMd~OTj>^K!M*qlRWr6jN!$s&HVFo;*gCO0g5~P2WS;mke6^fqnGh^_*_xS#K-v{4& zm$tVG$B#XE3;>RAo?G8Z=9#1(OQ(|l{b&0x0;FL3&E1WJ&dtru&(Eh)sfC4w#l^*? zr6ml*(&_Z_@^UVp&oc}y2)rzds#?-@tyZhqcB|9z!>}L6lj)S9f#*OHS4yR9r9xB< zy58VyM{0MJZlL#~#&F~c6jtO`G%;ru2}>ngI&)AH0=wAjXz^iv9J{kgSinJ{pvr?K zV{Hu!8ks>mJMH0UOrxoSjx2=2Jb(nCV3?N4m^f~cq|0#!l5|)u4@~nxtA&C9XR>)d zM@s~!kOhq@nv803x+By)vDuZ~p5n)4g2m}Vo|7q2WlNf%)unn%Y5AHTnPJ?F#_i!O z$ncPrAy)>%0Mf$PR<6(?O98J%#l}!~Csv3KBr2=2c(p(^id0UQF1FhB_;0U0{-Toex^5;O*yJop8OB|tJD zEr%KmawX(fP_K?+7aj)Bf+#>y!YXRctWr&@(00{sw-!a-cpRZb3oip>tngM&atXyJ zwV1OeC2v~o&g|ZiKSYBGnFW@>3UsE#6BU^;%A#df+@{&}no;PD;}A`UtSBNMPz(qq zS=1A`N5E@_Ga9ju{Rn!mCzMKZrJ@>!#?UpEwt2=Am_Vfa5;ZR7kwPGoL=J;|9z|ku z{OqZfKOg?U$2(gxtp5JX`w7|GTwmLLZtvR9YmbLdrx&*;=FJxZd+ix#{_dSCC(qwj zp8XN~VCS92w;Lzk`e^@;E${8S^Y_0vd;KSSdG@+<@y7F)w{E|bzWKwy74x^XcT=lh zp1pQrZ|_3?6(=jKer4RbZsyN?e&y3|uJ)?;KG|=lWgt(VWY^2L{(5=u+^Ng*{i6>r p{CaQt_iL~IbL;$fPyKf__eA})d#Szqbz%-SH@4Pqyz$<}{{hoBtA_vp literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_1_1.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_1_1.png new file mode 100644 index 0000000000000000000000000000000000000000..1888d21f2f58e188627cfca0eec9b290cc15c74f GIT binary patch literal 1009 zcmX9-afsV=6n=NTyWFjw0V`Bjv2y(*LeL6f7bJf~&5iENxZEy-ssS?=T){FTWY|du z8CEQ_j5vGPgK`!Ovy8y{$0@`#$*I zySBZRTRnFC7yztpp4!-n=6Y24axCh5505?rh{5*hvnL}uH#avwKOc+578Vv37Z;b7 zmM{!kUS3{VSxIIx8H&ns94m^vqDY#iRw|W7qt)ryz24CCf-t1Az%n54aY;%Pi|JB1 zTdgsTrqJ%lT}KBVB*cY9Yr-QHczj z%nE5nCUPp7*D1wdv?f=v_6f~JF$_EYY&1o2636LeGMCPXWL9AqjTfqNw5;5z)%)#^*K@-$3o?&sBCgA6qewQ( ztW_1e%|hSOM^4ip^}_H0Vgd318h`;{0rUYT7@!COhsqkVOyrFO0#pj>EZ8~l1VADn zHHm5zG6iH8(V&Vv6CMRm1J6NTz=}#zFOhX4*EW@Ix8k~%@4G0{N)>=A$5|sOm}%K2 zRF5$N$qGx|X=5<6$7mD~382$hE{jWSx+qfR0&nO=v#xioy4$mSuZO}h&GX0xBXPM{`*Y!gTQbIf_e*l$Iq#h)-v4U1xpQ{-X?^4Re4vY8KfS-RwD@5|tSH~evS{LJdRf84EKSo`FcXYiwMfA~Eq&(5E|s_fm5titBWt&Q7nocs8H D*BiD; literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_1_2.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_1_2.png new file mode 100644 index 0000000000000000000000000000000000000000..1888d21f2f58e188627cfca0eec9b290cc15c74f GIT binary patch literal 1009 zcmX9-afsV=6n=NTyWFjw0V`Bjv2y(*LeL6f7bJf~&5iENxZEy-ssS?=T){FTWY|du z8CEQ_j5vGPgK`!Ovy8y{$0@`#$*I zySBZRTRnFC7yztpp4!-n=6Y24axCh5505?rh{5*hvnL}uH#avwKOc+578Vv37Z;b7 zmM{!kUS3{VSxIIx8H&ns94m^vqDY#iRw|W7qt)ryz24CCf-t1Az%n54aY;%Pi|JB1 zTdgsTrqJ%lT}KBVB*cY9Yr-QHczj z%nE5nCUPp7*D1wdv?f=v_6f~JF$_EYY&1o2636LeGMCPXWL9AqjTfqNw5;5z)%)#^*K@-$3o?&sBCgA6qewQ( ztW_1e%|hSOM^4ip^}_H0Vgd318h`;{0rUYT7@!COhsqkVOyrFO0#pj>EZ8~l1VADn zHHm5zG6iH8(V&Vv6CMRm1J6NTz=}#zFOhX4*EW@Ix8k~%@4G0{N)>=A$5|sOm}%K2 zRF5$N$qGx|X=5<6$7mD~382$hE{jWSx+qfR0&nO=v#xioy4$mSuZO}h&GX0xBXPM{`*Y!gTQbIf_e*l$Iq#h)-v4U1xpQ{-X?^4Re4vY8KfS-RwD@5|tSH~evS{LJdRf84EKSo`FcXYiwMfA~Eq&(5E|s_fm5titBWt&Q7nocs8H D*BiD; literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_1_3.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_1_3.png new file mode 100644 index 0000000000000000000000000000000000000000..1888d21f2f58e188627cfca0eec9b290cc15c74f GIT binary patch literal 1009 zcmX9-afsV=6n=NTyWFjw0V`Bjv2y(*LeL6f7bJf~&5iENxZEy-ssS?=T){FTWY|du z8CEQ_j5vGPgK`!Ovy8y{$0@`#$*I zySBZRTRnFC7yztpp4!-n=6Y24axCh5505?rh{5*hvnL}uH#avwKOc+578Vv37Z;b7 zmM{!kUS3{VSxIIx8H&ns94m^vqDY#iRw|W7qt)ryz24CCf-t1Az%n54aY;%Pi|JB1 zTdgsTrqJ%lT}KBVB*cY9Yr-QHczj z%nE5nCUPp7*D1wdv?f=v_6f~JF$_EYY&1o2636LeGMCPXWL9AqjTfqNw5;5z)%)#^*K@-$3o?&sBCgA6qewQ( ztW_1e%|hSOM^4ip^}_H0Vgd318h`;{0rUYT7@!COhsqkVOyrFO0#pj>EZ8~l1VADn zHHm5zG6iH8(V&Vv6CMRm1J6NTz=}#zFOhX4*EW@Ix8k~%@4G0{N)>=A$5|sOm}%K2 zRF5$N$qGx|X=5<6$7mD~382$hE{jWSx+qfR0&nO=v#xioy4$mSuZO}h&GX0xBXPM{`*Y!gTQbIf_e*l$Iq#h)-v4U1xpQ{-X?^4Re4vY8KfS-RwD@5|tSH~evS{LJdRf84EKSo`FcXYiwMfA~Eq&(5E|s_fm5titBWt&Q7nocs8H D*BiD; literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_1_4.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_1_4.png new file mode 100644 index 0000000000000000000000000000000000000000..1888d21f2f58e188627cfca0eec9b290cc15c74f GIT binary patch literal 1009 zcmX9-afsV=6n=NTyWFjw0V`Bjv2y(*LeL6f7bJf~&5iENxZEy-ssS?=T){FTWY|du z8CEQ_j5vGPgK`!Ovy8y{$0@`#$*I zySBZRTRnFC7yztpp4!-n=6Y24axCh5505?rh{5*hvnL}uH#avwKOc+578Vv37Z;b7 zmM{!kUS3{VSxIIx8H&ns94m^vqDY#iRw|W7qt)ryz24CCf-t1Az%n54aY;%Pi|JB1 zTdgsTrqJ%lT}KBVB*cY9Yr-QHczj z%nE5nCUPp7*D1wdv?f=v_6f~JF$_EYY&1o2636LeGMCPXWL9AqjTfqNw5;5z)%)#^*K@-$3o?&sBCgA6qewQ( ztW_1e%|hSOM^4ip^}_H0Vgd318h`;{0rUYT7@!COhsqkVOyrFO0#pj>EZ8~l1VADn zHHm5zG6iH8(V&Vv6CMRm1J6NTz=}#zFOhX4*EW@Ix8k~%@4G0{N)>=A$5|sOm}%K2 zRF5$N$qGx|X=5<6$7mD~382$hE{jWSx+qfR0&nO=v#xioy4$mSuZO}h&GX0xBXPM{`*Y!gTQbIf_e*l$Iq#h)-v4U1xpQ{-X?^4Re4vY8KfS-RwD@5|tSH~evS{LJdRf84EKSo`FcXYiwMfA~Eq&(5E|s_fm5titBWt&Q7nocs8H D*BiD; literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_2.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_2.png new file mode 100644 index 0000000000000000000000000000000000000000..946531cb66a1d5fb161dfb78b6528d1526412d49 GIT binary patch literal 1201 zcmX9-e`phD82;MYUTp2+h%BQS+*ojDJ?+6xc9Tp_d(~KO^lGn=LB>wJxlA*6!>eZO zu!n{cO2*C^Yt-oCj4sfC>Fm1D1--$!RgBvWJB{PSI0D8gGf1WdJN*_Bp7+;3?*q^C zzN7tp-uBjxRscYI@5Y{idfi!%K3h{g7xHJ10MG>b-x*wA9~&AP8XFs%nwl0YSkTB3}e!n9a zL_-P@iF)D*E}a$fx?C`$rE-eF5uc|`Vx6iF)kG{QlapaakNXN)$(o5&tkhi9@VbD2 zgAffg9!X1x9<>+Kj#|M5D+H_wa9)GZa09>rARvfjx2rCfhG8j>XOiP)0)e8c-b*H- zuDeKwn|2Z$>Jc!ng!@!d)I4&631`??o=+8ooE1PR7vXh#c$^g}zr;upE|L_IIVoqV zh7~g_>C&8Tr-6e9&Hz9afN2Pobb7OxU#BJ07cI%Ds%F4R4tI!@E9AwaK2KU?@-lCR z#bR78XTnuIK4)fN*|0k(4EK>#fM!BG9~H$!D3pyx^<>h_n=$!BkAm zXJV$2saOWAl_-{lIRGsHVcm;Jo$fhYVI@&6Q;GO<$b|yq_w&J^s3;Oigef9UlNpB8 zSz?yMD?T?AP^e-sLBbpjO}2jg)XKI8&wgNNppOS@Z(skg-V41w>jppC`_Ezafbr_0 z=4p6!|Aif27|U(e%S!UvmS3EAK1bIK^ma}?>b*0!?TNMNgLd)c%}X~oAK#8S{@4aD zqi;Oa?i}p6wF8jd>01_cq?Ytwmct8rp@ z#n6d2qlM;ivVWpy>mi$e{J6Da49et9N$JQ_Z zYW)1^#>?cOestZ^{eK_2J7`;d>gyKq;;PdJHWHtv&t7~wI^583ZA(|lYg=5`9rUj6 K>p9cCdEfs#Hx!Nl literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_2_1.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_2_1.png new file mode 100644 index 0000000000000000000000000000000000000000..d8f2a4228bf7fa559fb8f5d7a88038c81bc58807 GIT binary patch literal 1213 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 TZ%(wO1pS)_HeKHM`Un35o2l`W literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_3_1.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..3cfd613d96cc619dee91b46dd14094c0ee9bd525 GIT binary patch literal 1205 zcmX9-eQXnT82&-G-9ErWYIX@VcClzB7wDE_9`Pi{IM@LPJH{;*s9NC?8ZCN~1Da4- z4V4r)cL`jiN?)e$3}9ghF=` z37E~=2&;p}T)ds~I#~&KhX_%n!1Xj6G@N6ND)4g@Fvny z+6d*$s8LQ9r?V&xtOCG%z#arn6(JKCn{s-xv}CxIqO4Wa930_st4P`cEUvhzq{w7s z!3c|mm|W7sm27O<&|xWuT1hAFCP*L61O!15#dsi)Qj}~WVWiW=iHS<30)b5e&KN=@ zQ6^&(^0=?aL`oj59LQAEiE64mQ<#P=IEs=O#@ZbM?h+|V=J<%Wwk()ZqGQRFnKP|Km>i98uDw= zP)3g$IlXM=V6{kc983df0tjnfL~3+TU<(K1r4kvBJ%OChGairN_lv=xM7YAFD@GGK zLu5JE1do^94(PSRkQ2rUn5Ln@)sCNB-16Y@5A5F5BY+h*r*_nOaqX(EzRd@Ji*fH= zY@cJ<5B1T#`%eD&wfiqpTE2AN7nA)fj%+`$ux{C#&8vUCafQ_eyC1dx+*Q((#ykDcziKDmSa zMZJ$`R|l_g18+~xA3h0(ws{wHpF8|utCm literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_3_2.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_3_2.png new file mode 100644 index 0000000000000000000000000000000000000000..3cfd613d96cc619dee91b46dd14094c0ee9bd525 GIT binary patch literal 1205 zcmX9-eQXnT82&-G-9ErWYIX@VcClzB7wDE_9`Pi{IM@LPJH{;*s9NC?8ZCN~1Da4- z4V4r)cL`jiN?)e$3}9ghF=` z37E~=2&;p}T)ds~I#~&KhX_%n!1Xj6G@N6ND)4g@Fvny z+6d*$s8LQ9r?V&xtOCG%z#arn6(JKCn{s-xv}CxIqO4Wa930_st4P`cEUvhzq{w7s z!3c|mm|W7sm27O<&|xWuT1hAFCP*L61O!15#dsi)Qj}~WVWiW=iHS<30)b5e&KN=@ zQ6^&(^0=?aL`oj59LQAEiE64mQ<#P=IEs=O#@ZbM?h+|V=J<%Wwk()ZqGQRFnKP|Km>i98uDw= zP)3g$IlXM=V6{kc983df0tjnfL~3+TU<(K1r4kvBJ%OChGairN_lv=xM7YAFD@GGK zLu5JE1do^94(PSRkQ2rUn5Ln@)sCNB-16Y@5A5F5BY+h*r*_nOaqX(EzRd@Ji*fH= zY@cJ<5B1T#`%eD&wfiqpTE2AN7nA)fj%+`$ux{C#&8vUCafQ_eyC1dx+*Q((#ykDcziKDmSa zMZJ$`R|l_g18+~xA3h0(ws{wHpF8|utCm literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_3_3.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_3_3.png new file mode 100644 index 0000000000000000000000000000000000000000..3cfd613d96cc619dee91b46dd14094c0ee9bd525 GIT binary patch literal 1205 zcmX9-eQXnT82&-G-9ErWYIX@VcClzB7wDE_9`Pi{IM@LPJH{;*s9NC?8ZCN~1Da4- z4V4r)cL`jiN?)e$3}9ghF=` z37E~=2&;p}T)ds~I#~&KhX_%n!1Xj6G@N6ND)4g@Fvny z+6d*$s8LQ9r?V&xtOCG%z#arn6(JKCn{s-xv}CxIqO4Wa930_st4P`cEUvhzq{w7s z!3c|mm|W7sm27O<&|xWuT1hAFCP*L61O!15#dsi)Qj}~WVWiW=iHS<30)b5e&KN=@ zQ6^&(^0=?aL`oj59LQAEiE64mQ<#P=IEs=O#@ZbM?h+|V=J<%Wwk()ZqGQRFnKP|Km>i98uDw= zP)3g$IlXM=V6{kc983df0tjnfL~3+TU<(K1r4kvBJ%OChGairN_lv=xM7YAFD@GGK zLu5JE1do^94(PSRkQ2rUn5Ln@)sCNB-16Y@5A5F5BY+h*r*_nOaqX(EzRd@Ji*fH= zY@cJ<5B1T#`%eD&wfiqpTE2AN7nA)fj%+`$ux{C#&8vUCafQ_eyC1dx+*Q((#ykDcziKDmSa zMZJ$`R|l_g18+~xA3h0(ws{wHpF8|utCm literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_3_4.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_3_4.png new file mode 100644 index 0000000000000000000000000000000000000000..3cfd613d96cc619dee91b46dd14094c0ee9bd525 GIT binary patch literal 1205 zcmX9-eQXnT82&-G-9ErWYIX@VcClzB7wDE_9`Pi{IM@LPJH{;*s9NC?8ZCN~1Da4- z4V4r)cL`jiN?)e$3}9ghF=` z37E~=2&;p}T)ds~I#~&KhX_%n!1Xj6G@N6ND)4g@Fvny z+6d*$s8LQ9r?V&xtOCG%z#arn6(JKCn{s-xv}CxIqO4Wa930_st4P`cEUvhzq{w7s z!3c|mm|W7sm27O<&|xWuT1hAFCP*L61O!15#dsi)Qj}~WVWiW=iHS<30)b5e&KN=@ zQ6^&(^0=?aL`oj59LQAEiE64mQ<#P=IEs=O#@ZbM?h+|V=J<%Wwk()ZqGQRFnKP|Km>i98uDw= zP)3g$IlXM=V6{kc983df0tjnfL~3+TU<(K1r4kvBJ%OChGairN_lv=xM7YAFD@GGK zLu5JE1do^94(PSRkQ2rUn5Ln@)sCNB-16Y@5A5F5BY+h*r*_nOaqX(EzRd@Ji*fH= zY@cJ<5B1T#`%eD&wfiqpTE2AN7nA)fj%+`$ux{C#&8vUCafQ_eyC1dx+*Q((#ykDcziKDmSa zMZJ$`R|l_g18+~xA3h0(ws{wHpF8|utCm literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_4.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_4.png new file mode 100644 index 0000000000000000000000000000000000000000..37be45e74c1a383675b97be1ac78a84125bd7224 GIT binary patch literal 1109 zcmX9-Z)h8J7=HV2*FPK4WiDc5Q8GC2kbq}*lv7W=ZdtjlS9^mDZhFHLvypXYdxH$3 z94ydKBi=9{vNheJoFm(gHefq$Gt3B?)EV3%m1TI)AaM(>xHw{0)_(YzF?inhdEYPZ z^Wk~ksgdE}mfjb70bt9}-oeopPqfO{-O=isj~*=pbil~I1G`&mTU%RudwWMmM`vee zS6A1jO`9+b>+bIE>FM$K{eF@Ruq-18oGgo~s>I{*bUK^QTcy&H<20I0G5`z>Jl7|R z?nuNJjRg`(I-TKjd8trT%XYF_Ggtx((R~W%(Lz35#DH zEGibgq}$JU0=$ow@SsA3G*Z@SHN(bDE>#eWvSc}7ALR`M{j@-EG9@aklHe0rDQhW~ zt(BaVUC&k5iY^A+0(ipUivg}`=0*8V$XK=6S*`Q{HHhNQUT~%obF^ zj?0y_S~KH~VtUOsQLW^1Q#cVKsW8Jv1tBTRnP@bhOct|Q+p?-lON~YYfmZ=MjgdJQ zTkr~HB3xw?HPNU?3k`j#nXhkD)=(eea#0>n(B~J3fK1aW$0wxLu~vbEo zw7g*;V||S7;SHZ;;fh1+4bf~y3v21}hE+wC2JQyRhXn&Jk?}8?9E&MrAWj9+3~91tkqa#G zL_Oq3k`HM(%8i_urG;Z>@BKRW$qYSxV_@gq(FYsEwc?Ri%$;Yx{q*p5Yx>gY#H}|j z>%T4klDx3(*~in*xA(e$yC z^UW)#E?imOzwqAdF7l_Vhc@O!Yiy6O@9MQf(sw_&BFC0TcU(B~`sBjxJ%!bYGso%l z!u#j8e!brkzWi_E^hE9CC_nHS4rAi{6?W|A->c{Q|2*`^?M_v`^+Eov=bo`nt{=R* z;|uZnqjRovmTbEZkp_vF=}iNkTab3#hoBK6RLJ1KRHK}jVW8*SW~xCVRQ-8#@Vx)Nybrw3 z^Da+Lgmw%L4*~#ojPDIF zOuNwNlsz=?^1v4b{sh2Ogv|RwMJ!ULB{Q6E$XZLSz*P?SiX<8j;ps3{5Sfz9n@O>r zm7999RnB%y9X2Z-FNxt{f{fBkoafV`n2X1Y>2x`tHw~jvtF>A!2v7-NS%fHfm=elY z@o0ldH6xlGFSXQKyJ&CMJJ5}LJfzPT@&|Z4C{mQnaw)-CmMEq(>xH6KG20Cq2rMG= z9!2o0F+7)`^%P&qMb~wuUe4L|O1pg>(g1}2cY_Lm4#2wO2LwO|90LVr(<2m-@>O~d}W>;rRz67n)$YWa$n*`iaBU6EA(z z3jI3%^4FE-#?)P31UK+fb92j;;6A+jp+~p=+OxKIp4PERX=d^p?fl=PyWVyWE*j_G z@zs)thCkhX=*VJv@rSvqXOz>% literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_4_2.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_4_2.png new file mode 100644 index 0000000000000000000000000000000000000000..bcd4f8d788f77b439fb305353fea5cfb677af9ff GIT binary patch literal 1108 zcmX9-Z)h8J82&Z=b8XWtjDW$O7%{LzPYvbJb6oYD*O}FGz1kb5E@jtwZegZy&MRhZ z(9>ovmTbEZkp_vF=}iNkTab3#hoBK6RLJ1KRHK}jVW8*SW~xCVRQ-8#@Vx)Nybrw3 z^Da+Lgmw%L4*~#ojPDIF zOuNwNlsz=?^1v4b{sh2Ogv|RwMJ!ULB{Q6E$XZLSz*P?SiX<8j;ps3{5Sfz9n@O>r zm7999RnB%y9X2Z-FNxt{f{fBkoafV`n2X1Y>2x`tHw~jvtF>A!2v7-NS%fHfm=elY z@o0ldH6xlGFSXQKyJ&CMJJ5}LJfzPT@&|Z4C{mQnaw)-CmMEq(>xH6KG20Cq2rMG= z9!2o0F+7)`^%P&qMb~wuUe4L|O1pg>(g1}2cY_Lm4#2wO2LwO|90LVr(<2m-@>O~d}W>;rRz67n)$YWa$n*`iaBU6EA(z z3jI3%^4FE-#?)P31UK+fb92j;;6A+jp+~p=+OxKIp4PERX=d^p?fl=PyWVyWE*j_G z@zs)thCkhX=*VJv@rSvqXOz>% literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_4_3.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_4_3.png new file mode 100644 index 0000000000000000000000000000000000000000..bcd4f8d788f77b439fb305353fea5cfb677af9ff GIT binary patch literal 1108 zcmX9-Z)h8J82&Z=b8XWtjDW$O7%{LzPYvbJb6oYD*O}FGz1kb5E@jtwZegZy&MRhZ z(9>ovmTbEZkp_vF=}iNkTab3#hoBK6RLJ1KRHK}jVW8*SW~xCVRQ-8#@Vx)Nybrw3 z^Da+Lgmw%L4*~#ojPDIF zOuNwNlsz=?^1v4b{sh2Ogv|RwMJ!ULB{Q6E$XZLSz*P?SiX<8j;ps3{5Sfz9n@O>r zm7999RnB%y9X2Z-FNxt{f{fBkoafV`n2X1Y>2x`tHw~jvtF>A!2v7-NS%fHfm=elY z@o0ldH6xlGFSXQKyJ&CMJJ5}LJfzPT@&|Z4C{mQnaw)-CmMEq(>xH6KG20Cq2rMG= z9!2o0F+7)`^%P&qMb~wuUe4L|O1pg>(g1}2cY_Lm4#2wO2LwO|90LVr(<2m-@>O~d}W>;rRz67n)$YWa$n*`iaBU6EA(z z3jI3%^4FE-#?)P31UK+fb92j;;6A+jp+~p=+OxKIp4PERX=d^p?fl=PyWVyWE*j_G z@zs)thCkhX=*VJv@rSvqXOz>% literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_4_4.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_down_4_4.png new file mode 100644 index 0000000000000000000000000000000000000000..bcd4f8d788f77b439fb305353fea5cfb677af9ff GIT binary patch literal 1108 zcmX9-Z)h8J82&Z=b8XWtjDW$O7%{LzPYvbJb6oYD*O}FGz1kb5E@jtwZegZy&MRhZ z(9>ovmTbEZkp_vF=}iNkTab3#hoBK6RLJ1KRHK}jVW8*SW~xCVRQ-8#@Vx)Nybrw3 z^Da+Lgmw%L4*~#ojPDIF zOuNwNlsz=?^1v4b{sh2Ogv|RwMJ!ULB{Q6E$XZLSz*P?SiX<8j;ps3{5Sfz9n@O>r zm7999RnB%y9X2Z-FNxt{f{fBkoafV`n2X1Y>2x`tHw~jvtF>A!2v7-NS%fHfm=elY z@o0ldH6xlGFSXQKyJ&CMJJ5}LJfzPT@&|Z4C{mQnaw)-CmMEq(>xH6KG20Cq2rMG= z9!2o0F+7)`^%P&qMb~wuUe4L|O1pg>(g1}2cY_Lm4#2wO2LwO|90LVr(<2m-@>O~d}W>;rRz67n)$YWa$n*`iaBU6EA(z z3jI3%^4FE-#?)P31UK+fb92j;;6A+jp+~p=+OxKIp4PERX=d^p?fl=PyWVyWE*j_G z@zs)thCkhX=*VJv@rSvqXOz>% literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_1.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_1.png new file mode 100644 index 0000000000000000000000000000000000000000..0d2b4301ee7607d8d26ae4c52364f35ca34ab970 GIT binary patch literal 1153 zcmX9-eQXnT7=GE;jSVQVh6W0$Sf%2{9Py%Oa=3%tu;9(z+-(%rkP>cKvPy2rflaJQ zhm|zgKW?GMnpD%^!5X+>17ta*#2OkMSmP-hc6iZ>#Z^OMLuxX{z@H@~&-?Yy`y|iv zzQ=ld+{@e6v;n~K9oxJ5>h-019Bgf@=a>JyISbGTz1{uW>f@3nOBxy)8XFs%nwpxM zn_F61Fbr#LZC$!_smhj398L=#^zD5{V=dsZ2)C=ci4xTC0%+Ff{O7yVq+C z1RTK-5slG_B%jXsvN^e6#7bqA#W4@vE^)T7$DxR>luTZTu(^b%kde%(XvI|Lt9iE_ zd^iLdPy{S3VY!&4n6}mmc2pry&4(5hgz`=R9>9lTlEo6X+ZC5frRfViKjrrq!{Ixr z6w2l7q}9pT2;M>aTy6>Xgh^4MV)3bT#>^YF z5(7RClLbrI=THK8GQ?<6A)EA1Y2jinSt;ggwL6Fb@BqjF3V;SM1yIHS)xonUBqL2l zW|4P+L_(Ya-3=xWNB|_+P>e(>kMsa4M3Je&BjYLHSn%*zK(vK}cwBL(RWX~57=~7< z7^u!=_X8PfXA~Q+I()iIGHIpi)oQ`)e4?l zEpFtsikU~X62);y2V??5buXfIy2r3bLdkNON+updE)-a=R|o{eP)H()2t_0qQe(*+ zM@;j0#p6Ui2MW7Tl0-U#46c6s)C=u*AN|0gz8(R#%+0=4?};5m zrUg`d?ntqTPLIDblA3&S;9kf1SAT0cynEN~JNs7-K5#E^8{bwR(gVbqo)bOCF72D$ zxqVM%c;yr7Pltwo__F)+&RgTX{~h`0@BixW1$y?q@$VCZA3p5(=Txt@*w=czd-GlPdh-0t zXj|Ji2Rlb+y2olAWBc~4xqV!|cQUnV<%9gi!z;!!#ld&}y6m~x7Jc{N+WQSN&sYyH UU#0J<>j*ox^>lsFx%d750mSe6g8%>k literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_1_1.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_1_1.png new file mode 100644 index 0000000000000000000000000000000000000000..0059c140827428de36994d99f915dd7edbc4ee9e GIT binary patch literal 984 zcmX9-Ux?du9RJ?+?s9)NiYpp4us8|^37UsI#2GNBxe;%1mt#4o5-?)WB7F!WN{4-j ztiv+vh+H4~P^4fs%E+;L-ZVy@QeDl?f^T|A!RCYO)^joWEM*u0y%{DIh!>c-fDw7ksZdhXxtjk zg0uh`74STeC7>LPYvNLy(gMMZa@C>bPMi=OD0If)h@wPSb9~DXJC+)ijX~WSdF4q^ zpG6)Th3O1O(K(jO3t~}KtA^1i7TeWo&}>G&KkWA>lL-RC1geg)t+d!7)E=E5ij|S( zj*Fd%)1S7-M}rw!qtj^)$0ahW(u~3LmaJ6tWLc?Qt#w=NIEUWPJwQe z1h1lY8u_kg4}!*c5KgCuNC3zISO5-y2har=VSo}SA}U$Pb5T4{C@@*53E)c*D}Yo$ zCXT8sauwtkP_Kew7aj)Bfh0wiAie$Sy0(hUUuw)TeCY}EegGH9HQxvlV#)siUFY{ zi%KH*2t>Km7>&3_{SmBQPt-KEP%ug*lV!>rQx{lIWCNM$EA%**MLLOW3N={d3n-G4 zIrf0Bp4-Ed$3VXt%R=8OM)@t79>b@|?h z7iyp1zHs+#^WS&&)!P@lm#+Tz&6gkivj65bdqVC%Z=Am8e0$^PuLR-r^;6e={2D*^ e#!q7qsbil#AwB;4`kllPY@XTLxcSOkm;MLl_NprY literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_1_2.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_1_2.png new file mode 100644 index 0000000000000000000000000000000000000000..251b76afe75fea945a125e6a791ae66eb94d39d6 GIT binary patch literal 954 zcmXAoL5SmY6vp37XC|E~GdUD37&V6qSqKuBC{c5WyP36)(aEw|DOiRG5i3;8Ak1@}-S!XR__n`Pm9@9|yU@9@3% z{^kA3_SOSi0IgKU~i z%i%j+xj#^cp)rn~+1wLptjZU3sbp12SEG6cdu)qgr#c?!$*8qRywhb=AwZ>}DS)eB zeH{xOeA+LjV*)K0l&a{=MJOr*$N(ya={Rl?giBE#&mYV3s9v91)}3Atg(1Nf%R-5f zNnWKYI$gC`&E<`*X!}xosCZ*FNa`d% zkLD3xNGM~vJ`-E>nzv{U zm+mATEY7BAgCvU6nEjOo7fqTY#Vfi3~^qq?eGx zB2Pv^1C3iK@!)Ro97rNmWvror}=?JVZvZ2IGWO`98Bb7uJg}N*X1Qbiz@pF$B z{<-@D*RJd<@XTMoy_T8R_jWH_J@@g+N9T8LJ(kb?hh|&XU(A2{@`d+)Ke}=I?_ZvN zK wyV1MfUbCNnc23&|5B*?HpCoS-?!O5?eex^)+4-9fW=z<-w7>h!#aG_>AMDnbu>b%7 literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_1_3.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_1_3.png new file mode 100644 index 0000000000000000000000000000000000000000..47edcc47325f685cf391031e46b48e3bf43fa00a GIT binary patch literal 931 zcmX9-L5SmI82x5CGwDoSI%^LFa|mq3;6}+p4uOpjH8aE^>tx*wV7z5@8NK1gy}72o);ZW%p1thl&IKW>|RN_wg?89p3vs zyL&2LJ9yy$0Ir?9b#(9QmUCFGl>6TYyET9c+`V&lT+*$rt?ljYN~N;1v$MOqySKN8 zVOX_V-QVADwpuNQp#_0g6iL_HrfJx=?RlfgBudj+p0A67p@HW>mTK*GquV8VeR|+< zo-dClTAY~E%vmf0fx=X-W=Ks-C0v~xnasH@B%V5*82QCul?R)3D&n9~(Br{Xu(5$9 zPJKRZ6jL0nXjEwE(nTn30muLvh8gv`h2t(s1{`-T%NL!_+_IjIMkq;erqSY?v`las zDH@b&F}ll{zF>#aFjj)87Udm+#c8p{DU_tMZ9^~y@?fNmA|uMIG#_TG@nVzId1xrm z>;TaR(#6Tj}T;dUv%&xZpg_B$7$ zHBbE2JS~c+hzC#sOaK=k1h@cLVt`7>0_vM63{XCoNiY}~@(_uT%YYO>MiV&<3S<;@ z(R6_F0Iq^(K@vcfv98{ zm#ptSgE^fF?Y7eG>ixdK&^AkZJQE5`BGEIMTB$9h5y&Eu&!C7$nN*gaeYN)2)en4d z?^J=;A3c1pB=4LYy>V9k@@?nm>p$J9rVp(jf4wt1EN&kD@jd_el}~Rx+0s7$>cPkN z?I-@9(T(>nzy15&+XuLsd?Y=0`}ePZIR0mG^SZKg>sbEcmlt3A=K191|M17g*@wfI Rek;Y{VCOWF6Jw~RRSo(**o{|6m)NIuT(0P%jNz3{ey#p!^1-i z!zz`^(a{l6uh%(_l_XJBWnFKZreWLmXf&D4f;e7g**4EP7DNFQx!P{mx?QT*X9tcj z8Y|P87DnbGaaLVp9W) z96X)Y@&$=DEXp->=^_-@0TciY!wej^NYbTgPY})(W!~wemUS_ipeQ1_T3sYqg%UKn zX)rB|(_O(FOSUf$L)BYoLDr#ol5N%nm63J6ZAivI8BDZEU<8R3XTxMOUF{-VgqjLO z2dF;KF2+xY=8SGfqLH+mmFaEW7@aFjP3Os8lW|(YRF^_iO>8|KnQPzPMx$Ngqjike zc$#T(d`Faes_N+axYwIGPBfV$L9kjbx7#fO(g1pdaZ_9hNp-<=R?=YI_BOq6>n`)z z<}%%(Dud%ZK{Tnl%CNd1n6fg^3bFpo8P2D(EKc&32%3zUDsE|%+hxXm(I2ScxHI>y zG#YQxIL|MT2+#sB0bBqdU=Fax02NRq)Hjjup)6HsFgO^B5HulE0I7fs0y!M=6clvP zVt_Iau7c-5mY}6zU7fIc%+PI4Jv|KVB=I+!1QlLn2e^J!bP2_yw174;!QHm~ych09 zi_2hz(k)#Bp2C_e-WI8@%Jn<4YjwS$75c*@_BUCK@)a-3C;*fJLPZvX!tOapyFXs9 z`SIvE%*8@#x7BV}@AnOkwRv_Va=yexGP_imO{bD<1=`?PaU%dO_ zPaOWq{s;EW$6x;P^bg}U@$kXF-W#9ZI#!PT(z`!ue)`RyzrXpz#Xsf2-{JJe=MUd2 PwBh8=Y2*91-~Zx&*y)Sc literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_2.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_2.png new file mode 100644 index 0000000000000000000000000000000000000000..ee15207c38755090a2b969e4de9a0077e688fa1e GIT binary patch literal 1116 zcmX9-Z)g*D7=HWD>z`?0(FL0i5yCjPv&*)toFm%nJWDJ$deSS)Bp)IiGib&RJV%^i z+*sIR&E%wEj!gSI~8%Twbv4rsI$Spo74%eUXSe z9`_}ZfpjLA%X39NS~8`Im8sQLhQPwXK9TjvVV@%41&N$aF=j4Y(M5YM-LTc=W;x`A zC;7v2SgC_>QB;X206+9swkC?P*g)=otZ7O9n%@J;a@+Lw=CLAmZOiALc zlu*q{buHC2bIX>7>SdRk!ig|R#b_qM^BF&_8Q6J%QQ65jo=jVxl5DZEzmyWiUCG|{puBh8(%c;>2 zWig3&$x)vYC-O;JOY^0CY)+G_X1-A^JI-B11B3x200lq;m;1r zAd--!!3crP0pbCP9+V-G${{0;Drsb^@Yr|?SO&rz78g8ng2*bNqAHY1Da+Ct4GXon zyfGk?eYE1?RA1D~uHHu}C0mue~T3)1EbWh+-CG+(=S~bxZTfQH zy_w(sJ0&^$f7rQw+s%KjC%P^SZ(QrD{&7hh#81!cJ$F)GdU@*3(Jv0YacW|5E!ThA a!LIq$<S{>@qa$NGKHt9QgZ}~bwDg() literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_2_1.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_2_1.png new file mode 100644 index 0000000000000000000000000000000000000000..1b3e14e9744f8a9f0bd5b9ef272e173c4914fccf GIT binary patch literal 949 zcmX9-L5SmI82x72nRKSCQHoYKLc|_|WS1ZTqeRKB=}?ErWZaCKg&raVra})nM64Jg zVsMJ&5TPtR^w2{NJwz=sNDc*a2-?LS!qSB~??CkFD zVi;B^6!!M^%9TomWf@Tv6h+eYx@j7Y<8-_I;V_KjX_~IqYnB0l2U#lC>!oIsY*|d( z<-0w3Fw{noIZ534!WU^w<%@igl zbUj>N%r>Y<<2Y9?*T{-OGdj-8ff0H^>afCrG(U<|Op0A-LxWSJ=NQ96?;Fj(ja5Y`}-0V#ltGICku z%P4H3NgJg;JPn=$Nd#5KntIu8(H*Zg@b%HiNs?f>Oi<=UG=Q~=f>)M(QVS^~<-Jus zShq%-?&KnzquGio0Y_pr2CoZbQ(>)!JP5(mpPM(a5zNhk!A0zz39?ab~O z2*>Iz7F@6U4CZ7a*6T{Msaux8G7iUd1vU`bNMfcky;LhmBauy^9*aT&B~n&??rQPz z(;xWk#*qTo9^OCAgnn4Pe)96|Z@<6$+}E!a4xS)w@#j4M-%HP5`Qc{6jIEQiAD{ee zzjOM^AMWApTX!DZ|NOFk_OAKfo5hd!T05UgU%YWmef5R6zJ%Xi+`jtDNB3^sA^xuX m_2AckiIcPHKi8{?_BNzCNk2`zbrv-U&}irg;3(MG zz(Tva7}xR{fl>zL8aj6nis}F|fQDg4wQ3QBLs1^jAItJdtF^GKv(X5JA;H$_0?x=J zuTc$yZd$DF@a9nL`O;vjcrz_XS|mp>jXJN;lFq4yX!Pa&NE-!45L;0)h|}?M9aaUX zDS)?t>;mOr+z4+>C^Zy}xM?pLHIeV3WFb>vurLrHXh0$ZQUDn^vRUNG zC}^WuA0-|<4W0u@grOE1E(?e^y#!0$9|f|sPH0Mz;-KwgUcSN1(cESPNw>K zXS#N0=fM&!GO7j~i8Yw2Dv)i3?Y1PxYI_4~>JQ?`Pm>7cOHPtd04M>3iY)qt-7^rq z?r^o@hVC<%vze%>O1rIhy9UejIK~xNUt~jxnagzAtRsy?7KMf^3Ir5OMftg_mA{|< zz$ZtC3cT~@qdNtW5BB$NUH_v3{?Kkc}{(5IE z{CxM}=^q={f4}nFo!5znU!6Yw;G6ICySHzCzW47-)Ybp~`BDAtqbCoZy!QOrD~m6p V7ry=BULg$!*ADl;fA{@+{{t)`j!pmo literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_2_3.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_2_3.png new file mode 100644 index 0000000000000000000000000000000000000000..32b8b5144cbd4205a5c2583f21e7022caeac67f7 GIT binary patch literal 925 zcmX9-L5SmI82x5CGwEy{0~X1;5d!v*Ly!nTg60s{%n--uWZf)OC>SAN4@Gi_&_ji& z6@rA_fOQShLk~F=3|QO>IrNZ24qYjdLl-IpELyOKg$a^FkwJblEIhvNdzbeP?|t9g zxsXq8+`0h(C+F{+-Yxgd>$_Sh=hu%u`U{`}ciy{qR?@w_z5V_DN~LmeaBz5dcyx4x zVOX_VJw84r8jS|Wv63Wenqn9&%QE}@zVDAFlPF1+S(XVPg}E zU3@jJ7YhuhM72SlcYz}fgns(b>42TZ2ReGgyNXw>J5=#RZ7rl z*<_kFXLy1&l=`7Em}$X6kFqw!ldRkjG)6J_mMNKz>WuVJWJal-WP@}&UhiUDgt`Vq z8>k-89>$Ldc|x~h(M+4}+6rkqns%NCRXN$mLL=qNsxw z4$1(mEZZ*E2b`&$GVBg%TGl>{4a6%?8pbWYcKKp-4ojQkI{8wf4{T4}5m_ zLW8&d{{54ZDCeiQ@7;X(>2J4R_~Nyy^ueY5`e5_nqhFr98GIXmet7Fo^7-_;C$fTY z{M{ec|J{G%@q=FnDIb?7X&nJ+rx7Ze?X9pU)Qxh1J#7 zwY4=2!`9c=H#RmZ)oPVtXhGl=MKTP{vdm_)+3EBKgD{TAX}VZ085(#FWT~iW<$9fH z*mTR~I$gOx(1(#VO5Ewp7br~Sil$U?RKhdJp2ZwCg{Y&B24;HPny3EBA{KGbDQNKE zDOlgcBDXZ@mzN_P&1tmM(W!?}Tm_H;bPO{~B?renlJq(5P?nEtwTa_A?DbF-;Y_*8 zS7@2wbW$`a)nN>ev${evklI7VAL(IQBUqdktDHhf2CJEZ*^*m5y%(Bc;>2k?nfIqB zQHh7L0+kvNHjp01_A26l)FR$YRCj9m3ok~8GF3KMydhGq%JmIlXemk4m~^aJ&|E~F zlO#a1xKw6IN@ds@FEkXzHH>bfF>u|e*Gs~1Ivy_;3k0|cWCvsVC1HpwBdRtPS~Ja` zH--yuyd2C=Cnu;#l}c=-A`(@Fq79C-B)O$$%j|*MKJE|FI9X14&?U@LN{&u=b*gLg zK}#8SYsY~ziMsPiyj(s+Jb(&d0eAobz%jrK1C&V?kZqyBN9jZ+!DOJ#LnuNj15yB) z734C=mr+t}u2@@|?Qgc7{PaiGz6>qve#9BoqQl0ii65 zR)%{fylHo5Gq&4#CTlbjG)<}34cj&uy2;WVo(TjdlIXEa&DAQ>3FMHd%b<`)iIg2b zd#U*7=?{Exb6bIz|NQk%X5QP{d}a5-r+0rIo%{CudSU0W`T7m^k>!4W@42;qAK!i> z_u!jLli$RHy9Mmc7ai)8tDnEUe?{FK?{t5E@WU71UHtkb?ftK=27AwcsqO#x*5AKe z`y+4fUjFb1|Lel7Ylr_m`K)~L@<#_Bzq|WS?#j{l$^Cmr_cJPNUEkh3c=esV{{dNG BnV|px literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_3.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_3.png new file mode 100644 index 0000000000000000000000000000000000000000..0a5f7938a9aadd4aba8fc886f43da3d160ef7385 GIT binary patch literal 1002 zcmX9-QHa}g82|2icez{L`p`*X0W0eux@_w(N;a|?y>!MSdO4Px5&Do}@GA5nXp{;) z3|?_{REScgVjqg+pp3{BJw}FM7L0HYh2^1YPa{+;tjIkS7v!9W{LL8rzVGAr^8J4B z`@ZWd%lzR(#|{C&;iVUIm!tViR7d7xQNQ)U<|%*}th}^(DWX$TQ`6Jau~=+oW@dJF zc5ZGC!?5}J`GtjrR3?+5s4T~^k|d~VUe~osrP64$IvvOJ`av)WLn;d_1ELVm=aa=^ zx>U|qYfPglwmXX3)q8$zII=hrlbN_CqzpN2szghtwkuq>A@@33uu~le*8arfaZpGo zv0zGATf@4w#GsuFdpH_rQK+B;6Cp1HAOa{DrX>;vj++EwG0e6o?i30G!`N%JP`8Uy z$qbvyifKk6c#V_|N;Mh1$yIEj?n+iqae_jc#`l1Y`uOFUVVnYPNgy5v{XK|>$e zl}Wd;@7rkPC6Y8j$`oB-xsoK+RJBQzx-!Gqvw5IB%Utf;1p5?MF-wxzmm#rN&;*hi5TUI3~bXU&vo zr4@(J0>+%=?XcwTH+l!o5Dg|o66iF>XA^lgU6iPDK`@P?RX1F_?tAt)@K89U1pzsL z0zfFrq8iCP1YRjOM6^sL zLhi)7iyxi{pZb1q^Y=4rkNx=m`e?1T{`HgJzV`Ib(uPfO#`&#Z!{a&om+9ko&s;foe{b;5+4JYF{d+Oy zRX$DbzVZ!ucCY{2wd>EmwR&{r)%BCFKia?XckI0j)C>IP#ut%CSh}>F+giN3@jv`K Bup0mX literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_3_1.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..a3b8ab423c9409c8b9aa03ebd76c9c58e895ce11 GIT binary patch literal 915 zcmX9-F^Jn{82#>ick;yqrS+gv6%_CwT2VA8ph1J0>JHsi<#as-GQrFTW1GA7q;#myr&clRmqobSWHJc`13eJ}4Vze4 z>f_5vb2}$d$)c@+ZUTg|7Jv$1V3>vDE=dM79SXv=s?Iu{rR%;Nk5QVET(cz-tV#(6 zEnAH4a%LddBgu=DL866oBQ81=PqK1L&=|$!+m>YY)&AHR$5x!XSux1V$!eG4A~ZE1 zIzTx<2N*vlh-3+pN_|Q9IqCO&1Qpuw16IB+ys{rQkyfKmDFFi!?Krbg2i@P z-Yj>h!QePg5Hi)$7}gX7TT%N)CFV^1!E7=uvV6M|!B8+;!(D?4y3EKCqrR4mIcZs935rSR4#Qh-D~LKpG&6Kt6{;6~$dN z@1r7wH^K9uNT91&*CgB?GYI5KXeNo5=TTYasPZB^z&Q;uAk>gDV%jQ%VAGDay<|6> z-^44l+|W(nDNJVZwn%j~&gm$D+YJY95)JY!DvJzlSG=O27*GKSRax{aySE@cXS81P zqv2cF^SRV+Yu&EtI2OlxJUbM*Na9k3U8qc{w~#?0mqsHF#Ujd;s{H)NjsM>Kz@w`R z4L{F_@RF1 x#Z3P9*=K(|{+9XXwe{-Gv$G${znyaBnWbB@J6SdhReOjMu&zBsh*Bko zELJHJmIy`SP$XbrD+KIe4msqIL&Q1s5U_`?2YLcuxwn`PmB-^aVWcX;pn z{_bh}>XmC(0N`rp*2%r?y?%UrOte}pj$uiY2W0|M^fT-7jq-O7#Df4E7LX!8UsTSTos!c zSmNNTS#!G}QNg0EhAv%%(iVUMpkbJS<2FgUG#v=SxuRV3`zzai=KCl~NUqru309#5 zjcyxE*XDFrFsITelqazoEVL-^Q#{GGTY}2SI^Q!SW2}sQ&5w*Iv(tQ%6|?m&!9{4Q zK=gsKfOaw7C)#tmmxxBzb=GE3x+ywWn5NE?!#3k|g_$nJrkaiPm1l0kQJHwVEJT|W zZ}K$L<@mlR4OP|A_33apcbvrcvnX0Gmt|QZAPt~BjGN(7OsWf}zm~?EUQi6<(p_%n z#pP;;8Vru}1kt8iD#Pl6V9Lr^tHi9iGr5?}^EBJ8MbKo-RB>CQ+yOJS#Bi*})BZ(h zuaar8O1Il*NCfBtm;f$72yg+g!2nfIBxIQ=3{bvOXfQaKh!C|QR{*Ji3<5bE3KSF# z&|-}80A2*ogDgQ;!3H{E51EPEo&|awkFqQ*iVRg=WFI)IA-aSTP+CMAx!{()a6625 z-r_P^qg6>afv2!Gi}yropmJ7UcI`nhvEy)(rD2h$XuIZR8AX6{K&Z-MT-m(@IkKjk z4L|i>!dxt*UQZnibjvb0cEq!u$b}M@$m~*Kif#*O6tZbFk$zt#Bn#SeUO z?^K0%pFa7dBDXpxH}2QZ?l?DIefW00c8QXYzq<3?f7c)1{!;0@|Hr3Ke?EKt$KcQZ zfB5_w@z*bJeBl56&%@t;dWHD)f%_S@zW$-bdS{()ABniI(Y}84M0u^!gwD;=li%L^ G=$q$eNrwjj literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_3_3.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_3_3.png new file mode 100644 index 0000000000000000000000000000000000000000..dc42934761ca34e6b46a83911fd5dc285df2c8e0 GIT binary patch literal 893 zcmX9-F^HsQ6n?w2yUyO^kjoT83>X-Kg&Y!uSXh|EJ2yv`PEJox&(6*; z4C{8g=jZ3dU@+h~R+2!l0-We?M-wSB2*3lQ~(phY#jGUGNkE55N=fUb~s#n-m5r9ML}}?fk?0_C785q zGrGrFq2SCUKUJo=mMqPz9#TBX$^$`T6pJ@($)2c_*o-qftGu$FR=fG;P~al;H6VsS zxj=^)9~1I|HVV&V%rep5t;Dn;88@AEXH zbNo=0#+nvb)@(dp1VItURhDg5tEOoXkT%c}#?5glC$%Lr+(?tHk?h8K6R!4)-QD_t zdJK;91R+xcjbSZ8a1?c7w#(c_Fuk2G>ayBzL@*W1(QwbC!Vxob#dMHh}^TB`V5BXgNW3 z0`G;J`T&^}@@O>UP$r^EX^)?O*!%bO4?MlT(%_@N zUw+jJ=JMj>C*9`{fB*FXy!Te;gQoZ){u<_gJ(Irw$e^S3XKOS!eRwY|MvsZ@4$c6N7n_xAQM z469bF`}_NiX0yq%j3^4KDx0Qm+m`FPzCW5wqBNc5`D(pp84!3-o1mpNMjmbv*d=Ok)BD7Z1&O>6JMK7to*81nVW>2CWTr;~|tb0TciO!z>(k2*RVNfafn2<*L=1JI?iJgp!0{>rJ7-C?s!C zl0|C{YkIsr6x~oB#A+}#qP#_N1S2(hm6lCTw?wO_^hU-gvZBmM^FdaO7n=kZpsqrr z1!NZ}593A+X+r6VU}ai=VFxQOMVAU)H#wps(S3~{n__IMnQP8{dl|Z`#NT8gTBdlN zqiBugT7uY7)xK#CJDo|tpNvLX6fI`6)oO)+uz>P0c8rTLp-$=6LhLQ|pyKk zH}egu(KyaE8WP!5X~yJvTUL5Td8|9>53a_OJk8b%0Spa+7@!i0h`Kfk1C-Ad3M>`|0z?wz3Lq7b)j)j~1qzDV zXxc-00Jp(&Ad8?WSletk9eUtN%25;JQGzRkqubJ*OQEoH!h0X;|bbS}!~<}daXH2p*id8>nVBhcp*4{~B8Ngl7DWQeec@&W_d4#0phPa;F>=WGvS0g zA@PzDl+~zGP8H{~1`-%qVDbP<0N4bCNSGXHn=4E5iZfF5B{e~Y6AWtP2(#aTMx6E( zM`e7h65Sgu-JfJ596O**KB^$5W1*WFg9>+oi z79(+y!m~6s#h_)U6}l}jXoGPaN+eY1>hTk+^?yD4fzNjIvS7pg-v+DwC*7Mi_V503 z=7hTE>T54_J;=7dzNP(@%F?>=0cpRy^^f}Nx5J|siQ8{XGT!g6Ob;sWci($Y>%O#R z^iSQ;(f+0zS9-Rc-`sVkr>Eo0-PU8P#yXb%?T;< z-ud-r?Z&~*xnB;B&;5J+ySeLI2K=Sve$&yt;^Yvrqf>5e4n!Z^*>`=}%6=SM_xq8S zx3|A@WcF-R>$(cQch{8--x^tGAwlegL)w+!4Lz67v4W53Rv6b}=` ztGnk0TXWMFTgEobY#5PubxeMI;e$0(!x7}GwL?1_cdgJ*(^vo7Hr8`>sZ?w^b&I|i zpRJ3UTlCGI%euz4_9y$t@3ws2wEA@Ln{)5t(6o|7J;(PR_~Pe1C#BO*bT8+6kDS^* jx^`l`ZDE*M{z6{!#~Hwp&L zxG<{}$*^Lq{kdv^6iG#`&DI~$Ao(~tG80K{PZ*vX?2otm1Oo}P}yV)1x_W zs#Mu}Lu|F>j;D2l>R@Q|B$j6vR3UBTGnPU$HG0eBy?VaeR>SSeD71IRehvqjgfa(~ zgtb)6t0w!c)TE1}5rrl)+O-h!vj8H1jA3drY2dg;5H`zhiQ;y#*f)&Z%_j0ZoK9uA zG$m$OnaHVR-k=qW)f&9%2(^x6cV#y$W*D5xWm$<76sDl^YDKIx<)*8;f#HX>VALAy zcu5XY5~Pce(SfiqrkT#QiGs(eLB2ZB?6KveEs;zq3|`KW)jZo$_>Lw8rqZu#L&qF@ z^_{>$LqC~f2r^GIMUF2^QdLnJ<#M}P^_tDVbqBrPcsxdct3cE-x|QTRxYQ+!1HLjW z*rRf1Z1pDX(QbbSEs)71lTPO{S&5_+memBYB1g;gcD1(MYKML>8E_yAm?k9+Ib)T` zhR!(^snaNKJ4WAYjQaj$avN~~c>oQ-0&oDf0frc$2qKSk4LLRn`yv4<4K)tj9E2hu z36PpbRT|kMa!aUNL7@%zf@eVBAunPjC2f?+nw4wWN~dE6fioHfDAK}=J6oTH}H{<22~3U9zOZhdpAE=Uh)sk#{WhA2fl4DzyIp=qkCGz zpDw&nJ@ef=`@bh%8vf11fBhtO{$+LJ+@<;Oz!&tzl`}^YpP63blzI7){x65_oH7%O zv9pDXukC%|xob~+{mNS9x9gi99{hRcidGzf8BiM`Q-!O1gH0Xq`$ddT7PS4 z!zWg7x|IVI=&r!E9Jh(cVyYj=A@YUViF8|QoKO(=d NcJ%n_wIeTX{tvNbv2XwY literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_4_2.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_4_2.png new file mode 100644 index 0000000000000000000000000000000000000000..5219ca3e6bd258f764e70c96b55d6ba9d2022dfb GIT binary patch literal 1008 zcmX9-QHa}g82|2icj@go1M5NOB8#l^0tPK3Vx~cJnjZ0tT*l>~4;69{xDJZuAwn5( zgtHGtyAiZXnMI42jXnhJ!#xBkXT&HSRL#R}bP%CnVHNM8lRn(TJ^alW{J!tw_wxOI z@cX_`uWpLVXU?AifaQ&Ma$E6SjqAB&BJQuxzL5t=z}5G**JC;}Gc!9on@A+)=H}+- z=NA?hFbqp3lZ%Us=}acWFj+z16-Cmtf??>DN~O_gbvj-U97WM&I%TrJb0AAgg+i)S zBFkpBTH_i`x!qB_zR?eB!;vGhNZH;Of%t1x)8~J`mk9yT{4|%wGj$305X7zVLFam1YuK@!*K_)+$$CbmUY}}A>SvM zREAGyWs*}VQK$13quHF%6e_M%?qEV=nT|(@I;7Y zKnfr|jcN>XWaO1lzltIUo&?W=BtTxqN?O_~({)>HJ6g9}2}5^04pFQ{6oE09csngS zr0P+6#MzUAJ1uul8vRpmhz1iX1uTh)S-ilLC517Il5Lfoy47{-Vc?FV08NLiBq0w_ z1PH}hRAafPASz~aG-8{Lr!e|`p-@mtCCxN-CR<^%4W4lY#+R~3GCj^`kV+zpLQMvF zJPM`w_}Q11{(JHRA8ldK$jiF4}bdzWw3f4=$5?#=rjzcRn~*YAhl zUHkC(v+G5M|E99Wj`yPX&+Xqne0SxaM`-@S`Fmfjxm%0dQ!}`xm3Q6@4)M&5FXf&4 zIhtwx^y*BJIQ~0%@a)%D?%X5qK2CR5U%T7xgm`m(eDXi( CYpfdp literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_4_3.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_4_3.png new file mode 100644 index 0000000000000000000000000000000000000000..1fc11f68f3bec0b859e8083577b2f3f5c7cabfb4 GIT binary patch literal 914 zcmX9-L5SmI82x5CGwEzuD^>}ZLxd^;gXEAyz#Ot`W{g8*vTPQrrE)qSdVX+GVb(9-=L-zd*zB*&|Ac2IUiMJxZmay0Xhvs0elsknONqv zSF_G;L7<93I~`s72<2S>1wh9zv)y(G!l$T^=dToH-tVs*=kaukvW#FmT>)nllGiE8 zqZWMM+LkO zqz#mhaZ_B1DJ>JsqUWuxaO>yjN})RjM+_y}>+v%~Of9u=ja6W6B6phw`yxV{yxrj_ zy2o;TK^&^8XBd;=F!sD`IxUi9yB~ySTbu z?NN(vw>cb_$gWB=2G3ivGSX`?JNCx&SzPADZY_W=W0u->bkZNt6I+NzYC7r9BWIOO zs#U(*Jw^gR55NNO0V04ozy+DP2Hl1s;WS>7tsgSZV5iFgruHOX36_oE!qv!eXzJr z)@Ze*I>3>b#I!Ym9H^|_mwjgtj-50b7kN~bIoho`Sw;z<5)i7h7}a)9K)Ci~v*9Me z6IhFdsA=k8VA!_FGA_pi0vm~JCNoQgu6kXhlgOdaghh#f3b`&n_e$&En;-b_{-p|c z{`&o4P3~Nr-F?vf{QNihDR`kN{`3cW?^$yb6VJW${iDt^AHDj)i$6@iz{QWpUl&Jj ulYhSc%gH}KyWe&Gds=$y%U=cJ$HRA(yPtifF^_63xH!K&`{uQGKKUP2cYvM% literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_4_4.png b/resources/g2/track/raptor/large_turn_left_to_diag_gentle_up_4_4.png new file mode 100644 index 0000000000000000000000000000000000000000..fe9339ec87ed85dad49c9c1e003d8559c8e77ed2 GIT binary patch literal 983 zcmX9-QE20I82`3zOSf@kS~0jFJt;?oaP%NblpwiXHhVM2GL}JwC{ZKVhoX6iTpx-? zjc4!3ARJW-7Op}b3I?pQhloWYWKf|>PWMnHNX3E`_7JoW1Bd+0aq#WLnf%MHlpj)aa-kU-u(3jGNK4J3b9? z9&$1e70B0taxk_-lzNmB@Oo6X$A+6YAv%=koW_#15^a~ct|s&iIkL1-%b0jp60}Yu z4^2Wm$5M2eVJo~)lVw}e+O=BGwu4S5^8NAgagrnmNFAsa#&mI^Ps&5OG8P&W#hupr ziE}*bP0vQBXqCosmLN*`f=m}Rjx$85p{B#?J-a#R_Tn&_jd@T-%#d+Y%{x`PUFW@q z+;3L~o;eEI(@{8^ogf~d3}65_03N^qV1fZkAql8%AkRhdNTNVzpvi+@f>;711JVg( zGsu;YUq!g~ydZMPo47!CzRk*ig$Ue}qT#THvU;|WY47LO%*S}q_pk4y@+8RYXQ64T>n zFRuQ5{|DaM+mYe&pTAsB#m()_jr}L@+>C|~eRn>)uzRLoeD}8_ytVezGmmXN8~pn6 zl^(C z{a(4S@WCUMYhPd0UOydwHM3 z_r3jVyT$c0FP#B^^_{ER*R%ObR_9k1vVJc2@*%(iTzhBlN@nNg=H}<;7Zw&47Z;b7 zmX?>7F$`N-Sy^3O%@+y%omCD$%9(6h>2naS; z5b}&n@+wu->5|224sWzY+mo7o#T}}CTp>AvDHeEzmNc%ci+WwIchrur`;isK&1lx0 zoCLT4IR)|+AWfhgjO*l!J*pfCdQ@sm3^#E?bRg3?jU#GBx>4f0n%Fm#$kxU!W9r#S z&^n1cG!5|_N6{sgs|aFEQ5u@ouGM;tM$qX*zCRg_k|aSu=s>kFwu_5>LK)JPiCCYO z-C3=lIHR;TI~|{(H5$jce7;B)6q?a^-jL+Fnk_SXjpm@+i^C|L2%t)sq2QKEI#s%D z3SM35w<`nB8VBv!I84(=NB}4S7yu4{2QUDbVt_KqA~Fr+xhNjX6zD881@May%YYO> zdLA`cI&vZ}CVMRKgF+qC*#GYY*~9HMl>NfPn_#eh(j zMLokk6JeX}>6B}?p2-*v#d2AxRyEVqS;pp=mcV)<8%WGZre~!BQb}Y{sLdi@K#`Ok zKX+;E@zWo;b$wTXw;mpTkeORM+n4t?zxw>%-@t5~M+!)-x zSb6`?H-m34?Abqje;oh)<98o_abtM+^?z?ak)^HUe;z(wl;<}7W&h~ypv@ODKI~lC L-M+K+-lzWqX>*}r literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_1_2.png b/resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_1_2.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_1_3.png b/resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_1_3.png new file mode 100644 index 0000000000000000000000000000000000000000..9096c36a9de451d7e09858dc1fd56422b52c55ed GIT binary patch literal 996 zcmX9-Pl()f6n^_RyWOqY9i6a28ymoPQBc0ErMJ~*w{pOdQGQbR6dg1bgluk`eO;1nH%*@Qr&d$xv z&Ckzc7`Cvmu(-IG&E;||%ZQ?&D3Y$LrfF0vl}4l0>G)yTkK^%V!ZIN6AWKWCnkkjY zvc*(ue4{D1J6bm|dr@sTazz>|@Joi2wF{)9Q!SI-sfaSpq-iY2$V2rqM<_vp)dy^185j#;J8f?4n?^(^5mUK=vM58KKTUyIE{KyXDdX%(> z2LUcXMuBV*NDC+j<67B#hf)K5iQc?Z|XS=ZJEit`+#UE_O{Ns_27;Ir1vw zpm7j+XcXcZj-m@JR}{puqSSP~SuS^KwV>6Ce1F*QkH=#KgaK3oW81jcC6pdr9E#PE z>L%sx*y&F?$>HDtEzvm6WwUuQr_hYf^QI(MwRD-)snvJeoj8mpLjg1iGZoy{NT)~=TWC{!x>H_$Ah-E+u zAR~)vEOKS!mr$>YViz6;&w(UDLB>jY)-Ka^C*OAUZnqLeUXny8)gp?(T1$eHm0eQv zDI?~cvFc6A-GfH&&>y0~n92Z0VtEEv1+t{DR#9^7l3TaCUOfuEBo5JJ$Vn3N0mXn& znng90djz6lHAf?^*?0uA*ArD$DV21~GFYae)zUqF$R z9zS<_>7R!`@aD$40?+^X>nkbQTw6VN`PmOYxp(gIcTXM_@BWTn+hE*p|9bM+u@g66 z{Ka@@_4vxQGoOFDxA)w~du!HtX8X?OjjygxUpf87^;=JEUb#{K>FMJXSFE2swep*N zDzkoV@ZOJa5LA2rv#74#AN_m(G5@=-@7~^ye|SAvy!!WBL~!!$kGP|^`JZ3y_W#qq qzjg1yO1!mo@%;y9@t3z2mj3`^{)}^?b-10ngS89mtKXb|>FWRcuCBfS literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_1_4.png b/resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_1_4.png new file mode 100644 index 0000000000000000000000000000000000000000..4dcbbe18c16cfcbcde910af7d029cb1231c23731 GIT binary patch literal 1025 zcmX9-QD_@=82{R|y>?xVEDxbOB->IrU3R z$HyloCNK<}oSdARnu^Bbaf(WC94kqJqNFrUH4LLvs?=&uqtW*L!Ei_=fMq}wrcMA8v?@gPWXx2Eibic2oLfq^YO3GN_kHVd(BN^9 zNyxHbN?29J+(NihjSO2j>L<`pMn@(>jW~b^AY+&s4(m8>5`@JtTcX%Zr#rg-uu?&; zi&K#}8%>BYMkaWbOzMchi;gKhy>9z#BxBG7+s0-H6rD*s+TNuHEUot(3VI>6dKR+WFg5^6|SyHo}qL~ zTF*8HZt2joQLhn>&;*&J=rqe^C8?k&ZrXasE%!T(;qW110g?b3fC*p&Gy!@Tpa3F=avHKNPlBgG;2MH%lQ+=spIpn|D|u=y#L8( z-@ZM$`rx3q_vpuKq0diTTe!WmdE5Q@pV^)7n(G%o*qd3q{`I*XelfbS-dx}R4{y(| z&7Qpe#oEEG-N)N!uX4Y&X4K4;<$^h<&u<^!xOnFG`|&HA-z*#E-RJ!0Psi_V{jm5c zGk0g^Zx-L*ed*S_{~FJ(<;V8c&Ya3U^G3R}_}&Y1=h(yVsXyOe-v8*s)1CI63HHJ6 bmybu38}HnG<Fqod>F<5sJ6a&mHddU|$t zhGAH{-9A4*Cwjde$FY(mYMNr2x@}vY=Y`>Hu}JcKU6%EJ&#@p1peh|*?+%C5$YIC6 z5Kh(k!bmfFRruRoBr#ZD=vWHj_Nl<6XEt~3NmvDE=dM79SOp6@tV#(6 zEn7_A<;*~^r;-;dlT?dVMp6zao@C{opfQTc>y~7V)$z=jC00_nc{wSn`Sy_EB6Kw% z20%GL2N*viXvYx3ksX8gV|H>K3p3eVhx_Ad77EIbr3+U0nc zr(s-vw)hMll^?p&^ zY!0Zy;5bhZGS$-<))WL=QO8EJ%vt!8<$O`*#eOS-p5@3e`YM@HUu~8hMa--58X%M^C4GF88a3<|k4nsO)+QK2-)&)@6(_xcCEd3dG4 zM}PnIRYUGwUVQwh{oUO^UmU?Z?cbmOzrFJr|Ng(FalYd+XU<<;M?y d6@GYu{rnzz@;(0L2hAW{-oLtd_Q@AdUIEH#cu4>N literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_2_2.png b/resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_2_2.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_2_3.png b/resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_2_3.png new file mode 100644 index 0000000000000000000000000000000000000000..ea51c33ca97026e37e168d0b4d70e335101f779e GIT binary patch literal 934 zcmX9-L5SmI82x5CGwDoOx=V$!8!)gHf&_^eBtnF^X2v)~Cc|c+V2~&QBZMVjgn~I_ z*&garAz%-6>7j=pJp?wwfI)i5Az%+-%%MnyfCURy*h7>a3OmSemWB6yAMf(s;l1zi z`I&g*=*|%U+&KO4_7#esEWT~dA4bvn#4&Cc> z!;w4*wP|dpS%10m1qy3(HA`x`ZNk&ZvCUj|g?QLbLo1*4*15ke5)lWDf({R!f=w(e z?$;NS#wNwlnnoK9U3&;6EdUun!!WB}cX8Y!NuT2`WqD>83)g)%9-}zMnMR9m(lWtm zq-arXm(e}W9tqt*8cY>G)uP-WSezDHoI*)Dt6GB9lY3)r99dE3Cix&+PnO%b&O<|i zrU8Tlq=&KNrWlfH%v)KzzqI|rOVFiEHFOs5h*ZDLO>|*uD_K`x4DD6WE#l!e3(zX5 zH&~KtGpxZ29YyKu`l!ByJ` z?jjzo7s+Px4DkSM02{yq2modPD-2KxSwN1B0w3iInFNc00S}P~xeQ1FWHnKrLB5P4 z6Qw$KED0hw|_qfAMF^oetbp2zPR({Z-4%Bmw0McPJSX)2h^j_e)vFr S_4QI8PEXE`pT7U;qyGWT(1(ct literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_2_4.png b/resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_2_4.png new file mode 100644 index 0000000000000000000000000000000000000000..22982d6f9ee65b34ea42da8c9fcca289022d56e8 GIT binary patch literal 937 zcmX9-L5SmI6n-xOVz>^G-1vMU~5?qBrmT_$@#Q&fmGXRnWb?z5V_DQmJ%saBz5dcyx4x zVOY6bu2d@ZMx(*9j3^3vTxlVS0Vu zAIjs2K8>w;+Fz{$k;YWMYD#riB|U>0S?pz3jD2-JF|%23lLfmxX%V2)U<=?W*x1D4 zKE52+wsQh)7_`;Vm4{GLc#r{f3^Q@uB?ynA0-nE=@!A!UW34*fB0n31v>VS7L9i1si*sdyDO4 zbG6)|Dvje@z1|`l3e6ZiZ%J}bFP1rz{$MtqWJ$VR37|`urQohkdL4S`2w_i|4%@TP zUB<)BGTCk)BLP4KumC)O5MTzd#sC$NMdVm03{bX|DKJ?W2oSX(lL0A!%sT3`D3DRq zLGvEU0(cTU2a*V?jCG8W3v4K|vBWH7dZRXwP9m2=Ll#8>N~PlXxmTfa`UgB(Zd@LKK}an?(27NfA{kDru4?ab0=pN z?fpN$dH0$7f3P>)i_hp2`xR0%AC`Z5{&ui_@z=_inUO#E{lAm*PY{3Ix&NVmzBf_Q W*Y5pO`mK@R;$(R_J>2)_a{-bjAModo&!nDR;&4XooF=a zw#jvS(qO2JJUs}_+1wT=tiokAv0zjPOC|d{bKDZVZY3CM(YU>c?A6jQaf>8vjysm5ajiBrjEDU`@;sc$7x@A$ z5u8GnHL7ATs>SI&q2-93k!%Nw8`TIFr^`i7rbLykYJ%35+I^+(YHn!wQ72psW-Bkp zLtchL4TvU?7RL4qWVK021DyvpK@GG$h{fhvr2Ic%xZu0D5KORu{M z9W?iId6uLq3|r%chAf+^+G{k1rs?(jq3g~jljU-W0M~%*V$2{XjBq)iYBQlduiA^o zXlYI2;o@YvLRl)8V+(~cQIsiK= zlR>tG+&T){D6-*E@GOV|R3xmf7K{efvC0Em9gSLH=qwf?N?3Rem}Zu@3X)AIE~!PF zwX8aEW3=i9C+-YQmt-DT0xQ$GDo@m9rdbm$qi%PMk<$r%XA$`*p0T2cTtE>Zlw{FP zaF2zzn!Wj)?R6hZ4+5cDmFso2+0+=i#nN4#aRkN_>4`)wDn+Ca$RJUVK`xI%F*$zr z+3Y`$e&FpZ2QobO*Y7tHqwkk4UVY}%PwoY$KRo-y#^H%}=e^&~{k*qzl*&B#a&{ZP zwR7wJx9*<*0Ct1+)4yK7^fern-bsu1cg|oJUfI3)%jLh*=f3~y+E3pS+t&G4FJ#cp zwSRy3^Ty|YeD=k=v+W0^JO9NmGMkNqUAVpe+Q)BV-~0%dpS)jx{i%=MNbs<~cToE7 I`Im404}iOuTmS$7 literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_3_2.png b/resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_3_2.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_3_3.png b/resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_3_3.png new file mode 100644 index 0000000000000000000000000000000000000000..641343f18c1fbb2a55ebec6c896ceb912cdf0789 GIT binary patch literal 1000 zcmX9-Z;0D;7=G_>dOL3Y&_Q8Uq7)1>o|!}!F(0xsH?kw+ax4c0`ynU6RaZ4i#0mv7 z&4;Q{!YEjwjG_UH1gvl#K?4iegOimRSasD!?1wV@;e?GMmMU5t|E|Dfo-e2ugjsS4jTH%HRGT$ z4P7+qrZWsd7HFo#@fBINRJB>DbSx`qwL;Gu_WN-hBgkn$G%&iI=KY-9BTGZRHYz&f ziXYqkNoRaCn4)Deoo2FG0nf`MrLwFpN;M@}R_$2zgLWtChLa%&iiqiQ+E8%2Og5{W zTa*1}>A*DxL32FlP9}$l11JFK05*UNZ~!pE040!kRMnB|plBcwpwUq0z!M;n0Lg%~ zEV5|iNXRRrUJXSK+zXxok%xkWmDQ|KA?vo#c2wUt!_Xa%LzHOcNTipT>L0YXU@ zwM6bda%QzT8ZphredxU&Uo6VyvRbWbG-WbWgQH!Z4n(Rik>f%hDL66+)TEKep-@bY zpIKf0^WG19M~a$zI*!9(DhIhWW9yO9=Stx4*2V zqf1ZzyA#%KT(MTR_EsyOz3};%zWdbe7l%JpA3W=yczOGQx2|2@*t`C?f9lsS-oA5T tPusonsqx#Jubg;z|HJ2or^VY-?1#$v)6eTuKXC{f=Qh{Be0JyE{{dFYupZ*Yi6xObh1tcI=ek&F|b7|1j%ZV z9s>4I#|l{}Qlzp~f>aD_kx_$2h!CM*4^b<2Aua_A2Ao4&stz*9-wX@iBTy1c0rb=eGCKelD%eT=s18;`kGQEL?tm|59o*nas+{N;aEaU0q#UTU%dW z$1p6H%WZ6I;H6TDWf@Tv6h+dss$uA@R;$+=j7Dw{Ort1SE?EWy9%LzBtrqKbve9JP z9lqC>ha=VVjY-&M8Z|K3qn7CRDwB~OjoWc#pCmz<0F{P@0G5Ic zbD_y-+X-!lEdf=Z|E0T&vAY^LQ{ozE7~ll7KTZ z$*WXZrz<9_S-jB~TaMKA6nmn&QH|sXrd;9`TGF_xF6wQ$Jx~X(?uKR%b;Ec#Kk*9! z6cxa0KsJH0Fm8aCM^x1p^sv&I8+Kv^=t!oE8b>tBbf>}(HPJJau%*p<#=>bOe(xl7 z&>|=lIf|~ZTul%giqg@vexot!bo{{}blv%Mnj{GVLIG6q?a^-jL+Bnl5XOI^FSb6b0dOE`TawhEgz9(yG(_rr@*{ zuU{KG=FIQMvtYSAMgl+uzyPoS9Dp&v0t1vv7E#kcj*X(3Oo7fqR{*yRkqk%yq~oZ= zB3njo9ZlLOvf(Uv4kQsOGFI1cvq5*Q^3c{iuN8()9ET`n5j9|&dBMVEn^av&k9aGo zI?IN4(wm&Rb2Lk+B5)*DW(rk-tSfA@CRt|P?wX#{4Fe~R0<@fSl7w795g?Ri(N1yq zMYNjz#e(bi?#q}=#A;Qk*R^I-XPFkq^aR!sSzltNG96b+NF|X;p+1XT0fka}{M`Bc zy|W*EELG>dh;+KcBsy`5wFb(UzyhuT9>*{?56@t-Jrc y`PnZ|fBEn66}b7|6K)0 zoVG7tdiD|kTt0cVb+f#+a-OMH%6*)@avPumH?H5hR?@w_z5V_DN~LmeaBz5dcyx4x zVOX_Vt<`Eov)SZ0R+2 z#h25@HYL%9MOzJBcnBp;00lt9FcZgZlJsag5QH;DS@e2K+kQBipg1PEMpGnMg%UKn zZ89C3(>=i&OHL?{=4y~?QQo6?l5IBym63J6Yf9!&8BVlGWJZ~t!0I_KfbvqM3Evl@%0Tg3c7Cq4Q+F&A1(5s!MZA%^ZE{TkFs%VtxVH%H zWjx+2lkN5)5&=2@7Jvs30xSU57@!i0ga#H01C%cn8cYsGB1CP-6+kK=lRz$q0tH0| zN{1*9;8E~A$P#oE%+LwD&y2kGG|=aBC(FXkCPSqc*#mA+7d=7=C@rGRT=0r+xb4q( zetHqD(6XQ#z*AV8#k(S9sNA3@d$tjb?0GoKl5mqJXuINN8AX6{K&Z@OSlT@X=?uo} zH9z(r!%9=B+f@xi9}G;6b$HenxlrO_nLSsSO{a-83fVLob0`u~CYR;spR51#=m*}v zd8)$IzaG3>lItg}mu^+>eenBFPu_pN+IsCj^Gp3t_r)i|U$5SI$_R-2^jB{M-*|7N z>K|Wx{q3hudw*X+?|k$^ahLwE^<$0y<>Na)tFLqKz4^oO@xO58_GgE8@BQ{&sS799 MPFvr<{PrjR1EqI}(EtDd literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_4_2.png b/resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_4_2.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_4_3.png b/resources/g2/track/raptor/large_turn_left_to_orthogonal_gentle_up_4_3.png new file mode 100644 index 0000000000000000000000000000000000000000..d84f6cc28660f3122e4276269d1ad2819c172d69 GIT binary patch literal 1002 zcmX9-Ux?du9RJ?+Zn;031*;Yo&j@{pGmd~^<{@Hs%Z++uT*h(`v=6xvW*;g>&9q1v zL5u4~nQ>RK$5kjS&Y}@JI3bfFd5CymA0q2%g*^13V)6D6rGqj~_A_Jf`F_8AUcR3X ze7@hSXV(EgSI))riMWouL0?wXUKONJlsj2Dd=|mziGcz+g zJA3HRAq>Oj=H}+-=hK-?hGA$y;AL6Vw47n+<#M@RZ?@a6@Atwm8jl$ocn&0SF_%jf z3PiC)SE^jSA+_3S$1}P?buhFA3RAd6T}+z_VQFO3V0OxaS68}iJ>0E~LVFVVSsYXf ziab~{*3vPrn(Vhy<1UUyG#abuz(UB+07w8ThUv+qiQ^VY+8nndNxS)c-!$(wo5=HU zCY9mSv_x4&vo z)EZ2@Bo8SW(s>|CKw22vOlR9<&g1n!sSXS~vV627Q7MhZi&?6wa4k*f7;;e7`gLRI zlq0V`2^=)^lPQ*@6o$?7LQ$5hn${>5+tsSqYzD47==Gu~LV)W))-k4)6gs%vrSb!z zGR)bdVkfeCQ+!_!^7ZN5Cu>qte~aMB2}}pEnDk!%0b|aMgfYo@H{Z3McztF zHlezt9&%QcbH>Haq~1Mn2dE#BDPRdKODA(YQIMHZUbM`DT{AmQE%2RD=%ev~6-DF% z3IU-wi%Kl_2za^F7!KJ+{Sl0ASIFh$LP0B)bcQaobe(4$f$>DTCs89MgH!^UBx*3o z!}T{`vYFJISQ!am3>U0~)$@Bdg4xZB zCyuWyDSLl!eE!Pb!p+OS1{YrZIQQD#&+UDC^Mxz!TOSS{`{!OSdhlP?{NDUz`%YmQ zJ?RqL@BS&hw~U@&zwy=6C$3e#Iaob^>A~i`sh{3C`o-?p8;^P7CXY2nC~t86|_9M94IESI@}hybP;WS0P|^b!JCSibfV) zxplK1k#&*}W%M9Q8Bq(KUQYUA%w)T!c&&o(S$l(KA_i#^ zavT^ER#mV@G2E?2hV2;gDKt!@eFLFp96$s}W0(>S>#>+Y5EjdBief91>FWA!rGgrb z7#)doQA)(wG?7rqq)y8QtCsn^EtKk#)lNHJ24`YaBF;*rATue2R|;aGlCC(4g0Xj3F3G84-s$YPSM%6wgw+`Qa1 z)xMn{G|WBMM*U_u!VqMVW-=U~lcb_7mvgyVvDm0oT*v8kI)lLgK}-R{#OP|6ug9b| znd$L`e#-K5^?}hD*8KhM9tx4+FcXa?@VG=$GRvxhSV#xUv|6#$s@A-wJM3|g7BE!` z>uKD`l4Xsv3sSwDY1w+WQTDsd;cypm07(E9zyPoTS^#|vPymrfnu=@-d0mkJg@zIb zP69j;kOWAHq9Tnf5jk1ZE+Ef>+rcv+@Q@U-tQ^&IWXVWWExBILyRPl~E()|_8KAWg zXGBE{PdkL-vBn@}4|DZBv%T;1P7x%n|KOR`yQ|+mw|{AQ m=WB6g;u6t6`GD|3H~d!qy-y=cTRVXbSeRR!{o=`2&i)S%F2ykb literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_1_1.png b/resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_1_1.png new file mode 100644 index 0000000000000000000000000000000000000000..d15dc3732452711e92923ee4d8aa568f621cf493 GIT binary patch literal 971 zcmX9-L5SmI6n-{${eC}AwrNj^boZRUCg0}F5AU91SvS+9DcJbeD6KJ%lkg~ z-uvqEuC%fC_!~1 z%E}6cVflQ1b#=8^DwSB45k)~&Wy2_2mRYaY+wE?@A4Jh8Nz(b8WkBFTk=M)RLbXcP zY^KrV+a0CX*9W0BjGL3GC(@Y4ubXnw(MZ>zx)ys_7sIwT?3>9^W0rU)X(SP#(@+z@ zRk5Clg-v|iE6j%knlWguqf-~5s05$@=on_=xI+*wMR`1bs3=F3%Ghy^yImB91Y0Nx zMMfccosvvib6CUWt&Ujt<<>y;hI)`xNRD8n60g#-!Ie$XY$%Pc-VMwkcA}&e&w7)S z5Er1JLa_p*4U~&<-J;Z|%AsJ!T61D~sT-j~g)SHzQIqJV#`g?yV5xE47`LsdUr)pK zN$jI(gcmr9)>y70h&5Gh8b+s9>o=QWw;Kn+WHd_C6airZ)yCK!E)EEFNLMCeV_NoR zwL$8R=Ka~}_yn!fIL;M|5?NAd#^8BNRvLP?%LjAe3d% z$mAY@sN0?ClUA%f>|F_Y_wO`NYw_Zz~pZ|UC`8T-z&)+-7m;V0m zyPMzU&y~&{eO}G*4dW*`Zs@laQDHz#^!}z-u~nI-iy~Be01aB%_l4G z|8UdjY4^U~yY}P9`+G0oL0|py{`seW*G?bXInCYP*t|7->WO#G?7VshJM&rL!`e@t Qotc2`OS@YKo7cbiAIwaiC;$Ke literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_1_2.png b/resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_1_2.png new file mode 100644 index 0000000000000000000000000000000000000000..d34784b7ab72bf4f476967dabf3543fc0f6d3f9e GIT binary patch literal 974 zcmX9-Ux?du9RJ?+?s9*2ROmy%JVY%RG)R;PITu)V=0`%+k`*^78V^ z$_j>ItE;PPYioEupJ!P{6a`h44MVdmvsSCMTAg0c9}GrOl+0!<0|F0ytv;51V->q@<&cYMp>qaDR3y4l!t0h5e z9(rgx$mTeTF0x!n5G$(MFpPGk(rYw=PAByJ$!L@$2?D|ds)e!Ltk@^iAzhk?^{M8@ zm44!kX1(}$JVzUJHp}6-MCMhRF?imRmAalTtM(er!)`AcgtLhNx{O(B*49a5D;v07p_`7>b&Y<%7KUCNhbYw|O2Ae(1P51KQuiq{ z;+;hEW|jWDH9YnwXq-?v;7CkjvYJ4aRkm7^9lPu{?Y`Fx2VNWv&}_oVGV%dMfKZx6 zJ(YV5qE>BBr(C=B7}jtoYMNRu8`Y}GGBu8A39Kiwfy|5)IxgmsP9mE^Z5H_g3gz_p zxfeE$9{s?(`+F*!zJKSflw952*)D8-{7rLv{f8GL+GkZJVzIy(H{{gxiqGbR8 literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_1_3.png b/resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_1_3.png new file mode 100644 index 0000000000000000000000000000000000000000..b0d94c699720f591cb9860fb777e98161d63a234 GIT binary patch literal 906 zcmX9-L5SmI6n-_s-uxy{!A~e7D)C>*HsCJOyaL!w(*v)pT!fZ-0Nk(P$hT92_1V9vvNF z7}jhykB^UuPN&0htR#t=rkJK~+m`2fVK|x1k}O*mMOjrG3!(t3($e*IzfTPucIXS? zSe?#{d1^0mf4zw$2I~qfOCj7Y6`1tI=B_*`4ZDk(Ra_6ZMYJn3nFND@fe3+yO)V_- z@zu0lEl9LwQDvZ;0HLe{paK{eX5qL?k^xOef^em(*S+4#b)QcrC{0PO-4O{^r38bP zEvD;oW+2#O$%~cIT#FV)QuHXEWaW;aF^b9SmShdp;l!9ER+76}G0L~o^)AIlXlp?9 zfO3EiFn&VFGg?nYEARSiJ1T<=U8zjlo7gMUaF@quli_Wi zX1W~T6QzNs`KCD@3}(KcP9}Mhte4BOED?|v&>_Z6acNF!3#PZ0h8sQF4(4UBtY+Jr z)ef~79Onr_raBtKnu1^}>d>f{IWvEBJ)IR)2hT z@q=mOXP0YD6J4Y0ug)lenm*eH%ru~KQUI2ehL$WW+&G(Z-Cd=5n_O8RIq zL`4L*!SkR<&{eU%Nw@=M6v)%aoX@>HkGI<#)mmf^IHx5Bgc?ysLR*CplzLnZ=DTol zldRFIq}#w#n9Sn3NcA<&=_!HRk4El19_3lQEizQCc|}19paKx8vl!NLFF|_Fc(dWh z;Y-+yg{13Rzi&E@#jzgGh9VbBT&l23mDzSX$e@r*qcMjP5#>sK{QR4(7q>s~`Q?QM z@BQ`rCpCHd{Pg~#=C>dJ`tvLB+TF(ef7U1JTkl>TnUCoYfBfd)lskLpr|-Ue@#kl6 pJo(~>y|4E>&a>A){q5i5SCx|ozx@65zuIAd^RtW7?;m{hwWlV3Z6hMhKdRI5LP3UGAvYjGM6x>xhy;a1{y$iPDGQ zjasD6Dp89B=|joma}M9j`8|B+ zT)S{k**)?22>{sLe|hg>I!~qbST39Plf@^F0J3o5{H1fL-PqX3WHQ-oc5`!cYinzJ zdmF>BTrRh>vr{UU%M3#c0x!#=rYVM@H=9kz=?w;c7*3L8xmqza@Ek~DUQvqmI?*uc zR-1FWQh%V10wapsv$-o!Se47`V#%r!wnp|0X4n)0ry33PWZYUL?s^$ka8M~|@Lwav7NheqVuoC>RKl)PU6c1( z@~B%Id)74QE~epXbszBnRR9CP2JisJ0CNmbDoH@5fjk!_Q;7tffesIT1riC63`j4b zHiKLV`E?YvP~yUa;8_p_s7hE}D_ISyV^{jFHX1eK*jp@Ol(O&|FlL^&OOi{dKB*_1 zy;QtaW3+anV}FLGOR@+ofmP^&!V`6wF>9i2)!mLY@;Y(oEs_weW~?Y8A5a1arCGF6 z+(Y3_vpb)&UFV^UC=wJ!uGclw)ETeV6x!3wDbN9^eU!5iHyqCgZ|J=dejk8xi F`X4$_of-fD literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_2_1.png b/resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_2_1.png new file mode 100644 index 0000000000000000000000000000000000000000..ea1c1c367236473ba2e05ef0af9a17bc440ec8df GIT binary patch literal 915 zcmX9-L5SmI82x5CGwEzyBlJ))LJmFT5F}s@0dt6BW{E>&GHwkB^UA?RJ}G8Br8eRW^){Wtqd_(DSDAd6*>2JTJFfmH~kWMQ(ID&0de}515g| zdlO|g*Q3}PCpP3i7h9Bn#&(T_@Zxt$l+ zs~u|4IL@_N64_R1#^8BNRz`XyHkdo(#cZA@*>){}E@PI8+dAp?=*d6`Mrt(aE&_WM zPl{Et-9AAAfCgXzxBvmb0$_sys-TEyV4=WA`AVU{WMM2oC_%0OQURGQZTZ&KWA!X*gTXuqNKiYZe zb+|^Wl4=4+ViJRQ1hS{HgRbn_J%4OR!8l8TB2UnE&B-zf0p);DmBpyCdj?`Sm~1xO z#CrxSO~p<}?e&boz+{;r$9Mu8h-@q~ONB19HquFCQ)t4XP(Ybnm7ja1@z2vA`0)0* z3a|h5$K8sYoSmNBsek_wWgCG7o+q-wq`SQ^_m+ns# zhyD8VgO49B{{Hl{moMp~yWf6tnaHnx^xALtzbW7Q;_<(g7@XZYKmGBI_dow1qlbo# literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_2_2.png b/resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_2_2.png new file mode 100644 index 0000000000000000000000000000000000000000..22c0873d23ca0ec746da7ffcae9fbb0e8a95bb4c GIT binary patch literal 913 zcmX9-L5SmI82x5CGwDnj!dfI?z#MuA5+y>A9KsScv(_;(SvP|@REQ9mf?>%aLcxMr z?4d}+uoekgq=yIv1NJbiIrI=DhaM{C&_jhB3R5)5B0+NKVZh%k3-9|r-sQc+d*7G$ zFWRRkFP#9u>G`{7532h@HOKW@wd;Fd-36$@{r4~LRdjD}Z-0NkR;wKx92_1V9vvNF z7*?;>kB^UuR;$HvtR#u5DjP<}wynWn;QN!=EJ~79mK9~mu^Tb4y#9*4xuw=r~D9@lLHg`RcVqaU%tZXsNvtU;wZ4z__dLno#Hnp(W z#n;njxg=4}qEbh<9zsbAKmpJ(%))VpBt4oA1mRjy7TxaJah^^lD2_?4*%Ap>p#+_7 zTa4y#h9}r#X%Nbzxf(3>DC<%@$+la9%E$)au_SA#3@7>|vZB;UvQe5(H@g@Yp{WAV z1*#9Uhw&4lJ)=9ZXr-FFv4g@((6z!e4W8_^8CMgghBUX;bYQG~dm9dl*x#ig+9r6D zrx}goyQ0)nRo5`az23}qnXhw6OXU4+g$ z9_Q<%ET19~Km)J=Jb(~j0kFjYRZt|aWE1gYD1;~QUO^6ayb+zC^FG< zh_V2l1-lK{!2T`A>oA3PP zZL~q_f^Gs&VQm)gh?J>v{jTgeW-xN*;V4bQJWEiy;bj>`fHFX+%3@gAJqJ1HkGETX z>_3OSTuPmeYMMsBZ*lB^XMK?iB`%iPmBQp&3+WVcXf)TSO59^>X$n;^F{OJA3pf)VI>9U_b$$Ue*5Du{s*wnfg}I` literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_2_3.png b/resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_2_3.png new file mode 100644 index 0000000000000000000000000000000000000000..de0610c0a24fa91bdd4dec15382f5ed5e45476a0 GIT binary patch literal 892 zcmX9-F^H>n82@s)J98HfhYWet7KhLZwZ*}~L5gj?hdnIk@qFOm;DMzXGB{YskU?4p zc{n(PVjn4l;*ddTh8rA&Ita}Ws4W>%a7ZCgDQ}PxXj*Rg*T;k3_x<<{-}f7S-}mC~ zR=T=;>kABold*yZ};By0NQZ(`SYiZY_(b^CnxQ8`}Fkm?Ck9P{2aru zPN#EmanTY3jCZxvm?A^W`$h^G#XShXc!iz=I-pb-gzlk>d&D`FuE2 z7E2?|>~-Pq_K`?q8sD|#zN3+WNzHBc!4LtaFI~gNCsHfr>3GEc5a0 zqIXymsAAB;K#u`J`2auxFfh!*afcuRii&vtK~Yx2;ns0p&F3h~2(~v6`iw&I1|?av z=CEeK+cVLP&uqzC;dGnlX9amKD!vmQ9xabhTKPd2!eYV91!Q;*LQEBYHLwVoyzH!&U5Tvstyx z4~JJs0MGzzfB+x{SOM%YKn)ZTO>7iLsN5A=?hOccGTZODS@;I_ zdM)a@IvSaiiN!K5$AkhKi)}9#&pR*8`}_NU|M|9c`BS^~-SM51KR)>4JWs5*^*P?rU z&Kt_(i5A7?EbT8>zCd9u?!b^5c8hRza%3`Rju3mT*~G}Ey>;eq@r3ZqzNDcXc%VHYBr9$B!UI<4nEDH)xsQ zG*UFEmd)rcXAT7?kOqE?qsU3qV7*RJ>4mp}u?~2*A^U_Dl19e4xf&GR zXyeV!!zEheWF1%n6X}}D6CH)I+LCK`{DB<>gER@&S%QisD@iB>lmS9z7QNE$5pc&E zu2$^OdjxYf6I4~{bacxy7}{ZJk7ojbi6we2Q|nd}X#}!KG-Oc7qf{!(&pvzb@53K> z|JI2DSO5O?t&-e0K6>f2`qiuVjxYakSQTDbqIbUdL;L_rELd zJ@@XpcJc1;gU^2Y@%yju{QTnEPe1lr{?zH+=e_q1r6;aMpWgoH%EzMc+n@KpEH&Zy M`pMC^*WUQ#e_O4Hpa1{> literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_3_1.png b/resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..e46bf6d138829f539e4ef5ef3699642d1ee6bd4f GIT binary patch literal 967 zcmX9-L5SmI6n-tg$8nsH59Ew!UVGl(DTW}VBvn+h?J-*BP-s5}k z`jrFe+}8Om064e*!rs-qR`S>?7V^A#6TbmafGaN^UCimq%F62MYN1eATU%RSU*Fi+ zz%Z;>EN*UY;+0B;Wf@TvR8=+%&9cl^tJUrHhr=L>CP}i$GL`{>2Swi2v~s;pHkypn z=DR&*Fw{q(HICb}xhK+CmESgH+^&+YLG>;6xFv?&>Ud}-r%sx9%S9v+pwrM0z*Vt< ziG}UbbWqO51WFl{>FCTwD9U$G0CWs9OC_5iT#E8|{#a2?YqhCu-|6>J7!qu`BH)Zd z@;W7%bk$}Jm$!Oi%a=PN)f?+UQX@Hnkt)1O%Lb>JqUk73U+)KI5Zh7GiPOPs8I}Yn ztAN*lYy#zCTpyQ)lokqRTy4)RZ{bGhSfR@XM>Hh5UF8RcII`5ZWlX!)+;1(y?lSh# zJSvqrimtL;O%NNZ+BS?{qcLo^!+t*wg4txUSS%0_CQx0B9hAfop^oX=Omya&mo`QV zcaja$v*{9T)1?xJ;}Tg>X~y7rOI92`Z`K^PJEwzT62;j}0A0o`wPfq0Tc>+X!FSYA zuXgI&)3BFLqb$3F1b`}l1>ges0H*+R3{Vb5L`@6%9!jPP1ttp}0RjmU1&|8J#8I0? zo`Qlp8apWQ;J)!3$Rbn~tZv|TgYLM}z%xdpRvi0j8lzl`r~%vD7F=BMNIjs;gm)L3 zpEX9y?)WU2q3MDu14m*KQ_=*ouCmRV?Amp&V~_k!9QkPyp=`#_h? z-v5C&uO6uI{6D{6%gI~&dpk#u-uU3Bmmd25Lh;h!-S8Rd-s|kcpE;}FTxP@N^-sjz z$0s}JQ^owTfArqx*Rqo@lHSLalc%13pWl8R7vKGDn8>$Yedjxke9pW1_RFmO$BJ|K^RxGkKQ!|JVE^L5-j}=2eJCtSz{2_vFdKb{ zl4+14Q35MRz&@0jhk_A{oD#4P5h@g^M;IM+5TQt&MGhCFV!;#tW(j&2|y0Wsey1JUnT|%gsYJqgE_K=$g7NcdNORz6MvZwL>yEK8a%iP z*444dDNMS>#Rx}p8ZA_G>LN5KXXXJ^4ATn*3&&lO^f~TGmWQ?4#IjC09TY`4Q!Mi( zS|&J^6m_a%F`CO6ZNUztR$uW)YM9gr7N^BBr%;l{R&_yd%FT}23H30x21zTPcc;s! zz(Y}iQVj?bNEc%}C9y|VBVLay&eZTzcYuy$s;IGeL!_Jv*VTl+p~SW}@r+qur;)de z12h{HiY!T07`Da>4MlM@t=(w!94G2@;xL?!$7z}(z;z%!jOiAHKCX+nvxnkGX`h7c&gZVs0nHF9H#@yoFlI#;|Na_ja zrqy84=r6s|X*flblq>>EU?N?p@%$np{b-!ixgH}8U=E(pprmQ5P5KsaLWmz;c zxu?Kwvpt)!ZSN_J(MYIPm3mz>O`V}_miBli5SU1!$1*jql#xmxi$rY(g*=L-?D*NM zTYooN{r$5od~_Im@WtDgSI>X_-6yvn2M@pf zQ-2xXoWe9`ZvSE$9wO)yx-w_ z@B02;dGpNn835SaeQM`o*0)aQ^;}l3e)Ie<06Exy`qG8WE-fuBFE8hExs{cb)z#It zwKWXG*4NiJHa755sl>93C<=-q>AGr~Mzh&;-EO}h#PKLi=Zgi)fWU(+K)JHG65P5bpad& z>ls*N7skEfVo0DFgBBV(aS)1205X7vVMd`~5rjig9?u`j@}OEBTh_g97ex`l7E1!o z$Rw{(WrMC*tnTn;M{N31J5;=(7Nk{@BbaiDS7=G+R6{gca;vL#10zVRIBh4h-sCtc z2vAf2uL9Ws%E7oUUhY$BBp6A>o|xX;iP51<7j=%Pmub7g_jEBdm87YUU32O;=aGAy z_-GmziX25(SgtCFbw#mty;HCEZ9D3AlOULkM)Ua`0bu~;Vr;Jk@cP9)1=k~(f0XI9(k{L9wDqd-K&>*RS1uA3N9E-gH9tx^Iea@Zx=!1v9`s}-BGa&3<*xUK~$rs-KAD*e02mk;8 literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_3_4.png b/resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_3_4.png new file mode 100644 index 0000000000000000000000000000000000000000..6c0fd7c77a057f2b598a77aa65a9ebf90bb16d13 GIT binary patch literal 968 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 Up84$yBXa`Vmv=V5-MIDs|L*;ob^rhX literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_4_3.png b/resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_4_3.png new file mode 100644 index 0000000000000000000000000000000000000000..e045a5e81479f8316fe866789c76e34292683ffa GIT binary patch literal 918 zcmX9-F^J@382xrv zhGFe?`}Fjb==FLW$4Zi@X^Ls~ZQJrZFAQgkMUrLLWx1W0YX_1Km{-`%))V(BmMk`UZ&rI)Duj0K@<*fGq~7fhr-#MsbA7wMv7b0|_#GDP_p zl@YuOo(Dw&UB!kb;f|O|AkQOnx%7%6uBrkxUgQ8cry~Z08c{|`YN&C}KndJoG;x>lq{!l`%uv1I6$K@LNJ;fr72roOxPUL?H#>?`H@rk($L@a^50 we)&9Zo&JW+{=)wjejr~`f877(!OhS3Pj5YYgIIsSH+pdK@bdhZ2cLcYKQX0&)&Kwi literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_4_4.png b/resources/g2/track/raptor/large_turn_right_bank_to_diag_gentle_up_4_4.png new file mode 100644 index 0000000000000000000000000000000000000000..1a19af28c173cba7cee3d1173ee846bfb0b25630 GIT binary patch literal 952 zcmXAoL5SmY6vp3lrjyQ&W56D=7~H5mteK%ZL?`QJp@$qI2BxrO$st08 zvSgSZs#_(CMT-Ld7gw*uwU(NRWsl4Ei_A!uQ_CyS(4w zd+(F0`_-)rFJ1tEt-UKd*K&U@uS=!Xyt8-lU4T`%`p)&-VP$2dP$;afuCA@E6^q67 z^>qxxN~O}q#s*QTR5*^6BvDmm!_X|tY`5F}{%}0@qiC8WX_j#;hyp0`rlyq}4XW8< zJ6)kaP)1`t2(3xnoiAL8!D_;$DHC>$atwNCamQ^b?AIn^Gdb-n6Zb5QswC(PG(~V! zY-D0#7oUyF*@Q$(7G*j*cMysy01AMPVJ42-B#%B&Ts^4AhkWY7pU$;_meuslWesjsElmznkktbr8CrrzUjwyl=R}|Xnq#r zB9v7i>Oi%Cb})WORL8Uyie_Bv&Mh}}B6O@UWrHW1Ri;}LMurqvYTPzveQV*h)3ARQ zduS2iWu9hg9A6iurmA)gW6*4lyWMa&jD3GTou+AufHZ;bW84Ur0#cnY^|{npXzsEZ zq|P)OFVAOZXp_Nlo*=4JMP*n+5G+~g==rkNxZ67&jgu(O<|61aW~sQXQ%-{!v_!9? z27~&kXV1dHau#LT6C?uE04x9pzyml1SYUv1DH3W~$a7ILQ)nr#fEIK*v znaFl)uvqYe{xeyViKJ<2qhYjKCdamUwl8v?#Dy|DRhVV1f^-VmG#YTo7f~$d$IrjM z`RCIg`0(1k3fqr=JIIHFy`9U~FMe_BXYGZv54OMm=ArS+;jh2HR2MJ*d+F%!GIBah!7-)h!F#3Gac~}d6~1B2v{VGi$5G)R#OK`RvPVT_^yD?H?H#^C$={rFyfpTqa} z`}D$rc>2^6rvTve{ws}(`Ftv`$9D^PcMjkB5ugAUUcGcaw_96V+uPfPLZMhJ?(FQ8 zN+k@#c6WF8_V#M^dYxftLEsfd(sk7|4coQ{gVAIX#PKXm*ICBUz;hr=WmT=V+eD{J z_Z)68l*bb-jLd1`ES8=?VNI@VNHwcTxH>s9nIl_>2F>ZjNRNA~)Z46M5eJQe4iBz^ zjSVbvD)VtQo8o9iqfA35E<$k~KnBn-%&1f>9Cu05)jD6J zWrEX4(V&_Zqr03r6l`DWhl)4Vg0w}jI4#yWg_3kuH3Xw4_eR<%FoML2(|)oVFE&wy zhpGa#77$$^U5p*o#0jZJypc4Wh3T!`7#+z}RcG;zNI6YztP7#3B(^>um`mSYM}tk` zqh(yFvLw}H*cLBz6vff?VW%^3oM<#kf?zS5t=DS=xB=ta9BA z+MQ*S)yaH=%2cJo)@mYAS14NNI8%~)TE471ar(#ONg5~Ff(K2)Or>IJgxjWuUEc30 z;jne=Tk~kRn#WmoAMpT9029Ck@BxkimKdO1vVgiK@;#K!WfBYq`aA?8q%t4{kWoVp zgFG1pZ8Ytn)Psk?vmgo3l(Dv6vpQ7Y6~~?)hIW$pt5t$>7TyA;Tjt%G>=9Z(8Y$(U3s_j}j?Ae)ie& zUk`ua`o#kU&i?t!d%1aYzj5x;Ghcjk^R>tBoh>$gMOXiLA^f*}`^)#^4=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_1_3.png b/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_1_3.png new file mode 100644 index 0000000000000000000000000000000000000000..b89428df47f4dd1dd144537f550c50dc954440e1 GIT binary patch literal 981 zcmX9-Z;0D;7=G_>?yhXTQD(sik(FJSVo134XUszaJ zTwKI3Y-wp}d3iaT%jIY~&-0ul35rtEG}SN++irC_UJwkTXd1_K9yk_6Ayq16Dixwy z%hyfTZi?-W-1W77XpY7XPhmwir3zWSNLUKl(&#;d_w8c8qei{@BytX?K>-Juf+`1= zgtb-7H`Bv*Chp^Cl1H(Ojx2o{(aq{Fg%qSz~!hq`{yY9Zgp=}eBx z=0$>)$%0B1by~4lt;rj%(CA7|U-qIh!QlBqj+H1uVM;2m*2Q{DZh5K~>Os^9C+*Rp zpXMMVLADG;4M+=PTG>K}Ecu)o7R{07OsxRziBv{m@M?iFi)>rryP6al%Fx!vt}*rP z!_Y*JC$ zsdlH&Ndtxio+GKUBFky8Xd3*SGM6&mUa* zE;T&)^3T_vTKQ&wXOq98t^IZ5m#6u6KYQig__-gbH!hqeudm*^xw?Ad#r+d^euCKt zU;nuF`&TFFKjJf|s%Njhy^C(hm(9oQSNEP+d-Ju+XHOq|diBq5`CA{~e*XT=%~SpJ d|E!-&e}C`2-uW-Ll*A5fUEJQd^TO*N{trwIqA36X literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_1_4.png b/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_1_4.png new file mode 100644 index 0000000000000000000000000000000000000000..59487d0bfcfeac50fc87cbaa0d5e987a583ec1e3 GIT binary patch literal 944 zcmXAoL5SmY6vp4QGn3AAmmbPeF+z6jLe#JXiI_tUam);L$nIpFEL6;576KORAwq;A zMFSh9D>+20YmpwhkV6-;*ux+}ibM$7L%|>gE96k2Fg+}5Tmtqm=-&(r-{bMU!}}e+ z_rAD!RJ*wQ{4M}oJbY{aIO|uk+AZYICvQ(40_5T5^;-v--PqX3<#PFaesgnkYinzJ zdmF>BLZPs;vs0;7s|-U60x!#=rYVM@Tb9-94MrnB3}v2+Crt8+zNteADe(a3?poLEB8t4~LIJn5`rcb$Ya98?NgJUB8o z)Um)W&4=Z5ilY^cQWc#!2!&Mu2|&d#y;L%B+#yMq<4z=L(rC<0^YLJSf&gdARlY(? z1gDZUovNFR=5R(|uspFlmffl9#|?tT=~|VODN$n;UC=vHXP^#z-H*&L?nbNOVjYxt zD9cc30MQ20!Pr5iHX@aP*Q2_h#8J2`GE>Ee(Lg*|Nchwpv z&MY0R&gN@Wq)H{WQmGMDnW8n0GeoJQX3N?myE_?<;xI}VJg6dO$R$%HoF>(8^Ik_D z_Zt(>oCp2YJWSKahzFW z;!kSveY*AgOHgvV|*oq==wTe*2!W+P}i@Z~jTtf9pJ?5N5 z@zU0K-J72I3p7v2GOz?zqe}`;G-amU5FNAWcFnQZjY4k~hbUdJqKJGzF(8y>(aCVn zgj?@34&ty!ef}+UHrq*uj3~jM=k7qoA2}F7(QLB0tsRS}f)Mt>-qe#q-pS@Om zdj10+9UsZ?#_1pLXXd@b{k>by-T(Z{z1^QKU)cN?&0jl6zqxwNC z%7uFmzkTxH?n&|I+vHz&UjOkW<-eCdIF0_ieCktwUpKx!{y6vOm9JjNefr=-;gcJ$ k{_+&Nz4zIrrtup*`u*2S-`|k0W+XT~INJa2%{zDh2XoDk*#H0l literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_2_1.png b/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_2_1.png new file mode 100644 index 0000000000000000000000000000000000000000..c69b37b68665cc8b789854703443682b7a9aafbb GIT binary patch literal 902 zcmX9-L5SmI6n-BJ@x& zYQQ2n1nD6x6^i80LtuNDLxdi(5U?ygL?}`*NDl>b*h7#k^f2IWmWA)VkMHo_clh4> z@!^GZ^TwMu0O02N$7h!{V|AT28+CvF!*4$UG~nSUj~>+W;Nal!@UYQn9334UA0MBb zoM0H%Y&K6%PdnXimt`4I6jW6+OD@91NL} z#|IN-Ha8ZDy~@1pE);1@<6D;8aWv95sj1CgxndG%tGSggM@1g)%Tyx3pkW|@uVOO` zOFVotYga1*6%48jbnPRQb^#Os1H&vFcL>6#sF3Hc6lK}#Z5-#tbc&LMVB1}x!zd(g zP?AM!4r}_nJrUhV9xv2zWyE=p7%rljh^Bm~Hn7E@JJOue6T!+fZ)=C8pQ0;;Zkrr2kZ4ciXQsHY)yy?FfxU~|G70usgmx+3 z<|tZYxt<^nRMj)h$zU+|ykt7f;&{7Wmt~27uz(6Mc7}@!LS50ltvK50VKG>g{<@kM z*PA_R(Kya^IuhAcX~yJvTUJI!y=*x5#>?3}PqS((fFWbHiaQ4B_vy({h(_vS(pyH( zCYcnQw5nbp0YC$=0epZ6Utj>IGe*9Ee#vcsP2JNiN%Q1n#Mk1TY%vzxft&0p2ITV_(C>BsA*T>Jj*ZTL>4}5)j zp~Ag?{`|5Qch1l5KWaXC_xb(X@J{pa-hb%sczNf^=a<#9TTP&TAG|Mo@y6}1ZvFk~ m)6af>`OV|M?mqkA?O%RuAAVQQ!})`Yv!@?D{{DZLlY9XH literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_2_2.png b/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_2_2.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_2_3.png b/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_2_3.png new file mode 100644 index 0000000000000000000000000000000000000000..cc38c7f313377dbc42b1516e5783b07e7a95d195 GIT binary patch literal 936 zcmXAoL5SmY6vp37XC|HL4js0Kia{b*lq>ZftC9Zf=%JrLC>4?d|QI zogECr%H{Iz?ry!&XfO;d2)rzdnx+_rZdsP&jHgpSisng@5yUwB}4k`s*9&8z# z=vX+YE+(~nhNF~5xr#1qgrWw31fXJ=UaguqZj+?Tac7cr-fk~U^Wk`m!VqU_4ZcoG z1gDZsoobnkW^=|!usm@X$nH$_lQzNPbhE+9l&GWbAxeF>2|5Eq9{eUG5+E6nUPl84 zxf1d_Xx2xG3r~V)K@^}RVI8e*cB!G=oVZ#LSaIy7X^aXM-Ug;u;qAKQ5~@$?31?@D zmv@7;GrRDYXpxaMUdo>uZ-4pI{{2_Vr9aK@H$T7g`&XareS5O%e?)E_{P$z} z>I)BUF>h!eT))J0|N8g-&+lHn_s`|U`!D8~pPzk3UwQoNrGvY_jE=Y~f1_KEhu5>` bKHm84hxg*s@4kMfAi&YJeSjQXx_IS$CRbKgR##VZx!l^?+WPwX z#>NJQVflQ1b91v)E|*!B5k)~!Bu%RshTd+s9j8AW`cX7Vl4Y8*3B)nk8id9;wq|ozq_HYr(4~@DC2fuB8|*<_44vwDs3)V&B5{wFQH21NhNb|v zf(>*mwD9Smn2rgwU{I=}V;iBU3?Kuj7^dU6Nf0(gxjcU$%cFXIYMPJweH4ZSTPzDD zMkaZcs_1mpWHp;NdScs?x`E=3RX?ed9Klq|yh2MFSJOqkBX|00-`D-vjFN7=7|f1B zT!5kir81kZsaLRH2ZTFGqEUAr=HwIFE6vA0;nDDxufz_tp4U6Nf=^(j5! z?PbkNo57JYKK5s5x}=K0kywSnYXaF&*j8P#&4$}G1FsuL-Xe)mI^!e>`G68YD9fUg z**yi(ZuRDKuID_3F&>Mxn$l=!t(ML*ZH{pS))U!KVkR=ZsFsmRB9lTr7Wo2-rL6qi z>xF-w{Js~*1m>**w?w&gR?FaGWcVD}Y!aHx>JACDb2bm+l_W7NyyXUUm`XBvZn8yGB literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_3_1.png b/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..859c3b35e640a9f170eb67f27c5630d8497c13df GIT binary patch literal 969 zcmX9-Pl)4m82#pNX11<@sZcbBjMgzLSqT~>haj0Tvvh{YWZf)O%tFMlc9$L^L<|xn zx<$&`WusK=E@kK;xJ3dM93es(B19Y{17Yc*LJma=_ONQv9!41DXO@NceUEqf-r>FP z=Ec3z*)va_0f4i+JKL8sUeD%_g}i!95CqM#^}uB)bL)M~X>tJCWRQ8Y-?>1@U_An+hdIaSS9tE6Q! z^#l#?tz=z%ZEGE!|K{E}Vx(G!@02x5TFayUOf^aFy0#n})5E z#7E-@&vO)AX1R(WT8h%p^|od88jY~iNrGTB7)+;A1cU)p3uC*u*e8^ju8hR`SoJ1W zf9eiqy~*kD1m$QP=L&@qSyX67=Xq0->sofq?lqc6-Ci0cvylLrgqaHNXrx=E+qU4> zm43T&rTQpv;S?0Bh$2w;+3@7EngY zyHnMlS^bk%d>V|Ls{&b7Si2&*PStBVeZQGR{v?giY{W?t3IL^mP?kkK zvwH-hX1B*Y^1sH<-nsd~@%sAvx9{#84zH}e^yTsK?*6r( zzQ4Ej;@4OIk#8G6?|*vu%>LW2Tt9#KeD2!4C$U?%@EiX=cmCr$SbQ#g^N(gTO9Wu| M!rt~bufBETe<;D5ivR!s literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_3_2.png b/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_3_2.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_3_3.png b/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_3_3.png new file mode 100644 index 0000000000000000000000000000000000000000..edc9ba5002308d6d2f969c3552debf3f430211be GIT binary patch literal 1009 zcmX9-afsV=6n=NTyWH&@1q-WZ9Z{;r5zoT%N0gv(=4N+BFJsv*unKWREUbTonL*XE z1=d2*aLc4N0cybQb%NEbdqWRs9NwQK?@#o$j^+y_uk|C=Y1c1 z?|poDCA)jq*zD}=+}vC;ola9!hT~XK`PmeG!hke3D!0AvhP<8eKeG6}+Bm~}ze%;)>MzSV3Z*G*B0 zG@Hx_I3p8Tm6UW!F&VAFm2JM(5v{K51bLiJWwL2TBzc9-shnCBs!h4+sE)6DLCqhv z2HS3&g@g#nJm4iDOpIXNxVYtnv?>K{AFAPHjDHVu1Mz!KxCna{t{D7+t zbJnQX3C-TPJ=*DSqj@qOr<2Jno)*cB!Y~>yROM({scqCYTkXK}#{(8*9@E6QF5_l_ zY?N5LDs~$AOT$wD9i z5&@}6WKhTwkW)b2Dhe!k5IhY$2ar#}_v}&Nq49v`dE@{J z0HG+0Y9#j%sdA|?9MX;YLulPDm&=KTf>J7}RHjU4>MUh*l*?y&0y&b>NXC&)paz8; z7WsU1{Pg1dUk`rZ^pO=2Uj6;i@z$4E z_x2yRUSB-5fNdSW*jW6!cHyO;PQHDDxVQhQu#$VW^7$p{!rWueU%GebgZF>yeNnmj znSEmY@5DlQ@{_g7_pASHu&Z~@u1;RQNlUfb;+}=;-+lCMUjNy>e@1!Y)Q!k0EFWB1 Ky7t;T=l%yvH?>Fr literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_3_4.png b/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_3_4.png new file mode 100644 index 0000000000000000000000000000000000000000..c4892dc6930b38de24ae9572cd1f007d95df58dd GIT binary patch literal 1005 zcmX9-QE20I82`3z%eFcz_U;0ggE;$;ap9~IBtj<9%SN5iWnS(ml7|QZJMBZj2t_i@ z&JKE7B}j#$MT!RPL%=En^U#OFRjvm`BKDzo@=ZENYr!7<#c-tXAvIrq}88gJ2SdOd5C&Br&ci$$XwH znCViPtJb7OQ*E`4o?jl09D&BNTwE7%D@)oMRX3R9qR_5pdrdv)md1fIopdq;s5BIK zuw|^FW9@Qc&`5?o0*%usRME^vsFMPa08|Xq6A6nTY>IL??pTt#x!l0A?$zt4-6oi1 zipSFu$*ELEr?VEL*_=@mimq5`$xcu8f*i>b=}d}~X;EVpUC>KXsjk*N-Se$ZQ1Qo& z;k2FLAt?i%1JVS_#@ITZX;Mm?*ZpjHXgCwQgN`LSsj);MLzlB$Llatt>=(5`)flk}O4M88*iY1z9d@TCGrMmdovW-S@m#v{tL=`|fz`qezR$0b|B_8_)qojZK$F~LOcPQSnL)5_xgqsMoL zr^$n_zj|K2rDXRvHV;0#m7jfk^2NbytA6q1+8zGG-{1M@511T3_~G`bw6y?fTj zk1qUq^PCj_;Pl||$v5|{yZF=7@cQWDvm|`CcX#vBnZMR9tpD=Hjmz6-SASl=cH4Vm yRyF@Qdhlyw{r=&5N4Nh|ZhSwO+kBBYZuX8?V>^ literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_4_1.png b/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_4_1.png new file mode 100644 index 0000000000000000000000000000000000000000..062a5edbd8a04109066508c6e43a3d910adf188e GIT binary patch literal 952 zcmXAoL5SmY6vp4obS9lCGj%C!zz7j40)Gq3~mlRLoar{}XXRHDme4##U`RiPP;=S@lOsQI$C-|bCCeiFsYxd5t!nM&DGNk^v#ZNcj( z<3V%cS+j7E&Z6b=5fT9E049I~-~mhk78syhvWVIy@?4b6WC{!xdIAJBNMt|?AOlBT z7P&GCbTsXt#D$CCIgmuC%b2d=R*UXAwUMih$95chX&R%PMKpnJmjnlwT~ZAwBjKH_ z;VoO^v;Oovn4?)nRe&S08dGivq^_{-rsP<<+q1@AFOIx4iO_P+NfHVGC4f+#MJLBS z6=Amriv>66Kb1M1ij9V%>sq^Qu#C+yeS!5vHk6oCnNI6fq>{*@(11mOfMO{>e(uH6 z-xojd!LcQTfSKs^Se;vl0CIA2c literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_4_2.png b/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_4_2.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_4_3.png b/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_4_3.png new file mode 100644 index 0000000000000000000000000000000000000000..f7af8832bba5d4debf0bf80c410b1bd2eafcab8d GIT binary patch literal 1024 zcmX9-afsV=6n@wCE_YXFg>F{t9~qR9VbpGf86jwP=4L%3mvPzXw6YAN>$cA2j|iPq z$aY1_C>XT5{86Dwkm53~;NgOHtV(1BD}-@Em54nluH0^3ks?KJ@H1oZz4!S3dEW=$ zdzTI`rgqFeJ_`Ul7G9cP^5-tUo|q2$J@@DOZva6!{K}C-KAo7D2m}JbU@#O4O-@cu zO-*4KHa$H(GcyxQBoY*rLQVoe0FW?DiA1z`Tqg*VVO9m9oy~SNZL?NGtyY|h zCfHa~z!`~1DP&rsWSvo~T+!kyP0{Q~wwJ}}cruk>M3R^3jKV1;p;VJ2 zy*F+}Scr-c%K}~iLdWP@EY%<~Emm>U<(_H|bqB2qWK^c(`4m}BGj*A3s-jzzyN24g zio=#Mb}iI*B2k(k(-fU$xx6TrWx1NqH_GK!t>)TxZ*6Tj93qG-Ko}TRk8sVn*den$ zuGG(%gM4$SuZp8MoV6BqatY+Jm)@@Y>U1v1fL@YoWKn2hNEPysZ9|Pn=;7~zDmWjNsK!8F)g#|kW zo&ZP$q{L8}LZ*Q19O{&iXTts9Y2Z0X3s_E$X?e1ur|PEMY!+SD8Vp?IYsIrb6~e3@ z6HHvP3B_adVa6Ken`5K1ZTC=jNJN3gu~agWVeypdNj`? z8;}PG`B{{Fxd(_B3)Oy~t{M-Zb~;=pBj$2)p`cL7BAql?%HpUNpIj5jK{|mX9BBlq zQpjeJ%lpSqKNbG_{tvvfv?#*C+rOOj$;!g~+>yN>exlDk?CgFh^e^hZ{N24hr}sbh z;u{I(Kw%JACD@^nsl(-g(yw9DQcr z#*_7re*fys&#xYT?vJapC-?l8Z2WxoC5;+ge}!LD)Pee84CSiUwH3LQT+cTU`8 zUs!pXdwuui`qk{|AFqEF`RVR^cTe3ZoY)Hd`swEKmi+P7*?)GvX)f91#{LxBzV`Lo b?u`lWAbGF%&9i%b=df^Saen266U+YtU)#Mw literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_4_4.png b/resources/g2/track/raptor/large_turn_right_bank_to_orthogonal_gentle_up_4_4.png new file mode 100644 index 0000000000000000000000000000000000000000..be90dd0aa835b7b2bd2c42ca596b5900d1f853e8 GIT binary patch literal 1037 zcmX9-Z;0D;7=G_>?vJ~E=t*UPRqZf4!l)8P#K3Ycch+0B%e)*`s2Vl5^+ONxA!o zG&DRsjA7Ww$jIpEXebhiP*jxTSW)CmH~kuPb7k= zR5+c9=JHIjBvh(W%~l(3zSTB35{onA3LnbG!@5kARcb@y>|(r8RlItx;~6_$Cx(MW zLYf6##3~AA=L5}3u-Cv*CyII!x~(JRL;wT;3B!~?AdBNVK^P3PAqe$kvYE|pm&?eu zaVi*LLs22jNJLB_<5^198MVY|CSRzDMnkf^WSGXIu?QoQyi6w)PRR+mvQ)Md%gs7o z!R=I9J9dDDpa`KPgfl?s7+nsXoYJxV;t&5|623 zAS;FS6j{o!W=^b?l65oNv`d|))9Y;`79b9w0_XrHKpmis0rDYmD5E0NKweWIK%t<( zf)xW#03-rZLMTrmLqJvvHFC%^;GXd`@EpViEG37sX|kZlDu!IEX|8K_Ixh0H@FY-~ zaaIorMp&{4#bfkt!tAAMJH^IrtA(0fA_#OCi$wzoHk=ZvOp@2LDWj0BnFZG|JD!7j zEt=<%1;_)0d@pjo+dkOy0Wk@hQ8!Twnk3kpm~cKXdB$J!5L&{Wn+6VV{&%udZGC;JwxU**^|kzOeq^ z>W$ydPo>w+?K`+|^s9>#%fi1;?YkcS>+0I{oxMkv&b)JhSU;{GKlj4j%7=eXNoOx# z{C3h0+k>a)pLzMky*KxBuRdDercbg{&);}ST3ox?{ch>n*@+(x{&e(n`}7;XoY(Hi t_~b+FFE^)`RyRK~HupSnA~5omB>#u3*1an;CRWq%{cPM!6K#*G+?07WlfM`4;R^?+19O*9kgn;oi5HyqZG+T(4vL?%ou#{J-&b5 z2jBPJ**&AorVU#*0Kle^;lZ)ioNAS;+tTVACnw7Q7TB|Ue5gg++S=ON+btGLM@L6z zXJ=Pe7lvWo-Q7JsJr1|qO%Pt1rg)we#eghJ(P%W8Ocx4TskCC6jb@YZ0_6jawFUzA zP{H&!t}VUlC?L>PE_}zrhwK}gi3Az4nV*#$!1fWPSxYd_~6~8{6My_5r zP)o}h1R`RkR0o%F37SVTeQG0+Yle$!$@02ZMU{rf4x|fXytV-43h_iF$f`;xlTeDe zgi*@X%@S%>NtQ(#AQKR3Wf5!1J%%$HN!4m(D)|_4xl9KFd?+MFA`;<^lHMdmxGXFy|ej^DLQ@NuZijWlk3NiNBVd-SK9n^$MA z>Ytrb=61aG?577(yY`Pqc6=ZFaO~i<{MBpc9k=#<@XPS>$yff~ZqXh>Z^!J2aN^GW QmJ={CG&-1n`S5%H12+2TXaE2J literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_1_1.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_1_1.png new file mode 100644 index 0000000000000000000000000000000000000000..9f30b16ca823a06946c1782c02033076ea3fc2d3 GIT binary patch literal 1135 zcmX9-Z)_8F82;_=jm_CWO`3S<8Jc)mPSWTF4lVJ-8!33On;dw?sz-8W{m{XQr&R2R zLz< z_we9=uebZoZU8{<)-C-z?5fy-b+y^Krng=PpbZRe+qu~uTUuILTU*=O+S=ROJ32Z# zJ3A2s>FVlQv0{bG?RJx-hhb=*XC=w6C~_ncNhDIaT;4DyEvwONk{&>N0mt_E{mx(z z3xz$=m^YE+GC8qORLW+oT1ztoB6xdb)};!VCgCZCoQN>Rgiy}ORw-Jy(u)nlhXRoR zAsT2rl97>O%u&fWn`IQ%J+LXlB@IHu4FCs#h#<1Vp`xgU<7uyVg5yeoKt)wAr&6$3 zL`kQcc6m6=E8;$x5L8mqyh@UZ=xn^er^{mA3SboK@wvS`!Ag{0X5=UrO^Kf~gj(SQJz0iHm}jDsnl ze3=MTnP|t27W< zMByE(h-pD08K(6pUq}W@x>_kF>lLHfybNgog#X>30iXj=vi*PnXoF*5Sb=&PS``il zG6~`|$oqiB0muU=yI_ojX%6OtupEU}8r&3~0xSar4hc#wHAKWUUnVUT3K7%P>va>_ zTxbB0;T~FZacNA<iXsljwyE$DI6 z(Cd}~n^lTsVIDvWKxk_bwdrmFjf9i68kJ1kf>JIsem@@!O5w0fdLoo3L6bT|7Fo|E zN7My36fvmcFiFBZ4NcZIKee`J;pPv#xMP3^k6fA>virNX_HWv`0VZ?$u^Kz8u?gQC}E(@{i*$g(vo0+4n)~V}BN2Xikrwx$y7EG0pn+jqSC0;zsZH zCtXu#1_a@sSC4-h7Ds;hW_s;%c68>Bp-bbr@|Qog4^#N^zS*~hL-W_x3}n^W)2H4g z%qtINug wQ_g$e=_}s8Jic*o>fp<-pPim~PHK60Jaz3h*Sa5h`)Xk8=7Ij~qq`6N2kY(v_5c6? literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_1_2.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_1_2.png new file mode 100644 index 0000000000000000000000000000000000000000..9f30b16ca823a06946c1782c02033076ea3fc2d3 GIT binary patch literal 1135 zcmX9-Z)_8F82;_=jm_CWO`3S<8Jc)mPSWTF4lVJ-8!33On;dw?sz-8W{m{XQr&R2R zLz< z_we9=uebZoZU8{<)-C-z?5fy-b+y^Krng=PpbZRe+qu~uTUuILTU*=O+S=ROJ32Z# zJ3A2s>FVlQv0{bG?RJx-hhb=*XC=w6C~_ncNhDIaT;4DyEvwONk{&>N0mt_E{mx(z z3xz$=m^YE+GC8qORLW+oT1ztoB6xdb)};!VCgCZCoQN>Rgiy}ORw-Jy(u)nlhXRoR zAsT2rl97>O%u&fWn`IQ%J+LXlB@IHu4FCs#h#<1Vp`xgU<7uyVg5yeoKt)wAr&6$3 zL`kQcc6m6=E8;$x5L8mqyh@UZ=xn^er^{mA3SboK@wvS`!Ag{0X5=UrO^Kf~gj(SQJz0iHm}jDsnl ze3=MTnP|t27W< zMByE(h-pD08K(6pUq}W@x>_kF>lLHfybNgog#X>30iXj=vi*PnXoF*5Sb=&PS``il zG6~`|$oqiB0muU=yI_ojX%6OtupEU}8r&3~0xSar4hc#wHAKWUUnVUT3K7%P>va>_ zTxbB0;T~FZacNA<iXsljwyE$DI6 z(Cd}~n^lTsVIDvWKxk_bwdrmFjf9i68kJ1kf>JIsem@@!O5w0fdLoo3L6bT|7Fo|E zN7My36fvmcFiFBZ4NcZIKee`J;pPv#xMP3^k6fA>virNX_HWv`0VZ?$u^Kz8u?gQC}E(@{i*$g(vo0+4n)~V}BN2Xikrwx$y7EG0pn+jqSC0;zsZH zCtXu#1_a@sSC4-h7Ds;hW_s;%c68>Bp-bbr@|Qog4^#N^zS*~hL-W_x3}n^W)2H4g z%qtINug wQ_g$e=_}s8Jic*o>fp<-pPim~PHK60Jaz3h*Sa5h`)Xk8=7Ij~qq`6N2kY(v_5c6? literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_1_3.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_1_3.png new file mode 100644 index 0000000000000000000000000000000000000000..9f30b16ca823a06946c1782c02033076ea3fc2d3 GIT binary patch literal 1135 zcmX9-Z)_8F82;_=jm_CWO`3S<8Jc)mPSWTF4lVJ-8!33On;dw?sz-8W{m{XQr&R2R zLz< z_we9=uebZoZU8{<)-C-z?5fy-b+y^Krng=PpbZRe+qu~uTUuILTU*=O+S=ROJ32Z# zJ3A2s>FVlQv0{bG?RJx-hhb=*XC=w6C~_ncNhDIaT;4DyEvwONk{&>N0mt_E{mx(z z3xz$=m^YE+GC8qORLW+oT1ztoB6xdb)};!VCgCZCoQN>Rgiy}ORw-Jy(u)nlhXRoR zAsT2rl97>O%u&fWn`IQ%J+LXlB@IHu4FCs#h#<1Vp`xgU<7uyVg5yeoKt)wAr&6$3 zL`kQcc6m6=E8;$x5L8mqyh@UZ=xn^er^{mA3SboK@wvS`!Ag{0X5=UrO^Kf~gj(SQJz0iHm}jDsnl ze3=MTnP|t27W< zMByE(h-pD08K(6pUq}W@x>_kF>lLHfybNgog#X>30iXj=vi*PnXoF*5Sb=&PS``il zG6~`|$oqiB0muU=yI_ojX%6OtupEU}8r&3~0xSar4hc#wHAKWUUnVUT3K7%P>va>_ zTxbB0;T~FZacNA<iXsljwyE$DI6 z(Cd}~n^lTsVIDvWKxk_bwdrmFjf9i68kJ1kf>JIsem@@!O5w0fdLoo3L6bT|7Fo|E zN7My36fvmcFiFBZ4NcZIKee`J;pPv#xMP3^k6fA>virNX_HWv`0VZ?$u^Kz8u?gQC}E(@{i*$g(vo0+4n)~V}BN2Xikrwx$y7EG0pn+jqSC0;zsZH zCtXu#1_a@sSC4-h7Ds;hW_s;%c68>Bp-bbr@|Qog4^#N^zS*~hL-W_x3}n^W)2H4g z%qtINug wQ_g$e=_}s8Jic*o>fp<-pPim~PHK60Jaz3h*Sa5h`)Xk8=7Ij~qq`6N2kY(v_5c6? literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_1_4.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_1_4.png new file mode 100644 index 0000000000000000000000000000000000000000..9f30b16ca823a06946c1782c02033076ea3fc2d3 GIT binary patch literal 1135 zcmX9-Z)_8F82;_=jm_CWO`3S<8Jc)mPSWTF4lVJ-8!33On;dw?sz-8W{m{XQr&R2R zLz< z_we9=uebZoZU8{<)-C-z?5fy-b+y^Krng=PpbZRe+qu~uTUuILTU*=O+S=ROJ32Z# zJ3A2s>FVlQv0{bG?RJx-hhb=*XC=w6C~_ncNhDIaT;4DyEvwONk{&>N0mt_E{mx(z z3xz$=m^YE+GC8qORLW+oT1ztoB6xdb)};!VCgCZCoQN>Rgiy}ORw-Jy(u)nlhXRoR zAsT2rl97>O%u&fWn`IQ%J+LXlB@IHu4FCs#h#<1Vp`xgU<7uyVg5yeoKt)wAr&6$3 zL`kQcc6m6=E8;$x5L8mqyh@UZ=xn^er^{mA3SboK@wvS`!Ag{0X5=UrO^Kf~gj(SQJz0iHm}jDsnl ze3=MTnP|t27W< zMByE(h-pD08K(6pUq}W@x>_kF>lLHfybNgog#X>30iXj=vi*PnXoF*5Sb=&PS``il zG6~`|$oqiB0muU=yI_ojX%6OtupEU}8r&3~0xSar4hc#wHAKWUUnVUT3K7%P>va>_ zTxbB0;T~FZacNA<iXsljwyE$DI6 z(Cd}~n^lTsVIDvWKxk_bwdrmFjf9i68kJ1kf>JIsem@@!O5w0fdLoo3L6bT|7Fo|E zN7My36fvmcFiFBZ4NcZIKee`J;pPv#xMP3^k6fA>virNX_HWv`0VZ?$u^Kz8u?gQC}E(@{i*$g(vo0+4n)~V}BN2Xikrwx$y7EG0pn+jqSC0;zsZH zCtXu#1_a@sSC4-h7Ds;hW_s;%c68>Bp-bbr@|Qog4^#N^zS*~hL-W_x3}n^W)2H4g z%qtINug wQ_g$e=_}s8Jic*o>fp<-pPim~PHK60Jaz3h*Sa5h`)Xk8=7Ij~qq`6N2kY(v_5c6? literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_2.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_2.png new file mode 100644 index 0000000000000000000000000000000000000000..c66c2c86d91d373cc80f55934dfb8a08f28b9d7c GIT binary patch literal 1176 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 literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_2_2.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_2_2.png new file mode 100644 index 0000000000000000000000000000000000000000..31995fb2d2b813ee8175fa1e655a4ef75a32915e GIT binary patch literal 1220 zcmX9-Z)_8F82;@aH>k5{GYT|%h9U(DIq-0m^us9!DdT2ua*%?R9CCz1yK%}b6zO6U z3aL=snbc9BXvL}x>0%v&oN`DdCmEx_2~(;zSfN7sBWad?7%=4L5t8S9pXdGZJ|CX< z-PP`PHBFd00RYg{x^(e!om=$kXspxwq@Ml{0jLA*Z7Y`OV@*v>ZEbB`U0r>BeM3XT zxN+kU1Ziw+96x@%*=n`oI7X5L!%!UO6-6Nw3dLfHOh#7K;XPFUoPeebUa!gL zL;V3P9C60tbSlFtSuv+YilroJM?6l0K$(LcRN`z25g!PV*_bDn5ekFhav?cdQC$|m z+JT<{5`&}!BpWg2Q>JRp0?QbzvT#g-P_+U;1HdAPU^E6T7RhEyI-LVFJ;?LdHX@3Kcc&J;%~ zBBO=4d`v8*LzQf7R7=B>YBV`)b`S303DVCn5sr)d{h3H4n@DJ~TpS**R4Ncy1YnCH zc*;mB7A9xsi)6UuO_u#iMH;SV%47LaXs{cN4zt;XS{XaWIh`U!hgp4DAQOoWrZNRp zs}>2sQi#YHgDfif?C}7R4l_!eA4~`H*?2jxR;za)0e}Yp5daB*GysDDln?-Q&?F3q zFr9>jJZ%F44x$8*U7$b%$N(sqVFZUs8p=MH3&TPZJPzIgC=z&R#K)O~etT4MrIMVY zgfuN(E^AQtvhV;87zoKsCs9_m2?eKA@usVOWi*x>lZ!B4v6+AaMO>KCOQ1dm5Ac)} z^d+M~B^}k&bh)6yYSBSaPzJC7Ak?!6>vm6I2?gS%k|Q2_0x_2(yD%UHsaLRXcy& zyYN|c-cxn=VW#z~=S_*trUy&6_3`Udr@>q8yU(BNDb2gT@Ioqgr1w_0(xrU!?xUM6 z=lfO`u`9E0eR+TLo$0G@-@a6{cT)4!j;n2h?_K`&nS+Ow{*PXH?%KJjGu_)yKU%fm z4>U3v@9&#vuwcJzZIDLi9NX&pXY2G0J>hkeCJzVaZsgBQJNWa0$#|^V^TWpDBlF+5 zb!wT6Hus;{v+Lh!6MJh9-y@eC%~^MBxjwhKf5)X6>&x%6^0i~{bpE+(P3Lzz`nQZ+ zaPJ(tdxrh|w2j%a)}Pt^{r=dRlgF=IJ~f}-7yInZ4?4%DEPr%E^M0LbzxxxvA@5fH z`t9k5;?RnjFFJ45pY7Jg%ZFZ2nuodzWVL6YiIqpa@nzwi?jHyZ5Vh>0NC7g9Ced pJ3CsWM*j=dheJmWY`S=I--MUGh#$G~K#u~nE^#mZcG24H{{!~kB;Ei3 literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_2_3.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_2_3.png new file mode 100644 index 0000000000000000000000000000000000000000..31995fb2d2b813ee8175fa1e655a4ef75a32915e GIT binary patch literal 1220 zcmX9-Z)_8F82;@aH>k5{GYT|%h9U(DIq-0m^us9!DdT2ua*%?R9CCz1yK%}b6zO6U z3aL=snbc9BXvL}x>0%v&oN`DdCmEx_2~(;zSfN7sBWad?7%=4L5t8S9pXdGZJ|CX< z-PP`PHBFd00RYg{x^(e!om=$kXspxwq@Ml{0jLA*Z7Y`OV@*v>ZEbB`U0r>BeM3XT zxN+kU1Ziw+96x@%*=n`oI7X5L!%!UO6-6Nw3dLfHOh#7K;XPFUoPeebUa!gL zL;V3P9C60tbSlFtSuv+YilroJM?6l0K$(LcRN`z25g!PV*_bDn5ekFhav?cdQC$|m z+JT<{5`&}!BpWg2Q>JRp0?QbzvT#g-P_+U;1HdAPU^E6T7RhEyI-LVFJ;?LdHX@3Kcc&J;%~ zBBO=4d`v8*LzQf7R7=B>YBV`)b`S303DVCn5sr)d{h3H4n@DJ~TpS**R4Ncy1YnCH zc*;mB7A9xsi)6UuO_u#iMH;SV%47LaXs{cN4zt;XS{XaWIh`U!hgp4DAQOoWrZNRp zs}>2sQi#YHgDfif?C}7R4l_!eA4~`H*?2jxR;za)0e}Yp5daB*GysDDln?-Q&?F3q zFr9>jJZ%F44x$8*U7$b%$N(sqVFZUs8p=MH3&TPZJPzIgC=z&R#K)O~etT4MrIMVY zgfuN(E^AQtvhV;87zoKsCs9_m2?eKA@usVOWi*x>lZ!B4v6+AaMO>KCOQ1dm5Ac)} z^d+M~B^}k&bh)6yYSBSaPzJC7Ak?!6>vm6I2?gS%k|Q2_0x_2(yD%UHsaLRXcy& zyYN|c-cxn=VW#z~=S_*trUy&6_3`Udr@>q8yU(BNDb2gT@Ioqgr1w_0(xrU!?xUM6 z=lfO`u`9E0eR+TLo$0G@-@a6{cT)4!j;n2h?_K`&nS+Ow{*PXH?%KJjGu_)yKU%fm z4>U3v@9&#vuwcJzZIDLi9NX&pXY2G0J>hkeCJzVaZsgBQJNWa0$#|^V^TWpDBlF+5 zb!wT6Hus;{v+Lh!6MJh9-y@eC%~^MBxjwhKf5)X6>&x%6^0i~{bpE+(P3Lzz`nQZ+ zaPJ(tdxrh|w2j%a)}Pt^{r=dRlgF=IJ~f}-7yInZ4?4%DEPr%E^M0LbzxxxvA@5fH z`t9k5;?RnjFFJ45pY7Jg%ZFZ2nuodzWVL6YiIqpa@nzwi?jHyZ5Vh>0NC7g9Ced pJ3CsWM*j=dheJmWY`S=I--MUGh#$G~K#u~nE^#mZcG24H{{!~kB;Ei3 literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_2_4.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_2_4.png new file mode 100644 index 0000000000000000000000000000000000000000..31995fb2d2b813ee8175fa1e655a4ef75a32915e GIT binary patch literal 1220 zcmX9-Z)_8F82;@aH>k5{GYT|%h9U(DIq-0m^us9!DdT2ua*%?R9CCz1yK%}b6zO6U z3aL=snbc9BXvL}x>0%v&oN`DdCmEx_2~(;zSfN7sBWad?7%=4L5t8S9pXdGZJ|CX< z-PP`PHBFd00RYg{x^(e!om=$kXspxwq@Ml{0jLA*Z7Y`OV@*v>ZEbB`U0r>BeM3XT zxN+kU1Ziw+96x@%*=n`oI7X5L!%!UO6-6Nw3dLfHOh#7K;XPFUoPeebUa!gL zL;V3P9C60tbSlFtSuv+YilroJM?6l0K$(LcRN`z25g!PV*_bDn5ekFhav?cdQC$|m z+JT<{5`&}!BpWg2Q>JRp0?QbzvT#g-P_+U;1HdAPU^E6T7RhEyI-LVFJ;?LdHX@3Kcc&J;%~ zBBO=4d`v8*LzQf7R7=B>YBV`)b`S303DVCn5sr)d{h3H4n@DJ~TpS**R4Ncy1YnCH zc*;mB7A9xsi)6UuO_u#iMH;SV%47LaXs{cN4zt;XS{XaWIh`U!hgp4DAQOoWrZNRp zs}>2sQi#YHgDfif?C}7R4l_!eA4~`H*?2jxR;za)0e}Yp5daB*GysDDln?-Q&?F3q zFr9>jJZ%F44x$8*U7$b%$N(sqVFZUs8p=MH3&TPZJPzIgC=z&R#K)O~etT4MrIMVY zgfuN(E^AQtvhV;87zoKsCs9_m2?eKA@usVOWi*x>lZ!B4v6+AaMO>KCOQ1dm5Ac)} z^d+M~B^}k&bh)6yYSBSaPzJC7Ak?!6>vm6I2?gS%k|Q2_0x_2(yD%UHsaLRXcy& zyYN|c-cxn=VW#z~=S_*trUy&6_3`Udr@>q8yU(BNDb2gT@Ioqgr1w_0(xrU!?xUM6 z=lfO`u`9E0eR+TLo$0G@-@a6{cT)4!j;n2h?_K`&nS+Ow{*PXH?%KJjGu_)yKU%fm z4>U3v@9&#vuwcJzZIDLi9NX&pXY2G0J>hkeCJzVaZsgBQJNWa0$#|^V^TWpDBlF+5 zb!wT6Hus;{v+Lh!6MJh9-y@eC%~^MBxjwhKf5)X6>&x%6^0i~{bpE+(P3Lzz`nQZ+ zaPJ(tdxrh|w2j%a)}Pt^{r=dRlgF=IJ~f}-7yInZ4?4%DEPr%E^M0LbzxxxvA@5fH z`t9k5;?RnjFFJ45pY7Jg%ZFZ2nuodzWVL6YiIqpa@nzwi?jHyZ5Vh>0NC7g9Ced pJ3CsWM*j=dheJmWY`S=I--MUGh#$G~K#u~nE^#mZcG24H{{!~kB;Ei3 literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_3.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_3.png new file mode 100644 index 0000000000000000000000000000000000000000..fb5805e4aec3231e1de12569d7601b1b412f8d15 GIT binary patch literal 1179 zcmX9-e{2(F82;GS-NwW&R8qr<2P@%-2RYyZmsrS+U7_0!d&_R5O2s0#SfL3QI7kgO zsk4wW3LH{h9hEiNC6svyjUpB-rqRwUSq&GQrs_p&ETJPftEpxr3x1Z6Jnyf6-Y0pU z_Z{wYIhQP6z8C!ij^>NXnMGXxNjg5^>O-&|~ zskylsL6DY~me$r*tIcMkD3WCvLEuEuBg;}a9FE76>2xNapD~PTtwxc6u>+oK^LQ+N zKNbj*k*GbM;8SUDHYXSKXsN8S1md>0Nt`w0#uO1x%G9+mn~S>(X~~$1R19^#ns=hW zOMn0a6ah&|NG@tFrYyAr3M(Y6dEtTrVcrG+4}cdzB(ph$q6&_ycKbD+pYr*Nq0ob5 z66SI!Ww9|^`+$j<65G5*hIl+cCE|wM4f;VIMFd8MDHoHJ@BJGh_DZ)pR-eg9~ z=%Kt3(<`ace9p`OivX-XfCT}rAav5|Oyiy$BkAsFNmi>$9$w=Ki%6pZClPhqQzDy{ z1wAYl<8oOGS99@sU4!Mk*+S!lo1%RT8xVx3C?*1dbTpbvCiP6FG&57JRv|zofX5Lk zWoEOeP#}CIHd6Mel|Z(t%+%7Ah2lJHBg|&nYIR~ZfgnY@UFP_Rx4tZxj>e`^X(O-K zN(}IFh%A^xUQF>5i6Emzglxh$rG<*QM5UOo)gC|w05z5diDpSs0X| zrb460<3OT7i~$)ZFn9n303|DoQc&e##t#b-XsF<^@igFA;N}s(XblC3nBq*SVm2Gr zb*)m-VVw*00V>$WC{|v@yct|F>`K+6)dJc1cwr$^g2gIs0W^jbdz^=*GY{(+-_zsRKJezy+=txL z`IS$ZZo(gyck|(m+L~4SQo-hlkI4O*yg&s z`M+UdSQ@!w+(%zpiQr(@#i z?!9OFc1I=#4sUv1rIww(GdevvdvWpTaqjM}>xtgcJuiHTUZu}Wyw*|c|79sResRxV zzpne>)IV#;3s*jJ93I=WbZ)$B>7~@SLl4GA9CICiP8{c3hrbE-cE5e1`};Ku?eDp# zyUq-rnm+lksbTEJmF0=K9fMo$tl#hGnjAVfvUBj?WAEQGIs$CqxpTda zXHF~UUygoqvVDWHe(MU;q5JJ??>F2&*Y`!|P1EJ#tNY%1cKVjgN_s2>d)&6gPt8O$JMTV@BR;lCISWk literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_3_1.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..532466854909a230c40a360aa0a4768fa4f0c296 GIT binary patch literal 1217 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 literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_4_1.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_4_1.png new file mode 100644 index 0000000000000000000000000000000000000000..f8e74542f4e0ea60a2a5dbf46740e8adaa9bebb6 GIT binary patch literal 1018 zcmX9-afsV=6n=NTTkdwA0jn0x9}%iX3`f<-GKiRMxwCg)YM-uJ=x z-Ur84)ARcu-VXrtE6a;((L4|pJ`;=jXaD^8AwUd{9X+uW(TRzP$;ruBEH*VYH9bAO zZ{I!)!)9h?W@l#;$z+mYQi8zCvZ!f_Vd$1+RVuYc!)vv+!*DnnF)83Vki0l2fU)PG?L;vpJ(GSgu%Z%1%f1!Ys)WsdSQ)X;EVpUC@hCv8L8M-3!cCSPlmD z-q^=^h|7@30$Bjc#@JdS-Jleo*Mm%{XE;NzMw}-f-!YmXcBUV&h~_2 zUvUQc=Fr|AH3oa#F`A=soJ}OsWKyP68pj!;R8*s7g+{5|t~bI~FzWH3ikKnerb^m5 zx?14fqTH-z+pgL5tAlQ9G`fa(fDC{EU<0@SZGb)oD1s!Qf`MEIg2blFbV9j)24g1{XN0u*TxSzrotyq%C7 zQuQc3y(wX*Zef!xkdID2bJaNiV|-@TVQXYuyMldk&0 Si#H?Bu(Gtec>c(#v;PCzLc2u( literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_4_2.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_4_2.png new file mode 100644 index 0000000000000000000000000000000000000000..f8e74542f4e0ea60a2a5dbf46740e8adaa9bebb6 GIT binary patch literal 1018 zcmX9-afsV=6n=NTTkdwA0jn0x9}%iX3`f<-GKiRMxwCg)YM-uJ=x z-Ur84)ARcu-VXrtE6a;((L4|pJ`;=jXaD^8AwUd{9X+uW(TRzP$;ruBEH*VYH9bAO zZ{I!)!)9h?W@l#;$z+mYQi8zCvZ!f_Vd$1+RVuYc!)vv+!*DnnF)83Vki0l2fU)PG?L;vpJ(GSgu%Z%1%f1!Ys)WsdSQ)X;EVpUC@hCv8L8M-3!cCSPlmD z-q^=^h|7@30$Bjc#@JdS-Jleo*Mm%{XE;NzMw}-f-!YmXcBUV&h~_2 zUvUQc=Fr|AH3oa#F`A=soJ}OsWKyP68pj!;R8*s7g+{5|t~bI~FzWH3ikKnerb^m5 zx?14fqTH-z+pgL5tAlQ9G`fa(fDC{EU<0@SZGb)oD1s!Qf`MEIg2blFbV9j)24g1{XN0u*TxSzrotyq%C7 zQuQc3y(wX*Zef!xkdID2bJaNiV|-@TVQXYuyMldk&0 Si#H?Bu(Gtec>c(#v;PCzLc2u( literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_4_3.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_4_3.png new file mode 100644 index 0000000000000000000000000000000000000000..f8e74542f4e0ea60a2a5dbf46740e8adaa9bebb6 GIT binary patch literal 1018 zcmX9-afsV=6n=NTTkdwA0jn0x9}%iX3`f<-GKiRMxwCg)YM-uJ=x z-Ur84)ARcu-VXrtE6a;((L4|pJ`;=jXaD^8AwUd{9X+uW(TRzP$;ruBEH*VYH9bAO zZ{I!)!)9h?W@l#;$z+mYQi8zCvZ!f_Vd$1+RVuYc!)vv+!*DnnF)83Vki0l2fU)PG?L;vpJ(GSgu%Z%1%f1!Ys)WsdSQ)X;EVpUC@hCv8L8M-3!cCSPlmD z-q^=^h|7@30$Bjc#@JdS-Jleo*Mm%{XE;NzMw}-f-!YmXcBUV&h~_2 zUvUQc=Fr|AH3oa#F`A=soJ}OsWKyP68pj!;R8*s7g+{5|t~bI~FzWH3ikKnerb^m5 zx?14fqTH-z+pgL5tAlQ9G`fa(fDC{EU<0@SZGb)oD1s!Qf`MEIg2blFbV9j)24g1{XN0u*TxSzrotyq%C7 zQuQc3y(wX*Zef!xkdID2bJaNiV|-@TVQXYuyMldk&0 Si#H?Bu(Gtec>c(#v;PCzLc2u( literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_4_4.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_down_4_4.png new file mode 100644 index 0000000000000000000000000000000000000000..f8e74542f4e0ea60a2a5dbf46740e8adaa9bebb6 GIT binary patch literal 1018 zcmX9-afsV=6n=NTTkdwA0jn0x9}%iX3`f<-GKiRMxwCg)YM-uJ=x z-Ur84)ARcu-VXrtE6a;((L4|pJ`;=jXaD^8AwUd{9X+uW(TRzP$;ruBEH*VYH9bAO zZ{I!)!)9h?W@l#;$z+mYQi8zCvZ!f_Vd$1+RVuYc!)vv+!*DnnF)83Vki0l2fU)PG?L;vpJ(GSgu%Z%1%f1!Ys)WsdSQ)X;EVpUC@hCv8L8M-3!cCSPlmD z-q^=^h|7@30$Bjc#@JdS-Jleo*Mm%{XE;NzMw}-f-!YmXcBUV&h~_2 zUvUQc=Fr|AH3oa#F`A=soJ}OsWKyP68pj!;R8*s7g+{5|t~bI~FzWH3ikKnerb^m5 zx?14fqTH-z+pgL5tAlQ9G`fa(fDC{EU<0@SZGb)oD1s!Qf`MEIg2blFbV9j)24g1{XN0u*TxSzrotyq%C7 zQuQc3y(wX*Zef!xkdID2bJaNiV|-@TVQXYuyMldk&0 Si#H?Bu(Gtec>c(#v;PCzLc2u( literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_1.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_1.png new file mode 100644 index 0000000000000000000000000000000000000000..bb8cd6aa437c3b9c0c15ef45938863dc44a26a5a GIT binary patch literal 1196 zcmX9-e{2(F82;9+yZrz==%ABAimRjQL7I7*!*qJcbso#H9deK&RZ2Knfr1B~N!4o3 z*+3;FT(C%E8Yp@ug`L>ITuv-lxRiyubc=pX7Po z_wa@RYJSU-768EfzIE=6wfb%?2Ab+?IhVQcB>?qc!}?9VwXv?Q&R{Uq*Vi{RG#HJ> z#>PejL7JMHnwy&~cDo(JoFqxGEX{FVLEyvTa6Fz&r&UcGFBB@(D&_=)3ovx6*J}<0 zY{8H-5_QEBOe*cmWQCj_EtX^wMLe!np0AiA7R8l8u`3DRVVvg=HtK`rw=dp=Jkw0lY`SN>E%>$CTk*qnFSU=lMNKB$Vxeqy7Iktimq0TSUu{_^9gU5p(gjVg z775^^5rH*{KARLk6Cpy0u$hE^OcC?hL^-cjt5c8wzyp8)fCPX7z!(4}1i%^?5{3k* z$gq%S9Dv6_i~uSH3JicOfV>4pF(@-o4ZvIk7G&_qcpT6q@GwY#vxq@7CQ&Jw%Vfg3 zu9V9W?AB}yec5q}IJmm|GiHW1)KAs%yvac7*s z6cWqQ&T$4Ud+g9>gQ5c_FsKqxr)$TLuWFrs^aJm09ALqkyMGMU`mKHLS2yh%x__eY zb8Y#&-ivTz?`cMx-2Ap>`LWB}hHp+Aw>@k|8)ngEcSomwTsL{cer%Mubo;r6r3Pb% z{bzQ_(8GwQ7j@_zF)aO{?xThl=S$H|RP34dQ^BL>tkl8ss{K-1TgRa*w-3qxzIgKJ zD_4&HWjwL$UgeD8DGEP$^Y^fEu;O3w&#K-}?vJdQgx_yl(z0bY?djk7plSca@r|>K zJHbk8+Yh_1F77;_-sl=^+10aitNe1m;pw&Ck~@An{LA#Y(V?D+KfhVO@<9Bv_xE&l zo*H)FJO9SQZbofiaQar~$)rJ MJK+9q?eliWVstB%5`FEojgnISHEEa%VlGmvb5Pk0KE=RmLKlD6`BHe`XB6_a5Ir@B83; z@7;~{^y0!p3jnaV_Wa7Ra2^UPH5U#0vj@AM0YqWr#pA0XjYJ|-Q&Z7sbb5MvW@ct~ zb{501xw*Od`T1ljm0}oL5O`S@RW+;YTB%g3)f%mq<9Xd67>&ma4Lk>u7|Ui8`8-i5 z(&Y+Qt4qz6(suQZU+E7lfxsKp)=bh!L4OFEiKqB4+Cp5^3pgc6cl(c zWvr=TZYADpCdM5c4QVu1(4L8qmjaLg6b#eiaRbLqlC(H(TatEjxt?L%Y&4MT;!GmN zCuxb`6f&(*8G}(xPOl3kTdcNatD`tUj$m;*o#JFlRN1U1Xl1F~P#TWr_=Xo${b92| zapOEBWJuY$KU&ky)45{7j{Eb)R;9YzYz3Y_?(?9Cm@dZ+g)s9} zy~x{Txn0lg+D6Z<4}0Etd=v2i82}x?1h4^i0R|YL5R!n3IhKt{syYSJiBRWseR)ONe%`}T0?qfiUa0aJ|eW>T^U z#UZtTGe=o_Txd^fojs?IdLuFcEPZnrjfU*M%%9Xo;?gaH14yah#Wux zAQWa%4(09vFBR*90b8%#gWl-~*{qz;tHq+m&?T0x@r*4nu1I$!YM4nOg+K<0>I`yt z5#bW*r; z^qq&;9zySDRdD P7}i$TS1ufV^_~9#$HBCf literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_1_2.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_1_2.png new file mode 100644 index 0000000000000000000000000000000000000000..46aeb2577e82625ac338f048174f03b299c2acdd GIT binary patch literal 989 zcmX9-QHa}g82|2ix7@AHf>nANN5%>ZT#yVR+49Zak+3zgWiSUdq309_9X&j(N1;2L_6s8=(Bwda>kfg&>X=IvrS}oM;;Y>Eq z=V*!GRI;E`MU&BN&S(lXPi%B$ccA)ViC}TMkmqDd)L2Cq^tx1UsV!gk1G67Cf~Y;7 z^)ftUWyqC)r~+wYY%5pjkV=o&gQ7Jy+^OA12NIRlSiDl8tRmOegsve6HErY=6R$Sy zIkUh+lYS=4l2nmlOT18#WlPhVl}g95daYLA`{UtoI-MfGbs!y#X=j8kE)S^ESg21F zH>z}}_Au^5$DcXF0@^(+pPtG7exU|wD1xz)iiJCB$rTq zQV%(Ms(5jwJ97rd{uqs>WENNgE6^E*C(1HYEs3^Sb{l5bYXp5S3i~J?v!aN6Kp`NM zWKmD#?gOt?o0AFKbne3#3f{lBmfbpGSe1 z96$R+`tH3ScztI}hG+i%?UjUBn;RE**WUl&>cxlNI`cs482Ow3UfKKZ)7_P|clH9V zx$^Kw&V{pAf4*`ldKrK5-IWhduYT-(|KO{8`!}B6-o9Smzqx}2>GNOxb?cF9=Z;=@ z{5L-w4L_NeV&z8q==N#v&)V;gp549h|Sf=V6kpvaBdejs;NwMQ-SNv)iS54m%hM z3 z5ApS^SuRPGv#2!Cm4{H$0#E=946|_DB}tE_eL=WXltrhrcHL*wDT-r~Yqms!RVcxr z+ZLm_oaqVnMCu3fC{q2U5oR5VC)svOP#M|ebxX1a%3x|tLn}<(BpapqY_p4T5t=Fx z9iSYbJ&d0c?K!Q-qLpgHjqMj+f-V)NY4T*R%?veRW=fH*rhRigwzomQh{wA$K-&aw z@-(Ayd`FaesyZ~yNv}5_4&&)G4a3c9RTKpR(gJ#naWhfCmr&EC99`pbCnF92*5b%GL@E76&5{!Zu_IAQg~Bpdp8R1%+L- z9H7jH>)?5iCD0VCYZ7jc8F}rQZ$?o+O@lm7QRPK;fO8t6M<_mJgtV0jUZDqNFWQZl zSK$V&3%UtBg|%5+7pbnwIUU(^yZ*?Hf>D|Td6uAZ!^<)X0cC(tmBpa4djYcVOtxEo zGJXMjxs-HW?RHJau{gHRvtyA9BrcZOmBQp&3mFu0X*A(bD56xZ%Fn;n_~-fuKD~dT z!drj+{z*k{pP!vRsDE?&*B@@e>-E~{zZ>%DOLyLX`0}IQ-od_;U-|jtJ70eF?bjbZ p-FtlU|AWu|`|0$}o1g#jMkN5}cQ4MqfBU1y&jHW@e9Hg; literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_1_4.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_1_4.png new file mode 100644 index 0000000000000000000000000000000000000000..f614d942e94a1a2a041c04bc64975687ad0a0384 GIT binary patch literal 968 zcmX9-L5SRB6n?w2yV>2bL^{~C9VC?zA_U1HXpjhL&6aUZZAw!KG7Av`9hQhWL_5Mj zBMy?vfI&tKGKYcYFqD9ESRs@-M2N75sRrD`2q_HhU~^bxSR$@;h2NCI_uk{XyzhhW zy|1rbt)JRFzX<@Rw%^^lUd#(comnpx{d?z=TL2}vcIC$9f-WsBEiW&ZN~M*RmDSbN zwY4=2!`9c=H#RniTCK*ij3^3f+O3C7)DL#-Ln7CoV#94L}CaFwDepyIOTA%IEn#S>A6pr?!1K7@#PsvXz=Z zFfz$&RNbUio7G+3>WiH~>WvkDqJ?Rba}8589oZRZgU}2UJ5GB^Hk=(t zxBwLeh$fJ2pj?a_5cLt&hy*iHyEDsQxG~z3>59%(TXnjt@+ZyQ_biXYG zjxz2y_XB$x^|NW5=Z8oDPys9e7a#!G2bg1k3dkaATPW~RI+ZCfS?CE6)*+PvDS%7@ zby?)gC^XQ-L8%YVg6BXIL6tE>C+rs8bL&H2ACEgp5@cC|3ax4r*mhZP3E3yLkTO%= zT{MEcH9qzxC*cfD7gPl}600+KLm&->Z8s&?HvFDF4thx(WND1@87E071e5|oMHWsW z_Z-zuyFZ_EeeXG}$wX{46vNQlZIfj>9ODUWAhMCf9LRL0){sUbn?ijSg#t>X;`q7O z%SX?C;M40@6}b51kDCR#wY_!e#%tex_3Ne6UtD;h^z(nn`2Fem-TNEM-(0-+!=s;e z;o;WN->2W-O+NhKGxg5hH~t|;@4cF5zkRp&v60<<<;v>0`)^zQdryKg`*P{u1fTNH?6B+GT2zhw`5kST;HJ#RR+#(2@W!FV9`mJ^w_4_!T z$#Yps%&{_2P|2cBD;BG@__`xBdXhbm-JqOfaH^1JB~nnBlFF-wXtd?FtGd4K1r0y! zjJEq}4l)vC%aE%9VPQ-=Tj&y{KBxLcbEMgk<)L+v%qR?AEs$oB?I?Utll;0eY-(et z9`&2szJtbII>QiTk!H#qUzH?NQCih%*EIX>w(q*5&CMu^5a22hO^oiO`5rC}$nuCc z#w9zf_9AO@(hYZp+bBh*(@Zv7$mJ!HQdm|KL_?03)w*V5qtgvMe=_1g7BEdp>vGPj zkgXc$7*elQ-f;9`zZDL>$>bK|0Ez$_fCbV+as5CS@ LSpM$SBgg*-2V}Ic literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_2_1.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_2_1.png new file mode 100644 index 0000000000000000000000000000000000000000..b6fe2cde2c10a165f5bf17ea0610d40b474e38d0 GIT binary patch literal 908 zcmX9-F^Jn{82#?-vwU%bN=)%lQB?4tK@=4w?#S{-3JP7K88#EZIrlNQ-RD%mHXz*aDh72MIdVwqaRS3NA`*_QH!+YP= zlXL0*z4z|{!2Po?PoGxzq?%^4R_(u>^lN|`Jo)O`}92_1V)@rqSy?%6b)Mzv? z3~M%<$H&K=Znw*_j3^4KDjP=6vP{=?CzIJ?5hckc%ZjpO84!3-Wy&2#BYlIKS?rA~#uIJ5FtgPt&w|?`kqFRf7z*I4*xbZo z58uw)<(fb_gGwFU`3NOl00ltDFcZfeg77IS;Q1RxS@ru{$9XxMp*SYkc30>y3d!q~ zWYU_$8a{7LMK_ekOEp;QQPw9pf|0tsO3MbTvcegPvKwE`Q zA4nT0ALC{nX+ia3!Av!8X9b0ypc{p58yqo|XiwwkhPbrU)HSvfYahBrJh@Fnv`_Fh zN6{L~^#yULs-9s?hr@;E#j{x&MZ3+WC<+9G3Dg8*=eW2e)HU7TiKBfl$cM|q-;|5| zZhMPbG>&tfjzo4{wj2~ z@igBiW%&{b02+V=-~)sJD}X%)sDdIQ+d^T0vaLda$--EGNPB zBa{X3CU_2H5i|uG7#(Lwk9}z#7|W%breU6^sPZEEz}hXr?$TYHse^%G+a}An95WHvP-J77*(h|bb&*aYheA^pMFL9Ys{GtXtygb;;Jc^i zDm?t>?{6yd>DlR{XU(6Ci;Iib|9(*a_4$v7jg!|`?|uB=Z}oStirw{Pv3vBz&o3I^ qo?ZTt{{G^V4==AzuHDVUci{V1uKk((;Ll10&K{qi{_^?75B~$?l!3DV literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_2_2.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_2_2.png new file mode 100644 index 0000000000000000000000000000000000000000..111032c787623dac6020954a8e3ff30f28566ea2 GIT binary patch literal 921 zcmX9-L5SmI82x5CGwDnnd*~s!IRxw>U|b_c4Hz)4nI#U9$*@_?A*>N1TcL*_5rXs( zv4^tckVC<;6s;PtNWcn%M9Cpw4n5Q*NR=uP3Kpy|had%u4EUR6;eFr7yS#UJ@4I(? zCLJGLI|6{?)7MUJmA6q&wOT3n)1&9V1gOCI>$h)~bZ2L0cXzi^sqF3T?eFg&92{U6 zR;^YK4-fHXv&piIC<>}7o2G8tR=3+73`Ubll&14MFE$&N0f7fauIYNC-6ow5)ARVj zP#I5*II(A$w_F7xjcI(%l5tlfeUlp5>_t~h2HI?5<Y3Brmfb(buULFlq3Y(XbL!^ki0=j z7OlCg>GSqb?1pkbR)d)lsU7^%stv}|&^C0aeDH!?<%6=iOk_p|kQxlQTZuQ6G~46E7QEC9Ta|wE)=?9a)cw%p2m+&F}BsLYc2-%D(n`?V4H<#mDU>^ zMQbeA5=2K;J<}XI&cySQ(I|_e<$PWg1p>kXYJjohx)>AcjBYK(-bxSFPF(o&&18MG z*rFO;uX8vqkxi9mOrE!8rDv34or%|dcs;~W3J_rte8KlR5aPv%GP&fSymKL6^O z-=FxPx_E7TzYKl}8#m+s-7e*M44AH4jF^VZpmU%dHlDG8@H&rZI6 I_3e-T2i=c{RR910 literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_2_3.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_2_3.png new file mode 100644 index 0000000000000000000000000000000000000000..be1ede30286fb7e4412e01926880afee5c2a06ec GIT binary patch literal 896 zcmX9-F^J@36n?w2yP4hLNHIvj2oc7+6hTu&E=AOwmp$Sd*&LUXDN;lTItNpvh%iNp zfGGw^kz$ZRrx+o{6ah!sB1MV_5r#8GgegV{I>^9HaY~Q~TkOGaj)U*LkFR*|E57%> zet0S0I(z*L0B&7;bpEK}c2g(qR@0xB>{EaiJpAPGgGL@492_1Vwpy*Dqod>F(kNiv}6P!O(Ebu}1lT=)5Wj?$Fmx;>F#RZ1{u z*<$)GX9j{jle|coBwCmoaXFxPl9hXc#waGQTaqD@XXEB-bG%OPOpmy?J~T} z(@dY^2ck66G~YC5qtVj$)A_uJX}r_J{V1t|b-mo* zY_3saHBcqw*eD87xlw7bIGBhK%TTI-G(Z-Cd=7;wiiap4 zqcVh-!SkR<&{wgcNw_0s63C0tOcJjsqW!)=jTbop&gqB&p@x(Z(^e@2l^)fj+f^3kOR z_n!U!MI+w1IREf*``g>U{`4BW+5Y9Xzs2&echBzMesBHa&b?3n{67Eg=RbP-TmRJG fJp1wUyB~;8-Z*^!+Fr@y_;LiQMpv?caNX@8=wSt-@1QV(4C!~-QC?%skFDZx4*xCaBzTO zSh-w2JUpy78V!b_1%X!-N!L}&GJCzA>yD?>AdVMlnr}7?4Lk?3R8iGhyG?Yubbr9P zBY85_!pNE@gVov-D6GX*OsQ_S2uCN!7IWDXBDXc4n(3^crQSA=MI1B=Iy^WEHZiei zP+d-Hn>mg$8f`Rmc#&L%vJ&wDS<(XkDZTr!9jG_o< z%V?A>Mu2RFg9APLZtv9?~fJJiq-C!QXLy(ICoEJ1}AZUED*@J?O!2rVGZlyh>`-*m#Q zJHHB6Xql5WUd*k&5!Ow<~|${J^L8 z&K0=x$8Qe`BAqo)?w7wl{pI9|&yLH@cmA|rdhbsD&F%HiPrZE|y2mH)|M>Cu4~=VK z{%qxeq5p9F@XhBxf?t2SzWDuxXI>fp`{D=Ihs|%vSO5Fs?B$Cm#n;(?zWSt)g|pN1 K=6A1MeEvVK<%c~0 literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_3.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_3.png new file mode 100644 index 0000000000000000000000000000000000000000..01bb2871c98e038fe4aa46a58cbbc009aa8666cd GIT binary patch literal 1093 zcmX9-ag5V+6n@8X^kCpZCM==Ilxb>gbi^9_M-wX+GO*@K=;5N1RIG6vBWa|>Vy0AY zgarpSWC>FiGN8cBHM*D!?6`_UCOKo#CY~~|(ZvjI#3L*?;Ycp==LpI7-plvT`|{;` zZ{LQ2=%NM7768Da_3PGb?9LtC3ibDP`@*3i2cQ==yfV19OM7~H=FFMX+uJ*L?%ck< zzIpTJVHnom-#>r;{9rg7rl<(Vv7*S!a$HrFbUK~S7t7^Jtv2a-?M{b^0Ly^D`{MCH zG8xiRkxZ7!7lcw-va71&W*beDBe59cQ~01B3mGy|RH@N4SIx(qvf@o-TAn%6u0?T> zNYGd?M69G>)vUi>3UnMCwIZk^p;-f=S{Oh8kT6W~`*j>Q2*PBTQ9+nUB+i z^J>#dx2yRX*Fw#jKR^>?jG_}Pr-@=#mJ6Cz&StB{qFbpnCMVnNHUeA$B9BoeKWF2j zLnazrrWrR|n%y=gJLT4FeFphRzn=~UqoJ@!Mr4Ljc_AZpm!-(xT5Uh8zG5epClPyq}83t$4Ei2>?D;803MmWjN&K!8F) zj)h7TJOPjhNC~1Wg-iielE}#*&xHHI)4+2O6R@Nl)HO0^L`$Y@+iBOeS}hlKweSQ` zDIaSD1v4a72*qQJcHHV{_DtTHtu#=*O$2}rVbO>`&W4gAl}hl2o-}j1ZROmW)$(en z)1Y}CRRDQ_P&bQASMCAubgIy7(uMp3sE)(M<6<%?r&0hL-_aC*UjHXxPxzRx%E`$^vXk9m%!SSCztBaKCyl4 z7YoKV9Uhr|?A0ZuWlMaYWe(r{A@7?_Q<(uyx z9sYFC`+9uGPkZlN>RWz#$KpfJlV^87v;X%K@@xO7cp;cP^TyS8-6N0WzMQ_d`?|Ah z>d(#e*!BO~o33yx6z%Shz3QHYXSDB5FFX6qfR)@bUOOL+xM^#_V$RUR~W|lfeC(C58EM?6?U@G(wAz}{| zA_fUsB&$^lR;-Xi7ov7x76Kb2LRdP`g{<^Y*{D5Kr^2#C?Ld(cer8#C-}iWz?;YOz zKDx47I=^vo0|3tNyt2KQ@-yjdtYy-Da`2uDkbx_&?O#si($doM@^U7V$!4=FD=Vw3 zs~Co@t*x!EuNR8NBE!&vz{|3zsuf+=Ow(+)yZycwhNC!6=5vMyo&!nTtW@%~8c}c1 zR+DRYq+Va~1AQ1ZCsRkDurjx)i3Ouf*eco8nIlsO+T~$iiwD*$b{0uk!a<>+&Vwyu zJq-(*xp6N)AL3|6qq&04Y=puhfCQjmn3l^KIBt`q!*NHFG^kd`hVh`=ML~cw`66GS zC4y7Pl17ycMzuM;Bbct(@?~eJcyX0rak^CGWJ*-oiY925WObFUr+JYP#;s`9n=FDH z4|y31RUjHb+8Em{l=@^P;I*jSoajzshv-P6@+ynhOH{MW^;E&v<;YaWZGGyRNzh(I zE}Dk9JWEn#hOP2KU6z}w+Nsz3&1TT;MxHkrjgllmfNMauF{YOjd|Vz<)rnwDE6%L$ zC-!LGpPh{tXp_q2*g~O16lIE5IZhWPOG%G4`pwp$*N?+!KH)(TFbt}zZevvD||KR`S{89)cH0n!=_0HzqA6q0}%I&vKpk0lZ`23kCLC5Rd4OU-D9yr3 z?H&U+8=dKt?X(|59}a~|MXuGCb=o@3Tw41b2_EZ*IT+RQCA7n=k%leth%hmy?s<5B4s+dhf7vF@NXWb3d&g{r1V% z&yTNOJ$++PAHRP8+iRbm{__XBfBfCu!&_gi8pqH6s+^{l06Uj=x4(b+`Un35oiU#8 literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_3_2.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_3_2.png new file mode 100644 index 0000000000000000000000000000000000000000..50ca19f1e7067072e2a387e1286527dfc891710e GIT binary patch literal 937 zcmXAoL5SmY6vp37JCn}VwJb%l7$pk@0|p5aFoy`)-ONyj$YhvQBIFPuV1=><%t*lq zK`T`0A%~)6Ez(1TB3bNVkSr9960k^xpk=8L*&YgpWe!y;TVce%Sr)$c9^d8t4&Qs9 z93NFLUwZly09-zNW&b3bSFa#=q){}ut{;P}S+DyB{ z_xkd1q>n>u8g~{;Poy!GFPakWsHAI91B*RtiD6Hjj?84zP7`mlimC+YG&BWp6>Ml? zVW%`7me*4Pr3_l@=)y%PssP9UI)<60l0y(KMR`1bCd-q0eeO8tg8>Rdf-P4BoRLXh zr>Z8cI;`RHR$pxSQg^I)Q$0xPBu6mS3a`+T!D*&ww&nIf9|UF)J5kb&)8S$hmINp( zfY*VvfpRf!fLBM977Avpb{3YmawBvm(`ADrnpL`^@cx zmC77Nt1MR+#HONj45Qy{jyj!iFo=U-F`KPcD+GiIR1af^C2>qBQ@Xwo+e^($o8y%` zTaVI<`34o~Qi;RyDp^rz#^8BNlG}Q=%pP^Rli?_d;`KrRUBWD-Gqx0P|f zKJlG-*iYxtdVP)r02ROjZ~=UP3BVEqlt~tmZ6V)7$y}zuWT7iSP=!PWqyRE;)M1e) zqo9GNZIpQMD0mJe5mXs#7`W4LAR9`4_$UH$Y{eB;UQuNCsw|3fcLA97FKtsQGOei=fX#eY*Z+!Savw@Ot literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_3_3.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_3_3.png new file mode 100644 index 0000000000000000000000000000000000000000..23775a603194245228048f0ff0d9f62a10160c71 GIT binary patch literal 938 zcmX9-QHa}g82|2icj>J=3M<&LFe0lGN2Xx}%|pAGr~M!Vg1-TrVG#_=>wm#Y;+1J8jhl~lFTY!WSt z?sPfVlLtd>6q%ExJ74$$h1I!|Ayw@<;pk-FWRBWGN z8yHyBEzbs()dWWwjaC{ubr6bc05X7vVMe)Z8qU#dNmhU*Fp(~+JkeAbt06gd)9=}%pqIo!md0o`XC(=RfKosx&!Usd zJqO;lyv2g`+~+VS6G2s#W>dE;gQ43j?ea_@Fp)%0Wh$%JkVYVzL>_}e9wkzK{Oqfx zf6jj3lUoN0?Ed}7$2s|6fA8(v7r#18_AfknvAD5|&>NSZdEei;@bbN@kD9adU%Yhr zm*4(f%Tzazzm9u z5Ls|_1QtdgA`~eYq(Zs#s%tO_Jc^IxpABrCCZ^q#J`~CR7{5}ug z-|yblqw1OMbK3xL=J4%<>)AY?)k}q3*6lm*{sfSNt5E|<&a^BWr* zo12>$h7}5ht*xzcrBY!SS`c_y7FD&b>zZX*uGFsjwY7P8sVs9PiKxTA#`iwftHNgY2vLGQ56S;f))>s zjP*4vw2RYzX*tGGN~5KMP921z3V;NlV3<}cnmF!|q{nf`k~C^Grl$G0*F#~5Go=b& zrX_+?$f`!wOh$D$y(?J0*cr;+SP7B_!Qyna!pW4VvUN?++ETlx^a3r2%_!-_X@9l~ zi#(KMC^vvGfOIgnSFR4oddO>W&7SGr!imtaM3qz)Z&fL~#`RTUsLQdXPF;QOTZ_p4Yv! zHC#B8gQ z$Yziyp`eMzZIpQMEO-_~0csM~RLf?I>NwTDrw)f!9Q$b+ql|?&fH8J>r!0Ad5|CQL zIg7f#Yz4Gc)OJG&HSm%kR%oq*PF`Hh;9QvI&^3xWos%fNPf!$ehMapG&F0nupW}K!#(IJaz zaKOM38(3f=BUwy|LuwduAv2j|#u^VSSarY-N|o1-4B}re5gWb_yFJl5D-LixfHKg#W0PcMmcUQ9IhzJL^cac zB`@Lj(H=jCQUVr`@SsA7DkW!_xXz}Eyk-goJB*TEf51oaI4hDNiIEaqA}eGIQo< zJ7v{#)ya~J25ugB!T^l{Ohw47Cy>WNC0eqA$*Qb1R0EE3xLYK>(Ey$dQaO<+%Dfd9 zD`~l=#~Y>eq@}}};c}B09wf*x%|v-VDTPTb`pJ)QvS<8i-8Q8LRVgx0cHKA9TJl>*D0yI#fEou25oji$t%1kJlYnJFkV7J(M~UJoHIUQ9Vli%6dcAJJ z7MC{+h?tXBJ)DLL1x&IjwGq;r(c)yNW) zhF-S~*sPK)3kv|+0K%3Ri5A@xc;m55twv_jPavBn6AJN>h!~4Wgg;LD(=?$oM2Yp6 zIlLb9K>>vd1~UXK(9mLA$4@SF{`L3=wyzuH!SdVVn_E3TuyV!v;XRj*tmuuuG~MwJ ztZXvx3a_`na`=Pa+TPlHV_Ri-NK(eLKcKdDOpa$Bi@R=b7D2^j`np#`x*w_qgYl829I0lD5n`dHAdD^2QU!mRXk$ zJiWVn;`oCf{yh5guhOFPoju71bB-LiKC<8O>Y?fFTicI!ytB{PyL|2+N9W&O^i<%^ z*2^DmfB($R7u5^PI(PPai$w2t=-{VU$A39?R(LmIUih5&4Ex&I(_@cpyIjNX9J_ex zwA{D#*@Iuqo_}ypYW17r8=M<2{&&>f_ph<$;Lt~#l4HJw{M#cpZ&AI|@6L$4+|m#X NtQuT->a`6Y{|~gr`y~JX literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_4_1.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_4_1.png new file mode 100644 index 0000000000000000000000000000000000000000..d294637246ac12f145444970fb24851c25489673 GIT binary patch literal 990 zcmX9-Ux?du9RJ?+?s9*&t5`5%#sZcRFi2zpa}Xq(xf##MWiHb)0!ED3hcYvWP*}mp z3YL+%JoKSp!9Ike4;dCYN0fT>A(NtI#O;tO0V`Bi+==Ck(1$~RW(+>x@0ZWZ_w#|z z_j~>Pwsd^;nN;@wE5Dpc`&X;4jR7)n{`HIJQaU#`H$Ok0$z&E578Vy5 zmzI_=3|n4aURhbe^Z7i>GNLG`s%#jVWtr7#wb5vGIzbrj$MG~tSOx?h6nRb4a-|Yk zt}r!+Z#0#5NALEmLFA0ao=9T_e$A9|yFj`I)w0;#s@Q831|2i**Cw$yn}!krIt^t3 zTor4ZSkK80+qq;wpb3K#9UZv{g?Ru4K*umMo3#nTr6`Z*cNL{yEDmk^pw&XX9>M1F z0?sHTuTzpq7i`vWd8;W_eYxIMy@4LYMUo>JDbK64Y;c+>nl+`?(p!NUM0Ob0qe*)- z>tzMVsel)OtN`U=Tnm>vl-3i>sNjq&Z|a6{@D6HHHmq>{q9~ z#w_yDILziaiY~BRQ4q_j>KI0|T<$nduhoizV6?wKolX%DCQuEGZD++Up$_QcNUV)D zZ&L0~-TkC9IU3H;8lBB@I4+TSm1Yc{w`8TJr^_lGr`~UO;xI}^0_ZYksaabm-4flb z2!2iNHj91V9`>4(VVEQbNB}4RSO6}756}k~V}Md9BC1%(_fR}kC@@*53lK;UD}Yo$ zCXO5yc?t?jXi!732akg1Ko+5(U?l^$%XHn9+MdzvR-?$DOd^zO5k+7tYl4d_9;pYE z8T0N`^OJIS))*WGBQ%^+Ip9c4VzQb*mQ=PgQ!-T<1yE4JcczGh?=IBN=Bt(vP_j@8UpK!Y)@wP6?#(0Bb`Jxg_{=LqKU*gZ5crd<{`hu-<+nZm!{LZ!i0b6daxc~qF literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_4_2.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_4_2.png new file mode 100644 index 0000000000000000000000000000000000000000..a9a61d347f4de64b42b9bc06dd3cb74cf80f3171 GIT binary patch literal 980 zcmX9-Ux?du9RJ?m-0i%DStMx1P6}oiHE14!1dO}fS&tl-u?#v_B!j3?JIEkP8F>gS zLKz*#Q6yr8J_IQ)Y*h}IjS4->_nVp@To12@TpI=y5 zSX^AhFl=dQX?b~>$mjD6Lkj{g%c8253`4hV+jX1mb`XYxIG#+W3=KR7lDJYTWy&TUAow$kYu{irq?djf?OxfNX`tYXel$)>^V*h1GW_S<^gt0u8`FbNA;P$;PI z;K*1@$GSCq*vd@%S(MOds-Qy$p)e010Vo)zRvmG;L^E`^_fmcC$<- z&l9wi;}o)>Q$>qW9nNS7wlCH@ve#FFSj(|lx{&8&N>tgBF6dRM+Eki>9z<3c*Q2C0 zI_Tm&WMm*T$eBPo7~3QYZL-wm^{7}I8Q#PR(T+rAR5n{FP_-i0QiYBoN47e2jj?Y} zy6!>bqj895SduC-ti}r!S+1#Sqf%+tYTaft3WCvKFqupcWOX22jA`LQCoA_UZ6s93 zB`>LTCeC2mP7a3$XobRYmLLkbyiCz5#~GqjRnlcO2Gmh$TQW zAe}%p26+++%BWvOu?G)>XF(L8C}CxluqssDDYQJb)3Kw-Pm&0wT3HPkbA@*Z$;&AL zsmGi%Df!b%=fLeB1|u|_kQrceSb@e%e6B1rrY1U8*{fR}zaE8t5{GCyVnq=JfMP%> z&7zvhJwnzt8{;wCa38_w_k~hPE|*o))EU}lX_sewf$56$K%$aj9w|9wk*L9-fJc#- z9zXly%HI!v;G@&qGQ9rhFYl$~^5*)A>* z^^4Eky=7Or@y)H|ocN)BeT{v`{{H6Mr1RtI?`MC$e&N{NjkC{PJ@&!w@nq}MUFOL@ ze)#FTOE0|o)%kZX{)c`RjqbcVf+X{NLgyzg@cX)*DwpuIv+!-M;nm b#n));{@s7Rz4!j@)D3KIY_H#3JAe6qxuK_8 literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_4_3.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_4_3.png new file mode 100644 index 0000000000000000000000000000000000000000..e1f9c7d240905df8343825b82dc94aae156edec9 GIT binary patch literal 922 zcmX9-L5SmI82x5Coph$VR_GzJ0VDK~Ly+L+kVDYuWQOi+WHN3>0_G6cfK_@37_qQn z2y72!DHx=54A%}uRb6B)USPBmEn_=O7-^aVWcX;o6 za(dFdy? zhE*z+y}doW(P*$NBZ`8eNQR+Vmf7ugJ#RFbgmHY8rt3Us84!4orK+aY+ikLAGrd0V z4dwAfpGMX^=`UBlNMkBrH6`3pN!Or87JJzhBTt=A%yibvQh&3Kn*``IbOdk}Y;0mt zzqT0H^ErVs2IV@sb`gpj05X7%VP>u75QIxnKF?pu@~qWbIL@=t2t^UW)*AxO$Rw{* zO_Np~)^K@iD0TyBFjf4y9;PjlBba7`S7^!LG*dKta&M%MLNiR9I2|O}c)5vc0@M}2 zTR_@CxfnOXn-fZl1T#_lOUqxoF}jrLy1@~hCf!&0u^~<^CFvRq&sqiDb>wZ50IlL$ zoug=#T8!!`N|6oD#~MZY{;$O7pYMbnRZ{ zlk9r2K~=g|<8Zu5HWZpMc;1rao?eLAlm1{fo}_V-F9pyg%u;HOPP%P+XbVA4nGRdC zz*$7YY!T=AGb8}002Y7?5CF^oRv4fHvWRR81wKj_G6g0J0|CM&q%t4{kcp!{i+mY{ zZ8Yzp)Q6kkIgmt9Wvp%BPKO@2&9QGxr`;q8vMfP`7tsRNt_m(L`=lOHX3D#3Eyz35 zjW@pzmuRu3>cEj$lc{L}*;ZJ)CAm)9A2`!skiFJR5*qNXYBwqe^Q%XB%$6WBmxBZ;|^=}c`PokR|WhAavNlt@MSx!0@z-2A}j z4^9+#`_JD#F37#(!*|Xq-<*GWybrJ4D*cBR7ti1L`_X$+x%APaJ9oc+<>Gwy$>Y=a zfB(XJ>FoZ&A5Rbd`tF0XH=o|RxIRDn<>$A4{r3A;fBNjJyYk^f^V1*iKY3ng!tv3` K;SUENKK>u8S%!}Q literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_4_4.png b/resources/g2/track/raptor/large_turn_right_to_diag_gentle_up_4_4.png new file mode 100644 index 0000000000000000000000000000000000000000..5423cc6cbd0ed38be8e89d71fbb37dc17ebd7589 GIT binary patch literal 934 zcmX9-L5SmI82vh(nRK>{K?}w)u0eaqAxMNAq6CSW*{wrlvTOzlMmA!=GE~eVLWQmb zreM|V60t}R6$<81B{Dq>7_dqXQF|y7p-6=sdMMb#9)d)+hY@}=EIhvNdzbeP?|q-$ zI>s^xcst)$_p_y9KA-pPEr252dh_H)P78&?*49?BSlr&;-r3pN-QC47 ztW+xP?d=iOYL(+yNfK36HVneB5CaO2ngQP+6BwMQrDkB@bW=dvP=??W_U_0 z@HA8B_=YI8RMjzzL8~=(oNzddgJ3zIr)i3SG=c78+z6K@q&j07OR2lkymf1my7O$j zzFcfjnZa?MAZk=qWmrQHELrL5xmbJb^roY662;k41YO1~6}NTDZ8C$l=y%o0pfUCB zML1Y5qAYuWM1VSg1>ges08@Y!1}KLjp|*v548tt~pu^pc6i<~cUq0G(|W?io$okBK^1{?}R6w7(}`4`InT>Zd@ zw~tkL_3yvl%gM>n;cF*Pef6;`KL*d0q@U5B|GoX&!7t}GUp%-Me)6mK$CJ+#&+mWx z&3AXch(A3zz4^r5{fl=W|M&CnKRUg0wmB_?;P WpYGj{UMl4JaCGDN@ci|6&i)6*UyIZL literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_1_1.png b/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_1_1.png new file mode 100644 index 0000000000000000000000000000000000000000..8ba64b168a600bea850b4e5e1169a6a76e86dfa5 GIT binary patch literal 958 zcmXAoPl)4m6vyBE&CHgyyA7io8xaLqHhb;6E zB(go!-GD)g_E4l?4wVUP4}%1Wkd+7(3ud8c2ZCFrV1+qU30T+xe`Ze|}c z`uaMCVH+D8o12@(QmMo+v>@=ZEUIeNF!V;F(QbG9eLspuNit7Uh6bJkNz7HNg<6fM zn{?CW+8wFaSAx(O#`a|D3KUl1a=KWwDuknwU4uDk2w}T2?CZ&(IZNEdJSyX$P*CT= zk+GhRg?4`2E2Kjl&1jS==-fdlDgj6U3Wn+VyoKWqNxB?&B1r>H8(Y>{w~N9MX9^|0 zNJ|8#kY$~!Sd8j$Mn`CPVk?l{q2ebR!Qyne#L1MXvQ=Hsn^Lo@bbZ~Atte^5v)*J8 z=6NW{P}G1hfpjpoTP*jh=#u5oS11%o>G9(fp8IWE? zHiKLV`870bqQr$K!LuL=P?4~jTD0m^%PIFDtjG5z|qT~{aPwENh z%&T5n4;Jm=xj#YUIavUfz{+&K$`du2F*VV#YHrI4yjC1}vm`?4gcU{P14;m)EQ@A_ zdn&wPcBWId(|#&rI25W?xmHt6Q)lP~OSgH(6PQq>M-nxwl#oIoi$om;`86g17 zzd~z2eRa&f7(RODo_p`dTc@9Ya`?-^-Iupsy>(6a;oD1RSAO3+|NH(o&%JRrcuT`y z^QI4izkWN|{!h4a+kF2e{*ROQjwd_EU%b7v_5Jk`q`!XsY{rHCy~Ex6*WSJJKOP60 A=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_1_3.png b/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_1_3.png new file mode 100644 index 0000000000000000000000000000000000000000..35491b59e74ce2aea32f533c47b76b6594f7ab14 GIT binary patch literal 991 zcmX9-QHa}g82@^`yWH*A>Q-1`eTYz9gt$cvUc?}|UGAv2$mMLN6^g_ev0%}l5sGFK zSs&_Ak31A9T$N7pP&8v594<&60+)wAR18|AlYkWpR+vyU=z%x*n=$x(-^cIe`~Bee zeY-o``I9HkodAH7TQ6)B;<*}EdMO$AKmR-RHb4?~Uc9my(?lXMH#e6|Cgu2k@< zPSqQ1t1WhWvg>JspfR3UJc$+A6;;R>Mch<~jz%BUc&}9)^wh9lpN7`a%+F^*CZWoK zDPdg|^BSp9HysVKXiA|-M#m;XehxqckTFb6rHpLWBnXRT4@9wFE{_c3UZ;aRFH5I$ zT!s>HRwnW)Su|+HWVJS5vxTNBSp(S#%Q%yz@;O!_1%)Z8yjmCQ9l7JEPGI<9GnjVA zM_!79v;>(l;5rZ{#&k0I9#Qf*H7GX5nl&?hbRd#xg~?X)WTVJ-72egPpr(vk+QhES zyw*`*qluqNGXzD74@~@C*n%6h*9}WQ;1=H1l0caot)F*wbl%Vy$c$Xnln*njTu2e4xkVa zinFN4au1QM>FvpcX}2Ci8w~hTNvc#7T~}$U#!xMewt3nUsG&$si#a6Y$RJRgMh=Gp zAwGWQ!pdI{e&B<`wghXx-+e14ds`cqt~|T<<&T%neDdhh!p_Y2_P5pLi^=bw7#2MG z*0t!X^;fsP_!!@nF4Ko=KRj}G_qE$^-muPm_UTj4eV!;J-v4L$d3NIu{iXe1&r?^i zo8P?r?_;Y!|8f=XoW8z&V;(_3Qrw=_jMw literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_1_4.png b/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_1_4.png new file mode 100644 index 0000000000000000000000000000000000000000..1af6a1965a9bd841072f08831530e0b007cc7413 GIT binary patch literal 951 zcmXAoPl)4m6vtoZUpiCQAYJUTIYcR#Ly&+u1PmD6%xoPalXbEfuu66bYlR3wqErcz zWqPO*C1TNvJrv2I3sEb~Aqzd^5T%D6A{Ms`L5dVCvP#hiJzJYinzJdwXYR z2g9&pvADatTd7v7EX#e=|c$%iGEMplEc#x%1yH4g zD^O_wX#?e9T)$EqQuRnM6V;tt{>qEdsZ5u3j%e0sSLFw~II@(arO&$7B519m?m7w3 zBF4)cMXM~=5X7dUxVqkJHixbo_4`Q}&ZpDWYK4F>f$C!H02fDuGNBuDvAwAK%jRh1 zO|#+hY_>)v8ppXxrAAg2n$daQlH|6QFSCbkXFM3Dagxmi&?L-Ka7QCOgYMZv&{jsh z#yD_hQExemv+My908{`Azyk;X#sCWpP>w7j+d_el(wR(w$wEhfum-6NNC9M4kjo-p zMxlWwZIt?O9y|w<2&#-3dc|qd9j`X<_0g!6B*Ai-pxldS0Be^7uOj=T7E)%)d#ieo zHAn02S>g@95(D9@su+dYJ6 z*}cVr>vbPuO(tT!t{8@H+a}AjIHoJGfyhP@GnMJ3T16U(918VV6bdMj^5f^8F8y=< z1MeOmDe(Ls_utILt;78nu3!4%J@4;FZ$D8y_zS p>>p0b&-`>L&*A-X=Rf0<(($eE&cE+`#pQ-@cyP4;{goRh{{v=*l`#MS literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_2_1.png b/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_2_1.png new file mode 100644 index 0000000000000000000000000000000000000000..a5e5e5db6a1eff99d290871110d72e78db24f94a GIT binary patch literal 891 zcmX9-F^HsQ6n?w2v(DbI3}FhBGr?jKBuFs9!a|6bxQAKHt;c#WAyXI-ZUR$S7?{Ek zAqIxS!eR;u7D6nh5HiIU5-cnXOku!ciV0XuF_0;aMZyrK*y4}J!S~+dk&)+G^YCPW9_UkZ2Sw^t^fq*j#$!nBk z&_kQmJ>CpNCzj`_8WmbnjY*DRqyewevd)bR(U>W-Pzw_yDeb(Pm;1%`nDqqctALMz zw1Dz3F2toJHOd5|9J*UGs=XZDDRf`wh^a)oLw=!)si~HZzVXdn?9`cmEMv6Gdwq_g zhb%W1#Hp&fx*klYOV`c9uuPKedR^Bw0>S{w$Jj+rObNB1$6Il>8%6tRT6^oma{sV7 zqAuO*aX2oK1C?fUo;PJ>rZvl~r8{3OmQ`LJwgPA}W~x0~BfSY7SVBBg(_p-c?M)W! zH~Hc48VLYH029CihyhjrI}A_*MMRc~;s{k6g#v?xxd4d-l>$fwWZ=kUQKX<`f{Gcc zB6wpw2eJr51)J!&J*DTKw21UHb;>f{?@QEZ5o2JjuHfNHL~03TRJ>P@;=?pO`o%-C zMVp%H14m*K(;EroL}jh9?AeoOZm03Q%;SBPqr;YyWt0G_0HMZw%&Zl9KO7*9L^g#279|2I<>vUgPrCoU`GFs9Z&Y~l z&)+W_^6~Z67cV-$ezf}I9r(2K=ac`o!R7t?AO0A8|I2T$zQI3x_U(Cb|Lm{&^L88i W;5|FMecTMe_0yZH-@p9s=l=n)ZFMjJ literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_2_2.png b/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_2_2.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_2_3.png b/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_2_3.png new file mode 100644 index 0000000000000000000000000000000000000000..bb5974b81da518718daa160c664f74a38b42abde GIT binary patch literal 931 zcmX9-L5SRB82xr)Um5n>(7h=KMHWDX-P}ws+DqId;56}paM7FzjM8$TU%S(+uM~&WoKt+cXxMh zZx6$;YPGt*zu#y!n=H$SqM#^}uB)bL^!xqMXfm4xaXinmV!dV=5O|QKnyS{jUDE0? z1BV}t<>^cdBQr^z<;oLjtj*U9sbRNCSEnW>d)gPHQ9GF#+1Vh^yiF0e2+(M-1aK8> zYG9FrFQ)Z%LZF;MYYm;d2*phR89>7@1IKNGa4E{;`BPaw>vR^j{cJKpQADuyrqEzy zlGmt~LAPyIcX@Lx_I+s>Dqf-mS%>5Zrq$#XTGBby5RHL6m}ry02vR%FhG{-sZX#TO zx&n<3kUgMWjGHuCGfIsFBW*iN(<|H?6 z^(;SMY*3BHajwy5kxhkWbe=aQd7zbIy_qvSo6fR0T`vXDB+OKBTO-{rJ?;tqKncg4 zGv8iB<9rdX*Uyju&;~F8TmT>73}A%;Dj|!gXCmK2*+QnkU|}dg(1J_`qyRD+$YGHu zqo9kD0m?jh5j+Qy2yGeb>J8hXhi+@?>0#JUQ$NpBRC*B|V0$&eZO9&}1(cETZlU^X zE8L8d^I(Y<1yu)*#99ol3S?JddmYKOyWY?a{b3sWc^0Gfl9MD90LlQNGK)cJ_Yy?E zH(sr{@#rPYBoS3r>2~#A&tRE8$BYEl7uiT+<}#hPn@A&(O`$Q10s*B`S$^(H?VlGv zaPRi90`L6&+ovVDb#!>`PW7t~zWn*%r#CKE9-_PV!;61j}O0n_v6q02NEBRy8r+H literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_2_4.png b/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_2_4.png new file mode 100644 index 0000000000000000000000000000000000000000..f06337c4eeef02e67de8cbaea6e88a56a32a35ea GIT binary patch literal 942 zcmX9-L5SmI6n-|uo{1&faIn`Pm9@9|yU$H({H zCs&TE`+Mj10AT;<^5NBdQhDv{6!L!f&UbeK3UK9>YnO7mv9YnaxmhR_wzjs4#p3q% zHilt4J3G6(yA_I}IF6MhQB`Hbs9Bcjx^B1I9}dGfo~CKGT5&9h0w{8+Rx39eq}^m& zZK2y!219)mS(BtaU-%M(X+p`AD~?8b2Hm%~6IY75+GJ>^j#aH1&VdVS_N5Bq%-MFdx-#0smB zf=*XWMsqmB6Re)(26AVl`V&1&>m*OGRZ379+2CuYWVV!6U+;%zm^g9TNtT28I>JRL zt5B%}*#z3d_)yG{bM zi19K{GaAR&Mafpxwqf*ad)RJA{eBXL^XW9pG6aMPbQj|WxHKZv2~(d-twqgW+M~>y zu7=CA*&3A?9Oo;QDoLpfYY2iRD=j@=)*QAwj6y&uAe3j(%H{kbnx^zH4RzWk&7=J!8K zAKm#}zPEq+-@Q9GPwu|t|8n7(_ip_As`li;4+j+W;^p(7oxA?R&8MByuL|$}eV)I6 jmUCQm?n{) literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_3_1.png b/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..d8b90fc7f9cf6a848c69cdaf9061c026b6452a5e GIT binary patch literal 974 zcmX9-QHa}g82|2icj@gsI#;&hGRQ$;nS>D}x;#Y4Y3}TfjLWf1s`Md3&^}a`ha6Oi zn0Z0!Q87w|J`}8)L6Lw34-BIZnPgB#AL6)aH^L}Vw1Xkth*04k{$>n*-}mu*`F=n6 zec%4hc476{>0uxKb)*D;1(@ z(6u_(Y)PH2()0B}SRaiYfx?R1iYDgFB4Mj!TW1a|!EY7^T`lU@CXq9n1_c}x3aUKV zGS<;Bzn&R(vhe^%6B@+|I$e91Uk^h00{uT&_UmWr|igP8X$`k}Na2^+vzbje;;9@t}y9E@w=Iuq#x{ z;N6d84$dQm&L4z8K9C#W$3!(r;39G0%vr0AWLdQ{iJu3{|$s|OH7G4I%SmEuQylttUDI1RJsHp0N2L;;FNtSBN6Py`4i zS=17_XTU9^H6F9A<}>Jnflw;Rm5OQ@8bezw-Q*cpV0@82l&DEDj}!u#Bx*6p<54Ik z$IqT$dGhoJb}w(su>SYG_Y(5)*2ZgB&VBvaZ-eJ=uB8`tj;BCXk5Bul_pg3* X?XQR5zI)e5e8AS`_Qp@Izq9v0r-7h> literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_3_2.png b/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_3_2.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_3_3.png b/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_3_3.png new file mode 100644 index 0000000000000000000000000000000000000000..71aaddd0e36395db30771867587a3885500c15bc GIT binary patch literal 1012 zcmX9-QHa}g82|2icez`=E36M4<{?TSqK1)aJR<~&n!D?c%*(i(6f7*$h!u+DAxfQP z#9bIg!Yx9bomWR;MXOg_$Bq#&V32?Z*M|r_s1UKkGK=h?(}IVb@Hb=d`@WCg%lG@i z@B2PEyOxwf8q9SHvQU7|UT?B~1*)to<5uKQrn4Fx9#bQ%aQ`6Ja zGcz+7hRx2-&dtrG(&;qA(1O6rvZ$&#UDr(0tXAvow&VNVFdU7?3=KR7k{HkBl7#|M zEYW3)tJb7uTX8+T6IlI0L!huM7uUp;ktJ-Etn19KDR|Xvr>%v16bgzw z*fQ4CFwaW#n#pkoM?)Ho6?9}HtC8}&r6ST5at}As%a{|K;E5WeY zKlBnjBxOkDfhYlKV{AQ@X_GmR*Mh9o*Bc|-N4pZ0R9U>3p{y*|R0UU;15@o)^+C%V zdDX+9g$8~i$&yr-Ve`CDlx0g*YsF&Qvb=gdaGZX(I~t7;;2MxsjAQj_mHZJv{0iqBxaEu&GprNXrzha-1$oWhGixYFm}PW;^tQai0f8#B@1fD1=?0 zY9+o^mfc!@uVwVS+OX%3$M+ErkOj~IY=9QP9>4$t6hRVDNk^>)3VRX>8Uqy`oD75# zAQ_OBLKcG>5^@TtQ$}F}9tO{XC_q-i3TnzIQWZPXY^bhl20?2$3{a$n=Yc83c{?RF z2*n|_kh4d**0|^%Ry#*dAN59L5?BJu(1{#R6lA897j2`^s2Fam68NoQ=%aC;6-DF# z3IU-gi*h9Q2)J3Q4F+tj`UrZbBjj>&p`eyZ8bg~bUFDgUz<46vm8fAhjT8bIB&spU z;ZYz)$IqUO|Ml<(-d|sn;pIPmc_$(_R+nDccya5_XU{H7J^5JdU(`E&m&L^GmyUn> z&-U)qpMUiB*47hWU08X`{$g?adH2NM-Rp~IcHYG|ZXMkCe)COt{q@A=y{qT1|M=c( zmtMGX*Sh`lsRiqbdGD!f-=%))OdgCo>dE~}%QvO?t;hjvs J%~#KF{ty2ow3Gk< literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_3_4.png b/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_3_4.png new file mode 100644 index 0000000000000000000000000000000000000000..3cce22066b6228b11cb6c43fb7e7b35ffaf88d47 GIT binary patch literal 1029 zcmX9-Z;0D;7=G_>dRNbi1!4_NJF&I7>0>ZO&AMU@0?1kw|22ZZ45bCK-kn1YS`jO-mbwUMLhQm0GjuwA%;1KMDed2A%_1il)=?Y?jF7 z>0*hiROLofZMjC*EAww4f^WZLC*FIDOr^^w&^J2Dm5SUe|Er4-lDgqERr1+7;x26kcO zR>q!<2JKj!C8-p{W_Tf|C?!p+=5oza$*t8q$LSv&j7B2_xDI3mV;V7`g)3bu(-(?^ zbbXj>jjV&9IXv!-QIv|s*hE4kk_ts@9A`*!Q4N>no27E6(e&G1(C0ywFhhx%Dq&@* zYM!@?N~@ab*k;eI4twn&xQ}>%6o3I>0oVW?fB^<5ge;)Ef$Tc+dol?+17#i@5quet z0!UAw5`*e8adKuX54TEfgxWlL<-wN|U(dG>JVp->CY0F#gMRzj{5 zszd5NXN}T!kZX-A-D9VZdLuFpEP;u1EX@;Hg~?|m%golxX3H*nZF}gqQP5{42|0j# zKq$HrVt$c{=KfHIJx?bJh|LP7y zonBr(`fLy9mX>Zee(c}=>7V@O?&h^~UhcnZ3+Vd?rw+xSliV%-{`CCOS?;+vwolyJ z59mee&IfP9$&Z4K<-7BzBJOKnJim4L<&D7uQ$5z3}Gs{{d5qwr>Cc literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_4_1.png b/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_4_1.png new file mode 100644 index 0000000000000000000000000000000000000000..00f12c9ab0e38f5a63eaa2a8f6fa44d916fd38f9 GIT binary patch literal 930 zcmX9-L5SmI82vh(nRK?h8=+`qg9NEdkRTCq$RUTUX4W`FCgWx$U=9%i7PmqU5sF)u zh-EF(LtqQmogAu!wMft&=8!`VIRq?H*r;=;5ZDSuBg~~y~BIo zmq&;4r3+Us0Klb#xA$)pcdwWiD&=BdP2c($pbSUv+`L}UQmM4HwN);cx3{-07u`^41i)A1&m@ZUpg>ZGsv*@A2ophvlpwGs3HtptFuvsNC2_^$A5j+hW z*;w4e=cC$sMxvZWYZIM&2qkp@6~M$W8^>Le^k_N|gcDVrHX3u+JsS>D9FttFE)uLt z2_`MujP7!lCpf;;36=gt3ub1NH7K5B<+`9Tip3kYWOvo>&>Ti~l)6dQPxH}Y6XPP( zG$0y4wSo39en`k;+K5Fv)q4vkSa}ILQJI>>lP#I)>B7j8CXSYNtoguMhMiSB*rXv^ zCU}jf8J*)BqSVr~o@M#1*0|S;hr=|A7N@7H)d~S=13kdF5iU(gZN@YfQg>+td26!r zPS@l7e7-?d2FH1Vkg2-Hu$CY=irO^`vG%yvpN_^^lCBpbmG_9u Wi3h)adaKZegX@R;Kfd|F=l=sH&W!#5 literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_4_2.png b/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_4_2.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_4_3.png b/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_4_3.png new file mode 100644 index 0000000000000000000000000000000000000000..551982e03f8beb57ae8530112eca987802784471 GIT binary patch literal 992 zcmX9-QHa}g82|2icez_PDpzOVDpV|zY19gNh!Qd0a%XpBT*hTkv=32(_Ms0!a;y(Q z<1A7~HZ!TCaz(0yStPJB4h$?0QNk#r%)km(h)}%B%9x{S9?H0fzZrwy_kH|czTXdi z-*@56cH!8OwIcv-ptG+~@Zno(4$3nbT)CV>&lCH$Ok0NF){(78Vy5 zmzI_=3|n4aURhbebGaNvq(03-}kQYk%?F$uzAn0-O$mCHk2zu#^n&&yEh z9E<0LEF%#Gg)HinY%*$#tJ!?R6|KJHgyk%q$ro~rNb)jWQaGh9)Z0?qQJg^c!$vUa zjAmYng|rBG8L}D>CPugMLYF9ctP&KBk!np%AMFcdTBbAA0%;VPj?B5L7}VrpQyts2 zsn?tZHX8e>G)<62iY~KURTK?bZdI#Y!|>Yez;Q-{!E`!BkWqkWVpJ!^xf!ufmPcHD zT(TxrcWMrz?&NSdLrF4~qH(;C&52}QW*C(h>QcN+>l%$-ryKe~G-5&GF;z_IQr4`H zEseG7qT4F>Y<=jpCPP1p?jshU2%rL(05(7mV2lBZA#g}jk!_)HC=j4f&|twSKqvqb z0Vy~#C}au9si1xxg%&&to(7(SqJULoT(6Q1v(T|**R2JCJ(&b3*2$B>{XSPJiIs}1X$qCE(fKAz*&OBZ`GG)Aia8`@kxrl%g&YCS<8;qJlTuU-1&`1^0?4!n=A9W`ewDEjThANSlF zZ&jAof8N=<{=+Y~pS}I#@Eh)UXkLEr*7YYIH11ry_xTsE-ueEVP`6I?)N}9rIez8E o-8WWmo^*R(U&%e#{R{u~g|(Oe`KbI{>PexeD|~e0pxG5$^ZZW literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_4_4.png b/resources/g2/track/raptor/large_turn_right_to_orthogonal_gentle_up_4_4.png new file mode 100644 index 0000000000000000000000000000000000000000..a4a9138eac88141530b91b94752781d56172ab5a GIT binary patch literal 1019 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 w^@ppEyI4gdfE literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/left_bank_to_gentle_up_left_bank_diag_3_1.png b/resources/g2/track/raptor/left_bank_to_gentle_up_left_bank_diag_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..088f0e9a251700a5a9cda25328cc2cd22c0c1d0c GIT binary patch literal 1000 zcmX9-Z;0D;7=G_>?pDsI{SYx~hdqcIM$jN(1k7n})LX{oyqpvXXAYw)tU~5;P^7Ye zQR*m?jq0jYC?kx50V~{xObQ0AaA2L8R_q``KNReTG3&^Og7@KP#^8D1m*>m-Jn+2l zrLE1}%CX0f0l><}tLxjzTuTaHnoGL=-O1Mh=3wj0&Z&gX%*@Qr&d$xv&Cky-EG#T8 zE@BwAw6wImyi8=XS(ar)QBV{~*HzOrY}>Bao9(vW?e?Q+62~k90uQp3Qq^>^m?@Q+ zN|moSiJ&Vhz={`$em8QITAD)N&+|v z)-tf5iVs@pxJRNfgJKOGIS6&L05X7vVFr#{B4rAuh5dtsfK7&Inv_&JDVKnfs( zKvfpGGV+V4S3!{r_k-s^5+N^RMV+upbj``NT)oq=!_XU#LzHNd1z^i5!69TfqxqB( z@yJsa;&0TvpQZa?0VydYsQ9ErToyHCW^eD3p@p z=T4;V-T#68?M(&N{=R)SAy+rnU*37<%JtvXhdw&~@cL`h;KggZEBl0|9Dhl?{M!o` zFI-sJeD=#t?ds3}KDBYQcaPlq+)}soy=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/left_bank_to_gentle_up_left_bank_diag_4.png b/resources/g2/track/raptor/left_bank_to_gentle_up_left_bank_diag_4.png new file mode 100644 index 0000000000000000000000000000000000000000..44309938eadabbc287ca3ccaa3e1aebbbc9a6452 GIT binary patch literal 919 zcmX9-L5SmI82x5CGwEzyD$_&M95QQ_9D;^5XppE;GqZ8XGFc`IK?+7TVh=s!5TS>F zQ7abdA-F|)=%I%kDhBLfkf1%}5VT;y9D1k{p@+f-8HS)?>B<~_vn;&t`*@f44)1+m z-#L}8UwiHv09-$L@93Mw3YpMT;cK@|T60*#<*lLE@#X$h_2znzG)azNq&lzCvcWY>(d;VSkvFc2jnpme+Ttem{=K5Y;$#^GfD%Bc$f8@=Jps|N zhwC*r96W(FpNox#+G-iLZL&;kO-`qU-?C`0b4bp4(A3b~U)vX(6@BeB4a{2p@*wY`q z@$0?6?!ET+Teo*t|9y0kFv?9jFT)B2Gr5PLQEtbHe=`QZ@B8?@e7_(3 zzVH3*t>WoZPn-gP)0?ks?4)x&EqpnXcJ21L*8wuHec|Hyl+Mk~&CkzgGMR;ig~i3i zrKKed!v+_-fnmMeQ!A255qV~SOx?hWGP!N=X9N{ z)|f_YD6cUG&?fao-3>jVN@E;$bllDh*Wu zYz6BXnBT-Fy<9TRqliI?icV~Vh6Ml_K*cZv$E|$crYMK!_hflgsZ1>Eu-iqxpJ#Ig zfna2kSE-^wmn>GZd9x$dU8yxtoU!VK6_U#{#R9L;lE#${(P+qxuG;ksFR+GTD~Nj2 zBOezarvOm_vIdlmab2R=r^>!y1f}NGbYgpm_GCJzartVIZkG6-CJsy`sB4q9Idki= z-#!XlG#lbMj-pE}R}sXjqBJ$FQ?2%!O~2a>Ja4+cAIC9*ya7}jV|%zb$SY&IG8G%M zvJ+JYvAv)4qm#)I%F;N_5k!$JC^Vz-yeY{IHCi5^pi>#S*2M2blVOq^A_1TTU;@|xF2D$2h5PKI*FoV#rodpKC4g6iPzIy` zG6>XUks~8dN8<(x9e5Z#2a*US8Phews?sgH*mJbOpdJKn6a^^N%2$A`Wd)m%9a8lu zBjoM4>?YO0QG0yiP0=K#a=?*Tk-^IXsVi))BH5Piw5);K3WjbJ4pB1YBnf$dLO>|Z zqLIoyLcU(>%w}At{RrlGESAfPu4}cL!7_D@X$!0?vcAOZ%XCyKAeBTGg*q(q1QbZ= z@pEUhe?I(ycXqZESpWU*Zc46gZoG8y%!fCB+?>C=A`SR1BzB%~q*Eq9%|L23H)o;T~*Ux=%Z~Vhk8mN!8&+OjW`Cttmto?D* z`gd2nb^DhW-+R3EPc(Y-1>)U%hZnfZAK8B&FMZsqUV8AHzVX-bmF();mA87YKAjxv Z^o@o7&f7Px-%s7Z=J~CS&tJZL?SCRlsh|J= literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/right_bank_to_gentle_up_right_bank_diag_2.png b/resources/g2/track/raptor/right_bank_to_gentle_up_right_bank_diag_2.png new file mode 100644 index 0000000000000000000000000000000000000000..a6e0475ba1337c62c41b4a77dcef876d16607b52 GIT binary patch literal 922 zcmX9-L5SmI82x5CGwEzuBNmAmFhXG?1j!+XAUVX{%#s}3pB_2c7XqSb0~94kqprYWYW+qTv3_kDj7MRA%g^Smfajs;NwRcYvYv)iS54m%hM z{#czx#w@WH*>JrHBnE2>4ND>1HszW0#O5ygQsTE4k(JK}+dSA6sZ4^wKu-iu!=@IN z4Dr>pSuRMlWl?FMYY(Bc1)u^L7-r$POOhT<2ZC^+s`E}~<+{%%6O<$**KCOdt5SkN z%NEmiInxvDvD6Qh(M$^#Mx1vjo@C{gpfQTc>y~5<)WO7<#8#ZSX+Fxf)AcUFMQCb3 zbbxYz_Aq`z$Puk4qLsCWYda{s6kVuH)8xsX%naMY)Rbnnmi5h*Z*RhWk@&kTM4J?E z@-)-t_>L&`G;L^_<6bWs4wK0wi{tfjSri2V(gNDYxG65pNNvG%*3w|32ixAP@Rnt? zyU1scv;Xs>>JM++8 zCFAWXEz4)9ioOkC19$)-z#L$M0ji)%$gxovpnRp$U~w=KA(kOm0cn6N0u4D7s3`8D z#Q^02ybPWPMS`}9bxp$UF(Xf&2Ig$m&$4j4%~0h{4a6?G`d97zwz(OANc&i znFb&Jb@jL+_fAi4pTG6Z583V4F5j&mT>g*ppPm>O=j_A(9{+a!!7roN-vD@c^4Xo{ z-#`AjeouIQ^+=XG&$&OI*8U-cN4LKJHTtgg)z$BfPoG|X`?d1sveJapyJsgq-}&T= E7wVUX&;S4c literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/right_bank_to_gentle_up_right_bank_diag_3.png b/resources/g2/track/raptor/right_bank_to_gentle_up_right_bank_diag_3.png new file mode 100644 index 0000000000000000000000000000000000000000..f1fd5ad8c4ea5b95e8ecbeafd8b22f52f32d9009 GIT binary patch literal 1010 zcmX9-QHa}g82|3Bce%SdJLo~gDw$TuMjX)v%|pcO%$;40Ubf3&WqpVexwR3KR-T zJeV@p)-bP@7_^gCrX>fTt-IcAL;sgbPP0^V&CsU%z<~2d9O4XLqax}*`xW*6;AR8nPAr3_Weacxy_b=j||gN8n` zE1}nz`ZgMM6G@h&atvGGg_11SRJB z>L_oGOKxcPC!O)pV2a{YBEjN#hDgg4t#X_$N>wFVR_@g5`|VE9^(R9f6cN+qgrN{- zk!qHCyDGcQ!oF<`yyke&olNc^9v}yx1DF6dz&^kT0~A3LP+3Q|g@S=Zg2q6d2PXr8 z1V{#?;i$$SOF~W&^{Oba;BN3Nhyvs!tf=BfiK?5Kwxzmm#rN&;*hi68ssKzm&YQSo z5sE`<0cVDJds1?zjoy(nM1zn_0!v^SI+5pzqRf;FqG=SZy5ZV&ziW?!E}9HkQA7@) z01%3@s77-4kgAlMqY>L|+=Jfh3HiKSEUM+Q#?Td(Zt#pPFrG;FC2E{YBZWW)iJA;@ zc;t)G@w2Dn|J?n7w>LLrIQz#>+Y$LZySBP@^24h?tj<^HmLsfQ2a?{nMV zfAU%T;-#G*FD%|F?PQmy%MV<+cJ9>mTh|}CcIom>_v&kBVmrN8F3zrRU^h<>K6qjK z=TDE`qHDKT{(Su7gI~g5AKLT}p8aTk^=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/right_bank_to_gentle_up_right_bank_diag_3_2.png b/resources/g2/track/raptor/right_bank_to_gentle_up_right_bank_diag_3_2.png new file mode 100644 index 0000000000000000000000000000000000000000..25dfeb1595e6f614ccffe9479accc15aa49b1dc4 GIT binary patch literal 1009 zcmX9-Z;0D;7=G_>?vJy~iq%ETNs%bI5hZ9g0_M(KSI^AL?lP%bW*iyzLm5FM>xZiG zEK*0oC>09!Ly_ouE?__0X^?)1633wx!l+U)VwKJ-ZXdc)q0am8Gh^_)@5}S$eI9t; z_xy>qDbuV`1tt5#Kh#}@=ZEUIc+*R?{SP^r`!4af7^K`9OrT%{`28%opFTYjnAvjhrDar2rOGg5@9k~N*#E(mTV)oN(LZm}O&qk)&iL7^bW zgDGQm4RcG8PCYto;iylep@Q~JguFO_1fXD;7Ks=*Zjz+Maodu#o5^$x<65nTTo-4e zaXv;%1gDTmjY=7eYI1s2DA;1TDO)YY2{HtW)5$m|Q=-bIH9;#%#hOxcG{-l*pzQbS z-H{vNAu2;G14JH36Ju+!WP?n*yymA$UELa(9@>_usLJBGBvndrbyaBUvR_a;6}@K{ z25x2K+oBf=0SX}rD6b>iLP19&L1UoIgOh|n z0we>{VyMI*OF~W-wTdXP;8yS~hytV}EUU(h991@xbxUnF3%+mn`#uV_@C-2ddESgk z7NIz#7I5YuZ4YzJQKhx-bWvwOMu8=;BppffL{?_<8PPPdR@rFUW#6;=fro}&Ruqu~ zC;)`QEQ+DrZQzA`wbx^-mD|u;Eg_wjvspEt*BH9M(iNVu1;!QWwnX()aikE)AW@Y; z4v%~>Jbw1@{Eb^b@cPD@3`={zyb_Yy>dNxThd=!6vN&E?xFfMXavy)_H1qQ}TQ|=y zolWfTJ&J=m&4a(6K6UnwN8OKhLaVTv MSX=qxsh8jRAB=9ZHvj+t literal 0 HcmV?d00001 diff --git a/resources/g2/track/raptor/right_bank_to_gentle_up_right_bank_diag_4.png b/resources/g2/track/raptor/right_bank_to_gentle_up_right_bank_diag_4.png new file mode 100644 index 0000000000000000000000000000000000000000..6b0a5d385c4e7f56dd92f224a51f75567a9fd9e7 GIT binary patch literal 940 zcmXAoL5SmY6vp37XC|F3YYshB%pqWf9D+v7Az%*C&8%^VH0xxSu+xPIk?lec5h7Fw z60t00$swb4snA1Ra;Olo$e;mxh!~_oaHABrLJkEhMp>3BJEdwaW7D(&p-?C$RF z?d@S0RxX$K_xEe{dYxq%Q4~~FHjJiancZ%8Fc?iHVI0r1Y`xjA3s-b(bq&q%n=Jm~ze0NY9`~7JJ$iqk)!8%xu=nGyiNIO9bdNbOi8J zY;0nYi!a92O+uiYK^q;NdkDpK00ltDFcZfeg77HH=lN4bnYCIA$9Xs!p(rBQYF(%? z3d!q~WYU_$8Xj*A#cm+?r>dXmVb&r!f|2UHO3Mb@jQ7^f zVAGkN4U+S4i56?B3LJ?^4BiyTw#wQq*>l={-y>_rLeAfAjVS zC#zro>3#Ckd1e9k0 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/flat_to_gentle_up_left_bank_diag_1_1.png b/resources/g2/track/rmc/flat_to_gentle_up_left_bank_diag_1_1.png new file mode 100644 index 0000000000000000000000000000000000000000..c545f1b2c7d4b648cc60ce7d3e095bbe0c30b016 GIT binary patch literal 1016 zcmX9-Ux?du9RK$IrFY#?yiTht7`2E94+bls*KB zE)V7C&Y%@K=%9?K6@vER9wJl-t`8j)$-}{V5V1(%RmCd? zRjsj&rr7StU0)vrwb9t&Nvz1GG$Csiaa$o;I=yG{exo?(XkouP37w;9uaENlH-NA)rj;#ph?37~L9sT{ovGbJdm@=pm|Uem){1Of;k&vNSjw=Wk6ml( zH;w`qjeF?~Ly$$9DRX>9l4^?5tW-L+n%`;#o;TXxpH8O;avBf~jBcm-ZcZAITW&1AC$JTH-y!m_#`R^@n^(W%w@?M~PWq7etOfay}&lyO@n zn+E4rrEas_cg>;SoD6$Wbci^BB7hEH1GoTvfH4LrhR7pBN3Mgyp-6y6L!AS!0HFv- z0;FY8jYf`$JQWS9D0JXn@C*n%6h%x`vSx*>+l98Hbh}m%xRXhMVy#>mXd}hhS<%5| zkI+Kao|fFG(miSnj=d2YPKgXKI98z2B@S05+9(UQsXBGD>(+ywI|+Lz8Zm-^JU}5J z6lYP5HUcwJ(yBVjjsjG6~eAk;kDx zh>xFnCiTa?A9(lDrUa|M9K0EmFE-XLTt2`1`6m}vZa;QnT~G9nTN~D2OFyo*Pv0W> zbJtVVPyc*q`v!_kxcX7}*`woaxcMC1d^R!IPX1O{{nl9c_wbv!;HO_t|9*Dmg@r5E zzQ6O@$+Oo_z5VJt&!^u|Z#cKlU75FbcAs?5M~S;H|HGS{zqs=LgDPvkwL5W7jEskO z&fu?*jY{(8TWe1|@cQ_JyHBa^A^yk@2mW_YfA#o({Cj_cwsnyIa4qw3>=-uIH`l&? I@#?kz0Y-PPKL7v# literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/flat_to_gentle_up_left_bank_diag_1_2.png b/resources/g2/track/rmc/flat_to_gentle_up_left_bank_diag_1_2.png new file mode 100644 index 0000000000000000000000000000000000000000..9a79dc2bf04b0575a0e88fd5ba5d7993bd528666 GIT binary patch literal 1244 zcmX9-Z)_8F82*+0xs5`~XtYRyk`#C11sb@>p~YO~7~QzB8ywINl^n^bRg1aBTT-zZ zCoNE+!bOTZpkXDRSjY*TnWhUBimAAm3MCm@OtTdz(C{a8P?Lcq{461P-uHRmFYoi= zdEPzUUC!xKXHNwHOz&u4wZ6uVTD3OS)jBo%6Agem(A~MAt+wiPx+znp)YaA1*Vi{R zG&D9gA_&sd)YRPEY_eLdIBugTl4WV0cZ;GB3)mdn z*K6_lZK1GTi8Ap7mr9G-T)0?LDGYJh^#W~@To#!}Vjc;tYn;K zz+u2g0+~hP0+J3J@^ND|YldYTta9+F3}MC!00RJrAcDalnawhas&@Mj!;E-5c}cn# zi@|i-j2o?_$;Mdh9O@J>mxS}OU5rvejgF*PHOnOn9t&Z%IjwdUqj|zDP(p|a#kg2f zNamzWA(AV{i<4;s35+Z-d4R~msamp#r? zDUrq|&MEPlc66!I7fiRhz7AuR{c)MMsnGjby=1+tpBk@Eb zldBdKW0bd^%drXR6hEkOaU5fCzvLKrIF%0F)2_YhWno z7on!YLY_f^fP)ALl1@-y0Av9aOfZZ?m4Qhw%!Xh=1<#Eq08IfGgLrw96=S zYzm2M6rQGSqYPGdSs`bE5(=X@Op-81*TPRM(m#Cu1HJ3JSm3yQ^@G~Hw`0{i8`}4r zI_Um<=lp4_#~j)aoZGBZmL5IuMc>CW%K=5FT~xVCPnN7ca=UZi!lTC)wtf5Aq5Ylg zPtWFGyuR-4mySEl%*kEUzjNiCl5yh7ynp7*TQYz9gP9W}Yi6GPuH~e-@vYWhGHW82 zuQV>`>wc*Ro)C_{FBy+VhnuL5^A}6Y+wjGW%NlMCpEvvRr~Pu#?7lw3mXp~xWr~Xx8@yw zq8G;YUHkOC{{Hy6vzwxeZs_{|Si9rrl}k3=8u+W|B?eD$Hy!(Xe(M|St62m(+PYSq IUb!XkKa}k$3;+NC literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/flat_to_gentle_up_left_bank_diag_2.png b/resources/g2/track/rmc/flat_to_gentle_up_left_bank_diag_2.png new file mode 100644 index 0000000000000000000000000000000000000000..ad8bb83ce96270536bb7d8137571970212f52560 GIT binary patch literal 1552 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 O!J_#UWzF+c+y4jW$C{l0 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/flat_to_gentle_up_left_bank_diag_4.png b/resources/g2/track/rmc/flat_to_gentle_up_left_bank_diag_4.png new file mode 100644 index 0000000000000000000000000000000000000000..d79d7881dfa6f7b102ea9afe313a65a6d7f41074 GIT binary patch literal 1680 zcmXAoaa5A`8pnT$g-J%@iZ(PvoaC@Dv6$now?qd>`I@hd7EAKJTbvy#(znGnYHZ=g zHB1aLZqXgbp)!XjR(8iJT5OTwLYp0Rd6Ygs5el1Pai@q&mJ2Bw8C@@DnsJVU;13%_ew#ex(L{sBMASKx z42T&($pu;jm@%?TL-w1f5m#O+#DEDNOex{48NvV?02BZvnXI8w^$doY!*L3Q!zdb5 zsUmv)w8H`Yeg;2}jnH{0Q>f&KHC(x#kDG;rU1V^}tUk;cQhK8*rhvf{vxOK}h6@xL zk;aG`9ZH8+;|=QrQENEiip}_`2*|?#T?Lprz%i2r4!YRGQTP!}SZ<0D&ZId2hf!`G zE?{WIT$5br!bLs;3mfo=jflGqNxy9-?1u3GHBZ3d%J~8nBGO`*3CHbPt;b~YI~-xJ zH#R<=OeP^&GR7K_&N$=rlU@#(#z3Ah32HfoznVdY@u0i z3`UZiJRo3_#XPD4VX85{P9-zz)lRG4=eC9e?nE>IQ!#-|2E71A0fgx+jA^?+#W3jX z@wmWl`%^?HBvL3awHnvyG<=>xz_THIw}|hT@y1bZLe7RtCe(AFoe#YT49n8bFIYi& z_y+@f8|yK!?(WSUX)xAGYt}bOI=(q3ZHt#Ls67CPh8V2bS6rp@yp>^jy?*QJwUyM4 z`?d1bO&ude%hvz(*|JhY7;pnP1 zZzTQHx43#s3wq?}dD;6p()Wxfca<%&5S0r{p8CtaXXr0kj*%XAS?8Blm9jdg9x_Hv z-IfW-g~ONMD!BdYO4_5zo6I9k=l?g7{nFU$rv1AbK4C4TvtFw^CtP%xt2w)x!(3vH_RXkG2jp>N9&{0qq&D}MfRVq|M>>qJ>YVfAM{MfZze|LWd$8=`=1Q$c=*xnZ_j!^2)1o~yt=%i{`QY|%a7ia zE&b=jk6+K|i1#jhX6s%eInh0+SXNkiRdO}2P5m=F)5o*Yy5Icu`(+(&l7HXd#vO%Y zwBB0_rAT32cKe}AFp+gU|4P=|ooz;1*9#^6hlc8N+s@?H=M>y1$k#u;#M8V-x$l

K@A|s&_NK93&TlW)%#m(-L|d+Ce%~dPU@Y#n&08LmC3^`1(3X62d1Bz6 zF4yq6_~15H;oiQ$yip=7bo(lY_6)DduWyNg)DD**BNX)-YUOw z;>f`7VU~6Fe#_zqj%HG0WfXM}-1S+eYaaR8r{k2;=Rau~J~Zps<$8f EKOq+Ek^lez literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/flat_to_gentle_up_right_bank_diag_1.png b/resources/g2/track/rmc/flat_to_gentle_up_right_bank_diag_1.png new file mode 100644 index 0000000000000000000000000000000000000000..07506249c28eb0b7d2ee409c8fc99153813823af GIT binary patch literal 1500 zcmXAoe{hR;9LK+vHtCObVc8^Yc1y{K3Zi>zLAWRNw9+p0aUMMBf*>k(*?AByG}E+F zml3^;n6T`Y5`?81!^D^qP^8F>Kf{8jY5jnVFT9MW@pl z3`TZ#c1}(Xo6qMXhzP?_f{?4#N}Y}}nM`)O)9dvGgPpNhGL=F^0F?k-o~Kl@v|66t zATnDdb_eeEs{8?6IAV$SxG*7ul;lxzwvpsn)dHsuIc35Eb~5axVj*)P<{C%_Wn7>V z0zC?>1j9`+0v2Y}%}Ry2Fd>2|6&$ic7~}(h1E69sC??a$_pXh|d@A>`W$; z5O66Vurm-h6Z3P4uuv1n%son1LhnynJ5%1oP;>z137JeWn=Rw<386?Wk?7>OS(QF! z@LFskw>K7yq~a)0$r(C=X;ks7TA{;$dd!61p$U16(SRcn4W?3k5Cwn)KnH*o01p5m z0D2ezrol02&_Rz2#-g|YPzbQ0z$XJS96$m57fAFzjqd~p~}3RpnQ zW5`5ICCbwhh(RN_8nrH)(eJTEf}TVy2vc#fTn>Ez#sGwAFU)DV*Kkb+M^BH~VSkM- z9LAJNLaS993=|?ViA8o4@nA?mF6zXE36c+0JZKa^2LgR4jL6gB7f;Ol_tg(HV%%01VqvRbIBBa{Gn7%H4;GhF9E_=64OLc4aG^tP%@n;%0@)mh<^vG(-1;2Ys@N zafwyCr6Zee%^&zFWUIbYT6A|TdS?pfabc-m`_F;;?w05Ew8P(S{AJR?UJurW3_rM{ z<8@3ew+<5im?84UX}NdtkT-Z*3#9IQDfdNS&@8eu_DzHENjlRjmrpR zYPrIuu04w5s>vHTpES-|eBjUu;A$`W)gf){FaBar|KuZE*IlY9euvM$vyP5MH_*JRh<< zC$AeZM>w*VZeA49j~qDQcxl>fINx1s+kfaYjluNe=xwuaJg&aL7&*&tul~VhqoW&~uO|aU*e5Kh(5-l7s_-?6tuC}}@p*S$jzO3cxk}qY?I@$*oj^Ng!xqEkU zKjbvk)fF#1eO-E=wZ?a?Lwdh*#6)Xd(~&o>{(1d3jP{Jo$UPySbgX%>^u#r^X5;yb Uqr5}M(h&t!71iZ!vzBfBAC#@2YXATM literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/flat_to_gentle_up_right_bank_diag_2.png b/resources/g2/track/rmc/flat_to_gentle_up_right_bank_diag_2.png new file mode 100644 index 0000000000000000000000000000000000000000..e77814b33f55e8adccec3957a208ce387068ffe6 GIT binary patch literal 1529 zcmXAoe{hR;9LK-3dGgQr{8%Xm~mRJJ^LS{b=D2x7}fuTfbSlbfjM z!aXKjM!4JwG9H%EtFV-?s3PULtw;2pkt27Ds>xN>E2{f0&fV+t`P}E9&-;(}`_r;W ztt=@VTL=Issa~L1l9@9zH90>!)14=mZ2=$~Ec&!&US=IJVnkL}R(5uFPEJm4Zf;&) z9*4up&(AL?DBz35Vhls&a-1YpdcD?cHrefVx7!;C1S64dmQAJ87z%J1AXG(KEzf8a zTCAwUDRX-We?S)so1=^~p76;Ljz(5wQt@pXA*Gji%~-2l9(HS@0TbKlNV2}cR75EN zIs{m7K#?53i4%5mV}4#bDu788rgdyHSb*`wI3Fd1GMz+eLNqo^Psz+4xt&(ILZmOM3$g~GRDdeQG7?egrCO8R;o9trpcAhZGr#gTgX%78>0#!ZaI88`bTNs6AZ??yHlwY z1OgL~xH*`gD-Q|CC}N1q9SN;3X$hsM?sOnI6dQy^2$w76^OZs|iJ*F!%&a0Dy38?a z!0GDr2iORcj^jY5;+RRUO(&#`h{uZ44l?91bkeq1*prM!(&;{k1E2xG3;+cH4L~OV z2@Zf62syNxA?<@~jF12m23$A@DgjFXNCIf$Lnj7(1PmHs)B#x^cx}8CsN_IHaEyAs z&4RcnrQfFyh3pJNCzA}!XbB7evlihLpYREFL5Yc#Q7J8*wuA=V(V<`*#!?a z3qY2?T2WQ=@vdF_79V&lDsEnO2{c04pXCD=hprUn>x%C9t?GsA>06s!C(5qtM3pU9 z$35x)rVC9tnp#sA<9TV>8NuLi@P1_A+ZQ7%cQP^Kx<@G8h0_1p=BzL+;J>VEP)2)r zBU7!NgHJA$J`kCgzMQ?Wr2k$Czi$5rq7COG9m-4dXYYRN;`pau7R=`xR<@*8mtCGU zEe{n{8#Hu%`5*HSwB71G@$%hGRaZupa$Re0joiO2+&^{h5w-fD+UpqqJh-EGN?~7p zd*nu{YUyghsPabY9JOGUC_P-css5&4bEHeg*H02PjEK=~Mflj6rZ4nl&uv+gicP3N+PaR4il*Lqzag5l zeKg!Nd}zAp+n@D z`@hwW{o)wCvbUw8>Cte{;ey`2b)$DKynI%D^Zw1isl{lRU0>I?#Pt&mVANg}+RF?gf5Mc|p*DZf9E0bSPJx{IpW$uct{{wWXvT6VT literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/flat_to_gentle_up_right_bank_diag_3_1.png b/resources/g2/track/rmc/flat_to_gentle_up_right_bank_diag_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..3a484415d613e4d0b9993b3c9d9d685efb558e4e GIT binary patch literal 1014 zcmX9-Ux?du9RJ?m^sYM#)}y=SAsYpw##_a$cj{q zUcn+oqE;+Yp-3DRGS-KC$U~8AMmSiNJRDLr4;6~`VGl(jR(H;y8H3OF`{ncU{e0l_ z{eEy}E4Q?GWDx+CHlJNT8_%`49!ku_eevtw62J_cd478%rc+Z>)6>&4Gc&WZvvYHE z^Yil0*&6 zmFa4YYc!>HN9}q>FQ^TMwm@MDm(<0KsSuV%whU&sB6tm@*U`hh>L|1)V?T$3NRNYduGT}j$26#AxlyVXLThcoFc zpP?m!Q^}l8DJG*?oY532j#%%?c29M~0>R>RF3ZW3sIhrn(5q6lrM6t%4NO0*2c!02 z;-z><%aADmQ3le&*j6UjA@d%u2TE;V*kj8_yAqYwSiF>@Y6{oZgsve66|LVehE8Sd zH70?BhJGr|l9a-*1zsr0a!u2krBbI>^IEOIbqD+VZs5o5|#etW41w#~GqjRpVvlPOZMz?u3324R}yR%#c&2N?1jz zS>~Op+-(;29JB8=M}0qvZX+H*0Wbh800&?XV2A;VAql8#Ajd{wUm`(gpw5GvgHQq_ z1JX07#voflZV~mWD74{T@GOV|C=yoGGG>XYTe-Hab-R@ya7Lp5#aeg)m~xW0GLlWG zE~$r{HO@OxsXJ-(4%`9ikI6K!1eT*yd7dcBOt~OhX3?&jU8f%S&M5RzG+;#$xqw1I zD9)l9%iRZFDL02hw%NE3qt_GidAV5B%4MCQD=gjM8Ao6|k=~c6k&;C!flLxL8RYUP z5aZ)#k0<}Q_XBU9-I8JL_n$7sCKBzI?FHKI=!+0w_f{h`@+@763emZ;SEbIbZtlF53RIH{b#GfT3&-*^_`{jK; zJkNV@pr2gS(AEF|Sk%|MZm`PT)mmPss&=Andkg>-7}zkhzPc(D3Z+u1QmJZcYHDk1 z)oL|@Aa!+h_4V~SgTa7dW`e*OhGJQ}%f)-W-e52sk0;XU8Cfos%a|G9RzOpYcDt72 z^lp#YCt8CcIvRH*Q?9He<_i(RgxIW&Jf#zCdOvFnyRd05kqX+fabC{&igKh5S8v6NLG2 z7^YGvrZwO?Gp)Bej3jTe2^j0QxII zJ|PKdIUp6I`ASNI11$q|PN4SyqaU$^b!6OVPvN{|6Z5V}$)ASPv`NcaP&a83ZPqAD zBwdW;WphDSA?7Wmf)yzS3u%qkVl>$>ixVf@3?s5^$nB1cVk#V#5{dlGOsQ0Y0Of%( zh+t6-kwlrS$(bj71$(6EPL}*L<#_Q?t^ylP8jVG#BlQNxWM-{a7e)IV)nlHx7|2B9 za#||qap0g37o!mzdOv3hdGMHzNrs%6n2<|_in(;TJP&aIYyh|b@B>hdK?Z;V0$>$1 z0X;4li$FO?8v&1j01gr)kZAxJ0C^o0F&Lp?f`eHflq2AY@fJW4z(yk+s}tO&fS-&; z*ksZxNwH#4f>kZl2{2D1?$^-~y(3}dWvjnrkColYN-+B=^84K=*IAN2~L(zIAJd zdJlenlRLL>X|sAnH$cw9L!T&ugI7*FoUNCr<411j#mt+|uCK5CL%(}+^7M^6jeCFT zo!Yb#Z0vm)Q2%w0RLZZg-Cr&0x_hU4vU85+wqLB7n0@%F=E8=K&0j`423FlXP|2*` zxT@j&k;;lgJ)5_*ag$ciF$w1Pr*?Dm<7*F?!;2qGiRU)8DBjsR*8Jy%-LvYcV*)oj zq3U2s)yK`>z-_fk>F>7Au==J7( zqsi&(OI7cSH(pSzX&CahNXgDm_nab@0QI)BQ$LSJcQ%3DW5cGGpF{1xmToW1#r}1E z<|P#)6@Ab3uDRhZBnfu>zIjdk+ppc%3@f*uX{!6FZ;PZfFLYmRqCQ+Wdijm>&zu;) zDAcsh*`@aOlfk!+BMW1Lw@9I9yruQtesrfaeEHJD&i~N<4Le$IetY+$)_LyY2g;t_ zU8ryWvXy_FJ}jQNaPZ3O>fSFV)MFjDzdtj)6I;E6YC4>Md^nx^apUtN%iEW{w5R3j b-XZw-?D*X1y=Bp=ZJ=*`|GHB>Bm4dbHUcBS literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/flat_to_gentle_up_right_bank_diag_4.png b/resources/g2/track/rmc/flat_to_gentle_up_right_bank_diag_4.png new file mode 100644 index 0000000000000000000000000000000000000000..f852ca06f6e0f13efb339dca5f4b3dafb8367a5a GIT binary patch literal 1707 zcmXAoaahuK9>>2)3Pnn#d#JcZ4vmT&*{>UCZ1-D$VNv|bpBEYP(8yS^!iha(Sh#SZ zVgA^ea>W{}U+FxSI9+2!$vS4H*r;&g9$I+f!1&)$VkZTHZ4Xa-XfQ}e0bK={dcelWJUdww8wW!~y3|h4jhcV`{PWv51#7j%(u{kn`r-Fq#6g4ZAHl5CCHhb)L zzsnU41Y)rm0T>#L-Xo|@3sLmb30&!<_COAz{IW!uNP8Ty-D2J=$ z^R*Jhq(~goJI&4g?aq+b9}mMoAt7r~nnA(D)Et{0c9>ANP1Wx(1UN3GCSU+$ z0B8Zg0B``%4?u(rh=dR!q1O@)oCpOGHqbzz83ryf2qAz#0imH2W{AKM!lfpBCL)A` zUxViXi4e#TvRX+u=s3-oxE)uz-A2FP5smtZgcm~vAUzev=m^eKxY(KyAB)Kyah-eG z>YH(eiC~PK4tPwmm`jtxOf?GWRT9jg#+wapN3-ASh=#mGJj|0w2p1qifFKfCm=bos ziDA^+A`za=`kS;qpHMDG)oP_)uYtHm9@h#(4k6@`a03V@Dq|4}CShO`Hi&S+gkO?) zeqIjsKff|iRVYQlo0Fq^6JQi?5^X3dXt>i_a{R)YdHs2{2To4IAEf=W_op@74?j-5 zFR1=5t2U#&=;3RPP2WC$=T1Mor?~a#OZi^}2H{{_dU4d_JC?;YC&izCNy@c$i_jmQ zMe75*{~gc6FJIZbl6rMK|dZLx8vaqU5x zV1Dkk_=~hG{OH-vQ{FLnWBtBg&K0D%zAqU0`J?&JpJ+FZVRgMrDIH%f6x=$0xZ=eT z(OcnaLB^8ZHE%O5fhW8E_~W=(R94;{O0U$Fuuc!0?^LVaeE$nQrEg;YC#Ao;P$t|k zzJNwfHr*|}acJ@&C4YP6kCmRTTAnpE zF>6xUZFI&1Aw*9=l3VD(2b&Fu6X?d07zxF_9R>{bgf#4C- z^m%e7sp{I~gqXCX_vVB+ZMOkXa%V-x1sc%Rr8pQ*QC@-*RkB3?tyRb5xc(o?6c&5^p1=TpFgO1%UYD#v_+lY z`BjG~TG6_6gJouC&Dj&JOC=b^a(M5jYZ{gexrdhDE?M>T=G;gDHvGxv!G{an%WhD7 zE4J(q&3Tl8pRf#n-njZWDfRNq_T5h#UjM*gs4h98uw)C?l~JmtX#xN=cfP)EOSP`8#_GnpYPMf>^aD@_Hf`))Uma^|YHDk1>+0(2>+5AQ zSwlkuf*_5JjdHnMt<&i+%s>!0O_K~`<2csm^Myi@L_$cXbCOi9R4@a;&43~mHk-=j z(z-ncf503HQ?Z02nc}iypiqnwC}K4$SW@k^YI#N<;jmF3kqTL}30BJZOHy>coVI9y z0|jmz@H7%*kyJpLkEtqI4J;X8#Q_(12-7+MC;%J?!YY+sjfU6jqh|9cMP;1Myw^Ju ziNI7!gQ;}5+CXW|4!wm%tzL}b&0Lu9#mQijj%FQ#|X<{1Hb) zUf%zW7vueg)*q3nWCfcdgs1&mt6Vo=&}t&7Gy zPLlV!qCsym9u(8@l9Yy(f{`Sl0H6dQta{ORI2I?c6lus&XvwOB4lVTRVHkq~4n?wh{Kl1vxyL`ScS{!y*4~-kQSHC$T-VY4 z`jM}L_HTVlpW0yW7+EN6er1gO=FR^7N%^vE53lapI*A}toj=Cx`LRbE+S|`IuZ<47 zRMYdHrP3Fdz2ge^{BZLIs2r2+fA-~xnVL%A*x^P#bKur<))fQYll^_|lmCtW**vym zq_k|Z(e&2ahtDNC+*DL-sQt>o2ER{b>b7SqGQ~| zQu|c7Z?3{PI0-Ho(P>+9Wu-z w1EGP@>51Qf`QZD#!qZE7^zT(SWT*c^j(;?eu!qh)b`x~2?^<{6wVuBJ0oz1BqW}N^ literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_left_bank_diag_1_1.png b/resources/g2/track/rmc/gentle_up_left_bank_diag_1_1.png new file mode 100644 index 0000000000000000000000000000000000000000..db43a0e1dd5d82b0716e11aa82ca135e10b4c013 GIT binary patch literal 907 zcmX9-F^J@382xrjuGeK993(RTR~3$FU#^pvX;4YYhg}&}K)T z5KNTWTu)MKnR}aUC^1-1XqqzN^eEq;rxthZN@>tr&dp*mDvNMmWnB_<28JT|DmF8* z)Wg@a)^16nl0`cm-S`M)Z2$#8$1oGe9g_5EIuwL!MOpOwYsYyyouV`)xmH^wScMXF zx@$5$hckS^nn-RWj}tXq>T%Jhc#`e51(lHvUNa?gq>QHeG&bYh$%=7a&NllL7onvB z(Fe)~+Q;}Q(Vf#;Dw=uE+gM@cXXsjCS_V%JyNuTpW`>klYVI2Az}iM`l?MAfLfZ^) z@if!p_`WC&Rn;?$$#6LLymUIv<9M@LRaJ$6G=UB7-m|yWLYH0`veZ03RR%SO9D>Ks6Kz*%pdIRIC*mOb*5(#9b&9Kq?@UKpuxe1;qoj z9HAnF7s2x&OVCrWfk8M!X6$!op^+qRo=0VwquPt?17|lypHMy~-K7a88A3eBK z;rz)TAJpWni_SX_-~9Za@#8Z%f901S(T9Kkb&v0S``mo+ynra)48VIR;z8bSgcak@}l2{y8%#w_3Jiv)W*8HI)y@^R4VK1>l+#x zX3d&~Ac#t(YHV!O8Vm*;H&GPHFjlA2!SkHo?+=Hg$z&><&C7D7TE$I(Gy~eIb~rR{ zx8CD51%l>qgpMcKbcWAK!D1;!84U?M_9wU#92$dH_54;J}YMa;r0v{B0llZJ9S242{K; za#pGqNx)hWo4Gg8B z$xoQVB%Yw~jMbE0ulv_TN3Va{tuySNF7myQ8}~v9ROcBjZ~& z&GUNuwjEL)*w%K5-9e*@xL!+5x8CTpA&!dSBf(F+kngaA}}d$h8ju6^f>e7ooL zs+oJX*2c5Fyk?0{5mc4-Z6EJ!*d6Zj4e>4V({q=3X@zTV+lk!m^T&_bUicE+v|W8g zw;~(Vo<04b`~8l+?MnyeExd4n?L+s_ZAInlxsea7xZ>Knwb#1FznOpL>`OyKo9n{W z>%Y4c9qemM%1;jVe^U2F^So7W-F)%z!m0aDhkwRq=PT04A3trH?9cw0Y70O3bs+Yw zKBUMGpenEq`CDxp-~RTa>-~$;rsZ`7U#O?KrE;TTc}uJ7s$z+2(}K@NHZ0&qHuNCJ dedeVXg&&U`T(%F}VydwNogH26->=^8`yT>oDtZ6_ literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_left_bank_diag_2.png b/resources/g2/track/rmc/gentle_up_left_bank_diag_2.png new file mode 100644 index 0000000000000000000000000000000000000000..0f0a2b7ee1be64e0a31b36af7f166d0d48eb1187 GIT binary patch literal 1481 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 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_left_bank_diag_4.png b/resources/g2/track/rmc/gentle_up_left_bank_diag_4.png new file mode 100644 index 0000000000000000000000000000000000000000..8ddcd344f9dc5d8f39f3a3873a78456683bce93f GIT binary patch literal 1583 zcmX9-ad1=h9sf0H`vP4TSY0#8NyhKA-RR zzW;nbe|$cl-mP1-m5Y}x1^`qxZ`#mW+-r-}OT@(~66PKSKn%8S-nOxLmXwr;L?W?R zTv}RMR#sMCUXCD$L?T(VXpu~*RN^?M(U1&7v8>)|wYXd^jtfL0F`l2wWQ0Ni#{j7Y zG*zM3SDDQUn*(!u)SRCVMU3%;HJS2cb3qM?=+qS!O6JrlysRo<#RpxQ1gA?zESU*+ zJ`!Lsf;O9Of}tFv0~dguD^}8UQ1LSfo;?T<%q=f@<|3 zO;4CiX{Ym6AOI5yIbNkCWf-kc8&z5hs&nG3S8ercTw$s&&IFUjSjMCvAVH z^cIc9O}hieK+F4TW zR=F{(d@2lcytIl?p*ox}ks2Grcv#kNvqe0fL?Dog z#j;aVf*?R3w*VD~;326dE@zUcDXVek^ufF>E_kO3k^Dk>9#)`IDIt?-6-oxhShd

jw;&0C4gf0v zUI4-XOaPEW04##mK!+8EgD{h(RltISJ`%*VAVUMl0BDgx4-SJgjG1B54KqRTgYg8Q zG(blqW>)63p?zL$D9Fa+u2d?V&!=EfOKt+Vqk{Cx=%B(FQ&}=YXZ1H(6xe&|3 zw4ka2gaXlGQa!0KGq}SlOwy{`bnxVm&@@-q5sd`@S20e8!ilS<<)wj*ZSI4mGU*IFYC?IXJfI`xe6U!ShW_ zU(3Mcr$cqevNcVG*N|%)>Ml+k=^7$GoMyncm+mz+J{LLh!ff=3to_^BXJaQGGrr3| zfb_1&t5x+UqsZOsl?{324#$D})Z)^vhGnKz#+gSRy1=I-^%w3=@Na__VtNwYvm#Nw z_SpU%wQKj^FJE%j_SERBQ)`iR)!W;8$`!9|>M?@v?hIjjWU05V+-%?7zVzmZrH@oID5{+-P? zYTY&1<-gROJ$LFS=BJLn**Z7*)!53m?&TkfZtB2{k2ajR)&9l6>Kc3R&XUi6AKkL& z%Lo6o?j(5l7w_1omz?I#a6c8=rw24`MfS`L5(j#Qmyi8}(t|gy@;gqCtZA!!T^Hq^ zFS-1?BU_E9X1`pK8h-Kdsj8PJsiXgy_bHDe)A__M>h){a@;_teY49pJbUK850&;md3)o+%8!jmwV`!Kq$$(?#mW;kGd^yO zDa=+Qm6m#R~6oiW&h?|?mc&{d$FXuzN|65 z59dm6D^CsxK!1l6Kdr`uuZN<$s-LMn`2Et(pZ%}wkt2Vt`1CVzeKGZ*dE=H1@2_v$ F`+qRm(>(wH literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_left_bank_to_flat_diag_1_1.png b/resources/g2/track/rmc/gentle_up_left_bank_to_flat_diag_1_1.png new file mode 100644 index 0000000000000000000000000000000000000000..78b8bb0b2b338fdfe6f5a44eaa282651cf9cc223 GIT binary patch literal 1017 zcmX9-QHa}g82|2ice%Un?4XXq@=&E>9)e^TF^=eRn%?S>^KvYMqIt-U=&F_(A%|58 z1{Se*REg4IA1c%tN0p!zZWyHx8T8?lJcMy*2N5ePt`Ae9>%*ys{LL8rzVGAr^8J4B z`@Wrx^}^EP@kIbwT75QuCZ5Z29i30a{lk+xI6wk6*3PcPbZTm9dU`sMNX*R4%+Aiv z&COvLHa|bVu&|KH<#IGl@jNFFUY__{yx8L6n!)P+0Dd1QTg`_N}%jImP zO4aIYvn6)AO3%~%pgtVgJc$+Aq$XsHV%AcLwodPwyw@!HT`kKAZONT_gN zNmxh2yn1TTNl$znjVUxy(4mD;KL;QJC>W-tQU;D&1Yxu6t|;!6N&~~V-EJe#!|8O6 z%TQvLRfvK{77bdpSiQxYj?m~ywy(HhDa+tgA;(Ijpfa+?Yc;XfR@$!S21Y+@1mn)| zz)NwEmLOAtY!wI#W7?TQmykV93ySrjZbw!h?TTbtW$;RYtQXmi%J+0BFx5d*A30{^ zH4g#@jryrHLy$$9DRF#7lIp73s#Lo5y4P+8t~=b{kD>?xt^v`+=uV37;gV05hJ0-# z+v7?vvi2w4@!{YACCOBZ$z%%IoJ3M8%j$wyQ{rXSZoRSB>4yDaGUPxJFkMO+O4cfq ztt#i#q+YAE=NJR8H6HXQliP>`C<5pJ7Jvh=2Qb0_#SnQ^)sbVPa3B(((a_+)EkGy& zk^pHLRHu{<23Dmwwj*B^@WRXFj7L8mE z1wwrM%p=La?*72mnRN-4Z{0W_lg?`X>9bF~f2DEZzKbW0yjz{R`Csr(?)Cexzx_w^ zf}2<0lYdV>_`#n~UbPe7zx3RlK~7#?U3`H2_Qlz}&HNPkYY%<;BmJwZqWtrZZG8D^ z<tZ{l@3pC+L;a$F`<+%;V=i+5UTbZT`sPm#$o%`}dX1$6s7yKN=LwVi(s#BZhgh;4-;t1~+=CS54h%Pdy<*3fFnVpn=`sbeU$D z*{Gq5?AFB@U643Wi5l0;6&pt!QS+g&d^oXSMz1Vj*s{&JC}HM9r@v(g&-?Go`@r+O z@96eH_o4;e3jkozmVy4A&FX5#%8s^X{)+j05}*yXZ{4-2IkvR4w6?akwY3=xhW7UM zdGqFB7}n9zF@OGii_K;uNe9EwJkN@vSC*x4I2?~BGns6mFs%yB2g-y;8GbOmzRrLv|LdcJLaJ}CDs!1SQU{-%H%|t$;Um#jHFLRs=C^!72G%o zb_md*@K{R1@=;?cWv&--RCS=bfaVm03N`=^K)^7`Xbj=FLJ%rNO>o?l&sPeC9wn0~ zpT|kFjkY*AD0!K;tscs;_a;H^h%5r;UY;PnU%6y zsG!HRYO37G8)-1}VDW)92!w(;lNNV|@aAbr^F+(CT2l&Wg0q`NCmwLyqaG?HGC7&o z!eS{dSJL5HKHkvMs8TSRorK*(I(;+~;Q6R1CIW#>G@4H)wQROLJzcBS5a1FJag0nE znHzV3YsewA}Mx)bWaa(P?-62wx%yJQ-xh$B8#->sky`a_0 zGzcsv^Tv>1Rs8lukWNSVT*5b%4wdqWYN=4KKSDHs2S5f;0MYP}Yx%5u~f|zwu6B8SrqJU$le*_L$;MsbVe{*0glB zs-Y$q?gKK|Nh=mkwF+56(kZ3pP1ggtM!YzeEu&J6FoV;IxgAC?ZT0hH(8nqvzZwhW z(lM=&uIdF;FFRQlWdZ4cP}7S@lkO$(a4=D+I1}-gkc&me>*f7^F&LCcN7(6z(`1?< z^Q>ce3l=znl% z-;aYaAJyn_RcrD zYWL&Q!(T5y`n2o#7(Kn7>1yBR%3T@yY4XdxpPjYU?p*!r*azL`mWd1BXAY0E%U{2S zHNIPRXkB;cwsei~4==rSy?j2p^80^|$Rq79Fx-IcPSStRL_fK;=4qrUI&9fA*gw8; Gc;r6=s0lRy literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_left_bank_to_flat_diag_2.png b/resources/g2/track/rmc/gentle_up_left_bank_to_flat_diag_2.png new file mode 100644 index 0000000000000000000000000000000000000000..6f83fb04987c26053c4b4b7bc8c3e7ac6f57a329 GIT binary patch literal 1625 zcmXAoadcAm6~})GL4q-olqP7Yr7K$ONW$>7qQiwGkBA1Fm*knzjTqX!R_4g@oyZav zsj`N8kkUwOM79#kIio4{JPqxlQp+N(*hEDo$Cyy_)-r<&b=IH~O}DiEMo-WA-h0pe z=YIeA-jBVZURAjGiNyeb!p)nMP1(67TSz`5+oy-AX8~YGZ{nz6mo#6 z3$$9U!5}c1B{qlL?ZNy3T_|jf#vF;H4;8aC@&Z!LvuFfPLgY0fLsm5G)CV|e5Xj{lgo!N zY*eq0TP(M|UKkGZ5w1|dlVAe5PNX8m8Vf==$5vIUE^}rxFNpv4oJz zjcUxM%N{ca9DSqy03C^C5(=PGvy3>$q7yg`Vvkut+3=7@KT28RVNWU^$z*Or1ppcV zi~u+Rpa2*JAjtwSD-4BZBcyzgj$)pbLsfTJB71sf;N!?~X16 z6EL0@ae++0Qb{;kg}{I#X1&^JG5Go{A*wGHp;B}NW)d>B8U_KR0fgBsY+1XX#J8F~ z$)wEV{z=AY6xC{RgMl!cNkn3mN!$vALXogqGLDH;8X?pPphW~d2n;G1%tI&S-o|W{j#fiH~ngB5L3?`M2Uj2@VqzfOb+0P-A+#Am>^}((#a;Kk`5>w4r^KSND|CurG9nSti*@)>Y zdIftl|H#7E<6|AKCuf#9i}!t0cPp`N+iR5@kGWR0sF)WgN{KcC4(BocgY}N&P}>mAN_2jyg`P zeQ>hp?XnLylr+0}U))Xz2CucZ{-Njdb8}DZ=-+_6!=7!d+%xo+)L(d7T64ZO=R)Qw z=}hv#hP~=C^{*L-^uP{he}((K@Nn10s}sMhsd%LhE1~cex4s^uSJ=xc@{iWz8!Nc?=jZbETd?j;zscL(Ruvm-Df;BvZ<%|$>z;2| zeztc0hrjkzpQ}H(_>kK!E?xeaair@~%aUg8#lsC%@3+7AtLN@WFuQA|$)&Mh9{97U zY?t8Jx?Q`bLRWX#%R47f|B>;E!`J3YH_@bv`_jeIS8p^gT08Sn@9~$@R7FpDqqMcQ zro_~-vSzwxZK0{sBg*^q=D^NY?ryq-*m<%4jI#92&aPMyK?)}f9rp0 z%f5EYpN`?De|L3qn(DsW_U|uq6&wG#{qoZ4)%K(B4k(Yl?)uB>Ure(ns}G*+e7h{~ zUetEtVatUFH!0D-2-geif|q7Kgx{~4WE^H3>gaI2G4wfS&6+0G^{sac_#=@^&Du79 z+Y;y4x4O0y$GVFjMVRYL9xOyB7w{`xRPWz&{MR~RgJpiOAI+zaEJODnEx$jtaQWv| zQ_qc^8dmIixD2zuVpD$d-@Zd;44geTvf9R;XmlRkcAZV@3+NWlXHRPSM?A;RCJOJZc`N5X?Kk3Q zI=^opY<<``GWmNmB&Tmb16Ai$nY#Z~)|<4Cg!frbmKWDDyT3rQe1Ofh^~%ATm%IND DV}s-9 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_left_bank_to_flat_diag_3.png b/resources/g2/track/rmc/gentle_up_left_bank_to_flat_diag_3.png new file mode 100644 index 0000000000000000000000000000000000000000..ef077a16230ab697a5efed44da4e3ec2293d1d43 GIT binary patch literal 1469 zcmXAoe{hR;9LK+DT2H86LQ4>�heh@t7cZs%fN^whx}}vRkH^r3BeL)|9NWEwLbN zV|`S5q6@MKGL0^^+T~7KvBlKH1m!Y@As!}ahWV@ z(5OKGfUM%8!lkL1pQ`B$da6g4D4i=Y`OH(V2MoUXeqtof>>FF6683P6kKoEq% zU<@2Mkj>-qP*f<9U<4sotCcz(X*QefcBj|t3kJKR(L^$d3IQetxI9y-%+_kTdV|nn z726%S+pF>ibfK^{*5i^05QR9Cl(UTrE~Vx>b!fX;60j>mUNYKciAP<1iJ*)FR05#K z07W2f5(!wD5qEYn#DQ@kOse2Z3c?@{02}}nf{;w6k;9?*e3w|^{1~4+Lu*P(*1QmqsxFB0C;^<`pt3vEn zOZ++_Y*t6?x*m@?5wQ1#J+LRp%ogzl3RI-QBzl6ds?`p?-fOi6oX)V%7whg$BoYvC zNWixvsGBMAbBK^Y6O&kal&-kmpP;&v-uTN%AIuamnIbk@#^n(Lp;|1~$#IJ+bIF7R=60$5esehNiO0h*rNz+z)R2i$Y~00F`S@g1OeK__q~70W554roU?joM1|lvZ z6Ec+;S4*GWKMm}_)(1*dWJQaRXUgqC#exQ1383FR| z{<#u>G;ML=g7Tue)}70$4(GDA80d93Un_D}uN&KLy*KH>m&dM~YU_7ZR<%rYHU4|| z88Z*87}w$$CR(HXZxlGfSWGEszSnDk>3m1}y&+@YPiHh8=o*u@Gq32dm3p@+%TzAS z{}gzhpZe);`4j9n*8WX36+7?5_Uv4-m#@{CDoa70bbRBZUud)U6uruqPDNZFI(%35}O#ygb)b@YfkQ`qcJ~gO<;zxOjBQ)m7h0 zPwrSYylu{diM6FC_DtV_%nZ)OcPyNBzT!ydmaXao&6Rm`h8&vt>!#C7Y{-io++Bbo z7mCWVl#8ZCUk_c)>+h`o2ff{5ns%%~vUSe1`%R~t8+O%PY}{9>#A^4Y-E5U>#jUv; zbThIiKYx%hk`*eSJv7n6s9M=uv9PS9wzhu%t%ui4>9}Let4VBnQBsxj@zn*uKR$o& zhW<8-X==mc!6)jbJUSRJFkRbl{nGrYv2W(*o|vBRnmq5xDL<=iFl$}k+K!sePyiGj zx;tx0jkN!Zd{>5zHlp(AhGes%{LX~#ahXJa|6W!WZ4sX}r}EZ;5tn;UOD>N%>#Urz znfmTj@#F&yyDJawZD_qL&6>L|eDSk`6Ib3K>rekMZ_?5ZcK>7ZJG!!*{lrZ@O*1%r ssn-qg{@R@DZ~&`g^VwI!+m=4Xz6ykgMlVQfQW*rr(z3!I3qJb#e>I_ySpWb4 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_left_bank_to_flat_diag_4.png b/resources/g2/track/rmc/gentle_up_left_bank_to_flat_diag_4.png new file mode 100644 index 0000000000000000000000000000000000000000..8db321c79949b414b3a85779ed6d92711680b97c GIT binary patch literal 1689 zcmXAoe^k=<8pl8W3jDD{$Z6E*ih_;1s95{9@W$+GLPMqecKcein3qlFD4Bz(lDM z2}Plxt2G?GfoHa0cBjcc_X zY{V<10Vx}(QDDRgb|t}MAO-A{sE-E292k|tIU|H#CIA=!QUXCqB57$fBa3C@@p>_A zP%aN>wKG;L^mu3pg^5x*7@a3&36*TI7LgfwDhprd5SiS#%_nsQ<#aBMBV_V$wn)a6 zDEUe~rngG1E~U$_^#)D;uzhOQLqY)s2UIzrYXHkg;999dCrjc%m42~dN@a@}y|5Q! zQ)FD4TF5qtd3G7!t-}2}S-`9cIdl<^dDicMAuox-WwFHwSB~=4IBt;1ENZpWVDMP2 zewS-%bTkr)KtNLhmYIOqNqjdA_p#+ue0@k_3#;7`<7m_wo(s&vR5ppkrBa1-CeG%_ zcs!K|(@SH=G){wQ(C!R+{n05DNJRt{PSQ&0Mg`lVK^=PBZIKT;v;mJL9Pmb?GY|zp z41fv%BLEHn1_1~W0E`LaLyZbLY%mzWSU`yY6AD~H5X1n)0aQ|<0f9CQx)ji-hd~?o zEqE>v@qrj4C}dQvnr$))?KYX)t@HaG;jkaZyl8TOXi`xl6|>Q$E|xOLGe#tisM+6-u8}xlg3K|EhBTmsk^G zF5Z96!>E`zU(q#OziuQ&G4_woTT;%%@lTwubj%2@s-IuwxAQYIP<2_up0xJQb}mR} z52rmF*m3C8YS}<`XiNSN(dx(-Wj}G5`43mMwk^z>fBNhP>30{CKUQyM)-+YLRK4EW z)K^wZ&wt+RnE&)qW!15vURteXl5vI;zV_!pYh&f1g=&F`IPp>7_`OBv`?|D&6p-HhzAGp!?SrmtCVbPwzMIps&!9oFKFHdbG9Vln|1#r$%s~3|&|ux|%SEHn9gZERD2?}si+yC#k&2qa zy5V2;KJCgj4jddhmsmmWMXDdrFaA(nx3_F%R{1MChD%R1rqo`%MGQ5pVJyx~GZ~%? zy;pzfJi$?8|RoXzW{4vT6Rxjfy& zvbr)0w!ZmbYk&6UynkOV`6gkcZU3IQzQ0dq#mBJ{ zU(t1Q@ezV2$|TPvyV}-^F7$XWg=+ew+pzjOx;2u{Po1u|CcnN_gA5az`rdxB6gm0H z>#TrD@GrLRdD^=cMpAwW|NXBTPgZZcQ1M5Y^oK2v-&kNDD~%p^eAIGf)diljgPP?2 z+;aP^D=?R#;XFG+jF7)?IiPGPCD*)pd|Vs9Z>)bit-BBkFJh|#^m&KQ^z8XnN`3ga VxZ~@Z6*0a*;re1hPyRc#{|80h{>=aY literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_left_bank_to_gentle_up_diag_1_1.png b/resources/g2/track/rmc/gentle_up_left_bank_to_gentle_up_diag_1_1.png new file mode 100644 index 0000000000000000000000000000000000000000..6f6448b38c17451fa32d5a11aa3165ad8b21858e GIT binary patch literal 1036 zcmX9-acCQL6n<^mUb|X?QM!59Am_**5wm&K3?d$qK{f++7)pkrRQZ`P_}+Vb|GbZn z@4c<$T4L_VlScqxZe@A#K9)8&H@NPa`n{Gh>neojgOB90)dH%iOI>y zsi`Rp!=|UFXJ%%?u~>{G<1EVv0w+mnRaJCdH_dXj>eTBk-|r6wWE>b8cy2bG4rMaY zY%ZQJ&}NCRRK=RBHoZcpYq12DqGuH@tfiucgqKxvTW4J})vPLhBj59_VZWY;fJi`= z0Yktl3g#Aq?Mi6SjG$f|4McQkAXJY5@Bku)DZ!u?i5NI;(eyUYH)Of3X?x`|a@`0S ziZS6hAEiY+p%5vJlnh!evAWF_Yl77j9bb-8k$56T3j`-oX@ynte7-D}9mVmqx?l8q zmCn!&G7u6VEJHL0xPejSaH5K*T}JUzg^p_VjXK)qiI7A^vI(M)qAL{+ zc`GV9xZ=}BKWz`PwV~NObULWr$3s9xu|zzWW}+E^%*mXgWvrrBvx{Ec?)h~z=ujMo z96&xGG|D1Bl6!=Ro-1{`RLOhr~uiNSh^HF5cpaUMhyfDAI6L zB9X%&j~g97_1x_K!ykC}-&n z+{gdkf7=dy!I)EDE6WG>v@Zip-zPP|FMQ+}hS~ov`{jKjWzj5`}sp|el z;GKosgY^w!aYCNo`SyAL`o+|b2Zzn~=I{RV)Y)h6op1eqUA=L6>)@sJr$g1pul>Eg z`>FoKYyTZh5XsGA3KMIez{wr{x~!IrXlWL*s$l%t)Bnsv%T%V-n_T} l2|E3yJ8|*Ehf`dTw&{||2d#<>6h literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_left_bank_to_gentle_up_diag_1_2.png b/resources/g2/track/rmc/gentle_up_left_bank_to_gentle_up_diag_1_2.png new file mode 100644 index 0000000000000000000000000000000000000000..5c4ce0386503b18f696b8260b7888acd806b7c4b GIT binary patch literal 1223 zcmX9-acC2F6n<@*UenseEnNdfNJloVdd}G0Bx+z+y}GoV_DW9{YJ{uYFl-S{JYAG* z+-5d{OYs~Trd!a6(S68&!wxtrJbD2G*Y8*#NOQvB{j4oiuocw`#^u+aDDdH>y;K=ybS9sl)wF7@M%saL0?V{{JSLyd z>JQjMVP`bPCewU2Cl%Cishpq*%XoaW#`E&CXV>06+%c$z*FNLz|i1kF`r`{tL z(PWOX&$2|tZ9}{j$vBFUC_^EYsfXY3YTJXSKd^6jkb~aaH+R+f{(-)Y+xicmiFoz~ z*DTrmd+&w2vTJmGI5lvtLh$M3ZuB^>Ecc*7F(nIJEbr zzD8SUL%en8zqm9L8vkY9y>|T}{{qeg#^!?3Rdr@qJJ2yd8h=L}*mV8c+|M_@==h#%v@oB6i!i32ki4cFSo^_Sb9@q1IN d&g+E74f@-khu%EmtH%>yVDn(#x0^-}{SVY(6Se>V literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_left_bank_to_gentle_up_diag_2.png b/resources/g2/track/rmc/gentle_up_left_bank_to_gentle_up_diag_2.png new file mode 100644 index 0000000000000000000000000000000000000000..f14eef98ef414e96e732429a0c4e3a9548951326 GIT binary patch literal 1531 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 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_left_bank_to_left_bank_diag_1_2.png b/resources/g2/track/rmc/gentle_up_left_bank_to_left_bank_diag_1_2.png new file mode 100644 index 0000000000000000000000000000000000000000..da4b0088a8d56bc602fcda601279f07f2a55ab4a GIT binary patch literal 1296 zcmXAoeQXnT7{`Bm>+QXaiUrEJX@P=e)Z~~YHsKhzS;m>&#t|wMxWUDhq{;;=6jq?X zfd$Jvw1h^Rr89>q&_D^xC{nQ@4a```IS1Bo#xhE%!lcY18{vtHm$_LEtn^vaHqN;CP<*`-724G?5sQZnu)ou$au)3fF8{mn!-;#`Q@{lJhixatoSpyh7 zaNF;*}+0t6o>eKA^0GEv!v8Z`#9)>EOfbqt zC3iyhN!d_(BCf=NiUw*MKwUs5AjY8D9MM_hI44=WX@{5-5^#Xht5~DPY1Vr!rVvZS z9JIuYH=`EPih7(Sj_Ofii>5O>2@nBGjM$;oBxm*qc4F`07 z1PdvNn1)X3ZE3=jv5Hw|EGLZQBiR?J30S39DvfHj8P(Ey18XulNXo+$mboHc-%uzb zC!~BD2MmcgXr-G$1-m}r!owaq7O)M4-KlsWn@Z&Kk01_!1po&C0svtEh5*PQ02V|M z(B*((5y~k_2RID)a1b>EnF5dokW)i121N=+?J((qvIt&+Hv*CX77DSmYPVDG6U-rz zjm3CL3TLwtEO=>b0CQF0f|?RhCaU9PlaRB9^Um0WKlvh>hN+xR1&ko?~S=zZ+F>r8!!DN&napdKGV1K=~MezCLdH456*u~+S#*xos)k* zx!0ZD+I5|{vDW^L0TN=I7W^Eqd7(TMAv8cOc(6DaDz)@`aaKqK5ue*A`zH_VLkDhs(s!Qgb zKe+JnJJow`%`|I?k z&gPoT>1IK}S7H}4Q$C@ak>{PV=J+l>RZ@%4Kai!McZ_Nw>(VA0`$ z1A6}RcPD?jyIagnf66rVzfsFHO@4{iZu{Y3|DUK&aeMi(OLwk6alUu5Y{7V4pl$ua z(fx|kGwbKv@7eUEzh&jVhr5=2T>bBi#k2oevdCs#o#-hY&38>p{&lXi`_!|J3$@>0 z@Xa9a>K9g^JvB8u6H|AUEmGY6Y!A{~Kj+!yw3aW2{C^7c{7JlK>%l9V2Pf|ou!6SM L_Lg(YyAJ#hNT4@Z literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_left_bank_to_left_bank_diag_2.png b/resources/g2/track/rmc/gentle_up_left_bank_to_left_bank_diag_2.png new file mode 100644 index 0000000000000000000000000000000000000000..0a9412ea05327ddfa59c36e3ec196a707a14ae63 GIT binary patch literal 1585 zcmXAoaZnR?7RP@Hfkh)1EH@J+Na&?Dg|(NStBoZCTV3sfOIeNugGNnpIirSYph06V zp0TDwfY{~)+q8{$X(wu~O=+Ccx>I6}5EYJip@~>5l}=*{fU5va z2{oDmykLn9Bp0JjS>7+`Df|RKklwy?{ z17WbyHn-Nz8Mufg6zhv5z46(g2nPiW5bJ={4CD?(=@yfIxh9AkB5Hfw=t((3aDYY& zSf#{7qIR{)%Mt-26S1;Ur!nEPrh?Adhz}-0q5`EHRbxsWPM8?R&ay6($#1s@-R=m- z#V00GsT2ef1CTor%qt=S5+;o5;)E@s@gz-wlw%_8PtHeYp%4{`lwvU{l`*J-RjG^= zZPR9snf>;@5wAZMilpN>&{Bwz5m~fShaPpAai5I|xO5{vOEl<8MnmcJ48#FY17HNe z0e}yH5dabhfEj24nvKxsfw3qp2L=rE;eaDSj0TVa&>)6(40>qD>0#IgV;=C6@k&4u zKusfhR%|h$eGby=VFLkcB;rdZBQT>S(E-dX#2sSVBh_+pLrmpJX?$r@VAdI)=i)G$ zk{1A_6d@HN4KCF)m{~_TEP79$CE)9egnY?Z2&Usoih>+~F#uu43tL9+XCzj$E0IvT zoIhg>hY5{_(d${W*?=jmN`({0d;}Jx6caR>RLh`N3N3Qz!XSsk2$c!H@@e7SpMIdD zzLo*cPhZ;!06$*6er-cl_gjran-b3~y0>h_UmrpRzqiA`YU}seXNvP$zqm8HZ`bw0 z_Zo|zyjc9i-;OjUw-1i@fAcW>b@!vlqaXQgqAUH_fwNg{NIUQTao+v;nIHdd`cvm= z4Hz+lrE}ZKrPe=GNx=HWYm0_2ExO`dBiIar%Kov--De%0*Zw&4!!}XVy58S%_ofD$ z&yRKHe|@YOZ#lWN>%FyO;|JzicQ(Dwlq@{7lKs#Axjm1MZya!!QLh(CF_1Sb*f>!2 z$X!E;PQ3hxm;XH4@$12M-kn8vna;AJFTbr79(wIm&igal$2St(>6SX)+?f;JhsC|! zT|I{|B>!weV?09%0Jv z`p1n|ns$9zSDtlb(_7zEpru0c(|c{`)+L?1Q~QPJ`CFbj_pujdUV68FN!Gy+PApwf zQCZuF+&NVEVCq=u`8VJ1y#2!3eZTrkVvYOS8LGNB)pPNw5{(sows}|X-HLIN9{Ob& zkUrdSVaFT$>snq5%kfaj?hCJMDnE$y?7RNElZ|yte9n)5f8k>P%byQ*o&3e<3EeWm zjl&V4^xX2v&%f%mZ_aQTTSPJ zmD96{WCb@^UisbD@!)nkbv<8Z^& z2r@a>ba`w#`rSVdnL2j=xrivn`I4435BQfp)x=we`iI{+Rdn>DKd&){+xn(n3c&K1-BZK6s#*k{S%rNlP? literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_left_bank_to_left_bank_diag_3.png b/resources/g2/track/rmc/gentle_up_left_bank_to_left_bank_diag_3.png new file mode 100644 index 0000000000000000000000000000000000000000..675f2aaf051213229ac91da0c8d9e3659a0fb452 GIT binary patch literal 1495 zcmXAoZ){R$6vp2I<s1kn;=)!`60e3$;_4iWv_pqmb?8v*M8!&L<1n)svCK6_=R1ta@0^qK)Y zRTkuq%LM=w)Kt%}%goA5&E_yO{k!)5Cjc~o6F_#`vc){Up$^lr!gtO<$zG-X|+6~QE0YE z?GCxiO?3Ko!H_8ubtHzo3KUVx^C%VHsut3EiN}PUw<$s{b;M7_d+o`%cQh4N3V;p; zW*pEY(n%p92RGKqOGgASDTQerd__YT76U*4phFOf%e4vwv_#^S%g+-;ufY(rTAz75 zFccDCJTcCf5<#s?y7}l!CGoc8|^z zpaM~AIPQ!lI}@WJE)IAk;2VI@0wgpd^YE2^i8h2&QMDss@}}r8JWrrJy-Z+Mq7JpZ zQ?Ce`$f!*pbD4&Gwp7S98uh`UFqbEjplVEJz!heabm;YNv)S)(ggl;TAdu+mOQli} z2q++NAy_9@5fqRS)R0ivhqT_LIhdmR(*ESD*eJ|Hxm+2auM~<&RH~QDO)A2!%N(=# z9nRiPe>@ybCvc!sAtsV*)d^`M>bBrMI~jBvdVSVd$eoOZ)9Ggr2S5#g2>==Z9{{}o z3?Tq!AQaGIf<7;d#|R0aFyO>NKndamfFytvA38ATC1Ah^BX$_~g15%YfJy<>1Y*?l zt!C6oD?7dVV9*wg`jW{g%xDP=0JG%bG@tMabpZ(#m(wY&FKrHvx+1Rv2^dRBct9pZ zlv1u17aB>-Vo=dmqt|H-`kc|QFBuQRbV8<5!2p190Aa=pdq(aZ0-MD>G$eDo-eHPF z6k085H0muD3X|GoQWuW-6j(?l?IX~nS`2kUXq7-W1_L;Zsxsl1P0xG&_6Hj3YDrM} z=e>FW7+=-QuUb;wa>BLpKy!J~4pZ}#!8ei>)y*kO&L?9B)*7bbEY7uy4Vo3LFYfaU z5B4_>pJZ?09sRBJ;^}bf_Q8&IO(!>NuDO9G`{@sio93*g$g$0ut0Tz6?0@JvM>qGV z7xgnL1xrD9{+h{JSL4d=`n(UFFXaO@P1)3?s%1spP3Oi{PGg*D2n=&_a;y03W@_ti zca${p-S8=dxLs$FsS=E@kP)7WZ9Zd9Ry}wcTgmys_6e zrA;V*zMMB}7E#gICaC1C__xShE#fd*J7#a|nO;lJE)><3o0i@#)@kp2p({5a-DlJ)}>uN=7^{;IYSA@Wt9EBkw0}9h~su1>6)u-5g>5$9*8hoenr#&3w$RggSP_eTh=URbsNardqV zQ+u}GUbDAt;r5Z1y8QaTF2OXNcRIKD#VOkz2i^u5j0JBPZ`Pj@_#Zi>nRJ4h1-0|f I&RgC5Khs@-xBvhE literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_left_bank_to_left_bank_diag_4.png b/resources/g2/track/rmc/gentle_up_left_bank_to_left_bank_diag_4.png new file mode 100644 index 0000000000000000000000000000000000000000..8d363450e04676622651fa5065bb52fc447785de GIT binary patch literal 1660 zcmXAoad49N8OMKtBw*469c!^+l}t>jB`N8>Dwi?yCLsxlRNf?SA|_~wB@rWy)R0M6 zR8TrWS%Wz=w33rmw0I>3ZPv1rR-(*HH|+3&l`2(?)Zpe?5>eR+@i%(C`##Te&p*%i zkMHw2*dh`X6_gYJ0E(KM>f5rjGFv#AnC(A(Iamt-5wyI~-jH2$a&ia+0+C3}&CSir z%gfKtCy_{GGI`OWMKmUpi69(4AH{K@OeRsOlzP41YPGxF9=|^ni6oLqgac3>z=VYo z300wBs5KmeiD$K8PPf$SQw4&iXw1Q9lf=A2rI4l-Gt4rUU4=~O`97;S;8sSa4DpB~ zmGBGbK*|Pc6qs?6Q%UlfC}Afx8KA>B2PUO3ZHCa#1ONj-N+KyK6fK=@X0aSR-UNnC z$>m|K_JQ3FeLgxuWui0=#^6a=0wr6lMPz24%Es5bgcdLE2uM8f!d6wxrBC>*sh|tS{1hse#TFx6Im%b#xJf3nsnu?i$!E6* zJ)USNlt?5Xpeq5(Nlo6geA#o+u-jp?v z_C#Sg!J+~#gCyWkBq&3HBO1BTtW`KHTCd9z^t<8_KTJlsLLu}37y%GwvoK`sei2=- zvBhFsoAno|0s+26f-4jnz~JAzgReb_qAi`ue`aXb!olsde`Uu&frtaxZ+l7&z?Kn zE6+s#jQ(o2IAd73yJ=vgJa2;Z%)d&s|GCUR-uv;~uz4~{ekEpn?jW`EE!~PttW8AN zI5d2>e6H^O8?aor)+n6hr8JWtRv+A#>U{m`lZETrrPBY}!Eny4uYCO(YR!s3&4sfw zRia>XdlNjIc{p-Xzw+J@)!ZT7>(kX$!s(g)OEw)nee}rF zR&@KCGgWovy|?vyPnzgP*RI}`gaYHNrT9SI<0Tu@CFOtb4!Pso=6jZsvHZ&mbDP78 znU0NXufz&on0`8X_N7y8eUop0-&;A#k8(Rl7XP;TwYYBV{T==a;yXdgj+9ewPgxy1n_YF=94a*u1 zA5iqoqsH#$lXt0-JM08$sOI^OKcZJ&5_h$gwM1FGA!d8yPmcy)BtQFve1E)u^Wl3v zo6ay>dtc4}%gvc5w=eG{>$;Bp=i{~V<`eqqWpixvyGZG&hI4lg9k?DRZ_$0XqUV1v z~Zj`FvTzQqdZXeh6AgUj;P%IblCHChHZbyqEUmBs!23nxlWk=x33 zA3UqgJ3r2|l#MO(`Px2UmS!@ItA}*EMGWGN(dyhc);LWyzps!S4>f#ibRK=LOFsE# z?)}GQ-&PK;U%g-ZqH+1$h9dXu@i)6xjU1jL_bfS`zM$8Bc&&BK?(MC={-kSmRkR@1 zVrq|1yxqhTKbQ^;^o#2AI@tok=nqqU$9!k!7l?^#JAe1GE&k~12~7t1vqM_7jnVFi z;zjd&t;N?L-KwqV-4#QBlm7gXW%8Y>OAksai^MwPkxXje`iEE!?+Hr0dTRD6x62Qm k9O5@W{&46LG&E+2(bHvHEj7#KS%g4ygQ$MIu6zIg0ou**ZU6uP literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_right_bank_diag_1.png b/resources/g2/track/rmc/gentle_up_right_bank_diag_1.png new file mode 100644 index 0000000000000000000000000000000000000000..aa2d3cde45f2bd8ad8dbc0596a57e4b4bf3696e0 GIT binary patch literal 1427 zcmX9-aZD3;6#lgZ4y4*BnN^xtSm)}jtg_P;*2#gz6|8c|Valvp=0)nP?q<4Kx5|oC zsar{EY_f{Qom-=rbW)K>#Y$>cl}UlBWY*ZtB3-x%YG>+(6T@#cCf|E6@1OT2-}k+5 ztE-f=XXVZU0L-qeD6dJ)(pQzqN%a%H1CIdUfa-O%Yf>wV#bUGB91bTfEiFAgJtHFn zL6FSM%&e>|zDOiOQK>?K5rm2)H3kD^u~?i=+UxZNgCo&sBAG;`0Fwh;m95d_==DOQ zNouvpoi4n?tMvyAp|C9$cPk`_TAod*_-3`xPKs#*+HFw;oa&I5iuPNXsCz0AR0@Dr z0*n~26G#Vz1Z=!WM@}*%fQ%F-wQ$-FVNe7B4uBRxC?3x&5ZJ|Hw_M(hRuQm*PUXR;;8XYBNgOnU2_0fQNw`0`PS}XaZt8BBS|AuUHensIb}=Gq@A>Ane8^IiyTrR7z}W zc?YTR8;G!lj5rN(k0lXsPK7-%9^~c7#1b_s(_soDLD)#rWi)ziwg63seZJVpNFtGd zKtKVp6G1z83cr8|NpvxVHLh_pMt{OSlJqjuktvuh;qhdAzEUV6BvMi?H>hx{Hg(M8 zwK@7bywPAd8N+~9g%}8)Su3>bB`y=@u@ZiluHR#h1YArcm`qMW3;;C%1_0~;cmU`J zAdUc-0K% z@w*KGu*)jT%WCTmUHHE2=DiDgx&O13+^;hON(qIw`_Td7R)T0lYhBys`+W}vy(%u zV>I>Yu|va6AHB@zGGNaavG#KF-jl=0aNqD+WFw8hST>7hTim!wfEjB*x8VKF66l@ ztFlcP{2P_N-E%$F*B&g$5m%LjJVn#(Ku}Cp7gc}xv$x7cSdO?{RBq(Zo7&Vv@`nfaf;p})}BRT814 zi?7%39}evmH?ZcFtQ8ez#JhV$g=tKZ5tn~gSVUX5afg{7FCs79MXWlyZM1QGX?^2( oO7YDLhIKv73-_=G59iN-kJB#=#fjG4sbqo5HC5%EtLvNp2dlq+WB>pF literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_right_bank_diag_2.png b/resources/g2/track/rmc/gentle_up_right_bank_diag_2.png new file mode 100644 index 0000000000000000000000000000000000000000..773a521225785b92e27328cb4a005f5c5c313a54 GIT binary patch literal 1455 zcmXAoe{hR;9LK-?5l?^6jE;=3a2cTwOSi`^wH%N2X%`hd)u$DjBduo@w;U;9*)7_b zbfUr@)>f+7n%iX+le73S4Pvs$P3J;0!cxLzCkTqr*m70+U7Wku=kvMGKcDv>@As#< ze2HXK&V(EQz^JkXB^9Yzm?|_YBh|An4Lt@R1C%eSEKRLxX=&-{=@}UrnVFd^7Hhc+4`tQyuOx#=^E_+$Z4z z1q!q{U?{|{Mm#2V$ey3@b74#f6AC!QKgzG11?u27>vi` z5OCE%U`8-In{aa}KdOun#;DvD)4JnKFyV|1g_1BAWwS*bj)cdjP$4ZAYow%6kvgVx znp%47&af|#h~PjWMKly!ui!B%)S|;3M#^nb_Biw*k0loJB@+D*2S5gZ1^@;C2LL?) zL=gZ}kOb6epu+~kAyNR;7-+$PO9H|qfE0jg4m4rVMnabg`i(Gb1Fwx20Vx4wB%-1@ zdM(<*NbEM+?KT7gj#w-JQ(9alz;wAd!y#=vg-f6gistdr`pUABPbwEQx3x(-ZWoShY5?z9h9WzjGLSVU`;8m>ZdWaAZQWl=`o?pr2g`>yY;_l! z-g$S(da*mF|G^^^qEc<1En zPjwF}KAM~JJ+Y$x&xQ8g_#_m)QGoq4u6uoQs9{6SxXG9IG_Bi}(a-^ngKPJ7jAXEi z$dkrJ@<`x-CDiWSyL;(NEInwt$9$Hzglc%UJvyPWHk4RrjoxM-yY<`R0L{T4weKWZ c4UsO-@(01q_ir0}Q>g=GrAtbFDX!V}KZv8482|tP literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_right_bank_diag_3.png b/resources/g2/track/rmc/gentle_up_right_bank_diag_3.png new file mode 100644 index 0000000000000000000000000000000000000000..7ca22435eaa24a70f7894d7826357d559af4666e GIT binary patch literal 1317 zcmXAoeQXnT7{`BIx82y7ofc?VN6IWvppgbobIgO?*ll)8vA67ynl#vDHFQ|b1#Y2? zO1ja-0#!RH+Qg1@Qc33;Y;?$FG}whIV>Eb5#R3;CQla960)>o?m!Bmh-{N0U5Z=N*m1wahiHf(Gzj3SY!sHjLR78e&6mz0#0 zmX;z2QdU+rXU-g%QmI5y4M`F-tuvdAEXz2ZPMMkjL^6dtoGz@np0GUhWRB8)KM$_l~hTwE&$ zCN;1Tz(XS;28p>PsgN|Eki)D7=1uUS2g0}#015yTf-n+^LoWBIR6!gcrKkyuCFO8T z1p+V@lcQ24A=6L_+@#VnYJ&qcdvMlII>S0|lny3LoM2I4a*bAr(`ua=GcqLOqFez} zfMYn`5f{9CHk6)@NeCdNfy@FFcA)YgSU{$YsEjd!;SKII8_ap)aFkL@&6wP#Rl5y% z$V^6Ans=I0J~k6}=3>5SJ`6K)i4;?*4Jc+INE=PN&1S#N7IC{{fdJ2O>0~mO%RwM# zfXauUAqg3k(+RaDO}aA1VAdARd6M}^_F-xoR;VQsOeWJRl(br7#&K3hxlDy+_K4d% z5sCl+tZKiV2)pR0-!c()q+`2+04x9=0Kx!F0FXfd zEQlhZorU2b6jGE5Feva6fYSnj0+0rfkwG^KgB0YfFyVqi5IhBs0UZep6k;{Y95%Jr zqYVYk(WsN>!`Unk3tn;yK-vhT?6#?PIL=azP0Lsy^JUa9V`94)%Jys!R^-jTMkos)?T)O~#QjLvxMr+D?1 z+VQ~g+sFDEN3eQv)sc;N>(AQ`e1z;R-S9{Am8GAxhx_iGA}{}U;L7)9eRwC{6UjYy zX|Q2wm8J2WVef+P>i+t;s&jSA*6M9lU+g<`y&pZXNuG$@SknKMqVLyr-A9+duiCz# zcF7Nm{+zd~sO9n0>%-C$j&HdY7w#Y1@>pNfclpr@ZSu_QnyHS;fm_9=Z<==d$2Ps! zQrYH+T;y9tN3uP8-&$7mXz;eI~d42Z5$&7ODDslZ`$-!>@;T^khRWI98dPbQXQ}ld2I9PPG>=0sDIpCd&(J^-W k!rPz97k!}Q`sU9djNG$^ZZW literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_right_bank_diag_3_1.png b/resources/g2/track/rmc/gentle_up_right_bank_diag_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..3d070a87bf6fa99314095b268caaebf7dcbf9fa0 GIT binary patch literal 901 zcmX9-F^HsQ6n?w2yUy;gOu{S?B8P-2EF>7P@Q8(*b1!DkuwKps3n2!CvzWpI15;QC zu^55`iwT)R!W2TLkYtJ_7_hLg7{ZW9GQ}iVOfe84R}5i_Ew=dMaqzwO@fGiV#rNLV zPj962vvgHq~plnvVZ?|1&@fo__lLaU%~74h|0wTdmg7(b4ho@yW>v zhGFe?`}Fh_@AvyG%ZQ?&sIUw&eV8mq?JW-1S9o%m6lCTw?%uTjHbpkwbRlos&QG*Hg|bffSwAt z1*8j9h;dU~np1i%*rgV1oOl-&=vJY7CPxetVJFSNnN= zzrI5qy4&S&Tq64_&6qsz$jZoQmbvp_yqL|aqTFu;Fl5Y8yPiRY13GerWTa-1wMe{m z9@Xn&zkh`U01dza2mum+1;7>q)IbrD>!2h?)movzW??KqDnX?HQUTdG3Rn~?C>@~X z2vsq>4xR&91WmyPChiUCaVX7VGt2z4OzOHsjTd17>vn_?S7OpgDZApsou2H6+1+G$ zpKj24NA-XsF^TEw0y$7w*OEhT5Rbhq8J9&;R|VQ{I9Wz1pb8LbvKTdXZ$S8NwB2&i zUYAFG+S=N> zx;n8~ERjg+>+2P2wHm{81c6hOnWk+l%Xq!sU@#nu#Z#$CK`53=m=16Qkmg34P40B6 zTyCAuZwQ9SNX(u{vKii=%X5TQY&A48W`)P93ecJ`i;Z}RWYC(4F+$o`5V-kb%BTdp z7F;+4C~<@lC;ifFL|)1$Q9*}Fc2o`^lu`qb0CusMkxD&EWk93h42BVsOgkJ|k7p(v zM#-cSldExsj#L@!8Y82%dN4X*U_*pAY93BdT*e+394ft1XH**~t(n%_7=rPUzOX$U zXX3mkB@FY0NNzqU#X(Mi!T~BbXaZt=SYeE5Y)PEqt^OR#6$2?WLTcr-UgPS zCK4>gd+BVD%}2e(WN@C3qI^m!*K4#^Oz*%67e)DLI^=T2{QhJ(%*W%o$;o1|h(O7J zCMd=tQX-+GGFnHD@a1h>!IdZmCQGqGIXjOUwNj~Gp)jh{lvYO@46K>-*(=N3G5>Hn z5))E#LKPOiirrHwz3xyxuMY*Eip^vQn~ichX}6of zbY8tKh+|O#OPY0)q_$vHBfAQDG$@3jIF5L8<@oh08Xr9Qf%keW6tquIy_4qqA!l-u=nfivRJz)NkyIk(-jU)DGCO4Uf~53>g^`@3qUw{$)G;_9h}Q$t-Vnom317N7idrhoBEW0JOS z2PGf#T^+w(lyC7vx_D>g;r+Io<^F3|ZZE!_vJAFt`sh^0q4EG%{^E1_uKRmm6Alp< zk1wAYobB5&7nxf%f7ZBtaI0!7J257b$l@pJMW$a-trLSH#SvFqOJjWjW<-ob;p>g-rt>O;u#1dH0Gxzssr>b0ckMFI2Wa<9B z<~!+bQSVf}PBgIS``<=u{%g8(T=a0wrRF1d4;*Xnf&ulGXIey~jdp(7#MNHdc)|Dj z#FB%n_u^}fZJWnU@4TSK+M6{u&&lro)qdz&_qb`|M)5}Nou(cb@7!6J9hz?XWaFP7 sbW@HsUsdhgpRI1*!+Fuwfj;AhqR0;4*pYRyV-=8K+F)6KzN2s7|3=3yQ~&?~ literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_right_bank_diag_4.png b/resources/g2/track/rmc/gentle_up_right_bank_diag_4.png new file mode 100644 index 0000000000000000000000000000000000000000..4e13cdc84fd0c52688ee4acc339c3d7b07fdbac0 GIT binary patch literal 1592 zcmX9-eRNXy8UFE=n~y0bWaXUU4qBFCO0pY6dYHxSrjm}tOLMziD>^n%X=NRr-k#wZ zX{g>rVy{X!+N3G1Xo+KyP3A~W+OZSj$YeDdYO&%%kGGLDXfV|tl7so!qWg`Wp7Xr# zbKZa6=a1)kjz8b3T~qqKQUJi3mgc6m0@oGBP|PcAZf>at03LW=x8vEu$>DIgTrQ8t zrROYMWQ%4C1{J(jPa4S&LL9LA5e9sld%D z1ErxDg7KMrVJe)UV{C6C8%Qrlg%}W#Kx_e02avlFl~1e<$qiAAO6Xl_n?L7{!C^un zGOHwZt-_^O2h5s?jZ8SrDUU4^bmpR-VnUHhuFxx07EEI&NtfB|wcA53SJdZA zgv04%GMCFiAfbTVgD3++O+-S*6_&Jy$r$`udnD&h=0n-l)G{nn2!$%KSSyv03e>Dt z+i-$06`naluHNxLh>a!kX$+Wf#6}8flhkchcpX@fAtPSPc#uv-z1dVOpT7q&0Q3OZ z0B{2k1YjJ13<6*Qga$fnFzAPDijV_J33@RQ)&iCQkOYttLzfcz2^hA*I0IQf_{Mk@ zz%@WmAXc-Owkvww+JN62i8vF9U^bh81ucmMC>>>(TTJ++rm&o1)$W`jn72okJ@M6W z8m4k`5l~4HEh;o%QY)!+Sa3IO_4m?|U~eK8%(5|<88k^DEr(tu3}Y~X7s9WqEnE1e z0|(n$Nzgd^`TjyZW?Pz`*|F>B9naO@c}`3r>~qz3LM9-io1Thta)rk%bqwlh*8uFjRy6$+C2x@BJ;_8jrPf3Pf5tq_JMcE zwTJsECbq~okKKLn&+Nae1f}S}sr^8TTQt^d=WU#RW7G!-3fZf<<|2JhzNSDy>}9S2G}GP|#DA2}#| zFmz^(@W@A}AG@*EJ*|t}+VuWU-&*gK5f{&-_k8YyVmv@+isqIt!3|111D$7-w@CFMk^o2 z@b-?%YrOFdiWkXG-+Xt(9)>`KqfddDZ5%1tBbIi}CUtvJ+q z|39y8KF>L|Fn8nWt?+QO`rS(npB@xm;~UYJ zwqKm8KHQ3KCX!pzoLgTG8BaXj!C%r@BdG%?XVb5L*o&~Ab>C#aV$vV3Uq5-hXdNxo zrPr)CWQyOrG-pI~!|y4;wn^H=WmkM%e~ZUgYmAXyw^sI`f}YDyc45;G1{b?_*1TGX PKWKTjwdt?h_8j>?{A*utXvw&9{i9v1C5 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 PK3KoDwz_-G?+^bUTkhHs literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_right_bank_to_flat_diag_3_1.png b/resources/g2/track/rmc/gentle_up_right_bank_to_flat_diag_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..a5274620b615e0a980e6c9cdb47aebf5b6630580 GIT binary patch literal 1020 zcmX9-Z)oFm7=GLRNw+b3QjVelGp-+k#502kIWJ01vysi{GL}inssa(+NCPpY&xNr<95{{`Ab5f*Yk^4|b)d@p?<~VrX_vQKWJ`X(a zdwG3LoS%Jg769f~SC%%Sc`m9GiHWGc@%UvNU;@^k-CT}nEEbE$;}a7TlarHEQ&ZE^ z(-?*&5{a3anRF(TVHjEvctw#kEoT^dsZ^@f8m*S+`v+k-8jl$ocn)M~E|*Ic3PjPQ z%N4FxmzyoM-7&gBr9W^43d?eHx|FuEgsqVcgV`$yom#fr(!>4oFm#SazKDZLL6HYr z!J0bOsU&;N)VPbIA&tf=I<^t=GXOGxieY*(Y2mm{k`Bl1$?|?a-?OYcjRxv;a3+=E z)3i)*Dk8f6sCs>>oGn_(68k^Gvy)2g-YQxjL!1BXtFl_dZ zI!PW<3Z(Num_XVX+enKoGS}htAY17h&dB!Bo=l}Q7B7laCCfE6p=~HZN$b^&fm<4N zYDa;K27WTdl2n#q^Sn@0l!~U+i^W!@(rGjT&+8u?j7B2_xDI3uW12~!jVoO$-xtb* zoHH!8NA|(EH9YPep*bpL%}&m3BS9?^?Z1ec1EI<2#54$O0GuHh>GT4=}(0MUVw#8pw4}*po@n8L0B$i4e+w z6hL|!RT$*R$Sa_38HEnq4W0!_fUJxaw6s;Es~@N8fG&{C6Gm;I)gkO z1yXeU?CH6~yFc*q#+m}>e*5u4M6RzcJ+*n}%15`P`~1bkc?Z(XK z7cPExop@w>_x0^-TPus#=E>N*pDgC!kFzr;o{N9GvHTDB=8co9-+%Gbd&vtwzYPoX zshP^hmlo;P{m$vU{P4|%D`$Ub&R*L3F!uW^Uy^kvVb;%Y!&kSDH_KPgXs=yldy!M{pHpNUOaK?@N?_rL(jZ(`>hwB`1+;D PHLNbLEq(g*)~o*mWxTKr literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_right_bank_to_flat_diag_3_2.png b/resources/g2/track/rmc/gentle_up_right_bank_to_flat_diag_3_2.png new file mode 100644 index 0000000000000000000000000000000000000000..af1e1ee8d7d039d862dff7b7d86f04c908507240 GIT binary patch literal 1229 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 b{KPLfcq+fD?xUJ)O2M**=6c`KO>h4P<|v|e literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_right_bank_to_gentle_up_diag_3_1.png b/resources/g2/track/rmc/gentle_up_right_bank_to_gentle_up_diag_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..29875d27cb75834d5b8798a9ba0ff5becdd0cc1d GIT binary patch literal 1030 zcmX9-afsV=6n=NTUhb}&)fEY6|Hx+145Q?a97KqidAU)~=;c^WdeA>|Ti^;Sl0gO) zDrT&(PJ2g`GRmmfNrZxd)p3I;)diQ+`=dydo75SwgMvi|)={M3DL*p?-+PbmpZ9(6 zz4zYgO8W5JQ*!`tc=^?(Q{g-j7CsXR`_@ZeS^yDPeSPg@NGB#HCMPE&k;v54R5Ti$ zo}R`qY-VO=c6Js|rBVz-3j#08qN-+fT`QGJwOXUqay)N82!^8(Lj%u&B*wDYL_SXx zigdZc)#_5SrLRve<#JuaxZh|X*G)2s z6pzyq!6{@~qcR4gnw(x2O14;S%T`Bmf*ipn>2!*dDN$v!nxK`Xazkl2n&TT@Q1u7R z-q?-vkdOh-0Z|0f#MlO&Zjo7+*ZfSSr&~kQLpu_cP}yW5O;s{nQx)2}?3dJTP4C;K zp<5gKHtKuv1WQsGhRyLpL6$43S}zn@m5SSF_>R-t-yaT#2$C9*HH>M-g?3WzP`RE^ z?q{t*p*=MBN3Fp@cZ_0GJkH{Hnn=kMt#X_$N@XQnR%}(Od(Bqh`J)~WiiqiQ+)xNJ zPt}XOU6$MR+@5W8-TI*GjYjto50C-S0ZafJU=N^=0SX}rsHh{`LP1v|L1UoGgOi3p z0we>{a8zNCB_St|I%O1C@Gy85L;*4qmRE73Kvm6j(^A{*lJDDtfsaD1WDb~Oj5l$~ zA{2+z0?r&}?NOmUu5}Ka9_kLs1h52_rsG+j$jeMICz?jysv2#(>U;Je@X)BoiXw6V z1%ObPMLCpvgk-5$@Auhy?Gf}&N62R7d|oXUHHI#+bd6_hfpJB8U!n$?6jBIekf_ce zhey5`9zXj+?7_nyIDcwIh7-U2ycv?4%S*4Uy}14Loi`qvJa#C$v2yKK^xFC^^>&2( z_vYs}p1d>9ZY|s>-uenZ{$1(EZH}6F3nG;x=L*lP#{Pik-pqZvb!PSB=;GG*#}}?1 zz4W-uZhrRH-R%eZmEhR!^Ox41P_y6ua{6L*T>D`6GHuFO_3h9m#g1g=uZED aF2~=0`X^;f{kIYNhvkziOV<}SF8&X07`WL0 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_right_bank_to_gentle_up_diag_3_2.png b/resources/g2/track/rmc/gentle_up_right_bank_to_gentle_up_diag_3_2.png new file mode 100644 index 0000000000000000000000000000000000000000..3b743076423976a5dba7043d19fb1b74138fca7f GIT binary patch literal 1243 zcmXAoe{2(F7{}jj-EQ3i1*#NROfdxu9;E6S4^ooryv+`8>;?yxP?MqubV)G>9HfCp zJ1C@X#T`(!N`-<&3!YfwjAv+OXD&FTi#MH6@WhUktWlJzB`G-NwS?sR{QBql{_%O9 zzV0r^w5FCO0Kl{r9c`NFZneSLjH zLj!^!jg5_3t=3>Rn=#Bvk_5w0EbHQVE*K0(qw!QqlI3w#EtSid6%aN+Q_U`y-s?5_ z{MJy|7LC!#lslc_vr0H$NRTMvv^8^-A>cF#tR>E4gF!MAb!JnXIua_XiAqU!7=arF zJ^}~~lH`y~SeHxc%UL5VT4C7@rvwOPGXOLIZUo_Ux`5FrSS$&fZIGr%Jf2)2a5El< znT!$Bn+b!JHrd=32ZuTX7%SNL7#S3)NSaAx-ID4t;YO>&Y-3Q0#a$f9h3HV+9hW#s z3CL}2 z6Hv|37QkU3LIBADR2o1AK+XWe7);Pm^1^HgstIr(JPs%lIBCSo8Uj8vA~=!>Hk}SC zidZZvu0LR z6G<#XS;uL#=rlvO2?i`MhCzvd3ROLRd`a_P_kUo=>MjP@C$DU-_I)ebTGw>+9sP0D zxxMpdG;}}Pd;Om8t%1w4Z#Dfu&-wG$>Bnb3mRP3SbR-#nxwD7dbmq&K)*GK*9_%?9 zE8ca0nT7wT>%WbD_a4^U7QEc>&HTc-j)AiH3+oO{clQV8Cp8ckCXzqbM zCrZ{`Tg9NAE=M(rSt6{|IzN`?bklc$)j`b zI(F6GsM&dN0=<56)y1Vt#!qtddh4IR5L>)+w3Y5f?r8GVI<%#yVd<6qLz?*W*R&J2 zDtz}Z3ywU~Zr?WRwN?77`}*G*BX;+^t66T>p1aq&);=)n&a1cAw*9@V<7WNqqbClW zU3v2GHr>SwGfW@7vbMDHXU7Y{+xPa|U`HRYri^_9q#|P?$qzmg~!0^(^W!XMSEA< Jr_XKJ`#&_bB5eQw literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_right_bank_to_gentle_up_diag_4.png b/resources/g2/track/rmc/gentle_up_right_bank_to_gentle_up_diag_4.png new file mode 100644 index 0000000000000000000000000000000000000000..4a4da9c94d957b59093626aaffab1e20e5efcf4f GIT binary patch literal 1799 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 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_right_bank_to_right_bank_diag_3_2.png b/resources/g2/track/rmc/gentle_up_right_bank_to_right_bank_diag_3_2.png new file mode 100644 index 0000000000000000000000000000000000000000..1e453f873cc593737eb75a5c34a21a3699210dc7 GIT binary patch literal 1305 zcmX9;e{2(V6#ur})@^kb8FI2lJ1tO2VI>@TLe<-L+se|pLvGMX!4fV|NHrHcq>Kh` ztZWUIaX`%~D_Y^e{?Wt|H>k0YPAfK{hFct1Sy!01^PZQpu>*oJPaz^@7PXLXs(mBg1ib zLLrz)XwX_6ju=U;$*wmu1}lfsyon7Go`}UCr-ZaUCONd2#%R`=D1(K@Yz)D8NpHv= ziZL;fOGMCkaxuk{6sODpUO-^l|ik>5X7w2Q3fMzGO-rYYcCCRM}7WO zI4UK@VipH>i;|_(oL$R14M8^^@lx@iBNgE?iC{jHEEexT8~`f-EC4(J5dcyETnSn$CNCC(o(1${SgfS;fd!ZzNC&pvILI5kNbkYdtGWdCO zSfJx^k0?g+c@dVhG!B5eRXC53g4Q0>Gm?of*dj$&d@_)pie+J@psxj(R%te>ZMfD+ zp>BtT=bVC{i%0xoGLn~)u$aXx78nCi0uYwG@RsDBLgR47?Cm z1~qyxV*p1Z1e&lICrCrys)Kedf+jMeG8|RuY0|I&wZ}-e8=6+8PgA)`FNMSt!2~Ahi{L*H9c{?0b%%uQu)Z zZsz9Uy|;Fp+q_s%tV(f2XaNteZ<&)n#T^|#)_wG#Y`nNya*)q1 zo~yWb)qB`{c;EQURr`Nx|8TXY>NB$Gkfwy^qQc7LPSvf_2+B9C&Ud-v8RoHw~9L`HhC2MIpIgj(1P( V9&R&Vdh+r>duwOQ*Ujtt{s&mYH@5%) literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_right_bank_to_right_bank_diag_4.png b/resources/g2/track/rmc/gentle_up_right_bank_to_right_bank_diag_4.png new file mode 100644 index 0000000000000000000000000000000000000000..34be064da40b1122acaa521dfb444464b956e170 GIT binary patch literal 1637 zcmXAoadcAm6~}*sgqN6RWMV=MPE?#kpOKv4iuFw&mPC@FA@QYSh9ua%wwQw%t*@1} z%ma}sMXK1tCMs>o32E8FN!XfnWRjIcTGJh7o->W8v_(T2T4TkGYI4-&H+p)`_uhN% zKll5`_kL^*_41-6WlI16MRm2+d$O}KTSPuH+wTs)vI77nXxPAt7Zen51p4m8nxga;i^b*g1OmZGWFj6F6nZG}fJGK|siFaWe9W4P zd*{;;IS*)1V8DTcKzw>6Y-h)OoJ^DlQzDqrz()=UBLV=F0B8_I&t{u=Jcm%|#jpXT za!jj@nM|`D4-AKSVvYdkij;gzBb4h=l}SuGFv=~n_!Z6&;f-p7aV=lM6UhY_fhtIe zS})UEl~#|&6VwN3QzY)BQ@+G}n2iGt0k~SgHv*vpk$AZBfKVOA^|Z>KpuA~E1P&-s z4k_UoMX*g8zC(w)jkw=RgxuOOzbO`Wr(%&zW)|WAr~se< zZ~)*3U<`mH0$^5388lMR?}hQ0QV8^7;KV^t4&q7x2>|t6Xct4T5(afJYK3tx_#t=+ zP{@EviRehK$$&Z?a-WwBg)B7fPo-#>_2OxP*jR`=xJoZy6BO#>m?N$BXAGfvSM*UZ z0b^+)2T1scT*Ox6d>tV+Y84KX&g(RV{7yRJPsJlJlaMGBFbH5AK$y+Knzj2;Jd4qt zOiJ9YA4Nr@GPRn}=}4ndFBVxOA{Q?9%fw-YXhMmmR062sLz57?#W09NT9JKzNk!q@ z4-CArr=9@PnQJd*!Qj+Y?`W#EeeF{Gy}Ppb*Z^?$4#ASqygM%^-zZu8>cgDdJ?LNF zh}0B6dB3Z$`n5mIG~S1e?|LS$!j7?l{Nl`zL?ht|zny z*0o{giKTZ>#$H!#u32n$ zFVptfYBovB(PdK6h4lw+pIeCb&2GsZYB@jtSy!ayXBt~W+mWF<^B;#U>sB&Tw@S7* ze)0U;p0}v2f4)0k;`?RojWv~?p6>Q7?2VF{ZS&*Z7aY?1mP^h!tNT*x!zb3-SkF!j zH(P0Q`Q2s3&mJCD*os$`HQ{%1mh9?%fA(*sA5Oj3JAiaHef7L(DCeG6;~!y;ZU|N> zf+tE>w)h9Xx^V0RtYhQ=V+VWXo6qcStg8C5wWa^p7gkLBdv`Jx22U6d7LkJ-^O52T z{o|kfv~swfvRT(i&aL~jy}~lXd+zX*_rT77+$^ix{Vv@)b*l8d#KwwMZnuJshsd6z zzc2jnxOH;xaegAxQ2p(-n`Kwq66QZ$dDG@@Az3XrCz7| zZ$s{CMzV5odGg$f*M+m2Ur@g_Dhs%O`xJ*<{Oe5F9CGz4|76Ff9l-t3_vz**t&1-& zU08WhY%aSvmpZylTJc^2IX#CnhwHf^`eOMfu6kz8YYWh@xAeB?@~u@<=`C%gSyn(@ MO?`F$Gy9JGA3YA-ApigX literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_to_gentle_up_left_bank_diag_1_1.png b/resources/g2/track/rmc/gentle_up_to_gentle_up_left_bank_diag_1_1.png new file mode 100644 index 0000000000000000000000000000000000000000..e88c9b484f8fd0c6ad8c9c560bea70e3a1cb9a6c GIT binary patch literal 1040 zcmX9-VTjvw6n}TuyWFiC6$@9jgQ)$Gad8w4EY1koEq8QX*h9aP9+jw{j+ab{4p zNZ|UR%(`XT&Eoo@NWiKAi<~2B)#|FN5H!w1I}BK{di^k^YUU2D@;77fd++i4@_zjI zy?1JPDY0kQUAq8aPx8pZF@GNNYwz@g-?vA}Re%Xteq?3Qr(Rfgl-*F=PI2HGJHvJ&3K9u9 z7IYD-D_E-(>ej=a9YupU@+36U5o*T(1ON%clu$^EMsZ!)MkINePAi;J6pA&eW+|4VwcWBa zsP}eSAr`_SL^6QqfzUC!7D+USbc&LL%oeQ1u`tt(OiNorI@2bw=+8E@TLw(C@3`X4@6eL3-Iuc3XF_DbR45RWwQSz7N8>Mom-f-KF*JDBAF;xs{ z60T>-YMwQVVzZj*m|C}09dz5CcMY)sDF78f2QUFT0DTOQ4}n8@6`2Ndy8;0U1!Wej z1h@hq5s(r=B?=h=va-l7BG-VM!PCHVkP@)09MN)QSx?jrx!Ei@jyV`O$k&QyfXWA1 zJt7#mWD$zX=)<(><(fMcdt~)ccSwYR#<4^^lxFd)NaZuUu4Rp~)-=mb+Z?!U_kb_hVNjTC7 zRHcx`B8T^npWYw*XJhmjlq3x^dKKVGgFu(HP>0h?yZ@+Z+?#Zto|K!t=^ycd~ z_I)*d&#(WkzH_F(eDsz7f{#6aHgI&!Uc3I`@!)EIYVC&~cfa~#z7chceEGr86N_3^!Lb$);5I0SqrkX&3^c>D0`#{c*n$hQCh literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_to_gentle_up_left_bank_diag_1_2.png b/resources/g2/track/rmc/gentle_up_to_gentle_up_left_bank_diag_1_2.png new file mode 100644 index 0000000000000000000000000000000000000000..1ecd845b829ff64c994daa5da0a0038f453e66f4 GIT binary patch literal 1247 zcmX9-e{2(F82;M*xc!1AD_G^gV(O^l!~<{fDvjL64ZG2?TXw_}i*$HOm(+QI3N>l; zfTEQYxj+dOI&4g1n%F?6#GFvDlQS-+!~+&A;lM7`P=QGy4K{AVX9>ykzR&ai^FDt( z@4I)P-!`XdK@$LAPH#{5V3j+owXC70+S{)m8wQ{T4D_vEQyn!LjaI9zsi~>0t*xu8 ztFNy|5Tv1@p|P>iU^1Bq0;g$;W$hg2^m_R~AP|YfQYlH6CsnmnE)zJQtbnmMJDqxu z$LRCp!H_i)WfCb@I^)eMp?o1uV~E4r%-aou!zgm*n3p&ipfeFiHpQzG!J-ZoBFg-`2J{uNtSQ8wb z_OeQV%SF6}WT2FZRFotv$T~e~#vBCcrf46_hBz+j^QA(eOf05IQhsu>R4PG$^1vKH zh=h(#qihy)=jmX<8870>6LeLV`BS0rL?Wfi zN;yvfmmTr4I>BWWJy_IFC4+1_>YhjnxlFW}lgs5hkOIH~fENG}fFuAD02B}at6*s8 z_rhcxsyW6CcmjkeAlZP*0LTK!8(@flaRy2rm<>WT4ju&6T*<5lq!F>;-3}!HRRCc%i(u963DAH)S}2gw$P;+8S=#AjJs!^Q=LtMO z;t`5S(nQ9NPcm51VS+9r6wEM6K#78iy?XrQvgZ4bf8c|`ein4zyt1XLKkx1CTHmwx z>q8@RcQ0@0Jhk()O6I`eKJq|s`d?*7L(8J;L+koLWmEcY{F}8m{@$or_gm}5%~zX7 z)Y%o+)^5vg?djBy9J9*rU%mQFF?d#sJ}+4o|L(8la*03tOoNl}e$}(*u5;zqZEWW0 z!_vZC^U%K0yye>i?sLyA8|$0B)HeOs!IzIdY7<!=*fP?%WoAdAokIg{Gd~RddVSTix8K znA_FkT!@Un>KwbUPsqG=`tHH@hT#P_Qy*=q8y(dJ|9j^~*B39@7NZ@ni|la6uIZZ9 z!gojZZ@gIFIse|~nH$2XM9a*o;qI|s$E_u=46JzVJ>7+We)|5C{n&>~j?ObQoY#QM zz4L!wx?$*^c6;J7wQi&Q=+jeDW7qNV*3&~Po6)iEw~wq`-ZW|+7{afdS^mrR`uKS3 zefi)EPQ&!hhx7V0XHHCkY0P36-!!20cQsDewcUHs(o|LF?`t&p=*;n_j_;|a1bWx> Kcb`~2wEKVTC>$FA literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_to_gentle_up_left_bank_diag_2.png b/resources/g2/track/rmc/gentle_up_to_gentle_up_left_bank_diag_2.png new file mode 100644 index 0000000000000000000000000000000000000000..8a67ab0ea8dd2c85c17379add56d094726e3bb97 GIT binary patch literal 1495 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 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_to_gentle_up_left_bank_diag_4.png b/resources/g2/track/rmc/gentle_up_to_gentle_up_left_bank_diag_4.png new file mode 100644 index 0000000000000000000000000000000000000000..28dae05b12fa7e83af7562c8be93991c961015c5 GIT binary patch literal 1771 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 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_to_gentle_up_right_bank_diag_2.png b/resources/g2/track/rmc/gentle_up_to_gentle_up_right_bank_diag_2.png new file mode 100644 index 0000000000000000000000000000000000000000..9a717f4e5b7a850b23c7a0be5860ede100558675 GIT binary patch literal 1470 zcmXAoe{hR;9LK-?`Siy$PL6akO^G%~5bZO2RP3Hwkn-T^`t%lU5InUYES=0UG8ZRZ zgRFayT~o~}CA$T2iyz&^mLnqwLSurkjBM&ebp$D4%6D<@UZ2nBKL32)f4o2ME!Fd+ zgYt&w0RRTgs+wMtn&qh~$;n7{tbBGS02!cqPVJ1;nwFN9o}QkOk&&61nU$55ot=#! zNKQ^pZf-7z&*!74NFu>0ilAw^Mx!J&c<#PLcp-3d2NT4EsivdaG%jIm9il^0y zj3%+gN;+H$k5>~2nxZ{+i4c*A^VI}LFXJ(^z@|Zu7$jbcEZ|Z{{KiJlI$@8G#l{3e8Hy=!iI$>FG;P&tT_%&)W(&IA(NHKJk3+y! z1AzrW9W055O9h0=sKnSKx5u=eI1@^^VlTrfVP7KA2XO#o0B8VU0B{1}2cQQ5 zFa;@rIt_H%VI)infEop69Jr+*LIOwusOCTu3hg9xt6;zgBX;n{cnlB{AR`eK&CzRx zW=86;(;kl@7<9&BL739wDgmm?#~BW3=PBF*bwtd><<5lGle7e0x}z{07q9`wL!=^> z9OtPhRHq~uy~=LZdz|K=&l!vOU?PeU1at!!0T8CVFs9_*!ZqluJw2G!@)k`XAd$-{ zm5SEs)TqdSi7Ytkl%QTh6e5K&86PTmP%nU16uNO3B;I6UeE#D%8Tg`R9tA4zUjGz; z^i{K_Pph5Wab6NMr(EBf!w8HkBtC`uYvQ+gK&ajD@ev-Ir7KF!x>e>b=hNIm0jR;ixX4^r6=BIlA+c zVD}=va-!u*&ZrJY2QTSy8g%mT*eBx9Q6DU0vCV+z0ITQBQ8RH9Y=&Q$uCB z-!SsMv2^E_?>!TAj`$zw>=2ZWRraw7obMulrTz|ocZIyYa zE1EB%4HBng zznQv!$(D}vlYg9-6yDp|dB1xR##&nTXk6OslaGtOep)zY-5Ic*9HtqYg@%5ZIkafR zgd4>}wty-28zR9i@K__BY0MaSG_OwkFT=(#E}i z-;76s`6pPbg|*55R$g8{b>+g61+N6J78Xb03irR${Kvbl+}(>kx_Y5sku-i1IbM0* p^i^QO^ZvDW4{YEp9d8~$k{wM)3-;-MO+6u)HDliNpFdi>>3_6Enk)bS literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_to_gentle_up_right_bank_diag_3_1.png b/resources/g2/track/rmc/gentle_up_to_gentle_up_right_bank_diag_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..33ba937967e11e7b4ed395e69eb60b2770865e3d GIT binary patch literal 1044 zcmX9-Ux?du9RJ?m^mcc2ULUHfP_c|W1PKx`hZ*E%ZgeHbWi024R>(=@>g+=tQ9G%U zn{m{$lc0U*q>~=R(T#u=iUcg$c||H#$zj!Q=AlBl74IBD`p}1S{OlNfzTYpOm+yxU zpYM0;%xZN0$gv{;FdsX;e0DUKM)kOFV$|;*#?}EQ;LOU}sSzC;8yg=VpO~1KoSdAR znwp-T#xTt1^Uci61S63MMUfoGiXtz|2~|~eT`v?$m5SYHv|ZO53@8#<1_XXKkqD$x z;dF+~=9ofJC|9IfU2QqJZqMWhEY8d-d{B#r4H++~R8{Bdg?Ou?xXo^LNUDK`Vs%BpOKQ&_JjW0T2Kr3{(7mEfg|v++>)lAT*Q7j;0-yN~m5B zQGo~>B!w^|;ZcQ%Ym{s-YLU||K3@~fmSnrhFdZVJ5k@3Re=b|bSNDqa&e|Cb2U|Tbh%Sd zdzS9i3q!|3y@o$P<3yaIlPs4O#hfe`)9FesS1*+u+wQj8p64M5DS#I+s_f@#A+bdy zyIi)HF#GA6XS4^E{$Xc`W(mKa4hEy)h)9q!!>GKFl}5`lm0Z4AuDA_n&}Bj5F;(-Qpu<>{^e5PGN~AJL-q2EJUaMJor(yNo1{!o} zo<}wy7Z4g{ksZlBL`csRdp){XcnG!C;t~llm69_Vg(7vDEU=WtQFWed3q(I2K~flL zI4V-eW|6~>j-P&N_TL9T@aEZ75ti=W-WZXc*z(D>#gFf`PcGmWies+1cBDzm{?`>C~zVjma$M3_78}D8?dhYt-jp>W| zcUnKe<@2!k>8w6}GYYD+2BR9BSps$b9U1E_#4o40K$jb&wJ<>loS6&010l~q+$ zGMNm+uotJ`hg@j%S zW)0XW5Lhh4V{wl>6KX7`lqj!7MKhWg5K5>37yvVd@p8FSsT9=epiXy@VUiY0#_7Bl z2%vaeNi?b`g_gl}X0@Kz7@Y(s=xl!46*hQdY%pbxN*0_{YV|4|t1)n-iKlrt;|`bu zQ9dd<6OvcVhq7~VIR%X@C@g?GKrLWoK%tMQO>v4Bjh?J6SP&BEBBN>KNTpq`@fdX> zj*i(_(Zywawp`d%i2LTmFv=z5jig#*BuEQI+gaAbaeli!;_<`-0WliQrqhK&0fCYS zwGSggayq7DQyNQ_cIQmNyggPB(#1%AJ~M~vG;%qqQ0Q?LtI={goz1|w&820Ih{u}@ zMWlpS%u--BU^Z6nG~q@p5)3pL8O+KloOX>@(1(It zEano$a6T`hl9$o~grklU6ig5|N7cNf6AGqq(H@)grRJkqlqskify6PrR&JtjD@!;m z2El0!dY!SbS4@QSQUVpTq``oqfFwYu#KK*&dnTpJ;m_qrzweoBsT6H8u~sYRaPWlI zMQVK%5vGZ_L7QeYd7}!MapY7ZKY^kY5)Gx}C)dc8n|+qkWL zVC<&p*3sn+(5;w?Tt>^rT$hgRIQb$mou>MZU_Z^CWA|r={XJJu4^_4Bk1s!hFLo*E zoE+R8bf9A7oyk`*6+Msuw1$sRAKuwBGWhO|*Y6K4xOS#*?dhvGdyZwh zPL2=v6Tf#Kaqds<>rXa~FPfFbpUhTHNSBUupS{{S@XO-fh6j%F6_wxKxjuFG>cX;G z{N(VB4|LDtO;Op`(6H~Jzc|_Q8u^@jk?ityv3~R6Q%!$aL^(BcaHe5Q_txX~m&*R! z`}m45C~bOJHh;Wt`g77ZG+EOy;r|53DnGRYx!x} nfm17&?OgG2>8twA3iEIHWfWX(svS69q6i(EI@`{-b|3v8Q!Fk~ literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/gentle_up_to_gentle_up_right_bank_diag_4.png b/resources/g2/track/rmc/gentle_up_to_gentle_up_right_bank_diag_4.png new file mode 100644 index 0000000000000000000000000000000000000000..285e01cf2c9d0bce3be44a1922dacd1dea956628 GIT binary patch literal 1798 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 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_2_1.png b/resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_2_1.png new file mode 100644 index 0000000000000000000000000000000000000000..358c2a7a1fad4855f0076b406cd0bbf56861e44c GIT binary patch literal 1306 zcmXAoZ)_8F7{`BOe{N%9-HKGGc*YJYG*a{;hnDOH$5Q5*9obd-;(!WAXjp;M-JrUf zG^~R{$~>Vl6)LHrLXk%58167-G}6Tp3o9~5S8AxCuo6JZXhMO(ewL7YpMP(j?~Bj# z>{;2YpEh;YQ~c&kR#jCgR4NsQX-Se`7>eUqLEs$@hsWa!g`{Y7IF-uf^OzP8IzUs^EGxHI zP^(Srbm=@^IuJ62BSI|hN@x6}1~KZYc}ih7q9UjE30SX#jChQ(5T6=!W>fw`E~-}o zlLlA`ATmgRMc@vxvA&ja3paC!;2rrY_l}b^q_Um-LG(BiGC+zk+ zJ|B!kl$cyaD6}-HGpY5w#%RYlQ73pwN04%d8Gp{ ziI?K`Xv!VW2GWIyi~w>5D9ix00kw$WK7~G{W+Mb2H@eb-KPN_EFRhVtxYDZExQx00 zM}`F^?%)z0Aro}uBA!A#2s2Tc99L_M7;Yv=E5o=r&TF-XT&{@E7nh{;@Nh1dgFwjx zwFkihGBT`WVj6RrbY@t8)*8-lL>pxgF$;D;>{+a`TQM70AK__06+vF2*4l!83e$h zXcF2481%zbf>r|_18xFHdXS<4WB}w9(1k%i4J8YVIbq5Vo`c5$MFJy@SU82@*i zFq@eY?H0e=9uB(W(O@mjfpiA5;wFs;cNRnUY&yBc~iC=oDD6^|c(r+WPP545*5GoWE?bYrnU-?V(G zVR3i2n{A6OtZeMxQFeaPXkb@8nXP?mCA%GV>`S*kIqhygdi}GdyA316NMT-g<`KT= zrK-BKn_k<+Y##mgWb(V)Gre?6+wre^*48dLT{1LK82xe0%&7(2>Zh|!-*4QxXso%d z=Sbnw!09BvO#7(om2C&_{`+$Mz_I<~chC7U^RtiVJ~(r9lIuS*;ad3Kg5+5K4?#w* zzkj)gJbC@__<}<n@n*8!u!drxtmBh}~SjciSyw;OfyEQlYVGdc)AG#=1G5hmQY!FE{7I{`#ffv3317 zWRp(~_BV!aUXM&vueqrEoz3;2&&sz@_iR2X-|`@dwyS^R>jy_ax>guI6>U9GKeY8M zT>ap_y|d4G*>&~le;1x5SNy!!Fbc!dCp)V;RI9G6dFZ?K)$Xbeb$U|)zoM^M=X>*4 z9vSJ@bj_enY_W}vbFM8veKXS6rR+M{y7^pa{$q6EDMRA@tF~>ul6!59>n!N(C_Pcz TvvY0{FlcIQUVdWPr=9-;&zfAV literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_2_2.png b/resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_2_2.png new file mode 100644 index 0000000000000000000000000000000000000000..c89ebc213ff38527fa3fd660c355dfab59ff0019 GIT binary patch literal 1299 zcmXAoe{2(F7{_1MvD;R#aa9ZJVvUs?SfQ|sIq@V197|b>yTOeVsiS0vD_F*D99p1A z14YVGW(|eaq+kQ5G^9ce2n`%i&8b5w98$2tkrXJbiLg|tIB?)=3CZ{Q_0RMDVqH8(;D$qKwt*JbY8a1k-qC%xoRaRDx9zD9M zstQ4n>gwv6ni`$aXv8oxMUf0+Wm!AVb3UIh9F8UuNlD5mO0iVJ%zz{SZB^UtT9?b< z_L%(vA{?P(35S^C({dn}7bp{ABh;K#=d~GvEE?spBR(n>wxtuCGT<*L!f;Wt=z+ro z+$0DxNQ^^L0ZlfhEv5CaV1^|J90@`w83CXHa3Bb$(RlUxAc_hEafGG^oX)J*dnX!& zsgxem8cCg*HV_Wf!kKJdj13Zeg!09$A(0W%j-=u=;Ci#gNH8WVi`zMh^V9yQBbwxr zvR6_Wq{5J3?6_65j?81Bv5;bO~8IzeM2;NHj9pz=7L?AQ}ODK|D z%8|ffMR-Qzbr^y!Q^Z5Y{froK4#d6LRHTrVN~JrH1i%IW4?qxrH~<3x`Dtn?gZLOkhRP zC(H3dL55{7y%S&_H5t^=g29nQIfV!o?eUUZ91f>Pk~x?yqFR6(5Q|x3Ck-wJ^Ej?vfCM#i}iRo% zVG@f|SjuY7(58aT2ptCKMPUSkNfOG|^6}%7)%TwMz?uau4466iM`yYJp?S`%wzvBF zGV@mpQ^!;-opNE(*(Y@6xWftcaq63n$mt>T_&WUC%!iGk-qNG+&3Sxs853{eH#~RCK0_)hUDe@FS%`VYwk%?>zj|QKcg(ZefLSX@M7nC-CsQH zcP?vxv#R^#j)@mDZBxiV`)4cuR!yt6sY*{$BJMwUA+p@X|H*OA^R-7$tT^SnA&#n7> z(w3F{&N|;qhsoMK`HRQZ74YVme*gF%cO`a2YthziX33u!{PX)yPj|eZIC*u=zlXYd z9#!1#xpC!ydUH?j1!{!9zEN~+YN%*X9^d~8=eO)RoLl9;dwuidf7-LioULk=4O_VF zYeLKp4$fNJ*?9TDn7wv35X}#UuwZAu_J=6A}>Du0d z{r|nZ!oi819jAtVo7T7T(9rtFpKOpgX5G=%FEng7U*3JJX**i@c-dbEyTp&~uj>BJ z_|AqkYddF-I}pd&%MbRD6@hj2aqaw#odd^z-$y)eUVa_!yF@NpIB_K3kiS|c3!0l+ K<{X;6bo2kq!APb6 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_2_3.png b/resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_2_3.png new file mode 100644 index 0000000000000000000000000000000000000000..d76fe9f0f8312dc7c3f8bbd3c81f92f959b66552 GIT binary patch literal 1126 zcmX9-e~i;~6o1FK>yFF0g<%G_m>oA`jfIR@NhJ*_XYbgZemsH&-?Yy`y`*w zd#~=;9vWUTvH}2xr>7=ndv$d$#+;5`-aqwAAAkdPY}+~68~ghDmMvT6a5$DPU*6x} zKQJ(WVVKkD92^|<1_A++46-aE2%IQJ6h%&@QrT?2R5B`+CEIRyI%E(S8hCCf67fiq zKb{DtRXUsFi=}AURBD#mXckxk3)4d~=S_zFnuzBWaxul4*>J5S+tqZ-E_BZ%t#oth7|f~XTkw={$*0RSE#iea+LmGt>E952xHBF|T2v3fFjBcDg6 z=_5S>#vA1QbQBNCL^w%`8m;8ml+IieRP0 zdRA%bskWKzS~_Z0TpkK1!Xy=A*tj65qL_=vOR8$-^Oj*WmX_M>HUggvcorjzF1G9w zYDBETrkjyMD_(AEOPx~dR=tac2$zfUdPDwzKmR=v{c+&~OK7(fBg0Ca#VKobMh1J9y_g7gBi>pTuJ z2^j{A5ZF8*0g&uPDv1g_G9*+>Bf9{%ji-QPAu#Bw=hS$eBwp&pkn z24rH0(Y$=YA2o2AUa?K`{%ie)ftFe)YAW32(A(O!r70fcE&XOhBm{^}e# zJ^cI?Y3q^Q!e5s*k)5slo1W93Kj1#F?Y)!ED=*VKA0HW5e|%`uy~p<$Pd87^xK(!E z?Y_RsaD2J2^26W8rcTbDI5WF(v?*`dQ9Sz0>5UhEoj-eM?b>74PE0;qPvZ-_PP+T` zn6zQ;)4trU4_TfxN;We& zH0`o2bEl*uZgGovLX@zDtwJ`A8r==b7TM{_$nYG21&tyux(quk?z@QadB6U7ANYLU z`*3ixckY}ea{yrOz=r;zW_32>#g5iyzR8?F4bTdMZ*286$62#xwY0RfwzjslwY9gm z&z?OS!?2Eyj?T_bo6F@QNjJ+fJns{PfFy~rSS*#wdqR%G#9g2WwByv2)7E}IGUNk4;HB+6g>s~tq z35YPD@K{#FiU~_OYi*S5sOCnEAevDS(p>-?KoG-3i$%8E6&zP-dYt1XL!q)P-_2xD zv1li)F2?5O9CQ%(iiBS#1%;Nv@l@h!4?8X6mSKjGB$4>4-^^E@FyygT32*5&Jk9DvPZl`!cS)fR+D%m zCX`cBH5aQFQ`1HcRdtJ%!U;b~g%~!%^9eynM*EppJIgo$*N$;Ejs9h%I^ITe{@ z4hNBhBm)I6m>eJ;kZ3~*5~&<2gi$GuOckCOPl1mGKZk_{n;apMiZ`nYnieyRT&-rH zCYL<~WVDM>Y@F%{7I4v|m3ko8h-lNP(oCU(%5~fdlmqj+Edj<6=E-Qtr^sP7DQmf; zq33F*jv5up=R*ZRCLq-GBHpBX3VSS?u2!jZ>M5jBi46q!a9D^&MbaIk+$o04v1HNb zp5lm_--Ut>B;zPeq5^{qU-S5>m%1K2`GEsNn|bKH_4}S?PY?9>ZC!J0^hDpG5oh=4 zYe&}CoLW!<=T;o^$kkN(~N!Es_FvN8TpzPp#$yYlFl z3-psi&mHL={_e+?-J^?7{<^&LlUKjp`SH2TDZFR!z3@u@FVEVk(V+{T&zzneFTb*i zy>qF`EcKpsysKSL{K=>AzO$=OZ#sW_>8-bhU%0qsIk_mgd)e4nqkOzqz4rH@|IIeD zN9(+L#xt+w$^-S7=l;Z?_PG``~KSpohMIy{?Cot&+k0DZSBHEYZqLNr2lJ6 z9DIH|O|SYTT7UiUw$^nkxA-^i?A{pu>gK+I$MJ{#mispzt?8vlYFk&2471zY53kS_ c=Wp(xuDEuhsVNM2HurzMe%I0e0lj(pmjD0& literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_3_1.png b/resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..40e49a33aa1643be492eb03990c9e0e7235c31cd GIT binary patch literal 1322 zcmXAoeQXkU7{`BoJ^D6Oj4WjdI^tNx4)xSqO6FOwj@Gk1>uGV)6z8d^WM1@I*`(V= zu@Xn>xe=w7DvQLDiIW(!Vul+oY{iTY&{sZ=hXN3{Ug0g9|L8f6xX z(rVK>oI1CM@&`@f2p1Qf>5PxiAO>9(OUikJQef0x4!vwAB5p%G$fjbBY|1y8i|Q4? zqybhO2sGknk%&{8^vm*b1uUsEg8zVR?8k}j)mlLA!GNq9*n8K>pI1M^K zLxee6v@=OJmkHQ&5%;7RfSIUNhN(3M6f@(5m8P8x0KmjZ})s<$9%x)@T`>jw30Dsj$ozbh={x zU@9u+(>O4Z2uDkKlTxr~JT^Swpu-+>EWjrto@_Fj&p(7X00sa!00aO60K@>uAOIFb z5zxlLfDfjUlp3%oaN!`N2Pq0b8bDSKohbBCFl2#o2Tb|E3-A~q31FZQ3nS;P8keB= z`DqN6LKBXz7W>Y#LXAI=6;YoLVDwKxFoLUAjC8F0#jkwZ6 zqc$@s@D`to4+mUgG>}b2VLpwKBn$zV0uUBhI0|+zrLfyPnGEJ}zZ4gb6GkI#u`o6p zi)!td){Ub90*#Q`1f|IuRM4b^yc&8?7{Z}Q7LFgQuX^(02fEj{(O~8M@g0SJyrrpe z!`uBQPK@pMEvoMOmYq-DnB?azdiLo4&=SR&Yex=yf8Mce?&;4*i~f3}V!HdYvDNJl z$iA=p8Wv`T-f46{tNx(vM(sqCG-JFTNUp;wz=FU#G@|J1-@dH;n-};XD0h81}reS;K2aObRn1ZJ%Sd(MiX2HW9?jXgSvEl_fQsoQ>7E_Y~ zMLRsr4N6j_U`gt%=76f8$0)Hvm5Oy9ro>J!TCqSAAn8bf1qOWWLh^ZeKmK^1kS5ch}p7hK9z*#-^sG=H})}lP0ya zv|t$4+S=OI)@HI=tps7GD3WDqp65hS2!%q?Xgrltv)O{KS8FxG4x|$px}D>UKA*)O zu!kjQG{z)To^(dcYf`D4pm5CXY!_%#&~1@>RyY(YS^ZQehl!?bRRV@_?)oK-iSpZuUBa#Lx zZD#Yhw?u`@T%zJnSLH%2RT(dip?2J0aF|RkibeA?UHlK0Fp6l`xx*d2>pzn2A-2*;?%yA_3e0B7h8_0OSD57@#^B3I#-@B#>TY zY#hCt$*O2hbF_8O+Cue1Iv`Z{B3!3?2y-Y9E0-Oy=tGG4JjHRW&&LM>0$~q1>`{_XC?Z4K z3k+UyTam|tf;JQ*kV+zrt{=bS$@Uu)Kd_~@hlQnAMmE&zl`FbBS1$J;19Xz{nX6}h^p31G8H+1QHncFqImp^qmdH1n1n?6v_T-&WCR^OCPJhy({*C+1} zPyeE!9^JvM~{R&bGFag`plB&w;k>q>=(FO--;Jr>fZlODzf7e zedzR_&)%^W?5q?^M=2J{0+LnS0Chsap%j=da&% zv*qHP4sk^K^`C{xk8cl<{Y-gPiFp0z`DZ^qap3P8P~;_?2C^ad@$?i8!>E6U1V6%-P3h+*=sxh2c(4)5dZ)H literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_3_3.png b/resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_3_3.png new file mode 100644 index 0000000000000000000000000000000000000000..5fe6c88c4fb2382f4353534b952cd757c6765d77 GIT binary patch literal 1074 zcmX9-acCQL6n;sXUem4w%`nwW(i-uqHwk*;{c*UPUTW6e)?0gp%mul^m1Q&Fp(h5- zALk4bG`d^OMsOJmER0OfEz>IZN5H_MM2UDvbs0M}N;c!H5?uZWtm}Se48Hds-#_o; z<9qM@eRJXQ(T7F>V0?C0Xkjp?2KB&*W6j>z)4b6QRGxAmCF^%WusPGv#f5fM+SkRf#=4eQBOSX zPb7os44upKrLtJ5Dh)H!Y8P1oi_l{-=T#$qO~MNbxte0Dxk#fdTlI9uD)zgzun$B6 z5)5bpR+6!5#@#G=dJP}y1W`{!8yZ5j000jlVwmi9t3IEG<3*ZY<@tIn)>PH?LIG8) zKGG9lyg}Yii+ETjA}T3qw3262I+v{o#fE5DF+b%Ch6A)fa1s@jSvk$83u3{L4O6XI zS+i4W^{Z|MJOX%Q;78d~KEk3{(rVImWuOA=dA1T!Ty zb4puJb*s6)siSty?V)fYLQ*k?O$b6plJbc}Ig_at3Z`MS*4Db+E&`tncn%{=ZnokR z8bqwcrrXhCCsFBYYrS%3quEDegxgJdyOtxMsTQ#%SVnF0D zMR2R4UyBp@B%`N=NSiC zkY&IKgT(_90LfmIAyJV>MjSQL$ST6!;3?o(i11ik@~R0UtA$HNsZvRqrrzn8XrSeb z0ht_QG%sKDiv})RwAPL4y+oy-Yit-T)a>FOp!`@k=#Db}xIiXjoTkQ$S+$~P&6?h^ zYN*$uI1U+rEI??GMS3825580~-)>X++&w6b1{;kE@wk*s%49G_1#=9kvt*SEuJJ@C z5d^zc&wq7o{Md_g_q}rT2iM9+ zFa0XaFFY}6-~L-vIz4y)#Dk8N8~Zn}I4^Dy<9lyBv(33j-aYwg?pR{~rO>(KA0%cH z%i+rh#z!a4+`9Vn<|9WwNuJyL(-)uVN0PaTsW)N!W9rR2_|^rt`p501w_8s?)n0zI i@%?ufFW;u`*q2Y8f9=#Sq3Z*$Fgr6By70o%yZ-|Xo6Yh7 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_3_4.png b/resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_3_4.png new file mode 100644 index 0000000000000000000000000000000000000000..a605b44994a77deb7ae3597a357a7b674282df74 GIT binary patch literal 1345 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 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_4_4.png b/resources/g2/track/rmc/large_turn_left_bank_to_diag_gentle_up_4_4.png new file mode 100644 index 0000000000000000000000000000000000000000..99b712c9566059ed45bab6332da137f056ac3025 GIT binary patch literal 1331 zcmXAoeQXkU7{`Boz1CK7MME>Hv||pHDsyLYST8XNr$WAc68{&~KCe4c0j z+BK@_)83y30GPh2zP2%2E3;8kl$Xuc(&kSA$OCH|n(DG+PEJm4Zf;&)UVeUlK|w)b zVIhJbMMXu$#l<42REnYsrIMg1HN$8P2G(M+IGt{v&mRiKcs`xUpb9|XfK-=gwL-mK zVl*kNHr(kVy*@e+G(@7dMAD;_BO1JfRg26TiJg(T4d{qP8FXqQK9&z#Q@m#~9a4z_ zEeA#d*eS%zB0-xV?iFStVwh6E3=OC35Qd}xkO0sK!U_atvDhw?d2oD$B*Qvg+-#n3 zyJ0XWMuk#Bq#z|YEmN^_jTvR^xWT2gaB4?@@cb0ht}a+#;1vrVSEoRAWmRJZXCfj*xO8gNcnQxlMz6 z8D+pgMJ-I+X-IOGbkI2&B5{j9(1MRp-g515&&obFaTf&fCC^5KoS8k zD^dwf2FQ6JA17siMS+6=eih(J04V@j5wxMuLqfkEMy!zcfVbc=pjHA6iRc-T*(i6| zRbCGh2w0*~E|rSHte02^P*VwE7m*$b?U%7UZcl5uj4?3jj7<3xFrJnP0VY9I3W1i8 z=qc2sQ`^mYkHZ|`9MKS$;zKZ#z|?B!2apF4W?5LXcJCy%m|V#u=5oH1Aret)wUl1Z zm`p6HuwV)&fpSVTs8+;Cc}gRNv;>-E(1k)j0i){d@nefh{(JiaI~&(fV8w%*TeJP& zt7>bS>i3^MxM|o@S-N+mbLH=Fc5BUUR#dfqmixs-{>e9Z0qZQn)#xQxewYF=476Pb9Y1AG|cW4WF5O{d0HU zv%0a~Ln95Pk0TAWL!~Rc6728-q~p7Ru_x`IH27-3f#+Ro-EnFE#EotDJioQ|#JaZK zDvy|?hxxr@d8bOc51fC#rJ|{_ z_M`$#l~+_#t&b}zCC$~;wV}&rvAc7+$~pP{1y4tg_SW?tzn~hL+g3NDeoJ>x^mWCR z`kRHzh7KLj$f+1*Vg5q9xFak^pC=KvA*cNX6+wsslP@S x?r9pGQ?`3CGDm%+k6n7E7k6Ap%^e(n1F)8z>|oE#(kywfs%}l~$(5gV{tsN;PD}s* literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_1.png b/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_1.png new file mode 100644 index 0000000000000000000000000000000000000000..cd474bc5fa55adf34263d3a5049742637b36b181 GIT binary patch literal 900 zcmX9-F^J@36n?w2yV ze|Xuued~=|0C4-_gY!pCzk9<^TTT7;*H51VwBX@Kj~_Jh;Nal!@UYct9UUDVA0MBb zoM0GsdU|?xc1Co&U5;ZVNmNzYFf_|DUDpkQ*a-}rruNG#p9G6A7ud*HqIs+pSd=;CU zSnA=Md8b~HsAN&CqiY|btP7w3=on_=xI>aYO^1STr6|k6VB3fuAnlq!E2^uj+OCDpT%aJJ6SQw%lUSn;v#fZ zAO=9$K>HX!BYF#3OGPv9ds{24{0v*t#C{{kS5Rp#?5glA=MQ#*h=G_7M7!=^4ImE zyx#0lo569OAbM0+WmrQHELj=r%`$u8O_uXTk>&MP1YO1~6?b&XA2L&0jK*p*9V{bf zlTOP`R@X0(2+#+x0DOQ5U~sbqhuef zuH!A*RCEV;3hS}BCQ?I{vj?*848w_&M3X#=$|6JcmX~D|11bQaCW~=n_X?zIPj@?h z8oYwFT1lFw4u^(qn;h%%Y#?%x#HBL3R+zHiMLLBX8cjJAizt_yH~^3Iz-e2!l>({SLn>BQl5Uh)!UZ~Wl3O_R&>NO{z%ATJg}N1UvL@8z)I%C+ zV%Z85(%}g;X-H+AsnF>u6(=-MM!}*}3RYL8juRU#uHb6wY;-0AUrR{7&#!-;?;oG% zIncSm)KK484*+QBSlhm_T${>))mD}Ba(-7e09BxKUDulOSW!_?Sy@?CRW)bMoa*Z8 znwlB}L27Gj>+0$>dc7XUjWkVh9K-V#Q54*6x8EO(M52jAT2YFn5^e+(30OvDv8e5K zox^GLcu9YN4M(i8xR^|Nv$+tBA!bq~FdCOxC-H`$h>y7GxZj+N2+EizuY_ib36mCB zG2ozp#35k;iF?sZSY1kLVcrN!RyZp`n9u{j0$@cD0YzO}tzVB!mcROc8@6P6;WqH!FsUQUZ>!n3^ZF4in}zlVP5Y ziCoIfXZ&JLb{FIRnUoB32~l_rMc?p@Er2?7YV1z1qZCXr<>M!osiyD!z>bX@IIw#1$KG=9>}Y?wtL@-k z-}=Murn!43OeaU-!9@o*AK%{lTiv2V`z9J1h8I6KE_a=u>4A%Dr_cPPDcn{a-_`&3 z;0wd`j}@1^X8mHF=han#i`xq4&fnNaPf_dwCi2k9Yu8Eg;{IW#H2BBYPx(*(aBQg6 zxn=O$_0x~*|2cB@WAWQ%ee+KF3eEK||9k$zOGn7)JfbwLj-yUAXh3x|;8|I9A=f z{m9a-|Fv`;ZD|)T-8u1K|BZJCZ`i#r9&0AehgyeMG@mCfDR-tkY+ xyYog*wFZ}{n$k13)(^drYuwhilI@w&iEY!H&TMPDT4n+|)@*1$@yyo#{{ep(BI5u6 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_3.png b/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_3.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_4.png b/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_4.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_5.png b/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_5.png new file mode 100644 index 0000000000000000000000000000000000000000..ff8c3894b16fba9f6e6f162882968ec287e91b68 GIT binary patch literal 929 zcmX9-L5SmI82x5CGwDp7?V)0a%^|EkfIRwlhx|te|DAzgZUE_kFy}dx!VF zhi9ka;lcF-0609kb9}eBFBfyITq^d__1}I0D8bp==eG;GwY9aqyb6R_205~r3rC0s>TF`B({7e}n>-eA&?#v1;40YI z#G+nxF|Ms=ILc_W*3p%VP}~5J0dx#At5qAvU6S-T?n0KQ&E~?kpN>W-ig2dZ;On$Z za5^cPlxj1E%UMIg@uhyKcr!gnn*@u~VuMpC$zU~8FuQVhq>lnKNbET6C)s$piK;x* z6sR|W=m6q&OC*q{nkt+MsHNHi3RHaO0bSt}`-cUQPmbR@Kl=Lqqsv3MQ7)am^7{0@#*K6F^6;;?ap^z!>D!yHKKSHE z_-gC(XYc>~!8@vV|MI1OuD$zg^6S6y50BkXzxe32M_+dTIQs5S^Bd>Ry@Q9;8{Xr4 Rw+d-ExqW*4{jK*t`yX=iirfGI literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_6.png b/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_6.png new file mode 100644 index 0000000000000000000000000000000000000000..c02f544408f2c5ca3107ed225cd04e72db1d312f GIT binary patch literal 1303 zcmX9-e{2$G82D;DQ@Y zoXp_7MpRU`;D!{P6f17nVak+6oY>)H6O~x4REfi-b>A>1&-*^_`_KFQ@jUO2 zmS*j!s_|6-fKg2g8ruq7SE#8KC50|-`C~KyC7|W~Me_=4QBhHGadAmWNoi?mSy@?m zc{ze06%`egm6bB3Qi)+|k|Y?0Vp%=Ub2gjJerspWhG+@zIzgmG+VCRGwLHLcJXP%Wp@Sus}7@NUv3QqCabjT!<;qXL(!wMq@6qF7wdk(`~jdkmfc z7l>KINoOqMOXWin0!SGkGXjMLpaOz>WLiI}4-s5U=ScD1tPqBsv`Wh2ar8Fu|xDCcWUL@i?GJpra8JE3=waPC@JQ zvcaG&785g>7%XVXjR3P$6M~HPDhvUXOKOCyUd)+;c~^8ekb;RUDh0R#(W)hSLSbSs zi;)tnCa=>P6rHiKm`R3VE`?JR3;>t}5Ei_!7vx?+ZnL=4Y25941wI-j^?Jr+Vl5U9 zQ`>O0i@-z@3sLGgt;*<>(4c@;6uL1OAYhCtgdcyq`pL^5*wEI@fZ6wNeq5M)n;PdV zTCn5n9%_B~jnR$$cF+24x8S6GvzH!eTehzFR2g>rOJPOy^n~_f(^Pw(bw8+?|K{EN z+~Xi$Rsjaj(G9b6HT|_iTX|`1)vn8jevn-182tO!y8852?`?VZ_3H0?uFcvuMPXzf z%~=><5{UHHZXUPi#`FneC)gS`G9R4UuH8S&xaN4p+)Byn8Aao!Z@zx##aoY~lbM5^ z_RGxU6_IY^$S6<=y%r}(&ZEL2QM7| zsP6g2qLKdJ@PWzbaK2^enuye1z0~%}xg8JkW#aIo&n}*6xUpn@@5w`nN$HMtOa5uN zePCq6)7JI{#H3rp^?mIx&NN7$rd#V)eOo#)-Fo)Zdplq6ikr8t@RUy73BNGTiwyqx zbfx8lWq17Dk-hEt-w!N2eBq|}e3R^RzEt*MsA^yRKu4t89vQRvd^9c zs%Na8a_?q+ck_uWH>ie*{ap(gQEFaueumy}oB7Mt`y~unlBW+ X)-^L?HmcEryP#=abK}Xm%eVdyxolMV literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_7.png b/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_7.png new file mode 100644 index 0000000000000000000000000000000000000000..f8d3f8e82b0f0b39b8c27aa562f749a9283fa8cc GIT binary patch literal 1040 zcmX9-e~8<36o2z3zBkD+v070ZjqNf+$R-)6r}; zp375(B3rJAwYuDJwWeR}bS<95QtXr}#Pn3$REVlZuNk~sPBrUluwLi|)@I*J;vkcd zMH$Ai_l2L`hb4jw8VrvTD&?Mhb+GVY4 z8-2ID>D#F5MWPHrrf4R^@i|E97|G>G#AfGbUq`Pde$oG4ZGxfb}#VIpu-3P zasUN@P?$v_lzRr;$XB{urc!aH^T+o;H~#45+3Al_bnEMj zN2ym=;n?NbYl;7`D8}kr-|X4p_i@%>cQ@rxp!9(g$wR+_H^TC7P z?q0~cXP3UPwLdRhUEX!>h0E55%M-77r=pK_W2?4!uQL6^O>HHzXXc~%i!(Qs1Ajew zu#-_dsWMlyTpOaI>oKQXQASNC!=|J1I%v+&mL n_UG`@{=@$3izmOU?EaLx9o%01@mH@MI)V8U3v;)QpTF`yhF83& literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_8.png b/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_1_8.png new file mode 100644 index 0000000000000000000000000000000000000000..abf382de42b885f4abe9106d18e56c310d1cd717 GIT binary patch literal 1608 zcmX9-e{fo57X3ofkRMVo#1f@0NlAkn+R{kuGvZ3ZgOZdcukGvlV$f23T53>V*QZ4# zl_*5gl38N1EhN~X2{R=vt<-6ibckgPHEBf4WHT*U$(Sgus8z`hJ56nBzr}Ip+cQcKg6#bR+fJ%K5$QG)Z*9lhj4FH7fk2{2w$QW%5brU zM6?u2*)W?&=Lu55m^qT@kEML`OJTMgaB;xX1Az&M98AQ+QwK!au$+n!_IcWyc0}M= zOw1(_zELf<6EYu(hG;xyA>&Ru>9?fA&ZU?iCL?SvA`%l)L@!5;IBq9Nx6v4|+ru7D zEEt@hnMtS95b!A=ax$epHX7pNQL%m=wI#LQlrfZc%wz(o<@gdT7PHw1kEa$0aj}Gy z$!HB`(`ApD0`~q%Umy{QW#;8Tr(x1K+pH5f3}UxQ?ziC~w|>%Zj)&c;cqEg#0p$P? z0MGz90Pq7a2|$twU=|n(O*Hg-VIq!+03`+eau8I51O^}uAjN}rDfD76Xn;{0OnAW` z#v?$30s>Ir%ek73ZS{*4XY4ENXoBgEaRMo6vaoT!y;<#Ts_{Dn)&StWq>ZP_eRitxO?VxJ| zwQc)g-7)4Cft6KVQrXozS>4~(PaUq_(pxbVbXA=tJ{x^H z@Lbt}_RmYf15+Fkak5}wD!`~+uL$Rvy&W265TDv&Z>p$tQ zDt}#j;hUCE{<(M9`kM(Cxhf|vRS%yo>G)BJy*Ss{V{G65+sW#RFP26{uWWYLzA(^x zJM)o8>H4Z}%i`W~jBabq|6lSW`Y>m$Qjs?G)jqm;H23D)`;d?KtW+`XwoZ;5&tE+C z(&!t;x#N2-b9NN{Lq$rOD?4)@4sK{a-Cff0!FsgpA#W*rtYdCWc=_WexBhj(zvi`|TTlL6bjoJkd9}UjqM*XVX+EH8d2H8Yt^Vt#>WdFfSFz}txf?fc4p{Dr zS)~^pZQVm{bM3t^?5aI@X7}*KLeKfpRdLtIeRrQ~4_%&WbR|mtWu3m@g^}Cf_g#A@ zerP%IOx3GL8y3c9zdo2cgtv|Sa&(kvyT`V*cHoSlmlqjYedYbn7kl@WPr`b|V-j}L lrEavO~leg zfG7hBkL5&6OWJEWN2}^WO%k<2Xh}h+>;d2aLKr66?Xt_I;JE7bPIFu(9Inao?Q9ll znu~IH7$?cOy&>Eu5&@YK6t9$F<9UCo#H-a%(FnU~7wPkOdBQKyL6H>`Tp}CF7R912 zmyML(%+(h)I|B|LoMCXs09P+}`ypvH)LAX%4GQz@fqj&KOHE9xVX0dG!VOA@cg zg<4u_$lpA>{lG+Ia|wQN=|7VC3!rfDK@iGZguDraX) zF1|{H>ujPCRGZO~sm!$s&86BR>Lu)U+UfMUJv>1QUa#cm5+Q3@tdLAqas{KTx9SXp z{Fubs<&ay65SbX0Pw=HoxRRG^TBcbmw_3Lm0}ud^02F{cKn0+I0kXicC?=u2ii{eE zgGfP&fuau#4iFDWbfP4MR1Os*sG2~A3J-**!Ouc~!yZHN zmn#fZtd~)ooazo0anbN9W-#B1mKM|1rD7e`Oxyvq8}pI&AmfhkR4nXQs0M2N*iij31_nxXP6rTNJ@ zj%WrvDC9;mjxrP~GD!DZ&rfgY{qunb4(}P}Vf(^QZ&>}>T|(;XXChS9t%uN#Rs~t9=2S) zCUW7HKCtwv?T2}RS-I)#iQmpt+E$=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_2_3.png b/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_2_3.png new file mode 100644 index 0000000000000000000000000000000000000000..2c907c0d9a61356a67ff2aa02b9bac65c5851d07 GIT binary patch literal 1296 zcmXAoeQXnT7{`Bm<2LH3Sg~ex6jt=a>I$CZ7$=b z_ODuLtejpo9RN_dqPbyBp`wMTE-xwM*}WZ?0Vn~hK5S_$j73F7#l^)XB_*Y$rDbJh z)22;B5Tv}kyrQB)t<&i+%s^2j!h8xIKi|M+d`fG-gYtJeh2O(j#U4epqb~-2g zei(~sFqMu}8)z-TqDDb)c4C}J*nE^LWa^GGfg~G|tXf=SFzN_KZ{l!^KnZTz?PvWF zA(C>&rS6m*%uL0UBv3IxZ3S8fKt%-itBqmQ5+j9_*^{vaa$+3z(|Q$$YwSk7$4mq{ zDr#d=E-vl0Wkar9%sZ6|!E9Wq!cn~$!>uG`XBZF1`Rw+v#}o7WQ;|q!XegJP4`il8S1Wq~4mL+*wONwnuZ~P(Ca_PESFFUa7>@YNJ-i=nWh}*i5vWEi7|{J>7|5 zSc<3e84|E2#KtI{tXAapJ_i|cGf|&45pt$uJ~pw4+aA?jPNk&hEf1L1CIj}1Er@YC>kqk`dP!+(nh|!?5kXoL> z99EO)6UbO+?Iic8bE;#Zaod&p;zz|Z#{c9tw@@elHdl5f z8yCw1RjT@yr5AsG>(W0|-CDeeYd!k#7VlU*GMfUa8e-vU|e-o#mekllC3HEx!FE@e8&&~xnRYz+RE(8U@&rWa&mKXnM~%GF=O)b z@>ncZetv#IK><%F6e5TOMddiIBnY)$PnykUyWQ#a(t*H0G@44M5ebmX0H$QC)m)uU zU@%H7R+-&_xxE^nUmprv;|UikW~pRsQpq!^1Qa21>X9xp>bI*xUNRcAB%`iODxly4 zjTji@fWldBlI6E@B5rOv#D_@1z|u400w}D#UeQz6Q56sL@t@E3&Vn1ZNy|6 zbULBm&qugIIZuKKWEzoz6st@KLCN$E)a+5(e7Gy5p`%)XlrK>TWw=;LNYx}tS}==K z*kP1=EV$314SGxwzatq5q|<{?4uA>(JpdE{9sq&> zBv=4u!BA+_LyrqaBbW$~2(ZZktpHIBKpa4l2dxNnVUX6rkOf9v;HB|WphSTRW9bN< z$so2-3b%{!`OM+4Cz%YxtQKDj5F=Yo@i3P_LyO3$j7q6JX@f6g4~@`q7)gn^Kq_D< zBpkI|pu-WPR!Nz3E}O~cv4sPkWHbQNaj8-XX#k@D!mJmTtlTU3W}_pKkUH$I(1${( zT8-;;gwaSM60=ldmm?k&@hc?*m^i5tLX7~LM9_giS`Nd?Z1|)si?9VgsQt`h} zMWs!@Qop?QQVj>{B()bjL2t?9P`c5~11TfUx5>*d5$`U_IZUVhoI zuPcVlKlo3oDQWbtTKITo16yWmi6O;3@uAue8_Dy+M(ts}dFJw(rn24+N9W+9Cfc=W zS$pHT`l=Vry*;9_6ALC~*t23oLpjs#wjaBGuyp*=34Pm?>56!Z_>#Z8f__#~c9gwq z^s|z@^4*P7nD&R3<|W-X_ZNqM-_StM%LO&)jQ+qL#-+v63yyA`dVJ-Auj*Ib{#M0*RR`&D$kWW zozVq_C3Qo09&2Y@J9&TZ!->;&l}z6Jeb1X!Z#;b-_;mfox?5Ln&+BYI(tippO?^V2 zat{BOI1@X)v54E(cCUode`-I`epNd8c#1qRr*v*`Mb&+M_udnl2s*Wi8a(&yb zve=cf%FaJjcS^;vx_ZW7QT_RQThX5~rW4N&%}=)|hp*q<({Yh|{q4j$%N7qgayBgQ z+v$6KxZ#GVXARYGUbA}b)SBRE*_>dKmmlkctG@jo@v Bb2k70 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_3_1.png b/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..f0d59b2dd3ba4f8e216c9e014b00efe968ca9fe5 GIT binary patch literal 1358 zcmX9-ad1*~9RF<$nA?R!8NvZA8I ziHhr`m~5hQWb8~q-US3`vpU)Qv z1VW)OKR^X zy#kmqz>q>8B@8=6F<(h0DuF2_%;@1b10gE|fB--*6jCCQRU%>Ja<59&Ll6<8F=n;i z^>|=7EI~?Sm{>_jReHIaQfRG+fl<+J+~(IfL!>vV55|pBRH9VNRHQ;t&dSD}T*{Xi4T~^PLISZ7NG(9l2vLt%9gyq77{zHF3EG=xSlB}-N(`vPtX4R* zDxU!l(IjUx#9VaJZ%c<=qnsZmSy2fpS7;H`h~Z|EbQlb7vpL{!ggqWE7)%Tdq|<2# zBovUlgosasha_ZFVNBrmq|Tc%htkYICXgDBjlx2ONQ8>TYN?D=C=DtVts(6C>@iEg z;f(kKahA&@Fre26X;Ng>OBs{GZNdC@GUPT!{MK05or}92#{+$AbwNOUp|DDix}g zA{{0*k%+~pVXP*v(;D(SIo6+wvoMoDH5wQMFb*KhdSTDXJ%z+(aVL|g+w~N5G>YqV zq{(EkSSUnkLzONJ@#9EXqZ}XdnbY)A0w(D`*;QZJaef(%OZ~Ecr+++I_81L$b_a3H`krP;l^qQz<^V{K57^gmmKS&?}Gh z;aj`@ZEHE6TmAfhBbJol*_NpvjUGvtf(xaYoCWNAhN0km$Rv4Uj4>jr@U}j+x1LSQJ=-re_gt^f9~ri`tG~> zPNav6I)`6+L$SK^$eg!}8s~FWWW;5=v$Fg9+YepGbepyZhF0y`ry3hh($ literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_3_2.png b/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_3_2.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_3_3.png b/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_3_3.png new file mode 100644 index 0000000000000000000000000000000000000000..428fc405ebc10d49f9232f61714f8c463896a91f GIT binary patch literal 1497 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 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_4_1.png b/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_4_1.png new file mode 100644 index 0000000000000000000000000000000000000000..561212615afb0ad5c77a7d3a5d46456d2428b0d2 GIT binary patch literal 1357 zcmX9-acmQH6#k8lwcD7LROz5f)ryB4OBtu$TqiduOBr2u$c+@NvCJE5STzT$reKvL zD^O~YQ!13%xW-+eLWQb>6jDeh1&1lIkl{K~r9iipIbAafscy2LB_!W_-+TYO?~m_$ zjx~*%vXXfv0D!XkRV&x#8Os+c66E`x$=Y!M1Yk`=Q(b;7C@7dQV}?K=C@d_TIdf)F zQISw66p2K|#l=#ELV;mQwVI$PElumqX2xc-x!vACAQ*}CClZ-#7E=O31xRhFUN143 zabfE4KRs5dpg1AG7*go z7*Jp#07nUZj4sqq}^-q z2AN=tjU-&Lv@e+piwPj1fYb=&R)BCq+$+@t5Pg_nVmfEi%xAa=>>*JJjms<=)TvYX zXm!X;#cXukZBF@ZnXo$-^TSj`EWr^}hv7y-ZJ{V9O?xbsfYTZFdSk(0vcEr*$v_}u z0OA&6KCwC^qoSxWskW!|eA*JqaQ)dpdMciSrKnhpOQjmQfM{HQ;ph z`2vYZESn^NK`S&B5Wob0Fz4wA&>)8_0zDWE5-_IChaayfop|&EAFOSpK<&t2Ykr=p zU%9+#mE-R(f9l|$o3&^A&f=>%mS1$YD~Nc(;IW;)vV!ZM_HRztOmy!K6tnjtLv_^% z(=B2|ly ze7^i*yJ`29109u_hwZuT$$goF%?F!tN9e|~y~Q#~iDLND%SV)*in5;?qwTYL7Q4UaQ>Nw|-#B`L;HFYunH%&(}{K zUs}Iwd|$!B?8sXquaFxh>#K%F!_A=TnNHKD7rU;^>1(d~VlI7jl)t`*+QUiaJXDnO zyU(5Aq7C<~6CD=~o9h?WO*ap(STAUsf9m7TXM6N7-5#Cn9o;!^xMmyKTdk^9U9NS^ ze&MWA)81WidV%3+ynL+sMpMgg_S+wIzk0st{-wrX^R|Kh_KEM=W$&SXRDVUz9k~&0 zXhA00y70r^p$#`%yIEKL`^C(_p_6B@JFjQg{kPOQa@QN6v*MfU0!vpvAl{u8EF2D3 V4P84nE1wBaU)Q+u=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_4_3.png b/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_4_3.png new file mode 100644 index 0000000000000000000000000000000000000000..cf42fc65a32df3fc405ccc70edcb629417f330ab GIT binary patch literal 1693 zcmXAoe^iq99>>4xPfqvAHyr^Pm^r@JRZV~rXX z8Lp>0O>V=D6)Tq1uxR5JD>j*VHg+zjOS{ZV#z|6a)ulyA=IXiZ?40-K^Esb?KJP!? zpI3)`wRC3QoIC))%$2n(6zN%>uEjZ->Hge?U2y<1fqYd%b$TU{NEsO!nVFecSy|cH z*)wL$Ad|^CIXStxxpWqbB@pl>5-|+R5JZJxsL^P&SZpqr$L|kCB8g;Dzz1RxfMgVv zil)^vb$Y(ZEV5W3hfD4CVS%7I8na8dWTl9L%IF3q6Gu2UOyD+3d=_QEg+_)<@rXT@ z@Jks$%>_C!z+tijCHu_Ou!EKiFo-yxNUDixoFM!x03ZO=WHL&n8W;?m!?BA*ZU`FE zXu<}=Et`$-`4|EkOHAiOOp%%+MY&3Y0Kr9=Rbq6?y1cMGp!P&GOd*3WWr<*}3=yhO z32K5&Hnq)zdV&Ujq$?PAL{mPh7|>uq*8rv-aB#BFMwhxcDxVk)D$P;Mp1}Qt8{*Os zAwwtSnw264BJpBy(1?UBSj=fm_$;ZQlZg4LG$Dtp6bLn9i4KO%2x8UgTxPS+W(#^e z(NHLnNDzR50*-|&a8M;)1{~mOq7qX~WsmE;2|Sc^#izq5g2JUzg><@<$%46jL?psw zkV&0BrgxdUh8(VlKbVY)fm%k!V5&jQ#I;7}%y*4TELlzido{AzQhks-d>ylb-eO+85@xpW9V4KP4_0hbq2oyO+y8R5bua zSU(hP;vea07%d)@rta6$_K#j^x%nt?PUKOJJQy*^UyVFrKENi&n;xuZ5j9ZOIO66Bk{YEcJ{^L`Dag)2McBmR?Oq>>2EW%-s)ET zuW|ZP#mRYZw>SK&E!g%&ecjxiJ5zl+ns&0+)IVA?SvNdC=cx1Q{+lD;e|+>G&;F-$ zLD^W1yLuQ+sA!K%4zc{*L!lq)2KJ00H5IQpS{~PsmK7jtd%kF2gnWD2aX57S>6h1~ zM0qVQEi7$&6;i)Ifr9eClh?K0{Ayg>uzu*{&5qWr_2-(6e0e1K!65QJ+r0VnM>CkE z$Lq4Hmncf`nX}ySlP%9^=N#v$|9ztVRO-9Y9dB%%==o>4bLrUb5!{y3a<%0X)wmyP z(VQN3RLCoL58T;#f9mp?4+py|?;R}6s0?0ewoN#yk00GueWP_N4L#L6!FW(tuorGB zGWX6Yp#I)Facy+tub=hrq4@K^zHfpV*ZZH0%zyg+@~3jc<2Rg%!g&AM-RGP5$l}Sv z&1SUZQtV9G?SjH?HqXO@ZG}4b{=ka4v;#M@{e6KeIx}8k9-d34wm+)g>3R6mwY&Kc}y)Ud^ld(MV$Nd}wZn~>JY*)Watdp;w;+?#+{hjyv1}fYi<*%veDd}EtV4q-# z`o)ne7vU4g>y2At3+BDN>GYNxnYXWE+rv9r7_Kv&f6F>gI@59Q$73X8ZWra&;nJyr zgM$x`oZbD~e|L#WzHVE@Zrxi@NxnGXl^JIpSp8||+q#^;7I&8T?&cdS=f(qL{Icn@ W+Z&k=`Dw<$%IeiCzFgk;!T$jV-UELC literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_4_4.png b/resources/g2/track/rmc/large_turn_left_bank_to_orthogonal_gentle_up_4_4.png new file mode 100644 index 0000000000000000000000000000000000000000..143047ba4c27b7c23b33898472acd5f1482bb6e2 GIT binary patch literal 1963 zcmXApVN{ZN7RLXk2BAh}EfpmwPE<69Nm5L9r9?%gqI^p%DlB$DW0N{q)UrlNNfR2D zI_OfNQc|*oWktz0WVDizkzwJ6Mr9LOCN)%US-s1gIp=rpJ@?CfK0No{pH{A5Mxkb+ z002?hS?RgKnih-#WN0v-7+LKDAQY@zwmKu&hJ=KS8#gXAG&C$MEId4X{P^(*1Okaf zPM9zOLm&_+6f%QBhaeW8&y`5T3WY+W(V0wUo6Y6%_yYk78PI8f&5Gc1qeUW|R7O^+ zXc{fsVB%S<5{Fae9n>>O2o5bm%)-byI5nTBlTg|e46BCYFo`{OrO%@u_1lJR(y};>am{HBF*rD2%LX3#51O%pM_*iX}4%G>F9FQ@LV>SjkrE zcsjG#?3CL))lQ$mJ8DJKK{Ny~LV%M2q8dTfVVEW&*Gd;VIV!J2?^oO4Ha01mPsK`^ zBo&8d;4>@|$f@AFHIhN2!f(}#I*st44IND-k~kEqkj{`okc!XON~I>1%Bs^j&1SF5 z<@ftxfE5Fx20<~P85S($APKz;ObC1FiBs7|e!7yGt!5hZe2YclbQ*m=Cmhtm3IRnHL04ngdK}M86nkiDKi3$LT1GXF zF|!wT`-#zjibF8TXf7Qmf+#W}ODz}atK}ABwbN$wd2DdNOJ%WOGk`q+hJ#)xgK~d> zRmil1gH)~N4vW8AEGALFS*~KRLI0Tr7gXKh6OM%UF*vSem zKlS^Fcfa32N$v^=EP2r<03d8_cKXuQ`3K(Av5qQ|Bg;!exN)QO$@|{+l|MKJEM?1g z61uAPKPidXxctGD7Ncv?wYg$W3Tquam`P=713q^~1&xQSf?_CvxlTFdvuZ_Q+vik0s3n=da!sEjQGp>i7 zy8YQ$)l|79;rhBsH>4HgBCl+dl*UeCq`l%PFK+Q1lH=YkOKIJ?HR(yQxhA!-wdGCA zul#|x|D)rlzLz9*cD;H0$UYW5|J0O?5i7@&L$j9u%*P9y0*QQHPv3rh3)?VlX|e-k z6HN0qU0$zk#vm`mp@#B~%yaA7a*w@&pe)?n1(n7B2s^n!BieLr4)$TaQ!+ZCHQ{nj zRas!wP{HYO_s$|qs;0xa4W8R?ssADjg58bGvXhqf*TL-KQCu)xf|cnT>P-&^yl8uHxrMbib@W&cP%;lA@66Q8F7%jL`lHOIDJX{FRxI5*S#Pe*yvc~LMs&30H zy7&Gb2fui`{P9j*{=CQ5Lv!EO{E|UGH?}~fy0kq?GT(T}NyR7hZyfmNLYw3@l`3)+o zJMWSg)XMiXvFjIpt?m3eA0qswvg;pIy!yJ;eZ8|O{x33R>x+~oysvg>%YTGXV`Ngyi2?bBy0Q7k^L8d@ gH-0+!TQ>}cQ~dQ;-C;R~;Ku>k87tDyr4^L@AJJ}==Kufz literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_1_1.png b/resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_1_1.png new file mode 100644 index 0000000000000000000000000000000000000000..87e54e17d61579b84c8094482688a0d28102b055 GIT binary patch literal 1648 zcmXAoe{jPY=|#fk14MS}?@#C)wJ(v~=EsAZNYMslJ7 zLoKd2iAOrzFr}4Sslya&Zp9TVT$v^>)-YNcMUvsf%nr`zujL?UB}L^hX0g#Z%+xs0w< zGPPQc!6>xa#7>vo>sJLs`e@9SOnD>%L?Nc@WGs_{V^{OtdUVJl2{{!}zb-LsO(#6F z*@%=4R03eYfE`D?IwWLc#J$X1lnv8Dm{Y+8JA@G)0CE6S2%=*!Ol-ED&-aMMLvs1B zMiV!gGHy2vh1e*Qhp~imj#$N)>I4cCsn4O({KTLojO}%lXp_@mWY0Fc=~hOUmKl0-;(g z*30BpRpFS?Z*vTL{fS5{m&AZdhUjsINyV{i1ui4zv*JOQX4q$nhg|7+B$vxT3;+cH zdI0PI_y8CNAcX)}kX!Dd zF9I?NP{>%Sj3l3L|`r{lF48IzyyG>kcG8i_p{g* zqbrpXxtu>sAB{?sN?fZ|8;v?tXb}mW80wRtA(?PYE=VhQP{n~JK6IflfWero@cg1R z^hZB2aHypT2etPmItpMcuivt1XX}YOPT9c}_o=tL%%Jgs>3pkM<9}BU#fM*5TxDZssdH&GYG=wSbYXS$AWLVgJ@ z5gI=x9Gd)f>32B2sFOz;Ii4OqvYS#@j(kybw5W6Q+2C}`pYMmg_!0$yb(#6%N~A}$ zocrYN-gTQ=Z&a+Edh#Wq_D1)MyxrZ_lbVC!`9sH;CB>TRhJBB#kudG%IcMV-Ki^jS z_2jxm8`Y)Z6}+maiRUP{GT(N!t19t%sw1E^Y9zO0I{NDV@*e%l!+J?Uwp@WICg4gNq9PM z(Vx3sMY4do4}1PTNT}02-m{BPz4kf7=3Ys@Bln-h;kBdIamOkPF?6KwyY<(Gx^@pb zdX|M>qjbOU5903vHybmTd<W815rg4uw5?x%}TKYHHvn&3z zhWpI5t82_%U|)KwjXH4aZOb@$%D8leAir+pSLRobz1FAfr`PRU_0q(YsI;$VSFicR zm%)>-cX00MepFGp^R?*2W-E3l^Mf+KzYMHz*kj~=VH2Jcjg37uEk?U5&E%T8lM{dG z#oCM8IEOWJt3lbVmNvENpL5q~@0H~rr!f}d1f#E>ZmU1t-yxr8!k(3arB}|LxqaVA z+puL~=fGbV!2$AnoBCJHocT@l>xT{3dnX26YYuk*w(H;r*`|BMx$T^?3EtAl13T=) zYVYowGxUew9^hUHx_|M$LHevP_Vgqne75S?n=_gD@%u~Ww|#V5g#CEn2?X5sKX#TM TufJ2k2GnnD+Vb({_TK*kQ3TWD literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_1_2.png b/resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_1_2.png new file mode 100644 index 0000000000000000000000000000000000000000..bf0e448bf06efd2f04eae05938b8e13bb7b56c86 GIT binary patch literal 1398 zcmXAoaZr+X7{`B#ii$>!Hd?r0QDJ*ac6%)SCor9GDQmloC!`APn#TAOKL(=@gS`;BYK_zEdO`Ac&w^9W@vp zIULaM=b$Ve#ugAF`qCuptn$h7+!M+RwxQiv(;n;OYV2LKiyN5)WVD$EdK}9M?LNmH-?e5SB{F(Mb@q zT;x*WJ}ntGs-iaSxZ9ZY+tOh-91k#ALOvo#g=!4fk)&Crvg>pnv)S)(guUMQ=x8#T zgn&ZbEDNfmG@d!~l>3pasAJfE$1y z0ONE3GY~k`YoXf-V^M++C=^&R;FW+F0U!w=#fD}SItl32z>o>XoZyx5LLkL~oSZrZXESX1)~I#kn^CD3k`f|N1+#kVQD7(!ljI_h?I=L(ArYn@+2;v|(Yvv##$tOY$1pTV-o%eENNF z&Cy&u@AuZMU5OvucK7QeVn*O!U4DY{{GJ|hFPb<<%@eitbw6ymF_!&wyK%Lwt9o5g zEZPUI&zRW|Jay)A*T<#eSrJ)B!yZB-YTVq^oppT1%&GE|qm}i~ddPQpmCotN@C14^ z@5F$`-(L0iU(U#wM@=&A>7d2l|dgS85p~KS1A@e+{XKU^JY~N^APT3oE z$JSiyY@74La#><&P8Va#ohe#rXIbMK_0>~Z6@#ZPT)tj}yg)Clyi!6tSvIfx`WKkG-+ifM;iA*)8$V;W7u>HGA6I8>40VS|=-{?#q*{{wMJZ&?5U literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_1_3.png b/resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_1_3.png new file mode 100644 index 0000000000000000000000000000000000000000..55eabd11dfbdb53f868409b33ff481c530935552 GIT binary patch literal 1010 zcmX9-VTjvw6o0qgU3zz%bylpbV%!QwFGv{C3mPHL+|iwp%XYaVAL_`su&Y`mXdHF+ zLtq6vt&&O6D&?q<57h-$*dY;u1j*qEMKUQ{2SJJyR%Kw79^8jR{$>n*?>&BB-tRqr z?|pn`H9J3hY!(3KS57ajMKu$}!|_;@?Y|b^1cdcE0hJHFoy!_jz5Q^2tx3Uj$!vQWT_ zC8|kYBhR$Nc-1l9h);z>+q=QJT@$hfHzO`YB;^Il!`^!RGD-!OIBsJrSh&W1!c8Y*9Ufa z5Rv7$uHO6_WGuhkCyVBF_G5ing!7z%C{ z$VQ2?E0WvD@7YGrYYcn-czh3W05X6MU`Ce!um>=}07VdaRML@cp|B?spwUp{z{x@= z0+Ik}DO9DAB_gMQIu#UJaNl?a1Ri7&E2t@>NY>13%Tisp90c}o7@$Ziod>!!$C)Y7 z!WD~YaOsCN#XKI)B#BrrIZr4l&~FGzGLFPKKbsu`|b3w(PR`e@u|1OYjK zLO>|;q7unHK)PIN35Rp`eyZ8cmfMs?O0iPkRE@70IETK?;rx0ySvl za3~O><7b|m`}h72yuY?8!7F#~Y(?aom8Dbb&wT#Q)l-k`J{6z*@24BcSUd59d3OJ? z3(GfWiHFX0W5@s8y>j-;+pX!w7J2+!^$+>()34q5=gPAmJ*u8K`t^eQxcbuO#l>4c zpWgoP+dE%vWH%RYZC;I|`QpaApWZ&Y``xvZj`s-%=NB&QzxUS5>)V&9Uv{4VVr!e9 zy8inMlu>x&lKlPPMgG?({@&+*T)jIN7B2p5-i8FJ2b)w!)=dEN?Gw$y_$+78Mn|c#%#J z8X5#KL2Nj=dH_jMTS+7YD~|5i*xsRp68x_p6?&u@3W&$ zDK8rS)^GqoQEkm^Rd!C!*7$r*wqHC~QwsnG)XlA*lU;Lia&mKXIUG)2ULKdr9X4zj zf*|?%`2__9e33|mVG@~)peTh-r(qb{VzD@#ZofYe4#!wFl}=+4Ku7_pDAZ_53rgj?by;K~r#j-N*&b_>^<+|Exd3Rz zz(@c)g?MQsWaGuXCFzI&CM7Vfg+q1-!y*7k0JI1~^LS=~z>cCGskDnEd-VFa+5FJ$ zhM|xED-jWV2`Q9nQ8_JEn=zeT%D7|}pTZHOJP~bx)eCWfL@tt2VucRZ&@$ReTHRWA zfDS~>Vb&2%dJ~xtj{qeU;Ol|V1W-GIyZLfIstFNvRBcNzo|HWdyGU_~4i^~ZVw+m( z)yaYk6}9N%PNvUiNrjx5s1Npqc_lb1R%5uHkQph;rqj8MM!(G#a=W8}Kq3}PrBVv>U`O6XCN`L6^SAXO4$l$#^)Oeh3Kw)BrF5*a7eX&;vjp z0$>(W22Bj~c_14nQ9xtBL4bf9uq1#KfHWW4Fz6v+zyKpw$a=sl<8h#n0X2yjbbPZ> z?6Awd9$heKiAH_NWE5t#1bTp(3JE)(^a!;9lxC&&l*X4f1~bmcP#^*0DYOLOLPRd% zX$YZ#!c2OF-E8nU%t4(HG%hf1|~k?T1= zv_bP**U?e?HqSRYi?!&;()r0hr{6!^pqAS^c!AdQ+RKv;k?E`tiymC$BkAU65CIFFlHO zK3YgC^LMgnCyur*dQh>6)AXWf=ZD9eD_3xv(w`tNf0#9IAML@8IiLP`jdP`{{rS=b z1A@-aj;d=nzklGYVdM}?*RfBY7yJr4!WEP2ZePru$n9ACuecsP@eVWVx>e7eQXD+6 ze&geL#rfwO*ZzEr*vMR1*)O{>sqyz6&&qCeSB(CO?`VJdeIK9jsqx0Ss-CpJ>~Z9V zWyI9R)(u$srY}#Hja=Q?6FfI+o-(%Q>>#}$zm1t|+PY#wV(`TdrxzJXl_uP$pUFEGk)1=oC`MAXX49nD)+=_R}G zl}{Ttetk~3Rj{qCti9&)`kIm7K3rQ_WshwungO=2?tQ#`>*f1o>s)19Q# ddGPl=LWOospR;4Zlx&Vb?HuLoQ?nXc{s$@AcrE|{ literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_2_1.png b/resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_2_1.png new file mode 100644 index 0000000000000000000000000000000000000000..148c0600ac7f6ee9cc9ecf974194da6b4666f4fb GIT binary patch literal 1178 zcmX9-e`phT6o0k0*IFfD*s_^zC(E`l56QNJos!N|uP&`OJ?WKZn90d*8YQ}$Ju!}` zryg52qntBh3K;}@uxuPNI>kdW3>a!R;&w`hQLZ#-Ml;uG7*Pw;?YoHZdB6U7ANYLU z`*Pjdz`QvN<^aIFzTTexX7x1#?`Uo2Tba%QnOZrk-ngY*II2afFug`ANH z9*z0p34bchWphHlAeXE}rK&Ro7W8*XtV;>vn&{2Q%_60nCo?t~PBr#H)i)Vz4DVdg1 zw3AjXTbU_1XmIl23IiSkuZB?>S0LvN6==x{CMvRC*NW&YM>s{w9SsnPpg$`zd6~CV zv7C~thFUMAW-J3$iw-B{C4wXsrkNzokL~>mEy?O;fe7SunYt_EF!v;D3R0xSzXNMRm(DJH48Pl z++iSNU9{%nbX+jKlI_>(A)^t^&!kF^%nB;ky-uKTEZ}p5XgtD`u`sJC5k0BojigmH zYIYGdDiq5i6OauEHNA*8>7K%^#?sX)l}eTV?&R2f>;Yeucug81d&MS9>j~T>Q$l-o7=x`zLCz1&ik|s3Rkv zYpa!)+m1fieDvRL$A+;^=Gc$X;jMGa-^3@LnKzM`Y5E54O4jZSQ+e@^`2H_`x{scX9d5hbyYJ4zUtebiZ}slQ hhpx9z&tG39mGoEFp1(({zcdAgzEx{`POaQ{@P9VL4)p*4 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_2_2.png b/resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_2_2.png new file mode 100644 index 0000000000000000000000000000000000000000..dd2013180ed0a9649327c44a6e873f6e62d04e13 GIT binary patch literal 1204 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 PcF^PO?LM(=-H!hOlD-v$ literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_3_2.png b/resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_3_2.png new file mode 100644 index 0000000000000000000000000000000000000000..01e8a2280f9752960d80aec98bd4525d61493e07 GIT binary patch literal 1073 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 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_4_1.png b/resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_4_1.png new file mode 100644 index 0000000000000000000000000000000000000000..d03f019baef0b6399d4423a430ffec8ad4ac6b77 GIT binary patch literal 1620 zcmXAoaa5A`8pnSs35H!FR*<;MjJogITX7ei(H$k~tD<8`_13t?HkxmZ4DWgGE*48# zSgg=!vcfZTY+};FqQW~*F)v%>sO$_KaqNt))L5hBmfcZOqcf}D=qsdfCC;$>Mkjv;w zB}=2>>GT4VS!}b*T^^OsuMLLGvA7dMsR}Wjl(7v8o`pahT4BEt^V<|b4;dXYC8ExB zG9cvw6$*3`V8N*_lIk}zA}&@c$b|_3OsU|M1;PLy0673EDwSj~3|y`SL7ZZ7zg#|~ zR!0nm35Nsv{ahi7FJTMhJh2LqlBmKUBrIaB9W%ORRv+#Rs=QG(Ps9~S`C=TE5h5jt zktVsxp>lXhZ^#gcT0;p}EbV7V01F3fHQ?z1Vxfv0Y^euP`XyvYVUB5?NlO6s%TX2~ z;_9TRSs`{2m`{s`j6}qyjk}FWzbzed!+3zf5+SHUC{jx>9gdp`!miVK%x1sC5%PLt zqoc`W5&|v>5F1tKVqiWl9z@kK%oJBT6FOhgGMe%vrXp!bM;Qzen=R$>aa2Hv#afx% zq{G^kxKahq_TT|MMBMEv$dB#=r?KnVZ}0JNDm z0Kg5v5CCy1fEmd#sMkWb6GkI)1du{tl>o04MCAbD0FrEI7DA^SdNnX;f>9@U7Q6_^ zFrbiAH3ZwBL#-C6%Srfr#!$$eNQ7Xn4gJzZj9%bh%x7a^l!OH%1h>3nHhaLOBl zktD(bA|6#LU??R#4KCEHWfp_RX*KxV)==_Y@>Gz*8 z(73h+2PNZI-_3xLU0q(fuB!EmPgd1A|C+z|Z|9m9G(q~b;n*vUqpbX{jo8(7OFNdA z6pV&nI{eV|pld#|zpd`oolSo^T3_(g(rubrc0J;$J^1;84*M&A=A#p@b@6YGJ@{rW z??P2=*T}qykIvrS&54uD@U3?r*U@(0u5Vdf$s(3At7_kQ6gG99;mp}|7clqaS$=a~ znnPT_FlX#?*`*d!=fVx@uQ;@tZ}Z1~Am=XpCc>J(Y}w1d4HOms4?RCNv+==kdhe$0 z^sA*WRF@|xdFpG!CHckKmrv7r;&olp@qe7yLo3-fyXu$XV}-K<-*(&^t3{gnS6n_! z>)X?}@8XX7;YC{?{i*eNV&%`A!#!n%$~Cty{Re*5o8;84A7_^JlxR)&n3ls2WyGC_ z);z2=MKzp^j3mCooH*@8Oys}%cA{P)W9^9mT8C#$vM zqVqRzY!J6L9q3zi=GfjJ-xe(#n;49auq&@r(2V;Aj-1SO&`wUS{H)?h>;3m9Mb*!# zyD7!`EhE=Ef99mOeNd7{-e_;0xwzdvcJgHp=gDN}52Zbn-nL)0Mc$UqHDne&kkyb) zY3}*EGHAX#8xu6wglD6NKAh@Ub&Y@Z8d3S6;_0?KR)KBPze~q29DMvqxbSgN8*wO< z^Up$NgYnUUTPu6d)~($QX5Q1^s&mDdcb8jR+IQ0^4V>*C_r)ulmfU#j<^a(*-Z;rR zL+)H_*w?z?UWt^0}xv<;4Y9qmOpU!JP(x*uuo48N(1@BH+= wu)iqNe;**~UG;14Y^5VE_OC literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_4_2.png b/resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_4_2.png new file mode 100644 index 0000000000000000000000000000000000000000..5a61c4ec25e27efa91e3bc9d5185bc0224de3fdb GIT binary patch literal 1391 zcmXAoaZr+X7{`B!3dS6E)aay1CvG_3l8V-QMTLQeMDw*?8!NV>e4ETr-qxniCVAHAq@)`b-SDDL8|}D@GgNNVg~d8|v+Xy!?mo}+-1E=#{p0(6 zI%{j>`HKq|0|4?B)s?$5bA6`PF=&}y0vRI!&_M0Zx~j~&XwjmqtSlOhmYtoQlarI1 zn@gwD84N~VULJ?f=Zi!_nM{J?N`g@9^`yyUvfG_ruP+!Ji^Wpuv`7dfVt^@`YBgJ@ z;~9)XvqfxoU~aF*AJB&*mUzM?L+C0olT>mj70*ftoO;oqNfxlH!d@~KGACoM`BYHO z1sVhxB*2Q(-6TC=VMX2SbeId1LYUUT1uKL>J^&a18akb1u_!LrDiFBD;z0}xX|+*` znsGW|Aix!|`4Wy00xKPLa^zltIv^nj!HVzFL{nKhYX zMz6&da(iRJNIEV78YNwivnUPEszV$`iN}ol9omqGiUu6XXfU0gff4{z0O$d*0^k84 z1VDlgUKXT?v7$ZEzV&;G8yGQT-B2UW*d%Rwa`9TXYxkzS2~7OqA5w(7r5vfd(QvtE z`$rGP#|x*bkAV`l^xi&{E?;)_#53~P`gJ)I#fP$E@}~Uk+mr7fi2U8icF-ECPi85w zj(0}Q6{UBtG?MR*VB>eoa=Y8s{(GsLQQxwRIP|i0a>)nIj=f66Pe) z=`+L9T(r6VKiip*uf4;|6b!sqUZyzteE;Q{zn0t|>I#Ab_{pb_<;~Kf>%B8?((!A} z$oBS|9c>-SM{>nPqOj+@Y5C^QHntQT?XGR&?CW{?Pk+T_PwI3_&*aFO#-deSGi95z zSN=MC@m%LbWMb$Mr)c~zo85OtIy>CPdW-mTWc$&BbG5wHMI%z}#~m|?swcOKXAxuH z`BfXvTCve1z0U8JyNV_~%(flhuK4Cf{*97h>XXu5tpDlN!y*-{ zR_GlC!z`@hs&vw6!MIgDF_Q{W<5@?=99F3kS%sn~-F97XFrZ?-RjV@`3T4)q*>4< ztfpdCA=s&f2CWF{$Iw7V`#M5)6hH)!F-#2xvyq5S5LJfR62)dR*~w;iD-~o}5h@gA z!!Z$OWP(@8c$QLhMk{kULnt<+YD+fVBu+11uU==5vd zp%r8yBtbX{cm@a^qbp&)P9!W=b>fAtR`qlnZHZ(^p(AOYEX0|b!ZkF>$tj(Z)-!UR zRT?@5>e;~%O^|VlPO@BDk_w7aPN(aIf>o(FrrB+`J_CnjwQhIvnQls6@sThS3BuFZ;tX^+K^(tGl){=&~RSm?j0YGOnk{ za)veXQlp$~8rhCj?sx3LU>C6faR3cK2QUDd06h$l50OI|4H;GBc0>YH3W_Y4Jh&nt z36L5_1qxL~WTsFnkK8I;3!VmngSd#LlyEjp7InT>RT_<);~4$EgM6<@5~$1!tB1uZ zE}MkvGP;*A2I<@sN)eKpmB_k1rsculBi5l(6gy(G21YTj&1Z^8x6X&ARrTv z3kdmH55qpSgPe_y5{Dj=?9FFYP=WD74rAGJ0=5al^W^+}UjYabI}$mv1%>U8!At z;EuhYmw#Np<=_jha(wC7)9-!Zb>4mQ(U{~mhzlt8a@ESLJ_S>b-m!GZu#?GDmH@rFZ+`)hN?Z0{6 jy!EH__J`ZMS6Z>7xn|+h*FRSLC17!3dH&MTM_&3LF_Fg3 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_4_4.png b/resources/g2/track/rmc/large_turn_left_to_diag_gentle_up_4_4.png new file mode 100644 index 0000000000000000000000000000000000000000..779b836db378493b00cd328db98150567d76e8b9 GIT binary patch literal 1288 zcmXAoeQXnT7{`Bm-Sf>j%vpg}R^+OUp|NSrLDE3V;%@qOG%~FcuXR6&Dwml$4Z~mX?*3 z&6+g}L6GwD@`{QIg<7pfQ5{JVG;LrQ6UVVGm&@l1Mj}yBOs3Phd>+*S0tb|#%4CvT ztty*c=l0;f02PjyV{tAac`_3rQi~YzD%PNI7*#x@33BL&i;Vk>i3pn>b7#|`>71xn z0<#v_2*A@wm__0qSt=~gCzLR&gLyNY;UN^&08jv!5rmb=97-jx(S&e(grdeQmXyQs zAQ*)4xDu7C35AYQ;bx7V)fycr!{c0lbO{D;j1DEt(X>T{DRp`^PHPPeW@1U!O}T^S zV3dtY4l(VOvf<2hTt)yn4HOojvI7l|U_pgGqA|q@Rx)}rTqwtjaD>vz8BA%@YduCh z%#bmTmRwBA$4v;XT--M;32;J`$uW)Ah+-Ckw9&MOVFET=#N&wvgHkk_NhWi-90W=h zXnY77mXR?fozPk`qOqq`m(l`IdlkVesF2DW)v#%t&zXe0EjH~-%tSLVmD9)prb6^OnTb$Y zY1D2p@D6Lp>xc`D~CjaOv^ygZe z8$0UbCmgOJ}eCQ~T(g1?_3O(D~~Q{pAY{8-n+Ldva6S zEpF0I4c9rZ&FyNb9{11ddZ}wo>5uf_6 za-A*fZlkUE-;+xQKkZ%U?Didh*m$eYf3sUNzT?nE&yQ~$>pzoe*fZT%{dMo3wcqla z(Fz4!@$tit-s(MmaOC>29ZFKqGW#iaS`OGC@==0%w^CCN(SA5$_R~Ikv zp`$lVTQ7f?ibUoNj*f1UEgL-Fdw+XIw*1AN-*g^0JoiBQ%w}@I$fA?#>NO8){d?=i zK=b2O-4cDaQoVd$+oK~Ed~Rcl!AwS?sR{QBql{_%O9 zy(@aHt&?X=1^~47yxzUCR%g`$Z*HjN^A8s40B8U!make;8|&)o>g($p8X6`|n$+0X z*woa7AV_m_b4yE$-efWn1Wr*T%hDWY7X;qt^Myi@cs!vf*?hiSsSr3IEr6jlcDv5y zGP*suKVS)knP}XRObHn^P#Bdd46#`>JgpaPMu|fs0x{&HQXyL=&gawqQeLi>6{`U_ zFyJPE#3E51Nd>gIsIHPRz!DBC4mcq}sF(m?0B|4(uhohMgM^~8#WKV&X{R$Mier%o zOr;Ej&P3{Q#%OV%Rvxp71SeU9Fy)KU!6YkZ9ErTsXg1(hlZC}-&TQu?-p}|Wj!1$} zsG^b&s-q8ybJ zSk=enLc(awS5AehY7CAlTAdliY=qfKQf`(Fa9r5!jt2s%NJLE}3fXMAT!z5F12lvX zQ7x4;uo=u*p!}nDx#UikrEDc$n#fh52GeTIdcD6n;Hg-bc5QW=9J05$*w03-ln0HgsJMF6acp`b^A zF&XA_3<`Jx1WAyvf;p zsv0YmR9N#eI050&kdmH}jgAD$=Pgp%9;>*M)lg<4QGmHJssm;tV#T#~(&%CdkCT=} zmmCz6v7oBNN_hoV3TB#y2>|l|!Ws*I&F+Z|K2Lab)Eo{yk&wwyc022GaUKs(;65`R zB8eD9q-Z?LU?rOgI*d?6VVHmk5~_6V_|2V~`;UKM+sa-RymtHAyS4uFp6*4f7Vh6U zKp#?OP3b-#={a2%<&N1$AD!CjEzT?6T{_JudgULy55~3}I9C7Dmvv`eEIoxhobErj zk7m~ki&uZb)PGBFo_wIu%k_UT`$Ev>o^t8K?=HPvwzt@4-f8vE80kA9ADj7O;K;li zZRw4@qr+=|i3W-hY3}v&iM&$G>XZ2Y>tP*7(EL(;MUC)31E+(oW5;6Q8xG z5BD9&^;5gfPMfn+^H2Lw@pxe1o^J4}%lq>y?ZXD4_~=4%%~01?TXOU8_NiZ2`n#LP z26W=O{vznpSaV%#RWF_XbQAtCaCG;?f;Y$in1667zLi>*(ar7pSiUtqHUF0h z?WJ``#*Sl0eM_fGVN&BME1ZQk-i<3)O?>1tJ}&$clgoyGI-^{)Q!qdV7bZ|a4t zXVLXFXN4PcIyUbe-thOpp8T@veplEK|K{nDJ<9ewZ*6NYq9?t}r7QN`UB{n0eedQ< YnBC#W-?7eqrUni4Ea~kYT)f`=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_1_3.png b/resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_1_3.png new file mode 100644 index 0000000000000000000000000000000000000000..43cf38713b86a0c7014d3b2fe6c476cdb189419a GIT binary patch literal 1340 zcmX9-e{hm@82|26G7I75etiYIwwti8FHNsSB@C+RzVt+&LY+j}=EwATwgR%}vn z$xT+TC!N%oqYdw{k)kfej%_&6Fmd8;bEvP5b)2J|N*fi{Zhph_?(;mK=lSRP{PB4{ z&9xiU+|sgA006gU?W#>VF3%NKT#)Nc*Q>Yy6oA^-H?PjEd3kyH`S}F}1%-u$MMXuk zX3atnq`0`aq@+Y37K>3-rcx;hLPJqnqmi~+txl)g?+=8-LoA!lWKbDUDgdtGXtjKU zL1Z$^Y<7jyg?s(FV8|Ga*%L{RN{WyQ4y_SbND)Ix+(xw9stP&DsGnvdwiN5hro(C> z&`E(w2^a$L(n!e8i+lN*s1T-PFr$Oh41{4Z05||T1fh96i%`f&Bp!vL8^?gkd)>RHpqIwBjYikQ2`Q143xlP zk~$c**Fyz^)>zD!O2uGKOQ;8^nWJO`xJRT5NN85Uq_w_`DVTLervnKXPfPd!6Cr9D zPpcFe2-K|CFcyQyVF~&iv9K@2hG8awX*4hZAPXSOd11@RJ%-R~b|sUT%lR0_XjG-u z5(WchHq)rgipiWx)Tcs28rcvoO_5@#6G4jvx=m1)7^ohOK9E*y-|>ndS1~?{L$X8<*oI-)8**1)Ij)6VhOYE>N_2u->#~T_{ImXb_M&Vnn_gw(2p1tGCqmjk|`Nsrq;K$&2(DqCZF)cZ^K@ zESNn>O-UvnPM?0cg>0FMt!%r$@B%7_szpru@hdwNUy^X)0ME4en#i7e0Z_Ag!>XgN Hz4yicyV++$ literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_1_4.png b/resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_1_4.png new file mode 100644 index 0000000000000000000000000000000000000000..b7157817dfc4a98cd335022c3b5583298f00c234 GIT binary patch literal 1620 zcmXAoac~oL7RP^W(yE~f z9`Ot`l~CfjLQYamnOFiu4L0r2GhpT>(txE#E@(X>EKaDU=A>%mq8Co)*o))L_q{jo zpZERa`#$};CQZe>CG!9P71~Ye=EAHm6vitlbn#WG1Ar2sYiwyKtVKmd#l^)XB_$jV zr?j-RtgMX71H0ZZa9HR?6vgdcFQ|I1-OfF-$g>gOvbP0Rk^K z7z7rJ*k)I{+$yh+2!@T(m^G1fr)L6~f~!}RQ@GHf7t3*_@HRN3(2P3IG9sk;|p{e1}Lx%jE%;>I^|l zn9V7NW6tkqV=)mdkfK5*AyygX8cLyez$RK{^T1*+|lDGWl$_u-hH;`;(DK zdTJ`0&9Xp50lAk82l-f3L?#sGH0GKy1Twa0mY&LmGxt(?wp_vIBSN7@EF~36lS*a9 z374^O%pP`oCW2ump3J3DV8pprlJ78zX^X;VM?)?$>N8J-9I2QulZxkZb1Vvg9snx< zGyow0CIFb>0=6ImW9?Qp6kwSYAqNx;JSd2007C$l1S}ta12*Y5sHjn${NM2L(ckOHiEKAyzuxXw}T7Ehp;5F3sq#%fQ z`TeoodzySg)G`0;yYpYI)Wp`x*89I~P%|%htGd(!DQ*3+mVwmVY*Wnw!2`24*&wF- zEca%WY=GqbgSX+K^MjwX>$J|%AWv6yboIy*Q{`RWr|lJu+NY$`(z5E)t2S0Yt{At> zLH=9qf9Hh$vQ@nq)VVL^7xxtLT08g2#+ie?x<765^C)lXxc{f4Ck8)lx#Q|+-mV&(uIM$EP9D@z{{)k+J-rMrmk+!&A zGUk@muUKC9((;FpuAb9^#?!SYkq7>KZS(Orgs|k>wbwpYLqE(5S6|nC0u7DJ8t*Tt z?OfmEZtlZB7=$>B@a6vW@R15Pw~@{syUcm?;crq~r&dDW4eDm!`RrP034K8syR-R4 z)Lq`uen#>kQV!jGWIy`*BeOex+cmJ|Vk7>aDm<|Fzhu62TwZf@%_|e_(4=tV$*-ix zuZ`6BWkWZpLx-P&&ReT@{_{ZZs>A!tl99yy8_zwwr|ZMUs|TKWOZ{aXH0r%@X?xk? zxu^fPv04>udvg7wZEF_zCF=F&qQ%dxf!5Nk@vXJ5u3oC&nR{_Z)A4h+rF(v?6<_?@ wu1(b|@7@(};$>%Rp@U~-HIiZNzTCM!hrMat=&H)4#|vlxZ9|iKxW2Xb|J2gAdH?_b literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_2_1.png b/resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_2_1.png new file mode 100644 index 0000000000000000000000000000000000000000..1cf46d1ec664a4153a50176cfdbd81544f887b6b GIT binary patch literal 1024 zcmX9-VTjvw6n}TUyYzP6)zO_D=0i>^W-}W>;*6RPndU}zMlQ!?qs&YqWY`Y{GmX+g zg=}_Eq|;1_E2FS}h)^ZC4i7F!83hX-SRqQmPU7r`%IX}fNH+?eyT2KO-+PbWm-qX@ z@4ZjfR>k>UPwoPM`IV!~>*3rR)?zdg_6+;S9)Jj}y>aYFNGB#HCMPE&k;v54)b#Z9 z%*+giVbN%Gc6K(AOePtI76e{VBwbfc)5z!Z<#M%N_gbw^5DZ5nh6bJkS(;PTcqT(+ zb9AA|l`C?st~Huw+b{O|jzD24ZqASrR*JB7vT8CLd7)WOwd+Q(RTu=$c-Rtg&?w0A zU@KV7z?#Kaw-z6@aWtUONJHB;Laii#44`3{5sO(kZj+?LaT~I{l}>jp>rS|6P!kh29>fH-R8`Skawk0Lvh-g7o-Umr^O_vP?FB7hF}!rLRG7JhUZ(YpyUr~ zy>Ty>P_UMx1NRp0Y^oz8GLM1UJWmNBLl6B@YErqVs3 z&{v&7wlTCjqxxXGJ4SO!I$Di~~zxA{|qCBBL<5v}9Wur(`wUlHYO%K?{v~tRx{1 zPyh&pSrkIKN5J#BO25xm%8y{S+k&bpnT(#x84R6g=`zo_0@IY}j!X?wNu&|TB2k4w z9*=w}Jbw1z+&>S0;Dhy51rFc3@lHstt}MTLY~SbKTzqTc{L*9RzdO5j*K!Umj&BOl zr=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_2_3.png b/resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_2_3.png new file mode 100644 index 0000000000000000000000000000000000000000..5c9063313b270ce408df8023d0bfc526a6b5aae0 GIT binary patch literal 1247 zcmXAoeQXnT7{`C??bel1rI_L>HdvBI4?L2CROrY7x7m%;-P|z?7A)ZiRhsRDTdY#0 z(Yh2@mO~3EP-fAJHJni8?ILAVDBBE;G%%&$F$-y=;*bi5R+-7q5|Z!p_RsVEl*3+0QIdcO&#TGD#y&)%5v_SwX^|%O3?no^5*h5Y0{*Mii*n0%BrfW>gwv6 zni>Q_YHMp%DwWP?G~zf$k_5w0ENka^&gb)mLXmh}N~K0+xu_^O1_%qFDYf0Mb-4^~ z59SY8LSZ@uK$Z0R^BkN696v{X!4^}vAw zHvt3&iE&6WpvlIxN?H#K7*rf^LVz%31b_y>fgqelWlRl9OCYWg2A<0gIS&vzb76zqQvz;S3Kkbh=A`&NM zyeT=DDa3N6q=o=m2I!o?-~lE9F-LUPxXGR*xQs231F8m-xc+HkXzAl(cTVA-(S9S;POkw`|8a-*ZgVi5v82TUOZ zk7>w+o=Kz59O=*7qXl=OD2yuc!bG+N)u={e*6FMUBZFeB#llmx-%(!Xi3frsvACSd zC^-T+D1>J;UWY+&p0AK@v2S5No1YiV!JOW@@GzmRC z6r)hi(k8&+AV>ho3S=5U20%^+12~M*P;$YvAIeei0K6GcB(Twli`9AEXi%`mqHH4J z%VfktAp^@^dMCg=YC_P_QG-J=ak51y+C{~kD237!QVwQ|CM_@<5G$s!69yN9dz_Tu zbwz{Tgc!`E#DbiHO3qACPy$c}5SCf^%XSZ?_j$tkyg3|tC_bGg?RLiHVm%%X$9!fi zMBpNcCn;={MhiA0bQqx51j9I#2$-SD$8VmazVqM*dOF$|u=vL1_2s_5wQ0%n=lX{( zw5~lfcXD;R1I)_7=llIVFP^xm`ufiHbw6SL#rr0Yb*gI$&G(P*+}x=&(%5O3_!sMb zXM9E9#T6spoGRLw8RPQ?_s@@PT9Upy?eL{N3wHJ_+`pH9`>Qvem_Pg;`}E^e|7zL4 zd|1`zj2*Yf8X(lYtQ;CzHL90`qm!Wb?owSf9r;m6g@FE#Xj5Fckbe$Uv7mg zu8$T?tvbaX5HwFgRD60m#QsG`hxAj2xj@^xG Q%alNCb6eA)rEA{*AC5mTq5uE@ literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_2_4.png b/resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_2_4.png new file mode 100644 index 0000000000000000000000000000000000000000..dd12ee7d4752f91d01d88c3384aeba254d14d7e6 GIT binary patch literal 1326 zcmXAoeQXnT7{`Bmy}fi)Eu%`25(-vQwZH*KR^|b>Sw`7z?uPxNumY!6=#~R+QlW$r z3Kl4Mx{_3>SfnEbiz{P<$|@_QV!^7Xj#;FGMhdITkTSY3!!mxBkbIxFf1d9jpXb?E zU#BiBnOp(@D63gk)sU@~*^n0HWix$!{r~`ZpngSTb#~0j$;r*l&CAQn&(AL?C@3r} zL=dE?sHnKOSS*vtP*h0}I7Mk_TF0`C)oOJ*-F|-{9PW+B)0qsa1h@*2no^xkWHd@m zW~I%pa=J*bUmpyyQQn?NdI$xgRh2Rtu|+H8Xt|q3yR1aWsg3%Xc*K^9dq&e?wFKxD zz=Q*iLc9zTvI}EgQ6?&ZDJ9J4;TQ*DSOx$IfF3~@q0l0caB{gvrRpNdh`|uESccqg z7z#;Hkqj3rNvTRNS2GH&1*JI^>msZ^jUz~TqWVDGAjKp~wM<1RG&H7T2*yU*+9eLo&Qab6lVPC;NM2%seqBQ3U=6b?@9 z_0YkfmFIn_6c4jr5(7ZZr8p-hJyLx@&csz*TIb7{f}_spSResoX}JhsQbes3>Ts!% zLd^yZXEAylmY~nUhkdDd7-kZfMgs!?#sP#`7PhS2GfAvwS2BsYoX^BYql8XJ8I82r z%%DmurgY+{k3d5jWiP2nX=P9^g%&wu=6@X96kcFq~!)>d0|ZoRA3FgO2LU&rMQ4J&80 zpL#OkFa3!9_~WDXvu;Wkz47v3Pr41s+%{mft3SH2x_kBA>hifQ&Q3#m{I>XG?(^d4 zJ@--f)K}0)3+qJdRSRaT2XeODNL7yY>jS1uQqQyk)1Ezt&rkd3`|cK9-!~k$d(};Wpn1iMvWr_v zw)M@uR&#CWRAK$kGtO=u8LTWC=C4(ijbELrzqsSZY{i_TZD&5K?QNX7>%_t0V4T4P@uXJIxTwW!3vzx#fv-PhGi@4U^i1kqa7SjM%7afR=37f zsG&2(9NI`bD;CmV14k?}v6`X<3maI;VFoGY{%Ew0LMBvbOcMwBSwix?_r3Se`~LX8 z_tA!KOJjX=JpiDwb8SaYm0PN{M6IlLe0$fA04TwRb-in0OfkmS{KI)^=AzL=V$>aW_9IKQv7Cmra zz)b>yLE;>e4rp?5Z8@ulMH4JL;Isf?#s~lnfCE7|jmE3j3n&^Rh*6pzcRF)k?^HAj z(`h}fHIh0LZ6F+|g~M!KoD~Q@Lit2%FvY~Oj->1~nDr)$kzg<@YqoO~=coNqM>NSL zC2vL!O2v4-lGczw%K)7d7(4(K5OY*#Nuc&L$w{_Ao{yD;3>>8~Eo;`hEm*)t#91oE zGm?+Zh4_N#E2TpfNrZ)rMr%ef8*X-zl$&7!EE{pV6M;ZF8kLgC{KQ15RDwXy0W^f* zaSfHyGg-`;r~Czbtmsaago$#ZIGwA&227(d>vR@_k-ex2N27qlL68JV3y^6582~vQ4B#+E!=wvl{ZNj9hsK+Ml>#;zaj`nD8w(1Sc#KV@ ze3B#74-gG?0Rhju{+Dl#>aeWEacsR3((1PUc~*gld7=fLKf#J85t+xW{P~ zyslW#n-YUkMl8x1Sk9ZRR+t1(1`t-g@K@y?LGSZK3I%f{^ay-5OWEy=%f)&;9B%TN zO(7B&DLid8P0(1;W`qs{^rA3=!z2kMYc>4lr44r<{=lxDZU($`sXs?JmxfQCm^%98k-Frq&Q<*@ zm)Q^P$4-rnG%63z*>!x=fdxBfUMjr!m<>*J+azQePI zw{Yu6mVDZ@dD#DY-|mg?u87YL7y8b=1-6a8d~o1{3tya>U)a(rQH-&*C*HDHz2`{! z*u1-24<0_f0C^)k;@`aQ%FefMC+f%U2F_{pr{1}6Rad_J^n;%doi2hs3-6p=_UzFm zr7M4mmnP@_gGX1I{vG_JwW276aYA=&+oZZ`EtQ<(=#`BE}R@YKe}O) zI5CL-bgdSxYyMqzZBb9WIl;G2^`5+^YMVLs>+M4S@#O|h+y0H4cF$@%@x7{XTa7OOool)~zFyt8_kY*(B2WMT literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_3_2.png b/resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_3_2.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_3_3.png b/resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_3_3.png new file mode 100644 index 0000000000000000000000000000000000000000..fc9729d362bf32c41c297a6b7f0018f3bfc6b106 GIT binary patch literal 1258 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 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_4_1.png b/resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_4_1.png new file mode 100644 index 0000000000000000000000000000000000000000..684ba4318bf6c88862dcdb57143afef12747d30f GIT binary patch literal 1224 zcmXAoeQXnT7{`Bmy|O_HR&7E}E~CnYousf6k6Gg(*V>IE9O*$SYeFGMtfrAO9j&JXwif0-yz~U%SEHXq%dvnwy(jT3T9LTie>& z+S}U^1kveqbLPx3n$2c{u+TKcaSYG9MNyC>DH@HZQt4c7Ler|X8esvH6|hXF+imdq zP=CM@3R|NwHktBdvSL9Em&yqmM_krUfiVVMsLW$=kvJvM*{G|K6104%q9y9poWle> zIPgRCMn3>+|e0U7|9jF54oBZaxMl%Tr8B{5NzbMO?48+g*>ci>@{HObQ% zky9nU7!}KkRLw@~sshV7y@AAV7eRU{+Rt%eo{#zcsc<+OkE`i)X=0*UtwLZD02W1v zq@K>0xB~7i(V?&CW0hjAR-1wp04@MT0Av6Z0P+Bo5da%vX&4Zp zl7L!~#ehJ72nEs(ps@gQ018GJCSZbvX&)?vpq2oS!IOZYfr~|ayfNsLX zRh3Fbg$*y07Z8C?N;a|y)RV>p%_>*jO3k0CM+-CQ5-e6R10YevVbQxO)W;D4FCzzi ziAXS`MAV#8(Q>d>A{hpz0n`A54Hlt>-4mIlK&)IQW6>uP3kBNk=6pUr5D*B9L|UR0 zq0mH@u}rXd#bt&b6b3OEBVd|>D$_WAa%ty-$3L*cxsC&?ZeM$=Q4jXpUfh1fl^tL*;5+|-Kd}oP{`{smm`o$B~J4KIS#~R(`yC1%*J+kd; zhaL3jw~wSrYme)-uI@$WY+rW_Ez*y_xBJYIwwVv=t9?hWoj;~~WAUxP$QNkeh<(%8 z%g*}40A`6Y%&J)>RuwvBz0_5tbm;gQeg=G}vbj<~;CI;9@| zd+7Lcw_1KWw&?p^{%Z~=S_4^A)Jv$OZp1J4(_?iJ@7Y)xI;{`qdG_tu`%GY@Vb z*Yz)1E*;pOUmdzM-qrik@DAtZ>&tge{pO9~V|UQ$z~1$LeboDm ntNWbg{(>|6b<6*2oo>FVta|m!BiD{LaDaaMI@{>#EuZ`k7x*JE literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_4_2.png b/resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_4_2.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_4_3.png b/resources/g2/track/rmc/large_turn_left_to_orthogonal_gentle_up_4_3.png new file mode 100644 index 0000000000000000000000000000000000000000..b8f7a1762ad97ce9207fefc2d69ff5808acf8053 GIT binary patch literal 1557 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 NeYiQjeZ%hZ{{yLUXaxWO literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_1_1.png b/resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_1_1.png new file mode 100644 index 0000000000000000000000000000000000000000..7bb3dd3c022ffaf1fe473343d81ec868b7736907 GIT binary patch literal 1843 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 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_1_3.png b/resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_1_3.png new file mode 100644 index 0000000000000000000000000000000000000000..275c9bd3cf6fee327a2840fe3c6c1caa0913537b GIT binary patch literal 1082 zcmX9;L2TP(6#lz3b-S!&EP{;rkV62YnUZxz80Lf9IbBj*)zv&L8lf0wAQI7Pfq{r+ z;Ia&&5eW+gDXg>Ff`Azq8OKDDU-<*3Z+WLFwIrl?)G{_2+$PZSWi6e zOC|%UbSRsn3PrA55vn!0VdYwFjlq!^<&jvw5(}szR+5S33{xw_8WqW|XFImm@0t-5 z2slX5K;@CLgw%50X4%(kps*8yJppd25Sl>%H~<6$k-T07MO6&bC~BGG>WM^CQ8r2? zSgWCgFG%}CT!0d=h=j)!LR2Za$YgXjU*)xiVAzQOiH0IUipN=zj7yA^<+3HAWJrdk zn0DUklw19pmj*r__!A(I2AGPFC4Z!X#cQ-=#d0lK>#8PP=5U`#qNxa;i&15fsmi>S z5t{|Mt!KKmLf_J1+w}TK4380Hf@V@YpA*GmDpkqlYNe887_HUSZnp~oDgms35M?h@ zMfnDvXffG#T1;Op(1Uxuq~9M21bI9pQk2YcS;1MBuH^Fda>X{SUW*0- zi^#lJ5dvxwFQ#cd%U6qux~?>9#ZJ@g^)?_4KnwsU04e}F0CfP`2!IYa2Bu}GYtU|T z7?22%r-2axHU}UNpyY=+0%{yIlCY75wg$G0CjrZV7>6W9zmmf9YNV`*)oRAF^iIcu zjux5#MA}2EeohMr1}52*+KubIRJC7dY#J@t>|#DZ29QX|8>a(Fo=7KHRY_`jrK;yG zQ}5U&?6pXig$95&fY9+G>&V>!nn@SiZL(On1G&*);&DEi6w_&m2xZ7nfhKf@sIj3{ z4)4T*PzXQ;gGB-wG_+VJ{N$MD*47QYdU%!x6F0BC=#cg4@Z^z)KKMC5xo~FRj;S{n z-@9@ZhA%(<#~1T6-MRhD;`}Gm(c_OTe;SRhV8IQ=y?F9G{N{4$*YV_~qaG>bySaC9 z_dUUXp8M(aTOWRXdvo%ovG3Y zmE5>p|i^-(TTFZycL>c)XjeSZD(eE;}7 z&p=DFu4>N0IRJpF4UG+(3iX9T)R#*N*)exZ9RL#0@@DJ$!dO&PR9svvkw{8PN=i#h z%gV|S1Su~suc)Yyt5hls(~u;=Fcixgc%HM{?QXX(6bi>;)1sKoMKyCs`D^Lpv?vv|6YD1LZ5_)Hf_h*F|9H&tkiz_TT)T!47 zSTe#h2|Jr~^XZ^H8+GRsL70w7Ww;vEW4MVREezviS&zjMayp|vUm_e%O;2aDSqKyy zP`eQTjD=;^kkd68 z2#K*oE=2$%h475jW>gAh)MF)r4kqF;O$Kers3((*<#Kl*0e~I=9smJ=AOMp9q!9oM zqDg4wVbBl7B&`M<23!OP>wriD$NtW|~GbdKEM(p-l}v7z`6IK^2Z4f2H!?lOO2b)XadjfBw`~=%+R` z)VDScTpEh>*k7I7e>OA!?l~yy-C6U{+jCnsA1^z-x#seMzPE3+Gz~yGI^MaU|M>WJ*gbLg z?rP=O!58ZIb|@R{x^Q^s2g@BDGixmU3w!zwZN2?FJS&#>U)Q#k4OP^5YjpL_VW;d82T{`HyCChv>kNB^xo zwF^j3JZd%OtA|U+-rI+LxcKVBW9HetE3Gr5t{WX}XLiK&`6}-I=wDUC;UZsLV3!>j zRKC#>U(wb(HI_kQD-myg^y2a_m27*fu>0qKCD_E4u>-YhrgdkpwMjHD34J^6FIl3K e_B`l(T)J^}SBLMxyMqPPV8i<6hLh{I_x%rSn?scV literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_2_1.png b/resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_2_1.png new file mode 100644 index 0000000000000000000000000000000000000000..2ddc4541d7270a407b75142fa0af39c5c63568b9 GIT binary patch literal 1289 zcmXAoe{2(F7{}jjz-^4tX@v^KbW%oPwG?ycIjS7&HoDQV8#|yZjXB~4%Pe^4Ar-4s zY^2#LUbKuVHCA_H)f}V4Z4{`kfyRua!81V>amd#x}7XVP!P+!}Uuey9x6&K}m`NgH>02G1d#;tYvv7n%!u&}VGsA$%#S+i%) zo-=0-f*{4k#U&*r3bk5|qI!bBDayn!7LH?GE|>m3~%84giADeBa{%Q!%3?OQ|gUs1En=Fn1v-+H|Y-0 zfiN4EoUx==$^=tWQ5g>86i`@!$^kSyf&~=Dkj4_lS;_24aYB}l!G2OJXE3GRsP&i) zL57HMl;mO(J}xb~vQgiZB*Jt|CdV{dGm2Sp!cI{hhVk3&A&(~-2uR^@YGfpv%|f7L zfyRfRK^YNIQgN*{MYz)zA!CnZ`H@^GGo6@%rCON`Qz(ooHKo-v1_Ngz-E@ALBjoW8 z2Sdr2luO}&HX$4(bJ8l_ru92;(M?7C)?v|^i25^$SS~jKaRAH!Z~*WChyV-&kVXK^ zizJ|fgQ5VF2~q=C6nJqEHi9GxAO#?+fF2YIBn;bN+zpcgcmy5;CIXmA#KtI`cCD8; z1_dS(aY>Sx$w)BorL+RnQHt{lQc%%h4VyIZS&NvnN2Yx7>2L}rvKl$SRESY8v*0Ql zg*vPz-f0uO&WPxhVqzv4gSixDGQlu_NdRG3ujV5@^(t$nQ**|+3|72gz*I!+fa#Lu-rk*zORM(M{ z8`{!UpWIkp*TU@SJhP^~>E3s})nzMm=Lb#&ua8z$b~L`bTgN8FF+N#Y7H`JbC4sxTo9p)#E}lG`y5!k4@WWSoZOFXJ*Q7=MRo`}VdyiF5 z-ab*YcGtQmMpt~?`=aircIVgvU*)bf*uJsfcJ$Z&`)YV%ZLrZxJQ$i9>b|~gOYy;H zkKe1feW&EdlR{N91b^iExt_}(&LD>i_Dd^o8CniJ{6%qvzWa|@_2p=uCupc^sy$t^ H^P~R(?~Ovm literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_2_2.png b/resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_2_2.png new file mode 100644 index 0000000000000000000000000000000000000000..6ca7823de8cdc234dfea18313c4988424086f418 GIT binary patch literal 1158 zcmX9-e{2(V6o1>g-C%=?jnq)Fjw(eCta!u|D<0!Ux^b{uc8~@eJ>=AiB{`ELR8r*@ zn^3eFm#i@r8`3{c(~w50!Q{jS8a>T~8c!LaBnOn(z@hvo(3mkQ`Pzl#^YVWD@jl7t z^WG;T!-08o7tIBLc|(H(qpiGTHo7}zCx@E10Xkr0)0PdbwymwLy}iAoqr+yib#``k zb#-AF*4^DbXU-g_$KxRgA5Bvn#|T15lEipCo=#^A1x?qdOtao-5I&&%z%o6dkRuXt zM`ON3(x1+-xdLA-No6Bht*JDQ1^qoDyXig?9Q=P8s0T=K% zL@7`>EGJ^6q`i`JG|Dby`A~yLO$8y{1Hc0C7$(~7vdg7-y{g}TjAbXo;fgF@&t_4n ze%>1p@t{lyieJjm@jR0%a%!2^%&?nu`2rq4hcf~h5@|8PCbE216E#ED z&6Hu~s?#Mq1r83JVQ|O5t6*f-87O!|B}z1c$*QE*6&)R8afd*2?R{#e)PHrsycgB?Tc9jTVy0QZ{R7T6JowUauo?iQr9RM9xkZ zU0fLtSLsA8q*~EpU72bWtY&2z_270p>2wC%9uD^je!s-93BI)~R!F8Ma|Kg38dVB- z29r3u%)6Bco{3TU1Xs+2C-ZWpl(8y$qj4Qk06_o=Kmo`DOajy}KrOH|ib*K1BD2DJ zK_nnWfffLh1;haoohV5ll|@9!hbts+-rmqUl%ap?o7+oKBaUS`}65UI&nFEa0<;D0hS-Vqr#+BWg-6=2M2A zw@e*1swBf84Uh>4wY*5Q=pMoqk7a5#GLwD?sa&Q*AubXTVlk2M#Ytb9BJwm*Vti99 zZUsGvcO%)0G6d2nWH7DcCs+2|nf-y?qr)7myL$eeR=s*?pnuCt~0 zVv)7#yzt|nmsY+|`}U6~?hUa|)+a{)8tk?msBJzsp*@}ZMJe@N-}>PMw|DUC^9x_w z^7*ahr)Jg;;+KvOY<%P83yUikdMCEo9$WrC+bu5YPwT@sE{-1lX1{IQ{$ICBi`8>G zH_xzRAGKv}9(cw1D1WB^;&;z)fA%fM+h&Wju zYt_h==JA7T#{1Vi)Bb&eI(c{gSZ^_2{$auV#}7uA{j}h4`;7eHRCb%byX`D#JN@Fn Uf6MyamY6WKVR+!^`t2Y84-&xnRR910 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_2_3.png b/resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_2_3.png new file mode 100644 index 0000000000000000000000000000000000000000..e2a19cd3b6cf63e0b7b6be75f7f121d64ceada9e GIT binary patch literal 1059 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 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_3_1.png b/resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..e62c55f12e18479b1422d2c7a2411410cbf75c8d GIT binary patch literal 1305 zcmXAoe{2(F7{}kO8{HUKLJ1eCQnbc~6jJme2XyQPg_Kd)!EU1&1r9x8gB6dhECs5Z zaFK$QU9^}YjVrETBL_5&uwok5m=g!9c<7MIPF7tf7g$V%Vz#-F*AkNN^Xs4I`^V>b zj&7*8O`kevDga=5-I`Sm#cD2wzCu;ZwcHLA02SDlp5 zrc6<*)fE*Lm6erO!mjx%zvUy-AudC{f= zlnHooz?142qfP}hnV7ba)3O?Db{GFHY<_#;## z!6YPBl!KBI%Z{crIM9*+aRI##7AW^mz+s8e z)})7&I64#ZzBp;4xsg0tcaX(+KM|1$kR6 zN+*+?BngTl!J?PW1yElV&Lc!rPbG|uY~k}xq2Nu9hSC#>EX?GMT7c=*HnYZw>)j;k zbJ=;;9SyQcAt;H0B8#w)#q4&N08j=H7Fqa+PlBKS?qi3R;_4U za_rbA_WkGP&G?|XmMp&wKkPi@9W-pJZHd0WyzbyYP0;MR@plX^y{UTT+ihh1#>wVs zO7;5q&XcX}?4nJJl;dx#-TBs+&HG})>rFJg-8ifH-VyB9V&TuGf$e908hH2W;Iyq- z`O31c!$;zko9Wpj^;Ow{PZ5|pJmaOEJ8HU?wpg~b4?c6FYh>}ZHAmMzBwQcO@qgVn zF-}#jnDMA4;+yxw=ViM@+j}Jk9-nR-zkBV`X^f*!Uj4YUp%v_B4<171FT64cIySu6 zvK+`mr@Cg{e_>+zslK19n;O*%|l`QzotZYgwj@8nqH%zt;))U;3jqP{nD z`5HU)8TI^@U)T3=t?z!er(#Gpu;;UPG?#C8<@7L`4&Sm>%-ovr(yeiAOcR6k@ zwmjP;EqQoYaC9dgpI^{$`JdU&%MQe6GrXO5fprz3ZK*YiCk!{S7nYI5e~ QB41Fqx_;G#mD>;f58jqilK=n! literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_3_2.png b/resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_3_2.png new file mode 100644 index 0000000000000000000000000000000000000000..04cd7a4861fc7d08f9c31d5e985007f4c400fd44 GIT binary patch literal 1341 zcmX9-e{2(V6#s7PcKg9nOrs?>;^ZfT1myzHKDE#@)^s?xvT^n}mqd`WPaAX8uJ{!@= zfKdf3IN&J6&mdu^IO&(rZUssX!MsvkP-zI`OkD3wvA!%9fup2KLSr(EPUX~V z{IoX2QgJ(-bhGJzJsWoC;{lkCh$Wa(rAILnuC-8+ih$21YJCBvRfGLp+pK^y=*04x9;0096d07xSM z7C~yEm4yKx6q2M8Feq^0fY$+m1dsxdkwPa5eI(?~FzSGU4?H#=1B4dnNyJP`Z5EY_ z)A@aLC}fYv1DQ-57PVw1fLd#CPD=XZMqbGX8ZK)H<4A~>7b=dy(Yu6QJn5h5^`!UzKL015!Yq8E;$+!M&`R!=&OdE8IHMx$DTfijzE ztCd03c1-QY(SQ~W6Y2!1%IFo)D2FyB^q`Q(VVo$2AA7Op-s2zWUE4{4=E-R4vRo<}+$R}exb+T6m-e2_g_J`}=c;Qsv z`qg=SbniP~^gYCWIp1(`Hua0kLDH>E}a{{DT=W->ub`F8h� zzjf%$*;YxS-drMYj}idT^i~e2hi~fUJ`jy4dMj59qMP$!TLhf9sja15h#dd+?qk^(uoO>>J8|Sj+%uU)9-i;`Mhw{T~g` BTMJ1tV7N{y#npx}iZcqWJ3mNE}_WXG(tB%L{-NX3hsqhbT6 z)TJ3EIiQjT3N+Zn5>G9JK#4_8(?5nOdd4YTatRemER%#{YBC~;UrR_n@7F)?lYBn! zjc*+AbVj4*>9Du*&h^ta06T2lu&J*#+HAJAwl=%n-rn9mYu2pU zvu9%%*3r??+1cszcsvy4W{I9smI#h+#60t1g#D5Lt#fCkPXvP(@YmWHQJw zT$IDZI=zCM2@*b;^sAJlF-n??>3p&%X3N2X6>`%qug}AXBrnkcnUmu}JQK_muM8nViHG714}I zm6TG`V+|uUW9q0@!W}e0`YAfZauHEXNK!fy$tMyJT#sLo&&#tg(asNA(NUfmz9dem}%?32S$D8N$QGkD0(vu2oJo}*6soAwARIuuF`pL?u#*DH@e2Z;bY)SW4$8gZEAf zWZmyUK{rwfl%`ODMJC@metKEg-w%J_gTVn2*8VxQwbj4W-}}m@=MU{T^xCf2in*Vj z$48X0>*!hAk6VA=GcfYuxZ3MH^3=cU2E)W^4?p+xt_7jC!aphdwX~FDE?;qep&A9ls+3p*}i%EE;~qU#&=+P?u~2m6TV@` z+6~hmGhAU|V$Igk<(-T1Q{S##vFrO~^&at>1V!r>-2?Rjt=kNHZ=Zt)2c*lOeJ zi>u~;oS#hbJ8I#1n2%=fQ4rBn>urg)?+ZLoRS=gB?_; z+Cg2;q#-2~ELyRe;+im|f7GOgGcMZ5C3H!N1U;n&M@;vW* zba24YHK%6|0Ce@g-nX?;mo#EUM@u9B!F+QDpaljuZ`;@yo0^)Mo10r&T3TCM+uGXN z+uJb=>*(m{?CdmKtyYq>vn(SBoFusvMGgjo(P%uK&S+YpRI1hMq#YO<$ z&u1d2krp0Vd$?M^ACBYJylQzhlIpDOYk}a-~6G1i?b>`D@X);tTC1z@x0|$`+ z9|Nj@C1orZHWrhndLBnrJF1IlRz*m&0`LGLhRH@_0LN9EEkV;0JU{926a#^~@i@xm zaMEOD%y!;Fi#CT$I0K}l(n^dCrnpE}NaV##$z!2#yTeKg1Se50nUzC)C@#h`az+nm zrHEclmS=KC2228&Jz(*JO~t6V*^#!na*V7y!(}B=Q#CZf6DEnmeGVe*q>~bxRRldK z6{AWe6|Ci=GkOYDG^2^K5l)iwFsx4y!jcs8`O@KVE*{r2nR1~}tJM(TGT5RRnKZIl zT*woiG8?M65>;QerWWey>TGca83?11GMgP1t3cQ#npQYIBsP}$)8WWuGF{U2dYJ){ z!xX_75G|^gi20dRNXW)Klc_*47poSvdi^e90Gt2{fC`WTm;|U`fEwUgByVP!`N#H@X;$S0Mc!P7Qbykw7*T z(X~{yq@jA5;y9E6R04z=UW6KSkAMgLu}X!CMIS-Q=UJCa@OmY`UncEA${uCN6ienf zdx0maPAd{EC}2Y|5@i^qbB*JtRvP|!_yha54hZntpI3J`dcMDJ{kFAZV+C$su=lZc z_u?~aZa@9}lN)OBF$ sp8Yw0=3jA$!haFb2Xk&5UE!u@j9XIIeiY-=bVFz8-#E}WzQKLuf2Q2}^#A|> literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_4_1.png b/resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_4_1.png new file mode 100644 index 0000000000000000000000000000000000000000..b68eabd03460f17f21146f57299a315c4de6f49b GIT binary patch literal 1730 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 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_4_3.png b/resources/g2/track/rmc/large_turn_right_bank_to_diag_gentle_up_4_3.png new file mode 100644 index 0000000000000000000000000000000000000000..0f898a264f6e015b4df384170e9491d834340a8c GIT binary patch literal 1055 zcmX9-QD_@=9R8(gduh{|X@pDz%P_E;oG#4M9dZx1c`aEv?Uh|2l^|CTw3d58P{;e}rTyfFXf!px9*Jf4w}5wF)fIyyQw zHa0#!j$xS3=bM9DT2E#ls*H zkYPX*u&Ruig+RL+bX#H6iy>D;0}UZ73cv%17$ye-*>G6Hah;~udA^xSwX@lWl?pP= zFd2+8p%@>bMLaGOi7Y8;v{Ghs23KqddP}T3sR$L0#iO)9a1xc2Svk+=D`KTC*X^w3 z6zyKMvu6ev2nrBNK|}>y!>CFqUc-|nBio5WN74J5h1Pi@C{f`|oG2vds>C)F!OltT zlF~JDeY3P@8>njqf)q|9NGip!89^vWQaO{U6$)mhV%O`Pt*w5)k02}qUc$&~fNg|@ z7Ln?(`EFA0Wg2~L%dPbW?LFit0s$%%ibtXX5tC?I;rP5be5Te4#b&kUShm|?K;$q* z2xP^GmL|$7W8{TKIn^|>ZL{2KTdw;MF#rhw1waEZ0Ga?@4A2lfi&O;}I&#`P4l)Tv z2I_Hect8RmIfM!%(s@)*qgEa{Iy^R>0*-|QkENwhHbWG(cvY7gjht;8y`GJRTHzFs zs-Mw9ydDwjxa`ncKWVs`#$Ks4sCQ7ij|YK@VDVTW$wblusirtBo7RijhEcRFqvu%2 z?NA(t>VO6oLcU7sdDKFlvayPCWUlbQdOCZ<)~PRAq|!^x!4v@^b%1d zMo<<}{yI1Jr^jym>0;krUOszj_u>+NZ|e37>VJpV-ra9K zw>ophga=Pudpdg6bAx?tadUhAFh!~{K+Z9!FSzs1=(pL_4Q|J?5%-|wxRUna@Q z7?S}2$eLSRRGygmiJF$qNc4m1uh#;=0P{;1&Pl9ENlD4c$qWV~B_$;_H8m|Qjmc!D zr>74ZG>F6J^HEeN7ULu-RVw8g4P`JGtX8|*?eY6NL!nqajtT)T0)#YEE@!LNJgrV> zG>NP>!s%9ceVPDm3P&7bgeencQc{jy#xpAgb`9EM5c{mMfSU?+7^5LaU(7Gz0tEuJ zI53k;C&l!cSV1Q{9^k^L5XKd7zzm_E4*&sxg2|*RDh=g0y7h{b0lto+=o-N%oNr*VrD;VArQ6_<7y>{NhWeC z#a<0b8eHko{OJMHm=J3C{s7zA7j z2&_!h$r5|HWB^fx#m0!-5!HHQ=FYe~IuPuGnFx!8aX1nlpG1U8kw_yYjEclDo!eyT zaJoZ&Iv&P>Ldw*TEWLtfRwFhY?lO{Io2tX55BhA;pg$h(fj9s%05kxY0dN7(0YHQa zU;;u6bsFe$z)+A7015>b9C#!kL;y$vNO7PEg$@FG)G%O#AqRMCJO-pDuo^ZLjb~r7siC#|8NaDTO@+ntpB441jKSV zsa7j>ItmpUFrgJkU1HQH6?PIxRK|x29@Gn<4TT;Y($Yluu_>8a=tm; zs+mQoE9FglG6JIdoEL>>n|pFglbW!j6V3}V(!Oid=Cm)J^BAOJpOcz* zy7T?65jRFN%JUmuUdk)`a^<@3iY+bEMz@t7I+B;YzAEWs-PKX+(rAWGU6)VX?G3ED zHZ=Lv$oldpxu>uf|BMf3wY|LHOj&vP)mDGmdNQ&{62@)aSPtvp>dLPV7WJN-_cZC&mh?inTL_k6KE+EGPHm0pZ1zHO=!N zS*C6H_0@G`+rzF2Pk7g?vj_UC1=!IOHMs4%C*4}qadFG+##`fI($0)xr0(XM?TIXd NxpT^jPR{;l%YU{KwpsuH literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_1_1.png b/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_1_1.png new file mode 100644 index 0000000000000000000000000000000000000000..766b4798e9bb13d8060d4357639946c5eac06a80 GIT binary patch literal 1323 zcmX9-aZD3;6#hYhL#lQeZWXF4+APJKdc-p;uA2uQtm4fca%7!0vt*s?uw+L(w7TjF zYp`=2xtWsGr86bgq-x`;W7{n|wX!matEMEN9aJonXbre^uF1NHr7R_P7?iwO?dR}8CmHb?VqrEp;z}n2xlB~2 z045aJ2*5K)kVPVHSt3}TjVWLngIN=t=OK)$0H6UdAqXpzITQ+Btqy3lgET#2u_PRh zIlmu9A_}}*MaVH)sWqu}ENXDzW?swrNN0%hh)f`65|S3BMuF*6S_Y-e8Y4@xF52Zc z`2|*pJEBQXJRMBsA~FJ$GeB+uN;^>Vh{iA1h1JFg!Nv{l6c@%NCIjG^@ftvpz(6Bbv)o}r zJ-jX$FpHuy9uK9{ahTUqSO9L961NjtO1Wh40+v$qqXEuY_Qx8|D94A^e}-MnLbLw25ie|iNt`0l=kF7?uJ zsA}G}fF67kZdvoVx~`YMRKNEXZRwP>!1=TM>GHz`*X=_ipG)p&rYp`H>u%ZZ+>~O? zPs%2Nv-`KcpZeCv79ZhGReW=DaMZH$(cyvHlkJnm6@8-NlM4%hX^Qn?AU|is8>}l4I(C)^WwgK%FSPv2@eTZHd}LiKQziix$4SJ~s7nv@;-L zJ4TyUAE{4I#H-9}+Uday4b;vH@61Ymc&+VP)U(`0M-+50sHhkc{ zN54*eFm$5wd)JB%yt>SF^{;>Cns@K+`6Bo5vLR7eGu%VJ{P^o-m+)4#MEvpa@aubK zKf2hlU~?QC-c`Xg9(%HG&mr#|zsLLMp_jT0Ca5?Znofg}qlW kJ$YBIE0~h&hRBO1$2H8p{b)x{$U6?28ubm|ZfX1MfB8;K!T=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_1_3.png b/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_1_3.png new file mode 100644 index 0000000000000000000000000000000000000000..7f20b3a3675c3b024cd238578ee6af5f7f9ccc7a GIT binary patch literal 1441 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 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_2_2.png b/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_2_2.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_2_3.png b/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_2_3.png new file mode 100644 index 0000000000000000000000000000000000000000..de40b7c26b5b6d95c753a8be67422f246e7ad7ec GIT binary patch literal 1291 zcmXAoe{2(F7{}i+*o_UWtdR;0t5U)VC!TVKGHN*BI?6cMjU7n?6+1bhNHvE$w8RFw zQI|prxs3)Z>1GoOt5T)nm=!83T4YFp6J{)OXc-MFfy_F~(!>F;B_!YH*FVqqkI(b$ zZKyX+u9#i{0GM32!q8Z(XfbA#mlkt%XWJzJNr^Am!!d6DLkoX|-B{z$uDkS(@X_g2206E}t(Di9{2L0a?!F^8^k^Jz(fcvsr1g zY3vT%?a}-EOekWB#f7BgNoRr-hM4q~Jgst?G$Mxv1fs`9#eJq^gqQo>Svgq9C5&od z!GN6vB8!B0B<@k9Ldtwn4YN4RTi}=oVL}T41AqlVc!k2LR*NVa)a!c~rr&B!Ii2?d z0T_>~38j`);fzLaL5)0SauS@V7yOhfOnYN&FlmX(R*g=L8?|~CqdA?Kr+7Ex4p;(F zJ}NmAvRBH6(uKH!1WFdDtU%)csEFtSDq{pS$4Oo?dD22KCnjJIgDE+k+HS-=CVhyb zVgf6Vr6AuKWXf!=Akjv#DQ1bxw zAw)<)#nfyPv!*F`#vIJrV>xjkAIXlT3a}DWD0C{7QKMxsoYU(CnsHl-%N!Apw?7n- z6H-1+0t<}@tioy0h&IgcAj57p=C}5TovFA#n@Z&K_aO;@2><~A5r8lN{QzVT0E=QM z=n!By2;~%m0-gX~5=4zaW&mUX&2WooVUjczT{Xm4O2N(33M97h%3yb#>Ns3 zD=j*0L9a6w_DYFxR!+ctT1V3`3ZM)iEV6JH?Vd{Qa`-bDo!|FVLNZC2&8*GFIUGEJ zyL7mZB*GLCr||&>%bK*%qJd5n`Uw~%p+pytUpKFE(p*lA-IHi~XrO!_u`2 z_qQEb)9iY6l3{1d`U3(~PkHaZ4Sfq+ho??@5W@T?-$lCphuY8K*N(r#?K*kr!}Mix zuH47l*5R$2{#@L;y=lSS3i7z@@O}Hu-n~M)zyC3xPDf5$4hfJ4;vm?j!(rp zm9uox>H9s4m~{Ii+5hQ;FfCoemHx&`NYud#`QH*e%a@37`tuy_8>QS zZ+H;jShH|;$I|@rd23FssQcBUyxI}myUg0y_5N3n=Ra&}-?8ZOk2mI4efr6jE8CX0 z4k_6BdwqAd>9}op2eNMF<4OLDy}fhxU2Rt_*zo+?>K1j+UnOVoGVRs+kG5{#_4RKJ zsLMb9cK4Pu+~McWzx8s>(e}X;P5$P87GD^CAy)n9S^CQ{>E5yMXI*!FG5+(Gv)7eJ zS8m<=ud?c=NMm~XHx-v=WRJc0z}nD*NA{1TRkY@3 HHSPW%aS%l| literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_2_4.png b/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_2_4.png new file mode 100644 index 0000000000000000000000000000000000000000..2d839d98e31689fcb42d022a13e496ec59e9377b GIT binary patch literal 1393 zcmXAoe{2(V7{N4w_UW8nY*o9$d!LDvBw!kkN`A2C17yd#rfKsg3$6HeyS$o^dX$ z5&^vom@(iWd0vVavJ2wgl5|uAQwU7!Va5SrSONe6fS$*r1Oi4Ra!92fg`$TbB1U7J zVaD8U7z&Bd5(y?m2(dyhRZ%i6gBlzP+J#$v>h>V%iRuHaQ7jiBDv5%WsSR=+g;O@d z=GMCdR3OHL+4fk837bB9 z%;LAVN4$PE97`uKpjY!~Qo!iN4wKAf!F)C{=rTrpOg!XD#lz|J7{mb30zd=c0Kf-8 z1b`$Dz^n)yT4?C=KsHWD0fmBg3*G=q=e9pLJt80CK$Cr)&rgeF9&KIXbGOl zAY{z4c8ALAF$9CwSj?A7#bDM;WCW3nH(aNHTq1QIaLNlSoS z%u^u(9VRxBsKuyuFeXns6ZEym!oCz6hUtV{t%d;rSpZ=+3tQIixkOfrE18tLoXVS!4({hJ zO!mH8+A!8<`Q{+{$A|1{bEItIM1Nyv6P&K#ysHsk;n(|?4Zc=el|G>nH)N`HuIiIH z=h|+qB@zRH^9QMlU(O0vYH!bPczeTP@Xy+pkllByXT=XcKGghO&c>-9cd}FOZ`wY0 zPA1v)QD>i0W9i6M8tR@NJKDJ9^sz&W3hFyXn(FhHR%m!z)A5BLub?`X-Wq+c`U=wL z@cpoTOTDUh)N}vIj&&=SI)}D4TXP$(U+CGSF1=KG=fGxL@5GVGBg51q|CZj`ezJUV z;ppb8%{P%dTj%^eu>p?Y$l7JSngdJ1>?!Riem? z%-;Ee7HBOE=to8f;TR^w)HC0bmq*YVDyRLGarsdnu;J_D9i7sb) z@iwyYXgr-IHxq3=aLqXp*N$sv4wW*C$DNOwy!Uo;iAUngtqom+LtO7~qn$7BnL3O2 zv14;@n_3%{XC^O>{pI|3+t3R?Rsa0!uHj4+wzX_q!Q@!!RsA>K*~nzM0hQ}(l-=vL GfAT*oSb>}X literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_1.png b/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..b1324351c7c7fa64a46102e7fd8add2fa2a7ce7d GIT binary patch literal 895 zcmX9-F^J@36n?w2yP3Ulor5W|7$oSZDdL$TV1yvi%O2wr*&LUH5hCUw;1p9th%jKl zfKdiXkz$Y(Bc@0(MZf{KNRc8%z$peyvBd}}1{}B)R|H8h;EKOl4nE%dzT&;F_}=^R z@zvn$-fQ;&;Oz2~iziJ#zvJyzQ@{W1i@yL`@c7fGj~aP!aBz5d*lM+oj*gCxk55ic zFbr$A+oz|ec)#CgSw<8EMUiw}HBG~D9N!O?%Q(w!ilVA(mH~kWS?Z{2Z#*U^7Bh8u ze=aYUT9TUU+}-X%k;aC6$B=M)NP0RInC!J9rv7lfG>X-NSB%2Gtt6^$^PX05X7vVMe!W6NE=mAEo(5VF8*y%D#Vjuu+kM&T}(_Rcl3>K?jom3{e2#xUDoY! z6g_0QkswYK#ntusWU_SKGzjuI-rn3)RfT{sfbubR(G?RyS<|DfINhmXIY}z-re2n} zn?35#-7bgY1G2BsjL!3>Bu}+wnYDChtHrX&@_H+PCSj)1wKdWk({oFRrb;p&ts;Aq z&dW_!*DsI&Fa$6GJb(yb1+c>aHIPMQnJ5ZTv5_e-SeOYA51^0%DS!+dxhx806pzt* zii!~Kg6BXIVJKr`9k(a+%o{91JxQEAkIFJfjTbQj*6IizE{CKRQ%1pil^WHPWbdzU z<1N}$R1Y{38!%l}Ajb-8jU>+=hci2gW_cEsMTY7vCrKyK>pL@{x`|bz6esZP2 zN6-KKvJnq1FFt;H{*(Uf1N*;sTkn7M&%Zx(K70H8k6%9Yl!xuJcGGKuM zJ2G*HRR}!YTfes+R)I@*x1(%uv{)pYEltyt9#26K?#1I! zmW`O+Oc<=R$>z4$In*g&tZ3t7WH3oZvW%2-XEcuqH(Kpx8-r3T?&3%;M2F(;c!tZU zf}%y#a-vw1bp+5ez~BL<0I-M%9yi!i7MDzLsxw^VrHZJ)G>z(6+~~KXVW%y@l3AWn zgKQznmy*GX9IdHISWXW-`TmzEY_`VB~-$ieL#H znKd#w)KerwC6`q8XDed9nkr8fYOoX4>2QO=ZZb2dm9^P;iVnH!#{#KvWHOP`6t!9; zfSW>iMklyUq8E(?h-8S##ypcrp&-Y~1*KZO2MGY20Pp~a03-pJ1fYZfSO-nQ01uNA z)C#l(a2SXXAY%s_4Il#`XMkZ0N;J%PVJ-wU2|P3&2NVgMG~#6qf**~D_JqV{vq4o& zmdh%vYZ*NN3v?2qftF0}jD^!|V#SrL`m?oYZYooRg^EQFa1&y;>Rg1$%U}TyB??|C zB4m>hRY{gL1y+kVMZpY!8i26wMW`1&ywfqbY~A9+2d`5X zf_>9kHa#=kK2==f-FNkm-tik<9(>7}iwoj!oqcdzfBMZIFU|P(!1&H($FLLg)*p*( ziQL)fzU&+7y_$WmJDPsE>xb9Ze>X5OcQ=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_4.png b/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_4.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_5.png b/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_5.png new file mode 100644 index 0000000000000000000000000000000000000000..2821580b4020d759ae62d9a5580976284bbbd7b9 GIT binary patch literal 933 zcmX9-L5SmI82x5C({!ec5h`@pC^_^HFf3V#m_xw0n_1$Jb+WrzD40VQB3q$I4pDl@ zAz~M*1`KSKAU#ybp@)bCM~Kivz#OV}Awt0}L?~?097ZToq=!L%vn;&t`*@f44)1-R z-9D3!4zC;nz|ra3CwGhcQZX-7O2t0D^7to!65PIZ?`A=Fc6N4mcT1(x-rnB+{(iY! z#xSf>sT>>})EkWk%QB)UsH$ujnq`^YZrAsR<8hQE^DJ9$HY@`I4~ksXv|77Oc5J5S z^8P>>jrB=v%~E%{3Pc)f@>Nr=J5ACvsG-H4cg5Im&cWo72 zIwhHO(_sydw+3Q2l=~AknCVg0A~}MQ8oWx&2B(>#*;9H$eHfWh>Lgh|%}2{^j0;dx zq22=02Fk;@VO<(iS}d4p(_LD@+Dp*6Le~tA=t#8NV1)rHpoqw}P#BJNy3?Wio-_)K$)ua6VVrTl$r6~S_?Ow z$=07;MoY953h-# literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_6.png b/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_6.png new file mode 100644 index 0000000000000000000000000000000000000000..4ec1dbefc66af6bb8f437219fad5f9c8bd87ee1a GIT binary patch literal 1316 zcmX9-e{2(F82zF}18HpMxE@DgY<~3*TKdH$N5>6ciQ~78Mm07Z;b5l$4g1 zA_!7eRwj{1r9LOTqdel02&20 z9PktpV33GQnh40UF$GL(V3vkYc?hE_07w961Yx97PNCq{YQIj`O_IG9OM>I>`g|}F zQD8C^F4vGs9j(?gsFB0WypHt}j-bIEru;EFBwCbOg+{N^QK-SJH8BL^B%MCm7h*zj zE-Jd?=|D0Uk>Wr`0l5Vz?Lf^VTAy4ms7(=^i5p!>)}P^{u$x3>X05`eM_oo;z)XZ$ zD()~RJZviH$V5E3co3$dQkhnb8ZoT}Cu|huGMl|No8WRqe7<-nlE z@oW+Yv;ko$DMu@LE9$l5K_?aVT6%+ABH~RaqS@?Shy!2*fCYfhI{|=R08$8md5{FO zvoPp~VuDly1_N#!g!Dip0i*zAjQps zIP8eWgXwe}=D8FWfZ5A&UQYUzbV$vJIzD3xW^Lh|C-yXygo%t=2DC~&{cbKCbjPE?v>1iiq}E`7Apk`HVO|Sop6&${4!bv%(t15Fz{X;P$wXPLX1kri zG!CuCgJVGgix@QhB$_s=AgzR)8hSAp!eQKyH^27H@`ulVpuM??0<}W}tMmPhhWffi z^LJl3P`ByQ#EPz-+UVXKzQ45d>!pv2U;3$|<)e<8#s2+gG6x%{FtdkX*Q}lA>8X1f z(awr!*FR%!>><|u_uA?mYrPMCZ5;1i_)6Ww_R)z$-kW`t?88Hcw=S-HS-Nb4ySOE| zan!9b6XqRXyJEqbMq=04lkcti{{HRy4Q-D${UE88w12^#Qt5<|bENw>ub461bZPXp zzS*U3%T(j{rA`gl*Wam_wZ6LL{LE@}c=_(ntG93O>})+aqrPE!^NzcUCpE7hrmj97 zH#li*^*bG~_#%I;;(Du65Wt{fc)0mUAM5G+vhw-_U*V&hD>MDf#lPOCD^}^m$px)N ziP|khiDYc$mG)fYwA}Q^QG)F3thD{~pscsi$=Nt_#gq2Cn{Au#LZe z?pf*JI@94h%G+=BR4IGq(>~i|pZ7`k*20QEkIg>$BRAT4Ac*#yb~rxR_O0(6-m}^9 z;Jf@jT*ICD1Zn$^VSLG#Hl%-T7>CG@=}9_xlQ%o%vrhPe+$w>IsgCw literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_7.png b/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_7.png new file mode 100644 index 0000000000000000000000000000000000000000..a7f714489543909441ee3d4c7f8a6eb9dd0910bf GIT binary patch literal 1045 zcmX9-Z;0D;7=G_>?vJB8dRn#$MLLKQv}%-y`4G3<(cNV%x64M6s+s0k)v8e<)EQae zqLf*VsGSC_tc-BxWaqs8H~bpB;neeP5n0@596M zzL%Fy#}7>%odSSE3n%B62lKH(;S(c+zJBBL8vrA)bn5KPXr|@oQV^;1YMHYsv@|$)H0P$ zS@#{Y@0L-g76?)}kszrQ!)62_CrO1&rjpA!#iDE5?Pk;WeFR|{a1$d-0k#?z8bqqi zW;;o%o2mLnvsdXJwEAe82n485C?1IlL`8?{`&gmt6#tS{44C-33ENYw=(y1 z@y>fI=R@k={2x~zUD;WB v!uu@o*Ui0?!@Hk+yW0Dk;Tu<)FAK@NGY?g6E7YPqumcP8r{}JpIKTQox{=5$ literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_8.png b/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_3_8.png new file mode 100644 index 0000000000000000000000000000000000000000..48dfe0ae4fc11e562420dee739916ff3ef8190d7 GIT binary patch literal 1598 zcmXAoe{@p!8OFc)2}v3uVnP%xAhxv9mYCa(I=T{bgJ_AlO|FUtI$}vfJ2ZFZYVi~& zE+hv%*pP@DP0@o1tE65l)zp$BZBcLAL}|UcY$FyU)||;2x7~JZi#=)mj-Hx}+2UP`-X$LrZSf=c&DQ}a053Fd)aKT_yuAGU{DOjl z!otF$qN3vBVh)GH<#J0(N`x|*3_+AAs=;x+#bP8$!sT-L{lQ2iO4F066r0T=N}y2# zOkZX+3T!s9-Jx`Q)cyb#j+kR{GQoJ#Ga*#LF{sN3z0he8doA)HiHy3?xZjY75UFu@ zCKZ}vX`Kj|6~L|mUYrvqIB^dz85U#{BA8LatQpRGA*5vhU;vmo9D>JlibP(yJfv2S zV%WIVnshqv1%ogi7a;^gP43OVUryP%bv^pJOOEL-PbGxx#>`tQypg;~tA8V7Es+o_H|G zM5F1+NtR_H5D`G`=OAGo8WZ6Og*A=3XN;kYJ;r(`vysevat@X$cs!L*s1wU@h0>x{ zlX}c;&K+|^JihU8Bt^r=Z1x`10AK)s z1i%Xb1;97}GaLYOU?_BukP5+65|aZ00X_|g>Ocwu5C@PDLJtB%7>wFr!VOa)@T2i6 zphtlLcSyQEaqYuDwAPgPD^A3h@(v76=ET=IVvYoYA^;;dw=BwX& zsrld@=G@}ll1e5~F*M?Pc-pqY^4s<;XTGK7pZuwnzwq#N7w_`@p)KRX`9sh2{C%+b zX1lVy^T0HFlz08lcRHM#*Bp8rH6emslK-9L9~}U<`|kX^qIq*_Yi~_!$;)j;pB^zS zy5oMSvK!QC>o<+xeyx4cn@ctVNzF=Z|Ap%3%S%>1J>B!wM?+Eg#vyijCAGiz%(es9 z8Yt$w#%OnugA)S4LY;EY4dK zyt-iD_R%BMx$WmWKN`#1Ne{JcmkqZ5YT-kN{WYJh-Mjbm%PUO3)ZciwDtS%bce>Uz z&6@XZAL!{PhsPdW`r%m9I-_;8tnG<^#olSJ8+qN-Sab4X`BrK8FPGNIzI^8T9?*Y3 zb1LzRvmGZtX}QEiBhn^tKXcYY?m z$QUte%U&}qpeR*o^t8Z|1>DK?we9>PbeY0Xu=@`3dwTNY3l|%gQl_Jp-4V<3Zt91g)r;3G+>hc9F&$`;p3%;_>Q7Xy=357!L*D*fdwp=3pal-}(|zCnzW?WNWTl{sU(vHv dTQ@N;gn5BdQS8^SOO*=&Sg&nrI9=b?{eP#4z>WX_ literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_4_1.png b/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_4_1.png new file mode 100644 index 0000000000000000000000000000000000000000..a7a2b5960c60b69243c7e056a204c2dc942309c2 GIT binary patch literal 1363 zcmXAoe{2$W7{eh(X1yb1ae-x3ks^>vgS4^}0}H6SZ-)qPDK;cNmk;`@VVqd7nR? z=iOIdrzy;zkq-bUtgfnDo0({)6uE*-zxChpe*qAH`qk@JW!9{$tnBP;fj}^2%9N>7 zr{?73APAD1o12%HCzi=%D5}J9j3l*2quyen91e%a;|m5uEIYvSsdO4u0!$4EZGm1d zGMlAVo6_l0d%T1{Xb49vQO*@lFt`HIsS7Br*shb(M!C;|b~^BgM;8rJe2+89Gvg^% zBLM~luwsBF5kG}QT*8=Nl#WVZQVG)rI7vgu$^ak$Fdzse6xt;cS}teQ>P~{_F_~g^ z`-sm6BM}KIl3`*cAypgX8cLzFqefb7@#2nv)*U99s3F9gq$-J0BU6(Ktx=_?aLP$I zeFk5M3UPLpcXLU9d^{q=fQSTQ6Oh_~oJLeWu_h?jM=*-hx#AWkMYFJzP>75wiB+R; z>C}EB9=4F2!x-~e5&=gl;u+@xFu@8%D!D?3s!SMeB}tdj=(SpdE?30o<3geMz(6XM zfX~-P2 z1zqkQe~@RnbQ}W)En*>sc7v2QE4(%=;3UIdQ%}Gii+GbUHk}@U7yvo|ECA2|1OVs( zAb|jwfxw~70s{=>V}u+~C~#vSqyanuAPFEPhAtE`1PqyB)CqY8yf9t`v^dZah}kH% zTNQ3v<7bTFu!G|Q$s`9eS`rgLZ3P%DCK#z9B&T>aoze%=*6_F|IvI+?SV}GeDk-8- z3iX)OOrkcEmbRN2w>=zib8H~VvoIZ3X|*r}AP*qSc;U>*y+q=$c@qhh*YgrfG>Yr> zq}gn=*(g-$P$@ka8o<$rRyjZ@k~$eQNTFR0y(kP}kke+uuUb$r_TmS&udO4&^4o(= z0Ay!XSFTuBweS9w-mjTAi@@eht=RZ8!$+^RTuyAdo!5G}^-y%X;ERjz%{%^A;-};J zA3p8x?<-o=Mf`eA@LQ32l;72Pt*izPPjuB!V~aaCe%#zWKX*;dmUkZg`Bmw}e|J%}P8Qr>)X1v|= zT^sD(Eu+yL=0PaSqqnKEWEVy{DY;_reE#& zq4?I>qGmO1B_uJ^Xc?)+!Vr4Dgv$%JA3 z=|9d_#D08TBw9JA!F#{4?X3gDAArN{RC_;J{$y6@o3ZwTYp-8!8+GTMEb(s{?EQ48 z_TAwlxm~?XTUYraN#)7A{)(Azv!%k%Yqd|~4=T#8IHFBHc2!`|L#X_Xc9Wxv%%av5LOZtAaObxB0f$6b~VTXh-$I z-X{-R>GxYojuK-6Py6KN?#_Go#fQy<>;y>OoqgnsqmTGC2N&--eXQ}!NcwXJWmon=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_4_3.png b/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_4_3.png new file mode 100644 index 0000000000000000000000000000000000000000..eb3c94238ef88cea62faf69e669e75e2355a354a GIT binary patch literal 1734 zcmX9-e^k=<8vf)j{ISBucClE)t}dqJMfa_p%V0#Uc9GL1_jt8FznMcP2v`X+9$6)z>cljY9O+kcTn2&1F2jd40o*(v zbaN>{LBmy3dsQrKh$N@a;?Tp3-ULc}_j+{jVeczP#h_J|y~gvz8axG5}*&J#0* zGLB4xYD^-NL+0?R+_>Hwu=?g*L^dE{fGh!2C7|gDOcR-FrwLtbnOC6o$<0BX8}_4g zl9)+RaOqkB%PQtL<(OA3o;1k)Hg(WtnD^SC-%TVjX>> zES8*yYDD2E>D0l+X&4phpa%?$BLlm=u7(6fPq3vd)b3_uwfY7uBgp+gEi8i7T9l<;&asadab+VozxEr7dW$j9XIpaVc0Kp6Hy6PEi6 z6t&Xm_cM)#zaaN`I6@&Nm5P;08NyIA83s0D;~*{`V;rRi1SwENg(?~}BGAExUS9b5 znHdSQe`cVXUxb02C*M|tgHfHIyQySLWBbX%L;mE%`t>=-V!XdIQiZSMx%Z}{uH;6f zGCC=J|MIZ+=|&O+LtNJfi_wZ7etV<+UcbXMaq4O9%)xhk);p@LImf^Gx;u-3@!x;= z+Hd8}S0x`bzc>^hII(T7wsHUZ%lr{mdC$x2`0Un#@!2CamIn@Q-L9@OMMVL^w{J;h z9(}l(w~xQ^@}?{>HjotfsJNzW&mgBYZtzG?iRFbivv2)BZv&)v23}f{^uvTU>mNkA zq$%cwv|aeC8_cZNiClhG}NyyzPd9#yX}bO=he;M-uU8Z>GS7C zUVY#tN`KDq+G+lQp~91dmh?Miw^9$bs(-IKI`_DBuG*D)Y)@KC4kN~9>Fn(|zNctI z++ejhTYW*B^wE=x#YEKAcUriz_R}ZiA1wiO@sf^vW0wrqs>-5f+8u{}X-QXBm3DtU z;+n|UMMyRzUH#cfP0Jw9K6z&JdNOWbiF7aZpQ|UT@%>jT|L5t^yqNp%Rn?nT6nwmD z=Q>{F(Ys^BFO%ZmdN#J{pU42S^JabX{@LWz8T0F(lyR~P|Gp4aurfWjb4mNz%F^h*?!X<89Q2ZtZj5V z6Ase)-oi2(k{yEy=NAg1YgS|^q9)R?j-@eK*Y@pb|4(_@$%Tj=br)mw%khib=b3yx z#fQ^JZl7S3bj{{p_K_~wO9bbKPG#)9eE;*rZ|d)t?*6sCMS6Ik_Or~5Yfos$D}}VW zfo+x4v&%BOmG9tFx$hnBn>awv``d@su5D@ezdC%VZ(_vJW{D%OdU|$wLU><8vIxH@ zo!XpGRsKpt#{*j1)cJiy-Ki5px34E}b?v|QoW?r1@xR!*lwC;Wtt9aFfls+jS=hrw z{T2U(O6`rED$|aF$V=kK&i8axUJa3aZdt)Q?+;Af$c!s!I{50EdP?l0++<0`%GB%0 zBixRz$I9^s}F+wn$;5Wm#{WeC|PQIE)}auPC>7 I^X?D-0IN(AHUIzs literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_4_4.png b/resources/g2/track/rmc/large_turn_right_bank_to_orthogonal_gentle_up_4_4.png new file mode 100644 index 0000000000000000000000000000000000000000..e7dcce54fb8543bf1dcb23f5359103815d356dc5 GIT binary patch literal 2017 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 KEUOe8mSRNfxcMc$bOcPe4l@Bp6`p# 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 W?}g)McCK_h!sNvC_%|<~eE)xj)X)q7 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_2_3.png b/resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_2_3.png new file mode 100644 index 0000000000000000000000000000000000000000..a3ce1cf73b432cad8fe659ea244f224949deede6 GIT binary patch literal 1057 zcmX9-VTjvg7=G{CyWCyfI;k#Veso)ZM2T7?KjI7$x7^mvjLUY}s8}R!;jBm1h*64G zj9a#Kt{ZU{E!bgC16EhC=phBWErTL=*n|8yU7h(+xw@<4l&S@boX2Oz;CbJd=g<4_ z@bJ8Qa4NQG;{FK$*tCD&rFcq9^`=_t>0k|ZcfLeo^kFbaiIwOVU5mR+~k@6%D>SP+FkA`wcZ z!s$#jn_~+_v0Rnww$^lV?T*D$Sey;006?vl~%n;F7gq0{kVG=5@X2ontF4feUqc_~V z(=E3Lc94UR1b7m{86ZuJDdDjynXoz4iRapy)iWDtUZg?_L!@I=F3y$}zOG4*p|lEG zr(*Q%!oaDZP9qp%NGeV2x)hvr8qXR%s861y=BN7!=SXL9ntn59@RCD=-a@B1({Wb@(fN4@t zm&0a?DrUG!R;m}13l+U(7rU)SzrTh!fH;5#U;)xE(wL0uON!ODVXXrt)U2Y$^4+;W(9U*Fl~Zkpwyu z;7nY!!g7sNUDoU+D*beQP-w2#+NjkdL%@WwSTva6!YPT)Bn4AXS$Vx)$vcfo*KMGF zn-K(51LOiiUKUwT?hXheQ|xq@V&M+7W|L1Oq*O}DWK=q8Fwp`>S9sbMqRS%HjYp6i zMmmX#G^%mP@k#*9!-2nUci^?@DG8oj{pop+IQu7e9e&`#srQaw(}+0! z%Fq-3?@s(y{YJ{~JY?Uud!@M+|7dml%-gVc>ekkMOP$5^=#gIu;la@MmBoLDf4Tfn z^Ca*8_V;TukDMAicEy+S{c+rP9nQg-rJXY`d@?$>RQ_|~ivzQl9=mAlnj37p*`21%VrO&a>8;MUpgm>o1^A|T}pE~!|2Pe1u+`~8P8_)cxj!t)uo*l3& zgSFX1sq>Fsf1G^j*?VvO^YqNicVBoNKXc>j9iM&w-w%IZJ^dD({APE_=#M literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_2_4.png b/resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_2_4.png new file mode 100644 index 0000000000000000000000000000000000000000..5ba55670f3718a1b35d5ee3dd14336f78c6d6285 GIT binary patch literal 1143 zcmX9-e{2(V6#tH~-F`UEq)L@WJ1u(ZIf|a-0;inwhR1Sdw{S=aXHv+KRj6`-Q%bxn zx6nu-gi__B^{?;S;6$He54SZt{_vI12>_bG;A0Hh%7H4g{-e?ehKvRI{Iz`bH z4tpc2KNhEwDL#`6<_k*6idU)zgChZ|Q|8=Sz^hAGS|LtHnL;v9%E|UjtY#bY^&;y5 zK^#PApbJPwMhbDXoN+Zu9$53kMi4IO5Eh*ocmRS3BBQA0@#q+4P}FIjp9zJ^nszOn zhJ}KMaQSGrpZ8KhjFs_#Mo2oPq?l-yOXLNk6g2ISm-P5qA0^-7n^U!o|5<6}XmnVO3yW->XuXf-M{ z2y%!bpjyzYhw+q3XJbM>6`ILvYC>RhjTdNq>?ivJ6q+ z{Ifh>3;1Br3pEU;2x!vK;+*3rdpiHT`vdQ67!bhAS1u1Z`4jzpy&IqU;K)(&t7!Lq z2Ywk@eqCdKJ~ccU@BV&bc+H{Y-YwL>w}_G5Ymd?+&w0o1G_2kiMl*vSUHs?v(~W&E zcHG{&=fN+RytHdK%MOkHH#zmGIDKc$UUuj+qUY7g8z_c2`Q9xadzR6d% G?*AXjQ}-eO literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_3_1.png b/resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..b8d7b5ac29cf4b42f57def99b3c9710838aead34 GIT binary patch literal 1201 zcmX9-e{2(V6o2cwUCXwV(3qlC53Nv>Mk^ksB-I?_hGiUb%MLA2%?XDTt#FY8O42|R zI%u$tixj9@vBb-)cx08J6e-wf#U|9`%*v?bfD%fm5koa)%rNw83CZXE`saO;&*!~8 z1Is);(;k@y06qPS`vzOp*$Ujy-pUIiYYBjM7+AV|QEO~#Yt!j;?d|P)y}qNPqqDOU z!!U!vU^E&nHk*wgoD@Z}EY0&iQ4}JPNFtHSWU_@qS<@QLCgB9q4Gi7o^O*wyJQ#9D zW9~$fNoTlRUM#7xYE7mbnAhDU(3Y?lmw0m&yuRHC)i* zYCT<@%$rCsvtaQ99s;|Bxl$HS#_r3Lg6fS`MY$mr&~e6L=3UmH#}V_o(>#?ESvA5} z5@Jn>H1df_RYA3a$?UQ_yoAe7QbCrD@q98E%*0~(R7%ZetL1W|(Li7oz@ET}w28`D z*^=5Q(CNQOuy%I1>(q7ts;ll4lW*}REJ055|l%yo?}37bwox@7gjYrFK81F3;0-dc%`yuEwFnyOpGIGOCs5|bz8kw}`fU689`-!3u%$cn NFIv_&y70}N{{uYf6k-4X literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_3_2.png b/resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_3_2.png new file mode 100644 index 0000000000000000000000000000000000000000..1407f0e9ddcffb76b0366417a6aec6308ecdfb0f GIT binary patch literal 1256 zcmXAoe{2(F7{}i+wp+K15-X|FL4g7{azcRvZg2^Q+@LInyNyE%R#Wr{H8yhMO*^R2 zV3C3yIYx!*3N+@#B26ed!zneEq{JP5ZiPZLP+PhT3YLoOCY*pcZtkUB9Y2*3{ID8#k`Dws!pZ@pW}| z_4V}#f;2QV=yW=x#bUv6D@{`z$MC#E6a~NE9}Y(o2_>D*YFepW#;t%N0n0Qw90s@B z?D1LyK{6a+V+m(6C1%uMz97>WVkesf#^|$~B_556_@JLoh3%PypbZ6znmkrY+f2ZT z0S^Tv4v7g!DyYxJ4CRao7Ok-CgcS+Gv;_bb04IV7dcDtNl2BA8$w8JKa=CIo-)J-n zQz;W}uuw)TYbKqjO~C9voR>&3Li^)PD9Ongr=q#cgvn~NkQ~PFghQZ(02_!pql%!Y zzO)uni?RGzN>2d;2aGOY_5xHwh^Wz)KpiPcQ0>9ID3_!(9Aq&APnbM5ENCZVJe?Fd z)z9a`Vj=D?rNU!s92U}g1A$_8oN!UJhvR}gAMtn+!C)#HRTU+l&6Y|f2uuP%!w4SJ z(@7JT!CZMdP;kgaPqHLs%ZXwoHwK$9y`C@{ZDtFHS$UEa88+aoF7qaWp`lnpORMEP z1)K~ba(bWBEV;3Wmx>3tWW+TT_vKQNVlG`Sk3tFnI{+d85&&@kh5#ra09M7)&?~~Y z47D7K0s#jh3Me+9u>f)a3Pu>jq0B0fi0x&eNvxu8F`aD=jvc+URne?k_ zyjWCW)yw1pxVMRtjI3;SDyX25Qppi7dy-?}Ohw7VTnRM*!i?CgdIx28bGX;VNIth5 z@+IRTH61T%X;{t^3Yp}o@6r_$k5!^;>Mp&twf_iucGvH=!OymJ{dDDrj_Dw0)x%;}i z^ryPrb6-E{;LogZA20XM?w!#0)sLwe$7fA%nRx53_{^z)ZuqU#vyfVZduJ>>_U;!q zY==&VZ@=2G*EMiSf8x7y?;m`dA0EDOWYZMgD6#XQIIVnSUSxY@NooJk%twiq-nI*o z9Ru8gIbgK4ZFbM&{pfBKo44cTpZh~gmoG0Yy0*4)dFR#EPp&PwvLHA%XUlc+okP?& z7nM$3xd)s2x7^5f`G74c8>Ja z+gmo@4n0@%5c`;UpzCuq&#wtrnkQZ8C-WOm?HifC@BGF+UoXk#4m>-*@BVhozIys; zgHb7RmnZzut6R87!>`^EX4QZsCaF?E!9!CP`M2VV4)8Y!-l`1u$R;;EYi+(L3`Mh8MyifA^ zyf?jV#J{|6bsqpMAKo%F+OChb!`owP=Pw?4?lgc6wrw5T+#Z)LTh`IhVYAsfJ3G6& zy1Ki&F%0YJ>FMq5b$PvBk|bD`5d=<>f{G%?<8e*PQf&Su$->I7+z~&X4A41=EhvH+ zmnxc4)8mbz)-rWeD>M zxP>wvswOo z1DS*r1BM?g9*_V?cA+GRvOF@vsGLAn7VaBQ0mnjs$HI~;7Qs`hKbMsXg}7{@hOy!_qSH6I-~ zwDIuqS$?ST>V``vXFvV?nIoqMvGG;*)mv9y={dLM_1|3^y}R#W%2@gGv4ijbadE}X z$3CWa1a7UHdx!kW`^l3xuK&5Nb!BGs=E}-0+rAh6;-`t9_kXth7%`_!J=JyLKziRM z<&{V$ee=gcZE<{krhjd650k!gK620)_!5Jy*ZMC_&-7g;SAKKq*+aYkIm37B)%e@z z&TI;QJ$CB1caLZj`6_z;dpq-J^B3TiN^=7zqxpO@7`bc mAFuTHua8VkVz1%hzcFL#=)jJvw+GsC!SLphp|hKIe(*o6>g+%O literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_3_4.png b/resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_3_4.png new file mode 100644 index 0000000000000000000000000000000000000000..08f5dc64e3248fdb4a331b67d20dddd7f6e210dc GIT binary patch literal 1189 zcmX9-Z)_8F7=F94-k>2JHdwHU1sht!1&Urqm5VvXjn#RwBRiynswFwJLNgD&#mbK4 zbVVB|%Oy0SVvRN2hiWd;g{dV}t?@oArobUX3zSh}-I_?CnnnkK@Uw*EdH;QRpX7Po z_t4e>|KdeYECPVV{V(hGCtZoeLK(w7Xm`g7DHb#c>SJ2Srhc#bT*cCYQ_W`gEnzXf_EiP$aO7B^b0t zBF?DfjVH)dn$6}yg`!w864jbY<5+;S2#j40I2GQL5sAqdT}%Z^IiWHYuUFLhhVFMj z2!|*I3WsF{teCKtv$kf*f$Cn=4551pLb?lp1qfl7V71B)hvM<5Bss~lQ{iw~mTzV< zs91CmHWy|0vQ9GO@e6oBCU}Ju({xN@k_ApJh4PiK)93K|T_lGyye}xwLY$3fLYcgf zH)Oq%H0s&ve9=mQjRSiaoDz5x%$KqIbDm(45{y8iDyj`dN0TgW<9&{(A5R3xEKe6i z&WQ2llvvYZjbduv&`?dc+I${7K={HG9p$(L&!?l&Tq04-WQ=^iIz8QJG!Qrh@T4#z zYo!Ygu7roHbi5W+>(N3(nQrFl_sa9gf?KUVyWQ_}ak!T!Ns(dWq1G}fmq<=!a~0ia zRw)QEn8;b>kW-1^X^GO}Tp=Bv(&Tb6T`%j+=1oKa1OP+;1waFs0;pktT3~4;iAYmX zrObLjARtLW-VYTP5C=%GqXdCe7Ud(T6h{>m9vbfhhK2x(MR>a$#gmFZtMY|H%rLZi z-9RlaM;HjnLMe7ub%ydDp+YK+pw^5Q=2NA6`6?LJ5KARG7~~=mUXldD8}oTn6rs^X zk?~Hmcs<}kAt#bOC{3U|g$$;3{Ju4oe;)q8$lw468|N;++3LCe-kxpGjgMa%emAzF z%Y5U94_01BeSJSYxV>s`-_Sv7#=3KhI^-q}ohKTnPMh79TeDM^eM{lL{ibUNOfL-# zPt09hzl3v7{;_;$(~+m2x!J#I=&Jjv?a9}_BTkPVoEbi}?3aBTRZEDe?EKZx2;_xAFn-nA~U`Eqp`R5-q5g_)s7wCUOsF{ z_IJ|#vGi9x&mW(;aQR zUt8Jz*y(?-d}BImBm%;N???BCClvR(U3*5;@{-^0?)mio{#B*Kxg8hQE!tyVtQLUR-`;KGC-j}tNZa~LaHb&)JC~E!3F&T2Yv|uR(0g*zuCf0C!3PN7 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_4_1.png b/resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_4_1.png new file mode 100644 index 0000000000000000000000000000000000000000..7690c7f849a4f3e6486dc059a89a50455c678ace GIT binary patch literal 1738 zcmXAoe_Yac9>+i84^UK8?4Ve2LX8~PgFNck!iIs45YI2`YeOI8(6NP&arte1JE?Go ziGhtyI;pY6l!`s%p|t2R*I|c?CS5)nyI3P1*uE8Z+@zbg!$vpfd~Dxik3Al*_xt^L z|MPzR@p?axD;lLm1#1cb07bH$wYxI2CR6pK>`brz&H1+g$Oejrrn=0Um6b&x5VEtg zb8>QWb93|Z@`ywtiA2iJ&!@53Y(AeSk%(YeuF#-9 z0VF4@R8*agsWc+Qjl*#Z zh2s!3t<}bi#s!xP4+a^0DqBS3K}?~VBSpAMBVS_^qE3m)E4K$=cUbMmv`hhmCuIv^ zu3RHfAriy_SzKzDAMrfaa2JO5>Z;?s5@l~ z;o}gOsu3{sQm$1g^k^gj6polQF$bFPno>c>QpAfVLKLci!&UMHT9HH#!&Z&Psn`3g z)}YH3@%!V^XeyP$0RsUX2a)fgNCFHv%+LR1b})R|)jpVdC?@nNAzIxYfgIT3{^Mm5u><2nr@uLTY`wbNc>Ea*(eLh1AZ zE&@Oa01AK&051U303?V2&j^y>1{C+YaV!RL0Kx}$5%5a^1_2xfI6}j%eB2G;ejOgR z;Fufy9J~O?B|r%gbsCyc&$Zj69=9eCFhwHXWHN$hyck-*H;_d(8suiG{Tu`n+EOZS zS|3<)gjf7=JeJ~6fq+Sr@+c}1QwQ@6TDi@rbK8vpuRRj-Cb1Bnjtk^++z)UJ;CLnr zOUCXOF-!($A|Y@(ei0fDOH?XYr_&e=2%l#X@Ejt(SHcgxv6sl zpJrVcD40V|JyvHwVhx(kkG)#nGd9L5nA`Kx?(&+q@uiB7j-Md6_ZPMQhb^INB=pjX zXZqToT6r#K*?#r=_axT_6vv)_>+`Nn=EZm0rKjjew>`jGG21(R*GHO)=k^!-FP>Y! zha?_N$i+`iT|e6gMz;13$zM4e*|O>;(lB+q?Ltjqr#|ahN5{|?HuE68u84MPd3fv0 zABWI?8+%@B&X;CSuiYJ5SJ$<@DqfLw&3EJ5iyLZ7w#5vel3L>v>wEYIThOlbmM2I2 z#oHp?e=enm=(>%^tBhHSTddO91L8L)iY&P=R{mH-tcQCaonGD0+tJp|x*y&AXzYh= zImc71$}_R%PD>5pJxamgoy9t}^7MD$Mhj+bk6mT698yKmo$@>(&?Ym8%fUPu@sdm6R+@JRaysDny+`ahafj@mR#mlQTMeU;5 z^71H6)^mAwqxa>ZlDFeKUrm<&^>TG`!`S@cf9CeDKRj{wLz$TNI{S&1743XxZ;!cQ z{=mv_qt&d5|8`=P=6B73n=N@@u&eU#PG)hdeDVpk={8{CLYbT$#$p5kj z;!GOvk~NgmJJ#4m{_w%+6gKC|zxS{o7557C4lM@Z>{ z1J#CfSbTrLzUjbXY0p=C{Y$HQ+d5lkHh$?wv{b?x!rw&m_g(yoxnbQYplH} HZtML&&Z7Fb literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_4_2.png b/resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_4_2.png new file mode 100644 index 0000000000000000000000000000000000000000..e8c9a3eef53dedf611a4c3905ca33295a6047849 GIT binary patch literal 1474 zcmXAoeN0nl6vkgbxO_;eK`dIeY8geVR&#OH)$OV+7N~N8t5#NBH>%Xx%nKGRrpvlf zrPUg*3QN^aD_jRi)yA(>?c&YW88#cO8Phr|G>TH4)e2pN4CGzSlHWNe=b!WZ@tkL0 zS*a{DeQG)YAhWngS`nWG@%k_|Dc+gwC4T^r1j<&gEsU=T2?>dbiAhOG<@S2JgTZJlh6({D2Dm&!sm#)9 zxq5@pY!%z=c)LsGVRSyfHPlB-1c*YMLCV=i1(#Cu9Xj-qNy69^J{KA6GKYioP}D2q z0F?mfF+dSWJBct>R-ipA=HtMy5XMw+go4n^0{{m=g&-u0W#n)uKA#qgFX4EXMiVd^ zUpgF+VK`_O4`T~)u2{vFkphJgRa0V}U1D;|n>+;VQ@Mj0u81R)@x+8ct`;dt32Da7 z4wb`Ay8T9Pu*n~84-GLa3}g|2tpQvE;8Tdm!IruBN(LkS3TsG5M=3A7gbT9NB92}r zuqwpuYKccj_)Y47P1ol%MH$>s?kW<8b)h?ofAk zG#Z6~Ljt}HLEBjp4~OsxG$Dz(Pf3UMo+#BFbA?9&Loh?YVu{#n8J9;0gle%^C&$gI z_%Vaa+SJwV3VQvq5C&9oL`SfUDlVlJ*bSJ|OnB^?E~hcT*uw#DEcOy&04M;^0YCxZ z1fUCmJ_NuxxC9z>&`HB!0Otb|1x*-m%RmqZkN}WmLn{ht9J;m8XNEx+!$B{Mg+y{WbORU!5XQYQ$L0QqV=~zL`b2iy z|LA-^iBd^uwQ7TbM1>}i(1xK-3ChTY-MApE;6W7^8u`$ULN^Be^7!+M=4TAN&p=&8 zDFK%EKd1&Ev8GtMVr|jB6W^~m?wmPc&$Z>_cEGGTIXg#w5T};c)Wxo6XWz};JX|el z92D+vn^kgVd}Bp(#krkWX}9!~%-b8R#^9raX|o6Nx4gLh>d?$vTPpu;?ai|kO+0cp zG&H-LZyD_D9NmqLwORiDX!z%Yj>6MtwNr-CwAtl>?-)(`i->TAbjD#OcjB;NSod~Y z3syRIM0$ZaJ&R}jvg1K$;aEzb(;ZxFiYlJ$#eSN3dR@ z?_8;WOdYTcmUwfdi&nj;_4$^hb6O$|RS`3Ku7@m~-g1)eDVug9)DvlFO*bnqttxLu zw)bSGPkKB3dh6P@j$T0uoqMtK?S$L=tLBr7cP%w+pAeLgUkudF$+&vo zoZ5Qo9$j@+_dsIX`EKjRDThYh-MLn|D>=o=+gz?~JM+t${C~WUDr?Ig*|L*P_5Xfk zbi%VYiQuWDml{p$*gZJ)VdG%qo_lX5*E11Mjr!Yp{d1m+3)eM%)zi{ibzEaCUQn3( zu(aMWw98*DJ0aa%z$Dx{T6?gp{%Xrs%lHKy%lBOQ(^9r&QUB88h+xNG1&=fH-W5)6 zu~<5n((@uueoIud6dO;Sluz#Mnq{rI`9b=_o6C?&X=}!$*B>vepJCbmX&sdk*0X9C zyv+M1b9~kHP5HXg05=g+F&Yw!0S$(Z!(*gIeTf{VjT u7QV%D>MEaxmUZSBHa4VnVATV!8JJLjTdwA!hvLZupt!J9dVb~S4gUejpPAhN literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_4_3.png b/resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_4_3.png new file mode 100644 index 0000000000000000000000000000000000000000..ac13d22d833ec8e9efad927b100b5eaec64e6495 GIT binary patch literal 1016 zcmX9-e~8<36n}TUyWCwlD(fF*S0rk|OoC*Ra{&WpGdJrIcbS*NPKx9(Xa_~}M}&%n zg_)a0ibknWu*`zNt7l{t?vF4Fc1O_rqnp92+F`&VMY~^8b`cId#@CF&=e@`0pZ9r> z&wC%7UQW-=&d&nC+|mn+D`8EA@z8W6%=XP=X8|H``o-0gAsrhV8y_E!L?ROt6O)sZ zQ&UqIhD}dT&&FTDYx2M$1C>-7EfXsHmV8_P`D<-Sec*7PdEy?Q0j-SJsB$ZCF5-BK5R^`=_SgOl)M|C{i^()@6 z(cf>!IEYJ-$N^pi!o-+*BHbjiZBF$v<-TT(Oc!m5WL#mAg)~{tunmQ8X_99sy{a~_ zjZwS0@7ZYJ#^MY?W@skI@dZgLD@v_UXqL;83cVvZ^RR?6pSC%%qTvBb`7s z8aW*Dgz)&8C!=@o|G?WT%Mu*_`}!Lp*;raUv3lf_H$Q&$ko(B=y0(7np7`mH_)oiE z-H_(GSAL%nuiUxgeEZ?GuRnTa_n$|f_o?}pPhCB{aP7a{jrYGiwYa^o_V4DsW3!7l zUowt9Ha>^8zdO74#fdZ0nf2ouwmJEDP&;C5M80`;`}*1+txWguC2H>w*SQ?s*!=U| z?^m9=aPhPGwX6ACznu%-I!c#*Q7&A3ZFT#`=YRcre($Nm>rbyJ=O2FJ2kPA2pBLWo S;%qoEES+3ly!71Kd;bFffV)5d literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_4_4.png b/resources/g2/track/rmc/large_turn_right_to_diag_gentle_up_4_4.png new file mode 100644 index 0000000000000000000000000000000000000000..fd598711597a1aabf9ba4d71fac6e608d250946c GIT binary patch literal 1397 zcmXAoeQZ)^6vp3v(vNkht)Uq@ro^IN73)>8W%jnEmLl5gxGIZxN|UQ4N*vj6lFBL( zRBDL3Dmu1er5h^iFk+$|iPW%)iWyEiQE{b}E!a|LDp}EC(&{^m$?u$#^Urzyc%E}) zL$kP~=z}5vK#8QOL6(`zGc~UuC)2AJRVM(*0UOqBT$5R|va+(XvvYECa&vR@^78WY z^BD|AK|w)bVIhml<)SEGB*F+nN>QXnqc$3iR;%6Z_W1qbXf&Bhp?rV|0WK{j$x@Yy zqt)?EW}(%FJKYMePZJE8V{wNFVaSEWYAH)E=g<_-u0bywMLw%M=vGGqrbN_{PWr`c zpg@2Y12n;Ksu?~rGvX{w1=%pchbaY|q#^Wk0l)!JFc@kkQ_p78Jf1@+yo}=kr81(| zKeOAR&&NhfxfqL&bA$?>SdGZ_C`Ai3Hj&XKwRj0fP~nLxIRZ9c%oP%dloF6?k=lft z>An-rO2 zI=9&paJr-ZP%4H2g_NNon0f_=Rv|VW<}wjpn=;_iM|`$K#Ggt%gBSpE05ky50Js1M z01#&Ym;o0-od&ubFdD&mK#c+m20UUA#Q`J$RI{KNg$^8gR4{0QQ3rTyyZ}f=K#nt1 z6icr~EVS6^puApVDC9~cLNKGnRsvL4jL|II!BKd4>Zp)TlCG52o3;igJuw(b@=Ae# z!w~bCB*sw@s7@)R^(u!&?{!&1epe#uhpCuADuo^ZqX5E;7p9EdJJ?2@Egl!xtnbhS zgCde7R4PiRQ=@#NfN#Z6mk9Mq`C%MM$hlC#fqEXaq0ocDkTes1!Q$e7-~PZJSu+7@ zM<2BUkj<4e)NNdKwCj}gMEs-o4p;qJ-aiBz&bMtBj&Evi3GZ)RQNOBjK=Shb{7pUc zA1WojON$OJZTxKS#~+$n{`+Za#?#OH`wlIP9kdDcTU4&@0NHWq4fAYQZ}+K2V(oar zg4V#(@QzClcN)s-OW&;ii&t*|wKwZ}%I8cTU-EwL0z<{J?{}}O3wBfluvf$Lu(s`% z8%>5MkB$z9pOc2?*4J~#t`5!7x32ZvZoBox&F)?#EgAR??XTip+-6w$$s|G~M^2CC zZyAW`JBfvf+ePv6lbtYcuv4>KZldcRr_Y@pZMrj6aV^a%dvu^Hog5gkO`AfR2D;08 zBgb@wy`9N*sW)5CpRIJ$s%@g*_mE?9NT9c(~2>DPIc>t!3-2Y1aY zx-rQ8xq4OajOX_*9Qb9Q>iDvNprcn@x1N}4sr;cmZ!tN1|IXJLzFWCqP#(R%d8+2c z-=op9*z!Z;Wa5mZYNO!X3J$;V4Bpo>;yAyut0XdXy<%ort4t}Qh97LckT$%Ui>;nq zdf>`kW;O3+U;SogC4G}uWyG}jpWCa-4v)TI9UpTf+x}QHn8^;1 MtZ8nzSl?p!A4-0BHUIzs literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_1_1.png b/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_1_1.png new file mode 100644 index 0000000000000000000000000000000000000000..fb4062fec52e4854614c66b24d7e4db8a1617f39 GIT binary patch literal 1210 zcmXAoZ)_8F7{{Nj+iqLMGb!PKzUXEpH&a**7d_wtC%fTo6uD)GR;{Fjiz`s{$PQAa zCM9%GvB8s+(1a2?(vUJL6f&S{A%#?!Nnc#FNKI-ev$94|Dwd>#Nq&})e4l@Bp6`p# z^Bfpj&(G;x*a-l01_%0w8?~zui`#XLOpUC)0-%GTbsN?+#-^sG=H_OdPS?`X(%RbE z*4Bn$SbKYWM@I)?Hk&ER%5khH+9b)LD6-%04~L`4WGb7@7mL+ejj{sEfMC-*90s@B zuDppi;qFEK8tQkN6aAKH@<36KNCCM1WObWu3%T@6C?nk32 zlQB{TGfP+n6XPU#*<$xmlFBF%&Y!S_(qb&X zrHx|F;wo{0vLjaUq^oMamaNPc>PT0>MAF%*-00lq=NB~R$lrcaJ2^{h&C=o-& zfLSCE8{~DL_R)sKFx8uzN0}-y12H=}7pwlw6K;I7GKw@_J>;>Zh$?mP&9` z#%9e6mWthsoF?QWQG`M%7HPJ|@zYE651;+O&f)bUygBphNTc5}*uQ$ivV;3VxugEB z7v8Etd2R_E92=jkZhz8pDZl5z{vC#YhTpxV{7X(x0>Qss-g$ksYHI2K@0G8=`~605 zZnW*d^yV`w$3`CBoX=f|FIc!ctuq|im>S+Mk8)p~{_|+h@@=;bciuP`pF45lLHF4C zJv4Fo*0l%I_;KaEeDD2xTYFz$!*S=1TswB?l=tr&U4@lHy?0N3H2D6&;eo5;J!cn8 z817FTFT(SKc(QbJy|Zg;gWnW5kLRj(aaVH+t}<&+%PLsvS@5 zop-zg(xT4C)I{mWYnKkUuKaRU$7iueds}Zly`uH~Mr`YzWfry^+9#hcckR&csGlP~ z`F`#bbGK*yC3%#&VrYKn3x2P0^wEYiOZq~*V~e2e8@mgSx1U<~(l1vtyDrX*U+CRx z?%Doo-Fxw;wYPK!R($Z{km+{c<{wU#M)*nW^D_{jrq& UX7`>g4FE8>W_|zJzD;}o2NQo0p#T5? literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_1_2.png b/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_1_2.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_1_3.png b/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_1_3.png new file mode 100644 index 0000000000000000000000000000000000000000..6142a75f943085077c075ece539d3b79241b7843 GIT binary patch literal 1236 zcmXAoeQXnT9L9fp8sk3nfPu9iLT(ppL+(;QmcFPXaU;{Otti&=7Q%OUr zR(6mAg`BR#Vj8UEj5QWkc|DT`3tV78(VL7|#?3TvKxKf9xx@-1{462)eBb{0K7TxU zcJ}o;XE)Ao1OUwLS>D}WnRulZ)Ynw{;P&CS0H^_dD_1S6oK;m-)z#HCH8r)hwRLrM zvu4dg5Tw4ozM-MPWVKo`%ubR7!%!^i_WL=W=VP%%IxWfagsPTw9kT<%0cfhp?Kb*+ zmO#)RjyPg*I+^xlvi_VBDQF^zA}&W0N0~w{i@@3ve(WeuW@D~gnp4NZMO7@9WTzQ; zP!J%1z#vHu$wmzMq*2eAVbKnC51bJol&t{J0C*6DGZ;ccVg@K?WEm!m{x|ARUQh6A49<3KJ8hQV9Yx2W&9} zOB%?GnaQEv0vXoaVlj{@2@`s{IFm2KCe&cSO(v(s%Aj`E;qX&**i(5HOh=+)$+Rjf zdVv5Q3h^_BkjEnU(0GtYg_%s;JC+LNv+-hH*7duP0Kf%+9{>S>6aZrYXb6B6Xc7kf zFeO4YPul>8fhYkaCs1hs82~vGj9^ftq2z zSc=55lzoCmi!LklSYXHo;~10(s8CN*v8d^vCmHy-zn1}T-@ZCf*@t?%yH+jVxqqZ< zn18W(*-Z7$&NA`kuFjbY0~?!3K3DZ_-AKc}?DC$|DVT|aP4BGVeLSaHqtCs0`0Cl* zwZ`wStoXL=Oxw9TpT5+#t@=Jw_jz;omAxyDP1cj!+E22bds^od|K-mA*-kFL9$UA2 zxeb$Jo1~NE{#ilTO)l|?eZFY x=z5KH$KZN=#esoycdhGhU7L7$%GP|!GVlKH`r}J;4ppoHJlq)=W{rmf`Wp=!os4W zA_PIWTyAl3u}~tBV3Gt~r;czq_PiHci4B!et5+xdqK(7}Y zO){%Z;dGH+zcv_RBCIWu^e9n8ttc@NLbFN6#YZ@TlqaGM#C2l1NT!k~D3qY(8iUecC9Q6) zJ75T~=5XA>ro4%4h>rsS1%x^vHUX&}k-LQ|zf=>#4XoOhU_5Di7@i|h0WB99Rj5s^ z@Y2d4L$MY*=46sSOFHDtvObs$^96D#s>b9xTxp~z8%?{6M!(G#a=Y0;AQ6qG(`g7q z1|W4Jn3t~%il_*xODL^LjVEOcrtQ&;KQ$A}!V;9vmkWg|v4lcpv_ioUq*a?cX7bw{ zV_tte%w`fe&=Lqk@y%MXU5~m)0140=cy(8Guo#y#Mr@p3>Yftp10w9srs z9d?!1LkEKvmi47lEX-+%bO1Az;C3PD5o-fdLtJ4`YkV1FFzbxW1QIZomI{DejHqOM z4KCJGm`O+2&3cc+9P~NZurC!4!%RX>5HJ8>96*@!!kUwN1(C(%N+#tl=PNLgh*G1W z^m^K4GGH=`T;{|vpAriZvM7nB)Dox_L$egRFc`ogOXR{Yf2-ut%OCh+eFFt5AKq-q z%`E+6;N6^jx?Ax%eV#oIPe;LCb4h-CHotJm~^x$|I{p`rjHG^00md&cXHG1*e zGn@6LLxo#-KMXGK;ONm^tDK#;qo2-q|DiZ`Pro9Vr$@wNu z$?=u^>lxl<=Kl1gaZ{Gt-+5!28)XOd0b9dnBg)qiOk2+R8TnUX!{Ke{u$Z0N=J{hhrR_OIJI!D}p= z=lXX;8}D;|^~a9g<>j>ptG*h2wD=x3E0}Y%cWPuJzjdU2O3B76z;O8*ZsnunJF&vu z2Or;UY%XoQa_wefXYM@<-8$!qDu>!Mj6pNrqq%VFwt{oKb&8DA@J8>=ESUQ4;gITd-H`x{_xc6 z-!LmB%cdT5UtZqDY^h3p@<#Mbcm7iL(#U(ncTaa6ehM$uZHqiFd%SEhE8H@ib@-nk YKjj^`J-$@0&1C}A)ihN1RW*0~4`0n)^#A|> literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_2_1.png b/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_2_1.png new file mode 100644 index 0000000000000000000000000000000000000000..f9a814d79dc350385e21d09da349cbaa182ac018 GIT binary patch literal 1021 zcmX9-Ux?du9RJ?GrFXZj9^I%e4;3qm7$smFaRkj=?x<(x<-81vREZM3q7||uV%6d@ zRFqF!KrJpwQT>u1icM09FuYI=HlW@ct~c6M%V z?!bWq7>31SvHAJ=WICOuX^Q7LNfHz#r)g@rTsF-{tL1p!ZV-&dW10ev1yNYc6;`Z7_U9*#l^jb*fNAmpV1L;xAX)OcLSaf2W%mfaS`Za&}F^}R*|xh_s8 z(p-`fQ>;v6R5Gj6iot4izHAG%j%4*@C&;H5oXVtGi4+tjr}An=tTg0?qdLCs1vNix z4km7#gMAuR^Br93k@*2% z8Ro38*clnS<5sxepP)rD9%qutOe!srl)|!_AXemPS*ca6b(^ig^Tz`YWC7EpxGtxR z0$DF{c17yc^Ico-yY;Z|jmLY41IPks00w{!&;=M`fFg)IDrv~JP|z0%P-&=f;A9{W z0ZD+=B&yQL5|L9ty$T8}cn~}T0uNacD=105NY;!@(^5K}vhUkr=%Yvr&jVdr~XO(F?;*Y0QE;i0+gpr~Rb4t)FN!BKE{L+3n}Vxvd{#aPvL+?kt3Vo%rB_`3ZIV;;s3Er^@%X S5?d&;4XZ0_%io=T`{Mr}^tagn literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_2_2.png b/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_2_2.png new file mode 100644 index 0000000000000000000000000000000000000000..251476d3532a8d2dc3c050cb22b09314a37e9ff8 GIT binary patch literal 860 zcmX9-F^HpR6n-=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_2_3.png b/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_2_3.png new file mode 100644 index 0000000000000000000000000000000000000000..9686998f9ad386a0649024ef4916c97e1db54993 GIT binary patch literal 1243 zcmXAoeQXnT7{`Bm>y0*~kcM<{kUEOFEe94k!VQa_a$D*=vcug-fd)Hrh8imza7YWsect|gzJGk4 z=fLV7$8`N1Jpf>O_uHMlwTjiEwYi~|H!oN@2Y?2!dR1RnZLF)StFNzbXlQ6`Y;0<3 z(&=;vf;2ZbPn$N)Y_(bm!bZ~+$1yzb5=9{x3`V2zbUKsIk10x}S|x0NvICYexLhW$ z*W&ZrLScI}#wOG5Y)&l7VYQr~al~mi2#h)4v`9P_7m3jzor^k)X+bH3G$k=n$vaTs z#(|Fl5{D!OBo{W8lBQ}Ag_;dk-SC+NVcrS=3xFFz1fwy4q7sHB?DkQXEqFYoK;S_< z4s$t_Fj*4rcn|KoSIq@wlAHsAFT5N(BN`09X_u zl14ga=4AR+eL;AxogY(>2RcwOe=Z0 zs#3tsAR=cBxGj305|~<0gwPl0Z;&-i~v{@OGCd1 zQwgY)SPTdRh)^Ko0168r2cTevVFD&tnDN452r3Ei96Sja8aP?R%bNo}JR&)g2|k+* z%5qB6WLWb;J%I2VD9OwwEba^@D0ZphN>zQ?iD>azMunvcW&)%IaoCJ5%Hrh+zlV_m z-b5sjO-1BlQ%s*(%?GXN?8!WxTE&F+QJpg&eFld{PH-T78u$Dto? zFk6C)XXyH08MJ&44_%T*Vr$rbSH1Mp5Nz3ZqP5#MuWP1W{cf&rL%7%b@V^=G&V6;m zKzhl{@rAPrhCY0}_uj{ge*9qFJ723E$5&QYXzSXCpNw6sE)`dIw_iP4Jhx)o!87k4 zUmtCvuit50do1Y?wg}tU8~jW^Yz%v!%xnRzj|fh)NeSULU78#`)UtH@7HQeP zPu&}h$!wi&W2R^GnU}_Yo!qwOkGaa_>)0ndz5OBn;_FAzU5_suN99tTcH`Ow^r7x% zf38ow_EF=NZ}HEz?(7=b@4KrX-fj@$v25e)5p@boJw5-|hWTKsMhJ9w^>mJ`?BDl4 D!-XY& literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_2_4.png b/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_2_4.png new file mode 100644 index 0000000000000000000000000000000000000000..1e5b63ef41bb7d6e29c96f9c9cb098ce93e277a9 GIT binary patch literal 1312 zcmXAoeQXnT7{`Cz*lsUEkr66%q{Jc>8tCxAN}A=yI;iu^ZgL}CC{p2^6|0<~mPVR! zNGHVnb zzG!YTOs|+%0RWiZ_!{j1q~YsHmv8xOm#MX(c5k zrKP0^f|Qk&m6w;xlu9LvYV>-HByox|*=)4Sc$0yebQrRROdM3@%i?ySg7TG_!D};NaB$qHpM2kWz*BF#KQjJqu6RoG+ggamk zMCgdX#6+)<4W=h}DF&)YAhQ646R2238;}{oDie>{Mz3R;r~^txRT6C`q-3(&=nC;WihRIl~@r zJQx;ZLOzWFGmh9uDPvZ!R<+-Wh1_J+Z;6MP6z|WbV)^_S!~ie?U;}^!AOt`hfD8g) zL4+PUZ7{?^F-52VjRG$QA_gE50FnUGGU!1eN5F^`Cfrcuz*F#Afa`&gK&+IEaj3nl zA;?kDs7nw+*{lEyUUCaSos}3XBRGXQqM}6|n=^&-j_8ChF%?O}R8Ca|vmx+eFLM)UOV=$lA;y8=|C;|uzEZhaVXOg>|{!B*e_dSy>kr|WVV@o#LJG;5+)18NUHXNxpp6PERE=4{L_u29{75F)F+x?zyHrQ{jeYt%@ z>W(gFJ3G8Z$DA5ixD~%+gzLvt#FqaY^#SV!@`Jsl4f{`? zId|#j?aMk2F1a_S>9e-^hff^&rKcu*AMB`uWs^6Odmop?C;u8ZN?xgXw41qjdbsN` z^6*E$`TH9s=g0qHKkB$f@U?4ys~vyR*K=H0e6Pjc)sCcZ_D-2r{9D6x^lzVZv=2%+ zI$6WpuT~$pyjX(@t9)WZN$2&p>OFVeL-s{G8W%2p>B1m3BH2_o>r|?B*6-oN`>L0x Z=awAYH7{~)MFBHtT+`IhUH{IW{{e;?S!@6R literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_3_1.png b/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..83d4fc8f043c988c35b00037a061b2fca4e8712d GIT binary patch literal 1288 zcmXAoe{2$G7{^~q=~b)JNhVcv)M3Z!#h~8wT!=aKtcX;v_G&P}joMRjLA@z1Oqr#V zSya-UiXE$%pukQUwWRB`-Fd-JVF5)Dv(@x)EOuo;rf1d9jpXWKy zuu3<6?3A$pfbsg}OB;)|x)_>raWP+bvOora7&O#3)fGpPNK{f%A{L8FOG_mZNm*GL zf*|GPC3tX8Gn zp>cb(K0g(Tm}7BUlJ{h?K@vrb+6vYncN&!(qYl`x9v2z+8IuuK=yT_U;7C59Qvfpx z>;&LwB*Y?dk2D>U6_N^=)4+lmj&cwtQ~*!_m=T1PN}UP?r&b5G+8&DPvsltj=WrkZ z<8cKhQxS3vrPP|$Iuz90Hp({IRp>LbrH2GPO!Yuld%Q!Tmtq`sEolCb{*<5YC{Ye zv(dbZN&9Tsuqz+;jqqWZO-N<98Z~0Lg&^%T?O_7*d_E6>f(2?H zf`z1HOhG46ONMl3O~IT!mgiE1NNzMe0xM9d6qn0&N)?T27_HW3pxox-GDpPY?F&VO z1YgJyz-&NlwA5)L2!IU$4uCKKeE?(;0E?nX z=&-?X5DIBZ4Ok3#2@ur*fdY^Qkd;FZ27?rgT4B-+g&=qZ9tQ>z7%9Zc$eni7%jrTv zCKhw?d^nfmVbM!r0hptL;N(YUsyclz_aUc>MURioaj|z|O{1G*~n=xT)BGuV1>j zX+g)n)XHP7>TzYw69#s*^}+*ZKficv4>h2aocHTXW~N%)E3JE8Ol)jg-6<@o@6o`mYwHmK|?dbD(9(%o&{j*V%fEIaJlXxm>@z^~X7r zHyS1;Ix62hGWx;WZ=junvj===cT?vk%l60bw?7g_uigFa;>50zBU6=&51x#tp5B?V z7ri!zzdb7IU-NYThmVqfOjpg|)-Nm6smDJSwmAFG|9ooQine>At=gvcp(`gY^Va%( zhgO#z-y`{?cH`B-q4m=~;x@c{^}Uk$iJE$>T64@*cCU5)+ zENiW*ywi4L15%yavU$?Y|L%8XW~IOEeGvHK<8haNsfxCGSLE;g)!ecDZvVFHnX@(R zD|%lpJbCbT|E2F=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_3_3.png b/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_3_3.png new file mode 100644 index 0000000000000000000000000000000000000000..e426f87e9caf5326265b679a21f700fdd721a1fe GIT binary patch literal 1394 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 F{{h^7-E#l{ literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_4_1.png b/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_4_1.png new file mode 100644 index 0000000000000000000000000000000000000000..8b73e1af14cee7dac94020cc97b975ee76be10ec GIT binary patch literal 1229 zcmX9-e{2(F82+|yyFrCc8&h139jjQf6PxV_H&WtlyOC}j+YydX^n@yhR%qZ%&QN2C zXDFm%Wj8FOi4D}O!wyTRN}#fe4XH^NOE|~^B{@x93f=-SrygYd^s|J#&ztwhAJ6m0 z^S%ex4Z9c2Z=DYSSTH!yzrI$xYKb-*o@~0&%K#X_y0sft*T%ZKy88NhgTc_y(9qb} z*woa7AV_m_^SpWUEOxsc!<-~ZFbu_UtRV2AP$(8lWHQ-8VOmi%UB{e&Z~>Y!vaH$f zw*`XEaKsgh)2WO%mlsNMq*6_iDB^J$dCDSsY!c^42-xWmnU8r&8D1%dRV6v672H z0_O8p%xottPTJ=3I@~cVe>Os&__w4 zKN%Hs>8M;tt4aat6`Z1A7C;3+So0!WlY0tlC>XC+@p$Yhgi?uQS;p_@fQ_+Rnp+^-YtJ*L-w#->tDd1D+H2 zPU!C({$}&Upy}wNMeVOIY23C(*>`Z$tnt%saqIT|ulzDI^X^@?VN3geqs2Slt1a2s zroQpkOIN!lx}E*Ex~AydkGo&3wh@bi(MQx&mwb1~efc$HYVzXUWh2t2k=wvfYv6jS`?u<*V2zW0jv72kWG-#yB& z?!LPNfL9Mc-@otc#Y+qaeSTg3kO2(f-7g>Bz6>ueE-x_aJ z33*E!xoB5bH}k9w_uaO6KAh2r!Ev4- zWNM-@tR)DJqAtvSnY#^^yUn&Ps_rO)sbG$VdnOgmn3XFg3oTnscZqk%SIwd5y01tC z&;cBP5Fi2A0h};EJyZ#~4oYHFA5X_^Z4TI3WscO-^{8dGLU+qDq3M$*l*b5uU3M|5cEG4K>7 zv$!ErGmUenO6bkvrI#hksz{o;K;4m76qEw00ioWDMKAXar0=dyCw>)ugHx80VQ90N z<+?V<`aBznTq1F~!tPb3(I?2HkVm5xhf)z$N`L(P_oIJbe&CPyj~e{=<)7dB=I-JC e&4=Ni*2kV-!o`2T|N2+Y;Nk7#{og-*{PaJsac8Ok literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_4_3.png b/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_4_3.png new file mode 100644 index 0000000000000000000000000000000000000000..cb1e29bf35498b995cfba243435a243028c4ba6d GIT binary patch literal 1547 zcmXAoe{@oH7{dZ8A|Fgp(8dtESg7!mtDY0suXiOY`|wk%*B>y$Zz$K|~COgw;Cb z@xV|>gbE~>P)3LqdZ~&=v{sa26ec%r^Q)af(i_#YNrPA}lBpyL5>Zof9gWj=!tT*~ zSelJl!%1f><4etj_!tn7KxhDB3y?Bgxkso9NOd8Mj%gh!lQ+wR;Rt~UD7nb2LL6F! zkHUi{GG?O^E>qfX%Z6NYF+WU)`2x8V(V}t#hMP&!K~ZkAIpA=FJf0ZKrpCv!*(?Mi z8c1DS)W^qzA~K2?Qn)>>^JdJ!EHj=9WUeLVU^&9)%Y{OfSVAH)N}({R3A;Xj%o1=o zBfdZ~9LuFJpjUHEB;TqRGe*R1!TfeI=r%t2us@Rw!(2+PRznuRB!DpQg*`9#KO&pOoleW$uKzJbqqt5- z8jY02LZdR9T;{@1KaPgfvT*{*XeCfDhE^$bqmad5Oq~zEysA9^3!tF2v4I52$%$qF zIH&8X*Kexr=xbWv)4%xU9H)3b#QweI z%_G8B(%W6%9%Z0@6n3Nwr`$QF5s|dE}@&Qwio^QI8xPkXzi}n3*Xo5 z@LfFj=-7$29Se=_M3lQ4i!U538osr4 zap(MBwtse1S>E-DRy_Cz^;~cN`FY2kmGKSUZhZgZEqAjg*1DFW4SP-v9w>Nf;a<+u zOAat!&hVyheWZU;Y=j&wsqWgEn2leP#9K;viH=myUZP{x4Qpb5|B^_VlmhjqUu88kCzWUxZ_1Ek3 Pi3W8w4b>+e+S>jvw_&;= literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_4_4.png b/resources/g2/track/rmc/large_turn_right_to_orthogonal_gentle_up_4_4.png new file mode 100644 index 0000000000000000000000000000000000000000..b94e87cefbe43d3520b41cb149b1937ae7dc9c80 GIT binary patch literal 1775 zcmX9-aahuK9{wsCs1+b8P40hQ*Q@D{OiXGkm0^jV8O}PD@n0*rbaqyQsLbJFDN(v*&p~@8|ja^LhVx-}i7u zId4H~b}9g1L1_uMD!z;3Q;oyKIU$)?0{{k8tgBx0>P$#TOiaXJFiA;C$;rv{=FP)m zu{azqB_)LnK@gM4fMJe6z?VuzN~J=p)tXEehr{Xdj0S_zSd7U495z7sX(ACxE~l#0 z44s~BG9xyJ*yUFG{Q6MX3e&MdcAA1u)(EKvDb1o}_G)3bN$7JZf?i!DXq}CEcoZO} z0~H4t1X!B_>(=7~Hd4$-K_d(_CPwEBDC&U#KmZV9u?jq1L!lUGG%K6kiy&T^ETGZM zSS+a9O<|HC4w->a*2ap7SECW4%oFe$@!ZPaa=_1n>~2Tx+r=t3q-#(`A=fnF*#t5goX-fgk?ozBqc zXfzr{0Yw35CM?s2hg}qbk1h+ry0FL^QMsaq(U>DL7nnuU=y*JfOy*G`0i7Xbvz2^A zCyqZ;JM>1c%@OqYV<8R@^RY?+UL&R&W|`Nn3AoLXfF~B4K{)^j0Z;;9 z0Kg7_7l1Gppm88Ds#cPlpDr;Fa+# zz=wel!OEp%jf!qG@N8D8%cb@E?U9HdjcZY4fT>R77|4i~Dt6KoLAD_(vd2`eS(9(h z8A1b58VRtdSRMl};!x!Rrdq}~XyjI-#$`A9J@!b@gT_KEJ|A@gGzd^M?u9Nc_Zui$ zwK*JSnN7bz>GQ!Nkw7k&s?`c6L(5{AI7~atbn_Xb2t6W%P%#zN&`>iIb#hQYKOTNo ze%hl~9oSP7lV?l;S77bizaXHn?6H^ zBy{|a#wy~H=E5=I&)csNIO>s4N>1iL8=Bb{Lw%_i`k|V2CEwx-^Ggfz-jlSBOr{@g znf#h9Dc_DmzBz%OKZNGd`!5NH2)4|o)4zLi=PwNpD&c)U3_@MubFUM#WMru82=T!+ zT;D&o3$vgehks;6{k2=eBmTxxo$j;duFG#e>rXzGHJn%2-W1qY&E2;h*&HZ+vdr?? zb3W$zdGVwG7OMk1cOHO03+K zma&IlG9drt=|~waK*J|2kVu9av!_gTS#4ip)ZLxls`jtjPQdMXzdRiZ-#)zyrvEX4 zy*3dVS(|ZVeEs(WFBf{o$hQ{hpQaDtKb(&3N1%L(L|V|(xPJ6H)mRq(b+k4*c3_V= z|A6yE^wX5@-v7wDI+IxZWVpV#)l!{(v%lrV&XSw6EB|}u5YEtZ2U%0m*>SfJSA`|c zR6gToKwsV*AH3U7qEELKIVJ|Tl{NF0Y>|>y+#rl`tC9jQk90PAL$wm(BscgtH!t_> za>u|IS{vr6F4}eV_+?mboMJMF$4RqX!tKAs`PsPs*+#mH8O^7v+K^^-%WV4m-fX{r8?1V*wXse%D0u8z;~N8DsC8TU7qs8i&eY0g$u;yGPPJwgZkaf~Bk$950mE}lgQn-0cjL=<;;jXxYs$G7i))+y55;2`kN^Mx literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/left_bank_to_gentle_up_left_bank_diag_1.png b/resources/g2/track/rmc/left_bank_to_gentle_up_left_bank_diag_1.png new file mode 100644 index 0000000000000000000000000000000000000000..e027518e083c2bfebe1b6db00220661cc8342eff GIT binary patch literal 1350 zcmX9-e{2(V6#s5rdt*N=QlLo1B1IZ4Sn$R=tmDR7?B*f2aKu9D=-9;-)|nG3>9Ao1 z8m&tqhpDU!MG78TwLo!`G+Ia*WvjCboh+d<$EZ@FkxA-SWGuscEg|{5_j&K1_xa=V zd7TX#b>$@sO8@}n^>x}!d9KOVE5*EguNXZ$3;+)_Y}mX$zZMh}6c!fpc)X&bB0irl z5C{+iDK0LaHEWhwCX=D4Qlr605~nDG#X>tA4v)td42Gi75su5|a;OquYCzzn27}0K zmRfB}r%Ube68@ku9I?a`u2h=UC=k86l*Yw&y_BKkJ`39G&_q1?c#!5|&J4#+WurO? zFe-o*0}P4yX(ZwjCjFvZTmmynm@~o|2EwQe00ICbg3v;tT_R!Ra#pSGC5V{Gl(gH& zeLfh8NKlas6DtX++9=o23cVer7`4T#aRhL8m}KL|5NDFABubr3O)79oWuP^*lW_Ws zz7QQs*rS{~k@2UdB0>y^NFX)=sSU^(MCB9ff^tIyqZ4{p%ED%uDC{K^B1$E(>J%=$ z+D~c17Bb2|@atf9zghG{Atdq(}g_2UMEjZyc=8xHe zE_ciyXrRpk11#i{gdET)aAP2(0~`S$2_P+oE)=o^44Glv2{{%#Fw!O{Y~}&r?|9agD)1 zn$48WMx#oHO6kGSfCi1=$`L}5(aWGw3hi>}MPUeo2|OQu)r!)ICqMAvri~=1xjWjD zpC8m~*KMxr{OWVV?(xO5wHFQqbPpp-Tm?3HSAX38SHZ!Temi(`_-GH=JyMM>-qYy4 z`{s#rXZa26x@1d}?-o3|`o`YOnF|*VYj0PN76@GQsa8SK`^KLGO_!H1XqaBwdA+;M z`3djXme@Alp3vm;owfH~tvr9RxvcD3J9VY@2rCnn^ zOByAVZt#msN9Kn9Sb0_aOJ7TWta;5dT+{C*lh^Q<$yL{Ow#cT>uPPI$Ua#peTzA)< z+H#}|7np1Jc5GLUz1`z3RQt~S^Y1Z9N7B4kG`4-^(pwKc9ol&usn#9aM7Mp(IR6t0s$-L>v1P69jI?6lyS1tLH+gIB zOqcJ#q^7FZ?l(33^i65m?amKA-gocg*bLd$zu#GP?o98Z1hlS+Hice*<#sKgXOHK^c00X3+gK~NQxRu|MmYquzf#P;LMk(E0qyqnaKZ92_1VHX4niqod>Feh?l|^fFc^=g^Ld zmiqX5)~c2yDp^z+=q5lYYXhhN28P)&Vuqq`O zv}`k7k23?onMi|386{e{G~&Xdc#@Udg2pH&uiKJ6REJYz8ryO1WyL5jXPbSBi_p@5 zuz+%b4lsU7$a7jxMLX~M8z};dKE*Rn;3L0(1c!fB+x@SO9D>Ks8hexekg#RIF7RYz{^u#4;2rAPtaBAfH2_isBwx z4p9-pt?@i45_DCpXA)kY83pnzG?QeI=TTYasMaDa;M}Gd5Nb#nF>Mz@u+yWepX|rW zn|OoPJGuotg~=?gi&RhJTuTYOUO4iSXq0DBS!Af%@QQ+BKm{OFdoir#-hv#slkJwD zjNigpE+t*pdOg#1ZH^uA>{#R?iAxoBr7~r=jSLETG@5WI7E!L$;pZPT|Gn+Nv&UB& zJpB95FKQxOUVQT8{&(inAMgC|vV&eVzyIj<2j850*!c?n`SsPcb)S3v+wabcpMIf6 oR(|jNrT^c%@BE>D{c-0@0PX#I&lcX*ZSmmp(bdJzpFVy5KYwI@^Z)<= literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/left_bank_to_gentle_up_left_bank_diag_1_2.png b/resources/g2/track/rmc/left_bank_to_gentle_up_left_bank_diag_1_2.png new file mode 100644 index 0000000000000000000000000000000000000000..6ad6f9317cb197cb053e5ad19ced2a4cc905aa5b GIT binary patch literal 1317 zcmX9-e{2(F82+}g-C#dTvV^h~Em*aL3Z2}r3!OReMhaGUWw)h+qQ@vuLt!U$SjaIt zR-~I9oX~0GiYwTVil-~FK%+%VDLO(iM<}F|W0p9w%8%HQf;BAoSwix>@AJO@yw4xc z^Y-bQG!-*yW&i*xR;_Go&hxT-y;@q7?|98N4uB${d#7bZek~{{C@d^2Dk_>bZCY`0 zaY;!Df*_@(rPHTR7t3Ta6jkClMv_{i(O|LAcDvo}_67o>SS%q3nQRtS0!$4EZJEJP zWj0H#jMCv$yFG+IK!qcgIPXl2`)~!KSC`RRu}v>!jdHIA4chUDTOSY5!iXa+_;Q(; zMgk}WuwsBE5kHMYoT8+^DjS!;v=U}1IK@I3lL0^gKp_Y%64@jYRxbCc)j@(7F`1G! z+kLMWMj{flN`{G*gj7w*HMBx+LyfH3;=%2l))gjwaVjL3q$-J0BU6(Ktx;v5aoRyR zyp%UYhj?2|aPet>Di;x9po#=y6Ob}M&LS$WSQC&NA{focZ?f+X=^ycCbEI_R5Az46e5vIEY?V6q(W&_t1Vi>LFJDz z0jF!k9}r@EHiZF7i&#jJjgqovg@?g72O0L5MmSqC;z=iC+3bCY0iXxK0ssp@J_aKI zj3WT%LEwHJo$Dr$Q;1%*d;NN{VQd zA_FEhlPF`-vNp5NWeamIKE|bm7|fpojPcg2qYi~!A=uF?wjlr9(eXUEWTy1ab&gBg! zc70wkhwQ(yXF+{oiIdxI*ZDx#@m;eo^hSo39Fmp)Ieg^I zM?+yv$K)rKH5aZ$mD{Rs49Mg!A*CnRUA;x!J5f!IZQXQm!1?IOpk!!jb;X|fm%nYO z#J}^!7U}pEKQ&*ipJ?pvyY&6Utd?JIQ_SP;<+5Kk=z`wh&{)&LvCG#kUZhoq@+Whn zle;#0Z@h84)qE!K@Tt&~JO9VT!zFEducaD3uG58cga6ddo~Vr1_4Ma{f3UCMzz4$W zM<)yMhPqKjcl7VwiEZb$OxD-duPwZxFMq<7JQky)OU}11ts8y1_3VyW!=2rk=x%#> z9&__ptgH7y-z%L5j_&LZ9y-vQiGE{BAN{g@@z~Q##||e(=Y4i-u(j<@hxhKVrJ|z4 z*|YG}q8&_)`c8HA;SaHYUwrLSg`vE2XhG=HuFZ?Y=h|D(zV{M$dec4i>CVYDo4tF? o>-%-*D}Pv%`zo;S;C}^I9(5gmd2idsyw_mWil)Zlx7PRk4|D8PRR910 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/left_bank_to_gentle_up_left_bank_diag_2.png b/resources/g2/track/rmc/left_bank_to_gentle_up_left_bank_diag_2.png new file mode 100644 index 0000000000000000000000000000000000000000..80331e54ebbf36c05405220ef3d4f8a4fcb0d526 GIT binary patch literal 1528 zcmX9-ad3-w82%+`rCJq~1}Q1wqOuA;q!WDAsI-mwT3-pmrR#UsjA*|S6%(Wt69lnK zD~Mh;DKVkZ*$J{Py12Esu%I-y)M7$Iu^^jr9lyo7d*1hX-+$ickLP*!6fYL1CXY@A z0HhWcELalfsqsRRXz|`tpkV<(1I3F<^W!UpLZMQrG#V`-At5m_aln89bUHmLDQV!q zflLmEgCKm72*q&;LC91pQm50I%~q$=<@I(3gV9(F;R93%FiDC`mZns))f&FuAT(Pr zyHoD=sC<4yC~On)=u%+{DPd}*Y$L(7s*v+Kk;g3cImuwVJ`%L`MZIDckn?~V1xB21 zC+QvoBVbR9`B*T*hcP+qH$v#;0Du7?r_)IWL(5_rxm=r2cpk&r6^ejX`_yWM9uEsi zvWRpJiOG%Id~#P%!4|OiVvZ2!NeF?A6p?yNZs5DMfHx(a7#n+61Ix|q+9 zp=>3NXcQ8oR%tV7-42uA>xcxsFcuO>B+vz55I`9BLLZm=2$oJ`35Nw1^GB$BK9Nj@ zE0u&sLn3^gfNw?-hY0aV_?;LpBIQ6i8)~`GfM7zl0k82gH|=Yg`Ka)~)m2%& zbCZdAmS5KGtXi>+dB^-$OCdHhz??(Iw2 zv10koEiB>7p6S%h^Xn(qox4B%MRd%Sq+7?cYsU?#N-688Ovr6g*B+6DWZv$xBMz5( zekvGPQrmmx<>lh0N=pr>xZPIW8mJD9rCy`E_V%$=xl6=7bEee23U%+w9HZVoxcXtv zJj(s07w>$n*hQus+}U3WBEwFMP6tPp-%HkNrv+vra;DG4jqTSix z&DF$no$SS*kMG%&9%~Dg;=My#KKbKy>+_gpTVhfXw=seCT~|kVI<4flO!0=Sq4n=& z^~=UzpLK(1cwNcr`FZHA#xK{T=5$jQKFHWS{O^)Ac}3jprzFyywSRKsl&RMLs1wXI zQ>pS;d_F_zc#p_9E4wGDr~f!}&@#y->a)S0PAoZV+TULEMazM_Cr4zTCH1aoxmojA zQL$)J`mvj+%CU(QZ>)cuVfreXA$;@g<%XU1gSThY**E!Ti-$isSXRCxA}LyV?RZ3+xb=B84|EKhrdKUg=hrmnu+p}Y{RPdmJcsAH26E#&q)ohj`E7o4EMhBZ+2IV z)ZbjStbTirebkt`%s;DV87^iuPI#JiM|w$L02Mb*ztG*vvA_IBT%2Cd>~Aa^`HqrZ z=pJ@Dd-EMu<(jJA$~PxZcg=lJ<^5fFa&2>6*NkniP8|!)K0M{|+Nx2#CzLm3txa=I sc@A}myQ)?k`1kJ8zw$OSZ?wKYIVe5 zm~c3t-_Jo=Jd7<=aK!{)MhTP#l(dMoc8Sp~xB75ri10?$ToFeoVpDzw23R;?s{vOJ_!dOuV9Pvwl^>(RN^?x>Oj-i)v_illMI4<> zU{;DrrABsv^7lcZgz^O((kha>Fu#)gKH z$s`0E3h-?R>S9QI96TgY$0Vk>%9+sll9r*ACviVA1@i<9hKS9Uae25vNQ%W;xxz%G zkLf*TYtZG12EwTr1_(K##Tf>IYtaboddzLYeRg%wZHV~oiAW%ont&JpN&vI~SO9PX z5CkBO0GLK0fqE@;J7F}U-~$Q;Rt$J$AgTZm2asYzGYXvw=+(fG2}YgZf8#|!E&)mf zq9NG^oxp05xtyfWXAFnki9{HtwK!^k>hmxQTjAsqUOp8STaqewO6Qxhh3mnPOHJ^wuS@lL^J?XF_Byjy#Pi5glR8KX}O1RjCy-KF0$Jm zq78*4DiyBLka|6Z3XLM64MW`$)GrqfDFg{64-#Bx;6pnKy%-G3)8Q9Al{fkS4>Z=+ z;GpWyE3W}Sb1s)Yx2C%F@ZOiUb{8^RetEC_K5=OyJ@syK{s`lTio+b{>RH`QohyzM zJQ(k3lk=>kWRby#UKU_birJ}jMcMe4rew8jV+B||6Nmc=Yu_anm6C^cN=evW|}LP@UrR;Js$kyMpail zv>{pe@xi$*<0HlyoiuvETB&^Q`U!{ngsSw#PWn-EMStH&1v9Hs`po%rU)4X@{N^rF zviZ!G<~2>xE-90CtNK&4XJVT{|9g2sd)a&UdP+9V-viFh`)y~t*H=RyFy=VJ{rqS{bUwE^BQATfIp!28ty-)V8olR7Z;4hzIu6kG3Kd@`? z?Xf=fcnsXyz$~k4@bsQ+IF>tF96WwBV~cECFlWa8ujGFY?;33SH@mgJZQs15y}zn^ z8jfw#?O$1!({Z@IZ|)}7+?LLc0P~U6Isfo~?$ArA?uF0Vz>0#!-+jiqHKCrq>iebO zr{&p`17+Ou2m5E&(HDH;&AZIIzNC=ecrWW_<#A=}rjfdIcER#xHPYkHuYdnPdGn|0 literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/left_bank_to_gentle_up_left_bank_diag_4.png b/resources/g2/track/rmc/left_bank_to_gentle_up_left_bank_diag_4.png new file mode 100644 index 0000000000000000000000000000000000000000..756f86f0ce6d431b169ba5c0e520a77c312ef18f GIT binary patch literal 1626 zcmXAoZ*Wp)7RKL%1js*$(iD-ctkQ;NFhzSc*D2PU zh#`tC>(U*pIFb=ZT8V=VRnkV6RE$gqr?I68wNc6JbtSuGWn-$?VPj@D)pzN1<~irg z`Es5Q&-oo|Y)}^EFUbc06xG#k*pitmGlg?mnf|DC|K9*$fyVl+HJLRlD=RxYo5f<~ z zk|SDe%xs=R!Ql`@-3;id7Qfr?t_nA4E(SyCbAT+{~>VICiq%2Wud#c(4<*=X8jH2Q6}klP&% z1mff4sZ43-5!-b#mkIM(sh~?c;xorWu4F8nPR~FL02KfR z0PFzx02l!v!2vKM5{D)O^m!l?Bc(u(00#yFO2Ci+QUK}&(1t({2?IJ9u|mcJehD50 z1P)XrM@I|HMw!E|^m^!E&=QUMlF2B{c!{(CF%@8T0qGHI0#ZGru&30%v@tm6jLZk( zFqV??0V?JwAwoV*%91Jx)QF*33S9^cU@%H#o*ykQ_~{o0 z+P5@Npz^^)O9l*X-G-{Iwa2cUB2IW#7Je|Cs;!s{ZN7T=KW+UoSwk~YQro#E^fD{& zaOI1V3+pP~<&n;bFVVggq5GSSZg1*gIY3Urh1{B3r*=2}cqdtLhUxDQH$1y}Y*WPx zrulO>`WB%**I`HCGx4E;W)cs3jBzH#lnId0eJzz(oBzEC)+t?YQ?(AeRI{k92!vL1X;wzs2b)gyM> z-%AqIAopnh3aYnnw9>G47sxs~GQ_Wz3^l5nObe3Lm-cQ0r8PM%um5(ktnJzlUB?&O z_f<{V*p5ZYg7tsiK6HuL|IyO(p9}v)kGCK6=Al!A>zk&E6HA@l2Ntr{R_$S9+`El` z{at61*gf1XSYimg)^-m$-nA2S%ZsBm3wsZJ&TIB%uUeGKUVgrJSQxWJHwl$_k6RA> zK-`(g>0PUxo_TV%rT9?y^j+p&-i_LOz`u_^qW_zZpPi?0s;{8R5AvGAwe zXR0b@PR&m5Fu#&Gv&Vnc{OSRwQi|KI8>2nDf3vUX&3bCVw^loL;*+At7v;6D{Hs>c znDu7+bXDI=fgMf7v$XAQ#nLAi_MTWbWZrq(R7lS-x9-0s3m9aM#r2BZWx~t;o12%{ wAJkr)Z}@TX&X>5H&l2}GMfP2;ep>p3N7t_lZ{OI~kpTqM)ii9lRNZ{!|Ed_z;s5{u literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/right_bank_to_gentle_up_right_bank_diag_1.png b/resources/g2/track/rmc/right_bank_to_gentle_up_right_bank_diag_1.png new file mode 100644 index 0000000000000000000000000000000000000000..eea12d7d5278077b153b10ee2ab7bdc0530ebf9a GIT binary patch literal 1477 zcmXAoacmQH6vuyEx8BA!s|+~g(4xgvtlF>}Hc+}_9J7Oi-QZva%e;*Pid3k{fdv{Y zaKSnX9;U&{3U*kahJpo`SY6eMl}&A8$EGP*u&@b5Q3@8AGT>(k$>+V7_s{$O@%_HG z#s)+Ah;btT0OhmmXD!Ij8Tp!8EY0^5?dLB6AO($c7uMxhi9}LRP#~2`3kwU2ii%`1 z8G<0i#l&ps>hj0`G>MG0|r<% zun|CHkbo75y5z|~MJ|rPj0WadI4nXKQvyH(z#@oME_Yy&G;GC%Ay`&JN+!4kfXTvG8LW^k(N*$x7IIYP_TAj4h$NIw7 zaKaHwxf7W{dMGL!pN<_3i)DTjcqJ%YJbftNJR*b<;T3x|uF`Gf{GU@^x z8R40Pz$HEWU{J_LJwu5g9E`~;v?{d`*P02^#xO39^V)17mn-V?CBor!e}6Wcg#fbx zl?TBCax#K3akV*3ItNYuj4hHC`*WepaB>Kis^xMmiW(G3My=s=I-a7PZ2p)%dho$x!hGq0AK`w2S5ZM2tW@2g9w0m zXcF3a81%zbl2!pL4%`F?8$gN%kO9z&LKhDGGz?o{+zC^D@W6O2ph#e(5etVpY-+b? z2>7{3L`WopnM?xawJ(tZUSR#{UzF>4CuY>^>Pd^ntj$*igZXcdS-BR3HW z3xnIul<2Vd-Hu4mornc9sTjz@p@F0mtDNR4E&KQ-DRX~RddT|&gV1mkrU;9GojR!xlZb1VBW?VkA5`Y4J z_N>~4^=*gVpWhywP_})^$@&N!T_VZcTl>+%<6oaI>@8S*MXMKobc}qut@y^Cn_1hJ zy_YGeg#G85NiZa5OuBvRm`QkTndjWG3(8`tUT8}fU6*}c6bpcsCDPRJ?yt&vTUyH3 zzF}rDi5SKHUD3RKg|g%1-*@X4zpDO2Bdh5=d*SJs?;kCH?#*U4lew_LL0#giW!%z>H7{*&=ax1d z=C-gZ;p1oi{_Mpyt=D(NmAgkxdd^UI{=y?0E^d*vmefc}_uQVERPT>ejh!-t(OigUwRa)t<5F(Gw$E`;f=KEFX3G^<%r zKU#G{-#?<(C7Uu%iXK~pJzF`-StqrJ8pA{`Dgm`eee#S7R+Y^w&ZCsWJ0E^j)7P zz3)Z#Nzjt+s!q;VcBWV_?OJ|=7<1^%(7GQ6$`7-*w{4ZK_#OWAc66Zr(P;aWmTUFZ zizZ92G=JIK7;)*R@vO}zKX>BVz@S@Yvgy&ze-@7=|&mDMBX z4!k&a&RNMp{oW&wSMI$%vHOb=8yg2ca2K6DK7T?hwxj#k)kiBoJ@-cJa@m}NJDOhB ule{e1H+|#kj`ib@a=z4*m7B||@5l=)k0-HHf+?RxFuSf{)+aMtw*3!?+=mnZ literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/right_bank_to_gentle_up_right_bank_diag_2.png b/resources/g2/track/rmc/right_bank_to_gentle_up_right_bank_diag_2.png new file mode 100644 index 0000000000000000000000000000000000000000..705b73688a54819d4781e9de397f44d46d77a5fd GIT binary patch literal 1545 zcmX9-e{@oH6#wq$+mDnvN>VKFpmLOUFy9&#%co<;CTnl{ws6A})k|@qQoR`}Dmiv! z8!FD}P*KqcQE{WTlnfgd*>sfHW}!ZliZyaOg&W$IX5a91&gb6Gx#!$-KYx5ax2d9B zIw5On764#EX-V zBqJjuGc%LL!SieQ#fLm2oSkATO(uX18xo7V~o=Fv6x@V21)_Y zV!%uwP7UHSF+xseJivxgA&e{G12cqv9soE1N(9j`7?D{jkjj zeLgnIDR3QTgb zlazQVB4{8(7AoR0#C(>qpbJL)45o-LkfS0MCeadvi6pIBt=nYs*=#|NC*0p3i^U*d zYXIMZpiYLw%O(N>Rajz-DC|+KH)igSyQ2?6V=!C5V2D^ODThZ0grrzZ$#A1GaZKkn zwe~pOv_BXRV?ZfGD1xC^a?EOhRfoBZgx9L-ap^-oYc%AK$A=*XfE)k{05bqC0D1t3 zAOI$SOQ4Q|E<2<{I3H+G(24<%6wo+;1b`YAG@;OrLysB;jF7g2N5+eQOakOMq9$2- zt)SH`b=pa<*ANW4qR}8sXt7lQ)n#L57H;P#J$wxt&iuz2Ul(uQ-UI<)k8Pk3xxJu_!yS>ftTy5yU8 z5AE}eKj}C zEO`5;dq>p1+&-qNWz^?;U4!Kdx#UTpsdI8%FoeKgDefb}cz^ z>w4qL)D3~$4;pyg?k}E5Prll`Vx_C%k5}5879Ad~t>Zo&c*gq$nEu~M;4BjuG4F4 z5ZC^b)Yp9D!NuZ!*@o@+YBIT>klrzjJox7Tp;Xa(W-D V|IU12S|ZP&bWwS6N73u`{{iJz#!mnM literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/right_bank_to_gentle_up_right_bank_diag_3.png b/resources/g2/track/rmc/right_bank_to_gentle_up_right_bank_diag_3.png new file mode 100644 index 0000000000000000000000000000000000000000..85da1248e39f711c803cf9a144617cc90d36c44b GIT binary patch literal 1364 zcmX9-acmNI82uI69xZb;!<1R3w9*zGDrv4Qn@nk?4OU#Q_B3Q-N8_22N!+PdhY=T0 zrdVl2gOg_HsIp2^QgP9YDLR~V)`{^NyA&fvmavR2HC`(!(>i~{n7r@3eE)p!kN3Ww zwpR6=;<91@z?_!VP3<{t$jyfwc8+WB4UYl925oECH|N&8ygU|*#b&ef^YaS|3JMDg z5d`6II7LN80cbH#Mmv%zpGt~o67R!{^ z3nLLB$`>mIGEAh9e}AQk1v-nRGDzxK@c93Dd=!Syk0sKN{){+3NtHdN^QBE;#yOq|rf1_>$d&SVa)CfC65~=Cp-@m7%&yNJGY1{6 zQGYNIr87w-&}$G1=UMb3r%~!LD+6{s>@kc6Eb)jZ9gk)*Q&0(j761wWCjbEeMgd46 z0Oo+HpqYXJA56qC2_RA6Qi6~gBrpJR07(IKpwNfGkP*i0FyRAlf|mo03TQFJNC+$@ zsmrPM`-pJZM$>_Gnua+qp#h*~uF@&Md?I~FLM9YWMiMM#2Yj5u%py zbV`vCN6iL}(_-|wEa8BQjt0_+D9j|~8Vw8qm;eywvasju-a=?Idr~R6$Nd&mET+=w zaHEkhn@Ln=lgr#nG@wEw8re7|O>4zaFM<{c^q?@LgtR7Ce)&@F%$pzRZg0gw!{7J1 z0AR6Nni|)y?zuX#ZRhp!lEObXl^?zed)^T}FJ7^)tn+l_GM8I3@y$=SyU|qBeD9U; z(TmaA?uq7ItjqFMq_tuMn`DDkhw@(O^Th13!I6?*#O-yuN^9}Zlbe%S4Yw^@LU5XA zei-@a{F$<%>H}74<(RXyVBYc`(8{o%eBFjHzb@aKH`BkR&`O_5Z0#JAF!K*uUqq?b z-|l}`^$+*uwSggP|D7KnOs+XTApT(CFbeRZ)TS*54>fFk|5e}ITbs9muX-mIw=4=y zZ@PEA!TpTr;{4w09gfZ$>Z>oSI(#W`4XHX^u>hB)`huU$JwlY6ukSeBd;GHFn7Zm& z|GC)eOn(0oR%tcoi!J~D_6hys_AGJf#;3!eYxm>slgAI$9i>yIdRp4TdGNVx`sA|e zKWZ8}#_m6;+p)WCf9hc?|L5^x-SU`m$Dnch-EIA~2l=C6AttlKEu zyI_0y-Yc8W8m3-vZ8AI>ymO!eUsy9bF!H>Yo~o@|zbsnyw0e5-CeuD#I$d7TeBzaO dnzi;>!CAqPfx+y###}W(OLJ?}xmBI}{|Dj=TI&D+ literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/right_bank_to_gentle_up_right_bank_diag_3_1.png b/resources/g2/track/rmc/right_bank_to_gentle_up_right_bank_diag_3_1.png new file mode 100644 index 0000000000000000000000000000000000000000..a67a1673baa3960095d58c35784c568b9ff2fdb9 GIT binary patch literal 908 zcmX9-F^Jn{82#>ice;xk1a+xtMG>tFDiuKm4Qi`FchLp+s&YzC2O1nuK@blfbfC0` zdQhkaQ#6R;618~npuvNn9&S)UgD9fhU=j@;Tu{NKrd3G>5j1$X!XJge`@WC2yf?h} zeSi0~ee=fKHvr(~$!EuB)jh1{wf$PP|G6by1JvN|7w2~>y0x{ny}ezl)pmAvc6WF8 z_VzFg+uz?mI5=pwS}m4kL{U%_N!L53Y1p>yd6U^JOp-;G6=lgXAn+hd^-ibJ>yiBd zGjw=wEKg@z6r1zZS*?AM##Fv;NKH#6U7ebk?4>Qno;sfy+0`)5{7sRx3D9Wh3*ai) z)WBi~Urrn4oIp8)N)27R2qi5589>7@1II0ba4E{?`Ab>8>UNiw^=vXhaZIp{me6Em zlGmuVL8}(4ySzCT?LZnuia*!FtV?nP({Aw!E$Ljx5RIWcoM@BK2vaM`Mrl4>ZDL%2 zh62qlkOQDxjGHvuGpZ8{Myfh1(=XfvUCMMr=ZJorc2s_ghIIM-~p$(BMhI?tPuJk%<&!OR(5O=nq>mMZ}?2{RSk(nz;Qj|W09RHAYB zDzKLEIA11Z`3wmFDu4;#0t5h80Ba0T1zAJ`69qoXmNEqf3nKx-He@m&1(4B14vTyl zg*`MMqRfYv!E+#qpvqWJZ(4nN*M%8Td%JE#k8Q}#(Mq>PMri%wAX zqm4Je4p(SdPz~Tntj*vZf$S;lpewmn&mUP)FiMjk&k|IwI7vbwpbQYIvKUr&uRz#? z@p{dTy;m^jbFtG=dOdwGFj&Us7*AjWk&Pv0A=A0qLK=xI3XNG53MiGT@^iQ9&tLw) zgR@fw4*&h*enmb#IX*i7;0OKV$A|C!dhzIX?a7x$CU1u__ffxpR8_%k8hedjZUKe;fb+ literal 0 HcmV?d00001 diff --git a/resources/g2/track/rmc/right_bank_to_gentle_up_right_bank_diag_3_2.png b/resources/g2/track/rmc/right_bank_to_gentle_up_right_bank_diag_3_2.png new file mode 100644 index 0000000000000000000000000000000000000000..d6dfeb8691a069dfc620117a77f85a00725e0439 GIT binary patch literal 1340 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 H7x(=JdHT|r literal 0 HcmV?d00001 diff --git a/src/openrct2-ui/windows/RideConstruction.cpp b/src/openrct2-ui/windows/RideConstruction.cpp index b0719fed0a..ca23e9c817 100644 --- a/src/openrct2-ui/windows/RideConstruction.cpp +++ b/src/openrct2-ui/windows/RideConstruction.cpp @@ -325,10 +325,15 @@ public: | (1uLL << WIDX_BANK_RIGHT); } - // Disable large curves if the start or end of the track is sloped. - if (_previousTrackSlopeEnd != TRACK_SLOPE_NONE || _currentTrackSlopeEnd != TRACK_SLOPE_NONE) + // Disable large curves if the start or end of the track is sloped and large sloped curves are not available + if ((_previousTrackSlopeEnd != TRACK_SLOPE_NONE || _currentTrackSlopeEnd != TRACK_SLOPE_NONE)) { - disabledWidgets |= (1uLL << WIDX_LEFT_CURVE_LARGE) | (1uLL << WIDX_RIGHT_CURVE_LARGE); + if (!IsTrackEnabled(TRACK_SLOPE_CURVE_LARGE) + || !(_previousTrackSlopeEnd == TRACK_SLOPE_UP_25 || _previousTrackSlopeEnd == TRACK_SLOPE_DOWN_25) + || !(_currentTrackSlopeEnd == TRACK_SLOPE_UP_25 || _currentTrackSlopeEnd == TRACK_SLOPE_DOWN_25)) + { + disabledWidgets |= (1uLL << WIDX_LEFT_CURVE_LARGE) | (1uLL << WIDX_RIGHT_CURVE_LARGE); + } } if (IsTrackEnabled(TRACK_SLOPE_CURVE) && IsTrackEnabled(TRACK_CURVE_VERY_SMALL)) { diff --git a/src/openrct2/network/NetworkBase.cpp b/src/openrct2/network/NetworkBase.cpp index 92d6725fda..12313b84a4 100644 --- a/src/openrct2/network/NetworkBase.cpp +++ b/src/openrct2/network/NetworkBase.cpp @@ -43,7 +43,7 @@ // It is used for making sure only compatible builds get connected, even within // single OpenRCT2 version. -#define NETWORK_STREAM_VERSION "4" +#define NETWORK_STREAM_VERSION "5" #define NETWORK_STREAM_ID OPENRCT2_VERSION "-" NETWORK_STREAM_VERSION diff --git a/src/openrct2/object/RideObject.cpp b/src/openrct2/object/RideObject.cpp index d5460a66d2..700749b04e 100644 --- a/src/openrct2/object/RideObject.cpp +++ b/src/openrct2/object/RideObject.cpp @@ -40,7 +40,7 @@ using namespace OpenRCT2; using namespace OpenRCT2::Entity::Yaw; static const uint8_t SpriteGroupMultiplier[EnumValue(SpriteGroupType::Count)] = { - 1, 2, 2, 2, 2, 2, 2, 10, 1, 2, 2, 2, 2, 2, 2, 2, 6, 4, 4, 4, 4, 4, 4, 4, 12, 4, 4, 4, 4, 4, 20, 3, 1, + 1, 2, 2, 2, 2, 2, 2, 10, 1, 2, 2, 2, 2, 2, 2, 2, 6, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 12, 4, 4, 4, 4, 4, 20, 3, 1, }; constexpr const uint8_t DefaultSteamSpawnPosition[] = { 11, 22 }; diff --git a/src/openrct2/park/ParkFile.h b/src/openrct2/park/ParkFile.h index 3093f1f13e..185e94ba15 100644 --- a/src/openrct2/park/ParkFile.h +++ b/src/openrct2/park/ParkFile.h @@ -9,10 +9,10 @@ struct ObjectRepositoryItem; namespace OpenRCT2 { // Current version that is saved. - constexpr uint32_t PARK_FILE_CURRENT_VERSION = 23; + constexpr uint32_t PARK_FILE_CURRENT_VERSION = 24; // The minimum version that is forwards compatible with the current version. - constexpr uint32_t PARK_FILE_MIN_VERSION = 22; + constexpr uint32_t PARK_FILE_MIN_VERSION = 24; // The minimum version that is backwards compatible with the current version. // If this is increased beyond 0, uncomment the checks in ParkFile.cpp and Context.cpp! diff --git a/src/openrct2/ride/CarEntry.h b/src/openrct2/ride/CarEntry.h index eda82c121f..2508b85eb6 100644 --- a/src/openrct2/ride/CarEntry.h +++ b/src/openrct2/ride/CarEntry.h @@ -129,6 +129,9 @@ enum class SpriteGroupType : uint8_t Slopes12Banked22, Slopes8Banked22, Slopes25Banked22, + Slopes8Banked45, + Slopes16Banked22, + Slopes16Banked45, Slopes25Banked45, Slopes12Banked45, Slopes25Banked67, @@ -146,13 +149,15 @@ enum class SpriteGroupType : uint8_t }; static const std::string SpriteGroupNames[] = { - "slopeFlat", "slopes12", "slopes25", "slopes42", "slopes60", - "slopes75", "slopes90", "slopesLoop", "slopeInverted", "slopes8", - "slopes16", "slopes50", "flatBanked22", "flatBanked45", "flatBanked67", - "flatBanked90", "inlineTwists", "slopes12Banked22", "slopes8Banked22", "slopes25Banked22", - "slopes25Banked45", "slopes12Banked45", "slopes25Banked67", "slopes25Banked90", "slopes25InlineTwists", - "slopes42Banked22", "slopes42Banked45", "slopes42Banked67", "slopes42Banked90", "slopes60Banked22", - "corkscrews", "restraintAnimation", "curvedLiftHill", + "slopeFlat", "slopes12", "slopes25", "slopes42", + "slopes60", "slopes75", "slopes90", "slopesLoop", + "slopeInverted", "slopes8", "slopes16", "slopes50", + "flatBanked22", "flatBanked45", "flatBanked67", "flatBanked90", + "inlineTwists", "slopes12Banked22", "slopes8Banked22", "slopes25Banked22", + "slopes8Banked45", "slopes16Banked22", "slopes16Banked45", "slopes25Banked45", + "slopes12Banked45", "slopes25Banked67", "slopes25Banked90", "slopes25InlineTwists", + "slopes42Banked22", "slopes42Banked45", "slopes42Banked67", "slopes42Banked90", + "slopes60Banked22", "corkscrews", "restraintAnimation", "curvedLiftHill", }; static_assert(std::size(SpriteGroupNames) == EnumValue(SpriteGroupType::Count)); diff --git a/src/openrct2/ride/RideData.cpp b/src/openrct2/ride/RideData.cpp index 1a330e901e..82b240f357 100644 --- a/src/openrct2/ride/RideData.cpp +++ b/src/openrct2/ride/RideData.cpp @@ -157,6 +157,9 @@ const CarEntry CableLiftVehicle = { /* .SpriteGroups[Slopes12Banked22] = */ 0, SpritePrecision::None, /* .SpriteGroups[Slopes8Banked22] = */ 0, SpritePrecision::None, /* .SpriteGroups[Slopes25Banked22] = */ 0, SpritePrecision::None, + /* .SpriteGroups[Slopes8Banked22] = */ 0, SpritePrecision::None, + /* .SpriteGroups[Slopes16Banked22] = */ 0, SpritePrecision::None, + /* .SpriteGroups[Slopes16Banked45] = */ 0, SpritePrecision::None, /* .SpriteGroups[Slopes25Banked45] = */ 0, SpritePrecision::None, /* .SpriteGroups[Slopes12Banked45] = */ 0, SpritePrecision::None, /* .SpriteGroups[Slopes25Banked67] = */ 0, SpritePrecision::None, diff --git a/src/openrct2/ride/Track.h b/src/openrct2/ride/Track.h index 9fec34a7db..51240c5519 100644 --- a/src/openrct2/ride/Track.h +++ b/src/openrct2/ride/Track.h @@ -197,6 +197,9 @@ enum TRACK_FLYING_HALF_LOOP_UNINVERTED_DOWN, TRACK_FLYING_HALF_LOOP_INVERTED_UP, + TRACK_SLOPE_CURVE_LARGE, + TRACK_SLOPE_CURVE_LARGE_BANKED, + TRACK_GROUP_COUNT, }; @@ -575,7 +578,54 @@ namespace TrackElemType constexpr track_type_t FlyerHalfLoopInvertedUp = 291; constexpr track_type_t FlyerHalfLoopUninvertedDown = 292; - constexpr track_type_t Count = 293; + constexpr track_type_t LeftEighthToDiagUp25 = 293; + constexpr track_type_t RightEighthToDiagUp25 = 294; + constexpr track_type_t LeftEighthToDiagDown25 = 295; + constexpr track_type_t RightEighthToDiagDown25 = 296; + constexpr track_type_t LeftEighthToOrthogonalUp25 = 297; + constexpr track_type_t RightEighthToOrthogonalUp25 = 298; + constexpr track_type_t LeftEighthToOrthogonalDown25 = 299; + constexpr track_type_t RightEighthToOrthogonalDown25 = 300; + + constexpr track_type_t DiagUp25ToLeftBankedUp25 = 301; + constexpr track_type_t DiagUp25ToRightBankedUp25 = 302; + constexpr track_type_t DiagLeftBankedUp25ToUp25 = 303; + constexpr track_type_t DiagRightBankedUp25ToUp25 = 304; + constexpr track_type_t DiagDown25ToLeftBankedDown25 = 305; + constexpr track_type_t DiagDown25ToRightBankedDown25 = 306; + constexpr track_type_t DiagLeftBankedDown25ToDown25 = 307; + constexpr track_type_t DiagRightBankedDown25ToDown25 = 308; + constexpr track_type_t DiagLeftBankedFlatToLeftBankedUp25 = 309; + constexpr track_type_t DiagRightBankedFlatToRightBankedUp25 = 310; + constexpr track_type_t DiagLeftBankedUp25ToLeftBankedFlat = 311; + constexpr track_type_t DiagRightBankedUp25ToRightBankedFlat = 312; + constexpr track_type_t DiagLeftBankedFlatToLeftBankedDown25 = 313; + constexpr track_type_t DiagRightBankedFlatToRightBankedDown25 = 314; + constexpr track_type_t DiagLeftBankedDown25ToLeftBankedFlat = 315; + constexpr track_type_t DiagRightBankedDown25ToRightBankedFlat = 316; + constexpr track_type_t DiagFlatToLeftBankedUp25 = 317; + constexpr track_type_t DiagFlatToRightBankedUp25 = 318; + constexpr track_type_t DiagLeftBankedUp25ToFlat = 319; + constexpr track_type_t DiagRightBankedUp25ToFlat = 320; + constexpr track_type_t DiagFlatToLeftBankedDown25 = 321; + constexpr track_type_t DiagFlatToRightBankedDown25 = 322; + constexpr track_type_t DiagLeftBankedDown25ToFlat = 323; + constexpr track_type_t DiagRightBankedDown25ToFlat = 324; + constexpr track_type_t DiagUp25LeftBanked = 325; + constexpr track_type_t DiagUp25RightBanked = 326; + constexpr track_type_t DiagDown25LeftBanked = 327; + constexpr track_type_t DiagDown25RightBanked = 328; + + constexpr track_type_t LeftEighthBankToDiagUp25 = 329; + constexpr track_type_t RightEighthBankToDiagUp25 = 330; + constexpr track_type_t LeftEighthBankToDiagDown25 = 331; + constexpr track_type_t RightEighthBankToDiagDown25 = 332; + constexpr track_type_t LeftEighthBankToOrthogonalUp25 = 333; + constexpr track_type_t RightEighthBankToOrthogonalUp25 = 334; + constexpr track_type_t LeftEighthBankToOrthogonalDown25 = 335; + constexpr track_type_t RightEighthBankToOrthogonalDown25 = 336; + + constexpr track_type_t Count = 337; constexpr track_type_t None = 65535; }; // namespace TrackElemType diff --git a/src/openrct2/ride/TrackData.cpp b/src/openrct2/ride/TrackData.cpp index 75bc46b980..a5dc1b23fa 100644 --- a/src/openrct2/ride/TrackData.cpp +++ b/src/openrct2/ride/TrackData.cpp @@ -311,6 +311,50 @@ static constexpr TrackCoordinates _trackCoordinates[TrackElemType::Count] = { { 0, 2, 0, -280, 64, 32 }, // TrackElemType::LeftFlyerLargeHalfLoopUninvertedDown { 0, 2, 0, 152, -32, 0 }, // TrackElemType::FlyerHalfLoopInvertedUp { 0, 2, 0, -152, 32, 0 }, // TrackElemType::FlyerHalfLoopUninvertedDown + { 0, 7, 0, 48, -64, -32 }, // TrackElemType::LeftEighthToDiagUp25 + { 0, 4, 0, 48, -64, 32 }, // TrackElemType::RightEighthToDiagUp25 + { 0, 7, 0,-48, -64, -32 }, // TrackElemType::LeftEighthToDiagDown25 + { 0, 4, 0,-48, -64, 32 }, // TrackElemType::RightEighthToDiagDown25 + { 4, 0, 0, 48, -64, 32 }, // TrackElemType::LeftEighthToOrthogonalUp25 + { 4, 1, 0, 48, -32, 64 }, // TrackElemType::RightEighthToOrthogonalUp25 + { 4, 0, 0,-48, -64, 32 }, // TrackElemType::LeftEighthToOrthogonalDown25 + { 4, 1, 0,-48, -32, 64 }, // TrackElemType::RightEighthToOrthogonalDown25 + { 4, 4, 0, 16, -32, 32 }, // TrackElemType::DiagUp25ToLeftBankedUp25 + { 4, 4, 0, 16, -32, 32 }, // TrackElemType::DiagUp25ToRightBankedUp25 + { 4, 4, 0, 16, -32, 32 }, // TrackElemType::DiagLeftBankedUp25ToUp25 + { 4, 4, 0, 16, -32, 32 }, // TrackElemType::DiagRightBankedUp25ToUp25 + { 4, 4, 16, 0, -32, 32 }, // TrackElemType::DiagDown25ToLeftBankedDown25 + { 4, 4, 16, 0, -32, 32 }, // TrackElemType::DiagDown25ToRightBankedDown25 + { 4, 4, 16, 0, -32, 32 }, // TrackElemType::DiagLeftBankedDown25ToDown25 + { 4, 4, 16, 0, -32, 32 }, // TrackElemType::DiagRightBankedDown25ToDown25 + { 4, 4, 0, 8, -32, 32 }, // TrackElemType::DiagLeftBankedFlatToLeftBankedUp25 + { 4, 4, 0, 8, -32, 32 }, // TrackElemType::DiagRightBankedFlatToRightBankedUp25 + { 4, 4, 0, 8, -32, 32 }, // TrackElemType::DiagLeftBankedUp25ToLeftBankedFlat + { 4, 4, 0, 8, -32, 32 }, // TrackElemType::DiagRightBankedUp25ToRightBankedFlat + { 4, 4, 8, 0, -32, 32 }, // TrackElemType::DiagLeftBankedFlatToLeftBankedDown25 + { 4, 4, 8, 0, -32, 32 }, // TrackElemType::DiagRightBankedFlatToRightBankedDown25 + { 4, 4, 8, 0, -32, 32 }, // TrackElemType::DiagLeftBankedDown25ToLeftBankedFlat + { 4, 4, 8, 0, -32, 32 }, // TrackElemType::DiagRightBankedDown25ToRightBankedFlat + { 4, 4, 0, 8, -32, 32 }, // TrackElemType::DiagFlatToLeftBankedUp25 + { 4, 4, 0, 8, -32, 32 }, // TrackElemType::DiagFlatToRightBankedUp25 + { 4, 4, 0, 8, -32, 32 }, // TrackElemType::DiagLeftBankedUp25ToFlat + { 4, 4, 0, 8, -32, 32 }, // TrackElemType::DiagRightBankedUp25ToFlat + { 4, 4, 8, 0, -32, 32 }, // TrackElemType::DiagFlatToLeftBankedDown25 + { 4, 4, 8, 0, -32, 32 }, // TrackElemType::DiagFlatToRightBankedDown25 + { 4, 4, 8, 0, -32, 32 }, // TrackElemType::DiagLeftBankedDown25ToFlat + { 4, 4, 8, 0, -32, 32 }, // TrackElemType::DiagRightBankedDown25ToFlat + { 4, 4, 0, 16, -32, 32 }, // TrackElemType::DiagUp25LeftBanked + { 4, 4, 0, 16, -32, 32 }, // TrackElemType::DiagUp25RightBanked + { 4, 4, 16, 0, -32, 32 }, // TrackElemType::DiagDown25LeftBanked + { 4, 4, 16, 0, -32, 32 }, // TrackElemType::DiagDown25RightBanked + { 0, 7, 0, 48, -64, -32 }, // TrackElemType::LeftEighthBankToDiagUp25 + { 0, 4, 0, 48, -64, 32 }, // TrackElemType::RightEighthBankToDiagUp25 + { 0, 7, 0,-48, -64, -32 }, // TrackElemType::LeftEighthBankToDiagDown25 + { 0, 4, 0,-48, -64, 32 }, // TrackElemType::RightEighthBankToDiagDown25 + { 4, 0, 0, 48, -64, 32 }, // TrackElemType::LeftEighthBankToOrthogonalUp25 + { 4, 1, 0, 48, -32, 64 }, // TrackElemType::RightEighthBankToOrthogonalUp25 + { 4, 0, 0,-48, -64, 32 }, // TrackElemType::LeftEighthBankToOrthogonalDown25 + { 4, 1, 0,-48, -32, 64 }, // TrackElemType::RightEighthBankToOrthogonalDown25 }; /** rct2: 0x0099BA64 */ @@ -609,6 +653,50 @@ static constexpr uint8_t TrackSequenceProperties[][MaxSequencesPerPiece] = { /* LeftFlyerLargeHalfLoopUninvertedDown */ { 0 }, /* FlyerHalfLoopInvertedUp */ { 0 }, /* FlyerHalfLoopUninvertedUp */ { 0 }, + { 0 }, // TrackElemType::LeftEighthToDiagUp25 + { 0 }, // TrackElemType::RightEighthToDiagUp25 + { 0 }, // TrackElemType::LeftEighthToDiagDown25 + { 0 }, // TrackElemType::RightEighthToDiagDown25 + { 0 }, // TrackElemType::LeftEighthToOrthogonalUp25 + { 0 }, // TrackElemType::RightEighthToOrthogonalUp25 + { 0 }, // TrackElemType::LeftEighthToOrthogonalDown25 + { 0 }, // TrackElemType::RightEighthToOrthogonalDown25 + { 0 }, // TrackElemType::DiagUp25ToLeftBankedUp25 + { 0 }, // TrackElemType::DiagUp25ToRightBankedUp25 + { 0 }, // TrackElemType::DiagLeftBankedUp25ToUp25 + { 0 }, // TrackElemType::DiagRightBankedUp25ToUp25 + { 0 }, // TrackElemType::DiagDown25ToLeftBankedDown25 + { 0 }, // TrackElemType::DiagDown25ToRightBankedDown25 + { 0 }, // TrackElemType::DiagLeftBankedDown25ToDown25 + { 0 }, // TrackElemType::DiagRightBankedDown25ToDown25 + { 0 }, // TrackElemType::DiagLeftBankedFlatToLeftBankedUp25 + { 0 }, // TrackElemType::DiagRightBankedFlatToRightBankedUp25 + { 0 }, // TrackElemType::DiagLeftBankedUp25ToLeftBankedFlat + { 0 }, // TrackElemType::DiagRightBankedUp25ToRightBankedFlat + { 0 }, // TrackElemType::DiagLeftBankedFlatToLeftBankedDown25 + { 0 }, // TrackElemType::DiagRightBankedFlatToRightBankedDown25 + { 0 }, // TrackElemType::DiagLeftBankedDown25ToLeftBankedFlat + { 0 }, // TrackElemType::DiagRightBankedDown25ToRightBankedFlat + { 0 }, // TrackElemType::DiagFlatToLeftBankedUp25 + { 0 }, // TrackElemType::DiagFlatToRightBankedUp25 + { 0 }, // TrackElemType::DiagLeftBankedUp25ToFlat + { 0 }, // TrackElemType::DiagRightBankedUp25ToFlat + { 0 }, // TrackElemType::DiagFlatToLeftBankedDown25 + { 0 }, // TrackElemType::DiagFlatToRightBankedDown25 + { 0 }, // TrackElemType::DiagLeftBankedDown25ToFlat + { 0 }, // TrackElemType::DiagRightBankedDown25ToFlat + { 0 }, // TrackElemType::DiagUp25LeftBanked + { 0 }, // TrackElemType::DiagUp25RightBanked + { 0 }, // TrackElemType::DiagDown25LeftBanked + { 0 }, // TrackElemType::DiagDown25RightBanked + { 0 }, // TrackElemType::LeftEighthBankToDiagUp25 + { 0 }, // TrackElemType::RightEighthBankToDiagUp25 + { 0 }, // TrackElemType::LeftEighthBankToDiagDown25 + { 0 }, // TrackElemType::RightEighthBankToDiagDown25 + { 0 }, // TrackElemType::LeftEighthBankToOrthogonalUp25 + { 0 }, // TrackElemType::RightEighthBankToOrthogonalUp25 + { 0 }, // TrackElemType::LeftEighthBankToOrthogonalDown25 + { 0 }, // TrackElemType::RightEighthBankToOrthogonalDown25 }; #define TRACK_BLOCK_END { 255, 255, 255, 255, 255, {255, 255}, 255 } @@ -2841,6 +2929,79 @@ static constexpr const PreviewTrack TrackBlocksFlyerHalfLoopDownUpright[] = { TRACK_BLOCK_END }; +static constexpr const PreviewTrack TrackBlocksLeftEighthToDiagUp25[] = { + { 0, 0, 0, 0, 16, { 0b1111, 0 }, 0 }, + { 1, -32, 0, 16, 32, { 0b1111, 0 }, 0 }, + { 2, -32, -32, 32, 16, { 0b1000, 0 }, 0 }, + { 3, -64, 0, 32, 16, { 0b0010, 0 }, RCT_PREVIEW_TRACK_FLAG_0 }, + { 4, -64, -32, 32, 24, { 0b0001, 0 }, 0 }, + TRACK_BLOCK_END +}; + +static constexpr const PreviewTrack TrackBlocksRightEighthToDiagUp25[] = { + { 0, 0, 0, 0, 16, { 0b1111, 0 }, 0 }, + { 1, -32, 0, 16, 32, { 0b1111, 0 }, 0 }, + { 2, -32, 32, 32, 16, { 0b0100, 0 }, 0 }, + { 3, -64, 0, 32, 16, { 0b0001, 0 }, RCT_PREVIEW_TRACK_FLAG_0 }, + { 4, -64, 32, 32, 24, { 0b0010, 0 }, 0 }, + TRACK_BLOCK_END +}; + +static constexpr const PreviewTrack TrackBlocksLeftEighthToDiagDown25[] = { + { 0, 0, 0, -16, 16, { 0b1111, 0 }, 0 }, + { 1, -32, 0, -32, 16, { 0b1111, 0 }, 0 }, + { 2, -32, -32, -48, 16, { 0b1000, 0 }, 0 }, + { 3, -64, 0, -48, 16, { 0b0010, 0 }, RCT_PREVIEW_TRACK_FLAG_0 }, + { 4, -64, -32, -48, 16, { 0b0001, 0 }, 0 }, + TRACK_BLOCK_END +}; + +static constexpr const PreviewTrack TrackBlocksRightEighthToDiagDown25[] = { + { 0, 0, 0, -16, 16, { 0b1111, 0 }, 0 }, + { 1, -32, 0, -32, 16, { 0b1111, 0 }, 0 }, + { 2, -32, 32, -48, 16, { 0b0100, 0 }, 0 }, + { 3, -64, 0, -48, 16, { 0b0001, 0 }, RCT_PREVIEW_TRACK_FLAG_0 }, + { 4, -64, 32, -48, 16, { 0b0010, 0 }, 0 }, + TRACK_BLOCK_END +}; + +static constexpr const PreviewTrack TrackBlocksLeftEighthToOrthogonalUp25[] = { + { 0, 0, 0, 0, 16, { 0b1101, 0 }, 0 }, + { 1, -32, 0, 0, 16, { 0b0001, 0 }, 0 }, + { 2, 0, 32, 0, 16, { 0b0100, 0 }, RCT_PREVIEW_TRACK_FLAG_0 }, + { 3, -32, 32, 16, 16, { 0b1111, 0 }, 0 }, + { 4, -64, 32, 32, 16, { 0b1111, 0 }, 0 }, + TRACK_BLOCK_END +}; + +static constexpr const PreviewTrack TrackBlocksRightEighthToOrthogonalUp25[] = { + { 0, 0, 0, 0, 16, { 0b1101, 0 }, 0 }, + { 1, 0, 32, 0, 16, { 0b0100, 0 }, 0 }, + { 2, -32, 0, 0, 16, { 0b0001, 0 }, RCT_PREVIEW_TRACK_FLAG_0 }, + { 3, -32, 32, 16, 16, { 0b1111, 0 }, 0 }, + { 4, -32, 64, 32, 16, { 0b1111, 0 }, 0 }, + TRACK_BLOCK_END +}; + +static constexpr const PreviewTrack TrackBlocksLeftEighthToOrthogonalDown25[] = { + { 0, 0, 0, -16, 24, { 0b1101, 0 }, 0 }, + { 1, -32, 0, -16, 16, { 0b0001, 0 }, 0 }, + { 2, 0, 32, -16, 16, { 0b0100, 0 }, RCT_PREVIEW_TRACK_FLAG_0 }, + { 3, -32, 32, -32, 32, { 0b1111, 0 }, 0 }, + { 4, -64, 32, -48, 16, { 0b1111, 0 }, 0 }, + TRACK_BLOCK_END +}; + +static constexpr const PreviewTrack TrackBlocksRightEighthToOrthogonalDown25[] = { + { 0, 0, 0, -16, 24, { 0b1101, 0 }, 0 }, + { 1, 0, 32, -16, 16,{ 0b0100, 0 }, 0 }, + { 2, -32, 0, -16, 16,{ 0b0001, 0 }, RCT_PREVIEW_TRACK_FLAG_0 }, + { 3, -32, 32, -32, 32,{ 0b1111, 0 }, 0 }, + { 4, -32, 64, -48, 16,{ 0b1111, 0 }, 0 }, + TRACK_BLOCK_END +}; + + // rct2: 0x00994638 static constexpr std::array TrackBlocks = { TrackBlocks000, @@ -3138,6 +3299,50 @@ static constexpr std::array TrackBloc TrackBlocksLeftFlyerLargeHalfLoopUninvertedDown, // TrackElemType::LeftFlyerLargeHalfLoopUninvertedDown TrackBlocksFlyerHalfLoopUpInverted, // TrackElemType::FlyerHalfLoopInvertedUp TrackBlocksFlyerHalfLoopDownUpright, // TrackElemType::FlyerHalfLoopUninvertedDown + TrackBlocksLeftEighthToDiagUp25, // TrackElemType::LeftEighthToDiagUp25 + TrackBlocksRightEighthToDiagUp25, // TrackElemType::RightEighthToDiagUp25 + TrackBlocksLeftEighthToDiagDown25, // TrackElemType::LeftEighthToDiagDown25 + TrackBlocksRightEighthToDiagDown25, // TrackElemType::RightEighthToDiagDown25 + TrackBlocksLeftEighthToOrthogonalUp25, // TrackElemType::LeftEighthToOrthogonalUp25 + TrackBlocksRightEighthToOrthogonalUp25, // TrackElemType::RightEighthToOrthogonalUp25 + TrackBlocksLeftEighthToOrthogonalDown25, // TrackElemType::LeftEighthToOrthogonalDown25 + TrackBlocksRightEighthToOrthogonalDown25, // TrackElemType::RightEighthToOrthogonalDown25 + TrackBlocks142, // TrackElemType::DiagUp25ToLeftBankedUp25 + TrackBlocks142, // TrackElemType::DiagUp25ToRightBankedUp25 + TrackBlocks142, // TrackElemType::DiagLeftBankedUp25ToUp25 + TrackBlocks142, // TrackElemType::DiagRightBankedUp25ToUp25 + TrackBlocks148, // TrackElemType::DiagDown25ToLeftBankedDown25 + TrackBlocks148, // TrackElemType::DiagDown25ToRightBankedDown25 + TrackBlocks148, // TrackElemType::DiagLeftBankedDown25ToDown25 + TrackBlocks148, // TrackElemType::DiagRightBankedDown25ToDown25 + TrackBlocks144, // TrackElemType::DiagLeftBankedFlatToLeftBankedUp25 + TrackBlocks144, // TrackElemType::DiagRightBankedFlatToRightBankedUp25 + TrackBlocks147, // TrackElemType::DiagLeftBankedUp25ToLeftBankedFlat + TrackBlocks147, // TrackElemType::DiagRightBankedUp25ToRightBankedFlat + TrackBlocks150, // TrackElemType::DiagLeftBankedFlatToLeftBankedDown25 + TrackBlocks150, // TrackElemType::DiagRightBankedFlatToRightBankedDown25 + TrackBlocks153, // TrackElemType::DiagLeftBankedDown25ToLeftBankedFlat + TrackBlocks153, // TrackElemType::DiagRightBankedDown25ToRightBankedFlat + TrackBlocks144, // TrackElemType::DiagFlatToLeftBankedUp25 + TrackBlocks144, // TrackElemType::DiagFlatToRightBankedUp25 + TrackBlocks147, // TrackElemType::DiagLeftBankedUp25ToFlat + TrackBlocks147, // TrackElemType::DiagRightBankedUp25ToFlat + TrackBlocks150, // TrackElemType::DiagFlatToLeftBankedDown25 + TrackBlocks150, // TrackElemType::DiagFlatToRightBankedDown25 + TrackBlocks153, // TrackElemType::DiagLeftBankedDown25ToFlat + TrackBlocks153, // TrackElemType::DiagRightBankedDown25ToFlat + TrackBlocks142, // TrackElemType::DiagUp25LeftBanked + TrackBlocks142, // TrackElemType::DiagUp25RightBanked + TrackBlocks148, // TrackElemType::DiagDown25LeftBanked + TrackBlocks148, // TrackElemType::DiagDown25RightBanked + TrackBlocksLeftEighthToDiagUp25, // TrackElemType::LeftEighthBankToDiagUp25 + TrackBlocksRightEighthToDiagUp25, // TrackElemType::RightEighthBankToDiagUp25 + TrackBlocksLeftEighthToDiagDown25, // TrackElemType::LeftEighthBankToDiagDown25 + TrackBlocksRightEighthToDiagDown25, // TrackElemType::RightEighthBankToDiagDown25 + TrackBlocksLeftEighthToOrthogonalUp25, // TrackElemType::LeftEighthBankToOrthogonalUp25 + TrackBlocksRightEighthToOrthogonalUp25, // TrackElemType::RightEighthBankToOrthogonalUp25 + TrackBlocksLeftEighthToOrthogonalDown25, // TrackElemType::LeftEighthBankToOrthogonalDown25 + TrackBlocksRightEighthToOrthogonalDown25, // TrackElemType::RightEighthBankToOrthogonalDown25 }; static constexpr uint8_t TrackPieceLengths[TrackElemType::Count] = { @@ -3434,7 +3639,51 @@ static constexpr uint8_t TrackPieceLengths[TrackElemType::Count] = { 100, // TrackElemType::LeftFlyerLargeHalfLoopUninvertedDown 64, // TrackElemType::FlyerHalfLoopInvertedUp 64, // TrackElemType::FlyerHalfLoopUninvertedDown -}; + 64, // TrackElemType::LeftEighthToDiagUp25 + 64, // TrackElemType::RightEighthToDiagUp25 + 64, // TrackElemType::LeftEighthToDiagDown25 + 64, // TrackElemType::RightEighthToDiagDown25 + 64, // TrackElemType::LeftEighthToOrthogonalUp25 + 64, // TrackElemType::RightEighthToOrthogonalUp25 + 64, // TrackElemType::LeftEighthToOrthogonalDown25 + 64, // TrackElemType::RightEighthToOrthogonalDown25 + 64, // TrackElemType::DiagUp25ToLeftBankedUp25 + 64, // TrackElemType::DiagUp25ToRightBankedUp25 + 64, // TrackElemType::DiagLeftBankedUp25ToUp25 + 64, // TrackElemType::DiagRightBankedUp25ToUp25 + 64, // TrackElemType::DiagDown25ToLeftBankedDown25 + 64, // TrackElemType::DiagDown25ToRightBankedDown25 + 64, // TrackElemType::DiagLeftBankedDown25ToDown25 + 64, // TrackElemType::DiagRightBankedDown25ToDown25 + 64, // TrackElemType::DiagLeftBankedFlatToLeftBankedUp25 + 64, // TrackElemType::DiagRightBankedFlatToRightBankedUp25 + 64, // TrackElemType::DiagLeftBankedUp25ToLeftBankedFlat + 64, // TrackElemType::DiagRightBankedUp25ToRightBankedFlat + 64, // TrackElemType::DiagLeftBankedFlatToLeftBankedDown25 + 64, // TrackElemType::DiagRightBankedFlatToRightBankedDown25 + 64, // TrackElemType::DiagLeftBankedDown25ToLeftBankedFlat + 64, // TrackElemType::DiagRightBankedDown25ToRightBankedFlat + 64, // TrackElemType::DiagFlatToLeftBankedUp25 + 64, // TrackElemType::DiagFlatToRightBankedUp25 + 64, // TrackElemType::DiagLeftBankedUp25ToFlat + 64, // TrackElemType::DiagRightBankedUp25ToFlat + 64, // TrackElemType::DiagFlatToLeftBankedDown25 + 64, // TrackElemType::DiagFlatToRightBankedDown25 + 64, // TrackElemType::DiagLeftBankedDown25ToFlat + 64, // TrackElemType::DiagRightBankedDown25ToFlat + 64, // TrackElemType::DiagUp25LeftBanked + 64, // TrackElemType::DiagUp25RightBanked + 64, // TrackElemType::DiagDown25LeftBanked + 64, // TrackElemType::DiagDown25RightBanked + 64, // TrackElemType::LeftEighthBankToDiagUp25 + 64, // TrackElemType::RightEighthBankToDiagUp25 + 64, // TrackElemType::LeftEighthBankToDiagDown25 + 64, // TrackElemType::RightEighthBankToDiagDown25 + 64, // TrackElemType::LeftEighthBankToOrthogonalUp25 + 64, // TrackElemType::RightEighthBankToOrthogonalUp25 + 64, // TrackElemType::LeftEighthBankToOrthogonalDown25 + 64, // TrackElemType::RightEighthBankToOrthogonalDown25 +};//TODO // rct2: 0x00998C95 static constexpr TrackCurveChain gTrackCurveChain[TrackElemType::Count] = { @@ -3731,9 +3980,53 @@ static constexpr TrackCurveChain gTrackCurveChain[TrackElemType::Count] = { { TRACK_CURVE_NONE, RideConstructionSpecialPieceSelected | TrackElemType::LeftFlyerLargeHalfLoopInvertedUp }, // LeftFlyerLargeHalfLoopUninvertedDown { TRACK_CURVE_NONE, TRACK_CURVE_NONE }, // FlyerHalfLoopInvertedUp { TRACK_CURVE_NONE, TRACK_CURVE_NONE }, // FlyerHalfLoopUninvertedUp + { TRACK_CURVE_LEFT_LARGE, TRACK_CURVE_LEFT_LARGE }, // TrackElemType::LeftEighthToDiagUp25 + { TRACK_CURVE_RIGHT_LARGE, TRACK_CURVE_RIGHT_LARGE }, // TrackElemType::RightEighthToDiagUp25 + { TRACK_CURVE_LEFT_LARGE, TRACK_CURVE_LEFT_LARGE }, // TrackElemType::LeftEighthToDiagDown25 + { TRACK_CURVE_RIGHT_LARGE, TRACK_CURVE_RIGHT_LARGE }, // TrackElemType::RightEighthToDiagDown25 + { TRACK_CURVE_LEFT_LARGE, TRACK_CURVE_LEFT_LARGE }, // TrackElemType::LeftEighthToOrthogonalUp25 + { TRACK_CURVE_RIGHT_LARGE, TRACK_CURVE_RIGHT_LARGE }, // TrackElemType::RightEighthToOrthogonalUp25 + { TRACK_CURVE_LEFT_LARGE, TRACK_CURVE_LEFT_LARGE }, // TrackElemType::LeftEighthToOrthogonalDown25 + { TRACK_CURVE_RIGHT_LARGE, TRACK_CURVE_RIGHT_LARGE }, // TrackElemType::RightEighthToOrthogonalDown25 + { TRACK_CURVE_LEFT_LARGE, TRACK_CURVE_LEFT_LARGE }, // TrackElemType::DiagUp25ToLeftBankedUp25 + { TRACK_CURVE_RIGHT_LARGE, TRACK_CURVE_RIGHT_LARGE }, // TrackElemType::DiagUp25ToRightBankedUp25 + { TRACK_CURVE_NONE, TRACK_CURVE_NONE }, // TrackElemType::DiagLeftBankedUp25ToUp25 + { TRACK_CURVE_NONE, TRACK_CURVE_NONE }, // TrackElemType::DiagRightBankedUp25ToUp25 + { TRACK_CURVE_LEFT_LARGE, TRACK_CURVE_LEFT_LARGE }, // TrackElemType::DiagDown25ToLeftBankedDown25 + { TRACK_CURVE_RIGHT_LARGE, TRACK_CURVE_RIGHT_LARGE }, // TrackElemType::DiagDown25ToRightBankedDown25 + { TRACK_CURVE_NONE, TRACK_CURVE_NONE }, // TrackElemType::DiagLeftBankedDown25ToDown25 + { TRACK_CURVE_NONE, TRACK_CURVE_NONE }, // TrackElemType::DiagRightBankedDown25ToDown25 + { TRACK_CURVE_LEFT_LARGE, TRACK_CURVE_LEFT_LARGE }, // TrackElemType::DiagLeftBankedFlatToLeftBankedUp25 + { TRACK_CURVE_RIGHT_LARGE, TRACK_CURVE_RIGHT_LARGE }, // TrackElemType::DiagRightBankedFlatToRightBankedUp25 + { TRACK_CURVE_LEFT_LARGE, TRACK_CURVE_LEFT_LARGE }, // TrackElemType::DiagLeftBankedUp25ToLeftBankedFlat + { TRACK_CURVE_RIGHT_LARGE, TRACK_CURVE_RIGHT_LARGE }, // TrackElemType::DiagRightBankedUp25ToRightBankedFlat + { TRACK_CURVE_LEFT_LARGE, TRACK_CURVE_LEFT_LARGE }, // TrackElemType::DiagLeftBankedFlatToLeftBankedDown25 + { TRACK_CURVE_RIGHT_LARGE, TRACK_CURVE_RIGHT_LARGE }, // TrackElemType::DiagRightBankedFlatToRightBankedDown25 + { TRACK_CURVE_LEFT_LARGE, TRACK_CURVE_LEFT_LARGE }, // TrackElemType::DiagLeftBankedDown25ToLeftBankedFlat + { TRACK_CURVE_RIGHT_LARGE, TRACK_CURVE_RIGHT_LARGE }, // TrackElemType::DiagRightBankedDown25ToRightBankedFlat + { TRACK_CURVE_LEFT_LARGE, TRACK_CURVE_LEFT_LARGE }, // TrackElemType::DiagFlatToLeftBankedUp25 + { TRACK_CURVE_RIGHT_LARGE, TRACK_CURVE_RIGHT_LARGE }, // TrackElemType::DiagFlatToRightBankedUp25 + { TRACK_CURVE_NONE, TRACK_CURVE_NONE }, // TrackElemType::DiagLeftBankedUp25ToFlat + { TRACK_CURVE_NONE, TRACK_CURVE_NONE }, // TrackElemType::DiagRightBankedUp25ToFlat + { TRACK_CURVE_LEFT_LARGE, TRACK_CURVE_LEFT_LARGE }, // TrackElemType::DiagFlatToLeftBankedDown25 + { TRACK_CURVE_RIGHT_LARGE, TRACK_CURVE_RIGHT_LARGE }, // TrackElemType::DiagFlatToRightBankedDown25 + { TRACK_CURVE_NONE, TRACK_CURVE_NONE }, // TrackElemType::DiagLeftBankedDown25ToFlat + { TRACK_CURVE_NONE, TRACK_CURVE_NONE }, // TrackElemType::DiagRightBankedDown25ToFlat + { TRACK_CURVE_LEFT_LARGE, TRACK_CURVE_LEFT_LARGE }, // TrackElemType::DiagUp25LeftBanked + { TRACK_CURVE_RIGHT_LARGE, TRACK_CURVE_RIGHT_LARGE }, // TrackElemType::DiagUp25RightBanked + { TRACK_CURVE_LEFT_LARGE, TRACK_CURVE_LEFT_LARGE }, // TrackElemType::DiagDown25LeftBanked + { TRACK_CURVE_RIGHT_LARGE, TRACK_CURVE_RIGHT_LARGE }, // TrackElemType::DiagDown25RightBanked + { TRACK_CURVE_LEFT_LARGE, TRACK_CURVE_LEFT_LARGE }, // TrackElemType::LeftEighthBankToDiagUp25 + { TRACK_CURVE_RIGHT_LARGE, TRACK_CURVE_RIGHT_LARGE }, // TrackElemType::RightEighthBankToDiagUp25 + { TRACK_CURVE_LEFT_LARGE, TRACK_CURVE_LEFT_LARGE }, // TrackElemType::LeftEighthBankToDiagDown25 + { TRACK_CURVE_RIGHT_LARGE, TRACK_CURVE_RIGHT_LARGE }, // TrackElemType::RightEighthBankToDiagDown25 + { TRACK_CURVE_LEFT_LARGE, TRACK_CURVE_LEFT_LARGE }, // TrackElemType::LeftEighthBankToOrthogonalUp25 + { TRACK_CURVE_RIGHT_LARGE, TRACK_CURVE_RIGHT_LARGE }, // TrackElemType::RightEighthBankToOrthogonalUp25 + { TRACK_CURVE_LEFT_LARGE, TRACK_CURVE_LEFT_LARGE }, // TrackElemType::LeftEighthBankToOrthogonalDown25 + { TRACK_CURVE_RIGHT_LARGE, TRACK_CURVE_RIGHT_LARGE }, // TrackElemType::RightEighthBankToOrthogonalDown25 }; -const TrackDescriptor gTrackDescriptors[142] = { +const TrackDescriptor gTrackDescriptors[186] = { { true, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TrackElemType::DiagDown60 }, { true, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TrackElemType::DiagDown60ToDown25 }, { true, TRACK_SLOPE_DOWN_60, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TrackElemType::DiagDown60ToFlat }, @@ -3876,6 +4169,50 @@ const TrackDescriptor gTrackDescriptors[142] = { { false, TRACK_SLOPE_UP_90, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_60, TRACK_BANK_NONE, TrackElemType::Up90ToUp60 }, { false, TRACK_SLOPE_UP_90, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_90, TRACK_BANK_NONE, TrackElemType::Up90 }, { false, TRACK_SLOPE_UP_90, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_SMALL, TRACK_SLOPE_UP_90, TRACK_BANK_NONE, TrackElemType::RightQuarterTurn1TileUp90 }, + { false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_LEFT_LARGE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TrackElemType::LeftEighthToDiagUp25 }, // TrackElemType::LeftEighthToDiagUp25 + { false, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_LARGE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TrackElemType::RightEighthToDiagUp25 }, // TrackElemType::RightEighthToDiagUp25 + { false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_LEFT_LARGE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TrackElemType::LeftEighthToDiagDown25 }, // TrackElemType::LeftEighthToDiagDown25 + { false, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_LARGE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TrackElemType::RightEighthToDiagDown25 }, // TrackElemType::RightEighthToDiagDown25 + { true, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_LEFT_LARGE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TrackElemType::LeftEighthToOrthogonalUp25 }, // TrackElemType::LeftEighthToOrthogonalUp25 + { true, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_LARGE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TrackElemType::RightEighthToOrthogonalUp25 }, // TrackElemType::RightEighthToOrthogonalUp25 + { true, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_LEFT_LARGE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TrackElemType::LeftEighthToOrthogonalDown25 }, // TrackElemType::LeftEighthToOrthogonalDown25 + { true, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_RIGHT_LARGE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TrackElemType::RightEighthToOrthogonalDown25 }, // TrackElemType::RightEighthToOrthogonalDown25 + { true, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TrackElemType::DiagUp25ToLeftBankedUp25 }, // TrackElemType::DiagUp25ToLeftBankedUp25 + { true, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TrackElemType::DiagUp25ToRightBankedUp25 }, // TrackElemType::DiagUp25ToRightBankedUp25 + { true, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TrackElemType::DiagLeftBankedUp25ToUp25 }, // TrackElemType::DiagLeftBankedUp25ToUp25 + { true, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TrackElemType::DiagRightBankedUp25ToUp25 }, // TrackElemType::DiagRightBankedUp25ToUp25 + { true, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TrackElemType::DiagDown25ToLeftBankedDown25 }, // TrackElemType::DiagDown25ToLeftBankedDown25 + { true, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TrackElemType::DiagDown25ToRightBankedDown25 }, // TrackElemType::DiagDown25ToRightBankedDown25 + { true, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TrackElemType::DiagLeftBankedDown25ToDown25 }, // TrackElemType::DiagLeftBankedDown25ToDown25 + { true, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TrackElemType::DiagRightBankedDown25ToDown25 }, // TrackElemType::DiagRightBankedDown25ToDown25 + { true, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TrackElemType::DiagLeftBankedFlatToLeftBankedUp25 }, // TrackElemType::DiagLeftBankedFlatToLeftBankedUp25 + { true, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TrackElemType::DiagRightBankedFlatToRightBankedUp25 }, // TrackElemType::DiagRightBankedFlatToRightBankedUp25 + { true, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TrackElemType::DiagLeftBankedUp25ToLeftBankedFlat }, // TrackElemType::DiagLeftBankedUp25ToLeftBankedFlat + { true, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TrackElemType::DiagRightBankedUp25ToRightBankedFlat }, // TrackElemType::DiagRightBankedUp25ToRightBankedFlat + { true, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TrackElemType::DiagLeftBankedFlatToLeftBankedDown25 }, // TrackElemType::DiagLeftBankedFlatToLeftBankedDown25 + { true, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TrackElemType::DiagRightBankedFlatToRightBankedDown25 }, // TrackElemType::DiagRightBankedFlatToRightBankedDown25 + { true, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TrackElemType::DiagLeftBankedDown25ToLeftBankedFlat }, // TrackElemType::DiagLeftBankedDown25ToLeftBankedFlat + { true, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TrackElemType::DiagRightBankedDown25ToRightBankedFlat }, // TrackElemType::DiagRightBankedDown25ToRightBankedFlat + { true, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TrackElemType::DiagFlatToLeftBankedUp25 }, // TrackElemType::DiagFlatToLeftBankedUp25 + { true, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TrackElemType::DiagFlatToRightBankedUp25 }, // TrackElemType::DiagFlatToRightBankedUp25 + { true, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TrackElemType::DiagLeftBankedUp25ToFlat }, // TrackElemType::DiagLeftBankedUp25ToFlat + { true, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TrackElemType::DiagRightBankedUp25ToFlat }, // TrackElemType::DiagRightBankedUp25ToFlat + { true, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TrackElemType::DiagFlatToLeftBankedDown25 }, // TrackElemType::DiagFlatToLeftBankedDown25 + { true, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TrackElemType::DiagFlatToRightBankedDown25 }, // TrackElemType::DiagFlatToRightBankedDown25 + { true, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TrackElemType::DiagLeftBankedDown25ToFlat }, // TrackElemType::DiagLeftBankedDown25ToFlat + { true, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_NONE, TRACK_BANK_NONE, TrackElemType::DiagRightBankedDown25ToFlat }, // TrackElemType::DiagRightBankedDown25ToFlat + { true, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TrackElemType::DiagUp25LeftBanked }, // TrackElemType::Up25LeftBanked + { true, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TrackElemType::DiagUp25RightBanked }, // TrackElemType::Up25RightBanked + { true, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TrackElemType::DiagDown25LeftBanked }, // TrackElemType::Down25LeftBanked + { true, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_CURVE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TrackElemType::DiagDown25RightBanked }, // TrackElemType::Down25RightBanked + { false, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_CURVE_LEFT_LARGE, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TrackElemType::LeftEighthBankToDiagUp25 }, // TrackElemType::LeftEighthBankToDiagUp25 + { false, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_CURVE_RIGHT_LARGE, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TrackElemType::RightEighthBankToDiagUp25 }, // TrackElemType::RightEighthBankToDiagUp25 + { false, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_CURVE_LEFT_LARGE, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TrackElemType::LeftEighthBankToDiagDown25 }, // TrackElemType::LeftEighthBankToDiagDown25 + { false, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_CURVE_RIGHT_LARGE, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TrackElemType::RightEighthBankToDiagDown25 }, // TrackElemType::RightEighthBankToDiagDown25 + { true, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_CURVE_LEFT_LARGE, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TrackElemType::LeftEighthBankToOrthogonalUp25 }, // TrackElemType::LeftEighthBankToOrthogonalUp25 + { true, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_CURVE_RIGHT_LARGE, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TrackElemType::RightEighthBankToOrthogonalUp25 }, // TrackElemType::RightEighthBankToOrthogonalUp25 + { true, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_CURVE_LEFT_LARGE, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TrackElemType::LeftEighthBankToOrthogonalDown25 }, // TrackElemType::LeftEighthBankToOrthogonalDown25 + { true, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_CURVE_RIGHT_LARGE, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TrackElemType::RightEighthBankToOrthogonalDown25 }, // TrackElemType::RightEighthBankToOrthogonalDown25 }; /** rct2: 0x00993D1C */ @@ -4169,6 +4506,50 @@ static constexpr track_type_t AlternativeTrackTypes[TrackElemType::Count] = { TrackElemType::None, // LeftFlyerLargeHalfLoopInvertedDown TrackElemType::None, // FlyerHalfLoopInvertedUp TrackElemType::None, // FlyerHalfLoopUninvertedDown + TrackElemType::None, // TrackElemType::LeftEighthToDiagUp25 + TrackElemType::None, // TrackElemType::RightEighthToDiagUp25 + TrackElemType::None, // TrackElemType::LeftEighthToDiagDown25 + TrackElemType::None, // TrackElemType::RightEighthToDiagDown25 + TrackElemType::None, // TrackElemType::LeftEighthToOrthogonalUp25 + TrackElemType::None, // TrackElemType::RightEighthToOrthogonalUp25 + TrackElemType::None, // TrackElemType::LeftEighthToOrthogonalDown25 + TrackElemType::None, // TrackElemType::RightEighthToOrthogonalDown25 + TrackElemType::None, // TrackElemType::DiagUp25ToLeftBankedUp25 + TrackElemType::None, // TrackElemType::DiagUp25ToRightBankedUp25 + TrackElemType::None, // TrackElemType::DiagLeftBankedUp25ToUp25 + TrackElemType::None, // TrackElemType::DiagRightBankedUp25ToUp25 + TrackElemType::None, // TrackElemType::DiagDown25ToLeftBankedDown25 + TrackElemType::None, // TrackElemType::DiagDown25ToRightBankedDown25 + TrackElemType::None, // TrackElemType::DiagLeftBankedDown25ToDown25 + TrackElemType::None, // TrackElemType::DiagRightBankedDown25ToDown25 + TrackElemType::None, // TrackElemType::DiagLeftBankedFlatToLeftBankedUp25 + TrackElemType::None, // TrackElemType::DiagRightBankedFlatToRightBankedUp25 + TrackElemType::None, // TrackElemType::DiagLeftBankedUp25ToLeftBankedFlat + TrackElemType::None, // TrackElemType::DiagRightBankedUp25ToRightBankedFlat + TrackElemType::None, // TrackElemType::DiagLeftBankedFlatToLeftBankedDown25 + TrackElemType::None, // TrackElemType::DiagRightBankedFlatToRightBankedDown25 + TrackElemType::None, // TrackElemType::DiagLeftBankedDown25ToLeftBankedFlat + TrackElemType::None, // TrackElemType::DiagRightBankedDown25ToRightBankedFlat + TrackElemType::None, // TrackElemType::DiagFlatToLeftBankedUp25 + TrackElemType::None, // TrackElemType::DiagFlatToRightBankedUp25 + TrackElemType::None, // TrackElemType::DiagLeftBankedUp25ToFlat + TrackElemType::None, // TrackElemType::DiagRightBankedUp25ToFlat + TrackElemType::None, // TrackElemType::DiagFlatToLeftBankedDown25 + TrackElemType::None, // TrackElemType::DiagFlatToRightBankedDown25 + TrackElemType::None, // TrackElemType::DiagLeftBankedDown25ToFlat + TrackElemType::None, // TrackElemType::DiagRightBankedDown25ToFlat + TrackElemType::None, // TrackElemType::DiagUp25LeftBanked + TrackElemType::None, // TrackElemType::DiagUp25RightBanked + TrackElemType::None, // TrackElemType::DiagDown25LeftBanked + TrackElemType::None, // TrackElemType::DiagDown25RightBanked + TrackElemType::None, // TrackElemType::LeftEighthBankToDiagUp25 + TrackElemType::None, // TrackElemType::RightEighthBankToDiagUp25 + TrackElemType::None, // TrackElemType::LeftEighthBankToDiagDown25 + TrackElemType::None, // TrackElemType::RightEighthBankToDiagDown25 + TrackElemType::None, // TrackElemType::LeftEighthBankToOrthogonalUp25 + TrackElemType::None, // TrackElemType::RightEighthBankToOrthogonalUp25 + TrackElemType::None, // TrackElemType::LeftEighthBankToOrthogonalDown25 + TrackElemType::None, // TrackElemType::RightEighthBankToOrthogonalDown25 }; /** rct2: 0x0099DA34 */ @@ -4466,7 +4847,50 @@ static constexpr money64 TrackPricing[TrackElemType::Count] = { 884736, // TrackElemType::LeftFlyerLargeHalfLoopUninvertedDown 294912, // TrackElemType::FlyerHalfLoopInvertedUp 294912, // TrackElemType::FlyerHalfLoopUninvertedDown -}; + 294912, // TrackElemType::LeftEighthToDiagUp25 + 294912, // TrackElemType::RightEighthToDiagUp25 + 294912, // TrackElemType::LeftEighthToDiagDown25 + 294912, // TrackElemType::RightEighthToDiagDown25 + 294912, // TrackElemType::LeftEighthToOrthogonalUp25 + 294912, // TrackElemType::RightEighthToOrthogonalUp25 + 294912, // TrackElemType::LeftEighthToOrthogonalDown25 + 294912, // TrackElemType::DiagUp25ToLeftBankedUp25 + 294912, // TrackElemType::DiagUp25ToRightBankedUp25 + 294912, // TrackElemType::DiagLeftBankedUp25ToUp25 + 294912, // TrackElemType::DiagRightBankedUp25ToUp25 + 294912, // TrackElemType::DiagDown25ToLeftBankedDown25 + 294912, // TrackElemType::DiagDown25ToRightBankedDown25 + 294912, // TrackElemType::DiagLeftBankedDown25ToDown25 + 294912, // TrackElemType::DiagRightBankedDown25ToDown25 + 294912, // TrackElemType::DiagLeftBankedFlatToLeftBankedUp25 + 294912, // TrackElemType::DiagRightBankedFlatToRightBankedUp25 + 294912, // TrackElemType::DiagLeftBankedUp25ToLeftBankedFlat + 294912, // TrackElemType::DiagRightBankedUp25ToRightBankedFlat + 294912, // TrackElemType::DiagLeftBankedFlatToLeftBankedDown25 + 294912, // TrackElemType::DiagRightBankedFlatToRightBankedDown25 + 294912, // TrackElemType::DiagLeftBankedDown25ToLeftBankedFlat + 294912, // TrackElemType::DiagRightBankedDown25ToRightBankedFlat + 294912, // TrackElemType::DiagFlatToLeftBankedUp25 + 294912, // TrackElemType::DiagFlatToRightBankedUp25 + 294912, // TrackElemType::DiagLeftBankedUp25ToFlat + 294912, // TrackElemType::DiagRightBankedUp25ToFlat + 294912, // TrackElemType::DiagFlatToLeftBankedDown25 + 294912, // TrackElemType::DiagFlatToRightBankedDown25 + 294912, // TrackElemType::DiagLeftBankedDown25ToFlat + 294912, // TrackElemType::DiagRightBankedDown25ToFlat + 294912, // TrackElemType::DiagUp25LeftBanked + 294912, // TrackElemType::DiagUp25RightBanked + 294912, // TrackElemType::DiagDown25LeftBanked + 294912, // TrackElemType::DiagDown25RightBanked + 294912, // TrackElemType::LeftEighthBankToDiagUp25 + 294912, // TrackElemType::RightEighthBankToDiagUp25 + 294912, // TrackElemType::LeftEighthBankToDiagDown25 + 294912, // TrackElemType::RightEighthBankToDiagDown25 + 294912, // TrackElemType::LeftEighthBankToOrthogonalUp25 + 294912, // TrackElemType::RightEighthBankToOrthogonalUp25 + 294912, // TrackElemType::LeftEighthBankToOrthogonalDown25 + 294912, // TrackElemType::RightEighthBankToOrthogonalDown25 +};//TODO /** rct2: 0x0099EA1C */ static constexpr track_type_t TrackElementMirrorMap[TrackElemType::Count] = { @@ -4763,6 +5187,50 @@ static constexpr track_type_t TrackElementMirrorMap[TrackElemType::Count] = { TrackElemType::RightFlyerLargeHalfLoopUninvertedDown, // TrackElemType::LeftFlyerLargeHalfLoopUninvertedDown TrackElemType::FlyerHalfLoopInvertedUp, TrackElemType::FlyerHalfLoopUninvertedDown, + TrackElemType::RightEighthToDiagUp25, // TrackElemType::LeftEighthToDiagUp25 + TrackElemType::LeftEighthToDiagUp25, // TrackElemType::RightEighthToDiagUp25 + TrackElemType::RightEighthToDiagDown25, // TrackElemType::LeftEighthToDiagDown25 + TrackElemType::LeftEighthToDiagDown25, // TrackElemType::RightEighthToDiagDown25 + TrackElemType::RightEighthToOrthogonalUp25, // TrackElemType::LeftEighthToOrthogonalUp25 + TrackElemType::LeftEighthToOrthogonalUp25, // TrackElemType::RightEighthToOrthogonalUp25 + TrackElemType::RightEighthToOrthogonalDown25, // TrackElemType::LeftEighthToOrthogonalDown25 + TrackElemType::DiagUp25ToRightBankedUp25, // TrackElemType::DiagUp25ToRightBankedUp25 + TrackElemType::DiagUp25ToLeftBankedUp25, // TrackElemType::DiagUp25ToLeftBankedUp25 + TrackElemType::DiagRightBankedUp25ToUp25, // TrackElemType::DiagRightBankedUp25ToUp25 + TrackElemType::DiagLeftBankedUp25ToUp25, // TrackElemType::DiagLeftBankedUp25ToUp25 + TrackElemType::DiagDown25ToRightBankedDown25, // TrackElemType::DiagDown25ToRightBankedDown25 + TrackElemType::DiagDown25ToLeftBankedDown25, // TrackElemType::DiagDown25ToLeftBankedDown25 + TrackElemType::DiagRightBankedDown25ToDown25, // TrackElemType::DiagRightBankedDown25ToDown25 + TrackElemType::DiagLeftBankedDown25ToDown25, // TrackElemType::DiagLeftBankedDown25ToDown25 + TrackElemType::DiagRightBankedFlatToRightBankedUp25, // TrackElemType::DiagRightBankedFlatToRightBankedUp25 + TrackElemType::DiagLeftBankedFlatToLeftBankedUp25, // TrackElemType::DiagLeftBankedFlatToLeftBankedUp25 + TrackElemType::DiagRightBankedUp25ToRightBankedFlat, // TrackElemType::DiagRightBankedUp25ToRightBankedFlat + TrackElemType::DiagLeftBankedUp25ToLeftBankedFlat, // TrackElemType::DiagLeftBankedUp25ToLeftBankedFlat + TrackElemType::DiagRightBankedFlatToRightBankedDown25,// TrackElemType::DiagRightBankedFlatToRightBankedDown25 + TrackElemType::DiagLeftBankedFlatToLeftBankedDown25, // TrackElemType::DiagLeftBankedFlatToLeftBankedDown25 + TrackElemType::DiagRightBankedDown25ToRightBankedFlat,// TrackElemType::DiagRightBankedDown25ToRightBankedFlat + TrackElemType::DiagLeftBankedDown25ToLeftBankedFlat, // TrackElemType::DiagLeftBankedDown25ToLeftBankedFlat + TrackElemType::DiagFlatToRightBankedUp25, // TrackElemType::DiagFlatToRightBankedUp25 + TrackElemType::DiagFlatToLeftBankedUp25, // TrackElemType::DiagFlatToLeftBankedUp25 + TrackElemType::DiagRightBankedUp25ToFlat, // TrackElemType::DiagRightBankedUp25ToFlat + TrackElemType::DiagLeftBankedUp25ToFlat, // TrackElemType::DiagLeftBankedUp25ToFlat + TrackElemType::DiagFlatToRightBankedDown25, // TrackElemType::DiagFlatToRightBankedDown25 + TrackElemType::DiagFlatToLeftBankedDown25, // TrackElemType::DiagFlatToLeftBankedDown25 + TrackElemType::DiagRightBankedDown25ToFlat, // TrackElemType::DiagRightBankedDown25ToFlat + TrackElemType::DiagLeftBankedDown25ToFlat, // TrackElemType::DiagLeftBankedDown25ToFlat + TrackElemType::DiagUp25RightBanked, // TrackElemType::DiagUp25RightBanked + TrackElemType::DiagUp25LeftBanked, // TrackElemType::DiagUp25LeftBanked + TrackElemType::DiagDown25RightBanked, // TrackElemType::DiagDown25RightBanked + TrackElemType::DiagDown25LeftBanked, // TrackElemType::DiagDown25LeftBanked + TrackElemType::RightEighthBankToDiagUp25, // TrackElemType::RightEighthBankToDiagUp25 + TrackElemType::LeftEighthBankToDiagUp25, // TrackElemType::LeftEighthBankToDiagUp25 + TrackElemType::RightEighthBankToDiagDown25, // TrackElemType::RightEighthBankToDiagDown25 + TrackElemType::LeftEighthBankToDiagDown25, // TrackElemType::LeftEighthBankToDiagDown25 + TrackElemType::RightEighthBankToOrthogonalUp25, // TrackElemType::RightEighthBankToOrthogonalUp25 + TrackElemType::LeftEighthBankToOrthogonalUp25, // TrackElemType::LeftEighthBankToOrthogonalUp25 + TrackElemType::RightEighthBankToOrthogonalDown25, // TrackElemType::RightEighthBankToOrthogonalDown25 + TrackElemType::LeftEighthBankToOrthogonalDown25, // TrackElemType::LeftEighthBankToOrthogonalDown25 + }; /** rct2: 0x00999694 */ @@ -5060,7 +5528,51 @@ static constexpr uint32_t TrackHeightMarkerPositions[TrackElemType::Count] = { (1 << 0) | (1 << 6), // TrackElemType::LeftFlyerLargeHalfLoopUninvertedDown (1 << 0) | (1 << 3), // TrackElemType::FlyerHalfLoopInvertedUp (1 << 0) | (1 << 3), // TrackElemType::FlyerHalfLoopUninvertedDown -}; + (1 << 0), // TrackElemType::LeftEighthToDiagUp25 + (1 << 0), // TrackElemType::RightEighthToDiagUp25 + (1 << 0), // TrackElemType::LeftEighthToDiagDown25 + (1 << 0), // TrackElemType::RightEighthToDiagDown25 + (1 << 0), // TrackElemType::LeftEighthToOrthogonalUp25 + (1 << 0), // TrackElemType::RightEighthToOrthogonalUp25 + (1 << 0), // TrackElemType::LeftEighthToOrthogonalDown25 + (1 << 0), // TrackElemType::RightEighthToOrthogonalDown25 + (1 << 0), // TrackElemType::DiagUp25ToRightBankedUp25 + (1 << 0), // TrackElemType::DiagUp25ToLeftBankedUp25 + (1 << 0), // TrackElemType::DiagRightBankedUp25ToUp25 + (1 << 0), // TrackElemType::DiagLeftBankedUp25ToUp25 + (1 << 0), // TrackElemType::DiagDown25ToRightBankedDown25 + (1 << 0), // TrackElemType::DiagDown25ToLeftBankedDown25 + (1 << 0), // TrackElemType::DiagRightBankedDown25ToDown25 + (1 << 0), // TrackElemType::DiagLeftBankedDown25ToDown25 + (1 << 0), // TrackElemType::DiagRightBankedFlatToRightBankedUp25 + (1 << 0), // TrackElemType::DiagLeftBankedFlatToLeftBankedUp25 + (1 << 0), // TrackElemType::DiagRightBankedUp25ToRightBankedFlat + (1 << 0), // TrackElemType::DiagLeftBankedUp25ToLeftBankedFlat + (1 << 0), // TrackElemType::DiagRightBankedFlatToRightBankedDown25 + (1 << 0), // TrackElemType::DiagLeftBankedFlatToLeftBankedDown25 + (1 << 0), // TrackElemType::DiagRightBankedDown25ToRightBankedFlat + (1 << 0), // TrackElemType::DiagLeftBankedDown25ToLeftBankedFlat + (1 << 0), // TrackElemType::DiagFlatToRightBankedUp25 + (1 << 0), // TrackElemType::DiagFlatToLeftBankedUp25 + (1 << 0), // TrackElemType::DiagRightBankedUp25ToFlat + (1 << 0), // TrackElemType::DiagLeftBankedUp25ToFlat + (1 << 0), // TrackElemType::DiagFlatToRightBankedDown25 + (1 << 0), // TrackElemType::DiagFlatToLeftBankedDown25 + (1 << 0), // TrackElemType::DiagRightBankedDown25ToFlat + (1 << 0), // TrackElemType::DiagLeftBankedDown25ToFlat + (1 << 0), // TrackElemType::DiagUp25RightBanked + (1 << 0), // TrackElemType::DiagUp25LeftBanked + (1 << 0), // TrackElemType::DiagDown25RightBanked + (1 << 0), // TrackElemType::DiagDown25LeftBanked + (1 << 0), // TrackElemType::RightEighthBankToDiagUp25 + (1 << 0), // TrackElemType::LeftEighthBankToDiagUp25 + (1 << 0), // TrackElemType::RightEighthBankToDiagDown25 + (1 << 0), // TrackElemType::LeftEighthBankToDiagDown25 + (1 << 0), // TrackElemType::RightEighthBankToOrthogonalUp25 + (1 << 0), // TrackElemType::LeftEighthBankToOrthogonalUp25 + (1 << 0), // TrackElemType::RightEighthBankToOrthogonalDown25 + (1 << 0), // TrackElemType::LeftEighthBankToOrthogonalDown25 +};//TODO /** rct2: 0x00999A94 */ static constexpr uint8_t TrackSequenceElementAllowedWallEdges[TrackElemType::Count][MaxSequencesPerPiece] = { @@ -5358,7 +5870,51 @@ static constexpr uint8_t TrackSequenceElementAllowedWallEdges[TrackElemType::Cou { 0b1000, 0b1000, 0b1001, 0b0011, 0b0010, 0b1010, 0b1010, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::LeftFlyerLargeHalfLoopUninvertedDown { 0b1010, 0b1010, 0b1011, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::FlyerHalfLoopInvertedUp { 0, 0b1011, 0b1010, 0b1010, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::FlyerHalfLoopUninvertedDown -}; + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::LeftEighthToDiagUp25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::RightEighthToDiagUp25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::LeftEighthToDiagDown25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::RightEighthToDiagDown25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::LeftEighthToOrthogonalUp25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::RightEighthToOrthogonalUp25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::LeftEighthToOrthogonalDown25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::RightEighthToOrthogonalDown25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagUp25ToRightBankedUp25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagUp25ToLeftBankedUp25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagRightBankedUp25ToUp25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagLeftBankedUp25ToUp25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagDown25ToRightBankedDown25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagDown25ToLeftBankedDown25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagRightBankedDown25ToDown25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagLeftBankedDown25ToDown25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagRightBankedFlatToRightBankedUp25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagLeftBankedFlatToLeftBankedUp25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagRightBankedUp25ToRightBankedFlat + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagLeftBankedUp25ToLeftBankedFlat + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagRightBankedFlatToRightBankedDown25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagLeftBankedFlatToLeftBankedDown25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagRightBankedDown25ToRightBankedFlat + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagLeftBankedDown25ToLeftBankedFlat + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagFlatToRightBankedUp25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagFlatToLeftBankedUp25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagRightBankedUp25ToFlat + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagLeftBankedUp25ToFlat + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagFlatToRightBankedDown25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagFlatToLeftBankedDown25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagRightBankedDown25ToFlat + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagLeftBankedDown25ToFlat + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagUp25RightBanked + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagUp25LeftBanked + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagDown25RightBanked + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::DiagDown25LeftBanked + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::RightEighthBankToDiagUp25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::LeftEighthBankToDiagUp25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::RightEighthBankToDiagDown25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::LeftEighthBankToDiagDown25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::RightEighthBankToOrthogonalUp25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::LeftEighthBankToOrthogonalUp25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::RightEighthBankToOrthogonalDown25 + { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // TrackElemType::LeftEighthBankToOrthogonalDown25 +};//TODO /** rct2: 0x0099423C */ static constexpr uint16_t TrackFlags[TrackElemType::Count] = { @@ -5655,6 +6211,50 @@ static constexpr uint16_t TrackFlags[TrackElemType::Count] = { /* TrackElemType::LeftFlyerLargeHalfLoopInvertedDown */ TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_NORMAL_TO_INVERSION, /* TrackElemType::FlyerHalfLoopInvertedUp */ TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_INVERSION_TO_NORMAL | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT, /* TrackElemType::FlyerHalfLoopUnivertedDown */ TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_NORMAL_TO_INVERSION, + /* TrackElemType::LeftEighthToDiagUp25 */ TRACK_ELEM_FLAG_TURN_LEFT | TRACK_ELEM_FLAG_TURN_SLOPED | TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT | TRACK_ELEM_FLAG_ALLOW_LIFT_HILL | TRACK_ELEM_FLAG_CURVE_ALLOWS_LIFT, + /* TrackElemType::RightEighthToDiagUp25 */ TRACK_ELEM_FLAG_TURN_RIGHT | TRACK_ELEM_FLAG_TURN_SLOPED | TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT | TRACK_ELEM_FLAG_ALLOW_LIFT_HILL | TRACK_ELEM_FLAG_CURVE_ALLOWS_LIFT, + /* TrackElemType::LeftEighthToDiagDown25 */ TRACK_ELEM_FLAG_TURN_LEFT | TRACK_ELEM_FLAG_TURN_SLOPED | TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT | TRACK_ELEM_FLAG_ALLOW_LIFT_HILL | TRACK_ELEM_FLAG_CURVE_ALLOWS_LIFT, + /* TrackElemType::RightEighthToDiagDown25 */ TRACK_ELEM_FLAG_TURN_RIGHT | TRACK_ELEM_FLAG_TURN_SLOPED | TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT | TRACK_ELEM_FLAG_ALLOW_LIFT_HILL | TRACK_ELEM_FLAG_CURVE_ALLOWS_LIFT, + /* TrackElemType::LeftEighthToOrthogonalUp25 */ TRACK_ELEM_FLAG_TURN_LEFT | TRACK_ELEM_FLAG_TURN_SLOPED | TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT | TRACK_ELEM_FLAG_ALLOW_LIFT_HILL | TRACK_ELEM_FLAG_CURVE_ALLOWS_LIFT, + /* TrackElemType::RightEighthToOrthogonalUp25 */ TRACK_ELEM_FLAG_TURN_RIGHT | TRACK_ELEM_FLAG_TURN_SLOPED | TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT | TRACK_ELEM_FLAG_ALLOW_LIFT_HILL | TRACK_ELEM_FLAG_CURVE_ALLOWS_LIFT, + /* TrackElemType::LeftEighthToOrthogonalDown25 */ TRACK_ELEM_FLAG_TURN_LEFT | TRACK_ELEM_FLAG_TURN_SLOPED | TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT | TRACK_ELEM_FLAG_ALLOW_LIFT_HILL | TRACK_ELEM_FLAG_CURVE_ALLOWS_LIFT, + /* TrackElemType::RightEighthToOrthogonalDown25 */ TRACK_ELEM_FLAG_TURN_RIGHT | TRACK_ELEM_FLAG_TURN_SLOPED | TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT | TRACK_ELEM_FLAG_ALLOW_LIFT_HILL | TRACK_ELEM_FLAG_CURVE_ALLOWS_LIFT, + /* TrackElemType::DiagUp25ToLeftBankedUp25 */ TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_BANKED | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT, + /* TrackElemType::DiagUp25ToRightBankedUp25 */ TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_BANKED | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT, + /* TrackElemType::DiagLeftBankedUp25ToUp25 */ TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_BANKED | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT, + /* TrackElemType::DiagRightBankedUp25ToUp25 */ TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_BANKED | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT, + /* TrackElemType::DiagDown25ToLeftBankedDown25 */ TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_BANKED | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT, + /* TrackElemType::DiagDown25ToRightBankedDown25 */ TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_BANKED | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT, + /* TrackElemType::DiagLeftBankedDown25ToDown25 */ TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_BANKED | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT, + /* TrackElemType::DiagRightBankedDown25ToDown25 */ TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_BANKED | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT, + /* TrackElemType::DiagLeftBankedFlatToLeftBankedUp25 */ TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_BANKED, + /* TrackElemType::DiagRightBankedFlatToRightBankedUp25 */ TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_BANKED, + /* TrackElemType::DiagLeftBankedUp25ToLeftBankedFlat */ TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_BANKED | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT, + /* TrackElemType::DiagRightBankedUp25ToRightBankedFlat */ TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_BANKED | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT, + /* TrackElemType::DiagLeftBankedFlatToLeftBankedDown25 */ TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_BANKED | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT, + /* TrackElemType::DiagRightBankedFlatToRightBankedDown25 */ TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_BANKED | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT, + /* TrackElemType::DiagLeftBankedDown25ToLeftBankedFlat */ TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_BANKED, + /* TrackElemType::DiagRightBankedDown25ToRightBankedFlat */ TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_BANKED, + /* TrackElemType::DiagFlatToLeftBankedUp25 */ TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_BANKED, + /* TrackElemType::DiagFlatToRightBankedUp25 */ TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_BANKED, + /* TrackElemType::DiagLeftBankedUp25ToFlat */ TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_BANKED | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT, + /* TrackElemType::DiagRightBankedUp25ToFlat */ TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_BANKED | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT, + /* TrackElemType::DiagFlatToLeftBankedDown25 */ TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_BANKED | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT, + /* TrackElemType::DiagFlatToRightBankedDown25 */ TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_BANKED | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT, + /* TrackElemType::DiagLeftBankedDown25ToFlat */ TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_BANKED, + /* TrackElemType::DiagRightBankedDown25ToFlat */ TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_BANKED, + /* TrackElemType::Up25LeftBanked */ TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_BANKED | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT, + /* TrackElemType::Up25RightBanked */ TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_BANKED | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT, + /* TrackElemType::Down25LeftBanked */ TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_BANKED | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT, + /* TrackElemType::Down25RightBanked */ TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_BANKED | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT, + /* TrackElemType::LeftEighthBankToDiagUp25 */ TRACK_ELEM_FLAG_TURN_LEFT | TRACK_ELEM_FLAG_TURN_SLOPED | TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT | TRACK_ELEM_FLAG_ALLOW_LIFT_HILL | TRACK_ELEM_FLAG_CURVE_ALLOWS_LIFT, + /* TrackElemType::RightEighthBankToDiagUp25 */ TRACK_ELEM_FLAG_TURN_RIGHT | TRACK_ELEM_FLAG_TURN_SLOPED | TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT | TRACK_ELEM_FLAG_ALLOW_LIFT_HILL | TRACK_ELEM_FLAG_CURVE_ALLOWS_LIFT, + /* TrackElemType::LeftEighthBankToDiagDown25 */ TRACK_ELEM_FLAG_TURN_LEFT | TRACK_ELEM_FLAG_TURN_SLOPED | TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT | TRACK_ELEM_FLAG_ALLOW_LIFT_HILL | TRACK_ELEM_FLAG_CURVE_ALLOWS_LIFT, + /* TrackElemType::RightEighthBankToDiagDown25 */ TRACK_ELEM_FLAG_TURN_RIGHT | TRACK_ELEM_FLAG_TURN_SLOPED | TRACK_ELEM_FLAG_UP | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT | TRACK_ELEM_FLAG_ALLOW_LIFT_HILL | TRACK_ELEM_FLAG_CURVE_ALLOWS_LIFT, + /* TrackElemType::LeftEighthBankToOrthogonalUp25 */ TRACK_ELEM_FLAG_TURN_LEFT | TRACK_ELEM_FLAG_TURN_SLOPED | TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT | TRACK_ELEM_FLAG_ALLOW_LIFT_HILL | TRACK_ELEM_FLAG_CURVE_ALLOWS_LIFT, + /* TrackElemType::RightEighthBankToOrthogonalUp25 */ TRACK_ELEM_FLAG_TURN_RIGHT | TRACK_ELEM_FLAG_TURN_SLOPED | TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT | TRACK_ELEM_FLAG_ALLOW_LIFT_HILL | TRACK_ELEM_FLAG_CURVE_ALLOWS_LIFT, + /* TrackElemType::LeftEighthBankToOrthogonalDown25 */ TRACK_ELEM_FLAG_TURN_LEFT | TRACK_ELEM_FLAG_TURN_SLOPED | TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT | TRACK_ELEM_FLAG_ALLOW_LIFT_HILL | TRACK_ELEM_FLAG_CURVE_ALLOWS_LIFT, + /* TrackElemType::RightEighthBankToOrthogonalDown25 */ TRACK_ELEM_FLAG_TURN_RIGHT | TRACK_ELEM_FLAG_TURN_SLOPED | TRACK_ELEM_FLAG_DOWN | TRACK_ELEM_FLAG_STARTS_AT_HALF_HEIGHT | TRACK_ELEM_FLAG_ALLOW_LIFT_HILL | TRACK_ELEM_FLAG_CURVE_ALLOWS_LIFT, }; // clang-format on @@ -5954,8 +6554,53 @@ static constexpr TrackDefinition TrackDefinitions[TrackElemType::Count] = { TRACK_FLYING_LARGE_HALF_LOOP_INVERTED_UP, TRACK_SLOPE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_UPSIDE_DOWN, TRACK_BANK_NONE, 64 }, // TrackElemType::RightFlyerLargeHalfLoopInvertedUp { TRACK_FLYING_LARGE_HALF_LOOP_UNINVERTED_DOWN, TRACK_SLOPE_DOWN_25, TRACK_SLOPE_NONE, TRACK_BANK_UPSIDE_DOWN, TRACK_BANK_NONE, -64 }, // TrackElemType::RightFlyerLargeHalfLoopUninvertedDown { TRACK_FLYING_LARGE_HALF_LOOP_UNINVERTED_DOWN, TRACK_SLOPE_DOWN_25, TRACK_SLOPE_NONE, TRACK_BANK_UPSIDE_DOWN, TRACK_BANK_NONE, -64 }, // TrackElemType::LeftFlyerLargeHalfLoopUninvertedDown - {TRACK_FLYING_HALF_LOOP_INVERTED_UP, TRACK_SLOPE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_UPSIDE_DOWN, TRACK_BANK_NONE, 64 }, // TrackElemType::FlyerHalfLoopInvertedUp - {TRACK_FLYING_HALF_LOOP_UNINVERTED_DOWN, TRACK_SLOPE_DOWN_25, TRACK_SLOPE_NONE, TRACK_BANK_UPSIDE_DOWN, TRACK_BANK_NONE, -64 }, // TrackElemType::FlyerHalfLoopUninvertedDown + { TRACK_FLYING_HALF_LOOP_INVERTED_UP, TRACK_SLOPE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_UPSIDE_DOWN, TRACK_BANK_NONE, 64 }, // TrackElemType::FlyerHalfLoopInvertedUp + { TRACK_FLYING_HALF_LOOP_UNINVERTED_DOWN, TRACK_SLOPE_DOWN_25, TRACK_SLOPE_NONE, TRACK_BANK_UPSIDE_DOWN, TRACK_BANK_NONE, -64 }, // TrackElemType::FlyerHalfLoopUninvertedDown + { TRACK_SLOPE_CURVE_LARGE, TRACK_SLOPE_UP_25, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_BANK_NONE, 0 }, // TrackElemType::LeftEighthToDiagUp25 + { TRACK_SLOPE_CURVE_LARGE, TRACK_SLOPE_UP_25, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_BANK_NONE, 0 }, // TrackElemType::RightEighthToDiagUp25 + { TRACK_SLOPE_CURVE_LARGE, TRACK_SLOPE_DOWN_25, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_BANK_NONE, 0 }, // TrackElemType::LeftEighthToDiagDown25 + { TRACK_SLOPE_CURVE_LARGE, TRACK_SLOPE_DOWN_25, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_BANK_NONE, 0 }, // TrackElemType::RightEighthToDiagDown25 + { TRACK_SLOPE_CURVE_LARGE, TRACK_SLOPE_UP_25, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_BANK_NONE, 0 }, // TrackElemType::LeftEighthToOrthogonalUp25 + { TRACK_SLOPE_CURVE_LARGE, TRACK_SLOPE_UP_25, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_BANK_NONE, 0 }, // TrackElemType::RightEighthToOrthogonalUp25 + { TRACK_SLOPE_CURVE_LARGE, TRACK_SLOPE_DOWN_25, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_BANK_NONE, 0 }, // TrackElemType::LeftEighthToOrthogonalDown25 + { TRACK_SLOPE_CURVE_LARGE, TRACK_SLOPE_DOWN_25, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_BANK_NONE, 0 }, // TrackElemType::RightEighthToOrthogonalDown25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_UP_25, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_BANK_NONE, 0 }, // TrackElemType::DiagUp25ToLeftBankedUp25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_UP_25, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_BANK_NONE, 0 }, // TrackElemType::DiagUp25ToRightBankedUp25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_UP_25, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_BANK_LEFT, 0 }, // TrackElemType::DiagLeftBankedUp25ToUp25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_UP_25, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_BANK_RIGHT, 0 }, // TrackElemType::DiagRightBankedUp25ToUp25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_DOWN_25, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_BANK_NONE, 0 }, // TrackElemType::DiagDown25ToLeftBankedDown25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_DOWN_25, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_BANK_NONE, 0 }, // TrackElemType::DiagDown25ToRightBankedDown25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_DOWN_25, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_BANK_LEFT, 0 }, // TrackElemType::DiagLeftBankedDown25ToDown25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_DOWN_25, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_BANK_RIGHT, 0 }, // TrackElemType::DiagRightBankedDown25ToDown25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_UP_25, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_BANK_LEFT, 0 }, // TrackElemType::DiagLeftBankedFlatToLeftBankedUp25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_UP_25, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_BANK_RIGHT, 0 }, // TrackElemType::DiagRightBankedFlatToRightBankedUp25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_BANK_LEFT, 0 }, // TrackElemType::DiagLeftBankedUp25ToLeftBankedFlat + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_BANK_RIGHT, 0 }, // TrackElemType::DiagRightBankedUp25ToRightBankedFlat + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_DOWN_25, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_BANK_LEFT, 0 }, // TrackElemType::DiagLeftBankedFlatToLeftBankedDown25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_DOWN_25, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_BANK_RIGHT, 0 }, // TrackElemType::DiagRightBankedFlatToRightBankedDown25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_BANK_LEFT, 0 }, // TrackElemType::DiagLeftBankedDown25ToLeftBankedFlat + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_BANK_RIGHT, 0 }, // TrackElemType::DiagRightBankedDown25ToRightBankedFlat + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_UP_25, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_BANK_NONE, 0 }, // TrackElemType::DiagFlatToLeftBankedUp25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_UP_25, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_BANK_NONE, 0 }, // TrackElemType::DiagFlatToRightBankedUp25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_BANK_LEFT, 0 }, // TrackElemType::DiagLeftBankedUp25ToFlat + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_NONE, TRACK_SLOPE_UP_25, TRACK_BANK_NONE, TRACK_BANK_RIGHT, 0 }, // TrackElemType::DiagRightBankedUp25ToFlat + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_DOWN_25, TRACK_SLOPE_NONE, TRACK_BANK_LEFT, TRACK_BANK_NONE, 0 }, // TrackElemType::DiagFlatToLeftBankedDown25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_DOWN_25, TRACK_SLOPE_NONE, TRACK_BANK_RIGHT, TRACK_BANK_NONE, 0 }, // TrackElemType::DiagFlatToRightBankedDown25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_BANK_LEFT, 0 }, // TrackElemType::DiagLeftBankedDown25ToFlat + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_NONE, TRACK_SLOPE_DOWN_25, TRACK_BANK_NONE, TRACK_BANK_RIGHT, 0 }, // TrackElemType::DiagRightBankedDown25ToFlat + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_UP_25, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_BANK_LEFT, 0 }, // TrackElemType::Up25LeftBanked + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_UP_25, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_BANK_RIGHT, 0 }, // TrackElemType::Up25RightBanked + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_DOWN_25, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_BANK_LEFT, 0 }, // TrackElemType::Down25LeftBanked + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_DOWN_25, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_BANK_RIGHT, 0 }, // TrackElemType::Down25RightBanked + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_UP_25, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_BANK_LEFT, 0 }, // TrackElemType::LeftEighthBankToDiagUp25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_UP_25, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_BANK_RIGHT, 0 }, // TrackElemType::RightEighthBankToDiagUp25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_DOWN_25, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_BANK_LEFT, 0 }, // TrackElemType::LeftEighthBankToDiagDown25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_DOWN_25, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_BANK_RIGHT, 0 }, // TrackElemType::RightEighthBankToDiagDown25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_UP_25, TRACK_SLOPE_UP_25, TRACK_BANK_LEFT, TRACK_BANK_LEFT, 0 }, // TrackElemType::LeftEighthBankToOrthogonalUp25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_UP_25, TRACK_SLOPE_UP_25, TRACK_BANK_RIGHT, TRACK_BANK_RIGHT, 0 }, // TrackElemType::RightEighthBankToOrthogonalUp25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_DOWN_25, TRACK_SLOPE_DOWN_25, TRACK_BANK_LEFT, TRACK_BANK_LEFT, 0 }, // TrackElemType::LeftEighthBankToOrthogonalDown25 + { TRACK_SLOPE_CURVE_LARGE_BANKED, TRACK_SLOPE_DOWN_25, TRACK_SLOPE_DOWN_25, TRACK_BANK_RIGHT, TRACK_BANK_RIGHT, 0 }, // TrackElemType::RightEighthBankToOrthogonalDown25 +//TODO last column - preview z offset }; // clang-format on @@ -5983,8 +6628,11 @@ constexpr static uint8_t TrackTypeToSpinFunction[TrackElemType::Count] = { NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, - NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, -}; + NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, + NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, + NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, + NO_SPIN, NO_SPIN, NO_SPIN, NO_SPIN, +}; // TODO template static int32_t EvaluatorConst(const int16_t) { @@ -6235,6 +6883,34 @@ static constexpr TrackComputeFunction GetLateralFunction(const uint16_t type) case TrackElemType::FlatToRightBankedUp25: case TrackElemType::LeftBankedDown25ToFlat: case TrackElemType::RightBankedDown25ToFlat: + case TrackElemType::DiagUp25ToLeftBankedUp25: + case TrackElemType::DiagUp25ToRightBankedUp25: + case TrackElemType::DiagLeftBankedUp25ToUp25: + case TrackElemType::DiagRightBankedUp25ToUp25: + case TrackElemType::DiagDown25ToLeftBankedDown25: + case TrackElemType::DiagDown25ToRightBankedDown25: + case TrackElemType::DiagLeftBankedDown25ToDown25: + case TrackElemType::DiagRightBankedDown25ToDown25: + case TrackElemType::DiagLeftBankedFlatToLeftBankedUp25: + case TrackElemType::DiagRightBankedFlatToRightBankedUp25: + case TrackElemType::DiagLeftBankedUp25ToLeftBankedFlat: + case TrackElemType::DiagRightBankedUp25ToRightBankedFlat: + case TrackElemType::DiagLeftBankedFlatToLeftBankedDown25: + case TrackElemType::DiagRightBankedFlatToRightBankedDown25: + case TrackElemType::DiagLeftBankedDown25ToLeftBankedFlat: + case TrackElemType::DiagRightBankedDown25ToRightBankedFlat: + case TrackElemType::DiagFlatToLeftBankedUp25: + case TrackElemType::DiagFlatToRightBankedUp25: + case TrackElemType::DiagLeftBankedUp25ToFlat: + case TrackElemType::DiagRightBankedUp25ToFlat: + case TrackElemType::DiagFlatToLeftBankedDown25: + case TrackElemType::DiagFlatToRightBankedDown25: + case TrackElemType::DiagLeftBankedDown25ToFlat: + case TrackElemType::DiagRightBankedDown25ToFlat: + case TrackElemType::DiagUp25LeftBanked: + case TrackElemType::DiagUp25RightBanked: + case TrackElemType::DiagDown25LeftBanked: + case TrackElemType::DiagDown25RightBanked: return EvaluatorConst<0>; case TrackElemType::Up25ToFlat: // case TrackElemType::FlatToDown25: // @@ -6389,15 +7065,31 @@ static constexpr TrackComputeFunction GetLateralFunction(const uint16_t type) return EvaluatorConst<0>; case TrackElemType::LeftEighthToDiag: case TrackElemType::LeftEighthToOrthogonal: + case TrackElemType::LeftEighthToDiagUp25: + case TrackElemType::LeftEighthToDiagDown25: + case TrackElemType::LeftEighthToOrthogonalUp25: + case TrackElemType::LeftEighthToOrthogonalDown25: return EvaluatorConst<137>; case TrackElemType::RightEighthToDiag: case TrackElemType::RightEighthToOrthogonal: + case TrackElemType::RightEighthToDiagUp25: + case TrackElemType::RightEighthToDiagDown25: + case TrackElemType::RightEighthToOrthogonalUp25: + case TrackElemType::RightEighthToOrthogonalDown25: return EvaluatorConst<-137>; case TrackElemType::LeftEighthBankToDiag: case TrackElemType::LeftEighthBankToOrthogonal: + case TrackElemType::LeftEighthBankToDiagUp25: + case TrackElemType::LeftEighthBankToDiagDown25: + case TrackElemType::LeftEighthBankToOrthogonalUp25: + case TrackElemType::LeftEighthBankToOrthogonalDown25: return EvaluatorConst<200>; case TrackElemType::RightEighthBankToDiag: case TrackElemType::RightEighthBankToOrthogonal: + case TrackElemType::RightEighthBankToDiagUp25: + case TrackElemType::RightEighthBankToDiagDown25: + case TrackElemType::RightEighthBankToOrthogonalUp25: + case TrackElemType::RightEighthBankToOrthogonalDown25: return EvaluatorConst<-200>; case TrackElemType::DiagFlatToUp25: case TrackElemType::DiagDown25ToFlat: @@ -6566,6 +7258,26 @@ static constexpr TrackComputeFunction GetVerticalFunction(const uint16_t type) case TrackElemType::RightQuarterTurn1TileUp90: case TrackElemType::LeftQuarterTurn1TileDown90: case TrackElemType::RightQuarterTurn1TileDown90: + case TrackElemType::LeftEighthToDiagUp25: + case TrackElemType::RightEighthToDiagUp25: + case TrackElemType::LeftEighthToDiagDown25: + case TrackElemType::RightEighthToDiagDown25: + case TrackElemType::LeftEighthToOrthogonalUp25: + case TrackElemType::RightEighthToOrthogonalUp25: + case TrackElemType::LeftEighthToOrthogonalDown25: + case TrackElemType::RightEighthToOrthogonalDown25: + case TrackElemType::DiagUp25ToLeftBankedUp25: + case TrackElemType::DiagUp25ToRightBankedUp25: + case TrackElemType::DiagLeftBankedUp25ToUp25: + case TrackElemType::DiagRightBankedUp25ToUp25: + case TrackElemType::DiagDown25ToLeftBankedDown25: + case TrackElemType::DiagDown25ToRightBankedDown25: + case TrackElemType::DiagLeftBankedDown25ToDown25: + case TrackElemType::DiagRightBankedDown25ToDown25: + case TrackElemType::DiagUp25LeftBanked: + case TrackElemType::DiagUp25RightBanked: + case TrackElemType::DiagDown25LeftBanked: + case TrackElemType::DiagDown25RightBanked: return EvaluatorConst<0>; case TrackElemType::FlatToUp25: // case TrackElemType::Down25ToFlat: // @@ -6743,9 +7455,17 @@ static constexpr TrackComputeFunction GetVerticalFunction(const uint16_t type) return EvaluatorConst<0>; case TrackElemType::LeftEighthBankToDiag: case TrackElemType::LeftEighthBankToOrthogonal: + case TrackElemType::LeftEighthBankToDiagUp25: + case TrackElemType::LeftEighthBankToDiagDown25: + case TrackElemType::LeftEighthBankToOrthogonalUp25: + case TrackElemType::LeftEighthBankToOrthogonalDown25: return EvaluatorConst<270>; case TrackElemType::RightEighthBankToDiag: case TrackElemType::RightEighthBankToOrthogonal: + case TrackElemType::RightEighthBankToDiagUp25: + case TrackElemType::RightEighthBankToDiagDown25: + case TrackElemType::RightEighthBankToOrthogonalUp25: + case TrackElemType::RightEighthBankToOrthogonalDown25: return EvaluatorConst<270>; case TrackElemType::DiagFlatToUp25: case TrackElemType::DiagDown25ToFlat: @@ -6753,6 +7473,14 @@ static constexpr TrackComputeFunction GetVerticalFunction(const uint16_t type) case TrackElemType::DiagRightBankToUp25: case TrackElemType::DiagDown25ToLeftBank: case TrackElemType::DiagDown25ToRightBank: + case TrackElemType::DiagLeftBankedFlatToLeftBankedUp25: + case TrackElemType::DiagRightBankedFlatToRightBankedUp25: + case TrackElemType::DiagLeftBankedDown25ToLeftBankedFlat: + case TrackElemType::DiagRightBankedDown25ToRightBankedFlat: + case TrackElemType::DiagFlatToLeftBankedUp25: + case TrackElemType::DiagFlatToRightBankedUp25: + case TrackElemType::DiagLeftBankedDown25ToFlat: + case TrackElemType::DiagRightBankedDown25ToFlat: return EvaluatorConst<113>; case TrackElemType::DiagUp25ToFlat: case TrackElemType::DiagFlatToDown25: @@ -6760,6 +7488,14 @@ static constexpr TrackComputeFunction GetVerticalFunction(const uint16_t type) case TrackElemType::DiagUp25ToRightBank: case TrackElemType::DiagLeftBankToDown25: case TrackElemType::DiagRightBankToDown25: + case TrackElemType::DiagLeftBankedUp25ToLeftBankedFlat: + case TrackElemType::DiagRightBankedUp25ToRightBankedFlat: + case TrackElemType::DiagLeftBankedFlatToLeftBankedDown25: + case TrackElemType::DiagRightBankedFlatToRightBankedDown25: + case TrackElemType::DiagLeftBankedUp25ToFlat: + case TrackElemType::DiagRightBankedUp25ToFlat: + case TrackElemType::DiagFlatToLeftBankedDown25: + case TrackElemType::DiagFlatToRightBankedDown25: return EvaluatorConst<-113>; case TrackElemType::DiagUp25ToUp60: case TrackElemType::DiagDown60ToDown25: @@ -7141,6 +7877,50 @@ static constexpr const StringId RideConfigurationStringIds[] = { STR_LARGE_HALF_LOOP_LEFT, // TrackElemType::LeftFlyerLargeHalfLoopUninvertedDown STR_HALF_LOOP, // TrackElemType::FlyerHalfLoopInvertedUp STR_HALF_LOOP, // TrackElemType::FlyerHalfLoopUninvertedDown + STR_EMPTY, // TrackElemType::LeftEighthToDiagUp25 + STR_EMPTY, // TrackElemType::RightEighthToDiagUp25 + STR_EMPTY, // TrackElemType::LeftEighthToDiagDown25 + STR_EMPTY, // TrackElemType::RightEighthToDiagDown25 + STR_EMPTY, // TrackElemType::LeftEighthToOrthogonalUp25 + STR_EMPTY, // TrackElemType::RightEighthToOrthogonalUp25 + STR_EMPTY, // TrackElemType::LeftEighthToOrthogonalDown25 + STR_EMPTY, // TrackElemType::RightEighthToOrthogonalDown25 + STR_EMPTY, // TrackElemType::DiagUp25ToLeftBankedUp25 + STR_EMPTY, // TrackElemType::DiagUp25ToRightBankedUp25 + STR_EMPTY, // TrackElemType::DiagLeftBankedUp25ToUp25 + STR_EMPTY, // TrackElemType::DiagRightBankedUp25ToUp25 + STR_EMPTY, // TrackElemType::DiagDown25ToLeftBankedDown25 + STR_EMPTY, // TrackElemType::DiagDown25ToRightBankedDown25 + STR_EMPTY, // TrackElemType::DiagLeftBankedDown25ToDown25 + STR_EMPTY, // TrackElemType::DiagRightBankedDown25ToDown25 + STR_EMPTY, // TrackElemType::DiagLeftBankedFlatToLeftBankedUp25 + STR_EMPTY, // TrackElemType::DiagRightBankedFlatToRightBankedUp25 + STR_EMPTY, // TrackElemType::DiagLeftBankedUp25ToLeftBankedFlat + STR_EMPTY, // TrackElemType::DiagRightBankedUp25ToRightBankedFlat + STR_EMPTY, // TrackElemType::DiagLeftBankedFlatToLeftBankedDown25 + STR_EMPTY, // TrackElemType::DiagRightBankedFlatToRightBankedDown25 + STR_EMPTY, // TrackElemType::DiagLeftBankedDown25ToLeftBankedFlat + STR_EMPTY, // TrackElemType::DiagRightBankedDown25ToRightBankedFlat + STR_EMPTY, // TrackElemType::DiagFlatToLeftBankedUp25 + STR_EMPTY, // TrackElemType::DiagFlatToRightBankedUp25 + STR_EMPTY, // TrackElemType::DiagLeftBankedUp25ToFlat + STR_EMPTY, // TrackElemType::DiagRightBankedUp25ToFlat + STR_EMPTY, // TrackElemType::DiagFlatToLeftBankedDown25 + STR_EMPTY, // TrackElemType::DiagFlatToRightBankedDown25 + STR_EMPTY, // TrackElemType::DiagLeftBankedDown25ToFlat + STR_EMPTY, // TrackElemType::DiagRightBankedDown25ToFlat + STR_EMPTY, // TrackElemType::Up25LeftBanked + STR_EMPTY, // TrackElemType::Up25RightBanked + STR_EMPTY, // TrackElemType::Down25LeftBanked + STR_EMPTY, // TrackElemType::Down25RightBanked + STR_EMPTY, // TrackElemType::LeftEighthBankToDiagUp25 + STR_EMPTY, // TrackElemType::RightEighthBankToDiagUp25 + STR_EMPTY, // TrackElemType::LeftEighthBankToDiagDown25 + STR_EMPTY, // TrackElemType::RightEighthBankToDiagDown25 + STR_EMPTY, // TrackElemType::LeftEighthBankToOrthogonalUp25 + STR_EMPTY, // TrackElemType::RightEighthBankToOrthogonalUp25 + STR_EMPTY, // TrackElemType::LeftEighthBankToOrthogonalDown25 + STR_EMPTY, // TrackElemType::RightEighthBankToOrthogonalDown25 }; namespace OpenRCT2 diff --git a/src/openrct2/ride/TrackData.h b/src/openrct2/ride/TrackData.h index 6c50546d03..08ca4cf3b7 100644 --- a/src/openrct2/ride/TrackData.h +++ b/src/openrct2/ride/TrackData.h @@ -31,7 +31,7 @@ struct TrackDescriptor uint8_t track_curve; uint8_t slope_end; uint8_t bank_end; - uint8_t track_element; + track_type_t track_element; }; enum @@ -51,7 +51,7 @@ enum R9_SPIN }; -extern const TrackDescriptor gTrackDescriptors[142]; +extern const TrackDescriptor gTrackDescriptors[186]; struct DodgemsTrackSize { diff --git a/src/openrct2/ride/VehiclePaint.cpp b/src/openrct2/ride/VehiclePaint.cpp index 466fdf8c4d..706cc8505e 100644 --- a/src/openrct2/ride/VehiclePaint.cpp +++ b/src/openrct2/ride/VehiclePaint.cpp @@ -3190,6 +3190,36 @@ static void VehiclePitchUp8BankedRight22( } } +static void VehiclePitchUp8BankedLeft45( + PaintSession& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const CarEntry* carEntry) +{ + if (carEntry->GroupEnabled(SpriteGroupType::Slopes8Banked45)) + { + int32_t boundingBoxNum = YawTo16(imageDirection); + int32_t spriteNum = carEntry->SpriteOffset(SpriteGroupType::Slopes8Banked45, imageDirection, 0); + VehicleSpritePaintWithSwinging(session, vehicle, spriteNum, boundingBoxNum, z, carEntry); + } + else + { + VehiclePitchUp8Unbanked(session, vehicle, imageDirection, z, carEntry); + } +} + +static void VehiclePitchUp8BankedRight45( + PaintSession& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const CarEntry* carEntry) +{ + if (carEntry->GroupEnabled(SpriteGroupType::Slopes8Banked45)) + { + int32_t boundingBoxNum = YawTo16(imageDirection); + int32_t spriteNum = carEntry->SpriteOffset(SpriteGroupType::Slopes8Banked45, imageDirection, 1); + VehicleSpritePaintWithSwinging(session, vehicle, spriteNum, boundingBoxNum, z, carEntry); + } + else + { + VehiclePitchUp8Unbanked(session, vehicle, imageDirection, z, carEntry); + } +} + // 6D4D60 static void VehiclePitchUp8( PaintSession& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const CarEntry* carEntry) @@ -3208,6 +3238,12 @@ static void VehiclePitchUp8( case 18: VehiclePitchUp8BankedRight22(session, vehicle, imageDirection, z, carEntry); break; + case 2: + VehiclePitchUp8BankedLeft45(session, vehicle, imageDirection, z, carEntry); + break; + case 4: + VehiclePitchUp8BankedRight45(session, vehicle, imageDirection, z, carEntry); + break; default: VehiclePitchUp8Unbanked(session, vehicle, imageDirection, z, carEntry); break; @@ -3219,7 +3255,7 @@ static void VehiclePitchUp8( #pragma region SlopeUp16 // 6D4E3A -static void VehiclePitchUp16( +static void VehiclePitchUp16Unbanked( PaintSession& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const CarEntry* carEntry) { if (carEntry->GroupEnabled(SpriteGroupType::Slopes16)) @@ -3234,6 +3270,92 @@ static void VehiclePitchUp16( } } +static void VehiclePitchUp16BankedLeft22( + PaintSession& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const CarEntry* carEntry) +{ + if (carEntry->GroupEnabled(SpriteGroupType::Slopes16Banked22)) + { + int32_t boundingBoxNum = YawTo16(imageDirection); + int32_t spriteNum = carEntry->SpriteOffset(SpriteGroupType::Slopes16Banked22, imageDirection, 0); + VehicleSpritePaintWithSwinging(session, vehicle, spriteNum, boundingBoxNum, z, carEntry); + } + else + { + VehiclePitchUp16Unbanked(session, vehicle, imageDirection, z, carEntry); + } +} + +static void VehiclePitchUp16BankedRight22( + PaintSession& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const CarEntry* carEntry) +{ + if (carEntry->GroupEnabled(SpriteGroupType::Slopes16Banked22)) + { + int32_t boundingBoxNum = YawTo16(imageDirection); + int32_t spriteNum = carEntry->SpriteOffset(SpriteGroupType::Slopes16Banked22, imageDirection, 1); + VehicleSpritePaintWithSwinging(session, vehicle, spriteNum, boundingBoxNum, z, carEntry); + } + else + { + VehiclePitchUp16Unbanked(session, vehicle, imageDirection, z, carEntry); + } +} + +static void VehiclePitchUp16BankedLeft45( + PaintSession& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const CarEntry* carEntry) +{ + if (carEntry->GroupEnabled(SpriteGroupType::Slopes16Banked45)) + { + int32_t boundingBoxNum = YawTo16(imageDirection); + int32_t spriteNum = carEntry->SpriteOffset(SpriteGroupType::Slopes16Banked45, imageDirection, 0); + VehicleSpritePaintWithSwinging(session, vehicle, spriteNum, boundingBoxNum, z, carEntry); + } + else + { + VehiclePitchUp16BankedLeft22(session, vehicle, imageDirection, z, carEntry); + } +} + +static void VehiclePitchUp16BankedRight45( + PaintSession& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const CarEntry* carEntry) +{ + if (carEntry->GroupEnabled(SpriteGroupType::Slopes16Banked45)) + { + int32_t boundingBoxNum = YawTo16(imageDirection); + int32_t spriteNum = carEntry->SpriteOffset(SpriteGroupType::Slopes16Banked45, imageDirection, 1); + VehicleSpritePaintWithSwinging(session, vehicle, spriteNum, boundingBoxNum, z, carEntry); + } + else + { + VehiclePitchUp16BankedRight22(session, vehicle, imageDirection, z, carEntry); + } +} + +static void VehiclePitchUp16( + PaintSession& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const CarEntry* carEntry) +{ + switch (vehicle->bank_rotation) + { + case 0: + VehiclePitchUp16Unbanked(session, vehicle, imageDirection, z, carEntry); + break; + case 1: + VehiclePitchUp16BankedLeft22(session, vehicle, imageDirection, z, carEntry); + break; + case 3: + VehiclePitchUp16BankedRight22(session, vehicle, imageDirection, z, carEntry); + break; + case 2: + VehiclePitchUp16BankedLeft45(session, vehicle, imageDirection, z, carEntry); + break; + case 4: + VehiclePitchUp16BankedRight45(session, vehicle, imageDirection, z, carEntry); + break; + default: + VehiclePitchUp16Unbanked(session, vehicle, imageDirection, z, carEntry); + break; + } +} + #pragma endregion #pragma region SlopeUp50 @@ -3310,6 +3432,36 @@ static void VehiclePitchDown8BankedRight22( } } +static void VehiclePitchDown8BankedLeft45( + PaintSession& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const CarEntry* carEntry) +{ + if (carEntry->GroupEnabled(SpriteGroupType::Slopes8Banked45)) + { + int32_t boundingBoxNum = YawTo16(imageDirection); + int32_t spriteNum = carEntry->SpriteOffset(SpriteGroupType::Slopes8Banked45, imageDirection, 2); + VehicleSpritePaintWithSwinging(session, vehicle, spriteNum, boundingBoxNum, z, carEntry); + } + else + { + VehiclePitchFlat(session, vehicle, imageDirection, z, carEntry); + } +} + +static void VehiclePitchDown8BankedRight45( + PaintSession& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const CarEntry* carEntry) +{ + if (carEntry->GroupEnabled(SpriteGroupType::Slopes8Banked45)) + { + int32_t boundingBoxNum = YawTo16(imageDirection); + int32_t spriteNum = carEntry->SpriteOffset(SpriteGroupType::Slopes8Banked45, imageDirection, 3); + VehicleSpritePaintWithSwinging(session, vehicle, spriteNum, boundingBoxNum, z, carEntry); + } + else + { + VehiclePitchFlat(session, vehicle, imageDirection, z, carEntry); + } +} + // 6D4D89 static void VehiclePitchDown8( PaintSession& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const CarEntry* carEntry) @@ -3328,6 +3480,12 @@ static void VehiclePitchDown8( case 18: VehiclePitchDown8BankedRight22(session, vehicle, imageDirection, z, carEntry); break; + case 2: + VehiclePitchDown8BankedLeft45(session, vehicle, imageDirection, z, carEntry); + break; + case 4: + VehiclePitchDown8BankedRight45(session, vehicle, imageDirection, z, carEntry); + break; default: VehiclePitchDown8Unbanked(session, vehicle, imageDirection, z, carEntry); break; @@ -3339,7 +3497,7 @@ static void VehiclePitchDown8( #pragma region SlopeDown16 // 6D4E63 -static void VehiclePitchDown16( +static void VehiclePitchDown16Unbanked( PaintSession& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const CarEntry* carEntry) { if (carEntry->GroupEnabled(SpriteGroupType::Slopes16)) @@ -3354,6 +3512,92 @@ static void VehiclePitchDown16( } } +static void VehiclePitchDown16BankedLeft22( + PaintSession& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const CarEntry* carEntry) +{ + if (carEntry->GroupEnabled(SpriteGroupType::Slopes16Banked22)) + { + int32_t boundingBoxNum = YawTo16(imageDirection); + int32_t spriteNum = carEntry->SpriteOffset(SpriteGroupType::Slopes16Banked22, imageDirection, 2); + VehicleSpritePaintWithSwinging(session, vehicle, spriteNum, boundingBoxNum, z, carEntry); + } + else + { + VehiclePitchDown16Unbanked(session, vehicle, imageDirection, z, carEntry); + } +} + +static void VehiclePitchDown16BankedRight22( + PaintSession& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const CarEntry* carEntry) +{ + if (carEntry->GroupEnabled(SpriteGroupType::Slopes16Banked22)) + { + int32_t boundingBoxNum = YawTo16(imageDirection); + int32_t spriteNum = carEntry->SpriteOffset(SpriteGroupType::Slopes16Banked22, imageDirection, 3); + VehicleSpritePaintWithSwinging(session, vehicle, spriteNum, boundingBoxNum, z, carEntry); + } + else + { + VehiclePitchDown16Unbanked(session, vehicle, imageDirection, z, carEntry); + } +} + +static void VehiclePitchDown16BankedLeft45( + PaintSession& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const CarEntry* carEntry) +{ + if (carEntry->GroupEnabled(SpriteGroupType::Slopes16Banked45)) + { + int32_t boundingBoxNum = YawTo16(imageDirection); + int32_t spriteNum = carEntry->SpriteOffset(SpriteGroupType::Slopes16Banked45, imageDirection, 2); + VehicleSpritePaintWithSwinging(session, vehicle, spriteNum, boundingBoxNum, z, carEntry); + } + else + { + VehiclePitchDown16BankedLeft22(session, vehicle, imageDirection, z, carEntry); + } +} + +static void VehiclePitchDown16BankedRight45( + PaintSession& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const CarEntry* carEntry) +{ + if (carEntry->GroupEnabled(SpriteGroupType::Slopes16Banked45)) + { + int32_t boundingBoxNum = YawTo16(imageDirection); + int32_t spriteNum = carEntry->SpriteOffset(SpriteGroupType::Slopes16Banked45, imageDirection, 3); + VehicleSpritePaintWithSwinging(session, vehicle, spriteNum, boundingBoxNum, z, carEntry); + } + else + { + VehiclePitchDown16BankedRight22(session, vehicle, imageDirection, z, carEntry); + } +} + +static void VehiclePitchDown16( + PaintSession& session, const Vehicle* vehicle, int32_t imageDirection, int32_t z, const CarEntry* carEntry) +{ + switch (vehicle->bank_rotation) + { + case 0: + VehiclePitchDown16Unbanked(session, vehicle, imageDirection, z, carEntry); + break; + case 1: + VehiclePitchDown16BankedLeft22(session, vehicle, imageDirection, z, carEntry); + break; + case 3: + VehiclePitchDown16BankedRight22(session, vehicle, imageDirection, z, carEntry); + break; + case 2: + VehiclePitchDown16BankedLeft45(session, vehicle, imageDirection, z, carEntry); + break; + case 4: + VehiclePitchDown16BankedRight45(session, vehicle, imageDirection, z, carEntry); + break; + default: + VehiclePitchDown16Unbanked(session, vehicle, imageDirection, z, carEntry); + break; + } +} + #pragma endregion #pragma region SlopeDown50 diff --git a/src/openrct2/ride/VehicleSubpositionData.cpp b/src/openrct2/ride/VehicleSubpositionData.cpp index 64f0d1676f..88fcc36d35 100644 --- a/src/openrct2/ride/VehicleSubpositionData.cpp +++ b/src/openrct2/ride/VehicleSubpositionData.cpp @@ -8642,6 +8642,9 @@ CREATE_VEHICLE_INFO(TrackVehicleInfo_90FEF8, { { 16, 16, 0, 24, 18, 0 }, }) + +//LeftEighthToDiag + CREATE_VEHICLE_INFO(TrackVehicleInfo_9108DA, { { 31, 16, 0, 0, 0, 0 }, { 30, 16, 0, 0, 0, 0 }, { 29, 16, 0, 0, 0, 0 }, { 28, 16, 0, 0, 0, 0 }, { 27, 16, 0, 0, 0, 0 }, { 26, 16, 0, 0, 0, 0 }, { 25, 16, 0, 0, 0, 0 }, { 24, 16, 0, 0, 0, 0 }, { 23, 16, 0, 0, 0, 0 }, { 22, 16, 0, 0, 0, 0 }, @@ -8718,6 +8721,8 @@ CREATE_VEHICLE_INFO(TrackVehicleInfo_911147, { { 44, -44, 0, 20, 0, 0 }, { 44, -45, 0, 20, 0, 0 }, { 45, -46, 0, 20, 0, 0 }, { 46, -47, 0, 20, 0, 0 }, { 47, -48, 0, 20, 0, 0 }, }) +//RightEighthToDiag + CREATE_VEHICLE_INFO(TrackVehicleInfo_911F58, { { 31, 16, 0, 0, 0, 0 }, { 30, 16, 0, 0, 0, 0 }, { 29, 16, 0, 0, 0, 0 }, { 28, 16, 0, 0, 0, 0 }, { 27, 16, 0, 0, 0, 0 }, { 26, 16, 0, 0, 0, 0 }, { 25, 16, 0, 0, 0, 0 }, { 24, 16, 0, 0, 0, 0 }, { 23, 16, 0, 0, 0, 0 }, { 22, 16, 0, 0, 0, 0 }, @@ -8794,6 +8799,8 @@ CREATE_VEHICLE_INFO(TrackVehicleInfo_9127CE, { { -12, -44, 0, 28, 0, 0 }, { -13, -45, 0, 28, 0, 0 }, { -14, -46, 0, 28, 0, 0 }, { -15, -47, 0, 28, 0, 0 }, { -16, -48, 0, 28, 0, 0 }, }) +//LeftEighthToOrthogonal + CREATE_VEHICLE_INFO(TrackVehicleInfo_911419, { { 15, 17, 0, 4, 0, 0 }, { 14, 18, 0, 4, 0, 0 }, { 13, 19, 0, 4, 0, 0 }, { 12, 20, 0, 4, 0, 0 }, { 11, 20, 0, 4, 0, 0 }, { 10, 21, 0, 4, 0, 0 }, { 9, 22, 0, 4, 0, 0 }, { 8, 23, 0, 4, 0, 0 }, { 7, 24, 0, 3, 0, 0 }, { 6, 25, 0, 3, 0, 0 }, @@ -8870,6 +8877,8 @@ CREATE_VEHICLE_INFO(TrackVehicleInfo_911C86, { { -16, -60, 0, 24, 0, 0 }, { -16, -61, 0, 24, 0, 0 }, { -16, -62, 0, 24, 0, 0 }, { -16, -63, 0, 24, 0, 0 }, { -16, -64, 0, 24, 0, 0 }, }) +//RightEighthToOrthogonal + CREATE_VEHICLE_INFO(TrackVehicleInfo_912AA0, { { 15, 17, 0, 4, 0, 0 }, { 14, 18, 0, 4, 0, 0 }, { 13, 19, 0, 4, 0, 0 }, { 12, 20, 0, 4, 0, 0 }, { 12, 21, 0, 4, 0, 0 }, { 11, 22, 0, 4, 0, 0 }, { 10, 23, 0, 4, 0, 0 }, { 9, 24, 0, 4, 0, 0 }, { 8, 25, 0, 5, 0, 0 }, { 7, 26, 0, 5, 0, 0 }, @@ -22044,837 +22053,839 @@ CREATE_VEHICLE_INFO(TrackVehicleInfoRightLargeCorkscrewDown3, { }) CREATE_VEHICLE_INFO(TrackVehicleInfoLeftMediumHalfLoopUp0, { - { 31, 16, -1, 0, 2, 0}, { 30, 16, 0, 0, 2, 0}, { 29, 16, 0, 0, 2, 0}, { 28, 15, 1, 0, 2, 0}, { 27, 15, 1, 0, 2, 0}, - { 26, 15, 2, 0, 2, 0}, { 26, 15, 2, 0, 2, 0}, { 25, 15, 3, 0, 2, 0}, { 24, 15, 3, 0, 2, 0}, { 23, 15, 4, 0, 2, 0}, - { 22, 15, 4, 0, 2, 0}, { 21, 14, 5, 0, 2, 0}, { 20, 14, 5, 0, 2, 0}, { 19, 14, 6, 0, 2, 0}, { 18, 14, 6, 0, 2, 0}, - { 18, 14, 7, 0, 2, 0}, { 17, 14, 7, 0, 2, 0}, { 16, 14, 8, 0, 2, 0}, { 15, 14, 9, 0, 2, 0}, { 14, 13, 9, 0, 2, 0}, - { 13, 13, 10, 0, 2, 0}, { 12, 13, 10, 0, 2, 0}, { 11, 13, 11, 0, 2, 0}, { 11, 13, 11, 0, 2, 0}, { 10, 13, 12, 0, 2, 0}, - { 9, 13, 13, 0, 2, 0}, { 8, 12, 13, 0, 2, 0}, { 7, 12, 14, 0, 2, 0}, { 6, 12, 14, 0, 2, 0}, { 5, 12, 15, 0, 2, 0}, - { 4, 12, 16, 0, 2, 0}, { 4, 12, 16, 0, 2, 0}, { 3, 12, 17, 0, 2, 0}, { 2, 12, 17, 0, 3, 0}, { 1, 11, 18, 0, 3, 0}, - { 0, 11, 19, 0, 3, 0}, { -1, 11, 19, 0, 3, 0}, { -1, 11, 20, 0, 3, 0}, { -2, 11, 21, 0, 3, 0}, { -3, 11, 21, 0, 3, 0}, - { -4, 11, 22, 0, 3, 0}, { -5, 11, 23, 0, 3, 0}, { -6, 10, 23, 0, 3, 0}, { -6, 10, 24, 0, 3, 0}, { -7, 10, 25, 0, 3, 0}, - { -8, 10, 25, 0, 3, 0}, { -9, 10, 26, 0, 3, 0}, { -10, 10, 27, 0, 3, 0}, { -11, 10, 28, 0, 3, 0}, { -11, 9, 28, 0, 3, 0}, - { -12, 9, 29, 0, 3, 0}, { -13, 9, 30, 0, 3, 0}, { -14, 9, 30, 0, 3, 0}, { -14, 9, 31, 0, 3, 0}, { -15, 9, 32, 0, 3, 0}, - { -16, 9, 33, 0, 3, 0}, { -17, 9, 33, 0, 3, 0}, { -18, 8, 34, 0, 3, 0}, { -18, 8, 35, 0, 3, 0}, { -19, 8, 36, 0, 3, 0}, - { -20, 8, 37, 0, 3, 0}, { -21, 8, 37, 0, 3, 0}, { -21, 8, 38, 0, 3, 0}, { -22, 8, 39, 0, 3, 0}, { -23, 8, 40, 0, 3, 0}, - { -24, 7, 41, 0, 3, 0}, { -24, 7, 41, 0, 3, 0}, { -25, 7, 42, 0, 3, 0}, { -26, 7, 43, 0, 3, 0}, { -26, 7, 44, 0, 3, 0}, - { -27, 7, 45, 0, 3, 0}, { -28, 7, 46, 0, 3, 0}, { -29, 6, 46, 0, 3, 0}, { -29, 6, 47, 0, 3, 0}, { -30, 6, 48, 0, 3, 0}, - { -31, 6, 49, 0, 3, 0}, { -31, 6, 50, 0, 3, 0}, { -32, 6, 51, 0, 3, 0}, { -33, 6, 52, 0, 3, 0}, { -33, 6, 53, 0, 3, 0}, - { -34, 5, 53, 0, 3, 0}, { -35, 5, 54, 0, 3, 0}, { -35, 5, 55, 0, 3, 0}, { -36, 5, 56, 0, 4, 0}, { -37, 5, 57, 0, 4, 0}, - { -37, 5, 58, 0, 4, 0}, { -38, 5, 59, 0, 4, 0}, { -38, 5, 60, 0, 4, 0}, { -39, 4, 61, 0, 4, 0}, { -40, 4, 62, 0, 4, 0}, - { -40, 4, 63, 0, 4, 0}, { -41, 4, 64, 0, 4, 0}, { -42, 4, 65, 0, 4, 0}, { -42, 4, 66, 0, 4, 0}, { -43, 4, 67, 0, 4, 0}, - { -43, 3, 68, 0, 4, 0}, { -44, 3, 69, 0, 4, 0}, { -44, 3, 70, 0, 4, 0}, { -45, 3, 71, 0, 4, 0}, { -45, 3, 72, 0, 4, 0}, - { -46, 3, 73, 0, 4, 0}, { -47, 3, 74, 0, 4, 0}, { -47, 3, 75, 0, 4, 0}, { -48, 2, 76, 0, 4, 0}, { -48, 2, 77, 0, 4, 0}, - { -49, 2, 78, 0, 4, 0}, { -49, 2, 79, 0, 4, 0}, { -50, 2, 80, 0, 4, 0}, { -50, 2, 81, 0, 4, 0}, { -50, 2, 82, 0, 4, 0}, - { -51, 2, 83, 0, 4, 0}, { -51, 1, 84, 0, 4, 0}, { -52, 1, 86, 0, 4, 0}, { -52, 1, 87, 0, 4, 0}, { -53, 1, 88, 0, 4, 0}, - { -53, 1, 89, 0, 4, 0}, { -53, 1, 90, 0, 4, 0}, { -54, 1, 91, 0, 9, 0}, { -54, 0, 92, 0, 9, 0}, { -55, 0, 93, 0, 9, 0}, - { -55, 0, 94, 0, 9, 0}, { -55, 0, 96, 0, 9, 0}, { -56, 0, 97, 0, 9, 0}, { -56, 0, 98, 0, 9, 0}, { -56, 0, 99, 0, 9, 0}, - { -57, 0, 100, 0, 9, 0}, { -57, -1, 101, 0, 9, 0}, { -57, -1, 102, 0, 9, 0}, { -58, -1, 104, 0, 9, 0}, { -58, -1, 105, 0, 9, 0}, - { -58, -1, 106, 0, 9, 0}, { -58, -1, 107, 0, 9, 0}, { -59, -1, 108, 0, 9, 0}, { -59, -1, 109, 0, 9, 0}, { -59, -2, 111, 0, 9, 0}, - { -59, -2, 112, 0, 9, 0}, { -60, -2, 113, 0, 9, 0}, { -60, -2, 114, 0, 9, 0}, { -60, -2, 115, 0, 9, 0}, { -60, -2, 117, 0, 9, 0}, - { -60, -2, 118, 0, 9, 0}, { -60, -3, 119, 0, 10, 0}, { -60, -3, 120, 0, 10, 0}, { -61, -3, 121, 0, 10, 0}, { -61, -3, 123, 0, 10, 0}, - { -61, -3, 124, 0, 10, 0}, { -61, -3, 125, 0, 10, 0}, { -61, -3, 126, 0, 10, 0}, { -61, -3, 127, 0, 10, 0}, { -61, -4, 129, 0, 10, 0}, - { -61, -4, 130, 0, 10, 0}, { -61, -4, 131, 0, 10, 0}, { -61, -4, 132, 0, 10, 0}, { -61, -4, 134, 0, 10, 0}, { -60, -4, 135, 0, 10, 0}, - { -60, -4, 136, 0, 10, 0}, { -60, -4, 137, 0, 11, 0}, { -60, -5, 138, 0, 11, 0}, { -60, -5, 140, 0, 11, 0}, { -60, -5, 141, 0, 11, 0}, - { -60, -5, 142, 0, 11, 0}, { -59, -5, 143, 0, 11, 0}, { -59, -5, 144, 0, 11, 0}, { -59, -5, 145, 0, 11, 0}, { -59, -6, 147, 0, 11, 0}, - { -58, -6, 148, 0, 11, 0}, { -58, -6, 149, 0, 11, 0}, { -58, -6, 150, 0, 11, 0}, { -58, -6, 151, 0, 11, 0}, { -57, -6, 152, 0, 11, 0}, - { -57, -6, 154, 0, 11, 0}, { -56, -6, 155, 0, 11, 0}, { -56, -7, 156, 0, 12, 0}, { -56, -7, 157, 0, 12, 0}, { -55, -7, 158, 0, 12, 0}, - { -55, -7, 159, 0, 12, 0}, { -54, -7, 160, 0, 12, 0}, { -54, -7, 161, 0, 12, 0}, { -54, -7, 162, 0, 12, 0}, { -53, -8, 163, 0, 12, 0}, - { -53, -8, 165, 0, 12, 0}, { -52, -8, 166, 0, 12, 0}, { -52, -8, 167, 0, 12, 0}, { -51, -8, 168, 0, 12, 0}, { -50, -8, 169, 0, 12, 0}, - { -50, -8, 170, 0, 12, 0}, { -49, -8, 171, 0, 12, 0}, { -49, -9, 172, 0, 12, 0}, { -48, -9, 173, 0, 13, 0}, { -48, -9, 174, 0, 13, 0}, - { -47, -9, 174, 0, 13, 0}, { -46, -9, 175, 0, 13, 0}, { -46, -9, 176, 0, 13, 0}, { -45, -9, 177, 0, 13, 0}, { -44, -9, 178, 0, 13, 0}, - { -44, -10, 179, 0, 13, 0}, { -43, -10, 180, 0, 13, 0}, { -42, -10, 181, 0, 13, 0}, { -41, -10, 182, 0, 13, 0}, { -41, -10, 182, 0, 13, 0}, - { -40, -10, 183, 0, 13, 0}, { -39, -10, 184, 0, 13, 0}, { -39, -11, 185, 0, 13, 0}, { -38, -11, 186, 0, 13, 0}, { -37, -11, 186, 0, 13, 0}, - { -36, -11, 187, 0, 14, 0}, { -35, -11, 188, 0, 14, 0}, { -35, -11, 188, 0, 14, 0}, { -34, -11, 189, 0, 14, 0}, { -33, -11, 190, 0, 14, 0}, - { -32, -12, 190, 0, 14, 0}, { -31, -12, 191, 0, 14, 0}, { -30, -12, 192, 0, 14, 0}, { -30, -12, 192, 0, 14, 0}, { -29, -12, 193, 0, 14, 0}, - { -28, -12, 193, 0, 14, 0}, { -27, -12, 194, 0, 14, 0}, { -26, -12, 195, 0, 14, 0}, { -25, -13, 195, 0, 14, 0}, { -24, -13, 196, 0, 14, 0}, - { -23, -13, 196, 0, 14, 0}, { -22, -13, 196, 0, 15, 0}, { -21, -13, 197, 0, 15, 0}, { -21, -13, 197, 0, 15, 0}, { -20, -13, 198, 0, 15, 0}, - { -19, -14, 198, 0, 15, 0}, { -18, -14, 198, 0, 15, 0}, { -17, -14, 199, 0, 15, 0}, { -16, -14, 199, 0, 15, 0}, { -15, -14, 199, 0, 15, 0}, - { -14, -14, 200, 0, 15, 0}, { -13, -14, 200, 0, 15, 0}, { -12, -14, 200, 0, 15, 0}, { -11, -15, 200, 0, 15, 0}, { -10, -15, 201, 0, 15, 0}, - { -9, -15, 201, 0, 15, 0}, { -8, -15, 201, 0, 15, 0}, { -7, -15, 201, 0, 16, 0}, { -6, -15, 201, 0, 16, 0}, { -5, -15, 201, 0, 16, 0}, - { -4, -15, 202, 0, 16, 0}, { -3, -16, 202, 0, 16, 0}, { -2, -16, 202, 0, 16, 0}, { -1, -16, 202, 0, 16, 0}, { 0, -16, 202, 0, 16, 0}, + {31, 16, -1, 0, 2, 0}, {30, 16, 0, 0, 2, 0}, {29, 16, 0, 0, 2, 0}, {28, 15, 1, 0, 2, 0}, {27, 15, 1, 0, 2, 0}, + {26, 15, 2, 0, 2, 0}, {26, 15, 2, 0, 2, 0}, {25, 15, 3, 0, 2, 0}, {24, 15, 3, 0, 2, 0}, {23, 15, 4, 0, 2, 0}, + {22, 15, 4, 0, 2, 0}, {21, 14, 5, 0, 2, 0}, {20, 14, 5, 0, 2, 0}, {19, 14, 6, 0, 2, 0}, {18, 14, 6, 0, 2, 0}, + {18, 14, 7, 0, 2, 0}, {17, 14, 7, 0, 2, 0}, {16, 14, 8, 0, 2, 0}, {15, 14, 9, 0, 2, 0}, {14, 13, 9, 0, 2, 0}, + {13, 13, 10, 0, 2, 0}, {12, 13, 10, 0, 2, 0}, {11, 13, 11, 0, 2, 0}, {11, 13, 11, 0, 2, 0}, {10, 13, 12, 0, 2, 0}, + {9, 13, 13, 0, 2, 0}, {8, 12, 13, 0, 2, 0}, {7, 12, 14, 0, 2, 0}, {6, 12, 14, 0, 2, 0}, {5, 12, 15, 0, 2, 0}, + {4, 12, 16, 0, 2, 0}, {4, 12, 16, 0, 2, 0}, {3, 12, 17, 0, 2, 0}, {2, 12, 17, 0, 3, 0}, {1, 11, 18, 0, 3, 0}, + {0, 11, 19, 0, 3, 0}, {-1, 11, 19, 0, 3, 0}, {-1, 11, 20, 0, 3, 0}, {-2, 11, 21, 0, 3, 0}, {-3, 11, 21, 0, 3, 0}, + {-4, 11, 22, 0, 3, 0}, {-5, 11, 23, 0, 3, 0}, {-6, 10, 23, 0, 3, 0}, {-6, 10, 24, 0, 3, 0}, {-7, 10, 25, 0, 3, 0}, + {-8, 10, 25, 0, 3, 0}, {-9, 10, 26, 0, 3, 0}, {-10, 10, 27, 0, 3, 0}, {-11, 10, 28, 0, 3, 0}, {-11, 9, 28, 0, 3, 0}, + {-12, 9, 29, 0, 3, 0}, {-13, 9, 30, 0, 3, 0}, {-14, 9, 30, 0, 3, 0}, {-14, 9, 31, 0, 3, 0}, {-15, 9, 32, 0, 3, 0}, + {-16, 9, 33, 0, 3, 0}, {-17, 9, 33, 0, 3, 0}, {-18, 8, 34, 0, 3, 0}, {-18, 8, 35, 0, 3, 0}, {-19, 8, 36, 0, 3, 0}, + {-20, 8, 37, 0, 3, 0}, {-21, 8, 37, 0, 3, 0}, {-21, 8, 38, 0, 3, 0}, {-22, 8, 39, 0, 3, 0}, {-23, 8, 40, 0, 3, 0}, + {-24, 7, 41, 0, 3, 0}, {-24, 7, 41, 0, 3, 0}, {-25, 7, 42, 0, 3, 0}, {-26, 7, 43, 0, 3, 0}, {-26, 7, 44, 0, 3, 0}, + {-27, 7, 45, 0, 3, 0}, {-28, 7, 46, 0, 3, 0}, {-29, 6, 46, 0, 3, 0}, {-29, 6, 47, 0, 3, 0}, {-30, 6, 48, 0, 3, 0}, + {-31, 6, 49, 0, 3, 0}, {-31, 6, 50, 0, 3, 0}, {-32, 6, 51, 0, 3, 0}, {-33, 6, 52, 0, 3, 0}, {-33, 6, 53, 0, 3, 0}, + {-34, 5, 53, 0, 3, 0}, {-35, 5, 54, 0, 3, 0}, {-35, 5, 55, 0, 3, 0}, {-36, 5, 56, 0, 4, 0}, {-37, 5, 57, 0, 4, 0}, + {-37, 5, 58, 0, 4, 0}, {-38, 5, 59, 0, 4, 0}, {-38, 5, 60, 0, 4, 0}, {-39, 4, 61, 0, 4, 0}, {-40, 4, 62, 0, 4, 0}, + {-40, 4, 63, 0, 4, 0}, {-41, 4, 64, 0, 4, 0}, {-42, 4, 65, 0, 4, 0}, {-42, 4, 66, 0, 4, 0}, {-43, 4, 67, 0, 4, 0}, + {-43, 3, 68, 0, 4, 0}, {-44, 3, 69, 0, 4, 0}, {-44, 3, 70, 0, 4, 0}, {-45, 3, 71, 0, 4, 0}, {-45, 3, 72, 0, 4, 0}, + {-46, 3, 73, 0, 4, 0}, {-47, 3, 74, 0, 4, 0}, {-47, 3, 75, 0, 4, 0}, {-48, 2, 76, 0, 4, 0}, {-48, 2, 77, 0, 4, 0}, + {-49, 2, 78, 0, 4, 0}, {-49, 2, 79, 0, 4, 0}, {-50, 2, 80, 0, 4, 0}, {-50, 2, 81, 0, 4, 0}, {-50, 2, 82, 0, 4, 0}, + {-51, 2, 83, 0, 4, 0}, {-51, 1, 84, 0, 4, 0}, {-52, 1, 86, 0, 4, 0}, {-52, 1, 87, 0, 4, 0}, {-53, 1, 88, 0, 4, 0}, + {-53, 1, 89, 0, 4, 0}, {-53, 1, 90, 0, 4, 0}, {-54, 1, 91, 0, 9, 0}, {-54, 0, 92, 0, 9, 0}, {-55, 0, 93, 0, 9, 0}, + {-55, 0, 94, 0, 9, 0}, {-55, 0, 96, 0, 9, 0}, {-56, 0, 97, 0, 9, 0}, {-56, 0, 98, 0, 9, 0}, {-56, 0, 99, 0, 9, 0}, + {-57, 0, 100, 0, 9, 0}, {-57, -1, 101, 0, 9, 0}, {-57, -1, 102, 0, 9, 0}, {-58, -1, 104, 0, 9, 0}, {-58, -1, 105, 0, 9, 0}, + {-58, -1, 106, 0, 9, 0}, {-58, -1, 107, 0, 9, 0}, {-59, -1, 108, 0, 9, 0}, {-59, -1, 109, 0, 9, 0}, {-59, -2, 111, 0, 9, 0}, + {-59, -2, 112, 0, 9, 0}, {-60, -2, 113, 0, 9, 0}, {-60, -2, 114, 0, 9, 0}, {-60, -2, 115, 0, 9, 0}, {-60, -2, 117, 0, 9, 0}, + {-60, -2, 118, 0, 9, 0}, {-60, -3, 119, 0, 10, 0}, {-60, -3, 120, 0, 10, 0}, {-61, -3, 121, 0, 10, 0}, {-61, -3, 123, 0, 10, 0}, + {-61, -3, 124, 0, 10, 0}, {-61, -3, 125, 0, 10, 0}, {-61, -3, 126, 0, 10, 0}, {-61, -3, 127, 0, 10, 0}, {-61, -4, 129, 0, 10, 0}, + {-61, -4, 130, 0, 10, 0}, {-61, -4, 131, 0, 10, 0}, {-61, -4, 132, 0, 10, 0}, {-61, -4, 134, 0, 10, 0}, {-60, -4, 135, 0, 10, 0}, + {-60, -4, 136, 0, 10, 0}, {-60, -4, 137, 0, 11, 0}, {-60, -5, 138, 0, 11, 0}, {-60, -5, 140, 0, 11, 0}, {-60, -5, 141, 0, 11, 0}, + {-60, -5, 142, 0, 11, 0}, {-59, -5, 143, 0, 11, 0}, {-59, -5, 144, 0, 11, 0}, {-59, -5, 145, 0, 11, 0}, {-59, -6, 147, 0, 11, 0}, + {-58, -6, 148, 0, 11, 0}, {-58, -6, 149, 0, 11, 0}, {-58, -6, 150, 0, 11, 0}, {-58, -6, 151, 0, 11, 0}, {-57, -6, 152, 0, 11, 0}, + {-57, -6, 154, 0, 11, 0}, {-56, -6, 155, 0, 11, 0}, {-56, -7, 156, 0, 12, 0}, {-56, -7, 157, 0, 12, 0}, {-55, -7, 158, 0, 12, 0}, + {-55, -7, 159, 0, 12, 0}, {-54, -7, 160, 0, 12, 0}, {-54, -7, 161, 0, 12, 0}, {-54, -7, 162, 0, 12, 0}, {-53, -8, 163, 0, 12, 0}, + {-53, -8, 165, 0, 12, 0}, {-52, -8, 166, 0, 12, 0}, {-52, -8, 167, 0, 12, 0}, {-51, -8, 168, 0, 12, 0}, {-50, -8, 169, 0, 12, 0}, + {-50, -8, 170, 0, 12, 0}, {-49, -8, 171, 0, 12, 0}, {-49, -9, 172, 0, 12, 0}, {-48, -9, 173, 0, 13, 0}, {-48, -9, 174, 0, 13, 0}, + {-47, -9, 174, 0, 13, 0}, {-46, -9, 175, 0, 13, 0}, {-46, -9, 176, 0, 13, 0}, {-45, -9, 177, 0, 13, 0}, {-44, -9, 178, 0, 13, 0}, + {-44, -10, 179, 0, 13, 0}, {-43, -10, 180, 0, 13, 0}, {-42, -10, 181, 0, 13, 0}, {-41, -10, 182, 0, 13, 0}, {-41, -10, 182, 0, 13, 0}, + {-40, -10, 183, 0, 13, 0}, {-39, -10, 184, 0, 13, 0}, {-39, -11, 185, 0, 13, 0}, {-38, -11, 186, 0, 13, 0}, {-37, -11, 186, 0, 13, 0}, + {-36, -11, 187, 0, 14, 0}, {-35, -11, 188, 0, 14, 0}, {-35, -11, 188, 0, 14, 0}, {-34, -11, 189, 0, 14, 0}, {-33, -11, 190, 0, 14, 0}, + {-32, -12, 190, 0, 14, 0}, {-31, -12, 191, 0, 14, 0}, {-30, -12, 192, 0, 14, 0}, {-30, -12, 192, 0, 14, 0}, {-29, -12, 193, 0, 14, 0}, + {-28, -12, 193, 0, 14, 0}, {-27, -12, 194, 0, 14, 0}, {-26, -12, 195, 0, 14, 0}, {-25, -13, 195, 0, 14, 0}, {-24, -13, 196, 0, 14, 0}, + {-23, -13, 196, 0, 14, 0}, {-22, -13, 196, 0, 15, 0}, {-21, -13, 197, 0, 15, 0}, {-21, -13, 197, 0, 15, 0}, {-20, -13, 198, 0, 15, 0}, + {-19, -14, 198, 0, 15, 0}, {-18, -14, 198, 0, 15, 0}, {-17, -14, 199, 0, 15, 0}, {-16, -14, 199, 0, 15, 0}, {-15, -14, 199, 0, 15, 0}, + {-14, -14, 200, 0, 15, 0}, {-13, -14, 200, 0, 15, 0}, {-12, -14, 200, 0, 15, 0}, {-11, -15, 200, 0, 15, 0}, {-10, -15, 201, 0, 15, 0}, + {-9, -15, 201, 0, 15, 0}, {-8, -15, 201, 0, 15, 0}, {-7, -15, 201, 0, 16, 0}, {-6, -15, 201, 0, 16, 0}, {-5, -15, 201, 0, 16, 0}, + {-4, -15, 202, 0, 16, 0}, {-3, -16, 202, 0, 16, 0}, {-2, -16, 202, 0, 16, 0}, {-1, -16, 202, 0, 16, 0}, {0, -16, 202, 0, 16, 0}, }) CREATE_VEHICLE_INFO(TrackVehicleInfoLeftMediumHalfLoopUp1, { - { 16, 0, -1, 8, 2, 0}, { 16, 1, -1, 8, 2, 0}, { 16, 2, 0, 8, 2, 0}, { 16, 3, 0, 8, 2, 0}, { 15, 4, 1, 8, 2, 0}, - { 15, 5, 1, 8, 2, 0}, { 15, 6, 2, 8, 2, 0}, { 15, 6, 2, 8, 2, 0}, { 15, 7, 3, 8, 2, 0}, { 15, 8, 3, 8, 2, 0}, - { 15, 9, 4, 8, 2, 0}, { 15, 10, 4, 8, 2, 0}, { 14, 11, 5, 8, 2, 0}, { 14, 12, 5, 8, 2, 0}, { 14, 13, 6, 8, 2, 0}, - { 14, 14, 6, 8, 2, 0}, { 14, 14, 7, 8, 2, 0}, { 14, 15, 7, 8, 2, 0}, { 14, 16, 8, 8, 2, 0}, { 14, 17, 9, 8, 2, 0}, - { 13, 18, 9, 8, 2, 0}, { 13, 19, 10, 8, 2, 0}, { 13, 20, 10, 8, 2, 0}, { 13, 21, 11, 8, 2, 0}, { 13, 21, 11, 8, 2, 0}, - { 13, 22, 12, 8, 2, 0}, { 13, 23, 13, 8, 2, 0}, { 12, 24, 13, 8, 2, 0}, { 12, 25, 14, 8, 2, 0}, { 12, 26, 14, 8, 2, 0}, - { 12, 27, 15, 8, 2, 0}, { 12, 28, 16, 8, 2, 0}, { 12, 28, 16, 8, 2, 0}, { 12, 29, 17, 8, 2, 0}, { 12, 30, 17, 8, 3, 0}, - { 11, 31, 18, 8, 3, 0}, { 11, 32, 19, 8, 3, 0}, { 11, 33, 19, 8, 3, 0}, { 11, 33, 20, 8, 3, 0}, { 11, 34, 21, 8, 3, 0}, - { 11, 35, 21, 8, 3, 0}, { 11, 36, 22, 8, 3, 0}, { 11, 37, 23, 8, 3, 0}, { 10, 38, 23, 8, 3, 0}, { 10, 38, 24, 8, 3, 0}, - { 10, 39, 25, 8, 3, 0}, { 10, 40, 25, 8, 3, 0}, { 10, 41, 26, 8, 3, 0}, { 10, 42, 27, 8, 3, 0}, { 10, 43, 28, 8, 3, 0}, - { 9, 43, 28, 8, 3, 0}, { 9, 44, 29, 8, 3, 0}, { 9, 45, 30, 8, 3, 0}, { 9, 46, 30, 8, 3, 0}, { 9, 46, 31, 8, 3, 0}, - { 9, 47, 32, 8, 3, 0}, { 9, 48, 33, 8, 3, 0}, { 9, 49, 33, 8, 3, 0}, { 8, 50, 34, 8, 3, 0}, { 8, 50, 35, 8, 3, 0}, - { 8, 51, 36, 8, 3, 0}, { 8, 52, 37, 8, 3, 0}, { 8, 53, 37, 8, 3, 0}, { 8, 53, 38, 8, 3, 0}, { 8, 54, 39, 8, 3, 0}, - { 8, 55, 40, 8, 3, 0}, { 7, 56, 41, 8, 3, 0}, { 7, 56, 41, 8, 3, 0}, { 7, 57, 42, 8, 3, 0}, { 7, 58, 43, 8, 3, 0}, - { 7, 58, 44, 8, 3, 0}, { 7, 59, 45, 8, 3, 0}, { 7, 60, 46, 8, 3, 0}, { 6, 61, 46, 8, 3, 0}, { 6, 61, 47, 8, 3, 0}, - { 6, 62, 48, 8, 3, 0}, { 6, 63, 49, 8, 3, 0}, { 6, 63, 50, 8, 3, 0}, { 6, 64, 51, 8, 3, 0}, { 6, 65, 52, 8, 3, 0}, - { 6, 65, 53, 8, 3, 0}, { 5, 66, 53, 8, 3, 0}, { 5, 67, 54, 8, 3, 0}, { 5, 67, 55, 8, 3, 0}, { 5, 68, 56, 8, 4, 0}, - { 5, 69, 57, 8, 4, 0}, { 5, 69, 58, 8, 4, 0}, { 5, 70, 59, 8, 4, 0}, { 5, 70, 60, 8, 4, 0}, { 4, 71, 61, 8, 4, 0}, - { 4, 72, 62, 8, 4, 0}, { 4, 72, 63, 8, 4, 0}, { 4, 73, 64, 8, 4, 0}, { 4, 74, 65, 8, 4, 0}, { 4, 74, 66, 8, 4, 0}, - { 4, 75, 67, 8, 4, 0}, { 3, 75, 68, 8, 4, 0}, { 3, 76, 69, 8, 4, 0}, { 3, 76, 70, 8, 4, 0}, { 3, 77, 71, 8, 4, 0}, - { 3, 77, 72, 8, 4, 0}, { 3, 78, 73, 8, 4, 0}, { 3, 79, 74, 8, 4, 0}, { 3, 79, 75, 8, 4, 0}, { 2, 80, 76, 8, 4, 0}, - { 2, 80, 77, 8, 4, 0}, { 2, 81, 78, 8, 4, 0}, { 2, 81, 79, 8, 4, 0}, { 2, 82, 80, 8, 4, 0}, { 2, 82, 81, 8, 4, 0}, - { 2, 82, 82, 8, 4, 0}, { 2, 83, 83, 8, 4, 0}, { 1, 83, 84, 8, 4, 0}, { 1, 84, 86, 8, 4, 0}, { 1, 84, 87, 8, 4, 0}, - { 1, 85, 88, 8, 4, 0}, { 1, 85, 89, 8, 4, 0}, { 1, 85, 90, 8, 4, 0}, { 1, 86, 91, 8, 9, 0}, { 0, 86, 92, 8, 9, 0}, - { 0, 87, 93, 8, 9, 0}, { 0, 87, 94, 8, 9, 0}, { 0, 87, 96, 8, 9, 0}, { 0, 88, 97, 8, 9, 0}, { 0, 88, 98, 8, 9, 0}, - { 0, 88, 99, 8, 9, 0}, { 0, 89, 100, 8, 9, 0}, { -1, 89, 101, 8, 9, 0}, { -1, 89, 102, 8, 9, 0}, { -1, 90, 104, 8, 9, 0}, - { -1, 90, 105, 8, 9, 0}, { -1, 90, 106, 8, 9, 0}, { -1, 90, 107, 8, 9, 0}, { -1, 91, 108, 8, 9, 0}, { -1, 91, 109, 8, 9, 0}, - { -2, 91, 111, 8, 9, 0}, { -2, 91, 112, 8, 9, 0}, { -2, 92, 113, 8, 9, 0}, { -2, 92, 114, 8, 9, 0}, { -2, 92, 115, 8, 9, 0}, - { -2, 92, 117, 8, 9, 0}, { -2, 92, 118, 8, 9, 0}, { -3, 92, 119, 8, 10, 0}, { -3, 92, 120, 8, 10, 0}, { -3, 93, 121, 8, 10, 0}, - { -3, 93, 123, 8, 10, 0}, { -3, 93, 124, 8, 10, 0}, { -3, 93, 125, 8, 10, 0}, { -3, 93, 126, 8, 10, 0}, { -3, 93, 127, 8, 10, 0}, - { -4, 93, 129, 8, 10, 0}, { -4, 93, 130, 8, 10, 0}, { -4, 93, 131, 8, 10, 0}, { -4, 93, 132, 8, 10, 0}, { -4, 93, 134, 8, 10, 0}, - { -4, 92, 135, 8, 10, 0}, { -4, 92, 136, 8, 10, 0}, { -4, 92, 137, 8, 11, 0}, { -5, 92, 138, 8, 11, 0}, { -5, 92, 140, 8, 11, 0}, - { -5, 92, 141, 8, 11, 0}, { -5, 92, 142, 8, 11, 0}, { -5, 91, 143, 8, 11, 0}, { -5, 91, 144, 8, 11, 0}, { -5, 91, 145, 8, 11, 0}, - { -6, 91, 147, 8, 11, 0}, { -6, 90, 148, 8, 11, 0}, { -6, 90, 149, 8, 11, 0}, { -6, 90, 150, 8, 11, 0}, { -6, 90, 151, 8, 11, 0}, - { -6, 89, 152, 8, 11, 0}, { -6, 89, 154, 8, 11, 0}, { -6, 88, 155, 8, 11, 0}, { -7, 88, 156, 8, 12, 0}, { -7, 88, 157, 8, 12, 0}, - { -7, 87, 158, 8, 12, 0}, { -7, 87, 159, 8, 12, 0}, { -7, 86, 160, 8, 12, 0}, { -7, 86, 161, 8, 12, 0}, { -7, 86, 162, 8, 12, 0}, - { -8, 85, 163, 8, 12, 0}, { -8, 85, 165, 8, 12, 0}, { -8, 84, 166, 8, 12, 0}, { -8, 84, 167, 8, 12, 0}, { -8, 83, 168, 8, 12, 0}, - { -8, 82, 169, 8, 12, 0}, { -8, 82, 170, 8, 12, 0}, { -8, 81, 171, 8, 12, 0}, { -9, 81, 172, 8, 12, 0}, { -9, 80, 173, 8, 13, 0}, - { -9, 80, 174, 8, 13, 0}, { -9, 79, 174, 8, 13, 0}, { -9, 78, 175, 8, 13, 0}, { -9, 78, 176, 8, 13, 0}, { -9, 77, 177, 8, 13, 0}, - { -9, 76, 178, 8, 13, 0}, { -10, 76, 179, 8, 13, 0}, { -10, 75, 180, 8, 13, 0}, { -10, 74, 181, 8, 13, 0}, { -10, 73, 182, 8, 13, 0}, - { -10, 73, 182, 8, 13, 0}, { -10, 72, 183, 8, 13, 0}, { -10, 71, 184, 8, 13, 0}, { -11, 71, 185, 8, 13, 0}, { -11, 70, 186, 8, 13, 0}, - { -11, 69, 186, 8, 13, 0}, { -11, 68, 187, 8, 14, 0}, { -11, 67, 188, 8, 14, 0}, { -11, 67, 188, 8, 14, 0}, { -11, 66, 189, 8, 14, 0}, - { -11, 65, 190, 8, 14, 0}, { -12, 64, 190, 8, 14, 0}, { -12, 63, 191, 8, 14, 0}, { -12, 62, 192, 8, 14, 0}, { -12, 62, 192, 8, 14, 0}, - { -12, 61, 193, 8, 14, 0}, { -12, 60, 193, 8, 14, 0}, { -12, 59, 194, 8, 14, 0}, { -12, 58, 195, 8, 14, 0}, { -13, 57, 195, 8, 14, 0}, - { -13, 56, 196, 8, 14, 0}, { -13, 55, 196, 8, 14, 0}, { -13, 54, 196, 8, 15, 0}, { -13, 53, 197, 8, 15, 0}, { -13, 53, 197, 8, 15, 0}, - { -13, 52, 198, 8, 15, 0}, { -14, 51, 198, 8, 15, 0}, { -14, 50, 198, 8, 15, 0}, { -14, 49, 199, 8, 15, 0}, { -14, 48, 199, 8, 15, 0}, - { -14, 47, 199, 8, 15, 0}, { -14, 46, 200, 8, 15, 0}, { -14, 45, 200, 8, 15, 0}, { -14, 44, 200, 8, 15, 0}, { -15, 43, 200, 8, 15, 0}, - { -15, 42, 201, 8, 15, 0}, { -15, 41, 201, 8, 15, 0}, { -15, 40, 201, 8, 15, 0}, { -15, 39, 201, 8, 16, 0}, { -15, 38, 201, 8, 16, 0}, - { -15, 37, 201, 8, 16, 0}, { -15, 36, 202, 8, 16, 0}, { -16, 35, 202, 8, 16, 0}, { -16, 34, 202, 8, 16, 0}, { -16, 33, 202, 8, 16, 0}, + {16, 0, -1, 8, 2, 0}, {16, 1, -1, 8, 2, 0}, {16, 2, 0, 8, 2, 0}, {16, 3, 0, 8, 2, 0}, {15, 4, 1, 8, 2, 0}, + {15, 5, 1, 8, 2, 0}, {15, 6, 2, 8, 2, 0}, {15, 6, 2, 8, 2, 0}, {15, 7, 3, 8, 2, 0}, {15, 8, 3, 8, 2, 0}, + {15, 9, 4, 8, 2, 0}, {15, 10, 4, 8, 2, 0}, {14, 11, 5, 8, 2, 0}, {14, 12, 5, 8, 2, 0}, {14, 13, 6, 8, 2, 0}, + {14, 14, 6, 8, 2, 0}, {14, 14, 7, 8, 2, 0}, {14, 15, 7, 8, 2, 0}, {14, 16, 8, 8, 2, 0}, {14, 17, 9, 8, 2, 0}, + {13, 18, 9, 8, 2, 0}, {13, 19, 10, 8, 2, 0}, {13, 20, 10, 8, 2, 0}, {13, 21, 11, 8, 2, 0}, {13, 21, 11, 8, 2, 0}, + {13, 22, 12, 8, 2, 0}, {13, 23, 13, 8, 2, 0}, {12, 24, 13, 8, 2, 0}, {12, 25, 14, 8, 2, 0}, {12, 26, 14, 8, 2, 0}, + {12, 27, 15, 8, 2, 0}, {12, 28, 16, 8, 2, 0}, {12, 28, 16, 8, 2, 0}, {12, 29, 17, 8, 2, 0}, {12, 30, 17, 8, 3, 0}, + {11, 31, 18, 8, 3, 0}, {11, 32, 19, 8, 3, 0}, {11, 33, 19, 8, 3, 0}, {11, 33, 20, 8, 3, 0}, {11, 34, 21, 8, 3, 0}, + {11, 35, 21, 8, 3, 0}, {11, 36, 22, 8, 3, 0}, {11, 37, 23, 8, 3, 0}, {10, 38, 23, 8, 3, 0}, {10, 38, 24, 8, 3, 0}, + {10, 39, 25, 8, 3, 0}, {10, 40, 25, 8, 3, 0}, {10, 41, 26, 8, 3, 0}, {10, 42, 27, 8, 3, 0}, {10, 43, 28, 8, 3, 0}, + {9, 43, 28, 8, 3, 0}, {9, 44, 29, 8, 3, 0}, {9, 45, 30, 8, 3, 0}, {9, 46, 30, 8, 3, 0}, {9, 46, 31, 8, 3, 0}, + {9, 47, 32, 8, 3, 0}, {9, 48, 33, 8, 3, 0}, {9, 49, 33, 8, 3, 0}, {8, 50, 34, 8, 3, 0}, {8, 50, 35, 8, 3, 0}, + {8, 51, 36, 8, 3, 0}, {8, 52, 37, 8, 3, 0}, {8, 53, 37, 8, 3, 0}, {8, 53, 38, 8, 3, 0}, {8, 54, 39, 8, 3, 0}, + {8, 55, 40, 8, 3, 0}, {7, 56, 41, 8, 3, 0}, {7, 56, 41, 8, 3, 0}, {7, 57, 42, 8, 3, 0}, {7, 58, 43, 8, 3, 0}, + {7, 58, 44, 8, 3, 0}, {7, 59, 45, 8, 3, 0}, {7, 60, 46, 8, 3, 0}, {6, 61, 46, 8, 3, 0}, {6, 61, 47, 8, 3, 0}, + {6, 62, 48, 8, 3, 0}, {6, 63, 49, 8, 3, 0}, {6, 63, 50, 8, 3, 0}, {6, 64, 51, 8, 3, 0}, {6, 65, 52, 8, 3, 0}, + {6, 65, 53, 8, 3, 0}, {5, 66, 53, 8, 3, 0}, {5, 67, 54, 8, 3, 0}, {5, 67, 55, 8, 3, 0}, {5, 68, 56, 8, 4, 0}, + {5, 69, 57, 8, 4, 0}, {5, 69, 58, 8, 4, 0}, {5, 70, 59, 8, 4, 0}, {5, 70, 60, 8, 4, 0}, {4, 71, 61, 8, 4, 0}, + {4, 72, 62, 8, 4, 0}, {4, 72, 63, 8, 4, 0}, {4, 73, 64, 8, 4, 0}, {4, 74, 65, 8, 4, 0}, {4, 74, 66, 8, 4, 0}, + {4, 75, 67, 8, 4, 0}, {3, 75, 68, 8, 4, 0}, {3, 76, 69, 8, 4, 0}, {3, 76, 70, 8, 4, 0}, {3, 77, 71, 8, 4, 0}, + {3, 77, 72, 8, 4, 0}, {3, 78, 73, 8, 4, 0}, {3, 79, 74, 8, 4, 0}, {3, 79, 75, 8, 4, 0}, {2, 80, 76, 8, 4, 0}, + {2, 80, 77, 8, 4, 0}, {2, 81, 78, 8, 4, 0}, {2, 81, 79, 8, 4, 0}, {2, 82, 80, 8, 4, 0}, {2, 82, 81, 8, 4, 0}, + {2, 82, 82, 8, 4, 0}, {2, 83, 83, 8, 4, 0}, {1, 83, 84, 8, 4, 0}, {1, 84, 86, 8, 4, 0}, {1, 84, 87, 8, 4, 0}, + {1, 85, 88, 8, 4, 0}, {1, 85, 89, 8, 4, 0}, {1, 85, 90, 8, 4, 0}, {1, 86, 91, 8, 9, 0}, {0, 86, 92, 8, 9, 0}, + {0, 87, 93, 8, 9, 0}, {0, 87, 94, 8, 9, 0}, {0, 87, 96, 8, 9, 0}, {0, 88, 97, 8, 9, 0}, {0, 88, 98, 8, 9, 0}, + {0, 88, 99, 8, 9, 0}, {0, 89, 100, 8, 9, 0}, {-1, 89, 101, 8, 9, 0}, {-1, 89, 102, 8, 9, 0}, {-1, 90, 104, 8, 9, 0}, + {-1, 90, 105, 8, 9, 0}, {-1, 90, 106, 8, 9, 0}, {-1, 90, 107, 8, 9, 0}, {-1, 91, 108, 8, 9, 0}, {-1, 91, 109, 8, 9, 0}, + {-2, 91, 111, 8, 9, 0}, {-2, 91, 112, 8, 9, 0}, {-2, 92, 113, 8, 9, 0}, {-2, 92, 114, 8, 9, 0}, {-2, 92, 115, 8, 9, 0}, + {-2, 92, 117, 8, 9, 0}, {-2, 92, 118, 8, 9, 0}, {-3, 92, 119, 8, 10, 0}, {-3, 92, 120, 8, 10, 0}, {-3, 93, 121, 8, 10, 0}, + {-3, 93, 123, 8, 10, 0}, {-3, 93, 124, 8, 10, 0}, {-3, 93, 125, 8, 10, 0}, {-3, 93, 126, 8, 10, 0}, {-3, 93, 127, 8, 10, 0}, + {-4, 93, 129, 8, 10, 0}, {-4, 93, 130, 8, 10, 0}, {-4, 93, 131, 8, 10, 0}, {-4, 93, 132, 8, 10, 0}, {-4, 93, 134, 8, 10, 0}, + {-4, 92, 135, 8, 10, 0}, {-4, 92, 136, 8, 10, 0}, {-4, 92, 137, 8, 11, 0}, {-5, 92, 138, 8, 11, 0}, {-5, 92, 140, 8, 11, 0}, + {-5, 92, 141, 8, 11, 0}, {-5, 92, 142, 8, 11, 0}, {-5, 91, 143, 8, 11, 0}, {-5, 91, 144, 8, 11, 0}, {-5, 91, 145, 8, 11, 0}, + {-6, 91, 147, 8, 11, 0}, {-6, 90, 148, 8, 11, 0}, {-6, 90, 149, 8, 11, 0}, {-6, 90, 150, 8, 11, 0}, {-6, 90, 151, 8, 11, 0}, + {-6, 89, 152, 8, 11, 0}, {-6, 89, 154, 8, 11, 0}, {-6, 88, 155, 8, 11, 0}, {-7, 88, 156, 8, 12, 0}, {-7, 88, 157, 8, 12, 0}, + {-7, 87, 158, 8, 12, 0}, {-7, 87, 159, 8, 12, 0}, {-7, 86, 160, 8, 12, 0}, {-7, 86, 161, 8, 12, 0}, {-7, 86, 162, 8, 12, 0}, + {-8, 85, 163, 8, 12, 0}, {-8, 85, 165, 8, 12, 0}, {-8, 84, 166, 8, 12, 0}, {-8, 84, 167, 8, 12, 0}, {-8, 83, 168, 8, 12, 0}, + {-8, 82, 169, 8, 12, 0}, {-8, 82, 170, 8, 12, 0}, {-8, 81, 171, 8, 12, 0}, {-9, 81, 172, 8, 12, 0}, {-9, 80, 173, 8, 13, 0}, + {-9, 80, 174, 8, 13, 0}, {-9, 79, 174, 8, 13, 0}, {-9, 78, 175, 8, 13, 0}, {-9, 78, 176, 8, 13, 0}, {-9, 77, 177, 8, 13, 0}, + {-9, 76, 178, 8, 13, 0}, {-10, 76, 179, 8, 13, 0}, {-10, 75, 180, 8, 13, 0}, {-10, 74, 181, 8, 13, 0}, {-10, 73, 182, 8, 13, 0}, + {-10, 73, 182, 8, 13, 0}, {-10, 72, 183, 8, 13, 0}, {-10, 71, 184, 8, 13, 0}, {-11, 71, 185, 8, 13, 0}, {-11, 70, 186, 8, 13, 0}, + {-11, 69, 186, 8, 13, 0}, {-11, 68, 187, 8, 14, 0}, {-11, 67, 188, 8, 14, 0}, {-11, 67, 188, 8, 14, 0}, {-11, 66, 189, 8, 14, 0}, + {-11, 65, 190, 8, 14, 0}, {-12, 64, 190, 8, 14, 0}, {-12, 63, 191, 8, 14, 0}, {-12, 62, 192, 8, 14, 0}, {-12, 62, 192, 8, 14, 0}, + {-12, 61, 193, 8, 14, 0}, {-12, 60, 193, 8, 14, 0}, {-12, 59, 194, 8, 14, 0}, {-12, 58, 195, 8, 14, 0}, {-13, 57, 195, 8, 14, 0}, + {-13, 56, 196, 8, 14, 0}, {-13, 55, 196, 8, 14, 0}, {-13, 54, 196, 8, 15, 0}, {-13, 53, 197, 8, 15, 0}, {-13, 53, 197, 8, 15, 0}, + {-13, 52, 198, 8, 15, 0}, {-14, 51, 198, 8, 15, 0}, {-14, 50, 198, 8, 15, 0}, {-14, 49, 199, 8, 15, 0}, {-14, 48, 199, 8, 15, 0}, + {-14, 47, 199, 8, 15, 0}, {-14, 46, 200, 8, 15, 0}, {-14, 45, 200, 8, 15, 0}, {-14, 44, 200, 8, 15, 0}, {-15, 43, 200, 8, 15, 0}, + {-15, 42, 201, 8, 15, 0}, {-15, 41, 201, 8, 15, 0}, {-15, 40, 201, 8, 15, 0}, {-15, 39, 201, 8, 16, 0}, {-15, 38, 201, 8, 16, 0}, + {-15, 37, 201, 8, 16, 0}, {-15, 36, 202, 8, 16, 0}, {-16, 35, 202, 8, 16, 0}, {-16, 34, 202, 8, 16, 0}, {-16, 33, 202, 8, 16, 0}, }) CREATE_VEHICLE_INFO(TrackVehicleInfoLeftMediumHalfLoopUp2, { - { 0, 16, -1, 16, 2, 0}, { 1, 16, -1, 16, 2, 0}, { 2, 16, 0, 16, 2, 0}, { 3, 16, 0, 16, 2, 0}, { 4, 17, 1, 16, 2, 0}, - { 5, 17, 1, 16, 2, 0}, { 6, 17, 2, 16, 2, 0}, { 6, 17, 2, 16, 2, 0}, { 7, 17, 3, 16, 2, 0}, { 8, 17, 3, 16, 2, 0}, - { 9, 17, 4, 16, 2, 0}, { 10, 17, 4, 16, 2, 0}, { 11, 18, 5, 16, 2, 0}, { 12, 18, 5, 16, 2, 0}, { 13, 18, 6, 16, 2, 0}, - { 14, 18, 6, 16, 2, 0}, { 14, 18, 7, 16, 2, 0}, { 15, 18, 7, 16, 2, 0}, { 16, 18, 8, 16, 2, 0}, { 17, 18, 9, 16, 2, 0}, - { 18, 19, 9, 16, 2, 0}, { 19, 19, 10, 16, 2, 0}, { 20, 19, 10, 16, 2, 0}, { 21, 19, 11, 16, 2, 0}, { 21, 19, 11, 16, 2, 0}, - { 22, 19, 12, 16, 2, 0}, { 23, 19, 13, 16, 2, 0}, { 24, 20, 13, 16, 2, 0}, { 25, 20, 14, 16, 2, 0}, { 26, 20, 14, 16, 2, 0}, - { 27, 20, 15, 16, 2, 0}, { 28, 20, 16, 16, 2, 0}, { 28, 20, 16, 16, 2, 0}, { 29, 20, 17, 16, 2, 0}, { 30, 20, 17, 16, 3, 0}, - { 31, 21, 18, 16, 3, 0}, { 32, 21, 19, 16, 3, 0}, { 33, 21, 19, 16, 3, 0}, { 33, 21, 20, 16, 3, 0}, { 34, 21, 21, 16, 3, 0}, - { 35, 21, 21, 16, 3, 0}, { 36, 21, 22, 16, 3, 0}, { 37, 21, 23, 16, 3, 0}, { 38, 22, 23, 16, 3, 0}, { 38, 22, 24, 16, 3, 0}, - { 39, 22, 25, 16, 3, 0}, { 40, 22, 25, 16, 3, 0}, { 41, 22, 26, 16, 3, 0}, { 42, 22, 27, 16, 3, 0}, { 43, 22, 28, 16, 3, 0}, - { 43, 23, 28, 16, 3, 0}, { 44, 23, 29, 16, 3, 0}, { 45, 23, 30, 16, 3, 0}, { 46, 23, 30, 16, 3, 0}, { 46, 23, 31, 16, 3, 0}, - { 47, 23, 32, 16, 3, 0}, { 48, 23, 33, 16, 3, 0}, { 49, 23, 33, 16, 3, 0}, { 50, 24, 34, 16, 3, 0}, { 50, 24, 35, 16, 3, 0}, - { 51, 24, 36, 16, 3, 0}, { 52, 24, 37, 16, 3, 0}, { 53, 24, 37, 16, 3, 0}, { 53, 24, 38, 16, 3, 0}, { 54, 24, 39, 16, 3, 0}, - { 55, 24, 40, 16, 3, 0}, { 56, 25, 41, 16, 3, 0}, { 56, 25, 41, 16, 3, 0}, { 57, 25, 42, 16, 3, 0}, { 58, 25, 43, 16, 3, 0}, - { 58, 25, 44, 16, 3, 0}, { 59, 25, 45, 16, 3, 0}, { 60, 25, 46, 16, 3, 0}, { 61, 26, 46, 16, 3, 0}, { 61, 26, 47, 16, 3, 0}, - { 62, 26, 48, 16, 3, 0}, { 63, 26, 49, 16, 3, 0}, { 63, 26, 50, 16, 3, 0}, { 64, 26, 51, 16, 3, 0}, { 65, 26, 52, 16, 3, 0}, - { 65, 26, 53, 16, 3, 0}, { 66, 27, 53, 16, 3, 0}, { 67, 27, 54, 16, 3, 0}, { 67, 27, 55, 16, 3, 0}, { 68, 27, 56, 16, 4, 0}, - { 69, 27, 57, 16, 4, 0}, { 69, 27, 58, 16, 4, 0}, { 70, 27, 59, 16, 4, 0}, { 70, 27, 60, 16, 4, 0}, { 71, 28, 61, 16, 4, 0}, - { 72, 28, 62, 16, 4, 0}, { 72, 28, 63, 16, 4, 0}, { 73, 28, 64, 16, 4, 0}, { 74, 28, 65, 16, 4, 0}, { 74, 28, 66, 16, 4, 0}, - { 75, 28, 67, 16, 4, 0}, { 75, 29, 68, 16, 4, 0}, { 76, 29, 69, 16, 4, 0}, { 76, 29, 70, 16, 4, 0}, { 77, 29, 71, 16, 4, 0}, - { 77, 29, 72, 16, 4, 0}, { 78, 29, 73, 16, 4, 0}, { 79, 29, 74, 16, 4, 0}, { 79, 29, 75, 16, 4, 0}, { 80, 30, 76, 16, 4, 0}, - { 80, 30, 77, 16, 4, 0}, { 81, 30, 78, 16, 4, 0}, { 81, 30, 79, 16, 4, 0}, { 82, 30, 80, 16, 4, 0}, { 82, 30, 81, 16, 4, 0}, - { 82, 30, 82, 16, 4, 0}, { 83, 30, 83, 16, 4, 0}, { 83, 31, 84, 16, 4, 0}, { 84, 31, 86, 16, 4, 0}, { 84, 31, 87, 16, 4, 0}, - { 85, 31, 88, 16, 4, 0}, { 85, 31, 89, 16, 4, 0}, { 85, 31, 90, 16, 4, 0}, { 86, 31, 91, 16, 9, 0}, { 86, 32, 92, 16, 9, 0}, - { 87, 32, 93, 16, 9, 0}, { 87, 32, 94, 16, 9, 0}, { 87, 32, 96, 16, 9, 0}, { 88, 32, 97, 16, 9, 0}, { 88, 32, 98, 16, 9, 0}, - { 88, 32, 99, 16, 9, 0}, { 89, 32, 100, 16, 9, 0}, { 89, 33, 101, 16, 9, 0}, { 89, 33, 102, 16, 9, 0}, { 90, 33, 104, 16, 9, 0}, - { 90, 33, 105, 16, 9, 0}, { 90, 33, 106, 16, 9, 0}, { 90, 33, 107, 16, 9, 0}, { 91, 33, 108, 16, 9, 0}, { 91, 33, 109, 16, 9, 0}, - { 91, 34, 111, 16, 9, 0}, { 91, 34, 112, 16, 9, 0}, { 92, 34, 113, 16, 9, 0}, { 92, 34, 114, 16, 9, 0}, { 92, 34, 115, 16, 9, 0}, - { 92, 34, 117, 16, 9, 0}, { 92, 34, 118, 16, 9, 0}, { 92, 35, 119, 16, 10, 0}, { 92, 35, 120, 16, 10, 0}, { 93, 35, 121, 16, 10, 0}, - { 93, 35, 123, 16, 10, 0}, { 93, 35, 124, 16, 10, 0}, { 93, 35, 125, 16, 10, 0}, { 93, 35, 126, 16, 10, 0}, { 93, 35, 127, 16, 10, 0}, - { 93, 36, 129, 16, 10, 0}, { 93, 36, 130, 16, 10, 0}, { 93, 36, 131, 16, 10, 0}, { 93, 36, 132, 16, 10, 0}, { 93, 36, 134, 16, 10, 0}, - { 92, 36, 135, 16, 10, 0}, { 92, 36, 136, 16, 10, 0}, { 92, 36, 137, 16, 11, 0}, { 92, 37, 138, 16, 11, 0}, { 92, 37, 140, 16, 11, 0}, - { 92, 37, 141, 16, 11, 0}, { 92, 37, 142, 16, 11, 0}, { 91, 37, 143, 16, 11, 0}, { 91, 37, 144, 16, 11, 0}, { 91, 37, 145, 16, 11, 0}, - { 91, 38, 147, 16, 11, 0}, { 90, 38, 148, 16, 11, 0}, { 90, 38, 149, 16, 11, 0}, { 90, 38, 150, 16, 11, 0}, { 90, 38, 151, 16, 11, 0}, - { 89, 38, 152, 16, 11, 0}, { 89, 38, 154, 16, 11, 0}, { 88, 38, 155, 16, 11, 0}, { 88, 39, 156, 16, 12, 0}, { 88, 39, 157, 16, 12, 0}, - { 87, 39, 158, 16, 12, 0}, { 87, 39, 159, 16, 12, 0}, { 86, 39, 160, 16, 12, 0}, { 86, 39, 161, 16, 12, 0}, { 86, 39, 162, 16, 12, 0}, - { 85, 40, 163, 16, 12, 0}, { 85, 40, 165, 16, 12, 0}, { 84, 40, 166, 16, 12, 0}, { 84, 40, 167, 16, 12, 0}, { 83, 40, 168, 16, 12, 0}, - { 82, 40, 169, 16, 12, 0}, { 82, 40, 170, 16, 12, 0}, { 81, 40, 171, 16, 12, 0}, { 81, 41, 172, 16, 12, 0}, { 80, 41, 173, 16, 13, 0}, - { 80, 41, 174, 16, 13, 0}, { 79, 41, 174, 16, 13, 0}, { 78, 41, 175, 16, 13, 0}, { 78, 41, 176, 16, 13, 0}, { 77, 41, 177, 16, 13, 0}, - { 76, 41, 178, 16, 13, 0}, { 76, 42, 179, 16, 13, 0}, { 75, 42, 180, 16, 13, 0}, { 74, 42, 181, 16, 13, 0}, { 73, 42, 182, 16, 13, 0}, - { 73, 42, 182, 16, 13, 0}, { 72, 42, 183, 16, 13, 0}, { 71, 42, 184, 16, 13, 0}, { 71, 43, 185, 16, 13, 0}, { 70, 43, 186, 16, 13, 0}, - { 69, 43, 186, 16, 13, 0}, { 68, 43, 187, 16, 14, 0}, { 67, 43, 188, 16, 14, 0}, { 67, 43, 188, 16, 14, 0}, { 66, 43, 189, 16, 14, 0}, - { 65, 43, 190, 16, 14, 0}, { 64, 44, 190, 16, 14, 0}, { 63, 44, 191, 16, 14, 0}, { 62, 44, 192, 16, 14, 0}, { 62, 44, 192, 16, 14, 0}, - { 61, 44, 193, 16, 14, 0}, { 60, 44, 193, 16, 14, 0}, { 59, 44, 194, 16, 14, 0}, { 58, 44, 195, 16, 14, 0}, { 57, 45, 195, 16, 14, 0}, - { 56, 45, 196, 16, 14, 0}, { 55, 45, 196, 16, 14, 0}, { 54, 45, 196, 16, 15, 0}, { 53, 45, 197, 16, 15, 0}, { 53, 45, 197, 16, 15, 0}, - { 52, 45, 198, 16, 15, 0}, { 51, 46, 198, 16, 15, 0}, { 50, 46, 198, 16, 15, 0}, { 49, 46, 199, 16, 15, 0}, { 48, 46, 199, 16, 15, 0}, - { 47, 46, 199, 16, 15, 0}, { 46, 46, 200, 16, 15, 0}, { 45, 46, 200, 16, 15, 0}, { 44, 46, 200, 16, 15, 0}, { 43, 47, 200, 16, 15, 0}, - { 42, 47, 201, 16, 15, 0}, { 41, 47, 201, 16, 15, 0}, { 40, 47, 201, 16, 15, 0}, { 39, 47, 201, 16, 16, 0}, { 38, 47, 201, 16, 16, 0}, - { 37, 47, 201, 16, 16, 0}, { 36, 47, 202, 16, 16, 0}, { 35, 48, 202, 16, 16, 0}, { 34, 48, 202, 16, 16, 0}, { 33, 48, 202, 16, 16, 0}, + {0, 16, -1, 16, 2, 0}, {1, 16, -1, 16, 2, 0}, {2, 16, 0, 16, 2, 0}, {3, 16, 0, 16, 2, 0}, {4, 17, 1, 16, 2, 0}, + {5, 17, 1, 16, 2, 0}, {6, 17, 2, 16, 2, 0}, {6, 17, 2, 16, 2, 0}, {7, 17, 3, 16, 2, 0}, {8, 17, 3, 16, 2, 0}, + {9, 17, 4, 16, 2, 0}, {10, 17, 4, 16, 2, 0}, {11, 18, 5, 16, 2, 0}, {12, 18, 5, 16, 2, 0}, {13, 18, 6, 16, 2, 0}, + {14, 18, 6, 16, 2, 0}, {14, 18, 7, 16, 2, 0}, {15, 18, 7, 16, 2, 0}, {16, 18, 8, 16, 2, 0}, {17, 18, 9, 16, 2, 0}, + {18, 19, 9, 16, 2, 0}, {19, 19, 10, 16, 2, 0}, {20, 19, 10, 16, 2, 0}, {21, 19, 11, 16, 2, 0}, {21, 19, 11, 16, 2, 0}, + {22, 19, 12, 16, 2, 0}, {23, 19, 13, 16, 2, 0}, {24, 20, 13, 16, 2, 0}, {25, 20, 14, 16, 2, 0}, {26, 20, 14, 16, 2, 0}, + {27, 20, 15, 16, 2, 0}, {28, 20, 16, 16, 2, 0}, {28, 20, 16, 16, 2, 0}, {29, 20, 17, 16, 2, 0}, {30, 20, 17, 16, 3, 0}, + {31, 21, 18, 16, 3, 0}, {32, 21, 19, 16, 3, 0}, {33, 21, 19, 16, 3, 0}, {33, 21, 20, 16, 3, 0}, {34, 21, 21, 16, 3, 0}, + {35, 21, 21, 16, 3, 0}, {36, 21, 22, 16, 3, 0}, {37, 21, 23, 16, 3, 0}, {38, 22, 23, 16, 3, 0}, {38, 22, 24, 16, 3, 0}, + {39, 22, 25, 16, 3, 0}, {40, 22, 25, 16, 3, 0}, {41, 22, 26, 16, 3, 0}, {42, 22, 27, 16, 3, 0}, {43, 22, 28, 16, 3, 0}, + {43, 23, 28, 16, 3, 0}, {44, 23, 29, 16, 3, 0}, {45, 23, 30, 16, 3, 0}, {46, 23, 30, 16, 3, 0}, {46, 23, 31, 16, 3, 0}, + {47, 23, 32, 16, 3, 0}, {48, 23, 33, 16, 3, 0}, {49, 23, 33, 16, 3, 0}, {50, 24, 34, 16, 3, 0}, {50, 24, 35, 16, 3, 0}, + {51, 24, 36, 16, 3, 0}, {52, 24, 37, 16, 3, 0}, {53, 24, 37, 16, 3, 0}, {53, 24, 38, 16, 3, 0}, {54, 24, 39, 16, 3, 0}, + {55, 24, 40, 16, 3, 0}, {56, 25, 41, 16, 3, 0}, {56, 25, 41, 16, 3, 0}, {57, 25, 42, 16, 3, 0}, {58, 25, 43, 16, 3, 0}, + {58, 25, 44, 16, 3, 0}, {59, 25, 45, 16, 3, 0}, {60, 25, 46, 16, 3, 0}, {61, 26, 46, 16, 3, 0}, {61, 26, 47, 16, 3, 0}, + {62, 26, 48, 16, 3, 0}, {63, 26, 49, 16, 3, 0}, {63, 26, 50, 16, 3, 0}, {64, 26, 51, 16, 3, 0}, {65, 26, 52, 16, 3, 0}, + {65, 26, 53, 16, 3, 0}, {66, 27, 53, 16, 3, 0}, {67, 27, 54, 16, 3, 0}, {67, 27, 55, 16, 3, 0}, {68, 27, 56, 16, 4, 0}, + {69, 27, 57, 16, 4, 0}, {69, 27, 58, 16, 4, 0}, {70, 27, 59, 16, 4, 0}, {70, 27, 60, 16, 4, 0}, {71, 28, 61, 16, 4, 0}, + {72, 28, 62, 16, 4, 0}, {72, 28, 63, 16, 4, 0}, {73, 28, 64, 16, 4, 0}, {74, 28, 65, 16, 4, 0}, {74, 28, 66, 16, 4, 0}, + {75, 28, 67, 16, 4, 0}, {75, 29, 68, 16, 4, 0}, {76, 29, 69, 16, 4, 0}, {76, 29, 70, 16, 4, 0}, {77, 29, 71, 16, 4, 0}, + {77, 29, 72, 16, 4, 0}, {78, 29, 73, 16, 4, 0}, {79, 29, 74, 16, 4, 0}, {79, 29, 75, 16, 4, 0}, {80, 30, 76, 16, 4, 0}, + {80, 30, 77, 16, 4, 0}, {81, 30, 78, 16, 4, 0}, {81, 30, 79, 16, 4, 0}, {82, 30, 80, 16, 4, 0}, {82, 30, 81, 16, 4, 0}, + {82, 30, 82, 16, 4, 0}, {83, 30, 83, 16, 4, 0}, {83, 31, 84, 16, 4, 0}, {84, 31, 86, 16, 4, 0}, {84, 31, 87, 16, 4, 0}, + {85, 31, 88, 16, 4, 0}, {85, 31, 89, 16, 4, 0}, {85, 31, 90, 16, 4, 0}, {86, 31, 91, 16, 9, 0}, {86, 32, 92, 16, 9, 0}, + {87, 32, 93, 16, 9, 0}, {87, 32, 94, 16, 9, 0}, {87, 32, 96, 16, 9, 0}, {88, 32, 97, 16, 9, 0}, {88, 32, 98, 16, 9, 0}, + {88, 32, 99, 16, 9, 0}, {89, 32, 100, 16, 9, 0}, {89, 33, 101, 16, 9, 0}, {89, 33, 102, 16, 9, 0}, {90, 33, 104, 16, 9, 0}, + {90, 33, 105, 16, 9, 0}, {90, 33, 106, 16, 9, 0}, {90, 33, 107, 16, 9, 0}, {91, 33, 108, 16, 9, 0}, {91, 33, 109, 16, 9, 0}, + {91, 34, 111, 16, 9, 0}, {91, 34, 112, 16, 9, 0}, {92, 34, 113, 16, 9, 0}, {92, 34, 114, 16, 9, 0}, {92, 34, 115, 16, 9, 0}, + {92, 34, 117, 16, 9, 0}, {92, 34, 118, 16, 9, 0}, {92, 35, 119, 16, 10, 0}, {92, 35, 120, 16, 10, 0}, {93, 35, 121, 16, 10, 0}, + {93, 35, 123, 16, 10, 0}, {93, 35, 124, 16, 10, 0}, {93, 35, 125, 16, 10, 0}, {93, 35, 126, 16, 10, 0}, {93, 35, 127, 16, 10, 0}, + {93, 36, 129, 16, 10, 0}, {93, 36, 130, 16, 10, 0}, {93, 36, 131, 16, 10, 0}, {93, 36, 132, 16, 10, 0}, {93, 36, 134, 16, 10, 0}, + {92, 36, 135, 16, 10, 0}, {92, 36, 136, 16, 10, 0}, {92, 36, 137, 16, 11, 0}, {92, 37, 138, 16, 11, 0}, {92, 37, 140, 16, 11, 0}, + {92, 37, 141, 16, 11, 0}, {92, 37, 142, 16, 11, 0}, {91, 37, 143, 16, 11, 0}, {91, 37, 144, 16, 11, 0}, {91, 37, 145, 16, 11, 0}, + {91, 38, 147, 16, 11, 0}, {90, 38, 148, 16, 11, 0}, {90, 38, 149, 16, 11, 0}, {90, 38, 150, 16, 11, 0}, {90, 38, 151, 16, 11, 0}, + {89, 38, 152, 16, 11, 0}, {89, 38, 154, 16, 11, 0}, {88, 38, 155, 16, 11, 0}, {88, 39, 156, 16, 12, 0}, {88, 39, 157, 16, 12, 0}, + {87, 39, 158, 16, 12, 0}, {87, 39, 159, 16, 12, 0}, {86, 39, 160, 16, 12, 0}, {86, 39, 161, 16, 12, 0}, {86, 39, 162, 16, 12, 0}, + {85, 40, 163, 16, 12, 0}, {85, 40, 165, 16, 12, 0}, {84, 40, 166, 16, 12, 0}, {84, 40, 167, 16, 12, 0}, {83, 40, 168, 16, 12, 0}, + {82, 40, 169, 16, 12, 0}, {82, 40, 170, 16, 12, 0}, {81, 40, 171, 16, 12, 0}, {81, 41, 172, 16, 12, 0}, {80, 41, 173, 16, 13, 0}, + {80, 41, 174, 16, 13, 0}, {79, 41, 174, 16, 13, 0}, {78, 41, 175, 16, 13, 0}, {78, 41, 176, 16, 13, 0}, {77, 41, 177, 16, 13, 0}, + {76, 41, 178, 16, 13, 0}, {76, 42, 179, 16, 13, 0}, {75, 42, 180, 16, 13, 0}, {74, 42, 181, 16, 13, 0}, {73, 42, 182, 16, 13, 0}, + {73, 42, 182, 16, 13, 0}, {72, 42, 183, 16, 13, 0}, {71, 42, 184, 16, 13, 0}, {71, 43, 185, 16, 13, 0}, {70, 43, 186, 16, 13, 0}, + {69, 43, 186, 16, 13, 0}, {68, 43, 187, 16, 14, 0}, {67, 43, 188, 16, 14, 0}, {67, 43, 188, 16, 14, 0}, {66, 43, 189, 16, 14, 0}, + {65, 43, 190, 16, 14, 0}, {64, 44, 190, 16, 14, 0}, {63, 44, 191, 16, 14, 0}, {62, 44, 192, 16, 14, 0}, {62, 44, 192, 16, 14, 0}, + {61, 44, 193, 16, 14, 0}, {60, 44, 193, 16, 14, 0}, {59, 44, 194, 16, 14, 0}, {58, 44, 195, 16, 14, 0}, {57, 45, 195, 16, 14, 0}, + {56, 45, 196, 16, 14, 0}, {55, 45, 196, 16, 14, 0}, {54, 45, 196, 16, 15, 0}, {53, 45, 197, 16, 15, 0}, {53, 45, 197, 16, 15, 0}, + {52, 45, 198, 16, 15, 0}, {51, 46, 198, 16, 15, 0}, {50, 46, 198, 16, 15, 0}, {49, 46, 199, 16, 15, 0}, {48, 46, 199, 16, 15, 0}, + {47, 46, 199, 16, 15, 0}, {46, 46, 200, 16, 15, 0}, {45, 46, 200, 16, 15, 0}, {44, 46, 200, 16, 15, 0}, {43, 47, 200, 16, 15, 0}, + {42, 47, 201, 16, 15, 0}, {41, 47, 201, 16, 15, 0}, {40, 47, 201, 16, 15, 0}, {39, 47, 201, 16, 16, 0}, {38, 47, 201, 16, 16, 0}, + {37, 47, 201, 16, 16, 0}, {36, 47, 202, 16, 16, 0}, {35, 48, 202, 16, 16, 0}, {34, 48, 202, 16, 16, 0}, {33, 48, 202, 16, 16, 0}, }) CREATE_VEHICLE_INFO(TrackVehicleInfoLeftMediumHalfLoopUp3, { - { 16, 31, -1, 24, 2, 0}, { 16, 30, 0, 24, 2, 0}, { 16, 29, 0, 24, 2, 0}, { 17, 28, 1, 24, 2, 0}, { 17, 27, 1, 24, 2, 0}, - { 17, 26, 2, 24, 2, 0}, { 17, 26, 2, 24, 2, 0}, { 17, 25, 3, 24, 2, 0}, { 17, 24, 3, 24, 2, 0}, { 17, 23, 4, 24, 2, 0}, - { 17, 22, 4, 24, 2, 0}, { 18, 21, 5, 24, 2, 0}, { 18, 20, 5, 24, 2, 0}, { 18, 19, 6, 24, 2, 0}, { 18, 18, 6, 24, 2, 0}, - { 18, 18, 7, 24, 2, 0}, { 18, 17, 7, 24, 2, 0}, { 18, 16, 8, 24, 2, 0}, { 18, 15, 9, 24, 2, 0}, { 19, 14, 9, 24, 2, 0}, - { 19, 13, 10, 24, 2, 0}, { 19, 12, 10, 24, 2, 0}, { 19, 11, 11, 24, 2, 0}, { 19, 11, 11, 24, 2, 0}, { 19, 10, 12, 24, 2, 0}, - { 19, 9, 13, 24, 2, 0}, { 20, 8, 13, 24, 2, 0}, { 20, 7, 14, 24, 2, 0}, { 20, 6, 14, 24, 2, 0}, { 20, 5, 15, 24, 2, 0}, - { 20, 4, 16, 24, 2, 0}, { 20, 4, 16, 24, 2, 0}, { 20, 3, 17, 24, 2, 0}, { 20, 2, 17, 24, 3, 0}, { 21, 1, 18, 24, 3, 0}, - { 21, 0, 19, 24, 3, 0}, { 21, -1, 19, 24, 3, 0}, { 21, -1, 20, 24, 3, 0}, { 21, -2, 21, 24, 3, 0}, { 21, -3, 21, 24, 3, 0}, - { 21, -4, 22, 24, 3, 0}, { 21, -5, 23, 24, 3, 0}, { 22, -6, 23, 24, 3, 0}, { 22, -6, 24, 24, 3, 0}, { 22, -7, 25, 24, 3, 0}, - { 22, -8, 25, 24, 3, 0}, { 22, -9, 26, 24, 3, 0}, { 22, -10, 27, 24, 3, 0}, { 22, -11, 28, 24, 3, 0}, { 23, -11, 28, 24, 3, 0}, - { 23, -12, 29, 24, 3, 0}, { 23, -13, 30, 24, 3, 0}, { 23, -14, 30, 24, 3, 0}, { 23, -14, 31, 24, 3, 0}, { 23, -15, 32, 24, 3, 0}, - { 23, -16, 33, 24, 3, 0}, { 23, -17, 33, 24, 3, 0}, { 24, -18, 34, 24, 3, 0}, { 24, -18, 35, 24, 3, 0}, { 24, -19, 36, 24, 3, 0}, - { 24, -20, 37, 24, 3, 0}, { 24, -21, 37, 24, 3, 0}, { 24, -21, 38, 24, 3, 0}, { 24, -22, 39, 24, 3, 0}, { 24, -23, 40, 24, 3, 0}, - { 25, -24, 41, 24, 3, 0}, { 25, -24, 41, 24, 3, 0}, { 25, -25, 42, 24, 3, 0}, { 25, -26, 43, 24, 3, 0}, { 25, -26, 44, 24, 3, 0}, - { 25, -27, 45, 24, 3, 0}, { 25, -28, 46, 24, 3, 0}, { 26, -29, 46, 24, 3, 0}, { 26, -29, 47, 24, 3, 0}, { 26, -30, 48, 24, 3, 0}, - { 26, -31, 49, 24, 3, 0}, { 26, -31, 50, 24, 3, 0}, { 26, -32, 51, 24, 3, 0}, { 26, -33, 52, 24, 3, 0}, { 26, -33, 53, 24, 3, 0}, - { 27, -34, 53, 24, 3, 0}, { 27, -35, 54, 24, 3, 0}, { 27, -35, 55, 24, 3, 0}, { 27, -36, 56, 24, 4, 0}, { 27, -37, 57, 24, 4, 0}, - { 27, -37, 58, 24, 4, 0}, { 27, -38, 59, 24, 4, 0}, { 27, -38, 60, 24, 4, 0}, { 28, -39, 61, 24, 4, 0}, { 28, -40, 62, 24, 4, 0}, - { 28, -40, 63, 24, 4, 0}, { 28, -41, 64, 24, 4, 0}, { 28, -42, 65, 24, 4, 0}, { 28, -42, 66, 24, 4, 0}, { 28, -43, 67, 24, 4, 0}, - { 29, -43, 68, 24, 4, 0}, { 29, -44, 69, 24, 4, 0}, { 29, -44, 70, 24, 4, 0}, { 29, -45, 71, 24, 4, 0}, { 29, -45, 72, 24, 4, 0}, - { 29, -46, 73, 24, 4, 0}, { 29, -47, 74, 24, 4, 0}, { 29, -47, 75, 24, 4, 0}, { 30, -48, 76, 24, 4, 0}, { 30, -48, 77, 24, 4, 0}, - { 30, -49, 78, 24, 4, 0}, { 30, -49, 79, 24, 4, 0}, { 30, -50, 80, 24, 4, 0}, { 30, -50, 81, 24, 4, 0}, { 30, -50, 82, 24, 4, 0}, - { 30, -51, 83, 24, 4, 0}, { 31, -51, 84, 24, 4, 0}, { 31, -52, 86, 24, 4, 0}, { 31, -52, 87, 24, 4, 0}, { 31, -53, 88, 24, 4, 0}, - { 31, -53, 89, 24, 4, 0}, { 31, -53, 90, 24, 4, 0}, { 31, -54, 91, 24, 9, 0}, { 32, -54, 92, 24, 9, 0}, { 32, -55, 93, 24, 9, 0}, - { 32, -55, 94, 24, 9, 0}, { 32, -55, 96, 24, 9, 0}, { 32, -56, 97, 24, 9, 0}, { 32, -56, 98, 24, 9, 0}, { 32, -56, 99, 24, 9, 0}, - { 32, -57, 100, 24, 9, 0}, { 33, -57, 101, 24, 9, 0}, { 33, -57, 102, 24, 9, 0}, { 33, -58, 104, 24, 9, 0}, { 33, -58, 105, 24, 9, 0}, - { 33, -58, 106, 24, 9, 0}, { 33, -58, 107, 24, 9, 0}, { 33, -59, 108, 24, 9, 0}, { 33, -59, 109, 24, 9, 0}, { 34, -59, 111, 24, 9, 0}, - { 34, -59, 112, 24, 9, 0}, { 34, -60, 113, 24, 9, 0}, { 34, -60, 114, 24, 9, 0}, { 34, -60, 115, 24, 9, 0}, { 34, -60, 117, 24, 9, 0}, - { 34, -60, 118, 24, 9, 0}, { 35, -60, 119, 24, 10, 0}, { 35, -60, 120, 24, 10, 0}, { 35, -61, 121, 24, 10, 0}, { 35, -61, 123, 24, 10, 0}, - { 35, -61, 124, 24, 10, 0}, { 35, -61, 125, 24, 10, 0}, { 35, -61, 126, 24, 10, 0}, { 35, -61, 127, 24, 10, 0}, { 36, -61, 129, 24, 10, 0}, - { 36, -61, 130, 24, 10, 0}, { 36, -61, 131, 24, 10, 0}, { 36, -61, 132, 24, 10, 0}, { 36, -61, 134, 24, 10, 0}, { 36, -60, 135, 24, 10, 0}, - { 36, -60, 136, 24, 10, 0}, { 36, -60, 137, 24, 11, 0}, { 37, -60, 138, 24, 11, 0}, { 37, -60, 140, 24, 11, 0}, { 37, -60, 141, 24, 11, 0}, - { 37, -60, 142, 24, 11, 0}, { 37, -59, 143, 24, 11, 0}, { 37, -59, 144, 24, 11, 0}, { 37, -59, 145, 24, 11, 0}, { 38, -59, 147, 24, 11, 0}, - { 38, -58, 148, 24, 11, 0}, { 38, -58, 149, 24, 11, 0}, { 38, -58, 150, 24, 11, 0}, { 38, -58, 151, 24, 11, 0}, { 38, -57, 152, 24, 11, 0}, - { 38, -57, 154, 24, 11, 0}, { 38, -56, 155, 24, 11, 0}, { 39, -56, 156, 24, 12, 0}, { 39, -56, 157, 24, 12, 0}, { 39, -55, 158, 24, 12, 0}, - { 39, -55, 159, 24, 12, 0}, { 39, -54, 160, 24, 12, 0}, { 39, -54, 161, 24, 12, 0}, { 39, -54, 162, 24, 12, 0}, { 40, -53, 163, 24, 12, 0}, - { 40, -53, 165, 24, 12, 0}, { 40, -52, 166, 24, 12, 0}, { 40, -52, 167, 24, 12, 0}, { 40, -51, 168, 24, 12, 0}, { 40, -50, 169, 24, 12, 0}, - { 40, -50, 170, 24, 12, 0}, { 40, -49, 171, 24, 12, 0}, { 41, -49, 172, 24, 12, 0}, { 41, -48, 173, 24, 13, 0}, { 41, -48, 174, 24, 13, 0}, - { 41, -47, 174, 24, 13, 0}, { 41, -46, 175, 24, 13, 0}, { 41, -46, 176, 24, 13, 0}, { 41, -45, 177, 24, 13, 0}, { 41, -44, 178, 24, 13, 0}, - { 42, -44, 179, 24, 13, 0}, { 42, -43, 180, 24, 13, 0}, { 42, -42, 181, 24, 13, 0}, { 42, -41, 182, 24, 13, 0}, { 42, -41, 182, 24, 13, 0}, - { 42, -40, 183, 24, 13, 0}, { 42, -39, 184, 24, 13, 0}, { 43, -39, 185, 24, 13, 0}, { 43, -38, 186, 24, 13, 0}, { 43, -37, 186, 24, 13, 0}, - { 43, -36, 187, 24, 14, 0}, { 43, -35, 188, 24, 14, 0}, { 43, -35, 188, 24, 14, 0}, { 43, -34, 189, 24, 14, 0}, { 43, -33, 190, 24, 14, 0}, - { 44, -32, 190, 24, 14, 0}, { 44, -31, 191, 24, 14, 0}, { 44, -30, 192, 24, 14, 0}, { 44, -30, 192, 24, 14, 0}, { 44, -29, 193, 24, 14, 0}, - { 44, -28, 193, 24, 14, 0}, { 44, -27, 194, 24, 14, 0}, { 44, -26, 195, 24, 14, 0}, { 45, -25, 195, 24, 14, 0}, { 45, -24, 196, 24, 14, 0}, - { 45, -23, 196, 24, 14, 0}, { 45, -22, 196, 24, 15, 0}, { 45, -21, 197, 24, 15, 0}, { 45, -21, 197, 24, 15, 0}, { 45, -20, 198, 24, 15, 0}, - { 46, -19, 198, 24, 15, 0}, { 46, -18, 198, 24, 15, 0}, { 46, -17, 199, 24, 15, 0}, { 46, -16, 199, 24, 15, 0}, { 46, -15, 199, 24, 15, 0}, - { 46, -14, 200, 24, 15, 0}, { 46, -13, 200, 24, 15, 0}, { 46, -12, 200, 24, 15, 0}, { 47, -11, 200, 24, 15, 0}, { 47, -10, 201, 24, 15, 0}, - { 47, -9, 201, 24, 15, 0}, { 47, -8, 201, 24, 15, 0}, { 47, -7, 201, 24, 16, 0}, { 47, -6, 201, 24, 16, 0}, { 47, -5, 201, 24, 16, 0}, - { 47, -4, 202, 24, 16, 0}, { 48, -3, 202, 24, 16, 0}, { 48, -2, 202, 24, 16, 0}, { 48, -1, 202, 24, 16, 0}, { 48, 0, 202, 24, 16, 0}, + {16, 31, -1, 24, 2, 0}, {16, 30, 0, 24, 2, 0}, {16, 29, 0, 24, 2, 0}, {17, 28, 1, 24, 2, 0}, {17, 27, 1, 24, 2, 0}, + {17, 26, 2, 24, 2, 0}, {17, 26, 2, 24, 2, 0}, {17, 25, 3, 24, 2, 0}, {17, 24, 3, 24, 2, 0}, {17, 23, 4, 24, 2, 0}, + {17, 22, 4, 24, 2, 0}, {18, 21, 5, 24, 2, 0}, {18, 20, 5, 24, 2, 0}, {18, 19, 6, 24, 2, 0}, {18, 18, 6, 24, 2, 0}, + {18, 18, 7, 24, 2, 0}, {18, 17, 7, 24, 2, 0}, {18, 16, 8, 24, 2, 0}, {18, 15, 9, 24, 2, 0}, {19, 14, 9, 24, 2, 0}, + {19, 13, 10, 24, 2, 0}, {19, 12, 10, 24, 2, 0}, {19, 11, 11, 24, 2, 0}, {19, 11, 11, 24, 2, 0}, {19, 10, 12, 24, 2, 0}, + {19, 9, 13, 24, 2, 0}, {20, 8, 13, 24, 2, 0}, {20, 7, 14, 24, 2, 0}, {20, 6, 14, 24, 2, 0}, {20, 5, 15, 24, 2, 0}, + {20, 4, 16, 24, 2, 0}, {20, 4, 16, 24, 2, 0}, {20, 3, 17, 24, 2, 0}, {20, 2, 17, 24, 3, 0}, {21, 1, 18, 24, 3, 0}, + {21, 0, 19, 24, 3, 0}, {21, -1, 19, 24, 3, 0}, {21, -1, 20, 24, 3, 0}, {21, -2, 21, 24, 3, 0}, {21, -3, 21, 24, 3, 0}, + {21, -4, 22, 24, 3, 0}, {21, -5, 23, 24, 3, 0}, {22, -6, 23, 24, 3, 0}, {22, -6, 24, 24, 3, 0}, {22, -7, 25, 24, 3, 0}, + {22, -8, 25, 24, 3, 0}, {22, -9, 26, 24, 3, 0}, {22, -10, 27, 24, 3, 0}, {22, -11, 28, 24, 3, 0}, {23, -11, 28, 24, 3, 0}, + {23, -12, 29, 24, 3, 0}, {23, -13, 30, 24, 3, 0}, {23, -14, 30, 24, 3, 0}, {23, -14, 31, 24, 3, 0}, {23, -15, 32, 24, 3, 0}, + {23, -16, 33, 24, 3, 0}, {23, -17, 33, 24, 3, 0}, {24, -18, 34, 24, 3, 0}, {24, -18, 35, 24, 3, 0}, {24, -19, 36, 24, 3, 0}, + {24, -20, 37, 24, 3, 0}, {24, -21, 37, 24, 3, 0}, {24, -21, 38, 24, 3, 0}, {24, -22, 39, 24, 3, 0}, {24, -23, 40, 24, 3, 0}, + {25, -24, 41, 24, 3, 0}, {25, -24, 41, 24, 3, 0}, {25, -25, 42, 24, 3, 0}, {25, -26, 43, 24, 3, 0}, {25, -26, 44, 24, 3, 0}, + {25, -27, 45, 24, 3, 0}, {25, -28, 46, 24, 3, 0}, {26, -29, 46, 24, 3, 0}, {26, -29, 47, 24, 3, 0}, {26, -30, 48, 24, 3, 0}, + {26, -31, 49, 24, 3, 0}, {26, -31, 50, 24, 3, 0}, {26, -32, 51, 24, 3, 0}, {26, -33, 52, 24, 3, 0}, {26, -33, 53, 24, 3, 0}, + {27, -34, 53, 24, 3, 0}, {27, -35, 54, 24, 3, 0}, {27, -35, 55, 24, 3, 0}, {27, -36, 56, 24, 4, 0}, {27, -37, 57, 24, 4, 0}, + {27, -37, 58, 24, 4, 0}, {27, -38, 59, 24, 4, 0}, {27, -38, 60, 24, 4, 0}, {28, -39, 61, 24, 4, 0}, {28, -40, 62, 24, 4, 0}, + {28, -40, 63, 24, 4, 0}, {28, -41, 64, 24, 4, 0}, {28, -42, 65, 24, 4, 0}, {28, -42, 66, 24, 4, 0}, {28, -43, 67, 24, 4, 0}, + {29, -43, 68, 24, 4, 0}, {29, -44, 69, 24, 4, 0}, {29, -44, 70, 24, 4, 0}, {29, -45, 71, 24, 4, 0}, {29, -45, 72, 24, 4, 0}, + {29, -46, 73, 24, 4, 0}, {29, -47, 74, 24, 4, 0}, {29, -47, 75, 24, 4, 0}, {30, -48, 76, 24, 4, 0}, {30, -48, 77, 24, 4, 0}, + {30, -49, 78, 24, 4, 0}, {30, -49, 79, 24, 4, 0}, {30, -50, 80, 24, 4, 0}, {30, -50, 81, 24, 4, 0}, {30, -50, 82, 24, 4, 0}, + {30, -51, 83, 24, 4, 0}, {31, -51, 84, 24, 4, 0}, {31, -52, 86, 24, 4, 0}, {31, -52, 87, 24, 4, 0}, {31, -53, 88, 24, 4, 0}, + {31, -53, 89, 24, 4, 0}, {31, -53, 90, 24, 4, 0}, {31, -54, 91, 24, 9, 0}, {32, -54, 92, 24, 9, 0}, {32, -55, 93, 24, 9, 0}, + {32, -55, 94, 24, 9, 0}, {32, -55, 96, 24, 9, 0}, {32, -56, 97, 24, 9, 0}, {32, -56, 98, 24, 9, 0}, {32, -56, 99, 24, 9, 0}, + {32, -57, 100, 24, 9, 0}, {33, -57, 101, 24, 9, 0}, {33, -57, 102, 24, 9, 0}, {33, -58, 104, 24, 9, 0}, {33, -58, 105, 24, 9, 0}, + {33, -58, 106, 24, 9, 0}, {33, -58, 107, 24, 9, 0}, {33, -59, 108, 24, 9, 0}, {33, -59, 109, 24, 9, 0}, {34, -59, 111, 24, 9, 0}, + {34, -59, 112, 24, 9, 0}, {34, -60, 113, 24, 9, 0}, {34, -60, 114, 24, 9, 0}, {34, -60, 115, 24, 9, 0}, {34, -60, 117, 24, 9, 0}, + {34, -60, 118, 24, 9, 0}, {35, -60, 119, 24, 10, 0}, {35, -60, 120, 24, 10, 0}, {35, -61, 121, 24, 10, 0}, {35, -61, 123, 24, 10, 0}, + {35, -61, 124, 24, 10, 0}, {35, -61, 125, 24, 10, 0}, {35, -61, 126, 24, 10, 0}, {35, -61, 127, 24, 10, 0}, {36, -61, 129, 24, 10, 0}, + {36, -61, 130, 24, 10, 0}, {36, -61, 131, 24, 10, 0}, {36, -61, 132, 24, 10, 0}, {36, -61, 134, 24, 10, 0}, {36, -60, 135, 24, 10, 0}, + {36, -60, 136, 24, 10, 0}, {36, -60, 137, 24, 11, 0}, {37, -60, 138, 24, 11, 0}, {37, -60, 140, 24, 11, 0}, {37, -60, 141, 24, 11, 0}, + {37, -60, 142, 24, 11, 0}, {37, -59, 143, 24, 11, 0}, {37, -59, 144, 24, 11, 0}, {37, -59, 145, 24, 11, 0}, {38, -59, 147, 24, 11, 0}, + {38, -58, 148, 24, 11, 0}, {38, -58, 149, 24, 11, 0}, {38, -58, 150, 24, 11, 0}, {38, -58, 151, 24, 11, 0}, {38, -57, 152, 24, 11, 0}, + {38, -57, 154, 24, 11, 0}, {38, -56, 155, 24, 11, 0}, {39, -56, 156, 24, 12, 0}, {39, -56, 157, 24, 12, 0}, {39, -55, 158, 24, 12, 0}, + {39, -55, 159, 24, 12, 0}, {39, -54, 160, 24, 12, 0}, {39, -54, 161, 24, 12, 0}, {39, -54, 162, 24, 12, 0}, {40, -53, 163, 24, 12, 0}, + {40, -53, 165, 24, 12, 0}, {40, -52, 166, 24, 12, 0}, {40, -52, 167, 24, 12, 0}, {40, -51, 168, 24, 12, 0}, {40, -50, 169, 24, 12, 0}, + {40, -50, 170, 24, 12, 0}, {40, -49, 171, 24, 12, 0}, {41, -49, 172, 24, 12, 0}, {41, -48, 173, 24, 13, 0}, {41, -48, 174, 24, 13, 0}, + {41, -47, 174, 24, 13, 0}, {41, -46, 175, 24, 13, 0}, {41, -46, 176, 24, 13, 0}, {41, -45, 177, 24, 13, 0}, {41, -44, 178, 24, 13, 0}, + {42, -44, 179, 24, 13, 0}, {42, -43, 180, 24, 13, 0}, {42, -42, 181, 24, 13, 0}, {42, -41, 182, 24, 13, 0}, {42, -41, 182, 24, 13, 0}, + {42, -40, 183, 24, 13, 0}, {42, -39, 184, 24, 13, 0}, {43, -39, 185, 24, 13, 0}, {43, -38, 186, 24, 13, 0}, {43, -37, 186, 24, 13, 0}, + {43, -36, 187, 24, 14, 0}, {43, -35, 188, 24, 14, 0}, {43, -35, 188, 24, 14, 0}, {43, -34, 189, 24, 14, 0}, {43, -33, 190, 24, 14, 0}, + {44, -32, 190, 24, 14, 0}, {44, -31, 191, 24, 14, 0}, {44, -30, 192, 24, 14, 0}, {44, -30, 192, 24, 14, 0}, {44, -29, 193, 24, 14, 0}, + {44, -28, 193, 24, 14, 0}, {44, -27, 194, 24, 14, 0}, {44, -26, 195, 24, 14, 0}, {45, -25, 195, 24, 14, 0}, {45, -24, 196, 24, 14, 0}, + {45, -23, 196, 24, 14, 0}, {45, -22, 196, 24, 15, 0}, {45, -21, 197, 24, 15, 0}, {45, -21, 197, 24, 15, 0}, {45, -20, 198, 24, 15, 0}, + {46, -19, 198, 24, 15, 0}, {46, -18, 198, 24, 15, 0}, {46, -17, 199, 24, 15, 0}, {46, -16, 199, 24, 15, 0}, {46, -15, 199, 24, 15, 0}, + {46, -14, 200, 24, 15, 0}, {46, -13, 200, 24, 15, 0}, {46, -12, 200, 24, 15, 0}, {47, -11, 200, 24, 15, 0}, {47, -10, 201, 24, 15, 0}, + {47, -9, 201, 24, 15, 0}, {47, -8, 201, 24, 15, 0}, {47, -7, 201, 24, 16, 0}, {47, -6, 201, 24, 16, 0}, {47, -5, 201, 24, 16, 0}, + {47, -4, 202, 24, 16, 0}, {48, -3, 202, 24, 16, 0}, {48, -2, 202, 24, 16, 0}, {48, -1, 202, 24, 16, 0}, {48, 0, 202, 24, 16, 0}, }) CREATE_VEHICLE_INFO(TrackVehicleInfoRightMediumHalfLoopUp0, { - { 31, 16, -1, 0, 2, 0}, { 30, 16, 0, 0, 2, 0}, { 29, 16, 0, 0, 2, 0}, { 28, 17, 1, 0, 2, 0}, { 27, 17, 1, 0, 2, 0}, - { 26, 17, 2, 0, 2, 0}, { 26, 17, 2, 0, 2, 0}, { 25, 17, 3, 0, 2, 0}, { 24, 17, 3, 0, 2, 0}, { 23, 17, 4, 0, 2, 0}, - { 22, 17, 4, 0, 2, 0}, { 21, 18, 5, 0, 2, 0}, { 20, 18, 5, 0, 2, 0}, { 19, 18, 6, 0, 2, 0}, { 18, 18, 6, 0, 2, 0}, - { 18, 18, 7, 0, 2, 0}, { 17, 18, 7, 0, 2, 0}, { 16, 18, 8, 0, 2, 0}, { 15, 18, 9, 0, 2, 0}, { 14, 19, 9, 0, 2, 0}, - { 13, 19, 10, 0, 2, 0}, { 12, 19, 10, 0, 2, 0}, { 11, 19, 11, 0, 2, 0}, { 11, 19, 11, 0, 2, 0}, { 10, 19, 12, 0, 2, 0}, - { 9, 19, 13, 0, 2, 0}, { 8, 20, 13, 0, 2, 0}, { 7, 20, 14, 0, 2, 0}, { 6, 20, 14, 0, 2, 0}, { 5, 20, 15, 0, 2, 0}, - { 4, 20, 16, 0, 2, 0}, { 4, 20, 16, 0, 2, 0}, { 3, 20, 17, 0, 2, 0}, { 2, 20, 17, 0, 3, 0}, { 1, 21, 18, 0, 3, 0}, - { 0, 21, 19, 0, 3, 0}, { -1, 21, 19, 0, 3, 0}, { -1, 21, 20, 0, 3, 0}, { -2, 21, 21, 0, 3, 0}, { -3, 21, 21, 0, 3, 0}, - { -4, 21, 22, 0, 3, 0}, { -5, 21, 23, 0, 3, 0}, { -6, 22, 23, 0, 3, 0}, { -6, 22, 24, 0, 3, 0}, { -7, 22, 25, 0, 3, 0}, - { -8, 22, 25, 0, 3, 0}, { -9, 22, 26, 0, 3, 0}, { -10, 22, 27, 0, 3, 0}, { -11, 22, 28, 0, 3, 0}, { -11, 23, 28, 0, 3, 0}, - { -12, 23, 29, 0, 3, 0}, { -13, 23, 30, 0, 3, 0}, { -14, 23, 30, 0, 3, 0}, { -14, 23, 31, 0, 3, 0}, { -15, 23, 32, 0, 3, 0}, - { -16, 23, 33, 0, 3, 0}, { -17, 23, 33, 0, 3, 0}, { -18, 24, 34, 0, 3, 0}, { -18, 24, 35, 0, 3, 0}, { -19, 24, 36, 0, 3, 0}, - { -20, 24, 37, 0, 3, 0}, { -21, 24, 37, 0, 3, 0}, { -21, 24, 38, 0, 3, 0}, { -22, 24, 39, 0, 3, 0}, { -23, 24, 40, 0, 3, 0}, - { -24, 25, 41, 0, 3, 0}, { -24, 25, 41, 0, 3, 0}, { -25, 25, 42, 0, 3, 0}, { -26, 25, 43, 0, 3, 0}, { -26, 25, 44, 0, 3, 0}, - { -27, 25, 45, 0, 3, 0}, { -28, 25, 46, 0, 3, 0}, { -29, 26, 46, 0, 3, 0}, { -29, 26, 47, 0, 3, 0}, { -30, 26, 48, 0, 3, 0}, - { -31, 26, 49, 0, 3, 0}, { -31, 26, 50, 0, 3, 0}, { -32, 26, 51, 0, 3, 0}, { -33, 26, 52, 0, 3, 0}, { -33, 26, 53, 0, 3, 0}, - { -34, 27, 53, 0, 3, 0}, { -35, 27, 54, 0, 3, 0}, { -35, 27, 55, 0, 3, 0}, { -36, 27, 56, 0, 4, 0}, { -37, 27, 57, 0, 4, 0}, - { -37, 27, 58, 0, 4, 0}, { -38, 27, 59, 0, 4, 0}, { -38, 27, 60, 0, 4, 0}, { -39, 28, 61, 0, 4, 0}, { -40, 28, 62, 0, 4, 0}, - { -40, 28, 63, 0, 4, 0}, { -41, 28, 64, 0, 4, 0}, { -42, 28, 65, 0, 4, 0}, { -42, 28, 66, 0, 4, 0}, { -43, 28, 67, 0, 4, 0}, - { -43, 29, 68, 0, 4, 0}, { -44, 29, 69, 0, 4, 0}, { -44, 29, 70, 0, 4, 0}, { -45, 29, 71, 0, 4, 0}, { -45, 29, 72, 0, 4, 0}, - { -46, 29, 73, 0, 4, 0}, { -47, 29, 74, 0, 4, 0}, { -47, 29, 75, 0, 4, 0}, { -48, 30, 76, 0, 4, 0}, { -48, 30, 77, 0, 4, 0}, - { -49, 30, 78, 0, 4, 0}, { -49, 30, 79, 0, 4, 0}, { -50, 30, 80, 0, 4, 0}, { -50, 30, 81, 0, 4, 0}, { -50, 30, 82, 0, 4, 0}, - { -51, 30, 83, 0, 4, 0}, { -51, 31, 84, 0, 4, 0}, { -52, 31, 86, 0, 4, 0}, { -52, 31, 87, 0, 4, 0}, { -53, 31, 88, 0, 4, 0}, - { -53, 31, 89, 0, 4, 0}, { -53, 31, 90, 0, 4, 0}, { -54, 31, 91, 0, 9, 0}, { -54, 32, 92, 0, 9, 0}, { -55, 32, 93, 0, 9, 0}, - { -55, 32, 94, 0, 9, 0}, { -55, 32, 96, 0, 9, 0}, { -56, 32, 97, 0, 9, 0}, { -56, 32, 98, 0, 9, 0}, { -56, 32, 99, 0, 9, 0}, - { -57, 32, 100, 0, 9, 0}, { -57, 33, 101, 0, 9, 0}, { -57, 33, 102, 0, 9, 0}, { -58, 33, 104, 0, 9, 0}, { -58, 33, 105, 0, 9, 0}, - { -58, 33, 106, 0, 9, 0}, { -58, 33, 107, 0, 9, 0}, { -59, 33, 108, 0, 9, 0}, { -59, 33, 109, 0, 9, 0}, { -59, 34, 111, 0, 9, 0}, - { -59, 34, 112, 0, 9, 0}, { -60, 34, 113, 0, 9, 0}, { -60, 34, 114, 0, 9, 0}, { -60, 34, 115, 0, 9, 0}, { -60, 34, 117, 0, 9, 0}, - { -60, 34, 118, 0, 9, 0}, { -60, 35, 119, 0, 10, 0}, { -60, 35, 120, 0, 10, 0}, { -61, 35, 121, 0, 10, 0}, { -61, 35, 123, 0, 10, 0}, - { -61, 35, 124, 0, 10, 0}, { -61, 35, 125, 0, 10, 0}, { -61, 35, 126, 0, 10, 0}, { -61, 35, 127, 0, 10, 0}, { -61, 36, 129, 0, 10, 0}, - { -61, 36, 130, 0, 10, 0}, { -61, 36, 131, 0, 10, 0}, { -61, 36, 132, 0, 10, 0}, { -61, 36, 134, 0, 10, 0}, { -60, 36, 135, 0, 10, 0}, - { -60, 36, 136, 0, 10, 0}, { -60, 36, 137, 0, 11, 0}, { -60, 37, 138, 0, 11, 0}, { -60, 37, 140, 0, 11, 0}, { -60, 37, 141, 0, 11, 0}, - { -60, 37, 142, 0, 11, 0}, { -59, 37, 143, 0, 11, 0}, { -59, 37, 144, 0, 11, 0}, { -59, 37, 145, 0, 11, 0}, { -59, 38, 147, 0, 11, 0}, - { -58, 38, 148, 0, 11, 0}, { -58, 38, 149, 0, 11, 0}, { -58, 38, 150, 0, 11, 0}, { -58, 38, 151, 0, 11, 0}, { -57, 38, 152, 0, 11, 0}, - { -57, 38, 154, 0, 11, 0}, { -56, 38, 155, 0, 11, 0}, { -56, 39, 156, 0, 12, 0}, { -56, 39, 157, 0, 12, 0}, { -55, 39, 158, 0, 12, 0}, - { -55, 39, 159, 0, 12, 0}, { -54, 39, 160, 0, 12, 0}, { -54, 39, 161, 0, 12, 0}, { -54, 39, 162, 0, 12, 0}, { -53, 40, 163, 0, 12, 0}, - { -53, 40, 165, 0, 12, 0}, { -52, 40, 166, 0, 12, 0}, { -52, 40, 167, 0, 12, 0}, { -51, 40, 168, 0, 12, 0}, { -50, 40, 169, 0, 12, 0}, - { -50, 40, 170, 0, 12, 0}, { -49, 40, 171, 0, 12, 0}, { -49, 41, 172, 0, 12, 0}, { -48, 41, 173, 0, 13, 0}, { -48, 41, 174, 0, 13, 0}, - { -47, 41, 174, 0, 13, 0}, { -46, 41, 175, 0, 13, 0}, { -46, 41, 176, 0, 13, 0}, { -45, 41, 177, 0, 13, 0}, { -44, 41, 178, 0, 13, 0}, - { -44, 42, 179, 0, 13, 0}, { -43, 42, 180, 0, 13, 0}, { -42, 42, 181, 0, 13, 0}, { -41, 42, 182, 0, 13, 0}, { -41, 42, 182, 0, 13, 0}, - { -40, 42, 183, 0, 13, 0}, { -39, 42, 184, 0, 13, 0}, { -39, 43, 185, 0, 13, 0}, { -38, 43, 186, 0, 13, 0}, { -37, 43, 186, 0, 13, 0}, - { -36, 43, 187, 0, 14, 0}, { -35, 43, 188, 0, 14, 0}, { -35, 43, 188, 0, 14, 0}, { -34, 43, 189, 0, 14, 0}, { -33, 43, 190, 0, 14, 0}, - { -32, 44, 190, 0, 14, 0}, { -31, 44, 191, 0, 14, 0}, { -30, 44, 192, 0, 14, 0}, { -30, 44, 192, 0, 14, 0}, { -29, 44, 193, 0, 14, 0}, - { -28, 44, 193, 0, 14, 0}, { -27, 44, 194, 0, 14, 0}, { -26, 44, 195, 0, 14, 0}, { -25, 45, 195, 0, 14, 0}, { -24, 45, 196, 0, 14, 0}, - { -23, 45, 196, 0, 14, 0}, { -22, 45, 196, 0, 15, 0}, { -21, 45, 197, 0, 15, 0}, { -21, 45, 197, 0, 15, 0}, { -20, 45, 198, 0, 15, 0}, - { -19, 46, 198, 0, 15, 0}, { -18, 46, 198, 0, 15, 0}, { -17, 46, 199, 0, 15, 0}, { -16, 46, 199, 0, 15, 0}, { -15, 46, 199, 0, 15, 0}, - { -14, 46, 200, 0, 15, 0}, { -13, 46, 200, 0, 15, 0}, { -12, 46, 200, 0, 15, 0}, { -11, 47, 200, 0, 15, 0}, { -10, 47, 201, 0, 15, 0}, - { -9, 47, 201, 0, 15, 0}, { -8, 47, 201, 0, 15, 0}, { -7, 47, 201, 0, 16, 0}, { -6, 47, 201, 0, 16, 0}, { -5, 47, 201, 0, 16, 0}, - { -4, 47, 202, 0, 16, 0}, { -3, 48, 202, 0, 16, 0}, { -2, 48, 202, 0, 16, 0}, { -1, 48, 202, 0, 16, 0}, { 0, 48, 202, 0, 16, 0}, + {31, 16, -1, 0, 2, 0}, {30, 16, 0, 0, 2, 0}, {29, 16, 0, 0, 2, 0}, {28, 17, 1, 0, 2, 0}, {27, 17, 1, 0, 2, 0}, + {26, 17, 2, 0, 2, 0}, {26, 17, 2, 0, 2, 0}, {25, 17, 3, 0, 2, 0}, {24, 17, 3, 0, 2, 0}, {23, 17, 4, 0, 2, 0}, + {22, 17, 4, 0, 2, 0}, {21, 18, 5, 0, 2, 0}, {20, 18, 5, 0, 2, 0}, {19, 18, 6, 0, 2, 0}, {18, 18, 6, 0, 2, 0}, + {18, 18, 7, 0, 2, 0}, {17, 18, 7, 0, 2, 0}, {16, 18, 8, 0, 2, 0}, {15, 18, 9, 0, 2, 0}, {14, 19, 9, 0, 2, 0}, + {13, 19, 10, 0, 2, 0}, {12, 19, 10, 0, 2, 0}, {11, 19, 11, 0, 2, 0}, {11, 19, 11, 0, 2, 0}, {10, 19, 12, 0, 2, 0}, + {9, 19, 13, 0, 2, 0}, {8, 20, 13, 0, 2, 0}, {7, 20, 14, 0, 2, 0}, {6, 20, 14, 0, 2, 0}, {5, 20, 15, 0, 2, 0}, + {4, 20, 16, 0, 2, 0}, {4, 20, 16, 0, 2, 0}, {3, 20, 17, 0, 2, 0}, {2, 20, 17, 0, 3, 0}, {1, 21, 18, 0, 3, 0}, + {0, 21, 19, 0, 3, 0}, {-1, 21, 19, 0, 3, 0}, {-1, 21, 20, 0, 3, 0}, {-2, 21, 21, 0, 3, 0}, {-3, 21, 21, 0, 3, 0}, + {-4, 21, 22, 0, 3, 0}, {-5, 21, 23, 0, 3, 0}, {-6, 22, 23, 0, 3, 0}, {-6, 22, 24, 0, 3, 0}, {-7, 22, 25, 0, 3, 0}, + {-8, 22, 25, 0, 3, 0}, {-9, 22, 26, 0, 3, 0}, {-10, 22, 27, 0, 3, 0}, {-11, 22, 28, 0, 3, 0}, {-11, 23, 28, 0, 3, 0}, + {-12, 23, 29, 0, 3, 0}, {-13, 23, 30, 0, 3, 0}, {-14, 23, 30, 0, 3, 0}, {-14, 23, 31, 0, 3, 0}, {-15, 23, 32, 0, 3, 0}, + {-16, 23, 33, 0, 3, 0}, {-17, 23, 33, 0, 3, 0}, {-18, 24, 34, 0, 3, 0}, {-18, 24, 35, 0, 3, 0}, {-19, 24, 36, 0, 3, 0}, + {-20, 24, 37, 0, 3, 0}, {-21, 24, 37, 0, 3, 0}, {-21, 24, 38, 0, 3, 0}, {-22, 24, 39, 0, 3, 0}, {-23, 24, 40, 0, 3, 0}, + {-24, 25, 41, 0, 3, 0}, {-24, 25, 41, 0, 3, 0}, {-25, 25, 42, 0, 3, 0}, {-26, 25, 43, 0, 3, 0}, {-26, 25, 44, 0, 3, 0}, + {-27, 25, 45, 0, 3, 0}, {-28, 25, 46, 0, 3, 0}, {-29, 26, 46, 0, 3, 0}, {-29, 26, 47, 0, 3, 0}, {-30, 26, 48, 0, 3, 0}, + {-31, 26, 49, 0, 3, 0}, {-31, 26, 50, 0, 3, 0}, {-32, 26, 51, 0, 3, 0}, {-33, 26, 52, 0, 3, 0}, {-33, 26, 53, 0, 3, 0}, + {-34, 27, 53, 0, 3, 0}, {-35, 27, 54, 0, 3, 0}, {-35, 27, 55, 0, 3, 0}, {-36, 27, 56, 0, 4, 0}, {-37, 27, 57, 0, 4, 0}, + {-37, 27, 58, 0, 4, 0}, {-38, 27, 59, 0, 4, 0}, {-38, 27, 60, 0, 4, 0}, {-39, 28, 61, 0, 4, 0}, {-40, 28, 62, 0, 4, 0}, + {-40, 28, 63, 0, 4, 0}, {-41, 28, 64, 0, 4, 0}, {-42, 28, 65, 0, 4, 0}, {-42, 28, 66, 0, 4, 0}, {-43, 28, 67, 0, 4, 0}, + {-43, 29, 68, 0, 4, 0}, {-44, 29, 69, 0, 4, 0}, {-44, 29, 70, 0, 4, 0}, {-45, 29, 71, 0, 4, 0}, {-45, 29, 72, 0, 4, 0}, + {-46, 29, 73, 0, 4, 0}, {-47, 29, 74, 0, 4, 0}, {-47, 29, 75, 0, 4, 0}, {-48, 30, 76, 0, 4, 0}, {-48, 30, 77, 0, 4, 0}, + {-49, 30, 78, 0, 4, 0}, {-49, 30, 79, 0, 4, 0}, {-50, 30, 80, 0, 4, 0}, {-50, 30, 81, 0, 4, 0}, {-50, 30, 82, 0, 4, 0}, + {-51, 30, 83, 0, 4, 0}, {-51, 31, 84, 0, 4, 0}, {-52, 31, 86, 0, 4, 0}, {-52, 31, 87, 0, 4, 0}, {-53, 31, 88, 0, 4, 0}, + {-53, 31, 89, 0, 4, 0}, {-53, 31, 90, 0, 4, 0}, {-54, 31, 91, 0, 9, 0}, {-54, 32, 92, 0, 9, 0}, {-55, 32, 93, 0, 9, 0}, + {-55, 32, 94, 0, 9, 0}, {-55, 32, 96, 0, 9, 0}, {-56, 32, 97, 0, 9, 0}, {-56, 32, 98, 0, 9, 0}, {-56, 32, 99, 0, 9, 0}, + {-57, 32, 100, 0, 9, 0}, {-57, 33, 101, 0, 9, 0}, {-57, 33, 102, 0, 9, 0}, {-58, 33, 104, 0, 9, 0}, {-58, 33, 105, 0, 9, 0}, + {-58, 33, 106, 0, 9, 0}, {-58, 33, 107, 0, 9, 0}, {-59, 33, 108, 0, 9, 0}, {-59, 33, 109, 0, 9, 0}, {-59, 34, 111, 0, 9, 0}, + {-59, 34, 112, 0, 9, 0}, {-60, 34, 113, 0, 9, 0}, {-60, 34, 114, 0, 9, 0}, {-60, 34, 115, 0, 9, 0}, {-60, 34, 117, 0, 9, 0}, + {-60, 34, 118, 0, 9, 0}, {-60, 35, 119, 0, 10, 0}, {-60, 35, 120, 0, 10, 0}, {-61, 35, 121, 0, 10, 0}, {-61, 35, 123, 0, 10, 0}, + {-61, 35, 124, 0, 10, 0}, {-61, 35, 125, 0, 10, 0}, {-61, 35, 126, 0, 10, 0}, {-61, 35, 127, 0, 10, 0}, {-61, 36, 129, 0, 10, 0}, + {-61, 36, 130, 0, 10, 0}, {-61, 36, 131, 0, 10, 0}, {-61, 36, 132, 0, 10, 0}, {-61, 36, 134, 0, 10, 0}, {-60, 36, 135, 0, 10, 0}, + {-60, 36, 136, 0, 10, 0}, {-60, 36, 137, 0, 11, 0}, {-60, 37, 138, 0, 11, 0}, {-60, 37, 140, 0, 11, 0}, {-60, 37, 141, 0, 11, 0}, + {-60, 37, 142, 0, 11, 0}, {-59, 37, 143, 0, 11, 0}, {-59, 37, 144, 0, 11, 0}, {-59, 37, 145, 0, 11, 0}, {-59, 38, 147, 0, 11, 0}, + {-58, 38, 148, 0, 11, 0}, {-58, 38, 149, 0, 11, 0}, {-58, 38, 150, 0, 11, 0}, {-58, 38, 151, 0, 11, 0}, {-57, 38, 152, 0, 11, 0}, + {-57, 38, 154, 0, 11, 0}, {-56, 38, 155, 0, 11, 0}, {-56, 39, 156, 0, 12, 0}, {-56, 39, 157, 0, 12, 0}, {-55, 39, 158, 0, 12, 0}, + {-55, 39, 159, 0, 12, 0}, {-54, 39, 160, 0, 12, 0}, {-54, 39, 161, 0, 12, 0}, {-54, 39, 162, 0, 12, 0}, {-53, 40, 163, 0, 12, 0}, + {-53, 40, 165, 0, 12, 0}, {-52, 40, 166, 0, 12, 0}, {-52, 40, 167, 0, 12, 0}, {-51, 40, 168, 0, 12, 0}, {-50, 40, 169, 0, 12, 0}, + {-50, 40, 170, 0, 12, 0}, {-49, 40, 171, 0, 12, 0}, {-49, 41, 172, 0, 12, 0}, {-48, 41, 173, 0, 13, 0}, {-48, 41, 174, 0, 13, 0}, + {-47, 41, 174, 0, 13, 0}, {-46, 41, 175, 0, 13, 0}, {-46, 41, 176, 0, 13, 0}, {-45, 41, 177, 0, 13, 0}, {-44, 41, 178, 0, 13, 0}, + {-44, 42, 179, 0, 13, 0}, {-43, 42, 180, 0, 13, 0}, {-42, 42, 181, 0, 13, 0}, {-41, 42, 182, 0, 13, 0}, {-41, 42, 182, 0, 13, 0}, + {-40, 42, 183, 0, 13, 0}, {-39, 42, 184, 0, 13, 0}, {-39, 43, 185, 0, 13, 0}, {-38, 43, 186, 0, 13, 0}, {-37, 43, 186, 0, 13, 0}, + {-36, 43, 187, 0, 14, 0}, {-35, 43, 188, 0, 14, 0}, {-35, 43, 188, 0, 14, 0}, {-34, 43, 189, 0, 14, 0}, {-33, 43, 190, 0, 14, 0}, + {-32, 44, 190, 0, 14, 0}, {-31, 44, 191, 0, 14, 0}, {-30, 44, 192, 0, 14, 0}, {-30, 44, 192, 0, 14, 0}, {-29, 44, 193, 0, 14, 0}, + {-28, 44, 193, 0, 14, 0}, {-27, 44, 194, 0, 14, 0}, {-26, 44, 195, 0, 14, 0}, {-25, 45, 195, 0, 14, 0}, {-24, 45, 196, 0, 14, 0}, + {-23, 45, 196, 0, 14, 0}, {-22, 45, 196, 0, 15, 0}, {-21, 45, 197, 0, 15, 0}, {-21, 45, 197, 0, 15, 0}, {-20, 45, 198, 0, 15, 0}, + {-19, 46, 198, 0, 15, 0}, {-18, 46, 198, 0, 15, 0}, {-17, 46, 199, 0, 15, 0}, {-16, 46, 199, 0, 15, 0}, {-15, 46, 199, 0, 15, 0}, + {-14, 46, 200, 0, 15, 0}, {-13, 46, 200, 0, 15, 0}, {-12, 46, 200, 0, 15, 0}, {-11, 47, 200, 0, 15, 0}, {-10, 47, 201, 0, 15, 0}, + {-9, 47, 201, 0, 15, 0}, {-8, 47, 201, 0, 15, 0}, {-7, 47, 201, 0, 16, 0}, {-6, 47, 201, 0, 16, 0}, {-5, 47, 201, 0, 16, 0}, + {-4, 47, 202, 0, 16, 0}, {-3, 48, 202, 0, 16, 0}, {-2, 48, 202, 0, 16, 0}, {-1, 48, 202, 0, 16, 0}, {0, 48, 202, 0, 16, 0}, }) CREATE_VEHICLE_INFO(TrackVehicleInfoRightMediumHalfLoopUp1, { - { 16, 0, -1, 8, 2, 0}, { 16, 1, -1, 8, 2, 0}, { 16, 2, 0, 8, 2, 0}, { 16, 3, 0, 8, 2, 0}, { 17, 4, 1, 8, 2, 0}, - { 17, 5, 1, 8, 2, 0}, { 17, 6, 2, 8, 2, 0}, { 17, 6, 2, 8, 2, 0}, { 17, 7, 3, 8, 2, 0}, { 17, 8, 3, 8, 2, 0}, - { 17, 9, 4, 8, 2, 0}, { 17, 10, 4, 8, 2, 0}, { 18, 11, 5, 8, 2, 0}, { 18, 12, 5, 8, 2, 0}, { 18, 13, 6, 8, 2, 0}, - { 18, 14, 6, 8, 2, 0}, { 18, 14, 7, 8, 2, 0}, { 18, 15, 7, 8, 2, 0}, { 18, 16, 8, 8, 2, 0}, { 18, 17, 9, 8, 2, 0}, - { 19, 18, 9, 8, 2, 0}, { 19, 19, 10, 8, 2, 0}, { 19, 20, 10, 8, 2, 0}, { 19, 21, 11, 8, 2, 0}, { 19, 21, 11, 8, 2, 0}, - { 19, 22, 12, 8, 2, 0}, { 19, 23, 13, 8, 2, 0}, { 20, 24, 13, 8, 2, 0}, { 20, 25, 14, 8, 2, 0}, { 20, 26, 14, 8, 2, 0}, - { 20, 27, 15, 8, 2, 0}, { 20, 28, 16, 8, 2, 0}, { 20, 28, 16, 8, 2, 0}, { 20, 29, 17, 8, 2, 0}, { 20, 30, 17, 8, 3, 0}, - { 21, 31, 18, 8, 3, 0}, { 21, 32, 19, 8, 3, 0}, { 21, 33, 19, 8, 3, 0}, { 21, 33, 20, 8, 3, 0}, { 21, 34, 21, 8, 3, 0}, - { 21, 35, 21, 8, 3, 0}, { 21, 36, 22, 8, 3, 0}, { 21, 37, 23, 8, 3, 0}, { 22, 38, 23, 8, 3, 0}, { 22, 38, 24, 8, 3, 0}, - { 22, 39, 25, 8, 3, 0}, { 22, 40, 25, 8, 3, 0}, { 22, 41, 26, 8, 3, 0}, { 22, 42, 27, 8, 3, 0}, { 22, 43, 28, 8, 3, 0}, - { 23, 43, 28, 8, 3, 0}, { 23, 44, 29, 8, 3, 0}, { 23, 45, 30, 8, 3, 0}, { 23, 46, 30, 8, 3, 0}, { 23, 46, 31, 8, 3, 0}, - { 23, 47, 32, 8, 3, 0}, { 23, 48, 33, 8, 3, 0}, { 23, 49, 33, 8, 3, 0}, { 24, 50, 34, 8, 3, 0}, { 24, 50, 35, 8, 3, 0}, - { 24, 51, 36, 8, 3, 0}, { 24, 52, 37, 8, 3, 0}, { 24, 53, 37, 8, 3, 0}, { 24, 53, 38, 8, 3, 0}, { 24, 54, 39, 8, 3, 0}, - { 24, 55, 40, 8, 3, 0}, { 25, 56, 41, 8, 3, 0}, { 25, 56, 41, 8, 3, 0}, { 25, 57, 42, 8, 3, 0}, { 25, 58, 43, 8, 3, 0}, - { 25, 58, 44, 8, 3, 0}, { 25, 59, 45, 8, 3, 0}, { 25, 60, 46, 8, 3, 0}, { 26, 61, 46, 8, 3, 0}, { 26, 61, 47, 8, 3, 0}, - { 26, 62, 48, 8, 3, 0}, { 26, 63, 49, 8, 3, 0}, { 26, 63, 50, 8, 3, 0}, { 26, 64, 51, 8, 3, 0}, { 26, 65, 52, 8, 3, 0}, - { 26, 65, 53, 8, 3, 0}, { 27, 66, 53, 8, 3, 0}, { 27, 67, 54, 8, 3, 0}, { 27, 67, 55, 8, 3, 0}, { 27, 68, 56, 8, 4, 0}, - { 27, 69, 57, 8, 4, 0}, { 27, 69, 58, 8, 4, 0}, { 27, 70, 59, 8, 4, 0}, { 27, 70, 60, 8, 4, 0}, { 28, 71, 61, 8, 4, 0}, - { 28, 72, 62, 8, 4, 0}, { 28, 72, 63, 8, 4, 0}, { 28, 73, 64, 8, 4, 0}, { 28, 74, 65, 8, 4, 0}, { 28, 74, 66, 8, 4, 0}, - { 28, 75, 67, 8, 4, 0}, { 29, 75, 68, 8, 4, 0}, { 29, 76, 69, 8, 4, 0}, { 29, 76, 70, 8, 4, 0}, { 29, 77, 71, 8, 4, 0}, - { 29, 77, 72, 8, 4, 0}, { 29, 78, 73, 8, 4, 0}, { 29, 79, 74, 8, 4, 0}, { 29, 79, 75, 8, 4, 0}, { 30, 80, 76, 8, 4, 0}, - { 30, 80, 77, 8, 4, 0}, { 30, 81, 78, 8, 4, 0}, { 30, 81, 79, 8, 4, 0}, { 30, 82, 80, 8, 4, 0}, { 30, 82, 81, 8, 4, 0}, - { 30, 82, 82, 8, 4, 0}, { 30, 83, 83, 8, 4, 0}, { 31, 83, 84, 8, 4, 0}, { 31, 84, 86, 8, 4, 0}, { 31, 84, 87, 8, 4, 0}, - { 31, 85, 88, 8, 4, 0}, { 31, 85, 89, 8, 4, 0}, { 31, 85, 90, 8, 4, 0}, { 31, 86, 91, 8, 9, 0}, { 32, 86, 92, 8, 9, 0}, - { 32, 87, 93, 8, 9, 0}, { 32, 87, 94, 8, 9, 0}, { 32, 87, 96, 8, 9, 0}, { 32, 88, 97, 8, 9, 0}, { 32, 88, 98, 8, 9, 0}, - { 32, 88, 99, 8, 9, 0}, { 32, 89, 100, 8, 9, 0}, { 33, 89, 101, 8, 9, 0}, { 33, 89, 102, 8, 9, 0}, { 33, 90, 104, 8, 9, 0}, - { 33, 90, 105, 8, 9, 0}, { 33, 90, 106, 8, 9, 0}, { 33, 90, 107, 8, 9, 0}, { 33, 91, 108, 8, 9, 0}, { 33, 91, 109, 8, 9, 0}, - { 34, 91, 111, 8, 9, 0}, { 34, 91, 112, 8, 9, 0}, { 34, 92, 113, 8, 9, 0}, { 34, 92, 114, 8, 9, 0}, { 34, 92, 115, 8, 9, 0}, - { 34, 92, 117, 8, 9, 0}, { 34, 92, 118, 8, 9, 0}, { 35, 92, 119, 8, 10, 0}, { 35, 92, 120, 8, 10, 0}, { 35, 93, 121, 8, 10, 0}, - { 35, 93, 123, 8, 10, 0}, { 35, 93, 124, 8, 10, 0}, { 35, 93, 125, 8, 10, 0}, { 35, 93, 126, 8, 10, 0}, { 35, 93, 127, 8, 10, 0}, - { 36, 93, 129, 8, 10, 0}, { 36, 93, 130, 8, 10, 0}, { 36, 93, 131, 8, 10, 0}, { 36, 93, 132, 8, 10, 0}, { 36, 93, 134, 8, 10, 0}, - { 36, 92, 135, 8, 10, 0}, { 36, 92, 136, 8, 10, 0}, { 36, 92, 137, 8, 11, 0}, { 37, 92, 138, 8, 11, 0}, { 37, 92, 140, 8, 11, 0}, - { 37, 92, 141, 8, 11, 0}, { 37, 92, 142, 8, 11, 0}, { 37, 91, 143, 8, 11, 0}, { 37, 91, 144, 8, 11, 0}, { 37, 91, 145, 8, 11, 0}, - { 38, 91, 147, 8, 11, 0}, { 38, 90, 148, 8, 11, 0}, { 38, 90, 149, 8, 11, 0}, { 38, 90, 150, 8, 11, 0}, { 38, 90, 151, 8, 11, 0}, - { 38, 89, 152, 8, 11, 0}, { 38, 89, 154, 8, 11, 0}, { 38, 88, 155, 8, 11, 0}, { 39, 88, 156, 8, 12, 0}, { 39, 88, 157, 8, 12, 0}, - { 39, 87, 158, 8, 12, 0}, { 39, 87, 159, 8, 12, 0}, { 39, 86, 160, 8, 12, 0}, { 39, 86, 161, 8, 12, 0}, { 39, 86, 162, 8, 12, 0}, - { 40, 85, 163, 8, 12, 0}, { 40, 85, 165, 8, 12, 0}, { 40, 84, 166, 8, 12, 0}, { 40, 84, 167, 8, 12, 0}, { 40, 83, 168, 8, 12, 0}, - { 40, 82, 169, 8, 12, 0}, { 40, 82, 170, 8, 12, 0}, { 40, 81, 171, 8, 12, 0}, { 41, 81, 172, 8, 12, 0}, { 41, 80, 173, 8, 13, 0}, - { 41, 80, 174, 8, 13, 0}, { 41, 79, 174, 8, 13, 0}, { 41, 78, 175, 8, 13, 0}, { 41, 78, 176, 8, 13, 0}, { 41, 77, 177, 8, 13, 0}, - { 41, 76, 178, 8, 13, 0}, { 42, 76, 179, 8, 13, 0}, { 42, 75, 180, 8, 13, 0}, { 42, 74, 181, 8, 13, 0}, { 42, 73, 182, 8, 13, 0}, - { 42, 73, 182, 8, 13, 0}, { 42, 72, 183, 8, 13, 0}, { 42, 71, 184, 8, 13, 0}, { 43, 71, 185, 8, 13, 0}, { 43, 70, 186, 8, 13, 0}, - { 43, 69, 186, 8, 13, 0}, { 43, 68, 187, 8, 14, 0}, { 43, 67, 188, 8, 14, 0}, { 43, 67, 188, 8, 14, 0}, { 43, 66, 189, 8, 14, 0}, - { 43, 65, 190, 8, 14, 0}, { 44, 64, 190, 8, 14, 0}, { 44, 63, 191, 8, 14, 0}, { 44, 62, 192, 8, 14, 0}, { 44, 62, 192, 8, 14, 0}, - { 44, 61, 193, 8, 14, 0}, { 44, 60, 193, 8, 14, 0}, { 44, 59, 194, 8, 14, 0}, { 44, 58, 195, 8, 14, 0}, { 45, 57, 195, 8, 14, 0}, - { 45, 56, 196, 8, 14, 0}, { 45, 55, 196, 8, 14, 0}, { 45, 54, 196, 8, 15, 0}, { 45, 53, 197, 8, 15, 0}, { 45, 53, 197, 8, 15, 0}, - { 45, 52, 198, 8, 15, 0}, { 46, 51, 198, 8, 15, 0}, { 46, 50, 198, 8, 15, 0}, { 46, 49, 199, 8, 15, 0}, { 46, 48, 199, 8, 15, 0}, - { 46, 47, 199, 8, 15, 0}, { 46, 46, 200, 8, 15, 0}, { 46, 45, 200, 8, 15, 0}, { 46, 44, 200, 8, 15, 0}, { 47, 43, 200, 8, 15, 0}, - { 47, 42, 201, 8, 15, 0}, { 47, 41, 201, 8, 15, 0}, { 47, 40, 201, 8, 15, 0}, { 47, 39, 201, 8, 16, 0}, { 47, 38, 201, 8, 16, 0}, - { 47, 37, 201, 8, 16, 0}, { 47, 36, 202, 8, 16, 0}, { 48, 35, 202, 8, 16, 0}, { 48, 34, 202, 8, 16, 0}, { 48, 33, 202, 8, 16, 0}, + {16, 0, -1, 8, 2, 0}, {16, 1, -1, 8, 2, 0}, {16, 2, 0, 8, 2, 0}, {16, 3, 0, 8, 2, 0}, {17, 4, 1, 8, 2, 0}, + {17, 5, 1, 8, 2, 0}, {17, 6, 2, 8, 2, 0}, {17, 6, 2, 8, 2, 0}, {17, 7, 3, 8, 2, 0}, {17, 8, 3, 8, 2, 0}, + {17, 9, 4, 8, 2, 0}, {17, 10, 4, 8, 2, 0}, {18, 11, 5, 8, 2, 0}, {18, 12, 5, 8, 2, 0}, {18, 13, 6, 8, 2, 0}, + {18, 14, 6, 8, 2, 0}, {18, 14, 7, 8, 2, 0}, {18, 15, 7, 8, 2, 0}, {18, 16, 8, 8, 2, 0}, {18, 17, 9, 8, 2, 0}, + {19, 18, 9, 8, 2, 0}, {19, 19, 10, 8, 2, 0}, {19, 20, 10, 8, 2, 0}, {19, 21, 11, 8, 2, 0}, {19, 21, 11, 8, 2, 0}, + {19, 22, 12, 8, 2, 0}, {19, 23, 13, 8, 2, 0}, {20, 24, 13, 8, 2, 0}, {20, 25, 14, 8, 2, 0}, {20, 26, 14, 8, 2, 0}, + {20, 27, 15, 8, 2, 0}, {20, 28, 16, 8, 2, 0}, {20, 28, 16, 8, 2, 0}, {20, 29, 17, 8, 2, 0}, {20, 30, 17, 8, 3, 0}, + {21, 31, 18, 8, 3, 0}, {21, 32, 19, 8, 3, 0}, {21, 33, 19, 8, 3, 0}, {21, 33, 20, 8, 3, 0}, {21, 34, 21, 8, 3, 0}, + {21, 35, 21, 8, 3, 0}, {21, 36, 22, 8, 3, 0}, {21, 37, 23, 8, 3, 0}, {22, 38, 23, 8, 3, 0}, {22, 38, 24, 8, 3, 0}, + {22, 39, 25, 8, 3, 0}, {22, 40, 25, 8, 3, 0}, {22, 41, 26, 8, 3, 0}, {22, 42, 27, 8, 3, 0}, {22, 43, 28, 8, 3, 0}, + {23, 43, 28, 8, 3, 0}, {23, 44, 29, 8, 3, 0}, {23, 45, 30, 8, 3, 0}, {23, 46, 30, 8, 3, 0}, {23, 46, 31, 8, 3, 0}, + {23, 47, 32, 8, 3, 0}, {23, 48, 33, 8, 3, 0}, {23, 49, 33, 8, 3, 0}, {24, 50, 34, 8, 3, 0}, {24, 50, 35, 8, 3, 0}, + {24, 51, 36, 8, 3, 0}, {24, 52, 37, 8, 3, 0}, {24, 53, 37, 8, 3, 0}, {24, 53, 38, 8, 3, 0}, {24, 54, 39, 8, 3, 0}, + {24, 55, 40, 8, 3, 0}, {25, 56, 41, 8, 3, 0}, {25, 56, 41, 8, 3, 0}, {25, 57, 42, 8, 3, 0}, {25, 58, 43, 8, 3, 0}, + {25, 58, 44, 8, 3, 0}, {25, 59, 45, 8, 3, 0}, {25, 60, 46, 8, 3, 0}, {26, 61, 46, 8, 3, 0}, {26, 61, 47, 8, 3, 0}, + {26, 62, 48, 8, 3, 0}, {26, 63, 49, 8, 3, 0}, {26, 63, 50, 8, 3, 0}, {26, 64, 51, 8, 3, 0}, {26, 65, 52, 8, 3, 0}, + {26, 65, 53, 8, 3, 0}, {27, 66, 53, 8, 3, 0}, {27, 67, 54, 8, 3, 0}, {27, 67, 55, 8, 3, 0}, {27, 68, 56, 8, 4, 0}, + {27, 69, 57, 8, 4, 0}, {27, 69, 58, 8, 4, 0}, {27, 70, 59, 8, 4, 0}, {27, 70, 60, 8, 4, 0}, {28, 71, 61, 8, 4, 0}, + {28, 72, 62, 8, 4, 0}, {28, 72, 63, 8, 4, 0}, {28, 73, 64, 8, 4, 0}, {28, 74, 65, 8, 4, 0}, {28, 74, 66, 8, 4, 0}, + {28, 75, 67, 8, 4, 0}, {29, 75, 68, 8, 4, 0}, {29, 76, 69, 8, 4, 0}, {29, 76, 70, 8, 4, 0}, {29, 77, 71, 8, 4, 0}, + {29, 77, 72, 8, 4, 0}, {29, 78, 73, 8, 4, 0}, {29, 79, 74, 8, 4, 0}, {29, 79, 75, 8, 4, 0}, {30, 80, 76, 8, 4, 0}, + {30, 80, 77, 8, 4, 0}, {30, 81, 78, 8, 4, 0}, {30, 81, 79, 8, 4, 0}, {30, 82, 80, 8, 4, 0}, {30, 82, 81, 8, 4, 0}, + {30, 82, 82, 8, 4, 0}, {30, 83, 83, 8, 4, 0}, {31, 83, 84, 8, 4, 0}, {31, 84, 86, 8, 4, 0}, {31, 84, 87, 8, 4, 0}, + {31, 85, 88, 8, 4, 0}, {31, 85, 89, 8, 4, 0}, {31, 85, 90, 8, 4, 0}, {31, 86, 91, 8, 9, 0}, {32, 86, 92, 8, 9, 0}, + {32, 87, 93, 8, 9, 0}, {32, 87, 94, 8, 9, 0}, {32, 87, 96, 8, 9, 0}, {32, 88, 97, 8, 9, 0}, {32, 88, 98, 8, 9, 0}, + {32, 88, 99, 8, 9, 0}, {32, 89, 100, 8, 9, 0}, {33, 89, 101, 8, 9, 0}, {33, 89, 102, 8, 9, 0}, {33, 90, 104, 8, 9, 0}, + {33, 90, 105, 8, 9, 0}, {33, 90, 106, 8, 9, 0}, {33, 90, 107, 8, 9, 0}, {33, 91, 108, 8, 9, 0}, {33, 91, 109, 8, 9, 0}, + {34, 91, 111, 8, 9, 0}, {34, 91, 112, 8, 9, 0}, {34, 92, 113, 8, 9, 0}, {34, 92, 114, 8, 9, 0}, {34, 92, 115, 8, 9, 0}, + {34, 92, 117, 8, 9, 0}, {34, 92, 118, 8, 9, 0}, {35, 92, 119, 8, 10, 0}, {35, 92, 120, 8, 10, 0}, {35, 93, 121, 8, 10, 0}, + {35, 93, 123, 8, 10, 0}, {35, 93, 124, 8, 10, 0}, {35, 93, 125, 8, 10, 0}, {35, 93, 126, 8, 10, 0}, {35, 93, 127, 8, 10, 0}, + {36, 93, 129, 8, 10, 0}, {36, 93, 130, 8, 10, 0}, {36, 93, 131, 8, 10, 0}, {36, 93, 132, 8, 10, 0}, {36, 93, 134, 8, 10, 0}, + {36, 92, 135, 8, 10, 0}, {36, 92, 136, 8, 10, 0}, {36, 92, 137, 8, 11, 0}, {37, 92, 138, 8, 11, 0}, {37, 92, 140, 8, 11, 0}, + {37, 92, 141, 8, 11, 0}, {37, 92, 142, 8, 11, 0}, {37, 91, 143, 8, 11, 0}, {37, 91, 144, 8, 11, 0}, {37, 91, 145, 8, 11, 0}, + {38, 91, 147, 8, 11, 0}, {38, 90, 148, 8, 11, 0}, {38, 90, 149, 8, 11, 0}, {38, 90, 150, 8, 11, 0}, {38, 90, 151, 8, 11, 0}, + {38, 89, 152, 8, 11, 0}, {38, 89, 154, 8, 11, 0}, {38, 88, 155, 8, 11, 0}, {39, 88, 156, 8, 12, 0}, {39, 88, 157, 8, 12, 0}, + {39, 87, 158, 8, 12, 0}, {39, 87, 159, 8, 12, 0}, {39, 86, 160, 8, 12, 0}, {39, 86, 161, 8, 12, 0}, {39, 86, 162, 8, 12, 0}, + {40, 85, 163, 8, 12, 0}, {40, 85, 165, 8, 12, 0}, {40, 84, 166, 8, 12, 0}, {40, 84, 167, 8, 12, 0}, {40, 83, 168, 8, 12, 0}, + {40, 82, 169, 8, 12, 0}, {40, 82, 170, 8, 12, 0}, {40, 81, 171, 8, 12, 0}, {41, 81, 172, 8, 12, 0}, {41, 80, 173, 8, 13, 0}, + {41, 80, 174, 8, 13, 0}, {41, 79, 174, 8, 13, 0}, {41, 78, 175, 8, 13, 0}, {41, 78, 176, 8, 13, 0}, {41, 77, 177, 8, 13, 0}, + {41, 76, 178, 8, 13, 0}, {42, 76, 179, 8, 13, 0}, {42, 75, 180, 8, 13, 0}, {42, 74, 181, 8, 13, 0}, {42, 73, 182, 8, 13, 0}, + {42, 73, 182, 8, 13, 0}, {42, 72, 183, 8, 13, 0}, {42, 71, 184, 8, 13, 0}, {43, 71, 185, 8, 13, 0}, {43, 70, 186, 8, 13, 0}, + {43, 69, 186, 8, 13, 0}, {43, 68, 187, 8, 14, 0}, {43, 67, 188, 8, 14, 0}, {43, 67, 188, 8, 14, 0}, {43, 66, 189, 8, 14, 0}, + {43, 65, 190, 8, 14, 0}, {44, 64, 190, 8, 14, 0}, {44, 63, 191, 8, 14, 0}, {44, 62, 192, 8, 14, 0}, {44, 62, 192, 8, 14, 0}, + {44, 61, 193, 8, 14, 0}, {44, 60, 193, 8, 14, 0}, {44, 59, 194, 8, 14, 0}, {44, 58, 195, 8, 14, 0}, {45, 57, 195, 8, 14, 0}, + {45, 56, 196, 8, 14, 0}, {45, 55, 196, 8, 14, 0}, {45, 54, 196, 8, 15, 0}, {45, 53, 197, 8, 15, 0}, {45, 53, 197, 8, 15, 0}, + {45, 52, 198, 8, 15, 0}, {46, 51, 198, 8, 15, 0}, {46, 50, 198, 8, 15, 0}, {46, 49, 199, 8, 15, 0}, {46, 48, 199, 8, 15, 0}, + {46, 47, 199, 8, 15, 0}, {46, 46, 200, 8, 15, 0}, {46, 45, 200, 8, 15, 0}, {46, 44, 200, 8, 15, 0}, {47, 43, 200, 8, 15, 0}, + {47, 42, 201, 8, 15, 0}, {47, 41, 201, 8, 15, 0}, {47, 40, 201, 8, 15, 0}, {47, 39, 201, 8, 16, 0}, {47, 38, 201, 8, 16, 0}, + {47, 37, 201, 8, 16, 0}, {47, 36, 202, 8, 16, 0}, {48, 35, 202, 8, 16, 0}, {48, 34, 202, 8, 16, 0}, {48, 33, 202, 8, 16, 0}, }) CREATE_VEHICLE_INFO(TrackVehicleInfoRightMediumHalfLoopUp2, { - { 0, 16, -1, 16, 2, 0}, { 1, 16, -1, 16, 2, 0}, { 2, 16, 0, 16, 2, 0}, { 3, 16, 0, 16, 2, 0}, { 4, 15, 1, 16, 2, 0}, - { 5, 15, 1, 16, 2, 0}, { 6, 15, 2, 16, 2, 0}, { 6, 15, 2, 16, 2, 0}, { 7, 15, 3, 16, 2, 0}, { 8, 15, 3, 16, 2, 0}, - { 9, 15, 4, 16, 2, 0}, { 10, 15, 4, 16, 2, 0}, { 11, 14, 5, 16, 2, 0}, { 12, 14, 5, 16, 2, 0}, { 13, 14, 6, 16, 2, 0}, - { 14, 14, 6, 16, 2, 0}, { 14, 14, 7, 16, 2, 0}, { 15, 14, 7, 16, 2, 0}, { 16, 14, 8, 16, 2, 0}, { 17, 14, 9, 16, 2, 0}, - { 18, 13, 9, 16, 2, 0}, { 19, 13, 10, 16, 2, 0}, { 20, 13, 10, 16, 2, 0}, { 21, 13, 11, 16, 2, 0}, { 21, 13, 11, 16, 2, 0}, - { 22, 13, 12, 16, 2, 0}, { 23, 13, 13, 16, 2, 0}, { 24, 12, 13, 16, 2, 0}, { 25, 12, 14, 16, 2, 0}, { 26, 12, 14, 16, 2, 0}, - { 27, 12, 15, 16, 2, 0}, { 28, 12, 16, 16, 2, 0}, { 28, 12, 16, 16, 2, 0}, { 29, 12, 17, 16, 2, 0}, { 30, 12, 17, 16, 3, 0}, - { 31, 11, 18, 16, 3, 0}, { 32, 11, 19, 16, 3, 0}, { 33, 11, 19, 16, 3, 0}, { 33, 11, 20, 16, 3, 0}, { 34, 11, 21, 16, 3, 0}, - { 35, 11, 21, 16, 3, 0}, { 36, 11, 22, 16, 3, 0}, { 37, 11, 23, 16, 3, 0}, { 38, 10, 23, 16, 3, 0}, { 38, 10, 24, 16, 3, 0}, - { 39, 10, 25, 16, 3, 0}, { 40, 10, 25, 16, 3, 0}, { 41, 10, 26, 16, 3, 0}, { 42, 10, 27, 16, 3, 0}, { 43, 10, 28, 16, 3, 0}, - { 43, 9, 28, 16, 3, 0}, { 44, 9, 29, 16, 3, 0}, { 45, 9, 30, 16, 3, 0}, { 46, 9, 30, 16, 3, 0}, { 46, 9, 31, 16, 3, 0}, - { 47, 9, 32, 16, 3, 0}, { 48, 9, 33, 16, 3, 0}, { 49, 9, 33, 16, 3, 0}, { 50, 8, 34, 16, 3, 0}, { 50, 8, 35, 16, 3, 0}, - { 51, 8, 36, 16, 3, 0}, { 52, 8, 37, 16, 3, 0}, { 53, 8, 37, 16, 3, 0}, { 53, 8, 38, 16, 3, 0}, { 54, 8, 39, 16, 3, 0}, - { 55, 8, 40, 16, 3, 0}, { 56, 7, 41, 16, 3, 0}, { 56, 7, 41, 16, 3, 0}, { 57, 7, 42, 16, 3, 0}, { 58, 7, 43, 16, 3, 0}, - { 58, 7, 44, 16, 3, 0}, { 59, 7, 45, 16, 3, 0}, { 60, 7, 46, 16, 3, 0}, { 61, 6, 46, 16, 3, 0}, { 61, 6, 47, 16, 3, 0}, - { 62, 6, 48, 16, 3, 0}, { 63, 6, 49, 16, 3, 0}, { 63, 6, 50, 16, 3, 0}, { 64, 6, 51, 16, 3, 0}, { 65, 6, 52, 16, 3, 0}, - { 65, 6, 53, 16, 3, 0}, { 66, 5, 53, 16, 3, 0}, { 67, 5, 54, 16, 3, 0}, { 67, 5, 55, 16, 3, 0}, { 68, 5, 56, 16, 4, 0}, - { 69, 5, 57, 16, 4, 0}, { 69, 5, 58, 16, 4, 0}, { 70, 5, 59, 16, 4, 0}, { 70, 5, 60, 16, 4, 0}, { 71, 4, 61, 16, 4, 0}, - { 72, 4, 62, 16, 4, 0}, { 72, 4, 63, 16, 4, 0}, { 73, 4, 64, 16, 4, 0}, { 74, 4, 65, 16, 4, 0}, { 74, 4, 66, 16, 4, 0}, - { 75, 4, 67, 16, 4, 0}, { 75, 3, 68, 16, 4, 0}, { 76, 3, 69, 16, 4, 0}, { 76, 3, 70, 16, 4, 0}, { 77, 3, 71, 16, 4, 0}, - { 77, 3, 72, 16, 4, 0}, { 78, 3, 73, 16, 4, 0}, { 79, 3, 74, 16, 4, 0}, { 79, 3, 75, 16, 4, 0}, { 80, 2, 76, 16, 4, 0}, - { 80, 2, 77, 16, 4, 0}, { 81, 2, 78, 16, 4, 0}, { 81, 2, 79, 16, 4, 0}, { 82, 2, 80, 16, 4, 0}, { 82, 2, 81, 16, 4, 0}, - { 82, 2, 82, 16, 4, 0}, { 83, 2, 83, 16, 4, 0}, { 83, 1, 84, 16, 4, 0}, { 84, 1, 86, 16, 4, 0}, { 84, 1, 87, 16, 4, 0}, - { 85, 1, 88, 16, 4, 0}, { 85, 1, 89, 16, 4, 0}, { 85, 1, 90, 16, 4, 0}, { 86, 1, 91, 16, 9, 0}, { 86, 0, 92, 16, 9, 0}, - { 87, 0, 93, 16, 9, 0}, { 87, 0, 94, 16, 9, 0}, { 87, 0, 96, 16, 9, 0}, { 88, 0, 97, 16, 9, 0}, { 88, 0, 98, 16, 9, 0}, - { 88, 0, 99, 16, 9, 0}, { 89, 0, 100, 16, 9, 0}, { 89, -1, 101, 16, 9, 0}, { 89, -1, 102, 16, 9, 0}, { 90, -1, 104, 16, 9, 0}, - { 90, -1, 105, 16, 9, 0}, { 90, -1, 106, 16, 9, 0}, { 90, -1, 107, 16, 9, 0}, { 91, -1, 108, 16, 9, 0}, { 91, -1, 109, 16, 9, 0}, - { 91, -2, 111, 16, 9, 0}, { 91, -2, 112, 16, 9, 0}, { 92, -2, 113, 16, 9, 0}, { 92, -2, 114, 16, 9, 0}, { 92, -2, 115, 16, 9, 0}, - { 92, -2, 117, 16, 9, 0}, { 92, -2, 118, 16, 9, 0}, { 92, -3, 119, 16, 10, 0}, { 92, -3, 120, 16, 10, 0}, { 93, -3, 121, 16, 10, 0}, - { 93, -3, 123, 16, 10, 0}, { 93, -3, 124, 16, 10, 0}, { 93, -3, 125, 16, 10, 0}, { 93, -3, 126, 16, 10, 0}, { 93, -3, 127, 16, 10, 0}, - { 93, -4, 129, 16, 10, 0}, { 93, -4, 130, 16, 10, 0}, { 93, -4, 131, 16, 10, 0}, { 93, -4, 132, 16, 10, 0}, { 93, -4, 134, 16, 10, 0}, - { 92, -4, 135, 16, 10, 0}, { 92, -4, 136, 16, 10, 0}, { 92, -4, 137, 16, 11, 0}, { 92, -5, 138, 16, 11, 0}, { 92, -5, 140, 16, 11, 0}, - { 92, -5, 141, 16, 11, 0}, { 92, -5, 142, 16, 11, 0}, { 91, -5, 143, 16, 11, 0}, { 91, -5, 144, 16, 11, 0}, { 91, -5, 145, 16, 11, 0}, - { 91, -6, 147, 16, 11, 0}, { 90, -6, 148, 16, 11, 0}, { 90, -6, 149, 16, 11, 0}, { 90, -6, 150, 16, 11, 0}, { 90, -6, 151, 16, 11, 0}, - { 89, -6, 152, 16, 11, 0}, { 89, -6, 154, 16, 11, 0}, { 88, -6, 155, 16, 11, 0}, { 88, -7, 156, 16, 12, 0}, { 88, -7, 157, 16, 12, 0}, - { 87, -7, 158, 16, 12, 0}, { 87, -7, 159, 16, 12, 0}, { 86, -7, 160, 16, 12, 0}, { 86, -7, 161, 16, 12, 0}, { 86, -7, 162, 16, 12, 0}, - { 85, -8, 163, 16, 12, 0}, { 85, -8, 165, 16, 12, 0}, { 84, -8, 166, 16, 12, 0}, { 84, -8, 167, 16, 12, 0}, { 83, -8, 168, 16, 12, 0}, - { 82, -8, 169, 16, 12, 0}, { 82, -8, 170, 16, 12, 0}, { 81, -8, 171, 16, 12, 0}, { 81, -9, 172, 16, 12, 0}, { 80, -9, 173, 16, 13, 0}, - { 80, -9, 174, 16, 13, 0}, { 79, -9, 174, 16, 13, 0}, { 78, -9, 175, 16, 13, 0}, { 78, -9, 176, 16, 13, 0}, { 77, -9, 177, 16, 13, 0}, - { 76, -9, 178, 16, 13, 0}, { 76, -10, 179, 16, 13, 0}, { 75, -10, 180, 16, 13, 0}, { 74, -10, 181, 16, 13, 0}, { 73, -10, 182, 16, 13, 0}, - { 73, -10, 182, 16, 13, 0}, { 72, -10, 183, 16, 13, 0}, { 71, -10, 184, 16, 13, 0}, { 71, -11, 185, 16, 13, 0}, { 70, -11, 186, 16, 13, 0}, - { 69, -11, 186, 16, 13, 0}, { 68, -11, 187, 16, 14, 0}, { 67, -11, 188, 16, 14, 0}, { 67, -11, 188, 16, 14, 0}, { 66, -11, 189, 16, 14, 0}, - { 65, -11, 190, 16, 14, 0}, { 64, -12, 190, 16, 14, 0}, { 63, -12, 191, 16, 14, 0}, { 62, -12, 192, 16, 14, 0}, { 62, -12, 192, 16, 14, 0}, - { 61, -12, 193, 16, 14, 0}, { 60, -12, 193, 16, 14, 0}, { 59, -12, 194, 16, 14, 0}, { 58, -12, 195, 16, 14, 0}, { 57, -13, 195, 16, 14, 0}, - { 56, -13, 196, 16, 14, 0}, { 55, -13, 196, 16, 14, 0}, { 54, -13, 196, 16, 15, 0}, { 53, -13, 197, 16, 15, 0}, { 53, -13, 197, 16, 15, 0}, - { 52, -13, 198, 16, 15, 0}, { 51, -14, 198, 16, 15, 0}, { 50, -14, 198, 16, 15, 0}, { 49, -14, 199, 16, 15, 0}, { 48, -14, 199, 16, 15, 0}, - { 47, -14, 199, 16, 15, 0}, { 46, -14, 200, 16, 15, 0}, { 45, -14, 200, 16, 15, 0}, { 44, -14, 200, 16, 15, 0}, { 43, -15, 200, 16, 15, 0}, - { 42, -15, 201, 16, 15, 0}, { 41, -15, 201, 16, 15, 0}, { 40, -15, 201, 16, 15, 0}, { 39, -15, 201, 16, 16, 0}, { 38, -15, 201, 16, 16, 0}, - { 37, -15, 201, 16, 16, 0}, { 36, -15, 202, 16, 16, 0}, { 35, -16, 202, 16, 16, 0}, { 34, -16, 202, 16, 16, 0}, { 33, -16, 202, 16, 16, 0}, + {0, 16, -1, 16, 2, 0}, {1, 16, -1, 16, 2, 0}, {2, 16, 0, 16, 2, 0}, {3, 16, 0, 16, 2, 0}, {4, 15, 1, 16, 2, 0}, + {5, 15, 1, 16, 2, 0}, {6, 15, 2, 16, 2, 0}, {6, 15, 2, 16, 2, 0}, {7, 15, 3, 16, 2, 0}, {8, 15, 3, 16, 2, 0}, + {9, 15, 4, 16, 2, 0}, {10, 15, 4, 16, 2, 0}, {11, 14, 5, 16, 2, 0}, {12, 14, 5, 16, 2, 0}, {13, 14, 6, 16, 2, 0}, + {14, 14, 6, 16, 2, 0}, {14, 14, 7, 16, 2, 0}, {15, 14, 7, 16, 2, 0}, {16, 14, 8, 16, 2, 0}, {17, 14, 9, 16, 2, 0}, + {18, 13, 9, 16, 2, 0}, {19, 13, 10, 16, 2, 0}, {20, 13, 10, 16, 2, 0}, {21, 13, 11, 16, 2, 0}, {21, 13, 11, 16, 2, 0}, + {22, 13, 12, 16, 2, 0}, {23, 13, 13, 16, 2, 0}, {24, 12, 13, 16, 2, 0}, {25, 12, 14, 16, 2, 0}, {26, 12, 14, 16, 2, 0}, + {27, 12, 15, 16, 2, 0}, {28, 12, 16, 16, 2, 0}, {28, 12, 16, 16, 2, 0}, {29, 12, 17, 16, 2, 0}, {30, 12, 17, 16, 3, 0}, + {31, 11, 18, 16, 3, 0}, {32, 11, 19, 16, 3, 0}, {33, 11, 19, 16, 3, 0}, {33, 11, 20, 16, 3, 0}, {34, 11, 21, 16, 3, 0}, + {35, 11, 21, 16, 3, 0}, {36, 11, 22, 16, 3, 0}, {37, 11, 23, 16, 3, 0}, {38, 10, 23, 16, 3, 0}, {38, 10, 24, 16, 3, 0}, + {39, 10, 25, 16, 3, 0}, {40, 10, 25, 16, 3, 0}, {41, 10, 26, 16, 3, 0}, {42, 10, 27, 16, 3, 0}, {43, 10, 28, 16, 3, 0}, + {43, 9, 28, 16, 3, 0}, {44, 9, 29, 16, 3, 0}, {45, 9, 30, 16, 3, 0}, {46, 9, 30, 16, 3, 0}, {46, 9, 31, 16, 3, 0}, + {47, 9, 32, 16, 3, 0}, {48, 9, 33, 16, 3, 0}, {49, 9, 33, 16, 3, 0}, {50, 8, 34, 16, 3, 0}, {50, 8, 35, 16, 3, 0}, + {51, 8, 36, 16, 3, 0}, {52, 8, 37, 16, 3, 0}, {53, 8, 37, 16, 3, 0}, {53, 8, 38, 16, 3, 0}, {54, 8, 39, 16, 3, 0}, + {55, 8, 40, 16, 3, 0}, {56, 7, 41, 16, 3, 0}, {56, 7, 41, 16, 3, 0}, {57, 7, 42, 16, 3, 0}, {58, 7, 43, 16, 3, 0}, + {58, 7, 44, 16, 3, 0}, {59, 7, 45, 16, 3, 0}, {60, 7, 46, 16, 3, 0}, {61, 6, 46, 16, 3, 0}, {61, 6, 47, 16, 3, 0}, + {62, 6, 48, 16, 3, 0}, {63, 6, 49, 16, 3, 0}, {63, 6, 50, 16, 3, 0}, {64, 6, 51, 16, 3, 0}, {65, 6, 52, 16, 3, 0}, + {65, 6, 53, 16, 3, 0}, {66, 5, 53, 16, 3, 0}, {67, 5, 54, 16, 3, 0}, {67, 5, 55, 16, 3, 0}, {68, 5, 56, 16, 4, 0}, + {69, 5, 57, 16, 4, 0}, {69, 5, 58, 16, 4, 0}, {70, 5, 59, 16, 4, 0}, {70, 5, 60, 16, 4, 0}, {71, 4, 61, 16, 4, 0}, + {72, 4, 62, 16, 4, 0}, {72, 4, 63, 16, 4, 0}, {73, 4, 64, 16, 4, 0}, {74, 4, 65, 16, 4, 0}, {74, 4, 66, 16, 4, 0}, + {75, 4, 67, 16, 4, 0}, {75, 3, 68, 16, 4, 0}, {76, 3, 69, 16, 4, 0}, {76, 3, 70, 16, 4, 0}, {77, 3, 71, 16, 4, 0}, + {77, 3, 72, 16, 4, 0}, {78, 3, 73, 16, 4, 0}, {79, 3, 74, 16, 4, 0}, {79, 3, 75, 16, 4, 0}, {80, 2, 76, 16, 4, 0}, + {80, 2, 77, 16, 4, 0}, {81, 2, 78, 16, 4, 0}, {81, 2, 79, 16, 4, 0}, {82, 2, 80, 16, 4, 0}, {82, 2, 81, 16, 4, 0}, + {82, 2, 82, 16, 4, 0}, {83, 2, 83, 16, 4, 0}, {83, 1, 84, 16, 4, 0}, {84, 1, 86, 16, 4, 0}, {84, 1, 87, 16, 4, 0}, + {85, 1, 88, 16, 4, 0}, {85, 1, 89, 16, 4, 0}, {85, 1, 90, 16, 4, 0}, {86, 1, 91, 16, 9, 0}, {86, 0, 92, 16, 9, 0}, + {87, 0, 93, 16, 9, 0}, {87, 0, 94, 16, 9, 0}, {87, 0, 96, 16, 9, 0}, {88, 0, 97, 16, 9, 0}, {88, 0, 98, 16, 9, 0}, + {88, 0, 99, 16, 9, 0}, {89, 0, 100, 16, 9, 0}, {89, -1, 101, 16, 9, 0}, {89, -1, 102, 16, 9, 0}, {90, -1, 104, 16, 9, 0}, + {90, -1, 105, 16, 9, 0}, {90, -1, 106, 16, 9, 0}, {90, -1, 107, 16, 9, 0}, {91, -1, 108, 16, 9, 0}, {91, -1, 109, 16, 9, 0}, + {91, -2, 111, 16, 9, 0}, {91, -2, 112, 16, 9, 0}, {92, -2, 113, 16, 9, 0}, {92, -2, 114, 16, 9, 0}, {92, -2, 115, 16, 9, 0}, + {92, -2, 117, 16, 9, 0}, {92, -2, 118, 16, 9, 0}, {92, -3, 119, 16, 10, 0}, {92, -3, 120, 16, 10, 0}, {93, -3, 121, 16, 10, 0}, + {93, -3, 123, 16, 10, 0}, {93, -3, 124, 16, 10, 0}, {93, -3, 125, 16, 10, 0}, {93, -3, 126, 16, 10, 0}, {93, -3, 127, 16, 10, 0}, + {93, -4, 129, 16, 10, 0}, {93, -4, 130, 16, 10, 0}, {93, -4, 131, 16, 10, 0}, {93, -4, 132, 16, 10, 0}, {93, -4, 134, 16, 10, 0}, + {92, -4, 135, 16, 10, 0}, {92, -4, 136, 16, 10, 0}, {92, -4, 137, 16, 11, 0}, {92, -5, 138, 16, 11, 0}, {92, -5, 140, 16, 11, 0}, + {92, -5, 141, 16, 11, 0}, {92, -5, 142, 16, 11, 0}, {91, -5, 143, 16, 11, 0}, {91, -5, 144, 16, 11, 0}, {91, -5, 145, 16, 11, 0}, + {91, -6, 147, 16, 11, 0}, {90, -6, 148, 16, 11, 0}, {90, -6, 149, 16, 11, 0}, {90, -6, 150, 16, 11, 0}, {90, -6, 151, 16, 11, 0}, + {89, -6, 152, 16, 11, 0}, {89, -6, 154, 16, 11, 0}, {88, -6, 155, 16, 11, 0}, {88, -7, 156, 16, 12, 0}, {88, -7, 157, 16, 12, 0}, + {87, -7, 158, 16, 12, 0}, {87, -7, 159, 16, 12, 0}, {86, -7, 160, 16, 12, 0}, {86, -7, 161, 16, 12, 0}, {86, -7, 162, 16, 12, 0}, + {85, -8, 163, 16, 12, 0}, {85, -8, 165, 16, 12, 0}, {84, -8, 166, 16, 12, 0}, {84, -8, 167, 16, 12, 0}, {83, -8, 168, 16, 12, 0}, + {82, -8, 169, 16, 12, 0}, {82, -8, 170, 16, 12, 0}, {81, -8, 171, 16, 12, 0}, {81, -9, 172, 16, 12, 0}, {80, -9, 173, 16, 13, 0}, + {80, -9, 174, 16, 13, 0}, {79, -9, 174, 16, 13, 0}, {78, -9, 175, 16, 13, 0}, {78, -9, 176, 16, 13, 0}, {77, -9, 177, 16, 13, 0}, + {76, -9, 178, 16, 13, 0}, {76, -10, 179, 16, 13, 0}, {75, -10, 180, 16, 13, 0}, {74, -10, 181, 16, 13, 0}, {73, -10, 182, 16, 13, 0}, + {73, -10, 182, 16, 13, 0}, {72, -10, 183, 16, 13, 0}, {71, -10, 184, 16, 13, 0}, {71, -11, 185, 16, 13, 0}, {70, -11, 186, 16, 13, 0}, + {69, -11, 186, 16, 13, 0}, {68, -11, 187, 16, 14, 0}, {67, -11, 188, 16, 14, 0}, {67, -11, 188, 16, 14, 0}, {66, -11, 189, 16, 14, 0}, + {65, -11, 190, 16, 14, 0}, {64, -12, 190, 16, 14, 0}, {63, -12, 191, 16, 14, 0}, {62, -12, 192, 16, 14, 0}, {62, -12, 192, 16, 14, 0}, + {61, -12, 193, 16, 14, 0}, {60, -12, 193, 16, 14, 0}, {59, -12, 194, 16, 14, 0}, {58, -12, 195, 16, 14, 0}, {57, -13, 195, 16, 14, 0}, + {56, -13, 196, 16, 14, 0}, {55, -13, 196, 16, 14, 0}, {54, -13, 196, 16, 15, 0}, {53, -13, 197, 16, 15, 0}, {53, -13, 197, 16, 15, 0}, + {52, -13, 198, 16, 15, 0}, {51, -14, 198, 16, 15, 0}, {50, -14, 198, 16, 15, 0}, {49, -14, 199, 16, 15, 0}, {48, -14, 199, 16, 15, 0}, + {47, -14, 199, 16, 15, 0}, {46, -14, 200, 16, 15, 0}, {45, -14, 200, 16, 15, 0}, {44, -14, 200, 16, 15, 0}, {43, -15, 200, 16, 15, 0}, + {42, -15, 201, 16, 15, 0}, {41, -15, 201, 16, 15, 0}, {40, -15, 201, 16, 15, 0}, {39, -15, 201, 16, 16, 0}, {38, -15, 201, 16, 16, 0}, + {37, -15, 201, 16, 16, 0}, {36, -15, 202, 16, 16, 0}, {35, -16, 202, 16, 16, 0}, {34, -16, 202, 16, 16, 0}, {33, -16, 202, 16, 16, 0}, }) CREATE_VEHICLE_INFO(TrackVehicleInfoRightMediumHalfLoopUp3, { - { 16, 31, -1, 24, 2, 0}, { 16, 30, 0, 24, 2, 0}, { 16, 29, 0, 24, 2, 0}, { 15, 28, 1, 24, 2, 0}, { 15, 27, 1, 24, 2, 0}, - { 15, 26, 2, 24, 2, 0}, { 15, 26, 2, 24, 2, 0}, { 15, 25, 3, 24, 2, 0}, { 15, 24, 3, 24, 2, 0}, { 15, 23, 4, 24, 2, 0}, - { 15, 22, 4, 24, 2, 0}, { 14, 21, 5, 24, 2, 0}, { 14, 20, 5, 24, 2, 0}, { 14, 19, 6, 24, 2, 0}, { 14, 18, 6, 24, 2, 0}, - { 14, 18, 7, 24, 2, 0}, { 14, 17, 7, 24, 2, 0}, { 14, 16, 8, 24, 2, 0}, { 14, 15, 9, 24, 2, 0}, { 13, 14, 9, 24, 2, 0}, - { 13, 13, 10, 24, 2, 0}, { 13, 12, 10, 24, 2, 0}, { 13, 11, 11, 24, 2, 0}, { 13, 11, 11, 24, 2, 0}, { 13, 10, 12, 24, 2, 0}, - { 13, 9, 13, 24, 2, 0}, { 12, 8, 13, 24, 2, 0}, { 12, 7, 14, 24, 2, 0}, { 12, 6, 14, 24, 2, 0}, { 12, 5, 15, 24, 2, 0}, - { 12, 4, 16, 24, 2, 0}, { 12, 4, 16, 24, 2, 0}, { 12, 3, 17, 24, 2, 0}, { 12, 2, 17, 24, 3, 0}, { 11, 1, 18, 24, 3, 0}, - { 11, 0, 19, 24, 3, 0}, { 11, -1, 19, 24, 3, 0}, { 11, -1, 20, 24, 3, 0}, { 11, -2, 21, 24, 3, 0}, { 11, -3, 21, 24, 3, 0}, - { 11, -4, 22, 24, 3, 0}, { 11, -5, 23, 24, 3, 0}, { 10, -6, 23, 24, 3, 0}, { 10, -6, 24, 24, 3, 0}, { 10, -7, 25, 24, 3, 0}, - { 10, -8, 25, 24, 3, 0}, { 10, -9, 26, 24, 3, 0}, { 10, -10, 27, 24, 3, 0}, { 10, -11, 28, 24, 3, 0}, { 9, -11, 28, 24, 3, 0}, - { 9, -12, 29, 24, 3, 0}, { 9, -13, 30, 24, 3, 0}, { 9, -14, 30, 24, 3, 0}, { 9, -14, 31, 24, 3, 0}, { 9, -15, 32, 24, 3, 0}, - { 9, -16, 33, 24, 3, 0}, { 9, -17, 33, 24, 3, 0}, { 8, -18, 34, 24, 3, 0}, { 8, -18, 35, 24, 3, 0}, { 8, -19, 36, 24, 3, 0}, - { 8, -20, 37, 24, 3, 0}, { 8, -21, 37, 24, 3, 0}, { 8, -21, 38, 24, 3, 0}, { 8, -22, 39, 24, 3, 0}, { 8, -23, 40, 24, 3, 0}, - { 7, -24, 41, 24, 3, 0}, { 7, -24, 41, 24, 3, 0}, { 7, -25, 42, 24, 3, 0}, { 7, -26, 43, 24, 3, 0}, { 7, -26, 44, 24, 3, 0}, - { 7, -27, 45, 24, 3, 0}, { 7, -28, 46, 24, 3, 0}, { 6, -29, 46, 24, 3, 0}, { 6, -29, 47, 24, 3, 0}, { 6, -30, 48, 24, 3, 0}, - { 6, -31, 49, 24, 3, 0}, { 6, -31, 50, 24, 3, 0}, { 6, -32, 51, 24, 3, 0}, { 6, -33, 52, 24, 3, 0}, { 6, -33, 53, 24, 3, 0}, - { 5, -34, 53, 24, 3, 0}, { 5, -35, 54, 24, 3, 0}, { 5, -35, 55, 24, 3, 0}, { 5, -36, 56, 24, 4, 0}, { 5, -37, 57, 24, 4, 0}, - { 5, -37, 58, 24, 4, 0}, { 5, -38, 59, 24, 4, 0}, { 5, -38, 60, 24, 4, 0}, { 4, -39, 61, 24, 4, 0}, { 4, -40, 62, 24, 4, 0}, - { 4, -40, 63, 24, 4, 0}, { 4, -41, 64, 24, 4, 0}, { 4, -42, 65, 24, 4, 0}, { 4, -42, 66, 24, 4, 0}, { 4, -43, 67, 24, 4, 0}, - { 3, -43, 68, 24, 4, 0}, { 3, -44, 69, 24, 4, 0}, { 3, -44, 70, 24, 4, 0}, { 3, -45, 71, 24, 4, 0}, { 3, -45, 72, 24, 4, 0}, - { 3, -46, 73, 24, 4, 0}, { 3, -47, 74, 24, 4, 0}, { 3, -47, 75, 24, 4, 0}, { 2, -48, 76, 24, 4, 0}, { 2, -48, 77, 24, 4, 0}, - { 2, -49, 78, 24, 4, 0}, { 2, -49, 79, 24, 4, 0}, { 2, -50, 80, 24, 4, 0}, { 2, -50, 81, 24, 4, 0}, { 2, -50, 82, 24, 4, 0}, - { 2, -51, 83, 24, 4, 0}, { 1, -51, 84, 24, 4, 0}, { 1, -52, 86, 24, 4, 0}, { 1, -52, 87, 24, 4, 0}, { 1, -53, 88, 24, 4, 0}, - { 1, -53, 89, 24, 4, 0}, { 1, -53, 90, 24, 4, 0}, { 1, -54, 91, 24, 9, 0}, { 0, -54, 92, 24, 9, 0}, { 0, -55, 93, 24, 9, 0}, - { 0, -55, 94, 24, 9, 0}, { 0, -55, 96, 24, 9, 0}, { 0, -56, 97, 24, 9, 0}, { 0, -56, 98, 24, 9, 0}, { 0, -56, 99, 24, 9, 0}, - { 0, -57, 100, 24, 9, 0}, { -1, -57, 101, 24, 9, 0}, { -1, -57, 102, 24, 9, 0}, { -1, -58, 104, 24, 9, 0}, { -1, -58, 105, 24, 9, 0}, - { -1, -58, 106, 24, 9, 0}, { -1, -58, 107, 24, 9, 0}, { -1, -59, 108, 24, 9, 0}, { -1, -59, 109, 24, 9, 0}, { -2, -59, 111, 24, 9, 0}, - { -2, -59, 112, 24, 9, 0}, { -2, -60, 113, 24, 9, 0}, { -2, -60, 114, 24, 9, 0}, { -2, -60, 115, 24, 9, 0}, { -2, -60, 117, 24, 9, 0}, - { -2, -60, 118, 24, 9, 0}, { -3, -60, 119, 24, 10, 0}, { -3, -60, 120, 24, 10, 0}, { -3, -61, 121, 24, 10, 0}, { -3, -61, 123, 24, 10, 0}, - { -3, -61, 124, 24, 10, 0}, { -3, -61, 125, 24, 10, 0}, { -3, -61, 126, 24, 10, 0}, { -3, -61, 127, 24, 10, 0}, { -4, -61, 129, 24, 10, 0}, - { -4, -61, 130, 24, 10, 0}, { -4, -61, 131, 24, 10, 0}, { -4, -61, 132, 24, 10, 0}, { -4, -61, 134, 24, 10, 0}, { -4, -60, 135, 24, 10, 0}, - { -4, -60, 136, 24, 10, 0}, { -4, -60, 137, 24, 11, 0}, { -5, -60, 138, 24, 11, 0}, { -5, -60, 140, 24, 11, 0}, { -5, -60, 141, 24, 11, 0}, - { -5, -60, 142, 24, 11, 0}, { -5, -59, 143, 24, 11, 0}, { -5, -59, 144, 24, 11, 0}, { -5, -59, 145, 24, 11, 0}, { -6, -59, 147, 24, 11, 0}, - { -6, -58, 148, 24, 11, 0}, { -6, -58, 149, 24, 11, 0}, { -6, -58, 150, 24, 11, 0}, { -6, -58, 151, 24, 11, 0}, { -6, -57, 152, 24, 11, 0}, - { -6, -57, 154, 24, 11, 0}, { -6, -56, 155, 24, 11, 0}, { -7, -56, 156, 24, 12, 0}, { -7, -56, 157, 24, 12, 0}, { -7, -55, 158, 24, 12, 0}, - { -7, -55, 159, 24, 12, 0}, { -7, -54, 160, 24, 12, 0}, { -7, -54, 161, 24, 12, 0}, { -7, -54, 162, 24, 12, 0}, { -8, -53, 163, 24, 12, 0}, - { -8, -53, 165, 24, 12, 0}, { -8, -52, 166, 24, 12, 0}, { -8, -52, 167, 24, 12, 0}, { -8, -51, 168, 24, 12, 0}, { -8, -50, 169, 24, 12, 0}, - { -8, -50, 170, 24, 12, 0}, { -8, -49, 171, 24, 12, 0}, { -9, -49, 172, 24, 12, 0}, { -9, -48, 173, 24, 13, 0}, { -9, -48, 174, 24, 13, 0}, - { -9, -47, 174, 24, 13, 0}, { -9, -46, 175, 24, 13, 0}, { -9, -46, 176, 24, 13, 0}, { -9, -45, 177, 24, 13, 0}, { -9, -44, 178, 24, 13, 0}, - { -10, -44, 179, 24, 13, 0}, { -10, -43, 180, 24, 13, 0}, { -10, -42, 181, 24, 13, 0}, { -10, -41, 182, 24, 13, 0}, { -10, -41, 182, 24, 13, 0}, - { -10, -40, 183, 24, 13, 0}, { -10, -39, 184, 24, 13, 0}, { -11, -39, 185, 24, 13, 0}, { -11, -38, 186, 24, 13, 0}, { -11, -37, 186, 24, 13, 0}, - { -11, -36, 187, 24, 14, 0}, { -11, -35, 188, 24, 14, 0}, { -11, -35, 188, 24, 14, 0}, { -11, -34, 189, 24, 14, 0}, { -11, -33, 190, 24, 14, 0}, - { -12, -32, 190, 24, 14, 0}, { -12, -31, 191, 24, 14, 0}, { -12, -30, 192, 24, 14, 0}, { -12, -30, 192, 24, 14, 0}, { -12, -29, 193, 24, 14, 0}, - { -12, -28, 193, 24, 14, 0}, { -12, -27, 194, 24, 14, 0}, { -12, -26, 195, 24, 14, 0}, { -13, -25, 195, 24, 14, 0}, { -13, -24, 196, 24, 14, 0}, - { -13, -23, 196, 24, 14, 0}, { -13, -22, 196, 24, 15, 0}, { -13, -21, 197, 24, 15, 0}, { -13, -21, 197, 24, 15, 0}, { -13, -20, 198, 24, 15, 0}, - { -14, -19, 198, 24, 15, 0}, { -14, -18, 198, 24, 15, 0}, { -14, -17, 199, 24, 15, 0}, { -14, -16, 199, 24, 15, 0}, { -14, -15, 199, 24, 15, 0}, - { -14, -14, 200, 24, 15, 0}, { -14, -13, 200, 24, 15, 0}, { -14, -12, 200, 24, 15, 0}, { -15, -11, 200, 24, 15, 0}, { -15, -10, 201, 24, 15, 0}, - { -15, -9, 201, 24, 15, 0}, { -15, -8, 201, 24, 15, 0}, { -15, -7, 201, 24, 16, 0}, { -15, -6, 201, 24, 16, 0}, { -15, -5, 201, 24, 16, 0}, - { -15, -4, 202, 24, 16, 0}, { -16, -3, 202, 24, 16, 0}, { -16, -2, 202, 24, 16, 0}, { -16, -1, 202, 24, 16, 0}, { -16, 0, 202, 24, 16, 0}, + {16, 31, -1, 24, 2, 0}, {16, 30, 0, 24, 2, 0}, {16, 29, 0, 24, 2, 0}, {15, 28, 1, 24, 2, 0}, {15, 27, 1, 24, 2, 0}, + {15, 26, 2, 24, 2, 0}, {15, 26, 2, 24, 2, 0}, {15, 25, 3, 24, 2, 0}, {15, 24, 3, 24, 2, 0}, {15, 23, 4, 24, 2, 0}, + {15, 22, 4, 24, 2, 0}, {14, 21, 5, 24, 2, 0}, {14, 20, 5, 24, 2, 0}, {14, 19, 6, 24, 2, 0}, {14, 18, 6, 24, 2, 0}, + {14, 18, 7, 24, 2, 0}, {14, 17, 7, 24, 2, 0}, {14, 16, 8, 24, 2, 0}, {14, 15, 9, 24, 2, 0}, {13, 14, 9, 24, 2, 0}, + {13, 13, 10, 24, 2, 0}, {13, 12, 10, 24, 2, 0}, {13, 11, 11, 24, 2, 0}, {13, 11, 11, 24, 2, 0}, {13, 10, 12, 24, 2, 0}, + {13, 9, 13, 24, 2, 0}, {12, 8, 13, 24, 2, 0}, {12, 7, 14, 24, 2, 0}, {12, 6, 14, 24, 2, 0}, {12, 5, 15, 24, 2, 0}, + {12, 4, 16, 24, 2, 0}, {12, 4, 16, 24, 2, 0}, {12, 3, 17, 24, 2, 0}, {12, 2, 17, 24, 3, 0}, {11, 1, 18, 24, 3, 0}, + {11, 0, 19, 24, 3, 0}, {11, -1, 19, 24, 3, 0}, {11, -1, 20, 24, 3, 0}, {11, -2, 21, 24, 3, 0}, {11, -3, 21, 24, 3, 0}, + {11, -4, 22, 24, 3, 0}, {11, -5, 23, 24, 3, 0}, {10, -6, 23, 24, 3, 0}, {10, -6, 24, 24, 3, 0}, {10, -7, 25, 24, 3, 0}, + {10, -8, 25, 24, 3, 0}, {10, -9, 26, 24, 3, 0}, {10, -10, 27, 24, 3, 0}, {10, -11, 28, 24, 3, 0}, {9, -11, 28, 24, 3, 0}, + {9, -12, 29, 24, 3, 0}, {9, -13, 30, 24, 3, 0}, {9, -14, 30, 24, 3, 0}, {9, -14, 31, 24, 3, 0}, {9, -15, 32, 24, 3, 0}, + {9, -16, 33, 24, 3, 0}, {9, -17, 33, 24, 3, 0}, {8, -18, 34, 24, 3, 0}, {8, -18, 35, 24, 3, 0}, {8, -19, 36, 24, 3, 0}, + {8, -20, 37, 24, 3, 0}, {8, -21, 37, 24, 3, 0}, {8, -21, 38, 24, 3, 0}, {8, -22, 39, 24, 3, 0}, {8, -23, 40, 24, 3, 0}, + {7, -24, 41, 24, 3, 0}, {7, -24, 41, 24, 3, 0}, {7, -25, 42, 24, 3, 0}, {7, -26, 43, 24, 3, 0}, {7, -26, 44, 24, 3, 0}, + {7, -27, 45, 24, 3, 0}, {7, -28, 46, 24, 3, 0}, {6, -29, 46, 24, 3, 0}, {6, -29, 47, 24, 3, 0}, {6, -30, 48, 24, 3, 0}, + {6, -31, 49, 24, 3, 0}, {6, -31, 50, 24, 3, 0}, {6, -32, 51, 24, 3, 0}, {6, -33, 52, 24, 3, 0}, {6, -33, 53, 24, 3, 0}, + {5, -34, 53, 24, 3, 0}, {5, -35, 54, 24, 3, 0}, {5, -35, 55, 24, 3, 0}, {5, -36, 56, 24, 4, 0}, {5, -37, 57, 24, 4, 0}, + {5, -37, 58, 24, 4, 0}, {5, -38, 59, 24, 4, 0}, {5, -38, 60, 24, 4, 0}, {4, -39, 61, 24, 4, 0}, {4, -40, 62, 24, 4, 0}, + {4, -40, 63, 24, 4, 0}, {4, -41, 64, 24, 4, 0}, {4, -42, 65, 24, 4, 0}, {4, -42, 66, 24, 4, 0}, {4, -43, 67, 24, 4, 0}, + {3, -43, 68, 24, 4, 0}, {3, -44, 69, 24, 4, 0}, {3, -44, 70, 24, 4, 0}, {3, -45, 71, 24, 4, 0}, {3, -45, 72, 24, 4, 0}, + {3, -46, 73, 24, 4, 0}, {3, -47, 74, 24, 4, 0}, {3, -47, 75, 24, 4, 0}, {2, -48, 76, 24, 4, 0}, {2, -48, 77, 24, 4, 0}, + {2, -49, 78, 24, 4, 0}, {2, -49, 79, 24, 4, 0}, {2, -50, 80, 24, 4, 0}, {2, -50, 81, 24, 4, 0}, {2, -50, 82, 24, 4, 0}, + {2, -51, 83, 24, 4, 0}, {1, -51, 84, 24, 4, 0}, {1, -52, 86, 24, 4, 0}, {1, -52, 87, 24, 4, 0}, {1, -53, 88, 24, 4, 0}, + {1, -53, 89, 24, 4, 0}, {1, -53, 90, 24, 4, 0}, {1, -54, 91, 24, 9, 0}, {0, -54, 92, 24, 9, 0}, {0, -55, 93, 24, 9, 0}, + {0, -55, 94, 24, 9, 0}, {0, -55, 96, 24, 9, 0}, {0, -56, 97, 24, 9, 0}, {0, -56, 98, 24, 9, 0}, {0, -56, 99, 24, 9, 0}, + {0, -57, 100, 24, 9, 0}, {-1, -57, 101, 24, 9, 0}, {-1, -57, 102, 24, 9, 0}, {-1, -58, 104, 24, 9, 0}, {-1, -58, 105, 24, 9, 0}, + {-1, -58, 106, 24, 9, 0}, {-1, -58, 107, 24, 9, 0}, {-1, -59, 108, 24, 9, 0}, {-1, -59, 109, 24, 9, 0}, {-2, -59, 111, 24, 9, 0}, + {-2, -59, 112, 24, 9, 0}, {-2, -60, 113, 24, 9, 0}, {-2, -60, 114, 24, 9, 0}, {-2, -60, 115, 24, 9, 0}, {-2, -60, 117, 24, 9, 0}, + {-2, -60, 118, 24, 9, 0}, {-3, -60, 119, 24, 10, 0}, {-3, -60, 120, 24, 10, 0}, {-3, -61, 121, 24, 10, 0}, {-3, -61, 123, 24, 10, 0}, + {-3, -61, 124, 24, 10, 0}, {-3, -61, 125, 24, 10, 0}, {-3, -61, 126, 24, 10, 0}, {-3, -61, 127, 24, 10, 0}, {-4, -61, 129, 24, 10, 0}, + {-4, -61, 130, 24, 10, 0}, {-4, -61, 131, 24, 10, 0}, {-4, -61, 132, 24, 10, 0}, {-4, -61, 134, 24, 10, 0}, {-4, -60, 135, 24, 10, 0}, + {-4, -60, 136, 24, 10, 0}, {-4, -60, 137, 24, 11, 0}, {-5, -60, 138, 24, 11, 0}, {-5, -60, 140, 24, 11, 0}, {-5, -60, 141, 24, 11, 0}, + {-5, -60, 142, 24, 11, 0}, {-5, -59, 143, 24, 11, 0}, {-5, -59, 144, 24, 11, 0}, {-5, -59, 145, 24, 11, 0}, {-6, -59, 147, 24, 11, 0}, + {-6, -58, 148, 24, 11, 0}, {-6, -58, 149, 24, 11, 0}, {-6, -58, 150, 24, 11, 0}, {-6, -58, 151, 24, 11, 0}, {-6, -57, 152, 24, 11, 0}, + {-6, -57, 154, 24, 11, 0}, {-6, -56, 155, 24, 11, 0}, {-7, -56, 156, 24, 12, 0}, {-7, -56, 157, 24, 12, 0}, {-7, -55, 158, 24, 12, 0}, + {-7, -55, 159, 24, 12, 0}, {-7, -54, 160, 24, 12, 0}, {-7, -54, 161, 24, 12, 0}, {-7, -54, 162, 24, 12, 0}, {-8, -53, 163, 24, 12, 0}, + {-8, -53, 165, 24, 12, 0}, {-8, -52, 166, 24, 12, 0}, {-8, -52, 167, 24, 12, 0}, {-8, -51, 168, 24, 12, 0}, {-8, -50, 169, 24, 12, 0}, + {-8, -50, 170, 24, 12, 0}, {-8, -49, 171, 24, 12, 0}, {-9, -49, 172, 24, 12, 0}, {-9, -48, 173, 24, 13, 0}, {-9, -48, 174, 24, 13, 0}, + {-9, -47, 174, 24, 13, 0}, {-9, -46, 175, 24, 13, 0}, {-9, -46, 176, 24, 13, 0}, {-9, -45, 177, 24, 13, 0}, {-9, -44, 178, 24, 13, 0}, + {-10, -44, 179, 24, 13, 0}, {-10, -43, 180, 24, 13, 0}, {-10, -42, 181, 24, 13, 0}, {-10, -41, 182, 24, 13, 0}, {-10, -41, 182, 24, 13, 0}, + {-10, -40, 183, 24, 13, 0}, {-10, -39, 184, 24, 13, 0}, {-11, -39, 185, 24, 13, 0}, {-11, -38, 186, 24, 13, 0}, {-11, -37, 186, 24, 13, 0}, + {-11, -36, 187, 24, 14, 0}, {-11, -35, 188, 24, 14, 0}, {-11, -35, 188, 24, 14, 0}, {-11, -34, 189, 24, 14, 0}, {-11, -33, 190, 24, 14, 0}, + {-12, -32, 190, 24, 14, 0}, {-12, -31, 191, 24, 14, 0}, {-12, -30, 192, 24, 14, 0}, {-12, -30, 192, 24, 14, 0}, {-12, -29, 193, 24, 14, 0}, + {-12, -28, 193, 24, 14, 0}, {-12, -27, 194, 24, 14, 0}, {-12, -26, 195, 24, 14, 0}, {-13, -25, 195, 24, 14, 0}, {-13, -24, 196, 24, 14, 0}, + {-13, -23, 196, 24, 14, 0}, {-13, -22, 196, 24, 15, 0}, {-13, -21, 197, 24, 15, 0}, {-13, -21, 197, 24, 15, 0}, {-13, -20, 198, 24, 15, 0}, + {-14, -19, 198, 24, 15, 0}, {-14, -18, 198, 24, 15, 0}, {-14, -17, 199, 24, 15, 0}, {-14, -16, 199, 24, 15, 0}, {-14, -15, 199, 24, 15, 0}, + {-14, -14, 200, 24, 15, 0}, {-14, -13, 200, 24, 15, 0}, {-14, -12, 200, 24, 15, 0}, {-15, -11, 200, 24, 15, 0}, {-15, -10, 201, 24, 15, 0}, + {-15, -9, 201, 24, 15, 0}, {-15, -8, 201, 24, 15, 0}, {-15, -7, 201, 24, 16, 0}, {-15, -6, 201, 24, 16, 0}, {-15, -5, 201, 24, 16, 0}, + {-15, -4, 202, 24, 16, 0}, {-16, -3, 202, 24, 16, 0}, {-16, -2, 202, 24, 16, 0}, {-16, -1, 202, 24, 16, 0}, {-16, 0, 202, 24, 16, 0}, }) CREATE_VEHICLE_INFO(TrackVehicleInfoLeftMediumHalfLoopDown0, { - { 31, 16, 35, 16, 16, 0}, { 30, 16, 35, 16, 16, 0}, { 29, 16, 35, 16, 16, 0}, { 28, 15, 35, 16, 16, 0}, { 27, 15, 35, 16, 16, 0}, - { 26, 15, 35, 16, 16, 0}, { 25, 15, 35, 16, 16, 0}, { 24, 15, 34, 16, 23, 0}, { 23, 15, 34, 16, 23, 0}, { 22, 15, 34, 16, 23, 0}, - { 21, 15, 34, 16, 23, 0}, { 20, 14, 34, 16, 23, 0}, { 19, 14, 33, 16, 23, 0}, { 18, 14, 33, 16, 23, 0}, { 17, 14, 33, 16, 23, 0}, - { 16, 14, 32, 16, 23, 0}, { 15, 14, 32, 16, 23, 0}, { 14, 14, 32, 16, 23, 0}, { 13, 14, 31, 16, 23, 0}, { 12, 13, 31, 16, 23, 0}, - { 11, 13, 31, 16, 23, 0}, { 11, 13, 30, 16, 23, 0}, { 10, 13, 30, 16, 23, 0}, { 9, 13, 29, 16, 22, 0}, { 8, 13, 29, 16, 22, 0}, - { 7, 13, 28, 16, 22, 0}, { 6, 12, 28, 16, 22, 0}, { 5, 12, 27, 16, 22, 0}, { 4, 12, 27, 16, 22, 0}, { 3, 12, 26, 16, 22, 0}, - { 2, 12, 26, 16, 22, 0}, { 2, 12, 25, 16, 22, 0}, { 1, 12, 24, 16, 22, 0}, { 0, 12, 24, 16, 22, 0}, { -1, 11, 23, 16, 22, 0}, - { -2, 11, 22, 16, 22, 0}, { -3, 11, 22, 16, 22, 0}, { -3, 11, 21, 16, 22, 0}, { -4, 11, 20, 16, 22, 0}, { -5, 11, 20, 16, 21, 0}, - { -6, 11, 19, 16, 21, 0}, { -7, 11, 18, 16, 21, 0}, { -7, 10, 17, 16, 21, 0}, { -8, 10, 17, 16, 21, 0}, { -9, 10, 16, 16, 21, 0}, - { -9, 10, 15, 16, 21, 0}, { -10, 10, 14, 16, 21, 0}, { -11, 10, 13, 16, 21, 0}, { -12, 10, 12, 16, 21, 0}, { -12, 9, 11, 16, 21, 0}, - { -13, 9, 11, 16, 21, 0}, { -14, 9, 10, 16, 21, 0}, { -14, 9, 9, 16, 21, 0}, { -15, 9, 8, 16, 21, 0}, { -16, 9, 7, 16, 21, 0}, - { -16, 9, 6, 16, 21, 0}, { -17, 9, 5, 16, 20, 0}, { -17, 8, 4, 16, 20, 0}, { -18, 8, 3, 16, 20, 0}, { -18, 8, 2, 16, 20, 0}, - { -19, 8, 1, 16, 20, 0}, { -20, 8, 0, 16, 20, 0}, { -20, 8, -1, 16, 20, 0}, { -21, 8, -2, 16, 20, 0}, { -21, 8, -3, 16, 20, 0}, - { -22, 7, -4, 16, 20, 0}, { -22, 7, -5, 16, 20, 0}, { -22, 7, -6, 16, 20, 0}, { -23, 7, -8, 16, 20, 0}, { -23, 7, -9, 16, 20, 0}, - { -24, 7, -10, 16, 20, 0}, { -24, 7, -11, 16, 20, 0}, { -24, 6, -12, 16, 19, 0}, { -25, 6, -13, 16, 19, 0}, { -25, 6, -14, 16, 19, 0}, - { -26, 6, -15, 16, 19, 0}, { -26, 6, -17, 16, 19, 0}, { -26, 6, -18, 16, 19, 0}, { -26, 6, -19, 16, 19, 0}, { -27, 6, -20, 16, 19, 0}, - { -27, 5, -21, 16, 19, 0}, { -27, 5, -22, 16, 19, 0}, { -27, 5, -24, 16, 19, 0}, { -28, 5, -25, 16, 19, 0}, { -28, 5, -26, 16, 19, 0}, - { -28, 5, -27, 16, 19, 0}, { -28, 5, -28, 16, 19, 0}, { -28, 4, -30, 16, 19, 0}, { -28, 4, -31, 16, 18, 0}, { -28, 4, -32, 16, 18, 0}, - { -29, 4, -33, 16, 18, 0}, { -29, 4, -34, 16, 18, 0}, { -29, 4, -36, 16, 18, 0}, { -29, 4, -37, 16, 18, 0}, { -29, 4, -38, 16, 18, 0}, - { -29, 3, -39, 16, 18, 0}, { -29, 3, -40, 16, 18, 0}, { -29, 3, -42, 16, 18, 0}, { -29, 3, -43, 16, 18, 0}, { -29, 3, -44, 16, 18, 0}, - { -29, 3, -45, 16, 18, 0}, { -28, 3, -46, 16, 18, 0}, { -28, 3, -48, 16, 18, 0}, { -28, 2, -49, 16, 17, 0}, { -28, 2, -50, 16, 17, 0}, - { -28, 2, -51, 16, 17, 0}, { -28, 2, -52, 16, 17, 0}, { -28, 2, -54, 16, 17, 0}, { -27, 2, -55, 16, 17, 0}, { -27, 2, -56, 16, 17, 0}, - { -27, 1, -57, 16, 17, 0}, { -27, 1, -58, 16, 17, 0}, { -26, 1, -60, 16, 17, 0}, { -26, 1, -61, 16, 17, 0}, { -26, 1, -62, 16, 17, 0}, - { -26, 1, -63, 16, 17, 0}, { -25, 1, -64, 16, 17, 0}, { -25, 1, -65, 16, 17, 0}, { -25, 0, -67, 16, 17, 0}, { -24, 0, -68, 16, 17, 0}, - { -24, 0, -69, 16, 17, 0}, { -24, 0, -70, 16, 17, 0}, { -23, 0, -71, 16, 17, 0}, { -23, 0, -72, 16, 17, 0}, { -23, 0, -73, 16, 17, 0}, - { -22, 0, -75, 16, 17, 0}, { -22, -1, -76, 16, 17, 0}, { -21, -1, -77, 16, 8, 0}, { -21, -1, -78, 16, 8, 0}, { -21, -1, -79, 16, 8, 0}, - { -20, -1, -80, 16, 8, 0}, { -20, -1, -81, 16, 8, 0}, { -19, -1, -82, 16, 8, 0}, { -19, -2, -83, 16, 8, 0}, { -18, -2, -84, 16, 8, 0}, - { -18, -2, -85, 16, 8, 0}, { -18, -2, -87, 16, 8, 0}, { -17, -2, -88, 16, 8, 0}, { -17, -2, -89, 16, 8, 0}, { -16, -2, -90, 16, 8, 0}, - { -16, -2, -91, 16, 8, 0}, { -15, -3, -92, 16, 8, 0}, { -15, -3, -93, 16, 8, 0}, { -14, -3, -94, 16, 8, 0}, { -13, -3, -95, 16, 8, 0}, - { -13, -3, -96, 16, 8, 0}, { -12, -3, -97, 16, 8, 0}, { -12, -3, -98, 16, 8, 0}, { -11, -3, -99, 16, 8, 0}, { -11, -4, -100, 16, 8, 0}, - { -10, -4, -101, 16, 8, 0}, { -10, -4, -102, 16, 8, 0}, { -9, -4, -103, 16, 8, 0}, { -8, -4, -104, 16, 8, 0}, { -8, -4, -105, 16, 8, 0}, - { -7, -4, -106, 16, 8, 0}, { -6, -5, -107, 16, 8, 0}, { -6, -5, -108, 16, 8, 0}, { -5, -5, -109, 16, 8, 0}, { -5, -5, -110, 16, 8, 0}, - { -4, -5, -110, 16, 8, 0}, { -3, -5, -111, 16, 7, 0}, { -3, -5, -112, 16, 7, 0}, { -2, -5, -113, 16, 7, 0}, { -1, -6, -114, 16, 7, 0}, - { -1, -6, -115, 16, 7, 0}, { 0, -6, -116, 16, 7, 0}, { 1, -6, -117, 16, 7, 0}, { 1, -6, -118, 16, 7, 0}, { 2, -6, -119, 16, 7, 0}, - { 3, -6, -119, 16, 7, 0}, { 3, -6, -120, 16, 7, 0}, { 4, -7, -121, 16, 7, 0}, { 5, -7, -122, 16, 7, 0}, { 6, -7, -123, 16, 7, 0}, - { 6, -7, -124, 16, 7, 0}, { 7, -7, -124, 16, 7, 0}, { 8, -7, -125, 16, 7, 0}, { 8, -7, -126, 16, 7, 0}, { 9, -8, -127, 16, 7, 0}, - { 10, -8, -128, 16, 7, 0}, { 11, -8, -129, 16, 7, 0}, { 11, -8, -129, 16, 7, 0}, { 12, -8, -130, 16, 7, 0}, { 13, -8, -131, 16, 7, 0}, - { 14, -8, -132, 16, 7, 0}, { 14, -8, -132, 16, 7, 0}, { 15, -9, -133, 16, 7, 0}, { 16, -9, -134, 16, 7, 0}, { 17, -9, -135, 16, 7, 0}, - { 18, -9, -135, 16, 7, 0}, { 18, -9, -136, 16, 7, 0}, { 19, -9, -137, 16, 7, 0}, { 20, -9, -138, 16, 7, 0}, { 21, -9, -138, 16, 7, 0}, - { 21, -10, -139, 16, 7, 0}, { 22, -10, -140, 16, 7, 0}, { 23, -10, -141, 16, 7, 0}, { 24, -10, -141, 16, 7, 0}, { 25, -10, -142, 16, 7, 0}, - { 26, -10, -143, 16, 7, 0}, { 26, -10, -143, 16, 7, 0}, { 27, -11, -144, 16, 7, 0}, { 28, -11, -145, 16, 7, 0}, { 29, -11, -145, 16, 7, 0}, - { 30, -11, -146, 16, 7, 0}, { 31, -11, -147, 16, 7, 0}, { 31, -11, -147, 16, 7, 0}, { 32, -11, -148, 16, 7, 0}, { 33, -11, -149, 16, 7, 0}, - { 34, -12, -149, 16, 7, 0}, { 35, -12, -150, 16, 6, 0}, { 36, -12, -150, 16, 6, 0}, { 36, -12, -151, 16, 6, 0}, { 37, -12, -152, 16, 6, 0}, - { 38, -12, -152, 16, 6, 0}, { 39, -12, -153, 16, 6, 0}, { 40, -12, -154, 16, 6, 0}, { 41, -13, -154, 16, 6, 0}, { 42, -13, -155, 16, 6, 0}, - { 43, -13, -155, 16, 6, 0}, { 43, -13, -156, 16, 6, 0}, { 44, -13, -156, 16, 6, 0}, { 45, -13, -157, 16, 6, 0}, { 46, -13, -158, 16, 6, 0}, - { 47, -14, -158, 16, 6, 0}, { 48, -14, -159, 16, 6, 0}, { 49, -14, -159, 16, 6, 0}, { 50, -14, -160, 16, 6, 0}, { 50, -14, -160, 16, 6, 0}, - { 51, -14, -161, 16, 6, 0}, { 52, -14, -161, 16, 6, 0}, { 53, -14, -162, 16, 6, 0}, { 54, -15, -162, 16, 6, 0}, { 55, -15, -163, 16, 6, 0}, - { 56, -15, -163, 16, 6, 0}, { 57, -15, -164, 16, 6, 0}, { 58, -15, -164, 16, 6, 0}, { 58, -15, -165, 16, 6, 0}, { 59, -15, -165, 16, 6, 0}, - { 60, -15, -166, 16, 6, 0}, { 61, -16, -166, 16, 6, 0}, { 62, -16, -167, 16, 6, 0}, { 63, -16, -167, 16, 6, 0}, { 64, -16, -168, 16, 6, 0}, + {31, 16, 35, 16, 16, 0}, {30, 16, 35, 16, 16, 0}, {29, 16, 35, 16, 16, 0}, {28, 15, 35, 16, 16, 0}, {27, 15, 35, 16, 16, 0}, + {26, 15, 35, 16, 16, 0}, {25, 15, 35, 16, 16, 0}, {24, 15, 34, 16, 23, 0}, {23, 15, 34, 16, 23, 0}, {22, 15, 34, 16, 23, 0}, + {21, 15, 34, 16, 23, 0}, {20, 14, 34, 16, 23, 0}, {19, 14, 33, 16, 23, 0}, {18, 14, 33, 16, 23, 0}, {17, 14, 33, 16, 23, 0}, + {16, 14, 32, 16, 23, 0}, {15, 14, 32, 16, 23, 0}, {14, 14, 32, 16, 23, 0}, {13, 14, 31, 16, 23, 0}, {12, 13, 31, 16, 23, 0}, + {11, 13, 31, 16, 23, 0}, {11, 13, 30, 16, 23, 0}, {10, 13, 30, 16, 23, 0}, {9, 13, 29, 16, 22, 0}, {8, 13, 29, 16, 22, 0}, + {7, 13, 28, 16, 22, 0}, {6, 12, 28, 16, 22, 0}, {5, 12, 27, 16, 22, 0}, {4, 12, 27, 16, 22, 0}, {3, 12, 26, 16, 22, 0}, + {2, 12, 26, 16, 22, 0}, {2, 12, 25, 16, 22, 0}, {1, 12, 24, 16, 22, 0}, {0, 12, 24, 16, 22, 0}, {-1, 11, 23, 16, 22, 0}, + {-2, 11, 22, 16, 22, 0}, {-3, 11, 22, 16, 22, 0}, {-3, 11, 21, 16, 22, 0}, {-4, 11, 20, 16, 22, 0}, {-5, 11, 20, 16, 21, 0}, + {-6, 11, 19, 16, 21, 0}, {-7, 11, 18, 16, 21, 0}, {-7, 10, 17, 16, 21, 0}, {-8, 10, 17, 16, 21, 0}, {-9, 10, 16, 16, 21, 0}, + {-9, 10, 15, 16, 21, 0}, {-10, 10, 14, 16, 21, 0}, {-11, 10, 13, 16, 21, 0}, {-12, 10, 12, 16, 21, 0}, {-12, 9, 11, 16, 21, 0}, + {-13, 9, 11, 16, 21, 0}, {-14, 9, 10, 16, 21, 0}, {-14, 9, 9, 16, 21, 0}, {-15, 9, 8, 16, 21, 0}, {-16, 9, 7, 16, 21, 0}, + {-16, 9, 6, 16, 21, 0}, {-17, 9, 5, 16, 20, 0}, {-17, 8, 4, 16, 20, 0}, {-18, 8, 3, 16, 20, 0}, {-18, 8, 2, 16, 20, 0}, + {-19, 8, 1, 16, 20, 0}, {-20, 8, 0, 16, 20, 0}, {-20, 8, -1, 16, 20, 0}, {-21, 8, -2, 16, 20, 0}, {-21, 8, -3, 16, 20, 0}, + {-22, 7, -4, 16, 20, 0}, {-22, 7, -5, 16, 20, 0}, {-22, 7, -6, 16, 20, 0}, {-23, 7, -8, 16, 20, 0}, {-23, 7, -9, 16, 20, 0}, + {-24, 7, -10, 16, 20, 0}, {-24, 7, -11, 16, 20, 0}, {-24, 6, -12, 16, 19, 0}, {-25, 6, -13, 16, 19, 0}, {-25, 6, -14, 16, 19, 0}, + {-26, 6, -15, 16, 19, 0}, {-26, 6, -17, 16, 19, 0}, {-26, 6, -18, 16, 19, 0}, {-26, 6, -19, 16, 19, 0}, {-27, 6, -20, 16, 19, 0}, + {-27, 5, -21, 16, 19, 0}, {-27, 5, -22, 16, 19, 0}, {-27, 5, -24, 16, 19, 0}, {-28, 5, -25, 16, 19, 0}, {-28, 5, -26, 16, 19, 0}, + {-28, 5, -27, 16, 19, 0}, {-28, 5, -28, 16, 19, 0}, {-28, 4, -30, 16, 19, 0}, {-28, 4, -31, 16, 18, 0}, {-28, 4, -32, 16, 18, 0}, + {-29, 4, -33, 16, 18, 0}, {-29, 4, -34, 16, 18, 0}, {-29, 4, -36, 16, 18, 0}, {-29, 4, -37, 16, 18, 0}, {-29, 4, -38, 16, 18, 0}, + {-29, 3, -39, 16, 18, 0}, {-29, 3, -40, 16, 18, 0}, {-29, 3, -42, 16, 18, 0}, {-29, 3, -43, 16, 18, 0}, {-29, 3, -44, 16, 18, 0}, + {-29, 3, -45, 16, 18, 0}, {-28, 3, -46, 16, 18, 0}, {-28, 3, -48, 16, 18, 0}, {-28, 2, -49, 16, 17, 0}, {-28, 2, -50, 16, 17, 0}, + {-28, 2, -51, 16, 17, 0}, {-28, 2, -52, 16, 17, 0}, {-28, 2, -54, 16, 17, 0}, {-27, 2, -55, 16, 17, 0}, {-27, 2, -56, 16, 17, 0}, + {-27, 1, -57, 16, 17, 0}, {-27, 1, -58, 16, 17, 0}, {-26, 1, -60, 16, 17, 0}, {-26, 1, -61, 16, 17, 0}, {-26, 1, -62, 16, 17, 0}, + {-26, 1, -63, 16, 17, 0}, {-25, 1, -64, 16, 17, 0}, {-25, 1, -65, 16, 17, 0}, {-25, 0, -67, 16, 17, 0}, {-24, 0, -68, 16, 17, 0}, + {-24, 0, -69, 16, 17, 0}, {-24, 0, -70, 16, 17, 0}, {-23, 0, -71, 16, 17, 0}, {-23, 0, -72, 16, 17, 0}, {-23, 0, -73, 16, 17, 0}, + {-22, 0, -75, 16, 17, 0}, {-22, -1, -76, 16, 17, 0}, {-21, -1, -77, 16, 8, 0}, {-21, -1, -78, 16, 8, 0}, {-21, -1, -79, 16, 8, 0}, + {-20, -1, -80, 16, 8, 0}, {-20, -1, -81, 16, 8, 0}, {-19, -1, -82, 16, 8, 0}, {-19, -2, -83, 16, 8, 0}, {-18, -2, -84, 16, 8, 0}, + {-18, -2, -85, 16, 8, 0}, {-18, -2, -87, 16, 8, 0}, {-17, -2, -88, 16, 8, 0}, {-17, -2, -89, 16, 8, 0}, {-16, -2, -90, 16, 8, 0}, + {-16, -2, -91, 16, 8, 0}, {-15, -3, -92, 16, 8, 0}, {-15, -3, -93, 16, 8, 0}, {-14, -3, -94, 16, 8, 0}, {-13, -3, -95, 16, 8, 0}, + {-13, -3, -96, 16, 8, 0}, {-12, -3, -97, 16, 8, 0}, {-12, -3, -98, 16, 8, 0}, {-11, -3, -99, 16, 8, 0}, {-11, -4, -100, 16, 8, 0}, + {-10, -4, -101, 16, 8, 0}, {-10, -4, -102, 16, 8, 0}, {-9, -4, -103, 16, 8, 0}, {-8, -4, -104, 16, 8, 0}, {-8, -4, -105, 16, 8, 0}, + {-7, -4, -106, 16, 8, 0}, {-6, -5, -107, 16, 8, 0}, {-6, -5, -108, 16, 8, 0}, {-5, -5, -109, 16, 8, 0}, {-5, -5, -110, 16, 8, 0}, + {-4, -5, -110, 16, 8, 0}, {-3, -5, -111, 16, 7, 0}, {-3, -5, -112, 16, 7, 0}, {-2, -5, -113, 16, 7, 0}, {-1, -6, -114, 16, 7, 0}, + {-1, -6, -115, 16, 7, 0}, {0, -6, -116, 16, 7, 0}, {1, -6, -117, 16, 7, 0}, {1, -6, -118, 16, 7, 0}, {2, -6, -119, 16, 7, 0}, + {3, -6, -119, 16, 7, 0}, {3, -6, -120, 16, 7, 0}, {4, -7, -121, 16, 7, 0}, {5, -7, -122, 16, 7, 0}, {6, -7, -123, 16, 7, 0}, + {6, -7, -124, 16, 7, 0}, {7, -7, -124, 16, 7, 0}, {8, -7, -125, 16, 7, 0}, {8, -7, -126, 16, 7, 0}, {9, -8, -127, 16, 7, 0}, + {10, -8, -128, 16, 7, 0}, {11, -8, -129, 16, 7, 0}, {11, -8, -129, 16, 7, 0}, {12, -8, -130, 16, 7, 0}, {13, -8, -131, 16, 7, 0}, + {14, -8, -132, 16, 7, 0}, {14, -8, -132, 16, 7, 0}, {15, -9, -133, 16, 7, 0}, {16, -9, -134, 16, 7, 0}, {17, -9, -135, 16, 7, 0}, + {18, -9, -135, 16, 7, 0}, {18, -9, -136, 16, 7, 0}, {19, -9, -137, 16, 7, 0}, {20, -9, -138, 16, 7, 0}, {21, -9, -138, 16, 7, 0}, + {21, -10, -139, 16, 7, 0}, {22, -10, -140, 16, 7, 0}, {23, -10, -141, 16, 7, 0}, {24, -10, -141, 16, 7, 0}, {25, -10, -142, 16, 7, 0}, + {26, -10, -143, 16, 7, 0}, {26, -10, -143, 16, 7, 0}, {27, -11, -144, 16, 7, 0}, {28, -11, -145, 16, 7, 0}, {29, -11, -145, 16, 7, 0}, + {30, -11, -146, 16, 7, 0}, {31, -11, -147, 16, 7, 0}, {31, -11, -147, 16, 7, 0}, {32, -11, -148, 16, 7, 0}, {33, -11, -149, 16, 7, 0}, + {34, -12, -149, 16, 7, 0}, {35, -12, -150, 16, 6, 0}, {36, -12, -150, 16, 6, 0}, {36, -12, -151, 16, 6, 0}, {37, -12, -152, 16, 6, 0}, + {38, -12, -152, 16, 6, 0}, {39, -12, -153, 16, 6, 0}, {40, -12, -154, 16, 6, 0}, {41, -13, -154, 16, 6, 0}, {42, -13, -155, 16, 6, 0}, + {43, -13, -155, 16, 6, 0}, {43, -13, -156, 16, 6, 0}, {44, -13, -156, 16, 6, 0}, {45, -13, -157, 16, 6, 0}, {46, -13, -158, 16, 6, 0}, + {47, -14, -158, 16, 6, 0}, {48, -14, -159, 16, 6, 0}, {49, -14, -159, 16, 6, 0}, {50, -14, -160, 16, 6, 0}, {50, -14, -160, 16, 6, 0}, + {51, -14, -161, 16, 6, 0}, {52, -14, -161, 16, 6, 0}, {53, -14, -162, 16, 6, 0}, {54, -15, -162, 16, 6, 0}, {55, -15, -163, 16, 6, 0}, + {56, -15, -163, 16, 6, 0}, {57, -15, -164, 16, 6, 0}, {58, -15, -164, 16, 6, 0}, {58, -15, -165, 16, 6, 0}, {59, -15, -165, 16, 6, 0}, + {60, -15, -166, 16, 6, 0}, {61, -16, -166, 16, 6, 0}, {62, -16, -167, 16, 6, 0}, {63, -16, -167, 16, 6, 0}, {64, -16, -168, 16, 6, 0}, }) CREATE_VEHICLE_INFO(TrackVehicleInfoLeftMediumHalfLoopDown1, { - { 16, 0, 35, 24, 16, 0}, { 16, 1, 35, 24, 16, 0}, { 16, 2, 35, 24, 16, 0}, { 16, 3, 35, 24, 16, 0}, { 15, 4, 35, 24, 16, 0}, - { 15, 5, 35, 24, 16, 0}, { 15, 6, 35, 24, 16, 0}, { 15, 7, 35, 24, 16, 0}, { 15, 8, 34, 24, 23, 0}, { 15, 9, 34, 24, 23, 0}, - { 15, 10, 34, 24, 23, 0}, { 15, 11, 34, 24, 23, 0}, { 14, 12, 34, 24, 23, 0}, { 14, 13, 33, 24, 23, 0}, { 14, 14, 33, 24, 23, 0}, - { 14, 15, 33, 24, 23, 0}, { 14, 16, 32, 24, 23, 0}, { 14, 17, 32, 24, 23, 0}, { 14, 18, 32, 24, 23, 0}, { 14, 19, 31, 24, 23, 0}, - { 13, 20, 31, 24, 23, 0}, { 13, 21, 31, 24, 23, 0}, { 13, 21, 30, 24, 23, 0}, { 13, 22, 30, 24, 23, 0}, { 13, 23, 29, 24, 22, 0}, - { 13, 24, 29, 24, 22, 0}, { 13, 25, 28, 24, 22, 0}, { 12, 26, 28, 24, 22, 0}, { 12, 27, 27, 24, 22, 0}, { 12, 28, 27, 24, 22, 0}, - { 12, 29, 26, 24, 22, 0}, { 12, 30, 26, 24, 22, 0}, { 12, 30, 25, 24, 22, 0}, { 12, 31, 24, 24, 22, 0}, { 12, 32, 24, 24, 22, 0}, - { 11, 33, 23, 24, 22, 0}, { 11, 34, 22, 24, 22, 0}, { 11, 35, 22, 24, 22, 0}, { 11, 35, 21, 24, 22, 0}, { 11, 36, 20, 24, 22, 0}, - { 11, 37, 20, 24, 21, 0}, { 11, 38, 19, 24, 21, 0}, { 11, 39, 18, 24, 21, 0}, { 10, 39, 17, 24, 21, 0}, { 10, 40, 17, 24, 21, 0}, - { 10, 41, 16, 24, 21, 0}, { 10, 41, 15, 24, 21, 0}, { 10, 42, 14, 24, 21, 0}, { 10, 43, 13, 24, 21, 0}, { 10, 44, 12, 24, 21, 0}, - { 9, 44, 11, 24, 21, 0}, { 9, 45, 11, 24, 21, 0}, { 9, 46, 10, 24, 21, 0}, { 9, 46, 9, 24, 21, 0}, { 9, 47, 8, 24, 21, 0}, - { 9, 48, 7, 24, 21, 0}, { 9, 48, 6, 24, 21, 0}, { 9, 49, 5, 24, 20, 0}, { 8, 49, 4, 24, 20, 0}, { 8, 50, 3, 24, 20, 0}, - { 8, 50, 2, 24, 20, 0}, { 8, 51, 1, 24, 20, 0}, { 8, 52, 0, 24, 20, 0}, { 8, 52, -1, 24, 20, 0}, { 8, 53, -2, 24, 20, 0}, - { 8, 53, -3, 24, 20, 0}, { 7, 54, -4, 24, 20, 0}, { 7, 54, -5, 24, 20, 0}, { 7, 54, -6, 24, 20, 0}, { 7, 55, -8, 24, 20, 0}, - { 7, 55, -9, 24, 20, 0}, { 7, 56, -10, 24, 20, 0}, { 7, 56, -11, 24, 20, 0}, { 6, 56, -12, 24, 19, 0}, { 6, 57, -13, 24, 19, 0}, - { 6, 57, -14, 24, 19, 0}, { 6, 58, -15, 24, 19, 0}, { 6, 58, -17, 24, 19, 0}, { 6, 58, -18, 24, 19, 0}, { 6, 58, -19, 24, 19, 0}, - { 6, 59, -20, 24, 19, 0}, { 5, 59, -21, 24, 19, 0}, { 5, 59, -22, 24, 19, 0}, { 5, 59, -24, 24, 19, 0}, { 5, 60, -25, 24, 19, 0}, - { 5, 60, -26, 24, 19, 0}, { 5, 60, -27, 24, 19, 0}, { 5, 60, -28, 24, 19, 0}, { 4, 60, -30, 24, 19, 0}, { 4, 60, -31, 24, 18, 0}, - { 4, 60, -32, 24, 18, 0}, { 4, 61, -33, 24, 18, 0}, { 4, 61, -34, 24, 18, 0}, { 4, 61, -36, 24, 18, 0}, { 4, 61, -37, 24, 18, 0}, - { 4, 61, -38, 24, 18, 0}, { 3, 61, -39, 24, 18, 0}, { 3, 61, -40, 24, 18, 0}, { 3, 61, -42, 24, 18, 0}, { 3, 61, -43, 24, 18, 0}, - { 3, 61, -44, 24, 18, 0}, { 3, 61, -45, 24, 18, 0}, { 3, 60, -46, 24, 18, 0}, { 3, 60, -48, 24, 18, 0}, { 2, 60, -49, 24, 17, 0}, - { 2, 60, -50, 24, 17, 0}, { 2, 60, -51, 24, 17, 0}, { 2, 60, -52, 24, 17, 0}, { 2, 60, -54, 24, 17, 0}, { 2, 59, -55, 24, 17, 0}, - { 2, 59, -56, 24, 17, 0}, { 1, 59, -57, 24, 17, 0}, { 1, 59, -58, 24, 17, 0}, { 1, 58, -60, 24, 17, 0}, { 1, 58, -61, 24, 17, 0}, - { 1, 58, -62, 24, 17, 0}, { 1, 58, -63, 24, 17, 0}, { 1, 57, -64, 24, 17, 0}, { 1, 57, -65, 24, 17, 0}, { 0, 57, -67, 24, 17, 0}, - { 0, 56, -68, 24, 17, 0}, { 0, 56, -69, 24, 17, 0}, { 0, 56, -70, 24, 17, 0}, { 0, 55, -71, 24, 17, 0}, { 0, 55, -72, 24, 17, 0}, - { 0, 55, -73, 24, 17, 0}, { 0, 54, -75, 24, 17, 0}, { -1, 54, -76, 24, 17, 0}, { -1, 53, -77, 24, 8, 0}, { -1, 53, -78, 24, 8, 0}, - { -1, 53, -79, 24, 8, 0}, { -1, 52, -80, 24, 8, 0}, { -1, 52, -81, 24, 8, 0}, { -1, 51, -82, 24, 8, 0}, { -2, 51, -83, 24, 8, 0}, - { -2, 50, -84, 24, 8, 0}, { -2, 50, -85, 24, 8, 0}, { -2, 50, -87, 24, 8, 0}, { -2, 49, -88, 24, 8, 0}, { -2, 49, -89, 24, 8, 0}, - { -2, 48, -90, 24, 8, 0}, { -2, 48, -91, 24, 8, 0}, { -3, 47, -92, 24, 8, 0}, { -3, 47, -93, 24, 8, 0}, { -3, 46, -94, 24, 8, 0}, - { -3, 45, -95, 24, 8, 0}, { -3, 45, -96, 24, 8, 0}, { -3, 44, -97, 24, 8, 0}, { -3, 44, -98, 24, 8, 0}, { -3, 43, -99, 24, 8, 0}, - { -4, 43, -100, 24, 8, 0}, { -4, 42, -101, 24, 8, 0}, { -4, 42, -102, 24, 8, 0}, { -4, 41, -103, 24, 8, 0}, { -4, 40, -104, 24, 8, 0}, - { -4, 40, -105, 24, 8, 0}, { -4, 39, -106, 24, 8, 0}, { -5, 38, -107, 24, 8, 0}, { -5, 38, -108, 24, 8, 0}, { -5, 37, -109, 24, 8, 0}, - { -5, 37, -110, 24, 8, 0}, { -5, 36, -110, 24, 8, 0}, { -5, 35, -111, 24, 7, 0}, { -5, 35, -112, 24, 7, 0}, { -5, 34, -113, 24, 7, 0}, - { -6, 33, -114, 24, 7, 0}, { -6, 33, -115, 24, 7, 0}, { -6, 32, -116, 24, 7, 0}, { -6, 31, -117, 24, 7, 0}, { -6, 31, -118, 24, 7, 0}, - { -6, 30, -119, 24, 7, 0}, { -6, 29, -119, 24, 7, 0}, { -6, 29, -120, 24, 7, 0}, { -7, 28, -121, 24, 7, 0}, { -7, 27, -122, 24, 7, 0}, - { -7, 26, -123, 24, 7, 0}, { -7, 26, -124, 24, 7, 0}, { -7, 25, -124, 24, 7, 0}, { -7, 24, -125, 24, 7, 0}, { -7, 24, -126, 24, 7, 0}, - { -8, 23, -127, 24, 7, 0}, { -8, 22, -128, 24, 7, 0}, { -8, 21, -129, 24, 7, 0}, { -8, 21, -129, 24, 7, 0}, { -8, 20, -130, 24, 7, 0}, - { -8, 19, -131, 24, 7, 0}, { -8, 18, -132, 24, 7, 0}, { -8, 18, -132, 24, 7, 0}, { -9, 17, -133, 24, 7, 0}, { -9, 16, -134, 24, 7, 0}, - { -9, 15, -135, 24, 7, 0}, { -9, 14, -135, 24, 7, 0}, { -9, 14, -136, 24, 7, 0}, { -9, 13, -137, 24, 7, 0}, { -9, 12, -138, 24, 7, 0}, - { -9, 11, -138, 24, 7, 0}, { -10, 11, -139, 24, 7, 0}, { -10, 10, -140, 24, 7, 0}, { -10, 9, -141, 24, 7, 0}, { -10, 8, -141, 24, 7, 0}, - { -10, 7, -142, 24, 7, 0}, { -10, 6, -143, 24, 7, 0}, { -10, 6, -143, 24, 7, 0}, { -11, 5, -144, 24, 7, 0}, { -11, 4, -145, 24, 7, 0}, - { -11, 3, -145, 24, 7, 0}, { -11, 2, -146, 24, 7, 0}, { -11, 1, -147, 24, 7, 0}, { -11, 1, -147, 24, 7, 0}, { -11, 0, -148, 24, 7, 0}, - { -11, -1, -149, 24, 7, 0}, { -12, -2, -149, 24, 7, 0}, { -12, -3, -150, 24, 6, 0}, { -12, -4, -150, 24, 6, 0}, { -12, -4, -151, 24, 6, 0}, - { -12, -5, -152, 24, 6, 0}, { -12, -6, -152, 24, 6, 0}, { -12, -7, -153, 24, 6, 0}, { -12, -8, -154, 24, 6, 0}, { -13, -9, -154, 24, 6, 0}, - { -13, -10, -155, 24, 6, 0}, { -13, -11, -155, 24, 6, 0}, { -13, -11, -156, 24, 6, 0}, { -13, -12, -156, 24, 6, 0}, { -13, -13, -157, 24, 6, 0}, - { -13, -14, -158, 24, 6, 0}, { -14, -15, -158, 24, 6, 0}, { -14, -16, -159, 24, 6, 0}, { -14, -17, -159, 24, 6, 0}, { -14, -18, -160, 24, 6, 0}, - { -14, -18, -160, 24, 6, 0}, { -14, -19, -161, 24, 6, 0}, { -14, -20, -161, 24, 6, 0}, { -14, -21, -162, 24, 6, 0}, { -15, -22, -162, 24, 6, 0}, - { -15, -23, -163, 24, 6, 0}, { -15, -24, -163, 24, 6, 0}, { -15, -25, -164, 24, 6, 0}, { -15, -26, -164, 24, 6, 0}, { -15, -26, -165, 24, 6, 0}, - { -15, -27, -165, 24, 6, 0}, { -15, -28, -166, 24, 6, 0}, { -16, -29, -166, 24, 6, 0}, { -16, -30, -167, 24, 6, 0}, { -16, -31, -167, 24, 6, 0}, + {16, 0, 35, 24, 16, 0}, {16, 1, 35, 24, 16, 0}, {16, 2, 35, 24, 16, 0}, {16, 3, 35, 24, 16, 0}, {15, 4, 35, 24, 16, 0}, + {15, 5, 35, 24, 16, 0}, {15, 6, 35, 24, 16, 0}, {15, 7, 35, 24, 16, 0}, {15, 8, 34, 24, 23, 0}, {15, 9, 34, 24, 23, 0}, + {15, 10, 34, 24, 23, 0}, {15, 11, 34, 24, 23, 0}, {14, 12, 34, 24, 23, 0}, {14, 13, 33, 24, 23, 0}, {14, 14, 33, 24, 23, 0}, + {14, 15, 33, 24, 23, 0}, {14, 16, 32, 24, 23, 0}, {14, 17, 32, 24, 23, 0}, {14, 18, 32, 24, 23, 0}, {14, 19, 31, 24, 23, 0}, + {13, 20, 31, 24, 23, 0}, {13, 21, 31, 24, 23, 0}, {13, 21, 30, 24, 23, 0}, {13, 22, 30, 24, 23, 0}, {13, 23, 29, 24, 22, 0}, + {13, 24, 29, 24, 22, 0}, {13, 25, 28, 24, 22, 0}, {12, 26, 28, 24, 22, 0}, {12, 27, 27, 24, 22, 0}, {12, 28, 27, 24, 22, 0}, + {12, 29, 26, 24, 22, 0}, {12, 30, 26, 24, 22, 0}, {12, 30, 25, 24, 22, 0}, {12, 31, 24, 24, 22, 0}, {12, 32, 24, 24, 22, 0}, + {11, 33, 23, 24, 22, 0}, {11, 34, 22, 24, 22, 0}, {11, 35, 22, 24, 22, 0}, {11, 35, 21, 24, 22, 0}, {11, 36, 20, 24, 22, 0}, + {11, 37, 20, 24, 21, 0}, {11, 38, 19, 24, 21, 0}, {11, 39, 18, 24, 21, 0}, {10, 39, 17, 24, 21, 0}, {10, 40, 17, 24, 21, 0}, + {10, 41, 16, 24, 21, 0}, {10, 41, 15, 24, 21, 0}, {10, 42, 14, 24, 21, 0}, {10, 43, 13, 24, 21, 0}, {10, 44, 12, 24, 21, 0}, + {9, 44, 11, 24, 21, 0}, {9, 45, 11, 24, 21, 0}, {9, 46, 10, 24, 21, 0}, {9, 46, 9, 24, 21, 0}, {9, 47, 8, 24, 21, 0}, + {9, 48, 7, 24, 21, 0}, {9, 48, 6, 24, 21, 0}, {9, 49, 5, 24, 20, 0}, {8, 49, 4, 24, 20, 0}, {8, 50, 3, 24, 20, 0}, + {8, 50, 2, 24, 20, 0}, {8, 51, 1, 24, 20, 0}, {8, 52, 0, 24, 20, 0}, {8, 52, -1, 24, 20, 0}, {8, 53, -2, 24, 20, 0}, + {8, 53, -3, 24, 20, 0}, {7, 54, -4, 24, 20, 0}, {7, 54, -5, 24, 20, 0}, {7, 54, -6, 24, 20, 0}, {7, 55, -8, 24, 20, 0}, + {7, 55, -9, 24, 20, 0}, {7, 56, -10, 24, 20, 0}, {7, 56, -11, 24, 20, 0}, {6, 56, -12, 24, 19, 0}, {6, 57, -13, 24, 19, 0}, + {6, 57, -14, 24, 19, 0}, {6, 58, -15, 24, 19, 0}, {6, 58, -17, 24, 19, 0}, {6, 58, -18, 24, 19, 0}, {6, 58, -19, 24, 19, 0}, + {6, 59, -20, 24, 19, 0}, {5, 59, -21, 24, 19, 0}, {5, 59, -22, 24, 19, 0}, {5, 59, -24, 24, 19, 0}, {5, 60, -25, 24, 19, 0}, + {5, 60, -26, 24, 19, 0}, {5, 60, -27, 24, 19, 0}, {5, 60, -28, 24, 19, 0}, {4, 60, -30, 24, 19, 0}, {4, 60, -31, 24, 18, 0}, + {4, 60, -32, 24, 18, 0}, {4, 61, -33, 24, 18, 0}, {4, 61, -34, 24, 18, 0}, {4, 61, -36, 24, 18, 0}, {4, 61, -37, 24, 18, 0}, + {4, 61, -38, 24, 18, 0}, {3, 61, -39, 24, 18, 0}, {3, 61, -40, 24, 18, 0}, {3, 61, -42, 24, 18, 0}, {3, 61, -43, 24, 18, 0}, + {3, 61, -44, 24, 18, 0}, {3, 61, -45, 24, 18, 0}, {3, 60, -46, 24, 18, 0}, {3, 60, -48, 24, 18, 0}, {2, 60, -49, 24, 17, 0}, + {2, 60, -50, 24, 17, 0}, {2, 60, -51, 24, 17, 0}, {2, 60, -52, 24, 17, 0}, {2, 60, -54, 24, 17, 0}, {2, 59, -55, 24, 17, 0}, + {2, 59, -56, 24, 17, 0}, {1, 59, -57, 24, 17, 0}, {1, 59, -58, 24, 17, 0}, {1, 58, -60, 24, 17, 0}, {1, 58, -61, 24, 17, 0}, + {1, 58, -62, 24, 17, 0}, {1, 58, -63, 24, 17, 0}, {1, 57, -64, 24, 17, 0}, {1, 57, -65, 24, 17, 0}, {0, 57, -67, 24, 17, 0}, + {0, 56, -68, 24, 17, 0}, {0, 56, -69, 24, 17, 0}, {0, 56, -70, 24, 17, 0}, {0, 55, -71, 24, 17, 0}, {0, 55, -72, 24, 17, 0}, + {0, 55, -73, 24, 17, 0}, {0, 54, -75, 24, 17, 0}, {-1, 54, -76, 24, 17, 0}, {-1, 53, -77, 24, 8, 0}, {-1, 53, -78, 24, 8, 0}, + {-1, 53, -79, 24, 8, 0}, {-1, 52, -80, 24, 8, 0}, {-1, 52, -81, 24, 8, 0}, {-1, 51, -82, 24, 8, 0}, {-2, 51, -83, 24, 8, 0}, + {-2, 50, -84, 24, 8, 0}, {-2, 50, -85, 24, 8, 0}, {-2, 50, -87, 24, 8, 0}, {-2, 49, -88, 24, 8, 0}, {-2, 49, -89, 24, 8, 0}, + {-2, 48, -90, 24, 8, 0}, {-2, 48, -91, 24, 8, 0}, {-3, 47, -92, 24, 8, 0}, {-3, 47, -93, 24, 8, 0}, {-3, 46, -94, 24, 8, 0}, + {-3, 45, -95, 24, 8, 0}, {-3, 45, -96, 24, 8, 0}, {-3, 44, -97, 24, 8, 0}, {-3, 44, -98, 24, 8, 0}, {-3, 43, -99, 24, 8, 0}, + {-4, 43, -100, 24, 8, 0}, {-4, 42, -101, 24, 8, 0}, {-4, 42, -102, 24, 8, 0}, {-4, 41, -103, 24, 8, 0}, {-4, 40, -104, 24, 8, 0}, + {-4, 40, -105, 24, 8, 0}, {-4, 39, -106, 24, 8, 0}, {-5, 38, -107, 24, 8, 0}, {-5, 38, -108, 24, 8, 0}, {-5, 37, -109, 24, 8, 0}, + {-5, 37, -110, 24, 8, 0}, {-5, 36, -110, 24, 8, 0}, {-5, 35, -111, 24, 7, 0}, {-5, 35, -112, 24, 7, 0}, {-5, 34, -113, 24, 7, 0}, + {-6, 33, -114, 24, 7, 0}, {-6, 33, -115, 24, 7, 0}, {-6, 32, -116, 24, 7, 0}, {-6, 31, -117, 24, 7, 0}, {-6, 31, -118, 24, 7, 0}, + {-6, 30, -119, 24, 7, 0}, {-6, 29, -119, 24, 7, 0}, {-6, 29, -120, 24, 7, 0}, {-7, 28, -121, 24, 7, 0}, {-7, 27, -122, 24, 7, 0}, + {-7, 26, -123, 24, 7, 0}, {-7, 26, -124, 24, 7, 0}, {-7, 25, -124, 24, 7, 0}, {-7, 24, -125, 24, 7, 0}, {-7, 24, -126, 24, 7, 0}, + {-8, 23, -127, 24, 7, 0}, {-8, 22, -128, 24, 7, 0}, {-8, 21, -129, 24, 7, 0}, {-8, 21, -129, 24, 7, 0}, {-8, 20, -130, 24, 7, 0}, + {-8, 19, -131, 24, 7, 0}, {-8, 18, -132, 24, 7, 0}, {-8, 18, -132, 24, 7, 0}, {-9, 17, -133, 24, 7, 0}, {-9, 16, -134, 24, 7, 0}, + {-9, 15, -135, 24, 7, 0}, {-9, 14, -135, 24, 7, 0}, {-9, 14, -136, 24, 7, 0}, {-9, 13, -137, 24, 7, 0}, {-9, 12, -138, 24, 7, 0}, + {-9, 11, -138, 24, 7, 0}, {-10, 11, -139, 24, 7, 0}, {-10, 10, -140, 24, 7, 0}, {-10, 9, -141, 24, 7, 0}, {-10, 8, -141, 24, 7, 0}, + {-10, 7, -142, 24, 7, 0}, {-10, 6, -143, 24, 7, 0}, {-10, 6, -143, 24, 7, 0}, {-11, 5, -144, 24, 7, 0}, {-11, 4, -145, 24, 7, 0}, + {-11, 3, -145, 24, 7, 0}, {-11, 2, -146, 24, 7, 0}, {-11, 1, -147, 24, 7, 0}, {-11, 1, -147, 24, 7, 0}, {-11, 0, -148, 24, 7, 0}, + {-11, -1, -149, 24, 7, 0}, {-12, -2, -149, 24, 7, 0}, {-12, -3, -150, 24, 6, 0}, {-12, -4, -150, 24, 6, 0}, {-12, -4, -151, 24, 6, 0}, + {-12, -5, -152, 24, 6, 0}, {-12, -6, -152, 24, 6, 0}, {-12, -7, -153, 24, 6, 0}, {-12, -8, -154, 24, 6, 0}, {-13, -9, -154, 24, 6, 0}, + {-13, -10, -155, 24, 6, 0}, {-13, -11, -155, 24, 6, 0}, {-13, -11, -156, 24, 6, 0}, {-13, -12, -156, 24, 6, 0}, {-13, -13, -157, 24, 6, 0}, + {-13, -14, -158, 24, 6, 0}, {-14, -15, -158, 24, 6, 0}, {-14, -16, -159, 24, 6, 0}, {-14, -17, -159, 24, 6, 0}, {-14, -18, -160, 24, 6, 0}, + {-14, -18, -160, 24, 6, 0}, {-14, -19, -161, 24, 6, 0}, {-14, -20, -161, 24, 6, 0}, {-14, -21, -162, 24, 6, 0}, {-15, -22, -162, 24, 6, 0}, + {-15, -23, -163, 24, 6, 0}, {-15, -24, -163, 24, 6, 0}, {-15, -25, -164, 24, 6, 0}, {-15, -26, -164, 24, 6, 0}, {-15, -26, -165, 24, 6, 0}, + {-15, -27, -165, 24, 6, 0}, {-15, -28, -166, 24, 6, 0}, {-16, -29, -166, 24, 6, 0}, {-16, -30, -167, 24, 6, 0}, {-16, -31, -167, 24, 6, 0}, }) CREATE_VEHICLE_INFO(TrackVehicleInfoLeftMediumHalfLoopDown2, { - { 0, 16, 35, 0, 16, 0}, { 1, 16, 35, 0, 16, 0}, { 2, 16, 35, 0, 16, 0}, { 3, 16, 35, 0, 16, 0}, { 4, 17, 35, 0, 16, 0}, - { 5, 17, 35, 0, 16, 0}, { 6, 17, 35, 0, 16, 0}, { 7, 17, 35, 0, 16, 0}, { 8, 17, 34, 0, 23, 0}, { 9, 17, 34, 0, 23, 0}, - { 10, 17, 34, 0, 23, 0}, { 11, 17, 34, 0, 23, 0}, { 12, 18, 34, 0, 23, 0}, { 13, 18, 33, 0, 23, 0}, { 14, 18, 33, 0, 23, 0}, - { 15, 18, 33, 0, 23, 0}, { 16, 18, 32, 0, 23, 0}, { 17, 18, 32, 0, 23, 0}, { 18, 18, 32, 0, 23, 0}, { 19, 18, 31, 0, 23, 0}, - { 20, 19, 31, 0, 23, 0}, { 21, 19, 31, 0, 23, 0}, { 21, 19, 30, 0, 23, 0}, { 22, 19, 30, 0, 23, 0}, { 23, 19, 29, 0, 22, 0}, - { 24, 19, 29, 0, 22, 0}, { 25, 19, 28, 0, 22, 0}, { 26, 20, 28, 0, 22, 0}, { 27, 20, 27, 0, 22, 0}, { 28, 20, 27, 0, 22, 0}, - { 29, 20, 26, 0, 22, 0}, { 30, 20, 26, 0, 22, 0}, { 30, 20, 25, 0, 22, 0}, { 31, 20, 24, 0, 22, 0}, { 32, 20, 24, 0, 22, 0}, - { 33, 21, 23, 0, 22, 0}, { 34, 21, 22, 0, 22, 0}, { 35, 21, 22, 0, 22, 0}, { 35, 21, 21, 0, 22, 0}, { 36, 21, 20, 0, 22, 0}, - { 37, 21, 20, 0, 21, 0}, { 38, 21, 19, 0, 21, 0}, { 39, 21, 18, 0, 21, 0}, { 39, 22, 17, 0, 21, 0}, { 40, 22, 17, 0, 21, 0}, - { 41, 22, 16, 0, 21, 0}, { 41, 22, 15, 0, 21, 0}, { 42, 22, 14, 0, 21, 0}, { 43, 22, 13, 0, 21, 0}, { 44, 22, 12, 0, 21, 0}, - { 44, 23, 11, 0, 21, 0}, { 45, 23, 11, 0, 21, 0}, { 46, 23, 10, 0, 21, 0}, { 46, 23, 9, 0, 21, 0}, { 47, 23, 8, 0, 21, 0}, - { 48, 23, 7, 0, 21, 0}, { 48, 23, 6, 0, 21, 0}, { 49, 23, 5, 0, 20, 0}, { 49, 24, 4, 0, 20, 0}, { 50, 24, 3, 0, 20, 0}, - { 50, 24, 2, 0, 20, 0}, { 51, 24, 1, 0, 20, 0}, { 52, 24, 0, 0, 20, 0}, { 52, 24, -1, 0, 20, 0}, { 53, 24, -2, 0, 20, 0}, - { 53, 24, -3, 0, 20, 0}, { 54, 25, -4, 0, 20, 0}, { 54, 25, -5, 0, 20, 0}, { 54, 25, -6, 0, 20, 0}, { 55, 25, -8, 0, 20, 0}, - { 55, 25, -9, 0, 20, 0}, { 56, 25, -10, 0, 20, 0}, { 56, 25, -11, 0, 20, 0}, { 56, 26, -12, 0, 19, 0}, { 57, 26, -13, 0, 19, 0}, - { 57, 26, -14, 0, 19, 0}, { 58, 26, -15, 0, 19, 0}, { 58, 26, -17, 0, 19, 0}, { 58, 26, -18, 0, 19, 0}, { 58, 26, -19, 0, 19, 0}, - { 59, 26, -20, 0, 19, 0}, { 59, 27, -21, 0, 19, 0}, { 59, 27, -22, 0, 19, 0}, { 59, 27, -24, 0, 19, 0}, { 60, 27, -25, 0, 19, 0}, - { 60, 27, -26, 0, 19, 0}, { 60, 27, -27, 0, 19, 0}, { 60, 27, -28, 0, 19, 0}, { 60, 28, -30, 0, 19, 0}, { 60, 28, -31, 0, 18, 0}, - { 60, 28, -32, 0, 18, 0}, { 61, 28, -33, 0, 18, 0}, { 61, 28, -34, 0, 18, 0}, { 61, 28, -36, 0, 18, 0}, { 61, 28, -37, 0, 18, 0}, - { 61, 28, -38, 0, 18, 0}, { 61, 29, -39, 0, 18, 0}, { 61, 29, -40, 0, 18, 0}, { 61, 29, -42, 0, 18, 0}, { 61, 29, -43, 0, 18, 0}, - { 61, 29, -44, 0, 18, 0}, { 61, 29, -45, 0, 18, 0}, { 60, 29, -46, 0, 18, 0}, { 60, 29, -48, 0, 18, 0}, { 60, 30, -49, 0, 17, 0}, - { 60, 30, -50, 0, 17, 0}, { 60, 30, -51, 0, 17, 0}, { 60, 30, -52, 0, 17, 0}, { 60, 30, -54, 0, 17, 0}, { 59, 30, -55, 0, 17, 0}, - { 59, 30, -56, 0, 17, 0}, { 59, 31, -57, 0, 17, 0}, { 59, 31, -58, 0, 17, 0}, { 58, 31, -60, 0, 17, 0}, { 58, 31, -61, 0, 17, 0}, - { 58, 31, -62, 0, 17, 0}, { 58, 31, -63, 0, 17, 0}, { 57, 31, -64, 0, 17, 0}, { 57, 31, -65, 0, 17, 0}, { 57, 32, -67, 0, 17, 0}, - { 56, 32, -68, 0, 17, 0}, { 56, 32, -69, 0, 17, 0}, { 56, 32, -70, 0, 17, 0}, { 55, 32, -71, 0, 17, 0}, { 55, 32, -72, 0, 17, 0}, - { 55, 32, -73, 0, 17, 0}, { 54, 32, -75, 0, 17, 0}, { 54, 33, -76, 0, 17, 0}, { 53, 33, -77, 0, 8, 0}, { 53, 33, -78, 0, 8, 0}, - { 53, 33, -79, 0, 8, 0}, { 52, 33, -80, 0, 8, 0}, { 52, 33, -81, 0, 8, 0}, { 51, 33, -82, 0, 8, 0}, { 51, 34, -83, 0, 8, 0}, - { 50, 34, -84, 0, 8, 0}, { 50, 34, -85, 0, 8, 0}, { 50, 34, -87, 0, 8, 0}, { 49, 34, -88, 0, 8, 0}, { 49, 34, -89, 0, 8, 0}, - { 48, 34, -90, 0, 8, 0}, { 48, 34, -91, 0, 8, 0}, { 47, 35, -92, 0, 8, 0}, { 47, 35, -93, 0, 8, 0}, { 46, 35, -94, 0, 8, 0}, - { 45, 35, -95, 0, 8, 0}, { 45, 35, -96, 0, 8, 0}, { 44, 35, -97, 0, 8, 0}, { 44, 35, -98, 0, 8, 0}, { 43, 35, -99, 0, 8, 0}, - { 43, 36, -100, 0, 8, 0}, { 42, 36, -101, 0, 8, 0}, { 42, 36, -102, 0, 8, 0}, { 41, 36, -103, 0, 8, 0}, { 40, 36, -104, 0, 8, 0}, - { 40, 36, -105, 0, 8, 0}, { 39, 36, -106, 0, 8, 0}, { 38, 37, -107, 0, 8, 0}, { 38, 37, -108, 0, 8, 0}, { 37, 37, -109, 0, 8, 0}, - { 37, 37, -110, 0, 8, 0}, { 36, 37, -110, 0, 8, 0}, { 35, 37, -111, 0, 7, 0}, { 35, 37, -112, 0, 7, 0}, { 34, 37, -113, 0, 7, 0}, - { 33, 38, -114, 0, 7, 0}, { 33, 38, -115, 0, 7, 0}, { 32, 38, -116, 0, 7, 0}, { 31, 38, -117, 0, 7, 0}, { 31, 38, -118, 0, 7, 0}, - { 30, 38, -119, 0, 7, 0}, { 29, 38, -119, 0, 7, 0}, { 29, 38, -120, 0, 7, 0}, { 28, 39, -121, 0, 7, 0}, { 27, 39, -122, 0, 7, 0}, - { 26, 39, -123, 0, 7, 0}, { 26, 39, -124, 0, 7, 0}, { 25, 39, -124, 0, 7, 0}, { 24, 39, -125, 0, 7, 0}, { 24, 39, -126, 0, 7, 0}, - { 23, 40, -127, 0, 7, 0}, { 22, 40, -128, 0, 7, 0}, { 21, 40, -129, 0, 7, 0}, { 21, 40, -129, 0, 7, 0}, { 20, 40, -130, 0, 7, 0}, - { 19, 40, -131, 0, 7, 0}, { 18, 40, -132, 0, 7, 0}, { 18, 40, -132, 0, 7, 0}, { 17, 41, -133, 0, 7, 0}, { 16, 41, -134, 0, 7, 0}, - { 15, 41, -135, 0, 7, 0}, { 14, 41, -135, 0, 7, 0}, { 14, 41, -136, 0, 7, 0}, { 13, 41, -137, 0, 7, 0}, { 12, 41, -138, 0, 7, 0}, - { 11, 41, -138, 0, 7, 0}, { 11, 42, -139, 0, 7, 0}, { 10, 42, -140, 0, 7, 0}, { 9, 42, -141, 0, 7, 0}, { 8, 42, -141, 0, 7, 0}, - { 7, 42, -142, 0, 7, 0}, { 6, 42, -143, 0, 7, 0}, { 6, 42, -143, 0, 7, 0}, { 5, 43, -144, 0, 7, 0}, { 4, 43, -145, 0, 7, 0}, - { 3, 43, -145, 0, 7, 0}, { 2, 43, -146, 0, 7, 0}, { 1, 43, -147, 0, 7, 0}, { 1, 43, -147, 0, 7, 0}, { 0, 43, -148, 0, 7, 0}, - { -1, 43, -149, 0, 7, 0}, { -2, 44, -149, 0, 7, 0}, { -3, 44, -150, 0, 6, 0}, { -4, 44, -150, 0, 6, 0}, { -4, 44, -151, 0, 6, 0}, - { -5, 44, -152, 0, 6, 0}, { -6, 44, -152, 0, 6, 0}, { -7, 44, -153, 0, 6, 0}, { -8, 44, -154, 0, 6, 0}, { -9, 45, -154, 0, 6, 0}, - { -10, 45, -155, 0, 6, 0}, { -11, 45, -155, 0, 6, 0}, { -11, 45, -156, 0, 6, 0}, { -12, 45, -156, 0, 6, 0}, { -13, 45, -157, 0, 6, 0}, - { -14, 45, -158, 0, 6, 0}, { -15, 46, -158, 0, 6, 0}, { -16, 46, -159, 0, 6, 0}, { -17, 46, -159, 0, 6, 0}, { -18, 46, -160, 0, 6, 0}, - { -18, 46, -160, 0, 6, 0}, { -19, 46, -161, 0, 6, 0}, { -20, 46, -161, 0, 6, 0}, { -21, 46, -162, 0, 6, 0}, { -22, 47, -162, 0, 6, 0}, - { -23, 47, -163, 0, 6, 0}, { -24, 47, -163, 0, 6, 0}, { -25, 47, -164, 0, 6, 0}, { -26, 47, -164, 0, 6, 0}, { -26, 47, -165, 0, 6, 0}, - { -27, 47, -165, 0, 6, 0}, { -28, 47, -166, 0, 6, 0}, { -29, 48, -166, 0, 6, 0}, { -30, 48, -167, 0, 6, 0}, { -31, 48, -167, 0, 6, 0}, + {0, 16, 35, 0, 16, 0}, {1, 16, 35, 0, 16, 0}, {2, 16, 35, 0, 16, 0}, {3, 16, 35, 0, 16, 0}, {4, 17, 35, 0, 16, 0}, + {5, 17, 35, 0, 16, 0}, {6, 17, 35, 0, 16, 0}, {7, 17, 35, 0, 16, 0}, {8, 17, 34, 0, 23, 0}, {9, 17, 34, 0, 23, 0}, + {10, 17, 34, 0, 23, 0}, {11, 17, 34, 0, 23, 0}, {12, 18, 34, 0, 23, 0}, {13, 18, 33, 0, 23, 0}, {14, 18, 33, 0, 23, 0}, + {15, 18, 33, 0, 23, 0}, {16, 18, 32, 0, 23, 0}, {17, 18, 32, 0, 23, 0}, {18, 18, 32, 0, 23, 0}, {19, 18, 31, 0, 23, 0}, + {20, 19, 31, 0, 23, 0}, {21, 19, 31, 0, 23, 0}, {21, 19, 30, 0, 23, 0}, {22, 19, 30, 0, 23, 0}, {23, 19, 29, 0, 22, 0}, + {24, 19, 29, 0, 22, 0}, {25, 19, 28, 0, 22, 0}, {26, 20, 28, 0, 22, 0}, {27, 20, 27, 0, 22, 0}, {28, 20, 27, 0, 22, 0}, + {29, 20, 26, 0, 22, 0}, {30, 20, 26, 0, 22, 0}, {30, 20, 25, 0, 22, 0}, {31, 20, 24, 0, 22, 0}, {32, 20, 24, 0, 22, 0}, + {33, 21, 23, 0, 22, 0}, {34, 21, 22, 0, 22, 0}, {35, 21, 22, 0, 22, 0}, {35, 21, 21, 0, 22, 0}, {36, 21, 20, 0, 22, 0}, + {37, 21, 20, 0, 21, 0}, {38, 21, 19, 0, 21, 0}, {39, 21, 18, 0, 21, 0}, {39, 22, 17, 0, 21, 0}, {40, 22, 17, 0, 21, 0}, + {41, 22, 16, 0, 21, 0}, {41, 22, 15, 0, 21, 0}, {42, 22, 14, 0, 21, 0}, {43, 22, 13, 0, 21, 0}, {44, 22, 12, 0, 21, 0}, + {44, 23, 11, 0, 21, 0}, {45, 23, 11, 0, 21, 0}, {46, 23, 10, 0, 21, 0}, {46, 23, 9, 0, 21, 0}, {47, 23, 8, 0, 21, 0}, + {48, 23, 7, 0, 21, 0}, {48, 23, 6, 0, 21, 0}, {49, 23, 5, 0, 20, 0}, {49, 24, 4, 0, 20, 0}, {50, 24, 3, 0, 20, 0}, + {50, 24, 2, 0, 20, 0}, {51, 24, 1, 0, 20, 0}, {52, 24, 0, 0, 20, 0}, {52, 24, -1, 0, 20, 0}, {53, 24, -2, 0, 20, 0}, + {53, 24, -3, 0, 20, 0}, {54, 25, -4, 0, 20, 0}, {54, 25, -5, 0, 20, 0}, {54, 25, -6, 0, 20, 0}, {55, 25, -8, 0, 20, 0}, + {55, 25, -9, 0, 20, 0}, {56, 25, -10, 0, 20, 0}, {56, 25, -11, 0, 20, 0}, {56, 26, -12, 0, 19, 0}, {57, 26, -13, 0, 19, 0}, + {57, 26, -14, 0, 19, 0}, {58, 26, -15, 0, 19, 0}, {58, 26, -17, 0, 19, 0}, {58, 26, -18, 0, 19, 0}, {58, 26, -19, 0, 19, 0}, + {59, 26, -20, 0, 19, 0}, {59, 27, -21, 0, 19, 0}, {59, 27, -22, 0, 19, 0}, {59, 27, -24, 0, 19, 0}, {60, 27, -25, 0, 19, 0}, + {60, 27, -26, 0, 19, 0}, {60, 27, -27, 0, 19, 0}, {60, 27, -28, 0, 19, 0}, {60, 28, -30, 0, 19, 0}, {60, 28, -31, 0, 18, 0}, + {60, 28, -32, 0, 18, 0}, {61, 28, -33, 0, 18, 0}, {61, 28, -34, 0, 18, 0}, {61, 28, -36, 0, 18, 0}, {61, 28, -37, 0, 18, 0}, + {61, 28, -38, 0, 18, 0}, {61, 29, -39, 0, 18, 0}, {61, 29, -40, 0, 18, 0}, {61, 29, -42, 0, 18, 0}, {61, 29, -43, 0, 18, 0}, + {61, 29, -44, 0, 18, 0}, {61, 29, -45, 0, 18, 0}, {60, 29, -46, 0, 18, 0}, {60, 29, -48, 0, 18, 0}, {60, 30, -49, 0, 17, 0}, + {60, 30, -50, 0, 17, 0}, {60, 30, -51, 0, 17, 0}, {60, 30, -52, 0, 17, 0}, {60, 30, -54, 0, 17, 0}, {59, 30, -55, 0, 17, 0}, + {59, 30, -56, 0, 17, 0}, {59, 31, -57, 0, 17, 0}, {59, 31, -58, 0, 17, 0}, {58, 31, -60, 0, 17, 0}, {58, 31, -61, 0, 17, 0}, + {58, 31, -62, 0, 17, 0}, {58, 31, -63, 0, 17, 0}, {57, 31, -64, 0, 17, 0}, {57, 31, -65, 0, 17, 0}, {57, 32, -67, 0, 17, 0}, + {56, 32, -68, 0, 17, 0}, {56, 32, -69, 0, 17, 0}, {56, 32, -70, 0, 17, 0}, {55, 32, -71, 0, 17, 0}, {55, 32, -72, 0, 17, 0}, + {55, 32, -73, 0, 17, 0}, {54, 32, -75, 0, 17, 0}, {54, 33, -76, 0, 17, 0}, {53, 33, -77, 0, 8, 0}, {53, 33, -78, 0, 8, 0}, + {53, 33, -79, 0, 8, 0}, {52, 33, -80, 0, 8, 0}, {52, 33, -81, 0, 8, 0}, {51, 33, -82, 0, 8, 0}, {51, 34, -83, 0, 8, 0}, + {50, 34, -84, 0, 8, 0}, {50, 34, -85, 0, 8, 0}, {50, 34, -87, 0, 8, 0}, {49, 34, -88, 0, 8, 0}, {49, 34, -89, 0, 8, 0}, + {48, 34, -90, 0, 8, 0}, {48, 34, -91, 0, 8, 0}, {47, 35, -92, 0, 8, 0}, {47, 35, -93, 0, 8, 0}, {46, 35, -94, 0, 8, 0}, + {45, 35, -95, 0, 8, 0}, {45, 35, -96, 0, 8, 0}, {44, 35, -97, 0, 8, 0}, {44, 35, -98, 0, 8, 0}, {43, 35, -99, 0, 8, 0}, + {43, 36, -100, 0, 8, 0}, {42, 36, -101, 0, 8, 0}, {42, 36, -102, 0, 8, 0}, {41, 36, -103, 0, 8, 0}, {40, 36, -104, 0, 8, 0}, + {40, 36, -105, 0, 8, 0}, {39, 36, -106, 0, 8, 0}, {38, 37, -107, 0, 8, 0}, {38, 37, -108, 0, 8, 0}, {37, 37, -109, 0, 8, 0}, + {37, 37, -110, 0, 8, 0}, {36, 37, -110, 0, 8, 0}, {35, 37, -111, 0, 7, 0}, {35, 37, -112, 0, 7, 0}, {34, 37, -113, 0, 7, 0}, + {33, 38, -114, 0, 7, 0}, {33, 38, -115, 0, 7, 0}, {32, 38, -116, 0, 7, 0}, {31, 38, -117, 0, 7, 0}, {31, 38, -118, 0, 7, 0}, + {30, 38, -119, 0, 7, 0}, {29, 38, -119, 0, 7, 0}, {29, 38, -120, 0, 7, 0}, {28, 39, -121, 0, 7, 0}, {27, 39, -122, 0, 7, 0}, + {26, 39, -123, 0, 7, 0}, {26, 39, -124, 0, 7, 0}, {25, 39, -124, 0, 7, 0}, {24, 39, -125, 0, 7, 0}, {24, 39, -126, 0, 7, 0}, + {23, 40, -127, 0, 7, 0}, {22, 40, -128, 0, 7, 0}, {21, 40, -129, 0, 7, 0}, {21, 40, -129, 0, 7, 0}, {20, 40, -130, 0, 7, 0}, + {19, 40, -131, 0, 7, 0}, {18, 40, -132, 0, 7, 0}, {18, 40, -132, 0, 7, 0}, {17, 41, -133, 0, 7, 0}, {16, 41, -134, 0, 7, 0}, + {15, 41, -135, 0, 7, 0}, {14, 41, -135, 0, 7, 0}, {14, 41, -136, 0, 7, 0}, {13, 41, -137, 0, 7, 0}, {12, 41, -138, 0, 7, 0}, + {11, 41, -138, 0, 7, 0}, {11, 42, -139, 0, 7, 0}, {10, 42, -140, 0, 7, 0}, {9, 42, -141, 0, 7, 0}, {8, 42, -141, 0, 7, 0}, + {7, 42, -142, 0, 7, 0}, {6, 42, -143, 0, 7, 0}, {6, 42, -143, 0, 7, 0}, {5, 43, -144, 0, 7, 0}, {4, 43, -145, 0, 7, 0}, + {3, 43, -145, 0, 7, 0}, {2, 43, -146, 0, 7, 0}, {1, 43, -147, 0, 7, 0}, {1, 43, -147, 0, 7, 0}, {0, 43, -148, 0, 7, 0}, + {-1, 43, -149, 0, 7, 0}, {-2, 44, -149, 0, 7, 0}, {-3, 44, -150, 0, 6, 0}, {-4, 44, -150, 0, 6, 0}, {-4, 44, -151, 0, 6, 0}, + {-5, 44, -152, 0, 6, 0}, {-6, 44, -152, 0, 6, 0}, {-7, 44, -153, 0, 6, 0}, {-8, 44, -154, 0, 6, 0}, {-9, 45, -154, 0, 6, 0}, + {-10, 45, -155, 0, 6, 0}, {-11, 45, -155, 0, 6, 0}, {-11, 45, -156, 0, 6, 0}, {-12, 45, -156, 0, 6, 0}, {-13, 45, -157, 0, 6, 0}, + {-14, 45, -158, 0, 6, 0}, {-15, 46, -158, 0, 6, 0}, {-16, 46, -159, 0, 6, 0}, {-17, 46, -159, 0, 6, 0}, {-18, 46, -160, 0, 6, 0}, + {-18, 46, -160, 0, 6, 0}, {-19, 46, -161, 0, 6, 0}, {-20, 46, -161, 0, 6, 0}, {-21, 46, -162, 0, 6, 0}, {-22, 47, -162, 0, 6, 0}, + {-23, 47, -163, 0, 6, 0}, {-24, 47, -163, 0, 6, 0}, {-25, 47, -164, 0, 6, 0}, {-26, 47, -164, 0, 6, 0}, {-26, 47, -165, 0, 6, 0}, + {-27, 47, -165, 0, 6, 0}, {-28, 47, -166, 0, 6, 0}, {-29, 48, -166, 0, 6, 0}, {-30, 48, -167, 0, 6, 0}, {-31, 48, -167, 0, 6, 0}, }) CREATE_VEHICLE_INFO(TrackVehicleInfoLeftMediumHalfLoopDown3, { - { 16, 31, 35, 8, 16, 0}, { 16, 30, 35, 8, 16, 0}, { 16, 29, 35, 8, 16, 0}, { 17, 28, 35, 8, 16, 0}, { 17, 27, 35, 8, 16, 0}, - { 17, 26, 35, 8, 16, 0}, { 17, 25, 35, 8, 16, 0}, { 17, 24, 34, 8, 23, 0}, { 17, 23, 34, 8, 23, 0}, { 17, 22, 34, 8, 23, 0}, - { 17, 21, 34, 8, 23, 0}, { 18, 20, 34, 8, 23, 0}, { 18, 19, 33, 8, 23, 0}, { 18, 18, 33, 8, 23, 0}, { 18, 17, 33, 8, 23, 0}, - { 18, 16, 32, 8, 23, 0}, { 18, 15, 32, 8, 23, 0}, { 18, 14, 32, 8, 23, 0}, { 18, 13, 31, 8, 23, 0}, { 19, 12, 31, 8, 23, 0}, - { 19, 11, 31, 8, 23, 0}, { 19, 11, 30, 8, 23, 0}, { 19, 10, 30, 8, 23, 0}, { 19, 9, 29, 8, 22, 0}, { 19, 8, 29, 8, 22, 0}, - { 19, 7, 28, 8, 22, 0}, { 20, 6, 28, 8, 22, 0}, { 20, 5, 27, 8, 22, 0}, { 20, 4, 27, 8, 22, 0}, { 20, 3, 26, 8, 22, 0}, - { 20, 2, 26, 8, 22, 0}, { 20, 2, 25, 8, 22, 0}, { 20, 1, 24, 8, 22, 0}, { 20, 0, 24, 8, 22, 0}, { 21, -1, 23, 8, 22, 0}, - { 21, -2, 22, 8, 22, 0}, { 21, -3, 22, 8, 22, 0}, { 21, -3, 21, 8, 22, 0}, { 21, -4, 20, 8, 22, 0}, { 21, -5, 20, 8, 21, 0}, - { 21, -6, 19, 8, 21, 0}, { 21, -7, 18, 8, 21, 0}, { 22, -7, 17, 8, 21, 0}, { 22, -8, 17, 8, 21, 0}, { 22, -9, 16, 8, 21, 0}, - { 22, -9, 15, 8, 21, 0}, { 22, -10, 14, 8, 21, 0}, { 22, -11, 13, 8, 21, 0}, { 22, -12, 12, 8, 21, 0}, { 23, -12, 11, 8, 21, 0}, - { 23, -13, 11, 8, 21, 0}, { 23, -14, 10, 8, 21, 0}, { 23, -14, 9, 8, 21, 0}, { 23, -15, 8, 8, 21, 0}, { 23, -16, 7, 8, 21, 0}, - { 23, -16, 6, 8, 21, 0}, { 23, -17, 5, 8, 20, 0}, { 24, -17, 4, 8, 20, 0}, { 24, -18, 3, 8, 20, 0}, { 24, -18, 2, 8, 20, 0}, - { 24, -19, 1, 8, 20, 0}, { 24, -20, 0, 8, 20, 0}, { 24, -20, -1, 8, 20, 0}, { 24, -21, -2, 8, 20, 0}, { 24, -21, -3, 8, 20, 0}, - { 25, -22, -4, 8, 20, 0}, { 25, -22, -5, 8, 20, 0}, { 25, -22, -6, 8, 20, 0}, { 25, -23, -8, 8, 20, 0}, { 25, -23, -9, 8, 20, 0}, - { 25, -24, -10, 8, 20, 0}, { 25, -24, -11, 8, 20, 0}, { 26, -24, -12, 8, 19, 0}, { 26, -25, -13, 8, 19, 0}, { 26, -25, -14, 8, 19, 0}, - { 26, -26, -15, 8, 19, 0}, { 26, -26, -17, 8, 19, 0}, { 26, -26, -18, 8, 19, 0}, { 26, -26, -19, 8, 19, 0}, { 26, -27, -20, 8, 19, 0}, - { 27, -27, -21, 8, 19, 0}, { 27, -27, -22, 8, 19, 0}, { 27, -27, -24, 8, 19, 0}, { 27, -28, -25, 8, 19, 0}, { 27, -28, -26, 8, 19, 0}, - { 27, -28, -27, 8, 19, 0}, { 27, -28, -28, 8, 19, 0}, { 28, -28, -30, 8, 19, 0}, { 28, -28, -31, 8, 18, 0}, { 28, -28, -32, 8, 18, 0}, - { 28, -29, -33, 8, 18, 0}, { 28, -29, -34, 8, 18, 0}, { 28, -29, -36, 8, 18, 0}, { 28, -29, -37, 8, 18, 0}, { 28, -29, -38, 8, 18, 0}, - { 29, -29, -39, 8, 18, 0}, { 29, -29, -40, 8, 18, 0}, { 29, -29, -42, 8, 18, 0}, { 29, -29, -43, 8, 18, 0}, { 29, -29, -44, 8, 18, 0}, - { 29, -29, -45, 8, 18, 0}, { 29, -28, -46, 8, 18, 0}, { 29, -28, -48, 8, 18, 0}, { 30, -28, -49, 8, 17, 0}, { 30, -28, -50, 8, 17, 0}, - { 30, -28, -51, 8, 17, 0}, { 30, -28, -52, 8, 17, 0}, { 30, -28, -54, 8, 17, 0}, { 30, -27, -55, 8, 17, 0}, { 30, -27, -56, 8, 17, 0}, - { 31, -27, -57, 8, 17, 0}, { 31, -27, -58, 8, 17, 0}, { 31, -26, -60, 8, 17, 0}, { 31, -26, -61, 8, 17, 0}, { 31, -26, -62, 8, 17, 0}, - { 31, -26, -63, 8, 17, 0}, { 31, -25, -64, 8, 17, 0}, { 31, -25, -65, 8, 17, 0}, { 32, -25, -67, 8, 17, 0}, { 32, -24, -68, 8, 17, 0}, - { 32, -24, -69, 8, 17, 0}, { 32, -24, -70, 8, 17, 0}, { 32, -23, -71, 8, 17, 0}, { 32, -23, -72, 8, 17, 0}, { 32, -23, -73, 8, 17, 0}, - { 32, -22, -75, 8, 17, 0}, { 33, -22, -76, 8, 17, 0}, { 33, -21, -77, 8, 8, 0}, { 33, -21, -78, 8, 8, 0}, { 33, -21, -79, 8, 8, 0}, - { 33, -20, -80, 8, 8, 0}, { 33, -20, -81, 8, 8, 0}, { 33, -19, -82, 8, 8, 0}, { 34, -19, -83, 8, 8, 0}, { 34, -18, -84, 8, 8, 0}, - { 34, -18, -85, 8, 8, 0}, { 34, -18, -87, 8, 8, 0}, { 34, -17, -88, 8, 8, 0}, { 34, -17, -89, 8, 8, 0}, { 34, -16, -90, 8, 8, 0}, - { 34, -16, -91, 8, 8, 0}, { 35, -15, -92, 8, 8, 0}, { 35, -15, -93, 8, 8, 0}, { 35, -14, -94, 8, 8, 0}, { 35, -13, -95, 8, 8, 0}, - { 35, -13, -96, 8, 8, 0}, { 35, -12, -97, 8, 8, 0}, { 35, -12, -98, 8, 8, 0}, { 35, -11, -99, 8, 8, 0}, { 36, -11, -100, 8, 8, 0}, - { 36, -10, -101, 8, 8, 0}, { 36, -10, -102, 8, 8, 0}, { 36, -9, -103, 8, 8, 0}, { 36, -8, -104, 8, 8, 0}, { 36, -8, -105, 8, 8, 0}, - { 36, -7, -106, 8, 8, 0}, { 37, -6, -107, 8, 8, 0}, { 37, -6, -108, 8, 8, 0}, { 37, -5, -109, 8, 8, 0}, { 37, -5, -110, 8, 8, 0}, - { 37, -4, -110, 8, 8, 0}, { 37, -3, -111, 8, 7, 0}, { 37, -3, -112, 8, 7, 0}, { 37, -2, -113, 8, 7, 0}, { 38, -1, -114, 8, 7, 0}, - { 38, -1, -115, 8, 7, 0}, { 38, 0, -116, 8, 7, 0}, { 38, 1, -117, 8, 7, 0}, { 38, 1, -118, 8, 7, 0}, { 38, 2, -119, 8, 7, 0}, - { 38, 3, -119, 8, 7, 0}, { 38, 3, -120, 8, 7, 0}, { 39, 4, -121, 8, 7, 0}, { 39, 5, -122, 8, 7, 0}, { 39, 6, -123, 8, 7, 0}, - { 39, 6, -124, 8, 7, 0}, { 39, 7, -124, 8, 7, 0}, { 39, 8, -125, 8, 7, 0}, { 39, 8, -126, 8, 7, 0}, { 40, 9, -127, 8, 7, 0}, - { 40, 10, -128, 8, 7, 0}, { 40, 11, -129, 8, 7, 0}, { 40, 11, -129, 8, 7, 0}, { 40, 12, -130, 8, 7, 0}, { 40, 13, -131, 8, 7, 0}, - { 40, 14, -132, 8, 7, 0}, { 40, 14, -132, 8, 7, 0}, { 41, 15, -133, 8, 7, 0}, { 41, 16, -134, 8, 7, 0}, { 41, 17, -135, 8, 7, 0}, - { 41, 18, -135, 8, 7, 0}, { 41, 18, -136, 8, 7, 0}, { 41, 19, -137, 8, 7, 0}, { 41, 20, -138, 8, 7, 0}, { 41, 21, -138, 8, 7, 0}, - { 42, 21, -139, 8, 7, 0}, { 42, 22, -140, 8, 7, 0}, { 42, 23, -141, 8, 7, 0}, { 42, 24, -141, 8, 7, 0}, { 42, 25, -142, 8, 7, 0}, - { 42, 26, -143, 8, 7, 0}, { 42, 26, -143, 8, 7, 0}, { 43, 27, -144, 8, 7, 0}, { 43, 28, -145, 8, 7, 0}, { 43, 29, -145, 8, 7, 0}, - { 43, 30, -146, 8, 7, 0}, { 43, 31, -147, 8, 7, 0}, { 43, 31, -147, 8, 7, 0}, { 43, 32, -148, 8, 7, 0}, { 43, 33, -149, 8, 7, 0}, - { 44, 34, -149, 8, 7, 0}, { 44, 35, -150, 8, 6, 0}, { 44, 36, -150, 8, 6, 0}, { 44, 36, -151, 8, 6, 0}, { 44, 37, -152, 8, 6, 0}, - { 44, 38, -152, 8, 6, 0}, { 44, 39, -153, 8, 6, 0}, { 44, 40, -154, 8, 6, 0}, { 45, 41, -154, 8, 6, 0}, { 45, 42, -155, 8, 6, 0}, - { 45, 43, -155, 8, 6, 0}, { 45, 43, -156, 8, 6, 0}, { 45, 44, -156, 8, 6, 0}, { 45, 45, -157, 8, 6, 0}, { 45, 46, -158, 8, 6, 0}, - { 46, 47, -158, 8, 6, 0}, { 46, 48, -159, 8, 6, 0}, { 46, 49, -159, 8, 6, 0}, { 46, 50, -160, 8, 6, 0}, { 46, 50, -160, 8, 6, 0}, - { 46, 51, -161, 8, 6, 0}, { 46, 52, -161, 8, 6, 0}, { 46, 53, -162, 8, 6, 0}, { 47, 54, -162, 8, 6, 0}, { 47, 55, -163, 8, 6, 0}, - { 47, 56, -163, 8, 6, 0}, { 47, 57, -164, 8, 6, 0}, { 47, 58, -164, 8, 6, 0}, { 47, 58, -165, 8, 6, 0}, { 47, 59, -165, 8, 6, 0}, - { 47, 60, -166, 8, 6, 0}, { 48, 61, -166, 8, 6, 0}, { 48, 62, -167, 8, 6, 0}, { 48, 63, -167, 8, 6, 0}, { 48, 64, -168, 8, 6, 0}, + {16, 31, 35, 8, 16, 0}, {16, 30, 35, 8, 16, 0}, {16, 29, 35, 8, 16, 0}, {17, 28, 35, 8, 16, 0}, {17, 27, 35, 8, 16, 0}, + {17, 26, 35, 8, 16, 0}, {17, 25, 35, 8, 16, 0}, {17, 24, 34, 8, 23, 0}, {17, 23, 34, 8, 23, 0}, {17, 22, 34, 8, 23, 0}, + {17, 21, 34, 8, 23, 0}, {18, 20, 34, 8, 23, 0}, {18, 19, 33, 8, 23, 0}, {18, 18, 33, 8, 23, 0}, {18, 17, 33, 8, 23, 0}, + {18, 16, 32, 8, 23, 0}, {18, 15, 32, 8, 23, 0}, {18, 14, 32, 8, 23, 0}, {18, 13, 31, 8, 23, 0}, {19, 12, 31, 8, 23, 0}, + {19, 11, 31, 8, 23, 0}, {19, 11, 30, 8, 23, 0}, {19, 10, 30, 8, 23, 0}, {19, 9, 29, 8, 22, 0}, {19, 8, 29, 8, 22, 0}, + {19, 7, 28, 8, 22, 0}, {20, 6, 28, 8, 22, 0}, {20, 5, 27, 8, 22, 0}, {20, 4, 27, 8, 22, 0}, {20, 3, 26, 8, 22, 0}, + {20, 2, 26, 8, 22, 0}, {20, 2, 25, 8, 22, 0}, {20, 1, 24, 8, 22, 0}, {20, 0, 24, 8, 22, 0}, {21, -1, 23, 8, 22, 0}, + {21, -2, 22, 8, 22, 0}, {21, -3, 22, 8, 22, 0}, {21, -3, 21, 8, 22, 0}, {21, -4, 20, 8, 22, 0}, {21, -5, 20, 8, 21, 0}, + {21, -6, 19, 8, 21, 0}, {21, -7, 18, 8, 21, 0}, {22, -7, 17, 8, 21, 0}, {22, -8, 17, 8, 21, 0}, {22, -9, 16, 8, 21, 0}, + {22, -9, 15, 8, 21, 0}, {22, -10, 14, 8, 21, 0}, {22, -11, 13, 8, 21, 0}, {22, -12, 12, 8, 21, 0}, {23, -12, 11, 8, 21, 0}, + {23, -13, 11, 8, 21, 0}, {23, -14, 10, 8, 21, 0}, {23, -14, 9, 8, 21, 0}, {23, -15, 8, 8, 21, 0}, {23, -16, 7, 8, 21, 0}, + {23, -16, 6, 8, 21, 0}, {23, -17, 5, 8, 20, 0}, {24, -17, 4, 8, 20, 0}, {24, -18, 3, 8, 20, 0}, {24, -18, 2, 8, 20, 0}, + {24, -19, 1, 8, 20, 0}, {24, -20, 0, 8, 20, 0}, {24, -20, -1, 8, 20, 0}, {24, -21, -2, 8, 20, 0}, {24, -21, -3, 8, 20, 0}, + {25, -22, -4, 8, 20, 0}, {25, -22, -5, 8, 20, 0}, {25, -22, -6, 8, 20, 0}, {25, -23, -8, 8, 20, 0}, {25, -23, -9, 8, 20, 0}, + {25, -24, -10, 8, 20, 0}, {25, -24, -11, 8, 20, 0}, {26, -24, -12, 8, 19, 0}, {26, -25, -13, 8, 19, 0}, {26, -25, -14, 8, 19, 0}, + {26, -26, -15, 8, 19, 0}, {26, -26, -17, 8, 19, 0}, {26, -26, -18, 8, 19, 0}, {26, -26, -19, 8, 19, 0}, {26, -27, -20, 8, 19, 0}, + {27, -27, -21, 8, 19, 0}, {27, -27, -22, 8, 19, 0}, {27, -27, -24, 8, 19, 0}, {27, -28, -25, 8, 19, 0}, {27, -28, -26, 8, 19, 0}, + {27, -28, -27, 8, 19, 0}, {27, -28, -28, 8, 19, 0}, {28, -28, -30, 8, 19, 0}, {28, -28, -31, 8, 18, 0}, {28, -28, -32, 8, 18, 0}, + {28, -29, -33, 8, 18, 0}, {28, -29, -34, 8, 18, 0}, {28, -29, -36, 8, 18, 0}, {28, -29, -37, 8, 18, 0}, {28, -29, -38, 8, 18, 0}, + {29, -29, -39, 8, 18, 0}, {29, -29, -40, 8, 18, 0}, {29, -29, -42, 8, 18, 0}, {29, -29, -43, 8, 18, 0}, {29, -29, -44, 8, 18, 0}, + {29, -29, -45, 8, 18, 0}, {29, -28, -46, 8, 18, 0}, {29, -28, -48, 8, 18, 0}, {30, -28, -49, 8, 17, 0}, {30, -28, -50, 8, 17, 0}, + {30, -28, -51, 8, 17, 0}, {30, -28, -52, 8, 17, 0}, {30, -28, -54, 8, 17, 0}, {30, -27, -55, 8, 17, 0}, {30, -27, -56, 8, 17, 0}, + {31, -27, -57, 8, 17, 0}, {31, -27, -58, 8, 17, 0}, {31, -26, -60, 8, 17, 0}, {31, -26, -61, 8, 17, 0}, {31, -26, -62, 8, 17, 0}, + {31, -26, -63, 8, 17, 0}, {31, -25, -64, 8, 17, 0}, {31, -25, -65, 8, 17, 0}, {32, -25, -67, 8, 17, 0}, {32, -24, -68, 8, 17, 0}, + {32, -24, -69, 8, 17, 0}, {32, -24, -70, 8, 17, 0}, {32, -23, -71, 8, 17, 0}, {32, -23, -72, 8, 17, 0}, {32, -23, -73, 8, 17, 0}, + {32, -22, -75, 8, 17, 0}, {33, -22, -76, 8, 17, 0}, {33, -21, -77, 8, 8, 0}, {33, -21, -78, 8, 8, 0}, {33, -21, -79, 8, 8, 0}, + {33, -20, -80, 8, 8, 0}, {33, -20, -81, 8, 8, 0}, {33, -19, -82, 8, 8, 0}, {34, -19, -83, 8, 8, 0}, {34, -18, -84, 8, 8, 0}, + {34, -18, -85, 8, 8, 0}, {34, -18, -87, 8, 8, 0}, {34, -17, -88, 8, 8, 0}, {34, -17, -89, 8, 8, 0}, {34, -16, -90, 8, 8, 0}, + {34, -16, -91, 8, 8, 0}, {35, -15, -92, 8, 8, 0}, {35, -15, -93, 8, 8, 0}, {35, -14, -94, 8, 8, 0}, {35, -13, -95, 8, 8, 0}, + {35, -13, -96, 8, 8, 0}, {35, -12, -97, 8, 8, 0}, {35, -12, -98, 8, 8, 0}, {35, -11, -99, 8, 8, 0}, {36, -11, -100, 8, 8, 0}, + {36, -10, -101, 8, 8, 0}, {36, -10, -102, 8, 8, 0}, {36, -9, -103, 8, 8, 0}, {36, -8, -104, 8, 8, 0}, {36, -8, -105, 8, 8, 0}, + {36, -7, -106, 8, 8, 0}, {37, -6, -107, 8, 8, 0}, {37, -6, -108, 8, 8, 0}, {37, -5, -109, 8, 8, 0}, {37, -5, -110, 8, 8, 0}, + {37, -4, -110, 8, 8, 0}, {37, -3, -111, 8, 7, 0}, {37, -3, -112, 8, 7, 0}, {37, -2, -113, 8, 7, 0}, {38, -1, -114, 8, 7, 0}, + {38, -1, -115, 8, 7, 0}, {38, 0, -116, 8, 7, 0}, {38, 1, -117, 8, 7, 0}, {38, 1, -118, 8, 7, 0}, {38, 2, -119, 8, 7, 0}, + {38, 3, -119, 8, 7, 0}, {38, 3, -120, 8, 7, 0}, {39, 4, -121, 8, 7, 0}, {39, 5, -122, 8, 7, 0}, {39, 6, -123, 8, 7, 0}, + {39, 6, -124, 8, 7, 0}, {39, 7, -124, 8, 7, 0}, {39, 8, -125, 8, 7, 0}, {39, 8, -126, 8, 7, 0}, {40, 9, -127, 8, 7, 0}, + {40, 10, -128, 8, 7, 0}, {40, 11, -129, 8, 7, 0}, {40, 11, -129, 8, 7, 0}, {40, 12, -130, 8, 7, 0}, {40, 13, -131, 8, 7, 0}, + {40, 14, -132, 8, 7, 0}, {40, 14, -132, 8, 7, 0}, {41, 15, -133, 8, 7, 0}, {41, 16, -134, 8, 7, 0}, {41, 17, -135, 8, 7, 0}, + {41, 18, -135, 8, 7, 0}, {41, 18, -136, 8, 7, 0}, {41, 19, -137, 8, 7, 0}, {41, 20, -138, 8, 7, 0}, {41, 21, -138, 8, 7, 0}, + {42, 21, -139, 8, 7, 0}, {42, 22, -140, 8, 7, 0}, {42, 23, -141, 8, 7, 0}, {42, 24, -141, 8, 7, 0}, {42, 25, -142, 8, 7, 0}, + {42, 26, -143, 8, 7, 0}, {42, 26, -143, 8, 7, 0}, {43, 27, -144, 8, 7, 0}, {43, 28, -145, 8, 7, 0}, {43, 29, -145, 8, 7, 0}, + {43, 30, -146, 8, 7, 0}, {43, 31, -147, 8, 7, 0}, {43, 31, -147, 8, 7, 0}, {43, 32, -148, 8, 7, 0}, {43, 33, -149, 8, 7, 0}, + {44, 34, -149, 8, 7, 0}, {44, 35, -150, 8, 6, 0}, {44, 36, -150, 8, 6, 0}, {44, 36, -151, 8, 6, 0}, {44, 37, -152, 8, 6, 0}, + {44, 38, -152, 8, 6, 0}, {44, 39, -153, 8, 6, 0}, {44, 40, -154, 8, 6, 0}, {45, 41, -154, 8, 6, 0}, {45, 42, -155, 8, 6, 0}, + {45, 43, -155, 8, 6, 0}, {45, 43, -156, 8, 6, 0}, {45, 44, -156, 8, 6, 0}, {45, 45, -157, 8, 6, 0}, {45, 46, -158, 8, 6, 0}, + {46, 47, -158, 8, 6, 0}, {46, 48, -159, 8, 6, 0}, {46, 49, -159, 8, 6, 0}, {46, 50, -160, 8, 6, 0}, {46, 50, -160, 8, 6, 0}, + {46, 51, -161, 8, 6, 0}, {46, 52, -161, 8, 6, 0}, {46, 53, -162, 8, 6, 0}, {47, 54, -162, 8, 6, 0}, {47, 55, -163, 8, 6, 0}, + {47, 56, -163, 8, 6, 0}, {47, 57, -164, 8, 6, 0}, {47, 58, -164, 8, 6, 0}, {47, 58, -165, 8, 6, 0}, {47, 59, -165, 8, 6, 0}, + {47, 60, -166, 8, 6, 0}, {48, 61, -166, 8, 6, 0}, {48, 62, -167, 8, 6, 0}, {48, 63, -167, 8, 6, 0}, {48, 64, -168, 8, 6, 0}, }) CREATE_VEHICLE_INFO(TrackVehicleInfoRightMediumHalfLoopDown0, { - { 31, 16, 35, 16, 16, 0}, { 30, 16, 35, 16, 16, 0}, { 29, 16, 35, 16, 16, 0}, { 28, 17, 35, 16, 16, 0}, { 27, 17, 35, 16, 16, 0}, - { 26, 17, 35, 16, 16, 0}, { 25, 17, 35, 16, 16, 0}, { 24, 17, 34, 16, 23, 0}, { 23, 17, 34, 16, 23, 0}, { 22, 17, 34, 16, 23, 0}, - { 21, 17, 34, 16, 23, 0}, { 20, 18, 34, 16, 23, 0}, { 19, 18, 33, 16, 23, 0}, { 18, 18, 33, 16, 23, 0}, { 17, 18, 33, 16, 23, 0}, - { 16, 18, 32, 16, 23, 0}, { 15, 18, 32, 16, 23, 0}, { 14, 18, 32, 16, 23, 0}, { 13, 18, 31, 16, 23, 0}, { 12, 19, 31, 16, 23, 0}, - { 11, 19, 31, 16, 23, 0}, { 11, 19, 30, 16, 23, 0}, { 10, 19, 30, 16, 23, 0}, { 9, 19, 29, 16, 22, 0}, { 8, 19, 29, 16, 22, 0}, - { 7, 19, 28, 16, 22, 0}, { 6, 20, 28, 16, 22, 0}, { 5, 20, 27, 16, 22, 0}, { 4, 20, 27, 16, 22, 0}, { 3, 20, 26, 16, 22, 0}, - { 2, 20, 26, 16, 22, 0}, { 2, 20, 25, 16, 22, 0}, { 1, 20, 24, 16, 22, 0}, { 0, 20, 24, 16, 22, 0}, { -1, 21, 23, 16, 22, 0}, - { -2, 21, 22, 16, 22, 0}, { -3, 21, 22, 16, 22, 0}, { -3, 21, 21, 16, 22, 0}, { -4, 21, 20, 16, 22, 0}, { -5, 21, 20, 16, 21, 0}, - { -6, 21, 19, 16, 21, 0}, { -7, 21, 18, 16, 21, 0}, { -7, 22, 17, 16, 21, 0}, { -8, 22, 17, 16, 21, 0}, { -9, 22, 16, 16, 21, 0}, - { -9, 22, 15, 16, 21, 0}, { -10, 22, 14, 16, 21, 0}, { -11, 22, 13, 16, 21, 0}, { -12, 22, 12, 16, 21, 0}, { -12, 23, 11, 16, 21, 0}, - { -13, 23, 11, 16, 21, 0}, { -14, 23, 10, 16, 21, 0}, { -14, 23, 9, 16, 21, 0}, { -15, 23, 8, 16, 21, 0}, { -16, 23, 7, 16, 21, 0}, - { -16, 23, 6, 16, 21, 0}, { -17, 23, 5, 16, 20, 0}, { -17, 24, 4, 16, 20, 0}, { -18, 24, 3, 16, 20, 0}, { -18, 24, 2, 16, 20, 0}, - { -19, 24, 1, 16, 20, 0}, { -20, 24, 0, 16, 20, 0}, { -20, 24, -1, 16, 20, 0}, { -21, 24, -2, 16, 20, 0}, { -21, 24, -3, 16, 20, 0}, - { -22, 25, -4, 16, 20, 0}, { -22, 25, -5, 16, 20, 0}, { -22, 25, -6, 16, 20, 0}, { -23, 25, -8, 16, 20, 0}, { -23, 25, -9, 16, 20, 0}, - { -24, 25, -10, 16, 20, 0}, { -24, 25, -11, 16, 20, 0}, { -24, 26, -12, 16, 19, 0}, { -25, 26, -13, 16, 19, 0}, { -25, 26, -14, 16, 19, 0}, - { -26, 26, -15, 16, 19, 0}, { -26, 26, -17, 16, 19, 0}, { -26, 26, -18, 16, 19, 0}, { -26, 26, -19, 16, 19, 0}, { -27, 26, -20, 16, 19, 0}, - { -27, 27, -21, 16, 19, 0}, { -27, 27, -22, 16, 19, 0}, { -27, 27, -24, 16, 19, 0}, { -28, 27, -25, 16, 19, 0}, { -28, 27, -26, 16, 19, 0}, - { -28, 27, -27, 16, 19, 0}, { -28, 27, -28, 16, 19, 0}, { -28, 28, -30, 16, 19, 0}, { -28, 28, -31, 16, 18, 0}, { -28, 28, -32, 16, 18, 0}, - { -29, 28, -33, 16, 18, 0}, { -29, 28, -34, 16, 18, 0}, { -29, 28, -36, 16, 18, 0}, { -29, 28, -37, 16, 18, 0}, { -29, 28, -38, 16, 18, 0}, - { -29, 29, -39, 16, 18, 0}, { -29, 29, -40, 16, 18, 0}, { -29, 29, -42, 16, 18, 0}, { -29, 29, -43, 16, 18, 0}, { -29, 29, -44, 16, 18, 0}, - { -29, 29, -45, 16, 18, 0}, { -28, 29, -46, 16, 18, 0}, { -28, 29, -48, 16, 18, 0}, { -28, 30, -49, 16, 17, 0}, { -28, 30, -50, 16, 17, 0}, - { -28, 30, -51, 16, 17, 0}, { -28, 30, -52, 16, 17, 0}, { -28, 30, -54, 16, 17, 0}, { -27, 30, -55, 16, 17, 0}, { -27, 30, -56, 16, 17, 0}, - { -27, 31, -57, 16, 17, 0}, { -27, 31, -58, 16, 17, 0}, { -26, 31, -60, 16, 17, 0}, { -26, 31, -61, 16, 17, 0}, { -26, 31, -62, 16, 17, 0}, - { -26, 31, -63, 16, 17, 0}, { -25, 31, -64, 16, 17, 0}, { -25, 31, -65, 16, 17, 0}, { -25, 32, -67, 16, 17, 0}, { -24, 32, -68, 16, 17, 0}, - { -24, 32, -69, 16, 17, 0}, { -24, 32, -70, 16, 17, 0}, { -23, 32, -71, 16, 17, 0}, { -23, 32, -72, 16, 17, 0}, { -23, 32, -73, 16, 17, 0}, - { -22, 32, -75, 16, 17, 0}, { -22, 33, -76, 16, 17, 0}, { -21, 33, -77, 16, 8, 0}, { -21, 33, -78, 16, 8, 0}, { -21, 33, -79, 16, 8, 0}, - { -20, 33, -80, 16, 8, 0}, { -20, 33, -81, 16, 8, 0}, { -19, 33, -82, 16, 8, 0}, { -19, 34, -83, 16, 8, 0}, { -18, 34, -84, 16, 8, 0}, - { -18, 34, -85, 16, 8, 0}, { -18, 34, -87, 16, 8, 0}, { -17, 34, -88, 16, 8, 0}, { -17, 34, -89, 16, 8, 0}, { -16, 34, -90, 16, 8, 0}, - { -16, 34, -91, 16, 8, 0}, { -15, 35, -92, 16, 8, 0}, { -15, 35, -93, 16, 8, 0}, { -14, 35, -94, 16, 8, 0}, { -13, 35, -95, 16, 8, 0}, - { -13, 35, -96, 16, 8, 0}, { -12, 35, -97, 16, 8, 0}, { -12, 35, -98, 16, 8, 0}, { -11, 35, -99, 16, 8, 0}, { -11, 36, -100, 16, 8, 0}, - { -10, 36, -101, 16, 8, 0}, { -10, 36, -102, 16, 8, 0}, { -9, 36, -103, 16, 8, 0}, { -8, 36, -104, 16, 8, 0}, { -8, 36, -105, 16, 8, 0}, - { -7, 36, -106, 16, 8, 0}, { -6, 37, -107, 16, 8, 0}, { -6, 37, -108, 16, 8, 0}, { -5, 37, -109, 16, 8, 0}, { -5, 37, -110, 16, 8, 0}, - { -4, 37, -110, 16, 8, 0}, { -3, 37, -111, 16, 7, 0}, { -3, 37, -112, 16, 7, 0}, { -2, 37, -113, 16, 7, 0}, { -1, 38, -114, 16, 7, 0}, - { -1, 38, -115, 16, 7, 0}, { 0, 38, -116, 16, 7, 0}, { 1, 38, -117, 16, 7, 0}, { 1, 38, -118, 16, 7, 0}, { 2, 38, -119, 16, 7, 0}, - { 3, 38, -119, 16, 7, 0}, { 3, 38, -120, 16, 7, 0}, { 4, 39, -121, 16, 7, 0}, { 5, 39, -122, 16, 7, 0}, { 6, 39, -123, 16, 7, 0}, - { 6, 39, -124, 16, 7, 0}, { 7, 39, -124, 16, 7, 0}, { 8, 39, -125, 16, 7, 0}, { 8, 39, -126, 16, 7, 0}, { 9, 40, -127, 16, 7, 0}, - { 10, 40, -128, 16, 7, 0}, { 11, 40, -129, 16, 7, 0}, { 11, 40, -129, 16, 7, 0}, { 12, 40, -130, 16, 7, 0}, { 13, 40, -131, 16, 7, 0}, - { 14, 40, -132, 16, 7, 0}, { 14, 40, -132, 16, 7, 0}, { 15, 41, -133, 16, 7, 0}, { 16, 41, -134, 16, 7, 0}, { 17, 41, -135, 16, 7, 0}, - { 18, 41, -135, 16, 7, 0}, { 18, 41, -136, 16, 7, 0}, { 19, 41, -137, 16, 7, 0}, { 20, 41, -138, 16, 7, 0}, { 21, 41, -138, 16, 7, 0}, - { 21, 42, -139, 16, 7, 0}, { 22, 42, -140, 16, 7, 0}, { 23, 42, -141, 16, 7, 0}, { 24, 42, -141, 16, 7, 0}, { 25, 42, -142, 16, 7, 0}, - { 26, 42, -143, 16, 7, 0}, { 26, 42, -143, 16, 7, 0}, { 27, 43, -144, 16, 7, 0}, { 28, 43, -145, 16, 7, 0}, { 29, 43, -145, 16, 7, 0}, - { 30, 43, -146, 16, 7, 0}, { 31, 43, -147, 16, 7, 0}, { 31, 43, -147, 16, 7, 0}, { 32, 43, -148, 16, 7, 0}, { 33, 43, -149, 16, 7, 0}, - { 34, 44, -149, 16, 7, 0}, { 35, 44, -150, 16, 6, 0}, { 36, 44, -150, 16, 6, 0}, { 36, 44, -151, 16, 6, 0}, { 37, 44, -152, 16, 6, 0}, - { 38, 44, -152, 16, 6, 0}, { 39, 44, -153, 16, 6, 0}, { 40, 44, -154, 16, 6, 0}, { 41, 45, -154, 16, 6, 0}, { 42, 45, -155, 16, 6, 0}, - { 43, 45, -155, 16, 6, 0}, { 43, 45, -156, 16, 6, 0}, { 44, 45, -156, 16, 6, 0}, { 45, 45, -157, 16, 6, 0}, { 46, 45, -158, 16, 6, 0}, - { 47, 46, -158, 16, 6, 0}, { 48, 46, -159, 16, 6, 0}, { 49, 46, -159, 16, 6, 0}, { 50, 46, -160, 16, 6, 0}, { 50, 46, -160, 16, 6, 0}, - { 51, 46, -161, 16, 6, 0}, { 52, 46, -161, 16, 6, 0}, { 53, 46, -162, 16, 6, 0}, { 54, 47, -162, 16, 6, 0}, { 55, 47, -163, 16, 6, 0}, - { 56, 47, -163, 16, 6, 0}, { 57, 47, -164, 16, 6, 0}, { 58, 47, -164, 16, 6, 0}, { 58, 47, -165, 16, 6, 0}, { 59, 47, -165, 16, 6, 0}, - { 60, 47, -166, 16, 6, 0}, { 61, 48, -166, 16, 6, 0}, { 62, 48, -167, 16, 6, 0}, { 63, 48, -167, 16, 6, 0}, { 64, 48, -168, 16, 6, 0}, + {31, 16, 35, 16, 16, 0}, {30, 16, 35, 16, 16, 0}, {29, 16, 35, 16, 16, 0}, {28, 17, 35, 16, 16, 0}, {27, 17, 35, 16, 16, 0}, + {26, 17, 35, 16, 16, 0}, {25, 17, 35, 16, 16, 0}, {24, 17, 34, 16, 23, 0}, {23, 17, 34, 16, 23, 0}, {22, 17, 34, 16, 23, 0}, + {21, 17, 34, 16, 23, 0}, {20, 18, 34, 16, 23, 0}, {19, 18, 33, 16, 23, 0}, {18, 18, 33, 16, 23, 0}, {17, 18, 33, 16, 23, 0}, + {16, 18, 32, 16, 23, 0}, {15, 18, 32, 16, 23, 0}, {14, 18, 32, 16, 23, 0}, {13, 18, 31, 16, 23, 0}, {12, 19, 31, 16, 23, 0}, + {11, 19, 31, 16, 23, 0}, {11, 19, 30, 16, 23, 0}, {10, 19, 30, 16, 23, 0}, {9, 19, 29, 16, 22, 0}, {8, 19, 29, 16, 22, 0}, + {7, 19, 28, 16, 22, 0}, {6, 20, 28, 16, 22, 0}, {5, 20, 27, 16, 22, 0}, {4, 20, 27, 16, 22, 0}, {3, 20, 26, 16, 22, 0}, + {2, 20, 26, 16, 22, 0}, {2, 20, 25, 16, 22, 0}, {1, 20, 24, 16, 22, 0}, {0, 20, 24, 16, 22, 0}, {-1, 21, 23, 16, 22, 0}, + {-2, 21, 22, 16, 22, 0}, {-3, 21, 22, 16, 22, 0}, {-3, 21, 21, 16, 22, 0}, {-4, 21, 20, 16, 22, 0}, {-5, 21, 20, 16, 21, 0}, + {-6, 21, 19, 16, 21, 0}, {-7, 21, 18, 16, 21, 0}, {-7, 22, 17, 16, 21, 0}, {-8, 22, 17, 16, 21, 0}, {-9, 22, 16, 16, 21, 0}, + {-9, 22, 15, 16, 21, 0}, {-10, 22, 14, 16, 21, 0}, {-11, 22, 13, 16, 21, 0}, {-12, 22, 12, 16, 21, 0}, {-12, 23, 11, 16, 21, 0}, + {-13, 23, 11, 16, 21, 0}, {-14, 23, 10, 16, 21, 0}, {-14, 23, 9, 16, 21, 0}, {-15, 23, 8, 16, 21, 0}, {-16, 23, 7, 16, 21, 0}, + {-16, 23, 6, 16, 21, 0}, {-17, 23, 5, 16, 20, 0}, {-17, 24, 4, 16, 20, 0}, {-18, 24, 3, 16, 20, 0}, {-18, 24, 2, 16, 20, 0}, + {-19, 24, 1, 16, 20, 0}, {-20, 24, 0, 16, 20, 0}, {-20, 24, -1, 16, 20, 0}, {-21, 24, -2, 16, 20, 0}, {-21, 24, -3, 16, 20, 0}, + {-22, 25, -4, 16, 20, 0}, {-22, 25, -5, 16, 20, 0}, {-22, 25, -6, 16, 20, 0}, {-23, 25, -8, 16, 20, 0}, {-23, 25, -9, 16, 20, 0}, + {-24, 25, -10, 16, 20, 0}, {-24, 25, -11, 16, 20, 0}, {-24, 26, -12, 16, 19, 0}, {-25, 26, -13, 16, 19, 0}, {-25, 26, -14, 16, 19, 0}, + {-26, 26, -15, 16, 19, 0}, {-26, 26, -17, 16, 19, 0}, {-26, 26, -18, 16, 19, 0}, {-26, 26, -19, 16, 19, 0}, {-27, 26, -20, 16, 19, 0}, + {-27, 27, -21, 16, 19, 0}, {-27, 27, -22, 16, 19, 0}, {-27, 27, -24, 16, 19, 0}, {-28, 27, -25, 16, 19, 0}, {-28, 27, -26, 16, 19, 0}, + {-28, 27, -27, 16, 19, 0}, {-28, 27, -28, 16, 19, 0}, {-28, 28, -30, 16, 19, 0}, {-28, 28, -31, 16, 18, 0}, {-28, 28, -32, 16, 18, 0}, + {-29, 28, -33, 16, 18, 0}, {-29, 28, -34, 16, 18, 0}, {-29, 28, -36, 16, 18, 0}, {-29, 28, -37, 16, 18, 0}, {-29, 28, -38, 16, 18, 0}, + {-29, 29, -39, 16, 18, 0}, {-29, 29, -40, 16, 18, 0}, {-29, 29, -42, 16, 18, 0}, {-29, 29, -43, 16, 18, 0}, {-29, 29, -44, 16, 18, 0}, + {-29, 29, -45, 16, 18, 0}, {-28, 29, -46, 16, 18, 0}, {-28, 29, -48, 16, 18, 0}, {-28, 30, -49, 16, 17, 0}, {-28, 30, -50, 16, 17, 0}, + {-28, 30, -51, 16, 17, 0}, {-28, 30, -52, 16, 17, 0}, {-28, 30, -54, 16, 17, 0}, {-27, 30, -55, 16, 17, 0}, {-27, 30, -56, 16, 17, 0}, + {-27, 31, -57, 16, 17, 0}, {-27, 31, -58, 16, 17, 0}, {-26, 31, -60, 16, 17, 0}, {-26, 31, -61, 16, 17, 0}, {-26, 31, -62, 16, 17, 0}, + {-26, 31, -63, 16, 17, 0}, {-25, 31, -64, 16, 17, 0}, {-25, 31, -65, 16, 17, 0}, {-25, 32, -67, 16, 17, 0}, {-24, 32, -68, 16, 17, 0}, + {-24, 32, -69, 16, 17, 0}, {-24, 32, -70, 16, 17, 0}, {-23, 32, -71, 16, 17, 0}, {-23, 32, -72, 16, 17, 0}, {-23, 32, -73, 16, 17, 0}, + {-22, 32, -75, 16, 17, 0}, {-22, 33, -76, 16, 17, 0}, {-21, 33, -77, 16, 8, 0}, {-21, 33, -78, 16, 8, 0}, {-21, 33, -79, 16, 8, 0}, + {-20, 33, -80, 16, 8, 0}, {-20, 33, -81, 16, 8, 0}, {-19, 33, -82, 16, 8, 0}, {-19, 34, -83, 16, 8, 0}, {-18, 34, -84, 16, 8, 0}, + {-18, 34, -85, 16, 8, 0}, {-18, 34, -87, 16, 8, 0}, {-17, 34, -88, 16, 8, 0}, {-17, 34, -89, 16, 8, 0}, {-16, 34, -90, 16, 8, 0}, + {-16, 34, -91, 16, 8, 0}, {-15, 35, -92, 16, 8, 0}, {-15, 35, -93, 16, 8, 0}, {-14, 35, -94, 16, 8, 0}, {-13, 35, -95, 16, 8, 0}, + {-13, 35, -96, 16, 8, 0}, {-12, 35, -97, 16, 8, 0}, {-12, 35, -98, 16, 8, 0}, {-11, 35, -99, 16, 8, 0}, {-11, 36, -100, 16, 8, 0}, + {-10, 36, -101, 16, 8, 0}, {-10, 36, -102, 16, 8, 0}, {-9, 36, -103, 16, 8, 0}, {-8, 36, -104, 16, 8, 0}, {-8, 36, -105, 16, 8, 0}, + {-7, 36, -106, 16, 8, 0}, {-6, 37, -107, 16, 8, 0}, {-6, 37, -108, 16, 8, 0}, {-5, 37, -109, 16, 8, 0}, {-5, 37, -110, 16, 8, 0}, + {-4, 37, -110, 16, 8, 0}, {-3, 37, -111, 16, 7, 0}, {-3, 37, -112, 16, 7, 0}, {-2, 37, -113, 16, 7, 0}, {-1, 38, -114, 16, 7, 0}, + {-1, 38, -115, 16, 7, 0}, {0, 38, -116, 16, 7, 0}, {1, 38, -117, 16, 7, 0}, {1, 38, -118, 16, 7, 0}, {2, 38, -119, 16, 7, 0}, + {3, 38, -119, 16, 7, 0}, {3, 38, -120, 16, 7, 0}, {4, 39, -121, 16, 7, 0}, {5, 39, -122, 16, 7, 0}, {6, 39, -123, 16, 7, 0}, + {6, 39, -124, 16, 7, 0}, {7, 39, -124, 16, 7, 0}, {8, 39, -125, 16, 7, 0}, {8, 39, -126, 16, 7, 0}, {9, 40, -127, 16, 7, 0}, + {10, 40, -128, 16, 7, 0}, {11, 40, -129, 16, 7, 0}, {11, 40, -129, 16, 7, 0}, {12, 40, -130, 16, 7, 0}, {13, 40, -131, 16, 7, 0}, + {14, 40, -132, 16, 7, 0}, {14, 40, -132, 16, 7, 0}, {15, 41, -133, 16, 7, 0}, {16, 41, -134, 16, 7, 0}, {17, 41, -135, 16, 7, 0}, + {18, 41, -135, 16, 7, 0}, {18, 41, -136, 16, 7, 0}, {19, 41, -137, 16, 7, 0}, {20, 41, -138, 16, 7, 0}, {21, 41, -138, 16, 7, 0}, + {21, 42, -139, 16, 7, 0}, {22, 42, -140, 16, 7, 0}, {23, 42, -141, 16, 7, 0}, {24, 42, -141, 16, 7, 0}, {25, 42, -142, 16, 7, 0}, + {26, 42, -143, 16, 7, 0}, {26, 42, -143, 16, 7, 0}, {27, 43, -144, 16, 7, 0}, {28, 43, -145, 16, 7, 0}, {29, 43, -145, 16, 7, 0}, + {30, 43, -146, 16, 7, 0}, {31, 43, -147, 16, 7, 0}, {31, 43, -147, 16, 7, 0}, {32, 43, -148, 16, 7, 0}, {33, 43, -149, 16, 7, 0}, + {34, 44, -149, 16, 7, 0}, {35, 44, -150, 16, 6, 0}, {36, 44, -150, 16, 6, 0}, {36, 44, -151, 16, 6, 0}, {37, 44, -152, 16, 6, 0}, + {38, 44, -152, 16, 6, 0}, {39, 44, -153, 16, 6, 0}, {40, 44, -154, 16, 6, 0}, {41, 45, -154, 16, 6, 0}, {42, 45, -155, 16, 6, 0}, + {43, 45, -155, 16, 6, 0}, {43, 45, -156, 16, 6, 0}, {44, 45, -156, 16, 6, 0}, {45, 45, -157, 16, 6, 0}, {46, 45, -158, 16, 6, 0}, + {47, 46, -158, 16, 6, 0}, {48, 46, -159, 16, 6, 0}, {49, 46, -159, 16, 6, 0}, {50, 46, -160, 16, 6, 0}, {50, 46, -160, 16, 6, 0}, + {51, 46, -161, 16, 6, 0}, {52, 46, -161, 16, 6, 0}, {53, 46, -162, 16, 6, 0}, {54, 47, -162, 16, 6, 0}, {55, 47, -163, 16, 6, 0}, + {56, 47, -163, 16, 6, 0}, {57, 47, -164, 16, 6, 0}, {58, 47, -164, 16, 6, 0}, {58, 47, -165, 16, 6, 0}, {59, 47, -165, 16, 6, 0}, + {60, 47, -166, 16, 6, 0}, {61, 48, -166, 16, 6, 0}, {62, 48, -167, 16, 6, 0}, {63, 48, -167, 16, 6, 0}, {64, 48, -168, 16, 6, 0}, }) CREATE_VEHICLE_INFO(TrackVehicleInfoRightMediumHalfLoopDown1, { - { 16, 0, 35, 24, 16, 0}, { 16, 1, 35, 24, 16, 0}, { 16, 2, 35, 24, 16, 0}, { 16, 3, 35, 24, 16, 0}, { 17, 4, 35, 24, 16, 0}, - { 17, 5, 35, 24, 16, 0}, { 17, 6, 35, 24, 16, 0}, { 17, 7, 35, 24, 16, 0}, { 17, 8, 34, 24, 23, 0}, { 17, 9, 34, 24, 23, 0}, - { 17, 10, 34, 24, 23, 0}, { 17, 11, 34, 24, 23, 0}, { 18, 12, 34, 24, 23, 0}, { 18, 13, 33, 24, 23, 0}, { 18, 14, 33, 24, 23, 0}, - { 18, 15, 33, 24, 23, 0}, { 18, 16, 32, 24, 23, 0}, { 18, 17, 32, 24, 23, 0}, { 18, 18, 32, 24, 23, 0}, { 18, 19, 31, 24, 23, 0}, - { 19, 20, 31, 24, 23, 0}, { 19, 21, 31, 24, 23, 0}, { 19, 21, 30, 24, 23, 0}, { 19, 22, 30, 24, 23, 0}, { 19, 23, 29, 24, 22, 0}, - { 19, 24, 29, 24, 22, 0}, { 19, 25, 28, 24, 22, 0}, { 20, 26, 28, 24, 22, 0}, { 20, 27, 27, 24, 22, 0}, { 20, 28, 27, 24, 22, 0}, - { 20, 29, 26, 24, 22, 0}, { 20, 30, 26, 24, 22, 0}, { 20, 30, 25, 24, 22, 0}, { 20, 31, 24, 24, 22, 0}, { 20, 32, 24, 24, 22, 0}, - { 21, 33, 23, 24, 22, 0}, { 21, 34, 22, 24, 22, 0}, { 21, 35, 22, 24, 22, 0}, { 21, 35, 21, 24, 22, 0}, { 21, 36, 20, 24, 22, 0}, - { 21, 37, 20, 24, 21, 0}, { 21, 38, 19, 24, 21, 0}, { 21, 39, 18, 24, 21, 0}, { 22, 39, 17, 24, 21, 0}, { 22, 40, 17, 24, 21, 0}, - { 22, 41, 16, 24, 21, 0}, { 22, 41, 15, 24, 21, 0}, { 22, 42, 14, 24, 21, 0}, { 22, 43, 13, 24, 21, 0}, { 22, 44, 12, 24, 21, 0}, - { 23, 44, 11, 24, 21, 0}, { 23, 45, 11, 24, 21, 0}, { 23, 46, 10, 24, 21, 0}, { 23, 46, 9, 24, 21, 0}, { 23, 47, 8, 24, 21, 0}, - { 23, 48, 7, 24, 21, 0}, { 23, 48, 6, 24, 21, 0}, { 23, 49, 5, 24, 20, 0}, { 24, 49, 4, 24, 20, 0}, { 24, 50, 3, 24, 20, 0}, - { 24, 50, 2, 24, 20, 0}, { 24, 51, 1, 24, 20, 0}, { 24, 52, 0, 24, 20, 0}, { 24, 52, -1, 24, 20, 0}, { 24, 53, -2, 24, 20, 0}, - { 24, 53, -3, 24, 20, 0}, { 25, 54, -4, 24, 20, 0}, { 25, 54, -5, 24, 20, 0}, { 25, 54, -6, 24, 20, 0}, { 25, 55, -8, 24, 20, 0}, - { 25, 55, -9, 24, 20, 0}, { 25, 56, -10, 24, 20, 0}, { 25, 56, -11, 24, 20, 0}, { 26, 56, -12, 24, 19, 0}, { 26, 57, -13, 24, 19, 0}, - { 26, 57, -14, 24, 19, 0}, { 26, 58, -15, 24, 19, 0}, { 26, 58, -17, 24, 19, 0}, { 26, 58, -18, 24, 19, 0}, { 26, 58, -19, 24, 19, 0}, - { 26, 59, -20, 24, 19, 0}, { 27, 59, -21, 24, 19, 0}, { 27, 59, -22, 24, 19, 0}, { 27, 59, -24, 24, 19, 0}, { 27, 60, -25, 24, 19, 0}, - { 27, 60, -26, 24, 19, 0}, { 27, 60, -27, 24, 19, 0}, { 27, 60, -28, 24, 19, 0}, { 28, 60, -30, 24, 19, 0}, { 28, 60, -31, 24, 18, 0}, - { 28, 60, -32, 24, 18, 0}, { 28, 61, -33, 24, 18, 0}, { 28, 61, -34, 24, 18, 0}, { 28, 61, -36, 24, 18, 0}, { 28, 61, -37, 24, 18, 0}, - { 28, 61, -38, 24, 18, 0}, { 29, 61, -39, 24, 18, 0}, { 29, 61, -40, 24, 18, 0}, { 29, 61, -42, 24, 18, 0}, { 29, 61, -43, 24, 18, 0}, - { 29, 61, -44, 24, 18, 0}, { 29, 61, -45, 24, 18, 0}, { 29, 60, -46, 24, 18, 0}, { 29, 60, -48, 24, 18, 0}, { 30, 60, -49, 24, 17, 0}, - { 30, 60, -50, 24, 17, 0}, { 30, 60, -51, 24, 17, 0}, { 30, 60, -52, 24, 17, 0}, { 30, 60, -54, 24, 17, 0}, { 30, 59, -55, 24, 17, 0}, - { 30, 59, -56, 24, 17, 0}, { 31, 59, -57, 24, 17, 0}, { 31, 59, -58, 24, 17, 0}, { 31, 58, -60, 24, 17, 0}, { 31, 58, -61, 24, 17, 0}, - { 31, 58, -62, 24, 17, 0}, { 31, 58, -63, 24, 17, 0}, { 31, 57, -64, 24, 17, 0}, { 31, 57, -65, 24, 17, 0}, { 32, 57, -67, 24, 17, 0}, - { 32, 56, -68, 24, 17, 0}, { 32, 56, -69, 24, 17, 0}, { 32, 56, -70, 24, 17, 0}, { 32, 55, -71, 24, 17, 0}, { 32, 55, -72, 24, 17, 0}, - { 32, 55, -73, 24, 17, 0}, { 32, 54, -75, 24, 17, 0}, { 33, 54, -76, 24, 17, 0}, { 33, 53, -77, 24, 8, 0}, { 33, 53, -78, 24, 8, 0}, - { 33, 53, -79, 24, 8, 0}, { 33, 52, -80, 24, 8, 0}, { 33, 52, -81, 24, 8, 0}, { 33, 51, -82, 24, 8, 0}, { 34, 51, -83, 24, 8, 0}, - { 34, 50, -84, 24, 8, 0}, { 34, 50, -85, 24, 8, 0}, { 34, 50, -87, 24, 8, 0}, { 34, 49, -88, 24, 8, 0}, { 34, 49, -89, 24, 8, 0}, - { 34, 48, -90, 24, 8, 0}, { 34, 48, -91, 24, 8, 0}, { 35, 47, -92, 24, 8, 0}, { 35, 47, -93, 24, 8, 0}, { 35, 46, -94, 24, 8, 0}, - { 35, 45, -95, 24, 8, 0}, { 35, 45, -96, 24, 8, 0}, { 35, 44, -97, 24, 8, 0}, { 35, 44, -98, 24, 8, 0}, { 35, 43, -99, 24, 8, 0}, - { 36, 43, -100, 24, 8, 0}, { 36, 42, -101, 24, 8, 0}, { 36, 42, -102, 24, 8, 0}, { 36, 41, -103, 24, 8, 0}, { 36, 40, -104, 24, 8, 0}, - { 36, 40, -105, 24, 8, 0}, { 36, 39, -106, 24, 8, 0}, { 37, 38, -107, 24, 8, 0}, { 37, 38, -108, 24, 8, 0}, { 37, 37, -109, 24, 8, 0}, - { 37, 37, -110, 24, 8, 0}, { 37, 36, -110, 24, 8, 0}, { 37, 35, -111, 24, 7, 0}, { 37, 35, -112, 24, 7, 0}, { 37, 34, -113, 24, 7, 0}, - { 38, 33, -114, 24, 7, 0}, { 38, 33, -115, 24, 7, 0}, { 38, 32, -116, 24, 7, 0}, { 38, 31, -117, 24, 7, 0}, { 38, 31, -118, 24, 7, 0}, - { 38, 30, -119, 24, 7, 0}, { 38, 29, -119, 24, 7, 0}, { 38, 29, -120, 24, 7, 0}, { 39, 28, -121, 24, 7, 0}, { 39, 27, -122, 24, 7, 0}, - { 39, 26, -123, 24, 7, 0}, { 39, 26, -124, 24, 7, 0}, { 39, 25, -124, 24, 7, 0}, { 39, 24, -125, 24, 7, 0}, { 39, 24, -126, 24, 7, 0}, - { 40, 23, -127, 24, 7, 0}, { 40, 22, -128, 24, 7, 0}, { 40, 21, -129, 24, 7, 0}, { 40, 21, -129, 24, 7, 0}, { 40, 20, -130, 24, 7, 0}, - { 40, 19, -131, 24, 7, 0}, { 40, 18, -132, 24, 7, 0}, { 40, 18, -132, 24, 7, 0}, { 41, 17, -133, 24, 7, 0}, { 41, 16, -134, 24, 7, 0}, - { 41, 15, -135, 24, 7, 0}, { 41, 14, -135, 24, 7, 0}, { 41, 14, -136, 24, 7, 0}, { 41, 13, -137, 24, 7, 0}, { 41, 12, -138, 24, 7, 0}, - { 41, 11, -138, 24, 7, 0}, { 42, 11, -139, 24, 7, 0}, { 42, 10, -140, 24, 7, 0}, { 42, 9, -141, 24, 7, 0}, { 42, 8, -141, 24, 7, 0}, - { 42, 7, -142, 24, 7, 0}, { 42, 6, -143, 24, 7, 0}, { 42, 6, -143, 24, 7, 0}, { 43, 5, -144, 24, 7, 0}, { 43, 4, -145, 24, 7, 0}, - { 43, 3, -145, 24, 7, 0}, { 43, 2, -146, 24, 7, 0}, { 43, 1, -147, 24, 7, 0}, { 43, 1, -147, 24, 7, 0}, { 43, 0, -148, 24, 7, 0}, - { 43, -1, -149, 24, 7, 0}, { 44, -2, -149, 24, 7, 0}, { 44, -3, -150, 24, 6, 0}, { 44, -4, -150, 24, 6, 0}, { 44, -4, -151, 24, 6, 0}, - { 44, -5, -152, 24, 6, 0}, { 44, -6, -152, 24, 6, 0}, { 44, -7, -153, 24, 6, 0}, { 44, -8, -154, 24, 6, 0}, { 45, -9, -154, 24, 6, 0}, - { 45, -10, -155, 24, 6, 0}, { 45, -11, -155, 24, 6, 0}, { 45, -11, -156, 24, 6, 0}, { 45, -12, -156, 24, 6, 0}, { 45, -13, -157, 24, 6, 0}, - { 45, -14, -158, 24, 6, 0}, { 46, -15, -158, 24, 6, 0}, { 46, -16, -159, 24, 6, 0}, { 46, -17, -159, 24, 6, 0}, { 46, -18, -160, 24, 6, 0}, - { 46, -18, -160, 24, 6, 0}, { 46, -19, -161, 24, 6, 0}, { 46, -20, -161, 24, 6, 0}, { 46, -21, -162, 24, 6, 0}, { 47, -22, -162, 24, 6, 0}, - { 47, -23, -163, 24, 6, 0}, { 47, -24, -163, 24, 6, 0}, { 47, -25, -164, 24, 6, 0}, { 47, -26, -164, 24, 6, 0}, { 47, -26, -165, 24, 6, 0}, - { 47, -27, -165, 24, 6, 0}, { 47, -28, -166, 24, 6, 0}, { 48, -29, -166, 24, 6, 0}, { 48, -30, -167, 24, 6, 0}, { 48, -31, -167, 24, 6, 0}, + {16, 0, 35, 24, 16, 0}, {16, 1, 35, 24, 16, 0}, {16, 2, 35, 24, 16, 0}, {16, 3, 35, 24, 16, 0}, {17, 4, 35, 24, 16, 0}, + {17, 5, 35, 24, 16, 0}, {17, 6, 35, 24, 16, 0}, {17, 7, 35, 24, 16, 0}, {17, 8, 34, 24, 23, 0}, {17, 9, 34, 24, 23, 0}, + {17, 10, 34, 24, 23, 0}, {17, 11, 34, 24, 23, 0}, {18, 12, 34, 24, 23, 0}, {18, 13, 33, 24, 23, 0}, {18, 14, 33, 24, 23, 0}, + {18, 15, 33, 24, 23, 0}, {18, 16, 32, 24, 23, 0}, {18, 17, 32, 24, 23, 0}, {18, 18, 32, 24, 23, 0}, {18, 19, 31, 24, 23, 0}, + {19, 20, 31, 24, 23, 0}, {19, 21, 31, 24, 23, 0}, {19, 21, 30, 24, 23, 0}, {19, 22, 30, 24, 23, 0}, {19, 23, 29, 24, 22, 0}, + {19, 24, 29, 24, 22, 0}, {19, 25, 28, 24, 22, 0}, {20, 26, 28, 24, 22, 0}, {20, 27, 27, 24, 22, 0}, {20, 28, 27, 24, 22, 0}, + {20, 29, 26, 24, 22, 0}, {20, 30, 26, 24, 22, 0}, {20, 30, 25, 24, 22, 0}, {20, 31, 24, 24, 22, 0}, {20, 32, 24, 24, 22, 0}, + {21, 33, 23, 24, 22, 0}, {21, 34, 22, 24, 22, 0}, {21, 35, 22, 24, 22, 0}, {21, 35, 21, 24, 22, 0}, {21, 36, 20, 24, 22, 0}, + {21, 37, 20, 24, 21, 0}, {21, 38, 19, 24, 21, 0}, {21, 39, 18, 24, 21, 0}, {22, 39, 17, 24, 21, 0}, {22, 40, 17, 24, 21, 0}, + {22, 41, 16, 24, 21, 0}, {22, 41, 15, 24, 21, 0}, {22, 42, 14, 24, 21, 0}, {22, 43, 13, 24, 21, 0}, {22, 44, 12, 24, 21, 0}, + {23, 44, 11, 24, 21, 0}, {23, 45, 11, 24, 21, 0}, {23, 46, 10, 24, 21, 0}, {23, 46, 9, 24, 21, 0}, {23, 47, 8, 24, 21, 0}, + {23, 48, 7, 24, 21, 0}, {23, 48, 6, 24, 21, 0}, {23, 49, 5, 24, 20, 0}, {24, 49, 4, 24, 20, 0}, {24, 50, 3, 24, 20, 0}, + {24, 50, 2, 24, 20, 0}, {24, 51, 1, 24, 20, 0}, {24, 52, 0, 24, 20, 0}, {24, 52, -1, 24, 20, 0}, {24, 53, -2, 24, 20, 0}, + {24, 53, -3, 24, 20, 0}, {25, 54, -4, 24, 20, 0}, {25, 54, -5, 24, 20, 0}, {25, 54, -6, 24, 20, 0}, {25, 55, -8, 24, 20, 0}, + {25, 55, -9, 24, 20, 0}, {25, 56, -10, 24, 20, 0}, {25, 56, -11, 24, 20, 0}, {26, 56, -12, 24, 19, 0}, {26, 57, -13, 24, 19, 0}, + {26, 57, -14, 24, 19, 0}, {26, 58, -15, 24, 19, 0}, {26, 58, -17, 24, 19, 0}, {26, 58, -18, 24, 19, 0}, {26, 58, -19, 24, 19, 0}, + {26, 59, -20, 24, 19, 0}, {27, 59, -21, 24, 19, 0}, {27, 59, -22, 24, 19, 0}, {27, 59, -24, 24, 19, 0}, {27, 60, -25, 24, 19, 0}, + {27, 60, -26, 24, 19, 0}, {27, 60, -27, 24, 19, 0}, {27, 60, -28, 24, 19, 0}, {28, 60, -30, 24, 19, 0}, {28, 60, -31, 24, 18, 0}, + {28, 60, -32, 24, 18, 0}, {28, 61, -33, 24, 18, 0}, {28, 61, -34, 24, 18, 0}, {28, 61, -36, 24, 18, 0}, {28, 61, -37, 24, 18, 0}, + {28, 61, -38, 24, 18, 0}, {29, 61, -39, 24, 18, 0}, {29, 61, -40, 24, 18, 0}, {29, 61, -42, 24, 18, 0}, {29, 61, -43, 24, 18, 0}, + {29, 61, -44, 24, 18, 0}, {29, 61, -45, 24, 18, 0}, {29, 60, -46, 24, 18, 0}, {29, 60, -48, 24, 18, 0}, {30, 60, -49, 24, 17, 0}, + {30, 60, -50, 24, 17, 0}, {30, 60, -51, 24, 17, 0}, {30, 60, -52, 24, 17, 0}, {30, 60, -54, 24, 17, 0}, {30, 59, -55, 24, 17, 0}, + {30, 59, -56, 24, 17, 0}, {31, 59, -57, 24, 17, 0}, {31, 59, -58, 24, 17, 0}, {31, 58, -60, 24, 17, 0}, {31, 58, -61, 24, 17, 0}, + {31, 58, -62, 24, 17, 0}, {31, 58, -63, 24, 17, 0}, {31, 57, -64, 24, 17, 0}, {31, 57, -65, 24, 17, 0}, {32, 57, -67, 24, 17, 0}, + {32, 56, -68, 24, 17, 0}, {32, 56, -69, 24, 17, 0}, {32, 56, -70, 24, 17, 0}, {32, 55, -71, 24, 17, 0}, {32, 55, -72, 24, 17, 0}, + {32, 55, -73, 24, 17, 0}, {32, 54, -75, 24, 17, 0}, {33, 54, -76, 24, 17, 0}, {33, 53, -77, 24, 8, 0}, {33, 53, -78, 24, 8, 0}, + {33, 53, -79, 24, 8, 0}, {33, 52, -80, 24, 8, 0}, {33, 52, -81, 24, 8, 0}, {33, 51, -82, 24, 8, 0}, {34, 51, -83, 24, 8, 0}, + {34, 50, -84, 24, 8, 0}, {34, 50, -85, 24, 8, 0}, {34, 50, -87, 24, 8, 0}, {34, 49, -88, 24, 8, 0}, {34, 49, -89, 24, 8, 0}, + {34, 48, -90, 24, 8, 0}, {34, 48, -91, 24, 8, 0}, {35, 47, -92, 24, 8, 0}, {35, 47, -93, 24, 8, 0}, {35, 46, -94, 24, 8, 0}, + {35, 45, -95, 24, 8, 0}, {35, 45, -96, 24, 8, 0}, {35, 44, -97, 24, 8, 0}, {35, 44, -98, 24, 8, 0}, {35, 43, -99, 24, 8, 0}, + {36, 43, -100, 24, 8, 0}, {36, 42, -101, 24, 8, 0}, {36, 42, -102, 24, 8, 0}, {36, 41, -103, 24, 8, 0}, {36, 40, -104, 24, 8, 0}, + {36, 40, -105, 24, 8, 0}, {36, 39, -106, 24, 8, 0}, {37, 38, -107, 24, 8, 0}, {37, 38, -108, 24, 8, 0}, {37, 37, -109, 24, 8, 0}, + {37, 37, -110, 24, 8, 0}, {37, 36, -110, 24, 8, 0}, {37, 35, -111, 24, 7, 0}, {37, 35, -112, 24, 7, 0}, {37, 34, -113, 24, 7, 0}, + {38, 33, -114, 24, 7, 0}, {38, 33, -115, 24, 7, 0}, {38, 32, -116, 24, 7, 0}, {38, 31, -117, 24, 7, 0}, {38, 31, -118, 24, 7, 0}, + {38, 30, -119, 24, 7, 0}, {38, 29, -119, 24, 7, 0}, {38, 29, -120, 24, 7, 0}, {39, 28, -121, 24, 7, 0}, {39, 27, -122, 24, 7, 0}, + {39, 26, -123, 24, 7, 0}, {39, 26, -124, 24, 7, 0}, {39, 25, -124, 24, 7, 0}, {39, 24, -125, 24, 7, 0}, {39, 24, -126, 24, 7, 0}, + {40, 23, -127, 24, 7, 0}, {40, 22, -128, 24, 7, 0}, {40, 21, -129, 24, 7, 0}, {40, 21, -129, 24, 7, 0}, {40, 20, -130, 24, 7, 0}, + {40, 19, -131, 24, 7, 0}, {40, 18, -132, 24, 7, 0}, {40, 18, -132, 24, 7, 0}, {41, 17, -133, 24, 7, 0}, {41, 16, -134, 24, 7, 0}, + {41, 15, -135, 24, 7, 0}, {41, 14, -135, 24, 7, 0}, {41, 14, -136, 24, 7, 0}, {41, 13, -137, 24, 7, 0}, {41, 12, -138, 24, 7, 0}, + {41, 11, -138, 24, 7, 0}, {42, 11, -139, 24, 7, 0}, {42, 10, -140, 24, 7, 0}, {42, 9, -141, 24, 7, 0}, {42, 8, -141, 24, 7, 0}, + {42, 7, -142, 24, 7, 0}, {42, 6, -143, 24, 7, 0}, {42, 6, -143, 24, 7, 0}, {43, 5, -144, 24, 7, 0}, {43, 4, -145, 24, 7, 0}, + {43, 3, -145, 24, 7, 0}, {43, 2, -146, 24, 7, 0}, {43, 1, -147, 24, 7, 0}, {43, 1, -147, 24, 7, 0}, {43, 0, -148, 24, 7, 0}, + {43, -1, -149, 24, 7, 0}, {44, -2, -149, 24, 7, 0}, {44, -3, -150, 24, 6, 0}, {44, -4, -150, 24, 6, 0}, {44, -4, -151, 24, 6, 0}, + {44, -5, -152, 24, 6, 0}, {44, -6, -152, 24, 6, 0}, {44, -7, -153, 24, 6, 0}, {44, -8, -154, 24, 6, 0}, {45, -9, -154, 24, 6, 0}, + {45, -10, -155, 24, 6, 0}, {45, -11, -155, 24, 6, 0}, {45, -11, -156, 24, 6, 0}, {45, -12, -156, 24, 6, 0}, {45, -13, -157, 24, 6, 0}, + {45, -14, -158, 24, 6, 0}, {46, -15, -158, 24, 6, 0}, {46, -16, -159, 24, 6, 0}, {46, -17, -159, 24, 6, 0}, {46, -18, -160, 24, 6, 0}, + {46, -18, -160, 24, 6, 0}, {46, -19, -161, 24, 6, 0}, {46, -20, -161, 24, 6, 0}, {46, -21, -162, 24, 6, 0}, {47, -22, -162, 24, 6, 0}, + {47, -23, -163, 24, 6, 0}, {47, -24, -163, 24, 6, 0}, {47, -25, -164, 24, 6, 0}, {47, -26, -164, 24, 6, 0}, {47, -26, -165, 24, 6, 0}, + {47, -27, -165, 24, 6, 0}, {47, -28, -166, 24, 6, 0}, {48, -29, -166, 24, 6, 0}, {48, -30, -167, 24, 6, 0}, {48, -31, -167, 24, 6, 0}, }) CREATE_VEHICLE_INFO(TrackVehicleInfoRightMediumHalfLoopDown2, { - { 0, 16, 35, 0, 16, 0}, { 1, 16, 35, 0, 16, 0}, { 2, 16, 35, 0, 16, 0}, { 3, 16, 35, 0, 16, 0}, { 4, 15, 35, 0, 16, 0}, - { 5, 15, 35, 0, 16, 0}, { 6, 15, 35, 0, 16, 0}, { 7, 15, 35, 0, 16, 0}, { 8, 15, 34, 0, 23, 0}, { 9, 15, 34, 0, 23, 0}, - { 10, 15, 34, 0, 23, 0}, { 11, 15, 34, 0, 23, 0}, { 12, 14, 34, 0, 23, 0}, { 13, 14, 33, 0, 23, 0}, { 14, 14, 33, 0, 23, 0}, - { 15, 14, 33, 0, 23, 0}, { 16, 14, 32, 0, 23, 0}, { 17, 14, 32, 0, 23, 0}, { 18, 14, 32, 0, 23, 0}, { 19, 14, 31, 0, 23, 0}, - { 20, 13, 31, 0, 23, 0}, { 21, 13, 31, 0, 23, 0}, { 21, 13, 30, 0, 23, 0}, { 22, 13, 30, 0, 23, 0}, { 23, 13, 29, 0, 22, 0}, - { 24, 13, 29, 0, 22, 0}, { 25, 13, 28, 0, 22, 0}, { 26, 12, 28, 0, 22, 0}, { 27, 12, 27, 0, 22, 0}, { 28, 12, 27, 0, 22, 0}, - { 29, 12, 26, 0, 22, 0}, { 30, 12, 26, 0, 22, 0}, { 30, 12, 25, 0, 22, 0}, { 31, 12, 24, 0, 22, 0}, { 32, 12, 24, 0, 22, 0}, - { 33, 11, 23, 0, 22, 0}, { 34, 11, 22, 0, 22, 0}, { 35, 11, 22, 0, 22, 0}, { 35, 11, 21, 0, 22, 0}, { 36, 11, 20, 0, 22, 0}, - { 37, 11, 20, 0, 21, 0}, { 38, 11, 19, 0, 21, 0}, { 39, 11, 18, 0, 21, 0}, { 39, 10, 17, 0, 21, 0}, { 40, 10, 17, 0, 21, 0}, - { 41, 10, 16, 0, 21, 0}, { 41, 10, 15, 0, 21, 0}, { 42, 10, 14, 0, 21, 0}, { 43, 10, 13, 0, 21, 0}, { 44, 10, 12, 0, 21, 0}, - { 44, 9, 11, 0, 21, 0}, { 45, 9, 11, 0, 21, 0}, { 46, 9, 10, 0, 21, 0}, { 46, 9, 9, 0, 21, 0}, { 47, 9, 8, 0, 21, 0}, - { 48, 9, 7, 0, 21, 0}, { 48, 9, 6, 0, 21, 0}, { 49, 9, 5, 0, 20, 0}, { 49, 8, 4, 0, 20, 0}, { 50, 8, 3, 0, 20, 0}, - { 50, 8, 2, 0, 20, 0}, { 51, 8, 1, 0, 20, 0}, { 52, 8, 0, 0, 20, 0}, { 52, 8, -1, 0, 20, 0}, { 53, 8, -2, 0, 20, 0}, - { 53, 8, -3, 0, 20, 0}, { 54, 7, -4, 0, 20, 0}, { 54, 7, -5, 0, 20, 0}, { 54, 7, -6, 0, 20, 0}, { 55, 7, -8, 0, 20, 0}, - { 55, 7, -9, 0, 20, 0}, { 56, 7, -10, 0, 20, 0}, { 56, 7, -11, 0, 20, 0}, { 56, 6, -12, 0, 19, 0}, { 57, 6, -13, 0, 19, 0}, - { 57, 6, -14, 0, 19, 0}, { 58, 6, -15, 0, 19, 0}, { 58, 6, -17, 0, 19, 0}, { 58, 6, -18, 0, 19, 0}, { 58, 6, -19, 0, 19, 0}, - { 59, 6, -20, 0, 19, 0}, { 59, 5, -21, 0, 19, 0}, { 59, 5, -22, 0, 19, 0}, { 59, 5, -24, 0, 19, 0}, { 60, 5, -25, 0, 19, 0}, - { 60, 5, -26, 0, 19, 0}, { 60, 5, -27, 0, 19, 0}, { 60, 5, -28, 0, 19, 0}, { 60, 4, -30, 0, 19, 0}, { 60, 4, -31, 0, 18, 0}, - { 60, 4, -32, 0, 18, 0}, { 61, 4, -33, 0, 18, 0}, { 61, 4, -34, 0, 18, 0}, { 61, 4, -36, 0, 18, 0}, { 61, 4, -37, 0, 18, 0}, - { 61, 4, -38, 0, 18, 0}, { 61, 3, -39, 0, 18, 0}, { 61, 3, -40, 0, 18, 0}, { 61, 3, -42, 0, 18, 0}, { 61, 3, -43, 0, 18, 0}, - { 61, 3, -44, 0, 18, 0}, { 61, 3, -45, 0, 18, 0}, { 60, 3, -46, 0, 18, 0}, { 60, 3, -48, 0, 18, 0}, { 60, 2, -49, 0, 17, 0}, - { 60, 2, -50, 0, 17, 0}, { 60, 2, -51, 0, 17, 0}, { 60, 2, -52, 0, 17, 0}, { 60, 2, -54, 0, 17, 0}, { 59, 2, -55, 0, 17, 0}, - { 59, 2, -56, 0, 17, 0}, { 59, 1, -57, 0, 17, 0}, { 59, 1, -58, 0, 17, 0}, { 58, 1, -60, 0, 17, 0}, { 58, 1, -61, 0, 17, 0}, - { 58, 1, -62, 0, 17, 0}, { 58, 1, -63, 0, 17, 0}, { 57, 1, -64, 0, 17, 0}, { 57, 1, -65, 0, 17, 0}, { 57, 0, -67, 0, 17, 0}, - { 56, 0, -68, 0, 17, 0}, { 56, 0, -69, 0, 17, 0}, { 56, 0, -70, 0, 17, 0}, { 55, 0, -71, 0, 17, 0}, { 55, 0, -72, 0, 17, 0}, - { 55, 0, -73, 0, 17, 0}, { 54, 0, -75, 0, 17, 0}, { 54, -1, -76, 0, 17, 0}, { 53, -1, -77, 0, 8, 0}, { 53, -1, -78, 0, 8, 0}, - { 53, -1, -79, 0, 8, 0}, { 52, -1, -80, 0, 8, 0}, { 52, -1, -81, 0, 8, 0}, { 51, -1, -82, 0, 8, 0}, { 51, -2, -83, 0, 8, 0}, - { 50, -2, -84, 0, 8, 0}, { 50, -2, -85, 0, 8, 0}, { 50, -2, -87, 0, 8, 0}, { 49, -2, -88, 0, 8, 0}, { 49, -2, -89, 0, 8, 0}, - { 48, -2, -90, 0, 8, 0}, { 48, -2, -91, 0, 8, 0}, { 47, -3, -92, 0, 8, 0}, { 47, -3, -93, 0, 8, 0}, { 46, -3, -94, 0, 8, 0}, - { 45, -3, -95, 0, 8, 0}, { 45, -3, -96, 0, 8, 0}, { 44, -3, -97, 0, 8, 0}, { 44, -3, -98, 0, 8, 0}, { 43, -3, -99, 0, 8, 0}, - { 43, -4, -100, 0, 8, 0}, { 42, -4, -101, 0, 8, 0}, { 42, -4, -102, 0, 8, 0}, { 41, -4, -103, 0, 8, 0}, { 40, -4, -104, 0, 8, 0}, - { 40, -4, -105, 0, 8, 0}, { 39, -4, -106, 0, 8, 0}, { 38, -5, -107, 0, 8, 0}, { 38, -5, -108, 0, 8, 0}, { 37, -5, -109, 0, 8, 0}, - { 37, -5, -110, 0, 8, 0}, { 36, -5, -110, 0, 8, 0}, { 35, -5, -111, 0, 7, 0}, { 35, -5, -112, 0, 7, 0}, { 34, -5, -113, 0, 7, 0}, - { 33, -6, -114, 0, 7, 0}, { 33, -6, -115, 0, 7, 0}, { 32, -6, -116, 0, 7, 0}, { 31, -6, -117, 0, 7, 0}, { 31, -6, -118, 0, 7, 0}, - { 30, -6, -119, 0, 7, 0}, { 29, -6, -119, 0, 7, 0}, { 29, -6, -120, 0, 7, 0}, { 28, -7, -121, 0, 7, 0}, { 27, -7, -122, 0, 7, 0}, - { 26, -7, -123, 0, 7, 0}, { 26, -7, -124, 0, 7, 0}, { 25, -7, -124, 0, 7, 0}, { 24, -7, -125, 0, 7, 0}, { 24, -7, -126, 0, 7, 0}, - { 23, -8, -127, 0, 7, 0}, { 22, -8, -128, 0, 7, 0}, { 21, -8, -129, 0, 7, 0}, { 21, -8, -129, 0, 7, 0}, { 20, -8, -130, 0, 7, 0}, - { 19, -8, -131, 0, 7, 0}, { 18, -8, -132, 0, 7, 0}, { 18, -8, -132, 0, 7, 0}, { 17, -9, -133, 0, 7, 0}, { 16, -9, -134, 0, 7, 0}, - { 15, -9, -135, 0, 7, 0}, { 14, -9, -135, 0, 7, 0}, { 14, -9, -136, 0, 7, 0}, { 13, -9, -137, 0, 7, 0}, { 12, -9, -138, 0, 7, 0}, - { 11, -9, -138, 0, 7, 0}, { 11, -10, -139, 0, 7, 0}, { 10, -10, -140, 0, 7, 0}, { 9, -10, -141, 0, 7, 0}, { 8, -10, -141, 0, 7, 0}, - { 7, -10, -142, 0, 7, 0}, { 6, -10, -143, 0, 7, 0}, { 6, -10, -143, 0, 7, 0}, { 5, -11, -144, 0, 7, 0}, { 4, -11, -145, 0, 7, 0}, - { 3, -11, -145, 0, 7, 0}, { 2, -11, -146, 0, 7, 0}, { 1, -11, -147, 0, 7, 0}, { 1, -11, -147, 0, 7, 0}, { 0, -11, -148, 0, 7, 0}, - { -1, -11, -149, 0, 7, 0}, { -2, -12, -149, 0, 7, 0}, { -3, -12, -150, 0, 6, 0}, { -4, -12, -150, 0, 6, 0}, { -4, -12, -151, 0, 6, 0}, - { -5, -12, -152, 0, 6, 0}, { -6, -12, -152, 0, 6, 0}, { -7, -12, -153, 0, 6, 0}, { -8, -12, -154, 0, 6, 0}, { -9, -13, -154, 0, 6, 0}, - { -10, -13, -155, 0, 6, 0}, { -11, -13, -155, 0, 6, 0}, { -11, -13, -156, 0, 6, 0}, { -12, -13, -156, 0, 6, 0}, { -13, -13, -157, 0, 6, 0}, - { -14, -13, -158, 0, 6, 0}, { -15, -14, -158, 0, 6, 0}, { -16, -14, -159, 0, 6, 0}, { -17, -14, -159, 0, 6, 0}, { -18, -14, -160, 0, 6, 0}, - { -18, -14, -160, 0, 6, 0}, { -19, -14, -161, 0, 6, 0}, { -20, -14, -161, 0, 6, 0}, { -21, -14, -162, 0, 6, 0}, { -22, -15, -162, 0, 6, 0}, - { -23, -15, -163, 0, 6, 0}, { -24, -15, -163, 0, 6, 0}, { -25, -15, -164, 0, 6, 0}, { -26, -15, -164, 0, 6, 0}, { -26, -15, -165, 0, 6, 0}, - { -27, -15, -165, 0, 6, 0}, { -28, -15, -166, 0, 6, 0}, { -29, -16, -166, 0, 6, 0}, { -30, -16, -167, 0, 6, 0}, { -31, -16, -167, 0, 6, 0}, + {0, 16, 35, 0, 16, 0}, {1, 16, 35, 0, 16, 0}, {2, 16, 35, 0, 16, 0}, {3, 16, 35, 0, 16, 0}, {4, 15, 35, 0, 16, 0}, + {5, 15, 35, 0, 16, 0}, {6, 15, 35, 0, 16, 0}, {7, 15, 35, 0, 16, 0}, {8, 15, 34, 0, 23, 0}, {9, 15, 34, 0, 23, 0}, + {10, 15, 34, 0, 23, 0}, {11, 15, 34, 0, 23, 0}, {12, 14, 34, 0, 23, 0}, {13, 14, 33, 0, 23, 0}, {14, 14, 33, 0, 23, 0}, + {15, 14, 33, 0, 23, 0}, {16, 14, 32, 0, 23, 0}, {17, 14, 32, 0, 23, 0}, {18, 14, 32, 0, 23, 0}, {19, 14, 31, 0, 23, 0}, + {20, 13, 31, 0, 23, 0}, {21, 13, 31, 0, 23, 0}, {21, 13, 30, 0, 23, 0}, {22, 13, 30, 0, 23, 0}, {23, 13, 29, 0, 22, 0}, + {24, 13, 29, 0, 22, 0}, {25, 13, 28, 0, 22, 0}, {26, 12, 28, 0, 22, 0}, {27, 12, 27, 0, 22, 0}, {28, 12, 27, 0, 22, 0}, + {29, 12, 26, 0, 22, 0}, {30, 12, 26, 0, 22, 0}, {30, 12, 25, 0, 22, 0}, {31, 12, 24, 0, 22, 0}, {32, 12, 24, 0, 22, 0}, + {33, 11, 23, 0, 22, 0}, {34, 11, 22, 0, 22, 0}, {35, 11, 22, 0, 22, 0}, {35, 11, 21, 0, 22, 0}, {36, 11, 20, 0, 22, 0}, + {37, 11, 20, 0, 21, 0}, {38, 11, 19, 0, 21, 0}, {39, 11, 18, 0, 21, 0}, {39, 10, 17, 0, 21, 0}, {40, 10, 17, 0, 21, 0}, + {41, 10, 16, 0, 21, 0}, {41, 10, 15, 0, 21, 0}, {42, 10, 14, 0, 21, 0}, {43, 10, 13, 0, 21, 0}, {44, 10, 12, 0, 21, 0}, + {44, 9, 11, 0, 21, 0}, {45, 9, 11, 0, 21, 0}, {46, 9, 10, 0, 21, 0}, {46, 9, 9, 0, 21, 0}, {47, 9, 8, 0, 21, 0}, + {48, 9, 7, 0, 21, 0}, {48, 9, 6, 0, 21, 0}, {49, 9, 5, 0, 20, 0}, {49, 8, 4, 0, 20, 0}, {50, 8, 3, 0, 20, 0}, + {50, 8, 2, 0, 20, 0}, {51, 8, 1, 0, 20, 0}, {52, 8, 0, 0, 20, 0}, {52, 8, -1, 0, 20, 0}, {53, 8, -2, 0, 20, 0}, + {53, 8, -3, 0, 20, 0}, {54, 7, -4, 0, 20, 0}, {54, 7, -5, 0, 20, 0}, {54, 7, -6, 0, 20, 0}, {55, 7, -8, 0, 20, 0}, + {55, 7, -9, 0, 20, 0}, {56, 7, -10, 0, 20, 0}, {56, 7, -11, 0, 20, 0}, {56, 6, -12, 0, 19, 0}, {57, 6, -13, 0, 19, 0}, + {57, 6, -14, 0, 19, 0}, {58, 6, -15, 0, 19, 0}, {58, 6, -17, 0, 19, 0}, {58, 6, -18, 0, 19, 0}, {58, 6, -19, 0, 19, 0}, + {59, 6, -20, 0, 19, 0}, {59, 5, -21, 0, 19, 0}, {59, 5, -22, 0, 19, 0}, {59, 5, -24, 0, 19, 0}, {60, 5, -25, 0, 19, 0}, + {60, 5, -26, 0, 19, 0}, {60, 5, -27, 0, 19, 0}, {60, 5, -28, 0, 19, 0}, {60, 4, -30, 0, 19, 0}, {60, 4, -31, 0, 18, 0}, + {60, 4, -32, 0, 18, 0}, {61, 4, -33, 0, 18, 0}, {61, 4, -34, 0, 18, 0}, {61, 4, -36, 0, 18, 0}, {61, 4, -37, 0, 18, 0}, + {61, 4, -38, 0, 18, 0}, {61, 3, -39, 0, 18, 0}, {61, 3, -40, 0, 18, 0}, {61, 3, -42, 0, 18, 0}, {61, 3, -43, 0, 18, 0}, + {61, 3, -44, 0, 18, 0}, {61, 3, -45, 0, 18, 0}, {60, 3, -46, 0, 18, 0}, {60, 3, -48, 0, 18, 0}, {60, 2, -49, 0, 17, 0}, + {60, 2, -50, 0, 17, 0}, {60, 2, -51, 0, 17, 0}, {60, 2, -52, 0, 17, 0}, {60, 2, -54, 0, 17, 0}, {59, 2, -55, 0, 17, 0}, + {59, 2, -56, 0, 17, 0}, {59, 1, -57, 0, 17, 0}, {59, 1, -58, 0, 17, 0}, {58, 1, -60, 0, 17, 0}, {58, 1, -61, 0, 17, 0}, + {58, 1, -62, 0, 17, 0}, {58, 1, -63, 0, 17, 0}, {57, 1, -64, 0, 17, 0}, {57, 1, -65, 0, 17, 0}, {57, 0, -67, 0, 17, 0}, + {56, 0, -68, 0, 17, 0}, {56, 0, -69, 0, 17, 0}, {56, 0, -70, 0, 17, 0}, {55, 0, -71, 0, 17, 0}, {55, 0, -72, 0, 17, 0}, + {55, 0, -73, 0, 17, 0}, {54, 0, -75, 0, 17, 0}, {54, -1, -76, 0, 17, 0}, {53, -1, -77, 0, 8, 0}, {53, -1, -78, 0, 8, 0}, + {53, -1, -79, 0, 8, 0}, {52, -1, -80, 0, 8, 0}, {52, -1, -81, 0, 8, 0}, {51, -1, -82, 0, 8, 0}, {51, -2, -83, 0, 8, 0}, + {50, -2, -84, 0, 8, 0}, {50, -2, -85, 0, 8, 0}, {50, -2, -87, 0, 8, 0}, {49, -2, -88, 0, 8, 0}, {49, -2, -89, 0, 8, 0}, + {48, -2, -90, 0, 8, 0}, {48, -2, -91, 0, 8, 0}, {47, -3, -92, 0, 8, 0}, {47, -3, -93, 0, 8, 0}, {46, -3, -94, 0, 8, 0}, + {45, -3, -95, 0, 8, 0}, {45, -3, -96, 0, 8, 0}, {44, -3, -97, 0, 8, 0}, {44, -3, -98, 0, 8, 0}, {43, -3, -99, 0, 8, 0}, + {43, -4, -100, 0, 8, 0}, {42, -4, -101, 0, 8, 0}, {42, -4, -102, 0, 8, 0}, {41, -4, -103, 0, 8, 0}, {40, -4, -104, 0, 8, 0}, + {40, -4, -105, 0, 8, 0}, {39, -4, -106, 0, 8, 0}, {38, -5, -107, 0, 8, 0}, {38, -5, -108, 0, 8, 0}, {37, -5, -109, 0, 8, 0}, + {37, -5, -110, 0, 8, 0}, {36, -5, -110, 0, 8, 0}, {35, -5, -111, 0, 7, 0}, {35, -5, -112, 0, 7, 0}, {34, -5, -113, 0, 7, 0}, + {33, -6, -114, 0, 7, 0}, {33, -6, -115, 0, 7, 0}, {32, -6, -116, 0, 7, 0}, {31, -6, -117, 0, 7, 0}, {31, -6, -118, 0, 7, 0}, + {30, -6, -119, 0, 7, 0}, {29, -6, -119, 0, 7, 0}, {29, -6, -120, 0, 7, 0}, {28, -7, -121, 0, 7, 0}, {27, -7, -122, 0, 7, 0}, + {26, -7, -123, 0, 7, 0}, {26, -7, -124, 0, 7, 0}, {25, -7, -124, 0, 7, 0}, {24, -7, -125, 0, 7, 0}, {24, -7, -126, 0, 7, 0}, + {23, -8, -127, 0, 7, 0}, {22, -8, -128, 0, 7, 0}, {21, -8, -129, 0, 7, 0}, {21, -8, -129, 0, 7, 0}, {20, -8, -130, 0, 7, 0}, + {19, -8, -131, 0, 7, 0}, {18, -8, -132, 0, 7, 0}, {18, -8, -132, 0, 7, 0}, {17, -9, -133, 0, 7, 0}, {16, -9, -134, 0, 7, 0}, + {15, -9, -135, 0, 7, 0}, {14, -9, -135, 0, 7, 0}, {14, -9, -136, 0, 7, 0}, {13, -9, -137, 0, 7, 0}, {12, -9, -138, 0, 7, 0}, + {11, -9, -138, 0, 7, 0}, {11, -10, -139, 0, 7, 0}, {10, -10, -140, 0, 7, 0}, {9, -10, -141, 0, 7, 0}, {8, -10, -141, 0, 7, 0}, + {7, -10, -142, 0, 7, 0}, {6, -10, -143, 0, 7, 0}, {6, -10, -143, 0, 7, 0}, {5, -11, -144, 0, 7, 0}, {4, -11, -145, 0, 7, 0}, + {3, -11, -145, 0, 7, 0}, {2, -11, -146, 0, 7, 0}, {1, -11, -147, 0, 7, 0}, {1, -11, -147, 0, 7, 0}, {0, -11, -148, 0, 7, 0}, + {-1, -11, -149, 0, 7, 0}, {-2, -12, -149, 0, 7, 0}, {-3, -12, -150, 0, 6, 0}, {-4, -12, -150, 0, 6, 0}, {-4, -12, -151, 0, 6, 0}, + {-5, -12, -152, 0, 6, 0}, {-6, -12, -152, 0, 6, 0}, {-7, -12, -153, 0, 6, 0}, {-8, -12, -154, 0, 6, 0}, {-9, -13, -154, 0, 6, 0}, + {-10, -13, -155, 0, 6, 0}, {-11, -13, -155, 0, 6, 0}, {-11, -13, -156, 0, 6, 0}, {-12, -13, -156, 0, 6, 0}, {-13, -13, -157, 0, 6, 0}, + {-14, -13, -158, 0, 6, 0}, {-15, -14, -158, 0, 6, 0}, {-16, -14, -159, 0, 6, 0}, {-17, -14, -159, 0, 6, 0}, {-18, -14, -160, 0, 6, 0}, + {-18, -14, -160, 0, 6, 0}, {-19, -14, -161, 0, 6, 0}, {-20, -14, -161, 0, 6, 0}, {-21, -14, -162, 0, 6, 0}, {-22, -15, -162, 0, 6, 0}, + {-23, -15, -163, 0, 6, 0}, {-24, -15, -163, 0, 6, 0}, {-25, -15, -164, 0, 6, 0}, {-26, -15, -164, 0, 6, 0}, {-26, -15, -165, 0, 6, 0}, + {-27, -15, -165, 0, 6, 0}, {-28, -15, -166, 0, 6, 0}, {-29, -16, -166, 0, 6, 0}, {-30, -16, -167, 0, 6, 0}, {-31, -16, -167, 0, 6, 0}, }) CREATE_VEHICLE_INFO(TrackVehicleInfoRightMediumHalfLoopDown3, { - { 16, 31, 35, 8, 16, 0}, { 16, 30, 35, 8, 16, 0}, { 16, 29, 35, 8, 16, 0}, { 15, 28, 35, 8, 16, 0}, { 15, 27, 35, 8, 16, 0}, - { 15, 26, 35, 8, 16, 0}, { 15, 25, 35, 8, 16, 0}, { 15, 24, 34, 8, 23, 0}, { 15, 23, 34, 8, 23, 0}, { 15, 22, 34, 8, 23, 0}, - { 15, 21, 34, 8, 23, 0}, { 14, 20, 34, 8, 23, 0}, { 14, 19, 33, 8, 23, 0}, { 14, 18, 33, 8, 23, 0}, { 14, 17, 33, 8, 23, 0}, - { 14, 16, 32, 8, 23, 0}, { 14, 15, 32, 8, 23, 0}, { 14, 14, 32, 8, 23, 0}, { 14, 13, 31, 8, 23, 0}, { 13, 12, 31, 8, 23, 0}, - { 13, 11, 31, 8, 23, 0}, { 13, 11, 30, 8, 23, 0}, { 13, 10, 30, 8, 23, 0}, { 13, 9, 29, 8, 22, 0}, { 13, 8, 29, 8, 22, 0}, - { 13, 7, 28, 8, 22, 0}, { 12, 6, 28, 8, 22, 0}, { 12, 5, 27, 8, 22, 0}, { 12, 4, 27, 8, 22, 0}, { 12, 3, 26, 8, 22, 0}, - { 12, 2, 26, 8, 22, 0}, { 12, 2, 25, 8, 22, 0}, { 12, 1, 24, 8, 22, 0}, { 12, 0, 24, 8, 22, 0}, { 11, -1, 23, 8, 22, 0}, - { 11, -2, 22, 8, 22, 0}, { 11, -3, 22, 8, 22, 0}, { 11, -3, 21, 8, 22, 0}, { 11, -4, 20, 8, 22, 0}, { 11, -5, 20, 8, 21, 0}, - { 11, -6, 19, 8, 21, 0}, { 11, -7, 18, 8, 21, 0}, { 10, -7, 17, 8, 21, 0}, { 10, -8, 17, 8, 21, 0}, { 10, -9, 16, 8, 21, 0}, - { 10, -9, 15, 8, 21, 0}, { 10, -10, 14, 8, 21, 0}, { 10, -11, 13, 8, 21, 0}, { 10, -12, 12, 8, 21, 0}, { 9, -12, 11, 8, 21, 0}, - { 9, -13, 11, 8, 21, 0}, { 9, -14, 10, 8, 21, 0}, { 9, -14, 9, 8, 21, 0}, { 9, -15, 8, 8, 21, 0}, { 9, -16, 7, 8, 21, 0}, - { 9, -16, 6, 8, 21, 0}, { 9, -17, 5, 8, 20, 0}, { 8, -17, 4, 8, 20, 0}, { 8, -18, 3, 8, 20, 0}, { 8, -18, 2, 8, 20, 0}, - { 8, -19, 1, 8, 20, 0}, { 8, -20, 0, 8, 20, 0}, { 8, -20, -1, 8, 20, 0}, { 8, -21, -2, 8, 20, 0}, { 8, -21, -3, 8, 20, 0}, - { 7, -22, -4, 8, 20, 0}, { 7, -22, -5, 8, 20, 0}, { 7, -22, -6, 8, 20, 0}, { 7, -23, -8, 8, 20, 0}, { 7, -23, -9, 8, 20, 0}, - { 7, -24, -10, 8, 20, 0}, { 7, -24, -11, 8, 20, 0}, { 6, -24, -12, 8, 19, 0}, { 6, -25, -13, 8, 19, 0}, { 6, -25, -14, 8, 19, 0}, - { 6, -26, -15, 8, 19, 0}, { 6, -26, -17, 8, 19, 0}, { 6, -26, -18, 8, 19, 0}, { 6, -26, -19, 8, 19, 0}, { 6, -27, -20, 8, 19, 0}, - { 5, -27, -21, 8, 19, 0}, { 5, -27, -22, 8, 19, 0}, { 5, -27, -24, 8, 19, 0}, { 5, -28, -25, 8, 19, 0}, { 5, -28, -26, 8, 19, 0}, - { 5, -28, -27, 8, 19, 0}, { 5, -28, -28, 8, 19, 0}, { 4, -28, -30, 8, 19, 0}, { 4, -28, -31, 8, 18, 0}, { 4, -28, -32, 8, 18, 0}, - { 4, -29, -33, 8, 18, 0}, { 4, -29, -34, 8, 18, 0}, { 4, -29, -36, 8, 18, 0}, { 4, -29, -37, 8, 18, 0}, { 4, -29, -38, 8, 18, 0}, - { 3, -29, -39, 8, 18, 0}, { 3, -29, -40, 8, 18, 0}, { 3, -29, -42, 8, 18, 0}, { 3, -29, -43, 8, 18, 0}, { 3, -29, -44, 8, 18, 0}, - { 3, -29, -45, 8, 18, 0}, { 3, -28, -46, 8, 18, 0}, { 3, -28, -48, 8, 18, 0}, { 2, -28, -49, 8, 17, 0}, { 2, -28, -50, 8, 17, 0}, - { 2, -28, -51, 8, 17, 0}, { 2, -28, -52, 8, 17, 0}, { 2, -28, -54, 8, 17, 0}, { 2, -27, -55, 8, 17, 0}, { 2, -27, -56, 8, 17, 0}, - { 1, -27, -57, 8, 17, 0}, { 1, -27, -58, 8, 17, 0}, { 1, -26, -60, 8, 17, 0}, { 1, -26, -61, 8, 17, 0}, { 1, -26, -62, 8, 17, 0}, - { 1, -26, -63, 8, 17, 0}, { 1, -25, -64, 8, 17, 0}, { 1, -25, -65, 8, 17, 0}, { 0, -25, -67, 8, 17, 0}, { 0, -24, -68, 8, 17, 0}, - { 0, -24, -69, 8, 17, 0}, { 0, -24, -70, 8, 17, 0}, { 0, -23, -71, 8, 17, 0}, { 0, -23, -72, 8, 17, 0}, { 0, -23, -73, 8, 17, 0}, - { 0, -22, -75, 8, 17, 0}, { -1, -22, -76, 8, 17, 0}, { -1, -21, -77, 8, 8, 0}, { -1, -21, -78, 8, 8, 0}, { -1, -21, -79, 8, 8, 0}, - { -1, -20, -80, 8, 8, 0}, { -1, -20, -81, 8, 8, 0}, { -1, -19, -82, 8, 8, 0}, { -2, -19, -83, 8, 8, 0}, { -2, -18, -84, 8, 8, 0}, - { -2, -18, -85, 8, 8, 0}, { -2, -18, -87, 8, 8, 0}, { -2, -17, -88, 8, 8, 0}, { -2, -17, -89, 8, 8, 0}, { -2, -16, -90, 8, 8, 0}, - { -2, -16, -91, 8, 8, 0}, { -3, -15, -92, 8, 8, 0}, { -3, -15, -93, 8, 8, 0}, { -3, -14, -94, 8, 8, 0}, { -3, -13, -95, 8, 8, 0}, - { -3, -13, -96, 8, 8, 0}, { -3, -12, -97, 8, 8, 0}, { -3, -12, -98, 8, 8, 0}, { -3, -11, -99, 8, 8, 0}, { -4, -11, -100, 8, 8, 0}, - { -4, -10, -101, 8, 8, 0}, { -4, -10, -102, 8, 8, 0}, { -4, -9, -103, 8, 8, 0}, { -4, -8, -104, 8, 8, 0}, { -4, -8, -105, 8, 8, 0}, - { -4, -7, -106, 8, 8, 0}, { -5, -6, -107, 8, 8, 0}, { -5, -6, -108, 8, 8, 0}, { -5, -5, -109, 8, 8, 0}, { -5, -5, -110, 8, 8, 0}, - { -5, -4, -110, 8, 8, 0}, { -5, -3, -111, 8, 7, 0}, { -5, -3, -112, 8, 7, 0}, { -5, -2, -113, 8, 7, 0}, { -6, -1, -114, 8, 7, 0}, - { -6, -1, -115, 8, 7, 0}, { -6, 0, -116, 8, 7, 0}, { -6, 1, -117, 8, 7, 0}, { -6, 1, -118, 8, 7, 0}, { -6, 2, -119, 8, 7, 0}, - { -6, 3, -119, 8, 7, 0}, { -6, 3, -120, 8, 7, 0}, { -7, 4, -121, 8, 7, 0}, { -7, 5, -122, 8, 7, 0}, { -7, 6, -123, 8, 7, 0}, - { -7, 6, -124, 8, 7, 0}, { -7, 7, -124, 8, 7, 0}, { -7, 8, -125, 8, 7, 0}, { -7, 8, -126, 8, 7, 0}, { -8, 9, -127, 8, 7, 0}, - { -8, 10, -128, 8, 7, 0}, { -8, 11, -129, 8, 7, 0}, { -8, 11, -129, 8, 7, 0}, { -8, 12, -130, 8, 7, 0}, { -8, 13, -131, 8, 7, 0}, - { -8, 14, -132, 8, 7, 0}, { -8, 14, -132, 8, 7, 0}, { -9, 15, -133, 8, 7, 0}, { -9, 16, -134, 8, 7, 0}, { -9, 17, -135, 8, 7, 0}, - { -9, 18, -135, 8, 7, 0}, { -9, 18, -136, 8, 7, 0}, { -9, 19, -137, 8, 7, 0}, { -9, 20, -138, 8, 7, 0}, { -9, 21, -138, 8, 7, 0}, - { -10, 21, -139, 8, 7, 0}, { -10, 22, -140, 8, 7, 0}, { -10, 23, -141, 8, 7, 0}, { -10, 24, -141, 8, 7, 0}, { -10, 25, -142, 8, 7, 0}, - { -10, 26, -143, 8, 7, 0}, { -10, 26, -143, 8, 7, 0}, { -11, 27, -144, 8, 7, 0}, { -11, 28, -145, 8, 7, 0}, { -11, 29, -145, 8, 7, 0}, - { -11, 30, -146, 8, 7, 0}, { -11, 31, -147, 8, 7, 0}, { -11, 31, -147, 8, 7, 0}, { -11, 32, -148, 8, 7, 0}, { -11, 33, -149, 8, 7, 0}, - { -12, 34, -149, 8, 7, 0}, { -12, 35, -150, 8, 6, 0}, { -12, 36, -150, 8, 6, 0}, { -12, 36, -151, 8, 6, 0}, { -12, 37, -152, 8, 6, 0}, - { -12, 38, -152, 8, 6, 0}, { -12, 39, -153, 8, 6, 0}, { -12, 40, -154, 8, 6, 0}, { -13, 41, -154, 8, 6, 0}, { -13, 42, -155, 8, 6, 0}, - { -13, 43, -155, 8, 6, 0}, { -13, 43, -156, 8, 6, 0}, { -13, 44, -156, 8, 6, 0}, { -13, 45, -157, 8, 6, 0}, { -13, 46, -158, 8, 6, 0}, - { -14, 47, -158, 8, 6, 0}, { -14, 48, -159, 8, 6, 0}, { -14, 49, -159, 8, 6, 0}, { -14, 50, -160, 8, 6, 0}, { -14, 50, -160, 8, 6, 0}, - { -14, 51, -161, 8, 6, 0}, { -14, 52, -161, 8, 6, 0}, { -14, 53, -162, 8, 6, 0}, { -15, 54, -162, 8, 6, 0}, { -15, 55, -163, 8, 6, 0}, - { -15, 56, -163, 8, 6, 0}, { -15, 57, -164, 8, 6, 0}, { -15, 58, -164, 8, 6, 0}, { -15, 58, -165, 8, 6, 0}, { -15, 59, -165, 8, 6, 0}, - { -15, 60, -166, 8, 6, 0}, { -16, 61, -166, 8, 6, 0}, { -16, 62, -167, 8, 6, 0}, { -16, 63, -167, 8, 6, 0}, { -16, 64, -168, 8, 6, 0}, + {16, 31, 35, 8, 16, 0}, {16, 30, 35, 8, 16, 0}, {16, 29, 35, 8, 16, 0}, {15, 28, 35, 8, 16, 0}, {15, 27, 35, 8, 16, 0}, + {15, 26, 35, 8, 16, 0}, {15, 25, 35, 8, 16, 0}, {15, 24, 34, 8, 23, 0}, {15, 23, 34, 8, 23, 0}, {15, 22, 34, 8, 23, 0}, + {15, 21, 34, 8, 23, 0}, {14, 20, 34, 8, 23, 0}, {14, 19, 33, 8, 23, 0}, {14, 18, 33, 8, 23, 0}, {14, 17, 33, 8, 23, 0}, + {14, 16, 32, 8, 23, 0}, {14, 15, 32, 8, 23, 0}, {14, 14, 32, 8, 23, 0}, {14, 13, 31, 8, 23, 0}, {13, 12, 31, 8, 23, 0}, + {13, 11, 31, 8, 23, 0}, {13, 11, 30, 8, 23, 0}, {13, 10, 30, 8, 23, 0}, {13, 9, 29, 8, 22, 0}, {13, 8, 29, 8, 22, 0}, + {13, 7, 28, 8, 22, 0}, {12, 6, 28, 8, 22, 0}, {12, 5, 27, 8, 22, 0}, {12, 4, 27, 8, 22, 0}, {12, 3, 26, 8, 22, 0}, + {12, 2, 26, 8, 22, 0}, {12, 2, 25, 8, 22, 0}, {12, 1, 24, 8, 22, 0}, {12, 0, 24, 8, 22, 0}, {11, -1, 23, 8, 22, 0}, + {11, -2, 22, 8, 22, 0}, {11, -3, 22, 8, 22, 0}, {11, -3, 21, 8, 22, 0}, {11, -4, 20, 8, 22, 0}, {11, -5, 20, 8, 21, 0}, + {11, -6, 19, 8, 21, 0}, {11, -7, 18, 8, 21, 0}, {10, -7, 17, 8, 21, 0}, {10, -8, 17, 8, 21, 0}, {10, -9, 16, 8, 21, 0}, + {10, -9, 15, 8, 21, 0}, {10, -10, 14, 8, 21, 0}, {10, -11, 13, 8, 21, 0}, {10, -12, 12, 8, 21, 0}, {9, -12, 11, 8, 21, 0}, + {9, -13, 11, 8, 21, 0}, {9, -14, 10, 8, 21, 0}, {9, -14, 9, 8, 21, 0}, {9, -15, 8, 8, 21, 0}, {9, -16, 7, 8, 21, 0}, + {9, -16, 6, 8, 21, 0}, {9, -17, 5, 8, 20, 0}, {8, -17, 4, 8, 20, 0}, {8, -18, 3, 8, 20, 0}, {8, -18, 2, 8, 20, 0}, + {8, -19, 1, 8, 20, 0}, {8, -20, 0, 8, 20, 0}, {8, -20, -1, 8, 20, 0}, {8, -21, -2, 8, 20, 0}, {8, -21, -3, 8, 20, 0}, + {7, -22, -4, 8, 20, 0}, {7, -22, -5, 8, 20, 0}, {7, -22, -6, 8, 20, 0}, {7, -23, -8, 8, 20, 0}, {7, -23, -9, 8, 20, 0}, + {7, -24, -10, 8, 20, 0}, {7, -24, -11, 8, 20, 0}, {6, -24, -12, 8, 19, 0}, {6, -25, -13, 8, 19, 0}, {6, -25, -14, 8, 19, 0}, + {6, -26, -15, 8, 19, 0}, {6, -26, -17, 8, 19, 0}, {6, -26, -18, 8, 19, 0}, {6, -26, -19, 8, 19, 0}, {6, -27, -20, 8, 19, 0}, + {5, -27, -21, 8, 19, 0}, {5, -27, -22, 8, 19, 0}, {5, -27, -24, 8, 19, 0}, {5, -28, -25, 8, 19, 0}, {5, -28, -26, 8, 19, 0}, + {5, -28, -27, 8, 19, 0}, {5, -28, -28, 8, 19, 0}, {4, -28, -30, 8, 19, 0}, {4, -28, -31, 8, 18, 0}, {4, -28, -32, 8, 18, 0}, + {4, -29, -33, 8, 18, 0}, {4, -29, -34, 8, 18, 0}, {4, -29, -36, 8, 18, 0}, {4, -29, -37, 8, 18, 0}, {4, -29, -38, 8, 18, 0}, + {3, -29, -39, 8, 18, 0}, {3, -29, -40, 8, 18, 0}, {3, -29, -42, 8, 18, 0}, {3, -29, -43, 8, 18, 0}, {3, -29, -44, 8, 18, 0}, + {3, -29, -45, 8, 18, 0}, {3, -28, -46, 8, 18, 0}, {3, -28, -48, 8, 18, 0}, {2, -28, -49, 8, 17, 0}, {2, -28, -50, 8, 17, 0}, + {2, -28, -51, 8, 17, 0}, {2, -28, -52, 8, 17, 0}, {2, -28, -54, 8, 17, 0}, {2, -27, -55, 8, 17, 0}, {2, -27, -56, 8, 17, 0}, + {1, -27, -57, 8, 17, 0}, {1, -27, -58, 8, 17, 0}, {1, -26, -60, 8, 17, 0}, {1, -26, -61, 8, 17, 0}, {1, -26, -62, 8, 17, 0}, + {1, -26, -63, 8, 17, 0}, {1, -25, -64, 8, 17, 0}, {1, -25, -65, 8, 17, 0}, {0, -25, -67, 8, 17, 0}, {0, -24, -68, 8, 17, 0}, + {0, -24, -69, 8, 17, 0}, {0, -24, -70, 8, 17, 0}, {0, -23, -71, 8, 17, 0}, {0, -23, -72, 8, 17, 0}, {0, -23, -73, 8, 17, 0}, + {0, -22, -75, 8, 17, 0}, {-1, -22, -76, 8, 17, 0}, {-1, -21, -77, 8, 8, 0}, {-1, -21, -78, 8, 8, 0}, {-1, -21, -79, 8, 8, 0}, + {-1, -20, -80, 8, 8, 0}, {-1, -20, -81, 8, 8, 0}, {-1, -19, -82, 8, 8, 0}, {-2, -19, -83, 8, 8, 0}, {-2, -18, -84, 8, 8, 0}, + {-2, -18, -85, 8, 8, 0}, {-2, -18, -87, 8, 8, 0}, {-2, -17, -88, 8, 8, 0}, {-2, -17, -89, 8, 8, 0}, {-2, -16, -90, 8, 8, 0}, + {-2, -16, -91, 8, 8, 0}, {-3, -15, -92, 8, 8, 0}, {-3, -15, -93, 8, 8, 0}, {-3, -14, -94, 8, 8, 0}, {-3, -13, -95, 8, 8, 0}, + {-3, -13, -96, 8, 8, 0}, {-3, -12, -97, 8, 8, 0}, {-3, -12, -98, 8, 8, 0}, {-3, -11, -99, 8, 8, 0}, {-4, -11, -100, 8, 8, 0}, + {-4, -10, -101, 8, 8, 0}, {-4, -10, -102, 8, 8, 0}, {-4, -9, -103, 8, 8, 0}, {-4, -8, -104, 8, 8, 0}, {-4, -8, -105, 8, 8, 0}, + {-4, -7, -106, 8, 8, 0}, {-5, -6, -107, 8, 8, 0}, {-5, -6, -108, 8, 8, 0}, {-5, -5, -109, 8, 8, 0}, {-5, -5, -110, 8, 8, 0}, + {-5, -4, -110, 8, 8, 0}, {-5, -3, -111, 8, 7, 0}, {-5, -3, -112, 8, 7, 0}, {-5, -2, -113, 8, 7, 0}, {-6, -1, -114, 8, 7, 0}, + {-6, -1, -115, 8, 7, 0}, {-6, 0, -116, 8, 7, 0}, {-6, 1, -117, 8, 7, 0}, {-6, 1, -118, 8, 7, 0}, {-6, 2, -119, 8, 7, 0}, + {-6, 3, -119, 8, 7, 0}, {-6, 3, -120, 8, 7, 0}, {-7, 4, -121, 8, 7, 0}, {-7, 5, -122, 8, 7, 0}, {-7, 6, -123, 8, 7, 0}, + {-7, 6, -124, 8, 7, 0}, {-7, 7, -124, 8, 7, 0}, {-7, 8, -125, 8, 7, 0}, {-7, 8, -126, 8, 7, 0}, {-8, 9, -127, 8, 7, 0}, + {-8, 10, -128, 8, 7, 0}, {-8, 11, -129, 8, 7, 0}, {-8, 11, -129, 8, 7, 0}, {-8, 12, -130, 8, 7, 0}, {-8, 13, -131, 8, 7, 0}, + {-8, 14, -132, 8, 7, 0}, {-8, 14, -132, 8, 7, 0}, {-9, 15, -133, 8, 7, 0}, {-9, 16, -134, 8, 7, 0}, {-9, 17, -135, 8, 7, 0}, + {-9, 18, -135, 8, 7, 0}, {-9, 18, -136, 8, 7, 0}, {-9, 19, -137, 8, 7, 0}, {-9, 20, -138, 8, 7, 0}, {-9, 21, -138, 8, 7, 0}, + {-10, 21, -139, 8, 7, 0}, {-10, 22, -140, 8, 7, 0}, {-10, 23, -141, 8, 7, 0}, {-10, 24, -141, 8, 7, 0}, {-10, 25, -142, 8, 7, 0}, + {-10, 26, -143, 8, 7, 0}, {-10, 26, -143, 8, 7, 0}, {-11, 27, -144, 8, 7, 0}, {-11, 28, -145, 8, 7, 0}, {-11, 29, -145, 8, 7, 0}, + {-11, 30, -146, 8, 7, 0}, {-11, 31, -147, 8, 7, 0}, {-11, 31, -147, 8, 7, 0}, {-11, 32, -148, 8, 7, 0}, {-11, 33, -149, 8, 7, 0}, + {-12, 34, -149, 8, 7, 0}, {-12, 35, -150, 8, 6, 0}, {-12, 36, -150, 8, 6, 0}, {-12, 36, -151, 8, 6, 0}, {-12, 37, -152, 8, 6, 0}, + {-12, 38, -152, 8, 6, 0}, {-12, 39, -153, 8, 6, 0}, {-12, 40, -154, 8, 6, 0}, {-13, 41, -154, 8, 6, 0}, {-13, 42, -155, 8, 6, 0}, + {-13, 43, -155, 8, 6, 0}, {-13, 43, -156, 8, 6, 0}, {-13, 44, -156, 8, 6, 0}, {-13, 45, -157, 8, 6, 0}, {-13, 46, -158, 8, 6, 0}, + {-14, 47, -158, 8, 6, 0}, {-14, 48, -159, 8, 6, 0}, {-14, 49, -159, 8, 6, 0}, {-14, 50, -160, 8, 6, 0}, {-14, 50, -160, 8, 6, 0}, + {-14, 51, -161, 8, 6, 0}, {-14, 52, -161, 8, 6, 0}, {-14, 53, -162, 8, 6, 0}, {-15, 54, -162, 8, 6, 0}, {-15, 55, -163, 8, 6, 0}, + {-15, 56, -163, 8, 6, 0}, {-15, 57, -164, 8, 6, 0}, {-15, 58, -164, 8, 6, 0}, {-15, 58, -165, 8, 6, 0}, {-15, 59, -165, 8, 6, 0}, + {-15, 60, -166, 8, 6, 0}, {-16, 61, -166, 8, 6, 0}, {-16, 62, -167, 8, 6, 0}, {-16, 63, -167, 8, 6, 0}, {-16, 64, -168, 8, 6, 0}, }) + + CREATE_VEHICLE_INFO(TrackVehicleInfoLeftZeroGRollUp0, { { 31, 16, 0, 0, 2, 0}, { 30, 16, 0, 0, 2, 0}, { 29, 16, 1, 0, 2, 0}, { 28, 17, 1, 0, 2, 0}, { 27, 17, 1, 0, 2, 0}, { 26, 17, 2, 0, 2, 0}, { 25, 17, 2, 0, 2, 0}, { 24, 17, 3, 0, 2, 0}, { 24, 17, 3, 0, 2, 0}, { 23, 18, 4, 0, 2, 1}, @@ -25040,6 +25051,2223 @@ CREATE_VEHICLE_INFO(TrackVehicleInfo_FlyerHalfLoopUninvertedDown3, { }) +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthToDiagUp250, { + { 31, 16, 1, 0, 2, 0 }, { 30, 16, 1, 0, 2, 0 }, { 29, 16, 2, 0, 2, 0 }, { 28, 16, 3, 0, 2, 0 }, { 27, 16, 3, 0, 2, 0 }, + { 26, 16, 4, 0, 2, 0 }, { 25, 16, 4, 0, 2, 0 }, { 24, 16, 5, 0, 2, 0 }, { 23, 16, 6, 0, 2, 0 }, { 22, 15, 6, 0, 2, 0 }, + { 21, 15, 7, 31, 2, 0 }, { 20, 15, 7, 31, 2, 0 }, { 19, 15, 8, 31, 2, 0 }, { 18, 15, 8, 31, 2, 0 }, { 17, 15, 9, 31, 2, 0 }, + { 16, 15, 10, 31, 2, 0 }, { 15, 15, 10, 31, 2, 0 }, { 14, 14, 11, 31, 2, 0 }, { 13, 14, 11, 31, 2, 0 }, { 12, 14, 12, 31, 2, 0 }, + { 11, 14, 13, 31, 2, 0 }, { 10, 14, 13, 31, 2, 0 }, { 9, 13, 14, 31, 2, 0 }, { 8, 13, 14, 31, 2, 0 }, { 7, 13, 15, 31, 2, 0 }, + { 6, 13, 15, 31, 2, 0 }, { 5, 13, 16, 31, 2, 0 }, { 4, 12, 17, 31, 2, 0 }, { 3, 12, 17, 31, 2, 0 }, { 2, 12, 18, 31, 2, 0 }, + { 1, 11, 18, 31, 2, 0 }, { 0, 11, 19, 31, 2, 0 }, { -1, 11, 19, 30, 2, 0 }, { -2, 11, 20, 30, 2, 0 }, { -3, 10, 21, 30, 2, 0 }, + { -4, 10, 21, 30, 2, 0 }, { -5, 10, 22, 30, 2, 0 }, { -6, 9, 22, 30, 2, 0 }, { -7, 9, 23, 30, 2, 0 }, { -8, 8, 24, 30, 2, 0 }, + { -9, 8, 24, 30, 2, 0 }, { -10, 8, 25, 30, 2, 0 }, { -11, 7, 25, 30, 2, 0 }, { -12, 7, 26, 30, 2, 0 }, { -13, 7, 26, 30, 2, 0 }, + { -14, 6, 27, 30, 2, 0 }, { -15, 6, 28, 30, 2, 0 }, { -16, 5, 28, 30, 2, 0 }, { -17, 5, 29, 30, 2, 0 }, { -18, 4, 29, 30, 2, 0 }, + { -19, 4, 30, 30, 2, 0 }, { -20, 3, 31, 30, 2, 0 }, { -21, 3, 31, 30, 2, 0 }, { -22, 2, 32, 30, 2, 0 }, { -23, 2, 32, 30, 2, 0 }, + { -24, 1, 33, 29, 2, 0 }, { -25, 1, 34, 29, 2, 0 }, { -26, 0, 34, 29, 2, 0 }, { -27, 0, 35, 29, 2, 0 }, { -28, -1, 35, 29, 2, 0 }, + { -29, -2, 36, 29, 2, 0 }, { -30, -2, 37, 29, 2, 0 }, { -31, -3, 37, 29, 2, 0 }, { -32, -4, 38, 29, 2, 0 }, { -33, -4, 38, 29, 2, 0 }, + { -34, -5, 39, 29, 2, 0 }, { -35, -6, 40, 29, 2, 0 }, { -36, -6, 40, 29, 2, 0 }, { -37, -7, 41, 29, 2, 0 }, { -38, -8, 42, 29, 2, 0 }, + { -39, -9, 42, 29, 2, 0 }, { -40, -9, 43, 29, 2, 0 }, { -41, -10, 44, 29, 2, 0 }, { -42, -11, 44, 28, 2, 0 }, { -43, -12, 45, 28, 2, 0 }, + { -44, -13, 46, 28, 2, 0 }, { -45, -14, 46, 28, 2, 0 }, { -46, -15, 47, 28, 2, 0 }, { -47, -15, 48, 28, 2, 0 }, { -48, -16, 48, 28, 2, 0 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthToDiagUp251, { + { 16, 0, 0, 8, 2, 0 }, { 16, 1, 1, 8, 2, 0 }, { 16, 2, 1, 8, 2, 0 }, { 16, 3, 2, 8, 2, 0 }, { 16, 4, 3, 8, 2, 0 }, + { 16, 5, 3, 8, 2, 0 }, { 16, 6, 4, 8, 2, 0 }, { 16, 7, 4, 8, 2, 0 }, { 16, 8, 5, 8, 2, 0 }, { 16, 9, 6, 8, 2, 0 }, + { 15, 10, 6, 8, 2, 0 }, { 15, 11, 7, 7, 2, 0 }, { 15, 12, 7, 7, 2, 0 }, { 15, 13, 8, 7, 2, 0 }, { 15, 14, 8, 7, 2, 0 }, + { 15, 15, 9, 7, 2, 0 }, { 15, 16, 10, 7, 2, 0 }, { 15, 17, 10, 7, 2, 0 }, { 14, 18, 11, 7, 2, 0 }, { 14, 19, 11, 7, 2, 0 }, + { 14, 20, 12, 7, 2, 0 }, { 14, 21, 13, 7, 2, 0 }, { 14, 22, 13, 7, 2, 0 }, { 13, 23, 14, 7, 2, 0 }, { 13, 24, 14, 7, 2, 0 }, + { 13, 25, 15, 7, 2, 0 }, { 13, 26, 15, 7, 2, 0 }, { 13, 27, 16, 7, 2, 0 }, { 12, 28, 17, 7, 2, 0 }, { 12, 29, 17, 7, 2, 0 }, + { 12, 30, 18, 7, 2, 0 }, { 11, 31, 18, 7, 2, 0 }, { 11, 32, 19, 7, 2, 0 }, { 11, 33, 19, 6, 2, 0 }, { 11, 34, 20, 6, 2, 0 }, + { 10, 35, 21, 6, 2, 0 }, { 10, 36, 21, 6, 2, 0 }, { 10, 37, 22, 6, 2, 0 }, { 9, 38, 22, 6, 2, 0 }, { 9, 39, 23, 6, 2, 0 }, + { 8, 40, 24, 6, 2, 0 }, { 8, 41, 24, 6, 2, 0 }, { 8, 42, 25, 6, 2, 0 }, { 7, 43, 25, 6, 2, 0 }, { 7, 44, 26, 6, 2, 0 }, + { 7, 45, 26, 6, 2, 0 }, { 6, 46, 27, 6, 2, 0 }, { 6, 47, 28, 6, 2, 0 }, { 5, 48, 28, 6, 2, 0 }, { 5, 49, 29, 6, 2, 0 }, + { 4, 50, 29, 6, 2, 0 }, { 4, 51, 30, 6, 2, 0 }, { 3, 52, 31, 6, 2, 0 }, { 3, 53, 31, 6, 2, 0 }, { 2, 54, 32, 6, 2, 0 }, + { 2, 55, 32, 6, 2, 0 }, { 1, 56, 33, 5, 2, 0 }, { 1, 57, 34, 5, 2, 0 }, { 0, 58, 34, 5, 2, 0 }, { 0, 59, 35, 5, 2, 0 }, + { -1, 60, 35, 5, 2, 0 }, { -2, 61, 36, 5, 2, 0 }, { -2, 62, 37, 5, 2, 0 }, { -3, 63, 37, 5, 2, 0 }, { -4, 64, 38, 5, 2, 0 }, + { -4, 65, 38, 5, 2, 0 }, { -5, 66, 39, 5, 2, 0 }, { -6, 67, 40, 5, 2, 0 }, { -6, 68, 40, 5, 2, 0 }, { -7, 69, 41, 5, 2, 0 }, + { -8, 70, 42, 5, 2, 0 }, { -9, 71, 42, 5, 2, 0 }, { -9, 72, 43, 5, 2, 0 }, { -10, 73, 44, 5, 2, 0 }, { -11, 74, 44, 4, 2, 0 }, + { -12, 75, 45, 4, 2, 0 }, { -13, 76, 46, 4, 2, 0 }, { -14, 77, 46, 4, 2, 0 }, { -15, 78, 47, 4, 2, 0 }, { -15, 79, 48, 4, 2, 0 }, + { -16, 80, 48, 4, 2, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthToDiagUp252, { + { 0, 16, 0, 16, 2, 0 }, { 1, 16, 1, 16, 2, 0 }, { 2, 16, 1, 16, 2, 0 }, { 3, 16, 2, 16, 2, 0 }, { 4, 16, 3, 16, 2, 0 }, + { 5, 16, 3, 16, 2, 0 }, { 6, 16, 4, 16, 2, 0 }, { 7, 16, 4, 16, 2, 0 }, { 8, 16, 5, 16, 2, 0 }, { 9, 16, 6, 16, 2, 0 }, + { 10, 17, 6, 16, 2, 0 }, { 11, 17, 7, 15, 2, 0 }, { 12, 17, 7, 15, 2, 0 }, { 13, 17, 8, 15, 2, 0 }, { 14, 17, 8, 15, 2, 0 }, + { 15, 17, 9, 15, 2, 0 }, { 16, 17, 10, 15, 2, 0 }, { 17, 17, 10, 15, 2, 0 }, { 18, 18, 11, 15, 2, 0 }, { 19, 18, 11, 15, 2, 0 }, + { 20, 18, 12, 15, 2, 0 }, { 21, 18, 13, 15, 2, 0 }, { 22, 18, 13, 15, 2, 0 }, { 23, 19, 14, 15, 2, 0 }, { 24, 19, 14, 15, 2, 0 }, + { 25, 19, 15, 15, 2, 0 }, { 26, 19, 15, 15, 2, 0 }, { 27, 19, 16, 15, 2, 0 }, { 28, 20, 17, 15, 2, 0 }, { 29, 20, 17, 15, 2, 0 }, + { 30, 20, 18, 15, 2, 0 }, { 31, 21, 18, 15, 2, 0 }, { 32, 21, 19, 15, 2, 0 }, { 33, 21, 19, 14, 2, 0 }, { 34, 21, 20, 14, 2, 0 }, + { 35, 22, 21, 14, 2, 0 }, { 36, 22, 21, 14, 2, 0 }, { 37, 22, 22, 14, 2, 0 }, { 38, 23, 22, 14, 2, 0 }, { 39, 23, 23, 14, 2, 0 }, + { 40, 24, 24, 14, 2, 0 }, { 41, 24, 24, 14, 2, 0 }, { 42, 24, 25, 14, 2, 0 }, { 43, 25, 25, 14, 2, 0 }, { 44, 25, 26, 14, 2, 0 }, + { 45, 25, 26, 14, 2, 0 }, { 46, 26, 27, 14, 2, 0 }, { 47, 26, 28, 14, 2, 0 }, { 48, 27, 28, 14, 2, 0 }, { 49, 27, 29, 14, 2, 0 }, + { 50, 28, 29, 14, 2, 0 }, { 51, 28, 30, 14, 2, 0 }, { 52, 29, 31, 14, 2, 0 }, { 53, 29, 31, 14, 2, 0 }, { 54, 30, 32, 14, 2, 0 }, + { 55, 30, 32, 14, 2, 0 }, { 56, 31, 33, 13, 2, 0 }, { 57, 31, 34, 13, 2, 0 }, { 58, 32, 34, 13, 2, 0 }, { 59, 32, 35, 13, 2, 0 }, + { 60, 33, 35, 13, 2, 0 }, { 61, 34, 36, 13, 2, 0 }, { 62, 34, 37, 13, 2, 0 }, { 63, 35, 37, 13, 2, 0 }, { 64, 36, 38, 13, 2, 0 }, + { 65, 36, 38, 13, 2, 0 }, { 66, 37, 39, 13, 2, 0 }, { 67, 38, 40, 13, 2, 0 }, { 68, 38, 40, 13, 2, 0 }, { 69, 39, 41, 13, 2, 0 }, + { 70, 40, 42, 13, 2, 0 }, { 71, 41, 42, 13, 2, 0 }, { 72, 41, 43, 13, 2, 0 }, { 73, 42, 44, 13, 2, 0 }, { 74, 43, 44, 12, 2, 0 }, + { 75, 44, 45, 12, 2, 0 }, { 76, 45, 46, 12, 2, 0 }, { 77, 46, 46, 12, 2, 0 }, { 78, 47, 47, 12, 2, 0 }, { 79, 47, 48, 12, 2, 0 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthToDiagUp253, { + { 16, 31, 1, 24, 2, 0 }, { 16, 30, 1, 24, 2, 0 }, { 16, 29, 2, 24, 2, 0 }, { 16, 28, 3, 24, 2, 0 }, { 16, 27, 3, 24, 2, 0 }, + { 16, 26, 4, 24, 2, 0 }, { 16, 25, 4, 24, 2, 0 }, { 16, 24, 5, 24, 2, 0 }, { 16, 23, 6, 24, 2, 0 }, { 17, 22, 6, 24, 2, 0 }, + { 17, 21, 7, 23, 2, 0 }, { 17, 20, 7, 23, 2, 0 }, { 17, 19, 8, 23, 2, 0 }, { 17, 18, 8, 23, 2, 0 }, { 17, 17, 9, 23, 2, 0 }, + { 17, 16, 10, 23, 2, 0 }, { 17, 15, 10, 23, 2, 0 }, { 18, 14, 11, 23, 2, 0 }, { 18, 13, 11, 23, 2, 0 }, { 18, 12, 12, 23, 2, 0 }, + { 18, 11, 13, 23, 2, 0 }, { 18, 10, 13, 23, 2, 0 }, { 19, 9, 14, 23, 2, 0 }, { 19, 8, 14, 23, 2, 0 }, { 19, 7, 15, 23, 2, 0 }, + { 19, 6, 15, 23, 2, 0 }, { 19, 5, 16, 23, 2, 0 }, { 20, 4, 17, 23, 2, 0 }, { 20, 3, 17, 23, 2, 0 }, { 20, 2, 18, 23, 2, 0 }, + { 21, 1, 18, 23, 2, 0 }, { 21, 0, 19, 23, 2, 0 }, { 21, -1, 19, 22, 2, 0 }, { 21, -2, 20, 22, 2, 0 }, { 22, -3, 21, 22, 2, 0 }, + { 22, -4, 21, 22, 2, 0 }, { 22, -5, 22, 22, 2, 0 }, { 23, -6, 22, 22, 2, 0 }, { 23, -7, 23, 22, 2, 0 }, { 24, -8, 24, 22, 2, 0 }, + { 24, -9, 24, 22, 2, 0 }, { 24, -10, 25, 22, 2, 0 }, { 25, -11, 25, 22, 2, 0 }, { 25, -12, 26, 22, 2, 0 }, { 25, -13, 26, 22, 2, 0 }, + { 26, -14, 27, 22, 2, 0 }, { 26, -15, 28, 22, 2, 0 }, { 27, -16, 28, 22, 2, 0 }, { 27, -17, 29, 22, 2, 0 }, { 28, -18, 29, 22, 2, 0 }, + { 28, -19, 30, 22, 2, 0 }, { 29, -20, 31, 22, 2, 0 }, { 29, -21, 31, 22, 2, 0 }, { 30, -22, 32, 22, 2, 0 }, { 30, -23, 32, 22, 2, 0 }, + { 31, -24, 33, 21, 2, 0 }, { 31, -25, 34, 21, 2, 0 }, { 32, -26, 34, 21, 2, 0 }, { 32, -27, 35, 21, 2, 0 }, { 33, -28, 35, 21, 2, 0 }, + { 34, -29, 36, 21, 2, 0 }, { 34, -30, 37, 21, 2, 0 }, { 35, -31, 37, 21, 2, 0 }, { 36, -32, 38, 21, 2, 0 }, { 36, -33, 38, 21, 2, 0 }, + { 37, -34, 39, 21, 2, 0 }, { 38, -35, 40, 21, 2, 0 }, { 38, -36, 40, 21, 2, 0 }, { 39, -37, 41, 21, 2, 0 }, { 40, -38, 42, 21, 2, 0 }, + { 41, -39, 42, 21, 2, 0 }, { 41, -40, 43, 21, 2, 0 }, { 42, -41, 44, 21, 2, 0 }, { 43, -42, 44, 20, 2, 0 }, { 44, -43, 45, 20, 2, 0 }, + { 45, -44, 46, 20, 2, 0 }, { 46, -45, 46, 20, 2, 0 }, { 47, -46, 47, 20, 2, 0 }, { 47, -47, 48, 20, 2, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthToDiagUp250, { + { 31, 16, 1, 0, 2, 0 }, { 30, 16, 1, 0, 2, 0 }, { 29, 16, 2, 0, 2, 0 }, { 28, 16, 3, 0, 2, 0 }, { 27, 16, 3, 0, 2, 0 }, + { 26, 16, 4, 0, 2, 0 }, { 25, 16, 4, 0, 2, 0 }, { 24, 16, 5, 0, 2, 0 }, { 23, 16, 6, 0, 2, 0 }, { 22, 17, 6, 0, 2, 0 }, + { 21, 17, 7, 1, 2, 0 }, { 20, 17, 7, 1, 2, 0 }, { 19, 17, 8, 1, 2, 0 }, { 18, 17, 8, 1, 2, 0 }, { 17, 17, 9, 1, 2, 0 }, + { 16, 17, 10, 1, 2, 0 }, { 15, 17, 10, 1, 2, 0 }, { 14, 18, 11, 1, 2, 0 }, { 13, 18, 11, 1, 2, 0 }, { 12, 18, 12, 1, 2, 0 }, + { 11, 18, 13, 1, 2, 0 }, { 10, 18, 13, 1, 2, 0 }, { 9, 19, 14, 1, 2, 0 }, { 8, 19, 14, 1, 2, 0 }, { 7, 19, 15, 1, 2, 0 }, + { 6, 19, 15, 1, 2, 0 }, { 5, 19, 16, 1, 2, 0 }, { 4, 20, 17, 1, 2, 0 }, { 3, 20, 17, 1, 2, 0 }, { 2, 20, 18, 1, 2, 0 }, + { 1, 21, 18, 1, 2, 0 }, { 0, 21, 19, 1, 2, 0 }, { -1, 21, 19, 2, 2, 0 }, { -2, 21, 20, 2, 2, 0 }, { -3, 22, 21, 2, 2, 0 }, + { -4, 22, 21, 2, 2, 0 }, { -5, 22, 22, 2, 2, 0 }, { -6, 23, 22, 2, 2, 0 }, { -7, 23, 23, 2, 2, 0 }, { -8, 24, 24, 2, 2, 0 }, + { -9, 24, 24, 2, 2, 0 }, { -10, 24, 25, 2, 2, 0 }, { -11, 25, 25, 2, 2, 0 }, { -12, 25, 26, 2, 2, 0 }, { -13, 25, 26, 2, 2, 0 }, + { -14, 26, 27, 2, 2, 0 }, { -15, 26, 28, 2, 2, 0 }, { -16, 27, 28, 2, 2, 0 }, { -17, 27, 29, 2, 2, 0 }, { -18, 28, 29, 2, 2, 0 }, + { -19, 28, 30, 2, 2, 0 }, { -20, 29, 31, 2, 2, 0 }, { -21, 29, 31, 2, 2, 0 }, { -22, 30, 32, 2, 2, 0 }, { -23, 30, 32, 2, 2, 0 }, + { -24, 31, 33, 3, 2, 0 }, { -25, 31, 34, 3, 2, 0 }, { -26, 32, 34, 3, 2, 0 }, { -27, 32, 35, 3, 2, 0 }, { -28, 33, 35, 3, 2, 0 }, + { -29, 34, 36, 3, 2, 0 }, { -30, 34, 37, 3, 2, 0 }, { -31, 35, 37, 3, 2, 0 }, { -32, 36, 38, 3, 2, 0 }, { -33, 36, 38, 3, 2, 0 }, + { -34, 37, 39, 3, 2, 0 }, { -35, 38, 40, 3, 2, 0 }, { -36, 38, 40, 3, 2, 0 }, { -37, 39, 41, 3, 2, 0 }, { -38, 40, 42, 3, 2, 0 }, + { -39, 41, 42, 3, 2, 0 }, { -40, 41, 43, 3, 2, 0 }, { -41, 42, 44, 3, 2, 0 }, { -42, 43, 44, 4, 2, 0 }, { -43, 44, 45, 4, 2, 0 }, + { -44, 45, 46, 4, 2, 0 }, { -45, 46, 46, 4, 2, 0 }, { -46, 47, 47, 4, 2, 0 }, { -47, 47, 48, 4, 2, 0 }, { -48, 48, 48, 4, 2, 0 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthToDiagUp251, { + { 16, 0, 0, 8, 2, 0 }, { 16, 1, 1, 8, 2, 0 }, { 16, 2, 1, 8, 2, 0 }, { 16, 3, 2, 8, 2, 0 }, { 16, 4, 3, 8, 2, 0 }, + { 16, 5, 3, 8, 2, 0 }, { 16, 6, 4, 8, 2, 0 }, { 16, 7, 4, 8, 2, 0 }, { 16, 8, 5, 8, 2, 0 }, { 16, 9, 6, 8, 2, 0 }, + { 17, 10, 6, 8, 2, 0 }, { 17, 11, 7, 9, 2, 0 }, { 17, 12, 7, 9, 2, 0 }, { 17, 13, 8, 9, 2, 0 }, { 17, 14, 8, 9, 2, 0 }, + { 17, 15, 9, 9, 2, 0 }, { 17, 16, 10, 9, 2, 0 }, { 17, 17, 10, 9, 2, 0 }, { 18, 18, 11, 9, 2, 0 }, { 18, 19, 11, 9, 2, 0 }, + { 18, 20, 12, 9, 2, 0 }, { 18, 21, 13, 9, 2, 0 }, { 18, 22, 13, 9, 2, 0 }, { 19, 23, 14, 9, 2, 0 }, { 19, 24, 14, 9, 2, 0 }, + { 19, 25, 15, 9, 2, 0 }, { 19, 26, 15, 9, 2, 0 }, { 19, 27, 16, 9, 2, 0 }, { 20, 28, 17, 9, 2, 0 }, { 20, 29, 17, 9, 2, 0 }, + { 20, 30, 18, 9, 2, 0 }, { 21, 31, 18, 9, 2, 0 }, { 21, 32, 19, 9, 2, 0 }, { 21, 33, 19, 10, 2, 0 }, { 21, 34, 20, 10, 2, 0 }, + { 22, 35, 21, 10, 2, 0 }, { 22, 36, 21, 10, 2, 0 }, { 22, 37, 22, 10, 2, 0 }, { 23, 38, 22, 10, 2, 0 }, { 23, 39, 23, 10, 2, 0 }, + { 24, 40, 24, 10, 2, 0 }, { 24, 41, 24, 10, 2, 0 }, { 24, 42, 25, 10, 2, 0 }, { 25, 43, 25, 10, 2, 0 }, { 25, 44, 26, 10, 2, 0 }, + { 25, 45, 26, 10, 2, 0 }, { 26, 46, 27, 10, 2, 0 }, { 26, 47, 28, 10, 2, 0 }, { 27, 48, 28, 10, 2, 0 }, { 27, 49, 29, 10, 2, 0 }, + { 28, 50, 29, 10, 2, 0 }, { 28, 51, 30, 10, 2, 0 }, { 29, 52, 31, 10, 2, 0 }, { 29, 53, 31, 10, 2, 0 }, { 30, 54, 32, 10, 2, 0 }, + { 30, 55, 32, 10, 2, 0 }, { 31, 56, 33, 11, 2, 0 }, { 31, 57, 34, 11, 2, 0 }, { 32, 58, 34, 11, 2, 0 }, { 32, 59, 35, 11, 2, 0 }, + { 33, 60, 35, 11, 2, 0 }, { 34, 61, 36, 11, 2, 0 }, { 34, 62, 37, 11, 2, 0 }, { 35, 63, 37, 11, 2, 0 }, { 36, 64, 38, 11, 2, 0 }, + { 36, 65, 38, 11, 2, 0 }, { 37, 66, 39, 11, 2, 0 }, { 38, 67, 40, 11, 2, 0 }, { 38, 68, 40, 11, 2, 0 }, { 39, 69, 41, 11, 2, 0 }, + { 40, 70, 42, 11, 2, 0 }, { 41, 71, 42, 11, 2, 0 }, { 41, 72, 43, 11, 2, 0 }, { 42, 73, 44, 11, 2, 0 }, { 43, 74, 44, 12, 2, 0 }, + { 44, 75, 45, 12, 2, 0 }, { 45, 76, 46, 12, 2, 0 }, { 46, 77, 46, 12, 2, 0 }, { 47, 78, 47, 12, 2, 0 }, { 47, 79, 48, 12, 2, 0 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthToDiagUp252, { + { 0, 16, 0, 16, 2, 0 }, { 1, 16, 1, 16, 2, 0 }, { 2, 16, 1, 16, 2, 0 }, { 3, 16, 2, 16, 2, 0 }, { 4, 16, 3, 16, 2, 0 }, + { 5, 16, 3, 16, 2, 0 }, { 6, 16, 4, 16, 2, 0 }, { 7, 16, 4, 16, 2, 0 }, { 8, 16, 5, 16, 2, 0 }, { 9, 16, 6, 16, 2, 0 }, + { 10, 15, 6, 16, 2, 0 }, { 11, 15, 7, 17, 2, 0 }, { 12, 15, 7, 17, 2, 0 }, { 13, 15, 8, 17, 2, 0 }, { 14, 15, 8, 17, 2, 0 }, + { 15, 15, 9, 17, 2, 0 }, { 16, 15, 10, 17, 2, 0 }, { 17, 15, 10, 17, 2, 0 }, { 18, 14, 11, 17, 2, 0 }, { 19, 14, 11, 17, 2, 0 }, + { 20, 14, 12, 17, 2, 0 }, { 21, 14, 13, 17, 2, 0 }, { 22, 14, 13, 17, 2, 0 }, { 23, 13, 14, 17, 2, 0 }, { 24, 13, 14, 17, 2, 0 }, + { 25, 13, 15, 17, 2, 0 }, { 26, 13, 15, 17, 2, 0 }, { 27, 13, 16, 17, 2, 0 }, { 28, 12, 17, 17, 2, 0 }, { 29, 12, 17, 17, 2, 0 }, + { 30, 12, 18, 17, 2, 0 }, { 31, 11, 18, 17, 2, 0 }, { 32, 11, 19, 17, 2, 0 }, { 33, 11, 19, 18, 2, 0 }, { 34, 11, 20, 18, 2, 0 }, + { 35, 10, 21, 18, 2, 0 }, { 36, 10, 21, 18, 2, 0 }, { 37, 10, 22, 18, 2, 0 }, { 38, 9, 22, 18, 2, 0 }, { 39, 9, 23, 18, 2, 0 }, + { 40, 8, 24, 18, 2, 0 }, { 41, 8, 24, 18, 2, 0 }, { 42, 8, 25, 18, 2, 0 }, { 43, 7, 25, 18, 2, 0 }, { 44, 7, 26, 18, 2, 0 }, + { 45, 7, 26, 18, 2, 0 }, { 46, 6, 27, 18, 2, 0 }, { 47, 6, 28, 18, 2, 0 }, { 48, 5, 28, 18, 2, 0 }, { 49, 5, 29, 18, 2, 0 }, + { 50, 4, 29, 18, 2, 0 }, { 51, 4, 30, 18, 2, 0 }, { 52, 3, 31, 18, 2, 0 }, { 53, 3, 31, 18, 2, 0 }, { 54, 2, 32, 18, 2, 0 }, + { 55, 2, 32, 18, 2, 0 }, { 56, 1, 33, 19, 2, 0 }, { 57, 1, 34, 19, 2, 0 }, { 58, 0, 34, 19, 2, 0 }, { 59, 0, 35, 19, 2, 0 }, + { 60, -1, 35, 19, 2, 0 }, { 61, -2, 36, 19, 2, 0 }, { 62, -2, 37, 19, 2, 0 }, { 63, -3, 37, 19, 2, 0 }, { 64, -4, 38, 19, 2, 0 }, + { 65, -4, 38, 19, 2, 0 }, { 66, -5, 39, 19, 2, 0 }, { 67, -6, 40, 19, 2, 0 }, { 68, -6, 40, 19, 2, 0 }, { 69, -7, 41, 19, 2, 0 }, + { 70, -8, 42, 19, 2, 0 }, { 71, -9, 42, 19, 2, 0 }, { 72, -9, 43, 19, 2, 0 }, { 73, -10, 44, 19, 2, 0 }, { 74, -11, 44, 20, 2, 0 }, + { 75, -12, 45, 20, 2, 0 }, { 76, -13, 46, 20, 2, 0 }, { 77, -14, 46, 20, 2, 0 }, { 78, -15, 47, 20, 2, 0 }, { 79, -15, 48, 20, 2, 0 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthToDiagUp253, { + { 16, 31, 1, 24, 2, 0 }, { 16, 30, 1, 24, 2, 0 }, { 16, 29, 2, 24, 2, 0 }, { 16, 28, 3, 24, 2, 0 }, { 16, 27, 3, 24, 2, 0 }, + { 16, 26, 4, 24, 2, 0 }, { 16, 25, 4, 24, 2, 0 }, { 16, 24, 5, 24, 2, 0 }, { 16, 23, 6, 24, 2, 0 }, { 15, 22, 6, 24, 2, 0 }, + { 15, 21, 7, 25, 2, 0 }, { 15, 20, 7, 25, 2, 0 }, { 15, 19, 8, 25, 2, 0 }, { 15, 18, 8, 25, 2, 0 }, { 15, 17, 9, 25, 2, 0 }, + { 15, 16, 10, 25, 2, 0 }, { 15, 15, 10, 25, 2, 0 }, { 14, 14, 11, 25, 2, 0 }, { 14, 13, 11, 25, 2, 0 }, { 14, 12, 12, 25, 2, 0 }, + { 14, 11, 13, 25, 2, 0 }, { 14, 10, 13, 25, 2, 0 }, { 13, 9, 14, 25, 2, 0 }, { 13, 8, 14, 25, 2, 0 }, { 13, 7, 15, 25, 2, 0 }, + { 13, 6, 15, 25, 2, 0 }, { 13, 5, 16, 25, 2, 0 }, { 12, 4, 17, 25, 2, 0 }, { 12, 3, 17, 25, 2, 0 }, { 12, 2, 18, 25, 2, 0 }, + { 11, 1, 18, 25, 2, 0 }, { 11, 0, 19, 25, 2, 0 }, { 11, -1, 19, 26, 2, 0 }, { 11, -2, 20, 26, 2, 0 }, { 10, -3, 21, 26, 2, 0 }, + { 10, -4, 21, 26, 2, 0 }, { 10, -5, 22, 26, 2, 0 }, { 9, -6, 22, 26, 2, 0 }, { 9, -7, 23, 26, 2, 0 }, { 8, -8, 24, 26, 2, 0 }, + { 8, -9, 24, 26, 2, 0 }, { 8, -10, 25, 26, 2, 0 }, { 7, -11, 25, 26, 2, 0 }, { 7, -12, 26, 26, 2, 0 }, { 7, -13, 26, 26, 2, 0 }, + { 6, -14, 27, 26, 2, 0 }, { 6, -15, 28, 26, 2, 0 }, { 5, -16, 28, 26, 2, 0 }, { 5, -17, 29, 26, 2, 0 }, { 4, -18, 29, 26, 2, 0 }, + { 4, -19, 30, 26, 2, 0 }, { 3, -20, 31, 26, 2, 0 }, { 3, -21, 31, 26, 2, 0 }, { 2, -22, 32, 26, 2, 0 }, { 2, -23, 32, 26, 2, 0 }, + { 1, -24, 33, 27, 2, 0 }, { 1, -25, 34, 27, 2, 0 }, { 0, -26, 34, 27, 2, 0 }, { 0, -27, 35, 27, 2, 0 }, { -1, -28, 35, 27, 2, 0 }, + { -2, -29, 36, 27, 2, 0 }, { -2, -30, 37, 27, 2, 0 }, { -3, -31, 37, 27, 2, 0 }, { -4, -32, 38, 27, 2, 0 }, { -4, -33, 38, 27, 2, 0 }, + { -5, -34, 39, 27, 2, 0 }, { -6, -35, 40, 27, 2, 0 }, { -6, -36, 40, 27, 2, 0 }, { -7, -37, 41, 27, 2, 0 }, { -8, -38, 42, 27, 2, 0 }, + { -9, -39, 42, 27, 2, 0 }, { -9, -40, 43, 27, 2, 0 }, { -10, -41, 44, 27, 2, 0 }, { -11, -42, 44, 28, 2, 0 }, { -12, -43, 45, 28, 2, 0 }, + { -13, -44, 46, 28, 2, 0 }, { -14, -45, 46, 28, 2, 0 }, { -15, -46, 47, 28, 2, 0 }, { -15, -47, 48, 28, 2, 0 }, { -16, -48, 48, 28, 2, 0 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthToDiagDown250, { + { 31, 16, 15, 0, 6, 0 }, { 30, 16, 15, 0, 6, 0 }, { 29, 16, 14, 0, 6, 0 }, { 28, 16, 13, 0, 6, 0 }, { 27, 16, 13, 0, 6, 0 }, + { 26, 16, 12, 0, 6, 0 }, { 25, 16, 12, 0, 6, 0 }, { 24, 16, 11, 0, 6, 0 }, { 23, 16, 10, 0, 6, 0 }, { 22, 15, 10, 0, 6, 0 }, + { 21, 15, 9, 31, 6, 0 }, { 20, 15, 9, 31, 6, 0 }, { 19, 15, 8, 31, 6, 0 }, { 18, 15, 8, 31, 6, 0 }, { 17, 15, 7, 31, 6, 0 }, + { 16, 15, 6, 31, 6, 0 }, { 15, 15, 6, 31, 6, 0 }, { 14, 14, 5, 31, 6, 0 }, { 13, 14, 5, 31, 6, 0 }, { 12, 14, 4, 31, 6, 0 }, + { 11, 14, 3, 31, 6, 0 }, { 10, 14, 3, 31, 6, 0 }, { 9, 13, 2, 31, 6, 0 }, { 8, 13, 2, 31, 6, 0 }, { 7, 13, 1, 31, 6, 0 }, + { 6, 13, 1, 31, 6, 0 }, { 5, 13, 0, 31, 6, 0 }, { 4, 12, -1, 31, 6, 0 }, { 3, 12, -1, 31, 6, 0 }, { 2, 12, -2, 31, 6, 0 }, + { 1, 11, -2, 31, 6, 0 }, { 0, 11, -3, 31, 6, 0 }, { -1, 11, -3, 30, 6, 0 }, { -2, 11, -4, 30, 6, 0 }, { -3, 10, -5, 30, 6, 0 }, + { -4, 10, -5, 30, 6, 0 }, { -5, 10, -6, 30, 6, 0 }, { -6, 9, -6, 30, 6, 0 }, { -7, 9, -7, 30, 6, 0 }, { -8, 8, -8, 30, 6, 0 }, + { -9, 8, -8, 30, 6, 0 }, { -10, 8, -9, 30, 6, 0 }, { -11, 7, -9, 30, 6, 0 }, { -12, 7, -10, 30, 6, 0 }, { -13, 7, -10, 30, 6, 0 }, + { -14, 6, -11, 30, 6, 0 }, { -15, 6, -12, 30, 6, 0 }, { -16, 5, -12, 30, 6, 0 }, { -17, 5, -13, 30, 6, 0 }, { -18, 4, -13, 30, 6, 0 }, + { -19, 4, -14, 30, 6, 0 }, { -20, 3, -15, 30, 6, 0 }, { -21, 3, -15, 30, 6, 0 }, { -22, 2, -16, 30, 6, 0 }, { -23, 2, -16, 30, 6, 0 }, + { -24, 1, -17, 29, 6, 0 }, { -25, 1, -18, 29, 6, 0 }, { -26, 0, -18, 29, 6, 0 }, { -27, 0, -19, 29, 6, 0 }, { -28, -1, -19, 29, 6, 0 }, + { -29, -2, -20, 29, 6, 0 }, { -30, -2, -21, 29, 6, 0 }, { -31, -3, -21, 29, 6, 0 }, { -32, -4, -22, 29, 6, 0 }, { -33, -4, -22, 29, 6, 0 }, + { -34, -5, -23, 29, 6, 0 }, { -35, -6, -24, 29, 6, 0 }, { -36, -6, -24, 29, 6, 0 }, { -37, -7, -25, 29, 6, 0 }, { -38, -8, -26, 29, 6, 0 }, + { -39, -9, -26, 29, 6, 0 }, { -40, -9, -27, 29, 6, 0 }, { -41, -10, -28, 29, 6, 0 }, { -42, -11, -28, 28, 6, 0 }, { -43, -12, -29, 28, 6, 0 }, + { -44, -13, -30, 28, 6, 0 }, { -45, -14, -30, 28, 6, 0 }, { -46, -15, -31, 28, 6, 0 }, { -47, -15, -32, 28, 6, 0 }, { -48, -16, -32, 28, 6, 0 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthToDiagDown251, { + { 16, 0, 16, 8, 6, 0 }, { 16, 1, 15, 8, 6, 0 }, { 16, 2, 15, 8, 6, 0 }, { 16, 3, 14, 8, 6, 0 }, { 16, 4, 13, 8, 6, 0 }, + { 16, 5, 13, 8, 6, 0 }, { 16, 6, 12, 8, 6, 0 }, { 16, 7, 12, 8, 6, 0 }, { 16, 8, 11, 8, 6, 0 }, { 16, 9, 10, 8, 6, 0 }, + { 15, 10, 10, 8, 6, 0 }, { 15, 11, 9, 7, 6, 0 }, { 15, 12, 9, 7, 6, 0 }, { 15, 13, 8, 7, 6, 0 }, { 15, 14, 8, 7, 6, 0 }, + { 15, 15, 7, 7, 6, 0 }, { 15, 16, 6, 7, 6, 0 }, { 15, 17, 6, 7, 6, 0 }, { 14, 18, 5, 7, 6, 0 }, { 14, 19, 5, 7, 6, 0 }, + { 14, 20, 4, 7, 6, 0 }, { 14, 21, 3, 7, 6, 0 }, { 14, 22, 3, 7, 6, 0 }, { 13, 23, 2, 7, 6, 0 }, { 13, 24, 2, 7, 6, 0 }, + { 13, 25, 1, 7, 6, 0 }, { 13, 26, 1, 7, 6, 0 }, { 13, 27, 0, 7, 6, 0 }, { 12, 28, -1, 7, 6, 0 }, { 12, 29, -1, 7, 6, 0 }, + { 12, 30, -2, 7, 6, 0 }, { 11, 31, -2, 7, 6, 0 }, { 11, 32, -3, 7, 6, 0 }, { 11, 33, -3, 6, 6, 0 }, { 11, 34, -4, 6, 6, 0 }, + { 10, 35, -5, 6, 6, 0 }, { 10, 36, -5, 6, 6, 0 }, { 10, 37, -6, 6, 6, 0 }, { 9, 38, -6, 6, 6, 0 }, { 9, 39, -7, 6, 6, 0 }, + { 8, 40, -8, 6, 6, 0 }, { 8, 41, -8, 6, 6, 0 }, { 8, 42, -9, 6, 6, 0 }, { 7, 43, -9, 6, 6, 0 }, { 7, 44, -10, 6, 6, 0 }, + { 7, 45, -10, 6, 6, 0 }, { 6, 46, -11, 6, 6, 0 }, { 6, 47, -12, 6, 6, 0 }, { 5, 48, -12, 6, 6, 0 }, { 5, 49, -13, 6, 6, 0 }, + { 4, 50, -13, 6, 6, 0 }, { 4, 51, -14, 6, 6, 0 }, { 3, 52, -15, 6, 6, 0 }, { 3, 53, -15, 6, 6, 0 }, { 2, 54, -16, 6, 6, 0 }, + { 2, 55, -16, 6, 6, 0 }, { 1, 56, -17, 5, 6, 0 }, { 1, 57, -18, 5, 6, 0 }, { 0, 58, -18, 5, 6, 0 }, { 0, 59, -19, 5, 6, 0 }, + { -1, 60, -19, 5, 6, 0 }, { -2, 61, -20, 5, 6, 0 }, { -2, 62, -21, 5, 6, 0 }, { -3, 63, -21, 5, 6, 0 }, { -4, 64, -22, 5, 6, 0 }, + { -4, 65, -22, 5, 6, 0 }, { -5, 66, -23, 5, 6, 0 }, { -6, 67, -24, 5, 6, 0 }, { -6, 68, -24, 5, 6, 0 }, { -7, 69, -25, 5, 6, 0 }, + { -8, 70, -26, 5, 6, 0 }, { -9, 71, -26, 5, 6, 0 }, { -9, 72, -27, 5, 6, 0 }, { -10, 73, -28, 5, 6, 0 }, { -11, 74, -28, 4, 6, 0 }, + { -12, 75, -29, 4, 6, 0 }, { -13, 76, -30, 4, 6, 0 }, { -14, 77, -30, 4, 6, 0 }, { -15, 78, -31, 4, 6, 0 }, { -15, 79, -32, 4, 6, 0 }, + { -16, 80, -32, 4, 6, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthToDiagDown252, { + { 0, 16, 16, 16, 6, 0 }, { 1, 16, 15, 16, 6, 0 }, { 2, 16, 15, 16, 6, 0 }, { 3, 16, 14, 16, 6, 0 }, { 4, 16, 13, 16, 6, 0 }, + { 5, 16, 13, 16, 6, 0 }, { 6, 16, 12, 16, 6, 0 }, { 7, 16, 12, 16, 6, 0 }, { 8, 16, 11, 16, 6, 0 }, { 9, 16, 10, 16, 6, 0 }, + { 10, 17, 10, 16, 6, 0 }, { 11, 17, 9, 15, 6, 0 }, { 12, 17, 9, 15, 6, 0 }, { 13, 17, 8, 15, 6, 0 }, { 14, 17, 8, 15, 6, 0 }, + { 15, 17, 7, 15, 6, 0 }, { 16, 17, 6, 15, 6, 0 }, { 17, 17, 6, 15, 6, 0 }, { 18, 18, 5, 15, 6, 0 }, { 19, 18, 5, 15, 6, 0 }, + { 20, 18, 4, 15, 6, 0 }, { 21, 18, 3, 15, 6, 0 }, { 22, 18, 3, 15, 6, 0 }, { 23, 19, 2, 15, 6, 0 }, { 24, 19, 2, 15, 6, 0 }, + { 25, 19, 1, 15, 6, 0 }, { 26, 19, 1, 15, 6, 0 }, { 27, 19, 0, 15, 6, 0 }, { 28, 20, -1, 15, 6, 0 }, { 29, 20, -1, 15, 6, 0 }, + { 30, 20, -2, 15, 6, 0 }, { 31, 21, -2, 15, 6, 0 }, { 32, 21, -3, 15, 6, 0 }, { 33, 21, -3, 14, 6, 0 }, { 34, 21, -4, 14, 6, 0 }, + { 35, 22, -5, 14, 6, 0 }, { 36, 22, -5, 14, 6, 0 }, { 37, 22, -6, 14, 6, 0 }, { 38, 23, -6, 14, 6, 0 }, { 39, 23, -7, 14, 6, 0 }, + { 40, 24, -8, 14, 6, 0 }, { 41, 24, -8, 14, 6, 0 }, { 42, 24, -9, 14, 6, 0 }, { 43, 25, -9, 14, 6, 0 }, { 44, 25, -10, 14, 6, 0 }, + { 45, 25, -10, 14, 6, 0 }, { 46, 26, -11, 14, 6, 0 }, { 47, 26, -12, 14, 6, 0 }, { 48, 27, -12, 14, 6, 0 }, { 49, 27, -13, 14, 6, 0 }, + { 50, 28, -13, 14, 6, 0 }, { 51, 28, -14, 14, 6, 0 }, { 52, 29, -15, 14, 6, 0 }, { 53, 29, -15, 14, 6, 0 }, { 54, 30, -16, 14, 6, 0 }, + { 55, 30, -16, 14, 6, 0 }, { 56, 31, -17, 13, 6, 0 }, { 57, 31, -18, 13, 6, 0 }, { 58, 32, -18, 13, 6, 0 }, { 59, 32, -19, 13, 6, 0 }, + { 60, 33, -19, 13, 6, 0 }, { 61, 34, -20, 13, 6, 0 }, { 62, 34, -21, 13, 6, 0 }, { 63, 35, -21, 13, 6, 0 }, { 64, 36, -22, 13, 6, 0 }, + { 65, 36, -22, 13, 6, 0 }, { 66, 37, -23, 13, 6, 0 }, { 67, 38, -24, 13, 6, 0 }, { 68, 38, -24, 13, 6, 0 }, { 69, 39, -25, 13, 6, 0 }, + { 70, 40, -26, 13, 6, 0 }, { 71, 41, -26, 13, 6, 0 }, { 72, 41, -27, 13, 6, 0 }, { 73, 42, -28, 13, 6, 0 }, { 74, 43, -28, 12, 6, 0 }, + { 75, 44, -29, 12, 6, 0 }, { 76, 45, -30, 12, 6, 0 }, { 77, 46, -30, 12, 6, 0 }, { 78, 47, -31, 12, 6, 0 }, { 79, 47, -32, 12, 6, 0 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthToDiagDown253, { + { 16, 31, 15, 24, 6, 0 }, { 16, 30, 15, 24, 6, 0 }, { 16, 29, 14, 24, 6, 0 }, { 16, 28, 13, 24, 6, 0 }, { 16, 27, 13, 24, 6, 0 }, + { 16, 26, 12, 24, 6, 0 }, { 16, 25, 12, 24, 6, 0 }, { 16, 24, 11, 24, 6, 0 }, { 16, 23, 10, 24, 6, 0 }, { 17, 22, 10, 24, 6, 0 }, + { 17, 21, 9, 23, 6, 0 }, { 17, 20, 9, 23, 6, 0 }, { 17, 19, 8, 23, 6, 0 }, { 17, 18, 8, 23, 6, 0 }, { 17, 17, 7, 23, 6, 0 }, + { 17, 16, 6, 23, 6, 0 }, { 17, 15, 6, 23, 6, 0 }, { 18, 14, 5, 23, 6, 0 }, { 18, 13, 5, 23, 6, 0 }, { 18, 12, 4, 23, 6, 0 }, + { 18, 11, 3, 23, 6, 0 }, { 18, 10, 3, 23, 6, 0 }, { 19, 9, 2, 23, 6, 0 }, { 19, 8, 2, 23, 6, 0 }, { 19, 7, 1, 23, 6, 0 }, + { 19, 6, 1, 23, 6, 0 }, { 19, 5, 0, 23, 6, 0 }, { 20, 4, -1, 23, 6, 0 }, { 20, 3, -1, 23, 6, 0 }, { 20, 2, -2, 23, 6, 0 }, + { 21, 1, -2, 23, 6, 0 }, { 21, 0, -3, 23, 6, 0 }, { 21, -1, -3, 22, 6, 0 }, { 21, -2, -4, 22, 6, 0 }, { 22, -3, -5, 22, 6, 0 }, + { 22, -4, -5, 22, 6, 0 }, { 22, -5, -6, 22, 6, 0 }, { 23, -6, -6, 22, 6, 0 }, { 23, -7, -7, 22, 6, 0 }, { 24, -8, -8, 22, 6, 0 }, + { 24, -9, -8, 22, 6, 0 }, { 24, -10, -9, 22, 6, 0 }, { 25, -11, -9, 22, 6, 0 }, { 25, -12, -10, 22, 6, 0 }, { 25, -13, -10, 22, 6, 0 }, + { 26, -14, -11, 22, 6, 0 }, { 26, -15, -12, 22, 6, 0 }, { 27, -16, -12, 22, 6, 0 }, { 27, -17, -13, 22, 6, 0 }, { 28, -18, -13, 22, 6, 0 }, + { 28, -19, -14, 22, 6, 0 }, { 29, -20, -15, 22, 6, 0 }, { 29, -21, -15, 22, 6, 0 }, { 30, -22, -16, 22, 6, 0 }, { 30, -23, -16, 22, 6, 0 }, + { 31, -24, -17, 21, 6, 0 }, { 31, -25, -18, 21, 6, 0 }, { 32, -26, -18, 21, 6, 0 }, { 32, -27, -19, 21, 6, 0 }, { 33, -28, -19, 21, 6, 0 }, + { 34, -29, -20, 21, 6, 0 }, { 34, -30, -21, 21, 6, 0 }, { 35, -31, -21, 21, 6, 0 }, { 36, -32, -22, 21, 6, 0 }, { 36, -33, -22, 21, 6, 0 }, + { 37, -34, -23, 21, 6, 0 }, { 38, -35, -24, 21, 6, 0 }, { 38, -36, -24, 21, 6, 0 }, { 39, -37, -25, 21, 6, 0 }, { 40, -38, -26, 21, 6, 0 }, + { 41, -39, -26, 21, 6, 0 }, { 41, -40, -27, 21, 6, 0 }, { 42, -41, -28, 21, 6, 0 }, { 43, -42, -28, 20, 6, 0 }, { 44, -43, -29, 20, 6, 0 }, + { 45, -44, -30, 20, 6, 0 }, { 46, -45, -30, 20, 6, 0 }, { 47, -46, -31, 20, 6, 0 }, { 47, -47, -32, 20, 6, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthToDiagDown250, { + { 31, 16, 15, 0, 6, 0 }, { 30, 16, 15, 0, 6, 0 }, { 29, 16, 14, 0, 6, 0 }, { 28, 16, 13, 0, 6, 0 }, { 27, 16, 13, 0, 6, 0 }, + { 26, 16, 12, 0, 6, 0 }, { 25, 16, 12, 0, 6, 0 }, { 24, 16, 11, 0, 6, 0 }, { 23, 16, 10, 0, 6, 0 }, { 22, 17, 10, 0, 6, 0 }, + { 21, 17, 9, 1, 6, 0 }, { 20, 17, 9, 1, 6, 0 }, { 19, 17, 8, 1, 6, 0 }, { 18, 17, 8, 1, 6, 0 }, { 17, 17, 7, 1, 6, 0 }, + { 16, 17, 6, 1, 6, 0 }, { 15, 17, 6, 1, 6, 0 }, { 14, 18, 5, 1, 6, 0 }, { 13, 18, 5, 1, 6, 0 }, { 12, 18, 4, 1, 6, 0 }, + { 11, 18, 3, 1, 6, 0 }, { 10, 18, 3, 1, 6, 0 }, { 9, 19, 2, 1, 6, 0 }, { 8, 19, 2, 1, 6, 0 }, { 7, 19, 1, 1, 6, 0 }, + { 6, 19, 1, 1, 6, 0 }, { 5, 19, 0, 1, 6, 0 }, { 4, 20, -1, 1, 6, 0 }, { 3, 20, -1, 1, 6, 0 }, { 2, 20, -2, 1, 6, 0 }, + { 1, 21, -2, 1, 6, 0 }, { 0, 21, -3, 1, 6, 0 }, { -1, 21, -3, 2, 6, 0 }, { -2, 21, -4, 2, 6, 0 }, { -3, 22, -5, 2, 6, 0 }, + { -4, 22, -5, 2, 6, 0 }, { -5, 22, -6, 2, 6, 0 }, { -6, 23, -6, 2, 6, 0 }, { -7, 23, -7, 2, 6, 0 }, { -8, 24, -8, 2, 6, 0 }, + { -9, 24, -8, 2, 6, 0 }, { -10, 24, -9, 2, 6, 0 }, { -11, 25, -9, 2, 6, 0 }, { -12, 25, -10, 2, 6, 0 }, { -13, 25, -10, 2, 6, 0 }, + { -14, 26, -11, 2, 6, 0 }, { -15, 26, -12, 2, 6, 0 }, { -16, 27, -12, 2, 6, 0 }, { -17, 27, -13, 2, 6, 0 }, { -18, 28, -13, 2, 6, 0 }, + { -19, 28, -14, 2, 6, 0 }, { -20, 29, -15, 2, 6, 0 }, { -21, 29, -15, 2, 6, 0 }, { -22, 30, -16, 2, 6, 0 }, { -23, 30, -16, 2, 6, 0 }, + { -24, 31, -17, 3, 6, 0 }, { -25, 31, -18, 3, 6, 0 }, { -26, 32, -18, 3, 6, 0 }, { -27, 32, -19, 3, 6, 0 }, { -28, 33, -19, 3, 6, 0 }, + { -29, 34, -20, 3, 6, 0 }, { -30, 34, -21, 3, 6, 0 }, { -31, 35, -21, 3, 6, 0 }, { -32, 36, -22, 3, 6, 0 }, { -33, 36, -22, 3, 6, 0 }, + { -34, 37, -23, 3, 6, 0 }, { -35, 38, -24, 3, 6, 0 }, { -36, 38, -24, 3, 6, 0 }, { -37, 39, -25, 3, 6, 0 }, { -38, 40, -26, 3, 6, 0 }, + { -39, 41, -26, 3, 6, 0 }, { -40, 41, -27, 3, 6, 0 }, { -41, 42, -28, 3, 6, 0 }, { -42, 43, -28, 4, 6, 0 }, { -43, 44, -29, 4, 6, 0 }, + { -44, 45, -30, 4, 6, 0 }, { -45, 46, -30, 4, 6, 0 }, { -46, 47, -31, 4, 6, 0 }, { -47, 47, -32, 4, 6, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthToDiagDown251, { + { 16, 0, 16, 8, 6, 0 }, { 16, 1, 15, 8, 6, 0 }, { 16, 2, 15, 8, 6, 0 }, { 16, 3, 14, 8, 6, 0 }, { 16, 4, 13, 8, 6, 0 }, + { 16, 5, 13, 8, 6, 0 }, { 16, 6, 12, 8, 6, 0 }, { 16, 7, 12, 8, 6, 0 }, { 16, 8, 11, 8, 6, 0 }, { 16, 9, 10, 8, 6, 0 }, + { 17, 10, 10, 8, 6, 0 }, { 17, 11, 9, 9, 6, 0 }, { 17, 12, 9, 9, 6, 0 }, { 17, 13, 8, 9, 6, 0 }, { 17, 14, 8, 9, 6, 0 }, + { 17, 15, 7, 9, 6, 0 }, { 17, 16, 6, 9, 6, 0 }, { 17, 17, 6, 9, 6, 0 }, { 18, 18, 5, 9, 6, 0 }, { 18, 19, 5, 9, 6, 0 }, + { 18, 20, 4, 9, 6, 0 }, { 18, 21, 3, 9, 6, 0 }, { 18, 22, 3, 9, 6, 0 }, { 19, 23, 2, 9, 6, 0 }, { 19, 24, 2, 9, 6, 0 }, + { 19, 25, 1, 9, 6, 0 }, { 19, 26, 1, 9, 6, 0 }, { 19, 27, 0, 9, 6, 0 }, { 20, 28, -1, 9, 6, 0 }, { 20, 29, -1, 9, 6, 0 }, + { 20, 30, -2, 9, 6, 0 }, { 21, 31, -2, 9, 6, 0 }, { 21, 32, -3, 9, 6, 0 }, { 21, 33, -3, 10, 6, 0 }, { 21, 34, -4, 10, 6, 0 }, + { 22, 35, -5, 10, 6, 0 }, { 22, 36, -5, 10, 6, 0 }, { 22, 37, -6, 10, 6, 0 }, { 23, 38, -6, 10, 6, 0 }, { 23, 39, -7, 10, 6, 0 }, + { 24, 40, -8, 10, 6, 0 }, { 24, 41, -8, 10, 6, 0 }, { 24, 42, -9, 10, 6, 0 }, { 25, 43, -9, 10, 6, 0 }, { 25, 44, -10, 10, 6, 0 }, + { 25, 45, -10, 10, 6, 0 }, { 26, 46, -11, 10, 6, 0 }, { 26, 47, -12, 10, 6, 0 }, { 27, 48, -12, 10, 6, 0 }, { 27, 49, -13, 10, 6, 0 }, + { 28, 50, -13, 10, 6, 0 }, { 28, 51, -14, 10, 6, 0 }, { 29, 52, -15, 10, 6, 0 }, { 29, 53, -15, 10, 6, 0 }, { 30, 54, -16, 10, 6, 0 }, + { 30, 55, -16, 10, 6, 0 }, { 31, 56, -17, 11, 6, 0 }, { 31, 57, -18, 11, 6, 0 }, { 32, 58, -18, 11, 6, 0 }, { 32, 59, -19, 11, 6, 0 }, + { 33, 60, -19, 11, 6, 0 }, { 34, 61, -20, 11, 6, 0 }, { 34, 62, -21, 11, 6, 0 }, { 35, 63, -21, 11, 6, 0 }, { 36, 64, -22, 11, 6, 0 }, + { 36, 65, -22, 11, 6, 0 }, { 37, 66, -23, 11, 6, 0 }, { 38, 67, -24, 11, 6, 0 }, { 38, 68, -24, 11, 6, 0 }, { 39, 69, -25, 11, 6, 0 }, + { 40, 70, -26, 11, 6, 0 }, { 41, 71, -26, 11, 6, 0 }, { 41, 72, -27, 11, 6, 0 }, { 42, 73, -28, 11, 6, 0 }, { 43, 74, -28, 12, 6, 0 }, + { 44, 75, -29, 12, 6, 0 }, { 45, 76, -30, 12, 6, 0 }, { 46, 77, -30, 12, 6, 0 }, { 47, 78, -31, 12, 6, 0 }, { 47, 79, -32, 12, 6, 0 }, + { 48, 80, -32, 12, 6, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthToDiagDown252, { + { 0, 16, 16, 16, 6, 0 }, { 1, 16, 15, 16, 6, 0 }, { 2, 16, 15, 16, 6, 0 }, { 3, 16, 14, 16, 6, 0 }, { 4, 16, 13, 16, 6, 0 }, + { 5, 16, 13, 16, 6, 0 }, { 6, 16, 12, 16, 6, 0 }, { 7, 16, 12, 16, 6, 0 }, { 8, 16, 11, 16, 6, 0 }, { 9, 16, 10, 16, 6, 0 }, + { 10, 15, 10, 16, 6, 0 }, { 11, 15, 9, 17, 6, 0 }, { 12, 15, 9, 17, 6, 0 }, { 13, 15, 8, 17, 6, 0 }, { 14, 15, 8, 17, 6, 0 }, + { 15, 15, 7, 17, 6, 0 }, { 16, 15, 6, 17, 6, 0 }, { 17, 15, 6, 17, 6, 0 }, { 18, 14, 5, 17, 6, 0 }, { 19, 14, 5, 17, 6, 0 }, + { 20, 14, 4, 17, 6, 0 }, { 21, 14, 3, 17, 6, 0 }, { 22, 14, 3, 17, 6, 0 }, { 23, 13, 2, 17, 6, 0 }, { 24, 13, 2, 17, 6, 0 }, + { 25, 13, 1, 17, 6, 0 }, { 26, 13, 1, 17, 6, 0 }, { 27, 13, 0, 17, 6, 0 }, { 28, 12, -1, 17, 6, 0 }, { 29, 12, -1, 17, 6, 0 }, + { 30, 12, -2, 17, 6, 0 }, { 31, 11, -2, 17, 6, 0 }, { 32, 11, -3, 17, 6, 0 }, { 33, 11, -3, 18, 6, 0 }, { 34, 11, -4, 18, 6, 0 }, + { 35, 10, -5, 18, 6, 0 }, { 36, 10, -5, 18, 6, 0 }, { 37, 10, -6, 18, 6, 0 }, { 38, 9, -6, 18, 6, 0 }, { 39, 9, -7, 18, 6, 0 }, + { 40, 8, -8, 18, 6, 0 }, { 41, 8, -8, 18, 6, 0 }, { 42, 8, -9, 18, 6, 0 }, { 43, 7, -9, 18, 6, 0 }, { 44, 7, -10, 18, 6, 0 }, + { 45, 7, -10, 18, 6, 0 }, { 46, 6, -11, 18, 6, 0 }, { 47, 6, -12, 18, 6, 0 }, { 48, 5, -12, 18, 6, 0 }, { 49, 5, -13, 18, 6, 0 }, + { 50, 4, -13, 18, 6, 0 }, { 51, 4, -14, 18, 6, 0 }, { 52, 3, -15, 18, 6, 0 }, { 53, 3, -15, 18, 6, 0 }, { 54, 2, -16, 18, 6, 0 }, + { 55, 2, -16, 18, 6, 0 }, { 56, 1, -17, 19, 6, 0 }, { 57, 1, -18, 19, 6, 0 }, { 58, 0, -18, 19, 6, 0 }, { 59, 0, -19, 19, 6, 0 }, + { 60, -1, -19, 19, 6, 0 }, { 61, -2, -20, 19, 6, 0 }, { 62, -2, -21, 19, 6, 0 }, { 63, -3, -21, 19, 6, 0 }, { 64, -4, -22, 19, 6, 0 }, + { 65, -4, -22, 19, 6, 0 }, { 66, -5, -23, 19, 6, 0 }, { 67, -6, -24, 19, 6, 0 }, { 68, -6, -24, 19, 6, 0 }, { 69, -7, -25, 19, 6, 0 }, + { 70, -8, -26, 19, 6, 0 }, { 71, -9, -26, 19, 6, 0 }, { 72, -9, -27, 19, 6, 0 }, { 73, -10, -28, 19, 6, 0 }, { 74, -11, -28, 20, 6, 0 }, + { 75, -12, -29, 20, 6, 0 }, { 76, -13, -30, 20, 6, 0 }, { 77, -14, -30, 20, 6, 0 }, { 78, -15, -31, 20, 6, 0 }, { 79, -15, -32, 20, 6, 0 }, + { 80, -16, -32, 20, 6, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthToDiagDown253, { + { 16, 31, 15, 24, 6, 0 }, { 16, 30, 15, 24, 6, 0 }, { 16, 29, 14, 24, 6, 0 }, { 16, 28, 13, 24, 6, 0 }, { 16, 27, 13, 24, 6, 0 }, + { 16, 26, 12, 24, 6, 0 }, { 16, 25, 12, 24, 6, 0 }, { 16, 24, 11, 24, 6, 0 }, { 16, 23, 10, 24, 6, 0 }, { 15, 22, 10, 24, 6, 0 }, + { 15, 21, 9, 25, 6, 0 }, { 15, 20, 9, 25, 6, 0 }, { 15, 19, 8, 25, 6, 0 }, { 15, 18, 8, 25, 6, 0 }, { 15, 17, 7, 25, 6, 0 }, + { 15, 16, 6, 25, 6, 0 }, { 15, 15, 6, 25, 6, 0 }, { 14, 14, 5, 25, 6, 0 }, { 14, 13, 5, 25, 6, 0 }, { 14, 12, 4, 25, 6, 0 }, + { 14, 11, 3, 25, 6, 0 }, { 14, 10, 3, 25, 6, 0 }, { 13, 9, 2, 25, 6, 0 }, { 13, 8, 2, 25, 6, 0 }, { 13, 7, 1, 25, 6, 0 }, + { 13, 6, 1, 25, 6, 0 }, { 13, 5, 0, 25, 6, 0 }, { 12, 4, -1, 25, 6, 0 }, { 12, 3, -1, 25, 6, 0 }, { 12, 2, -2, 25, 6, 0 }, + { 11, 1, -2, 25, 6, 0 }, { 11, 0, -3, 25, 6, 0 }, { 11, -1, -3, 26, 6, 0 }, { 11, -2, -4, 26, 6, 0 }, { 10, -3, -5, 26, 6, 0 }, + { 10, -4, -5, 26, 6, 0 }, { 10, -5, -6, 26, 6, 0 }, { 9, -6, -6, 26, 6, 0 }, { 9, -7, -7, 26, 6, 0 }, { 8, -8, -8, 26, 6, 0 }, + { 8, -9, -8, 26, 6, 0 }, { 8, -10, -9, 26, 6, 0 }, { 7, -11, -9, 26, 6, 0 }, { 7, -12, -10, 26, 6, 0 }, { 7, -13, -10, 26, 6, 0 }, + { 6, -14, -11, 26, 6, 0 }, { 6, -15, -12, 26, 6, 0 }, { 5, -16, -12, 26, 6, 0 }, { 5, -17, -13, 26, 6, 0 }, { 4, -18, -13, 26, 6, 0 }, + { 4, -19, -14, 26, 6, 0 }, { 3, -20, -15, 26, 6, 0 }, { 3, -21, -15, 26, 6, 0 }, { 2, -22, -16, 26, 6, 0 }, { 2, -23, -16, 26, 6, 0 }, + { 1, -24, -17, 27, 6, 0 }, { 1, -25, -18, 27, 6, 0 }, { 0, -26, -18, 27, 6, 0 }, { 0, -27, -19, 27, 6, 0 }, { -1, -28, -19, 27, 6, 0 }, + { -2, -29, -20, 27, 6, 0 }, { -2, -30, -21, 27, 6, 0 }, { -3, -31, -21, 27, 6, 0 }, { -4, -32, -22, 27, 6, 0 }, { -4, -33, -22, 27, 6, 0 }, + { -5, -34, -23, 27, 6, 0 }, { -6, -35, -24, 27, 6, 0 }, { -6, -36, -24, 27, 6, 0 }, { -7, -37, -25, 27, 6, 0 }, { -8, -38, -26, 27, 6, 0 }, + { -9, -39, -26, 27, 6, 0 }, { -9, -40, -27, 27, 6, 0 }, { -10, -41, -28, 27, 6, 0 }, { -11, -42, -28, 28, 6, 0 }, { -12, -43, -29, 28, 6, 0 }, + { -13, -44, -30, 28, 6, 0 }, { -14, -45, -30, 28, 6, 0 }, { -15, -46, -31, 28, 6, 0 }, { -15, -47, -32, 28, 6, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthToOrthogonalUp250, { + { 15, 16, 1, 4, 2, 0 }, { 14, 17, 2, 4, 2, 0 }, { 13, 18, 2, 4, 2, 0 }, { 12, 19, 3, 4, 2, 0 }, { 11, 20, 4, 4, 2, 0 }, + { 10, 21, 4, 3, 2, 0 }, { 9, 22, 5, 3, 2, 0 }, { 8, 22, 6, 3, 2, 0 }, { 7, 23, 6, 3, 2, 0 }, { 6, 24, 7, 3, 2, 0 }, + { 5, 25, 8, 3, 2, 0 }, { 4, 25, 8, 3, 2, 0 }, { 3, 26, 9, 3, 2, 0 }, { 2, 27, 9, 3, 2, 0 }, { 1, 27, 10, 3, 2, 0 }, + { 0, 28, 11, 3, 2, 0 }, { -1, 29, 11, 3, 2, 0 }, { -2, 29, 12, 3, 2, 0 }, { -3, 30, 13, 3, 2, 0 }, { -4, 30, 13, 3, 2, 0 }, + { -5, 31, 14, 3, 2, 0 }, { -6, 32, 14, 3, 2, 0 }, { -7, 32, 15, 3, 2, 0 }, { -8, 33, 16, 2, 2, 0 }, { -9, 33, 16, 2, 2, 0 }, + { -10, 34, 17, 2, 2, 0 }, { -11, 34, 17, 2, 2, 0 }, { -12, 35, 18, 2, 2, 0 }, { -13, 35, 19, 2, 2, 0 }, { -14, 36, 19, 2, 2, 0 }, + { -15, 36, 20, 2, 2, 0 }, { -16, 37, 20, 2, 2, 0 }, { -17, 37, 21, 2, 2, 0 }, { -18, 37, 22, 2, 2, 0 }, { -19, 38, 22, 2, 2, 0 }, + { -20, 38, 23, 2, 2, 0 }, { -21, 39, 23, 2, 2, 0 }, { -22, 39, 24, 2, 2, 0 }, { -23, 39, 24, 2, 2, 0 }, { -24, 40, 25, 2, 2, 0 }, + { -25, 40, 26, 2, 2, 0 }, { -26, 41, 26, 2, 2, 0 }, { -27, 41, 27, 2, 2, 0 }, { -28, 41, 27, 2, 2, 0 }, { -29, 42, 28, 2, 2, 0 }, + { -30, 42, 29, 2, 2, 0 }, { -31, 42, 29, 1, 2, 0 }, { -32, 42, 30, 1, 2, 0 }, { -33, 43, 30, 1, 2, 0 }, { -34, 43, 31, 1, 2, 0 }, + { -35, 43, 31, 1, 2, 0 }, { -36, 44, 32, 1, 2, 0 }, { -37, 44, 33, 1, 2, 0 }, { -38, 44, 33, 1, 2, 0 }, { -39, 44, 34, 1, 2, 0 }, + { -40, 44, 34, 1, 2, 0 }, { -41, 45, 35, 1, 2, 0 }, { -42, 45, 35, 1, 2, 0 }, { -43, 45, 36, 1, 2, 0 }, { -44, 45, 37, 1, 2, 0 }, + { -45, 45, 37, 1, 2, 0 }, { -46, 46, 38, 1, 2, 0 }, { -47, 46, 38, 1, 2, 0 }, { -48, 46, 39, 1, 2, 0 }, { -49, 46, 39, 1, 2, 0 }, + { -50, 46, 40, 1, 2, 0 }, { -51, 46, 41, 1, 2, 0 }, { -52, 46, 41, 1, 2, 0 }, { -53, 46, 42, 0, 2, 0 }, { -54, 47, 42, 0, 2, 0 }, + { -55, 47, 43, 0, 2, 0 }, { -56, 47, 44, 0, 2, 0 }, { -57, 47, 44, 0, 2, 0 }, { -58, 47, 45, 0, 2, 0 }, { -59, 47, 45, 0, 2, 0 }, + { -60, 47, 46, 0, 2, 0 }, { -61, 47, 47, 0, 2, 0 }, { -62, 47, 47, 0, 2, 0 }, { -63, 47, 48, 0, 2, 0 }, { -64, 47, 48, 0, 2, 0 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthToOrthogonalUp251, { + { 16, 16, 0, 12, 2, 0 }, { 17, 17, 1, 12, 2, 0 }, { 18, 18, 2, 12, 2, 0 }, { 19, 19, 2, 12, 2, 0 }, { 20, 20, 3, 12, 2, 0 }, + { 21, 21, 4, 12, 2, 0 }, { 22, 22, 4, 11, 2, 0 }, { 23, 23, 5, 11, 2, 0 }, { 23, 24, 6, 11, 2, 0 }, { 24, 25, 6, 11, 2, 0 }, + { 25, 26, 7, 11, 2, 0 }, { 26, 27, 8, 11, 2, 0 }, { 26, 28, 8, 11, 2, 0 }, { 27, 29, 9, 11, 2, 0 }, { 28, 30, 9, 11, 2, 0 }, + { 28, 31, 10, 11, 2, 0 }, { 29, 32, 11, 11, 2, 0 }, { 30, 33, 11, 11, 2, 0 }, { 30, 34, 12, 11, 2, 0 }, { 31, 35, 13, 11, 2, 0 }, + { 31, 36, 13, 11, 2, 0 }, { 32, 37, 14, 11, 2, 0 }, { 33, 38, 14, 11, 2, 0 }, { 33, 39, 15, 11, 2, 0 }, { 34, 40, 16, 10, 2, 0 }, + { 34, 41, 16, 10, 2, 0 }, { 35, 42, 17, 10, 2, 0 }, { 35, 43, 17, 10, 2, 0 }, { 36, 44, 18, 10, 2, 0 }, { 36, 45, 19, 10, 2, 0 }, + { 37, 46, 19, 10, 2, 0 }, { 37, 47, 20, 10, 2, 0 }, { 38, 48, 20, 10, 2, 0 }, { 38, 49, 21, 10, 2, 0 }, { 38, 50, 22, 10, 2, 0 }, + { 39, 51, 22, 10, 2, 0 }, { 39, 52, 23, 10, 2, 0 }, { 40, 53, 23, 10, 2, 0 }, { 40, 54, 24, 10, 2, 0 }, { 40, 55, 24, 10, 2, 0 }, + { 41, 56, 25, 10, 2, 0 }, { 41, 57, 26, 10, 2, 0 }, { 42, 58, 26, 10, 2, 0 }, { 42, 59, 27, 10, 2, 0 }, { 42, 60, 27, 10, 2, 0 }, + { 43, 61, 28, 10, 2, 0 }, { 43, 62, 29, 10, 2, 0 }, { 43, 63, 29, 9, 2, 0 }, { 43, 64, 30, 9, 2, 0 }, { 44, 65, 30, 9, 2, 0 }, + { 44, 66, 31, 9, 2, 0 }, { 44, 67, 31, 9, 2, 0 }, { 45, 68, 32, 9, 2, 0 }, { 45, 69, 33, 9, 2, 0 }, { 45, 70, 33, 9, 2, 0 }, + { 45, 71, 34, 9, 2, 0 }, { 45, 72, 34, 9, 2, 0 }, { 46, 73, 35, 9, 2, 0 }, { 46, 74, 35, 9, 2, 0 }, { 46, 75, 36, 9, 2, 0 }, + { 46, 76, 37, 9, 2, 0 }, { 46, 77, 37, 9, 2, 0 }, { 47, 78, 38, 9, 2, 0 }, { 47, 79, 38, 9, 2, 0 }, { 47, 80, 39, 9, 2, 0 }, + { 47, 81, 39, 9, 2, 0 }, { 47, 82, 40, 9, 2, 0 }, { 47, 83, 41, 9, 2, 0 }, { 47, 84, 41, 9, 2, 0 }, { 47, 85, 42, 8, 2, 0 }, + { 48, 86, 42, 8, 2, 0 }, { 48, 87, 43, 8, 2, 0 }, { 48, 88, 44, 8, 2, 0 }, { 48, 89, 44, 8, 2, 0 }, { 48, 90, 45, 8, 2, 0 }, + { 48, 91, 45, 8, 2, 0 }, { 48, 92, 46, 8, 2, 0 }, { 48, 93, 47, 8, 2, 0 }, { 48, 94, 47, 8, 2, 0 }, { 48, 95, 48, 8, 2, 0 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthToOrthogonalUp252, { + { 16, 15, 0, 20, 2, 0 }, { 17, 14, 1, 20, 2, 0 }, { 18, 13, 2, 20, 2, 0 }, { 19, 12, 2, 20, 2, 0 }, { 20, 11, 3, 20, 2, 0 }, + { 21, 10, 4, 20, 2, 0 }, { 22, 9, 4, 19, 2, 0 }, { 23, 8, 5, 19, 2, 0 }, { 24, 8, 6, 19, 2, 0 }, { 25, 7, 6, 19, 2, 0 }, + { 26, 6, 7, 19, 2, 0 }, { 27, 5, 8, 19, 2, 0 }, { 28, 5, 8, 19, 2, 0 }, { 29, 4, 9, 19, 2, 0 }, { 30, 3, 9, 19, 2, 0 }, + { 31, 3, 10, 19, 2, 0 }, { 32, 2, 11, 19, 2, 0 }, { 33, 1, 11, 19, 2, 0 }, { 34, 1, 12, 19, 2, 0 }, { 35, 0, 13, 19, 2, 0 }, + { 36, 0, 13, 19, 2, 0 }, { 37, -1, 14, 19, 2, 0 }, { 38, -2, 14, 19, 2, 0 }, { 39, -2, 15, 19, 2, 0 }, { 40, -3, 16, 18, 2, 0 }, + { 41, -3, 16, 18, 2, 0 }, { 42, -4, 17, 18, 2, 0 }, { 43, -4, 17, 18, 2, 0 }, { 44, -5, 18, 18, 2, 0 }, { 45, -5, 19, 18, 2, 0 }, + { 46, -6, 19, 18, 2, 0 }, { 47, -6, 20, 18, 2, 0 }, { 48, -7, 20, 18, 2, 0 }, { 49, -7, 21, 18, 2, 0 }, { 50, -7, 22, 18, 2, 0 }, + { 51, -8, 22, 18, 2, 0 }, { 52, -8, 23, 18, 2, 0 }, { 53, -9, 23, 18, 2, 0 }, { 54, -9, 24, 18, 2, 0 }, { 55, -9, 24, 18, 2, 0 }, + { 56, -10, 25, 18, 2, 0 }, { 57, -10, 26, 18, 2, 0 }, { 58, -11, 26, 18, 2, 0 }, { 59, -11, 27, 18, 2, 0 }, { 60, -11, 27, 18, 2, 0 }, + { 61, -12, 28, 18, 2, 0 }, { 62, -12, 29, 18, 2, 0 }, { 63, -12, 29, 17, 2, 0 }, { 64, -12, 30, 17, 2, 0 }, { 65, -13, 30, 17, 2, 0 }, + { 66, -13, 31, 17, 2, 0 }, { 67, -13, 31, 17, 2, 0 }, { 68, -14, 32, 17, 2, 0 }, { 69, -14, 33, 17, 2, 0 }, { 70, -14, 33, 17, 2, 0 }, + { 71, -14, 34, 17, 2, 0 }, { 72, -14, 34, 17, 2, 0 }, { 73, -15, 35, 17, 2, 0 }, { 74, -15, 35, 17, 2, 0 }, { 75, -15, 36, 17, 2, 0 }, + { 76, -15, 37, 17, 2, 0 }, { 77, -15, 37, 17, 2, 0 }, { 78, -16, 38, 17, 2, 0 }, { 79, -16, 38, 17, 2, 0 }, { 80, -16, 39, 17, 2, 0 }, + { 81, -16, 39, 17, 2, 0 }, { 82, -16, 40, 17, 2, 0 }, { 83, -16, 41, 17, 2, 0 }, { 84, -16, 41, 17, 2, 0 }, { 85, -16, 42, 16, 2, 0 }, + { 86, -17, 42, 16, 2, 0 }, { 87, -17, 43, 16, 2, 0 }, { 88, -17, 44, 16, 2, 0 }, { 89, -17, 44, 16, 2, 0 }, { 90, -17, 45, 16, 2, 0 }, + { 91, -17, 45, 16, 2, 0 }, { 92, -17, 46, 16, 2, 0 }, { 93, -17, 47, 16, 2, 0 }, { 94, -17, 47, 16, 2, 0 }, { 95, -17, 48, 16, 2, 0 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthToOrthogonalUp253, { + { 15, 15, 1, 28, 2, 0 }, { 14, 14, 2, 28, 2, 0 }, { 13, 13, 2, 28, 2, 0 }, { 12, 12, 3, 28, 2, 0 }, { 11, 11, 4, 28, 2, 0 }, + { 10, 10, 4, 27, 2, 0 }, { 9, 9, 5, 27, 2, 0 }, { 9, 8, 6, 27, 2, 0 }, { 8, 7, 6, 27, 2, 0 }, { 7, 6, 7, 27, 2, 0 }, + { 6, 5, 8, 27, 2, 0 }, { 6, 4, 8, 27, 2, 0 }, { 5, 3, 9, 27, 2, 0 }, { 4, 2, 9, 27, 2, 0 }, { 4, 1, 10, 27, 2, 0 }, + { 3, 0, 11, 27, 2, 0 }, { 2, -1, 11, 27, 2, 0 }, { 2, -2, 12, 27, 2, 0 }, { 1, -3, 13, 27, 2, 0 }, { 1, -4, 13, 27, 2, 0 }, + { 0, -5, 14, 27, 2, 0 }, { -1, -6, 14, 27, 2, 0 }, { -1, -7, 15, 27, 2, 0 }, { -2, -8, 16, 26, 2, 0 }, { -2, -9, 16, 26, 2, 0 }, + { -3, -10, 17, 26, 2, 0 }, { -3, -11, 17, 26, 2, 0 }, { -4, -12, 18, 26, 2, 0 }, { -4, -13, 19, 26, 2, 0 }, { -5, -14, 19, 26, 2, 0 }, + { -5, -15, 20, 26, 2, 0 }, { -6, -16, 20, 26, 2, 0 }, { -6, -17, 21, 26, 2, 0 }, { -6, -18, 22, 26, 2, 0 }, { -7, -19, 22, 26, 2, 0 }, + { -7, -20, 23, 26, 2, 0 }, { -8, -21, 23, 26, 2, 0 }, { -8, -22, 24, 26, 2, 0 }, { -8, -23, 24, 26, 2, 0 }, { -9, -24, 25, 26, 2, 0 }, + { -9, -25, 26, 26, 2, 0 }, { -10, -26, 26, 26, 2, 0 }, { -10, -27, 27, 26, 2, 0 }, { -10, -28, 27, 26, 2, 0 }, { -11, -29, 28, 26, 2, 0 }, + { -11, -30, 29, 26, 2, 0 }, { -11, -31, 29, 25, 2, 0 }, { -11, -32, 30, 25, 2, 0 }, { -12, -33, 30, 25, 2, 0 }, { -12, -34, 31, 25, 2, 0 }, + { -12, -35, 31, 25, 2, 0 }, { -13, -36, 32, 25, 2, 0 }, { -13, -37, 33, 25, 2, 0 }, { -13, -38, 33, 25, 2, 0 }, { -13, -39, 34, 25, 2, 0 }, + { -13, -40, 34, 25, 2, 0 }, { -14, -41, 35, 25, 2, 0 }, { -14, -42, 35, 25, 2, 0 }, { -14, -43, 36, 25, 2, 0 }, { -14, -44, 37, 25, 2, 0 }, + { -14, -45, 37, 25, 2, 0 }, { -15, -46, 38, 25, 2, 0 }, { -15, -47, 38, 25, 2, 0 }, { -15, -48, 39, 25, 2, 0 }, { -15, -49, 39, 25, 2, 0 }, + { -15, -50, 40, 25, 2, 0 }, { -15, -51, 41, 25, 2, 0 }, { -15, -52, 41, 25, 2, 0 }, { -15, -53, 42, 24, 2, 0 }, { -16, -54, 42, 24, 2, 0 }, + { -16, -55, 43, 24, 2, 0 }, { -16, -56, 44, 24, 2, 0 }, { -16, -57, 44, 24, 2, 0 }, { -16, -58, 45, 24, 2, 0 }, { -16, -59, 45, 24, 2, 0 }, + { -16, -60, 46, 24, 2, 0 }, { -16, -61, 47, 24, 2, 0 }, { -16, -62, 47, 24, 2, 0 }, { -16, -63, 48, 24, 2, 0 }, { -16, -64, 48, 24, 2, 0 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthToOrthogonalUp250, { + { 15, 16, 1, 4, 2, 0 }, { 14, 17, 2, 4, 2, 0 }, { 13, 18, 2, 4, 2, 0 }, { 12, 19, 3, 4, 2, 0 }, { 11, 20, 4, 4, 2, 0 }, + { 10, 21, 4, 5, 2, 0 }, { 9, 22, 5, 5, 2, 0 }, { 9, 23, 6, 5, 2, 0 }, { 8, 24, 6, 5, 2, 0 }, { 7, 25, 7, 5, 2, 0 }, + { 6, 26, 8, 5, 2, 0 }, { 6, 27, 8, 5, 2, 0 }, { 5, 28, 9, 5, 2, 0 }, { 4, 29, 9, 5, 2, 0 }, { 4, 30, 10, 5, 2, 0 }, + { 3, 31, 11, 5, 2, 0 }, { 2, 32, 11, 5, 2, 0 }, { 2, 33, 12, 5, 2, 0 }, { 1, 34, 13, 5, 2, 0 }, { 1, 35, 13, 5, 2, 0 }, + { 0, 36, 14, 5, 2, 0 }, { -1, 37, 14, 5, 2, 0 }, { -1, 38, 15, 5, 2, 0 }, { -2, 39, 16, 6, 2, 0 }, { -2, 40, 16, 6, 2, 0 }, + { -3, 41, 17, 6, 2, 0 }, { -3, 42, 17, 6, 2, 0 }, { -4, 43, 18, 6, 2, 0 }, { -4, 44, 19, 6, 2, 0 }, { -5, 45, 19, 6, 2, 0 }, + { -5, 46, 20, 6, 2, 0 }, { -6, 47, 20, 6, 2, 0 }, { -6, 48, 21, 6, 2, 0 }, { -6, 49, 22, 6, 2, 0 }, { -7, 50, 22, 6, 2, 0 }, + { -7, 51, 23, 6, 2, 0 }, { -8, 52, 23, 6, 2, 0 }, { -8, 53, 24, 6, 2, 0 }, { -8, 54, 24, 6, 2, 0 }, { -9, 55, 25, 6, 2, 0 }, + { -9, 56, 26, 6, 2, 0 }, { -10, 57, 26, 6, 2, 0 }, { -10, 58, 27, 6, 2, 0 }, { -10, 59, 27, 6, 2, 0 }, { -11, 60, 28, 6, 2, 0 }, + { -11, 61, 29, 6, 2, 0 }, { -11, 62, 29, 7, 2, 0 }, { -11, 63, 30, 7, 2, 0 }, { -12, 64, 30, 7, 2, 0 }, { -12, 65, 31, 7, 2, 0 }, + { -12, 66, 31, 7, 2, 0 }, { -13, 67, 32, 7, 2, 0 }, { -13, 68, 33, 7, 2, 0 }, { -13, 69, 33, 7, 2, 0 }, { -13, 70, 34, 7, 2, 0 }, + { -13, 71, 34, 7, 2, 0 }, { -14, 72, 35, 7, 2, 0 }, { -14, 73, 35, 7, 2, 0 }, { -14, 74, 36, 7, 2, 0 }, { -14, 75, 37, 7, 2, 0 }, + { -14, 76, 37, 7, 2, 0 }, { -15, 77, 38, 7, 2, 0 }, { -15, 78, 38, 7, 2, 0 }, { -15, 79, 39, 7, 2, 0 }, { -15, 80, 39, 7, 2, 0 }, + { -15, 81, 40, 7, 2, 0 }, { -15, 82, 41, 7, 2, 0 }, { -15, 83, 41, 7, 2, 0 }, { -15, 84, 42, 8, 2, 0 }, { -16, 85, 42, 8, 2, 0 }, + { -16, 86, 43, 8, 2, 0 }, { -16, 87, 44, 8, 2, 0 }, { -16, 88, 44, 8, 2, 0 }, { -16, 89, 45, 8, 2, 0 }, { -16, 90, 45, 8, 2, 0 }, + { -16, 91, 46, 8, 2, 0 }, { -16, 92, 47, 8, 2, 0 }, { -16, 93, 47, 8, 2, 0 }, { -16, 94, 48, 8, 2, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthToOrthogonalUp251, { + { 16, 16, 0, 12, 2, 0 }, { 17, 17, 1, 12, 2, 0 }, { 18, 18, 2, 12, 2, 0 }, { 19, 19, 2, 12, 2, 0 }, { 20, 20, 3, 12, 2, 0 }, + { 21, 21, 4, 12, 2, 0 }, { 22, 22, 4, 13, 2, 0 }, { 23, 23, 5, 13, 2, 0 }, { 24, 23, 6, 13, 2, 0 }, { 25, 24, 6, 13, 2, 0 }, + { 26, 25, 7, 13, 2, 0 }, { 27, 26, 8, 13, 2, 0 }, { 28, 26, 8, 13, 2, 0 }, { 29, 27, 9, 13, 2, 0 }, { 30, 28, 9, 13, 2, 0 }, + { 31, 28, 10, 13, 2, 0 }, { 32, 29, 11, 13, 2, 0 }, { 33, 30, 11, 13, 2, 0 }, { 34, 30, 12, 13, 2, 0 }, { 35, 31, 13, 13, 2, 0 }, + { 36, 31, 13, 13, 2, 0 }, { 37, 32, 14, 13, 2, 0 }, { 38, 33, 14, 13, 2, 0 }, { 39, 33, 15, 13, 2, 0 }, { 40, 34, 16, 14, 2, 0 }, + { 41, 34, 16, 14, 2, 0 }, { 42, 35, 17, 14, 2, 0 }, { 43, 35, 17, 14, 2, 0 }, { 44, 36, 18, 14, 2, 0 }, { 45, 36, 19, 14, 2, 0 }, + { 46, 37, 19, 14, 2, 0 }, { 47, 37, 20, 14, 2, 0 }, { 48, 38, 20, 14, 2, 0 }, { 49, 38, 21, 14, 2, 0 }, { 50, 38, 22, 14, 2, 0 }, + { 51, 39, 22, 14, 2, 0 }, { 52, 39, 23, 14, 2, 0 }, { 53, 40, 23, 14, 2, 0 }, { 54, 40, 24, 14, 2, 0 }, { 55, 40, 24, 14, 2, 0 }, + { 56, 41, 25, 14, 2, 0 }, { 57, 41, 26, 14, 2, 0 }, { 58, 42, 26, 14, 2, 0 }, { 59, 42, 27, 14, 2, 0 }, { 60, 42, 27, 14, 2, 0 }, + { 61, 43, 28, 14, 2, 0 }, { 62, 43, 29, 14, 2, 0 }, { 63, 43, 29, 15, 2, 0 }, { 64, 43, 30, 15, 2, 0 }, { 65, 44, 30, 15, 2, 0 }, + { 66, 44, 31, 15, 2, 0 }, { 67, 44, 31, 15, 2, 0 }, { 68, 45, 32, 15, 2, 0 }, { 69, 45, 33, 15, 2, 0 }, { 70, 45, 33, 15, 2, 0 }, + { 71, 45, 34, 15, 2, 0 }, { 72, 45, 34, 15, 2, 0 }, { 73, 46, 35, 15, 2, 0 }, { 74, 46, 35, 15, 2, 0 }, { 75, 46, 36, 15, 2, 0 }, + { 76, 46, 37, 15, 2, 0 }, { 77, 46, 37, 15, 2, 0 }, { 78, 47, 38, 15, 2, 0 }, { 79, 47, 38, 15, 2, 0 }, { 80, 47, 39, 15, 2, 0 }, + { 81, 47, 39, 15, 2, 0 }, { 82, 47, 40, 15, 2, 0 }, { 83, 47, 41, 15, 2, 0 }, { 84, 47, 41, 15, 2, 0 }, { 85, 47, 42, 16, 2, 0 }, + { 86, 48, 42, 16, 2, 0 }, { 87, 48, 43, 16, 2, 0 }, { 88, 48, 44, 16, 2, 0 }, { 89, 48, 44, 16, 2, 0 }, { 90, 48, 45, 16, 2, 0 }, + { 91, 48, 45, 16, 2, 0 }, { 92, 48, 46, 16, 2, 0 }, { 93, 48, 47, 16, 2, 0 }, { 94, 48, 47, 16, 2, 0 }, { 95, 48, 48, 16, 2, 0 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthToOrthogonalUp252, { + { 16, 15, 0, 20, 2, 0 }, { 17, 14, 1, 20, 2, 0 }, { 18, 13, 2, 20, 2, 0 }, { 19, 12, 2, 20, 2, 0 }, { 20, 11, 3, 20, 2, 0 }, + { 21, 10, 4, 20, 2, 0 }, { 22, 9, 4, 21, 2, 0 }, { 23, 8, 5, 21, 2, 0 }, { 23, 7, 6, 21, 2, 0 }, { 24, 6, 6, 21, 2, 0 }, + { 25, 5, 7, 21, 2, 0 }, { 26, 4, 8, 21, 2, 0 }, { 26, 3, 8, 21, 2, 0 }, { 27, 2, 9, 21, 2, 0 }, { 28, 1, 9, 21, 2, 0 }, + { 28, 0, 10, 21, 2, 0 }, { 29, -1, 11, 21, 2, 0 }, { 30, -2, 11, 21, 2, 0 }, { 30, -3, 12, 21, 2, 0 }, { 31, -4, 13, 21, 2, 0 }, + { 31, -5, 13, 21, 2, 0 }, { 32, -6, 14, 21, 2, 0 }, { 33, -7, 14, 21, 2, 0 }, { 33, -8, 15, 21, 2, 0 }, { 34, -9, 16, 22, 2, 0 }, + { 34, -10, 16, 22, 2, 0 }, { 35, -11, 17, 22, 2, 0 }, { 35, -12, 17, 22, 2, 0 }, { 36, -13, 18, 22, 2, 0 }, { 36, -14, 19, 22, 2, 0 }, + { 37, -15, 19, 22, 2, 0 }, { 37, -16, 20, 22, 2, 0 }, { 38, -17, 20, 22, 2, 0 }, { 38, -18, 21, 22, 2, 0 }, { 38, -19, 22, 22, 2, 0 }, + { 39, -20, 22, 22, 2, 0 }, { 39, -21, 23, 22, 2, 0 }, { 40, -22, 23, 22, 2, 0 }, { 40, -23, 24, 22, 2, 0 }, { 40, -24, 24, 22, 2, 0 }, + { 41, -25, 25, 22, 2, 0 }, { 41, -26, 26, 22, 2, 0 }, { 42, -27, 26, 22, 2, 0 }, { 42, -28, 27, 22, 2, 0 }, { 42, -29, 27, 22, 2, 0 }, + { 43, -30, 28, 22, 2, 0 }, { 43, -31, 29, 22, 2, 0 }, { 43, -32, 29, 23, 2, 0 }, { 43, -33, 30, 23, 2, 0 }, { 44, -34, 30, 23, 2, 0 }, + { 44, -35, 31, 23, 2, 0 }, { 44, -36, 31, 23, 2, 0 }, { 45, -37, 32, 23, 2, 0 }, { 45, -38, 33, 23, 2, 0 }, { 45, -39, 33, 23, 2, 0 }, + { 45, -40, 34, 23, 2, 0 }, { 45, -41, 34, 23, 2, 0 }, { 46, -42, 35, 23, 2, 0 }, { 46, -43, 35, 23, 2, 0 }, { 46, -44, 36, 23, 2, 0 }, + { 46, -45, 37, 23, 2, 0 }, { 46, -46, 37, 23, 2, 0 }, { 47, -47, 38, 23, 2, 0 }, { 47, -48, 38, 23, 2, 0 }, { 47, -49, 39, 23, 2, 0 }, + { 47, -50, 39, 23, 2, 0 }, { 47, -51, 40, 23, 2, 0 }, { 47, -52, 41, 23, 2, 0 }, { 47, -53, 41, 23, 2, 0 }, { 47, -54, 42, 24, 2, 0 }, + { 48, -55, 42, 24, 2, 0 }, { 48, -56, 43, 24, 2, 0 }, { 48, -57, 44, 24, 2, 0 }, { 48, -58, 44, 24, 2, 0 }, { 48, -59, 45, 24, 2, 0 }, + { 48, -60, 45, 24, 2, 0 }, { 48, -61, 46, 24, 2, 0 }, { 48, -62, 47, 24, 2, 0 }, { 48, -63, 47, 24, 2, 0 }, { 48, -64, 48, 24, 2, 0 }, + { 48, -65, 48, 24, 2, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthToOrthogonalUp253, { + { 15, 15, 1, 28, 2, 0 }, { 14, 14, 2, 28, 2, 0 }, { 13, 13, 2, 28, 2, 0 }, { 12, 12, 3, 28, 2, 0 }, { 11, 11, 4, 28, 2, 0 }, + { 10, 10, 4, 29, 2, 0 }, { 9, 9, 5, 29, 2, 0 }, { 8, 9, 6, 29, 2, 0 }, { 7, 8, 6, 29, 2, 0 }, { 6, 7, 7, 29, 2, 0 }, + { 5, 6, 8, 29, 2, 0 }, { 4, 6, 8, 29, 2, 0 }, { 3, 5, 9, 29, 2, 0 }, { 2, 4, 9, 29, 2, 0 }, { 1, 4, 10, 29, 2, 0 }, + { 0, 3, 11, 29, 2, 0 }, { -1, 2, 11, 29, 2, 0 }, { -2, 2, 12, 29, 2, 0 }, { -3, 1, 13, 29, 2, 0 }, { -4, 1, 13, 29, 2, 0 }, + { -5, 0, 14, 29, 2, 0 }, { -6, -1, 14, 29, 2, 0 }, { -7, -1, 15, 29, 2, 0 }, { -8, -2, 16, 30, 2, 0 }, { -9, -2, 16, 30, 2, 0 }, + { -10, -3, 17, 30, 2, 0 }, { -11, -3, 17, 30, 2, 0 }, { -12, -4, 18, 30, 2, 0 }, { -13, -4, 19, 30, 2, 0 }, { -14, -5, 19, 30, 2, 0 }, + { -15, -5, 20, 30, 2, 0 }, { -16, -6, 20, 30, 2, 0 }, { -17, -6, 21, 30, 2, 0 }, { -18, -6, 22, 30, 2, 0 }, { -19, -7, 22, 30, 2, 0 }, + { -20, -7, 23, 30, 2, 0 }, { -21, -8, 23, 30, 2, 0 }, { -22, -8, 24, 30, 2, 0 }, { -23, -8, 24, 30, 2, 0 }, { -24, -9, 25, 30, 2, 0 }, + { -25, -9, 26, 30, 2, 0 }, { -26, -10, 26, 30, 2, 0 }, { -27, -10, 27, 30, 2, 0 }, { -28, -10, 27, 30, 2, 0 }, { -29, -11, 28, 30, 2, 0 }, + { -30, -11, 29, 30, 2, 0 }, { -31, -11, 29, 31, 2, 0 }, { -32, -11, 30, 31, 2, 0 }, { -33, -12, 30, 31, 2, 0 }, { -34, -12, 31, 31, 2, 0 }, + { -35, -12, 31, 31, 2, 0 }, { -36, -13, 32, 31, 2, 0 }, { -37, -13, 33, 31, 2, 0 }, { -38, -13, 33, 31, 2, 0 }, { -39, -13, 34, 31, 2, 0 }, + { -40, -13, 34, 31, 2, 0 }, { -41, -14, 35, 31, 2, 0 }, { -42, -14, 35, 31, 2, 0 }, { -43, -14, 36, 31, 2, 0 }, { -44, -14, 37, 31, 2, 0 }, + { -45, -14, 37, 31, 2, 0 }, { -46, -15, 38, 31, 2, 0 }, { -47, -15, 38, 31, 2, 0 }, { -48, -15, 39, 31, 2, 0 }, { -49, -15, 39, 31, 2, 0 }, + { -50, -15, 40, 31, 2, 0 }, { -51, -15, 41, 31, 2, 0 }, { -52, -15, 41, 31, 2, 0 }, { -53, -15, 42, 0, 2, 0 }, { -54, -16, 42, 0, 2, 0 }, + { -55, -16, 43, 0, 2, 0 }, { -56, -16, 44, 0, 2, 0 }, { -57, -16, 44, 0, 2, 0 }, { -58, -16, 45, 0, 2, 0 }, { -59, -16, 45, 0, 2, 0 }, + { -60, -16, 46, 0, 2, 0 }, { -61, -16, 47, 0, 2, 0 }, { -62, -16, 47, 0, 2, 0 }, { -63, -16, 48, 0, 2, 0 }, { -64, -16, 48, 0, 2, 0 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthToOrthogonalDown250, { + { 15, 16, 15, 4, 6, 0 }, { 14, 17, 14, 4, 6, 0 }, { 13, 18, 14, 4, 6, 0 }, { 12, 19, 13, 4, 6, 0 }, { 11, 20, 12, 4, 6, 0 }, + { 10, 21, 12, 3, 6, 0 }, { 9, 22, 11, 3, 6, 0 }, { 8, 22, 10, 3, 6, 0 }, { 7, 23, 10, 3, 6, 0 }, { 6, 24, 9, 3, 6, 0 }, + { 5, 25, 8, 3, 6, 0 }, { 4, 25, 8, 3, 6, 0 }, { 3, 26, 7, 3, 6, 0 }, { 2, 27, 7, 3, 6, 0 }, { 1, 27, 6, 3, 6, 0 }, + { 0, 28, 5, 3, 6, 0 }, { -1, 29, 5, 3, 6, 0 }, { -2, 29, 4, 3, 6, 0 }, { -3, 30, 3, 3, 6, 0 }, { -4, 30, 3, 3, 6, 0 }, + { -5, 31, 2, 3, 6, 0 }, { -6, 32, 2, 3, 6, 0 }, { -7, 32, 1, 3, 6, 0 }, { -8, 33, 0, 2, 6, 0 }, { -9, 33, 0, 2, 6, 0 }, + { -10, 34, -1, 2, 6, 0 }, { -11, 34, -1, 2, 6, 0 }, { -12, 35, -2, 2, 6, 0 }, { -13, 35, -3, 2, 6, 0 }, { -14, 36, -3, 2, 6, 0 }, + { -15, 36, -4, 2, 6, 0 }, { -16, 37, -4, 2, 6, 0 }, { -17, 37, -5, 2, 6, 0 }, { -18, 37, -6, 2, 6, 0 }, { -19, 38, -6, 2, 6, 0 }, + { -20, 38, -7, 2, 6, 0 }, { -21, 39, -7, 2, 6, 0 }, { -22, 39, -8, 2, 6, 0 }, { -23, 39, -8, 2, 6, 0 }, { -24, 40, -9, 2, 6, 0 }, + { -25, 40, -10, 2, 6, 0 }, { -26, 41, -10, 2, 6, 0 }, { -27, 41, -11, 2, 6, 0 }, { -28, 41, -11, 2, 6, 0 }, { -29, 42, -12, 2, 6, 0 }, + { -30, 42, -13, 2, 6, 0 }, { -31, 42, -13, 1, 6, 0 }, { -32, 42, -14, 1, 6, 0 }, { -33, 43, -14, 1, 6, 0 }, { -34, 43, -15, 1, 6, 0 }, + { -35, 43, -15, 1, 6, 0 }, { -36, 44, -16, 1, 6, 0 }, { -37, 44, -17, 1, 6, 0 }, { -38, 44, -17, 1, 6, 0 }, { -39, 44, -18, 1, 6, 0 }, + { -40, 44, -18, 1, 6, 0 }, { -41, 45, -19, 1, 6, 0 }, { -42, 45, -19, 1, 6, 0 }, { -43, 45, -20, 1, 6, 0 }, { -44, 45, -21, 1, 6, 0 }, + { -45, 45, -21, 1, 6, 0 }, { -46, 46, -22, 1, 6, 0 }, { -47, 46, -22, 1, 6, 0 }, { -48, 46, -23, 1, 6, 0 }, { -49, 46, -23, 1, 6, 0 }, + { -50, 46, -24, 1, 6, 0 }, { -51, 46, -25, 1, 6, 0 }, { -52, 46, -25, 1, 6, 0 }, { -53, 46, -26, 0, 6, 0 }, { -54, 47, -26, 0, 6, 0 }, + { -55, 47, -27, 0, 6, 0 }, { -56, 47, -28, 0, 6, 0 }, { -57, 47, -28, 0, 6, 0 }, { -58, 47, -29, 0, 6, 0 }, { -59, 47, -29, 0, 6, 0 }, + { -60, 47, -30, 0, 6, 0 }, { -61, 47, -31, 0, 6, 0 }, { -62, 47, -31, 0, 6, 0 }, { -63, 47, -32, 0, 6, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthToOrthogonalDown251, { + { 16, 16, 16, 12, 6, 0 }, { 17, 17, 15, 12, 6, 0 }, { 18, 18, 14, 12, 6, 0 }, { 19, 19, 14, 12, 6, 0 }, { 20, 20, 13, 12, 6, 0 }, + { 21, 21, 12, 12, 6, 0 }, { 22, 22, 12, 11, 6, 0 }, { 23, 23, 11, 11, 6, 0 }, { 23, 24, 10, 11, 6, 0 }, { 24, 25, 10, 11, 6, 0 }, + { 25, 26, 9, 11, 6, 0 }, { 26, 27, 8, 11, 6, 0 }, { 26, 28, 8, 11, 6, 0 }, { 27, 29, 7, 11, 6, 0 }, { 28, 30, 7, 11, 6, 0 }, + { 28, 31, 6, 11, 6, 0 }, { 29, 32, 5, 11, 6, 0 }, { 30, 33, 5, 11, 6, 0 }, { 30, 34, 4, 11, 6, 0 }, { 31, 35, 3, 11, 6, 0 }, + { 31, 36, 3, 11, 6, 0 }, { 32, 37, 2, 11, 6, 0 }, { 33, 38, 2, 11, 6, 0 }, { 33, 39, 1, 11, 6, 0 }, { 34, 40, 0, 10, 6, 0 }, + { 34, 41, 0, 10, 6, 0 }, { 35, 42, -1, 10, 6, 0 }, { 35, 43, -1, 10, 6, 0 }, { 36, 44, -2, 10, 6, 0 }, { 36, 45, -3, 10, 6, 0 }, + { 37, 46, -3, 10, 6, 0 }, { 37, 47, -4, 10, 6, 0 }, { 38, 48, -4, 10, 6, 0 }, { 38, 49, -5, 10, 6, 0 }, { 38, 50, -6, 10, 6, 0 }, + { 39, 51, -6, 10, 6, 0 }, { 39, 52, -7, 10, 6, 0 }, { 40, 53, -7, 10, 6, 0 }, { 40, 54, -8, 10, 6, 0 }, { 40, 55, -8, 10, 6, 0 }, + { 41, 56, -9, 10, 6, 0 }, { 41, 57, -10, 10, 6, 0 }, { 42, 58, -10, 10, 6, 0 }, { 42, 59, -11, 10, 6, 0 }, { 42, 60, -11, 10, 6, 0 }, + { 43, 61, -12, 10, 6, 0 }, { 43, 62, -13, 10, 6, 0 }, { 43, 63, -13, 9, 6, 0 }, { 43, 64, -14, 9, 6, 0 }, { 44, 65, -14, 9, 6, 0 }, + { 44, 66, -15, 9, 6, 0 }, { 44, 67, -15, 9, 6, 0 }, { 45, 68, -16, 9, 6, 0 }, { 45, 69, -17, 9, 6, 0 }, { 45, 70, -17, 9, 6, 0 }, + { 45, 71, -18, 9, 6, 0 }, { 45, 72, -18, 9, 6, 0 }, { 46, 73, -19, 9, 6, 0 }, { 46, 74, -19, 9, 6, 0 }, { 46, 75, -20, 9, 6, 0 }, + { 46, 76, -21, 9, 6, 0 }, { 46, 77, -21, 9, 6, 0 }, { 47, 78, -22, 9, 6, 0 }, { 47, 79, -22, 9, 6, 0 }, { 47, 80, -23, 9, 6, 0 }, + { 47, 81, -23, 9, 6, 0 }, { 47, 82, -24, 9, 6, 0 }, { 47, 83, -25, 9, 6, 0 }, { 47, 84, -25, 9, 6, 0 }, { 47, 85, -26, 8, 6, 0 }, + { 48, 86, -26, 8, 6, 0 }, { 48, 87, -27, 8, 6, 0 }, { 48, 88, -28, 8, 6, 0 }, { 48, 89, -28, 8, 6, 0 }, { 48, 90, -29, 8, 6, 0 }, + { 48, 91, -29, 8, 6, 0 }, { 48, 92, -30, 8, 6, 0 }, { 48, 93, -31, 8, 6, 0 }, { 48, 94, -31, 8, 6, 0 }, { 48, 95, -32, 8, 6, 0 }, + { 48, 96, -32, 8, 6, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthToOrthogonalDown252, { + { 16, 15, 16, 20, 6, 0 }, { 17, 14, 15, 20, 6, 0 }, { 18, 13, 14, 20, 6, 0 }, { 19, 12, 14, 20, 6, 0 }, { 20, 11, 13, 20, 6, 0 }, + { 21, 10, 12, 20, 6, 0 }, { 22, 9, 12, 19, 6, 0 }, { 23, 8, 11, 19, 6, 0 }, { 24, 8, 10, 19, 6, 0 }, { 25, 7, 10, 19, 6, 0 }, + { 26, 6, 9, 19, 6, 0 }, { 27, 5, 8, 19, 6, 0 }, { 28, 5, 8, 19, 6, 0 }, { 29, 4, 7, 19, 6, 0 }, { 30, 3, 7, 19, 6, 0 }, + { 31, 3, 6, 19, 6, 0 }, { 32, 2, 5, 19, 6, 0 }, { 33, 1, 5, 19, 6, 0 }, { 34, 1, 4, 19, 6, 0 }, { 35, 0, 3, 19, 6, 0 }, + { 36, 0, 3, 19, 6, 0 }, { 37, -1, 2, 19, 6, 0 }, { 38, -2, 2, 19, 6, 0 }, { 39, -2, 1, 19, 6, 0 }, { 40, -3, 0, 18, 6, 0 }, + { 41, -3, 0, 18, 6, 0 }, { 42, -4, -1, 18, 6, 0 }, { 43, -4, -1, 18, 6, 0 }, { 44, -5, -2, 18, 6, 0 }, { 45, -5, -3, 18, 6, 0 }, + { 46, -6, -3, 18, 6, 0 }, { 47, -6, -4, 18, 6, 0 }, { 48, -7, -4, 18, 6, 0 }, { 49, -7, -5, 18, 6, 0 }, { 50, -7, -6, 18, 6, 0 }, + { 51, -8, -6, 18, 6, 0 }, { 52, -8, -7, 18, 6, 0 }, { 53, -9, -7, 18, 6, 0 }, { 54, -9, -8, 18, 6, 0 }, { 55, -9, -8, 18, 6, 0 }, + { 56, -10, -9, 18, 6, 0 }, { 57, -10, -10, 18, 6, 0 }, { 58, -11, -10, 18, 6, 0 }, { 59, -11, -11, 18, 6, 0 }, { 60, -11, -11, 18, 6, 0 }, + { 61, -12, -12, 18, 6, 0 }, { 62, -12, -13, 18, 6, 0 }, { 63, -12, -13, 17, 6, 0 }, { 64, -12, -14, 17, 6, 0 }, { 65, -13, -14, 17, 6, 0 }, + { 66, -13, -15, 17, 6, 0 }, { 67, -13, -15, 17, 6, 0 }, { 68, -14, -16, 17, 6, 0 }, { 69, -14, -17, 17, 6, 0 }, { 70, -14, -17, 17, 6, 0 }, + { 71, -14, -18, 17, 6, 0 }, { 72, -14, -18, 17, 6, 0 }, { 73, -15, -19, 17, 6, 0 }, { 74, -15, -19, 17, 6, 0 }, { 75, -15, -20, 17, 6, 0 }, + { 76, -15, -21, 17, 6, 0 }, { 77, -15, -21, 17, 6, 0 }, { 78, -16, -22, 17, 6, 0 }, { 79, -16, -22, 17, 6, 0 }, { 80, -16, -23, 17, 6, 0 }, + { 81, -16, -23, 17, 6, 0 }, { 82, -16, -24, 17, 6, 0 }, { 83, -16, -25, 17, 6, 0 }, { 84, -16, -25, 17, 6, 0 }, { 85, -16, -26, 16, 6, 0 }, + { 86, -17, -26, 16, 6, 0 }, { 87, -17, -27, 16, 6, 0 }, { 88, -17, -28, 16, 6, 0 }, { 89, -17, -28, 16, 6, 0 }, { 90, -17, -29, 16, 6, 0 }, + { 91, -17, -29, 16, 6, 0 }, { 92, -17, -30, 16, 6, 0 }, { 93, -17, -31, 16, 6, 0 }, { 94, -17, -31, 16, 6, 0 }, { 95, -17, -32, 16, 6, 0 }, + { 96, -17, -32, 16, 6, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthToOrthogonalDown253, { + { 15, 15, 15, 28, 6, 0 }, { 14, 14, 14, 28, 6, 0 }, { 13, 13, 14, 28, 6, 0 }, { 12, 12, 13, 28, 6, 0 }, { 11, 11, 12, 28, 6, 0 }, + { 10, 10, 12, 27, 6, 0 }, { 9, 9, 11, 27, 6, 0 }, { 9, 8, 10, 27, 6, 0 }, { 8, 7, 10, 27, 6, 0 }, { 7, 6, 9, 27, 6, 0 }, + { 6, 5, 8, 27, 6, 0 }, { 6, 4, 8, 27, 6, 0 }, { 5, 3, 7, 27, 6, 0 }, { 4, 2, 7, 27, 6, 0 }, { 4, 1, 6, 27, 6, 0 }, + { 3, 0, 5, 27, 6, 0 }, { 2, -1, 5, 27, 6, 0 }, { 2, -2, 4, 27, 6, 0 }, { 1, -3, 3, 27, 6, 0 }, { 1, -4, 3, 27, 6, 0 }, + { 0, -5, 2, 27, 6, 0 }, { -1, -6, 2, 27, 6, 0 }, { -1, -7, 1, 27, 6, 0 }, { -2, -8, 0, 26, 6, 0 }, { -2, -9, 0, 26, 6, 0 }, + { -3, -10, -1, 26, 6, 0 }, { -3, -11, -1, 26, 6, 0 }, { -4, -12, -2, 26, 6, 0 }, { -4, -13, -3, 26, 6, 0 }, { -5, -14, -3, 26, 6, 0 }, + { -5, -15, -4, 26, 6, 0 }, { -6, -16, -4, 26, 6, 0 }, { -6, -17, -5, 26, 6, 0 }, { -6, -18, -6, 26, 6, 0 }, { -7, -19, -6, 26, 6, 0 }, + { -7, -20, -7, 26, 6, 0 }, { -8, -21, -7, 26, 6, 0 }, { -8, -22, -8, 26, 6, 0 }, { -8, -23, -8, 26, 6, 0 }, { -9, -24, -9, 26, 6, 0 }, + { -9, -25, -10, 26, 6, 0 }, { -10, -26, -10, 26, 6, 0 }, { -10, -27, -11, 26, 6, 0 }, { -10, -28, -11, 26, 6, 0 }, { -11, -29, -12, 26, 6, 0 }, + { -11, -30, -13, 26, 6, 0 }, { -11, -31, -13, 25, 6, 0 }, { -11, -32, -14, 25, 6, 0 }, { -12, -33, -14, 25, 6, 0 }, { -12, -34, -15, 25, 6, 0 }, + { -12, -35, -15, 25, 6, 0 }, { -13, -36, -16, 25, 6, 0 }, { -13, -37, -17, 25, 6, 0 }, { -13, -38, -17, 25, 6, 0 }, { -13, -39, -18, 25, 6, 0 }, + { -13, -40, -18, 25, 6, 0 }, { -14, -41, -19, 25, 6, 0 }, { -14, -42, -19, 25, 6, 0 }, { -14, -43, -20, 25, 6, 0 }, { -14, -44, -21, 25, 6, 0 }, + { -14, -45, -21, 25, 6, 0 }, { -15, -46, -22, 25, 6, 0 }, { -15, -47, -22, 25, 6, 0 }, { -15, -48, -23, 25, 6, 0 }, { -15, -49, -23, 25, 6, 0 }, + { -15, -50, -24, 25, 6, 0 }, { -15, -51, -25, 25, 6, 0 }, { -15, -52, -25, 25, 6, 0 }, { -15, -53, -26, 24, 6, 0 }, { -16, -54, -26, 24, 6, 0 }, + { -16, -55, -27, 24, 6, 0 }, { -16, -56, -28, 24, 6, 0 }, { -16, -57, -28, 24, 6, 0 }, { -16, -58, -29, 24, 6, 0 }, { -16, -59, -29, 24, 6, 0 }, + { -16, -60, -30, 24, 6, 0 }, { -16, -61, -31, 24, 6, 0 }, { -16, -62, -31, 24, 6, 0 }, { -16, -63, -32, 24, 6, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthToOrthogonalDown250, { + { 15, 16, 15, 4, 6, 0 }, { 14, 17, 14, 4, 6, 0 }, { 13, 18, 14, 4, 6, 0 }, { 12, 19, 13, 4, 6, 0 }, { 11, 20, 12, 4, 6, 0 }, + { 10, 21, 12, 5, 6, 0 }, { 9, 22, 11, 5, 6, 0 }, { 9, 23, 10, 5, 6, 0 }, { 8, 24, 10, 5, 6, 0 }, { 7, 25, 9, 5, 6, 0 }, + { 6, 26, 8, 5, 6, 0 }, { 6, 27, 8, 5, 6, 0 }, { 5, 28, 7, 5, 6, 0 }, { 4, 29, 7, 5, 6, 0 }, { 4, 30, 6, 5, 6, 0 }, + { 3, 31, 5, 5, 6, 0 }, { 2, 32, 5, 5, 6, 0 }, { 2, 33, 4, 5, 6, 0 }, { 1, 34, 3, 5, 6, 0 }, { 1, 35, 3, 5, 6, 0 }, + { 0, 36, 2, 5, 6, 0 }, { -1, 37, 2, 5, 6, 0 }, { -1, 38, 1, 5, 6, 0 }, { -2, 39, 0, 6, 6, 0 }, { -2, 40, 0, 6, 6, 0 }, + { -3, 41, -1, 6, 6, 0 }, { -3, 42, -1, 6, 6, 0 }, { -4, 43, -2, 6, 6, 0 }, { -4, 44, -3, 6, 6, 0 }, { -5, 45, -3, 6, 6, 0 }, + { -5, 46, -4, 6, 6, 0 }, { -6, 47, -4, 6, 6, 0 }, { -6, 48, -5, 6, 6, 0 }, { -6, 49, -6, 6, 6, 0 }, { -7, 50, -6, 6, 6, 0 }, + { -7, 51, -7, 6, 6, 0 }, { -8, 52, -7, 6, 6, 0 }, { -8, 53, -8, 6, 6, 0 }, { -8, 54, -8, 6, 6, 0 }, { -9, 55, -9, 6, 6, 0 }, + { -9, 56, -10, 6, 6, 0 }, { -10, 57, -10, 6, 6, 0 }, { -10, 58, -11, 6, 6, 0 }, { -10, 59, -11, 6, 6, 0 }, { -11, 60, -12, 6, 6, 0 }, + { -11, 61, -13, 6, 6, 0 }, { -11, 62, -13, 7, 6, 0 }, { -11, 63, -14, 7, 6, 0 }, { -12, 64, -14, 7, 6, 0 }, { -12, 65, -15, 7, 6, 0 }, + { -12, 66, -15, 7, 6, 0 }, { -13, 67, -16, 7, 6, 0 }, { -13, 68, -17, 7, 6, 0 }, { -13, 69, -17, 7, 6, 0 }, { -13, 70, -18, 7, 6, 0 }, + { -13, 71, -18, 7, 6, 0 }, { -14, 72, -19, 7, 6, 0 }, { -14, 73, -19, 7, 6, 0 }, { -14, 74, -20, 7, 6, 0 }, { -14, 75, -21, 7, 6, 0 }, + { -14, 76, -21, 7, 6, 0 }, { -15, 77, -22, 7, 6, 0 }, { -15, 78, -22, 7, 6, 0 }, { -15, 79, -23, 7, 6, 0 }, { -15, 80, -23, 7, 6, 0 }, + { -15, 81, -24, 7, 6, 0 }, { -15, 82, -25, 7, 6, 0 }, { -15, 83, -25, 7, 6, 0 }, { -15, 84, -26, 8, 6, 0 }, { -16, 85, -26, 8, 6, 0 }, + { -16, 86, -27, 8, 6, 0 }, { -16, 87, -28, 8, 6, 0 }, { -16, 88, -28, 8, 6, 0 }, { -16, 89, -29, 8, 6, 0 }, { -16, 90, -29, 8, 6, 0 }, + { -16, 91, -30, 8, 6, 0 }, { -16, 92, -31, 8, 6, 0 }, { -16, 93, -31, 8, 6, 0 }, { -16, 94, -32, 8, 6, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthToOrthogonalDown251, { + { 16, 16, 16, 12, 6, 0 }, { 17, 17, 15, 12, 6, 0 }, { 18, 18, 14, 12, 6, 0 }, { 19, 19, 14, 12, 6, 0 }, { 20, 20, 13, 12, 6, 0 }, + { 21, 21, 12, 12, 6, 0 }, { 22, 22, 12, 13, 6, 0 }, { 23, 23, 11, 13, 6, 0 }, { 24, 23, 10, 13, 6, 0 }, { 25, 24, 10, 13, 6, 0 }, + { 26, 25, 9, 13, 6, 0 }, { 27, 26, 8, 13, 6, 0 }, { 28, 26, 8, 13, 6, 0 }, { 29, 27, 7, 13, 6, 0 }, { 30, 28, 7, 13, 6, 0 }, + { 31, 28, 6, 13, 6, 0 }, { 32, 29, 5, 13, 6, 0 }, { 33, 30, 5, 13, 6, 0 }, { 34, 30, 4, 13, 6, 0 }, { 35, 31, 3, 13, 6, 0 }, + { 36, 31, 3, 13, 6, 0 }, { 37, 32, 2, 13, 6, 0 }, { 38, 33, 2, 13, 6, 0 }, { 39, 33, 1, 13, 6, 0 }, { 40, 34, 0, 14, 6, 0 }, + { 41, 34, 0, 14, 6, 0 }, { 42, 35, -1, 14, 6, 0 }, { 43, 35, -1, 14, 6, 0 }, { 44, 36, -2, 14, 6, 0 }, { 45, 36, -3, 14, 6, 0 }, + { 46, 37, -3, 14, 6, 0 }, { 47, 37, -4, 14, 6, 0 }, { 48, 38, -4, 14, 6, 0 }, { 49, 38, -5, 14, 6, 0 }, { 50, 38, -6, 14, 6, 0 }, + { 51, 39, -6, 14, 6, 0 }, { 52, 39, -7, 14, 6, 0 }, { 53, 40, -7, 14, 6, 0 }, { 54, 40, -8, 14, 6, 0 }, { 55, 40, -8, 14, 6, 0 }, + { 56, 41, -9, 14, 6, 0 }, { 57, 41, -10, 14, 6, 0 }, { 58, 42, -10, 14, 6, 0 }, { 59, 42, -11, 14, 6, 0 }, { 60, 42, -11, 14, 6, 0 }, + { 61, 43, -12, 14, 6, 0 }, { 62, 43, -13, 14, 6, 0 }, { 63, 43, -13, 15, 6, 0 }, { 64, 43, -14, 15, 6, 0 }, { 65, 44, -14, 15, 6, 0 }, + { 66, 44, -15, 15, 6, 0 }, { 67, 44, -15, 15, 6, 0 }, { 68, 45, -16, 15, 6, 0 }, { 69, 45, -17, 15, 6, 0 }, { 70, 45, -17, 15, 6, 0 }, + { 71, 45, -18, 15, 6, 0 }, { 72, 45, -18, 15, 6, 0 }, { 73, 46, -19, 15, 6, 0 }, { 74, 46, -19, 15, 6, 0 }, { 75, 46, -20, 15, 6, 0 }, + { 76, 46, -21, 15, 6, 0 }, { 77, 46, -21, 15, 6, 0 }, { 78, 47, -22, 15, 6, 0 }, { 79, 47, -22, 15, 6, 0 }, { 80, 47, -23, 15, 6, 0 }, + { 81, 47, -23, 15, 6, 0 }, { 82, 47, -24, 15, 6, 0 }, { 83, 47, -25, 15, 6, 0 }, { 84, 47, -25, 15, 6, 0 }, { 85, 47, -26, 16, 6, 0 }, + { 86, 48, -26, 16, 6, 0 }, { 87, 48, -27, 16, 6, 0 }, { 88, 48, -28, 16, 6, 0 }, { 89, 48, -28, 16, 6, 0 }, { 90, 48, -29, 16, 6, 0 }, + { 91, 48, -29, 16, 6, 0 }, { 92, 48, -30, 16, 6, 0 }, { 93, 48, -31, 16, 6, 0 }, { 94, 48, -31, 16, 6, 0 }, { 95, 48, -32, 16, 6, 0 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthToOrthogonalDown252, { + { 16, 15, 16, 20, 6, 0 }, { 17, 14, 15, 20, 6, 0 }, { 18, 13, 14, 20, 6, 0 }, { 19, 12, 14, 20, 6, 0 }, { 20, 11, 13, 20, 6, 0 }, + { 21, 10, 12, 20, 6, 0 }, { 22, 9, 12, 21, 6, 0 }, { 23, 8, 11, 21, 6, 0 }, { 23, 7, 10, 21, 6, 0 }, { 24, 6, 10, 21, 6, 0 }, + { 25, 5, 9, 21, 6, 0 }, { 26, 4, 8, 21, 6, 0 }, { 26, 3, 8, 21, 6, 0 }, { 27, 2, 7, 21, 6, 0 }, { 28, 1, 7, 21, 6, 0 }, + { 28, 0, 6, 21, 6, 0 }, { 29, -1, 5, 21, 6, 0 }, { 30, -2, 5, 21, 6, 0 }, { 30, -3, 4, 21, 6, 0 }, { 31, -4, 3, 21, 6, 0 }, + { 31, -5, 3, 21, 6, 0 }, { 32, -6, 2, 21, 6, 0 }, { 33, -7, 2, 21, 6, 0 }, { 33, -8, 1, 21, 6, 0 }, { 34, -9, 0, 22, 6, 0 }, + { 34, -10, 0, 22, 6, 0 }, { 35, -11, -1, 22, 6, 0 }, { 35, -12, -1, 22, 6, 0 }, { 36, -13, -2, 22, 6, 0 }, { 36, -14, -3, 22, 6, 0 }, + { 37, -15, -3, 22, 6, 0 }, { 37, -16, -4, 22, 6, 0 }, { 38, -17, -4, 22, 6, 0 }, { 38, -18, -5, 22, 6, 0 }, { 38, -19, -6, 22, 6, 0 }, + { 39, -20, -6, 22, 6, 0 }, { 39, -21, -7, 22, 6, 0 }, { 40, -22, -7, 22, 6, 0 }, { 40, -23, -8, 22, 6, 0 }, { 40, -24, -8, 22, 6, 0 }, + { 41, -25, -9, 22, 6, 0 }, { 41, -26, -10, 22, 6, 0 }, { 42, -27, -10, 22, 6, 0 }, { 42, -28, -11, 22, 6, 0 }, { 42, -29, -11, 22, 6, 0 }, + { 43, -30, -12, 22, 6, 0 }, { 43, -31, -13, 22, 6, 0 }, { 43, -32, -13, 23, 6, 0 }, { 43, -33, -14, 23, 6, 0 }, { 44, -34, -14, 23, 6, 0 }, + { 44, -35, -15, 23, 6, 0 }, { 44, -36, -15, 23, 6, 0 }, { 45, -37, -16, 23, 6, 0 }, { 45, -38, -17, 23, 6, 0 }, { 45, -39, -17, 23, 6, 0 }, + { 45, -40, -18, 23, 6, 0 }, { 45, -41, -18, 23, 6, 0 }, { 46, -42, -19, 23, 6, 0 }, { 46, -43, -19, 23, 6, 0 }, { 46, -44, -20, 23, 6, 0 }, + { 46, -45, -21, 23, 6, 0 }, { 46, -46, -21, 23, 6, 0 }, { 47, -47, -22, 23, 6, 0 }, { 47, -48, -22, 23, 6, 0 }, { 47, -49, -23, 23, 6, 0 }, + { 47, -50, -23, 23, 6, 0 }, { 47, -51, -24, 23, 6, 0 }, { 47, -52, -25, 23, 6, 0 }, { 47, -53, -25, 23, 6, 0 }, { 47, -54, -26, 24, 6, 0 }, + { 48, -55, -26, 24, 6, 0 }, { 48, -56, -27, 24, 6, 0 }, { 48, -57, -28, 24, 6, 0 }, { 48, -58, -28, 24, 6, 0 }, { 48, -59, -29, 24, 6, 0 }, + { 48, -60, -29, 24, 6, 0 }, { 48, -61, -30, 24, 6, 0 }, { 48, -62, -31, 24, 6, 0 }, { 48, -63, -31, 24, 6, 0 }, { 48, -64, -32, 24, 6, 0 }, + { 48, -65, -32, 24, 6, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthToOrthogonalDown253, { + { 15, 15, 15, 28, 6, 0 }, { 14, 14, 14, 28, 6, 0 }, { 13, 13, 14, 28, 6, 0 }, { 12, 12, 13, 28, 6, 0 }, { 11, 11, 12, 28, 6, 0 }, + { 10, 10, 12, 29, 6, 0 }, { 9, 9, 11, 29, 6, 0 }, { 8, 9, 10, 29, 6, 0 }, { 7, 8, 10, 29, 6, 0 }, { 6, 7, 9, 29, 6, 0 }, + { 5, 6, 8, 29, 6, 0 }, { 4, 6, 8, 29, 6, 0 }, { 3, 5, 7, 29, 6, 0 }, { 2, 4, 7, 29, 6, 0 }, { 1, 4, 6, 29, 6, 0 }, + { 0, 3, 5, 29, 6, 0 }, { -1, 2, 5, 29, 6, 0 }, { -2, 2, 4, 29, 6, 0 }, { -3, 1, 3, 29, 6, 0 }, { -4, 1, 3, 29, 6, 0 }, + { -5, 0, 2, 29, 6, 0 }, { -6, -1, 2, 29, 6, 0 }, { -7, -1, 1, 29, 6, 0 }, { -8, -2, 0, 30, 6, 0 }, { -9, -2, 0, 30, 6, 0 }, + { -10, -3, -1, 30, 6, 0 }, { -11, -3, -1, 30, 6, 0 }, { -12, -4, -2, 30, 6, 0 }, { -13, -4, -3, 30, 6, 0 }, { -14, -5, -3, 30, 6, 0 }, + { -15, -5, -4, 30, 6, 0 }, { -16, -6, -4, 30, 6, 0 }, { -17, -6, -5, 30, 6, 0 }, { -18, -6, -6, 30, 6, 0 }, { -19, -7, -6, 30, 6, 0 }, + { -20, -7, -7, 30, 6, 0 }, { -21, -8, -7, 30, 6, 0 }, { -22, -8, -8, 30, 6, 0 }, { -23, -8, -8, 30, 6, 0 }, { -24, -9, -9, 30, 6, 0 }, + { -25, -9, -10, 30, 6, 0 }, { -26, -10, -10, 30, 6, 0 }, { -27, -10, -11, 30, 6, 0 }, { -28, -10, -11, 30, 6, 0 }, { -29, -11, -12, 30, 6, 0 }, + { -30, -11, -13, 30, 6, 0 }, { -31, -11, -13, 31, 6, 0 }, { -32, -11, -14, 31, 6, 0 }, { -33, -12, -14, 31, 6, 0 }, { -34, -12, -15, 31, 6, 0 }, + { -35, -12, -15, 31, 6, 0 }, { -36, -13, -16, 31, 6, 0 }, { -37, -13, -17, 31, 6, 0 }, { -38, -13, -17, 31, 6, 0 }, { -39, -13, -18, 31, 6, 0 }, + { -40, -13, -18, 31, 6, 0 }, { -41, -14, -19, 31, 6, 0 }, { -42, -14, -19, 31, 6, 0 }, { -43, -14, -20, 31, 6, 0 }, { -44, -14, -21, 31, 6, 0 }, + { -45, -14, -21, 31, 6, 0 }, { -46, -15, -22, 31, 6, 0 }, { -47, -15, -22, 31, 6, 0 }, { -48, -15, -23, 31, 6, 0 }, { -49, -15, -23, 31, 6, 0 }, + { -50, -15, -24, 31, 6, 0 }, { -51, -15, -25, 31, 6, 0 }, { -52, -15, -25, 31, 6, 0 }, { -53, -15, -26, 0, 6, 0 }, { -54, -16, -26, 0, 6, 0 }, + { -55, -16, -27, 0, 6, 0 }, { -56, -16, -28, 0, 6, 0 }, { -57, -16, -28, 0, 6, 0 }, { -58, -16, -29, 0, 6, 0 }, { -59, -16, -29, 0, 6, 0 }, + { -60, -16, -30, 0, 6, 0 }, { -61, -16, -31, 0, 6, 0 }, { -62, -16, -31, 0, 6, 0 }, { -63, -16, -32, 0, 6, 0 }, { -64, -16, -32, 0, 6, 0 }, +}) + + + + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagUp25ToLeftBankedUp250, { + { 15, 16, 1, 4, 51, 0 }, { 14, 17, 1, 4, 51, 0 }, { 13, 18, 2, 4, 51, 0 }, { 12, 19, 2, 4, 51, 0 }, { 11, 20, 3, 4, 51, 0 }, + { 10, 21, 3, 4, 51, 0 }, { 9, 22, 4, 4, 51, 0 }, { 8, 23, 4, 4, 51, 1 }, { 7, 24, 5, 4, 51, 1 }, { 6, 25, 5, 4, 51, 1 }, + { 5, 26, 6, 4, 51, 1 }, { 4, 27, 6, 4, 51, 1 }, { 3, 28, 7, 4, 51, 1 }, { 2, 29, 7, 4, 51, 1 }, { 1, 30, 8, 4, 51, 1 }, + { 0, 31, 8, 4, 51, 1 }, { -1, 32, 9, 4, 51, 1 }, { -2, 33, 9, 4, 51, 1 }, { -3, 34, 10, 4, 51, 1 }, { -4, 35, 10, 4, 51, 1 }, + { -5, 36, 11, 4, 51, 1 }, { -6, 37, 11, 4, 51, 1 }, { -7, 38, 12, 4, 51, 1 }, { -8, 39, 12, 4, 51, 2 }, { -9, 40, 13, 4, 51, 2 }, + { -10, 41, 13, 4, 51, 2 }, { -11, 42, 14, 4, 51, 2 }, { -12, 43, 14, 4, 51, 2 }, { -13, 44, 15, 4, 51, 2 }, { -14, 45, 15, 4, 51, 2 }, + { -15, 46, 16, 4, 51, 2 }, { -16, 47, 16, 4, 51, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagUp25ToLeftBankedUp251, { + { 16, 16, 0, 12, 51, 0 }, { 17, 17, 1, 12, 51, 0 }, { 18, 18, 1, 12, 51, 0 }, { 19, 19, 2, 12, 51, 0 }, { 20, 20, 2, 12, 51, 0 }, + { 21, 21, 3, 12, 51, 0 }, { 22, 22, 3, 12, 51, 0 }, { 23, 23, 4, 12, 51, 0 }, { 24, 24, 4, 12, 51, 1 }, { 25, 25, 5, 12, 51, 1 }, + { 26, 26, 5, 12, 51, 1 }, { 27, 27, 6, 12, 51, 1 }, { 28, 28, 6, 12, 51, 1 }, { 29, 29, 7, 12, 51, 1 }, { 30, 30, 7, 12, 51, 1 }, + { 31, 31, 8, 12, 51, 1 }, { 32, 32, 8, 12, 51, 1 }, { 33, 33, 9, 12, 51, 1 }, { 34, 34, 9, 12, 51, 1 }, { 35, 35, 10, 12, 51, 1 }, + { 36, 36, 10, 12, 51, 1 }, { 37, 37, 11, 12, 51, 1 }, { 38, 38, 11, 12, 51, 1 }, { 39, 39, 12, 12, 51, 1 }, { 40, 40, 12, 12, 51, 2 }, + { 41, 41, 13, 12, 51, 2 }, { 42, 42, 13, 12, 51, 2 }, { 43, 43, 14, 12, 51, 2 }, { 44, 44, 14, 12, 51, 2 }, { 45, 45, 15, 12, 51, 2 }, + { 46, 46, 15, 12, 51, 2 }, { 47, 47, 16, 12, 51, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagUp25ToLeftBankedUp252, { + { 16, 15, 0, 20, 51, 0 }, { 17, 14, 1, 20, 51, 0 }, { 18, 13, 1, 20, 51, 0 }, { 19, 12, 2, 20, 51, 0 }, { 20, 11, 2, 20, 51, 0 }, + { 21, 10, 3, 20, 51, 0 }, { 22, 9, 3, 20, 51, 0 }, { 23, 8, 4, 20, 51, 0 }, { 24, 7, 4, 20, 51, 1 }, { 25, 6, 5, 20, 51, 1 }, + { 26, 5, 5, 20, 51, 1 }, { 27, 4, 6, 20, 51, 1 }, { 28, 3, 6, 20, 51, 1 }, { 29, 2, 7, 20, 51, 1 }, { 30, 1, 7, 20, 51, 1 }, + { 31, 0, 8, 20, 51, 1 }, { 32, -1, 8, 20, 51, 1 }, { 33, -2, 9, 20, 51, 1 }, { 34, -3, 9, 20, 51, 1 }, { 35, -4, 10, 20, 51, 1 }, + { 36, -5, 10, 20, 51, 1 }, { 37, -6, 11, 20, 51, 1 }, { 38, -7, 11, 20, 51, 1 }, { 39, -8, 12, 20, 51, 1 }, { 40, -9, 12, 20, 51, 2 }, + { 41, -10, 13, 20, 51, 2 }, { 42, -11, 13, 20, 51, 2 }, { 43, -12, 14, 20, 51, 2 }, { 44, -13, 14, 20, 51, 2 }, { 45, -14, 15, 20, 51, 2 }, + { 46, -15, 15, 20, 51, 2 }, { 47, -16, 16, 20, 51, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagUp25ToLeftBankedUp253, { + { 15, 15, 1, 28, 51, 0 }, { 14, 14, 1, 28, 51, 0 }, { 13, 13, 2, 28, 51, 0 }, { 12, 12, 2, 28, 51, 0 }, { 11, 11, 3, 28, 51, 0 }, + { 10, 10, 3, 28, 51, 0 }, { 9, 9, 4, 28, 51, 0 }, { 8, 8, 4, 28, 51, 1 }, { 7, 7, 5, 28, 51, 1 }, { 6, 6, 5, 28, 51, 1 }, + { 5, 5, 6, 28, 51, 1 }, { 4, 4, 6, 28, 51, 1 }, { 3, 3, 7, 28, 51, 1 }, { 2, 2, 7, 28, 51, 1 }, { 1, 1, 8, 28, 51, 1 }, + { 0, 0, 8, 28, 51, 1 }, { -1, -1, 9, 28, 51, 1 }, { -2, -2, 9, 28, 51, 1 }, { -3, -3, 10, 28, 51, 1 }, { -4, -4, 10, 28, 51, 1 }, + { -5, -5, 11, 28, 51, 1 }, { -6, -6, 11, 28, 51, 1 }, { -7, -7, 12, 28, 51, 1 }, { -8, -8, 12, 28, 51, 2 }, { -9, -9, 13, 28, 51, 2 }, + { -10, -10, 13, 28, 51, 2 }, { -11, -11, 14, 28, 51, 2 }, { -12, -12, 14, 28, 51, 2 }, { -13, -13, 15, 28, 51, 2 }, { -14, -14, 15, 28, 51, 2 }, + { -15, -15, 16, 28, 51, 2 }, { -16, -16, 16, 28, 51, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagUp25ToRightBankedUp250, { + { 15, 16, 1, 4, 51, 0 }, { 14, 17, 1, 4, 51, 0 }, { 13, 18, 2, 4, 51, 0 }, { 12, 19, 2, 4, 51, 0 }, { 11, 20, 3, 4, 51, 0 }, + { 10, 21, 3, 4, 51, 0 }, { 9, 22, 4, 4, 51, 0 }, { 8, 23, 4, 4, 51, 3 }, { 7, 24, 5, 4, 51, 3 }, { 6, 25, 5, 4, 51, 3 }, + { 5, 26, 6, 4, 51, 3 }, { 4, 27, 6, 4, 51, 3 }, { 3, 28, 7, 4, 51, 3 }, { 2, 29, 7, 4, 51, 3 }, { 1, 30, 8, 4, 51, 3 }, + { 0, 31, 8, 4, 51, 3 }, { -1, 32, 9, 4, 51, 3 }, { -2, 33, 9, 4, 51, 3 }, { -3, 34, 10, 4, 51, 3 }, { -4, 35, 10, 4, 51, 3 }, + { -5, 36, 11, 4, 51, 3 }, { -6, 37, 11, 4, 51, 3 }, { -7, 38, 12, 4, 51, 3 }, { -8, 39, 12, 4, 51, 4 }, { -9, 40, 13, 4, 51, 4 }, + { -10, 41, 13, 4, 51, 4 }, { -11, 42, 14, 4, 51, 4 }, { -12, 43, 14, 4, 51, 4 }, { -13, 44, 15, 4, 51, 4 }, { -14, 45, 15, 4, 51, 4 }, + { -15, 46, 16, 4, 51, 4 }, { -16, 47, 16, 4, 51, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagUp25ToRightBankedUp251, { + { 16, 16, 0, 12, 51, 0 }, { 17, 17, 1, 12, 51, 0 }, { 18, 18, 1, 12, 51, 0 }, { 19, 19, 2, 12, 51, 0 }, { 20, 20, 2, 12, 51, 0 }, + { 21, 21, 3, 12, 51, 0 }, { 22, 22, 3, 12, 51, 0 }, { 23, 23, 4, 12, 51, 0 }, { 24, 24, 4, 12, 51, 3 }, { 25, 25, 5, 12, 51, 3 }, + { 26, 26, 5, 12, 51, 3 }, { 27, 27, 6, 12, 51, 3 }, { 28, 28, 6, 12, 51, 3 }, { 29, 29, 7, 12, 51, 3 }, { 30, 30, 7, 12, 51, 3 }, + { 31, 31, 8, 12, 51, 3 }, { 32, 32, 8, 12, 51, 3 }, { 33, 33, 9, 12, 51, 3 }, { 34, 34, 9, 12, 51, 3 }, { 35, 35, 10, 12, 51, 3 }, + { 36, 36, 10, 12, 51, 3 }, { 37, 37, 11, 12, 51, 3 }, { 38, 38, 11, 12, 51, 3 }, { 39, 39, 12, 12, 51, 3 }, { 40, 40, 12, 12, 51, 4 }, + { 41, 41, 13, 12, 51, 4 }, { 42, 42, 13, 12, 51, 4 }, { 43, 43, 14, 12, 51, 4 }, { 44, 44, 14, 12, 51, 4 }, { 45, 45, 15, 12, 51, 4 }, + { 46, 46, 15, 12, 51, 4 }, { 47, 47, 16, 12, 51, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagUp25ToRightBankedUp252, { + { 16, 15, 0, 20, 51, 0 }, { 17, 14, 1, 20, 51, 0 }, { 18, 13, 1, 20, 51, 0 }, { 19, 12, 2, 20, 51, 0 }, { 20, 11, 2, 20, 51, 0 }, + { 21, 10, 3, 20, 51, 0 }, { 22, 9, 3, 20, 51, 0 }, { 23, 8, 4, 20, 51, 0 }, { 24, 7, 4, 20, 51, 3 }, { 25, 6, 5, 20, 51, 3 }, + { 26, 5, 5, 20, 51, 3 }, { 27, 4, 6, 20, 51, 3 }, { 28, 3, 6, 20, 51, 3 }, { 29, 2, 7, 20, 51, 3 }, { 30, 1, 7, 20, 51, 3 }, + { 31, 0, 8, 20, 51, 3 }, { 32, -1, 8, 20, 51, 3 }, { 33, -2, 9, 20, 51, 3 }, { 34, -3, 9, 20, 51, 3 }, { 35, -4, 10, 20, 51, 3 }, + { 36, -5, 10, 20, 51, 3 }, { 37, -6, 11, 20, 51, 3 }, { 38, -7, 11, 20, 51, 3 }, { 39, -8, 12, 20, 51, 3 }, { 40, -9, 12, 20, 51, 4 }, + { 41, -10, 13, 20, 51, 4 }, { 42, -11, 13, 20, 51, 4 }, { 43, -12, 14, 20, 51, 4 }, { 44, -13, 14, 20, 51, 4 }, { 45, -14, 15, 20, 51, 4 }, + { 46, -15, 15, 20, 51, 4 }, { 47, -16, 16, 20, 51, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagUp25ToRightBankedUp253, { + { 15, 15, 1, 28, 51, 0 }, { 14, 14, 1, 28, 51, 0 }, { 13, 13, 2, 28, 51, 0 }, { 12, 12, 2, 28, 51, 0 }, { 11, 11, 3, 28, 51, 0 }, + { 10, 10, 3, 28, 51, 0 }, { 9, 9, 4, 28, 51, 0 }, { 8, 8, 4, 28, 51, 3 }, { 7, 7, 5, 28, 51, 3 }, { 6, 6, 5, 28, 51, 3 }, + { 5, 5, 6, 28, 51, 3 }, { 4, 4, 6, 28, 51, 3 }, { 3, 3, 7, 28, 51, 3 }, { 2, 2, 7, 28, 51, 3 }, { 1, 1, 8, 28, 51, 3 }, + { 0, 0, 8, 28, 51, 3 }, { -1, -1, 9, 28, 51, 3 }, { -2, -2, 9, 28, 51, 3 }, { -3, -3, 10, 28, 51, 3 }, { -4, -4, 10, 28, 51, 3 }, + { -5, -5, 11, 28, 51, 3 }, { -6, -6, 11, 28, 51, 3 }, { -7, -7, 12, 28, 51, 3 }, { -8, -8, 12, 28, 51, 4 }, { -9, -9, 13, 28, 51, 4 }, + { -10, -10, 13, 28, 51, 4 }, { -11, -11, 14, 28, 51, 4 }, { -12, -12, 14, 28, 51, 4 }, { -13, -13, 15, 28, 51, 4 }, { -14, -14, 15, 28, 51, 4 }, + { -15, -15, 16, 28, 51, 4 }, { -16, -16, 16, 28, 51, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedUp25ToUp250, { + { 15, 16, 1, 4, 51, 2 }, { 14, 17, 1, 4, 51, 2 }, { 13, 18, 2, 4, 51, 2 }, { 12, 19, 2, 4, 51, 2 }, { 11, 20, 3, 4, 51, 2 }, + { 10, 21, 3, 4, 51, 2 }, { 9, 22, 4, 4, 51, 2 }, { 8, 23, 4, 4, 51, 1 }, { 7, 24, 5, 4, 51, 1 }, { 6, 25, 5, 4, 51, 1 }, + { 5, 26, 6, 4, 51, 1 }, { 4, 27, 6, 4, 51, 1 }, { 3, 28, 7, 4, 51, 1 }, { 2, 29, 7, 4, 51, 1 }, { 1, 30, 8, 4, 51, 1 }, + { 0, 31, 8, 4, 51, 1 }, { -1, 32, 9, 4, 51, 1 }, { -2, 33, 9, 4, 51, 1 }, { -3, 34, 10, 4, 51, 1 }, { -4, 35, 10, 4, 51, 1 }, + { -5, 36, 11, 4, 51, 1 }, { -6, 37, 11, 4, 51, 1 }, { -7, 38, 12, 4, 51, 1 }, { -8, 39, 12, 4, 51, 0 }, { -9, 40, 13, 4, 51, 0 }, + { -10, 41, 13, 4, 51, 0 }, { -11, 42, 14, 4, 51, 0 }, { -12, 43, 14, 4, 51, 0 }, { -13, 44, 15, 4, 51, 0 }, { -14, 45, 15, 4, 51, 0 }, + { -15, 46, 16, 4, 51, 0 }, { -16, 47, 16, 4, 51, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedUp25ToUp251, { + { 16, 16, 0, 12, 51, 2 }, { 17, 17, 1, 12, 51, 2 }, { 18, 18, 1, 12, 51, 2 }, { 19, 19, 2, 12, 51, 2 }, { 20, 20, 2, 12, 51, 2 }, + { 21, 21, 3, 12, 51, 2 }, { 22, 22, 3, 12, 51, 2 }, { 23, 23, 4, 12, 51, 2 }, { 24, 24, 4, 12, 51, 1 }, { 25, 25, 5, 12, 51, 1 }, + { 26, 26, 5, 12, 51, 1 }, { 27, 27, 6, 12, 51, 1 }, { 28, 28, 6, 12, 51, 1 }, { 29, 29, 7, 12, 51, 1 }, { 30, 30, 7, 12, 51, 1 }, + { 31, 31, 8, 12, 51, 1 }, { 32, 32, 8, 12, 51, 1 }, { 33, 33, 9, 12, 51, 1 }, { 34, 34, 9, 12, 51, 1 }, { 35, 35, 10, 12, 51, 1 }, + { 36, 36, 10, 12, 51, 1 }, { 37, 37, 11, 12, 51, 1 }, { 38, 38, 11, 12, 51, 1 }, { 39, 39, 12, 12, 51, 1 }, { 40, 40, 12, 12, 51, 0 }, + { 41, 41, 13, 12, 51, 0 }, { 42, 42, 13, 12, 51, 0 }, { 43, 43, 14, 12, 51, 0 }, { 44, 44, 14, 12, 51, 0 }, { 45, 45, 15, 12, 51, 0 }, + { 46, 46, 15, 12, 51, 0 }, { 47, 47, 16, 12, 51, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedUp25ToUp252, { + { 16, 15, 0, 20, 51, 2 }, { 17, 14, 1, 20, 51, 2 }, { 18, 13, 1, 20, 51, 2 }, { 19, 12, 2, 20, 51, 2 }, { 20, 11, 2, 20, 51, 2 }, + { 21, 10, 3, 20, 51, 2 }, { 22, 9, 3, 20, 51, 2 }, { 23, 8, 4, 20, 51, 2 }, { 24, 7, 4, 20, 51, 1 }, { 25, 6, 5, 20, 51, 1 }, + { 26, 5, 5, 20, 51, 1 }, { 27, 4, 6, 20, 51, 1 }, { 28, 3, 6, 20, 51, 1 }, { 29, 2, 7, 20, 51, 1 }, { 30, 1, 7, 20, 51, 1 }, + { 31, 0, 8, 20, 51, 1 }, { 32, -1, 8, 20, 51, 1 }, { 33, -2, 9, 20, 51, 1 }, { 34, -3, 9, 20, 51, 1 }, { 35, -4, 10, 20, 51, 1 }, + { 36, -5, 10, 20, 51, 1 }, { 37, -6, 11, 20, 51, 1 }, { 38, -7, 11, 20, 51, 1 }, { 39, -8, 12, 20, 51, 1 }, { 40, -9, 12, 20, 51, 0 }, + { 41, -10, 13, 20, 51, 0 }, { 42, -11, 13, 20, 51, 0 }, { 43, -12, 14, 20, 51, 0 }, { 44, -13, 14, 20, 51, 0 }, { 45, -14, 15, 20, 51, 0 }, + { 46, -15, 15, 20, 51, 0 }, { 47, -16, 16, 20, 51, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedUp25ToUp253, { + { 15, 15, 1, 28, 51, 2 }, { 14, 14, 1, 28, 51, 2 }, { 13, 13, 2, 28, 51, 2 }, { 12, 12, 2, 28, 51, 2 }, { 11, 11, 3, 28, 51, 2 }, + { 10, 10, 3, 28, 51, 2 }, { 9, 9, 4, 28, 51, 2 }, { 8, 8, 4, 28, 51, 1 }, { 7, 7, 5, 28, 51, 1 }, { 6, 6, 5, 28, 51, 1 }, + { 5, 5, 6, 28, 51, 1 }, { 4, 4, 6, 28, 51, 1 }, { 3, 3, 7, 28, 51, 1 }, { 2, 2, 7, 28, 51, 1 }, { 1, 1, 8, 28, 51, 1 }, + { 0, 0, 8, 28, 51, 1 }, { -1, -1, 9, 28, 51, 1 }, { -2, -2, 9, 28, 51, 1 }, { -3, -3, 10, 28, 51, 1 }, { -4, -4, 10, 28, 51, 1 }, + { -5, -5, 11, 28, 51, 1 }, { -6, -6, 11, 28, 51, 1 }, { -7, -7, 12, 28, 51, 1 }, { -8, -8, 12, 28, 51, 0 }, { -9, -9, 13, 28, 51, 0 }, + { -10, -10, 13, 28, 51, 0 }, { -11, -11, 14, 28, 51, 0 }, { -12, -12, 14, 28, 51, 0 }, { -13, -13, 15, 28, 51, 0 }, { -14, -14, 15, 28, 51, 0 }, + { -15, -15, 16, 28, 51, 0 }, { -16, -16, 16, 28, 51, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedUp25ToUp250, { + { 15, 16, 1, 4, 51, 4 }, { 14, 17, 1, 4, 51, 4 }, { 13, 18, 2, 4, 51, 4 }, { 12, 19, 2, 4, 51, 4 }, { 11, 20, 3, 4, 51, 4 }, + { 10, 21, 3, 4, 51, 4 }, { 9, 22, 4, 4, 51, 4 }, { 8, 23, 4, 4, 51, 3 }, { 7, 24, 5, 4, 51, 3 }, { 6, 25, 5, 4, 51, 3 }, + { 5, 26, 6, 4, 51, 3 }, { 4, 27, 6, 4, 51, 3 }, { 3, 28, 7, 4, 51, 3 }, { 2, 29, 7, 4, 51, 3 }, { 1, 30, 8, 4, 51, 3 }, + { 0, 31, 8, 4, 51, 3 }, { -1, 32, 9, 4, 51, 3 }, { -2, 33, 9, 4, 51, 3 }, { -3, 34, 10, 4, 51, 3 }, { -4, 35, 10, 4, 51, 3 }, + { -5, 36, 11, 4, 51, 3 }, { -6, 37, 11, 4, 51, 3 }, { -7, 38, 12, 4, 51, 3 }, { -8, 39, 12, 4, 51, 0 }, { -9, 40, 13, 4, 51, 0 }, + { -10, 41, 13, 4, 51, 0 }, { -11, 42, 14, 4, 51, 0 }, { -12, 43, 14, 4, 51, 0 }, { -13, 44, 15, 4, 51, 0 }, { -14, 45, 15, 4, 51, 0 }, + { -15, 46, 16, 4, 51, 0 }, { -16, 47, 16, 4, 51, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedUp25ToUp251, { + { 16, 16, 0, 12, 51, 4 }, { 17, 17, 1, 12, 51, 4 }, { 18, 18, 1, 12, 51, 4 }, { 19, 19, 2, 12, 51, 4 }, { 20, 20, 2, 12, 51, 4 }, + { 21, 21, 3, 12, 51, 4 }, { 22, 22, 3, 12, 51, 4 }, { 23, 23, 4, 12, 51, 4 }, { 24, 24, 4, 12, 51, 3 }, { 25, 25, 5, 12, 51, 3 }, + { 26, 26, 5, 12, 51, 3 }, { 27, 27, 6, 12, 51, 3 }, { 28, 28, 6, 12, 51, 3 }, { 29, 29, 7, 12, 51, 3 }, { 30, 30, 7, 12, 51, 3 }, + { 31, 31, 8, 12, 51, 3 }, { 32, 32, 8, 12, 51, 3 }, { 33, 33, 9, 12, 51, 3 }, { 34, 34, 9, 12, 51, 3 }, { 35, 35, 10, 12, 51, 3 }, + { 36, 36, 10, 12, 51, 3 }, { 37, 37, 11, 12, 51, 3 }, { 38, 38, 11, 12, 51, 3 }, { 39, 39, 12, 12, 51, 3 }, { 40, 40, 12, 12, 51, 0 }, + { 41, 41, 13, 12, 51, 0 }, { 42, 42, 13, 12, 51, 0 }, { 43, 43, 14, 12, 51, 0 }, { 44, 44, 14, 12, 51, 0 }, { 45, 45, 15, 12, 51, 0 }, + { 46, 46, 15, 12, 51, 0 }, { 47, 47, 16, 12, 51, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedUp25ToUp252, { + { 16, 15, 0, 20, 51, 4 }, { 17, 14, 1, 20, 51, 4 }, { 18, 13, 1, 20, 51, 4 }, { 19, 12, 2, 20, 51, 4 }, { 20, 11, 2, 20, 51, 4 }, + { 21, 10, 3, 20, 51, 4 }, { 22, 9, 3, 20, 51, 4 }, { 23, 8, 4, 20, 51, 4 }, { 24, 7, 4, 20, 51, 3 }, { 25, 6, 5, 20, 51, 3 }, + { 26, 5, 5, 20, 51, 3 }, { 27, 4, 6, 20, 51, 3 }, { 28, 3, 6, 20, 51, 3 }, { 29, 2, 7, 20, 51, 3 }, { 30, 1, 7, 20, 51, 3 }, + { 31, 0, 8, 20, 51, 3 }, { 32, -1, 8, 20, 51, 3 }, { 33, -2, 9, 20, 51, 3 }, { 34, -3, 9, 20, 51, 3 }, { 35, -4, 10, 20, 51, 3 }, + { 36, -5, 10, 20, 51, 3 }, { 37, -6, 11, 20, 51, 3 }, { 38, -7, 11, 20, 51, 3 }, { 39, -8, 12, 20, 51, 3 }, { 40, -9, 12, 20, 51, 0 }, + { 41, -10, 13, 20, 51, 0 }, { 42, -11, 13, 20, 51, 0 }, { 43, -12, 14, 20, 51, 0 }, { 44, -13, 14, 20, 51, 0 }, { 45, -14, 15, 20, 51, 0 }, + { 46, -15, 15, 20, 51, 0 }, { 47, -16, 16, 20, 51, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedUp25ToUp253, { + { 15, 15, 1, 28, 51, 4 }, { 14, 14, 1, 28, 51, 4 }, { 13, 13, 2, 28, 51, 4 }, { 12, 12, 2, 28, 51, 4 }, { 11, 11, 3, 28, 51, 4 }, + { 10, 10, 3, 28, 51, 4 }, { 9, 9, 4, 28, 51, 4 }, { 8, 8, 4, 28, 51, 3 }, { 7, 7, 5, 28, 51, 3 }, { 6, 6, 5, 28, 51, 3 }, + { 5, 5, 6, 28, 51, 3 }, { 4, 4, 6, 28, 51, 3 }, { 3, 3, 7, 28, 51, 3 }, { 2, 2, 7, 28, 51, 3 }, { 1, 1, 8, 28, 51, 3 }, + { 0, 0, 8, 28, 51, 3 }, { -1, -1, 9, 28, 51, 3 }, { -2, -2, 9, 28, 51, 3 }, { -3, -3, 10, 28, 51, 3 }, { -4, -4, 10, 28, 51, 3 }, + { -5, -5, 11, 28, 51, 3 }, { -6, -6, 11, 28, 51, 3 }, { -7, -7, 12, 28, 51, 3 }, { -8, -8, 12, 28, 51, 0 }, { -9, -9, 13, 28, 51, 0 }, + { -10, -10, 13, 28, 51, 0 }, { -11, -11, 14, 28, 51, 0 }, { -12, -12, 14, 28, 51, 0 }, { -13, -13, 15, 28, 51, 0 }, { -14, -14, 15, 28, 51, 0 }, + { -15, -15, 16, 28, 51, 0 }, { -16, -16, 16, 28, 51, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagDown25ToLeftBankedDown250, { + { 15, 16, 15, 4, 54, 0 }, { 14, 17, 15, 4, 54, 0 }, { 13, 18, 14, 4, 54, 0 }, { 12, 19, 14, 4, 54, 0 }, { 11, 20, 13, 4, 54, 0 }, + { 10, 21, 13, 4, 54, 0 }, { 9, 22, 12, 4, 54, 0 }, { 8, 23, 12, 4, 54, 1 }, { 7, 24, 11, 4, 54, 1 }, { 6, 25, 11, 4, 54, 1 }, + { 5, 26, 10, 4, 54, 1 }, { 4, 27, 10, 4, 54, 1 }, { 3, 28, 9, 4, 54, 1 }, { 2, 29, 9, 4, 54, 1 }, { 1, 30, 8, 4, 54, 1 }, + { 0, 31, 8, 4, 54, 1 }, { -1, 32, 7, 4, 54, 1 }, { -2, 33, 7, 4, 54, 1 }, { -3, 34, 6, 4, 54, 1 }, { -4, 35, 6, 4, 54, 1 }, + { -5, 36, 5, 4, 54, 1 }, { -6, 37, 5, 4, 54, 1 }, { -7, 38, 4, 4, 54, 1 }, { -8, 39, 4, 4, 54, 2 }, { -9, 40, 3, 4, 54, 2 }, + { -10, 41, 3, 4, 54, 2 }, { -11, 42, 2, 4, 54, 2 }, { -12, 43, 2, 4, 54, 2 }, { -13, 44, 1, 4, 54, 2 }, { -14, 45, 1, 4, 54, 2 }, + { -15, 46, 0, 4, 54, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagDown25ToLeftBankedDown251, { + { 16, 16, 16, 12, 54, 0 }, { 17, 17, 15, 12, 54, 0 }, { 18, 18, 15, 12, 54, 0 }, { 19, 19, 14, 12, 54, 0 }, { 20, 20, 14, 12, 54, 0 }, + { 21, 21, 13, 12, 54, 0 }, { 22, 22, 13, 12, 54, 0 }, { 23, 23, 12, 12, 54, 0 }, { 24, 24, 12, 12, 54, 1 }, { 25, 25, 11, 12, 54, 1 }, + { 26, 26, 11, 12, 54, 1 }, { 27, 27, 10, 12, 54, 1 }, { 28, 28, 10, 12, 54, 1 }, { 29, 29, 9, 12, 54, 1 }, { 30, 30, 9, 12, 54, 1 }, + { 31, 31, 8, 12, 54, 1 }, { 32, 32, 8, 12, 54, 1 }, { 33, 33, 7, 12, 54, 1 }, { 34, 34, 7, 12, 54, 1 }, { 35, 35, 6, 12, 54, 1 }, + { 36, 36, 6, 12, 54, 1 }, { 37, 37, 5, 12, 54, 1 }, { 38, 38, 5, 12, 54, 1 }, { 39, 39, 4, 12, 54, 1 }, { 40, 40, 4, 12, 54, 2 }, + { 41, 41, 3, 12, 54, 2 }, { 42, 42, 3, 12, 54, 2 }, { 43, 43, 2, 12, 54, 2 }, { 44, 44, 2, 12, 54, 2 }, { 45, 45, 1, 12, 54, 2 }, + { 46, 46, 1, 12, 54, 2 }, { 47, 47, 0, 12, 54, 2 }, { 48, 48, 0, 12, 54, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagDown25ToLeftBankedDown252, { + { 16, 15, 16, 20, 54, 0 }, { 17, 14, 15, 20, 54, 0 }, { 18, 13, 15, 20, 54, 0 }, { 19, 12, 14, 20, 54, 0 }, { 20, 11, 14, 20, 54, 0 }, + { 21, 10, 13, 20, 54, 0 }, { 22, 9, 13, 20, 54, 0 }, { 23, 8, 12, 20, 54, 0 }, { 24, 7, 12, 20, 54, 1 }, { 25, 6, 11, 20, 54, 1 }, + { 26, 5, 11, 20, 54, 1 }, { 27, 4, 10, 20, 54, 1 }, { 28, 3, 10, 20, 54, 1 }, { 29, 2, 9, 20, 54, 1 }, { 30, 1, 9, 20, 54, 1 }, + { 31, 0, 8, 20, 54, 1 }, { 32, -1, 8, 20, 54, 1 }, { 33, -2, 7, 20, 54, 1 }, { 34, -3, 7, 20, 54, 1 }, { 35, -4, 6, 20, 54, 1 }, + { 36, -5, 6, 20, 54, 1 }, { 37, -6, 5, 20, 54, 1 }, { 38, -7, 5, 20, 54, 1 }, { 39, -8, 4, 20, 54, 1 }, { 40, -9, 4, 20, 54, 2 }, + { 41, -10, 3, 20, 54, 2 }, { 42, -11, 3, 20, 54, 2 }, { 43, -12, 2, 20, 54, 2 }, { 44, -13, 2, 20, 54, 2 }, { 45, -14, 1, 20, 54, 2 }, + { 46, -15, 1, 20, 54, 2 }, { 47, -16, 0, 20, 54, 2 }, { 48, -17, 0, 20, 54, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagDown25ToLeftBankedDown253, { + { 15, 15, 15, 28, 54, 0 }, { 14, 14, 15, 28, 54, 0 }, { 13, 13, 14, 28, 54, 0 }, { 12, 12, 14, 28, 54, 0 }, { 11, 11, 13, 28, 54, 0 }, + { 10, 10, 13, 28, 54, 0 }, { 9, 9, 12, 28, 54, 0 }, { 8, 8, 12, 28, 54, 1 }, { 7, 7, 11, 28, 54, 1 }, { 6, 6, 11, 28, 54, 1 }, + { 5, 5, 10, 28, 54, 1 }, { 4, 4, 10, 28, 54, 1 }, { 3, 3, 9, 28, 54, 1 }, { 2, 2, 9, 28, 54, 1 }, { 1, 1, 8, 28, 54, 1 }, + { 0, 0, 8, 28, 54, 1 }, { -1, -1, 7, 28, 54, 1 }, { -2, -2, 7, 28, 54, 1 }, { -3, -3, 6, 28, 54, 1 }, { -4, -4, 6, 28, 54, 1 }, + { -5, -5, 5, 28, 54, 1 }, { -6, -6, 5, 28, 54, 1 }, { -7, -7, 4, 28, 54, 1 }, { -8, -8, 4, 28, 54, 2 }, { -9, -9, 3, 28, 54, 2 }, + { -10, -10, 3, 28, 54, 2 }, { -11, -11, 2, 28, 54, 2 }, { -12, -12, 2, 28, 54, 2 }, { -13, -13, 1, 28, 54, 2 }, { -14, -14, 1, 28, 54, 2 }, + { -15, -15, 0, 28, 54, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagDown25ToRightBankedDown250, { + { 15, 16, 15, 4, 54, 0 }, { 14, 17, 15, 4, 54, 0 }, { 13, 18, 14, 4, 54, 0 }, { 12, 19, 14, 4, 54, 0 }, { 11, 20, 13, 4, 54, 0 }, + { 10, 21, 13, 4, 54, 0 }, { 9, 22, 12, 4, 54, 0 }, { 8, 23, 12, 4, 54, 3 }, { 7, 24, 11, 4, 54, 3 }, { 6, 25, 11, 4, 54, 3 }, + { 5, 26, 10, 4, 54, 3 }, { 4, 27, 10, 4, 54, 3 }, { 3, 28, 9, 4, 54, 3 }, { 2, 29, 9, 4, 54, 3 }, { 1, 30, 8, 4, 54, 3 }, + { 0, 31, 8, 4, 54, 3 }, { -1, 32, 7, 4, 54, 3 }, { -2, 33, 7, 4, 54, 3 }, { -3, 34, 6, 4, 54, 3 }, { -4, 35, 6, 4, 54, 3 }, + { -5, 36, 5, 4, 54, 3 }, { -6, 37, 5, 4, 54, 3 }, { -7, 38, 4, 4, 54, 3 }, { -8, 39, 4, 4, 54, 4 }, { -9, 40, 3, 4, 54, 4 }, + { -10, 41, 3, 4, 54, 4 }, { -11, 42, 2, 4, 54, 4 }, { -12, 43, 2, 4, 54, 4 }, { -13, 44, 1, 4, 54, 4 }, { -14, 45, 1, 4, 54, 4 }, + { -15, 46, 0, 4, 54, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagDown25ToRightBankedDown251, { + { 16, 16, 16, 12, 54, 0 }, { 17, 17, 15, 12, 54, 0 }, { 18, 18, 15, 12, 54, 0 }, { 19, 19, 14, 12, 54, 0 }, { 20, 20, 14, 12, 54, 0 }, + { 21, 21, 13, 12, 54, 0 }, { 22, 22, 13, 12, 54, 0 }, { 23, 23, 12, 12, 54, 0 }, { 24, 24, 12, 12, 54, 3 }, { 25, 25, 11, 12, 54, 3 }, + { 26, 26, 11, 12, 54, 3 }, { 27, 27, 10, 12, 54, 3 }, { 28, 28, 10, 12, 54, 3 }, { 29, 29, 9, 12, 54, 3 }, { 30, 30, 9, 12, 54, 3 }, + { 31, 31, 8, 12, 54, 3 }, { 32, 32, 8, 12, 54, 3 }, { 33, 33, 7, 12, 54, 3 }, { 34, 34, 7, 12, 54, 3 }, { 35, 35, 6, 12, 54, 3 }, + { 36, 36, 6, 12, 54, 3 }, { 37, 37, 5, 12, 54, 3 }, { 38, 38, 5, 12, 54, 3 }, { 39, 39, 4, 12, 54, 3 }, { 40, 40, 4, 12, 54, 4 }, + { 41, 41, 3, 12, 54, 4 }, { 42, 42, 3, 12, 54, 4 }, { 43, 43, 2, 12, 54, 4 }, { 44, 44, 2, 12, 54, 4 }, { 45, 45, 1, 12, 54, 4 }, + { 46, 46, 1, 12, 54, 4 }, { 47, 47, 0, 12, 54, 4 }, { 48, 48, 0, 12, 54, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagDown25ToRightBankedDown252, { + { 16, 15, 16, 20, 54, 0 }, { 17, 14, 15, 20, 54, 0 }, { 18, 13, 15, 20, 54, 0 }, { 19, 12, 14, 20, 54, 0 }, { 20, 11, 14, 20, 54, 0 }, + { 21, 10, 13, 20, 54, 0 }, { 22, 9, 13, 20, 54, 0 }, { 23, 8, 12, 20, 54, 0 }, { 24, 7, 12, 20, 54, 3 }, { 25, 6, 11, 20, 54, 3 }, + { 26, 5, 11, 20, 54, 3 }, { 27, 4, 10, 20, 54, 3 }, { 28, 3, 10, 20, 54, 3 }, { 29, 2, 9, 20, 54, 3 }, { 30, 1, 9, 20, 54, 3 }, + { 31, 0, 8, 20, 54, 3 }, { 32, -1, 8, 20, 54, 3 }, { 33, -2, 7, 20, 54, 3 }, { 34, -3, 7, 20, 54, 3 }, { 35, -4, 6, 20, 54, 3 }, + { 36, -5, 6, 20, 54, 3 }, { 37, -6, 5, 20, 54, 3 }, { 38, -7, 5, 20, 54, 3 }, { 39, -8, 4, 20, 54, 3 }, { 40, -9, 4, 20, 54, 4 }, + { 41, -10, 3, 20, 54, 4 }, { 42, -11, 3, 20, 54, 4 }, { 43, -12, 2, 20, 54, 4 }, { 44, -13, 2, 20, 54, 4 }, { 45, -14, 1, 20, 54, 4 }, + { 46, -15, 1, 20, 54, 4 }, { 47, -16, 0, 20, 54, 4 }, { 48, -17, 0, 20, 54, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagDown25ToRightBankedDown253, { + { 15, 15, 15, 28, 54, 0 }, { 14, 14, 15, 28, 54, 0 }, { 13, 13, 14, 28, 54, 0 }, { 12, 12, 14, 28, 54, 0 }, { 11, 11, 13, 28, 54, 0 }, + { 10, 10, 13, 28, 54, 0 }, { 9, 9, 12, 28, 54, 0 }, { 8, 8, 12, 28, 54, 3 }, { 7, 7, 11, 28, 54, 3 }, { 6, 6, 11, 28, 54, 3 }, + { 5, 5, 10, 28, 54, 3 }, { 4, 4, 10, 28, 54, 3 }, { 3, 3, 9, 28, 54, 3 }, { 2, 2, 9, 28, 54, 3 }, { 1, 1, 8, 28, 54, 3 }, + { 0, 0, 8, 28, 54, 3 }, { -1, -1, 7, 28, 54, 3 }, { -2, -2, 7, 28, 54, 3 }, { -3, -3, 6, 28, 54, 3 }, { -4, -4, 6, 28, 54, 3 }, + { -5, -5, 5, 28, 54, 3 }, { -6, -6, 5, 28, 54, 3 }, { -7, -7, 4, 28, 54, 3 }, { -8, -8, 4, 28, 54, 4 }, { -9, -9, 3, 28, 54, 4 }, + { -10, -10, 3, 28, 54, 4 }, { -11, -11, 2, 28, 54, 4 }, { -12, -12, 2, 28, 54, 4 }, { -13, -13, 1, 28, 54, 4 }, { -14, -14, 1, 28, 54, 4 }, + { -15, -15, 0, 28, 54, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedDown25ToDown250, { + { 15, 16, 15, 4, 54, 2 }, { 14, 17, 15, 4, 54, 2 }, { 13, 18, 14, 4, 54, 2 }, { 12, 19, 14, 4, 54, 2 }, { 11, 20, 13, 4, 54, 2 }, + { 10, 21, 13, 4, 54, 2 }, { 9, 22, 12, 4, 54, 2 }, { 8, 23, 12, 4, 54, 1 }, { 7, 24, 11, 4, 54, 1 }, { 6, 25, 11, 4, 54, 1 }, + { 5, 26, 10, 4, 54, 1 }, { 4, 27, 10, 4, 54, 1 }, { 3, 28, 9, 4, 54, 1 }, { 2, 29, 9, 4, 54, 1 }, { 1, 30, 8, 4, 54, 1 }, + { 0, 31, 8, 4, 54, 1 }, { -1, 32, 7, 4, 54, 1 }, { -2, 33, 7, 4, 54, 1 }, { -3, 34, 6, 4, 54, 1 }, { -4, 35, 6, 4, 54, 1 }, + { -5, 36, 5, 4, 54, 1 }, { -6, 37, 5, 4, 54, 1 }, { -7, 38, 4, 4, 54, 1 }, { -8, 39, 4, 4, 54, 0 }, { -9, 40, 3, 4, 54, 0 }, + { -10, 41, 3, 4, 54, 0 }, { -11, 42, 2, 4, 54, 0 }, { -12, 43, 2, 4, 54, 0 }, { -13, 44, 1, 4, 54, 0 }, { -14, 45, 1, 4, 54, 0 }, + { -15, 46, 0, 4, 54, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedDown25ToDown251, { + { 16, 16, 16, 12, 54, 2 }, { 17, 17, 15, 12, 54, 2 }, { 18, 18, 15, 12, 54, 2 }, { 19, 19, 14, 12, 54, 2 }, { 20, 20, 14, 12, 54, 2 }, + { 21, 21, 13, 12, 54, 2 }, { 22, 22, 13, 12, 54, 2 }, { 23, 23, 12, 12, 54, 2 }, { 24, 24, 12, 12, 54, 1 }, { 25, 25, 11, 12, 54, 1 }, + { 26, 26, 11, 12, 54, 1 }, { 27, 27, 10, 12, 54, 1 }, { 28, 28, 10, 12, 54, 1 }, { 29, 29, 9, 12, 54, 1 }, { 30, 30, 9, 12, 54, 1 }, + { 31, 31, 8, 12, 54, 1 }, { 32, 32, 8, 12, 54, 1 }, { 33, 33, 7, 12, 54, 1 }, { 34, 34, 7, 12, 54, 1 }, { 35, 35, 6, 12, 54, 1 }, + { 36, 36, 6, 12, 54, 1 }, { 37, 37, 5, 12, 54, 1 }, { 38, 38, 5, 12, 54, 1 }, { 39, 39, 4, 12, 54, 1 }, { 40, 40, 4, 12, 54, 0 }, + { 41, 41, 3, 12, 54, 0 }, { 42, 42, 3, 12, 54, 0 }, { 43, 43, 2, 12, 54, 0 }, { 44, 44, 2, 12, 54, 0 }, { 45, 45, 1, 12, 54, 0 }, + { 46, 46, 1, 12, 54, 0 }, { 47, 47, 0, 12, 54, 0 }, { 48, 48, 0, 12, 54, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedDown25ToDown252, { + { 16, 15, 16, 20, 54, 2 }, { 17, 14, 15, 20, 54, 2 }, { 18, 13, 15, 20, 54, 2 }, { 19, 12, 14, 20, 54, 2 }, { 20, 11, 14, 20, 54, 2 }, + { 21, 10, 13, 20, 54, 2 }, { 22, 9, 13, 20, 54, 2 }, { 23, 8, 12, 20, 54, 2 }, { 24, 7, 12, 20, 54, 1 }, { 25, 6, 11, 20, 54, 1 }, + { 26, 5, 11, 20, 54, 1 }, { 27, 4, 10, 20, 54, 1 }, { 28, 3, 10, 20, 54, 1 }, { 29, 2, 9, 20, 54, 1 }, { 30, 1, 9, 20, 54, 1 }, + { 31, 0, 8, 20, 54, 1 }, { 32, -1, 8, 20, 54, 1 }, { 33, -2, 7, 20, 54, 1 }, { 34, -3, 7, 20, 54, 1 }, { 35, -4, 6, 20, 54, 1 }, + { 36, -5, 6, 20, 54, 1 }, { 37, -6, 5, 20, 54, 1 }, { 38, -7, 5, 20, 54, 1 }, { 39, -8, 4, 20, 54, 1 }, { 40, -9, 4, 20, 54, 0 }, + { 41, -10, 3, 20, 54, 0 }, { 42, -11, 3, 20, 54, 0 }, { 43, -12, 2, 20, 54, 0 }, { 44, -13, 2, 20, 54, 0 }, { 45, -14, 1, 20, 54, 0 }, + { 46, -15, 1, 20, 54, 0 }, { 47, -16, 0, 20, 54, 0 }, { 48, -17, 0, 20, 54, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedDown25ToDown253, { + { 15, 15, 15, 28, 54, 2 }, { 14, 14, 15, 28, 54, 2 }, { 13, 13, 14, 28, 54, 2 }, { 12, 12, 14, 28, 54, 2 }, { 11, 11, 13, 28, 54, 2 }, + { 10, 10, 13, 28, 54, 2 }, { 9, 9, 12, 28, 54, 2 }, { 8, 8, 12, 28, 54, 1 }, { 7, 7, 11, 28, 54, 1 }, { 6, 6, 11, 28, 54, 1 }, + { 5, 5, 10, 28, 54, 1 }, { 4, 4, 10, 28, 54, 1 }, { 3, 3, 9, 28, 54, 1 }, { 2, 2, 9, 28, 54, 1 }, { 1, 1, 8, 28, 54, 1 }, + { 0, 0, 8, 28, 54, 1 }, { -1, -1, 7, 28, 54, 1 }, { -2, -2, 7, 28, 54, 1 }, { -3, -3, 6, 28, 54, 1 }, { -4, -4, 6, 28, 54, 1 }, + { -5, -5, 5, 28, 54, 1 }, { -6, -6, 5, 28, 54, 1 }, { -7, -7, 4, 28, 54, 1 }, { -8, -8, 4, 28, 54, 0 }, { -9, -9, 3, 28, 54, 0 }, + { -10, -10, 3, 28, 54, 0 }, { -11, -11, 2, 28, 54, 0 }, { -12, -12, 2, 28, 54, 0 }, { -13, -13, 1, 28, 54, 0 }, { -14, -14, 1, 28, 54, 0 }, + { -15, -15, 0, 28, 54, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedDown25ToDown250, { + { 15, 16, 15, 4, 54, 4 }, { 14, 17, 15, 4, 54, 4 }, { 13, 18, 14, 4, 54, 4 }, { 12, 19, 14, 4, 54, 4 }, { 11, 20, 13, 4, 54, 4 }, + { 10, 21, 13, 4, 54, 4 }, { 9, 22, 12, 4, 54, 4 }, { 8, 23, 12, 4, 54, 3 }, { 7, 24, 11, 4, 54, 3 }, { 6, 25, 11, 4, 54, 3 }, + { 5, 26, 10, 4, 54, 3 }, { 4, 27, 10, 4, 54, 3 }, { 3, 28, 9, 4, 54, 3 }, { 2, 29, 9, 4, 54, 3 }, { 1, 30, 8, 4, 54, 3 }, + { 0, 31, 8, 4, 54, 3 }, { -1, 32, 7, 4, 54, 3 }, { -2, 33, 7, 4, 54, 3 }, { -3, 34, 6, 4, 54, 3 }, { -4, 35, 6, 4, 54, 3 }, + { -5, 36, 5, 4, 54, 3 }, { -6, 37, 5, 4, 54, 3 }, { -7, 38, 4, 4, 54, 3 }, { -8, 39, 4, 4, 54, 0 }, { -9, 40, 3, 4, 54, 0 }, + { -10, 41, 3, 4, 54, 0 }, { -11, 42, 2, 4, 54, 0 }, { -12, 43, 2, 4, 54, 0 }, { -13, 44, 1, 4, 54, 0 }, { -14, 45, 1, 4, 54, 0 }, + { -15, 46, 0, 4, 54, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedDown25ToDown251, { + { 16, 16, 16, 12, 54, 4 }, { 17, 17, 15, 12, 54, 4 }, { 18, 18, 15, 12, 54, 4 }, { 19, 19, 14, 12, 54, 4 }, { 20, 20, 14, 12, 54, 4 }, + { 21, 21, 13, 12, 54, 4 }, { 22, 22, 13, 12, 54, 4 }, { 23, 23, 12, 12, 54, 4 }, { 24, 24, 12, 12, 54, 3 }, { 25, 25, 11, 12, 54, 3 }, + { 26, 26, 11, 12, 54, 3 }, { 27, 27, 10, 12, 54, 3 }, { 28, 28, 10, 12, 54, 3 }, { 29, 29, 9, 12, 54, 3 }, { 30, 30, 9, 12, 54, 3 }, + { 31, 31, 8, 12, 54, 3 }, { 32, 32, 8, 12, 54, 3 }, { 33, 33, 7, 12, 54, 3 }, { 34, 34, 7, 12, 54, 3 }, { 35, 35, 6, 12, 54, 3 }, + { 36, 36, 6, 12, 54, 3 }, { 37, 37, 5, 12, 54, 3 }, { 38, 38, 5, 12, 54, 3 }, { 39, 39, 4, 12, 54, 3 }, { 40, 40, 4, 12, 54, 0 }, + { 41, 41, 3, 12, 54, 0 }, { 42, 42, 3, 12, 54, 0 }, { 43, 43, 2, 12, 54, 0 }, { 44, 44, 2, 12, 54, 0 }, { 45, 45, 1, 12, 54, 0 }, + { 46, 46, 1, 12, 54, 0 }, { 47, 47, 0, 12, 54, 0 }, { 48, 48, 0, 12, 54, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedDown25ToDown252, { + { 16, 15, 16, 20, 54, 4 }, { 17, 14, 15, 20, 54, 4 }, { 18, 13, 15, 20, 54, 4 }, { 19, 12, 14, 20, 54, 4 }, { 20, 11, 14, 20, 54, 4 }, + { 21, 10, 13, 20, 54, 4 }, { 22, 9, 13, 20, 54, 4 }, { 23, 8, 12, 20, 54, 4 }, { 24, 7, 12, 20, 54, 3 }, { 25, 6, 11, 20, 54, 3 }, + { 26, 5, 11, 20, 54, 3 }, { 27, 4, 10, 20, 54, 3 }, { 28, 3, 10, 20, 54, 3 }, { 29, 2, 9, 20, 54, 3 }, { 30, 1, 9, 20, 54, 3 }, + { 31, 0, 8, 20, 54, 3 }, { 32, -1, 8, 20, 54, 3 }, { 33, -2, 7, 20, 54, 3 }, { 34, -3, 7, 20, 54, 3 }, { 35, -4, 6, 20, 54, 3 }, + { 36, -5, 6, 20, 54, 3 }, { 37, -6, 5, 20, 54, 3 }, { 38, -7, 5, 20, 54, 3 }, { 39, -8, 4, 20, 54, 3 }, { 40, -9, 4, 20, 54, 0 }, + { 41, -10, 3, 20, 54, 0 }, { 42, -11, 3, 20, 54, 0 }, { 43, -12, 2, 20, 54, 0 }, { 44, -13, 2, 20, 54, 0 }, { 45, -14, 1, 20, 54, 0 }, + { 46, -15, 1, 20, 54, 0 }, { 47, -16, 0, 20, 54, 0 }, { 48, -17, 0, 20, 54, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedDown25ToDown253, { + { 15, 15, 15, 28, 54, 4 }, { 14, 14, 15, 28, 54, 4 }, { 13, 13, 14, 28, 54, 4 }, { 12, 12, 14, 28, 54, 4 }, { 11, 11, 13, 28, 54, 4 }, + { 10, 10, 13, 28, 54, 4 }, { 9, 9, 12, 28, 54, 4 }, { 8, 8, 12, 28, 54, 3 }, { 7, 7, 11, 28, 54, 3 }, { 6, 6, 11, 28, 54, 3 }, + { 5, 5, 10, 28, 54, 3 }, { 4, 4, 10, 28, 54, 3 }, { 3, 3, 9, 28, 54, 3 }, { 2, 2, 9, 28, 54, 3 }, { 1, 1, 8, 28, 54, 3 }, + { 0, 0, 8, 28, 54, 3 }, { -1, -1, 7, 28, 54, 3 }, { -2, -2, 7, 28, 54, 3 }, { -3, -3, 6, 28, 54, 3 }, { -4, -4, 6, 28, 54, 3 }, + { -5, -5, 5, 28, 54, 3 }, { -6, -6, 5, 28, 54, 3 }, { -7, -7, 4, 28, 54, 3 }, { -8, -8, 4, 28, 54, 0 }, { -9, -9, 3, 28, 54, 0 }, + { -10, -10, 3, 28, 54, 0 }, { -11, -11, 2, 28, 54, 0 }, { -12, -12, 2, 28, 54, 0 }, { -13, -13, 1, 28, 54, 0 }, { -14, -14, 1, 28, 54, 0 }, + { -15, -15, 0, 28, 54, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedFlatToLeftBankedUp250, { + { 15, 16, 0, 4, 0, 2 }, { 14, 17, 0, 4, 0, 2 }, { 13, 18, 0, 4, 0, 2 }, { 12, 19, 0, 4, 0, 2 }, { 11, 20, 0, 4, 0, 2 }, + { 10, 21, 0, 4, 0, 2 }, { 9, 22, 0, 4, 0, 2 }, { 8, 23, 1, 4, 50, 2 }, { 7, 24, 1, 4, 50, 2 }, { 6, 25, 1, 4, 50, 2 }, + { 5, 26, 1, 4, 50, 2 }, { 4, 27, 1, 4, 50, 2 }, { 3, 28, 1, 4, 50, 2 }, { 2, 29, 2, 4, 50, 2 }, { 1, 30, 2, 4, 50, 2 }, + { 0, 31, 2, 4, 50, 2 }, { -1, 32, 2, 4, 50, 2 }, { -2, 33, 3, 4, 50, 2 }, { -3, 34, 3, 4, 50, 2 }, { -4, 35, 3, 4, 50, 2 }, + { -5, 36, 4, 4, 50, 2 }, { -6, 37, 4, 4, 50, 2 }, { -7, 38, 4, 4, 50, 2 }, { -8, 39, 5, 4, 51, 2 }, { -9, 40, 5, 4, 51, 2 }, + { -10, 41, 5, 4, 51, 2 }, { -11, 42, 6, 4, 51, 2 }, { -12, 43, 6, 4, 51, 2 }, { -13, 44, 7, 4, 51, 2 }, { -14, 45, 7, 4, 51, 2 }, + { -15, 46, 8, 4, 51, 2 }, { -16, 47, 8, 4, 51, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedFlatToLeftBankedUp251, { + { 16, 16, 0, 12, 0, 2 }, { 17, 17, 0, 12, 0, 2 }, { 18, 18, 0, 12, 0, 2 }, { 19, 19, 0, 12, 0, 2 }, { 20, 20, 0, 12, 0, 2 }, + { 21, 21, 0, 12, 0, 2 }, { 22, 22, 0, 12, 0, 2 }, { 23, 23, 0, 12, 0, 2 }, { 24, 24, 1, 12, 50, 2 }, { 25, 25, 1, 12, 50, 2 }, + { 26, 26, 1, 12, 50, 2 }, { 27, 27, 1, 12, 50, 2 }, { 28, 28, 1, 12, 50, 2 }, { 29, 29, 1, 12, 50, 2 }, { 30, 30, 2, 12, 50, 2 }, + { 31, 31, 2, 12, 50, 2 }, { 32, 32, 2, 12, 50, 2 }, { 33, 33, 2, 12, 50, 2 }, { 34, 34, 3, 12, 50, 2 }, { 35, 35, 3, 12, 50, 2 }, + { 36, 36, 3, 12, 50, 2 }, { 37, 37, 4, 12, 50, 2 }, { 38, 38, 4, 12, 50, 2 }, { 39, 39, 4, 12, 50, 2 }, { 40, 40, 5, 12, 51, 2 }, + { 41, 41, 5, 12, 51, 2 }, { 42, 42, 5, 12, 51, 2 }, { 43, 43, 6, 12, 51, 2 }, { 44, 44, 6, 12, 51, 2 }, { 45, 45, 7, 12, 51, 2 }, + { 46, 46, 7, 12, 51, 2 }, { 47, 47, 8, 12, 51, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedFlatToLeftBankedUp252, { + { 16, 15, 0, 20, 0, 2 }, { 17, 14, 0, 20, 0, 2 }, { 18, 13, 0, 20, 0, 2 }, { 19, 12, 0, 20, 0, 2 }, { 20, 11, 0, 20, 0, 2 }, + { 21, 10, 0, 20, 0, 2 }, { 22, 9, 0, 20, 0, 2 }, { 23, 8, 0, 20, 0, 2 }, { 24, 7, 1, 20, 50, 2 }, { 25, 6, 1, 20, 50, 2 }, + { 26, 5, 1, 20, 50, 2 }, { 27, 4, 1, 20, 50, 2 }, { 28, 3, 1, 20, 50, 2 }, { 29, 2, 1, 20, 50, 2 }, { 30, 1, 2, 20, 50, 2 }, + { 31, 0, 2, 20, 50, 2 }, { 32, -1, 2, 20, 50, 2 }, { 33, -2, 2, 20, 50, 2 }, { 34, -3, 3, 20, 50, 2 }, { 35, -4, 3, 20, 50, 2 }, + { 36, -5, 3, 20, 50, 2 }, { 37, -6, 4, 20, 50, 2 }, { 38, -7, 4, 20, 50, 2 }, { 39, -8, 4, 20, 50, 2 }, { 40, -9, 5, 20, 51, 2 }, + { 41, -10, 5, 20, 51, 2 }, { 42, -11, 5, 20, 51, 2 }, { 43, -12, 6, 20, 51, 2 }, { 44, -13, 6, 20, 51, 2 }, { 45, -14, 7, 20, 51, 2 }, + { 46, -15, 7, 20, 51, 2 }, { 47, -16, 8, 20, 51, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedFlatToLeftBankedUp253, { + { 15, 15, 0, 28, 0, 2 }, { 14, 14, 0, 28, 0, 2 }, { 13, 13, 0, 28, 0, 2 }, { 12, 12, 0, 28, 0, 2 }, { 11, 11, 0, 28, 0, 2 }, + { 10, 10, 0, 28, 0, 2 }, { 9, 9, 0, 28, 0, 2 }, { 8, 8, 1, 28, 50, 2 }, { 7, 7, 1, 28, 50, 2 }, { 6, 6, 1, 28, 50, 2 }, + { 5, 5, 1, 28, 50, 2 }, { 4, 4, 1, 28, 50, 2 }, { 3, 3, 1, 28, 50, 2 }, { 2, 2, 2, 28, 50, 2 }, { 1, 1, 2, 28, 50, 2 }, + { 0, 0, 2, 28, 50, 2 }, { -1, -1, 2, 28, 50, 2 }, { -2, -2, 3, 28, 50, 2 }, { -3, -3, 3, 28, 50, 2 }, { -4, -4, 3, 28, 50, 2 }, + { -5, -5, 4, 28, 50, 2 }, { -6, -6, 4, 28, 50, 2 }, { -7, -7, 4, 28, 50, 2 }, { -8, -8, 5, 28, 51, 2 }, { -9, -9, 5, 28, 51, 2 }, + { -10, -10, 5, 28, 51, 2 }, { -11, -11, 6, 28, 51, 2 }, { -12, -12, 6, 28, 51, 2 }, { -13, -13, 7, 28, 51, 2 }, { -14, -14, 7, 28, 51, 2 }, + { -15, -15, 8, 28, 51, 2 }, { -16, -16, 8, 28, 51, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedFlatToRightBankedUp250, { + { 15, 16, 0, 4, 0, 4 }, { 14, 17, 0, 4, 0, 4 }, { 13, 18, 0, 4, 0, 4 }, { 12, 19, 0, 4, 0, 4 }, { 11, 20, 0, 4, 0, 4 }, + { 10, 21, 0, 4, 0, 4 }, { 9, 22, 0, 4, 0, 4 }, { 8, 23, 1, 4, 50, 4 }, { 7, 24, 1, 4, 50, 4 }, { 6, 25, 1, 4, 50, 4 }, + { 5, 26, 1, 4, 50, 4 }, { 4, 27, 1, 4, 50, 4 }, { 3, 28, 1, 4, 50, 4 }, { 2, 29, 2, 4, 50, 4 }, { 1, 30, 2, 4, 50, 4 }, + { 0, 31, 2, 4, 50, 4 }, { -1, 32, 2, 4, 50, 4 }, { -2, 33, 3, 4, 50, 4 }, { -3, 34, 3, 4, 50, 4 }, { -4, 35, 3, 4, 50, 4 }, + { -5, 36, 4, 4, 50, 4 }, { -6, 37, 4, 4, 50, 4 }, { -7, 38, 4, 4, 50, 4 }, { -8, 39, 5, 4, 51, 4 }, { -9, 40, 5, 4, 51, 4 }, + { -10, 41, 5, 4, 51, 4 }, { -11, 42, 6, 4, 51, 4 }, { -12, 43, 6, 4, 51, 4 }, { -13, 44, 7, 4, 51, 4 }, { -14, 45, 7, 4, 51, 4 }, + { -15, 46, 8, 4, 51, 4 }, { -16, 47, 8, 4, 51, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedFlatToRightBankedUp251, { + { 16, 16, 0, 12, 0, 4 }, { 17, 17, 0, 12, 0, 4 }, { 18, 18, 0, 12, 0, 4 }, { 19, 19, 0, 12, 0, 4 }, { 20, 20, 0, 12, 0, 4 }, + { 21, 21, 0, 12, 0, 4 }, { 22, 22, 0, 12, 0, 4 }, { 23, 23, 0, 12, 0, 4 }, { 24, 24, 1, 12, 50, 4 }, { 25, 25, 1, 12, 50, 4 }, + { 26, 26, 1, 12, 50, 4 }, { 27, 27, 1, 12, 50, 4 }, { 28, 28, 1, 12, 50, 4 }, { 29, 29, 1, 12, 50, 4 }, { 30, 30, 2, 12, 50, 4 }, + { 31, 31, 2, 12, 50, 4 }, { 32, 32, 2, 12, 50, 4 }, { 33, 33, 2, 12, 50, 4 }, { 34, 34, 3, 12, 50, 4 }, { 35, 35, 3, 12, 50, 4 }, + { 36, 36, 3, 12, 50, 4 }, { 37, 37, 4, 12, 50, 4 }, { 38, 38, 4, 12, 50, 4 }, { 39, 39, 4, 12, 50, 4 }, { 40, 40, 5, 12, 51, 4 }, + { 41, 41, 5, 12, 51, 4 }, { 42, 42, 5, 12, 51, 4 }, { 43, 43, 6, 12, 51, 4 }, { 44, 44, 6, 12, 51, 4 }, { 45, 45, 7, 12, 51, 4 }, + { 46, 46, 7, 12, 51, 4 }, { 47, 47, 8, 12, 51, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedFlatToRightBankedUp252, { + { 16, 15, 0, 20, 0, 4 }, { 17, 14, 0, 20, 0, 4 }, { 18, 13, 0, 20, 0, 4 }, { 19, 12, 0, 20, 0, 4 }, { 20, 11, 0, 20, 0, 4 }, + { 21, 10, 0, 20, 0, 4 }, { 22, 9, 0, 20, 0, 4 }, { 23, 8, 0, 20, 0, 4 }, { 24, 7, 1, 20, 50, 4 }, { 25, 6, 1, 20, 50, 4 }, + { 26, 5, 1, 20, 50, 4 }, { 27, 4, 1, 20, 50, 4 }, { 28, 3, 1, 20, 50, 4 }, { 29, 2, 1, 20, 50, 4 }, { 30, 1, 2, 20, 50, 4 }, + { 31, 0, 2, 20, 50, 4 }, { 32, -1, 2, 20, 50, 4 }, { 33, -2, 2, 20, 50, 4 }, { 34, -3, 3, 20, 50, 4 }, { 35, -4, 3, 20, 50, 4 }, + { 36, -5, 3, 20, 50, 4 }, { 37, -6, 4, 20, 50, 4 }, { 38, -7, 4, 20, 50, 4 }, { 39, -8, 4, 20, 50, 4 }, { 40, -9, 5, 20, 51, 4 }, + { 41, -10, 5, 20, 51, 4 }, { 42, -11, 5, 20, 51, 4 }, { 43, -12, 6, 20, 51, 4 }, { 44, -13, 6, 20, 51, 4 }, { 45, -14, 7, 20, 51, 4 }, + { 46, -15, 7, 20, 51, 4 }, { 47, -16, 8, 20, 51, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedFlatToRightBankedUp253, { + { 15, 15, 0, 28, 0, 4 }, { 14, 14, 0, 28, 0, 4 }, { 13, 13, 0, 28, 0, 4 }, { 12, 12, 0, 28, 0, 4 }, { 11, 11, 0, 28, 0, 4 }, + { 10, 10, 0, 28, 0, 4 }, { 9, 9, 0, 28, 0, 4 }, { 8, 8, 1, 28, 50, 4 }, { 7, 7, 1, 28, 50, 4 }, { 6, 6, 1, 28, 50, 4 }, + { 5, 5, 1, 28, 50, 4 }, { 4, 4, 1, 28, 50, 4 }, { 3, 3, 1, 28, 50, 4 }, { 2, 2, 2, 28, 50, 4 }, { 1, 1, 2, 28, 50, 4 }, + { 0, 0, 2, 28, 50, 4 }, { -1, -1, 2, 28, 50, 4 }, { -2, -2, 3, 28, 50, 4 }, { -3, -3, 3, 28, 50, 4 }, { -4, -4, 3, 28, 50, 4 }, + { -5, -5, 4, 28, 50, 4 }, { -6, -6, 4, 28, 50, 4 }, { -7, -7, 4, 28, 50, 4 }, { -8, -8, 5, 28, 51, 4 }, { -9, -9, 5, 28, 51, 4 }, + { -10, -10, 5, 28, 51, 4 }, { -11, -11, 6, 28, 51, 4 }, { -12, -12, 6, 28, 51, 4 }, { -13, -13, 7, 28, 51, 4 }, { -14, -14, 7, 28, 51, 4 }, + { -15, -15, 8, 28, 51, 4 }, { -16, -16, 8, 28, 51, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedUp25ToLeftBankedFlat0, { + { 15, 16, 1, 4, 51, 2 }, { 14, 17, 1, 4, 51, 2 }, { 13, 18, 2, 4, 51, 2 }, { 12, 19, 2, 4, 51, 2 }, { 11, 20, 2, 4, 51, 2 }, + { 10, 21, 3, 4, 51, 2 }, { 9, 22, 3, 4, 51, 2 }, { 8, 23, 4, 4, 50, 2 }, { 7, 24, 4, 4, 50, 2 }, { 6, 25, 4, 4, 50, 2 }, + { 5, 26, 5, 4, 50, 2 }, { 4, 27, 5, 4, 50, 2 }, { 3, 28, 5, 4, 50, 2 }, { 2, 29, 6, 4, 50, 2 }, { 1, 30, 6, 4, 50, 2 }, + { 0, 31, 6, 4, 50, 2 }, { -1, 32, 6, 4, 50, 2 }, { -2, 33, 7, 4, 50, 2 }, { -3, 34, 7, 4, 50, 2 }, { -4, 35, 7, 4, 50, 2 }, + { -5, 36, 7, 4, 50, 2 }, { -6, 37, 7, 4, 50, 2 }, { -7, 38, 7, 4, 50, 2 }, { -8, 39, 8, 4, 0, 2 }, { -9, 40, 8, 4, 0, 2 }, + { -10, 41, 8, 4, 0, 2 }, { -11, 42, 8, 4, 0, 2 }, { -12, 43, 8, 4, 0, 2 }, { -13, 44, 8, 4, 0, 2 }, { -14, 45, 8, 4, 0, 2 }, + { -15, 46, 8, 4, 0, 2 }, { -16, 47, 8, 4, 0, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedUp25ToLeftBankedFlat1, { + { 16, 16, 0, 12, 51, 2 }, { 17, 17, 1, 12, 51, 2 }, { 18, 18, 1, 12, 51, 2 }, { 19, 19, 2, 12, 51, 2 }, { 20, 20, 2, 12, 51, 2 }, + { 21, 21, 2, 12, 51, 2 }, { 22, 22, 3, 12, 51, 2 }, { 23, 23, 3, 12, 51, 2 }, { 24, 24, 4, 12, 50, 2 }, { 25, 25, 4, 12, 50, 2 }, + { 26, 26, 4, 12, 50, 2 }, { 27, 27, 5, 12, 50, 2 }, { 28, 28, 5, 12, 50, 2 }, { 29, 29, 5, 12, 50, 2 }, { 30, 30, 6, 12, 50, 2 }, + { 31, 31, 6, 12, 50, 2 }, { 32, 32, 6, 12, 50, 2 }, { 33, 33, 6, 12, 50, 2 }, { 34, 34, 7, 12, 50, 2 }, { 35, 35, 7, 12, 50, 2 }, + { 36, 36, 7, 12, 50, 2 }, { 37, 37, 7, 12, 50, 2 }, { 38, 38, 7, 12, 50, 2 }, { 39, 39, 7, 12, 50, 2 }, { 40, 40, 8, 12, 0, 2 }, + { 41, 41, 8, 12, 0, 2 }, { 42, 42, 8, 12, 0, 2 }, { 43, 43, 8, 12, 0, 2 }, { 44, 44, 8, 12, 0, 2 }, { 45, 45, 8, 12, 0, 2 }, + { 46, 46, 8, 12, 0, 2 }, { 47, 47, 8, 12, 0, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedUp25ToLeftBankedFlat2, { + { 16, 15, 0, 20, 51, 2 }, { 17, 14, 1, 20, 51, 2 }, { 18, 13, 1, 20, 51, 2 }, { 19, 12, 2, 20, 51, 2 }, { 20, 11, 2, 20, 51, 2 }, + { 21, 10, 2, 20, 51, 2 }, { 22, 9, 3, 20, 51, 2 }, { 23, 8, 3, 20, 51, 2 }, { 24, 7, 4, 20, 50, 2 }, { 25, 6, 4, 20, 50, 2 }, + { 26, 5, 4, 20, 50, 2 }, { 27, 4, 5, 20, 50, 2 }, { 28, 3, 5, 20, 50, 2 }, { 29, 2, 5, 20, 50, 2 }, { 30, 1, 6, 20, 50, 2 }, + { 31, 0, 6, 20, 50, 2 }, { 32, -1, 6, 20, 50, 2 }, { 33, -2, 6, 20, 50, 2 }, { 34, -3, 7, 20, 50, 2 }, { 35, -4, 7, 20, 50, 2 }, + { 36, -5, 7, 20, 50, 2 }, { 37, -6, 7, 20, 50, 2 }, { 38, -7, 7, 20, 50, 2 }, { 39, -8, 7, 20, 50, 2 }, { 40, -9, 8, 20, 0, 2 }, + { 41, -10, 8, 20, 0, 2 }, { 42, -11, 8, 20, 0, 2 }, { 43, -12, 8, 20, 0, 2 }, { 44, -13, 8, 20, 0, 2 }, { 45, -14, 8, 20, 0, 2 }, + { 46, -15, 8, 20, 0, 2 }, { 47, -16, 8, 20, 0, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedUp25ToLeftBankedFlat3, { + { 15, 15, 1, 28, 51, 2 }, { 14, 14, 1, 28, 51, 2 }, { 13, 13, 2, 28, 51, 2 }, { 12, 12, 2, 28, 51, 2 }, { 11, 11, 2, 28, 51, 2 }, + { 10, 10, 3, 28, 51, 2 }, { 9, 9, 3, 28, 51, 2 }, { 8, 8, 4, 28, 50, 2 }, { 7, 7, 4, 28, 50, 2 }, { 6, 6, 4, 28, 50, 2 }, + { 5, 5, 5, 28, 50, 2 }, { 4, 4, 5, 28, 50, 2 }, { 3, 3, 5, 28, 50, 2 }, { 2, 2, 6, 28, 50, 2 }, { 1, 1, 6, 28, 50, 2 }, + { 0, 0, 6, 28, 50, 2 }, { -1, -1, 6, 28, 50, 2 }, { -2, -2, 7, 28, 50, 2 }, { -3, -3, 7, 28, 50, 2 }, { -4, -4, 7, 28, 50, 2 }, + { -5, -5, 7, 28, 50, 2 }, { -6, -6, 7, 28, 50, 2 }, { -7, -7, 7, 28, 50, 2 }, { -8, -8, 8, 28, 0, 2 }, { -9, -9, 8, 28, 0, 2 }, + { -10, -10, 8, 28, 0, 2 }, { -11, -11, 8, 28, 0, 2 }, { -12, -12, 8, 28, 0, 2 }, { -13, -13, 8, 28, 0, 2 }, { -14, -14, 8, 28, 0, 2 }, + { -15, -15, 8, 28, 0, 2 }, { -16, -16, 8, 28, 0, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedUp25ToRightBankedFlat0, { + { 15, 16, 1, 4, 51, 4 }, { 14, 17, 1, 4, 51, 4 }, { 13, 18, 2, 4, 51, 4 }, { 12, 19, 2, 4, 51, 4 }, { 11, 20, 2, 4, 51, 4 }, + { 10, 21, 3, 4, 51, 4 }, { 9, 22, 3, 4, 51, 4 }, { 8, 23, 4, 4, 50, 4 }, { 7, 24, 4, 4, 50, 4 }, { 6, 25, 4, 4, 50, 4 }, + { 5, 26, 5, 4, 50, 4 }, { 4, 27, 5, 4, 50, 4 }, { 3, 28, 5, 4, 50, 4 }, { 2, 29, 6, 4, 50, 4 }, { 1, 30, 6, 4, 50, 4 }, + { 0, 31, 6, 4, 50, 4 }, { -1, 32, 6, 4, 50, 4 }, { -2, 33, 7, 4, 50, 4 }, { -3, 34, 7, 4, 50, 4 }, { -4, 35, 7, 4, 50, 4 }, + { -5, 36, 7, 4, 50, 4 }, { -6, 37, 7, 4, 50, 4 }, { -7, 38, 7, 4, 50, 4 }, { -8, 39, 8, 4, 0, 4 }, { -9, 40, 8, 4, 0, 4 }, + { -10, 41, 8, 4, 0, 4 }, { -11, 42, 8, 4, 0, 4 }, { -12, 43, 8, 4, 0, 4 }, { -13, 44, 8, 4, 0, 4 }, { -14, 45, 8, 4, 0, 4 }, + { -15, 46, 8, 4, 0, 4 }, { -16, 47, 8, 4, 0, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedUp25ToRightBankedFlat1, { + { 16, 16, 0, 12, 51, 4 }, { 17, 17, 1, 12, 51, 4 }, { 18, 18, 1, 12, 51, 4 }, { 19, 19, 2, 12, 51, 4 }, { 20, 20, 2, 12, 51, 4 }, + { 21, 21, 2, 12, 51, 4 }, { 22, 22, 3, 12, 51, 4 }, { 23, 23, 3, 12, 51, 4 }, { 24, 24, 4, 12, 50, 4 }, { 25, 25, 4, 12, 50, 4 }, + { 26, 26, 4, 12, 50, 4 }, { 27, 27, 5, 12, 50, 4 }, { 28, 28, 5, 12, 50, 4 }, { 29, 29, 5, 12, 50, 4 }, { 30, 30, 6, 12, 50, 4 }, + { 31, 31, 6, 12, 50, 4 }, { 32, 32, 6, 12, 50, 4 }, { 33, 33, 6, 12, 50, 4 }, { 34, 34, 7, 12, 50, 4 }, { 35, 35, 7, 12, 50, 4 }, + { 36, 36, 7, 12, 50, 4 }, { 37, 37, 7, 12, 50, 4 }, { 38, 38, 7, 12, 50, 4 }, { 39, 39, 7, 12, 50, 4 }, { 40, 40, 8, 12, 0, 4 }, + { 41, 41, 8, 12, 0, 4 }, { 42, 42, 8, 12, 0, 4 }, { 43, 43, 8, 12, 0, 4 }, { 44, 44, 8, 12, 0, 4 }, { 45, 45, 8, 12, 0, 4 }, + { 46, 46, 8, 12, 0, 4 }, { 47, 47, 8, 12, 0, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedUp25ToRightBankedFlat2, { + { 16, 15, 0, 20, 51, 4 }, { 17, 14, 1, 20, 51, 4 }, { 18, 13, 1, 20, 51, 4 }, { 19, 12, 2, 20, 51, 4 }, { 20, 11, 2, 20, 51, 4 }, + { 21, 10, 2, 20, 51, 4 }, { 22, 9, 3, 20, 51, 4 }, { 23, 8, 3, 20, 51, 4 }, { 24, 7, 4, 20, 50, 4 }, { 25, 6, 4, 20, 50, 4 }, + { 26, 5, 4, 20, 50, 4 }, { 27, 4, 5, 20, 50, 4 }, { 28, 3, 5, 20, 50, 4 }, { 29, 2, 5, 20, 50, 4 }, { 30, 1, 6, 20, 50, 4 }, + { 31, 0, 6, 20, 50, 4 }, { 32, -1, 6, 20, 50, 4 }, { 33, -2, 6, 20, 50, 4 }, { 34, -3, 7, 20, 50, 4 }, { 35, -4, 7, 20, 50, 4 }, + { 36, -5, 7, 20, 50, 4 }, { 37, -6, 7, 20, 50, 4 }, { 38, -7, 7, 20, 50, 4 }, { 39, -8, 7, 20, 50, 4 }, { 40, -9, 8, 20, 0, 4 }, + { 41, -10, 8, 20, 0, 4 }, { 42, -11, 8, 20, 0, 4 }, { 43, -12, 8, 20, 0, 4 }, { 44, -13, 8, 20, 0, 4 }, { 45, -14, 8, 20, 0, 4 }, + { 46, -15, 8, 20, 0, 4 }, { 47, -16, 8, 20, 0, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedUp25ToRightBankedFlat3, { + { 15, 15, 1, 28, 51, 4 }, { 14, 14, 1, 28, 51, 4 }, { 13, 13, 2, 28, 51, 4 }, { 12, 12, 2, 28, 51, 4 }, { 11, 11, 2, 28, 51, 4 }, + { 10, 10, 3, 28, 51, 4 }, { 9, 9, 3, 28, 51, 4 }, { 8, 8, 4, 28, 50, 4 }, { 7, 7, 4, 28, 50, 4 }, { 6, 6, 4, 28, 50, 4 }, + { 5, 5, 5, 28, 50, 4 }, { 4, 4, 5, 28, 50, 4 }, { 3, 3, 5, 28, 50, 4 }, { 2, 2, 6, 28, 50, 4 }, { 1, 1, 6, 28, 50, 4 }, + { 0, 0, 6, 28, 50, 4 }, { -1, -1, 6, 28, 50, 4 }, { -2, -2, 7, 28, 50, 4 }, { -3, -3, 7, 28, 50, 4 }, { -4, -4, 7, 28, 50, 4 }, + { -5, -5, 7, 28, 50, 4 }, { -6, -6, 7, 28, 50, 4 }, { -7, -7, 7, 28, 50, 4 }, { -8, -8, 8, 28, 0, 4 }, { -9, -9, 8, 28, 0, 4 }, + { -10, -10, 8, 28, 0, 4 }, { -11, -11, 8, 28, 0, 4 }, { -12, -12, 8, 28, 0, 4 }, { -13, -13, 8, 28, 0, 4 }, { -14, -14, 8, 28, 0, 4 }, + { -15, -15, 8, 28, 0, 4 }, { -16, -16, 8, 28, 0, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedFlatToLeftBankedDown250, { + { 15, 16, 8, 4, 0, 2 }, { 14, 17, 8, 4, 0, 2 }, { 13, 18, 8, 4, 0, 2 }, { 12, 19, 8, 4, 0, 2 }, { 11, 20, 8, 4, 0, 2 }, + { 10, 21, 8, 4, 0, 2 }, { 9, 22, 8, 4, 0, 2 }, { 8, 23, 7, 4, 53, 2 }, { 7, 24, 7, 4, 53, 2 }, { 6, 25, 7, 4, 53, 2 }, + { 5, 26, 7, 4, 53, 2 }, { 4, 27, 7, 4, 53, 2 }, { 3, 28, 7, 4, 53, 2 }, { 2, 29, 6, 4, 53, 2 }, { 1, 30, 6, 4, 53, 2 }, + { 0, 31, 6, 4, 53, 2 }, { -1, 32, 6, 4, 53, 2 }, { -2, 33, 5, 4, 53, 2 }, { -3, 34, 5, 4, 53, 2 }, { -4, 35, 5, 4, 53, 2 }, + { -5, 36, 4, 4, 53, 2 }, { -6, 37, 4, 4, 53, 2 }, { -7, 38, 4, 4, 53, 2 }, { -8, 39, 3, 4, 54, 2 }, { -9, 40, 3, 4, 54, 2 }, + { -10, 41, 3, 4, 54, 2 }, { -11, 42, 2, 4, 54, 2 }, { -12, 43, 2, 4, 54, 2 }, { -13, 44, 1, 4, 54, 2 }, { -14, 45, 1, 4, 54, 2 }, + { -15, 46, 0, 4, 54, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedFlatToLeftBankedDown251, { + { 16, 16, 8, 12, 0, 2 }, { 17, 17, 8, 12, 0, 2 }, { 18, 18, 8, 12, 0, 2 }, { 19, 19, 8, 12, 0, 2 }, { 20, 20, 8, 12, 0, 2 }, + { 21, 21, 8, 12, 0, 2 }, { 22, 22, 8, 12, 0, 2 }, { 23, 23, 8, 12, 0, 2 }, { 24, 24, 7, 12, 53, 2 }, { 25, 25, 7, 12, 53, 2 }, + { 26, 26, 7, 12, 53, 2 }, { 27, 27, 7, 12, 53, 2 }, { 28, 28, 7, 12, 53, 2 }, { 29, 29, 7, 12, 53, 2 }, { 30, 30, 6, 12, 53, 2 }, + { 31, 31, 6, 12, 53, 2 }, { 32, 32, 6, 12, 53, 2 }, { 33, 33, 6, 12, 53, 2 }, { 34, 34, 5, 12, 53, 2 }, { 35, 35, 5, 12, 53, 2 }, + { 36, 36, 5, 12, 53, 2 }, { 37, 37, 4, 12, 53, 2 }, { 38, 38, 4, 12, 53, 2 }, { 39, 39, 4, 12, 53, 2 }, { 40, 40, 3, 12, 54, 2 }, + { 41, 41, 3, 12, 54, 2 }, { 42, 42, 3, 12, 54, 2 }, { 43, 43, 2, 12, 54, 2 }, { 44, 44, 2, 12, 54, 2 }, { 45, 45, 1, 12, 54, 2 }, + { 46, 46, 1, 12, 54, 2 }, { 47, 47, 0, 12, 54, 2 }, { 48, 48, 0, 12, 54, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedFlatToLeftBankedDown252, { + { 16, 15, 8, 20, 0, 2 }, { 17, 14, 8, 20, 0, 2 }, { 18, 13, 8, 20, 0, 2 }, { 19, 12, 8, 20, 0, 2 }, { 20, 11, 8, 20, 0, 2 }, + { 21, 10, 8, 20, 0, 2 }, { 22, 9, 8, 20, 0, 2 }, { 23, 8, 8, 20, 0, 2 }, { 24, 7, 7, 20, 53, 2 }, { 25, 6, 7, 20, 53, 2 }, + { 26, 5, 7, 20, 53, 2 }, { 27, 4, 7, 20, 53, 2 }, { 28, 3, 7, 20, 53, 2 }, { 29, 2, 7, 20, 53, 2 }, { 30, 1, 6, 20, 53, 2 }, + { 31, 0, 6, 20, 53, 2 }, { 32, -1, 6, 20, 53, 2 }, { 33, -2, 6, 20, 53, 2 }, { 34, -3, 5, 20, 53, 2 }, { 35, -4, 5, 20, 53, 2 }, + { 36, -5, 5, 20, 53, 2 }, { 37, -6, 4, 20, 53, 2 }, { 38, -7, 4, 20, 53, 2 }, { 39, -8, 4, 20, 53, 2 }, { 40, -9, 3, 20, 54, 2 }, + { 41, -10, 3, 20, 54, 2 }, { 42, -11, 3, 20, 54, 2 }, { 43, -12, 2, 20, 54, 2 }, { 44, -13, 2, 20, 54, 2 }, { 45, -14, 1, 20, 54, 2 }, + { 46, -15, 1, 20, 54, 2 }, { 47, -16, 0, 20, 54, 2 }, { 48, -17, 0, 20, 54, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedFlatToLeftBankedDown253, { + { 15, 15, 8, 28, 0, 2 }, { 14, 14, 8, 28, 0, 2 }, { 13, 13, 8, 28, 0, 2 }, { 12, 12, 8, 28, 0, 2 }, { 11, 11, 8, 28, 0, 2 }, + { 10, 10, 8, 28, 0, 2 }, { 9, 9, 8, 28, 0, 2 }, { 8, 8, 7, 28, 53, 2 }, { 7, 7, 7, 28, 53, 2 }, { 6, 6, 7, 28, 53, 2 }, + { 5, 5, 7, 28, 53, 2 }, { 4, 4, 7, 28, 53, 2 }, { 3, 3, 7, 28, 53, 2 }, { 2, 2, 6, 28, 53, 2 }, { 1, 1, 6, 28, 53, 2 }, + { 0, 0, 6, 28, 53, 2 }, { -1, -1, 6, 28, 53, 2 }, { -2, -2, 5, 28, 53, 2 }, { -3, -3, 5, 28, 53, 2 }, { -4, -4, 5, 28, 53, 2 }, + { -5, -5, 4, 28, 53, 2 }, { -6, -6, 4, 28, 53, 2 }, { -7, -7, 4, 28, 53, 2 }, { -8, -8, 3, 28, 54, 2 }, { -9, -9, 3, 28, 54, 2 }, + { -10, -10, 3, 28, 54, 2 }, { -11, -11, 2, 28, 54, 2 }, { -12, -12, 2, 28, 54, 2 }, { -13, -13, 1, 28, 54, 2 }, { -14, -14, 1, 28, 54, 2 }, + { -15, -15, 0, 28, 54, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedFlatToRightBankedDown250, { + { 15, 16, 8, 4, 0, 4 }, { 14, 17, 8, 4, 0, 4 }, { 13, 18, 8, 4, 0, 4 }, { 12, 19, 8, 4, 0, 4 }, { 11, 20, 8, 4, 0, 4 }, + { 10, 21, 8, 4, 0, 4 }, { 9, 22, 8, 4, 0, 4 }, { 8, 23, 7, 4, 53, 4 }, { 7, 24, 7, 4, 53, 4 }, { 6, 25, 7, 4, 53, 4 }, + { 5, 26, 7, 4, 53, 4 }, { 4, 27, 7, 4, 53, 4 }, { 3, 28, 7, 4, 53, 4 }, { 2, 29, 6, 4, 53, 4 }, { 1, 30, 6, 4, 53, 4 }, + { 0, 31, 6, 4, 53, 4 }, { -1, 32, 6, 4, 53, 4 }, { -2, 33, 5, 4, 53, 4 }, { -3, 34, 5, 4, 53, 4 }, { -4, 35, 5, 4, 53, 4 }, + { -5, 36, 4, 4, 53, 4 }, { -6, 37, 4, 4, 53, 4 }, { -7, 38, 4, 4, 53, 4 }, { -8, 39, 3, 4, 54, 4 }, { -9, 40, 3, 4, 54, 4 }, + { -10, 41, 3, 4, 54, 4 }, { -11, 42, 2, 4, 54, 4 }, { -12, 43, 2, 4, 54, 4 }, { -13, 44, 1, 4, 54, 4 }, { -14, 45, 1, 4, 54, 4 }, + { -15, 46, 0, 4, 54, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedFlatToRightBankedDown251, { + { 16, 16, 8, 12, 0, 4 }, { 17, 17, 8, 12, 0, 4 }, { 18, 18, 8, 12, 0, 4 }, { 19, 19, 8, 12, 0, 4 }, { 20, 20, 8, 12, 0, 4 }, + { 21, 21, 8, 12, 0, 4 }, { 22, 22, 8, 12, 0, 4 }, { 23, 23, 8, 12, 0, 4 }, { 24, 24, 7, 12, 53, 4 }, { 25, 25, 7, 12, 53, 4 }, + { 26, 26, 7, 12, 53, 4 }, { 27, 27, 7, 12, 53, 4 }, { 28, 28, 7, 12, 53, 4 }, { 29, 29, 7, 12, 53, 4 }, { 30, 30, 6, 12, 53, 4 }, + { 31, 31, 6, 12, 53, 4 }, { 32, 32, 6, 12, 53, 4 }, { 33, 33, 6, 12, 53, 4 }, { 34, 34, 5, 12, 53, 4 }, { 35, 35, 5, 12, 53, 4 }, + { 36, 36, 5, 12, 53, 4 }, { 37, 37, 4, 12, 53, 4 }, { 38, 38, 4, 12, 53, 4 }, { 39, 39, 4, 12, 53, 4 }, { 40, 40, 3, 12, 54, 4 }, + { 41, 41, 3, 12, 54, 4 }, { 42, 42, 3, 12, 54, 4 }, { 43, 43, 2, 12, 54, 4 }, { 44, 44, 2, 12, 54, 4 }, { 45, 45, 1, 12, 54, 4 }, + { 46, 46, 1, 12, 54, 4 }, { 47, 47, 0, 12, 54, 4 }, { 48, 48, 0, 12, 54, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedFlatToRightBankedDown252, { + { 16, 15, 8, 20, 0, 4 }, { 17, 14, 8, 20, 0, 4 }, { 18, 13, 8, 20, 0, 4 }, { 19, 12, 8, 20, 0, 4 }, { 20, 11, 8, 20, 0, 4 }, + { 21, 10, 8, 20, 0, 4 }, { 22, 9, 8, 20, 0, 4 }, { 23, 8, 8, 20, 0, 4 }, { 24, 7, 7, 20, 53, 4 }, { 25, 6, 7, 20, 53, 4 }, + { 26, 5, 7, 20, 53, 4 }, { 27, 4, 7, 20, 53, 4 }, { 28, 3, 7, 20, 53, 4 }, { 29, 2, 7, 20, 53, 4 }, { 30, 1, 6, 20, 53, 4 }, + { 31, 0, 6, 20, 53, 4 }, { 32, -1, 6, 20, 53, 4 }, { 33, -2, 6, 20, 53, 4 }, { 34, -3, 5, 20, 53, 4 }, { 35, -4, 5, 20, 53, 4 }, + { 36, -5, 5, 20, 53, 4 }, { 37, -6, 4, 20, 53, 4 }, { 38, -7, 4, 20, 53, 4 }, { 39, -8, 4, 20, 53, 4 }, { 40, -9, 3, 20, 54, 4 }, + { 41, -10, 3, 20, 54, 4 }, { 42, -11, 3, 20, 54, 4 }, { 43, -12, 2, 20, 54, 4 }, { 44, -13, 2, 20, 54, 4 }, { 45, -14, 1, 20, 54, 4 }, + { 46, -15, 1, 20, 54, 4 }, { 47, -16, 0, 20, 54, 4 }, { 48, -17, 0, 20, 54, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedFlatToRightBankedDown253, { + { 15, 15, 8, 28, 0, 4 }, { 14, 14, 8, 28, 0, 4 }, { 13, 13, 8, 28, 0, 4 }, { 12, 12, 8, 28, 0, 4 }, { 11, 11, 8, 28, 0, 4 }, + { 10, 10, 8, 28, 0, 4 }, { 9, 9, 8, 28, 0, 4 }, { 8, 8, 7, 28, 53, 4 }, { 7, 7, 7, 28, 53, 4 }, { 6, 6, 7, 28, 53, 4 }, + { 5, 5, 7, 28, 53, 4 }, { 4, 4, 7, 28, 53, 4 }, { 3, 3, 7, 28, 53, 4 }, { 2, 2, 6, 28, 53, 4 }, { 1, 1, 6, 28, 53, 4 }, + { 0, 0, 6, 28, 53, 4 }, { -1, -1, 6, 28, 53, 4 }, { -2, -2, 5, 28, 53, 4 }, { -3, -3, 5, 28, 53, 4 }, { -4, -4, 5, 28, 53, 4 }, + { -5, -5, 4, 28, 53, 4 }, { -6, -6, 4, 28, 53, 4 }, { -7, -7, 4, 28, 53, 4 }, { -8, -8, 3, 28, 54, 4 }, { -9, -9, 3, 28, 54, 4 }, + { -10, -10, 3, 28, 54, 4 }, { -11, -11, 2, 28, 54, 4 }, { -12, -12, 2, 28, 54, 4 }, { -13, -13, 1, 28, 54, 4 }, { -14, -14, 1, 28, 54, 4 }, + { -15, -15, 0, 28, 54, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedDown25ToLeftBankedFlat0, { + { 15, 16, 7, 4, 54, 2 }, { 14, 17, 7, 4, 54, 2 }, { 13, 18, 6, 4, 54, 2 }, { 12, 19, 6, 4, 54, 2 }, { 11, 20, 6, 4, 54, 2 }, + { 10, 21, 5, 4, 54, 2 }, { 9, 22, 5, 4, 54, 2 }, { 8, 23, 4, 4, 53, 2 }, { 7, 24, 4, 4, 53, 2 }, { 6, 25, 4, 4, 53, 2 }, + { 5, 26, 3, 4, 53, 2 }, { 4, 27, 3, 4, 53, 2 }, { 3, 28, 3, 4, 53, 2 }, { 2, 29, 2, 4, 53, 2 }, { 1, 30, 2, 4, 53, 2 }, + { 0, 31, 2, 4, 53, 2 }, { -1, 32, 2, 4, 53, 2 }, { -2, 33, 1, 4, 53, 2 }, { -3, 34, 1, 4, 53, 2 }, { -4, 35, 1, 4, 53, 2 }, + { -5, 36, 1, 4, 53, 2 }, { -6, 37, 1, 4, 53, 2 }, { -7, 38, 1, 4, 53, 2 }, { -8, 39, 0, 4, 0, 2 }, { -9, 40, 0, 4, 0, 2 }, + { -10, 41, 0, 4, 0, 2 }, { -11, 42, 0, 4, 0, 2 }, { -12, 43, 0, 4, 0, 2 }, { -13, 44, 0, 4, 0, 2 }, { -14, 45, 0, 4, 0, 2 }, + { -15, 46, 0, 4, 0, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedDown25ToLeftBankedFlat1, { + { 16, 16, 8, 12, 54, 2 }, { 17, 17, 7, 12, 54, 2 }, { 18, 18, 7, 12, 54, 2 }, { 19, 19, 6, 12, 54, 2 }, { 20, 20, 6, 12, 54, 2 }, + { 21, 21, 6, 12, 54, 2 }, { 22, 22, 5, 12, 54, 2 }, { 23, 23, 5, 12, 54, 2 }, { 24, 24, 4, 12, 53, 2 }, { 25, 25, 4, 12, 53, 2 }, + { 26, 26, 4, 12, 53, 2 }, { 27, 27, 3, 12, 53, 2 }, { 28, 28, 3, 12, 53, 2 }, { 29, 29, 3, 12, 53, 2 }, { 30, 30, 2, 12, 53, 2 }, + { 31, 31, 2, 12, 53, 2 }, { 32, 32, 2, 12, 53, 2 }, { 33, 33, 2, 12, 53, 2 }, { 34, 34, 1, 12, 53, 2 }, { 35, 35, 1, 12, 53, 2 }, + { 36, 36, 1, 12, 53, 2 }, { 37, 37, 1, 12, 53, 2 }, { 38, 38, 1, 12, 53, 2 }, { 39, 39, 1, 12, 53, 2 }, { 40, 40, 0, 12, 0, 2 }, + { 41, 41, 0, 12, 0, 2 }, { 42, 42, 0, 12, 0, 2 }, { 43, 43, 0, 12, 0, 2 }, { 44, 44, 0, 12, 0, 2 }, { 45, 45, 0, 12, 0, 2 }, + { 46, 46, 0, 12, 0, 2 }, { 47, 47, 0, 12, 0, 2 }, { 48, 48, 0, 12, 0, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedDown25ToLeftBankedFlat2, { + { 16, 15, 8, 20, 54, 2 }, { 17, 14, 7, 20, 54, 2 }, { 18, 13, 7, 20, 54, 2 }, { 19, 12, 6, 20, 54, 2 }, { 20, 11, 6, 20, 54, 2 }, + { 21, 10, 6, 20, 54, 2 }, { 22, 9, 5, 20, 54, 2 }, { 23, 8, 5, 20, 54, 2 }, { 24, 7, 4, 20, 53, 2 }, { 25, 6, 4, 20, 53, 2 }, + { 26, 5, 4, 20, 53, 2 }, { 27, 4, 3, 20, 53, 2 }, { 28, 3, 3, 20, 53, 2 }, { 29, 2, 3, 20, 53, 2 }, { 30, 1, 2, 20, 53, 2 }, + { 31, 0, 2, 20, 53, 2 }, { 32, -1, 2, 20, 53, 2 }, { 33, -2, 2, 20, 53, 2 }, { 34, -3, 1, 20, 53, 2 }, { 35, -4, 1, 20, 53, 2 }, + { 36, -5, 1, 20, 53, 2 }, { 37, -6, 1, 20, 53, 2 }, { 38, -7, 1, 20, 53, 2 }, { 39, -8, 1, 20, 53, 2 }, { 40, -9, 0, 20, 0, 2 }, + { 41, -10, 0, 20, 0, 2 }, { 42, -11, 0, 20, 0, 2 }, { 43, -12, 0, 20, 0, 2 }, { 44, -13, 0, 20, 0, 2 }, { 45, -14, 0, 20, 0, 2 }, + { 46, -15, 0, 20, 0, 2 }, { 47, -16, 0, 20, 0, 2 }, { 48, -17, 0, 20, 0, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedDown25ToLeftBankedFlat3, { + { 15, 15, 7, 28, 54, 2 }, { 14, 14, 7, 28, 54, 2 }, { 13, 13, 6, 28, 54, 2 }, { 12, 12, 6, 28, 54, 2 }, { 11, 11, 6, 28, 54, 2 }, + { 10, 10, 5, 28, 54, 2 }, { 9, 9, 5, 28, 54, 2 }, { 8, 8, 4, 28, 53, 2 }, { 7, 7, 4, 28, 53, 2 }, { 6, 6, 4, 28, 53, 2 }, + { 5, 5, 3, 28, 53, 2 }, { 4, 4, 3, 28, 53, 2 }, { 3, 3, 3, 28, 53, 2 }, { 2, 2, 2, 28, 53, 2 }, { 1, 1, 2, 28, 53, 2 }, + { 0, 0, 2, 28, 53, 2 }, { -1, -1, 2, 28, 53, 2 }, { -2, -2, 1, 28, 53, 2 }, { -3, -3, 1, 28, 53, 2 }, { -4, -4, 1, 28, 53, 2 }, + { -5, -5, 1, 28, 53, 2 }, { -6, -6, 1, 28, 53, 2 }, { -7, -7, 1, 28, 53, 2 }, { -8, -8, 0, 28, 0, 2 }, { -9, -9, 0, 28, 0, 2 }, + { -10, -10, 0, 28, 0, 2 }, { -11, -11, 0, 28, 0, 2 }, { -12, -12, 0, 28, 0, 2 }, { -13, -13, 0, 28, 0, 2 }, { -14, -14, 0, 28, 0, 2 }, + { -15, -15, 0, 28, 0, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedDown25ToRightBankedFlat0, { + { 15, 16, 7, 4, 54, 4 }, { 14, 17, 7, 4, 54, 4 }, { 13, 18, 6, 4, 54, 4 }, { 12, 19, 6, 4, 54, 4 }, { 11, 20, 6, 4, 54, 4 }, + { 10, 21, 5, 4, 54, 4 }, { 9, 22, 5, 4, 54, 4 }, { 8, 23, 4, 4, 53, 4 }, { 7, 24, 4, 4, 53, 4 }, { 6, 25, 4, 4, 53, 4 }, + { 5, 26, 3, 4, 53, 4 }, { 4, 27, 3, 4, 53, 4 }, { 3, 28, 3, 4, 53, 4 }, { 2, 29, 2, 4, 53, 4 }, { 1, 30, 2, 4, 53, 4 }, + { 0, 31, 2, 4, 53, 4 }, { -1, 32, 2, 4, 53, 4 }, { -2, 33, 1, 4, 53, 4 }, { -3, 34, 1, 4, 53, 4 }, { -4, 35, 1, 4, 53, 4 }, + { -5, 36, 1, 4, 53, 4 }, { -6, 37, 1, 4, 53, 4 }, { -7, 38, 1, 4, 53, 4 }, { -8, 39, 0, 4, 0, 4 }, { -9, 40, 0, 4, 0, 4 }, + { -10, 41, 0, 4, 0, 4 }, { -11, 42, 0, 4, 0, 4 }, { -12, 43, 0, 4, 0, 4 }, { -13, 44, 0, 4, 0, 4 }, { -14, 45, 0, 4, 0, 4 }, + { -15, 46, 0, 4, 0, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedDown25ToRightBankedFlat1, { + { 16, 16, 8, 12, 54, 4 }, { 17, 17, 7, 12, 54, 4 }, { 18, 18, 7, 12, 54, 4 }, { 19, 19, 6, 12, 54, 4 }, { 20, 20, 6, 12, 54, 4 }, + { 21, 21, 6, 12, 54, 4 }, { 22, 22, 5, 12, 54, 4 }, { 23, 23, 5, 12, 54, 4 }, { 24, 24, 4, 12, 53, 4 }, { 25, 25, 4, 12, 53, 4 }, + { 26, 26, 4, 12, 53, 4 }, { 27, 27, 3, 12, 53, 4 }, { 28, 28, 3, 12, 53, 4 }, { 29, 29, 3, 12, 53, 4 }, { 30, 30, 2, 12, 53, 4 }, + { 31, 31, 2, 12, 53, 4 }, { 32, 32, 2, 12, 53, 4 }, { 33, 33, 2, 12, 53, 4 }, { 34, 34, 1, 12, 53, 4 }, { 35, 35, 1, 12, 53, 4 }, + { 36, 36, 1, 12, 53, 4 }, { 37, 37, 1, 12, 53, 4 }, { 38, 38, 1, 12, 53, 4 }, { 39, 39, 1, 12, 53, 4 }, { 40, 40, 0, 12, 0, 4 }, + { 41, 41, 0, 12, 0, 4 }, { 42, 42, 0, 12, 0, 4 }, { 43, 43, 0, 12, 0, 4 }, { 44, 44, 0, 12, 0, 4 }, { 45, 45, 0, 12, 0, 4 }, + { 46, 46, 0, 12, 0, 4 }, { 47, 47, 0, 12, 0, 4 }, { 48, 48, 0, 12, 0, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedDown25ToRightBankedFlat2, { + { 16, 15, 8, 20, 54, 4 }, { 17, 14, 7, 20, 54, 4 }, { 18, 13, 7, 20, 54, 4 }, { 19, 12, 6, 20, 54, 4 }, { 20, 11, 6, 20, 54, 4 }, + { 21, 10, 6, 20, 54, 4 }, { 22, 9, 5, 20, 54, 4 }, { 23, 8, 5, 20, 54, 4 }, { 24, 7, 4, 20, 53, 4 }, { 25, 6, 4, 20, 53, 4 }, + { 26, 5, 4, 20, 53, 4 }, { 27, 4, 3, 20, 53, 4 }, { 28, 3, 3, 20, 53, 4 }, { 29, 2, 3, 20, 53, 4 }, { 30, 1, 2, 20, 53, 4 }, + { 31, 0, 2, 20, 53, 4 }, { 32, -1, 2, 20, 53, 4 }, { 33, -2, 2, 20, 53, 4 }, { 34, -3, 1, 20, 53, 4 }, { 35, -4, 1, 20, 53, 4 }, + { 36, -5, 1, 20, 53, 4 }, { 37, -6, 1, 20, 53, 4 }, { 38, -7, 1, 20, 53, 4 }, { 39, -8, 1, 20, 53, 4 }, { 40, -9, 0, 20, 0, 4 }, + { 41, -10, 0, 20, 0, 4 }, { 42, -11, 0, 20, 0, 4 }, { 43, -12, 0, 20, 0, 4 }, { 44, -13, 0, 20, 0, 4 }, { 45, -14, 0, 20, 0, 4 }, + { 46, -15, 0, 20, 0, 4 }, { 47, -16, 0, 20, 0, 4 }, { 48, -17, 0, 20, 0, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedDown25ToRightBankedFlat3, { + { 15, 15, 7, 28, 54, 4 }, { 14, 14, 7, 28, 54, 4 }, { 13, 13, 6, 28, 54, 4 }, { 12, 12, 6, 28, 54, 4 }, { 11, 11, 6, 28, 54, 4 }, + { 10, 10, 5, 28, 54, 4 }, { 9, 9, 5, 28, 54, 4 }, { 8, 8, 4, 28, 53, 4 }, { 7, 7, 4, 28, 53, 4 }, { 6, 6, 4, 28, 53, 4 }, + { 5, 5, 3, 28, 53, 4 }, { 4, 4, 3, 28, 53, 4 }, { 3, 3, 3, 28, 53, 4 }, { 2, 2, 2, 28, 53, 4 }, { 1, 1, 2, 28, 53, 4 }, + { 0, 0, 2, 28, 53, 4 }, { -1, -1, 2, 28, 53, 4 }, { -2, -2, 1, 28, 53, 4 }, { -3, -3, 1, 28, 53, 4 }, { -4, -4, 1, 28, 53, 4 }, + { -5, -5, 1, 28, 53, 4 }, { -6, -6, 1, 28, 53, 4 }, { -7, -7, 1, 28, 53, 4 }, { -8, -8, 0, 28, 0, 4 }, { -9, -9, 0, 28, 0, 4 }, + { -10, -10, 0, 28, 0, 4 }, { -11, -11, 0, 28, 0, 4 }, { -12, -12, 0, 28, 0, 4 }, { -13, -13, 0, 28, 0, 4 }, { -14, -14, 0, 28, 0, 4 }, + { -15, -15, 0, 28, 0, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagUp25LeftBanked0, { + { 15, 16, 1, 4, 51, 2 }, { 14, 17, 1, 4, 51, 2 }, { 13, 18, 2, 4, 51, 2 }, { 12, 19, 2, 4, 51, 2 }, { 11, 20, 3, 4, 51, 2 }, + { 10, 21, 3, 4, 51, 2 }, { 9, 22, 4, 4, 51, 2 }, { 8, 23, 4, 4, 51, 2 }, { 7, 24, 5, 4, 51, 2 }, { 6, 25, 5, 4, 51, 2 }, + { 5, 26, 6, 4, 51, 2 }, { 4, 27, 6, 4, 51, 2 }, { 3, 28, 7, 4, 51, 2 }, { 2, 29, 7, 4, 51, 2 }, { 1, 30, 8, 4, 51, 2 }, + { 0, 31, 8, 4, 51, 2 }, { -1, 32, 9, 4, 51, 2 }, { -2, 33, 9, 4, 51, 2 }, { -3, 34, 10, 4, 51, 2 }, { -4, 35, 10, 4, 51, 2 }, + { -5, 36, 11, 4, 51, 2 }, { -6, 37, 11, 4, 51, 2 }, { -7, 38, 12, 4, 51, 2 }, { -8, 39, 12, 4, 51, 2 }, { -9, 40, 13, 4, 51, 2 }, + { -10, 41, 13, 4, 51, 2 }, { -11, 42, 14, 4, 51, 2 }, { -12, 43, 14, 4, 51, 2 }, { -13, 44, 15, 4, 51, 2 }, { -14, 45, 15, 4, 51, 2 }, + { -15, 46, 16, 4, 51, 2 }, { -16, 47, 16, 4, 51, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagUp25LeftBanked1, { + { 16, 16, 0, 12, 51, 2 }, { 17, 17, 1, 12, 51, 2 }, { 18, 18, 1, 12, 51, 2 }, { 19, 19, 2, 12, 51, 2 }, { 20, 20, 2, 12, 51, 2 }, + { 21, 21, 3, 12, 51, 2 }, { 22, 22, 3, 12, 51, 2 }, { 23, 23, 4, 12, 51, 2 }, { 24, 24, 4, 12, 51, 2 }, { 25, 25, 5, 12, 51, 2 }, + { 26, 26, 5, 12, 51, 2 }, { 27, 27, 6, 12, 51, 2 }, { 28, 28, 6, 12, 51, 2 }, { 29, 29, 7, 12, 51, 2 }, { 30, 30, 7, 12, 51, 2 }, + { 31, 31, 8, 12, 51, 2 }, { 32, 32, 8, 12, 51, 2 }, { 33, 33, 9, 12, 51, 2 }, { 34, 34, 9, 12, 51, 2 }, { 35, 35, 10, 12, 51, 2 }, + { 36, 36, 10, 12, 51, 2 }, { 37, 37, 11, 12, 51, 2 }, { 38, 38, 11, 12, 51, 2 }, { 39, 39, 12, 12, 51, 2 }, { 40, 40, 12, 12, 51, 2 }, + { 41, 41, 13, 12, 51, 2 }, { 42, 42, 13, 12, 51, 2 }, { 43, 43, 14, 12, 51, 2 }, { 44, 44, 14, 12, 51, 2 }, { 45, 45, 15, 12, 51, 2 }, + { 46, 46, 15, 12, 51, 2 }, { 47, 47, 16, 12, 51, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagUp25LeftBanked2, { + { 16, 15, 0, 20, 51, 2 }, { 17, 14, 1, 20, 51, 2 }, { 18, 13, 1, 20, 51, 2 }, { 19, 12, 2, 20, 51, 2 }, { 20, 11, 2, 20, 51, 2 }, + { 21, 10, 3, 20, 51, 2 }, { 22, 9, 3, 20, 51, 2 }, { 23, 8, 4, 20, 51, 2 }, { 24, 7, 4, 20, 51, 2 }, { 25, 6, 5, 20, 51, 2 }, + { 26, 5, 5, 20, 51, 2 }, { 27, 4, 6, 20, 51, 2 }, { 28, 3, 6, 20, 51, 2 }, { 29, 2, 7, 20, 51, 2 }, { 30, 1, 7, 20, 51, 2 }, + { 31, 0, 8, 20, 51, 2 }, { 32, -1, 8, 20, 51, 2 }, { 33, -2, 9, 20, 51, 2 }, { 34, -3, 9, 20, 51, 2 }, { 35, -4, 10, 20, 51, 2 }, + { 36, -5, 10, 20, 51, 2 }, { 37, -6, 11, 20, 51, 2 }, { 38, -7, 11, 20, 51, 2 }, { 39, -8, 12, 20, 51, 2 }, { 40, -9, 12, 20, 51, 2 }, + { 41, -10, 13, 20, 51, 2 }, { 42, -11, 13, 20, 51, 2 }, { 43, -12, 14, 20, 51, 2 }, { 44, -13, 14, 20, 51, 2 }, { 45, -14, 15, 20, 51, 2 }, + { 46, -15, 15, 20, 51, 2 }, { 47, -16, 16, 20, 51, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagUp25LeftBanked3, { + { 15, 15, 1, 28, 51, 2 }, { 14, 14, 1, 28, 51, 2 }, { 13, 13, 2, 28, 51, 2 }, { 12, 12, 2, 28, 51, 2 }, { 11, 11, 3, 28, 51, 2 }, + { 10, 10, 3, 28, 51, 2 }, { 9, 9, 4, 28, 51, 2 }, { 8, 8, 4, 28, 51, 2 }, { 7, 7, 5, 28, 51, 2 }, { 6, 6, 5, 28, 51, 2 }, + { 5, 5, 6, 28, 51, 2 }, { 4, 4, 6, 28, 51, 2 }, { 3, 3, 7, 28, 51, 2 }, { 2, 2, 7, 28, 51, 2 }, { 1, 1, 8, 28, 51, 2 }, + { 0, 0, 8, 28, 51, 2 }, { -1, -1, 9, 28, 51, 2 }, { -2, -2, 9, 28, 51, 2 }, { -3, -3, 10, 28, 51, 2 }, { -4, -4, 10, 28, 51, 2 }, + { -5, -5, 11, 28, 51, 2 }, { -6, -6, 11, 28, 51, 2 }, { -7, -7, 12, 28, 51, 2 }, { -8, -8, 12, 28, 51, 2 }, { -9, -9, 13, 28, 51, 2 }, + { -10, -10, 13, 28, 51, 2 }, { -11, -11, 14, 28, 51, 2 }, { -12, -12, 14, 28, 51, 2 }, { -13, -13, 15, 28, 51, 2 }, { -14, -14, 15, 28, 51, 2 }, + { -15, -15, 16, 28, 51, 2 }, { -16, -16, 16, 28, 51, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagUp25RightBanked0, { + { 15, 16, 1, 4, 51, 4 }, { 14, 17, 1, 4, 51, 4 }, { 13, 18, 2, 4, 51, 4 }, { 12, 19, 2, 4, 51, 4 }, { 11, 20, 3, 4, 51, 4 }, + { 10, 21, 3, 4, 51, 4 }, { 9, 22, 4, 4, 51, 4 }, { 8, 23, 4, 4, 51, 4 }, { 7, 24, 5, 4, 51, 4 }, { 6, 25, 5, 4, 51, 4 }, + { 5, 26, 6, 4, 51, 4 }, { 4, 27, 6, 4, 51, 4 }, { 3, 28, 7, 4, 51, 4 }, { 2, 29, 7, 4, 51, 4 }, { 1, 30, 8, 4, 51, 4 }, + { 0, 31, 8, 4, 51, 4 }, { -1, 32, 9, 4, 51, 4 }, { -2, 33, 9, 4, 51, 4 }, { -3, 34, 10, 4, 51, 4 }, { -4, 35, 10, 4, 51, 4 }, + { -5, 36, 11, 4, 51, 4 }, { -6, 37, 11, 4, 51, 4 }, { -7, 38, 12, 4, 51, 4 }, { -8, 39, 12, 4, 51, 4 }, { -9, 40, 13, 4, 51, 4 }, + { -10, 41, 13, 4, 51, 4 }, { -11, 42, 14, 4, 51, 4 }, { -12, 43, 14, 4, 51, 4 }, { -13, 44, 15, 4, 51, 4 }, { -14, 45, 15, 4, 51, 4 }, + { -15, 46, 16, 4, 51, 4 }, { -16, 47, 16, 4, 51, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagUp25RightBanked1, { + { 16, 16, 0, 12, 51, 4 }, { 17, 17, 1, 12, 51, 4 }, { 18, 18, 1, 12, 51, 4 }, { 19, 19, 2, 12, 51, 4 }, { 20, 20, 2, 12, 51, 4 }, + { 21, 21, 3, 12, 51, 4 }, { 22, 22, 3, 12, 51, 4 }, { 23, 23, 4, 12, 51, 4 }, { 24, 24, 4, 12, 51, 4 }, { 25, 25, 5, 12, 51, 4 }, + { 26, 26, 5, 12, 51, 4 }, { 27, 27, 6, 12, 51, 4 }, { 28, 28, 6, 12, 51, 4 }, { 29, 29, 7, 12, 51, 4 }, { 30, 30, 7, 12, 51, 4 }, + { 31, 31, 8, 12, 51, 4 }, { 32, 32, 8, 12, 51, 4 }, { 33, 33, 9, 12, 51, 4 }, { 34, 34, 9, 12, 51, 4 }, { 35, 35, 10, 12, 51, 4 }, + { 36, 36, 10, 12, 51, 4 }, { 37, 37, 11, 12, 51, 4 }, { 38, 38, 11, 12, 51, 4 }, { 39, 39, 12, 12, 51, 4 }, { 40, 40, 12, 12, 51, 4 }, + { 41, 41, 13, 12, 51, 4 }, { 42, 42, 13, 12, 51, 4 }, { 43, 43, 14, 12, 51, 4 }, { 44, 44, 14, 12, 51, 4 }, { 45, 45, 15, 12, 51, 4 }, + { 46, 46, 15, 12, 51, 4 }, { 47, 47, 16, 12, 51, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagUp25RightBanked2, { + { 16, 15, 0, 20, 51, 4 }, { 17, 14, 1, 20, 51, 4 }, { 18, 13, 1, 20, 51, 4 }, { 19, 12, 2, 20, 51, 4 }, { 20, 11, 2, 20, 51, 4 }, + { 21, 10, 3, 20, 51, 4 }, { 22, 9, 3, 20, 51, 4 }, { 23, 8, 4, 20, 51, 4 }, { 24, 7, 4, 20, 51, 4 }, { 25, 6, 5, 20, 51, 4 }, + { 26, 5, 5, 20, 51, 4 }, { 27, 4, 6, 20, 51, 4 }, { 28, 3, 6, 20, 51, 4 }, { 29, 2, 7, 20, 51, 4 }, { 30, 1, 7, 20, 51, 4 }, + { 31, 0, 8, 20, 51, 4 }, { 32, -1, 8, 20, 51, 4 }, { 33, -2, 9, 20, 51, 4 }, { 34, -3, 9, 20, 51, 4 }, { 35, -4, 10, 20, 51, 4 }, + { 36, -5, 10, 20, 51, 4 }, { 37, -6, 11, 20, 51, 4 }, { 38, -7, 11, 20, 51, 4 }, { 39, -8, 12, 20, 51, 4 }, { 40, -9, 12, 20, 51, 4 }, + { 41, -10, 13, 20, 51, 4 }, { 42, -11, 13, 20, 51, 4 }, { 43, -12, 14, 20, 51, 4 }, { 44, -13, 14, 20, 51, 4 }, { 45, -14, 15, 20, 51, 4 }, + { 46, -15, 15, 20, 51, 4 }, { 47, -16, 16, 20, 51, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagUp25RightBanked3, { + { 15, 15, 1, 28, 51, 4 }, { 14, 14, 1, 28, 51, 4 }, { 13, 13, 2, 28, 51, 4 }, { 12, 12, 2, 28, 51, 4 }, { 11, 11, 3, 28, 51, 4 }, + { 10, 10, 3, 28, 51, 4 }, { 9, 9, 4, 28, 51, 4 }, { 8, 8, 4, 28, 51, 4 }, { 7, 7, 5, 28, 51, 4 }, { 6, 6, 5, 28, 51, 4 }, + { 5, 5, 6, 28, 51, 4 }, { 4, 4, 6, 28, 51, 4 }, { 3, 3, 7, 28, 51, 4 }, { 2, 2, 7, 28, 51, 4 }, { 1, 1, 8, 28, 51, 4 }, + { 0, 0, 8, 28, 51, 4 }, { -1, -1, 9, 28, 51, 4 }, { -2, -2, 9, 28, 51, 4 }, { -3, -3, 10, 28, 51, 4 }, { -4, -4, 10, 28, 51, 4 }, + { -5, -5, 11, 28, 51, 4 }, { -6, -6, 11, 28, 51, 4 }, { -7, -7, 12, 28, 51, 4 }, { -8, -8, 12, 28, 51, 4 }, { -9, -9, 13, 28, 51, 4 }, + { -10, -10, 13, 28, 51, 4 }, { -11, -11, 14, 28, 51, 4 }, { -12, -12, 14, 28, 51, 4 }, { -13, -13, 15, 28, 51, 4 }, { -14, -14, 15, 28, 51, 4 }, + { -15, -15, 16, 28, 51, 4 }, { -16, -16, 16, 28, 51, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagDown25LeftBanked0, { + { 15, 16, 15, 4, 54, 2 }, { 14, 17, 15, 4, 54, 2 }, { 13, 18, 14, 4, 54, 2 }, { 12, 19, 14, 4, 54, 2 }, { 11, 20, 13, 4, 54, 2 }, + { 10, 21, 13, 4, 54, 2 }, { 9, 22, 12, 4, 54, 2 }, { 8, 23, 12, 4, 54, 2 }, { 7, 24, 11, 4, 54, 2 }, { 6, 25, 11, 4, 54, 2 }, + { 5, 26, 10, 4, 54, 2 }, { 4, 27, 10, 4, 54, 2 }, { 3, 28, 9, 4, 54, 2 }, { 2, 29, 9, 4, 54, 2 }, { 1, 30, 8, 4, 54, 2 }, + { 0, 31, 8, 4, 54, 2 }, { -1, 32, 7, 4, 54, 2 }, { -2, 33, 7, 4, 54, 2 }, { -3, 34, 6, 4, 54, 2 }, { -4, 35, 6, 4, 54, 2 }, + { -5, 36, 5, 4, 54, 2 }, { -6, 37, 5, 4, 54, 2 }, { -7, 38, 4, 4, 54, 2 }, { -8, 39, 4, 4, 54, 2 }, { -9, 40, 3, 4, 54, 2 }, + { -10, 41, 3, 4, 54, 2 }, { -11, 42, 2, 4, 54, 2 }, { -12, 43, 2, 4, 54, 2 }, { -13, 44, 1, 4, 54, 2 }, { -14, 45, 1, 4, 54, 2 }, + { -15, 46, 0, 4, 54, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagDown25LeftBanked1, { + { 16, 16, 16, 12, 54, 2 }, { 17, 17, 15, 12, 54, 2 }, { 18, 18, 15, 12, 54, 2 }, { 19, 19, 14, 12, 54, 2 }, { 20, 20, 14, 12, 54, 2 }, + { 21, 21, 13, 12, 54, 2 }, { 22, 22, 13, 12, 54, 2 }, { 23, 23, 12, 12, 54, 2 }, { 24, 24, 12, 12, 54, 2 }, { 25, 25, 11, 12, 54, 2 }, + { 26, 26, 11, 12, 54, 2 }, { 27, 27, 10, 12, 54, 2 }, { 28, 28, 10, 12, 54, 2 }, { 29, 29, 9, 12, 54, 2 }, { 30, 30, 9, 12, 54, 2 }, + { 31, 31, 8, 12, 54, 2 }, { 32, 32, 8, 12, 54, 2 }, { 33, 33, 7, 12, 54, 2 }, { 34, 34, 7, 12, 54, 2 }, { 35, 35, 6, 12, 54, 2 }, + { 36, 36, 6, 12, 54, 2 }, { 37, 37, 5, 12, 54, 2 }, { 38, 38, 5, 12, 54, 2 }, { 39, 39, 4, 12, 54, 2 }, { 40, 40, 4, 12, 54, 2 }, + { 41, 41, 3, 12, 54, 2 }, { 42, 42, 3, 12, 54, 2 }, { 43, 43, 2, 12, 54, 2 }, { 44, 44, 2, 12, 54, 2 }, { 45, 45, 1, 12, 54, 2 }, + { 46, 46, 1, 12, 54, 2 }, { 47, 47, 0, 12, 54, 2 }, { 48, 48, 0, 12, 54, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagDown25LeftBanked2, { + { 16, 15, 16, 20, 54, 2 }, { 17, 14, 15, 20, 54, 2 }, { 18, 13, 15, 20, 54, 2 }, { 19, 12, 14, 20, 54, 2 }, { 20, 11, 14, 20, 54, 2 }, + { 21, 10, 13, 20, 54, 2 }, { 22, 9, 13, 20, 54, 2 }, { 23, 8, 12, 20, 54, 2 }, { 24, 7, 12, 20, 54, 2 }, { 25, 6, 11, 20, 54, 2 }, + { 26, 5, 11, 20, 54, 2 }, { 27, 4, 10, 20, 54, 2 }, { 28, 3, 10, 20, 54, 2 }, { 29, 2, 9, 20, 54, 2 }, { 30, 1, 9, 20, 54, 2 }, + { 31, 0, 8, 20, 54, 2 }, { 32, -1, 8, 20, 54, 2 }, { 33, -2, 7, 20, 54, 2 }, { 34, -3, 7, 20, 54, 2 }, { 35, -4, 6, 20, 54, 2 }, + { 36, -5, 6, 20, 54, 2 }, { 37, -6, 5, 20, 54, 2 }, { 38, -7, 5, 20, 54, 2 }, { 39, -8, 4, 20, 54, 2 }, { 40, -9, 4, 20, 54, 2 }, + { 41, -10, 3, 20, 54, 2 }, { 42, -11, 3, 20, 54, 2 }, { 43, -12, 2, 20, 54, 2 }, { 44, -13, 2, 20, 54, 2 }, { 45, -14, 1, 20, 54, 2 }, + { 46, -15, 1, 20, 54, 2 }, { 47, -16, 0, 20, 54, 2 }, { 48, -17, 0, 20, 54, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagDown25LeftBanked3, { + { 15, 15, 15, 28, 54, 2 }, { 14, 14, 15, 28, 54, 2 }, { 13, 13, 14, 28, 54, 2 }, { 12, 12, 14, 28, 54, 2 }, { 11, 11, 13, 28, 54, 2 }, + { 10, 10, 13, 28, 54, 2 }, { 9, 9, 12, 28, 54, 2 }, { 8, 8, 12, 28, 54, 2 }, { 7, 7, 11, 28, 54, 2 }, { 6, 6, 11, 28, 54, 2 }, + { 5, 5, 10, 28, 54, 2 }, { 4, 4, 10, 28, 54, 2 }, { 3, 3, 9, 28, 54, 2 }, { 2, 2, 9, 28, 54, 2 }, { 1, 1, 8, 28, 54, 2 }, + { 0, 0, 8, 28, 54, 2 }, { -1, -1, 7, 28, 54, 2 }, { -2, -2, 7, 28, 54, 2 }, { -3, -3, 6, 28, 54, 2 }, { -4, -4, 6, 28, 54, 2 }, + { -5, -5, 5, 28, 54, 2 }, { -6, -6, 5, 28, 54, 2 }, { -7, -7, 4, 28, 54, 2 }, { -8, -8, 4, 28, 54, 2 }, { -9, -9, 3, 28, 54, 2 }, + { -10, -10, 3, 28, 54, 2 }, { -11, -11, 2, 28, 54, 2 }, { -12, -12, 2, 28, 54, 2 }, { -13, -13, 1, 28, 54, 2 }, { -14, -14, 1, 28, 54, 2 }, + { -15, -15, 0, 28, 54, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagDown25RightBanked0, { + { 15, 16, 15, 4, 54, 4 }, { 14, 17, 15, 4, 54, 4 }, { 13, 18, 14, 4, 54, 4 }, { 12, 19, 14, 4, 54, 4 }, { 11, 20, 13, 4, 54, 4 }, + { 10, 21, 13, 4, 54, 4 }, { 9, 22, 12, 4, 54, 4 }, { 8, 23, 12, 4, 54, 4 }, { 7, 24, 11, 4, 54, 4 }, { 6, 25, 11, 4, 54, 4 }, + { 5, 26, 10, 4, 54, 4 }, { 4, 27, 10, 4, 54, 4 }, { 3, 28, 9, 4, 54, 4 }, { 2, 29, 9, 4, 54, 4 }, { 1, 30, 8, 4, 54, 4 }, + { 0, 31, 8, 4, 54, 4 }, { -1, 32, 7, 4, 54, 4 }, { -2, 33, 7, 4, 54, 4 }, { -3, 34, 6, 4, 54, 4 }, { -4, 35, 6, 4, 54, 4 }, + { -5, 36, 5, 4, 54, 4 }, { -6, 37, 5, 4, 54, 4 }, { -7, 38, 4, 4, 54, 4 }, { -8, 39, 4, 4, 54, 4 }, { -9, 40, 3, 4, 54, 4 }, + { -10, 41, 3, 4, 54, 4 }, { -11, 42, 2, 4, 54, 4 }, { -12, 43, 2, 4, 54, 4 }, { -13, 44, 1, 4, 54, 4 }, { -14, 45, 1, 4, 54, 4 }, + { -15, 46, 0, 4, 54, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagDown25RightBanked1, { + { 16, 16, 16, 12, 54, 4 }, { 17, 17, 15, 12, 54, 4 }, { 18, 18, 15, 12, 54, 4 }, { 19, 19, 14, 12, 54, 4 }, { 20, 20, 14, 12, 54, 4 }, + { 21, 21, 13, 12, 54, 4 }, { 22, 22, 13, 12, 54, 4 }, { 23, 23, 12, 12, 54, 4 }, { 24, 24, 12, 12, 54, 4 }, { 25, 25, 11, 12, 54, 4 }, + { 26, 26, 11, 12, 54, 4 }, { 27, 27, 10, 12, 54, 4 }, { 28, 28, 10, 12, 54, 4 }, { 29, 29, 9, 12, 54, 4 }, { 30, 30, 9, 12, 54, 4 }, + { 31, 31, 8, 12, 54, 4 }, { 32, 32, 8, 12, 54, 4 }, { 33, 33, 7, 12, 54, 4 }, { 34, 34, 7, 12, 54, 4 }, { 35, 35, 6, 12, 54, 4 }, + { 36, 36, 6, 12, 54, 4 }, { 37, 37, 5, 12, 54, 4 }, { 38, 38, 5, 12, 54, 4 }, { 39, 39, 4, 12, 54, 4 }, { 40, 40, 4, 12, 54, 4 }, + { 41, 41, 3, 12, 54, 4 }, { 42, 42, 3, 12, 54, 4 }, { 43, 43, 2, 12, 54, 4 }, { 44, 44, 2, 12, 54, 4 }, { 45, 45, 1, 12, 54, 4 }, + { 46, 46, 1, 12, 54, 4 }, { 47, 47, 0, 12, 54, 4 }, { 48, 48, 0, 12, 54, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagDown25RightBanked2, { + { 16, 15, 16, 20, 54, 4 }, { 17, 14, 15, 20, 54, 4 }, { 18, 13, 15, 20, 54, 4 }, { 19, 12, 14, 20, 54, 4 }, { 20, 11, 14, 20, 54, 4 }, + { 21, 10, 13, 20, 54, 4 }, { 22, 9, 13, 20, 54, 4 }, { 23, 8, 12, 20, 54, 4 }, { 24, 7, 12, 20, 54, 4 }, { 25, 6, 11, 20, 54, 4 }, + { 26, 5, 11, 20, 54, 4 }, { 27, 4, 10, 20, 54, 4 }, { 28, 3, 10, 20, 54, 4 }, { 29, 2, 9, 20, 54, 4 }, { 30, 1, 9, 20, 54, 4 }, + { 31, 0, 8, 20, 54, 4 }, { 32, -1, 8, 20, 54, 4 }, { 33, -2, 7, 20, 54, 4 }, { 34, -3, 7, 20, 54, 4 }, { 35, -4, 6, 20, 54, 4 }, + { 36, -5, 6, 20, 54, 4 }, { 37, -6, 5, 20, 54, 4 }, { 38, -7, 5, 20, 54, 4 }, { 39, -8, 4, 20, 54, 4 }, { 40, -9, 4, 20, 54, 4 }, + { 41, -10, 3, 20, 54, 4 }, { 42, -11, 3, 20, 54, 4 }, { 43, -12, 2, 20, 54, 4 }, { 44, -13, 2, 20, 54, 4 }, { 45, -14, 1, 20, 54, 4 }, + { 46, -15, 1, 20, 54, 4 }, { 47, -16, 0, 20, 54, 4 }, { 48, -17, 0, 20, 54, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagDown25RightBanked3, { + { 15, 15, 15, 28, 54, 4 }, { 14, 14, 15, 28, 54, 4 }, { 13, 13, 14, 28, 54, 4 }, { 12, 12, 14, 28, 54, 4 }, { 11, 11, 13, 28, 54, 4 }, + { 10, 10, 13, 28, 54, 4 }, { 9, 9, 12, 28, 54, 4 }, { 8, 8, 12, 28, 54, 4 }, { 7, 7, 11, 28, 54, 4 }, { 6, 6, 11, 28, 54, 4 }, + { 5, 5, 10, 28, 54, 4 }, { 4, 4, 10, 28, 54, 4 }, { 3, 3, 9, 28, 54, 4 }, { 2, 2, 9, 28, 54, 4 }, { 1, 1, 8, 28, 54, 4 }, + { 0, 0, 8, 28, 54, 4 }, { -1, -1, 7, 28, 54, 4 }, { -2, -2, 7, 28, 54, 4 }, { -3, -3, 6, 28, 54, 4 }, { -4, -4, 6, 28, 54, 4 }, + { -5, -5, 5, 28, 54, 4 }, { -6, -6, 5, 28, 54, 4 }, { -7, -7, 4, 28, 54, 4 }, { -8, -8, 4, 28, 54, 4 }, { -9, -9, 3, 28, 54, 4 }, + { -10, -10, 3, 28, 54, 4 }, { -11, -11, 2, 28, 54, 4 }, { -12, -12, 2, 28, 54, 4 }, { -13, -13, 1, 28, 54, 4 }, { -14, -14, 1, 28, 54, 4 }, + { -15, -15, 0, 28, 54, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagFlatToLeftBankedUp250, { + { 15, 16, 0, 4, 0, 0 }, { 14, 17, 0, 4, 0, 0 }, { 13, 18, 0, 4, 0, 0 }, { 12, 19, 0, 4, 0, 0 }, { 11, 20, 0, 4, 0, 0 }, + { 10, 21, 0, 4, 0, 0 }, { 9, 22, 0, 4, 0, 0 }, { 8, 23, 1, 4, 50, 1 }, { 7, 24, 1, 4, 50, 1 }, { 6, 25, 1, 4, 50, 1 }, + { 5, 26, 1, 4, 50, 1 }, { 4, 27, 1, 4, 50, 1 }, { 3, 28, 1, 4, 50, 1 }, { 2, 29, 2, 4, 50, 1 }, { 1, 30, 2, 4, 50, 1 }, + { 0, 31, 2, 4, 50, 1 }, { -1, 32, 2, 4, 50, 1 }, { -2, 33, 3, 4, 50, 1 }, { -3, 34, 3, 4, 1, 1 }, { -4, 35, 3, 4, 1, 1 }, + { -5, 36, 4, 4, 1, 1 }, { -6, 37, 4, 4, 1, 1 }, { -7, 38, 4, 4, 1, 1 }, { -8, 39, 5, 4, 51, 2 }, { -9, 40, 5, 4, 51, 2 }, + { -10, 41, 5, 4, 51, 2 }, { -11, 42, 6, 4, 51, 2 }, { -12, 43, 6, 4, 51, 2 }, { -13, 44, 7, 4, 51, 2 }, { -14, 45, 7, 4, 51, 2 }, + { -15, 46, 8, 4, 51, 2 }, { -16, 47, 8, 4, 51, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagFlatToLeftBankedUp251, { + { 16, 16, 0, 12, 0, 0 }, { 17, 17, 0, 12, 0, 0 }, { 18, 18, 0, 12, 0, 0 }, { 19, 19, 0, 12, 0, 0 }, { 20, 20, 0, 12, 0, 0 }, + { 21, 21, 0, 12, 0, 0 }, { 22, 22, 0, 12, 0, 0 }, { 23, 23, 0, 12, 0, 0 }, { 24, 24, 1, 12, 50, 1 }, { 25, 25, 1, 12, 50, 1 }, + { 26, 26, 1, 12, 50, 1 }, { 27, 27, 1, 12, 50, 1 }, { 28, 28, 1, 12, 50, 1 }, { 29, 29, 1, 12, 50, 1 }, { 30, 30, 2, 12, 50, 1 }, + { 31, 31, 2, 12, 50, 1 }, { 32, 32, 2, 12, 50, 1 }, { 33, 33, 2, 12, 50, 1 }, { 34, 34, 3, 12, 50, 1 }, { 35, 35, 3, 12, 1, 1 }, + { 36, 36, 3, 12, 1, 1 }, { 37, 37, 4, 12, 1, 1 }, { 38, 38, 4, 12, 1, 1 }, { 39, 39, 4, 12, 1, 1 }, { 40, 40, 5, 12, 51, 2 }, + { 41, 41, 5, 12, 51, 2 }, { 42, 42, 5, 12, 51, 2 }, { 43, 43, 6, 12, 51, 2 }, { 44, 44, 6, 12, 51, 2 }, { 45, 45, 7, 12, 51, 2 }, + { 46, 46, 7, 12, 51, 2 }, { 47, 47, 8, 12, 51, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagFlatToLeftBankedUp252, { + { 16, 15, 0, 20, 0, 0 }, { 17, 14, 0, 20, 0, 0 }, { 18, 13, 0, 20, 0, 0 }, { 19, 12, 0, 20, 0, 0 }, { 20, 11, 0, 20, 0, 0 }, + { 21, 10, 0, 20, 0, 0 }, { 22, 9, 0, 20, 0, 0 }, { 23, 8, 0, 20, 0, 0 }, { 24, 7, 1, 20, 50, 1 }, { 25, 6, 1, 20, 50, 1 }, + { 26, 5, 1, 20, 50, 1 }, { 27, 4, 1, 20, 50, 1 }, { 28, 3, 1, 20, 50, 1 }, { 29, 2, 1, 20, 50, 1 }, { 30, 1, 2, 20, 50, 1 }, + { 31, 0, 2, 20, 50, 1 }, { 32, -1, 2, 20, 50, 1 }, { 33, -2, 2, 20, 50, 1 }, { 34, -3, 3, 20, 50, 1 }, { 35, -4, 3, 20, 1, 1 }, + { 36, -5, 3, 20, 1, 1 }, { 37, -6, 4, 20, 1, 1 }, { 38, -7, 4, 20, 1, 1 }, { 39, -8, 4, 20, 1, 1 }, { 40, -9, 5, 20, 51, 2 }, + { 41, -10, 5, 20, 51, 2 }, { 42, -11, 5, 20, 51, 2 }, { 43, -12, 6, 20, 51, 2 }, { 44, -13, 6, 20, 51, 2 }, { 45, -14, 7, 20, 51, 2 }, + { 46, -15, 7, 20, 51, 2 }, { 47, -16, 8, 20, 51, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagFlatToLeftBankedUp253, { + { 15, 15, 0, 28, 0, 0 }, { 14, 14, 0, 28, 0, 0 }, { 13, 13, 0, 28, 0, 0 }, { 12, 12, 0, 28, 0, 0 }, { 11, 11, 0, 28, 0, 0 }, + { 10, 10, 0, 28, 0, 0 }, { 9, 9, 0, 28, 0, 0 }, { 8, 8, 1, 28, 50, 1 }, { 7, 7, 1, 28, 50, 1 }, { 6, 6, 1, 28, 50, 1 }, + { 5, 5, 1, 28, 50, 1 }, { 4, 4, 1, 28, 50, 1 }, { 3, 3, 1, 28, 50, 1 }, { 2, 2, 2, 28, 50, 1 }, { 1, 1, 2, 28, 50, 1 }, + { 0, 0, 2, 28, 50, 1 }, { -1, -1, 2, 28, 50, 1 }, { -2, -2, 3, 28, 50, 1 }, { -3, -3, 3, 28, 1, 1 }, { -4, -4, 3, 28, 1, 1 }, + { -5, -5, 4, 28, 1, 1 }, { -6, -6, 4, 28, 1, 1 }, { -7, -7, 4, 28, 1, 1 }, { -8, -8, 5, 28, 51, 2 }, { -9, -9, 5, 28, 51, 2 }, + { -10, -10, 5, 28, 51, 2 }, { -11, -11, 6, 28, 51, 2 }, { -12, -12, 6, 28, 51, 2 }, { -13, -13, 7, 28, 51, 2 }, { -14, -14, 7, 28, 51, 2 }, + { -15, -15, 8, 28, 51, 2 }, { -16, -16, 8, 28, 51, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagFlatToRightBankedUp250, { + { 15, 16, 0, 4, 0, 0 }, { 14, 17, 0, 4, 0, 0 }, { 13, 18, 0, 4, 0, 0 }, { 12, 19, 0, 4, 0, 0 }, { 11, 20, 0, 4, 0, 0 }, + { 10, 21, 0, 4, 0, 0 }, { 9, 22, 0, 4, 0, 0 }, { 8, 23, 1, 4, 50, 3 }, { 7, 24, 1, 4, 50, 3 }, { 6, 25, 1, 4, 50, 3 }, + { 5, 26, 1, 4, 50, 3 }, { 4, 27, 1, 4, 50, 3 }, { 3, 28, 1, 4, 50, 3 }, { 2, 29, 2, 4, 50, 3 }, { 1, 30, 2, 4, 50, 3 }, + { 0, 31, 2, 4, 50, 3 }, { -1, 32, 2, 4, 50, 3 }, { -2, 33, 3, 4, 50, 3 }, { -3, 34, 3, 4, 1, 3 }, { -4, 35, 3, 4, 1, 3 }, + { -5, 36, 4, 4, 1, 3 }, { -6, 37, 4, 4, 1, 3 }, { -7, 38, 4, 4, 1, 3 }, { -8, 39, 5, 4, 51, 4 }, { -9, 40, 5, 4, 51, 4 }, + { -10, 41, 5, 4, 51, 4 }, { -11, 42, 6, 4, 51, 4 }, { -12, 43, 6, 4, 51, 4 }, { -13, 44, 7, 4, 51, 4 }, { -14, 45, 7, 4, 51, 4 }, + { -15, 46, 8, 4, 51, 4 }, { -16, 47, 8, 4, 51, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagFlatToRightBankedUp251, { + { 16, 16, 0, 12, 0, 0 }, { 17, 17, 0, 12, 0, 0 }, { 18, 18, 0, 12, 0, 0 }, { 19, 19, 0, 12, 0, 0 }, { 20, 20, 0, 12, 0, 0 }, + { 21, 21, 0, 12, 0, 0 }, { 22, 22, 0, 12, 0, 0 }, { 23, 23, 0, 12, 0, 0 }, { 24, 24, 1, 12, 50, 3 }, { 25, 25, 1, 12, 50, 3 }, + { 26, 26, 1, 12, 50, 3 }, { 27, 27, 1, 12, 50, 3 }, { 28, 28, 1, 12, 50, 3 }, { 29, 29, 1, 12, 50, 3 }, { 30, 30, 2, 12, 50, 3 }, + { 31, 31, 2, 12, 50, 3 }, { 32, 32, 2, 12, 50, 3 }, { 33, 33, 2, 12, 50, 3 }, { 34, 34, 3, 12, 50, 3 }, { 35, 35, 3, 12, 1, 3 }, + { 36, 36, 3, 12, 1, 3 }, { 37, 37, 4, 12, 1, 3 }, { 38, 38, 4, 12, 1, 3 }, { 39, 39, 4, 12, 1, 3 }, { 40, 40, 5, 12, 51, 4 }, + { 41, 41, 5, 12, 51, 4 }, { 42, 42, 5, 12, 51, 4 }, { 43, 43, 6, 12, 51, 4 }, { 44, 44, 6, 12, 51, 4 }, { 45, 45, 7, 12, 51, 4 }, + { 46, 46, 7, 12, 51, 4 }, { 47, 47, 8, 12, 51, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagFlatToRightBankedUp252, { + { 16, 15, 0, 20, 0, 0 }, { 17, 14, 0, 20, 0, 0 }, { 18, 13, 0, 20, 0, 0 }, { 19, 12, 0, 20, 0, 0 }, { 20, 11, 0, 20, 0, 0 }, + { 21, 10, 0, 20, 0, 0 }, { 22, 9, 0, 20, 0, 0 }, { 23, 8, 0, 20, 0, 0 }, { 24, 7, 1, 20, 50, 3 }, { 25, 6, 1, 20, 50, 3 }, + { 26, 5, 1, 20, 50, 3 }, { 27, 4, 1, 20, 50, 3 }, { 28, 3, 1, 20, 50, 3 }, { 29, 2, 1, 20, 50, 3 }, { 30, 1, 2, 20, 50, 3 }, + { 31, 0, 2, 20, 50, 3 }, { 32, -1, 2, 20, 50, 3 }, { 33, -2, 2, 20, 50, 3 }, { 34, -3, 3, 20, 50, 3 }, { 35, -4, 3, 20, 1, 3 }, + { 36, -5, 3, 20, 1, 3 }, { 37, -6, 4, 20, 1, 3 }, { 38, -7, 4, 20, 1, 3 }, { 39, -8, 4, 20, 1, 3 }, { 40, -9, 5, 20, 51, 4 }, + { 41, -10, 5, 20, 51, 4 }, { 42, -11, 5, 20, 51, 4 }, { 43, -12, 6, 20, 51, 4 }, { 44, -13, 6, 20, 51, 4 }, { 45, -14, 7, 20, 51, 4 }, + { 46, -15, 7, 20, 51, 4 }, { 47, -16, 8, 20, 51, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagFlatToRightBankedUp253, { + { 15, 15, 0, 28, 0, 0 }, { 14, 14, 0, 28, 0, 0 }, { 13, 13, 0, 28, 0, 0 }, { 12, 12, 0, 28, 0, 0 }, { 11, 11, 0, 28, 0, 0 }, + { 10, 10, 0, 28, 0, 0 }, { 9, 9, 0, 28, 0, 0 }, { 8, 8, 1, 28, 50, 3 }, { 7, 7, 1, 28, 50, 3 }, { 6, 6, 1, 28, 50, 3 }, + { 5, 5, 1, 28, 50, 3 }, { 4, 4, 1, 28, 50, 3 }, { 3, 3, 1, 28, 50, 3 }, { 2, 2, 2, 28, 50, 3 }, { 1, 1, 2, 28, 50, 3 }, + { 0, 0, 2, 28, 50, 3 }, { -1, -1, 2, 28, 50, 3 }, { -2, -2, 3, 28, 50, 3 }, { -3, -3, 3, 28, 1, 3 }, { -4, -4, 3, 28, 1, 3 }, + { -5, -5, 4, 28, 1, 3 }, { -6, -6, 4, 28, 1, 3 }, { -7, -7, 4, 28, 1, 3 }, { -8, -8, 5, 28, 51, 4 }, { -9, -9, 5, 28, 51, 4 }, + { -10, -10, 5, 28, 51, 4 }, { -11, -11, 6, 28, 51, 4 }, { -12, -12, 6, 28, 51, 4 }, { -13, -13, 7, 28, 51, 4 }, { -14, -14, 7, 28, 51, 4 }, + { -15, -15, 8, 28, 51, 4 }, { -16, -16, 8, 28, 51, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedUp25ToFlat0, { + { 15, 16, 1, 4, 51, 2 }, { 14, 17, 1, 4, 51, 2 }, { 13, 18, 2, 4, 51, 2 }, { 12, 19, 2, 4, 51, 2 }, { 11, 20, 2, 4, 51, 2 }, + { 10, 21, 3, 4, 51, 2 }, { 9, 22, 3, 4, 51, 2 }, { 8, 23, 4, 4, 1, 1 }, { 7, 24, 4, 4, 1, 1 }, { 6, 25, 4, 4, 1, 1 }, + { 5, 26, 5, 4, 1, 1 }, { 4, 27, 5, 4, 1, 1 }, { 3, 28, 5, 4, 50, 1 }, { 2, 29, 6, 4, 50, 1 }, { 1, 30, 6, 4, 50, 1 }, + { 0, 31, 6, 4, 50, 1 }, { -1, 32, 6, 4, 50, 1 }, { -2, 33, 7, 4, 50, 1 }, { -3, 34, 7, 4, 50, 1 }, { -4, 35, 7, 4, 50, 1 }, + { -5, 36, 7, 4, 50, 1 }, { -6, 37, 7, 4, 50, 1 }, { -7, 38, 7, 4, 50, 1 }, { -8, 39, 8, 4, 0, 0 }, { -9, 40, 8, 4, 0, 0 }, + { -10, 41, 8, 4, 0, 0 }, { -11, 42, 8, 4, 0, 0 }, { -12, 43, 8, 4, 0, 0 }, { -13, 44, 8, 4, 0, 0 }, { -14, 45, 8, 4, 0, 0 }, + { -15, 46, 8, 4, 0, 0 }, { -16, 47, 8, 4, 0, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedUp25ToFlat1, { + { 16, 16, 0, 12, 51, 2 }, { 17, 17, 1, 12, 51, 2 }, { 18, 18, 1, 12, 51, 2 }, { 19, 19, 2, 12, 51, 2 }, { 20, 20, 2, 12, 51, 2 }, + { 21, 21, 2, 12, 51, 2 }, { 22, 22, 3, 12, 51, 2 }, { 23, 23, 3, 12, 51, 2 }, { 24, 24, 4, 12, 1, 1 }, { 25, 25, 4, 12, 1, 1 }, + { 26, 26, 4, 12, 1, 1 }, { 27, 27, 5, 12, 1, 1 }, { 28, 28, 5, 12, 1, 1 }, { 29, 29, 5, 12, 50, 1 }, { 30, 30, 6, 12, 50, 1 }, + { 31, 31, 6, 12, 50, 1 }, { 32, 32, 6, 12, 50, 1 }, { 33, 33, 6, 12, 50, 1 }, { 34, 34, 7, 12, 50, 1 }, { 35, 35, 7, 12, 50, 1 }, + { 36, 36, 7, 12, 50, 1 }, { 37, 37, 7, 12, 50, 1 }, { 38, 38, 7, 12, 50, 1 }, { 39, 39, 7, 12, 50, 1 }, { 40, 40, 8, 12, 0, 0 }, + { 41, 41, 8, 12, 0, 0 }, { 42, 42, 8, 12, 0, 0 }, { 43, 43, 8, 12, 0, 0 }, { 44, 44, 8, 12, 0, 0 }, { 45, 45, 8, 12, 0, 0 }, + { 46, 46, 8, 12, 0, 0 }, { 47, 47, 8, 12, 0, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedUp25ToFlat2, { + { 16, 15, 0, 20, 51, 2 }, { 17, 14, 1, 20, 51, 2 }, { 18, 13, 1, 20, 51, 2 }, { 19, 12, 2, 20, 51, 2 }, { 20, 11, 2, 20, 51, 2 }, + { 21, 10, 2, 20, 51, 2 }, { 22, 9, 3, 20, 51, 2 }, { 23, 8, 3, 20, 51, 2 }, { 24, 7, 4, 20, 1, 1 }, { 25, 6, 4, 20, 1, 1 }, + { 26, 5, 4, 20, 1, 1 }, { 27, 4, 5, 20, 1, 1 }, { 28, 3, 5, 20, 1, 1 }, { 29, 2, 5, 20, 50, 1 }, { 30, 1, 6, 20, 50, 1 }, + { 31, 0, 6, 20, 50, 1 }, { 32, -1, 6, 20, 50, 1 }, { 33, -2, 6, 20, 50, 1 }, { 34, -3, 7, 20, 50, 1 }, { 35, -4, 7, 20, 50, 1 }, + { 36, -5, 7, 20, 50, 1 }, { 37, -6, 7, 20, 50, 1 }, { 38, -7, 7, 20, 50, 1 }, { 39, -8, 7, 20, 50, 1 }, { 40, -9, 8, 20, 0, 0 }, + { 41, -10, 8, 20, 0, 0 }, { 42, -11, 8, 20, 0, 0 }, { 43, -12, 8, 20, 0, 0 }, { 44, -13, 8, 20, 0, 0 }, { 45, -14, 8, 20, 0, 0 }, + { 46, -15, 8, 20, 0, 0 }, { 47, -16, 8, 20, 0, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedUp25ToFlat3, { + { 15, 15, 1, 28, 51, 2 }, { 14, 14, 1, 28, 51, 2 }, { 13, 13, 2, 28, 51, 2 }, { 12, 12, 2, 28, 51, 2 }, { 11, 11, 2, 28, 51, 2 }, + { 10, 10, 3, 28, 51, 2 }, { 9, 9, 3, 28, 51, 2 }, { 8, 8, 4, 28, 1, 1 }, { 7, 7, 4, 28, 1, 1 }, { 6, 6, 4, 28, 1, 1 }, + { 5, 5, 5, 28, 1, 1 }, { 4, 4, 5, 28, 1, 1 }, { 3, 3, 5, 28, 50, 1 }, { 2, 2, 6, 28, 50, 1 }, { 1, 1, 6, 28, 50, 1 }, + { 0, 0, 6, 28, 50, 1 }, { -1, -1, 6, 28, 50, 1 }, { -2, -2, 7, 28, 50, 1 }, { -3, -3, 7, 28, 50, 1 }, { -4, -4, 7, 28, 50, 1 }, + { -5, -5, 7, 28, 50, 1 }, { -6, -6, 7, 28, 50, 1 }, { -7, -7, 7, 28, 50, 1 }, { -8, -8, 8, 28, 0, 0 }, { -9, -9, 8, 28, 0, 0 }, + { -10, -10, 8, 28, 0, 0 }, { -11, -11, 8, 28, 0, 0 }, { -12, -12, 8, 28, 0, 0 }, { -13, -13, 8, 28, 0, 0 }, { -14, -14, 8, 28, 0, 0 }, + { -15, -15, 8, 28, 0, 0 }, { -16, -16, 8, 28, 0, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedUp25ToFlat0, { + { 15, 16, 1, 4, 51, 4 }, { 14, 17, 1, 4, 51, 4 }, { 13, 18, 2, 4, 51, 4 }, { 12, 19, 2, 4, 51, 4 }, { 11, 20, 2, 4, 51, 4 }, + { 10, 21, 3, 4, 51, 4 }, { 9, 22, 3, 4, 51, 4 }, { 8, 23, 4, 4, 1, 3 }, { 7, 24, 4, 4, 1, 3 }, { 6, 25, 4, 4, 1, 3 }, + { 5, 26, 5, 4, 1, 3 }, { 4, 27, 5, 4, 1, 3 }, { 3, 28, 5, 4, 50, 3 }, { 2, 29, 6, 4, 50, 3 }, { 1, 30, 6, 4, 50, 3 }, + { 0, 31, 6, 4, 50, 3 }, { -1, 32, 6, 4, 50, 3 }, { -2, 33, 7, 4, 50, 3 }, { -3, 34, 7, 4, 50, 3 }, { -4, 35, 7, 4, 50, 3 }, + { -5, 36, 7, 4, 50, 3 }, { -6, 37, 7, 4, 50, 3 }, { -7, 38, 7, 4, 50, 3 }, { -8, 39, 8, 4, 0, 0 }, { -9, 40, 8, 4, 0, 0 }, + { -10, 41, 8, 4, 0, 0 }, { -11, 42, 8, 4, 0, 0 }, { -12, 43, 8, 4, 0, 0 }, { -13, 44, 8, 4, 0, 0 }, { -14, 45, 8, 4, 0, 0 }, + { -15, 46, 8, 4, 0, 0 }, { -16, 47, 8, 4, 0, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedUp25ToFlat1, { + { 16, 16, 0, 12, 51, 4 }, { 17, 17, 1, 12, 51, 4 }, { 18, 18, 1, 12, 51, 4 }, { 19, 19, 2, 12, 51, 4 }, { 20, 20, 2, 12, 51, 4 }, + { 21, 21, 2, 12, 51, 4 }, { 22, 22, 3, 12, 51, 4 }, { 23, 23, 3, 12, 51, 4 }, { 24, 24, 4, 12, 1, 3 }, { 25, 25, 4, 12, 1, 3 }, + { 26, 26, 4, 12, 1, 3 }, { 27, 27, 5, 12, 1, 3 }, { 28, 28, 5, 12, 1, 3 }, { 29, 29, 5, 12, 50, 3 }, { 30, 30, 6, 12, 50, 3 }, + { 31, 31, 6, 12, 50, 3 }, { 32, 32, 6, 12, 50, 3 }, { 33, 33, 6, 12, 50, 3 }, { 34, 34, 7, 12, 50, 3 }, { 35, 35, 7, 12, 50, 3 }, + { 36, 36, 7, 12, 50, 3 }, { 37, 37, 7, 12, 50, 3 }, { 38, 38, 7, 12, 50, 3 }, { 39, 39, 7, 12, 50, 3 }, { 40, 40, 8, 12, 0, 0 }, + { 41, 41, 8, 12, 0, 0 }, { 42, 42, 8, 12, 0, 0 }, { 43, 43, 8, 12, 0, 0 }, { 44, 44, 8, 12, 0, 0 }, { 45, 45, 8, 12, 0, 0 }, + { 46, 46, 8, 12, 0, 0 }, { 47, 47, 8, 12, 0, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedUp25ToFlat2, { + { 16, 15, 0, 20, 51, 4 }, { 17, 14, 1, 20, 51, 4 }, { 18, 13, 1, 20, 51, 4 }, { 19, 12, 2, 20, 51, 4 }, { 20, 11, 2, 20, 51, 4 }, + { 21, 10, 2, 20, 51, 4 }, { 22, 9, 3, 20, 51, 4 }, { 23, 8, 3, 20, 51, 4 }, { 24, 7, 4, 20, 1, 3 }, { 25, 6, 4, 20, 1, 3 }, + { 26, 5, 4, 20, 1, 3 }, { 27, 4, 5, 20, 1, 3 }, { 28, 3, 5, 20, 1, 3 }, { 29, 2, 5, 20, 50, 3 }, { 30, 1, 6, 20, 50, 3 }, + { 31, 0, 6, 20, 50, 3 }, { 32, -1, 6, 20, 50, 3 }, { 33, -2, 6, 20, 50, 3 }, { 34, -3, 7, 20, 50, 3 }, { 35, -4, 7, 20, 50, 3 }, + { 36, -5, 7, 20, 50, 3 }, { 37, -6, 7, 20, 50, 3 }, { 38, -7, 7, 20, 50, 3 }, { 39, -8, 7, 20, 50, 3 }, { 40, -9, 8, 20, 0, 0 }, + { 41, -10, 8, 20, 0, 0 }, { 42, -11, 8, 20, 0, 0 }, { 43, -12, 8, 20, 0, 0 }, { 44, -13, 8, 20, 0, 0 }, { 45, -14, 8, 20, 0, 0 }, + { 46, -15, 8, 20, 0, 0 }, { 47, -16, 8, 20, 0, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedUp25ToFlat3, { + { 15, 15, 1, 28, 51, 4 }, { 14, 14, 1, 28, 51, 4 }, { 13, 13, 2, 28, 51, 4 }, { 12, 12, 2, 28, 51, 4 }, { 11, 11, 2, 28, 51, 4 }, + { 10, 10, 3, 28, 51, 4 }, { 9, 9, 3, 28, 51, 4 }, { 8, 8, 4, 28, 1, 3 }, { 7, 7, 4, 28, 1, 3 }, { 6, 6, 4, 28, 1, 3 }, + { 5, 5, 5, 28, 1, 3 }, { 4, 4, 5, 28, 1, 3 }, { 3, 3, 5, 28, 50, 3 }, { 2, 2, 6, 28, 50, 3 }, { 1, 1, 6, 28, 50, 3 }, + { 0, 0, 6, 28, 50, 3 }, { -1, -1, 6, 28, 50, 3 }, { -2, -2, 7, 28, 50, 3 }, { -3, -3, 7, 28, 50, 3 }, { -4, -4, 7, 28, 50, 3 }, + { -5, -5, 7, 28, 50, 3 }, { -6, -6, 7, 28, 50, 3 }, { -7, -7, 7, 28, 50, 3 }, { -8, -8, 8, 28, 0, 0 }, { -9, -9, 8, 28, 0, 0 }, + { -10, -10, 8, 28, 0, 0 }, { -11, -11, 8, 28, 0, 0 }, { -12, -12, 8, 28, 0, 0 }, { -13, -13, 8, 28, 0, 0 }, { -14, -14, 8, 28, 0, 0 }, + { -15, -15, 8, 28, 0, 0 }, { -16, -16, 8, 28, 0, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagFlatToLeftBankedDown250, { + { 15, 16, 8, 4, 0, 0 }, { 14, 17, 8, 4, 0, 0 }, { 13, 18, 8, 4, 0, 0 }, { 12, 19, 8, 4, 0, 0 }, { 11, 20, 8, 4, 0, 0 }, + { 10, 21, 8, 4, 0, 0 }, { 9, 22, 8, 4, 0, 0 }, { 8, 23, 7, 4, 53, 1 }, { 7, 24, 7, 4, 53, 1 }, { 6, 25, 7, 4, 53, 1 }, + { 5, 26, 7, 4, 53, 1 }, { 4, 27, 7, 4, 53, 1 }, { 3, 28, 7, 4, 53, 1 }, { 2, 29, 6, 4, 53, 1 }, { 1, 30, 6, 4, 53, 1 }, + { 0, 31, 6, 4, 53, 1 }, { -1, 32, 6, 4, 53, 1 }, { -2, 33, 5, 4, 53, 1 }, { -3, 34, 5, 4, 5, 1 }, { -4, 35, 5, 4, 5, 1 }, + { -5, 36, 4, 4, 5, 1 }, { -6, 37, 4, 4, 5, 1 }, { -7, 38, 4, 4, 5, 1 }, { -8, 39, 3, 4, 54, 2 }, { -9, 40, 3, 4, 54, 2 }, + { -10, 41, 3, 4, 54, 2 }, { -11, 42, 2, 4, 54, 2 }, { -12, 43, 2, 4, 54, 2 }, { -13, 44, 1, 4, 54, 2 }, { -14, 45, 1, 4, 54, 2 }, + { -15, 46, 0, 4, 54, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagFlatToLeftBankedDown251, { + { 16, 16, 8, 12, 0, 0 }, { 17, 17, 8, 12, 0, 0 }, { 18, 18, 8, 12, 0, 0 }, { 19, 19, 8, 12, 0, 0 }, { 20, 20, 8, 12, 0, 0 }, + { 21, 21, 8, 12, 0, 0 }, { 22, 22, 8, 12, 0, 0 }, { 23, 23, 8, 12, 0, 0 }, { 24, 24, 7, 12, 53, 1 }, { 25, 25, 7, 12, 53, 1 }, + { 26, 26, 7, 12, 53, 1 }, { 27, 27, 7, 12, 53, 1 }, { 28, 28, 7, 12, 53, 1 }, { 29, 29, 7, 12, 53, 1 }, { 30, 30, 6, 12, 53, 1 }, + { 31, 31, 6, 12, 53, 1 }, { 32, 32, 6, 12, 53, 1 }, { 33, 33, 6, 12, 53, 1 }, { 34, 34, 5, 12, 53, 1 }, { 35, 35, 5, 12, 5, 1 }, + { 36, 36, 5, 12, 5, 1 }, { 37, 37, 4, 12, 5, 1 }, { 38, 38, 4, 12, 5, 1 }, { 39, 39, 4, 12, 5, 1 }, { 40, 40, 3, 12, 54, 2 }, + { 41, 41, 3, 12, 54, 2 }, { 42, 42, 3, 12, 54, 2 }, { 43, 43, 2, 12, 54, 2 }, { 44, 44, 2, 12, 54, 2 }, { 45, 45, 1, 12, 54, 2 }, + { 46, 46, 1, 12, 54, 2 }, { 47, 47, 0, 12, 54, 2 }, { 48, 48, 0, 12, 54, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagFlatToLeftBankedDown252, { + { 16, 15, 8, 20, 0, 0 }, { 17, 14, 8, 20, 0, 0 }, { 18, 13, 8, 20, 0, 0 }, { 19, 12, 8, 20, 0, 0 }, { 20, 11, 8, 20, 0, 0 }, + { 21, 10, 8, 20, 0, 0 }, { 22, 9, 8, 20, 0, 0 }, { 23, 8, 8, 20, 0, 0 }, { 24, 7, 7, 20, 53, 1 }, { 25, 6, 7, 20, 53, 1 }, + { 26, 5, 7, 20, 53, 1 }, { 27, 4, 7, 20, 53, 1 }, { 28, 3, 7, 20, 53, 1 }, { 29, 2, 7, 20, 53, 1 }, { 30, 1, 6, 20, 53, 1 }, + { 31, 0, 6, 20, 53, 1 }, { 32, -1, 6, 20, 53, 1 }, { 33, -2, 6, 20, 53, 1 }, { 34, -3, 5, 20, 53, 1 }, { 35, -4, 5, 20, 5, 1 }, + { 36, -5, 5, 20, 5, 1 }, { 37, -6, 4, 20, 5, 1 }, { 38, -7, 4, 20, 5, 1 }, { 39, -8, 4, 20, 5, 1 }, { 40, -9, 3, 20, 54, 2 }, + { 41, -10, 3, 20, 54, 2 }, { 42, -11, 3, 20, 54, 2 }, { 43, -12, 2, 20, 54, 2 }, { 44, -13, 2, 20, 54, 2 }, { 45, -14, 1, 20, 54, 2 }, + { 46, -15, 1, 20, 54, 2 }, { 47, -16, 0, 20, 54, 2 }, { 48, -17, 0, 20, 54, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagFlatToLeftBankedDown253, { + { 15, 15, 8, 28, 0, 0 }, { 14, 14, 8, 28, 0, 0 }, { 13, 13, 8, 28, 0, 0 }, { 12, 12, 8, 28, 0, 0 }, { 11, 11, 8, 28, 0, 0 }, + { 10, 10, 8, 28, 0, 0 }, { 9, 9, 8, 28, 0, 0 }, { 8, 8, 7, 28, 53, 1 }, { 7, 7, 7, 28, 53, 1 }, { 6, 6, 7, 28, 53, 1 }, + { 5, 5, 7, 28, 53, 1 }, { 4, 4, 7, 28, 53, 1 }, { 3, 3, 7, 28, 53, 1 }, { 2, 2, 6, 28, 53, 1 }, { 1, 1, 6, 28, 53, 1 }, + { 0, 0, 6, 28, 53, 1 }, { -1, -1, 6, 28, 53, 1 }, { -2, -2, 5, 28, 53, 1 }, { -3, -3, 5, 28, 5, 1 }, { -4, -4, 5, 28, 5, 1 }, + { -5, -5, 4, 28, 5, 1 }, { -6, -6, 4, 28, 5, 1 }, { -7, -7, 4, 28, 5, 1 }, { -8, -8, 3, 28, 54, 2 }, { -9, -9, 3, 28, 54, 2 }, + { -10, -10, 3, 28, 54, 2 }, { -11, -11, 2, 28, 54, 2 }, { -12, -12, 2, 28, 54, 2 }, { -13, -13, 1, 28, 54, 2 }, { -14, -14, 1, 28, 54, 2 }, + { -15, -15, 0, 28, 54, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagFlatToRightBankedDown250, { + { 15, 16, 8, 4, 0, 0 }, { 14, 17, 8, 4, 0, 0 }, { 13, 18, 8, 4, 0, 0 }, { 12, 19, 8, 4, 0, 0 }, { 11, 20, 8, 4, 0, 0 }, + { 10, 21, 8, 4, 0, 0 }, { 9, 22, 8, 4, 0, 0 }, { 8, 23, 7, 4, 53, 3 }, { 7, 24, 7, 4, 53, 3 }, { 6, 25, 7, 4, 53, 3 }, + { 5, 26, 7, 4, 53, 3 }, { 4, 27, 7, 4, 53, 3 }, { 3, 28, 7, 4, 53, 3 }, { 2, 29, 6, 4, 53, 3 }, { 1, 30, 6, 4, 53, 3 }, + { 0, 31, 6, 4, 53, 3 }, { -1, 32, 6, 4, 53, 3 }, { -2, 33, 5, 4, 53, 3 }, { -3, 34, 5, 4, 5, 3 }, { -4, 35, 5, 4, 5, 3 }, + { -5, 36, 4, 4, 5, 3 }, { -6, 37, 4, 4, 5, 3 }, { -7, 38, 4, 4, 5, 3 }, { -8, 39, 3, 4, 54, 4 }, { -9, 40, 3, 4, 54, 4 }, + { -10, 41, 3, 4, 54, 4 }, { -11, 42, 2, 4, 54, 4 }, { -12, 43, 2, 4, 54, 4 }, { -13, 44, 1, 4, 54, 4 }, { -14, 45, 1, 4, 54, 4 }, + { -15, 46, 0, 4, 54, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagFlatToRightBankedDown251, { + { 16, 16, 8, 12, 0, 0 }, { 17, 17, 8, 12, 0, 0 }, { 18, 18, 8, 12, 0, 0 }, { 19, 19, 8, 12, 0, 0 }, { 20, 20, 8, 12, 0, 0 }, + { 21, 21, 8, 12, 0, 0 }, { 22, 22, 8, 12, 0, 0 }, { 23, 23, 8, 12, 0, 0 }, { 24, 24, 7, 12, 53, 3 }, { 25, 25, 7, 12, 53, 3 }, + { 26, 26, 7, 12, 53, 3 }, { 27, 27, 7, 12, 53, 3 }, { 28, 28, 7, 12, 53, 3 }, { 29, 29, 7, 12, 53, 3 }, { 30, 30, 6, 12, 53, 3 }, + { 31, 31, 6, 12, 53, 3 }, { 32, 32, 6, 12, 53, 3 }, { 33, 33, 6, 12, 53, 3 }, { 34, 34, 5, 12, 53, 3 }, { 35, 35, 5, 12, 5, 3 }, + { 36, 36, 5, 12, 5, 3 }, { 37, 37, 4, 12, 5, 3 }, { 38, 38, 4, 12, 5, 3 }, { 39, 39, 4, 12, 5, 3 }, { 40, 40, 3, 12, 54, 4 }, + { 41, 41, 3, 12, 54, 4 }, { 42, 42, 3, 12, 54, 4 }, { 43, 43, 2, 12, 54, 4 }, { 44, 44, 2, 12, 54, 4 }, { 45, 45, 1, 12, 54, 4 }, + { 46, 46, 1, 12, 54, 4 }, { 47, 47, 0, 12, 54, 4 }, { 48, 48, 0, 12, 54, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagFlatToRightBankedDown252, { + { 16, 15, 8, 20, 0, 0 }, { 17, 14, 8, 20, 0, 0 }, { 18, 13, 8, 20, 0, 0 }, { 19, 12, 8, 20, 0, 0 }, { 20, 11, 8, 20, 0, 0 }, + { 21, 10, 8, 20, 0, 0 }, { 22, 9, 8, 20, 0, 0 }, { 23, 8, 8, 20, 0, 0 }, { 24, 7, 7, 20, 53, 3 }, { 25, 6, 7, 20, 53, 3 }, + { 26, 5, 7, 20, 53, 3 }, { 27, 4, 7, 20, 53, 3 }, { 28, 3, 7, 20, 53, 3 }, { 29, 2, 7, 20, 53, 3 }, { 30, 1, 6, 20, 53, 3 }, + { 31, 0, 6, 20, 53, 3 }, { 32, -1, 6, 20, 53, 3 }, { 33, -2, 6, 20, 53, 3 }, { 34, -3, 5, 20, 53, 3 }, { 35, -4, 5, 20, 5, 3 }, + { 36, -5, 5, 20, 5, 3 }, { 37, -6, 4, 20, 5, 3 }, { 38, -7, 4, 20, 5, 3 }, { 39, -8, 4, 20, 5, 3 }, { 40, -9, 3, 20, 54, 4 }, + { 41, -10, 3, 20, 54, 4 }, { 42, -11, 3, 20, 54, 4 }, { 43, -12, 2, 20, 54, 4 }, { 44, -13, 2, 20, 54, 4 }, { 45, -14, 1, 20, 54, 4 }, + { 46, -15, 1, 20, 54, 4 }, { 47, -16, 0, 20, 54, 4 }, { 48, -17, 0, 20, 54, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagFlatToRightBankedDown253, { + { 15, 15, 8, 28, 0, 0 }, { 14, 14, 8, 28, 0, 0 }, { 13, 13, 8, 28, 0, 0 }, { 12, 12, 8, 28, 0, 0 }, { 11, 11, 8, 28, 0, 0 }, + { 10, 10, 8, 28, 0, 0 }, { 9, 9, 8, 28, 0, 0 }, { 8, 8, 7, 28, 53, 3 }, { 7, 7, 7, 28, 53, 3 }, { 6, 6, 7, 28, 53, 3 }, + { 5, 5, 7, 28, 53, 3 }, { 4, 4, 7, 28, 53, 3 }, { 3, 3, 7, 28, 53, 3 }, { 2, 2, 6, 28, 53, 3 }, { 1, 1, 6, 28, 53, 3 }, + { 0, 0, 6, 28, 53, 3 }, { -1, -1, 6, 28, 53, 3 }, { -2, -2, 5, 28, 53, 3 }, { -3, -3, 5, 28, 5, 3 }, { -4, -4, 5, 28, 5, 3 }, + { -5, -5, 4, 28, 5, 3 }, { -6, -6, 4, 28, 5, 3 }, { -7, -7, 4, 28, 5, 3 }, { -8, -8, 3, 28, 54, 4 }, { -9, -9, 3, 28, 54, 4 }, + { -10, -10, 3, 28, 54, 4 }, { -11, -11, 2, 28, 54, 4 }, { -12, -12, 2, 28, 54, 4 }, { -13, -13, 1, 28, 54, 4 }, { -14, -14, 1, 28, 54, 4 }, + { -15, -15, 0, 28, 54, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedDown25ToFlat0, { + { 15, 16, 7, 4, 54, 2 }, { 14, 17, 7, 4, 54, 2 }, { 13, 18, 6, 4, 54, 2 }, { 12, 19, 6, 4, 54, 2 }, { 11, 20, 6, 4, 54, 2 }, + { 10, 21, 5, 4, 54, 2 }, { 9, 22, 5, 4, 54, 2 }, { 8, 23, 4, 4, 5, 1 }, { 7, 24, 4, 4, 5, 1 }, { 6, 25, 4, 4, 5, 1 }, + { 5, 26, 3, 4, 5, 1 }, { 4, 27, 3, 4, 5, 1 }, { 3, 28, 3, 4, 53, 1 }, { 2, 29, 2, 4, 53, 1 }, { 1, 30, 2, 4, 53, 1 }, + { 0, 31, 2, 4, 53, 1 }, { -1, 32, 2, 4, 53, 1 }, { -2, 33, 1, 4, 53, 1 }, { -3, 34, 1, 4, 53, 1 }, { -4, 35, 1, 4, 53, 1 }, + { -5, 36, 1, 4, 53, 1 }, { -6, 37, 1, 4, 53, 1 }, { -7, 38, 1, 4, 53, 1 }, { -8, 39, 0, 4, 0, 0 }, { -9, 40, 0, 4, 0, 0 }, + { -10, 41, 0, 4, 0, 0 }, { -11, 42, 0, 4, 0, 0 }, { -12, 43, 0, 4, 0, 0 }, { -13, 44, 0, 4, 0, 0 }, { -14, 45, 0, 4, 0, 0 }, + { -15, 46, 0, 4, 0, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedDown25ToFlat1, { + { 16, 16, 8, 12, 54, 2 }, { 17, 17, 7, 12, 54, 2 }, { 18, 18, 7, 12, 54, 2 }, { 19, 19, 6, 12, 54, 2 }, { 20, 20, 6, 12, 54, 2 }, + { 21, 21, 6, 12, 54, 2 }, { 22, 22, 5, 12, 54, 2 }, { 23, 23, 5, 12, 54, 2 }, { 24, 24, 4, 12, 5, 1 }, { 25, 25, 4, 12, 5, 1 }, + { 26, 26, 4, 12, 5, 1 }, { 27, 27, 3, 12, 5, 1 }, { 28, 28, 3, 12, 5, 1 }, { 29, 29, 3, 12, 53, 1 }, { 30, 30, 2, 12, 53, 1 }, + { 31, 31, 2, 12, 53, 1 }, { 32, 32, 2, 12, 53, 1 }, { 33, 33, 2, 12, 53, 1 }, { 34, 34, 1, 12, 53, 1 }, { 35, 35, 1, 12, 53, 1 }, + { 36, 36, 1, 12, 53, 1 }, { 37, 37, 1, 12, 53, 1 }, { 38, 38, 1, 12, 53, 1 }, { 39, 39, 1, 12, 53, 1 }, { 40, 40, 0, 12, 0, 0 }, + { 41, 41, 0, 12, 0, 0 }, { 42, 42, 0, 12, 0, 0 }, { 43, 43, 0, 12, 0, 0 }, { 44, 44, 0, 12, 0, 0 }, { 45, 45, 0, 12, 0, 0 }, + { 46, 46, 0, 12, 0, 0 }, { 47, 47, 0, 12, 0, 0 }, { 48, 48, 0, 12, 0, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedDown25ToFlat2, { + { 16, 15, 8, 20, 54, 2 }, { 17, 14, 7, 20, 54, 2 }, { 18, 13, 7, 20, 54, 2 }, { 19, 12, 6, 20, 54, 2 }, { 20, 11, 6, 20, 54, 2 }, + { 21, 10, 6, 20, 54, 2 }, { 22, 9, 5, 20, 54, 2 }, { 23, 8, 5, 20, 54, 2 }, { 24, 7, 4, 20, 5, 1 }, { 25, 6, 4, 20, 5, 1 }, + { 26, 5, 4, 20, 5, 1 }, { 27, 4, 3, 20, 5, 1 }, { 28, 3, 3, 20, 5, 1 }, { 29, 2, 3, 20, 53, 1 }, { 30, 1, 2, 20, 53, 1 }, + { 31, 0, 2, 20, 53, 1 }, { 32, -1, 2, 20, 53, 1 }, { 33, -2, 2, 20, 53, 1 }, { 34, -3, 1, 20, 53, 1 }, { 35, -4, 1, 20, 53, 1 }, + { 36, -5, 1, 20, 53, 1 }, { 37, -6, 1, 20, 53, 1 }, { 38, -7, 1, 20, 53, 1 }, { 39, -8, 1, 20, 53, 1 }, { 40, -9, 0, 20, 0, 0 }, + { 41, -10, 0, 20, 0, 0 }, { 42, -11, 0, 20, 0, 0 }, { 43, -12, 0, 20, 0, 0 }, { 44, -13, 0, 20, 0, 0 }, { 45, -14, 0, 20, 0, 0 }, + { 46, -15, 0, 20, 0, 0 }, { 47, -16, 0, 20, 0, 0 }, { 48, -17, 0, 20, 0, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagLeftBankedDown25ToFlat3, { + { 15, 15, 7, 28, 54, 2 }, { 14, 14, 7, 28, 54, 2 }, { 13, 13, 6, 28, 54, 2 }, { 12, 12, 6, 28, 54, 2 }, { 11, 11, 6, 28, 54, 2 }, + { 10, 10, 5, 28, 54, 2 }, { 9, 9, 5, 28, 54, 2 }, { 8, 8, 4, 28, 5, 1 }, { 7, 7, 4, 28, 5, 1 }, { 6, 6, 4, 28, 5, 1 }, + { 5, 5, 3, 28, 5, 1 }, { 4, 4, 3, 28, 5, 1 }, { 3, 3, 3, 28, 53, 1 }, { 2, 2, 2, 28, 53, 1 }, { 1, 1, 2, 28, 53, 1 }, + { 0, 0, 2, 28, 53, 1 }, { -1, -1, 2, 28, 53, 1 }, { -2, -2, 1, 28, 53, 1 }, { -3, -3, 1, 28, 53, 1 }, { -4, -4, 1, 28, 53, 1 }, + { -5, -5, 1, 28, 53, 1 }, { -6, -6, 1, 28, 53, 1 }, { -7, -7, 1, 28, 53, 1 }, { -8, -8, 0, 28, 0, 0 }, { -9, -9, 0, 28, 0, 0 }, + { -10, -10, 0, 28, 0, 0 }, { -11, -11, 0, 28, 0, 0 }, { -12, -12, 0, 28, 0, 0 }, { -13, -13, 0, 28, 0, 0 }, { -14, -14, 0, 28, 0, 0 }, + { -15, -15, 0, 28, 0, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedDown25ToFlat0, { + { 15, 16, 7, 4, 54, 4 }, { 14, 17, 7, 4, 54, 4 }, { 13, 18, 6, 4, 54, 4 }, { 12, 19, 6, 4, 54, 4 }, { 11, 20, 6, 4, 54, 4 }, + { 10, 21, 5, 4, 54, 4 }, { 9, 22, 5, 4, 54, 4 }, { 8, 23, 4, 4, 5, 3 }, { 7, 24, 4, 4, 5, 3 }, { 6, 25, 4, 4, 5, 3 }, + { 5, 26, 3, 4, 5, 3 }, { 4, 27, 3, 4, 5, 3 }, { 3, 28, 3, 4, 53, 3 }, { 2, 29, 2, 4, 53, 3 }, { 1, 30, 2, 4, 53, 3 }, + { 0, 31, 2, 4, 53, 3 }, { -1, 32, 2, 4, 53, 3 }, { -2, 33, 1, 4, 53, 3 }, { -3, 34, 1, 4, 53, 3 }, { -4, 35, 1, 4, 53, 3 }, + { -5, 36, 1, 4, 53, 3 }, { -6, 37, 1, 4, 53, 3 }, { -7, 38, 1, 4, 53, 3 }, { -8, 39, 0, 4, 0, 0 }, { -9, 40, 0, 4, 0, 0 }, + { -10, 41, 0, 4, 0, 0 }, { -11, 42, 0, 4, 0, 0 }, { -12, 43, 0, 4, 0, 0 }, { -13, 44, 0, 4, 0, 0 }, { -14, 45, 0, 4, 0, 0 }, + { -15, 46, 0, 4, 0, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedDown25ToFlat1, { + { 16, 16, 8, 12, 54, 4 }, { 17, 17, 7, 12, 54, 4 }, { 18, 18, 7, 12, 54, 4 }, { 19, 19, 6, 12, 54, 4 }, { 20, 20, 6, 12, 54, 4 }, + { 21, 21, 6, 12, 54, 4 }, { 22, 22, 5, 12, 54, 4 }, { 23, 23, 5, 12, 54, 4 }, { 24, 24, 4, 12, 5, 3 }, { 25, 25, 4, 12, 5, 3 }, + { 26, 26, 4, 12, 5, 3 }, { 27, 27, 3, 12, 5, 3 }, { 28, 28, 3, 12, 5, 3 }, { 29, 29, 3, 12, 53, 3 }, { 30, 30, 2, 12, 53, 3 }, + { 31, 31, 2, 12, 53, 3 }, { 32, 32, 2, 12, 53, 3 }, { 33, 33, 2, 12, 53, 3 }, { 34, 34, 1, 12, 53, 3 }, { 35, 35, 1, 12, 53, 3 }, + { 36, 36, 1, 12, 53, 3 }, { 37, 37, 1, 12, 53, 3 }, { 38, 38, 1, 12, 53, 3 }, { 39, 39, 1, 12, 53, 3 }, { 40, 40, 0, 12, 0, 0 }, + { 41, 41, 0, 12, 0, 0 }, { 42, 42, 0, 12, 0, 0 }, { 43, 43, 0, 12, 0, 0 }, { 44, 44, 0, 12, 0, 0 }, { 45, 45, 0, 12, 0, 0 }, + { 46, 46, 0, 12, 0, 0 }, { 47, 47, 0, 12, 0, 0 }, { 48, 48, 0, 12, 0, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedDown25ToFlat2, { + { 16, 15, 8, 20, 54, 4 }, { 17, 14, 7, 20, 54, 4 }, { 18, 13, 7, 20, 54, 4 }, { 19, 12, 6, 20, 54, 4 }, { 20, 11, 6, 20, 54, 4 }, + { 21, 10, 6, 20, 54, 4 }, { 22, 9, 5, 20, 54, 4 }, { 23, 8, 5, 20, 54, 4 }, { 24, 7, 4, 20, 5, 3 }, { 25, 6, 4, 20, 5, 3 }, + { 26, 5, 4, 20, 5, 3 }, { 27, 4, 3, 20, 5, 3 }, { 28, 3, 3, 20, 5, 3 }, { 29, 2, 3, 20, 53, 3 }, { 30, 1, 2, 20, 53, 3 }, + { 31, 0, 2, 20, 53, 3 }, { 32, -1, 2, 20, 53, 3 }, { 33, -2, 2, 20, 53, 3 }, { 34, -3, 1, 20, 53, 3 }, { 35, -4, 1, 20, 53, 3 }, + { 36, -5, 1, 20, 53, 3 }, { 37, -6, 1, 20, 53, 3 }, { 38, -7, 1, 20, 53, 3 }, { 39, -8, 1, 20, 53, 3 }, { 40, -9, 0, 20, 0, 0 }, + { 41, -10, 0, 20, 0, 0 }, { 42, -11, 0, 20, 0, 0 }, { 43, -12, 0, 20, 0, 0 }, { 44, -13, 0, 20, 0, 0 }, { 45, -14, 0, 20, 0, 0 }, + { 46, -15, 0, 20, 0, 0 }, { 47, -16, 0, 20, 0, 0 }, { 48, -17, 0, 20, 0, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoDiagRightBankedDown25ToFlat3, { + { 15, 15, 7, 28, 54, 4 }, { 14, 14, 7, 28, 54, 4 }, { 13, 13, 6, 28, 54, 4 }, { 12, 12, 6, 28, 54, 4 }, { 11, 11, 6, 28, 54, 4 }, + { 10, 10, 5, 28, 54, 4 }, { 9, 9, 5, 28, 54, 4 }, { 8, 8, 4, 28, 5, 3 }, { 7, 7, 4, 28, 5, 3 }, { 6, 6, 4, 28, 5, 3 }, + { 5, 5, 3, 28, 5, 3 }, { 4, 4, 3, 28, 5, 3 }, { 3, 3, 3, 28, 53, 3 }, { 2, 2, 2, 28, 53, 3 }, { 1, 1, 2, 28, 53, 3 }, + { 0, 0, 2, 28, 53, 3 }, { -1, -1, 2, 28, 53, 3 }, { -2, -2, 1, 28, 53, 3 }, { -3, -3, 1, 28, 53, 3 }, { -4, -4, 1, 28, 53, 3 }, + { -5, -5, 1, 28, 53, 3 }, { -6, -6, 1, 28, 53, 3 }, { -7, -7, 1, 28, 53, 3 }, { -8, -8, 0, 28, 0, 0 }, { -9, -9, 0, 28, 0, 0 }, + { -10, -10, 0, 28, 0, 0 }, { -11, -11, 0, 28, 0, 0 }, { -12, -12, 0, 28, 0, 0 }, { -13, -13, 0, 28, 0, 0 }, { -14, -14, 0, 28, 0, 0 }, + { -15, -15, 0, 28, 0, 0 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthBankToDiagUp250, { + { 31, 16, 1, 0, 2, 2 }, { 30, 16, 1, 0, 2, 2 }, { 29, 16, 2, 0, 2, 2 }, { 28, 16, 2, 0, 2, 2 }, { 27, 16, 3, 0, 2, 2 }, + { 26, 16, 4, 0, 2, 2 }, { 25, 16, 4, 0, 2, 2 }, { 24, 16, 5, 0, 2, 2 }, { 23, 16, 5, 0, 2, 2 }, { 22, 15, 6, 0, 2, 2 }, + { 21, 15, 6, 31, 2, 2 }, { 20, 15, 7, 31, 2, 2 }, { 19, 15, 7, 31, 2, 2 }, { 18, 15, 8, 31, 2, 2 }, { 17, 15, 9, 31, 2, 2 }, + { 16, 15, 9, 31, 2, 2 }, { 15, 15, 10, 31, 2, 2 }, { 14, 14, 10, 31, 2, 2 }, { 13, 14, 11, 31, 2, 2 }, { 12, 14, 12, 31, 2, 2 }, + { 11, 14, 12, 31, 2, 2 }, { 10, 14, 13, 31, 2, 2 }, { 9, 13, 13, 31, 2, 2 }, { 8, 13, 14, 31, 2, 2 }, { 7, 13, 14, 31, 2, 2 }, + { 6, 13, 15, 31, 2, 2 }, { 5, 13, 16, 31, 2, 2 }, { 4, 12, 16, 31, 2, 2 }, { 3, 12, 17, 31, 2, 2 }, { 2, 12, 17, 31, 2, 2 }, + { 1, 11, 18, 31, 2, 2 }, { 0, 11, 19, 31, 2, 2 }, { -1, 11, 19, 30, 2, 2 }, { -2, 11, 20, 30, 2, 2 }, { -3, 10, 20, 30, 2, 2 }, + { -4, 10, 21, 30, 2, 2 }, { -5, 10, 22, 30, 2, 2 }, { -6, 9, 22, 30, 2, 2 }, { -7, 9, 23, 30, 2, 2 }, { -8, 8, 23, 30, 2, 2 }, + { -9, 8, 24, 30, 2, 2 }, { -10, 8, 25, 30, 2, 2 }, { -11, 7, 25, 30, 2, 2 }, { -12, 7, 26, 30, 2, 2 }, { -13, 7, 26, 30, 2, 2 }, + { -14, 6, 27, 30, 2, 2 }, { -15, 6, 28, 30, 2, 2 }, { -16, 5, 28, 30, 2, 2 }, { -17, 5, 29, 30, 2, 2 }, { -18, 4, 30, 30, 2, 2 }, + { -19, 4, 30, 30, 2, 2 }, { -20, 3, 31, 30, 2, 2 }, { -21, 3, 31, 30, 2, 2 }, { -22, 2, 32, 30, 2, 2 }, { -23, 2, 33, 30, 2, 2 }, + { -24, 1, 33, 29, 2, 2 }, { -25, 1, 34, 29, 2, 2 }, { -26, 0, 35, 29, 2, 2 }, { -27, 0, 35, 29, 2, 2 }, { -28, -1, 36, 29, 2, 2 }, + { -29, -2, 36, 29, 2, 2 }, { -30, -2, 37, 29, 2, 2 }, { -31, -3, 38, 29, 2, 2 }, { -32, -4, 38, 29, 2, 2 }, { -33, -4, 39, 29, 2, 2 }, + { -34, -5, 39, 29, 2, 2 }, { -35, -6, 40, 29, 2, 2 }, { -36, -6, 41, 29, 2, 2 }, { -37, -7, 41, 29, 2, 2 }, { -38, -8, 42, 29, 2, 2 }, + { -39, -9, 43, 29, 2, 2 }, { -40, -9, 43, 29, 2, 2 }, { -41, -10, 44, 29, 2, 2 }, { -42, -11, 44, 28, 2, 2 }, { -43, -12, 45, 28, 2, 2 }, + { -44, -13, 46, 28, 2, 2 }, { -45, -14, 46, 28, 2, 2 }, { -46, -15, 47, 28, 2, 2 }, { -47, -15, 48, 28, 2, 2 }, { -48, -16, 48, 28, 2, 2 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthBankToDiagUp251, { + { 16, 0, 0, 8, 2, 2 }, { 16, 1, 1, 8, 2, 2 }, { 16, 2, 1, 8, 2, 2 }, { 16, 3, 2, 8, 2, 2 }, { 16, 4, 2, 8, 2, 2 }, + { 16, 5, 3, 8, 2, 2 }, { 16, 6, 4, 8, 2, 2 }, { 16, 7, 4, 8, 2, 2 }, { 16, 8, 5, 8, 2, 2 }, { 16, 9, 5, 8, 2, 2 }, + { 15, 10, 6, 8, 2, 2 }, { 15, 11, 6, 7, 2, 2 }, { 15, 12, 7, 7, 2, 2 }, { 15, 13, 7, 7, 2, 2 }, { 15, 14, 8, 7, 2, 2 }, + { 15, 15, 9, 7, 2, 2 }, { 15, 16, 9, 7, 2, 2 }, { 15, 17, 10, 7, 2, 2 }, { 14, 18, 10, 7, 2, 2 }, { 14, 19, 11, 7, 2, 2 }, + { 14, 20, 12, 7, 2, 2 }, { 14, 21, 12, 7, 2, 2 }, { 14, 22, 13, 7, 2, 2 }, { 13, 23, 13, 7, 2, 2 }, { 13, 24, 14, 7, 2, 2 }, + { 13, 25, 14, 7, 2, 2 }, { 13, 26, 15, 7, 2, 2 }, { 13, 27, 16, 7, 2, 2 }, { 12, 28, 16, 7, 2, 2 }, { 12, 29, 17, 7, 2, 2 }, + { 12, 30, 17, 7, 2, 2 }, { 11, 31, 18, 7, 2, 2 }, { 11, 32, 19, 7, 2, 2 }, { 11, 33, 19, 6, 2, 2 }, { 11, 34, 20, 6, 2, 2 }, + { 10, 35, 20, 6, 2, 2 }, { 10, 36, 21, 6, 2, 2 }, { 10, 37, 22, 6, 2, 2 }, { 9, 38, 22, 6, 2, 2 }, { 9, 39, 23, 6, 2, 2 }, + { 8, 40, 23, 6, 2, 2 }, { 8, 41, 24, 6, 2, 2 }, { 8, 42, 25, 6, 2, 2 }, { 7, 43, 25, 6, 2, 2 }, { 7, 44, 26, 6, 2, 2 }, + { 7, 45, 26, 6, 2, 2 }, { 6, 46, 27, 6, 2, 2 }, { 6, 47, 28, 6, 2, 2 }, { 5, 48, 28, 6, 2, 2 }, { 5, 49, 29, 6, 2, 2 }, + { 4, 50, 30, 6, 2, 2 }, { 4, 51, 30, 6, 2, 2 }, { 3, 52, 31, 6, 2, 2 }, { 3, 53, 31, 6, 2, 2 }, { 2, 54, 32, 6, 2, 2 }, + { 2, 55, 33, 6, 2, 2 }, { 1, 56, 33, 5, 2, 2 }, { 1, 57, 34, 5, 2, 2 }, { 0, 58, 35, 5, 2, 2 }, { 0, 59, 35, 5, 2, 2 }, + { -1, 60, 36, 5, 2, 2 }, { -2, 61, 36, 5, 2, 2 }, { -2, 62, 37, 5, 2, 2 }, { -3, 63, 38, 5, 2, 2 }, { -4, 64, 38, 5, 2, 2 }, + { -4, 65, 39, 5, 2, 2 }, { -5, 66, 39, 5, 2, 2 }, { -6, 67, 40, 5, 2, 2 }, { -6, 68, 41, 5, 2, 2 }, { -7, 69, 41, 5, 2, 2 }, + { -8, 70, 42, 5, 2, 2 }, { -9, 71, 43, 5, 2, 2 }, { -9, 72, 43, 5, 2, 2 }, { -10, 73, 44, 5, 2, 2 }, { -11, 74, 44, 4, 2, 2 }, + { -12, 75, 45, 4, 2, 2 }, { -13, 76, 46, 4, 2, 2 }, { -14, 77, 46, 4, 2, 2 }, { -15, 78, 47, 4, 2, 2 }, { -15, 79, 48, 4, 2, 2 }, + { -16, 80, 48, 4, 2, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthBankToDiagUp252, { + { 0, 16, 0, 16, 2, 2 }, { 1, 16, 1, 16, 2, 2 }, { 2, 16, 1, 16, 2, 2 }, { 3, 16, 2, 16, 2, 2 }, { 4, 16, 2, 16, 2, 2 }, + { 5, 16, 3, 16, 2, 2 }, { 6, 16, 4, 16, 2, 2 }, { 7, 16, 4, 16, 2, 2 }, { 8, 16, 5, 16, 2, 2 }, { 9, 16, 5, 16, 2, 2 }, + { 10, 17, 6, 16, 2, 2 }, { 11, 17, 6, 15, 2, 2 }, { 12, 17, 7, 15, 2, 2 }, { 13, 17, 7, 15, 2, 2 }, { 14, 17, 8, 15, 2, 2 }, + { 15, 17, 9, 15, 2, 2 }, { 16, 17, 9, 15, 2, 2 }, { 17, 17, 10, 15, 2, 2 }, { 18, 18, 10, 15, 2, 2 }, { 19, 18, 11, 15, 2, 2 }, + { 20, 18, 12, 15, 2, 2 }, { 21, 18, 12, 15, 2, 2 }, { 22, 18, 13, 15, 2, 2 }, { 23, 19, 13, 15, 2, 2 }, { 24, 19, 14, 15, 2, 2 }, + { 25, 19, 14, 15, 2, 2 }, { 26, 19, 15, 15, 2, 2 }, { 27, 19, 16, 15, 2, 2 }, { 28, 20, 16, 15, 2, 2 }, { 29, 20, 17, 15, 2, 2 }, + { 30, 20, 17, 15, 2, 2 }, { 31, 21, 18, 15, 2, 2 }, { 32, 21, 19, 15, 2, 2 }, { 33, 21, 19, 14, 2, 2 }, { 34, 21, 20, 14, 2, 2 }, + { 35, 22, 20, 14, 2, 2 }, { 36, 22, 21, 14, 2, 2 }, { 37, 22, 22, 14, 2, 2 }, { 38, 23, 22, 14, 2, 2 }, { 39, 23, 23, 14, 2, 2 }, + { 40, 24, 23, 14, 2, 2 }, { 41, 24, 24, 14, 2, 2 }, { 42, 24, 25, 14, 2, 2 }, { 43, 25, 25, 14, 2, 2 }, { 44, 25, 26, 14, 2, 2 }, + { 45, 25, 26, 14, 2, 2 }, { 46, 26, 27, 14, 2, 2 }, { 47, 26, 28, 14, 2, 2 }, { 48, 27, 28, 14, 2, 2 }, { 49, 27, 29, 14, 2, 2 }, + { 50, 28, 30, 14, 2, 2 }, { 51, 28, 30, 14, 2, 2 }, { 52, 29, 31, 14, 2, 2 }, { 53, 29, 31, 14, 2, 2 }, { 54, 30, 32, 14, 2, 2 }, + { 55, 30, 33, 14, 2, 2 }, { 56, 31, 33, 13, 2, 2 }, { 57, 31, 34, 13, 2, 2 }, { 58, 32, 35, 13, 2, 2 }, { 59, 32, 35, 13, 2, 2 }, + { 60, 33, 36, 13, 2, 2 }, { 61, 34, 36, 13, 2, 2 }, { 62, 34, 37, 13, 2, 2 }, { 63, 35, 38, 13, 2, 2 }, { 64, 36, 38, 13, 2, 2 }, + { 65, 36, 39, 13, 2, 2 }, { 66, 37, 39, 13, 2, 2 }, { 67, 38, 40, 13, 2, 2 }, { 68, 38, 41, 13, 2, 2 }, { 69, 39, 41, 13, 2, 2 }, + { 70, 40, 42, 13, 2, 2 }, { 71, 41, 43, 13, 2, 2 }, { 72, 41, 43, 13, 2, 2 }, { 73, 42, 44, 13, 2, 2 }, { 74, 43, 44, 12, 2, 2 }, + { 75, 44, 45, 12, 2, 2 }, { 76, 45, 46, 12, 2, 2 }, { 77, 46, 46, 12, 2, 2 }, { 78, 47, 47, 12, 2, 2 }, { 79, 47, 48, 12, 2, 2 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthBankToDiagUp253, { + { 16, 31, 1, 24, 2, 2 }, { 16, 30, 1, 24, 2, 2 }, { 16, 29, 2, 24, 2, 2 }, { 16, 28, 2, 24, 2, 2 }, { 16, 27, 3, 24, 2, 2 }, + { 16, 26, 4, 24, 2, 2 }, { 16, 25, 4, 24, 2, 2 }, { 16, 24, 5, 24, 2, 2 }, { 16, 23, 5, 24, 2, 2 }, { 17, 22, 6, 24, 2, 2 }, + { 17, 21, 6, 23, 2, 2 }, { 17, 20, 7, 23, 2, 2 }, { 17, 19, 7, 23, 2, 2 }, { 17, 18, 8, 23, 2, 2 }, { 17, 17, 9, 23, 2, 2 }, + { 17, 16, 9, 23, 2, 2 }, { 17, 15, 10, 23, 2, 2 }, { 18, 14, 10, 23, 2, 2 }, { 18, 13, 11, 23, 2, 2 }, { 18, 12, 12, 23, 2, 2 }, + { 18, 11, 12, 23, 2, 2 }, { 18, 10, 13, 23, 2, 2 }, { 19, 9, 13, 23, 2, 2 }, { 19, 8, 14, 23, 2, 2 }, { 19, 7, 14, 23, 2, 2 }, + { 19, 6, 15, 23, 2, 2 }, { 19, 5, 16, 23, 2, 2 }, { 20, 4, 16, 23, 2, 2 }, { 20, 3, 17, 23, 2, 2 }, { 20, 2, 17, 23, 2, 2 }, + { 21, 1, 18, 23, 2, 2 }, { 21, 0, 19, 23, 2, 2 }, { 21, -1, 19, 22, 2, 2 }, { 21, -2, 20, 22, 2, 2 }, { 22, -3, 20, 22, 2, 2 }, + { 22, -4, 21, 22, 2, 2 }, { 22, -5, 22, 22, 2, 2 }, { 23, -6, 22, 22, 2, 2 }, { 23, -7, 23, 22, 2, 2 }, { 24, -8, 23, 22, 2, 2 }, + { 24, -9, 24, 22, 2, 2 }, { 24, -10, 25, 22, 2, 2 }, { 25, -11, 25, 22, 2, 2 }, { 25, -12, 26, 22, 2, 2 }, { 25, -13, 26, 22, 2, 2 }, + { 26, -14, 27, 22, 2, 2 }, { 26, -15, 28, 22, 2, 2 }, { 27, -16, 28, 22, 2, 2 }, { 27, -17, 29, 22, 2, 2 }, { 28, -18, 30, 22, 2, 2 }, + { 28, -19, 30, 22, 2, 2 }, { 29, -20, 31, 22, 2, 2 }, { 29, -21, 31, 22, 2, 2 }, { 30, -22, 32, 22, 2, 2 }, { 30, -23, 33, 22, 2, 2 }, + { 31, -24, 33, 21, 2, 2 }, { 31, -25, 34, 21, 2, 2 }, { 32, -26, 35, 21, 2, 2 }, { 32, -27, 35, 21, 2, 2 }, { 33, -28, 36, 21, 2, 2 }, + { 34, -29, 36, 21, 2, 2 }, { 34, -30, 37, 21, 2, 2 }, { 35, -31, 38, 21, 2, 2 }, { 36, -32, 38, 21, 2, 2 }, { 36, -33, 39, 21, 2, 2 }, + { 37, -34, 39, 21, 2, 2 }, { 38, -35, 40, 21, 2, 2 }, { 38, -36, 41, 21, 2, 2 }, { 39, -37, 41, 21, 2, 2 }, { 40, -38, 42, 21, 2, 2 }, + { 41, -39, 43, 21, 2, 2 }, { 41, -40, 43, 21, 2, 2 }, { 42, -41, 44, 21, 2, 2 }, { 43, -42, 44, 20, 2, 2 }, { 44, -43, 45, 20, 2, 2 }, + { 45, -44, 46, 20, 2, 2 }, { 46, -45, 46, 20, 2, 2 }, { 47, -46, 47, 20, 2, 2 }, { 47, -47, 48, 20, 2, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthBankToDiagUp250, { + { 31, 16, 1, 0, 2, 4 }, { 30, 16, 1, 0, 2, 4 }, { 29, 16, 2, 0, 2, 4 }, { 28, 16, 2, 0, 2, 4 }, { 27, 16, 3, 0, 2, 4 }, + { 26, 16, 4, 0, 2, 4 }, { 25, 16, 4, 0, 2, 4 }, { 24, 16, 5, 0, 2, 4 }, { 23, 16, 5, 0, 2, 4 }, { 22, 17, 6, 0, 2, 4 }, + { 21, 17, 6, 1, 2, 4 }, { 20, 17, 7, 1, 2, 4 }, { 19, 17, 7, 1, 2, 4 }, { 18, 17, 8, 1, 2, 4 }, { 17, 17, 9, 1, 2, 4 }, + { 16, 17, 9, 1, 2, 4 }, { 15, 17, 10, 1, 2, 4 }, { 14, 18, 10, 1, 2, 4 }, { 13, 18, 11, 1, 2, 4 }, { 12, 18, 12, 1, 2, 4 }, + { 11, 18, 12, 1, 2, 4 }, { 10, 18, 13, 1, 2, 4 }, { 9, 19, 13, 1, 2, 4 }, { 8, 19, 14, 1, 2, 4 }, { 7, 19, 14, 1, 2, 4 }, + { 6, 19, 15, 1, 2, 4 }, { 5, 19, 16, 1, 2, 4 }, { 4, 20, 16, 1, 2, 4 }, { 3, 20, 17, 1, 2, 4 }, { 2, 20, 17, 1, 2, 4 }, + { 1, 21, 18, 1, 2, 4 }, { 0, 21, 19, 1, 2, 4 }, { -1, 21, 19, 2, 2, 4 }, { -2, 21, 20, 2, 2, 4 }, { -3, 22, 20, 2, 2, 4 }, + { -4, 22, 21, 2, 2, 4 }, { -5, 22, 22, 2, 2, 4 }, { -6, 23, 22, 2, 2, 4 }, { -7, 23, 23, 2, 2, 4 }, { -8, 24, 23, 2, 2, 4 }, + { -9, 24, 24, 2, 2, 4 }, { -10, 24, 25, 2, 2, 4 }, { -11, 25, 25, 2, 2, 4 }, { -12, 25, 26, 2, 2, 4 }, { -13, 25, 26, 2, 2, 4 }, + { -14, 26, 27, 2, 2, 4 }, { -15, 26, 28, 2, 2, 4 }, { -16, 27, 28, 2, 2, 4 }, { -17, 27, 29, 2, 2, 4 }, { -18, 28, 30, 2, 2, 4 }, + { -19, 28, 30, 2, 2, 4 }, { -20, 29, 31, 2, 2, 4 }, { -21, 29, 31, 2, 2, 4 }, { -22, 30, 32, 2, 2, 4 }, { -23, 30, 33, 2, 2, 4 }, + { -24, 31, 33, 3, 2, 4 }, { -25, 31, 34, 3, 2, 4 }, { -26, 32, 35, 3, 2, 4 }, { -27, 32, 35, 3, 2, 4 }, { -28, 33, 36, 3, 2, 4 }, + { -29, 34, 36, 3, 2, 4 }, { -30, 34, 37, 3, 2, 4 }, { -31, 35, 38, 3, 2, 4 }, { -32, 36, 38, 3, 2, 4 }, { -33, 36, 39, 3, 2, 4 }, + { -34, 37, 39, 3, 2, 4 }, { -35, 38, 40, 3, 2, 4 }, { -36, 38, 41, 3, 2, 4 }, { -37, 39, 41, 3, 2, 4 }, { -38, 40, 42, 3, 2, 4 }, + { -39, 41, 43, 3, 2, 4 }, { -40, 41, 43, 3, 2, 4 }, { -41, 42, 44, 3, 2, 4 }, { -42, 43, 44, 4, 2, 4 }, { -43, 44, 45, 4, 2, 4 }, + { -44, 45, 46, 4, 2, 4 }, { -45, 46, 46, 4, 2, 4 }, { -46, 47, 47, 4, 2, 4 }, { -47, 47, 48, 4, 2, 4 }, { -48, 48, 48, 4, 2, 4 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthBankToDiagUp251, { + { 16, 0, 0, 8, 2, 4 }, { 16, 1, 1, 8, 2, 4 }, { 16, 2, 1, 8, 2, 4 }, { 16, 3, 2, 8, 2, 4 }, { 16, 4, 2, 8, 2, 4 }, + { 16, 5, 3, 8, 2, 4 }, { 16, 6, 4, 8, 2, 4 }, { 16, 7, 4, 8, 2, 4 }, { 16, 8, 5, 8, 2, 4 }, { 16, 9, 5, 8, 2, 4 }, + { 17, 10, 6, 8, 2, 4 }, { 17, 11, 6, 9, 2, 4 }, { 17, 12, 7, 9, 2, 4 }, { 17, 13, 7, 9, 2, 4 }, { 17, 14, 8, 9, 2, 4 }, + { 17, 15, 9, 9, 2, 4 }, { 17, 16, 9, 9, 2, 4 }, { 17, 17, 10, 9, 2, 4 }, { 18, 18, 10, 9, 2, 4 }, { 18, 19, 11, 9, 2, 4 }, + { 18, 20, 12, 9, 2, 4 }, { 18, 21, 12, 9, 2, 4 }, { 18, 22, 13, 9, 2, 4 }, { 19, 23, 13, 9, 2, 4 }, { 19, 24, 14, 9, 2, 4 }, + { 19, 25, 14, 9, 2, 4 }, { 19, 26, 15, 9, 2, 4 }, { 19, 27, 16, 9, 2, 4 }, { 20, 28, 16, 9, 2, 4 }, { 20, 29, 17, 9, 2, 4 }, + { 20, 30, 17, 9, 2, 4 }, { 21, 31, 18, 9, 2, 4 }, { 21, 32, 19, 9, 2, 4 }, { 21, 33, 19, 10, 2, 4 }, { 21, 34, 20, 10, 2, 4 }, + { 22, 35, 20, 10, 2, 4 }, { 22, 36, 21, 10, 2, 4 }, { 22, 37, 22, 10, 2, 4 }, { 23, 38, 22, 10, 2, 4 }, { 23, 39, 23, 10, 2, 4 }, + { 24, 40, 23, 10, 2, 4 }, { 24, 41, 24, 10, 2, 4 }, { 24, 42, 25, 10, 2, 4 }, { 25, 43, 25, 10, 2, 4 }, { 25, 44, 26, 10, 2, 4 }, + { 25, 45, 26, 10, 2, 4 }, { 26, 46, 27, 10, 2, 4 }, { 26, 47, 28, 10, 2, 4 }, { 27, 48, 28, 10, 2, 4 }, { 27, 49, 29, 10, 2, 4 }, + { 28, 50, 30, 10, 2, 4 }, { 28, 51, 30, 10, 2, 4 }, { 29, 52, 31, 10, 2, 4 }, { 29, 53, 31, 10, 2, 4 }, { 30, 54, 32, 10, 2, 4 }, + { 30, 55, 33, 10, 2, 4 }, { 31, 56, 33, 11, 2, 4 }, { 31, 57, 34, 11, 2, 4 }, { 32, 58, 35, 11, 2, 4 }, { 32, 59, 35, 11, 2, 4 }, + { 33, 60, 36, 11, 2, 4 }, { 34, 61, 36, 11, 2, 4 }, { 34, 62, 37, 11, 2, 4 }, { 35, 63, 38, 11, 2, 4 }, { 36, 64, 38, 11, 2, 4 }, + { 36, 65, 39, 11, 2, 4 }, { 37, 66, 39, 11, 2, 4 }, { 38, 67, 40, 11, 2, 4 }, { 38, 68, 41, 11, 2, 4 }, { 39, 69, 41, 11, 2, 4 }, + { 40, 70, 42, 11, 2, 4 }, { 41, 71, 43, 11, 2, 4 }, { 41, 72, 43, 11, 2, 4 }, { 42, 73, 44, 11, 2, 4 }, { 43, 74, 44, 12, 2, 4 }, + { 44, 75, 45, 12, 2, 4 }, { 45, 76, 46, 12, 2, 4 }, { 46, 77, 46, 12, 2, 4 }, { 47, 78, 47, 12, 2, 4 }, { 47, 79, 48, 12, 2, 4 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthBankToDiagUp252, { + { 0, 16, 0, 16, 2, 4 }, { 1, 16, 1, 16, 2, 4 }, { 2, 16, 1, 16, 2, 4 }, { 3, 16, 2, 16, 2, 4 }, { 4, 16, 2, 16, 2, 4 }, + { 5, 16, 3, 16, 2, 4 }, { 6, 16, 4, 16, 2, 4 }, { 7, 16, 4, 16, 2, 4 }, { 8, 16, 5, 16, 2, 4 }, { 9, 16, 5, 16, 2, 4 }, + { 10, 15, 6, 16, 2, 4 }, { 11, 15, 6, 17, 2, 4 }, { 12, 15, 7, 17, 2, 4 }, { 13, 15, 7, 17, 2, 4 }, { 14, 15, 8, 17, 2, 4 }, + { 15, 15, 9, 17, 2, 4 }, { 16, 15, 9, 17, 2, 4 }, { 17, 15, 10, 17, 2, 4 }, { 18, 14, 10, 17, 2, 4 }, { 19, 14, 11, 17, 2, 4 }, + { 20, 14, 12, 17, 2, 4 }, { 21, 14, 12, 17, 2, 4 }, { 22, 14, 13, 17, 2, 4 }, { 23, 13, 13, 17, 2, 4 }, { 24, 13, 14, 17, 2, 4 }, + { 25, 13, 14, 17, 2, 4 }, { 26, 13, 15, 17, 2, 4 }, { 27, 13, 16, 17, 2, 4 }, { 28, 12, 16, 17, 2, 4 }, { 29, 12, 17, 17, 2, 4 }, + { 30, 12, 17, 17, 2, 4 }, { 31, 11, 18, 17, 2, 4 }, { 32, 11, 19, 17, 2, 4 }, { 33, 11, 19, 18, 2, 4 }, { 34, 11, 20, 18, 2, 4 }, + { 35, 10, 20, 18, 2, 4 }, { 36, 10, 21, 18, 2, 4 }, { 37, 10, 22, 18, 2, 4 }, { 38, 9, 22, 18, 2, 4 }, { 39, 9, 23, 18, 2, 4 }, + { 40, 8, 23, 18, 2, 4 }, { 41, 8, 24, 18, 2, 4 }, { 42, 8, 25, 18, 2, 4 }, { 43, 7, 25, 18, 2, 4 }, { 44, 7, 26, 18, 2, 4 }, + { 45, 7, 26, 18, 2, 4 }, { 46, 6, 27, 18, 2, 4 }, { 47, 6, 28, 18, 2, 4 }, { 48, 5, 28, 18, 2, 4 }, { 49, 5, 29, 18, 2, 4 }, + { 50, 4, 30, 18, 2, 4 }, { 51, 4, 30, 18, 2, 4 }, { 52, 3, 31, 18, 2, 4 }, { 53, 3, 31, 18, 2, 4 }, { 54, 2, 32, 18, 2, 4 }, + { 55, 2, 33, 18, 2, 4 }, { 56, 1, 33, 19, 2, 4 }, { 57, 1, 34, 19, 2, 4 }, { 58, 0, 35, 19, 2, 4 }, { 59, 0, 35, 19, 2, 4 }, + { 60, -1, 36, 19, 2, 4 }, { 61, -2, 36, 19, 2, 4 }, { 62, -2, 37, 19, 2, 4 }, { 63, -3, 38, 19, 2, 4 }, { 64, -4, 38, 19, 2, 4 }, + { 65, -4, 39, 19, 2, 4 }, { 66, -5, 39, 19, 2, 4 }, { 67, -6, 40, 19, 2, 4 }, { 68, -6, 41, 19, 2, 4 }, { 69, -7, 41, 19, 2, 4 }, + { 70, -8, 42, 19, 2, 4 }, { 71, -9, 43, 19, 2, 4 }, { 72, -9, 43, 19, 2, 4 }, { 73, -10, 44, 19, 2, 4 }, { 74, -11, 44, 20, 2, 4 }, + { 75, -12, 45, 20, 2, 4 }, { 76, -13, 46, 20, 2, 4 }, { 77, -14, 46, 20, 2, 4 }, { 78, -15, 47, 20, 2, 4 }, { 79, -15, 48, 20, 2, 4 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthBankToDiagUp253, { + { 16, 31, 1, 24, 2, 4 }, { 16, 30, 1, 24, 2, 4 }, { 16, 29, 2, 24, 2, 4 }, { 16, 28, 2, 24, 2, 4 }, { 16, 27, 3, 24, 2, 4 }, + { 16, 26, 4, 24, 2, 4 }, { 16, 25, 4, 24, 2, 4 }, { 16, 24, 5, 24, 2, 4 }, { 16, 23, 5, 24, 2, 4 }, { 15, 22, 6, 24, 2, 4 }, + { 15, 21, 6, 25, 2, 4 }, { 15, 20, 7, 25, 2, 4 }, { 15, 19, 7, 25, 2, 4 }, { 15, 18, 8, 25, 2, 4 }, { 15, 17, 9, 25, 2, 4 }, + { 15, 16, 9, 25, 2, 4 }, { 15, 15, 10, 25, 2, 4 }, { 14, 14, 10, 25, 2, 4 }, { 14, 13, 11, 25, 2, 4 }, { 14, 12, 12, 25, 2, 4 }, + { 14, 11, 12, 25, 2, 4 }, { 14, 10, 13, 25, 2, 4 }, { 13, 9, 13, 25, 2, 4 }, { 13, 8, 14, 25, 2, 4 }, { 13, 7, 14, 25, 2, 4 }, + { 13, 6, 15, 25, 2, 4 }, { 13, 5, 16, 25, 2, 4 }, { 12, 4, 16, 25, 2, 4 }, { 12, 3, 17, 25, 2, 4 }, { 12, 2, 17, 25, 2, 4 }, + { 11, 1, 18, 25, 2, 4 }, { 11, 0, 19, 25, 2, 4 }, { 11, -1, 19, 26, 2, 4 }, { 11, -2, 20, 26, 2, 4 }, { 10, -3, 20, 26, 2, 4 }, + { 10, -4, 21, 26, 2, 4 }, { 10, -5, 22, 26, 2, 4 }, { 9, -6, 22, 26, 2, 4 }, { 9, -7, 23, 26, 2, 4 }, { 8, -8, 23, 26, 2, 4 }, + { 8, -9, 24, 26, 2, 4 }, { 8, -10, 25, 26, 2, 4 }, { 7, -11, 25, 26, 2, 4 }, { 7, -12, 26, 26, 2, 4 }, { 7, -13, 26, 26, 2, 4 }, + { 6, -14, 27, 26, 2, 4 }, { 6, -15, 28, 26, 2, 4 }, { 5, -16, 28, 26, 2, 4 }, { 5, -17, 29, 26, 2, 4 }, { 4, -18, 30, 26, 2, 4 }, + { 4, -19, 30, 26, 2, 4 }, { 3, -20, 31, 26, 2, 4 }, { 3, -21, 31, 26, 2, 4 }, { 2, -22, 32, 26, 2, 4 }, { 2, -23, 33, 26, 2, 4 }, + { 1, -24, 33, 27, 2, 4 }, { 1, -25, 34, 27, 2, 4 }, { 0, -26, 35, 27, 2, 4 }, { 0, -27, 35, 27, 2, 4 }, { -1, -28, 36, 27, 2, 4 }, + { -2, -29, 36, 27, 2, 4 }, { -2, -30, 37, 27, 2, 4 }, { -3, -31, 38, 27, 2, 4 }, { -4, -32, 38, 27, 2, 4 }, { -4, -33, 39, 27, 2, 4 }, + { -5, -34, 39, 27, 2, 4 }, { -6, -35, 40, 27, 2, 4 }, { -6, -36, 41, 27, 2, 4 }, { -7, -37, 41, 27, 2, 4 }, { -8, -38, 42, 27, 2, 4 }, + { -9, -39, 43, 27, 2, 4 }, { -9, -40, 43, 27, 2, 4 }, { -10, -41, 44, 27, 2, 4 }, { -11, -42, 44, 28, 2, 4 }, { -12, -43, 45, 28, 2, 4 }, + { -13, -44, 46, 28, 2, 4 }, { -14, -45, 46, 28, 2, 4 }, { -15, -46, 47, 28, 2, 4 }, { -15, -47, 48, 28, 2, 4 }, { -16, -48, 48, 28, 2, 4 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthBankToDiagDown250, { + { 31, 16, 15, 0, 6, 2 }, { 30, 16, 15, 0, 6, 2 }, { 29, 16, 14, 0, 6, 2 }, { 28, 16, 14, 0, 6, 2 }, { 27, 16, 13, 0, 6, 2 }, + { 26, 16, 12, 0, 6, 2 }, { 25, 16, 12, 0, 6, 2 }, { 24, 16, 11, 0, 6, 2 }, { 23, 16, 11, 0, 6, 2 }, { 22, 15, 10, 0, 6, 2 }, + { 21, 15, 10, 31, 6, 2 }, { 20, 15, 9, 31, 6, 2 }, { 19, 15, 9, 31, 6, 2 }, { 18, 15, 8, 31, 6, 2 }, { 17, 15, 7, 31, 6, 2 }, + { 16, 15, 7, 31, 6, 2 }, { 15, 15, 6, 31, 6, 2 }, { 14, 14, 6, 31, 6, 2 }, { 13, 14, 5, 31, 6, 2 }, { 12, 14, 4, 31, 6, 2 }, + { 11, 14, 4, 31, 6, 2 }, { 10, 14, 3, 31, 6, 2 }, { 9, 13, 3, 31, 6, 2 }, { 8, 13, 2, 31, 6, 2 }, { 7, 13, 2, 31, 6, 2 }, + { 6, 13, 1, 31, 6, 2 }, { 5, 13, 0, 31, 6, 2 }, { 4, 12, 0, 31, 6, 2 }, { 3, 12, -1, 31, 6, 2 }, { 2, 12, -1, 31, 6, 2 }, + { 1, 11, -2, 31, 6, 2 }, { 0, 11, -3, 31, 6, 2 }, { -1, 11, -3, 30, 6, 2 }, { -2, 11, -4, 30, 6, 2 }, { -3, 10, -4, 30, 6, 2 }, + { -4, 10, -5, 30, 6, 2 }, { -5, 10, -6, 30, 6, 2 }, { -6, 9, -6, 30, 6, 2 }, { -7, 9, -7, 30, 6, 2 }, { -8, 8, -7, 30, 6, 2 }, + { -9, 8, -8, 30, 6, 2 }, { -10, 8, -9, 30, 6, 2 }, { -11, 7, -9, 30, 6, 2 }, { -12, 7, -10, 30, 6, 2 }, { -13, 7, -10, 30, 6, 2 }, + { -14, 6, -11, 30, 6, 2 }, { -15, 6, -12, 30, 6, 2 }, { -16, 5, -12, 30, 6, 2 }, { -17, 5, -13, 30, 6, 2 }, { -18, 4, -14, 30, 6, 2 }, + { -19, 4, -14, 30, 6, 2 }, { -20, 3, -15, 30, 6, 2 }, { -21, 3, -15, 30, 6, 2 }, { -22, 2, -16, 30, 6, 2 }, { -23, 2, -17, 30, 6, 2 }, + { -24, 1, -17, 29, 6, 2 }, { -25, 1, -18, 29, 6, 2 }, { -26, 0, -19, 29, 6, 2 }, { -27, 0, -19, 29, 6, 2 }, { -28, -1, -20, 29, 6, 2 }, + { -29, -2, -20, 29, 6, 2 }, { -30, -2, -21, 29, 6, 2 }, { -31, -3, -22, 29, 6, 2 }, { -32, -4, -22, 29, 6, 2 }, { -33, -4, -23, 29, 6, 2 }, + { -34, -5, -23, 29, 6, 2 }, { -35, -6, -24, 29, 6, 2 }, { -36, -6, -25, 29, 6, 2 }, { -37, -7, -25, 29, 6, 2 }, { -38, -8, -26, 29, 6, 2 }, + { -39, -9, -27, 29, 6, 2 }, { -40, -9, -27, 29, 6, 2 }, { -41, -10, -28, 29, 6, 2 }, { -42, -11, -28, 28, 6, 2 }, { -43, -12, -29, 28, 6, 2 }, + { -44, -13, -30, 28, 6, 2 }, { -45, -14, -30, 28, 6, 2 }, { -46, -15, -31, 28, 6, 2 }, { -47, -15, -32, 28, 6, 2 }, { -48, -16, -32, 28, 6, 2 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthBankToDiagDown251, { + { 16, 0, 16, 8, 6, 2 }, { 16, 1, 15, 8, 6, 2 }, { 16, 2, 15, 8, 6, 2 }, { 16, 3, 14, 8, 6, 2 }, { 16, 4, 14, 8, 6, 2 }, + { 16, 5, 13, 8, 6, 2 }, { 16, 6, 12, 8, 6, 2 }, { 16, 7, 12, 8, 6, 2 }, { 16, 8, 11, 8, 6, 2 }, { 16, 9, 11, 8, 6, 2 }, + { 15, 10, 10, 8, 6, 2 }, { 15, 11, 10, 7, 6, 2 }, { 15, 12, 9, 7, 6, 2 }, { 15, 13, 9, 7, 6, 2 }, { 15, 14, 8, 7, 6, 2 }, + { 15, 15, 7, 7, 6, 2 }, { 15, 16, 7, 7, 6, 2 }, { 15, 17, 6, 7, 6, 2 }, { 14, 18, 6, 7, 6, 2 }, { 14, 19, 5, 7, 6, 2 }, + { 14, 20, 4, 7, 6, 2 }, { 14, 21, 4, 7, 6, 2 }, { 14, 22, 3, 7, 6, 2 }, { 13, 23, 3, 7, 6, 2 }, { 13, 24, 2, 7, 6, 2 }, + { 13, 25, 2, 7, 6, 2 }, { 13, 26, 1, 7, 6, 2 }, { 13, 27, 0, 7, 6, 2 }, { 12, 28, 0, 7, 6, 2 }, { 12, 29, -1, 7, 6, 2 }, + { 12, 30, -1, 7, 6, 2 }, { 11, 31, -2, 7, 6, 2 }, { 11, 32, -3, 7, 6, 2 }, { 11, 33, -3, 6, 6, 2 }, { 11, 34, -4, 6, 6, 2 }, + { 10, 35, -4, 6, 6, 2 }, { 10, 36, -5, 6, 6, 2 }, { 10, 37, -6, 6, 6, 2 }, { 9, 38, -6, 6, 6, 2 }, { 9, 39, -7, 6, 6, 2 }, + { 8, 40, -7, 6, 6, 2 }, { 8, 41, -8, 6, 6, 2 }, { 8, 42, -9, 6, 6, 2 }, { 7, 43, -9, 6, 6, 2 }, { 7, 44, -10, 6, 6, 2 }, + { 7, 45, -10, 6, 6, 2 }, { 6, 46, -11, 6, 6, 2 }, { 6, 47, -12, 6, 6, 2 }, { 5, 48, -12, 6, 6, 2 }, { 5, 49, -13, 6, 6, 2 }, + { 4, 50, -14, 6, 6, 2 }, { 4, 51, -14, 6, 6, 2 }, { 3, 52, -15, 6, 6, 2 }, { 3, 53, -15, 6, 6, 2 }, { 2, 54, -16, 6, 6, 2 }, + { 2, 55, -17, 6, 6, 2 }, { 1, 56, -17, 5, 6, 2 }, { 1, 57, -18, 5, 6, 2 }, { 0, 58, -19, 5, 6, 2 }, { 0, 59, -19, 5, 6, 2 }, + { -1, 60, -20, 5, 6, 2 }, { -2, 61, -20, 5, 6, 2 }, { -2, 62, -21, 5, 6, 2 }, { -3, 63, -22, 5, 6, 2 }, { -4, 64, -22, 5, 6, 2 }, + { -4, 65, -23, 5, 6, 2 }, { -5, 66, -23, 5, 6, 2 }, { -6, 67, -24, 5, 6, 2 }, { -6, 68, -25, 5, 6, 2 }, { -7, 69, -25, 5, 6, 2 }, + { -8, 70, -26, 5, 6, 2 }, { -9, 71, -27, 5, 6, 2 }, { -9, 72, -27, 5, 6, 2 }, { -10, 73, -28, 5, 6, 2 }, { -11, 74, -28, 4, 6, 2 }, + { -12, 75, -29, 4, 6, 2 }, { -13, 76, -30, 4, 6, 2 }, { -14, 77, -30, 4, 6, 2 }, { -15, 78, -31, 4, 6, 2 }, { -15, 79, -32, 4, 6, 2 }, + { -16, 80, -32, 4, 6, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthBankToDiagDown252, { + { 0, 16, 16, 16, 6, 2 }, { 1, 16, 15, 16, 6, 2 }, { 2, 16, 15, 16, 6, 2 }, { 3, 16, 14, 16, 6, 2 }, { 4, 16, 14, 16, 6, 2 }, + { 5, 16, 13, 16, 6, 2 }, { 6, 16, 12, 16, 6, 2 }, { 7, 16, 12, 16, 6, 2 }, { 8, 16, 11, 16, 6, 2 }, { 9, 16, 11, 16, 6, 2 }, + { 10, 17, 10, 16, 6, 2 }, { 11, 17, 10, 15, 6, 2 }, { 12, 17, 9, 15, 6, 2 }, { 13, 17, 9, 15, 6, 2 }, { 14, 17, 8, 15, 6, 2 }, + { 15, 17, 7, 15, 6, 2 }, { 16, 17, 7, 15, 6, 2 }, { 17, 17, 6, 15, 6, 2 }, { 18, 18, 6, 15, 6, 2 }, { 19, 18, 5, 15, 6, 2 }, + { 20, 18, 4, 15, 6, 2 }, { 21, 18, 4, 15, 6, 2 }, { 22, 18, 3, 15, 6, 2 }, { 23, 19, 3, 15, 6, 2 }, { 24, 19, 2, 15, 6, 2 }, + { 25, 19, 2, 15, 6, 2 }, { 26, 19, 1, 15, 6, 2 }, { 27, 19, 0, 15, 6, 2 }, { 28, 20, 0, 15, 6, 2 }, { 29, 20, -1, 15, 6, 2 }, + { 30, 20, -1, 15, 6, 2 }, { 31, 21, -2, 15, 6, 2 }, { 32, 21, -3, 15, 6, 2 }, { 33, 21, -3, 14, 6, 2 }, { 34, 21, -4, 14, 6, 2 }, + { 35, 22, -4, 14, 6, 2 }, { 36, 22, -5, 14, 6, 2 }, { 37, 22, -6, 14, 6, 2 }, { 38, 23, -6, 14, 6, 2 }, { 39, 23, -7, 14, 6, 2 }, + { 40, 24, -7, 14, 6, 2 }, { 41, 24, -8, 14, 6, 2 }, { 42, 24, -9, 14, 6, 2 }, { 43, 25, -9, 14, 6, 2 }, { 44, 25, -10, 14, 6, 2 }, + { 45, 25, -10, 14, 6, 2 }, { 46, 26, -11, 14, 6, 2 }, { 47, 26, -12, 14, 6, 2 }, { 48, 27, -12, 14, 6, 2 }, { 49, 27, -13, 14, 6, 2 }, + { 50, 28, -14, 14, 6, 2 }, { 51, 28, -14, 14, 6, 2 }, { 52, 29, -15, 14, 6, 2 }, { 53, 29, -15, 14, 6, 2 }, { 54, 30, -16, 14, 6, 2 }, + { 55, 30, -17, 14, 6, 2 }, { 56, 31, -17, 13, 6, 2 }, { 57, 31, -18, 13, 6, 2 }, { 58, 32, -19, 13, 6, 2 }, { 59, 32, -19, 13, 6, 2 }, + { 60, 33, -20, 13, 6, 2 }, { 61, 34, -20, 13, 6, 2 }, { 62, 34, -21, 13, 6, 2 }, { 63, 35, -22, 13, 6, 2 }, { 64, 36, -22, 13, 6, 2 }, + { 65, 36, -23, 13, 6, 2 }, { 66, 37, -23, 13, 6, 2 }, { 67, 38, -24, 13, 6, 2 }, { 68, 38, -25, 13, 6, 2 }, { 69, 39, -25, 13, 6, 2 }, + { 70, 40, -26, 13, 6, 2 }, { 71, 41, -27, 13, 6, 2 }, { 72, 41, -27, 13, 6, 2 }, { 73, 42, -28, 13, 6, 2 }, { 74, 43, -28, 12, 6, 2 }, + { 75, 44, -29, 12, 6, 2 }, { 76, 45, -30, 12, 6, 2 }, { 77, 46, -30, 12, 6, 2 }, { 78, 47, -31, 12, 6, 2 }, { 79, 47, -32, 12, 6, 2 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthBankToDiagDown253, { + { 16, 31, 15, 24, 6, 2 }, { 16, 30, 15, 24, 6, 2 }, { 16, 29, 14, 24, 6, 2 }, { 16, 28, 14, 24, 6, 2 }, { 16, 27, 13, 24, 6, 2 }, + { 16, 26, 12, 24, 6, 2 }, { 16, 25, 12, 24, 6, 2 }, { 16, 24, 11, 24, 6, 2 }, { 16, 23, 11, 24, 6, 2 }, { 17, 22, 10, 24, 6, 2 }, + { 17, 21, 10, 23, 6, 2 }, { 17, 20, 9, 23, 6, 2 }, { 17, 19, 9, 23, 6, 2 }, { 17, 18, 8, 23, 6, 2 }, { 17, 17, 7, 23, 6, 2 }, + { 17, 16, 7, 23, 6, 2 }, { 17, 15, 6, 23, 6, 2 }, { 18, 14, 6, 23, 6, 2 }, { 18, 13, 5, 23, 6, 2 }, { 18, 12, 4, 23, 6, 2 }, + { 18, 11, 4, 23, 6, 2 }, { 18, 10, 3, 23, 6, 2 }, { 19, 9, 3, 23, 6, 2 }, { 19, 8, 2, 23, 6, 2 }, { 19, 7, 2, 23, 6, 2 }, + { 19, 6, 1, 23, 6, 2 }, { 19, 5, 0, 23, 6, 2 }, { 20, 4, 0, 23, 6, 2 }, { 20, 3, -1, 23, 6, 2 }, { 20, 2, -1, 23, 6, 2 }, + { 21, 1, -2, 23, 6, 2 }, { 21, 0, -3, 23, 6, 2 }, { 21, -1, -3, 22, 6, 2 }, { 21, -2, -4, 22, 6, 2 }, { 22, -3, -4, 22, 6, 2 }, + { 22, -4, -5, 22, 6, 2 }, { 22, -5, -6, 22, 6, 2 }, { 23, -6, -6, 22, 6, 2 }, { 23, -7, -7, 22, 6, 2 }, { 24, -8, -7, 22, 6, 2 }, + { 24, -9, -8, 22, 6, 2 }, { 24, -10, -9, 22, 6, 2 }, { 25, -11, -9, 22, 6, 2 }, { 25, -12, -10, 22, 6, 2 }, { 25, -13, -10, 22, 6, 2 }, + { 26, -14, -11, 22, 6, 2 }, { 26, -15, -12, 22, 6, 2 }, { 27, -16, -12, 22, 6, 2 }, { 27, -17, -13, 22, 6, 2 }, { 28, -18, -14, 22, 6, 2 }, + { 28, -19, -14, 22, 6, 2 }, { 29, -20, -15, 22, 6, 2 }, { 29, -21, -15, 22, 6, 2 }, { 30, -22, -16, 22, 6, 2 }, { 30, -23, -17, 22, 6, 2 }, + { 31, -24, -17, 21, 6, 2 }, { 31, -25, -18, 21, 6, 2 }, { 32, -26, -19, 21, 6, 2 }, { 32, -27, -19, 21, 6, 2 }, { 33, -28, -20, 21, 6, 2 }, + { 34, -29, -20, 21, 6, 2 }, { 34, -30, -21, 21, 6, 2 }, { 35, -31, -22, 21, 6, 2 }, { 36, -32, -22, 21, 6, 2 }, { 36, -33, -23, 21, 6, 2 }, + { 37, -34, -23, 21, 6, 2 }, { 38, -35, -24, 21, 6, 2 }, { 38, -36, -25, 21, 6, 2 }, { 39, -37, -25, 21, 6, 2 }, { 40, -38, -26, 21, 6, 2 }, + { 41, -39, -27, 21, 6, 2 }, { 41, -40, -27, 21, 6, 2 }, { 42, -41, -28, 21, 6, 2 }, { 43, -42, -28, 20, 6, 2 }, { 44, -43, -29, 20, 6, 2 }, + { 45, -44, -30, 20, 6, 2 }, { 46, -45, -30, 20, 6, 2 }, { 47, -46, -31, 20, 6, 2 }, { 47, -47, -32, 20, 6, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthBankToDiagDown250, { + { 31, 16, 15, 0, 6, 4 }, { 30, 16, 15, 0, 6, 4 }, { 29, 16, 14, 0, 6, 4 }, { 28, 16, 14, 0, 6, 4 }, { 27, 16, 13, 0, 6, 4 }, + { 26, 16, 12, 0, 6, 4 }, { 25, 16, 12, 0, 6, 4 }, { 24, 16, 11, 0, 6, 4 }, { 23, 16, 11, 0, 6, 4 }, { 22, 17, 10, 0, 6, 4 }, + { 21, 17, 10, 1, 6, 4 }, { 20, 17, 9, 1, 6, 4 }, { 19, 17, 9, 1, 6, 4 }, { 18, 17, 8, 1, 6, 4 }, { 17, 17, 7, 1, 6, 4 }, + { 16, 17, 7, 1, 6, 4 }, { 15, 17, 6, 1, 6, 4 }, { 14, 18, 6, 1, 6, 4 }, { 13, 18, 5, 1, 6, 4 }, { 12, 18, 4, 1, 6, 4 }, + { 11, 18, 4, 1, 6, 4 }, { 10, 18, 3, 1, 6, 4 }, { 9, 19, 3, 1, 6, 4 }, { 8, 19, 2, 1, 6, 4 }, { 7, 19, 2, 1, 6, 4 }, + { 6, 19, 1, 1, 6, 4 }, { 5, 19, 0, 1, 6, 4 }, { 4, 20, 0, 1, 6, 4 }, { 3, 20, -1, 1, 6, 4 }, { 2, 20, -1, 1, 6, 4 }, + { 1, 21, -2, 1, 6, 4 }, { 0, 21, -3, 1, 6, 4 }, { -1, 21, -3, 2, 6, 4 }, { -2, 21, -4, 2, 6, 4 }, { -3, 22, -4, 2, 6, 4 }, + { -4, 22, -5, 2, 6, 4 }, { -5, 22, -6, 2, 6, 4 }, { -6, 23, -6, 2, 6, 4 }, { -7, 23, -7, 2, 6, 4 }, { -8, 24, -7, 2, 6, 4 }, + { -9, 24, -8, 2, 6, 4 }, { -10, 24, -9, 2, 6, 4 }, { -11, 25, -9, 2, 6, 4 }, { -12, 25, -10, 2, 6, 4 }, { -13, 25, -10, 2, 6, 4 }, + { -14, 26, -11, 2, 6, 4 }, { -15, 26, -12, 2, 6, 4 }, { -16, 27, -12, 2, 6, 4 }, { -17, 27, -13, 2, 6, 4 }, { -18, 28, -14, 2, 6, 4 }, + { -19, 28, -14, 2, 6, 4 }, { -20, 29, -15, 2, 6, 4 }, { -21, 29, -15, 2, 6, 4 }, { -22, 30, -16, 2, 6, 4 }, { -23, 30, -17, 2, 6, 4 }, + { -24, 31, -17, 3, 6, 4 }, { -25, 31, -18, 3, 6, 4 }, { -26, 32, -19, 3, 6, 4 }, { -27, 32, -19, 3, 6, 4 }, { -28, 33, -20, 3, 6, 4 }, + { -29, 34, -20, 3, 6, 4 }, { -30, 34, -21, 3, 6, 4 }, { -31, 35, -22, 3, 6, 4 }, { -32, 36, -22, 3, 6, 4 }, { -33, 36, -23, 3, 6, 4 }, + { -34, 37, -23, 3, 6, 4 }, { -35, 38, -24, 3, 6, 4 }, { -36, 38, -25, 3, 6, 4 }, { -37, 39, -25, 3, 6, 4 }, { -38, 40, -26, 3, 6, 4 }, + { -39, 41, -27, 3, 6, 4 }, { -40, 41, -27, 3, 6, 4 }, { -41, 42, -28, 3, 6, 4 }, { -42, 43, -28, 4, 6, 4 }, { -43, 44, -29, 4, 6, 4 }, + { -44, 45, -30, 4, 6, 4 }, { -45, 46, -30, 4, 6, 4 }, { -46, 47, -31, 4, 6, 4 }, { -47, 47, -32, 4, 6, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthBankToDiagDown251, { + { 16, 0, 16, 8, 6, 4 }, { 16, 1, 15, 8, 6, 4 }, { 16, 2, 15, 8, 6, 4 }, { 16, 3, 14, 8, 6, 4 }, { 16, 4, 14, 8, 6, 4 }, + { 16, 5, 13, 8, 6, 4 }, { 16, 6, 12, 8, 6, 4 }, { 16, 7, 12, 8, 6, 4 }, { 16, 8, 11, 8, 6, 4 }, { 16, 9, 11, 8, 6, 4 }, + { 17, 10, 10, 8, 6, 4 }, { 17, 11, 10, 9, 6, 4 }, { 17, 12, 9, 9, 6, 4 }, { 17, 13, 9, 9, 6, 4 }, { 17, 14, 8, 9, 6, 4 }, + { 17, 15, 7, 9, 6, 4 }, { 17, 16, 7, 9, 6, 4 }, { 17, 17, 6, 9, 6, 4 }, { 18, 18, 6, 9, 6, 4 }, { 18, 19, 5, 9, 6, 4 }, + { 18, 20, 4, 9, 6, 4 }, { 18, 21, 4, 9, 6, 4 }, { 18, 22, 3, 9, 6, 4 }, { 19, 23, 3, 9, 6, 4 }, { 19, 24, 2, 9, 6, 4 }, + { 19, 25, 2, 9, 6, 4 }, { 19, 26, 1, 9, 6, 4 }, { 19, 27, 0, 9, 6, 4 }, { 20, 28, 0, 9, 6, 4 }, { 20, 29, -1, 9, 6, 4 }, + { 20, 30, -1, 9, 6, 4 }, { 21, 31, -2, 9, 6, 4 }, { 21, 32, -3, 9, 6, 4 }, { 21, 33, -3, 10, 6, 4 }, { 21, 34, -4, 10, 6, 4 }, + { 22, 35, -4, 10, 6, 4 }, { 22, 36, -5, 10, 6, 4 }, { 22, 37, -6, 10, 6, 4 }, { 23, 38, -6, 10, 6, 4 }, { 23, 39, -7, 10, 6, 4 }, + { 24, 40, -7, 10, 6, 4 }, { 24, 41, -8, 10, 6, 4 }, { 24, 42, -9, 10, 6, 4 }, { 25, 43, -9, 10, 6, 4 }, { 25, 44, -10, 10, 6, 4 }, + { 25, 45, -10, 10, 6, 4 }, { 26, 46, -11, 10, 6, 4 }, { 26, 47, -12, 10, 6, 4 }, { 27, 48, -12, 10, 6, 4 }, { 27, 49, -13, 10, 6, 4 }, + { 28, 50, -14, 10, 6, 4 }, { 28, 51, -14, 10, 6, 4 }, { 29, 52, -15, 10, 6, 4 }, { 29, 53, -15, 10, 6, 4 }, { 30, 54, -16, 10, 6, 4 }, + { 30, 55, -17, 10, 6, 4 }, { 31, 56, -17, 11, 6, 4 }, { 31, 57, -18, 11, 6, 4 }, { 32, 58, -19, 11, 6, 4 }, { 32, 59, -19, 11, 6, 4 }, + { 33, 60, -20, 11, 6, 4 }, { 34, 61, -20, 11, 6, 4 }, { 34, 62, -21, 11, 6, 4 }, { 35, 63, -22, 11, 6, 4 }, { 36, 64, -22, 11, 6, 4 }, + { 36, 65, -23, 11, 6, 4 }, { 37, 66, -23, 11, 6, 4 }, { 38, 67, -24, 11, 6, 4 }, { 38, 68, -25, 11, 6, 4 }, { 39, 69, -25, 11, 6, 4 }, + { 40, 70, -26, 11, 6, 4 }, { 41, 71, -27, 11, 6, 4 }, { 41, 72, -27, 11, 6, 4 }, { 42, 73, -28, 11, 6, 4 }, { 43, 74, -28, 12, 6, 4 }, + { 44, 75, -29, 12, 6, 4 }, { 45, 76, -30, 12, 6, 4 }, { 46, 77, -30, 12, 6, 4 }, { 47, 78, -31, 12, 6, 4 }, { 47, 79, -32, 12, 6, 4 }, + { 48, 80, -32, 12, 6, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthBankToDiagDown252, { + { 0, 16, 16, 16, 6, 4 }, { 1, 16, 15, 16, 6, 4 }, { 2, 16, 15, 16, 6, 4 }, { 3, 16, 14, 16, 6, 4 }, { 4, 16, 14, 16, 6, 4 }, + { 5, 16, 13, 16, 6, 4 }, { 6, 16, 12, 16, 6, 4 }, { 7, 16, 12, 16, 6, 4 }, { 8, 16, 11, 16, 6, 4 }, { 9, 16, 11, 16, 6, 4 }, + { 10, 15, 10, 16, 6, 4 }, { 11, 15, 10, 17, 6, 4 }, { 12, 15, 9, 17, 6, 4 }, { 13, 15, 9, 17, 6, 4 }, { 14, 15, 8, 17, 6, 4 }, + { 15, 15, 7, 17, 6, 4 }, { 16, 15, 7, 17, 6, 4 }, { 17, 15, 6, 17, 6, 4 }, { 18, 14, 6, 17, 6, 4 }, { 19, 14, 5, 17, 6, 4 }, + { 20, 14, 4, 17, 6, 4 }, { 21, 14, 4, 17, 6, 4 }, { 22, 14, 3, 17, 6, 4 }, { 23, 13, 3, 17, 6, 4 }, { 24, 13, 2, 17, 6, 4 }, + { 25, 13, 2, 17, 6, 4 }, { 26, 13, 1, 17, 6, 4 }, { 27, 13, 0, 17, 6, 4 }, { 28, 12, 0, 17, 6, 4 }, { 29, 12, -1, 17, 6, 4 }, + { 30, 12, -1, 17, 6, 4 }, { 31, 11, -2, 17, 6, 4 }, { 32, 11, -3, 17, 6, 4 }, { 33, 11, -3, 18, 6, 4 }, { 34, 11, -4, 18, 6, 4 }, + { 35, 10, -4, 18, 6, 4 }, { 36, 10, -5, 18, 6, 4 }, { 37, 10, -6, 18, 6, 4 }, { 38, 9, -6, 18, 6, 4 }, { 39, 9, -7, 18, 6, 4 }, + { 40, 8, -7, 18, 6, 4 }, { 41, 8, -8, 18, 6, 4 }, { 42, 8, -9, 18, 6, 4 }, { 43, 7, -9, 18, 6, 4 }, { 44, 7, -10, 18, 6, 4 }, + { 45, 7, -10, 18, 6, 4 }, { 46, 6, -11, 18, 6, 4 }, { 47, 6, -12, 18, 6, 4 }, { 48, 5, -12, 18, 6, 4 }, { 49, 5, -13, 18, 6, 4 }, + { 50, 4, -14, 18, 6, 4 }, { 51, 4, -14, 18, 6, 4 }, { 52, 3, -15, 18, 6, 4 }, { 53, 3, -15, 18, 6, 4 }, { 54, 2, -16, 18, 6, 4 }, + { 55, 2, -17, 18, 6, 4 }, { 56, 1, -17, 19, 6, 4 }, { 57, 1, -18, 19, 6, 4 }, { 58, 0, -19, 19, 6, 4 }, { 59, 0, -19, 19, 6, 4 }, + { 60, -1, -20, 19, 6, 4 }, { 61, -2, -20, 19, 6, 4 }, { 62, -2, -21, 19, 6, 4 }, { 63, -3, -22, 19, 6, 4 }, { 64, -4, -22, 19, 6, 4 }, + { 65, -4, -23, 19, 6, 4 }, { 66, -5, -23, 19, 6, 4 }, { 67, -6, -24, 19, 6, 4 }, { 68, -6, -25, 19, 6, 4 }, { 69, -7, -25, 19, 6, 4 }, + { 70, -8, -26, 19, 6, 4 }, { 71, -9, -27, 19, 6, 4 }, { 72, -9, -27, 19, 6, 4 }, { 73, -10, -28, 19, 6, 4 }, { 74, -11, -28, 20, 6, 4 }, + { 75, -12, -29, 20, 6, 4 }, { 76, -13, -30, 20, 6, 4 }, { 77, -14, -30, 20, 6, 4 }, { 78, -15, -31, 20, 6, 4 }, { 79, -15, -32, 20, 6, 4 }, + { 80, -16, -32, 20, 6, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthBankToDiagDown253, { + { 16, 31, 15, 24, 6, 4 }, { 16, 30, 15, 24, 6, 4 }, { 16, 29, 14, 24, 6, 4 }, { 16, 28, 14, 24, 6, 4 }, { 16, 27, 13, 24, 6, 4 }, + { 16, 26, 12, 24, 6, 4 }, { 16, 25, 12, 24, 6, 4 }, { 16, 24, 11, 24, 6, 4 }, { 16, 23, 11, 24, 6, 4 }, { 15, 22, 10, 24, 6, 4 }, + { 15, 21, 10, 25, 6, 4 }, { 15, 20, 9, 25, 6, 4 }, { 15, 19, 9, 25, 6, 4 }, { 15, 18, 8, 25, 6, 4 }, { 15, 17, 7, 25, 6, 4 }, + { 15, 16, 7, 25, 6, 4 }, { 15, 15, 6, 25, 6, 4 }, { 14, 14, 6, 25, 6, 4 }, { 14, 13, 5, 25, 6, 4 }, { 14, 12, 4, 25, 6, 4 }, + { 14, 11, 4, 25, 6, 4 }, { 14, 10, 3, 25, 6, 4 }, { 13, 9, 3, 25, 6, 4 }, { 13, 8, 2, 25, 6, 4 }, { 13, 7, 2, 25, 6, 4 }, + { 13, 6, 1, 25, 6, 4 }, { 13, 5, 0, 25, 6, 4 }, { 12, 4, 0, 25, 6, 4 }, { 12, 3, -1, 25, 6, 4 }, { 12, 2, -1, 25, 6, 4 }, + { 11, 1, -2, 25, 6, 4 }, { 11, 0, -3, 25, 6, 4 }, { 11, -1, -3, 26, 6, 4 }, { 11, -2, -4, 26, 6, 4 }, { 10, -3, -4, 26, 6, 4 }, + { 10, -4, -5, 26, 6, 4 }, { 10, -5, -6, 26, 6, 4 }, { 9, -6, -6, 26, 6, 4 }, { 9, -7, -7, 26, 6, 4 }, { 8, -8, -7, 26, 6, 4 }, + { 8, -9, -8, 26, 6, 4 }, { 8, -10, -9, 26, 6, 4 }, { 7, -11, -9, 26, 6, 4 }, { 7, -12, -10, 26, 6, 4 }, { 7, -13, -10, 26, 6, 4 }, + { 6, -14, -11, 26, 6, 4 }, { 6, -15, -12, 26, 6, 4 }, { 5, -16, -12, 26, 6, 4 }, { 5, -17, -13, 26, 6, 4 }, { 4, -18, -14, 26, 6, 4 }, + { 4, -19, -14, 26, 6, 4 }, { 3, -20, -15, 26, 6, 4 }, { 3, -21, -15, 26, 6, 4 }, { 2, -22, -16, 26, 6, 4 }, { 2, -23, -17, 26, 6, 4 }, + { 1, -24, -17, 27, 6, 4 }, { 1, -25, -18, 27, 6, 4 }, { 0, -26, -19, 27, 6, 4 }, { 0, -27, -19, 27, 6, 4 }, { -1, -28, -20, 27, 6, 4 }, + { -2, -29, -20, 27, 6, 4 }, { -2, -30, -21, 27, 6, 4 }, { -3, -31, -22, 27, 6, 4 }, { -4, -32, -22, 27, 6, 4 }, { -4, -33, -23, 27, 6, 4 }, + { -5, -34, -23, 27, 6, 4 }, { -6, -35, -24, 27, 6, 4 }, { -6, -36, -25, 27, 6, 4 }, { -7, -37, -25, 27, 6, 4 }, { -8, -38, -26, 27, 6, 4 }, + { -9, -39, -27, 27, 6, 4 }, { -9, -40, -27, 27, 6, 4 }, { -10, -41, -28, 27, 6, 4 }, { -11, -42, -28, 28, 6, 4 }, { -12, -43, -29, 28, 6, 4 }, + { -13, -44, -30, 28, 6, 4 }, { -14, -45, -30, 28, 6, 4 }, { -15, -46, -31, 28, 6, 4 }, { -15, -47, -32, 28, 6, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthBankToOrthogonalUp250, { + { 15, 16, 1, 4, 2, 2 }, { 14, 17, 2, 4, 2, 2 }, { 13, 18, 2, 4, 2, 2 }, { 12, 19, 3, 4, 2, 2 }, { 11, 20, 3, 4, 2, 2 }, + { 10, 21, 4, 3, 2, 2 }, { 9, 22, 5, 3, 2, 2 }, { 8, 22, 5, 3, 2, 2 }, { 7, 23, 6, 3, 2, 2 }, { 6, 24, 7, 3, 2, 2 }, + { 5, 25, 7, 3, 2, 2 }, { 4, 25, 8, 3, 2, 2 }, { 3, 26, 8, 3, 2, 2 }, { 2, 27, 9, 3, 2, 2 }, { 1, 27, 10, 3, 2, 2 }, + { 0, 28, 10, 3, 2, 2 }, { -1, 29, 11, 3, 2, 2 }, { -2, 29, 12, 3, 2, 2 }, { -3, 30, 12, 3, 2, 2 }, { -4, 30, 13, 3, 2, 2 }, + { -5, 31, 13, 3, 2, 2 }, { -6, 32, 14, 3, 2, 2 }, { -7, 32, 15, 3, 2, 2 }, { -8, 33, 15, 2, 2, 2 }, { -9, 33, 16, 2, 2, 2 }, + { -10, 34, 17, 2, 2, 2 }, { -11, 34, 17, 2, 2, 2 }, { -12, 35, 18, 2, 2, 2 }, { -13, 35, 18, 2, 2, 2 }, { -14, 36, 19, 2, 2, 2 }, + { -15, 36, 20, 2, 2, 2 }, { -16, 37, 20, 2, 2, 2 }, { -17, 37, 21, 2, 2, 2 }, { -18, 37, 21, 2, 2, 2 }, { -19, 38, 22, 2, 2, 2 }, + { -20, 38, 23, 2, 2, 2 }, { -21, 39, 23, 2, 2, 2 }, { -22, 39, 24, 2, 2, 2 }, { -23, 39, 24, 2, 2, 2 }, { -24, 40, 25, 2, 2, 2 }, + { -25, 40, 26, 2, 2, 2 }, { -26, 41, 26, 2, 2, 2 }, { -27, 41, 27, 2, 2, 2 }, { -28, 41, 28, 2, 2, 2 }, { -29, 42, 28, 2, 2, 2 }, + { -30, 42, 29, 2, 2, 2 }, { -31, 42, 29, 1, 2, 2 }, { -32, 42, 30, 1, 2, 2 }, { -33, 43, 31, 1, 2, 2 }, { -34, 43, 31, 1, 2, 2 }, + { -35, 43, 32, 1, 2, 2 }, { -36, 44, 32, 1, 2, 2 }, { -37, 44, 33, 1, 2, 2 }, { -38, 44, 33, 1, 2, 2 }, { -39, 44, 34, 1, 2, 2 }, + { -40, 44, 35, 1, 2, 2 }, { -41, 45, 35, 1, 2, 2 }, { -42, 45, 36, 1, 2, 2 }, { -43, 45, 36, 1, 2, 2 }, { -44, 45, 37, 1, 2, 2 }, + { -45, 45, 38, 1, 2, 2 }, { -46, 46, 38, 1, 2, 2 }, { -47, 46, 39, 1, 2, 2 }, { -48, 46, 39, 1, 2, 2 }, { -49, 46, 40, 1, 2, 2 }, + { -50, 46, 40, 1, 2, 2 }, { -51, 46, 41, 1, 2, 2 }, { -52, 46, 42, 1, 2, 2 }, { -53, 46, 42, 0, 2, 2 }, { -54, 47, 43, 0, 2, 2 }, + { -55, 47, 43, 0, 2, 2 }, { -56, 47, 44, 0, 2, 2 }, { -57, 47, 44, 0, 2, 2 }, { -58, 47, 45, 0, 2, 2 }, { -59, 47, 46, 0, 2, 2 }, + { -60, 47, 46, 0, 2, 2 }, { -61, 47, 47, 0, 2, 2 }, { -62, 47, 47, 0, 2, 2 }, { -63, 47, 48, 0, 2, 2 }, { -64, 47, 48, 0, 2, 2 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthBankToOrthogonalUp251, { + { 16, 16, 0, 12, 2, 2 }, { 17, 17, 1, 12, 2, 2 }, { 18, 18, 2, 12, 2, 2 }, { 19, 19, 2, 12, 2, 2 }, { 20, 20, 3, 12, 2, 2 }, + { 21, 21, 3, 12, 2, 2 }, { 22, 22, 4, 11, 2, 2 }, { 23, 23, 5, 11, 2, 2 }, { 23, 24, 5, 11, 2, 2 }, { 24, 25, 6, 11, 2, 2 }, + { 25, 26, 7, 11, 2, 2 }, { 26, 27, 7, 11, 2, 2 }, { 26, 28, 8, 11, 2, 2 }, { 27, 29, 8, 11, 2, 2 }, { 28, 30, 9, 11, 2, 2 }, + { 28, 31, 10, 11, 2, 2 }, { 29, 32, 10, 11, 2, 2 }, { 30, 33, 11, 11, 2, 2 }, { 30, 34, 12, 11, 2, 2 }, { 31, 35, 12, 11, 2, 2 }, + { 31, 36, 13, 11, 2, 2 }, { 32, 37, 13, 11, 2, 2 }, { 33, 38, 14, 11, 2, 2 }, { 33, 39, 15, 11, 2, 2 }, { 34, 40, 15, 10, 2, 2 }, + { 34, 41, 16, 10, 2, 2 }, { 35, 42, 17, 10, 2, 2 }, { 35, 43, 17, 10, 2, 2 }, { 36, 44, 18, 10, 2, 2 }, { 36, 45, 18, 10, 2, 2 }, + { 37, 46, 19, 10, 2, 2 }, { 37, 47, 20, 10, 2, 2 }, { 38, 48, 20, 10, 2, 2 }, { 38, 49, 21, 10, 2, 2 }, { 38, 50, 21, 10, 2, 2 }, + { 39, 51, 22, 10, 2, 2 }, { 39, 52, 23, 10, 2, 2 }, { 40, 53, 23, 10, 2, 2 }, { 40, 54, 24, 10, 2, 2 }, { 40, 55, 24, 10, 2, 2 }, + { 41, 56, 25, 10, 2, 2 }, { 41, 57, 26, 10, 2, 2 }, { 42, 58, 26, 10, 2, 2 }, { 42, 59, 27, 10, 2, 2 }, { 42, 60, 28, 10, 2, 2 }, + { 43, 61, 28, 10, 2, 2 }, { 43, 62, 29, 10, 2, 2 }, { 43, 63, 29, 9, 2, 2 }, { 43, 64, 30, 9, 2, 2 }, { 44, 65, 31, 9, 2, 2 }, + { 44, 66, 31, 9, 2, 2 }, { 44, 67, 32, 9, 2, 2 }, { 45, 68, 32, 9, 2, 2 }, { 45, 69, 33, 9, 2, 2 }, { 45, 70, 33, 9, 2, 2 }, + { 45, 71, 34, 9, 2, 2 }, { 45, 72, 35, 9, 2, 2 }, { 46, 73, 35, 9, 2, 2 }, { 46, 74, 36, 9, 2, 2 }, { 46, 75, 36, 9, 2, 2 }, + { 46, 76, 37, 9, 2, 2 }, { 46, 77, 38, 9, 2, 2 }, { 47, 78, 38, 9, 2, 2 }, { 47, 79, 39, 9, 2, 2 }, { 47, 80, 39, 9, 2, 2 }, + { 47, 81, 40, 9, 2, 2 }, { 47, 82, 40, 9, 2, 2 }, { 47, 83, 41, 9, 2, 2 }, { 47, 84, 42, 9, 2, 2 }, { 47, 85, 42, 8, 2, 2 }, + { 48, 86, 43, 8, 2, 2 }, { 48, 87, 43, 8, 2, 2 }, { 48, 88, 44, 8, 2, 2 }, { 48, 89, 44, 8, 2, 2 }, { 48, 90, 45, 8, 2, 2 }, + { 48, 91, 46, 8, 2, 2 }, { 48, 92, 46, 8, 2, 2 }, { 48, 93, 47, 8, 2, 2 }, { 48, 94, 47, 8, 2, 2 }, { 48, 95, 48, 8, 2, 2 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthBankToOrthogonalUp252, { + { 16, 15, 0, 20, 2, 2 }, { 17, 14, 1, 20, 2, 2 }, { 18, 13, 2, 20, 2, 2 }, { 19, 12, 2, 20, 2, 2 }, { 20, 11, 3, 20, 2, 2 }, + { 21, 10, 3, 20, 2, 2 }, { 22, 9, 4, 19, 2, 2 }, { 23, 8, 5, 19, 2, 2 }, { 24, 8, 5, 19, 2, 2 }, { 25, 7, 6, 19, 2, 2 }, + { 26, 6, 7, 19, 2, 2 }, { 27, 5, 7, 19, 2, 2 }, { 28, 5, 8, 19, 2, 2 }, { 29, 4, 8, 19, 2, 2 }, { 30, 3, 9, 19, 2, 2 }, + { 31, 3, 10, 19, 2, 2 }, { 32, 2, 10, 19, 2, 2 }, { 33, 1, 11, 19, 2, 2 }, { 34, 1, 12, 19, 2, 2 }, { 35, 0, 12, 19, 2, 2 }, + { 36, 0, 13, 19, 2, 2 }, { 37, -1, 13, 19, 2, 2 }, { 38, -2, 14, 19, 2, 2 }, { 39, -2, 15, 19, 2, 2 }, { 40, -3, 15, 18, 2, 2 }, + { 41, -3, 16, 18, 2, 2 }, { 42, -4, 17, 18, 2, 2 }, { 43, -4, 17, 18, 2, 2 }, { 44, -5, 18, 18, 2, 2 }, { 45, -5, 18, 18, 2, 2 }, + { 46, -6, 19, 18, 2, 2 }, { 47, -6, 20, 18, 2, 2 }, { 48, -7, 20, 18, 2, 2 }, { 49, -7, 21, 18, 2, 2 }, { 50, -7, 21, 18, 2, 2 }, + { 51, -8, 22, 18, 2, 2 }, { 52, -8, 23, 18, 2, 2 }, { 53, -9, 23, 18, 2, 2 }, { 54, -9, 24, 18, 2, 2 }, { 55, -9, 24, 18, 2, 2 }, + { 56, -10, 25, 18, 2, 2 }, { 57, -10, 26, 18, 2, 2 }, { 58, -11, 26, 18, 2, 2 }, { 59, -11, 27, 18, 2, 2 }, { 60, -11, 28, 18, 2, 2 }, + { 61, -12, 28, 18, 2, 2 }, { 62, -12, 29, 18, 2, 2 }, { 63, -12, 29, 17, 2, 2 }, { 64, -12, 30, 17, 2, 2 }, { 65, -13, 31, 17, 2, 2 }, + { 66, -13, 31, 17, 2, 2 }, { 67, -13, 32, 17, 2, 2 }, { 68, -14, 32, 17, 2, 2 }, { 69, -14, 33, 17, 2, 2 }, { 70, -14, 33, 17, 2, 2 }, + { 71, -14, 34, 17, 2, 2 }, { 72, -14, 35, 17, 2, 2 }, { 73, -15, 35, 17, 2, 2 }, { 74, -15, 36, 17, 2, 2 }, { 75, -15, 36, 17, 2, 2 }, + { 76, -15, 37, 17, 2, 2 }, { 77, -15, 38, 17, 2, 2 }, { 78, -16, 38, 17, 2, 2 }, { 79, -16, 39, 17, 2, 2 }, { 80, -16, 39, 17, 2, 2 }, + { 81, -16, 40, 17, 2, 2 }, { 82, -16, 40, 17, 2, 2 }, { 83, -16, 41, 17, 2, 2 }, { 84, -16, 42, 17, 2, 2 }, { 85, -16, 42, 16, 2, 2 }, + { 86, -17, 43, 16, 2, 2 }, { 87, -17, 43, 16, 2, 2 }, { 88, -17, 44, 16, 2, 2 }, { 89, -17, 44, 16, 2, 2 }, { 90, -17, 45, 16, 2, 2 }, + { 91, -17, 46, 16, 2, 2 }, { 92, -17, 46, 16, 2, 2 }, { 93, -17, 47, 16, 2, 2 }, { 94, -17, 47, 16, 2, 2 }, { 95, -17, 48, 16, 2, 2 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthBankToOrthogonalUp253, { + { 15, 15, 1, 28, 2, 2 }, { 14, 14, 2, 28, 2, 2 }, { 13, 13, 2, 28, 2, 2 }, { 12, 12, 3, 28, 2, 2 }, { 11, 11, 3, 28, 2, 2 }, + { 10, 10, 4, 27, 2, 2 }, { 9, 9, 5, 27, 2, 2 }, { 9, 8, 5, 27, 2, 2 }, { 8, 7, 6, 27, 2, 2 }, { 7, 6, 7, 27, 2, 2 }, + { 6, 5, 7, 27, 2, 2 }, { 6, 4, 8, 27, 2, 2 }, { 5, 3, 8, 27, 2, 2 }, { 4, 2, 9, 27, 2, 2 }, { 4, 1, 10, 27, 2, 2 }, + { 3, 0, 10, 27, 2, 2 }, { 2, -1, 11, 27, 2, 2 }, { 2, -2, 12, 27, 2, 2 }, { 1, -3, 12, 27, 2, 2 }, { 1, -4, 13, 27, 2, 2 }, + { 0, -5, 13, 27, 2, 2 }, { -1, -6, 14, 27, 2, 2 }, { -1, -7, 15, 27, 2, 2 }, { -2, -8, 15, 26, 2, 2 }, { -2, -9, 16, 26, 2, 2 }, + { -3, -10, 17, 26, 2, 2 }, { -3, -11, 17, 26, 2, 2 }, { -4, -12, 18, 26, 2, 2 }, { -4, -13, 18, 26, 2, 2 }, { -5, -14, 19, 26, 2, 2 }, + { -5, -15, 20, 26, 2, 2 }, { -6, -16, 20, 26, 2, 2 }, { -6, -17, 21, 26, 2, 2 }, { -6, -18, 21, 26, 2, 2 }, { -7, -19, 22, 26, 2, 2 }, + { -7, -20, 23, 26, 2, 2 }, { -8, -21, 23, 26, 2, 2 }, { -8, -22, 24, 26, 2, 2 }, { -8, -23, 24, 26, 2, 2 }, { -9, -24, 25, 26, 2, 2 }, + { -9, -25, 26, 26, 2, 2 }, { -10, -26, 26, 26, 2, 2 }, { -10, -27, 27, 26, 2, 2 }, { -10, -28, 28, 26, 2, 2 }, { -11, -29, 28, 26, 2, 2 }, + { -11, -30, 29, 26, 2, 2 }, { -11, -31, 29, 25, 2, 2 }, { -11, -32, 30, 25, 2, 2 }, { -12, -33, 31, 25, 2, 2 }, { -12, -34, 31, 25, 2, 2 }, + { -12, -35, 32, 25, 2, 2 }, { -13, -36, 32, 25, 2, 2 }, { -13, -37, 33, 25, 2, 2 }, { -13, -38, 33, 25, 2, 2 }, { -13, -39, 34, 25, 2, 2 }, + { -13, -40, 35, 25, 2, 2 }, { -14, -41, 35, 25, 2, 2 }, { -14, -42, 36, 25, 2, 2 }, { -14, -43, 36, 25, 2, 2 }, { -14, -44, 37, 25, 2, 2 }, + { -14, -45, 38, 25, 2, 2 }, { -15, -46, 38, 25, 2, 2 }, { -15, -47, 39, 25, 2, 2 }, { -15, -48, 39, 25, 2, 2 }, { -15, -49, 40, 25, 2, 2 }, + { -15, -50, 40, 25, 2, 2 }, { -15, -51, 41, 25, 2, 2 }, { -15, -52, 42, 25, 2, 2 }, { -15, -53, 42, 24, 2, 2 }, { -16, -54, 43, 24, 2, 2 }, + { -16, -55, 43, 24, 2, 2 }, { -16, -56, 44, 24, 2, 2 }, { -16, -57, 44, 24, 2, 2 }, { -16, -58, 45, 24, 2, 2 }, { -16, -59, 46, 24, 2, 2 }, + { -16, -60, 46, 24, 2, 2 }, { -16, -61, 47, 24, 2, 2 }, { -16, -62, 47, 24, 2, 2 }, { -16, -63, 48, 24, 2, 2 }, { -16, -64, 48, 24, 2, 2 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthBankToOrthogonalUp250, { + { 15, 16, 1, 4, 2, 4 }, { 14, 17, 2, 4, 2, 4 }, { 13, 18, 2, 4, 2, 4 }, { 12, 19, 3, 4, 2, 4 }, { 11, 20, 3, 4, 2, 4 }, + { 10, 21, 4, 5, 2, 4 }, { 9, 22, 5, 5, 2, 4 }, { 9, 23, 5, 5, 2, 4 }, { 8, 24, 6, 5, 2, 4 }, { 7, 25, 7, 5, 2, 4 }, + { 6, 26, 7, 5, 2, 4 }, { 6, 27, 8, 5, 2, 4 }, { 5, 28, 8, 5, 2, 4 }, { 4, 29, 9, 5, 2, 4 }, { 4, 30, 10, 5, 2, 4 }, + { 3, 31, 10, 5, 2, 4 }, { 2, 32, 11, 5, 2, 4 }, { 2, 33, 12, 5, 2, 4 }, { 1, 34, 12, 5, 2, 4 }, { 1, 35, 13, 5, 2, 4 }, + { 0, 36, 13, 5, 2, 4 }, { -1, 37, 14, 5, 2, 4 }, { -1, 38, 15, 5, 2, 4 }, { -2, 39, 15, 6, 2, 4 }, { -2, 40, 16, 6, 2, 4 }, + { -3, 41, 17, 6, 2, 4 }, { -3, 42, 17, 6, 2, 4 }, { -4, 43, 18, 6, 2, 4 }, { -4, 44, 18, 6, 2, 4 }, { -5, 45, 19, 6, 2, 4 }, + { -5, 46, 20, 6, 2, 4 }, { -6, 47, 20, 6, 2, 4 }, { -6, 48, 21, 6, 2, 4 }, { -6, 49, 21, 6, 2, 4 }, { -7, 50, 22, 6, 2, 4 }, + { -7, 51, 23, 6, 2, 4 }, { -8, 52, 23, 6, 2, 4 }, { -8, 53, 24, 6, 2, 4 }, { -8, 54, 24, 6, 2, 4 }, { -9, 55, 25, 6, 2, 4 }, + { -9, 56, 26, 6, 2, 4 }, { -10, 57, 26, 6, 2, 4 }, { -10, 58, 27, 6, 2, 4 }, { -10, 59, 28, 6, 2, 4 }, { -11, 60, 28, 6, 2, 4 }, + { -11, 61, 29, 6, 2, 4 }, { -11, 62, 29, 7, 2, 4 }, { -11, 63, 30, 7, 2, 4 }, { -12, 64, 31, 7, 2, 4 }, { -12, 65, 31, 7, 2, 4 }, + { -12, 66, 32, 7, 2, 4 }, { -13, 67, 32, 7, 2, 4 }, { -13, 68, 33, 7, 2, 4 }, { -13, 69, 33, 7, 2, 4 }, { -13, 70, 34, 7, 2, 4 }, + { -13, 71, 35, 7, 2, 4 }, { -14, 72, 35, 7, 2, 4 }, { -14, 73, 36, 7, 2, 4 }, { -14, 74, 36, 7, 2, 4 }, { -14, 75, 37, 7, 2, 4 }, + { -14, 76, 38, 7, 2, 4 }, { -15, 77, 38, 7, 2, 4 }, { -15, 78, 39, 7, 2, 4 }, { -15, 79, 39, 7, 2, 4 }, { -15, 80, 40, 7, 2, 4 }, + { -15, 81, 40, 7, 2, 4 }, { -15, 82, 41, 7, 2, 4 }, { -15, 83, 42, 7, 2, 4 }, { -15, 84, 42, 8, 2, 4 }, { -16, 85, 43, 8, 2, 4 }, + { -16, 86, 43, 8, 2, 4 }, { -16, 87, 44, 8, 2, 4 }, { -16, 88, 44, 8, 2, 4 }, { -16, 89, 45, 8, 2, 4 }, { -16, 90, 46, 8, 2, 4 }, + { -16, 91, 46, 8, 2, 4 }, { -16, 92, 47, 8, 2, 4 }, { -16, 93, 47, 8, 2, 4 }, { -16, 94, 48, 8, 2, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthBankToOrthogonalUp251, { + { 16, 16, 0, 12, 2, 4 }, { 17, 17, 1, 12, 2, 4 }, { 18, 18, 2, 12, 2, 4 }, { 19, 19, 2, 12, 2, 4 }, { 20, 20, 3, 12, 2, 4 }, + { 21, 21, 3, 12, 2, 4 }, { 22, 22, 4, 13, 2, 4 }, { 23, 23, 5, 13, 2, 4 }, { 24, 23, 5, 13, 2, 4 }, { 25, 24, 6, 13, 2, 4 }, + { 26, 25, 7, 13, 2, 4 }, { 27, 26, 7, 13, 2, 4 }, { 28, 26, 8, 13, 2, 4 }, { 29, 27, 8, 13, 2, 4 }, { 30, 28, 9, 13, 2, 4 }, + { 31, 28, 10, 13, 2, 4 }, { 32, 29, 10, 13, 2, 4 }, { 33, 30, 11, 13, 2, 4 }, { 34, 30, 12, 13, 2, 4 }, { 35, 31, 12, 13, 2, 4 }, + { 36, 31, 13, 13, 2, 4 }, { 37, 32, 13, 13, 2, 4 }, { 38, 33, 14, 13, 2, 4 }, { 39, 33, 15, 13, 2, 4 }, { 40, 34, 15, 14, 2, 4 }, + { 41, 34, 16, 14, 2, 4 }, { 42, 35, 17, 14, 2, 4 }, { 43, 35, 17, 14, 2, 4 }, { 44, 36, 18, 14, 2, 4 }, { 45, 36, 18, 14, 2, 4 }, + { 46, 37, 19, 14, 2, 4 }, { 47, 37, 20, 14, 2, 4 }, { 48, 38, 20, 14, 2, 4 }, { 49, 38, 21, 14, 2, 4 }, { 50, 38, 21, 14, 2, 4 }, + { 51, 39, 22, 14, 2, 4 }, { 52, 39, 23, 14, 2, 4 }, { 53, 40, 23, 14, 2, 4 }, { 54, 40, 24, 14, 2, 4 }, { 55, 40, 24, 14, 2, 4 }, + { 56, 41, 25, 14, 2, 4 }, { 57, 41, 26, 14, 2, 4 }, { 58, 42, 26, 14, 2, 4 }, { 59, 42, 27, 14, 2, 4 }, { 60, 42, 28, 14, 2, 4 }, + { 61, 43, 28, 14, 2, 4 }, { 62, 43, 29, 14, 2, 4 }, { 63, 43, 29, 15, 2, 4 }, { 64, 43, 30, 15, 2, 4 }, { 65, 44, 31, 15, 2, 4 }, + { 66, 44, 31, 15, 2, 4 }, { 67, 44, 32, 15, 2, 4 }, { 68, 45, 32, 15, 2, 4 }, { 69, 45, 33, 15, 2, 4 }, { 70, 45, 33, 15, 2, 4 }, + { 71, 45, 34, 15, 2, 4 }, { 72, 45, 35, 15, 2, 4 }, { 73, 46, 35, 15, 2, 4 }, { 74, 46, 36, 15, 2, 4 }, { 75, 46, 36, 15, 2, 4 }, + { 76, 46, 37, 15, 2, 4 }, { 77, 46, 38, 15, 2, 4 }, { 78, 47, 38, 15, 2, 4 }, { 79, 47, 39, 15, 2, 4 }, { 80, 47, 39, 15, 2, 4 }, + { 81, 47, 40, 15, 2, 4 }, { 82, 47, 40, 15, 2, 4 }, { 83, 47, 41, 15, 2, 4 }, { 84, 47, 42, 15, 2, 4 }, { 85, 47, 42, 16, 2, 4 }, + { 86, 48, 43, 16, 2, 4 }, { 87, 48, 43, 16, 2, 4 }, { 88, 48, 44, 16, 2, 4 }, { 89, 48, 44, 16, 2, 4 }, { 90, 48, 45, 16, 2, 4 }, + { 91, 48, 46, 16, 2, 4 }, { 92, 48, 46, 16, 2, 4 }, { 93, 48, 47, 16, 2, 4 }, { 94, 48, 47, 16, 2, 4 }, { 95, 48, 48, 16, 2, 4 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthBankToOrthogonalUp252, { + { 16, 15, 0, 20, 2, 4 }, { 17, 14, 1, 20, 2, 4 }, { 18, 13, 2, 20, 2, 4 }, { 19, 12, 2, 20, 2, 4 }, { 20, 11, 3, 20, 2, 4 }, + { 21, 10, 3, 20, 2, 4 }, { 22, 9, 4, 21, 2, 4 }, { 23, 8, 5, 21, 2, 4 }, { 23, 7, 5, 21, 2, 4 }, { 24, 6, 6, 21, 2, 4 }, + { 25, 5, 7, 21, 2, 4 }, { 26, 4, 7, 21, 2, 4 }, { 26, 3, 8, 21, 2, 4 }, { 27, 2, 8, 21, 2, 4 }, { 28, 1, 9, 21, 2, 4 }, + { 28, 0, 10, 21, 2, 4 }, { 29, -1, 10, 21, 2, 4 }, { 30, -2, 11, 21, 2, 4 }, { 30, -3, 12, 21, 2, 4 }, { 31, -4, 12, 21, 2, 4 }, + { 31, -5, 13, 21, 2, 4 }, { 32, -6, 13, 21, 2, 4 }, { 33, -7, 14, 21, 2, 4 }, { 33, -8, 15, 21, 2, 4 }, { 34, -9, 15, 22, 2, 4 }, + { 34, -10, 16, 22, 2, 4 }, { 35, -11, 17, 22, 2, 4 }, { 35, -12, 17, 22, 2, 4 }, { 36, -13, 18, 22, 2, 4 }, { 36, -14, 18, 22, 2, 4 }, + { 37, -15, 19, 22, 2, 4 }, { 37, -16, 20, 22, 2, 4 }, { 38, -17, 20, 22, 2, 4 }, { 38, -18, 21, 22, 2, 4 }, { 38, -19, 21, 22, 2, 4 }, + { 39, -20, 22, 22, 2, 4 }, { 39, -21, 23, 22, 2, 4 }, { 40, -22, 23, 22, 2, 4 }, { 40, -23, 24, 22, 2, 4 }, { 40, -24, 24, 22, 2, 4 }, + { 41, -25, 25, 22, 2, 4 }, { 41, -26, 26, 22, 2, 4 }, { 42, -27, 26, 22, 2, 4 }, { 42, -28, 27, 22, 2, 4 }, { 42, -29, 28, 22, 2, 4 }, + { 43, -30, 28, 22, 2, 4 }, { 43, -31, 29, 22, 2, 4 }, { 43, -32, 29, 23, 2, 4 }, { 43, -33, 30, 23, 2, 4 }, { 44, -34, 31, 23, 2, 4 }, + { 44, -35, 31, 23, 2, 4 }, { 44, -36, 32, 23, 2, 4 }, { 45, -37, 32, 23, 2, 4 }, { 45, -38, 33, 23, 2, 4 }, { 45, -39, 33, 23, 2, 4 }, + { 45, -40, 34, 23, 2, 4 }, { 45, -41, 35, 23, 2, 4 }, { 46, -42, 35, 23, 2, 4 }, { 46, -43, 36, 23, 2, 4 }, { 46, -44, 36, 23, 2, 4 }, + { 46, -45, 37, 23, 2, 4 }, { 46, -46, 38, 23, 2, 4 }, { 47, -47, 38, 23, 2, 4 }, { 47, -48, 39, 23, 2, 4 }, { 47, -49, 39, 23, 2, 4 }, + { 47, -50, 40, 23, 2, 4 }, { 47, -51, 40, 23, 2, 4 }, { 47, -52, 41, 23, 2, 4 }, { 47, -53, 42, 23, 2, 4 }, { 47, -54, 42, 24, 2, 4 }, + { 48, -55, 43, 24, 2, 4 }, { 48, -56, 43, 24, 2, 4 }, { 48, -57, 44, 24, 2, 4 }, { 48, -58, 44, 24, 2, 4 }, { 48, -59, 45, 24, 2, 4 }, + { 48, -60, 46, 24, 2, 4 }, { 48, -61, 46, 24, 2, 4 }, { 48, -62, 47, 24, 2, 4 }, { 48, -63, 47, 24, 2, 4 }, { 48, -64, 48, 24, 2, 4 }, + { 48, -65, 48, 24, 2, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthBankToOrthogonalUp253, { + { 15, 15, 1, 28, 2, 4 }, { 14, 14, 2, 28, 2, 4 }, { 13, 13, 2, 28, 2, 4 }, { 12, 12, 3, 28, 2, 4 }, { 11, 11, 3, 28, 2, 4 }, + { 10, 10, 4, 29, 2, 4 }, { 9, 9, 5, 29, 2, 4 }, { 8, 9, 5, 29, 2, 4 }, { 7, 8, 6, 29, 2, 4 }, { 6, 7, 7, 29, 2, 4 }, + { 5, 6, 7, 29, 2, 4 }, { 4, 6, 8, 29, 2, 4 }, { 3, 5, 8, 29, 2, 4 }, { 2, 4, 9, 29, 2, 4 }, { 1, 4, 10, 29, 2, 4 }, + { 0, 3, 10, 29, 2, 4 }, { -1, 2, 11, 29, 2, 4 }, { -2, 2, 12, 29, 2, 4 }, { -3, 1, 12, 29, 2, 4 }, { -4, 1, 13, 29, 2, 4 }, + { -5, 0, 13, 29, 2, 4 }, { -6, -1, 14, 29, 2, 4 }, { -7, -1, 15, 29, 2, 4 }, { -8, -2, 15, 30, 2, 4 }, { -9, -2, 16, 30, 2, 4 }, + { -10, -3, 17, 30, 2, 4 }, { -11, -3, 17, 30, 2, 4 }, { -12, -4, 18, 30, 2, 4 }, { -13, -4, 18, 30, 2, 4 }, { -14, -5, 19, 30, 2, 4 }, + { -15, -5, 20, 30, 2, 4 }, { -16, -6, 20, 30, 2, 4 }, { -17, -6, 21, 30, 2, 4 }, { -18, -6, 21, 30, 2, 4 }, { -19, -7, 22, 30, 2, 4 }, + { -20, -7, 23, 30, 2, 4 }, { -21, -8, 23, 30, 2, 4 }, { -22, -8, 24, 30, 2, 4 }, { -23, -8, 24, 30, 2, 4 }, { -24, -9, 25, 30, 2, 4 }, + { -25, -9, 26, 30, 2, 4 }, { -26, -10, 26, 30, 2, 4 }, { -27, -10, 27, 30, 2, 4 }, { -28, -10, 28, 30, 2, 4 }, { -29, -11, 28, 30, 2, 4 }, + { -30, -11, 29, 30, 2, 4 }, { -31, -11, 29, 31, 2, 4 }, { -32, -11, 30, 31, 2, 4 }, { -33, -12, 31, 31, 2, 4 }, { -34, -12, 31, 31, 2, 4 }, + { -35, -12, 32, 31, 2, 4 }, { -36, -13, 32, 31, 2, 4 }, { -37, -13, 33, 31, 2, 4 }, { -38, -13, 33, 31, 2, 4 }, { -39, -13, 34, 31, 2, 4 }, + { -40, -13, 35, 31, 2, 4 }, { -41, -14, 35, 31, 2, 4 }, { -42, -14, 36, 31, 2, 4 }, { -43, -14, 36, 31, 2, 4 }, { -44, -14, 37, 31, 2, 4 }, + { -45, -14, 38, 31, 2, 4 }, { -46, -15, 38, 31, 2, 4 }, { -47, -15, 39, 31, 2, 4 }, { -48, -15, 39, 31, 2, 4 }, { -49, -15, 40, 31, 2, 4 }, + { -50, -15, 40, 31, 2, 4 }, { -51, -15, 41, 31, 2, 4 }, { -52, -15, 42, 31, 2, 4 }, { -53, -15, 42, 0, 2, 4 }, { -54, -16, 43, 0, 2, 4 }, + { -55, -16, 43, 0, 2, 4 }, { -56, -16, 44, 0, 2, 4 }, { -57, -16, 44, 0, 2, 4 }, { -58, -16, 45, 0, 2, 4 }, { -59, -16, 46, 0, 2, 4 }, + { -60, -16, 46, 0, 2, 4 }, { -61, -16, 47, 0, 2, 4 }, { -62, -16, 47, 0, 2, 4 }, { -63, -16, 48, 0, 2, 4 }, { -64, -16, 48, 0, 2, 4 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthBankToOrthogonalDown250, { + { 15, 16, 15, 4, 6, 2 }, { 14, 17, 14, 4, 6, 2 }, { 13, 18, 14, 4, 6, 2 }, { 12, 19, 13, 4, 6, 2 }, { 11, 20, 13, 4, 6, 2 }, + { 10, 21, 12, 3, 6, 2 }, { 9, 22, 11, 3, 6, 2 }, { 8, 22, 11, 3, 6, 2 }, { 7, 23, 10, 3, 6, 2 }, { 6, 24, 9, 3, 6, 2 }, + { 5, 25, 9, 3, 6, 2 }, { 4, 25, 8, 3, 6, 2 }, { 3, 26, 8, 3, 6, 2 }, { 2, 27, 7, 3, 6, 2 }, { 1, 27, 6, 3, 6, 2 }, + { 0, 28, 6, 3, 6, 2 }, { -1, 29, 5, 3, 6, 2 }, { -2, 29, 4, 3, 6, 2 }, { -3, 30, 4, 3, 6, 2 }, { -4, 30, 3, 3, 6, 2 }, + { -5, 31, 3, 3, 6, 2 }, { -6, 32, 2, 3, 6, 2 }, { -7, 32, 1, 3, 6, 2 }, { -8, 33, 1, 2, 6, 2 }, { -9, 33, 0, 2, 6, 2 }, + { -10, 34, -1, 2, 6, 2 }, { -11, 34, -1, 2, 6, 2 }, { -12, 35, -2, 2, 6, 2 }, { -13, 35, -2, 2, 6, 2 }, { -14, 36, -3, 2, 6, 2 }, + { -15, 36, -4, 2, 6, 2 }, { -16, 37, -4, 2, 6, 2 }, { -17, 37, -5, 2, 6, 2 }, { -18, 37, -5, 2, 6, 2 }, { -19, 38, -6, 2, 6, 2 }, + { -20, 38, -7, 2, 6, 2 }, { -21, 39, -7, 2, 6, 2 }, { -22, 39, -8, 2, 6, 2 }, { -23, 39, -8, 2, 6, 2 }, { -24, 40, -9, 2, 6, 2 }, + { -25, 40, -10, 2, 6, 2 }, { -26, 41, -10, 2, 6, 2 }, { -27, 41, -11, 2, 6, 2 }, { -28, 41, -12, 2, 6, 2 }, { -29, 42, -12, 2, 6, 2 }, + { -30, 42, -13, 2, 6, 2 }, { -31, 42, -13, 1, 6, 2 }, { -32, 42, -14, 1, 6, 2 }, { -33, 43, -15, 1, 6, 2 }, { -34, 43, -15, 1, 6, 2 }, + { -35, 43, -16, 1, 6, 2 }, { -36, 44, -16, 1, 6, 2 }, { -37, 44, -17, 1, 6, 2 }, { -38, 44, -17, 1, 6, 2 }, { -39, 44, -18, 1, 6, 2 }, + { -40, 44, -19, 1, 6, 2 }, { -41, 45, -19, 1, 6, 2 }, { -42, 45, -20, 1, 6, 2 }, { -43, 45, -20, 1, 6, 2 }, { -44, 45, -21, 1, 6, 2 }, + { -45, 45, -22, 1, 6, 2 }, { -46, 46, -22, 1, 6, 2 }, { -47, 46, -23, 1, 6, 2 }, { -48, 46, -23, 1, 6, 2 }, { -49, 46, -24, 1, 6, 2 }, + { -50, 46, -24, 1, 6, 2 }, { -51, 46, -25, 1, 6, 2 }, { -52, 46, -26, 1, 6, 2 }, { -53, 46, -26, 0, 6, 2 }, { -54, 47, -27, 0, 6, 2 }, + { -55, 47, -27, 0, 6, 2 }, { -56, 47, -28, 0, 6, 2 }, { -57, 47, -28, 0, 6, 2 }, { -58, 47, -29, 0, 6, 2 }, { -59, 47, -30, 0, 6, 2 }, + { -60, 47, -30, 0, 6, 2 }, { -61, 47, -31, 0, 6, 2 }, { -62, 47, -31, 0, 6, 2 }, { -63, 47, -32, 0, 6, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthBankToOrthogonalDown251, { + { 16, 16, 16, 12, 6, 2 }, { 17, 17, 15, 12, 6, 2 }, { 18, 18, 14, 12, 6, 2 }, { 19, 19, 14, 12, 6, 2 }, { 20, 20, 13, 12, 6, 2 }, + { 21, 21, 13, 12, 6, 2 }, { 22, 22, 12, 11, 6, 2 }, { 23, 23, 11, 11, 6, 2 }, { 23, 24, 11, 11, 6, 2 }, { 24, 25, 10, 11, 6, 2 }, + { 25, 26, 9, 11, 6, 2 }, { 26, 27, 9, 11, 6, 2 }, { 26, 28, 8, 11, 6, 2 }, { 27, 29, 8, 11, 6, 2 }, { 28, 30, 7, 11, 6, 2 }, + { 28, 31, 6, 11, 6, 2 }, { 29, 32, 6, 11, 6, 2 }, { 30, 33, 5, 11, 6, 2 }, { 30, 34, 4, 11, 6, 2 }, { 31, 35, 4, 11, 6, 2 }, + { 31, 36, 3, 11, 6, 2 }, { 32, 37, 3, 11, 6, 2 }, { 33, 38, 2, 11, 6, 2 }, { 33, 39, 1, 11, 6, 2 }, { 34, 40, 1, 10, 6, 2 }, + { 34, 41, 0, 10, 6, 2 }, { 35, 42, -1, 10, 6, 2 }, { 35, 43, -1, 10, 6, 2 }, { 36, 44, -2, 10, 6, 2 }, { 36, 45, -2, 10, 6, 2 }, + { 37, 46, -3, 10, 6, 2 }, { 37, 47, -4, 10, 6, 2 }, { 38, 48, -4, 10, 6, 2 }, { 38, 49, -5, 10, 6, 2 }, { 38, 50, -5, 10, 6, 2 }, + { 39, 51, -6, 10, 6, 2 }, { 39, 52, -7, 10, 6, 2 }, { 40, 53, -7, 10, 6, 2 }, { 40, 54, -8, 10, 6, 2 }, { 40, 55, -8, 10, 6, 2 }, + { 41, 56, -9, 10, 6, 2 }, { 41, 57, -10, 10, 6, 2 }, { 42, 58, -10, 10, 6, 2 }, { 42, 59, -11, 10, 6, 2 }, { 42, 60, -12, 10, 6, 2 }, + { 43, 61, -12, 10, 6, 2 }, { 43, 62, -13, 10, 6, 2 }, { 43, 63, -13, 9, 6, 2 }, { 43, 64, -14, 9, 6, 2 }, { 44, 65, -15, 9, 6, 2 }, + { 44, 66, -15, 9, 6, 2 }, { 44, 67, -16, 9, 6, 2 }, { 45, 68, -16, 9, 6, 2 }, { 45, 69, -17, 9, 6, 2 }, { 45, 70, -17, 9, 6, 2 }, + { 45, 71, -18, 9, 6, 2 }, { 45, 72, -19, 9, 6, 2 }, { 46, 73, -19, 9, 6, 2 }, { 46, 74, -20, 9, 6, 2 }, { 46, 75, -20, 9, 6, 2 }, + { 46, 76, -21, 9, 6, 2 }, { 46, 77, -22, 9, 6, 2 }, { 47, 78, -22, 9, 6, 2 }, { 47, 79, -23, 9, 6, 2 }, { 47, 80, -23, 9, 6, 2 }, + { 47, 81, -24, 9, 6, 2 }, { 47, 82, -24, 9, 6, 2 }, { 47, 83, -25, 9, 6, 2 }, { 47, 84, -26, 9, 6, 2 }, { 47, 85, -26, 8, 6, 2 }, + { 48, 86, -27, 8, 6, 2 }, { 48, 87, -27, 8, 6, 2 }, { 48, 88, -28, 8, 6, 2 }, { 48, 89, -28, 8, 6, 2 }, { 48, 90, -29, 8, 6, 2 }, + { 48, 91, -30, 8, 6, 2 }, { 48, 92, -30, 8, 6, 2 }, { 48, 93, -31, 8, 6, 2 }, { 48, 94, -31, 8, 6, 2 }, { 48, 95, -32, 8, 6, 2 }, + { 48, 96, -32, 8, 6, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthBankToOrthogonalDown252, { + { 16, 15, 16, 20, 6, 2 }, { 17, 14, 15, 20, 6, 2 }, { 18, 13, 14, 20, 6, 2 }, { 19, 12, 14, 20, 6, 2 }, { 20, 11, 13, 20, 6, 2 }, + { 21, 10, 13, 20, 6, 2 }, { 22, 9, 12, 19, 6, 2 }, { 23, 8, 11, 19, 6, 2 }, { 24, 8, 11, 19, 6, 2 }, { 25, 7, 10, 19, 6, 2 }, + { 26, 6, 9, 19, 6, 2 }, { 27, 5, 9, 19, 6, 2 }, { 28, 5, 8, 19, 6, 2 }, { 29, 4, 8, 19, 6, 2 }, { 30, 3, 7, 19, 6, 2 }, + { 31, 3, 6, 19, 6, 2 }, { 32, 2, 6, 19, 6, 2 }, { 33, 1, 5, 19, 6, 2 }, { 34, 1, 4, 19, 6, 2 }, { 35, 0, 4, 19, 6, 2 }, + { 36, 0, 3, 19, 6, 2 }, { 37, -1, 3, 19, 6, 2 }, { 38, -2, 2, 19, 6, 2 }, { 39, -2, 1, 19, 6, 2 }, { 40, -3, 1, 18, 6, 2 }, + { 41, -3, 0, 18, 6, 2 }, { 42, -4, -1, 18, 6, 2 }, { 43, -4, -1, 18, 6, 2 }, { 44, -5, -2, 18, 6, 2 }, { 45, -5, -2, 18, 6, 2 }, + { 46, -6, -3, 18, 6, 2 }, { 47, -6, -4, 18, 6, 2 }, { 48, -7, -4, 18, 6, 2 }, { 49, -7, -5, 18, 6, 2 }, { 50, -7, -5, 18, 6, 2 }, + { 51, -8, -6, 18, 6, 2 }, { 52, -8, -7, 18, 6, 2 }, { 53, -9, -7, 18, 6, 2 }, { 54, -9, -8, 18, 6, 2 }, { 55, -9, -8, 18, 6, 2 }, + { 56, -10, -9, 18, 6, 2 }, { 57, -10, -10, 18, 6, 2 }, { 58, -11, -10, 18, 6, 2 }, { 59, -11, -11, 18, 6, 2 }, { 60, -11, -12, 18, 6, 2 }, + { 61, -12, -12, 18, 6, 2 }, { 62, -12, -13, 18, 6, 2 }, { 63, -12, -13, 17, 6, 2 }, { 64, -12, -14, 17, 6, 2 }, { 65, -13, -15, 17, 6, 2 }, + { 66, -13, -15, 17, 6, 2 }, { 67, -13, -16, 17, 6, 2 }, { 68, -14, -16, 17, 6, 2 }, { 69, -14, -17, 17, 6, 2 }, { 70, -14, -17, 17, 6, 2 }, + { 71, -14, -18, 17, 6, 2 }, { 72, -14, -19, 17, 6, 2 }, { 73, -15, -19, 17, 6, 2 }, { 74, -15, -20, 17, 6, 2 }, { 75, -15, -20, 17, 6, 2 }, + { 76, -15, -21, 17, 6, 2 }, { 77, -15, -22, 17, 6, 2 }, { 78, -16, -22, 17, 6, 2 }, { 79, -16, -23, 17, 6, 2 }, { 80, -16, -23, 17, 6, 2 }, + { 81, -16, -24, 17, 6, 2 }, { 82, -16, -24, 17, 6, 2 }, { 83, -16, -25, 17, 6, 2 }, { 84, -16, -26, 17, 6, 2 }, { 85, -16, -26, 16, 6, 2 }, + { 86, -17, -27, 16, 6, 2 }, { 87, -17, -27, 16, 6, 2 }, { 88, -17, -28, 16, 6, 2 }, { 89, -17, -28, 16, 6, 2 }, { 90, -17, -29, 16, 6, 2 }, + { 91, -17, -30, 16, 6, 2 }, { 92, -17, -30, 16, 6, 2 }, { 93, -17, -31, 16, 6, 2 }, { 94, -17, -31, 16, 6, 2 }, { 95, -17, -32, 16, 6, 2 }, + { 96, -17, -32, 16, 6, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoLeftEighthBankToOrthogonalDown253, { + { 15, 15, 15, 28, 6, 2 }, { 14, 14, 14, 28, 6, 2 }, { 13, 13, 14, 28, 6, 2 }, { 12, 12, 13, 28, 6, 2 }, { 11, 11, 13, 28, 6, 2 }, + { 10, 10, 12, 27, 6, 2 }, { 9, 9, 11, 27, 6, 2 }, { 9, 8, 11, 27, 6, 2 }, { 8, 7, 10, 27, 6, 2 }, { 7, 6, 9, 27, 6, 2 }, + { 6, 5, 9, 27, 6, 2 }, { 6, 4, 8, 27, 6, 2 }, { 5, 3, 8, 27, 6, 2 }, { 4, 2, 7, 27, 6, 2 }, { 4, 1, 6, 27, 6, 2 }, + { 3, 0, 6, 27, 6, 2 }, { 2, -1, 5, 27, 6, 2 }, { 2, -2, 4, 27, 6, 2 }, { 1, -3, 4, 27, 6, 2 }, { 1, -4, 3, 27, 6, 2 }, + { 0, -5, 3, 27, 6, 2 }, { -1, -6, 2, 27, 6, 2 }, { -1, -7, 1, 27, 6, 2 }, { -2, -8, 1, 26, 6, 2 }, { -2, -9, 0, 26, 6, 2 }, + { -3, -10, -1, 26, 6, 2 }, { -3, -11, -1, 26, 6, 2 }, { -4, -12, -2, 26, 6, 2 }, { -4, -13, -2, 26, 6, 2 }, { -5, -14, -3, 26, 6, 2 }, + { -5, -15, -4, 26, 6, 2 }, { -6, -16, -4, 26, 6, 2 }, { -6, -17, -5, 26, 6, 2 }, { -6, -18, -5, 26, 6, 2 }, { -7, -19, -6, 26, 6, 2 }, + { -7, -20, -7, 26, 6, 2 }, { -8, -21, -7, 26, 6, 2 }, { -8, -22, -8, 26, 6, 2 }, { -8, -23, -8, 26, 6, 2 }, { -9, -24, -9, 26, 6, 2 }, + { -9, -25, -10, 26, 6, 2 }, { -10, -26, -10, 26, 6, 2 }, { -10, -27, -11, 26, 6, 2 }, { -10, -28, -12, 26, 6, 2 }, { -11, -29, -12, 26, 6, 2 }, + { -11, -30, -13, 26, 6, 2 }, { -11, -31, -13, 25, 6, 2 }, { -11, -32, -14, 25, 6, 2 }, { -12, -33, -15, 25, 6, 2 }, { -12, -34, -15, 25, 6, 2 }, + { -12, -35, -16, 25, 6, 2 }, { -13, -36, -16, 25, 6, 2 }, { -13, -37, -17, 25, 6, 2 }, { -13, -38, -17, 25, 6, 2 }, { -13, -39, -18, 25, 6, 2 }, + { -13, -40, -19, 25, 6, 2 }, { -14, -41, -19, 25, 6, 2 }, { -14, -42, -20, 25, 6, 2 }, { -14, -43, -20, 25, 6, 2 }, { -14, -44, -21, 25, 6, 2 }, + { -14, -45, -22, 25, 6, 2 }, { -15, -46, -22, 25, 6, 2 }, { -15, -47, -23, 25, 6, 2 }, { -15, -48, -23, 25, 6, 2 }, { -15, -49, -24, 25, 6, 2 }, + { -15, -50, -24, 25, 6, 2 }, { -15, -51, -25, 25, 6, 2 }, { -15, -52, -26, 25, 6, 2 }, { -15, -53, -26, 24, 6, 2 }, { -16, -54, -27, 24, 6, 2 }, + { -16, -55, -27, 24, 6, 2 }, { -16, -56, -28, 24, 6, 2 }, { -16, -57, -28, 24, 6, 2 }, { -16, -58, -29, 24, 6, 2 }, { -16, -59, -30, 24, 6, 2 }, + { -16, -60, -30, 24, 6, 2 }, { -16, -61, -31, 24, 6, 2 }, { -16, -62, -31, 24, 6, 2 }, { -16, -63, -32, 24, 6, 2 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthBankToOrthogonalDown250, { + { 15, 16, 15, 4, 6, 4 }, { 14, 17, 14, 4, 6, 4 }, { 13, 18, 14, 4, 6, 4 }, { 12, 19, 13, 4, 6, 4 }, { 11, 20, 13, 4, 6, 4 }, + { 10, 21, 12, 5, 6, 4 }, { 9, 22, 11, 5, 6, 4 }, { 9, 23, 11, 5, 6, 4 }, { 8, 24, 10, 5, 6, 4 }, { 7, 25, 9, 5, 6, 4 }, + { 6, 26, 9, 5, 6, 4 }, { 6, 27, 8, 5, 6, 4 }, { 5, 28, 8, 5, 6, 4 }, { 4, 29, 7, 5, 6, 4 }, { 4, 30, 6, 5, 6, 4 }, + { 3, 31, 6, 5, 6, 4 }, { 2, 32, 5, 5, 6, 4 }, { 2, 33, 4, 5, 6, 4 }, { 1, 34, 4, 5, 6, 4 }, { 1, 35, 3, 5, 6, 4 }, + { 0, 36, 3, 5, 6, 4 }, { -1, 37, 2, 5, 6, 4 }, { -1, 38, 1, 5, 6, 4 }, { -2, 39, 1, 6, 6, 4 }, { -2, 40, 0, 6, 6, 4 }, + { -3, 41, -1, 6, 6, 4 }, { -3, 42, -1, 6, 6, 4 }, { -4, 43, -2, 6, 6, 4 }, { -4, 44, -2, 6, 6, 4 }, { -5, 45, -3, 6, 6, 4 }, + { -5, 46, -4, 6, 6, 4 }, { -6, 47, -4, 6, 6, 4 }, { -6, 48, -5, 6, 6, 4 }, { -6, 49, -5, 6, 6, 4 }, { -7, 50, -6, 6, 6, 4 }, + { -7, 51, -7, 6, 6, 4 }, { -8, 52, -7, 6, 6, 4 }, { -8, 53, -8, 6, 6, 4 }, { -8, 54, -8, 6, 6, 4 }, { -9, 55, -9, 6, 6, 4 }, + { -9, 56, -10, 6, 6, 4 }, { -10, 57, -10, 6, 6, 4 }, { -10, 58, -11, 6, 6, 4 }, { -10, 59, -12, 6, 6, 4 }, { -11, 60, -12, 6, 6, 4 }, + { -11, 61, -13, 6, 6, 4 }, { -11, 62, -13, 7, 6, 4 }, { -11, 63, -14, 7, 6, 4 }, { -12, 64, -15, 7, 6, 4 }, { -12, 65, -15, 7, 6, 4 }, + { -12, 66, -16, 7, 6, 4 }, { -13, 67, -16, 7, 6, 4 }, { -13, 68, -17, 7, 6, 4 }, { -13, 69, -17, 7, 6, 4 }, { -13, 70, -18, 7, 6, 4 }, + { -13, 71, -19, 7, 6, 4 }, { -14, 72, -19, 7, 6, 4 }, { -14, 73, -20, 7, 6, 4 }, { -14, 74, -20, 7, 6, 4 }, { -14, 75, -21, 7, 6, 4 }, + { -14, 76, -22, 7, 6, 4 }, { -15, 77, -22, 7, 6, 4 }, { -15, 78, -23, 7, 6, 4 }, { -15, 79, -23, 7, 6, 4 }, { -15, 80, -24, 7, 6, 4 }, + { -15, 81, -24, 7, 6, 4 }, { -15, 82, -25, 7, 6, 4 }, { -15, 83, -26, 7, 6, 4 }, { -15, 84, -26, 8, 6, 4 }, { -16, 85, -27, 8, 6, 4 }, + { -16, 86, -27, 8, 6, 4 }, { -16, 87, -28, 8, 6, 4 }, { -16, 88, -28, 8, 6, 4 }, { -16, 89, -29, 8, 6, 4 }, { -16, 90, -30, 8, 6, 4 }, + { -16, 91, -30, 8, 6, 4 }, { -16, 92, -31, 8, 6, 4 }, { -16, 93, -31, 8, 6, 4 }, { -16, 94, -32, 8, 6, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthBankToOrthogonalDown251, { + { 16, 16, 16, 12, 6, 4 }, { 17, 17, 15, 12, 6, 4 }, { 18, 18, 14, 12, 6, 4 }, { 19, 19, 14, 12, 6, 4 }, { 20, 20, 13, 12, 6, 4 }, + { 21, 21, 13, 12, 6, 4 }, { 22, 22, 12, 13, 6, 4 }, { 23, 23, 11, 13, 6, 4 }, { 24, 23, 11, 13, 6, 4 }, { 25, 24, 10, 13, 6, 4 }, + { 26, 25, 9, 13, 6, 4 }, { 27, 26, 9, 13, 6, 4 }, { 28, 26, 8, 13, 6, 4 }, { 29, 27, 8, 13, 6, 4 }, { 30, 28, 7, 13, 6, 4 }, + { 31, 28, 6, 13, 6, 4 }, { 32, 29, 6, 13, 6, 4 }, { 33, 30, 5, 13, 6, 4 }, { 34, 30, 4, 13, 6, 4 }, { 35, 31, 4, 13, 6, 4 }, + { 36, 31, 3, 13, 6, 4 }, { 37, 32, 3, 13, 6, 4 }, { 38, 33, 2, 13, 6, 4 }, { 39, 33, 1, 13, 6, 4 }, { 40, 34, 1, 14, 6, 4 }, + { 41, 34, 0, 14, 6, 4 }, { 42, 35, -1, 14, 6, 4 }, { 43, 35, -1, 14, 6, 4 }, { 44, 36, -2, 14, 6, 4 }, { 45, 36, -2, 14, 6, 4 }, + { 46, 37, -3, 14, 6, 4 }, { 47, 37, -4, 14, 6, 4 }, { 48, 38, -4, 14, 6, 4 }, { 49, 38, -5, 14, 6, 4 }, { 50, 38, -5, 14, 6, 4 }, + { 51, 39, -6, 14, 6, 4 }, { 52, 39, -7, 14, 6, 4 }, { 53, 40, -7, 14, 6, 4 }, { 54, 40, -8, 14, 6, 4 }, { 55, 40, -8, 14, 6, 4 }, + { 56, 41, -9, 14, 6, 4 }, { 57, 41, -10, 14, 6, 4 }, { 58, 42, -10, 14, 6, 4 }, { 59, 42, -11, 14, 6, 4 }, { 60, 42, -12, 14, 6, 4 }, + { 61, 43, -12, 14, 6, 4 }, { 62, 43, -13, 14, 6, 4 }, { 63, 43, -13, 15, 6, 4 }, { 64, 43, -14, 15, 6, 4 }, { 65, 44, -15, 15, 6, 4 }, + { 66, 44, -15, 15, 6, 4 }, { 67, 44, -16, 15, 6, 4 }, { 68, 45, -16, 15, 6, 4 }, { 69, 45, -17, 15, 6, 4 }, { 70, 45, -17, 15, 6, 4 }, + { 71, 45, -18, 15, 6, 4 }, { 72, 45, -19, 15, 6, 4 }, { 73, 46, -19, 15, 6, 4 }, { 74, 46, -20, 15, 6, 4 }, { 75, 46, -20, 15, 6, 4 }, + { 76, 46, -21, 15, 6, 4 }, { 77, 46, -22, 15, 6, 4 }, { 78, 47, -22, 15, 6, 4 }, { 79, 47, -23, 15, 6, 4 }, { 80, 47, -23, 15, 6, 4 }, + { 81, 47, -24, 15, 6, 4 }, { 82, 47, -24, 15, 6, 4 }, { 83, 47, -25, 15, 6, 4 }, { 84, 47, -26, 15, 6, 4 }, { 85, 47, -26, 16, 6, 4 }, + { 86, 48, -27, 16, 6, 4 }, { 87, 48, -27, 16, 6, 4 }, { 88, 48, -28, 16, 6, 4 }, { 89, 48, -28, 16, 6, 4 }, { 90, 48, -29, 16, 6, 4 }, + { 91, 48, -30, 16, 6, 4 }, { 92, 48, -30, 16, 6, 4 }, { 93, 48, -31, 16, 6, 4 }, { 94, 48, -31, 16, 6, 4 }, { 95, 48, -32, 16, 6, 4 }, +}) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthBankToOrthogonalDown252, { + { 16, 15, 16, 20, 6, 4 }, { 17, 14, 15, 20, 6, 4 }, { 18, 13, 14, 20, 6, 4 }, { 19, 12, 14, 20, 6, 4 }, { 20, 11, 13, 20, 6, 4 }, + { 21, 10, 13, 20, 6, 4 }, { 22, 9, 12, 21, 6, 4 }, { 23, 8, 11, 21, 6, 4 }, { 23, 7, 11, 21, 6, 4 }, { 24, 6, 10, 21, 6, 4 }, + { 25, 5, 9, 21, 6, 4 }, { 26, 4, 9, 21, 6, 4 }, { 26, 3, 8, 21, 6, 4 }, { 27, 2, 8, 21, 6, 4 }, { 28, 1, 7, 21, 6, 4 }, + { 28, 0, 6, 21, 6, 4 }, { 29, -1, 6, 21, 6, 4 }, { 30, -2, 5, 21, 6, 4 }, { 30, -3, 4, 21, 6, 4 }, { 31, -4, 4, 21, 6, 4 }, + { 31, -5, 3, 21, 6, 4 }, { 32, -6, 3, 21, 6, 4 }, { 33, -7, 2, 21, 6, 4 }, { 33, -8, 1, 21, 6, 4 }, { 34, -9, 1, 22, 6, 4 }, + { 34, -10, 0, 22, 6, 4 }, { 35, -11, -1, 22, 6, 4 }, { 35, -12, -1, 22, 6, 4 }, { 36, -13, -2, 22, 6, 4 }, { 36, -14, -2, 22, 6, 4 }, + { 37, -15, -3, 22, 6, 4 }, { 37, -16, -4, 22, 6, 4 }, { 38, -17, -4, 22, 6, 4 }, { 38, -18, -5, 22, 6, 4 }, { 38, -19, -5, 22, 6, 4 }, + { 39, -20, -6, 22, 6, 4 }, { 39, -21, -7, 22, 6, 4 }, { 40, -22, -7, 22, 6, 4 }, { 40, -23, -8, 22, 6, 4 }, { 40, -24, -8, 22, 6, 4 }, + { 41, -25, -9, 22, 6, 4 }, { 41, -26, -10, 22, 6, 4 }, { 42, -27, -10, 22, 6, 4 }, { 42, -28, -11, 22, 6, 4 }, { 42, -29, -12, 22, 6, 4 }, + { 43, -30, -12, 22, 6, 4 }, { 43, -31, -13, 22, 6, 4 }, { 43, -32, -13, 23, 6, 4 }, { 43, -33, -14, 23, 6, 4 }, { 44, -34, -15, 23, 6, 4 }, + { 44, -35, -15, 23, 6, 4 }, { 44, -36, -16, 23, 6, 4 }, { 45, -37, -16, 23, 6, 4 }, { 45, -38, -17, 23, 6, 4 }, { 45, -39, -17, 23, 6, 4 }, + { 45, -40, -18, 23, 6, 4 }, { 45, -41, -19, 23, 6, 4 }, { 46, -42, -19, 23, 6, 4 }, { 46, -43, -20, 23, 6, 4 }, { 46, -44, -20, 23, 6, 4 }, + { 46, -45, -21, 23, 6, 4 }, { 46, -46, -22, 23, 6, 4 }, { 47, -47, -22, 23, 6, 4 }, { 47, -48, -23, 23, 6, 4 }, { 47, -49, -23, 23, 6, 4 }, + { 47, -50, -24, 23, 6, 4 }, { 47, -51, -24, 23, 6, 4 }, { 47, -52, -25, 23, 6, 4 }, { 47, -53, -26, 23, 6, 4 }, { 47, -54, -26, 24, 6, 4 }, + { 48, -55, -27, 24, 6, 4 }, { 48, -56, -27, 24, 6, 4 }, { 48, -57, -28, 24, 6, 4 }, { 48, -58, -28, 24, 6, 4 }, { 48, -59, -29, 24, 6, 4 }, + { 48, -60, -30, 24, 6, 4 }, { 48, -61, -30, 24, 6, 4 }, { 48, -62, -31, 24, 6, 4 }, { 48, -63, -31, 24, 6, 4 }, { 48, -64, -32, 24, 6, 4 }, + { 48, -65, -32, 24, 6, 4 }, }) + +CREATE_VEHICLE_INFO(TrackVehicleInfoRightEighthBankToOrthogonalDown253, { + { 15, 15, 15, 28, 6, 4 }, { 14, 14, 14, 28, 6, 4 }, { 13, 13, 14, 28, 6, 4 }, { 12, 12, 13, 28, 6, 4 }, { 11, 11, 13, 28, 6, 4 }, + { 10, 10, 12, 29, 6, 4 }, { 9, 9, 11, 29, 6, 4 }, { 8, 9, 11, 29, 6, 4 }, { 7, 8, 10, 29, 6, 4 }, { 6, 7, 9, 29, 6, 4 }, + { 5, 6, 9, 29, 6, 4 }, { 4, 6, 8, 29, 6, 4 }, { 3, 5, 8, 29, 6, 4 }, { 2, 4, 7, 29, 6, 4 }, { 1, 4, 6, 29, 6, 4 }, + { 0, 3, 6, 29, 6, 4 }, { -1, 2, 5, 29, 6, 4 }, { -2, 2, 4, 29, 6, 4 }, { -3, 1, 4, 29, 6, 4 }, { -4, 1, 3, 29, 6, 4 }, + { -5, 0, 3, 29, 6, 4 }, { -6, -1, 2, 29, 6, 4 }, { -7, -1, 1, 29, 6, 4 }, { -8, -2, 1, 30, 6, 4 }, { -9, -2, 0, 30, 6, 4 }, + { -10, -3, -1, 30, 6, 4 }, { -11, -3, -1, 30, 6, 4 }, { -12, -4, -2, 30, 6, 4 }, { -13, -4, -2, 30, 6, 4 }, { -14, -5, -3, 30, 6, 4 }, + { -15, -5, -4, 30, 6, 4 }, { -16, -6, -4, 30, 6, 4 }, { -17, -6, -5, 30, 6, 4 }, { -18, -6, -5, 30, 6, 4 }, { -19, -7, -6, 30, 6, 4 }, + { -20, -7, -7, 30, 6, 4 }, { -21, -8, -7, 30, 6, 4 }, { -22, -8, -8, 30, 6, 4 }, { -23, -8, -8, 30, 6, 4 }, { -24, -9, -9, 30, 6, 4 }, + { -25, -9, -10, 30, 6, 4 }, { -26, -10, -10, 30, 6, 4 }, { -27, -10, -11, 30, 6, 4 }, { -28, -10, -12, 30, 6, 4 }, { -29, -11, -12, 30, 6, 4 }, + { -30, -11, -13, 30, 6, 4 }, { -31, -11, -13, 31, 6, 4 }, { -32, -11, -14, 31, 6, 4 }, { -33, -12, -15, 31, 6, 4 }, { -34, -12, -15, 31, 6, 4 }, + { -35, -12, -16, 31, 6, 4 }, { -36, -13, -16, 31, 6, 4 }, { -37, -13, -17, 31, 6, 4 }, { -38, -13, -17, 31, 6, 4 }, { -39, -13, -18, 31, 6, 4 }, + { -40, -13, -19, 31, 6, 4 }, { -41, -14, -19, 31, 6, 4 }, { -42, -14, -20, 31, 6, 4 }, { -43, -14, -20, 31, 6, 4 }, { -44, -14, -21, 31, 6, 4 }, + { -45, -14, -22, 31, 6, 4 }, { -46, -15, -22, 31, 6, 4 }, { -47, -15, -23, 31, 6, 4 }, { -48, -15, -23, 31, 6, 4 }, { -49, -15, -24, 31, 6, 4 }, + { -50, -15, -24, 31, 6, 4 }, { -51, -15, -25, 31, 6, 4 }, { -52, -15, -26, 31, 6, 4 }, { -53, -15, -26, 0, 6, 4 }, { -54, -16, -27, 0, 6, 4 }, + { -55, -16, -27, 0, 6, 4 }, { -56, -16, -28, 0, 6, 4 }, { -57, -16, -28, 0, 6, 4 }, { -58, -16, -29, 0, 6, 4 }, { -59, -16, -30, 0, 6, 4 }, + { -60, -16, -30, 0, 6, 4 }, { -61, -16, -31, 0, 6, 4 }, { -62, -16, -31, 0, 6, 4 }, { -63, -16, -32, 0, 6, 4 }, { -64, -16, -32, 0, 6, 4 }, +}) + + + + + + + namespace LeftLane @@ -27802,6 +30030,52 @@ static constexpr const VehicleInfoList *TrackVehicleInfoListDefault[] = { &TrackVehicleInfo_LeftFlyerLargeHalfLoopUninvertedDown0, &TrackVehicleInfo_LeftFlyerLargeHalfLoopUninvertedDown1, &TrackVehicleInfo_LeftFlyerLargeHalfLoopUninvertedDown2, &TrackVehicleInfo_LeftFlyerLargeHalfLoopUninvertedDown3, // LeftFlyerLargeHalfLoopUninvertedDown &TrackVehicleInfo_8E644E, &TrackVehicleInfo_8E69F9, &TrackVehicleInfo_8E6FA4, &TrackVehicleInfo_8E754F, // FlyerHalfLoopInvertedUp &TrackVehicleInfo_FlyerHalfLoopUninvertedDown0, &TrackVehicleInfo_FlyerHalfLoopUninvertedDown1, &TrackVehicleInfo_FlyerHalfLoopUninvertedDown2, &TrackVehicleInfo_FlyerHalfLoopUninvertedDown3, // FlyerHalfLoopUninvertedDown + &TrackVehicleInfoLeftEighthToDiagUp250, &TrackVehicleInfoLeftEighthToDiagUp251, &TrackVehicleInfoLeftEighthToDiagUp252, &TrackVehicleInfoLeftEighthToDiagUp253, // TrackElemType::LeftEighthToDiagUp25 + &TrackVehicleInfoRightEighthToDiagUp250, &TrackVehicleInfoRightEighthToDiagUp251, &TrackVehicleInfoRightEighthToDiagUp252, &TrackVehicleInfoRightEighthToDiagUp253, // TrackElemType::RightEighthToDiagUp25 + &TrackVehicleInfoLeftEighthToDiagDown250, &TrackVehicleInfoLeftEighthToDiagDown251, &TrackVehicleInfoLeftEighthToDiagDown252, &TrackVehicleInfoLeftEighthToDiagDown253, // TrackElemType::LeftEighthToDiagDown25 + &TrackVehicleInfoRightEighthToDiagDown250, &TrackVehicleInfoRightEighthToDiagDown251, &TrackVehicleInfoRightEighthToDiagDown252, &TrackVehicleInfoRightEighthToDiagDown253, // TrackElemType::RightEighthToDiagDown25 + &TrackVehicleInfoLeftEighthToOrthogonalUp250, &TrackVehicleInfoLeftEighthToOrthogonalUp251, &TrackVehicleInfoLeftEighthToOrthogonalUp252, &TrackVehicleInfoLeftEighthToOrthogonalUp253, // TrackElemType::LeftEighthToOrthogonalUp25 + &TrackVehicleInfoRightEighthToOrthogonalUp250, &TrackVehicleInfoRightEighthToOrthogonalUp251, &TrackVehicleInfoRightEighthToOrthogonalUp252, &TrackVehicleInfoRightEighthToOrthogonalUp253, // TrackElemType::RightEighthToOrthogonalUp25 + &TrackVehicleInfoLeftEighthToOrthogonalDown250, &TrackVehicleInfoLeftEighthToOrthogonalDown251, &TrackVehicleInfoLeftEighthToOrthogonalDown252, &TrackVehicleInfoLeftEighthToOrthogonalDown253, // TrackElemType::LeftEighthToOrthogonalDown25 + &TrackVehicleInfoRightEighthToOrthogonalDown250, &TrackVehicleInfoRightEighthToOrthogonalDown251, &TrackVehicleInfoRightEighthToOrthogonalDown252, &TrackVehicleInfoRightEighthToOrthogonalDown253, // TrackElemType::RightEighthToOrthogonalDown25 + + &TrackVehicleInfoDiagUp25ToLeftBankedUp250, &TrackVehicleInfoDiagUp25ToLeftBankedUp251, &TrackVehicleInfoDiagUp25ToLeftBankedUp252, &TrackVehicleInfoDiagUp25ToLeftBankedUp253, // TrackElemType::DiagUp25ToLeftBankedUp25 + &TrackVehicleInfoDiagUp25ToRightBankedUp250, &TrackVehicleInfoDiagUp25ToRightBankedUp251, &TrackVehicleInfoDiagUp25ToRightBankedUp252, &TrackVehicleInfoDiagUp25ToRightBankedUp253, // TrackElemType::DiagUp25ToRightBankedUp25 + &TrackVehicleInfoDiagLeftBankedUp25ToUp250, &TrackVehicleInfoDiagLeftBankedUp25ToUp251, &TrackVehicleInfoDiagLeftBankedUp25ToUp252, &TrackVehicleInfoDiagLeftBankedUp25ToUp253, // TrackElemType::DiagLeftBankedUp25ToUp25 + &TrackVehicleInfoDiagRightBankedUp25ToUp250, &TrackVehicleInfoDiagRightBankedUp25ToUp251, &TrackVehicleInfoDiagRightBankedUp25ToUp252, &TrackVehicleInfoDiagRightBankedUp25ToUp253, // TrackElemType::DiagRightBankedUp25ToUp25 + &TrackVehicleInfoDiagDown25ToLeftBankedDown250, &TrackVehicleInfoDiagDown25ToLeftBankedDown251, &TrackVehicleInfoDiagDown25ToLeftBankedDown252, &TrackVehicleInfoDiagDown25ToLeftBankedDown253, // TrackElemType::DiagDown25ToLeftBankedDown25 + &TrackVehicleInfoDiagDown25ToRightBankedDown250, &TrackVehicleInfoDiagDown25ToRightBankedDown251, &TrackVehicleInfoDiagDown25ToRightBankedDown252, &TrackVehicleInfoDiagDown25ToRightBankedDown253, // TrackElemType::DiagDown25ToRightBankedDown25 + &TrackVehicleInfoDiagLeftBankedDown25ToDown250, &TrackVehicleInfoDiagLeftBankedDown25ToDown251, &TrackVehicleInfoDiagLeftBankedDown25ToDown252, &TrackVehicleInfoDiagLeftBankedDown25ToDown253, // TrackElemType::DiagLeftBankedDown25ToDown25 + &TrackVehicleInfoDiagRightBankedDown25ToDown250, &TrackVehicleInfoDiagRightBankedDown25ToDown251, &TrackVehicleInfoDiagRightBankedDown25ToDown252, &TrackVehicleInfoDiagRightBankedDown25ToDown253, // TrackElemType::DiagRightBankedDown25ToDown25 + &TrackVehicleInfoDiagLeftBankedFlatToLeftBankedUp250, &TrackVehicleInfoDiagLeftBankedFlatToLeftBankedUp251, &TrackVehicleInfoDiagLeftBankedFlatToLeftBankedUp252, &TrackVehicleInfoDiagLeftBankedFlatToLeftBankedUp253, // TrackElemType::DiagLeftBankedFlatToLeftBankedUp25 + &TrackVehicleInfoDiagRightBankedFlatToRightBankedUp250, &TrackVehicleInfoDiagRightBankedFlatToRightBankedUp251, &TrackVehicleInfoDiagRightBankedFlatToRightBankedUp252, &TrackVehicleInfoDiagRightBankedFlatToRightBankedUp253, // TrackElemType::DiagRightBankedFlatToRightBankedUp25 + &TrackVehicleInfoDiagLeftBankedUp25ToLeftBankedFlat0, &TrackVehicleInfoDiagLeftBankedUp25ToLeftBankedFlat1, &TrackVehicleInfoDiagLeftBankedUp25ToLeftBankedFlat2, &TrackVehicleInfoDiagLeftBankedUp25ToLeftBankedFlat3, // TrackElemType::DiagLeftBankedUp25ToLeftBankedFlat + &TrackVehicleInfoDiagRightBankedUp25ToRightBankedFlat0, &TrackVehicleInfoDiagRightBankedUp25ToRightBankedFlat1, &TrackVehicleInfoDiagRightBankedUp25ToRightBankedFlat2, &TrackVehicleInfoDiagRightBankedUp25ToRightBankedFlat3, // TrackElemType::DiagRightBankedUp25ToRightBankedFlat + &TrackVehicleInfoDiagLeftBankedFlatToLeftBankedDown250, &TrackVehicleInfoDiagLeftBankedFlatToLeftBankedDown251, &TrackVehicleInfoDiagLeftBankedFlatToLeftBankedDown252, &TrackVehicleInfoDiagLeftBankedFlatToLeftBankedDown253, // TrackElemType::DiagLeftBankedFlatToLeftBankedDown25 + &TrackVehicleInfoDiagRightBankedFlatToRightBankedDown250, &TrackVehicleInfoDiagRightBankedFlatToRightBankedDown251, &TrackVehicleInfoDiagRightBankedFlatToRightBankedDown252, &TrackVehicleInfoDiagRightBankedFlatToRightBankedDown253, // TrackElemType::DiagRightBankedFlatToRightBankedDown25 + &TrackVehicleInfoDiagLeftBankedDown25ToLeftBankedFlat0, &TrackVehicleInfoDiagLeftBankedDown25ToLeftBankedFlat1, &TrackVehicleInfoDiagLeftBankedDown25ToLeftBankedFlat2, &TrackVehicleInfoDiagLeftBankedDown25ToLeftBankedFlat3, // TrackElemType::DiagLeftBankedDown25ToLeftBankedFlat + &TrackVehicleInfoDiagRightBankedDown25ToRightBankedFlat0, &TrackVehicleInfoDiagRightBankedDown25ToRightBankedFlat1, &TrackVehicleInfoDiagRightBankedDown25ToRightBankedFlat2, &TrackVehicleInfoDiagRightBankedDown25ToRightBankedFlat3, // TrackElemType::DiagRightBankedDown25ToRightBankedFlat + &TrackVehicleInfoDiagFlatToLeftBankedUp250, &TrackVehicleInfoDiagFlatToLeftBankedUp251, &TrackVehicleInfoDiagFlatToLeftBankedUp252, &TrackVehicleInfoDiagFlatToLeftBankedUp253, // TrackElemType::DiagFlatToLeftBankedUp25 + &TrackVehicleInfoDiagFlatToRightBankedUp250, &TrackVehicleInfoDiagFlatToRightBankedUp251, &TrackVehicleInfoDiagFlatToRightBankedUp252, &TrackVehicleInfoDiagFlatToRightBankedUp253, // TrackElemType::DiagFlatToRightBankedUp25 + &TrackVehicleInfoDiagLeftBankedUp25ToFlat0, &TrackVehicleInfoDiagLeftBankedUp25ToFlat1, &TrackVehicleInfoDiagLeftBankedUp25ToFlat2, &TrackVehicleInfoDiagLeftBankedUp25ToFlat3, // TrackElemType::DiagLeftBankedUp25ToFlat + &TrackVehicleInfoDiagRightBankedUp25ToFlat0, &TrackVehicleInfoDiagRightBankedUp25ToFlat1, &TrackVehicleInfoDiagRightBankedUp25ToFlat2, &TrackVehicleInfoDiagRightBankedUp25ToFlat3, // TrackElemType::DiagRightBankedUp25ToFlat + &TrackVehicleInfoDiagFlatToLeftBankedDown250, &TrackVehicleInfoDiagFlatToLeftBankedDown251, &TrackVehicleInfoDiagFlatToLeftBankedDown252, &TrackVehicleInfoDiagFlatToLeftBankedDown253, // TrackElemType::DiagFlatToLeftBankedDown25 + &TrackVehicleInfoDiagFlatToRightBankedDown250, &TrackVehicleInfoDiagFlatToRightBankedDown251, &TrackVehicleInfoDiagFlatToRightBankedDown252, &TrackVehicleInfoDiagFlatToRightBankedDown253, // TrackElemType::DiagFlatToRightBankedDown25 + &TrackVehicleInfoDiagLeftBankedDown25ToFlat0, &TrackVehicleInfoDiagLeftBankedDown25ToFlat1, &TrackVehicleInfoDiagLeftBankedDown25ToFlat2, &TrackVehicleInfoDiagLeftBankedDown25ToFlat3, // TrackElemType::DiagLeftBankedDown25ToFlat + &TrackVehicleInfoDiagRightBankedDown25ToFlat0, &TrackVehicleInfoDiagRightBankedDown25ToFlat1, &TrackVehicleInfoDiagRightBankedDown25ToFlat2, &TrackVehicleInfoDiagRightBankedDown25ToFlat3, // TrackElemType::DiagRightBankedDown25ToFlat + &TrackVehicleInfoDiagUp25LeftBanked0, &TrackVehicleInfoDiagUp25LeftBanked1, &TrackVehicleInfoDiagUp25LeftBanked2, &TrackVehicleInfoDiagUp25LeftBanked3, // TrackElemType::DiagUp25LeftBanked + &TrackVehicleInfoDiagUp25RightBanked0, &TrackVehicleInfoDiagUp25RightBanked1, &TrackVehicleInfoDiagUp25RightBanked2, &TrackVehicleInfoDiagUp25RightBanked3, // TrackElemType::DiagUp25RightBanked + &TrackVehicleInfoDiagDown25LeftBanked0, &TrackVehicleInfoDiagDown25LeftBanked1, &TrackVehicleInfoDiagDown25LeftBanked2, &TrackVehicleInfoDiagDown25LeftBanked3, // TrackElemType::DiagDown25LeftBanked + &TrackVehicleInfoDiagDown25RightBanked0, &TrackVehicleInfoDiagDown25RightBanked1, &TrackVehicleInfoDiagDown25RightBanked2, &TrackVehicleInfoDiagDown25RightBanked3, // TrackElemType::DiagDown25RightBanked + + &TrackVehicleInfoLeftEighthBankToDiagUp250, &TrackVehicleInfoLeftEighthBankToDiagUp251, &TrackVehicleInfoLeftEighthBankToDiagUp252, &TrackVehicleInfoLeftEighthBankToDiagUp253, // TrackElemType::LeftEighthBankBankToDiagUp25 + &TrackVehicleInfoRightEighthBankToDiagUp250, &TrackVehicleInfoRightEighthBankToDiagUp251, &TrackVehicleInfoRightEighthBankToDiagUp252, &TrackVehicleInfoRightEighthBankToDiagUp253, // TrackElemType::RightEighthBankBankToDiagUp25 + &TrackVehicleInfoLeftEighthBankToDiagDown250, &TrackVehicleInfoLeftEighthBankToDiagDown251, &TrackVehicleInfoLeftEighthBankToDiagDown252, &TrackVehicleInfoLeftEighthBankToDiagDown253, // TrackElemType::LeftEighthBankBankToDiagDown25 + &TrackVehicleInfoRightEighthBankToDiagDown250, &TrackVehicleInfoRightEighthBankToDiagDown251, &TrackVehicleInfoRightEighthBankToDiagDown252, &TrackVehicleInfoRightEighthBankToDiagDown253, // TrackElemType::RightEighthBankBankToDiagDown25 + &TrackVehicleInfoLeftEighthBankToOrthogonalUp250, &TrackVehicleInfoLeftEighthBankToOrthogonalUp251, &TrackVehicleInfoLeftEighthBankToOrthogonalUp252, &TrackVehicleInfoLeftEighthBankToOrthogonalUp253, // TrackElemType::LeftEighthBankBankToOrthogonalUp25 + &TrackVehicleInfoRightEighthBankToOrthogonalUp250, &TrackVehicleInfoRightEighthBankToOrthogonalUp251, &TrackVehicleInfoRightEighthBankToOrthogonalUp252, &TrackVehicleInfoRightEighthBankToOrthogonalUp253, // TrackElemType::RightEighthBankBankToOrthogonalUp25 + &TrackVehicleInfoLeftEighthBankToOrthogonalDown250, &TrackVehicleInfoLeftEighthBankToOrthogonalDown251, &TrackVehicleInfoLeftEighthBankToOrthogonalDown252, &TrackVehicleInfoLeftEighthBankToOrthogonalDown253, // TrackElemType::LeftEighthBankBankToOrthogonalDown25 + &TrackVehicleInfoRightEighthBankToOrthogonalDown250, &TrackVehicleInfoRightEighthBankToOrthogonalDown251, &TrackVehicleInfoRightEighthBankToOrthogonalDown252, &TrackVehicleInfoRightEighthBankToOrthogonalDown253, // TrackElemType::RightEighthBankBankToOrthogonalDown25 }; static_assert(std::size(TrackVehicleInfoListDefault) == VehicleTrackSubpositionSizeDefault); diff --git a/src/openrct2/ride/coaster/HybridCoaster.cpp b/src/openrct2/ride/coaster/HybridCoaster.cpp index d24f0cfbed..b84f9fd2f6 100644 --- a/src/openrct2/ride/coaster/HybridCoaster.cpp +++ b/src/openrct2/ride/coaster/HybridCoaster.cpp @@ -11606,6 +11606,2395 @@ namespace HybridRC } } + static void TrackLeftEighthToDiagUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 0)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 4)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 8)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 12)), { 0, 0, height }, + { { 0, 6, height }, { 32, 20, 3 } }); + break; + } + WoodenASupportsPaintSetup(session, direction & 1, 9 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); + if (direction == 0 || direction == 3) + { + PaintUtilPushTunnelRotated(session, direction, height - 8, TUNNEL_1); + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 1)), + { 0, 0, height }, { { 0, 0, height }, { 32, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 5)), + { 0, 0, height }, { { 0, 0, height }, { 34, 16, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 9)), + { 0, 0, height }, { { 0, 16, height }, { 32, 16, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 13)), { 0, 0, height }, + { { 0, 16, height + 4 }, { 32, 20, 1 } }); + break; + } + WoodenASupportsPaintSetup(session, direction & 1, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 2: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 2)), + { 0, 0, height }, { { 0, 16, height }, { 16, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 6)), + { 0, 0, height }, { { 16, 16, height }, { 16, 20, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 10)), { 0, 0, height }, + { { 16, 0, height }, { 16, 16, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 14)), { 0, 0, height }, + { { 0, 0, height }, { 16, 16, 3 } }); + break; + } + WoodenASupportsPaintSetup(session, 2 + (direction + 1) % 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 3: + WoodenASupportsPaintSetup(session, 2 + (direction + 3) % 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 4: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 3)), + { 0, 0, height }, { { 16, 16, height }, { 16, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 7)), + { 0, 0, height }, { { 0, 16, height }, { 16, 18, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 11)), { 0, 0, height }, + { { 0, 0, height }, { 16, 16, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 15)), { 0, 0, height }, + { { 16, 0, height }, { 20, 16, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + } + } + + static void TrackRightEighthToDiagUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 16)), { 0, 0, height }, + { { 0, 6, height }, { 32, 20, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 20)), { 0, 0, height }, + { { 0, 6, height }, { 32, 20, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 24)), { 0, 0, height }, + { { 0, 6, height }, { 32, 20, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 28)), { 0, 0, height }, + { { 0, 6, height }, { 32, 20, 3 } }); + break; + } + WoodenASupportsPaintSetup(session, direction & 1, 9 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); + if (direction == 0 || direction == 3) + { + PaintUtilPushTunnelRotated(session, direction, height - 8, TUNNEL_1); + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 17)), { 0, 0, height }, + { { 0, 16, height + 4 }, { 32, 20, 1 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 21)), { 0, 0, height }, + { { 0, 16, height }, { 32, 20, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 25)), { 0, 0, height }, + { { 0, 0, height }, { 34, 16, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 29)), { 0, 0, height }, + { { 0, 0, height }, { 32, 16, 3 } }); + break; + } + WoodenASupportsPaintSetup(session, direction & 1, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 2: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 18)), { 0, 0, height }, + { { 0, 0, height }, { 16, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 22)), { 0, 0, height }, + { { 16, 0, height }, { 16, 16, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 26)), { 0, 0, height }, + { { 4, 4, height }, { 32, 32, 1 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 30)), { 0, 0, height }, + { { 0, 16, height }, { 16, 16, 3 } }); + break; + } + WoodenASupportsPaintSetup(session, direction + 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 3: + WoodenASupportsPaintSetup(session, 2 + (direction + 2) % 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 4: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 19)), { 0, 0, height }, + { { 16, 0, height }, { 20, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 23)), { 0, 0, height }, + { { 0, 0, height }, { 16, 16, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 27)), { 0, 0, height }, + { { 0, 16, height }, { 16, 18, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 31)), { 0, 0, height }, + { { 16, 16, height }, { 16, 16, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + } + } + + static void TrackLeftEighthToOrthogonalUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 32)), { 0, 0, height }, + { { 0, 16, height + 10 }, { 20, 20, 1 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 36)), { 0, 0, height }, + { { 16, 16, height }, { 16, 18, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 40)), { 0, 0, height }, + { { 16, 0, height + 10 }, { 20, 20, 1 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 44)), { 0, 0, height }, + { { 0, 0, height }, { 16, 16, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 33)), { 0, 0, height }, + { { 16, 16, height }, { 16, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 37)), { 0, 0, height }, + { { 0, 16, height }, { 16, 16, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 41)), { 0, 0, height }, + { { 0, 0, height }, { 16, 16, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 45)), { 0, 0, height }, + { { 16, 0, height }, { 16, 16, 3 } }); + break; + } + WoodenASupportsPaintSetup( + session, 2 + (direction + 2) % 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 2: + WoodenASupportsPaintSetup(session, 2 + direction, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 3: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 34)), { 0, 0, height }, + { { 0, 0, height }, { 34, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 38)), { 0, 0, height }, + { { 0, 0, height }, { 34, 16, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 42)), { 0, 0, height }, + { { 0, 16, height }, { 32, 18, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 46)), { 0, 0, height }, + { { 0, 16, height }, { 34, 18, 3 } }); + break; + } + WoodenASupportsPaintSetup(session, direction & 1, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 4: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 35)), { 0, 0, height }, + { { 0, 6, height }, { 34, 20, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 39)), { 0, 0, height }, + { { 0, 6, height }, { 32, 20, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 43)), { 0, 0, height }, + { { -8, 6, height }, { 40, 20, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 47)), { 0, 0, height }, + { { 0, 6, height }, { 32, 20, 3 } }); + break; + } + WoodenASupportsPaintSetup(session, direction & 1, 9 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); + + if (direction == 1 || direction == 2) + { + PaintUtilPushTunnelRotated(session, direction, height + 8, TUNNEL_2); + } + + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + } + } + + static void TrackRightEighthToOrthogonalUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 48)), { 0, 0, height }, + { { 0, 16, height + 10 }, { 20, 20, 1 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 52)), { 0, 0, height }, + { { 16, 16, height }, { 16, 16, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 56)), { 0, 0, height }, + { { 16, 0, height + 10 }, { 20, 20, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 60)), { 0, 0, height }, + { { 0, 0, height }, { 16, 16, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 49)), { 0, 0, height }, + { { 0, 0, height }, { 16, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 53)), { 0, 0, height }, + { { 16, 0, height }, { 16, 16, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 57)), { 0, 0, height }, + { { 16, 16, height }, { 16, 16, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 61)), { 0, 0, height }, + { { 0, 16, height }, { 16, 16, 3 } }); + break; + } + WoodenASupportsPaintSetup(session, 2 + direction, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 2: + WoodenASupportsPaintSetup( + session, 2 + (direction + 2) % 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 3: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 50)), { 0, 0, height }, + { { 16, 0, height }, { 18, 32, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 54)), { 0, 0, height }, + { { 0, 0, height }, { 16, 32, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 58)), { 0, 0, height }, + { { 0, 0, height }, { 16, 34, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 62)), { 0, 0, height }, + { { 16, 0, height }, { 18, 34, 3 } }); + break; + } + WoodenASupportsPaintSetup(session, (direction - 1) & 1, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 4: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 51)), { 0, 0, height }, + { { 6, 0, height }, { 20, 32, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 55)), { 0, 0, height }, + { { 6, -8, height }, { 20, 40, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 59)), { 0, 0, height }, + { { 6, 0, height }, { 20, 34, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 63)), { 0, 0, height }, + { { 6, 0, height }, { 20, 32, 3 } }); + break; + } + WoodenASupportsPaintSetup( + session, (direction + 1) & 1, 9 + (direction + 1) % 4, height, session.TrackColours[SCHEME_SUPPORTS]); + if (direction == 0 || direction == 1) + { + PaintUtilPushTunnelRotated(session, direction + 1, height + 8, TUNNEL_2); + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + } + } + + static void TrackLeftEighthToDiagDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + uint8_t map[5] = { 4, 3, 1, 2, 0 }; + trackSequence = map[trackSequence]; + TrackRightEighthToOrthogonalUp25(session, ride, trackSequence, (direction + 1) & 3, height, trackElement); + } + + static void TrackRightEighthToDiagDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + uint8_t map[5] = { 4, 3, 1, 2, 0 }; + trackSequence = map[trackSequence]; + TrackLeftEighthToOrthogonalUp25(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackLeftEighthToOrthogonalDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; + TrackRightEighthToDiagUp25(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackRightEighthToOrthogonalDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; + TrackLeftEighthToDiagUp25(session, ride, trackSequence, (direction + 3) & 3, height, trackElement); + } + + static void TrackDiagUp25ToLeftBankedUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 4)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 0)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 1)), + { -16, -16, height }, { { -16, -16, height + 48 }, { 32, 32, 0 } }); + break; + } + WoodenBSupportsPaintSetup(session, 2 + direction, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 3)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + WoodenBSupportsPaintSetup( + session, 2 + (direction + 2) % 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 3: + switch (direction) + { + case 0: + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 2)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + case 2: + break; + case 3: + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + } + } + + static void TrackDiagUp25ToRightBankedUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 9)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 5)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + WoodenBSupportsPaintSetup(session, 2 + direction, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 7)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 8)), + { -16, -16, height }, { { -16, -16, height + 48 }, { 32, 32, 0 } }); + break; + } + WoodenBSupportsPaintSetup( + session, 2 + (direction + 2) % 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 3: + switch (direction) + { + case 0: + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 6)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + case 2: + break; + case 3: + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + } + } + + static void TrackDiagLeftBankedUp25ToUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 14)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 10)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 11)), + { -16, -16, height }, { { -16, -16, height + 48 }, { 32, 32, 0 } }); + break; + } + WoodenBSupportsPaintSetup(session, 2 + direction, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 13)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + WoodenBSupportsPaintSetup( + session, 2 + (direction + 2) % 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 3: + switch (direction) + { + case 0: + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 12)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + case 2: + break; + case 3: + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + } + } + + static void TrackDiagRightBankedUp25ToUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 19)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 15)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + WoodenBSupportsPaintSetup(session, 2 + direction, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 17)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 18)), + { -16, -16, height }, { { -16, -16, height + 48 }, { 32, 32, 0 } }); + break; + } + WoodenBSupportsPaintSetup( + session, 2 + (direction + 2) % 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 3: + switch (direction) + { + case 0: + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 16)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + case 2: + break; + case 3: + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + } + } + + static void TrackDiagDown25ToLeftBankedDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagRightBankedUp25ToUp25(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagDown25ToRightBankedDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagLeftBankedUp25ToUp25(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagLeftBankedDown25ToDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagUp25ToRightBankedUp25(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagRightBankedDown25ToDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagUp25ToLeftBankedUp25(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagLeftBankedFlatToLeftBankedUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 24)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 20)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 21)), + { -16, -16, height }, { { -16, -16, height + 48 }, { 32, 32, 0 } }); + break; + } + WoodenBSupportsPaintSetup(session, 2 + direction, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 23)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + WoodenBSupportsPaintSetup(session, 2 + (direction + 2) % 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 3: + switch (direction) + { + case 0: + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 22)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + case 2: + break; + case 3: + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + } + } + + static void TrackDiagRightBankedFlatToRightBankedUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 29)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 25)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + WoodenBSupportsPaintSetup(session, 2 + direction, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 27)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 28)), + { -16, -16, height }, { { -16, -16, height + 48 }, { 32, 32, 0 } }); + break; + } + WoodenBSupportsPaintSetup(session, 2 + (direction + 2) % 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 3: + switch (direction) + { + case 0: + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 26)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + case 2: + break; + case 3: + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + } + } + + static void TrackDiagLeftBankedUp25ToLeftBankedFlat( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 34)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 30)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 31)), + { -16, -16, height }, { { -16, -16, height + 48 }, { 32, 32, 0 } }); + break; + } + WoodenBSupportsPaintSetup(session, 2 + direction, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 33)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + WoodenBSupportsPaintSetup( + session, 2 + (direction + 2) % 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 3: + switch (direction) + { + case 0: + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 32)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + case 2: + break; + case 3: + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + } + } + + static void TrackDiagRightBankedUp25ToRightBankedFlat( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 39)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 35)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + WoodenBSupportsPaintSetup(session, 2 + direction, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 37)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 38)), + { -16, -16, height }, { { -16, -16, height + 48 }, { 32, 32, 0 } }); + break; + } + WoodenBSupportsPaintSetup( + session, 2 + (direction + 2) % 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 3: + switch (direction) + { + case 0: + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 36)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + case 2: + break; + case 3: + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + } + } + + static void TrackDiagLeftBankedFlatToLeftBankedDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagRightBankedUp25ToRightBankedFlat(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagRightBankedFlatToRightBankedDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagLeftBankedUp25ToLeftBankedFlat(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagLeftBankedDown25ToLeftBankedFlat( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagRightBankedFlatToRightBankedUp25(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagRightBankedDown25ToRightBankedFlat( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagLeftBankedFlatToLeftBankedUp25(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagUp25LeftBanked( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 44)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 40)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 41)), + { -16, -16, height }, { { -16, -16, height + 48 }, { 32, 32, 0 } }); + break; + } + WoodenBSupportsPaintSetup(session, 2 + direction, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 43)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + WoodenBSupportsPaintSetup( + session, 2 + (direction + 2) % 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 3: + switch (direction) + { + case 0: + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 42)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + case 2: + break; + case 3: + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + } + } + + static void TrackDiagUp25RightBanked( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 49)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 45)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + WoodenBSupportsPaintSetup(session, 2 + direction, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 47)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 48)), + { -16, -16, height }, { { -16, -16, height + 48 }, { 32, 32, 0 } }); + break; + } + WoodenBSupportsPaintSetup( + session, 2 + (direction + 2) % 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 3: + switch (direction) + { + case 0: + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 46)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + case 2: + break; + case 3: + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + } + } + + static void TrackDiagDown25LeftBanked( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagUp25RightBanked(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagDown25RightBanked( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagUp25LeftBanked(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagFlatToLeftBankedUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 54)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 50)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 51)), + { -16, -16, height }, { { -16, -16, height + 27 }, { 32, 32, 0 } }); + break; + } + WoodenBSupportsPaintSetup(session, 2 + direction, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 53)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + WoodenBSupportsPaintSetup(session, 2 + (direction + 2) % 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 3: + switch (direction) + { + case 0: + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 52)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + case 2: + break; + case 3: + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + } + } + + static void TrackDiagFlatToRightBankedUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 59)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 55)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + WoodenBSupportsPaintSetup(session, 2 + direction, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 57)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 58)), + { -16, -16, height }, { { -16, -16, height + 27 }, { 32, 32, 0 } }); + break; + } + WoodenBSupportsPaintSetup(session, 2 + (direction + 2) % 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 3: + switch (direction) + { + case 0: + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 56)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + case 2: + break; + case 3: + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + } + } + + static void TrackDiagLeftBankedUp25ToFlat( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 64)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 60)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 61)), + { -16, -16, height }, { { -16, -16, height + 27 }, { 32, 32, 0 } }); + break; + } + WoodenBSupportsPaintSetup(session, 2 + direction, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 63)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + WoodenBSupportsPaintSetup( + session, 2 + (direction + 2) % 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 3: + switch (direction) + { + case 0: + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 62)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + case 2: + break; + case 3: + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + } + } + + static void TrackDiagRightBankedUp25ToFlat( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 69)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 65)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + WoodenBSupportsPaintSetup(session, 2 + direction, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 67)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 68)), + { -16, -16, height }, { { -16, -16, height + 27 }, { 32, 32, 0 } }); + break; + } + WoodenBSupportsPaintSetup( + session, 2 + (direction + 2) % 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 3: + switch (direction) + { + case 0: + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 66)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + case 2: + break; + case 3: + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + } + } + + static void TrackDiagFlatToLeftBankedDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagRightBankedUp25ToFlat(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagFlatToRightBankedDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagLeftBankedUp25ToFlat(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagLeftBankedDown25ToFlat( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagFlatToRightBankedUp25(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagRightBankedDown25ToFlat( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagFlatToLeftBankedUp25(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackLeftEighthBankToDiagUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 70)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 74)), + { 0, 0, height }, { { 0, 31, height }, { 32, 1, 32 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 78)), + { 0, 0, height }, { { 0, 0, height + 16 }, { 32, 1, 32 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 82)), + { 0, 0, height }, { { 0, 0, height + 16 }, { 32, 1, 32 } }); + break; + } + WoodenASupportsPaintSetup(session, direction & 1, 9 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); + if (direction == 0 || direction == 3) + { + PaintUtilPushTunnelRotated(session, direction, height - 8, TUNNEL_1); + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 71)), + { 0, 0, height }, { { 0, 0, height }, { 32, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 75)), + { 0, 0, height }, { { 0, 31, height }, { 32, 1, 32 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 79)), + { 0, 0, height }, { { 0, 16, height }, { 32, 16, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 83)), + { 0, 0, height }, { { 0, 0, height }, { 32, 36, 24 } }); + break; + } + WoodenASupportsPaintSetup(session, direction & 1, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 2: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 72)), + { 0, 0, height }, { { 0, 16, height }, { 16, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 76)), + { 0, 0, height }, { { 0, 0, height + 48 }, { 32, 40, 1 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 80)), + { 0, 0, height }, { { 16, 0, height }, { 16, 16, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 84)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + break; + } + WoodenASupportsPaintSetup(session, 2 + (direction + 1) % 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 3: + WoodenASupportsPaintSetup(session, 2 + (direction + 3) % 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 4: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 73)), + { 0, 0, height }, { { 16, 16, height }, { 16, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 77)), + { 0, 0, height }, { { 0, 0, height + 48 }, { 32, 32, 1 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 81)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 85)), + { 0, 0, height }, { { 16, 0, height }, { 20, 16, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + } + } + + static void TrackRightEighthBankToDiagUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 86)), + { 0, 0, height }, { { 0, 0, height + 16 }, { 32, 1, 32 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 90)), + { 0, 0, height }, { { 0, 0, height + 16 }, { 32, 1, 32 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 94)), + { 0, 0, height }, { { 0, 31, height }, { 32, 1, 32 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 98)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + } + WoodenASupportsPaintSetup(session, direction & 1, 9 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); + if (direction == 0 || direction == 3) + { + PaintUtilPushTunnelRotated(session, direction, height - 8, TUNNEL_1); + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 87)), + { 0, 0, height }, { { 0, 0, height }, { 32, 36, 24 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 91)), + { 0, 0, height }, { { 0, 16, height }, { 32, 16, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 95)), + { 0, 0, height }, { { 0, 31, height }, { 32, 1, 32 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 99)), + { 0, 0, height }, { { 0, 0, height }, { 32, 16, 3 } }); + break; + } + WoodenASupportsPaintSetup(session, direction & 1, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 2: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 88)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 92)), + { 0, 0, height }, { { 16, 0, height }, { 16, 16, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 96)), + { 0, 0, height }, { { 0, 0, height + 48 }, { 32, 40, 1 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 100)), + { 0, 0, height }, { { 0, 16, height }, { 16, 16, 3 } }); + break; + } + WoodenASupportsPaintSetup(session, direction + 2, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 3: + WoodenASupportsPaintSetup(session, 2 + (direction + 2) % 4, 0, height, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 4: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 89)), + { 0, 0, height }, { { 16, 0, height }, { 20, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 93)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 97)), + { 0, 0, height }, { { 0, 0, height + 48 }, { 32, 32, 1 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 101)), + { 0, 0, height }, { { 16, 16, height }, { 16, 16, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + } + } + + static void TrackLeftEighthBankToOrthogonalUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 102)), + { 0, 0, height }, { { 0, 16, height + 10 }, { 20, 20, 1 } }); + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 103)), + { 0, 0, height }, { { 2, 0, height + 48 }, { 32, 34, 1 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 110)), + { 0, 0, height }, { { 0, 0, height + 48 }, { 32, 40, 1 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 114)), + { 0, 0, height }, { { 16, 0, height + 10 }, { 20, 20, 1 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 118)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 104)), + { 0, 0, height }, { { 16, 16, height }, { 16, 16, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 105)), + { 0, 0, height }, { { 0, 0, height + 48 }, { 32, 32, 1 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 111)), + { 0, 0, height }, { { 0, 0, height + 48 }, { 32, 32, 1 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 115)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 119)), + { 0, 0, height }, { { 16, 0, height }, { 16, 16, 3 } }); + break; + } + WoodenASupportsPaintSetup( + session, 2 + (direction + 2) % 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 2: + WoodenASupportsPaintSetup(session, 2 + direction, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 3: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 106)), + { 0, 0, height }, { { 0, 0, height }, { 32, 16, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 107)), + { 0, 0, height }, { { 0, 31, height }, { 34, 1, 32 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 112)), + { 0, 0, height }, { { 0, 31, height + 8 }, { 32, 1, 48 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 116)), + { 0, 0, height }, { { 0, 0, height }, { 32, 34, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 120)), + { 0, 0, height }, { { 0, 0, height }, { 34, 34, 16 } }); + break; + } + WoodenASupportsPaintSetup(session, direction & 1, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 4: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 108)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 109)), + { 0, 0, height }, { { 8, 31, height }, { 40, 1, 32 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 113)), + { 0, 0, height }, { { 0, 31, height }, { 32, 1, 32 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 117)), + { 0, 0, height }, { { -2, 0, height + 8 }, { 32, 1, 32 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 121)), + { 0, 0, height }, { { 0, 0, height }, { 32, 1, 32 } }); + break; + } + WoodenASupportsPaintSetup(session, direction & 1, 9 + direction, height, session.TrackColours[SCHEME_SUPPORTS]); + if (direction == 1 || direction == 2) + { + PaintUtilPushTunnelRotated(session, direction, height + 8, TUNNEL_2); + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + } + } + + static void TrackRightEighthBankToOrthogonalUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 122)), + { 0, 0, height }, { { 0, 16, height + 10 }, { 20, 20, 1 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 126)), + { 0, 0, height }, { { 0, 0, height + 48 }, { 40, 32, 1 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 130)), + { 0, 0, height }, { { 16, 0, height + 10 }, { 20, 20, 1 } }); + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 131)), + { 0, 0, height }, { { 0, 0, height + 48 }, { 34, 32, 1 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 138)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 123)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 127)), + { 0, 0, height }, { { 0, 0, height + 32 }, { 32, 32, 1 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 132)), + { 0, 0, height }, { { 16, 16, height }, { 16, 16, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 133)), + { 0, 0, height }, { { 0, 0, height + 32 }, { 32, 32, 1 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 139)), + { 0, 0, height }, { { 0, 16, height }, { 16, 16, 3 } }); + break; + } + WoodenASupportsPaintSetup(session, 2 + direction, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 2: + WoodenASupportsPaintSetup( + session, 2 + (direction + 2) % 4, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 3: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 124)), + { 0, 0, height }, { { 16, 0, height }, { 18, 32, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 128)), + { 0, 0, height }, { { 31, 0, height }, { 1, 32, 48 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 134)), + { 0, 0, height }, { { 0, 0, height }, { 16, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 135)), + { 0, 0, height }, { { 31, 0, height }, { 1, 34, 32 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 140)), + { 0, 0, height }, { { 16, 0, height }, { 18, 34, 3 } }); + break; + } + WoodenASupportsPaintSetup(session, (direction - 1) & 1, 0, height + 16, session.TrackColours[SCHEME_SUPPORTS]); + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 4: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 125)), + { 0, 0, height }, { { 0, -2, height }, { 1, 32, 32 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 129)), + { 0, 0, height }, { { 31, 0, height }, { 1, 32, 32 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 136)), + { 0, 0, height }, { { 6, 0, height }, { 20, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 137)), + { 0, 0, height }, { { 31, 0, height }, { 1, 34, 32 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + GetTrackColour(session).WithIndex((SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 141)), + { 0, 0, height }, { { 6, 0, height }, { 20, 32, 3 } }); + break; + } + WoodenASupportsPaintSetup( + session, (direction + 1) & 1, 9 + (direction + 1) % 4, height, session.TrackColours[SCHEME_SUPPORTS]); + if (direction == 0 || direction == 1) + { + PaintUtilPushTunnelRotated(session, direction + 1, height + 8, TUNNEL_2); + } + PaintUtilSetSegmentSupportHeight(session, PaintUtilRotateSegments(SEGMENTS_ALL, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + } + } + + static void TrackLeftEighthBankToDiagDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + uint8_t map[5] = { 4, 3, 1, 2, 0 }; + trackSequence = map[trackSequence]; + TrackRightEighthBankToOrthogonalUp25(session, ride, trackSequence, (direction + 1) & 3, height, trackElement); + } + + static void TrackRightEighthBankToDiagDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + uint8_t map[5] = { 4, 3, 1, 2, 0 }; + trackSequence = map[trackSequence]; + TrackLeftEighthBankToOrthogonalUp25(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackLeftEighthBankToOrthogonalDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; + TrackRightEighthBankToDiagUp25(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackRightEighthBankToOrthogonalDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; + TrackLeftEighthBankToDiagUp25(session, ride, trackSequence, (direction + 3) & 3, height, trackElement); + } + TRACK_PAINT_FUNCTION GetTrackPaintFunction(int32_t trackType) { switch (trackType) @@ -11940,6 +14329,96 @@ namespace HybridRC return Track90DegToInvertedFlatQuarterLoopUp; case TrackElemType::InvertedFlatToDown90QuarterLoop: return TrackInvertedFlatTo90DegQuarterLoopDown; + + case TrackElemType::LeftEighthToDiagUp25: + return TrackLeftEighthToDiagUp25; + case TrackElemType::RightEighthToDiagUp25: + return TrackRightEighthToDiagUp25; + case TrackElemType::LeftEighthToDiagDown25: + return TrackLeftEighthToDiagDown25; + case TrackElemType::RightEighthToDiagDown25: + return TrackRightEighthToDiagDown25; + case TrackElemType::LeftEighthToOrthogonalUp25: + return TrackLeftEighthToOrthogonalUp25; + case TrackElemType::RightEighthToOrthogonalUp25: + return TrackRightEighthToOrthogonalUp25; + case TrackElemType::LeftEighthToOrthogonalDown25: + return TrackLeftEighthToOrthogonalDown25; + case TrackElemType::RightEighthToOrthogonalDown25: + return TrackRightEighthToOrthogonalDown25; + case TrackElemType::DiagUp25ToLeftBankedUp25: + return TrackDiagUp25ToLeftBankedUp25; + case TrackElemType::DiagUp25ToRightBankedUp25: + return TrackDiagUp25ToRightBankedUp25; + case TrackElemType::DiagLeftBankedUp25ToUp25: + return TrackDiagLeftBankedUp25ToUp25; + case TrackElemType::DiagRightBankedUp25ToUp25: + return TrackDiagRightBankedUp25ToUp25; + case TrackElemType::DiagDown25ToLeftBankedDown25: + return TrackDiagDown25ToLeftBankedDown25; + case TrackElemType::DiagDown25ToRightBankedDown25: + return TrackDiagDown25ToRightBankedDown25; + case TrackElemType::DiagLeftBankedDown25ToDown25: + return TrackDiagLeftBankedDown25ToDown25; + case TrackElemType::DiagRightBankedDown25ToDown25: + return TrackDiagRightBankedDown25ToDown25; + case TrackElemType::DiagLeftBankedFlatToLeftBankedUp25: + return TrackDiagLeftBankedFlatToLeftBankedUp25; + case TrackElemType::DiagRightBankedFlatToRightBankedUp25: + return TrackDiagRightBankedFlatToRightBankedUp25; + case TrackElemType::DiagLeftBankedUp25ToLeftBankedFlat: + return TrackDiagLeftBankedUp25ToLeftBankedFlat; + case TrackElemType::DiagRightBankedUp25ToRightBankedFlat: + return TrackDiagRightBankedUp25ToRightBankedFlat; + case TrackElemType::DiagLeftBankedFlatToLeftBankedDown25: + return TrackDiagLeftBankedFlatToLeftBankedDown25; + case TrackElemType::DiagRightBankedFlatToRightBankedDown25: + return TrackDiagRightBankedFlatToRightBankedDown25; + case TrackElemType::DiagLeftBankedDown25ToLeftBankedFlat: + return TrackDiagLeftBankedDown25ToLeftBankedFlat; + case TrackElemType::DiagRightBankedDown25ToRightBankedFlat: + return TrackDiagRightBankedDown25ToRightBankedFlat; + case TrackElemType::DiagUp25LeftBanked: + return TrackDiagUp25LeftBanked; + case TrackElemType::DiagUp25RightBanked: + return TrackDiagUp25RightBanked; + case TrackElemType::DiagDown25LeftBanked: + return TrackDiagDown25LeftBanked; + case TrackElemType::DiagDown25RightBanked: + return TrackDiagDown25RightBanked; + case TrackElemType::DiagFlatToLeftBankedUp25: + return TrackDiagFlatToLeftBankedUp25; + case TrackElemType::DiagFlatToRightBankedUp25: + return TrackDiagFlatToRightBankedUp25; + case TrackElemType::DiagLeftBankedUp25ToFlat: + return TrackDiagLeftBankedUp25ToFlat; + case TrackElemType::DiagRightBankedUp25ToFlat: + return TrackDiagRightBankedUp25ToFlat; + case TrackElemType::DiagFlatToLeftBankedDown25: + return TrackDiagFlatToLeftBankedDown25; + case TrackElemType::DiagFlatToRightBankedDown25: + return TrackDiagFlatToRightBankedDown25; + case TrackElemType::DiagLeftBankedDown25ToFlat: + return TrackDiagLeftBankedDown25ToFlat; + case TrackElemType::DiagRightBankedDown25ToFlat: + return TrackDiagRightBankedDown25ToFlat; + case TrackElemType::LeftEighthBankToDiagUp25: + return TrackLeftEighthBankToDiagUp25; + case TrackElemType::RightEighthBankToDiagUp25: + return TrackRightEighthBankToDiagUp25; + case TrackElemType::LeftEighthBankToDiagDown25: + return TrackLeftEighthBankToDiagDown25; + case TrackElemType::RightEighthBankToDiagDown25: + return TrackRightEighthBankToDiagDown25; + case TrackElemType::LeftEighthBankToOrthogonalUp25: + return TrackLeftEighthBankToOrthogonalUp25; + case TrackElemType::RightEighthBankToOrthogonalUp25: + return TrackRightEighthBankToOrthogonalUp25; + case TrackElemType::LeftEighthBankToOrthogonalDown25: + return TrackLeftEighthBankToOrthogonalDown25; + case TrackElemType::RightEighthBankToOrthogonalDown25: + return TrackRightEighthBankToOrthogonalDown25; + case TrackElemType::PoweredLift: return TrackpoweredLift; case TrackElemType::Booster: diff --git a/src/openrct2/ride/coaster/SingleRailRollerCoaster.cpp b/src/openrct2/ride/coaster/SingleRailRollerCoaster.cpp index 851762514a..16a8cf4234 100644 --- a/src/openrct2/ride/coaster/SingleRailRollerCoaster.cpp +++ b/src/openrct2/ride/coaster/SingleRailRollerCoaster.cpp @@ -11668,22 +11668,6 @@ namespace SingleRailRC TrackLeftLargeCorkscrewUp(session, ride, 5 - trackSequence, (direction - 1) & 3, height, trackElement); } - // SEGMENT_B4 | SEGMENT_B8 | SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4; - // b4 - // c8 cc - // b8 c4 bc - // d0 d4 - // c0 - - // 0 - // 5 6 - // 1 4 2 - // 7 8 - // 3 - - // 3102 - // 8756 - static void TrackLeftMediumHalfLoopUp( PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, const TrackElement& trackElement) @@ -14712,6 +14696,2752 @@ namespace SingleRailRC } } + // SEGMENT_B4 | SEGMENT_B8 | SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4; + // b4 + // c8 cc + // b8 c4 bc + // d0 d4 + // c0 + + // 0 + // 5 6 + // 1 4 2 + // 7 8 + // 3 + + // 3102 + // 8756 + + static void TrackLeftEighthToDiagUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 0)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 4)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 8)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 12)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + } + MetalASupportsPaintSetup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + if (direction == 0 || direction == 3) + { + PaintUtilPushTunnelRotated(session, direction, height - 8, TUNNEL_1); + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 1)), + { 0, 0, height }, { { 0, 0, height }, { 32, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 5)), + { 0, 0, height }, { { 0, 0, height }, { 34, 16, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 9)), + { 0, 0, height }, { { 0, 16, height }, { 32, 16, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 13)), + { 0, 0, height }, { { 0, 16, height }, { 32, 16, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, + PaintUtilRotateSegments( + SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 2: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 2)), + { 0, 0, height }, { { 0, 16, height }, { 16, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 6)), + { 0, 0, height }, { { 16, 16, height }, { 16, 16, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 10)), + { 0, 0, height }, { { 16, 0, height }, { 16, 16, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 14)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D4, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 3: + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 4: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 3)), + { 0, 0, height }, { { 16, 16, height }, { 16, 16, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 7)), + { 0, 0, height }, { { 0, 16, height }, { 16, 18, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 11)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 15)), + { 0, 0, height }, { { 16, 0, height }, { 16, 16, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + } + PaintUtilSetSegmentSupportHeight( + session, + PaintUtilRotateSegments( + SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + } + } + + static void TrackRightEighthToDiagUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 16)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 20)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 24)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 28)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + } + MetalASupportsPaintSetup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + if (direction == 0 || direction == 3) + { + PaintUtilPushTunnelRotated(session, direction, height - 8, TUNNEL_1); + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 17)), + { 0, 0, height }, { { 0, 16, height }, { 32, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 21)), + { 0, 0, height }, { { 0, 16, height }, { 32, 16, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 25)), + { 0, 0, height }, { { 0, 0, height }, { 34, 16, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 29)), + { 0, 0, height }, { { 0, 0, height }, { 32, 16, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, + PaintUtilRotateSegments( + SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 2: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 18)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 22)), + { 0, 0, height }, { { 16, 0, height }, { 16, 16, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 26)), + { 0, 0, height }, { { 4, 4, height }, { 28, 28, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 30)), + { 0, 0, height }, { { 0, 16, height }, { 16, 16, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 3: + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 4: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 19)), + { 0, 0, height }, { { 16, 0, height }, { 16, 16, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 23)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 27)), + { 0, 0, height }, { { 0, 16, height }, { 16, 18, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 31)), + { 0, 0, height }, { { 16, 16, height }, { 16, 16, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + } + PaintUtilSetSegmentSupportHeight( + session, + PaintUtilRotateSegments( + SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + } + } + + static void TrackLeftEighthToOrthogonalUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 32)), + { 0, 0, height }, { { 0, 16, height }, { 16, 16, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 36)), + { 0, 0, height }, { { 16, 16, height }, { 16, 18, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 40)), + { 0, 0, height }, { { 16, 0, height }, { 16, 16, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 44)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + } + PaintUtilSetSegmentSupportHeight( + session, + PaintUtilRotateSegments( + SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 33)), + { 0, 0, height }, { { 16, 16, height }, { 16, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 37)), + { 0, 0, height }, { { 0, 16, height }, { 16, 16, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 41)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 45)), + { 0, 0, height }, { { 16, 0, height }, { 16, 16, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_D0 | SEGMENT_D4, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 2: + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 3: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 34)), + { 0, 0, height }, { { 0, 0, height }, { 32, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 38)), + { 0, 0, height }, { { 0, 0, height }, { 34, 16, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 42)), + { 0, 0, height }, { { 0, 16, height }, { 32, 16, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 46)), + { 0, 0, height }, { { 0, 16, height }, { 32, 16, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, + PaintUtilRotateSegments( + SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 4: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 35)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 39)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 43)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 47)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + } + MetalASupportsPaintSetup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + + if (direction == 1 || direction == 2) + { + PaintUtilPushTunnelRotated(session, direction, height + 8, TUNNEL_2); + } + + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + } + } + + static void TrackRightEighthToOrthogonalUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 48)), + { 0, 0, height }, { { 0, 16, height }, { 16, 16, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 52)), + { 0, 0, height }, { { 16, 16, height }, { 16, 16, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 56)), + { 0, 0, height }, { { 16, 0, height }, { 16, 18, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 60)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + } + PaintUtilSetSegmentSupportHeight( + session, + PaintUtilRotateSegments( + SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 49)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 53)), + { 0, 0, height }, { { 16, 0, height }, { 16, 16, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 57)), + { 0, 0, height }, { { 16, 16, height }, { 16, 16, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 61)), + { 0, 0, height }, { { 0, 16, height }, { 16, 16, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B4 | SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 2: + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 3: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 50)), + { 0, 0, height }, { { 16, 0, height }, { 16, 32, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 54)), + { 0, 0, height }, { { 0, 0, height }, { 16, 32, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 58)), + { 0, 0, height }, { { 0, 0, height }, { 16, 32, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 62)), + { 0, 0, height }, { { 16, 0, height }, { 16, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, + PaintUtilRotateSegments( + SEGMENT_B8 | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0 | SEGMENT_D4, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 4: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 51)), + { 0, 0, height }, { { 6, 0, height }, { 20, 32, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 55)), + { 0, 0, height }, { { 6, 0, height }, { 20, 32, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 59)), + { 0, 0, height }, { { 6, 0, height }, { 20, 32, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex((SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 63)), + { 0, 0, height }, { { 6, 0, height }, { 20, 32, 3 } }); + break; + } + MetalASupportsPaintSetup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + if (direction == 0 || direction == 1) + { + PaintUtilPushTunnelRotated(session, direction + 1, height + 8, TUNNEL_2); + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + } + } + + static void TrackLeftEighthToDiagDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + uint8_t map[5] = { 4, 3, 1, 2, 0 }; + trackSequence = map[trackSequence]; + TrackRightEighthToOrthogonalUp25(session, ride, trackSequence, (direction + 1) & 3, height, trackElement); + } + + static void TrackRightEighthToDiagDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + uint8_t map[5] = { 4, 3, 1, 2, 0 }; + trackSequence = map[trackSequence]; + TrackLeftEighthToOrthogonalUp25(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackLeftEighthToOrthogonalDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; + TrackRightEighthToDiagUp25(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackRightEighthToOrthogonalDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; + TrackLeftEighthToDiagUp25(session, ride, trackSequence, (direction + 3) & 3, height, trackElement); + } + + static void TrackDiagUp25ToLeftBankedUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 4)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 0)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 1)), + { -16, -16, height }, { { -16, -16, height + 48 }, { 32, 32, 0 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 3)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 3: + switch (direction) + { + case 0: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 1, 9, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 2)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 2: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 2, 9, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 3: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 3, 9, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + } + } + + static void TrackDiagUp25ToRightBankedUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 9)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 5)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 7)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 8)), + { -16, -16, height }, { { -16, -16, height + 48 }, { 32, 32, 0 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 3: + switch (direction) + { + case 0: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 1, 9, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 6)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 2: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 2, 9, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 3: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 3, 9, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + } + } + + static void TrackDiagLeftBankedUp25ToUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 14)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 10)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 11)), + { -16, -16, height }, { { -16, -16, height + 48 }, { 32, 32, 0 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 13)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 3: + switch (direction) + { + case 0: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 1, 9, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 12)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 2: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 2, 9, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 3: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 3, 9, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + } + } + + static void TrackDiagRightBankedUp25ToUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 19)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 15)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 17)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 18)), + { -16, -16, height }, { { -16, -16, height + 48 }, { 32, 32, 0 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 3: + switch (direction) + { + case 0: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 1, 9, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 16)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 0, 9, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 2: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 2, 9, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 3: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 3, 9, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + } + } + + static void TrackDiagDown25ToLeftBankedDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagRightBankedUp25ToUp25(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagDown25ToRightBankedDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagLeftBankedUp25ToUp25(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagLeftBankedDown25ToDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagUp25ToRightBankedUp25(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagRightBankedDown25ToDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagUp25ToLeftBankedUp25(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagLeftBankedFlatToLeftBankedUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 23)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 20)), + { -16, -16, height }, { { -16, -16, height + 27 }, { 32, 32, 0 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 22)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 3: + switch (direction) + { + case 0: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 21)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 2: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 3: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + } + } + + static void TrackDiagRightBankedFlatToRightBankedUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 27)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 24)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 26)), + { -16, -16, height }, { { -16, -16, height + 27 }, { 32, 32, 0 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 3: + switch (direction) + { + case 0: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 25)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 2: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 3: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + } + } + + static void TrackDiagLeftBankedUp25ToLeftBankedFlat( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 31)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 28)), + { -16, -16, height }, { { -16, -16, height + 27 }, { 32, 32, 0 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 30)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 3: + switch (direction) + { + case 0: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 29)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 2: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 3: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + } + } + + static void TrackDiagRightBankedUp25ToRightBankedFlat( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 35)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 32)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 34)), + { -16, -16, height }, { { -16, -16, height + 27 }, { 32, 32, 0 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 3: + switch (direction) + { + case 0: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 33)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 2: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 3: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + } + } + + static void TrackDiagLeftBankedFlatToLeftBankedDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagRightBankedUp25ToRightBankedFlat(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagRightBankedFlatToRightBankedDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagLeftBankedUp25ToLeftBankedFlat(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagLeftBankedDown25ToLeftBankedFlat( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagRightBankedFlatToRightBankedUp25(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagRightBankedDown25ToRightBankedFlat( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagLeftBankedFlatToLeftBankedUp25(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagUp25LeftBanked( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 39)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 36)), + { -16, -16, height }, { { -16, -16, height + 48 }, { 32, 32, 0 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 38)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 3: + switch (direction) + { + case 0: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 1, 11, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 37)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 2: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 2, 11, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 3: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 3, 11, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + } + } + + static void TrackDiagUp25RightBanked( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 43)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 40)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 42)), + { -16, -16, height }, { { -16, -16, height + 48 }, { 32, 32, 0 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 3: + switch (direction) + { + case 0: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 1, 11, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 41)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 0, 11, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 2: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 2, 11, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 3: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 3, 11, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + } + } + + static void TrackDiagDown25LeftBanked( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagUp25RightBanked(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagDown25RightBanked( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagUp25LeftBanked(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagFlatToLeftBankedUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 48)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 44)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 45)), + { -16, -16, height }, { { -16, -16, height + 27 }, { 32, 32, 0 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 47)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 3: + switch (direction) + { + case 0: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 46)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 2: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 3: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + } + } + + static void TrackDiagFlatToRightBankedUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 53)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 49)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 51)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 52)), + { -16, -16, height }, { { -16, -16, height + 27 }, { 32, 32, 0 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + case 3: + switch (direction) + { + case 0: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 1, 4, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 50)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 0, 4, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 2: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 2, 4, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 3: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 3, 4, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 48, 0x20); + break; + } + } + + static void TrackDiagLeftBankedUp25ToFlat( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 58)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 54)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 55)), + { -16, -16, height }, { { -16, -16, height + 27 }, { 32, 32, 0 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 57)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 3: + switch (direction) + { + case 0: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 56)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 2: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 3: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + } + } + + static void TrackDiagRightBankedUp25ToFlat( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 63)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_BC | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 59)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 2: + switch (direction) + { + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 61)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 62)), + { -16, -16, height }, { { -16, -16, height + 27 }, { 32, 32, 0 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + case 3: + switch (direction) + { + case 0: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 1, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 60)), + { -16, -16, height }, { { -16, -16, height }, { 32, 32, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 0, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 2: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 2, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 3: + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 3, 6, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 56, 0x20); + break; + } + } + + static void TrackDiagFlatToLeftBankedDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagRightBankedUp25ToFlat(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagFlatToRightBankedDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagLeftBankedUp25ToFlat(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagLeftBankedDown25ToFlat( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagFlatToRightBankedUp25(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackDiagRightBankedDown25ToFlat( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + TrackDiagFlatToLeftBankedUp25(session, ride, 3 - trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackLeftEighthBankToDiagUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 64)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 68)), + { 0, 0, height }, { { 0, 31, height }, { 32, 1, 32 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 72)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 76)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + } + MetalASupportsPaintSetup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + if (direction == 0 || direction == 3) + { + PaintUtilPushTunnelRotated(session, direction, height - 8, TUNNEL_1); + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 65)), + { 0, 0, height }, { { 0, 0, height }, { 32, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 69)), + { 0, 0, height }, { { 0, 31, height }, { 32, 1, 32 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 73)), + { 0, 0, height }, { { 0, 16, height }, { 32, 16, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 77)), + { 0, 0, height }, { { 0, 16, height }, { 32, 16, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, + PaintUtilRotateSegments( + SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 2: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 66)), + { 0, 0, height }, { { 0, 16, height }, { 16, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 70)), + { 0, 0, height }, { { 0, 0, height + 32 }, { 32, 40, 1 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 74)), + { 0, 0, height }, { { 16, 0, height }, { 16, 16, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 78)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D4, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 3: + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 4: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 67)), + { 0, 0, height }, { { 16, 16, height }, { 16, 16, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 71)), + { 0, 0, height }, { { 0, 0, height + 48 }, { 32, 32, 1 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 75)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 79)), + { 0, 0, height }, { { 16, 0, height }, { 16, 16, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + } + PaintUtilSetSegmentSupportHeight( + session, + PaintUtilRotateSegments( + SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + } + } + + static void TrackRightEighthBankToDiagUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 80)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 84)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 88)), + { 0, 0, height }, { { 0, 31, height }, { 32, 1, 32 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 92)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + } + MetalASupportsPaintSetup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + if (direction == 0 || direction == 3) + { + PaintUtilPushTunnelRotated(session, direction, height - 8, TUNNEL_1); + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 81)), + { 0, 0, height }, { { 0, 16, height }, { 32, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 85)), + { 0, 0, height }, { { 0, 16, height }, { 32, 16, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 89)), + { 0, 0, height }, { { 0, 31, height }, { 32, 1, 32 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 93)), + { 0, 0, height }, { { 0, 0, height }, { 32, 16, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, + PaintUtilRotateSegments( + SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 2: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 82)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 86)), + { 0, 0, height }, { { 16, 0, height }, { 16, 16, 3 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 90)), + { 0, 0, height }, { { 0, 0, height + 32 }, { 32, 40, 1 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 94)), + { 0, 0, height }, { { 0, 16, height }, { 16, 16, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 3: + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 4: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 83)), + { 0, 0, height }, { { 16, 0, height }, { 16, 16, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 87)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 91)), + { 0, 0, height }, { { 0, 0, height + 48 }, { 32, 32, 1 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 95)), + { 0, 0, height }, { { 16, 16, height }, { 16, 16, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + } + PaintUtilSetSegmentSupportHeight( + session, + PaintUtilRotateSegments( + SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + } + } + + static void TrackLeftEighthBankToOrthogonalUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 96)), + { 0, 0, height }, { { 0, 0, height + 32 }, { 32, 32, 1 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 100)), + { 0, 0, height }, { { 0, 0, height + 32 }, { 32, 32, 1 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 104)), + { 0, 0, height }, { { 16, 0, height }, { 16, 16, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 108)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + } + PaintUtilSetSegmentSupportHeight( + session, + PaintUtilRotateSegments( + SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 97)), + { 0, 0, height }, { { 0, 0, height + 32 }, { 32, 32, 1 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 101)), + { 0, 0, height }, { { 0, 0, height + 32 }, { 32, 32, 1 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 105)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 109)), + { 0, 0, height }, { { 16, 0, height }, { 16, 16, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_BC | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_D0 | SEGMENT_D4, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 2: + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B4 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 3: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 98)), + { 0, 0, height }, { { 0, 31, height }, { 32, 1, 32 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 102)), + { 0, 0, height }, { { 0, 31, height }, { 32, 1, 32 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 106)), + { 0, 0, height }, { { 0, 0, height }, { 32, 16, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 110)), + { 0, 0, height }, { { 0, 16, height }, { 32, 16, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, + PaintUtilRotateSegments( + SEGMENT_B4 | SEGMENT_B8 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 4: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 99)), + { 0, 0, height }, { { 0, 31, height }, { 32, 1, 32 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 103)), + { 0, 0, height }, { { 0, 31, height }, { 32, 1, 32 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 107)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 111)), + { 0, 0, height }, { { 0, 6, height }, { 32, 20, 3 } }); + break; + } + MetalASupportsPaintSetup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + if (direction == 1 || direction == 2) + { + PaintUtilPushTunnelRotated(session, direction, height + 8, TUNNEL_2); + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C4 | SEGMENT_CC | SEGMENT_D0, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + } + } + + static void TrackRightEighthBankToOrthogonalUp25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + switch (trackSequence) + { + case 0: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 112)), + { 0, 0, height }, { { 0, 16, height }, { 16, 16, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 2, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 116)), + { 0, 0, height }, { { 0, 0, height + 32 }, { 32, 32, 1 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 3, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 120)), + { 0, 0, height }, { { 0, 0, height + 32 }, { 32, 32, 1 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 1, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 124)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + MetalASupportsPaintSetup( + session, METAL_SUPPORTS_TUBES, 0, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + break; + } + PaintUtilSetSegmentSupportHeight( + session, + PaintUtilRotateSegments( + SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC | SEGMENT_D0 | SEGMENT_D4, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 1: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 113)), + { 0, 0, height }, { { 0, 0, height }, { 16, 16, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 117)), + { 0, 0, height }, { { 0, 0, height + 32 }, { 32, 32, 1 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 121)), + { 0, 0, height }, { { 0, 0, height + 32 }, { 32, 32, 1 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 125)), + { 0, 0, height }, { { 0, 16, height }, { 16, 16, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_B4 | SEGMENT_BC | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_CC, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 2: + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C0 | SEGMENT_C4 | SEGMENT_D0 | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 3: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 114)), + { 0, 0, height }, { { 0, 0, height }, { 16, 32, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 118)), + { 0, 0, height }, { { 31, 0, height }, { 1, 32, 32 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 122)), + { 0, 0, height }, { { 31, 0, height }, { 1, 32, 32 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 126)), + { 0, 0, height }, { { 16, 0, height }, { 16, 32, 3 } }); + break; + } + PaintUtilSetSegmentSupportHeight( + session, + PaintUtilRotateSegments( + SEGMENT_B8 | SEGMENT_C0 | SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D0 | SEGMENT_D4, direction), + 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + case 4: + switch (direction) + { + case 0: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 115)), + { 0, 0, height }, { { 6, 0, height }, { 20, 32, 3 } }); + break; + case 1: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 119)), + { 0, 0, height }, { { 31, 0, height }, { 1, 32, 32 } }); + break; + case 2: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 123)), + { 0, 0, height }, { { 31, 0, height }, { 1, 32, 32 } }); + break; + case 3: + PaintAddImageAsParentRotated( + session, direction, + session.TrackColours[SCHEME_TRACK].WithIndex( + (SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 127)), + { 0, 0, height }, { { 6, 0, height }, { 20, 32, 3 } }); + break; + } + MetalASupportsPaintSetup(session, METAL_SUPPORTS_TUBES, 4, 8, height, session.TrackColours[SCHEME_SUPPORTS]); + if (direction == 0 || direction == 1) + { + PaintUtilPushTunnelRotated(session, direction + 1, height + 8, TUNNEL_2); + } + PaintUtilSetSegmentSupportHeight( + session, PaintUtilRotateSegments(SEGMENT_C4 | SEGMENT_C8 | SEGMENT_D4, direction), 0xFFFF, 0); + PaintUtilSetGeneralSupportHeight(session, height + 72, 0x20); + break; + } + } + + static void TrackLeftEighthBankToDiagDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + uint8_t map[5] = { 4, 3, 1, 2, 0 }; + trackSequence = map[trackSequence]; + TrackRightEighthBankToOrthogonalUp25(session, ride, trackSequence, (direction + 1) & 3, height, trackElement); + } + + static void TrackRightEighthBankToDiagDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + uint8_t map[5] = { 4, 3, 1, 2, 0 }; + trackSequence = map[trackSequence]; + TrackLeftEighthBankToOrthogonalUp25(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackLeftEighthBankToOrthogonalDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; + TrackRightEighthBankToDiagUp25(session, ride, trackSequence, (direction + 2) & 3, height, trackElement); + } + + static void TrackRightEighthBankToOrthogonalDown25( + PaintSession& session, const Ride& ride, uint8_t trackSequence, uint8_t direction, int32_t height, + const TrackElement& trackElement) + { + trackSequence = mapLeftEighthTurnToOrthogonal[trackSequence]; + TrackLeftEighthBankToDiagUp25(session, ride, trackSequence, (direction + 3) & 3, height, trackElement); + } + TRACK_PAINT_FUNCTION GetTrackPaintFunction(int32_t trackType) { switch (trackType) @@ -15098,6 +17828,97 @@ namespace SingleRailRC return TrackDiagFlatTo60DegDown; case TrackElemType::DiagDown60ToFlat: return TrackDiag60DegDownToFlat; + + case TrackElemType::LeftEighthToDiagUp25: + return TrackLeftEighthToDiagUp25; + case TrackElemType::RightEighthToDiagUp25: + return TrackRightEighthToDiagUp25; + case TrackElemType::LeftEighthToDiagDown25: + return TrackLeftEighthToDiagDown25; + case TrackElemType::RightEighthToDiagDown25: + return TrackRightEighthToDiagDown25; + case TrackElemType::LeftEighthToOrthogonalUp25: + return TrackLeftEighthToOrthogonalUp25; + case TrackElemType::RightEighthToOrthogonalUp25: + return TrackRightEighthToOrthogonalUp25; + case TrackElemType::LeftEighthToOrthogonalDown25: + return TrackLeftEighthToOrthogonalDown25; + case TrackElemType::RightEighthToOrthogonalDown25: + return TrackRightEighthToOrthogonalDown25; + + case TrackElemType::DiagUp25ToLeftBankedUp25: + return TrackDiagUp25ToLeftBankedUp25; + case TrackElemType::DiagUp25ToRightBankedUp25: + return TrackDiagUp25ToRightBankedUp25; + case TrackElemType::DiagLeftBankedUp25ToUp25: + return TrackDiagLeftBankedUp25ToUp25; + case TrackElemType::DiagRightBankedUp25ToUp25: + return TrackDiagRightBankedUp25ToUp25; + case TrackElemType::DiagDown25ToLeftBankedDown25: + return TrackDiagDown25ToLeftBankedDown25; + case TrackElemType::DiagDown25ToRightBankedDown25: + return TrackDiagDown25ToRightBankedDown25; + case TrackElemType::DiagLeftBankedDown25ToDown25: + return TrackDiagLeftBankedDown25ToDown25; + case TrackElemType::DiagRightBankedDown25ToDown25: + return TrackDiagRightBankedDown25ToDown25; + + case TrackElemType::DiagLeftBankedFlatToLeftBankedUp25: + return TrackDiagLeftBankedFlatToLeftBankedUp25; + case TrackElemType::DiagRightBankedFlatToRightBankedUp25: + return TrackDiagRightBankedFlatToRightBankedUp25; + case TrackElemType::DiagLeftBankedUp25ToLeftBankedFlat: + return TrackDiagLeftBankedUp25ToLeftBankedFlat; + case TrackElemType::DiagRightBankedUp25ToRightBankedFlat: + return TrackDiagRightBankedUp25ToRightBankedFlat; + case TrackElemType::DiagLeftBankedFlatToLeftBankedDown25: + return TrackDiagLeftBankedFlatToLeftBankedDown25; + case TrackElemType::DiagRightBankedFlatToRightBankedDown25: + return TrackDiagRightBankedFlatToRightBankedDown25; + case TrackElemType::DiagLeftBankedDown25ToLeftBankedFlat: + return TrackDiagLeftBankedDown25ToLeftBankedFlat; + case TrackElemType::DiagRightBankedDown25ToRightBankedFlat: + return TrackDiagRightBankedDown25ToRightBankedFlat; + case TrackElemType::DiagUp25LeftBanked: + return TrackDiagUp25LeftBanked; + case TrackElemType::DiagUp25RightBanked: + return TrackDiagUp25RightBanked; + case TrackElemType::DiagDown25LeftBanked: + return TrackDiagDown25LeftBanked; + case TrackElemType::DiagDown25RightBanked: + return TrackDiagDown25RightBanked; + case TrackElemType::DiagFlatToLeftBankedUp25: + return TrackDiagFlatToLeftBankedUp25; + case TrackElemType::DiagFlatToRightBankedUp25: + return TrackDiagFlatToRightBankedUp25; + case TrackElemType::DiagLeftBankedUp25ToFlat: + return TrackDiagLeftBankedUp25ToFlat; + case TrackElemType::DiagRightBankedUp25ToFlat: + return TrackDiagRightBankedUp25ToFlat; + case TrackElemType::DiagFlatToLeftBankedDown25: + return TrackDiagFlatToLeftBankedDown25; + case TrackElemType::DiagFlatToRightBankedDown25: + return TrackDiagFlatToRightBankedDown25; + case TrackElemType::DiagLeftBankedDown25ToFlat: + return TrackDiagLeftBankedDown25ToFlat; + case TrackElemType::DiagRightBankedDown25ToFlat: + return TrackDiagRightBankedDown25ToFlat; + case TrackElemType::LeftEighthBankToDiagUp25: + return TrackLeftEighthBankToDiagUp25; + case TrackElemType::RightEighthBankToDiagUp25: + return TrackRightEighthBankToDiagUp25; + case TrackElemType::LeftEighthBankToDiagDown25: + return TrackLeftEighthBankToDiagDown25; + case TrackElemType::RightEighthBankToDiagDown25: + return TrackRightEighthBankToDiagDown25; + case TrackElemType::LeftEighthBankToOrthogonalUp25: + return TrackLeftEighthBankToOrthogonalUp25; + case TrackElemType::RightEighthBankToOrthogonalUp25: + return TrackRightEighthBankToOrthogonalUp25; + case TrackElemType::LeftEighthBankToOrthogonalDown25: + return TrackLeftEighthBankToOrthogonalDown25; + case TrackElemType::RightEighthBankToOrthogonalDown25: + return TrackRightEighthBankToOrthogonalDown25; } return nullptr; } diff --git a/src/openrct2/ride/coaster/meta/HybridCoaster.h b/src/openrct2/ride/coaster/meta/HybridCoaster.h index 6b97f8782c..360053ffe9 100644 --- a/src/openrct2/ride/coaster/meta/HybridCoaster.h +++ b/src/openrct2/ride/coaster/meta/HybridCoaster.h @@ -17,7 +17,7 @@ constexpr const RideTypeDescriptor HybridCoasterRTD = { SET_FIELD(AlternateType, RIDE_TYPE_NULL), SET_FIELD(Category, RIDE_CATEGORY_ROLLERCOASTER), - SET_FIELD(EnabledTrackPieces, {TRACK_FLAT, TRACK_STRAIGHT, TRACK_STATION_END, TRACK_LIFT_HILL, TRACK_LIFT_HILL_STEEP, TRACK_FLAT_ROLL_BANKING, TRACK_SLOPE, TRACK_SLOPE_STEEP_UP, TRACK_SLOPE_STEEP_DOWN, TRACK_SLOPE_CURVE, TRACK_SLOPE_CURVE_STEEP, TRACK_S_BEND, TRACK_CURVE_SMALL, TRACK_CURVE, TRACK_HELIX_SMALL, TRACK_BRAKES, TRACK_ON_RIDE_PHOTO, TRACK_SLOPE_VERTICAL, TRACK_BARREL_ROLL, TRACK_POWERED_LIFT, TRACK_SLOPE_CURVE_BANKED, TRACK_BLOCK_BRAKES, TRACK_SLOPE_ROLL_BANKING, TRACK_SLOPE_STEEP_LONG, TRACK_CURVE_VERTICAL, TRACK_QUARTER_LOOP, TRACK_ZERO_G_ROLL, TRACK_ZERO_G_ROLL_LARGE}), + SET_FIELD(EnabledTrackPieces, {TRACK_FLAT, TRACK_STRAIGHT, TRACK_STATION_END, TRACK_LIFT_HILL, TRACK_LIFT_HILL_STEEP, TRACK_FLAT_ROLL_BANKING, TRACK_SLOPE, TRACK_SLOPE_STEEP_UP, TRACK_SLOPE_STEEP_DOWN, TRACK_SLOPE_CURVE, TRACK_SLOPE_CURVE_STEEP, TRACK_S_BEND, TRACK_CURVE_SMALL, TRACK_CURVE, TRACK_HELIX_SMALL, TRACK_BRAKES, TRACK_ON_RIDE_PHOTO, TRACK_SLOPE_VERTICAL, TRACK_BARREL_ROLL, TRACK_POWERED_LIFT, TRACK_SLOPE_CURVE_BANKED, TRACK_BLOCK_BRAKES, TRACK_SLOPE_ROLL_BANKING, TRACK_SLOPE_STEEP_LONG, TRACK_CURVE_VERTICAL, TRACK_QUARTER_LOOP, TRACK_ZERO_G_ROLL, TRACK_ZERO_G_ROLL_LARGE, TRACK_SLOPE_CURVE_LARGE}), SET_FIELD(ExtraTrackPieces, {TRACK_BOOSTER}), SET_FIELD(CoveredTrackPieces, {}), SET_FIELD(StartTrackPiece, TrackElemType::EndStation), diff --git a/src/openrct2/ride/coaster/meta/SingleRailRollerCoaster.h b/src/openrct2/ride/coaster/meta/SingleRailRollerCoaster.h index c63f17ceae..f5ab82818c 100644 --- a/src/openrct2/ride/coaster/meta/SingleRailRollerCoaster.h +++ b/src/openrct2/ride/coaster/meta/SingleRailRollerCoaster.h @@ -17,7 +17,7 @@ constexpr const RideTypeDescriptor SingleRailRollerCoasterRTD = { SET_FIELD(AlternateType, RIDE_TYPE_NULL), SET_FIELD(Category, RIDE_CATEGORY_ROLLERCOASTER), - SET_FIELD(EnabledTrackPieces, { TRACK_FLAT, TRACK_STRAIGHT, TRACK_STATION_END, TRACK_LIFT_HILL, TRACK_LIFT_HILL_STEEP, TRACK_FLAT_ROLL_BANKING, TRACK_SLOPE, TRACK_SLOPE_LONG, TRACK_SLOPE_STEEP_UP, TRACK_SLOPE_STEEP_DOWN, TRACK_SLOPE_CURVE, TRACK_SLOPE_CURVE_STEEP, TRACK_S_BEND, TRACK_CURVE_SMALL, TRACK_CURVE, TRACK_CORKSCREW, TRACK_HELIX_SMALL, TRACK_BRAKES, TRACK_ON_RIDE_PHOTO, TRACK_SLOPE_VERTICAL, TRACK_BARREL_ROLL, TRACK_SLOPE_CURVE_BANKED, TRACK_BLOCK_BRAKES, TRACK_SLOPE_ROLL_BANKING, TRACK_CURVE_VERTICAL, TRACK_QUARTER_LOOP, TRACK_HALF_LOOP, TRACK_HALF_LOOP_MEDIUM, TRACK_CORKSCREW_LARGE, TRACK_ZERO_G_ROLL, TRACK_ZERO_G_ROLL_LARGE}), + SET_FIELD(EnabledTrackPieces, { TRACK_FLAT, TRACK_STRAIGHT, TRACK_STATION_END, TRACK_LIFT_HILL, TRACK_LIFT_HILL_STEEP, TRACK_FLAT_ROLL_BANKING, TRACK_SLOPE, TRACK_SLOPE_LONG, TRACK_SLOPE_STEEP_UP, TRACK_SLOPE_STEEP_DOWN, TRACK_SLOPE_CURVE, TRACK_SLOPE_CURVE_STEEP, TRACK_S_BEND, TRACK_CURVE_SMALL, TRACK_CURVE, TRACK_CORKSCREW, TRACK_HELIX_SMALL, TRACK_BRAKES, TRACK_ON_RIDE_PHOTO, TRACK_SLOPE_VERTICAL, TRACK_BARREL_ROLL, TRACK_SLOPE_CURVE_BANKED, TRACK_BLOCK_BRAKES, TRACK_SLOPE_ROLL_BANKING, TRACK_CURVE_VERTICAL, TRACK_QUARTER_LOOP, TRACK_HALF_LOOP, TRACK_HALF_LOOP_MEDIUM, TRACK_CORKSCREW_LARGE, TRACK_ZERO_G_ROLL, TRACK_ZERO_G_ROLL_LARGE, TRACK_SLOPE_CURVE_LARGE}), SET_FIELD(ExtraTrackPieces, {TRACK_SLOPE_STEEP_LONG, TRACK_HALF_LOOP_LARGE}), SET_FIELD(CoveredTrackPieces, {}), SET_FIELD(StartTrackPiece, TrackElemType::EndStation), diff --git a/src/openrct2/scripting/ScriptEngine.h b/src/openrct2/scripting/ScriptEngine.h index 89717959ff..f309d823e9 100644 --- a/src/openrct2/scripting/ScriptEngine.h +++ b/src/openrct2/scripting/ScriptEngine.h @@ -47,7 +47,7 @@ namespace OpenRCT2 namespace OpenRCT2::Scripting { - static constexpr int32_t OPENRCT2_PLUGIN_API_VERSION = 70; + static constexpr int32_t OPENRCT2_PLUGIN_API_VERSION = 71; // Versions marking breaking changes. static constexpr int32_t API_VERSION_33_PEEP_DEPRECATION = 33; diff --git a/src/openrct2/sprites.h b/src/openrct2/sprites.h index 8ca7857616..3e9f14ecff 100644 --- a/src/openrct2/sprites.h +++ b/src/openrct2/sprites.h @@ -1271,7 +1271,9 @@ enum SPR_G2_HYBRID_TRACK_POWERED_LIFT = SPR_G2_HYBRID_TRACK_TURN_BANK_TRANSITION + 18, SPR_G2_HYBRID_TRACK_ZERO_G_ROLL = SPR_G2_HYBRID_TRACK_POWERED_LIFT + 4, SPR_G2_HYBRID_TRACK_LARGE_ZERO_G_ROLL = SPR_G2_HYBRID_TRACK_ZERO_G_ROLL + 40, - SPR_G2_HYBRID_LIFT_BEGIN = SPR_G2_HYBRID_TRACK_LARGE_ZERO_G_ROLL + 58, + SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE = SPR_G2_HYBRID_TRACK_LARGE_ZERO_G_ROLL + 58, + SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED = SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE + 64, + SPR_G2_HYBRID_LIFT_BEGIN = SPR_G2_HYBRID_TRACK_GENTLE_LARGE_CURVE_BANKED + 142, SPR_G2_HYBRID_LIFT_TRACK_FLAT = SPR_G2_HYBRID_LIFT_BEGIN, SPR_G2_HYBRID_LIFT_TRACK_GENTLE = SPR_G2_HYBRID_LIFT_TRACK_FLAT + 4, SPR_G2_HYBRID_LIFT_TRACK_STEEP = SPR_G2_HYBRID_LIFT_TRACK_GENTLE + 12, @@ -1315,14 +1317,16 @@ enum SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP = SPR_G2_SINGLE_RAIL_TRACK_HALF_LOOP + 16, SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP = SPR_G2_SINGLE_RAIL_TRACK_FLAT_TO_STEEP + 32, SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW = SPR_G2_SINGLE_RAIL_TRACK_QUARTER_LOOP + 12, - SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION = SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 24, - SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP = SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 18, - SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP = SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 56, - SPR_G2_SINGLE_RAIL_TRACK_LARGE_CORKSCREW = SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 20, - SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_HALF_LOOP = SPR_G2_SINGLE_RAIL_TRACK_LARGE_CORKSCREW + 40, - SPR_G2_SINGLE_RAIL_TRACK_ZERO_G_ROLL = SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_HALF_LOOP + 40, + SPR_G2_SINGLE_RAIL_TRACK_LARGE_CORKSCREW = SPR_G2_SINGLE_RAIL_TRACK_CORKSCREW + 24, + SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION = SPR_G2_SINGLE_RAIL_TRACK_LARGE_CORKSCREW + 40, + SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_HALF_LOOP = SPR_G2_SINGLE_RAIL_TRACK_TURN_BANK_TRANSITION + 18, + SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP = SPR_G2_SINGLE_RAIL_TRACK_MEDIUM_HALF_LOOP + 40, + SPR_G2_SINGLE_RAIL_TRACK_ZERO_G_ROLL = SPR_G2_SINGLE_RAIL_TRACK_LARGE_HALF_LOOP + 56, SPR_G2_SINGLE_RAIL_TRACK_LARGE_ZERO_G_ROLL = SPR_G2_SINGLE_RAIL_TRACK_ZERO_G_ROLL + 32, - SPR_G2_SINGLE_RAIL_LIFT_BEGIN = SPR_G2_SINGLE_RAIL_TRACK_LARGE_ZERO_G_ROLL + 40, + SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP = SPR_G2_SINGLE_RAIL_TRACK_LARGE_ZERO_G_ROLL + 40, + SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE = SPR_G2_SINGLE_RAIL_TRACK_SMALL_FLAT_TO_STEEP + 20, + SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED = SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE + 64, + SPR_G2_SINGLE_RAIL_LIFT_BEGIN = SPR_G2_SINGLE_RAIL_TRACK_GENTLE_LARGE_CURVE_BANKED + 128, SPR_G2_SINGLE_RAIL_LIFT_TRACK_FLAT = SPR_G2_SINGLE_RAIL_LIFT_BEGIN, SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE = SPR_G2_SINGLE_RAIL_LIFT_TRACK_FLAT + 4, SPR_G2_SINGLE_RAIL_LIFT_TRACK_STEEP = SPR_G2_SINGLE_RAIL_LIFT_TRACK_GENTLE + 12,