summaryrefslogtreecommitdiff
path: root/app/bin/unittest
diff options
context:
space:
mode:
authorJörg Frings-Fürst <debian@jff-webhosting.net>2020-08-08 11:53:12 +0200
committerJörg Frings-Fürst <debian@jff-webhosting.net>2020-08-08 11:53:12 +0200
commite50482f994b6ebcce864a412111d376e99205cdb (patch)
treeff3192c6aaf213c4922521bed988e4ed4147f537 /app/bin/unittest
parentd3897ce090dbeb220ed2c782f095597e417cf3cc (diff)
parentb623f5953691b2a0614e6f1f4def86bdbb9a4113 (diff)
Update upstream source from tag 'upstream/5.2.0Beta2.1'
Update to upstream version '5.2.0Beta2.1' with Debian dir 1576f25f4c1496abfed44af31ead67d32c7be650
Diffstat (limited to 'app/bin/unittest')
-rw-r--r--app/bin/unittest/CMakeLists.txt36
-rw-r--r--app/bin/unittest/catalogtest.c124
-rw-r--r--app/bin/unittest/defaultstest.c8
-rw-r--r--app/bin/unittest/pathstest.c5
-rw-r--r--app/bin/unittest/shortentest.c152
-rw-r--r--app/bin/unittest/testfiles/HO-Peco-Code83.xtp236
-rw-r--r--app/bin/unittest/testfiles/atl83ho.xtp561
-rw-r--r--app/bin/unittest/testfiles/atlasn.xtp697
8 files changed, 1816 insertions, 3 deletions
diff --git a/app/bin/unittest/CMakeLists.txt b/app/bin/unittest/CMakeLists.txt
index 32e2ddb..7055d0b 100644
--- a/app/bin/unittest/CMakeLists.txt
+++ b/app/bin/unittest/CMakeLists.txt
@@ -1,10 +1,10 @@
# build unit tests for the xtrkcad library
-add_executable(dxfformattest
+add_executable(dxfformattest
dxfformattest.c
../dxfformat.c
)
-
+
target_link_libraries(dxfformattest
dynstring
${LIBS})
@@ -29,3 +29,35 @@ target_link_libraries(defaultstest
${LIBS})
add_test(DefaultsTest defaultstest)
+
+add_executable(shortentest
+ shortentest.c
+ ../shortentext.c
+ )
+
+target_link_libraries(shortentest
+ ${LIBS})
+
+add_test(ShortenTest shortentest)
+
+add_test(CatalogTest catalogtest)
+
+set (TESTXTP
+ "atl83ho.xtp" "atlasn.xtp" "HO-Peco-Code83.xtp"
+ )
+
+foreach(testfile IN LISTS TESTXTP )
+ configure_file ( ${CMAKE_CURRENT_SOURCE_DIR}/testfiles/${testfile}
+ ${CMAKE_CURRENT_BINARY_DIR}
+ COPYONLY )
+endforeach()
+
+add_executable(catalogtest
+ catalogtest.c
+ ../partcatalog.c
+ ../paths.c
+ )
+
+target_link_libraries(catalogtest
+ dynstring
+ ${LIBS}) \ No newline at end of file
diff --git a/app/bin/unittest/catalogtest.c b/app/bin/unittest/catalogtest.c
new file mode 100644
index 0000000..6025990
--- /dev/null
+++ b/app/bin/unittest/catalogtest.c
@@ -0,0 +1,124 @@
+/** \file catalog.c
+* Unit tests for part catalog management
+*/
+
+#include <malloc.h>
+#include <stdarg.h>
+#include <stddef.h>
+#include <string.h>
+#include <stdio.h>
+#include <setjmp.h>
+#include <cmocka.h>
+
+#include "../include/partcatalog.h"
+
+TrackLibrary *trackLib;
+CatalogEntry *catalog;
+
+
+// some dummy functions to suppress linking problems
+wGetUserHomeDir()
+{
+
+}
+
+wPrefSetString()
+{
+
+}
+
+wPrefGetString()
+{
+
+}
+
+AbortProg()
+{
+
+}
+
+static void
+CreateLib(void **state)
+{
+ (void)state;
+ trackLib = CreateLibrary(".");
+ assert_non_null((void *)trackLib);
+}
+
+static void ScanEmptyDir(void **state)
+{
+ (void)state;
+ bool success;
+ EmptyCatalog(trackLib->catalog);
+ success = GetTrackFiles(trackLib, "//");
+ assert_false(success);
+}
+
+static void ScanTestFiles(void **state)
+{
+ (void)state;
+ bool success;
+ EmptyCatalog(trackLib->catalog);
+ success = GetTrackFiles(trackLib, ".");
+ assert_true(success);
+}
+
+static void CreateIndex(void **state)
+{
+ (void)state;
+ unsigned int words = CreateLibraryIndex(trackLib);
+ assert_true(words > 0);
+}
+
+static void SearchNothing(void **state)
+{
+ (void)state;
+ unsigned int files = SearchLibrary(trackLib, "djfhdkljhf", catalog);
+ assert_true(files == 0);
+ EmptyCatalog(catalog);
+}
+
+static void SearchSingle(void **state)
+{
+ (void)state;
+ int files = SearchLibrary(trackLib, "peco", catalog );
+ assert_true(files==1);
+ EmptyCatalog(catalog);
+}
+
+static void SearchMultiple(void **state)
+{
+ (void)state;
+ int files = SearchLibrary(trackLib, "atlas", catalog);
+ assert_true(files == 2);
+ EmptyCatalog(catalog);
+}
+
+static void FilterTest(void **state)
+{
+ (void)state;
+ bool res;
+
+ res = FilterKeyword("test");
+ assert_false(res);
+ assert_true(FilterKeyword("&"));
+ assert_false(FilterKeyword("n"));
+}
+
+int main(void)
+{
+ const struct CMUnitTest tests[] = {
+ cmocka_unit_test(CreateLib),
+ cmocka_unit_test(ScanEmptyDir),
+ cmocka_unit_test(ScanTestFiles),
+ cmocka_unit_test(CreateIndex),
+ cmocka_unit_test(SearchNothing),
+ cmocka_unit_test(SearchSingle),
+ cmocka_unit_test(SearchMultiple),
+ cmocka_unit_test(FilterTest),
+ };
+
+ catalog = InitCatalog();
+
+ return cmocka_run_group_tests(tests, NULL, NULL);
+} \ No newline at end of file
diff --git a/app/bin/unittest/defaultstest.c b/app/bin/unittest/defaultstest.c
index d877f46..e930468 100644
--- a/app/bin/unittest/defaultstest.c
+++ b/app/bin/unittest/defaultstest.c
@@ -56,11 +56,17 @@ wPrefGetFloatBasic(const char *section, const char *name, double *result, double
return(TRUE);
}
-const char * wPrefGetStringBasic(const char *section, const char *name)
+char * wPrefGetStringBasic(const char *section, const char *name)
{
return(NULL);
}
+/* dummy to make the linker happy */
+void
+wPrefSetInteger(const char *section, const char *name, long value)
+{
+ return;
+}
static void BinarySearch(void **state)
{
int result;
diff --git a/app/bin/unittest/pathstest.c b/app/bin/unittest/pathstest.c
index b7e792e..3ee830e 100644
--- a/app/bin/unittest/pathstest.c
+++ b/app/bin/unittest/pathstest.c
@@ -41,6 +41,11 @@ char *wPrefGetStringExt(const char *section, const char *key)
return(NULL);
}
+char *wPrefGetString(const char *section, const char *key)
+{
+ return(DEFAULTPATH);
+}
+
const char *wGetUserHomeDir(void)
{
return(DEFAULTPATH);
diff --git a/app/bin/unittest/shortentest.c b/app/bin/unittest/shortentest.c
new file mode 100644
index 0000000..4d24b84
--- /dev/null
+++ b/app/bin/unittest/shortentest.c
@@ -0,0 +1,152 @@
+/** \file stringutiltest.c
+* Unit tests for the dxfformat module
+*/
+
+#include <malloc.h>
+#include <stdarg.h>
+#include <stddef.h>
+#include <string.h>
+#include <stdio.h>
+#include <setjmp.h>
+#include <cmocka.h>
+
+#include <shortentext.h>
+
+#define RESULTSTRING "This is a test!"
+
+
+static void NoRemoveBlanks(void **state)
+{
+ char *result = malloc(strlen(RESULTSTRING) + 20);
+ (void)state;
+
+ RemoveFormatChars(RESULTSTRING, result);
+ assert_string_equal(result, RESULTSTRING);
+
+ RemoveFormatChars(" " RESULTSTRING, result);
+ assert_string_equal(result, " " RESULTSTRING);
+}
+
+static void RemoveMultipleBlanks(void **state)
+{
+ char *result = malloc(strlen(RESULTSTRING) + 20);
+ (void)state;
+
+ RemoveFormatChars("This is a test!", result);
+ assert_string_equal(result, RESULTSTRING);
+
+ RemoveFormatChars("This is a test!", result);
+ assert_string_equal(result, RESULTSTRING);
+}
+
+
+static void RemoveTabs(void **state)
+{
+ char *result = malloc(strlen(RESULTSTRING) + 20);
+ (void)state;
+
+ RemoveFormatChars("This \tis\ta test!", result);
+ assert_string_equal(result, RESULTSTRING);
+
+ RemoveFormatChars("This\t\tis a\ttest!", result);
+ assert_string_equal(result, RESULTSTRING);
+
+ RemoveFormatChars("\tThis is a test!", result);
+ assert_string_equal(result, " " RESULTSTRING);
+}
+
+static void RemoveCRs(void **state)
+{
+ char *result = malloc(strlen(RESULTSTRING) + 20);
+ (void)state;
+
+ RemoveFormatChars("This\r is a test!", result);
+ assert_string_equal(result, RESULTSTRING);
+
+ RemoveFormatChars("This\ris a test!", result);
+ assert_string_equal(result, RESULTSTRING);
+
+ RemoveFormatChars("This is a test!\r", result);
+ assert_string_equal(result, RESULTSTRING);
+}
+
+static void RemoveLFs(void **state)
+{
+ char *result = malloc(strlen(RESULTSTRING) + 20);
+ (void)state;
+
+ RemoveFormatChars("This\n is a test!", result);
+ assert_string_equal(result, RESULTSTRING);
+
+ RemoveFormatChars("This\nis a test!", result);
+ assert_string_equal(result, RESULTSTRING);
+
+ RemoveFormatChars("\nThis is a test!", result);
+ assert_string_equal(result, " " RESULTSTRING);
+
+ RemoveFormatChars("This is a test!\r\n", result);
+ assert_string_equal(result, RESULTSTRING);
+}
+
+#define LONGSTRING "The strrchr() function in C/C++ locates the last occurrence of a character in a string. It returns a pointer to the last occurrence in the string. The terminating null character is considered part of the C string. ... str : specifies the pointer to the null terminated string to be searched for."
+
+static void NoEllipsizeText(void **state)
+{
+ char *result = malloc(strlen(RESULTSTRING) + 20);
+
+ (void)state;
+
+ EllipsizeString(RESULTSTRING, result, strlen(RESULTSTRING) + 10);
+ assert_string_equal(result, RESULTSTRING);
+
+ EllipsizeString(RESULTSTRING, NULL, strlen(RESULTSTRING) + 10);
+ assert_string_equal(result, RESULTSTRING);
+}
+
+static void EllipsizeText(void **state)
+{
+ char *result = malloc(sizeof(LONGSTRING));
+ (void)state;
+
+ EllipsizeString(LONGSTRING, result, strlen(LONGSTRING));
+ assert_string_equal(result, LONGSTRING);
+
+ EllipsizeString(LONGSTRING, result, 40);
+ assert_string_equal(result, "The strrchr() function in C/C++...");
+
+ EllipsizeString(LONGSTRING, result, 23);
+ assert_string_equal(result, "The strrchr()...");
+
+ strcpy(result, LONGSTRING);
+ EllipsizeString(result, NULL, 23);
+ assert_string_equal(result, "The strrchr()...");
+
+}
+
+static void LongText(void **state)
+{
+ char *result = malloc(sizeof(LONGSTRING));
+ (void)state;
+
+ strcpy(result, "abcdefghijklmnopqrstuvwxyz");
+ EllipsizeString(result, NULL, 23);
+ assert_string_equal(result, "abcdefghijklmnopqrst...");
+
+ EllipsizeString("abcdefghijklmnopqrstuvwxyz", result, 10);
+ assert_string_equal(result, "abcdefg...");
+}
+
+int main(void)
+{
+ const struct CMUnitTest tests[] = {
+ cmocka_unit_test(NoRemoveBlanks),
+ cmocka_unit_test(RemoveMultipleBlanks),
+ cmocka_unit_test(RemoveTabs),
+ cmocka_unit_test(RemoveCRs),
+ cmocka_unit_test(RemoveLFs),
+ cmocka_unit_test(NoEllipsizeText),
+ cmocka_unit_test(EllipsizeText),
+ cmocka_unit_test(LongText),
+ };
+ return cmocka_run_group_tests(tests, NULL, NULL);
+} \ No newline at end of file
diff --git a/app/bin/unittest/testfiles/HO-Peco-Code83.xtp b/app/bin/unittest/testfiles/HO-Peco-Code83.xtp
new file mode 100644
index 0000000..09bf426
--- /dev/null
+++ b/app/bin/unittest/testfiles/HO-Peco-Code83.xtp
@@ -0,0 +1,236 @@
+CONTENTS Peco North American Code 83 HO Scale Turnouts
+#Updated based on PECO Website and PDF's
+SUBCONTENTS Peco Code 83 HO Turnouts
+TURNOUT HO "PECO Code 83 #5 Left Hand Turnout SL-8352/SLE-8352"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.000000 270.000000
+ E 8.259842 0.000000 90.000000
+ E 8.259842 1.000000 78.600000
+ S 0 0.000000 0.000000 0.000000 0.649600 0.000000
+ S 0 0.000000 0.649600 0.000000 8.259842 0.000000
+ C 0 0.000000 -26.558075 0.649635 26.558075 168.599924 11.400152
+ S 0 0.000000 5.899063 0.523973 8.259842 1.000000
+END
+TURNOUT HO "PECO Code 83 #5 Right Hand Turnout SL-8351/SLE-8351"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.000000 270.000000
+ E 8.259842 0.000000 90.000000
+ E 8.259842 -1.000000 101.400000
+ S 0 0.000000 0.000000 0.000000 0.649600 0.000000
+ S 0 0.000000 0.649600 0.000000 8.259842 0.000000
+ C 0 0.000000 26.558075 0.649494 -26.558075 0.000076 11.400152
+ S 0 0.000000 5.899063 -0.523973 8.259842 -1.000000
+END
+TURNOUT HO "PECO Code 83 #6 Left Hand Turnout SL-8362/SLE-8362"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.000000 270.000000
+ E 9.192913 0.000000 90.000000
+ E 9.192913 1.000000 80.500000
+ S 0 0.000000 0.000000 0.000000 0.649600 0.000000
+ S 0 0.000000 0.649600 0.000000 9.192913 0.000000
+ C 0 0.000000 -30.900336 0.649641 30.900336 170.499924 9.500152
+ S 0 0.000000 5.749703 0.423792 9.192913 1.000000
+END
+TURNOUT HO "PECO Code 83 #6 Right Hand Turnout SL-8361/SLE-8361"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.000000 270.000000
+ E 9.192913 0.000000 90.000000
+ E 9.192913 -1.000000 99.500000
+ S 0 0.000000 0.000000 0.000000 0.649600 0.000000
+ S 0 0.000000 0.649600 0.000000 9.192913 0.000000
+ C 0 0.000000 30.900336 0.649477 -30.900336 0.000076 9.500152
+ S 0 0.000000 5.749703 -0.423792 9.192913 -1.000000
+END
+TURNOUT HO "PECO Code 83 #8 Left Hand Turnout SL-8382/SLE-8382"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.000000 270.000000
+ E 12.649606 0.000000 90.000000
+ E 12.649606 1.000000 82.850000
+ S 0 0.000000 0.000000 0.000000 0.649600 0.000000
+ S 0 0.000000 0.649600 0.000000 12.649606 0.000000
+ C 0 0.000000 -64.478236 0.649686 64.478236 172.849924 7.150152
+ S 0 0.000000 8.675202 0.501423 12.649606 1.000000
+END
+TURNOUT HO "PECO Code 83 #8 Right Hand Turnout SL-8381/SLE-8381"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.000000 270.000000
+ E 12.649606 0.000000 90.000000
+ E 12.649606 -1.000000 97.150000
+ S 0 0.000000 0.000000 0.000000 0.649600 0.000000
+ S 0 0.000000 0.649600 0.000000 12.649606 0.000000
+ C 0 0.000000 64.478236 0.649343 -64.478236 0.000076 7.150152
+ S 0 0.000000 8.675202 -0.501423 12.649606 -1.000000
+END
+
+SUBCONTENTS Peco Code 83 HO Wye Turnouts
+TURNOUT HO "PECO Code 83 #4 WYE Turnout SL-8348/SLE-8348"
+ P "Left" 1 2 3
+ P "Right" 1 4 5
+ E 0.000000 0.000000 270.000000
+ E 7.159055 0.500000 82.850000
+ E 7.159055 -0.500000 97.150000
+ S 0 0.000000 0.000000 0.000000 0.649600 0.000000
+ C 0 0.000000 -40.393551 0.649654 40.393551 172.849924 7.150152
+ S 0 0.000000 5.677382 0.314125 7.159055 0.500000
+ C 0 0.000000 40.393551 0.649439 -40.393551 0.000076 7.150152
+ S 0 0.000000 5.677382 -0.314125 7.159055 -0.500000
+END
+
+SUBCONTENTS Peco Code 83 HO Crossings
+TURNOUT HO "PECO Code 83 #6 Diamond Crossing SL-8364/SLE-8364"
+ P "Normal" 1 0 2
+ E 0.000000 0.000000 270.000000
+ E 12.035433 0.000000 90.000000
+ E 0.082528 0.993201 279.500000
+ E 11.952905 -0.993201 99.500000
+ S 0 0.000000 0.000000 0.000000 12.035433 0.000000
+ S 0 0.000000 0.082528 0.993201 11.952905 -0.993201
+END
+TURNOUT HO "PECO Code 83 90d Crossing SL-8390"
+ P "Normal" 1 0 2
+ E 0.000000 0.000000 270.000000
+ E 2.000000 0.000000 90.000000
+ E 1.000000 -1.000000 180.000000
+ E 1.000000 1.000000 0.000000
+ S 0 0.000000 0.000000 0.000000 2.000000 0.000000
+ S 0 0.000000 1.000000 1.000000 1.000000 -1.000000
+END
+
+SUBCONTENTS Peco Code 83 HO Curved Turnouts
+TURNOUT HO "Peco Code 83 #7 Curved Left Turnout SL-8377/SLE-8377"
+ P "Normal" 1 4 5
+ P "Reverse" 1 2 3
+ E 0.000000 0.000000 270.000000
+ E 11.106693 0.984252 81.000000
+ E 10.865748 1.968504 72.000000
+ S 0 0.000000 0.000000 0.000000 0.649600 0.000000
+ C 0 0.000000 -26.251070 0.649635 26.251070 161.999924 18.000152
+ S 0 0.000000 8.761686 1.284838 10.865748 1.968504
+ C 0 0.000000 -53.910688 0.649672 53.910688 170.999924 9.000152
+ S 0 0.000000 9.083224 0.663751 11.106693 0.984252
+END
+TURNOUT HO "Peco Code 83 #7 Curved Right Turnout SL-8376/SLE-8376"
+ P "Normal" 1 4 5
+ P "Reverse" 1 2 3
+ E 0.000000 0.000000 270.000000
+ E 11.106693 -0.984252 99.000000
+ E 10.865748 -1.968504 108.000000
+ S 0 0.000000 0.000000 0.000000 0.649600 0.000000
+ C 0 0.000000 26.251070 0.649496 -26.251070 0.000076 18.000152
+ S 0 0.000000 8.761686 -1.284838 10.865748 -1.968504
+ C 0 0.000000 53.910688 0.649385 -53.910688 0.000076 9.000152
+ S 0 0.000000 9.083224 -0.663751 11.106693 -0.984252
+END
+
+SUBCONTENTS Peco Code 83 HO Slip Turnouts
+TURNOUT HO "Peco Code 83 #6 Double Slip Switch SL-U8363"
+ P "Normal" 1 2 3 0 4 5 6
+ P "Reverse" 1 7 6 0 4 8 3
+ E 0.000000 0.000000 270.000000
+ E 12.035433 0.000000 90.000000
+ E 0.082528 0.993201 279.500000
+ E 11.952905 -0.993201 99.500000
+ S 0 0.000000 0.000000 0.000000 1.299468 0.000000
+ S 0 0.000000 1.299468 0.000000 10.735965 0.000000
+ S 0 0.000000 10.735965 0.000000 12.035433 0.000000
+ S 0 0.000000 0.082528 0.993201 1.363761 0.778782
+ S 0 0.000000 1.363761 0.778782 10.671672 -0.778782
+ S 0 0.000000 10.671672 -0.778782 11.952905 -0.993201
+ C 0 0.000000 56.784006 1.299241 -56.784006 0.000076 9.500152
+ C 0 0.000000 -56.784006 10.736040 56.783993 180.000076 9.500152
+END
+
+SUBCONTENTS Peco Code 83 HO Inspection Pit
+TURNOUT HO "Peco Code 83 Inspection Pit SL-8356"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 11.692913 0.000000 90.000000
+ S 0 0.000000 0.000000 0.000000 11.692913 0.000000
+ F 15720651 0.000000 4
+ 0.000000 0.551091 0
+ 11.692913 0.551091 0
+ 11.692913 -0.551091 0
+ 0.000000 -0.551091 0
+ F 12632256 0.000000 4
+ 0.000000 0.280000 0
+ 0.560000 0.280000 0
+ 0.560000 -0.280000 0
+ 0.000000 -0.280000 0
+ L 0 0.020000 0.000000 0.280000 0.000000 -0.280000
+ L 0 0.020000 0.112000 0.280000 0.112000 -0.280000
+ L 0 0.020000 0.224000 0.280000 0.224000 -0.280000
+ L 0 0.020000 0.336000 0.280000 0.336000 -0.280000
+ L 0 0.020000 0.448000 0.280000 0.448000 -0.280000
+ L 0 0.020000 0.560000 0.280000 0.560000 -0.280000
+ F 12632256 0.000000 4
+ 11.132913 0.280000 0
+ 11.692913 0.280000 0
+ 11.692913 -0.280000 0
+ 11.132913 -0.280000 0
+ L 0 0.020000 11.132913 0.280000 11.132913 -0.280000
+ L 0 0.020000 11.244913 0.280000 11.244913 -0.280000
+ L 0 0.020000 11.356913 0.280000 11.356913 -0.280000
+ L 0 0.020000 11.468913 0.280000 11.468913 -0.280000
+ L 0 0.020000 11.580913 0.280000 11.580913 -0.280000
+ L 0 0.020000 11.692913 0.280000 11.692913 -0.280000
+ A 0 0.020000 0.062500 0.974409 0.000000 0.000000 360.000000
+ A 0 0.020000 0.062500 2.923228 0.000000 0.000000 360.000000
+ A 0 0.020000 0.062500 4.872047 0.000000 0.000000 360.000000
+ A 0 0.020000 0.062500 6.820866 0.000000 0.000000 360.000000
+ A 0 0.020000 0.062500 8.769685 0.000000 0.000000 360.000000
+ A 0 0.020000 0.062500 10.718504 0.000000 0.000000 360.000000
+ L 0 0.020000 0.000000 0.551091 11.692913 0.551091
+ L 0 0.020000 0.000000 0.280000 11.692913 0.28000
+ L 0 0.020000 0.000000 -0.280000 11.692913 -0.280000
+ L 0 0.020000 0.000000 -0.551091 11.692913 -0.551091
+END
+TURNOUT HO "Peco Code 83 Inspection Pit(Stair End) SL-8356A"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 1.948819 0.000000 90.000000
+ S 0 0.000000 0.000000 0.000000 1.948819 0.000000
+ F 15720651 0.000000 4
+ 0.000000 0.551091 0
+ 1.948819 0.551091 0
+ 1.948819 -0.551091 0
+ 0.000000 -0.551091 0
+ F 12632256 0.000000 4
+ 0.000000 0.280000 0
+ 0.560000 0.280000 0
+ 0.560000 -0.280000 0
+ 0.000000 -0.280000 0
+ L 0 0.020000 0.000000 0.280000 0.000000 -0.280000
+ L 0 0.020000 0.112000 0.280000 0.112000 -0.280000
+ L 0 0.020000 0.224000 0.280000 0.224000 -0.280000
+ L 0 0.020000 0.336000 0.280000 0.336000 -0.280000
+ L 0 0.020000 0.448000 0.280000 0.448000 -0.280000
+ L 0 0.020000 0.560000 0.280000 0.560000 -0.280000
+ A 0 0.020000 0.062500 0.974409 0.000000 0.000000 360.000000
+ L 0 0.020000 0.000000 0.551091 1.948819 0.551091
+ L 0 0.020000 0.000000 0.280000 1.948819 0.28000
+ L 0 0.020000 0.000000 -0.280000 1.948819 -0.280000
+ L 0 0.020000 0.000000 -0.551091 1.948819 -0.551091
+
+END
+TURNOUT HO "Peco Code 83 Inspection Pit(Mid Section) SL-8356B"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 1.948819 0.000000 90.000000
+ S 0 0.000000 0.000000 0.000000 1.948819 0.000000
+ F 15720651 0.000000 4
+ 0.000000 0.551091 0
+ 1.948819 0.551091 0
+ 1.948819 -0.551091 0
+ 0.000000 -0.551091 0
+ A 0 0.020000 0.062500 0.974409 0.000000 0.000000 360.000000
+ L 0 0.020000 0.000000 0.551091 1.948819 0.551091
+ L 0 0.020000 0.000000 0.280000 1.948819 0.28000
+ L 0 0.020000 0.000000 -0.280000 1.948819 -0.280000
+ L 0 0.020000 0.000000 -0.551091 1.948819 -0.551091
+END \ No newline at end of file
diff --git a/app/bin/unittest/testfiles/atl83ho.xtp b/app/bin/unittest/testfiles/atl83ho.xtp
new file mode 100644
index 0000000..02452da
--- /dev/null
+++ b/app/bin/unittest/testfiles/atl83ho.xtp
@@ -0,0 +1,561 @@
+CONTENTS Atlas Code 83 - HO Scale
+SUBCONTENTS Atlas HO-Scale C83 - Switched
+TURNOUT HO "Atlas #6 Left C83 Super 505"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.000000 270.000000
+ E 11.613000 0.000000 90.000000
+ E 11.613000 1.335000 80.500000
+ S 0 0.000000 0.000000 0.000000 0.649600 0.000000
+ S 0 0.000000 0.649600 0.000000 11.613000 0.000000
+ C 0 0.000000 -35.933506 0.649648 35.933506 170.499924 9.500152
+ S 0 0.000000 6.580428 0.492821 11.613000 1.335000
+ END
+TURNOUT HO "Atlas #6 Right C83 Super 506"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.000000 270.000000
+ E 11.613000 0.000000 90.000000
+ E 11.613000 -1.335000 99.500000
+ S 0 0.000000 0.000000 0.000000 0.649600 0.000000
+ S 0 0.000000 0.649600 0.000000 11.613000 0.000000
+ C 0 0.000000 35.933506 0.649457 -35.933506 0.000076 9.500152
+ S 0 0.000000 6.580428 -0.492821 11.613000 -1.335000
+ END
+TURNOUT HO "Atlas C83 Left Remote/Manual Snap Switch 540/542"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.000000 270.000000
+ E 9.000000 0.000000 90.000000
+ E 7.656300 1.085500 70.000000
+ S 0 0.000000 0.000000 0.000000 2.149777 0.000000
+ S 0 0.000000 2.149777 0.000000 9.000000 0.000000
+ C 0 0.000000 -14.315249 2.149796 14.315249 159.999924 20.000152
+ S 0 0.000000 7.045913 0.863327 7.656300 1.085500
+ END
+TURNOUT HO "Atlas C83 Right Remote/Manual Snap Switch 541/543"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.000000 270.000000
+ E 9.000000 0.000000 90.000000
+ E 7.656300 -1.085500 110.000000
+ S 0 0.000000 0.000000 0.000000 2.149777 0.000000
+ S 0 0.000000 2.149777 0.000000 9.000000 0.000000
+ C 0 0.000000 14.315249 2.149720 -14.315249 0.000076 20.000152
+ S 0 0.000000 7.045913 -0.863327 7.656300 -1.085500
+ END
+TURNOUT HO "Atlas C83 Left Remote/Manual 22in Snap Switch 546/544"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.000000 270.000000
+ E 10.500000 0.000000 90.000000
+ E 10.500000 1.674650 67.500000
+ S 0 0.000000 0.000000 0.000000 2.730631 0.000000
+ S 0 0.000000 2.730631 0.000000 10.500000 0.000000
+ C 0 0.000000 -18.734087 2.730656 18.734087 157.500000 22.500000
+ S 0 0.000000 9.899897 1.451414 10.500000 1.674650
+ END
+TURNOUT HO "Atlas C83 Right Remote/Manual 22in Snap Switch 547/545"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.000000 270.000000
+ E 10.500000 0.000000 90.000000
+ E 10.500000 -1.674650 112.500000
+ S 0 0.000000 0.000000 0.000000 2.730631 0.000000
+ S 0 0.000000 2.730631 0.000000 10.500000 0.000000
+ C 0 0.000000 18.734087 2.730656 -18.734087 0.000000 22.500000
+ S 0 0.000000 9.899897 -1.451414 10.500000 -1.674650
+ END
+TURNOUT HO "Atlas C83 Wye Switch 560"
+ P "Left" 1 2 3
+ P "Right" 1 4 5
+ E 0.000000 0.000000 270.000000
+ E 7.805900 0.655500 81.000000
+ E 7.805900 -0.655500 99.000000
+ S 0 0.000000 0.000000 0.000000 0.649600 0.000000
+ C 0 0.000000 -38.343529 0.649651 38.343529 170.999924 9.000152
+ S 0 0.000000 6.647945 0.472088 7.805900 0.655500
+ C 0 0.000000 38.343529 0.649447 -38.343529 0.000076 9.000152
+ S 0 0.000000 6.647945 -0.472088 7.805900 -0.655500
+ END
+TURNOUT HO "Atlas #6 Left C83 Customline 563"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.000000 270.000000
+ E 12.000000 0.000000 90.000000
+ E 9.999000 0.874800 81.000000
+ S 0 0.000000 0.000000 0.000000 0.649600 0.000000
+ S 0 0.000000 0.649600 0.000000 12.000000 0.000000
+ C 0 0.000000 -48.616653 0.649665 48.616653 170.999924 9.000152
+ S 0 0.000000 8.255041 0.598571 9.999000 0.874800
+ END
+TURNOUT HO "Atlas #6 Right C83 Customline 564"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.000000 270.000000
+ E 12.000000 0.000000 90.000000
+ E 9.999000 -0.874800 99.000000
+ S 0 0.000000 0.000000 0.000000 0.649600 0.000000
+ S 0 0.000000 0.649600 0.000000 12.000000 0.000000
+ C 0 0.000000 48.616653 0.649406 -48.616653 0.000076 9.000152
+ S 0 0.000000 8.255041 -0.598571 9.999000 -0.874800
+ END
+TURNOUT HO "Atlas #4 Left C83 Customline 561"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.000000 270.000000
+ E 9.000000 0.000000 90.000000
+ E 8.000000 1.000000 75.522476
+ S 0 0.000000 0.000000 0.000000 0.776702 0.000000
+ S 0 0.000000 0.776702 0.000000 9.000000 0.000000
+ C 0 0.000000 -26.377309 0.776737 26.377309 165.522400 14.477676
+ S 0 0.000000 7.371097 0.837607 8.000000 1.000000
+ END
+TURNOUT HO "Atlas #4 Right C83 Customline 562"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.000000 270.000000
+ E 9.000000 0.000000 90.000000
+ E 8.000000 -1.000000 104.477524
+ S 0 0.000000 0.000000 0.000000 0.776702 0.000000
+ S 0 0.000000 0.776702 0.000000 9.000000 0.000000
+ C 0 0.000000 26.377309 0.776597 -26.377309 0.000076 14.477676
+ S 0 0.000000 7.371097 -0.837607 8.000000 -1.000000
+ END
+TURNOUT HO "Atlas #8 Left C83 Customline 565"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.000000 270.000000
+ E 13.500000 0.000000 90.000000
+ E 11.400000 0.900000 82.819238
+ S 0 0.000000 0.000000 0.000000 0.649600 0.000000
+ S 0 0.000000 0.649600 0.000000 13.500000 0.000000
+ C 0 0.000000 -57.485559 0.649676 57.485559 172.819162 7.180914
+ S 0 0.000000 7.835446 0.450893 11.400000 0.900000
+ END
+TURNOUT HO "Atlas #8 Right C83 Customline 566"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.000000 270.000000
+ E 13.500000 0.000000 90.000000
+ E 11.400000 -0.900000 97.180762
+ S 0 0.000000 0.000000 0.000000 0.649600 0.000000
+ S 0 0.000000 0.649600 0.000000 13.500000 0.000000
+ C 0 0.000000 57.485559 0.649371 -57.485559 0.000076 7.180914
+ S 0 0.000000 7.835446 -0.450893 11.400000 -0.900000
+ END
+TURNOUT HO "Atlas Curve Left C83 Customline 595"
+ P "Normal" 1
+ P "Reverse" 2
+ E 0.000000 0.000000 270.000000
+ E 15.000000 4.019238 60.000000
+ E 13.392751 4.546227 52.500000
+ C 0 0.000000 30.000000 0.000000 30.000000 150.000000 30.000000
+ C 0 0.000000 22.000000 0.000000 22.000000 142.500000 37.500000
+ END
+TURNOUT HO "Atlas Curve Right C83 Customline 596"
+ P "Normal" 1
+ P "Reverse" 2
+ E 0.000000 0.000000 270.000000
+ E 15.000000 -4.019238 120.000000
+ E 13.392751 -4.546227 127.500000
+ C 0 0.000000 30.000000 0.000000 -30.000000 0.000000 30.000000
+ C 0 0.000000 22.000000 0.000000 -22.000000 0.000000 37.500000
+ END
+
+
+
+SUBCONTENTS Atlas HO-Scale C83 - Crossings
+TURNOUT HO "Atlas 12.5D Crossing 571"
+ P "Normal" 1 0 2
+ E 0.000000 0.000000 270.000000
+ E 9.000000 0.000000 90.000000
+ E 0.106666 0.973972 282.500000
+ E 8.893334 -0.973972 102.500000
+ S 0 0.000000 0.000000 0.000000 9.000000 0.000000
+ S 0 0.000000 0.106666 0.973972 8.893334 -0.973972
+ END
+TURNOUT HO "Atlas 571 Fitter Piece 571a"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 0.100000 0.000000 90.000000
+ S 0 0 0.000000 0.000000 0.100000 0.000000
+ END
+TURNOUT HO "Atlas 19D Crossing 572"
+ P "Normal" 1 0 2
+ E 0.000000 0.000000 270.000000
+ E 6.082500 0.000000 90.000000
+ E 0.165690 0.990130 289.000000
+ E 5.916810 -0.990130 109.000000
+ S 0 0.000000 0.000000 0.000000 6.082500 0.000000
+ S 0 0.000000 0.165690 0.990130 5.916810 -0.990130
+ END
+TURNOUT HO "Atlas 30D Crossing 573"
+ P "Normal" 1 0 2
+ E 0.000000 0.000000 270.000000
+ E 4.000000 0.000000 90.000000
+ E 0.267947 0.999997 300.000000
+ E 3.732053 -0.999997 120.000000
+ S 0 0.000000 0.000000 0.000000 4.000000 0.000000
+ S 0 0.000000 0.267947 0.999997 3.732053 -0.999997
+ END
+TURNOUT HO "Atlas 25D Crossing 574"
+ P "Normal" 1 0 2
+ E 0.000000 0.000000 270.000000
+ E 4.608100 0.000000 90.000000
+ E 0.215870 0.973730 295.000000
+ E 4.392230 -0.973730 115.000000
+ S 0 0.000000 0.000000 0.000000 4.608100 0.000000
+ S 0 0.000000 0.215870 0.973730 4.392230 -0.973730
+ END
+TURNOUT HO "Atlas 45D Crossing 575"
+ P "Normal" 1 0 2
+ E 0.000000 0.000000 270.000000
+ E 3.000000 0.000000 90.000000
+ E 0.439338 1.060658 315.000000
+ E 2.560662 -1.060658 135.000000
+ S 0 0.000000 0.000000 0.000000 3.000000 0.000000
+ S 0 0.000000 0.439338 1.060658 2.560662 -1.060658
+ END
+TURNOUT HO "Atlas 60D Crossing 576"
+ P "Normal" 1 0 2
+ E 0.000000 0.000000 270.000000
+ E 3.000000 0.000000 90.000000
+ E 0.749997 1.299036 330.000000
+ E 2.250003 -1.299036 150.000000
+ S 0 0.000000 0.000000 0.000000 3.000000 0.000000
+ S 0 0.000000 0.749997 1.299036 2.250003 -1.299036
+ END
+TURNOUT HO "Atlas 90D Crossing 577"
+ P "Normal" 1 0 2
+ E 0.000000 0.000000 270.000000
+ E 2.000000 0.000000 90.000000
+ E 1.000003 1.000000 360.000000
+ E 0.999997 -1.000000 180.000000
+ S 0 0.000000 0.000000 0.000000 2.000000 0.000000
+ S 0 0.000000 1.000003 1.000000 0.999997 -1.000000
+ END
+
+SUBCONTENTS Atlas HO-Scale C83 - Straight Track
+TURNOUT HO "Atlas C83 9"" Straight 510/520"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 9.000000 0.000000 90.000000
+ S 0 0 0.000000 0.000000 9.000000 0.000000
+ END
+TURNOUT HO "Atlas C83 6"" Straight 521"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 6.000000 0.000000 90.000000
+ S 0 0 0.000000 0.000000 6.000000 0.000000
+ END
+TURNOUT HO "Atlas C83 3"" Straight 522"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 3.000000 0.000000 90.000000
+ S 0 0 0.000000 0.000000 3.000000 0.000000
+ END
+TURNOUT HO "Atlas C83 1.5"" Straight 523"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 1.500000 0.000000 90.000000
+ S 0 0 0.000000 0.000000 1.500000 0.000000
+ END
+TURNOUT HO "Atlas C83 2.0"" Straight 525"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 2.000000 0.000000 90.000000
+ S 0 0 0.000000 0.000000 2.000000 0.000000
+ END
+TURNOUT HO "Atlas C83 0.75"" Straight 524a"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 0.750000 0.000000 90.000000
+ S 0 0 0.000000 0.000000 0.750000 0.000000
+ END
+TURNOUT HO "Atlas C83 1"" Straight 524b"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 1.000000 0.000000 90.000000
+ S 0 0 0.000000 0.000000 1.000000 0.000000
+ END
+TURNOUT HO "Atlas C83 1.25"" Straight 524c"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 1.250000 0.000000 90.000000
+ S 0 0 0.000000 0.000000 1.250000 0.000000
+ END
+TURNOUT HO "Atlas C83 1.5"" Straight 524d"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 1.500000 0.000000 90.000000
+ S 0 0 0.000000 0.000000 1.500000 0.000000
+ END
+TURNOUT HO "Atlas C83 2.0"" Straight 524e"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 2.000000 0.000000 90.000000
+ S 0 0 0.000000 0.000000 2.000000 0.000000
+ END
+TURNOUT HO "Atlas C83 2.5"" Straight 524f"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 2.500000 0.000000 90.000000
+ S 0 0 0.000000 0.000000 2.500000 0.000000
+ END
+
+SUBCONTENTS Atlas HO-Scale C83 - Curve Track
+TURNOUT HO "Atlas C83 15"" 30D Curve 511/530"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 7.499994 -2.009616 120.000000
+ C 0 0 15.000000 0.000000 -15.000000 0.000000 30.000000
+ END
+TURNOUT HO "Atlas C83 15"" 15D Curve 531"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 3.882282 0.511112 75.000000
+ C 0 0 -15.000000 0.000020 15.000000 165.000076 15.000000
+ END
+TURNOUT HO "Atlas C83 18"" 30D Curve 512/532"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 8.999993 -2.411539 120.000000
+ C 0 0 18.000000 0.000000 -18.000000 0.000000 30.000000
+ END
+TURNOUT HO "Atlas C83 18"" 15D Curve 533"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 4.658739 -0.613334 105.000000
+ C 0 0 18.000000 0.000000 -18.000000 0.000000 15.000000
+ END
+TURNOUT HO "Atlas C83 18"" 10D Curve 534"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 3.125665 -0.273460 100.000000
+ C 0 0 18.000000 0.000000 -18.000000 0.000000 10.000000
+ END
+TURNOUT HO "Atlas C83 22"" 22.5D Curve 513/535"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 8.419029 -1.674647 112.500000
+ C 0 0 22.000000 0.000000 -22.000000 0.000000 22.500000
+ END
+TURNOUT HO "Atlas C83 22"" 7.5D Curve 537"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 2.871574 0.188213 82.500000
+ C 0 0.000000 -22.000000 0.000029 22.000000 172.500076 7.500000
+ END
+TURNOUT HO "Atlas C83 24"" 22.5D Curve 536"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 9.184395 1.826888 67.500000
+ C 0 0.000000 -24.000000 0.000032 24.000000 157.500076 22.500000
+ END
+
+
+SUBCONTENTS Atlas HO-Scale C83 - Misc Track
+TURNOUT HO "Atlas C83 9"" Straight Rerailer 519"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 9.000000 0.000000 90.000000
+ S 0 0 0.000000 0.000000 9.000000 0.000000
+ F 12566463 0.000000 4
+ 0.500000 0.584375 0
+ 1.000000 0.334375 0
+ 8.000000 0.334375 0
+ 8.500000 0.584375 0
+ F 12566463 0.000000 6
+ 0.500000 0.000000 0
+ 1.000000 -0.250000 0
+ 8.000000 -0.250000 0
+ 8.500000 0.000000 0
+ 8.000000 0.250000 0
+ 1.000000 0.250000 0
+ F 12566463 0.000000 4
+ 0.500000 -0.584375 0
+ 1.000000 -0.334375 0
+ 8.000000 -0.334375 0
+ 8.500000 -0.584375 0
+ END
+TURNOUT HO "Atlas C83 Bumper 518"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ S 0 0 0.000000 0.000000 3.750000 0.000000
+ END
+
+SUBCONTENTS Atlas HO-Scale C83 - Bridges
+TURNOUT HO "Atlas C83 9"" Warren Truss Bridge 590"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 9.000000 0.000000 90.000000
+ S 0 0 0.000000 0.000000 9.000000 0.000000
+ F 11579568 0.000000 4
+ 0.000000 1.200000 0
+ 9.000000 1.200000 0
+ 9.000000 0.625000 0
+ 0.000000 0.625000 0
+ F 11579568 0.000000 4
+ 0.000000 -1.200000 0
+ 9.000000 -1.200000 0
+ 9.000000 -0.625000 0
+ 0.000000 -0.625000 0
+ L 8421504 0.100000 0.000000 1.200000 9.000000 1.200000
+ L 8421504 0.100000 0.000000 -1.200000 9.000000 -1.200000
+END
+TURNOUT HO "Atlas C83 9"" Deck Truss Bridge 591"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 9.000000 0.000000 90.000000
+ S 0 0 0.000000 0.000000 9.000000 0.000000
+ L 11579568 0.050000 0.000000 0.700000 9.000000 0.700000
+ L 11579568 0.050000 0.000000 0.600000 0.000000 0.700000
+ L 11579568 0.050000 9.000000 0.600000 9.000000 0.700000
+ L 11579568 0.050000 0.000000 -0.700000 9.000000 -0.700000
+ L 11579568 0.050000 0.000000 -0.600000 0.000000 -0.700000
+ L 11579568 0.050000 9.000000 -0.600000 9.000000 -0.700000
+END
+TURNOUT HO "Atlas C83 9"" Plate Girder Bridge 592"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 9.000000 0.000000 90.000000
+ S 0 0 0.000000 0.000000 9.000000 0.000000
+ F 11579568 0.000000 4
+ 0.000000 1.300000 0
+ 9.000000 1.300000 0
+ 9.000000 0.625000 0
+ 0.000000 0.625000 0
+ F 11579568 0.000000 4
+ 0.000000 -1.300000 0
+ 9.000000 -1.300000 0
+ 9.000000 -0.625000 0
+ 0.000000 -0.625000 0
+ L 8421504 0.100000 0.000000 1.300000 9.000000 1.300000
+ L 8421504 0.050000 0.900000 1.000000 0.900000 1.300000
+ L 8421504 0.050000 2.700000 1.000000 2.700000 1.300000
+ L 8421504 0.050000 4.500000 1.000000 4.500000 1.300000
+ L 8421504 0.050000 6.300000 1.000000 6.300000 1.300000
+ L 8421504 0.050000 8.100000 1.000000 8.100000 1.300000
+ L 8421504 0.100000 0.000000 -1.300000 9.000000 -1.300000
+ L 8421504 0.050000 0.900000 -1.000000 0.900000 -1.300000
+ L 8421504 0.050000 2.700000 -1.000000 2.700000 -1.300000
+ L 8421504 0.050000 4.500000 -1.000000 4.500000 -1.300000
+ L 8421504 0.050000 6.300000 -1.000000 6.300000 -1.300000
+ L 8421504 0.050000 8.100000 -1.000000 8.100000 -1.300000
+END
+TURNOUT HO "Atlas C83 18"" Through Truss Bridge 593/594"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 18.000000 0.000000 90.000000
+ S 0 0 0.000000 0.000000 18.000000 0.000000
+ L 11579568 0.050000 0.000000 1.200000 18.000000 1.200000
+ L 11579568 0.050000 0.000000 0.750000 0.000000 1.200000
+ L 11579568 0.050000 18.000000 0.750000 18.000000 1.200000
+ L 11579568 0.050000 0.000000 -1.200000 18.000000 -1.200000
+ L 11579568 0.050000 0.000000 -0.750000 0.000000 -1.200000
+ L 11579568 0.050000 18.000000 -0.750000 18.000000 -1.200000
+ L 11579568 0.050000 3.000000 -1.200000 3.000000 1.200000
+ L 11579568 0.050000 6.000000 -1.200000 6.000000 1.200000
+ L 11579568 0.050000 9.000000 -1.200000 9.000000 1.200000
+ L 11579568 0.050000 12.000000 -1.200000 12.000000 1.200000
+ L 11579568 0.050000 15.000000 -1.200000 15.000000 1.200000
+ L 11579568 0.050000 3.000000 -1.200000 6.000000 1.200000
+ L 11579568 0.050000 3.000000 1.200000 6.000000 -1.200000
+ L 11579568 0.050000 6.000000 -1.200000 9.000000 1.200000
+ L 11579568 0.050000 6.000000 1.200000 9.000000 -1.200000
+ L 11579568 0.050000 9.000000 -1.200000 12.000000 1.200000
+ L 11579568 0.050000 9.000000 1.200000 12.000000 -1.200000
+ L 11579568 0.050000 12.000000 -1.200000 15.000000 1.200000
+ L 11579568 0.050000 12.000000 1.200000 15.000000 -1.200000
+END
+TURNOUT HO "Atlas C83 9"" Single-Track Thru-Girder Bridge 70000027"
+ P "P0" 1
+ E 0.000000 0.000000 270.000000
+ E 9.000000 0.000000 90.000000
+ S 0 0.000000 0.000000 0.000000 9.000000 0.000000
+ L 11579568 0.100000 0.500000 1.000000 8.500000 1.000000
+ L 11579568 0.050000 0.750000 1.000000 0.750000 0.625000
+ L 11579568 0.050000 2.000000 1.000000 2.000000 0.625000
+ L 11579568 0.050000 3.250000 1.000000 3.250000 0.625000
+ L 11579568 0.050000 4.500000 1.000000 4.500000 0.625000
+ L 11579568 0.050000 5.750000 1.000000 5.750000 0.625000
+ L 11579568 0.050000 7.000000 1.000000 7.000000 0.625000
+ L 11579568 0.050000 8.250000 1.000000 8.250000 0.625000
+ L 11579568 0.100000 0.500000 -1.000000 8.500000 -1.000000
+ L 11579568 0.050000 0.750000 -1.000000 0.750000 -0.625000
+ L 11579568 0.050000 2.000000 -1.000000 2.000000 -0.625000
+ L 11579568 0.050000 3.250000 -1.000000 3.250000 -0.625000
+ L 11579568 0.050000 4.500000 -1.000000 4.500000 -0.625000
+ L 11579568 0.050000 5.750000 -1.000000 5.750000 -0.625000
+ L 11579568 0.050000 7.000000 -1.000000 7.000000 -0.625000
+ L 11579568 0.050000 8.250000 -1.000000 8.250000 -0.625000
+END
+TURNOUT HO "Atlas C83 9"" Double-Track Thru-Girder Bridge 70000028"
+ P "P0" 1 0 1
+ E 0.000000 0.000000 270.000000
+ E 9.000000 0.000000 90.000000
+ E 0.000000 -2.000000 270.000000
+ E 9.000000 -2.000000 90.000000
+ S 0 0.000000 0.000000 0.000000 9.000000 0.000000
+ S 0 0.000000 0.000000 -2.000000 9.000000 -2.000000
+ L 11579568 0.100000 0.500000 1.000000 8.500000 1.000000
+
+ L 11579568 0.050000 0.750000 1.000000 0.750000 0.625000
+ L 11579568 0.050000 2.000000 1.000000 2.000000 0.625000
+ L 11579568 0.050000 3.250000 1.000000 3.250000 0.625000
+ L 11579568 0.050000 4.500000 1.000000 4.500000 0.625000
+ L 11579568 0.050000 5.750000 1.000000 5.750000 0.625000
+ L 11579568 0.050000 7.000000 1.000000 7.000000 0.625000
+ L 11579568 0.050000 8.250000 1.000000 8.250000 0.625000
+
+ L 11579568 0.050000 0.750000 -1.000000 0.750000 -0.625000
+ L 11579568 0.050000 2.000000 -1.000000 2.000000 -0.625000
+ L 11579568 0.050000 3.250000 -1.000000 3.250000 -0.625000
+ L 11579568 0.050000 4.500000 -1.000000 4.500000 -0.625000
+ L 11579568 0.050000 5.750000 -1.000000 5.750000 -0.625000
+ L 11579568 0.050000 7.000000 -1.000000 7.000000 -0.625000
+ L 11579568 0.050000 8.250000 -1.000000 8.250000 -0.625000
+
+ L 11579568 0.100000 0.500000 -1.000000 8.500000 -1.000000
+
+ L 11579568 0.050000 0.750000 -1.000000 0.750000 -1.375000
+ L 11579568 0.050000 2.000000 -1.000000 2.000000 -1.375000
+ L 11579568 0.050000 3.250000 -1.000000 3.250000 -1.375000
+ L 11579568 0.050000 4.500000 -1.000000 4.500000 -1.375000
+ L 11579568 0.050000 5.750000 -1.000000 5.750000 -1.375000
+ L 11579568 0.050000 7.000000 -1.000000 7.000000 -1.375000
+ L 11579568 0.050000 8.250000 -1.000000 8.250000 -1.375000
+
+ L 11579568 0.050000 0.750000 -3.000000 0.750000 -2.625000
+ L 11579568 0.050000 2.000000 -3.000000 2.000000 -2.625000
+ L 11579568 0.050000 3.250000 -3.000000 3.250000 -2.625000
+ L 11579568 0.050000 4.500000 -3.000000 4.500000 -2.625000
+ L 11579568 0.050000 5.750000 -3.000000 5.750000 -2.625000
+ L 11579568 0.050000 7.000000 -3.000000 7.000000 -2.625000
+ L 11579568 0.050000 8.250000 -3.000000 8.250000 -2.625000
+
+ L 11579568 0.100000 0.500000 -3.000000 8.500000 -3.000000
+END
+TURNOUT HO "Atlas C83 9"" Single-Track Add-On Thru-Girder Bridge 70000029"
+ P "P0" 1
+ E 0.000000 0.000000 270.000000
+ E 9.000000 0.000000 90.000000
+ S 0 0.000000 0.000000 0.000000 9.000000 0.000000
+ #L 11579568 0.100000 0.500000 1.000000 8.500000 1.000000
+ L 11579568 0.050000 0.750000 1.000000 0.750000 0.625000
+ L 11579568 0.050000 2.000000 1.000000 2.000000 0.625000
+ L 11579568 0.050000 3.250000 1.000000 3.250000 0.625000
+ L 11579568 0.050000 4.500000 1.000000 4.500000 0.625000
+ L 11579568 0.050000 5.750000 1.000000 5.750000 0.625000
+ L 11579568 0.050000 7.000000 1.000000 7.000000 0.625000
+ L 11579568 0.050000 8.250000 1.000000 8.250000 0.625000
+ L 11579568 0.100000 0.500000 -1.000000 8.500000 -1.000000
+ L 11579568 0.050000 0.750000 -1.000000 0.750000 -0.625000
+ L 11579568 0.050000 2.000000 -1.000000 2.000000 -0.625000
+ L 11579568 0.050000 3.250000 -1.000000 3.250000 -0.625000
+ L 11579568 0.050000 4.500000 -1.000000 4.500000 -0.625000
+ L 11579568 0.050000 5.750000 -1.000000 5.750000 -0.625000
+ L 11579568 0.050000 7.000000 -1.000000 7.000000 -0.625000
+ L 11579568 0.050000 8.250000 -1.000000 8.250000 -0.625000
+END
diff --git a/app/bin/unittest/testfiles/atlasn.xtp b/app/bin/unittest/testfiles/atlasn.xtp
new file mode 100644
index 0000000..882e94c
--- /dev/null
+++ b/app/bin/unittest/testfiles/atlasn.xtp
@@ -0,0 +1,697 @@
+CONTENTS Atlas N-Scale Track
+SUBCONTENTS Atlas N-Scale Track - Straight
+TURNOUT N "Atlas 5in Straight 2501"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 4.910000 0.000000 90.000000
+ S 0 0 0.000000 0.000000 4.910000 0.000000
+ END
+TURNOUT N "Atlas 2 1/2in Straight XXX"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 2.455000 0.000000 90.000000
+ S 0 0 0.000000 0.000000 2.455000 0.000000
+ END
+TURNOUT N "Atlas 1 1/4in Straight XXX"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 1.227500 0.000000 90.000000
+ S 0 0 0.000000 0.000000 1.227500 0.000000
+ END
+TURNOUT N "Atlas 5/8in Straight XXX"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 0.613750 0.000000 90.000000
+ S 0 0 0.000000 0.000000 0.613750 0.000000
+ END
+
+SUBCONTENTS Atlas N-Scale Track - Curved
+TURNOUT N "Atlas 9 3/4R full section 2510"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 4.875000 -1.306000 120.000000
+ C 0 0 9.750000 0.000000 -9.750000 0.000000 30.000000
+ END
+TURNOUT N "Atlas 9 3/4R half section 2511"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 2.523400 -0.332300 105.000000
+ C 0 0 9.750000 0.000000 -9.750000 0.002000 15.000000
+ END
+TURNOUT N "Atlas 11R full section 2520"
+ P "Normal" 1
+ E 0.000000 1.473718 270.000000
+ E 5.499996 0.000000 120.000000
+ C 0 0.000000 11.000000 0.000000 -9.526282 0.000000 30.000000
+ END
+TURNOUT N "Atlas 11R half section 2521"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 2.847000 -0.375000 105.000000
+ C 0 0 11.000000 0.000000 -11.000000 0.000000 15.000000
+ END
+TURNOUT N "Atlas 19R section 2526"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 4.917000 -0.646414 105.000000
+ C 0 0 19.000000 0.000000 -19.000000 0.000000 15.000000
+ END
+
+SUBCONTENTS Atlas N-Scale Track - Bumper / Rerailer
+# Bumper Track Design by Bob Blackwell
+TURNOUT N "Atlas Bumper Track 2536"
+ P "Normal" 1
+ E 0.000000 0.312508 270.000000
+ S 0 0.000000 0.000000 0.312508 2.750000 0.312512
+ F3 0 0.000000 4
+ 1.625000 0.625000 0
+ 2.500000 0.625000 0
+ 2.500000 0.000000 0
+ 1.625000 0.000000 0
+ END
+# Rerailer Track Design by Bob Blackwell
+TURNOUT N "Atlas Rerailer Track 2532"
+ P "NORMAL" 1
+ E 0.000000 0.479167 270.000000
+ E 4.906250 0.479167 90.000000
+ S 0 0.000000 0.000000 0.479167 4.906250 0.479167
+ L3 0 0.020833 1.609375 0.729169 0 3.292817 0.729169 0
+ L3 0 0.020833 1.000000 0.947917 0 3.914062 0.947917 0
+ L3 0 0.020833 3.906248 0.010417 0 3.906249 0.947917 0
+ L3 0 0.020833 3.914062 0.010417 0 1.000000 0.010417 0
+ L3 0 0.020833 0.999998 0.947917 0 1.000001 0.010417 0
+ L3 0 0.020833 1.609375 0.229170 0 3.296875 0.229172 0
+ L3 0 0.020833 1.609375 0.229167 0 1.000000 0.010417 0
+ L3 0 0.020833 3.296875 0.229167 0 3.906250 0.010417 0
+ L3 0 0.020833 1.609375 0.729167 0 1.000000 0.947917 0
+ L3 0 0.020833 3.296875 0.729167 0 3.906250 0.947917 0
+ L3 0 0.020833 1.734375 0.604167 0 3.171875 0.604169 0
+ L3 0 0.020833 1.734375 0.354167 0 3.171875 0.354169 0
+ L3 0 0.020833 1.312500 0.479167 0 1.734375 0.604167 0
+ L3 0 0.020833 1.312500 0.479167 0 1.734375 0.354167 0
+ L3 0 0.020833 3.171875 0.604167 0 3.593750 0.479167 0
+ L3 0 0.020833 3.171875 0.354167 0 3.593750 0.479167 0
+ END
+
+SUBCONTENTS Atlas N-Scale Track - Bridges
+# Warren Truss Bridge Design by Bob Blackwell
+TURNOUT N "Atlas Warren Truss Bridge 2546"
+ P "Normal" 1
+ E 0.010420 0.744792 269.999848
+ E 4.916670 0.744798 89.999848
+ S 0 0.000000 0.010420 0.744792 4.916670 0.744798
+ L3 0 0.020833 0.010420 0.010417 0 4.916670 0.010417 0
+ L3 0 0.020833 4.916665 0.010417 0 4.916669 1.479167 0
+ L3 0 0.020833 4.916670 1.479167 0 0.010420 1.479167 0
+ L3 0 0.020833 0.010419 1.479167 0 0.010417 0.010417 0
+ L3 0 0.020833 4.916670 0.104167 0 0.010420 0.104167 0
+ L3 0 0.020833 4.916670 1.385417 0 0.010420 1.385417 0
+ L3 0 0.020833 0.713545 1.479167 0 0.713545 1.385417 0
+ L3 0 0.020833 4.197920 1.479167 0 4.197920 1.385417 0
+ L3 0 0.020833 0.713545 0.104167 0 0.713545 0.010417 0
+ L3 0 0.020833 4.197920 0.104167 0 4.197920 0.010417 0
+ END
+# Deck Truss Bridge Design by Bob Blackwell
+TURNOUT N "Atlas Deck Truss Bridge 2547"
+ P "Normal" 1
+ E 0.010418 0.385417 269.999854
+ E 4.916668 0.385423 89.999854
+ S 0 0.000000 0.010418 0.385417 4.916668 0.385423
+ L3 0 0.020833 0.010418 0.010417 0 4.916668 0.010417 0
+ L3 0 0.020833 4.916667 0.010417 0 4.916668 0.760417 0
+ L3 0 0.020833 4.916668 0.760417 0 0.010418 0.760417 0
+ L3 0 0.020833 0.010418 0.760417 0 0.010417 0.010417 0
+ L3 0 0.020833 4.916668 0.072917 0 0.010418 0.072917 0
+ L3 0 0.020833 4.916668 0.697917 0 0.010418 0.697917 0
+ END
+# Plate Girder Bridge Design by Bob Blackwell
+TURNOUT N "Atlas Plate Girder Bridge 2548"
+ P "Normal" 1
+ E 0.010417 0.760417 269.999848
+ E 4.916667 0.760423 89.999848
+ S 0 0.000000 0.010417 0.760417 4.916667 0.760423
+ L3 0 0.020833 0.010417 0.010417 0 4.916667 0.010417 0
+ L3 0 0.020833 4.916667 0.010417 0 4.916667 1.510417 0
+ L3 0 0.020833 4.916667 1.510417 0 0.010417 1.510417 0
+ L3 0 0.020833 0.010417 1.510417 0 0.010417 0.010417 0
+ L3 0 0.020833 4.916667 0.104180 0 0.010417 0.104173 0
+ L3 0 0.020833 4.916667 1.416667 0 0.010417 1.416667 0
+ END
+TURNOUT N "Atlas Through Truss Bridge 10in 2570/71"
+ P "Normal" 1
+ E 0.000000 0.000000 270.000000
+ E 10.000000 0.000000 90.000000
+ S 0 0 0.000000 0.000000 10.000000 0.000000
+ L 0 0.053333 0.000000 0.84375 10.000000 0.84375
+ L 0 0.053333 0.000000 -0.84375 10.000000 -0.84375
+ L 0 0.053333 1.625000 -0.84375 1.625000 0.84375
+ L 0 0.053333 1.625000 -0.84375 3.312500 0.84375
+ L 0 0.053333 3.312500 -0.84375 1.625000 0.84375
+ L 0 0.053333 3.312500 -0.84375 3.312500 0.84375
+ L 0 0.053333 3.312500 -0.84375 5.000000 0.84375
+ L 0 0.053333 5.000000 -0.84375 3.312500 0.84375
+ L 0 0.053333 5.000000 -0.84375 5.000000 0.84375
+ L 0 0.053333 5.000000 -0.84375 6.687500 0.84375
+ L 0 0.053333 6.687500 -0.84375 5.000000 0.84375
+ L 0 0.053333 6.687500 -0.84375 6.687500 0.84375
+ L 0 0.053333 6.687500 -0.84375 8.375000 0.84375
+ L 0 0.053333 8.375000 -0.84375 6.687500 0.84375
+ L 0 0.053333 8.375000 -0.84375 8.375000 0.84375
+ END
+
+SUBCONTENTS Atlas N-Scale Track - Crossings
+# 90 Degree Crossing Design by Bob Blackwell
+TURNOUT N "Atlas 90 Degree Crossing 2569"
+ P "Normal" 1 0 2
+ E 0.000000 0.000000 270.000000
+ E 4.910000 0.000000 90.000000
+ E 2.455000 2.455000 0.000000
+ E 2.455000 -2.455000 180.000000
+ S 0 0 0.000000 0.000000 4.910000 0.000000
+ S 0 0 2.455000 2.455000 2.455000 -2.455000
+ END
+# 60 Degree Crossing Design by Bob Blackwell
+TURNOUT N "Atlas 60 Degree Crossing 2568"
+ P "Normal" 1 0 2
+ E 0.000000 1.650872 270.000000
+ E 2.859358 3.301727 29.999802
+ E 3.812500 1.650872 90.000000
+ E 0.953116 0.000000 209.999802
+ S 0 0.000000 0.000000 1.650872 3.812500 1.650872
+ S 0 0.000000 2.859358 3.301727 0.953116 0.000000
+ END
+# 45 Degree Crossing Design by Bob Blackwell
+TURNOUT N "Atlas 45 Degree Crossing 2567"
+ P "Normal" 1 0 2
+ E 0.000000 1.414217 270.000000
+ E 3.414208 2.828431 44.999886
+ E 4.000000 1.414217 90.000000
+ E 0.585785 0.000000 224.999886
+ S 0 0.000000 0.000000 1.414217 4.000000 1.414217
+ S 0 0.000000 3.414208 2.828431 0.585785 0.000000
+ END
+# 30 Degree Crossing Design by Bob Blackwell
+TURNOUT N "Atlas 30 Degree Crossing 2566"
+ P "Normal" 1 0 2
+ E 0.000000 0.648442 270.000000
+ E 2.419997 1.296881 59.999819
+ E 2.593750 0.648442 90.000000
+ E 0.173747 0.000000 239.999819
+ S 0 0.000000 0.000000 0.648442 2.593750 0.648442
+ S 0 0.000000 2.419997 1.296881 0.173747 0.000000
+ END
+# 20 Degree Crossing Design by Bob Blackwell
+TURNOUT N "Atlas 20 Degree Crossing 2565"
+ P "Normal" 1 0 2
+ E 0.000000 0.849704 270.000007
+ E 4.818923 1.699405 70.000081
+ E 4.968750 0.849703 90.000007
+ E 0.149822 0.000000 250.000081
+ S 0 0.000000 0.149822 0.000000 4.818923 1.699405
+ S 0 0.000000 0.000000 0.849704 4.968750 0.849703
+ END
+# 15 Degree Crossing Design by Bob Blackwell
+TURNOUT N "Atlas 15 Degree Crossover 2564"
+ P "Normal" 1 0 2
+ E 0.085186 0.000000 255.000000
+ E 4.914815 1.294094 75.000000
+ E 0.000000 0.647044 270.000000
+ E 5.000001 0.647050 90.000000
+ S 0 0.000000 0.085186 0.000000 4.914815 1.294094
+ S 0 0.000000 0.000000 0.647044 5.000001 0.647050
+ END
+
+SUBCONTENTS Atlas N-Scale Track - Standard Remote Switches
+# Remote Std #4 LH Switch 2700 Design by Bob Blackwell
+TURNOUT N "Atlas Remote Std #4 LH Switch 2700"
+ P "Normal" 1
+ P "Reverse" 2
+ E 0.001050 0.708331 270.000000
+ E 4.911050 0.708331 90.000000
+ E 4.918050 1.354745 75.000000
+ S 0 0.000000 0.001050 0.708331 4.911050 0.708331
+ C 0 0.000000 -19.000000 0.000050 19.708331 165.000000 15.000000
+ L3 0 0.020833 4.131258 0.479164 0 0.537508 0.479170 0
+ L3 0 0.020833 4.131258 0.479164 0 4.131258 0.244789 0
+ L3 0 0.020833 0.537508 0.479174 0 0.537508 0.244799 0
+ L3 0 0.020833 3.131258 0.276042 0 1.537508 0.276046 0
+ L3 0 0.020833 1.537507 0.010421 0 3.131257 0.010417 0
+ L3 0 0.020833 4.131258 0.244789 0 3.131257 0.010417 0
+ L3 0 0.020833 1.537507 0.010421 0 0.537508 0.244799 0
+ L3 0 0.020833 3.131257 0.010417 0 3.131258 0.276042 0
+ L3 0 0.020833 1.537507 0.010421 0 1.537508 0.276046 0
+ L3 0 0.020833 3.881258 0.479165 0 3.881258 0.197915 0
+ L3 0 0.020833 0.787508 0.479173 0 0.787508 0.197923 0
+ A3 0 0.010417 0.064424 4.006258 0.354164 0 180.000000 360.000000
+ A3 0 0.010417 0.049411 4.006258 0.354164 0 180.000000 360.000000
+ A3 0 0.010417 0.062500 0.662508 0.354173 0 180.000000 360.000000
+ A3 0 0.010417 0.044194 0.662508 0.354173 0 180.000000 360.000000
+ END
+# Remote Std #4 RH Switch 2701 Design by Bob Blackwell
+TURNOUT N "Atlas Remote Std #4 RH Switch 2701"
+ P "Normal" 1
+ P "Reverse" 2
+ E 0.001000 0.647408 270.000000
+ E 4.911000 0.647408 90.000000
+ E 4.911000 0.000994 105.000000
+ S 0 0.000000 0.001000 0.647408 4.911000 0.647408
+ C 0 0.000000 19.000000 0.000000 -18.352592 0.000000 15.000000
+ L3 0 0.020833 0.527042 0.876575 0 4.120792 0.876579 0
+ L3 0 0.020833 0.527042 0.876575 0 0.527042 1.110950 0
+ L3 0 0.020833 4.120792 0.876575 0 4.120792 1.110950 0
+ L3 0 0.020833 1.527042 1.079700 0 3.120792 1.079700 0
+ L3 0 0.020833 3.120792 1.345325 0 1.527042 1.345325 0
+ L3 0 0.020833 0.527042 1.110950 0 1.527042 1.345325 0
+ L3 0 0.020833 3.120792 1.345325 0 4.120792 1.110950 0
+ L3 0 0.020833 1.527042 1.345325 0 1.527042 1.079700 0
+ L3 0 0.020833 3.120792 1.345325 0 3.120792 1.079700 0
+ L3 0 0.020833 0.777042 0.876575 0 0.777042 1.157825 0
+ L3 0 0.020833 3.870792 0.876575 0 3.870792 1.157825 0
+ A3 0 0.010417 0.064424 0.652042 1.001575 0 0.000000 360.000000
+ A3 0 0.010417 0.049411 0.652042 1.001575 0 0.000000 360.000000
+ A3 0 0.010417 0.062500 3.995792 1.001575 0 0.000000 360.000000
+ A3 0 0.010417 0.044194 3.995792 1.001575 0 0.000000 360.000000
+ END
+# Remote #6 LH Switch 2704 Design by Bob Blackwell
+TURNOUT N "Atlas Remote #6 LH Switch 2704"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.708331 270.000000
+ E 6.109375 0.708331 90.000000
+ E 6.156250 1.364581 80.500000
+ S 0 0.000000 0.000000 0.708331 0.353100 0.708331
+ S 0 0.000000 0.353100 0.708331 6.109375 0.708331
+ C 0 0.000000 -22.644376 0.353130 23.352707 170.499924 9.500152
+ S 0 0.000000 4.090556 1.018894 6.156250 1.364581
+ L3 0 0.020833 4.489583 0.479164 0 0.895833 0.479170 0
+ L3 0 0.020833 4.489583 0.479164 0 4.489582 0.244789 0
+ L3 0 0.020833 0.895833 0.479174 0 0.895832 0.244799 0
+ L3 0 0.020833 3.489582 0.276042 0 1.895832 0.276046 0
+ L3 0 0.020833 1.895832 0.010421 0 3.489582 0.010417 0
+ L3 0 0.020833 4.489582 0.244789 0 3.489582 0.010417 0
+ L3 0 0.020833 1.895832 0.010421 0 0.895832 0.244799 0
+ L3 0 0.020833 3.489582 0.010417 0 3.489582 0.276042 0
+ L3 0 0.020833 1.895832 0.010421 0 1.895832 0.276046 0
+ L3 0 0.020833 4.239583 0.479165 0 4.239582 0.197915 0
+ L3 0 0.020833 1.145833 0.479173 0 1.145832 0.197923 0
+ A3 0 0.010417 0.064424 4.364583 0.354164 0 180.000000 360.000000
+ A3 0 0.010417 0.049411 4.364583 0.354164 0 180.000000 360.000000
+ A3 0 0.010417 0.062500 1.020833 0.354173 0 180.000000 360.000000
+ A3 0 0.010417 0.044194 1.020833 0.354173 0 180.000000 360.000000
+ END
+# Remote #6 RH Switch 2705 Design by Bob Blackwell
+TURNOUT N "Atlas Remote #6 RH Switch 2705"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.656250 270.000000
+ E 6.109375 0.656250 90.000000
+ E 6.156250 0.000000 99.500000
+ S 0 0.000000 0.000000 0.656250 0.353100 0.656250
+ S 0 0.000000 0.353100 0.656250 6.109375 0.656250
+ C 0 0.000000 22.644376 0.353010 -21.988126 0.000076 9.500152
+ S 0 0.000000 4.090556 0.345687 6.156250 0.000000
+ L3 0 0.020833 0.885417 0.885417 0 4.479167 0.885421 0
+ L3 0 0.020833 0.885417 0.885417 0 0.885417 1.119792 0
+ L3 0 0.020833 4.479167 0.885417 0 4.479167 1.119792 0
+ L3 0 0.020833 1.885417 1.088542 0 3.479167 1.088542 0
+ L3 0 0.020833 3.479167 1.354167 0 1.885417 1.354167 0
+ L3 0 0.020833 0.885417 1.119792 0 1.885417 1.354167 0
+ L3 0 0.020833 3.479167 1.354167 0 4.479167 1.119792 0
+ L3 0 0.020833 1.885417 1.354167 0 1.885417 1.088542 0
+ L3 0 0.020833 3.479167 1.354167 0 3.479167 1.088542 0
+ L3 0 0.020833 1.135417 0.885417 0 1.135417 1.166667 0
+ L3 0 0.020833 4.229167 0.885417 0 4.229167 1.166667 0
+ A3 0 0.010417 0.064424 1.010417 1.010417 0 0.000000 360.000000
+ A3 0 0.010417 0.049411 1.010417 1.010417 0 0.000000 360.000000
+ A3 0 0.010417 0.062500 4.354167 1.010417 0 0.000000 360.000000
+ A3 0 0.010417 0.044194 4.354167 1.010417 0 0.000000 360.000000
+ END
+SUBCONTENTS Atlas N-Scale Track - Standard Manual Switches
+# Manual Std #4 LH Switch 2702 Design by Bob Blackwell
+TURNOUT N "Atlas Manual Std #4 LH Switch 2702"
+ P "Normal" 1
+ P "Reverse" 2
+ E 0.001050 0.708331 270.000000
+ E 4.911050 0.708331 90.000000
+ E 4.918050 1.354745 75.000000
+ S 0 0.000000 0.001050 0.708331 4.911050 0.708331
+ C 0 0.000000 -19.000000 0.000050 19.708331 165.000000 15.000000
+ L3 0 0.020833 4.131258 0.479164 0 0.537508 0.479170 0
+ L3 0 0.020833 4.131258 0.479164 0 4.131258 0.244789 0
+ L3 0 0.020833 0.537508 0.479174 0 0.537508 0.244799 0
+ L3 0 0.020833 3.131258 0.276042 0 1.537508 0.276046 0
+ L3 0 0.020833 1.537507 0.010421 0 3.131257 0.010417 0
+ L3 0 0.020833 4.131258 0.244789 0 3.131257 0.010417 0
+ L3 0 0.020833 1.537507 0.010421 0 0.537508 0.244799 0
+ L3 0 0.020833 3.131257 0.010417 0 3.131258 0.276042 0
+ L3 0 0.020833 1.537507 0.010421 0 1.537508 0.276046 0
+ L3 0 0.020833 3.881258 0.479165 0 3.881258 0.197915 0
+ L3 0 0.020833 0.787508 0.479173 0 0.787508 0.197923 0
+ A3 0 0.010417 0.064424 4.006258 0.354164 0 180.000000 360.000000
+ A3 0 0.010417 0.049411 4.006258 0.354164 0 180.000000 360.000000
+ A3 0 0.010417 0.062500 0.662508 0.354173 0 180.000000 360.000000
+ A3 0 0.010417 0.044194 0.662508 0.354173 0 180.000000 360.000000
+ END
+# Manual Std #4 RH Switch 2703 Design by Bob Blackwell
+TURNOUT N "Atlas Manual Std #4 RH Switch 2703"
+ P "Normal" 1
+ P "Reverse" 2
+ E 0.001000 0.647408 270.000000
+ E 4.911000 0.647408 90.000000
+ E 4.911000 0.000994 105.000000
+ S 0 0.000000 0.001000 0.647408 4.911000 0.647408
+ C 0 0.000000 19.000000 0.000000 -18.352592 0.000000 15.000000
+ L3 0 0.020833 0.527042 0.876575 0 4.120792 0.876579 0
+ L3 0 0.020833 0.527042 0.876575 0 0.527042 1.110950 0
+ L3 0 0.020833 4.120792 0.876575 0 4.120792 1.110950 0
+ L3 0 0.020833 1.527042 1.079700 0 3.120792 1.079700 0
+ L3 0 0.020833 3.120792 1.345325 0 1.527042 1.345325 0
+ L3 0 0.020833 0.527042 1.110950 0 1.527042 1.345325 0
+ L3 0 0.020833 3.120792 1.345325 0 4.120792 1.110950 0
+ L3 0 0.020833 1.527042 1.345325 0 1.527042 1.079700 0
+ L3 0 0.020833 3.120792 1.345325 0 3.120792 1.079700 0
+ L3 0 0.020833 0.777042 0.876575 0 0.777042 1.157825 0
+ L3 0 0.020833 3.870792 0.876575 0 3.870792 1.157825 0
+ A3 0 0.010417 0.064424 0.652042 1.001575 0 0.000000 360.000000
+ A3 0 0.010417 0.049411 0.652042 1.001575 0 0.000000 360.000000
+ A3 0 0.010417 0.062500 3.995792 1.001575 0 0.000000 360.000000
+ A3 0 0.010417 0.044194 3.995792 1.001575 0 0.000000 360.000000
+ END
+# Manual #6 LH Switch 2706 Design by Bob Blackwell
+TURNOUT N "Atlas Manual #6 LH Switch 2706"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.708331 270.000000
+ E 6.109375 0.708331 90.000000
+ E 6.156250 1.364581 80.500000
+ S 0 0.000000 0.000000 0.708331 0.353100 0.708331
+ S 0 0.000000 0.353100 0.708331 6.109375 0.708331
+ C 0 0.000000 -22.644376 0.353130 23.352707 170.499924 9.500152
+ S 0 0.000000 4.090556 1.018894 6.156250 1.364581
+ L3 0 0.020833 4.489583 0.479164 0 0.895833 0.479170 0
+ L3 0 0.020833 4.489583 0.479164 0 4.489582 0.244789 0
+ L3 0 0.020833 0.895833 0.479174 0 0.895832 0.244799 0
+ L3 0 0.020833 3.489582 0.276042 0 1.895832 0.276046 0
+ L3 0 0.020833 1.895832 0.010421 0 3.489582 0.010417 0
+ L3 0 0.020833 4.489582 0.244789 0 3.489582 0.010417 0
+ L3 0 0.020833 1.895832 0.010421 0 0.895832 0.244799 0
+ L3 0 0.020833 3.489582 0.010417 0 3.489582 0.276042 0
+ L3 0 0.020833 1.895832 0.010421 0 1.895832 0.276046 0
+ L3 0 0.020833 4.239583 0.479165 0 4.239582 0.197915 0
+ L3 0 0.020833 1.145833 0.479173 0 1.145832 0.197923 0
+ A3 0 0.010417 0.064424 4.364583 0.354164 0 180.000000 360.000000
+ A3 0 0.010417 0.049411 4.364583 0.354164 0 180.000000 360.000000
+ A3 0 0.010417 0.062500 1.020833 0.354173 0 180.000000 360.000000
+ A3 0 0.010417 0.044194 1.020833 0.354173 0 180.000000 360.000000
+ END
+# Manual #6 RH Switch 2707 Design by Bob Blackwell
+TURNOUT N "Atlas Manual #6 RH Switch 2707"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.656250 270.000000
+ E 6.109375 0.656250 90.000000
+ E 6.156250 0.000000 99.500000
+ S 0 0.000000 0.000000 0.656250 0.353100 0.656250
+ S 0 0.000000 0.353100 0.656250 6.109375 0.656250
+ C 0 0.000000 22.644376 0.353010 -21.988126 0.000076 9.500152
+ S 0 0.000000 4.090556 0.345687 6.156250 0.000000
+ L3 0 0.020833 0.885417 0.885417 0 4.479167 0.885421 0
+ L3 0 0.020833 0.885417 0.885417 0 0.885417 1.119792 0
+ L3 0 0.020833 4.479167 0.885417 0 4.479167 1.119792 0
+ L3 0 0.020833 1.885417 1.088542 0 3.479167 1.088542 0
+ L3 0 0.020833 3.479167 1.354167 0 1.885417 1.354167 0
+ L3 0 0.020833 0.885417 1.119792 0 1.885417 1.354167 0
+ L3 0 0.020833 3.479167 1.354167 0 4.479167 1.119792 0
+ L3 0 0.020833 1.885417 1.354167 0 1.885417 1.088542 0
+ L3 0 0.020833 3.479167 1.354167 0 3.479167 1.088542 0
+ L3 0 0.020833 1.135417 0.885417 0 1.135417 1.166667 0
+ L3 0 0.020833 4.229167 0.885417 0 4.229167 1.166667 0
+ A3 0 0.010417 0.064424 1.010417 1.010417 0 0.000000 360.000000
+ A3 0 0.010417 0.049411 1.010417 1.010417 0 0.000000 360.000000
+ A3 0 0.010417 0.062500 4.354167 1.010417 0 0.000000 360.000000
+ A3 0 0.010417 0.044194 4.354167 1.010417 0 0.000000 360.000000
+ END
+TURNOUT N "Atlas Remote Standard Wye 2708"
+ P "Left" 1 2 3
+ P "Right" 1 4 5
+ E 0.000000 0.000000 270.000000
+ E 4.910000 0.646414 75.000000
+ E 4.910000 -0.646414 105.000000
+ S 0 0.000000 0.000000 0.000000 0.354344 0.000000
+ C 0 0.000000 -16.279453 0.354366 16.279453 164.999924 15.000152
+ S 0 0.000000 4.567815 0.554719 4.910000 0.646414
+ C 0 0.000000 16.279453 0.354280 -16.279453 0.000076 15.000152
+ S 0 0.000000 4.567815 -0.554719 4.910000 -0.646414
+ L3 0 0.020833 0.616960 0.202769 0 4.178616 0.681977 0
+ L3 0 0.020833 0.616960 0.202769 0 0.585708 0.435051 0
+ L3 0 0.020833 4.178617 0.681973 0 4.147364 0.914255 0
+ L3 0 0.020833 1.580944 0.537424 0 3.160462 0.749940 0
+ L3 0 0.020833 3.125042 1.013193 0 1.545524 0.800677 0
+ L3 0 0.020833 0.585708 0.435051 0 1.545524 0.800677 0
+ L3 0 0.020833 3.125042 1.013193 0 4.147364 0.914255 0
+ L3 0 0.020833 1.545524 0.800677 0 1.580944 0.537424 0
+ L3 0 0.020833 3.125042 1.013193 0 3.160462 0.749940 0
+ L3 0 0.020833 0.864727 0.236105 0 0.827224 0.514844 0
+ L3 0 0.020833 3.930850 0.648638 0 3.893346 0.927376 0
+ A3 0 0.010417 0.064424 0.724175 0.343321 0 352.337139 360.000000
+ A3 0 0.010417 0.049411 0.724175 0.343321 0 352.337139 360.000000
+ A3 0 0.010417 0.062500 4.038066 0.789189 0 352.337139 360.000000
+ A3 0 0.010417 0.044194 4.038066 0.789189 0 352.337139 360.000000
+ END
+TURNOUT N "Atlas Manual Standard Wye 2709"
+ P "Left" 1 2 3
+ P "Right" 1 4 5
+ E 0.000000 0.000000 270.000000
+ E 4.910000 0.646414 75.000000
+ E 4.910000 -0.646414 105.000000
+ S 0 0.000000 0.000000 0.000000 0.354344 0.000000
+ C 0 0.000000 -16.279453 0.354366 16.279453 164.999924 15.000152
+ S 0 0.000000 4.567815 0.554719 4.910000 0.646414
+ C 0 0.000000 16.279453 0.354280 -16.279453 0.000076 15.000152
+ S 0 0.000000 4.567815 -0.554719 4.910000 -0.646414
+ L3 0 0.020833 0.616960 0.202769 0 4.178616 0.681977 0
+ L3 0 0.020833 0.616960 0.202769 0 0.585708 0.435051 0
+ L3 0 0.020833 4.178617 0.681973 0 4.147364 0.914255 0
+ L3 0 0.020833 1.580944 0.537424 0 3.160462 0.749940 0
+ L3 0 0.020833 3.125042 1.013193 0 1.545524 0.800677 0
+ L3 0 0.020833 0.585708 0.435051 0 1.545524 0.800677 0
+ L3 0 0.020833 3.125042 1.013193 0 4.147364 0.914255 0
+ L3 0 0.020833 1.545524 0.800677 0 1.580944 0.537424 0
+ L3 0 0.020833 3.125042 1.013193 0 3.160462 0.749940 0
+ L3 0 0.020833 0.864727 0.236105 0 0.827224 0.514844 0
+ L3 0 0.020833 3.930850 0.648638 0 3.893346 0.927376 0
+ A3 0 0.010417 0.064424 0.724175 0.343321 0 352.337139 360.000000
+ A3 0 0.010417 0.049411 0.724175 0.343321 0 352.337139 360.000000
+ A3 0 0.010417 0.062500 4.038066 0.789189 0 352.337139 360.000000
+ A3 0 0.010417 0.044194 4.038066 0.789189 0 352.337139 360.000000
+ END
+
+SUBCONTENTS Atlas N-Scale Track - Custom (Motorless) Switches
+# Custom Std #4 LH Switch 2750 Design by Bob Blackwell
+TURNOUT N "Atlas Custom Std #4 LH Switch 2750"
+ P "Normal" 1
+ P "Reverse" 2
+ E 0.000000 0.000000 270.000000
+ E 4.910000 0.000000 90.000000
+ E 4.917000 0.646414 75.000000
+ S 0 0 0.000000 0.000000 4.910000 0.000000
+ C 0 0 -19.000000 -0.001000 19.000000 165.000000 15.000000
+ END
+# Custom Std #4 RH Switch 2751 Design by Bob Blackwell
+TURNOUT N "Atlas Custom Std #4 RH Switch 2751"
+ P "Normal" 1
+ P "Reverse" 2
+ E 0.000000 0.000000 270.000000
+ E 4.910000 0.000000 90.000000
+ E 4.910000 -0.646414 105.000000
+ S 0 0 0.000000 0.000000 4.910000 0.000000
+ C 0 0 19.000000 -0.001000 -19.000000 0.000000 15.000000
+ END
+# Custom LH #6 Switch 2752 Design by Bob Blackwell
+TURNOUT N "Atlas Custom LH #6 Switch 2752"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.000000 270.000000
+ E 6.109375 0.000000 90.000000
+ E 6.156250 0.656250 80.500000
+ S 0 0.000000 0.000000 0.000000 0.353100 0.000000
+ S 0 0.000000 0.353100 0.000000 6.109375 0.000000
+ C 0 0.000000 -22.644376 0.353130 22.644376 170.499924 9.500152
+ S 0 0.000000 4.090556 0.310563 6.156250 0.656250
+ END
+# Custom RH #6 Switch 2753 Design by Bob Blackwell
+TURNOUT N "Atlas Custom RH #6 Switch 2753"
+ P "Normal" 1 2
+ P "Reverse" 1 3 4
+ E 0.000000 0.000000 270.000000
+ E 6.109375 0.000000 90.000000
+ E 6.156250 -0.656250 99.500000
+ S 0 0.000000 0.000000 0.000000 0.353100 0.000000
+ S 0 0.000000 0.353100 0.000000 6.109375 0.000000
+ C 0 0.000000 22.644376 0.353010 -22.644376 0.000076 9.500152
+ S 0 0.000000 4.090556 -0.310563 6.156250 -0.656250
+ END
+TURNOUT N "Atlas Custom Standard Wye 2754"
+ P "Left" 1 2 3
+ P "Right" 1 4 5
+ E 0.000000 0.000000 270.000000
+ E 4.910000 0.646414 75.000000
+ E 4.910000 -0.646414 105.000000
+ S 0 0.000000 0.000000 0.000000 0.354344 0.000000
+ C 0 0.000000 -16.279453 0.354366 16.279453 164.999924 15.000152
+ S 0 0.000000 4.567815 0.554719 4.910000 0.646414
+ C 0 0.000000 16.279453 0.354280 -16.279453 0.000076 15.000152
+ S 0 0.000000 4.567815 -0.554719 4.910000 -0.646414
+ END
+
+SUBCONTENTS Atlas N-Scale Structures - Bridge
+# Bridge Pier (Base) Design by Bob Blackwell
+STRUCTURE N "Atlas Bridge Pier 2541"
+ X pier 0.140625 "1" 0.281250 "2" 0.421875 "3" 0.562500 "4" 0.703125 "5" 0.843750 "6" 0.984375 "7" 1.125000 "8" 1.265625 "9" 1.406250 "10" 1.546875 "11" 1.687500 "12"
+ A3 0 0.020833 0.312500 -0.000000 0.687500 0 270.000000 180.000000
+ A3 0 0.020833 0.312500 -0.000000 -0.687500 0 90.000000 180.000000
+ L3 0 0.020833 0.312500 0.687500 0 0.312500 -0.687500 0
+ L3 0 0.020833 -0.312500 0.687500 0 -0.312500 -0.687500 0
+ A3 0 0.020833 0.250000 -0.000000 -0.375000 0 90.000000 180.000000
+ A3 0 0.020833 0.250000 -0.000000 0.375000 0 270.000000 180.000000
+ L3 0 0.020833 -0.250000 0.375000 0 -0.249999 -0.375000 0
+ L3 0 0.020833 0.250000 0.375000 0 0.250001 -0.375000 0
+ END
+STRUCTURE N "Atlas Bridge Pier (Base) 2543"
+ X pier 1.687500 "B"
+ A3 0 0.020833 0.312500 -0.000000 0.687500 0 270.000000 180.000000
+ A3 0 0.020833 0.312500 -0.000000 -0.687500 0 90.000000 180.000000
+ L3 0 0.020833 0.312500 0.687500 0 0.312500 -0.687500 0
+ L3 0 0.020833 -0.312500 0.687500 0 -0.312500 -0.687500 0
+ A3 0 0.020833 0.250000 -0.000000 -0.375000 0 90.000000 180.000000
+ A3 0 0.020833 0.250000 -0.000000 0.375000 0 270.000000 180.000000
+ L3 0 0.020833 -0.250000 0.375000 0 -0.249999 -0.375000 0
+ L3 0 0.020833 0.250000 0.375000 0 0.250001 -0.375000 0
+ END
+# Viaduct Kit Design by Bob Blackwell
+STRUCTURE N "Atlas Viaduct Kit 2826"
+ L3 0 0.020833 0.010419 0.010417 0 4.385419 0.010422 0
+ L3 0 0.020833 4.385419 0.010417 0 4.385419 1.135417 0
+ L3 0 0.020833 4.385419 1.135422 0 0.010419 1.135417 0
+ L3 0 0.020833 0.010418 1.135417 0 0.010417 0.010417 0
+ L3 0 0.020833 4.385419 0.104172 0 0.010419 0.104167 0
+ L3 0 0.020833 4.385419 1.041676 0 0.010419 1.041670 0
+ L3 0 0.020833 4.385419 1.088547 0 0.010419 1.088542 0
+ L3 0 0.020833 4.385419 0.057297 0 0.010419 0.057292 0
+ END
+SUBCONTENTS Atlas N-Scale Structures - Switch Machines
+# Remote Switch Machine Design by Bob Blackwell
+STRUCTURE N "Atlas Remote Switch Machine 271x"
+ L3 0 0.020833 0.010417 0.010417 0 3.604167 0.010421 0
+ L3 0 0.020833 0.010417 0.010417 0 0.010417 0.244792 0
+ L3 0 0.020833 3.604167 0.010417 0 3.604167 0.244792 0
+ L3 0 0.020833 1.010417 0.213542 0 2.604167 0.213542 0
+ L3 0 0.020833 2.604167 0.479167 0 1.010417 0.479167 0
+ L3 0 0.020833 0.010417 0.244792 0 1.010417 0.479167 0
+ L3 0 0.020833 2.604167 0.479167 0 3.604167 0.244792 0
+ L3 0 0.020833 1.010417 0.479167 0 1.010417 0.213542 0
+ L3 0 0.020833 2.604167 0.479167 0 2.604167 0.213542 0
+ L3 0 0.020833 0.260417 0.010417 0 0.260417 0.291667 0
+ L3 0 0.020833 3.354167 0.010417 0 3.354167 0.291667 0
+ A3 0 0.010417 0.064424 0.135417 0.135417 0 0.000000 360.000000
+ A3 0 0.010417 0.049411 0.135417 0.135417 0 0.000000 360.000000
+ A3 0 0.010417 0.062500 3.479167 0.135417 0 0.000000 360.000000
+ A3 0 0.010417 0.044194 3.479167 0.135417 0 0.000000 360.000000
+ END
+
+
+SUBCONTENTS Atlas N-Scale Structures - Turn Table
+TURNOUT N "Atlas Turn Table 2790"
+# TT was designed with 7.5in bridge, 8.5in outside dia., 15 degree spacing
+ P "1" 1 2 3
+ P "2" 4 5 6
+ P "3" 7 8 9
+ P "4" 10 11 12
+ P "5" 13 14 15
+ P "6" 16 17 18
+ P "7" 19 20 21
+ P "8" 22 23 24
+ P "9" 25 26 27
+ P "10" 28 29 30
+ P "11" 31 32 33
+ P "12" 34 35 36
+
+ E 0.000000 4.250000 0.000000
+ E 1.099981 4.105185 15.000000
+ E 2.125000 3.680608 30.000000
+ E 3.005204 3.005204 45.000000
+ E 3.680608 2.125000 60.000000
+# E 4.105185 1.099981 75.000000
+# E 4.250000 0.000000 90.000000
+# E 4.105185 -1.099981 105.000000
+ E 3.680608 -2.125000 120.000000
+ E 3.005204 -3.005204 135.000000
+ E 2.125000 -3.680608 150.000000
+ E 1.099981 -4.105185 165.000000
+ E 0.000000 -4.250000 180.000000
+ E -1.099981 -4.105185 195.000000
+ E -2.125000 -3.680608 210.000000
+ E -3.005204 -3.005204 225.000000
+ E -3.680608 -2.125000 240.000000
+ E -4.105185 -1.099981 255.000000
+ E -4.250000 0.000000 270.000000
+ E -4.105185 1.099981 285.000000
+ E -3.680608 2.125000 300.000000
+ E -3.005204 3.005204 315.000000
+ E -2.125000 3.680608 330.000000
+ E -1.080111 4.031029 345.000000
+#0/360
+ S 0 0 0.000000 4.250000 0.000000 3.750000
+ S 0 0 0.000000 3.750000 0.000000 -3.750000
+ S 0 0 0.000000 -3.750000 0.000000 -4.250000
+#15/195
+ S 0 0 1.099981 4.105185 0.970571 3.622222
+ S 0 0 0.970571 3.622222 -0.970571 -3.622222
+ S 0 0 -0.970571 -3.622222 -1.099981 -4.105185
+#30/210
+ S 0 0 2.125000 3.680608 1.875000 3.247595
+ S 0 0 1.836614 3.247595 -1.875000 -3.247595
+ S 0 0 -1.875000 -3.247595 -2.125000 -3.680608
+#45/225
+ S 0 0 3.005204 3.005204 2.651650 2.651650
+ S 0 0 2.651650 2.651650 -2.651650 -2.651650
+ S 0 0 -2.651650 -2.651650 -3.005204 -3.005204
+#60/240
+ S 0 0 3.680608 2.125000 3.247595 1.875000
+ S 0 0 3.247595 1.875000 -3.247595 -1.875000
+ S 0 0 -3.247595 -1.875000 -3.680608 -2.125000
+#75/255
+ S 0 0 4.105185 1.099981 3.622222 0.970571
+ S 0 0 3.622222 0.970571 -3.622222 -0.970571
+ S 0 0 -3.622222 -0.970571 -4.105185 -1.099981
+#90/270
+ S 0 0 4.250000 0.000000 3.750000 0.000000
+ S 0 0 3.750000 0.000000 -3.750000 0.000000
+ S 0 0 -3.750000 0.000000 -4.250000 0.000000
+#105/285
+ S 0 0 4.105185 -1.099981 3.622222 -0.970571
+ S 0 0 3.622222 -0.970571 -3.622222 0.970571
+ S 0 0 -3.622222 0.970571 -4.105185 1.099981
+#120/300
+ S 0 0 3.680608 -2.125000 3.247595 -1.875000
+ S 0 0 3.247595 -1.875000 -3.247595 1.875000
+ S 0 0 -3.247595 1.875000 -3.680608 2.125000
+#135/315
+ S 0 0 3.005204 -3.005204 2.651650 -2.651650
+ S 0 0 2.651650 -2.651650 -2.651650 2.651650
+ S 0 0 -2.651650 2.651650 -3.005204 3.005204
+#150/330
+ S 0 0 2.125000 -3.680608 1.875000 -3.247595
+ S 0 0 1.836614 -3.247595 -1.875000 3.247595
+ S 0 0 -1.875000 3.247595 -2.125000 3.680608
+#165/345
+ S 0 0 1.099981 -4.105185 0.970571 -3.622222
+ S 0 0 0.970571 -3.622222 -0.970571 3.622222
+ S 0 0 -0.970571 3.622222 -1.099981 4.105185
+
+ A 11579568 0.053333 4.250000 0.000000 0.000000 0.000000 360.000000
+ A 11579568 0.053333 3.750000 0.000000 0.000000 0.000000 360.000000
+ L 11579568 0.053333 4.000000 1.437500 6.000000 1.437500 0
+ L 11579568 0.053333 6.000000 1.437500 6.000000 -1.437500 0
+ L 11579568 0.053333 4.000000 -1.437500 6.000000 -1.437500 0
+ END \ No newline at end of file