From 90fb3ca6ad2c1b7531251bac8b1b60f02c68eb66 Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Wed, 28 Jan 2026 12:21:36 -0800 Subject: [PATCH 01/25] - Exploratory work on SMPTE CLF format, currently supports reading the main new features only. Signed-off-by: cuneyt.ozdas --- src/OpenColorIO/fileformats/FileFormatCTF.cpp | 12 + .../fileformats/ctf/CTFReaderHelper.cpp | 64 +++- .../fileformats/ctf/CTFReaderHelper.h | 52 ++- .../fileformats/ctf/CTFTransform.cpp | 41 +- .../fileformats/ctf/CTFTransform.h | 38 +- .../fileformats/xmlutils/XMLReaderUtils.h | 3 + tests/cpu/fileformats/FileFormatCTF_tests.cpp | 61 ++- .../fileformats/ctf/CTFTransform_tests.cpp | 33 +- tests/data/files/clf/smpte/st2136-1a-202x.xsd | 354 ++++++++++++++++++ tests/data/files/clf/smpte/st2136-1b.clf | 26 ++ tests/data/files/clf/smpte/st2136-1c.clf | 25 ++ 11 files changed, 658 insertions(+), 51 deletions(-) create mode 100644 tests/data/files/clf/smpte/st2136-1a-202x.xsd create mode 100644 tests/data/files/clf/smpte/st2136-1b.clf create mode 100644 tests/data/files/clf/smpte/st2136-1c.clf diff --git a/src/OpenColorIO/fileformats/FileFormatCTF.cpp b/src/OpenColorIO/fileformats/FileFormatCTF.cpp index b1f0393038..f8f343d168 100644 --- a/src/OpenColorIO/fileformats/FileFormatCTF.cpp +++ b/src/OpenColorIO/fileformats/FileFormatCTF.cpp @@ -717,6 +717,18 @@ class XMLParserHelper pImpl->getXmLineNumber(), pImpl->getXmlFilename())); } + else if (SupportedElement(name, pElt, TAG_ID, "", recognizedName)) + { + pImpl->m_elms.push_back( + std::make_shared( + name, + pContainer, + pImpl->getXmLineNumber(), + pImpl->getXmlFilename())); + // TODO: do we enforce the ID (tag for SMPTE or attribute otherwise)? + // TODO: do we want to restrict Id tag to SMPTE only? + } + // Dynamic Property is valid under any operator parent. First // test if the tag is supported to set the recognizedName // accordingly, without testing for parents. Test for the diff --git a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp index 79393fc489..9ef7a7d227 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp @@ -60,8 +60,10 @@ void CTFReaderTransformElt::start(const char ** atts) bool isIdFound = false; bool isVersionFound = false; bool isCLFVersionFound = false; + bool isSMPTEVersionFound = false; CTFVersion requestedVersion(0, 0); CTFVersion requestedCLFVersion(0, 0); + CTFVersion requestedSMPTEVersion(0, 0); unsigned i = 0; while (atts[i]) @@ -70,12 +72,36 @@ void CTFReaderTransformElt::start(const char ** atts) { if (!atts[i + 1] || !*atts[i + 1]) { - throwMessage("Required attribute 'id' does not have a value."); + throwMessage("Attribute 'id' does not have a value."); } m_transform->setID(atts[i + 1]); isIdFound = true; } + else if (0 == Platform::Strcasecmp(ATTR_XMLNS, atts[i])) + { + if (!atts[i + 1] || !*atts[i + 1]) + { + throwMessage("Attribute 'xmlns' does not have a value."); + } + + try + { + auto version = CTFVersion(atts[i + 1]); + + requestedVersion = CTF_PROCESS_LIST_VERSION_2_0; + requestedSMPTEVersion = version; + isVersionFound = true; + isSMPTEVersionFound = true; + m_isCLF = true; + m_isSMPTE = true; + // TODO: do we set the requestedCLFVersion? which value, ST2136-1:2024? + } + catch (Exception& /*e*/) + { + // Ignore the exception, as this may not be a version URI. + } + } else if (0 == Platform::Strcasecmp(ATTR_NAME, atts[i])) { if (!atts[i + 1] || !*atts[i + 1]) @@ -114,7 +140,7 @@ void CTFReaderTransformElt::start(const char ** atts) try { const std::string verString(pVer); - CTFVersion::ReadVersion(verString, requestedVersion); + requestedVersion = CTFVersion(verString); } catch (Exception& ce) { @@ -134,6 +160,9 @@ void CTFReaderTransformElt::start(const char ** atts) throwMessage("'compCLFversion' and 'Version' cannot be both present."); } + // TODO: do we allow both the SMPTE version and the compCLFversion? + // Do we expect and enforce the value to be "ST2136-1:2024" for example? + const char* pVer = atts[i + 1]; if (!pVer || !*pVer) { @@ -143,7 +172,7 @@ void CTFReaderTransformElt::start(const char ** atts) try { std::string verString(pVer); - CTFVersion::ReadVersion(verString, requestedCLFVersion); + requestedCLFVersion = CTFVersion(verString); } catch (Exception& ce) { @@ -173,10 +202,10 @@ void CTFReaderTransformElt::start(const char ** atts) // Handle as CLF. m_isCLF = true; } - else if (0 == Platform::Strcasecmp("xmlns", atts[i])) - { - // Ignore. - } +// else if (0 == Platform::Strcasecmp("xmlns", atts[i])) +// { +// // Ignore. +// } else { logParameterWarning(atts[i]); @@ -185,9 +214,10 @@ void CTFReaderTransformElt::start(const char ** atts) i += 2; } - // Check mandatory elements. - if (!isIdFound) + // Check mandatory id keyword for non-SMPTE variants. + if (!isIdFound && !m_isSMPTE) { + // FIXME: add handling of the SMPTE version tag throwMessage("Required attribute 'id' is missing."); } @@ -195,16 +225,20 @@ void CTFReaderTransformElt::start(const char ** atts) // the CTF format is 1.2. if (!isVersionFound) { - if (m_isCLF && !isCLFVersionFound) + if (m_isCLF) { - throwMessage("Required attribute 'compCLFversion' is missing."); + throwMessage("Neither 'compCLFversion' nor 'xmlns' was found; one of them is required."); } setVersion(CTF_PROCESS_LIST_VERSION_1_2); } else { - setVersion(requestedVersion); - if (m_isCLF) + setVersion(requestedVersion); // TODO: do we care about this when SMPTE? + if(m_isSMPTE) + { + setCLFVersion(requestedSMPTEVersion); + } + else if (m_isCLF) { setCLFVersion(requestedCLFVersion); } @@ -230,6 +264,10 @@ const char * CTFReaderTransformElt::getTypeName() const static const std::string n(TAG_PROCESS_LIST); return n.c_str(); } +void CTFReaderTransformElt::setID(const std::string& idStr) +{ + getTransform()->setID(idStr.c_str()); +} void CTFReaderTransformElt::setVersion(const CTFVersion & ver) { diff --git a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h index e4e1bacecd..7480cee18a 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h +++ b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h @@ -54,6 +54,9 @@ class CTFReaderTransformElt : public XmlReaderContainerElt const char * getTypeName() const override; + // Sets the ID (if the ID tag is used). + void setID(const std::string& idStr); + // Set the current transform CTF version. void setVersion(const CTFVersion & ver); @@ -71,7 +74,54 @@ class CTFReaderTransformElt : public XmlReaderContainerElt // The associated Transform. CTFReaderTransformPtr m_transform; // Is it a clf file? Or is a clf parser requested. - bool m_isCLF; + bool m_isCLF = false; + bool m_isSMPTE = false; +}; + +// Class for the Id element. +class CTFReaderIdElt : public XmlReaderPlainElt +{ +public: + CTFReaderIdElt() = delete; + CTFReaderIdElt(const std::string & name, + ContainerEltRcPtr & pParent, + unsigned int xmlLocation, + const std::string & xmlFile) + : XmlReaderPlainElt(name, pParent, xmlLocation, xmlFile) + , m_changed(false) + { + } + + ~CTFReaderIdElt() + { + } + + void start(const char ** /* atts */) override + { + m_id.resize(0); + m_changed = false; + } + + void end() override + { + auto* pTransformnElt = dynamic_cast(getParent().get()); + if (pTransformnElt) + { + pTransformnElt->setID(m_id); + } + } + + void setRawData(const char * str, size_t len, unsigned int /* xmlLine */) override + { + // Keep adding to the string. + m_id += std::string(str, len); + m_changed = true; + } + +private: + std::string m_id; + bool m_changed; + }; typedef OCIO_SHARED_PTR CTFReaderTransformEltRcPtr; diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp index 5a21b6cb1d..6e99132aaf 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp @@ -39,8 +39,17 @@ namespace OCIO_NAMESPACE static constexpr unsigned DOUBLE_PRECISION = 15; -void CTFVersion::ReadVersion(const std::string & versionString, CTFVersion & versionOut) +CTFVersion::CTFVersion(const std::string & versionString) + : m_major(0), m_minor(0), m_revision(0) { + // Check if matches the SMPTE 2136-1:2024 namespace URI + if(0 == Platform::Strcasecmp(versionString.c_str(), "http://www.smpte-ra.org/ns/2136-1/2024")) + { + m_version_string = versionString; + return; + } + + // For non-SMPTE namespace versions, parse as MAJOR[.MINOR[.REVISION]] unsigned int numDot = 0; unsigned int numInt = 0; bool canBeDot = false; @@ -78,14 +87,14 @@ void CTFVersion::ReadVersion(const std::string & versionString, CTFVersion & ver throw Exception(os.str().c_str()); } - versionOut.m_major = 0; - versionOut.m_minor = 0; - versionOut.m_revision = 0; + m_major = 0; + m_minor = 0; + m_revision = 0; sscanf(versionString.c_str(), "%d.%d.%d", - &versionOut.m_major, - &versionOut.m_minor, - &versionOut.m_revision); + &m_major, + &m_minor, + &m_revision); } CTFVersion & CTFVersion::operator=(const CTFVersion & rhs) @@ -95,6 +104,7 @@ CTFVersion & CTFVersion::operator=(const CTFVersion & rhs) m_major = rhs.m_major; m_minor = rhs.m_minor; m_revision = rhs.m_revision; + m_version_string = rhs.m_version_string; } return *this; } @@ -105,7 +115,8 @@ bool CTFVersion::operator==(const CTFVersion & rhs) const return m_major == rhs.m_major && m_minor == rhs.m_minor - && m_revision == rhs.m_revision; + && m_revision == rhs.m_revision + && !Platform::Strcasecmp(m_version_string.c_str(), rhs.m_version_string.c_str()); } bool CTFVersion::operator<=(const CTFVersion & rhs) const @@ -126,6 +137,20 @@ bool CTFVersion::operator<(const CTFVersion & rhs) const { if (this == &rhs) return false; + // SMPTE version handling + if(!m_version_string.empty()) + { + // Any SMPTE version is greater than non-SMPTE + if(rhs.m_version_string.empty()) + { + return false; + } + + // TODO: This needs to be more sophisticated probably. + return Platform::Strcasecmp(m_version_string.c_str(), + rhs.m_version_string.c_str()) < 0; + } + if (m_major < rhs.m_major) { return true; diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.h b/src/OpenColorIO/fileformats/ctf/CTFTransform.h index f8fb741c26..83c16dc256 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.h +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.h @@ -19,19 +19,18 @@ namespace OCIO_NAMESPACE { +// TODO: We need to modify this class to hold URI versions for ST variant (or +// hold it somewhere else). class CTFVersion { public: // Will throw if versionString is not formatted like a version. - static void ReadVersion(const std::string & versionString, - CTFVersion & versionOut); + explicit CTFVersion(const std::string & versionString); CTFVersion() - : m_major(0) - , m_minor(0) - , m_revision(0) { } + CTFVersion(unsigned int major, unsigned int minor, unsigned int revision) : m_major(major) , m_minor(minor) @@ -41,7 +40,6 @@ class CTFVersion CTFVersion(unsigned int major, unsigned int minor) : m_major(major) , m_minor(minor) - , m_revision(0) { } @@ -49,6 +47,7 @@ class CTFVersion : m_major(otherVersion.m_major) , m_minor(otherVersion.m_minor) , m_revision(otherVersion.m_revision) + , m_version_string(otherVersion.m_version_string) { } @@ -65,22 +64,33 @@ class CTFVersion friend std::ostream & operator<< (std::ostream & stream, const CTFVersion & rhs) { - stream << rhs.m_major; - if (rhs.m_minor != 0 || rhs.m_revision != 0) + if (!rhs.m_version_string.empty()) + { + stream << rhs.m_version_string; + } + else { - stream << "." << rhs.m_minor; - if (rhs.m_revision != 0) + stream << rhs.m_major; + if (rhs.m_minor != 0 || rhs.m_revision != 0) { - stream << "." << rhs.m_revision; + stream << "." << rhs.m_minor; + if (rhs.m_revision != 0) + { + stream << "." << rhs.m_revision; + } } } return stream; } private: - unsigned int m_major; - unsigned int m_minor; - unsigned int m_revision; + // CTF and CLF uses the numeric version system. + unsigned int m_major = 0; + unsigned int m_minor = 0; + unsigned int m_revision = 0; + + // SMPTE standard uses string version (xml namespace). + std::string m_version_string; }; // diff --git a/src/OpenColorIO/fileformats/xmlutils/XMLReaderUtils.h b/src/OpenColorIO/fileformats/xmlutils/XMLReaderUtils.h index 9a813a2551..9a2aa99573 100644 --- a/src/OpenColorIO/fileformats/xmlutils/XMLReaderUtils.h +++ b/src/OpenColorIO/fileformats/xmlutils/XMLReaderUtils.h @@ -25,10 +25,13 @@ namespace OCIO_NAMESPACE static constexpr char ATTR_ID[] = "id"; static constexpr char ATTR_NAME[] = "name"; +static constexpr char ATTR_XMLNS[] = "xmlns"; + static constexpr char CDL_TAG_COLOR_CORRECTION[] = "ColorCorrection"; static constexpr char TAG_DESCRIPTION[] = "Description"; +static constexpr char TAG_ID[] = "Id"; // move to CTL? static constexpr char TAG_OFFSET[] = "Offset"; static constexpr char TAG_POWER[] = "Power"; static constexpr char TAG_SATNODE[] = "SatNode"; diff --git a/tests/cpu/fileformats/FileFormatCTF_tests.cpp b/tests/cpu/fileformats/FileFormatCTF_tests.cpp index 4dc12578a0..81526e0ddc 100644 --- a/tests/cpu/fileformats/FileFormatCTF_tests.cpp +++ b/tests/cpu/fileformats/FileFormatCTF_tests.cpp @@ -39,6 +39,64 @@ OCIO_ADD_TEST(FileFormatCTF, missing_file) "Error opening test file."); } +OCIO_ADD_TEST(FileFormatCTF, smpte_clf_basic) +{ + { + const std::string ctfFile("clf/smpte/st2136-1b.clf"); + OCIO::LocalCachedFileRcPtr cachedFile; + + OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); + OCIO_REQUIRE_ASSERT((bool)cachedFile); + OCIO_CHECK_EQUAL(cachedFile->m_transform->getName(), ""); + OCIO_CHECK_EQUAL(cachedFile->m_transform->getID(), "urn:uuid:3bae2da8-59c7-44c2-b6c9-76dc0f8cae8c"); + StringUtils::StringVec desc = cachedFile->m_transform->getDescriptions(); + OCIO_REQUIRE_EQUAL(desc.size(), 1); + OCIO_CHECK_EQUAL(desc[0], "CIE-XYZ D65 to CIELAB L*, a*, b* (scaled by 1/100, neutrals at 0.0 chroma)"); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + OCIO_REQUIRE_EQUAL(opList.size(), 3); + OCIO_CHECK_EQUAL(opList[0]->getType(), OCIO::OpData::MatrixType); + OCIO_CHECK_EQUAL(opList[0]->getName(), ""); + OCIO_CHECK_EQUAL(opList[0]->getID(), ""); + + OCIO_CHECK_EQUAL(opList[1]->getType(), OCIO::OpData::GammaType); + OCIO_CHECK_EQUAL(opList[1]->getName(), ""); + OCIO_CHECK_EQUAL(opList[1]->getID(), ""); + + OCIO_CHECK_EQUAL(opList[2]->getType(), OCIO::OpData::MatrixType); + OCIO_CHECK_EQUAL(opList[2]->getName(), ""); + OCIO_CHECK_EQUAL(opList[2]->getID(), ""); + } + + { + const std::string ctfFile("clf/smpte/st2136-1c.clf"); + OCIO::LocalCachedFileRcPtr cachedFile; + + OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); + OCIO_REQUIRE_ASSERT((bool)cachedFile); + OCIO_CHECK_EQUAL(cachedFile->m_transform->getName(), ""); + OCIO_CHECK_EQUAL(cachedFile->m_transform->getID(), "urn:uuid:9d768121-0cf9-40a3-a8e3-7b49f79858a7"); + StringUtils::StringVec desc = cachedFile->m_transform->getDescriptions(); + OCIO_REQUIRE_EQUAL(desc.size(), 2); + OCIO_CHECK_EQUAL(desc[0], "Identity transform illustrating Array bit depth scaling"); + OCIO_CHECK_EQUAL(desc[1], "Can be loaded by either SMPTE or CLF v3 parsers"); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + OCIO_REQUIRE_EQUAL(opList.size(), 3); + OCIO_CHECK_EQUAL(opList[0]->getType(), OCIO::OpData::MatrixType); + OCIO_CHECK_EQUAL(opList[0]->getName(), ""); + OCIO_CHECK_EQUAL(opList[0]->getID(), ""); + + OCIO_CHECK_EQUAL(opList[1]->getType(), OCIO::OpData::Lut1DType); + OCIO_CHECK_EQUAL(opList[1]->getName(), ""); + OCIO_CHECK_EQUAL(opList[1]->getID(), ""); + + OCIO_CHECK_EQUAL(opList[2]->getType(), OCIO::OpData::MatrixType); + OCIO_CHECK_EQUAL(opList[2]->getName(), ""); + OCIO_CHECK_EQUAL(opList[2]->getID(), ""); + + } +} + + OCIO_ADD_TEST(FileFormatCTF, clf_examples) { OCIO::LocalCachedFileRcPtr cachedFile; @@ -1134,6 +1192,7 @@ OCIO_ADD_TEST(FileFormatCTF, tabluation_support) // series of numbers. const std::string ctfFile("clf/tabulation_support.clf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); + OCIO_REQUIRE_ASSERT(cachedFile); const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); OCIO_CHECK_EQUAL(cachedFile->m_transform->getID(), "e0a0ae4b-adc2-4c25-ad70-fa6f31ba219d"); OCIO_REQUIRE_EQUAL(opList.size(), 1); @@ -1887,7 +1946,7 @@ OCIO_ADD_TEST(FileFormatCTF, transform_id_empty) const std::string ctfFile("clf/illegal/transform_id_empty.clf"); OCIO_CHECK_THROW_WHAT(LoadCLFFile(ctfFile), OCIO::Exception, - "Required attribute 'id' does not have a value"); + "Attribute 'id' does not have a value"); } OCIO_ADD_TEST(FileFormatCTF, transform_with_bitdepth_mismatch) diff --git a/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp b/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp index c5ec9c2e9e..64271e58cd 100644 --- a/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp +++ b/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp @@ -47,58 +47,60 @@ OCIO_ADD_TEST(CTFVersion, read_version) OCIO::CTFVersion versionRead; { - OCIO_CHECK_NO_THROW(OCIO::CTFVersion::ReadVersion("1.2.3", versionRead)); + OCIO_CHECK_NO_THROW(versionRead = OCIO::CTFVersion("1.2.3")); const OCIO::CTFVersion version(1, 2, 3); OCIO_CHECK_EQUAL(version, versionRead); } { - OCIO_CHECK_NO_THROW(OCIO::CTFVersion::ReadVersion("1.2", versionRead)); + OCIO_CHECK_NO_THROW(versionRead = OCIO::CTFVersion("1.2")); const OCIO::CTFVersion version(1, 2, 0); OCIO_CHECK_EQUAL(version, versionRead); } { - OCIO_CHECK_NO_THROW(OCIO::CTFVersion::ReadVersion("1", versionRead)); + OCIO_CHECK_NO_THROW(versionRead = OCIO::CTFVersion("1")); const OCIO::CTFVersion version(1, 0, 0); OCIO_CHECK_EQUAL(version, versionRead); } { - OCIO_CHECK_NO_THROW(OCIO::CTFVersion::ReadVersion("1.10", versionRead)); + OCIO_CHECK_NO_THROW(versionRead = OCIO::CTFVersion("1.10")); const OCIO::CTFVersion version(1, 10, 0); OCIO_CHECK_EQUAL(version, versionRead); } { - OCIO_CHECK_NO_THROW(OCIO::CTFVersion::ReadVersion("1.1.0", versionRead)); + OCIO_CHECK_NO_THROW(versionRead = OCIO::CTFVersion("1.1.0")); const OCIO::CTFVersion version(1, 1, 0); OCIO_CHECK_EQUAL(version, versionRead); } { - OCIO_CHECK_NO_THROW(OCIO::CTFVersion::ReadVersion("1.01", versionRead)); + OCIO_CHECK_NO_THROW(versionRead = OCIO::CTFVersion("1.01")); const OCIO::CTFVersion version(1, 1, 0); OCIO_CHECK_EQUAL(version, versionRead); } - OCIO_CHECK_THROW_WHAT(OCIO::CTFVersion::ReadVersion("", versionRead), + // FIXME: add SMPTE version test when supported. + + OCIO_CHECK_THROW_WHAT(versionRead = OCIO::CTFVersion(""), OCIO::Exception, "is not a valid version"); - OCIO_CHECK_THROW_WHAT(OCIO::CTFVersion::ReadVersion("1 2", versionRead), + OCIO_CHECK_THROW_WHAT(versionRead = OCIO::CTFVersion("1 2"), OCIO::Exception, "is not a valid version"); - OCIO_CHECK_THROW_WHAT(OCIO::CTFVersion::ReadVersion("1-2", versionRead), + OCIO_CHECK_THROW_WHAT(versionRead = OCIO::CTFVersion("1-2"), OCIO::Exception, "is not a valid version"); - OCIO_CHECK_THROW_WHAT(OCIO::CTFVersion::ReadVersion("a", versionRead), + OCIO_CHECK_THROW_WHAT(versionRead = OCIO::CTFVersion("a"), OCIO::Exception, "is not a valid version"); - OCIO_CHECK_THROW_WHAT(OCIO::CTFVersion::ReadVersion("1.", versionRead), + OCIO_CHECK_THROW_WHAT(versionRead = OCIO::CTFVersion("1."), OCIO::Exception, "is not a valid version"); - OCIO_CHECK_THROW_WHAT(OCIO::CTFVersion::ReadVersion(".2", versionRead), + OCIO_CHECK_THROW_WHAT(versionRead = OCIO::CTFVersion(".2"), OCIO::Exception, "is not a valid version"); - OCIO_CHECK_THROW_WHAT(OCIO::CTFVersion::ReadVersion("1.0 2", versionRead), + OCIO_CHECK_THROW_WHAT(versionRead = OCIO::CTFVersion("1.0 2"), OCIO::Exception, "is not a valid version"); - OCIO_CHECK_THROW_WHAT(OCIO::CTFVersion::ReadVersion("-1", versionRead), + OCIO_CHECK_THROW_WHAT(versionRead = OCIO::CTFVersion("-1"), OCIO::Exception, "is not a valid version"); } @@ -141,6 +143,9 @@ OCIO_ADD_TEST(CTFVersion, version_write) ostream << version; OCIO_CHECK_EQUAL(ostream.str(), "0"); } + + // FIXME: add SMPTE version test when supported. + } OCIO_ADD_TEST(CTFReaderTransform, accessors) diff --git a/tests/data/files/clf/smpte/st2136-1a-202x.xsd b/tests/data/files/clf/smpte/st2136-1a-202x.xsd new file mode 100644 index 0000000000..e09419d74a --- /dev/null +++ b/tests/data/files/clf/smpte/st2136-1a-202x.xsd @@ -0,0 +1,354 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/tests/data/files/clf/smpte/st2136-1b.clf b/tests/data/files/clf/smpte/st2136-1b.clf new file mode 100644 index 0000000000..ecc0a69047 --- /dev/null +++ b/tests/data/files/clf/smpte/st2136-1b.clf @@ -0,0 +1,26 @@ + + + urn:uuid:3bae2da8-59c7-44c2-b6c9-76dc0f8cae8c + CIE-XYZ D65 to CIELAB L*, a*, b* (scaled by 1/100, neutrals at + 0.0 chroma) + CIE-XYZ, D65 white (scaled [0,1]) + CIELAB L*, a*, b* (scaled by 1/100, neutrals at 0.0 + chroma) + + + 1.052126639 0.000000000 0.000000000 + 0.000000000 1.000000000 0.000000000 + 0.000000000 0.000000000 0.918224951 + + + + + + + + 0.00000000 1.00000000 0.00000000 + 4.31034483 -4.31034483 0.00000000 + 0.00000000 1.72413793 -1.72413793 + + + diff --git a/tests/data/files/clf/smpte/st2136-1c.clf b/tests/data/files/clf/smpte/st2136-1c.clf new file mode 100644 index 0000000000..644734c71c --- /dev/null +++ b/tests/data/files/clf/smpte/st2136-1c.clf @@ -0,0 +1,25 @@ + + + urn:uuid:9d768121-0cf9-40a3-a8e3-7b49f79858a7 + Identity transform illustrating Array bit depth scaling + Can be loaded by either SMPTE or CLF v3 parsers + + + 257.0 0.0 0.0 + 0.0 257.0 0.0 + 0.0 0.0 257.0 + + + + + 0.0 10922.5 21845.0 32767.5 43690.0 54612.5 65535.0 + + + + + 1.0 0.0 0.0 + 0.0 1.0 0.0 + 0.0 0.0 1.0 + + + From 845dba941d402f4dc17ee8890d2ae5f8f19bbee9 Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Wed, 28 Jan 2026 22:23:05 -0800 Subject: [PATCH 02/25] - Modifying the CLF writer to handle the SMPTE variant in a basic form. There are still some lose ends. - The reader no longer allows the Version and xmlns attributes at the same time - added --smpte switch to ociomakeclf tool. Signed-off-by: cuneyt.ozdas --- src/OpenColorIO/fileformats/FileFormatCTF.cpp | 152 +++++++++++------- .../fileformats/ctf/CTFReaderHelper.cpp | 8 + .../fileformats/ctf/CTFTransform.cpp | 89 ++++++---- .../fileformats/ctf/CTFTransform.h | 17 +- src/OpenColorIO/transforms/FileTransform.h | 4 +- src/apps/ociomakeclf/main.cpp | 19 ++- tests/cpu/fileformats/FileFormatCTF_tests.cpp | 1 - 7 files changed, 192 insertions(+), 98 deletions(-) diff --git a/src/OpenColorIO/fileformats/FileFormatCTF.cpp b/src/OpenColorIO/fileformats/FileFormatCTF.cpp index f8f343d168..d0834f4bb9 100644 --- a/src/OpenColorIO/fileformats/FileFormatCTF.cpp +++ b/src/OpenColorIO/fileformats/FileFormatCTF.cpp @@ -32,21 +32,23 @@ /* -This file format reader supports the Academy/ASC Common LUT Format (CLF) and -the Autodesk Color Transform Format (CTF). +This file format reader supports the Academy/ASC Common LUT Format (CLF), SMPTE +Common LUT Format (also CLF) and the Autodesk Color Transform Format (CTF). -The Academy/ASC Common LUT format was an initiative to bring vendors together -to agree on a common LUT format for this industry. Support for CLF is a +The Academy/ASC Common LUT format was an initiative to bring vendors together to +agree on a common LUT format for this industry. Support for CLF is a requirement in order to obtain ACES Logo Certification from the Academy (in several product categories). CLF files are expressed using XML. The spec, AMPAS S-2014-006, is available from: +**** TODO: Text about the SMPTE CLF standard. **** + The Autodesk CTF format is based on the Academy/ASC CLF format and adds several -operators that allow higher quality results by avoiding the need to bake -certain common functions into LUTs. This ranges from simple power functions -to more complicated operators needed to implement very accurate yet compact -ACES Output Transforms. +operators that allow higher quality results by avoiding the need to bake certain +common functions into LUTs. This ranges from simple power functions to more +complicated operators needed to implement very accurate yet compact ACES Output +Transforms. Autodesk CTF was also designed to be able to losslessly serialize any OCIO Processor to a self-contained XML file. This opens up some useful workflow @@ -56,41 +58,41 @@ sometimes also useful for trouble-shooting.) The CTF format is a superset of the CLF format, hence the use of a common parser. Aside from the file extension, the two formats may be distinguished -based on the version attribute in the root ProcessList element. A CLF file -uses the attribute "compCLFversion" whereas a CTF file uses "version". +based on the version attribute in the root ProcessList element. A CLF file uses +the attribute "compCLFversion" whereas a CTF file uses "version". The parser has been carefully designed to assist users in trouble-shooting -problems with files that won't load. A detailed error message is printed, -along with the line number (similar to a compiler). There are also extensive -unit tests to ensure robustness. +problems with files that won't load. A detailed error message is printed, along +with the line number (similar to a compiler). There are also extensive unit +tests to ensure robustness. Note: One frequent point of confusion regarding the CLF syntax relates to the -inBitDepth and outBitDepth attributes in each process node. These bit-depths -DO NOT specify the processing precision, nor do they specify the bit-depth of -the images that are input or output from the transform. The only function of -these bit-depth attributes is to interpret the scaling of the parameter values -in a given process node. This is helpful since, e.g., it avoids the need for +inBitDepth and outBitDepth attributes in each process node. These bit-depths DO +NOT specify the processing precision, nor do they specify the bit-depth of the +images that are input or output from the transform. The only function of these +bit-depth attributes is to interpret the scaling of the parameter values in a +given process node. This is helpful since, e.g., it avoids the need for heuristics to guess whether LUT values are scaled to 10 or 12 bits. These attributes must always be present and must match at the interface between adjacent process nodes. That said, in some cases, one or both may not actually affect the results if they are not required to interpret the scaling of the -parameters. For example, the ASC_CDL parameters are always stored in -normalized form and hence the bit-depths, while required, do not affect their -interpretation. On the other hand, the interpretation of the parameters in -a Matrix op is affected by both the in and out bit-depths. It should be noted +parameters. For example, the ASC_CDL parameters are always stored in normalized +form and hence the bit-depths, while required, do not affect their +interpretation. On the other hand, the interpretation of the parameters in a +Matrix op is affected by both the in and out bit-depths. It should be noted that although the bit-depths imply a certain scaling, they never impose a clamping or quantization, e.g. a LUT array with an outBitDepth of '10i' is free to contain values outside of [0,1023] and to use fractional values. -For the OCIO implementation, we tried to avoid bringing the complexity of -proper bit-depth handling into the design of the ops. Therefore, the objects -always store the values from LUTs, matrices, etc. in normalized form. In other -words, as if the CLF file had all its bit-depths set to "32f". However we do -provide FileBitDepth getters that will return the original scaling read from a -CLF file, and setters that will control the scaling of values to be written to -a CLF file. These getters/setters are only provided for the transforms/ops -(LUT1D, LUT3D, Matrix, and Range) where a CLF file is allowed to store the -parameters in an unnormalized form. +For the OCIO implementation, we tried to avoid bringing the complexity of proper +bit-depth handling into the design of the ops. Therefore, the objects always +store the values from LUTs, matrices, etc. in normalized form. In other words, +as if the CLF file had all its bit-depths set to "32f". However we do provide +FileBitDepth getters that will return the original scaling read from a CLF file, +and setters that will control the scaling of values to be written to a CLF file. +These getters/setters are only provided for the transforms/ops (LUT1D, LUT3D, +Matrix, and Range) where a CLF file is allowed to store the parameters in an +unnormalized form. */ namespace OCIO_NAMESPACE @@ -146,27 +148,52 @@ class LocalFileFormat : public FileFormat void LocalFileFormat::getFormatInfo(FormatInfoVec & formatInfoVec) const { - FormatInfo info; - info.name = FILEFORMAT_CLF; - info.extension = "clf"; - info.capabilities = FormatCapabilityFlags(FORMAT_CAPABILITY_READ | - FORMAT_CAPABILITY_BAKE | - FORMAT_CAPABILITY_WRITE); - info.bake_capabilities = FormatBakeFlags(FORMAT_BAKE_CAPABILITY_3DLUT | - FORMAT_BAKE_CAPABILITY_1DLUT | - FORMAT_BAKE_CAPABILITY_1D_3D_LUT); - formatInfoVec.push_back(info); - - FormatInfo info2; - info2.name = FILEFORMAT_CTF; - info2.extension = "ctf"; - info2.capabilities = FormatCapabilityFlags(FORMAT_CAPABILITY_READ | - FORMAT_CAPABILITY_BAKE | - FORMAT_CAPABILITY_WRITE); - info.bake_capabilities = FormatBakeFlags(FORMAT_BAKE_CAPABILITY_3DLUT | - FORMAT_BAKE_CAPABILITY_1DLUT | - FORMAT_BAKE_CAPABILITY_1D_3D_LUT); - formatInfoVec.push_back(info2); + // CLF - Academy/ASC + { + FormatInfo info; + info.name = FILEFORMAT_CLF_ACADEMY; + info.extension = "clf"; + info.capabilities = FormatCapabilityFlags(FORMAT_CAPABILITY_READ | + FORMAT_CAPABILITY_BAKE | + FORMAT_CAPABILITY_WRITE); + + info.bake_capabilities = FormatBakeFlags( FORMAT_BAKE_CAPABILITY_3DLUT | + FORMAT_BAKE_CAPABILITY_1DLUT | + FORMAT_BAKE_CAPABILITY_1D_3D_LUT); + formatInfoVec.push_back(info); + } + + // CLF - SMPTE + { + FormatInfo info; + info.name = FILEFORMAT_CLF_SMPTE; + info.extension = "clf"; + info.capabilities = FormatCapabilityFlags(FORMAT_CAPABILITY_READ | + FORMAT_CAPABILITY_BAKE | + FORMAT_CAPABILITY_WRITE); + + info.bake_capabilities = FormatBakeFlags( FORMAT_BAKE_CAPABILITY_3DLUT | + FORMAT_BAKE_CAPABILITY_1DLUT | + FORMAT_BAKE_CAPABILITY_1D_3D_LUT); + + formatInfoVec.push_back(info); + } + + // CTF + { + FormatInfo info; + info.name = FILEFORMAT_CTF; + info.extension = "ctf"; + info.capabilities = FormatCapabilityFlags(FORMAT_CAPABILITY_READ | + FORMAT_CAPABILITY_BAKE | + FORMAT_CAPABILITY_WRITE); + + info.bake_capabilities = FormatBakeFlags( FORMAT_BAKE_CAPABILITY_3DLUT | + FORMAT_BAKE_CAPABILITY_1DLUT | + FORMAT_BAKE_CAPABILITY_1D_3D_LUT); + + formatInfoVec.push_back(info); + } } class XMLParserHelper @@ -1570,14 +1597,23 @@ void LocalFileFormat::write(const ConstConfigRcPtr & config, const std::string & formatName, std::ostream & ostream) const { - bool isCLF = false; + + TransformWriter::SubFormat subFormat{TransformWriter::SubFormat::eUNKNOWN}; + if (Platform::Strcasecmp(formatName.c_str(), FILEFORMAT_CLF) == 0) { - isCLF = true; - } - else if (Platform::Strcasecmp(formatName.c_str(), FILEFORMAT_CTF) != 0) + subFormat = TransformWriter::SubFormat::eCLF_AMPAS; + } + else if(Platform::Strcasecmp(formatName.c_str(), FILEFORMAT_CLF_SMPTE) == 0) + { + subFormat = TransformWriter::SubFormat::eCLF_SMPTE; + } + else if (Platform::Strcasecmp(formatName.c_str(), FILEFORMAT_CTF) == 0) + { + subFormat = TransformWriter::SubFormat::eCTF; + } + else { - // Neither a clf nor a ctf. std::ostringstream os; os << "Error: CLF/CTF writer does not also write format " << formatName << "."; throw Exception(os.str().c_str()); @@ -1599,7 +1635,7 @@ void LocalFileFormat::write(const ConstConfigRcPtr & config, ostream << "" << std::endl; XmlFormatter fmt(ostream); - TransformWriter writer(fmt, transform, isCLF); + TransformWriter writer(fmt, transform, subFormat); writer.write(); } diff --git a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp index 9ef7a7d227..274fc03bc5 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp @@ -84,6 +84,10 @@ void CTFReaderTransformElt::start(const char ** atts) { throwMessage("Attribute 'xmlns' does not have a value."); } + if (isVersionFound) + { + throwMessage("SMPTE 'xmlns' version and 'Version' attribute cannot both be present."); + } try { @@ -126,6 +130,10 @@ void CTFReaderTransformElt::start(const char ** atts) { throwMessage("'compCLFversion' and 'Version' cannot both be present."); } + if (isSMPTEVersionFound) + { + throwMessage("SMPTE 'xmlns' version and 'Version' attribute cannot both be present."); + } if (isVersionFound) { throwMessage("'Version' can only be there once."); diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp index 6e99132aaf..46625eeaaf 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp @@ -2542,10 +2542,10 @@ void RangeWriter::writeContent() const TransformWriter::TransformWriter(XmlFormatter & formatter, ConstCTFReaderTransformPtr transform, - bool isCLF) + SubFormat subFormat) : XmlElementWriter(formatter) , m_transform(transform) - , m_isCLF(isCLF) + , m_subFormat(subFormat) { } @@ -2559,25 +2559,38 @@ void TransformWriter::write() const XmlFormatter::Attributes attributes; - CTFVersion writeVersion{ CTF_PROCESS_LIST_VERSION_2_0 }; - - std::ostringstream fversion; - if (m_isCLF) + CTFVersion writeVersion; // This controls the available ops + switch(m_subFormat) { - // Save with CLF version 3. - fversion << 3; - attributes.push_back(XmlFormatter::Attribute(ATTR_COMP_CLF_VERSION, - fversion.str())); + case SubFormat::eUNKNOWN: + throw Exception("Cannot write transform with unknown sub-format."); + break; - } - else - { - writeVersion = GetMinimumVersion(m_transform); - fversion << writeVersion; + case SubFormat::eCLF_AMPAS: + writeVersion = CTF_PROCESS_LIST_VERSION_2_0; + attributes.push_back(XmlFormatter::Attribute( + ATTR_COMP_CLF_VERSION, "3")); + break; + + case SubFormat::eCLF_SMPTE: + writeVersion = CTF_PROCESS_LIST_VERSION_2_0; + + attributes.push_back(XmlFormatter::Attribute( + ATTR_XMLNS, "http://www.smpte-ra.org/ns/2136-1/2024")); // TODO: create a named constant? + + attributes.push_back(XmlFormatter::Attribute( + ATTR_COMP_CLF_VERSION, "ST2136-1:2024")); // TODO: create a named constant? + break; + + case SubFormat::eCTF: + writeVersion = GetMinimumVersion(m_transform); - attributes.push_back(XmlFormatter::Attribute(ATTR_VERSION, - fversion.str())); + std::ostringstream fversion; + fversion << writeVersion; + attributes.push_back(XmlFormatter::Attribute( + ATTR_VERSION, fversion.str())); + break; } std::string id = m_transform->getID(); @@ -2589,9 +2602,18 @@ void TransformWriter::write() const id += op->getCacheID(); } + // TODO: make this hash (optionally?) match the format of SMPTE Id field. id = CacheIDHash(id.c_str(), id.size()); } - attributes.push_back(XmlFormatter::Attribute(ATTR_ID, id)); + + // SMPTE variant will use an Id tag. Others will use an attribute in + // processList. + // TODO: write the attribute for SMPTE as well? + if(m_subFormat == SubFormat::eCLF_AMPAS || + m_subFormat == SubFormat::eCTF) + { + attributes.push_back(XmlFormatter::Attribute(ATTR_ID, id)); + } const std::string& name = m_transform->getName(); if (!name.empty()) @@ -2609,6 +2631,13 @@ void TransformWriter::write() const { XmlScopeIndent scopeIndent(m_formatter); + // SMPTE variant uses the Id tag for id. + if(m_subFormat == SubFormat::eCLF_SMPTE) + { + // TODO: validate the format of the Id to match SMPTE requirements? + m_formatter.writeContentTag(TAG_ID, id); + } + WriteDescriptions(m_formatter, TAG_DESCRIPTION, m_transform->getDescriptions()); const std::string & inputDesc = m_transform->getInputDescriptor(); @@ -2724,6 +2753,8 @@ void TransformWriter::writeOps(const CTFVersion & version) const // values on write. Otherwise, default to 32f. BitDepth inBD = BIT_DEPTH_F32; BitDepth outBD = BIT_DEPTH_F32; + bool isCLF = (m_subFormat == SubFormat::eCLF_AMPAS || + m_subFormat == SubFormat::eCLF_SMPTE); auto & ops = m_transform->getOps(); size_t numOps = ops.size(); @@ -2787,7 +2818,7 @@ void TransformWriter::writeOps(const CTFVersion & version) const paramR, paramG, paramB, paramA); gammaData->getFormatMetadata() = exp->getFormatMetadata(); - if (m_isCLF && !gammaData->isAlphaComponentIdentity()) + if (isCLF && !gammaData->isAlphaComponentIdentity()) { ThrowWriteOp("Exponent with alpha"); } @@ -2800,7 +2831,7 @@ void TransformWriter::writeOps(const CTFVersion & version) const } case OpData::ExposureContrastType: { - if (m_isCLF) + if (isCLF) { ThrowWriteOp("ExposureContrast"); } @@ -2814,7 +2845,7 @@ void TransformWriter::writeOps(const CTFVersion & version) const } case OpData::FixedFunctionType: { - if (m_isCLF) + if (isCLF) { ThrowWriteOp("FixedFunction"); } @@ -2829,7 +2860,7 @@ void TransformWriter::writeOps(const CTFVersion & version) const case OpData::GammaType: { auto gamma = OCIO_DYNAMIC_POINTER_CAST(op); - if (m_isCLF) + if (isCLF) { if (!gamma->isAlphaComponentIdentity()) { @@ -2845,7 +2876,7 @@ void TransformWriter::writeOps(const CTFVersion & version) const } case OpData::GradingPrimaryType: { - if (m_isCLF) + if (isCLF) { ThrowWriteOp("GradingPrimary"); } @@ -2859,7 +2890,7 @@ void TransformWriter::writeOps(const CTFVersion & version) const } case OpData::GradingRGBCurveType: { - if (m_isCLF) + if (isCLF) { ThrowWriteOp("GradingRGBCurve"); } @@ -2873,7 +2904,7 @@ void TransformWriter::writeOps(const CTFVersion & version) const } case OpData::GradingHueCurveType: { - if (m_isCLF) + if (isCLF) { ThrowWriteOp("GradingHueCurve"); } @@ -2887,7 +2918,7 @@ void TransformWriter::writeOps(const CTFVersion & version) const } case OpData::GradingToneType: { - if (m_isCLF) + if (isCLF) { ThrowWriteOp("GradingTone"); } @@ -2911,7 +2942,7 @@ void TransformWriter::writeOps(const CTFVersion & version) const case OpData::Lut1DType: { auto lut = OCIO_DYNAMIC_POINTER_CAST(op); - if (m_isCLF) + if (isCLF) { if (lut->getDirection() != TRANSFORM_DIR_FORWARD) { @@ -2935,7 +2966,7 @@ void TransformWriter::writeOps(const CTFVersion & version) const case OpData::Lut3DType: { auto lut = OCIO_DYNAMIC_POINTER_CAST(op); - if (m_isCLF) + if (isCLF) { if (lut->getDirection() != TRANSFORM_DIR_FORWARD) { @@ -2960,7 +2991,7 @@ void TransformWriter::writeOps(const CTFVersion & version) const { auto matSrc = OCIO_DYNAMIC_POINTER_CAST(op); - if (m_isCLF) + if (isCLF) { if (matSrc->hasAlpha()) { diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.h b/src/OpenColorIO/fileformats/ctf/CTFTransform.h index 83c16dc256..939a5a3a7d 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.h +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.h @@ -275,14 +275,23 @@ typedef OCIO_SHARED_PTR ConstCTFReaderTransformPtr; class TransformWriter : public XmlElementWriter { -public: + public: + enum class SubFormat : uint8_t + { + eUNKNOWN, + eCLF_AMPAS, + eCLF_SMPTE, + eCTF + }; + + public: TransformWriter() = delete; TransformWriter(const TransformWriter &) = delete; TransformWriter& operator=(const TransformWriter &) = delete; TransformWriter(XmlFormatter & formatter, ConstCTFReaderTransformPtr transform, - bool isCLF); + SubFormat SubFormat); virtual ~TransformWriter(); @@ -294,8 +303,8 @@ class TransformWriter : public XmlElementWriter void writeOps(const CTFVersion & version) const; private: - ConstCTFReaderTransformPtr m_transform; - bool m_isCLF; + ConstCTFReaderTransformPtr m_transform; + SubFormat m_subFormat = SubFormat::eUNKNOWN; }; diff --git a/src/OpenColorIO/transforms/FileTransform.h b/src/OpenColorIO/transforms/FileTransform.h index 19b2b8c73f..3a38d2eccc 100644 --- a/src/OpenColorIO/transforms/FileTransform.h +++ b/src/OpenColorIO/transforms/FileTransform.h @@ -177,7 +177,9 @@ FileFormat * CreateFileFormatSpiMtx(); FileFormat * CreateFileFormatTruelight(); FileFormat * CreateFileFormatVF(); -static constexpr char FILEFORMAT_CLF[] = "Academy/ASC Common LUT Format"; +static constexpr char FILEFORMAT_CLF[] = "Academy/ASC Common LUT Format"; // Should we use a the default CTF name? Is this the correct one? +static constexpr char FILEFORMAT_CLF_ACADEMY[] = "Academy/ASC Common LUT Format"; // Is this a good name? +static constexpr char FILEFORMAT_CLF_SMPTE[] = "SMPTE Common LUT Format"; static constexpr char FILEFORMAT_CTF[] = "Color Transform Format"; static constexpr char FILEFORMAT_COLOR_CORRECTION[] = "ColorCorrection"; static constexpr char FILEFORMAT_COLOR_CORRECTION_COLLECTION[] = "ColorCorrectionCollection"; diff --git a/src/apps/ociomakeclf/main.cpp b/src/apps/ociomakeclf/main.cpp index b79c771328..bb013c8677 100644 --- a/src/apps/ociomakeclf/main.cpp +++ b/src/apps/ociomakeclf/main.cpp @@ -31,7 +31,7 @@ static int parse_end_args(int argc, const char * argv[]) return 0; } -void CreateOutputLutFile(const std::string & outLutFilepath, OCIO::ConstGroupTransformRcPtr transform) +void CreateOutputLutFile(const std::string & outLutFilepath, OCIO::ConstGroupTransformRcPtr transform, bool smpte) { // Get the processor. @@ -52,10 +52,14 @@ void CreateOutputLutFile(const std::string & outLutFilepath, OCIO::ConstGroupTra std::ofstream outfs(outLutFilepath, std::ios::out | std::ios::trunc); if (outfs.good()) { + const char* formatName = smpte + ? "SMPTE Common LUT Format" + : "Academy/ASC Common LUT Format"; + try { const auto group = optProcessor->createGroupTransform(); - group->write(config, "Academy/ASC Common LUT Format", outfs); + group->write(config, formatName, outfs); } catch (const OCIO::Exception &) { @@ -79,7 +83,11 @@ void CreateOutputLutFile(const std::string & outLutFilepath, OCIO::ConstGroupTra int main(int argc, const char ** argv) { - bool help = false, verbose = false, measure = false, listCSCColorSpaces = false; + bool help = false; + bool verbose = false; + bool measure = false; + bool listCSCColorSpaces = false; + bool smpte = false; std::string cscColorSpace; ArgParse ap; @@ -96,6 +104,7 @@ int main(int argc, const char ** argv) "--measure", &measure, "Measure (in ms) the CLF write", "--list", &listCSCColorSpaces, "List of the supported CSC color spaces", "--csc %s", &cscColorSpace, "The color space that the input LUT expects and produces", + "--smpte", &smpte, "Use SMPTE CLF format instead of Academy/ASC CLF format", nullptr); if (ap.parse(argc, argv) < 0) @@ -266,12 +275,12 @@ int main(int argc, const char ** argv) m.resume(); // Create the CLF file. - CreateOutputLutFile(outLutFilepath, grp); + CreateOutputLutFile(outLutFilepath, grp, smpte); } else { // Create the CLF file. - CreateOutputLutFile(outLutFilepath, grp); + CreateOutputLutFile(outLutFilepath, grp, smpte); } } catch (OCIO::Exception & ex) diff --git a/tests/cpu/fileformats/FileFormatCTF_tests.cpp b/tests/cpu/fileformats/FileFormatCTF_tests.cpp index 81526e0ddc..fc4bc2e85b 100644 --- a/tests/cpu/fileformats/FileFormatCTF_tests.cpp +++ b/tests/cpu/fileformats/FileFormatCTF_tests.cpp @@ -92,7 +92,6 @@ OCIO_ADD_TEST(FileFormatCTF, smpte_clf_basic) OCIO_CHECK_EQUAL(opList[2]->getType(), OCIO::OpData::MatrixType); OCIO_CHECK_EQUAL(opList[2]->getName(), ""); OCIO_CHECK_EQUAL(opList[2]->getID(), ""); - } } From 21a735d276f9f31530f34691ad23949eaec437c4 Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Wed, 28 Jan 2026 23:21:57 -0800 Subject: [PATCH 03/25] - error out if version and xmlns are present at the same time, "only when" the xmlns is an SMPTE version text. Signed-off-by: cuneyt.ozdas --- src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp index 274fc03bc5..e9dbfb45bb 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp @@ -84,15 +84,16 @@ void CTFReaderTransformElt::start(const char ** atts) { throwMessage("Attribute 'xmlns' does not have a value."); } - if (isVersionFound) - { - throwMessage("SMPTE 'xmlns' version and 'Version' attribute cannot both be present."); - } try { auto version = CTFVersion(atts[i + 1]); + if (isVersionFound) + { + throwMessage("SMPTE 'xmlns' version and 'Version' attribute cannot both be present."); + } + requestedVersion = CTF_PROCESS_LIST_VERSION_2_0; requestedSMPTEVersion = version; isVersionFound = true; From bf7b0dda818ab9a45a19e8bb25caec32c48a1979 Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Thu, 29 Jan 2026 10:35:59 -0800 Subject: [PATCH 04/25] - Fix the tests Signed-off-by: cuneyt.ozdas --- tests/cpu/Baker_tests.cpp | 4 ++-- tests/cpu/transforms/FileTransform_tests.cpp | 6 +++--- tests/cpu/transforms/GroupTransform_tests.cpp | 2 +- tests/python/BakerTest.py | 4 ++-- tests/python/FileTransformTest.py | 3 ++- 5 files changed, 10 insertions(+), 9 deletions(-) diff --git a/tests/cpu/Baker_tests.cpp b/tests/cpu/Baker_tests.cpp index db68bb7e4e..ed058773d0 100644 --- a/tests/cpu/Baker_tests.cpp +++ b/tests/cpu/Baker_tests.cpp @@ -164,8 +164,8 @@ OCIO_ADD_TEST(Baker, bake_3dlut) } } - OCIO_CHECK_EQUAL(12, bake->getNumFormats()); - OCIO_CHECK_EQUAL("cinespace", std::string(bake->getFormatNameByIndex(4))); + OCIO_CHECK_EQUAL(13, bake->getNumFormats()); + OCIO_CHECK_EQUAL("cinespace", std::string(bake->getFormatNameByIndex(5))); OCIO_CHECK_EQUAL("3dl", std::string(bake->getFormatExtensionByIndex(1))); } diff --git a/tests/cpu/transforms/FileTransform_tests.cpp b/tests/cpu/transforms/FileTransform_tests.cpp index 9b78b9c50f..99364f8b25 100644 --- a/tests/cpu/transforms/FileTransform_tests.cpp +++ b/tests/cpu/transforms/FileTransform_tests.cpp @@ -207,9 +207,9 @@ OCIO_ADD_TEST(FileTransform, all_formats) { OCIO::FormatRegistry & formatRegistry = OCIO::FormatRegistry::GetInstance(); OCIO_CHECK_EQUAL(19, formatRegistry.getNumRawFormats()); - OCIO_CHECK_EQUAL(24, formatRegistry.getNumFormats(OCIO::FORMAT_CAPABILITY_READ)); - OCIO_CHECK_EQUAL(12, formatRegistry.getNumFormats(OCIO::FORMAT_CAPABILITY_BAKE)); - OCIO_CHECK_EQUAL(5, formatRegistry.getNumFormats(OCIO::FORMAT_CAPABILITY_WRITE)); + OCIO_CHECK_EQUAL(25, formatRegistry.getNumFormats(OCIO::FORMAT_CAPABILITY_READ)); + OCIO_CHECK_EQUAL(13, formatRegistry.getNumFormats(OCIO::FORMAT_CAPABILITY_BAKE)); + OCIO_CHECK_EQUAL(6, formatRegistry.getNumFormats(OCIO::FORMAT_CAPABILITY_WRITE)); OCIO_CHECK_ASSERT(FormatNameFoundByExtension("3dl", "flame")); OCIO_CHECK_ASSERT(FormatNameFoundByExtension("cc", "ColorCorrection")); diff --git a/tests/cpu/transforms/GroupTransform_tests.cpp b/tests/cpu/transforms/GroupTransform_tests.cpp index 67a0f656df..f9b53b9016 100644 --- a/tests/cpu/transforms/GroupTransform_tests.cpp +++ b/tests/cpu/transforms/GroupTransform_tests.cpp @@ -70,7 +70,7 @@ std::string GetFormatName(const std::string & extension) OCIO_ADD_TEST(GroupTransform, write_formats) { - OCIO_CHECK_EQUAL(OCIO::GroupTransform::GetNumWriteFormats(), 5); + OCIO_CHECK_EQUAL(OCIO::GroupTransform::GetNumWriteFormats(), 6); OCIO_CHECK_EQUAL(GetFormatName("CLF"), OCIO::FILEFORMAT_CLF); OCIO_CHECK_EQUAL(GetFormatName("CTF"), OCIO::FILEFORMAT_CTF); diff --git a/tests/python/BakerTest.py b/tests/python/BakerTest.py index aa48327869..2ba8810861 100644 --- a/tests/python/BakerTest.py +++ b/tests/python/BakerTest.py @@ -154,6 +154,6 @@ def test_interface(self): self.assert_lut_match(output, self.EXPECTED_LUT) fmts = bake.getFormats() - self.assertEqual(len(fmts), 12) - self.assertEqual("cinespace", fmts[4][0]) + self.assertEqual(len(fmts), 13) + self.assertEqual("cinespace", fmts[5][0]) self.assertEqual("3dl", fmts[1][1]) diff --git a/tests/python/FileTransformTest.py b/tests/python/FileTransformTest.py index 31c51cdd07..9765d33189 100644 --- a/tests/python/FileTransformTest.py +++ b/tests/python/FileTransformTest.py @@ -21,6 +21,7 @@ class FileTransformTest(unittest.TestCase, TransformsBaseTest): ('ColorCorrectionCollection', 'ccc'), ('ColorDecisionList', 'cdl'), ('Academy/ASC Common LUT Format', 'clf'), + ('SMPTE Common LUT Format', 'clf'), ('Color Transform Format', 'ctf'), ('cinespace', 'csp'), ('Discreet 1D LUT', 'lut'), @@ -111,7 +112,7 @@ def test_getformats(self): self.assertEqual(format_name, name) self.assertEqual(format_ext, ext) - self.assertEqual(format_iterator.__len__(), 24) + self.assertEqual(format_iterator.__len__(), 25) def test_interpolation(self): """ From 991f4588f6cf5ed734ed49f1d35faaeb38e7fa73 Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Fri, 30 Jan 2026 17:15:31 -0800 Subject: [PATCH 05/25] - Added ST2136-1:2024 compliant ID generation - Now enforcing the ID to be ST2136-1:2024 on read and write. - now enforcing content of CLF version string if it's present in a SMPTE CLF. - Added more tests Signed-off-by: cuneyt.ozdas --- src/OpenColorIO/HashUtils.cpp | 24 ++++ src/OpenColorIO/HashUtils.h | 4 + .../fileformats/ctf/CTFReaderHelper.cpp | 17 +++ .../fileformats/ctf/CTFReaderHelper.h | 9 +- .../fileformats/ctf/CTFReaderUtils.cpp | 16 +++ .../fileformats/ctf/CTFReaderUtils.h | 1 + .../fileformats/ctf/CTFTransform.cpp | 52 +++++-- .../fileformats/ctf/CTFTransform.h | 1 + tests/cpu/fileformats/FileFormatCTF_tests.cpp | 135 +++++++++++++----- 9 files changed, 205 insertions(+), 54 deletions(-) diff --git a/src/OpenColorIO/HashUtils.cpp b/src/OpenColorIO/HashUtils.cpp index 15f775faa0..627ab20661 100644 --- a/src/OpenColorIO/HashUtils.cpp +++ b/src/OpenColorIO/HashUtils.cpp @@ -2,6 +2,7 @@ // Copyright Contributors to the OpenColorIO Project. #include +#include #include @@ -25,4 +26,27 @@ std::string CacheIDHash(const char * array, std::size_t size) return oss.str(); } +std::string CacheIDHashUUID(const char * array, std::size_t size) +{ + XXH128_hash_t hash = XXH3_128bits(array, size); + + // Make sure that we have full, zero-padded 32 chars. + std::stringstream oss; + oss << std::hex << std::setfill('0'); + oss << std::setw(16) << hash.high64; + oss << std::setw(16) << hash.low64; + + // Format into 8-4-4-4-12 form. + std::string hex = oss.str(); + std::string uuid = + hex.substr(0, 8) + "-" + + hex.substr(8, 4) + "-" + + hex.substr(12, 4) + "-" + + hex.substr(16, 4) + "-" + + hex.substr(20, 12); + + return uuid; +} + + } // namespace OCIO_NAMESPACE diff --git a/src/OpenColorIO/HashUtils.h b/src/OpenColorIO/HashUtils.h index 66c3b6e3fd..cf53ab1cba 100644 --- a/src/OpenColorIO/HashUtils.h +++ b/src/OpenColorIO/HashUtils.h @@ -14,6 +14,10 @@ namespace OCIO_NAMESPACE std::string CacheIDHash(const char * array, std::size_t size); +// Generates 128 bit UUID in the form of 8-4-4-4-12 using the hash of the passed +// string. +std::string CacheIDHashUUID(const char * array, std::size_t size); + } // namespace OCIO_NAMESPACE #endif diff --git a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp index e9dbfb45bb..1a2cfdf467 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp @@ -307,6 +307,23 @@ bool CTFReaderTransformElt::isCLF() const return getTransform()->isCLF(); } +////////////////////////////////////////////////////////// +void CTFReaderIdElt::end() +{ + if(!ValidateSMPTEId(m_id)) + { + std::ostringstream ss; + ss << "'" << m_id << "' is not a ST2136-1:2024 complaint Id value."; + throwMessage(ss.str()); + } + + auto* pTransformnElt = dynamic_cast(getParent().get()); + if (pTransformnElt) + { + pTransformnElt->setID(m_id); + } +} + ////////////////////////////////////////////////////////// CTFReaderArrayElt::CTFReaderArrayElt(const std::string & name, diff --git a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h index 7480cee18a..d248bf6248 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h +++ b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h @@ -102,14 +102,7 @@ class CTFReaderIdElt : public XmlReaderPlainElt m_changed = false; } - void end() override - { - auto* pTransformnElt = dynamic_cast(getParent().get()); - if (pTransformnElt) - { - pTransformnElt->setID(m_id); - } - } + void end() override; void setRawData(const char * str, size_t len, unsigned int /* xmlLine */) override { diff --git a/src/OpenColorIO/fileformats/ctf/CTFReaderUtils.cpp b/src/OpenColorIO/fileformats/ctf/CTFReaderUtils.cpp index ffd73cbd43..89eb7f9f71 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFReaderUtils.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFReaderUtils.cpp @@ -3,6 +3,7 @@ #include #include +#include #include "fileformats/ctf/CTFReaderUtils.h" #include "Platform.h" @@ -173,4 +174,19 @@ const char * ConvertGradingStyleAndDirToString(GradingStyle style, TransformDire throw Exception(os.str().c_str()); } + +bool ValidateSMPTEId(const std::string& id) +{ + static const std::regex clf_id_regex( + "^urn:uuid:" + "[0-9a-fA-F]{8}-" + "[0-9a-fA-F]{4}-" + "[0-9a-fA-F]{4}-" + "[0-9a-fA-F]{4}-" + "[0-9a-fA-F]{12}$"); + + return std::regex_match(id, clf_id_regex); +} + + } // namespace OCIO_NAMESPACE diff --git a/src/OpenColorIO/fileformats/ctf/CTFReaderUtils.h b/src/OpenColorIO/fileformats/ctf/CTFReaderUtils.h index 805e95bb12..4e2724900a 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFReaderUtils.h +++ b/src/OpenColorIO/fileformats/ctf/CTFReaderUtils.h @@ -18,6 +18,7 @@ void ConvertStringToGradingStyleAndDir(const char * str, TransformDirection & dir); const char * ConvertGradingStyleAndDirToString(GradingStyle style, TransformDirection dir); +bool ValidateSMPTEId(const std::string& id); static constexpr char TAG_ACES[] = "ACES"; static constexpr char TAG_ACES_PARAMS[] = "ACESParams"; diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp index 46625eeaaf..b48c556568 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp @@ -2,6 +2,7 @@ // Copyright Contributors to the OpenColorIO Project. #include +#include #include "BitDepthUtils.h" #include "fileformats/ctf/CTFReaderUtils.h" @@ -42,13 +43,25 @@ static constexpr unsigned DOUBLE_PRECISION = 15; CTFVersion::CTFVersion(const std::string & versionString) : m_major(0), m_minor(0), m_revision(0) { - // Check if matches the SMPTE 2136-1:2024 namespace URI + // Check if matches the SMPTE 2136-1:2024 namespace URI + // TODO: To make this future-proof, we may want to exclude the year in these + // tests. /coz if(0 == Platform::Strcasecmp(versionString.c_str(), "http://www.smpte-ra.org/ns/2136-1/2024")) { m_version_string = versionString; return; } + // We also allow "ST2136-1:2024" for CLF version. + // TODO: I'm not sure if this is a good idea or not, keeping the CLF version + // numeric-only feels much cleaner and would avoid complications (such as + // version comparison). /coz + if(0 == Platform::Strcasecmp(versionString.c_str(), "ST2136-1:2024")) + { + m_version_string = versionString; + return; + } + // For non-SMPTE namespace versions, parse as MAJOR[.MINOR[.REVISION]] unsigned int numDot = 0; unsigned int numInt = 0; @@ -2596,14 +2609,14 @@ void TransformWriter::write() const std::string id = m_transform->getID(); if (id.empty()) { - auto & ops = m_transform->getOps(); - for (auto op : ops) - { - id += op->getCacheID(); - } + id = generateID(); + } - // TODO: make this hash (optionally?) match the format of SMPTE Id field. - id = CacheIDHash(id.c_str(), id.size()); + if(m_subFormat == SubFormat::eCLF_SMPTE && !ValidateSMPTEId(id)) + { + std::ostringstream ss; + ss << "'" << id << "' is not a ST2136-1:2024 compliant Id value."; + throw Exception(ss.str().c_str()); } // SMPTE variant will use an Id tag. Others will use an attribute in @@ -2694,6 +2707,29 @@ void TransformWriter::writeProcessListMetadata(const FormatMetadataImpl& m) cons } } +std::string TransformWriter::generateID() const +{ + std::string id; + auto & ops = m_transform->getOps(); + for (auto op : ops) + { + id += op->getCacheID(); + } + + // If this is smpte, format the id to match the requirements Otherwise use + // the original cache ID for backward compatibility. + if(m_subFormat == SubFormat::eCLF_SMPTE) + { + id = "urn:uuid:" + CacheIDHashUUID(id.c_str(), id.size()); + } + else + { + id = CacheIDHash(id.c_str(), id.size()); + } + + return id; +} + namespace { void ThrowWriteOp(const std::string & type) diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.h b/src/OpenColorIO/fileformats/ctf/CTFTransform.h index 939a5a3a7d..0de5f126d8 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.h +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.h @@ -301,6 +301,7 @@ class TransformWriter : public XmlElementWriter void writeProcessListMetadata(const FormatMetadataImpl & m) const; void writeOpMetadata(const FormatMetadataImpl & m) const; void writeOps(const CTFVersion & version) const; + std::string generateID() const; private: ConstCTFReaderTransformPtr m_transform; diff --git a/tests/cpu/fileformats/FileFormatCTF_tests.cpp b/tests/cpu/fileformats/FileFormatCTF_tests.cpp index fc4bc2e85b..62bc052a25 100644 --- a/tests/cpu/fileformats/FileFormatCTF_tests.cpp +++ b/tests/cpu/fileformats/FileFormatCTF_tests.cpp @@ -1948,6 +1948,14 @@ OCIO_ADD_TEST(FileFormatCTF, transform_id_empty) "Attribute 'id' does not have a value"); } +OCIO_ADD_TEST(FileFormatCTF, transform_id_invalid) +{ + const std::string ctfFile("clf/smpte/transform_id_invalid.clf"); + OCIO_CHECK_THROW_WHAT(LoadCLFFile(ctfFile), + OCIO::Exception, + "'Some Random Text' is not a ST2136-1:2024 complaint Id value."); +} + OCIO_ADD_TEST(FileFormatCTF, transform_with_bitdepth_mismatch) { // Even though we normalize the bit-depths after reading, any mismatches in @@ -3856,10 +3864,16 @@ void WriteGroupCTF(OCIO::ConstGroupTransformRcPtr group, std::ostringstream & ou group->write(cfg, OCIO::FILEFORMAT_CTF, outputTransform); } -void WriteGroupCLF(OCIO::ConstGroupTransformRcPtr group, std::ostringstream & outputTransform) +void WriteGroupCLF_Academy(OCIO::ConstGroupTransformRcPtr group, std::ostringstream & outputTransform) +{ + OCIO::ConstConfigRcPtr cfg = OCIO::Config::CreateRaw(); + group->write(cfg, OCIO::FILEFORMAT_CLF_ACADEMY, outputTransform); +} + +void WriteGroupCLF_SMPTE(OCIO::ConstGroupTransformRcPtr group, std::ostringstream & outputTransform) { OCIO::ConstConfigRcPtr cfg = OCIO::Config::CreateRaw(); - group->write(cfg, OCIO::FILEFORMAT_CLF, outputTransform); + group->write(cfg, OCIO::FILEFORMAT_CLF_SMPTE, outputTransform); } void ValidateFixedFunctionStyle(OCIO::FixedFunctionOpData::Style style, @@ -5453,7 +5467,7 @@ OCIO_ADD_TEST(CTFTransform, save_lut1d_interpolation) group->appendTransform(lut); std::ostringstream outputTransform; - OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransform)); + OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransform)); { const std::string result = outputTransform.str(); @@ -5468,7 +5482,7 @@ OCIO_ADD_TEST(CTFTransform, save_lut1d_interpolation) lut->setInterpolation(OCIO::INTERP_BEST); group->appendTransform(lut); - OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransform)); + OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransform)); { const std::string result = outputTransform.str(); @@ -5483,7 +5497,7 @@ OCIO_ADD_TEST(CTFTransform, save_lut1d_interpolation) lut->setInterpolation(OCIO::INTERP_LINEAR); group->appendTransform(lut); - OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransform)); + OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransform)); { const std::string result = outputTransform.str(); @@ -5497,7 +5511,7 @@ OCIO_ADD_TEST(CTFTransform, save_lut1d_interpolation) lut->setInterpolation(OCIO::INTERP_CUBIC); group->appendTransform(lut); - OCIO_CHECK_THROW_WHAT(WriteGroupCLF(group, outputTransform), OCIO::Exception, + OCIO_CHECK_THROW_WHAT(WriteGroupCLF_Academy(group, outputTransform), OCIO::Exception, "1D LUT does not support interpolation algorithm: cubic"); } @@ -5653,11 +5667,13 @@ OCIO_ADD_TEST(CTFTransform, load_edit_save_matrix_clf) const double offset[] = { 0.1, 1.2, 2.3, 0.0 }; matTrans->setOffset(offset); - std::ostringstream outputTransform; - OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransform)); + // CLF Academy + { + std::ostringstream outputTransform; + OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransform)); - const std::string expectedCLF{ -R"( + const std::string expectedCLF_Academy{ + R"( Basic matrix example using CLF v2 dim syntax RGB @@ -5673,20 +5689,60 @@ R"( -)" }; +)"}; - OCIO_CHECK_EQUAL(expectedCLF.size(), outputTransform.str().size()); - OCIO_CHECK_EQUAL(expectedCLF, outputTransform.str()); + OCIO_CHECK_EQUAL(expectedCLF_Academy.size(), outputTransform.str().size()); + OCIO_CHECK_EQUAL(expectedCLF_Academy, outputTransform.str()); + } - const double offsetAlpha[] = { 0.1, 1.2, 2.3, 0.9 }; - matTrans->setOffset(offsetAlpha); + // CLF SMPTE + { + // The ID is not SMPTE compliant. + std::ostringstream outputTransform; + OCIO_CHECK_THROW_WHAT(WriteGroupCLF_SMPTE(group, outputTransform), OCIO::Exception, + "'b5cc7aed-d405-4d8b-b64b-382b2341a378' is not a ST2136-1:2024 compliant Id value."); - std::ostringstream outputTransformCTF; - OCIO_CHECK_NO_THROW(WriteGroupCTF(group, outputTransformCTF)); + // Fix the ID to be SMPTE compliant. + group->getFormatMetadata().setID("urn:uuid:b5cc7aed-d405-4d8b-b64b-382b2341a378"); + + outputTransform.str(""); + OCIO_CHECK_NO_THROW(WriteGroupCLF_SMPTE(group, outputTransform)); - const std::string expectedCTF{ -R"( - + const std::string expectedCLF_SMPTE{ + R"( + + urn:uuid:b5cc7aed-d405-4d8b-b64b-382b2341a378 + Basic matrix example using CLF v2 dim syntax + RGB + XYZ + + Legacy matrix + Note that dim="3 3 3" should be supported for CLF v2 compatibility + Added description + + 0.4123908 0.35758434 0.18048079 0.1 + 0.21263901 0.71516868 0.07219232 1.2 + 0.01933082 0.01191948 0.95053215 2.3 + + + +)"}; + + OCIO_CHECK_EQUAL(expectedCLF_SMPTE.size(), outputTransform.str().size()); + OCIO_CHECK_EQUAL(expectedCLF_SMPTE, outputTransform.str()); + } + + // CTF + { + const double offsetAlpha[] = { 0.1, 1.2, 2.3, 0.9 }; + matTrans->setOffset(offsetAlpha); + + std::ostringstream outputTransformCTF; + OCIO_CHECK_NO_THROW(WriteGroupCTF(group, outputTransformCTF)); + + const std::string expectedCTF{ + R"( + Basic matrix example using CLF v2 dim syntax RGB XYZ @@ -5702,10 +5758,13 @@ R"( -)" }; +)"}; + + OCIO_CHECK_EQUAL(expectedCTF.size(), outputTransformCTF.str().size()); + OCIO_CHECK_EQUAL(expectedCTF, outputTransformCTF.str()); + } + - OCIO_CHECK_EQUAL(expectedCTF.size(), outputTransformCTF.str().size()); - OCIO_CHECK_EQUAL(expectedCTF, outputTransformCTF.str()); } OCIO_ADD_TEST(CTFTransform, matrix3x3_clf) @@ -5725,7 +5784,7 @@ OCIO_ADD_TEST(CTFTransform, matrix3x3_clf) group->appendTransform(mat); std::ostringstream outputTransform; - OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransform)); + OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransform)); // In/out bit-depth equal, matrix not scaled. const std::string expected{ R"( @@ -5781,7 +5840,7 @@ OCIO_ADD_TEST(CTFTransform, matrix_offset_alpha_ctf) OCIO_CHECK_EQUAL(expected, outputTransform.str()); // Alpha not handled by CLF. - OCIO_CHECK_THROW_WHAT(WriteGroupCLF(group, outputTransform), + OCIO_CHECK_THROW_WHAT(WriteGroupCLF_Academy(group, outputTransform), OCIO::Exception, "Transform uses the 'Matrix with alpha component' op which cannot be written as CLF"); } @@ -5974,7 +6033,7 @@ OCIO_ADD_TEST(CTFTransform, cdl_clf) subSub3.addAttribute("LastName", "Lean"); std::ostringstream outputTransform; - OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransform)); + OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransform)); const std::string expected{ R"( @@ -6138,7 +6197,7 @@ OCIO_ADD_TEST(CTFTransform, range1_clf) group->appendTransform(range); std::ostringstream outputTransform; - OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransform)); + OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransform)); const std::string expected{ "\n" @@ -6173,7 +6232,7 @@ OCIO_ADD_TEST(CTFTransform, range2_clf) group->appendTransform(range); std::ostringstream outputTransform; - OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransform)); + OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransform)); const std::string expected{ "\n" @@ -6205,7 +6264,7 @@ OCIO_ADD_TEST(CTFTransform, range3_clf) group->appendTransform(range); std::ostringstream outputTransform; - OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransform)); + OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransform)); const std::string expected{ R"( @@ -6239,7 +6298,7 @@ OCIO_ADD_TEST(CTFTransform, range4_clf) group->appendTransform(range); std::ostringstream outputTransform; - OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransform)); + OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransform)); // Range is saved in the forward direction. const std::string expected{ R"( @@ -6314,7 +6373,7 @@ OCIO_ADD_TEST(CTFTransform, gamma1_ctf) OCIO_CHECK_EQUAL(expected, outputTransform.str()); std::ostringstream outputTransformCLF; - OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransformCLF)); + OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransformCLF)); const std::string expectedCLF{ R"( @@ -6357,7 +6416,7 @@ OCIO_ADD_TEST(CTFTransform, gamma1_mirror_ctf) OCIO_CHECK_EQUAL(expected, outputTransform.str()); std::ostringstream outputTransformCLF; - OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransformCLF)); + OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransformCLF)); const std::string expectedCLF{ R"( @@ -6400,7 +6459,7 @@ OCIO_ADD_TEST(CTFTransform, gamma1_pass_thru_ctf) OCIO_CHECK_EQUAL(expected, outputTransform.str()); std::ostringstream outputTransformCLF; - OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransformCLF)); + OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransformCLF)); const std::string expectedCLF{ R"( @@ -6449,7 +6508,7 @@ OCIO_ADD_TEST(CTFTransform, gamma2_ctf) // CLF does not allow alpha channel. std::ostringstream outputTransformCLF; - OCIO_CHECK_THROW_WHAT(WriteGroupCLF(group, outputTransformCLF), + OCIO_CHECK_THROW_WHAT(WriteGroupCLF_Academy(group, outputTransformCLF), OCIO::Exception, "Transform uses the 'Gamma with alpha component' op which cannot be written as CLF"); } @@ -6485,7 +6544,7 @@ OCIO_ADD_TEST(CTFTransform, gamma3_ctf) // CLF does not allow alpha channel. std::ostringstream outputTransformCLF; - OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransformCLF)); + OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransformCLF)); const std::string expectedCLF{ R"( @@ -7735,7 +7794,7 @@ OCIO_ADD_TEST(CTFTransform, lut1d_clf) group->appendTransform(lut); std::ostringstream outputTransform; - OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransform)); + OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransform)); const std::string expected{ R"( @@ -7762,7 +7821,7 @@ OCIO_ADD_TEST(CTFTransform, lut1d_inverse_clf) group->appendTransform(lut); std::ostringstream outputTransform; - OCIO_CHECK_THROW_WHAT(WriteGroupCLF(group, outputTransform), + OCIO_CHECK_THROW_WHAT(WriteGroupCLF_Academy(group, outputTransform), OCIO::Exception, "Transform uses the 'InverseLUT1D' op which cannot be written as CLF"); } @@ -8140,7 +8199,7 @@ OCIO_ADD_TEST(CTFTransform, lut3d_inverse_clf) group->appendTransform(lut); std::ostringstream outputTransform; - OCIO_CHECK_THROW_WHAT(WriteGroupCLF(group, outputTransform), + OCIO_CHECK_THROW_WHAT(WriteGroupCLF_Academy(group, outputTransform), OCIO::Exception, "Transform uses the 'InverseLUT3D' op which cannot be written as CLF"); } From a41911e7b7aea2a1128fda17547f3742a75ccc6f Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Fri, 30 Jan 2026 17:17:21 -0800 Subject: [PATCH 06/25] - removing the st2136 schema file. Signed-off-by: cuneyt.ozdas --- tests/data/files/clf/smpte/st2136-1a-202x.xsd | 354 ------------------ 1 file changed, 354 deletions(-) delete mode 100644 tests/data/files/clf/smpte/st2136-1a-202x.xsd diff --git a/tests/data/files/clf/smpte/st2136-1a-202x.xsd b/tests/data/files/clf/smpte/st2136-1a-202x.xsd deleted file mode 100644 index e09419d74a..0000000000 --- a/tests/data/files/clf/smpte/st2136-1a-202x.xsd +++ /dev/null @@ -1,354 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - From c3e08ad856c3a7e460b3e367038cc56f18226e78 Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Fri, 30 Jan 2026 17:47:40 -0800 Subject: [PATCH 07/25] - Adding the missing test file Signed-off-by: cuneyt.ozdas --- .../files/clf/smpte/transform_id_invalid.clf | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 tests/data/files/clf/smpte/transform_id_invalid.clf diff --git a/tests/data/files/clf/smpte/transform_id_invalid.clf b/tests/data/files/clf/smpte/transform_id_invalid.clf new file mode 100644 index 0000000000..6e229ed438 --- /dev/null +++ b/tests/data/files/clf/smpte/transform_id_invalid.clf @@ -0,0 +1,26 @@ + + + Some Random Text + CIE-XYZ D65 to CIELAB L*, a*, b* (scaled by 1/100, neutrals at + 0.0 chroma) + CIE-XYZ, D65 white (scaled [0,1]) + CIELAB L*, a*, b* (scaled by 1/100, neutrals at 0.0 + chroma) + + + 1.052126639 0.000000000 0.000000000 + 0.000000000 1.000000000 0.000000000 + 0.000000000 0.000000000 0.918224951 + + + + + + + + 0.00000000 1.00000000 0.00000000 + 4.31034483 -4.31034483 0.00000000 + 0.00000000 1.72413793 -1.72413793 + + + From f54a6f801b9efa92449c00666d5cea0f8adb962f Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Mon, 2 Feb 2026 22:39:51 -0800 Subject: [PATCH 08/25] - Changed the ociomakeclf format specifiying argument from --smpte to more generic --format %s - For SMPTE variant, the write now writes v3 instead of ST2136-1:2024 - Re-worked the version loading logic to untangle it a bit. - replaced the clf test data folder with the new folder structure and updated the existing test accordingly. - TODO: add tests for the newly added clf files Signed-off-by: cuneyt.ozdas --- .../fileformats/ctf/CTFReaderHelper.cpp | 17 +- .../fileformats/ctf/CTFTransform.cpp | 10 +- src/apps/ociomakeclf/main.cpp | 26 +- tests/cpu/OpOptimizers_tests.cpp | 8 +- tests/cpu/fileformats/FileFormatCTF_tests.cpp | 48 +- tests/cpu/transforms/FileTransform_tests.cpp | 2 +- .../files/clf/aces_to_video_with_look.clf | 2 +- tests/data/files/clf/bit_depth_identity.clf | 25 + tests/data/files/clf/cdl_all_styles.clf | 2 +- tests/data/files/clf/cdl_clamp_fwd.clf | 2 +- tests/data/files/clf/cdl_missing_sat.clf | 2 +- tests/data/files/clf/cdl_missing_sop.clf | 2 +- tests/data/files/clf/cdl_missing_style.clf | 2 +- tests/data/files/clf/difficult_syntax.clf | 29 +- tests/data/files/clf/exponent_all_styles.clf | 2 +- .../files/clf/illegal/array_bad_dimension.clf | 2 +- .../files/clf/illegal/array_bad_value.clf | 2 +- .../clf/illegal/array_missing_values.clf | 2 +- .../clf/illegal/array_too_many_values.clf | 2 +- .../data/files/clf/illegal/cdl_bad_power.clf | 2 +- tests/data/files/clf/illegal/cdl_bad_sat.clf | 2 +- .../data/files/clf/illegal/cdl_bad_slope.clf | 2 +- .../data/files/clf/illegal/cdl_bad_style.clf | 2 +- .../files/clf/illegal/cdl_missing_offset.clf | 2 +- .../files/clf/illegal/cdl_missing_power.clf | 2 +- .../files/clf/illegal/cdl_missing_slope.clf | 2 +- .../files/clf/illegal/exponent_bad_param.clf | 2 +- .../files/clf/illegal/exponent_bad_value.clf | 2 +- .../data/files/clf/illegal/indexMap_test2.clf | 2 +- .../data/files/clf/illegal/log_bad_param.clf | 2 +- .../data/files/clf/illegal/log_bad_style.clf | 2 +- .../clf/illegal/log_missing_breakpnt.clf | 2 +- .../lut1d_half_domain_missing_values.clf | 2 +- .../illegal/lut1d_half_domain_set_false.clf | 2 +- .../clf/illegal/lut1d_raw_half_set_false.clf | 2 +- .../files/clf/illegal/lut3d_unequal_size.clf | 2 +- .../files/clf/illegal/matrix_end_missing.clf | 2 +- .../clf/illegal/process_list_missing.clf | 2 +- .../files/clf/illegal/range_bad_noclamp.clf | 4 +- .../files/clf/illegal/range_bad_values.clf | 2 +- tests/data/files/clf/illegal/range_empty.clf | 2 +- .../clf/illegal/range_nonmatching_clamp.clf | 2 +- .../clf/illegal/transform_bad_outdepth.clf | 2 +- .../illegal/transform_bitdepth_mismatch.clf | 6 +- .../clf/illegal/transform_corrupted_tag.clf | 4 +- .../illegal/transform_element_end_missing.clf | 4 +- .../files/clf/illegal/transform_empty.clf | 4 +- .../files/clf/illegal/transform_id_empty.clf | 5 - .../clf/illegal/transform_missing_id.clf | 5 - .../illegal/transform_missing_inbitdepth.clf | 2 +- .../illegal/transform_missing_outbitdepth.clf | 2 +- .../files/clf/illegal/unknown_elements.clf | 4 +- tests/data/files/clf/info_example.clf | 4 +- tests/data/files/clf/inverseOf_id_test.clf | 2 +- tests/data/files/clf/log_all_styles.clf | 2 +- tests/data/files/clf/lut1d_32f_example.clf | 2 +- tests/data/files/clf/lut1d_comp.clf | 2 +- tests/data/files/clf/lut1d_example.clf | 2 +- .../clf/lut1d_half_domain_raw_half_set.clf | 6 +- tests/data/files/clf/lut1d_long.clf | 2 +- tests/data/files/clf/lut1d_lut3d_lut1d.clf | 2 +- .../data/files/clf/lut3d_17x17x17_10i_12i.clf | 2 +- tests/data/files/clf/lut3d_as_matrix.clf | 2 +- tests/data/files/clf/lut3d_bizarre.clf | 2 +- .../data/files/clf/lut3d_identity_12i_16f.clf | 2 +- .../files/clf/lut3d_preview_tier_test.clf | 2 +- tests/data/files/clf/matrix_3x4_example.clf | 2 +- tests/data/files/clf/matrix_example_utf8.clf | 2 +- tests/data/files/clf/matrix_no_newlines.clf | 2 +- tests/data/files/clf/matrix_windows.clf | 20 +- tests/data/files/clf/multiple_ops.clf | 2 +- .../illegal/log_bad_version.clf | 2 +- .../illegal/process_list_bad_version.clf | 2 +- .../illegal/process_list_higher_version.clf | 2 +- .../illegal/transform_id_empty.clf | 5 + .../illegal/transform_missing_id.clf | 5 + .../{ => pre-smpte_only}/matrix_example.clf | 2 +- .../process_list_v3_namespace.clf | 11 + tests/data/files/clf/range.clf | 2 +- tests/data/files/clf/range_test1_clamp.clf | 2 +- tests/data/files/clf/range_test1_noclamp.clf | 2 +- tests/data/files/clf/range_test2.clf | 4 +- .../smpte_only/broadcast_profile_lut33.clf | 35997 ++++++++++++++++ .../clf/smpte_only/illegal/id_bad_value.clf | 25 + .../data/files/clf/smpte_only/namespaces.clf | 14 + tests/data/files/clf/smpte_only/signature.clf | 59 + tests/data/files/clf/tabulation_support.clf | 2 +- tests/data/files/clf/xyz_to_rgb.clf | 2 +- tests/data/files/reference_nested_2.ctf | 2 +- tests/data/files/reference_one_matrix.ctf | 2 +- tests/data/files/references_same_twice.ctf | 4 +- 91 files changed, 36330 insertions(+), 151 deletions(-) create mode 100644 tests/data/files/clf/bit_depth_identity.clf delete mode 100644 tests/data/files/clf/illegal/transform_id_empty.clf delete mode 100644 tests/data/files/clf/illegal/transform_missing_id.clf rename tests/data/files/clf/{ => pre-smpte_only}/illegal/log_bad_version.clf (80%) rename tests/data/files/clf/{ => pre-smpte_only}/illegal/process_list_bad_version.clf (82%) rename tests/data/files/clf/{ => pre-smpte_only}/illegal/process_list_higher_version.clf (80%) create mode 100644 tests/data/files/clf/pre-smpte_only/illegal/transform_id_empty.clf create mode 100644 tests/data/files/clf/pre-smpte_only/illegal/transform_missing_id.clf rename tests/data/files/clf/{ => pre-smpte_only}/matrix_example.clf (83%) create mode 100644 tests/data/files/clf/pre-smpte_only/process_list_v3_namespace.clf create mode 100644 tests/data/files/clf/smpte_only/broadcast_profile_lut33.clf create mode 100644 tests/data/files/clf/smpte_only/illegal/id_bad_value.clf create mode 100644 tests/data/files/clf/smpte_only/namespaces.clf create mode 100644 tests/data/files/clf/smpte_only/signature.clf diff --git a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp index 1a2cfdf467..d3dddecd61 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp @@ -85,6 +85,7 @@ void CTFReaderTransformElt::start(const char ** atts) throwMessage("Attribute 'xmlns' does not have a value."); } + // Check if xmlns atrribute holds a SMPTE version string. try { auto version = CTFVersion(atts[i + 1]); @@ -94,13 +95,15 @@ void CTFReaderTransformElt::start(const char ** atts) throwMessage("SMPTE 'xmlns' version and 'Version' attribute cannot both be present."); } + // Note that compCLFversion can appear together with xmlns for + // SMPTE CLF + requestedVersion = CTF_PROCESS_LIST_VERSION_2_0; + requestedCLFVersion = CTFVersion(3, 0); // SMPTE format implies CLF 3.0 requestedSMPTEVersion = version; - isVersionFound = true; isSMPTEVersionFound = true; m_isCLF = true; m_isSMPTE = true; - // TODO: do we set the requestedCLFVersion? which value, ST2136-1:2024? } catch (Exception& /*e*/) { @@ -169,8 +172,8 @@ void CTFReaderTransformElt::start(const char ** atts) throwMessage("'compCLFversion' and 'Version' cannot be both present."); } - // TODO: do we allow both the SMPTE version and the compCLFversion? - // Do we expect and enforce the value to be "ST2136-1:2024" for example? + // Note: compCLFversion can appear together with xmlns for SMPTE CLF + // files. const char* pVer = atts[i + 1]; if (!pVer || !*pVer) @@ -206,7 +209,6 @@ void CTFReaderTransformElt::start(const char ** atts) requestedVersion = CTF_PROCESS_LIST_VERSION_2_0; } - isVersionFound = true; isCLFVersionFound = true; // Handle as CLF. m_isCLF = true; @@ -232,11 +234,12 @@ void CTFReaderTransformElt::start(const char ** atts) // Transform file format with no version means that // the CTF format is 1.2. - if (!isVersionFound) + if (!(isVersionFound || isCLFVersionFound || isSMPTEVersionFound )) { if (m_isCLF) { - throwMessage("Neither 'compCLFversion' nor 'xmlns' was found; one of them is required."); + throwMessage("None of the 'version', 'compCLFversion', or 'xmlns' attributes were found;" + "at least one of them is required."); } setVersion(CTF_PROCESS_LIST_VERSION_1_2); } diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp index b48c556568..4f87819b0e 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp @@ -56,11 +56,11 @@ CTFVersion::CTFVersion(const std::string & versionString) // TODO: I'm not sure if this is a good idea or not, keeping the CLF version // numeric-only feels much cleaner and would avoid complications (such as // version comparison). /coz - if(0 == Platform::Strcasecmp(versionString.c_str(), "ST2136-1:2024")) - { - m_version_string = versionString; - return; - } +// if(0 == Platform::Strcasecmp(versionString.c_str(), "ST2136-1:2024")) +// { +// m_version_string = versionString; +// return; +// } // For non-SMPTE namespace versions, parse as MAJOR[.MINOR[.REVISION]] unsigned int numDot = 0; diff --git a/src/apps/ociomakeclf/main.cpp b/src/apps/ociomakeclf/main.cpp index bb013c8677..9febfceefd 100644 --- a/src/apps/ociomakeclf/main.cpp +++ b/src/apps/ociomakeclf/main.cpp @@ -87,7 +87,7 @@ int main(int argc, const char ** argv) bool verbose = false; bool measure = false; bool listCSCColorSpaces = false; - bool smpte = false; + std::string format{"smpte"}; std::string cscColorSpace; ArgParse ap; @@ -104,7 +104,7 @@ int main(int argc, const char ** argv) "--measure", &measure, "Measure (in ms) the CLF write", "--list", &listCSCColorSpaces, "List of the supported CSC color spaces", "--csc %s", &cscColorSpace, "The color space that the input LUT expects and produces", - "--smpte", &smpte, "Use SMPTE CLF format instead of Academy/ASC CLF format", + "--format %s", &format, "Output format, either 'smpte' or 'v3' (default: smpte)", nullptr); if (ap.parse(argc, argv) < 0) @@ -120,6 +120,28 @@ int main(int argc, const char ** argv) return 0; } + // Check the format option value. + bool smpte = true; + { + const std::string fmt = StringUtils::Lower(format); + if (fmt == "smpte") + { + smpte = true; + } + else if (fmt == "v3") + { + smpte = false; + } + else + { + std::cerr << std::endl << + "ERROR: The format '" << format << "' is not supported." << std::endl << + "Supported formats are 'smpte' and 'v3'." << std::endl; + ap.usage(); + return 1; + } + } + // The LMT must accept and produce ACES2065-1 so look for all built-in transforms that produce // that (based on the naming conventions). static constexpr char BuiltinSuffix[] = "_to_ACES2065-1"; diff --git a/tests/cpu/OpOptimizers_tests.cpp b/tests/cpu/OpOptimizers_tests.cpp index bffb1b6ad1..5b2f771a72 100644 --- a/tests/cpu/OpOptimizers_tests.cpp +++ b/tests/cpu/OpOptimizers_tests.cpp @@ -729,7 +729,7 @@ OCIO_ADD_TEST(OpOptimizers, lut1d_identity_replacement_order) OCIO::OpRcPtrVec optOps = fwd_inv_ops.clone(); OCIO_CHECK_NO_THROW(optOps.finalize()); OCIO_CHECK_NO_THROW(optOps.optimize(OCIO::OPTIMIZATION_DEFAULT)); - OCIO_CHECK_EQUAL(optOps.size(), 1); + OCIO_REQUIRE_EQUAL(optOps.size(), 1); OCIO_CHECK_EQUAL(optOps[0]->getInfo(), ""); // Compare renders. @@ -748,7 +748,7 @@ OCIO_ADD_TEST(OpOptimizers, lut1d_identity_replacement_order) OCIO::OpRcPtrVec optOps = inv_fwd_ops.clone(); OCIO_CHECK_NO_THROW(optOps.finalize()); OCIO_CHECK_NO_THROW(optOps.optimize(OCIO::OPTIMIZATION_DEFAULT)); - OCIO_CHECK_EQUAL(optOps.size(), 1); + OCIO_REQUIRE_EQUAL(optOps.size(), 1); OCIO_CHECK_EQUAL(optOps[0]->getInfo(), ""); // Compare renders. @@ -1052,7 +1052,7 @@ OCIO_ADD_TEST(OpOptimizers, gamma_comp) OCIO_CHECK_NO_THROW(optOps_noComp.finalize()); OCIO_CHECK_NO_THROW(optOps_noComp.optimize(AllBut(OCIO::OPTIMIZATION_COMP_GAMMA))); // Identity matrix is removed but gamma are not combined. - OCIO_CHECK_EQUAL(optOps_noComp.size(), 3); + OCIO_REQUIRE_EQUAL(optOps_noComp.size(), 3); OCIO_CHECK_EQUAL(optOps_noComp[0]->getInfo(), ""); OCIO_CHECK_EQUAL(optOps_noComp[1]->getInfo(), ""); OCIO_CHECK_EQUAL(optOps_noComp[2]->getInfo(), ""); @@ -1100,7 +1100,7 @@ OCIO_ADD_TEST(OpOptimizers, gamma_comp_test2) OCIO_CHECK_NO_THROW(optOps_noComp.finalize()); // NB: The op->apply function used here hard-codes OPTIMIZATION_FAST_LOG_EXP_POW to off. OCIO_CHECK_NO_THROW(optOps_noComp.optimize(AllBut(OCIO::OPTIMIZATION_COMP_GAMMA))); - OCIO_CHECK_EQUAL(optOps_noComp.size(), 2); + OCIO_REQUIRE_EQUAL(optOps_noComp.size(), 2); OCIO_CHECK_EQUAL(optOps_noComp[0]->getInfo(), ""); OCIO_CHECK_EQUAL(optOps_noComp[1]->getInfo(), ""); diff --git a/tests/cpu/fileformats/FileFormatCTF_tests.cpp b/tests/cpu/fileformats/FileFormatCTF_tests.cpp index 62bc052a25..5367be091d 100644 --- a/tests/cpu/fileformats/FileFormatCTF_tests.cpp +++ b/tests/cpu/fileformats/FileFormatCTF_tests.cpp @@ -591,6 +591,7 @@ void CheckIdentity(std::istringstream & ctfStream, unsigned line) OCIO::CachedFileRcPtr file; OCIO_CHECK_NO_THROW_FROM(file = tester.read(ctfStream, emptyString, OCIO::INTERP_DEFAULT), line); OCIO::LocalCachedFileRcPtr cachedFile = OCIO_DYNAMIC_POINTER_CAST(file); + OCIO_REQUIRE_ASSERT(cachedFile); const auto & fileOps = cachedFile->m_transform->getOps(); OCIO_REQUIRE_EQUAL_FROM(fileOps.size(), 1, line); @@ -1237,6 +1238,7 @@ OCIO_ADD_TEST(FileFormatCTF, matrix_windows_eol) // with the ?xml header. const std::string ctfFile("clf/matrix_windows.clf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); + OCIO_REQUIRE_ASSERT(cachedFile); const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); OCIO_CHECK_EQUAL(cachedFile->m_transform->getID(), "42"); OCIO_REQUIRE_EQUAL(opList.size(), 1); @@ -1250,6 +1252,7 @@ OCIO_ADD_TEST(FileFormatCTF, matrix_no_newlines) OCIO::LocalCachedFileRcPtr cachedFile; const std::string ctfFile("clf/matrix_no_newlines.clf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); + OCIO_REQUIRE_ASSERT(cachedFile); const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); OCIO_REQUIRE_EQUAL(opList.size(), 1); OCIO_CHECK_EQUAL(opList[0]->getType(), OCIO::OpData::MatrixType); @@ -1403,7 +1406,7 @@ OCIO_ADD_TEST(FileFormatCTF, difficult_syntax) OCIO_REQUIRE_ASSERT((bool)cachedFile); const OCIO::CTFVersion clfVersion = cachedFile->m_transform->getCLFVersion(); - const OCIO::CTFVersion ver(3, 0, 0); + const OCIO::CTFVersion ver("http://www.smpte-ra.org/ns/2136-1/2024"); OCIO_CHECK_EQUAL(clfVersion, ver); OCIO_CHECK_EQUAL(cachedFile->m_transform->getID(), "id1"); @@ -1731,7 +1734,7 @@ OCIO_ADD_TEST(FileFormatCTF, process_list_invalid_version) OCIO_ADD_TEST(FileFormatCTF, clf_process_list_bad_version) { - std::string fileName("clf/illegal/process_list_bad_version.clf"); + std::string fileName("clf/pre-smpte_only/illegal/process_list_bad_version.clf"); OCIO_CHECK_THROW_WHAT(LoadCLFFile(fileName), OCIO::Exception, "is not a valid version"); @@ -1742,6 +1745,7 @@ OCIO_ADD_TEST(FileFormatCTF, process_list_valid_version) OCIO::LocalCachedFileRcPtr cachedFile; const std::string ctfFile("process_list_valid_version.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); + OCIO_REQUIRE_ASSERT(cachedFile); const OCIO::CTFVersion ctfVersion = cachedFile->m_transform->getCTFVersion(); @@ -1758,7 +1762,7 @@ OCIO_ADD_TEST(FileFormatCTF, process_list_higher_version) OCIO_ADD_TEST(FileFormatCTF, clf_process_list_higher_version) { - const std::string ctfFile("clf/illegal/process_list_higher_version.clf"); + const std::string ctfFile("clf/pre-smpte_only/illegal/process_list_higher_version.clf"); OCIO_CHECK_THROW_WHAT(LoadCLFFile(ctfFile), OCIO::Exception, "Unsupported transform file version"); @@ -1769,6 +1773,7 @@ OCIO_ADD_TEST(FileFormatCTF, process_list_version_revision) OCIO::LocalCachedFileRcPtr cachedFile; const std::string ctfFile("process_list_version_revision.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); + OCIO_REQUIRE_ASSERT(cachedFile); const OCIO::CTFVersion ctfVersion = cachedFile->m_transform->getCTFVersion(); @@ -1783,6 +1788,7 @@ OCIO_ADD_TEST(FileFormatCTF, process_list_no_version) OCIO::LocalCachedFileRcPtr cachedFile; const std::string ctfFile("process_list_no_version.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); + OCIO_REQUIRE_ASSERT(cachedFile); const OCIO::CTFVersion ctfVersion = cachedFile->m_transform->getCTFVersion(); @@ -1846,7 +1852,7 @@ OCIO_ADD_TEST(FileFormatCTF, transform_element_end_missing) OCIO_ADD_TEST(FileFormatCTF, transform_missing_id) { - const std::string ctfFile("clf/illegal/transform_missing_id.clf"); + const std::string ctfFile("clf/pre-smpte_only/illegal/transform_missing_id.clf"); OCIO_CHECK_THROW_WHAT(LoadCLFFile(ctfFile), OCIO::Exception, "Required attribute 'id'"); @@ -1942,7 +1948,7 @@ OCIO_ADD_TEST(FileFormatCTF, transform_empty) OCIO_ADD_TEST(FileFormatCTF, transform_id_empty) { - const std::string ctfFile("clf/illegal/transform_id_empty.clf"); + const std::string ctfFile("clf/pre-smpte_only/illegal/transform_id_empty.clf"); OCIO_CHECK_THROW_WHAT(LoadCLFFile(ctfFile), OCIO::Exception, "Attribute 'id' does not have a value"); @@ -2583,6 +2589,7 @@ OCIO_ADD_TEST(FileFormatCTF, exponent_all_styles) OCIO::LocalCachedFileRcPtr cachedFile; const std::string fileName("clf/exponent_all_styles.clf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(fileName)); + OCIO_REQUIRE_ASSERT(cachedFile); const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); OCIO_REQUIRE_EQUAL(opList.size(), 12); @@ -2993,6 +3000,7 @@ OCIO_ADD_TEST(FileFormatCTF, log_all_styles) OCIO::LocalCachedFileRcPtr cachedFile; const std::string fileName("clf/log_all_styles.clf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(fileName)); + OCIO_REQUIRE_ASSERT(cachedFile); const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); OCIO_REQUIRE_EQUAL(opList.size(), 11); double error = 1e-9; @@ -3164,6 +3172,7 @@ OCIO_ADD_TEST(FileFormatCTF, log_logtolin) OCIO::LocalCachedFileRcPtr cachedFile; std::string fileName("log_logtolin.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(fileName)); + OCIO_REQUIRE_ASSERT(cachedFile); const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); auto op = fileOps[0]; @@ -3191,6 +3200,7 @@ OCIO_ADD_TEST(FileFormatCTF, log_logtolinv2) OCIO::LocalCachedFileRcPtr cachedFile; std::string fileName("log_logtolinv2.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(fileName)); + OCIO_REQUIRE_ASSERT(cachedFile); const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); auto op = fileOps[0]; @@ -3217,6 +3227,7 @@ OCIO_ADD_TEST(FileFormatCTF, log_lintolog_3chan) OCIO::LocalCachedFileRcPtr cachedFile; std::string fileName("log_lintolog_3chan.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(fileName)); + OCIO_REQUIRE_ASSERT(cachedFile); const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); auto op = fileOps[0]; @@ -3260,7 +3271,7 @@ OCIO_ADD_TEST(FileFormatCTF, log_bad_style) OCIO_ADD_TEST(FileFormatCTF, log_bad_version) { - std::string fileName("clf/illegal/log_bad_version.clf"); + std::string fileName("clf/pre-smpte_only/illegal/log_bad_version.clf"); OCIO_CHECK_THROW_WHAT(LoadCLFFile(fileName), OCIO::Exception, "CLF file version '2' does not support operator 'Log'"); } @@ -3346,6 +3357,7 @@ OCIO_ADD_TEST(FileFormatCTF, log_default_params) OCIO::LocalCachedFileRcPtr cachedFile; OCIO_CHECK_NO_THROW(cachedFile = ParseString(strebuf.str())); + OCIO_REQUIRE_ASSERT(cachedFile); OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); OCIO_REQUIRE_EQUAL(fileOps.size(), 2); @@ -3380,6 +3392,7 @@ OCIO_ADD_TEST(FileFormatCTF, multiple_ops) OCIO::LocalCachedFileRcPtr cachedFile; const std::string ctfFile("clf/multiple_ops.clf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); + OCIO_REQUIRE_ASSERT(cachedFile); const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); OCIO_REQUIRE_EQUAL(opList.size(), 9); @@ -3493,6 +3506,7 @@ OCIO_ADD_TEST(FileFormatCTF, reference_load_alias) OCIO::LocalCachedFileRcPtr cachedFile; std::string fileName("reference_alias.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(fileName)); + OCIO_REQUIRE_ASSERT(cachedFile); const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); @@ -3512,6 +3526,7 @@ OCIO_ADD_TEST(FileFormatCTF, reference_load_path) OCIO::LocalCachedFileRcPtr cachedFile; std::string fileName("reference_path_missing_file.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(fileName)); + OCIO_REQUIRE_ASSERT(cachedFile); const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); @@ -3530,6 +3545,7 @@ OCIO_ADD_TEST(FileFormatCTF, reference_load_multiple) // File contains 2 references, 1 range and 1 reference. std::string fileName("references_some_inverted.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(fileName)); + OCIO_REQUIRE_ASSERT(cachedFile); const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); OCIO_REQUIRE_EQUAL(fileOps.size(), 4); @@ -3566,6 +3582,7 @@ OCIO_ADD_TEST(FileFormatCTF, reference_load_path_utf8) OCIO::LocalCachedFileRcPtr cachedFile; std::string fileName("reference_utf8.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(fileName)); + OCIO_REQUIRE_ASSERT(cachedFile); const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); OCIO::ConstOpDataRcPtr op = fileOps[0]; @@ -3784,6 +3801,7 @@ OCIO_ADD_TEST(FileFormatCTF, load_deprecated_ops_file) OCIO::LocalCachedFileRcPtr cachedFile; std::string fileName("deprecated_ops.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(fileName)); + OCIO_REQUIRE_ASSERT(cachedFile); const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); OCIO_REQUIRE_EQUAL(fileOps.size(), 3); @@ -3827,6 +3845,7 @@ OCIO_ADD_TEST(FileFormatCTF, load_fixed_function_file) OCIO::LocalCachedFileRcPtr cachedFile; std::string fileName("fixed_function.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(fileName)); + OCIO_REQUIRE_ASSERT(cachedFile); const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); OCIO_REQUIRE_EQUAL(fileOps.size(), 2); @@ -3901,6 +3920,7 @@ void ValidateFixedFunctionStyle(OCIO::FixedFunctionOpData::Style style, // Test parsing. OCIO::LocalCachedFileRcPtr cachedFile; OCIO_CHECK_NO_THROW_FROM(cachedFile = ParseString(strebuf.str()), lineNo); + OCIO_REQUIRE_ASSERT(cachedFile); OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); OCIO_REQUIRE_EQUAL_FROM(fileOps.size(), 1, lineNo); @@ -5009,7 +5029,7 @@ OCIO_ADD_TEST(CTFTransform, load_grading_tone_errors) OCIO_ADD_TEST(CTFTransform, load_edit_save_matrix) { - const std::string ctfFile("clf/matrix_example.clf"); + const std::string ctfFile("clf/pre-smpte_only/matrix_example.clf"); OCIO::ConstProcessorRcPtr processor; OCIO_CHECK_NO_THROW(processor = OCIO::GetFileTransformProcessor(ctfFile)); OCIO_REQUIRE_ASSERT(processor); @@ -5051,7 +5071,7 @@ OCIO_ADD_TEST(CTFTransform, load_edit_save_matrix) // Output matrix array as '3 4 3'. const std::string expectedCTF{ R"( - + Basic matrix example using CLF v2 dim syntax RGB XYZ @@ -5594,7 +5614,7 @@ OCIO_ADD_TEST(CTFTransform, save_group) OCIO_ADD_TEST(CTFTransform, load_save_matrix) { - const std::string ctfFile("clf/matrix_example.clf"); + const std::string ctfFile("clf/pre-smpte_only/matrix_example.clf"); OCIO::ConstProcessorRcPtr processor; OCIO_CHECK_NO_THROW(processor = OCIO::GetFileTransformProcessor(ctfFile)); OCIO_REQUIRE_ASSERT(processor); @@ -5605,7 +5625,7 @@ OCIO_ADD_TEST(CTFTransform, load_save_matrix) // Output matrix array as '3 3 3'. const std::string expected{ R"( - + Basic matrix example using CLF v2 dim syntax RGB XYZ @@ -5652,7 +5672,7 @@ OCIO_ADD_TEST(CTFTransform, save_matrix_444) OCIO_ADD_TEST(CTFTransform, load_edit_save_matrix_clf) { - const std::string ctfFile("clf/matrix_example.clf"); + const std::string ctfFile("clf/pre-smpte_only/matrix_example.clf"); OCIO::ConstProcessorRcPtr processor; OCIO_CHECK_NO_THROW(processor = OCIO::GetFileTransformProcessor(ctfFile)); OCIO_REQUIRE_ASSERT(processor); @@ -5674,7 +5694,7 @@ OCIO_ADD_TEST(CTFTransform, load_edit_save_matrix_clf) const std::string expectedCLF_Academy{ R"( - + Basic matrix example using CLF v2 dim syntax RGB XYZ @@ -5710,7 +5730,7 @@ OCIO_ADD_TEST(CTFTransform, load_edit_save_matrix_clf) const std::string expectedCLF_SMPTE{ R"( - + urn:uuid:b5cc7aed-d405-4d8b-b64b-382b2341a378 Basic matrix example using CLF v2 dim syntax RGB @@ -5742,7 +5762,7 @@ OCIO_ADD_TEST(CTFTransform, load_edit_save_matrix_clf) const std::string expectedCTF{ R"( - + Basic matrix example using CLF v2 dim syntax RGB XYZ diff --git a/tests/cpu/transforms/FileTransform_tests.cpp b/tests/cpu/transforms/FileTransform_tests.cpp index 99364f8b25..14ba7e554d 100644 --- a/tests/cpu/transforms/FileTransform_tests.cpp +++ b/tests/cpu/transforms/FileTransform_tests.cpp @@ -80,7 +80,7 @@ OCIO_ADD_TEST(FileTransform, load_file_ok) OCIO_CHECK_ASSERT(!proc->isNoOp()); // Academy/ASC common LUT format. - const std::string clfMatTransform("clf/matrix_example.clf"); + const std::string clfMatTransform("clf/pre-smpte_only/matrix_example.clf"); OCIO_CHECK_NO_THROW(proc = OCIO::GetFileTransformProcessor(clfMatTransform)); OCIO_CHECK_ASSERT(!proc->isNoOp()); diff --git a/tests/data/files/clf/aces_to_video_with_look.clf b/tests/data/files/clf/aces_to_video_with_look.clf index 4478c03f70..e2c428403e 100644 --- a/tests/data/files/clf/aces_to_video_with_look.clf +++ b/tests/data/files/clf/aces_to_video_with_look.clf @@ -1,5 +1,5 @@ - + Converts ACES to ACEScct, applies ASC CDL, then applies a 3D-LUT to convert back to ACES and apply the RRT+ODT.Academy.Rec709_100nits_dim ACES2065-1 HD (Rec 709) video diff --git a/tests/data/files/clf/bit_depth_identity.clf b/tests/data/files/clf/bit_depth_identity.clf new file mode 100644 index 0000000000..0ee6d7bb7a --- /dev/null +++ b/tests/data/files/clf/bit_depth_identity.clf @@ -0,0 +1,25 @@ + + + urn:uuid:9d768121-0cf9-40a3-a8e3-7b49f79858a7 + Identity transform illustrating Array bit depth scaling + Can be loaded by either SMPTE or CLF v3 parsers + + + 257.0 0.0 0.0 + 0.0 257.0 0.0 + 0.0 0.0 257.0 + + + + + 0.0 10922.5 21845.0 32767.5 43690.0 54612.5 65535.0 + + + + + 1.0 0.0 0.0 + 0.0 1.0 0.0 + 0.0 0.0 1.0 + + + diff --git a/tests/data/files/clf/cdl_all_styles.clf b/tests/data/files/clf/cdl_all_styles.clf index 53e1f428bb..75fb4d9d80 100644 --- a/tests/data/files/clf/cdl_all_styles.clf +++ b/tests/data/files/clf/cdl_all_styles.clf @@ -1,5 +1,5 @@ - + Test all CDL style values diff --git a/tests/data/files/clf/cdl_clamp_fwd.clf b/tests/data/files/clf/cdl_clamp_fwd.clf index 3a298fa13e..633d84346e 100644 --- a/tests/data/files/clf/cdl_clamp_fwd.clf +++ b/tests/data/files/clf/cdl_clamp_fwd.clf @@ -1,5 +1,5 @@ - + Example of ASC CDL operation inputDesc outputDesc diff --git a/tests/data/files/clf/cdl_missing_sat.clf b/tests/data/files/clf/cdl_missing_sat.clf index 40fa7f8851..f44958c6be 100644 --- a/tests/data/files/clf/cdl_missing_sat.clf +++ b/tests/data/files/clf/cdl_missing_sat.clf @@ -1,5 +1,5 @@ - + Missing Sat defaults to 1 ASC CDL operation diff --git a/tests/data/files/clf/cdl_missing_sop.clf b/tests/data/files/clf/cdl_missing_sop.clf index 99ab40eb4c..3a35b2f1ca 100644 --- a/tests/data/files/clf/cdl_missing_sop.clf +++ b/tests/data/files/clf/cdl_missing_sop.clf @@ -1,5 +1,5 @@ - + Missing SOP defaults to identity params inputDesc outputDesc diff --git a/tests/data/files/clf/cdl_missing_style.clf b/tests/data/files/clf/cdl_missing_style.clf index 2c407b929d..a4b76ef97f 100644 --- a/tests/data/files/clf/cdl_missing_style.clf +++ b/tests/data/files/clf/cdl_missing_style.clf @@ -1,5 +1,5 @@ - + Missing style defaults to "Fwd" diff --git a/tests/data/files/clf/difficult_syntax.clf b/tests/data/files/clf/difficult_syntax.clf index 4a48375b9f..9e16a0170b 100644 --- a/tests/data/files/clf/difficult_syntax.clf +++ b/tests/data/files/clf/difficult_syntax.clf @@ -5,7 +5,11 @@ - + + + This is the ProcessList description. + yet 'another' "valid" desc + This is a "difficult" but 'legal' color transform file. @@ -20,7 +24,7 @@ third array dim value is ignored - + 3.24000 -1.53700 -0.49850 -0.96930 1.87600 +0.04156 0.05560 -0.20400 0.105730e+1 @@ -29,12 +33,19 @@ third array dim value is ignored - This is the ProcessList description. - + name' unknown="attr"> the n–dash description + + another valid +description +element + + + + & another <valid> desc + @@ -168,16 +179,8 @@ only tabs used to separate next few triplets 1.00000 0.95000 0.90000 - another valid -description -element - - - - & another <valid> desc - yet 'another' "valid" desc diff --git a/tests/data/files/clf/exponent_all_styles.clf b/tests/data/files/clf/exponent_all_styles.clf index 157df5e411..a7a3392ca2 100644 --- a/tests/data/files/clf/exponent_all_styles.clf +++ b/tests/data/files/clf/exponent_all_styles.clf @@ -1,5 +1,5 @@ - + Test all Exponent style values If there is only one Params, use it for R, G, and B. diff --git a/tests/data/files/clf/illegal/array_bad_dimension.clf b/tests/data/files/clf/illegal/array_bad_dimension.clf index 918b1720c4..03305c37cf 100644 --- a/tests/data/files/clf/illegal/array_bad_dimension.clf +++ b/tests/data/files/clf/illegal/array_bad_dimension.clf @@ -1,5 +1,5 @@ - + Array dim attribute is not legal. diff --git a/tests/data/files/clf/illegal/array_bad_value.clf b/tests/data/files/clf/illegal/array_bad_value.clf index 28f607b9d2..7cfab661de 100644 --- a/tests/data/files/clf/illegal/array_bad_value.clf +++ b/tests/data/files/clf/illegal/array_bad_value.clf @@ -1,5 +1,5 @@ - + Array has a non-numeric character diff --git a/tests/data/files/clf/illegal/array_missing_values.clf b/tests/data/files/clf/illegal/array_missing_values.clf index fafd66361e..20d0e1b110 100644 --- a/tests/data/files/clf/illegal/array_missing_values.clf +++ b/tests/data/files/clf/illegal/array_missing_values.clf @@ -1,5 +1,5 @@ - + Matrix has too few values. diff --git a/tests/data/files/clf/illegal/array_too_many_values.clf b/tests/data/files/clf/illegal/array_too_many_values.clf index 49957befdc..972c2d0ca8 100644 --- a/tests/data/files/clf/illegal/array_too_many_values.clf +++ b/tests/data/files/clf/illegal/array_too_many_values.clf @@ -1,5 +1,5 @@ - + Matrix has too many values. diff --git a/tests/data/files/clf/illegal/cdl_bad_power.clf b/tests/data/files/clf/illegal/cdl_bad_power.clf index e39c8a611f..fc4715c16c 100644 --- a/tests/data/files/clf/illegal/cdl_bad_power.clf +++ b/tests/data/files/clf/illegal/cdl_bad_power.clf @@ -1,5 +1,5 @@ - + CDL power must be > 0 diff --git a/tests/data/files/clf/illegal/cdl_bad_sat.clf b/tests/data/files/clf/illegal/cdl_bad_sat.clf index bca68a6813..06a5ea1453 100644 --- a/tests/data/files/clf/illegal/cdl_bad_sat.clf +++ b/tests/data/files/clf/illegal/cdl_bad_sat.clf @@ -1,5 +1,5 @@ - + Sat may only have 1 value. diff --git a/tests/data/files/clf/illegal/cdl_bad_slope.clf b/tests/data/files/clf/illegal/cdl_bad_slope.clf index b267e9cf45..582299ec32 100644 --- a/tests/data/files/clf/illegal/cdl_bad_slope.clf +++ b/tests/data/files/clf/illegal/cdl_bad_slope.clf @@ -1,5 +1,5 @@ - + Slope must have 3 values. diff --git a/tests/data/files/clf/illegal/cdl_bad_style.clf b/tests/data/files/clf/illegal/cdl_bad_style.clf index 40dc6420b9..6d62bc44ee 100644 --- a/tests/data/files/clf/illegal/cdl_bad_style.clf +++ b/tests/data/files/clf/illegal/cdl_bad_style.clf @@ -1,5 +1,5 @@ - + CDL style is not a legal value diff --git a/tests/data/files/clf/illegal/cdl_missing_offset.clf b/tests/data/files/clf/illegal/cdl_missing_offset.clf index 0ee0dbf2f8..3a4024cd69 100644 --- a/tests/data/files/clf/illegal/cdl_missing_offset.clf +++ b/tests/data/files/clf/illegal/cdl_missing_offset.clf @@ -1,5 +1,5 @@ - + The SOPNode is optional, but if present, must contain Slope, Offset, and Power diff --git a/tests/data/files/clf/illegal/cdl_missing_power.clf b/tests/data/files/clf/illegal/cdl_missing_power.clf index a759f90576..ca3f66cad7 100644 --- a/tests/data/files/clf/illegal/cdl_missing_power.clf +++ b/tests/data/files/clf/illegal/cdl_missing_power.clf @@ -1,5 +1,5 @@ - + The SOPNode is optional, but if present, must contain Slope, Offset, and Power diff --git a/tests/data/files/clf/illegal/cdl_missing_slope.clf b/tests/data/files/clf/illegal/cdl_missing_slope.clf index efd3e9d274..ded6bf15a5 100644 --- a/tests/data/files/clf/illegal/cdl_missing_slope.clf +++ b/tests/data/files/clf/illegal/cdl_missing_slope.clf @@ -1,5 +1,5 @@ - + The SOPNode is optional, but if present, must contain Slope, Offset, and Power diff --git a/tests/data/files/clf/illegal/exponent_bad_param.clf b/tests/data/files/clf/illegal/exponent_bad_param.clf index 5e3094f70c..8d48ba2683 100644 --- a/tests/data/files/clf/illegal/exponent_bad_param.clf +++ b/tests/data/files/clf/illegal/exponent_bad_param.clf @@ -1,5 +1,5 @@ - + The basic styles may not use the offset param diff --git a/tests/data/files/clf/illegal/exponent_bad_value.clf b/tests/data/files/clf/illegal/exponent_bad_value.clf index 2a358d5313..2d4e8ec295 100644 --- a/tests/data/files/clf/illegal/exponent_bad_value.clf +++ b/tests/data/files/clf/illegal/exponent_bad_value.clf @@ -1,5 +1,5 @@ - + The moncurve style requires an exponent >= 1. diff --git a/tests/data/files/clf/illegal/indexMap_test2.clf b/tests/data/files/clf/illegal/indexMap_test2.clf index 498ac6454e..d0b2a10b0f 100644 --- a/tests/data/files/clf/illegal/indexMap_test2.clf +++ b/tests/data/files/clf/illegal/indexMap_test2.clf @@ -1,5 +1,5 @@ - + Index map was only allowed up to CLF v2 diff --git a/tests/data/files/clf/illegal/log_bad_param.clf b/tests/data/files/clf/illegal/log_bad_param.clf index db03820476..880fa5c723 100644 --- a/tests/data/files/clf/illegal/log_bad_param.clf +++ b/tests/data/files/clf/illegal/log_bad_param.clf @@ -1,5 +1,5 @@ - + The linToLog style may not contain the linSideBreak param. diff --git a/tests/data/files/clf/illegal/log_bad_style.clf b/tests/data/files/clf/illegal/log_bad_style.clf index dbc1ac9319..0e1b491b4d 100644 --- a/tests/data/files/clf/illegal/log_bad_style.clf +++ b/tests/data/files/clf/illegal/log_bad_style.clf @@ -1,5 +1,5 @@ - + Illegal log style value. diff --git a/tests/data/files/clf/illegal/log_missing_breakpnt.clf b/tests/data/files/clf/illegal/log_missing_breakpnt.clf index 4282f23df7..1d5e478556 100644 --- a/tests/data/files/clf/illegal/log_missing_breakpnt.clf +++ b/tests/data/files/clf/illegal/log_missing_breakpnt.clf @@ -1,5 +1,5 @@ - + The camera styles must have the linSideBreak param. - + Half-domain must have 65536 values. RGB RGB diff --git a/tests/data/files/clf/illegal/lut1d_half_domain_set_false.clf b/tests/data/files/clf/illegal/lut1d_half_domain_set_false.clf index fca07d882f..d9e650d90f 100644 --- a/tests/data/files/clf/illegal/lut1d_half_domain_set_false.clf +++ b/tests/data/files/clf/illegal/lut1d_half_domain_set_false.clf @@ -1,5 +1,5 @@ - + The only legal value for halfDomain is "true". RGB RGB diff --git a/tests/data/files/clf/illegal/lut1d_raw_half_set_false.clf b/tests/data/files/clf/illegal/lut1d_raw_half_set_false.clf index 94daa1e6f9..3ea1d67594 100644 --- a/tests/data/files/clf/illegal/lut1d_raw_half_set_false.clf +++ b/tests/data/files/clf/illegal/lut1d_raw_half_set_false.clf @@ -1,5 +1,5 @@ - + The only legal value for rawHhalfs is "true". RGB RGB diff --git a/tests/data/files/clf/illegal/lut3d_unequal_size.clf b/tests/data/files/clf/illegal/lut3d_unequal_size.clf index 1be11cfab9..3c4c11361e 100644 --- a/tests/data/files/clf/illegal/lut3d_unequal_size.clf +++ b/tests/data/files/clf/illegal/lut3d_unequal_size.clf @@ -1,5 +1,5 @@ - + Lut3d must have equal grid dimensions diff --git a/tests/data/files/clf/illegal/matrix_end_missing.clf b/tests/data/files/clf/illegal/matrix_end_missing.clf index b00cddd8cd..1c19332dc0 100644 --- a/tests/data/files/clf/illegal/matrix_end_missing.clf +++ b/tests/data/files/clf/illegal/matrix_end_missing.clf @@ -1,5 +1,5 @@ - + The Matrix element is not complete. diff --git a/tests/data/files/clf/illegal/process_list_missing.clf b/tests/data/files/clf/illegal/process_list_missing.clf index 0dbe66c238..10e25f4e93 100644 --- a/tests/data/files/clf/illegal/process_list_missing.clf +++ b/tests/data/files/clf/illegal/process_list_missing.clf @@ -1,4 +1,4 @@ - + Missing ProcesssList element 3.24000 -1.53700 -0.49850 diff --git a/tests/data/files/clf/illegal/range_bad_noclamp.clf b/tests/data/files/clf/illegal/range_bad_noclamp.clf index 3751a6bfb6..977f996977 100644 --- a/tests/data/files/clf/illegal/range_bad_noclamp.clf +++ b/tests/data/files/clf/illegal/range_bad_noclamp.clf @@ -1,8 +1,8 @@ - + The noClamp style may not be used when there are only two values. - 0.1 1e-1 + 0.1 diff --git a/tests/data/files/clf/illegal/range_bad_values.clf b/tests/data/files/clf/illegal/range_bad_values.clf index 8987272907..6a2416dc87 100644 --- a/tests/data/files/clf/illegal/range_bad_values.clf +++ b/tests/data/files/clf/illegal/range_bad_values.clf @@ -1,5 +1,5 @@ - + Illegal values -- the minInValue must be less than the maxInValue. 240 diff --git a/tests/data/files/clf/illegal/range_empty.clf b/tests/data/files/clf/illegal/range_empty.clf index f4bb850cfa..904436b8a2 100644 --- a/tests/data/files/clf/illegal/range_empty.clf +++ b/tests/data/files/clf/illegal/range_empty.clf @@ -1,5 +1,5 @@ - + Starting in CLF v3, a Range may not be empty diff --git a/tests/data/files/clf/illegal/range_nonmatching_clamp.clf b/tests/data/files/clf/illegal/range_nonmatching_clamp.clf index b8fee78a67..5c2a9b3c8a 100644 --- a/tests/data/files/clf/illegal/range_nonmatching_clamp.clf +++ b/tests/data/files/clf/illegal/range_nonmatching_clamp.clf @@ -1,5 +1,5 @@ - + If there is only a min or only a max, the InValue must equal OutValue. Since the bit-depths are different, they are not actually the same here. diff --git a/tests/data/files/clf/illegal/transform_bad_outdepth.clf b/tests/data/files/clf/illegal/transform_bad_outdepth.clf index 8d65b6db95..27ec7b4337 100644 --- a/tests/data/files/clf/illegal/transform_bad_outdepth.clf +++ b/tests/data/files/clf/illegal/transform_bad_outdepth.clf @@ -1,5 +1,5 @@ - + The outBitDepth is illegal diff --git a/tests/data/files/clf/illegal/transform_bitdepth_mismatch.clf b/tests/data/files/clf/illegal/transform_bitdepth_mismatch.clf index 1153df6a4e..ca5892b92c 100644 --- a/tests/data/files/clf/illegal/transform_bitdepth_mismatch.clf +++ b/tests/data/files/clf/illegal/transform_bitdepth_mismatch.clf @@ -1,14 +1,14 @@ - + All bit-depths in a file must match at adjacent ops - + 3.24000 -1.53700 -0.49850 -0.96930 1.87600 0.04156 0.05560 -0.20400 1.05730 - Note in-depth does not == out-depth of previous + Note in-depth does not == out-depth of previous 0.00000 0.00000 1e-2 0.28358 0.28358 1e+2 diff --git a/tests/data/files/clf/illegal/transform_corrupted_tag.clf b/tests/data/files/clf/illegal/transform_corrupted_tag.clf index 1f82247b18..11d606530f 100644 --- a/tests/data/files/clf/illegal/transform_corrupted_tag.clf +++ b/tests/data/files/clf/illegal/transform_corrupted_tag.clf @@ -1,6 +1,7 @@ - + Note closing element is bad + ProcessList is not spelled correctly 3.24000 -1.53700 -0.49850 @@ -8,5 +9,4 @@ 0.05560 -0.20400 1.05730 - ProcessList is not spelled correctly diff --git a/tests/data/files/clf/illegal/transform_element_end_missing.clf b/tests/data/files/clf/illegal/transform_element_end_missing.clf index 136c8453cb..c7464ce1cc 100644 --- a/tests/data/files/clf/illegal/transform_element_end_missing.clf +++ b/tests/data/files/clf/illegal/transform_element_end_missing.clf @@ -1,6 +1,7 @@ - + ProcessList must have an end tag + Note closing element is missing 3.24000 -1.53700 -0.49850 @@ -8,4 +9,3 @@ 0.05560 -0.20400 1.05730 - Note closing element is missing diff --git a/tests/data/files/clf/illegal/transform_empty.clf b/tests/data/files/clf/illegal/transform_empty.clf index b07de5aa5b..2d12809949 100644 --- a/tests/data/files/clf/illegal/transform_empty.clf +++ b/tests/data/files/clf/illegal/transform_empty.clf @@ -1,4 +1,4 @@ - - There must be at least on process node + + There must be at least one process node diff --git a/tests/data/files/clf/illegal/transform_id_empty.clf b/tests/data/files/clf/illegal/transform_id_empty.clf deleted file mode 100644 index bda57d36ef..0000000000 --- a/tests/data/files/clf/illegal/transform_id_empty.clf +++ /dev/null @@ -1,5 +0,0 @@ - - - The id string must not be empty - - diff --git a/tests/data/files/clf/illegal/transform_missing_id.clf b/tests/data/files/clf/illegal/transform_missing_id.clf deleted file mode 100644 index a72ed5577b..0000000000 --- a/tests/data/files/clf/illegal/transform_missing_id.clf +++ /dev/null @@ -1,5 +0,0 @@ - - - The ProcessList id attribute is missing - - diff --git a/tests/data/files/clf/illegal/transform_missing_inbitdepth.clf b/tests/data/files/clf/illegal/transform_missing_inbitdepth.clf index 011ff246d7..94fa26d73c 100644 --- a/tests/data/files/clf/illegal/transform_missing_inbitdepth.clf +++ b/tests/data/files/clf/illegal/transform_missing_inbitdepth.clf @@ -1,5 +1,5 @@ - + The inBitDepth is missing diff --git a/tests/data/files/clf/illegal/transform_missing_outbitdepth.clf b/tests/data/files/clf/illegal/transform_missing_outbitdepth.clf index 26d7cd176d..fdc4dfd7ba 100644 --- a/tests/data/files/clf/illegal/transform_missing_outbitdepth.clf +++ b/tests/data/files/clf/illegal/transform_missing_outbitdepth.clf @@ -1,5 +1,5 @@ - + The outBitDepth is missing diff --git a/tests/data/files/clf/illegal/unknown_elements.clf b/tests/data/files/clf/illegal/unknown_elements.clf index adc9dd3886..000826cfad 100644 --- a/tests/data/files/clf/illegal/unknown_elements.clf +++ b/tests/data/files/clf/illegal/unknown_elements.clf @@ -1,10 +1,10 @@ - + This example contains unknown elements See section 5.4 of the spec: Unrecognized elements that are not children of the Info element should either raise an error or at least provide a warning message - + 3.24000 -1.53700 -0.49850 -0.96930 1.87600 0.04156 0.05560 -0.20400 1.05730 diff --git a/tests/data/files/clf/info_example.clf b/tests/data/files/clf/info_example.clf index c4cf5b602c..f521f15bef 100644 --- a/tests/data/files/clf/info_example.clf +++ b/tests/data/files/clf/info_example.clf @@ -1,9 +1,9 @@ - + Example of using the Info element + A second description input desc output desc - A second description diff --git a/tests/data/files/clf/inverseOf_id_test.clf b/tests/data/files/clf/inverseOf_id_test.clf index 31752d8aaa..dd27a8828b 100644 --- a/tests/data/files/clf/inverseOf_id_test.clf +++ b/tests/data/files/clf/inverseOf_id_test.clf @@ -1,5 +1,5 @@ - + The inverseOf attribute is used to identify inverse pairs RGB RGB diff --git a/tests/data/files/clf/log_all_styles.clf b/tests/data/files/clf/log_all_styles.clf index df9f7eb44d..ca80d2c3bd 100644 --- a/tests/data/files/clf/log_all_styles.clf +++ b/tests/data/files/clf/log_all_styles.clf @@ -1,5 +1,5 @@ - + Test all Logarithmic style values diff --git a/tests/data/files/clf/lut1d_32f_example.clf b/tests/data/files/clf/lut1d_32f_example.clf index c8c97728ce..bffd267de2 100644 --- a/tests/data/files/clf/lut1d_32f_example.clf +++ b/tests/data/files/clf/lut1d_32f_example.clf @@ -1,5 +1,5 @@ - + Basic Lut1D example, formula: 1.25 - 1.5 * x^2.2 1D LUT diff --git a/tests/data/files/clf/lut1d_comp.clf b/tests/data/files/clf/lut1d_comp.clf index 41fc81de11..91d31f516e 100644 --- a/tests/data/files/clf/lut1d_comp.clf +++ b/tests/data/files/clf/lut1d_comp.clf @@ -1,5 +1,5 @@ - + Two Lut1D ops Linear spacing between 64 and 196 diff --git a/tests/data/files/clf/lut1d_example.clf b/tests/data/files/clf/lut1d_example.clf index ebd7677407..a6e54f9c27 100644 --- a/tests/data/files/clf/lut1d_example.clf +++ b/tests/data/files/clf/lut1d_example.clf @@ -1,5 +1,5 @@ - + 1D LUT with legal out of range values Note that the bit-depth does not constrain the legal range of values. diff --git a/tests/data/files/clf/lut1d_half_domain_raw_half_set.clf b/tests/data/files/clf/lut1d_half_domain_raw_half_set.clf index f6a35d0189..288eaa61fd 100644 --- a/tests/data/files/clf/lut1d_half_domain_raw_half_set.clf +++ b/tests/data/files/clf/lut1d_half_domain_raw_half_set.clf @@ -1,10 +1,10 @@ - + + Lut1D testing half-domain layout and raw-halfs value encoding + Function is sign(x)*(abs(x)^0.45) - 0.1 None - Lut1D testing half-domain layout and raw-halfs value encoding - Function is sign(x)*(abs(x)^0.45) - 0.1 44646 diff --git a/tests/data/files/clf/lut1d_long.clf b/tests/data/files/clf/lut1d_long.clf index f0c5f7ee21..3f5bcf254f 100644 --- a/tests/data/files/clf/lut1d_long.clf +++ b/tests/data/files/clf/lut1d_long.clf @@ -1,5 +1,5 @@ - + Very long Lut1D test (x^2.2 * 1.3 - 0.007) Also demonstrates repeating quantized values diff --git a/tests/data/files/clf/lut1d_lut3d_lut1d.clf b/tests/data/files/clf/lut1d_lut3d_lut1d.clf index 43d014dd8f..34bdc0a1de 100644 --- a/tests/data/files/clf/lut1d_lut3d_lut1d.clf +++ b/tests/data/files/clf/lut1d_lut3d_lut1d.clf @@ -1,5 +1,5 @@ - + Lut1D + Lut3D + long Lut1D Tests usage of 1D, 3D, and 2D GPU textures diff --git a/tests/data/files/clf/lut3d_17x17x17_10i_12i.clf b/tests/data/files/clf/lut3d_17x17x17_10i_12i.clf index 3a94ab78fe..bdb8c39fb4 100644 --- a/tests/data/files/clf/lut3d_17x17x17_10i_12i.clf +++ b/tests/data/files/clf/lut3d_17x17x17_10i_12i.clf @@ -1,5 +1,5 @@ - + Basic 3d-LUT example. diff --git a/tests/data/files/clf/lut3d_as_matrix.clf b/tests/data/files/clf/lut3d_as_matrix.clf index f772f72168..967070e225 100644 --- a/tests/data/files/clf/lut3d_as_matrix.clf +++ b/tests/data/files/clf/lut3d_as_matrix.clf @@ -1,5 +1,5 @@ - + This Lut3D is equivalent (on its limited domain) to a matrix multiply from linear ap0 to linear rec 709 ap0 rec 709 diff --git a/tests/data/files/clf/lut3d_bizarre.clf b/tests/data/files/clf/lut3d_bizarre.clf index ef6fc8b045..80de3e54ff 100644 --- a/tests/data/files/clf/lut3d_bizarre.clf +++ b/tests/data/files/clf/lut3d_bizarre.clf @@ -1,5 +1,5 @@ - + Unusual 3d-LUT useful for showing interpolation errors 3d-LUT with extended range values diff --git a/tests/data/files/clf/lut3d_identity_12i_16f.clf b/tests/data/files/clf/lut3d_identity_12i_16f.clf index 463f31dcbd..972fb9775a 100644 --- a/tests/data/files/clf/lut3d_identity_12i_16f.clf +++ b/tests/data/files/clf/lut3d_identity_12i_16f.clf @@ -1,5 +1,5 @@ - + 3D LUT example 3D LUT diff --git a/tests/data/files/clf/lut3d_preview_tier_test.clf b/tests/data/files/clf/lut3d_preview_tier_test.clf index eae5b78a26..2bf09754c4 100644 --- a/tests/data/files/clf/lut3d_preview_tier_test.clf +++ b/tests/data/files/clf/lut3d_preview_tier_test.clf @@ -1,5 +1,5 @@ - + Test LUT for Preview-tier CLF validation test suite ACEScct Rec.1886 / Rec.709 video diff --git a/tests/data/files/clf/matrix_3x4_example.clf b/tests/data/files/clf/matrix_3x4_example.clf index a5f0722a13..1d011f90cc 100644 --- a/tests/data/files/clf/matrix_3x4_example.clf +++ b/tests/data/files/clf/matrix_3x4_example.clf @@ -1,5 +1,5 @@ - + Matrix example Used by unit tests diff --git a/tests/data/files/clf/matrix_example_utf8.clf b/tests/data/files/clf/matrix_example_utf8.clf index 2b5d8348a8..a921d2db23 100644 --- a/tests/data/files/clf/matrix_example_utf8.clf +++ b/tests/data/files/clf/matrix_example_utf8.clf @@ -1,5 +1,5 @@ - + Test utf8 character encoding support. 標準萬國碼 diff --git a/tests/data/files/clf/matrix_no_newlines.clf b/tests/data/files/clf/matrix_no_newlines.clf index 7ed434bee5..f7adde687c 100644 --- a/tests/data/files/clf/matrix_no_newlines.clf +++ b/tests/data/files/clf/matrix_no_newlines.clf @@ -1 +1 @@ -Example with minimal newlinesArray values separated only by tabs3.6 0.1 -0.2 0.3 0.2 3.5 +0.1 -0.05 1E-01 -0.3 0.34e+01 -4e-1 \ No newline at end of file +Example with minimal newlinesArray values separated only by tabs3.6 0.1 -0.2 0.3 0.2 3.5 +0.1 -0.05 1E-01 -0.3 0.34e+01 -4e-1 \ No newline at end of file diff --git a/tests/data/files/clf/matrix_windows.clf b/tests/data/files/clf/matrix_windows.clf index 7e7241610c..5d45b4c797 100644 --- a/tests/data/files/clf/matrix_windows.clf +++ b/tests/data/files/clf/matrix_windows.clf @@ -1,11 +1,11 @@ - - This file has Windows line-endings. - Also, the file does not start with a ?xml header. - - -4095 0 0 -0 4095 0 -0 0 4095 - - + + This file has Windows line-endings. + Also, the file does not start with a ?xml header. + + +4095 0 0 +0 4095 0 +0 0 4095 + + \ No newline at end of file diff --git a/tests/data/files/clf/multiple_ops.clf b/tests/data/files/clf/multiple_ops.clf index 5e0973790d..5ad43d7d01 100644 --- a/tests/data/files/clf/multiple_ops.clf +++ b/tests/data/files/clf/multiple_ops.clf @@ -1,5 +1,5 @@ - + Test with lots of different process nodes scene 1 exterior look diff --git a/tests/data/files/clf/illegal/log_bad_version.clf b/tests/data/files/clf/pre-smpte_only/illegal/log_bad_version.clf similarity index 80% rename from tests/data/files/clf/illegal/log_bad_version.clf rename to tests/data/files/clf/pre-smpte_only/illegal/log_bad_version.clf index 6aea455cd7..d0ad478c1a 100644 --- a/tests/data/files/clf/illegal/log_bad_version.clf +++ b/tests/data/files/clf/pre-smpte_only/illegal/log_bad_version.clf @@ -1,5 +1,5 @@ - + Version is too low to support Log. inputDesc outputDesc diff --git a/tests/data/files/clf/illegal/process_list_bad_version.clf b/tests/data/files/clf/pre-smpte_only/illegal/process_list_bad_version.clf similarity index 82% rename from tests/data/files/clf/illegal/process_list_bad_version.clf rename to tests/data/files/clf/pre-smpte_only/illegal/process_list_bad_version.clf index 11408a1c28..19aca3cd7c 100644 --- a/tests/data/files/clf/illegal/process_list_bad_version.clf +++ b/tests/data/files/clf/pre-smpte_only/illegal/process_list_bad_version.clf @@ -1,6 +1,6 @@ - Not a legal compCLFversion string + Does not contain a legal compCLFversion string. 3.24000 -1.53700 -0.49850 diff --git a/tests/data/files/clf/illegal/process_list_higher_version.clf b/tests/data/files/clf/pre-smpte_only/illegal/process_list_higher_version.clf similarity index 80% rename from tests/data/files/clf/illegal/process_list_higher_version.clf rename to tests/data/files/clf/pre-smpte_only/illegal/process_list_higher_version.clf index 8e1d97bff0..87c398fedb 100644 --- a/tests/data/files/clf/illegal/process_list_higher_version.clf +++ b/tests/data/files/clf/pre-smpte_only/illegal/process_list_higher_version.clf @@ -1,6 +1,6 @@ - Versions higher than current version must be rejected + Versions higher than the supported version must be rejected. 3.24000 -1.53700 -0.49850 diff --git a/tests/data/files/clf/pre-smpte_only/illegal/transform_id_empty.clf b/tests/data/files/clf/pre-smpte_only/illegal/transform_id_empty.clf new file mode 100644 index 0000000000..a3d6e465a3 --- /dev/null +++ b/tests/data/files/clf/pre-smpte_only/illegal/transform_id_empty.clf @@ -0,0 +1,5 @@ + + + The id string must not be empty in v3. + + diff --git a/tests/data/files/clf/pre-smpte_only/illegal/transform_missing_id.clf b/tests/data/files/clf/pre-smpte_only/illegal/transform_missing_id.clf new file mode 100644 index 0000000000..fdf1735321 --- /dev/null +++ b/tests/data/files/clf/pre-smpte_only/illegal/transform_missing_id.clf @@ -0,0 +1,5 @@ + + + The ProcessList id attribute may not be missing in v3. + + diff --git a/tests/data/files/clf/matrix_example.clf b/tests/data/files/clf/pre-smpte_only/matrix_example.clf similarity index 83% rename from tests/data/files/clf/matrix_example.clf rename to tests/data/files/clf/pre-smpte_only/matrix_example.clf index 7d2c833463..04041bdd15 100644 --- a/tests/data/files/clf/matrix_example.clf +++ b/tests/data/files/clf/pre-smpte_only/matrix_example.clf @@ -1,5 +1,5 @@ - + Basic matrix example using CLF v2 dim syntax RGB XYZ diff --git a/tests/data/files/clf/pre-smpte_only/process_list_v3_namespace.clf b/tests/data/files/clf/pre-smpte_only/process_list_v3_namespace.clf new file mode 100644 index 0000000000..086bfc86d6 --- /dev/null +++ b/tests/data/files/clf/pre-smpte_only/process_list_v3_namespace.clf @@ -0,0 +1,11 @@ + + + Uses the v3 namespace. + + + 3.24000 -1.53700 -0.49850 +-0.96930 1.87600 0.04156 + 0.05560 -0.20400 1.05730 + + + diff --git a/tests/data/files/clf/range.clf b/tests/data/files/clf/range.clf index 88c38cdedc..467787dc46 100644 --- a/tests/data/files/clf/range.clf +++ b/tests/data/files/clf/range.clf @@ -1,5 +1,5 @@ - + Basic range example with no style attribute RGB RGB diff --git a/tests/data/files/clf/range_test1_clamp.clf b/tests/data/files/clf/range_test1_clamp.clf index f7e436dee0..ec5f9edbd7 100644 --- a/tests/data/files/clf/range_test1_clamp.clf +++ b/tests/data/files/clf/range_test1_clamp.clf @@ -1,5 +1,5 @@ - + Basic range example 16 diff --git a/tests/data/files/clf/range_test1_noclamp.clf b/tests/data/files/clf/range_test1_noclamp.clf index f5872bd5b3..3e79f25eac 100644 --- a/tests/data/files/clf/range_test1_noclamp.clf +++ b/tests/data/files/clf/range_test1_noclamp.clf @@ -1,5 +1,5 @@ - + Basic range with noClamp style Note that the 8i bit-depth does not constrain the legal range of values diff --git a/tests/data/files/clf/range_test2.clf b/tests/data/files/clf/range_test2.clf index 7ae54b15c9..6a46eb075a 100644 --- a/tests/data/files/clf/range_test2.clf +++ b/tests/data/files/clf/range_test2.clf @@ -1,10 +1,10 @@ - + Range that clamps on the low side - 0.1 1e-1 + 0.1 diff --git a/tests/data/files/clf/smpte_only/broadcast_profile_lut33.clf b/tests/data/files/clf/smpte_only/broadcast_profile_lut33.clf new file mode 100644 index 0000000000..072705e358 --- /dev/null +++ b/tests/data/files/clf/smpte_only/broadcast_profile_lut33.clf @@ -0,0 +1,35997 @@ + + + + urn:uuid:a8f91bfa-b79f-5d4d-b750-a411c476bb47 + + Demo Advanced LUT with dummy values + Démonstration d'une LUT avancée avec des valeurs factices + Demo Erweiterte LUT mit Dummy-Werten + + ITU-R BT.709 + + Same as Input + Identique à l'entrée + Gleiches wie Eingabe + + + http://www.smpte-ra.org/ns/2136-10/2026#Live_Broadcast_LUT33 + SMPTE_2136-10_Example + OCIO contributors + 1.0 + + ColorPrimaries_ITU709 + TransferCharacteristic_ITU709 + CodingEquations_ITU709 + + + ColorPrimaries_ITU2020 + TransferCharacteristic_SMPTEST2084 + CodingEquations_ITU2100_ICtCp + + sdiClip + Test, Display-light + fake-email@ocio.org + + + + Input Scaling - only used for full-range signals + 0. + 1. + 0.06256109481915934 + 0.91886608015640270 + + + + +0 0 0 +0 0 0.03125 +0 0 0.0625 +0 0 0.09375 +0 0 0.125 +0 0 0.1562 +0 0 0.1875 +0 0 0.2188 +0 0 0.25 +0 0 0.2812 +0 0 0.3125 +0 0 0.3438 +0 0 0.375 +0 0 0.4062 +0 0 0.4375 +0 0 0.4688 +0 0 0.5 +0 0 0.5312 +0 0 0.5625 +0 0 0.5938 +0 0 0.625 +0 0 0.6562 +0 0 0.6875 +0 0 0.7188 +0 0 0.75 +0 0 0.7812 +0 0 0.8125 +0 0 0.8438 +0 0 0.875 +0 0 0.9062 +0 0 0.9375 +0 0 0.9688 +0 0 1 +0 0.03125 0 +0 0.03125 0.03125 +0 0.03125 0.0625 +0 0.03125 0.09375 +0 0.03125 0.125 +0 0.03125 0.1562 +0 0.03125 0.1875 +0 0.03125 0.2188 +0 0.03125 0.25 +0 0.03125 0.2812 +0 0.03125 0.3125 +0 0.03125 0.3438 +0 0.03125 0.375 +0 0.03125 0.4062 +0 0.03125 0.4375 +0 0.03125 0.4688 +0 0.03125 0.5 +0 0.03125 0.5312 +0 0.03125 0.5625 +0 0.03125 0.5938 +0 0.03125 0.625 +0 0.03125 0.6562 +0 0.03125 0.6875 +0 0.03125 0.7188 +0 0.03125 0.75 +0 0.03125 0.7812 +0 0.03125 0.8125 +0 0.03125 0.8438 +0 0.03125 0.875 +0 0.03125 0.9062 +0 0.03125 0.9375 +0 0.03125 0.9688 +0 0.03125 1 +0 0.0625 0 +0 0.0625 0.03125 +0 0.0625 0.0625 +0 0.0625 0.09375 +0 0.0625 0.125 +0 0.0625 0.1562 +0 0.0625 0.1875 +0 0.0625 0.2188 +0 0.0625 0.25 +0 0.0625 0.2812 +0 0.0625 0.3125 +0 0.0625 0.3438 +0 0.0625 0.375 +0 0.0625 0.4062 +0 0.0625 0.4375 +0 0.0625 0.4688 +0 0.0625 0.5 +0 0.0625 0.5312 +0 0.0625 0.5625 +0 0.0625 0.5938 +0 0.0625 0.625 +0 0.0625 0.6562 +0 0.0625 0.6875 +0 0.0625 0.7188 +0 0.0625 0.75 +0 0.0625 0.7812 +0 0.0625 0.8125 +0 0.0625 0.8438 +0 0.0625 0.875 +0 0.0625 0.9062 +0 0.0625 0.9375 +0 0.0625 0.9688 +0 0.0625 1 +0 0.09375 0 +0 0.09375 0.03125 +0 0.09375 0.0625 +0 0.09375 0.09375 +0 0.09375 0.125 +0 0.09375 0.1562 +0 0.09375 0.1875 +0 0.09375 0.2188 +0 0.09375 0.25 +0 0.09375 0.2812 +0 0.09375 0.3125 +0 0.09375 0.3438 +0 0.09375 0.375 +0 0.09375 0.4062 +0 0.09375 0.4375 +0 0.09375 0.4688 +0 0.09375 0.5 +0 0.09375 0.5312 +0 0.09375 0.5625 +0 0.09375 0.5938 +0 0.09375 0.625 +0 0.09375 0.6562 +0 0.09375 0.6875 +0 0.09375 0.7188 +0 0.09375 0.75 +0 0.09375 0.7812 +0 0.09375 0.8125 +0 0.09375 0.8438 +0 0.09375 0.875 +0 0.09375 0.9062 +0 0.09375 0.9375 +0 0.09375 0.9688 +0 0.09375 1 +0 0.125 0 +0 0.125 0.03125 +0 0.125 0.0625 +0 0.125 0.09375 +0 0.125 0.125 +0 0.125 0.1562 +0 0.125 0.1875 +0 0.125 0.2188 +0 0.125 0.25 +0 0.125 0.2812 +0 0.125 0.3125 +0 0.125 0.3438 +0 0.125 0.375 +0 0.125 0.4062 +0 0.125 0.4375 +0 0.125 0.4688 +0 0.125 0.5 +0 0.125 0.5312 +0 0.125 0.5625 +0 0.125 0.5938 +0 0.125 0.625 +0 0.125 0.6562 +0 0.125 0.6875 +0 0.125 0.7188 +0 0.125 0.75 +0 0.125 0.7812 +0 0.125 0.8125 +0 0.125 0.8438 +0 0.125 0.875 +0 0.125 0.9062 +0 0.125 0.9375 +0 0.125 0.9688 +0 0.125 1 +0 0.1562 0 +0 0.1562 0.03125 +0 0.1562 0.0625 +0 0.1562 0.09375 +0 0.1562 0.125 +0 0.1562 0.1562 +0 0.1562 0.1875 +0 0.1562 0.2188 +0 0.1562 0.25 +0 0.1562 0.2812 +0 0.1562 0.3125 +0 0.1562 0.3438 +0 0.1562 0.375 +0 0.1562 0.4062 +0 0.1562 0.4375 +0 0.1562 0.4688 +0 0.1562 0.5 +0 0.1562 0.5312 +0 0.1562 0.5625 +0 0.1562 0.5938 +0 0.1562 0.625 +0 0.1562 0.6562 +0 0.1562 0.6875 +0 0.1562 0.7188 +0 0.1562 0.75 +0 0.1562 0.7812 +0 0.1562 0.8125 +0 0.1562 0.8438 +0 0.1562 0.875 +0 0.1562 0.9062 +0 0.1562 0.9375 +0 0.1562 0.9688 +0 0.1562 1 +0 0.1875 0 +0 0.1875 0.03125 +0 0.1875 0.0625 +0 0.1875 0.09375 +0 0.1875 0.125 +0 0.1875 0.1562 +0 0.1875 0.1875 +0 0.1875 0.2188 +0 0.1875 0.25 +0 0.1875 0.2812 +0 0.1875 0.3125 +0 0.1875 0.3438 +0 0.1875 0.375 +0 0.1875 0.4062 +0 0.1875 0.4375 +0 0.1875 0.4688 +0 0.1875 0.5 +0 0.1875 0.5312 +0 0.1875 0.5625 +0 0.1875 0.5938 +0 0.1875 0.625 +0 0.1875 0.6562 +0 0.1875 0.6875 +0 0.1875 0.7188 +0 0.1875 0.75 +0 0.1875 0.7812 +0 0.1875 0.8125 +0 0.1875 0.8438 +0 0.1875 0.875 +0 0.1875 0.9062 +0 0.1875 0.9375 +0 0.1875 0.9688 +0 0.1875 1 +0 0.2188 0 +0 0.2188 0.03125 +0 0.2188 0.0625 +0 0.2188 0.09375 +0 0.2188 0.125 +0 0.2188 0.1562 +0 0.2188 0.1875 +0 0.2188 0.2188 +0 0.2188 0.25 +0 0.2188 0.2812 +0 0.2188 0.3125 +0 0.2188 0.3438 +0 0.2188 0.375 +0 0.2188 0.4062 +0 0.2188 0.4375 +0 0.2188 0.4688 +0 0.2188 0.5 +0 0.2188 0.5312 +0 0.2188 0.5625 +0 0.2188 0.5938 +0 0.2188 0.625 +0 0.2188 0.6562 +0 0.2188 0.6875 +0 0.2188 0.7188 +0 0.2188 0.75 +0 0.2188 0.7812 +0 0.2188 0.8125 +0 0.2188 0.8438 +0 0.2188 0.875 +0 0.2188 0.9062 +0 0.2188 0.9375 +0 0.2188 0.9688 +0 0.2188 1 +0 0.25 0 +0 0.25 0.03125 +0 0.25 0.0625 +0 0.25 0.09375 +0 0.25 0.125 +0 0.25 0.1562 +0 0.25 0.1875 +0 0.25 0.2188 +0 0.25 0.25 +0 0.25 0.2812 +0 0.25 0.3125 +0 0.25 0.3438 +0 0.25 0.375 +0 0.25 0.4062 +0 0.25 0.4375 +0 0.25 0.4688 +0 0.25 0.5 +0 0.25 0.5312 +0 0.25 0.5625 +0 0.25 0.5938 +0 0.25 0.625 +0 0.25 0.6562 +0 0.25 0.6875 +0 0.25 0.7188 +0 0.25 0.75 +0 0.25 0.7812 +0 0.25 0.8125 +0 0.25 0.8438 +0 0.25 0.875 +0 0.25 0.9062 +0 0.25 0.9375 +0 0.25 0.9688 +0 0.25 1 +0 0.2812 0 +0 0.2812 0.03125 +0 0.2812 0.0625 +0 0.2812 0.09375 +0 0.2812 0.125 +0 0.2812 0.1562 +0 0.2812 0.1875 +0 0.2812 0.2188 +0 0.2812 0.25 +0 0.2812 0.2812 +0 0.2812 0.3125 +0 0.2812 0.3438 +0 0.2812 0.375 +0 0.2812 0.4062 +0 0.2812 0.4375 +0 0.2812 0.4688 +0 0.2812 0.5 +0 0.2812 0.5312 +0 0.2812 0.5625 +0 0.2812 0.5938 +0 0.2812 0.625 +0 0.2812 0.6562 +0 0.2812 0.6875 +0 0.2812 0.7188 +0 0.2812 0.75 +0 0.2812 0.7812 +0 0.2812 0.8125 +0 0.2812 0.8438 +0 0.2812 0.875 +0 0.2812 0.9062 +0 0.2812 0.9375 +0 0.2812 0.9688 +0 0.2812 1 +0 0.3125 0 +0 0.3125 0.03125 +0 0.3125 0.0625 +0 0.3125 0.09375 +0 0.3125 0.125 +0 0.3125 0.1562 +0 0.3125 0.1875 +0 0.3125 0.2188 +0 0.3125 0.25 +0 0.3125 0.2812 +0 0.3125 0.3125 +0 0.3125 0.3438 +0 0.3125 0.375 +0 0.3125 0.4062 +0 0.3125 0.4375 +0 0.3125 0.4688 +0 0.3125 0.5 +0 0.3125 0.5312 +0 0.3125 0.5625 +0 0.3125 0.5938 +0 0.3125 0.625 +0 0.3125 0.6562 +0 0.3125 0.6875 +0 0.3125 0.7188 +0 0.3125 0.75 +0 0.3125 0.7812 +0 0.3125 0.8125 +0 0.3125 0.8438 +0 0.3125 0.875 +0 0.3125 0.9062 +0 0.3125 0.9375 +0 0.3125 0.9688 +0 0.3125 1 +0 0.3438 0 +0 0.3438 0.03125 +0 0.3438 0.0625 +0 0.3438 0.09375 +0 0.3438 0.125 +0 0.3438 0.1562 +0 0.3438 0.1875 +0 0.3438 0.2188 +0 0.3438 0.25 +0 0.3438 0.2812 +0 0.3438 0.3125 +0 0.3438 0.3438 +0 0.3438 0.375 +0 0.3438 0.4062 +0 0.3438 0.4375 +0 0.3438 0.4688 +0 0.3438 0.5 +0 0.3438 0.5312 +0 0.3438 0.5625 +0 0.3438 0.5938 +0 0.3438 0.625 +0 0.3438 0.6562 +0 0.3438 0.6875 +0 0.3438 0.7188 +0 0.3438 0.75 +0 0.3438 0.7812 +0 0.3438 0.8125 +0 0.3438 0.8438 +0 0.3438 0.875 +0 0.3438 0.9062 +0 0.3438 0.9375 +0 0.3438 0.9688 +0 0.3438 1 +0 0.375 0 +0 0.375 0.03125 +0 0.375 0.0625 +0 0.375 0.09375 +0 0.375 0.125 +0 0.375 0.1562 +0 0.375 0.1875 +0 0.375 0.2188 +0 0.375 0.25 +0 0.375 0.2812 +0 0.375 0.3125 +0 0.375 0.3438 +0 0.375 0.375 +0 0.375 0.4062 +0 0.375 0.4375 +0 0.375 0.4688 +0 0.375 0.5 +0 0.375 0.5312 +0 0.375 0.5625 +0 0.375 0.5938 +0 0.375 0.625 +0 0.375 0.6562 +0 0.375 0.6875 +0 0.375 0.7188 +0 0.375 0.75 +0 0.375 0.7812 +0 0.375 0.8125 +0 0.375 0.8438 +0 0.375 0.875 +0 0.375 0.9062 +0 0.375 0.9375 +0 0.375 0.9688 +0 0.375 1 +0 0.4062 0 +0 0.4062 0.03125 +0 0.4062 0.0625 +0 0.4062 0.09375 +0 0.4062 0.125 +0 0.4062 0.1562 +0 0.4062 0.1875 +0 0.4062 0.2188 +0 0.4062 0.25 +0 0.4062 0.2812 +0 0.4062 0.3125 +0 0.4062 0.3438 +0 0.4062 0.375 +0 0.4062 0.4062 +0 0.4062 0.4375 +0 0.4062 0.4688 +0 0.4062 0.5 +0 0.4062 0.5312 +0 0.4062 0.5625 +0 0.4062 0.5938 +0 0.4062 0.625 +0 0.4062 0.6562 +0 0.4062 0.6875 +0 0.4062 0.7188 +0 0.4062 0.75 +0 0.4062 0.7812 +0 0.4062 0.8125 +0 0.4062 0.8438 +0 0.4062 0.875 +0 0.4062 0.9062 +0 0.4062 0.9375 +0 0.4062 0.9688 +0 0.4062 1 +0 0.4375 0 +0 0.4375 0.03125 +0 0.4375 0.0625 +0 0.4375 0.09375 +0 0.4375 0.125 +0 0.4375 0.1562 +0 0.4375 0.1875 +0 0.4375 0.2188 +0 0.4375 0.25 +0 0.4375 0.2812 +0 0.4375 0.3125 +0 0.4375 0.3438 +0 0.4375 0.375 +0 0.4375 0.4062 +0 0.4375 0.4375 +0 0.4375 0.4688 +0 0.4375 0.5 +0 0.4375 0.5312 +0 0.4375 0.5625 +0 0.4375 0.5938 +0 0.4375 0.625 +0 0.4375 0.6562 +0 0.4375 0.6875 +0 0.4375 0.7188 +0 0.4375 0.75 +0 0.4375 0.7812 +0 0.4375 0.8125 +0 0.4375 0.8438 +0 0.4375 0.875 +0 0.4375 0.9062 +0 0.4375 0.9375 +0 0.4375 0.9688 +0 0.4375 1 +0 0.4688 0 +0 0.4688 0.03125 +0 0.4688 0.0625 +0 0.4688 0.09375 +0 0.4688 0.125 +0 0.4688 0.1562 +0 0.4688 0.1875 +0 0.4688 0.2188 +0 0.4688 0.25 +0 0.4688 0.2812 +0 0.4688 0.3125 +0 0.4688 0.3438 +0 0.4688 0.375 +0 0.4688 0.4062 +0 0.4688 0.4375 +0 0.4688 0.4688 +0 0.4688 0.5 +0 0.4688 0.5312 +0 0.4688 0.5625 +0 0.4688 0.5938 +0 0.4688 0.625 +0 0.4688 0.6562 +0 0.4688 0.6875 +0 0.4688 0.7188 +0 0.4688 0.75 +0 0.4688 0.7812 +0 0.4688 0.8125 +0 0.4688 0.8438 +0 0.4688 0.875 +0 0.4688 0.9062 +0 0.4688 0.9375 +0 0.4688 0.9688 +0 0.4688 1 +0 0.5 0 +0 0.5 0.03125 +0 0.5 0.0625 +0 0.5 0.09375 +0 0.5 0.125 +0 0.5 0.1562 +0 0.5 0.1875 +0 0.5 0.2188 +0 0.5 0.25 +0 0.5 0.2812 +0 0.5 0.3125 +0 0.5 0.3438 +0 0.5 0.375 +0 0.5 0.4062 +0 0.5 0.4375 +0 0.5 0.4688 +0 0.5 0.5 +0 0.5 0.5312 +0 0.5 0.5625 +0 0.5 0.5938 +0 0.5 0.625 +0 0.5 0.6562 +0 0.5 0.6875 +0 0.5 0.7188 +0 0.5 0.75 +0 0.5 0.7812 +0 0.5 0.8125 +0 0.5 0.8438 +0 0.5 0.875 +0 0.5 0.9062 +0 0.5 0.9375 +0 0.5 0.9688 +0 0.5 1 +0 0.5312 0 +0 0.5312 0.03125 +0 0.5312 0.0625 +0 0.5312 0.09375 +0 0.5312 0.125 +0 0.5312 0.1562 +0 0.5312 0.1875 +0 0.5312 0.2188 +0 0.5312 0.25 +0 0.5312 0.2812 +0 0.5312 0.3125 +0 0.5312 0.3438 +0 0.5312 0.375 +0 0.5312 0.4062 +0 0.5312 0.4375 +0 0.5312 0.4688 +0 0.5312 0.5 +0 0.5312 0.5312 +0 0.5312 0.5625 +0 0.5312 0.5938 +0 0.5312 0.625 +0 0.5312 0.6562 +0 0.5312 0.6875 +0 0.5312 0.7188 +0 0.5312 0.75 +0 0.5312 0.7812 +0 0.5312 0.8125 +0 0.5312 0.8438 +0 0.5312 0.875 +0 0.5312 0.9062 +0 0.5312 0.9375 +0 0.5312 0.9688 +0 0.5312 1 +0 0.5625 0 +0 0.5625 0.03125 +0 0.5625 0.0625 +0 0.5625 0.09375 +0 0.5625 0.125 +0 0.5625 0.1562 +0 0.5625 0.1875 +0 0.5625 0.2188 +0 0.5625 0.25 +0 0.5625 0.2812 +0 0.5625 0.3125 +0 0.5625 0.3438 +0 0.5625 0.375 +0 0.5625 0.4062 +0 0.5625 0.4375 +0 0.5625 0.4688 +0 0.5625 0.5 +0 0.5625 0.5312 +0 0.5625 0.5625 +0 0.5625 0.5938 +0 0.5625 0.625 +0 0.5625 0.6562 +0 0.5625 0.6875 +0 0.5625 0.7188 +0 0.5625 0.75 +0 0.5625 0.7812 +0 0.5625 0.8125 +0 0.5625 0.8438 +0 0.5625 0.875 +0 0.5625 0.9062 +0 0.5625 0.9375 +0 0.5625 0.9688 +0 0.5625 1 +0 0.5938 0 +0 0.5938 0.03125 +0 0.5938 0.0625 +0 0.5938 0.09375 +0 0.5938 0.125 +0 0.5938 0.1562 +0 0.5938 0.1875 +0 0.5938 0.2188 +0 0.5938 0.25 +0 0.5938 0.2812 +0 0.5938 0.3125 +0 0.5938 0.3438 +0 0.5938 0.375 +0 0.5938 0.4062 +0 0.5938 0.4375 +0 0.5938 0.4688 +0 0.5938 0.5 +0 0.5938 0.5312 +0 0.5938 0.5625 +0 0.5938 0.5938 +0 0.5938 0.625 +0 0.5938 0.6562 +0 0.5938 0.6875 +0 0.5938 0.7188 +0 0.5938 0.75 +0 0.5938 0.7812 +0 0.5938 0.8125 +0 0.5938 0.8438 +0 0.5938 0.875 +0 0.5938 0.9062 +0 0.5938 0.9375 +0 0.5938 0.9688 +0 0.5938 1 +0 0.625 0 +0 0.625 0.03125 +0 0.625 0.0625 +0 0.625 0.09375 +0 0.625 0.125 +0 0.625 0.1562 +0 0.625 0.1875 +0 0.625 0.2188 +0 0.625 0.25 +0 0.625 0.2812 +0 0.625 0.3125 +0 0.625 0.3438 +0 0.625 0.375 +0 0.625 0.4062 +0 0.625 0.4375 +0 0.625 0.4688 +0 0.625 0.5 +0 0.625 0.5312 +0 0.625 0.5625 +0 0.625 0.5938 +0 0.625 0.625 +0 0.625 0.6562 +0 0.625 0.6875 +0 0.625 0.7188 +0 0.625 0.75 +0 0.625 0.7812 +0 0.625 0.8125 +0 0.625 0.8438 +0 0.625 0.875 +0 0.625 0.9062 +0 0.625 0.9375 +0 0.625 0.9688 +0 0.625 1 +0 0.6562 0 +0 0.6562 0.03125 +0 0.6562 0.0625 +0 0.6562 0.09375 +0 0.6562 0.125 +0 0.6562 0.1562 +0 0.6562 0.1875 +0 0.6562 0.2188 +0 0.6562 0.25 +0 0.6562 0.2812 +0 0.6562 0.3125 +0 0.6562 0.3438 +0 0.6562 0.375 +0 0.6562 0.4062 +0 0.6562 0.4375 +0 0.6562 0.4688 +0 0.6562 0.5 +0 0.6562 0.5312 +0 0.6562 0.5625 +0 0.6562 0.5938 +0 0.6562 0.625 +0 0.6562 0.6562 +0 0.6562 0.6875 +0 0.6562 0.7188 +0 0.6562 0.75 +0 0.6562 0.7812 +0 0.6562 0.8125 +0 0.6562 0.8438 +0 0.6562 0.875 +0 0.6562 0.9062 +0 0.6562 0.9375 +0 0.6562 0.9688 +0 0.6562 1 +0 0.6875 0 +0 0.6875 0.03125 +0 0.6875 0.0625 +0 0.6875 0.09375 +0 0.6875 0.125 +0 0.6875 0.1562 +0 0.6875 0.1875 +0 0.6875 0.2188 +0 0.6875 0.25 +0 0.6875 0.2812 +0 0.6875 0.3125 +0 0.6875 0.3438 +0 0.6875 0.375 +0 0.6875 0.4062 +0 0.6875 0.4375 +0 0.6875 0.4688 +0 0.6875 0.5 +0 0.6875 0.5312 +0 0.6875 0.5625 +0 0.6875 0.5938 +0 0.6875 0.625 +0 0.6875 0.6562 +0 0.6875 0.6875 +0 0.6875 0.7188 +0 0.6875 0.75 +0 0.6875 0.7812 +0 0.6875 0.8125 +0 0.6875 0.8438 +0 0.6875 0.875 +0 0.6875 0.9062 +0 0.6875 0.9375 +0 0.6875 0.9688 +0 0.6875 1 +0 0.7188 0 +0 0.7188 0.03125 +0 0.7188 0.0625 +0 0.7188 0.09375 +0 0.7188 0.125 +0 0.7188 0.1562 +0 0.7188 0.1875 +0 0.7188 0.2188 +0 0.7188 0.25 +0 0.7188 0.2812 +0 0.7188 0.3125 +0 0.7188 0.3438 +0 0.7188 0.375 +0 0.7188 0.4062 +0 0.7188 0.4375 +0 0.7188 0.4688 +0 0.7188 0.5 +0 0.7188 0.5312 +0 0.7188 0.5625 +0 0.7188 0.5938 +0 0.7188 0.625 +0 0.7188 0.6562 +0 0.7188 0.6875 +0 0.7188 0.7188 +0 0.7188 0.75 +0 0.7188 0.7812 +0 0.7188 0.8125 +0 0.7188 0.8438 +0 0.7188 0.875 +0 0.7188 0.9062 +0 0.7188 0.9375 +0 0.7188 0.9688 +0 0.7188 1 +0 0.75 0 +0 0.75 0.03125 +0 0.75 0.0625 +0 0.75 0.09375 +0 0.75 0.125 +0 0.75 0.1562 +0 0.75 0.1875 +0 0.75 0.2188 +0 0.75 0.25 +0 0.75 0.2812 +0 0.75 0.3125 +0 0.75 0.3438 +0 0.75 0.375 +0 0.75 0.4062 +0 0.75 0.4375 +0 0.75 0.4688 +0 0.75 0.5 +0 0.75 0.5312 +0 0.75 0.5625 +0 0.75 0.5938 +0 0.75 0.625 +0 0.75 0.6562 +0 0.75 0.6875 +0 0.75 0.7188 +0 0.75 0.75 +0 0.75 0.7812 +0 0.75 0.8125 +0 0.75 0.8438 +0 0.75 0.875 +0 0.75 0.9062 +0 0.75 0.9375 +0 0.75 0.9688 +0 0.75 1 +0 0.7812 0 +0 0.7812 0.03125 +0 0.7812 0.0625 +0 0.7812 0.09375 +0 0.7812 0.125 +0 0.7812 0.1562 +0 0.7812 0.1875 +0 0.7812 0.2188 +0 0.7812 0.25 +0 0.7812 0.2812 +0 0.7812 0.3125 +0 0.7812 0.3438 +0 0.7812 0.375 +0 0.7812 0.4062 +0 0.7812 0.4375 +0 0.7812 0.4688 +0 0.7812 0.5 +0 0.7812 0.5312 +0 0.7812 0.5625 +0 0.7812 0.5938 +0 0.7812 0.625 +0 0.7812 0.6562 +0 0.7812 0.6875 +0 0.7812 0.7188 +0 0.7812 0.75 +0 0.7812 0.7812 +0 0.7812 0.8125 +0 0.7812 0.8438 +0 0.7812 0.875 +0 0.7812 0.9062 +0 0.7812 0.9375 +0 0.7812 0.9688 +0 0.7812 1 +0 0.8125 0 +0 0.8125 0.03125 +0 0.8125 0.0625 +0 0.8125 0.09375 +0 0.8125 0.125 +0 0.8125 0.1562 +0 0.8125 0.1875 +0 0.8125 0.2188 +0 0.8125 0.25 +0 0.8125 0.2812 +0 0.8125 0.3125 +0 0.8125 0.3438 +0 0.8125 0.375 +0 0.8125 0.4062 +0 0.8125 0.4375 +0 0.8125 0.4688 +0 0.8125 0.5 +0 0.8125 0.5312 +0 0.8125 0.5625 +0 0.8125 0.5938 +0 0.8125 0.625 +0 0.8125 0.6562 +0 0.8125 0.6875 +0 0.8125 0.7188 +0 0.8125 0.75 +0 0.8125 0.7812 +0 0.8125 0.8125 +0 0.8125 0.8438 +0 0.8125 0.875 +0 0.8125 0.9062 +0 0.8125 0.9375 +0 0.8125 0.9688 +0 0.8125 1 +0 0.8438 0 +0 0.8438 0.03125 +0 0.8438 0.0625 +0 0.8438 0.09375 +0 0.8438 0.125 +0 0.8438 0.1562 +0 0.8438 0.1875 +0 0.8438 0.2188 +0 0.8438 0.25 +0 0.8438 0.2812 +0 0.8438 0.3125 +0 0.8438 0.3438 +0 0.8438 0.375 +0 0.8438 0.4062 +0 0.8438 0.4375 +0 0.8438 0.4688 +0 0.8438 0.5 +0 0.8438 0.5312 +0 0.8438 0.5625 +0 0.8438 0.5938 +0 0.8438 0.625 +0 0.8438 0.6562 +0 0.8438 0.6875 +0 0.8438 0.7188 +0 0.8438 0.75 +0 0.8438 0.7812 +0 0.8438 0.8125 +0 0.8438 0.8438 +0 0.8438 0.875 +0 0.8438 0.9062 +0 0.8438 0.9375 +0 0.8438 0.9688 +0 0.8438 1 +0 0.875 0 +0 0.875 0.03125 +0 0.875 0.0625 +0 0.875 0.09375 +0 0.875 0.125 +0 0.875 0.1562 +0 0.875 0.1875 +0 0.875 0.2188 +0 0.875 0.25 +0 0.875 0.2812 +0 0.875 0.3125 +0 0.875 0.3438 +0 0.875 0.375 +0 0.875 0.4062 +0 0.875 0.4375 +0 0.875 0.4688 +0 0.875 0.5 +0 0.875 0.5312 +0 0.875 0.5625 +0 0.875 0.5938 +0 0.875 0.625 +0 0.875 0.6562 +0 0.875 0.6875 +0 0.875 0.7188 +0 0.875 0.75 +0 0.875 0.7812 +0 0.875 0.8125 +0 0.875 0.8438 +0 0.875 0.875 +0 0.875 0.9062 +0 0.875 0.9375 +0 0.875 0.9688 +0 0.875 1 +0 0.9062 0 +0 0.9062 0.03125 +0 0.9062 0.0625 +0 0.9062 0.09375 +0 0.9062 0.125 +0 0.9062 0.1562 +0 0.9062 0.1875 +0 0.9062 0.2188 +0 0.9062 0.25 +0 0.9062 0.2812 +0 0.9062 0.3125 +0 0.9062 0.3438 +0 0.9062 0.375 +0 0.9062 0.4062 +0 0.9062 0.4375 +0 0.9062 0.4688 +0 0.9062 0.5 +0 0.9062 0.5312 +0 0.9062 0.5625 +0 0.9062 0.5938 +0 0.9062 0.625 +0 0.9062 0.6562 +0 0.9062 0.6875 +0 0.9062 0.7188 +0 0.9062 0.75 +0 0.9062 0.7812 +0 0.9062 0.8125 +0 0.9062 0.8438 +0 0.9062 0.875 +0 0.9062 0.9062 +0 0.9062 0.9375 +0 0.9062 0.9688 +0 0.9062 1 +0 0.9375 0 +0 0.9375 0.03125 +0 0.9375 0.0625 +0 0.9375 0.09375 +0 0.9375 0.125 +0 0.9375 0.1562 +0 0.9375 0.1875 +0 0.9375 0.2188 +0 0.9375 0.25 +0 0.9375 0.2812 +0 0.9375 0.3125 +0 0.9375 0.3438 +0 0.9375 0.375 +0 0.9375 0.4062 +0 0.9375 0.4375 +0 0.9375 0.4688 +0 0.9375 0.5 +0 0.9375 0.5312 +0 0.9375 0.5625 +0 0.9375 0.5938 +0 0.9375 0.625 +0 0.9375 0.6562 +0 0.9375 0.6875 +0 0.9375 0.7188 +0 0.9375 0.75 +0 0.9375 0.7812 +0 0.9375 0.8125 +0 0.9375 0.8438 +0 0.9375 0.875 +0 0.9375 0.9062 +0 0.9375 0.9375 +0 0.9375 0.9688 +0 0.9375 1 +0 0.9688 0 +0 0.9688 0.03125 +0 0.9688 0.0625 +0 0.9688 0.09375 +0 0.9688 0.125 +0 0.9688 0.1562 +0 0.9688 0.1875 +0 0.9688 0.2188 +0 0.9688 0.25 +0 0.9688 0.2812 +0 0.9688 0.3125 +0 0.9688 0.3438 +0 0.9688 0.375 +0 0.9688 0.4062 +0 0.9688 0.4375 +0 0.9688 0.4688 +0 0.9688 0.5 +0 0.9688 0.5312 +0 0.9688 0.5625 +0 0.9688 0.5938 +0 0.9688 0.625 +0 0.9688 0.6562 +0 0.9688 0.6875 +0 0.9688 0.7188 +0 0.9688 0.75 +0 0.9688 0.7812 +0 0.9688 0.8125 +0 0.9688 0.8438 +0 0.9688 0.875 +0 0.9688 0.9062 +0 0.9688 0.9375 +0 0.9688 0.9688 +0 0.9688 1 +0 1 0 +0 1 0.03125 +0 1 0.0625 +0 1 0.09375 +0 1 0.125 +0 1 0.1562 +0 1 0.1875 +0 1 0.2188 +0 1 0.25 +0 1 0.2812 +0 1 0.3125 +0 1 0.3438 +0 1 0.375 +0 1 0.4062 +0 1 0.4375 +0 1 0.4688 +0 1 0.5 +0 1 0.5312 +0 1 0.5625 +0 1 0.5938 +0 1 0.625 +0 1 0.6562 +0 1 0.6875 +0 1 0.7188 +0 1 0.75 +0 1 0.7812 +0 1 0.8125 +0 1 0.8438 +0 1 0.875 +0 1 0.9062 +0 1 0.9375 +0 1 0.9688 +0 1 1 +0.03125 0 0 +0.03125 0 0.03125 +0.03125 0 0.0625 +0.03125 0 0.09375 +0.03125 0 0.125 +0.03125 0 0.1562 +0.03125 0 0.1875 +0.03125 0 0.2188 +0.03125 0 0.25 +0.03125 0 0.2812 +0.03125 0 0.3125 +0.03125 0 0.3438 +0.03125 0 0.375 +0.03125 0 0.4062 +0.03125 0 0.4375 +0.03125 0 0.4688 +0.03125 0 0.5 +0.03125 0 0.5312 +0.03125 0 0.5625 +0.03125 0 0.5938 +0.03125 0 0.625 +0.03125 0 0.6562 +0.03125 0 0.6875 +0.03125 0 0.7188 +0.03125 0 0.75 +0.03125 0 0.7812 +0.03125 0 0.8125 +0.03125 0 0.8438 +0.03125 0 0.875 +0.03125 0 0.9062 +0.03125 0 0.9375 +0.03125 0 0.9688 +0.03125 0 1 +0.03125 0.03125 0 +0.03125 0.03125 0.03125 +0.03125 0.03125 0.0625 +0.03125 0.03125 0.09375 +0.03125 0.03125 0.125 +0.03125 0.03125 0.1562 +0.03125 0.03125 0.1875 +0.03125 0.03125 0.2188 +0.03125 0.03125 0.25 +0.03125 0.03125 0.2812 +0.03125 0.03125 0.3125 +0.03125 0.03125 0.3438 +0.03125 0.03125 0.375 +0.03125 0.03125 0.4062 +0.03125 0.03125 0.4375 +0.03125 0.03125 0.4688 +0.03125 0.03125 0.5 +0.03125 0.03125 0.5312 +0.03125 0.03125 0.5625 +0.03125 0.03125 0.5938 +0.03125 0.03125 0.625 +0.03125 0.03125 0.6562 +0.03125 0.03125 0.6875 +0.03125 0.03125 0.7188 +0.03125 0.03125 0.75 +0.03125 0.03125 0.7812 +0.03125 0.03125 0.8125 +0.03125 0.03125 0.8438 +0.03125 0.03125 0.875 +0.03125 0.03125 0.9062 +0.03125 0.03125 0.9375 +0.03125 0.03125 0.9688 +0.03125 0.03125 1 +0.03125 0.0625 0 +0.03125 0.0625 0.03125 +0.03125 0.0625 0.0625 +0.03125 0.0625 0.09375 +0.03125 0.0625 0.125 +0.03125 0.0625 0.1562 +0.03125 0.0625 0.1875 +0.03125 0.0625 0.2188 +0.03125 0.0625 0.25 +0.03125 0.0625 0.2812 +0.03125 0.0625 0.3125 +0.03125 0.0625 0.3438 +0.03125 0.0625 0.375 +0.03125 0.0625 0.4062 +0.03125 0.0625 0.4375 +0.03125 0.0625 0.4688 +0.03125 0.0625 0.5 +0.03125 0.0625 0.5312 +0.03125 0.0625 0.5625 +0.03125 0.0625 0.5938 +0.03125 0.0625 0.625 +0.03125 0.0625 0.6562 +0.03125 0.0625 0.6875 +0.03125 0.0625 0.7188 +0.03125 0.0625 0.75 +0.03125 0.0625 0.7812 +0.03125 0.0625 0.8125 +0.03125 0.0625 0.8438 +0.03125 0.0625 0.875 +0.03125 0.0625 0.9062 +0.03125 0.0625 0.9375 +0.03125 0.0625 0.9688 +0.03125 0.0625 1 +0.03125 0.09375 0 +0.03125 0.09375 0.03125 +0.03125 0.09375 0.0625 +0.03125 0.09375 0.09375 +0.03125 0.09375 0.125 +0.03125 0.09375 0.1562 +0.03125 0.09375 0.1875 +0.03125 0.09375 0.2188 +0.03125 0.09375 0.25 +0.03125 0.09375 0.2812 +0.03125 0.09375 0.3125 +0.03125 0.09375 0.3438 +0.03125 0.09375 0.375 +0.03125 0.09375 0.4062 +0.03125 0.09375 0.4375 +0.03125 0.09375 0.4688 +0.03125 0.09375 0.5 +0.03125 0.09375 0.5312 +0.03125 0.09375 0.5625 +0.03125 0.09375 0.5938 +0.03125 0.09375 0.625 +0.03125 0.09375 0.6562 +0.03125 0.09375 0.6875 +0.03125 0.09375 0.7188 +0.03125 0.09375 0.75 +0.03125 0.09375 0.7812 +0.03125 0.09375 0.8125 +0.03125 0.09375 0.8438 +0.03125 0.09375 0.875 +0.03125 0.09375 0.9062 +0.03125 0.09375 0.9375 +0.03125 0.09375 0.9688 +0.03125 0.09375 1 +0.03125 0.125 0 +0.03125 0.125 0.03125 +0.03125 0.125 0.0625 +0.03125 0.125 0.09375 +0.03125 0.125 0.125 +0.03125 0.125 0.1562 +0.03125 0.125 0.1875 +0.03125 0.125 0.2188 +0.03125 0.125 0.25 +0.03125 0.125 0.2812 +0.03125 0.125 0.3125 +0.03125 0.125 0.3438 +0.03125 0.125 0.375 +0.03125 0.125 0.4062 +0.03125 0.125 0.4375 +0.03125 0.125 0.4688 +0.03125 0.125 0.5 +0.03125 0.125 0.5312 +0.03125 0.125 0.5625 +0.03125 0.125 0.5938 +0.03125 0.125 0.625 +0.03125 0.125 0.6562 +0.03125 0.125 0.6875 +0.03125 0.125 0.7188 +0.03125 0.125 0.75 +0.03125 0.125 0.7812 +0.03125 0.125 0.8125 +0.03125 0.125 0.8438 +0.03125 0.125 0.875 +0.03125 0.125 0.9062 +0.03125 0.125 0.9375 +0.03125 0.125 0.9688 +0.03125 0.125 1 +0.03125 0.1562 0 +0.03125 0.1562 0.03125 +0.03125 0.1562 0.0625 +0.03125 0.1562 0.09375 +0.03125 0.1562 0.125 +0.03125 0.1562 0.1562 +0.03125 0.1562 0.1875 +0.03125 0.1562 0.2188 +0.03125 0.1562 0.25 +0.03125 0.1562 0.2812 +0.03125 0.1562 0.3125 +0.03125 0.1562 0.3438 +0.03125 0.1562 0.375 +0.03125 0.1562 0.4062 +0.03125 0.1562 0.4375 +0.03125 0.1562 0.4688 +0.03125 0.1562 0.5 +0.03125 0.1562 0.5312 +0.03125 0.1562 0.5625 +0.03125 0.1562 0.5938 +0.03125 0.1562 0.625 +0.03125 0.1562 0.6562 +0.03125 0.1562 0.6875 +0.03125 0.1562 0.7188 +0.03125 0.1562 0.75 +0.03125 0.1562 0.7812 +0.03125 0.1562 0.8125 +0.03125 0.1562 0.8438 +0.03125 0.1562 0.875 +0.03125 0.1562 0.9062 +0.03125 0.1562 0.9375 +0.03125 0.1562 0.9688 +0.03125 0.1562 1 +0.03125 0.1875 0 +0.03125 0.1875 0.03125 +0.03125 0.1875 0.0625 +0.03125 0.1875 0.09375 +0.03125 0.1875 0.125 +0.03125 0.1875 0.1562 +0.03125 0.1875 0.1875 +0.03125 0.1875 0.2188 +0.03125 0.1875 0.25 +0.03125 0.1875 0.2812 +0.03125 0.1875 0.3125 +0.03125 0.1875 0.3438 +0.03125 0.1875 0.375 +0.03125 0.1875 0.4062 +0.03125 0.1875 0.4375 +0.03125 0.1875 0.4688 +0.03125 0.1875 0.5 +0.03125 0.1875 0.5312 +0.03125 0.1875 0.5625 +0.03125 0.1875 0.5938 +0.03125 0.1875 0.625 +0.03125 0.1875 0.6562 +0.03125 0.1875 0.6875 +0.03125 0.1875 0.7188 +0.03125 0.1875 0.75 +0.03125 0.1875 0.7812 +0.03125 0.1875 0.8125 +0.03125 0.1875 0.8438 +0.03125 0.1875 0.875 +0.03125 0.1875 0.9062 +0.03125 0.1875 0.9375 +0.03125 0.1875 0.9688 +0.03125 0.1875 1 +0.03125 0.2188 0 +0.03125 0.2188 0.03125 +0.03125 0.2188 0.0625 +0.03125 0.2188 0.09375 +0.03125 0.2188 0.125 +0.03125 0.2188 0.1562 +0.03125 0.2188 0.1875 +0.03125 0.2188 0.2188 +0.03125 0.2188 0.25 +0.03125 0.2188 0.2812 +0.03125 0.2188 0.3125 +0.03125 0.2188 0.3438 +0.03125 0.2188 0.375 +0.03125 0.2188 0.4062 +0.03125 0.2188 0.4375 +0.03125 0.2188 0.4688 +0.03125 0.2188 0.5 +0.03125 0.2188 0.5312 +0.03125 0.2188 0.5625 +0.03125 0.2188 0.5938 +0.03125 0.2188 0.625 +0.03125 0.2188 0.6562 +0.03125 0.2188 0.6875 +0.03125 0.2188 0.7188 +0.03125 0.2188 0.75 +0.03125 0.2188 0.7812 +0.03125 0.2188 0.8125 +0.03125 0.2188 0.8438 +0.03125 0.2188 0.875 +0.03125 0.2188 0.9062 +0.03125 0.2188 0.9375 +0.03125 0.2188 0.9688 +0.03125 0.2188 1 +0.03125 0.25 0 +0.03125 0.25 0.03125 +0.03125 0.25 0.0625 +0.03125 0.25 0.09375 +0.03125 0.25 0.125 +0.03125 0.25 0.1562 +0.03125 0.25 0.1875 +0.03125 0.25 0.2188 +0.03125 0.25 0.25 +0.03125 0.25 0.2812 +0.03125 0.25 0.3125 +0.03125 0.25 0.3438 +0.03125 0.25 0.375 +0.03125 0.25 0.4062 +0.03125 0.25 0.4375 +0.03125 0.25 0.4688 +0.03125 0.25 0.5 +0.03125 0.25 0.5312 +0.03125 0.25 0.5625 +0.03125 0.25 0.5938 +0.03125 0.25 0.625 +0.03125 0.25 0.6562 +0.03125 0.25 0.6875 +0.03125 0.25 0.7188 +0.03125 0.25 0.75 +0.03125 0.25 0.7812 +0.03125 0.25 0.8125 +0.03125 0.25 0.8438 +0.03125 0.25 0.875 +0.03125 0.25 0.9062 +0.03125 0.25 0.9375 +0.03125 0.25 0.9688 +0.03125 0.25 1 +0.03125 0.2812 0 +0.03125 0.2812 0.03125 +0.03125 0.2812 0.0625 +0.03125 0.2812 0.09375 +0.03125 0.2812 0.125 +0.03125 0.2812 0.1562 +0.03125 0.2812 0.1875 +0.03125 0.2812 0.2188 +0.03125 0.2812 0.25 +0.03125 0.2812 0.2812 +0.03125 0.2812 0.3125 +0.03125 0.2812 0.3438 +0.03125 0.2812 0.375 +0.03125 0.2812 0.4062 +0.03125 0.2812 0.4375 +0.03125 0.2812 0.4688 +0.03125 0.2812 0.5 +0.03125 0.2812 0.5312 +0.03125 0.2812 0.5625 +0.03125 0.2812 0.5938 +0.03125 0.2812 0.625 +0.03125 0.2812 0.6562 +0.03125 0.2812 0.6875 +0.03125 0.2812 0.7188 +0.03125 0.2812 0.75 +0.03125 0.2812 0.7812 +0.03125 0.2812 0.8125 +0.03125 0.2812 0.8438 +0.03125 0.2812 0.875 +0.03125 0.2812 0.9062 +0.03125 0.2812 0.9375 +0.03125 0.2812 0.9688 +0.03125 0.2812 1 +0.03125 0.3125 0 +0.03125 0.3125 0.03125 +0.03125 0.3125 0.0625 +0.03125 0.3125 0.09375 +0.03125 0.3125 0.125 +0.03125 0.3125 0.1562 +0.03125 0.3125 0.1875 +0.03125 0.3125 0.2188 +0.03125 0.3125 0.25 +0.03125 0.3125 0.2812 +0.03125 0.3125 0.3125 +0.03125 0.3125 0.3438 +0.03125 0.3125 0.375 +0.03125 0.3125 0.4062 +0.03125 0.3125 0.4375 +0.03125 0.3125 0.4688 +0.03125 0.3125 0.5 +0.03125 0.3125 0.5312 +0.03125 0.3125 0.5625 +0.03125 0.3125 0.5938 +0.03125 0.3125 0.625 +0.03125 0.3125 0.6562 +0.03125 0.3125 0.6875 +0.03125 0.3125 0.7188 +0.03125 0.3125 0.75 +0.03125 0.3125 0.7812 +0.03125 0.3125 0.8125 +0.03125 0.3125 0.8438 +0.03125 0.3125 0.875 +0.03125 0.3125 0.9062 +0.03125 0.3125 0.9375 +0.03125 0.3125 0.9688 +0.03125 0.3125 1 +0.03125 0.3438 0 +0.03125 0.3438 0.03125 +0.03125 0.3438 0.0625 +0.03125 0.3438 0.09375 +0.03125 0.3438 0.125 +0.03125 0.3438 0.1562 +0.03125 0.3438 0.1875 +0.03125 0.3438 0.2188 +0.03125 0.3438 0.25 +0.03125 0.3438 0.2812 +0.03125 0.3438 0.3125 +0.03125 0.3438 0.3438 +0.03125 0.3438 0.375 +0.03125 0.3438 0.4062 +0.03125 0.3438 0.4375 +0.03125 0.3438 0.4688 +0.03125 0.3438 0.5 +0.03125 0.3438 0.5312 +0.03125 0.3438 0.5625 +0.03125 0.3438 0.5938 +0.03125 0.3438 0.625 +0.03125 0.3438 0.6562 +0.03125 0.3438 0.6875 +0.03125 0.3438 0.7188 +0.03125 0.3438 0.75 +0.03125 0.3438 0.7812 +0.03125 0.3438 0.8125 +0.03125 0.3438 0.8438 +0.03125 0.3438 0.875 +0.03125 0.3438 0.9062 +0.03125 0.3438 0.9375 +0.03125 0.3438 0.9688 +0.03125 0.3438 1 +0.03125 0.375 0 +0.03125 0.375 0.03125 +0.03125 0.375 0.0625 +0.03125 0.375 0.09375 +0.03125 0.375 0.125 +0.03125 0.375 0.1562 +0.03125 0.375 0.1875 +0.03125 0.375 0.2188 +0.03125 0.375 0.25 +0.03125 0.375 0.2812 +0.03125 0.375 0.3125 +0.03125 0.375 0.3438 +0.03125 0.375 0.375 +0.03125 0.375 0.4062 +0.03125 0.375 0.4375 +0.03125 0.375 0.4688 +0.03125 0.375 0.5 +0.03125 0.375 0.5312 +0.03125 0.375 0.5625 +0.03125 0.375 0.5938 +0.03125 0.375 0.625 +0.03125 0.375 0.6562 +0.03125 0.375 0.6875 +0.03125 0.375 0.7188 +0.03125 0.375 0.75 +0.03125 0.375 0.7812 +0.03125 0.375 0.8125 +0.03125 0.375 0.8438 +0.03125 0.375 0.875 +0.03125 0.375 0.9062 +0.03125 0.375 0.9375 +0.03125 0.375 0.9688 +0.03125 0.375 1 +0.03125 0.4062 0 +0.03125 0.4062 0.03125 +0.03125 0.4062 0.0625 +0.03125 0.4062 0.09375 +0.03125 0.4062 0.125 +0.03125 0.4062 0.1562 +0.03125 0.4062 0.1875 +0.03125 0.4062 0.2188 +0.03125 0.4062 0.25 +0.03125 0.4062 0.2812 +0.03125 0.4062 0.3125 +0.03125 0.4062 0.3438 +0.03125 0.4062 0.375 +0.03125 0.4062 0.4062 +0.03125 0.4062 0.4375 +0.03125 0.4062 0.4688 +0.03125 0.4062 0.5 +0.03125 0.4062 0.5312 +0.03125 0.4062 0.5625 +0.03125 0.4062 0.5938 +0.03125 0.4062 0.625 +0.03125 0.4062 0.6562 +0.03125 0.4062 0.6875 +0.03125 0.4062 0.7188 +0.03125 0.4062 0.75 +0.03125 0.4062 0.7812 +0.03125 0.4062 0.8125 +0.03125 0.4062 0.8438 +0.03125 0.4062 0.875 +0.03125 0.4062 0.9062 +0.03125 0.4062 0.9375 +0.03125 0.4062 0.9688 +0.03125 0.4062 1 +0.03125 0.4375 0 +0.03125 0.4375 0.03125 +0.03125 0.4375 0.0625 +0.03125 0.4375 0.09375 +0.03125 0.4375 0.125 +0.03125 0.4375 0.1562 +0.03125 0.4375 0.1875 +0.03125 0.4375 0.2188 +0.03125 0.4375 0.25 +0.03125 0.4375 0.2812 +0.03125 0.4375 0.3125 +0.03125 0.4375 0.3438 +0.03125 0.4375 0.375 +0.03125 0.4375 0.4062 +0.03125 0.4375 0.4375 +0.03125 0.4375 0.4688 +0.03125 0.4375 0.5 +0.03125 0.4375 0.5312 +0.03125 0.4375 0.5625 +0.03125 0.4375 0.5938 +0.03125 0.4375 0.625 +0.03125 0.4375 0.6562 +0.03125 0.4375 0.6875 +0.03125 0.4375 0.7188 +0.03125 0.4375 0.75 +0.03125 0.4375 0.7812 +0.03125 0.4375 0.8125 +0.03125 0.4375 0.8438 +0.03125 0.4375 0.875 +0.03125 0.4375 0.9062 +0.03125 0.4375 0.9375 +0.03125 0.4375 0.9688 +0.03125 0.4375 1 +0.03125 0.4688 0 +0.03125 0.4688 0.03125 +0.03125 0.4688 0.0625 +0.03125 0.4688 0.09375 +0.03125 0.4688 0.125 +0.03125 0.4688 0.1562 +0.03125 0.4688 0.1875 +0.03125 0.4688 0.2188 +0.03125 0.4688 0.25 +0.03125 0.4688 0.2812 +0.03125 0.4688 0.3125 +0.03125 0.4688 0.3438 +0.03125 0.4688 0.375 +0.03125 0.4688 0.4062 +0.03125 0.4688 0.4375 +0.03125 0.4688 0.4688 +0.03125 0.4688 0.5 +0.03125 0.4688 0.5312 +0.03125 0.4688 0.5625 +0.03125 0.4688 0.5938 +0.03125 0.4688 0.625 +0.03125 0.4688 0.6562 +0.03125 0.4688 0.6875 +0.03125 0.4688 0.7188 +0.03125 0.4688 0.75 +0.03125 0.4688 0.7812 +0.03125 0.4688 0.8125 +0.03125 0.4688 0.8438 +0.03125 0.4688 0.875 +0.03125 0.4688 0.9062 +0.03125 0.4688 0.9375 +0.03125 0.4688 0.9688 +0.03125 0.4688 1 +0.03125 0.5 0 +0.03125 0.5 0.03125 +0.03125 0.5 0.0625 +0.03125 0.5 0.09375 +0.03125 0.5 0.125 +0.03125 0.5 0.1562 +0.03125 0.5 0.1875 +0.03125 0.5 0.2188 +0.03125 0.5 0.25 +0.03125 0.5 0.2812 +0.03125 0.5 0.3125 +0.03125 0.5 0.3438 +0.03125 0.5 0.375 +0.03125 0.5 0.4062 +0.03125 0.5 0.4375 +0.03125 0.5 0.4688 +0.03125 0.5 0.5 +0.03125 0.5 0.5312 +0.03125 0.5 0.5625 +0.03125 0.5 0.5938 +0.03125 0.5 0.625 +0.03125 0.5 0.6562 +0.03125 0.5 0.6875 +0.03125 0.5 0.7188 +0.03125 0.5 0.75 +0.03125 0.5 0.7812 +0.03125 0.5 0.8125 +0.03125 0.5 0.8438 +0.03125 0.5 0.875 +0.03125 0.5 0.9062 +0.03125 0.5 0.9375 +0.03125 0.5 0.9688 +0.03125 0.5 1 +0.03125 0.5312 0 +0.03125 0.5312 0.03125 +0.03125 0.5312 0.0625 +0.03125 0.5312 0.09375 +0.03125 0.5312 0.125 +0.03125 0.5312 0.1562 +0.03125 0.5312 0.1875 +0.03125 0.5312 0.2188 +0.03125 0.5312 0.25 +0.03125 0.5312 0.2812 +0.03125 0.5312 0.3125 +0.03125 0.5312 0.3438 +0.03125 0.5312 0.375 +0.03125 0.5312 0.4062 +0.03125 0.5312 0.4375 +0.03125 0.5312 0.4688 +0.03125 0.5312 0.5 +0.03125 0.5312 0.5312 +0.03125 0.5312 0.5625 +0.03125 0.5312 0.5938 +0.03125 0.5312 0.625 +0.03125 0.5312 0.6562 +0.03125 0.5312 0.6875 +0.03125 0.5312 0.7188 +0.03125 0.5312 0.75 +0.03125 0.5312 0.7812 +0.03125 0.5312 0.8125 +0.03125 0.5312 0.8438 +0.03125 0.5312 0.875 +0.03125 0.5312 0.9062 +0.03125 0.5312 0.9375 +0.03125 0.5312 0.9688 +0.03125 0.5312 1 +0.03125 0.5625 0 +0.03125 0.5625 0.03125 +0.03125 0.5625 0.0625 +0.03125 0.5625 0.09375 +0.03125 0.5625 0.125 +0.03125 0.5625 0.1562 +0.03125 0.5625 0.1875 +0.03125 0.5625 0.2188 +0.03125 0.5625 0.25 +0.03125 0.5625 0.2812 +0.03125 0.5625 0.3125 +0.03125 0.5625 0.3438 +0.03125 0.5625 0.375 +0.03125 0.5625 0.4062 +0.03125 0.5625 0.4375 +0.03125 0.5625 0.4688 +0.03125 0.5625 0.5 +0.03125 0.5625 0.5312 +0.03125 0.5625 0.5625 +0.03125 0.5625 0.5938 +0.03125 0.5625 0.625 +0.03125 0.5625 0.6562 +0.03125 0.5625 0.6875 +0.03125 0.5625 0.7188 +0.03125 0.5625 0.75 +0.03125 0.5625 0.7812 +0.03125 0.5625 0.8125 +0.03125 0.5625 0.8438 +0.03125 0.5625 0.875 +0.03125 0.5625 0.9062 +0.03125 0.5625 0.9375 +0.03125 0.5625 0.9688 +0.03125 0.5625 1 +0.03125 0.5938 0 +0.03125 0.5938 0.03125 +0.03125 0.5938 0.0625 +0.03125 0.5938 0.09375 +0.03125 0.5938 0.125 +0.03125 0.5938 0.1562 +0.03125 0.5938 0.1875 +0.03125 0.5938 0.2188 +0.03125 0.5938 0.25 +0.03125 0.5938 0.2812 +0.03125 0.5938 0.3125 +0.03125 0.5938 0.3438 +0.03125 0.5938 0.375 +0.03125 0.5938 0.4062 +0.03125 0.5938 0.4375 +0.03125 0.5938 0.4688 +0.03125 0.5938 0.5 +0.03125 0.5938 0.5312 +0.03125 0.5938 0.5625 +0.03125 0.5938 0.5938 +0.03125 0.5938 0.625 +0.03125 0.5938 0.6562 +0.03125 0.5938 0.6875 +0.03125 0.5938 0.7188 +0.03125 0.5938 0.75 +0.03125 0.5938 0.7812 +0.03125 0.5938 0.8125 +0.03125 0.5938 0.8438 +0.03125 0.5938 0.875 +0.03125 0.5938 0.9062 +0.03125 0.5938 0.9375 +0.03125 0.5938 0.9688 +0.03125 0.5938 1 +0.03125 0.625 0 +0.03125 0.625 0.03125 +0.03125 0.625 0.0625 +0.03125 0.625 0.09375 +0.03125 0.625 0.125 +0.03125 0.625 0.1562 +0.03125 0.625 0.1875 +0.03125 0.625 0.2188 +0.03125 0.625 0.25 +0.03125 0.625 0.2812 +0.03125 0.625 0.3125 +0.03125 0.625 0.3438 +0.03125 0.625 0.375 +0.03125 0.625 0.4062 +0.03125 0.625 0.4375 +0.03125 0.625 0.4688 +0.03125 0.625 0.5 +0.03125 0.625 0.5312 +0.03125 0.625 0.5625 +0.03125 0.625 0.5938 +0.03125 0.625 0.625 +0.03125 0.625 0.6562 +0.03125 0.625 0.6875 +0.03125 0.625 0.7188 +0.03125 0.625 0.75 +0.03125 0.625 0.7812 +0.03125 0.625 0.8125 +0.03125 0.625 0.8438 +0.03125 0.625 0.875 +0.03125 0.625 0.9062 +0.03125 0.625 0.9375 +0.03125 0.625 0.9688 +0.03125 0.625 1 +0.03125 0.6562 0 +0.03125 0.6562 0.03125 +0.03125 0.6562 0.0625 +0.03125 0.6562 0.09375 +0.03125 0.6562 0.125 +0.03125 0.6562 0.1562 +0.03125 0.6562 0.1875 +0.03125 0.6562 0.2188 +0.03125 0.6562 0.25 +0.03125 0.6562 0.2812 +0.03125 0.6562 0.3125 +0.03125 0.6562 0.3438 +0.03125 0.6562 0.375 +0.03125 0.6562 0.4062 +0.03125 0.6562 0.4375 +0.03125 0.6562 0.4688 +0.03125 0.6562 0.5 +0.03125 0.6562 0.5312 +0.03125 0.6562 0.5625 +0.03125 0.6562 0.5938 +0.03125 0.6562 0.625 +0.03125 0.6562 0.6562 +0.03125 0.6562 0.6875 +0.03125 0.6562 0.7188 +0.03125 0.6562 0.75 +0.03125 0.6562 0.7812 +0.03125 0.6562 0.8125 +0.03125 0.6562 0.8438 +0.03125 0.6562 0.875 +0.03125 0.6562 0.9062 +0.03125 0.6562 0.9375 +0.03125 0.6562 0.9688 +0.03125 0.6562 1 +0.03125 0.6875 0 +0.03125 0.6875 0.03125 +0.03125 0.6875 0.0625 +0.03125 0.6875 0.09375 +0.03125 0.6875 0.125 +0.03125 0.6875 0.1562 +0.03125 0.6875 0.1875 +0.03125 0.6875 0.2188 +0.03125 0.6875 0.25 +0.03125 0.6875 0.2812 +0.03125 0.6875 0.3125 +0.03125 0.6875 0.3438 +0.03125 0.6875 0.375 +0.03125 0.6875 0.4062 +0.03125 0.6875 0.4375 +0.03125 0.6875 0.4688 +0.03125 0.6875 0.5 +0.03125 0.6875 0.5312 +0.03125 0.6875 0.5625 +0.03125 0.6875 0.5938 +0.03125 0.6875 0.625 +0.03125 0.6875 0.6562 +0.03125 0.6875 0.6875 +0.03125 0.6875 0.7188 +0.03125 0.6875 0.75 +0.03125 0.6875 0.7812 +0.03125 0.6875 0.8125 +0.03125 0.6875 0.8438 +0.03125 0.6875 0.875 +0.03125 0.6875 0.9062 +0.03125 0.6875 0.9375 +0.03125 0.6875 0.9688 +0.03125 0.6875 1 +0.03125 0.7188 0 +0.03125 0.7188 0.03125 +0.03125 0.7188 0.0625 +0.03125 0.7188 0.09375 +0.03125 0.7188 0.125 +0.03125 0.7188 0.1562 +0.03125 0.7188 0.1875 +0.03125 0.7188 0.2188 +0.03125 0.7188 0.25 +0.03125 0.7188 0.2812 +0.03125 0.7188 0.3125 +0.03125 0.7188 0.3438 +0.03125 0.7188 0.375 +0.03125 0.7188 0.4062 +0.03125 0.7188 0.4375 +0.03125 0.7188 0.4688 +0.03125 0.7188 0.5 +0.03125 0.7188 0.5312 +0.03125 0.7188 0.5625 +0.03125 0.7188 0.5938 +0.03125 0.7188 0.625 +0.03125 0.7188 0.6562 +0.03125 0.7188 0.6875 +0.03125 0.7188 0.7188 +0.03125 0.7188 0.75 +0.03125 0.7188 0.7812 +0.03125 0.7188 0.8125 +0.03125 0.7188 0.8438 +0.03125 0.7188 0.875 +0.03125 0.7188 0.9062 +0.03125 0.7188 0.9375 +0.03125 0.7188 0.9688 +0.03125 0.7188 1 +0.03125 0.75 0 +0.03125 0.75 0.03125 +0.03125 0.75 0.0625 +0.03125 0.75 0.09375 +0.03125 0.75 0.125 +0.03125 0.75 0.1562 +0.03125 0.75 0.1875 +0.03125 0.75 0.2188 +0.03125 0.75 0.25 +0.03125 0.75 0.2812 +0.03125 0.75 0.3125 +0.03125 0.75 0.3438 +0.03125 0.75 0.375 +0.03125 0.75 0.4062 +0.03125 0.75 0.4375 +0.03125 0.75 0.4688 +0.03125 0.75 0.5 +0.03125 0.75 0.5312 +0.03125 0.75 0.5625 +0.03125 0.75 0.5938 +0.03125 0.75 0.625 +0.03125 0.75 0.6562 +0.03125 0.75 0.6875 +0.03125 0.75 0.7188 +0.03125 0.75 0.75 +0.03125 0.75 0.7812 +0.03125 0.75 0.8125 +0.03125 0.75 0.8438 +0.03125 0.75 0.875 +0.03125 0.75 0.9062 +0.03125 0.75 0.9375 +0.03125 0.75 0.9688 +0.03125 0.75 1 +0.03125 0.7812 0 +0.03125 0.7812 0.03125 +0.03125 0.7812 0.0625 +0.03125 0.7812 0.09375 +0.03125 0.7812 0.125 +0.03125 0.7812 0.1562 +0.03125 0.7812 0.1875 +0.03125 0.7812 0.2188 +0.03125 0.7812 0.25 +0.03125 0.7812 0.2812 +0.03125 0.7812 0.3125 +0.03125 0.7812 0.3438 +0.03125 0.7812 0.375 +0.03125 0.7812 0.4062 +0.03125 0.7812 0.4375 +0.03125 0.7812 0.4688 +0.03125 0.7812 0.5 +0.03125 0.7812 0.5312 +0.03125 0.7812 0.5625 +0.03125 0.7812 0.5938 +0.03125 0.7812 0.625 +0.03125 0.7812 0.6562 +0.03125 0.7812 0.6875 +0.03125 0.7812 0.7188 +0.03125 0.7812 0.75 +0.03125 0.7812 0.7812 +0.03125 0.7812 0.8125 +0.03125 0.7812 0.8438 +0.03125 0.7812 0.875 +0.03125 0.7812 0.9062 +0.03125 0.7812 0.9375 +0.03125 0.7812 0.9688 +0.03125 0.7812 1 +0.03125 0.8125 0 +0.03125 0.8125 0.03125 +0.03125 0.8125 0.0625 +0.03125 0.8125 0.09375 +0.03125 0.8125 0.125 +0.03125 0.8125 0.1562 +0.03125 0.8125 0.1875 +0.03125 0.8125 0.2188 +0.03125 0.8125 0.25 +0.03125 0.8125 0.2812 +0.03125 0.8125 0.3125 +0.03125 0.8125 0.3438 +0.03125 0.8125 0.375 +0.03125 0.8125 0.4062 +0.03125 0.8125 0.4375 +0.03125 0.8125 0.4688 +0.03125 0.8125 0.5 +0.03125 0.8125 0.5312 +0.03125 0.8125 0.5625 +0.03125 0.8125 0.5938 +0.03125 0.8125 0.625 +0.03125 0.8125 0.6562 +0.03125 0.8125 0.6875 +0.03125 0.8125 0.7188 +0.03125 0.8125 0.75 +0.03125 0.8125 0.7812 +0.03125 0.8125 0.8125 +0.03125 0.8125 0.8438 +0.03125 0.8125 0.875 +0.03125 0.8125 0.9062 +0.03125 0.8125 0.9375 +0.03125 0.8125 0.9688 +0.03125 0.8125 1 +0.03125 0.8438 0 +0.03125 0.8438 0.03125 +0.03125 0.8438 0.0625 +0.03125 0.8438 0.09375 +0.03125 0.8438 0.125 +0.03125 0.8438 0.1562 +0.03125 0.8438 0.1875 +0.03125 0.8438 0.2188 +0.03125 0.8438 0.25 +0.03125 0.8438 0.2812 +0.03125 0.8438 0.3125 +0.03125 0.8438 0.3438 +0.03125 0.8438 0.375 +0.03125 0.8438 0.4062 +0.03125 0.8438 0.4375 +0.03125 0.8438 0.4688 +0.03125 0.8438 0.5 +0.03125 0.8438 0.5312 +0.03125 0.8438 0.5625 +0.03125 0.8438 0.5938 +0.03125 0.8438 0.625 +0.03125 0.8438 0.6562 +0.03125 0.8438 0.6875 +0.03125 0.8438 0.7188 +0.03125 0.8438 0.75 +0.03125 0.8438 0.7812 +0.03125 0.8438 0.8125 +0.03125 0.8438 0.8438 +0.03125 0.8438 0.875 +0.03125 0.8438 0.9062 +0.03125 0.8438 0.9375 +0.03125 0.8438 0.9688 +0.03125 0.8438 1 +0.03125 0.875 0 +0.03125 0.875 0.03125 +0.03125 0.875 0.0625 +0.03125 0.875 0.09375 +0.03125 0.875 0.125 +0.03125 0.875 0.1562 +0.03125 0.875 0.1875 +0.03125 0.875 0.2188 +0.03125 0.875 0.25 +0.03125 0.875 0.2812 +0.03125 0.875 0.3125 +0.03125 0.875 0.3438 +0.03125 0.875 0.375 +0.03125 0.875 0.4062 +0.03125 0.875 0.4375 +0.03125 0.875 0.4688 +0.03125 0.875 0.5 +0.03125 0.875 0.5312 +0.03125 0.875 0.5625 +0.03125 0.875 0.5938 +0.03125 0.875 0.625 +0.03125 0.875 0.6562 +0.03125 0.875 0.6875 +0.03125 0.875 0.7188 +0.03125 0.875 0.75 +0.03125 0.875 0.7812 +0.03125 0.875 0.8125 +0.03125 0.875 0.8438 +0.03125 0.875 0.875 +0.03125 0.875 0.9062 +0.03125 0.875 0.9375 +0.03125 0.875 0.9688 +0.03125 0.875 1 +0.03125 0.9062 0 +0.03125 0.9062 0.03125 +0.03125 0.9062 0.0625 +0.03125 0.9062 0.09375 +0.03125 0.9062 0.125 +0.03125 0.9062 0.1562 +0.03125 0.9062 0.1875 +0.03125 0.9062 0.2188 +0.03125 0.9062 0.25 +0.03125 0.9062 0.2812 +0.03125 0.9062 0.3125 +0.03125 0.9062 0.3438 +0.03125 0.9062 0.375 +0.03125 0.9062 0.4062 +0.03125 0.9062 0.4375 +0.03125 0.9062 0.4688 +0.03125 0.9062 0.5 +0.03125 0.9062 0.5312 +0.03125 0.9062 0.5625 +0.03125 0.9062 0.5938 +0.03125 0.9062 0.625 +0.03125 0.9062 0.6562 +0.03125 0.9062 0.6875 +0.03125 0.9062 0.7188 +0.03125 0.9062 0.75 +0.03125 0.9062 0.7812 +0.03125 0.9062 0.8125 +0.03125 0.9062 0.8438 +0.03125 0.9062 0.875 +0.03125 0.9062 0.9062 +0.03125 0.9062 0.9375 +0.03125 0.9062 0.9688 +0.03125 0.9062 1 +0.03125 0.9375 0 +0.03125 0.9375 0.03125 +0.03125 0.9375 0.0625 +0.03125 0.9375 0.09375 +0.03125 0.9375 0.125 +0.03125 0.9375 0.1562 +0.03125 0.9375 0.1875 +0.03125 0.9375 0.2188 +0.03125 0.9375 0.25 +0.03125 0.9375 0.2812 +0.03125 0.9375 0.3125 +0.03125 0.9375 0.3438 +0.03125 0.9375 0.375 +0.03125 0.9375 0.4062 +0.03125 0.9375 0.4375 +0.03125 0.9375 0.4688 +0.03125 0.9375 0.5 +0.03125 0.9375 0.5312 +0.03125 0.9375 0.5625 +0.03125 0.9375 0.5938 +0.03125 0.9375 0.625 +0.03125 0.9375 0.6562 +0.03125 0.9375 0.6875 +0.03125 0.9375 0.7188 +0.03125 0.9375 0.75 +0.03125 0.9375 0.7812 +0.03125 0.9375 0.8125 +0.03125 0.9375 0.8438 +0.03125 0.9375 0.875 +0.03125 0.9375 0.9062 +0.03125 0.9375 0.9375 +0.03125 0.9375 0.9688 +0.03125 0.9375 1 +0.03125 0.9688 0 +0.03125 0.9688 0.03125 +0.03125 0.9688 0.0625 +0.03125 0.9688 0.09375 +0.03125 0.9688 0.125 +0.03125 0.9688 0.1562 +0.03125 0.9688 0.1875 +0.03125 0.9688 0.2188 +0.03125 0.9688 0.25 +0.03125 0.9688 0.2812 +0.03125 0.9688 0.3125 +0.03125 0.9688 0.3438 +0.03125 0.9688 0.375 +0.03125 0.9688 0.4062 +0.03125 0.9688 0.4375 +0.03125 0.9688 0.4688 +0.03125 0.9688 0.5 +0.03125 0.9688 0.5312 +0.03125 0.9688 0.5625 +0.03125 0.9688 0.5938 +0.03125 0.9688 0.625 +0.03125 0.9688 0.6562 +0.03125 0.9688 0.6875 +0.03125 0.9688 0.7188 +0.03125 0.9688 0.75 +0.03125 0.9688 0.7812 +0.03125 0.9688 0.8125 +0.03125 0.9688 0.8438 +0.03125 0.9688 0.875 +0.03125 0.9688 0.9062 +0.03125 0.9688 0.9375 +0.03125 0.9688 0.9688 +0.03125 0.9688 1 +0.03125 1 0 +0.03125 1 0.03125 +0.03125 1 0.0625 +0.03125 1 0.09375 +0.03125 1 0.125 +0.03125 1 0.1562 +0.03125 1 0.1875 +0.03125 1 0.2188 +0.03125 1 0.25 +0.03125 1 0.2812 +0.03125 1 0.3125 +0.03125 1 0.3438 +0.03125 1 0.375 +0.03125 1 0.4062 +0.03125 1 0.4375 +0.03125 1 0.4688 +0.03125 1 0.5 +0.03125 1 0.5312 +0.03125 1 0.5625 +0.03125 1 0.5938 +0.03125 1 0.625 +0.03125 1 0.6562 +0.03125 1 0.6875 +0.03125 1 0.7188 +0.03125 1 0.75 +0.03125 1 0.7812 +0.03125 1 0.8125 +0.03125 1 0.8438 +0.03125 1 0.875 +0.03125 1 0.9062 +0.03125 1 0.9375 +0.03125 1 0.9688 +0.03125 1 1 +0.0625 0 0 +0.0625 0 0.03125 +0.0625 0 0.0625 +0.0625 0 0.09375 +0.0625 0 0.125 +0.0625 0 0.1562 +0.0625 0 0.1875 +0.0625 0 0.2188 +0.0625 0 0.25 +0.0625 0 0.2812 +0.0625 0 0.3125 +0.0625 0 0.3438 +0.0625 0 0.375 +0.0625 0 0.4062 +0.0625 0 0.4375 +0.0625 0 0.4688 +0.0625 0 0.5 +0.0625 0 0.5312 +0.0625 0 0.5625 +0.0625 0 0.5938 +0.0625 0 0.625 +0.0625 0 0.6562 +0.0625 0 0.6875 +0.0625 0 0.7188 +0.0625 0 0.75 +0.0625 0 0.7812 +0.0625 0 0.8125 +0.0625 0 0.8438 +0.0625 0 0.875 +0.0625 0 0.9062 +0.0625 0 0.9375 +0.0625 0 0.9688 +0.0625 0 1 +0.0625 0.03125 0 +0.0625 0.03125 0.03125 +0.0625 0.03125 0.0625 +0.0625 0.03125 0.09375 +0.0625 0.03125 0.125 +0.0625 0.03125 0.1562 +0.0625 0.03125 0.1875 +0.0625 0.03125 0.2188 +0.0625 0.03125 0.25 +0.0625 0.03125 0.2812 +0.0625 0.03125 0.3125 +0.0625 0.03125 0.3438 +0.0625 0.03125 0.375 +0.0625 0.03125 0.4062 +0.0625 0.03125 0.4375 +0.0625 0.03125 0.4688 +0.0625 0.03125 0.5 +0.0625 0.03125 0.5312 +0.0625 0.03125 0.5625 +0.0625 0.03125 0.5938 +0.0625 0.03125 0.625 +0.0625 0.03125 0.6562 +0.0625 0.03125 0.6875 +0.0625 0.03125 0.7188 +0.0625 0.03125 0.75 +0.0625 0.03125 0.7812 +0.0625 0.03125 0.8125 +0.0625 0.03125 0.8438 +0.0625 0.03125 0.875 +0.0625 0.03125 0.9062 +0.0625 0.03125 0.9375 +0.0625 0.03125 0.9688 +0.0625 0.03125 1 +0.0625 0.0625 0 +0.0625 0.0625 0.03125 +0.0625 0.0625 0.0625 +0.0625 0.0625 0.09375 +0.0625 0.0625 0.125 +0.0625 0.0625 0.1562 +0.0625 0.0625 0.1875 +0.0625 0.0625 0.2188 +0.0625 0.0625 0.25 +0.0625 0.0625 0.2812 +0.0625 0.0625 0.3125 +0.0625 0.0625 0.3438 +0.0625 0.0625 0.375 +0.0625 0.0625 0.4062 +0.0625 0.0625 0.4375 +0.0625 0.0625 0.4688 +0.0625 0.0625 0.5 +0.0625 0.0625 0.5312 +0.0625 0.0625 0.5625 +0.0625 0.0625 0.5938 +0.0625 0.0625 0.625 +0.0625 0.0625 0.6562 +0.0625 0.0625 0.6875 +0.0625 0.0625 0.7188 +0.0625 0.0625 0.75 +0.0625 0.0625 0.7812 +0.0625 0.0625 0.8125 +0.0625 0.0625 0.8438 +0.0625 0.0625 0.875 +0.0625 0.0625 0.9062 +0.0625 0.0625 0.9375 +0.0625 0.0625 0.9688 +0.0625 0.0625 1 +0.0625 0.09375 0 +0.0625 0.09375 0.03125 +0.0625 0.09375 0.0625 +0.0625 0.09375 0.09375 +0.0625 0.09375 0.125 +0.0625 0.09375 0.1562 +0.0625 0.09375 0.1875 +0.0625 0.09375 0.2188 +0.0625 0.09375 0.25 +0.0625 0.09375 0.2812 +0.0625 0.09375 0.3125 +0.0625 0.09375 0.3438 +0.0625 0.09375 0.375 +0.0625 0.09375 0.4062 +0.0625 0.09375 0.4375 +0.0625 0.09375 0.4688 +0.0625 0.09375 0.5 +0.0625 0.09375 0.5312 +0.0625 0.09375 0.5625 +0.0625 0.09375 0.5938 +0.0625 0.09375 0.625 +0.0625 0.09375 0.6562 +0.0625 0.09375 0.6875 +0.0625 0.09375 0.7188 +0.0625 0.09375 0.75 +0.0625 0.09375 0.7812 +0.0625 0.09375 0.8125 +0.0625 0.09375 0.8438 +0.0625 0.09375 0.875 +0.0625 0.09375 0.9062 +0.0625 0.09375 0.9375 +0.0625 0.09375 0.9688 +0.0625 0.09375 1 +0.0625 0.125 0 +0.0625 0.125 0.03125 +0.0625 0.125 0.0625 +0.0625 0.125 0.09375 +0.0625 0.125 0.125 +0.0625 0.125 0.1562 +0.0625 0.125 0.1875 +0.0625 0.125 0.2188 +0.0625 0.125 0.25 +0.0625 0.125 0.2812 +0.0625 0.125 0.3125 +0.0625 0.125 0.3438 +0.0625 0.125 0.375 +0.0625 0.125 0.4062 +0.0625 0.125 0.4375 +0.0625 0.125 0.4688 +0.0625 0.125 0.5 +0.0625 0.125 0.5312 +0.0625 0.125 0.5625 +0.0625 0.125 0.5938 +0.0625 0.125 0.625 +0.0625 0.125 0.6562 +0.0625 0.125 0.6875 +0.0625 0.125 0.7188 +0.0625 0.125 0.75 +0.0625 0.125 0.7812 +0.0625 0.125 0.8125 +0.0625 0.125 0.8438 +0.0625 0.125 0.875 +0.0625 0.125 0.9062 +0.0625 0.125 0.9375 +0.0625 0.125 0.9688 +0.0625 0.125 1 +0.0625 0.1562 0 +0.0625 0.1562 0.03125 +0.0625 0.1562 0.0625 +0.0625 0.1562 0.09375 +0.0625 0.1562 0.125 +0.0625 0.1562 0.1562 +0.0625 0.1562 0.1875 +0.0625 0.1562 0.2188 +0.0625 0.1562 0.25 +0.0625 0.1562 0.2812 +0.0625 0.1562 0.3125 +0.0625 0.1562 0.3438 +0.0625 0.1562 0.375 +0.0625 0.1562 0.4062 +0.0625 0.1562 0.4375 +0.0625 0.1562 0.4688 +0.0625 0.1562 0.5 +0.0625 0.1562 0.5312 +0.0625 0.1562 0.5625 +0.0625 0.1562 0.5938 +0.0625 0.1562 0.625 +0.0625 0.1562 0.6562 +0.0625 0.1562 0.6875 +0.0625 0.1562 0.7188 +0.0625 0.1562 0.75 +0.0625 0.1562 0.7812 +0.0625 0.1562 0.8125 +0.0625 0.1562 0.8438 +0.0625 0.1562 0.875 +0.0625 0.1562 0.9062 +0.0625 0.1562 0.9375 +0.0625 0.1562 0.9688 +0.0625 0.1562 1 +0.0625 0.1875 0 +0.0625 0.1875 0.03125 +0.0625 0.1875 0.0625 +0.0625 0.1875 0.09375 +0.0625 0.1875 0.125 +0.0625 0.1875 0.1562 +0.0625 0.1875 0.1875 +0.0625 0.1875 0.2188 +0.0625 0.1875 0.25 +0.0625 0.1875 0.2812 +0.0625 0.1875 0.3125 +0.0625 0.1875 0.3438 +0.0625 0.1875 0.375 +0.0625 0.1875 0.4062 +0.0625 0.1875 0.4375 +0.0625 0.1875 0.4688 +0.0625 0.1875 0.5 +0.0625 0.1875 0.5312 +0.0625 0.1875 0.5625 +0.0625 0.1875 0.5938 +0.0625 0.1875 0.625 +0.0625 0.1875 0.6562 +0.0625 0.1875 0.6875 +0.0625 0.1875 0.7188 +0.0625 0.1875 0.75 +0.0625 0.1875 0.7812 +0.0625 0.1875 0.8125 +0.0625 0.1875 0.8438 +0.0625 0.1875 0.875 +0.0625 0.1875 0.9062 +0.0625 0.1875 0.9375 +0.0625 0.1875 0.9688 +0.0625 0.1875 1 +0.0625 0.2188 0 +0.0625 0.2188 0.03125 +0.0625 0.2188 0.0625 +0.0625 0.2188 0.09375 +0.0625 0.2188 0.125 +0.0625 0.2188 0.1562 +0.0625 0.2188 0.1875 +0.0625 0.2188 0.2188 +0.0625 0.2188 0.25 +0.0625 0.2188 0.2812 +0.0625 0.2188 0.3125 +0.0625 0.2188 0.3438 +0.0625 0.2188 0.375 +0.0625 0.2188 0.4062 +0.0625 0.2188 0.4375 +0.0625 0.2188 0.4688 +0.0625 0.2188 0.5 +0.0625 0.2188 0.5312 +0.0625 0.2188 0.5625 +0.0625 0.2188 0.5938 +0.0625 0.2188 0.625 +0.0625 0.2188 0.6562 +0.0625 0.2188 0.6875 +0.0625 0.2188 0.7188 +0.0625 0.2188 0.75 +0.0625 0.2188 0.7812 +0.0625 0.2188 0.8125 +0.0625 0.2188 0.8438 +0.0625 0.2188 0.875 +0.0625 0.2188 0.9062 +0.0625 0.2188 0.9375 +0.0625 0.2188 0.9688 +0.0625 0.2188 1 +0.0625 0.25 0 +0.0625 0.25 0.03125 +0.0625 0.25 0.0625 +0.0625 0.25 0.09375 +0.0625 0.25 0.125 +0.0625 0.25 0.1562 +0.0625 0.25 0.1875 +0.0625 0.25 0.2188 +0.0625 0.25 0.25 +0.0625 0.25 0.2812 +0.0625 0.25 0.3125 +0.0625 0.25 0.3438 +0.0625 0.25 0.375 +0.0625 0.25 0.4062 +0.0625 0.25 0.4375 +0.0625 0.25 0.4688 +0.0625 0.25 0.5 +0.0625 0.25 0.5312 +0.0625 0.25 0.5625 +0.0625 0.25 0.5938 +0.0625 0.25 0.625 +0.0625 0.25 0.6562 +0.0625 0.25 0.6875 +0.0625 0.25 0.7188 +0.0625 0.25 0.75 +0.0625 0.25 0.7812 +0.0625 0.25 0.8125 +0.0625 0.25 0.8438 +0.0625 0.25 0.875 +0.0625 0.25 0.9062 +0.0625 0.25 0.9375 +0.0625 0.25 0.9688 +0.0625 0.25 1 +0.0625 0.2812 0 +0.0625 0.2812 0.03125 +0.0625 0.2812 0.0625 +0.0625 0.2812 0.09375 +0.0625 0.2812 0.125 +0.0625 0.2812 0.1562 +0.0625 0.2812 0.1875 +0.0625 0.2812 0.2188 +0.0625 0.2812 0.25 +0.0625 0.2812 0.2812 +0.0625 0.2812 0.3125 +0.0625 0.2812 0.3438 +0.0625 0.2812 0.375 +0.0625 0.2812 0.4062 +0.0625 0.2812 0.4375 +0.0625 0.2812 0.4688 +0.0625 0.2812 0.5 +0.0625 0.2812 0.5312 +0.0625 0.2812 0.5625 +0.0625 0.2812 0.5938 +0.0625 0.2812 0.625 +0.0625 0.2812 0.6562 +0.0625 0.2812 0.6875 +0.0625 0.2812 0.7188 +0.0625 0.2812 0.75 +0.0625 0.2812 0.7812 +0.0625 0.2812 0.8125 +0.0625 0.2812 0.8438 +0.0625 0.2812 0.875 +0.0625 0.2812 0.9062 +0.0625 0.2812 0.9375 +0.0625 0.2812 0.9688 +0.0625 0.2812 1 +0.0625 0.3125 0 +0.0625 0.3125 0.03125 +0.0625 0.3125 0.0625 +0.0625 0.3125 0.09375 +0.0625 0.3125 0.125 +0.0625 0.3125 0.1562 +0.0625 0.3125 0.1875 +0.0625 0.3125 0.2188 +0.0625 0.3125 0.25 +0.0625 0.3125 0.2812 +0.0625 0.3125 0.3125 +0.0625 0.3125 0.3438 +0.0625 0.3125 0.375 +0.0625 0.3125 0.4062 +0.0625 0.3125 0.4375 +0.0625 0.3125 0.4688 +0.0625 0.3125 0.5 +0.0625 0.3125 0.5312 +0.0625 0.3125 0.5625 +0.0625 0.3125 0.5938 +0.0625 0.3125 0.625 +0.0625 0.3125 0.6562 +0.0625 0.3125 0.6875 +0.0625 0.3125 0.7188 +0.0625 0.3125 0.75 +0.0625 0.3125 0.7812 +0.0625 0.3125 0.8125 +0.0625 0.3125 0.8438 +0.0625 0.3125 0.875 +0.0625 0.3125 0.9062 +0.0625 0.3125 0.9375 +0.0625 0.3125 0.9688 +0.0625 0.3125 1 +0.0625 0.3438 0 +0.0625 0.3438 0.03125 +0.0625 0.3438 0.0625 +0.0625 0.3438 0.09375 +0.0625 0.3438 0.125 +0.0625 0.3438 0.1562 +0.0625 0.3438 0.1875 +0.0625 0.3438 0.2188 +0.0625 0.3438 0.25 +0.0625 0.3438 0.2812 +0.0625 0.3438 0.3125 +0.0625 0.3438 0.3438 +0.0625 0.3438 0.375 +0.0625 0.3438 0.4062 +0.0625 0.3438 0.4375 +0.0625 0.3438 0.4688 +0.0625 0.3438 0.5 +0.0625 0.3438 0.5312 +0.0625 0.3438 0.5625 +0.0625 0.3438 0.5938 +0.0625 0.3438 0.625 +0.0625 0.3438 0.6562 +0.0625 0.3438 0.6875 +0.0625 0.3438 0.7188 +0.0625 0.3438 0.75 +0.0625 0.3438 0.7812 +0.0625 0.3438 0.8125 +0.0625 0.3438 0.8438 +0.0625 0.3438 0.875 +0.0625 0.3438 0.9062 +0.0625 0.3438 0.9375 +0.0625 0.3438 0.9688 +0.0625 0.3438 1 +0.0625 0.375 0 +0.0625 0.375 0.03125 +0.0625 0.375 0.0625 +0.0625 0.375 0.09375 +0.0625 0.375 0.125 +0.0625 0.375 0.1562 +0.0625 0.375 0.1875 +0.0625 0.375 0.2188 +0.0625 0.375 0.25 +0.0625 0.375 0.2812 +0.0625 0.375 0.3125 +0.0625 0.375 0.3438 +0.0625 0.375 0.375 +0.0625 0.375 0.4062 +0.0625 0.375 0.4375 +0.0625 0.375 0.4688 +0.0625 0.375 0.5 +0.0625 0.375 0.5312 +0.0625 0.375 0.5625 +0.0625 0.375 0.5938 +0.0625 0.375 0.625 +0.0625 0.375 0.6562 +0.0625 0.375 0.6875 +0.0625 0.375 0.7188 +0.0625 0.375 0.75 +0.0625 0.375 0.7812 +0.0625 0.375 0.8125 +0.0625 0.375 0.8438 +0.0625 0.375 0.875 +0.0625 0.375 0.9062 +0.0625 0.375 0.9375 +0.0625 0.375 0.9688 +0.0625 0.375 1 +0.0625 0.4062 0 +0.0625 0.4062 0.03125 +0.0625 0.4062 0.0625 +0.0625 0.4062 0.09375 +0.0625 0.4062 0.125 +0.0625 0.4062 0.1562 +0.0625 0.4062 0.1875 +0.0625 0.4062 0.2188 +0.0625 0.4062 0.25 +0.0625 0.4062 0.2812 +0.0625 0.4062 0.3125 +0.0625 0.4062 0.3438 +0.0625 0.4062 0.375 +0.0625 0.4062 0.4062 +0.0625 0.4062 0.4375 +0.0625 0.4062 0.4688 +0.0625 0.4062 0.5 +0.0625 0.4062 0.5312 +0.0625 0.4062 0.5625 +0.0625 0.4062 0.5938 +0.0625 0.4062 0.625 +0.0625 0.4062 0.6562 +0.0625 0.4062 0.6875 +0.0625 0.4062 0.7188 +0.0625 0.4062 0.75 +0.0625 0.4062 0.7812 +0.0625 0.4062 0.8125 +0.0625 0.4062 0.8438 +0.0625 0.4062 0.875 +0.0625 0.4062 0.9062 +0.0625 0.4062 0.9375 +0.0625 0.4062 0.9688 +0.0625 0.4062 1 +0.0625 0.4375 0 +0.0625 0.4375 0.03125 +0.0625 0.4375 0.0625 +0.0625 0.4375 0.09375 +0.0625 0.4375 0.125 +0.0625 0.4375 0.1562 +0.0625 0.4375 0.1875 +0.0625 0.4375 0.2188 +0.0625 0.4375 0.25 +0.0625 0.4375 0.2812 +0.0625 0.4375 0.3125 +0.0625 0.4375 0.3438 +0.0625 0.4375 0.375 +0.0625 0.4375 0.4062 +0.0625 0.4375 0.4375 +0.0625 0.4375 0.4688 +0.0625 0.4375 0.5 +0.0625 0.4375 0.5312 +0.0625 0.4375 0.5625 +0.0625 0.4375 0.5938 +0.0625 0.4375 0.625 +0.0625 0.4375 0.6562 +0.0625 0.4375 0.6875 +0.0625 0.4375 0.7188 +0.0625 0.4375 0.75 +0.0625 0.4375 0.7812 +0.0625 0.4375 0.8125 +0.0625 0.4375 0.8438 +0.0625 0.4375 0.875 +0.0625 0.4375 0.9062 +0.0625 0.4375 0.9375 +0.0625 0.4375 0.9688 +0.0625 0.4375 1 +0.0625 0.4688 0 +0.0625 0.4688 0.03125 +0.0625 0.4688 0.0625 +0.0625 0.4688 0.09375 +0.0625 0.4688 0.125 +0.0625 0.4688 0.1562 +0.0625 0.4688 0.1875 +0.0625 0.4688 0.2188 +0.0625 0.4688 0.25 +0.0625 0.4688 0.2812 +0.0625 0.4688 0.3125 +0.0625 0.4688 0.3438 +0.0625 0.4688 0.375 +0.0625 0.4688 0.4062 +0.0625 0.4688 0.4375 +0.0625 0.4688 0.4688 +0.0625 0.4688 0.5 +0.0625 0.4688 0.5312 +0.0625 0.4688 0.5625 +0.0625 0.4688 0.5938 +0.0625 0.4688 0.625 +0.0625 0.4688 0.6562 +0.0625 0.4688 0.6875 +0.0625 0.4688 0.7188 +0.0625 0.4688 0.75 +0.0625 0.4688 0.7812 +0.0625 0.4688 0.8125 +0.0625 0.4688 0.8438 +0.0625 0.4688 0.875 +0.0625 0.4688 0.9062 +0.0625 0.4688 0.9375 +0.0625 0.4688 0.9688 +0.0625 0.4688 1 +0.0625 0.5 0 +0.0625 0.5 0.03125 +0.0625 0.5 0.0625 +0.0625 0.5 0.09375 +0.0625 0.5 0.125 +0.0625 0.5 0.1562 +0.0625 0.5 0.1875 +0.0625 0.5 0.2188 +0.0625 0.5 0.25 +0.0625 0.5 0.2812 +0.0625 0.5 0.3125 +0.0625 0.5 0.3438 +0.0625 0.5 0.375 +0.0625 0.5 0.4062 +0.0625 0.5 0.4375 +0.0625 0.5 0.4688 +0.0625 0.5 0.5 +0.0625 0.5 0.5312 +0.0625 0.5 0.5625 +0.0625 0.5 0.5938 +0.0625 0.5 0.625 +0.0625 0.5 0.6562 +0.0625 0.5 0.6875 +0.0625 0.5 0.7188 +0.0625 0.5 0.75 +0.0625 0.5 0.7812 +0.0625 0.5 0.8125 +0.0625 0.5 0.8438 +0.0625 0.5 0.875 +0.0625 0.5 0.9062 +0.0625 0.5 0.9375 +0.0625 0.5 0.9688 +0.0625 0.5 1 +0.0625 0.5312 0 +0.0625 0.5312 0.03125 +0.0625 0.5312 0.0625 +0.0625 0.5312 0.09375 +0.0625 0.5312 0.125 +0.0625 0.5312 0.1562 +0.0625 0.5312 0.1875 +0.0625 0.5312 0.2188 +0.0625 0.5312 0.25 +0.0625 0.5312 0.2812 +0.0625 0.5312 0.3125 +0.0625 0.5312 0.3438 +0.0625 0.5312 0.375 +0.0625 0.5312 0.4062 +0.0625 0.5312 0.4375 +0.0625 0.5312 0.4688 +0.0625 0.5312 0.5 +0.0625 0.5312 0.5312 +0.0625 0.5312 0.5625 +0.0625 0.5312 0.5938 +0.0625 0.5312 0.625 +0.0625 0.5312 0.6562 +0.0625 0.5312 0.6875 +0.0625 0.5312 0.7188 +0.0625 0.5312 0.75 +0.0625 0.5312 0.7812 +0.0625 0.5312 0.8125 +0.0625 0.5312 0.8438 +0.0625 0.5312 0.875 +0.0625 0.5312 0.9062 +0.0625 0.5312 0.9375 +0.0625 0.5312 0.9688 +0.0625 0.5312 1 +0.0625 0.5625 0 +0.0625 0.5625 0.03125 +0.0625 0.5625 0.0625 +0.0625 0.5625 0.09375 +0.0625 0.5625 0.125 +0.0625 0.5625 0.1562 +0.0625 0.5625 0.1875 +0.0625 0.5625 0.2188 +0.0625 0.5625 0.25 +0.0625 0.5625 0.2812 +0.0625 0.5625 0.3125 +0.0625 0.5625 0.3438 +0.0625 0.5625 0.375 +0.0625 0.5625 0.4062 +0.0625 0.5625 0.4375 +0.0625 0.5625 0.4688 +0.0625 0.5625 0.5 +0.0625 0.5625 0.5312 +0.0625 0.5625 0.5625 +0.0625 0.5625 0.5938 +0.0625 0.5625 0.625 +0.0625 0.5625 0.6562 +0.0625 0.5625 0.6875 +0.0625 0.5625 0.7188 +0.0625 0.5625 0.75 +0.0625 0.5625 0.7812 +0.0625 0.5625 0.8125 +0.0625 0.5625 0.8438 +0.0625 0.5625 0.875 +0.0625 0.5625 0.9062 +0.0625 0.5625 0.9375 +0.0625 0.5625 0.9688 +0.0625 0.5625 1 +0.0625 0.5938 0 +0.0625 0.5938 0.03125 +0.0625 0.5938 0.0625 +0.0625 0.5938 0.09375 +0.0625 0.5938 0.125 +0.0625 0.5938 0.1562 +0.0625 0.5938 0.1875 +0.0625 0.5938 0.2188 +0.0625 0.5938 0.25 +0.0625 0.5938 0.2812 +0.0625 0.5938 0.3125 +0.0625 0.5938 0.3438 +0.0625 0.5938 0.375 +0.0625 0.5938 0.4062 +0.0625 0.5938 0.4375 +0.0625 0.5938 0.4688 +0.0625 0.5938 0.5 +0.0625 0.5938 0.5312 +0.0625 0.5938 0.5625 +0.0625 0.5938 0.5938 +0.0625 0.5938 0.625 +0.0625 0.5938 0.6562 +0.0625 0.5938 0.6875 +0.0625 0.5938 0.7188 +0.0625 0.5938 0.75 +0.0625 0.5938 0.7812 +0.0625 0.5938 0.8125 +0.0625 0.5938 0.8438 +0.0625 0.5938 0.875 +0.0625 0.5938 0.9062 +0.0625 0.5938 0.9375 +0.0625 0.5938 0.9688 +0.0625 0.5938 1 +0.0625 0.625 0 +0.0625 0.625 0.03125 +0.0625 0.625 0.0625 +0.0625 0.625 0.09375 +0.0625 0.625 0.125 +0.0625 0.625 0.1562 +0.0625 0.625 0.1875 +0.0625 0.625 0.2188 +0.0625 0.625 0.25 +0.0625 0.625 0.2812 +0.0625 0.625 0.3125 +0.0625 0.625 0.3438 +0.0625 0.625 0.375 +0.0625 0.625 0.4062 +0.0625 0.625 0.4375 +0.0625 0.625 0.4688 +0.0625 0.625 0.5 +0.0625 0.625 0.5312 +0.0625 0.625 0.5625 +0.0625 0.625 0.5938 +0.0625 0.625 0.625 +0.0625 0.625 0.6562 +0.0625 0.625 0.6875 +0.0625 0.625 0.7188 +0.0625 0.625 0.75 +0.0625 0.625 0.7812 +0.0625 0.625 0.8125 +0.0625 0.625 0.8438 +0.0625 0.625 0.875 +0.0625 0.625 0.9062 +0.0625 0.625 0.9375 +0.0625 0.625 0.9688 +0.0625 0.625 1 +0.0625 0.6562 0 +0.0625 0.6562 0.03125 +0.0625 0.6562 0.0625 +0.0625 0.6562 0.09375 +0.0625 0.6562 0.125 +0.0625 0.6562 0.1562 +0.0625 0.6562 0.1875 +0.0625 0.6562 0.2188 +0.0625 0.6562 0.25 +0.0625 0.6562 0.2812 +0.0625 0.6562 0.3125 +0.0625 0.6562 0.3438 +0.0625 0.6562 0.375 +0.0625 0.6562 0.4062 +0.0625 0.6562 0.4375 +0.0625 0.6562 0.4688 +0.0625 0.6562 0.5 +0.0625 0.6562 0.5312 +0.0625 0.6562 0.5625 +0.0625 0.6562 0.5938 +0.0625 0.6562 0.625 +0.0625 0.6562 0.6562 +0.0625 0.6562 0.6875 +0.0625 0.6562 0.7188 +0.0625 0.6562 0.75 +0.0625 0.6562 0.7812 +0.0625 0.6562 0.8125 +0.0625 0.6562 0.8438 +0.0625 0.6562 0.875 +0.0625 0.6562 0.9062 +0.0625 0.6562 0.9375 +0.0625 0.6562 0.9688 +0.0625 0.6562 1 +0.0625 0.6875 0 +0.0625 0.6875 0.03125 +0.0625 0.6875 0.0625 +0.0625 0.6875 0.09375 +0.0625 0.6875 0.125 +0.0625 0.6875 0.1562 +0.0625 0.6875 0.1875 +0.0625 0.6875 0.2188 +0.0625 0.6875 0.25 +0.0625 0.6875 0.2812 +0.0625 0.6875 0.3125 +0.0625 0.6875 0.3438 +0.0625 0.6875 0.375 +0.0625 0.6875 0.4062 +0.0625 0.6875 0.4375 +0.0625 0.6875 0.4688 +0.0625 0.6875 0.5 +0.0625 0.6875 0.5312 +0.0625 0.6875 0.5625 +0.0625 0.6875 0.5938 +0.0625 0.6875 0.625 +0.0625 0.6875 0.6562 +0.0625 0.6875 0.6875 +0.0625 0.6875 0.7188 +0.0625 0.6875 0.75 +0.0625 0.6875 0.7812 +0.0625 0.6875 0.8125 +0.0625 0.6875 0.8438 +0.0625 0.6875 0.875 +0.0625 0.6875 0.9062 +0.0625 0.6875 0.9375 +0.0625 0.6875 0.9688 +0.0625 0.6875 1 +0.0625 0.7188 0 +0.0625 0.7188 0.03125 +0.0625 0.7188 0.0625 +0.0625 0.7188 0.09375 +0.0625 0.7188 0.125 +0.0625 0.7188 0.1562 +0.0625 0.7188 0.1875 +0.0625 0.7188 0.2188 +0.0625 0.7188 0.25 +0.0625 0.7188 0.2812 +0.0625 0.7188 0.3125 +0.0625 0.7188 0.3438 +0.0625 0.7188 0.375 +0.0625 0.7188 0.4062 +0.0625 0.7188 0.4375 +0.0625 0.7188 0.4688 +0.0625 0.7188 0.5 +0.0625 0.7188 0.5312 +0.0625 0.7188 0.5625 +0.0625 0.7188 0.5938 +0.0625 0.7188 0.625 +0.0625 0.7188 0.6562 +0.0625 0.7188 0.6875 +0.0625 0.7188 0.7188 +0.0625 0.7188 0.75 +0.0625 0.7188 0.7812 +0.0625 0.7188 0.8125 +0.0625 0.7188 0.8438 +0.0625 0.7188 0.875 +0.0625 0.7188 0.9062 +0.0625 0.7188 0.9375 +0.0625 0.7188 0.9688 +0.0625 0.7188 1 +0.0625 0.75 0 +0.0625 0.75 0.03125 +0.0625 0.75 0.0625 +0.0625 0.75 0.09375 +0.0625 0.75 0.125 +0.0625 0.75 0.1562 +0.0625 0.75 0.1875 +0.0625 0.75 0.2188 +0.0625 0.75 0.25 +0.0625 0.75 0.2812 +0.0625 0.75 0.3125 +0.0625 0.75 0.3438 +0.0625 0.75 0.375 +0.0625 0.75 0.4062 +0.0625 0.75 0.4375 +0.0625 0.75 0.4688 +0.0625 0.75 0.5 +0.0625 0.75 0.5312 +0.0625 0.75 0.5625 +0.0625 0.75 0.5938 +0.0625 0.75 0.625 +0.0625 0.75 0.6562 +0.0625 0.75 0.6875 +0.0625 0.75 0.7188 +0.0625 0.75 0.75 +0.0625 0.75 0.7812 +0.0625 0.75 0.8125 +0.0625 0.75 0.8438 +0.0625 0.75 0.875 +0.0625 0.75 0.9062 +0.0625 0.75 0.9375 +0.0625 0.75 0.9688 +0.0625 0.75 1 +0.0625 0.7812 0 +0.0625 0.7812 0.03125 +0.0625 0.7812 0.0625 +0.0625 0.7812 0.09375 +0.0625 0.7812 0.125 +0.0625 0.7812 0.1562 +0.0625 0.7812 0.1875 +0.0625 0.7812 0.2188 +0.0625 0.7812 0.25 +0.0625 0.7812 0.2812 +0.0625 0.7812 0.3125 +0.0625 0.7812 0.3438 +0.0625 0.7812 0.375 +0.0625 0.7812 0.4062 +0.0625 0.7812 0.4375 +0.0625 0.7812 0.4688 +0.0625 0.7812 0.5 +0.0625 0.7812 0.5312 +0.0625 0.7812 0.5625 +0.0625 0.7812 0.5938 +0.0625 0.7812 0.625 +0.0625 0.7812 0.6562 +0.0625 0.7812 0.6875 +0.0625 0.7812 0.7188 +0.0625 0.7812 0.75 +0.0625 0.7812 0.7812 +0.0625 0.7812 0.8125 +0.0625 0.7812 0.8438 +0.0625 0.7812 0.875 +0.0625 0.7812 0.9062 +0.0625 0.7812 0.9375 +0.0625 0.7812 0.9688 +0.0625 0.7812 1 +0.0625 0.8125 0 +0.0625 0.8125 0.03125 +0.0625 0.8125 0.0625 +0.0625 0.8125 0.09375 +0.0625 0.8125 0.125 +0.0625 0.8125 0.1562 +0.0625 0.8125 0.1875 +0.0625 0.8125 0.2188 +0.0625 0.8125 0.25 +0.0625 0.8125 0.2812 +0.0625 0.8125 0.3125 +0.0625 0.8125 0.3438 +0.0625 0.8125 0.375 +0.0625 0.8125 0.4062 +0.0625 0.8125 0.4375 +0.0625 0.8125 0.4688 +0.0625 0.8125 0.5 +0.0625 0.8125 0.5312 +0.0625 0.8125 0.5625 +0.0625 0.8125 0.5938 +0.0625 0.8125 0.625 +0.0625 0.8125 0.6562 +0.0625 0.8125 0.6875 +0.0625 0.8125 0.7188 +0.0625 0.8125 0.75 +0.0625 0.8125 0.7812 +0.0625 0.8125 0.8125 +0.0625 0.8125 0.8438 +0.0625 0.8125 0.875 +0.0625 0.8125 0.9062 +0.0625 0.8125 0.9375 +0.0625 0.8125 0.9688 +0.0625 0.8125 1 +0.0625 0.8438 0 +0.0625 0.8438 0.03125 +0.0625 0.8438 0.0625 +0.0625 0.8438 0.09375 +0.0625 0.8438 0.125 +0.0625 0.8438 0.1562 +0.0625 0.8438 0.1875 +0.0625 0.8438 0.2188 +0.0625 0.8438 0.25 +0.0625 0.8438 0.2812 +0.0625 0.8438 0.3125 +0.0625 0.8438 0.3438 +0.0625 0.8438 0.375 +0.0625 0.8438 0.4062 +0.0625 0.8438 0.4375 +0.0625 0.8438 0.4688 +0.0625 0.8438 0.5 +0.0625 0.8438 0.5312 +0.0625 0.8438 0.5625 +0.0625 0.8438 0.5938 +0.0625 0.8438 0.625 +0.0625 0.8438 0.6562 +0.0625 0.8438 0.6875 +0.0625 0.8438 0.7188 +0.0625 0.8438 0.75 +0.0625 0.8438 0.7812 +0.0625 0.8438 0.8125 +0.0625 0.8438 0.8438 +0.0625 0.8438 0.875 +0.0625 0.8438 0.9062 +0.0625 0.8438 0.9375 +0.0625 0.8438 0.9688 +0.0625 0.8438 1 +0.0625 0.875 0 +0.0625 0.875 0.03125 +0.0625 0.875 0.0625 +0.0625 0.875 0.09375 +0.0625 0.875 0.125 +0.0625 0.875 0.1562 +0.0625 0.875 0.1875 +0.0625 0.875 0.2188 +0.0625 0.875 0.25 +0.0625 0.875 0.2812 +0.0625 0.875 0.3125 +0.0625 0.875 0.3438 +0.0625 0.875 0.375 +0.0625 0.875 0.4062 +0.0625 0.875 0.4375 +0.0625 0.875 0.4688 +0.0625 0.875 0.5 +0.0625 0.875 0.5312 +0.0625 0.875 0.5625 +0.0625 0.875 0.5938 +0.0625 0.875 0.625 +0.0625 0.875 0.6562 +0.0625 0.875 0.6875 +0.0625 0.875 0.7188 +0.0625 0.875 0.75 +0.0625 0.875 0.7812 +0.0625 0.875 0.8125 +0.0625 0.875 0.8438 +0.0625 0.875 0.875 +0.0625 0.875 0.9062 +0.0625 0.875 0.9375 +0.0625 0.875 0.9688 +0.0625 0.875 1 +0.0625 0.9062 0 +0.0625 0.9062 0.03125 +0.0625 0.9062 0.0625 +0.0625 0.9062 0.09375 +0.0625 0.9062 0.125 +0.0625 0.9062 0.1562 +0.0625 0.9062 0.1875 +0.0625 0.9062 0.2188 +0.0625 0.9062 0.25 +0.0625 0.9062 0.2812 +0.0625 0.9062 0.3125 +0.0625 0.9062 0.3438 +0.0625 0.9062 0.375 +0.0625 0.9062 0.4062 +0.0625 0.9062 0.4375 +0.0625 0.9062 0.4688 +0.0625 0.9062 0.5 +0.0625 0.9062 0.5312 +0.0625 0.9062 0.5625 +0.0625 0.9062 0.5938 +0.0625 0.9062 0.625 +0.0625 0.9062 0.6562 +0.0625 0.9062 0.6875 +0.0625 0.9062 0.7188 +0.0625 0.9062 0.75 +0.0625 0.9062 0.7812 +0.0625 0.9062 0.8125 +0.0625 0.9062 0.8438 +0.0625 0.9062 0.875 +0.0625 0.9062 0.9062 +0.0625 0.9062 0.9375 +0.0625 0.9062 0.9688 +0.0625 0.9062 1 +0.0625 0.9375 0 +0.0625 0.9375 0.03125 +0.0625 0.9375 0.0625 +0.0625 0.9375 0.09375 +0.0625 0.9375 0.125 +0.0625 0.9375 0.1562 +0.0625 0.9375 0.1875 +0.0625 0.9375 0.2188 +0.0625 0.9375 0.25 +0.0625 0.9375 0.2812 +0.0625 0.9375 0.3125 +0.0625 0.9375 0.3438 +0.0625 0.9375 0.375 +0.0625 0.9375 0.4062 +0.0625 0.9375 0.4375 +0.0625 0.9375 0.4688 +0.0625 0.9375 0.5 +0.0625 0.9375 0.5312 +0.0625 0.9375 0.5625 +0.0625 0.9375 0.5938 +0.0625 0.9375 0.625 +0.0625 0.9375 0.6562 +0.0625 0.9375 0.6875 +0.0625 0.9375 0.7188 +0.0625 0.9375 0.75 +0.0625 0.9375 0.7812 +0.0625 0.9375 0.8125 +0.0625 0.9375 0.8438 +0.0625 0.9375 0.875 +0.0625 0.9375 0.9062 +0.0625 0.9375 0.9375 +0.0625 0.9375 0.9688 +0.0625 0.9375 1 +0.0625 0.9688 0 +0.0625 0.9688 0.03125 +0.0625 0.9688 0.0625 +0.0625 0.9688 0.09375 +0.0625 0.9688 0.125 +0.0625 0.9688 0.1562 +0.0625 0.9688 0.1875 +0.0625 0.9688 0.2188 +0.0625 0.9688 0.25 +0.0625 0.9688 0.2812 +0.0625 0.9688 0.3125 +0.0625 0.9688 0.3438 +0.0625 0.9688 0.375 +0.0625 0.9688 0.4062 +0.0625 0.9688 0.4375 +0.0625 0.9688 0.4688 +0.0625 0.9688 0.5 +0.0625 0.9688 0.5312 +0.0625 0.9688 0.5625 +0.0625 0.9688 0.5938 +0.0625 0.9688 0.625 +0.0625 0.9688 0.6562 +0.0625 0.9688 0.6875 +0.0625 0.9688 0.7188 +0.0625 0.9688 0.75 +0.0625 0.9688 0.7812 +0.0625 0.9688 0.8125 +0.0625 0.9688 0.8438 +0.0625 0.9688 0.875 +0.0625 0.9688 0.9062 +0.0625 0.9688 0.9375 +0.0625 0.9688 0.9688 +0.0625 0.9688 1 +0.0625 1 0 +0.0625 1 0.03125 +0.0625 1 0.0625 +0.0625 1 0.09375 +0.0625 1 0.125 +0.0625 1 0.1562 +0.0625 1 0.1875 +0.0625 1 0.2188 +0.0625 1 0.25 +0.0625 1 0.2812 +0.0625 1 0.3125 +0.0625 1 0.3438 +0.0625 1 0.375 +0.0625 1 0.4062 +0.0625 1 0.4375 +0.0625 1 0.4688 +0.0625 1 0.5 +0.0625 1 0.5312 +0.0625 1 0.5625 +0.0625 1 0.5938 +0.0625 1 0.625 +0.0625 1 0.6562 +0.0625 1 0.6875 +0.0625 1 0.7188 +0.0625 1 0.75 +0.0625 1 0.7812 +0.0625 1 0.8125 +0.0625 1 0.8438 +0.0625 1 0.875 +0.0625 1 0.9062 +0.0625 1 0.9375 +0.0625 1 0.9688 +0.0625 1 1 +0.09375 0 0 +0.09375 0 0.03125 +0.09375 0 0.0625 +0.09375 0 0.09375 +0.09375 0 0.125 +0.09375 0 0.1562 +0.09375 0 0.1875 +0.09375 0 0.2188 +0.09375 0 0.25 +0.09375 0 0.2812 +0.09375 0 0.3125 +0.09375 0 0.3438 +0.09375 0 0.375 +0.09375 0 0.4062 +0.09375 0 0.4375 +0.09375 0 0.4688 +0.09375 0 0.5 +0.09375 0 0.5312 +0.09375 0 0.5625 +0.09375 0 0.5938 +0.09375 0 0.625 +0.09375 0 0.6562 +0.09375 0 0.6875 +0.09375 0 0.7188 +0.09375 0 0.75 +0.09375 0 0.7812 +0.09375 0 0.8125 +0.09375 0 0.8438 +0.09375 0 0.875 +0.09375 0 0.9062 +0.09375 0 0.9375 +0.09375 0 0.9688 +0.09375 0 1 +0.09375 0.03125 0 +0.09375 0.03125 0.03125 +0.09375 0.03125 0.0625 +0.09375 0.03125 0.09375 +0.09375 0.03125 0.125 +0.09375 0.03125 0.1562 +0.09375 0.03125 0.1875 +0.09375 0.03125 0.2188 +0.09375 0.03125 0.25 +0.09375 0.03125 0.2812 +0.09375 0.03125 0.3125 +0.09375 0.03125 0.3438 +0.09375 0.03125 0.375 +0.09375 0.03125 0.4062 +0.09375 0.03125 0.4375 +0.09375 0.03125 0.4688 +0.09375 0.03125 0.5 +0.09375 0.03125 0.5312 +0.09375 0.03125 0.5625 +0.09375 0.03125 0.5938 +0.09375 0.03125 0.625 +0.09375 0.03125 0.6562 +0.09375 0.03125 0.6875 +0.09375 0.03125 0.7188 +0.09375 0.03125 0.75 +0.09375 0.03125 0.7812 +0.09375 0.03125 0.8125 +0.09375 0.03125 0.8438 +0.09375 0.03125 0.875 +0.09375 0.03125 0.9062 +0.09375 0.03125 0.9375 +0.09375 0.03125 0.9688 +0.09375 0.03125 1 +0.09375 0.0625 0 +0.09375 0.0625 0.03125 +0.09375 0.0625 0.0625 +0.09375 0.0625 0.09375 +0.09375 0.0625 0.125 +0.09375 0.0625 0.1562 +0.09375 0.0625 0.1875 +0.09375 0.0625 0.2188 +0.09375 0.0625 0.25 +0.09375 0.0625 0.2812 +0.09375 0.0625 0.3125 +0.09375 0.0625 0.3438 +0.09375 0.0625 0.375 +0.09375 0.0625 0.4062 +0.09375 0.0625 0.4375 +0.09375 0.0625 0.4688 +0.09375 0.0625 0.5 +0.09375 0.0625 0.5312 +0.09375 0.0625 0.5625 +0.09375 0.0625 0.5938 +0.09375 0.0625 0.625 +0.09375 0.0625 0.6562 +0.09375 0.0625 0.6875 +0.09375 0.0625 0.7188 +0.09375 0.0625 0.75 +0.09375 0.0625 0.7812 +0.09375 0.0625 0.8125 +0.09375 0.0625 0.8438 +0.09375 0.0625 0.875 +0.09375 0.0625 0.9062 +0.09375 0.0625 0.9375 +0.09375 0.0625 0.9688 +0.09375 0.0625 1 +0.09375 0.09375 0 +0.09375 0.09375 0.03125 +0.09375 0.09375 0.0625 +0.09375 0.09375 0.09375 +0.09375 0.09375 0.125 +0.09375 0.09375 0.1562 +0.09375 0.09375 0.1875 +0.09375 0.09375 0.2188 +0.09375 0.09375 0.25 +0.09375 0.09375 0.2812 +0.09375 0.09375 0.3125 +0.09375 0.09375 0.3438 +0.09375 0.09375 0.375 +0.09375 0.09375 0.4062 +0.09375 0.09375 0.4375 +0.09375 0.09375 0.4688 +0.09375 0.09375 0.5 +0.09375 0.09375 0.5312 +0.09375 0.09375 0.5625 +0.09375 0.09375 0.5938 +0.09375 0.09375 0.625 +0.09375 0.09375 0.6562 +0.09375 0.09375 0.6875 +0.09375 0.09375 0.7188 +0.09375 0.09375 0.75 +0.09375 0.09375 0.7812 +0.09375 0.09375 0.8125 +0.09375 0.09375 0.8438 +0.09375 0.09375 0.875 +0.09375 0.09375 0.9062 +0.09375 0.09375 0.9375 +0.09375 0.09375 0.9688 +0.09375 0.09375 1 +0.09375 0.125 0 +0.09375 0.125 0.03125 +0.09375 0.125 0.0625 +0.09375 0.125 0.09375 +0.09375 0.125 0.125 +0.09375 0.125 0.1562 +0.09375 0.125 0.1875 +0.09375 0.125 0.2188 +0.09375 0.125 0.25 +0.09375 0.125 0.2812 +0.09375 0.125 0.3125 +0.09375 0.125 0.3438 +0.09375 0.125 0.375 +0.09375 0.125 0.4062 +0.09375 0.125 0.4375 +0.09375 0.125 0.4688 +0.09375 0.125 0.5 +0.09375 0.125 0.5312 +0.09375 0.125 0.5625 +0.09375 0.125 0.5938 +0.09375 0.125 0.625 +0.09375 0.125 0.6562 +0.09375 0.125 0.6875 +0.09375 0.125 0.7188 +0.09375 0.125 0.75 +0.09375 0.125 0.7812 +0.09375 0.125 0.8125 +0.09375 0.125 0.8438 +0.09375 0.125 0.875 +0.09375 0.125 0.9062 +0.09375 0.125 0.9375 +0.09375 0.125 0.9688 +0.09375 0.125 1 +0.09375 0.1562 0 +0.09375 0.1562 0.03125 +0.09375 0.1562 0.0625 +0.09375 0.1562 0.09375 +0.09375 0.1562 0.125 +0.09375 0.1562 0.1562 +0.09375 0.1562 0.1875 +0.09375 0.1562 0.2188 +0.09375 0.1562 0.25 +0.09375 0.1562 0.2812 +0.09375 0.1562 0.3125 +0.09375 0.1562 0.3438 +0.09375 0.1562 0.375 +0.09375 0.1562 0.4062 +0.09375 0.1562 0.4375 +0.09375 0.1562 0.4688 +0.09375 0.1562 0.5 +0.09375 0.1562 0.5312 +0.09375 0.1562 0.5625 +0.09375 0.1562 0.5938 +0.09375 0.1562 0.625 +0.09375 0.1562 0.6562 +0.09375 0.1562 0.6875 +0.09375 0.1562 0.7188 +0.09375 0.1562 0.75 +0.09375 0.1562 0.7812 +0.09375 0.1562 0.8125 +0.09375 0.1562 0.8438 +0.09375 0.1562 0.875 +0.09375 0.1562 0.9062 +0.09375 0.1562 0.9375 +0.09375 0.1562 0.9688 +0.09375 0.1562 1 +0.09375 0.1875 0 +0.09375 0.1875 0.03125 +0.09375 0.1875 0.0625 +0.09375 0.1875 0.09375 +0.09375 0.1875 0.125 +0.09375 0.1875 0.1562 +0.09375 0.1875 0.1875 +0.09375 0.1875 0.2188 +0.09375 0.1875 0.25 +0.09375 0.1875 0.2812 +0.09375 0.1875 0.3125 +0.09375 0.1875 0.3438 +0.09375 0.1875 0.375 +0.09375 0.1875 0.4062 +0.09375 0.1875 0.4375 +0.09375 0.1875 0.4688 +0.09375 0.1875 0.5 +0.09375 0.1875 0.5312 +0.09375 0.1875 0.5625 +0.09375 0.1875 0.5938 +0.09375 0.1875 0.625 +0.09375 0.1875 0.6562 +0.09375 0.1875 0.6875 +0.09375 0.1875 0.7188 +0.09375 0.1875 0.75 +0.09375 0.1875 0.7812 +0.09375 0.1875 0.8125 +0.09375 0.1875 0.8438 +0.09375 0.1875 0.875 +0.09375 0.1875 0.9062 +0.09375 0.1875 0.9375 +0.09375 0.1875 0.9688 +0.09375 0.1875 1 +0.09375 0.2188 0 +0.09375 0.2188 0.03125 +0.09375 0.2188 0.0625 +0.09375 0.2188 0.09375 +0.09375 0.2188 0.125 +0.09375 0.2188 0.1562 +0.09375 0.2188 0.1875 +0.09375 0.2188 0.2188 +0.09375 0.2188 0.25 +0.09375 0.2188 0.2812 +0.09375 0.2188 0.3125 +0.09375 0.2188 0.3438 +0.09375 0.2188 0.375 +0.09375 0.2188 0.4062 +0.09375 0.2188 0.4375 +0.09375 0.2188 0.4688 +0.09375 0.2188 0.5 +0.09375 0.2188 0.5312 +0.09375 0.2188 0.5625 +0.09375 0.2188 0.5938 +0.09375 0.2188 0.625 +0.09375 0.2188 0.6562 +0.09375 0.2188 0.6875 +0.09375 0.2188 0.7188 +0.09375 0.2188 0.75 +0.09375 0.2188 0.7812 +0.09375 0.2188 0.8125 +0.09375 0.2188 0.8438 +0.09375 0.2188 0.875 +0.09375 0.2188 0.9062 +0.09375 0.2188 0.9375 +0.09375 0.2188 0.9688 +0.09375 0.2188 1 +0.09375 0.25 0 +0.09375 0.25 0.03125 +0.09375 0.25 0.0625 +0.09375 0.25 0.09375 +0.09375 0.25 0.125 +0.09375 0.25 0.1562 +0.09375 0.25 0.1875 +0.09375 0.25 0.2188 +0.09375 0.25 0.25 +0.09375 0.25 0.2812 +0.09375 0.25 0.3125 +0.09375 0.25 0.3438 +0.09375 0.25 0.375 +0.09375 0.25 0.4062 +0.09375 0.25 0.4375 +0.09375 0.25 0.4688 +0.09375 0.25 0.5 +0.09375 0.25 0.5312 +0.09375 0.25 0.5625 +0.09375 0.25 0.5938 +0.09375 0.25 0.625 +0.09375 0.25 0.6562 +0.09375 0.25 0.6875 +0.09375 0.25 0.7188 +0.09375 0.25 0.75 +0.09375 0.25 0.7812 +0.09375 0.25 0.8125 +0.09375 0.25 0.8438 +0.09375 0.25 0.875 +0.09375 0.25 0.9062 +0.09375 0.25 0.9375 +0.09375 0.25 0.9688 +0.09375 0.25 1 +0.09375 0.2812 0 +0.09375 0.2812 0.03125 +0.09375 0.2812 0.0625 +0.09375 0.2812 0.09375 +0.09375 0.2812 0.125 +0.09375 0.2812 0.1562 +0.09375 0.2812 0.1875 +0.09375 0.2812 0.2188 +0.09375 0.2812 0.25 +0.09375 0.2812 0.2812 +0.09375 0.2812 0.3125 +0.09375 0.2812 0.3438 +0.09375 0.2812 0.375 +0.09375 0.2812 0.4062 +0.09375 0.2812 0.4375 +0.09375 0.2812 0.4688 +0.09375 0.2812 0.5 +0.09375 0.2812 0.5312 +0.09375 0.2812 0.5625 +0.09375 0.2812 0.5938 +0.09375 0.2812 0.625 +0.09375 0.2812 0.6562 +0.09375 0.2812 0.6875 +0.09375 0.2812 0.7188 +0.09375 0.2812 0.75 +0.09375 0.2812 0.7812 +0.09375 0.2812 0.8125 +0.09375 0.2812 0.8438 +0.09375 0.2812 0.875 +0.09375 0.2812 0.9062 +0.09375 0.2812 0.9375 +0.09375 0.2812 0.9688 +0.09375 0.2812 1 +0.09375 0.3125 0 +0.09375 0.3125 0.03125 +0.09375 0.3125 0.0625 +0.09375 0.3125 0.09375 +0.09375 0.3125 0.125 +0.09375 0.3125 0.1562 +0.09375 0.3125 0.1875 +0.09375 0.3125 0.2188 +0.09375 0.3125 0.25 +0.09375 0.3125 0.2812 +0.09375 0.3125 0.3125 +0.09375 0.3125 0.3438 +0.09375 0.3125 0.375 +0.09375 0.3125 0.4062 +0.09375 0.3125 0.4375 +0.09375 0.3125 0.4688 +0.09375 0.3125 0.5 +0.09375 0.3125 0.5312 +0.09375 0.3125 0.5625 +0.09375 0.3125 0.5938 +0.09375 0.3125 0.625 +0.09375 0.3125 0.6562 +0.09375 0.3125 0.6875 +0.09375 0.3125 0.7188 +0.09375 0.3125 0.75 +0.09375 0.3125 0.7812 +0.09375 0.3125 0.8125 +0.09375 0.3125 0.8438 +0.09375 0.3125 0.875 +0.09375 0.3125 0.9062 +0.09375 0.3125 0.9375 +0.09375 0.3125 0.9688 +0.09375 0.3125 1 +0.09375 0.3438 0 +0.09375 0.3438 0.03125 +0.09375 0.3438 0.0625 +0.09375 0.3438 0.09375 +0.09375 0.3438 0.125 +0.09375 0.3438 0.1562 +0.09375 0.3438 0.1875 +0.09375 0.3438 0.2188 +0.09375 0.3438 0.25 +0.09375 0.3438 0.2812 +0.09375 0.3438 0.3125 +0.09375 0.3438 0.3438 +0.09375 0.3438 0.375 +0.09375 0.3438 0.4062 +0.09375 0.3438 0.4375 +0.09375 0.3438 0.4688 +0.09375 0.3438 0.5 +0.09375 0.3438 0.5312 +0.09375 0.3438 0.5625 +0.09375 0.3438 0.5938 +0.09375 0.3438 0.625 +0.09375 0.3438 0.6562 +0.09375 0.3438 0.6875 +0.09375 0.3438 0.7188 +0.09375 0.3438 0.75 +0.09375 0.3438 0.7812 +0.09375 0.3438 0.8125 +0.09375 0.3438 0.8438 +0.09375 0.3438 0.875 +0.09375 0.3438 0.9062 +0.09375 0.3438 0.9375 +0.09375 0.3438 0.9688 +0.09375 0.3438 1 +0.09375 0.375 0 +0.09375 0.375 0.03125 +0.09375 0.375 0.0625 +0.09375 0.375 0.09375 +0.09375 0.375 0.125 +0.09375 0.375 0.1562 +0.09375 0.375 0.1875 +0.09375 0.375 0.2188 +0.09375 0.375 0.25 +0.09375 0.375 0.2812 +0.09375 0.375 0.3125 +0.09375 0.375 0.3438 +0.09375 0.375 0.375 +0.09375 0.375 0.4062 +0.09375 0.375 0.4375 +0.09375 0.375 0.4688 +0.09375 0.375 0.5 +0.09375 0.375 0.5312 +0.09375 0.375 0.5625 +0.09375 0.375 0.5938 +0.09375 0.375 0.625 +0.09375 0.375 0.6562 +0.09375 0.375 0.6875 +0.09375 0.375 0.7188 +0.09375 0.375 0.75 +0.09375 0.375 0.7812 +0.09375 0.375 0.8125 +0.09375 0.375 0.8438 +0.09375 0.375 0.875 +0.09375 0.375 0.9062 +0.09375 0.375 0.9375 +0.09375 0.375 0.9688 +0.09375 0.375 1 +0.09375 0.4062 0 +0.09375 0.4062 0.03125 +0.09375 0.4062 0.0625 +0.09375 0.4062 0.09375 +0.09375 0.4062 0.125 +0.09375 0.4062 0.1562 +0.09375 0.4062 0.1875 +0.09375 0.4062 0.2188 +0.09375 0.4062 0.25 +0.09375 0.4062 0.2812 +0.09375 0.4062 0.3125 +0.09375 0.4062 0.3438 +0.09375 0.4062 0.375 +0.09375 0.4062 0.4062 +0.09375 0.4062 0.4375 +0.09375 0.4062 0.4688 +0.09375 0.4062 0.5 +0.09375 0.4062 0.5312 +0.09375 0.4062 0.5625 +0.09375 0.4062 0.5938 +0.09375 0.4062 0.625 +0.09375 0.4062 0.6562 +0.09375 0.4062 0.6875 +0.09375 0.4062 0.7188 +0.09375 0.4062 0.75 +0.09375 0.4062 0.7812 +0.09375 0.4062 0.8125 +0.09375 0.4062 0.8438 +0.09375 0.4062 0.875 +0.09375 0.4062 0.9062 +0.09375 0.4062 0.9375 +0.09375 0.4062 0.9688 +0.09375 0.4062 1 +0.09375 0.4375 0 +0.09375 0.4375 0.03125 +0.09375 0.4375 0.0625 +0.09375 0.4375 0.09375 +0.09375 0.4375 0.125 +0.09375 0.4375 0.1562 +0.09375 0.4375 0.1875 +0.09375 0.4375 0.2188 +0.09375 0.4375 0.25 +0.09375 0.4375 0.2812 +0.09375 0.4375 0.3125 +0.09375 0.4375 0.3438 +0.09375 0.4375 0.375 +0.09375 0.4375 0.4062 +0.09375 0.4375 0.4375 +0.09375 0.4375 0.4688 +0.09375 0.4375 0.5 +0.09375 0.4375 0.5312 +0.09375 0.4375 0.5625 +0.09375 0.4375 0.5938 +0.09375 0.4375 0.625 +0.09375 0.4375 0.6562 +0.09375 0.4375 0.6875 +0.09375 0.4375 0.7188 +0.09375 0.4375 0.75 +0.09375 0.4375 0.7812 +0.09375 0.4375 0.8125 +0.09375 0.4375 0.8438 +0.09375 0.4375 0.875 +0.09375 0.4375 0.9062 +0.09375 0.4375 0.9375 +0.09375 0.4375 0.9688 +0.09375 0.4375 1 +0.09375 0.4688 0 +0.09375 0.4688 0.03125 +0.09375 0.4688 0.0625 +0.09375 0.4688 0.09375 +0.09375 0.4688 0.125 +0.09375 0.4688 0.1562 +0.09375 0.4688 0.1875 +0.09375 0.4688 0.2188 +0.09375 0.4688 0.25 +0.09375 0.4688 0.2812 +0.09375 0.4688 0.3125 +0.09375 0.4688 0.3438 +0.09375 0.4688 0.375 +0.09375 0.4688 0.4062 +0.09375 0.4688 0.4375 +0.09375 0.4688 0.4688 +0.09375 0.4688 0.5 +0.09375 0.4688 0.5312 +0.09375 0.4688 0.5625 +0.09375 0.4688 0.5938 +0.09375 0.4688 0.625 +0.09375 0.4688 0.6562 +0.09375 0.4688 0.6875 +0.09375 0.4688 0.7188 +0.09375 0.4688 0.75 +0.09375 0.4688 0.7812 +0.09375 0.4688 0.8125 +0.09375 0.4688 0.8438 +0.09375 0.4688 0.875 +0.09375 0.4688 0.9062 +0.09375 0.4688 0.9375 +0.09375 0.4688 0.9688 +0.09375 0.4688 1 +0.09375 0.5 0 +0.09375 0.5 0.03125 +0.09375 0.5 0.0625 +0.09375 0.5 0.09375 +0.09375 0.5 0.125 +0.09375 0.5 0.1562 +0.09375 0.5 0.1875 +0.09375 0.5 0.2188 +0.09375 0.5 0.25 +0.09375 0.5 0.2812 +0.09375 0.5 0.3125 +0.09375 0.5 0.3438 +0.09375 0.5 0.375 +0.09375 0.5 0.4062 +0.09375 0.5 0.4375 +0.09375 0.5 0.4688 +0.09375 0.5 0.5 +0.09375 0.5 0.5312 +0.09375 0.5 0.5625 +0.09375 0.5 0.5938 +0.09375 0.5 0.625 +0.09375 0.5 0.6562 +0.09375 0.5 0.6875 +0.09375 0.5 0.7188 +0.09375 0.5 0.75 +0.09375 0.5 0.7812 +0.09375 0.5 0.8125 +0.09375 0.5 0.8438 +0.09375 0.5 0.875 +0.09375 0.5 0.9062 +0.09375 0.5 0.9375 +0.09375 0.5 0.9688 +0.09375 0.5 1 +0.09375 0.5312 0 +0.09375 0.5312 0.03125 +0.09375 0.5312 0.0625 +0.09375 0.5312 0.09375 +0.09375 0.5312 0.125 +0.09375 0.5312 0.1562 +0.09375 0.5312 0.1875 +0.09375 0.5312 0.2188 +0.09375 0.5312 0.25 +0.09375 0.5312 0.2812 +0.09375 0.5312 0.3125 +0.09375 0.5312 0.3438 +0.09375 0.5312 0.375 +0.09375 0.5312 0.4062 +0.09375 0.5312 0.4375 +0.09375 0.5312 0.4688 +0.09375 0.5312 0.5 +0.09375 0.5312 0.5312 +0.09375 0.5312 0.5625 +0.09375 0.5312 0.5938 +0.09375 0.5312 0.625 +0.09375 0.5312 0.6562 +0.09375 0.5312 0.6875 +0.09375 0.5312 0.7188 +0.09375 0.5312 0.75 +0.09375 0.5312 0.7812 +0.09375 0.5312 0.8125 +0.09375 0.5312 0.8438 +0.09375 0.5312 0.875 +0.09375 0.5312 0.9062 +0.09375 0.5312 0.9375 +0.09375 0.5312 0.9688 +0.09375 0.5312 1 +0.09375 0.5625 0 +0.09375 0.5625 0.03125 +0.09375 0.5625 0.0625 +0.09375 0.5625 0.09375 +0.09375 0.5625 0.125 +0.09375 0.5625 0.1562 +0.09375 0.5625 0.1875 +0.09375 0.5625 0.2188 +0.09375 0.5625 0.25 +0.09375 0.5625 0.2812 +0.09375 0.5625 0.3125 +0.09375 0.5625 0.3438 +0.09375 0.5625 0.375 +0.09375 0.5625 0.4062 +0.09375 0.5625 0.4375 +0.09375 0.5625 0.4688 +0.09375 0.5625 0.5 +0.09375 0.5625 0.5312 +0.09375 0.5625 0.5625 +0.09375 0.5625 0.5938 +0.09375 0.5625 0.625 +0.09375 0.5625 0.6562 +0.09375 0.5625 0.6875 +0.09375 0.5625 0.7188 +0.09375 0.5625 0.75 +0.09375 0.5625 0.7812 +0.09375 0.5625 0.8125 +0.09375 0.5625 0.8438 +0.09375 0.5625 0.875 +0.09375 0.5625 0.9062 +0.09375 0.5625 0.9375 +0.09375 0.5625 0.9688 +0.09375 0.5625 1 +0.09375 0.5938 0 +0.09375 0.5938 0.03125 +0.09375 0.5938 0.0625 +0.09375 0.5938 0.09375 +0.09375 0.5938 0.125 +0.09375 0.5938 0.1562 +0.09375 0.5938 0.1875 +0.09375 0.5938 0.2188 +0.09375 0.5938 0.25 +0.09375 0.5938 0.2812 +0.09375 0.5938 0.3125 +0.09375 0.5938 0.3438 +0.09375 0.5938 0.375 +0.09375 0.5938 0.4062 +0.09375 0.5938 0.4375 +0.09375 0.5938 0.4688 +0.09375 0.5938 0.5 +0.09375 0.5938 0.5312 +0.09375 0.5938 0.5625 +0.09375 0.5938 0.5938 +0.09375 0.5938 0.625 +0.09375 0.5938 0.6562 +0.09375 0.5938 0.6875 +0.09375 0.5938 0.7188 +0.09375 0.5938 0.75 +0.09375 0.5938 0.7812 +0.09375 0.5938 0.8125 +0.09375 0.5938 0.8438 +0.09375 0.5938 0.875 +0.09375 0.5938 0.9062 +0.09375 0.5938 0.9375 +0.09375 0.5938 0.9688 +0.09375 0.5938 1 +0.09375 0.625 0 +0.09375 0.625 0.03125 +0.09375 0.625 0.0625 +0.09375 0.625 0.09375 +0.09375 0.625 0.125 +0.09375 0.625 0.1562 +0.09375 0.625 0.1875 +0.09375 0.625 0.2188 +0.09375 0.625 0.25 +0.09375 0.625 0.2812 +0.09375 0.625 0.3125 +0.09375 0.625 0.3438 +0.09375 0.625 0.375 +0.09375 0.625 0.4062 +0.09375 0.625 0.4375 +0.09375 0.625 0.4688 +0.09375 0.625 0.5 +0.09375 0.625 0.5312 +0.09375 0.625 0.5625 +0.09375 0.625 0.5938 +0.09375 0.625 0.625 +0.09375 0.625 0.6562 +0.09375 0.625 0.6875 +0.09375 0.625 0.7188 +0.09375 0.625 0.75 +0.09375 0.625 0.7812 +0.09375 0.625 0.8125 +0.09375 0.625 0.8438 +0.09375 0.625 0.875 +0.09375 0.625 0.9062 +0.09375 0.625 0.9375 +0.09375 0.625 0.9688 +0.09375 0.625 1 +0.09375 0.6562 0 +0.09375 0.6562 0.03125 +0.09375 0.6562 0.0625 +0.09375 0.6562 0.09375 +0.09375 0.6562 0.125 +0.09375 0.6562 0.1562 +0.09375 0.6562 0.1875 +0.09375 0.6562 0.2188 +0.09375 0.6562 0.25 +0.09375 0.6562 0.2812 +0.09375 0.6562 0.3125 +0.09375 0.6562 0.3438 +0.09375 0.6562 0.375 +0.09375 0.6562 0.4062 +0.09375 0.6562 0.4375 +0.09375 0.6562 0.4688 +0.09375 0.6562 0.5 +0.09375 0.6562 0.5312 +0.09375 0.6562 0.5625 +0.09375 0.6562 0.5938 +0.09375 0.6562 0.625 +0.09375 0.6562 0.6562 +0.09375 0.6562 0.6875 +0.09375 0.6562 0.7188 +0.09375 0.6562 0.75 +0.09375 0.6562 0.7812 +0.09375 0.6562 0.8125 +0.09375 0.6562 0.8438 +0.09375 0.6562 0.875 +0.09375 0.6562 0.9062 +0.09375 0.6562 0.9375 +0.09375 0.6562 0.9688 +0.09375 0.6562 1 +0.09375 0.6875 0 +0.09375 0.6875 0.03125 +0.09375 0.6875 0.0625 +0.09375 0.6875 0.09375 +0.09375 0.6875 0.125 +0.09375 0.6875 0.1562 +0.09375 0.6875 0.1875 +0.09375 0.6875 0.2188 +0.09375 0.6875 0.25 +0.09375 0.6875 0.2812 +0.09375 0.6875 0.3125 +0.09375 0.6875 0.3438 +0.09375 0.6875 0.375 +0.09375 0.6875 0.4062 +0.09375 0.6875 0.4375 +0.09375 0.6875 0.4688 +0.09375 0.6875 0.5 +0.09375 0.6875 0.5312 +0.09375 0.6875 0.5625 +0.09375 0.6875 0.5938 +0.09375 0.6875 0.625 +0.09375 0.6875 0.6562 +0.09375 0.6875 0.6875 +0.09375 0.6875 0.7188 +0.09375 0.6875 0.75 +0.09375 0.6875 0.7812 +0.09375 0.6875 0.8125 +0.09375 0.6875 0.8438 +0.09375 0.6875 0.875 +0.09375 0.6875 0.9062 +0.09375 0.6875 0.9375 +0.09375 0.6875 0.9688 +0.09375 0.6875 1 +0.09375 0.7188 0 +0.09375 0.7188 0.03125 +0.09375 0.7188 0.0625 +0.09375 0.7188 0.09375 +0.09375 0.7188 0.125 +0.09375 0.7188 0.1562 +0.09375 0.7188 0.1875 +0.09375 0.7188 0.2188 +0.09375 0.7188 0.25 +0.09375 0.7188 0.2812 +0.09375 0.7188 0.3125 +0.09375 0.7188 0.3438 +0.09375 0.7188 0.375 +0.09375 0.7188 0.4062 +0.09375 0.7188 0.4375 +0.09375 0.7188 0.4688 +0.09375 0.7188 0.5 +0.09375 0.7188 0.5312 +0.09375 0.7188 0.5625 +0.09375 0.7188 0.5938 +0.09375 0.7188 0.625 +0.09375 0.7188 0.6562 +0.09375 0.7188 0.6875 +0.09375 0.7188 0.7188 +0.09375 0.7188 0.75 +0.09375 0.7188 0.7812 +0.09375 0.7188 0.8125 +0.09375 0.7188 0.8438 +0.09375 0.7188 0.875 +0.09375 0.7188 0.9062 +0.09375 0.7188 0.9375 +0.09375 0.7188 0.9688 +0.09375 0.7188 1 +0.09375 0.75 0 +0.09375 0.75 0.03125 +0.09375 0.75 0.0625 +0.09375 0.75 0.09375 +0.09375 0.75 0.125 +0.09375 0.75 0.1562 +0.09375 0.75 0.1875 +0.09375 0.75 0.2188 +0.09375 0.75 0.25 +0.09375 0.75 0.2812 +0.09375 0.75 0.3125 +0.09375 0.75 0.3438 +0.09375 0.75 0.375 +0.09375 0.75 0.4062 +0.09375 0.75 0.4375 +0.09375 0.75 0.4688 +0.09375 0.75 0.5 +0.09375 0.75 0.5312 +0.09375 0.75 0.5625 +0.09375 0.75 0.5938 +0.09375 0.75 0.625 +0.09375 0.75 0.6562 +0.09375 0.75 0.6875 +0.09375 0.75 0.7188 +0.09375 0.75 0.75 +0.09375 0.75 0.7812 +0.09375 0.75 0.8125 +0.09375 0.75 0.8438 +0.09375 0.75 0.875 +0.09375 0.75 0.9062 +0.09375 0.75 0.9375 +0.09375 0.75 0.9688 +0.09375 0.75 1 +0.09375 0.7812 0 +0.09375 0.7812 0.03125 +0.09375 0.7812 0.0625 +0.09375 0.7812 0.09375 +0.09375 0.7812 0.125 +0.09375 0.7812 0.1562 +0.09375 0.7812 0.1875 +0.09375 0.7812 0.2188 +0.09375 0.7812 0.25 +0.09375 0.7812 0.2812 +0.09375 0.7812 0.3125 +0.09375 0.7812 0.3438 +0.09375 0.7812 0.375 +0.09375 0.7812 0.4062 +0.09375 0.7812 0.4375 +0.09375 0.7812 0.4688 +0.09375 0.7812 0.5 +0.09375 0.7812 0.5312 +0.09375 0.7812 0.5625 +0.09375 0.7812 0.5938 +0.09375 0.7812 0.625 +0.09375 0.7812 0.6562 +0.09375 0.7812 0.6875 +0.09375 0.7812 0.7188 +0.09375 0.7812 0.75 +0.09375 0.7812 0.7812 +0.09375 0.7812 0.8125 +0.09375 0.7812 0.8438 +0.09375 0.7812 0.875 +0.09375 0.7812 0.9062 +0.09375 0.7812 0.9375 +0.09375 0.7812 0.9688 +0.09375 0.7812 1 +0.09375 0.8125 0 +0.09375 0.8125 0.03125 +0.09375 0.8125 0.0625 +0.09375 0.8125 0.09375 +0.09375 0.8125 0.125 +0.09375 0.8125 0.1562 +0.09375 0.8125 0.1875 +0.09375 0.8125 0.2188 +0.09375 0.8125 0.25 +0.09375 0.8125 0.2812 +0.09375 0.8125 0.3125 +0.09375 0.8125 0.3438 +0.09375 0.8125 0.375 +0.09375 0.8125 0.4062 +0.09375 0.8125 0.4375 +0.09375 0.8125 0.4688 +0.09375 0.8125 0.5 +0.09375 0.8125 0.5312 +0.09375 0.8125 0.5625 +0.09375 0.8125 0.5938 +0.09375 0.8125 0.625 +0.09375 0.8125 0.6562 +0.09375 0.8125 0.6875 +0.09375 0.8125 0.7188 +0.09375 0.8125 0.75 +0.09375 0.8125 0.7812 +0.09375 0.8125 0.8125 +0.09375 0.8125 0.8438 +0.09375 0.8125 0.875 +0.09375 0.8125 0.9062 +0.09375 0.8125 0.9375 +0.09375 0.8125 0.9688 +0.09375 0.8125 1 +0.09375 0.8438 0 +0.09375 0.8438 0.03125 +0.09375 0.8438 0.0625 +0.09375 0.8438 0.09375 +0.09375 0.8438 0.125 +0.09375 0.8438 0.1562 +0.09375 0.8438 0.1875 +0.09375 0.8438 0.2188 +0.09375 0.8438 0.25 +0.09375 0.8438 0.2812 +0.09375 0.8438 0.3125 +0.09375 0.8438 0.3438 +0.09375 0.8438 0.375 +0.09375 0.8438 0.4062 +0.09375 0.8438 0.4375 +0.09375 0.8438 0.4688 +0.09375 0.8438 0.5 +0.09375 0.8438 0.5312 +0.09375 0.8438 0.5625 +0.09375 0.8438 0.5938 +0.09375 0.8438 0.625 +0.09375 0.8438 0.6562 +0.09375 0.8438 0.6875 +0.09375 0.8438 0.7188 +0.09375 0.8438 0.75 +0.09375 0.8438 0.7812 +0.09375 0.8438 0.8125 +0.09375 0.8438 0.8438 +0.09375 0.8438 0.875 +0.09375 0.8438 0.9062 +0.09375 0.8438 0.9375 +0.09375 0.8438 0.9688 +0.09375 0.8438 1 +0.09375 0.875 0 +0.09375 0.875 0.03125 +0.09375 0.875 0.0625 +0.09375 0.875 0.09375 +0.09375 0.875 0.125 +0.09375 0.875 0.1562 +0.09375 0.875 0.1875 +0.09375 0.875 0.2188 +0.09375 0.875 0.25 +0.09375 0.875 0.2812 +0.09375 0.875 0.3125 +0.09375 0.875 0.3438 +0.09375 0.875 0.375 +0.09375 0.875 0.4062 +0.09375 0.875 0.4375 +0.09375 0.875 0.4688 +0.09375 0.875 0.5 +0.09375 0.875 0.5312 +0.09375 0.875 0.5625 +0.09375 0.875 0.5938 +0.09375 0.875 0.625 +0.09375 0.875 0.6562 +0.09375 0.875 0.6875 +0.09375 0.875 0.7188 +0.09375 0.875 0.75 +0.09375 0.875 0.7812 +0.09375 0.875 0.8125 +0.09375 0.875 0.8438 +0.09375 0.875 0.875 +0.09375 0.875 0.9062 +0.09375 0.875 0.9375 +0.09375 0.875 0.9688 +0.09375 0.875 1 +0.09375 0.9062 0 +0.09375 0.9062 0.03125 +0.09375 0.9062 0.0625 +0.09375 0.9062 0.09375 +0.09375 0.9062 0.125 +0.09375 0.9062 0.1562 +0.09375 0.9062 0.1875 +0.09375 0.9062 0.2188 +0.09375 0.9062 0.25 +0.09375 0.9062 0.2812 +0.09375 0.9062 0.3125 +0.09375 0.9062 0.3438 +0.09375 0.9062 0.375 +0.09375 0.9062 0.4062 +0.09375 0.9062 0.4375 +0.09375 0.9062 0.4688 +0.09375 0.9062 0.5 +0.09375 0.9062 0.5312 +0.09375 0.9062 0.5625 +0.09375 0.9062 0.5938 +0.09375 0.9062 0.625 +0.09375 0.9062 0.6562 +0.09375 0.9062 0.6875 +0.09375 0.9062 0.7188 +0.09375 0.9062 0.75 +0.09375 0.9062 0.7812 +0.09375 0.9062 0.8125 +0.09375 0.9062 0.8438 +0.09375 0.9062 0.875 +0.09375 0.9062 0.9062 +0.09375 0.9062 0.9375 +0.09375 0.9062 0.9688 +0.09375 0.9062 1 +0.09375 0.9375 0 +0.09375 0.9375 0.03125 +0.09375 0.9375 0.0625 +0.09375 0.9375 0.09375 +0.09375 0.9375 0.125 +0.09375 0.9375 0.1562 +0.09375 0.9375 0.1875 +0.09375 0.9375 0.2188 +0.09375 0.9375 0.25 +0.09375 0.9375 0.2812 +0.09375 0.9375 0.3125 +0.09375 0.9375 0.3438 +0.09375 0.9375 0.375 +0.09375 0.9375 0.4062 +0.09375 0.9375 0.4375 +0.09375 0.9375 0.4688 +0.09375 0.9375 0.5 +0.09375 0.9375 0.5312 +0.09375 0.9375 0.5625 +0.09375 0.9375 0.5938 +0.09375 0.9375 0.625 +0.09375 0.9375 0.6562 +0.09375 0.9375 0.6875 +0.09375 0.9375 0.7188 +0.09375 0.9375 0.75 +0.09375 0.9375 0.7812 +0.09375 0.9375 0.8125 +0.09375 0.9375 0.8438 +0.09375 0.9375 0.875 +0.09375 0.9375 0.9062 +0.09375 0.9375 0.9375 +0.09375 0.9375 0.9688 +0.09375 0.9375 1 +0.09375 0.9688 0 +0.09375 0.9688 0.03125 +0.09375 0.9688 0.0625 +0.09375 0.9688 0.09375 +0.09375 0.9688 0.125 +0.09375 0.9688 0.1562 +0.09375 0.9688 0.1875 +0.09375 0.9688 0.2188 +0.09375 0.9688 0.25 +0.09375 0.9688 0.2812 +0.09375 0.9688 0.3125 +0.09375 0.9688 0.3438 +0.09375 0.9688 0.375 +0.09375 0.9688 0.4062 +0.09375 0.9688 0.4375 +0.09375 0.9688 0.4688 +0.09375 0.9688 0.5 +0.09375 0.9688 0.5312 +0.09375 0.9688 0.5625 +0.09375 0.9688 0.5938 +0.09375 0.9688 0.625 +0.09375 0.9688 0.6562 +0.09375 0.9688 0.6875 +0.09375 0.9688 0.7188 +0.09375 0.9688 0.75 +0.09375 0.9688 0.7812 +0.09375 0.9688 0.8125 +0.09375 0.9688 0.8438 +0.09375 0.9688 0.875 +0.09375 0.9688 0.9062 +0.09375 0.9688 0.9375 +0.09375 0.9688 0.9688 +0.09375 0.9688 1 +0.09375 1 0 +0.09375 1 0.03125 +0.09375 1 0.0625 +0.09375 1 0.09375 +0.09375 1 0.125 +0.09375 1 0.1562 +0.09375 1 0.1875 +0.09375 1 0.2188 +0.09375 1 0.25 +0.09375 1 0.2812 +0.09375 1 0.3125 +0.09375 1 0.3438 +0.09375 1 0.375 +0.09375 1 0.4062 +0.09375 1 0.4375 +0.09375 1 0.4688 +0.09375 1 0.5 +0.09375 1 0.5312 +0.09375 1 0.5625 +0.09375 1 0.5938 +0.09375 1 0.625 +0.09375 1 0.6562 +0.09375 1 0.6875 +0.09375 1 0.7188 +0.09375 1 0.75 +0.09375 1 0.7812 +0.09375 1 0.8125 +0.09375 1 0.8438 +0.09375 1 0.875 +0.09375 1 0.9062 +0.09375 1 0.9375 +0.09375 1 0.9688 +0.09375 1 1 +0.125 0 0 +0.125 0 0.03125 +0.125 0 0.0625 +0.125 0 0.09375 +0.125 0 0.125 +0.125 0 0.1562 +0.125 0 0.1875 +0.125 0 0.2188 +0.125 0 0.25 +0.125 0 0.2812 +0.125 0 0.3125 +0.125 0 0.3438 +0.125 0 0.375 +0.125 0 0.4062 +0.125 0 0.4375 +0.125 0 0.4688 +0.125 0 0.5 +0.125 0 0.5312 +0.125 0 0.5625 +0.125 0 0.5938 +0.125 0 0.625 +0.125 0 0.6562 +0.125 0 0.6875 +0.125 0 0.7188 +0.125 0 0.75 +0.125 0 0.7812 +0.125 0 0.8125 +0.125 0 0.8438 +0.125 0 0.875 +0.125 0 0.9062 +0.125 0 0.9375 +0.125 0 0.9688 +0.125 0 1 +0.125 0.03125 0 +0.125 0.03125 0.03125 +0.125 0.03125 0.0625 +0.125 0.03125 0.09375 +0.125 0.03125 0.125 +0.125 0.03125 0.1562 +0.125 0.03125 0.1875 +0.125 0.03125 0.2188 +0.125 0.03125 0.25 +0.125 0.03125 0.2812 +0.125 0.03125 0.3125 +0.125 0.03125 0.3438 +0.125 0.03125 0.375 +0.125 0.03125 0.4062 +0.125 0.03125 0.4375 +0.125 0.03125 0.4688 +0.125 0.03125 0.5 +0.125 0.03125 0.5312 +0.125 0.03125 0.5625 +0.125 0.03125 0.5938 +0.125 0.03125 0.625 +0.125 0.03125 0.6562 +0.125 0.03125 0.6875 +0.125 0.03125 0.7188 +0.125 0.03125 0.75 +0.125 0.03125 0.7812 +0.125 0.03125 0.8125 +0.125 0.03125 0.8438 +0.125 0.03125 0.875 +0.125 0.03125 0.9062 +0.125 0.03125 0.9375 +0.125 0.03125 0.9688 +0.125 0.03125 1 +0.125 0.0625 0 +0.125 0.0625 0.03125 +0.125 0.0625 0.0625 +0.125 0.0625 0.09375 +0.125 0.0625 0.125 +0.125 0.0625 0.1562 +0.125 0.0625 0.1875 +0.125 0.0625 0.2188 +0.125 0.0625 0.25 +0.125 0.0625 0.2812 +0.125 0.0625 0.3125 +0.125 0.0625 0.3438 +0.125 0.0625 0.375 +0.125 0.0625 0.4062 +0.125 0.0625 0.4375 +0.125 0.0625 0.4688 +0.125 0.0625 0.5 +0.125 0.0625 0.5312 +0.125 0.0625 0.5625 +0.125 0.0625 0.5938 +0.125 0.0625 0.625 +0.125 0.0625 0.6562 +0.125 0.0625 0.6875 +0.125 0.0625 0.7188 +0.125 0.0625 0.75 +0.125 0.0625 0.7812 +0.125 0.0625 0.8125 +0.125 0.0625 0.8438 +0.125 0.0625 0.875 +0.125 0.0625 0.9062 +0.125 0.0625 0.9375 +0.125 0.0625 0.9688 +0.125 0.0625 1 +0.125 0.09375 0 +0.125 0.09375 0.03125 +0.125 0.09375 0.0625 +0.125 0.09375 0.09375 +0.125 0.09375 0.125 +0.125 0.09375 0.1562 +0.125 0.09375 0.1875 +0.125 0.09375 0.2188 +0.125 0.09375 0.25 +0.125 0.09375 0.2812 +0.125 0.09375 0.3125 +0.125 0.09375 0.3438 +0.125 0.09375 0.375 +0.125 0.09375 0.4062 +0.125 0.09375 0.4375 +0.125 0.09375 0.4688 +0.125 0.09375 0.5 +0.125 0.09375 0.5312 +0.125 0.09375 0.5625 +0.125 0.09375 0.5938 +0.125 0.09375 0.625 +0.125 0.09375 0.6562 +0.125 0.09375 0.6875 +0.125 0.09375 0.7188 +0.125 0.09375 0.75 +0.125 0.09375 0.7812 +0.125 0.09375 0.8125 +0.125 0.09375 0.8438 +0.125 0.09375 0.875 +0.125 0.09375 0.9062 +0.125 0.09375 0.9375 +0.125 0.09375 0.9688 +0.125 0.09375 1 +0.125 0.125 0 +0.125 0.125 0.03125 +0.125 0.125 0.0625 +0.125 0.125 0.09375 +0.125 0.125 0.125 +0.125 0.125 0.1562 +0.125 0.125 0.1875 +0.125 0.125 0.2188 +0.125 0.125 0.25 +0.125 0.125 0.2812 +0.125 0.125 0.3125 +0.125 0.125 0.3438 +0.125 0.125 0.375 +0.125 0.125 0.4062 +0.125 0.125 0.4375 +0.125 0.125 0.4688 +0.125 0.125 0.5 +0.125 0.125 0.5312 +0.125 0.125 0.5625 +0.125 0.125 0.5938 +0.125 0.125 0.625 +0.125 0.125 0.6562 +0.125 0.125 0.6875 +0.125 0.125 0.7188 +0.125 0.125 0.75 +0.125 0.125 0.7812 +0.125 0.125 0.8125 +0.125 0.125 0.8438 +0.125 0.125 0.875 +0.125 0.125 0.9062 +0.125 0.125 0.9375 +0.125 0.125 0.9688 +0.125 0.125 1 +0.125 0.1562 0 +0.125 0.1562 0.03125 +0.125 0.1562 0.0625 +0.125 0.1562 0.09375 +0.125 0.1562 0.125 +0.125 0.1562 0.1562 +0.125 0.1562 0.1875 +0.125 0.1562 0.2188 +0.125 0.1562 0.25 +0.125 0.1562 0.2812 +0.125 0.1562 0.3125 +0.125 0.1562 0.3438 +0.125 0.1562 0.375 +0.125 0.1562 0.4062 +0.125 0.1562 0.4375 +0.125 0.1562 0.4688 +0.125 0.1562 0.5 +0.125 0.1562 0.5312 +0.125 0.1562 0.5625 +0.125 0.1562 0.5938 +0.125 0.1562 0.625 +0.125 0.1562 0.6562 +0.125 0.1562 0.6875 +0.125 0.1562 0.7188 +0.125 0.1562 0.75 +0.125 0.1562 0.7812 +0.125 0.1562 0.8125 +0.125 0.1562 0.8438 +0.125 0.1562 0.875 +0.125 0.1562 0.9062 +0.125 0.1562 0.9375 +0.125 0.1562 0.9688 +0.125 0.1562 1 +0.125 0.1875 0 +0.125 0.1875 0.03125 +0.125 0.1875 0.0625 +0.125 0.1875 0.09375 +0.125 0.1875 0.125 +0.125 0.1875 0.1562 +0.125 0.1875 0.1875 +0.125 0.1875 0.2188 +0.125 0.1875 0.25 +0.125 0.1875 0.2812 +0.125 0.1875 0.3125 +0.125 0.1875 0.3438 +0.125 0.1875 0.375 +0.125 0.1875 0.4062 +0.125 0.1875 0.4375 +0.125 0.1875 0.4688 +0.125 0.1875 0.5 +0.125 0.1875 0.5312 +0.125 0.1875 0.5625 +0.125 0.1875 0.5938 +0.125 0.1875 0.625 +0.125 0.1875 0.6562 +0.125 0.1875 0.6875 +0.125 0.1875 0.7188 +0.125 0.1875 0.75 +0.125 0.1875 0.7812 +0.125 0.1875 0.8125 +0.125 0.1875 0.8438 +0.125 0.1875 0.875 +0.125 0.1875 0.9062 +0.125 0.1875 0.9375 +0.125 0.1875 0.9688 +0.125 0.1875 1 +0.125 0.2188 0 +0.125 0.2188 0.03125 +0.125 0.2188 0.0625 +0.125 0.2188 0.09375 +0.125 0.2188 0.125 +0.125 0.2188 0.1562 +0.125 0.2188 0.1875 +0.125 0.2188 0.2188 +0.125 0.2188 0.25 +0.125 0.2188 0.2812 +0.125 0.2188 0.3125 +0.125 0.2188 0.3438 +0.125 0.2188 0.375 +0.125 0.2188 0.4062 +0.125 0.2188 0.4375 +0.125 0.2188 0.4688 +0.125 0.2188 0.5 +0.125 0.2188 0.5312 +0.125 0.2188 0.5625 +0.125 0.2188 0.5938 +0.125 0.2188 0.625 +0.125 0.2188 0.6562 +0.125 0.2188 0.6875 +0.125 0.2188 0.7188 +0.125 0.2188 0.75 +0.125 0.2188 0.7812 +0.125 0.2188 0.8125 +0.125 0.2188 0.8438 +0.125 0.2188 0.875 +0.125 0.2188 0.9062 +0.125 0.2188 0.9375 +0.125 0.2188 0.9688 +0.125 0.2188 1 +0.125 0.25 0 +0.125 0.25 0.03125 +0.125 0.25 0.0625 +0.125 0.25 0.09375 +0.125 0.25 0.125 +0.125 0.25 0.1562 +0.125 0.25 0.1875 +0.125 0.25 0.2188 +0.125 0.25 0.25 +0.125 0.25 0.2812 +0.125 0.25 0.3125 +0.125 0.25 0.3438 +0.125 0.25 0.375 +0.125 0.25 0.4062 +0.125 0.25 0.4375 +0.125 0.25 0.4688 +0.125 0.25 0.5 +0.125 0.25 0.5312 +0.125 0.25 0.5625 +0.125 0.25 0.5938 +0.125 0.25 0.625 +0.125 0.25 0.6562 +0.125 0.25 0.6875 +0.125 0.25 0.7188 +0.125 0.25 0.75 +0.125 0.25 0.7812 +0.125 0.25 0.8125 +0.125 0.25 0.8438 +0.125 0.25 0.875 +0.125 0.25 0.9062 +0.125 0.25 0.9375 +0.125 0.25 0.9688 +0.125 0.25 1 +0.125 0.2812 0 +0.125 0.2812 0.03125 +0.125 0.2812 0.0625 +0.125 0.2812 0.09375 +0.125 0.2812 0.125 +0.125 0.2812 0.1562 +0.125 0.2812 0.1875 +0.125 0.2812 0.2188 +0.125 0.2812 0.25 +0.125 0.2812 0.2812 +0.125 0.2812 0.3125 +0.125 0.2812 0.3438 +0.125 0.2812 0.375 +0.125 0.2812 0.4062 +0.125 0.2812 0.4375 +0.125 0.2812 0.4688 +0.125 0.2812 0.5 +0.125 0.2812 0.5312 +0.125 0.2812 0.5625 +0.125 0.2812 0.5938 +0.125 0.2812 0.625 +0.125 0.2812 0.6562 +0.125 0.2812 0.6875 +0.125 0.2812 0.7188 +0.125 0.2812 0.75 +0.125 0.2812 0.7812 +0.125 0.2812 0.8125 +0.125 0.2812 0.8438 +0.125 0.2812 0.875 +0.125 0.2812 0.9062 +0.125 0.2812 0.9375 +0.125 0.2812 0.9688 +0.125 0.2812 1 +0.125 0.3125 0 +0.125 0.3125 0.03125 +0.125 0.3125 0.0625 +0.125 0.3125 0.09375 +0.125 0.3125 0.125 +0.125 0.3125 0.1562 +0.125 0.3125 0.1875 +0.125 0.3125 0.2188 +0.125 0.3125 0.25 +0.125 0.3125 0.2812 +0.125 0.3125 0.3125 +0.125 0.3125 0.3438 +0.125 0.3125 0.375 +0.125 0.3125 0.4062 +0.125 0.3125 0.4375 +0.125 0.3125 0.4688 +0.125 0.3125 0.5 +0.125 0.3125 0.5312 +0.125 0.3125 0.5625 +0.125 0.3125 0.5938 +0.125 0.3125 0.625 +0.125 0.3125 0.6562 +0.125 0.3125 0.6875 +0.125 0.3125 0.7188 +0.125 0.3125 0.75 +0.125 0.3125 0.7812 +0.125 0.3125 0.8125 +0.125 0.3125 0.8438 +0.125 0.3125 0.875 +0.125 0.3125 0.9062 +0.125 0.3125 0.9375 +0.125 0.3125 0.9688 +0.125 0.3125 1 +0.125 0.3438 0 +0.125 0.3438 0.03125 +0.125 0.3438 0.0625 +0.125 0.3438 0.09375 +0.125 0.3438 0.125 +0.125 0.3438 0.1562 +0.125 0.3438 0.1875 +0.125 0.3438 0.2188 +0.125 0.3438 0.25 +0.125 0.3438 0.2812 +0.125 0.3438 0.3125 +0.125 0.3438 0.3438 +0.125 0.3438 0.375 +0.125 0.3438 0.4062 +0.125 0.3438 0.4375 +0.125 0.3438 0.4688 +0.125 0.3438 0.5 +0.125 0.3438 0.5312 +0.125 0.3438 0.5625 +0.125 0.3438 0.5938 +0.125 0.3438 0.625 +0.125 0.3438 0.6562 +0.125 0.3438 0.6875 +0.125 0.3438 0.7188 +0.125 0.3438 0.75 +0.125 0.3438 0.7812 +0.125 0.3438 0.8125 +0.125 0.3438 0.8438 +0.125 0.3438 0.875 +0.125 0.3438 0.9062 +0.125 0.3438 0.9375 +0.125 0.3438 0.9688 +0.125 0.3438 1 +0.125 0.375 0 +0.125 0.375 0.03125 +0.125 0.375 0.0625 +0.125 0.375 0.09375 +0.125 0.375 0.125 +0.125 0.375 0.1562 +0.125 0.375 0.1875 +0.125 0.375 0.2188 +0.125 0.375 0.25 +0.125 0.375 0.2812 +0.125 0.375 0.3125 +0.125 0.375 0.3438 +0.125 0.375 0.375 +0.125 0.375 0.4062 +0.125 0.375 0.4375 +0.125 0.375 0.4688 +0.125 0.375 0.5 +0.125 0.375 0.5312 +0.125 0.375 0.5625 +0.125 0.375 0.5938 +0.125 0.375 0.625 +0.125 0.375 0.6562 +0.125 0.375 0.6875 +0.125 0.375 0.7188 +0.125 0.375 0.75 +0.125 0.375 0.7812 +0.125 0.375 0.8125 +0.125 0.375 0.8438 +0.125 0.375 0.875 +0.125 0.375 0.9062 +0.125 0.375 0.9375 +0.125 0.375 0.9688 +0.125 0.375 1 +0.125 0.4062 0 +0.125 0.4062 0.03125 +0.125 0.4062 0.0625 +0.125 0.4062 0.09375 +0.125 0.4062 0.125 +0.125 0.4062 0.1562 +0.125 0.4062 0.1875 +0.125 0.4062 0.2188 +0.125 0.4062 0.25 +0.125 0.4062 0.2812 +0.125 0.4062 0.3125 +0.125 0.4062 0.3438 +0.125 0.4062 0.375 +0.125 0.4062 0.4062 +0.125 0.4062 0.4375 +0.125 0.4062 0.4688 +0.125 0.4062 0.5 +0.125 0.4062 0.5312 +0.125 0.4062 0.5625 +0.125 0.4062 0.5938 +0.125 0.4062 0.625 +0.125 0.4062 0.6562 +0.125 0.4062 0.6875 +0.125 0.4062 0.7188 +0.125 0.4062 0.75 +0.125 0.4062 0.7812 +0.125 0.4062 0.8125 +0.125 0.4062 0.8438 +0.125 0.4062 0.875 +0.125 0.4062 0.9062 +0.125 0.4062 0.9375 +0.125 0.4062 0.9688 +0.125 0.4062 1 +0.125 0.4375 0 +0.125 0.4375 0.03125 +0.125 0.4375 0.0625 +0.125 0.4375 0.09375 +0.125 0.4375 0.125 +0.125 0.4375 0.1562 +0.125 0.4375 0.1875 +0.125 0.4375 0.2188 +0.125 0.4375 0.25 +0.125 0.4375 0.2812 +0.125 0.4375 0.3125 +0.125 0.4375 0.3438 +0.125 0.4375 0.375 +0.125 0.4375 0.4062 +0.125 0.4375 0.4375 +0.125 0.4375 0.4688 +0.125 0.4375 0.5 +0.125 0.4375 0.5312 +0.125 0.4375 0.5625 +0.125 0.4375 0.5938 +0.125 0.4375 0.625 +0.125 0.4375 0.6562 +0.125 0.4375 0.6875 +0.125 0.4375 0.7188 +0.125 0.4375 0.75 +0.125 0.4375 0.7812 +0.125 0.4375 0.8125 +0.125 0.4375 0.8438 +0.125 0.4375 0.875 +0.125 0.4375 0.9062 +0.125 0.4375 0.9375 +0.125 0.4375 0.9688 +0.125 0.4375 1 +0.125 0.4688 0 +0.125 0.4688 0.03125 +0.125 0.4688 0.0625 +0.125 0.4688 0.09375 +0.125 0.4688 0.125 +0.125 0.4688 0.1562 +0.125 0.4688 0.1875 +0.125 0.4688 0.2188 +0.125 0.4688 0.25 +0.125 0.4688 0.2812 +0.125 0.4688 0.3125 +0.125 0.4688 0.3438 +0.125 0.4688 0.375 +0.125 0.4688 0.4062 +0.125 0.4688 0.4375 +0.125 0.4688 0.4688 +0.125 0.4688 0.5 +0.125 0.4688 0.5312 +0.125 0.4688 0.5625 +0.125 0.4688 0.5938 +0.125 0.4688 0.625 +0.125 0.4688 0.6562 +0.125 0.4688 0.6875 +0.125 0.4688 0.7188 +0.125 0.4688 0.75 +0.125 0.4688 0.7812 +0.125 0.4688 0.8125 +0.125 0.4688 0.8438 +0.125 0.4688 0.875 +0.125 0.4688 0.9062 +0.125 0.4688 0.9375 +0.125 0.4688 0.9688 +0.125 0.4688 1 +0.125 0.5 0 +0.125 0.5 0.03125 +0.125 0.5 0.0625 +0.125 0.5 0.09375 +0.125 0.5 0.125 +0.125 0.5 0.1562 +0.125 0.5 0.1875 +0.125 0.5 0.2188 +0.125 0.5 0.25 +0.125 0.5 0.2812 +0.125 0.5 0.3125 +0.125 0.5 0.3438 +0.125 0.5 0.375 +0.125 0.5 0.4062 +0.125 0.5 0.4375 +0.125 0.5 0.4688 +0.125 0.5 0.5 +0.125 0.5 0.5312 +0.125 0.5 0.5625 +0.125 0.5 0.5938 +0.125 0.5 0.625 +0.125 0.5 0.6562 +0.125 0.5 0.6875 +0.125 0.5 0.7188 +0.125 0.5 0.75 +0.125 0.5 0.7812 +0.125 0.5 0.8125 +0.125 0.5 0.8438 +0.125 0.5 0.875 +0.125 0.5 0.9062 +0.125 0.5 0.9375 +0.125 0.5 0.9688 +0.125 0.5 1 +0.125 0.5312 0 +0.125 0.5312 0.03125 +0.125 0.5312 0.0625 +0.125 0.5312 0.09375 +0.125 0.5312 0.125 +0.125 0.5312 0.1562 +0.125 0.5312 0.1875 +0.125 0.5312 0.2188 +0.125 0.5312 0.25 +0.125 0.5312 0.2812 +0.125 0.5312 0.3125 +0.125 0.5312 0.3438 +0.125 0.5312 0.375 +0.125 0.5312 0.4062 +0.125 0.5312 0.4375 +0.125 0.5312 0.4688 +0.125 0.5312 0.5 +0.125 0.5312 0.5312 +0.125 0.5312 0.5625 +0.125 0.5312 0.5938 +0.125 0.5312 0.625 +0.125 0.5312 0.6562 +0.125 0.5312 0.6875 +0.125 0.5312 0.7188 +0.125 0.5312 0.75 +0.125 0.5312 0.7812 +0.125 0.5312 0.8125 +0.125 0.5312 0.8438 +0.125 0.5312 0.875 +0.125 0.5312 0.9062 +0.125 0.5312 0.9375 +0.125 0.5312 0.9688 +0.125 0.5312 1 +0.125 0.5625 0 +0.125 0.5625 0.03125 +0.125 0.5625 0.0625 +0.125 0.5625 0.09375 +0.125 0.5625 0.125 +0.125 0.5625 0.1562 +0.125 0.5625 0.1875 +0.125 0.5625 0.2188 +0.125 0.5625 0.25 +0.125 0.5625 0.2812 +0.125 0.5625 0.3125 +0.125 0.5625 0.3438 +0.125 0.5625 0.375 +0.125 0.5625 0.4062 +0.125 0.5625 0.4375 +0.125 0.5625 0.4688 +0.125 0.5625 0.5 +0.125 0.5625 0.5312 +0.125 0.5625 0.5625 +0.125 0.5625 0.5938 +0.125 0.5625 0.625 +0.125 0.5625 0.6562 +0.125 0.5625 0.6875 +0.125 0.5625 0.7188 +0.125 0.5625 0.75 +0.125 0.5625 0.7812 +0.125 0.5625 0.8125 +0.125 0.5625 0.8438 +0.125 0.5625 0.875 +0.125 0.5625 0.9062 +0.125 0.5625 0.9375 +0.125 0.5625 0.9688 +0.125 0.5625 1 +0.125 0.5938 0 +0.125 0.5938 0.03125 +0.125 0.5938 0.0625 +0.125 0.5938 0.09375 +0.125 0.5938 0.125 +0.125 0.5938 0.1562 +0.125 0.5938 0.1875 +0.125 0.5938 0.2188 +0.125 0.5938 0.25 +0.125 0.5938 0.2812 +0.125 0.5938 0.3125 +0.125 0.5938 0.3438 +0.125 0.5938 0.375 +0.125 0.5938 0.4062 +0.125 0.5938 0.4375 +0.125 0.5938 0.4688 +0.125 0.5938 0.5 +0.125 0.5938 0.5312 +0.125 0.5938 0.5625 +0.125 0.5938 0.5938 +0.125 0.5938 0.625 +0.125 0.5938 0.6562 +0.125 0.5938 0.6875 +0.125 0.5938 0.7188 +0.125 0.5938 0.75 +0.125 0.5938 0.7812 +0.125 0.5938 0.8125 +0.125 0.5938 0.8438 +0.125 0.5938 0.875 +0.125 0.5938 0.9062 +0.125 0.5938 0.9375 +0.125 0.5938 0.9688 +0.125 0.5938 1 +0.125 0.625 0 +0.125 0.625 0.03125 +0.125 0.625 0.0625 +0.125 0.625 0.09375 +0.125 0.625 0.125 +0.125 0.625 0.1562 +0.125 0.625 0.1875 +0.125 0.625 0.2188 +0.125 0.625 0.25 +0.125 0.625 0.2812 +0.125 0.625 0.3125 +0.125 0.625 0.3438 +0.125 0.625 0.375 +0.125 0.625 0.4062 +0.125 0.625 0.4375 +0.125 0.625 0.4688 +0.125 0.625 0.5 +0.125 0.625 0.5312 +0.125 0.625 0.5625 +0.125 0.625 0.5938 +0.125 0.625 0.625 +0.125 0.625 0.6562 +0.125 0.625 0.6875 +0.125 0.625 0.7188 +0.125 0.625 0.75 +0.125 0.625 0.7812 +0.125 0.625 0.8125 +0.125 0.625 0.8438 +0.125 0.625 0.875 +0.125 0.625 0.9062 +0.125 0.625 0.9375 +0.125 0.625 0.9688 +0.125 0.625 1 +0.125 0.6562 0 +0.125 0.6562 0.03125 +0.125 0.6562 0.0625 +0.125 0.6562 0.09375 +0.125 0.6562 0.125 +0.125 0.6562 0.1562 +0.125 0.6562 0.1875 +0.125 0.6562 0.2188 +0.125 0.6562 0.25 +0.125 0.6562 0.2812 +0.125 0.6562 0.3125 +0.125 0.6562 0.3438 +0.125 0.6562 0.375 +0.125 0.6562 0.4062 +0.125 0.6562 0.4375 +0.125 0.6562 0.4688 +0.125 0.6562 0.5 +0.125 0.6562 0.5312 +0.125 0.6562 0.5625 +0.125 0.6562 0.5938 +0.125 0.6562 0.625 +0.125 0.6562 0.6562 +0.125 0.6562 0.6875 +0.125 0.6562 0.7188 +0.125 0.6562 0.75 +0.125 0.6562 0.7812 +0.125 0.6562 0.8125 +0.125 0.6562 0.8438 +0.125 0.6562 0.875 +0.125 0.6562 0.9062 +0.125 0.6562 0.9375 +0.125 0.6562 0.9688 +0.125 0.6562 1 +0.125 0.6875 0 +0.125 0.6875 0.03125 +0.125 0.6875 0.0625 +0.125 0.6875 0.09375 +0.125 0.6875 0.125 +0.125 0.6875 0.1562 +0.125 0.6875 0.1875 +0.125 0.6875 0.2188 +0.125 0.6875 0.25 +0.125 0.6875 0.2812 +0.125 0.6875 0.3125 +0.125 0.6875 0.3438 +0.125 0.6875 0.375 +0.125 0.6875 0.4062 +0.125 0.6875 0.4375 +0.125 0.6875 0.4688 +0.125 0.6875 0.5 +0.125 0.6875 0.5312 +0.125 0.6875 0.5625 +0.125 0.6875 0.5938 +0.125 0.6875 0.625 +0.125 0.6875 0.6562 +0.125 0.6875 0.6875 +0.125 0.6875 0.7188 +0.125 0.6875 0.75 +0.125 0.6875 0.7812 +0.125 0.6875 0.8125 +0.125 0.6875 0.8438 +0.125 0.6875 0.875 +0.125 0.6875 0.9062 +0.125 0.6875 0.9375 +0.125 0.6875 0.9688 +0.125 0.6875 1 +0.125 0.7188 0 +0.125 0.7188 0.03125 +0.125 0.7188 0.0625 +0.125 0.7188 0.09375 +0.125 0.7188 0.125 +0.125 0.7188 0.1562 +0.125 0.7188 0.1875 +0.125 0.7188 0.2188 +0.125 0.7188 0.25 +0.125 0.7188 0.2812 +0.125 0.7188 0.3125 +0.125 0.7188 0.3438 +0.125 0.7188 0.375 +0.125 0.7188 0.4062 +0.125 0.7188 0.4375 +0.125 0.7188 0.4688 +0.125 0.7188 0.5 +0.125 0.7188 0.5312 +0.125 0.7188 0.5625 +0.125 0.7188 0.5938 +0.125 0.7188 0.625 +0.125 0.7188 0.6562 +0.125 0.7188 0.6875 +0.125 0.7188 0.7188 +0.125 0.7188 0.75 +0.125 0.7188 0.7812 +0.125 0.7188 0.8125 +0.125 0.7188 0.8438 +0.125 0.7188 0.875 +0.125 0.7188 0.9062 +0.125 0.7188 0.9375 +0.125 0.7188 0.9688 +0.125 0.7188 1 +0.125 0.75 0 +0.125 0.75 0.03125 +0.125 0.75 0.0625 +0.125 0.75 0.09375 +0.125 0.75 0.125 +0.125 0.75 0.1562 +0.125 0.75 0.1875 +0.125 0.75 0.2188 +0.125 0.75 0.25 +0.125 0.75 0.2812 +0.125 0.75 0.3125 +0.125 0.75 0.3438 +0.125 0.75 0.375 +0.125 0.75 0.4062 +0.125 0.75 0.4375 +0.125 0.75 0.4688 +0.125 0.75 0.5 +0.125 0.75 0.5312 +0.125 0.75 0.5625 +0.125 0.75 0.5938 +0.125 0.75 0.625 +0.125 0.75 0.6562 +0.125 0.75 0.6875 +0.125 0.75 0.7188 +0.125 0.75 0.75 +0.125 0.75 0.7812 +0.125 0.75 0.8125 +0.125 0.75 0.8438 +0.125 0.75 0.875 +0.125 0.75 0.9062 +0.125 0.75 0.9375 +0.125 0.75 0.9688 +0.125 0.75 1 +0.125 0.7812 0 +0.125 0.7812 0.03125 +0.125 0.7812 0.0625 +0.125 0.7812 0.09375 +0.125 0.7812 0.125 +0.125 0.7812 0.1562 +0.125 0.7812 0.1875 +0.125 0.7812 0.2188 +0.125 0.7812 0.25 +0.125 0.7812 0.2812 +0.125 0.7812 0.3125 +0.125 0.7812 0.3438 +0.125 0.7812 0.375 +0.125 0.7812 0.4062 +0.125 0.7812 0.4375 +0.125 0.7812 0.4688 +0.125 0.7812 0.5 +0.125 0.7812 0.5312 +0.125 0.7812 0.5625 +0.125 0.7812 0.5938 +0.125 0.7812 0.625 +0.125 0.7812 0.6562 +0.125 0.7812 0.6875 +0.125 0.7812 0.7188 +0.125 0.7812 0.75 +0.125 0.7812 0.7812 +0.125 0.7812 0.8125 +0.125 0.7812 0.8438 +0.125 0.7812 0.875 +0.125 0.7812 0.9062 +0.125 0.7812 0.9375 +0.125 0.7812 0.9688 +0.125 0.7812 1 +0.125 0.8125 0 +0.125 0.8125 0.03125 +0.125 0.8125 0.0625 +0.125 0.8125 0.09375 +0.125 0.8125 0.125 +0.125 0.8125 0.1562 +0.125 0.8125 0.1875 +0.125 0.8125 0.2188 +0.125 0.8125 0.25 +0.125 0.8125 0.2812 +0.125 0.8125 0.3125 +0.125 0.8125 0.3438 +0.125 0.8125 0.375 +0.125 0.8125 0.4062 +0.125 0.8125 0.4375 +0.125 0.8125 0.4688 +0.125 0.8125 0.5 +0.125 0.8125 0.5312 +0.125 0.8125 0.5625 +0.125 0.8125 0.5938 +0.125 0.8125 0.625 +0.125 0.8125 0.6562 +0.125 0.8125 0.6875 +0.125 0.8125 0.7188 +0.125 0.8125 0.75 +0.125 0.8125 0.7812 +0.125 0.8125 0.8125 +0.125 0.8125 0.8438 +0.125 0.8125 0.875 +0.125 0.8125 0.9062 +0.125 0.8125 0.9375 +0.125 0.8125 0.9688 +0.125 0.8125 1 +0.125 0.8438 0 +0.125 0.8438 0.03125 +0.125 0.8438 0.0625 +0.125 0.8438 0.09375 +0.125 0.8438 0.125 +0.125 0.8438 0.1562 +0.125 0.8438 0.1875 +0.125 0.8438 0.2188 +0.125 0.8438 0.25 +0.125 0.8438 0.2812 +0.125 0.8438 0.3125 +0.125 0.8438 0.3438 +0.125 0.8438 0.375 +0.125 0.8438 0.4062 +0.125 0.8438 0.4375 +0.125 0.8438 0.4688 +0.125 0.8438 0.5 +0.125 0.8438 0.5312 +0.125 0.8438 0.5625 +0.125 0.8438 0.5938 +0.125 0.8438 0.625 +0.125 0.8438 0.6562 +0.125 0.8438 0.6875 +0.125 0.8438 0.7188 +0.125 0.8438 0.75 +0.125 0.8438 0.7812 +0.125 0.8438 0.8125 +0.125 0.8438 0.8438 +0.125 0.8438 0.875 +0.125 0.8438 0.9062 +0.125 0.8438 0.9375 +0.125 0.8438 0.9688 +0.125 0.8438 1 +0.125 0.875 0 +0.125 0.875 0.03125 +0.125 0.875 0.0625 +0.125 0.875 0.09375 +0.125 0.875 0.125 +0.125 0.875 0.1562 +0.125 0.875 0.1875 +0.125 0.875 0.2188 +0.125 0.875 0.25 +0.125 0.875 0.2812 +0.125 0.875 0.3125 +0.125 0.875 0.3438 +0.125 0.875 0.375 +0.125 0.875 0.4062 +0.125 0.875 0.4375 +0.125 0.875 0.4688 +0.125 0.875 0.5 +0.125 0.875 0.5312 +0.125 0.875 0.5625 +0.125 0.875 0.5938 +0.125 0.875 0.625 +0.125 0.875 0.6562 +0.125 0.875 0.6875 +0.125 0.875 0.7188 +0.125 0.875 0.75 +0.125 0.875 0.7812 +0.125 0.875 0.8125 +0.125 0.875 0.8438 +0.125 0.875 0.875 +0.125 0.875 0.9062 +0.125 0.875 0.9375 +0.125 0.875 0.9688 +0.125 0.875 1 +0.125 0.9062 0 +0.125 0.9062 0.03125 +0.125 0.9062 0.0625 +0.125 0.9062 0.09375 +0.125 0.9062 0.125 +0.125 0.9062 0.1562 +0.125 0.9062 0.1875 +0.125 0.9062 0.2188 +0.125 0.9062 0.25 +0.125 0.9062 0.2812 +0.125 0.9062 0.3125 +0.125 0.9062 0.3438 +0.125 0.9062 0.375 +0.125 0.9062 0.4062 +0.125 0.9062 0.4375 +0.125 0.9062 0.4688 +0.125 0.9062 0.5 +0.125 0.9062 0.5312 +0.125 0.9062 0.5625 +0.125 0.9062 0.5938 +0.125 0.9062 0.625 +0.125 0.9062 0.6562 +0.125 0.9062 0.6875 +0.125 0.9062 0.7188 +0.125 0.9062 0.75 +0.125 0.9062 0.7812 +0.125 0.9062 0.8125 +0.125 0.9062 0.8438 +0.125 0.9062 0.875 +0.125 0.9062 0.9062 +0.125 0.9062 0.9375 +0.125 0.9062 0.9688 +0.125 0.9062 1 +0.125 0.9375 0 +0.125 0.9375 0.03125 +0.125 0.9375 0.0625 +0.125 0.9375 0.09375 +0.125 0.9375 0.125 +0.125 0.9375 0.1562 +0.125 0.9375 0.1875 +0.125 0.9375 0.2188 +0.125 0.9375 0.25 +0.125 0.9375 0.2812 +0.125 0.9375 0.3125 +0.125 0.9375 0.3438 +0.125 0.9375 0.375 +0.125 0.9375 0.4062 +0.125 0.9375 0.4375 +0.125 0.9375 0.4688 +0.125 0.9375 0.5 +0.125 0.9375 0.5312 +0.125 0.9375 0.5625 +0.125 0.9375 0.5938 +0.125 0.9375 0.625 +0.125 0.9375 0.6562 +0.125 0.9375 0.6875 +0.125 0.9375 0.7188 +0.125 0.9375 0.75 +0.125 0.9375 0.7812 +0.125 0.9375 0.8125 +0.125 0.9375 0.8438 +0.125 0.9375 0.875 +0.125 0.9375 0.9062 +0.125 0.9375 0.9375 +0.125 0.9375 0.9688 +0.125 0.9375 1 +0.125 0.9688 0 +0.125 0.9688 0.03125 +0.125 0.9688 0.0625 +0.125 0.9688 0.09375 +0.125 0.9688 0.125 +0.125 0.9688 0.1562 +0.125 0.9688 0.1875 +0.125 0.9688 0.2188 +0.125 0.9688 0.25 +0.125 0.9688 0.2812 +0.125 0.9688 0.3125 +0.125 0.9688 0.3438 +0.125 0.9688 0.375 +0.125 0.9688 0.4062 +0.125 0.9688 0.4375 +0.125 0.9688 0.4688 +0.125 0.9688 0.5 +0.125 0.9688 0.5312 +0.125 0.9688 0.5625 +0.125 0.9688 0.5938 +0.125 0.9688 0.625 +0.125 0.9688 0.6562 +0.125 0.9688 0.6875 +0.125 0.9688 0.7188 +0.125 0.9688 0.75 +0.125 0.9688 0.7812 +0.125 0.9688 0.8125 +0.125 0.9688 0.8438 +0.125 0.9688 0.875 +0.125 0.9688 0.9062 +0.125 0.9688 0.9375 +0.125 0.9688 0.9688 +0.125 0.9688 1 +0.125 1 0 +0.125 1 0.03125 +0.125 1 0.0625 +0.125 1 0.09375 +0.125 1 0.125 +0.125 1 0.1562 +0.125 1 0.1875 +0.125 1 0.2188 +0.125 1 0.25 +0.125 1 0.2812 +0.125 1 0.3125 +0.125 1 0.3438 +0.125 1 0.375 +0.125 1 0.4062 +0.125 1 0.4375 +0.125 1 0.4688 +0.125 1 0.5 +0.125 1 0.5312 +0.125 1 0.5625 +0.125 1 0.5938 +0.125 1 0.625 +0.125 1 0.6562 +0.125 1 0.6875 +0.125 1 0.7188 +0.125 1 0.75 +0.125 1 0.7812 +0.125 1 0.8125 +0.125 1 0.8438 +0.125 1 0.875 +0.125 1 0.9062 +0.125 1 0.9375 +0.125 1 0.9688 +0.125 1 1 +0.1562 0 0 +0.1562 0 0.03125 +0.1562 0 0.0625 +0.1562 0 0.09375 +0.1562 0 0.125 +0.1562 0 0.1562 +0.1562 0 0.1875 +0.1562 0 0.2188 +0.1562 0 0.25 +0.1562 0 0.2812 +0.1562 0 0.3125 +0.1562 0 0.3438 +0.1562 0 0.375 +0.1562 0 0.4062 +0.1562 0 0.4375 +0.1562 0 0.4688 +0.1562 0 0.5 +0.1562 0 0.5312 +0.1562 0 0.5625 +0.1562 0 0.5938 +0.1562 0 0.625 +0.1562 0 0.6562 +0.1562 0 0.6875 +0.1562 0 0.7188 +0.1562 0 0.75 +0.1562 0 0.7812 +0.1562 0 0.8125 +0.1562 0 0.8438 +0.1562 0 0.875 +0.1562 0 0.9062 +0.1562 0 0.9375 +0.1562 0 0.9688 +0.1562 0 1 +0.1562 0.03125 0 +0.1562 0.03125 0.03125 +0.1562 0.03125 0.0625 +0.1562 0.03125 0.09375 +0.1562 0.03125 0.125 +0.1562 0.03125 0.1562 +0.1562 0.03125 0.1875 +0.1562 0.03125 0.2188 +0.1562 0.03125 0.25 +0.1562 0.03125 0.2812 +0.1562 0.03125 0.3125 +0.1562 0.03125 0.3438 +0.1562 0.03125 0.375 +0.1562 0.03125 0.4062 +0.1562 0.03125 0.4375 +0.1562 0.03125 0.4688 +0.1562 0.03125 0.5 +0.1562 0.03125 0.5312 +0.1562 0.03125 0.5625 +0.1562 0.03125 0.5938 +0.1562 0.03125 0.625 +0.1562 0.03125 0.6562 +0.1562 0.03125 0.6875 +0.1562 0.03125 0.7188 +0.1562 0.03125 0.75 +0.1562 0.03125 0.7812 +0.1562 0.03125 0.8125 +0.1562 0.03125 0.8438 +0.1562 0.03125 0.875 +0.1562 0.03125 0.9062 +0.1562 0.03125 0.9375 +0.1562 0.03125 0.9688 +0.1562 0.03125 1 +0.1562 0.0625 0 +0.1562 0.0625 0.03125 +0.1562 0.0625 0.0625 +0.1562 0.0625 0.09375 +0.1562 0.0625 0.125 +0.1562 0.0625 0.1562 +0.1562 0.0625 0.1875 +0.1562 0.0625 0.2188 +0.1562 0.0625 0.25 +0.1562 0.0625 0.2812 +0.1562 0.0625 0.3125 +0.1562 0.0625 0.3438 +0.1562 0.0625 0.375 +0.1562 0.0625 0.4062 +0.1562 0.0625 0.4375 +0.1562 0.0625 0.4688 +0.1562 0.0625 0.5 +0.1562 0.0625 0.5312 +0.1562 0.0625 0.5625 +0.1562 0.0625 0.5938 +0.1562 0.0625 0.625 +0.1562 0.0625 0.6562 +0.1562 0.0625 0.6875 +0.1562 0.0625 0.7188 +0.1562 0.0625 0.75 +0.1562 0.0625 0.7812 +0.1562 0.0625 0.8125 +0.1562 0.0625 0.8438 +0.1562 0.0625 0.875 +0.1562 0.0625 0.9062 +0.1562 0.0625 0.9375 +0.1562 0.0625 0.9688 +0.1562 0.0625 1 +0.1562 0.09375 0 +0.1562 0.09375 0.03125 +0.1562 0.09375 0.0625 +0.1562 0.09375 0.09375 +0.1562 0.09375 0.125 +0.1562 0.09375 0.1562 +0.1562 0.09375 0.1875 +0.1562 0.09375 0.2188 +0.1562 0.09375 0.25 +0.1562 0.09375 0.2812 +0.1562 0.09375 0.3125 +0.1562 0.09375 0.3438 +0.1562 0.09375 0.375 +0.1562 0.09375 0.4062 +0.1562 0.09375 0.4375 +0.1562 0.09375 0.4688 +0.1562 0.09375 0.5 +0.1562 0.09375 0.5312 +0.1562 0.09375 0.5625 +0.1562 0.09375 0.5938 +0.1562 0.09375 0.625 +0.1562 0.09375 0.6562 +0.1562 0.09375 0.6875 +0.1562 0.09375 0.7188 +0.1562 0.09375 0.75 +0.1562 0.09375 0.7812 +0.1562 0.09375 0.8125 +0.1562 0.09375 0.8438 +0.1562 0.09375 0.875 +0.1562 0.09375 0.9062 +0.1562 0.09375 0.9375 +0.1562 0.09375 0.9688 +0.1562 0.09375 1 +0.1562 0.125 0 +0.1562 0.125 0.03125 +0.1562 0.125 0.0625 +0.1562 0.125 0.09375 +0.1562 0.125 0.125 +0.1562 0.125 0.1562 +0.1562 0.125 0.1875 +0.1562 0.125 0.2188 +0.1562 0.125 0.25 +0.1562 0.125 0.2812 +0.1562 0.125 0.3125 +0.1562 0.125 0.3438 +0.1562 0.125 0.375 +0.1562 0.125 0.4062 +0.1562 0.125 0.4375 +0.1562 0.125 0.4688 +0.1562 0.125 0.5 +0.1562 0.125 0.5312 +0.1562 0.125 0.5625 +0.1562 0.125 0.5938 +0.1562 0.125 0.625 +0.1562 0.125 0.6562 +0.1562 0.125 0.6875 +0.1562 0.125 0.7188 +0.1562 0.125 0.75 +0.1562 0.125 0.7812 +0.1562 0.125 0.8125 +0.1562 0.125 0.8438 +0.1562 0.125 0.875 +0.1562 0.125 0.9062 +0.1562 0.125 0.9375 +0.1562 0.125 0.9688 +0.1562 0.125 1 +0.1562 0.1562 0 +0.1562 0.1562 0.03125 +0.1562 0.1562 0.0625 +0.1562 0.1562 0.09375 +0.1562 0.1562 0.125 +0.1562 0.1562 0.1562 +0.1562 0.1562 0.1875 +0.1562 0.1562 0.2188 +0.1562 0.1562 0.25 +0.1562 0.1562 0.2812 +0.1562 0.1562 0.3125 +0.1562 0.1562 0.3438 +0.1562 0.1562 0.375 +0.1562 0.1562 0.4062 +0.1562 0.1562 0.4375 +0.1562 0.1562 0.4688 +0.1562 0.1562 0.5 +0.1562 0.1562 0.5312 +0.1562 0.1562 0.5625 +0.1562 0.1562 0.5938 +0.1562 0.1562 0.625 +0.1562 0.1562 0.6562 +0.1562 0.1562 0.6875 +0.1562 0.1562 0.7188 +0.1562 0.1562 0.75 +0.1562 0.1562 0.7812 +0.1562 0.1562 0.8125 +0.1562 0.1562 0.8438 +0.1562 0.1562 0.875 +0.1562 0.1562 0.9062 +0.1562 0.1562 0.9375 +0.1562 0.1562 0.9688 +0.1562 0.1562 1 +0.1562 0.1875 0 +0.1562 0.1875 0.03125 +0.1562 0.1875 0.0625 +0.1562 0.1875 0.09375 +0.1562 0.1875 0.125 +0.1562 0.1875 0.1562 +0.1562 0.1875 0.1875 +0.1562 0.1875 0.2188 +0.1562 0.1875 0.25 +0.1562 0.1875 0.2812 +0.1562 0.1875 0.3125 +0.1562 0.1875 0.3438 +0.1562 0.1875 0.375 +0.1562 0.1875 0.4062 +0.1562 0.1875 0.4375 +0.1562 0.1875 0.4688 +0.1562 0.1875 0.5 +0.1562 0.1875 0.5312 +0.1562 0.1875 0.5625 +0.1562 0.1875 0.5938 +0.1562 0.1875 0.625 +0.1562 0.1875 0.6562 +0.1562 0.1875 0.6875 +0.1562 0.1875 0.7188 +0.1562 0.1875 0.75 +0.1562 0.1875 0.7812 +0.1562 0.1875 0.8125 +0.1562 0.1875 0.8438 +0.1562 0.1875 0.875 +0.1562 0.1875 0.9062 +0.1562 0.1875 0.9375 +0.1562 0.1875 0.9688 +0.1562 0.1875 1 +0.1562 0.2188 0 +0.1562 0.2188 0.03125 +0.1562 0.2188 0.0625 +0.1562 0.2188 0.09375 +0.1562 0.2188 0.125 +0.1562 0.2188 0.1562 +0.1562 0.2188 0.1875 +0.1562 0.2188 0.2188 +0.1562 0.2188 0.25 +0.1562 0.2188 0.2812 +0.1562 0.2188 0.3125 +0.1562 0.2188 0.3438 +0.1562 0.2188 0.375 +0.1562 0.2188 0.4062 +0.1562 0.2188 0.4375 +0.1562 0.2188 0.4688 +0.1562 0.2188 0.5 +0.1562 0.2188 0.5312 +0.1562 0.2188 0.5625 +0.1562 0.2188 0.5938 +0.1562 0.2188 0.625 +0.1562 0.2188 0.6562 +0.1562 0.2188 0.6875 +0.1562 0.2188 0.7188 +0.1562 0.2188 0.75 +0.1562 0.2188 0.7812 +0.1562 0.2188 0.8125 +0.1562 0.2188 0.8438 +0.1562 0.2188 0.875 +0.1562 0.2188 0.9062 +0.1562 0.2188 0.9375 +0.1562 0.2188 0.9688 +0.1562 0.2188 1 +0.1562 0.25 0 +0.1562 0.25 0.03125 +0.1562 0.25 0.0625 +0.1562 0.25 0.09375 +0.1562 0.25 0.125 +0.1562 0.25 0.1562 +0.1562 0.25 0.1875 +0.1562 0.25 0.2188 +0.1562 0.25 0.25 +0.1562 0.25 0.2812 +0.1562 0.25 0.3125 +0.1562 0.25 0.3438 +0.1562 0.25 0.375 +0.1562 0.25 0.4062 +0.1562 0.25 0.4375 +0.1562 0.25 0.4688 +0.1562 0.25 0.5 +0.1562 0.25 0.5312 +0.1562 0.25 0.5625 +0.1562 0.25 0.5938 +0.1562 0.25 0.625 +0.1562 0.25 0.6562 +0.1562 0.25 0.6875 +0.1562 0.25 0.7188 +0.1562 0.25 0.75 +0.1562 0.25 0.7812 +0.1562 0.25 0.8125 +0.1562 0.25 0.8438 +0.1562 0.25 0.875 +0.1562 0.25 0.9062 +0.1562 0.25 0.9375 +0.1562 0.25 0.9688 +0.1562 0.25 1 +0.1562 0.2812 0 +0.1562 0.2812 0.03125 +0.1562 0.2812 0.0625 +0.1562 0.2812 0.09375 +0.1562 0.2812 0.125 +0.1562 0.2812 0.1562 +0.1562 0.2812 0.1875 +0.1562 0.2812 0.2188 +0.1562 0.2812 0.25 +0.1562 0.2812 0.2812 +0.1562 0.2812 0.3125 +0.1562 0.2812 0.3438 +0.1562 0.2812 0.375 +0.1562 0.2812 0.4062 +0.1562 0.2812 0.4375 +0.1562 0.2812 0.4688 +0.1562 0.2812 0.5 +0.1562 0.2812 0.5312 +0.1562 0.2812 0.5625 +0.1562 0.2812 0.5938 +0.1562 0.2812 0.625 +0.1562 0.2812 0.6562 +0.1562 0.2812 0.6875 +0.1562 0.2812 0.7188 +0.1562 0.2812 0.75 +0.1562 0.2812 0.7812 +0.1562 0.2812 0.8125 +0.1562 0.2812 0.8438 +0.1562 0.2812 0.875 +0.1562 0.2812 0.9062 +0.1562 0.2812 0.9375 +0.1562 0.2812 0.9688 +0.1562 0.2812 1 +0.1562 0.3125 0 +0.1562 0.3125 0.03125 +0.1562 0.3125 0.0625 +0.1562 0.3125 0.09375 +0.1562 0.3125 0.125 +0.1562 0.3125 0.1562 +0.1562 0.3125 0.1875 +0.1562 0.3125 0.2188 +0.1562 0.3125 0.25 +0.1562 0.3125 0.2812 +0.1562 0.3125 0.3125 +0.1562 0.3125 0.3438 +0.1562 0.3125 0.375 +0.1562 0.3125 0.4062 +0.1562 0.3125 0.4375 +0.1562 0.3125 0.4688 +0.1562 0.3125 0.5 +0.1562 0.3125 0.5312 +0.1562 0.3125 0.5625 +0.1562 0.3125 0.5938 +0.1562 0.3125 0.625 +0.1562 0.3125 0.6562 +0.1562 0.3125 0.6875 +0.1562 0.3125 0.7188 +0.1562 0.3125 0.75 +0.1562 0.3125 0.7812 +0.1562 0.3125 0.8125 +0.1562 0.3125 0.8438 +0.1562 0.3125 0.875 +0.1562 0.3125 0.9062 +0.1562 0.3125 0.9375 +0.1562 0.3125 0.9688 +0.1562 0.3125 1 +0.1562 0.3438 0 +0.1562 0.3438 0.03125 +0.1562 0.3438 0.0625 +0.1562 0.3438 0.09375 +0.1562 0.3438 0.125 +0.1562 0.3438 0.1562 +0.1562 0.3438 0.1875 +0.1562 0.3438 0.2188 +0.1562 0.3438 0.25 +0.1562 0.3438 0.2812 +0.1562 0.3438 0.3125 +0.1562 0.3438 0.3438 +0.1562 0.3438 0.375 +0.1562 0.3438 0.4062 +0.1562 0.3438 0.4375 +0.1562 0.3438 0.4688 +0.1562 0.3438 0.5 +0.1562 0.3438 0.5312 +0.1562 0.3438 0.5625 +0.1562 0.3438 0.5938 +0.1562 0.3438 0.625 +0.1562 0.3438 0.6562 +0.1562 0.3438 0.6875 +0.1562 0.3438 0.7188 +0.1562 0.3438 0.75 +0.1562 0.3438 0.7812 +0.1562 0.3438 0.8125 +0.1562 0.3438 0.8438 +0.1562 0.3438 0.875 +0.1562 0.3438 0.9062 +0.1562 0.3438 0.9375 +0.1562 0.3438 0.9688 +0.1562 0.3438 1 +0.1562 0.375 0 +0.1562 0.375 0.03125 +0.1562 0.375 0.0625 +0.1562 0.375 0.09375 +0.1562 0.375 0.125 +0.1562 0.375 0.1562 +0.1562 0.375 0.1875 +0.1562 0.375 0.2188 +0.1562 0.375 0.25 +0.1562 0.375 0.2812 +0.1562 0.375 0.3125 +0.1562 0.375 0.3438 +0.1562 0.375 0.375 +0.1562 0.375 0.4062 +0.1562 0.375 0.4375 +0.1562 0.375 0.4688 +0.1562 0.375 0.5 +0.1562 0.375 0.5312 +0.1562 0.375 0.5625 +0.1562 0.375 0.5938 +0.1562 0.375 0.625 +0.1562 0.375 0.6562 +0.1562 0.375 0.6875 +0.1562 0.375 0.7188 +0.1562 0.375 0.75 +0.1562 0.375 0.7812 +0.1562 0.375 0.8125 +0.1562 0.375 0.8438 +0.1562 0.375 0.875 +0.1562 0.375 0.9062 +0.1562 0.375 0.9375 +0.1562 0.375 0.9688 +0.1562 0.375 1 +0.1562 0.4062 0 +0.1562 0.4062 0.03125 +0.1562 0.4062 0.0625 +0.1562 0.4062 0.09375 +0.1562 0.4062 0.125 +0.1562 0.4062 0.1562 +0.1562 0.4062 0.1875 +0.1562 0.4062 0.2188 +0.1562 0.4062 0.25 +0.1562 0.4062 0.2812 +0.1562 0.4062 0.3125 +0.1562 0.4062 0.3438 +0.1562 0.4062 0.375 +0.1562 0.4062 0.4062 +0.1562 0.4062 0.4375 +0.1562 0.4062 0.4688 +0.1562 0.4062 0.5 +0.1562 0.4062 0.5312 +0.1562 0.4062 0.5625 +0.1562 0.4062 0.5938 +0.1562 0.4062 0.625 +0.1562 0.4062 0.6562 +0.1562 0.4062 0.6875 +0.1562 0.4062 0.7188 +0.1562 0.4062 0.75 +0.1562 0.4062 0.7812 +0.1562 0.4062 0.8125 +0.1562 0.4062 0.8438 +0.1562 0.4062 0.875 +0.1562 0.4062 0.9062 +0.1562 0.4062 0.9375 +0.1562 0.4062 0.9688 +0.1562 0.4062 1 +0.1562 0.4375 0 +0.1562 0.4375 0.03125 +0.1562 0.4375 0.0625 +0.1562 0.4375 0.09375 +0.1562 0.4375 0.125 +0.1562 0.4375 0.1562 +0.1562 0.4375 0.1875 +0.1562 0.4375 0.2188 +0.1562 0.4375 0.25 +0.1562 0.4375 0.2812 +0.1562 0.4375 0.3125 +0.1562 0.4375 0.3438 +0.1562 0.4375 0.375 +0.1562 0.4375 0.4062 +0.1562 0.4375 0.4375 +0.1562 0.4375 0.4688 +0.1562 0.4375 0.5 +0.1562 0.4375 0.5312 +0.1562 0.4375 0.5625 +0.1562 0.4375 0.5938 +0.1562 0.4375 0.625 +0.1562 0.4375 0.6562 +0.1562 0.4375 0.6875 +0.1562 0.4375 0.7188 +0.1562 0.4375 0.75 +0.1562 0.4375 0.7812 +0.1562 0.4375 0.8125 +0.1562 0.4375 0.8438 +0.1562 0.4375 0.875 +0.1562 0.4375 0.9062 +0.1562 0.4375 0.9375 +0.1562 0.4375 0.9688 +0.1562 0.4375 1 +0.1562 0.4688 0 +0.1562 0.4688 0.03125 +0.1562 0.4688 0.0625 +0.1562 0.4688 0.09375 +0.1562 0.4688 0.125 +0.1562 0.4688 0.1562 +0.1562 0.4688 0.1875 +0.1562 0.4688 0.2188 +0.1562 0.4688 0.25 +0.1562 0.4688 0.2812 +0.1562 0.4688 0.3125 +0.1562 0.4688 0.3438 +0.1562 0.4688 0.375 +0.1562 0.4688 0.4062 +0.1562 0.4688 0.4375 +0.1562 0.4688 0.4688 +0.1562 0.4688 0.5 +0.1562 0.4688 0.5312 +0.1562 0.4688 0.5625 +0.1562 0.4688 0.5938 +0.1562 0.4688 0.625 +0.1562 0.4688 0.6562 +0.1562 0.4688 0.6875 +0.1562 0.4688 0.7188 +0.1562 0.4688 0.75 +0.1562 0.4688 0.7812 +0.1562 0.4688 0.8125 +0.1562 0.4688 0.8438 +0.1562 0.4688 0.875 +0.1562 0.4688 0.9062 +0.1562 0.4688 0.9375 +0.1562 0.4688 0.9688 +0.1562 0.4688 1 +0.1562 0.5 0 +0.1562 0.5 0.03125 +0.1562 0.5 0.0625 +0.1562 0.5 0.09375 +0.1562 0.5 0.125 +0.1562 0.5 0.1562 +0.1562 0.5 0.1875 +0.1562 0.5 0.2188 +0.1562 0.5 0.25 +0.1562 0.5 0.2812 +0.1562 0.5 0.3125 +0.1562 0.5 0.3438 +0.1562 0.5 0.375 +0.1562 0.5 0.4062 +0.1562 0.5 0.4375 +0.1562 0.5 0.4688 +0.1562 0.5 0.5 +0.1562 0.5 0.5312 +0.1562 0.5 0.5625 +0.1562 0.5 0.5938 +0.1562 0.5 0.625 +0.1562 0.5 0.6562 +0.1562 0.5 0.6875 +0.1562 0.5 0.7188 +0.1562 0.5 0.75 +0.1562 0.5 0.7812 +0.1562 0.5 0.8125 +0.1562 0.5 0.8438 +0.1562 0.5 0.875 +0.1562 0.5 0.9062 +0.1562 0.5 0.9375 +0.1562 0.5 0.9688 +0.1562 0.5 1 +0.1562 0.5312 0 +0.1562 0.5312 0.03125 +0.1562 0.5312 0.0625 +0.1562 0.5312 0.09375 +0.1562 0.5312 0.125 +0.1562 0.5312 0.1562 +0.1562 0.5312 0.1875 +0.1562 0.5312 0.2188 +0.1562 0.5312 0.25 +0.1562 0.5312 0.2812 +0.1562 0.5312 0.3125 +0.1562 0.5312 0.3438 +0.1562 0.5312 0.375 +0.1562 0.5312 0.4062 +0.1562 0.5312 0.4375 +0.1562 0.5312 0.4688 +0.1562 0.5312 0.5 +0.1562 0.5312 0.5312 +0.1562 0.5312 0.5625 +0.1562 0.5312 0.5938 +0.1562 0.5312 0.625 +0.1562 0.5312 0.6562 +0.1562 0.5312 0.6875 +0.1562 0.5312 0.7188 +0.1562 0.5312 0.75 +0.1562 0.5312 0.7812 +0.1562 0.5312 0.8125 +0.1562 0.5312 0.8438 +0.1562 0.5312 0.875 +0.1562 0.5312 0.9062 +0.1562 0.5312 0.9375 +0.1562 0.5312 0.9688 +0.1562 0.5312 1 +0.1562 0.5625 0 +0.1562 0.5625 0.03125 +0.1562 0.5625 0.0625 +0.1562 0.5625 0.09375 +0.1562 0.5625 0.125 +0.1562 0.5625 0.1562 +0.1562 0.5625 0.1875 +0.1562 0.5625 0.2188 +0.1562 0.5625 0.25 +0.1562 0.5625 0.2812 +0.1562 0.5625 0.3125 +0.1562 0.5625 0.3438 +0.1562 0.5625 0.375 +0.1562 0.5625 0.4062 +0.1562 0.5625 0.4375 +0.1562 0.5625 0.4688 +0.1562 0.5625 0.5 +0.1562 0.5625 0.5312 +0.1562 0.5625 0.5625 +0.1562 0.5625 0.5938 +0.1562 0.5625 0.625 +0.1562 0.5625 0.6562 +0.1562 0.5625 0.6875 +0.1562 0.5625 0.7188 +0.1562 0.5625 0.75 +0.1562 0.5625 0.7812 +0.1562 0.5625 0.8125 +0.1562 0.5625 0.8438 +0.1562 0.5625 0.875 +0.1562 0.5625 0.9062 +0.1562 0.5625 0.9375 +0.1562 0.5625 0.9688 +0.1562 0.5625 1 +0.1562 0.5938 0 +0.1562 0.5938 0.03125 +0.1562 0.5938 0.0625 +0.1562 0.5938 0.09375 +0.1562 0.5938 0.125 +0.1562 0.5938 0.1562 +0.1562 0.5938 0.1875 +0.1562 0.5938 0.2188 +0.1562 0.5938 0.25 +0.1562 0.5938 0.2812 +0.1562 0.5938 0.3125 +0.1562 0.5938 0.3438 +0.1562 0.5938 0.375 +0.1562 0.5938 0.4062 +0.1562 0.5938 0.4375 +0.1562 0.5938 0.4688 +0.1562 0.5938 0.5 +0.1562 0.5938 0.5312 +0.1562 0.5938 0.5625 +0.1562 0.5938 0.5938 +0.1562 0.5938 0.625 +0.1562 0.5938 0.6562 +0.1562 0.5938 0.6875 +0.1562 0.5938 0.7188 +0.1562 0.5938 0.75 +0.1562 0.5938 0.7812 +0.1562 0.5938 0.8125 +0.1562 0.5938 0.8438 +0.1562 0.5938 0.875 +0.1562 0.5938 0.9062 +0.1562 0.5938 0.9375 +0.1562 0.5938 0.9688 +0.1562 0.5938 1 +0.1562 0.625 0 +0.1562 0.625 0.03125 +0.1562 0.625 0.0625 +0.1562 0.625 0.09375 +0.1562 0.625 0.125 +0.1562 0.625 0.1562 +0.1562 0.625 0.1875 +0.1562 0.625 0.2188 +0.1562 0.625 0.25 +0.1562 0.625 0.2812 +0.1562 0.625 0.3125 +0.1562 0.625 0.3438 +0.1562 0.625 0.375 +0.1562 0.625 0.4062 +0.1562 0.625 0.4375 +0.1562 0.625 0.4688 +0.1562 0.625 0.5 +0.1562 0.625 0.5312 +0.1562 0.625 0.5625 +0.1562 0.625 0.5938 +0.1562 0.625 0.625 +0.1562 0.625 0.6562 +0.1562 0.625 0.6875 +0.1562 0.625 0.7188 +0.1562 0.625 0.75 +0.1562 0.625 0.7812 +0.1562 0.625 0.8125 +0.1562 0.625 0.8438 +0.1562 0.625 0.875 +0.1562 0.625 0.9062 +0.1562 0.625 0.9375 +0.1562 0.625 0.9688 +0.1562 0.625 1 +0.1562 0.6562 0 +0.1562 0.6562 0.03125 +0.1562 0.6562 0.0625 +0.1562 0.6562 0.09375 +0.1562 0.6562 0.125 +0.1562 0.6562 0.1562 +0.1562 0.6562 0.1875 +0.1562 0.6562 0.2188 +0.1562 0.6562 0.25 +0.1562 0.6562 0.2812 +0.1562 0.6562 0.3125 +0.1562 0.6562 0.3438 +0.1562 0.6562 0.375 +0.1562 0.6562 0.4062 +0.1562 0.6562 0.4375 +0.1562 0.6562 0.4688 +0.1562 0.6562 0.5 +0.1562 0.6562 0.5312 +0.1562 0.6562 0.5625 +0.1562 0.6562 0.5938 +0.1562 0.6562 0.625 +0.1562 0.6562 0.6562 +0.1562 0.6562 0.6875 +0.1562 0.6562 0.7188 +0.1562 0.6562 0.75 +0.1562 0.6562 0.7812 +0.1562 0.6562 0.8125 +0.1562 0.6562 0.8438 +0.1562 0.6562 0.875 +0.1562 0.6562 0.9062 +0.1562 0.6562 0.9375 +0.1562 0.6562 0.9688 +0.1562 0.6562 1 +0.1562 0.6875 0 +0.1562 0.6875 0.03125 +0.1562 0.6875 0.0625 +0.1562 0.6875 0.09375 +0.1562 0.6875 0.125 +0.1562 0.6875 0.1562 +0.1562 0.6875 0.1875 +0.1562 0.6875 0.2188 +0.1562 0.6875 0.25 +0.1562 0.6875 0.2812 +0.1562 0.6875 0.3125 +0.1562 0.6875 0.3438 +0.1562 0.6875 0.375 +0.1562 0.6875 0.4062 +0.1562 0.6875 0.4375 +0.1562 0.6875 0.4688 +0.1562 0.6875 0.5 +0.1562 0.6875 0.5312 +0.1562 0.6875 0.5625 +0.1562 0.6875 0.5938 +0.1562 0.6875 0.625 +0.1562 0.6875 0.6562 +0.1562 0.6875 0.6875 +0.1562 0.6875 0.7188 +0.1562 0.6875 0.75 +0.1562 0.6875 0.7812 +0.1562 0.6875 0.8125 +0.1562 0.6875 0.8438 +0.1562 0.6875 0.875 +0.1562 0.6875 0.9062 +0.1562 0.6875 0.9375 +0.1562 0.6875 0.9688 +0.1562 0.6875 1 +0.1562 0.7188 0 +0.1562 0.7188 0.03125 +0.1562 0.7188 0.0625 +0.1562 0.7188 0.09375 +0.1562 0.7188 0.125 +0.1562 0.7188 0.1562 +0.1562 0.7188 0.1875 +0.1562 0.7188 0.2188 +0.1562 0.7188 0.25 +0.1562 0.7188 0.2812 +0.1562 0.7188 0.3125 +0.1562 0.7188 0.3438 +0.1562 0.7188 0.375 +0.1562 0.7188 0.4062 +0.1562 0.7188 0.4375 +0.1562 0.7188 0.4688 +0.1562 0.7188 0.5 +0.1562 0.7188 0.5312 +0.1562 0.7188 0.5625 +0.1562 0.7188 0.5938 +0.1562 0.7188 0.625 +0.1562 0.7188 0.6562 +0.1562 0.7188 0.6875 +0.1562 0.7188 0.7188 +0.1562 0.7188 0.75 +0.1562 0.7188 0.7812 +0.1562 0.7188 0.8125 +0.1562 0.7188 0.8438 +0.1562 0.7188 0.875 +0.1562 0.7188 0.9062 +0.1562 0.7188 0.9375 +0.1562 0.7188 0.9688 +0.1562 0.7188 1 +0.1562 0.75 0 +0.1562 0.75 0.03125 +0.1562 0.75 0.0625 +0.1562 0.75 0.09375 +0.1562 0.75 0.125 +0.1562 0.75 0.1562 +0.1562 0.75 0.1875 +0.1562 0.75 0.2188 +0.1562 0.75 0.25 +0.1562 0.75 0.2812 +0.1562 0.75 0.3125 +0.1562 0.75 0.3438 +0.1562 0.75 0.375 +0.1562 0.75 0.4062 +0.1562 0.75 0.4375 +0.1562 0.75 0.4688 +0.1562 0.75 0.5 +0.1562 0.75 0.5312 +0.1562 0.75 0.5625 +0.1562 0.75 0.5938 +0.1562 0.75 0.625 +0.1562 0.75 0.6562 +0.1562 0.75 0.6875 +0.1562 0.75 0.7188 +0.1562 0.75 0.75 +0.1562 0.75 0.7812 +0.1562 0.75 0.8125 +0.1562 0.75 0.8438 +0.1562 0.75 0.875 +0.1562 0.75 0.9062 +0.1562 0.75 0.9375 +0.1562 0.75 0.9688 +0.1562 0.75 1 +0.1562 0.7812 0 +0.1562 0.7812 0.03125 +0.1562 0.7812 0.0625 +0.1562 0.7812 0.09375 +0.1562 0.7812 0.125 +0.1562 0.7812 0.1562 +0.1562 0.7812 0.1875 +0.1562 0.7812 0.2188 +0.1562 0.7812 0.25 +0.1562 0.7812 0.2812 +0.1562 0.7812 0.3125 +0.1562 0.7812 0.3438 +0.1562 0.7812 0.375 +0.1562 0.7812 0.4062 +0.1562 0.7812 0.4375 +0.1562 0.7812 0.4688 +0.1562 0.7812 0.5 +0.1562 0.7812 0.5312 +0.1562 0.7812 0.5625 +0.1562 0.7812 0.5938 +0.1562 0.7812 0.625 +0.1562 0.7812 0.6562 +0.1562 0.7812 0.6875 +0.1562 0.7812 0.7188 +0.1562 0.7812 0.75 +0.1562 0.7812 0.7812 +0.1562 0.7812 0.8125 +0.1562 0.7812 0.8438 +0.1562 0.7812 0.875 +0.1562 0.7812 0.9062 +0.1562 0.7812 0.9375 +0.1562 0.7812 0.9688 +0.1562 0.7812 1 +0.1562 0.8125 0 +0.1562 0.8125 0.03125 +0.1562 0.8125 0.0625 +0.1562 0.8125 0.09375 +0.1562 0.8125 0.125 +0.1562 0.8125 0.1562 +0.1562 0.8125 0.1875 +0.1562 0.8125 0.2188 +0.1562 0.8125 0.25 +0.1562 0.8125 0.2812 +0.1562 0.8125 0.3125 +0.1562 0.8125 0.3438 +0.1562 0.8125 0.375 +0.1562 0.8125 0.4062 +0.1562 0.8125 0.4375 +0.1562 0.8125 0.4688 +0.1562 0.8125 0.5 +0.1562 0.8125 0.5312 +0.1562 0.8125 0.5625 +0.1562 0.8125 0.5938 +0.1562 0.8125 0.625 +0.1562 0.8125 0.6562 +0.1562 0.8125 0.6875 +0.1562 0.8125 0.7188 +0.1562 0.8125 0.75 +0.1562 0.8125 0.7812 +0.1562 0.8125 0.8125 +0.1562 0.8125 0.8438 +0.1562 0.8125 0.875 +0.1562 0.8125 0.9062 +0.1562 0.8125 0.9375 +0.1562 0.8125 0.9688 +0.1562 0.8125 1 +0.1562 0.8438 0 +0.1562 0.8438 0.03125 +0.1562 0.8438 0.0625 +0.1562 0.8438 0.09375 +0.1562 0.8438 0.125 +0.1562 0.8438 0.1562 +0.1562 0.8438 0.1875 +0.1562 0.8438 0.2188 +0.1562 0.8438 0.25 +0.1562 0.8438 0.2812 +0.1562 0.8438 0.3125 +0.1562 0.8438 0.3438 +0.1562 0.8438 0.375 +0.1562 0.8438 0.4062 +0.1562 0.8438 0.4375 +0.1562 0.8438 0.4688 +0.1562 0.8438 0.5 +0.1562 0.8438 0.5312 +0.1562 0.8438 0.5625 +0.1562 0.8438 0.5938 +0.1562 0.8438 0.625 +0.1562 0.8438 0.6562 +0.1562 0.8438 0.6875 +0.1562 0.8438 0.7188 +0.1562 0.8438 0.75 +0.1562 0.8438 0.7812 +0.1562 0.8438 0.8125 +0.1562 0.8438 0.8438 +0.1562 0.8438 0.875 +0.1562 0.8438 0.9062 +0.1562 0.8438 0.9375 +0.1562 0.8438 0.9688 +0.1562 0.8438 1 +0.1562 0.875 0 +0.1562 0.875 0.03125 +0.1562 0.875 0.0625 +0.1562 0.875 0.09375 +0.1562 0.875 0.125 +0.1562 0.875 0.1562 +0.1562 0.875 0.1875 +0.1562 0.875 0.2188 +0.1562 0.875 0.25 +0.1562 0.875 0.2812 +0.1562 0.875 0.3125 +0.1562 0.875 0.3438 +0.1562 0.875 0.375 +0.1562 0.875 0.4062 +0.1562 0.875 0.4375 +0.1562 0.875 0.4688 +0.1562 0.875 0.5 +0.1562 0.875 0.5312 +0.1562 0.875 0.5625 +0.1562 0.875 0.5938 +0.1562 0.875 0.625 +0.1562 0.875 0.6562 +0.1562 0.875 0.6875 +0.1562 0.875 0.7188 +0.1562 0.875 0.75 +0.1562 0.875 0.7812 +0.1562 0.875 0.8125 +0.1562 0.875 0.8438 +0.1562 0.875 0.875 +0.1562 0.875 0.9062 +0.1562 0.875 0.9375 +0.1562 0.875 0.9688 +0.1562 0.875 1 +0.1562 0.9062 0 +0.1562 0.9062 0.03125 +0.1562 0.9062 0.0625 +0.1562 0.9062 0.09375 +0.1562 0.9062 0.125 +0.1562 0.9062 0.1562 +0.1562 0.9062 0.1875 +0.1562 0.9062 0.2188 +0.1562 0.9062 0.25 +0.1562 0.9062 0.2812 +0.1562 0.9062 0.3125 +0.1562 0.9062 0.3438 +0.1562 0.9062 0.375 +0.1562 0.9062 0.4062 +0.1562 0.9062 0.4375 +0.1562 0.9062 0.4688 +0.1562 0.9062 0.5 +0.1562 0.9062 0.5312 +0.1562 0.9062 0.5625 +0.1562 0.9062 0.5938 +0.1562 0.9062 0.625 +0.1562 0.9062 0.6562 +0.1562 0.9062 0.6875 +0.1562 0.9062 0.7188 +0.1562 0.9062 0.75 +0.1562 0.9062 0.7812 +0.1562 0.9062 0.8125 +0.1562 0.9062 0.8438 +0.1562 0.9062 0.875 +0.1562 0.9062 0.9062 +0.1562 0.9062 0.9375 +0.1562 0.9062 0.9688 +0.1562 0.9062 1 +0.1562 0.9375 0 +0.1562 0.9375 0.03125 +0.1562 0.9375 0.0625 +0.1562 0.9375 0.09375 +0.1562 0.9375 0.125 +0.1562 0.9375 0.1562 +0.1562 0.9375 0.1875 +0.1562 0.9375 0.2188 +0.1562 0.9375 0.25 +0.1562 0.9375 0.2812 +0.1562 0.9375 0.3125 +0.1562 0.9375 0.3438 +0.1562 0.9375 0.375 +0.1562 0.9375 0.4062 +0.1562 0.9375 0.4375 +0.1562 0.9375 0.4688 +0.1562 0.9375 0.5 +0.1562 0.9375 0.5312 +0.1562 0.9375 0.5625 +0.1562 0.9375 0.5938 +0.1562 0.9375 0.625 +0.1562 0.9375 0.6562 +0.1562 0.9375 0.6875 +0.1562 0.9375 0.7188 +0.1562 0.9375 0.75 +0.1562 0.9375 0.7812 +0.1562 0.9375 0.8125 +0.1562 0.9375 0.8438 +0.1562 0.9375 0.875 +0.1562 0.9375 0.9062 +0.1562 0.9375 0.9375 +0.1562 0.9375 0.9688 +0.1562 0.9375 1 +0.1562 0.9688 0 +0.1562 0.9688 0.03125 +0.1562 0.9688 0.0625 +0.1562 0.9688 0.09375 +0.1562 0.9688 0.125 +0.1562 0.9688 0.1562 +0.1562 0.9688 0.1875 +0.1562 0.9688 0.2188 +0.1562 0.9688 0.25 +0.1562 0.9688 0.2812 +0.1562 0.9688 0.3125 +0.1562 0.9688 0.3438 +0.1562 0.9688 0.375 +0.1562 0.9688 0.4062 +0.1562 0.9688 0.4375 +0.1562 0.9688 0.4688 +0.1562 0.9688 0.5 +0.1562 0.9688 0.5312 +0.1562 0.9688 0.5625 +0.1562 0.9688 0.5938 +0.1562 0.9688 0.625 +0.1562 0.9688 0.6562 +0.1562 0.9688 0.6875 +0.1562 0.9688 0.7188 +0.1562 0.9688 0.75 +0.1562 0.9688 0.7812 +0.1562 0.9688 0.8125 +0.1562 0.9688 0.8438 +0.1562 0.9688 0.875 +0.1562 0.9688 0.9062 +0.1562 0.9688 0.9375 +0.1562 0.9688 0.9688 +0.1562 0.9688 1 +0.1562 1 0 +0.1562 1 0.03125 +0.1562 1 0.0625 +0.1562 1 0.09375 +0.1562 1 0.125 +0.1562 1 0.1562 +0.1562 1 0.1875 +0.1562 1 0.2188 +0.1562 1 0.25 +0.1562 1 0.2812 +0.1562 1 0.3125 +0.1562 1 0.3438 +0.1562 1 0.375 +0.1562 1 0.4062 +0.1562 1 0.4375 +0.1562 1 0.4688 +0.1562 1 0.5 +0.1562 1 0.5312 +0.1562 1 0.5625 +0.1562 1 0.5938 +0.1562 1 0.625 +0.1562 1 0.6562 +0.1562 1 0.6875 +0.1562 1 0.7188 +0.1562 1 0.75 +0.1562 1 0.7812 +0.1562 1 0.8125 +0.1562 1 0.8438 +0.1562 1 0.875 +0.1562 1 0.9062 +0.1562 1 0.9375 +0.1562 1 0.9688 +0.1562 1 1 +0.1875 0 0 +0.1875 0 0.03125 +0.1875 0 0.0625 +0.1875 0 0.09375 +0.1875 0 0.125 +0.1875 0 0.1562 +0.1875 0 0.1875 +0.1875 0 0.2188 +0.1875 0 0.25 +0.1875 0 0.2812 +0.1875 0 0.3125 +0.1875 0 0.3438 +0.1875 0 0.375 +0.1875 0 0.4062 +0.1875 0 0.4375 +0.1875 0 0.4688 +0.1875 0 0.5 +0.1875 0 0.5312 +0.1875 0 0.5625 +0.1875 0 0.5938 +0.1875 0 0.625 +0.1875 0 0.6562 +0.1875 0 0.6875 +0.1875 0 0.7188 +0.1875 0 0.75 +0.1875 0 0.7812 +0.1875 0 0.8125 +0.1875 0 0.8438 +0.1875 0 0.875 +0.1875 0 0.9062 +0.1875 0 0.9375 +0.1875 0 0.9688 +0.1875 0 1 +0.1875 0.03125 0 +0.1875 0.03125 0.03125 +0.1875 0.03125 0.0625 +0.1875 0.03125 0.09375 +0.1875 0.03125 0.125 +0.1875 0.03125 0.1562 +0.1875 0.03125 0.1875 +0.1875 0.03125 0.2188 +0.1875 0.03125 0.25 +0.1875 0.03125 0.2812 +0.1875 0.03125 0.3125 +0.1875 0.03125 0.3438 +0.1875 0.03125 0.375 +0.1875 0.03125 0.4062 +0.1875 0.03125 0.4375 +0.1875 0.03125 0.4688 +0.1875 0.03125 0.5 +0.1875 0.03125 0.5312 +0.1875 0.03125 0.5625 +0.1875 0.03125 0.5938 +0.1875 0.03125 0.625 +0.1875 0.03125 0.6562 +0.1875 0.03125 0.6875 +0.1875 0.03125 0.7188 +0.1875 0.03125 0.75 +0.1875 0.03125 0.7812 +0.1875 0.03125 0.8125 +0.1875 0.03125 0.8438 +0.1875 0.03125 0.875 +0.1875 0.03125 0.9062 +0.1875 0.03125 0.9375 +0.1875 0.03125 0.9688 +0.1875 0.03125 1 +0.1875 0.0625 0 +0.1875 0.0625 0.03125 +0.1875 0.0625 0.0625 +0.1875 0.0625 0.09375 +0.1875 0.0625 0.125 +0.1875 0.0625 0.1562 +0.1875 0.0625 0.1875 +0.1875 0.0625 0.2188 +0.1875 0.0625 0.25 +0.1875 0.0625 0.2812 +0.1875 0.0625 0.3125 +0.1875 0.0625 0.3438 +0.1875 0.0625 0.375 +0.1875 0.0625 0.4062 +0.1875 0.0625 0.4375 +0.1875 0.0625 0.4688 +0.1875 0.0625 0.5 +0.1875 0.0625 0.5312 +0.1875 0.0625 0.5625 +0.1875 0.0625 0.5938 +0.1875 0.0625 0.625 +0.1875 0.0625 0.6562 +0.1875 0.0625 0.6875 +0.1875 0.0625 0.7188 +0.1875 0.0625 0.75 +0.1875 0.0625 0.7812 +0.1875 0.0625 0.8125 +0.1875 0.0625 0.8438 +0.1875 0.0625 0.875 +0.1875 0.0625 0.9062 +0.1875 0.0625 0.9375 +0.1875 0.0625 0.9688 +0.1875 0.0625 1 +0.1875 0.09375 0 +0.1875 0.09375 0.03125 +0.1875 0.09375 0.0625 +0.1875 0.09375 0.09375 +0.1875 0.09375 0.125 +0.1875 0.09375 0.1562 +0.1875 0.09375 0.1875 +0.1875 0.09375 0.2188 +0.1875 0.09375 0.25 +0.1875 0.09375 0.2812 +0.1875 0.09375 0.3125 +0.1875 0.09375 0.3438 +0.1875 0.09375 0.375 +0.1875 0.09375 0.4062 +0.1875 0.09375 0.4375 +0.1875 0.09375 0.4688 +0.1875 0.09375 0.5 +0.1875 0.09375 0.5312 +0.1875 0.09375 0.5625 +0.1875 0.09375 0.5938 +0.1875 0.09375 0.625 +0.1875 0.09375 0.6562 +0.1875 0.09375 0.6875 +0.1875 0.09375 0.7188 +0.1875 0.09375 0.75 +0.1875 0.09375 0.7812 +0.1875 0.09375 0.8125 +0.1875 0.09375 0.8438 +0.1875 0.09375 0.875 +0.1875 0.09375 0.9062 +0.1875 0.09375 0.9375 +0.1875 0.09375 0.9688 +0.1875 0.09375 1 +0.1875 0.125 0 +0.1875 0.125 0.03125 +0.1875 0.125 0.0625 +0.1875 0.125 0.09375 +0.1875 0.125 0.125 +0.1875 0.125 0.1562 +0.1875 0.125 0.1875 +0.1875 0.125 0.2188 +0.1875 0.125 0.25 +0.1875 0.125 0.2812 +0.1875 0.125 0.3125 +0.1875 0.125 0.3438 +0.1875 0.125 0.375 +0.1875 0.125 0.4062 +0.1875 0.125 0.4375 +0.1875 0.125 0.4688 +0.1875 0.125 0.5 +0.1875 0.125 0.5312 +0.1875 0.125 0.5625 +0.1875 0.125 0.5938 +0.1875 0.125 0.625 +0.1875 0.125 0.6562 +0.1875 0.125 0.6875 +0.1875 0.125 0.7188 +0.1875 0.125 0.75 +0.1875 0.125 0.7812 +0.1875 0.125 0.8125 +0.1875 0.125 0.8438 +0.1875 0.125 0.875 +0.1875 0.125 0.9062 +0.1875 0.125 0.9375 +0.1875 0.125 0.9688 +0.1875 0.125 1 +0.1875 0.1562 0 +0.1875 0.1562 0.03125 +0.1875 0.1562 0.0625 +0.1875 0.1562 0.09375 +0.1875 0.1562 0.125 +0.1875 0.1562 0.1562 +0.1875 0.1562 0.1875 +0.1875 0.1562 0.2188 +0.1875 0.1562 0.25 +0.1875 0.1562 0.2812 +0.1875 0.1562 0.3125 +0.1875 0.1562 0.3438 +0.1875 0.1562 0.375 +0.1875 0.1562 0.4062 +0.1875 0.1562 0.4375 +0.1875 0.1562 0.4688 +0.1875 0.1562 0.5 +0.1875 0.1562 0.5312 +0.1875 0.1562 0.5625 +0.1875 0.1562 0.5938 +0.1875 0.1562 0.625 +0.1875 0.1562 0.6562 +0.1875 0.1562 0.6875 +0.1875 0.1562 0.7188 +0.1875 0.1562 0.75 +0.1875 0.1562 0.7812 +0.1875 0.1562 0.8125 +0.1875 0.1562 0.8438 +0.1875 0.1562 0.875 +0.1875 0.1562 0.9062 +0.1875 0.1562 0.9375 +0.1875 0.1562 0.9688 +0.1875 0.1562 1 +0.1875 0.1875 0 +0.1875 0.1875 0.03125 +0.1875 0.1875 0.0625 +0.1875 0.1875 0.09375 +0.1875 0.1875 0.125 +0.1875 0.1875 0.1562 +0.1875 0.1875 0.1875 +0.1875 0.1875 0.2188 +0.1875 0.1875 0.25 +0.1875 0.1875 0.2812 +0.1875 0.1875 0.3125 +0.1875 0.1875 0.3438 +0.1875 0.1875 0.375 +0.1875 0.1875 0.4062 +0.1875 0.1875 0.4375 +0.1875 0.1875 0.4688 +0.1875 0.1875 0.5 +0.1875 0.1875 0.5312 +0.1875 0.1875 0.5625 +0.1875 0.1875 0.5938 +0.1875 0.1875 0.625 +0.1875 0.1875 0.6562 +0.1875 0.1875 0.6875 +0.1875 0.1875 0.7188 +0.1875 0.1875 0.75 +0.1875 0.1875 0.7812 +0.1875 0.1875 0.8125 +0.1875 0.1875 0.8438 +0.1875 0.1875 0.875 +0.1875 0.1875 0.9062 +0.1875 0.1875 0.9375 +0.1875 0.1875 0.9688 +0.1875 0.1875 1 +0.1875 0.2188 0 +0.1875 0.2188 0.03125 +0.1875 0.2188 0.0625 +0.1875 0.2188 0.09375 +0.1875 0.2188 0.125 +0.1875 0.2188 0.1562 +0.1875 0.2188 0.1875 +0.1875 0.2188 0.2188 +0.1875 0.2188 0.25 +0.1875 0.2188 0.2812 +0.1875 0.2188 0.3125 +0.1875 0.2188 0.3438 +0.1875 0.2188 0.375 +0.1875 0.2188 0.4062 +0.1875 0.2188 0.4375 +0.1875 0.2188 0.4688 +0.1875 0.2188 0.5 +0.1875 0.2188 0.5312 +0.1875 0.2188 0.5625 +0.1875 0.2188 0.5938 +0.1875 0.2188 0.625 +0.1875 0.2188 0.6562 +0.1875 0.2188 0.6875 +0.1875 0.2188 0.7188 +0.1875 0.2188 0.75 +0.1875 0.2188 0.7812 +0.1875 0.2188 0.8125 +0.1875 0.2188 0.8438 +0.1875 0.2188 0.875 +0.1875 0.2188 0.9062 +0.1875 0.2188 0.9375 +0.1875 0.2188 0.9688 +0.1875 0.2188 1 +0.1875 0.25 0 +0.1875 0.25 0.03125 +0.1875 0.25 0.0625 +0.1875 0.25 0.09375 +0.1875 0.25 0.125 +0.1875 0.25 0.1562 +0.1875 0.25 0.1875 +0.1875 0.25 0.2188 +0.1875 0.25 0.25 +0.1875 0.25 0.2812 +0.1875 0.25 0.3125 +0.1875 0.25 0.3438 +0.1875 0.25 0.375 +0.1875 0.25 0.4062 +0.1875 0.25 0.4375 +0.1875 0.25 0.4688 +0.1875 0.25 0.5 +0.1875 0.25 0.5312 +0.1875 0.25 0.5625 +0.1875 0.25 0.5938 +0.1875 0.25 0.625 +0.1875 0.25 0.6562 +0.1875 0.25 0.6875 +0.1875 0.25 0.7188 +0.1875 0.25 0.75 +0.1875 0.25 0.7812 +0.1875 0.25 0.8125 +0.1875 0.25 0.8438 +0.1875 0.25 0.875 +0.1875 0.25 0.9062 +0.1875 0.25 0.9375 +0.1875 0.25 0.9688 +0.1875 0.25 1 +0.1875 0.2812 0 +0.1875 0.2812 0.03125 +0.1875 0.2812 0.0625 +0.1875 0.2812 0.09375 +0.1875 0.2812 0.125 +0.1875 0.2812 0.1562 +0.1875 0.2812 0.1875 +0.1875 0.2812 0.2188 +0.1875 0.2812 0.25 +0.1875 0.2812 0.2812 +0.1875 0.2812 0.3125 +0.1875 0.2812 0.3438 +0.1875 0.2812 0.375 +0.1875 0.2812 0.4062 +0.1875 0.2812 0.4375 +0.1875 0.2812 0.4688 +0.1875 0.2812 0.5 +0.1875 0.2812 0.5312 +0.1875 0.2812 0.5625 +0.1875 0.2812 0.5938 +0.1875 0.2812 0.625 +0.1875 0.2812 0.6562 +0.1875 0.2812 0.6875 +0.1875 0.2812 0.7188 +0.1875 0.2812 0.75 +0.1875 0.2812 0.7812 +0.1875 0.2812 0.8125 +0.1875 0.2812 0.8438 +0.1875 0.2812 0.875 +0.1875 0.2812 0.9062 +0.1875 0.2812 0.9375 +0.1875 0.2812 0.9688 +0.1875 0.2812 1 +0.1875 0.3125 0 +0.1875 0.3125 0.03125 +0.1875 0.3125 0.0625 +0.1875 0.3125 0.09375 +0.1875 0.3125 0.125 +0.1875 0.3125 0.1562 +0.1875 0.3125 0.1875 +0.1875 0.3125 0.2188 +0.1875 0.3125 0.25 +0.1875 0.3125 0.2812 +0.1875 0.3125 0.3125 +0.1875 0.3125 0.3438 +0.1875 0.3125 0.375 +0.1875 0.3125 0.4062 +0.1875 0.3125 0.4375 +0.1875 0.3125 0.4688 +0.1875 0.3125 0.5 +0.1875 0.3125 0.5312 +0.1875 0.3125 0.5625 +0.1875 0.3125 0.5938 +0.1875 0.3125 0.625 +0.1875 0.3125 0.6562 +0.1875 0.3125 0.6875 +0.1875 0.3125 0.7188 +0.1875 0.3125 0.75 +0.1875 0.3125 0.7812 +0.1875 0.3125 0.8125 +0.1875 0.3125 0.8438 +0.1875 0.3125 0.875 +0.1875 0.3125 0.9062 +0.1875 0.3125 0.9375 +0.1875 0.3125 0.9688 +0.1875 0.3125 1 +0.1875 0.3438 0 +0.1875 0.3438 0.03125 +0.1875 0.3438 0.0625 +0.1875 0.3438 0.09375 +0.1875 0.3438 0.125 +0.1875 0.3438 0.1562 +0.1875 0.3438 0.1875 +0.1875 0.3438 0.2188 +0.1875 0.3438 0.25 +0.1875 0.3438 0.2812 +0.1875 0.3438 0.3125 +0.1875 0.3438 0.3438 +0.1875 0.3438 0.375 +0.1875 0.3438 0.4062 +0.1875 0.3438 0.4375 +0.1875 0.3438 0.4688 +0.1875 0.3438 0.5 +0.1875 0.3438 0.5312 +0.1875 0.3438 0.5625 +0.1875 0.3438 0.5938 +0.1875 0.3438 0.625 +0.1875 0.3438 0.6562 +0.1875 0.3438 0.6875 +0.1875 0.3438 0.7188 +0.1875 0.3438 0.75 +0.1875 0.3438 0.7812 +0.1875 0.3438 0.8125 +0.1875 0.3438 0.8438 +0.1875 0.3438 0.875 +0.1875 0.3438 0.9062 +0.1875 0.3438 0.9375 +0.1875 0.3438 0.9688 +0.1875 0.3438 1 +0.1875 0.375 0 +0.1875 0.375 0.03125 +0.1875 0.375 0.0625 +0.1875 0.375 0.09375 +0.1875 0.375 0.125 +0.1875 0.375 0.1562 +0.1875 0.375 0.1875 +0.1875 0.375 0.2188 +0.1875 0.375 0.25 +0.1875 0.375 0.2812 +0.1875 0.375 0.3125 +0.1875 0.375 0.3438 +0.1875 0.375 0.375 +0.1875 0.375 0.4062 +0.1875 0.375 0.4375 +0.1875 0.375 0.4688 +0.1875 0.375 0.5 +0.1875 0.375 0.5312 +0.1875 0.375 0.5625 +0.1875 0.375 0.5938 +0.1875 0.375 0.625 +0.1875 0.375 0.6562 +0.1875 0.375 0.6875 +0.1875 0.375 0.7188 +0.1875 0.375 0.75 +0.1875 0.375 0.7812 +0.1875 0.375 0.8125 +0.1875 0.375 0.8438 +0.1875 0.375 0.875 +0.1875 0.375 0.9062 +0.1875 0.375 0.9375 +0.1875 0.375 0.9688 +0.1875 0.375 1 +0.1875 0.4062 0 +0.1875 0.4062 0.03125 +0.1875 0.4062 0.0625 +0.1875 0.4062 0.09375 +0.1875 0.4062 0.125 +0.1875 0.4062 0.1562 +0.1875 0.4062 0.1875 +0.1875 0.4062 0.2188 +0.1875 0.4062 0.25 +0.1875 0.4062 0.2812 +0.1875 0.4062 0.3125 +0.1875 0.4062 0.3438 +0.1875 0.4062 0.375 +0.1875 0.4062 0.4062 +0.1875 0.4062 0.4375 +0.1875 0.4062 0.4688 +0.1875 0.4062 0.5 +0.1875 0.4062 0.5312 +0.1875 0.4062 0.5625 +0.1875 0.4062 0.5938 +0.1875 0.4062 0.625 +0.1875 0.4062 0.6562 +0.1875 0.4062 0.6875 +0.1875 0.4062 0.7188 +0.1875 0.4062 0.75 +0.1875 0.4062 0.7812 +0.1875 0.4062 0.8125 +0.1875 0.4062 0.8438 +0.1875 0.4062 0.875 +0.1875 0.4062 0.9062 +0.1875 0.4062 0.9375 +0.1875 0.4062 0.9688 +0.1875 0.4062 1 +0.1875 0.4375 0 +0.1875 0.4375 0.03125 +0.1875 0.4375 0.0625 +0.1875 0.4375 0.09375 +0.1875 0.4375 0.125 +0.1875 0.4375 0.1562 +0.1875 0.4375 0.1875 +0.1875 0.4375 0.2188 +0.1875 0.4375 0.25 +0.1875 0.4375 0.2812 +0.1875 0.4375 0.3125 +0.1875 0.4375 0.3438 +0.1875 0.4375 0.375 +0.1875 0.4375 0.4062 +0.1875 0.4375 0.4375 +0.1875 0.4375 0.4688 +0.1875 0.4375 0.5 +0.1875 0.4375 0.5312 +0.1875 0.4375 0.5625 +0.1875 0.4375 0.5938 +0.1875 0.4375 0.625 +0.1875 0.4375 0.6562 +0.1875 0.4375 0.6875 +0.1875 0.4375 0.7188 +0.1875 0.4375 0.75 +0.1875 0.4375 0.7812 +0.1875 0.4375 0.8125 +0.1875 0.4375 0.8438 +0.1875 0.4375 0.875 +0.1875 0.4375 0.9062 +0.1875 0.4375 0.9375 +0.1875 0.4375 0.9688 +0.1875 0.4375 1 +0.1875 0.4688 0 +0.1875 0.4688 0.03125 +0.1875 0.4688 0.0625 +0.1875 0.4688 0.09375 +0.1875 0.4688 0.125 +0.1875 0.4688 0.1562 +0.1875 0.4688 0.1875 +0.1875 0.4688 0.2188 +0.1875 0.4688 0.25 +0.1875 0.4688 0.2812 +0.1875 0.4688 0.3125 +0.1875 0.4688 0.3438 +0.1875 0.4688 0.375 +0.1875 0.4688 0.4062 +0.1875 0.4688 0.4375 +0.1875 0.4688 0.4688 +0.1875 0.4688 0.5 +0.1875 0.4688 0.5312 +0.1875 0.4688 0.5625 +0.1875 0.4688 0.5938 +0.1875 0.4688 0.625 +0.1875 0.4688 0.6562 +0.1875 0.4688 0.6875 +0.1875 0.4688 0.7188 +0.1875 0.4688 0.75 +0.1875 0.4688 0.7812 +0.1875 0.4688 0.8125 +0.1875 0.4688 0.8438 +0.1875 0.4688 0.875 +0.1875 0.4688 0.9062 +0.1875 0.4688 0.9375 +0.1875 0.4688 0.9688 +0.1875 0.4688 1 +0.1875 0.5 0 +0.1875 0.5 0.03125 +0.1875 0.5 0.0625 +0.1875 0.5 0.09375 +0.1875 0.5 0.125 +0.1875 0.5 0.1562 +0.1875 0.5 0.1875 +0.1875 0.5 0.2188 +0.1875 0.5 0.25 +0.1875 0.5 0.2812 +0.1875 0.5 0.3125 +0.1875 0.5 0.3438 +0.1875 0.5 0.375 +0.1875 0.5 0.4062 +0.1875 0.5 0.4375 +0.1875 0.5 0.4688 +0.1875 0.5 0.5 +0.1875 0.5 0.5312 +0.1875 0.5 0.5625 +0.1875 0.5 0.5938 +0.1875 0.5 0.625 +0.1875 0.5 0.6562 +0.1875 0.5 0.6875 +0.1875 0.5 0.7188 +0.1875 0.5 0.75 +0.1875 0.5 0.7812 +0.1875 0.5 0.8125 +0.1875 0.5 0.8438 +0.1875 0.5 0.875 +0.1875 0.5 0.9062 +0.1875 0.5 0.9375 +0.1875 0.5 0.9688 +0.1875 0.5 1 +0.1875 0.5312 0 +0.1875 0.5312 0.03125 +0.1875 0.5312 0.0625 +0.1875 0.5312 0.09375 +0.1875 0.5312 0.125 +0.1875 0.5312 0.1562 +0.1875 0.5312 0.1875 +0.1875 0.5312 0.2188 +0.1875 0.5312 0.25 +0.1875 0.5312 0.2812 +0.1875 0.5312 0.3125 +0.1875 0.5312 0.3438 +0.1875 0.5312 0.375 +0.1875 0.5312 0.4062 +0.1875 0.5312 0.4375 +0.1875 0.5312 0.4688 +0.1875 0.5312 0.5 +0.1875 0.5312 0.5312 +0.1875 0.5312 0.5625 +0.1875 0.5312 0.5938 +0.1875 0.5312 0.625 +0.1875 0.5312 0.6562 +0.1875 0.5312 0.6875 +0.1875 0.5312 0.7188 +0.1875 0.5312 0.75 +0.1875 0.5312 0.7812 +0.1875 0.5312 0.8125 +0.1875 0.5312 0.8438 +0.1875 0.5312 0.875 +0.1875 0.5312 0.9062 +0.1875 0.5312 0.9375 +0.1875 0.5312 0.9688 +0.1875 0.5312 1 +0.1875 0.5625 0 +0.1875 0.5625 0.03125 +0.1875 0.5625 0.0625 +0.1875 0.5625 0.09375 +0.1875 0.5625 0.125 +0.1875 0.5625 0.1562 +0.1875 0.5625 0.1875 +0.1875 0.5625 0.2188 +0.1875 0.5625 0.25 +0.1875 0.5625 0.2812 +0.1875 0.5625 0.3125 +0.1875 0.5625 0.3438 +0.1875 0.5625 0.375 +0.1875 0.5625 0.4062 +0.1875 0.5625 0.4375 +0.1875 0.5625 0.4688 +0.1875 0.5625 0.5 +0.1875 0.5625 0.5312 +0.1875 0.5625 0.5625 +0.1875 0.5625 0.5938 +0.1875 0.5625 0.625 +0.1875 0.5625 0.6562 +0.1875 0.5625 0.6875 +0.1875 0.5625 0.7188 +0.1875 0.5625 0.75 +0.1875 0.5625 0.7812 +0.1875 0.5625 0.8125 +0.1875 0.5625 0.8438 +0.1875 0.5625 0.875 +0.1875 0.5625 0.9062 +0.1875 0.5625 0.9375 +0.1875 0.5625 0.9688 +0.1875 0.5625 1 +0.1875 0.5938 0 +0.1875 0.5938 0.03125 +0.1875 0.5938 0.0625 +0.1875 0.5938 0.09375 +0.1875 0.5938 0.125 +0.1875 0.5938 0.1562 +0.1875 0.5938 0.1875 +0.1875 0.5938 0.2188 +0.1875 0.5938 0.25 +0.1875 0.5938 0.2812 +0.1875 0.5938 0.3125 +0.1875 0.5938 0.3438 +0.1875 0.5938 0.375 +0.1875 0.5938 0.4062 +0.1875 0.5938 0.4375 +0.1875 0.5938 0.4688 +0.1875 0.5938 0.5 +0.1875 0.5938 0.5312 +0.1875 0.5938 0.5625 +0.1875 0.5938 0.5938 +0.1875 0.5938 0.625 +0.1875 0.5938 0.6562 +0.1875 0.5938 0.6875 +0.1875 0.5938 0.7188 +0.1875 0.5938 0.75 +0.1875 0.5938 0.7812 +0.1875 0.5938 0.8125 +0.1875 0.5938 0.8438 +0.1875 0.5938 0.875 +0.1875 0.5938 0.9062 +0.1875 0.5938 0.9375 +0.1875 0.5938 0.9688 +0.1875 0.5938 1 +0.1875 0.625 0 +0.1875 0.625 0.03125 +0.1875 0.625 0.0625 +0.1875 0.625 0.09375 +0.1875 0.625 0.125 +0.1875 0.625 0.1562 +0.1875 0.625 0.1875 +0.1875 0.625 0.2188 +0.1875 0.625 0.25 +0.1875 0.625 0.2812 +0.1875 0.625 0.3125 +0.1875 0.625 0.3438 +0.1875 0.625 0.375 +0.1875 0.625 0.4062 +0.1875 0.625 0.4375 +0.1875 0.625 0.4688 +0.1875 0.625 0.5 +0.1875 0.625 0.5312 +0.1875 0.625 0.5625 +0.1875 0.625 0.5938 +0.1875 0.625 0.625 +0.1875 0.625 0.6562 +0.1875 0.625 0.6875 +0.1875 0.625 0.7188 +0.1875 0.625 0.75 +0.1875 0.625 0.7812 +0.1875 0.625 0.8125 +0.1875 0.625 0.8438 +0.1875 0.625 0.875 +0.1875 0.625 0.9062 +0.1875 0.625 0.9375 +0.1875 0.625 0.9688 +0.1875 0.625 1 +0.1875 0.6562 0 +0.1875 0.6562 0.03125 +0.1875 0.6562 0.0625 +0.1875 0.6562 0.09375 +0.1875 0.6562 0.125 +0.1875 0.6562 0.1562 +0.1875 0.6562 0.1875 +0.1875 0.6562 0.2188 +0.1875 0.6562 0.25 +0.1875 0.6562 0.2812 +0.1875 0.6562 0.3125 +0.1875 0.6562 0.3438 +0.1875 0.6562 0.375 +0.1875 0.6562 0.4062 +0.1875 0.6562 0.4375 +0.1875 0.6562 0.4688 +0.1875 0.6562 0.5 +0.1875 0.6562 0.5312 +0.1875 0.6562 0.5625 +0.1875 0.6562 0.5938 +0.1875 0.6562 0.625 +0.1875 0.6562 0.6562 +0.1875 0.6562 0.6875 +0.1875 0.6562 0.7188 +0.1875 0.6562 0.75 +0.1875 0.6562 0.7812 +0.1875 0.6562 0.8125 +0.1875 0.6562 0.8438 +0.1875 0.6562 0.875 +0.1875 0.6562 0.9062 +0.1875 0.6562 0.9375 +0.1875 0.6562 0.9688 +0.1875 0.6562 1 +0.1875 0.6875 0 +0.1875 0.6875 0.03125 +0.1875 0.6875 0.0625 +0.1875 0.6875 0.09375 +0.1875 0.6875 0.125 +0.1875 0.6875 0.1562 +0.1875 0.6875 0.1875 +0.1875 0.6875 0.2188 +0.1875 0.6875 0.25 +0.1875 0.6875 0.2812 +0.1875 0.6875 0.3125 +0.1875 0.6875 0.3438 +0.1875 0.6875 0.375 +0.1875 0.6875 0.4062 +0.1875 0.6875 0.4375 +0.1875 0.6875 0.4688 +0.1875 0.6875 0.5 +0.1875 0.6875 0.5312 +0.1875 0.6875 0.5625 +0.1875 0.6875 0.5938 +0.1875 0.6875 0.625 +0.1875 0.6875 0.6562 +0.1875 0.6875 0.6875 +0.1875 0.6875 0.7188 +0.1875 0.6875 0.75 +0.1875 0.6875 0.7812 +0.1875 0.6875 0.8125 +0.1875 0.6875 0.8438 +0.1875 0.6875 0.875 +0.1875 0.6875 0.9062 +0.1875 0.6875 0.9375 +0.1875 0.6875 0.9688 +0.1875 0.6875 1 +0.1875 0.7188 0 +0.1875 0.7188 0.03125 +0.1875 0.7188 0.0625 +0.1875 0.7188 0.09375 +0.1875 0.7188 0.125 +0.1875 0.7188 0.1562 +0.1875 0.7188 0.1875 +0.1875 0.7188 0.2188 +0.1875 0.7188 0.25 +0.1875 0.7188 0.2812 +0.1875 0.7188 0.3125 +0.1875 0.7188 0.3438 +0.1875 0.7188 0.375 +0.1875 0.7188 0.4062 +0.1875 0.7188 0.4375 +0.1875 0.7188 0.4688 +0.1875 0.7188 0.5 +0.1875 0.7188 0.5312 +0.1875 0.7188 0.5625 +0.1875 0.7188 0.5938 +0.1875 0.7188 0.625 +0.1875 0.7188 0.6562 +0.1875 0.7188 0.6875 +0.1875 0.7188 0.7188 +0.1875 0.7188 0.75 +0.1875 0.7188 0.7812 +0.1875 0.7188 0.8125 +0.1875 0.7188 0.8438 +0.1875 0.7188 0.875 +0.1875 0.7188 0.9062 +0.1875 0.7188 0.9375 +0.1875 0.7188 0.9688 +0.1875 0.7188 1 +0.1875 0.75 0 +0.1875 0.75 0.03125 +0.1875 0.75 0.0625 +0.1875 0.75 0.09375 +0.1875 0.75 0.125 +0.1875 0.75 0.1562 +0.1875 0.75 0.1875 +0.1875 0.75 0.2188 +0.1875 0.75 0.25 +0.1875 0.75 0.2812 +0.1875 0.75 0.3125 +0.1875 0.75 0.3438 +0.1875 0.75 0.375 +0.1875 0.75 0.4062 +0.1875 0.75 0.4375 +0.1875 0.75 0.4688 +0.1875 0.75 0.5 +0.1875 0.75 0.5312 +0.1875 0.75 0.5625 +0.1875 0.75 0.5938 +0.1875 0.75 0.625 +0.1875 0.75 0.6562 +0.1875 0.75 0.6875 +0.1875 0.75 0.7188 +0.1875 0.75 0.75 +0.1875 0.75 0.7812 +0.1875 0.75 0.8125 +0.1875 0.75 0.8438 +0.1875 0.75 0.875 +0.1875 0.75 0.9062 +0.1875 0.75 0.9375 +0.1875 0.75 0.9688 +0.1875 0.75 1 +0.1875 0.7812 0 +0.1875 0.7812 0.03125 +0.1875 0.7812 0.0625 +0.1875 0.7812 0.09375 +0.1875 0.7812 0.125 +0.1875 0.7812 0.1562 +0.1875 0.7812 0.1875 +0.1875 0.7812 0.2188 +0.1875 0.7812 0.25 +0.1875 0.7812 0.2812 +0.1875 0.7812 0.3125 +0.1875 0.7812 0.3438 +0.1875 0.7812 0.375 +0.1875 0.7812 0.4062 +0.1875 0.7812 0.4375 +0.1875 0.7812 0.4688 +0.1875 0.7812 0.5 +0.1875 0.7812 0.5312 +0.1875 0.7812 0.5625 +0.1875 0.7812 0.5938 +0.1875 0.7812 0.625 +0.1875 0.7812 0.6562 +0.1875 0.7812 0.6875 +0.1875 0.7812 0.7188 +0.1875 0.7812 0.75 +0.1875 0.7812 0.7812 +0.1875 0.7812 0.8125 +0.1875 0.7812 0.8438 +0.1875 0.7812 0.875 +0.1875 0.7812 0.9062 +0.1875 0.7812 0.9375 +0.1875 0.7812 0.9688 +0.1875 0.7812 1 +0.1875 0.8125 0 +0.1875 0.8125 0.03125 +0.1875 0.8125 0.0625 +0.1875 0.8125 0.09375 +0.1875 0.8125 0.125 +0.1875 0.8125 0.1562 +0.1875 0.8125 0.1875 +0.1875 0.8125 0.2188 +0.1875 0.8125 0.25 +0.1875 0.8125 0.2812 +0.1875 0.8125 0.3125 +0.1875 0.8125 0.3438 +0.1875 0.8125 0.375 +0.1875 0.8125 0.4062 +0.1875 0.8125 0.4375 +0.1875 0.8125 0.4688 +0.1875 0.8125 0.5 +0.1875 0.8125 0.5312 +0.1875 0.8125 0.5625 +0.1875 0.8125 0.5938 +0.1875 0.8125 0.625 +0.1875 0.8125 0.6562 +0.1875 0.8125 0.6875 +0.1875 0.8125 0.7188 +0.1875 0.8125 0.75 +0.1875 0.8125 0.7812 +0.1875 0.8125 0.8125 +0.1875 0.8125 0.8438 +0.1875 0.8125 0.875 +0.1875 0.8125 0.9062 +0.1875 0.8125 0.9375 +0.1875 0.8125 0.9688 +0.1875 0.8125 1 +0.1875 0.8438 0 +0.1875 0.8438 0.03125 +0.1875 0.8438 0.0625 +0.1875 0.8438 0.09375 +0.1875 0.8438 0.125 +0.1875 0.8438 0.1562 +0.1875 0.8438 0.1875 +0.1875 0.8438 0.2188 +0.1875 0.8438 0.25 +0.1875 0.8438 0.2812 +0.1875 0.8438 0.3125 +0.1875 0.8438 0.3438 +0.1875 0.8438 0.375 +0.1875 0.8438 0.4062 +0.1875 0.8438 0.4375 +0.1875 0.8438 0.4688 +0.1875 0.8438 0.5 +0.1875 0.8438 0.5312 +0.1875 0.8438 0.5625 +0.1875 0.8438 0.5938 +0.1875 0.8438 0.625 +0.1875 0.8438 0.6562 +0.1875 0.8438 0.6875 +0.1875 0.8438 0.7188 +0.1875 0.8438 0.75 +0.1875 0.8438 0.7812 +0.1875 0.8438 0.8125 +0.1875 0.8438 0.8438 +0.1875 0.8438 0.875 +0.1875 0.8438 0.9062 +0.1875 0.8438 0.9375 +0.1875 0.8438 0.9688 +0.1875 0.8438 1 +0.1875 0.875 0 +0.1875 0.875 0.03125 +0.1875 0.875 0.0625 +0.1875 0.875 0.09375 +0.1875 0.875 0.125 +0.1875 0.875 0.1562 +0.1875 0.875 0.1875 +0.1875 0.875 0.2188 +0.1875 0.875 0.25 +0.1875 0.875 0.2812 +0.1875 0.875 0.3125 +0.1875 0.875 0.3438 +0.1875 0.875 0.375 +0.1875 0.875 0.4062 +0.1875 0.875 0.4375 +0.1875 0.875 0.4688 +0.1875 0.875 0.5 +0.1875 0.875 0.5312 +0.1875 0.875 0.5625 +0.1875 0.875 0.5938 +0.1875 0.875 0.625 +0.1875 0.875 0.6562 +0.1875 0.875 0.6875 +0.1875 0.875 0.7188 +0.1875 0.875 0.75 +0.1875 0.875 0.7812 +0.1875 0.875 0.8125 +0.1875 0.875 0.8438 +0.1875 0.875 0.875 +0.1875 0.875 0.9062 +0.1875 0.875 0.9375 +0.1875 0.875 0.9688 +0.1875 0.875 1 +0.1875 0.9062 0 +0.1875 0.9062 0.03125 +0.1875 0.9062 0.0625 +0.1875 0.9062 0.09375 +0.1875 0.9062 0.125 +0.1875 0.9062 0.1562 +0.1875 0.9062 0.1875 +0.1875 0.9062 0.2188 +0.1875 0.9062 0.25 +0.1875 0.9062 0.2812 +0.1875 0.9062 0.3125 +0.1875 0.9062 0.3438 +0.1875 0.9062 0.375 +0.1875 0.9062 0.4062 +0.1875 0.9062 0.4375 +0.1875 0.9062 0.4688 +0.1875 0.9062 0.5 +0.1875 0.9062 0.5312 +0.1875 0.9062 0.5625 +0.1875 0.9062 0.5938 +0.1875 0.9062 0.625 +0.1875 0.9062 0.6562 +0.1875 0.9062 0.6875 +0.1875 0.9062 0.7188 +0.1875 0.9062 0.75 +0.1875 0.9062 0.7812 +0.1875 0.9062 0.8125 +0.1875 0.9062 0.8438 +0.1875 0.9062 0.875 +0.1875 0.9062 0.9062 +0.1875 0.9062 0.9375 +0.1875 0.9062 0.9688 +0.1875 0.9062 1 +0.1875 0.9375 0 +0.1875 0.9375 0.03125 +0.1875 0.9375 0.0625 +0.1875 0.9375 0.09375 +0.1875 0.9375 0.125 +0.1875 0.9375 0.1562 +0.1875 0.9375 0.1875 +0.1875 0.9375 0.2188 +0.1875 0.9375 0.25 +0.1875 0.9375 0.2812 +0.1875 0.9375 0.3125 +0.1875 0.9375 0.3438 +0.1875 0.9375 0.375 +0.1875 0.9375 0.4062 +0.1875 0.9375 0.4375 +0.1875 0.9375 0.4688 +0.1875 0.9375 0.5 +0.1875 0.9375 0.5312 +0.1875 0.9375 0.5625 +0.1875 0.9375 0.5938 +0.1875 0.9375 0.625 +0.1875 0.9375 0.6562 +0.1875 0.9375 0.6875 +0.1875 0.9375 0.7188 +0.1875 0.9375 0.75 +0.1875 0.9375 0.7812 +0.1875 0.9375 0.8125 +0.1875 0.9375 0.8438 +0.1875 0.9375 0.875 +0.1875 0.9375 0.9062 +0.1875 0.9375 0.9375 +0.1875 0.9375 0.9688 +0.1875 0.9375 1 +0.1875 0.9688 0 +0.1875 0.9688 0.03125 +0.1875 0.9688 0.0625 +0.1875 0.9688 0.09375 +0.1875 0.9688 0.125 +0.1875 0.9688 0.1562 +0.1875 0.9688 0.1875 +0.1875 0.9688 0.2188 +0.1875 0.9688 0.25 +0.1875 0.9688 0.2812 +0.1875 0.9688 0.3125 +0.1875 0.9688 0.3438 +0.1875 0.9688 0.375 +0.1875 0.9688 0.4062 +0.1875 0.9688 0.4375 +0.1875 0.9688 0.4688 +0.1875 0.9688 0.5 +0.1875 0.9688 0.5312 +0.1875 0.9688 0.5625 +0.1875 0.9688 0.5938 +0.1875 0.9688 0.625 +0.1875 0.9688 0.6562 +0.1875 0.9688 0.6875 +0.1875 0.9688 0.7188 +0.1875 0.9688 0.75 +0.1875 0.9688 0.7812 +0.1875 0.9688 0.8125 +0.1875 0.9688 0.8438 +0.1875 0.9688 0.875 +0.1875 0.9688 0.9062 +0.1875 0.9688 0.9375 +0.1875 0.9688 0.9688 +0.1875 0.9688 1 +0.1875 1 0 +0.1875 1 0.03125 +0.1875 1 0.0625 +0.1875 1 0.09375 +0.1875 1 0.125 +0.1875 1 0.1562 +0.1875 1 0.1875 +0.1875 1 0.2188 +0.1875 1 0.25 +0.1875 1 0.2812 +0.1875 1 0.3125 +0.1875 1 0.3438 +0.1875 1 0.375 +0.1875 1 0.4062 +0.1875 1 0.4375 +0.1875 1 0.4688 +0.1875 1 0.5 +0.1875 1 0.5312 +0.1875 1 0.5625 +0.1875 1 0.5938 +0.1875 1 0.625 +0.1875 1 0.6562 +0.1875 1 0.6875 +0.1875 1 0.7188 +0.1875 1 0.75 +0.1875 1 0.7812 +0.1875 1 0.8125 +0.1875 1 0.8438 +0.1875 1 0.875 +0.1875 1 0.9062 +0.1875 1 0.9375 +0.1875 1 0.9688 +0.1875 1 1 +0.2188 0 0 +0.2188 0 0.03125 +0.2188 0 0.0625 +0.2188 0 0.09375 +0.2188 0 0.125 +0.2188 0 0.1562 +0.2188 0 0.1875 +0.2188 0 0.2188 +0.2188 0 0.25 +0.2188 0 0.2812 +0.2188 0 0.3125 +0.2188 0 0.3438 +0.2188 0 0.375 +0.2188 0 0.4062 +0.2188 0 0.4375 +0.2188 0 0.4688 +0.2188 0 0.5 +0.2188 0 0.5312 +0.2188 0 0.5625 +0.2188 0 0.5938 +0.2188 0 0.625 +0.2188 0 0.6562 +0.2188 0 0.6875 +0.2188 0 0.7188 +0.2188 0 0.75 +0.2188 0 0.7812 +0.2188 0 0.8125 +0.2188 0 0.8438 +0.2188 0 0.875 +0.2188 0 0.9062 +0.2188 0 0.9375 +0.2188 0 0.9688 +0.2188 0 1 +0.2188 0.03125 0 +0.2188 0.03125 0.03125 +0.2188 0.03125 0.0625 +0.2188 0.03125 0.09375 +0.2188 0.03125 0.125 +0.2188 0.03125 0.1562 +0.2188 0.03125 0.1875 +0.2188 0.03125 0.2188 +0.2188 0.03125 0.25 +0.2188 0.03125 0.2812 +0.2188 0.03125 0.3125 +0.2188 0.03125 0.3438 +0.2188 0.03125 0.375 +0.2188 0.03125 0.4062 +0.2188 0.03125 0.4375 +0.2188 0.03125 0.4688 +0.2188 0.03125 0.5 +0.2188 0.03125 0.5312 +0.2188 0.03125 0.5625 +0.2188 0.03125 0.5938 +0.2188 0.03125 0.625 +0.2188 0.03125 0.6562 +0.2188 0.03125 0.6875 +0.2188 0.03125 0.7188 +0.2188 0.03125 0.75 +0.2188 0.03125 0.7812 +0.2188 0.03125 0.8125 +0.2188 0.03125 0.8438 +0.2188 0.03125 0.875 +0.2188 0.03125 0.9062 +0.2188 0.03125 0.9375 +0.2188 0.03125 0.9688 +0.2188 0.03125 1 +0.2188 0.0625 0 +0.2188 0.0625 0.03125 +0.2188 0.0625 0.0625 +0.2188 0.0625 0.09375 +0.2188 0.0625 0.125 +0.2188 0.0625 0.1562 +0.2188 0.0625 0.1875 +0.2188 0.0625 0.2188 +0.2188 0.0625 0.25 +0.2188 0.0625 0.2812 +0.2188 0.0625 0.3125 +0.2188 0.0625 0.3438 +0.2188 0.0625 0.375 +0.2188 0.0625 0.4062 +0.2188 0.0625 0.4375 +0.2188 0.0625 0.4688 +0.2188 0.0625 0.5 +0.2188 0.0625 0.5312 +0.2188 0.0625 0.5625 +0.2188 0.0625 0.5938 +0.2188 0.0625 0.625 +0.2188 0.0625 0.6562 +0.2188 0.0625 0.6875 +0.2188 0.0625 0.7188 +0.2188 0.0625 0.75 +0.2188 0.0625 0.7812 +0.2188 0.0625 0.8125 +0.2188 0.0625 0.8438 +0.2188 0.0625 0.875 +0.2188 0.0625 0.9062 +0.2188 0.0625 0.9375 +0.2188 0.0625 0.9688 +0.2188 0.0625 1 +0.2188 0.09375 0 +0.2188 0.09375 0.03125 +0.2188 0.09375 0.0625 +0.2188 0.09375 0.09375 +0.2188 0.09375 0.125 +0.2188 0.09375 0.1562 +0.2188 0.09375 0.1875 +0.2188 0.09375 0.2188 +0.2188 0.09375 0.25 +0.2188 0.09375 0.2812 +0.2188 0.09375 0.3125 +0.2188 0.09375 0.3438 +0.2188 0.09375 0.375 +0.2188 0.09375 0.4062 +0.2188 0.09375 0.4375 +0.2188 0.09375 0.4688 +0.2188 0.09375 0.5 +0.2188 0.09375 0.5312 +0.2188 0.09375 0.5625 +0.2188 0.09375 0.5938 +0.2188 0.09375 0.625 +0.2188 0.09375 0.6562 +0.2188 0.09375 0.6875 +0.2188 0.09375 0.7188 +0.2188 0.09375 0.75 +0.2188 0.09375 0.7812 +0.2188 0.09375 0.8125 +0.2188 0.09375 0.8438 +0.2188 0.09375 0.875 +0.2188 0.09375 0.9062 +0.2188 0.09375 0.9375 +0.2188 0.09375 0.9688 +0.2188 0.09375 1 +0.2188 0.125 0 +0.2188 0.125 0.03125 +0.2188 0.125 0.0625 +0.2188 0.125 0.09375 +0.2188 0.125 0.125 +0.2188 0.125 0.1562 +0.2188 0.125 0.1875 +0.2188 0.125 0.2188 +0.2188 0.125 0.25 +0.2188 0.125 0.2812 +0.2188 0.125 0.3125 +0.2188 0.125 0.3438 +0.2188 0.125 0.375 +0.2188 0.125 0.4062 +0.2188 0.125 0.4375 +0.2188 0.125 0.4688 +0.2188 0.125 0.5 +0.2188 0.125 0.5312 +0.2188 0.125 0.5625 +0.2188 0.125 0.5938 +0.2188 0.125 0.625 +0.2188 0.125 0.6562 +0.2188 0.125 0.6875 +0.2188 0.125 0.7188 +0.2188 0.125 0.75 +0.2188 0.125 0.7812 +0.2188 0.125 0.8125 +0.2188 0.125 0.8438 +0.2188 0.125 0.875 +0.2188 0.125 0.9062 +0.2188 0.125 0.9375 +0.2188 0.125 0.9688 +0.2188 0.125 1 +0.2188 0.1562 0 +0.2188 0.1562 0.03125 +0.2188 0.1562 0.0625 +0.2188 0.1562 0.09375 +0.2188 0.1562 0.125 +0.2188 0.1562 0.1562 +0.2188 0.1562 0.1875 +0.2188 0.1562 0.2188 +0.2188 0.1562 0.25 +0.2188 0.1562 0.2812 +0.2188 0.1562 0.3125 +0.2188 0.1562 0.3438 +0.2188 0.1562 0.375 +0.2188 0.1562 0.4062 +0.2188 0.1562 0.4375 +0.2188 0.1562 0.4688 +0.2188 0.1562 0.5 +0.2188 0.1562 0.5312 +0.2188 0.1562 0.5625 +0.2188 0.1562 0.5938 +0.2188 0.1562 0.625 +0.2188 0.1562 0.6562 +0.2188 0.1562 0.6875 +0.2188 0.1562 0.7188 +0.2188 0.1562 0.75 +0.2188 0.1562 0.7812 +0.2188 0.1562 0.8125 +0.2188 0.1562 0.8438 +0.2188 0.1562 0.875 +0.2188 0.1562 0.9062 +0.2188 0.1562 0.9375 +0.2188 0.1562 0.9688 +0.2188 0.1562 1 +0.2188 0.1875 0 +0.2188 0.1875 0.03125 +0.2188 0.1875 0.0625 +0.2188 0.1875 0.09375 +0.2188 0.1875 0.125 +0.2188 0.1875 0.1562 +0.2188 0.1875 0.1875 +0.2188 0.1875 0.2188 +0.2188 0.1875 0.25 +0.2188 0.1875 0.2812 +0.2188 0.1875 0.3125 +0.2188 0.1875 0.3438 +0.2188 0.1875 0.375 +0.2188 0.1875 0.4062 +0.2188 0.1875 0.4375 +0.2188 0.1875 0.4688 +0.2188 0.1875 0.5 +0.2188 0.1875 0.5312 +0.2188 0.1875 0.5625 +0.2188 0.1875 0.5938 +0.2188 0.1875 0.625 +0.2188 0.1875 0.6562 +0.2188 0.1875 0.6875 +0.2188 0.1875 0.7188 +0.2188 0.1875 0.75 +0.2188 0.1875 0.7812 +0.2188 0.1875 0.8125 +0.2188 0.1875 0.8438 +0.2188 0.1875 0.875 +0.2188 0.1875 0.9062 +0.2188 0.1875 0.9375 +0.2188 0.1875 0.9688 +0.2188 0.1875 1 +0.2188 0.2188 0 +0.2188 0.2188 0.03125 +0.2188 0.2188 0.0625 +0.2188 0.2188 0.09375 +0.2188 0.2188 0.125 +0.2188 0.2188 0.1562 +0.2188 0.2188 0.1875 +0.2188 0.2188 0.2188 +0.2188 0.2188 0.25 +0.2188 0.2188 0.2812 +0.2188 0.2188 0.3125 +0.2188 0.2188 0.3438 +0.2188 0.2188 0.375 +0.2188 0.2188 0.4062 +0.2188 0.2188 0.4375 +0.2188 0.2188 0.4688 +0.2188 0.2188 0.5 +0.2188 0.2188 0.5312 +0.2188 0.2188 0.5625 +0.2188 0.2188 0.5938 +0.2188 0.2188 0.625 +0.2188 0.2188 0.6562 +0.2188 0.2188 0.6875 +0.2188 0.2188 0.7188 +0.2188 0.2188 0.75 +0.2188 0.2188 0.7812 +0.2188 0.2188 0.8125 +0.2188 0.2188 0.8438 +0.2188 0.2188 0.875 +0.2188 0.2188 0.9062 +0.2188 0.2188 0.9375 +0.2188 0.2188 0.9688 +0.2188 0.2188 1 +0.2188 0.25 0 +0.2188 0.25 0.03125 +0.2188 0.25 0.0625 +0.2188 0.25 0.09375 +0.2188 0.25 0.125 +0.2188 0.25 0.1562 +0.2188 0.25 0.1875 +0.2188 0.25 0.2188 +0.2188 0.25 0.25 +0.2188 0.25 0.2812 +0.2188 0.25 0.3125 +0.2188 0.25 0.3438 +0.2188 0.25 0.375 +0.2188 0.25 0.4062 +0.2188 0.25 0.4375 +0.2188 0.25 0.4688 +0.2188 0.25 0.5 +0.2188 0.25 0.5312 +0.2188 0.25 0.5625 +0.2188 0.25 0.5938 +0.2188 0.25 0.625 +0.2188 0.25 0.6562 +0.2188 0.25 0.6875 +0.2188 0.25 0.7188 +0.2188 0.25 0.75 +0.2188 0.25 0.7812 +0.2188 0.25 0.8125 +0.2188 0.25 0.8438 +0.2188 0.25 0.875 +0.2188 0.25 0.9062 +0.2188 0.25 0.9375 +0.2188 0.25 0.9688 +0.2188 0.25 1 +0.2188 0.2812 0 +0.2188 0.2812 0.03125 +0.2188 0.2812 0.0625 +0.2188 0.2812 0.09375 +0.2188 0.2812 0.125 +0.2188 0.2812 0.1562 +0.2188 0.2812 0.1875 +0.2188 0.2812 0.2188 +0.2188 0.2812 0.25 +0.2188 0.2812 0.2812 +0.2188 0.2812 0.3125 +0.2188 0.2812 0.3438 +0.2188 0.2812 0.375 +0.2188 0.2812 0.4062 +0.2188 0.2812 0.4375 +0.2188 0.2812 0.4688 +0.2188 0.2812 0.5 +0.2188 0.2812 0.5312 +0.2188 0.2812 0.5625 +0.2188 0.2812 0.5938 +0.2188 0.2812 0.625 +0.2188 0.2812 0.6562 +0.2188 0.2812 0.6875 +0.2188 0.2812 0.7188 +0.2188 0.2812 0.75 +0.2188 0.2812 0.7812 +0.2188 0.2812 0.8125 +0.2188 0.2812 0.8438 +0.2188 0.2812 0.875 +0.2188 0.2812 0.9062 +0.2188 0.2812 0.9375 +0.2188 0.2812 0.9688 +0.2188 0.2812 1 +0.2188 0.3125 0 +0.2188 0.3125 0.03125 +0.2188 0.3125 0.0625 +0.2188 0.3125 0.09375 +0.2188 0.3125 0.125 +0.2188 0.3125 0.1562 +0.2188 0.3125 0.1875 +0.2188 0.3125 0.2188 +0.2188 0.3125 0.25 +0.2188 0.3125 0.2812 +0.2188 0.3125 0.3125 +0.2188 0.3125 0.3438 +0.2188 0.3125 0.375 +0.2188 0.3125 0.4062 +0.2188 0.3125 0.4375 +0.2188 0.3125 0.4688 +0.2188 0.3125 0.5 +0.2188 0.3125 0.5312 +0.2188 0.3125 0.5625 +0.2188 0.3125 0.5938 +0.2188 0.3125 0.625 +0.2188 0.3125 0.6562 +0.2188 0.3125 0.6875 +0.2188 0.3125 0.7188 +0.2188 0.3125 0.75 +0.2188 0.3125 0.7812 +0.2188 0.3125 0.8125 +0.2188 0.3125 0.8438 +0.2188 0.3125 0.875 +0.2188 0.3125 0.9062 +0.2188 0.3125 0.9375 +0.2188 0.3125 0.9688 +0.2188 0.3125 1 +0.2188 0.3438 0 +0.2188 0.3438 0.03125 +0.2188 0.3438 0.0625 +0.2188 0.3438 0.09375 +0.2188 0.3438 0.125 +0.2188 0.3438 0.1562 +0.2188 0.3438 0.1875 +0.2188 0.3438 0.2188 +0.2188 0.3438 0.25 +0.2188 0.3438 0.2812 +0.2188 0.3438 0.3125 +0.2188 0.3438 0.3438 +0.2188 0.3438 0.375 +0.2188 0.3438 0.4062 +0.2188 0.3438 0.4375 +0.2188 0.3438 0.4688 +0.2188 0.3438 0.5 +0.2188 0.3438 0.5312 +0.2188 0.3438 0.5625 +0.2188 0.3438 0.5938 +0.2188 0.3438 0.625 +0.2188 0.3438 0.6562 +0.2188 0.3438 0.6875 +0.2188 0.3438 0.7188 +0.2188 0.3438 0.75 +0.2188 0.3438 0.7812 +0.2188 0.3438 0.8125 +0.2188 0.3438 0.8438 +0.2188 0.3438 0.875 +0.2188 0.3438 0.9062 +0.2188 0.3438 0.9375 +0.2188 0.3438 0.9688 +0.2188 0.3438 1 +0.2188 0.375 0 +0.2188 0.375 0.03125 +0.2188 0.375 0.0625 +0.2188 0.375 0.09375 +0.2188 0.375 0.125 +0.2188 0.375 0.1562 +0.2188 0.375 0.1875 +0.2188 0.375 0.2188 +0.2188 0.375 0.25 +0.2188 0.375 0.2812 +0.2188 0.375 0.3125 +0.2188 0.375 0.3438 +0.2188 0.375 0.375 +0.2188 0.375 0.4062 +0.2188 0.375 0.4375 +0.2188 0.375 0.4688 +0.2188 0.375 0.5 +0.2188 0.375 0.5312 +0.2188 0.375 0.5625 +0.2188 0.375 0.5938 +0.2188 0.375 0.625 +0.2188 0.375 0.6562 +0.2188 0.375 0.6875 +0.2188 0.375 0.7188 +0.2188 0.375 0.75 +0.2188 0.375 0.7812 +0.2188 0.375 0.8125 +0.2188 0.375 0.8438 +0.2188 0.375 0.875 +0.2188 0.375 0.9062 +0.2188 0.375 0.9375 +0.2188 0.375 0.9688 +0.2188 0.375 1 +0.2188 0.4062 0 +0.2188 0.4062 0.03125 +0.2188 0.4062 0.0625 +0.2188 0.4062 0.09375 +0.2188 0.4062 0.125 +0.2188 0.4062 0.1562 +0.2188 0.4062 0.1875 +0.2188 0.4062 0.2188 +0.2188 0.4062 0.25 +0.2188 0.4062 0.2812 +0.2188 0.4062 0.3125 +0.2188 0.4062 0.3438 +0.2188 0.4062 0.375 +0.2188 0.4062 0.4062 +0.2188 0.4062 0.4375 +0.2188 0.4062 0.4688 +0.2188 0.4062 0.5 +0.2188 0.4062 0.5312 +0.2188 0.4062 0.5625 +0.2188 0.4062 0.5938 +0.2188 0.4062 0.625 +0.2188 0.4062 0.6562 +0.2188 0.4062 0.6875 +0.2188 0.4062 0.7188 +0.2188 0.4062 0.75 +0.2188 0.4062 0.7812 +0.2188 0.4062 0.8125 +0.2188 0.4062 0.8438 +0.2188 0.4062 0.875 +0.2188 0.4062 0.9062 +0.2188 0.4062 0.9375 +0.2188 0.4062 0.9688 +0.2188 0.4062 1 +0.2188 0.4375 0 +0.2188 0.4375 0.03125 +0.2188 0.4375 0.0625 +0.2188 0.4375 0.09375 +0.2188 0.4375 0.125 +0.2188 0.4375 0.1562 +0.2188 0.4375 0.1875 +0.2188 0.4375 0.2188 +0.2188 0.4375 0.25 +0.2188 0.4375 0.2812 +0.2188 0.4375 0.3125 +0.2188 0.4375 0.3438 +0.2188 0.4375 0.375 +0.2188 0.4375 0.4062 +0.2188 0.4375 0.4375 +0.2188 0.4375 0.4688 +0.2188 0.4375 0.5 +0.2188 0.4375 0.5312 +0.2188 0.4375 0.5625 +0.2188 0.4375 0.5938 +0.2188 0.4375 0.625 +0.2188 0.4375 0.6562 +0.2188 0.4375 0.6875 +0.2188 0.4375 0.7188 +0.2188 0.4375 0.75 +0.2188 0.4375 0.7812 +0.2188 0.4375 0.8125 +0.2188 0.4375 0.8438 +0.2188 0.4375 0.875 +0.2188 0.4375 0.9062 +0.2188 0.4375 0.9375 +0.2188 0.4375 0.9688 +0.2188 0.4375 1 +0.2188 0.4688 0 +0.2188 0.4688 0.03125 +0.2188 0.4688 0.0625 +0.2188 0.4688 0.09375 +0.2188 0.4688 0.125 +0.2188 0.4688 0.1562 +0.2188 0.4688 0.1875 +0.2188 0.4688 0.2188 +0.2188 0.4688 0.25 +0.2188 0.4688 0.2812 +0.2188 0.4688 0.3125 +0.2188 0.4688 0.3438 +0.2188 0.4688 0.375 +0.2188 0.4688 0.4062 +0.2188 0.4688 0.4375 +0.2188 0.4688 0.4688 +0.2188 0.4688 0.5 +0.2188 0.4688 0.5312 +0.2188 0.4688 0.5625 +0.2188 0.4688 0.5938 +0.2188 0.4688 0.625 +0.2188 0.4688 0.6562 +0.2188 0.4688 0.6875 +0.2188 0.4688 0.7188 +0.2188 0.4688 0.75 +0.2188 0.4688 0.7812 +0.2188 0.4688 0.8125 +0.2188 0.4688 0.8438 +0.2188 0.4688 0.875 +0.2188 0.4688 0.9062 +0.2188 0.4688 0.9375 +0.2188 0.4688 0.9688 +0.2188 0.4688 1 +0.2188 0.5 0 +0.2188 0.5 0.03125 +0.2188 0.5 0.0625 +0.2188 0.5 0.09375 +0.2188 0.5 0.125 +0.2188 0.5 0.1562 +0.2188 0.5 0.1875 +0.2188 0.5 0.2188 +0.2188 0.5 0.25 +0.2188 0.5 0.2812 +0.2188 0.5 0.3125 +0.2188 0.5 0.3438 +0.2188 0.5 0.375 +0.2188 0.5 0.4062 +0.2188 0.5 0.4375 +0.2188 0.5 0.4688 +0.2188 0.5 0.5 +0.2188 0.5 0.5312 +0.2188 0.5 0.5625 +0.2188 0.5 0.5938 +0.2188 0.5 0.625 +0.2188 0.5 0.6562 +0.2188 0.5 0.6875 +0.2188 0.5 0.7188 +0.2188 0.5 0.75 +0.2188 0.5 0.7812 +0.2188 0.5 0.8125 +0.2188 0.5 0.8438 +0.2188 0.5 0.875 +0.2188 0.5 0.9062 +0.2188 0.5 0.9375 +0.2188 0.5 0.9688 +0.2188 0.5 1 +0.2188 0.5312 0 +0.2188 0.5312 0.03125 +0.2188 0.5312 0.0625 +0.2188 0.5312 0.09375 +0.2188 0.5312 0.125 +0.2188 0.5312 0.1562 +0.2188 0.5312 0.1875 +0.2188 0.5312 0.2188 +0.2188 0.5312 0.25 +0.2188 0.5312 0.2812 +0.2188 0.5312 0.3125 +0.2188 0.5312 0.3438 +0.2188 0.5312 0.375 +0.2188 0.5312 0.4062 +0.2188 0.5312 0.4375 +0.2188 0.5312 0.4688 +0.2188 0.5312 0.5 +0.2188 0.5312 0.5312 +0.2188 0.5312 0.5625 +0.2188 0.5312 0.5938 +0.2188 0.5312 0.625 +0.2188 0.5312 0.6562 +0.2188 0.5312 0.6875 +0.2188 0.5312 0.7188 +0.2188 0.5312 0.75 +0.2188 0.5312 0.7812 +0.2188 0.5312 0.8125 +0.2188 0.5312 0.8438 +0.2188 0.5312 0.875 +0.2188 0.5312 0.9062 +0.2188 0.5312 0.9375 +0.2188 0.5312 0.9688 +0.2188 0.5312 1 +0.2188 0.5625 0 +0.2188 0.5625 0.03125 +0.2188 0.5625 0.0625 +0.2188 0.5625 0.09375 +0.2188 0.5625 0.125 +0.2188 0.5625 0.1562 +0.2188 0.5625 0.1875 +0.2188 0.5625 0.2188 +0.2188 0.5625 0.25 +0.2188 0.5625 0.2812 +0.2188 0.5625 0.3125 +0.2188 0.5625 0.3438 +0.2188 0.5625 0.375 +0.2188 0.5625 0.4062 +0.2188 0.5625 0.4375 +0.2188 0.5625 0.4688 +0.2188 0.5625 0.5 +0.2188 0.5625 0.5312 +0.2188 0.5625 0.5625 +0.2188 0.5625 0.5938 +0.2188 0.5625 0.625 +0.2188 0.5625 0.6562 +0.2188 0.5625 0.6875 +0.2188 0.5625 0.7188 +0.2188 0.5625 0.75 +0.2188 0.5625 0.7812 +0.2188 0.5625 0.8125 +0.2188 0.5625 0.8438 +0.2188 0.5625 0.875 +0.2188 0.5625 0.9062 +0.2188 0.5625 0.9375 +0.2188 0.5625 0.9688 +0.2188 0.5625 1 +0.2188 0.5938 0 +0.2188 0.5938 0.03125 +0.2188 0.5938 0.0625 +0.2188 0.5938 0.09375 +0.2188 0.5938 0.125 +0.2188 0.5938 0.1562 +0.2188 0.5938 0.1875 +0.2188 0.5938 0.2188 +0.2188 0.5938 0.25 +0.2188 0.5938 0.2812 +0.2188 0.5938 0.3125 +0.2188 0.5938 0.3438 +0.2188 0.5938 0.375 +0.2188 0.5938 0.4062 +0.2188 0.5938 0.4375 +0.2188 0.5938 0.4688 +0.2188 0.5938 0.5 +0.2188 0.5938 0.5312 +0.2188 0.5938 0.5625 +0.2188 0.5938 0.5938 +0.2188 0.5938 0.625 +0.2188 0.5938 0.6562 +0.2188 0.5938 0.6875 +0.2188 0.5938 0.7188 +0.2188 0.5938 0.75 +0.2188 0.5938 0.7812 +0.2188 0.5938 0.8125 +0.2188 0.5938 0.8438 +0.2188 0.5938 0.875 +0.2188 0.5938 0.9062 +0.2188 0.5938 0.9375 +0.2188 0.5938 0.9688 +0.2188 0.5938 1 +0.2188 0.625 0 +0.2188 0.625 0.03125 +0.2188 0.625 0.0625 +0.2188 0.625 0.09375 +0.2188 0.625 0.125 +0.2188 0.625 0.1562 +0.2188 0.625 0.1875 +0.2188 0.625 0.2188 +0.2188 0.625 0.25 +0.2188 0.625 0.2812 +0.2188 0.625 0.3125 +0.2188 0.625 0.3438 +0.2188 0.625 0.375 +0.2188 0.625 0.4062 +0.2188 0.625 0.4375 +0.2188 0.625 0.4688 +0.2188 0.625 0.5 +0.2188 0.625 0.5312 +0.2188 0.625 0.5625 +0.2188 0.625 0.5938 +0.2188 0.625 0.625 +0.2188 0.625 0.6562 +0.2188 0.625 0.6875 +0.2188 0.625 0.7188 +0.2188 0.625 0.75 +0.2188 0.625 0.7812 +0.2188 0.625 0.8125 +0.2188 0.625 0.8438 +0.2188 0.625 0.875 +0.2188 0.625 0.9062 +0.2188 0.625 0.9375 +0.2188 0.625 0.9688 +0.2188 0.625 1 +0.2188 0.6562 0 +0.2188 0.6562 0.03125 +0.2188 0.6562 0.0625 +0.2188 0.6562 0.09375 +0.2188 0.6562 0.125 +0.2188 0.6562 0.1562 +0.2188 0.6562 0.1875 +0.2188 0.6562 0.2188 +0.2188 0.6562 0.25 +0.2188 0.6562 0.2812 +0.2188 0.6562 0.3125 +0.2188 0.6562 0.3438 +0.2188 0.6562 0.375 +0.2188 0.6562 0.4062 +0.2188 0.6562 0.4375 +0.2188 0.6562 0.4688 +0.2188 0.6562 0.5 +0.2188 0.6562 0.5312 +0.2188 0.6562 0.5625 +0.2188 0.6562 0.5938 +0.2188 0.6562 0.625 +0.2188 0.6562 0.6562 +0.2188 0.6562 0.6875 +0.2188 0.6562 0.7188 +0.2188 0.6562 0.75 +0.2188 0.6562 0.7812 +0.2188 0.6562 0.8125 +0.2188 0.6562 0.8438 +0.2188 0.6562 0.875 +0.2188 0.6562 0.9062 +0.2188 0.6562 0.9375 +0.2188 0.6562 0.9688 +0.2188 0.6562 1 +0.2188 0.6875 0 +0.2188 0.6875 0.03125 +0.2188 0.6875 0.0625 +0.2188 0.6875 0.09375 +0.2188 0.6875 0.125 +0.2188 0.6875 0.1562 +0.2188 0.6875 0.1875 +0.2188 0.6875 0.2188 +0.2188 0.6875 0.25 +0.2188 0.6875 0.2812 +0.2188 0.6875 0.3125 +0.2188 0.6875 0.3438 +0.2188 0.6875 0.375 +0.2188 0.6875 0.4062 +0.2188 0.6875 0.4375 +0.2188 0.6875 0.4688 +0.2188 0.6875 0.5 +0.2188 0.6875 0.5312 +0.2188 0.6875 0.5625 +0.2188 0.6875 0.5938 +0.2188 0.6875 0.625 +0.2188 0.6875 0.6562 +0.2188 0.6875 0.6875 +0.2188 0.6875 0.7188 +0.2188 0.6875 0.75 +0.2188 0.6875 0.7812 +0.2188 0.6875 0.8125 +0.2188 0.6875 0.8438 +0.2188 0.6875 0.875 +0.2188 0.6875 0.9062 +0.2188 0.6875 0.9375 +0.2188 0.6875 0.9688 +0.2188 0.6875 1 +0.2188 0.7188 0 +0.2188 0.7188 0.03125 +0.2188 0.7188 0.0625 +0.2188 0.7188 0.09375 +0.2188 0.7188 0.125 +0.2188 0.7188 0.1562 +0.2188 0.7188 0.1875 +0.2188 0.7188 0.2188 +0.2188 0.7188 0.25 +0.2188 0.7188 0.2812 +0.2188 0.7188 0.3125 +0.2188 0.7188 0.3438 +0.2188 0.7188 0.375 +0.2188 0.7188 0.4062 +0.2188 0.7188 0.4375 +0.2188 0.7188 0.4688 +0.2188 0.7188 0.5 +0.2188 0.7188 0.5312 +0.2188 0.7188 0.5625 +0.2188 0.7188 0.5938 +0.2188 0.7188 0.625 +0.2188 0.7188 0.6562 +0.2188 0.7188 0.6875 +0.2188 0.7188 0.7188 +0.2188 0.7188 0.75 +0.2188 0.7188 0.7812 +0.2188 0.7188 0.8125 +0.2188 0.7188 0.8438 +0.2188 0.7188 0.875 +0.2188 0.7188 0.9062 +0.2188 0.7188 0.9375 +0.2188 0.7188 0.9688 +0.2188 0.7188 1 +0.2188 0.75 0 +0.2188 0.75 0.03125 +0.2188 0.75 0.0625 +0.2188 0.75 0.09375 +0.2188 0.75 0.125 +0.2188 0.75 0.1562 +0.2188 0.75 0.1875 +0.2188 0.75 0.2188 +0.2188 0.75 0.25 +0.2188 0.75 0.2812 +0.2188 0.75 0.3125 +0.2188 0.75 0.3438 +0.2188 0.75 0.375 +0.2188 0.75 0.4062 +0.2188 0.75 0.4375 +0.2188 0.75 0.4688 +0.2188 0.75 0.5 +0.2188 0.75 0.5312 +0.2188 0.75 0.5625 +0.2188 0.75 0.5938 +0.2188 0.75 0.625 +0.2188 0.75 0.6562 +0.2188 0.75 0.6875 +0.2188 0.75 0.7188 +0.2188 0.75 0.75 +0.2188 0.75 0.7812 +0.2188 0.75 0.8125 +0.2188 0.75 0.8438 +0.2188 0.75 0.875 +0.2188 0.75 0.9062 +0.2188 0.75 0.9375 +0.2188 0.75 0.9688 +0.2188 0.75 1 +0.2188 0.7812 0 +0.2188 0.7812 0.03125 +0.2188 0.7812 0.0625 +0.2188 0.7812 0.09375 +0.2188 0.7812 0.125 +0.2188 0.7812 0.1562 +0.2188 0.7812 0.1875 +0.2188 0.7812 0.2188 +0.2188 0.7812 0.25 +0.2188 0.7812 0.2812 +0.2188 0.7812 0.3125 +0.2188 0.7812 0.3438 +0.2188 0.7812 0.375 +0.2188 0.7812 0.4062 +0.2188 0.7812 0.4375 +0.2188 0.7812 0.4688 +0.2188 0.7812 0.5 +0.2188 0.7812 0.5312 +0.2188 0.7812 0.5625 +0.2188 0.7812 0.5938 +0.2188 0.7812 0.625 +0.2188 0.7812 0.6562 +0.2188 0.7812 0.6875 +0.2188 0.7812 0.7188 +0.2188 0.7812 0.75 +0.2188 0.7812 0.7812 +0.2188 0.7812 0.8125 +0.2188 0.7812 0.8438 +0.2188 0.7812 0.875 +0.2188 0.7812 0.9062 +0.2188 0.7812 0.9375 +0.2188 0.7812 0.9688 +0.2188 0.7812 1 +0.2188 0.8125 0 +0.2188 0.8125 0.03125 +0.2188 0.8125 0.0625 +0.2188 0.8125 0.09375 +0.2188 0.8125 0.125 +0.2188 0.8125 0.1562 +0.2188 0.8125 0.1875 +0.2188 0.8125 0.2188 +0.2188 0.8125 0.25 +0.2188 0.8125 0.2812 +0.2188 0.8125 0.3125 +0.2188 0.8125 0.3438 +0.2188 0.8125 0.375 +0.2188 0.8125 0.4062 +0.2188 0.8125 0.4375 +0.2188 0.8125 0.4688 +0.2188 0.8125 0.5 +0.2188 0.8125 0.5312 +0.2188 0.8125 0.5625 +0.2188 0.8125 0.5938 +0.2188 0.8125 0.625 +0.2188 0.8125 0.6562 +0.2188 0.8125 0.6875 +0.2188 0.8125 0.7188 +0.2188 0.8125 0.75 +0.2188 0.8125 0.7812 +0.2188 0.8125 0.8125 +0.2188 0.8125 0.8438 +0.2188 0.8125 0.875 +0.2188 0.8125 0.9062 +0.2188 0.8125 0.9375 +0.2188 0.8125 0.9688 +0.2188 0.8125 1 +0.2188 0.8438 0 +0.2188 0.8438 0.03125 +0.2188 0.8438 0.0625 +0.2188 0.8438 0.09375 +0.2188 0.8438 0.125 +0.2188 0.8438 0.1562 +0.2188 0.8438 0.1875 +0.2188 0.8438 0.2188 +0.2188 0.8438 0.25 +0.2188 0.8438 0.2812 +0.2188 0.8438 0.3125 +0.2188 0.8438 0.3438 +0.2188 0.8438 0.375 +0.2188 0.8438 0.4062 +0.2188 0.8438 0.4375 +0.2188 0.8438 0.4688 +0.2188 0.8438 0.5 +0.2188 0.8438 0.5312 +0.2188 0.8438 0.5625 +0.2188 0.8438 0.5938 +0.2188 0.8438 0.625 +0.2188 0.8438 0.6562 +0.2188 0.8438 0.6875 +0.2188 0.8438 0.7188 +0.2188 0.8438 0.75 +0.2188 0.8438 0.7812 +0.2188 0.8438 0.8125 +0.2188 0.8438 0.8438 +0.2188 0.8438 0.875 +0.2188 0.8438 0.9062 +0.2188 0.8438 0.9375 +0.2188 0.8438 0.9688 +0.2188 0.8438 1 +0.2188 0.875 0 +0.2188 0.875 0.03125 +0.2188 0.875 0.0625 +0.2188 0.875 0.09375 +0.2188 0.875 0.125 +0.2188 0.875 0.1562 +0.2188 0.875 0.1875 +0.2188 0.875 0.2188 +0.2188 0.875 0.25 +0.2188 0.875 0.2812 +0.2188 0.875 0.3125 +0.2188 0.875 0.3438 +0.2188 0.875 0.375 +0.2188 0.875 0.4062 +0.2188 0.875 0.4375 +0.2188 0.875 0.4688 +0.2188 0.875 0.5 +0.2188 0.875 0.5312 +0.2188 0.875 0.5625 +0.2188 0.875 0.5938 +0.2188 0.875 0.625 +0.2188 0.875 0.6562 +0.2188 0.875 0.6875 +0.2188 0.875 0.7188 +0.2188 0.875 0.75 +0.2188 0.875 0.7812 +0.2188 0.875 0.8125 +0.2188 0.875 0.8438 +0.2188 0.875 0.875 +0.2188 0.875 0.9062 +0.2188 0.875 0.9375 +0.2188 0.875 0.9688 +0.2188 0.875 1 +0.2188 0.9062 0 +0.2188 0.9062 0.03125 +0.2188 0.9062 0.0625 +0.2188 0.9062 0.09375 +0.2188 0.9062 0.125 +0.2188 0.9062 0.1562 +0.2188 0.9062 0.1875 +0.2188 0.9062 0.2188 +0.2188 0.9062 0.25 +0.2188 0.9062 0.2812 +0.2188 0.9062 0.3125 +0.2188 0.9062 0.3438 +0.2188 0.9062 0.375 +0.2188 0.9062 0.4062 +0.2188 0.9062 0.4375 +0.2188 0.9062 0.4688 +0.2188 0.9062 0.5 +0.2188 0.9062 0.5312 +0.2188 0.9062 0.5625 +0.2188 0.9062 0.5938 +0.2188 0.9062 0.625 +0.2188 0.9062 0.6562 +0.2188 0.9062 0.6875 +0.2188 0.9062 0.7188 +0.2188 0.9062 0.75 +0.2188 0.9062 0.7812 +0.2188 0.9062 0.8125 +0.2188 0.9062 0.8438 +0.2188 0.9062 0.875 +0.2188 0.9062 0.9062 +0.2188 0.9062 0.9375 +0.2188 0.9062 0.9688 +0.2188 0.9062 1 +0.2188 0.9375 0 +0.2188 0.9375 0.03125 +0.2188 0.9375 0.0625 +0.2188 0.9375 0.09375 +0.2188 0.9375 0.125 +0.2188 0.9375 0.1562 +0.2188 0.9375 0.1875 +0.2188 0.9375 0.2188 +0.2188 0.9375 0.25 +0.2188 0.9375 0.2812 +0.2188 0.9375 0.3125 +0.2188 0.9375 0.3438 +0.2188 0.9375 0.375 +0.2188 0.9375 0.4062 +0.2188 0.9375 0.4375 +0.2188 0.9375 0.4688 +0.2188 0.9375 0.5 +0.2188 0.9375 0.5312 +0.2188 0.9375 0.5625 +0.2188 0.9375 0.5938 +0.2188 0.9375 0.625 +0.2188 0.9375 0.6562 +0.2188 0.9375 0.6875 +0.2188 0.9375 0.7188 +0.2188 0.9375 0.75 +0.2188 0.9375 0.7812 +0.2188 0.9375 0.8125 +0.2188 0.9375 0.8438 +0.2188 0.9375 0.875 +0.2188 0.9375 0.9062 +0.2188 0.9375 0.9375 +0.2188 0.9375 0.9688 +0.2188 0.9375 1 +0.2188 0.9688 0 +0.2188 0.9688 0.03125 +0.2188 0.9688 0.0625 +0.2188 0.9688 0.09375 +0.2188 0.9688 0.125 +0.2188 0.9688 0.1562 +0.2188 0.9688 0.1875 +0.2188 0.9688 0.2188 +0.2188 0.9688 0.25 +0.2188 0.9688 0.2812 +0.2188 0.9688 0.3125 +0.2188 0.9688 0.3438 +0.2188 0.9688 0.375 +0.2188 0.9688 0.4062 +0.2188 0.9688 0.4375 +0.2188 0.9688 0.4688 +0.2188 0.9688 0.5 +0.2188 0.9688 0.5312 +0.2188 0.9688 0.5625 +0.2188 0.9688 0.5938 +0.2188 0.9688 0.625 +0.2188 0.9688 0.6562 +0.2188 0.9688 0.6875 +0.2188 0.9688 0.7188 +0.2188 0.9688 0.75 +0.2188 0.9688 0.7812 +0.2188 0.9688 0.8125 +0.2188 0.9688 0.8438 +0.2188 0.9688 0.875 +0.2188 0.9688 0.9062 +0.2188 0.9688 0.9375 +0.2188 0.9688 0.9688 +0.2188 0.9688 1 +0.2188 1 0 +0.2188 1 0.03125 +0.2188 1 0.0625 +0.2188 1 0.09375 +0.2188 1 0.125 +0.2188 1 0.1562 +0.2188 1 0.1875 +0.2188 1 0.2188 +0.2188 1 0.25 +0.2188 1 0.2812 +0.2188 1 0.3125 +0.2188 1 0.3438 +0.2188 1 0.375 +0.2188 1 0.4062 +0.2188 1 0.4375 +0.2188 1 0.4688 +0.2188 1 0.5 +0.2188 1 0.5312 +0.2188 1 0.5625 +0.2188 1 0.5938 +0.2188 1 0.625 +0.2188 1 0.6562 +0.2188 1 0.6875 +0.2188 1 0.7188 +0.2188 1 0.75 +0.2188 1 0.7812 +0.2188 1 0.8125 +0.2188 1 0.8438 +0.2188 1 0.875 +0.2188 1 0.9062 +0.2188 1 0.9375 +0.2188 1 0.9688 +0.2188 1 1 +0.25 0 0 +0.25 0 0.03125 +0.25 0 0.0625 +0.25 0 0.09375 +0.25 0 0.125 +0.25 0 0.1562 +0.25 0 0.1875 +0.25 0 0.2188 +0.25 0 0.25 +0.25 0 0.2812 +0.25 0 0.3125 +0.25 0 0.3438 +0.25 0 0.375 +0.25 0 0.4062 +0.25 0 0.4375 +0.25 0 0.4688 +0.25 0 0.5 +0.25 0 0.5312 +0.25 0 0.5625 +0.25 0 0.5938 +0.25 0 0.625 +0.25 0 0.6562 +0.25 0 0.6875 +0.25 0 0.7188 +0.25 0 0.75 +0.25 0 0.7812 +0.25 0 0.8125 +0.25 0 0.8438 +0.25 0 0.875 +0.25 0 0.9062 +0.25 0 0.9375 +0.25 0 0.9688 +0.25 0 1 +0.25 0.03125 0 +0.25 0.03125 0.03125 +0.25 0.03125 0.0625 +0.25 0.03125 0.09375 +0.25 0.03125 0.125 +0.25 0.03125 0.1562 +0.25 0.03125 0.1875 +0.25 0.03125 0.2188 +0.25 0.03125 0.25 +0.25 0.03125 0.2812 +0.25 0.03125 0.3125 +0.25 0.03125 0.3438 +0.25 0.03125 0.375 +0.25 0.03125 0.4062 +0.25 0.03125 0.4375 +0.25 0.03125 0.4688 +0.25 0.03125 0.5 +0.25 0.03125 0.5312 +0.25 0.03125 0.5625 +0.25 0.03125 0.5938 +0.25 0.03125 0.625 +0.25 0.03125 0.6562 +0.25 0.03125 0.6875 +0.25 0.03125 0.7188 +0.25 0.03125 0.75 +0.25 0.03125 0.7812 +0.25 0.03125 0.8125 +0.25 0.03125 0.8438 +0.25 0.03125 0.875 +0.25 0.03125 0.9062 +0.25 0.03125 0.9375 +0.25 0.03125 0.9688 +0.25 0.03125 1 +0.25 0.0625 0 +0.25 0.0625 0.03125 +0.25 0.0625 0.0625 +0.25 0.0625 0.09375 +0.25 0.0625 0.125 +0.25 0.0625 0.1562 +0.25 0.0625 0.1875 +0.25 0.0625 0.2188 +0.25 0.0625 0.25 +0.25 0.0625 0.2812 +0.25 0.0625 0.3125 +0.25 0.0625 0.3438 +0.25 0.0625 0.375 +0.25 0.0625 0.4062 +0.25 0.0625 0.4375 +0.25 0.0625 0.4688 +0.25 0.0625 0.5 +0.25 0.0625 0.5312 +0.25 0.0625 0.5625 +0.25 0.0625 0.5938 +0.25 0.0625 0.625 +0.25 0.0625 0.6562 +0.25 0.0625 0.6875 +0.25 0.0625 0.7188 +0.25 0.0625 0.75 +0.25 0.0625 0.7812 +0.25 0.0625 0.8125 +0.25 0.0625 0.8438 +0.25 0.0625 0.875 +0.25 0.0625 0.9062 +0.25 0.0625 0.9375 +0.25 0.0625 0.9688 +0.25 0.0625 1 +0.25 0.09375 0 +0.25 0.09375 0.03125 +0.25 0.09375 0.0625 +0.25 0.09375 0.09375 +0.25 0.09375 0.125 +0.25 0.09375 0.1562 +0.25 0.09375 0.1875 +0.25 0.09375 0.2188 +0.25 0.09375 0.25 +0.25 0.09375 0.2812 +0.25 0.09375 0.3125 +0.25 0.09375 0.3438 +0.25 0.09375 0.375 +0.25 0.09375 0.4062 +0.25 0.09375 0.4375 +0.25 0.09375 0.4688 +0.25 0.09375 0.5 +0.25 0.09375 0.5312 +0.25 0.09375 0.5625 +0.25 0.09375 0.5938 +0.25 0.09375 0.625 +0.25 0.09375 0.6562 +0.25 0.09375 0.6875 +0.25 0.09375 0.7188 +0.25 0.09375 0.75 +0.25 0.09375 0.7812 +0.25 0.09375 0.8125 +0.25 0.09375 0.8438 +0.25 0.09375 0.875 +0.25 0.09375 0.9062 +0.25 0.09375 0.9375 +0.25 0.09375 0.9688 +0.25 0.09375 1 +0.25 0.125 0 +0.25 0.125 0.03125 +0.25 0.125 0.0625 +0.25 0.125 0.09375 +0.25 0.125 0.125 +0.25 0.125 0.1562 +0.25 0.125 0.1875 +0.25 0.125 0.2188 +0.25 0.125 0.25 +0.25 0.125 0.2812 +0.25 0.125 0.3125 +0.25 0.125 0.3438 +0.25 0.125 0.375 +0.25 0.125 0.4062 +0.25 0.125 0.4375 +0.25 0.125 0.4688 +0.25 0.125 0.5 +0.25 0.125 0.5312 +0.25 0.125 0.5625 +0.25 0.125 0.5938 +0.25 0.125 0.625 +0.25 0.125 0.6562 +0.25 0.125 0.6875 +0.25 0.125 0.7188 +0.25 0.125 0.75 +0.25 0.125 0.7812 +0.25 0.125 0.8125 +0.25 0.125 0.8438 +0.25 0.125 0.875 +0.25 0.125 0.9062 +0.25 0.125 0.9375 +0.25 0.125 0.9688 +0.25 0.125 1 +0.25 0.1562 0 +0.25 0.1562 0.03125 +0.25 0.1562 0.0625 +0.25 0.1562 0.09375 +0.25 0.1562 0.125 +0.25 0.1562 0.1562 +0.25 0.1562 0.1875 +0.25 0.1562 0.2188 +0.25 0.1562 0.25 +0.25 0.1562 0.2812 +0.25 0.1562 0.3125 +0.25 0.1562 0.3438 +0.25 0.1562 0.375 +0.25 0.1562 0.4062 +0.25 0.1562 0.4375 +0.25 0.1562 0.4688 +0.25 0.1562 0.5 +0.25 0.1562 0.5312 +0.25 0.1562 0.5625 +0.25 0.1562 0.5938 +0.25 0.1562 0.625 +0.25 0.1562 0.6562 +0.25 0.1562 0.6875 +0.25 0.1562 0.7188 +0.25 0.1562 0.75 +0.25 0.1562 0.7812 +0.25 0.1562 0.8125 +0.25 0.1562 0.8438 +0.25 0.1562 0.875 +0.25 0.1562 0.9062 +0.25 0.1562 0.9375 +0.25 0.1562 0.9688 +0.25 0.1562 1 +0.25 0.1875 0 +0.25 0.1875 0.03125 +0.25 0.1875 0.0625 +0.25 0.1875 0.09375 +0.25 0.1875 0.125 +0.25 0.1875 0.1562 +0.25 0.1875 0.1875 +0.25 0.1875 0.2188 +0.25 0.1875 0.25 +0.25 0.1875 0.2812 +0.25 0.1875 0.3125 +0.25 0.1875 0.3438 +0.25 0.1875 0.375 +0.25 0.1875 0.4062 +0.25 0.1875 0.4375 +0.25 0.1875 0.4688 +0.25 0.1875 0.5 +0.25 0.1875 0.5312 +0.25 0.1875 0.5625 +0.25 0.1875 0.5938 +0.25 0.1875 0.625 +0.25 0.1875 0.6562 +0.25 0.1875 0.6875 +0.25 0.1875 0.7188 +0.25 0.1875 0.75 +0.25 0.1875 0.7812 +0.25 0.1875 0.8125 +0.25 0.1875 0.8438 +0.25 0.1875 0.875 +0.25 0.1875 0.9062 +0.25 0.1875 0.9375 +0.25 0.1875 0.9688 +0.25 0.1875 1 +0.25 0.2188 0 +0.25 0.2188 0.03125 +0.25 0.2188 0.0625 +0.25 0.2188 0.09375 +0.25 0.2188 0.125 +0.25 0.2188 0.1562 +0.25 0.2188 0.1875 +0.25 0.2188 0.2188 +0.25 0.2188 0.25 +0.25 0.2188 0.2812 +0.25 0.2188 0.3125 +0.25 0.2188 0.3438 +0.25 0.2188 0.375 +0.25 0.2188 0.4062 +0.25 0.2188 0.4375 +0.25 0.2188 0.4688 +0.25 0.2188 0.5 +0.25 0.2188 0.5312 +0.25 0.2188 0.5625 +0.25 0.2188 0.5938 +0.25 0.2188 0.625 +0.25 0.2188 0.6562 +0.25 0.2188 0.6875 +0.25 0.2188 0.7188 +0.25 0.2188 0.75 +0.25 0.2188 0.7812 +0.25 0.2188 0.8125 +0.25 0.2188 0.8438 +0.25 0.2188 0.875 +0.25 0.2188 0.9062 +0.25 0.2188 0.9375 +0.25 0.2188 0.9688 +0.25 0.2188 1 +0.25 0.25 0 +0.25 0.25 0.03125 +0.25 0.25 0.0625 +0.25 0.25 0.09375 +0.25 0.25 0.125 +0.25 0.25 0.1562 +0.25 0.25 0.1875 +0.25 0.25 0.2188 +0.25 0.25 0.25 +0.25 0.25 0.2812 +0.25 0.25 0.3125 +0.25 0.25 0.3438 +0.25 0.25 0.375 +0.25 0.25 0.4062 +0.25 0.25 0.4375 +0.25 0.25 0.4688 +0.25 0.25 0.5 +0.25 0.25 0.5312 +0.25 0.25 0.5625 +0.25 0.25 0.5938 +0.25 0.25 0.625 +0.25 0.25 0.6562 +0.25 0.25 0.6875 +0.25 0.25 0.7188 +0.25 0.25 0.75 +0.25 0.25 0.7812 +0.25 0.25 0.8125 +0.25 0.25 0.8438 +0.25 0.25 0.875 +0.25 0.25 0.9062 +0.25 0.25 0.9375 +0.25 0.25 0.9688 +0.25 0.25 1 +0.25 0.2812 0 +0.25 0.2812 0.03125 +0.25 0.2812 0.0625 +0.25 0.2812 0.09375 +0.25 0.2812 0.125 +0.25 0.2812 0.1562 +0.25 0.2812 0.1875 +0.25 0.2812 0.2188 +0.25 0.2812 0.25 +0.25 0.2812 0.2812 +0.25 0.2812 0.3125 +0.25 0.2812 0.3438 +0.25 0.2812 0.375 +0.25 0.2812 0.4062 +0.25 0.2812 0.4375 +0.25 0.2812 0.4688 +0.25 0.2812 0.5 +0.25 0.2812 0.5312 +0.25 0.2812 0.5625 +0.25 0.2812 0.5938 +0.25 0.2812 0.625 +0.25 0.2812 0.6562 +0.25 0.2812 0.6875 +0.25 0.2812 0.7188 +0.25 0.2812 0.75 +0.25 0.2812 0.7812 +0.25 0.2812 0.8125 +0.25 0.2812 0.8438 +0.25 0.2812 0.875 +0.25 0.2812 0.9062 +0.25 0.2812 0.9375 +0.25 0.2812 0.9688 +0.25 0.2812 1 +0.25 0.3125 0 +0.25 0.3125 0.03125 +0.25 0.3125 0.0625 +0.25 0.3125 0.09375 +0.25 0.3125 0.125 +0.25 0.3125 0.1562 +0.25 0.3125 0.1875 +0.25 0.3125 0.2188 +0.25 0.3125 0.25 +0.25 0.3125 0.2812 +0.25 0.3125 0.3125 +0.25 0.3125 0.3438 +0.25 0.3125 0.375 +0.25 0.3125 0.4062 +0.25 0.3125 0.4375 +0.25 0.3125 0.4688 +0.25 0.3125 0.5 +0.25 0.3125 0.5312 +0.25 0.3125 0.5625 +0.25 0.3125 0.5938 +0.25 0.3125 0.625 +0.25 0.3125 0.6562 +0.25 0.3125 0.6875 +0.25 0.3125 0.7188 +0.25 0.3125 0.75 +0.25 0.3125 0.7812 +0.25 0.3125 0.8125 +0.25 0.3125 0.8438 +0.25 0.3125 0.875 +0.25 0.3125 0.9062 +0.25 0.3125 0.9375 +0.25 0.3125 0.9688 +0.25 0.3125 1 +0.25 0.3438 0 +0.25 0.3438 0.03125 +0.25 0.3438 0.0625 +0.25 0.3438 0.09375 +0.25 0.3438 0.125 +0.25 0.3438 0.1562 +0.25 0.3438 0.1875 +0.25 0.3438 0.2188 +0.25 0.3438 0.25 +0.25 0.3438 0.2812 +0.25 0.3438 0.3125 +0.25 0.3438 0.3438 +0.25 0.3438 0.375 +0.25 0.3438 0.4062 +0.25 0.3438 0.4375 +0.25 0.3438 0.4688 +0.25 0.3438 0.5 +0.25 0.3438 0.5312 +0.25 0.3438 0.5625 +0.25 0.3438 0.5938 +0.25 0.3438 0.625 +0.25 0.3438 0.6562 +0.25 0.3438 0.6875 +0.25 0.3438 0.7188 +0.25 0.3438 0.75 +0.25 0.3438 0.7812 +0.25 0.3438 0.8125 +0.25 0.3438 0.8438 +0.25 0.3438 0.875 +0.25 0.3438 0.9062 +0.25 0.3438 0.9375 +0.25 0.3438 0.9688 +0.25 0.3438 1 +0.25 0.375 0 +0.25 0.375 0.03125 +0.25 0.375 0.0625 +0.25 0.375 0.09375 +0.25 0.375 0.125 +0.25 0.375 0.1562 +0.25 0.375 0.1875 +0.25 0.375 0.2188 +0.25 0.375 0.25 +0.25 0.375 0.2812 +0.25 0.375 0.3125 +0.25 0.375 0.3438 +0.25 0.375 0.375 +0.25 0.375 0.4062 +0.25 0.375 0.4375 +0.25 0.375 0.4688 +0.25 0.375 0.5 +0.25 0.375 0.5312 +0.25 0.375 0.5625 +0.25 0.375 0.5938 +0.25 0.375 0.625 +0.25 0.375 0.6562 +0.25 0.375 0.6875 +0.25 0.375 0.7188 +0.25 0.375 0.75 +0.25 0.375 0.7812 +0.25 0.375 0.8125 +0.25 0.375 0.8438 +0.25 0.375 0.875 +0.25 0.375 0.9062 +0.25 0.375 0.9375 +0.25 0.375 0.9688 +0.25 0.375 1 +0.25 0.4062 0 +0.25 0.4062 0.03125 +0.25 0.4062 0.0625 +0.25 0.4062 0.09375 +0.25 0.4062 0.125 +0.25 0.4062 0.1562 +0.25 0.4062 0.1875 +0.25 0.4062 0.2188 +0.25 0.4062 0.25 +0.25 0.4062 0.2812 +0.25 0.4062 0.3125 +0.25 0.4062 0.3438 +0.25 0.4062 0.375 +0.25 0.4062 0.4062 +0.25 0.4062 0.4375 +0.25 0.4062 0.4688 +0.25 0.4062 0.5 +0.25 0.4062 0.5312 +0.25 0.4062 0.5625 +0.25 0.4062 0.5938 +0.25 0.4062 0.625 +0.25 0.4062 0.6562 +0.25 0.4062 0.6875 +0.25 0.4062 0.7188 +0.25 0.4062 0.75 +0.25 0.4062 0.7812 +0.25 0.4062 0.8125 +0.25 0.4062 0.8438 +0.25 0.4062 0.875 +0.25 0.4062 0.9062 +0.25 0.4062 0.9375 +0.25 0.4062 0.9688 +0.25 0.4062 1 +0.25 0.4375 0 +0.25 0.4375 0.03125 +0.25 0.4375 0.0625 +0.25 0.4375 0.09375 +0.25 0.4375 0.125 +0.25 0.4375 0.1562 +0.25 0.4375 0.1875 +0.25 0.4375 0.2188 +0.25 0.4375 0.25 +0.25 0.4375 0.2812 +0.25 0.4375 0.3125 +0.25 0.4375 0.3438 +0.25 0.4375 0.375 +0.25 0.4375 0.4062 +0.25 0.4375 0.4375 +0.25 0.4375 0.4688 +0.25 0.4375 0.5 +0.25 0.4375 0.5312 +0.25 0.4375 0.5625 +0.25 0.4375 0.5938 +0.25 0.4375 0.625 +0.25 0.4375 0.6562 +0.25 0.4375 0.6875 +0.25 0.4375 0.7188 +0.25 0.4375 0.75 +0.25 0.4375 0.7812 +0.25 0.4375 0.8125 +0.25 0.4375 0.8438 +0.25 0.4375 0.875 +0.25 0.4375 0.9062 +0.25 0.4375 0.9375 +0.25 0.4375 0.9688 +0.25 0.4375 1 +0.25 0.4688 0 +0.25 0.4688 0.03125 +0.25 0.4688 0.0625 +0.25 0.4688 0.09375 +0.25 0.4688 0.125 +0.25 0.4688 0.1562 +0.25 0.4688 0.1875 +0.25 0.4688 0.2188 +0.25 0.4688 0.25 +0.25 0.4688 0.2812 +0.25 0.4688 0.3125 +0.25 0.4688 0.3438 +0.25 0.4688 0.375 +0.25 0.4688 0.4062 +0.25 0.4688 0.4375 +0.25 0.4688 0.4688 +0.25 0.4688 0.5 +0.25 0.4688 0.5312 +0.25 0.4688 0.5625 +0.25 0.4688 0.5938 +0.25 0.4688 0.625 +0.25 0.4688 0.6562 +0.25 0.4688 0.6875 +0.25 0.4688 0.7188 +0.25 0.4688 0.75 +0.25 0.4688 0.7812 +0.25 0.4688 0.8125 +0.25 0.4688 0.8438 +0.25 0.4688 0.875 +0.25 0.4688 0.9062 +0.25 0.4688 0.9375 +0.25 0.4688 0.9688 +0.25 0.4688 1 +0.25 0.5 0 +0.25 0.5 0.03125 +0.25 0.5 0.0625 +0.25 0.5 0.09375 +0.25 0.5 0.125 +0.25 0.5 0.1562 +0.25 0.5 0.1875 +0.25 0.5 0.2188 +0.25 0.5 0.25 +0.25 0.5 0.2812 +0.25 0.5 0.3125 +0.25 0.5 0.3438 +0.25 0.5 0.375 +0.25 0.5 0.4062 +0.25 0.5 0.4375 +0.25 0.5 0.4688 +0.25 0.5 0.5 +0.25 0.5 0.5312 +0.25 0.5 0.5625 +0.25 0.5 0.5938 +0.25 0.5 0.625 +0.25 0.5 0.6562 +0.25 0.5 0.6875 +0.25 0.5 0.7188 +0.25 0.5 0.75 +0.25 0.5 0.7812 +0.25 0.5 0.8125 +0.25 0.5 0.8438 +0.25 0.5 0.875 +0.25 0.5 0.9062 +0.25 0.5 0.9375 +0.25 0.5 0.9688 +0.25 0.5 1 +0.25 0.5312 0 +0.25 0.5312 0.03125 +0.25 0.5312 0.0625 +0.25 0.5312 0.09375 +0.25 0.5312 0.125 +0.25 0.5312 0.1562 +0.25 0.5312 0.1875 +0.25 0.5312 0.2188 +0.25 0.5312 0.25 +0.25 0.5312 0.2812 +0.25 0.5312 0.3125 +0.25 0.5312 0.3438 +0.25 0.5312 0.375 +0.25 0.5312 0.4062 +0.25 0.5312 0.4375 +0.25 0.5312 0.4688 +0.25 0.5312 0.5 +0.25 0.5312 0.5312 +0.25 0.5312 0.5625 +0.25 0.5312 0.5938 +0.25 0.5312 0.625 +0.25 0.5312 0.6562 +0.25 0.5312 0.6875 +0.25 0.5312 0.7188 +0.25 0.5312 0.75 +0.25 0.5312 0.7812 +0.25 0.5312 0.8125 +0.25 0.5312 0.8438 +0.25 0.5312 0.875 +0.25 0.5312 0.9062 +0.25 0.5312 0.9375 +0.25 0.5312 0.9688 +0.25 0.5312 1 +0.25 0.5625 0 +0.25 0.5625 0.03125 +0.25 0.5625 0.0625 +0.25 0.5625 0.09375 +0.25 0.5625 0.125 +0.25 0.5625 0.1562 +0.25 0.5625 0.1875 +0.25 0.5625 0.2188 +0.25 0.5625 0.25 +0.25 0.5625 0.2812 +0.25 0.5625 0.3125 +0.25 0.5625 0.3438 +0.25 0.5625 0.375 +0.25 0.5625 0.4062 +0.25 0.5625 0.4375 +0.25 0.5625 0.4688 +0.25 0.5625 0.5 +0.25 0.5625 0.5312 +0.25 0.5625 0.5625 +0.25 0.5625 0.5938 +0.25 0.5625 0.625 +0.25 0.5625 0.6562 +0.25 0.5625 0.6875 +0.25 0.5625 0.7188 +0.25 0.5625 0.75 +0.25 0.5625 0.7812 +0.25 0.5625 0.8125 +0.25 0.5625 0.8438 +0.25 0.5625 0.875 +0.25 0.5625 0.9062 +0.25 0.5625 0.9375 +0.25 0.5625 0.9688 +0.25 0.5625 1 +0.25 0.5938 0 +0.25 0.5938 0.03125 +0.25 0.5938 0.0625 +0.25 0.5938 0.09375 +0.25 0.5938 0.125 +0.25 0.5938 0.1562 +0.25 0.5938 0.1875 +0.25 0.5938 0.2188 +0.25 0.5938 0.25 +0.25 0.5938 0.2812 +0.25 0.5938 0.3125 +0.25 0.5938 0.3438 +0.25 0.5938 0.375 +0.25 0.5938 0.4062 +0.25 0.5938 0.4375 +0.25 0.5938 0.4688 +0.25 0.5938 0.5 +0.25 0.5938 0.5312 +0.25 0.5938 0.5625 +0.25 0.5938 0.5938 +0.25 0.5938 0.625 +0.25 0.5938 0.6562 +0.25 0.5938 0.6875 +0.25 0.5938 0.7188 +0.25 0.5938 0.75 +0.25 0.5938 0.7812 +0.25 0.5938 0.8125 +0.25 0.5938 0.8438 +0.25 0.5938 0.875 +0.25 0.5938 0.9062 +0.25 0.5938 0.9375 +0.25 0.5938 0.9688 +0.25 0.5938 1 +0.25 0.625 0 +0.25 0.625 0.03125 +0.25 0.625 0.0625 +0.25 0.625 0.09375 +0.25 0.625 0.125 +0.25 0.625 0.1562 +0.25 0.625 0.1875 +0.25 0.625 0.2188 +0.25 0.625 0.25 +0.25 0.625 0.2812 +0.25 0.625 0.3125 +0.25 0.625 0.3438 +0.25 0.625 0.375 +0.25 0.625 0.4062 +0.25 0.625 0.4375 +0.25 0.625 0.4688 +0.25 0.625 0.5 +0.25 0.625 0.5312 +0.25 0.625 0.5625 +0.25 0.625 0.5938 +0.25 0.625 0.625 +0.25 0.625 0.6562 +0.25 0.625 0.6875 +0.25 0.625 0.7188 +0.25 0.625 0.75 +0.25 0.625 0.7812 +0.25 0.625 0.8125 +0.25 0.625 0.8438 +0.25 0.625 0.875 +0.25 0.625 0.9062 +0.25 0.625 0.9375 +0.25 0.625 0.9688 +0.25 0.625 1 +0.25 0.6562 0 +0.25 0.6562 0.03125 +0.25 0.6562 0.0625 +0.25 0.6562 0.09375 +0.25 0.6562 0.125 +0.25 0.6562 0.1562 +0.25 0.6562 0.1875 +0.25 0.6562 0.2188 +0.25 0.6562 0.25 +0.25 0.6562 0.2812 +0.25 0.6562 0.3125 +0.25 0.6562 0.3438 +0.25 0.6562 0.375 +0.25 0.6562 0.4062 +0.25 0.6562 0.4375 +0.25 0.6562 0.4688 +0.25 0.6562 0.5 +0.25 0.6562 0.5312 +0.25 0.6562 0.5625 +0.25 0.6562 0.5938 +0.25 0.6562 0.625 +0.25 0.6562 0.6562 +0.25 0.6562 0.6875 +0.25 0.6562 0.7188 +0.25 0.6562 0.75 +0.25 0.6562 0.7812 +0.25 0.6562 0.8125 +0.25 0.6562 0.8438 +0.25 0.6562 0.875 +0.25 0.6562 0.9062 +0.25 0.6562 0.9375 +0.25 0.6562 0.9688 +0.25 0.6562 1 +0.25 0.6875 0 +0.25 0.6875 0.03125 +0.25 0.6875 0.0625 +0.25 0.6875 0.09375 +0.25 0.6875 0.125 +0.25 0.6875 0.1562 +0.25 0.6875 0.1875 +0.25 0.6875 0.2188 +0.25 0.6875 0.25 +0.25 0.6875 0.2812 +0.25 0.6875 0.3125 +0.25 0.6875 0.3438 +0.25 0.6875 0.375 +0.25 0.6875 0.4062 +0.25 0.6875 0.4375 +0.25 0.6875 0.4688 +0.25 0.6875 0.5 +0.25 0.6875 0.5312 +0.25 0.6875 0.5625 +0.25 0.6875 0.5938 +0.25 0.6875 0.625 +0.25 0.6875 0.6562 +0.25 0.6875 0.6875 +0.25 0.6875 0.7188 +0.25 0.6875 0.75 +0.25 0.6875 0.7812 +0.25 0.6875 0.8125 +0.25 0.6875 0.8438 +0.25 0.6875 0.875 +0.25 0.6875 0.9062 +0.25 0.6875 0.9375 +0.25 0.6875 0.9688 +0.25 0.6875 1 +0.25 0.7188 0 +0.25 0.7188 0.03125 +0.25 0.7188 0.0625 +0.25 0.7188 0.09375 +0.25 0.7188 0.125 +0.25 0.7188 0.1562 +0.25 0.7188 0.1875 +0.25 0.7188 0.2188 +0.25 0.7188 0.25 +0.25 0.7188 0.2812 +0.25 0.7188 0.3125 +0.25 0.7188 0.3438 +0.25 0.7188 0.375 +0.25 0.7188 0.4062 +0.25 0.7188 0.4375 +0.25 0.7188 0.4688 +0.25 0.7188 0.5 +0.25 0.7188 0.5312 +0.25 0.7188 0.5625 +0.25 0.7188 0.5938 +0.25 0.7188 0.625 +0.25 0.7188 0.6562 +0.25 0.7188 0.6875 +0.25 0.7188 0.7188 +0.25 0.7188 0.75 +0.25 0.7188 0.7812 +0.25 0.7188 0.8125 +0.25 0.7188 0.8438 +0.25 0.7188 0.875 +0.25 0.7188 0.9062 +0.25 0.7188 0.9375 +0.25 0.7188 0.9688 +0.25 0.7188 1 +0.25 0.75 0 +0.25 0.75 0.03125 +0.25 0.75 0.0625 +0.25 0.75 0.09375 +0.25 0.75 0.125 +0.25 0.75 0.1562 +0.25 0.75 0.1875 +0.25 0.75 0.2188 +0.25 0.75 0.25 +0.25 0.75 0.2812 +0.25 0.75 0.3125 +0.25 0.75 0.3438 +0.25 0.75 0.375 +0.25 0.75 0.4062 +0.25 0.75 0.4375 +0.25 0.75 0.4688 +0.25 0.75 0.5 +0.25 0.75 0.5312 +0.25 0.75 0.5625 +0.25 0.75 0.5938 +0.25 0.75 0.625 +0.25 0.75 0.6562 +0.25 0.75 0.6875 +0.25 0.75 0.7188 +0.25 0.75 0.75 +0.25 0.75 0.7812 +0.25 0.75 0.8125 +0.25 0.75 0.8438 +0.25 0.75 0.875 +0.25 0.75 0.9062 +0.25 0.75 0.9375 +0.25 0.75 0.9688 +0.25 0.75 1 +0.25 0.7812 0 +0.25 0.7812 0.03125 +0.25 0.7812 0.0625 +0.25 0.7812 0.09375 +0.25 0.7812 0.125 +0.25 0.7812 0.1562 +0.25 0.7812 0.1875 +0.25 0.7812 0.2188 +0.25 0.7812 0.25 +0.25 0.7812 0.2812 +0.25 0.7812 0.3125 +0.25 0.7812 0.3438 +0.25 0.7812 0.375 +0.25 0.7812 0.4062 +0.25 0.7812 0.4375 +0.25 0.7812 0.4688 +0.25 0.7812 0.5 +0.25 0.7812 0.5312 +0.25 0.7812 0.5625 +0.25 0.7812 0.5938 +0.25 0.7812 0.625 +0.25 0.7812 0.6562 +0.25 0.7812 0.6875 +0.25 0.7812 0.7188 +0.25 0.7812 0.75 +0.25 0.7812 0.7812 +0.25 0.7812 0.8125 +0.25 0.7812 0.8438 +0.25 0.7812 0.875 +0.25 0.7812 0.9062 +0.25 0.7812 0.9375 +0.25 0.7812 0.9688 +0.25 0.7812 1 +0.25 0.8125 0 +0.25 0.8125 0.03125 +0.25 0.8125 0.0625 +0.25 0.8125 0.09375 +0.25 0.8125 0.125 +0.25 0.8125 0.1562 +0.25 0.8125 0.1875 +0.25 0.8125 0.2188 +0.25 0.8125 0.25 +0.25 0.8125 0.2812 +0.25 0.8125 0.3125 +0.25 0.8125 0.3438 +0.25 0.8125 0.375 +0.25 0.8125 0.4062 +0.25 0.8125 0.4375 +0.25 0.8125 0.4688 +0.25 0.8125 0.5 +0.25 0.8125 0.5312 +0.25 0.8125 0.5625 +0.25 0.8125 0.5938 +0.25 0.8125 0.625 +0.25 0.8125 0.6562 +0.25 0.8125 0.6875 +0.25 0.8125 0.7188 +0.25 0.8125 0.75 +0.25 0.8125 0.7812 +0.25 0.8125 0.8125 +0.25 0.8125 0.8438 +0.25 0.8125 0.875 +0.25 0.8125 0.9062 +0.25 0.8125 0.9375 +0.25 0.8125 0.9688 +0.25 0.8125 1 +0.25 0.8438 0 +0.25 0.8438 0.03125 +0.25 0.8438 0.0625 +0.25 0.8438 0.09375 +0.25 0.8438 0.125 +0.25 0.8438 0.1562 +0.25 0.8438 0.1875 +0.25 0.8438 0.2188 +0.25 0.8438 0.25 +0.25 0.8438 0.2812 +0.25 0.8438 0.3125 +0.25 0.8438 0.3438 +0.25 0.8438 0.375 +0.25 0.8438 0.4062 +0.25 0.8438 0.4375 +0.25 0.8438 0.4688 +0.25 0.8438 0.5 +0.25 0.8438 0.5312 +0.25 0.8438 0.5625 +0.25 0.8438 0.5938 +0.25 0.8438 0.625 +0.25 0.8438 0.6562 +0.25 0.8438 0.6875 +0.25 0.8438 0.7188 +0.25 0.8438 0.75 +0.25 0.8438 0.7812 +0.25 0.8438 0.8125 +0.25 0.8438 0.8438 +0.25 0.8438 0.875 +0.25 0.8438 0.9062 +0.25 0.8438 0.9375 +0.25 0.8438 0.9688 +0.25 0.8438 1 +0.25 0.875 0 +0.25 0.875 0.03125 +0.25 0.875 0.0625 +0.25 0.875 0.09375 +0.25 0.875 0.125 +0.25 0.875 0.1562 +0.25 0.875 0.1875 +0.25 0.875 0.2188 +0.25 0.875 0.25 +0.25 0.875 0.2812 +0.25 0.875 0.3125 +0.25 0.875 0.3438 +0.25 0.875 0.375 +0.25 0.875 0.4062 +0.25 0.875 0.4375 +0.25 0.875 0.4688 +0.25 0.875 0.5 +0.25 0.875 0.5312 +0.25 0.875 0.5625 +0.25 0.875 0.5938 +0.25 0.875 0.625 +0.25 0.875 0.6562 +0.25 0.875 0.6875 +0.25 0.875 0.7188 +0.25 0.875 0.75 +0.25 0.875 0.7812 +0.25 0.875 0.8125 +0.25 0.875 0.8438 +0.25 0.875 0.875 +0.25 0.875 0.9062 +0.25 0.875 0.9375 +0.25 0.875 0.9688 +0.25 0.875 1 +0.25 0.9062 0 +0.25 0.9062 0.03125 +0.25 0.9062 0.0625 +0.25 0.9062 0.09375 +0.25 0.9062 0.125 +0.25 0.9062 0.1562 +0.25 0.9062 0.1875 +0.25 0.9062 0.2188 +0.25 0.9062 0.25 +0.25 0.9062 0.2812 +0.25 0.9062 0.3125 +0.25 0.9062 0.3438 +0.25 0.9062 0.375 +0.25 0.9062 0.4062 +0.25 0.9062 0.4375 +0.25 0.9062 0.4688 +0.25 0.9062 0.5 +0.25 0.9062 0.5312 +0.25 0.9062 0.5625 +0.25 0.9062 0.5938 +0.25 0.9062 0.625 +0.25 0.9062 0.6562 +0.25 0.9062 0.6875 +0.25 0.9062 0.7188 +0.25 0.9062 0.75 +0.25 0.9062 0.7812 +0.25 0.9062 0.8125 +0.25 0.9062 0.8438 +0.25 0.9062 0.875 +0.25 0.9062 0.9062 +0.25 0.9062 0.9375 +0.25 0.9062 0.9688 +0.25 0.9062 1 +0.25 0.9375 0 +0.25 0.9375 0.03125 +0.25 0.9375 0.0625 +0.25 0.9375 0.09375 +0.25 0.9375 0.125 +0.25 0.9375 0.1562 +0.25 0.9375 0.1875 +0.25 0.9375 0.2188 +0.25 0.9375 0.25 +0.25 0.9375 0.2812 +0.25 0.9375 0.3125 +0.25 0.9375 0.3438 +0.25 0.9375 0.375 +0.25 0.9375 0.4062 +0.25 0.9375 0.4375 +0.25 0.9375 0.4688 +0.25 0.9375 0.5 +0.25 0.9375 0.5312 +0.25 0.9375 0.5625 +0.25 0.9375 0.5938 +0.25 0.9375 0.625 +0.25 0.9375 0.6562 +0.25 0.9375 0.6875 +0.25 0.9375 0.7188 +0.25 0.9375 0.75 +0.25 0.9375 0.7812 +0.25 0.9375 0.8125 +0.25 0.9375 0.8438 +0.25 0.9375 0.875 +0.25 0.9375 0.9062 +0.25 0.9375 0.9375 +0.25 0.9375 0.9688 +0.25 0.9375 1 +0.25 0.9688 0 +0.25 0.9688 0.03125 +0.25 0.9688 0.0625 +0.25 0.9688 0.09375 +0.25 0.9688 0.125 +0.25 0.9688 0.1562 +0.25 0.9688 0.1875 +0.25 0.9688 0.2188 +0.25 0.9688 0.25 +0.25 0.9688 0.2812 +0.25 0.9688 0.3125 +0.25 0.9688 0.3438 +0.25 0.9688 0.375 +0.25 0.9688 0.4062 +0.25 0.9688 0.4375 +0.25 0.9688 0.4688 +0.25 0.9688 0.5 +0.25 0.9688 0.5312 +0.25 0.9688 0.5625 +0.25 0.9688 0.5938 +0.25 0.9688 0.625 +0.25 0.9688 0.6562 +0.25 0.9688 0.6875 +0.25 0.9688 0.7188 +0.25 0.9688 0.75 +0.25 0.9688 0.7812 +0.25 0.9688 0.8125 +0.25 0.9688 0.8438 +0.25 0.9688 0.875 +0.25 0.9688 0.9062 +0.25 0.9688 0.9375 +0.25 0.9688 0.9688 +0.25 0.9688 1 +0.25 1 0 +0.25 1 0.03125 +0.25 1 0.0625 +0.25 1 0.09375 +0.25 1 0.125 +0.25 1 0.1562 +0.25 1 0.1875 +0.25 1 0.2188 +0.25 1 0.25 +0.25 1 0.2812 +0.25 1 0.3125 +0.25 1 0.3438 +0.25 1 0.375 +0.25 1 0.4062 +0.25 1 0.4375 +0.25 1 0.4688 +0.25 1 0.5 +0.25 1 0.5312 +0.25 1 0.5625 +0.25 1 0.5938 +0.25 1 0.625 +0.25 1 0.6562 +0.25 1 0.6875 +0.25 1 0.7188 +0.25 1 0.75 +0.25 1 0.7812 +0.25 1 0.8125 +0.25 1 0.8438 +0.25 1 0.875 +0.25 1 0.9062 +0.25 1 0.9375 +0.25 1 0.9688 +0.25 1 1 +0.2812 0 0 +0.2812 0 0.03125 +0.2812 0 0.0625 +0.2812 0 0.09375 +0.2812 0 0.125 +0.2812 0 0.1562 +0.2812 0 0.1875 +0.2812 0 0.2188 +0.2812 0 0.25 +0.2812 0 0.2812 +0.2812 0 0.3125 +0.2812 0 0.3438 +0.2812 0 0.375 +0.2812 0 0.4062 +0.2812 0 0.4375 +0.2812 0 0.4688 +0.2812 0 0.5 +0.2812 0 0.5312 +0.2812 0 0.5625 +0.2812 0 0.5938 +0.2812 0 0.625 +0.2812 0 0.6562 +0.2812 0 0.6875 +0.2812 0 0.7188 +0.2812 0 0.75 +0.2812 0 0.7812 +0.2812 0 0.8125 +0.2812 0 0.8438 +0.2812 0 0.875 +0.2812 0 0.9062 +0.2812 0 0.9375 +0.2812 0 0.9688 +0.2812 0 1 +0.2812 0.03125 0 +0.2812 0.03125 0.03125 +0.2812 0.03125 0.0625 +0.2812 0.03125 0.09375 +0.2812 0.03125 0.125 +0.2812 0.03125 0.1562 +0.2812 0.03125 0.1875 +0.2812 0.03125 0.2188 +0.2812 0.03125 0.25 +0.2812 0.03125 0.2812 +0.2812 0.03125 0.3125 +0.2812 0.03125 0.3438 +0.2812 0.03125 0.375 +0.2812 0.03125 0.4062 +0.2812 0.03125 0.4375 +0.2812 0.03125 0.4688 +0.2812 0.03125 0.5 +0.2812 0.03125 0.5312 +0.2812 0.03125 0.5625 +0.2812 0.03125 0.5938 +0.2812 0.03125 0.625 +0.2812 0.03125 0.6562 +0.2812 0.03125 0.6875 +0.2812 0.03125 0.7188 +0.2812 0.03125 0.75 +0.2812 0.03125 0.7812 +0.2812 0.03125 0.8125 +0.2812 0.03125 0.8438 +0.2812 0.03125 0.875 +0.2812 0.03125 0.9062 +0.2812 0.03125 0.9375 +0.2812 0.03125 0.9688 +0.2812 0.03125 1 +0.2812 0.0625 0 +0.2812 0.0625 0.03125 +0.2812 0.0625 0.0625 +0.2812 0.0625 0.09375 +0.2812 0.0625 0.125 +0.2812 0.0625 0.1562 +0.2812 0.0625 0.1875 +0.2812 0.0625 0.2188 +0.2812 0.0625 0.25 +0.2812 0.0625 0.2812 +0.2812 0.0625 0.3125 +0.2812 0.0625 0.3438 +0.2812 0.0625 0.375 +0.2812 0.0625 0.4062 +0.2812 0.0625 0.4375 +0.2812 0.0625 0.4688 +0.2812 0.0625 0.5 +0.2812 0.0625 0.5312 +0.2812 0.0625 0.5625 +0.2812 0.0625 0.5938 +0.2812 0.0625 0.625 +0.2812 0.0625 0.6562 +0.2812 0.0625 0.6875 +0.2812 0.0625 0.7188 +0.2812 0.0625 0.75 +0.2812 0.0625 0.7812 +0.2812 0.0625 0.8125 +0.2812 0.0625 0.8438 +0.2812 0.0625 0.875 +0.2812 0.0625 0.9062 +0.2812 0.0625 0.9375 +0.2812 0.0625 0.9688 +0.2812 0.0625 1 +0.2812 0.09375 0 +0.2812 0.09375 0.03125 +0.2812 0.09375 0.0625 +0.2812 0.09375 0.09375 +0.2812 0.09375 0.125 +0.2812 0.09375 0.1562 +0.2812 0.09375 0.1875 +0.2812 0.09375 0.2188 +0.2812 0.09375 0.25 +0.2812 0.09375 0.2812 +0.2812 0.09375 0.3125 +0.2812 0.09375 0.3438 +0.2812 0.09375 0.375 +0.2812 0.09375 0.4062 +0.2812 0.09375 0.4375 +0.2812 0.09375 0.4688 +0.2812 0.09375 0.5 +0.2812 0.09375 0.5312 +0.2812 0.09375 0.5625 +0.2812 0.09375 0.5938 +0.2812 0.09375 0.625 +0.2812 0.09375 0.6562 +0.2812 0.09375 0.6875 +0.2812 0.09375 0.7188 +0.2812 0.09375 0.75 +0.2812 0.09375 0.7812 +0.2812 0.09375 0.8125 +0.2812 0.09375 0.8438 +0.2812 0.09375 0.875 +0.2812 0.09375 0.9062 +0.2812 0.09375 0.9375 +0.2812 0.09375 0.9688 +0.2812 0.09375 1 +0.2812 0.125 0 +0.2812 0.125 0.03125 +0.2812 0.125 0.0625 +0.2812 0.125 0.09375 +0.2812 0.125 0.125 +0.2812 0.125 0.1562 +0.2812 0.125 0.1875 +0.2812 0.125 0.2188 +0.2812 0.125 0.25 +0.2812 0.125 0.2812 +0.2812 0.125 0.3125 +0.2812 0.125 0.3438 +0.2812 0.125 0.375 +0.2812 0.125 0.4062 +0.2812 0.125 0.4375 +0.2812 0.125 0.4688 +0.2812 0.125 0.5 +0.2812 0.125 0.5312 +0.2812 0.125 0.5625 +0.2812 0.125 0.5938 +0.2812 0.125 0.625 +0.2812 0.125 0.6562 +0.2812 0.125 0.6875 +0.2812 0.125 0.7188 +0.2812 0.125 0.75 +0.2812 0.125 0.7812 +0.2812 0.125 0.8125 +0.2812 0.125 0.8438 +0.2812 0.125 0.875 +0.2812 0.125 0.9062 +0.2812 0.125 0.9375 +0.2812 0.125 0.9688 +0.2812 0.125 1 +0.2812 0.1562 0 +0.2812 0.1562 0.03125 +0.2812 0.1562 0.0625 +0.2812 0.1562 0.09375 +0.2812 0.1562 0.125 +0.2812 0.1562 0.1562 +0.2812 0.1562 0.1875 +0.2812 0.1562 0.2188 +0.2812 0.1562 0.25 +0.2812 0.1562 0.2812 +0.2812 0.1562 0.3125 +0.2812 0.1562 0.3438 +0.2812 0.1562 0.375 +0.2812 0.1562 0.4062 +0.2812 0.1562 0.4375 +0.2812 0.1562 0.4688 +0.2812 0.1562 0.5 +0.2812 0.1562 0.5312 +0.2812 0.1562 0.5625 +0.2812 0.1562 0.5938 +0.2812 0.1562 0.625 +0.2812 0.1562 0.6562 +0.2812 0.1562 0.6875 +0.2812 0.1562 0.7188 +0.2812 0.1562 0.75 +0.2812 0.1562 0.7812 +0.2812 0.1562 0.8125 +0.2812 0.1562 0.8438 +0.2812 0.1562 0.875 +0.2812 0.1562 0.9062 +0.2812 0.1562 0.9375 +0.2812 0.1562 0.9688 +0.2812 0.1562 1 +0.2812 0.1875 0 +0.2812 0.1875 0.03125 +0.2812 0.1875 0.0625 +0.2812 0.1875 0.09375 +0.2812 0.1875 0.125 +0.2812 0.1875 0.1562 +0.2812 0.1875 0.1875 +0.2812 0.1875 0.2188 +0.2812 0.1875 0.25 +0.2812 0.1875 0.2812 +0.2812 0.1875 0.3125 +0.2812 0.1875 0.3438 +0.2812 0.1875 0.375 +0.2812 0.1875 0.4062 +0.2812 0.1875 0.4375 +0.2812 0.1875 0.4688 +0.2812 0.1875 0.5 +0.2812 0.1875 0.5312 +0.2812 0.1875 0.5625 +0.2812 0.1875 0.5938 +0.2812 0.1875 0.625 +0.2812 0.1875 0.6562 +0.2812 0.1875 0.6875 +0.2812 0.1875 0.7188 +0.2812 0.1875 0.75 +0.2812 0.1875 0.7812 +0.2812 0.1875 0.8125 +0.2812 0.1875 0.8438 +0.2812 0.1875 0.875 +0.2812 0.1875 0.9062 +0.2812 0.1875 0.9375 +0.2812 0.1875 0.9688 +0.2812 0.1875 1 +0.2812 0.2188 0 +0.2812 0.2188 0.03125 +0.2812 0.2188 0.0625 +0.2812 0.2188 0.09375 +0.2812 0.2188 0.125 +0.2812 0.2188 0.1562 +0.2812 0.2188 0.1875 +0.2812 0.2188 0.2188 +0.2812 0.2188 0.25 +0.2812 0.2188 0.2812 +0.2812 0.2188 0.3125 +0.2812 0.2188 0.3438 +0.2812 0.2188 0.375 +0.2812 0.2188 0.4062 +0.2812 0.2188 0.4375 +0.2812 0.2188 0.4688 +0.2812 0.2188 0.5 +0.2812 0.2188 0.5312 +0.2812 0.2188 0.5625 +0.2812 0.2188 0.5938 +0.2812 0.2188 0.625 +0.2812 0.2188 0.6562 +0.2812 0.2188 0.6875 +0.2812 0.2188 0.7188 +0.2812 0.2188 0.75 +0.2812 0.2188 0.7812 +0.2812 0.2188 0.8125 +0.2812 0.2188 0.8438 +0.2812 0.2188 0.875 +0.2812 0.2188 0.9062 +0.2812 0.2188 0.9375 +0.2812 0.2188 0.9688 +0.2812 0.2188 1 +0.2812 0.25 0 +0.2812 0.25 0.03125 +0.2812 0.25 0.0625 +0.2812 0.25 0.09375 +0.2812 0.25 0.125 +0.2812 0.25 0.1562 +0.2812 0.25 0.1875 +0.2812 0.25 0.2188 +0.2812 0.25 0.25 +0.2812 0.25 0.2812 +0.2812 0.25 0.3125 +0.2812 0.25 0.3438 +0.2812 0.25 0.375 +0.2812 0.25 0.4062 +0.2812 0.25 0.4375 +0.2812 0.25 0.4688 +0.2812 0.25 0.5 +0.2812 0.25 0.5312 +0.2812 0.25 0.5625 +0.2812 0.25 0.5938 +0.2812 0.25 0.625 +0.2812 0.25 0.6562 +0.2812 0.25 0.6875 +0.2812 0.25 0.7188 +0.2812 0.25 0.75 +0.2812 0.25 0.7812 +0.2812 0.25 0.8125 +0.2812 0.25 0.8438 +0.2812 0.25 0.875 +0.2812 0.25 0.9062 +0.2812 0.25 0.9375 +0.2812 0.25 0.9688 +0.2812 0.25 1 +0.2812 0.2812 0 +0.2812 0.2812 0.03125 +0.2812 0.2812 0.0625 +0.2812 0.2812 0.09375 +0.2812 0.2812 0.125 +0.2812 0.2812 0.1562 +0.2812 0.2812 0.1875 +0.2812 0.2812 0.2188 +0.2812 0.2812 0.25 +0.2812 0.2812 0.2812 +0.2812 0.2812 0.3125 +0.2812 0.2812 0.3438 +0.2812 0.2812 0.375 +0.2812 0.2812 0.4062 +0.2812 0.2812 0.4375 +0.2812 0.2812 0.4688 +0.2812 0.2812 0.5 +0.2812 0.2812 0.5312 +0.2812 0.2812 0.5625 +0.2812 0.2812 0.5938 +0.2812 0.2812 0.625 +0.2812 0.2812 0.6562 +0.2812 0.2812 0.6875 +0.2812 0.2812 0.7188 +0.2812 0.2812 0.75 +0.2812 0.2812 0.7812 +0.2812 0.2812 0.8125 +0.2812 0.2812 0.8438 +0.2812 0.2812 0.875 +0.2812 0.2812 0.9062 +0.2812 0.2812 0.9375 +0.2812 0.2812 0.9688 +0.2812 0.2812 1 +0.2812 0.3125 0 +0.2812 0.3125 0.03125 +0.2812 0.3125 0.0625 +0.2812 0.3125 0.09375 +0.2812 0.3125 0.125 +0.2812 0.3125 0.1562 +0.2812 0.3125 0.1875 +0.2812 0.3125 0.2188 +0.2812 0.3125 0.25 +0.2812 0.3125 0.2812 +0.2812 0.3125 0.3125 +0.2812 0.3125 0.3438 +0.2812 0.3125 0.375 +0.2812 0.3125 0.4062 +0.2812 0.3125 0.4375 +0.2812 0.3125 0.4688 +0.2812 0.3125 0.5 +0.2812 0.3125 0.5312 +0.2812 0.3125 0.5625 +0.2812 0.3125 0.5938 +0.2812 0.3125 0.625 +0.2812 0.3125 0.6562 +0.2812 0.3125 0.6875 +0.2812 0.3125 0.7188 +0.2812 0.3125 0.75 +0.2812 0.3125 0.7812 +0.2812 0.3125 0.8125 +0.2812 0.3125 0.8438 +0.2812 0.3125 0.875 +0.2812 0.3125 0.9062 +0.2812 0.3125 0.9375 +0.2812 0.3125 0.9688 +0.2812 0.3125 1 +0.2812 0.3438 0 +0.2812 0.3438 0.03125 +0.2812 0.3438 0.0625 +0.2812 0.3438 0.09375 +0.2812 0.3438 0.125 +0.2812 0.3438 0.1562 +0.2812 0.3438 0.1875 +0.2812 0.3438 0.2188 +0.2812 0.3438 0.25 +0.2812 0.3438 0.2812 +0.2812 0.3438 0.3125 +0.2812 0.3438 0.3438 +0.2812 0.3438 0.375 +0.2812 0.3438 0.4062 +0.2812 0.3438 0.4375 +0.2812 0.3438 0.4688 +0.2812 0.3438 0.5 +0.2812 0.3438 0.5312 +0.2812 0.3438 0.5625 +0.2812 0.3438 0.5938 +0.2812 0.3438 0.625 +0.2812 0.3438 0.6562 +0.2812 0.3438 0.6875 +0.2812 0.3438 0.7188 +0.2812 0.3438 0.75 +0.2812 0.3438 0.7812 +0.2812 0.3438 0.8125 +0.2812 0.3438 0.8438 +0.2812 0.3438 0.875 +0.2812 0.3438 0.9062 +0.2812 0.3438 0.9375 +0.2812 0.3438 0.9688 +0.2812 0.3438 1 +0.2812 0.375 0 +0.2812 0.375 0.03125 +0.2812 0.375 0.0625 +0.2812 0.375 0.09375 +0.2812 0.375 0.125 +0.2812 0.375 0.1562 +0.2812 0.375 0.1875 +0.2812 0.375 0.2188 +0.2812 0.375 0.25 +0.2812 0.375 0.2812 +0.2812 0.375 0.3125 +0.2812 0.375 0.3438 +0.2812 0.375 0.375 +0.2812 0.375 0.4062 +0.2812 0.375 0.4375 +0.2812 0.375 0.4688 +0.2812 0.375 0.5 +0.2812 0.375 0.5312 +0.2812 0.375 0.5625 +0.2812 0.375 0.5938 +0.2812 0.375 0.625 +0.2812 0.375 0.6562 +0.2812 0.375 0.6875 +0.2812 0.375 0.7188 +0.2812 0.375 0.75 +0.2812 0.375 0.7812 +0.2812 0.375 0.8125 +0.2812 0.375 0.8438 +0.2812 0.375 0.875 +0.2812 0.375 0.9062 +0.2812 0.375 0.9375 +0.2812 0.375 0.9688 +0.2812 0.375 1 +0.2812 0.4062 0 +0.2812 0.4062 0.03125 +0.2812 0.4062 0.0625 +0.2812 0.4062 0.09375 +0.2812 0.4062 0.125 +0.2812 0.4062 0.1562 +0.2812 0.4062 0.1875 +0.2812 0.4062 0.2188 +0.2812 0.4062 0.25 +0.2812 0.4062 0.2812 +0.2812 0.4062 0.3125 +0.2812 0.4062 0.3438 +0.2812 0.4062 0.375 +0.2812 0.4062 0.4062 +0.2812 0.4062 0.4375 +0.2812 0.4062 0.4688 +0.2812 0.4062 0.5 +0.2812 0.4062 0.5312 +0.2812 0.4062 0.5625 +0.2812 0.4062 0.5938 +0.2812 0.4062 0.625 +0.2812 0.4062 0.6562 +0.2812 0.4062 0.6875 +0.2812 0.4062 0.7188 +0.2812 0.4062 0.75 +0.2812 0.4062 0.7812 +0.2812 0.4062 0.8125 +0.2812 0.4062 0.8438 +0.2812 0.4062 0.875 +0.2812 0.4062 0.9062 +0.2812 0.4062 0.9375 +0.2812 0.4062 0.9688 +0.2812 0.4062 1 +0.2812 0.4375 0 +0.2812 0.4375 0.03125 +0.2812 0.4375 0.0625 +0.2812 0.4375 0.09375 +0.2812 0.4375 0.125 +0.2812 0.4375 0.1562 +0.2812 0.4375 0.1875 +0.2812 0.4375 0.2188 +0.2812 0.4375 0.25 +0.2812 0.4375 0.2812 +0.2812 0.4375 0.3125 +0.2812 0.4375 0.3438 +0.2812 0.4375 0.375 +0.2812 0.4375 0.4062 +0.2812 0.4375 0.4375 +0.2812 0.4375 0.4688 +0.2812 0.4375 0.5 +0.2812 0.4375 0.5312 +0.2812 0.4375 0.5625 +0.2812 0.4375 0.5938 +0.2812 0.4375 0.625 +0.2812 0.4375 0.6562 +0.2812 0.4375 0.6875 +0.2812 0.4375 0.7188 +0.2812 0.4375 0.75 +0.2812 0.4375 0.7812 +0.2812 0.4375 0.8125 +0.2812 0.4375 0.8438 +0.2812 0.4375 0.875 +0.2812 0.4375 0.9062 +0.2812 0.4375 0.9375 +0.2812 0.4375 0.9688 +0.2812 0.4375 1 +0.2812 0.4688 0 +0.2812 0.4688 0.03125 +0.2812 0.4688 0.0625 +0.2812 0.4688 0.09375 +0.2812 0.4688 0.125 +0.2812 0.4688 0.1562 +0.2812 0.4688 0.1875 +0.2812 0.4688 0.2188 +0.2812 0.4688 0.25 +0.2812 0.4688 0.2812 +0.2812 0.4688 0.3125 +0.2812 0.4688 0.3438 +0.2812 0.4688 0.375 +0.2812 0.4688 0.4062 +0.2812 0.4688 0.4375 +0.2812 0.4688 0.4688 +0.2812 0.4688 0.5 +0.2812 0.4688 0.5312 +0.2812 0.4688 0.5625 +0.2812 0.4688 0.5938 +0.2812 0.4688 0.625 +0.2812 0.4688 0.6562 +0.2812 0.4688 0.6875 +0.2812 0.4688 0.7188 +0.2812 0.4688 0.75 +0.2812 0.4688 0.7812 +0.2812 0.4688 0.8125 +0.2812 0.4688 0.8438 +0.2812 0.4688 0.875 +0.2812 0.4688 0.9062 +0.2812 0.4688 0.9375 +0.2812 0.4688 0.9688 +0.2812 0.4688 1 +0.2812 0.5 0 +0.2812 0.5 0.03125 +0.2812 0.5 0.0625 +0.2812 0.5 0.09375 +0.2812 0.5 0.125 +0.2812 0.5 0.1562 +0.2812 0.5 0.1875 +0.2812 0.5 0.2188 +0.2812 0.5 0.25 +0.2812 0.5 0.2812 +0.2812 0.5 0.3125 +0.2812 0.5 0.3438 +0.2812 0.5 0.375 +0.2812 0.5 0.4062 +0.2812 0.5 0.4375 +0.2812 0.5 0.4688 +0.2812 0.5 0.5 +0.2812 0.5 0.5312 +0.2812 0.5 0.5625 +0.2812 0.5 0.5938 +0.2812 0.5 0.625 +0.2812 0.5 0.6562 +0.2812 0.5 0.6875 +0.2812 0.5 0.7188 +0.2812 0.5 0.75 +0.2812 0.5 0.7812 +0.2812 0.5 0.8125 +0.2812 0.5 0.8438 +0.2812 0.5 0.875 +0.2812 0.5 0.9062 +0.2812 0.5 0.9375 +0.2812 0.5 0.9688 +0.2812 0.5 1 +0.2812 0.5312 0 +0.2812 0.5312 0.03125 +0.2812 0.5312 0.0625 +0.2812 0.5312 0.09375 +0.2812 0.5312 0.125 +0.2812 0.5312 0.1562 +0.2812 0.5312 0.1875 +0.2812 0.5312 0.2188 +0.2812 0.5312 0.25 +0.2812 0.5312 0.2812 +0.2812 0.5312 0.3125 +0.2812 0.5312 0.3438 +0.2812 0.5312 0.375 +0.2812 0.5312 0.4062 +0.2812 0.5312 0.4375 +0.2812 0.5312 0.4688 +0.2812 0.5312 0.5 +0.2812 0.5312 0.5312 +0.2812 0.5312 0.5625 +0.2812 0.5312 0.5938 +0.2812 0.5312 0.625 +0.2812 0.5312 0.6562 +0.2812 0.5312 0.6875 +0.2812 0.5312 0.7188 +0.2812 0.5312 0.75 +0.2812 0.5312 0.7812 +0.2812 0.5312 0.8125 +0.2812 0.5312 0.8438 +0.2812 0.5312 0.875 +0.2812 0.5312 0.9062 +0.2812 0.5312 0.9375 +0.2812 0.5312 0.9688 +0.2812 0.5312 1 +0.2812 0.5625 0 +0.2812 0.5625 0.03125 +0.2812 0.5625 0.0625 +0.2812 0.5625 0.09375 +0.2812 0.5625 0.125 +0.2812 0.5625 0.1562 +0.2812 0.5625 0.1875 +0.2812 0.5625 0.2188 +0.2812 0.5625 0.25 +0.2812 0.5625 0.2812 +0.2812 0.5625 0.3125 +0.2812 0.5625 0.3438 +0.2812 0.5625 0.375 +0.2812 0.5625 0.4062 +0.2812 0.5625 0.4375 +0.2812 0.5625 0.4688 +0.2812 0.5625 0.5 +0.2812 0.5625 0.5312 +0.2812 0.5625 0.5625 +0.2812 0.5625 0.5938 +0.2812 0.5625 0.625 +0.2812 0.5625 0.6562 +0.2812 0.5625 0.6875 +0.2812 0.5625 0.7188 +0.2812 0.5625 0.75 +0.2812 0.5625 0.7812 +0.2812 0.5625 0.8125 +0.2812 0.5625 0.8438 +0.2812 0.5625 0.875 +0.2812 0.5625 0.9062 +0.2812 0.5625 0.9375 +0.2812 0.5625 0.9688 +0.2812 0.5625 1 +0.2812 0.5938 0 +0.2812 0.5938 0.03125 +0.2812 0.5938 0.0625 +0.2812 0.5938 0.09375 +0.2812 0.5938 0.125 +0.2812 0.5938 0.1562 +0.2812 0.5938 0.1875 +0.2812 0.5938 0.2188 +0.2812 0.5938 0.25 +0.2812 0.5938 0.2812 +0.2812 0.5938 0.3125 +0.2812 0.5938 0.3438 +0.2812 0.5938 0.375 +0.2812 0.5938 0.4062 +0.2812 0.5938 0.4375 +0.2812 0.5938 0.4688 +0.2812 0.5938 0.5 +0.2812 0.5938 0.5312 +0.2812 0.5938 0.5625 +0.2812 0.5938 0.5938 +0.2812 0.5938 0.625 +0.2812 0.5938 0.6562 +0.2812 0.5938 0.6875 +0.2812 0.5938 0.7188 +0.2812 0.5938 0.75 +0.2812 0.5938 0.7812 +0.2812 0.5938 0.8125 +0.2812 0.5938 0.8438 +0.2812 0.5938 0.875 +0.2812 0.5938 0.9062 +0.2812 0.5938 0.9375 +0.2812 0.5938 0.9688 +0.2812 0.5938 1 +0.2812 0.625 0 +0.2812 0.625 0.03125 +0.2812 0.625 0.0625 +0.2812 0.625 0.09375 +0.2812 0.625 0.125 +0.2812 0.625 0.1562 +0.2812 0.625 0.1875 +0.2812 0.625 0.2188 +0.2812 0.625 0.25 +0.2812 0.625 0.2812 +0.2812 0.625 0.3125 +0.2812 0.625 0.3438 +0.2812 0.625 0.375 +0.2812 0.625 0.4062 +0.2812 0.625 0.4375 +0.2812 0.625 0.4688 +0.2812 0.625 0.5 +0.2812 0.625 0.5312 +0.2812 0.625 0.5625 +0.2812 0.625 0.5938 +0.2812 0.625 0.625 +0.2812 0.625 0.6562 +0.2812 0.625 0.6875 +0.2812 0.625 0.7188 +0.2812 0.625 0.75 +0.2812 0.625 0.7812 +0.2812 0.625 0.8125 +0.2812 0.625 0.8438 +0.2812 0.625 0.875 +0.2812 0.625 0.9062 +0.2812 0.625 0.9375 +0.2812 0.625 0.9688 +0.2812 0.625 1 +0.2812 0.6562 0 +0.2812 0.6562 0.03125 +0.2812 0.6562 0.0625 +0.2812 0.6562 0.09375 +0.2812 0.6562 0.125 +0.2812 0.6562 0.1562 +0.2812 0.6562 0.1875 +0.2812 0.6562 0.2188 +0.2812 0.6562 0.25 +0.2812 0.6562 0.2812 +0.2812 0.6562 0.3125 +0.2812 0.6562 0.3438 +0.2812 0.6562 0.375 +0.2812 0.6562 0.4062 +0.2812 0.6562 0.4375 +0.2812 0.6562 0.4688 +0.2812 0.6562 0.5 +0.2812 0.6562 0.5312 +0.2812 0.6562 0.5625 +0.2812 0.6562 0.5938 +0.2812 0.6562 0.625 +0.2812 0.6562 0.6562 +0.2812 0.6562 0.6875 +0.2812 0.6562 0.7188 +0.2812 0.6562 0.75 +0.2812 0.6562 0.7812 +0.2812 0.6562 0.8125 +0.2812 0.6562 0.8438 +0.2812 0.6562 0.875 +0.2812 0.6562 0.9062 +0.2812 0.6562 0.9375 +0.2812 0.6562 0.9688 +0.2812 0.6562 1 +0.2812 0.6875 0 +0.2812 0.6875 0.03125 +0.2812 0.6875 0.0625 +0.2812 0.6875 0.09375 +0.2812 0.6875 0.125 +0.2812 0.6875 0.1562 +0.2812 0.6875 0.1875 +0.2812 0.6875 0.2188 +0.2812 0.6875 0.25 +0.2812 0.6875 0.2812 +0.2812 0.6875 0.3125 +0.2812 0.6875 0.3438 +0.2812 0.6875 0.375 +0.2812 0.6875 0.4062 +0.2812 0.6875 0.4375 +0.2812 0.6875 0.4688 +0.2812 0.6875 0.5 +0.2812 0.6875 0.5312 +0.2812 0.6875 0.5625 +0.2812 0.6875 0.5938 +0.2812 0.6875 0.625 +0.2812 0.6875 0.6562 +0.2812 0.6875 0.6875 +0.2812 0.6875 0.7188 +0.2812 0.6875 0.75 +0.2812 0.6875 0.7812 +0.2812 0.6875 0.8125 +0.2812 0.6875 0.8438 +0.2812 0.6875 0.875 +0.2812 0.6875 0.9062 +0.2812 0.6875 0.9375 +0.2812 0.6875 0.9688 +0.2812 0.6875 1 +0.2812 0.7188 0 +0.2812 0.7188 0.03125 +0.2812 0.7188 0.0625 +0.2812 0.7188 0.09375 +0.2812 0.7188 0.125 +0.2812 0.7188 0.1562 +0.2812 0.7188 0.1875 +0.2812 0.7188 0.2188 +0.2812 0.7188 0.25 +0.2812 0.7188 0.2812 +0.2812 0.7188 0.3125 +0.2812 0.7188 0.3438 +0.2812 0.7188 0.375 +0.2812 0.7188 0.4062 +0.2812 0.7188 0.4375 +0.2812 0.7188 0.4688 +0.2812 0.7188 0.5 +0.2812 0.7188 0.5312 +0.2812 0.7188 0.5625 +0.2812 0.7188 0.5938 +0.2812 0.7188 0.625 +0.2812 0.7188 0.6562 +0.2812 0.7188 0.6875 +0.2812 0.7188 0.7188 +0.2812 0.7188 0.75 +0.2812 0.7188 0.7812 +0.2812 0.7188 0.8125 +0.2812 0.7188 0.8438 +0.2812 0.7188 0.875 +0.2812 0.7188 0.9062 +0.2812 0.7188 0.9375 +0.2812 0.7188 0.9688 +0.2812 0.7188 1 +0.2812 0.75 0 +0.2812 0.75 0.03125 +0.2812 0.75 0.0625 +0.2812 0.75 0.09375 +0.2812 0.75 0.125 +0.2812 0.75 0.1562 +0.2812 0.75 0.1875 +0.2812 0.75 0.2188 +0.2812 0.75 0.25 +0.2812 0.75 0.2812 +0.2812 0.75 0.3125 +0.2812 0.75 0.3438 +0.2812 0.75 0.375 +0.2812 0.75 0.4062 +0.2812 0.75 0.4375 +0.2812 0.75 0.4688 +0.2812 0.75 0.5 +0.2812 0.75 0.5312 +0.2812 0.75 0.5625 +0.2812 0.75 0.5938 +0.2812 0.75 0.625 +0.2812 0.75 0.6562 +0.2812 0.75 0.6875 +0.2812 0.75 0.7188 +0.2812 0.75 0.75 +0.2812 0.75 0.7812 +0.2812 0.75 0.8125 +0.2812 0.75 0.8438 +0.2812 0.75 0.875 +0.2812 0.75 0.9062 +0.2812 0.75 0.9375 +0.2812 0.75 0.9688 +0.2812 0.75 1 +0.2812 0.7812 0 +0.2812 0.7812 0.03125 +0.2812 0.7812 0.0625 +0.2812 0.7812 0.09375 +0.2812 0.7812 0.125 +0.2812 0.7812 0.1562 +0.2812 0.7812 0.1875 +0.2812 0.7812 0.2188 +0.2812 0.7812 0.25 +0.2812 0.7812 0.2812 +0.2812 0.7812 0.3125 +0.2812 0.7812 0.3438 +0.2812 0.7812 0.375 +0.2812 0.7812 0.4062 +0.2812 0.7812 0.4375 +0.2812 0.7812 0.4688 +0.2812 0.7812 0.5 +0.2812 0.7812 0.5312 +0.2812 0.7812 0.5625 +0.2812 0.7812 0.5938 +0.2812 0.7812 0.625 +0.2812 0.7812 0.6562 +0.2812 0.7812 0.6875 +0.2812 0.7812 0.7188 +0.2812 0.7812 0.75 +0.2812 0.7812 0.7812 +0.2812 0.7812 0.8125 +0.2812 0.7812 0.8438 +0.2812 0.7812 0.875 +0.2812 0.7812 0.9062 +0.2812 0.7812 0.9375 +0.2812 0.7812 0.9688 +0.2812 0.7812 1 +0.2812 0.8125 0 +0.2812 0.8125 0.03125 +0.2812 0.8125 0.0625 +0.2812 0.8125 0.09375 +0.2812 0.8125 0.125 +0.2812 0.8125 0.1562 +0.2812 0.8125 0.1875 +0.2812 0.8125 0.2188 +0.2812 0.8125 0.25 +0.2812 0.8125 0.2812 +0.2812 0.8125 0.3125 +0.2812 0.8125 0.3438 +0.2812 0.8125 0.375 +0.2812 0.8125 0.4062 +0.2812 0.8125 0.4375 +0.2812 0.8125 0.4688 +0.2812 0.8125 0.5 +0.2812 0.8125 0.5312 +0.2812 0.8125 0.5625 +0.2812 0.8125 0.5938 +0.2812 0.8125 0.625 +0.2812 0.8125 0.6562 +0.2812 0.8125 0.6875 +0.2812 0.8125 0.7188 +0.2812 0.8125 0.75 +0.2812 0.8125 0.7812 +0.2812 0.8125 0.8125 +0.2812 0.8125 0.8438 +0.2812 0.8125 0.875 +0.2812 0.8125 0.9062 +0.2812 0.8125 0.9375 +0.2812 0.8125 0.9688 +0.2812 0.8125 1 +0.2812 0.8438 0 +0.2812 0.8438 0.03125 +0.2812 0.8438 0.0625 +0.2812 0.8438 0.09375 +0.2812 0.8438 0.125 +0.2812 0.8438 0.1562 +0.2812 0.8438 0.1875 +0.2812 0.8438 0.2188 +0.2812 0.8438 0.25 +0.2812 0.8438 0.2812 +0.2812 0.8438 0.3125 +0.2812 0.8438 0.3438 +0.2812 0.8438 0.375 +0.2812 0.8438 0.4062 +0.2812 0.8438 0.4375 +0.2812 0.8438 0.4688 +0.2812 0.8438 0.5 +0.2812 0.8438 0.5312 +0.2812 0.8438 0.5625 +0.2812 0.8438 0.5938 +0.2812 0.8438 0.625 +0.2812 0.8438 0.6562 +0.2812 0.8438 0.6875 +0.2812 0.8438 0.7188 +0.2812 0.8438 0.75 +0.2812 0.8438 0.7812 +0.2812 0.8438 0.8125 +0.2812 0.8438 0.8438 +0.2812 0.8438 0.875 +0.2812 0.8438 0.9062 +0.2812 0.8438 0.9375 +0.2812 0.8438 0.9688 +0.2812 0.8438 1 +0.2812 0.875 0 +0.2812 0.875 0.03125 +0.2812 0.875 0.0625 +0.2812 0.875 0.09375 +0.2812 0.875 0.125 +0.2812 0.875 0.1562 +0.2812 0.875 0.1875 +0.2812 0.875 0.2188 +0.2812 0.875 0.25 +0.2812 0.875 0.2812 +0.2812 0.875 0.3125 +0.2812 0.875 0.3438 +0.2812 0.875 0.375 +0.2812 0.875 0.4062 +0.2812 0.875 0.4375 +0.2812 0.875 0.4688 +0.2812 0.875 0.5 +0.2812 0.875 0.5312 +0.2812 0.875 0.5625 +0.2812 0.875 0.5938 +0.2812 0.875 0.625 +0.2812 0.875 0.6562 +0.2812 0.875 0.6875 +0.2812 0.875 0.7188 +0.2812 0.875 0.75 +0.2812 0.875 0.7812 +0.2812 0.875 0.8125 +0.2812 0.875 0.8438 +0.2812 0.875 0.875 +0.2812 0.875 0.9062 +0.2812 0.875 0.9375 +0.2812 0.875 0.9688 +0.2812 0.875 1 +0.2812 0.9062 0 +0.2812 0.9062 0.03125 +0.2812 0.9062 0.0625 +0.2812 0.9062 0.09375 +0.2812 0.9062 0.125 +0.2812 0.9062 0.1562 +0.2812 0.9062 0.1875 +0.2812 0.9062 0.2188 +0.2812 0.9062 0.25 +0.2812 0.9062 0.2812 +0.2812 0.9062 0.3125 +0.2812 0.9062 0.3438 +0.2812 0.9062 0.375 +0.2812 0.9062 0.4062 +0.2812 0.9062 0.4375 +0.2812 0.9062 0.4688 +0.2812 0.9062 0.5 +0.2812 0.9062 0.5312 +0.2812 0.9062 0.5625 +0.2812 0.9062 0.5938 +0.2812 0.9062 0.625 +0.2812 0.9062 0.6562 +0.2812 0.9062 0.6875 +0.2812 0.9062 0.7188 +0.2812 0.9062 0.75 +0.2812 0.9062 0.7812 +0.2812 0.9062 0.8125 +0.2812 0.9062 0.8438 +0.2812 0.9062 0.875 +0.2812 0.9062 0.9062 +0.2812 0.9062 0.9375 +0.2812 0.9062 0.9688 +0.2812 0.9062 1 +0.2812 0.9375 0 +0.2812 0.9375 0.03125 +0.2812 0.9375 0.0625 +0.2812 0.9375 0.09375 +0.2812 0.9375 0.125 +0.2812 0.9375 0.1562 +0.2812 0.9375 0.1875 +0.2812 0.9375 0.2188 +0.2812 0.9375 0.25 +0.2812 0.9375 0.2812 +0.2812 0.9375 0.3125 +0.2812 0.9375 0.3438 +0.2812 0.9375 0.375 +0.2812 0.9375 0.4062 +0.2812 0.9375 0.4375 +0.2812 0.9375 0.4688 +0.2812 0.9375 0.5 +0.2812 0.9375 0.5312 +0.2812 0.9375 0.5625 +0.2812 0.9375 0.5938 +0.2812 0.9375 0.625 +0.2812 0.9375 0.6562 +0.2812 0.9375 0.6875 +0.2812 0.9375 0.7188 +0.2812 0.9375 0.75 +0.2812 0.9375 0.7812 +0.2812 0.9375 0.8125 +0.2812 0.9375 0.8438 +0.2812 0.9375 0.875 +0.2812 0.9375 0.9062 +0.2812 0.9375 0.9375 +0.2812 0.9375 0.9688 +0.2812 0.9375 1 +0.2812 0.9688 0 +0.2812 0.9688 0.03125 +0.2812 0.9688 0.0625 +0.2812 0.9688 0.09375 +0.2812 0.9688 0.125 +0.2812 0.9688 0.1562 +0.2812 0.9688 0.1875 +0.2812 0.9688 0.2188 +0.2812 0.9688 0.25 +0.2812 0.9688 0.2812 +0.2812 0.9688 0.3125 +0.2812 0.9688 0.3438 +0.2812 0.9688 0.375 +0.2812 0.9688 0.4062 +0.2812 0.9688 0.4375 +0.2812 0.9688 0.4688 +0.2812 0.9688 0.5 +0.2812 0.9688 0.5312 +0.2812 0.9688 0.5625 +0.2812 0.9688 0.5938 +0.2812 0.9688 0.625 +0.2812 0.9688 0.6562 +0.2812 0.9688 0.6875 +0.2812 0.9688 0.7188 +0.2812 0.9688 0.75 +0.2812 0.9688 0.7812 +0.2812 0.9688 0.8125 +0.2812 0.9688 0.8438 +0.2812 0.9688 0.875 +0.2812 0.9688 0.9062 +0.2812 0.9688 0.9375 +0.2812 0.9688 0.9688 +0.2812 0.9688 1 +0.2812 1 0 +0.2812 1 0.03125 +0.2812 1 0.0625 +0.2812 1 0.09375 +0.2812 1 0.125 +0.2812 1 0.1562 +0.2812 1 0.1875 +0.2812 1 0.2188 +0.2812 1 0.25 +0.2812 1 0.2812 +0.2812 1 0.3125 +0.2812 1 0.3438 +0.2812 1 0.375 +0.2812 1 0.4062 +0.2812 1 0.4375 +0.2812 1 0.4688 +0.2812 1 0.5 +0.2812 1 0.5312 +0.2812 1 0.5625 +0.2812 1 0.5938 +0.2812 1 0.625 +0.2812 1 0.6562 +0.2812 1 0.6875 +0.2812 1 0.7188 +0.2812 1 0.75 +0.2812 1 0.7812 +0.2812 1 0.8125 +0.2812 1 0.8438 +0.2812 1 0.875 +0.2812 1 0.9062 +0.2812 1 0.9375 +0.2812 1 0.9688 +0.2812 1 1 +0.3125 0 0 +0.3125 0 0.03125 +0.3125 0 0.0625 +0.3125 0 0.09375 +0.3125 0 0.125 +0.3125 0 0.1562 +0.3125 0 0.1875 +0.3125 0 0.2188 +0.3125 0 0.25 +0.3125 0 0.2812 +0.3125 0 0.3125 +0.3125 0 0.3438 +0.3125 0 0.375 +0.3125 0 0.4062 +0.3125 0 0.4375 +0.3125 0 0.4688 +0.3125 0 0.5 +0.3125 0 0.5312 +0.3125 0 0.5625 +0.3125 0 0.5938 +0.3125 0 0.625 +0.3125 0 0.6562 +0.3125 0 0.6875 +0.3125 0 0.7188 +0.3125 0 0.75 +0.3125 0 0.7812 +0.3125 0 0.8125 +0.3125 0 0.8438 +0.3125 0 0.875 +0.3125 0 0.9062 +0.3125 0 0.9375 +0.3125 0 0.9688 +0.3125 0 1 +0.3125 0.03125 0 +0.3125 0.03125 0.03125 +0.3125 0.03125 0.0625 +0.3125 0.03125 0.09375 +0.3125 0.03125 0.125 +0.3125 0.03125 0.1562 +0.3125 0.03125 0.1875 +0.3125 0.03125 0.2188 +0.3125 0.03125 0.25 +0.3125 0.03125 0.2812 +0.3125 0.03125 0.3125 +0.3125 0.03125 0.3438 +0.3125 0.03125 0.375 +0.3125 0.03125 0.4062 +0.3125 0.03125 0.4375 +0.3125 0.03125 0.4688 +0.3125 0.03125 0.5 +0.3125 0.03125 0.5312 +0.3125 0.03125 0.5625 +0.3125 0.03125 0.5938 +0.3125 0.03125 0.625 +0.3125 0.03125 0.6562 +0.3125 0.03125 0.6875 +0.3125 0.03125 0.7188 +0.3125 0.03125 0.75 +0.3125 0.03125 0.7812 +0.3125 0.03125 0.8125 +0.3125 0.03125 0.8438 +0.3125 0.03125 0.875 +0.3125 0.03125 0.9062 +0.3125 0.03125 0.9375 +0.3125 0.03125 0.9688 +0.3125 0.03125 1 +0.3125 0.0625 0 +0.3125 0.0625 0.03125 +0.3125 0.0625 0.0625 +0.3125 0.0625 0.09375 +0.3125 0.0625 0.125 +0.3125 0.0625 0.1562 +0.3125 0.0625 0.1875 +0.3125 0.0625 0.2188 +0.3125 0.0625 0.25 +0.3125 0.0625 0.2812 +0.3125 0.0625 0.3125 +0.3125 0.0625 0.3438 +0.3125 0.0625 0.375 +0.3125 0.0625 0.4062 +0.3125 0.0625 0.4375 +0.3125 0.0625 0.4688 +0.3125 0.0625 0.5 +0.3125 0.0625 0.5312 +0.3125 0.0625 0.5625 +0.3125 0.0625 0.5938 +0.3125 0.0625 0.625 +0.3125 0.0625 0.6562 +0.3125 0.0625 0.6875 +0.3125 0.0625 0.7188 +0.3125 0.0625 0.75 +0.3125 0.0625 0.7812 +0.3125 0.0625 0.8125 +0.3125 0.0625 0.8438 +0.3125 0.0625 0.875 +0.3125 0.0625 0.9062 +0.3125 0.0625 0.9375 +0.3125 0.0625 0.9688 +0.3125 0.0625 1 +0.3125 0.09375 0 +0.3125 0.09375 0.03125 +0.3125 0.09375 0.0625 +0.3125 0.09375 0.09375 +0.3125 0.09375 0.125 +0.3125 0.09375 0.1562 +0.3125 0.09375 0.1875 +0.3125 0.09375 0.2188 +0.3125 0.09375 0.25 +0.3125 0.09375 0.2812 +0.3125 0.09375 0.3125 +0.3125 0.09375 0.3438 +0.3125 0.09375 0.375 +0.3125 0.09375 0.4062 +0.3125 0.09375 0.4375 +0.3125 0.09375 0.4688 +0.3125 0.09375 0.5 +0.3125 0.09375 0.5312 +0.3125 0.09375 0.5625 +0.3125 0.09375 0.5938 +0.3125 0.09375 0.625 +0.3125 0.09375 0.6562 +0.3125 0.09375 0.6875 +0.3125 0.09375 0.7188 +0.3125 0.09375 0.75 +0.3125 0.09375 0.7812 +0.3125 0.09375 0.8125 +0.3125 0.09375 0.8438 +0.3125 0.09375 0.875 +0.3125 0.09375 0.9062 +0.3125 0.09375 0.9375 +0.3125 0.09375 0.9688 +0.3125 0.09375 1 +0.3125 0.125 0 +0.3125 0.125 0.03125 +0.3125 0.125 0.0625 +0.3125 0.125 0.09375 +0.3125 0.125 0.125 +0.3125 0.125 0.1562 +0.3125 0.125 0.1875 +0.3125 0.125 0.2188 +0.3125 0.125 0.25 +0.3125 0.125 0.2812 +0.3125 0.125 0.3125 +0.3125 0.125 0.3438 +0.3125 0.125 0.375 +0.3125 0.125 0.4062 +0.3125 0.125 0.4375 +0.3125 0.125 0.4688 +0.3125 0.125 0.5 +0.3125 0.125 0.5312 +0.3125 0.125 0.5625 +0.3125 0.125 0.5938 +0.3125 0.125 0.625 +0.3125 0.125 0.6562 +0.3125 0.125 0.6875 +0.3125 0.125 0.7188 +0.3125 0.125 0.75 +0.3125 0.125 0.7812 +0.3125 0.125 0.8125 +0.3125 0.125 0.8438 +0.3125 0.125 0.875 +0.3125 0.125 0.9062 +0.3125 0.125 0.9375 +0.3125 0.125 0.9688 +0.3125 0.125 1 +0.3125 0.1562 0 +0.3125 0.1562 0.03125 +0.3125 0.1562 0.0625 +0.3125 0.1562 0.09375 +0.3125 0.1562 0.125 +0.3125 0.1562 0.1562 +0.3125 0.1562 0.1875 +0.3125 0.1562 0.2188 +0.3125 0.1562 0.25 +0.3125 0.1562 0.2812 +0.3125 0.1562 0.3125 +0.3125 0.1562 0.3438 +0.3125 0.1562 0.375 +0.3125 0.1562 0.4062 +0.3125 0.1562 0.4375 +0.3125 0.1562 0.4688 +0.3125 0.1562 0.5 +0.3125 0.1562 0.5312 +0.3125 0.1562 0.5625 +0.3125 0.1562 0.5938 +0.3125 0.1562 0.625 +0.3125 0.1562 0.6562 +0.3125 0.1562 0.6875 +0.3125 0.1562 0.7188 +0.3125 0.1562 0.75 +0.3125 0.1562 0.7812 +0.3125 0.1562 0.8125 +0.3125 0.1562 0.8438 +0.3125 0.1562 0.875 +0.3125 0.1562 0.9062 +0.3125 0.1562 0.9375 +0.3125 0.1562 0.9688 +0.3125 0.1562 1 +0.3125 0.1875 0 +0.3125 0.1875 0.03125 +0.3125 0.1875 0.0625 +0.3125 0.1875 0.09375 +0.3125 0.1875 0.125 +0.3125 0.1875 0.1562 +0.3125 0.1875 0.1875 +0.3125 0.1875 0.2188 +0.3125 0.1875 0.25 +0.3125 0.1875 0.2812 +0.3125 0.1875 0.3125 +0.3125 0.1875 0.3438 +0.3125 0.1875 0.375 +0.3125 0.1875 0.4062 +0.3125 0.1875 0.4375 +0.3125 0.1875 0.4688 +0.3125 0.1875 0.5 +0.3125 0.1875 0.5312 +0.3125 0.1875 0.5625 +0.3125 0.1875 0.5938 +0.3125 0.1875 0.625 +0.3125 0.1875 0.6562 +0.3125 0.1875 0.6875 +0.3125 0.1875 0.7188 +0.3125 0.1875 0.75 +0.3125 0.1875 0.7812 +0.3125 0.1875 0.8125 +0.3125 0.1875 0.8438 +0.3125 0.1875 0.875 +0.3125 0.1875 0.9062 +0.3125 0.1875 0.9375 +0.3125 0.1875 0.9688 +0.3125 0.1875 1 +0.3125 0.2188 0 +0.3125 0.2188 0.03125 +0.3125 0.2188 0.0625 +0.3125 0.2188 0.09375 +0.3125 0.2188 0.125 +0.3125 0.2188 0.1562 +0.3125 0.2188 0.1875 +0.3125 0.2188 0.2188 +0.3125 0.2188 0.25 +0.3125 0.2188 0.2812 +0.3125 0.2188 0.3125 +0.3125 0.2188 0.3438 +0.3125 0.2188 0.375 +0.3125 0.2188 0.4062 +0.3125 0.2188 0.4375 +0.3125 0.2188 0.4688 +0.3125 0.2188 0.5 +0.3125 0.2188 0.5312 +0.3125 0.2188 0.5625 +0.3125 0.2188 0.5938 +0.3125 0.2188 0.625 +0.3125 0.2188 0.6562 +0.3125 0.2188 0.6875 +0.3125 0.2188 0.7188 +0.3125 0.2188 0.75 +0.3125 0.2188 0.7812 +0.3125 0.2188 0.8125 +0.3125 0.2188 0.8438 +0.3125 0.2188 0.875 +0.3125 0.2188 0.9062 +0.3125 0.2188 0.9375 +0.3125 0.2188 0.9688 +0.3125 0.2188 1 +0.3125 0.25 0 +0.3125 0.25 0.03125 +0.3125 0.25 0.0625 +0.3125 0.25 0.09375 +0.3125 0.25 0.125 +0.3125 0.25 0.1562 +0.3125 0.25 0.1875 +0.3125 0.25 0.2188 +0.3125 0.25 0.25 +0.3125 0.25 0.2812 +0.3125 0.25 0.3125 +0.3125 0.25 0.3438 +0.3125 0.25 0.375 +0.3125 0.25 0.4062 +0.3125 0.25 0.4375 +0.3125 0.25 0.4688 +0.3125 0.25 0.5 +0.3125 0.25 0.5312 +0.3125 0.25 0.5625 +0.3125 0.25 0.5938 +0.3125 0.25 0.625 +0.3125 0.25 0.6562 +0.3125 0.25 0.6875 +0.3125 0.25 0.7188 +0.3125 0.25 0.75 +0.3125 0.25 0.7812 +0.3125 0.25 0.8125 +0.3125 0.25 0.8438 +0.3125 0.25 0.875 +0.3125 0.25 0.9062 +0.3125 0.25 0.9375 +0.3125 0.25 0.9688 +0.3125 0.25 1 +0.3125 0.2812 0 +0.3125 0.2812 0.03125 +0.3125 0.2812 0.0625 +0.3125 0.2812 0.09375 +0.3125 0.2812 0.125 +0.3125 0.2812 0.1562 +0.3125 0.2812 0.1875 +0.3125 0.2812 0.2188 +0.3125 0.2812 0.25 +0.3125 0.2812 0.2812 +0.3125 0.2812 0.3125 +0.3125 0.2812 0.3438 +0.3125 0.2812 0.375 +0.3125 0.2812 0.4062 +0.3125 0.2812 0.4375 +0.3125 0.2812 0.4688 +0.3125 0.2812 0.5 +0.3125 0.2812 0.5312 +0.3125 0.2812 0.5625 +0.3125 0.2812 0.5938 +0.3125 0.2812 0.625 +0.3125 0.2812 0.6562 +0.3125 0.2812 0.6875 +0.3125 0.2812 0.7188 +0.3125 0.2812 0.75 +0.3125 0.2812 0.7812 +0.3125 0.2812 0.8125 +0.3125 0.2812 0.8438 +0.3125 0.2812 0.875 +0.3125 0.2812 0.9062 +0.3125 0.2812 0.9375 +0.3125 0.2812 0.9688 +0.3125 0.2812 1 +0.3125 0.3125 0 +0.3125 0.3125 0.03125 +0.3125 0.3125 0.0625 +0.3125 0.3125 0.09375 +0.3125 0.3125 0.125 +0.3125 0.3125 0.1562 +0.3125 0.3125 0.1875 +0.3125 0.3125 0.2188 +0.3125 0.3125 0.25 +0.3125 0.3125 0.2812 +0.3125 0.3125 0.3125 +0.3125 0.3125 0.3438 +0.3125 0.3125 0.375 +0.3125 0.3125 0.4062 +0.3125 0.3125 0.4375 +0.3125 0.3125 0.4688 +0.3125 0.3125 0.5 +0.3125 0.3125 0.5312 +0.3125 0.3125 0.5625 +0.3125 0.3125 0.5938 +0.3125 0.3125 0.625 +0.3125 0.3125 0.6562 +0.3125 0.3125 0.6875 +0.3125 0.3125 0.7188 +0.3125 0.3125 0.75 +0.3125 0.3125 0.7812 +0.3125 0.3125 0.8125 +0.3125 0.3125 0.8438 +0.3125 0.3125 0.875 +0.3125 0.3125 0.9062 +0.3125 0.3125 0.9375 +0.3125 0.3125 0.9688 +0.3125 0.3125 1 +0.3125 0.3438 0 +0.3125 0.3438 0.03125 +0.3125 0.3438 0.0625 +0.3125 0.3438 0.09375 +0.3125 0.3438 0.125 +0.3125 0.3438 0.1562 +0.3125 0.3438 0.1875 +0.3125 0.3438 0.2188 +0.3125 0.3438 0.25 +0.3125 0.3438 0.2812 +0.3125 0.3438 0.3125 +0.3125 0.3438 0.3438 +0.3125 0.3438 0.375 +0.3125 0.3438 0.4062 +0.3125 0.3438 0.4375 +0.3125 0.3438 0.4688 +0.3125 0.3438 0.5 +0.3125 0.3438 0.5312 +0.3125 0.3438 0.5625 +0.3125 0.3438 0.5938 +0.3125 0.3438 0.625 +0.3125 0.3438 0.6562 +0.3125 0.3438 0.6875 +0.3125 0.3438 0.7188 +0.3125 0.3438 0.75 +0.3125 0.3438 0.7812 +0.3125 0.3438 0.8125 +0.3125 0.3438 0.8438 +0.3125 0.3438 0.875 +0.3125 0.3438 0.9062 +0.3125 0.3438 0.9375 +0.3125 0.3438 0.9688 +0.3125 0.3438 1 +0.3125 0.375 0 +0.3125 0.375 0.03125 +0.3125 0.375 0.0625 +0.3125 0.375 0.09375 +0.3125 0.375 0.125 +0.3125 0.375 0.1562 +0.3125 0.375 0.1875 +0.3125 0.375 0.2188 +0.3125 0.375 0.25 +0.3125 0.375 0.2812 +0.3125 0.375 0.3125 +0.3125 0.375 0.3438 +0.3125 0.375 0.375 +0.3125 0.375 0.4062 +0.3125 0.375 0.4375 +0.3125 0.375 0.4688 +0.3125 0.375 0.5 +0.3125 0.375 0.5312 +0.3125 0.375 0.5625 +0.3125 0.375 0.5938 +0.3125 0.375 0.625 +0.3125 0.375 0.6562 +0.3125 0.375 0.6875 +0.3125 0.375 0.7188 +0.3125 0.375 0.75 +0.3125 0.375 0.7812 +0.3125 0.375 0.8125 +0.3125 0.375 0.8438 +0.3125 0.375 0.875 +0.3125 0.375 0.9062 +0.3125 0.375 0.9375 +0.3125 0.375 0.9688 +0.3125 0.375 1 +0.3125 0.4062 0 +0.3125 0.4062 0.03125 +0.3125 0.4062 0.0625 +0.3125 0.4062 0.09375 +0.3125 0.4062 0.125 +0.3125 0.4062 0.1562 +0.3125 0.4062 0.1875 +0.3125 0.4062 0.2188 +0.3125 0.4062 0.25 +0.3125 0.4062 0.2812 +0.3125 0.4062 0.3125 +0.3125 0.4062 0.3438 +0.3125 0.4062 0.375 +0.3125 0.4062 0.4062 +0.3125 0.4062 0.4375 +0.3125 0.4062 0.4688 +0.3125 0.4062 0.5 +0.3125 0.4062 0.5312 +0.3125 0.4062 0.5625 +0.3125 0.4062 0.5938 +0.3125 0.4062 0.625 +0.3125 0.4062 0.6562 +0.3125 0.4062 0.6875 +0.3125 0.4062 0.7188 +0.3125 0.4062 0.75 +0.3125 0.4062 0.7812 +0.3125 0.4062 0.8125 +0.3125 0.4062 0.8438 +0.3125 0.4062 0.875 +0.3125 0.4062 0.9062 +0.3125 0.4062 0.9375 +0.3125 0.4062 0.9688 +0.3125 0.4062 1 +0.3125 0.4375 0 +0.3125 0.4375 0.03125 +0.3125 0.4375 0.0625 +0.3125 0.4375 0.09375 +0.3125 0.4375 0.125 +0.3125 0.4375 0.1562 +0.3125 0.4375 0.1875 +0.3125 0.4375 0.2188 +0.3125 0.4375 0.25 +0.3125 0.4375 0.2812 +0.3125 0.4375 0.3125 +0.3125 0.4375 0.3438 +0.3125 0.4375 0.375 +0.3125 0.4375 0.4062 +0.3125 0.4375 0.4375 +0.3125 0.4375 0.4688 +0.3125 0.4375 0.5 +0.3125 0.4375 0.5312 +0.3125 0.4375 0.5625 +0.3125 0.4375 0.5938 +0.3125 0.4375 0.625 +0.3125 0.4375 0.6562 +0.3125 0.4375 0.6875 +0.3125 0.4375 0.7188 +0.3125 0.4375 0.75 +0.3125 0.4375 0.7812 +0.3125 0.4375 0.8125 +0.3125 0.4375 0.8438 +0.3125 0.4375 0.875 +0.3125 0.4375 0.9062 +0.3125 0.4375 0.9375 +0.3125 0.4375 0.9688 +0.3125 0.4375 1 +0.3125 0.4688 0 +0.3125 0.4688 0.03125 +0.3125 0.4688 0.0625 +0.3125 0.4688 0.09375 +0.3125 0.4688 0.125 +0.3125 0.4688 0.1562 +0.3125 0.4688 0.1875 +0.3125 0.4688 0.2188 +0.3125 0.4688 0.25 +0.3125 0.4688 0.2812 +0.3125 0.4688 0.3125 +0.3125 0.4688 0.3438 +0.3125 0.4688 0.375 +0.3125 0.4688 0.4062 +0.3125 0.4688 0.4375 +0.3125 0.4688 0.4688 +0.3125 0.4688 0.5 +0.3125 0.4688 0.5312 +0.3125 0.4688 0.5625 +0.3125 0.4688 0.5938 +0.3125 0.4688 0.625 +0.3125 0.4688 0.6562 +0.3125 0.4688 0.6875 +0.3125 0.4688 0.7188 +0.3125 0.4688 0.75 +0.3125 0.4688 0.7812 +0.3125 0.4688 0.8125 +0.3125 0.4688 0.8438 +0.3125 0.4688 0.875 +0.3125 0.4688 0.9062 +0.3125 0.4688 0.9375 +0.3125 0.4688 0.9688 +0.3125 0.4688 1 +0.3125 0.5 0 +0.3125 0.5 0.03125 +0.3125 0.5 0.0625 +0.3125 0.5 0.09375 +0.3125 0.5 0.125 +0.3125 0.5 0.1562 +0.3125 0.5 0.1875 +0.3125 0.5 0.2188 +0.3125 0.5 0.25 +0.3125 0.5 0.2812 +0.3125 0.5 0.3125 +0.3125 0.5 0.3438 +0.3125 0.5 0.375 +0.3125 0.5 0.4062 +0.3125 0.5 0.4375 +0.3125 0.5 0.4688 +0.3125 0.5 0.5 +0.3125 0.5 0.5312 +0.3125 0.5 0.5625 +0.3125 0.5 0.5938 +0.3125 0.5 0.625 +0.3125 0.5 0.6562 +0.3125 0.5 0.6875 +0.3125 0.5 0.7188 +0.3125 0.5 0.75 +0.3125 0.5 0.7812 +0.3125 0.5 0.8125 +0.3125 0.5 0.8438 +0.3125 0.5 0.875 +0.3125 0.5 0.9062 +0.3125 0.5 0.9375 +0.3125 0.5 0.9688 +0.3125 0.5 1 +0.3125 0.5312 0 +0.3125 0.5312 0.03125 +0.3125 0.5312 0.0625 +0.3125 0.5312 0.09375 +0.3125 0.5312 0.125 +0.3125 0.5312 0.1562 +0.3125 0.5312 0.1875 +0.3125 0.5312 0.2188 +0.3125 0.5312 0.25 +0.3125 0.5312 0.2812 +0.3125 0.5312 0.3125 +0.3125 0.5312 0.3438 +0.3125 0.5312 0.375 +0.3125 0.5312 0.4062 +0.3125 0.5312 0.4375 +0.3125 0.5312 0.4688 +0.3125 0.5312 0.5 +0.3125 0.5312 0.5312 +0.3125 0.5312 0.5625 +0.3125 0.5312 0.5938 +0.3125 0.5312 0.625 +0.3125 0.5312 0.6562 +0.3125 0.5312 0.6875 +0.3125 0.5312 0.7188 +0.3125 0.5312 0.75 +0.3125 0.5312 0.7812 +0.3125 0.5312 0.8125 +0.3125 0.5312 0.8438 +0.3125 0.5312 0.875 +0.3125 0.5312 0.9062 +0.3125 0.5312 0.9375 +0.3125 0.5312 0.9688 +0.3125 0.5312 1 +0.3125 0.5625 0 +0.3125 0.5625 0.03125 +0.3125 0.5625 0.0625 +0.3125 0.5625 0.09375 +0.3125 0.5625 0.125 +0.3125 0.5625 0.1562 +0.3125 0.5625 0.1875 +0.3125 0.5625 0.2188 +0.3125 0.5625 0.25 +0.3125 0.5625 0.2812 +0.3125 0.5625 0.3125 +0.3125 0.5625 0.3438 +0.3125 0.5625 0.375 +0.3125 0.5625 0.4062 +0.3125 0.5625 0.4375 +0.3125 0.5625 0.4688 +0.3125 0.5625 0.5 +0.3125 0.5625 0.5312 +0.3125 0.5625 0.5625 +0.3125 0.5625 0.5938 +0.3125 0.5625 0.625 +0.3125 0.5625 0.6562 +0.3125 0.5625 0.6875 +0.3125 0.5625 0.7188 +0.3125 0.5625 0.75 +0.3125 0.5625 0.7812 +0.3125 0.5625 0.8125 +0.3125 0.5625 0.8438 +0.3125 0.5625 0.875 +0.3125 0.5625 0.9062 +0.3125 0.5625 0.9375 +0.3125 0.5625 0.9688 +0.3125 0.5625 1 +0.3125 0.5938 0 +0.3125 0.5938 0.03125 +0.3125 0.5938 0.0625 +0.3125 0.5938 0.09375 +0.3125 0.5938 0.125 +0.3125 0.5938 0.1562 +0.3125 0.5938 0.1875 +0.3125 0.5938 0.2188 +0.3125 0.5938 0.25 +0.3125 0.5938 0.2812 +0.3125 0.5938 0.3125 +0.3125 0.5938 0.3438 +0.3125 0.5938 0.375 +0.3125 0.5938 0.4062 +0.3125 0.5938 0.4375 +0.3125 0.5938 0.4688 +0.3125 0.5938 0.5 +0.3125 0.5938 0.5312 +0.3125 0.5938 0.5625 +0.3125 0.5938 0.5938 +0.3125 0.5938 0.625 +0.3125 0.5938 0.6562 +0.3125 0.5938 0.6875 +0.3125 0.5938 0.7188 +0.3125 0.5938 0.75 +0.3125 0.5938 0.7812 +0.3125 0.5938 0.8125 +0.3125 0.5938 0.8438 +0.3125 0.5938 0.875 +0.3125 0.5938 0.9062 +0.3125 0.5938 0.9375 +0.3125 0.5938 0.9688 +0.3125 0.5938 1 +0.3125 0.625 0 +0.3125 0.625 0.03125 +0.3125 0.625 0.0625 +0.3125 0.625 0.09375 +0.3125 0.625 0.125 +0.3125 0.625 0.1562 +0.3125 0.625 0.1875 +0.3125 0.625 0.2188 +0.3125 0.625 0.25 +0.3125 0.625 0.2812 +0.3125 0.625 0.3125 +0.3125 0.625 0.3438 +0.3125 0.625 0.375 +0.3125 0.625 0.4062 +0.3125 0.625 0.4375 +0.3125 0.625 0.4688 +0.3125 0.625 0.5 +0.3125 0.625 0.5312 +0.3125 0.625 0.5625 +0.3125 0.625 0.5938 +0.3125 0.625 0.625 +0.3125 0.625 0.6562 +0.3125 0.625 0.6875 +0.3125 0.625 0.7188 +0.3125 0.625 0.75 +0.3125 0.625 0.7812 +0.3125 0.625 0.8125 +0.3125 0.625 0.8438 +0.3125 0.625 0.875 +0.3125 0.625 0.9062 +0.3125 0.625 0.9375 +0.3125 0.625 0.9688 +0.3125 0.625 1 +0.3125 0.6562 0 +0.3125 0.6562 0.03125 +0.3125 0.6562 0.0625 +0.3125 0.6562 0.09375 +0.3125 0.6562 0.125 +0.3125 0.6562 0.1562 +0.3125 0.6562 0.1875 +0.3125 0.6562 0.2188 +0.3125 0.6562 0.25 +0.3125 0.6562 0.2812 +0.3125 0.6562 0.3125 +0.3125 0.6562 0.3438 +0.3125 0.6562 0.375 +0.3125 0.6562 0.4062 +0.3125 0.6562 0.4375 +0.3125 0.6562 0.4688 +0.3125 0.6562 0.5 +0.3125 0.6562 0.5312 +0.3125 0.6562 0.5625 +0.3125 0.6562 0.5938 +0.3125 0.6562 0.625 +0.3125 0.6562 0.6562 +0.3125 0.6562 0.6875 +0.3125 0.6562 0.7188 +0.3125 0.6562 0.75 +0.3125 0.6562 0.7812 +0.3125 0.6562 0.8125 +0.3125 0.6562 0.8438 +0.3125 0.6562 0.875 +0.3125 0.6562 0.9062 +0.3125 0.6562 0.9375 +0.3125 0.6562 0.9688 +0.3125 0.6562 1 +0.3125 0.6875 0 +0.3125 0.6875 0.03125 +0.3125 0.6875 0.0625 +0.3125 0.6875 0.09375 +0.3125 0.6875 0.125 +0.3125 0.6875 0.1562 +0.3125 0.6875 0.1875 +0.3125 0.6875 0.2188 +0.3125 0.6875 0.25 +0.3125 0.6875 0.2812 +0.3125 0.6875 0.3125 +0.3125 0.6875 0.3438 +0.3125 0.6875 0.375 +0.3125 0.6875 0.4062 +0.3125 0.6875 0.4375 +0.3125 0.6875 0.4688 +0.3125 0.6875 0.5 +0.3125 0.6875 0.5312 +0.3125 0.6875 0.5625 +0.3125 0.6875 0.5938 +0.3125 0.6875 0.625 +0.3125 0.6875 0.6562 +0.3125 0.6875 0.6875 +0.3125 0.6875 0.7188 +0.3125 0.6875 0.75 +0.3125 0.6875 0.7812 +0.3125 0.6875 0.8125 +0.3125 0.6875 0.8438 +0.3125 0.6875 0.875 +0.3125 0.6875 0.9062 +0.3125 0.6875 0.9375 +0.3125 0.6875 0.9688 +0.3125 0.6875 1 +0.3125 0.7188 0 +0.3125 0.7188 0.03125 +0.3125 0.7188 0.0625 +0.3125 0.7188 0.09375 +0.3125 0.7188 0.125 +0.3125 0.7188 0.1562 +0.3125 0.7188 0.1875 +0.3125 0.7188 0.2188 +0.3125 0.7188 0.25 +0.3125 0.7188 0.2812 +0.3125 0.7188 0.3125 +0.3125 0.7188 0.3438 +0.3125 0.7188 0.375 +0.3125 0.7188 0.4062 +0.3125 0.7188 0.4375 +0.3125 0.7188 0.4688 +0.3125 0.7188 0.5 +0.3125 0.7188 0.5312 +0.3125 0.7188 0.5625 +0.3125 0.7188 0.5938 +0.3125 0.7188 0.625 +0.3125 0.7188 0.6562 +0.3125 0.7188 0.6875 +0.3125 0.7188 0.7188 +0.3125 0.7188 0.75 +0.3125 0.7188 0.7812 +0.3125 0.7188 0.8125 +0.3125 0.7188 0.8438 +0.3125 0.7188 0.875 +0.3125 0.7188 0.9062 +0.3125 0.7188 0.9375 +0.3125 0.7188 0.9688 +0.3125 0.7188 1 +0.3125 0.75 0 +0.3125 0.75 0.03125 +0.3125 0.75 0.0625 +0.3125 0.75 0.09375 +0.3125 0.75 0.125 +0.3125 0.75 0.1562 +0.3125 0.75 0.1875 +0.3125 0.75 0.2188 +0.3125 0.75 0.25 +0.3125 0.75 0.2812 +0.3125 0.75 0.3125 +0.3125 0.75 0.3438 +0.3125 0.75 0.375 +0.3125 0.75 0.4062 +0.3125 0.75 0.4375 +0.3125 0.75 0.4688 +0.3125 0.75 0.5 +0.3125 0.75 0.5312 +0.3125 0.75 0.5625 +0.3125 0.75 0.5938 +0.3125 0.75 0.625 +0.3125 0.75 0.6562 +0.3125 0.75 0.6875 +0.3125 0.75 0.7188 +0.3125 0.75 0.75 +0.3125 0.75 0.7812 +0.3125 0.75 0.8125 +0.3125 0.75 0.8438 +0.3125 0.75 0.875 +0.3125 0.75 0.9062 +0.3125 0.75 0.9375 +0.3125 0.75 0.9688 +0.3125 0.75 1 +0.3125 0.7812 0 +0.3125 0.7812 0.03125 +0.3125 0.7812 0.0625 +0.3125 0.7812 0.09375 +0.3125 0.7812 0.125 +0.3125 0.7812 0.1562 +0.3125 0.7812 0.1875 +0.3125 0.7812 0.2188 +0.3125 0.7812 0.25 +0.3125 0.7812 0.2812 +0.3125 0.7812 0.3125 +0.3125 0.7812 0.3438 +0.3125 0.7812 0.375 +0.3125 0.7812 0.4062 +0.3125 0.7812 0.4375 +0.3125 0.7812 0.4688 +0.3125 0.7812 0.5 +0.3125 0.7812 0.5312 +0.3125 0.7812 0.5625 +0.3125 0.7812 0.5938 +0.3125 0.7812 0.625 +0.3125 0.7812 0.6562 +0.3125 0.7812 0.6875 +0.3125 0.7812 0.7188 +0.3125 0.7812 0.75 +0.3125 0.7812 0.7812 +0.3125 0.7812 0.8125 +0.3125 0.7812 0.8438 +0.3125 0.7812 0.875 +0.3125 0.7812 0.9062 +0.3125 0.7812 0.9375 +0.3125 0.7812 0.9688 +0.3125 0.7812 1 +0.3125 0.8125 0 +0.3125 0.8125 0.03125 +0.3125 0.8125 0.0625 +0.3125 0.8125 0.09375 +0.3125 0.8125 0.125 +0.3125 0.8125 0.1562 +0.3125 0.8125 0.1875 +0.3125 0.8125 0.2188 +0.3125 0.8125 0.25 +0.3125 0.8125 0.2812 +0.3125 0.8125 0.3125 +0.3125 0.8125 0.3438 +0.3125 0.8125 0.375 +0.3125 0.8125 0.4062 +0.3125 0.8125 0.4375 +0.3125 0.8125 0.4688 +0.3125 0.8125 0.5 +0.3125 0.8125 0.5312 +0.3125 0.8125 0.5625 +0.3125 0.8125 0.5938 +0.3125 0.8125 0.625 +0.3125 0.8125 0.6562 +0.3125 0.8125 0.6875 +0.3125 0.8125 0.7188 +0.3125 0.8125 0.75 +0.3125 0.8125 0.7812 +0.3125 0.8125 0.8125 +0.3125 0.8125 0.8438 +0.3125 0.8125 0.875 +0.3125 0.8125 0.9062 +0.3125 0.8125 0.9375 +0.3125 0.8125 0.9688 +0.3125 0.8125 1 +0.3125 0.8438 0 +0.3125 0.8438 0.03125 +0.3125 0.8438 0.0625 +0.3125 0.8438 0.09375 +0.3125 0.8438 0.125 +0.3125 0.8438 0.1562 +0.3125 0.8438 0.1875 +0.3125 0.8438 0.2188 +0.3125 0.8438 0.25 +0.3125 0.8438 0.2812 +0.3125 0.8438 0.3125 +0.3125 0.8438 0.3438 +0.3125 0.8438 0.375 +0.3125 0.8438 0.4062 +0.3125 0.8438 0.4375 +0.3125 0.8438 0.4688 +0.3125 0.8438 0.5 +0.3125 0.8438 0.5312 +0.3125 0.8438 0.5625 +0.3125 0.8438 0.5938 +0.3125 0.8438 0.625 +0.3125 0.8438 0.6562 +0.3125 0.8438 0.6875 +0.3125 0.8438 0.7188 +0.3125 0.8438 0.75 +0.3125 0.8438 0.7812 +0.3125 0.8438 0.8125 +0.3125 0.8438 0.8438 +0.3125 0.8438 0.875 +0.3125 0.8438 0.9062 +0.3125 0.8438 0.9375 +0.3125 0.8438 0.9688 +0.3125 0.8438 1 +0.3125 0.875 0 +0.3125 0.875 0.03125 +0.3125 0.875 0.0625 +0.3125 0.875 0.09375 +0.3125 0.875 0.125 +0.3125 0.875 0.1562 +0.3125 0.875 0.1875 +0.3125 0.875 0.2188 +0.3125 0.875 0.25 +0.3125 0.875 0.2812 +0.3125 0.875 0.3125 +0.3125 0.875 0.3438 +0.3125 0.875 0.375 +0.3125 0.875 0.4062 +0.3125 0.875 0.4375 +0.3125 0.875 0.4688 +0.3125 0.875 0.5 +0.3125 0.875 0.5312 +0.3125 0.875 0.5625 +0.3125 0.875 0.5938 +0.3125 0.875 0.625 +0.3125 0.875 0.6562 +0.3125 0.875 0.6875 +0.3125 0.875 0.7188 +0.3125 0.875 0.75 +0.3125 0.875 0.7812 +0.3125 0.875 0.8125 +0.3125 0.875 0.8438 +0.3125 0.875 0.875 +0.3125 0.875 0.9062 +0.3125 0.875 0.9375 +0.3125 0.875 0.9688 +0.3125 0.875 1 +0.3125 0.9062 0 +0.3125 0.9062 0.03125 +0.3125 0.9062 0.0625 +0.3125 0.9062 0.09375 +0.3125 0.9062 0.125 +0.3125 0.9062 0.1562 +0.3125 0.9062 0.1875 +0.3125 0.9062 0.2188 +0.3125 0.9062 0.25 +0.3125 0.9062 0.2812 +0.3125 0.9062 0.3125 +0.3125 0.9062 0.3438 +0.3125 0.9062 0.375 +0.3125 0.9062 0.4062 +0.3125 0.9062 0.4375 +0.3125 0.9062 0.4688 +0.3125 0.9062 0.5 +0.3125 0.9062 0.5312 +0.3125 0.9062 0.5625 +0.3125 0.9062 0.5938 +0.3125 0.9062 0.625 +0.3125 0.9062 0.6562 +0.3125 0.9062 0.6875 +0.3125 0.9062 0.7188 +0.3125 0.9062 0.75 +0.3125 0.9062 0.7812 +0.3125 0.9062 0.8125 +0.3125 0.9062 0.8438 +0.3125 0.9062 0.875 +0.3125 0.9062 0.9062 +0.3125 0.9062 0.9375 +0.3125 0.9062 0.9688 +0.3125 0.9062 1 +0.3125 0.9375 0 +0.3125 0.9375 0.03125 +0.3125 0.9375 0.0625 +0.3125 0.9375 0.09375 +0.3125 0.9375 0.125 +0.3125 0.9375 0.1562 +0.3125 0.9375 0.1875 +0.3125 0.9375 0.2188 +0.3125 0.9375 0.25 +0.3125 0.9375 0.2812 +0.3125 0.9375 0.3125 +0.3125 0.9375 0.3438 +0.3125 0.9375 0.375 +0.3125 0.9375 0.4062 +0.3125 0.9375 0.4375 +0.3125 0.9375 0.4688 +0.3125 0.9375 0.5 +0.3125 0.9375 0.5312 +0.3125 0.9375 0.5625 +0.3125 0.9375 0.5938 +0.3125 0.9375 0.625 +0.3125 0.9375 0.6562 +0.3125 0.9375 0.6875 +0.3125 0.9375 0.7188 +0.3125 0.9375 0.75 +0.3125 0.9375 0.7812 +0.3125 0.9375 0.8125 +0.3125 0.9375 0.8438 +0.3125 0.9375 0.875 +0.3125 0.9375 0.9062 +0.3125 0.9375 0.9375 +0.3125 0.9375 0.9688 +0.3125 0.9375 1 +0.3125 0.9688 0 +0.3125 0.9688 0.03125 +0.3125 0.9688 0.0625 +0.3125 0.9688 0.09375 +0.3125 0.9688 0.125 +0.3125 0.9688 0.1562 +0.3125 0.9688 0.1875 +0.3125 0.9688 0.2188 +0.3125 0.9688 0.25 +0.3125 0.9688 0.2812 +0.3125 0.9688 0.3125 +0.3125 0.9688 0.3438 +0.3125 0.9688 0.375 +0.3125 0.9688 0.4062 +0.3125 0.9688 0.4375 +0.3125 0.9688 0.4688 +0.3125 0.9688 0.5 +0.3125 0.9688 0.5312 +0.3125 0.9688 0.5625 +0.3125 0.9688 0.5938 +0.3125 0.9688 0.625 +0.3125 0.9688 0.6562 +0.3125 0.9688 0.6875 +0.3125 0.9688 0.7188 +0.3125 0.9688 0.75 +0.3125 0.9688 0.7812 +0.3125 0.9688 0.8125 +0.3125 0.9688 0.8438 +0.3125 0.9688 0.875 +0.3125 0.9688 0.9062 +0.3125 0.9688 0.9375 +0.3125 0.9688 0.9688 +0.3125 0.9688 1 +0.3125 1 0 +0.3125 1 0.03125 +0.3125 1 0.0625 +0.3125 1 0.09375 +0.3125 1 0.125 +0.3125 1 0.1562 +0.3125 1 0.1875 +0.3125 1 0.2188 +0.3125 1 0.25 +0.3125 1 0.2812 +0.3125 1 0.3125 +0.3125 1 0.3438 +0.3125 1 0.375 +0.3125 1 0.4062 +0.3125 1 0.4375 +0.3125 1 0.4688 +0.3125 1 0.5 +0.3125 1 0.5312 +0.3125 1 0.5625 +0.3125 1 0.5938 +0.3125 1 0.625 +0.3125 1 0.6562 +0.3125 1 0.6875 +0.3125 1 0.7188 +0.3125 1 0.75 +0.3125 1 0.7812 +0.3125 1 0.8125 +0.3125 1 0.8438 +0.3125 1 0.875 +0.3125 1 0.9062 +0.3125 1 0.9375 +0.3125 1 0.9688 +0.3125 1 1 +0.3438 0 0 +0.3438 0 0.03125 +0.3438 0 0.0625 +0.3438 0 0.09375 +0.3438 0 0.125 +0.3438 0 0.1562 +0.3438 0 0.1875 +0.3438 0 0.2188 +0.3438 0 0.25 +0.3438 0 0.2812 +0.3438 0 0.3125 +0.3438 0 0.3438 +0.3438 0 0.375 +0.3438 0 0.4062 +0.3438 0 0.4375 +0.3438 0 0.4688 +0.3438 0 0.5 +0.3438 0 0.5312 +0.3438 0 0.5625 +0.3438 0 0.5938 +0.3438 0 0.625 +0.3438 0 0.6562 +0.3438 0 0.6875 +0.3438 0 0.7188 +0.3438 0 0.75 +0.3438 0 0.7812 +0.3438 0 0.8125 +0.3438 0 0.8438 +0.3438 0 0.875 +0.3438 0 0.9062 +0.3438 0 0.9375 +0.3438 0 0.9688 +0.3438 0 1 +0.3438 0.03125 0 +0.3438 0.03125 0.03125 +0.3438 0.03125 0.0625 +0.3438 0.03125 0.09375 +0.3438 0.03125 0.125 +0.3438 0.03125 0.1562 +0.3438 0.03125 0.1875 +0.3438 0.03125 0.2188 +0.3438 0.03125 0.25 +0.3438 0.03125 0.2812 +0.3438 0.03125 0.3125 +0.3438 0.03125 0.3438 +0.3438 0.03125 0.375 +0.3438 0.03125 0.4062 +0.3438 0.03125 0.4375 +0.3438 0.03125 0.4688 +0.3438 0.03125 0.5 +0.3438 0.03125 0.5312 +0.3438 0.03125 0.5625 +0.3438 0.03125 0.5938 +0.3438 0.03125 0.625 +0.3438 0.03125 0.6562 +0.3438 0.03125 0.6875 +0.3438 0.03125 0.7188 +0.3438 0.03125 0.75 +0.3438 0.03125 0.7812 +0.3438 0.03125 0.8125 +0.3438 0.03125 0.8438 +0.3438 0.03125 0.875 +0.3438 0.03125 0.9062 +0.3438 0.03125 0.9375 +0.3438 0.03125 0.9688 +0.3438 0.03125 1 +0.3438 0.0625 0 +0.3438 0.0625 0.03125 +0.3438 0.0625 0.0625 +0.3438 0.0625 0.09375 +0.3438 0.0625 0.125 +0.3438 0.0625 0.1562 +0.3438 0.0625 0.1875 +0.3438 0.0625 0.2188 +0.3438 0.0625 0.25 +0.3438 0.0625 0.2812 +0.3438 0.0625 0.3125 +0.3438 0.0625 0.3438 +0.3438 0.0625 0.375 +0.3438 0.0625 0.4062 +0.3438 0.0625 0.4375 +0.3438 0.0625 0.4688 +0.3438 0.0625 0.5 +0.3438 0.0625 0.5312 +0.3438 0.0625 0.5625 +0.3438 0.0625 0.5938 +0.3438 0.0625 0.625 +0.3438 0.0625 0.6562 +0.3438 0.0625 0.6875 +0.3438 0.0625 0.7188 +0.3438 0.0625 0.75 +0.3438 0.0625 0.7812 +0.3438 0.0625 0.8125 +0.3438 0.0625 0.8438 +0.3438 0.0625 0.875 +0.3438 0.0625 0.9062 +0.3438 0.0625 0.9375 +0.3438 0.0625 0.9688 +0.3438 0.0625 1 +0.3438 0.09375 0 +0.3438 0.09375 0.03125 +0.3438 0.09375 0.0625 +0.3438 0.09375 0.09375 +0.3438 0.09375 0.125 +0.3438 0.09375 0.1562 +0.3438 0.09375 0.1875 +0.3438 0.09375 0.2188 +0.3438 0.09375 0.25 +0.3438 0.09375 0.2812 +0.3438 0.09375 0.3125 +0.3438 0.09375 0.3438 +0.3438 0.09375 0.375 +0.3438 0.09375 0.4062 +0.3438 0.09375 0.4375 +0.3438 0.09375 0.4688 +0.3438 0.09375 0.5 +0.3438 0.09375 0.5312 +0.3438 0.09375 0.5625 +0.3438 0.09375 0.5938 +0.3438 0.09375 0.625 +0.3438 0.09375 0.6562 +0.3438 0.09375 0.6875 +0.3438 0.09375 0.7188 +0.3438 0.09375 0.75 +0.3438 0.09375 0.7812 +0.3438 0.09375 0.8125 +0.3438 0.09375 0.8438 +0.3438 0.09375 0.875 +0.3438 0.09375 0.9062 +0.3438 0.09375 0.9375 +0.3438 0.09375 0.9688 +0.3438 0.09375 1 +0.3438 0.125 0 +0.3438 0.125 0.03125 +0.3438 0.125 0.0625 +0.3438 0.125 0.09375 +0.3438 0.125 0.125 +0.3438 0.125 0.1562 +0.3438 0.125 0.1875 +0.3438 0.125 0.2188 +0.3438 0.125 0.25 +0.3438 0.125 0.2812 +0.3438 0.125 0.3125 +0.3438 0.125 0.3438 +0.3438 0.125 0.375 +0.3438 0.125 0.4062 +0.3438 0.125 0.4375 +0.3438 0.125 0.4688 +0.3438 0.125 0.5 +0.3438 0.125 0.5312 +0.3438 0.125 0.5625 +0.3438 0.125 0.5938 +0.3438 0.125 0.625 +0.3438 0.125 0.6562 +0.3438 0.125 0.6875 +0.3438 0.125 0.7188 +0.3438 0.125 0.75 +0.3438 0.125 0.7812 +0.3438 0.125 0.8125 +0.3438 0.125 0.8438 +0.3438 0.125 0.875 +0.3438 0.125 0.9062 +0.3438 0.125 0.9375 +0.3438 0.125 0.9688 +0.3438 0.125 1 +0.3438 0.1562 0 +0.3438 0.1562 0.03125 +0.3438 0.1562 0.0625 +0.3438 0.1562 0.09375 +0.3438 0.1562 0.125 +0.3438 0.1562 0.1562 +0.3438 0.1562 0.1875 +0.3438 0.1562 0.2188 +0.3438 0.1562 0.25 +0.3438 0.1562 0.2812 +0.3438 0.1562 0.3125 +0.3438 0.1562 0.3438 +0.3438 0.1562 0.375 +0.3438 0.1562 0.4062 +0.3438 0.1562 0.4375 +0.3438 0.1562 0.4688 +0.3438 0.1562 0.5 +0.3438 0.1562 0.5312 +0.3438 0.1562 0.5625 +0.3438 0.1562 0.5938 +0.3438 0.1562 0.625 +0.3438 0.1562 0.6562 +0.3438 0.1562 0.6875 +0.3438 0.1562 0.7188 +0.3438 0.1562 0.75 +0.3438 0.1562 0.7812 +0.3438 0.1562 0.8125 +0.3438 0.1562 0.8438 +0.3438 0.1562 0.875 +0.3438 0.1562 0.9062 +0.3438 0.1562 0.9375 +0.3438 0.1562 0.9688 +0.3438 0.1562 1 +0.3438 0.1875 0 +0.3438 0.1875 0.03125 +0.3438 0.1875 0.0625 +0.3438 0.1875 0.09375 +0.3438 0.1875 0.125 +0.3438 0.1875 0.1562 +0.3438 0.1875 0.1875 +0.3438 0.1875 0.2188 +0.3438 0.1875 0.25 +0.3438 0.1875 0.2812 +0.3438 0.1875 0.3125 +0.3438 0.1875 0.3438 +0.3438 0.1875 0.375 +0.3438 0.1875 0.4062 +0.3438 0.1875 0.4375 +0.3438 0.1875 0.4688 +0.3438 0.1875 0.5 +0.3438 0.1875 0.5312 +0.3438 0.1875 0.5625 +0.3438 0.1875 0.5938 +0.3438 0.1875 0.625 +0.3438 0.1875 0.6562 +0.3438 0.1875 0.6875 +0.3438 0.1875 0.7188 +0.3438 0.1875 0.75 +0.3438 0.1875 0.7812 +0.3438 0.1875 0.8125 +0.3438 0.1875 0.8438 +0.3438 0.1875 0.875 +0.3438 0.1875 0.9062 +0.3438 0.1875 0.9375 +0.3438 0.1875 0.9688 +0.3438 0.1875 1 +0.3438 0.2188 0 +0.3438 0.2188 0.03125 +0.3438 0.2188 0.0625 +0.3438 0.2188 0.09375 +0.3438 0.2188 0.125 +0.3438 0.2188 0.1562 +0.3438 0.2188 0.1875 +0.3438 0.2188 0.2188 +0.3438 0.2188 0.25 +0.3438 0.2188 0.2812 +0.3438 0.2188 0.3125 +0.3438 0.2188 0.3438 +0.3438 0.2188 0.375 +0.3438 0.2188 0.4062 +0.3438 0.2188 0.4375 +0.3438 0.2188 0.4688 +0.3438 0.2188 0.5 +0.3438 0.2188 0.5312 +0.3438 0.2188 0.5625 +0.3438 0.2188 0.5938 +0.3438 0.2188 0.625 +0.3438 0.2188 0.6562 +0.3438 0.2188 0.6875 +0.3438 0.2188 0.7188 +0.3438 0.2188 0.75 +0.3438 0.2188 0.7812 +0.3438 0.2188 0.8125 +0.3438 0.2188 0.8438 +0.3438 0.2188 0.875 +0.3438 0.2188 0.9062 +0.3438 0.2188 0.9375 +0.3438 0.2188 0.9688 +0.3438 0.2188 1 +0.3438 0.25 0 +0.3438 0.25 0.03125 +0.3438 0.25 0.0625 +0.3438 0.25 0.09375 +0.3438 0.25 0.125 +0.3438 0.25 0.1562 +0.3438 0.25 0.1875 +0.3438 0.25 0.2188 +0.3438 0.25 0.25 +0.3438 0.25 0.2812 +0.3438 0.25 0.3125 +0.3438 0.25 0.3438 +0.3438 0.25 0.375 +0.3438 0.25 0.4062 +0.3438 0.25 0.4375 +0.3438 0.25 0.4688 +0.3438 0.25 0.5 +0.3438 0.25 0.5312 +0.3438 0.25 0.5625 +0.3438 0.25 0.5938 +0.3438 0.25 0.625 +0.3438 0.25 0.6562 +0.3438 0.25 0.6875 +0.3438 0.25 0.7188 +0.3438 0.25 0.75 +0.3438 0.25 0.7812 +0.3438 0.25 0.8125 +0.3438 0.25 0.8438 +0.3438 0.25 0.875 +0.3438 0.25 0.9062 +0.3438 0.25 0.9375 +0.3438 0.25 0.9688 +0.3438 0.25 1 +0.3438 0.2812 0 +0.3438 0.2812 0.03125 +0.3438 0.2812 0.0625 +0.3438 0.2812 0.09375 +0.3438 0.2812 0.125 +0.3438 0.2812 0.1562 +0.3438 0.2812 0.1875 +0.3438 0.2812 0.2188 +0.3438 0.2812 0.25 +0.3438 0.2812 0.2812 +0.3438 0.2812 0.3125 +0.3438 0.2812 0.3438 +0.3438 0.2812 0.375 +0.3438 0.2812 0.4062 +0.3438 0.2812 0.4375 +0.3438 0.2812 0.4688 +0.3438 0.2812 0.5 +0.3438 0.2812 0.5312 +0.3438 0.2812 0.5625 +0.3438 0.2812 0.5938 +0.3438 0.2812 0.625 +0.3438 0.2812 0.6562 +0.3438 0.2812 0.6875 +0.3438 0.2812 0.7188 +0.3438 0.2812 0.75 +0.3438 0.2812 0.7812 +0.3438 0.2812 0.8125 +0.3438 0.2812 0.8438 +0.3438 0.2812 0.875 +0.3438 0.2812 0.9062 +0.3438 0.2812 0.9375 +0.3438 0.2812 0.9688 +0.3438 0.2812 1 +0.3438 0.3125 0 +0.3438 0.3125 0.03125 +0.3438 0.3125 0.0625 +0.3438 0.3125 0.09375 +0.3438 0.3125 0.125 +0.3438 0.3125 0.1562 +0.3438 0.3125 0.1875 +0.3438 0.3125 0.2188 +0.3438 0.3125 0.25 +0.3438 0.3125 0.2812 +0.3438 0.3125 0.3125 +0.3438 0.3125 0.3438 +0.3438 0.3125 0.375 +0.3438 0.3125 0.4062 +0.3438 0.3125 0.4375 +0.3438 0.3125 0.4688 +0.3438 0.3125 0.5 +0.3438 0.3125 0.5312 +0.3438 0.3125 0.5625 +0.3438 0.3125 0.5938 +0.3438 0.3125 0.625 +0.3438 0.3125 0.6562 +0.3438 0.3125 0.6875 +0.3438 0.3125 0.7188 +0.3438 0.3125 0.75 +0.3438 0.3125 0.7812 +0.3438 0.3125 0.8125 +0.3438 0.3125 0.8438 +0.3438 0.3125 0.875 +0.3438 0.3125 0.9062 +0.3438 0.3125 0.9375 +0.3438 0.3125 0.9688 +0.3438 0.3125 1 +0.3438 0.3438 0 +0.3438 0.3438 0.03125 +0.3438 0.3438 0.0625 +0.3438 0.3438 0.09375 +0.3438 0.3438 0.125 +0.3438 0.3438 0.1562 +0.3438 0.3438 0.1875 +0.3438 0.3438 0.2188 +0.3438 0.3438 0.25 +0.3438 0.3438 0.2812 +0.3438 0.3438 0.3125 +0.3438 0.3438 0.3438 +0.3438 0.3438 0.375 +0.3438 0.3438 0.4062 +0.3438 0.3438 0.4375 +0.3438 0.3438 0.4688 +0.3438 0.3438 0.5 +0.3438 0.3438 0.5312 +0.3438 0.3438 0.5625 +0.3438 0.3438 0.5938 +0.3438 0.3438 0.625 +0.3438 0.3438 0.6562 +0.3438 0.3438 0.6875 +0.3438 0.3438 0.7188 +0.3438 0.3438 0.75 +0.3438 0.3438 0.7812 +0.3438 0.3438 0.8125 +0.3438 0.3438 0.8438 +0.3438 0.3438 0.875 +0.3438 0.3438 0.9062 +0.3438 0.3438 0.9375 +0.3438 0.3438 0.9688 +0.3438 0.3438 1 +0.3438 0.375 0 +0.3438 0.375 0.03125 +0.3438 0.375 0.0625 +0.3438 0.375 0.09375 +0.3438 0.375 0.125 +0.3438 0.375 0.1562 +0.3438 0.375 0.1875 +0.3438 0.375 0.2188 +0.3438 0.375 0.25 +0.3438 0.375 0.2812 +0.3438 0.375 0.3125 +0.3438 0.375 0.3438 +0.3438 0.375 0.375 +0.3438 0.375 0.4062 +0.3438 0.375 0.4375 +0.3438 0.375 0.4688 +0.3438 0.375 0.5 +0.3438 0.375 0.5312 +0.3438 0.375 0.5625 +0.3438 0.375 0.5938 +0.3438 0.375 0.625 +0.3438 0.375 0.6562 +0.3438 0.375 0.6875 +0.3438 0.375 0.7188 +0.3438 0.375 0.75 +0.3438 0.375 0.7812 +0.3438 0.375 0.8125 +0.3438 0.375 0.8438 +0.3438 0.375 0.875 +0.3438 0.375 0.9062 +0.3438 0.375 0.9375 +0.3438 0.375 0.9688 +0.3438 0.375 1 +0.3438 0.4062 0 +0.3438 0.4062 0.03125 +0.3438 0.4062 0.0625 +0.3438 0.4062 0.09375 +0.3438 0.4062 0.125 +0.3438 0.4062 0.1562 +0.3438 0.4062 0.1875 +0.3438 0.4062 0.2188 +0.3438 0.4062 0.25 +0.3438 0.4062 0.2812 +0.3438 0.4062 0.3125 +0.3438 0.4062 0.3438 +0.3438 0.4062 0.375 +0.3438 0.4062 0.4062 +0.3438 0.4062 0.4375 +0.3438 0.4062 0.4688 +0.3438 0.4062 0.5 +0.3438 0.4062 0.5312 +0.3438 0.4062 0.5625 +0.3438 0.4062 0.5938 +0.3438 0.4062 0.625 +0.3438 0.4062 0.6562 +0.3438 0.4062 0.6875 +0.3438 0.4062 0.7188 +0.3438 0.4062 0.75 +0.3438 0.4062 0.7812 +0.3438 0.4062 0.8125 +0.3438 0.4062 0.8438 +0.3438 0.4062 0.875 +0.3438 0.4062 0.9062 +0.3438 0.4062 0.9375 +0.3438 0.4062 0.9688 +0.3438 0.4062 1 +0.3438 0.4375 0 +0.3438 0.4375 0.03125 +0.3438 0.4375 0.0625 +0.3438 0.4375 0.09375 +0.3438 0.4375 0.125 +0.3438 0.4375 0.1562 +0.3438 0.4375 0.1875 +0.3438 0.4375 0.2188 +0.3438 0.4375 0.25 +0.3438 0.4375 0.2812 +0.3438 0.4375 0.3125 +0.3438 0.4375 0.3438 +0.3438 0.4375 0.375 +0.3438 0.4375 0.4062 +0.3438 0.4375 0.4375 +0.3438 0.4375 0.4688 +0.3438 0.4375 0.5 +0.3438 0.4375 0.5312 +0.3438 0.4375 0.5625 +0.3438 0.4375 0.5938 +0.3438 0.4375 0.625 +0.3438 0.4375 0.6562 +0.3438 0.4375 0.6875 +0.3438 0.4375 0.7188 +0.3438 0.4375 0.75 +0.3438 0.4375 0.7812 +0.3438 0.4375 0.8125 +0.3438 0.4375 0.8438 +0.3438 0.4375 0.875 +0.3438 0.4375 0.9062 +0.3438 0.4375 0.9375 +0.3438 0.4375 0.9688 +0.3438 0.4375 1 +0.3438 0.4688 0 +0.3438 0.4688 0.03125 +0.3438 0.4688 0.0625 +0.3438 0.4688 0.09375 +0.3438 0.4688 0.125 +0.3438 0.4688 0.1562 +0.3438 0.4688 0.1875 +0.3438 0.4688 0.2188 +0.3438 0.4688 0.25 +0.3438 0.4688 0.2812 +0.3438 0.4688 0.3125 +0.3438 0.4688 0.3438 +0.3438 0.4688 0.375 +0.3438 0.4688 0.4062 +0.3438 0.4688 0.4375 +0.3438 0.4688 0.4688 +0.3438 0.4688 0.5 +0.3438 0.4688 0.5312 +0.3438 0.4688 0.5625 +0.3438 0.4688 0.5938 +0.3438 0.4688 0.625 +0.3438 0.4688 0.6562 +0.3438 0.4688 0.6875 +0.3438 0.4688 0.7188 +0.3438 0.4688 0.75 +0.3438 0.4688 0.7812 +0.3438 0.4688 0.8125 +0.3438 0.4688 0.8438 +0.3438 0.4688 0.875 +0.3438 0.4688 0.9062 +0.3438 0.4688 0.9375 +0.3438 0.4688 0.9688 +0.3438 0.4688 1 +0.3438 0.5 0 +0.3438 0.5 0.03125 +0.3438 0.5 0.0625 +0.3438 0.5 0.09375 +0.3438 0.5 0.125 +0.3438 0.5 0.1562 +0.3438 0.5 0.1875 +0.3438 0.5 0.2188 +0.3438 0.5 0.25 +0.3438 0.5 0.2812 +0.3438 0.5 0.3125 +0.3438 0.5 0.3438 +0.3438 0.5 0.375 +0.3438 0.5 0.4062 +0.3438 0.5 0.4375 +0.3438 0.5 0.4688 +0.3438 0.5 0.5 +0.3438 0.5 0.5312 +0.3438 0.5 0.5625 +0.3438 0.5 0.5938 +0.3438 0.5 0.625 +0.3438 0.5 0.6562 +0.3438 0.5 0.6875 +0.3438 0.5 0.7188 +0.3438 0.5 0.75 +0.3438 0.5 0.7812 +0.3438 0.5 0.8125 +0.3438 0.5 0.8438 +0.3438 0.5 0.875 +0.3438 0.5 0.9062 +0.3438 0.5 0.9375 +0.3438 0.5 0.9688 +0.3438 0.5 1 +0.3438 0.5312 0 +0.3438 0.5312 0.03125 +0.3438 0.5312 0.0625 +0.3438 0.5312 0.09375 +0.3438 0.5312 0.125 +0.3438 0.5312 0.1562 +0.3438 0.5312 0.1875 +0.3438 0.5312 0.2188 +0.3438 0.5312 0.25 +0.3438 0.5312 0.2812 +0.3438 0.5312 0.3125 +0.3438 0.5312 0.3438 +0.3438 0.5312 0.375 +0.3438 0.5312 0.4062 +0.3438 0.5312 0.4375 +0.3438 0.5312 0.4688 +0.3438 0.5312 0.5 +0.3438 0.5312 0.5312 +0.3438 0.5312 0.5625 +0.3438 0.5312 0.5938 +0.3438 0.5312 0.625 +0.3438 0.5312 0.6562 +0.3438 0.5312 0.6875 +0.3438 0.5312 0.7188 +0.3438 0.5312 0.75 +0.3438 0.5312 0.7812 +0.3438 0.5312 0.8125 +0.3438 0.5312 0.8438 +0.3438 0.5312 0.875 +0.3438 0.5312 0.9062 +0.3438 0.5312 0.9375 +0.3438 0.5312 0.9688 +0.3438 0.5312 1 +0.3438 0.5625 0 +0.3438 0.5625 0.03125 +0.3438 0.5625 0.0625 +0.3438 0.5625 0.09375 +0.3438 0.5625 0.125 +0.3438 0.5625 0.1562 +0.3438 0.5625 0.1875 +0.3438 0.5625 0.2188 +0.3438 0.5625 0.25 +0.3438 0.5625 0.2812 +0.3438 0.5625 0.3125 +0.3438 0.5625 0.3438 +0.3438 0.5625 0.375 +0.3438 0.5625 0.4062 +0.3438 0.5625 0.4375 +0.3438 0.5625 0.4688 +0.3438 0.5625 0.5 +0.3438 0.5625 0.5312 +0.3438 0.5625 0.5625 +0.3438 0.5625 0.5938 +0.3438 0.5625 0.625 +0.3438 0.5625 0.6562 +0.3438 0.5625 0.6875 +0.3438 0.5625 0.7188 +0.3438 0.5625 0.75 +0.3438 0.5625 0.7812 +0.3438 0.5625 0.8125 +0.3438 0.5625 0.8438 +0.3438 0.5625 0.875 +0.3438 0.5625 0.9062 +0.3438 0.5625 0.9375 +0.3438 0.5625 0.9688 +0.3438 0.5625 1 +0.3438 0.5938 0 +0.3438 0.5938 0.03125 +0.3438 0.5938 0.0625 +0.3438 0.5938 0.09375 +0.3438 0.5938 0.125 +0.3438 0.5938 0.1562 +0.3438 0.5938 0.1875 +0.3438 0.5938 0.2188 +0.3438 0.5938 0.25 +0.3438 0.5938 0.2812 +0.3438 0.5938 0.3125 +0.3438 0.5938 0.3438 +0.3438 0.5938 0.375 +0.3438 0.5938 0.4062 +0.3438 0.5938 0.4375 +0.3438 0.5938 0.4688 +0.3438 0.5938 0.5 +0.3438 0.5938 0.5312 +0.3438 0.5938 0.5625 +0.3438 0.5938 0.5938 +0.3438 0.5938 0.625 +0.3438 0.5938 0.6562 +0.3438 0.5938 0.6875 +0.3438 0.5938 0.7188 +0.3438 0.5938 0.75 +0.3438 0.5938 0.7812 +0.3438 0.5938 0.8125 +0.3438 0.5938 0.8438 +0.3438 0.5938 0.875 +0.3438 0.5938 0.9062 +0.3438 0.5938 0.9375 +0.3438 0.5938 0.9688 +0.3438 0.5938 1 +0.3438 0.625 0 +0.3438 0.625 0.03125 +0.3438 0.625 0.0625 +0.3438 0.625 0.09375 +0.3438 0.625 0.125 +0.3438 0.625 0.1562 +0.3438 0.625 0.1875 +0.3438 0.625 0.2188 +0.3438 0.625 0.25 +0.3438 0.625 0.2812 +0.3438 0.625 0.3125 +0.3438 0.625 0.3438 +0.3438 0.625 0.375 +0.3438 0.625 0.4062 +0.3438 0.625 0.4375 +0.3438 0.625 0.4688 +0.3438 0.625 0.5 +0.3438 0.625 0.5312 +0.3438 0.625 0.5625 +0.3438 0.625 0.5938 +0.3438 0.625 0.625 +0.3438 0.625 0.6562 +0.3438 0.625 0.6875 +0.3438 0.625 0.7188 +0.3438 0.625 0.75 +0.3438 0.625 0.7812 +0.3438 0.625 0.8125 +0.3438 0.625 0.8438 +0.3438 0.625 0.875 +0.3438 0.625 0.9062 +0.3438 0.625 0.9375 +0.3438 0.625 0.9688 +0.3438 0.625 1 +0.3438 0.6562 0 +0.3438 0.6562 0.03125 +0.3438 0.6562 0.0625 +0.3438 0.6562 0.09375 +0.3438 0.6562 0.125 +0.3438 0.6562 0.1562 +0.3438 0.6562 0.1875 +0.3438 0.6562 0.2188 +0.3438 0.6562 0.25 +0.3438 0.6562 0.2812 +0.3438 0.6562 0.3125 +0.3438 0.6562 0.3438 +0.3438 0.6562 0.375 +0.3438 0.6562 0.4062 +0.3438 0.6562 0.4375 +0.3438 0.6562 0.4688 +0.3438 0.6562 0.5 +0.3438 0.6562 0.5312 +0.3438 0.6562 0.5625 +0.3438 0.6562 0.5938 +0.3438 0.6562 0.625 +0.3438 0.6562 0.6562 +0.3438 0.6562 0.6875 +0.3438 0.6562 0.7188 +0.3438 0.6562 0.75 +0.3438 0.6562 0.7812 +0.3438 0.6562 0.8125 +0.3438 0.6562 0.8438 +0.3438 0.6562 0.875 +0.3438 0.6562 0.9062 +0.3438 0.6562 0.9375 +0.3438 0.6562 0.9688 +0.3438 0.6562 1 +0.3438 0.6875 0 +0.3438 0.6875 0.03125 +0.3438 0.6875 0.0625 +0.3438 0.6875 0.09375 +0.3438 0.6875 0.125 +0.3438 0.6875 0.1562 +0.3438 0.6875 0.1875 +0.3438 0.6875 0.2188 +0.3438 0.6875 0.25 +0.3438 0.6875 0.2812 +0.3438 0.6875 0.3125 +0.3438 0.6875 0.3438 +0.3438 0.6875 0.375 +0.3438 0.6875 0.4062 +0.3438 0.6875 0.4375 +0.3438 0.6875 0.4688 +0.3438 0.6875 0.5 +0.3438 0.6875 0.5312 +0.3438 0.6875 0.5625 +0.3438 0.6875 0.5938 +0.3438 0.6875 0.625 +0.3438 0.6875 0.6562 +0.3438 0.6875 0.6875 +0.3438 0.6875 0.7188 +0.3438 0.6875 0.75 +0.3438 0.6875 0.7812 +0.3438 0.6875 0.8125 +0.3438 0.6875 0.8438 +0.3438 0.6875 0.875 +0.3438 0.6875 0.9062 +0.3438 0.6875 0.9375 +0.3438 0.6875 0.9688 +0.3438 0.6875 1 +0.3438 0.7188 0 +0.3438 0.7188 0.03125 +0.3438 0.7188 0.0625 +0.3438 0.7188 0.09375 +0.3438 0.7188 0.125 +0.3438 0.7188 0.1562 +0.3438 0.7188 0.1875 +0.3438 0.7188 0.2188 +0.3438 0.7188 0.25 +0.3438 0.7188 0.2812 +0.3438 0.7188 0.3125 +0.3438 0.7188 0.3438 +0.3438 0.7188 0.375 +0.3438 0.7188 0.4062 +0.3438 0.7188 0.4375 +0.3438 0.7188 0.4688 +0.3438 0.7188 0.5 +0.3438 0.7188 0.5312 +0.3438 0.7188 0.5625 +0.3438 0.7188 0.5938 +0.3438 0.7188 0.625 +0.3438 0.7188 0.6562 +0.3438 0.7188 0.6875 +0.3438 0.7188 0.7188 +0.3438 0.7188 0.75 +0.3438 0.7188 0.7812 +0.3438 0.7188 0.8125 +0.3438 0.7188 0.8438 +0.3438 0.7188 0.875 +0.3438 0.7188 0.9062 +0.3438 0.7188 0.9375 +0.3438 0.7188 0.9688 +0.3438 0.7188 1 +0.3438 0.75 0 +0.3438 0.75 0.03125 +0.3438 0.75 0.0625 +0.3438 0.75 0.09375 +0.3438 0.75 0.125 +0.3438 0.75 0.1562 +0.3438 0.75 0.1875 +0.3438 0.75 0.2188 +0.3438 0.75 0.25 +0.3438 0.75 0.2812 +0.3438 0.75 0.3125 +0.3438 0.75 0.3438 +0.3438 0.75 0.375 +0.3438 0.75 0.4062 +0.3438 0.75 0.4375 +0.3438 0.75 0.4688 +0.3438 0.75 0.5 +0.3438 0.75 0.5312 +0.3438 0.75 0.5625 +0.3438 0.75 0.5938 +0.3438 0.75 0.625 +0.3438 0.75 0.6562 +0.3438 0.75 0.6875 +0.3438 0.75 0.7188 +0.3438 0.75 0.75 +0.3438 0.75 0.7812 +0.3438 0.75 0.8125 +0.3438 0.75 0.8438 +0.3438 0.75 0.875 +0.3438 0.75 0.9062 +0.3438 0.75 0.9375 +0.3438 0.75 0.9688 +0.3438 0.75 1 +0.3438 0.7812 0 +0.3438 0.7812 0.03125 +0.3438 0.7812 0.0625 +0.3438 0.7812 0.09375 +0.3438 0.7812 0.125 +0.3438 0.7812 0.1562 +0.3438 0.7812 0.1875 +0.3438 0.7812 0.2188 +0.3438 0.7812 0.25 +0.3438 0.7812 0.2812 +0.3438 0.7812 0.3125 +0.3438 0.7812 0.3438 +0.3438 0.7812 0.375 +0.3438 0.7812 0.4062 +0.3438 0.7812 0.4375 +0.3438 0.7812 0.4688 +0.3438 0.7812 0.5 +0.3438 0.7812 0.5312 +0.3438 0.7812 0.5625 +0.3438 0.7812 0.5938 +0.3438 0.7812 0.625 +0.3438 0.7812 0.6562 +0.3438 0.7812 0.6875 +0.3438 0.7812 0.7188 +0.3438 0.7812 0.75 +0.3438 0.7812 0.7812 +0.3438 0.7812 0.8125 +0.3438 0.7812 0.8438 +0.3438 0.7812 0.875 +0.3438 0.7812 0.9062 +0.3438 0.7812 0.9375 +0.3438 0.7812 0.9688 +0.3438 0.7812 1 +0.3438 0.8125 0 +0.3438 0.8125 0.03125 +0.3438 0.8125 0.0625 +0.3438 0.8125 0.09375 +0.3438 0.8125 0.125 +0.3438 0.8125 0.1562 +0.3438 0.8125 0.1875 +0.3438 0.8125 0.2188 +0.3438 0.8125 0.25 +0.3438 0.8125 0.2812 +0.3438 0.8125 0.3125 +0.3438 0.8125 0.3438 +0.3438 0.8125 0.375 +0.3438 0.8125 0.4062 +0.3438 0.8125 0.4375 +0.3438 0.8125 0.4688 +0.3438 0.8125 0.5 +0.3438 0.8125 0.5312 +0.3438 0.8125 0.5625 +0.3438 0.8125 0.5938 +0.3438 0.8125 0.625 +0.3438 0.8125 0.6562 +0.3438 0.8125 0.6875 +0.3438 0.8125 0.7188 +0.3438 0.8125 0.75 +0.3438 0.8125 0.7812 +0.3438 0.8125 0.8125 +0.3438 0.8125 0.8438 +0.3438 0.8125 0.875 +0.3438 0.8125 0.9062 +0.3438 0.8125 0.9375 +0.3438 0.8125 0.9688 +0.3438 0.8125 1 +0.3438 0.8438 0 +0.3438 0.8438 0.03125 +0.3438 0.8438 0.0625 +0.3438 0.8438 0.09375 +0.3438 0.8438 0.125 +0.3438 0.8438 0.1562 +0.3438 0.8438 0.1875 +0.3438 0.8438 0.2188 +0.3438 0.8438 0.25 +0.3438 0.8438 0.2812 +0.3438 0.8438 0.3125 +0.3438 0.8438 0.3438 +0.3438 0.8438 0.375 +0.3438 0.8438 0.4062 +0.3438 0.8438 0.4375 +0.3438 0.8438 0.4688 +0.3438 0.8438 0.5 +0.3438 0.8438 0.5312 +0.3438 0.8438 0.5625 +0.3438 0.8438 0.5938 +0.3438 0.8438 0.625 +0.3438 0.8438 0.6562 +0.3438 0.8438 0.6875 +0.3438 0.8438 0.7188 +0.3438 0.8438 0.75 +0.3438 0.8438 0.7812 +0.3438 0.8438 0.8125 +0.3438 0.8438 0.8438 +0.3438 0.8438 0.875 +0.3438 0.8438 0.9062 +0.3438 0.8438 0.9375 +0.3438 0.8438 0.9688 +0.3438 0.8438 1 +0.3438 0.875 0 +0.3438 0.875 0.03125 +0.3438 0.875 0.0625 +0.3438 0.875 0.09375 +0.3438 0.875 0.125 +0.3438 0.875 0.1562 +0.3438 0.875 0.1875 +0.3438 0.875 0.2188 +0.3438 0.875 0.25 +0.3438 0.875 0.2812 +0.3438 0.875 0.3125 +0.3438 0.875 0.3438 +0.3438 0.875 0.375 +0.3438 0.875 0.4062 +0.3438 0.875 0.4375 +0.3438 0.875 0.4688 +0.3438 0.875 0.5 +0.3438 0.875 0.5312 +0.3438 0.875 0.5625 +0.3438 0.875 0.5938 +0.3438 0.875 0.625 +0.3438 0.875 0.6562 +0.3438 0.875 0.6875 +0.3438 0.875 0.7188 +0.3438 0.875 0.75 +0.3438 0.875 0.7812 +0.3438 0.875 0.8125 +0.3438 0.875 0.8438 +0.3438 0.875 0.875 +0.3438 0.875 0.9062 +0.3438 0.875 0.9375 +0.3438 0.875 0.9688 +0.3438 0.875 1 +0.3438 0.9062 0 +0.3438 0.9062 0.03125 +0.3438 0.9062 0.0625 +0.3438 0.9062 0.09375 +0.3438 0.9062 0.125 +0.3438 0.9062 0.1562 +0.3438 0.9062 0.1875 +0.3438 0.9062 0.2188 +0.3438 0.9062 0.25 +0.3438 0.9062 0.2812 +0.3438 0.9062 0.3125 +0.3438 0.9062 0.3438 +0.3438 0.9062 0.375 +0.3438 0.9062 0.4062 +0.3438 0.9062 0.4375 +0.3438 0.9062 0.4688 +0.3438 0.9062 0.5 +0.3438 0.9062 0.5312 +0.3438 0.9062 0.5625 +0.3438 0.9062 0.5938 +0.3438 0.9062 0.625 +0.3438 0.9062 0.6562 +0.3438 0.9062 0.6875 +0.3438 0.9062 0.7188 +0.3438 0.9062 0.75 +0.3438 0.9062 0.7812 +0.3438 0.9062 0.8125 +0.3438 0.9062 0.8438 +0.3438 0.9062 0.875 +0.3438 0.9062 0.9062 +0.3438 0.9062 0.9375 +0.3438 0.9062 0.9688 +0.3438 0.9062 1 +0.3438 0.9375 0 +0.3438 0.9375 0.03125 +0.3438 0.9375 0.0625 +0.3438 0.9375 0.09375 +0.3438 0.9375 0.125 +0.3438 0.9375 0.1562 +0.3438 0.9375 0.1875 +0.3438 0.9375 0.2188 +0.3438 0.9375 0.25 +0.3438 0.9375 0.2812 +0.3438 0.9375 0.3125 +0.3438 0.9375 0.3438 +0.3438 0.9375 0.375 +0.3438 0.9375 0.4062 +0.3438 0.9375 0.4375 +0.3438 0.9375 0.4688 +0.3438 0.9375 0.5 +0.3438 0.9375 0.5312 +0.3438 0.9375 0.5625 +0.3438 0.9375 0.5938 +0.3438 0.9375 0.625 +0.3438 0.9375 0.6562 +0.3438 0.9375 0.6875 +0.3438 0.9375 0.7188 +0.3438 0.9375 0.75 +0.3438 0.9375 0.7812 +0.3438 0.9375 0.8125 +0.3438 0.9375 0.8438 +0.3438 0.9375 0.875 +0.3438 0.9375 0.9062 +0.3438 0.9375 0.9375 +0.3438 0.9375 0.9688 +0.3438 0.9375 1 +0.3438 0.9688 0 +0.3438 0.9688 0.03125 +0.3438 0.9688 0.0625 +0.3438 0.9688 0.09375 +0.3438 0.9688 0.125 +0.3438 0.9688 0.1562 +0.3438 0.9688 0.1875 +0.3438 0.9688 0.2188 +0.3438 0.9688 0.25 +0.3438 0.9688 0.2812 +0.3438 0.9688 0.3125 +0.3438 0.9688 0.3438 +0.3438 0.9688 0.375 +0.3438 0.9688 0.4062 +0.3438 0.9688 0.4375 +0.3438 0.9688 0.4688 +0.3438 0.9688 0.5 +0.3438 0.9688 0.5312 +0.3438 0.9688 0.5625 +0.3438 0.9688 0.5938 +0.3438 0.9688 0.625 +0.3438 0.9688 0.6562 +0.3438 0.9688 0.6875 +0.3438 0.9688 0.7188 +0.3438 0.9688 0.75 +0.3438 0.9688 0.7812 +0.3438 0.9688 0.8125 +0.3438 0.9688 0.8438 +0.3438 0.9688 0.875 +0.3438 0.9688 0.9062 +0.3438 0.9688 0.9375 +0.3438 0.9688 0.9688 +0.3438 0.9688 1 +0.3438 1 0 +0.3438 1 0.03125 +0.3438 1 0.0625 +0.3438 1 0.09375 +0.3438 1 0.125 +0.3438 1 0.1562 +0.3438 1 0.1875 +0.3438 1 0.2188 +0.3438 1 0.25 +0.3438 1 0.2812 +0.3438 1 0.3125 +0.3438 1 0.3438 +0.3438 1 0.375 +0.3438 1 0.4062 +0.3438 1 0.4375 +0.3438 1 0.4688 +0.3438 1 0.5 +0.3438 1 0.5312 +0.3438 1 0.5625 +0.3438 1 0.5938 +0.3438 1 0.625 +0.3438 1 0.6562 +0.3438 1 0.6875 +0.3438 1 0.7188 +0.3438 1 0.75 +0.3438 1 0.7812 +0.3438 1 0.8125 +0.3438 1 0.8438 +0.3438 1 0.875 +0.3438 1 0.9062 +0.3438 1 0.9375 +0.3438 1 0.9688 +0.3438 1 1 +0.375 0 0 +0.375 0 0.03125 +0.375 0 0.0625 +0.375 0 0.09375 +0.375 0 0.125 +0.375 0 0.1562 +0.375 0 0.1875 +0.375 0 0.2188 +0.375 0 0.25 +0.375 0 0.2812 +0.375 0 0.3125 +0.375 0 0.3438 +0.375 0 0.375 +0.375 0 0.4062 +0.375 0 0.4375 +0.375 0 0.4688 +0.375 0 0.5 +0.375 0 0.5312 +0.375 0 0.5625 +0.375 0 0.5938 +0.375 0 0.625 +0.375 0 0.6562 +0.375 0 0.6875 +0.375 0 0.7188 +0.375 0 0.75 +0.375 0 0.7812 +0.375 0 0.8125 +0.375 0 0.8438 +0.375 0 0.875 +0.375 0 0.9062 +0.375 0 0.9375 +0.375 0 0.9688 +0.375 0 1 +0.375 0.03125 0 +0.375 0.03125 0.03125 +0.375 0.03125 0.0625 +0.375 0.03125 0.09375 +0.375 0.03125 0.125 +0.375 0.03125 0.1562 +0.375 0.03125 0.1875 +0.375 0.03125 0.2188 +0.375 0.03125 0.25 +0.375 0.03125 0.2812 +0.375 0.03125 0.3125 +0.375 0.03125 0.3438 +0.375 0.03125 0.375 +0.375 0.03125 0.4062 +0.375 0.03125 0.4375 +0.375 0.03125 0.4688 +0.375 0.03125 0.5 +0.375 0.03125 0.5312 +0.375 0.03125 0.5625 +0.375 0.03125 0.5938 +0.375 0.03125 0.625 +0.375 0.03125 0.6562 +0.375 0.03125 0.6875 +0.375 0.03125 0.7188 +0.375 0.03125 0.75 +0.375 0.03125 0.7812 +0.375 0.03125 0.8125 +0.375 0.03125 0.8438 +0.375 0.03125 0.875 +0.375 0.03125 0.9062 +0.375 0.03125 0.9375 +0.375 0.03125 0.9688 +0.375 0.03125 1 +0.375 0.0625 0 +0.375 0.0625 0.03125 +0.375 0.0625 0.0625 +0.375 0.0625 0.09375 +0.375 0.0625 0.125 +0.375 0.0625 0.1562 +0.375 0.0625 0.1875 +0.375 0.0625 0.2188 +0.375 0.0625 0.25 +0.375 0.0625 0.2812 +0.375 0.0625 0.3125 +0.375 0.0625 0.3438 +0.375 0.0625 0.375 +0.375 0.0625 0.4062 +0.375 0.0625 0.4375 +0.375 0.0625 0.4688 +0.375 0.0625 0.5 +0.375 0.0625 0.5312 +0.375 0.0625 0.5625 +0.375 0.0625 0.5938 +0.375 0.0625 0.625 +0.375 0.0625 0.6562 +0.375 0.0625 0.6875 +0.375 0.0625 0.7188 +0.375 0.0625 0.75 +0.375 0.0625 0.7812 +0.375 0.0625 0.8125 +0.375 0.0625 0.8438 +0.375 0.0625 0.875 +0.375 0.0625 0.9062 +0.375 0.0625 0.9375 +0.375 0.0625 0.9688 +0.375 0.0625 1 +0.375 0.09375 0 +0.375 0.09375 0.03125 +0.375 0.09375 0.0625 +0.375 0.09375 0.09375 +0.375 0.09375 0.125 +0.375 0.09375 0.1562 +0.375 0.09375 0.1875 +0.375 0.09375 0.2188 +0.375 0.09375 0.25 +0.375 0.09375 0.2812 +0.375 0.09375 0.3125 +0.375 0.09375 0.3438 +0.375 0.09375 0.375 +0.375 0.09375 0.4062 +0.375 0.09375 0.4375 +0.375 0.09375 0.4688 +0.375 0.09375 0.5 +0.375 0.09375 0.5312 +0.375 0.09375 0.5625 +0.375 0.09375 0.5938 +0.375 0.09375 0.625 +0.375 0.09375 0.6562 +0.375 0.09375 0.6875 +0.375 0.09375 0.7188 +0.375 0.09375 0.75 +0.375 0.09375 0.7812 +0.375 0.09375 0.8125 +0.375 0.09375 0.8438 +0.375 0.09375 0.875 +0.375 0.09375 0.9062 +0.375 0.09375 0.9375 +0.375 0.09375 0.9688 +0.375 0.09375 1 +0.375 0.125 0 +0.375 0.125 0.03125 +0.375 0.125 0.0625 +0.375 0.125 0.09375 +0.375 0.125 0.125 +0.375 0.125 0.1562 +0.375 0.125 0.1875 +0.375 0.125 0.2188 +0.375 0.125 0.25 +0.375 0.125 0.2812 +0.375 0.125 0.3125 +0.375 0.125 0.3438 +0.375 0.125 0.375 +0.375 0.125 0.4062 +0.375 0.125 0.4375 +0.375 0.125 0.4688 +0.375 0.125 0.5 +0.375 0.125 0.5312 +0.375 0.125 0.5625 +0.375 0.125 0.5938 +0.375 0.125 0.625 +0.375 0.125 0.6562 +0.375 0.125 0.6875 +0.375 0.125 0.7188 +0.375 0.125 0.75 +0.375 0.125 0.7812 +0.375 0.125 0.8125 +0.375 0.125 0.8438 +0.375 0.125 0.875 +0.375 0.125 0.9062 +0.375 0.125 0.9375 +0.375 0.125 0.9688 +0.375 0.125 1 +0.375 0.1562 0 +0.375 0.1562 0.03125 +0.375 0.1562 0.0625 +0.375 0.1562 0.09375 +0.375 0.1562 0.125 +0.375 0.1562 0.1562 +0.375 0.1562 0.1875 +0.375 0.1562 0.2188 +0.375 0.1562 0.25 +0.375 0.1562 0.2812 +0.375 0.1562 0.3125 +0.375 0.1562 0.3438 +0.375 0.1562 0.375 +0.375 0.1562 0.4062 +0.375 0.1562 0.4375 +0.375 0.1562 0.4688 +0.375 0.1562 0.5 +0.375 0.1562 0.5312 +0.375 0.1562 0.5625 +0.375 0.1562 0.5938 +0.375 0.1562 0.625 +0.375 0.1562 0.6562 +0.375 0.1562 0.6875 +0.375 0.1562 0.7188 +0.375 0.1562 0.75 +0.375 0.1562 0.7812 +0.375 0.1562 0.8125 +0.375 0.1562 0.8438 +0.375 0.1562 0.875 +0.375 0.1562 0.9062 +0.375 0.1562 0.9375 +0.375 0.1562 0.9688 +0.375 0.1562 1 +0.375 0.1875 0 +0.375 0.1875 0.03125 +0.375 0.1875 0.0625 +0.375 0.1875 0.09375 +0.375 0.1875 0.125 +0.375 0.1875 0.1562 +0.375 0.1875 0.1875 +0.375 0.1875 0.2188 +0.375 0.1875 0.25 +0.375 0.1875 0.2812 +0.375 0.1875 0.3125 +0.375 0.1875 0.3438 +0.375 0.1875 0.375 +0.375 0.1875 0.4062 +0.375 0.1875 0.4375 +0.375 0.1875 0.4688 +0.375 0.1875 0.5 +0.375 0.1875 0.5312 +0.375 0.1875 0.5625 +0.375 0.1875 0.5938 +0.375 0.1875 0.625 +0.375 0.1875 0.6562 +0.375 0.1875 0.6875 +0.375 0.1875 0.7188 +0.375 0.1875 0.75 +0.375 0.1875 0.7812 +0.375 0.1875 0.8125 +0.375 0.1875 0.8438 +0.375 0.1875 0.875 +0.375 0.1875 0.9062 +0.375 0.1875 0.9375 +0.375 0.1875 0.9688 +0.375 0.1875 1 +0.375 0.2188 0 +0.375 0.2188 0.03125 +0.375 0.2188 0.0625 +0.375 0.2188 0.09375 +0.375 0.2188 0.125 +0.375 0.2188 0.1562 +0.375 0.2188 0.1875 +0.375 0.2188 0.2188 +0.375 0.2188 0.25 +0.375 0.2188 0.2812 +0.375 0.2188 0.3125 +0.375 0.2188 0.3438 +0.375 0.2188 0.375 +0.375 0.2188 0.4062 +0.375 0.2188 0.4375 +0.375 0.2188 0.4688 +0.375 0.2188 0.5 +0.375 0.2188 0.5312 +0.375 0.2188 0.5625 +0.375 0.2188 0.5938 +0.375 0.2188 0.625 +0.375 0.2188 0.6562 +0.375 0.2188 0.6875 +0.375 0.2188 0.7188 +0.375 0.2188 0.75 +0.375 0.2188 0.7812 +0.375 0.2188 0.8125 +0.375 0.2188 0.8438 +0.375 0.2188 0.875 +0.375 0.2188 0.9062 +0.375 0.2188 0.9375 +0.375 0.2188 0.9688 +0.375 0.2188 1 +0.375 0.25 0 +0.375 0.25 0.03125 +0.375 0.25 0.0625 +0.375 0.25 0.09375 +0.375 0.25 0.125 +0.375 0.25 0.1562 +0.375 0.25 0.1875 +0.375 0.25 0.2188 +0.375 0.25 0.25 +0.375 0.25 0.2812 +0.375 0.25 0.3125 +0.375 0.25 0.3438 +0.375 0.25 0.375 +0.375 0.25 0.4062 +0.375 0.25 0.4375 +0.375 0.25 0.4688 +0.375 0.25 0.5 +0.375 0.25 0.5312 +0.375 0.25 0.5625 +0.375 0.25 0.5938 +0.375 0.25 0.625 +0.375 0.25 0.6562 +0.375 0.25 0.6875 +0.375 0.25 0.7188 +0.375 0.25 0.75 +0.375 0.25 0.7812 +0.375 0.25 0.8125 +0.375 0.25 0.8438 +0.375 0.25 0.875 +0.375 0.25 0.9062 +0.375 0.25 0.9375 +0.375 0.25 0.9688 +0.375 0.25 1 +0.375 0.2812 0 +0.375 0.2812 0.03125 +0.375 0.2812 0.0625 +0.375 0.2812 0.09375 +0.375 0.2812 0.125 +0.375 0.2812 0.1562 +0.375 0.2812 0.1875 +0.375 0.2812 0.2188 +0.375 0.2812 0.25 +0.375 0.2812 0.2812 +0.375 0.2812 0.3125 +0.375 0.2812 0.3438 +0.375 0.2812 0.375 +0.375 0.2812 0.4062 +0.375 0.2812 0.4375 +0.375 0.2812 0.4688 +0.375 0.2812 0.5 +0.375 0.2812 0.5312 +0.375 0.2812 0.5625 +0.375 0.2812 0.5938 +0.375 0.2812 0.625 +0.375 0.2812 0.6562 +0.375 0.2812 0.6875 +0.375 0.2812 0.7188 +0.375 0.2812 0.75 +0.375 0.2812 0.7812 +0.375 0.2812 0.8125 +0.375 0.2812 0.8438 +0.375 0.2812 0.875 +0.375 0.2812 0.9062 +0.375 0.2812 0.9375 +0.375 0.2812 0.9688 +0.375 0.2812 1 +0.375 0.3125 0 +0.375 0.3125 0.03125 +0.375 0.3125 0.0625 +0.375 0.3125 0.09375 +0.375 0.3125 0.125 +0.375 0.3125 0.1562 +0.375 0.3125 0.1875 +0.375 0.3125 0.2188 +0.375 0.3125 0.25 +0.375 0.3125 0.2812 +0.375 0.3125 0.3125 +0.375 0.3125 0.3438 +0.375 0.3125 0.375 +0.375 0.3125 0.4062 +0.375 0.3125 0.4375 +0.375 0.3125 0.4688 +0.375 0.3125 0.5 +0.375 0.3125 0.5312 +0.375 0.3125 0.5625 +0.375 0.3125 0.5938 +0.375 0.3125 0.625 +0.375 0.3125 0.6562 +0.375 0.3125 0.6875 +0.375 0.3125 0.7188 +0.375 0.3125 0.75 +0.375 0.3125 0.7812 +0.375 0.3125 0.8125 +0.375 0.3125 0.8438 +0.375 0.3125 0.875 +0.375 0.3125 0.9062 +0.375 0.3125 0.9375 +0.375 0.3125 0.9688 +0.375 0.3125 1 +0.375 0.3438 0 +0.375 0.3438 0.03125 +0.375 0.3438 0.0625 +0.375 0.3438 0.09375 +0.375 0.3438 0.125 +0.375 0.3438 0.1562 +0.375 0.3438 0.1875 +0.375 0.3438 0.2188 +0.375 0.3438 0.25 +0.375 0.3438 0.2812 +0.375 0.3438 0.3125 +0.375 0.3438 0.3438 +0.375 0.3438 0.375 +0.375 0.3438 0.4062 +0.375 0.3438 0.4375 +0.375 0.3438 0.4688 +0.375 0.3438 0.5 +0.375 0.3438 0.5312 +0.375 0.3438 0.5625 +0.375 0.3438 0.5938 +0.375 0.3438 0.625 +0.375 0.3438 0.6562 +0.375 0.3438 0.6875 +0.375 0.3438 0.7188 +0.375 0.3438 0.75 +0.375 0.3438 0.7812 +0.375 0.3438 0.8125 +0.375 0.3438 0.8438 +0.375 0.3438 0.875 +0.375 0.3438 0.9062 +0.375 0.3438 0.9375 +0.375 0.3438 0.9688 +0.375 0.3438 1 +0.375 0.375 0 +0.375 0.375 0.03125 +0.375 0.375 0.0625 +0.375 0.375 0.09375 +0.375 0.375 0.125 +0.375 0.375 0.1562 +0.375 0.375 0.1875 +0.375 0.375 0.2188 +0.375 0.375 0.25 +0.375 0.375 0.2812 +0.375 0.375 0.3125 +0.375 0.375 0.3438 +0.375 0.375 0.375 +0.375 0.375 0.4062 +0.375 0.375 0.4375 +0.375 0.375 0.4688 +0.375 0.375 0.5 +0.375 0.375 0.5312 +0.375 0.375 0.5625 +0.375 0.375 0.5938 +0.375 0.375 0.625 +0.375 0.375 0.6562 +0.375 0.375 0.6875 +0.375 0.375 0.7188 +0.375 0.375 0.75 +0.375 0.375 0.7812 +0.375 0.375 0.8125 +0.375 0.375 0.8438 +0.375 0.375 0.875 +0.375 0.375 0.9062 +0.375 0.375 0.9375 +0.375 0.375 0.9688 +0.375 0.375 1 +0.375 0.4062 0 +0.375 0.4062 0.03125 +0.375 0.4062 0.0625 +0.375 0.4062 0.09375 +0.375 0.4062 0.125 +0.375 0.4062 0.1562 +0.375 0.4062 0.1875 +0.375 0.4062 0.2188 +0.375 0.4062 0.25 +0.375 0.4062 0.2812 +0.375 0.4062 0.3125 +0.375 0.4062 0.3438 +0.375 0.4062 0.375 +0.375 0.4062 0.4062 +0.375 0.4062 0.4375 +0.375 0.4062 0.4688 +0.375 0.4062 0.5 +0.375 0.4062 0.5312 +0.375 0.4062 0.5625 +0.375 0.4062 0.5938 +0.375 0.4062 0.625 +0.375 0.4062 0.6562 +0.375 0.4062 0.6875 +0.375 0.4062 0.7188 +0.375 0.4062 0.75 +0.375 0.4062 0.7812 +0.375 0.4062 0.8125 +0.375 0.4062 0.8438 +0.375 0.4062 0.875 +0.375 0.4062 0.9062 +0.375 0.4062 0.9375 +0.375 0.4062 0.9688 +0.375 0.4062 1 +0.375 0.4375 0 +0.375 0.4375 0.03125 +0.375 0.4375 0.0625 +0.375 0.4375 0.09375 +0.375 0.4375 0.125 +0.375 0.4375 0.1562 +0.375 0.4375 0.1875 +0.375 0.4375 0.2188 +0.375 0.4375 0.25 +0.375 0.4375 0.2812 +0.375 0.4375 0.3125 +0.375 0.4375 0.3438 +0.375 0.4375 0.375 +0.375 0.4375 0.4062 +0.375 0.4375 0.4375 +0.375 0.4375 0.4688 +0.375 0.4375 0.5 +0.375 0.4375 0.5312 +0.375 0.4375 0.5625 +0.375 0.4375 0.5938 +0.375 0.4375 0.625 +0.375 0.4375 0.6562 +0.375 0.4375 0.6875 +0.375 0.4375 0.7188 +0.375 0.4375 0.75 +0.375 0.4375 0.7812 +0.375 0.4375 0.8125 +0.375 0.4375 0.8438 +0.375 0.4375 0.875 +0.375 0.4375 0.9062 +0.375 0.4375 0.9375 +0.375 0.4375 0.9688 +0.375 0.4375 1 +0.375 0.4688 0 +0.375 0.4688 0.03125 +0.375 0.4688 0.0625 +0.375 0.4688 0.09375 +0.375 0.4688 0.125 +0.375 0.4688 0.1562 +0.375 0.4688 0.1875 +0.375 0.4688 0.2188 +0.375 0.4688 0.25 +0.375 0.4688 0.2812 +0.375 0.4688 0.3125 +0.375 0.4688 0.3438 +0.375 0.4688 0.375 +0.375 0.4688 0.4062 +0.375 0.4688 0.4375 +0.375 0.4688 0.4688 +0.375 0.4688 0.5 +0.375 0.4688 0.5312 +0.375 0.4688 0.5625 +0.375 0.4688 0.5938 +0.375 0.4688 0.625 +0.375 0.4688 0.6562 +0.375 0.4688 0.6875 +0.375 0.4688 0.7188 +0.375 0.4688 0.75 +0.375 0.4688 0.7812 +0.375 0.4688 0.8125 +0.375 0.4688 0.8438 +0.375 0.4688 0.875 +0.375 0.4688 0.9062 +0.375 0.4688 0.9375 +0.375 0.4688 0.9688 +0.375 0.4688 1 +0.375 0.5 0 +0.375 0.5 0.03125 +0.375 0.5 0.0625 +0.375 0.5 0.09375 +0.375 0.5 0.125 +0.375 0.5 0.1562 +0.375 0.5 0.1875 +0.375 0.5 0.2188 +0.375 0.5 0.25 +0.375 0.5 0.2812 +0.375 0.5 0.3125 +0.375 0.5 0.3438 +0.375 0.5 0.375 +0.375 0.5 0.4062 +0.375 0.5 0.4375 +0.375 0.5 0.4688 +0.375 0.5 0.5 +0.375 0.5 0.5312 +0.375 0.5 0.5625 +0.375 0.5 0.5938 +0.375 0.5 0.625 +0.375 0.5 0.6562 +0.375 0.5 0.6875 +0.375 0.5 0.7188 +0.375 0.5 0.75 +0.375 0.5 0.7812 +0.375 0.5 0.8125 +0.375 0.5 0.8438 +0.375 0.5 0.875 +0.375 0.5 0.9062 +0.375 0.5 0.9375 +0.375 0.5 0.9688 +0.375 0.5 1 +0.375 0.5312 0 +0.375 0.5312 0.03125 +0.375 0.5312 0.0625 +0.375 0.5312 0.09375 +0.375 0.5312 0.125 +0.375 0.5312 0.1562 +0.375 0.5312 0.1875 +0.375 0.5312 0.2188 +0.375 0.5312 0.25 +0.375 0.5312 0.2812 +0.375 0.5312 0.3125 +0.375 0.5312 0.3438 +0.375 0.5312 0.375 +0.375 0.5312 0.4062 +0.375 0.5312 0.4375 +0.375 0.5312 0.4688 +0.375 0.5312 0.5 +0.375 0.5312 0.5312 +0.375 0.5312 0.5625 +0.375 0.5312 0.5938 +0.375 0.5312 0.625 +0.375 0.5312 0.6562 +0.375 0.5312 0.6875 +0.375 0.5312 0.7188 +0.375 0.5312 0.75 +0.375 0.5312 0.7812 +0.375 0.5312 0.8125 +0.375 0.5312 0.8438 +0.375 0.5312 0.875 +0.375 0.5312 0.9062 +0.375 0.5312 0.9375 +0.375 0.5312 0.9688 +0.375 0.5312 1 +0.375 0.5625 0 +0.375 0.5625 0.03125 +0.375 0.5625 0.0625 +0.375 0.5625 0.09375 +0.375 0.5625 0.125 +0.375 0.5625 0.1562 +0.375 0.5625 0.1875 +0.375 0.5625 0.2188 +0.375 0.5625 0.25 +0.375 0.5625 0.2812 +0.375 0.5625 0.3125 +0.375 0.5625 0.3438 +0.375 0.5625 0.375 +0.375 0.5625 0.4062 +0.375 0.5625 0.4375 +0.375 0.5625 0.4688 +0.375 0.5625 0.5 +0.375 0.5625 0.5312 +0.375 0.5625 0.5625 +0.375 0.5625 0.5938 +0.375 0.5625 0.625 +0.375 0.5625 0.6562 +0.375 0.5625 0.6875 +0.375 0.5625 0.7188 +0.375 0.5625 0.75 +0.375 0.5625 0.7812 +0.375 0.5625 0.8125 +0.375 0.5625 0.8438 +0.375 0.5625 0.875 +0.375 0.5625 0.9062 +0.375 0.5625 0.9375 +0.375 0.5625 0.9688 +0.375 0.5625 1 +0.375 0.5938 0 +0.375 0.5938 0.03125 +0.375 0.5938 0.0625 +0.375 0.5938 0.09375 +0.375 0.5938 0.125 +0.375 0.5938 0.1562 +0.375 0.5938 0.1875 +0.375 0.5938 0.2188 +0.375 0.5938 0.25 +0.375 0.5938 0.2812 +0.375 0.5938 0.3125 +0.375 0.5938 0.3438 +0.375 0.5938 0.375 +0.375 0.5938 0.4062 +0.375 0.5938 0.4375 +0.375 0.5938 0.4688 +0.375 0.5938 0.5 +0.375 0.5938 0.5312 +0.375 0.5938 0.5625 +0.375 0.5938 0.5938 +0.375 0.5938 0.625 +0.375 0.5938 0.6562 +0.375 0.5938 0.6875 +0.375 0.5938 0.7188 +0.375 0.5938 0.75 +0.375 0.5938 0.7812 +0.375 0.5938 0.8125 +0.375 0.5938 0.8438 +0.375 0.5938 0.875 +0.375 0.5938 0.9062 +0.375 0.5938 0.9375 +0.375 0.5938 0.9688 +0.375 0.5938 1 +0.375 0.625 0 +0.375 0.625 0.03125 +0.375 0.625 0.0625 +0.375 0.625 0.09375 +0.375 0.625 0.125 +0.375 0.625 0.1562 +0.375 0.625 0.1875 +0.375 0.625 0.2188 +0.375 0.625 0.25 +0.375 0.625 0.2812 +0.375 0.625 0.3125 +0.375 0.625 0.3438 +0.375 0.625 0.375 +0.375 0.625 0.4062 +0.375 0.625 0.4375 +0.375 0.625 0.4688 +0.375 0.625 0.5 +0.375 0.625 0.5312 +0.375 0.625 0.5625 +0.375 0.625 0.5938 +0.375 0.625 0.625 +0.375 0.625 0.6562 +0.375 0.625 0.6875 +0.375 0.625 0.7188 +0.375 0.625 0.75 +0.375 0.625 0.7812 +0.375 0.625 0.8125 +0.375 0.625 0.8438 +0.375 0.625 0.875 +0.375 0.625 0.9062 +0.375 0.625 0.9375 +0.375 0.625 0.9688 +0.375 0.625 1 +0.375 0.6562 0 +0.375 0.6562 0.03125 +0.375 0.6562 0.0625 +0.375 0.6562 0.09375 +0.375 0.6562 0.125 +0.375 0.6562 0.1562 +0.375 0.6562 0.1875 +0.375 0.6562 0.2188 +0.375 0.6562 0.25 +0.375 0.6562 0.2812 +0.375 0.6562 0.3125 +0.375 0.6562 0.3438 +0.375 0.6562 0.375 +0.375 0.6562 0.4062 +0.375 0.6562 0.4375 +0.375 0.6562 0.4688 +0.375 0.6562 0.5 +0.375 0.6562 0.5312 +0.375 0.6562 0.5625 +0.375 0.6562 0.5938 +0.375 0.6562 0.625 +0.375 0.6562 0.6562 +0.375 0.6562 0.6875 +0.375 0.6562 0.7188 +0.375 0.6562 0.75 +0.375 0.6562 0.7812 +0.375 0.6562 0.8125 +0.375 0.6562 0.8438 +0.375 0.6562 0.875 +0.375 0.6562 0.9062 +0.375 0.6562 0.9375 +0.375 0.6562 0.9688 +0.375 0.6562 1 +0.375 0.6875 0 +0.375 0.6875 0.03125 +0.375 0.6875 0.0625 +0.375 0.6875 0.09375 +0.375 0.6875 0.125 +0.375 0.6875 0.1562 +0.375 0.6875 0.1875 +0.375 0.6875 0.2188 +0.375 0.6875 0.25 +0.375 0.6875 0.2812 +0.375 0.6875 0.3125 +0.375 0.6875 0.3438 +0.375 0.6875 0.375 +0.375 0.6875 0.4062 +0.375 0.6875 0.4375 +0.375 0.6875 0.4688 +0.375 0.6875 0.5 +0.375 0.6875 0.5312 +0.375 0.6875 0.5625 +0.375 0.6875 0.5938 +0.375 0.6875 0.625 +0.375 0.6875 0.6562 +0.375 0.6875 0.6875 +0.375 0.6875 0.7188 +0.375 0.6875 0.75 +0.375 0.6875 0.7812 +0.375 0.6875 0.8125 +0.375 0.6875 0.8438 +0.375 0.6875 0.875 +0.375 0.6875 0.9062 +0.375 0.6875 0.9375 +0.375 0.6875 0.9688 +0.375 0.6875 1 +0.375 0.7188 0 +0.375 0.7188 0.03125 +0.375 0.7188 0.0625 +0.375 0.7188 0.09375 +0.375 0.7188 0.125 +0.375 0.7188 0.1562 +0.375 0.7188 0.1875 +0.375 0.7188 0.2188 +0.375 0.7188 0.25 +0.375 0.7188 0.2812 +0.375 0.7188 0.3125 +0.375 0.7188 0.3438 +0.375 0.7188 0.375 +0.375 0.7188 0.4062 +0.375 0.7188 0.4375 +0.375 0.7188 0.4688 +0.375 0.7188 0.5 +0.375 0.7188 0.5312 +0.375 0.7188 0.5625 +0.375 0.7188 0.5938 +0.375 0.7188 0.625 +0.375 0.7188 0.6562 +0.375 0.7188 0.6875 +0.375 0.7188 0.7188 +0.375 0.7188 0.75 +0.375 0.7188 0.7812 +0.375 0.7188 0.8125 +0.375 0.7188 0.8438 +0.375 0.7188 0.875 +0.375 0.7188 0.9062 +0.375 0.7188 0.9375 +0.375 0.7188 0.9688 +0.375 0.7188 1 +0.375 0.75 0 +0.375 0.75 0.03125 +0.375 0.75 0.0625 +0.375 0.75 0.09375 +0.375 0.75 0.125 +0.375 0.75 0.1562 +0.375 0.75 0.1875 +0.375 0.75 0.2188 +0.375 0.75 0.25 +0.375 0.75 0.2812 +0.375 0.75 0.3125 +0.375 0.75 0.3438 +0.375 0.75 0.375 +0.375 0.75 0.4062 +0.375 0.75 0.4375 +0.375 0.75 0.4688 +0.375 0.75 0.5 +0.375 0.75 0.5312 +0.375 0.75 0.5625 +0.375 0.75 0.5938 +0.375 0.75 0.625 +0.375 0.75 0.6562 +0.375 0.75 0.6875 +0.375 0.75 0.7188 +0.375 0.75 0.75 +0.375 0.75 0.7812 +0.375 0.75 0.8125 +0.375 0.75 0.8438 +0.375 0.75 0.875 +0.375 0.75 0.9062 +0.375 0.75 0.9375 +0.375 0.75 0.9688 +0.375 0.75 1 +0.375 0.7812 0 +0.375 0.7812 0.03125 +0.375 0.7812 0.0625 +0.375 0.7812 0.09375 +0.375 0.7812 0.125 +0.375 0.7812 0.1562 +0.375 0.7812 0.1875 +0.375 0.7812 0.2188 +0.375 0.7812 0.25 +0.375 0.7812 0.2812 +0.375 0.7812 0.3125 +0.375 0.7812 0.3438 +0.375 0.7812 0.375 +0.375 0.7812 0.4062 +0.375 0.7812 0.4375 +0.375 0.7812 0.4688 +0.375 0.7812 0.5 +0.375 0.7812 0.5312 +0.375 0.7812 0.5625 +0.375 0.7812 0.5938 +0.375 0.7812 0.625 +0.375 0.7812 0.6562 +0.375 0.7812 0.6875 +0.375 0.7812 0.7188 +0.375 0.7812 0.75 +0.375 0.7812 0.7812 +0.375 0.7812 0.8125 +0.375 0.7812 0.8438 +0.375 0.7812 0.875 +0.375 0.7812 0.9062 +0.375 0.7812 0.9375 +0.375 0.7812 0.9688 +0.375 0.7812 1 +0.375 0.8125 0 +0.375 0.8125 0.03125 +0.375 0.8125 0.0625 +0.375 0.8125 0.09375 +0.375 0.8125 0.125 +0.375 0.8125 0.1562 +0.375 0.8125 0.1875 +0.375 0.8125 0.2188 +0.375 0.8125 0.25 +0.375 0.8125 0.2812 +0.375 0.8125 0.3125 +0.375 0.8125 0.3438 +0.375 0.8125 0.375 +0.375 0.8125 0.4062 +0.375 0.8125 0.4375 +0.375 0.8125 0.4688 +0.375 0.8125 0.5 +0.375 0.8125 0.5312 +0.375 0.8125 0.5625 +0.375 0.8125 0.5938 +0.375 0.8125 0.625 +0.375 0.8125 0.6562 +0.375 0.8125 0.6875 +0.375 0.8125 0.7188 +0.375 0.8125 0.75 +0.375 0.8125 0.7812 +0.375 0.8125 0.8125 +0.375 0.8125 0.8438 +0.375 0.8125 0.875 +0.375 0.8125 0.9062 +0.375 0.8125 0.9375 +0.375 0.8125 0.9688 +0.375 0.8125 1 +0.375 0.8438 0 +0.375 0.8438 0.03125 +0.375 0.8438 0.0625 +0.375 0.8438 0.09375 +0.375 0.8438 0.125 +0.375 0.8438 0.1562 +0.375 0.8438 0.1875 +0.375 0.8438 0.2188 +0.375 0.8438 0.25 +0.375 0.8438 0.2812 +0.375 0.8438 0.3125 +0.375 0.8438 0.3438 +0.375 0.8438 0.375 +0.375 0.8438 0.4062 +0.375 0.8438 0.4375 +0.375 0.8438 0.4688 +0.375 0.8438 0.5 +0.375 0.8438 0.5312 +0.375 0.8438 0.5625 +0.375 0.8438 0.5938 +0.375 0.8438 0.625 +0.375 0.8438 0.6562 +0.375 0.8438 0.6875 +0.375 0.8438 0.7188 +0.375 0.8438 0.75 +0.375 0.8438 0.7812 +0.375 0.8438 0.8125 +0.375 0.8438 0.8438 +0.375 0.8438 0.875 +0.375 0.8438 0.9062 +0.375 0.8438 0.9375 +0.375 0.8438 0.9688 +0.375 0.8438 1 +0.375 0.875 0 +0.375 0.875 0.03125 +0.375 0.875 0.0625 +0.375 0.875 0.09375 +0.375 0.875 0.125 +0.375 0.875 0.1562 +0.375 0.875 0.1875 +0.375 0.875 0.2188 +0.375 0.875 0.25 +0.375 0.875 0.2812 +0.375 0.875 0.3125 +0.375 0.875 0.3438 +0.375 0.875 0.375 +0.375 0.875 0.4062 +0.375 0.875 0.4375 +0.375 0.875 0.4688 +0.375 0.875 0.5 +0.375 0.875 0.5312 +0.375 0.875 0.5625 +0.375 0.875 0.5938 +0.375 0.875 0.625 +0.375 0.875 0.6562 +0.375 0.875 0.6875 +0.375 0.875 0.7188 +0.375 0.875 0.75 +0.375 0.875 0.7812 +0.375 0.875 0.8125 +0.375 0.875 0.8438 +0.375 0.875 0.875 +0.375 0.875 0.9062 +0.375 0.875 0.9375 +0.375 0.875 0.9688 +0.375 0.875 1 +0.375 0.9062 0 +0.375 0.9062 0.03125 +0.375 0.9062 0.0625 +0.375 0.9062 0.09375 +0.375 0.9062 0.125 +0.375 0.9062 0.1562 +0.375 0.9062 0.1875 +0.375 0.9062 0.2188 +0.375 0.9062 0.25 +0.375 0.9062 0.2812 +0.375 0.9062 0.3125 +0.375 0.9062 0.3438 +0.375 0.9062 0.375 +0.375 0.9062 0.4062 +0.375 0.9062 0.4375 +0.375 0.9062 0.4688 +0.375 0.9062 0.5 +0.375 0.9062 0.5312 +0.375 0.9062 0.5625 +0.375 0.9062 0.5938 +0.375 0.9062 0.625 +0.375 0.9062 0.6562 +0.375 0.9062 0.6875 +0.375 0.9062 0.7188 +0.375 0.9062 0.75 +0.375 0.9062 0.7812 +0.375 0.9062 0.8125 +0.375 0.9062 0.8438 +0.375 0.9062 0.875 +0.375 0.9062 0.9062 +0.375 0.9062 0.9375 +0.375 0.9062 0.9688 +0.375 0.9062 1 +0.375 0.9375 0 +0.375 0.9375 0.03125 +0.375 0.9375 0.0625 +0.375 0.9375 0.09375 +0.375 0.9375 0.125 +0.375 0.9375 0.1562 +0.375 0.9375 0.1875 +0.375 0.9375 0.2188 +0.375 0.9375 0.25 +0.375 0.9375 0.2812 +0.375 0.9375 0.3125 +0.375 0.9375 0.3438 +0.375 0.9375 0.375 +0.375 0.9375 0.4062 +0.375 0.9375 0.4375 +0.375 0.9375 0.4688 +0.375 0.9375 0.5 +0.375 0.9375 0.5312 +0.375 0.9375 0.5625 +0.375 0.9375 0.5938 +0.375 0.9375 0.625 +0.375 0.9375 0.6562 +0.375 0.9375 0.6875 +0.375 0.9375 0.7188 +0.375 0.9375 0.75 +0.375 0.9375 0.7812 +0.375 0.9375 0.8125 +0.375 0.9375 0.8438 +0.375 0.9375 0.875 +0.375 0.9375 0.9062 +0.375 0.9375 0.9375 +0.375 0.9375 0.9688 +0.375 0.9375 1 +0.375 0.9688 0 +0.375 0.9688 0.03125 +0.375 0.9688 0.0625 +0.375 0.9688 0.09375 +0.375 0.9688 0.125 +0.375 0.9688 0.1562 +0.375 0.9688 0.1875 +0.375 0.9688 0.2188 +0.375 0.9688 0.25 +0.375 0.9688 0.2812 +0.375 0.9688 0.3125 +0.375 0.9688 0.3438 +0.375 0.9688 0.375 +0.375 0.9688 0.4062 +0.375 0.9688 0.4375 +0.375 0.9688 0.4688 +0.375 0.9688 0.5 +0.375 0.9688 0.5312 +0.375 0.9688 0.5625 +0.375 0.9688 0.5938 +0.375 0.9688 0.625 +0.375 0.9688 0.6562 +0.375 0.9688 0.6875 +0.375 0.9688 0.7188 +0.375 0.9688 0.75 +0.375 0.9688 0.7812 +0.375 0.9688 0.8125 +0.375 0.9688 0.8438 +0.375 0.9688 0.875 +0.375 0.9688 0.9062 +0.375 0.9688 0.9375 +0.375 0.9688 0.9688 +0.375 0.9688 1 +0.375 1 0 +0.375 1 0.03125 +0.375 1 0.0625 +0.375 1 0.09375 +0.375 1 0.125 +0.375 1 0.1562 +0.375 1 0.1875 +0.375 1 0.2188 +0.375 1 0.25 +0.375 1 0.2812 +0.375 1 0.3125 +0.375 1 0.3438 +0.375 1 0.375 +0.375 1 0.4062 +0.375 1 0.4375 +0.375 1 0.4688 +0.375 1 0.5 +0.375 1 0.5312 +0.375 1 0.5625 +0.375 1 0.5938 +0.375 1 0.625 +0.375 1 0.6562 +0.375 1 0.6875 +0.375 1 0.7188 +0.375 1 0.75 +0.375 1 0.7812 +0.375 1 0.8125 +0.375 1 0.8438 +0.375 1 0.875 +0.375 1 0.9062 +0.375 1 0.9375 +0.375 1 0.9688 +0.375 1 1 +0.4062 0 0 +0.4062 0 0.03125 +0.4062 0 0.0625 +0.4062 0 0.09375 +0.4062 0 0.125 +0.4062 0 0.1562 +0.4062 0 0.1875 +0.4062 0 0.2188 +0.4062 0 0.25 +0.4062 0 0.2812 +0.4062 0 0.3125 +0.4062 0 0.3438 +0.4062 0 0.375 +0.4062 0 0.4062 +0.4062 0 0.4375 +0.4062 0 0.4688 +0.4062 0 0.5 +0.4062 0 0.5312 +0.4062 0 0.5625 +0.4062 0 0.5938 +0.4062 0 0.625 +0.4062 0 0.6562 +0.4062 0 0.6875 +0.4062 0 0.7188 +0.4062 0 0.75 +0.4062 0 0.7812 +0.4062 0 0.8125 +0.4062 0 0.8438 +0.4062 0 0.875 +0.4062 0 0.9062 +0.4062 0 0.9375 +0.4062 0 0.9688 +0.4062 0 1 +0.4062 0.03125 0 +0.4062 0.03125 0.03125 +0.4062 0.03125 0.0625 +0.4062 0.03125 0.09375 +0.4062 0.03125 0.125 +0.4062 0.03125 0.1562 +0.4062 0.03125 0.1875 +0.4062 0.03125 0.2188 +0.4062 0.03125 0.25 +0.4062 0.03125 0.2812 +0.4062 0.03125 0.3125 +0.4062 0.03125 0.3438 +0.4062 0.03125 0.375 +0.4062 0.03125 0.4062 +0.4062 0.03125 0.4375 +0.4062 0.03125 0.4688 +0.4062 0.03125 0.5 +0.4062 0.03125 0.5312 +0.4062 0.03125 0.5625 +0.4062 0.03125 0.5938 +0.4062 0.03125 0.625 +0.4062 0.03125 0.6562 +0.4062 0.03125 0.6875 +0.4062 0.03125 0.7188 +0.4062 0.03125 0.75 +0.4062 0.03125 0.7812 +0.4062 0.03125 0.8125 +0.4062 0.03125 0.8438 +0.4062 0.03125 0.875 +0.4062 0.03125 0.9062 +0.4062 0.03125 0.9375 +0.4062 0.03125 0.9688 +0.4062 0.03125 1 +0.4062 0.0625 0 +0.4062 0.0625 0.03125 +0.4062 0.0625 0.0625 +0.4062 0.0625 0.09375 +0.4062 0.0625 0.125 +0.4062 0.0625 0.1562 +0.4062 0.0625 0.1875 +0.4062 0.0625 0.2188 +0.4062 0.0625 0.25 +0.4062 0.0625 0.2812 +0.4062 0.0625 0.3125 +0.4062 0.0625 0.3438 +0.4062 0.0625 0.375 +0.4062 0.0625 0.4062 +0.4062 0.0625 0.4375 +0.4062 0.0625 0.4688 +0.4062 0.0625 0.5 +0.4062 0.0625 0.5312 +0.4062 0.0625 0.5625 +0.4062 0.0625 0.5938 +0.4062 0.0625 0.625 +0.4062 0.0625 0.6562 +0.4062 0.0625 0.6875 +0.4062 0.0625 0.7188 +0.4062 0.0625 0.75 +0.4062 0.0625 0.7812 +0.4062 0.0625 0.8125 +0.4062 0.0625 0.8438 +0.4062 0.0625 0.875 +0.4062 0.0625 0.9062 +0.4062 0.0625 0.9375 +0.4062 0.0625 0.9688 +0.4062 0.0625 1 +0.4062 0.09375 0 +0.4062 0.09375 0.03125 +0.4062 0.09375 0.0625 +0.4062 0.09375 0.09375 +0.4062 0.09375 0.125 +0.4062 0.09375 0.1562 +0.4062 0.09375 0.1875 +0.4062 0.09375 0.2188 +0.4062 0.09375 0.25 +0.4062 0.09375 0.2812 +0.4062 0.09375 0.3125 +0.4062 0.09375 0.3438 +0.4062 0.09375 0.375 +0.4062 0.09375 0.4062 +0.4062 0.09375 0.4375 +0.4062 0.09375 0.4688 +0.4062 0.09375 0.5 +0.4062 0.09375 0.5312 +0.4062 0.09375 0.5625 +0.4062 0.09375 0.5938 +0.4062 0.09375 0.625 +0.4062 0.09375 0.6562 +0.4062 0.09375 0.6875 +0.4062 0.09375 0.7188 +0.4062 0.09375 0.75 +0.4062 0.09375 0.7812 +0.4062 0.09375 0.8125 +0.4062 0.09375 0.8438 +0.4062 0.09375 0.875 +0.4062 0.09375 0.9062 +0.4062 0.09375 0.9375 +0.4062 0.09375 0.9688 +0.4062 0.09375 1 +0.4062 0.125 0 +0.4062 0.125 0.03125 +0.4062 0.125 0.0625 +0.4062 0.125 0.09375 +0.4062 0.125 0.125 +0.4062 0.125 0.1562 +0.4062 0.125 0.1875 +0.4062 0.125 0.2188 +0.4062 0.125 0.25 +0.4062 0.125 0.2812 +0.4062 0.125 0.3125 +0.4062 0.125 0.3438 +0.4062 0.125 0.375 +0.4062 0.125 0.4062 +0.4062 0.125 0.4375 +0.4062 0.125 0.4688 +0.4062 0.125 0.5 +0.4062 0.125 0.5312 +0.4062 0.125 0.5625 +0.4062 0.125 0.5938 +0.4062 0.125 0.625 +0.4062 0.125 0.6562 +0.4062 0.125 0.6875 +0.4062 0.125 0.7188 +0.4062 0.125 0.75 +0.4062 0.125 0.7812 +0.4062 0.125 0.8125 +0.4062 0.125 0.8438 +0.4062 0.125 0.875 +0.4062 0.125 0.9062 +0.4062 0.125 0.9375 +0.4062 0.125 0.9688 +0.4062 0.125 1 +0.4062 0.1562 0 +0.4062 0.1562 0.03125 +0.4062 0.1562 0.0625 +0.4062 0.1562 0.09375 +0.4062 0.1562 0.125 +0.4062 0.1562 0.1562 +0.4062 0.1562 0.1875 +0.4062 0.1562 0.2188 +0.4062 0.1562 0.25 +0.4062 0.1562 0.2812 +0.4062 0.1562 0.3125 +0.4062 0.1562 0.3438 +0.4062 0.1562 0.375 +0.4062 0.1562 0.4062 +0.4062 0.1562 0.4375 +0.4062 0.1562 0.4688 +0.4062 0.1562 0.5 +0.4062 0.1562 0.5312 +0.4062 0.1562 0.5625 +0.4062 0.1562 0.5938 +0.4062 0.1562 0.625 +0.4062 0.1562 0.6562 +0.4062 0.1562 0.6875 +0.4062 0.1562 0.7188 +0.4062 0.1562 0.75 +0.4062 0.1562 0.7812 +0.4062 0.1562 0.8125 +0.4062 0.1562 0.8438 +0.4062 0.1562 0.875 +0.4062 0.1562 0.9062 +0.4062 0.1562 0.9375 +0.4062 0.1562 0.9688 +0.4062 0.1562 1 +0.4062 0.1875 0 +0.4062 0.1875 0.03125 +0.4062 0.1875 0.0625 +0.4062 0.1875 0.09375 +0.4062 0.1875 0.125 +0.4062 0.1875 0.1562 +0.4062 0.1875 0.1875 +0.4062 0.1875 0.2188 +0.4062 0.1875 0.25 +0.4062 0.1875 0.2812 +0.4062 0.1875 0.3125 +0.4062 0.1875 0.3438 +0.4062 0.1875 0.375 +0.4062 0.1875 0.4062 +0.4062 0.1875 0.4375 +0.4062 0.1875 0.4688 +0.4062 0.1875 0.5 +0.4062 0.1875 0.5312 +0.4062 0.1875 0.5625 +0.4062 0.1875 0.5938 +0.4062 0.1875 0.625 +0.4062 0.1875 0.6562 +0.4062 0.1875 0.6875 +0.4062 0.1875 0.7188 +0.4062 0.1875 0.75 +0.4062 0.1875 0.7812 +0.4062 0.1875 0.8125 +0.4062 0.1875 0.8438 +0.4062 0.1875 0.875 +0.4062 0.1875 0.9062 +0.4062 0.1875 0.9375 +0.4062 0.1875 0.9688 +0.4062 0.1875 1 +0.4062 0.2188 0 +0.4062 0.2188 0.03125 +0.4062 0.2188 0.0625 +0.4062 0.2188 0.09375 +0.4062 0.2188 0.125 +0.4062 0.2188 0.1562 +0.4062 0.2188 0.1875 +0.4062 0.2188 0.2188 +0.4062 0.2188 0.25 +0.4062 0.2188 0.2812 +0.4062 0.2188 0.3125 +0.4062 0.2188 0.3438 +0.4062 0.2188 0.375 +0.4062 0.2188 0.4062 +0.4062 0.2188 0.4375 +0.4062 0.2188 0.4688 +0.4062 0.2188 0.5 +0.4062 0.2188 0.5312 +0.4062 0.2188 0.5625 +0.4062 0.2188 0.5938 +0.4062 0.2188 0.625 +0.4062 0.2188 0.6562 +0.4062 0.2188 0.6875 +0.4062 0.2188 0.7188 +0.4062 0.2188 0.75 +0.4062 0.2188 0.7812 +0.4062 0.2188 0.8125 +0.4062 0.2188 0.8438 +0.4062 0.2188 0.875 +0.4062 0.2188 0.9062 +0.4062 0.2188 0.9375 +0.4062 0.2188 0.9688 +0.4062 0.2188 1 +0.4062 0.25 0 +0.4062 0.25 0.03125 +0.4062 0.25 0.0625 +0.4062 0.25 0.09375 +0.4062 0.25 0.125 +0.4062 0.25 0.1562 +0.4062 0.25 0.1875 +0.4062 0.25 0.2188 +0.4062 0.25 0.25 +0.4062 0.25 0.2812 +0.4062 0.25 0.3125 +0.4062 0.25 0.3438 +0.4062 0.25 0.375 +0.4062 0.25 0.4062 +0.4062 0.25 0.4375 +0.4062 0.25 0.4688 +0.4062 0.25 0.5 +0.4062 0.25 0.5312 +0.4062 0.25 0.5625 +0.4062 0.25 0.5938 +0.4062 0.25 0.625 +0.4062 0.25 0.6562 +0.4062 0.25 0.6875 +0.4062 0.25 0.7188 +0.4062 0.25 0.75 +0.4062 0.25 0.7812 +0.4062 0.25 0.8125 +0.4062 0.25 0.8438 +0.4062 0.25 0.875 +0.4062 0.25 0.9062 +0.4062 0.25 0.9375 +0.4062 0.25 0.9688 +0.4062 0.25 1 +0.4062 0.2812 0 +0.4062 0.2812 0.03125 +0.4062 0.2812 0.0625 +0.4062 0.2812 0.09375 +0.4062 0.2812 0.125 +0.4062 0.2812 0.1562 +0.4062 0.2812 0.1875 +0.4062 0.2812 0.2188 +0.4062 0.2812 0.25 +0.4062 0.2812 0.2812 +0.4062 0.2812 0.3125 +0.4062 0.2812 0.3438 +0.4062 0.2812 0.375 +0.4062 0.2812 0.4062 +0.4062 0.2812 0.4375 +0.4062 0.2812 0.4688 +0.4062 0.2812 0.5 +0.4062 0.2812 0.5312 +0.4062 0.2812 0.5625 +0.4062 0.2812 0.5938 +0.4062 0.2812 0.625 +0.4062 0.2812 0.6562 +0.4062 0.2812 0.6875 +0.4062 0.2812 0.7188 +0.4062 0.2812 0.75 +0.4062 0.2812 0.7812 +0.4062 0.2812 0.8125 +0.4062 0.2812 0.8438 +0.4062 0.2812 0.875 +0.4062 0.2812 0.9062 +0.4062 0.2812 0.9375 +0.4062 0.2812 0.9688 +0.4062 0.2812 1 +0.4062 0.3125 0 +0.4062 0.3125 0.03125 +0.4062 0.3125 0.0625 +0.4062 0.3125 0.09375 +0.4062 0.3125 0.125 +0.4062 0.3125 0.1562 +0.4062 0.3125 0.1875 +0.4062 0.3125 0.2188 +0.4062 0.3125 0.25 +0.4062 0.3125 0.2812 +0.4062 0.3125 0.3125 +0.4062 0.3125 0.3438 +0.4062 0.3125 0.375 +0.4062 0.3125 0.4062 +0.4062 0.3125 0.4375 +0.4062 0.3125 0.4688 +0.4062 0.3125 0.5 +0.4062 0.3125 0.5312 +0.4062 0.3125 0.5625 +0.4062 0.3125 0.5938 +0.4062 0.3125 0.625 +0.4062 0.3125 0.6562 +0.4062 0.3125 0.6875 +0.4062 0.3125 0.7188 +0.4062 0.3125 0.75 +0.4062 0.3125 0.7812 +0.4062 0.3125 0.8125 +0.4062 0.3125 0.8438 +0.4062 0.3125 0.875 +0.4062 0.3125 0.9062 +0.4062 0.3125 0.9375 +0.4062 0.3125 0.9688 +0.4062 0.3125 1 +0.4062 0.3438 0 +0.4062 0.3438 0.03125 +0.4062 0.3438 0.0625 +0.4062 0.3438 0.09375 +0.4062 0.3438 0.125 +0.4062 0.3438 0.1562 +0.4062 0.3438 0.1875 +0.4062 0.3438 0.2188 +0.4062 0.3438 0.25 +0.4062 0.3438 0.2812 +0.4062 0.3438 0.3125 +0.4062 0.3438 0.3438 +0.4062 0.3438 0.375 +0.4062 0.3438 0.4062 +0.4062 0.3438 0.4375 +0.4062 0.3438 0.4688 +0.4062 0.3438 0.5 +0.4062 0.3438 0.5312 +0.4062 0.3438 0.5625 +0.4062 0.3438 0.5938 +0.4062 0.3438 0.625 +0.4062 0.3438 0.6562 +0.4062 0.3438 0.6875 +0.4062 0.3438 0.7188 +0.4062 0.3438 0.75 +0.4062 0.3438 0.7812 +0.4062 0.3438 0.8125 +0.4062 0.3438 0.8438 +0.4062 0.3438 0.875 +0.4062 0.3438 0.9062 +0.4062 0.3438 0.9375 +0.4062 0.3438 0.9688 +0.4062 0.3438 1 +0.4062 0.375 0 +0.4062 0.375 0.03125 +0.4062 0.375 0.0625 +0.4062 0.375 0.09375 +0.4062 0.375 0.125 +0.4062 0.375 0.1562 +0.4062 0.375 0.1875 +0.4062 0.375 0.2188 +0.4062 0.375 0.25 +0.4062 0.375 0.2812 +0.4062 0.375 0.3125 +0.4062 0.375 0.3438 +0.4062 0.375 0.375 +0.4062 0.375 0.4062 +0.4062 0.375 0.4375 +0.4062 0.375 0.4688 +0.4062 0.375 0.5 +0.4062 0.375 0.5312 +0.4062 0.375 0.5625 +0.4062 0.375 0.5938 +0.4062 0.375 0.625 +0.4062 0.375 0.6562 +0.4062 0.375 0.6875 +0.4062 0.375 0.7188 +0.4062 0.375 0.75 +0.4062 0.375 0.7812 +0.4062 0.375 0.8125 +0.4062 0.375 0.8438 +0.4062 0.375 0.875 +0.4062 0.375 0.9062 +0.4062 0.375 0.9375 +0.4062 0.375 0.9688 +0.4062 0.375 1 +0.4062 0.4062 0 +0.4062 0.4062 0.03125 +0.4062 0.4062 0.0625 +0.4062 0.4062 0.09375 +0.4062 0.4062 0.125 +0.4062 0.4062 0.1562 +0.4062 0.4062 0.1875 +0.4062 0.4062 0.2188 +0.4062 0.4062 0.25 +0.4062 0.4062 0.2812 +0.4062 0.4062 0.3125 +0.4062 0.4062 0.3438 +0.4062 0.4062 0.375 +0.4062 0.4062 0.4062 +0.4062 0.4062 0.4375 +0.4062 0.4062 0.4688 +0.4062 0.4062 0.5 +0.4062 0.4062 0.5312 +0.4062 0.4062 0.5625 +0.4062 0.4062 0.5938 +0.4062 0.4062 0.625 +0.4062 0.4062 0.6562 +0.4062 0.4062 0.6875 +0.4062 0.4062 0.7188 +0.4062 0.4062 0.75 +0.4062 0.4062 0.7812 +0.4062 0.4062 0.8125 +0.4062 0.4062 0.8438 +0.4062 0.4062 0.875 +0.4062 0.4062 0.9062 +0.4062 0.4062 0.9375 +0.4062 0.4062 0.9688 +0.4062 0.4062 1 +0.4062 0.4375 0 +0.4062 0.4375 0.03125 +0.4062 0.4375 0.0625 +0.4062 0.4375 0.09375 +0.4062 0.4375 0.125 +0.4062 0.4375 0.1562 +0.4062 0.4375 0.1875 +0.4062 0.4375 0.2188 +0.4062 0.4375 0.25 +0.4062 0.4375 0.2812 +0.4062 0.4375 0.3125 +0.4062 0.4375 0.3438 +0.4062 0.4375 0.375 +0.4062 0.4375 0.4062 +0.4062 0.4375 0.4375 +0.4062 0.4375 0.4688 +0.4062 0.4375 0.5 +0.4062 0.4375 0.5312 +0.4062 0.4375 0.5625 +0.4062 0.4375 0.5938 +0.4062 0.4375 0.625 +0.4062 0.4375 0.6562 +0.4062 0.4375 0.6875 +0.4062 0.4375 0.7188 +0.4062 0.4375 0.75 +0.4062 0.4375 0.7812 +0.4062 0.4375 0.8125 +0.4062 0.4375 0.8438 +0.4062 0.4375 0.875 +0.4062 0.4375 0.9062 +0.4062 0.4375 0.9375 +0.4062 0.4375 0.9688 +0.4062 0.4375 1 +0.4062 0.4688 0 +0.4062 0.4688 0.03125 +0.4062 0.4688 0.0625 +0.4062 0.4688 0.09375 +0.4062 0.4688 0.125 +0.4062 0.4688 0.1562 +0.4062 0.4688 0.1875 +0.4062 0.4688 0.2188 +0.4062 0.4688 0.25 +0.4062 0.4688 0.2812 +0.4062 0.4688 0.3125 +0.4062 0.4688 0.3438 +0.4062 0.4688 0.375 +0.4062 0.4688 0.4062 +0.4062 0.4688 0.4375 +0.4062 0.4688 0.4688 +0.4062 0.4688 0.5 +0.4062 0.4688 0.5312 +0.4062 0.4688 0.5625 +0.4062 0.4688 0.5938 +0.4062 0.4688 0.625 +0.4062 0.4688 0.6562 +0.4062 0.4688 0.6875 +0.4062 0.4688 0.7188 +0.4062 0.4688 0.75 +0.4062 0.4688 0.7812 +0.4062 0.4688 0.8125 +0.4062 0.4688 0.8438 +0.4062 0.4688 0.875 +0.4062 0.4688 0.9062 +0.4062 0.4688 0.9375 +0.4062 0.4688 0.9688 +0.4062 0.4688 1 +0.4062 0.5 0 +0.4062 0.5 0.03125 +0.4062 0.5 0.0625 +0.4062 0.5 0.09375 +0.4062 0.5 0.125 +0.4062 0.5 0.1562 +0.4062 0.5 0.1875 +0.4062 0.5 0.2188 +0.4062 0.5 0.25 +0.4062 0.5 0.2812 +0.4062 0.5 0.3125 +0.4062 0.5 0.3438 +0.4062 0.5 0.375 +0.4062 0.5 0.4062 +0.4062 0.5 0.4375 +0.4062 0.5 0.4688 +0.4062 0.5 0.5 +0.4062 0.5 0.5312 +0.4062 0.5 0.5625 +0.4062 0.5 0.5938 +0.4062 0.5 0.625 +0.4062 0.5 0.6562 +0.4062 0.5 0.6875 +0.4062 0.5 0.7188 +0.4062 0.5 0.75 +0.4062 0.5 0.7812 +0.4062 0.5 0.8125 +0.4062 0.5 0.8438 +0.4062 0.5 0.875 +0.4062 0.5 0.9062 +0.4062 0.5 0.9375 +0.4062 0.5 0.9688 +0.4062 0.5 1 +0.4062 0.5312 0 +0.4062 0.5312 0.03125 +0.4062 0.5312 0.0625 +0.4062 0.5312 0.09375 +0.4062 0.5312 0.125 +0.4062 0.5312 0.1562 +0.4062 0.5312 0.1875 +0.4062 0.5312 0.2188 +0.4062 0.5312 0.25 +0.4062 0.5312 0.2812 +0.4062 0.5312 0.3125 +0.4062 0.5312 0.3438 +0.4062 0.5312 0.375 +0.4062 0.5312 0.4062 +0.4062 0.5312 0.4375 +0.4062 0.5312 0.4688 +0.4062 0.5312 0.5 +0.4062 0.5312 0.5312 +0.4062 0.5312 0.5625 +0.4062 0.5312 0.5938 +0.4062 0.5312 0.625 +0.4062 0.5312 0.6562 +0.4062 0.5312 0.6875 +0.4062 0.5312 0.7188 +0.4062 0.5312 0.75 +0.4062 0.5312 0.7812 +0.4062 0.5312 0.8125 +0.4062 0.5312 0.8438 +0.4062 0.5312 0.875 +0.4062 0.5312 0.9062 +0.4062 0.5312 0.9375 +0.4062 0.5312 0.9688 +0.4062 0.5312 1 +0.4062 0.5625 0 +0.4062 0.5625 0.03125 +0.4062 0.5625 0.0625 +0.4062 0.5625 0.09375 +0.4062 0.5625 0.125 +0.4062 0.5625 0.1562 +0.4062 0.5625 0.1875 +0.4062 0.5625 0.2188 +0.4062 0.5625 0.25 +0.4062 0.5625 0.2812 +0.4062 0.5625 0.3125 +0.4062 0.5625 0.3438 +0.4062 0.5625 0.375 +0.4062 0.5625 0.4062 +0.4062 0.5625 0.4375 +0.4062 0.5625 0.4688 +0.4062 0.5625 0.5 +0.4062 0.5625 0.5312 +0.4062 0.5625 0.5625 +0.4062 0.5625 0.5938 +0.4062 0.5625 0.625 +0.4062 0.5625 0.6562 +0.4062 0.5625 0.6875 +0.4062 0.5625 0.7188 +0.4062 0.5625 0.75 +0.4062 0.5625 0.7812 +0.4062 0.5625 0.8125 +0.4062 0.5625 0.8438 +0.4062 0.5625 0.875 +0.4062 0.5625 0.9062 +0.4062 0.5625 0.9375 +0.4062 0.5625 0.9688 +0.4062 0.5625 1 +0.4062 0.5938 0 +0.4062 0.5938 0.03125 +0.4062 0.5938 0.0625 +0.4062 0.5938 0.09375 +0.4062 0.5938 0.125 +0.4062 0.5938 0.1562 +0.4062 0.5938 0.1875 +0.4062 0.5938 0.2188 +0.4062 0.5938 0.25 +0.4062 0.5938 0.2812 +0.4062 0.5938 0.3125 +0.4062 0.5938 0.3438 +0.4062 0.5938 0.375 +0.4062 0.5938 0.4062 +0.4062 0.5938 0.4375 +0.4062 0.5938 0.4688 +0.4062 0.5938 0.5 +0.4062 0.5938 0.5312 +0.4062 0.5938 0.5625 +0.4062 0.5938 0.5938 +0.4062 0.5938 0.625 +0.4062 0.5938 0.6562 +0.4062 0.5938 0.6875 +0.4062 0.5938 0.7188 +0.4062 0.5938 0.75 +0.4062 0.5938 0.7812 +0.4062 0.5938 0.8125 +0.4062 0.5938 0.8438 +0.4062 0.5938 0.875 +0.4062 0.5938 0.9062 +0.4062 0.5938 0.9375 +0.4062 0.5938 0.9688 +0.4062 0.5938 1 +0.4062 0.625 0 +0.4062 0.625 0.03125 +0.4062 0.625 0.0625 +0.4062 0.625 0.09375 +0.4062 0.625 0.125 +0.4062 0.625 0.1562 +0.4062 0.625 0.1875 +0.4062 0.625 0.2188 +0.4062 0.625 0.25 +0.4062 0.625 0.2812 +0.4062 0.625 0.3125 +0.4062 0.625 0.3438 +0.4062 0.625 0.375 +0.4062 0.625 0.4062 +0.4062 0.625 0.4375 +0.4062 0.625 0.4688 +0.4062 0.625 0.5 +0.4062 0.625 0.5312 +0.4062 0.625 0.5625 +0.4062 0.625 0.5938 +0.4062 0.625 0.625 +0.4062 0.625 0.6562 +0.4062 0.625 0.6875 +0.4062 0.625 0.7188 +0.4062 0.625 0.75 +0.4062 0.625 0.7812 +0.4062 0.625 0.8125 +0.4062 0.625 0.8438 +0.4062 0.625 0.875 +0.4062 0.625 0.9062 +0.4062 0.625 0.9375 +0.4062 0.625 0.9688 +0.4062 0.625 1 +0.4062 0.6562 0 +0.4062 0.6562 0.03125 +0.4062 0.6562 0.0625 +0.4062 0.6562 0.09375 +0.4062 0.6562 0.125 +0.4062 0.6562 0.1562 +0.4062 0.6562 0.1875 +0.4062 0.6562 0.2188 +0.4062 0.6562 0.25 +0.4062 0.6562 0.2812 +0.4062 0.6562 0.3125 +0.4062 0.6562 0.3438 +0.4062 0.6562 0.375 +0.4062 0.6562 0.4062 +0.4062 0.6562 0.4375 +0.4062 0.6562 0.4688 +0.4062 0.6562 0.5 +0.4062 0.6562 0.5312 +0.4062 0.6562 0.5625 +0.4062 0.6562 0.5938 +0.4062 0.6562 0.625 +0.4062 0.6562 0.6562 +0.4062 0.6562 0.6875 +0.4062 0.6562 0.7188 +0.4062 0.6562 0.75 +0.4062 0.6562 0.7812 +0.4062 0.6562 0.8125 +0.4062 0.6562 0.8438 +0.4062 0.6562 0.875 +0.4062 0.6562 0.9062 +0.4062 0.6562 0.9375 +0.4062 0.6562 0.9688 +0.4062 0.6562 1 +0.4062 0.6875 0 +0.4062 0.6875 0.03125 +0.4062 0.6875 0.0625 +0.4062 0.6875 0.09375 +0.4062 0.6875 0.125 +0.4062 0.6875 0.1562 +0.4062 0.6875 0.1875 +0.4062 0.6875 0.2188 +0.4062 0.6875 0.25 +0.4062 0.6875 0.2812 +0.4062 0.6875 0.3125 +0.4062 0.6875 0.3438 +0.4062 0.6875 0.375 +0.4062 0.6875 0.4062 +0.4062 0.6875 0.4375 +0.4062 0.6875 0.4688 +0.4062 0.6875 0.5 +0.4062 0.6875 0.5312 +0.4062 0.6875 0.5625 +0.4062 0.6875 0.5938 +0.4062 0.6875 0.625 +0.4062 0.6875 0.6562 +0.4062 0.6875 0.6875 +0.4062 0.6875 0.7188 +0.4062 0.6875 0.75 +0.4062 0.6875 0.7812 +0.4062 0.6875 0.8125 +0.4062 0.6875 0.8438 +0.4062 0.6875 0.875 +0.4062 0.6875 0.9062 +0.4062 0.6875 0.9375 +0.4062 0.6875 0.9688 +0.4062 0.6875 1 +0.4062 0.7188 0 +0.4062 0.7188 0.03125 +0.4062 0.7188 0.0625 +0.4062 0.7188 0.09375 +0.4062 0.7188 0.125 +0.4062 0.7188 0.1562 +0.4062 0.7188 0.1875 +0.4062 0.7188 0.2188 +0.4062 0.7188 0.25 +0.4062 0.7188 0.2812 +0.4062 0.7188 0.3125 +0.4062 0.7188 0.3438 +0.4062 0.7188 0.375 +0.4062 0.7188 0.4062 +0.4062 0.7188 0.4375 +0.4062 0.7188 0.4688 +0.4062 0.7188 0.5 +0.4062 0.7188 0.5312 +0.4062 0.7188 0.5625 +0.4062 0.7188 0.5938 +0.4062 0.7188 0.625 +0.4062 0.7188 0.6562 +0.4062 0.7188 0.6875 +0.4062 0.7188 0.7188 +0.4062 0.7188 0.75 +0.4062 0.7188 0.7812 +0.4062 0.7188 0.8125 +0.4062 0.7188 0.8438 +0.4062 0.7188 0.875 +0.4062 0.7188 0.9062 +0.4062 0.7188 0.9375 +0.4062 0.7188 0.9688 +0.4062 0.7188 1 +0.4062 0.75 0 +0.4062 0.75 0.03125 +0.4062 0.75 0.0625 +0.4062 0.75 0.09375 +0.4062 0.75 0.125 +0.4062 0.75 0.1562 +0.4062 0.75 0.1875 +0.4062 0.75 0.2188 +0.4062 0.75 0.25 +0.4062 0.75 0.2812 +0.4062 0.75 0.3125 +0.4062 0.75 0.3438 +0.4062 0.75 0.375 +0.4062 0.75 0.4062 +0.4062 0.75 0.4375 +0.4062 0.75 0.4688 +0.4062 0.75 0.5 +0.4062 0.75 0.5312 +0.4062 0.75 0.5625 +0.4062 0.75 0.5938 +0.4062 0.75 0.625 +0.4062 0.75 0.6562 +0.4062 0.75 0.6875 +0.4062 0.75 0.7188 +0.4062 0.75 0.75 +0.4062 0.75 0.7812 +0.4062 0.75 0.8125 +0.4062 0.75 0.8438 +0.4062 0.75 0.875 +0.4062 0.75 0.9062 +0.4062 0.75 0.9375 +0.4062 0.75 0.9688 +0.4062 0.75 1 +0.4062 0.7812 0 +0.4062 0.7812 0.03125 +0.4062 0.7812 0.0625 +0.4062 0.7812 0.09375 +0.4062 0.7812 0.125 +0.4062 0.7812 0.1562 +0.4062 0.7812 0.1875 +0.4062 0.7812 0.2188 +0.4062 0.7812 0.25 +0.4062 0.7812 0.2812 +0.4062 0.7812 0.3125 +0.4062 0.7812 0.3438 +0.4062 0.7812 0.375 +0.4062 0.7812 0.4062 +0.4062 0.7812 0.4375 +0.4062 0.7812 0.4688 +0.4062 0.7812 0.5 +0.4062 0.7812 0.5312 +0.4062 0.7812 0.5625 +0.4062 0.7812 0.5938 +0.4062 0.7812 0.625 +0.4062 0.7812 0.6562 +0.4062 0.7812 0.6875 +0.4062 0.7812 0.7188 +0.4062 0.7812 0.75 +0.4062 0.7812 0.7812 +0.4062 0.7812 0.8125 +0.4062 0.7812 0.8438 +0.4062 0.7812 0.875 +0.4062 0.7812 0.9062 +0.4062 0.7812 0.9375 +0.4062 0.7812 0.9688 +0.4062 0.7812 1 +0.4062 0.8125 0 +0.4062 0.8125 0.03125 +0.4062 0.8125 0.0625 +0.4062 0.8125 0.09375 +0.4062 0.8125 0.125 +0.4062 0.8125 0.1562 +0.4062 0.8125 0.1875 +0.4062 0.8125 0.2188 +0.4062 0.8125 0.25 +0.4062 0.8125 0.2812 +0.4062 0.8125 0.3125 +0.4062 0.8125 0.3438 +0.4062 0.8125 0.375 +0.4062 0.8125 0.4062 +0.4062 0.8125 0.4375 +0.4062 0.8125 0.4688 +0.4062 0.8125 0.5 +0.4062 0.8125 0.5312 +0.4062 0.8125 0.5625 +0.4062 0.8125 0.5938 +0.4062 0.8125 0.625 +0.4062 0.8125 0.6562 +0.4062 0.8125 0.6875 +0.4062 0.8125 0.7188 +0.4062 0.8125 0.75 +0.4062 0.8125 0.7812 +0.4062 0.8125 0.8125 +0.4062 0.8125 0.8438 +0.4062 0.8125 0.875 +0.4062 0.8125 0.9062 +0.4062 0.8125 0.9375 +0.4062 0.8125 0.9688 +0.4062 0.8125 1 +0.4062 0.8438 0 +0.4062 0.8438 0.03125 +0.4062 0.8438 0.0625 +0.4062 0.8438 0.09375 +0.4062 0.8438 0.125 +0.4062 0.8438 0.1562 +0.4062 0.8438 0.1875 +0.4062 0.8438 0.2188 +0.4062 0.8438 0.25 +0.4062 0.8438 0.2812 +0.4062 0.8438 0.3125 +0.4062 0.8438 0.3438 +0.4062 0.8438 0.375 +0.4062 0.8438 0.4062 +0.4062 0.8438 0.4375 +0.4062 0.8438 0.4688 +0.4062 0.8438 0.5 +0.4062 0.8438 0.5312 +0.4062 0.8438 0.5625 +0.4062 0.8438 0.5938 +0.4062 0.8438 0.625 +0.4062 0.8438 0.6562 +0.4062 0.8438 0.6875 +0.4062 0.8438 0.7188 +0.4062 0.8438 0.75 +0.4062 0.8438 0.7812 +0.4062 0.8438 0.8125 +0.4062 0.8438 0.8438 +0.4062 0.8438 0.875 +0.4062 0.8438 0.9062 +0.4062 0.8438 0.9375 +0.4062 0.8438 0.9688 +0.4062 0.8438 1 +0.4062 0.875 0 +0.4062 0.875 0.03125 +0.4062 0.875 0.0625 +0.4062 0.875 0.09375 +0.4062 0.875 0.125 +0.4062 0.875 0.1562 +0.4062 0.875 0.1875 +0.4062 0.875 0.2188 +0.4062 0.875 0.25 +0.4062 0.875 0.2812 +0.4062 0.875 0.3125 +0.4062 0.875 0.3438 +0.4062 0.875 0.375 +0.4062 0.875 0.4062 +0.4062 0.875 0.4375 +0.4062 0.875 0.4688 +0.4062 0.875 0.5 +0.4062 0.875 0.5312 +0.4062 0.875 0.5625 +0.4062 0.875 0.5938 +0.4062 0.875 0.625 +0.4062 0.875 0.6562 +0.4062 0.875 0.6875 +0.4062 0.875 0.7188 +0.4062 0.875 0.75 +0.4062 0.875 0.7812 +0.4062 0.875 0.8125 +0.4062 0.875 0.8438 +0.4062 0.875 0.875 +0.4062 0.875 0.9062 +0.4062 0.875 0.9375 +0.4062 0.875 0.9688 +0.4062 0.875 1 +0.4062 0.9062 0 +0.4062 0.9062 0.03125 +0.4062 0.9062 0.0625 +0.4062 0.9062 0.09375 +0.4062 0.9062 0.125 +0.4062 0.9062 0.1562 +0.4062 0.9062 0.1875 +0.4062 0.9062 0.2188 +0.4062 0.9062 0.25 +0.4062 0.9062 0.2812 +0.4062 0.9062 0.3125 +0.4062 0.9062 0.3438 +0.4062 0.9062 0.375 +0.4062 0.9062 0.4062 +0.4062 0.9062 0.4375 +0.4062 0.9062 0.4688 +0.4062 0.9062 0.5 +0.4062 0.9062 0.5312 +0.4062 0.9062 0.5625 +0.4062 0.9062 0.5938 +0.4062 0.9062 0.625 +0.4062 0.9062 0.6562 +0.4062 0.9062 0.6875 +0.4062 0.9062 0.7188 +0.4062 0.9062 0.75 +0.4062 0.9062 0.7812 +0.4062 0.9062 0.8125 +0.4062 0.9062 0.8438 +0.4062 0.9062 0.875 +0.4062 0.9062 0.9062 +0.4062 0.9062 0.9375 +0.4062 0.9062 0.9688 +0.4062 0.9062 1 +0.4062 0.9375 0 +0.4062 0.9375 0.03125 +0.4062 0.9375 0.0625 +0.4062 0.9375 0.09375 +0.4062 0.9375 0.125 +0.4062 0.9375 0.1562 +0.4062 0.9375 0.1875 +0.4062 0.9375 0.2188 +0.4062 0.9375 0.25 +0.4062 0.9375 0.2812 +0.4062 0.9375 0.3125 +0.4062 0.9375 0.3438 +0.4062 0.9375 0.375 +0.4062 0.9375 0.4062 +0.4062 0.9375 0.4375 +0.4062 0.9375 0.4688 +0.4062 0.9375 0.5 +0.4062 0.9375 0.5312 +0.4062 0.9375 0.5625 +0.4062 0.9375 0.5938 +0.4062 0.9375 0.625 +0.4062 0.9375 0.6562 +0.4062 0.9375 0.6875 +0.4062 0.9375 0.7188 +0.4062 0.9375 0.75 +0.4062 0.9375 0.7812 +0.4062 0.9375 0.8125 +0.4062 0.9375 0.8438 +0.4062 0.9375 0.875 +0.4062 0.9375 0.9062 +0.4062 0.9375 0.9375 +0.4062 0.9375 0.9688 +0.4062 0.9375 1 +0.4062 0.9688 0 +0.4062 0.9688 0.03125 +0.4062 0.9688 0.0625 +0.4062 0.9688 0.09375 +0.4062 0.9688 0.125 +0.4062 0.9688 0.1562 +0.4062 0.9688 0.1875 +0.4062 0.9688 0.2188 +0.4062 0.9688 0.25 +0.4062 0.9688 0.2812 +0.4062 0.9688 0.3125 +0.4062 0.9688 0.3438 +0.4062 0.9688 0.375 +0.4062 0.9688 0.4062 +0.4062 0.9688 0.4375 +0.4062 0.9688 0.4688 +0.4062 0.9688 0.5 +0.4062 0.9688 0.5312 +0.4062 0.9688 0.5625 +0.4062 0.9688 0.5938 +0.4062 0.9688 0.625 +0.4062 0.9688 0.6562 +0.4062 0.9688 0.6875 +0.4062 0.9688 0.7188 +0.4062 0.9688 0.75 +0.4062 0.9688 0.7812 +0.4062 0.9688 0.8125 +0.4062 0.9688 0.8438 +0.4062 0.9688 0.875 +0.4062 0.9688 0.9062 +0.4062 0.9688 0.9375 +0.4062 0.9688 0.9688 +0.4062 0.9688 1 +0.4062 1 0 +0.4062 1 0.03125 +0.4062 1 0.0625 +0.4062 1 0.09375 +0.4062 1 0.125 +0.4062 1 0.1562 +0.4062 1 0.1875 +0.4062 1 0.2188 +0.4062 1 0.25 +0.4062 1 0.2812 +0.4062 1 0.3125 +0.4062 1 0.3438 +0.4062 1 0.375 +0.4062 1 0.4062 +0.4062 1 0.4375 +0.4062 1 0.4688 +0.4062 1 0.5 +0.4062 1 0.5312 +0.4062 1 0.5625 +0.4062 1 0.5938 +0.4062 1 0.625 +0.4062 1 0.6562 +0.4062 1 0.6875 +0.4062 1 0.7188 +0.4062 1 0.75 +0.4062 1 0.7812 +0.4062 1 0.8125 +0.4062 1 0.8438 +0.4062 1 0.875 +0.4062 1 0.9062 +0.4062 1 0.9375 +0.4062 1 0.9688 +0.4062 1 1 +0.4375 0 0 +0.4375 0 0.03125 +0.4375 0 0.0625 +0.4375 0 0.09375 +0.4375 0 0.125 +0.4375 0 0.1562 +0.4375 0 0.1875 +0.4375 0 0.2188 +0.4375 0 0.25 +0.4375 0 0.2812 +0.4375 0 0.3125 +0.4375 0 0.3438 +0.4375 0 0.375 +0.4375 0 0.4062 +0.4375 0 0.4375 +0.4375 0 0.4688 +0.4375 0 0.5 +0.4375 0 0.5312 +0.4375 0 0.5625 +0.4375 0 0.5938 +0.4375 0 0.625 +0.4375 0 0.6562 +0.4375 0 0.6875 +0.4375 0 0.7188 +0.4375 0 0.75 +0.4375 0 0.7812 +0.4375 0 0.8125 +0.4375 0 0.8438 +0.4375 0 0.875 +0.4375 0 0.9062 +0.4375 0 0.9375 +0.4375 0 0.9688 +0.4375 0 1 +0.4375 0.03125 0 +0.4375 0.03125 0.03125 +0.4375 0.03125 0.0625 +0.4375 0.03125 0.09375 +0.4375 0.03125 0.125 +0.4375 0.03125 0.1562 +0.4375 0.03125 0.1875 +0.4375 0.03125 0.2188 +0.4375 0.03125 0.25 +0.4375 0.03125 0.2812 +0.4375 0.03125 0.3125 +0.4375 0.03125 0.3438 +0.4375 0.03125 0.375 +0.4375 0.03125 0.4062 +0.4375 0.03125 0.4375 +0.4375 0.03125 0.4688 +0.4375 0.03125 0.5 +0.4375 0.03125 0.5312 +0.4375 0.03125 0.5625 +0.4375 0.03125 0.5938 +0.4375 0.03125 0.625 +0.4375 0.03125 0.6562 +0.4375 0.03125 0.6875 +0.4375 0.03125 0.7188 +0.4375 0.03125 0.75 +0.4375 0.03125 0.7812 +0.4375 0.03125 0.8125 +0.4375 0.03125 0.8438 +0.4375 0.03125 0.875 +0.4375 0.03125 0.9062 +0.4375 0.03125 0.9375 +0.4375 0.03125 0.9688 +0.4375 0.03125 1 +0.4375 0.0625 0 +0.4375 0.0625 0.03125 +0.4375 0.0625 0.0625 +0.4375 0.0625 0.09375 +0.4375 0.0625 0.125 +0.4375 0.0625 0.1562 +0.4375 0.0625 0.1875 +0.4375 0.0625 0.2188 +0.4375 0.0625 0.25 +0.4375 0.0625 0.2812 +0.4375 0.0625 0.3125 +0.4375 0.0625 0.3438 +0.4375 0.0625 0.375 +0.4375 0.0625 0.4062 +0.4375 0.0625 0.4375 +0.4375 0.0625 0.4688 +0.4375 0.0625 0.5 +0.4375 0.0625 0.5312 +0.4375 0.0625 0.5625 +0.4375 0.0625 0.5938 +0.4375 0.0625 0.625 +0.4375 0.0625 0.6562 +0.4375 0.0625 0.6875 +0.4375 0.0625 0.7188 +0.4375 0.0625 0.75 +0.4375 0.0625 0.7812 +0.4375 0.0625 0.8125 +0.4375 0.0625 0.8438 +0.4375 0.0625 0.875 +0.4375 0.0625 0.9062 +0.4375 0.0625 0.9375 +0.4375 0.0625 0.9688 +0.4375 0.0625 1 +0.4375 0.09375 0 +0.4375 0.09375 0.03125 +0.4375 0.09375 0.0625 +0.4375 0.09375 0.09375 +0.4375 0.09375 0.125 +0.4375 0.09375 0.1562 +0.4375 0.09375 0.1875 +0.4375 0.09375 0.2188 +0.4375 0.09375 0.25 +0.4375 0.09375 0.2812 +0.4375 0.09375 0.3125 +0.4375 0.09375 0.3438 +0.4375 0.09375 0.375 +0.4375 0.09375 0.4062 +0.4375 0.09375 0.4375 +0.4375 0.09375 0.4688 +0.4375 0.09375 0.5 +0.4375 0.09375 0.5312 +0.4375 0.09375 0.5625 +0.4375 0.09375 0.5938 +0.4375 0.09375 0.625 +0.4375 0.09375 0.6562 +0.4375 0.09375 0.6875 +0.4375 0.09375 0.7188 +0.4375 0.09375 0.75 +0.4375 0.09375 0.7812 +0.4375 0.09375 0.8125 +0.4375 0.09375 0.8438 +0.4375 0.09375 0.875 +0.4375 0.09375 0.9062 +0.4375 0.09375 0.9375 +0.4375 0.09375 0.9688 +0.4375 0.09375 1 +0.4375 0.125 0 +0.4375 0.125 0.03125 +0.4375 0.125 0.0625 +0.4375 0.125 0.09375 +0.4375 0.125 0.125 +0.4375 0.125 0.1562 +0.4375 0.125 0.1875 +0.4375 0.125 0.2188 +0.4375 0.125 0.25 +0.4375 0.125 0.2812 +0.4375 0.125 0.3125 +0.4375 0.125 0.3438 +0.4375 0.125 0.375 +0.4375 0.125 0.4062 +0.4375 0.125 0.4375 +0.4375 0.125 0.4688 +0.4375 0.125 0.5 +0.4375 0.125 0.5312 +0.4375 0.125 0.5625 +0.4375 0.125 0.5938 +0.4375 0.125 0.625 +0.4375 0.125 0.6562 +0.4375 0.125 0.6875 +0.4375 0.125 0.7188 +0.4375 0.125 0.75 +0.4375 0.125 0.7812 +0.4375 0.125 0.8125 +0.4375 0.125 0.8438 +0.4375 0.125 0.875 +0.4375 0.125 0.9062 +0.4375 0.125 0.9375 +0.4375 0.125 0.9688 +0.4375 0.125 1 +0.4375 0.1562 0 +0.4375 0.1562 0.03125 +0.4375 0.1562 0.0625 +0.4375 0.1562 0.09375 +0.4375 0.1562 0.125 +0.4375 0.1562 0.1562 +0.4375 0.1562 0.1875 +0.4375 0.1562 0.2188 +0.4375 0.1562 0.25 +0.4375 0.1562 0.2812 +0.4375 0.1562 0.3125 +0.4375 0.1562 0.3438 +0.4375 0.1562 0.375 +0.4375 0.1562 0.4062 +0.4375 0.1562 0.4375 +0.4375 0.1562 0.4688 +0.4375 0.1562 0.5 +0.4375 0.1562 0.5312 +0.4375 0.1562 0.5625 +0.4375 0.1562 0.5938 +0.4375 0.1562 0.625 +0.4375 0.1562 0.6562 +0.4375 0.1562 0.6875 +0.4375 0.1562 0.7188 +0.4375 0.1562 0.75 +0.4375 0.1562 0.7812 +0.4375 0.1562 0.8125 +0.4375 0.1562 0.8438 +0.4375 0.1562 0.875 +0.4375 0.1562 0.9062 +0.4375 0.1562 0.9375 +0.4375 0.1562 0.9688 +0.4375 0.1562 1 +0.4375 0.1875 0 +0.4375 0.1875 0.03125 +0.4375 0.1875 0.0625 +0.4375 0.1875 0.09375 +0.4375 0.1875 0.125 +0.4375 0.1875 0.1562 +0.4375 0.1875 0.1875 +0.4375 0.1875 0.2188 +0.4375 0.1875 0.25 +0.4375 0.1875 0.2812 +0.4375 0.1875 0.3125 +0.4375 0.1875 0.3438 +0.4375 0.1875 0.375 +0.4375 0.1875 0.4062 +0.4375 0.1875 0.4375 +0.4375 0.1875 0.4688 +0.4375 0.1875 0.5 +0.4375 0.1875 0.5312 +0.4375 0.1875 0.5625 +0.4375 0.1875 0.5938 +0.4375 0.1875 0.625 +0.4375 0.1875 0.6562 +0.4375 0.1875 0.6875 +0.4375 0.1875 0.7188 +0.4375 0.1875 0.75 +0.4375 0.1875 0.7812 +0.4375 0.1875 0.8125 +0.4375 0.1875 0.8438 +0.4375 0.1875 0.875 +0.4375 0.1875 0.9062 +0.4375 0.1875 0.9375 +0.4375 0.1875 0.9688 +0.4375 0.1875 1 +0.4375 0.2188 0 +0.4375 0.2188 0.03125 +0.4375 0.2188 0.0625 +0.4375 0.2188 0.09375 +0.4375 0.2188 0.125 +0.4375 0.2188 0.1562 +0.4375 0.2188 0.1875 +0.4375 0.2188 0.2188 +0.4375 0.2188 0.25 +0.4375 0.2188 0.2812 +0.4375 0.2188 0.3125 +0.4375 0.2188 0.3438 +0.4375 0.2188 0.375 +0.4375 0.2188 0.4062 +0.4375 0.2188 0.4375 +0.4375 0.2188 0.4688 +0.4375 0.2188 0.5 +0.4375 0.2188 0.5312 +0.4375 0.2188 0.5625 +0.4375 0.2188 0.5938 +0.4375 0.2188 0.625 +0.4375 0.2188 0.6562 +0.4375 0.2188 0.6875 +0.4375 0.2188 0.7188 +0.4375 0.2188 0.75 +0.4375 0.2188 0.7812 +0.4375 0.2188 0.8125 +0.4375 0.2188 0.8438 +0.4375 0.2188 0.875 +0.4375 0.2188 0.9062 +0.4375 0.2188 0.9375 +0.4375 0.2188 0.9688 +0.4375 0.2188 1 +0.4375 0.25 0 +0.4375 0.25 0.03125 +0.4375 0.25 0.0625 +0.4375 0.25 0.09375 +0.4375 0.25 0.125 +0.4375 0.25 0.1562 +0.4375 0.25 0.1875 +0.4375 0.25 0.2188 +0.4375 0.25 0.25 +0.4375 0.25 0.2812 +0.4375 0.25 0.3125 +0.4375 0.25 0.3438 +0.4375 0.25 0.375 +0.4375 0.25 0.4062 +0.4375 0.25 0.4375 +0.4375 0.25 0.4688 +0.4375 0.25 0.5 +0.4375 0.25 0.5312 +0.4375 0.25 0.5625 +0.4375 0.25 0.5938 +0.4375 0.25 0.625 +0.4375 0.25 0.6562 +0.4375 0.25 0.6875 +0.4375 0.25 0.7188 +0.4375 0.25 0.75 +0.4375 0.25 0.7812 +0.4375 0.25 0.8125 +0.4375 0.25 0.8438 +0.4375 0.25 0.875 +0.4375 0.25 0.9062 +0.4375 0.25 0.9375 +0.4375 0.25 0.9688 +0.4375 0.25 1 +0.4375 0.2812 0 +0.4375 0.2812 0.03125 +0.4375 0.2812 0.0625 +0.4375 0.2812 0.09375 +0.4375 0.2812 0.125 +0.4375 0.2812 0.1562 +0.4375 0.2812 0.1875 +0.4375 0.2812 0.2188 +0.4375 0.2812 0.25 +0.4375 0.2812 0.2812 +0.4375 0.2812 0.3125 +0.4375 0.2812 0.3438 +0.4375 0.2812 0.375 +0.4375 0.2812 0.4062 +0.4375 0.2812 0.4375 +0.4375 0.2812 0.4688 +0.4375 0.2812 0.5 +0.4375 0.2812 0.5312 +0.4375 0.2812 0.5625 +0.4375 0.2812 0.5938 +0.4375 0.2812 0.625 +0.4375 0.2812 0.6562 +0.4375 0.2812 0.6875 +0.4375 0.2812 0.7188 +0.4375 0.2812 0.75 +0.4375 0.2812 0.7812 +0.4375 0.2812 0.8125 +0.4375 0.2812 0.8438 +0.4375 0.2812 0.875 +0.4375 0.2812 0.9062 +0.4375 0.2812 0.9375 +0.4375 0.2812 0.9688 +0.4375 0.2812 1 +0.4375 0.3125 0 +0.4375 0.3125 0.03125 +0.4375 0.3125 0.0625 +0.4375 0.3125 0.09375 +0.4375 0.3125 0.125 +0.4375 0.3125 0.1562 +0.4375 0.3125 0.1875 +0.4375 0.3125 0.2188 +0.4375 0.3125 0.25 +0.4375 0.3125 0.2812 +0.4375 0.3125 0.3125 +0.4375 0.3125 0.3438 +0.4375 0.3125 0.375 +0.4375 0.3125 0.4062 +0.4375 0.3125 0.4375 +0.4375 0.3125 0.4688 +0.4375 0.3125 0.5 +0.4375 0.3125 0.5312 +0.4375 0.3125 0.5625 +0.4375 0.3125 0.5938 +0.4375 0.3125 0.625 +0.4375 0.3125 0.6562 +0.4375 0.3125 0.6875 +0.4375 0.3125 0.7188 +0.4375 0.3125 0.75 +0.4375 0.3125 0.7812 +0.4375 0.3125 0.8125 +0.4375 0.3125 0.8438 +0.4375 0.3125 0.875 +0.4375 0.3125 0.9062 +0.4375 0.3125 0.9375 +0.4375 0.3125 0.9688 +0.4375 0.3125 1 +0.4375 0.3438 0 +0.4375 0.3438 0.03125 +0.4375 0.3438 0.0625 +0.4375 0.3438 0.09375 +0.4375 0.3438 0.125 +0.4375 0.3438 0.1562 +0.4375 0.3438 0.1875 +0.4375 0.3438 0.2188 +0.4375 0.3438 0.25 +0.4375 0.3438 0.2812 +0.4375 0.3438 0.3125 +0.4375 0.3438 0.3438 +0.4375 0.3438 0.375 +0.4375 0.3438 0.4062 +0.4375 0.3438 0.4375 +0.4375 0.3438 0.4688 +0.4375 0.3438 0.5 +0.4375 0.3438 0.5312 +0.4375 0.3438 0.5625 +0.4375 0.3438 0.5938 +0.4375 0.3438 0.625 +0.4375 0.3438 0.6562 +0.4375 0.3438 0.6875 +0.4375 0.3438 0.7188 +0.4375 0.3438 0.75 +0.4375 0.3438 0.7812 +0.4375 0.3438 0.8125 +0.4375 0.3438 0.8438 +0.4375 0.3438 0.875 +0.4375 0.3438 0.9062 +0.4375 0.3438 0.9375 +0.4375 0.3438 0.9688 +0.4375 0.3438 1 +0.4375 0.375 0 +0.4375 0.375 0.03125 +0.4375 0.375 0.0625 +0.4375 0.375 0.09375 +0.4375 0.375 0.125 +0.4375 0.375 0.1562 +0.4375 0.375 0.1875 +0.4375 0.375 0.2188 +0.4375 0.375 0.25 +0.4375 0.375 0.2812 +0.4375 0.375 0.3125 +0.4375 0.375 0.3438 +0.4375 0.375 0.375 +0.4375 0.375 0.4062 +0.4375 0.375 0.4375 +0.4375 0.375 0.4688 +0.4375 0.375 0.5 +0.4375 0.375 0.5312 +0.4375 0.375 0.5625 +0.4375 0.375 0.5938 +0.4375 0.375 0.625 +0.4375 0.375 0.6562 +0.4375 0.375 0.6875 +0.4375 0.375 0.7188 +0.4375 0.375 0.75 +0.4375 0.375 0.7812 +0.4375 0.375 0.8125 +0.4375 0.375 0.8438 +0.4375 0.375 0.875 +0.4375 0.375 0.9062 +0.4375 0.375 0.9375 +0.4375 0.375 0.9688 +0.4375 0.375 1 +0.4375 0.4062 0 +0.4375 0.4062 0.03125 +0.4375 0.4062 0.0625 +0.4375 0.4062 0.09375 +0.4375 0.4062 0.125 +0.4375 0.4062 0.1562 +0.4375 0.4062 0.1875 +0.4375 0.4062 0.2188 +0.4375 0.4062 0.25 +0.4375 0.4062 0.2812 +0.4375 0.4062 0.3125 +0.4375 0.4062 0.3438 +0.4375 0.4062 0.375 +0.4375 0.4062 0.4062 +0.4375 0.4062 0.4375 +0.4375 0.4062 0.4688 +0.4375 0.4062 0.5 +0.4375 0.4062 0.5312 +0.4375 0.4062 0.5625 +0.4375 0.4062 0.5938 +0.4375 0.4062 0.625 +0.4375 0.4062 0.6562 +0.4375 0.4062 0.6875 +0.4375 0.4062 0.7188 +0.4375 0.4062 0.75 +0.4375 0.4062 0.7812 +0.4375 0.4062 0.8125 +0.4375 0.4062 0.8438 +0.4375 0.4062 0.875 +0.4375 0.4062 0.9062 +0.4375 0.4062 0.9375 +0.4375 0.4062 0.9688 +0.4375 0.4062 1 +0.4375 0.4375 0 +0.4375 0.4375 0.03125 +0.4375 0.4375 0.0625 +0.4375 0.4375 0.09375 +0.4375 0.4375 0.125 +0.4375 0.4375 0.1562 +0.4375 0.4375 0.1875 +0.4375 0.4375 0.2188 +0.4375 0.4375 0.25 +0.4375 0.4375 0.2812 +0.4375 0.4375 0.3125 +0.4375 0.4375 0.3438 +0.4375 0.4375 0.375 +0.4375 0.4375 0.4062 +0.4375 0.4375 0.4375 +0.4375 0.4375 0.4688 +0.4375 0.4375 0.5 +0.4375 0.4375 0.5312 +0.4375 0.4375 0.5625 +0.4375 0.4375 0.5938 +0.4375 0.4375 0.625 +0.4375 0.4375 0.6562 +0.4375 0.4375 0.6875 +0.4375 0.4375 0.7188 +0.4375 0.4375 0.75 +0.4375 0.4375 0.7812 +0.4375 0.4375 0.8125 +0.4375 0.4375 0.8438 +0.4375 0.4375 0.875 +0.4375 0.4375 0.9062 +0.4375 0.4375 0.9375 +0.4375 0.4375 0.9688 +0.4375 0.4375 1 +0.4375 0.4688 0 +0.4375 0.4688 0.03125 +0.4375 0.4688 0.0625 +0.4375 0.4688 0.09375 +0.4375 0.4688 0.125 +0.4375 0.4688 0.1562 +0.4375 0.4688 0.1875 +0.4375 0.4688 0.2188 +0.4375 0.4688 0.25 +0.4375 0.4688 0.2812 +0.4375 0.4688 0.3125 +0.4375 0.4688 0.3438 +0.4375 0.4688 0.375 +0.4375 0.4688 0.4062 +0.4375 0.4688 0.4375 +0.4375 0.4688 0.4688 +0.4375 0.4688 0.5 +0.4375 0.4688 0.5312 +0.4375 0.4688 0.5625 +0.4375 0.4688 0.5938 +0.4375 0.4688 0.625 +0.4375 0.4688 0.6562 +0.4375 0.4688 0.6875 +0.4375 0.4688 0.7188 +0.4375 0.4688 0.75 +0.4375 0.4688 0.7812 +0.4375 0.4688 0.8125 +0.4375 0.4688 0.8438 +0.4375 0.4688 0.875 +0.4375 0.4688 0.9062 +0.4375 0.4688 0.9375 +0.4375 0.4688 0.9688 +0.4375 0.4688 1 +0.4375 0.5 0 +0.4375 0.5 0.03125 +0.4375 0.5 0.0625 +0.4375 0.5 0.09375 +0.4375 0.5 0.125 +0.4375 0.5 0.1562 +0.4375 0.5 0.1875 +0.4375 0.5 0.2188 +0.4375 0.5 0.25 +0.4375 0.5 0.2812 +0.4375 0.5 0.3125 +0.4375 0.5 0.3438 +0.4375 0.5 0.375 +0.4375 0.5 0.4062 +0.4375 0.5 0.4375 +0.4375 0.5 0.4688 +0.4375 0.5 0.5 +0.4375 0.5 0.5312 +0.4375 0.5 0.5625 +0.4375 0.5 0.5938 +0.4375 0.5 0.625 +0.4375 0.5 0.6562 +0.4375 0.5 0.6875 +0.4375 0.5 0.7188 +0.4375 0.5 0.75 +0.4375 0.5 0.7812 +0.4375 0.5 0.8125 +0.4375 0.5 0.8438 +0.4375 0.5 0.875 +0.4375 0.5 0.9062 +0.4375 0.5 0.9375 +0.4375 0.5 0.9688 +0.4375 0.5 1 +0.4375 0.5312 0 +0.4375 0.5312 0.03125 +0.4375 0.5312 0.0625 +0.4375 0.5312 0.09375 +0.4375 0.5312 0.125 +0.4375 0.5312 0.1562 +0.4375 0.5312 0.1875 +0.4375 0.5312 0.2188 +0.4375 0.5312 0.25 +0.4375 0.5312 0.2812 +0.4375 0.5312 0.3125 +0.4375 0.5312 0.3438 +0.4375 0.5312 0.375 +0.4375 0.5312 0.4062 +0.4375 0.5312 0.4375 +0.4375 0.5312 0.4688 +0.4375 0.5312 0.5 +0.4375 0.5312 0.5312 +0.4375 0.5312 0.5625 +0.4375 0.5312 0.5938 +0.4375 0.5312 0.625 +0.4375 0.5312 0.6562 +0.4375 0.5312 0.6875 +0.4375 0.5312 0.7188 +0.4375 0.5312 0.75 +0.4375 0.5312 0.7812 +0.4375 0.5312 0.8125 +0.4375 0.5312 0.8438 +0.4375 0.5312 0.875 +0.4375 0.5312 0.9062 +0.4375 0.5312 0.9375 +0.4375 0.5312 0.9688 +0.4375 0.5312 1 +0.4375 0.5625 0 +0.4375 0.5625 0.03125 +0.4375 0.5625 0.0625 +0.4375 0.5625 0.09375 +0.4375 0.5625 0.125 +0.4375 0.5625 0.1562 +0.4375 0.5625 0.1875 +0.4375 0.5625 0.2188 +0.4375 0.5625 0.25 +0.4375 0.5625 0.2812 +0.4375 0.5625 0.3125 +0.4375 0.5625 0.3438 +0.4375 0.5625 0.375 +0.4375 0.5625 0.4062 +0.4375 0.5625 0.4375 +0.4375 0.5625 0.4688 +0.4375 0.5625 0.5 +0.4375 0.5625 0.5312 +0.4375 0.5625 0.5625 +0.4375 0.5625 0.5938 +0.4375 0.5625 0.625 +0.4375 0.5625 0.6562 +0.4375 0.5625 0.6875 +0.4375 0.5625 0.7188 +0.4375 0.5625 0.75 +0.4375 0.5625 0.7812 +0.4375 0.5625 0.8125 +0.4375 0.5625 0.8438 +0.4375 0.5625 0.875 +0.4375 0.5625 0.9062 +0.4375 0.5625 0.9375 +0.4375 0.5625 0.9688 +0.4375 0.5625 1 +0.4375 0.5938 0 +0.4375 0.5938 0.03125 +0.4375 0.5938 0.0625 +0.4375 0.5938 0.09375 +0.4375 0.5938 0.125 +0.4375 0.5938 0.1562 +0.4375 0.5938 0.1875 +0.4375 0.5938 0.2188 +0.4375 0.5938 0.25 +0.4375 0.5938 0.2812 +0.4375 0.5938 0.3125 +0.4375 0.5938 0.3438 +0.4375 0.5938 0.375 +0.4375 0.5938 0.4062 +0.4375 0.5938 0.4375 +0.4375 0.5938 0.4688 +0.4375 0.5938 0.5 +0.4375 0.5938 0.5312 +0.4375 0.5938 0.5625 +0.4375 0.5938 0.5938 +0.4375 0.5938 0.625 +0.4375 0.5938 0.6562 +0.4375 0.5938 0.6875 +0.4375 0.5938 0.7188 +0.4375 0.5938 0.75 +0.4375 0.5938 0.7812 +0.4375 0.5938 0.8125 +0.4375 0.5938 0.8438 +0.4375 0.5938 0.875 +0.4375 0.5938 0.9062 +0.4375 0.5938 0.9375 +0.4375 0.5938 0.9688 +0.4375 0.5938 1 +0.4375 0.625 0 +0.4375 0.625 0.03125 +0.4375 0.625 0.0625 +0.4375 0.625 0.09375 +0.4375 0.625 0.125 +0.4375 0.625 0.1562 +0.4375 0.625 0.1875 +0.4375 0.625 0.2188 +0.4375 0.625 0.25 +0.4375 0.625 0.2812 +0.4375 0.625 0.3125 +0.4375 0.625 0.3438 +0.4375 0.625 0.375 +0.4375 0.625 0.4062 +0.4375 0.625 0.4375 +0.4375 0.625 0.4688 +0.4375 0.625 0.5 +0.4375 0.625 0.5312 +0.4375 0.625 0.5625 +0.4375 0.625 0.5938 +0.4375 0.625 0.625 +0.4375 0.625 0.6562 +0.4375 0.625 0.6875 +0.4375 0.625 0.7188 +0.4375 0.625 0.75 +0.4375 0.625 0.7812 +0.4375 0.625 0.8125 +0.4375 0.625 0.8438 +0.4375 0.625 0.875 +0.4375 0.625 0.9062 +0.4375 0.625 0.9375 +0.4375 0.625 0.9688 +0.4375 0.625 1 +0.4375 0.6562 0 +0.4375 0.6562 0.03125 +0.4375 0.6562 0.0625 +0.4375 0.6562 0.09375 +0.4375 0.6562 0.125 +0.4375 0.6562 0.1562 +0.4375 0.6562 0.1875 +0.4375 0.6562 0.2188 +0.4375 0.6562 0.25 +0.4375 0.6562 0.2812 +0.4375 0.6562 0.3125 +0.4375 0.6562 0.3438 +0.4375 0.6562 0.375 +0.4375 0.6562 0.4062 +0.4375 0.6562 0.4375 +0.4375 0.6562 0.4688 +0.4375 0.6562 0.5 +0.4375 0.6562 0.5312 +0.4375 0.6562 0.5625 +0.4375 0.6562 0.5938 +0.4375 0.6562 0.625 +0.4375 0.6562 0.6562 +0.4375 0.6562 0.6875 +0.4375 0.6562 0.7188 +0.4375 0.6562 0.75 +0.4375 0.6562 0.7812 +0.4375 0.6562 0.8125 +0.4375 0.6562 0.8438 +0.4375 0.6562 0.875 +0.4375 0.6562 0.9062 +0.4375 0.6562 0.9375 +0.4375 0.6562 0.9688 +0.4375 0.6562 1 +0.4375 0.6875 0 +0.4375 0.6875 0.03125 +0.4375 0.6875 0.0625 +0.4375 0.6875 0.09375 +0.4375 0.6875 0.125 +0.4375 0.6875 0.1562 +0.4375 0.6875 0.1875 +0.4375 0.6875 0.2188 +0.4375 0.6875 0.25 +0.4375 0.6875 0.2812 +0.4375 0.6875 0.3125 +0.4375 0.6875 0.3438 +0.4375 0.6875 0.375 +0.4375 0.6875 0.4062 +0.4375 0.6875 0.4375 +0.4375 0.6875 0.4688 +0.4375 0.6875 0.5 +0.4375 0.6875 0.5312 +0.4375 0.6875 0.5625 +0.4375 0.6875 0.5938 +0.4375 0.6875 0.625 +0.4375 0.6875 0.6562 +0.4375 0.6875 0.6875 +0.4375 0.6875 0.7188 +0.4375 0.6875 0.75 +0.4375 0.6875 0.7812 +0.4375 0.6875 0.8125 +0.4375 0.6875 0.8438 +0.4375 0.6875 0.875 +0.4375 0.6875 0.9062 +0.4375 0.6875 0.9375 +0.4375 0.6875 0.9688 +0.4375 0.6875 1 +0.4375 0.7188 0 +0.4375 0.7188 0.03125 +0.4375 0.7188 0.0625 +0.4375 0.7188 0.09375 +0.4375 0.7188 0.125 +0.4375 0.7188 0.1562 +0.4375 0.7188 0.1875 +0.4375 0.7188 0.2188 +0.4375 0.7188 0.25 +0.4375 0.7188 0.2812 +0.4375 0.7188 0.3125 +0.4375 0.7188 0.3438 +0.4375 0.7188 0.375 +0.4375 0.7188 0.4062 +0.4375 0.7188 0.4375 +0.4375 0.7188 0.4688 +0.4375 0.7188 0.5 +0.4375 0.7188 0.5312 +0.4375 0.7188 0.5625 +0.4375 0.7188 0.5938 +0.4375 0.7188 0.625 +0.4375 0.7188 0.6562 +0.4375 0.7188 0.6875 +0.4375 0.7188 0.7188 +0.4375 0.7188 0.75 +0.4375 0.7188 0.7812 +0.4375 0.7188 0.8125 +0.4375 0.7188 0.8438 +0.4375 0.7188 0.875 +0.4375 0.7188 0.9062 +0.4375 0.7188 0.9375 +0.4375 0.7188 0.9688 +0.4375 0.7188 1 +0.4375 0.75 0 +0.4375 0.75 0.03125 +0.4375 0.75 0.0625 +0.4375 0.75 0.09375 +0.4375 0.75 0.125 +0.4375 0.75 0.1562 +0.4375 0.75 0.1875 +0.4375 0.75 0.2188 +0.4375 0.75 0.25 +0.4375 0.75 0.2812 +0.4375 0.75 0.3125 +0.4375 0.75 0.3438 +0.4375 0.75 0.375 +0.4375 0.75 0.4062 +0.4375 0.75 0.4375 +0.4375 0.75 0.4688 +0.4375 0.75 0.5 +0.4375 0.75 0.5312 +0.4375 0.75 0.5625 +0.4375 0.75 0.5938 +0.4375 0.75 0.625 +0.4375 0.75 0.6562 +0.4375 0.75 0.6875 +0.4375 0.75 0.7188 +0.4375 0.75 0.75 +0.4375 0.75 0.7812 +0.4375 0.75 0.8125 +0.4375 0.75 0.8438 +0.4375 0.75 0.875 +0.4375 0.75 0.9062 +0.4375 0.75 0.9375 +0.4375 0.75 0.9688 +0.4375 0.75 1 +0.4375 0.7812 0 +0.4375 0.7812 0.03125 +0.4375 0.7812 0.0625 +0.4375 0.7812 0.09375 +0.4375 0.7812 0.125 +0.4375 0.7812 0.1562 +0.4375 0.7812 0.1875 +0.4375 0.7812 0.2188 +0.4375 0.7812 0.25 +0.4375 0.7812 0.2812 +0.4375 0.7812 0.3125 +0.4375 0.7812 0.3438 +0.4375 0.7812 0.375 +0.4375 0.7812 0.4062 +0.4375 0.7812 0.4375 +0.4375 0.7812 0.4688 +0.4375 0.7812 0.5 +0.4375 0.7812 0.5312 +0.4375 0.7812 0.5625 +0.4375 0.7812 0.5938 +0.4375 0.7812 0.625 +0.4375 0.7812 0.6562 +0.4375 0.7812 0.6875 +0.4375 0.7812 0.7188 +0.4375 0.7812 0.75 +0.4375 0.7812 0.7812 +0.4375 0.7812 0.8125 +0.4375 0.7812 0.8438 +0.4375 0.7812 0.875 +0.4375 0.7812 0.9062 +0.4375 0.7812 0.9375 +0.4375 0.7812 0.9688 +0.4375 0.7812 1 +0.4375 0.8125 0 +0.4375 0.8125 0.03125 +0.4375 0.8125 0.0625 +0.4375 0.8125 0.09375 +0.4375 0.8125 0.125 +0.4375 0.8125 0.1562 +0.4375 0.8125 0.1875 +0.4375 0.8125 0.2188 +0.4375 0.8125 0.25 +0.4375 0.8125 0.2812 +0.4375 0.8125 0.3125 +0.4375 0.8125 0.3438 +0.4375 0.8125 0.375 +0.4375 0.8125 0.4062 +0.4375 0.8125 0.4375 +0.4375 0.8125 0.4688 +0.4375 0.8125 0.5 +0.4375 0.8125 0.5312 +0.4375 0.8125 0.5625 +0.4375 0.8125 0.5938 +0.4375 0.8125 0.625 +0.4375 0.8125 0.6562 +0.4375 0.8125 0.6875 +0.4375 0.8125 0.7188 +0.4375 0.8125 0.75 +0.4375 0.8125 0.7812 +0.4375 0.8125 0.8125 +0.4375 0.8125 0.8438 +0.4375 0.8125 0.875 +0.4375 0.8125 0.9062 +0.4375 0.8125 0.9375 +0.4375 0.8125 0.9688 +0.4375 0.8125 1 +0.4375 0.8438 0 +0.4375 0.8438 0.03125 +0.4375 0.8438 0.0625 +0.4375 0.8438 0.09375 +0.4375 0.8438 0.125 +0.4375 0.8438 0.1562 +0.4375 0.8438 0.1875 +0.4375 0.8438 0.2188 +0.4375 0.8438 0.25 +0.4375 0.8438 0.2812 +0.4375 0.8438 0.3125 +0.4375 0.8438 0.3438 +0.4375 0.8438 0.375 +0.4375 0.8438 0.4062 +0.4375 0.8438 0.4375 +0.4375 0.8438 0.4688 +0.4375 0.8438 0.5 +0.4375 0.8438 0.5312 +0.4375 0.8438 0.5625 +0.4375 0.8438 0.5938 +0.4375 0.8438 0.625 +0.4375 0.8438 0.6562 +0.4375 0.8438 0.6875 +0.4375 0.8438 0.7188 +0.4375 0.8438 0.75 +0.4375 0.8438 0.7812 +0.4375 0.8438 0.8125 +0.4375 0.8438 0.8438 +0.4375 0.8438 0.875 +0.4375 0.8438 0.9062 +0.4375 0.8438 0.9375 +0.4375 0.8438 0.9688 +0.4375 0.8438 1 +0.4375 0.875 0 +0.4375 0.875 0.03125 +0.4375 0.875 0.0625 +0.4375 0.875 0.09375 +0.4375 0.875 0.125 +0.4375 0.875 0.1562 +0.4375 0.875 0.1875 +0.4375 0.875 0.2188 +0.4375 0.875 0.25 +0.4375 0.875 0.2812 +0.4375 0.875 0.3125 +0.4375 0.875 0.3438 +0.4375 0.875 0.375 +0.4375 0.875 0.4062 +0.4375 0.875 0.4375 +0.4375 0.875 0.4688 +0.4375 0.875 0.5 +0.4375 0.875 0.5312 +0.4375 0.875 0.5625 +0.4375 0.875 0.5938 +0.4375 0.875 0.625 +0.4375 0.875 0.6562 +0.4375 0.875 0.6875 +0.4375 0.875 0.7188 +0.4375 0.875 0.75 +0.4375 0.875 0.7812 +0.4375 0.875 0.8125 +0.4375 0.875 0.8438 +0.4375 0.875 0.875 +0.4375 0.875 0.9062 +0.4375 0.875 0.9375 +0.4375 0.875 0.9688 +0.4375 0.875 1 +0.4375 0.9062 0 +0.4375 0.9062 0.03125 +0.4375 0.9062 0.0625 +0.4375 0.9062 0.09375 +0.4375 0.9062 0.125 +0.4375 0.9062 0.1562 +0.4375 0.9062 0.1875 +0.4375 0.9062 0.2188 +0.4375 0.9062 0.25 +0.4375 0.9062 0.2812 +0.4375 0.9062 0.3125 +0.4375 0.9062 0.3438 +0.4375 0.9062 0.375 +0.4375 0.9062 0.4062 +0.4375 0.9062 0.4375 +0.4375 0.9062 0.4688 +0.4375 0.9062 0.5 +0.4375 0.9062 0.5312 +0.4375 0.9062 0.5625 +0.4375 0.9062 0.5938 +0.4375 0.9062 0.625 +0.4375 0.9062 0.6562 +0.4375 0.9062 0.6875 +0.4375 0.9062 0.7188 +0.4375 0.9062 0.75 +0.4375 0.9062 0.7812 +0.4375 0.9062 0.8125 +0.4375 0.9062 0.8438 +0.4375 0.9062 0.875 +0.4375 0.9062 0.9062 +0.4375 0.9062 0.9375 +0.4375 0.9062 0.9688 +0.4375 0.9062 1 +0.4375 0.9375 0 +0.4375 0.9375 0.03125 +0.4375 0.9375 0.0625 +0.4375 0.9375 0.09375 +0.4375 0.9375 0.125 +0.4375 0.9375 0.1562 +0.4375 0.9375 0.1875 +0.4375 0.9375 0.2188 +0.4375 0.9375 0.25 +0.4375 0.9375 0.2812 +0.4375 0.9375 0.3125 +0.4375 0.9375 0.3438 +0.4375 0.9375 0.375 +0.4375 0.9375 0.4062 +0.4375 0.9375 0.4375 +0.4375 0.9375 0.4688 +0.4375 0.9375 0.5 +0.4375 0.9375 0.5312 +0.4375 0.9375 0.5625 +0.4375 0.9375 0.5938 +0.4375 0.9375 0.625 +0.4375 0.9375 0.6562 +0.4375 0.9375 0.6875 +0.4375 0.9375 0.7188 +0.4375 0.9375 0.75 +0.4375 0.9375 0.7812 +0.4375 0.9375 0.8125 +0.4375 0.9375 0.8438 +0.4375 0.9375 0.875 +0.4375 0.9375 0.9062 +0.4375 0.9375 0.9375 +0.4375 0.9375 0.9688 +0.4375 0.9375 1 +0.4375 0.9688 0 +0.4375 0.9688 0.03125 +0.4375 0.9688 0.0625 +0.4375 0.9688 0.09375 +0.4375 0.9688 0.125 +0.4375 0.9688 0.1562 +0.4375 0.9688 0.1875 +0.4375 0.9688 0.2188 +0.4375 0.9688 0.25 +0.4375 0.9688 0.2812 +0.4375 0.9688 0.3125 +0.4375 0.9688 0.3438 +0.4375 0.9688 0.375 +0.4375 0.9688 0.4062 +0.4375 0.9688 0.4375 +0.4375 0.9688 0.4688 +0.4375 0.9688 0.5 +0.4375 0.9688 0.5312 +0.4375 0.9688 0.5625 +0.4375 0.9688 0.5938 +0.4375 0.9688 0.625 +0.4375 0.9688 0.6562 +0.4375 0.9688 0.6875 +0.4375 0.9688 0.7188 +0.4375 0.9688 0.75 +0.4375 0.9688 0.7812 +0.4375 0.9688 0.8125 +0.4375 0.9688 0.8438 +0.4375 0.9688 0.875 +0.4375 0.9688 0.9062 +0.4375 0.9688 0.9375 +0.4375 0.9688 0.9688 +0.4375 0.9688 1 +0.4375 1 0 +0.4375 1 0.03125 +0.4375 1 0.0625 +0.4375 1 0.09375 +0.4375 1 0.125 +0.4375 1 0.1562 +0.4375 1 0.1875 +0.4375 1 0.2188 +0.4375 1 0.25 +0.4375 1 0.2812 +0.4375 1 0.3125 +0.4375 1 0.3438 +0.4375 1 0.375 +0.4375 1 0.4062 +0.4375 1 0.4375 +0.4375 1 0.4688 +0.4375 1 0.5 +0.4375 1 0.5312 +0.4375 1 0.5625 +0.4375 1 0.5938 +0.4375 1 0.625 +0.4375 1 0.6562 +0.4375 1 0.6875 +0.4375 1 0.7188 +0.4375 1 0.75 +0.4375 1 0.7812 +0.4375 1 0.8125 +0.4375 1 0.8438 +0.4375 1 0.875 +0.4375 1 0.9062 +0.4375 1 0.9375 +0.4375 1 0.9688 +0.4375 1 1 +0.4688 0 0 +0.4688 0 0.03125 +0.4688 0 0.0625 +0.4688 0 0.09375 +0.4688 0 0.125 +0.4688 0 0.1562 +0.4688 0 0.1875 +0.4688 0 0.2188 +0.4688 0 0.25 +0.4688 0 0.2812 +0.4688 0 0.3125 +0.4688 0 0.3438 +0.4688 0 0.375 +0.4688 0 0.4062 +0.4688 0 0.4375 +0.4688 0 0.4688 +0.4688 0 0.5 +0.4688 0 0.5312 +0.4688 0 0.5625 +0.4688 0 0.5938 +0.4688 0 0.625 +0.4688 0 0.6562 +0.4688 0 0.6875 +0.4688 0 0.7188 +0.4688 0 0.75 +0.4688 0 0.7812 +0.4688 0 0.8125 +0.4688 0 0.8438 +0.4688 0 0.875 +0.4688 0 0.9062 +0.4688 0 0.9375 +0.4688 0 0.9688 +0.4688 0 1 +0.4688 0.03125 0 +0.4688 0.03125 0.03125 +0.4688 0.03125 0.0625 +0.4688 0.03125 0.09375 +0.4688 0.03125 0.125 +0.4688 0.03125 0.1562 +0.4688 0.03125 0.1875 +0.4688 0.03125 0.2188 +0.4688 0.03125 0.25 +0.4688 0.03125 0.2812 +0.4688 0.03125 0.3125 +0.4688 0.03125 0.3438 +0.4688 0.03125 0.375 +0.4688 0.03125 0.4062 +0.4688 0.03125 0.4375 +0.4688 0.03125 0.4688 +0.4688 0.03125 0.5 +0.4688 0.03125 0.5312 +0.4688 0.03125 0.5625 +0.4688 0.03125 0.5938 +0.4688 0.03125 0.625 +0.4688 0.03125 0.6562 +0.4688 0.03125 0.6875 +0.4688 0.03125 0.7188 +0.4688 0.03125 0.75 +0.4688 0.03125 0.7812 +0.4688 0.03125 0.8125 +0.4688 0.03125 0.8438 +0.4688 0.03125 0.875 +0.4688 0.03125 0.9062 +0.4688 0.03125 0.9375 +0.4688 0.03125 0.9688 +0.4688 0.03125 1 +0.4688 0.0625 0 +0.4688 0.0625 0.03125 +0.4688 0.0625 0.0625 +0.4688 0.0625 0.09375 +0.4688 0.0625 0.125 +0.4688 0.0625 0.1562 +0.4688 0.0625 0.1875 +0.4688 0.0625 0.2188 +0.4688 0.0625 0.25 +0.4688 0.0625 0.2812 +0.4688 0.0625 0.3125 +0.4688 0.0625 0.3438 +0.4688 0.0625 0.375 +0.4688 0.0625 0.4062 +0.4688 0.0625 0.4375 +0.4688 0.0625 0.4688 +0.4688 0.0625 0.5 +0.4688 0.0625 0.5312 +0.4688 0.0625 0.5625 +0.4688 0.0625 0.5938 +0.4688 0.0625 0.625 +0.4688 0.0625 0.6562 +0.4688 0.0625 0.6875 +0.4688 0.0625 0.7188 +0.4688 0.0625 0.75 +0.4688 0.0625 0.7812 +0.4688 0.0625 0.8125 +0.4688 0.0625 0.8438 +0.4688 0.0625 0.875 +0.4688 0.0625 0.9062 +0.4688 0.0625 0.9375 +0.4688 0.0625 0.9688 +0.4688 0.0625 1 +0.4688 0.09375 0 +0.4688 0.09375 0.03125 +0.4688 0.09375 0.0625 +0.4688 0.09375 0.09375 +0.4688 0.09375 0.125 +0.4688 0.09375 0.1562 +0.4688 0.09375 0.1875 +0.4688 0.09375 0.2188 +0.4688 0.09375 0.25 +0.4688 0.09375 0.2812 +0.4688 0.09375 0.3125 +0.4688 0.09375 0.3438 +0.4688 0.09375 0.375 +0.4688 0.09375 0.4062 +0.4688 0.09375 0.4375 +0.4688 0.09375 0.4688 +0.4688 0.09375 0.5 +0.4688 0.09375 0.5312 +0.4688 0.09375 0.5625 +0.4688 0.09375 0.5938 +0.4688 0.09375 0.625 +0.4688 0.09375 0.6562 +0.4688 0.09375 0.6875 +0.4688 0.09375 0.7188 +0.4688 0.09375 0.75 +0.4688 0.09375 0.7812 +0.4688 0.09375 0.8125 +0.4688 0.09375 0.8438 +0.4688 0.09375 0.875 +0.4688 0.09375 0.9062 +0.4688 0.09375 0.9375 +0.4688 0.09375 0.9688 +0.4688 0.09375 1 +0.4688 0.125 0 +0.4688 0.125 0.03125 +0.4688 0.125 0.0625 +0.4688 0.125 0.09375 +0.4688 0.125 0.125 +0.4688 0.125 0.1562 +0.4688 0.125 0.1875 +0.4688 0.125 0.2188 +0.4688 0.125 0.25 +0.4688 0.125 0.2812 +0.4688 0.125 0.3125 +0.4688 0.125 0.3438 +0.4688 0.125 0.375 +0.4688 0.125 0.4062 +0.4688 0.125 0.4375 +0.4688 0.125 0.4688 +0.4688 0.125 0.5 +0.4688 0.125 0.5312 +0.4688 0.125 0.5625 +0.4688 0.125 0.5938 +0.4688 0.125 0.625 +0.4688 0.125 0.6562 +0.4688 0.125 0.6875 +0.4688 0.125 0.7188 +0.4688 0.125 0.75 +0.4688 0.125 0.7812 +0.4688 0.125 0.8125 +0.4688 0.125 0.8438 +0.4688 0.125 0.875 +0.4688 0.125 0.9062 +0.4688 0.125 0.9375 +0.4688 0.125 0.9688 +0.4688 0.125 1 +0.4688 0.1562 0 +0.4688 0.1562 0.03125 +0.4688 0.1562 0.0625 +0.4688 0.1562 0.09375 +0.4688 0.1562 0.125 +0.4688 0.1562 0.1562 +0.4688 0.1562 0.1875 +0.4688 0.1562 0.2188 +0.4688 0.1562 0.25 +0.4688 0.1562 0.2812 +0.4688 0.1562 0.3125 +0.4688 0.1562 0.3438 +0.4688 0.1562 0.375 +0.4688 0.1562 0.4062 +0.4688 0.1562 0.4375 +0.4688 0.1562 0.4688 +0.4688 0.1562 0.5 +0.4688 0.1562 0.5312 +0.4688 0.1562 0.5625 +0.4688 0.1562 0.5938 +0.4688 0.1562 0.625 +0.4688 0.1562 0.6562 +0.4688 0.1562 0.6875 +0.4688 0.1562 0.7188 +0.4688 0.1562 0.75 +0.4688 0.1562 0.7812 +0.4688 0.1562 0.8125 +0.4688 0.1562 0.8438 +0.4688 0.1562 0.875 +0.4688 0.1562 0.9062 +0.4688 0.1562 0.9375 +0.4688 0.1562 0.9688 +0.4688 0.1562 1 +0.4688 0.1875 0 +0.4688 0.1875 0.03125 +0.4688 0.1875 0.0625 +0.4688 0.1875 0.09375 +0.4688 0.1875 0.125 +0.4688 0.1875 0.1562 +0.4688 0.1875 0.1875 +0.4688 0.1875 0.2188 +0.4688 0.1875 0.25 +0.4688 0.1875 0.2812 +0.4688 0.1875 0.3125 +0.4688 0.1875 0.3438 +0.4688 0.1875 0.375 +0.4688 0.1875 0.4062 +0.4688 0.1875 0.4375 +0.4688 0.1875 0.4688 +0.4688 0.1875 0.5 +0.4688 0.1875 0.5312 +0.4688 0.1875 0.5625 +0.4688 0.1875 0.5938 +0.4688 0.1875 0.625 +0.4688 0.1875 0.6562 +0.4688 0.1875 0.6875 +0.4688 0.1875 0.7188 +0.4688 0.1875 0.75 +0.4688 0.1875 0.7812 +0.4688 0.1875 0.8125 +0.4688 0.1875 0.8438 +0.4688 0.1875 0.875 +0.4688 0.1875 0.9062 +0.4688 0.1875 0.9375 +0.4688 0.1875 0.9688 +0.4688 0.1875 1 +0.4688 0.2188 0 +0.4688 0.2188 0.03125 +0.4688 0.2188 0.0625 +0.4688 0.2188 0.09375 +0.4688 0.2188 0.125 +0.4688 0.2188 0.1562 +0.4688 0.2188 0.1875 +0.4688 0.2188 0.2188 +0.4688 0.2188 0.25 +0.4688 0.2188 0.2812 +0.4688 0.2188 0.3125 +0.4688 0.2188 0.3438 +0.4688 0.2188 0.375 +0.4688 0.2188 0.4062 +0.4688 0.2188 0.4375 +0.4688 0.2188 0.4688 +0.4688 0.2188 0.5 +0.4688 0.2188 0.5312 +0.4688 0.2188 0.5625 +0.4688 0.2188 0.5938 +0.4688 0.2188 0.625 +0.4688 0.2188 0.6562 +0.4688 0.2188 0.6875 +0.4688 0.2188 0.7188 +0.4688 0.2188 0.75 +0.4688 0.2188 0.7812 +0.4688 0.2188 0.8125 +0.4688 0.2188 0.8438 +0.4688 0.2188 0.875 +0.4688 0.2188 0.9062 +0.4688 0.2188 0.9375 +0.4688 0.2188 0.9688 +0.4688 0.2188 1 +0.4688 0.25 0 +0.4688 0.25 0.03125 +0.4688 0.25 0.0625 +0.4688 0.25 0.09375 +0.4688 0.25 0.125 +0.4688 0.25 0.1562 +0.4688 0.25 0.1875 +0.4688 0.25 0.2188 +0.4688 0.25 0.25 +0.4688 0.25 0.2812 +0.4688 0.25 0.3125 +0.4688 0.25 0.3438 +0.4688 0.25 0.375 +0.4688 0.25 0.4062 +0.4688 0.25 0.4375 +0.4688 0.25 0.4688 +0.4688 0.25 0.5 +0.4688 0.25 0.5312 +0.4688 0.25 0.5625 +0.4688 0.25 0.5938 +0.4688 0.25 0.625 +0.4688 0.25 0.6562 +0.4688 0.25 0.6875 +0.4688 0.25 0.7188 +0.4688 0.25 0.75 +0.4688 0.25 0.7812 +0.4688 0.25 0.8125 +0.4688 0.25 0.8438 +0.4688 0.25 0.875 +0.4688 0.25 0.9062 +0.4688 0.25 0.9375 +0.4688 0.25 0.9688 +0.4688 0.25 1 +0.4688 0.2812 0 +0.4688 0.2812 0.03125 +0.4688 0.2812 0.0625 +0.4688 0.2812 0.09375 +0.4688 0.2812 0.125 +0.4688 0.2812 0.1562 +0.4688 0.2812 0.1875 +0.4688 0.2812 0.2188 +0.4688 0.2812 0.25 +0.4688 0.2812 0.2812 +0.4688 0.2812 0.3125 +0.4688 0.2812 0.3438 +0.4688 0.2812 0.375 +0.4688 0.2812 0.4062 +0.4688 0.2812 0.4375 +0.4688 0.2812 0.4688 +0.4688 0.2812 0.5 +0.4688 0.2812 0.5312 +0.4688 0.2812 0.5625 +0.4688 0.2812 0.5938 +0.4688 0.2812 0.625 +0.4688 0.2812 0.6562 +0.4688 0.2812 0.6875 +0.4688 0.2812 0.7188 +0.4688 0.2812 0.75 +0.4688 0.2812 0.7812 +0.4688 0.2812 0.8125 +0.4688 0.2812 0.8438 +0.4688 0.2812 0.875 +0.4688 0.2812 0.9062 +0.4688 0.2812 0.9375 +0.4688 0.2812 0.9688 +0.4688 0.2812 1 +0.4688 0.3125 0 +0.4688 0.3125 0.03125 +0.4688 0.3125 0.0625 +0.4688 0.3125 0.09375 +0.4688 0.3125 0.125 +0.4688 0.3125 0.1562 +0.4688 0.3125 0.1875 +0.4688 0.3125 0.2188 +0.4688 0.3125 0.25 +0.4688 0.3125 0.2812 +0.4688 0.3125 0.3125 +0.4688 0.3125 0.3438 +0.4688 0.3125 0.375 +0.4688 0.3125 0.4062 +0.4688 0.3125 0.4375 +0.4688 0.3125 0.4688 +0.4688 0.3125 0.5 +0.4688 0.3125 0.5312 +0.4688 0.3125 0.5625 +0.4688 0.3125 0.5938 +0.4688 0.3125 0.625 +0.4688 0.3125 0.6562 +0.4688 0.3125 0.6875 +0.4688 0.3125 0.7188 +0.4688 0.3125 0.75 +0.4688 0.3125 0.7812 +0.4688 0.3125 0.8125 +0.4688 0.3125 0.8438 +0.4688 0.3125 0.875 +0.4688 0.3125 0.9062 +0.4688 0.3125 0.9375 +0.4688 0.3125 0.9688 +0.4688 0.3125 1 +0.4688 0.3438 0 +0.4688 0.3438 0.03125 +0.4688 0.3438 0.0625 +0.4688 0.3438 0.09375 +0.4688 0.3438 0.125 +0.4688 0.3438 0.1562 +0.4688 0.3438 0.1875 +0.4688 0.3438 0.2188 +0.4688 0.3438 0.25 +0.4688 0.3438 0.2812 +0.4688 0.3438 0.3125 +0.4688 0.3438 0.3438 +0.4688 0.3438 0.375 +0.4688 0.3438 0.4062 +0.4688 0.3438 0.4375 +0.4688 0.3438 0.4688 +0.4688 0.3438 0.5 +0.4688 0.3438 0.5312 +0.4688 0.3438 0.5625 +0.4688 0.3438 0.5938 +0.4688 0.3438 0.625 +0.4688 0.3438 0.6562 +0.4688 0.3438 0.6875 +0.4688 0.3438 0.7188 +0.4688 0.3438 0.75 +0.4688 0.3438 0.7812 +0.4688 0.3438 0.8125 +0.4688 0.3438 0.8438 +0.4688 0.3438 0.875 +0.4688 0.3438 0.9062 +0.4688 0.3438 0.9375 +0.4688 0.3438 0.9688 +0.4688 0.3438 1 +0.4688 0.375 0 +0.4688 0.375 0.03125 +0.4688 0.375 0.0625 +0.4688 0.375 0.09375 +0.4688 0.375 0.125 +0.4688 0.375 0.1562 +0.4688 0.375 0.1875 +0.4688 0.375 0.2188 +0.4688 0.375 0.25 +0.4688 0.375 0.2812 +0.4688 0.375 0.3125 +0.4688 0.375 0.3438 +0.4688 0.375 0.375 +0.4688 0.375 0.4062 +0.4688 0.375 0.4375 +0.4688 0.375 0.4688 +0.4688 0.375 0.5 +0.4688 0.375 0.5312 +0.4688 0.375 0.5625 +0.4688 0.375 0.5938 +0.4688 0.375 0.625 +0.4688 0.375 0.6562 +0.4688 0.375 0.6875 +0.4688 0.375 0.7188 +0.4688 0.375 0.75 +0.4688 0.375 0.7812 +0.4688 0.375 0.8125 +0.4688 0.375 0.8438 +0.4688 0.375 0.875 +0.4688 0.375 0.9062 +0.4688 0.375 0.9375 +0.4688 0.375 0.9688 +0.4688 0.375 1 +0.4688 0.4062 0 +0.4688 0.4062 0.03125 +0.4688 0.4062 0.0625 +0.4688 0.4062 0.09375 +0.4688 0.4062 0.125 +0.4688 0.4062 0.1562 +0.4688 0.4062 0.1875 +0.4688 0.4062 0.2188 +0.4688 0.4062 0.25 +0.4688 0.4062 0.2812 +0.4688 0.4062 0.3125 +0.4688 0.4062 0.3438 +0.4688 0.4062 0.375 +0.4688 0.4062 0.4062 +0.4688 0.4062 0.4375 +0.4688 0.4062 0.4688 +0.4688 0.4062 0.5 +0.4688 0.4062 0.5312 +0.4688 0.4062 0.5625 +0.4688 0.4062 0.5938 +0.4688 0.4062 0.625 +0.4688 0.4062 0.6562 +0.4688 0.4062 0.6875 +0.4688 0.4062 0.7188 +0.4688 0.4062 0.75 +0.4688 0.4062 0.7812 +0.4688 0.4062 0.8125 +0.4688 0.4062 0.8438 +0.4688 0.4062 0.875 +0.4688 0.4062 0.9062 +0.4688 0.4062 0.9375 +0.4688 0.4062 0.9688 +0.4688 0.4062 1 +0.4688 0.4375 0 +0.4688 0.4375 0.03125 +0.4688 0.4375 0.0625 +0.4688 0.4375 0.09375 +0.4688 0.4375 0.125 +0.4688 0.4375 0.1562 +0.4688 0.4375 0.1875 +0.4688 0.4375 0.2188 +0.4688 0.4375 0.25 +0.4688 0.4375 0.2812 +0.4688 0.4375 0.3125 +0.4688 0.4375 0.3438 +0.4688 0.4375 0.375 +0.4688 0.4375 0.4062 +0.4688 0.4375 0.4375 +0.4688 0.4375 0.4688 +0.4688 0.4375 0.5 +0.4688 0.4375 0.5312 +0.4688 0.4375 0.5625 +0.4688 0.4375 0.5938 +0.4688 0.4375 0.625 +0.4688 0.4375 0.6562 +0.4688 0.4375 0.6875 +0.4688 0.4375 0.7188 +0.4688 0.4375 0.75 +0.4688 0.4375 0.7812 +0.4688 0.4375 0.8125 +0.4688 0.4375 0.8438 +0.4688 0.4375 0.875 +0.4688 0.4375 0.9062 +0.4688 0.4375 0.9375 +0.4688 0.4375 0.9688 +0.4688 0.4375 1 +0.4688 0.4688 0 +0.4688 0.4688 0.03125 +0.4688 0.4688 0.0625 +0.4688 0.4688 0.09375 +0.4688 0.4688 0.125 +0.4688 0.4688 0.1562 +0.4688 0.4688 0.1875 +0.4688 0.4688 0.2188 +0.4688 0.4688 0.25 +0.4688 0.4688 0.2812 +0.4688 0.4688 0.3125 +0.4688 0.4688 0.3438 +0.4688 0.4688 0.375 +0.4688 0.4688 0.4062 +0.4688 0.4688 0.4375 +0.4688 0.4688 0.4688 +0.4688 0.4688 0.5 +0.4688 0.4688 0.5312 +0.4688 0.4688 0.5625 +0.4688 0.4688 0.5938 +0.4688 0.4688 0.625 +0.4688 0.4688 0.6562 +0.4688 0.4688 0.6875 +0.4688 0.4688 0.7188 +0.4688 0.4688 0.75 +0.4688 0.4688 0.7812 +0.4688 0.4688 0.8125 +0.4688 0.4688 0.8438 +0.4688 0.4688 0.875 +0.4688 0.4688 0.9062 +0.4688 0.4688 0.9375 +0.4688 0.4688 0.9688 +0.4688 0.4688 1 +0.4688 0.5 0 +0.4688 0.5 0.03125 +0.4688 0.5 0.0625 +0.4688 0.5 0.09375 +0.4688 0.5 0.125 +0.4688 0.5 0.1562 +0.4688 0.5 0.1875 +0.4688 0.5 0.2188 +0.4688 0.5 0.25 +0.4688 0.5 0.2812 +0.4688 0.5 0.3125 +0.4688 0.5 0.3438 +0.4688 0.5 0.375 +0.4688 0.5 0.4062 +0.4688 0.5 0.4375 +0.4688 0.5 0.4688 +0.4688 0.5 0.5 +0.4688 0.5 0.5312 +0.4688 0.5 0.5625 +0.4688 0.5 0.5938 +0.4688 0.5 0.625 +0.4688 0.5 0.6562 +0.4688 0.5 0.6875 +0.4688 0.5 0.7188 +0.4688 0.5 0.75 +0.4688 0.5 0.7812 +0.4688 0.5 0.8125 +0.4688 0.5 0.8438 +0.4688 0.5 0.875 +0.4688 0.5 0.9062 +0.4688 0.5 0.9375 +0.4688 0.5 0.9688 +0.4688 0.5 1 +0.4688 0.5312 0 +0.4688 0.5312 0.03125 +0.4688 0.5312 0.0625 +0.4688 0.5312 0.09375 +0.4688 0.5312 0.125 +0.4688 0.5312 0.1562 +0.4688 0.5312 0.1875 +0.4688 0.5312 0.2188 +0.4688 0.5312 0.25 +0.4688 0.5312 0.2812 +0.4688 0.5312 0.3125 +0.4688 0.5312 0.3438 +0.4688 0.5312 0.375 +0.4688 0.5312 0.4062 +0.4688 0.5312 0.4375 +0.4688 0.5312 0.4688 +0.4688 0.5312 0.5 +0.4688 0.5312 0.5312 +0.4688 0.5312 0.5625 +0.4688 0.5312 0.5938 +0.4688 0.5312 0.625 +0.4688 0.5312 0.6562 +0.4688 0.5312 0.6875 +0.4688 0.5312 0.7188 +0.4688 0.5312 0.75 +0.4688 0.5312 0.7812 +0.4688 0.5312 0.8125 +0.4688 0.5312 0.8438 +0.4688 0.5312 0.875 +0.4688 0.5312 0.9062 +0.4688 0.5312 0.9375 +0.4688 0.5312 0.9688 +0.4688 0.5312 1 +0.4688 0.5625 0 +0.4688 0.5625 0.03125 +0.4688 0.5625 0.0625 +0.4688 0.5625 0.09375 +0.4688 0.5625 0.125 +0.4688 0.5625 0.1562 +0.4688 0.5625 0.1875 +0.4688 0.5625 0.2188 +0.4688 0.5625 0.25 +0.4688 0.5625 0.2812 +0.4688 0.5625 0.3125 +0.4688 0.5625 0.3438 +0.4688 0.5625 0.375 +0.4688 0.5625 0.4062 +0.4688 0.5625 0.4375 +0.4688 0.5625 0.4688 +0.4688 0.5625 0.5 +0.4688 0.5625 0.5312 +0.4688 0.5625 0.5625 +0.4688 0.5625 0.5938 +0.4688 0.5625 0.625 +0.4688 0.5625 0.6562 +0.4688 0.5625 0.6875 +0.4688 0.5625 0.7188 +0.4688 0.5625 0.75 +0.4688 0.5625 0.7812 +0.4688 0.5625 0.8125 +0.4688 0.5625 0.8438 +0.4688 0.5625 0.875 +0.4688 0.5625 0.9062 +0.4688 0.5625 0.9375 +0.4688 0.5625 0.9688 +0.4688 0.5625 1 +0.4688 0.5938 0 +0.4688 0.5938 0.03125 +0.4688 0.5938 0.0625 +0.4688 0.5938 0.09375 +0.4688 0.5938 0.125 +0.4688 0.5938 0.1562 +0.4688 0.5938 0.1875 +0.4688 0.5938 0.2188 +0.4688 0.5938 0.25 +0.4688 0.5938 0.2812 +0.4688 0.5938 0.3125 +0.4688 0.5938 0.3438 +0.4688 0.5938 0.375 +0.4688 0.5938 0.4062 +0.4688 0.5938 0.4375 +0.4688 0.5938 0.4688 +0.4688 0.5938 0.5 +0.4688 0.5938 0.5312 +0.4688 0.5938 0.5625 +0.4688 0.5938 0.5938 +0.4688 0.5938 0.625 +0.4688 0.5938 0.6562 +0.4688 0.5938 0.6875 +0.4688 0.5938 0.7188 +0.4688 0.5938 0.75 +0.4688 0.5938 0.7812 +0.4688 0.5938 0.8125 +0.4688 0.5938 0.8438 +0.4688 0.5938 0.875 +0.4688 0.5938 0.9062 +0.4688 0.5938 0.9375 +0.4688 0.5938 0.9688 +0.4688 0.5938 1 +0.4688 0.625 0 +0.4688 0.625 0.03125 +0.4688 0.625 0.0625 +0.4688 0.625 0.09375 +0.4688 0.625 0.125 +0.4688 0.625 0.1562 +0.4688 0.625 0.1875 +0.4688 0.625 0.2188 +0.4688 0.625 0.25 +0.4688 0.625 0.2812 +0.4688 0.625 0.3125 +0.4688 0.625 0.3438 +0.4688 0.625 0.375 +0.4688 0.625 0.4062 +0.4688 0.625 0.4375 +0.4688 0.625 0.4688 +0.4688 0.625 0.5 +0.4688 0.625 0.5312 +0.4688 0.625 0.5625 +0.4688 0.625 0.5938 +0.4688 0.625 0.625 +0.4688 0.625 0.6562 +0.4688 0.625 0.6875 +0.4688 0.625 0.7188 +0.4688 0.625 0.75 +0.4688 0.625 0.7812 +0.4688 0.625 0.8125 +0.4688 0.625 0.8438 +0.4688 0.625 0.875 +0.4688 0.625 0.9062 +0.4688 0.625 0.9375 +0.4688 0.625 0.9688 +0.4688 0.625 1 +0.4688 0.6562 0 +0.4688 0.6562 0.03125 +0.4688 0.6562 0.0625 +0.4688 0.6562 0.09375 +0.4688 0.6562 0.125 +0.4688 0.6562 0.1562 +0.4688 0.6562 0.1875 +0.4688 0.6562 0.2188 +0.4688 0.6562 0.25 +0.4688 0.6562 0.2812 +0.4688 0.6562 0.3125 +0.4688 0.6562 0.3438 +0.4688 0.6562 0.375 +0.4688 0.6562 0.4062 +0.4688 0.6562 0.4375 +0.4688 0.6562 0.4688 +0.4688 0.6562 0.5 +0.4688 0.6562 0.5312 +0.4688 0.6562 0.5625 +0.4688 0.6562 0.5938 +0.4688 0.6562 0.625 +0.4688 0.6562 0.6562 +0.4688 0.6562 0.6875 +0.4688 0.6562 0.7188 +0.4688 0.6562 0.75 +0.4688 0.6562 0.7812 +0.4688 0.6562 0.8125 +0.4688 0.6562 0.8438 +0.4688 0.6562 0.875 +0.4688 0.6562 0.9062 +0.4688 0.6562 0.9375 +0.4688 0.6562 0.9688 +0.4688 0.6562 1 +0.4688 0.6875 0 +0.4688 0.6875 0.03125 +0.4688 0.6875 0.0625 +0.4688 0.6875 0.09375 +0.4688 0.6875 0.125 +0.4688 0.6875 0.1562 +0.4688 0.6875 0.1875 +0.4688 0.6875 0.2188 +0.4688 0.6875 0.25 +0.4688 0.6875 0.2812 +0.4688 0.6875 0.3125 +0.4688 0.6875 0.3438 +0.4688 0.6875 0.375 +0.4688 0.6875 0.4062 +0.4688 0.6875 0.4375 +0.4688 0.6875 0.4688 +0.4688 0.6875 0.5 +0.4688 0.6875 0.5312 +0.4688 0.6875 0.5625 +0.4688 0.6875 0.5938 +0.4688 0.6875 0.625 +0.4688 0.6875 0.6562 +0.4688 0.6875 0.6875 +0.4688 0.6875 0.7188 +0.4688 0.6875 0.75 +0.4688 0.6875 0.7812 +0.4688 0.6875 0.8125 +0.4688 0.6875 0.8438 +0.4688 0.6875 0.875 +0.4688 0.6875 0.9062 +0.4688 0.6875 0.9375 +0.4688 0.6875 0.9688 +0.4688 0.6875 1 +0.4688 0.7188 0 +0.4688 0.7188 0.03125 +0.4688 0.7188 0.0625 +0.4688 0.7188 0.09375 +0.4688 0.7188 0.125 +0.4688 0.7188 0.1562 +0.4688 0.7188 0.1875 +0.4688 0.7188 0.2188 +0.4688 0.7188 0.25 +0.4688 0.7188 0.2812 +0.4688 0.7188 0.3125 +0.4688 0.7188 0.3438 +0.4688 0.7188 0.375 +0.4688 0.7188 0.4062 +0.4688 0.7188 0.4375 +0.4688 0.7188 0.4688 +0.4688 0.7188 0.5 +0.4688 0.7188 0.5312 +0.4688 0.7188 0.5625 +0.4688 0.7188 0.5938 +0.4688 0.7188 0.625 +0.4688 0.7188 0.6562 +0.4688 0.7188 0.6875 +0.4688 0.7188 0.7188 +0.4688 0.7188 0.75 +0.4688 0.7188 0.7812 +0.4688 0.7188 0.8125 +0.4688 0.7188 0.8438 +0.4688 0.7188 0.875 +0.4688 0.7188 0.9062 +0.4688 0.7188 0.9375 +0.4688 0.7188 0.9688 +0.4688 0.7188 1 +0.4688 0.75 0 +0.4688 0.75 0.03125 +0.4688 0.75 0.0625 +0.4688 0.75 0.09375 +0.4688 0.75 0.125 +0.4688 0.75 0.1562 +0.4688 0.75 0.1875 +0.4688 0.75 0.2188 +0.4688 0.75 0.25 +0.4688 0.75 0.2812 +0.4688 0.75 0.3125 +0.4688 0.75 0.3438 +0.4688 0.75 0.375 +0.4688 0.75 0.4062 +0.4688 0.75 0.4375 +0.4688 0.75 0.4688 +0.4688 0.75 0.5 +0.4688 0.75 0.5312 +0.4688 0.75 0.5625 +0.4688 0.75 0.5938 +0.4688 0.75 0.625 +0.4688 0.75 0.6562 +0.4688 0.75 0.6875 +0.4688 0.75 0.7188 +0.4688 0.75 0.75 +0.4688 0.75 0.7812 +0.4688 0.75 0.8125 +0.4688 0.75 0.8438 +0.4688 0.75 0.875 +0.4688 0.75 0.9062 +0.4688 0.75 0.9375 +0.4688 0.75 0.9688 +0.4688 0.75 1 +0.4688 0.7812 0 +0.4688 0.7812 0.03125 +0.4688 0.7812 0.0625 +0.4688 0.7812 0.09375 +0.4688 0.7812 0.125 +0.4688 0.7812 0.1562 +0.4688 0.7812 0.1875 +0.4688 0.7812 0.2188 +0.4688 0.7812 0.25 +0.4688 0.7812 0.2812 +0.4688 0.7812 0.3125 +0.4688 0.7812 0.3438 +0.4688 0.7812 0.375 +0.4688 0.7812 0.4062 +0.4688 0.7812 0.4375 +0.4688 0.7812 0.4688 +0.4688 0.7812 0.5 +0.4688 0.7812 0.5312 +0.4688 0.7812 0.5625 +0.4688 0.7812 0.5938 +0.4688 0.7812 0.625 +0.4688 0.7812 0.6562 +0.4688 0.7812 0.6875 +0.4688 0.7812 0.7188 +0.4688 0.7812 0.75 +0.4688 0.7812 0.7812 +0.4688 0.7812 0.8125 +0.4688 0.7812 0.8438 +0.4688 0.7812 0.875 +0.4688 0.7812 0.9062 +0.4688 0.7812 0.9375 +0.4688 0.7812 0.9688 +0.4688 0.7812 1 +0.4688 0.8125 0 +0.4688 0.8125 0.03125 +0.4688 0.8125 0.0625 +0.4688 0.8125 0.09375 +0.4688 0.8125 0.125 +0.4688 0.8125 0.1562 +0.4688 0.8125 0.1875 +0.4688 0.8125 0.2188 +0.4688 0.8125 0.25 +0.4688 0.8125 0.2812 +0.4688 0.8125 0.3125 +0.4688 0.8125 0.3438 +0.4688 0.8125 0.375 +0.4688 0.8125 0.4062 +0.4688 0.8125 0.4375 +0.4688 0.8125 0.4688 +0.4688 0.8125 0.5 +0.4688 0.8125 0.5312 +0.4688 0.8125 0.5625 +0.4688 0.8125 0.5938 +0.4688 0.8125 0.625 +0.4688 0.8125 0.6562 +0.4688 0.8125 0.6875 +0.4688 0.8125 0.7188 +0.4688 0.8125 0.75 +0.4688 0.8125 0.7812 +0.4688 0.8125 0.8125 +0.4688 0.8125 0.8438 +0.4688 0.8125 0.875 +0.4688 0.8125 0.9062 +0.4688 0.8125 0.9375 +0.4688 0.8125 0.9688 +0.4688 0.8125 1 +0.4688 0.8438 0 +0.4688 0.8438 0.03125 +0.4688 0.8438 0.0625 +0.4688 0.8438 0.09375 +0.4688 0.8438 0.125 +0.4688 0.8438 0.1562 +0.4688 0.8438 0.1875 +0.4688 0.8438 0.2188 +0.4688 0.8438 0.25 +0.4688 0.8438 0.2812 +0.4688 0.8438 0.3125 +0.4688 0.8438 0.3438 +0.4688 0.8438 0.375 +0.4688 0.8438 0.4062 +0.4688 0.8438 0.4375 +0.4688 0.8438 0.4688 +0.4688 0.8438 0.5 +0.4688 0.8438 0.5312 +0.4688 0.8438 0.5625 +0.4688 0.8438 0.5938 +0.4688 0.8438 0.625 +0.4688 0.8438 0.6562 +0.4688 0.8438 0.6875 +0.4688 0.8438 0.7188 +0.4688 0.8438 0.75 +0.4688 0.8438 0.7812 +0.4688 0.8438 0.8125 +0.4688 0.8438 0.8438 +0.4688 0.8438 0.875 +0.4688 0.8438 0.9062 +0.4688 0.8438 0.9375 +0.4688 0.8438 0.9688 +0.4688 0.8438 1 +0.4688 0.875 0 +0.4688 0.875 0.03125 +0.4688 0.875 0.0625 +0.4688 0.875 0.09375 +0.4688 0.875 0.125 +0.4688 0.875 0.1562 +0.4688 0.875 0.1875 +0.4688 0.875 0.2188 +0.4688 0.875 0.25 +0.4688 0.875 0.2812 +0.4688 0.875 0.3125 +0.4688 0.875 0.3438 +0.4688 0.875 0.375 +0.4688 0.875 0.4062 +0.4688 0.875 0.4375 +0.4688 0.875 0.4688 +0.4688 0.875 0.5 +0.4688 0.875 0.5312 +0.4688 0.875 0.5625 +0.4688 0.875 0.5938 +0.4688 0.875 0.625 +0.4688 0.875 0.6562 +0.4688 0.875 0.6875 +0.4688 0.875 0.7188 +0.4688 0.875 0.75 +0.4688 0.875 0.7812 +0.4688 0.875 0.8125 +0.4688 0.875 0.8438 +0.4688 0.875 0.875 +0.4688 0.875 0.9062 +0.4688 0.875 0.9375 +0.4688 0.875 0.9688 +0.4688 0.875 1 +0.4688 0.9062 0 +0.4688 0.9062 0.03125 +0.4688 0.9062 0.0625 +0.4688 0.9062 0.09375 +0.4688 0.9062 0.125 +0.4688 0.9062 0.1562 +0.4688 0.9062 0.1875 +0.4688 0.9062 0.2188 +0.4688 0.9062 0.25 +0.4688 0.9062 0.2812 +0.4688 0.9062 0.3125 +0.4688 0.9062 0.3438 +0.4688 0.9062 0.375 +0.4688 0.9062 0.4062 +0.4688 0.9062 0.4375 +0.4688 0.9062 0.4688 +0.4688 0.9062 0.5 +0.4688 0.9062 0.5312 +0.4688 0.9062 0.5625 +0.4688 0.9062 0.5938 +0.4688 0.9062 0.625 +0.4688 0.9062 0.6562 +0.4688 0.9062 0.6875 +0.4688 0.9062 0.7188 +0.4688 0.9062 0.75 +0.4688 0.9062 0.7812 +0.4688 0.9062 0.8125 +0.4688 0.9062 0.8438 +0.4688 0.9062 0.875 +0.4688 0.9062 0.9062 +0.4688 0.9062 0.9375 +0.4688 0.9062 0.9688 +0.4688 0.9062 1 +0.4688 0.9375 0 +0.4688 0.9375 0.03125 +0.4688 0.9375 0.0625 +0.4688 0.9375 0.09375 +0.4688 0.9375 0.125 +0.4688 0.9375 0.1562 +0.4688 0.9375 0.1875 +0.4688 0.9375 0.2188 +0.4688 0.9375 0.25 +0.4688 0.9375 0.2812 +0.4688 0.9375 0.3125 +0.4688 0.9375 0.3438 +0.4688 0.9375 0.375 +0.4688 0.9375 0.4062 +0.4688 0.9375 0.4375 +0.4688 0.9375 0.4688 +0.4688 0.9375 0.5 +0.4688 0.9375 0.5312 +0.4688 0.9375 0.5625 +0.4688 0.9375 0.5938 +0.4688 0.9375 0.625 +0.4688 0.9375 0.6562 +0.4688 0.9375 0.6875 +0.4688 0.9375 0.7188 +0.4688 0.9375 0.75 +0.4688 0.9375 0.7812 +0.4688 0.9375 0.8125 +0.4688 0.9375 0.8438 +0.4688 0.9375 0.875 +0.4688 0.9375 0.9062 +0.4688 0.9375 0.9375 +0.4688 0.9375 0.9688 +0.4688 0.9375 1 +0.4688 0.9688 0 +0.4688 0.9688 0.03125 +0.4688 0.9688 0.0625 +0.4688 0.9688 0.09375 +0.4688 0.9688 0.125 +0.4688 0.9688 0.1562 +0.4688 0.9688 0.1875 +0.4688 0.9688 0.2188 +0.4688 0.9688 0.25 +0.4688 0.9688 0.2812 +0.4688 0.9688 0.3125 +0.4688 0.9688 0.3438 +0.4688 0.9688 0.375 +0.4688 0.9688 0.4062 +0.4688 0.9688 0.4375 +0.4688 0.9688 0.4688 +0.4688 0.9688 0.5 +0.4688 0.9688 0.5312 +0.4688 0.9688 0.5625 +0.4688 0.9688 0.5938 +0.4688 0.9688 0.625 +0.4688 0.9688 0.6562 +0.4688 0.9688 0.6875 +0.4688 0.9688 0.7188 +0.4688 0.9688 0.75 +0.4688 0.9688 0.7812 +0.4688 0.9688 0.8125 +0.4688 0.9688 0.8438 +0.4688 0.9688 0.875 +0.4688 0.9688 0.9062 +0.4688 0.9688 0.9375 +0.4688 0.9688 0.9688 +0.4688 0.9688 1 +0.4688 1 0 +0.4688 1 0.03125 +0.4688 1 0.0625 +0.4688 1 0.09375 +0.4688 1 0.125 +0.4688 1 0.1562 +0.4688 1 0.1875 +0.4688 1 0.2188 +0.4688 1 0.25 +0.4688 1 0.2812 +0.4688 1 0.3125 +0.4688 1 0.3438 +0.4688 1 0.375 +0.4688 1 0.4062 +0.4688 1 0.4375 +0.4688 1 0.4688 +0.4688 1 0.5 +0.4688 1 0.5312 +0.4688 1 0.5625 +0.4688 1 0.5938 +0.4688 1 0.625 +0.4688 1 0.6562 +0.4688 1 0.6875 +0.4688 1 0.7188 +0.4688 1 0.75 +0.4688 1 0.7812 +0.4688 1 0.8125 +0.4688 1 0.8438 +0.4688 1 0.875 +0.4688 1 0.9062 +0.4688 1 0.9375 +0.4688 1 0.9688 +0.4688 1 1 +0.5 0 0 +0.5 0 0.03125 +0.5 0 0.0625 +0.5 0 0.09375 +0.5 0 0.125 +0.5 0 0.1562 +0.5 0 0.1875 +0.5 0 0.2188 +0.5 0 0.25 +0.5 0 0.2812 +0.5 0 0.3125 +0.5 0 0.3438 +0.5 0 0.375 +0.5 0 0.4062 +0.5 0 0.4375 +0.5 0 0.4688 +0.5 0 0.5 +0.5 0 0.5312 +0.5 0 0.5625 +0.5 0 0.5938 +0.5 0 0.625 +0.5 0 0.6562 +0.5 0 0.6875 +0.5 0 0.7188 +0.5 0 0.75 +0.5 0 0.7812 +0.5 0 0.8125 +0.5 0 0.8438 +0.5 0 0.875 +0.5 0 0.9062 +0.5 0 0.9375 +0.5 0 0.9688 +0.5 0 1 +0.5 0.03125 0 +0.5 0.03125 0.03125 +0.5 0.03125 0.0625 +0.5 0.03125 0.09375 +0.5 0.03125 0.125 +0.5 0.03125 0.1562 +0.5 0.03125 0.1875 +0.5 0.03125 0.2188 +0.5 0.03125 0.25 +0.5 0.03125 0.2812 +0.5 0.03125 0.3125 +0.5 0.03125 0.3438 +0.5 0.03125 0.375 +0.5 0.03125 0.4062 +0.5 0.03125 0.4375 +0.5 0.03125 0.4688 +0.5 0.03125 0.5 +0.5 0.03125 0.5312 +0.5 0.03125 0.5625 +0.5 0.03125 0.5938 +0.5 0.03125 0.625 +0.5 0.03125 0.6562 +0.5 0.03125 0.6875 +0.5 0.03125 0.7188 +0.5 0.03125 0.75 +0.5 0.03125 0.7812 +0.5 0.03125 0.8125 +0.5 0.03125 0.8438 +0.5 0.03125 0.875 +0.5 0.03125 0.9062 +0.5 0.03125 0.9375 +0.5 0.03125 0.9688 +0.5 0.03125 1 +0.5 0.0625 0 +0.5 0.0625 0.03125 +0.5 0.0625 0.0625 +0.5 0.0625 0.09375 +0.5 0.0625 0.125 +0.5 0.0625 0.1562 +0.5 0.0625 0.1875 +0.5 0.0625 0.2188 +0.5 0.0625 0.25 +0.5 0.0625 0.2812 +0.5 0.0625 0.3125 +0.5 0.0625 0.3438 +0.5 0.0625 0.375 +0.5 0.0625 0.4062 +0.5 0.0625 0.4375 +0.5 0.0625 0.4688 +0.5 0.0625 0.5 +0.5 0.0625 0.5312 +0.5 0.0625 0.5625 +0.5 0.0625 0.5938 +0.5 0.0625 0.625 +0.5 0.0625 0.6562 +0.5 0.0625 0.6875 +0.5 0.0625 0.7188 +0.5 0.0625 0.75 +0.5 0.0625 0.7812 +0.5 0.0625 0.8125 +0.5 0.0625 0.8438 +0.5 0.0625 0.875 +0.5 0.0625 0.9062 +0.5 0.0625 0.9375 +0.5 0.0625 0.9688 +0.5 0.0625 1 +0.5 0.09375 0 +0.5 0.09375 0.03125 +0.5 0.09375 0.0625 +0.5 0.09375 0.09375 +0.5 0.09375 0.125 +0.5 0.09375 0.1562 +0.5 0.09375 0.1875 +0.5 0.09375 0.2188 +0.5 0.09375 0.25 +0.5 0.09375 0.2812 +0.5 0.09375 0.3125 +0.5 0.09375 0.3438 +0.5 0.09375 0.375 +0.5 0.09375 0.4062 +0.5 0.09375 0.4375 +0.5 0.09375 0.4688 +0.5 0.09375 0.5 +0.5 0.09375 0.5312 +0.5 0.09375 0.5625 +0.5 0.09375 0.5938 +0.5 0.09375 0.625 +0.5 0.09375 0.6562 +0.5 0.09375 0.6875 +0.5 0.09375 0.7188 +0.5 0.09375 0.75 +0.5 0.09375 0.7812 +0.5 0.09375 0.8125 +0.5 0.09375 0.8438 +0.5 0.09375 0.875 +0.5 0.09375 0.9062 +0.5 0.09375 0.9375 +0.5 0.09375 0.9688 +0.5 0.09375 1 +0.5 0.125 0 +0.5 0.125 0.03125 +0.5 0.125 0.0625 +0.5 0.125 0.09375 +0.5 0.125 0.125 +0.5 0.125 0.1562 +0.5 0.125 0.1875 +0.5 0.125 0.2188 +0.5 0.125 0.25 +0.5 0.125 0.2812 +0.5 0.125 0.3125 +0.5 0.125 0.3438 +0.5 0.125 0.375 +0.5 0.125 0.4062 +0.5 0.125 0.4375 +0.5 0.125 0.4688 +0.5 0.125 0.5 +0.5 0.125 0.5312 +0.5 0.125 0.5625 +0.5 0.125 0.5938 +0.5 0.125 0.625 +0.5 0.125 0.6562 +0.5 0.125 0.6875 +0.5 0.125 0.7188 +0.5 0.125 0.75 +0.5 0.125 0.7812 +0.5 0.125 0.8125 +0.5 0.125 0.8438 +0.5 0.125 0.875 +0.5 0.125 0.9062 +0.5 0.125 0.9375 +0.5 0.125 0.9688 +0.5 0.125 1 +0.5 0.1562 0 +0.5 0.1562 0.03125 +0.5 0.1562 0.0625 +0.5 0.1562 0.09375 +0.5 0.1562 0.125 +0.5 0.1562 0.1562 +0.5 0.1562 0.1875 +0.5 0.1562 0.2188 +0.5 0.1562 0.25 +0.5 0.1562 0.2812 +0.5 0.1562 0.3125 +0.5 0.1562 0.3438 +0.5 0.1562 0.375 +0.5 0.1562 0.4062 +0.5 0.1562 0.4375 +0.5 0.1562 0.4688 +0.5 0.1562 0.5 +0.5 0.1562 0.5312 +0.5 0.1562 0.5625 +0.5 0.1562 0.5938 +0.5 0.1562 0.625 +0.5 0.1562 0.6562 +0.5 0.1562 0.6875 +0.5 0.1562 0.7188 +0.5 0.1562 0.75 +0.5 0.1562 0.7812 +0.5 0.1562 0.8125 +0.5 0.1562 0.8438 +0.5 0.1562 0.875 +0.5 0.1562 0.9062 +0.5 0.1562 0.9375 +0.5 0.1562 0.9688 +0.5 0.1562 1 +0.5 0.1875 0 +0.5 0.1875 0.03125 +0.5 0.1875 0.0625 +0.5 0.1875 0.09375 +0.5 0.1875 0.125 +0.5 0.1875 0.1562 +0.5 0.1875 0.1875 +0.5 0.1875 0.2188 +0.5 0.1875 0.25 +0.5 0.1875 0.2812 +0.5 0.1875 0.3125 +0.5 0.1875 0.3438 +0.5 0.1875 0.375 +0.5 0.1875 0.4062 +0.5 0.1875 0.4375 +0.5 0.1875 0.4688 +0.5 0.1875 0.5 +0.5 0.1875 0.5312 +0.5 0.1875 0.5625 +0.5 0.1875 0.5938 +0.5 0.1875 0.625 +0.5 0.1875 0.6562 +0.5 0.1875 0.6875 +0.5 0.1875 0.7188 +0.5 0.1875 0.75 +0.5 0.1875 0.7812 +0.5 0.1875 0.8125 +0.5 0.1875 0.8438 +0.5 0.1875 0.875 +0.5 0.1875 0.9062 +0.5 0.1875 0.9375 +0.5 0.1875 0.9688 +0.5 0.1875 1 +0.5 0.2188 0 +0.5 0.2188 0.03125 +0.5 0.2188 0.0625 +0.5 0.2188 0.09375 +0.5 0.2188 0.125 +0.5 0.2188 0.1562 +0.5 0.2188 0.1875 +0.5 0.2188 0.2188 +0.5 0.2188 0.25 +0.5 0.2188 0.2812 +0.5 0.2188 0.3125 +0.5 0.2188 0.3438 +0.5 0.2188 0.375 +0.5 0.2188 0.4062 +0.5 0.2188 0.4375 +0.5 0.2188 0.4688 +0.5 0.2188 0.5 +0.5 0.2188 0.5312 +0.5 0.2188 0.5625 +0.5 0.2188 0.5938 +0.5 0.2188 0.625 +0.5 0.2188 0.6562 +0.5 0.2188 0.6875 +0.5 0.2188 0.7188 +0.5 0.2188 0.75 +0.5 0.2188 0.7812 +0.5 0.2188 0.8125 +0.5 0.2188 0.8438 +0.5 0.2188 0.875 +0.5 0.2188 0.9062 +0.5 0.2188 0.9375 +0.5 0.2188 0.9688 +0.5 0.2188 1 +0.5 0.25 0 +0.5 0.25 0.03125 +0.5 0.25 0.0625 +0.5 0.25 0.09375 +0.5 0.25 0.125 +0.5 0.25 0.1562 +0.5 0.25 0.1875 +0.5 0.25 0.2188 +0.5 0.25 0.25 +0.5 0.25 0.2812 +0.5 0.25 0.3125 +0.5 0.25 0.3438 +0.5 0.25 0.375 +0.5 0.25 0.4062 +0.5 0.25 0.4375 +0.5 0.25 0.4688 +0.5 0.25 0.5 +0.5 0.25 0.5312 +0.5 0.25 0.5625 +0.5 0.25 0.5938 +0.5 0.25 0.625 +0.5 0.25 0.6562 +0.5 0.25 0.6875 +0.5 0.25 0.7188 +0.5 0.25 0.75 +0.5 0.25 0.7812 +0.5 0.25 0.8125 +0.5 0.25 0.8438 +0.5 0.25 0.875 +0.5 0.25 0.9062 +0.5 0.25 0.9375 +0.5 0.25 0.9688 +0.5 0.25 1 +0.5 0.2812 0 +0.5 0.2812 0.03125 +0.5 0.2812 0.0625 +0.5 0.2812 0.09375 +0.5 0.2812 0.125 +0.5 0.2812 0.1562 +0.5 0.2812 0.1875 +0.5 0.2812 0.2188 +0.5 0.2812 0.25 +0.5 0.2812 0.2812 +0.5 0.2812 0.3125 +0.5 0.2812 0.3438 +0.5 0.2812 0.375 +0.5 0.2812 0.4062 +0.5 0.2812 0.4375 +0.5 0.2812 0.4688 +0.5 0.2812 0.5 +0.5 0.2812 0.5312 +0.5 0.2812 0.5625 +0.5 0.2812 0.5938 +0.5 0.2812 0.625 +0.5 0.2812 0.6562 +0.5 0.2812 0.6875 +0.5 0.2812 0.7188 +0.5 0.2812 0.75 +0.5 0.2812 0.7812 +0.5 0.2812 0.8125 +0.5 0.2812 0.8438 +0.5 0.2812 0.875 +0.5 0.2812 0.9062 +0.5 0.2812 0.9375 +0.5 0.2812 0.9688 +0.5 0.2812 1 +0.5 0.3125 0 +0.5 0.3125 0.03125 +0.5 0.3125 0.0625 +0.5 0.3125 0.09375 +0.5 0.3125 0.125 +0.5 0.3125 0.1562 +0.5 0.3125 0.1875 +0.5 0.3125 0.2188 +0.5 0.3125 0.25 +0.5 0.3125 0.2812 +0.5 0.3125 0.3125 +0.5 0.3125 0.3438 +0.5 0.3125 0.375 +0.5 0.3125 0.4062 +0.5 0.3125 0.4375 +0.5 0.3125 0.4688 +0.5 0.3125 0.5 +0.5 0.3125 0.5312 +0.5 0.3125 0.5625 +0.5 0.3125 0.5938 +0.5 0.3125 0.625 +0.5 0.3125 0.6562 +0.5 0.3125 0.6875 +0.5 0.3125 0.7188 +0.5 0.3125 0.75 +0.5 0.3125 0.7812 +0.5 0.3125 0.8125 +0.5 0.3125 0.8438 +0.5 0.3125 0.875 +0.5 0.3125 0.9062 +0.5 0.3125 0.9375 +0.5 0.3125 0.9688 +0.5 0.3125 1 +0.5 0.3438 0 +0.5 0.3438 0.03125 +0.5 0.3438 0.0625 +0.5 0.3438 0.09375 +0.5 0.3438 0.125 +0.5 0.3438 0.1562 +0.5 0.3438 0.1875 +0.5 0.3438 0.2188 +0.5 0.3438 0.25 +0.5 0.3438 0.2812 +0.5 0.3438 0.3125 +0.5 0.3438 0.3438 +0.5 0.3438 0.375 +0.5 0.3438 0.4062 +0.5 0.3438 0.4375 +0.5 0.3438 0.4688 +0.5 0.3438 0.5 +0.5 0.3438 0.5312 +0.5 0.3438 0.5625 +0.5 0.3438 0.5938 +0.5 0.3438 0.625 +0.5 0.3438 0.6562 +0.5 0.3438 0.6875 +0.5 0.3438 0.7188 +0.5 0.3438 0.75 +0.5 0.3438 0.7812 +0.5 0.3438 0.8125 +0.5 0.3438 0.8438 +0.5 0.3438 0.875 +0.5 0.3438 0.9062 +0.5 0.3438 0.9375 +0.5 0.3438 0.9688 +0.5 0.3438 1 +0.5 0.375 0 +0.5 0.375 0.03125 +0.5 0.375 0.0625 +0.5 0.375 0.09375 +0.5 0.375 0.125 +0.5 0.375 0.1562 +0.5 0.375 0.1875 +0.5 0.375 0.2188 +0.5 0.375 0.25 +0.5 0.375 0.2812 +0.5 0.375 0.3125 +0.5 0.375 0.3438 +0.5 0.375 0.375 +0.5 0.375 0.4062 +0.5 0.375 0.4375 +0.5 0.375 0.4688 +0.5 0.375 0.5 +0.5 0.375 0.5312 +0.5 0.375 0.5625 +0.5 0.375 0.5938 +0.5 0.375 0.625 +0.5 0.375 0.6562 +0.5 0.375 0.6875 +0.5 0.375 0.7188 +0.5 0.375 0.75 +0.5 0.375 0.7812 +0.5 0.375 0.8125 +0.5 0.375 0.8438 +0.5 0.375 0.875 +0.5 0.375 0.9062 +0.5 0.375 0.9375 +0.5 0.375 0.9688 +0.5 0.375 1 +0.5 0.4062 0 +0.5 0.4062 0.03125 +0.5 0.4062 0.0625 +0.5 0.4062 0.09375 +0.5 0.4062 0.125 +0.5 0.4062 0.1562 +0.5 0.4062 0.1875 +0.5 0.4062 0.2188 +0.5 0.4062 0.25 +0.5 0.4062 0.2812 +0.5 0.4062 0.3125 +0.5 0.4062 0.3438 +0.5 0.4062 0.375 +0.5 0.4062 0.4062 +0.5 0.4062 0.4375 +0.5 0.4062 0.4688 +0.5 0.4062 0.5 +0.5 0.4062 0.5312 +0.5 0.4062 0.5625 +0.5 0.4062 0.5938 +0.5 0.4062 0.625 +0.5 0.4062 0.6562 +0.5 0.4062 0.6875 +0.5 0.4062 0.7188 +0.5 0.4062 0.75 +0.5 0.4062 0.7812 +0.5 0.4062 0.8125 +0.5 0.4062 0.8438 +0.5 0.4062 0.875 +0.5 0.4062 0.9062 +0.5 0.4062 0.9375 +0.5 0.4062 0.9688 +0.5 0.4062 1 +0.5 0.4375 0 +0.5 0.4375 0.03125 +0.5 0.4375 0.0625 +0.5 0.4375 0.09375 +0.5 0.4375 0.125 +0.5 0.4375 0.1562 +0.5 0.4375 0.1875 +0.5 0.4375 0.2188 +0.5 0.4375 0.25 +0.5 0.4375 0.2812 +0.5 0.4375 0.3125 +0.5 0.4375 0.3438 +0.5 0.4375 0.375 +0.5 0.4375 0.4062 +0.5 0.4375 0.4375 +0.5 0.4375 0.4688 +0.5 0.4375 0.5 +0.5 0.4375 0.5312 +0.5 0.4375 0.5625 +0.5 0.4375 0.5938 +0.5 0.4375 0.625 +0.5 0.4375 0.6562 +0.5 0.4375 0.6875 +0.5 0.4375 0.7188 +0.5 0.4375 0.75 +0.5 0.4375 0.7812 +0.5 0.4375 0.8125 +0.5 0.4375 0.8438 +0.5 0.4375 0.875 +0.5 0.4375 0.9062 +0.5 0.4375 0.9375 +0.5 0.4375 0.9688 +0.5 0.4375 1 +0.5 0.4688 0 +0.5 0.4688 0.03125 +0.5 0.4688 0.0625 +0.5 0.4688 0.09375 +0.5 0.4688 0.125 +0.5 0.4688 0.1562 +0.5 0.4688 0.1875 +0.5 0.4688 0.2188 +0.5 0.4688 0.25 +0.5 0.4688 0.2812 +0.5 0.4688 0.3125 +0.5 0.4688 0.3438 +0.5 0.4688 0.375 +0.5 0.4688 0.4062 +0.5 0.4688 0.4375 +0.5 0.4688 0.4688 +0.5 0.4688 0.5 +0.5 0.4688 0.5312 +0.5 0.4688 0.5625 +0.5 0.4688 0.5938 +0.5 0.4688 0.625 +0.5 0.4688 0.6562 +0.5 0.4688 0.6875 +0.5 0.4688 0.7188 +0.5 0.4688 0.75 +0.5 0.4688 0.7812 +0.5 0.4688 0.8125 +0.5 0.4688 0.8438 +0.5 0.4688 0.875 +0.5 0.4688 0.9062 +0.5 0.4688 0.9375 +0.5 0.4688 0.9688 +0.5 0.4688 1 +0.5 0.5 0 +0.5 0.5 0.03125 +0.5 0.5 0.0625 +0.5 0.5 0.09375 +0.5 0.5 0.125 +0.5 0.5 0.1562 +0.5 0.5 0.1875 +0.5 0.5 0.2188 +0.5 0.5 0.25 +0.5 0.5 0.2812 +0.5 0.5 0.3125 +0.5 0.5 0.3438 +0.5 0.5 0.375 +0.5 0.5 0.4062 +0.5 0.5 0.4375 +0.5 0.5 0.4688 +0.5 0.5 0.5 +0.5 0.5 0.5312 +0.5 0.5 0.5625 +0.5 0.5 0.5938 +0.5 0.5 0.625 +0.5 0.5 0.6562 +0.5 0.5 0.6875 +0.5 0.5 0.7188 +0.5 0.5 0.75 +0.5 0.5 0.7812 +0.5 0.5 0.8125 +0.5 0.5 0.8438 +0.5 0.5 0.875 +0.5 0.5 0.9062 +0.5 0.5 0.9375 +0.5 0.5 0.9688 +0.5 0.5 1 +0.5 0.5312 0 +0.5 0.5312 0.03125 +0.5 0.5312 0.0625 +0.5 0.5312 0.09375 +0.5 0.5312 0.125 +0.5 0.5312 0.1562 +0.5 0.5312 0.1875 +0.5 0.5312 0.2188 +0.5 0.5312 0.25 +0.5 0.5312 0.2812 +0.5 0.5312 0.3125 +0.5 0.5312 0.3438 +0.5 0.5312 0.375 +0.5 0.5312 0.4062 +0.5 0.5312 0.4375 +0.5 0.5312 0.4688 +0.5 0.5312 0.5 +0.5 0.5312 0.5312 +0.5 0.5312 0.5625 +0.5 0.5312 0.5938 +0.5 0.5312 0.625 +0.5 0.5312 0.6562 +0.5 0.5312 0.6875 +0.5 0.5312 0.7188 +0.5 0.5312 0.75 +0.5 0.5312 0.7812 +0.5 0.5312 0.8125 +0.5 0.5312 0.8438 +0.5 0.5312 0.875 +0.5 0.5312 0.9062 +0.5 0.5312 0.9375 +0.5 0.5312 0.9688 +0.5 0.5312 1 +0.5 0.5625 0 +0.5 0.5625 0.03125 +0.5 0.5625 0.0625 +0.5 0.5625 0.09375 +0.5 0.5625 0.125 +0.5 0.5625 0.1562 +0.5 0.5625 0.1875 +0.5 0.5625 0.2188 +0.5 0.5625 0.25 +0.5 0.5625 0.2812 +0.5 0.5625 0.3125 +0.5 0.5625 0.3438 +0.5 0.5625 0.375 +0.5 0.5625 0.4062 +0.5 0.5625 0.4375 +0.5 0.5625 0.4688 +0.5 0.5625 0.5 +0.5 0.5625 0.5312 +0.5 0.5625 0.5625 +0.5 0.5625 0.5938 +0.5 0.5625 0.625 +0.5 0.5625 0.6562 +0.5 0.5625 0.6875 +0.5 0.5625 0.7188 +0.5 0.5625 0.75 +0.5 0.5625 0.7812 +0.5 0.5625 0.8125 +0.5 0.5625 0.8438 +0.5 0.5625 0.875 +0.5 0.5625 0.9062 +0.5 0.5625 0.9375 +0.5 0.5625 0.9688 +0.5 0.5625 1 +0.5 0.5938 0 +0.5 0.5938 0.03125 +0.5 0.5938 0.0625 +0.5 0.5938 0.09375 +0.5 0.5938 0.125 +0.5 0.5938 0.1562 +0.5 0.5938 0.1875 +0.5 0.5938 0.2188 +0.5 0.5938 0.25 +0.5 0.5938 0.2812 +0.5 0.5938 0.3125 +0.5 0.5938 0.3438 +0.5 0.5938 0.375 +0.5 0.5938 0.4062 +0.5 0.5938 0.4375 +0.5 0.5938 0.4688 +0.5 0.5938 0.5 +0.5 0.5938 0.5312 +0.5 0.5938 0.5625 +0.5 0.5938 0.5938 +0.5 0.5938 0.625 +0.5 0.5938 0.6562 +0.5 0.5938 0.6875 +0.5 0.5938 0.7188 +0.5 0.5938 0.75 +0.5 0.5938 0.7812 +0.5 0.5938 0.8125 +0.5 0.5938 0.8438 +0.5 0.5938 0.875 +0.5 0.5938 0.9062 +0.5 0.5938 0.9375 +0.5 0.5938 0.9688 +0.5 0.5938 1 +0.5 0.625 0 +0.5 0.625 0.03125 +0.5 0.625 0.0625 +0.5 0.625 0.09375 +0.5 0.625 0.125 +0.5 0.625 0.1562 +0.5 0.625 0.1875 +0.5 0.625 0.2188 +0.5 0.625 0.25 +0.5 0.625 0.2812 +0.5 0.625 0.3125 +0.5 0.625 0.3438 +0.5 0.625 0.375 +0.5 0.625 0.4062 +0.5 0.625 0.4375 +0.5 0.625 0.4688 +0.5 0.625 0.5 +0.5 0.625 0.5312 +0.5 0.625 0.5625 +0.5 0.625 0.5938 +0.5 0.625 0.625 +0.5 0.625 0.6562 +0.5 0.625 0.6875 +0.5 0.625 0.7188 +0.5 0.625 0.75 +0.5 0.625 0.7812 +0.5 0.625 0.8125 +0.5 0.625 0.8438 +0.5 0.625 0.875 +0.5 0.625 0.9062 +0.5 0.625 0.9375 +0.5 0.625 0.9688 +0.5 0.625 1 +0.5 0.6562 0 +0.5 0.6562 0.03125 +0.5 0.6562 0.0625 +0.5 0.6562 0.09375 +0.5 0.6562 0.125 +0.5 0.6562 0.1562 +0.5 0.6562 0.1875 +0.5 0.6562 0.2188 +0.5 0.6562 0.25 +0.5 0.6562 0.2812 +0.5 0.6562 0.3125 +0.5 0.6562 0.3438 +0.5 0.6562 0.375 +0.5 0.6562 0.4062 +0.5 0.6562 0.4375 +0.5 0.6562 0.4688 +0.5 0.6562 0.5 +0.5 0.6562 0.5312 +0.5 0.6562 0.5625 +0.5 0.6562 0.5938 +0.5 0.6562 0.625 +0.5 0.6562 0.6562 +0.5 0.6562 0.6875 +0.5 0.6562 0.7188 +0.5 0.6562 0.75 +0.5 0.6562 0.7812 +0.5 0.6562 0.8125 +0.5 0.6562 0.8438 +0.5 0.6562 0.875 +0.5 0.6562 0.9062 +0.5 0.6562 0.9375 +0.5 0.6562 0.9688 +0.5 0.6562 1 +0.5 0.6875 0 +0.5 0.6875 0.03125 +0.5 0.6875 0.0625 +0.5 0.6875 0.09375 +0.5 0.6875 0.125 +0.5 0.6875 0.1562 +0.5 0.6875 0.1875 +0.5 0.6875 0.2188 +0.5 0.6875 0.25 +0.5 0.6875 0.2812 +0.5 0.6875 0.3125 +0.5 0.6875 0.3438 +0.5 0.6875 0.375 +0.5 0.6875 0.4062 +0.5 0.6875 0.4375 +0.5 0.6875 0.4688 +0.5 0.6875 0.5 +0.5 0.6875 0.5312 +0.5 0.6875 0.5625 +0.5 0.6875 0.5938 +0.5 0.6875 0.625 +0.5 0.6875 0.6562 +0.5 0.6875 0.6875 +0.5 0.6875 0.7188 +0.5 0.6875 0.75 +0.5 0.6875 0.7812 +0.5 0.6875 0.8125 +0.5 0.6875 0.8438 +0.5 0.6875 0.875 +0.5 0.6875 0.9062 +0.5 0.6875 0.9375 +0.5 0.6875 0.9688 +0.5 0.6875 1 +0.5 0.7188 0 +0.5 0.7188 0.03125 +0.5 0.7188 0.0625 +0.5 0.7188 0.09375 +0.5 0.7188 0.125 +0.5 0.7188 0.1562 +0.5 0.7188 0.1875 +0.5 0.7188 0.2188 +0.5 0.7188 0.25 +0.5 0.7188 0.2812 +0.5 0.7188 0.3125 +0.5 0.7188 0.3438 +0.5 0.7188 0.375 +0.5 0.7188 0.4062 +0.5 0.7188 0.4375 +0.5 0.7188 0.4688 +0.5 0.7188 0.5 +0.5 0.7188 0.5312 +0.5 0.7188 0.5625 +0.5 0.7188 0.5938 +0.5 0.7188 0.625 +0.5 0.7188 0.6562 +0.5 0.7188 0.6875 +0.5 0.7188 0.7188 +0.5 0.7188 0.75 +0.5 0.7188 0.7812 +0.5 0.7188 0.8125 +0.5 0.7188 0.8438 +0.5 0.7188 0.875 +0.5 0.7188 0.9062 +0.5 0.7188 0.9375 +0.5 0.7188 0.9688 +0.5 0.7188 1 +0.5 0.75 0 +0.5 0.75 0.03125 +0.5 0.75 0.0625 +0.5 0.75 0.09375 +0.5 0.75 0.125 +0.5 0.75 0.1562 +0.5 0.75 0.1875 +0.5 0.75 0.2188 +0.5 0.75 0.25 +0.5 0.75 0.2812 +0.5 0.75 0.3125 +0.5 0.75 0.3438 +0.5 0.75 0.375 +0.5 0.75 0.4062 +0.5 0.75 0.4375 +0.5 0.75 0.4688 +0.5 0.75 0.5 +0.5 0.75 0.5312 +0.5 0.75 0.5625 +0.5 0.75 0.5938 +0.5 0.75 0.625 +0.5 0.75 0.6562 +0.5 0.75 0.6875 +0.5 0.75 0.7188 +0.5 0.75 0.75 +0.5 0.75 0.7812 +0.5 0.75 0.8125 +0.5 0.75 0.8438 +0.5 0.75 0.875 +0.5 0.75 0.9062 +0.5 0.75 0.9375 +0.5 0.75 0.9688 +0.5 0.75 1 +0.5 0.7812 0 +0.5 0.7812 0.03125 +0.5 0.7812 0.0625 +0.5 0.7812 0.09375 +0.5 0.7812 0.125 +0.5 0.7812 0.1562 +0.5 0.7812 0.1875 +0.5 0.7812 0.2188 +0.5 0.7812 0.25 +0.5 0.7812 0.2812 +0.5 0.7812 0.3125 +0.5 0.7812 0.3438 +0.5 0.7812 0.375 +0.5 0.7812 0.4062 +0.5 0.7812 0.4375 +0.5 0.7812 0.4688 +0.5 0.7812 0.5 +0.5 0.7812 0.5312 +0.5 0.7812 0.5625 +0.5 0.7812 0.5938 +0.5 0.7812 0.625 +0.5 0.7812 0.6562 +0.5 0.7812 0.6875 +0.5 0.7812 0.7188 +0.5 0.7812 0.75 +0.5 0.7812 0.7812 +0.5 0.7812 0.8125 +0.5 0.7812 0.8438 +0.5 0.7812 0.875 +0.5 0.7812 0.9062 +0.5 0.7812 0.9375 +0.5 0.7812 0.9688 +0.5 0.7812 1 +0.5 0.8125 0 +0.5 0.8125 0.03125 +0.5 0.8125 0.0625 +0.5 0.8125 0.09375 +0.5 0.8125 0.125 +0.5 0.8125 0.1562 +0.5 0.8125 0.1875 +0.5 0.8125 0.2188 +0.5 0.8125 0.25 +0.5 0.8125 0.2812 +0.5 0.8125 0.3125 +0.5 0.8125 0.3438 +0.5 0.8125 0.375 +0.5 0.8125 0.4062 +0.5 0.8125 0.4375 +0.5 0.8125 0.4688 +0.5 0.8125 0.5 +0.5 0.8125 0.5312 +0.5 0.8125 0.5625 +0.5 0.8125 0.5938 +0.5 0.8125 0.625 +0.5 0.8125 0.6562 +0.5 0.8125 0.6875 +0.5 0.8125 0.7188 +0.5 0.8125 0.75 +0.5 0.8125 0.7812 +0.5 0.8125 0.8125 +0.5 0.8125 0.8438 +0.5 0.8125 0.875 +0.5 0.8125 0.9062 +0.5 0.8125 0.9375 +0.5 0.8125 0.9688 +0.5 0.8125 1 +0.5 0.8438 0 +0.5 0.8438 0.03125 +0.5 0.8438 0.0625 +0.5 0.8438 0.09375 +0.5 0.8438 0.125 +0.5 0.8438 0.1562 +0.5 0.8438 0.1875 +0.5 0.8438 0.2188 +0.5 0.8438 0.25 +0.5 0.8438 0.2812 +0.5 0.8438 0.3125 +0.5 0.8438 0.3438 +0.5 0.8438 0.375 +0.5 0.8438 0.4062 +0.5 0.8438 0.4375 +0.5 0.8438 0.4688 +0.5 0.8438 0.5 +0.5 0.8438 0.5312 +0.5 0.8438 0.5625 +0.5 0.8438 0.5938 +0.5 0.8438 0.625 +0.5 0.8438 0.6562 +0.5 0.8438 0.6875 +0.5 0.8438 0.7188 +0.5 0.8438 0.75 +0.5 0.8438 0.7812 +0.5 0.8438 0.8125 +0.5 0.8438 0.8438 +0.5 0.8438 0.875 +0.5 0.8438 0.9062 +0.5 0.8438 0.9375 +0.5 0.8438 0.9688 +0.5 0.8438 1 +0.5 0.875 0 +0.5 0.875 0.03125 +0.5 0.875 0.0625 +0.5 0.875 0.09375 +0.5 0.875 0.125 +0.5 0.875 0.1562 +0.5 0.875 0.1875 +0.5 0.875 0.2188 +0.5 0.875 0.25 +0.5 0.875 0.2812 +0.5 0.875 0.3125 +0.5 0.875 0.3438 +0.5 0.875 0.375 +0.5 0.875 0.4062 +0.5 0.875 0.4375 +0.5 0.875 0.4688 +0.5 0.875 0.5 +0.5 0.875 0.5312 +0.5 0.875 0.5625 +0.5 0.875 0.5938 +0.5 0.875 0.625 +0.5 0.875 0.6562 +0.5 0.875 0.6875 +0.5 0.875 0.7188 +0.5 0.875 0.75 +0.5 0.875 0.7812 +0.5 0.875 0.8125 +0.5 0.875 0.8438 +0.5 0.875 0.875 +0.5 0.875 0.9062 +0.5 0.875 0.9375 +0.5 0.875 0.9688 +0.5 0.875 1 +0.5 0.9062 0 +0.5 0.9062 0.03125 +0.5 0.9062 0.0625 +0.5 0.9062 0.09375 +0.5 0.9062 0.125 +0.5 0.9062 0.1562 +0.5 0.9062 0.1875 +0.5 0.9062 0.2188 +0.5 0.9062 0.25 +0.5 0.9062 0.2812 +0.5 0.9062 0.3125 +0.5 0.9062 0.3438 +0.5 0.9062 0.375 +0.5 0.9062 0.4062 +0.5 0.9062 0.4375 +0.5 0.9062 0.4688 +0.5 0.9062 0.5 +0.5 0.9062 0.5312 +0.5 0.9062 0.5625 +0.5 0.9062 0.5938 +0.5 0.9062 0.625 +0.5 0.9062 0.6562 +0.5 0.9062 0.6875 +0.5 0.9062 0.7188 +0.5 0.9062 0.75 +0.5 0.9062 0.7812 +0.5 0.9062 0.8125 +0.5 0.9062 0.8438 +0.5 0.9062 0.875 +0.5 0.9062 0.9062 +0.5 0.9062 0.9375 +0.5 0.9062 0.9688 +0.5 0.9062 1 +0.5 0.9375 0 +0.5 0.9375 0.03125 +0.5 0.9375 0.0625 +0.5 0.9375 0.09375 +0.5 0.9375 0.125 +0.5 0.9375 0.1562 +0.5 0.9375 0.1875 +0.5 0.9375 0.2188 +0.5 0.9375 0.25 +0.5 0.9375 0.2812 +0.5 0.9375 0.3125 +0.5 0.9375 0.3438 +0.5 0.9375 0.375 +0.5 0.9375 0.4062 +0.5 0.9375 0.4375 +0.5 0.9375 0.4688 +0.5 0.9375 0.5 +0.5 0.9375 0.5312 +0.5 0.9375 0.5625 +0.5 0.9375 0.5938 +0.5 0.9375 0.625 +0.5 0.9375 0.6562 +0.5 0.9375 0.6875 +0.5 0.9375 0.7188 +0.5 0.9375 0.75 +0.5 0.9375 0.7812 +0.5 0.9375 0.8125 +0.5 0.9375 0.8438 +0.5 0.9375 0.875 +0.5 0.9375 0.9062 +0.5 0.9375 0.9375 +0.5 0.9375 0.9688 +0.5 0.9375 1 +0.5 0.9688 0 +0.5 0.9688 0.03125 +0.5 0.9688 0.0625 +0.5 0.9688 0.09375 +0.5 0.9688 0.125 +0.5 0.9688 0.1562 +0.5 0.9688 0.1875 +0.5 0.9688 0.2188 +0.5 0.9688 0.25 +0.5 0.9688 0.2812 +0.5 0.9688 0.3125 +0.5 0.9688 0.3438 +0.5 0.9688 0.375 +0.5 0.9688 0.4062 +0.5 0.9688 0.4375 +0.5 0.9688 0.4688 +0.5 0.9688 0.5 +0.5 0.9688 0.5312 +0.5 0.9688 0.5625 +0.5 0.9688 0.5938 +0.5 0.9688 0.625 +0.5 0.9688 0.6562 +0.5 0.9688 0.6875 +0.5 0.9688 0.7188 +0.5 0.9688 0.75 +0.5 0.9688 0.7812 +0.5 0.9688 0.8125 +0.5 0.9688 0.8438 +0.5 0.9688 0.875 +0.5 0.9688 0.9062 +0.5 0.9688 0.9375 +0.5 0.9688 0.9688 +0.5 0.9688 1 +0.5 1 0 +0.5 1 0.03125 +0.5 1 0.0625 +0.5 1 0.09375 +0.5 1 0.125 +0.5 1 0.1562 +0.5 1 0.1875 +0.5 1 0.2188 +0.5 1 0.25 +0.5 1 0.2812 +0.5 1 0.3125 +0.5 1 0.3438 +0.5 1 0.375 +0.5 1 0.4062 +0.5 1 0.4375 +0.5 1 0.4688 +0.5 1 0.5 +0.5 1 0.5312 +0.5 1 0.5625 +0.5 1 0.5938 +0.5 1 0.625 +0.5 1 0.6562 +0.5 1 0.6875 +0.5 1 0.7188 +0.5 1 0.75 +0.5 1 0.7812 +0.5 1 0.8125 +0.5 1 0.8438 +0.5 1 0.875 +0.5 1 0.9062 +0.5 1 0.9375 +0.5 1 0.9688 +0.5 1 1 +0.5312 0 0 +0.5312 0 0.03125 +0.5312 0 0.0625 +0.5312 0 0.09375 +0.5312 0 0.125 +0.5312 0 0.1562 +0.5312 0 0.1875 +0.5312 0 0.2188 +0.5312 0 0.25 +0.5312 0 0.2812 +0.5312 0 0.3125 +0.5312 0 0.3438 +0.5312 0 0.375 +0.5312 0 0.4062 +0.5312 0 0.4375 +0.5312 0 0.4688 +0.5312 0 0.5 +0.5312 0 0.5312 +0.5312 0 0.5625 +0.5312 0 0.5938 +0.5312 0 0.625 +0.5312 0 0.6562 +0.5312 0 0.6875 +0.5312 0 0.7188 +0.5312 0 0.75 +0.5312 0 0.7812 +0.5312 0 0.8125 +0.5312 0 0.8438 +0.5312 0 0.875 +0.5312 0 0.9062 +0.5312 0 0.9375 +0.5312 0 0.9688 +0.5312 0 1 +0.5312 0.03125 0 +0.5312 0.03125 0.03125 +0.5312 0.03125 0.0625 +0.5312 0.03125 0.09375 +0.5312 0.03125 0.125 +0.5312 0.03125 0.1562 +0.5312 0.03125 0.1875 +0.5312 0.03125 0.2188 +0.5312 0.03125 0.25 +0.5312 0.03125 0.2812 +0.5312 0.03125 0.3125 +0.5312 0.03125 0.3438 +0.5312 0.03125 0.375 +0.5312 0.03125 0.4062 +0.5312 0.03125 0.4375 +0.5312 0.03125 0.4688 +0.5312 0.03125 0.5 +0.5312 0.03125 0.5312 +0.5312 0.03125 0.5625 +0.5312 0.03125 0.5938 +0.5312 0.03125 0.625 +0.5312 0.03125 0.6562 +0.5312 0.03125 0.6875 +0.5312 0.03125 0.7188 +0.5312 0.03125 0.75 +0.5312 0.03125 0.7812 +0.5312 0.03125 0.8125 +0.5312 0.03125 0.8438 +0.5312 0.03125 0.875 +0.5312 0.03125 0.9062 +0.5312 0.03125 0.9375 +0.5312 0.03125 0.9688 +0.5312 0.03125 1 +0.5312 0.0625 0 +0.5312 0.0625 0.03125 +0.5312 0.0625 0.0625 +0.5312 0.0625 0.09375 +0.5312 0.0625 0.125 +0.5312 0.0625 0.1562 +0.5312 0.0625 0.1875 +0.5312 0.0625 0.2188 +0.5312 0.0625 0.25 +0.5312 0.0625 0.2812 +0.5312 0.0625 0.3125 +0.5312 0.0625 0.3438 +0.5312 0.0625 0.375 +0.5312 0.0625 0.4062 +0.5312 0.0625 0.4375 +0.5312 0.0625 0.4688 +0.5312 0.0625 0.5 +0.5312 0.0625 0.5312 +0.5312 0.0625 0.5625 +0.5312 0.0625 0.5938 +0.5312 0.0625 0.625 +0.5312 0.0625 0.6562 +0.5312 0.0625 0.6875 +0.5312 0.0625 0.7188 +0.5312 0.0625 0.75 +0.5312 0.0625 0.7812 +0.5312 0.0625 0.8125 +0.5312 0.0625 0.8438 +0.5312 0.0625 0.875 +0.5312 0.0625 0.9062 +0.5312 0.0625 0.9375 +0.5312 0.0625 0.9688 +0.5312 0.0625 1 +0.5312 0.09375 0 +0.5312 0.09375 0.03125 +0.5312 0.09375 0.0625 +0.5312 0.09375 0.09375 +0.5312 0.09375 0.125 +0.5312 0.09375 0.1562 +0.5312 0.09375 0.1875 +0.5312 0.09375 0.2188 +0.5312 0.09375 0.25 +0.5312 0.09375 0.2812 +0.5312 0.09375 0.3125 +0.5312 0.09375 0.3438 +0.5312 0.09375 0.375 +0.5312 0.09375 0.4062 +0.5312 0.09375 0.4375 +0.5312 0.09375 0.4688 +0.5312 0.09375 0.5 +0.5312 0.09375 0.5312 +0.5312 0.09375 0.5625 +0.5312 0.09375 0.5938 +0.5312 0.09375 0.625 +0.5312 0.09375 0.6562 +0.5312 0.09375 0.6875 +0.5312 0.09375 0.7188 +0.5312 0.09375 0.75 +0.5312 0.09375 0.7812 +0.5312 0.09375 0.8125 +0.5312 0.09375 0.8438 +0.5312 0.09375 0.875 +0.5312 0.09375 0.9062 +0.5312 0.09375 0.9375 +0.5312 0.09375 0.9688 +0.5312 0.09375 1 +0.5312 0.125 0 +0.5312 0.125 0.03125 +0.5312 0.125 0.0625 +0.5312 0.125 0.09375 +0.5312 0.125 0.125 +0.5312 0.125 0.1562 +0.5312 0.125 0.1875 +0.5312 0.125 0.2188 +0.5312 0.125 0.25 +0.5312 0.125 0.2812 +0.5312 0.125 0.3125 +0.5312 0.125 0.3438 +0.5312 0.125 0.375 +0.5312 0.125 0.4062 +0.5312 0.125 0.4375 +0.5312 0.125 0.4688 +0.5312 0.125 0.5 +0.5312 0.125 0.5312 +0.5312 0.125 0.5625 +0.5312 0.125 0.5938 +0.5312 0.125 0.625 +0.5312 0.125 0.6562 +0.5312 0.125 0.6875 +0.5312 0.125 0.7188 +0.5312 0.125 0.75 +0.5312 0.125 0.7812 +0.5312 0.125 0.8125 +0.5312 0.125 0.8438 +0.5312 0.125 0.875 +0.5312 0.125 0.9062 +0.5312 0.125 0.9375 +0.5312 0.125 0.9688 +0.5312 0.125 1 +0.5312 0.1562 0 +0.5312 0.1562 0.03125 +0.5312 0.1562 0.0625 +0.5312 0.1562 0.09375 +0.5312 0.1562 0.125 +0.5312 0.1562 0.1562 +0.5312 0.1562 0.1875 +0.5312 0.1562 0.2188 +0.5312 0.1562 0.25 +0.5312 0.1562 0.2812 +0.5312 0.1562 0.3125 +0.5312 0.1562 0.3438 +0.5312 0.1562 0.375 +0.5312 0.1562 0.4062 +0.5312 0.1562 0.4375 +0.5312 0.1562 0.4688 +0.5312 0.1562 0.5 +0.5312 0.1562 0.5312 +0.5312 0.1562 0.5625 +0.5312 0.1562 0.5938 +0.5312 0.1562 0.625 +0.5312 0.1562 0.6562 +0.5312 0.1562 0.6875 +0.5312 0.1562 0.7188 +0.5312 0.1562 0.75 +0.5312 0.1562 0.7812 +0.5312 0.1562 0.8125 +0.5312 0.1562 0.8438 +0.5312 0.1562 0.875 +0.5312 0.1562 0.9062 +0.5312 0.1562 0.9375 +0.5312 0.1562 0.9688 +0.5312 0.1562 1 +0.5312 0.1875 0 +0.5312 0.1875 0.03125 +0.5312 0.1875 0.0625 +0.5312 0.1875 0.09375 +0.5312 0.1875 0.125 +0.5312 0.1875 0.1562 +0.5312 0.1875 0.1875 +0.5312 0.1875 0.2188 +0.5312 0.1875 0.25 +0.5312 0.1875 0.2812 +0.5312 0.1875 0.3125 +0.5312 0.1875 0.3438 +0.5312 0.1875 0.375 +0.5312 0.1875 0.4062 +0.5312 0.1875 0.4375 +0.5312 0.1875 0.4688 +0.5312 0.1875 0.5 +0.5312 0.1875 0.5312 +0.5312 0.1875 0.5625 +0.5312 0.1875 0.5938 +0.5312 0.1875 0.625 +0.5312 0.1875 0.6562 +0.5312 0.1875 0.6875 +0.5312 0.1875 0.7188 +0.5312 0.1875 0.75 +0.5312 0.1875 0.7812 +0.5312 0.1875 0.8125 +0.5312 0.1875 0.8438 +0.5312 0.1875 0.875 +0.5312 0.1875 0.9062 +0.5312 0.1875 0.9375 +0.5312 0.1875 0.9688 +0.5312 0.1875 1 +0.5312 0.2188 0 +0.5312 0.2188 0.03125 +0.5312 0.2188 0.0625 +0.5312 0.2188 0.09375 +0.5312 0.2188 0.125 +0.5312 0.2188 0.1562 +0.5312 0.2188 0.1875 +0.5312 0.2188 0.2188 +0.5312 0.2188 0.25 +0.5312 0.2188 0.2812 +0.5312 0.2188 0.3125 +0.5312 0.2188 0.3438 +0.5312 0.2188 0.375 +0.5312 0.2188 0.4062 +0.5312 0.2188 0.4375 +0.5312 0.2188 0.4688 +0.5312 0.2188 0.5 +0.5312 0.2188 0.5312 +0.5312 0.2188 0.5625 +0.5312 0.2188 0.5938 +0.5312 0.2188 0.625 +0.5312 0.2188 0.6562 +0.5312 0.2188 0.6875 +0.5312 0.2188 0.7188 +0.5312 0.2188 0.75 +0.5312 0.2188 0.7812 +0.5312 0.2188 0.8125 +0.5312 0.2188 0.8438 +0.5312 0.2188 0.875 +0.5312 0.2188 0.9062 +0.5312 0.2188 0.9375 +0.5312 0.2188 0.9688 +0.5312 0.2188 1 +0.5312 0.25 0 +0.5312 0.25 0.03125 +0.5312 0.25 0.0625 +0.5312 0.25 0.09375 +0.5312 0.25 0.125 +0.5312 0.25 0.1562 +0.5312 0.25 0.1875 +0.5312 0.25 0.2188 +0.5312 0.25 0.25 +0.5312 0.25 0.2812 +0.5312 0.25 0.3125 +0.5312 0.25 0.3438 +0.5312 0.25 0.375 +0.5312 0.25 0.4062 +0.5312 0.25 0.4375 +0.5312 0.25 0.4688 +0.5312 0.25 0.5 +0.5312 0.25 0.5312 +0.5312 0.25 0.5625 +0.5312 0.25 0.5938 +0.5312 0.25 0.625 +0.5312 0.25 0.6562 +0.5312 0.25 0.6875 +0.5312 0.25 0.7188 +0.5312 0.25 0.75 +0.5312 0.25 0.7812 +0.5312 0.25 0.8125 +0.5312 0.25 0.8438 +0.5312 0.25 0.875 +0.5312 0.25 0.9062 +0.5312 0.25 0.9375 +0.5312 0.25 0.9688 +0.5312 0.25 1 +0.5312 0.2812 0 +0.5312 0.2812 0.03125 +0.5312 0.2812 0.0625 +0.5312 0.2812 0.09375 +0.5312 0.2812 0.125 +0.5312 0.2812 0.1562 +0.5312 0.2812 0.1875 +0.5312 0.2812 0.2188 +0.5312 0.2812 0.25 +0.5312 0.2812 0.2812 +0.5312 0.2812 0.3125 +0.5312 0.2812 0.3438 +0.5312 0.2812 0.375 +0.5312 0.2812 0.4062 +0.5312 0.2812 0.4375 +0.5312 0.2812 0.4688 +0.5312 0.2812 0.5 +0.5312 0.2812 0.5312 +0.5312 0.2812 0.5625 +0.5312 0.2812 0.5938 +0.5312 0.2812 0.625 +0.5312 0.2812 0.6562 +0.5312 0.2812 0.6875 +0.5312 0.2812 0.7188 +0.5312 0.2812 0.75 +0.5312 0.2812 0.7812 +0.5312 0.2812 0.8125 +0.5312 0.2812 0.8438 +0.5312 0.2812 0.875 +0.5312 0.2812 0.9062 +0.5312 0.2812 0.9375 +0.5312 0.2812 0.9688 +0.5312 0.2812 1 +0.5312 0.3125 0 +0.5312 0.3125 0.03125 +0.5312 0.3125 0.0625 +0.5312 0.3125 0.09375 +0.5312 0.3125 0.125 +0.5312 0.3125 0.1562 +0.5312 0.3125 0.1875 +0.5312 0.3125 0.2188 +0.5312 0.3125 0.25 +0.5312 0.3125 0.2812 +0.5312 0.3125 0.3125 +0.5312 0.3125 0.3438 +0.5312 0.3125 0.375 +0.5312 0.3125 0.4062 +0.5312 0.3125 0.4375 +0.5312 0.3125 0.4688 +0.5312 0.3125 0.5 +0.5312 0.3125 0.5312 +0.5312 0.3125 0.5625 +0.5312 0.3125 0.5938 +0.5312 0.3125 0.625 +0.5312 0.3125 0.6562 +0.5312 0.3125 0.6875 +0.5312 0.3125 0.7188 +0.5312 0.3125 0.75 +0.5312 0.3125 0.7812 +0.5312 0.3125 0.8125 +0.5312 0.3125 0.8438 +0.5312 0.3125 0.875 +0.5312 0.3125 0.9062 +0.5312 0.3125 0.9375 +0.5312 0.3125 0.9688 +0.5312 0.3125 1 +0.5312 0.3438 0 +0.5312 0.3438 0.03125 +0.5312 0.3438 0.0625 +0.5312 0.3438 0.09375 +0.5312 0.3438 0.125 +0.5312 0.3438 0.1562 +0.5312 0.3438 0.1875 +0.5312 0.3438 0.2188 +0.5312 0.3438 0.25 +0.5312 0.3438 0.2812 +0.5312 0.3438 0.3125 +0.5312 0.3438 0.3438 +0.5312 0.3438 0.375 +0.5312 0.3438 0.4062 +0.5312 0.3438 0.4375 +0.5312 0.3438 0.4688 +0.5312 0.3438 0.5 +0.5312 0.3438 0.5312 +0.5312 0.3438 0.5625 +0.5312 0.3438 0.5938 +0.5312 0.3438 0.625 +0.5312 0.3438 0.6562 +0.5312 0.3438 0.6875 +0.5312 0.3438 0.7188 +0.5312 0.3438 0.75 +0.5312 0.3438 0.7812 +0.5312 0.3438 0.8125 +0.5312 0.3438 0.8438 +0.5312 0.3438 0.875 +0.5312 0.3438 0.9062 +0.5312 0.3438 0.9375 +0.5312 0.3438 0.9688 +0.5312 0.3438 1 +0.5312 0.375 0 +0.5312 0.375 0.03125 +0.5312 0.375 0.0625 +0.5312 0.375 0.09375 +0.5312 0.375 0.125 +0.5312 0.375 0.1562 +0.5312 0.375 0.1875 +0.5312 0.375 0.2188 +0.5312 0.375 0.25 +0.5312 0.375 0.2812 +0.5312 0.375 0.3125 +0.5312 0.375 0.3438 +0.5312 0.375 0.375 +0.5312 0.375 0.4062 +0.5312 0.375 0.4375 +0.5312 0.375 0.4688 +0.5312 0.375 0.5 +0.5312 0.375 0.5312 +0.5312 0.375 0.5625 +0.5312 0.375 0.5938 +0.5312 0.375 0.625 +0.5312 0.375 0.6562 +0.5312 0.375 0.6875 +0.5312 0.375 0.7188 +0.5312 0.375 0.75 +0.5312 0.375 0.7812 +0.5312 0.375 0.8125 +0.5312 0.375 0.8438 +0.5312 0.375 0.875 +0.5312 0.375 0.9062 +0.5312 0.375 0.9375 +0.5312 0.375 0.9688 +0.5312 0.375 1 +0.5312 0.4062 0 +0.5312 0.4062 0.03125 +0.5312 0.4062 0.0625 +0.5312 0.4062 0.09375 +0.5312 0.4062 0.125 +0.5312 0.4062 0.1562 +0.5312 0.4062 0.1875 +0.5312 0.4062 0.2188 +0.5312 0.4062 0.25 +0.5312 0.4062 0.2812 +0.5312 0.4062 0.3125 +0.5312 0.4062 0.3438 +0.5312 0.4062 0.375 +0.5312 0.4062 0.4062 +0.5312 0.4062 0.4375 +0.5312 0.4062 0.4688 +0.5312 0.4062 0.5 +0.5312 0.4062 0.5312 +0.5312 0.4062 0.5625 +0.5312 0.4062 0.5938 +0.5312 0.4062 0.625 +0.5312 0.4062 0.6562 +0.5312 0.4062 0.6875 +0.5312 0.4062 0.7188 +0.5312 0.4062 0.75 +0.5312 0.4062 0.7812 +0.5312 0.4062 0.8125 +0.5312 0.4062 0.8438 +0.5312 0.4062 0.875 +0.5312 0.4062 0.9062 +0.5312 0.4062 0.9375 +0.5312 0.4062 0.9688 +0.5312 0.4062 1 +0.5312 0.4375 0 +0.5312 0.4375 0.03125 +0.5312 0.4375 0.0625 +0.5312 0.4375 0.09375 +0.5312 0.4375 0.125 +0.5312 0.4375 0.1562 +0.5312 0.4375 0.1875 +0.5312 0.4375 0.2188 +0.5312 0.4375 0.25 +0.5312 0.4375 0.2812 +0.5312 0.4375 0.3125 +0.5312 0.4375 0.3438 +0.5312 0.4375 0.375 +0.5312 0.4375 0.4062 +0.5312 0.4375 0.4375 +0.5312 0.4375 0.4688 +0.5312 0.4375 0.5 +0.5312 0.4375 0.5312 +0.5312 0.4375 0.5625 +0.5312 0.4375 0.5938 +0.5312 0.4375 0.625 +0.5312 0.4375 0.6562 +0.5312 0.4375 0.6875 +0.5312 0.4375 0.7188 +0.5312 0.4375 0.75 +0.5312 0.4375 0.7812 +0.5312 0.4375 0.8125 +0.5312 0.4375 0.8438 +0.5312 0.4375 0.875 +0.5312 0.4375 0.9062 +0.5312 0.4375 0.9375 +0.5312 0.4375 0.9688 +0.5312 0.4375 1 +0.5312 0.4688 0 +0.5312 0.4688 0.03125 +0.5312 0.4688 0.0625 +0.5312 0.4688 0.09375 +0.5312 0.4688 0.125 +0.5312 0.4688 0.1562 +0.5312 0.4688 0.1875 +0.5312 0.4688 0.2188 +0.5312 0.4688 0.25 +0.5312 0.4688 0.2812 +0.5312 0.4688 0.3125 +0.5312 0.4688 0.3438 +0.5312 0.4688 0.375 +0.5312 0.4688 0.4062 +0.5312 0.4688 0.4375 +0.5312 0.4688 0.4688 +0.5312 0.4688 0.5 +0.5312 0.4688 0.5312 +0.5312 0.4688 0.5625 +0.5312 0.4688 0.5938 +0.5312 0.4688 0.625 +0.5312 0.4688 0.6562 +0.5312 0.4688 0.6875 +0.5312 0.4688 0.7188 +0.5312 0.4688 0.75 +0.5312 0.4688 0.7812 +0.5312 0.4688 0.8125 +0.5312 0.4688 0.8438 +0.5312 0.4688 0.875 +0.5312 0.4688 0.9062 +0.5312 0.4688 0.9375 +0.5312 0.4688 0.9688 +0.5312 0.4688 1 +0.5312 0.5 0 +0.5312 0.5 0.03125 +0.5312 0.5 0.0625 +0.5312 0.5 0.09375 +0.5312 0.5 0.125 +0.5312 0.5 0.1562 +0.5312 0.5 0.1875 +0.5312 0.5 0.2188 +0.5312 0.5 0.25 +0.5312 0.5 0.2812 +0.5312 0.5 0.3125 +0.5312 0.5 0.3438 +0.5312 0.5 0.375 +0.5312 0.5 0.4062 +0.5312 0.5 0.4375 +0.5312 0.5 0.4688 +0.5312 0.5 0.5 +0.5312 0.5 0.5312 +0.5312 0.5 0.5625 +0.5312 0.5 0.5938 +0.5312 0.5 0.625 +0.5312 0.5 0.6562 +0.5312 0.5 0.6875 +0.5312 0.5 0.7188 +0.5312 0.5 0.75 +0.5312 0.5 0.7812 +0.5312 0.5 0.8125 +0.5312 0.5 0.8438 +0.5312 0.5 0.875 +0.5312 0.5 0.9062 +0.5312 0.5 0.9375 +0.5312 0.5 0.9688 +0.5312 0.5 1 +0.5312 0.5312 0 +0.5312 0.5312 0.03125 +0.5312 0.5312 0.0625 +0.5312 0.5312 0.09375 +0.5312 0.5312 0.125 +0.5312 0.5312 0.1562 +0.5312 0.5312 0.1875 +0.5312 0.5312 0.2188 +0.5312 0.5312 0.25 +0.5312 0.5312 0.2812 +0.5312 0.5312 0.3125 +0.5312 0.5312 0.3438 +0.5312 0.5312 0.375 +0.5312 0.5312 0.4062 +0.5312 0.5312 0.4375 +0.5312 0.5312 0.4688 +0.5312 0.5312 0.5 +0.5312 0.5312 0.5312 +0.5312 0.5312 0.5625 +0.5312 0.5312 0.5938 +0.5312 0.5312 0.625 +0.5312 0.5312 0.6562 +0.5312 0.5312 0.6875 +0.5312 0.5312 0.7188 +0.5312 0.5312 0.75 +0.5312 0.5312 0.7812 +0.5312 0.5312 0.8125 +0.5312 0.5312 0.8438 +0.5312 0.5312 0.875 +0.5312 0.5312 0.9062 +0.5312 0.5312 0.9375 +0.5312 0.5312 0.9688 +0.5312 0.5312 1 +0.5312 0.5625 0 +0.5312 0.5625 0.03125 +0.5312 0.5625 0.0625 +0.5312 0.5625 0.09375 +0.5312 0.5625 0.125 +0.5312 0.5625 0.1562 +0.5312 0.5625 0.1875 +0.5312 0.5625 0.2188 +0.5312 0.5625 0.25 +0.5312 0.5625 0.2812 +0.5312 0.5625 0.3125 +0.5312 0.5625 0.3438 +0.5312 0.5625 0.375 +0.5312 0.5625 0.4062 +0.5312 0.5625 0.4375 +0.5312 0.5625 0.4688 +0.5312 0.5625 0.5 +0.5312 0.5625 0.5312 +0.5312 0.5625 0.5625 +0.5312 0.5625 0.5938 +0.5312 0.5625 0.625 +0.5312 0.5625 0.6562 +0.5312 0.5625 0.6875 +0.5312 0.5625 0.7188 +0.5312 0.5625 0.75 +0.5312 0.5625 0.7812 +0.5312 0.5625 0.8125 +0.5312 0.5625 0.8438 +0.5312 0.5625 0.875 +0.5312 0.5625 0.9062 +0.5312 0.5625 0.9375 +0.5312 0.5625 0.9688 +0.5312 0.5625 1 +0.5312 0.5938 0 +0.5312 0.5938 0.03125 +0.5312 0.5938 0.0625 +0.5312 0.5938 0.09375 +0.5312 0.5938 0.125 +0.5312 0.5938 0.1562 +0.5312 0.5938 0.1875 +0.5312 0.5938 0.2188 +0.5312 0.5938 0.25 +0.5312 0.5938 0.2812 +0.5312 0.5938 0.3125 +0.5312 0.5938 0.3438 +0.5312 0.5938 0.375 +0.5312 0.5938 0.4062 +0.5312 0.5938 0.4375 +0.5312 0.5938 0.4688 +0.5312 0.5938 0.5 +0.5312 0.5938 0.5312 +0.5312 0.5938 0.5625 +0.5312 0.5938 0.5938 +0.5312 0.5938 0.625 +0.5312 0.5938 0.6562 +0.5312 0.5938 0.6875 +0.5312 0.5938 0.7188 +0.5312 0.5938 0.75 +0.5312 0.5938 0.7812 +0.5312 0.5938 0.8125 +0.5312 0.5938 0.8438 +0.5312 0.5938 0.875 +0.5312 0.5938 0.9062 +0.5312 0.5938 0.9375 +0.5312 0.5938 0.9688 +0.5312 0.5938 1 +0.5312 0.625 0 +0.5312 0.625 0.03125 +0.5312 0.625 0.0625 +0.5312 0.625 0.09375 +0.5312 0.625 0.125 +0.5312 0.625 0.1562 +0.5312 0.625 0.1875 +0.5312 0.625 0.2188 +0.5312 0.625 0.25 +0.5312 0.625 0.2812 +0.5312 0.625 0.3125 +0.5312 0.625 0.3438 +0.5312 0.625 0.375 +0.5312 0.625 0.4062 +0.5312 0.625 0.4375 +0.5312 0.625 0.4688 +0.5312 0.625 0.5 +0.5312 0.625 0.5312 +0.5312 0.625 0.5625 +0.5312 0.625 0.5938 +0.5312 0.625 0.625 +0.5312 0.625 0.6562 +0.5312 0.625 0.6875 +0.5312 0.625 0.7188 +0.5312 0.625 0.75 +0.5312 0.625 0.7812 +0.5312 0.625 0.8125 +0.5312 0.625 0.8438 +0.5312 0.625 0.875 +0.5312 0.625 0.9062 +0.5312 0.625 0.9375 +0.5312 0.625 0.9688 +0.5312 0.625 1 +0.5312 0.6562 0 +0.5312 0.6562 0.03125 +0.5312 0.6562 0.0625 +0.5312 0.6562 0.09375 +0.5312 0.6562 0.125 +0.5312 0.6562 0.1562 +0.5312 0.6562 0.1875 +0.5312 0.6562 0.2188 +0.5312 0.6562 0.25 +0.5312 0.6562 0.2812 +0.5312 0.6562 0.3125 +0.5312 0.6562 0.3438 +0.5312 0.6562 0.375 +0.5312 0.6562 0.4062 +0.5312 0.6562 0.4375 +0.5312 0.6562 0.4688 +0.5312 0.6562 0.5 +0.5312 0.6562 0.5312 +0.5312 0.6562 0.5625 +0.5312 0.6562 0.5938 +0.5312 0.6562 0.625 +0.5312 0.6562 0.6562 +0.5312 0.6562 0.6875 +0.5312 0.6562 0.7188 +0.5312 0.6562 0.75 +0.5312 0.6562 0.7812 +0.5312 0.6562 0.8125 +0.5312 0.6562 0.8438 +0.5312 0.6562 0.875 +0.5312 0.6562 0.9062 +0.5312 0.6562 0.9375 +0.5312 0.6562 0.9688 +0.5312 0.6562 1 +0.5312 0.6875 0 +0.5312 0.6875 0.03125 +0.5312 0.6875 0.0625 +0.5312 0.6875 0.09375 +0.5312 0.6875 0.125 +0.5312 0.6875 0.1562 +0.5312 0.6875 0.1875 +0.5312 0.6875 0.2188 +0.5312 0.6875 0.25 +0.5312 0.6875 0.2812 +0.5312 0.6875 0.3125 +0.5312 0.6875 0.3438 +0.5312 0.6875 0.375 +0.5312 0.6875 0.4062 +0.5312 0.6875 0.4375 +0.5312 0.6875 0.4688 +0.5312 0.6875 0.5 +0.5312 0.6875 0.5312 +0.5312 0.6875 0.5625 +0.5312 0.6875 0.5938 +0.5312 0.6875 0.625 +0.5312 0.6875 0.6562 +0.5312 0.6875 0.6875 +0.5312 0.6875 0.7188 +0.5312 0.6875 0.75 +0.5312 0.6875 0.7812 +0.5312 0.6875 0.8125 +0.5312 0.6875 0.8438 +0.5312 0.6875 0.875 +0.5312 0.6875 0.9062 +0.5312 0.6875 0.9375 +0.5312 0.6875 0.9688 +0.5312 0.6875 1 +0.5312 0.7188 0 +0.5312 0.7188 0.03125 +0.5312 0.7188 0.0625 +0.5312 0.7188 0.09375 +0.5312 0.7188 0.125 +0.5312 0.7188 0.1562 +0.5312 0.7188 0.1875 +0.5312 0.7188 0.2188 +0.5312 0.7188 0.25 +0.5312 0.7188 0.2812 +0.5312 0.7188 0.3125 +0.5312 0.7188 0.3438 +0.5312 0.7188 0.375 +0.5312 0.7188 0.4062 +0.5312 0.7188 0.4375 +0.5312 0.7188 0.4688 +0.5312 0.7188 0.5 +0.5312 0.7188 0.5312 +0.5312 0.7188 0.5625 +0.5312 0.7188 0.5938 +0.5312 0.7188 0.625 +0.5312 0.7188 0.6562 +0.5312 0.7188 0.6875 +0.5312 0.7188 0.7188 +0.5312 0.7188 0.75 +0.5312 0.7188 0.7812 +0.5312 0.7188 0.8125 +0.5312 0.7188 0.8438 +0.5312 0.7188 0.875 +0.5312 0.7188 0.9062 +0.5312 0.7188 0.9375 +0.5312 0.7188 0.9688 +0.5312 0.7188 1 +0.5312 0.75 0 +0.5312 0.75 0.03125 +0.5312 0.75 0.0625 +0.5312 0.75 0.09375 +0.5312 0.75 0.125 +0.5312 0.75 0.1562 +0.5312 0.75 0.1875 +0.5312 0.75 0.2188 +0.5312 0.75 0.25 +0.5312 0.75 0.2812 +0.5312 0.75 0.3125 +0.5312 0.75 0.3438 +0.5312 0.75 0.375 +0.5312 0.75 0.4062 +0.5312 0.75 0.4375 +0.5312 0.75 0.4688 +0.5312 0.75 0.5 +0.5312 0.75 0.5312 +0.5312 0.75 0.5625 +0.5312 0.75 0.5938 +0.5312 0.75 0.625 +0.5312 0.75 0.6562 +0.5312 0.75 0.6875 +0.5312 0.75 0.7188 +0.5312 0.75 0.75 +0.5312 0.75 0.7812 +0.5312 0.75 0.8125 +0.5312 0.75 0.8438 +0.5312 0.75 0.875 +0.5312 0.75 0.9062 +0.5312 0.75 0.9375 +0.5312 0.75 0.9688 +0.5312 0.75 1 +0.5312 0.7812 0 +0.5312 0.7812 0.03125 +0.5312 0.7812 0.0625 +0.5312 0.7812 0.09375 +0.5312 0.7812 0.125 +0.5312 0.7812 0.1562 +0.5312 0.7812 0.1875 +0.5312 0.7812 0.2188 +0.5312 0.7812 0.25 +0.5312 0.7812 0.2812 +0.5312 0.7812 0.3125 +0.5312 0.7812 0.3438 +0.5312 0.7812 0.375 +0.5312 0.7812 0.4062 +0.5312 0.7812 0.4375 +0.5312 0.7812 0.4688 +0.5312 0.7812 0.5 +0.5312 0.7812 0.5312 +0.5312 0.7812 0.5625 +0.5312 0.7812 0.5938 +0.5312 0.7812 0.625 +0.5312 0.7812 0.6562 +0.5312 0.7812 0.6875 +0.5312 0.7812 0.7188 +0.5312 0.7812 0.75 +0.5312 0.7812 0.7812 +0.5312 0.7812 0.8125 +0.5312 0.7812 0.8438 +0.5312 0.7812 0.875 +0.5312 0.7812 0.9062 +0.5312 0.7812 0.9375 +0.5312 0.7812 0.9688 +0.5312 0.7812 1 +0.5312 0.8125 0 +0.5312 0.8125 0.03125 +0.5312 0.8125 0.0625 +0.5312 0.8125 0.09375 +0.5312 0.8125 0.125 +0.5312 0.8125 0.1562 +0.5312 0.8125 0.1875 +0.5312 0.8125 0.2188 +0.5312 0.8125 0.25 +0.5312 0.8125 0.2812 +0.5312 0.8125 0.3125 +0.5312 0.8125 0.3438 +0.5312 0.8125 0.375 +0.5312 0.8125 0.4062 +0.5312 0.8125 0.4375 +0.5312 0.8125 0.4688 +0.5312 0.8125 0.5 +0.5312 0.8125 0.5312 +0.5312 0.8125 0.5625 +0.5312 0.8125 0.5938 +0.5312 0.8125 0.625 +0.5312 0.8125 0.6562 +0.5312 0.8125 0.6875 +0.5312 0.8125 0.7188 +0.5312 0.8125 0.75 +0.5312 0.8125 0.7812 +0.5312 0.8125 0.8125 +0.5312 0.8125 0.8438 +0.5312 0.8125 0.875 +0.5312 0.8125 0.9062 +0.5312 0.8125 0.9375 +0.5312 0.8125 0.9688 +0.5312 0.8125 1 +0.5312 0.8438 0 +0.5312 0.8438 0.03125 +0.5312 0.8438 0.0625 +0.5312 0.8438 0.09375 +0.5312 0.8438 0.125 +0.5312 0.8438 0.1562 +0.5312 0.8438 0.1875 +0.5312 0.8438 0.2188 +0.5312 0.8438 0.25 +0.5312 0.8438 0.2812 +0.5312 0.8438 0.3125 +0.5312 0.8438 0.3438 +0.5312 0.8438 0.375 +0.5312 0.8438 0.4062 +0.5312 0.8438 0.4375 +0.5312 0.8438 0.4688 +0.5312 0.8438 0.5 +0.5312 0.8438 0.5312 +0.5312 0.8438 0.5625 +0.5312 0.8438 0.5938 +0.5312 0.8438 0.625 +0.5312 0.8438 0.6562 +0.5312 0.8438 0.6875 +0.5312 0.8438 0.7188 +0.5312 0.8438 0.75 +0.5312 0.8438 0.7812 +0.5312 0.8438 0.8125 +0.5312 0.8438 0.8438 +0.5312 0.8438 0.875 +0.5312 0.8438 0.9062 +0.5312 0.8438 0.9375 +0.5312 0.8438 0.9688 +0.5312 0.8438 1 +0.5312 0.875 0 +0.5312 0.875 0.03125 +0.5312 0.875 0.0625 +0.5312 0.875 0.09375 +0.5312 0.875 0.125 +0.5312 0.875 0.1562 +0.5312 0.875 0.1875 +0.5312 0.875 0.2188 +0.5312 0.875 0.25 +0.5312 0.875 0.2812 +0.5312 0.875 0.3125 +0.5312 0.875 0.3438 +0.5312 0.875 0.375 +0.5312 0.875 0.4062 +0.5312 0.875 0.4375 +0.5312 0.875 0.4688 +0.5312 0.875 0.5 +0.5312 0.875 0.5312 +0.5312 0.875 0.5625 +0.5312 0.875 0.5938 +0.5312 0.875 0.625 +0.5312 0.875 0.6562 +0.5312 0.875 0.6875 +0.5312 0.875 0.7188 +0.5312 0.875 0.75 +0.5312 0.875 0.7812 +0.5312 0.875 0.8125 +0.5312 0.875 0.8438 +0.5312 0.875 0.875 +0.5312 0.875 0.9062 +0.5312 0.875 0.9375 +0.5312 0.875 0.9688 +0.5312 0.875 1 +0.5312 0.9062 0 +0.5312 0.9062 0.03125 +0.5312 0.9062 0.0625 +0.5312 0.9062 0.09375 +0.5312 0.9062 0.125 +0.5312 0.9062 0.1562 +0.5312 0.9062 0.1875 +0.5312 0.9062 0.2188 +0.5312 0.9062 0.25 +0.5312 0.9062 0.2812 +0.5312 0.9062 0.3125 +0.5312 0.9062 0.3438 +0.5312 0.9062 0.375 +0.5312 0.9062 0.4062 +0.5312 0.9062 0.4375 +0.5312 0.9062 0.4688 +0.5312 0.9062 0.5 +0.5312 0.9062 0.5312 +0.5312 0.9062 0.5625 +0.5312 0.9062 0.5938 +0.5312 0.9062 0.625 +0.5312 0.9062 0.6562 +0.5312 0.9062 0.6875 +0.5312 0.9062 0.7188 +0.5312 0.9062 0.75 +0.5312 0.9062 0.7812 +0.5312 0.9062 0.8125 +0.5312 0.9062 0.8438 +0.5312 0.9062 0.875 +0.5312 0.9062 0.9062 +0.5312 0.9062 0.9375 +0.5312 0.9062 0.9688 +0.5312 0.9062 1 +0.5312 0.9375 0 +0.5312 0.9375 0.03125 +0.5312 0.9375 0.0625 +0.5312 0.9375 0.09375 +0.5312 0.9375 0.125 +0.5312 0.9375 0.1562 +0.5312 0.9375 0.1875 +0.5312 0.9375 0.2188 +0.5312 0.9375 0.25 +0.5312 0.9375 0.2812 +0.5312 0.9375 0.3125 +0.5312 0.9375 0.3438 +0.5312 0.9375 0.375 +0.5312 0.9375 0.4062 +0.5312 0.9375 0.4375 +0.5312 0.9375 0.4688 +0.5312 0.9375 0.5 +0.5312 0.9375 0.5312 +0.5312 0.9375 0.5625 +0.5312 0.9375 0.5938 +0.5312 0.9375 0.625 +0.5312 0.9375 0.6562 +0.5312 0.9375 0.6875 +0.5312 0.9375 0.7188 +0.5312 0.9375 0.75 +0.5312 0.9375 0.7812 +0.5312 0.9375 0.8125 +0.5312 0.9375 0.8438 +0.5312 0.9375 0.875 +0.5312 0.9375 0.9062 +0.5312 0.9375 0.9375 +0.5312 0.9375 0.9688 +0.5312 0.9375 1 +0.5312 0.9688 0 +0.5312 0.9688 0.03125 +0.5312 0.9688 0.0625 +0.5312 0.9688 0.09375 +0.5312 0.9688 0.125 +0.5312 0.9688 0.1562 +0.5312 0.9688 0.1875 +0.5312 0.9688 0.2188 +0.5312 0.9688 0.25 +0.5312 0.9688 0.2812 +0.5312 0.9688 0.3125 +0.5312 0.9688 0.3438 +0.5312 0.9688 0.375 +0.5312 0.9688 0.4062 +0.5312 0.9688 0.4375 +0.5312 0.9688 0.4688 +0.5312 0.9688 0.5 +0.5312 0.9688 0.5312 +0.5312 0.9688 0.5625 +0.5312 0.9688 0.5938 +0.5312 0.9688 0.625 +0.5312 0.9688 0.6562 +0.5312 0.9688 0.6875 +0.5312 0.9688 0.7188 +0.5312 0.9688 0.75 +0.5312 0.9688 0.7812 +0.5312 0.9688 0.8125 +0.5312 0.9688 0.8438 +0.5312 0.9688 0.875 +0.5312 0.9688 0.9062 +0.5312 0.9688 0.9375 +0.5312 0.9688 0.9688 +0.5312 0.9688 1 +0.5312 1 0 +0.5312 1 0.03125 +0.5312 1 0.0625 +0.5312 1 0.09375 +0.5312 1 0.125 +0.5312 1 0.1562 +0.5312 1 0.1875 +0.5312 1 0.2188 +0.5312 1 0.25 +0.5312 1 0.2812 +0.5312 1 0.3125 +0.5312 1 0.3438 +0.5312 1 0.375 +0.5312 1 0.4062 +0.5312 1 0.4375 +0.5312 1 0.4688 +0.5312 1 0.5 +0.5312 1 0.5312 +0.5312 1 0.5625 +0.5312 1 0.5938 +0.5312 1 0.625 +0.5312 1 0.6562 +0.5312 1 0.6875 +0.5312 1 0.7188 +0.5312 1 0.75 +0.5312 1 0.7812 +0.5312 1 0.8125 +0.5312 1 0.8438 +0.5312 1 0.875 +0.5312 1 0.9062 +0.5312 1 0.9375 +0.5312 1 0.9688 +0.5312 1 1 +0.5625 0 0 +0.5625 0 0.03125 +0.5625 0 0.0625 +0.5625 0 0.09375 +0.5625 0 0.125 +0.5625 0 0.1562 +0.5625 0 0.1875 +0.5625 0 0.2188 +0.5625 0 0.25 +0.5625 0 0.2812 +0.5625 0 0.3125 +0.5625 0 0.3438 +0.5625 0 0.375 +0.5625 0 0.4062 +0.5625 0 0.4375 +0.5625 0 0.4688 +0.5625 0 0.5 +0.5625 0 0.5312 +0.5625 0 0.5625 +0.5625 0 0.5938 +0.5625 0 0.625 +0.5625 0 0.6562 +0.5625 0 0.6875 +0.5625 0 0.7188 +0.5625 0 0.75 +0.5625 0 0.7812 +0.5625 0 0.8125 +0.5625 0 0.8438 +0.5625 0 0.875 +0.5625 0 0.9062 +0.5625 0 0.9375 +0.5625 0 0.9688 +0.5625 0 1 +0.5625 0.03125 0 +0.5625 0.03125 0.03125 +0.5625 0.03125 0.0625 +0.5625 0.03125 0.09375 +0.5625 0.03125 0.125 +0.5625 0.03125 0.1562 +0.5625 0.03125 0.1875 +0.5625 0.03125 0.2188 +0.5625 0.03125 0.25 +0.5625 0.03125 0.2812 +0.5625 0.03125 0.3125 +0.5625 0.03125 0.3438 +0.5625 0.03125 0.375 +0.5625 0.03125 0.4062 +0.5625 0.03125 0.4375 +0.5625 0.03125 0.4688 +0.5625 0.03125 0.5 +0.5625 0.03125 0.5312 +0.5625 0.03125 0.5625 +0.5625 0.03125 0.5938 +0.5625 0.03125 0.625 +0.5625 0.03125 0.6562 +0.5625 0.03125 0.6875 +0.5625 0.03125 0.7188 +0.5625 0.03125 0.75 +0.5625 0.03125 0.7812 +0.5625 0.03125 0.8125 +0.5625 0.03125 0.8438 +0.5625 0.03125 0.875 +0.5625 0.03125 0.9062 +0.5625 0.03125 0.9375 +0.5625 0.03125 0.9688 +0.5625 0.03125 1 +0.5625 0.0625 0 +0.5625 0.0625 0.03125 +0.5625 0.0625 0.0625 +0.5625 0.0625 0.09375 +0.5625 0.0625 0.125 +0.5625 0.0625 0.1562 +0.5625 0.0625 0.1875 +0.5625 0.0625 0.2188 +0.5625 0.0625 0.25 +0.5625 0.0625 0.2812 +0.5625 0.0625 0.3125 +0.5625 0.0625 0.3438 +0.5625 0.0625 0.375 +0.5625 0.0625 0.4062 +0.5625 0.0625 0.4375 +0.5625 0.0625 0.4688 +0.5625 0.0625 0.5 +0.5625 0.0625 0.5312 +0.5625 0.0625 0.5625 +0.5625 0.0625 0.5938 +0.5625 0.0625 0.625 +0.5625 0.0625 0.6562 +0.5625 0.0625 0.6875 +0.5625 0.0625 0.7188 +0.5625 0.0625 0.75 +0.5625 0.0625 0.7812 +0.5625 0.0625 0.8125 +0.5625 0.0625 0.8438 +0.5625 0.0625 0.875 +0.5625 0.0625 0.9062 +0.5625 0.0625 0.9375 +0.5625 0.0625 0.9688 +0.5625 0.0625 1 +0.5625 0.09375 0 +0.5625 0.09375 0.03125 +0.5625 0.09375 0.0625 +0.5625 0.09375 0.09375 +0.5625 0.09375 0.125 +0.5625 0.09375 0.1562 +0.5625 0.09375 0.1875 +0.5625 0.09375 0.2188 +0.5625 0.09375 0.25 +0.5625 0.09375 0.2812 +0.5625 0.09375 0.3125 +0.5625 0.09375 0.3438 +0.5625 0.09375 0.375 +0.5625 0.09375 0.4062 +0.5625 0.09375 0.4375 +0.5625 0.09375 0.4688 +0.5625 0.09375 0.5 +0.5625 0.09375 0.5312 +0.5625 0.09375 0.5625 +0.5625 0.09375 0.5938 +0.5625 0.09375 0.625 +0.5625 0.09375 0.6562 +0.5625 0.09375 0.6875 +0.5625 0.09375 0.7188 +0.5625 0.09375 0.75 +0.5625 0.09375 0.7812 +0.5625 0.09375 0.8125 +0.5625 0.09375 0.8438 +0.5625 0.09375 0.875 +0.5625 0.09375 0.9062 +0.5625 0.09375 0.9375 +0.5625 0.09375 0.9688 +0.5625 0.09375 1 +0.5625 0.125 0 +0.5625 0.125 0.03125 +0.5625 0.125 0.0625 +0.5625 0.125 0.09375 +0.5625 0.125 0.125 +0.5625 0.125 0.1562 +0.5625 0.125 0.1875 +0.5625 0.125 0.2188 +0.5625 0.125 0.25 +0.5625 0.125 0.2812 +0.5625 0.125 0.3125 +0.5625 0.125 0.3438 +0.5625 0.125 0.375 +0.5625 0.125 0.4062 +0.5625 0.125 0.4375 +0.5625 0.125 0.4688 +0.5625 0.125 0.5 +0.5625 0.125 0.5312 +0.5625 0.125 0.5625 +0.5625 0.125 0.5938 +0.5625 0.125 0.625 +0.5625 0.125 0.6562 +0.5625 0.125 0.6875 +0.5625 0.125 0.7188 +0.5625 0.125 0.75 +0.5625 0.125 0.7812 +0.5625 0.125 0.8125 +0.5625 0.125 0.8438 +0.5625 0.125 0.875 +0.5625 0.125 0.9062 +0.5625 0.125 0.9375 +0.5625 0.125 0.9688 +0.5625 0.125 1 +0.5625 0.1562 0 +0.5625 0.1562 0.03125 +0.5625 0.1562 0.0625 +0.5625 0.1562 0.09375 +0.5625 0.1562 0.125 +0.5625 0.1562 0.1562 +0.5625 0.1562 0.1875 +0.5625 0.1562 0.2188 +0.5625 0.1562 0.25 +0.5625 0.1562 0.2812 +0.5625 0.1562 0.3125 +0.5625 0.1562 0.3438 +0.5625 0.1562 0.375 +0.5625 0.1562 0.4062 +0.5625 0.1562 0.4375 +0.5625 0.1562 0.4688 +0.5625 0.1562 0.5 +0.5625 0.1562 0.5312 +0.5625 0.1562 0.5625 +0.5625 0.1562 0.5938 +0.5625 0.1562 0.625 +0.5625 0.1562 0.6562 +0.5625 0.1562 0.6875 +0.5625 0.1562 0.7188 +0.5625 0.1562 0.75 +0.5625 0.1562 0.7812 +0.5625 0.1562 0.8125 +0.5625 0.1562 0.8438 +0.5625 0.1562 0.875 +0.5625 0.1562 0.9062 +0.5625 0.1562 0.9375 +0.5625 0.1562 0.9688 +0.5625 0.1562 1 +0.5625 0.1875 0 +0.5625 0.1875 0.03125 +0.5625 0.1875 0.0625 +0.5625 0.1875 0.09375 +0.5625 0.1875 0.125 +0.5625 0.1875 0.1562 +0.5625 0.1875 0.1875 +0.5625 0.1875 0.2188 +0.5625 0.1875 0.25 +0.5625 0.1875 0.2812 +0.5625 0.1875 0.3125 +0.5625 0.1875 0.3438 +0.5625 0.1875 0.375 +0.5625 0.1875 0.4062 +0.5625 0.1875 0.4375 +0.5625 0.1875 0.4688 +0.5625 0.1875 0.5 +0.5625 0.1875 0.5312 +0.5625 0.1875 0.5625 +0.5625 0.1875 0.5938 +0.5625 0.1875 0.625 +0.5625 0.1875 0.6562 +0.5625 0.1875 0.6875 +0.5625 0.1875 0.7188 +0.5625 0.1875 0.75 +0.5625 0.1875 0.7812 +0.5625 0.1875 0.8125 +0.5625 0.1875 0.8438 +0.5625 0.1875 0.875 +0.5625 0.1875 0.9062 +0.5625 0.1875 0.9375 +0.5625 0.1875 0.9688 +0.5625 0.1875 1 +0.5625 0.2188 0 +0.5625 0.2188 0.03125 +0.5625 0.2188 0.0625 +0.5625 0.2188 0.09375 +0.5625 0.2188 0.125 +0.5625 0.2188 0.1562 +0.5625 0.2188 0.1875 +0.5625 0.2188 0.2188 +0.5625 0.2188 0.25 +0.5625 0.2188 0.2812 +0.5625 0.2188 0.3125 +0.5625 0.2188 0.3438 +0.5625 0.2188 0.375 +0.5625 0.2188 0.4062 +0.5625 0.2188 0.4375 +0.5625 0.2188 0.4688 +0.5625 0.2188 0.5 +0.5625 0.2188 0.5312 +0.5625 0.2188 0.5625 +0.5625 0.2188 0.5938 +0.5625 0.2188 0.625 +0.5625 0.2188 0.6562 +0.5625 0.2188 0.6875 +0.5625 0.2188 0.7188 +0.5625 0.2188 0.75 +0.5625 0.2188 0.7812 +0.5625 0.2188 0.8125 +0.5625 0.2188 0.8438 +0.5625 0.2188 0.875 +0.5625 0.2188 0.9062 +0.5625 0.2188 0.9375 +0.5625 0.2188 0.9688 +0.5625 0.2188 1 +0.5625 0.25 0 +0.5625 0.25 0.03125 +0.5625 0.25 0.0625 +0.5625 0.25 0.09375 +0.5625 0.25 0.125 +0.5625 0.25 0.1562 +0.5625 0.25 0.1875 +0.5625 0.25 0.2188 +0.5625 0.25 0.25 +0.5625 0.25 0.2812 +0.5625 0.25 0.3125 +0.5625 0.25 0.3438 +0.5625 0.25 0.375 +0.5625 0.25 0.4062 +0.5625 0.25 0.4375 +0.5625 0.25 0.4688 +0.5625 0.25 0.5 +0.5625 0.25 0.5312 +0.5625 0.25 0.5625 +0.5625 0.25 0.5938 +0.5625 0.25 0.625 +0.5625 0.25 0.6562 +0.5625 0.25 0.6875 +0.5625 0.25 0.7188 +0.5625 0.25 0.75 +0.5625 0.25 0.7812 +0.5625 0.25 0.8125 +0.5625 0.25 0.8438 +0.5625 0.25 0.875 +0.5625 0.25 0.9062 +0.5625 0.25 0.9375 +0.5625 0.25 0.9688 +0.5625 0.25 1 +0.5625 0.2812 0 +0.5625 0.2812 0.03125 +0.5625 0.2812 0.0625 +0.5625 0.2812 0.09375 +0.5625 0.2812 0.125 +0.5625 0.2812 0.1562 +0.5625 0.2812 0.1875 +0.5625 0.2812 0.2188 +0.5625 0.2812 0.25 +0.5625 0.2812 0.2812 +0.5625 0.2812 0.3125 +0.5625 0.2812 0.3438 +0.5625 0.2812 0.375 +0.5625 0.2812 0.4062 +0.5625 0.2812 0.4375 +0.5625 0.2812 0.4688 +0.5625 0.2812 0.5 +0.5625 0.2812 0.5312 +0.5625 0.2812 0.5625 +0.5625 0.2812 0.5938 +0.5625 0.2812 0.625 +0.5625 0.2812 0.6562 +0.5625 0.2812 0.6875 +0.5625 0.2812 0.7188 +0.5625 0.2812 0.75 +0.5625 0.2812 0.7812 +0.5625 0.2812 0.8125 +0.5625 0.2812 0.8438 +0.5625 0.2812 0.875 +0.5625 0.2812 0.9062 +0.5625 0.2812 0.9375 +0.5625 0.2812 0.9688 +0.5625 0.2812 1 +0.5625 0.3125 0 +0.5625 0.3125 0.03125 +0.5625 0.3125 0.0625 +0.5625 0.3125 0.09375 +0.5625 0.3125 0.125 +0.5625 0.3125 0.1562 +0.5625 0.3125 0.1875 +0.5625 0.3125 0.2188 +0.5625 0.3125 0.25 +0.5625 0.3125 0.2812 +0.5625 0.3125 0.3125 +0.5625 0.3125 0.3438 +0.5625 0.3125 0.375 +0.5625 0.3125 0.4062 +0.5625 0.3125 0.4375 +0.5625 0.3125 0.4688 +0.5625 0.3125 0.5 +0.5625 0.3125 0.5312 +0.5625 0.3125 0.5625 +0.5625 0.3125 0.5938 +0.5625 0.3125 0.625 +0.5625 0.3125 0.6562 +0.5625 0.3125 0.6875 +0.5625 0.3125 0.7188 +0.5625 0.3125 0.75 +0.5625 0.3125 0.7812 +0.5625 0.3125 0.8125 +0.5625 0.3125 0.8438 +0.5625 0.3125 0.875 +0.5625 0.3125 0.9062 +0.5625 0.3125 0.9375 +0.5625 0.3125 0.9688 +0.5625 0.3125 1 +0.5625 0.3438 0 +0.5625 0.3438 0.03125 +0.5625 0.3438 0.0625 +0.5625 0.3438 0.09375 +0.5625 0.3438 0.125 +0.5625 0.3438 0.1562 +0.5625 0.3438 0.1875 +0.5625 0.3438 0.2188 +0.5625 0.3438 0.25 +0.5625 0.3438 0.2812 +0.5625 0.3438 0.3125 +0.5625 0.3438 0.3438 +0.5625 0.3438 0.375 +0.5625 0.3438 0.4062 +0.5625 0.3438 0.4375 +0.5625 0.3438 0.4688 +0.5625 0.3438 0.5 +0.5625 0.3438 0.5312 +0.5625 0.3438 0.5625 +0.5625 0.3438 0.5938 +0.5625 0.3438 0.625 +0.5625 0.3438 0.6562 +0.5625 0.3438 0.6875 +0.5625 0.3438 0.7188 +0.5625 0.3438 0.75 +0.5625 0.3438 0.7812 +0.5625 0.3438 0.8125 +0.5625 0.3438 0.8438 +0.5625 0.3438 0.875 +0.5625 0.3438 0.9062 +0.5625 0.3438 0.9375 +0.5625 0.3438 0.9688 +0.5625 0.3438 1 +0.5625 0.375 0 +0.5625 0.375 0.03125 +0.5625 0.375 0.0625 +0.5625 0.375 0.09375 +0.5625 0.375 0.125 +0.5625 0.375 0.1562 +0.5625 0.375 0.1875 +0.5625 0.375 0.2188 +0.5625 0.375 0.25 +0.5625 0.375 0.2812 +0.5625 0.375 0.3125 +0.5625 0.375 0.3438 +0.5625 0.375 0.375 +0.5625 0.375 0.4062 +0.5625 0.375 0.4375 +0.5625 0.375 0.4688 +0.5625 0.375 0.5 +0.5625 0.375 0.5312 +0.5625 0.375 0.5625 +0.5625 0.375 0.5938 +0.5625 0.375 0.625 +0.5625 0.375 0.6562 +0.5625 0.375 0.6875 +0.5625 0.375 0.7188 +0.5625 0.375 0.75 +0.5625 0.375 0.7812 +0.5625 0.375 0.8125 +0.5625 0.375 0.8438 +0.5625 0.375 0.875 +0.5625 0.375 0.9062 +0.5625 0.375 0.9375 +0.5625 0.375 0.9688 +0.5625 0.375 1 +0.5625 0.4062 0 +0.5625 0.4062 0.03125 +0.5625 0.4062 0.0625 +0.5625 0.4062 0.09375 +0.5625 0.4062 0.125 +0.5625 0.4062 0.1562 +0.5625 0.4062 0.1875 +0.5625 0.4062 0.2188 +0.5625 0.4062 0.25 +0.5625 0.4062 0.2812 +0.5625 0.4062 0.3125 +0.5625 0.4062 0.3438 +0.5625 0.4062 0.375 +0.5625 0.4062 0.4062 +0.5625 0.4062 0.4375 +0.5625 0.4062 0.4688 +0.5625 0.4062 0.5 +0.5625 0.4062 0.5312 +0.5625 0.4062 0.5625 +0.5625 0.4062 0.5938 +0.5625 0.4062 0.625 +0.5625 0.4062 0.6562 +0.5625 0.4062 0.6875 +0.5625 0.4062 0.7188 +0.5625 0.4062 0.75 +0.5625 0.4062 0.7812 +0.5625 0.4062 0.8125 +0.5625 0.4062 0.8438 +0.5625 0.4062 0.875 +0.5625 0.4062 0.9062 +0.5625 0.4062 0.9375 +0.5625 0.4062 0.9688 +0.5625 0.4062 1 +0.5625 0.4375 0 +0.5625 0.4375 0.03125 +0.5625 0.4375 0.0625 +0.5625 0.4375 0.09375 +0.5625 0.4375 0.125 +0.5625 0.4375 0.1562 +0.5625 0.4375 0.1875 +0.5625 0.4375 0.2188 +0.5625 0.4375 0.25 +0.5625 0.4375 0.2812 +0.5625 0.4375 0.3125 +0.5625 0.4375 0.3438 +0.5625 0.4375 0.375 +0.5625 0.4375 0.4062 +0.5625 0.4375 0.4375 +0.5625 0.4375 0.4688 +0.5625 0.4375 0.5 +0.5625 0.4375 0.5312 +0.5625 0.4375 0.5625 +0.5625 0.4375 0.5938 +0.5625 0.4375 0.625 +0.5625 0.4375 0.6562 +0.5625 0.4375 0.6875 +0.5625 0.4375 0.7188 +0.5625 0.4375 0.75 +0.5625 0.4375 0.7812 +0.5625 0.4375 0.8125 +0.5625 0.4375 0.8438 +0.5625 0.4375 0.875 +0.5625 0.4375 0.9062 +0.5625 0.4375 0.9375 +0.5625 0.4375 0.9688 +0.5625 0.4375 1 +0.5625 0.4688 0 +0.5625 0.4688 0.03125 +0.5625 0.4688 0.0625 +0.5625 0.4688 0.09375 +0.5625 0.4688 0.125 +0.5625 0.4688 0.1562 +0.5625 0.4688 0.1875 +0.5625 0.4688 0.2188 +0.5625 0.4688 0.25 +0.5625 0.4688 0.2812 +0.5625 0.4688 0.3125 +0.5625 0.4688 0.3438 +0.5625 0.4688 0.375 +0.5625 0.4688 0.4062 +0.5625 0.4688 0.4375 +0.5625 0.4688 0.4688 +0.5625 0.4688 0.5 +0.5625 0.4688 0.5312 +0.5625 0.4688 0.5625 +0.5625 0.4688 0.5938 +0.5625 0.4688 0.625 +0.5625 0.4688 0.6562 +0.5625 0.4688 0.6875 +0.5625 0.4688 0.7188 +0.5625 0.4688 0.75 +0.5625 0.4688 0.7812 +0.5625 0.4688 0.8125 +0.5625 0.4688 0.8438 +0.5625 0.4688 0.875 +0.5625 0.4688 0.9062 +0.5625 0.4688 0.9375 +0.5625 0.4688 0.9688 +0.5625 0.4688 1 +0.5625 0.5 0 +0.5625 0.5 0.03125 +0.5625 0.5 0.0625 +0.5625 0.5 0.09375 +0.5625 0.5 0.125 +0.5625 0.5 0.1562 +0.5625 0.5 0.1875 +0.5625 0.5 0.2188 +0.5625 0.5 0.25 +0.5625 0.5 0.2812 +0.5625 0.5 0.3125 +0.5625 0.5 0.3438 +0.5625 0.5 0.375 +0.5625 0.5 0.4062 +0.5625 0.5 0.4375 +0.5625 0.5 0.4688 +0.5625 0.5 0.5 +0.5625 0.5 0.5312 +0.5625 0.5 0.5625 +0.5625 0.5 0.5938 +0.5625 0.5 0.625 +0.5625 0.5 0.6562 +0.5625 0.5 0.6875 +0.5625 0.5 0.7188 +0.5625 0.5 0.75 +0.5625 0.5 0.7812 +0.5625 0.5 0.8125 +0.5625 0.5 0.8438 +0.5625 0.5 0.875 +0.5625 0.5 0.9062 +0.5625 0.5 0.9375 +0.5625 0.5 0.9688 +0.5625 0.5 1 +0.5625 0.5312 0 +0.5625 0.5312 0.03125 +0.5625 0.5312 0.0625 +0.5625 0.5312 0.09375 +0.5625 0.5312 0.125 +0.5625 0.5312 0.1562 +0.5625 0.5312 0.1875 +0.5625 0.5312 0.2188 +0.5625 0.5312 0.25 +0.5625 0.5312 0.2812 +0.5625 0.5312 0.3125 +0.5625 0.5312 0.3438 +0.5625 0.5312 0.375 +0.5625 0.5312 0.4062 +0.5625 0.5312 0.4375 +0.5625 0.5312 0.4688 +0.5625 0.5312 0.5 +0.5625 0.5312 0.5312 +0.5625 0.5312 0.5625 +0.5625 0.5312 0.5938 +0.5625 0.5312 0.625 +0.5625 0.5312 0.6562 +0.5625 0.5312 0.6875 +0.5625 0.5312 0.7188 +0.5625 0.5312 0.75 +0.5625 0.5312 0.7812 +0.5625 0.5312 0.8125 +0.5625 0.5312 0.8438 +0.5625 0.5312 0.875 +0.5625 0.5312 0.9062 +0.5625 0.5312 0.9375 +0.5625 0.5312 0.9688 +0.5625 0.5312 1 +0.5625 0.5625 0 +0.5625 0.5625 0.03125 +0.5625 0.5625 0.0625 +0.5625 0.5625 0.09375 +0.5625 0.5625 0.125 +0.5625 0.5625 0.1562 +0.5625 0.5625 0.1875 +0.5625 0.5625 0.2188 +0.5625 0.5625 0.25 +0.5625 0.5625 0.2812 +0.5625 0.5625 0.3125 +0.5625 0.5625 0.3438 +0.5625 0.5625 0.375 +0.5625 0.5625 0.4062 +0.5625 0.5625 0.4375 +0.5625 0.5625 0.4688 +0.5625 0.5625 0.5 +0.5625 0.5625 0.5312 +0.5625 0.5625 0.5625 +0.5625 0.5625 0.5938 +0.5625 0.5625 0.625 +0.5625 0.5625 0.6562 +0.5625 0.5625 0.6875 +0.5625 0.5625 0.7188 +0.5625 0.5625 0.75 +0.5625 0.5625 0.7812 +0.5625 0.5625 0.8125 +0.5625 0.5625 0.8438 +0.5625 0.5625 0.875 +0.5625 0.5625 0.9062 +0.5625 0.5625 0.9375 +0.5625 0.5625 0.9688 +0.5625 0.5625 1 +0.5625 0.5938 0 +0.5625 0.5938 0.03125 +0.5625 0.5938 0.0625 +0.5625 0.5938 0.09375 +0.5625 0.5938 0.125 +0.5625 0.5938 0.1562 +0.5625 0.5938 0.1875 +0.5625 0.5938 0.2188 +0.5625 0.5938 0.25 +0.5625 0.5938 0.2812 +0.5625 0.5938 0.3125 +0.5625 0.5938 0.3438 +0.5625 0.5938 0.375 +0.5625 0.5938 0.4062 +0.5625 0.5938 0.4375 +0.5625 0.5938 0.4688 +0.5625 0.5938 0.5 +0.5625 0.5938 0.5312 +0.5625 0.5938 0.5625 +0.5625 0.5938 0.5938 +0.5625 0.5938 0.625 +0.5625 0.5938 0.6562 +0.5625 0.5938 0.6875 +0.5625 0.5938 0.7188 +0.5625 0.5938 0.75 +0.5625 0.5938 0.7812 +0.5625 0.5938 0.8125 +0.5625 0.5938 0.8438 +0.5625 0.5938 0.875 +0.5625 0.5938 0.9062 +0.5625 0.5938 0.9375 +0.5625 0.5938 0.9688 +0.5625 0.5938 1 +0.5625 0.625 0 +0.5625 0.625 0.03125 +0.5625 0.625 0.0625 +0.5625 0.625 0.09375 +0.5625 0.625 0.125 +0.5625 0.625 0.1562 +0.5625 0.625 0.1875 +0.5625 0.625 0.2188 +0.5625 0.625 0.25 +0.5625 0.625 0.2812 +0.5625 0.625 0.3125 +0.5625 0.625 0.3438 +0.5625 0.625 0.375 +0.5625 0.625 0.4062 +0.5625 0.625 0.4375 +0.5625 0.625 0.4688 +0.5625 0.625 0.5 +0.5625 0.625 0.5312 +0.5625 0.625 0.5625 +0.5625 0.625 0.5938 +0.5625 0.625 0.625 +0.5625 0.625 0.6562 +0.5625 0.625 0.6875 +0.5625 0.625 0.7188 +0.5625 0.625 0.75 +0.5625 0.625 0.7812 +0.5625 0.625 0.8125 +0.5625 0.625 0.8438 +0.5625 0.625 0.875 +0.5625 0.625 0.9062 +0.5625 0.625 0.9375 +0.5625 0.625 0.9688 +0.5625 0.625 1 +0.5625 0.6562 0 +0.5625 0.6562 0.03125 +0.5625 0.6562 0.0625 +0.5625 0.6562 0.09375 +0.5625 0.6562 0.125 +0.5625 0.6562 0.1562 +0.5625 0.6562 0.1875 +0.5625 0.6562 0.2188 +0.5625 0.6562 0.25 +0.5625 0.6562 0.2812 +0.5625 0.6562 0.3125 +0.5625 0.6562 0.3438 +0.5625 0.6562 0.375 +0.5625 0.6562 0.4062 +0.5625 0.6562 0.4375 +0.5625 0.6562 0.4688 +0.5625 0.6562 0.5 +0.5625 0.6562 0.5312 +0.5625 0.6562 0.5625 +0.5625 0.6562 0.5938 +0.5625 0.6562 0.625 +0.5625 0.6562 0.6562 +0.5625 0.6562 0.6875 +0.5625 0.6562 0.7188 +0.5625 0.6562 0.75 +0.5625 0.6562 0.7812 +0.5625 0.6562 0.8125 +0.5625 0.6562 0.8438 +0.5625 0.6562 0.875 +0.5625 0.6562 0.9062 +0.5625 0.6562 0.9375 +0.5625 0.6562 0.9688 +0.5625 0.6562 1 +0.5625 0.6875 0 +0.5625 0.6875 0.03125 +0.5625 0.6875 0.0625 +0.5625 0.6875 0.09375 +0.5625 0.6875 0.125 +0.5625 0.6875 0.1562 +0.5625 0.6875 0.1875 +0.5625 0.6875 0.2188 +0.5625 0.6875 0.25 +0.5625 0.6875 0.2812 +0.5625 0.6875 0.3125 +0.5625 0.6875 0.3438 +0.5625 0.6875 0.375 +0.5625 0.6875 0.4062 +0.5625 0.6875 0.4375 +0.5625 0.6875 0.4688 +0.5625 0.6875 0.5 +0.5625 0.6875 0.5312 +0.5625 0.6875 0.5625 +0.5625 0.6875 0.5938 +0.5625 0.6875 0.625 +0.5625 0.6875 0.6562 +0.5625 0.6875 0.6875 +0.5625 0.6875 0.7188 +0.5625 0.6875 0.75 +0.5625 0.6875 0.7812 +0.5625 0.6875 0.8125 +0.5625 0.6875 0.8438 +0.5625 0.6875 0.875 +0.5625 0.6875 0.9062 +0.5625 0.6875 0.9375 +0.5625 0.6875 0.9688 +0.5625 0.6875 1 +0.5625 0.7188 0 +0.5625 0.7188 0.03125 +0.5625 0.7188 0.0625 +0.5625 0.7188 0.09375 +0.5625 0.7188 0.125 +0.5625 0.7188 0.1562 +0.5625 0.7188 0.1875 +0.5625 0.7188 0.2188 +0.5625 0.7188 0.25 +0.5625 0.7188 0.2812 +0.5625 0.7188 0.3125 +0.5625 0.7188 0.3438 +0.5625 0.7188 0.375 +0.5625 0.7188 0.4062 +0.5625 0.7188 0.4375 +0.5625 0.7188 0.4688 +0.5625 0.7188 0.5 +0.5625 0.7188 0.5312 +0.5625 0.7188 0.5625 +0.5625 0.7188 0.5938 +0.5625 0.7188 0.625 +0.5625 0.7188 0.6562 +0.5625 0.7188 0.6875 +0.5625 0.7188 0.7188 +0.5625 0.7188 0.75 +0.5625 0.7188 0.7812 +0.5625 0.7188 0.8125 +0.5625 0.7188 0.8438 +0.5625 0.7188 0.875 +0.5625 0.7188 0.9062 +0.5625 0.7188 0.9375 +0.5625 0.7188 0.9688 +0.5625 0.7188 1 +0.5625 0.75 0 +0.5625 0.75 0.03125 +0.5625 0.75 0.0625 +0.5625 0.75 0.09375 +0.5625 0.75 0.125 +0.5625 0.75 0.1562 +0.5625 0.75 0.1875 +0.5625 0.75 0.2188 +0.5625 0.75 0.25 +0.5625 0.75 0.2812 +0.5625 0.75 0.3125 +0.5625 0.75 0.3438 +0.5625 0.75 0.375 +0.5625 0.75 0.4062 +0.5625 0.75 0.4375 +0.5625 0.75 0.4688 +0.5625 0.75 0.5 +0.5625 0.75 0.5312 +0.5625 0.75 0.5625 +0.5625 0.75 0.5938 +0.5625 0.75 0.625 +0.5625 0.75 0.6562 +0.5625 0.75 0.6875 +0.5625 0.75 0.7188 +0.5625 0.75 0.75 +0.5625 0.75 0.7812 +0.5625 0.75 0.8125 +0.5625 0.75 0.8438 +0.5625 0.75 0.875 +0.5625 0.75 0.9062 +0.5625 0.75 0.9375 +0.5625 0.75 0.9688 +0.5625 0.75 1 +0.5625 0.7812 0 +0.5625 0.7812 0.03125 +0.5625 0.7812 0.0625 +0.5625 0.7812 0.09375 +0.5625 0.7812 0.125 +0.5625 0.7812 0.1562 +0.5625 0.7812 0.1875 +0.5625 0.7812 0.2188 +0.5625 0.7812 0.25 +0.5625 0.7812 0.2812 +0.5625 0.7812 0.3125 +0.5625 0.7812 0.3438 +0.5625 0.7812 0.375 +0.5625 0.7812 0.4062 +0.5625 0.7812 0.4375 +0.5625 0.7812 0.4688 +0.5625 0.7812 0.5 +0.5625 0.7812 0.5312 +0.5625 0.7812 0.5625 +0.5625 0.7812 0.5938 +0.5625 0.7812 0.625 +0.5625 0.7812 0.6562 +0.5625 0.7812 0.6875 +0.5625 0.7812 0.7188 +0.5625 0.7812 0.75 +0.5625 0.7812 0.7812 +0.5625 0.7812 0.8125 +0.5625 0.7812 0.8438 +0.5625 0.7812 0.875 +0.5625 0.7812 0.9062 +0.5625 0.7812 0.9375 +0.5625 0.7812 0.9688 +0.5625 0.7812 1 +0.5625 0.8125 0 +0.5625 0.8125 0.03125 +0.5625 0.8125 0.0625 +0.5625 0.8125 0.09375 +0.5625 0.8125 0.125 +0.5625 0.8125 0.1562 +0.5625 0.8125 0.1875 +0.5625 0.8125 0.2188 +0.5625 0.8125 0.25 +0.5625 0.8125 0.2812 +0.5625 0.8125 0.3125 +0.5625 0.8125 0.3438 +0.5625 0.8125 0.375 +0.5625 0.8125 0.4062 +0.5625 0.8125 0.4375 +0.5625 0.8125 0.4688 +0.5625 0.8125 0.5 +0.5625 0.8125 0.5312 +0.5625 0.8125 0.5625 +0.5625 0.8125 0.5938 +0.5625 0.8125 0.625 +0.5625 0.8125 0.6562 +0.5625 0.8125 0.6875 +0.5625 0.8125 0.7188 +0.5625 0.8125 0.75 +0.5625 0.8125 0.7812 +0.5625 0.8125 0.8125 +0.5625 0.8125 0.8438 +0.5625 0.8125 0.875 +0.5625 0.8125 0.9062 +0.5625 0.8125 0.9375 +0.5625 0.8125 0.9688 +0.5625 0.8125 1 +0.5625 0.8438 0 +0.5625 0.8438 0.03125 +0.5625 0.8438 0.0625 +0.5625 0.8438 0.09375 +0.5625 0.8438 0.125 +0.5625 0.8438 0.1562 +0.5625 0.8438 0.1875 +0.5625 0.8438 0.2188 +0.5625 0.8438 0.25 +0.5625 0.8438 0.2812 +0.5625 0.8438 0.3125 +0.5625 0.8438 0.3438 +0.5625 0.8438 0.375 +0.5625 0.8438 0.4062 +0.5625 0.8438 0.4375 +0.5625 0.8438 0.4688 +0.5625 0.8438 0.5 +0.5625 0.8438 0.5312 +0.5625 0.8438 0.5625 +0.5625 0.8438 0.5938 +0.5625 0.8438 0.625 +0.5625 0.8438 0.6562 +0.5625 0.8438 0.6875 +0.5625 0.8438 0.7188 +0.5625 0.8438 0.75 +0.5625 0.8438 0.7812 +0.5625 0.8438 0.8125 +0.5625 0.8438 0.8438 +0.5625 0.8438 0.875 +0.5625 0.8438 0.9062 +0.5625 0.8438 0.9375 +0.5625 0.8438 0.9688 +0.5625 0.8438 1 +0.5625 0.875 0 +0.5625 0.875 0.03125 +0.5625 0.875 0.0625 +0.5625 0.875 0.09375 +0.5625 0.875 0.125 +0.5625 0.875 0.1562 +0.5625 0.875 0.1875 +0.5625 0.875 0.2188 +0.5625 0.875 0.25 +0.5625 0.875 0.2812 +0.5625 0.875 0.3125 +0.5625 0.875 0.3438 +0.5625 0.875 0.375 +0.5625 0.875 0.4062 +0.5625 0.875 0.4375 +0.5625 0.875 0.4688 +0.5625 0.875 0.5 +0.5625 0.875 0.5312 +0.5625 0.875 0.5625 +0.5625 0.875 0.5938 +0.5625 0.875 0.625 +0.5625 0.875 0.6562 +0.5625 0.875 0.6875 +0.5625 0.875 0.7188 +0.5625 0.875 0.75 +0.5625 0.875 0.7812 +0.5625 0.875 0.8125 +0.5625 0.875 0.8438 +0.5625 0.875 0.875 +0.5625 0.875 0.9062 +0.5625 0.875 0.9375 +0.5625 0.875 0.9688 +0.5625 0.875 1 +0.5625 0.9062 0 +0.5625 0.9062 0.03125 +0.5625 0.9062 0.0625 +0.5625 0.9062 0.09375 +0.5625 0.9062 0.125 +0.5625 0.9062 0.1562 +0.5625 0.9062 0.1875 +0.5625 0.9062 0.2188 +0.5625 0.9062 0.25 +0.5625 0.9062 0.2812 +0.5625 0.9062 0.3125 +0.5625 0.9062 0.3438 +0.5625 0.9062 0.375 +0.5625 0.9062 0.4062 +0.5625 0.9062 0.4375 +0.5625 0.9062 0.4688 +0.5625 0.9062 0.5 +0.5625 0.9062 0.5312 +0.5625 0.9062 0.5625 +0.5625 0.9062 0.5938 +0.5625 0.9062 0.625 +0.5625 0.9062 0.6562 +0.5625 0.9062 0.6875 +0.5625 0.9062 0.7188 +0.5625 0.9062 0.75 +0.5625 0.9062 0.7812 +0.5625 0.9062 0.8125 +0.5625 0.9062 0.8438 +0.5625 0.9062 0.875 +0.5625 0.9062 0.9062 +0.5625 0.9062 0.9375 +0.5625 0.9062 0.9688 +0.5625 0.9062 1 +0.5625 0.9375 0 +0.5625 0.9375 0.03125 +0.5625 0.9375 0.0625 +0.5625 0.9375 0.09375 +0.5625 0.9375 0.125 +0.5625 0.9375 0.1562 +0.5625 0.9375 0.1875 +0.5625 0.9375 0.2188 +0.5625 0.9375 0.25 +0.5625 0.9375 0.2812 +0.5625 0.9375 0.3125 +0.5625 0.9375 0.3438 +0.5625 0.9375 0.375 +0.5625 0.9375 0.4062 +0.5625 0.9375 0.4375 +0.5625 0.9375 0.4688 +0.5625 0.9375 0.5 +0.5625 0.9375 0.5312 +0.5625 0.9375 0.5625 +0.5625 0.9375 0.5938 +0.5625 0.9375 0.625 +0.5625 0.9375 0.6562 +0.5625 0.9375 0.6875 +0.5625 0.9375 0.7188 +0.5625 0.9375 0.75 +0.5625 0.9375 0.7812 +0.5625 0.9375 0.8125 +0.5625 0.9375 0.8438 +0.5625 0.9375 0.875 +0.5625 0.9375 0.9062 +0.5625 0.9375 0.9375 +0.5625 0.9375 0.9688 +0.5625 0.9375 1 +0.5625 0.9688 0 +0.5625 0.9688 0.03125 +0.5625 0.9688 0.0625 +0.5625 0.9688 0.09375 +0.5625 0.9688 0.125 +0.5625 0.9688 0.1562 +0.5625 0.9688 0.1875 +0.5625 0.9688 0.2188 +0.5625 0.9688 0.25 +0.5625 0.9688 0.2812 +0.5625 0.9688 0.3125 +0.5625 0.9688 0.3438 +0.5625 0.9688 0.375 +0.5625 0.9688 0.4062 +0.5625 0.9688 0.4375 +0.5625 0.9688 0.4688 +0.5625 0.9688 0.5 +0.5625 0.9688 0.5312 +0.5625 0.9688 0.5625 +0.5625 0.9688 0.5938 +0.5625 0.9688 0.625 +0.5625 0.9688 0.6562 +0.5625 0.9688 0.6875 +0.5625 0.9688 0.7188 +0.5625 0.9688 0.75 +0.5625 0.9688 0.7812 +0.5625 0.9688 0.8125 +0.5625 0.9688 0.8438 +0.5625 0.9688 0.875 +0.5625 0.9688 0.9062 +0.5625 0.9688 0.9375 +0.5625 0.9688 0.9688 +0.5625 0.9688 1 +0.5625 1 0 +0.5625 1 0.03125 +0.5625 1 0.0625 +0.5625 1 0.09375 +0.5625 1 0.125 +0.5625 1 0.1562 +0.5625 1 0.1875 +0.5625 1 0.2188 +0.5625 1 0.25 +0.5625 1 0.2812 +0.5625 1 0.3125 +0.5625 1 0.3438 +0.5625 1 0.375 +0.5625 1 0.4062 +0.5625 1 0.4375 +0.5625 1 0.4688 +0.5625 1 0.5 +0.5625 1 0.5312 +0.5625 1 0.5625 +0.5625 1 0.5938 +0.5625 1 0.625 +0.5625 1 0.6562 +0.5625 1 0.6875 +0.5625 1 0.7188 +0.5625 1 0.75 +0.5625 1 0.7812 +0.5625 1 0.8125 +0.5625 1 0.8438 +0.5625 1 0.875 +0.5625 1 0.9062 +0.5625 1 0.9375 +0.5625 1 0.9688 +0.5625 1 1 +0.5938 0 0 +0.5938 0 0.03125 +0.5938 0 0.0625 +0.5938 0 0.09375 +0.5938 0 0.125 +0.5938 0 0.1562 +0.5938 0 0.1875 +0.5938 0 0.2188 +0.5938 0 0.25 +0.5938 0 0.2812 +0.5938 0 0.3125 +0.5938 0 0.3438 +0.5938 0 0.375 +0.5938 0 0.4062 +0.5938 0 0.4375 +0.5938 0 0.4688 +0.5938 0 0.5 +0.5938 0 0.5312 +0.5938 0 0.5625 +0.5938 0 0.5938 +0.5938 0 0.625 +0.5938 0 0.6562 +0.5938 0 0.6875 +0.5938 0 0.7188 +0.5938 0 0.75 +0.5938 0 0.7812 +0.5938 0 0.8125 +0.5938 0 0.8438 +0.5938 0 0.875 +0.5938 0 0.9062 +0.5938 0 0.9375 +0.5938 0 0.9688 +0.5938 0 1 +0.5938 0.03125 0 +0.5938 0.03125 0.03125 +0.5938 0.03125 0.0625 +0.5938 0.03125 0.09375 +0.5938 0.03125 0.125 +0.5938 0.03125 0.1562 +0.5938 0.03125 0.1875 +0.5938 0.03125 0.2188 +0.5938 0.03125 0.25 +0.5938 0.03125 0.2812 +0.5938 0.03125 0.3125 +0.5938 0.03125 0.3438 +0.5938 0.03125 0.375 +0.5938 0.03125 0.4062 +0.5938 0.03125 0.4375 +0.5938 0.03125 0.4688 +0.5938 0.03125 0.5 +0.5938 0.03125 0.5312 +0.5938 0.03125 0.5625 +0.5938 0.03125 0.5938 +0.5938 0.03125 0.625 +0.5938 0.03125 0.6562 +0.5938 0.03125 0.6875 +0.5938 0.03125 0.7188 +0.5938 0.03125 0.75 +0.5938 0.03125 0.7812 +0.5938 0.03125 0.8125 +0.5938 0.03125 0.8438 +0.5938 0.03125 0.875 +0.5938 0.03125 0.9062 +0.5938 0.03125 0.9375 +0.5938 0.03125 0.9688 +0.5938 0.03125 1 +0.5938 0.0625 0 +0.5938 0.0625 0.03125 +0.5938 0.0625 0.0625 +0.5938 0.0625 0.09375 +0.5938 0.0625 0.125 +0.5938 0.0625 0.1562 +0.5938 0.0625 0.1875 +0.5938 0.0625 0.2188 +0.5938 0.0625 0.25 +0.5938 0.0625 0.2812 +0.5938 0.0625 0.3125 +0.5938 0.0625 0.3438 +0.5938 0.0625 0.375 +0.5938 0.0625 0.4062 +0.5938 0.0625 0.4375 +0.5938 0.0625 0.4688 +0.5938 0.0625 0.5 +0.5938 0.0625 0.5312 +0.5938 0.0625 0.5625 +0.5938 0.0625 0.5938 +0.5938 0.0625 0.625 +0.5938 0.0625 0.6562 +0.5938 0.0625 0.6875 +0.5938 0.0625 0.7188 +0.5938 0.0625 0.75 +0.5938 0.0625 0.7812 +0.5938 0.0625 0.8125 +0.5938 0.0625 0.8438 +0.5938 0.0625 0.875 +0.5938 0.0625 0.9062 +0.5938 0.0625 0.9375 +0.5938 0.0625 0.9688 +0.5938 0.0625 1 +0.5938 0.09375 0 +0.5938 0.09375 0.03125 +0.5938 0.09375 0.0625 +0.5938 0.09375 0.09375 +0.5938 0.09375 0.125 +0.5938 0.09375 0.1562 +0.5938 0.09375 0.1875 +0.5938 0.09375 0.2188 +0.5938 0.09375 0.25 +0.5938 0.09375 0.2812 +0.5938 0.09375 0.3125 +0.5938 0.09375 0.3438 +0.5938 0.09375 0.375 +0.5938 0.09375 0.4062 +0.5938 0.09375 0.4375 +0.5938 0.09375 0.4688 +0.5938 0.09375 0.5 +0.5938 0.09375 0.5312 +0.5938 0.09375 0.5625 +0.5938 0.09375 0.5938 +0.5938 0.09375 0.625 +0.5938 0.09375 0.6562 +0.5938 0.09375 0.6875 +0.5938 0.09375 0.7188 +0.5938 0.09375 0.75 +0.5938 0.09375 0.7812 +0.5938 0.09375 0.8125 +0.5938 0.09375 0.8438 +0.5938 0.09375 0.875 +0.5938 0.09375 0.9062 +0.5938 0.09375 0.9375 +0.5938 0.09375 0.9688 +0.5938 0.09375 1 +0.5938 0.125 0 +0.5938 0.125 0.03125 +0.5938 0.125 0.0625 +0.5938 0.125 0.09375 +0.5938 0.125 0.125 +0.5938 0.125 0.1562 +0.5938 0.125 0.1875 +0.5938 0.125 0.2188 +0.5938 0.125 0.25 +0.5938 0.125 0.2812 +0.5938 0.125 0.3125 +0.5938 0.125 0.3438 +0.5938 0.125 0.375 +0.5938 0.125 0.4062 +0.5938 0.125 0.4375 +0.5938 0.125 0.4688 +0.5938 0.125 0.5 +0.5938 0.125 0.5312 +0.5938 0.125 0.5625 +0.5938 0.125 0.5938 +0.5938 0.125 0.625 +0.5938 0.125 0.6562 +0.5938 0.125 0.6875 +0.5938 0.125 0.7188 +0.5938 0.125 0.75 +0.5938 0.125 0.7812 +0.5938 0.125 0.8125 +0.5938 0.125 0.8438 +0.5938 0.125 0.875 +0.5938 0.125 0.9062 +0.5938 0.125 0.9375 +0.5938 0.125 0.9688 +0.5938 0.125 1 +0.5938 0.1562 0 +0.5938 0.1562 0.03125 +0.5938 0.1562 0.0625 +0.5938 0.1562 0.09375 +0.5938 0.1562 0.125 +0.5938 0.1562 0.1562 +0.5938 0.1562 0.1875 +0.5938 0.1562 0.2188 +0.5938 0.1562 0.25 +0.5938 0.1562 0.2812 +0.5938 0.1562 0.3125 +0.5938 0.1562 0.3438 +0.5938 0.1562 0.375 +0.5938 0.1562 0.4062 +0.5938 0.1562 0.4375 +0.5938 0.1562 0.4688 +0.5938 0.1562 0.5 +0.5938 0.1562 0.5312 +0.5938 0.1562 0.5625 +0.5938 0.1562 0.5938 +0.5938 0.1562 0.625 +0.5938 0.1562 0.6562 +0.5938 0.1562 0.6875 +0.5938 0.1562 0.7188 +0.5938 0.1562 0.75 +0.5938 0.1562 0.7812 +0.5938 0.1562 0.8125 +0.5938 0.1562 0.8438 +0.5938 0.1562 0.875 +0.5938 0.1562 0.9062 +0.5938 0.1562 0.9375 +0.5938 0.1562 0.9688 +0.5938 0.1562 1 +0.5938 0.1875 0 +0.5938 0.1875 0.03125 +0.5938 0.1875 0.0625 +0.5938 0.1875 0.09375 +0.5938 0.1875 0.125 +0.5938 0.1875 0.1562 +0.5938 0.1875 0.1875 +0.5938 0.1875 0.2188 +0.5938 0.1875 0.25 +0.5938 0.1875 0.2812 +0.5938 0.1875 0.3125 +0.5938 0.1875 0.3438 +0.5938 0.1875 0.375 +0.5938 0.1875 0.4062 +0.5938 0.1875 0.4375 +0.5938 0.1875 0.4688 +0.5938 0.1875 0.5 +0.5938 0.1875 0.5312 +0.5938 0.1875 0.5625 +0.5938 0.1875 0.5938 +0.5938 0.1875 0.625 +0.5938 0.1875 0.6562 +0.5938 0.1875 0.6875 +0.5938 0.1875 0.7188 +0.5938 0.1875 0.75 +0.5938 0.1875 0.7812 +0.5938 0.1875 0.8125 +0.5938 0.1875 0.8438 +0.5938 0.1875 0.875 +0.5938 0.1875 0.9062 +0.5938 0.1875 0.9375 +0.5938 0.1875 0.9688 +0.5938 0.1875 1 +0.5938 0.2188 0 +0.5938 0.2188 0.03125 +0.5938 0.2188 0.0625 +0.5938 0.2188 0.09375 +0.5938 0.2188 0.125 +0.5938 0.2188 0.1562 +0.5938 0.2188 0.1875 +0.5938 0.2188 0.2188 +0.5938 0.2188 0.25 +0.5938 0.2188 0.2812 +0.5938 0.2188 0.3125 +0.5938 0.2188 0.3438 +0.5938 0.2188 0.375 +0.5938 0.2188 0.4062 +0.5938 0.2188 0.4375 +0.5938 0.2188 0.4688 +0.5938 0.2188 0.5 +0.5938 0.2188 0.5312 +0.5938 0.2188 0.5625 +0.5938 0.2188 0.5938 +0.5938 0.2188 0.625 +0.5938 0.2188 0.6562 +0.5938 0.2188 0.6875 +0.5938 0.2188 0.7188 +0.5938 0.2188 0.75 +0.5938 0.2188 0.7812 +0.5938 0.2188 0.8125 +0.5938 0.2188 0.8438 +0.5938 0.2188 0.875 +0.5938 0.2188 0.9062 +0.5938 0.2188 0.9375 +0.5938 0.2188 0.9688 +0.5938 0.2188 1 +0.5938 0.25 0 +0.5938 0.25 0.03125 +0.5938 0.25 0.0625 +0.5938 0.25 0.09375 +0.5938 0.25 0.125 +0.5938 0.25 0.1562 +0.5938 0.25 0.1875 +0.5938 0.25 0.2188 +0.5938 0.25 0.25 +0.5938 0.25 0.2812 +0.5938 0.25 0.3125 +0.5938 0.25 0.3438 +0.5938 0.25 0.375 +0.5938 0.25 0.4062 +0.5938 0.25 0.4375 +0.5938 0.25 0.4688 +0.5938 0.25 0.5 +0.5938 0.25 0.5312 +0.5938 0.25 0.5625 +0.5938 0.25 0.5938 +0.5938 0.25 0.625 +0.5938 0.25 0.6562 +0.5938 0.25 0.6875 +0.5938 0.25 0.7188 +0.5938 0.25 0.75 +0.5938 0.25 0.7812 +0.5938 0.25 0.8125 +0.5938 0.25 0.8438 +0.5938 0.25 0.875 +0.5938 0.25 0.9062 +0.5938 0.25 0.9375 +0.5938 0.25 0.9688 +0.5938 0.25 1 +0.5938 0.2812 0 +0.5938 0.2812 0.03125 +0.5938 0.2812 0.0625 +0.5938 0.2812 0.09375 +0.5938 0.2812 0.125 +0.5938 0.2812 0.1562 +0.5938 0.2812 0.1875 +0.5938 0.2812 0.2188 +0.5938 0.2812 0.25 +0.5938 0.2812 0.2812 +0.5938 0.2812 0.3125 +0.5938 0.2812 0.3438 +0.5938 0.2812 0.375 +0.5938 0.2812 0.4062 +0.5938 0.2812 0.4375 +0.5938 0.2812 0.4688 +0.5938 0.2812 0.5 +0.5938 0.2812 0.5312 +0.5938 0.2812 0.5625 +0.5938 0.2812 0.5938 +0.5938 0.2812 0.625 +0.5938 0.2812 0.6562 +0.5938 0.2812 0.6875 +0.5938 0.2812 0.7188 +0.5938 0.2812 0.75 +0.5938 0.2812 0.7812 +0.5938 0.2812 0.8125 +0.5938 0.2812 0.8438 +0.5938 0.2812 0.875 +0.5938 0.2812 0.9062 +0.5938 0.2812 0.9375 +0.5938 0.2812 0.9688 +0.5938 0.2812 1 +0.5938 0.3125 0 +0.5938 0.3125 0.03125 +0.5938 0.3125 0.0625 +0.5938 0.3125 0.09375 +0.5938 0.3125 0.125 +0.5938 0.3125 0.1562 +0.5938 0.3125 0.1875 +0.5938 0.3125 0.2188 +0.5938 0.3125 0.25 +0.5938 0.3125 0.2812 +0.5938 0.3125 0.3125 +0.5938 0.3125 0.3438 +0.5938 0.3125 0.375 +0.5938 0.3125 0.4062 +0.5938 0.3125 0.4375 +0.5938 0.3125 0.4688 +0.5938 0.3125 0.5 +0.5938 0.3125 0.5312 +0.5938 0.3125 0.5625 +0.5938 0.3125 0.5938 +0.5938 0.3125 0.625 +0.5938 0.3125 0.6562 +0.5938 0.3125 0.6875 +0.5938 0.3125 0.7188 +0.5938 0.3125 0.75 +0.5938 0.3125 0.7812 +0.5938 0.3125 0.8125 +0.5938 0.3125 0.8438 +0.5938 0.3125 0.875 +0.5938 0.3125 0.9062 +0.5938 0.3125 0.9375 +0.5938 0.3125 0.9688 +0.5938 0.3125 1 +0.5938 0.3438 0 +0.5938 0.3438 0.03125 +0.5938 0.3438 0.0625 +0.5938 0.3438 0.09375 +0.5938 0.3438 0.125 +0.5938 0.3438 0.1562 +0.5938 0.3438 0.1875 +0.5938 0.3438 0.2188 +0.5938 0.3438 0.25 +0.5938 0.3438 0.2812 +0.5938 0.3438 0.3125 +0.5938 0.3438 0.3438 +0.5938 0.3438 0.375 +0.5938 0.3438 0.4062 +0.5938 0.3438 0.4375 +0.5938 0.3438 0.4688 +0.5938 0.3438 0.5 +0.5938 0.3438 0.5312 +0.5938 0.3438 0.5625 +0.5938 0.3438 0.5938 +0.5938 0.3438 0.625 +0.5938 0.3438 0.6562 +0.5938 0.3438 0.6875 +0.5938 0.3438 0.7188 +0.5938 0.3438 0.75 +0.5938 0.3438 0.7812 +0.5938 0.3438 0.8125 +0.5938 0.3438 0.8438 +0.5938 0.3438 0.875 +0.5938 0.3438 0.9062 +0.5938 0.3438 0.9375 +0.5938 0.3438 0.9688 +0.5938 0.3438 1 +0.5938 0.375 0 +0.5938 0.375 0.03125 +0.5938 0.375 0.0625 +0.5938 0.375 0.09375 +0.5938 0.375 0.125 +0.5938 0.375 0.1562 +0.5938 0.375 0.1875 +0.5938 0.375 0.2188 +0.5938 0.375 0.25 +0.5938 0.375 0.2812 +0.5938 0.375 0.3125 +0.5938 0.375 0.3438 +0.5938 0.375 0.375 +0.5938 0.375 0.4062 +0.5938 0.375 0.4375 +0.5938 0.375 0.4688 +0.5938 0.375 0.5 +0.5938 0.375 0.5312 +0.5938 0.375 0.5625 +0.5938 0.375 0.5938 +0.5938 0.375 0.625 +0.5938 0.375 0.6562 +0.5938 0.375 0.6875 +0.5938 0.375 0.7188 +0.5938 0.375 0.75 +0.5938 0.375 0.7812 +0.5938 0.375 0.8125 +0.5938 0.375 0.8438 +0.5938 0.375 0.875 +0.5938 0.375 0.9062 +0.5938 0.375 0.9375 +0.5938 0.375 0.9688 +0.5938 0.375 1 +0.5938 0.4062 0 +0.5938 0.4062 0.03125 +0.5938 0.4062 0.0625 +0.5938 0.4062 0.09375 +0.5938 0.4062 0.125 +0.5938 0.4062 0.1562 +0.5938 0.4062 0.1875 +0.5938 0.4062 0.2188 +0.5938 0.4062 0.25 +0.5938 0.4062 0.2812 +0.5938 0.4062 0.3125 +0.5938 0.4062 0.3438 +0.5938 0.4062 0.375 +0.5938 0.4062 0.4062 +0.5938 0.4062 0.4375 +0.5938 0.4062 0.4688 +0.5938 0.4062 0.5 +0.5938 0.4062 0.5312 +0.5938 0.4062 0.5625 +0.5938 0.4062 0.5938 +0.5938 0.4062 0.625 +0.5938 0.4062 0.6562 +0.5938 0.4062 0.6875 +0.5938 0.4062 0.7188 +0.5938 0.4062 0.75 +0.5938 0.4062 0.7812 +0.5938 0.4062 0.8125 +0.5938 0.4062 0.8438 +0.5938 0.4062 0.875 +0.5938 0.4062 0.9062 +0.5938 0.4062 0.9375 +0.5938 0.4062 0.9688 +0.5938 0.4062 1 +0.5938 0.4375 0 +0.5938 0.4375 0.03125 +0.5938 0.4375 0.0625 +0.5938 0.4375 0.09375 +0.5938 0.4375 0.125 +0.5938 0.4375 0.1562 +0.5938 0.4375 0.1875 +0.5938 0.4375 0.2188 +0.5938 0.4375 0.25 +0.5938 0.4375 0.2812 +0.5938 0.4375 0.3125 +0.5938 0.4375 0.3438 +0.5938 0.4375 0.375 +0.5938 0.4375 0.4062 +0.5938 0.4375 0.4375 +0.5938 0.4375 0.4688 +0.5938 0.4375 0.5 +0.5938 0.4375 0.5312 +0.5938 0.4375 0.5625 +0.5938 0.4375 0.5938 +0.5938 0.4375 0.625 +0.5938 0.4375 0.6562 +0.5938 0.4375 0.6875 +0.5938 0.4375 0.7188 +0.5938 0.4375 0.75 +0.5938 0.4375 0.7812 +0.5938 0.4375 0.8125 +0.5938 0.4375 0.8438 +0.5938 0.4375 0.875 +0.5938 0.4375 0.9062 +0.5938 0.4375 0.9375 +0.5938 0.4375 0.9688 +0.5938 0.4375 1 +0.5938 0.4688 0 +0.5938 0.4688 0.03125 +0.5938 0.4688 0.0625 +0.5938 0.4688 0.09375 +0.5938 0.4688 0.125 +0.5938 0.4688 0.1562 +0.5938 0.4688 0.1875 +0.5938 0.4688 0.2188 +0.5938 0.4688 0.25 +0.5938 0.4688 0.2812 +0.5938 0.4688 0.3125 +0.5938 0.4688 0.3438 +0.5938 0.4688 0.375 +0.5938 0.4688 0.4062 +0.5938 0.4688 0.4375 +0.5938 0.4688 0.4688 +0.5938 0.4688 0.5 +0.5938 0.4688 0.5312 +0.5938 0.4688 0.5625 +0.5938 0.4688 0.5938 +0.5938 0.4688 0.625 +0.5938 0.4688 0.6562 +0.5938 0.4688 0.6875 +0.5938 0.4688 0.7188 +0.5938 0.4688 0.75 +0.5938 0.4688 0.7812 +0.5938 0.4688 0.8125 +0.5938 0.4688 0.8438 +0.5938 0.4688 0.875 +0.5938 0.4688 0.9062 +0.5938 0.4688 0.9375 +0.5938 0.4688 0.9688 +0.5938 0.4688 1 +0.5938 0.5 0 +0.5938 0.5 0.03125 +0.5938 0.5 0.0625 +0.5938 0.5 0.09375 +0.5938 0.5 0.125 +0.5938 0.5 0.1562 +0.5938 0.5 0.1875 +0.5938 0.5 0.2188 +0.5938 0.5 0.25 +0.5938 0.5 0.2812 +0.5938 0.5 0.3125 +0.5938 0.5 0.3438 +0.5938 0.5 0.375 +0.5938 0.5 0.4062 +0.5938 0.5 0.4375 +0.5938 0.5 0.4688 +0.5938 0.5 0.5 +0.5938 0.5 0.5312 +0.5938 0.5 0.5625 +0.5938 0.5 0.5938 +0.5938 0.5 0.625 +0.5938 0.5 0.6562 +0.5938 0.5 0.6875 +0.5938 0.5 0.7188 +0.5938 0.5 0.75 +0.5938 0.5 0.7812 +0.5938 0.5 0.8125 +0.5938 0.5 0.8438 +0.5938 0.5 0.875 +0.5938 0.5 0.9062 +0.5938 0.5 0.9375 +0.5938 0.5 0.9688 +0.5938 0.5 1 +0.5938 0.5312 0 +0.5938 0.5312 0.03125 +0.5938 0.5312 0.0625 +0.5938 0.5312 0.09375 +0.5938 0.5312 0.125 +0.5938 0.5312 0.1562 +0.5938 0.5312 0.1875 +0.5938 0.5312 0.2188 +0.5938 0.5312 0.25 +0.5938 0.5312 0.2812 +0.5938 0.5312 0.3125 +0.5938 0.5312 0.3438 +0.5938 0.5312 0.375 +0.5938 0.5312 0.4062 +0.5938 0.5312 0.4375 +0.5938 0.5312 0.4688 +0.5938 0.5312 0.5 +0.5938 0.5312 0.5312 +0.5938 0.5312 0.5625 +0.5938 0.5312 0.5938 +0.5938 0.5312 0.625 +0.5938 0.5312 0.6562 +0.5938 0.5312 0.6875 +0.5938 0.5312 0.7188 +0.5938 0.5312 0.75 +0.5938 0.5312 0.7812 +0.5938 0.5312 0.8125 +0.5938 0.5312 0.8438 +0.5938 0.5312 0.875 +0.5938 0.5312 0.9062 +0.5938 0.5312 0.9375 +0.5938 0.5312 0.9688 +0.5938 0.5312 1 +0.5938 0.5625 0 +0.5938 0.5625 0.03125 +0.5938 0.5625 0.0625 +0.5938 0.5625 0.09375 +0.5938 0.5625 0.125 +0.5938 0.5625 0.1562 +0.5938 0.5625 0.1875 +0.5938 0.5625 0.2188 +0.5938 0.5625 0.25 +0.5938 0.5625 0.2812 +0.5938 0.5625 0.3125 +0.5938 0.5625 0.3438 +0.5938 0.5625 0.375 +0.5938 0.5625 0.4062 +0.5938 0.5625 0.4375 +0.5938 0.5625 0.4688 +0.5938 0.5625 0.5 +0.5938 0.5625 0.5312 +0.5938 0.5625 0.5625 +0.5938 0.5625 0.5938 +0.5938 0.5625 0.625 +0.5938 0.5625 0.6562 +0.5938 0.5625 0.6875 +0.5938 0.5625 0.7188 +0.5938 0.5625 0.75 +0.5938 0.5625 0.7812 +0.5938 0.5625 0.8125 +0.5938 0.5625 0.8438 +0.5938 0.5625 0.875 +0.5938 0.5625 0.9062 +0.5938 0.5625 0.9375 +0.5938 0.5625 0.9688 +0.5938 0.5625 1 +0.5938 0.5938 0 +0.5938 0.5938 0.03125 +0.5938 0.5938 0.0625 +0.5938 0.5938 0.09375 +0.5938 0.5938 0.125 +0.5938 0.5938 0.1562 +0.5938 0.5938 0.1875 +0.5938 0.5938 0.2188 +0.5938 0.5938 0.25 +0.5938 0.5938 0.2812 +0.5938 0.5938 0.3125 +0.5938 0.5938 0.3438 +0.5938 0.5938 0.375 +0.5938 0.5938 0.4062 +0.5938 0.5938 0.4375 +0.5938 0.5938 0.4688 +0.5938 0.5938 0.5 +0.5938 0.5938 0.5312 +0.5938 0.5938 0.5625 +0.5938 0.5938 0.5938 +0.5938 0.5938 0.625 +0.5938 0.5938 0.6562 +0.5938 0.5938 0.6875 +0.5938 0.5938 0.7188 +0.5938 0.5938 0.75 +0.5938 0.5938 0.7812 +0.5938 0.5938 0.8125 +0.5938 0.5938 0.8438 +0.5938 0.5938 0.875 +0.5938 0.5938 0.9062 +0.5938 0.5938 0.9375 +0.5938 0.5938 0.9688 +0.5938 0.5938 1 +0.5938 0.625 0 +0.5938 0.625 0.03125 +0.5938 0.625 0.0625 +0.5938 0.625 0.09375 +0.5938 0.625 0.125 +0.5938 0.625 0.1562 +0.5938 0.625 0.1875 +0.5938 0.625 0.2188 +0.5938 0.625 0.25 +0.5938 0.625 0.2812 +0.5938 0.625 0.3125 +0.5938 0.625 0.3438 +0.5938 0.625 0.375 +0.5938 0.625 0.4062 +0.5938 0.625 0.4375 +0.5938 0.625 0.4688 +0.5938 0.625 0.5 +0.5938 0.625 0.5312 +0.5938 0.625 0.5625 +0.5938 0.625 0.5938 +0.5938 0.625 0.625 +0.5938 0.625 0.6562 +0.5938 0.625 0.6875 +0.5938 0.625 0.7188 +0.5938 0.625 0.75 +0.5938 0.625 0.7812 +0.5938 0.625 0.8125 +0.5938 0.625 0.8438 +0.5938 0.625 0.875 +0.5938 0.625 0.9062 +0.5938 0.625 0.9375 +0.5938 0.625 0.9688 +0.5938 0.625 1 +0.5938 0.6562 0 +0.5938 0.6562 0.03125 +0.5938 0.6562 0.0625 +0.5938 0.6562 0.09375 +0.5938 0.6562 0.125 +0.5938 0.6562 0.1562 +0.5938 0.6562 0.1875 +0.5938 0.6562 0.2188 +0.5938 0.6562 0.25 +0.5938 0.6562 0.2812 +0.5938 0.6562 0.3125 +0.5938 0.6562 0.3438 +0.5938 0.6562 0.375 +0.5938 0.6562 0.4062 +0.5938 0.6562 0.4375 +0.5938 0.6562 0.4688 +0.5938 0.6562 0.5 +0.5938 0.6562 0.5312 +0.5938 0.6562 0.5625 +0.5938 0.6562 0.5938 +0.5938 0.6562 0.625 +0.5938 0.6562 0.6562 +0.5938 0.6562 0.6875 +0.5938 0.6562 0.7188 +0.5938 0.6562 0.75 +0.5938 0.6562 0.7812 +0.5938 0.6562 0.8125 +0.5938 0.6562 0.8438 +0.5938 0.6562 0.875 +0.5938 0.6562 0.9062 +0.5938 0.6562 0.9375 +0.5938 0.6562 0.9688 +0.5938 0.6562 1 +0.5938 0.6875 0 +0.5938 0.6875 0.03125 +0.5938 0.6875 0.0625 +0.5938 0.6875 0.09375 +0.5938 0.6875 0.125 +0.5938 0.6875 0.1562 +0.5938 0.6875 0.1875 +0.5938 0.6875 0.2188 +0.5938 0.6875 0.25 +0.5938 0.6875 0.2812 +0.5938 0.6875 0.3125 +0.5938 0.6875 0.3438 +0.5938 0.6875 0.375 +0.5938 0.6875 0.4062 +0.5938 0.6875 0.4375 +0.5938 0.6875 0.4688 +0.5938 0.6875 0.5 +0.5938 0.6875 0.5312 +0.5938 0.6875 0.5625 +0.5938 0.6875 0.5938 +0.5938 0.6875 0.625 +0.5938 0.6875 0.6562 +0.5938 0.6875 0.6875 +0.5938 0.6875 0.7188 +0.5938 0.6875 0.75 +0.5938 0.6875 0.7812 +0.5938 0.6875 0.8125 +0.5938 0.6875 0.8438 +0.5938 0.6875 0.875 +0.5938 0.6875 0.9062 +0.5938 0.6875 0.9375 +0.5938 0.6875 0.9688 +0.5938 0.6875 1 +0.5938 0.7188 0 +0.5938 0.7188 0.03125 +0.5938 0.7188 0.0625 +0.5938 0.7188 0.09375 +0.5938 0.7188 0.125 +0.5938 0.7188 0.1562 +0.5938 0.7188 0.1875 +0.5938 0.7188 0.2188 +0.5938 0.7188 0.25 +0.5938 0.7188 0.2812 +0.5938 0.7188 0.3125 +0.5938 0.7188 0.3438 +0.5938 0.7188 0.375 +0.5938 0.7188 0.4062 +0.5938 0.7188 0.4375 +0.5938 0.7188 0.4688 +0.5938 0.7188 0.5 +0.5938 0.7188 0.5312 +0.5938 0.7188 0.5625 +0.5938 0.7188 0.5938 +0.5938 0.7188 0.625 +0.5938 0.7188 0.6562 +0.5938 0.7188 0.6875 +0.5938 0.7188 0.7188 +0.5938 0.7188 0.75 +0.5938 0.7188 0.7812 +0.5938 0.7188 0.8125 +0.5938 0.7188 0.8438 +0.5938 0.7188 0.875 +0.5938 0.7188 0.9062 +0.5938 0.7188 0.9375 +0.5938 0.7188 0.9688 +0.5938 0.7188 1 +0.5938 0.75 0 +0.5938 0.75 0.03125 +0.5938 0.75 0.0625 +0.5938 0.75 0.09375 +0.5938 0.75 0.125 +0.5938 0.75 0.1562 +0.5938 0.75 0.1875 +0.5938 0.75 0.2188 +0.5938 0.75 0.25 +0.5938 0.75 0.2812 +0.5938 0.75 0.3125 +0.5938 0.75 0.3438 +0.5938 0.75 0.375 +0.5938 0.75 0.4062 +0.5938 0.75 0.4375 +0.5938 0.75 0.4688 +0.5938 0.75 0.5 +0.5938 0.75 0.5312 +0.5938 0.75 0.5625 +0.5938 0.75 0.5938 +0.5938 0.75 0.625 +0.5938 0.75 0.6562 +0.5938 0.75 0.6875 +0.5938 0.75 0.7188 +0.5938 0.75 0.75 +0.5938 0.75 0.7812 +0.5938 0.75 0.8125 +0.5938 0.75 0.8438 +0.5938 0.75 0.875 +0.5938 0.75 0.9062 +0.5938 0.75 0.9375 +0.5938 0.75 0.9688 +0.5938 0.75 1 +0.5938 0.7812 0 +0.5938 0.7812 0.03125 +0.5938 0.7812 0.0625 +0.5938 0.7812 0.09375 +0.5938 0.7812 0.125 +0.5938 0.7812 0.1562 +0.5938 0.7812 0.1875 +0.5938 0.7812 0.2188 +0.5938 0.7812 0.25 +0.5938 0.7812 0.2812 +0.5938 0.7812 0.3125 +0.5938 0.7812 0.3438 +0.5938 0.7812 0.375 +0.5938 0.7812 0.4062 +0.5938 0.7812 0.4375 +0.5938 0.7812 0.4688 +0.5938 0.7812 0.5 +0.5938 0.7812 0.5312 +0.5938 0.7812 0.5625 +0.5938 0.7812 0.5938 +0.5938 0.7812 0.625 +0.5938 0.7812 0.6562 +0.5938 0.7812 0.6875 +0.5938 0.7812 0.7188 +0.5938 0.7812 0.75 +0.5938 0.7812 0.7812 +0.5938 0.7812 0.8125 +0.5938 0.7812 0.8438 +0.5938 0.7812 0.875 +0.5938 0.7812 0.9062 +0.5938 0.7812 0.9375 +0.5938 0.7812 0.9688 +0.5938 0.7812 1 +0.5938 0.8125 0 +0.5938 0.8125 0.03125 +0.5938 0.8125 0.0625 +0.5938 0.8125 0.09375 +0.5938 0.8125 0.125 +0.5938 0.8125 0.1562 +0.5938 0.8125 0.1875 +0.5938 0.8125 0.2188 +0.5938 0.8125 0.25 +0.5938 0.8125 0.2812 +0.5938 0.8125 0.3125 +0.5938 0.8125 0.3438 +0.5938 0.8125 0.375 +0.5938 0.8125 0.4062 +0.5938 0.8125 0.4375 +0.5938 0.8125 0.4688 +0.5938 0.8125 0.5 +0.5938 0.8125 0.5312 +0.5938 0.8125 0.5625 +0.5938 0.8125 0.5938 +0.5938 0.8125 0.625 +0.5938 0.8125 0.6562 +0.5938 0.8125 0.6875 +0.5938 0.8125 0.7188 +0.5938 0.8125 0.75 +0.5938 0.8125 0.7812 +0.5938 0.8125 0.8125 +0.5938 0.8125 0.8438 +0.5938 0.8125 0.875 +0.5938 0.8125 0.9062 +0.5938 0.8125 0.9375 +0.5938 0.8125 0.9688 +0.5938 0.8125 1 +0.5938 0.8438 0 +0.5938 0.8438 0.03125 +0.5938 0.8438 0.0625 +0.5938 0.8438 0.09375 +0.5938 0.8438 0.125 +0.5938 0.8438 0.1562 +0.5938 0.8438 0.1875 +0.5938 0.8438 0.2188 +0.5938 0.8438 0.25 +0.5938 0.8438 0.2812 +0.5938 0.8438 0.3125 +0.5938 0.8438 0.3438 +0.5938 0.8438 0.375 +0.5938 0.8438 0.4062 +0.5938 0.8438 0.4375 +0.5938 0.8438 0.4688 +0.5938 0.8438 0.5 +0.5938 0.8438 0.5312 +0.5938 0.8438 0.5625 +0.5938 0.8438 0.5938 +0.5938 0.8438 0.625 +0.5938 0.8438 0.6562 +0.5938 0.8438 0.6875 +0.5938 0.8438 0.7188 +0.5938 0.8438 0.75 +0.5938 0.8438 0.7812 +0.5938 0.8438 0.8125 +0.5938 0.8438 0.8438 +0.5938 0.8438 0.875 +0.5938 0.8438 0.9062 +0.5938 0.8438 0.9375 +0.5938 0.8438 0.9688 +0.5938 0.8438 1 +0.5938 0.875 0 +0.5938 0.875 0.03125 +0.5938 0.875 0.0625 +0.5938 0.875 0.09375 +0.5938 0.875 0.125 +0.5938 0.875 0.1562 +0.5938 0.875 0.1875 +0.5938 0.875 0.2188 +0.5938 0.875 0.25 +0.5938 0.875 0.2812 +0.5938 0.875 0.3125 +0.5938 0.875 0.3438 +0.5938 0.875 0.375 +0.5938 0.875 0.4062 +0.5938 0.875 0.4375 +0.5938 0.875 0.4688 +0.5938 0.875 0.5 +0.5938 0.875 0.5312 +0.5938 0.875 0.5625 +0.5938 0.875 0.5938 +0.5938 0.875 0.625 +0.5938 0.875 0.6562 +0.5938 0.875 0.6875 +0.5938 0.875 0.7188 +0.5938 0.875 0.75 +0.5938 0.875 0.7812 +0.5938 0.875 0.8125 +0.5938 0.875 0.8438 +0.5938 0.875 0.875 +0.5938 0.875 0.9062 +0.5938 0.875 0.9375 +0.5938 0.875 0.9688 +0.5938 0.875 1 +0.5938 0.9062 0 +0.5938 0.9062 0.03125 +0.5938 0.9062 0.0625 +0.5938 0.9062 0.09375 +0.5938 0.9062 0.125 +0.5938 0.9062 0.1562 +0.5938 0.9062 0.1875 +0.5938 0.9062 0.2188 +0.5938 0.9062 0.25 +0.5938 0.9062 0.2812 +0.5938 0.9062 0.3125 +0.5938 0.9062 0.3438 +0.5938 0.9062 0.375 +0.5938 0.9062 0.4062 +0.5938 0.9062 0.4375 +0.5938 0.9062 0.4688 +0.5938 0.9062 0.5 +0.5938 0.9062 0.5312 +0.5938 0.9062 0.5625 +0.5938 0.9062 0.5938 +0.5938 0.9062 0.625 +0.5938 0.9062 0.6562 +0.5938 0.9062 0.6875 +0.5938 0.9062 0.7188 +0.5938 0.9062 0.75 +0.5938 0.9062 0.7812 +0.5938 0.9062 0.8125 +0.5938 0.9062 0.8438 +0.5938 0.9062 0.875 +0.5938 0.9062 0.9062 +0.5938 0.9062 0.9375 +0.5938 0.9062 0.9688 +0.5938 0.9062 1 +0.5938 0.9375 0 +0.5938 0.9375 0.03125 +0.5938 0.9375 0.0625 +0.5938 0.9375 0.09375 +0.5938 0.9375 0.125 +0.5938 0.9375 0.1562 +0.5938 0.9375 0.1875 +0.5938 0.9375 0.2188 +0.5938 0.9375 0.25 +0.5938 0.9375 0.2812 +0.5938 0.9375 0.3125 +0.5938 0.9375 0.3438 +0.5938 0.9375 0.375 +0.5938 0.9375 0.4062 +0.5938 0.9375 0.4375 +0.5938 0.9375 0.4688 +0.5938 0.9375 0.5 +0.5938 0.9375 0.5312 +0.5938 0.9375 0.5625 +0.5938 0.9375 0.5938 +0.5938 0.9375 0.625 +0.5938 0.9375 0.6562 +0.5938 0.9375 0.6875 +0.5938 0.9375 0.7188 +0.5938 0.9375 0.75 +0.5938 0.9375 0.7812 +0.5938 0.9375 0.8125 +0.5938 0.9375 0.8438 +0.5938 0.9375 0.875 +0.5938 0.9375 0.9062 +0.5938 0.9375 0.9375 +0.5938 0.9375 0.9688 +0.5938 0.9375 1 +0.5938 0.9688 0 +0.5938 0.9688 0.03125 +0.5938 0.9688 0.0625 +0.5938 0.9688 0.09375 +0.5938 0.9688 0.125 +0.5938 0.9688 0.1562 +0.5938 0.9688 0.1875 +0.5938 0.9688 0.2188 +0.5938 0.9688 0.25 +0.5938 0.9688 0.2812 +0.5938 0.9688 0.3125 +0.5938 0.9688 0.3438 +0.5938 0.9688 0.375 +0.5938 0.9688 0.4062 +0.5938 0.9688 0.4375 +0.5938 0.9688 0.4688 +0.5938 0.9688 0.5 +0.5938 0.9688 0.5312 +0.5938 0.9688 0.5625 +0.5938 0.9688 0.5938 +0.5938 0.9688 0.625 +0.5938 0.9688 0.6562 +0.5938 0.9688 0.6875 +0.5938 0.9688 0.7188 +0.5938 0.9688 0.75 +0.5938 0.9688 0.7812 +0.5938 0.9688 0.8125 +0.5938 0.9688 0.8438 +0.5938 0.9688 0.875 +0.5938 0.9688 0.9062 +0.5938 0.9688 0.9375 +0.5938 0.9688 0.9688 +0.5938 0.9688 1 +0.5938 1 0 +0.5938 1 0.03125 +0.5938 1 0.0625 +0.5938 1 0.09375 +0.5938 1 0.125 +0.5938 1 0.1562 +0.5938 1 0.1875 +0.5938 1 0.2188 +0.5938 1 0.25 +0.5938 1 0.2812 +0.5938 1 0.3125 +0.5938 1 0.3438 +0.5938 1 0.375 +0.5938 1 0.4062 +0.5938 1 0.4375 +0.5938 1 0.4688 +0.5938 1 0.5 +0.5938 1 0.5312 +0.5938 1 0.5625 +0.5938 1 0.5938 +0.5938 1 0.625 +0.5938 1 0.6562 +0.5938 1 0.6875 +0.5938 1 0.7188 +0.5938 1 0.75 +0.5938 1 0.7812 +0.5938 1 0.8125 +0.5938 1 0.8438 +0.5938 1 0.875 +0.5938 1 0.9062 +0.5938 1 0.9375 +0.5938 1 0.9688 +0.5938 1 1 +0.625 0 0 +0.625 0 0.03125 +0.625 0 0.0625 +0.625 0 0.09375 +0.625 0 0.125 +0.625 0 0.1562 +0.625 0 0.1875 +0.625 0 0.2188 +0.625 0 0.25 +0.625 0 0.2812 +0.625 0 0.3125 +0.625 0 0.3438 +0.625 0 0.375 +0.625 0 0.4062 +0.625 0 0.4375 +0.625 0 0.4688 +0.625 0 0.5 +0.625 0 0.5312 +0.625 0 0.5625 +0.625 0 0.5938 +0.625 0 0.625 +0.625 0 0.6562 +0.625 0 0.6875 +0.625 0 0.7188 +0.625 0 0.75 +0.625 0 0.7812 +0.625 0 0.8125 +0.625 0 0.8438 +0.625 0 0.875 +0.625 0 0.9062 +0.625 0 0.9375 +0.625 0 0.9688 +0.625 0 1 +0.625 0.03125 0 +0.625 0.03125 0.03125 +0.625 0.03125 0.0625 +0.625 0.03125 0.09375 +0.625 0.03125 0.125 +0.625 0.03125 0.1562 +0.625 0.03125 0.1875 +0.625 0.03125 0.2188 +0.625 0.03125 0.25 +0.625 0.03125 0.2812 +0.625 0.03125 0.3125 +0.625 0.03125 0.3438 +0.625 0.03125 0.375 +0.625 0.03125 0.4062 +0.625 0.03125 0.4375 +0.625 0.03125 0.4688 +0.625 0.03125 0.5 +0.625 0.03125 0.5312 +0.625 0.03125 0.5625 +0.625 0.03125 0.5938 +0.625 0.03125 0.625 +0.625 0.03125 0.6562 +0.625 0.03125 0.6875 +0.625 0.03125 0.7188 +0.625 0.03125 0.75 +0.625 0.03125 0.7812 +0.625 0.03125 0.8125 +0.625 0.03125 0.8438 +0.625 0.03125 0.875 +0.625 0.03125 0.9062 +0.625 0.03125 0.9375 +0.625 0.03125 0.9688 +0.625 0.03125 1 +0.625 0.0625 0 +0.625 0.0625 0.03125 +0.625 0.0625 0.0625 +0.625 0.0625 0.09375 +0.625 0.0625 0.125 +0.625 0.0625 0.1562 +0.625 0.0625 0.1875 +0.625 0.0625 0.2188 +0.625 0.0625 0.25 +0.625 0.0625 0.2812 +0.625 0.0625 0.3125 +0.625 0.0625 0.3438 +0.625 0.0625 0.375 +0.625 0.0625 0.4062 +0.625 0.0625 0.4375 +0.625 0.0625 0.4688 +0.625 0.0625 0.5 +0.625 0.0625 0.5312 +0.625 0.0625 0.5625 +0.625 0.0625 0.5938 +0.625 0.0625 0.625 +0.625 0.0625 0.6562 +0.625 0.0625 0.6875 +0.625 0.0625 0.7188 +0.625 0.0625 0.75 +0.625 0.0625 0.7812 +0.625 0.0625 0.8125 +0.625 0.0625 0.8438 +0.625 0.0625 0.875 +0.625 0.0625 0.9062 +0.625 0.0625 0.9375 +0.625 0.0625 0.9688 +0.625 0.0625 1 +0.625 0.09375 0 +0.625 0.09375 0.03125 +0.625 0.09375 0.0625 +0.625 0.09375 0.09375 +0.625 0.09375 0.125 +0.625 0.09375 0.1562 +0.625 0.09375 0.1875 +0.625 0.09375 0.2188 +0.625 0.09375 0.25 +0.625 0.09375 0.2812 +0.625 0.09375 0.3125 +0.625 0.09375 0.3438 +0.625 0.09375 0.375 +0.625 0.09375 0.4062 +0.625 0.09375 0.4375 +0.625 0.09375 0.4688 +0.625 0.09375 0.5 +0.625 0.09375 0.5312 +0.625 0.09375 0.5625 +0.625 0.09375 0.5938 +0.625 0.09375 0.625 +0.625 0.09375 0.6562 +0.625 0.09375 0.6875 +0.625 0.09375 0.7188 +0.625 0.09375 0.75 +0.625 0.09375 0.7812 +0.625 0.09375 0.8125 +0.625 0.09375 0.8438 +0.625 0.09375 0.875 +0.625 0.09375 0.9062 +0.625 0.09375 0.9375 +0.625 0.09375 0.9688 +0.625 0.09375 1 +0.625 0.125 0 +0.625 0.125 0.03125 +0.625 0.125 0.0625 +0.625 0.125 0.09375 +0.625 0.125 0.125 +0.625 0.125 0.1562 +0.625 0.125 0.1875 +0.625 0.125 0.2188 +0.625 0.125 0.25 +0.625 0.125 0.2812 +0.625 0.125 0.3125 +0.625 0.125 0.3438 +0.625 0.125 0.375 +0.625 0.125 0.4062 +0.625 0.125 0.4375 +0.625 0.125 0.4688 +0.625 0.125 0.5 +0.625 0.125 0.5312 +0.625 0.125 0.5625 +0.625 0.125 0.5938 +0.625 0.125 0.625 +0.625 0.125 0.6562 +0.625 0.125 0.6875 +0.625 0.125 0.7188 +0.625 0.125 0.75 +0.625 0.125 0.7812 +0.625 0.125 0.8125 +0.625 0.125 0.8438 +0.625 0.125 0.875 +0.625 0.125 0.9062 +0.625 0.125 0.9375 +0.625 0.125 0.9688 +0.625 0.125 1 +0.625 0.1562 0 +0.625 0.1562 0.03125 +0.625 0.1562 0.0625 +0.625 0.1562 0.09375 +0.625 0.1562 0.125 +0.625 0.1562 0.1562 +0.625 0.1562 0.1875 +0.625 0.1562 0.2188 +0.625 0.1562 0.25 +0.625 0.1562 0.2812 +0.625 0.1562 0.3125 +0.625 0.1562 0.3438 +0.625 0.1562 0.375 +0.625 0.1562 0.4062 +0.625 0.1562 0.4375 +0.625 0.1562 0.4688 +0.625 0.1562 0.5 +0.625 0.1562 0.5312 +0.625 0.1562 0.5625 +0.625 0.1562 0.5938 +0.625 0.1562 0.625 +0.625 0.1562 0.6562 +0.625 0.1562 0.6875 +0.625 0.1562 0.7188 +0.625 0.1562 0.75 +0.625 0.1562 0.7812 +0.625 0.1562 0.8125 +0.625 0.1562 0.8438 +0.625 0.1562 0.875 +0.625 0.1562 0.9062 +0.625 0.1562 0.9375 +0.625 0.1562 0.9688 +0.625 0.1562 1 +0.625 0.1875 0 +0.625 0.1875 0.03125 +0.625 0.1875 0.0625 +0.625 0.1875 0.09375 +0.625 0.1875 0.125 +0.625 0.1875 0.1562 +0.625 0.1875 0.1875 +0.625 0.1875 0.2188 +0.625 0.1875 0.25 +0.625 0.1875 0.2812 +0.625 0.1875 0.3125 +0.625 0.1875 0.3438 +0.625 0.1875 0.375 +0.625 0.1875 0.4062 +0.625 0.1875 0.4375 +0.625 0.1875 0.4688 +0.625 0.1875 0.5 +0.625 0.1875 0.5312 +0.625 0.1875 0.5625 +0.625 0.1875 0.5938 +0.625 0.1875 0.625 +0.625 0.1875 0.6562 +0.625 0.1875 0.6875 +0.625 0.1875 0.7188 +0.625 0.1875 0.75 +0.625 0.1875 0.7812 +0.625 0.1875 0.8125 +0.625 0.1875 0.8438 +0.625 0.1875 0.875 +0.625 0.1875 0.9062 +0.625 0.1875 0.9375 +0.625 0.1875 0.9688 +0.625 0.1875 1 +0.625 0.2188 0 +0.625 0.2188 0.03125 +0.625 0.2188 0.0625 +0.625 0.2188 0.09375 +0.625 0.2188 0.125 +0.625 0.2188 0.1562 +0.625 0.2188 0.1875 +0.625 0.2188 0.2188 +0.625 0.2188 0.25 +0.625 0.2188 0.2812 +0.625 0.2188 0.3125 +0.625 0.2188 0.3438 +0.625 0.2188 0.375 +0.625 0.2188 0.4062 +0.625 0.2188 0.4375 +0.625 0.2188 0.4688 +0.625 0.2188 0.5 +0.625 0.2188 0.5312 +0.625 0.2188 0.5625 +0.625 0.2188 0.5938 +0.625 0.2188 0.625 +0.625 0.2188 0.6562 +0.625 0.2188 0.6875 +0.625 0.2188 0.7188 +0.625 0.2188 0.75 +0.625 0.2188 0.7812 +0.625 0.2188 0.8125 +0.625 0.2188 0.8438 +0.625 0.2188 0.875 +0.625 0.2188 0.9062 +0.625 0.2188 0.9375 +0.625 0.2188 0.9688 +0.625 0.2188 1 +0.625 0.25 0 +0.625 0.25 0.03125 +0.625 0.25 0.0625 +0.625 0.25 0.09375 +0.625 0.25 0.125 +0.625 0.25 0.1562 +0.625 0.25 0.1875 +0.625 0.25 0.2188 +0.625 0.25 0.25 +0.625 0.25 0.2812 +0.625 0.25 0.3125 +0.625 0.25 0.3438 +0.625 0.25 0.375 +0.625 0.25 0.4062 +0.625 0.25 0.4375 +0.625 0.25 0.4688 +0.625 0.25 0.5 +0.625 0.25 0.5312 +0.625 0.25 0.5625 +0.625 0.25 0.5938 +0.625 0.25 0.625 +0.625 0.25 0.6562 +0.625 0.25 0.6875 +0.625 0.25 0.7188 +0.625 0.25 0.75 +0.625 0.25 0.7812 +0.625 0.25 0.8125 +0.625 0.25 0.8438 +0.625 0.25 0.875 +0.625 0.25 0.9062 +0.625 0.25 0.9375 +0.625 0.25 0.9688 +0.625 0.25 1 +0.625 0.2812 0 +0.625 0.2812 0.03125 +0.625 0.2812 0.0625 +0.625 0.2812 0.09375 +0.625 0.2812 0.125 +0.625 0.2812 0.1562 +0.625 0.2812 0.1875 +0.625 0.2812 0.2188 +0.625 0.2812 0.25 +0.625 0.2812 0.2812 +0.625 0.2812 0.3125 +0.625 0.2812 0.3438 +0.625 0.2812 0.375 +0.625 0.2812 0.4062 +0.625 0.2812 0.4375 +0.625 0.2812 0.4688 +0.625 0.2812 0.5 +0.625 0.2812 0.5312 +0.625 0.2812 0.5625 +0.625 0.2812 0.5938 +0.625 0.2812 0.625 +0.625 0.2812 0.6562 +0.625 0.2812 0.6875 +0.625 0.2812 0.7188 +0.625 0.2812 0.75 +0.625 0.2812 0.7812 +0.625 0.2812 0.8125 +0.625 0.2812 0.8438 +0.625 0.2812 0.875 +0.625 0.2812 0.9062 +0.625 0.2812 0.9375 +0.625 0.2812 0.9688 +0.625 0.2812 1 +0.625 0.3125 0 +0.625 0.3125 0.03125 +0.625 0.3125 0.0625 +0.625 0.3125 0.09375 +0.625 0.3125 0.125 +0.625 0.3125 0.1562 +0.625 0.3125 0.1875 +0.625 0.3125 0.2188 +0.625 0.3125 0.25 +0.625 0.3125 0.2812 +0.625 0.3125 0.3125 +0.625 0.3125 0.3438 +0.625 0.3125 0.375 +0.625 0.3125 0.4062 +0.625 0.3125 0.4375 +0.625 0.3125 0.4688 +0.625 0.3125 0.5 +0.625 0.3125 0.5312 +0.625 0.3125 0.5625 +0.625 0.3125 0.5938 +0.625 0.3125 0.625 +0.625 0.3125 0.6562 +0.625 0.3125 0.6875 +0.625 0.3125 0.7188 +0.625 0.3125 0.75 +0.625 0.3125 0.7812 +0.625 0.3125 0.8125 +0.625 0.3125 0.8438 +0.625 0.3125 0.875 +0.625 0.3125 0.9062 +0.625 0.3125 0.9375 +0.625 0.3125 0.9688 +0.625 0.3125 1 +0.625 0.3438 0 +0.625 0.3438 0.03125 +0.625 0.3438 0.0625 +0.625 0.3438 0.09375 +0.625 0.3438 0.125 +0.625 0.3438 0.1562 +0.625 0.3438 0.1875 +0.625 0.3438 0.2188 +0.625 0.3438 0.25 +0.625 0.3438 0.2812 +0.625 0.3438 0.3125 +0.625 0.3438 0.3438 +0.625 0.3438 0.375 +0.625 0.3438 0.4062 +0.625 0.3438 0.4375 +0.625 0.3438 0.4688 +0.625 0.3438 0.5 +0.625 0.3438 0.5312 +0.625 0.3438 0.5625 +0.625 0.3438 0.5938 +0.625 0.3438 0.625 +0.625 0.3438 0.6562 +0.625 0.3438 0.6875 +0.625 0.3438 0.7188 +0.625 0.3438 0.75 +0.625 0.3438 0.7812 +0.625 0.3438 0.8125 +0.625 0.3438 0.8438 +0.625 0.3438 0.875 +0.625 0.3438 0.9062 +0.625 0.3438 0.9375 +0.625 0.3438 0.9688 +0.625 0.3438 1 +0.625 0.375 0 +0.625 0.375 0.03125 +0.625 0.375 0.0625 +0.625 0.375 0.09375 +0.625 0.375 0.125 +0.625 0.375 0.1562 +0.625 0.375 0.1875 +0.625 0.375 0.2188 +0.625 0.375 0.25 +0.625 0.375 0.2812 +0.625 0.375 0.3125 +0.625 0.375 0.3438 +0.625 0.375 0.375 +0.625 0.375 0.4062 +0.625 0.375 0.4375 +0.625 0.375 0.4688 +0.625 0.375 0.5 +0.625 0.375 0.5312 +0.625 0.375 0.5625 +0.625 0.375 0.5938 +0.625 0.375 0.625 +0.625 0.375 0.6562 +0.625 0.375 0.6875 +0.625 0.375 0.7188 +0.625 0.375 0.75 +0.625 0.375 0.7812 +0.625 0.375 0.8125 +0.625 0.375 0.8438 +0.625 0.375 0.875 +0.625 0.375 0.9062 +0.625 0.375 0.9375 +0.625 0.375 0.9688 +0.625 0.375 1 +0.625 0.4062 0 +0.625 0.4062 0.03125 +0.625 0.4062 0.0625 +0.625 0.4062 0.09375 +0.625 0.4062 0.125 +0.625 0.4062 0.1562 +0.625 0.4062 0.1875 +0.625 0.4062 0.2188 +0.625 0.4062 0.25 +0.625 0.4062 0.2812 +0.625 0.4062 0.3125 +0.625 0.4062 0.3438 +0.625 0.4062 0.375 +0.625 0.4062 0.4062 +0.625 0.4062 0.4375 +0.625 0.4062 0.4688 +0.625 0.4062 0.5 +0.625 0.4062 0.5312 +0.625 0.4062 0.5625 +0.625 0.4062 0.5938 +0.625 0.4062 0.625 +0.625 0.4062 0.6562 +0.625 0.4062 0.6875 +0.625 0.4062 0.7188 +0.625 0.4062 0.75 +0.625 0.4062 0.7812 +0.625 0.4062 0.8125 +0.625 0.4062 0.8438 +0.625 0.4062 0.875 +0.625 0.4062 0.9062 +0.625 0.4062 0.9375 +0.625 0.4062 0.9688 +0.625 0.4062 1 +0.625 0.4375 0 +0.625 0.4375 0.03125 +0.625 0.4375 0.0625 +0.625 0.4375 0.09375 +0.625 0.4375 0.125 +0.625 0.4375 0.1562 +0.625 0.4375 0.1875 +0.625 0.4375 0.2188 +0.625 0.4375 0.25 +0.625 0.4375 0.2812 +0.625 0.4375 0.3125 +0.625 0.4375 0.3438 +0.625 0.4375 0.375 +0.625 0.4375 0.4062 +0.625 0.4375 0.4375 +0.625 0.4375 0.4688 +0.625 0.4375 0.5 +0.625 0.4375 0.5312 +0.625 0.4375 0.5625 +0.625 0.4375 0.5938 +0.625 0.4375 0.625 +0.625 0.4375 0.6562 +0.625 0.4375 0.6875 +0.625 0.4375 0.7188 +0.625 0.4375 0.75 +0.625 0.4375 0.7812 +0.625 0.4375 0.8125 +0.625 0.4375 0.8438 +0.625 0.4375 0.875 +0.625 0.4375 0.9062 +0.625 0.4375 0.9375 +0.625 0.4375 0.9688 +0.625 0.4375 1 +0.625 0.4688 0 +0.625 0.4688 0.03125 +0.625 0.4688 0.0625 +0.625 0.4688 0.09375 +0.625 0.4688 0.125 +0.625 0.4688 0.1562 +0.625 0.4688 0.1875 +0.625 0.4688 0.2188 +0.625 0.4688 0.25 +0.625 0.4688 0.2812 +0.625 0.4688 0.3125 +0.625 0.4688 0.3438 +0.625 0.4688 0.375 +0.625 0.4688 0.4062 +0.625 0.4688 0.4375 +0.625 0.4688 0.4688 +0.625 0.4688 0.5 +0.625 0.4688 0.5312 +0.625 0.4688 0.5625 +0.625 0.4688 0.5938 +0.625 0.4688 0.625 +0.625 0.4688 0.6562 +0.625 0.4688 0.6875 +0.625 0.4688 0.7188 +0.625 0.4688 0.75 +0.625 0.4688 0.7812 +0.625 0.4688 0.8125 +0.625 0.4688 0.8438 +0.625 0.4688 0.875 +0.625 0.4688 0.9062 +0.625 0.4688 0.9375 +0.625 0.4688 0.9688 +0.625 0.4688 1 +0.625 0.5 0 +0.625 0.5 0.03125 +0.625 0.5 0.0625 +0.625 0.5 0.09375 +0.625 0.5 0.125 +0.625 0.5 0.1562 +0.625 0.5 0.1875 +0.625 0.5 0.2188 +0.625 0.5 0.25 +0.625 0.5 0.2812 +0.625 0.5 0.3125 +0.625 0.5 0.3438 +0.625 0.5 0.375 +0.625 0.5 0.4062 +0.625 0.5 0.4375 +0.625 0.5 0.4688 +0.625 0.5 0.5 +0.625 0.5 0.5312 +0.625 0.5 0.5625 +0.625 0.5 0.5938 +0.625 0.5 0.625 +0.625 0.5 0.6562 +0.625 0.5 0.6875 +0.625 0.5 0.7188 +0.625 0.5 0.75 +0.625 0.5 0.7812 +0.625 0.5 0.8125 +0.625 0.5 0.8438 +0.625 0.5 0.875 +0.625 0.5 0.9062 +0.625 0.5 0.9375 +0.625 0.5 0.9688 +0.625 0.5 1 +0.625 0.5312 0 +0.625 0.5312 0.03125 +0.625 0.5312 0.0625 +0.625 0.5312 0.09375 +0.625 0.5312 0.125 +0.625 0.5312 0.1562 +0.625 0.5312 0.1875 +0.625 0.5312 0.2188 +0.625 0.5312 0.25 +0.625 0.5312 0.2812 +0.625 0.5312 0.3125 +0.625 0.5312 0.3438 +0.625 0.5312 0.375 +0.625 0.5312 0.4062 +0.625 0.5312 0.4375 +0.625 0.5312 0.4688 +0.625 0.5312 0.5 +0.625 0.5312 0.5312 +0.625 0.5312 0.5625 +0.625 0.5312 0.5938 +0.625 0.5312 0.625 +0.625 0.5312 0.6562 +0.625 0.5312 0.6875 +0.625 0.5312 0.7188 +0.625 0.5312 0.75 +0.625 0.5312 0.7812 +0.625 0.5312 0.8125 +0.625 0.5312 0.8438 +0.625 0.5312 0.875 +0.625 0.5312 0.9062 +0.625 0.5312 0.9375 +0.625 0.5312 0.9688 +0.625 0.5312 1 +0.625 0.5625 0 +0.625 0.5625 0.03125 +0.625 0.5625 0.0625 +0.625 0.5625 0.09375 +0.625 0.5625 0.125 +0.625 0.5625 0.1562 +0.625 0.5625 0.1875 +0.625 0.5625 0.2188 +0.625 0.5625 0.25 +0.625 0.5625 0.2812 +0.625 0.5625 0.3125 +0.625 0.5625 0.3438 +0.625 0.5625 0.375 +0.625 0.5625 0.4062 +0.625 0.5625 0.4375 +0.625 0.5625 0.4688 +0.625 0.5625 0.5 +0.625 0.5625 0.5312 +0.625 0.5625 0.5625 +0.625 0.5625 0.5938 +0.625 0.5625 0.625 +0.625 0.5625 0.6562 +0.625 0.5625 0.6875 +0.625 0.5625 0.7188 +0.625 0.5625 0.75 +0.625 0.5625 0.7812 +0.625 0.5625 0.8125 +0.625 0.5625 0.8438 +0.625 0.5625 0.875 +0.625 0.5625 0.9062 +0.625 0.5625 0.9375 +0.625 0.5625 0.9688 +0.625 0.5625 1 +0.625 0.5938 0 +0.625 0.5938 0.03125 +0.625 0.5938 0.0625 +0.625 0.5938 0.09375 +0.625 0.5938 0.125 +0.625 0.5938 0.1562 +0.625 0.5938 0.1875 +0.625 0.5938 0.2188 +0.625 0.5938 0.25 +0.625 0.5938 0.2812 +0.625 0.5938 0.3125 +0.625 0.5938 0.3438 +0.625 0.5938 0.375 +0.625 0.5938 0.4062 +0.625 0.5938 0.4375 +0.625 0.5938 0.4688 +0.625 0.5938 0.5 +0.625 0.5938 0.5312 +0.625 0.5938 0.5625 +0.625 0.5938 0.5938 +0.625 0.5938 0.625 +0.625 0.5938 0.6562 +0.625 0.5938 0.6875 +0.625 0.5938 0.7188 +0.625 0.5938 0.75 +0.625 0.5938 0.7812 +0.625 0.5938 0.8125 +0.625 0.5938 0.8438 +0.625 0.5938 0.875 +0.625 0.5938 0.9062 +0.625 0.5938 0.9375 +0.625 0.5938 0.9688 +0.625 0.5938 1 +0.625 0.625 0 +0.625 0.625 0.03125 +0.625 0.625 0.0625 +0.625 0.625 0.09375 +0.625 0.625 0.125 +0.625 0.625 0.1562 +0.625 0.625 0.1875 +0.625 0.625 0.2188 +0.625 0.625 0.25 +0.625 0.625 0.2812 +0.625 0.625 0.3125 +0.625 0.625 0.3438 +0.625 0.625 0.375 +0.625 0.625 0.4062 +0.625 0.625 0.4375 +0.625 0.625 0.4688 +0.625 0.625 0.5 +0.625 0.625 0.5312 +0.625 0.625 0.5625 +0.625 0.625 0.5938 +0.625 0.625 0.625 +0.625 0.625 0.6562 +0.625 0.625 0.6875 +0.625 0.625 0.7188 +0.625 0.625 0.75 +0.625 0.625 0.7812 +0.625 0.625 0.8125 +0.625 0.625 0.8438 +0.625 0.625 0.875 +0.625 0.625 0.9062 +0.625 0.625 0.9375 +0.625 0.625 0.9688 +0.625 0.625 1 +0.625 0.6562 0 +0.625 0.6562 0.03125 +0.625 0.6562 0.0625 +0.625 0.6562 0.09375 +0.625 0.6562 0.125 +0.625 0.6562 0.1562 +0.625 0.6562 0.1875 +0.625 0.6562 0.2188 +0.625 0.6562 0.25 +0.625 0.6562 0.2812 +0.625 0.6562 0.3125 +0.625 0.6562 0.3438 +0.625 0.6562 0.375 +0.625 0.6562 0.4062 +0.625 0.6562 0.4375 +0.625 0.6562 0.4688 +0.625 0.6562 0.5 +0.625 0.6562 0.5312 +0.625 0.6562 0.5625 +0.625 0.6562 0.5938 +0.625 0.6562 0.625 +0.625 0.6562 0.6562 +0.625 0.6562 0.6875 +0.625 0.6562 0.7188 +0.625 0.6562 0.75 +0.625 0.6562 0.7812 +0.625 0.6562 0.8125 +0.625 0.6562 0.8438 +0.625 0.6562 0.875 +0.625 0.6562 0.9062 +0.625 0.6562 0.9375 +0.625 0.6562 0.9688 +0.625 0.6562 1 +0.625 0.6875 0 +0.625 0.6875 0.03125 +0.625 0.6875 0.0625 +0.625 0.6875 0.09375 +0.625 0.6875 0.125 +0.625 0.6875 0.1562 +0.625 0.6875 0.1875 +0.625 0.6875 0.2188 +0.625 0.6875 0.25 +0.625 0.6875 0.2812 +0.625 0.6875 0.3125 +0.625 0.6875 0.3438 +0.625 0.6875 0.375 +0.625 0.6875 0.4062 +0.625 0.6875 0.4375 +0.625 0.6875 0.4688 +0.625 0.6875 0.5 +0.625 0.6875 0.5312 +0.625 0.6875 0.5625 +0.625 0.6875 0.5938 +0.625 0.6875 0.625 +0.625 0.6875 0.6562 +0.625 0.6875 0.6875 +0.625 0.6875 0.7188 +0.625 0.6875 0.75 +0.625 0.6875 0.7812 +0.625 0.6875 0.8125 +0.625 0.6875 0.8438 +0.625 0.6875 0.875 +0.625 0.6875 0.9062 +0.625 0.6875 0.9375 +0.625 0.6875 0.9688 +0.625 0.6875 1 +0.625 0.7188 0 +0.625 0.7188 0.03125 +0.625 0.7188 0.0625 +0.625 0.7188 0.09375 +0.625 0.7188 0.125 +0.625 0.7188 0.1562 +0.625 0.7188 0.1875 +0.625 0.7188 0.2188 +0.625 0.7188 0.25 +0.625 0.7188 0.2812 +0.625 0.7188 0.3125 +0.625 0.7188 0.3438 +0.625 0.7188 0.375 +0.625 0.7188 0.4062 +0.625 0.7188 0.4375 +0.625 0.7188 0.4688 +0.625 0.7188 0.5 +0.625 0.7188 0.5312 +0.625 0.7188 0.5625 +0.625 0.7188 0.5938 +0.625 0.7188 0.625 +0.625 0.7188 0.6562 +0.625 0.7188 0.6875 +0.625 0.7188 0.7188 +0.625 0.7188 0.75 +0.625 0.7188 0.7812 +0.625 0.7188 0.8125 +0.625 0.7188 0.8438 +0.625 0.7188 0.875 +0.625 0.7188 0.9062 +0.625 0.7188 0.9375 +0.625 0.7188 0.9688 +0.625 0.7188 1 +0.625 0.75 0 +0.625 0.75 0.03125 +0.625 0.75 0.0625 +0.625 0.75 0.09375 +0.625 0.75 0.125 +0.625 0.75 0.1562 +0.625 0.75 0.1875 +0.625 0.75 0.2188 +0.625 0.75 0.25 +0.625 0.75 0.2812 +0.625 0.75 0.3125 +0.625 0.75 0.3438 +0.625 0.75 0.375 +0.625 0.75 0.4062 +0.625 0.75 0.4375 +0.625 0.75 0.4688 +0.625 0.75 0.5 +0.625 0.75 0.5312 +0.625 0.75 0.5625 +0.625 0.75 0.5938 +0.625 0.75 0.625 +0.625 0.75 0.6562 +0.625 0.75 0.6875 +0.625 0.75 0.7188 +0.625 0.75 0.75 +0.625 0.75 0.7812 +0.625 0.75 0.8125 +0.625 0.75 0.8438 +0.625 0.75 0.875 +0.625 0.75 0.9062 +0.625 0.75 0.9375 +0.625 0.75 0.9688 +0.625 0.75 1 +0.625 0.7812 0 +0.625 0.7812 0.03125 +0.625 0.7812 0.0625 +0.625 0.7812 0.09375 +0.625 0.7812 0.125 +0.625 0.7812 0.1562 +0.625 0.7812 0.1875 +0.625 0.7812 0.2188 +0.625 0.7812 0.25 +0.625 0.7812 0.2812 +0.625 0.7812 0.3125 +0.625 0.7812 0.3438 +0.625 0.7812 0.375 +0.625 0.7812 0.4062 +0.625 0.7812 0.4375 +0.625 0.7812 0.4688 +0.625 0.7812 0.5 +0.625 0.7812 0.5312 +0.625 0.7812 0.5625 +0.625 0.7812 0.5938 +0.625 0.7812 0.625 +0.625 0.7812 0.6562 +0.625 0.7812 0.6875 +0.625 0.7812 0.7188 +0.625 0.7812 0.75 +0.625 0.7812 0.7812 +0.625 0.7812 0.8125 +0.625 0.7812 0.8438 +0.625 0.7812 0.875 +0.625 0.7812 0.9062 +0.625 0.7812 0.9375 +0.625 0.7812 0.9688 +0.625 0.7812 1 +0.625 0.8125 0 +0.625 0.8125 0.03125 +0.625 0.8125 0.0625 +0.625 0.8125 0.09375 +0.625 0.8125 0.125 +0.625 0.8125 0.1562 +0.625 0.8125 0.1875 +0.625 0.8125 0.2188 +0.625 0.8125 0.25 +0.625 0.8125 0.2812 +0.625 0.8125 0.3125 +0.625 0.8125 0.3438 +0.625 0.8125 0.375 +0.625 0.8125 0.4062 +0.625 0.8125 0.4375 +0.625 0.8125 0.4688 +0.625 0.8125 0.5 +0.625 0.8125 0.5312 +0.625 0.8125 0.5625 +0.625 0.8125 0.5938 +0.625 0.8125 0.625 +0.625 0.8125 0.6562 +0.625 0.8125 0.6875 +0.625 0.8125 0.7188 +0.625 0.8125 0.75 +0.625 0.8125 0.7812 +0.625 0.8125 0.8125 +0.625 0.8125 0.8438 +0.625 0.8125 0.875 +0.625 0.8125 0.9062 +0.625 0.8125 0.9375 +0.625 0.8125 0.9688 +0.625 0.8125 1 +0.625 0.8438 0 +0.625 0.8438 0.03125 +0.625 0.8438 0.0625 +0.625 0.8438 0.09375 +0.625 0.8438 0.125 +0.625 0.8438 0.1562 +0.625 0.8438 0.1875 +0.625 0.8438 0.2188 +0.625 0.8438 0.25 +0.625 0.8438 0.2812 +0.625 0.8438 0.3125 +0.625 0.8438 0.3438 +0.625 0.8438 0.375 +0.625 0.8438 0.4062 +0.625 0.8438 0.4375 +0.625 0.8438 0.4688 +0.625 0.8438 0.5 +0.625 0.8438 0.5312 +0.625 0.8438 0.5625 +0.625 0.8438 0.5938 +0.625 0.8438 0.625 +0.625 0.8438 0.6562 +0.625 0.8438 0.6875 +0.625 0.8438 0.7188 +0.625 0.8438 0.75 +0.625 0.8438 0.7812 +0.625 0.8438 0.8125 +0.625 0.8438 0.8438 +0.625 0.8438 0.875 +0.625 0.8438 0.9062 +0.625 0.8438 0.9375 +0.625 0.8438 0.9688 +0.625 0.8438 1 +0.625 0.875 0 +0.625 0.875 0.03125 +0.625 0.875 0.0625 +0.625 0.875 0.09375 +0.625 0.875 0.125 +0.625 0.875 0.1562 +0.625 0.875 0.1875 +0.625 0.875 0.2188 +0.625 0.875 0.25 +0.625 0.875 0.2812 +0.625 0.875 0.3125 +0.625 0.875 0.3438 +0.625 0.875 0.375 +0.625 0.875 0.4062 +0.625 0.875 0.4375 +0.625 0.875 0.4688 +0.625 0.875 0.5 +0.625 0.875 0.5312 +0.625 0.875 0.5625 +0.625 0.875 0.5938 +0.625 0.875 0.625 +0.625 0.875 0.6562 +0.625 0.875 0.6875 +0.625 0.875 0.7188 +0.625 0.875 0.75 +0.625 0.875 0.7812 +0.625 0.875 0.8125 +0.625 0.875 0.8438 +0.625 0.875 0.875 +0.625 0.875 0.9062 +0.625 0.875 0.9375 +0.625 0.875 0.9688 +0.625 0.875 1 +0.625 0.9062 0 +0.625 0.9062 0.03125 +0.625 0.9062 0.0625 +0.625 0.9062 0.09375 +0.625 0.9062 0.125 +0.625 0.9062 0.1562 +0.625 0.9062 0.1875 +0.625 0.9062 0.2188 +0.625 0.9062 0.25 +0.625 0.9062 0.2812 +0.625 0.9062 0.3125 +0.625 0.9062 0.3438 +0.625 0.9062 0.375 +0.625 0.9062 0.4062 +0.625 0.9062 0.4375 +0.625 0.9062 0.4688 +0.625 0.9062 0.5 +0.625 0.9062 0.5312 +0.625 0.9062 0.5625 +0.625 0.9062 0.5938 +0.625 0.9062 0.625 +0.625 0.9062 0.6562 +0.625 0.9062 0.6875 +0.625 0.9062 0.7188 +0.625 0.9062 0.75 +0.625 0.9062 0.7812 +0.625 0.9062 0.8125 +0.625 0.9062 0.8438 +0.625 0.9062 0.875 +0.625 0.9062 0.9062 +0.625 0.9062 0.9375 +0.625 0.9062 0.9688 +0.625 0.9062 1 +0.625 0.9375 0 +0.625 0.9375 0.03125 +0.625 0.9375 0.0625 +0.625 0.9375 0.09375 +0.625 0.9375 0.125 +0.625 0.9375 0.1562 +0.625 0.9375 0.1875 +0.625 0.9375 0.2188 +0.625 0.9375 0.25 +0.625 0.9375 0.2812 +0.625 0.9375 0.3125 +0.625 0.9375 0.3438 +0.625 0.9375 0.375 +0.625 0.9375 0.4062 +0.625 0.9375 0.4375 +0.625 0.9375 0.4688 +0.625 0.9375 0.5 +0.625 0.9375 0.5312 +0.625 0.9375 0.5625 +0.625 0.9375 0.5938 +0.625 0.9375 0.625 +0.625 0.9375 0.6562 +0.625 0.9375 0.6875 +0.625 0.9375 0.7188 +0.625 0.9375 0.75 +0.625 0.9375 0.7812 +0.625 0.9375 0.8125 +0.625 0.9375 0.8438 +0.625 0.9375 0.875 +0.625 0.9375 0.9062 +0.625 0.9375 0.9375 +0.625 0.9375 0.9688 +0.625 0.9375 1 +0.625 0.9688 0 +0.625 0.9688 0.03125 +0.625 0.9688 0.0625 +0.625 0.9688 0.09375 +0.625 0.9688 0.125 +0.625 0.9688 0.1562 +0.625 0.9688 0.1875 +0.625 0.9688 0.2188 +0.625 0.9688 0.25 +0.625 0.9688 0.2812 +0.625 0.9688 0.3125 +0.625 0.9688 0.3438 +0.625 0.9688 0.375 +0.625 0.9688 0.4062 +0.625 0.9688 0.4375 +0.625 0.9688 0.4688 +0.625 0.9688 0.5 +0.625 0.9688 0.5312 +0.625 0.9688 0.5625 +0.625 0.9688 0.5938 +0.625 0.9688 0.625 +0.625 0.9688 0.6562 +0.625 0.9688 0.6875 +0.625 0.9688 0.7188 +0.625 0.9688 0.75 +0.625 0.9688 0.7812 +0.625 0.9688 0.8125 +0.625 0.9688 0.8438 +0.625 0.9688 0.875 +0.625 0.9688 0.9062 +0.625 0.9688 0.9375 +0.625 0.9688 0.9688 +0.625 0.9688 1 +0.625 1 0 +0.625 1 0.03125 +0.625 1 0.0625 +0.625 1 0.09375 +0.625 1 0.125 +0.625 1 0.1562 +0.625 1 0.1875 +0.625 1 0.2188 +0.625 1 0.25 +0.625 1 0.2812 +0.625 1 0.3125 +0.625 1 0.3438 +0.625 1 0.375 +0.625 1 0.4062 +0.625 1 0.4375 +0.625 1 0.4688 +0.625 1 0.5 +0.625 1 0.5312 +0.625 1 0.5625 +0.625 1 0.5938 +0.625 1 0.625 +0.625 1 0.6562 +0.625 1 0.6875 +0.625 1 0.7188 +0.625 1 0.75 +0.625 1 0.7812 +0.625 1 0.8125 +0.625 1 0.8438 +0.625 1 0.875 +0.625 1 0.9062 +0.625 1 0.9375 +0.625 1 0.9688 +0.625 1 1 +0.6562 0 0 +0.6562 0 0.03125 +0.6562 0 0.0625 +0.6562 0 0.09375 +0.6562 0 0.125 +0.6562 0 0.1562 +0.6562 0 0.1875 +0.6562 0 0.2188 +0.6562 0 0.25 +0.6562 0 0.2812 +0.6562 0 0.3125 +0.6562 0 0.3438 +0.6562 0 0.375 +0.6562 0 0.4062 +0.6562 0 0.4375 +0.6562 0 0.4688 +0.6562 0 0.5 +0.6562 0 0.5312 +0.6562 0 0.5625 +0.6562 0 0.5938 +0.6562 0 0.625 +0.6562 0 0.6562 +0.6562 0 0.6875 +0.6562 0 0.7188 +0.6562 0 0.75 +0.6562 0 0.7812 +0.6562 0 0.8125 +0.6562 0 0.8438 +0.6562 0 0.875 +0.6562 0 0.9062 +0.6562 0 0.9375 +0.6562 0 0.9688 +0.6562 0 1 +0.6562 0.03125 0 +0.6562 0.03125 0.03125 +0.6562 0.03125 0.0625 +0.6562 0.03125 0.09375 +0.6562 0.03125 0.125 +0.6562 0.03125 0.1562 +0.6562 0.03125 0.1875 +0.6562 0.03125 0.2188 +0.6562 0.03125 0.25 +0.6562 0.03125 0.2812 +0.6562 0.03125 0.3125 +0.6562 0.03125 0.3438 +0.6562 0.03125 0.375 +0.6562 0.03125 0.4062 +0.6562 0.03125 0.4375 +0.6562 0.03125 0.4688 +0.6562 0.03125 0.5 +0.6562 0.03125 0.5312 +0.6562 0.03125 0.5625 +0.6562 0.03125 0.5938 +0.6562 0.03125 0.625 +0.6562 0.03125 0.6562 +0.6562 0.03125 0.6875 +0.6562 0.03125 0.7188 +0.6562 0.03125 0.75 +0.6562 0.03125 0.7812 +0.6562 0.03125 0.8125 +0.6562 0.03125 0.8438 +0.6562 0.03125 0.875 +0.6562 0.03125 0.9062 +0.6562 0.03125 0.9375 +0.6562 0.03125 0.9688 +0.6562 0.03125 1 +0.6562 0.0625 0 +0.6562 0.0625 0.03125 +0.6562 0.0625 0.0625 +0.6562 0.0625 0.09375 +0.6562 0.0625 0.125 +0.6562 0.0625 0.1562 +0.6562 0.0625 0.1875 +0.6562 0.0625 0.2188 +0.6562 0.0625 0.25 +0.6562 0.0625 0.2812 +0.6562 0.0625 0.3125 +0.6562 0.0625 0.3438 +0.6562 0.0625 0.375 +0.6562 0.0625 0.4062 +0.6562 0.0625 0.4375 +0.6562 0.0625 0.4688 +0.6562 0.0625 0.5 +0.6562 0.0625 0.5312 +0.6562 0.0625 0.5625 +0.6562 0.0625 0.5938 +0.6562 0.0625 0.625 +0.6562 0.0625 0.6562 +0.6562 0.0625 0.6875 +0.6562 0.0625 0.7188 +0.6562 0.0625 0.75 +0.6562 0.0625 0.7812 +0.6562 0.0625 0.8125 +0.6562 0.0625 0.8438 +0.6562 0.0625 0.875 +0.6562 0.0625 0.9062 +0.6562 0.0625 0.9375 +0.6562 0.0625 0.9688 +0.6562 0.0625 1 +0.6562 0.09375 0 +0.6562 0.09375 0.03125 +0.6562 0.09375 0.0625 +0.6562 0.09375 0.09375 +0.6562 0.09375 0.125 +0.6562 0.09375 0.1562 +0.6562 0.09375 0.1875 +0.6562 0.09375 0.2188 +0.6562 0.09375 0.25 +0.6562 0.09375 0.2812 +0.6562 0.09375 0.3125 +0.6562 0.09375 0.3438 +0.6562 0.09375 0.375 +0.6562 0.09375 0.4062 +0.6562 0.09375 0.4375 +0.6562 0.09375 0.4688 +0.6562 0.09375 0.5 +0.6562 0.09375 0.5312 +0.6562 0.09375 0.5625 +0.6562 0.09375 0.5938 +0.6562 0.09375 0.625 +0.6562 0.09375 0.6562 +0.6562 0.09375 0.6875 +0.6562 0.09375 0.7188 +0.6562 0.09375 0.75 +0.6562 0.09375 0.7812 +0.6562 0.09375 0.8125 +0.6562 0.09375 0.8438 +0.6562 0.09375 0.875 +0.6562 0.09375 0.9062 +0.6562 0.09375 0.9375 +0.6562 0.09375 0.9688 +0.6562 0.09375 1 +0.6562 0.125 0 +0.6562 0.125 0.03125 +0.6562 0.125 0.0625 +0.6562 0.125 0.09375 +0.6562 0.125 0.125 +0.6562 0.125 0.1562 +0.6562 0.125 0.1875 +0.6562 0.125 0.2188 +0.6562 0.125 0.25 +0.6562 0.125 0.2812 +0.6562 0.125 0.3125 +0.6562 0.125 0.3438 +0.6562 0.125 0.375 +0.6562 0.125 0.4062 +0.6562 0.125 0.4375 +0.6562 0.125 0.4688 +0.6562 0.125 0.5 +0.6562 0.125 0.5312 +0.6562 0.125 0.5625 +0.6562 0.125 0.5938 +0.6562 0.125 0.625 +0.6562 0.125 0.6562 +0.6562 0.125 0.6875 +0.6562 0.125 0.7188 +0.6562 0.125 0.75 +0.6562 0.125 0.7812 +0.6562 0.125 0.8125 +0.6562 0.125 0.8438 +0.6562 0.125 0.875 +0.6562 0.125 0.9062 +0.6562 0.125 0.9375 +0.6562 0.125 0.9688 +0.6562 0.125 1 +0.6562 0.1562 0 +0.6562 0.1562 0.03125 +0.6562 0.1562 0.0625 +0.6562 0.1562 0.09375 +0.6562 0.1562 0.125 +0.6562 0.1562 0.1562 +0.6562 0.1562 0.1875 +0.6562 0.1562 0.2188 +0.6562 0.1562 0.25 +0.6562 0.1562 0.2812 +0.6562 0.1562 0.3125 +0.6562 0.1562 0.3438 +0.6562 0.1562 0.375 +0.6562 0.1562 0.4062 +0.6562 0.1562 0.4375 +0.6562 0.1562 0.4688 +0.6562 0.1562 0.5 +0.6562 0.1562 0.5312 +0.6562 0.1562 0.5625 +0.6562 0.1562 0.5938 +0.6562 0.1562 0.625 +0.6562 0.1562 0.6562 +0.6562 0.1562 0.6875 +0.6562 0.1562 0.7188 +0.6562 0.1562 0.75 +0.6562 0.1562 0.7812 +0.6562 0.1562 0.8125 +0.6562 0.1562 0.8438 +0.6562 0.1562 0.875 +0.6562 0.1562 0.9062 +0.6562 0.1562 0.9375 +0.6562 0.1562 0.9688 +0.6562 0.1562 1 +0.6562 0.1875 0 +0.6562 0.1875 0.03125 +0.6562 0.1875 0.0625 +0.6562 0.1875 0.09375 +0.6562 0.1875 0.125 +0.6562 0.1875 0.1562 +0.6562 0.1875 0.1875 +0.6562 0.1875 0.2188 +0.6562 0.1875 0.25 +0.6562 0.1875 0.2812 +0.6562 0.1875 0.3125 +0.6562 0.1875 0.3438 +0.6562 0.1875 0.375 +0.6562 0.1875 0.4062 +0.6562 0.1875 0.4375 +0.6562 0.1875 0.4688 +0.6562 0.1875 0.5 +0.6562 0.1875 0.5312 +0.6562 0.1875 0.5625 +0.6562 0.1875 0.5938 +0.6562 0.1875 0.625 +0.6562 0.1875 0.6562 +0.6562 0.1875 0.6875 +0.6562 0.1875 0.7188 +0.6562 0.1875 0.75 +0.6562 0.1875 0.7812 +0.6562 0.1875 0.8125 +0.6562 0.1875 0.8438 +0.6562 0.1875 0.875 +0.6562 0.1875 0.9062 +0.6562 0.1875 0.9375 +0.6562 0.1875 0.9688 +0.6562 0.1875 1 +0.6562 0.2188 0 +0.6562 0.2188 0.03125 +0.6562 0.2188 0.0625 +0.6562 0.2188 0.09375 +0.6562 0.2188 0.125 +0.6562 0.2188 0.1562 +0.6562 0.2188 0.1875 +0.6562 0.2188 0.2188 +0.6562 0.2188 0.25 +0.6562 0.2188 0.2812 +0.6562 0.2188 0.3125 +0.6562 0.2188 0.3438 +0.6562 0.2188 0.375 +0.6562 0.2188 0.4062 +0.6562 0.2188 0.4375 +0.6562 0.2188 0.4688 +0.6562 0.2188 0.5 +0.6562 0.2188 0.5312 +0.6562 0.2188 0.5625 +0.6562 0.2188 0.5938 +0.6562 0.2188 0.625 +0.6562 0.2188 0.6562 +0.6562 0.2188 0.6875 +0.6562 0.2188 0.7188 +0.6562 0.2188 0.75 +0.6562 0.2188 0.7812 +0.6562 0.2188 0.8125 +0.6562 0.2188 0.8438 +0.6562 0.2188 0.875 +0.6562 0.2188 0.9062 +0.6562 0.2188 0.9375 +0.6562 0.2188 0.9688 +0.6562 0.2188 1 +0.6562 0.25 0 +0.6562 0.25 0.03125 +0.6562 0.25 0.0625 +0.6562 0.25 0.09375 +0.6562 0.25 0.125 +0.6562 0.25 0.1562 +0.6562 0.25 0.1875 +0.6562 0.25 0.2188 +0.6562 0.25 0.25 +0.6562 0.25 0.2812 +0.6562 0.25 0.3125 +0.6562 0.25 0.3438 +0.6562 0.25 0.375 +0.6562 0.25 0.4062 +0.6562 0.25 0.4375 +0.6562 0.25 0.4688 +0.6562 0.25 0.5 +0.6562 0.25 0.5312 +0.6562 0.25 0.5625 +0.6562 0.25 0.5938 +0.6562 0.25 0.625 +0.6562 0.25 0.6562 +0.6562 0.25 0.6875 +0.6562 0.25 0.7188 +0.6562 0.25 0.75 +0.6562 0.25 0.7812 +0.6562 0.25 0.8125 +0.6562 0.25 0.8438 +0.6562 0.25 0.875 +0.6562 0.25 0.9062 +0.6562 0.25 0.9375 +0.6562 0.25 0.9688 +0.6562 0.25 1 +0.6562 0.2812 0 +0.6562 0.2812 0.03125 +0.6562 0.2812 0.0625 +0.6562 0.2812 0.09375 +0.6562 0.2812 0.125 +0.6562 0.2812 0.1562 +0.6562 0.2812 0.1875 +0.6562 0.2812 0.2188 +0.6562 0.2812 0.25 +0.6562 0.2812 0.2812 +0.6562 0.2812 0.3125 +0.6562 0.2812 0.3438 +0.6562 0.2812 0.375 +0.6562 0.2812 0.4062 +0.6562 0.2812 0.4375 +0.6562 0.2812 0.4688 +0.6562 0.2812 0.5 +0.6562 0.2812 0.5312 +0.6562 0.2812 0.5625 +0.6562 0.2812 0.5938 +0.6562 0.2812 0.625 +0.6562 0.2812 0.6562 +0.6562 0.2812 0.6875 +0.6562 0.2812 0.7188 +0.6562 0.2812 0.75 +0.6562 0.2812 0.7812 +0.6562 0.2812 0.8125 +0.6562 0.2812 0.8438 +0.6562 0.2812 0.875 +0.6562 0.2812 0.9062 +0.6562 0.2812 0.9375 +0.6562 0.2812 0.9688 +0.6562 0.2812 1 +0.6562 0.3125 0 +0.6562 0.3125 0.03125 +0.6562 0.3125 0.0625 +0.6562 0.3125 0.09375 +0.6562 0.3125 0.125 +0.6562 0.3125 0.1562 +0.6562 0.3125 0.1875 +0.6562 0.3125 0.2188 +0.6562 0.3125 0.25 +0.6562 0.3125 0.2812 +0.6562 0.3125 0.3125 +0.6562 0.3125 0.3438 +0.6562 0.3125 0.375 +0.6562 0.3125 0.4062 +0.6562 0.3125 0.4375 +0.6562 0.3125 0.4688 +0.6562 0.3125 0.5 +0.6562 0.3125 0.5312 +0.6562 0.3125 0.5625 +0.6562 0.3125 0.5938 +0.6562 0.3125 0.625 +0.6562 0.3125 0.6562 +0.6562 0.3125 0.6875 +0.6562 0.3125 0.7188 +0.6562 0.3125 0.75 +0.6562 0.3125 0.7812 +0.6562 0.3125 0.8125 +0.6562 0.3125 0.8438 +0.6562 0.3125 0.875 +0.6562 0.3125 0.9062 +0.6562 0.3125 0.9375 +0.6562 0.3125 0.9688 +0.6562 0.3125 1 +0.6562 0.3438 0 +0.6562 0.3438 0.03125 +0.6562 0.3438 0.0625 +0.6562 0.3438 0.09375 +0.6562 0.3438 0.125 +0.6562 0.3438 0.1562 +0.6562 0.3438 0.1875 +0.6562 0.3438 0.2188 +0.6562 0.3438 0.25 +0.6562 0.3438 0.2812 +0.6562 0.3438 0.3125 +0.6562 0.3438 0.3438 +0.6562 0.3438 0.375 +0.6562 0.3438 0.4062 +0.6562 0.3438 0.4375 +0.6562 0.3438 0.4688 +0.6562 0.3438 0.5 +0.6562 0.3438 0.5312 +0.6562 0.3438 0.5625 +0.6562 0.3438 0.5938 +0.6562 0.3438 0.625 +0.6562 0.3438 0.6562 +0.6562 0.3438 0.6875 +0.6562 0.3438 0.7188 +0.6562 0.3438 0.75 +0.6562 0.3438 0.7812 +0.6562 0.3438 0.8125 +0.6562 0.3438 0.8438 +0.6562 0.3438 0.875 +0.6562 0.3438 0.9062 +0.6562 0.3438 0.9375 +0.6562 0.3438 0.9688 +0.6562 0.3438 1 +0.6562 0.375 0 +0.6562 0.375 0.03125 +0.6562 0.375 0.0625 +0.6562 0.375 0.09375 +0.6562 0.375 0.125 +0.6562 0.375 0.1562 +0.6562 0.375 0.1875 +0.6562 0.375 0.2188 +0.6562 0.375 0.25 +0.6562 0.375 0.2812 +0.6562 0.375 0.3125 +0.6562 0.375 0.3438 +0.6562 0.375 0.375 +0.6562 0.375 0.4062 +0.6562 0.375 0.4375 +0.6562 0.375 0.4688 +0.6562 0.375 0.5 +0.6562 0.375 0.5312 +0.6562 0.375 0.5625 +0.6562 0.375 0.5938 +0.6562 0.375 0.625 +0.6562 0.375 0.6562 +0.6562 0.375 0.6875 +0.6562 0.375 0.7188 +0.6562 0.375 0.75 +0.6562 0.375 0.7812 +0.6562 0.375 0.8125 +0.6562 0.375 0.8438 +0.6562 0.375 0.875 +0.6562 0.375 0.9062 +0.6562 0.375 0.9375 +0.6562 0.375 0.9688 +0.6562 0.375 1 +0.6562 0.4062 0 +0.6562 0.4062 0.03125 +0.6562 0.4062 0.0625 +0.6562 0.4062 0.09375 +0.6562 0.4062 0.125 +0.6562 0.4062 0.1562 +0.6562 0.4062 0.1875 +0.6562 0.4062 0.2188 +0.6562 0.4062 0.25 +0.6562 0.4062 0.2812 +0.6562 0.4062 0.3125 +0.6562 0.4062 0.3438 +0.6562 0.4062 0.375 +0.6562 0.4062 0.4062 +0.6562 0.4062 0.4375 +0.6562 0.4062 0.4688 +0.6562 0.4062 0.5 +0.6562 0.4062 0.5312 +0.6562 0.4062 0.5625 +0.6562 0.4062 0.5938 +0.6562 0.4062 0.625 +0.6562 0.4062 0.6562 +0.6562 0.4062 0.6875 +0.6562 0.4062 0.7188 +0.6562 0.4062 0.75 +0.6562 0.4062 0.7812 +0.6562 0.4062 0.8125 +0.6562 0.4062 0.8438 +0.6562 0.4062 0.875 +0.6562 0.4062 0.9062 +0.6562 0.4062 0.9375 +0.6562 0.4062 0.9688 +0.6562 0.4062 1 +0.6562 0.4375 0 +0.6562 0.4375 0.03125 +0.6562 0.4375 0.0625 +0.6562 0.4375 0.09375 +0.6562 0.4375 0.125 +0.6562 0.4375 0.1562 +0.6562 0.4375 0.1875 +0.6562 0.4375 0.2188 +0.6562 0.4375 0.25 +0.6562 0.4375 0.2812 +0.6562 0.4375 0.3125 +0.6562 0.4375 0.3438 +0.6562 0.4375 0.375 +0.6562 0.4375 0.4062 +0.6562 0.4375 0.4375 +0.6562 0.4375 0.4688 +0.6562 0.4375 0.5 +0.6562 0.4375 0.5312 +0.6562 0.4375 0.5625 +0.6562 0.4375 0.5938 +0.6562 0.4375 0.625 +0.6562 0.4375 0.6562 +0.6562 0.4375 0.6875 +0.6562 0.4375 0.7188 +0.6562 0.4375 0.75 +0.6562 0.4375 0.7812 +0.6562 0.4375 0.8125 +0.6562 0.4375 0.8438 +0.6562 0.4375 0.875 +0.6562 0.4375 0.9062 +0.6562 0.4375 0.9375 +0.6562 0.4375 0.9688 +0.6562 0.4375 1 +0.6562 0.4688 0 +0.6562 0.4688 0.03125 +0.6562 0.4688 0.0625 +0.6562 0.4688 0.09375 +0.6562 0.4688 0.125 +0.6562 0.4688 0.1562 +0.6562 0.4688 0.1875 +0.6562 0.4688 0.2188 +0.6562 0.4688 0.25 +0.6562 0.4688 0.2812 +0.6562 0.4688 0.3125 +0.6562 0.4688 0.3438 +0.6562 0.4688 0.375 +0.6562 0.4688 0.4062 +0.6562 0.4688 0.4375 +0.6562 0.4688 0.4688 +0.6562 0.4688 0.5 +0.6562 0.4688 0.5312 +0.6562 0.4688 0.5625 +0.6562 0.4688 0.5938 +0.6562 0.4688 0.625 +0.6562 0.4688 0.6562 +0.6562 0.4688 0.6875 +0.6562 0.4688 0.7188 +0.6562 0.4688 0.75 +0.6562 0.4688 0.7812 +0.6562 0.4688 0.8125 +0.6562 0.4688 0.8438 +0.6562 0.4688 0.875 +0.6562 0.4688 0.9062 +0.6562 0.4688 0.9375 +0.6562 0.4688 0.9688 +0.6562 0.4688 1 +0.6562 0.5 0 +0.6562 0.5 0.03125 +0.6562 0.5 0.0625 +0.6562 0.5 0.09375 +0.6562 0.5 0.125 +0.6562 0.5 0.1562 +0.6562 0.5 0.1875 +0.6562 0.5 0.2188 +0.6562 0.5 0.25 +0.6562 0.5 0.2812 +0.6562 0.5 0.3125 +0.6562 0.5 0.3438 +0.6562 0.5 0.375 +0.6562 0.5 0.4062 +0.6562 0.5 0.4375 +0.6562 0.5 0.4688 +0.6562 0.5 0.5 +0.6562 0.5 0.5312 +0.6562 0.5 0.5625 +0.6562 0.5 0.5938 +0.6562 0.5 0.625 +0.6562 0.5 0.6562 +0.6562 0.5 0.6875 +0.6562 0.5 0.7188 +0.6562 0.5 0.75 +0.6562 0.5 0.7812 +0.6562 0.5 0.8125 +0.6562 0.5 0.8438 +0.6562 0.5 0.875 +0.6562 0.5 0.9062 +0.6562 0.5 0.9375 +0.6562 0.5 0.9688 +0.6562 0.5 1 +0.6562 0.5312 0 +0.6562 0.5312 0.03125 +0.6562 0.5312 0.0625 +0.6562 0.5312 0.09375 +0.6562 0.5312 0.125 +0.6562 0.5312 0.1562 +0.6562 0.5312 0.1875 +0.6562 0.5312 0.2188 +0.6562 0.5312 0.25 +0.6562 0.5312 0.2812 +0.6562 0.5312 0.3125 +0.6562 0.5312 0.3438 +0.6562 0.5312 0.375 +0.6562 0.5312 0.4062 +0.6562 0.5312 0.4375 +0.6562 0.5312 0.4688 +0.6562 0.5312 0.5 +0.6562 0.5312 0.5312 +0.6562 0.5312 0.5625 +0.6562 0.5312 0.5938 +0.6562 0.5312 0.625 +0.6562 0.5312 0.6562 +0.6562 0.5312 0.6875 +0.6562 0.5312 0.7188 +0.6562 0.5312 0.75 +0.6562 0.5312 0.7812 +0.6562 0.5312 0.8125 +0.6562 0.5312 0.8438 +0.6562 0.5312 0.875 +0.6562 0.5312 0.9062 +0.6562 0.5312 0.9375 +0.6562 0.5312 0.9688 +0.6562 0.5312 1 +0.6562 0.5625 0 +0.6562 0.5625 0.03125 +0.6562 0.5625 0.0625 +0.6562 0.5625 0.09375 +0.6562 0.5625 0.125 +0.6562 0.5625 0.1562 +0.6562 0.5625 0.1875 +0.6562 0.5625 0.2188 +0.6562 0.5625 0.25 +0.6562 0.5625 0.2812 +0.6562 0.5625 0.3125 +0.6562 0.5625 0.3438 +0.6562 0.5625 0.375 +0.6562 0.5625 0.4062 +0.6562 0.5625 0.4375 +0.6562 0.5625 0.4688 +0.6562 0.5625 0.5 +0.6562 0.5625 0.5312 +0.6562 0.5625 0.5625 +0.6562 0.5625 0.5938 +0.6562 0.5625 0.625 +0.6562 0.5625 0.6562 +0.6562 0.5625 0.6875 +0.6562 0.5625 0.7188 +0.6562 0.5625 0.75 +0.6562 0.5625 0.7812 +0.6562 0.5625 0.8125 +0.6562 0.5625 0.8438 +0.6562 0.5625 0.875 +0.6562 0.5625 0.9062 +0.6562 0.5625 0.9375 +0.6562 0.5625 0.9688 +0.6562 0.5625 1 +0.6562 0.5938 0 +0.6562 0.5938 0.03125 +0.6562 0.5938 0.0625 +0.6562 0.5938 0.09375 +0.6562 0.5938 0.125 +0.6562 0.5938 0.1562 +0.6562 0.5938 0.1875 +0.6562 0.5938 0.2188 +0.6562 0.5938 0.25 +0.6562 0.5938 0.2812 +0.6562 0.5938 0.3125 +0.6562 0.5938 0.3438 +0.6562 0.5938 0.375 +0.6562 0.5938 0.4062 +0.6562 0.5938 0.4375 +0.6562 0.5938 0.4688 +0.6562 0.5938 0.5 +0.6562 0.5938 0.5312 +0.6562 0.5938 0.5625 +0.6562 0.5938 0.5938 +0.6562 0.5938 0.625 +0.6562 0.5938 0.6562 +0.6562 0.5938 0.6875 +0.6562 0.5938 0.7188 +0.6562 0.5938 0.75 +0.6562 0.5938 0.7812 +0.6562 0.5938 0.8125 +0.6562 0.5938 0.8438 +0.6562 0.5938 0.875 +0.6562 0.5938 0.9062 +0.6562 0.5938 0.9375 +0.6562 0.5938 0.9688 +0.6562 0.5938 1 +0.6562 0.625 0 +0.6562 0.625 0.03125 +0.6562 0.625 0.0625 +0.6562 0.625 0.09375 +0.6562 0.625 0.125 +0.6562 0.625 0.1562 +0.6562 0.625 0.1875 +0.6562 0.625 0.2188 +0.6562 0.625 0.25 +0.6562 0.625 0.2812 +0.6562 0.625 0.3125 +0.6562 0.625 0.3438 +0.6562 0.625 0.375 +0.6562 0.625 0.4062 +0.6562 0.625 0.4375 +0.6562 0.625 0.4688 +0.6562 0.625 0.5 +0.6562 0.625 0.5312 +0.6562 0.625 0.5625 +0.6562 0.625 0.5938 +0.6562 0.625 0.625 +0.6562 0.625 0.6562 +0.6562 0.625 0.6875 +0.6562 0.625 0.7188 +0.6562 0.625 0.75 +0.6562 0.625 0.7812 +0.6562 0.625 0.8125 +0.6562 0.625 0.8438 +0.6562 0.625 0.875 +0.6562 0.625 0.9062 +0.6562 0.625 0.9375 +0.6562 0.625 0.9688 +0.6562 0.625 1 +0.6562 0.6562 0 +0.6562 0.6562 0.03125 +0.6562 0.6562 0.0625 +0.6562 0.6562 0.09375 +0.6562 0.6562 0.125 +0.6562 0.6562 0.1562 +0.6562 0.6562 0.1875 +0.6562 0.6562 0.2188 +0.6562 0.6562 0.25 +0.6562 0.6562 0.2812 +0.6562 0.6562 0.3125 +0.6562 0.6562 0.3438 +0.6562 0.6562 0.375 +0.6562 0.6562 0.4062 +0.6562 0.6562 0.4375 +0.6562 0.6562 0.4688 +0.6562 0.6562 0.5 +0.6562 0.6562 0.5312 +0.6562 0.6562 0.5625 +0.6562 0.6562 0.5938 +0.6562 0.6562 0.625 +0.6562 0.6562 0.6562 +0.6562 0.6562 0.6875 +0.6562 0.6562 0.7188 +0.6562 0.6562 0.75 +0.6562 0.6562 0.7812 +0.6562 0.6562 0.8125 +0.6562 0.6562 0.8438 +0.6562 0.6562 0.875 +0.6562 0.6562 0.9062 +0.6562 0.6562 0.9375 +0.6562 0.6562 0.9688 +0.6562 0.6562 1 +0.6562 0.6875 0 +0.6562 0.6875 0.03125 +0.6562 0.6875 0.0625 +0.6562 0.6875 0.09375 +0.6562 0.6875 0.125 +0.6562 0.6875 0.1562 +0.6562 0.6875 0.1875 +0.6562 0.6875 0.2188 +0.6562 0.6875 0.25 +0.6562 0.6875 0.2812 +0.6562 0.6875 0.3125 +0.6562 0.6875 0.3438 +0.6562 0.6875 0.375 +0.6562 0.6875 0.4062 +0.6562 0.6875 0.4375 +0.6562 0.6875 0.4688 +0.6562 0.6875 0.5 +0.6562 0.6875 0.5312 +0.6562 0.6875 0.5625 +0.6562 0.6875 0.5938 +0.6562 0.6875 0.625 +0.6562 0.6875 0.6562 +0.6562 0.6875 0.6875 +0.6562 0.6875 0.7188 +0.6562 0.6875 0.75 +0.6562 0.6875 0.7812 +0.6562 0.6875 0.8125 +0.6562 0.6875 0.8438 +0.6562 0.6875 0.875 +0.6562 0.6875 0.9062 +0.6562 0.6875 0.9375 +0.6562 0.6875 0.9688 +0.6562 0.6875 1 +0.6562 0.7188 0 +0.6562 0.7188 0.03125 +0.6562 0.7188 0.0625 +0.6562 0.7188 0.09375 +0.6562 0.7188 0.125 +0.6562 0.7188 0.1562 +0.6562 0.7188 0.1875 +0.6562 0.7188 0.2188 +0.6562 0.7188 0.25 +0.6562 0.7188 0.2812 +0.6562 0.7188 0.3125 +0.6562 0.7188 0.3438 +0.6562 0.7188 0.375 +0.6562 0.7188 0.4062 +0.6562 0.7188 0.4375 +0.6562 0.7188 0.4688 +0.6562 0.7188 0.5 +0.6562 0.7188 0.5312 +0.6562 0.7188 0.5625 +0.6562 0.7188 0.5938 +0.6562 0.7188 0.625 +0.6562 0.7188 0.6562 +0.6562 0.7188 0.6875 +0.6562 0.7188 0.7188 +0.6562 0.7188 0.75 +0.6562 0.7188 0.7812 +0.6562 0.7188 0.8125 +0.6562 0.7188 0.8438 +0.6562 0.7188 0.875 +0.6562 0.7188 0.9062 +0.6562 0.7188 0.9375 +0.6562 0.7188 0.9688 +0.6562 0.7188 1 +0.6562 0.75 0 +0.6562 0.75 0.03125 +0.6562 0.75 0.0625 +0.6562 0.75 0.09375 +0.6562 0.75 0.125 +0.6562 0.75 0.1562 +0.6562 0.75 0.1875 +0.6562 0.75 0.2188 +0.6562 0.75 0.25 +0.6562 0.75 0.2812 +0.6562 0.75 0.3125 +0.6562 0.75 0.3438 +0.6562 0.75 0.375 +0.6562 0.75 0.4062 +0.6562 0.75 0.4375 +0.6562 0.75 0.4688 +0.6562 0.75 0.5 +0.6562 0.75 0.5312 +0.6562 0.75 0.5625 +0.6562 0.75 0.5938 +0.6562 0.75 0.625 +0.6562 0.75 0.6562 +0.6562 0.75 0.6875 +0.6562 0.75 0.7188 +0.6562 0.75 0.75 +0.6562 0.75 0.7812 +0.6562 0.75 0.8125 +0.6562 0.75 0.8438 +0.6562 0.75 0.875 +0.6562 0.75 0.9062 +0.6562 0.75 0.9375 +0.6562 0.75 0.9688 +0.6562 0.75 1 +0.6562 0.7812 0 +0.6562 0.7812 0.03125 +0.6562 0.7812 0.0625 +0.6562 0.7812 0.09375 +0.6562 0.7812 0.125 +0.6562 0.7812 0.1562 +0.6562 0.7812 0.1875 +0.6562 0.7812 0.2188 +0.6562 0.7812 0.25 +0.6562 0.7812 0.2812 +0.6562 0.7812 0.3125 +0.6562 0.7812 0.3438 +0.6562 0.7812 0.375 +0.6562 0.7812 0.4062 +0.6562 0.7812 0.4375 +0.6562 0.7812 0.4688 +0.6562 0.7812 0.5 +0.6562 0.7812 0.5312 +0.6562 0.7812 0.5625 +0.6562 0.7812 0.5938 +0.6562 0.7812 0.625 +0.6562 0.7812 0.6562 +0.6562 0.7812 0.6875 +0.6562 0.7812 0.7188 +0.6562 0.7812 0.75 +0.6562 0.7812 0.7812 +0.6562 0.7812 0.8125 +0.6562 0.7812 0.8438 +0.6562 0.7812 0.875 +0.6562 0.7812 0.9062 +0.6562 0.7812 0.9375 +0.6562 0.7812 0.9688 +0.6562 0.7812 1 +0.6562 0.8125 0 +0.6562 0.8125 0.03125 +0.6562 0.8125 0.0625 +0.6562 0.8125 0.09375 +0.6562 0.8125 0.125 +0.6562 0.8125 0.1562 +0.6562 0.8125 0.1875 +0.6562 0.8125 0.2188 +0.6562 0.8125 0.25 +0.6562 0.8125 0.2812 +0.6562 0.8125 0.3125 +0.6562 0.8125 0.3438 +0.6562 0.8125 0.375 +0.6562 0.8125 0.4062 +0.6562 0.8125 0.4375 +0.6562 0.8125 0.4688 +0.6562 0.8125 0.5 +0.6562 0.8125 0.5312 +0.6562 0.8125 0.5625 +0.6562 0.8125 0.5938 +0.6562 0.8125 0.625 +0.6562 0.8125 0.6562 +0.6562 0.8125 0.6875 +0.6562 0.8125 0.7188 +0.6562 0.8125 0.75 +0.6562 0.8125 0.7812 +0.6562 0.8125 0.8125 +0.6562 0.8125 0.8438 +0.6562 0.8125 0.875 +0.6562 0.8125 0.9062 +0.6562 0.8125 0.9375 +0.6562 0.8125 0.9688 +0.6562 0.8125 1 +0.6562 0.8438 0 +0.6562 0.8438 0.03125 +0.6562 0.8438 0.0625 +0.6562 0.8438 0.09375 +0.6562 0.8438 0.125 +0.6562 0.8438 0.1562 +0.6562 0.8438 0.1875 +0.6562 0.8438 0.2188 +0.6562 0.8438 0.25 +0.6562 0.8438 0.2812 +0.6562 0.8438 0.3125 +0.6562 0.8438 0.3438 +0.6562 0.8438 0.375 +0.6562 0.8438 0.4062 +0.6562 0.8438 0.4375 +0.6562 0.8438 0.4688 +0.6562 0.8438 0.5 +0.6562 0.8438 0.5312 +0.6562 0.8438 0.5625 +0.6562 0.8438 0.5938 +0.6562 0.8438 0.625 +0.6562 0.8438 0.6562 +0.6562 0.8438 0.6875 +0.6562 0.8438 0.7188 +0.6562 0.8438 0.75 +0.6562 0.8438 0.7812 +0.6562 0.8438 0.8125 +0.6562 0.8438 0.8438 +0.6562 0.8438 0.875 +0.6562 0.8438 0.9062 +0.6562 0.8438 0.9375 +0.6562 0.8438 0.9688 +0.6562 0.8438 1 +0.6562 0.875 0 +0.6562 0.875 0.03125 +0.6562 0.875 0.0625 +0.6562 0.875 0.09375 +0.6562 0.875 0.125 +0.6562 0.875 0.1562 +0.6562 0.875 0.1875 +0.6562 0.875 0.2188 +0.6562 0.875 0.25 +0.6562 0.875 0.2812 +0.6562 0.875 0.3125 +0.6562 0.875 0.3438 +0.6562 0.875 0.375 +0.6562 0.875 0.4062 +0.6562 0.875 0.4375 +0.6562 0.875 0.4688 +0.6562 0.875 0.5 +0.6562 0.875 0.5312 +0.6562 0.875 0.5625 +0.6562 0.875 0.5938 +0.6562 0.875 0.625 +0.6562 0.875 0.6562 +0.6562 0.875 0.6875 +0.6562 0.875 0.7188 +0.6562 0.875 0.75 +0.6562 0.875 0.7812 +0.6562 0.875 0.8125 +0.6562 0.875 0.8438 +0.6562 0.875 0.875 +0.6562 0.875 0.9062 +0.6562 0.875 0.9375 +0.6562 0.875 0.9688 +0.6562 0.875 1 +0.6562 0.9062 0 +0.6562 0.9062 0.03125 +0.6562 0.9062 0.0625 +0.6562 0.9062 0.09375 +0.6562 0.9062 0.125 +0.6562 0.9062 0.1562 +0.6562 0.9062 0.1875 +0.6562 0.9062 0.2188 +0.6562 0.9062 0.25 +0.6562 0.9062 0.2812 +0.6562 0.9062 0.3125 +0.6562 0.9062 0.3438 +0.6562 0.9062 0.375 +0.6562 0.9062 0.4062 +0.6562 0.9062 0.4375 +0.6562 0.9062 0.4688 +0.6562 0.9062 0.5 +0.6562 0.9062 0.5312 +0.6562 0.9062 0.5625 +0.6562 0.9062 0.5938 +0.6562 0.9062 0.625 +0.6562 0.9062 0.6562 +0.6562 0.9062 0.6875 +0.6562 0.9062 0.7188 +0.6562 0.9062 0.75 +0.6562 0.9062 0.7812 +0.6562 0.9062 0.8125 +0.6562 0.9062 0.8438 +0.6562 0.9062 0.875 +0.6562 0.9062 0.9062 +0.6562 0.9062 0.9375 +0.6562 0.9062 0.9688 +0.6562 0.9062 1 +0.6562 0.9375 0 +0.6562 0.9375 0.03125 +0.6562 0.9375 0.0625 +0.6562 0.9375 0.09375 +0.6562 0.9375 0.125 +0.6562 0.9375 0.1562 +0.6562 0.9375 0.1875 +0.6562 0.9375 0.2188 +0.6562 0.9375 0.25 +0.6562 0.9375 0.2812 +0.6562 0.9375 0.3125 +0.6562 0.9375 0.3438 +0.6562 0.9375 0.375 +0.6562 0.9375 0.4062 +0.6562 0.9375 0.4375 +0.6562 0.9375 0.4688 +0.6562 0.9375 0.5 +0.6562 0.9375 0.5312 +0.6562 0.9375 0.5625 +0.6562 0.9375 0.5938 +0.6562 0.9375 0.625 +0.6562 0.9375 0.6562 +0.6562 0.9375 0.6875 +0.6562 0.9375 0.7188 +0.6562 0.9375 0.75 +0.6562 0.9375 0.7812 +0.6562 0.9375 0.8125 +0.6562 0.9375 0.8438 +0.6562 0.9375 0.875 +0.6562 0.9375 0.9062 +0.6562 0.9375 0.9375 +0.6562 0.9375 0.9688 +0.6562 0.9375 1 +0.6562 0.9688 0 +0.6562 0.9688 0.03125 +0.6562 0.9688 0.0625 +0.6562 0.9688 0.09375 +0.6562 0.9688 0.125 +0.6562 0.9688 0.1562 +0.6562 0.9688 0.1875 +0.6562 0.9688 0.2188 +0.6562 0.9688 0.25 +0.6562 0.9688 0.2812 +0.6562 0.9688 0.3125 +0.6562 0.9688 0.3438 +0.6562 0.9688 0.375 +0.6562 0.9688 0.4062 +0.6562 0.9688 0.4375 +0.6562 0.9688 0.4688 +0.6562 0.9688 0.5 +0.6562 0.9688 0.5312 +0.6562 0.9688 0.5625 +0.6562 0.9688 0.5938 +0.6562 0.9688 0.625 +0.6562 0.9688 0.6562 +0.6562 0.9688 0.6875 +0.6562 0.9688 0.7188 +0.6562 0.9688 0.75 +0.6562 0.9688 0.7812 +0.6562 0.9688 0.8125 +0.6562 0.9688 0.8438 +0.6562 0.9688 0.875 +0.6562 0.9688 0.9062 +0.6562 0.9688 0.9375 +0.6562 0.9688 0.9688 +0.6562 0.9688 1 +0.6562 1 0 +0.6562 1 0.03125 +0.6562 1 0.0625 +0.6562 1 0.09375 +0.6562 1 0.125 +0.6562 1 0.1562 +0.6562 1 0.1875 +0.6562 1 0.2188 +0.6562 1 0.25 +0.6562 1 0.2812 +0.6562 1 0.3125 +0.6562 1 0.3438 +0.6562 1 0.375 +0.6562 1 0.4062 +0.6562 1 0.4375 +0.6562 1 0.4688 +0.6562 1 0.5 +0.6562 1 0.5312 +0.6562 1 0.5625 +0.6562 1 0.5938 +0.6562 1 0.625 +0.6562 1 0.6562 +0.6562 1 0.6875 +0.6562 1 0.7188 +0.6562 1 0.75 +0.6562 1 0.7812 +0.6562 1 0.8125 +0.6562 1 0.8438 +0.6562 1 0.875 +0.6562 1 0.9062 +0.6562 1 0.9375 +0.6562 1 0.9688 +0.6562 1 1 +0.6875 0 0 +0.6875 0 0.03125 +0.6875 0 0.0625 +0.6875 0 0.09375 +0.6875 0 0.125 +0.6875 0 0.1562 +0.6875 0 0.1875 +0.6875 0 0.2188 +0.6875 0 0.25 +0.6875 0 0.2812 +0.6875 0 0.3125 +0.6875 0 0.3438 +0.6875 0 0.375 +0.6875 0 0.4062 +0.6875 0 0.4375 +0.6875 0 0.4688 +0.6875 0 0.5 +0.6875 0 0.5312 +0.6875 0 0.5625 +0.6875 0 0.5938 +0.6875 0 0.625 +0.6875 0 0.6562 +0.6875 0 0.6875 +0.6875 0 0.7188 +0.6875 0 0.75 +0.6875 0 0.7812 +0.6875 0 0.8125 +0.6875 0 0.8438 +0.6875 0 0.875 +0.6875 0 0.9062 +0.6875 0 0.9375 +0.6875 0 0.9688 +0.6875 0 1 +0.6875 0.03125 0 +0.6875 0.03125 0.03125 +0.6875 0.03125 0.0625 +0.6875 0.03125 0.09375 +0.6875 0.03125 0.125 +0.6875 0.03125 0.1562 +0.6875 0.03125 0.1875 +0.6875 0.03125 0.2188 +0.6875 0.03125 0.25 +0.6875 0.03125 0.2812 +0.6875 0.03125 0.3125 +0.6875 0.03125 0.3438 +0.6875 0.03125 0.375 +0.6875 0.03125 0.4062 +0.6875 0.03125 0.4375 +0.6875 0.03125 0.4688 +0.6875 0.03125 0.5 +0.6875 0.03125 0.5312 +0.6875 0.03125 0.5625 +0.6875 0.03125 0.5938 +0.6875 0.03125 0.625 +0.6875 0.03125 0.6562 +0.6875 0.03125 0.6875 +0.6875 0.03125 0.7188 +0.6875 0.03125 0.75 +0.6875 0.03125 0.7812 +0.6875 0.03125 0.8125 +0.6875 0.03125 0.8438 +0.6875 0.03125 0.875 +0.6875 0.03125 0.9062 +0.6875 0.03125 0.9375 +0.6875 0.03125 0.9688 +0.6875 0.03125 1 +0.6875 0.0625 0 +0.6875 0.0625 0.03125 +0.6875 0.0625 0.0625 +0.6875 0.0625 0.09375 +0.6875 0.0625 0.125 +0.6875 0.0625 0.1562 +0.6875 0.0625 0.1875 +0.6875 0.0625 0.2188 +0.6875 0.0625 0.25 +0.6875 0.0625 0.2812 +0.6875 0.0625 0.3125 +0.6875 0.0625 0.3438 +0.6875 0.0625 0.375 +0.6875 0.0625 0.4062 +0.6875 0.0625 0.4375 +0.6875 0.0625 0.4688 +0.6875 0.0625 0.5 +0.6875 0.0625 0.5312 +0.6875 0.0625 0.5625 +0.6875 0.0625 0.5938 +0.6875 0.0625 0.625 +0.6875 0.0625 0.6562 +0.6875 0.0625 0.6875 +0.6875 0.0625 0.7188 +0.6875 0.0625 0.75 +0.6875 0.0625 0.7812 +0.6875 0.0625 0.8125 +0.6875 0.0625 0.8438 +0.6875 0.0625 0.875 +0.6875 0.0625 0.9062 +0.6875 0.0625 0.9375 +0.6875 0.0625 0.9688 +0.6875 0.0625 1 +0.6875 0.09375 0 +0.6875 0.09375 0.03125 +0.6875 0.09375 0.0625 +0.6875 0.09375 0.09375 +0.6875 0.09375 0.125 +0.6875 0.09375 0.1562 +0.6875 0.09375 0.1875 +0.6875 0.09375 0.2188 +0.6875 0.09375 0.25 +0.6875 0.09375 0.2812 +0.6875 0.09375 0.3125 +0.6875 0.09375 0.3438 +0.6875 0.09375 0.375 +0.6875 0.09375 0.4062 +0.6875 0.09375 0.4375 +0.6875 0.09375 0.4688 +0.6875 0.09375 0.5 +0.6875 0.09375 0.5312 +0.6875 0.09375 0.5625 +0.6875 0.09375 0.5938 +0.6875 0.09375 0.625 +0.6875 0.09375 0.6562 +0.6875 0.09375 0.6875 +0.6875 0.09375 0.7188 +0.6875 0.09375 0.75 +0.6875 0.09375 0.7812 +0.6875 0.09375 0.8125 +0.6875 0.09375 0.8438 +0.6875 0.09375 0.875 +0.6875 0.09375 0.9062 +0.6875 0.09375 0.9375 +0.6875 0.09375 0.9688 +0.6875 0.09375 1 +0.6875 0.125 0 +0.6875 0.125 0.03125 +0.6875 0.125 0.0625 +0.6875 0.125 0.09375 +0.6875 0.125 0.125 +0.6875 0.125 0.1562 +0.6875 0.125 0.1875 +0.6875 0.125 0.2188 +0.6875 0.125 0.25 +0.6875 0.125 0.2812 +0.6875 0.125 0.3125 +0.6875 0.125 0.3438 +0.6875 0.125 0.375 +0.6875 0.125 0.4062 +0.6875 0.125 0.4375 +0.6875 0.125 0.4688 +0.6875 0.125 0.5 +0.6875 0.125 0.5312 +0.6875 0.125 0.5625 +0.6875 0.125 0.5938 +0.6875 0.125 0.625 +0.6875 0.125 0.6562 +0.6875 0.125 0.6875 +0.6875 0.125 0.7188 +0.6875 0.125 0.75 +0.6875 0.125 0.7812 +0.6875 0.125 0.8125 +0.6875 0.125 0.8438 +0.6875 0.125 0.875 +0.6875 0.125 0.9062 +0.6875 0.125 0.9375 +0.6875 0.125 0.9688 +0.6875 0.125 1 +0.6875 0.1562 0 +0.6875 0.1562 0.03125 +0.6875 0.1562 0.0625 +0.6875 0.1562 0.09375 +0.6875 0.1562 0.125 +0.6875 0.1562 0.1562 +0.6875 0.1562 0.1875 +0.6875 0.1562 0.2188 +0.6875 0.1562 0.25 +0.6875 0.1562 0.2812 +0.6875 0.1562 0.3125 +0.6875 0.1562 0.3438 +0.6875 0.1562 0.375 +0.6875 0.1562 0.4062 +0.6875 0.1562 0.4375 +0.6875 0.1562 0.4688 +0.6875 0.1562 0.5 +0.6875 0.1562 0.5312 +0.6875 0.1562 0.5625 +0.6875 0.1562 0.5938 +0.6875 0.1562 0.625 +0.6875 0.1562 0.6562 +0.6875 0.1562 0.6875 +0.6875 0.1562 0.7188 +0.6875 0.1562 0.75 +0.6875 0.1562 0.7812 +0.6875 0.1562 0.8125 +0.6875 0.1562 0.8438 +0.6875 0.1562 0.875 +0.6875 0.1562 0.9062 +0.6875 0.1562 0.9375 +0.6875 0.1562 0.9688 +0.6875 0.1562 1 +0.6875 0.1875 0 +0.6875 0.1875 0.03125 +0.6875 0.1875 0.0625 +0.6875 0.1875 0.09375 +0.6875 0.1875 0.125 +0.6875 0.1875 0.1562 +0.6875 0.1875 0.1875 +0.6875 0.1875 0.2188 +0.6875 0.1875 0.25 +0.6875 0.1875 0.2812 +0.6875 0.1875 0.3125 +0.6875 0.1875 0.3438 +0.6875 0.1875 0.375 +0.6875 0.1875 0.4062 +0.6875 0.1875 0.4375 +0.6875 0.1875 0.4688 +0.6875 0.1875 0.5 +0.6875 0.1875 0.5312 +0.6875 0.1875 0.5625 +0.6875 0.1875 0.5938 +0.6875 0.1875 0.625 +0.6875 0.1875 0.6562 +0.6875 0.1875 0.6875 +0.6875 0.1875 0.7188 +0.6875 0.1875 0.75 +0.6875 0.1875 0.7812 +0.6875 0.1875 0.8125 +0.6875 0.1875 0.8438 +0.6875 0.1875 0.875 +0.6875 0.1875 0.9062 +0.6875 0.1875 0.9375 +0.6875 0.1875 0.9688 +0.6875 0.1875 1 +0.6875 0.2188 0 +0.6875 0.2188 0.03125 +0.6875 0.2188 0.0625 +0.6875 0.2188 0.09375 +0.6875 0.2188 0.125 +0.6875 0.2188 0.1562 +0.6875 0.2188 0.1875 +0.6875 0.2188 0.2188 +0.6875 0.2188 0.25 +0.6875 0.2188 0.2812 +0.6875 0.2188 0.3125 +0.6875 0.2188 0.3438 +0.6875 0.2188 0.375 +0.6875 0.2188 0.4062 +0.6875 0.2188 0.4375 +0.6875 0.2188 0.4688 +0.6875 0.2188 0.5 +0.6875 0.2188 0.5312 +0.6875 0.2188 0.5625 +0.6875 0.2188 0.5938 +0.6875 0.2188 0.625 +0.6875 0.2188 0.6562 +0.6875 0.2188 0.6875 +0.6875 0.2188 0.7188 +0.6875 0.2188 0.75 +0.6875 0.2188 0.7812 +0.6875 0.2188 0.8125 +0.6875 0.2188 0.8438 +0.6875 0.2188 0.875 +0.6875 0.2188 0.9062 +0.6875 0.2188 0.9375 +0.6875 0.2188 0.9688 +0.6875 0.2188 1 +0.6875 0.25 0 +0.6875 0.25 0.03125 +0.6875 0.25 0.0625 +0.6875 0.25 0.09375 +0.6875 0.25 0.125 +0.6875 0.25 0.1562 +0.6875 0.25 0.1875 +0.6875 0.25 0.2188 +0.6875 0.25 0.25 +0.6875 0.25 0.2812 +0.6875 0.25 0.3125 +0.6875 0.25 0.3438 +0.6875 0.25 0.375 +0.6875 0.25 0.4062 +0.6875 0.25 0.4375 +0.6875 0.25 0.4688 +0.6875 0.25 0.5 +0.6875 0.25 0.5312 +0.6875 0.25 0.5625 +0.6875 0.25 0.5938 +0.6875 0.25 0.625 +0.6875 0.25 0.6562 +0.6875 0.25 0.6875 +0.6875 0.25 0.7188 +0.6875 0.25 0.75 +0.6875 0.25 0.7812 +0.6875 0.25 0.8125 +0.6875 0.25 0.8438 +0.6875 0.25 0.875 +0.6875 0.25 0.9062 +0.6875 0.25 0.9375 +0.6875 0.25 0.9688 +0.6875 0.25 1 +0.6875 0.2812 0 +0.6875 0.2812 0.03125 +0.6875 0.2812 0.0625 +0.6875 0.2812 0.09375 +0.6875 0.2812 0.125 +0.6875 0.2812 0.1562 +0.6875 0.2812 0.1875 +0.6875 0.2812 0.2188 +0.6875 0.2812 0.25 +0.6875 0.2812 0.2812 +0.6875 0.2812 0.3125 +0.6875 0.2812 0.3438 +0.6875 0.2812 0.375 +0.6875 0.2812 0.4062 +0.6875 0.2812 0.4375 +0.6875 0.2812 0.4688 +0.6875 0.2812 0.5 +0.6875 0.2812 0.5312 +0.6875 0.2812 0.5625 +0.6875 0.2812 0.5938 +0.6875 0.2812 0.625 +0.6875 0.2812 0.6562 +0.6875 0.2812 0.6875 +0.6875 0.2812 0.7188 +0.6875 0.2812 0.75 +0.6875 0.2812 0.7812 +0.6875 0.2812 0.8125 +0.6875 0.2812 0.8438 +0.6875 0.2812 0.875 +0.6875 0.2812 0.9062 +0.6875 0.2812 0.9375 +0.6875 0.2812 0.9688 +0.6875 0.2812 1 +0.6875 0.3125 0 +0.6875 0.3125 0.03125 +0.6875 0.3125 0.0625 +0.6875 0.3125 0.09375 +0.6875 0.3125 0.125 +0.6875 0.3125 0.1562 +0.6875 0.3125 0.1875 +0.6875 0.3125 0.2188 +0.6875 0.3125 0.25 +0.6875 0.3125 0.2812 +0.6875 0.3125 0.3125 +0.6875 0.3125 0.3438 +0.6875 0.3125 0.375 +0.6875 0.3125 0.4062 +0.6875 0.3125 0.4375 +0.6875 0.3125 0.4688 +0.6875 0.3125 0.5 +0.6875 0.3125 0.5312 +0.6875 0.3125 0.5625 +0.6875 0.3125 0.5938 +0.6875 0.3125 0.625 +0.6875 0.3125 0.6562 +0.6875 0.3125 0.6875 +0.6875 0.3125 0.7188 +0.6875 0.3125 0.75 +0.6875 0.3125 0.7812 +0.6875 0.3125 0.8125 +0.6875 0.3125 0.8438 +0.6875 0.3125 0.875 +0.6875 0.3125 0.9062 +0.6875 0.3125 0.9375 +0.6875 0.3125 0.9688 +0.6875 0.3125 1 +0.6875 0.3438 0 +0.6875 0.3438 0.03125 +0.6875 0.3438 0.0625 +0.6875 0.3438 0.09375 +0.6875 0.3438 0.125 +0.6875 0.3438 0.1562 +0.6875 0.3438 0.1875 +0.6875 0.3438 0.2188 +0.6875 0.3438 0.25 +0.6875 0.3438 0.2812 +0.6875 0.3438 0.3125 +0.6875 0.3438 0.3438 +0.6875 0.3438 0.375 +0.6875 0.3438 0.4062 +0.6875 0.3438 0.4375 +0.6875 0.3438 0.4688 +0.6875 0.3438 0.5 +0.6875 0.3438 0.5312 +0.6875 0.3438 0.5625 +0.6875 0.3438 0.5938 +0.6875 0.3438 0.625 +0.6875 0.3438 0.6562 +0.6875 0.3438 0.6875 +0.6875 0.3438 0.7188 +0.6875 0.3438 0.75 +0.6875 0.3438 0.7812 +0.6875 0.3438 0.8125 +0.6875 0.3438 0.8438 +0.6875 0.3438 0.875 +0.6875 0.3438 0.9062 +0.6875 0.3438 0.9375 +0.6875 0.3438 0.9688 +0.6875 0.3438 1 +0.6875 0.375 0 +0.6875 0.375 0.03125 +0.6875 0.375 0.0625 +0.6875 0.375 0.09375 +0.6875 0.375 0.125 +0.6875 0.375 0.1562 +0.6875 0.375 0.1875 +0.6875 0.375 0.2188 +0.6875 0.375 0.25 +0.6875 0.375 0.2812 +0.6875 0.375 0.3125 +0.6875 0.375 0.3438 +0.6875 0.375 0.375 +0.6875 0.375 0.4062 +0.6875 0.375 0.4375 +0.6875 0.375 0.4688 +0.6875 0.375 0.5 +0.6875 0.375 0.5312 +0.6875 0.375 0.5625 +0.6875 0.375 0.5938 +0.6875 0.375 0.625 +0.6875 0.375 0.6562 +0.6875 0.375 0.6875 +0.6875 0.375 0.7188 +0.6875 0.375 0.75 +0.6875 0.375 0.7812 +0.6875 0.375 0.8125 +0.6875 0.375 0.8438 +0.6875 0.375 0.875 +0.6875 0.375 0.9062 +0.6875 0.375 0.9375 +0.6875 0.375 0.9688 +0.6875 0.375 1 +0.6875 0.4062 0 +0.6875 0.4062 0.03125 +0.6875 0.4062 0.0625 +0.6875 0.4062 0.09375 +0.6875 0.4062 0.125 +0.6875 0.4062 0.1562 +0.6875 0.4062 0.1875 +0.6875 0.4062 0.2188 +0.6875 0.4062 0.25 +0.6875 0.4062 0.2812 +0.6875 0.4062 0.3125 +0.6875 0.4062 0.3438 +0.6875 0.4062 0.375 +0.6875 0.4062 0.4062 +0.6875 0.4062 0.4375 +0.6875 0.4062 0.4688 +0.6875 0.4062 0.5 +0.6875 0.4062 0.5312 +0.6875 0.4062 0.5625 +0.6875 0.4062 0.5938 +0.6875 0.4062 0.625 +0.6875 0.4062 0.6562 +0.6875 0.4062 0.6875 +0.6875 0.4062 0.7188 +0.6875 0.4062 0.75 +0.6875 0.4062 0.7812 +0.6875 0.4062 0.8125 +0.6875 0.4062 0.8438 +0.6875 0.4062 0.875 +0.6875 0.4062 0.9062 +0.6875 0.4062 0.9375 +0.6875 0.4062 0.9688 +0.6875 0.4062 1 +0.6875 0.4375 0 +0.6875 0.4375 0.03125 +0.6875 0.4375 0.0625 +0.6875 0.4375 0.09375 +0.6875 0.4375 0.125 +0.6875 0.4375 0.1562 +0.6875 0.4375 0.1875 +0.6875 0.4375 0.2188 +0.6875 0.4375 0.25 +0.6875 0.4375 0.2812 +0.6875 0.4375 0.3125 +0.6875 0.4375 0.3438 +0.6875 0.4375 0.375 +0.6875 0.4375 0.4062 +0.6875 0.4375 0.4375 +0.6875 0.4375 0.4688 +0.6875 0.4375 0.5 +0.6875 0.4375 0.5312 +0.6875 0.4375 0.5625 +0.6875 0.4375 0.5938 +0.6875 0.4375 0.625 +0.6875 0.4375 0.6562 +0.6875 0.4375 0.6875 +0.6875 0.4375 0.7188 +0.6875 0.4375 0.75 +0.6875 0.4375 0.7812 +0.6875 0.4375 0.8125 +0.6875 0.4375 0.8438 +0.6875 0.4375 0.875 +0.6875 0.4375 0.9062 +0.6875 0.4375 0.9375 +0.6875 0.4375 0.9688 +0.6875 0.4375 1 +0.6875 0.4688 0 +0.6875 0.4688 0.03125 +0.6875 0.4688 0.0625 +0.6875 0.4688 0.09375 +0.6875 0.4688 0.125 +0.6875 0.4688 0.1562 +0.6875 0.4688 0.1875 +0.6875 0.4688 0.2188 +0.6875 0.4688 0.25 +0.6875 0.4688 0.2812 +0.6875 0.4688 0.3125 +0.6875 0.4688 0.3438 +0.6875 0.4688 0.375 +0.6875 0.4688 0.4062 +0.6875 0.4688 0.4375 +0.6875 0.4688 0.4688 +0.6875 0.4688 0.5 +0.6875 0.4688 0.5312 +0.6875 0.4688 0.5625 +0.6875 0.4688 0.5938 +0.6875 0.4688 0.625 +0.6875 0.4688 0.6562 +0.6875 0.4688 0.6875 +0.6875 0.4688 0.7188 +0.6875 0.4688 0.75 +0.6875 0.4688 0.7812 +0.6875 0.4688 0.8125 +0.6875 0.4688 0.8438 +0.6875 0.4688 0.875 +0.6875 0.4688 0.9062 +0.6875 0.4688 0.9375 +0.6875 0.4688 0.9688 +0.6875 0.4688 1 +0.6875 0.5 0 +0.6875 0.5 0.03125 +0.6875 0.5 0.0625 +0.6875 0.5 0.09375 +0.6875 0.5 0.125 +0.6875 0.5 0.1562 +0.6875 0.5 0.1875 +0.6875 0.5 0.2188 +0.6875 0.5 0.25 +0.6875 0.5 0.2812 +0.6875 0.5 0.3125 +0.6875 0.5 0.3438 +0.6875 0.5 0.375 +0.6875 0.5 0.4062 +0.6875 0.5 0.4375 +0.6875 0.5 0.4688 +0.6875 0.5 0.5 +0.6875 0.5 0.5312 +0.6875 0.5 0.5625 +0.6875 0.5 0.5938 +0.6875 0.5 0.625 +0.6875 0.5 0.6562 +0.6875 0.5 0.6875 +0.6875 0.5 0.7188 +0.6875 0.5 0.75 +0.6875 0.5 0.7812 +0.6875 0.5 0.8125 +0.6875 0.5 0.8438 +0.6875 0.5 0.875 +0.6875 0.5 0.9062 +0.6875 0.5 0.9375 +0.6875 0.5 0.9688 +0.6875 0.5 1 +0.6875 0.5312 0 +0.6875 0.5312 0.03125 +0.6875 0.5312 0.0625 +0.6875 0.5312 0.09375 +0.6875 0.5312 0.125 +0.6875 0.5312 0.1562 +0.6875 0.5312 0.1875 +0.6875 0.5312 0.2188 +0.6875 0.5312 0.25 +0.6875 0.5312 0.2812 +0.6875 0.5312 0.3125 +0.6875 0.5312 0.3438 +0.6875 0.5312 0.375 +0.6875 0.5312 0.4062 +0.6875 0.5312 0.4375 +0.6875 0.5312 0.4688 +0.6875 0.5312 0.5 +0.6875 0.5312 0.5312 +0.6875 0.5312 0.5625 +0.6875 0.5312 0.5938 +0.6875 0.5312 0.625 +0.6875 0.5312 0.6562 +0.6875 0.5312 0.6875 +0.6875 0.5312 0.7188 +0.6875 0.5312 0.75 +0.6875 0.5312 0.7812 +0.6875 0.5312 0.8125 +0.6875 0.5312 0.8438 +0.6875 0.5312 0.875 +0.6875 0.5312 0.9062 +0.6875 0.5312 0.9375 +0.6875 0.5312 0.9688 +0.6875 0.5312 1 +0.6875 0.5625 0 +0.6875 0.5625 0.03125 +0.6875 0.5625 0.0625 +0.6875 0.5625 0.09375 +0.6875 0.5625 0.125 +0.6875 0.5625 0.1562 +0.6875 0.5625 0.1875 +0.6875 0.5625 0.2188 +0.6875 0.5625 0.25 +0.6875 0.5625 0.2812 +0.6875 0.5625 0.3125 +0.6875 0.5625 0.3438 +0.6875 0.5625 0.375 +0.6875 0.5625 0.4062 +0.6875 0.5625 0.4375 +0.6875 0.5625 0.4688 +0.6875 0.5625 0.5 +0.6875 0.5625 0.5312 +0.6875 0.5625 0.5625 +0.6875 0.5625 0.5938 +0.6875 0.5625 0.625 +0.6875 0.5625 0.6562 +0.6875 0.5625 0.6875 +0.6875 0.5625 0.7188 +0.6875 0.5625 0.75 +0.6875 0.5625 0.7812 +0.6875 0.5625 0.8125 +0.6875 0.5625 0.8438 +0.6875 0.5625 0.875 +0.6875 0.5625 0.9062 +0.6875 0.5625 0.9375 +0.6875 0.5625 0.9688 +0.6875 0.5625 1 +0.6875 0.5938 0 +0.6875 0.5938 0.03125 +0.6875 0.5938 0.0625 +0.6875 0.5938 0.09375 +0.6875 0.5938 0.125 +0.6875 0.5938 0.1562 +0.6875 0.5938 0.1875 +0.6875 0.5938 0.2188 +0.6875 0.5938 0.25 +0.6875 0.5938 0.2812 +0.6875 0.5938 0.3125 +0.6875 0.5938 0.3438 +0.6875 0.5938 0.375 +0.6875 0.5938 0.4062 +0.6875 0.5938 0.4375 +0.6875 0.5938 0.4688 +0.6875 0.5938 0.5 +0.6875 0.5938 0.5312 +0.6875 0.5938 0.5625 +0.6875 0.5938 0.5938 +0.6875 0.5938 0.625 +0.6875 0.5938 0.6562 +0.6875 0.5938 0.6875 +0.6875 0.5938 0.7188 +0.6875 0.5938 0.75 +0.6875 0.5938 0.7812 +0.6875 0.5938 0.8125 +0.6875 0.5938 0.8438 +0.6875 0.5938 0.875 +0.6875 0.5938 0.9062 +0.6875 0.5938 0.9375 +0.6875 0.5938 0.9688 +0.6875 0.5938 1 +0.6875 0.625 0 +0.6875 0.625 0.03125 +0.6875 0.625 0.0625 +0.6875 0.625 0.09375 +0.6875 0.625 0.125 +0.6875 0.625 0.1562 +0.6875 0.625 0.1875 +0.6875 0.625 0.2188 +0.6875 0.625 0.25 +0.6875 0.625 0.2812 +0.6875 0.625 0.3125 +0.6875 0.625 0.3438 +0.6875 0.625 0.375 +0.6875 0.625 0.4062 +0.6875 0.625 0.4375 +0.6875 0.625 0.4688 +0.6875 0.625 0.5 +0.6875 0.625 0.5312 +0.6875 0.625 0.5625 +0.6875 0.625 0.5938 +0.6875 0.625 0.625 +0.6875 0.625 0.6562 +0.6875 0.625 0.6875 +0.6875 0.625 0.7188 +0.6875 0.625 0.75 +0.6875 0.625 0.7812 +0.6875 0.625 0.8125 +0.6875 0.625 0.8438 +0.6875 0.625 0.875 +0.6875 0.625 0.9062 +0.6875 0.625 0.9375 +0.6875 0.625 0.9688 +0.6875 0.625 1 +0.6875 0.6562 0 +0.6875 0.6562 0.03125 +0.6875 0.6562 0.0625 +0.6875 0.6562 0.09375 +0.6875 0.6562 0.125 +0.6875 0.6562 0.1562 +0.6875 0.6562 0.1875 +0.6875 0.6562 0.2188 +0.6875 0.6562 0.25 +0.6875 0.6562 0.2812 +0.6875 0.6562 0.3125 +0.6875 0.6562 0.3438 +0.6875 0.6562 0.375 +0.6875 0.6562 0.4062 +0.6875 0.6562 0.4375 +0.6875 0.6562 0.4688 +0.6875 0.6562 0.5 +0.6875 0.6562 0.5312 +0.6875 0.6562 0.5625 +0.6875 0.6562 0.5938 +0.6875 0.6562 0.625 +0.6875 0.6562 0.6562 +0.6875 0.6562 0.6875 +0.6875 0.6562 0.7188 +0.6875 0.6562 0.75 +0.6875 0.6562 0.7812 +0.6875 0.6562 0.8125 +0.6875 0.6562 0.8438 +0.6875 0.6562 0.875 +0.6875 0.6562 0.9062 +0.6875 0.6562 0.9375 +0.6875 0.6562 0.9688 +0.6875 0.6562 1 +0.6875 0.6875 0 +0.6875 0.6875 0.03125 +0.6875 0.6875 0.0625 +0.6875 0.6875 0.09375 +0.6875 0.6875 0.125 +0.6875 0.6875 0.1562 +0.6875 0.6875 0.1875 +0.6875 0.6875 0.2188 +0.6875 0.6875 0.25 +0.6875 0.6875 0.2812 +0.6875 0.6875 0.3125 +0.6875 0.6875 0.3438 +0.6875 0.6875 0.375 +0.6875 0.6875 0.4062 +0.6875 0.6875 0.4375 +0.6875 0.6875 0.4688 +0.6875 0.6875 0.5 +0.6875 0.6875 0.5312 +0.6875 0.6875 0.5625 +0.6875 0.6875 0.5938 +0.6875 0.6875 0.625 +0.6875 0.6875 0.6562 +0.6875 0.6875 0.6875 +0.6875 0.6875 0.7188 +0.6875 0.6875 0.75 +0.6875 0.6875 0.7812 +0.6875 0.6875 0.8125 +0.6875 0.6875 0.8438 +0.6875 0.6875 0.875 +0.6875 0.6875 0.9062 +0.6875 0.6875 0.9375 +0.6875 0.6875 0.9688 +0.6875 0.6875 1 +0.6875 0.7188 0 +0.6875 0.7188 0.03125 +0.6875 0.7188 0.0625 +0.6875 0.7188 0.09375 +0.6875 0.7188 0.125 +0.6875 0.7188 0.1562 +0.6875 0.7188 0.1875 +0.6875 0.7188 0.2188 +0.6875 0.7188 0.25 +0.6875 0.7188 0.2812 +0.6875 0.7188 0.3125 +0.6875 0.7188 0.3438 +0.6875 0.7188 0.375 +0.6875 0.7188 0.4062 +0.6875 0.7188 0.4375 +0.6875 0.7188 0.4688 +0.6875 0.7188 0.5 +0.6875 0.7188 0.5312 +0.6875 0.7188 0.5625 +0.6875 0.7188 0.5938 +0.6875 0.7188 0.625 +0.6875 0.7188 0.6562 +0.6875 0.7188 0.6875 +0.6875 0.7188 0.7188 +0.6875 0.7188 0.75 +0.6875 0.7188 0.7812 +0.6875 0.7188 0.8125 +0.6875 0.7188 0.8438 +0.6875 0.7188 0.875 +0.6875 0.7188 0.9062 +0.6875 0.7188 0.9375 +0.6875 0.7188 0.9688 +0.6875 0.7188 1 +0.6875 0.75 0 +0.6875 0.75 0.03125 +0.6875 0.75 0.0625 +0.6875 0.75 0.09375 +0.6875 0.75 0.125 +0.6875 0.75 0.1562 +0.6875 0.75 0.1875 +0.6875 0.75 0.2188 +0.6875 0.75 0.25 +0.6875 0.75 0.2812 +0.6875 0.75 0.3125 +0.6875 0.75 0.3438 +0.6875 0.75 0.375 +0.6875 0.75 0.4062 +0.6875 0.75 0.4375 +0.6875 0.75 0.4688 +0.6875 0.75 0.5 +0.6875 0.75 0.5312 +0.6875 0.75 0.5625 +0.6875 0.75 0.5938 +0.6875 0.75 0.625 +0.6875 0.75 0.6562 +0.6875 0.75 0.6875 +0.6875 0.75 0.7188 +0.6875 0.75 0.75 +0.6875 0.75 0.7812 +0.6875 0.75 0.8125 +0.6875 0.75 0.8438 +0.6875 0.75 0.875 +0.6875 0.75 0.9062 +0.6875 0.75 0.9375 +0.6875 0.75 0.9688 +0.6875 0.75 1 +0.6875 0.7812 0 +0.6875 0.7812 0.03125 +0.6875 0.7812 0.0625 +0.6875 0.7812 0.09375 +0.6875 0.7812 0.125 +0.6875 0.7812 0.1562 +0.6875 0.7812 0.1875 +0.6875 0.7812 0.2188 +0.6875 0.7812 0.25 +0.6875 0.7812 0.2812 +0.6875 0.7812 0.3125 +0.6875 0.7812 0.3438 +0.6875 0.7812 0.375 +0.6875 0.7812 0.4062 +0.6875 0.7812 0.4375 +0.6875 0.7812 0.4688 +0.6875 0.7812 0.5 +0.6875 0.7812 0.5312 +0.6875 0.7812 0.5625 +0.6875 0.7812 0.5938 +0.6875 0.7812 0.625 +0.6875 0.7812 0.6562 +0.6875 0.7812 0.6875 +0.6875 0.7812 0.7188 +0.6875 0.7812 0.75 +0.6875 0.7812 0.7812 +0.6875 0.7812 0.8125 +0.6875 0.7812 0.8438 +0.6875 0.7812 0.875 +0.6875 0.7812 0.9062 +0.6875 0.7812 0.9375 +0.6875 0.7812 0.9688 +0.6875 0.7812 1 +0.6875 0.8125 0 +0.6875 0.8125 0.03125 +0.6875 0.8125 0.0625 +0.6875 0.8125 0.09375 +0.6875 0.8125 0.125 +0.6875 0.8125 0.1562 +0.6875 0.8125 0.1875 +0.6875 0.8125 0.2188 +0.6875 0.8125 0.25 +0.6875 0.8125 0.2812 +0.6875 0.8125 0.3125 +0.6875 0.8125 0.3438 +0.6875 0.8125 0.375 +0.6875 0.8125 0.4062 +0.6875 0.8125 0.4375 +0.6875 0.8125 0.4688 +0.6875 0.8125 0.5 +0.6875 0.8125 0.5312 +0.6875 0.8125 0.5625 +0.6875 0.8125 0.5938 +0.6875 0.8125 0.625 +0.6875 0.8125 0.6562 +0.6875 0.8125 0.6875 +0.6875 0.8125 0.7188 +0.6875 0.8125 0.75 +0.6875 0.8125 0.7812 +0.6875 0.8125 0.8125 +0.6875 0.8125 0.8438 +0.6875 0.8125 0.875 +0.6875 0.8125 0.9062 +0.6875 0.8125 0.9375 +0.6875 0.8125 0.9688 +0.6875 0.8125 1 +0.6875 0.8438 0 +0.6875 0.8438 0.03125 +0.6875 0.8438 0.0625 +0.6875 0.8438 0.09375 +0.6875 0.8438 0.125 +0.6875 0.8438 0.1562 +0.6875 0.8438 0.1875 +0.6875 0.8438 0.2188 +0.6875 0.8438 0.25 +0.6875 0.8438 0.2812 +0.6875 0.8438 0.3125 +0.6875 0.8438 0.3438 +0.6875 0.8438 0.375 +0.6875 0.8438 0.4062 +0.6875 0.8438 0.4375 +0.6875 0.8438 0.4688 +0.6875 0.8438 0.5 +0.6875 0.8438 0.5312 +0.6875 0.8438 0.5625 +0.6875 0.8438 0.5938 +0.6875 0.8438 0.625 +0.6875 0.8438 0.6562 +0.6875 0.8438 0.6875 +0.6875 0.8438 0.7188 +0.6875 0.8438 0.75 +0.6875 0.8438 0.7812 +0.6875 0.8438 0.8125 +0.6875 0.8438 0.8438 +0.6875 0.8438 0.875 +0.6875 0.8438 0.9062 +0.6875 0.8438 0.9375 +0.6875 0.8438 0.9688 +0.6875 0.8438 1 +0.6875 0.875 0 +0.6875 0.875 0.03125 +0.6875 0.875 0.0625 +0.6875 0.875 0.09375 +0.6875 0.875 0.125 +0.6875 0.875 0.1562 +0.6875 0.875 0.1875 +0.6875 0.875 0.2188 +0.6875 0.875 0.25 +0.6875 0.875 0.2812 +0.6875 0.875 0.3125 +0.6875 0.875 0.3438 +0.6875 0.875 0.375 +0.6875 0.875 0.4062 +0.6875 0.875 0.4375 +0.6875 0.875 0.4688 +0.6875 0.875 0.5 +0.6875 0.875 0.5312 +0.6875 0.875 0.5625 +0.6875 0.875 0.5938 +0.6875 0.875 0.625 +0.6875 0.875 0.6562 +0.6875 0.875 0.6875 +0.6875 0.875 0.7188 +0.6875 0.875 0.75 +0.6875 0.875 0.7812 +0.6875 0.875 0.8125 +0.6875 0.875 0.8438 +0.6875 0.875 0.875 +0.6875 0.875 0.9062 +0.6875 0.875 0.9375 +0.6875 0.875 0.9688 +0.6875 0.875 1 +0.6875 0.9062 0 +0.6875 0.9062 0.03125 +0.6875 0.9062 0.0625 +0.6875 0.9062 0.09375 +0.6875 0.9062 0.125 +0.6875 0.9062 0.1562 +0.6875 0.9062 0.1875 +0.6875 0.9062 0.2188 +0.6875 0.9062 0.25 +0.6875 0.9062 0.2812 +0.6875 0.9062 0.3125 +0.6875 0.9062 0.3438 +0.6875 0.9062 0.375 +0.6875 0.9062 0.4062 +0.6875 0.9062 0.4375 +0.6875 0.9062 0.4688 +0.6875 0.9062 0.5 +0.6875 0.9062 0.5312 +0.6875 0.9062 0.5625 +0.6875 0.9062 0.5938 +0.6875 0.9062 0.625 +0.6875 0.9062 0.6562 +0.6875 0.9062 0.6875 +0.6875 0.9062 0.7188 +0.6875 0.9062 0.75 +0.6875 0.9062 0.7812 +0.6875 0.9062 0.8125 +0.6875 0.9062 0.8438 +0.6875 0.9062 0.875 +0.6875 0.9062 0.9062 +0.6875 0.9062 0.9375 +0.6875 0.9062 0.9688 +0.6875 0.9062 1 +0.6875 0.9375 0 +0.6875 0.9375 0.03125 +0.6875 0.9375 0.0625 +0.6875 0.9375 0.09375 +0.6875 0.9375 0.125 +0.6875 0.9375 0.1562 +0.6875 0.9375 0.1875 +0.6875 0.9375 0.2188 +0.6875 0.9375 0.25 +0.6875 0.9375 0.2812 +0.6875 0.9375 0.3125 +0.6875 0.9375 0.3438 +0.6875 0.9375 0.375 +0.6875 0.9375 0.4062 +0.6875 0.9375 0.4375 +0.6875 0.9375 0.4688 +0.6875 0.9375 0.5 +0.6875 0.9375 0.5312 +0.6875 0.9375 0.5625 +0.6875 0.9375 0.5938 +0.6875 0.9375 0.625 +0.6875 0.9375 0.6562 +0.6875 0.9375 0.6875 +0.6875 0.9375 0.7188 +0.6875 0.9375 0.75 +0.6875 0.9375 0.7812 +0.6875 0.9375 0.8125 +0.6875 0.9375 0.8438 +0.6875 0.9375 0.875 +0.6875 0.9375 0.9062 +0.6875 0.9375 0.9375 +0.6875 0.9375 0.9688 +0.6875 0.9375 1 +0.6875 0.9688 0 +0.6875 0.9688 0.03125 +0.6875 0.9688 0.0625 +0.6875 0.9688 0.09375 +0.6875 0.9688 0.125 +0.6875 0.9688 0.1562 +0.6875 0.9688 0.1875 +0.6875 0.9688 0.2188 +0.6875 0.9688 0.25 +0.6875 0.9688 0.2812 +0.6875 0.9688 0.3125 +0.6875 0.9688 0.3438 +0.6875 0.9688 0.375 +0.6875 0.9688 0.4062 +0.6875 0.9688 0.4375 +0.6875 0.9688 0.4688 +0.6875 0.9688 0.5 +0.6875 0.9688 0.5312 +0.6875 0.9688 0.5625 +0.6875 0.9688 0.5938 +0.6875 0.9688 0.625 +0.6875 0.9688 0.6562 +0.6875 0.9688 0.6875 +0.6875 0.9688 0.7188 +0.6875 0.9688 0.75 +0.6875 0.9688 0.7812 +0.6875 0.9688 0.8125 +0.6875 0.9688 0.8438 +0.6875 0.9688 0.875 +0.6875 0.9688 0.9062 +0.6875 0.9688 0.9375 +0.6875 0.9688 0.9688 +0.6875 0.9688 1 +0.6875 1 0 +0.6875 1 0.03125 +0.6875 1 0.0625 +0.6875 1 0.09375 +0.6875 1 0.125 +0.6875 1 0.1562 +0.6875 1 0.1875 +0.6875 1 0.2188 +0.6875 1 0.25 +0.6875 1 0.2812 +0.6875 1 0.3125 +0.6875 1 0.3438 +0.6875 1 0.375 +0.6875 1 0.4062 +0.6875 1 0.4375 +0.6875 1 0.4688 +0.6875 1 0.5 +0.6875 1 0.5312 +0.6875 1 0.5625 +0.6875 1 0.5938 +0.6875 1 0.625 +0.6875 1 0.6562 +0.6875 1 0.6875 +0.6875 1 0.7188 +0.6875 1 0.75 +0.6875 1 0.7812 +0.6875 1 0.8125 +0.6875 1 0.8438 +0.6875 1 0.875 +0.6875 1 0.9062 +0.6875 1 0.9375 +0.6875 1 0.9688 +0.6875 1 1 +0.7188 0 0 +0.7188 0 0.03125 +0.7188 0 0.0625 +0.7188 0 0.09375 +0.7188 0 0.125 +0.7188 0 0.1562 +0.7188 0 0.1875 +0.7188 0 0.2188 +0.7188 0 0.25 +0.7188 0 0.2812 +0.7188 0 0.3125 +0.7188 0 0.3438 +0.7188 0 0.375 +0.7188 0 0.4062 +0.7188 0 0.4375 +0.7188 0 0.4688 +0.7188 0 0.5 +0.7188 0 0.5312 +0.7188 0 0.5625 +0.7188 0 0.5938 +0.7188 0 0.625 +0.7188 0 0.6562 +0.7188 0 0.6875 +0.7188 0 0.7188 +0.7188 0 0.75 +0.7188 0 0.7812 +0.7188 0 0.8125 +0.7188 0 0.8438 +0.7188 0 0.875 +0.7188 0 0.9062 +0.7188 0 0.9375 +0.7188 0 0.9688 +0.7188 0 1 +0.7188 0.03125 0 +0.7188 0.03125 0.03125 +0.7188 0.03125 0.0625 +0.7188 0.03125 0.09375 +0.7188 0.03125 0.125 +0.7188 0.03125 0.1562 +0.7188 0.03125 0.1875 +0.7188 0.03125 0.2188 +0.7188 0.03125 0.25 +0.7188 0.03125 0.2812 +0.7188 0.03125 0.3125 +0.7188 0.03125 0.3438 +0.7188 0.03125 0.375 +0.7188 0.03125 0.4062 +0.7188 0.03125 0.4375 +0.7188 0.03125 0.4688 +0.7188 0.03125 0.5 +0.7188 0.03125 0.5312 +0.7188 0.03125 0.5625 +0.7188 0.03125 0.5938 +0.7188 0.03125 0.625 +0.7188 0.03125 0.6562 +0.7188 0.03125 0.6875 +0.7188 0.03125 0.7188 +0.7188 0.03125 0.75 +0.7188 0.03125 0.7812 +0.7188 0.03125 0.8125 +0.7188 0.03125 0.8438 +0.7188 0.03125 0.875 +0.7188 0.03125 0.9062 +0.7188 0.03125 0.9375 +0.7188 0.03125 0.9688 +0.7188 0.03125 1 +0.7188 0.0625 0 +0.7188 0.0625 0.03125 +0.7188 0.0625 0.0625 +0.7188 0.0625 0.09375 +0.7188 0.0625 0.125 +0.7188 0.0625 0.1562 +0.7188 0.0625 0.1875 +0.7188 0.0625 0.2188 +0.7188 0.0625 0.25 +0.7188 0.0625 0.2812 +0.7188 0.0625 0.3125 +0.7188 0.0625 0.3438 +0.7188 0.0625 0.375 +0.7188 0.0625 0.4062 +0.7188 0.0625 0.4375 +0.7188 0.0625 0.4688 +0.7188 0.0625 0.5 +0.7188 0.0625 0.5312 +0.7188 0.0625 0.5625 +0.7188 0.0625 0.5938 +0.7188 0.0625 0.625 +0.7188 0.0625 0.6562 +0.7188 0.0625 0.6875 +0.7188 0.0625 0.7188 +0.7188 0.0625 0.75 +0.7188 0.0625 0.7812 +0.7188 0.0625 0.8125 +0.7188 0.0625 0.8438 +0.7188 0.0625 0.875 +0.7188 0.0625 0.9062 +0.7188 0.0625 0.9375 +0.7188 0.0625 0.9688 +0.7188 0.0625 1 +0.7188 0.09375 0 +0.7188 0.09375 0.03125 +0.7188 0.09375 0.0625 +0.7188 0.09375 0.09375 +0.7188 0.09375 0.125 +0.7188 0.09375 0.1562 +0.7188 0.09375 0.1875 +0.7188 0.09375 0.2188 +0.7188 0.09375 0.25 +0.7188 0.09375 0.2812 +0.7188 0.09375 0.3125 +0.7188 0.09375 0.3438 +0.7188 0.09375 0.375 +0.7188 0.09375 0.4062 +0.7188 0.09375 0.4375 +0.7188 0.09375 0.4688 +0.7188 0.09375 0.5 +0.7188 0.09375 0.5312 +0.7188 0.09375 0.5625 +0.7188 0.09375 0.5938 +0.7188 0.09375 0.625 +0.7188 0.09375 0.6562 +0.7188 0.09375 0.6875 +0.7188 0.09375 0.7188 +0.7188 0.09375 0.75 +0.7188 0.09375 0.7812 +0.7188 0.09375 0.8125 +0.7188 0.09375 0.8438 +0.7188 0.09375 0.875 +0.7188 0.09375 0.9062 +0.7188 0.09375 0.9375 +0.7188 0.09375 0.9688 +0.7188 0.09375 1 +0.7188 0.125 0 +0.7188 0.125 0.03125 +0.7188 0.125 0.0625 +0.7188 0.125 0.09375 +0.7188 0.125 0.125 +0.7188 0.125 0.1562 +0.7188 0.125 0.1875 +0.7188 0.125 0.2188 +0.7188 0.125 0.25 +0.7188 0.125 0.2812 +0.7188 0.125 0.3125 +0.7188 0.125 0.3438 +0.7188 0.125 0.375 +0.7188 0.125 0.4062 +0.7188 0.125 0.4375 +0.7188 0.125 0.4688 +0.7188 0.125 0.5 +0.7188 0.125 0.5312 +0.7188 0.125 0.5625 +0.7188 0.125 0.5938 +0.7188 0.125 0.625 +0.7188 0.125 0.6562 +0.7188 0.125 0.6875 +0.7188 0.125 0.7188 +0.7188 0.125 0.75 +0.7188 0.125 0.7812 +0.7188 0.125 0.8125 +0.7188 0.125 0.8438 +0.7188 0.125 0.875 +0.7188 0.125 0.9062 +0.7188 0.125 0.9375 +0.7188 0.125 0.9688 +0.7188 0.125 1 +0.7188 0.1562 0 +0.7188 0.1562 0.03125 +0.7188 0.1562 0.0625 +0.7188 0.1562 0.09375 +0.7188 0.1562 0.125 +0.7188 0.1562 0.1562 +0.7188 0.1562 0.1875 +0.7188 0.1562 0.2188 +0.7188 0.1562 0.25 +0.7188 0.1562 0.2812 +0.7188 0.1562 0.3125 +0.7188 0.1562 0.3438 +0.7188 0.1562 0.375 +0.7188 0.1562 0.4062 +0.7188 0.1562 0.4375 +0.7188 0.1562 0.4688 +0.7188 0.1562 0.5 +0.7188 0.1562 0.5312 +0.7188 0.1562 0.5625 +0.7188 0.1562 0.5938 +0.7188 0.1562 0.625 +0.7188 0.1562 0.6562 +0.7188 0.1562 0.6875 +0.7188 0.1562 0.7188 +0.7188 0.1562 0.75 +0.7188 0.1562 0.7812 +0.7188 0.1562 0.8125 +0.7188 0.1562 0.8438 +0.7188 0.1562 0.875 +0.7188 0.1562 0.9062 +0.7188 0.1562 0.9375 +0.7188 0.1562 0.9688 +0.7188 0.1562 1 +0.7188 0.1875 0 +0.7188 0.1875 0.03125 +0.7188 0.1875 0.0625 +0.7188 0.1875 0.09375 +0.7188 0.1875 0.125 +0.7188 0.1875 0.1562 +0.7188 0.1875 0.1875 +0.7188 0.1875 0.2188 +0.7188 0.1875 0.25 +0.7188 0.1875 0.2812 +0.7188 0.1875 0.3125 +0.7188 0.1875 0.3438 +0.7188 0.1875 0.375 +0.7188 0.1875 0.4062 +0.7188 0.1875 0.4375 +0.7188 0.1875 0.4688 +0.7188 0.1875 0.5 +0.7188 0.1875 0.5312 +0.7188 0.1875 0.5625 +0.7188 0.1875 0.5938 +0.7188 0.1875 0.625 +0.7188 0.1875 0.6562 +0.7188 0.1875 0.6875 +0.7188 0.1875 0.7188 +0.7188 0.1875 0.75 +0.7188 0.1875 0.7812 +0.7188 0.1875 0.8125 +0.7188 0.1875 0.8438 +0.7188 0.1875 0.875 +0.7188 0.1875 0.9062 +0.7188 0.1875 0.9375 +0.7188 0.1875 0.9688 +0.7188 0.1875 1 +0.7188 0.2188 0 +0.7188 0.2188 0.03125 +0.7188 0.2188 0.0625 +0.7188 0.2188 0.09375 +0.7188 0.2188 0.125 +0.7188 0.2188 0.1562 +0.7188 0.2188 0.1875 +0.7188 0.2188 0.2188 +0.7188 0.2188 0.25 +0.7188 0.2188 0.2812 +0.7188 0.2188 0.3125 +0.7188 0.2188 0.3438 +0.7188 0.2188 0.375 +0.7188 0.2188 0.4062 +0.7188 0.2188 0.4375 +0.7188 0.2188 0.4688 +0.7188 0.2188 0.5 +0.7188 0.2188 0.5312 +0.7188 0.2188 0.5625 +0.7188 0.2188 0.5938 +0.7188 0.2188 0.625 +0.7188 0.2188 0.6562 +0.7188 0.2188 0.6875 +0.7188 0.2188 0.7188 +0.7188 0.2188 0.75 +0.7188 0.2188 0.7812 +0.7188 0.2188 0.8125 +0.7188 0.2188 0.8438 +0.7188 0.2188 0.875 +0.7188 0.2188 0.9062 +0.7188 0.2188 0.9375 +0.7188 0.2188 0.9688 +0.7188 0.2188 1 +0.7188 0.25 0 +0.7188 0.25 0.03125 +0.7188 0.25 0.0625 +0.7188 0.25 0.09375 +0.7188 0.25 0.125 +0.7188 0.25 0.1562 +0.7188 0.25 0.1875 +0.7188 0.25 0.2188 +0.7188 0.25 0.25 +0.7188 0.25 0.2812 +0.7188 0.25 0.3125 +0.7188 0.25 0.3438 +0.7188 0.25 0.375 +0.7188 0.25 0.4062 +0.7188 0.25 0.4375 +0.7188 0.25 0.4688 +0.7188 0.25 0.5 +0.7188 0.25 0.5312 +0.7188 0.25 0.5625 +0.7188 0.25 0.5938 +0.7188 0.25 0.625 +0.7188 0.25 0.6562 +0.7188 0.25 0.6875 +0.7188 0.25 0.7188 +0.7188 0.25 0.75 +0.7188 0.25 0.7812 +0.7188 0.25 0.8125 +0.7188 0.25 0.8438 +0.7188 0.25 0.875 +0.7188 0.25 0.9062 +0.7188 0.25 0.9375 +0.7188 0.25 0.9688 +0.7188 0.25 1 +0.7188 0.2812 0 +0.7188 0.2812 0.03125 +0.7188 0.2812 0.0625 +0.7188 0.2812 0.09375 +0.7188 0.2812 0.125 +0.7188 0.2812 0.1562 +0.7188 0.2812 0.1875 +0.7188 0.2812 0.2188 +0.7188 0.2812 0.25 +0.7188 0.2812 0.2812 +0.7188 0.2812 0.3125 +0.7188 0.2812 0.3438 +0.7188 0.2812 0.375 +0.7188 0.2812 0.4062 +0.7188 0.2812 0.4375 +0.7188 0.2812 0.4688 +0.7188 0.2812 0.5 +0.7188 0.2812 0.5312 +0.7188 0.2812 0.5625 +0.7188 0.2812 0.5938 +0.7188 0.2812 0.625 +0.7188 0.2812 0.6562 +0.7188 0.2812 0.6875 +0.7188 0.2812 0.7188 +0.7188 0.2812 0.75 +0.7188 0.2812 0.7812 +0.7188 0.2812 0.8125 +0.7188 0.2812 0.8438 +0.7188 0.2812 0.875 +0.7188 0.2812 0.9062 +0.7188 0.2812 0.9375 +0.7188 0.2812 0.9688 +0.7188 0.2812 1 +0.7188 0.3125 0 +0.7188 0.3125 0.03125 +0.7188 0.3125 0.0625 +0.7188 0.3125 0.09375 +0.7188 0.3125 0.125 +0.7188 0.3125 0.1562 +0.7188 0.3125 0.1875 +0.7188 0.3125 0.2188 +0.7188 0.3125 0.25 +0.7188 0.3125 0.2812 +0.7188 0.3125 0.3125 +0.7188 0.3125 0.3438 +0.7188 0.3125 0.375 +0.7188 0.3125 0.4062 +0.7188 0.3125 0.4375 +0.7188 0.3125 0.4688 +0.7188 0.3125 0.5 +0.7188 0.3125 0.5312 +0.7188 0.3125 0.5625 +0.7188 0.3125 0.5938 +0.7188 0.3125 0.625 +0.7188 0.3125 0.6562 +0.7188 0.3125 0.6875 +0.7188 0.3125 0.7188 +0.7188 0.3125 0.75 +0.7188 0.3125 0.7812 +0.7188 0.3125 0.8125 +0.7188 0.3125 0.8438 +0.7188 0.3125 0.875 +0.7188 0.3125 0.9062 +0.7188 0.3125 0.9375 +0.7188 0.3125 0.9688 +0.7188 0.3125 1 +0.7188 0.3438 0 +0.7188 0.3438 0.03125 +0.7188 0.3438 0.0625 +0.7188 0.3438 0.09375 +0.7188 0.3438 0.125 +0.7188 0.3438 0.1562 +0.7188 0.3438 0.1875 +0.7188 0.3438 0.2188 +0.7188 0.3438 0.25 +0.7188 0.3438 0.2812 +0.7188 0.3438 0.3125 +0.7188 0.3438 0.3438 +0.7188 0.3438 0.375 +0.7188 0.3438 0.4062 +0.7188 0.3438 0.4375 +0.7188 0.3438 0.4688 +0.7188 0.3438 0.5 +0.7188 0.3438 0.5312 +0.7188 0.3438 0.5625 +0.7188 0.3438 0.5938 +0.7188 0.3438 0.625 +0.7188 0.3438 0.6562 +0.7188 0.3438 0.6875 +0.7188 0.3438 0.7188 +0.7188 0.3438 0.75 +0.7188 0.3438 0.7812 +0.7188 0.3438 0.8125 +0.7188 0.3438 0.8438 +0.7188 0.3438 0.875 +0.7188 0.3438 0.9062 +0.7188 0.3438 0.9375 +0.7188 0.3438 0.9688 +0.7188 0.3438 1 +0.7188 0.375 0 +0.7188 0.375 0.03125 +0.7188 0.375 0.0625 +0.7188 0.375 0.09375 +0.7188 0.375 0.125 +0.7188 0.375 0.1562 +0.7188 0.375 0.1875 +0.7188 0.375 0.2188 +0.7188 0.375 0.25 +0.7188 0.375 0.2812 +0.7188 0.375 0.3125 +0.7188 0.375 0.3438 +0.7188 0.375 0.375 +0.7188 0.375 0.4062 +0.7188 0.375 0.4375 +0.7188 0.375 0.4688 +0.7188 0.375 0.5 +0.7188 0.375 0.5312 +0.7188 0.375 0.5625 +0.7188 0.375 0.5938 +0.7188 0.375 0.625 +0.7188 0.375 0.6562 +0.7188 0.375 0.6875 +0.7188 0.375 0.7188 +0.7188 0.375 0.75 +0.7188 0.375 0.7812 +0.7188 0.375 0.8125 +0.7188 0.375 0.8438 +0.7188 0.375 0.875 +0.7188 0.375 0.9062 +0.7188 0.375 0.9375 +0.7188 0.375 0.9688 +0.7188 0.375 1 +0.7188 0.4062 0 +0.7188 0.4062 0.03125 +0.7188 0.4062 0.0625 +0.7188 0.4062 0.09375 +0.7188 0.4062 0.125 +0.7188 0.4062 0.1562 +0.7188 0.4062 0.1875 +0.7188 0.4062 0.2188 +0.7188 0.4062 0.25 +0.7188 0.4062 0.2812 +0.7188 0.4062 0.3125 +0.7188 0.4062 0.3438 +0.7188 0.4062 0.375 +0.7188 0.4062 0.4062 +0.7188 0.4062 0.4375 +0.7188 0.4062 0.4688 +0.7188 0.4062 0.5 +0.7188 0.4062 0.5312 +0.7188 0.4062 0.5625 +0.7188 0.4062 0.5938 +0.7188 0.4062 0.625 +0.7188 0.4062 0.6562 +0.7188 0.4062 0.6875 +0.7188 0.4062 0.7188 +0.7188 0.4062 0.75 +0.7188 0.4062 0.7812 +0.7188 0.4062 0.8125 +0.7188 0.4062 0.8438 +0.7188 0.4062 0.875 +0.7188 0.4062 0.9062 +0.7188 0.4062 0.9375 +0.7188 0.4062 0.9688 +0.7188 0.4062 1 +0.7188 0.4375 0 +0.7188 0.4375 0.03125 +0.7188 0.4375 0.0625 +0.7188 0.4375 0.09375 +0.7188 0.4375 0.125 +0.7188 0.4375 0.1562 +0.7188 0.4375 0.1875 +0.7188 0.4375 0.2188 +0.7188 0.4375 0.25 +0.7188 0.4375 0.2812 +0.7188 0.4375 0.3125 +0.7188 0.4375 0.3438 +0.7188 0.4375 0.375 +0.7188 0.4375 0.4062 +0.7188 0.4375 0.4375 +0.7188 0.4375 0.4688 +0.7188 0.4375 0.5 +0.7188 0.4375 0.5312 +0.7188 0.4375 0.5625 +0.7188 0.4375 0.5938 +0.7188 0.4375 0.625 +0.7188 0.4375 0.6562 +0.7188 0.4375 0.6875 +0.7188 0.4375 0.7188 +0.7188 0.4375 0.75 +0.7188 0.4375 0.7812 +0.7188 0.4375 0.8125 +0.7188 0.4375 0.8438 +0.7188 0.4375 0.875 +0.7188 0.4375 0.9062 +0.7188 0.4375 0.9375 +0.7188 0.4375 0.9688 +0.7188 0.4375 1 +0.7188 0.4688 0 +0.7188 0.4688 0.03125 +0.7188 0.4688 0.0625 +0.7188 0.4688 0.09375 +0.7188 0.4688 0.125 +0.7188 0.4688 0.1562 +0.7188 0.4688 0.1875 +0.7188 0.4688 0.2188 +0.7188 0.4688 0.25 +0.7188 0.4688 0.2812 +0.7188 0.4688 0.3125 +0.7188 0.4688 0.3438 +0.7188 0.4688 0.375 +0.7188 0.4688 0.4062 +0.7188 0.4688 0.4375 +0.7188 0.4688 0.4688 +0.7188 0.4688 0.5 +0.7188 0.4688 0.5312 +0.7188 0.4688 0.5625 +0.7188 0.4688 0.5938 +0.7188 0.4688 0.625 +0.7188 0.4688 0.6562 +0.7188 0.4688 0.6875 +0.7188 0.4688 0.7188 +0.7188 0.4688 0.75 +0.7188 0.4688 0.7812 +0.7188 0.4688 0.8125 +0.7188 0.4688 0.8438 +0.7188 0.4688 0.875 +0.7188 0.4688 0.9062 +0.7188 0.4688 0.9375 +0.7188 0.4688 0.9688 +0.7188 0.4688 1 +0.7188 0.5 0 +0.7188 0.5 0.03125 +0.7188 0.5 0.0625 +0.7188 0.5 0.09375 +0.7188 0.5 0.125 +0.7188 0.5 0.1562 +0.7188 0.5 0.1875 +0.7188 0.5 0.2188 +0.7188 0.5 0.25 +0.7188 0.5 0.2812 +0.7188 0.5 0.3125 +0.7188 0.5 0.3438 +0.7188 0.5 0.375 +0.7188 0.5 0.4062 +0.7188 0.5 0.4375 +0.7188 0.5 0.4688 +0.7188 0.5 0.5 +0.7188 0.5 0.5312 +0.7188 0.5 0.5625 +0.7188 0.5 0.5938 +0.7188 0.5 0.625 +0.7188 0.5 0.6562 +0.7188 0.5 0.6875 +0.7188 0.5 0.7188 +0.7188 0.5 0.75 +0.7188 0.5 0.7812 +0.7188 0.5 0.8125 +0.7188 0.5 0.8438 +0.7188 0.5 0.875 +0.7188 0.5 0.9062 +0.7188 0.5 0.9375 +0.7188 0.5 0.9688 +0.7188 0.5 1 +0.7188 0.5312 0 +0.7188 0.5312 0.03125 +0.7188 0.5312 0.0625 +0.7188 0.5312 0.09375 +0.7188 0.5312 0.125 +0.7188 0.5312 0.1562 +0.7188 0.5312 0.1875 +0.7188 0.5312 0.2188 +0.7188 0.5312 0.25 +0.7188 0.5312 0.2812 +0.7188 0.5312 0.3125 +0.7188 0.5312 0.3438 +0.7188 0.5312 0.375 +0.7188 0.5312 0.4062 +0.7188 0.5312 0.4375 +0.7188 0.5312 0.4688 +0.7188 0.5312 0.5 +0.7188 0.5312 0.5312 +0.7188 0.5312 0.5625 +0.7188 0.5312 0.5938 +0.7188 0.5312 0.625 +0.7188 0.5312 0.6562 +0.7188 0.5312 0.6875 +0.7188 0.5312 0.7188 +0.7188 0.5312 0.75 +0.7188 0.5312 0.7812 +0.7188 0.5312 0.8125 +0.7188 0.5312 0.8438 +0.7188 0.5312 0.875 +0.7188 0.5312 0.9062 +0.7188 0.5312 0.9375 +0.7188 0.5312 0.9688 +0.7188 0.5312 1 +0.7188 0.5625 0 +0.7188 0.5625 0.03125 +0.7188 0.5625 0.0625 +0.7188 0.5625 0.09375 +0.7188 0.5625 0.125 +0.7188 0.5625 0.1562 +0.7188 0.5625 0.1875 +0.7188 0.5625 0.2188 +0.7188 0.5625 0.25 +0.7188 0.5625 0.2812 +0.7188 0.5625 0.3125 +0.7188 0.5625 0.3438 +0.7188 0.5625 0.375 +0.7188 0.5625 0.4062 +0.7188 0.5625 0.4375 +0.7188 0.5625 0.4688 +0.7188 0.5625 0.5 +0.7188 0.5625 0.5312 +0.7188 0.5625 0.5625 +0.7188 0.5625 0.5938 +0.7188 0.5625 0.625 +0.7188 0.5625 0.6562 +0.7188 0.5625 0.6875 +0.7188 0.5625 0.7188 +0.7188 0.5625 0.75 +0.7188 0.5625 0.7812 +0.7188 0.5625 0.8125 +0.7188 0.5625 0.8438 +0.7188 0.5625 0.875 +0.7188 0.5625 0.9062 +0.7188 0.5625 0.9375 +0.7188 0.5625 0.9688 +0.7188 0.5625 1 +0.7188 0.5938 0 +0.7188 0.5938 0.03125 +0.7188 0.5938 0.0625 +0.7188 0.5938 0.09375 +0.7188 0.5938 0.125 +0.7188 0.5938 0.1562 +0.7188 0.5938 0.1875 +0.7188 0.5938 0.2188 +0.7188 0.5938 0.25 +0.7188 0.5938 0.2812 +0.7188 0.5938 0.3125 +0.7188 0.5938 0.3438 +0.7188 0.5938 0.375 +0.7188 0.5938 0.4062 +0.7188 0.5938 0.4375 +0.7188 0.5938 0.4688 +0.7188 0.5938 0.5 +0.7188 0.5938 0.5312 +0.7188 0.5938 0.5625 +0.7188 0.5938 0.5938 +0.7188 0.5938 0.625 +0.7188 0.5938 0.6562 +0.7188 0.5938 0.6875 +0.7188 0.5938 0.7188 +0.7188 0.5938 0.75 +0.7188 0.5938 0.7812 +0.7188 0.5938 0.8125 +0.7188 0.5938 0.8438 +0.7188 0.5938 0.875 +0.7188 0.5938 0.9062 +0.7188 0.5938 0.9375 +0.7188 0.5938 0.9688 +0.7188 0.5938 1 +0.7188 0.625 0 +0.7188 0.625 0.03125 +0.7188 0.625 0.0625 +0.7188 0.625 0.09375 +0.7188 0.625 0.125 +0.7188 0.625 0.1562 +0.7188 0.625 0.1875 +0.7188 0.625 0.2188 +0.7188 0.625 0.25 +0.7188 0.625 0.2812 +0.7188 0.625 0.3125 +0.7188 0.625 0.3438 +0.7188 0.625 0.375 +0.7188 0.625 0.4062 +0.7188 0.625 0.4375 +0.7188 0.625 0.4688 +0.7188 0.625 0.5 +0.7188 0.625 0.5312 +0.7188 0.625 0.5625 +0.7188 0.625 0.5938 +0.7188 0.625 0.625 +0.7188 0.625 0.6562 +0.7188 0.625 0.6875 +0.7188 0.625 0.7188 +0.7188 0.625 0.75 +0.7188 0.625 0.7812 +0.7188 0.625 0.8125 +0.7188 0.625 0.8438 +0.7188 0.625 0.875 +0.7188 0.625 0.9062 +0.7188 0.625 0.9375 +0.7188 0.625 0.9688 +0.7188 0.625 1 +0.7188 0.6562 0 +0.7188 0.6562 0.03125 +0.7188 0.6562 0.0625 +0.7188 0.6562 0.09375 +0.7188 0.6562 0.125 +0.7188 0.6562 0.1562 +0.7188 0.6562 0.1875 +0.7188 0.6562 0.2188 +0.7188 0.6562 0.25 +0.7188 0.6562 0.2812 +0.7188 0.6562 0.3125 +0.7188 0.6562 0.3438 +0.7188 0.6562 0.375 +0.7188 0.6562 0.4062 +0.7188 0.6562 0.4375 +0.7188 0.6562 0.4688 +0.7188 0.6562 0.5 +0.7188 0.6562 0.5312 +0.7188 0.6562 0.5625 +0.7188 0.6562 0.5938 +0.7188 0.6562 0.625 +0.7188 0.6562 0.6562 +0.7188 0.6562 0.6875 +0.7188 0.6562 0.7188 +0.7188 0.6562 0.75 +0.7188 0.6562 0.7812 +0.7188 0.6562 0.8125 +0.7188 0.6562 0.8438 +0.7188 0.6562 0.875 +0.7188 0.6562 0.9062 +0.7188 0.6562 0.9375 +0.7188 0.6562 0.9688 +0.7188 0.6562 1 +0.7188 0.6875 0 +0.7188 0.6875 0.03125 +0.7188 0.6875 0.0625 +0.7188 0.6875 0.09375 +0.7188 0.6875 0.125 +0.7188 0.6875 0.1562 +0.7188 0.6875 0.1875 +0.7188 0.6875 0.2188 +0.7188 0.6875 0.25 +0.7188 0.6875 0.2812 +0.7188 0.6875 0.3125 +0.7188 0.6875 0.3438 +0.7188 0.6875 0.375 +0.7188 0.6875 0.4062 +0.7188 0.6875 0.4375 +0.7188 0.6875 0.4688 +0.7188 0.6875 0.5 +0.7188 0.6875 0.5312 +0.7188 0.6875 0.5625 +0.7188 0.6875 0.5938 +0.7188 0.6875 0.625 +0.7188 0.6875 0.6562 +0.7188 0.6875 0.6875 +0.7188 0.6875 0.7188 +0.7188 0.6875 0.75 +0.7188 0.6875 0.7812 +0.7188 0.6875 0.8125 +0.7188 0.6875 0.8438 +0.7188 0.6875 0.875 +0.7188 0.6875 0.9062 +0.7188 0.6875 0.9375 +0.7188 0.6875 0.9688 +0.7188 0.6875 1 +0.7188 0.7188 0 +0.7188 0.7188 0.03125 +0.7188 0.7188 0.0625 +0.7188 0.7188 0.09375 +0.7188 0.7188 0.125 +0.7188 0.7188 0.1562 +0.7188 0.7188 0.1875 +0.7188 0.7188 0.2188 +0.7188 0.7188 0.25 +0.7188 0.7188 0.2812 +0.7188 0.7188 0.3125 +0.7188 0.7188 0.3438 +0.7188 0.7188 0.375 +0.7188 0.7188 0.4062 +0.7188 0.7188 0.4375 +0.7188 0.7188 0.4688 +0.7188 0.7188 0.5 +0.7188 0.7188 0.5312 +0.7188 0.7188 0.5625 +0.7188 0.7188 0.5938 +0.7188 0.7188 0.625 +0.7188 0.7188 0.6562 +0.7188 0.7188 0.6875 +0.7188 0.7188 0.7188 +0.7188 0.7188 0.75 +0.7188 0.7188 0.7812 +0.7188 0.7188 0.8125 +0.7188 0.7188 0.8438 +0.7188 0.7188 0.875 +0.7188 0.7188 0.9062 +0.7188 0.7188 0.9375 +0.7188 0.7188 0.9688 +0.7188 0.7188 1 +0.7188 0.75 0 +0.7188 0.75 0.03125 +0.7188 0.75 0.0625 +0.7188 0.75 0.09375 +0.7188 0.75 0.125 +0.7188 0.75 0.1562 +0.7188 0.75 0.1875 +0.7188 0.75 0.2188 +0.7188 0.75 0.25 +0.7188 0.75 0.2812 +0.7188 0.75 0.3125 +0.7188 0.75 0.3438 +0.7188 0.75 0.375 +0.7188 0.75 0.4062 +0.7188 0.75 0.4375 +0.7188 0.75 0.4688 +0.7188 0.75 0.5 +0.7188 0.75 0.5312 +0.7188 0.75 0.5625 +0.7188 0.75 0.5938 +0.7188 0.75 0.625 +0.7188 0.75 0.6562 +0.7188 0.75 0.6875 +0.7188 0.75 0.7188 +0.7188 0.75 0.75 +0.7188 0.75 0.7812 +0.7188 0.75 0.8125 +0.7188 0.75 0.8438 +0.7188 0.75 0.875 +0.7188 0.75 0.9062 +0.7188 0.75 0.9375 +0.7188 0.75 0.9688 +0.7188 0.75 1 +0.7188 0.7812 0 +0.7188 0.7812 0.03125 +0.7188 0.7812 0.0625 +0.7188 0.7812 0.09375 +0.7188 0.7812 0.125 +0.7188 0.7812 0.1562 +0.7188 0.7812 0.1875 +0.7188 0.7812 0.2188 +0.7188 0.7812 0.25 +0.7188 0.7812 0.2812 +0.7188 0.7812 0.3125 +0.7188 0.7812 0.3438 +0.7188 0.7812 0.375 +0.7188 0.7812 0.4062 +0.7188 0.7812 0.4375 +0.7188 0.7812 0.4688 +0.7188 0.7812 0.5 +0.7188 0.7812 0.5312 +0.7188 0.7812 0.5625 +0.7188 0.7812 0.5938 +0.7188 0.7812 0.625 +0.7188 0.7812 0.6562 +0.7188 0.7812 0.6875 +0.7188 0.7812 0.7188 +0.7188 0.7812 0.75 +0.7188 0.7812 0.7812 +0.7188 0.7812 0.8125 +0.7188 0.7812 0.8438 +0.7188 0.7812 0.875 +0.7188 0.7812 0.9062 +0.7188 0.7812 0.9375 +0.7188 0.7812 0.9688 +0.7188 0.7812 1 +0.7188 0.8125 0 +0.7188 0.8125 0.03125 +0.7188 0.8125 0.0625 +0.7188 0.8125 0.09375 +0.7188 0.8125 0.125 +0.7188 0.8125 0.1562 +0.7188 0.8125 0.1875 +0.7188 0.8125 0.2188 +0.7188 0.8125 0.25 +0.7188 0.8125 0.2812 +0.7188 0.8125 0.3125 +0.7188 0.8125 0.3438 +0.7188 0.8125 0.375 +0.7188 0.8125 0.4062 +0.7188 0.8125 0.4375 +0.7188 0.8125 0.4688 +0.7188 0.8125 0.5 +0.7188 0.8125 0.5312 +0.7188 0.8125 0.5625 +0.7188 0.8125 0.5938 +0.7188 0.8125 0.625 +0.7188 0.8125 0.6562 +0.7188 0.8125 0.6875 +0.7188 0.8125 0.7188 +0.7188 0.8125 0.75 +0.7188 0.8125 0.7812 +0.7188 0.8125 0.8125 +0.7188 0.8125 0.8438 +0.7188 0.8125 0.875 +0.7188 0.8125 0.9062 +0.7188 0.8125 0.9375 +0.7188 0.8125 0.9688 +0.7188 0.8125 1 +0.7188 0.8438 0 +0.7188 0.8438 0.03125 +0.7188 0.8438 0.0625 +0.7188 0.8438 0.09375 +0.7188 0.8438 0.125 +0.7188 0.8438 0.1562 +0.7188 0.8438 0.1875 +0.7188 0.8438 0.2188 +0.7188 0.8438 0.25 +0.7188 0.8438 0.2812 +0.7188 0.8438 0.3125 +0.7188 0.8438 0.3438 +0.7188 0.8438 0.375 +0.7188 0.8438 0.4062 +0.7188 0.8438 0.4375 +0.7188 0.8438 0.4688 +0.7188 0.8438 0.5 +0.7188 0.8438 0.5312 +0.7188 0.8438 0.5625 +0.7188 0.8438 0.5938 +0.7188 0.8438 0.625 +0.7188 0.8438 0.6562 +0.7188 0.8438 0.6875 +0.7188 0.8438 0.7188 +0.7188 0.8438 0.75 +0.7188 0.8438 0.7812 +0.7188 0.8438 0.8125 +0.7188 0.8438 0.8438 +0.7188 0.8438 0.875 +0.7188 0.8438 0.9062 +0.7188 0.8438 0.9375 +0.7188 0.8438 0.9688 +0.7188 0.8438 1 +0.7188 0.875 0 +0.7188 0.875 0.03125 +0.7188 0.875 0.0625 +0.7188 0.875 0.09375 +0.7188 0.875 0.125 +0.7188 0.875 0.1562 +0.7188 0.875 0.1875 +0.7188 0.875 0.2188 +0.7188 0.875 0.25 +0.7188 0.875 0.2812 +0.7188 0.875 0.3125 +0.7188 0.875 0.3438 +0.7188 0.875 0.375 +0.7188 0.875 0.4062 +0.7188 0.875 0.4375 +0.7188 0.875 0.4688 +0.7188 0.875 0.5 +0.7188 0.875 0.5312 +0.7188 0.875 0.5625 +0.7188 0.875 0.5938 +0.7188 0.875 0.625 +0.7188 0.875 0.6562 +0.7188 0.875 0.6875 +0.7188 0.875 0.7188 +0.7188 0.875 0.75 +0.7188 0.875 0.7812 +0.7188 0.875 0.8125 +0.7188 0.875 0.8438 +0.7188 0.875 0.875 +0.7188 0.875 0.9062 +0.7188 0.875 0.9375 +0.7188 0.875 0.9688 +0.7188 0.875 1 +0.7188 0.9062 0 +0.7188 0.9062 0.03125 +0.7188 0.9062 0.0625 +0.7188 0.9062 0.09375 +0.7188 0.9062 0.125 +0.7188 0.9062 0.1562 +0.7188 0.9062 0.1875 +0.7188 0.9062 0.2188 +0.7188 0.9062 0.25 +0.7188 0.9062 0.2812 +0.7188 0.9062 0.3125 +0.7188 0.9062 0.3438 +0.7188 0.9062 0.375 +0.7188 0.9062 0.4062 +0.7188 0.9062 0.4375 +0.7188 0.9062 0.4688 +0.7188 0.9062 0.5 +0.7188 0.9062 0.5312 +0.7188 0.9062 0.5625 +0.7188 0.9062 0.5938 +0.7188 0.9062 0.625 +0.7188 0.9062 0.6562 +0.7188 0.9062 0.6875 +0.7188 0.9062 0.7188 +0.7188 0.9062 0.75 +0.7188 0.9062 0.7812 +0.7188 0.9062 0.8125 +0.7188 0.9062 0.8438 +0.7188 0.9062 0.875 +0.7188 0.9062 0.9062 +0.7188 0.9062 0.9375 +0.7188 0.9062 0.9688 +0.7188 0.9062 1 +0.7188 0.9375 0 +0.7188 0.9375 0.03125 +0.7188 0.9375 0.0625 +0.7188 0.9375 0.09375 +0.7188 0.9375 0.125 +0.7188 0.9375 0.1562 +0.7188 0.9375 0.1875 +0.7188 0.9375 0.2188 +0.7188 0.9375 0.25 +0.7188 0.9375 0.2812 +0.7188 0.9375 0.3125 +0.7188 0.9375 0.3438 +0.7188 0.9375 0.375 +0.7188 0.9375 0.4062 +0.7188 0.9375 0.4375 +0.7188 0.9375 0.4688 +0.7188 0.9375 0.5 +0.7188 0.9375 0.5312 +0.7188 0.9375 0.5625 +0.7188 0.9375 0.5938 +0.7188 0.9375 0.625 +0.7188 0.9375 0.6562 +0.7188 0.9375 0.6875 +0.7188 0.9375 0.7188 +0.7188 0.9375 0.75 +0.7188 0.9375 0.7812 +0.7188 0.9375 0.8125 +0.7188 0.9375 0.8438 +0.7188 0.9375 0.875 +0.7188 0.9375 0.9062 +0.7188 0.9375 0.9375 +0.7188 0.9375 0.9688 +0.7188 0.9375 1 +0.7188 0.9688 0 +0.7188 0.9688 0.03125 +0.7188 0.9688 0.0625 +0.7188 0.9688 0.09375 +0.7188 0.9688 0.125 +0.7188 0.9688 0.1562 +0.7188 0.9688 0.1875 +0.7188 0.9688 0.2188 +0.7188 0.9688 0.25 +0.7188 0.9688 0.2812 +0.7188 0.9688 0.3125 +0.7188 0.9688 0.3438 +0.7188 0.9688 0.375 +0.7188 0.9688 0.4062 +0.7188 0.9688 0.4375 +0.7188 0.9688 0.4688 +0.7188 0.9688 0.5 +0.7188 0.9688 0.5312 +0.7188 0.9688 0.5625 +0.7188 0.9688 0.5938 +0.7188 0.9688 0.625 +0.7188 0.9688 0.6562 +0.7188 0.9688 0.6875 +0.7188 0.9688 0.7188 +0.7188 0.9688 0.75 +0.7188 0.9688 0.7812 +0.7188 0.9688 0.8125 +0.7188 0.9688 0.8438 +0.7188 0.9688 0.875 +0.7188 0.9688 0.9062 +0.7188 0.9688 0.9375 +0.7188 0.9688 0.9688 +0.7188 0.9688 1 +0.7188 1 0 +0.7188 1 0.03125 +0.7188 1 0.0625 +0.7188 1 0.09375 +0.7188 1 0.125 +0.7188 1 0.1562 +0.7188 1 0.1875 +0.7188 1 0.2188 +0.7188 1 0.25 +0.7188 1 0.2812 +0.7188 1 0.3125 +0.7188 1 0.3438 +0.7188 1 0.375 +0.7188 1 0.4062 +0.7188 1 0.4375 +0.7188 1 0.4688 +0.7188 1 0.5 +0.7188 1 0.5312 +0.7188 1 0.5625 +0.7188 1 0.5938 +0.7188 1 0.625 +0.7188 1 0.6562 +0.7188 1 0.6875 +0.7188 1 0.7188 +0.7188 1 0.75 +0.7188 1 0.7812 +0.7188 1 0.8125 +0.7188 1 0.8438 +0.7188 1 0.875 +0.7188 1 0.9062 +0.7188 1 0.9375 +0.7188 1 0.9688 +0.7188 1 1 +0.75 0 0 +0.75 0 0.03125 +0.75 0 0.0625 +0.75 0 0.09375 +0.75 0 0.125 +0.75 0 0.1562 +0.75 0 0.1875 +0.75 0 0.2188 +0.75 0 0.25 +0.75 0 0.2812 +0.75 0 0.3125 +0.75 0 0.3438 +0.75 0 0.375 +0.75 0 0.4062 +0.75 0 0.4375 +0.75 0 0.4688 +0.75 0 0.5 +0.75 0 0.5312 +0.75 0 0.5625 +0.75 0 0.5938 +0.75 0 0.625 +0.75 0 0.6562 +0.75 0 0.6875 +0.75 0 0.7188 +0.75 0 0.75 +0.75 0 0.7812 +0.75 0 0.8125 +0.75 0 0.8438 +0.75 0 0.875 +0.75 0 0.9062 +0.75 0 0.9375 +0.75 0 0.9688 +0.75 0 1 +0.75 0.03125 0 +0.75 0.03125 0.03125 +0.75 0.03125 0.0625 +0.75 0.03125 0.09375 +0.75 0.03125 0.125 +0.75 0.03125 0.1562 +0.75 0.03125 0.1875 +0.75 0.03125 0.2188 +0.75 0.03125 0.25 +0.75 0.03125 0.2812 +0.75 0.03125 0.3125 +0.75 0.03125 0.3438 +0.75 0.03125 0.375 +0.75 0.03125 0.4062 +0.75 0.03125 0.4375 +0.75 0.03125 0.4688 +0.75 0.03125 0.5 +0.75 0.03125 0.5312 +0.75 0.03125 0.5625 +0.75 0.03125 0.5938 +0.75 0.03125 0.625 +0.75 0.03125 0.6562 +0.75 0.03125 0.6875 +0.75 0.03125 0.7188 +0.75 0.03125 0.75 +0.75 0.03125 0.7812 +0.75 0.03125 0.8125 +0.75 0.03125 0.8438 +0.75 0.03125 0.875 +0.75 0.03125 0.9062 +0.75 0.03125 0.9375 +0.75 0.03125 0.9688 +0.75 0.03125 1 +0.75 0.0625 0 +0.75 0.0625 0.03125 +0.75 0.0625 0.0625 +0.75 0.0625 0.09375 +0.75 0.0625 0.125 +0.75 0.0625 0.1562 +0.75 0.0625 0.1875 +0.75 0.0625 0.2188 +0.75 0.0625 0.25 +0.75 0.0625 0.2812 +0.75 0.0625 0.3125 +0.75 0.0625 0.3438 +0.75 0.0625 0.375 +0.75 0.0625 0.4062 +0.75 0.0625 0.4375 +0.75 0.0625 0.4688 +0.75 0.0625 0.5 +0.75 0.0625 0.5312 +0.75 0.0625 0.5625 +0.75 0.0625 0.5938 +0.75 0.0625 0.625 +0.75 0.0625 0.6562 +0.75 0.0625 0.6875 +0.75 0.0625 0.7188 +0.75 0.0625 0.75 +0.75 0.0625 0.7812 +0.75 0.0625 0.8125 +0.75 0.0625 0.8438 +0.75 0.0625 0.875 +0.75 0.0625 0.9062 +0.75 0.0625 0.9375 +0.75 0.0625 0.9688 +0.75 0.0625 1 +0.75 0.09375 0 +0.75 0.09375 0.03125 +0.75 0.09375 0.0625 +0.75 0.09375 0.09375 +0.75 0.09375 0.125 +0.75 0.09375 0.1562 +0.75 0.09375 0.1875 +0.75 0.09375 0.2188 +0.75 0.09375 0.25 +0.75 0.09375 0.2812 +0.75 0.09375 0.3125 +0.75 0.09375 0.3438 +0.75 0.09375 0.375 +0.75 0.09375 0.4062 +0.75 0.09375 0.4375 +0.75 0.09375 0.4688 +0.75 0.09375 0.5 +0.75 0.09375 0.5312 +0.75 0.09375 0.5625 +0.75 0.09375 0.5938 +0.75 0.09375 0.625 +0.75 0.09375 0.6562 +0.75 0.09375 0.6875 +0.75 0.09375 0.7188 +0.75 0.09375 0.75 +0.75 0.09375 0.7812 +0.75 0.09375 0.8125 +0.75 0.09375 0.8438 +0.75 0.09375 0.875 +0.75 0.09375 0.9062 +0.75 0.09375 0.9375 +0.75 0.09375 0.9688 +0.75 0.09375 1 +0.75 0.125 0 +0.75 0.125 0.03125 +0.75 0.125 0.0625 +0.75 0.125 0.09375 +0.75 0.125 0.125 +0.75 0.125 0.1562 +0.75 0.125 0.1875 +0.75 0.125 0.2188 +0.75 0.125 0.25 +0.75 0.125 0.2812 +0.75 0.125 0.3125 +0.75 0.125 0.3438 +0.75 0.125 0.375 +0.75 0.125 0.4062 +0.75 0.125 0.4375 +0.75 0.125 0.4688 +0.75 0.125 0.5 +0.75 0.125 0.5312 +0.75 0.125 0.5625 +0.75 0.125 0.5938 +0.75 0.125 0.625 +0.75 0.125 0.6562 +0.75 0.125 0.6875 +0.75 0.125 0.7188 +0.75 0.125 0.75 +0.75 0.125 0.7812 +0.75 0.125 0.8125 +0.75 0.125 0.8438 +0.75 0.125 0.875 +0.75 0.125 0.9062 +0.75 0.125 0.9375 +0.75 0.125 0.9688 +0.75 0.125 1 +0.75 0.1562 0 +0.75 0.1562 0.03125 +0.75 0.1562 0.0625 +0.75 0.1562 0.09375 +0.75 0.1562 0.125 +0.75 0.1562 0.1562 +0.75 0.1562 0.1875 +0.75 0.1562 0.2188 +0.75 0.1562 0.25 +0.75 0.1562 0.2812 +0.75 0.1562 0.3125 +0.75 0.1562 0.3438 +0.75 0.1562 0.375 +0.75 0.1562 0.4062 +0.75 0.1562 0.4375 +0.75 0.1562 0.4688 +0.75 0.1562 0.5 +0.75 0.1562 0.5312 +0.75 0.1562 0.5625 +0.75 0.1562 0.5938 +0.75 0.1562 0.625 +0.75 0.1562 0.6562 +0.75 0.1562 0.6875 +0.75 0.1562 0.7188 +0.75 0.1562 0.75 +0.75 0.1562 0.7812 +0.75 0.1562 0.8125 +0.75 0.1562 0.8438 +0.75 0.1562 0.875 +0.75 0.1562 0.9062 +0.75 0.1562 0.9375 +0.75 0.1562 0.9688 +0.75 0.1562 1 +0.75 0.1875 0 +0.75 0.1875 0.03125 +0.75 0.1875 0.0625 +0.75 0.1875 0.09375 +0.75 0.1875 0.125 +0.75 0.1875 0.1562 +0.75 0.1875 0.1875 +0.75 0.1875 0.2188 +0.75 0.1875 0.25 +0.75 0.1875 0.2812 +0.75 0.1875 0.3125 +0.75 0.1875 0.3438 +0.75 0.1875 0.375 +0.75 0.1875 0.4062 +0.75 0.1875 0.4375 +0.75 0.1875 0.4688 +0.75 0.1875 0.5 +0.75 0.1875 0.5312 +0.75 0.1875 0.5625 +0.75 0.1875 0.5938 +0.75 0.1875 0.625 +0.75 0.1875 0.6562 +0.75 0.1875 0.6875 +0.75 0.1875 0.7188 +0.75 0.1875 0.75 +0.75 0.1875 0.7812 +0.75 0.1875 0.8125 +0.75 0.1875 0.8438 +0.75 0.1875 0.875 +0.75 0.1875 0.9062 +0.75 0.1875 0.9375 +0.75 0.1875 0.9688 +0.75 0.1875 1 +0.75 0.2188 0 +0.75 0.2188 0.03125 +0.75 0.2188 0.0625 +0.75 0.2188 0.09375 +0.75 0.2188 0.125 +0.75 0.2188 0.1562 +0.75 0.2188 0.1875 +0.75 0.2188 0.2188 +0.75 0.2188 0.25 +0.75 0.2188 0.2812 +0.75 0.2188 0.3125 +0.75 0.2188 0.3438 +0.75 0.2188 0.375 +0.75 0.2188 0.4062 +0.75 0.2188 0.4375 +0.75 0.2188 0.4688 +0.75 0.2188 0.5 +0.75 0.2188 0.5312 +0.75 0.2188 0.5625 +0.75 0.2188 0.5938 +0.75 0.2188 0.625 +0.75 0.2188 0.6562 +0.75 0.2188 0.6875 +0.75 0.2188 0.7188 +0.75 0.2188 0.75 +0.75 0.2188 0.7812 +0.75 0.2188 0.8125 +0.75 0.2188 0.8438 +0.75 0.2188 0.875 +0.75 0.2188 0.9062 +0.75 0.2188 0.9375 +0.75 0.2188 0.9688 +0.75 0.2188 1 +0.75 0.25 0 +0.75 0.25 0.03125 +0.75 0.25 0.0625 +0.75 0.25 0.09375 +0.75 0.25 0.125 +0.75 0.25 0.1562 +0.75 0.25 0.1875 +0.75 0.25 0.2188 +0.75 0.25 0.25 +0.75 0.25 0.2812 +0.75 0.25 0.3125 +0.75 0.25 0.3438 +0.75 0.25 0.375 +0.75 0.25 0.4062 +0.75 0.25 0.4375 +0.75 0.25 0.4688 +0.75 0.25 0.5 +0.75 0.25 0.5312 +0.75 0.25 0.5625 +0.75 0.25 0.5938 +0.75 0.25 0.625 +0.75 0.25 0.6562 +0.75 0.25 0.6875 +0.75 0.25 0.7188 +0.75 0.25 0.75 +0.75 0.25 0.7812 +0.75 0.25 0.8125 +0.75 0.25 0.8438 +0.75 0.25 0.875 +0.75 0.25 0.9062 +0.75 0.25 0.9375 +0.75 0.25 0.9688 +0.75 0.25 1 +0.75 0.2812 0 +0.75 0.2812 0.03125 +0.75 0.2812 0.0625 +0.75 0.2812 0.09375 +0.75 0.2812 0.125 +0.75 0.2812 0.1562 +0.75 0.2812 0.1875 +0.75 0.2812 0.2188 +0.75 0.2812 0.25 +0.75 0.2812 0.2812 +0.75 0.2812 0.3125 +0.75 0.2812 0.3438 +0.75 0.2812 0.375 +0.75 0.2812 0.4062 +0.75 0.2812 0.4375 +0.75 0.2812 0.4688 +0.75 0.2812 0.5 +0.75 0.2812 0.5312 +0.75 0.2812 0.5625 +0.75 0.2812 0.5938 +0.75 0.2812 0.625 +0.75 0.2812 0.6562 +0.75 0.2812 0.6875 +0.75 0.2812 0.7188 +0.75 0.2812 0.75 +0.75 0.2812 0.7812 +0.75 0.2812 0.8125 +0.75 0.2812 0.8438 +0.75 0.2812 0.875 +0.75 0.2812 0.9062 +0.75 0.2812 0.9375 +0.75 0.2812 0.9688 +0.75 0.2812 1 +0.75 0.3125 0 +0.75 0.3125 0.03125 +0.75 0.3125 0.0625 +0.75 0.3125 0.09375 +0.75 0.3125 0.125 +0.75 0.3125 0.1562 +0.75 0.3125 0.1875 +0.75 0.3125 0.2188 +0.75 0.3125 0.25 +0.75 0.3125 0.2812 +0.75 0.3125 0.3125 +0.75 0.3125 0.3438 +0.75 0.3125 0.375 +0.75 0.3125 0.4062 +0.75 0.3125 0.4375 +0.75 0.3125 0.4688 +0.75 0.3125 0.5 +0.75 0.3125 0.5312 +0.75 0.3125 0.5625 +0.75 0.3125 0.5938 +0.75 0.3125 0.625 +0.75 0.3125 0.6562 +0.75 0.3125 0.6875 +0.75 0.3125 0.7188 +0.75 0.3125 0.75 +0.75 0.3125 0.7812 +0.75 0.3125 0.8125 +0.75 0.3125 0.8438 +0.75 0.3125 0.875 +0.75 0.3125 0.9062 +0.75 0.3125 0.9375 +0.75 0.3125 0.9688 +0.75 0.3125 1 +0.75 0.3438 0 +0.75 0.3438 0.03125 +0.75 0.3438 0.0625 +0.75 0.3438 0.09375 +0.75 0.3438 0.125 +0.75 0.3438 0.1562 +0.75 0.3438 0.1875 +0.75 0.3438 0.2188 +0.75 0.3438 0.25 +0.75 0.3438 0.2812 +0.75 0.3438 0.3125 +0.75 0.3438 0.3438 +0.75 0.3438 0.375 +0.75 0.3438 0.4062 +0.75 0.3438 0.4375 +0.75 0.3438 0.4688 +0.75 0.3438 0.5 +0.75 0.3438 0.5312 +0.75 0.3438 0.5625 +0.75 0.3438 0.5938 +0.75 0.3438 0.625 +0.75 0.3438 0.6562 +0.75 0.3438 0.6875 +0.75 0.3438 0.7188 +0.75 0.3438 0.75 +0.75 0.3438 0.7812 +0.75 0.3438 0.8125 +0.75 0.3438 0.8438 +0.75 0.3438 0.875 +0.75 0.3438 0.9062 +0.75 0.3438 0.9375 +0.75 0.3438 0.9688 +0.75 0.3438 1 +0.75 0.375 0 +0.75 0.375 0.03125 +0.75 0.375 0.0625 +0.75 0.375 0.09375 +0.75 0.375 0.125 +0.75 0.375 0.1562 +0.75 0.375 0.1875 +0.75 0.375 0.2188 +0.75 0.375 0.25 +0.75 0.375 0.2812 +0.75 0.375 0.3125 +0.75 0.375 0.3438 +0.75 0.375 0.375 +0.75 0.375 0.4062 +0.75 0.375 0.4375 +0.75 0.375 0.4688 +0.75 0.375 0.5 +0.75 0.375 0.5312 +0.75 0.375 0.5625 +0.75 0.375 0.5938 +0.75 0.375 0.625 +0.75 0.375 0.6562 +0.75 0.375 0.6875 +0.75 0.375 0.7188 +0.75 0.375 0.75 +0.75 0.375 0.7812 +0.75 0.375 0.8125 +0.75 0.375 0.8438 +0.75 0.375 0.875 +0.75 0.375 0.9062 +0.75 0.375 0.9375 +0.75 0.375 0.9688 +0.75 0.375 1 +0.75 0.4062 0 +0.75 0.4062 0.03125 +0.75 0.4062 0.0625 +0.75 0.4062 0.09375 +0.75 0.4062 0.125 +0.75 0.4062 0.1562 +0.75 0.4062 0.1875 +0.75 0.4062 0.2188 +0.75 0.4062 0.25 +0.75 0.4062 0.2812 +0.75 0.4062 0.3125 +0.75 0.4062 0.3438 +0.75 0.4062 0.375 +0.75 0.4062 0.4062 +0.75 0.4062 0.4375 +0.75 0.4062 0.4688 +0.75 0.4062 0.5 +0.75 0.4062 0.5312 +0.75 0.4062 0.5625 +0.75 0.4062 0.5938 +0.75 0.4062 0.625 +0.75 0.4062 0.6562 +0.75 0.4062 0.6875 +0.75 0.4062 0.7188 +0.75 0.4062 0.75 +0.75 0.4062 0.7812 +0.75 0.4062 0.8125 +0.75 0.4062 0.8438 +0.75 0.4062 0.875 +0.75 0.4062 0.9062 +0.75 0.4062 0.9375 +0.75 0.4062 0.9688 +0.75 0.4062 1 +0.75 0.4375 0 +0.75 0.4375 0.03125 +0.75 0.4375 0.0625 +0.75 0.4375 0.09375 +0.75 0.4375 0.125 +0.75 0.4375 0.1562 +0.75 0.4375 0.1875 +0.75 0.4375 0.2188 +0.75 0.4375 0.25 +0.75 0.4375 0.2812 +0.75 0.4375 0.3125 +0.75 0.4375 0.3438 +0.75 0.4375 0.375 +0.75 0.4375 0.4062 +0.75 0.4375 0.4375 +0.75 0.4375 0.4688 +0.75 0.4375 0.5 +0.75 0.4375 0.5312 +0.75 0.4375 0.5625 +0.75 0.4375 0.5938 +0.75 0.4375 0.625 +0.75 0.4375 0.6562 +0.75 0.4375 0.6875 +0.75 0.4375 0.7188 +0.75 0.4375 0.75 +0.75 0.4375 0.7812 +0.75 0.4375 0.8125 +0.75 0.4375 0.8438 +0.75 0.4375 0.875 +0.75 0.4375 0.9062 +0.75 0.4375 0.9375 +0.75 0.4375 0.9688 +0.75 0.4375 1 +0.75 0.4688 0 +0.75 0.4688 0.03125 +0.75 0.4688 0.0625 +0.75 0.4688 0.09375 +0.75 0.4688 0.125 +0.75 0.4688 0.1562 +0.75 0.4688 0.1875 +0.75 0.4688 0.2188 +0.75 0.4688 0.25 +0.75 0.4688 0.2812 +0.75 0.4688 0.3125 +0.75 0.4688 0.3438 +0.75 0.4688 0.375 +0.75 0.4688 0.4062 +0.75 0.4688 0.4375 +0.75 0.4688 0.4688 +0.75 0.4688 0.5 +0.75 0.4688 0.5312 +0.75 0.4688 0.5625 +0.75 0.4688 0.5938 +0.75 0.4688 0.625 +0.75 0.4688 0.6562 +0.75 0.4688 0.6875 +0.75 0.4688 0.7188 +0.75 0.4688 0.75 +0.75 0.4688 0.7812 +0.75 0.4688 0.8125 +0.75 0.4688 0.8438 +0.75 0.4688 0.875 +0.75 0.4688 0.9062 +0.75 0.4688 0.9375 +0.75 0.4688 0.9688 +0.75 0.4688 1 +0.75 0.5 0 +0.75 0.5 0.03125 +0.75 0.5 0.0625 +0.75 0.5 0.09375 +0.75 0.5 0.125 +0.75 0.5 0.1562 +0.75 0.5 0.1875 +0.75 0.5 0.2188 +0.75 0.5 0.25 +0.75 0.5 0.2812 +0.75 0.5 0.3125 +0.75 0.5 0.3438 +0.75 0.5 0.375 +0.75 0.5 0.4062 +0.75 0.5 0.4375 +0.75 0.5 0.4688 +0.75 0.5 0.5 +0.75 0.5 0.5312 +0.75 0.5 0.5625 +0.75 0.5 0.5938 +0.75 0.5 0.625 +0.75 0.5 0.6562 +0.75 0.5 0.6875 +0.75 0.5 0.7188 +0.75 0.5 0.75 +0.75 0.5 0.7812 +0.75 0.5 0.8125 +0.75 0.5 0.8438 +0.75 0.5 0.875 +0.75 0.5 0.9062 +0.75 0.5 0.9375 +0.75 0.5 0.9688 +0.75 0.5 1 +0.75 0.5312 0 +0.75 0.5312 0.03125 +0.75 0.5312 0.0625 +0.75 0.5312 0.09375 +0.75 0.5312 0.125 +0.75 0.5312 0.1562 +0.75 0.5312 0.1875 +0.75 0.5312 0.2188 +0.75 0.5312 0.25 +0.75 0.5312 0.2812 +0.75 0.5312 0.3125 +0.75 0.5312 0.3438 +0.75 0.5312 0.375 +0.75 0.5312 0.4062 +0.75 0.5312 0.4375 +0.75 0.5312 0.4688 +0.75 0.5312 0.5 +0.75 0.5312 0.5312 +0.75 0.5312 0.5625 +0.75 0.5312 0.5938 +0.75 0.5312 0.625 +0.75 0.5312 0.6562 +0.75 0.5312 0.6875 +0.75 0.5312 0.7188 +0.75 0.5312 0.75 +0.75 0.5312 0.7812 +0.75 0.5312 0.8125 +0.75 0.5312 0.8438 +0.75 0.5312 0.875 +0.75 0.5312 0.9062 +0.75 0.5312 0.9375 +0.75 0.5312 0.9688 +0.75 0.5312 1 +0.75 0.5625 0 +0.75 0.5625 0.03125 +0.75 0.5625 0.0625 +0.75 0.5625 0.09375 +0.75 0.5625 0.125 +0.75 0.5625 0.1562 +0.75 0.5625 0.1875 +0.75 0.5625 0.2188 +0.75 0.5625 0.25 +0.75 0.5625 0.2812 +0.75 0.5625 0.3125 +0.75 0.5625 0.3438 +0.75 0.5625 0.375 +0.75 0.5625 0.4062 +0.75 0.5625 0.4375 +0.75 0.5625 0.4688 +0.75 0.5625 0.5 +0.75 0.5625 0.5312 +0.75 0.5625 0.5625 +0.75 0.5625 0.5938 +0.75 0.5625 0.625 +0.75 0.5625 0.6562 +0.75 0.5625 0.6875 +0.75 0.5625 0.7188 +0.75 0.5625 0.75 +0.75 0.5625 0.7812 +0.75 0.5625 0.8125 +0.75 0.5625 0.8438 +0.75 0.5625 0.875 +0.75 0.5625 0.9062 +0.75 0.5625 0.9375 +0.75 0.5625 0.9688 +0.75 0.5625 1 +0.75 0.5938 0 +0.75 0.5938 0.03125 +0.75 0.5938 0.0625 +0.75 0.5938 0.09375 +0.75 0.5938 0.125 +0.75 0.5938 0.1562 +0.75 0.5938 0.1875 +0.75 0.5938 0.2188 +0.75 0.5938 0.25 +0.75 0.5938 0.2812 +0.75 0.5938 0.3125 +0.75 0.5938 0.3438 +0.75 0.5938 0.375 +0.75 0.5938 0.4062 +0.75 0.5938 0.4375 +0.75 0.5938 0.4688 +0.75 0.5938 0.5 +0.75 0.5938 0.5312 +0.75 0.5938 0.5625 +0.75 0.5938 0.5938 +0.75 0.5938 0.625 +0.75 0.5938 0.6562 +0.75 0.5938 0.6875 +0.75 0.5938 0.7188 +0.75 0.5938 0.75 +0.75 0.5938 0.7812 +0.75 0.5938 0.8125 +0.75 0.5938 0.8438 +0.75 0.5938 0.875 +0.75 0.5938 0.9062 +0.75 0.5938 0.9375 +0.75 0.5938 0.9688 +0.75 0.5938 1 +0.75 0.625 0 +0.75 0.625 0.03125 +0.75 0.625 0.0625 +0.75 0.625 0.09375 +0.75 0.625 0.125 +0.75 0.625 0.1562 +0.75 0.625 0.1875 +0.75 0.625 0.2188 +0.75 0.625 0.25 +0.75 0.625 0.2812 +0.75 0.625 0.3125 +0.75 0.625 0.3438 +0.75 0.625 0.375 +0.75 0.625 0.4062 +0.75 0.625 0.4375 +0.75 0.625 0.4688 +0.75 0.625 0.5 +0.75 0.625 0.5312 +0.75 0.625 0.5625 +0.75 0.625 0.5938 +0.75 0.625 0.625 +0.75 0.625 0.6562 +0.75 0.625 0.6875 +0.75 0.625 0.7188 +0.75 0.625 0.75 +0.75 0.625 0.7812 +0.75 0.625 0.8125 +0.75 0.625 0.8438 +0.75 0.625 0.875 +0.75 0.625 0.9062 +0.75 0.625 0.9375 +0.75 0.625 0.9688 +0.75 0.625 1 +0.75 0.6562 0 +0.75 0.6562 0.03125 +0.75 0.6562 0.0625 +0.75 0.6562 0.09375 +0.75 0.6562 0.125 +0.75 0.6562 0.1562 +0.75 0.6562 0.1875 +0.75 0.6562 0.2188 +0.75 0.6562 0.25 +0.75 0.6562 0.2812 +0.75 0.6562 0.3125 +0.75 0.6562 0.3438 +0.75 0.6562 0.375 +0.75 0.6562 0.4062 +0.75 0.6562 0.4375 +0.75 0.6562 0.4688 +0.75 0.6562 0.5 +0.75 0.6562 0.5312 +0.75 0.6562 0.5625 +0.75 0.6562 0.5938 +0.75 0.6562 0.625 +0.75 0.6562 0.6562 +0.75 0.6562 0.6875 +0.75 0.6562 0.7188 +0.75 0.6562 0.75 +0.75 0.6562 0.7812 +0.75 0.6562 0.8125 +0.75 0.6562 0.8438 +0.75 0.6562 0.875 +0.75 0.6562 0.9062 +0.75 0.6562 0.9375 +0.75 0.6562 0.9688 +0.75 0.6562 1 +0.75 0.6875 0 +0.75 0.6875 0.03125 +0.75 0.6875 0.0625 +0.75 0.6875 0.09375 +0.75 0.6875 0.125 +0.75 0.6875 0.1562 +0.75 0.6875 0.1875 +0.75 0.6875 0.2188 +0.75 0.6875 0.25 +0.75 0.6875 0.2812 +0.75 0.6875 0.3125 +0.75 0.6875 0.3438 +0.75 0.6875 0.375 +0.75 0.6875 0.4062 +0.75 0.6875 0.4375 +0.75 0.6875 0.4688 +0.75 0.6875 0.5 +0.75 0.6875 0.5312 +0.75 0.6875 0.5625 +0.75 0.6875 0.5938 +0.75 0.6875 0.625 +0.75 0.6875 0.6562 +0.75 0.6875 0.6875 +0.75 0.6875 0.7188 +0.75 0.6875 0.75 +0.75 0.6875 0.7812 +0.75 0.6875 0.8125 +0.75 0.6875 0.8438 +0.75 0.6875 0.875 +0.75 0.6875 0.9062 +0.75 0.6875 0.9375 +0.75 0.6875 0.9688 +0.75 0.6875 1 +0.75 0.7188 0 +0.75 0.7188 0.03125 +0.75 0.7188 0.0625 +0.75 0.7188 0.09375 +0.75 0.7188 0.125 +0.75 0.7188 0.1562 +0.75 0.7188 0.1875 +0.75 0.7188 0.2188 +0.75 0.7188 0.25 +0.75 0.7188 0.2812 +0.75 0.7188 0.3125 +0.75 0.7188 0.3438 +0.75 0.7188 0.375 +0.75 0.7188 0.4062 +0.75 0.7188 0.4375 +0.75 0.7188 0.4688 +0.75 0.7188 0.5 +0.75 0.7188 0.5312 +0.75 0.7188 0.5625 +0.75 0.7188 0.5938 +0.75 0.7188 0.625 +0.75 0.7188 0.6562 +0.75 0.7188 0.6875 +0.75 0.7188 0.7188 +0.75 0.7188 0.75 +0.75 0.7188 0.7812 +0.75 0.7188 0.8125 +0.75 0.7188 0.8438 +0.75 0.7188 0.875 +0.75 0.7188 0.9062 +0.75 0.7188 0.9375 +0.75 0.7188 0.9688 +0.75 0.7188 1 +0.75 0.75 0 +0.75 0.75 0.03125 +0.75 0.75 0.0625 +0.75 0.75 0.09375 +0.75 0.75 0.125 +0.75 0.75 0.1562 +0.75 0.75 0.1875 +0.75 0.75 0.2188 +0.75 0.75 0.25 +0.75 0.75 0.2812 +0.75 0.75 0.3125 +0.75 0.75 0.3438 +0.75 0.75 0.375 +0.75 0.75 0.4062 +0.75 0.75 0.4375 +0.75 0.75 0.4688 +0.75 0.75 0.5 +0.75 0.75 0.5312 +0.75 0.75 0.5625 +0.75 0.75 0.5938 +0.75 0.75 0.625 +0.75 0.75 0.6562 +0.75 0.75 0.6875 +0.75 0.75 0.7188 +0.75 0.75 0.75 +0.75 0.75 0.7812 +0.75 0.75 0.8125 +0.75 0.75 0.8438 +0.75 0.75 0.875 +0.75 0.75 0.9062 +0.75 0.75 0.9375 +0.75 0.75 0.9688 +0.75 0.75 1 +0.75 0.7812 0 +0.75 0.7812 0.03125 +0.75 0.7812 0.0625 +0.75 0.7812 0.09375 +0.75 0.7812 0.125 +0.75 0.7812 0.1562 +0.75 0.7812 0.1875 +0.75 0.7812 0.2188 +0.75 0.7812 0.25 +0.75 0.7812 0.2812 +0.75 0.7812 0.3125 +0.75 0.7812 0.3438 +0.75 0.7812 0.375 +0.75 0.7812 0.4062 +0.75 0.7812 0.4375 +0.75 0.7812 0.4688 +0.75 0.7812 0.5 +0.75 0.7812 0.5312 +0.75 0.7812 0.5625 +0.75 0.7812 0.5938 +0.75 0.7812 0.625 +0.75 0.7812 0.6562 +0.75 0.7812 0.6875 +0.75 0.7812 0.7188 +0.75 0.7812 0.75 +0.75 0.7812 0.7812 +0.75 0.7812 0.8125 +0.75 0.7812 0.8438 +0.75 0.7812 0.875 +0.75 0.7812 0.9062 +0.75 0.7812 0.9375 +0.75 0.7812 0.9688 +0.75 0.7812 1 +0.75 0.8125 0 +0.75 0.8125 0.03125 +0.75 0.8125 0.0625 +0.75 0.8125 0.09375 +0.75 0.8125 0.125 +0.75 0.8125 0.1562 +0.75 0.8125 0.1875 +0.75 0.8125 0.2188 +0.75 0.8125 0.25 +0.75 0.8125 0.2812 +0.75 0.8125 0.3125 +0.75 0.8125 0.3438 +0.75 0.8125 0.375 +0.75 0.8125 0.4062 +0.75 0.8125 0.4375 +0.75 0.8125 0.4688 +0.75 0.8125 0.5 +0.75 0.8125 0.5312 +0.75 0.8125 0.5625 +0.75 0.8125 0.5938 +0.75 0.8125 0.625 +0.75 0.8125 0.6562 +0.75 0.8125 0.6875 +0.75 0.8125 0.7188 +0.75 0.8125 0.75 +0.75 0.8125 0.7812 +0.75 0.8125 0.8125 +0.75 0.8125 0.8438 +0.75 0.8125 0.875 +0.75 0.8125 0.9062 +0.75 0.8125 0.9375 +0.75 0.8125 0.9688 +0.75 0.8125 1 +0.75 0.8438 0 +0.75 0.8438 0.03125 +0.75 0.8438 0.0625 +0.75 0.8438 0.09375 +0.75 0.8438 0.125 +0.75 0.8438 0.1562 +0.75 0.8438 0.1875 +0.75 0.8438 0.2188 +0.75 0.8438 0.25 +0.75 0.8438 0.2812 +0.75 0.8438 0.3125 +0.75 0.8438 0.3438 +0.75 0.8438 0.375 +0.75 0.8438 0.4062 +0.75 0.8438 0.4375 +0.75 0.8438 0.4688 +0.75 0.8438 0.5 +0.75 0.8438 0.5312 +0.75 0.8438 0.5625 +0.75 0.8438 0.5938 +0.75 0.8438 0.625 +0.75 0.8438 0.6562 +0.75 0.8438 0.6875 +0.75 0.8438 0.7188 +0.75 0.8438 0.75 +0.75 0.8438 0.7812 +0.75 0.8438 0.8125 +0.75 0.8438 0.8438 +0.75 0.8438 0.875 +0.75 0.8438 0.9062 +0.75 0.8438 0.9375 +0.75 0.8438 0.9688 +0.75 0.8438 1 +0.75 0.875 0 +0.75 0.875 0.03125 +0.75 0.875 0.0625 +0.75 0.875 0.09375 +0.75 0.875 0.125 +0.75 0.875 0.1562 +0.75 0.875 0.1875 +0.75 0.875 0.2188 +0.75 0.875 0.25 +0.75 0.875 0.2812 +0.75 0.875 0.3125 +0.75 0.875 0.3438 +0.75 0.875 0.375 +0.75 0.875 0.4062 +0.75 0.875 0.4375 +0.75 0.875 0.4688 +0.75 0.875 0.5 +0.75 0.875 0.5312 +0.75 0.875 0.5625 +0.75 0.875 0.5938 +0.75 0.875 0.625 +0.75 0.875 0.6562 +0.75 0.875 0.6875 +0.75 0.875 0.7188 +0.75 0.875 0.75 +0.75 0.875 0.7812 +0.75 0.875 0.8125 +0.75 0.875 0.8438 +0.75 0.875 0.875 +0.75 0.875 0.9062 +0.75 0.875 0.9375 +0.75 0.875 0.9688 +0.75 0.875 1 +0.75 0.9062 0 +0.75 0.9062 0.03125 +0.75 0.9062 0.0625 +0.75 0.9062 0.09375 +0.75 0.9062 0.125 +0.75 0.9062 0.1562 +0.75 0.9062 0.1875 +0.75 0.9062 0.2188 +0.75 0.9062 0.25 +0.75 0.9062 0.2812 +0.75 0.9062 0.3125 +0.75 0.9062 0.3438 +0.75 0.9062 0.375 +0.75 0.9062 0.4062 +0.75 0.9062 0.4375 +0.75 0.9062 0.4688 +0.75 0.9062 0.5 +0.75 0.9062 0.5312 +0.75 0.9062 0.5625 +0.75 0.9062 0.5938 +0.75 0.9062 0.625 +0.75 0.9062 0.6562 +0.75 0.9062 0.6875 +0.75 0.9062 0.7188 +0.75 0.9062 0.75 +0.75 0.9062 0.7812 +0.75 0.9062 0.8125 +0.75 0.9062 0.8438 +0.75 0.9062 0.875 +0.75 0.9062 0.9062 +0.75 0.9062 0.9375 +0.75 0.9062 0.9688 +0.75 0.9062 1 +0.75 0.9375 0 +0.75 0.9375 0.03125 +0.75 0.9375 0.0625 +0.75 0.9375 0.09375 +0.75 0.9375 0.125 +0.75 0.9375 0.1562 +0.75 0.9375 0.1875 +0.75 0.9375 0.2188 +0.75 0.9375 0.25 +0.75 0.9375 0.2812 +0.75 0.9375 0.3125 +0.75 0.9375 0.3438 +0.75 0.9375 0.375 +0.75 0.9375 0.4062 +0.75 0.9375 0.4375 +0.75 0.9375 0.4688 +0.75 0.9375 0.5 +0.75 0.9375 0.5312 +0.75 0.9375 0.5625 +0.75 0.9375 0.5938 +0.75 0.9375 0.625 +0.75 0.9375 0.6562 +0.75 0.9375 0.6875 +0.75 0.9375 0.7188 +0.75 0.9375 0.75 +0.75 0.9375 0.7812 +0.75 0.9375 0.8125 +0.75 0.9375 0.8438 +0.75 0.9375 0.875 +0.75 0.9375 0.9062 +0.75 0.9375 0.9375 +0.75 0.9375 0.9688 +0.75 0.9375 1 +0.75 0.9688 0 +0.75 0.9688 0.03125 +0.75 0.9688 0.0625 +0.75 0.9688 0.09375 +0.75 0.9688 0.125 +0.75 0.9688 0.1562 +0.75 0.9688 0.1875 +0.75 0.9688 0.2188 +0.75 0.9688 0.25 +0.75 0.9688 0.2812 +0.75 0.9688 0.3125 +0.75 0.9688 0.3438 +0.75 0.9688 0.375 +0.75 0.9688 0.4062 +0.75 0.9688 0.4375 +0.75 0.9688 0.4688 +0.75 0.9688 0.5 +0.75 0.9688 0.5312 +0.75 0.9688 0.5625 +0.75 0.9688 0.5938 +0.75 0.9688 0.625 +0.75 0.9688 0.6562 +0.75 0.9688 0.6875 +0.75 0.9688 0.7188 +0.75 0.9688 0.75 +0.75 0.9688 0.7812 +0.75 0.9688 0.8125 +0.75 0.9688 0.8438 +0.75 0.9688 0.875 +0.75 0.9688 0.9062 +0.75 0.9688 0.9375 +0.75 0.9688 0.9688 +0.75 0.9688 1 +0.75 1 0 +0.75 1 0.03125 +0.75 1 0.0625 +0.75 1 0.09375 +0.75 1 0.125 +0.75 1 0.1562 +0.75 1 0.1875 +0.75 1 0.2188 +0.75 1 0.25 +0.75 1 0.2812 +0.75 1 0.3125 +0.75 1 0.3438 +0.75 1 0.375 +0.75 1 0.4062 +0.75 1 0.4375 +0.75 1 0.4688 +0.75 1 0.5 +0.75 1 0.5312 +0.75 1 0.5625 +0.75 1 0.5938 +0.75 1 0.625 +0.75 1 0.6562 +0.75 1 0.6875 +0.75 1 0.7188 +0.75 1 0.75 +0.75 1 0.7812 +0.75 1 0.8125 +0.75 1 0.8438 +0.75 1 0.875 +0.75 1 0.9062 +0.75 1 0.9375 +0.75 1 0.9688 +0.75 1 1 +0.7812 0 0 +0.7812 0 0.03125 +0.7812 0 0.0625 +0.7812 0 0.09375 +0.7812 0 0.125 +0.7812 0 0.1562 +0.7812 0 0.1875 +0.7812 0 0.2188 +0.7812 0 0.25 +0.7812 0 0.2812 +0.7812 0 0.3125 +0.7812 0 0.3438 +0.7812 0 0.375 +0.7812 0 0.4062 +0.7812 0 0.4375 +0.7812 0 0.4688 +0.7812 0 0.5 +0.7812 0 0.5312 +0.7812 0 0.5625 +0.7812 0 0.5938 +0.7812 0 0.625 +0.7812 0 0.6562 +0.7812 0 0.6875 +0.7812 0 0.7188 +0.7812 0 0.75 +0.7812 0 0.7812 +0.7812 0 0.8125 +0.7812 0 0.8438 +0.7812 0 0.875 +0.7812 0 0.9062 +0.7812 0 0.9375 +0.7812 0 0.9688 +0.7812 0 1 +0.7812 0.03125 0 +0.7812 0.03125 0.03125 +0.7812 0.03125 0.0625 +0.7812 0.03125 0.09375 +0.7812 0.03125 0.125 +0.7812 0.03125 0.1562 +0.7812 0.03125 0.1875 +0.7812 0.03125 0.2188 +0.7812 0.03125 0.25 +0.7812 0.03125 0.2812 +0.7812 0.03125 0.3125 +0.7812 0.03125 0.3438 +0.7812 0.03125 0.375 +0.7812 0.03125 0.4062 +0.7812 0.03125 0.4375 +0.7812 0.03125 0.4688 +0.7812 0.03125 0.5 +0.7812 0.03125 0.5312 +0.7812 0.03125 0.5625 +0.7812 0.03125 0.5938 +0.7812 0.03125 0.625 +0.7812 0.03125 0.6562 +0.7812 0.03125 0.6875 +0.7812 0.03125 0.7188 +0.7812 0.03125 0.75 +0.7812 0.03125 0.7812 +0.7812 0.03125 0.8125 +0.7812 0.03125 0.8438 +0.7812 0.03125 0.875 +0.7812 0.03125 0.9062 +0.7812 0.03125 0.9375 +0.7812 0.03125 0.9688 +0.7812 0.03125 1 +0.7812 0.0625 0 +0.7812 0.0625 0.03125 +0.7812 0.0625 0.0625 +0.7812 0.0625 0.09375 +0.7812 0.0625 0.125 +0.7812 0.0625 0.1562 +0.7812 0.0625 0.1875 +0.7812 0.0625 0.2188 +0.7812 0.0625 0.25 +0.7812 0.0625 0.2812 +0.7812 0.0625 0.3125 +0.7812 0.0625 0.3438 +0.7812 0.0625 0.375 +0.7812 0.0625 0.4062 +0.7812 0.0625 0.4375 +0.7812 0.0625 0.4688 +0.7812 0.0625 0.5 +0.7812 0.0625 0.5312 +0.7812 0.0625 0.5625 +0.7812 0.0625 0.5938 +0.7812 0.0625 0.625 +0.7812 0.0625 0.6562 +0.7812 0.0625 0.6875 +0.7812 0.0625 0.7188 +0.7812 0.0625 0.75 +0.7812 0.0625 0.7812 +0.7812 0.0625 0.8125 +0.7812 0.0625 0.8438 +0.7812 0.0625 0.875 +0.7812 0.0625 0.9062 +0.7812 0.0625 0.9375 +0.7812 0.0625 0.9688 +0.7812 0.0625 1 +0.7812 0.09375 0 +0.7812 0.09375 0.03125 +0.7812 0.09375 0.0625 +0.7812 0.09375 0.09375 +0.7812 0.09375 0.125 +0.7812 0.09375 0.1562 +0.7812 0.09375 0.1875 +0.7812 0.09375 0.2188 +0.7812 0.09375 0.25 +0.7812 0.09375 0.2812 +0.7812 0.09375 0.3125 +0.7812 0.09375 0.3438 +0.7812 0.09375 0.375 +0.7812 0.09375 0.4062 +0.7812 0.09375 0.4375 +0.7812 0.09375 0.4688 +0.7812 0.09375 0.5 +0.7812 0.09375 0.5312 +0.7812 0.09375 0.5625 +0.7812 0.09375 0.5938 +0.7812 0.09375 0.625 +0.7812 0.09375 0.6562 +0.7812 0.09375 0.6875 +0.7812 0.09375 0.7188 +0.7812 0.09375 0.75 +0.7812 0.09375 0.7812 +0.7812 0.09375 0.8125 +0.7812 0.09375 0.8438 +0.7812 0.09375 0.875 +0.7812 0.09375 0.9062 +0.7812 0.09375 0.9375 +0.7812 0.09375 0.9688 +0.7812 0.09375 1 +0.7812 0.125 0 +0.7812 0.125 0.03125 +0.7812 0.125 0.0625 +0.7812 0.125 0.09375 +0.7812 0.125 0.125 +0.7812 0.125 0.1562 +0.7812 0.125 0.1875 +0.7812 0.125 0.2188 +0.7812 0.125 0.25 +0.7812 0.125 0.2812 +0.7812 0.125 0.3125 +0.7812 0.125 0.3438 +0.7812 0.125 0.375 +0.7812 0.125 0.4062 +0.7812 0.125 0.4375 +0.7812 0.125 0.4688 +0.7812 0.125 0.5 +0.7812 0.125 0.5312 +0.7812 0.125 0.5625 +0.7812 0.125 0.5938 +0.7812 0.125 0.625 +0.7812 0.125 0.6562 +0.7812 0.125 0.6875 +0.7812 0.125 0.7188 +0.7812 0.125 0.75 +0.7812 0.125 0.7812 +0.7812 0.125 0.8125 +0.7812 0.125 0.8438 +0.7812 0.125 0.875 +0.7812 0.125 0.9062 +0.7812 0.125 0.9375 +0.7812 0.125 0.9688 +0.7812 0.125 1 +0.7812 0.1562 0 +0.7812 0.1562 0.03125 +0.7812 0.1562 0.0625 +0.7812 0.1562 0.09375 +0.7812 0.1562 0.125 +0.7812 0.1562 0.1562 +0.7812 0.1562 0.1875 +0.7812 0.1562 0.2188 +0.7812 0.1562 0.25 +0.7812 0.1562 0.2812 +0.7812 0.1562 0.3125 +0.7812 0.1562 0.3438 +0.7812 0.1562 0.375 +0.7812 0.1562 0.4062 +0.7812 0.1562 0.4375 +0.7812 0.1562 0.4688 +0.7812 0.1562 0.5 +0.7812 0.1562 0.5312 +0.7812 0.1562 0.5625 +0.7812 0.1562 0.5938 +0.7812 0.1562 0.625 +0.7812 0.1562 0.6562 +0.7812 0.1562 0.6875 +0.7812 0.1562 0.7188 +0.7812 0.1562 0.75 +0.7812 0.1562 0.7812 +0.7812 0.1562 0.8125 +0.7812 0.1562 0.8438 +0.7812 0.1562 0.875 +0.7812 0.1562 0.9062 +0.7812 0.1562 0.9375 +0.7812 0.1562 0.9688 +0.7812 0.1562 1 +0.7812 0.1875 0 +0.7812 0.1875 0.03125 +0.7812 0.1875 0.0625 +0.7812 0.1875 0.09375 +0.7812 0.1875 0.125 +0.7812 0.1875 0.1562 +0.7812 0.1875 0.1875 +0.7812 0.1875 0.2188 +0.7812 0.1875 0.25 +0.7812 0.1875 0.2812 +0.7812 0.1875 0.3125 +0.7812 0.1875 0.3438 +0.7812 0.1875 0.375 +0.7812 0.1875 0.4062 +0.7812 0.1875 0.4375 +0.7812 0.1875 0.4688 +0.7812 0.1875 0.5 +0.7812 0.1875 0.5312 +0.7812 0.1875 0.5625 +0.7812 0.1875 0.5938 +0.7812 0.1875 0.625 +0.7812 0.1875 0.6562 +0.7812 0.1875 0.6875 +0.7812 0.1875 0.7188 +0.7812 0.1875 0.75 +0.7812 0.1875 0.7812 +0.7812 0.1875 0.8125 +0.7812 0.1875 0.8438 +0.7812 0.1875 0.875 +0.7812 0.1875 0.9062 +0.7812 0.1875 0.9375 +0.7812 0.1875 0.9688 +0.7812 0.1875 1 +0.7812 0.2188 0 +0.7812 0.2188 0.03125 +0.7812 0.2188 0.0625 +0.7812 0.2188 0.09375 +0.7812 0.2188 0.125 +0.7812 0.2188 0.1562 +0.7812 0.2188 0.1875 +0.7812 0.2188 0.2188 +0.7812 0.2188 0.25 +0.7812 0.2188 0.2812 +0.7812 0.2188 0.3125 +0.7812 0.2188 0.3438 +0.7812 0.2188 0.375 +0.7812 0.2188 0.4062 +0.7812 0.2188 0.4375 +0.7812 0.2188 0.4688 +0.7812 0.2188 0.5 +0.7812 0.2188 0.5312 +0.7812 0.2188 0.5625 +0.7812 0.2188 0.5938 +0.7812 0.2188 0.625 +0.7812 0.2188 0.6562 +0.7812 0.2188 0.6875 +0.7812 0.2188 0.7188 +0.7812 0.2188 0.75 +0.7812 0.2188 0.7812 +0.7812 0.2188 0.8125 +0.7812 0.2188 0.8438 +0.7812 0.2188 0.875 +0.7812 0.2188 0.9062 +0.7812 0.2188 0.9375 +0.7812 0.2188 0.9688 +0.7812 0.2188 1 +0.7812 0.25 0 +0.7812 0.25 0.03125 +0.7812 0.25 0.0625 +0.7812 0.25 0.09375 +0.7812 0.25 0.125 +0.7812 0.25 0.1562 +0.7812 0.25 0.1875 +0.7812 0.25 0.2188 +0.7812 0.25 0.25 +0.7812 0.25 0.2812 +0.7812 0.25 0.3125 +0.7812 0.25 0.3438 +0.7812 0.25 0.375 +0.7812 0.25 0.4062 +0.7812 0.25 0.4375 +0.7812 0.25 0.4688 +0.7812 0.25 0.5 +0.7812 0.25 0.5312 +0.7812 0.25 0.5625 +0.7812 0.25 0.5938 +0.7812 0.25 0.625 +0.7812 0.25 0.6562 +0.7812 0.25 0.6875 +0.7812 0.25 0.7188 +0.7812 0.25 0.75 +0.7812 0.25 0.7812 +0.7812 0.25 0.8125 +0.7812 0.25 0.8438 +0.7812 0.25 0.875 +0.7812 0.25 0.9062 +0.7812 0.25 0.9375 +0.7812 0.25 0.9688 +0.7812 0.25 1 +0.7812 0.2812 0 +0.7812 0.2812 0.03125 +0.7812 0.2812 0.0625 +0.7812 0.2812 0.09375 +0.7812 0.2812 0.125 +0.7812 0.2812 0.1562 +0.7812 0.2812 0.1875 +0.7812 0.2812 0.2188 +0.7812 0.2812 0.25 +0.7812 0.2812 0.2812 +0.7812 0.2812 0.3125 +0.7812 0.2812 0.3438 +0.7812 0.2812 0.375 +0.7812 0.2812 0.4062 +0.7812 0.2812 0.4375 +0.7812 0.2812 0.4688 +0.7812 0.2812 0.5 +0.7812 0.2812 0.5312 +0.7812 0.2812 0.5625 +0.7812 0.2812 0.5938 +0.7812 0.2812 0.625 +0.7812 0.2812 0.6562 +0.7812 0.2812 0.6875 +0.7812 0.2812 0.7188 +0.7812 0.2812 0.75 +0.7812 0.2812 0.7812 +0.7812 0.2812 0.8125 +0.7812 0.2812 0.8438 +0.7812 0.2812 0.875 +0.7812 0.2812 0.9062 +0.7812 0.2812 0.9375 +0.7812 0.2812 0.9688 +0.7812 0.2812 1 +0.7812 0.3125 0 +0.7812 0.3125 0.03125 +0.7812 0.3125 0.0625 +0.7812 0.3125 0.09375 +0.7812 0.3125 0.125 +0.7812 0.3125 0.1562 +0.7812 0.3125 0.1875 +0.7812 0.3125 0.2188 +0.7812 0.3125 0.25 +0.7812 0.3125 0.2812 +0.7812 0.3125 0.3125 +0.7812 0.3125 0.3438 +0.7812 0.3125 0.375 +0.7812 0.3125 0.4062 +0.7812 0.3125 0.4375 +0.7812 0.3125 0.4688 +0.7812 0.3125 0.5 +0.7812 0.3125 0.5312 +0.7812 0.3125 0.5625 +0.7812 0.3125 0.5938 +0.7812 0.3125 0.625 +0.7812 0.3125 0.6562 +0.7812 0.3125 0.6875 +0.7812 0.3125 0.7188 +0.7812 0.3125 0.75 +0.7812 0.3125 0.7812 +0.7812 0.3125 0.8125 +0.7812 0.3125 0.8438 +0.7812 0.3125 0.875 +0.7812 0.3125 0.9062 +0.7812 0.3125 0.9375 +0.7812 0.3125 0.9688 +0.7812 0.3125 1 +0.7812 0.3438 0 +0.7812 0.3438 0.03125 +0.7812 0.3438 0.0625 +0.7812 0.3438 0.09375 +0.7812 0.3438 0.125 +0.7812 0.3438 0.1562 +0.7812 0.3438 0.1875 +0.7812 0.3438 0.2188 +0.7812 0.3438 0.25 +0.7812 0.3438 0.2812 +0.7812 0.3438 0.3125 +0.7812 0.3438 0.3438 +0.7812 0.3438 0.375 +0.7812 0.3438 0.4062 +0.7812 0.3438 0.4375 +0.7812 0.3438 0.4688 +0.7812 0.3438 0.5 +0.7812 0.3438 0.5312 +0.7812 0.3438 0.5625 +0.7812 0.3438 0.5938 +0.7812 0.3438 0.625 +0.7812 0.3438 0.6562 +0.7812 0.3438 0.6875 +0.7812 0.3438 0.7188 +0.7812 0.3438 0.75 +0.7812 0.3438 0.7812 +0.7812 0.3438 0.8125 +0.7812 0.3438 0.8438 +0.7812 0.3438 0.875 +0.7812 0.3438 0.9062 +0.7812 0.3438 0.9375 +0.7812 0.3438 0.9688 +0.7812 0.3438 1 +0.7812 0.375 0 +0.7812 0.375 0.03125 +0.7812 0.375 0.0625 +0.7812 0.375 0.09375 +0.7812 0.375 0.125 +0.7812 0.375 0.1562 +0.7812 0.375 0.1875 +0.7812 0.375 0.2188 +0.7812 0.375 0.25 +0.7812 0.375 0.2812 +0.7812 0.375 0.3125 +0.7812 0.375 0.3438 +0.7812 0.375 0.375 +0.7812 0.375 0.4062 +0.7812 0.375 0.4375 +0.7812 0.375 0.4688 +0.7812 0.375 0.5 +0.7812 0.375 0.5312 +0.7812 0.375 0.5625 +0.7812 0.375 0.5938 +0.7812 0.375 0.625 +0.7812 0.375 0.6562 +0.7812 0.375 0.6875 +0.7812 0.375 0.7188 +0.7812 0.375 0.75 +0.7812 0.375 0.7812 +0.7812 0.375 0.8125 +0.7812 0.375 0.8438 +0.7812 0.375 0.875 +0.7812 0.375 0.9062 +0.7812 0.375 0.9375 +0.7812 0.375 0.9688 +0.7812 0.375 1 +0.7812 0.4062 0 +0.7812 0.4062 0.03125 +0.7812 0.4062 0.0625 +0.7812 0.4062 0.09375 +0.7812 0.4062 0.125 +0.7812 0.4062 0.1562 +0.7812 0.4062 0.1875 +0.7812 0.4062 0.2188 +0.7812 0.4062 0.25 +0.7812 0.4062 0.2812 +0.7812 0.4062 0.3125 +0.7812 0.4062 0.3438 +0.7812 0.4062 0.375 +0.7812 0.4062 0.4062 +0.7812 0.4062 0.4375 +0.7812 0.4062 0.4688 +0.7812 0.4062 0.5 +0.7812 0.4062 0.5312 +0.7812 0.4062 0.5625 +0.7812 0.4062 0.5938 +0.7812 0.4062 0.625 +0.7812 0.4062 0.6562 +0.7812 0.4062 0.6875 +0.7812 0.4062 0.7188 +0.7812 0.4062 0.75 +0.7812 0.4062 0.7812 +0.7812 0.4062 0.8125 +0.7812 0.4062 0.8438 +0.7812 0.4062 0.875 +0.7812 0.4062 0.9062 +0.7812 0.4062 0.9375 +0.7812 0.4062 0.9688 +0.7812 0.4062 1 +0.7812 0.4375 0 +0.7812 0.4375 0.03125 +0.7812 0.4375 0.0625 +0.7812 0.4375 0.09375 +0.7812 0.4375 0.125 +0.7812 0.4375 0.1562 +0.7812 0.4375 0.1875 +0.7812 0.4375 0.2188 +0.7812 0.4375 0.25 +0.7812 0.4375 0.2812 +0.7812 0.4375 0.3125 +0.7812 0.4375 0.3438 +0.7812 0.4375 0.375 +0.7812 0.4375 0.4062 +0.7812 0.4375 0.4375 +0.7812 0.4375 0.4688 +0.7812 0.4375 0.5 +0.7812 0.4375 0.5312 +0.7812 0.4375 0.5625 +0.7812 0.4375 0.5938 +0.7812 0.4375 0.625 +0.7812 0.4375 0.6562 +0.7812 0.4375 0.6875 +0.7812 0.4375 0.7188 +0.7812 0.4375 0.75 +0.7812 0.4375 0.7812 +0.7812 0.4375 0.8125 +0.7812 0.4375 0.8438 +0.7812 0.4375 0.875 +0.7812 0.4375 0.9062 +0.7812 0.4375 0.9375 +0.7812 0.4375 0.9688 +0.7812 0.4375 1 +0.7812 0.4688 0 +0.7812 0.4688 0.03125 +0.7812 0.4688 0.0625 +0.7812 0.4688 0.09375 +0.7812 0.4688 0.125 +0.7812 0.4688 0.1562 +0.7812 0.4688 0.1875 +0.7812 0.4688 0.2188 +0.7812 0.4688 0.25 +0.7812 0.4688 0.2812 +0.7812 0.4688 0.3125 +0.7812 0.4688 0.3438 +0.7812 0.4688 0.375 +0.7812 0.4688 0.4062 +0.7812 0.4688 0.4375 +0.7812 0.4688 0.4688 +0.7812 0.4688 0.5 +0.7812 0.4688 0.5312 +0.7812 0.4688 0.5625 +0.7812 0.4688 0.5938 +0.7812 0.4688 0.625 +0.7812 0.4688 0.6562 +0.7812 0.4688 0.6875 +0.7812 0.4688 0.7188 +0.7812 0.4688 0.75 +0.7812 0.4688 0.7812 +0.7812 0.4688 0.8125 +0.7812 0.4688 0.8438 +0.7812 0.4688 0.875 +0.7812 0.4688 0.9062 +0.7812 0.4688 0.9375 +0.7812 0.4688 0.9688 +0.7812 0.4688 1 +0.7812 0.5 0 +0.7812 0.5 0.03125 +0.7812 0.5 0.0625 +0.7812 0.5 0.09375 +0.7812 0.5 0.125 +0.7812 0.5 0.1562 +0.7812 0.5 0.1875 +0.7812 0.5 0.2188 +0.7812 0.5 0.25 +0.7812 0.5 0.2812 +0.7812 0.5 0.3125 +0.7812 0.5 0.3438 +0.7812 0.5 0.375 +0.7812 0.5 0.4062 +0.7812 0.5 0.4375 +0.7812 0.5 0.4688 +0.7812 0.5 0.5 +0.7812 0.5 0.5312 +0.7812 0.5 0.5625 +0.7812 0.5 0.5938 +0.7812 0.5 0.625 +0.7812 0.5 0.6562 +0.7812 0.5 0.6875 +0.7812 0.5 0.7188 +0.7812 0.5 0.75 +0.7812 0.5 0.7812 +0.7812 0.5 0.8125 +0.7812 0.5 0.8438 +0.7812 0.5 0.875 +0.7812 0.5 0.9062 +0.7812 0.5 0.9375 +0.7812 0.5 0.9688 +0.7812 0.5 1 +0.7812 0.5312 0 +0.7812 0.5312 0.03125 +0.7812 0.5312 0.0625 +0.7812 0.5312 0.09375 +0.7812 0.5312 0.125 +0.7812 0.5312 0.1562 +0.7812 0.5312 0.1875 +0.7812 0.5312 0.2188 +0.7812 0.5312 0.25 +0.7812 0.5312 0.2812 +0.7812 0.5312 0.3125 +0.7812 0.5312 0.3438 +0.7812 0.5312 0.375 +0.7812 0.5312 0.4062 +0.7812 0.5312 0.4375 +0.7812 0.5312 0.4688 +0.7812 0.5312 0.5 +0.7812 0.5312 0.5312 +0.7812 0.5312 0.5625 +0.7812 0.5312 0.5938 +0.7812 0.5312 0.625 +0.7812 0.5312 0.6562 +0.7812 0.5312 0.6875 +0.7812 0.5312 0.7188 +0.7812 0.5312 0.75 +0.7812 0.5312 0.7812 +0.7812 0.5312 0.8125 +0.7812 0.5312 0.8438 +0.7812 0.5312 0.875 +0.7812 0.5312 0.9062 +0.7812 0.5312 0.9375 +0.7812 0.5312 0.9688 +0.7812 0.5312 1 +0.7812 0.5625 0 +0.7812 0.5625 0.03125 +0.7812 0.5625 0.0625 +0.7812 0.5625 0.09375 +0.7812 0.5625 0.125 +0.7812 0.5625 0.1562 +0.7812 0.5625 0.1875 +0.7812 0.5625 0.2188 +0.7812 0.5625 0.25 +0.7812 0.5625 0.2812 +0.7812 0.5625 0.3125 +0.7812 0.5625 0.3438 +0.7812 0.5625 0.375 +0.7812 0.5625 0.4062 +0.7812 0.5625 0.4375 +0.7812 0.5625 0.4688 +0.7812 0.5625 0.5 +0.7812 0.5625 0.5312 +0.7812 0.5625 0.5625 +0.7812 0.5625 0.5938 +0.7812 0.5625 0.625 +0.7812 0.5625 0.6562 +0.7812 0.5625 0.6875 +0.7812 0.5625 0.7188 +0.7812 0.5625 0.75 +0.7812 0.5625 0.7812 +0.7812 0.5625 0.8125 +0.7812 0.5625 0.8438 +0.7812 0.5625 0.875 +0.7812 0.5625 0.9062 +0.7812 0.5625 0.9375 +0.7812 0.5625 0.9688 +0.7812 0.5625 1 +0.7812 0.5938 0 +0.7812 0.5938 0.03125 +0.7812 0.5938 0.0625 +0.7812 0.5938 0.09375 +0.7812 0.5938 0.125 +0.7812 0.5938 0.1562 +0.7812 0.5938 0.1875 +0.7812 0.5938 0.2188 +0.7812 0.5938 0.25 +0.7812 0.5938 0.2812 +0.7812 0.5938 0.3125 +0.7812 0.5938 0.3438 +0.7812 0.5938 0.375 +0.7812 0.5938 0.4062 +0.7812 0.5938 0.4375 +0.7812 0.5938 0.4688 +0.7812 0.5938 0.5 +0.7812 0.5938 0.5312 +0.7812 0.5938 0.5625 +0.7812 0.5938 0.5938 +0.7812 0.5938 0.625 +0.7812 0.5938 0.6562 +0.7812 0.5938 0.6875 +0.7812 0.5938 0.7188 +0.7812 0.5938 0.75 +0.7812 0.5938 0.7812 +0.7812 0.5938 0.8125 +0.7812 0.5938 0.8438 +0.7812 0.5938 0.875 +0.7812 0.5938 0.9062 +0.7812 0.5938 0.9375 +0.7812 0.5938 0.9688 +0.7812 0.5938 1 +0.7812 0.625 0 +0.7812 0.625 0.03125 +0.7812 0.625 0.0625 +0.7812 0.625 0.09375 +0.7812 0.625 0.125 +0.7812 0.625 0.1562 +0.7812 0.625 0.1875 +0.7812 0.625 0.2188 +0.7812 0.625 0.25 +0.7812 0.625 0.2812 +0.7812 0.625 0.3125 +0.7812 0.625 0.3438 +0.7812 0.625 0.375 +0.7812 0.625 0.4062 +0.7812 0.625 0.4375 +0.7812 0.625 0.4688 +0.7812 0.625 0.5 +0.7812 0.625 0.5312 +0.7812 0.625 0.5625 +0.7812 0.625 0.5938 +0.7812 0.625 0.625 +0.7812 0.625 0.6562 +0.7812 0.625 0.6875 +0.7812 0.625 0.7188 +0.7812 0.625 0.75 +0.7812 0.625 0.7812 +0.7812 0.625 0.8125 +0.7812 0.625 0.8438 +0.7812 0.625 0.875 +0.7812 0.625 0.9062 +0.7812 0.625 0.9375 +0.7812 0.625 0.9688 +0.7812 0.625 1 +0.7812 0.6562 0 +0.7812 0.6562 0.03125 +0.7812 0.6562 0.0625 +0.7812 0.6562 0.09375 +0.7812 0.6562 0.125 +0.7812 0.6562 0.1562 +0.7812 0.6562 0.1875 +0.7812 0.6562 0.2188 +0.7812 0.6562 0.25 +0.7812 0.6562 0.2812 +0.7812 0.6562 0.3125 +0.7812 0.6562 0.3438 +0.7812 0.6562 0.375 +0.7812 0.6562 0.4062 +0.7812 0.6562 0.4375 +0.7812 0.6562 0.4688 +0.7812 0.6562 0.5 +0.7812 0.6562 0.5312 +0.7812 0.6562 0.5625 +0.7812 0.6562 0.5938 +0.7812 0.6562 0.625 +0.7812 0.6562 0.6562 +0.7812 0.6562 0.6875 +0.7812 0.6562 0.7188 +0.7812 0.6562 0.75 +0.7812 0.6562 0.7812 +0.7812 0.6562 0.8125 +0.7812 0.6562 0.8438 +0.7812 0.6562 0.875 +0.7812 0.6562 0.9062 +0.7812 0.6562 0.9375 +0.7812 0.6562 0.9688 +0.7812 0.6562 1 +0.7812 0.6875 0 +0.7812 0.6875 0.03125 +0.7812 0.6875 0.0625 +0.7812 0.6875 0.09375 +0.7812 0.6875 0.125 +0.7812 0.6875 0.1562 +0.7812 0.6875 0.1875 +0.7812 0.6875 0.2188 +0.7812 0.6875 0.25 +0.7812 0.6875 0.2812 +0.7812 0.6875 0.3125 +0.7812 0.6875 0.3438 +0.7812 0.6875 0.375 +0.7812 0.6875 0.4062 +0.7812 0.6875 0.4375 +0.7812 0.6875 0.4688 +0.7812 0.6875 0.5 +0.7812 0.6875 0.5312 +0.7812 0.6875 0.5625 +0.7812 0.6875 0.5938 +0.7812 0.6875 0.625 +0.7812 0.6875 0.6562 +0.7812 0.6875 0.6875 +0.7812 0.6875 0.7188 +0.7812 0.6875 0.75 +0.7812 0.6875 0.7812 +0.7812 0.6875 0.8125 +0.7812 0.6875 0.8438 +0.7812 0.6875 0.875 +0.7812 0.6875 0.9062 +0.7812 0.6875 0.9375 +0.7812 0.6875 0.9688 +0.7812 0.6875 1 +0.7812 0.7188 0 +0.7812 0.7188 0.03125 +0.7812 0.7188 0.0625 +0.7812 0.7188 0.09375 +0.7812 0.7188 0.125 +0.7812 0.7188 0.1562 +0.7812 0.7188 0.1875 +0.7812 0.7188 0.2188 +0.7812 0.7188 0.25 +0.7812 0.7188 0.2812 +0.7812 0.7188 0.3125 +0.7812 0.7188 0.3438 +0.7812 0.7188 0.375 +0.7812 0.7188 0.4062 +0.7812 0.7188 0.4375 +0.7812 0.7188 0.4688 +0.7812 0.7188 0.5 +0.7812 0.7188 0.5312 +0.7812 0.7188 0.5625 +0.7812 0.7188 0.5938 +0.7812 0.7188 0.625 +0.7812 0.7188 0.6562 +0.7812 0.7188 0.6875 +0.7812 0.7188 0.7188 +0.7812 0.7188 0.75 +0.7812 0.7188 0.7812 +0.7812 0.7188 0.8125 +0.7812 0.7188 0.8438 +0.7812 0.7188 0.875 +0.7812 0.7188 0.9062 +0.7812 0.7188 0.9375 +0.7812 0.7188 0.9688 +0.7812 0.7188 1 +0.7812 0.75 0 +0.7812 0.75 0.03125 +0.7812 0.75 0.0625 +0.7812 0.75 0.09375 +0.7812 0.75 0.125 +0.7812 0.75 0.1562 +0.7812 0.75 0.1875 +0.7812 0.75 0.2188 +0.7812 0.75 0.25 +0.7812 0.75 0.2812 +0.7812 0.75 0.3125 +0.7812 0.75 0.3438 +0.7812 0.75 0.375 +0.7812 0.75 0.4062 +0.7812 0.75 0.4375 +0.7812 0.75 0.4688 +0.7812 0.75 0.5 +0.7812 0.75 0.5312 +0.7812 0.75 0.5625 +0.7812 0.75 0.5938 +0.7812 0.75 0.625 +0.7812 0.75 0.6562 +0.7812 0.75 0.6875 +0.7812 0.75 0.7188 +0.7812 0.75 0.75 +0.7812 0.75 0.7812 +0.7812 0.75 0.8125 +0.7812 0.75 0.8438 +0.7812 0.75 0.875 +0.7812 0.75 0.9062 +0.7812 0.75 0.9375 +0.7812 0.75 0.9688 +0.7812 0.75 1 +0.7812 0.7812 0 +0.7812 0.7812 0.03125 +0.7812 0.7812 0.0625 +0.7812 0.7812 0.09375 +0.7812 0.7812 0.125 +0.7812 0.7812 0.1562 +0.7812 0.7812 0.1875 +0.7812 0.7812 0.2188 +0.7812 0.7812 0.25 +0.7812 0.7812 0.2812 +0.7812 0.7812 0.3125 +0.7812 0.7812 0.3438 +0.7812 0.7812 0.375 +0.7812 0.7812 0.4062 +0.7812 0.7812 0.4375 +0.7812 0.7812 0.4688 +0.7812 0.7812 0.5 +0.7812 0.7812 0.5312 +0.7812 0.7812 0.5625 +0.7812 0.7812 0.5938 +0.7812 0.7812 0.625 +0.7812 0.7812 0.6562 +0.7812 0.7812 0.6875 +0.7812 0.7812 0.7188 +0.7812 0.7812 0.75 +0.7812 0.7812 0.7812 +0.7812 0.7812 0.8125 +0.7812 0.7812 0.8438 +0.7812 0.7812 0.875 +0.7812 0.7812 0.9062 +0.7812 0.7812 0.9375 +0.7812 0.7812 0.9688 +0.7812 0.7812 1 +0.7812 0.8125 0 +0.7812 0.8125 0.03125 +0.7812 0.8125 0.0625 +0.7812 0.8125 0.09375 +0.7812 0.8125 0.125 +0.7812 0.8125 0.1562 +0.7812 0.8125 0.1875 +0.7812 0.8125 0.2188 +0.7812 0.8125 0.25 +0.7812 0.8125 0.2812 +0.7812 0.8125 0.3125 +0.7812 0.8125 0.3438 +0.7812 0.8125 0.375 +0.7812 0.8125 0.4062 +0.7812 0.8125 0.4375 +0.7812 0.8125 0.4688 +0.7812 0.8125 0.5 +0.7812 0.8125 0.5312 +0.7812 0.8125 0.5625 +0.7812 0.8125 0.5938 +0.7812 0.8125 0.625 +0.7812 0.8125 0.6562 +0.7812 0.8125 0.6875 +0.7812 0.8125 0.7188 +0.7812 0.8125 0.75 +0.7812 0.8125 0.7812 +0.7812 0.8125 0.8125 +0.7812 0.8125 0.8438 +0.7812 0.8125 0.875 +0.7812 0.8125 0.9062 +0.7812 0.8125 0.9375 +0.7812 0.8125 0.9688 +0.7812 0.8125 1 +0.7812 0.8438 0 +0.7812 0.8438 0.03125 +0.7812 0.8438 0.0625 +0.7812 0.8438 0.09375 +0.7812 0.8438 0.125 +0.7812 0.8438 0.1562 +0.7812 0.8438 0.1875 +0.7812 0.8438 0.2188 +0.7812 0.8438 0.25 +0.7812 0.8438 0.2812 +0.7812 0.8438 0.3125 +0.7812 0.8438 0.3438 +0.7812 0.8438 0.375 +0.7812 0.8438 0.4062 +0.7812 0.8438 0.4375 +0.7812 0.8438 0.4688 +0.7812 0.8438 0.5 +0.7812 0.8438 0.5312 +0.7812 0.8438 0.5625 +0.7812 0.8438 0.5938 +0.7812 0.8438 0.625 +0.7812 0.8438 0.6562 +0.7812 0.8438 0.6875 +0.7812 0.8438 0.7188 +0.7812 0.8438 0.75 +0.7812 0.8438 0.7812 +0.7812 0.8438 0.8125 +0.7812 0.8438 0.8438 +0.7812 0.8438 0.875 +0.7812 0.8438 0.9062 +0.7812 0.8438 0.9375 +0.7812 0.8438 0.9688 +0.7812 0.8438 1 +0.7812 0.875 0 +0.7812 0.875 0.03125 +0.7812 0.875 0.0625 +0.7812 0.875 0.09375 +0.7812 0.875 0.125 +0.7812 0.875 0.1562 +0.7812 0.875 0.1875 +0.7812 0.875 0.2188 +0.7812 0.875 0.25 +0.7812 0.875 0.2812 +0.7812 0.875 0.3125 +0.7812 0.875 0.3438 +0.7812 0.875 0.375 +0.7812 0.875 0.4062 +0.7812 0.875 0.4375 +0.7812 0.875 0.4688 +0.7812 0.875 0.5 +0.7812 0.875 0.5312 +0.7812 0.875 0.5625 +0.7812 0.875 0.5938 +0.7812 0.875 0.625 +0.7812 0.875 0.6562 +0.7812 0.875 0.6875 +0.7812 0.875 0.7188 +0.7812 0.875 0.75 +0.7812 0.875 0.7812 +0.7812 0.875 0.8125 +0.7812 0.875 0.8438 +0.7812 0.875 0.875 +0.7812 0.875 0.9062 +0.7812 0.875 0.9375 +0.7812 0.875 0.9688 +0.7812 0.875 1 +0.7812 0.9062 0 +0.7812 0.9062 0.03125 +0.7812 0.9062 0.0625 +0.7812 0.9062 0.09375 +0.7812 0.9062 0.125 +0.7812 0.9062 0.1562 +0.7812 0.9062 0.1875 +0.7812 0.9062 0.2188 +0.7812 0.9062 0.25 +0.7812 0.9062 0.2812 +0.7812 0.9062 0.3125 +0.7812 0.9062 0.3438 +0.7812 0.9062 0.375 +0.7812 0.9062 0.4062 +0.7812 0.9062 0.4375 +0.7812 0.9062 0.4688 +0.7812 0.9062 0.5 +0.7812 0.9062 0.5312 +0.7812 0.9062 0.5625 +0.7812 0.9062 0.5938 +0.7812 0.9062 0.625 +0.7812 0.9062 0.6562 +0.7812 0.9062 0.6875 +0.7812 0.9062 0.7188 +0.7812 0.9062 0.75 +0.7812 0.9062 0.7812 +0.7812 0.9062 0.8125 +0.7812 0.9062 0.8438 +0.7812 0.9062 0.875 +0.7812 0.9062 0.9062 +0.7812 0.9062 0.9375 +0.7812 0.9062 0.9688 +0.7812 0.9062 1 +0.7812 0.9375 0 +0.7812 0.9375 0.03125 +0.7812 0.9375 0.0625 +0.7812 0.9375 0.09375 +0.7812 0.9375 0.125 +0.7812 0.9375 0.1562 +0.7812 0.9375 0.1875 +0.7812 0.9375 0.2188 +0.7812 0.9375 0.25 +0.7812 0.9375 0.2812 +0.7812 0.9375 0.3125 +0.7812 0.9375 0.3438 +0.7812 0.9375 0.375 +0.7812 0.9375 0.4062 +0.7812 0.9375 0.4375 +0.7812 0.9375 0.4688 +0.7812 0.9375 0.5 +0.7812 0.9375 0.5312 +0.7812 0.9375 0.5625 +0.7812 0.9375 0.5938 +0.7812 0.9375 0.625 +0.7812 0.9375 0.6562 +0.7812 0.9375 0.6875 +0.7812 0.9375 0.7188 +0.7812 0.9375 0.75 +0.7812 0.9375 0.7812 +0.7812 0.9375 0.8125 +0.7812 0.9375 0.8438 +0.7812 0.9375 0.875 +0.7812 0.9375 0.9062 +0.7812 0.9375 0.9375 +0.7812 0.9375 0.9688 +0.7812 0.9375 1 +0.7812 0.9688 0 +0.7812 0.9688 0.03125 +0.7812 0.9688 0.0625 +0.7812 0.9688 0.09375 +0.7812 0.9688 0.125 +0.7812 0.9688 0.1562 +0.7812 0.9688 0.1875 +0.7812 0.9688 0.2188 +0.7812 0.9688 0.25 +0.7812 0.9688 0.2812 +0.7812 0.9688 0.3125 +0.7812 0.9688 0.3438 +0.7812 0.9688 0.375 +0.7812 0.9688 0.4062 +0.7812 0.9688 0.4375 +0.7812 0.9688 0.4688 +0.7812 0.9688 0.5 +0.7812 0.9688 0.5312 +0.7812 0.9688 0.5625 +0.7812 0.9688 0.5938 +0.7812 0.9688 0.625 +0.7812 0.9688 0.6562 +0.7812 0.9688 0.6875 +0.7812 0.9688 0.7188 +0.7812 0.9688 0.75 +0.7812 0.9688 0.7812 +0.7812 0.9688 0.8125 +0.7812 0.9688 0.8438 +0.7812 0.9688 0.875 +0.7812 0.9688 0.9062 +0.7812 0.9688 0.9375 +0.7812 0.9688 0.9688 +0.7812 0.9688 1 +0.7812 1 0 +0.7812 1 0.03125 +0.7812 1 0.0625 +0.7812 1 0.09375 +0.7812 1 0.125 +0.7812 1 0.1562 +0.7812 1 0.1875 +0.7812 1 0.2188 +0.7812 1 0.25 +0.7812 1 0.2812 +0.7812 1 0.3125 +0.7812 1 0.3438 +0.7812 1 0.375 +0.7812 1 0.4062 +0.7812 1 0.4375 +0.7812 1 0.4688 +0.7812 1 0.5 +0.7812 1 0.5312 +0.7812 1 0.5625 +0.7812 1 0.5938 +0.7812 1 0.625 +0.7812 1 0.6562 +0.7812 1 0.6875 +0.7812 1 0.7188 +0.7812 1 0.75 +0.7812 1 0.7812 +0.7812 1 0.8125 +0.7812 1 0.8438 +0.7812 1 0.875 +0.7812 1 0.9062 +0.7812 1 0.9375 +0.7812 1 0.9688 +0.7812 1 1 +0.8125 0 0 +0.8125 0 0.03125 +0.8125 0 0.0625 +0.8125 0 0.09375 +0.8125 0 0.125 +0.8125 0 0.1562 +0.8125 0 0.1875 +0.8125 0 0.2188 +0.8125 0 0.25 +0.8125 0 0.2812 +0.8125 0 0.3125 +0.8125 0 0.3438 +0.8125 0 0.375 +0.8125 0 0.4062 +0.8125 0 0.4375 +0.8125 0 0.4688 +0.8125 0 0.5 +0.8125 0 0.5312 +0.8125 0 0.5625 +0.8125 0 0.5938 +0.8125 0 0.625 +0.8125 0 0.6562 +0.8125 0 0.6875 +0.8125 0 0.7188 +0.8125 0 0.75 +0.8125 0 0.7812 +0.8125 0 0.8125 +0.8125 0 0.8438 +0.8125 0 0.875 +0.8125 0 0.9062 +0.8125 0 0.9375 +0.8125 0 0.9688 +0.8125 0 1 +0.8125 0.03125 0 +0.8125 0.03125 0.03125 +0.8125 0.03125 0.0625 +0.8125 0.03125 0.09375 +0.8125 0.03125 0.125 +0.8125 0.03125 0.1562 +0.8125 0.03125 0.1875 +0.8125 0.03125 0.2188 +0.8125 0.03125 0.25 +0.8125 0.03125 0.2812 +0.8125 0.03125 0.3125 +0.8125 0.03125 0.3438 +0.8125 0.03125 0.375 +0.8125 0.03125 0.4062 +0.8125 0.03125 0.4375 +0.8125 0.03125 0.4688 +0.8125 0.03125 0.5 +0.8125 0.03125 0.5312 +0.8125 0.03125 0.5625 +0.8125 0.03125 0.5938 +0.8125 0.03125 0.625 +0.8125 0.03125 0.6562 +0.8125 0.03125 0.6875 +0.8125 0.03125 0.7188 +0.8125 0.03125 0.75 +0.8125 0.03125 0.7812 +0.8125 0.03125 0.8125 +0.8125 0.03125 0.8438 +0.8125 0.03125 0.875 +0.8125 0.03125 0.9062 +0.8125 0.03125 0.9375 +0.8125 0.03125 0.9688 +0.8125 0.03125 1 +0.8125 0.0625 0 +0.8125 0.0625 0.03125 +0.8125 0.0625 0.0625 +0.8125 0.0625 0.09375 +0.8125 0.0625 0.125 +0.8125 0.0625 0.1562 +0.8125 0.0625 0.1875 +0.8125 0.0625 0.2188 +0.8125 0.0625 0.25 +0.8125 0.0625 0.2812 +0.8125 0.0625 0.3125 +0.8125 0.0625 0.3438 +0.8125 0.0625 0.375 +0.8125 0.0625 0.4062 +0.8125 0.0625 0.4375 +0.8125 0.0625 0.4688 +0.8125 0.0625 0.5 +0.8125 0.0625 0.5312 +0.8125 0.0625 0.5625 +0.8125 0.0625 0.5938 +0.8125 0.0625 0.625 +0.8125 0.0625 0.6562 +0.8125 0.0625 0.6875 +0.8125 0.0625 0.7188 +0.8125 0.0625 0.75 +0.8125 0.0625 0.7812 +0.8125 0.0625 0.8125 +0.8125 0.0625 0.8438 +0.8125 0.0625 0.875 +0.8125 0.0625 0.9062 +0.8125 0.0625 0.9375 +0.8125 0.0625 0.9688 +0.8125 0.0625 1 +0.8125 0.09375 0 +0.8125 0.09375 0.03125 +0.8125 0.09375 0.0625 +0.8125 0.09375 0.09375 +0.8125 0.09375 0.125 +0.8125 0.09375 0.1562 +0.8125 0.09375 0.1875 +0.8125 0.09375 0.2188 +0.8125 0.09375 0.25 +0.8125 0.09375 0.2812 +0.8125 0.09375 0.3125 +0.8125 0.09375 0.3438 +0.8125 0.09375 0.375 +0.8125 0.09375 0.4062 +0.8125 0.09375 0.4375 +0.8125 0.09375 0.4688 +0.8125 0.09375 0.5 +0.8125 0.09375 0.5312 +0.8125 0.09375 0.5625 +0.8125 0.09375 0.5938 +0.8125 0.09375 0.625 +0.8125 0.09375 0.6562 +0.8125 0.09375 0.6875 +0.8125 0.09375 0.7188 +0.8125 0.09375 0.75 +0.8125 0.09375 0.7812 +0.8125 0.09375 0.8125 +0.8125 0.09375 0.8438 +0.8125 0.09375 0.875 +0.8125 0.09375 0.9062 +0.8125 0.09375 0.9375 +0.8125 0.09375 0.9688 +0.8125 0.09375 1 +0.8125 0.125 0 +0.8125 0.125 0.03125 +0.8125 0.125 0.0625 +0.8125 0.125 0.09375 +0.8125 0.125 0.125 +0.8125 0.125 0.1562 +0.8125 0.125 0.1875 +0.8125 0.125 0.2188 +0.8125 0.125 0.25 +0.8125 0.125 0.2812 +0.8125 0.125 0.3125 +0.8125 0.125 0.3438 +0.8125 0.125 0.375 +0.8125 0.125 0.4062 +0.8125 0.125 0.4375 +0.8125 0.125 0.4688 +0.8125 0.125 0.5 +0.8125 0.125 0.5312 +0.8125 0.125 0.5625 +0.8125 0.125 0.5938 +0.8125 0.125 0.625 +0.8125 0.125 0.6562 +0.8125 0.125 0.6875 +0.8125 0.125 0.7188 +0.8125 0.125 0.75 +0.8125 0.125 0.7812 +0.8125 0.125 0.8125 +0.8125 0.125 0.8438 +0.8125 0.125 0.875 +0.8125 0.125 0.9062 +0.8125 0.125 0.9375 +0.8125 0.125 0.9688 +0.8125 0.125 1 +0.8125 0.1562 0 +0.8125 0.1562 0.03125 +0.8125 0.1562 0.0625 +0.8125 0.1562 0.09375 +0.8125 0.1562 0.125 +0.8125 0.1562 0.1562 +0.8125 0.1562 0.1875 +0.8125 0.1562 0.2188 +0.8125 0.1562 0.25 +0.8125 0.1562 0.2812 +0.8125 0.1562 0.3125 +0.8125 0.1562 0.3438 +0.8125 0.1562 0.375 +0.8125 0.1562 0.4062 +0.8125 0.1562 0.4375 +0.8125 0.1562 0.4688 +0.8125 0.1562 0.5 +0.8125 0.1562 0.5312 +0.8125 0.1562 0.5625 +0.8125 0.1562 0.5938 +0.8125 0.1562 0.625 +0.8125 0.1562 0.6562 +0.8125 0.1562 0.6875 +0.8125 0.1562 0.7188 +0.8125 0.1562 0.75 +0.8125 0.1562 0.7812 +0.8125 0.1562 0.8125 +0.8125 0.1562 0.8438 +0.8125 0.1562 0.875 +0.8125 0.1562 0.9062 +0.8125 0.1562 0.9375 +0.8125 0.1562 0.9688 +0.8125 0.1562 1 +0.8125 0.1875 0 +0.8125 0.1875 0.03125 +0.8125 0.1875 0.0625 +0.8125 0.1875 0.09375 +0.8125 0.1875 0.125 +0.8125 0.1875 0.1562 +0.8125 0.1875 0.1875 +0.8125 0.1875 0.2188 +0.8125 0.1875 0.25 +0.8125 0.1875 0.2812 +0.8125 0.1875 0.3125 +0.8125 0.1875 0.3438 +0.8125 0.1875 0.375 +0.8125 0.1875 0.4062 +0.8125 0.1875 0.4375 +0.8125 0.1875 0.4688 +0.8125 0.1875 0.5 +0.8125 0.1875 0.5312 +0.8125 0.1875 0.5625 +0.8125 0.1875 0.5938 +0.8125 0.1875 0.625 +0.8125 0.1875 0.6562 +0.8125 0.1875 0.6875 +0.8125 0.1875 0.7188 +0.8125 0.1875 0.75 +0.8125 0.1875 0.7812 +0.8125 0.1875 0.8125 +0.8125 0.1875 0.8438 +0.8125 0.1875 0.875 +0.8125 0.1875 0.9062 +0.8125 0.1875 0.9375 +0.8125 0.1875 0.9688 +0.8125 0.1875 1 +0.8125 0.2188 0 +0.8125 0.2188 0.03125 +0.8125 0.2188 0.0625 +0.8125 0.2188 0.09375 +0.8125 0.2188 0.125 +0.8125 0.2188 0.1562 +0.8125 0.2188 0.1875 +0.8125 0.2188 0.2188 +0.8125 0.2188 0.25 +0.8125 0.2188 0.2812 +0.8125 0.2188 0.3125 +0.8125 0.2188 0.3438 +0.8125 0.2188 0.375 +0.8125 0.2188 0.4062 +0.8125 0.2188 0.4375 +0.8125 0.2188 0.4688 +0.8125 0.2188 0.5 +0.8125 0.2188 0.5312 +0.8125 0.2188 0.5625 +0.8125 0.2188 0.5938 +0.8125 0.2188 0.625 +0.8125 0.2188 0.6562 +0.8125 0.2188 0.6875 +0.8125 0.2188 0.7188 +0.8125 0.2188 0.75 +0.8125 0.2188 0.7812 +0.8125 0.2188 0.8125 +0.8125 0.2188 0.8438 +0.8125 0.2188 0.875 +0.8125 0.2188 0.9062 +0.8125 0.2188 0.9375 +0.8125 0.2188 0.9688 +0.8125 0.2188 1 +0.8125 0.25 0 +0.8125 0.25 0.03125 +0.8125 0.25 0.0625 +0.8125 0.25 0.09375 +0.8125 0.25 0.125 +0.8125 0.25 0.1562 +0.8125 0.25 0.1875 +0.8125 0.25 0.2188 +0.8125 0.25 0.25 +0.8125 0.25 0.2812 +0.8125 0.25 0.3125 +0.8125 0.25 0.3438 +0.8125 0.25 0.375 +0.8125 0.25 0.4062 +0.8125 0.25 0.4375 +0.8125 0.25 0.4688 +0.8125 0.25 0.5 +0.8125 0.25 0.5312 +0.8125 0.25 0.5625 +0.8125 0.25 0.5938 +0.8125 0.25 0.625 +0.8125 0.25 0.6562 +0.8125 0.25 0.6875 +0.8125 0.25 0.7188 +0.8125 0.25 0.75 +0.8125 0.25 0.7812 +0.8125 0.25 0.8125 +0.8125 0.25 0.8438 +0.8125 0.25 0.875 +0.8125 0.25 0.9062 +0.8125 0.25 0.9375 +0.8125 0.25 0.9688 +0.8125 0.25 1 +0.8125 0.2812 0 +0.8125 0.2812 0.03125 +0.8125 0.2812 0.0625 +0.8125 0.2812 0.09375 +0.8125 0.2812 0.125 +0.8125 0.2812 0.1562 +0.8125 0.2812 0.1875 +0.8125 0.2812 0.2188 +0.8125 0.2812 0.25 +0.8125 0.2812 0.2812 +0.8125 0.2812 0.3125 +0.8125 0.2812 0.3438 +0.8125 0.2812 0.375 +0.8125 0.2812 0.4062 +0.8125 0.2812 0.4375 +0.8125 0.2812 0.4688 +0.8125 0.2812 0.5 +0.8125 0.2812 0.5312 +0.8125 0.2812 0.5625 +0.8125 0.2812 0.5938 +0.8125 0.2812 0.625 +0.8125 0.2812 0.6562 +0.8125 0.2812 0.6875 +0.8125 0.2812 0.7188 +0.8125 0.2812 0.75 +0.8125 0.2812 0.7812 +0.8125 0.2812 0.8125 +0.8125 0.2812 0.8438 +0.8125 0.2812 0.875 +0.8125 0.2812 0.9062 +0.8125 0.2812 0.9375 +0.8125 0.2812 0.9688 +0.8125 0.2812 1 +0.8125 0.3125 0 +0.8125 0.3125 0.03125 +0.8125 0.3125 0.0625 +0.8125 0.3125 0.09375 +0.8125 0.3125 0.125 +0.8125 0.3125 0.1562 +0.8125 0.3125 0.1875 +0.8125 0.3125 0.2188 +0.8125 0.3125 0.25 +0.8125 0.3125 0.2812 +0.8125 0.3125 0.3125 +0.8125 0.3125 0.3438 +0.8125 0.3125 0.375 +0.8125 0.3125 0.4062 +0.8125 0.3125 0.4375 +0.8125 0.3125 0.4688 +0.8125 0.3125 0.5 +0.8125 0.3125 0.5312 +0.8125 0.3125 0.5625 +0.8125 0.3125 0.5938 +0.8125 0.3125 0.625 +0.8125 0.3125 0.6562 +0.8125 0.3125 0.6875 +0.8125 0.3125 0.7188 +0.8125 0.3125 0.75 +0.8125 0.3125 0.7812 +0.8125 0.3125 0.8125 +0.8125 0.3125 0.8438 +0.8125 0.3125 0.875 +0.8125 0.3125 0.9062 +0.8125 0.3125 0.9375 +0.8125 0.3125 0.9688 +0.8125 0.3125 1 +0.8125 0.3438 0 +0.8125 0.3438 0.03125 +0.8125 0.3438 0.0625 +0.8125 0.3438 0.09375 +0.8125 0.3438 0.125 +0.8125 0.3438 0.1562 +0.8125 0.3438 0.1875 +0.8125 0.3438 0.2188 +0.8125 0.3438 0.25 +0.8125 0.3438 0.2812 +0.8125 0.3438 0.3125 +0.8125 0.3438 0.3438 +0.8125 0.3438 0.375 +0.8125 0.3438 0.4062 +0.8125 0.3438 0.4375 +0.8125 0.3438 0.4688 +0.8125 0.3438 0.5 +0.8125 0.3438 0.5312 +0.8125 0.3438 0.5625 +0.8125 0.3438 0.5938 +0.8125 0.3438 0.625 +0.8125 0.3438 0.6562 +0.8125 0.3438 0.6875 +0.8125 0.3438 0.7188 +0.8125 0.3438 0.75 +0.8125 0.3438 0.7812 +0.8125 0.3438 0.8125 +0.8125 0.3438 0.8438 +0.8125 0.3438 0.875 +0.8125 0.3438 0.9062 +0.8125 0.3438 0.9375 +0.8125 0.3438 0.9688 +0.8125 0.3438 1 +0.8125 0.375 0 +0.8125 0.375 0.03125 +0.8125 0.375 0.0625 +0.8125 0.375 0.09375 +0.8125 0.375 0.125 +0.8125 0.375 0.1562 +0.8125 0.375 0.1875 +0.8125 0.375 0.2188 +0.8125 0.375 0.25 +0.8125 0.375 0.2812 +0.8125 0.375 0.3125 +0.8125 0.375 0.3438 +0.8125 0.375 0.375 +0.8125 0.375 0.4062 +0.8125 0.375 0.4375 +0.8125 0.375 0.4688 +0.8125 0.375 0.5 +0.8125 0.375 0.5312 +0.8125 0.375 0.5625 +0.8125 0.375 0.5938 +0.8125 0.375 0.625 +0.8125 0.375 0.6562 +0.8125 0.375 0.6875 +0.8125 0.375 0.7188 +0.8125 0.375 0.75 +0.8125 0.375 0.7812 +0.8125 0.375 0.8125 +0.8125 0.375 0.8438 +0.8125 0.375 0.875 +0.8125 0.375 0.9062 +0.8125 0.375 0.9375 +0.8125 0.375 0.9688 +0.8125 0.375 1 +0.8125 0.4062 0 +0.8125 0.4062 0.03125 +0.8125 0.4062 0.0625 +0.8125 0.4062 0.09375 +0.8125 0.4062 0.125 +0.8125 0.4062 0.1562 +0.8125 0.4062 0.1875 +0.8125 0.4062 0.2188 +0.8125 0.4062 0.25 +0.8125 0.4062 0.2812 +0.8125 0.4062 0.3125 +0.8125 0.4062 0.3438 +0.8125 0.4062 0.375 +0.8125 0.4062 0.4062 +0.8125 0.4062 0.4375 +0.8125 0.4062 0.4688 +0.8125 0.4062 0.5 +0.8125 0.4062 0.5312 +0.8125 0.4062 0.5625 +0.8125 0.4062 0.5938 +0.8125 0.4062 0.625 +0.8125 0.4062 0.6562 +0.8125 0.4062 0.6875 +0.8125 0.4062 0.7188 +0.8125 0.4062 0.75 +0.8125 0.4062 0.7812 +0.8125 0.4062 0.8125 +0.8125 0.4062 0.8438 +0.8125 0.4062 0.875 +0.8125 0.4062 0.9062 +0.8125 0.4062 0.9375 +0.8125 0.4062 0.9688 +0.8125 0.4062 1 +0.8125 0.4375 0 +0.8125 0.4375 0.03125 +0.8125 0.4375 0.0625 +0.8125 0.4375 0.09375 +0.8125 0.4375 0.125 +0.8125 0.4375 0.1562 +0.8125 0.4375 0.1875 +0.8125 0.4375 0.2188 +0.8125 0.4375 0.25 +0.8125 0.4375 0.2812 +0.8125 0.4375 0.3125 +0.8125 0.4375 0.3438 +0.8125 0.4375 0.375 +0.8125 0.4375 0.4062 +0.8125 0.4375 0.4375 +0.8125 0.4375 0.4688 +0.8125 0.4375 0.5 +0.8125 0.4375 0.5312 +0.8125 0.4375 0.5625 +0.8125 0.4375 0.5938 +0.8125 0.4375 0.625 +0.8125 0.4375 0.6562 +0.8125 0.4375 0.6875 +0.8125 0.4375 0.7188 +0.8125 0.4375 0.75 +0.8125 0.4375 0.7812 +0.8125 0.4375 0.8125 +0.8125 0.4375 0.8438 +0.8125 0.4375 0.875 +0.8125 0.4375 0.9062 +0.8125 0.4375 0.9375 +0.8125 0.4375 0.9688 +0.8125 0.4375 1 +0.8125 0.4688 0 +0.8125 0.4688 0.03125 +0.8125 0.4688 0.0625 +0.8125 0.4688 0.09375 +0.8125 0.4688 0.125 +0.8125 0.4688 0.1562 +0.8125 0.4688 0.1875 +0.8125 0.4688 0.2188 +0.8125 0.4688 0.25 +0.8125 0.4688 0.2812 +0.8125 0.4688 0.3125 +0.8125 0.4688 0.3438 +0.8125 0.4688 0.375 +0.8125 0.4688 0.4062 +0.8125 0.4688 0.4375 +0.8125 0.4688 0.4688 +0.8125 0.4688 0.5 +0.8125 0.4688 0.5312 +0.8125 0.4688 0.5625 +0.8125 0.4688 0.5938 +0.8125 0.4688 0.625 +0.8125 0.4688 0.6562 +0.8125 0.4688 0.6875 +0.8125 0.4688 0.7188 +0.8125 0.4688 0.75 +0.8125 0.4688 0.7812 +0.8125 0.4688 0.8125 +0.8125 0.4688 0.8438 +0.8125 0.4688 0.875 +0.8125 0.4688 0.9062 +0.8125 0.4688 0.9375 +0.8125 0.4688 0.9688 +0.8125 0.4688 1 +0.8125 0.5 0 +0.8125 0.5 0.03125 +0.8125 0.5 0.0625 +0.8125 0.5 0.09375 +0.8125 0.5 0.125 +0.8125 0.5 0.1562 +0.8125 0.5 0.1875 +0.8125 0.5 0.2188 +0.8125 0.5 0.25 +0.8125 0.5 0.2812 +0.8125 0.5 0.3125 +0.8125 0.5 0.3438 +0.8125 0.5 0.375 +0.8125 0.5 0.4062 +0.8125 0.5 0.4375 +0.8125 0.5 0.4688 +0.8125 0.5 0.5 +0.8125 0.5 0.5312 +0.8125 0.5 0.5625 +0.8125 0.5 0.5938 +0.8125 0.5 0.625 +0.8125 0.5 0.6562 +0.8125 0.5 0.6875 +0.8125 0.5 0.7188 +0.8125 0.5 0.75 +0.8125 0.5 0.7812 +0.8125 0.5 0.8125 +0.8125 0.5 0.8438 +0.8125 0.5 0.875 +0.8125 0.5 0.9062 +0.8125 0.5 0.9375 +0.8125 0.5 0.9688 +0.8125 0.5 1 +0.8125 0.5312 0 +0.8125 0.5312 0.03125 +0.8125 0.5312 0.0625 +0.8125 0.5312 0.09375 +0.8125 0.5312 0.125 +0.8125 0.5312 0.1562 +0.8125 0.5312 0.1875 +0.8125 0.5312 0.2188 +0.8125 0.5312 0.25 +0.8125 0.5312 0.2812 +0.8125 0.5312 0.3125 +0.8125 0.5312 0.3438 +0.8125 0.5312 0.375 +0.8125 0.5312 0.4062 +0.8125 0.5312 0.4375 +0.8125 0.5312 0.4688 +0.8125 0.5312 0.5 +0.8125 0.5312 0.5312 +0.8125 0.5312 0.5625 +0.8125 0.5312 0.5938 +0.8125 0.5312 0.625 +0.8125 0.5312 0.6562 +0.8125 0.5312 0.6875 +0.8125 0.5312 0.7188 +0.8125 0.5312 0.75 +0.8125 0.5312 0.7812 +0.8125 0.5312 0.8125 +0.8125 0.5312 0.8438 +0.8125 0.5312 0.875 +0.8125 0.5312 0.9062 +0.8125 0.5312 0.9375 +0.8125 0.5312 0.9688 +0.8125 0.5312 1 +0.8125 0.5625 0 +0.8125 0.5625 0.03125 +0.8125 0.5625 0.0625 +0.8125 0.5625 0.09375 +0.8125 0.5625 0.125 +0.8125 0.5625 0.1562 +0.8125 0.5625 0.1875 +0.8125 0.5625 0.2188 +0.8125 0.5625 0.25 +0.8125 0.5625 0.2812 +0.8125 0.5625 0.3125 +0.8125 0.5625 0.3438 +0.8125 0.5625 0.375 +0.8125 0.5625 0.4062 +0.8125 0.5625 0.4375 +0.8125 0.5625 0.4688 +0.8125 0.5625 0.5 +0.8125 0.5625 0.5312 +0.8125 0.5625 0.5625 +0.8125 0.5625 0.5938 +0.8125 0.5625 0.625 +0.8125 0.5625 0.6562 +0.8125 0.5625 0.6875 +0.8125 0.5625 0.7188 +0.8125 0.5625 0.75 +0.8125 0.5625 0.7812 +0.8125 0.5625 0.8125 +0.8125 0.5625 0.8438 +0.8125 0.5625 0.875 +0.8125 0.5625 0.9062 +0.8125 0.5625 0.9375 +0.8125 0.5625 0.9688 +0.8125 0.5625 1 +0.8125 0.5938 0 +0.8125 0.5938 0.03125 +0.8125 0.5938 0.0625 +0.8125 0.5938 0.09375 +0.8125 0.5938 0.125 +0.8125 0.5938 0.1562 +0.8125 0.5938 0.1875 +0.8125 0.5938 0.2188 +0.8125 0.5938 0.25 +0.8125 0.5938 0.2812 +0.8125 0.5938 0.3125 +0.8125 0.5938 0.3438 +0.8125 0.5938 0.375 +0.8125 0.5938 0.4062 +0.8125 0.5938 0.4375 +0.8125 0.5938 0.4688 +0.8125 0.5938 0.5 +0.8125 0.5938 0.5312 +0.8125 0.5938 0.5625 +0.8125 0.5938 0.5938 +0.8125 0.5938 0.625 +0.8125 0.5938 0.6562 +0.8125 0.5938 0.6875 +0.8125 0.5938 0.7188 +0.8125 0.5938 0.75 +0.8125 0.5938 0.7812 +0.8125 0.5938 0.8125 +0.8125 0.5938 0.8438 +0.8125 0.5938 0.875 +0.8125 0.5938 0.9062 +0.8125 0.5938 0.9375 +0.8125 0.5938 0.9688 +0.8125 0.5938 1 +0.8125 0.625 0 +0.8125 0.625 0.03125 +0.8125 0.625 0.0625 +0.8125 0.625 0.09375 +0.8125 0.625 0.125 +0.8125 0.625 0.1562 +0.8125 0.625 0.1875 +0.8125 0.625 0.2188 +0.8125 0.625 0.25 +0.8125 0.625 0.2812 +0.8125 0.625 0.3125 +0.8125 0.625 0.3438 +0.8125 0.625 0.375 +0.8125 0.625 0.4062 +0.8125 0.625 0.4375 +0.8125 0.625 0.4688 +0.8125 0.625 0.5 +0.8125 0.625 0.5312 +0.8125 0.625 0.5625 +0.8125 0.625 0.5938 +0.8125 0.625 0.625 +0.8125 0.625 0.6562 +0.8125 0.625 0.6875 +0.8125 0.625 0.7188 +0.8125 0.625 0.75 +0.8125 0.625 0.7812 +0.8125 0.625 0.8125 +0.8125 0.625 0.8438 +0.8125 0.625 0.875 +0.8125 0.625 0.9062 +0.8125 0.625 0.9375 +0.8125 0.625 0.9688 +0.8125 0.625 1 +0.8125 0.6562 0 +0.8125 0.6562 0.03125 +0.8125 0.6562 0.0625 +0.8125 0.6562 0.09375 +0.8125 0.6562 0.125 +0.8125 0.6562 0.1562 +0.8125 0.6562 0.1875 +0.8125 0.6562 0.2188 +0.8125 0.6562 0.25 +0.8125 0.6562 0.2812 +0.8125 0.6562 0.3125 +0.8125 0.6562 0.3438 +0.8125 0.6562 0.375 +0.8125 0.6562 0.4062 +0.8125 0.6562 0.4375 +0.8125 0.6562 0.4688 +0.8125 0.6562 0.5 +0.8125 0.6562 0.5312 +0.8125 0.6562 0.5625 +0.8125 0.6562 0.5938 +0.8125 0.6562 0.625 +0.8125 0.6562 0.6562 +0.8125 0.6562 0.6875 +0.8125 0.6562 0.7188 +0.8125 0.6562 0.75 +0.8125 0.6562 0.7812 +0.8125 0.6562 0.8125 +0.8125 0.6562 0.8438 +0.8125 0.6562 0.875 +0.8125 0.6562 0.9062 +0.8125 0.6562 0.9375 +0.8125 0.6562 0.9688 +0.8125 0.6562 1 +0.8125 0.6875 0 +0.8125 0.6875 0.03125 +0.8125 0.6875 0.0625 +0.8125 0.6875 0.09375 +0.8125 0.6875 0.125 +0.8125 0.6875 0.1562 +0.8125 0.6875 0.1875 +0.8125 0.6875 0.2188 +0.8125 0.6875 0.25 +0.8125 0.6875 0.2812 +0.8125 0.6875 0.3125 +0.8125 0.6875 0.3438 +0.8125 0.6875 0.375 +0.8125 0.6875 0.4062 +0.8125 0.6875 0.4375 +0.8125 0.6875 0.4688 +0.8125 0.6875 0.5 +0.8125 0.6875 0.5312 +0.8125 0.6875 0.5625 +0.8125 0.6875 0.5938 +0.8125 0.6875 0.625 +0.8125 0.6875 0.6562 +0.8125 0.6875 0.6875 +0.8125 0.6875 0.7188 +0.8125 0.6875 0.75 +0.8125 0.6875 0.7812 +0.8125 0.6875 0.8125 +0.8125 0.6875 0.8438 +0.8125 0.6875 0.875 +0.8125 0.6875 0.9062 +0.8125 0.6875 0.9375 +0.8125 0.6875 0.9688 +0.8125 0.6875 1 +0.8125 0.7188 0 +0.8125 0.7188 0.03125 +0.8125 0.7188 0.0625 +0.8125 0.7188 0.09375 +0.8125 0.7188 0.125 +0.8125 0.7188 0.1562 +0.8125 0.7188 0.1875 +0.8125 0.7188 0.2188 +0.8125 0.7188 0.25 +0.8125 0.7188 0.2812 +0.8125 0.7188 0.3125 +0.8125 0.7188 0.3438 +0.8125 0.7188 0.375 +0.8125 0.7188 0.4062 +0.8125 0.7188 0.4375 +0.8125 0.7188 0.4688 +0.8125 0.7188 0.5 +0.8125 0.7188 0.5312 +0.8125 0.7188 0.5625 +0.8125 0.7188 0.5938 +0.8125 0.7188 0.625 +0.8125 0.7188 0.6562 +0.8125 0.7188 0.6875 +0.8125 0.7188 0.7188 +0.8125 0.7188 0.75 +0.8125 0.7188 0.7812 +0.8125 0.7188 0.8125 +0.8125 0.7188 0.8438 +0.8125 0.7188 0.875 +0.8125 0.7188 0.9062 +0.8125 0.7188 0.9375 +0.8125 0.7188 0.9688 +0.8125 0.7188 1 +0.8125 0.75 0 +0.8125 0.75 0.03125 +0.8125 0.75 0.0625 +0.8125 0.75 0.09375 +0.8125 0.75 0.125 +0.8125 0.75 0.1562 +0.8125 0.75 0.1875 +0.8125 0.75 0.2188 +0.8125 0.75 0.25 +0.8125 0.75 0.2812 +0.8125 0.75 0.3125 +0.8125 0.75 0.3438 +0.8125 0.75 0.375 +0.8125 0.75 0.4062 +0.8125 0.75 0.4375 +0.8125 0.75 0.4688 +0.8125 0.75 0.5 +0.8125 0.75 0.5312 +0.8125 0.75 0.5625 +0.8125 0.75 0.5938 +0.8125 0.75 0.625 +0.8125 0.75 0.6562 +0.8125 0.75 0.6875 +0.8125 0.75 0.7188 +0.8125 0.75 0.75 +0.8125 0.75 0.7812 +0.8125 0.75 0.8125 +0.8125 0.75 0.8438 +0.8125 0.75 0.875 +0.8125 0.75 0.9062 +0.8125 0.75 0.9375 +0.8125 0.75 0.9688 +0.8125 0.75 1 +0.8125 0.7812 0 +0.8125 0.7812 0.03125 +0.8125 0.7812 0.0625 +0.8125 0.7812 0.09375 +0.8125 0.7812 0.125 +0.8125 0.7812 0.1562 +0.8125 0.7812 0.1875 +0.8125 0.7812 0.2188 +0.8125 0.7812 0.25 +0.8125 0.7812 0.2812 +0.8125 0.7812 0.3125 +0.8125 0.7812 0.3438 +0.8125 0.7812 0.375 +0.8125 0.7812 0.4062 +0.8125 0.7812 0.4375 +0.8125 0.7812 0.4688 +0.8125 0.7812 0.5 +0.8125 0.7812 0.5312 +0.8125 0.7812 0.5625 +0.8125 0.7812 0.5938 +0.8125 0.7812 0.625 +0.8125 0.7812 0.6562 +0.8125 0.7812 0.6875 +0.8125 0.7812 0.7188 +0.8125 0.7812 0.75 +0.8125 0.7812 0.7812 +0.8125 0.7812 0.8125 +0.8125 0.7812 0.8438 +0.8125 0.7812 0.875 +0.8125 0.7812 0.9062 +0.8125 0.7812 0.9375 +0.8125 0.7812 0.9688 +0.8125 0.7812 1 +0.8125 0.8125 0 +0.8125 0.8125 0.03125 +0.8125 0.8125 0.0625 +0.8125 0.8125 0.09375 +0.8125 0.8125 0.125 +0.8125 0.8125 0.1562 +0.8125 0.8125 0.1875 +0.8125 0.8125 0.2188 +0.8125 0.8125 0.25 +0.8125 0.8125 0.2812 +0.8125 0.8125 0.3125 +0.8125 0.8125 0.3438 +0.8125 0.8125 0.375 +0.8125 0.8125 0.4062 +0.8125 0.8125 0.4375 +0.8125 0.8125 0.4688 +0.8125 0.8125 0.5 +0.8125 0.8125 0.5312 +0.8125 0.8125 0.5625 +0.8125 0.8125 0.5938 +0.8125 0.8125 0.625 +0.8125 0.8125 0.6562 +0.8125 0.8125 0.6875 +0.8125 0.8125 0.7188 +0.8125 0.8125 0.75 +0.8125 0.8125 0.7812 +0.8125 0.8125 0.8125 +0.8125 0.8125 0.8438 +0.8125 0.8125 0.875 +0.8125 0.8125 0.9062 +0.8125 0.8125 0.9375 +0.8125 0.8125 0.9688 +0.8125 0.8125 1 +0.8125 0.8438 0 +0.8125 0.8438 0.03125 +0.8125 0.8438 0.0625 +0.8125 0.8438 0.09375 +0.8125 0.8438 0.125 +0.8125 0.8438 0.1562 +0.8125 0.8438 0.1875 +0.8125 0.8438 0.2188 +0.8125 0.8438 0.25 +0.8125 0.8438 0.2812 +0.8125 0.8438 0.3125 +0.8125 0.8438 0.3438 +0.8125 0.8438 0.375 +0.8125 0.8438 0.4062 +0.8125 0.8438 0.4375 +0.8125 0.8438 0.4688 +0.8125 0.8438 0.5 +0.8125 0.8438 0.5312 +0.8125 0.8438 0.5625 +0.8125 0.8438 0.5938 +0.8125 0.8438 0.625 +0.8125 0.8438 0.6562 +0.8125 0.8438 0.6875 +0.8125 0.8438 0.7188 +0.8125 0.8438 0.75 +0.8125 0.8438 0.7812 +0.8125 0.8438 0.8125 +0.8125 0.8438 0.8438 +0.8125 0.8438 0.875 +0.8125 0.8438 0.9062 +0.8125 0.8438 0.9375 +0.8125 0.8438 0.9688 +0.8125 0.8438 1 +0.8125 0.875 0 +0.8125 0.875 0.03125 +0.8125 0.875 0.0625 +0.8125 0.875 0.09375 +0.8125 0.875 0.125 +0.8125 0.875 0.1562 +0.8125 0.875 0.1875 +0.8125 0.875 0.2188 +0.8125 0.875 0.25 +0.8125 0.875 0.2812 +0.8125 0.875 0.3125 +0.8125 0.875 0.3438 +0.8125 0.875 0.375 +0.8125 0.875 0.4062 +0.8125 0.875 0.4375 +0.8125 0.875 0.4688 +0.8125 0.875 0.5 +0.8125 0.875 0.5312 +0.8125 0.875 0.5625 +0.8125 0.875 0.5938 +0.8125 0.875 0.625 +0.8125 0.875 0.6562 +0.8125 0.875 0.6875 +0.8125 0.875 0.7188 +0.8125 0.875 0.75 +0.8125 0.875 0.7812 +0.8125 0.875 0.8125 +0.8125 0.875 0.8438 +0.8125 0.875 0.875 +0.8125 0.875 0.9062 +0.8125 0.875 0.9375 +0.8125 0.875 0.9688 +0.8125 0.875 1 +0.8125 0.9062 0 +0.8125 0.9062 0.03125 +0.8125 0.9062 0.0625 +0.8125 0.9062 0.09375 +0.8125 0.9062 0.125 +0.8125 0.9062 0.1562 +0.8125 0.9062 0.1875 +0.8125 0.9062 0.2188 +0.8125 0.9062 0.25 +0.8125 0.9062 0.2812 +0.8125 0.9062 0.3125 +0.8125 0.9062 0.3438 +0.8125 0.9062 0.375 +0.8125 0.9062 0.4062 +0.8125 0.9062 0.4375 +0.8125 0.9062 0.4688 +0.8125 0.9062 0.5 +0.8125 0.9062 0.5312 +0.8125 0.9062 0.5625 +0.8125 0.9062 0.5938 +0.8125 0.9062 0.625 +0.8125 0.9062 0.6562 +0.8125 0.9062 0.6875 +0.8125 0.9062 0.7188 +0.8125 0.9062 0.75 +0.8125 0.9062 0.7812 +0.8125 0.9062 0.8125 +0.8125 0.9062 0.8438 +0.8125 0.9062 0.875 +0.8125 0.9062 0.9062 +0.8125 0.9062 0.9375 +0.8125 0.9062 0.9688 +0.8125 0.9062 1 +0.8125 0.9375 0 +0.8125 0.9375 0.03125 +0.8125 0.9375 0.0625 +0.8125 0.9375 0.09375 +0.8125 0.9375 0.125 +0.8125 0.9375 0.1562 +0.8125 0.9375 0.1875 +0.8125 0.9375 0.2188 +0.8125 0.9375 0.25 +0.8125 0.9375 0.2812 +0.8125 0.9375 0.3125 +0.8125 0.9375 0.3438 +0.8125 0.9375 0.375 +0.8125 0.9375 0.4062 +0.8125 0.9375 0.4375 +0.8125 0.9375 0.4688 +0.8125 0.9375 0.5 +0.8125 0.9375 0.5312 +0.8125 0.9375 0.5625 +0.8125 0.9375 0.5938 +0.8125 0.9375 0.625 +0.8125 0.9375 0.6562 +0.8125 0.9375 0.6875 +0.8125 0.9375 0.7188 +0.8125 0.9375 0.75 +0.8125 0.9375 0.7812 +0.8125 0.9375 0.8125 +0.8125 0.9375 0.8438 +0.8125 0.9375 0.875 +0.8125 0.9375 0.9062 +0.8125 0.9375 0.9375 +0.8125 0.9375 0.9688 +0.8125 0.9375 1 +0.8125 0.9688 0 +0.8125 0.9688 0.03125 +0.8125 0.9688 0.0625 +0.8125 0.9688 0.09375 +0.8125 0.9688 0.125 +0.8125 0.9688 0.1562 +0.8125 0.9688 0.1875 +0.8125 0.9688 0.2188 +0.8125 0.9688 0.25 +0.8125 0.9688 0.2812 +0.8125 0.9688 0.3125 +0.8125 0.9688 0.3438 +0.8125 0.9688 0.375 +0.8125 0.9688 0.4062 +0.8125 0.9688 0.4375 +0.8125 0.9688 0.4688 +0.8125 0.9688 0.5 +0.8125 0.9688 0.5312 +0.8125 0.9688 0.5625 +0.8125 0.9688 0.5938 +0.8125 0.9688 0.625 +0.8125 0.9688 0.6562 +0.8125 0.9688 0.6875 +0.8125 0.9688 0.7188 +0.8125 0.9688 0.75 +0.8125 0.9688 0.7812 +0.8125 0.9688 0.8125 +0.8125 0.9688 0.8438 +0.8125 0.9688 0.875 +0.8125 0.9688 0.9062 +0.8125 0.9688 0.9375 +0.8125 0.9688 0.9688 +0.8125 0.9688 1 +0.8125 1 0 +0.8125 1 0.03125 +0.8125 1 0.0625 +0.8125 1 0.09375 +0.8125 1 0.125 +0.8125 1 0.1562 +0.8125 1 0.1875 +0.8125 1 0.2188 +0.8125 1 0.25 +0.8125 1 0.2812 +0.8125 1 0.3125 +0.8125 1 0.3438 +0.8125 1 0.375 +0.8125 1 0.4062 +0.8125 1 0.4375 +0.8125 1 0.4688 +0.8125 1 0.5 +0.8125 1 0.5312 +0.8125 1 0.5625 +0.8125 1 0.5938 +0.8125 1 0.625 +0.8125 1 0.6562 +0.8125 1 0.6875 +0.8125 1 0.7188 +0.8125 1 0.75 +0.8125 1 0.7812 +0.8125 1 0.8125 +0.8125 1 0.8438 +0.8125 1 0.875 +0.8125 1 0.9062 +0.8125 1 0.9375 +0.8125 1 0.9688 +0.8125 1 1 +0.8438 0 0 +0.8438 0 0.03125 +0.8438 0 0.0625 +0.8438 0 0.09375 +0.8438 0 0.125 +0.8438 0 0.1562 +0.8438 0 0.1875 +0.8438 0 0.2188 +0.8438 0 0.25 +0.8438 0 0.2812 +0.8438 0 0.3125 +0.8438 0 0.3438 +0.8438 0 0.375 +0.8438 0 0.4062 +0.8438 0 0.4375 +0.8438 0 0.4688 +0.8438 0 0.5 +0.8438 0 0.5312 +0.8438 0 0.5625 +0.8438 0 0.5938 +0.8438 0 0.625 +0.8438 0 0.6562 +0.8438 0 0.6875 +0.8438 0 0.7188 +0.8438 0 0.75 +0.8438 0 0.7812 +0.8438 0 0.8125 +0.8438 0 0.8438 +0.8438 0 0.875 +0.8438 0 0.9062 +0.8438 0 0.9375 +0.8438 0 0.9688 +0.8438 0 1 +0.8438 0.03125 0 +0.8438 0.03125 0.03125 +0.8438 0.03125 0.0625 +0.8438 0.03125 0.09375 +0.8438 0.03125 0.125 +0.8438 0.03125 0.1562 +0.8438 0.03125 0.1875 +0.8438 0.03125 0.2188 +0.8438 0.03125 0.25 +0.8438 0.03125 0.2812 +0.8438 0.03125 0.3125 +0.8438 0.03125 0.3438 +0.8438 0.03125 0.375 +0.8438 0.03125 0.4062 +0.8438 0.03125 0.4375 +0.8438 0.03125 0.4688 +0.8438 0.03125 0.5 +0.8438 0.03125 0.5312 +0.8438 0.03125 0.5625 +0.8438 0.03125 0.5938 +0.8438 0.03125 0.625 +0.8438 0.03125 0.6562 +0.8438 0.03125 0.6875 +0.8438 0.03125 0.7188 +0.8438 0.03125 0.75 +0.8438 0.03125 0.7812 +0.8438 0.03125 0.8125 +0.8438 0.03125 0.8438 +0.8438 0.03125 0.875 +0.8438 0.03125 0.9062 +0.8438 0.03125 0.9375 +0.8438 0.03125 0.9688 +0.8438 0.03125 1 +0.8438 0.0625 0 +0.8438 0.0625 0.03125 +0.8438 0.0625 0.0625 +0.8438 0.0625 0.09375 +0.8438 0.0625 0.125 +0.8438 0.0625 0.1562 +0.8438 0.0625 0.1875 +0.8438 0.0625 0.2188 +0.8438 0.0625 0.25 +0.8438 0.0625 0.2812 +0.8438 0.0625 0.3125 +0.8438 0.0625 0.3438 +0.8438 0.0625 0.375 +0.8438 0.0625 0.4062 +0.8438 0.0625 0.4375 +0.8438 0.0625 0.4688 +0.8438 0.0625 0.5 +0.8438 0.0625 0.5312 +0.8438 0.0625 0.5625 +0.8438 0.0625 0.5938 +0.8438 0.0625 0.625 +0.8438 0.0625 0.6562 +0.8438 0.0625 0.6875 +0.8438 0.0625 0.7188 +0.8438 0.0625 0.75 +0.8438 0.0625 0.7812 +0.8438 0.0625 0.8125 +0.8438 0.0625 0.8438 +0.8438 0.0625 0.875 +0.8438 0.0625 0.9062 +0.8438 0.0625 0.9375 +0.8438 0.0625 0.9688 +0.8438 0.0625 1 +0.8438 0.09375 0 +0.8438 0.09375 0.03125 +0.8438 0.09375 0.0625 +0.8438 0.09375 0.09375 +0.8438 0.09375 0.125 +0.8438 0.09375 0.1562 +0.8438 0.09375 0.1875 +0.8438 0.09375 0.2188 +0.8438 0.09375 0.25 +0.8438 0.09375 0.2812 +0.8438 0.09375 0.3125 +0.8438 0.09375 0.3438 +0.8438 0.09375 0.375 +0.8438 0.09375 0.4062 +0.8438 0.09375 0.4375 +0.8438 0.09375 0.4688 +0.8438 0.09375 0.5 +0.8438 0.09375 0.5312 +0.8438 0.09375 0.5625 +0.8438 0.09375 0.5938 +0.8438 0.09375 0.625 +0.8438 0.09375 0.6562 +0.8438 0.09375 0.6875 +0.8438 0.09375 0.7188 +0.8438 0.09375 0.75 +0.8438 0.09375 0.7812 +0.8438 0.09375 0.8125 +0.8438 0.09375 0.8438 +0.8438 0.09375 0.875 +0.8438 0.09375 0.9062 +0.8438 0.09375 0.9375 +0.8438 0.09375 0.9688 +0.8438 0.09375 1 +0.8438 0.125 0 +0.8438 0.125 0.03125 +0.8438 0.125 0.0625 +0.8438 0.125 0.09375 +0.8438 0.125 0.125 +0.8438 0.125 0.1562 +0.8438 0.125 0.1875 +0.8438 0.125 0.2188 +0.8438 0.125 0.25 +0.8438 0.125 0.2812 +0.8438 0.125 0.3125 +0.8438 0.125 0.3438 +0.8438 0.125 0.375 +0.8438 0.125 0.4062 +0.8438 0.125 0.4375 +0.8438 0.125 0.4688 +0.8438 0.125 0.5 +0.8438 0.125 0.5312 +0.8438 0.125 0.5625 +0.8438 0.125 0.5938 +0.8438 0.125 0.625 +0.8438 0.125 0.6562 +0.8438 0.125 0.6875 +0.8438 0.125 0.7188 +0.8438 0.125 0.75 +0.8438 0.125 0.7812 +0.8438 0.125 0.8125 +0.8438 0.125 0.8438 +0.8438 0.125 0.875 +0.8438 0.125 0.9062 +0.8438 0.125 0.9375 +0.8438 0.125 0.9688 +0.8438 0.125 1 +0.8438 0.1562 0 +0.8438 0.1562 0.03125 +0.8438 0.1562 0.0625 +0.8438 0.1562 0.09375 +0.8438 0.1562 0.125 +0.8438 0.1562 0.1562 +0.8438 0.1562 0.1875 +0.8438 0.1562 0.2188 +0.8438 0.1562 0.25 +0.8438 0.1562 0.2812 +0.8438 0.1562 0.3125 +0.8438 0.1562 0.3438 +0.8438 0.1562 0.375 +0.8438 0.1562 0.4062 +0.8438 0.1562 0.4375 +0.8438 0.1562 0.4688 +0.8438 0.1562 0.5 +0.8438 0.1562 0.5312 +0.8438 0.1562 0.5625 +0.8438 0.1562 0.5938 +0.8438 0.1562 0.625 +0.8438 0.1562 0.6562 +0.8438 0.1562 0.6875 +0.8438 0.1562 0.7188 +0.8438 0.1562 0.75 +0.8438 0.1562 0.7812 +0.8438 0.1562 0.8125 +0.8438 0.1562 0.8438 +0.8438 0.1562 0.875 +0.8438 0.1562 0.9062 +0.8438 0.1562 0.9375 +0.8438 0.1562 0.9688 +0.8438 0.1562 1 +0.8438 0.1875 0 +0.8438 0.1875 0.03125 +0.8438 0.1875 0.0625 +0.8438 0.1875 0.09375 +0.8438 0.1875 0.125 +0.8438 0.1875 0.1562 +0.8438 0.1875 0.1875 +0.8438 0.1875 0.2188 +0.8438 0.1875 0.25 +0.8438 0.1875 0.2812 +0.8438 0.1875 0.3125 +0.8438 0.1875 0.3438 +0.8438 0.1875 0.375 +0.8438 0.1875 0.4062 +0.8438 0.1875 0.4375 +0.8438 0.1875 0.4688 +0.8438 0.1875 0.5 +0.8438 0.1875 0.5312 +0.8438 0.1875 0.5625 +0.8438 0.1875 0.5938 +0.8438 0.1875 0.625 +0.8438 0.1875 0.6562 +0.8438 0.1875 0.6875 +0.8438 0.1875 0.7188 +0.8438 0.1875 0.75 +0.8438 0.1875 0.7812 +0.8438 0.1875 0.8125 +0.8438 0.1875 0.8438 +0.8438 0.1875 0.875 +0.8438 0.1875 0.9062 +0.8438 0.1875 0.9375 +0.8438 0.1875 0.9688 +0.8438 0.1875 1 +0.8438 0.2188 0 +0.8438 0.2188 0.03125 +0.8438 0.2188 0.0625 +0.8438 0.2188 0.09375 +0.8438 0.2188 0.125 +0.8438 0.2188 0.1562 +0.8438 0.2188 0.1875 +0.8438 0.2188 0.2188 +0.8438 0.2188 0.25 +0.8438 0.2188 0.2812 +0.8438 0.2188 0.3125 +0.8438 0.2188 0.3438 +0.8438 0.2188 0.375 +0.8438 0.2188 0.4062 +0.8438 0.2188 0.4375 +0.8438 0.2188 0.4688 +0.8438 0.2188 0.5 +0.8438 0.2188 0.5312 +0.8438 0.2188 0.5625 +0.8438 0.2188 0.5938 +0.8438 0.2188 0.625 +0.8438 0.2188 0.6562 +0.8438 0.2188 0.6875 +0.8438 0.2188 0.7188 +0.8438 0.2188 0.75 +0.8438 0.2188 0.7812 +0.8438 0.2188 0.8125 +0.8438 0.2188 0.8438 +0.8438 0.2188 0.875 +0.8438 0.2188 0.9062 +0.8438 0.2188 0.9375 +0.8438 0.2188 0.9688 +0.8438 0.2188 1 +0.8438 0.25 0 +0.8438 0.25 0.03125 +0.8438 0.25 0.0625 +0.8438 0.25 0.09375 +0.8438 0.25 0.125 +0.8438 0.25 0.1562 +0.8438 0.25 0.1875 +0.8438 0.25 0.2188 +0.8438 0.25 0.25 +0.8438 0.25 0.2812 +0.8438 0.25 0.3125 +0.8438 0.25 0.3438 +0.8438 0.25 0.375 +0.8438 0.25 0.4062 +0.8438 0.25 0.4375 +0.8438 0.25 0.4688 +0.8438 0.25 0.5 +0.8438 0.25 0.5312 +0.8438 0.25 0.5625 +0.8438 0.25 0.5938 +0.8438 0.25 0.625 +0.8438 0.25 0.6562 +0.8438 0.25 0.6875 +0.8438 0.25 0.7188 +0.8438 0.25 0.75 +0.8438 0.25 0.7812 +0.8438 0.25 0.8125 +0.8438 0.25 0.8438 +0.8438 0.25 0.875 +0.8438 0.25 0.9062 +0.8438 0.25 0.9375 +0.8438 0.25 0.9688 +0.8438 0.25 1 +0.8438 0.2812 0 +0.8438 0.2812 0.03125 +0.8438 0.2812 0.0625 +0.8438 0.2812 0.09375 +0.8438 0.2812 0.125 +0.8438 0.2812 0.1562 +0.8438 0.2812 0.1875 +0.8438 0.2812 0.2188 +0.8438 0.2812 0.25 +0.8438 0.2812 0.2812 +0.8438 0.2812 0.3125 +0.8438 0.2812 0.3438 +0.8438 0.2812 0.375 +0.8438 0.2812 0.4062 +0.8438 0.2812 0.4375 +0.8438 0.2812 0.4688 +0.8438 0.2812 0.5 +0.8438 0.2812 0.5312 +0.8438 0.2812 0.5625 +0.8438 0.2812 0.5938 +0.8438 0.2812 0.625 +0.8438 0.2812 0.6562 +0.8438 0.2812 0.6875 +0.8438 0.2812 0.7188 +0.8438 0.2812 0.75 +0.8438 0.2812 0.7812 +0.8438 0.2812 0.8125 +0.8438 0.2812 0.8438 +0.8438 0.2812 0.875 +0.8438 0.2812 0.9062 +0.8438 0.2812 0.9375 +0.8438 0.2812 0.9688 +0.8438 0.2812 1 +0.8438 0.3125 0 +0.8438 0.3125 0.03125 +0.8438 0.3125 0.0625 +0.8438 0.3125 0.09375 +0.8438 0.3125 0.125 +0.8438 0.3125 0.1562 +0.8438 0.3125 0.1875 +0.8438 0.3125 0.2188 +0.8438 0.3125 0.25 +0.8438 0.3125 0.2812 +0.8438 0.3125 0.3125 +0.8438 0.3125 0.3438 +0.8438 0.3125 0.375 +0.8438 0.3125 0.4062 +0.8438 0.3125 0.4375 +0.8438 0.3125 0.4688 +0.8438 0.3125 0.5 +0.8438 0.3125 0.5312 +0.8438 0.3125 0.5625 +0.8438 0.3125 0.5938 +0.8438 0.3125 0.625 +0.8438 0.3125 0.6562 +0.8438 0.3125 0.6875 +0.8438 0.3125 0.7188 +0.8438 0.3125 0.75 +0.8438 0.3125 0.7812 +0.8438 0.3125 0.8125 +0.8438 0.3125 0.8438 +0.8438 0.3125 0.875 +0.8438 0.3125 0.9062 +0.8438 0.3125 0.9375 +0.8438 0.3125 0.9688 +0.8438 0.3125 1 +0.8438 0.3438 0 +0.8438 0.3438 0.03125 +0.8438 0.3438 0.0625 +0.8438 0.3438 0.09375 +0.8438 0.3438 0.125 +0.8438 0.3438 0.1562 +0.8438 0.3438 0.1875 +0.8438 0.3438 0.2188 +0.8438 0.3438 0.25 +0.8438 0.3438 0.2812 +0.8438 0.3438 0.3125 +0.8438 0.3438 0.3438 +0.8438 0.3438 0.375 +0.8438 0.3438 0.4062 +0.8438 0.3438 0.4375 +0.8438 0.3438 0.4688 +0.8438 0.3438 0.5 +0.8438 0.3438 0.5312 +0.8438 0.3438 0.5625 +0.8438 0.3438 0.5938 +0.8438 0.3438 0.625 +0.8438 0.3438 0.6562 +0.8438 0.3438 0.6875 +0.8438 0.3438 0.7188 +0.8438 0.3438 0.75 +0.8438 0.3438 0.7812 +0.8438 0.3438 0.8125 +0.8438 0.3438 0.8438 +0.8438 0.3438 0.875 +0.8438 0.3438 0.9062 +0.8438 0.3438 0.9375 +0.8438 0.3438 0.9688 +0.8438 0.3438 1 +0.8438 0.375 0 +0.8438 0.375 0.03125 +0.8438 0.375 0.0625 +0.8438 0.375 0.09375 +0.8438 0.375 0.125 +0.8438 0.375 0.1562 +0.8438 0.375 0.1875 +0.8438 0.375 0.2188 +0.8438 0.375 0.25 +0.8438 0.375 0.2812 +0.8438 0.375 0.3125 +0.8438 0.375 0.3438 +0.8438 0.375 0.375 +0.8438 0.375 0.4062 +0.8438 0.375 0.4375 +0.8438 0.375 0.4688 +0.8438 0.375 0.5 +0.8438 0.375 0.5312 +0.8438 0.375 0.5625 +0.8438 0.375 0.5938 +0.8438 0.375 0.625 +0.8438 0.375 0.6562 +0.8438 0.375 0.6875 +0.8438 0.375 0.7188 +0.8438 0.375 0.75 +0.8438 0.375 0.7812 +0.8438 0.375 0.8125 +0.8438 0.375 0.8438 +0.8438 0.375 0.875 +0.8438 0.375 0.9062 +0.8438 0.375 0.9375 +0.8438 0.375 0.9688 +0.8438 0.375 1 +0.8438 0.4062 0 +0.8438 0.4062 0.03125 +0.8438 0.4062 0.0625 +0.8438 0.4062 0.09375 +0.8438 0.4062 0.125 +0.8438 0.4062 0.1562 +0.8438 0.4062 0.1875 +0.8438 0.4062 0.2188 +0.8438 0.4062 0.25 +0.8438 0.4062 0.2812 +0.8438 0.4062 0.3125 +0.8438 0.4062 0.3438 +0.8438 0.4062 0.375 +0.8438 0.4062 0.4062 +0.8438 0.4062 0.4375 +0.8438 0.4062 0.4688 +0.8438 0.4062 0.5 +0.8438 0.4062 0.5312 +0.8438 0.4062 0.5625 +0.8438 0.4062 0.5938 +0.8438 0.4062 0.625 +0.8438 0.4062 0.6562 +0.8438 0.4062 0.6875 +0.8438 0.4062 0.7188 +0.8438 0.4062 0.75 +0.8438 0.4062 0.7812 +0.8438 0.4062 0.8125 +0.8438 0.4062 0.8438 +0.8438 0.4062 0.875 +0.8438 0.4062 0.9062 +0.8438 0.4062 0.9375 +0.8438 0.4062 0.9688 +0.8438 0.4062 1 +0.8438 0.4375 0 +0.8438 0.4375 0.03125 +0.8438 0.4375 0.0625 +0.8438 0.4375 0.09375 +0.8438 0.4375 0.125 +0.8438 0.4375 0.1562 +0.8438 0.4375 0.1875 +0.8438 0.4375 0.2188 +0.8438 0.4375 0.25 +0.8438 0.4375 0.2812 +0.8438 0.4375 0.3125 +0.8438 0.4375 0.3438 +0.8438 0.4375 0.375 +0.8438 0.4375 0.4062 +0.8438 0.4375 0.4375 +0.8438 0.4375 0.4688 +0.8438 0.4375 0.5 +0.8438 0.4375 0.5312 +0.8438 0.4375 0.5625 +0.8438 0.4375 0.5938 +0.8438 0.4375 0.625 +0.8438 0.4375 0.6562 +0.8438 0.4375 0.6875 +0.8438 0.4375 0.7188 +0.8438 0.4375 0.75 +0.8438 0.4375 0.7812 +0.8438 0.4375 0.8125 +0.8438 0.4375 0.8438 +0.8438 0.4375 0.875 +0.8438 0.4375 0.9062 +0.8438 0.4375 0.9375 +0.8438 0.4375 0.9688 +0.8438 0.4375 1 +0.8438 0.4688 0 +0.8438 0.4688 0.03125 +0.8438 0.4688 0.0625 +0.8438 0.4688 0.09375 +0.8438 0.4688 0.125 +0.8438 0.4688 0.1562 +0.8438 0.4688 0.1875 +0.8438 0.4688 0.2188 +0.8438 0.4688 0.25 +0.8438 0.4688 0.2812 +0.8438 0.4688 0.3125 +0.8438 0.4688 0.3438 +0.8438 0.4688 0.375 +0.8438 0.4688 0.4062 +0.8438 0.4688 0.4375 +0.8438 0.4688 0.4688 +0.8438 0.4688 0.5 +0.8438 0.4688 0.5312 +0.8438 0.4688 0.5625 +0.8438 0.4688 0.5938 +0.8438 0.4688 0.625 +0.8438 0.4688 0.6562 +0.8438 0.4688 0.6875 +0.8438 0.4688 0.7188 +0.8438 0.4688 0.75 +0.8438 0.4688 0.7812 +0.8438 0.4688 0.8125 +0.8438 0.4688 0.8438 +0.8438 0.4688 0.875 +0.8438 0.4688 0.9062 +0.8438 0.4688 0.9375 +0.8438 0.4688 0.9688 +0.8438 0.4688 1 +0.8438 0.5 0 +0.8438 0.5 0.03125 +0.8438 0.5 0.0625 +0.8438 0.5 0.09375 +0.8438 0.5 0.125 +0.8438 0.5 0.1562 +0.8438 0.5 0.1875 +0.8438 0.5 0.2188 +0.8438 0.5 0.25 +0.8438 0.5 0.2812 +0.8438 0.5 0.3125 +0.8438 0.5 0.3438 +0.8438 0.5 0.375 +0.8438 0.5 0.4062 +0.8438 0.5 0.4375 +0.8438 0.5 0.4688 +0.8438 0.5 0.5 +0.8438 0.5 0.5312 +0.8438 0.5 0.5625 +0.8438 0.5 0.5938 +0.8438 0.5 0.625 +0.8438 0.5 0.6562 +0.8438 0.5 0.6875 +0.8438 0.5 0.7188 +0.8438 0.5 0.75 +0.8438 0.5 0.7812 +0.8438 0.5 0.8125 +0.8438 0.5 0.8438 +0.8438 0.5 0.875 +0.8438 0.5 0.9062 +0.8438 0.5 0.9375 +0.8438 0.5 0.9688 +0.8438 0.5 1 +0.8438 0.5312 0 +0.8438 0.5312 0.03125 +0.8438 0.5312 0.0625 +0.8438 0.5312 0.09375 +0.8438 0.5312 0.125 +0.8438 0.5312 0.1562 +0.8438 0.5312 0.1875 +0.8438 0.5312 0.2188 +0.8438 0.5312 0.25 +0.8438 0.5312 0.2812 +0.8438 0.5312 0.3125 +0.8438 0.5312 0.3438 +0.8438 0.5312 0.375 +0.8438 0.5312 0.4062 +0.8438 0.5312 0.4375 +0.8438 0.5312 0.4688 +0.8438 0.5312 0.5 +0.8438 0.5312 0.5312 +0.8438 0.5312 0.5625 +0.8438 0.5312 0.5938 +0.8438 0.5312 0.625 +0.8438 0.5312 0.6562 +0.8438 0.5312 0.6875 +0.8438 0.5312 0.7188 +0.8438 0.5312 0.75 +0.8438 0.5312 0.7812 +0.8438 0.5312 0.8125 +0.8438 0.5312 0.8438 +0.8438 0.5312 0.875 +0.8438 0.5312 0.9062 +0.8438 0.5312 0.9375 +0.8438 0.5312 0.9688 +0.8438 0.5312 1 +0.8438 0.5625 0 +0.8438 0.5625 0.03125 +0.8438 0.5625 0.0625 +0.8438 0.5625 0.09375 +0.8438 0.5625 0.125 +0.8438 0.5625 0.1562 +0.8438 0.5625 0.1875 +0.8438 0.5625 0.2188 +0.8438 0.5625 0.25 +0.8438 0.5625 0.2812 +0.8438 0.5625 0.3125 +0.8438 0.5625 0.3438 +0.8438 0.5625 0.375 +0.8438 0.5625 0.4062 +0.8438 0.5625 0.4375 +0.8438 0.5625 0.4688 +0.8438 0.5625 0.5 +0.8438 0.5625 0.5312 +0.8438 0.5625 0.5625 +0.8438 0.5625 0.5938 +0.8438 0.5625 0.625 +0.8438 0.5625 0.6562 +0.8438 0.5625 0.6875 +0.8438 0.5625 0.7188 +0.8438 0.5625 0.75 +0.8438 0.5625 0.7812 +0.8438 0.5625 0.8125 +0.8438 0.5625 0.8438 +0.8438 0.5625 0.875 +0.8438 0.5625 0.9062 +0.8438 0.5625 0.9375 +0.8438 0.5625 0.9688 +0.8438 0.5625 1 +0.8438 0.5938 0 +0.8438 0.5938 0.03125 +0.8438 0.5938 0.0625 +0.8438 0.5938 0.09375 +0.8438 0.5938 0.125 +0.8438 0.5938 0.1562 +0.8438 0.5938 0.1875 +0.8438 0.5938 0.2188 +0.8438 0.5938 0.25 +0.8438 0.5938 0.2812 +0.8438 0.5938 0.3125 +0.8438 0.5938 0.3438 +0.8438 0.5938 0.375 +0.8438 0.5938 0.4062 +0.8438 0.5938 0.4375 +0.8438 0.5938 0.4688 +0.8438 0.5938 0.5 +0.8438 0.5938 0.5312 +0.8438 0.5938 0.5625 +0.8438 0.5938 0.5938 +0.8438 0.5938 0.625 +0.8438 0.5938 0.6562 +0.8438 0.5938 0.6875 +0.8438 0.5938 0.7188 +0.8438 0.5938 0.75 +0.8438 0.5938 0.7812 +0.8438 0.5938 0.8125 +0.8438 0.5938 0.8438 +0.8438 0.5938 0.875 +0.8438 0.5938 0.9062 +0.8438 0.5938 0.9375 +0.8438 0.5938 0.9688 +0.8438 0.5938 1 +0.8438 0.625 0 +0.8438 0.625 0.03125 +0.8438 0.625 0.0625 +0.8438 0.625 0.09375 +0.8438 0.625 0.125 +0.8438 0.625 0.1562 +0.8438 0.625 0.1875 +0.8438 0.625 0.2188 +0.8438 0.625 0.25 +0.8438 0.625 0.2812 +0.8438 0.625 0.3125 +0.8438 0.625 0.3438 +0.8438 0.625 0.375 +0.8438 0.625 0.4062 +0.8438 0.625 0.4375 +0.8438 0.625 0.4688 +0.8438 0.625 0.5 +0.8438 0.625 0.5312 +0.8438 0.625 0.5625 +0.8438 0.625 0.5938 +0.8438 0.625 0.625 +0.8438 0.625 0.6562 +0.8438 0.625 0.6875 +0.8438 0.625 0.7188 +0.8438 0.625 0.75 +0.8438 0.625 0.7812 +0.8438 0.625 0.8125 +0.8438 0.625 0.8438 +0.8438 0.625 0.875 +0.8438 0.625 0.9062 +0.8438 0.625 0.9375 +0.8438 0.625 0.9688 +0.8438 0.625 1 +0.8438 0.6562 0 +0.8438 0.6562 0.03125 +0.8438 0.6562 0.0625 +0.8438 0.6562 0.09375 +0.8438 0.6562 0.125 +0.8438 0.6562 0.1562 +0.8438 0.6562 0.1875 +0.8438 0.6562 0.2188 +0.8438 0.6562 0.25 +0.8438 0.6562 0.2812 +0.8438 0.6562 0.3125 +0.8438 0.6562 0.3438 +0.8438 0.6562 0.375 +0.8438 0.6562 0.4062 +0.8438 0.6562 0.4375 +0.8438 0.6562 0.4688 +0.8438 0.6562 0.5 +0.8438 0.6562 0.5312 +0.8438 0.6562 0.5625 +0.8438 0.6562 0.5938 +0.8438 0.6562 0.625 +0.8438 0.6562 0.6562 +0.8438 0.6562 0.6875 +0.8438 0.6562 0.7188 +0.8438 0.6562 0.75 +0.8438 0.6562 0.7812 +0.8438 0.6562 0.8125 +0.8438 0.6562 0.8438 +0.8438 0.6562 0.875 +0.8438 0.6562 0.9062 +0.8438 0.6562 0.9375 +0.8438 0.6562 0.9688 +0.8438 0.6562 1 +0.8438 0.6875 0 +0.8438 0.6875 0.03125 +0.8438 0.6875 0.0625 +0.8438 0.6875 0.09375 +0.8438 0.6875 0.125 +0.8438 0.6875 0.1562 +0.8438 0.6875 0.1875 +0.8438 0.6875 0.2188 +0.8438 0.6875 0.25 +0.8438 0.6875 0.2812 +0.8438 0.6875 0.3125 +0.8438 0.6875 0.3438 +0.8438 0.6875 0.375 +0.8438 0.6875 0.4062 +0.8438 0.6875 0.4375 +0.8438 0.6875 0.4688 +0.8438 0.6875 0.5 +0.8438 0.6875 0.5312 +0.8438 0.6875 0.5625 +0.8438 0.6875 0.5938 +0.8438 0.6875 0.625 +0.8438 0.6875 0.6562 +0.8438 0.6875 0.6875 +0.8438 0.6875 0.7188 +0.8438 0.6875 0.75 +0.8438 0.6875 0.7812 +0.8438 0.6875 0.8125 +0.8438 0.6875 0.8438 +0.8438 0.6875 0.875 +0.8438 0.6875 0.9062 +0.8438 0.6875 0.9375 +0.8438 0.6875 0.9688 +0.8438 0.6875 1 +0.8438 0.7188 0 +0.8438 0.7188 0.03125 +0.8438 0.7188 0.0625 +0.8438 0.7188 0.09375 +0.8438 0.7188 0.125 +0.8438 0.7188 0.1562 +0.8438 0.7188 0.1875 +0.8438 0.7188 0.2188 +0.8438 0.7188 0.25 +0.8438 0.7188 0.2812 +0.8438 0.7188 0.3125 +0.8438 0.7188 0.3438 +0.8438 0.7188 0.375 +0.8438 0.7188 0.4062 +0.8438 0.7188 0.4375 +0.8438 0.7188 0.4688 +0.8438 0.7188 0.5 +0.8438 0.7188 0.5312 +0.8438 0.7188 0.5625 +0.8438 0.7188 0.5938 +0.8438 0.7188 0.625 +0.8438 0.7188 0.6562 +0.8438 0.7188 0.6875 +0.8438 0.7188 0.7188 +0.8438 0.7188 0.75 +0.8438 0.7188 0.7812 +0.8438 0.7188 0.8125 +0.8438 0.7188 0.8438 +0.8438 0.7188 0.875 +0.8438 0.7188 0.9062 +0.8438 0.7188 0.9375 +0.8438 0.7188 0.9688 +0.8438 0.7188 1 +0.8438 0.75 0 +0.8438 0.75 0.03125 +0.8438 0.75 0.0625 +0.8438 0.75 0.09375 +0.8438 0.75 0.125 +0.8438 0.75 0.1562 +0.8438 0.75 0.1875 +0.8438 0.75 0.2188 +0.8438 0.75 0.25 +0.8438 0.75 0.2812 +0.8438 0.75 0.3125 +0.8438 0.75 0.3438 +0.8438 0.75 0.375 +0.8438 0.75 0.4062 +0.8438 0.75 0.4375 +0.8438 0.75 0.4688 +0.8438 0.75 0.5 +0.8438 0.75 0.5312 +0.8438 0.75 0.5625 +0.8438 0.75 0.5938 +0.8438 0.75 0.625 +0.8438 0.75 0.6562 +0.8438 0.75 0.6875 +0.8438 0.75 0.7188 +0.8438 0.75 0.75 +0.8438 0.75 0.7812 +0.8438 0.75 0.8125 +0.8438 0.75 0.8438 +0.8438 0.75 0.875 +0.8438 0.75 0.9062 +0.8438 0.75 0.9375 +0.8438 0.75 0.9688 +0.8438 0.75 1 +0.8438 0.7812 0 +0.8438 0.7812 0.03125 +0.8438 0.7812 0.0625 +0.8438 0.7812 0.09375 +0.8438 0.7812 0.125 +0.8438 0.7812 0.1562 +0.8438 0.7812 0.1875 +0.8438 0.7812 0.2188 +0.8438 0.7812 0.25 +0.8438 0.7812 0.2812 +0.8438 0.7812 0.3125 +0.8438 0.7812 0.3438 +0.8438 0.7812 0.375 +0.8438 0.7812 0.4062 +0.8438 0.7812 0.4375 +0.8438 0.7812 0.4688 +0.8438 0.7812 0.5 +0.8438 0.7812 0.5312 +0.8438 0.7812 0.5625 +0.8438 0.7812 0.5938 +0.8438 0.7812 0.625 +0.8438 0.7812 0.6562 +0.8438 0.7812 0.6875 +0.8438 0.7812 0.7188 +0.8438 0.7812 0.75 +0.8438 0.7812 0.7812 +0.8438 0.7812 0.8125 +0.8438 0.7812 0.8438 +0.8438 0.7812 0.875 +0.8438 0.7812 0.9062 +0.8438 0.7812 0.9375 +0.8438 0.7812 0.9688 +0.8438 0.7812 1 +0.8438 0.8125 0 +0.8438 0.8125 0.03125 +0.8438 0.8125 0.0625 +0.8438 0.8125 0.09375 +0.8438 0.8125 0.125 +0.8438 0.8125 0.1562 +0.8438 0.8125 0.1875 +0.8438 0.8125 0.2188 +0.8438 0.8125 0.25 +0.8438 0.8125 0.2812 +0.8438 0.8125 0.3125 +0.8438 0.8125 0.3438 +0.8438 0.8125 0.375 +0.8438 0.8125 0.4062 +0.8438 0.8125 0.4375 +0.8438 0.8125 0.4688 +0.8438 0.8125 0.5 +0.8438 0.8125 0.5312 +0.8438 0.8125 0.5625 +0.8438 0.8125 0.5938 +0.8438 0.8125 0.625 +0.8438 0.8125 0.6562 +0.8438 0.8125 0.6875 +0.8438 0.8125 0.7188 +0.8438 0.8125 0.75 +0.8438 0.8125 0.7812 +0.8438 0.8125 0.8125 +0.8438 0.8125 0.8438 +0.8438 0.8125 0.875 +0.8438 0.8125 0.9062 +0.8438 0.8125 0.9375 +0.8438 0.8125 0.9688 +0.8438 0.8125 1 +0.8438 0.8438 0 +0.8438 0.8438 0.03125 +0.8438 0.8438 0.0625 +0.8438 0.8438 0.09375 +0.8438 0.8438 0.125 +0.8438 0.8438 0.1562 +0.8438 0.8438 0.1875 +0.8438 0.8438 0.2188 +0.8438 0.8438 0.25 +0.8438 0.8438 0.2812 +0.8438 0.8438 0.3125 +0.8438 0.8438 0.3438 +0.8438 0.8438 0.375 +0.8438 0.8438 0.4062 +0.8438 0.8438 0.4375 +0.8438 0.8438 0.4688 +0.8438 0.8438 0.5 +0.8438 0.8438 0.5312 +0.8438 0.8438 0.5625 +0.8438 0.8438 0.5938 +0.8438 0.8438 0.625 +0.8438 0.8438 0.6562 +0.8438 0.8438 0.6875 +0.8438 0.8438 0.7188 +0.8438 0.8438 0.75 +0.8438 0.8438 0.7812 +0.8438 0.8438 0.8125 +0.8438 0.8438 0.8438 +0.8438 0.8438 0.875 +0.8438 0.8438 0.9062 +0.8438 0.8438 0.9375 +0.8438 0.8438 0.9688 +0.8438 0.8438 1 +0.8438 0.875 0 +0.8438 0.875 0.03125 +0.8438 0.875 0.0625 +0.8438 0.875 0.09375 +0.8438 0.875 0.125 +0.8438 0.875 0.1562 +0.8438 0.875 0.1875 +0.8438 0.875 0.2188 +0.8438 0.875 0.25 +0.8438 0.875 0.2812 +0.8438 0.875 0.3125 +0.8438 0.875 0.3438 +0.8438 0.875 0.375 +0.8438 0.875 0.4062 +0.8438 0.875 0.4375 +0.8438 0.875 0.4688 +0.8438 0.875 0.5 +0.8438 0.875 0.5312 +0.8438 0.875 0.5625 +0.8438 0.875 0.5938 +0.8438 0.875 0.625 +0.8438 0.875 0.6562 +0.8438 0.875 0.6875 +0.8438 0.875 0.7188 +0.8438 0.875 0.75 +0.8438 0.875 0.7812 +0.8438 0.875 0.8125 +0.8438 0.875 0.8438 +0.8438 0.875 0.875 +0.8438 0.875 0.9062 +0.8438 0.875 0.9375 +0.8438 0.875 0.9688 +0.8438 0.875 1 +0.8438 0.9062 0 +0.8438 0.9062 0.03125 +0.8438 0.9062 0.0625 +0.8438 0.9062 0.09375 +0.8438 0.9062 0.125 +0.8438 0.9062 0.1562 +0.8438 0.9062 0.1875 +0.8438 0.9062 0.2188 +0.8438 0.9062 0.25 +0.8438 0.9062 0.2812 +0.8438 0.9062 0.3125 +0.8438 0.9062 0.3438 +0.8438 0.9062 0.375 +0.8438 0.9062 0.4062 +0.8438 0.9062 0.4375 +0.8438 0.9062 0.4688 +0.8438 0.9062 0.5 +0.8438 0.9062 0.5312 +0.8438 0.9062 0.5625 +0.8438 0.9062 0.5938 +0.8438 0.9062 0.625 +0.8438 0.9062 0.6562 +0.8438 0.9062 0.6875 +0.8438 0.9062 0.7188 +0.8438 0.9062 0.75 +0.8438 0.9062 0.7812 +0.8438 0.9062 0.8125 +0.8438 0.9062 0.8438 +0.8438 0.9062 0.875 +0.8438 0.9062 0.9062 +0.8438 0.9062 0.9375 +0.8438 0.9062 0.9688 +0.8438 0.9062 1 +0.8438 0.9375 0 +0.8438 0.9375 0.03125 +0.8438 0.9375 0.0625 +0.8438 0.9375 0.09375 +0.8438 0.9375 0.125 +0.8438 0.9375 0.1562 +0.8438 0.9375 0.1875 +0.8438 0.9375 0.2188 +0.8438 0.9375 0.25 +0.8438 0.9375 0.2812 +0.8438 0.9375 0.3125 +0.8438 0.9375 0.3438 +0.8438 0.9375 0.375 +0.8438 0.9375 0.4062 +0.8438 0.9375 0.4375 +0.8438 0.9375 0.4688 +0.8438 0.9375 0.5 +0.8438 0.9375 0.5312 +0.8438 0.9375 0.5625 +0.8438 0.9375 0.5938 +0.8438 0.9375 0.625 +0.8438 0.9375 0.6562 +0.8438 0.9375 0.6875 +0.8438 0.9375 0.7188 +0.8438 0.9375 0.75 +0.8438 0.9375 0.7812 +0.8438 0.9375 0.8125 +0.8438 0.9375 0.8438 +0.8438 0.9375 0.875 +0.8438 0.9375 0.9062 +0.8438 0.9375 0.9375 +0.8438 0.9375 0.9688 +0.8438 0.9375 1 +0.8438 0.9688 0 +0.8438 0.9688 0.03125 +0.8438 0.9688 0.0625 +0.8438 0.9688 0.09375 +0.8438 0.9688 0.125 +0.8438 0.9688 0.1562 +0.8438 0.9688 0.1875 +0.8438 0.9688 0.2188 +0.8438 0.9688 0.25 +0.8438 0.9688 0.2812 +0.8438 0.9688 0.3125 +0.8438 0.9688 0.3438 +0.8438 0.9688 0.375 +0.8438 0.9688 0.4062 +0.8438 0.9688 0.4375 +0.8438 0.9688 0.4688 +0.8438 0.9688 0.5 +0.8438 0.9688 0.5312 +0.8438 0.9688 0.5625 +0.8438 0.9688 0.5938 +0.8438 0.9688 0.625 +0.8438 0.9688 0.6562 +0.8438 0.9688 0.6875 +0.8438 0.9688 0.7188 +0.8438 0.9688 0.75 +0.8438 0.9688 0.7812 +0.8438 0.9688 0.8125 +0.8438 0.9688 0.8438 +0.8438 0.9688 0.875 +0.8438 0.9688 0.9062 +0.8438 0.9688 0.9375 +0.8438 0.9688 0.9688 +0.8438 0.9688 1 +0.8438 1 0 +0.8438 1 0.03125 +0.8438 1 0.0625 +0.8438 1 0.09375 +0.8438 1 0.125 +0.8438 1 0.1562 +0.8438 1 0.1875 +0.8438 1 0.2188 +0.8438 1 0.25 +0.8438 1 0.2812 +0.8438 1 0.3125 +0.8438 1 0.3438 +0.8438 1 0.375 +0.8438 1 0.4062 +0.8438 1 0.4375 +0.8438 1 0.4688 +0.8438 1 0.5 +0.8438 1 0.5312 +0.8438 1 0.5625 +0.8438 1 0.5938 +0.8438 1 0.625 +0.8438 1 0.6562 +0.8438 1 0.6875 +0.8438 1 0.7188 +0.8438 1 0.75 +0.8438 1 0.7812 +0.8438 1 0.8125 +0.8438 1 0.8438 +0.8438 1 0.875 +0.8438 1 0.9062 +0.8438 1 0.9375 +0.8438 1 0.9688 +0.8438 1 1 +0.875 0 0 +0.875 0 0.03125 +0.875 0 0.0625 +0.875 0 0.09375 +0.875 0 0.125 +0.875 0 0.1562 +0.875 0 0.1875 +0.875 0 0.2188 +0.875 0 0.25 +0.875 0 0.2812 +0.875 0 0.3125 +0.875 0 0.3438 +0.875 0 0.375 +0.875 0 0.4062 +0.875 0 0.4375 +0.875 0 0.4688 +0.875 0 0.5 +0.875 0 0.5312 +0.875 0 0.5625 +0.875 0 0.5938 +0.875 0 0.625 +0.875 0 0.6562 +0.875 0 0.6875 +0.875 0 0.7188 +0.875 0 0.75 +0.875 0 0.7812 +0.875 0 0.8125 +0.875 0 0.8438 +0.875 0 0.875 +0.875 0 0.9062 +0.875 0 0.9375 +0.875 0 0.9688 +0.875 0 1 +0.875 0.03125 0 +0.875 0.03125 0.03125 +0.875 0.03125 0.0625 +0.875 0.03125 0.09375 +0.875 0.03125 0.125 +0.875 0.03125 0.1562 +0.875 0.03125 0.1875 +0.875 0.03125 0.2188 +0.875 0.03125 0.25 +0.875 0.03125 0.2812 +0.875 0.03125 0.3125 +0.875 0.03125 0.3438 +0.875 0.03125 0.375 +0.875 0.03125 0.4062 +0.875 0.03125 0.4375 +0.875 0.03125 0.4688 +0.875 0.03125 0.5 +0.875 0.03125 0.5312 +0.875 0.03125 0.5625 +0.875 0.03125 0.5938 +0.875 0.03125 0.625 +0.875 0.03125 0.6562 +0.875 0.03125 0.6875 +0.875 0.03125 0.7188 +0.875 0.03125 0.75 +0.875 0.03125 0.7812 +0.875 0.03125 0.8125 +0.875 0.03125 0.8438 +0.875 0.03125 0.875 +0.875 0.03125 0.9062 +0.875 0.03125 0.9375 +0.875 0.03125 0.9688 +0.875 0.03125 1 +0.875 0.0625 0 +0.875 0.0625 0.03125 +0.875 0.0625 0.0625 +0.875 0.0625 0.09375 +0.875 0.0625 0.125 +0.875 0.0625 0.1562 +0.875 0.0625 0.1875 +0.875 0.0625 0.2188 +0.875 0.0625 0.25 +0.875 0.0625 0.2812 +0.875 0.0625 0.3125 +0.875 0.0625 0.3438 +0.875 0.0625 0.375 +0.875 0.0625 0.4062 +0.875 0.0625 0.4375 +0.875 0.0625 0.4688 +0.875 0.0625 0.5 +0.875 0.0625 0.5312 +0.875 0.0625 0.5625 +0.875 0.0625 0.5938 +0.875 0.0625 0.625 +0.875 0.0625 0.6562 +0.875 0.0625 0.6875 +0.875 0.0625 0.7188 +0.875 0.0625 0.75 +0.875 0.0625 0.7812 +0.875 0.0625 0.8125 +0.875 0.0625 0.8438 +0.875 0.0625 0.875 +0.875 0.0625 0.9062 +0.875 0.0625 0.9375 +0.875 0.0625 0.9688 +0.875 0.0625 1 +0.875 0.09375 0 +0.875 0.09375 0.03125 +0.875 0.09375 0.0625 +0.875 0.09375 0.09375 +0.875 0.09375 0.125 +0.875 0.09375 0.1562 +0.875 0.09375 0.1875 +0.875 0.09375 0.2188 +0.875 0.09375 0.25 +0.875 0.09375 0.2812 +0.875 0.09375 0.3125 +0.875 0.09375 0.3438 +0.875 0.09375 0.375 +0.875 0.09375 0.4062 +0.875 0.09375 0.4375 +0.875 0.09375 0.4688 +0.875 0.09375 0.5 +0.875 0.09375 0.5312 +0.875 0.09375 0.5625 +0.875 0.09375 0.5938 +0.875 0.09375 0.625 +0.875 0.09375 0.6562 +0.875 0.09375 0.6875 +0.875 0.09375 0.7188 +0.875 0.09375 0.75 +0.875 0.09375 0.7812 +0.875 0.09375 0.8125 +0.875 0.09375 0.8438 +0.875 0.09375 0.875 +0.875 0.09375 0.9062 +0.875 0.09375 0.9375 +0.875 0.09375 0.9688 +0.875 0.09375 1 +0.875 0.125 0 +0.875 0.125 0.03125 +0.875 0.125 0.0625 +0.875 0.125 0.09375 +0.875 0.125 0.125 +0.875 0.125 0.1562 +0.875 0.125 0.1875 +0.875 0.125 0.2188 +0.875 0.125 0.25 +0.875 0.125 0.2812 +0.875 0.125 0.3125 +0.875 0.125 0.3438 +0.875 0.125 0.375 +0.875 0.125 0.4062 +0.875 0.125 0.4375 +0.875 0.125 0.4688 +0.875 0.125 0.5 +0.875 0.125 0.5312 +0.875 0.125 0.5625 +0.875 0.125 0.5938 +0.875 0.125 0.625 +0.875 0.125 0.6562 +0.875 0.125 0.6875 +0.875 0.125 0.7188 +0.875 0.125 0.75 +0.875 0.125 0.7812 +0.875 0.125 0.8125 +0.875 0.125 0.8438 +0.875 0.125 0.875 +0.875 0.125 0.9062 +0.875 0.125 0.9375 +0.875 0.125 0.9688 +0.875 0.125 1 +0.875 0.1562 0 +0.875 0.1562 0.03125 +0.875 0.1562 0.0625 +0.875 0.1562 0.09375 +0.875 0.1562 0.125 +0.875 0.1562 0.1562 +0.875 0.1562 0.1875 +0.875 0.1562 0.2188 +0.875 0.1562 0.25 +0.875 0.1562 0.2812 +0.875 0.1562 0.3125 +0.875 0.1562 0.3438 +0.875 0.1562 0.375 +0.875 0.1562 0.4062 +0.875 0.1562 0.4375 +0.875 0.1562 0.4688 +0.875 0.1562 0.5 +0.875 0.1562 0.5312 +0.875 0.1562 0.5625 +0.875 0.1562 0.5938 +0.875 0.1562 0.625 +0.875 0.1562 0.6562 +0.875 0.1562 0.6875 +0.875 0.1562 0.7188 +0.875 0.1562 0.75 +0.875 0.1562 0.7812 +0.875 0.1562 0.8125 +0.875 0.1562 0.8438 +0.875 0.1562 0.875 +0.875 0.1562 0.9062 +0.875 0.1562 0.9375 +0.875 0.1562 0.9688 +0.875 0.1562 1 +0.875 0.1875 0 +0.875 0.1875 0.03125 +0.875 0.1875 0.0625 +0.875 0.1875 0.09375 +0.875 0.1875 0.125 +0.875 0.1875 0.1562 +0.875 0.1875 0.1875 +0.875 0.1875 0.2188 +0.875 0.1875 0.25 +0.875 0.1875 0.2812 +0.875 0.1875 0.3125 +0.875 0.1875 0.3438 +0.875 0.1875 0.375 +0.875 0.1875 0.4062 +0.875 0.1875 0.4375 +0.875 0.1875 0.4688 +0.875 0.1875 0.5 +0.875 0.1875 0.5312 +0.875 0.1875 0.5625 +0.875 0.1875 0.5938 +0.875 0.1875 0.625 +0.875 0.1875 0.6562 +0.875 0.1875 0.6875 +0.875 0.1875 0.7188 +0.875 0.1875 0.75 +0.875 0.1875 0.7812 +0.875 0.1875 0.8125 +0.875 0.1875 0.8438 +0.875 0.1875 0.875 +0.875 0.1875 0.9062 +0.875 0.1875 0.9375 +0.875 0.1875 0.9688 +0.875 0.1875 1 +0.875 0.2188 0 +0.875 0.2188 0.03125 +0.875 0.2188 0.0625 +0.875 0.2188 0.09375 +0.875 0.2188 0.125 +0.875 0.2188 0.1562 +0.875 0.2188 0.1875 +0.875 0.2188 0.2188 +0.875 0.2188 0.25 +0.875 0.2188 0.2812 +0.875 0.2188 0.3125 +0.875 0.2188 0.3438 +0.875 0.2188 0.375 +0.875 0.2188 0.4062 +0.875 0.2188 0.4375 +0.875 0.2188 0.4688 +0.875 0.2188 0.5 +0.875 0.2188 0.5312 +0.875 0.2188 0.5625 +0.875 0.2188 0.5938 +0.875 0.2188 0.625 +0.875 0.2188 0.6562 +0.875 0.2188 0.6875 +0.875 0.2188 0.7188 +0.875 0.2188 0.75 +0.875 0.2188 0.7812 +0.875 0.2188 0.8125 +0.875 0.2188 0.8438 +0.875 0.2188 0.875 +0.875 0.2188 0.9062 +0.875 0.2188 0.9375 +0.875 0.2188 0.9688 +0.875 0.2188 1 +0.875 0.25 0 +0.875 0.25 0.03125 +0.875 0.25 0.0625 +0.875 0.25 0.09375 +0.875 0.25 0.125 +0.875 0.25 0.1562 +0.875 0.25 0.1875 +0.875 0.25 0.2188 +0.875 0.25 0.25 +0.875 0.25 0.2812 +0.875 0.25 0.3125 +0.875 0.25 0.3438 +0.875 0.25 0.375 +0.875 0.25 0.4062 +0.875 0.25 0.4375 +0.875 0.25 0.4688 +0.875 0.25 0.5 +0.875 0.25 0.5312 +0.875 0.25 0.5625 +0.875 0.25 0.5938 +0.875 0.25 0.625 +0.875 0.25 0.6562 +0.875 0.25 0.6875 +0.875 0.25 0.7188 +0.875 0.25 0.75 +0.875 0.25 0.7812 +0.875 0.25 0.8125 +0.875 0.25 0.8438 +0.875 0.25 0.875 +0.875 0.25 0.9062 +0.875 0.25 0.9375 +0.875 0.25 0.9688 +0.875 0.25 1 +0.875 0.2812 0 +0.875 0.2812 0.03125 +0.875 0.2812 0.0625 +0.875 0.2812 0.09375 +0.875 0.2812 0.125 +0.875 0.2812 0.1562 +0.875 0.2812 0.1875 +0.875 0.2812 0.2188 +0.875 0.2812 0.25 +0.875 0.2812 0.2812 +0.875 0.2812 0.3125 +0.875 0.2812 0.3438 +0.875 0.2812 0.375 +0.875 0.2812 0.4062 +0.875 0.2812 0.4375 +0.875 0.2812 0.4688 +0.875 0.2812 0.5 +0.875 0.2812 0.5312 +0.875 0.2812 0.5625 +0.875 0.2812 0.5938 +0.875 0.2812 0.625 +0.875 0.2812 0.6562 +0.875 0.2812 0.6875 +0.875 0.2812 0.7188 +0.875 0.2812 0.75 +0.875 0.2812 0.7812 +0.875 0.2812 0.8125 +0.875 0.2812 0.8438 +0.875 0.2812 0.875 +0.875 0.2812 0.9062 +0.875 0.2812 0.9375 +0.875 0.2812 0.9688 +0.875 0.2812 1 +0.875 0.3125 0 +0.875 0.3125 0.03125 +0.875 0.3125 0.0625 +0.875 0.3125 0.09375 +0.875 0.3125 0.125 +0.875 0.3125 0.1562 +0.875 0.3125 0.1875 +0.875 0.3125 0.2188 +0.875 0.3125 0.25 +0.875 0.3125 0.2812 +0.875 0.3125 0.3125 +0.875 0.3125 0.3438 +0.875 0.3125 0.375 +0.875 0.3125 0.4062 +0.875 0.3125 0.4375 +0.875 0.3125 0.4688 +0.875 0.3125 0.5 +0.875 0.3125 0.5312 +0.875 0.3125 0.5625 +0.875 0.3125 0.5938 +0.875 0.3125 0.625 +0.875 0.3125 0.6562 +0.875 0.3125 0.6875 +0.875 0.3125 0.7188 +0.875 0.3125 0.75 +0.875 0.3125 0.7812 +0.875 0.3125 0.8125 +0.875 0.3125 0.8438 +0.875 0.3125 0.875 +0.875 0.3125 0.9062 +0.875 0.3125 0.9375 +0.875 0.3125 0.9688 +0.875 0.3125 1 +0.875 0.3438 0 +0.875 0.3438 0.03125 +0.875 0.3438 0.0625 +0.875 0.3438 0.09375 +0.875 0.3438 0.125 +0.875 0.3438 0.1562 +0.875 0.3438 0.1875 +0.875 0.3438 0.2188 +0.875 0.3438 0.25 +0.875 0.3438 0.2812 +0.875 0.3438 0.3125 +0.875 0.3438 0.3438 +0.875 0.3438 0.375 +0.875 0.3438 0.4062 +0.875 0.3438 0.4375 +0.875 0.3438 0.4688 +0.875 0.3438 0.5 +0.875 0.3438 0.5312 +0.875 0.3438 0.5625 +0.875 0.3438 0.5938 +0.875 0.3438 0.625 +0.875 0.3438 0.6562 +0.875 0.3438 0.6875 +0.875 0.3438 0.7188 +0.875 0.3438 0.75 +0.875 0.3438 0.7812 +0.875 0.3438 0.8125 +0.875 0.3438 0.8438 +0.875 0.3438 0.875 +0.875 0.3438 0.9062 +0.875 0.3438 0.9375 +0.875 0.3438 0.9688 +0.875 0.3438 1 +0.875 0.375 0 +0.875 0.375 0.03125 +0.875 0.375 0.0625 +0.875 0.375 0.09375 +0.875 0.375 0.125 +0.875 0.375 0.1562 +0.875 0.375 0.1875 +0.875 0.375 0.2188 +0.875 0.375 0.25 +0.875 0.375 0.2812 +0.875 0.375 0.3125 +0.875 0.375 0.3438 +0.875 0.375 0.375 +0.875 0.375 0.4062 +0.875 0.375 0.4375 +0.875 0.375 0.4688 +0.875 0.375 0.5 +0.875 0.375 0.5312 +0.875 0.375 0.5625 +0.875 0.375 0.5938 +0.875 0.375 0.625 +0.875 0.375 0.6562 +0.875 0.375 0.6875 +0.875 0.375 0.7188 +0.875 0.375 0.75 +0.875 0.375 0.7812 +0.875 0.375 0.8125 +0.875 0.375 0.8438 +0.875 0.375 0.875 +0.875 0.375 0.9062 +0.875 0.375 0.9375 +0.875 0.375 0.9688 +0.875 0.375 1 +0.875 0.4062 0 +0.875 0.4062 0.03125 +0.875 0.4062 0.0625 +0.875 0.4062 0.09375 +0.875 0.4062 0.125 +0.875 0.4062 0.1562 +0.875 0.4062 0.1875 +0.875 0.4062 0.2188 +0.875 0.4062 0.25 +0.875 0.4062 0.2812 +0.875 0.4062 0.3125 +0.875 0.4062 0.3438 +0.875 0.4062 0.375 +0.875 0.4062 0.4062 +0.875 0.4062 0.4375 +0.875 0.4062 0.4688 +0.875 0.4062 0.5 +0.875 0.4062 0.5312 +0.875 0.4062 0.5625 +0.875 0.4062 0.5938 +0.875 0.4062 0.625 +0.875 0.4062 0.6562 +0.875 0.4062 0.6875 +0.875 0.4062 0.7188 +0.875 0.4062 0.75 +0.875 0.4062 0.7812 +0.875 0.4062 0.8125 +0.875 0.4062 0.8438 +0.875 0.4062 0.875 +0.875 0.4062 0.9062 +0.875 0.4062 0.9375 +0.875 0.4062 0.9688 +0.875 0.4062 1 +0.875 0.4375 0 +0.875 0.4375 0.03125 +0.875 0.4375 0.0625 +0.875 0.4375 0.09375 +0.875 0.4375 0.125 +0.875 0.4375 0.1562 +0.875 0.4375 0.1875 +0.875 0.4375 0.2188 +0.875 0.4375 0.25 +0.875 0.4375 0.2812 +0.875 0.4375 0.3125 +0.875 0.4375 0.3438 +0.875 0.4375 0.375 +0.875 0.4375 0.4062 +0.875 0.4375 0.4375 +0.875 0.4375 0.4688 +0.875 0.4375 0.5 +0.875 0.4375 0.5312 +0.875 0.4375 0.5625 +0.875 0.4375 0.5938 +0.875 0.4375 0.625 +0.875 0.4375 0.6562 +0.875 0.4375 0.6875 +0.875 0.4375 0.7188 +0.875 0.4375 0.75 +0.875 0.4375 0.7812 +0.875 0.4375 0.8125 +0.875 0.4375 0.8438 +0.875 0.4375 0.875 +0.875 0.4375 0.9062 +0.875 0.4375 0.9375 +0.875 0.4375 0.9688 +0.875 0.4375 1 +0.875 0.4688 0 +0.875 0.4688 0.03125 +0.875 0.4688 0.0625 +0.875 0.4688 0.09375 +0.875 0.4688 0.125 +0.875 0.4688 0.1562 +0.875 0.4688 0.1875 +0.875 0.4688 0.2188 +0.875 0.4688 0.25 +0.875 0.4688 0.2812 +0.875 0.4688 0.3125 +0.875 0.4688 0.3438 +0.875 0.4688 0.375 +0.875 0.4688 0.4062 +0.875 0.4688 0.4375 +0.875 0.4688 0.4688 +0.875 0.4688 0.5 +0.875 0.4688 0.5312 +0.875 0.4688 0.5625 +0.875 0.4688 0.5938 +0.875 0.4688 0.625 +0.875 0.4688 0.6562 +0.875 0.4688 0.6875 +0.875 0.4688 0.7188 +0.875 0.4688 0.75 +0.875 0.4688 0.7812 +0.875 0.4688 0.8125 +0.875 0.4688 0.8438 +0.875 0.4688 0.875 +0.875 0.4688 0.9062 +0.875 0.4688 0.9375 +0.875 0.4688 0.9688 +0.875 0.4688 1 +0.875 0.5 0 +0.875 0.5 0.03125 +0.875 0.5 0.0625 +0.875 0.5 0.09375 +0.875 0.5 0.125 +0.875 0.5 0.1562 +0.875 0.5 0.1875 +0.875 0.5 0.2188 +0.875 0.5 0.25 +0.875 0.5 0.2812 +0.875 0.5 0.3125 +0.875 0.5 0.3438 +0.875 0.5 0.375 +0.875 0.5 0.4062 +0.875 0.5 0.4375 +0.875 0.5 0.4688 +0.875 0.5 0.5 +0.875 0.5 0.5312 +0.875 0.5 0.5625 +0.875 0.5 0.5938 +0.875 0.5 0.625 +0.875 0.5 0.6562 +0.875 0.5 0.6875 +0.875 0.5 0.7188 +0.875 0.5 0.75 +0.875 0.5 0.7812 +0.875 0.5 0.8125 +0.875 0.5 0.8438 +0.875 0.5 0.875 +0.875 0.5 0.9062 +0.875 0.5 0.9375 +0.875 0.5 0.9688 +0.875 0.5 1 +0.875 0.5312 0 +0.875 0.5312 0.03125 +0.875 0.5312 0.0625 +0.875 0.5312 0.09375 +0.875 0.5312 0.125 +0.875 0.5312 0.1562 +0.875 0.5312 0.1875 +0.875 0.5312 0.2188 +0.875 0.5312 0.25 +0.875 0.5312 0.2812 +0.875 0.5312 0.3125 +0.875 0.5312 0.3438 +0.875 0.5312 0.375 +0.875 0.5312 0.4062 +0.875 0.5312 0.4375 +0.875 0.5312 0.4688 +0.875 0.5312 0.5 +0.875 0.5312 0.5312 +0.875 0.5312 0.5625 +0.875 0.5312 0.5938 +0.875 0.5312 0.625 +0.875 0.5312 0.6562 +0.875 0.5312 0.6875 +0.875 0.5312 0.7188 +0.875 0.5312 0.75 +0.875 0.5312 0.7812 +0.875 0.5312 0.8125 +0.875 0.5312 0.8438 +0.875 0.5312 0.875 +0.875 0.5312 0.9062 +0.875 0.5312 0.9375 +0.875 0.5312 0.9688 +0.875 0.5312 1 +0.875 0.5625 0 +0.875 0.5625 0.03125 +0.875 0.5625 0.0625 +0.875 0.5625 0.09375 +0.875 0.5625 0.125 +0.875 0.5625 0.1562 +0.875 0.5625 0.1875 +0.875 0.5625 0.2188 +0.875 0.5625 0.25 +0.875 0.5625 0.2812 +0.875 0.5625 0.3125 +0.875 0.5625 0.3438 +0.875 0.5625 0.375 +0.875 0.5625 0.4062 +0.875 0.5625 0.4375 +0.875 0.5625 0.4688 +0.875 0.5625 0.5 +0.875 0.5625 0.5312 +0.875 0.5625 0.5625 +0.875 0.5625 0.5938 +0.875 0.5625 0.625 +0.875 0.5625 0.6562 +0.875 0.5625 0.6875 +0.875 0.5625 0.7188 +0.875 0.5625 0.75 +0.875 0.5625 0.7812 +0.875 0.5625 0.8125 +0.875 0.5625 0.8438 +0.875 0.5625 0.875 +0.875 0.5625 0.9062 +0.875 0.5625 0.9375 +0.875 0.5625 0.9688 +0.875 0.5625 1 +0.875 0.5938 0 +0.875 0.5938 0.03125 +0.875 0.5938 0.0625 +0.875 0.5938 0.09375 +0.875 0.5938 0.125 +0.875 0.5938 0.1562 +0.875 0.5938 0.1875 +0.875 0.5938 0.2188 +0.875 0.5938 0.25 +0.875 0.5938 0.2812 +0.875 0.5938 0.3125 +0.875 0.5938 0.3438 +0.875 0.5938 0.375 +0.875 0.5938 0.4062 +0.875 0.5938 0.4375 +0.875 0.5938 0.4688 +0.875 0.5938 0.5 +0.875 0.5938 0.5312 +0.875 0.5938 0.5625 +0.875 0.5938 0.5938 +0.875 0.5938 0.625 +0.875 0.5938 0.6562 +0.875 0.5938 0.6875 +0.875 0.5938 0.7188 +0.875 0.5938 0.75 +0.875 0.5938 0.7812 +0.875 0.5938 0.8125 +0.875 0.5938 0.8438 +0.875 0.5938 0.875 +0.875 0.5938 0.9062 +0.875 0.5938 0.9375 +0.875 0.5938 0.9688 +0.875 0.5938 1 +0.875 0.625 0 +0.875 0.625 0.03125 +0.875 0.625 0.0625 +0.875 0.625 0.09375 +0.875 0.625 0.125 +0.875 0.625 0.1562 +0.875 0.625 0.1875 +0.875 0.625 0.2188 +0.875 0.625 0.25 +0.875 0.625 0.2812 +0.875 0.625 0.3125 +0.875 0.625 0.3438 +0.875 0.625 0.375 +0.875 0.625 0.4062 +0.875 0.625 0.4375 +0.875 0.625 0.4688 +0.875 0.625 0.5 +0.875 0.625 0.5312 +0.875 0.625 0.5625 +0.875 0.625 0.5938 +0.875 0.625 0.625 +0.875 0.625 0.6562 +0.875 0.625 0.6875 +0.875 0.625 0.7188 +0.875 0.625 0.75 +0.875 0.625 0.7812 +0.875 0.625 0.8125 +0.875 0.625 0.8438 +0.875 0.625 0.875 +0.875 0.625 0.9062 +0.875 0.625 0.9375 +0.875 0.625 0.9688 +0.875 0.625 1 +0.875 0.6562 0 +0.875 0.6562 0.03125 +0.875 0.6562 0.0625 +0.875 0.6562 0.09375 +0.875 0.6562 0.125 +0.875 0.6562 0.1562 +0.875 0.6562 0.1875 +0.875 0.6562 0.2188 +0.875 0.6562 0.25 +0.875 0.6562 0.2812 +0.875 0.6562 0.3125 +0.875 0.6562 0.3438 +0.875 0.6562 0.375 +0.875 0.6562 0.4062 +0.875 0.6562 0.4375 +0.875 0.6562 0.4688 +0.875 0.6562 0.5 +0.875 0.6562 0.5312 +0.875 0.6562 0.5625 +0.875 0.6562 0.5938 +0.875 0.6562 0.625 +0.875 0.6562 0.6562 +0.875 0.6562 0.6875 +0.875 0.6562 0.7188 +0.875 0.6562 0.75 +0.875 0.6562 0.7812 +0.875 0.6562 0.8125 +0.875 0.6562 0.8438 +0.875 0.6562 0.875 +0.875 0.6562 0.9062 +0.875 0.6562 0.9375 +0.875 0.6562 0.9688 +0.875 0.6562 1 +0.875 0.6875 0 +0.875 0.6875 0.03125 +0.875 0.6875 0.0625 +0.875 0.6875 0.09375 +0.875 0.6875 0.125 +0.875 0.6875 0.1562 +0.875 0.6875 0.1875 +0.875 0.6875 0.2188 +0.875 0.6875 0.25 +0.875 0.6875 0.2812 +0.875 0.6875 0.3125 +0.875 0.6875 0.3438 +0.875 0.6875 0.375 +0.875 0.6875 0.4062 +0.875 0.6875 0.4375 +0.875 0.6875 0.4688 +0.875 0.6875 0.5 +0.875 0.6875 0.5312 +0.875 0.6875 0.5625 +0.875 0.6875 0.5938 +0.875 0.6875 0.625 +0.875 0.6875 0.6562 +0.875 0.6875 0.6875 +0.875 0.6875 0.7188 +0.875 0.6875 0.75 +0.875 0.6875 0.7812 +0.875 0.6875 0.8125 +0.875 0.6875 0.8438 +0.875 0.6875 0.875 +0.875 0.6875 0.9062 +0.875 0.6875 0.9375 +0.875 0.6875 0.9688 +0.875 0.6875 1 +0.875 0.7188 0 +0.875 0.7188 0.03125 +0.875 0.7188 0.0625 +0.875 0.7188 0.09375 +0.875 0.7188 0.125 +0.875 0.7188 0.1562 +0.875 0.7188 0.1875 +0.875 0.7188 0.2188 +0.875 0.7188 0.25 +0.875 0.7188 0.2812 +0.875 0.7188 0.3125 +0.875 0.7188 0.3438 +0.875 0.7188 0.375 +0.875 0.7188 0.4062 +0.875 0.7188 0.4375 +0.875 0.7188 0.4688 +0.875 0.7188 0.5 +0.875 0.7188 0.5312 +0.875 0.7188 0.5625 +0.875 0.7188 0.5938 +0.875 0.7188 0.625 +0.875 0.7188 0.6562 +0.875 0.7188 0.6875 +0.875 0.7188 0.7188 +0.875 0.7188 0.75 +0.875 0.7188 0.7812 +0.875 0.7188 0.8125 +0.875 0.7188 0.8438 +0.875 0.7188 0.875 +0.875 0.7188 0.9062 +0.875 0.7188 0.9375 +0.875 0.7188 0.9688 +0.875 0.7188 1 +0.875 0.75 0 +0.875 0.75 0.03125 +0.875 0.75 0.0625 +0.875 0.75 0.09375 +0.875 0.75 0.125 +0.875 0.75 0.1562 +0.875 0.75 0.1875 +0.875 0.75 0.2188 +0.875 0.75 0.25 +0.875 0.75 0.2812 +0.875 0.75 0.3125 +0.875 0.75 0.3438 +0.875 0.75 0.375 +0.875 0.75 0.4062 +0.875 0.75 0.4375 +0.875 0.75 0.4688 +0.875 0.75 0.5 +0.875 0.75 0.5312 +0.875 0.75 0.5625 +0.875 0.75 0.5938 +0.875 0.75 0.625 +0.875 0.75 0.6562 +0.875 0.75 0.6875 +0.875 0.75 0.7188 +0.875 0.75 0.75 +0.875 0.75 0.7812 +0.875 0.75 0.8125 +0.875 0.75 0.8438 +0.875 0.75 0.875 +0.875 0.75 0.9062 +0.875 0.75 0.9375 +0.875 0.75 0.9688 +0.875 0.75 1 +0.875 0.7812 0 +0.875 0.7812 0.03125 +0.875 0.7812 0.0625 +0.875 0.7812 0.09375 +0.875 0.7812 0.125 +0.875 0.7812 0.1562 +0.875 0.7812 0.1875 +0.875 0.7812 0.2188 +0.875 0.7812 0.25 +0.875 0.7812 0.2812 +0.875 0.7812 0.3125 +0.875 0.7812 0.3438 +0.875 0.7812 0.375 +0.875 0.7812 0.4062 +0.875 0.7812 0.4375 +0.875 0.7812 0.4688 +0.875 0.7812 0.5 +0.875 0.7812 0.5312 +0.875 0.7812 0.5625 +0.875 0.7812 0.5938 +0.875 0.7812 0.625 +0.875 0.7812 0.6562 +0.875 0.7812 0.6875 +0.875 0.7812 0.7188 +0.875 0.7812 0.75 +0.875 0.7812 0.7812 +0.875 0.7812 0.8125 +0.875 0.7812 0.8438 +0.875 0.7812 0.875 +0.875 0.7812 0.9062 +0.875 0.7812 0.9375 +0.875 0.7812 0.9688 +0.875 0.7812 1 +0.875 0.8125 0 +0.875 0.8125 0.03125 +0.875 0.8125 0.0625 +0.875 0.8125 0.09375 +0.875 0.8125 0.125 +0.875 0.8125 0.1562 +0.875 0.8125 0.1875 +0.875 0.8125 0.2188 +0.875 0.8125 0.25 +0.875 0.8125 0.2812 +0.875 0.8125 0.3125 +0.875 0.8125 0.3438 +0.875 0.8125 0.375 +0.875 0.8125 0.4062 +0.875 0.8125 0.4375 +0.875 0.8125 0.4688 +0.875 0.8125 0.5 +0.875 0.8125 0.5312 +0.875 0.8125 0.5625 +0.875 0.8125 0.5938 +0.875 0.8125 0.625 +0.875 0.8125 0.6562 +0.875 0.8125 0.6875 +0.875 0.8125 0.7188 +0.875 0.8125 0.75 +0.875 0.8125 0.7812 +0.875 0.8125 0.8125 +0.875 0.8125 0.8438 +0.875 0.8125 0.875 +0.875 0.8125 0.9062 +0.875 0.8125 0.9375 +0.875 0.8125 0.9688 +0.875 0.8125 1 +0.875 0.8438 0 +0.875 0.8438 0.03125 +0.875 0.8438 0.0625 +0.875 0.8438 0.09375 +0.875 0.8438 0.125 +0.875 0.8438 0.1562 +0.875 0.8438 0.1875 +0.875 0.8438 0.2188 +0.875 0.8438 0.25 +0.875 0.8438 0.2812 +0.875 0.8438 0.3125 +0.875 0.8438 0.3438 +0.875 0.8438 0.375 +0.875 0.8438 0.4062 +0.875 0.8438 0.4375 +0.875 0.8438 0.4688 +0.875 0.8438 0.5 +0.875 0.8438 0.5312 +0.875 0.8438 0.5625 +0.875 0.8438 0.5938 +0.875 0.8438 0.625 +0.875 0.8438 0.6562 +0.875 0.8438 0.6875 +0.875 0.8438 0.7188 +0.875 0.8438 0.75 +0.875 0.8438 0.7812 +0.875 0.8438 0.8125 +0.875 0.8438 0.8438 +0.875 0.8438 0.875 +0.875 0.8438 0.9062 +0.875 0.8438 0.9375 +0.875 0.8438 0.9688 +0.875 0.8438 1 +0.875 0.875 0 +0.875 0.875 0.03125 +0.875 0.875 0.0625 +0.875 0.875 0.09375 +0.875 0.875 0.125 +0.875 0.875 0.1562 +0.875 0.875 0.1875 +0.875 0.875 0.2188 +0.875 0.875 0.25 +0.875 0.875 0.2812 +0.875 0.875 0.3125 +0.875 0.875 0.3438 +0.875 0.875 0.375 +0.875 0.875 0.4062 +0.875 0.875 0.4375 +0.875 0.875 0.4688 +0.875 0.875 0.5 +0.875 0.875 0.5312 +0.875 0.875 0.5625 +0.875 0.875 0.5938 +0.875 0.875 0.625 +0.875 0.875 0.6562 +0.875 0.875 0.6875 +0.875 0.875 0.7188 +0.875 0.875 0.75 +0.875 0.875 0.7812 +0.875 0.875 0.8125 +0.875 0.875 0.8438 +0.875 0.875 0.875 +0.875 0.875 0.9062 +0.875 0.875 0.9375 +0.875 0.875 0.9688 +0.875 0.875 1 +0.875 0.9062 0 +0.875 0.9062 0.03125 +0.875 0.9062 0.0625 +0.875 0.9062 0.09375 +0.875 0.9062 0.125 +0.875 0.9062 0.1562 +0.875 0.9062 0.1875 +0.875 0.9062 0.2188 +0.875 0.9062 0.25 +0.875 0.9062 0.2812 +0.875 0.9062 0.3125 +0.875 0.9062 0.3438 +0.875 0.9062 0.375 +0.875 0.9062 0.4062 +0.875 0.9062 0.4375 +0.875 0.9062 0.4688 +0.875 0.9062 0.5 +0.875 0.9062 0.5312 +0.875 0.9062 0.5625 +0.875 0.9062 0.5938 +0.875 0.9062 0.625 +0.875 0.9062 0.6562 +0.875 0.9062 0.6875 +0.875 0.9062 0.7188 +0.875 0.9062 0.75 +0.875 0.9062 0.7812 +0.875 0.9062 0.8125 +0.875 0.9062 0.8438 +0.875 0.9062 0.875 +0.875 0.9062 0.9062 +0.875 0.9062 0.9375 +0.875 0.9062 0.9688 +0.875 0.9062 1 +0.875 0.9375 0 +0.875 0.9375 0.03125 +0.875 0.9375 0.0625 +0.875 0.9375 0.09375 +0.875 0.9375 0.125 +0.875 0.9375 0.1562 +0.875 0.9375 0.1875 +0.875 0.9375 0.2188 +0.875 0.9375 0.25 +0.875 0.9375 0.2812 +0.875 0.9375 0.3125 +0.875 0.9375 0.3438 +0.875 0.9375 0.375 +0.875 0.9375 0.4062 +0.875 0.9375 0.4375 +0.875 0.9375 0.4688 +0.875 0.9375 0.5 +0.875 0.9375 0.5312 +0.875 0.9375 0.5625 +0.875 0.9375 0.5938 +0.875 0.9375 0.625 +0.875 0.9375 0.6562 +0.875 0.9375 0.6875 +0.875 0.9375 0.7188 +0.875 0.9375 0.75 +0.875 0.9375 0.7812 +0.875 0.9375 0.8125 +0.875 0.9375 0.8438 +0.875 0.9375 0.875 +0.875 0.9375 0.9062 +0.875 0.9375 0.9375 +0.875 0.9375 0.9688 +0.875 0.9375 1 +0.875 0.9688 0 +0.875 0.9688 0.03125 +0.875 0.9688 0.0625 +0.875 0.9688 0.09375 +0.875 0.9688 0.125 +0.875 0.9688 0.1562 +0.875 0.9688 0.1875 +0.875 0.9688 0.2188 +0.875 0.9688 0.25 +0.875 0.9688 0.2812 +0.875 0.9688 0.3125 +0.875 0.9688 0.3438 +0.875 0.9688 0.375 +0.875 0.9688 0.4062 +0.875 0.9688 0.4375 +0.875 0.9688 0.4688 +0.875 0.9688 0.5 +0.875 0.9688 0.5312 +0.875 0.9688 0.5625 +0.875 0.9688 0.5938 +0.875 0.9688 0.625 +0.875 0.9688 0.6562 +0.875 0.9688 0.6875 +0.875 0.9688 0.7188 +0.875 0.9688 0.75 +0.875 0.9688 0.7812 +0.875 0.9688 0.8125 +0.875 0.9688 0.8438 +0.875 0.9688 0.875 +0.875 0.9688 0.9062 +0.875 0.9688 0.9375 +0.875 0.9688 0.9688 +0.875 0.9688 1 +0.875 1 0 +0.875 1 0.03125 +0.875 1 0.0625 +0.875 1 0.09375 +0.875 1 0.125 +0.875 1 0.1562 +0.875 1 0.1875 +0.875 1 0.2188 +0.875 1 0.25 +0.875 1 0.2812 +0.875 1 0.3125 +0.875 1 0.3438 +0.875 1 0.375 +0.875 1 0.4062 +0.875 1 0.4375 +0.875 1 0.4688 +0.875 1 0.5 +0.875 1 0.5312 +0.875 1 0.5625 +0.875 1 0.5938 +0.875 1 0.625 +0.875 1 0.6562 +0.875 1 0.6875 +0.875 1 0.7188 +0.875 1 0.75 +0.875 1 0.7812 +0.875 1 0.8125 +0.875 1 0.8438 +0.875 1 0.875 +0.875 1 0.9062 +0.875 1 0.9375 +0.875 1 0.9688 +0.875 1 1 +0.9062 0 0 +0.9062 0 0.03125 +0.9062 0 0.0625 +0.9062 0 0.09375 +0.9062 0 0.125 +0.9062 0 0.1562 +0.9062 0 0.1875 +0.9062 0 0.2188 +0.9062 0 0.25 +0.9062 0 0.2812 +0.9062 0 0.3125 +0.9062 0 0.3438 +0.9062 0 0.375 +0.9062 0 0.4062 +0.9062 0 0.4375 +0.9062 0 0.4688 +0.9062 0 0.5 +0.9062 0 0.5312 +0.9062 0 0.5625 +0.9062 0 0.5938 +0.9062 0 0.625 +0.9062 0 0.6562 +0.9062 0 0.6875 +0.9062 0 0.7188 +0.9062 0 0.75 +0.9062 0 0.7812 +0.9062 0 0.8125 +0.9062 0 0.8438 +0.9062 0 0.875 +0.9062 0 0.9062 +0.9062 0 0.9375 +0.9062 0 0.9688 +0.9062 0 1 +0.9062 0.03125 0 +0.9062 0.03125 0.03125 +0.9062 0.03125 0.0625 +0.9062 0.03125 0.09375 +0.9062 0.03125 0.125 +0.9062 0.03125 0.1562 +0.9062 0.03125 0.1875 +0.9062 0.03125 0.2188 +0.9062 0.03125 0.25 +0.9062 0.03125 0.2812 +0.9062 0.03125 0.3125 +0.9062 0.03125 0.3438 +0.9062 0.03125 0.375 +0.9062 0.03125 0.4062 +0.9062 0.03125 0.4375 +0.9062 0.03125 0.4688 +0.9062 0.03125 0.5 +0.9062 0.03125 0.5312 +0.9062 0.03125 0.5625 +0.9062 0.03125 0.5938 +0.9062 0.03125 0.625 +0.9062 0.03125 0.6562 +0.9062 0.03125 0.6875 +0.9062 0.03125 0.7188 +0.9062 0.03125 0.75 +0.9062 0.03125 0.7812 +0.9062 0.03125 0.8125 +0.9062 0.03125 0.8438 +0.9062 0.03125 0.875 +0.9062 0.03125 0.9062 +0.9062 0.03125 0.9375 +0.9062 0.03125 0.9688 +0.9062 0.03125 1 +0.9062 0.0625 0 +0.9062 0.0625 0.03125 +0.9062 0.0625 0.0625 +0.9062 0.0625 0.09375 +0.9062 0.0625 0.125 +0.9062 0.0625 0.1562 +0.9062 0.0625 0.1875 +0.9062 0.0625 0.2188 +0.9062 0.0625 0.25 +0.9062 0.0625 0.2812 +0.9062 0.0625 0.3125 +0.9062 0.0625 0.3438 +0.9062 0.0625 0.375 +0.9062 0.0625 0.4062 +0.9062 0.0625 0.4375 +0.9062 0.0625 0.4688 +0.9062 0.0625 0.5 +0.9062 0.0625 0.5312 +0.9062 0.0625 0.5625 +0.9062 0.0625 0.5938 +0.9062 0.0625 0.625 +0.9062 0.0625 0.6562 +0.9062 0.0625 0.6875 +0.9062 0.0625 0.7188 +0.9062 0.0625 0.75 +0.9062 0.0625 0.7812 +0.9062 0.0625 0.8125 +0.9062 0.0625 0.8438 +0.9062 0.0625 0.875 +0.9062 0.0625 0.9062 +0.9062 0.0625 0.9375 +0.9062 0.0625 0.9688 +0.9062 0.0625 1 +0.9062 0.09375 0 +0.9062 0.09375 0.03125 +0.9062 0.09375 0.0625 +0.9062 0.09375 0.09375 +0.9062 0.09375 0.125 +0.9062 0.09375 0.1562 +0.9062 0.09375 0.1875 +0.9062 0.09375 0.2188 +0.9062 0.09375 0.25 +0.9062 0.09375 0.2812 +0.9062 0.09375 0.3125 +0.9062 0.09375 0.3438 +0.9062 0.09375 0.375 +0.9062 0.09375 0.4062 +0.9062 0.09375 0.4375 +0.9062 0.09375 0.4688 +0.9062 0.09375 0.5 +0.9062 0.09375 0.5312 +0.9062 0.09375 0.5625 +0.9062 0.09375 0.5938 +0.9062 0.09375 0.625 +0.9062 0.09375 0.6562 +0.9062 0.09375 0.6875 +0.9062 0.09375 0.7188 +0.9062 0.09375 0.75 +0.9062 0.09375 0.7812 +0.9062 0.09375 0.8125 +0.9062 0.09375 0.8438 +0.9062 0.09375 0.875 +0.9062 0.09375 0.9062 +0.9062 0.09375 0.9375 +0.9062 0.09375 0.9688 +0.9062 0.09375 1 +0.9062 0.125 0 +0.9062 0.125 0.03125 +0.9062 0.125 0.0625 +0.9062 0.125 0.09375 +0.9062 0.125 0.125 +0.9062 0.125 0.1562 +0.9062 0.125 0.1875 +0.9062 0.125 0.2188 +0.9062 0.125 0.25 +0.9062 0.125 0.2812 +0.9062 0.125 0.3125 +0.9062 0.125 0.3438 +0.9062 0.125 0.375 +0.9062 0.125 0.4062 +0.9062 0.125 0.4375 +0.9062 0.125 0.4688 +0.9062 0.125 0.5 +0.9062 0.125 0.5312 +0.9062 0.125 0.5625 +0.9062 0.125 0.5938 +0.9062 0.125 0.625 +0.9062 0.125 0.6562 +0.9062 0.125 0.6875 +0.9062 0.125 0.7188 +0.9062 0.125 0.75 +0.9062 0.125 0.7812 +0.9062 0.125 0.8125 +0.9062 0.125 0.8438 +0.9062 0.125 0.875 +0.9062 0.125 0.9062 +0.9062 0.125 0.9375 +0.9062 0.125 0.9688 +0.9062 0.125 1 +0.9062 0.1562 0 +0.9062 0.1562 0.03125 +0.9062 0.1562 0.0625 +0.9062 0.1562 0.09375 +0.9062 0.1562 0.125 +0.9062 0.1562 0.1562 +0.9062 0.1562 0.1875 +0.9062 0.1562 0.2188 +0.9062 0.1562 0.25 +0.9062 0.1562 0.2812 +0.9062 0.1562 0.3125 +0.9062 0.1562 0.3438 +0.9062 0.1562 0.375 +0.9062 0.1562 0.4062 +0.9062 0.1562 0.4375 +0.9062 0.1562 0.4688 +0.9062 0.1562 0.5 +0.9062 0.1562 0.5312 +0.9062 0.1562 0.5625 +0.9062 0.1562 0.5938 +0.9062 0.1562 0.625 +0.9062 0.1562 0.6562 +0.9062 0.1562 0.6875 +0.9062 0.1562 0.7188 +0.9062 0.1562 0.75 +0.9062 0.1562 0.7812 +0.9062 0.1562 0.8125 +0.9062 0.1562 0.8438 +0.9062 0.1562 0.875 +0.9062 0.1562 0.9062 +0.9062 0.1562 0.9375 +0.9062 0.1562 0.9688 +0.9062 0.1562 1 +0.9062 0.1875 0 +0.9062 0.1875 0.03125 +0.9062 0.1875 0.0625 +0.9062 0.1875 0.09375 +0.9062 0.1875 0.125 +0.9062 0.1875 0.1562 +0.9062 0.1875 0.1875 +0.9062 0.1875 0.2188 +0.9062 0.1875 0.25 +0.9062 0.1875 0.2812 +0.9062 0.1875 0.3125 +0.9062 0.1875 0.3438 +0.9062 0.1875 0.375 +0.9062 0.1875 0.4062 +0.9062 0.1875 0.4375 +0.9062 0.1875 0.4688 +0.9062 0.1875 0.5 +0.9062 0.1875 0.5312 +0.9062 0.1875 0.5625 +0.9062 0.1875 0.5938 +0.9062 0.1875 0.625 +0.9062 0.1875 0.6562 +0.9062 0.1875 0.6875 +0.9062 0.1875 0.7188 +0.9062 0.1875 0.75 +0.9062 0.1875 0.7812 +0.9062 0.1875 0.8125 +0.9062 0.1875 0.8438 +0.9062 0.1875 0.875 +0.9062 0.1875 0.9062 +0.9062 0.1875 0.9375 +0.9062 0.1875 0.9688 +0.9062 0.1875 1 +0.9062 0.2188 0 +0.9062 0.2188 0.03125 +0.9062 0.2188 0.0625 +0.9062 0.2188 0.09375 +0.9062 0.2188 0.125 +0.9062 0.2188 0.1562 +0.9062 0.2188 0.1875 +0.9062 0.2188 0.2188 +0.9062 0.2188 0.25 +0.9062 0.2188 0.2812 +0.9062 0.2188 0.3125 +0.9062 0.2188 0.3438 +0.9062 0.2188 0.375 +0.9062 0.2188 0.4062 +0.9062 0.2188 0.4375 +0.9062 0.2188 0.4688 +0.9062 0.2188 0.5 +0.9062 0.2188 0.5312 +0.9062 0.2188 0.5625 +0.9062 0.2188 0.5938 +0.9062 0.2188 0.625 +0.9062 0.2188 0.6562 +0.9062 0.2188 0.6875 +0.9062 0.2188 0.7188 +0.9062 0.2188 0.75 +0.9062 0.2188 0.7812 +0.9062 0.2188 0.8125 +0.9062 0.2188 0.8438 +0.9062 0.2188 0.875 +0.9062 0.2188 0.9062 +0.9062 0.2188 0.9375 +0.9062 0.2188 0.9688 +0.9062 0.2188 1 +0.9062 0.25 0 +0.9062 0.25 0.03125 +0.9062 0.25 0.0625 +0.9062 0.25 0.09375 +0.9062 0.25 0.125 +0.9062 0.25 0.1562 +0.9062 0.25 0.1875 +0.9062 0.25 0.2188 +0.9062 0.25 0.25 +0.9062 0.25 0.2812 +0.9062 0.25 0.3125 +0.9062 0.25 0.3438 +0.9062 0.25 0.375 +0.9062 0.25 0.4062 +0.9062 0.25 0.4375 +0.9062 0.25 0.4688 +0.9062 0.25 0.5 +0.9062 0.25 0.5312 +0.9062 0.25 0.5625 +0.9062 0.25 0.5938 +0.9062 0.25 0.625 +0.9062 0.25 0.6562 +0.9062 0.25 0.6875 +0.9062 0.25 0.7188 +0.9062 0.25 0.75 +0.9062 0.25 0.7812 +0.9062 0.25 0.8125 +0.9062 0.25 0.8438 +0.9062 0.25 0.875 +0.9062 0.25 0.9062 +0.9062 0.25 0.9375 +0.9062 0.25 0.9688 +0.9062 0.25 1 +0.9062 0.2812 0 +0.9062 0.2812 0.03125 +0.9062 0.2812 0.0625 +0.9062 0.2812 0.09375 +0.9062 0.2812 0.125 +0.9062 0.2812 0.1562 +0.9062 0.2812 0.1875 +0.9062 0.2812 0.2188 +0.9062 0.2812 0.25 +0.9062 0.2812 0.2812 +0.9062 0.2812 0.3125 +0.9062 0.2812 0.3438 +0.9062 0.2812 0.375 +0.9062 0.2812 0.4062 +0.9062 0.2812 0.4375 +0.9062 0.2812 0.4688 +0.9062 0.2812 0.5 +0.9062 0.2812 0.5312 +0.9062 0.2812 0.5625 +0.9062 0.2812 0.5938 +0.9062 0.2812 0.625 +0.9062 0.2812 0.6562 +0.9062 0.2812 0.6875 +0.9062 0.2812 0.7188 +0.9062 0.2812 0.75 +0.9062 0.2812 0.7812 +0.9062 0.2812 0.8125 +0.9062 0.2812 0.8438 +0.9062 0.2812 0.875 +0.9062 0.2812 0.9062 +0.9062 0.2812 0.9375 +0.9062 0.2812 0.9688 +0.9062 0.2812 1 +0.9062 0.3125 0 +0.9062 0.3125 0.03125 +0.9062 0.3125 0.0625 +0.9062 0.3125 0.09375 +0.9062 0.3125 0.125 +0.9062 0.3125 0.1562 +0.9062 0.3125 0.1875 +0.9062 0.3125 0.2188 +0.9062 0.3125 0.25 +0.9062 0.3125 0.2812 +0.9062 0.3125 0.3125 +0.9062 0.3125 0.3438 +0.9062 0.3125 0.375 +0.9062 0.3125 0.4062 +0.9062 0.3125 0.4375 +0.9062 0.3125 0.4688 +0.9062 0.3125 0.5 +0.9062 0.3125 0.5312 +0.9062 0.3125 0.5625 +0.9062 0.3125 0.5938 +0.9062 0.3125 0.625 +0.9062 0.3125 0.6562 +0.9062 0.3125 0.6875 +0.9062 0.3125 0.7188 +0.9062 0.3125 0.75 +0.9062 0.3125 0.7812 +0.9062 0.3125 0.8125 +0.9062 0.3125 0.8438 +0.9062 0.3125 0.875 +0.9062 0.3125 0.9062 +0.9062 0.3125 0.9375 +0.9062 0.3125 0.9688 +0.9062 0.3125 1 +0.9062 0.3438 0 +0.9062 0.3438 0.03125 +0.9062 0.3438 0.0625 +0.9062 0.3438 0.09375 +0.9062 0.3438 0.125 +0.9062 0.3438 0.1562 +0.9062 0.3438 0.1875 +0.9062 0.3438 0.2188 +0.9062 0.3438 0.25 +0.9062 0.3438 0.2812 +0.9062 0.3438 0.3125 +0.9062 0.3438 0.3438 +0.9062 0.3438 0.375 +0.9062 0.3438 0.4062 +0.9062 0.3438 0.4375 +0.9062 0.3438 0.4688 +0.9062 0.3438 0.5 +0.9062 0.3438 0.5312 +0.9062 0.3438 0.5625 +0.9062 0.3438 0.5938 +0.9062 0.3438 0.625 +0.9062 0.3438 0.6562 +0.9062 0.3438 0.6875 +0.9062 0.3438 0.7188 +0.9062 0.3438 0.75 +0.9062 0.3438 0.7812 +0.9062 0.3438 0.8125 +0.9062 0.3438 0.8438 +0.9062 0.3438 0.875 +0.9062 0.3438 0.9062 +0.9062 0.3438 0.9375 +0.9062 0.3438 0.9688 +0.9062 0.3438 1 +0.9062 0.375 0 +0.9062 0.375 0.03125 +0.9062 0.375 0.0625 +0.9062 0.375 0.09375 +0.9062 0.375 0.125 +0.9062 0.375 0.1562 +0.9062 0.375 0.1875 +0.9062 0.375 0.2188 +0.9062 0.375 0.25 +0.9062 0.375 0.2812 +0.9062 0.375 0.3125 +0.9062 0.375 0.3438 +0.9062 0.375 0.375 +0.9062 0.375 0.4062 +0.9062 0.375 0.4375 +0.9062 0.375 0.4688 +0.9062 0.375 0.5 +0.9062 0.375 0.5312 +0.9062 0.375 0.5625 +0.9062 0.375 0.5938 +0.9062 0.375 0.625 +0.9062 0.375 0.6562 +0.9062 0.375 0.6875 +0.9062 0.375 0.7188 +0.9062 0.375 0.75 +0.9062 0.375 0.7812 +0.9062 0.375 0.8125 +0.9062 0.375 0.8438 +0.9062 0.375 0.875 +0.9062 0.375 0.9062 +0.9062 0.375 0.9375 +0.9062 0.375 0.9688 +0.9062 0.375 1 +0.9062 0.4062 0 +0.9062 0.4062 0.03125 +0.9062 0.4062 0.0625 +0.9062 0.4062 0.09375 +0.9062 0.4062 0.125 +0.9062 0.4062 0.1562 +0.9062 0.4062 0.1875 +0.9062 0.4062 0.2188 +0.9062 0.4062 0.25 +0.9062 0.4062 0.2812 +0.9062 0.4062 0.3125 +0.9062 0.4062 0.3438 +0.9062 0.4062 0.375 +0.9062 0.4062 0.4062 +0.9062 0.4062 0.4375 +0.9062 0.4062 0.4688 +0.9062 0.4062 0.5 +0.9062 0.4062 0.5312 +0.9062 0.4062 0.5625 +0.9062 0.4062 0.5938 +0.9062 0.4062 0.625 +0.9062 0.4062 0.6562 +0.9062 0.4062 0.6875 +0.9062 0.4062 0.7188 +0.9062 0.4062 0.75 +0.9062 0.4062 0.7812 +0.9062 0.4062 0.8125 +0.9062 0.4062 0.8438 +0.9062 0.4062 0.875 +0.9062 0.4062 0.9062 +0.9062 0.4062 0.9375 +0.9062 0.4062 0.9688 +0.9062 0.4062 1 +0.9062 0.4375 0 +0.9062 0.4375 0.03125 +0.9062 0.4375 0.0625 +0.9062 0.4375 0.09375 +0.9062 0.4375 0.125 +0.9062 0.4375 0.1562 +0.9062 0.4375 0.1875 +0.9062 0.4375 0.2188 +0.9062 0.4375 0.25 +0.9062 0.4375 0.2812 +0.9062 0.4375 0.3125 +0.9062 0.4375 0.3438 +0.9062 0.4375 0.375 +0.9062 0.4375 0.4062 +0.9062 0.4375 0.4375 +0.9062 0.4375 0.4688 +0.9062 0.4375 0.5 +0.9062 0.4375 0.5312 +0.9062 0.4375 0.5625 +0.9062 0.4375 0.5938 +0.9062 0.4375 0.625 +0.9062 0.4375 0.6562 +0.9062 0.4375 0.6875 +0.9062 0.4375 0.7188 +0.9062 0.4375 0.75 +0.9062 0.4375 0.7812 +0.9062 0.4375 0.8125 +0.9062 0.4375 0.8438 +0.9062 0.4375 0.875 +0.9062 0.4375 0.9062 +0.9062 0.4375 0.9375 +0.9062 0.4375 0.9688 +0.9062 0.4375 1 +0.9062 0.4688 0 +0.9062 0.4688 0.03125 +0.9062 0.4688 0.0625 +0.9062 0.4688 0.09375 +0.9062 0.4688 0.125 +0.9062 0.4688 0.1562 +0.9062 0.4688 0.1875 +0.9062 0.4688 0.2188 +0.9062 0.4688 0.25 +0.9062 0.4688 0.2812 +0.9062 0.4688 0.3125 +0.9062 0.4688 0.3438 +0.9062 0.4688 0.375 +0.9062 0.4688 0.4062 +0.9062 0.4688 0.4375 +0.9062 0.4688 0.4688 +0.9062 0.4688 0.5 +0.9062 0.4688 0.5312 +0.9062 0.4688 0.5625 +0.9062 0.4688 0.5938 +0.9062 0.4688 0.625 +0.9062 0.4688 0.6562 +0.9062 0.4688 0.6875 +0.9062 0.4688 0.7188 +0.9062 0.4688 0.75 +0.9062 0.4688 0.7812 +0.9062 0.4688 0.8125 +0.9062 0.4688 0.8438 +0.9062 0.4688 0.875 +0.9062 0.4688 0.9062 +0.9062 0.4688 0.9375 +0.9062 0.4688 0.9688 +0.9062 0.4688 1 +0.9062 0.5 0 +0.9062 0.5 0.03125 +0.9062 0.5 0.0625 +0.9062 0.5 0.09375 +0.9062 0.5 0.125 +0.9062 0.5 0.1562 +0.9062 0.5 0.1875 +0.9062 0.5 0.2188 +0.9062 0.5 0.25 +0.9062 0.5 0.2812 +0.9062 0.5 0.3125 +0.9062 0.5 0.3438 +0.9062 0.5 0.375 +0.9062 0.5 0.4062 +0.9062 0.5 0.4375 +0.9062 0.5 0.4688 +0.9062 0.5 0.5 +0.9062 0.5 0.5312 +0.9062 0.5 0.5625 +0.9062 0.5 0.5938 +0.9062 0.5 0.625 +0.9062 0.5 0.6562 +0.9062 0.5 0.6875 +0.9062 0.5 0.7188 +0.9062 0.5 0.75 +0.9062 0.5 0.7812 +0.9062 0.5 0.8125 +0.9062 0.5 0.8438 +0.9062 0.5 0.875 +0.9062 0.5 0.9062 +0.9062 0.5 0.9375 +0.9062 0.5 0.9688 +0.9062 0.5 1 +0.9062 0.5312 0 +0.9062 0.5312 0.03125 +0.9062 0.5312 0.0625 +0.9062 0.5312 0.09375 +0.9062 0.5312 0.125 +0.9062 0.5312 0.1562 +0.9062 0.5312 0.1875 +0.9062 0.5312 0.2188 +0.9062 0.5312 0.25 +0.9062 0.5312 0.2812 +0.9062 0.5312 0.3125 +0.9062 0.5312 0.3438 +0.9062 0.5312 0.375 +0.9062 0.5312 0.4062 +0.9062 0.5312 0.4375 +0.9062 0.5312 0.4688 +0.9062 0.5312 0.5 +0.9062 0.5312 0.5312 +0.9062 0.5312 0.5625 +0.9062 0.5312 0.5938 +0.9062 0.5312 0.625 +0.9062 0.5312 0.6562 +0.9062 0.5312 0.6875 +0.9062 0.5312 0.7188 +0.9062 0.5312 0.75 +0.9062 0.5312 0.7812 +0.9062 0.5312 0.8125 +0.9062 0.5312 0.8438 +0.9062 0.5312 0.875 +0.9062 0.5312 0.9062 +0.9062 0.5312 0.9375 +0.9062 0.5312 0.9688 +0.9062 0.5312 1 +0.9062 0.5625 0 +0.9062 0.5625 0.03125 +0.9062 0.5625 0.0625 +0.9062 0.5625 0.09375 +0.9062 0.5625 0.125 +0.9062 0.5625 0.1562 +0.9062 0.5625 0.1875 +0.9062 0.5625 0.2188 +0.9062 0.5625 0.25 +0.9062 0.5625 0.2812 +0.9062 0.5625 0.3125 +0.9062 0.5625 0.3438 +0.9062 0.5625 0.375 +0.9062 0.5625 0.4062 +0.9062 0.5625 0.4375 +0.9062 0.5625 0.4688 +0.9062 0.5625 0.5 +0.9062 0.5625 0.5312 +0.9062 0.5625 0.5625 +0.9062 0.5625 0.5938 +0.9062 0.5625 0.625 +0.9062 0.5625 0.6562 +0.9062 0.5625 0.6875 +0.9062 0.5625 0.7188 +0.9062 0.5625 0.75 +0.9062 0.5625 0.7812 +0.9062 0.5625 0.8125 +0.9062 0.5625 0.8438 +0.9062 0.5625 0.875 +0.9062 0.5625 0.9062 +0.9062 0.5625 0.9375 +0.9062 0.5625 0.9688 +0.9062 0.5625 1 +0.9062 0.5938 0 +0.9062 0.5938 0.03125 +0.9062 0.5938 0.0625 +0.9062 0.5938 0.09375 +0.9062 0.5938 0.125 +0.9062 0.5938 0.1562 +0.9062 0.5938 0.1875 +0.9062 0.5938 0.2188 +0.9062 0.5938 0.25 +0.9062 0.5938 0.2812 +0.9062 0.5938 0.3125 +0.9062 0.5938 0.3438 +0.9062 0.5938 0.375 +0.9062 0.5938 0.4062 +0.9062 0.5938 0.4375 +0.9062 0.5938 0.4688 +0.9062 0.5938 0.5 +0.9062 0.5938 0.5312 +0.9062 0.5938 0.5625 +0.9062 0.5938 0.5938 +0.9062 0.5938 0.625 +0.9062 0.5938 0.6562 +0.9062 0.5938 0.6875 +0.9062 0.5938 0.7188 +0.9062 0.5938 0.75 +0.9062 0.5938 0.7812 +0.9062 0.5938 0.8125 +0.9062 0.5938 0.8438 +0.9062 0.5938 0.875 +0.9062 0.5938 0.9062 +0.9062 0.5938 0.9375 +0.9062 0.5938 0.9688 +0.9062 0.5938 1 +0.9062 0.625 0 +0.9062 0.625 0.03125 +0.9062 0.625 0.0625 +0.9062 0.625 0.09375 +0.9062 0.625 0.125 +0.9062 0.625 0.1562 +0.9062 0.625 0.1875 +0.9062 0.625 0.2188 +0.9062 0.625 0.25 +0.9062 0.625 0.2812 +0.9062 0.625 0.3125 +0.9062 0.625 0.3438 +0.9062 0.625 0.375 +0.9062 0.625 0.4062 +0.9062 0.625 0.4375 +0.9062 0.625 0.4688 +0.9062 0.625 0.5 +0.9062 0.625 0.5312 +0.9062 0.625 0.5625 +0.9062 0.625 0.5938 +0.9062 0.625 0.625 +0.9062 0.625 0.6562 +0.9062 0.625 0.6875 +0.9062 0.625 0.7188 +0.9062 0.625 0.75 +0.9062 0.625 0.7812 +0.9062 0.625 0.8125 +0.9062 0.625 0.8438 +0.9062 0.625 0.875 +0.9062 0.625 0.9062 +0.9062 0.625 0.9375 +0.9062 0.625 0.9688 +0.9062 0.625 1 +0.9062 0.6562 0 +0.9062 0.6562 0.03125 +0.9062 0.6562 0.0625 +0.9062 0.6562 0.09375 +0.9062 0.6562 0.125 +0.9062 0.6562 0.1562 +0.9062 0.6562 0.1875 +0.9062 0.6562 0.2188 +0.9062 0.6562 0.25 +0.9062 0.6562 0.2812 +0.9062 0.6562 0.3125 +0.9062 0.6562 0.3438 +0.9062 0.6562 0.375 +0.9062 0.6562 0.4062 +0.9062 0.6562 0.4375 +0.9062 0.6562 0.4688 +0.9062 0.6562 0.5 +0.9062 0.6562 0.5312 +0.9062 0.6562 0.5625 +0.9062 0.6562 0.5938 +0.9062 0.6562 0.625 +0.9062 0.6562 0.6562 +0.9062 0.6562 0.6875 +0.9062 0.6562 0.7188 +0.9062 0.6562 0.75 +0.9062 0.6562 0.7812 +0.9062 0.6562 0.8125 +0.9062 0.6562 0.8438 +0.9062 0.6562 0.875 +0.9062 0.6562 0.9062 +0.9062 0.6562 0.9375 +0.9062 0.6562 0.9688 +0.9062 0.6562 1 +0.9062 0.6875 0 +0.9062 0.6875 0.03125 +0.9062 0.6875 0.0625 +0.9062 0.6875 0.09375 +0.9062 0.6875 0.125 +0.9062 0.6875 0.1562 +0.9062 0.6875 0.1875 +0.9062 0.6875 0.2188 +0.9062 0.6875 0.25 +0.9062 0.6875 0.2812 +0.9062 0.6875 0.3125 +0.9062 0.6875 0.3438 +0.9062 0.6875 0.375 +0.9062 0.6875 0.4062 +0.9062 0.6875 0.4375 +0.9062 0.6875 0.4688 +0.9062 0.6875 0.5 +0.9062 0.6875 0.5312 +0.9062 0.6875 0.5625 +0.9062 0.6875 0.5938 +0.9062 0.6875 0.625 +0.9062 0.6875 0.6562 +0.9062 0.6875 0.6875 +0.9062 0.6875 0.7188 +0.9062 0.6875 0.75 +0.9062 0.6875 0.7812 +0.9062 0.6875 0.8125 +0.9062 0.6875 0.8438 +0.9062 0.6875 0.875 +0.9062 0.6875 0.9062 +0.9062 0.6875 0.9375 +0.9062 0.6875 0.9688 +0.9062 0.6875 1 +0.9062 0.7188 0 +0.9062 0.7188 0.03125 +0.9062 0.7188 0.0625 +0.9062 0.7188 0.09375 +0.9062 0.7188 0.125 +0.9062 0.7188 0.1562 +0.9062 0.7188 0.1875 +0.9062 0.7188 0.2188 +0.9062 0.7188 0.25 +0.9062 0.7188 0.2812 +0.9062 0.7188 0.3125 +0.9062 0.7188 0.3438 +0.9062 0.7188 0.375 +0.9062 0.7188 0.4062 +0.9062 0.7188 0.4375 +0.9062 0.7188 0.4688 +0.9062 0.7188 0.5 +0.9062 0.7188 0.5312 +0.9062 0.7188 0.5625 +0.9062 0.7188 0.5938 +0.9062 0.7188 0.625 +0.9062 0.7188 0.6562 +0.9062 0.7188 0.6875 +0.9062 0.7188 0.7188 +0.9062 0.7188 0.75 +0.9062 0.7188 0.7812 +0.9062 0.7188 0.8125 +0.9062 0.7188 0.8438 +0.9062 0.7188 0.875 +0.9062 0.7188 0.9062 +0.9062 0.7188 0.9375 +0.9062 0.7188 0.9688 +0.9062 0.7188 1 +0.9062 0.75 0 +0.9062 0.75 0.03125 +0.9062 0.75 0.0625 +0.9062 0.75 0.09375 +0.9062 0.75 0.125 +0.9062 0.75 0.1562 +0.9062 0.75 0.1875 +0.9062 0.75 0.2188 +0.9062 0.75 0.25 +0.9062 0.75 0.2812 +0.9062 0.75 0.3125 +0.9062 0.75 0.3438 +0.9062 0.75 0.375 +0.9062 0.75 0.4062 +0.9062 0.75 0.4375 +0.9062 0.75 0.4688 +0.9062 0.75 0.5 +0.9062 0.75 0.5312 +0.9062 0.75 0.5625 +0.9062 0.75 0.5938 +0.9062 0.75 0.625 +0.9062 0.75 0.6562 +0.9062 0.75 0.6875 +0.9062 0.75 0.7188 +0.9062 0.75 0.75 +0.9062 0.75 0.7812 +0.9062 0.75 0.8125 +0.9062 0.75 0.8438 +0.9062 0.75 0.875 +0.9062 0.75 0.9062 +0.9062 0.75 0.9375 +0.9062 0.75 0.9688 +0.9062 0.75 1 +0.9062 0.7812 0 +0.9062 0.7812 0.03125 +0.9062 0.7812 0.0625 +0.9062 0.7812 0.09375 +0.9062 0.7812 0.125 +0.9062 0.7812 0.1562 +0.9062 0.7812 0.1875 +0.9062 0.7812 0.2188 +0.9062 0.7812 0.25 +0.9062 0.7812 0.2812 +0.9062 0.7812 0.3125 +0.9062 0.7812 0.3438 +0.9062 0.7812 0.375 +0.9062 0.7812 0.4062 +0.9062 0.7812 0.4375 +0.9062 0.7812 0.4688 +0.9062 0.7812 0.5 +0.9062 0.7812 0.5312 +0.9062 0.7812 0.5625 +0.9062 0.7812 0.5938 +0.9062 0.7812 0.625 +0.9062 0.7812 0.6562 +0.9062 0.7812 0.6875 +0.9062 0.7812 0.7188 +0.9062 0.7812 0.75 +0.9062 0.7812 0.7812 +0.9062 0.7812 0.8125 +0.9062 0.7812 0.8438 +0.9062 0.7812 0.875 +0.9062 0.7812 0.9062 +0.9062 0.7812 0.9375 +0.9062 0.7812 0.9688 +0.9062 0.7812 1 +0.9062 0.8125 0 +0.9062 0.8125 0.03125 +0.9062 0.8125 0.0625 +0.9062 0.8125 0.09375 +0.9062 0.8125 0.125 +0.9062 0.8125 0.1562 +0.9062 0.8125 0.1875 +0.9062 0.8125 0.2188 +0.9062 0.8125 0.25 +0.9062 0.8125 0.2812 +0.9062 0.8125 0.3125 +0.9062 0.8125 0.3438 +0.9062 0.8125 0.375 +0.9062 0.8125 0.4062 +0.9062 0.8125 0.4375 +0.9062 0.8125 0.4688 +0.9062 0.8125 0.5 +0.9062 0.8125 0.5312 +0.9062 0.8125 0.5625 +0.9062 0.8125 0.5938 +0.9062 0.8125 0.625 +0.9062 0.8125 0.6562 +0.9062 0.8125 0.6875 +0.9062 0.8125 0.7188 +0.9062 0.8125 0.75 +0.9062 0.8125 0.7812 +0.9062 0.8125 0.8125 +0.9062 0.8125 0.8438 +0.9062 0.8125 0.875 +0.9062 0.8125 0.9062 +0.9062 0.8125 0.9375 +0.9062 0.8125 0.9688 +0.9062 0.8125 1 +0.9062 0.8438 0 +0.9062 0.8438 0.03125 +0.9062 0.8438 0.0625 +0.9062 0.8438 0.09375 +0.9062 0.8438 0.125 +0.9062 0.8438 0.1562 +0.9062 0.8438 0.1875 +0.9062 0.8438 0.2188 +0.9062 0.8438 0.25 +0.9062 0.8438 0.2812 +0.9062 0.8438 0.3125 +0.9062 0.8438 0.3438 +0.9062 0.8438 0.375 +0.9062 0.8438 0.4062 +0.9062 0.8438 0.4375 +0.9062 0.8438 0.4688 +0.9062 0.8438 0.5 +0.9062 0.8438 0.5312 +0.9062 0.8438 0.5625 +0.9062 0.8438 0.5938 +0.9062 0.8438 0.625 +0.9062 0.8438 0.6562 +0.9062 0.8438 0.6875 +0.9062 0.8438 0.7188 +0.9062 0.8438 0.75 +0.9062 0.8438 0.7812 +0.9062 0.8438 0.8125 +0.9062 0.8438 0.8438 +0.9062 0.8438 0.875 +0.9062 0.8438 0.9062 +0.9062 0.8438 0.9375 +0.9062 0.8438 0.9688 +0.9062 0.8438 1 +0.9062 0.875 0 +0.9062 0.875 0.03125 +0.9062 0.875 0.0625 +0.9062 0.875 0.09375 +0.9062 0.875 0.125 +0.9062 0.875 0.1562 +0.9062 0.875 0.1875 +0.9062 0.875 0.2188 +0.9062 0.875 0.25 +0.9062 0.875 0.2812 +0.9062 0.875 0.3125 +0.9062 0.875 0.3438 +0.9062 0.875 0.375 +0.9062 0.875 0.4062 +0.9062 0.875 0.4375 +0.9062 0.875 0.4688 +0.9062 0.875 0.5 +0.9062 0.875 0.5312 +0.9062 0.875 0.5625 +0.9062 0.875 0.5938 +0.9062 0.875 0.625 +0.9062 0.875 0.6562 +0.9062 0.875 0.6875 +0.9062 0.875 0.7188 +0.9062 0.875 0.75 +0.9062 0.875 0.7812 +0.9062 0.875 0.8125 +0.9062 0.875 0.8438 +0.9062 0.875 0.875 +0.9062 0.875 0.9062 +0.9062 0.875 0.9375 +0.9062 0.875 0.9688 +0.9062 0.875 1 +0.9062 0.9062 0 +0.9062 0.9062 0.03125 +0.9062 0.9062 0.0625 +0.9062 0.9062 0.09375 +0.9062 0.9062 0.125 +0.9062 0.9062 0.1562 +0.9062 0.9062 0.1875 +0.9062 0.9062 0.2188 +0.9062 0.9062 0.25 +0.9062 0.9062 0.2812 +0.9062 0.9062 0.3125 +0.9062 0.9062 0.3438 +0.9062 0.9062 0.375 +0.9062 0.9062 0.4062 +0.9062 0.9062 0.4375 +0.9062 0.9062 0.4688 +0.9062 0.9062 0.5 +0.9062 0.9062 0.5312 +0.9062 0.9062 0.5625 +0.9062 0.9062 0.5938 +0.9062 0.9062 0.625 +0.9062 0.9062 0.6562 +0.9062 0.9062 0.6875 +0.9062 0.9062 0.7188 +0.9062 0.9062 0.75 +0.9062 0.9062 0.7812 +0.9062 0.9062 0.8125 +0.9062 0.9062 0.8438 +0.9062 0.9062 0.875 +0.9062 0.9062 0.9062 +0.9062 0.9062 0.9375 +0.9062 0.9062 0.9688 +0.9062 0.9062 1 +0.9062 0.9375 0 +0.9062 0.9375 0.03125 +0.9062 0.9375 0.0625 +0.9062 0.9375 0.09375 +0.9062 0.9375 0.125 +0.9062 0.9375 0.1562 +0.9062 0.9375 0.1875 +0.9062 0.9375 0.2188 +0.9062 0.9375 0.25 +0.9062 0.9375 0.2812 +0.9062 0.9375 0.3125 +0.9062 0.9375 0.3438 +0.9062 0.9375 0.375 +0.9062 0.9375 0.4062 +0.9062 0.9375 0.4375 +0.9062 0.9375 0.4688 +0.9062 0.9375 0.5 +0.9062 0.9375 0.5312 +0.9062 0.9375 0.5625 +0.9062 0.9375 0.5938 +0.9062 0.9375 0.625 +0.9062 0.9375 0.6562 +0.9062 0.9375 0.6875 +0.9062 0.9375 0.7188 +0.9062 0.9375 0.75 +0.9062 0.9375 0.7812 +0.9062 0.9375 0.8125 +0.9062 0.9375 0.8438 +0.9062 0.9375 0.875 +0.9062 0.9375 0.9062 +0.9062 0.9375 0.9375 +0.9062 0.9375 0.9688 +0.9062 0.9375 1 +0.9062 0.9688 0 +0.9062 0.9688 0.03125 +0.9062 0.9688 0.0625 +0.9062 0.9688 0.09375 +0.9062 0.9688 0.125 +0.9062 0.9688 0.1562 +0.9062 0.9688 0.1875 +0.9062 0.9688 0.2188 +0.9062 0.9688 0.25 +0.9062 0.9688 0.2812 +0.9062 0.9688 0.3125 +0.9062 0.9688 0.3438 +0.9062 0.9688 0.375 +0.9062 0.9688 0.4062 +0.9062 0.9688 0.4375 +0.9062 0.9688 0.4688 +0.9062 0.9688 0.5 +0.9062 0.9688 0.5312 +0.9062 0.9688 0.5625 +0.9062 0.9688 0.5938 +0.9062 0.9688 0.625 +0.9062 0.9688 0.6562 +0.9062 0.9688 0.6875 +0.9062 0.9688 0.7188 +0.9062 0.9688 0.75 +0.9062 0.9688 0.7812 +0.9062 0.9688 0.8125 +0.9062 0.9688 0.8438 +0.9062 0.9688 0.875 +0.9062 0.9688 0.9062 +0.9062 0.9688 0.9375 +0.9062 0.9688 0.9688 +0.9062 0.9688 1 +0.9062 1 0 +0.9062 1 0.03125 +0.9062 1 0.0625 +0.9062 1 0.09375 +0.9062 1 0.125 +0.9062 1 0.1562 +0.9062 1 0.1875 +0.9062 1 0.2188 +0.9062 1 0.25 +0.9062 1 0.2812 +0.9062 1 0.3125 +0.9062 1 0.3438 +0.9062 1 0.375 +0.9062 1 0.4062 +0.9062 1 0.4375 +0.9062 1 0.4688 +0.9062 1 0.5 +0.9062 1 0.5312 +0.9062 1 0.5625 +0.9062 1 0.5938 +0.9062 1 0.625 +0.9062 1 0.6562 +0.9062 1 0.6875 +0.9062 1 0.7188 +0.9062 1 0.75 +0.9062 1 0.7812 +0.9062 1 0.8125 +0.9062 1 0.8438 +0.9062 1 0.875 +0.9062 1 0.9062 +0.9062 1 0.9375 +0.9062 1 0.9688 +0.9062 1 1 +0.9375 0 0 +0.9375 0 0.03125 +0.9375 0 0.0625 +0.9375 0 0.09375 +0.9375 0 0.125 +0.9375 0 0.1562 +0.9375 0 0.1875 +0.9375 0 0.2188 +0.9375 0 0.25 +0.9375 0 0.2812 +0.9375 0 0.3125 +0.9375 0 0.3438 +0.9375 0 0.375 +0.9375 0 0.4062 +0.9375 0 0.4375 +0.9375 0 0.4688 +0.9375 0 0.5 +0.9375 0 0.5312 +0.9375 0 0.5625 +0.9375 0 0.5938 +0.9375 0 0.625 +0.9375 0 0.6562 +0.9375 0 0.6875 +0.9375 0 0.7188 +0.9375 0 0.75 +0.9375 0 0.7812 +0.9375 0 0.8125 +0.9375 0 0.8438 +0.9375 0 0.875 +0.9375 0 0.9062 +0.9375 0 0.9375 +0.9375 0 0.9688 +0.9375 0 1 +0.9375 0.03125 0 +0.9375 0.03125 0.03125 +0.9375 0.03125 0.0625 +0.9375 0.03125 0.09375 +0.9375 0.03125 0.125 +0.9375 0.03125 0.1562 +0.9375 0.03125 0.1875 +0.9375 0.03125 0.2188 +0.9375 0.03125 0.25 +0.9375 0.03125 0.2812 +0.9375 0.03125 0.3125 +0.9375 0.03125 0.3438 +0.9375 0.03125 0.375 +0.9375 0.03125 0.4062 +0.9375 0.03125 0.4375 +0.9375 0.03125 0.4688 +0.9375 0.03125 0.5 +0.9375 0.03125 0.5312 +0.9375 0.03125 0.5625 +0.9375 0.03125 0.5938 +0.9375 0.03125 0.625 +0.9375 0.03125 0.6562 +0.9375 0.03125 0.6875 +0.9375 0.03125 0.7188 +0.9375 0.03125 0.75 +0.9375 0.03125 0.7812 +0.9375 0.03125 0.8125 +0.9375 0.03125 0.8438 +0.9375 0.03125 0.875 +0.9375 0.03125 0.9062 +0.9375 0.03125 0.9375 +0.9375 0.03125 0.9688 +0.9375 0.03125 1 +0.9375 0.0625 0 +0.9375 0.0625 0.03125 +0.9375 0.0625 0.0625 +0.9375 0.0625 0.09375 +0.9375 0.0625 0.125 +0.9375 0.0625 0.1562 +0.9375 0.0625 0.1875 +0.9375 0.0625 0.2188 +0.9375 0.0625 0.25 +0.9375 0.0625 0.2812 +0.9375 0.0625 0.3125 +0.9375 0.0625 0.3438 +0.9375 0.0625 0.375 +0.9375 0.0625 0.4062 +0.9375 0.0625 0.4375 +0.9375 0.0625 0.4688 +0.9375 0.0625 0.5 +0.9375 0.0625 0.5312 +0.9375 0.0625 0.5625 +0.9375 0.0625 0.5938 +0.9375 0.0625 0.625 +0.9375 0.0625 0.6562 +0.9375 0.0625 0.6875 +0.9375 0.0625 0.7188 +0.9375 0.0625 0.75 +0.9375 0.0625 0.7812 +0.9375 0.0625 0.8125 +0.9375 0.0625 0.8438 +0.9375 0.0625 0.875 +0.9375 0.0625 0.9062 +0.9375 0.0625 0.9375 +0.9375 0.0625 0.9688 +0.9375 0.0625 1 +0.9375 0.09375 0 +0.9375 0.09375 0.03125 +0.9375 0.09375 0.0625 +0.9375 0.09375 0.09375 +0.9375 0.09375 0.125 +0.9375 0.09375 0.1562 +0.9375 0.09375 0.1875 +0.9375 0.09375 0.2188 +0.9375 0.09375 0.25 +0.9375 0.09375 0.2812 +0.9375 0.09375 0.3125 +0.9375 0.09375 0.3438 +0.9375 0.09375 0.375 +0.9375 0.09375 0.4062 +0.9375 0.09375 0.4375 +0.9375 0.09375 0.4688 +0.9375 0.09375 0.5 +0.9375 0.09375 0.5312 +0.9375 0.09375 0.5625 +0.9375 0.09375 0.5938 +0.9375 0.09375 0.625 +0.9375 0.09375 0.6562 +0.9375 0.09375 0.6875 +0.9375 0.09375 0.7188 +0.9375 0.09375 0.75 +0.9375 0.09375 0.7812 +0.9375 0.09375 0.8125 +0.9375 0.09375 0.8438 +0.9375 0.09375 0.875 +0.9375 0.09375 0.9062 +0.9375 0.09375 0.9375 +0.9375 0.09375 0.9688 +0.9375 0.09375 1 +0.9375 0.125 0 +0.9375 0.125 0.03125 +0.9375 0.125 0.0625 +0.9375 0.125 0.09375 +0.9375 0.125 0.125 +0.9375 0.125 0.1562 +0.9375 0.125 0.1875 +0.9375 0.125 0.2188 +0.9375 0.125 0.25 +0.9375 0.125 0.2812 +0.9375 0.125 0.3125 +0.9375 0.125 0.3438 +0.9375 0.125 0.375 +0.9375 0.125 0.4062 +0.9375 0.125 0.4375 +0.9375 0.125 0.4688 +0.9375 0.125 0.5 +0.9375 0.125 0.5312 +0.9375 0.125 0.5625 +0.9375 0.125 0.5938 +0.9375 0.125 0.625 +0.9375 0.125 0.6562 +0.9375 0.125 0.6875 +0.9375 0.125 0.7188 +0.9375 0.125 0.75 +0.9375 0.125 0.7812 +0.9375 0.125 0.8125 +0.9375 0.125 0.8438 +0.9375 0.125 0.875 +0.9375 0.125 0.9062 +0.9375 0.125 0.9375 +0.9375 0.125 0.9688 +0.9375 0.125 1 +0.9375 0.1562 0 +0.9375 0.1562 0.03125 +0.9375 0.1562 0.0625 +0.9375 0.1562 0.09375 +0.9375 0.1562 0.125 +0.9375 0.1562 0.1562 +0.9375 0.1562 0.1875 +0.9375 0.1562 0.2188 +0.9375 0.1562 0.25 +0.9375 0.1562 0.2812 +0.9375 0.1562 0.3125 +0.9375 0.1562 0.3438 +0.9375 0.1562 0.375 +0.9375 0.1562 0.4062 +0.9375 0.1562 0.4375 +0.9375 0.1562 0.4688 +0.9375 0.1562 0.5 +0.9375 0.1562 0.5312 +0.9375 0.1562 0.5625 +0.9375 0.1562 0.5938 +0.9375 0.1562 0.625 +0.9375 0.1562 0.6562 +0.9375 0.1562 0.6875 +0.9375 0.1562 0.7188 +0.9375 0.1562 0.75 +0.9375 0.1562 0.7812 +0.9375 0.1562 0.8125 +0.9375 0.1562 0.8438 +0.9375 0.1562 0.875 +0.9375 0.1562 0.9062 +0.9375 0.1562 0.9375 +0.9375 0.1562 0.9688 +0.9375 0.1562 1 +0.9375 0.1875 0 +0.9375 0.1875 0.03125 +0.9375 0.1875 0.0625 +0.9375 0.1875 0.09375 +0.9375 0.1875 0.125 +0.9375 0.1875 0.1562 +0.9375 0.1875 0.1875 +0.9375 0.1875 0.2188 +0.9375 0.1875 0.25 +0.9375 0.1875 0.2812 +0.9375 0.1875 0.3125 +0.9375 0.1875 0.3438 +0.9375 0.1875 0.375 +0.9375 0.1875 0.4062 +0.9375 0.1875 0.4375 +0.9375 0.1875 0.4688 +0.9375 0.1875 0.5 +0.9375 0.1875 0.5312 +0.9375 0.1875 0.5625 +0.9375 0.1875 0.5938 +0.9375 0.1875 0.625 +0.9375 0.1875 0.6562 +0.9375 0.1875 0.6875 +0.9375 0.1875 0.7188 +0.9375 0.1875 0.75 +0.9375 0.1875 0.7812 +0.9375 0.1875 0.8125 +0.9375 0.1875 0.8438 +0.9375 0.1875 0.875 +0.9375 0.1875 0.9062 +0.9375 0.1875 0.9375 +0.9375 0.1875 0.9688 +0.9375 0.1875 1 +0.9375 0.2188 0 +0.9375 0.2188 0.03125 +0.9375 0.2188 0.0625 +0.9375 0.2188 0.09375 +0.9375 0.2188 0.125 +0.9375 0.2188 0.1562 +0.9375 0.2188 0.1875 +0.9375 0.2188 0.2188 +0.9375 0.2188 0.25 +0.9375 0.2188 0.2812 +0.9375 0.2188 0.3125 +0.9375 0.2188 0.3438 +0.9375 0.2188 0.375 +0.9375 0.2188 0.4062 +0.9375 0.2188 0.4375 +0.9375 0.2188 0.4688 +0.9375 0.2188 0.5 +0.9375 0.2188 0.5312 +0.9375 0.2188 0.5625 +0.9375 0.2188 0.5938 +0.9375 0.2188 0.625 +0.9375 0.2188 0.6562 +0.9375 0.2188 0.6875 +0.9375 0.2188 0.7188 +0.9375 0.2188 0.75 +0.9375 0.2188 0.7812 +0.9375 0.2188 0.8125 +0.9375 0.2188 0.8438 +0.9375 0.2188 0.875 +0.9375 0.2188 0.9062 +0.9375 0.2188 0.9375 +0.9375 0.2188 0.9688 +0.9375 0.2188 1 +0.9375 0.25 0 +0.9375 0.25 0.03125 +0.9375 0.25 0.0625 +0.9375 0.25 0.09375 +0.9375 0.25 0.125 +0.9375 0.25 0.1562 +0.9375 0.25 0.1875 +0.9375 0.25 0.2188 +0.9375 0.25 0.25 +0.9375 0.25 0.2812 +0.9375 0.25 0.3125 +0.9375 0.25 0.3438 +0.9375 0.25 0.375 +0.9375 0.25 0.4062 +0.9375 0.25 0.4375 +0.9375 0.25 0.4688 +0.9375 0.25 0.5 +0.9375 0.25 0.5312 +0.9375 0.25 0.5625 +0.9375 0.25 0.5938 +0.9375 0.25 0.625 +0.9375 0.25 0.6562 +0.9375 0.25 0.6875 +0.9375 0.25 0.7188 +0.9375 0.25 0.75 +0.9375 0.25 0.7812 +0.9375 0.25 0.8125 +0.9375 0.25 0.8438 +0.9375 0.25 0.875 +0.9375 0.25 0.9062 +0.9375 0.25 0.9375 +0.9375 0.25 0.9688 +0.9375 0.25 1 +0.9375 0.2812 0 +0.9375 0.2812 0.03125 +0.9375 0.2812 0.0625 +0.9375 0.2812 0.09375 +0.9375 0.2812 0.125 +0.9375 0.2812 0.1562 +0.9375 0.2812 0.1875 +0.9375 0.2812 0.2188 +0.9375 0.2812 0.25 +0.9375 0.2812 0.2812 +0.9375 0.2812 0.3125 +0.9375 0.2812 0.3438 +0.9375 0.2812 0.375 +0.9375 0.2812 0.4062 +0.9375 0.2812 0.4375 +0.9375 0.2812 0.4688 +0.9375 0.2812 0.5 +0.9375 0.2812 0.5312 +0.9375 0.2812 0.5625 +0.9375 0.2812 0.5938 +0.9375 0.2812 0.625 +0.9375 0.2812 0.6562 +0.9375 0.2812 0.6875 +0.9375 0.2812 0.7188 +0.9375 0.2812 0.75 +0.9375 0.2812 0.7812 +0.9375 0.2812 0.8125 +0.9375 0.2812 0.8438 +0.9375 0.2812 0.875 +0.9375 0.2812 0.9062 +0.9375 0.2812 0.9375 +0.9375 0.2812 0.9688 +0.9375 0.2812 1 +0.9375 0.3125 0 +0.9375 0.3125 0.03125 +0.9375 0.3125 0.0625 +0.9375 0.3125 0.09375 +0.9375 0.3125 0.125 +0.9375 0.3125 0.1562 +0.9375 0.3125 0.1875 +0.9375 0.3125 0.2188 +0.9375 0.3125 0.25 +0.9375 0.3125 0.2812 +0.9375 0.3125 0.3125 +0.9375 0.3125 0.3438 +0.9375 0.3125 0.375 +0.9375 0.3125 0.4062 +0.9375 0.3125 0.4375 +0.9375 0.3125 0.4688 +0.9375 0.3125 0.5 +0.9375 0.3125 0.5312 +0.9375 0.3125 0.5625 +0.9375 0.3125 0.5938 +0.9375 0.3125 0.625 +0.9375 0.3125 0.6562 +0.9375 0.3125 0.6875 +0.9375 0.3125 0.7188 +0.9375 0.3125 0.75 +0.9375 0.3125 0.7812 +0.9375 0.3125 0.8125 +0.9375 0.3125 0.8438 +0.9375 0.3125 0.875 +0.9375 0.3125 0.9062 +0.9375 0.3125 0.9375 +0.9375 0.3125 0.9688 +0.9375 0.3125 1 +0.9375 0.3438 0 +0.9375 0.3438 0.03125 +0.9375 0.3438 0.0625 +0.9375 0.3438 0.09375 +0.9375 0.3438 0.125 +0.9375 0.3438 0.1562 +0.9375 0.3438 0.1875 +0.9375 0.3438 0.2188 +0.9375 0.3438 0.25 +0.9375 0.3438 0.2812 +0.9375 0.3438 0.3125 +0.9375 0.3438 0.3438 +0.9375 0.3438 0.375 +0.9375 0.3438 0.4062 +0.9375 0.3438 0.4375 +0.9375 0.3438 0.4688 +0.9375 0.3438 0.5 +0.9375 0.3438 0.5312 +0.9375 0.3438 0.5625 +0.9375 0.3438 0.5938 +0.9375 0.3438 0.625 +0.9375 0.3438 0.6562 +0.9375 0.3438 0.6875 +0.9375 0.3438 0.7188 +0.9375 0.3438 0.75 +0.9375 0.3438 0.7812 +0.9375 0.3438 0.8125 +0.9375 0.3438 0.8438 +0.9375 0.3438 0.875 +0.9375 0.3438 0.9062 +0.9375 0.3438 0.9375 +0.9375 0.3438 0.9688 +0.9375 0.3438 1 +0.9375 0.375 0 +0.9375 0.375 0.03125 +0.9375 0.375 0.0625 +0.9375 0.375 0.09375 +0.9375 0.375 0.125 +0.9375 0.375 0.1562 +0.9375 0.375 0.1875 +0.9375 0.375 0.2188 +0.9375 0.375 0.25 +0.9375 0.375 0.2812 +0.9375 0.375 0.3125 +0.9375 0.375 0.3438 +0.9375 0.375 0.375 +0.9375 0.375 0.4062 +0.9375 0.375 0.4375 +0.9375 0.375 0.4688 +0.9375 0.375 0.5 +0.9375 0.375 0.5312 +0.9375 0.375 0.5625 +0.9375 0.375 0.5938 +0.9375 0.375 0.625 +0.9375 0.375 0.6562 +0.9375 0.375 0.6875 +0.9375 0.375 0.7188 +0.9375 0.375 0.75 +0.9375 0.375 0.7812 +0.9375 0.375 0.8125 +0.9375 0.375 0.8438 +0.9375 0.375 0.875 +0.9375 0.375 0.9062 +0.9375 0.375 0.9375 +0.9375 0.375 0.9688 +0.9375 0.375 1 +0.9375 0.4062 0 +0.9375 0.4062 0.03125 +0.9375 0.4062 0.0625 +0.9375 0.4062 0.09375 +0.9375 0.4062 0.125 +0.9375 0.4062 0.1562 +0.9375 0.4062 0.1875 +0.9375 0.4062 0.2188 +0.9375 0.4062 0.25 +0.9375 0.4062 0.2812 +0.9375 0.4062 0.3125 +0.9375 0.4062 0.3438 +0.9375 0.4062 0.375 +0.9375 0.4062 0.4062 +0.9375 0.4062 0.4375 +0.9375 0.4062 0.4688 +0.9375 0.4062 0.5 +0.9375 0.4062 0.5312 +0.9375 0.4062 0.5625 +0.9375 0.4062 0.5938 +0.9375 0.4062 0.625 +0.9375 0.4062 0.6562 +0.9375 0.4062 0.6875 +0.9375 0.4062 0.7188 +0.9375 0.4062 0.75 +0.9375 0.4062 0.7812 +0.9375 0.4062 0.8125 +0.9375 0.4062 0.8438 +0.9375 0.4062 0.875 +0.9375 0.4062 0.9062 +0.9375 0.4062 0.9375 +0.9375 0.4062 0.9688 +0.9375 0.4062 1 +0.9375 0.4375 0 +0.9375 0.4375 0.03125 +0.9375 0.4375 0.0625 +0.9375 0.4375 0.09375 +0.9375 0.4375 0.125 +0.9375 0.4375 0.1562 +0.9375 0.4375 0.1875 +0.9375 0.4375 0.2188 +0.9375 0.4375 0.25 +0.9375 0.4375 0.2812 +0.9375 0.4375 0.3125 +0.9375 0.4375 0.3438 +0.9375 0.4375 0.375 +0.9375 0.4375 0.4062 +0.9375 0.4375 0.4375 +0.9375 0.4375 0.4688 +0.9375 0.4375 0.5 +0.9375 0.4375 0.5312 +0.9375 0.4375 0.5625 +0.9375 0.4375 0.5938 +0.9375 0.4375 0.625 +0.9375 0.4375 0.6562 +0.9375 0.4375 0.6875 +0.9375 0.4375 0.7188 +0.9375 0.4375 0.75 +0.9375 0.4375 0.7812 +0.9375 0.4375 0.8125 +0.9375 0.4375 0.8438 +0.9375 0.4375 0.875 +0.9375 0.4375 0.9062 +0.9375 0.4375 0.9375 +0.9375 0.4375 0.9688 +0.9375 0.4375 1 +0.9375 0.4688 0 +0.9375 0.4688 0.03125 +0.9375 0.4688 0.0625 +0.9375 0.4688 0.09375 +0.9375 0.4688 0.125 +0.9375 0.4688 0.1562 +0.9375 0.4688 0.1875 +0.9375 0.4688 0.2188 +0.9375 0.4688 0.25 +0.9375 0.4688 0.2812 +0.9375 0.4688 0.3125 +0.9375 0.4688 0.3438 +0.9375 0.4688 0.375 +0.9375 0.4688 0.4062 +0.9375 0.4688 0.4375 +0.9375 0.4688 0.4688 +0.9375 0.4688 0.5 +0.9375 0.4688 0.5312 +0.9375 0.4688 0.5625 +0.9375 0.4688 0.5938 +0.9375 0.4688 0.625 +0.9375 0.4688 0.6562 +0.9375 0.4688 0.6875 +0.9375 0.4688 0.7188 +0.9375 0.4688 0.75 +0.9375 0.4688 0.7812 +0.9375 0.4688 0.8125 +0.9375 0.4688 0.8438 +0.9375 0.4688 0.875 +0.9375 0.4688 0.9062 +0.9375 0.4688 0.9375 +0.9375 0.4688 0.9688 +0.9375 0.4688 1 +0.9375 0.5 0 +0.9375 0.5 0.03125 +0.9375 0.5 0.0625 +0.9375 0.5 0.09375 +0.9375 0.5 0.125 +0.9375 0.5 0.1562 +0.9375 0.5 0.1875 +0.9375 0.5 0.2188 +0.9375 0.5 0.25 +0.9375 0.5 0.2812 +0.9375 0.5 0.3125 +0.9375 0.5 0.3438 +0.9375 0.5 0.375 +0.9375 0.5 0.4062 +0.9375 0.5 0.4375 +0.9375 0.5 0.4688 +0.9375 0.5 0.5 +0.9375 0.5 0.5312 +0.9375 0.5 0.5625 +0.9375 0.5 0.5938 +0.9375 0.5 0.625 +0.9375 0.5 0.6562 +0.9375 0.5 0.6875 +0.9375 0.5 0.7188 +0.9375 0.5 0.75 +0.9375 0.5 0.7812 +0.9375 0.5 0.8125 +0.9375 0.5 0.8438 +0.9375 0.5 0.875 +0.9375 0.5 0.9062 +0.9375 0.5 0.9375 +0.9375 0.5 0.9688 +0.9375 0.5 1 +0.9375 0.5312 0 +0.9375 0.5312 0.03125 +0.9375 0.5312 0.0625 +0.9375 0.5312 0.09375 +0.9375 0.5312 0.125 +0.9375 0.5312 0.1562 +0.9375 0.5312 0.1875 +0.9375 0.5312 0.2188 +0.9375 0.5312 0.25 +0.9375 0.5312 0.2812 +0.9375 0.5312 0.3125 +0.9375 0.5312 0.3438 +0.9375 0.5312 0.375 +0.9375 0.5312 0.4062 +0.9375 0.5312 0.4375 +0.9375 0.5312 0.4688 +0.9375 0.5312 0.5 +0.9375 0.5312 0.5312 +0.9375 0.5312 0.5625 +0.9375 0.5312 0.5938 +0.9375 0.5312 0.625 +0.9375 0.5312 0.6562 +0.9375 0.5312 0.6875 +0.9375 0.5312 0.7188 +0.9375 0.5312 0.75 +0.9375 0.5312 0.7812 +0.9375 0.5312 0.8125 +0.9375 0.5312 0.8438 +0.9375 0.5312 0.875 +0.9375 0.5312 0.9062 +0.9375 0.5312 0.9375 +0.9375 0.5312 0.9688 +0.9375 0.5312 1 +0.9375 0.5625 0 +0.9375 0.5625 0.03125 +0.9375 0.5625 0.0625 +0.9375 0.5625 0.09375 +0.9375 0.5625 0.125 +0.9375 0.5625 0.1562 +0.9375 0.5625 0.1875 +0.9375 0.5625 0.2188 +0.9375 0.5625 0.25 +0.9375 0.5625 0.2812 +0.9375 0.5625 0.3125 +0.9375 0.5625 0.3438 +0.9375 0.5625 0.375 +0.9375 0.5625 0.4062 +0.9375 0.5625 0.4375 +0.9375 0.5625 0.4688 +0.9375 0.5625 0.5 +0.9375 0.5625 0.5312 +0.9375 0.5625 0.5625 +0.9375 0.5625 0.5938 +0.9375 0.5625 0.625 +0.9375 0.5625 0.6562 +0.9375 0.5625 0.6875 +0.9375 0.5625 0.7188 +0.9375 0.5625 0.75 +0.9375 0.5625 0.7812 +0.9375 0.5625 0.8125 +0.9375 0.5625 0.8438 +0.9375 0.5625 0.875 +0.9375 0.5625 0.9062 +0.9375 0.5625 0.9375 +0.9375 0.5625 0.9688 +0.9375 0.5625 1 +0.9375 0.5938 0 +0.9375 0.5938 0.03125 +0.9375 0.5938 0.0625 +0.9375 0.5938 0.09375 +0.9375 0.5938 0.125 +0.9375 0.5938 0.1562 +0.9375 0.5938 0.1875 +0.9375 0.5938 0.2188 +0.9375 0.5938 0.25 +0.9375 0.5938 0.2812 +0.9375 0.5938 0.3125 +0.9375 0.5938 0.3438 +0.9375 0.5938 0.375 +0.9375 0.5938 0.4062 +0.9375 0.5938 0.4375 +0.9375 0.5938 0.4688 +0.9375 0.5938 0.5 +0.9375 0.5938 0.5312 +0.9375 0.5938 0.5625 +0.9375 0.5938 0.5938 +0.9375 0.5938 0.625 +0.9375 0.5938 0.6562 +0.9375 0.5938 0.6875 +0.9375 0.5938 0.7188 +0.9375 0.5938 0.75 +0.9375 0.5938 0.7812 +0.9375 0.5938 0.8125 +0.9375 0.5938 0.8438 +0.9375 0.5938 0.875 +0.9375 0.5938 0.9062 +0.9375 0.5938 0.9375 +0.9375 0.5938 0.9688 +0.9375 0.5938 1 +0.9375 0.625 0 +0.9375 0.625 0.03125 +0.9375 0.625 0.0625 +0.9375 0.625 0.09375 +0.9375 0.625 0.125 +0.9375 0.625 0.1562 +0.9375 0.625 0.1875 +0.9375 0.625 0.2188 +0.9375 0.625 0.25 +0.9375 0.625 0.2812 +0.9375 0.625 0.3125 +0.9375 0.625 0.3438 +0.9375 0.625 0.375 +0.9375 0.625 0.4062 +0.9375 0.625 0.4375 +0.9375 0.625 0.4688 +0.9375 0.625 0.5 +0.9375 0.625 0.5312 +0.9375 0.625 0.5625 +0.9375 0.625 0.5938 +0.9375 0.625 0.625 +0.9375 0.625 0.6562 +0.9375 0.625 0.6875 +0.9375 0.625 0.7188 +0.9375 0.625 0.75 +0.9375 0.625 0.7812 +0.9375 0.625 0.8125 +0.9375 0.625 0.8438 +0.9375 0.625 0.875 +0.9375 0.625 0.9062 +0.9375 0.625 0.9375 +0.9375 0.625 0.9688 +0.9375 0.625 1 +0.9375 0.6562 0 +0.9375 0.6562 0.03125 +0.9375 0.6562 0.0625 +0.9375 0.6562 0.09375 +0.9375 0.6562 0.125 +0.9375 0.6562 0.1562 +0.9375 0.6562 0.1875 +0.9375 0.6562 0.2188 +0.9375 0.6562 0.25 +0.9375 0.6562 0.2812 +0.9375 0.6562 0.3125 +0.9375 0.6562 0.3438 +0.9375 0.6562 0.375 +0.9375 0.6562 0.4062 +0.9375 0.6562 0.4375 +0.9375 0.6562 0.4688 +0.9375 0.6562 0.5 +0.9375 0.6562 0.5312 +0.9375 0.6562 0.5625 +0.9375 0.6562 0.5938 +0.9375 0.6562 0.625 +0.9375 0.6562 0.6562 +0.9375 0.6562 0.6875 +0.9375 0.6562 0.7188 +0.9375 0.6562 0.75 +0.9375 0.6562 0.7812 +0.9375 0.6562 0.8125 +0.9375 0.6562 0.8438 +0.9375 0.6562 0.875 +0.9375 0.6562 0.9062 +0.9375 0.6562 0.9375 +0.9375 0.6562 0.9688 +0.9375 0.6562 1 +0.9375 0.6875 0 +0.9375 0.6875 0.03125 +0.9375 0.6875 0.0625 +0.9375 0.6875 0.09375 +0.9375 0.6875 0.125 +0.9375 0.6875 0.1562 +0.9375 0.6875 0.1875 +0.9375 0.6875 0.2188 +0.9375 0.6875 0.25 +0.9375 0.6875 0.2812 +0.9375 0.6875 0.3125 +0.9375 0.6875 0.3438 +0.9375 0.6875 0.375 +0.9375 0.6875 0.4062 +0.9375 0.6875 0.4375 +0.9375 0.6875 0.4688 +0.9375 0.6875 0.5 +0.9375 0.6875 0.5312 +0.9375 0.6875 0.5625 +0.9375 0.6875 0.5938 +0.9375 0.6875 0.625 +0.9375 0.6875 0.6562 +0.9375 0.6875 0.6875 +0.9375 0.6875 0.7188 +0.9375 0.6875 0.75 +0.9375 0.6875 0.7812 +0.9375 0.6875 0.8125 +0.9375 0.6875 0.8438 +0.9375 0.6875 0.875 +0.9375 0.6875 0.9062 +0.9375 0.6875 0.9375 +0.9375 0.6875 0.9688 +0.9375 0.6875 1 +0.9375 0.7188 0 +0.9375 0.7188 0.03125 +0.9375 0.7188 0.0625 +0.9375 0.7188 0.09375 +0.9375 0.7188 0.125 +0.9375 0.7188 0.1562 +0.9375 0.7188 0.1875 +0.9375 0.7188 0.2188 +0.9375 0.7188 0.25 +0.9375 0.7188 0.2812 +0.9375 0.7188 0.3125 +0.9375 0.7188 0.3438 +0.9375 0.7188 0.375 +0.9375 0.7188 0.4062 +0.9375 0.7188 0.4375 +0.9375 0.7188 0.4688 +0.9375 0.7188 0.5 +0.9375 0.7188 0.5312 +0.9375 0.7188 0.5625 +0.9375 0.7188 0.5938 +0.9375 0.7188 0.625 +0.9375 0.7188 0.6562 +0.9375 0.7188 0.6875 +0.9375 0.7188 0.7188 +0.9375 0.7188 0.75 +0.9375 0.7188 0.7812 +0.9375 0.7188 0.8125 +0.9375 0.7188 0.8438 +0.9375 0.7188 0.875 +0.9375 0.7188 0.9062 +0.9375 0.7188 0.9375 +0.9375 0.7188 0.9688 +0.9375 0.7188 1 +0.9375 0.75 0 +0.9375 0.75 0.03125 +0.9375 0.75 0.0625 +0.9375 0.75 0.09375 +0.9375 0.75 0.125 +0.9375 0.75 0.1562 +0.9375 0.75 0.1875 +0.9375 0.75 0.2188 +0.9375 0.75 0.25 +0.9375 0.75 0.2812 +0.9375 0.75 0.3125 +0.9375 0.75 0.3438 +0.9375 0.75 0.375 +0.9375 0.75 0.4062 +0.9375 0.75 0.4375 +0.9375 0.75 0.4688 +0.9375 0.75 0.5 +0.9375 0.75 0.5312 +0.9375 0.75 0.5625 +0.9375 0.75 0.5938 +0.9375 0.75 0.625 +0.9375 0.75 0.6562 +0.9375 0.75 0.6875 +0.9375 0.75 0.7188 +0.9375 0.75 0.75 +0.9375 0.75 0.7812 +0.9375 0.75 0.8125 +0.9375 0.75 0.8438 +0.9375 0.75 0.875 +0.9375 0.75 0.9062 +0.9375 0.75 0.9375 +0.9375 0.75 0.9688 +0.9375 0.75 1 +0.9375 0.7812 0 +0.9375 0.7812 0.03125 +0.9375 0.7812 0.0625 +0.9375 0.7812 0.09375 +0.9375 0.7812 0.125 +0.9375 0.7812 0.1562 +0.9375 0.7812 0.1875 +0.9375 0.7812 0.2188 +0.9375 0.7812 0.25 +0.9375 0.7812 0.2812 +0.9375 0.7812 0.3125 +0.9375 0.7812 0.3438 +0.9375 0.7812 0.375 +0.9375 0.7812 0.4062 +0.9375 0.7812 0.4375 +0.9375 0.7812 0.4688 +0.9375 0.7812 0.5 +0.9375 0.7812 0.5312 +0.9375 0.7812 0.5625 +0.9375 0.7812 0.5938 +0.9375 0.7812 0.625 +0.9375 0.7812 0.6562 +0.9375 0.7812 0.6875 +0.9375 0.7812 0.7188 +0.9375 0.7812 0.75 +0.9375 0.7812 0.7812 +0.9375 0.7812 0.8125 +0.9375 0.7812 0.8438 +0.9375 0.7812 0.875 +0.9375 0.7812 0.9062 +0.9375 0.7812 0.9375 +0.9375 0.7812 0.9688 +0.9375 0.7812 1 +0.9375 0.8125 0 +0.9375 0.8125 0.03125 +0.9375 0.8125 0.0625 +0.9375 0.8125 0.09375 +0.9375 0.8125 0.125 +0.9375 0.8125 0.1562 +0.9375 0.8125 0.1875 +0.9375 0.8125 0.2188 +0.9375 0.8125 0.25 +0.9375 0.8125 0.2812 +0.9375 0.8125 0.3125 +0.9375 0.8125 0.3438 +0.9375 0.8125 0.375 +0.9375 0.8125 0.4062 +0.9375 0.8125 0.4375 +0.9375 0.8125 0.4688 +0.9375 0.8125 0.5 +0.9375 0.8125 0.5312 +0.9375 0.8125 0.5625 +0.9375 0.8125 0.5938 +0.9375 0.8125 0.625 +0.9375 0.8125 0.6562 +0.9375 0.8125 0.6875 +0.9375 0.8125 0.7188 +0.9375 0.8125 0.75 +0.9375 0.8125 0.7812 +0.9375 0.8125 0.8125 +0.9375 0.8125 0.8438 +0.9375 0.8125 0.875 +0.9375 0.8125 0.9062 +0.9375 0.8125 0.9375 +0.9375 0.8125 0.9688 +0.9375 0.8125 1 +0.9375 0.8438 0 +0.9375 0.8438 0.03125 +0.9375 0.8438 0.0625 +0.9375 0.8438 0.09375 +0.9375 0.8438 0.125 +0.9375 0.8438 0.1562 +0.9375 0.8438 0.1875 +0.9375 0.8438 0.2188 +0.9375 0.8438 0.25 +0.9375 0.8438 0.2812 +0.9375 0.8438 0.3125 +0.9375 0.8438 0.3438 +0.9375 0.8438 0.375 +0.9375 0.8438 0.4062 +0.9375 0.8438 0.4375 +0.9375 0.8438 0.4688 +0.9375 0.8438 0.5 +0.9375 0.8438 0.5312 +0.9375 0.8438 0.5625 +0.9375 0.8438 0.5938 +0.9375 0.8438 0.625 +0.9375 0.8438 0.6562 +0.9375 0.8438 0.6875 +0.9375 0.8438 0.7188 +0.9375 0.8438 0.75 +0.9375 0.8438 0.7812 +0.9375 0.8438 0.8125 +0.9375 0.8438 0.8438 +0.9375 0.8438 0.875 +0.9375 0.8438 0.9062 +0.9375 0.8438 0.9375 +0.9375 0.8438 0.9688 +0.9375 0.8438 1 +0.9375 0.875 0 +0.9375 0.875 0.03125 +0.9375 0.875 0.0625 +0.9375 0.875 0.09375 +0.9375 0.875 0.125 +0.9375 0.875 0.1562 +0.9375 0.875 0.1875 +0.9375 0.875 0.2188 +0.9375 0.875 0.25 +0.9375 0.875 0.2812 +0.9375 0.875 0.3125 +0.9375 0.875 0.3438 +0.9375 0.875 0.375 +0.9375 0.875 0.4062 +0.9375 0.875 0.4375 +0.9375 0.875 0.4688 +0.9375 0.875 0.5 +0.9375 0.875 0.5312 +0.9375 0.875 0.5625 +0.9375 0.875 0.5938 +0.9375 0.875 0.625 +0.9375 0.875 0.6562 +0.9375 0.875 0.6875 +0.9375 0.875 0.7188 +0.9375 0.875 0.75 +0.9375 0.875 0.7812 +0.9375 0.875 0.8125 +0.9375 0.875 0.8438 +0.9375 0.875 0.875 +0.9375 0.875 0.9062 +0.9375 0.875 0.9375 +0.9375 0.875 0.9688 +0.9375 0.875 1 +0.9375 0.9062 0 +0.9375 0.9062 0.03125 +0.9375 0.9062 0.0625 +0.9375 0.9062 0.09375 +0.9375 0.9062 0.125 +0.9375 0.9062 0.1562 +0.9375 0.9062 0.1875 +0.9375 0.9062 0.2188 +0.9375 0.9062 0.25 +0.9375 0.9062 0.2812 +0.9375 0.9062 0.3125 +0.9375 0.9062 0.3438 +0.9375 0.9062 0.375 +0.9375 0.9062 0.4062 +0.9375 0.9062 0.4375 +0.9375 0.9062 0.4688 +0.9375 0.9062 0.5 +0.9375 0.9062 0.5312 +0.9375 0.9062 0.5625 +0.9375 0.9062 0.5938 +0.9375 0.9062 0.625 +0.9375 0.9062 0.6562 +0.9375 0.9062 0.6875 +0.9375 0.9062 0.7188 +0.9375 0.9062 0.75 +0.9375 0.9062 0.7812 +0.9375 0.9062 0.8125 +0.9375 0.9062 0.8438 +0.9375 0.9062 0.875 +0.9375 0.9062 0.9062 +0.9375 0.9062 0.9375 +0.9375 0.9062 0.9688 +0.9375 0.9062 1 +0.9375 0.9375 0 +0.9375 0.9375 0.03125 +0.9375 0.9375 0.0625 +0.9375 0.9375 0.09375 +0.9375 0.9375 0.125 +0.9375 0.9375 0.1562 +0.9375 0.9375 0.1875 +0.9375 0.9375 0.2188 +0.9375 0.9375 0.25 +0.9375 0.9375 0.2812 +0.9375 0.9375 0.3125 +0.9375 0.9375 0.3438 +0.9375 0.9375 0.375 +0.9375 0.9375 0.4062 +0.9375 0.9375 0.4375 +0.9375 0.9375 0.4688 +0.9375 0.9375 0.5 +0.9375 0.9375 0.5312 +0.9375 0.9375 0.5625 +0.9375 0.9375 0.5938 +0.9375 0.9375 0.625 +0.9375 0.9375 0.6562 +0.9375 0.9375 0.6875 +0.9375 0.9375 0.7188 +0.9375 0.9375 0.75 +0.9375 0.9375 0.7812 +0.9375 0.9375 0.8125 +0.9375 0.9375 0.8438 +0.9375 0.9375 0.875 +0.9375 0.9375 0.9062 +0.9375 0.9375 0.9375 +0.9375 0.9375 0.9688 +0.9375 0.9375 1 +0.9375 0.9688 0 +0.9375 0.9688 0.03125 +0.9375 0.9688 0.0625 +0.9375 0.9688 0.09375 +0.9375 0.9688 0.125 +0.9375 0.9688 0.1562 +0.9375 0.9688 0.1875 +0.9375 0.9688 0.2188 +0.9375 0.9688 0.25 +0.9375 0.9688 0.2812 +0.9375 0.9688 0.3125 +0.9375 0.9688 0.3438 +0.9375 0.9688 0.375 +0.9375 0.9688 0.4062 +0.9375 0.9688 0.4375 +0.9375 0.9688 0.4688 +0.9375 0.9688 0.5 +0.9375 0.9688 0.5312 +0.9375 0.9688 0.5625 +0.9375 0.9688 0.5938 +0.9375 0.9688 0.625 +0.9375 0.9688 0.6562 +0.9375 0.9688 0.6875 +0.9375 0.9688 0.7188 +0.9375 0.9688 0.75 +0.9375 0.9688 0.7812 +0.9375 0.9688 0.8125 +0.9375 0.9688 0.8438 +0.9375 0.9688 0.875 +0.9375 0.9688 0.9062 +0.9375 0.9688 0.9375 +0.9375 0.9688 0.9688 +0.9375 0.9688 1 +0.9375 1 0 +0.9375 1 0.03125 +0.9375 1 0.0625 +0.9375 1 0.09375 +0.9375 1 0.125 +0.9375 1 0.1562 +0.9375 1 0.1875 +0.9375 1 0.2188 +0.9375 1 0.25 +0.9375 1 0.2812 +0.9375 1 0.3125 +0.9375 1 0.3438 +0.9375 1 0.375 +0.9375 1 0.4062 +0.9375 1 0.4375 +0.9375 1 0.4688 +0.9375 1 0.5 +0.9375 1 0.5312 +0.9375 1 0.5625 +0.9375 1 0.5938 +0.9375 1 0.625 +0.9375 1 0.6562 +0.9375 1 0.6875 +0.9375 1 0.7188 +0.9375 1 0.75 +0.9375 1 0.7812 +0.9375 1 0.8125 +0.9375 1 0.8438 +0.9375 1 0.875 +0.9375 1 0.9062 +0.9375 1 0.9375 +0.9375 1 0.9688 +0.9375 1 1 +0.9688 0 0 +0.9688 0 0.03125 +0.9688 0 0.0625 +0.9688 0 0.09375 +0.9688 0 0.125 +0.9688 0 0.1562 +0.9688 0 0.1875 +0.9688 0 0.2188 +0.9688 0 0.25 +0.9688 0 0.2812 +0.9688 0 0.3125 +0.9688 0 0.3438 +0.9688 0 0.375 +0.9688 0 0.4062 +0.9688 0 0.4375 +0.9688 0 0.4688 +0.9688 0 0.5 +0.9688 0 0.5312 +0.9688 0 0.5625 +0.9688 0 0.5938 +0.9688 0 0.625 +0.9688 0 0.6562 +0.9688 0 0.6875 +0.9688 0 0.7188 +0.9688 0 0.75 +0.9688 0 0.7812 +0.9688 0 0.8125 +0.9688 0 0.8438 +0.9688 0 0.875 +0.9688 0 0.9062 +0.9688 0 0.9375 +0.9688 0 0.9688 +0.9688 0 1 +0.9688 0.03125 0 +0.9688 0.03125 0.03125 +0.9688 0.03125 0.0625 +0.9688 0.03125 0.09375 +0.9688 0.03125 0.125 +0.9688 0.03125 0.1562 +0.9688 0.03125 0.1875 +0.9688 0.03125 0.2188 +0.9688 0.03125 0.25 +0.9688 0.03125 0.2812 +0.9688 0.03125 0.3125 +0.9688 0.03125 0.3438 +0.9688 0.03125 0.375 +0.9688 0.03125 0.4062 +0.9688 0.03125 0.4375 +0.9688 0.03125 0.4688 +0.9688 0.03125 0.5 +0.9688 0.03125 0.5312 +0.9688 0.03125 0.5625 +0.9688 0.03125 0.5938 +0.9688 0.03125 0.625 +0.9688 0.03125 0.6562 +0.9688 0.03125 0.6875 +0.9688 0.03125 0.7188 +0.9688 0.03125 0.75 +0.9688 0.03125 0.7812 +0.9688 0.03125 0.8125 +0.9688 0.03125 0.8438 +0.9688 0.03125 0.875 +0.9688 0.03125 0.9062 +0.9688 0.03125 0.9375 +0.9688 0.03125 0.9688 +0.9688 0.03125 1 +0.9688 0.0625 0 +0.9688 0.0625 0.03125 +0.9688 0.0625 0.0625 +0.9688 0.0625 0.09375 +0.9688 0.0625 0.125 +0.9688 0.0625 0.1562 +0.9688 0.0625 0.1875 +0.9688 0.0625 0.2188 +0.9688 0.0625 0.25 +0.9688 0.0625 0.2812 +0.9688 0.0625 0.3125 +0.9688 0.0625 0.3438 +0.9688 0.0625 0.375 +0.9688 0.0625 0.4062 +0.9688 0.0625 0.4375 +0.9688 0.0625 0.4688 +0.9688 0.0625 0.5 +0.9688 0.0625 0.5312 +0.9688 0.0625 0.5625 +0.9688 0.0625 0.5938 +0.9688 0.0625 0.625 +0.9688 0.0625 0.6562 +0.9688 0.0625 0.6875 +0.9688 0.0625 0.7188 +0.9688 0.0625 0.75 +0.9688 0.0625 0.7812 +0.9688 0.0625 0.8125 +0.9688 0.0625 0.8438 +0.9688 0.0625 0.875 +0.9688 0.0625 0.9062 +0.9688 0.0625 0.9375 +0.9688 0.0625 0.9688 +0.9688 0.0625 1 +0.9688 0.09375 0 +0.9688 0.09375 0.03125 +0.9688 0.09375 0.0625 +0.9688 0.09375 0.09375 +0.9688 0.09375 0.125 +0.9688 0.09375 0.1562 +0.9688 0.09375 0.1875 +0.9688 0.09375 0.2188 +0.9688 0.09375 0.25 +0.9688 0.09375 0.2812 +0.9688 0.09375 0.3125 +0.9688 0.09375 0.3438 +0.9688 0.09375 0.375 +0.9688 0.09375 0.4062 +0.9688 0.09375 0.4375 +0.9688 0.09375 0.4688 +0.9688 0.09375 0.5 +0.9688 0.09375 0.5312 +0.9688 0.09375 0.5625 +0.9688 0.09375 0.5938 +0.9688 0.09375 0.625 +0.9688 0.09375 0.6562 +0.9688 0.09375 0.6875 +0.9688 0.09375 0.7188 +0.9688 0.09375 0.75 +0.9688 0.09375 0.7812 +0.9688 0.09375 0.8125 +0.9688 0.09375 0.8438 +0.9688 0.09375 0.875 +0.9688 0.09375 0.9062 +0.9688 0.09375 0.9375 +0.9688 0.09375 0.9688 +0.9688 0.09375 1 +0.9688 0.125 0 +0.9688 0.125 0.03125 +0.9688 0.125 0.0625 +0.9688 0.125 0.09375 +0.9688 0.125 0.125 +0.9688 0.125 0.1562 +0.9688 0.125 0.1875 +0.9688 0.125 0.2188 +0.9688 0.125 0.25 +0.9688 0.125 0.2812 +0.9688 0.125 0.3125 +0.9688 0.125 0.3438 +0.9688 0.125 0.375 +0.9688 0.125 0.4062 +0.9688 0.125 0.4375 +0.9688 0.125 0.4688 +0.9688 0.125 0.5 +0.9688 0.125 0.5312 +0.9688 0.125 0.5625 +0.9688 0.125 0.5938 +0.9688 0.125 0.625 +0.9688 0.125 0.6562 +0.9688 0.125 0.6875 +0.9688 0.125 0.7188 +0.9688 0.125 0.75 +0.9688 0.125 0.7812 +0.9688 0.125 0.8125 +0.9688 0.125 0.8438 +0.9688 0.125 0.875 +0.9688 0.125 0.9062 +0.9688 0.125 0.9375 +0.9688 0.125 0.9688 +0.9688 0.125 1 +0.9688 0.1562 0 +0.9688 0.1562 0.03125 +0.9688 0.1562 0.0625 +0.9688 0.1562 0.09375 +0.9688 0.1562 0.125 +0.9688 0.1562 0.1562 +0.9688 0.1562 0.1875 +0.9688 0.1562 0.2188 +0.9688 0.1562 0.25 +0.9688 0.1562 0.2812 +0.9688 0.1562 0.3125 +0.9688 0.1562 0.3438 +0.9688 0.1562 0.375 +0.9688 0.1562 0.4062 +0.9688 0.1562 0.4375 +0.9688 0.1562 0.4688 +0.9688 0.1562 0.5 +0.9688 0.1562 0.5312 +0.9688 0.1562 0.5625 +0.9688 0.1562 0.5938 +0.9688 0.1562 0.625 +0.9688 0.1562 0.6562 +0.9688 0.1562 0.6875 +0.9688 0.1562 0.7188 +0.9688 0.1562 0.75 +0.9688 0.1562 0.7812 +0.9688 0.1562 0.8125 +0.9688 0.1562 0.8438 +0.9688 0.1562 0.875 +0.9688 0.1562 0.9062 +0.9688 0.1562 0.9375 +0.9688 0.1562 0.9688 +0.9688 0.1562 1 +0.9688 0.1875 0 +0.9688 0.1875 0.03125 +0.9688 0.1875 0.0625 +0.9688 0.1875 0.09375 +0.9688 0.1875 0.125 +0.9688 0.1875 0.1562 +0.9688 0.1875 0.1875 +0.9688 0.1875 0.2188 +0.9688 0.1875 0.25 +0.9688 0.1875 0.2812 +0.9688 0.1875 0.3125 +0.9688 0.1875 0.3438 +0.9688 0.1875 0.375 +0.9688 0.1875 0.4062 +0.9688 0.1875 0.4375 +0.9688 0.1875 0.4688 +0.9688 0.1875 0.5 +0.9688 0.1875 0.5312 +0.9688 0.1875 0.5625 +0.9688 0.1875 0.5938 +0.9688 0.1875 0.625 +0.9688 0.1875 0.6562 +0.9688 0.1875 0.6875 +0.9688 0.1875 0.7188 +0.9688 0.1875 0.75 +0.9688 0.1875 0.7812 +0.9688 0.1875 0.8125 +0.9688 0.1875 0.8438 +0.9688 0.1875 0.875 +0.9688 0.1875 0.9062 +0.9688 0.1875 0.9375 +0.9688 0.1875 0.9688 +0.9688 0.1875 1 +0.9688 0.2188 0 +0.9688 0.2188 0.03125 +0.9688 0.2188 0.0625 +0.9688 0.2188 0.09375 +0.9688 0.2188 0.125 +0.9688 0.2188 0.1562 +0.9688 0.2188 0.1875 +0.9688 0.2188 0.2188 +0.9688 0.2188 0.25 +0.9688 0.2188 0.2812 +0.9688 0.2188 0.3125 +0.9688 0.2188 0.3438 +0.9688 0.2188 0.375 +0.9688 0.2188 0.4062 +0.9688 0.2188 0.4375 +0.9688 0.2188 0.4688 +0.9688 0.2188 0.5 +0.9688 0.2188 0.5312 +0.9688 0.2188 0.5625 +0.9688 0.2188 0.5938 +0.9688 0.2188 0.625 +0.9688 0.2188 0.6562 +0.9688 0.2188 0.6875 +0.9688 0.2188 0.7188 +0.9688 0.2188 0.75 +0.9688 0.2188 0.7812 +0.9688 0.2188 0.8125 +0.9688 0.2188 0.8438 +0.9688 0.2188 0.875 +0.9688 0.2188 0.9062 +0.9688 0.2188 0.9375 +0.9688 0.2188 0.9688 +0.9688 0.2188 1 +0.9688 0.25 0 +0.9688 0.25 0.03125 +0.9688 0.25 0.0625 +0.9688 0.25 0.09375 +0.9688 0.25 0.125 +0.9688 0.25 0.1562 +0.9688 0.25 0.1875 +0.9688 0.25 0.2188 +0.9688 0.25 0.25 +0.9688 0.25 0.2812 +0.9688 0.25 0.3125 +0.9688 0.25 0.3438 +0.9688 0.25 0.375 +0.9688 0.25 0.4062 +0.9688 0.25 0.4375 +0.9688 0.25 0.4688 +0.9688 0.25 0.5 +0.9688 0.25 0.5312 +0.9688 0.25 0.5625 +0.9688 0.25 0.5938 +0.9688 0.25 0.625 +0.9688 0.25 0.6562 +0.9688 0.25 0.6875 +0.9688 0.25 0.7188 +0.9688 0.25 0.75 +0.9688 0.25 0.7812 +0.9688 0.25 0.8125 +0.9688 0.25 0.8438 +0.9688 0.25 0.875 +0.9688 0.25 0.9062 +0.9688 0.25 0.9375 +0.9688 0.25 0.9688 +0.9688 0.25 1 +0.9688 0.2812 0 +0.9688 0.2812 0.03125 +0.9688 0.2812 0.0625 +0.9688 0.2812 0.09375 +0.9688 0.2812 0.125 +0.9688 0.2812 0.1562 +0.9688 0.2812 0.1875 +0.9688 0.2812 0.2188 +0.9688 0.2812 0.25 +0.9688 0.2812 0.2812 +0.9688 0.2812 0.3125 +0.9688 0.2812 0.3438 +0.9688 0.2812 0.375 +0.9688 0.2812 0.4062 +0.9688 0.2812 0.4375 +0.9688 0.2812 0.4688 +0.9688 0.2812 0.5 +0.9688 0.2812 0.5312 +0.9688 0.2812 0.5625 +0.9688 0.2812 0.5938 +0.9688 0.2812 0.625 +0.9688 0.2812 0.6562 +0.9688 0.2812 0.6875 +0.9688 0.2812 0.7188 +0.9688 0.2812 0.75 +0.9688 0.2812 0.7812 +0.9688 0.2812 0.8125 +0.9688 0.2812 0.8438 +0.9688 0.2812 0.875 +0.9688 0.2812 0.9062 +0.9688 0.2812 0.9375 +0.9688 0.2812 0.9688 +0.9688 0.2812 1 +0.9688 0.3125 0 +0.9688 0.3125 0.03125 +0.9688 0.3125 0.0625 +0.9688 0.3125 0.09375 +0.9688 0.3125 0.125 +0.9688 0.3125 0.1562 +0.9688 0.3125 0.1875 +0.9688 0.3125 0.2188 +0.9688 0.3125 0.25 +0.9688 0.3125 0.2812 +0.9688 0.3125 0.3125 +0.9688 0.3125 0.3438 +0.9688 0.3125 0.375 +0.9688 0.3125 0.4062 +0.9688 0.3125 0.4375 +0.9688 0.3125 0.4688 +0.9688 0.3125 0.5 +0.9688 0.3125 0.5312 +0.9688 0.3125 0.5625 +0.9688 0.3125 0.5938 +0.9688 0.3125 0.625 +0.9688 0.3125 0.6562 +0.9688 0.3125 0.6875 +0.9688 0.3125 0.7188 +0.9688 0.3125 0.75 +0.9688 0.3125 0.7812 +0.9688 0.3125 0.8125 +0.9688 0.3125 0.8438 +0.9688 0.3125 0.875 +0.9688 0.3125 0.9062 +0.9688 0.3125 0.9375 +0.9688 0.3125 0.9688 +0.9688 0.3125 1 +0.9688 0.3438 0 +0.9688 0.3438 0.03125 +0.9688 0.3438 0.0625 +0.9688 0.3438 0.09375 +0.9688 0.3438 0.125 +0.9688 0.3438 0.1562 +0.9688 0.3438 0.1875 +0.9688 0.3438 0.2188 +0.9688 0.3438 0.25 +0.9688 0.3438 0.2812 +0.9688 0.3438 0.3125 +0.9688 0.3438 0.3438 +0.9688 0.3438 0.375 +0.9688 0.3438 0.4062 +0.9688 0.3438 0.4375 +0.9688 0.3438 0.4688 +0.9688 0.3438 0.5 +0.9688 0.3438 0.5312 +0.9688 0.3438 0.5625 +0.9688 0.3438 0.5938 +0.9688 0.3438 0.625 +0.9688 0.3438 0.6562 +0.9688 0.3438 0.6875 +0.9688 0.3438 0.7188 +0.9688 0.3438 0.75 +0.9688 0.3438 0.7812 +0.9688 0.3438 0.8125 +0.9688 0.3438 0.8438 +0.9688 0.3438 0.875 +0.9688 0.3438 0.9062 +0.9688 0.3438 0.9375 +0.9688 0.3438 0.9688 +0.9688 0.3438 1 +0.9688 0.375 0 +0.9688 0.375 0.03125 +0.9688 0.375 0.0625 +0.9688 0.375 0.09375 +0.9688 0.375 0.125 +0.9688 0.375 0.1562 +0.9688 0.375 0.1875 +0.9688 0.375 0.2188 +0.9688 0.375 0.25 +0.9688 0.375 0.2812 +0.9688 0.375 0.3125 +0.9688 0.375 0.3438 +0.9688 0.375 0.375 +0.9688 0.375 0.4062 +0.9688 0.375 0.4375 +0.9688 0.375 0.4688 +0.9688 0.375 0.5 +0.9688 0.375 0.5312 +0.9688 0.375 0.5625 +0.9688 0.375 0.5938 +0.9688 0.375 0.625 +0.9688 0.375 0.6562 +0.9688 0.375 0.6875 +0.9688 0.375 0.7188 +0.9688 0.375 0.75 +0.9688 0.375 0.7812 +0.9688 0.375 0.8125 +0.9688 0.375 0.8438 +0.9688 0.375 0.875 +0.9688 0.375 0.9062 +0.9688 0.375 0.9375 +0.9688 0.375 0.9688 +0.9688 0.375 1 +0.9688 0.4062 0 +0.9688 0.4062 0.03125 +0.9688 0.4062 0.0625 +0.9688 0.4062 0.09375 +0.9688 0.4062 0.125 +0.9688 0.4062 0.1562 +0.9688 0.4062 0.1875 +0.9688 0.4062 0.2188 +0.9688 0.4062 0.25 +0.9688 0.4062 0.2812 +0.9688 0.4062 0.3125 +0.9688 0.4062 0.3438 +0.9688 0.4062 0.375 +0.9688 0.4062 0.4062 +0.9688 0.4062 0.4375 +0.9688 0.4062 0.4688 +0.9688 0.4062 0.5 +0.9688 0.4062 0.5312 +0.9688 0.4062 0.5625 +0.9688 0.4062 0.5938 +0.9688 0.4062 0.625 +0.9688 0.4062 0.6562 +0.9688 0.4062 0.6875 +0.9688 0.4062 0.7188 +0.9688 0.4062 0.75 +0.9688 0.4062 0.7812 +0.9688 0.4062 0.8125 +0.9688 0.4062 0.8438 +0.9688 0.4062 0.875 +0.9688 0.4062 0.9062 +0.9688 0.4062 0.9375 +0.9688 0.4062 0.9688 +0.9688 0.4062 1 +0.9688 0.4375 0 +0.9688 0.4375 0.03125 +0.9688 0.4375 0.0625 +0.9688 0.4375 0.09375 +0.9688 0.4375 0.125 +0.9688 0.4375 0.1562 +0.9688 0.4375 0.1875 +0.9688 0.4375 0.2188 +0.9688 0.4375 0.25 +0.9688 0.4375 0.2812 +0.9688 0.4375 0.3125 +0.9688 0.4375 0.3438 +0.9688 0.4375 0.375 +0.9688 0.4375 0.4062 +0.9688 0.4375 0.4375 +0.9688 0.4375 0.4688 +0.9688 0.4375 0.5 +0.9688 0.4375 0.5312 +0.9688 0.4375 0.5625 +0.9688 0.4375 0.5938 +0.9688 0.4375 0.625 +0.9688 0.4375 0.6562 +0.9688 0.4375 0.6875 +0.9688 0.4375 0.7188 +0.9688 0.4375 0.75 +0.9688 0.4375 0.7812 +0.9688 0.4375 0.8125 +0.9688 0.4375 0.8438 +0.9688 0.4375 0.875 +0.9688 0.4375 0.9062 +0.9688 0.4375 0.9375 +0.9688 0.4375 0.9688 +0.9688 0.4375 1 +0.9688 0.4688 0 +0.9688 0.4688 0.03125 +0.9688 0.4688 0.0625 +0.9688 0.4688 0.09375 +0.9688 0.4688 0.125 +0.9688 0.4688 0.1562 +0.9688 0.4688 0.1875 +0.9688 0.4688 0.2188 +0.9688 0.4688 0.25 +0.9688 0.4688 0.2812 +0.9688 0.4688 0.3125 +0.9688 0.4688 0.3438 +0.9688 0.4688 0.375 +0.9688 0.4688 0.4062 +0.9688 0.4688 0.4375 +0.9688 0.4688 0.4688 +0.9688 0.4688 0.5 +0.9688 0.4688 0.5312 +0.9688 0.4688 0.5625 +0.9688 0.4688 0.5938 +0.9688 0.4688 0.625 +0.9688 0.4688 0.6562 +0.9688 0.4688 0.6875 +0.9688 0.4688 0.7188 +0.9688 0.4688 0.75 +0.9688 0.4688 0.7812 +0.9688 0.4688 0.8125 +0.9688 0.4688 0.8438 +0.9688 0.4688 0.875 +0.9688 0.4688 0.9062 +0.9688 0.4688 0.9375 +0.9688 0.4688 0.9688 +0.9688 0.4688 1 +0.9688 0.5 0 +0.9688 0.5 0.03125 +0.9688 0.5 0.0625 +0.9688 0.5 0.09375 +0.9688 0.5 0.125 +0.9688 0.5 0.1562 +0.9688 0.5 0.1875 +0.9688 0.5 0.2188 +0.9688 0.5 0.25 +0.9688 0.5 0.2812 +0.9688 0.5 0.3125 +0.9688 0.5 0.3438 +0.9688 0.5 0.375 +0.9688 0.5 0.4062 +0.9688 0.5 0.4375 +0.9688 0.5 0.4688 +0.9688 0.5 0.5 +0.9688 0.5 0.5312 +0.9688 0.5 0.5625 +0.9688 0.5 0.5938 +0.9688 0.5 0.625 +0.9688 0.5 0.6562 +0.9688 0.5 0.6875 +0.9688 0.5 0.7188 +0.9688 0.5 0.75 +0.9688 0.5 0.7812 +0.9688 0.5 0.8125 +0.9688 0.5 0.8438 +0.9688 0.5 0.875 +0.9688 0.5 0.9062 +0.9688 0.5 0.9375 +0.9688 0.5 0.9688 +0.9688 0.5 1 +0.9688 0.5312 0 +0.9688 0.5312 0.03125 +0.9688 0.5312 0.0625 +0.9688 0.5312 0.09375 +0.9688 0.5312 0.125 +0.9688 0.5312 0.1562 +0.9688 0.5312 0.1875 +0.9688 0.5312 0.2188 +0.9688 0.5312 0.25 +0.9688 0.5312 0.2812 +0.9688 0.5312 0.3125 +0.9688 0.5312 0.3438 +0.9688 0.5312 0.375 +0.9688 0.5312 0.4062 +0.9688 0.5312 0.4375 +0.9688 0.5312 0.4688 +0.9688 0.5312 0.5 +0.9688 0.5312 0.5312 +0.9688 0.5312 0.5625 +0.9688 0.5312 0.5938 +0.9688 0.5312 0.625 +0.9688 0.5312 0.6562 +0.9688 0.5312 0.6875 +0.9688 0.5312 0.7188 +0.9688 0.5312 0.75 +0.9688 0.5312 0.7812 +0.9688 0.5312 0.8125 +0.9688 0.5312 0.8438 +0.9688 0.5312 0.875 +0.9688 0.5312 0.9062 +0.9688 0.5312 0.9375 +0.9688 0.5312 0.9688 +0.9688 0.5312 1 +0.9688 0.5625 0 +0.9688 0.5625 0.03125 +0.9688 0.5625 0.0625 +0.9688 0.5625 0.09375 +0.9688 0.5625 0.125 +0.9688 0.5625 0.1562 +0.9688 0.5625 0.1875 +0.9688 0.5625 0.2188 +0.9688 0.5625 0.25 +0.9688 0.5625 0.2812 +0.9688 0.5625 0.3125 +0.9688 0.5625 0.3438 +0.9688 0.5625 0.375 +0.9688 0.5625 0.4062 +0.9688 0.5625 0.4375 +0.9688 0.5625 0.4688 +0.9688 0.5625 0.5 +0.9688 0.5625 0.5312 +0.9688 0.5625 0.5625 +0.9688 0.5625 0.5938 +0.9688 0.5625 0.625 +0.9688 0.5625 0.6562 +0.9688 0.5625 0.6875 +0.9688 0.5625 0.7188 +0.9688 0.5625 0.75 +0.9688 0.5625 0.7812 +0.9688 0.5625 0.8125 +0.9688 0.5625 0.8438 +0.9688 0.5625 0.875 +0.9688 0.5625 0.9062 +0.9688 0.5625 0.9375 +0.9688 0.5625 0.9688 +0.9688 0.5625 1 +0.9688 0.5938 0 +0.9688 0.5938 0.03125 +0.9688 0.5938 0.0625 +0.9688 0.5938 0.09375 +0.9688 0.5938 0.125 +0.9688 0.5938 0.1562 +0.9688 0.5938 0.1875 +0.9688 0.5938 0.2188 +0.9688 0.5938 0.25 +0.9688 0.5938 0.2812 +0.9688 0.5938 0.3125 +0.9688 0.5938 0.3438 +0.9688 0.5938 0.375 +0.9688 0.5938 0.4062 +0.9688 0.5938 0.4375 +0.9688 0.5938 0.4688 +0.9688 0.5938 0.5 +0.9688 0.5938 0.5312 +0.9688 0.5938 0.5625 +0.9688 0.5938 0.5938 +0.9688 0.5938 0.625 +0.9688 0.5938 0.6562 +0.9688 0.5938 0.6875 +0.9688 0.5938 0.7188 +0.9688 0.5938 0.75 +0.9688 0.5938 0.7812 +0.9688 0.5938 0.8125 +0.9688 0.5938 0.8438 +0.9688 0.5938 0.875 +0.9688 0.5938 0.9062 +0.9688 0.5938 0.9375 +0.9688 0.5938 0.9688 +0.9688 0.5938 1 +0.9688 0.625 0 +0.9688 0.625 0.03125 +0.9688 0.625 0.0625 +0.9688 0.625 0.09375 +0.9688 0.625 0.125 +0.9688 0.625 0.1562 +0.9688 0.625 0.1875 +0.9688 0.625 0.2188 +0.9688 0.625 0.25 +0.9688 0.625 0.2812 +0.9688 0.625 0.3125 +0.9688 0.625 0.3438 +0.9688 0.625 0.375 +0.9688 0.625 0.4062 +0.9688 0.625 0.4375 +0.9688 0.625 0.4688 +0.9688 0.625 0.5 +0.9688 0.625 0.5312 +0.9688 0.625 0.5625 +0.9688 0.625 0.5938 +0.9688 0.625 0.625 +0.9688 0.625 0.6562 +0.9688 0.625 0.6875 +0.9688 0.625 0.7188 +0.9688 0.625 0.75 +0.9688 0.625 0.7812 +0.9688 0.625 0.8125 +0.9688 0.625 0.8438 +0.9688 0.625 0.875 +0.9688 0.625 0.9062 +0.9688 0.625 0.9375 +0.9688 0.625 0.9688 +0.9688 0.625 1 +0.9688 0.6562 0 +0.9688 0.6562 0.03125 +0.9688 0.6562 0.0625 +0.9688 0.6562 0.09375 +0.9688 0.6562 0.125 +0.9688 0.6562 0.1562 +0.9688 0.6562 0.1875 +0.9688 0.6562 0.2188 +0.9688 0.6562 0.25 +0.9688 0.6562 0.2812 +0.9688 0.6562 0.3125 +0.9688 0.6562 0.3438 +0.9688 0.6562 0.375 +0.9688 0.6562 0.4062 +0.9688 0.6562 0.4375 +0.9688 0.6562 0.4688 +0.9688 0.6562 0.5 +0.9688 0.6562 0.5312 +0.9688 0.6562 0.5625 +0.9688 0.6562 0.5938 +0.9688 0.6562 0.625 +0.9688 0.6562 0.6562 +0.9688 0.6562 0.6875 +0.9688 0.6562 0.7188 +0.9688 0.6562 0.75 +0.9688 0.6562 0.7812 +0.9688 0.6562 0.8125 +0.9688 0.6562 0.8438 +0.9688 0.6562 0.875 +0.9688 0.6562 0.9062 +0.9688 0.6562 0.9375 +0.9688 0.6562 0.9688 +0.9688 0.6562 1 +0.9688 0.6875 0 +0.9688 0.6875 0.03125 +0.9688 0.6875 0.0625 +0.9688 0.6875 0.09375 +0.9688 0.6875 0.125 +0.9688 0.6875 0.1562 +0.9688 0.6875 0.1875 +0.9688 0.6875 0.2188 +0.9688 0.6875 0.25 +0.9688 0.6875 0.2812 +0.9688 0.6875 0.3125 +0.9688 0.6875 0.3438 +0.9688 0.6875 0.375 +0.9688 0.6875 0.4062 +0.9688 0.6875 0.4375 +0.9688 0.6875 0.4688 +0.9688 0.6875 0.5 +0.9688 0.6875 0.5312 +0.9688 0.6875 0.5625 +0.9688 0.6875 0.5938 +0.9688 0.6875 0.625 +0.9688 0.6875 0.6562 +0.9688 0.6875 0.6875 +0.9688 0.6875 0.7188 +0.9688 0.6875 0.75 +0.9688 0.6875 0.7812 +0.9688 0.6875 0.8125 +0.9688 0.6875 0.8438 +0.9688 0.6875 0.875 +0.9688 0.6875 0.9062 +0.9688 0.6875 0.9375 +0.9688 0.6875 0.9688 +0.9688 0.6875 1 +0.9688 0.7188 0 +0.9688 0.7188 0.03125 +0.9688 0.7188 0.0625 +0.9688 0.7188 0.09375 +0.9688 0.7188 0.125 +0.9688 0.7188 0.1562 +0.9688 0.7188 0.1875 +0.9688 0.7188 0.2188 +0.9688 0.7188 0.25 +0.9688 0.7188 0.2812 +0.9688 0.7188 0.3125 +0.9688 0.7188 0.3438 +0.9688 0.7188 0.375 +0.9688 0.7188 0.4062 +0.9688 0.7188 0.4375 +0.9688 0.7188 0.4688 +0.9688 0.7188 0.5 +0.9688 0.7188 0.5312 +0.9688 0.7188 0.5625 +0.9688 0.7188 0.5938 +0.9688 0.7188 0.625 +0.9688 0.7188 0.6562 +0.9688 0.7188 0.6875 +0.9688 0.7188 0.7188 +0.9688 0.7188 0.75 +0.9688 0.7188 0.7812 +0.9688 0.7188 0.8125 +0.9688 0.7188 0.8438 +0.9688 0.7188 0.875 +0.9688 0.7188 0.9062 +0.9688 0.7188 0.9375 +0.9688 0.7188 0.9688 +0.9688 0.7188 1 +0.9688 0.75 0 +0.9688 0.75 0.03125 +0.9688 0.75 0.0625 +0.9688 0.75 0.09375 +0.9688 0.75 0.125 +0.9688 0.75 0.1562 +0.9688 0.75 0.1875 +0.9688 0.75 0.2188 +0.9688 0.75 0.25 +0.9688 0.75 0.2812 +0.9688 0.75 0.3125 +0.9688 0.75 0.3438 +0.9688 0.75 0.375 +0.9688 0.75 0.4062 +0.9688 0.75 0.4375 +0.9688 0.75 0.4688 +0.9688 0.75 0.5 +0.9688 0.75 0.5312 +0.9688 0.75 0.5625 +0.9688 0.75 0.5938 +0.9688 0.75 0.625 +0.9688 0.75 0.6562 +0.9688 0.75 0.6875 +0.9688 0.75 0.7188 +0.9688 0.75 0.75 +0.9688 0.75 0.7812 +0.9688 0.75 0.8125 +0.9688 0.75 0.8438 +0.9688 0.75 0.875 +0.9688 0.75 0.9062 +0.9688 0.75 0.9375 +0.9688 0.75 0.9688 +0.9688 0.75 1 +0.9688 0.7812 0 +0.9688 0.7812 0.03125 +0.9688 0.7812 0.0625 +0.9688 0.7812 0.09375 +0.9688 0.7812 0.125 +0.9688 0.7812 0.1562 +0.9688 0.7812 0.1875 +0.9688 0.7812 0.2188 +0.9688 0.7812 0.25 +0.9688 0.7812 0.2812 +0.9688 0.7812 0.3125 +0.9688 0.7812 0.3438 +0.9688 0.7812 0.375 +0.9688 0.7812 0.4062 +0.9688 0.7812 0.4375 +0.9688 0.7812 0.4688 +0.9688 0.7812 0.5 +0.9688 0.7812 0.5312 +0.9688 0.7812 0.5625 +0.9688 0.7812 0.5938 +0.9688 0.7812 0.625 +0.9688 0.7812 0.6562 +0.9688 0.7812 0.6875 +0.9688 0.7812 0.7188 +0.9688 0.7812 0.75 +0.9688 0.7812 0.7812 +0.9688 0.7812 0.8125 +0.9688 0.7812 0.8438 +0.9688 0.7812 0.875 +0.9688 0.7812 0.9062 +0.9688 0.7812 0.9375 +0.9688 0.7812 0.9688 +0.9688 0.7812 1 +0.9688 0.8125 0 +0.9688 0.8125 0.03125 +0.9688 0.8125 0.0625 +0.9688 0.8125 0.09375 +0.9688 0.8125 0.125 +0.9688 0.8125 0.1562 +0.9688 0.8125 0.1875 +0.9688 0.8125 0.2188 +0.9688 0.8125 0.25 +0.9688 0.8125 0.2812 +0.9688 0.8125 0.3125 +0.9688 0.8125 0.3438 +0.9688 0.8125 0.375 +0.9688 0.8125 0.4062 +0.9688 0.8125 0.4375 +0.9688 0.8125 0.4688 +0.9688 0.8125 0.5 +0.9688 0.8125 0.5312 +0.9688 0.8125 0.5625 +0.9688 0.8125 0.5938 +0.9688 0.8125 0.625 +0.9688 0.8125 0.6562 +0.9688 0.8125 0.6875 +0.9688 0.8125 0.7188 +0.9688 0.8125 0.75 +0.9688 0.8125 0.7812 +0.9688 0.8125 0.8125 +0.9688 0.8125 0.8438 +0.9688 0.8125 0.875 +0.9688 0.8125 0.9062 +0.9688 0.8125 0.9375 +0.9688 0.8125 0.9688 +0.9688 0.8125 1 +0.9688 0.8438 0 +0.9688 0.8438 0.03125 +0.9688 0.8438 0.0625 +0.9688 0.8438 0.09375 +0.9688 0.8438 0.125 +0.9688 0.8438 0.1562 +0.9688 0.8438 0.1875 +0.9688 0.8438 0.2188 +0.9688 0.8438 0.25 +0.9688 0.8438 0.2812 +0.9688 0.8438 0.3125 +0.9688 0.8438 0.3438 +0.9688 0.8438 0.375 +0.9688 0.8438 0.4062 +0.9688 0.8438 0.4375 +0.9688 0.8438 0.4688 +0.9688 0.8438 0.5 +0.9688 0.8438 0.5312 +0.9688 0.8438 0.5625 +0.9688 0.8438 0.5938 +0.9688 0.8438 0.625 +0.9688 0.8438 0.6562 +0.9688 0.8438 0.6875 +0.9688 0.8438 0.7188 +0.9688 0.8438 0.75 +0.9688 0.8438 0.7812 +0.9688 0.8438 0.8125 +0.9688 0.8438 0.8438 +0.9688 0.8438 0.875 +0.9688 0.8438 0.9062 +0.9688 0.8438 0.9375 +0.9688 0.8438 0.9688 +0.9688 0.8438 1 +0.9688 0.875 0 +0.9688 0.875 0.03125 +0.9688 0.875 0.0625 +0.9688 0.875 0.09375 +0.9688 0.875 0.125 +0.9688 0.875 0.1562 +0.9688 0.875 0.1875 +0.9688 0.875 0.2188 +0.9688 0.875 0.25 +0.9688 0.875 0.2812 +0.9688 0.875 0.3125 +0.9688 0.875 0.3438 +0.9688 0.875 0.375 +0.9688 0.875 0.4062 +0.9688 0.875 0.4375 +0.9688 0.875 0.4688 +0.9688 0.875 0.5 +0.9688 0.875 0.5312 +0.9688 0.875 0.5625 +0.9688 0.875 0.5938 +0.9688 0.875 0.625 +0.9688 0.875 0.6562 +0.9688 0.875 0.6875 +0.9688 0.875 0.7188 +0.9688 0.875 0.75 +0.9688 0.875 0.7812 +0.9688 0.875 0.8125 +0.9688 0.875 0.8438 +0.9688 0.875 0.875 +0.9688 0.875 0.9062 +0.9688 0.875 0.9375 +0.9688 0.875 0.9688 +0.9688 0.875 1 +0.9688 0.9062 0 +0.9688 0.9062 0.03125 +0.9688 0.9062 0.0625 +0.9688 0.9062 0.09375 +0.9688 0.9062 0.125 +0.9688 0.9062 0.1562 +0.9688 0.9062 0.1875 +0.9688 0.9062 0.2188 +0.9688 0.9062 0.25 +0.9688 0.9062 0.2812 +0.9688 0.9062 0.3125 +0.9688 0.9062 0.3438 +0.9688 0.9062 0.375 +0.9688 0.9062 0.4062 +0.9688 0.9062 0.4375 +0.9688 0.9062 0.4688 +0.9688 0.9062 0.5 +0.9688 0.9062 0.5312 +0.9688 0.9062 0.5625 +0.9688 0.9062 0.5938 +0.9688 0.9062 0.625 +0.9688 0.9062 0.6562 +0.9688 0.9062 0.6875 +0.9688 0.9062 0.7188 +0.9688 0.9062 0.75 +0.9688 0.9062 0.7812 +0.9688 0.9062 0.8125 +0.9688 0.9062 0.8438 +0.9688 0.9062 0.875 +0.9688 0.9062 0.9062 +0.9688 0.9062 0.9375 +0.9688 0.9062 0.9688 +0.9688 0.9062 1 +0.9688 0.9375 0 +0.9688 0.9375 0.03125 +0.9688 0.9375 0.0625 +0.9688 0.9375 0.09375 +0.9688 0.9375 0.125 +0.9688 0.9375 0.1562 +0.9688 0.9375 0.1875 +0.9688 0.9375 0.2188 +0.9688 0.9375 0.25 +0.9688 0.9375 0.2812 +0.9688 0.9375 0.3125 +0.9688 0.9375 0.3438 +0.9688 0.9375 0.375 +0.9688 0.9375 0.4062 +0.9688 0.9375 0.4375 +0.9688 0.9375 0.4688 +0.9688 0.9375 0.5 +0.9688 0.9375 0.5312 +0.9688 0.9375 0.5625 +0.9688 0.9375 0.5938 +0.9688 0.9375 0.625 +0.9688 0.9375 0.6562 +0.9688 0.9375 0.6875 +0.9688 0.9375 0.7188 +0.9688 0.9375 0.75 +0.9688 0.9375 0.7812 +0.9688 0.9375 0.8125 +0.9688 0.9375 0.8438 +0.9688 0.9375 0.875 +0.9688 0.9375 0.9062 +0.9688 0.9375 0.9375 +0.9688 0.9375 0.9688 +0.9688 0.9375 1 +0.9688 0.9688 0 +0.9688 0.9688 0.03125 +0.9688 0.9688 0.0625 +0.9688 0.9688 0.09375 +0.9688 0.9688 0.125 +0.9688 0.9688 0.1562 +0.9688 0.9688 0.1875 +0.9688 0.9688 0.2188 +0.9688 0.9688 0.25 +0.9688 0.9688 0.2812 +0.9688 0.9688 0.3125 +0.9688 0.9688 0.3438 +0.9688 0.9688 0.375 +0.9688 0.9688 0.4062 +0.9688 0.9688 0.4375 +0.9688 0.9688 0.4688 +0.9688 0.9688 0.5 +0.9688 0.9688 0.5312 +0.9688 0.9688 0.5625 +0.9688 0.9688 0.5938 +0.9688 0.9688 0.625 +0.9688 0.9688 0.6562 +0.9688 0.9688 0.6875 +0.9688 0.9688 0.7188 +0.9688 0.9688 0.75 +0.9688 0.9688 0.7812 +0.9688 0.9688 0.8125 +0.9688 0.9688 0.8438 +0.9688 0.9688 0.875 +0.9688 0.9688 0.9062 +0.9688 0.9688 0.9375 +0.9688 0.9688 0.9688 +0.9688 0.9688 1 +0.9688 1 0 +0.9688 1 0.03125 +0.9688 1 0.0625 +0.9688 1 0.09375 +0.9688 1 0.125 +0.9688 1 0.1562 +0.9688 1 0.1875 +0.9688 1 0.2188 +0.9688 1 0.25 +0.9688 1 0.2812 +0.9688 1 0.3125 +0.9688 1 0.3438 +0.9688 1 0.375 +0.9688 1 0.4062 +0.9688 1 0.4375 +0.9688 1 0.4688 +0.9688 1 0.5 +0.9688 1 0.5312 +0.9688 1 0.5625 +0.9688 1 0.5938 +0.9688 1 0.625 +0.9688 1 0.6562 +0.9688 1 0.6875 +0.9688 1 0.7188 +0.9688 1 0.75 +0.9688 1 0.7812 +0.9688 1 0.8125 +0.9688 1 0.8438 +0.9688 1 0.875 +0.9688 1 0.9062 +0.9688 1 0.9375 +0.9688 1 0.9688 +0.9688 1 1 +1 0 0 +1 0 0.03125 +1 0 0.0625 +1 0 0.09375 +1 0 0.125 +1 0 0.1562 +1 0 0.1875 +1 0 0.2188 +1 0 0.25 +1 0 0.2812 +1 0 0.3125 +1 0 0.3438 +1 0 0.375 +1 0 0.4062 +1 0 0.4375 +1 0 0.4688 +1 0 0.5 +1 0 0.5312 +1 0 0.5625 +1 0 0.5938 +1 0 0.625 +1 0 0.6562 +1 0 0.6875 +1 0 0.7188 +1 0 0.75 +1 0 0.7812 +1 0 0.8125 +1 0 0.8438 +1 0 0.875 +1 0 0.9062 +1 0 0.9375 +1 0 0.9688 +1 0 1 +1 0.03125 0 +1 0.03125 0.03125 +1 0.03125 0.0625 +1 0.03125 0.09375 +1 0.03125 0.125 +1 0.03125 0.1562 +1 0.03125 0.1875 +1 0.03125 0.2188 +1 0.03125 0.25 +1 0.03125 0.2812 +1 0.03125 0.3125 +1 0.03125 0.3438 +1 0.03125 0.375 +1 0.03125 0.4062 +1 0.03125 0.4375 +1 0.03125 0.4688 +1 0.03125 0.5 +1 0.03125 0.5312 +1 0.03125 0.5625 +1 0.03125 0.5938 +1 0.03125 0.625 +1 0.03125 0.6562 +1 0.03125 0.6875 +1 0.03125 0.7188 +1 0.03125 0.75 +1 0.03125 0.7812 +1 0.03125 0.8125 +1 0.03125 0.8438 +1 0.03125 0.875 +1 0.03125 0.9062 +1 0.03125 0.9375 +1 0.03125 0.9688 +1 0.03125 1 +1 0.0625 0 +1 0.0625 0.03125 +1 0.0625 0.0625 +1 0.0625 0.09375 +1 0.0625 0.125 +1 0.0625 0.1562 +1 0.0625 0.1875 +1 0.0625 0.2188 +1 0.0625 0.25 +1 0.0625 0.2812 +1 0.0625 0.3125 +1 0.0625 0.3438 +1 0.0625 0.375 +1 0.0625 0.4062 +1 0.0625 0.4375 +1 0.0625 0.4688 +1 0.0625 0.5 +1 0.0625 0.5312 +1 0.0625 0.5625 +1 0.0625 0.5938 +1 0.0625 0.625 +1 0.0625 0.6562 +1 0.0625 0.6875 +1 0.0625 0.7188 +1 0.0625 0.75 +1 0.0625 0.7812 +1 0.0625 0.8125 +1 0.0625 0.8438 +1 0.0625 0.875 +1 0.0625 0.9062 +1 0.0625 0.9375 +1 0.0625 0.9688 +1 0.0625 1 +1 0.09375 0 +1 0.09375 0.03125 +1 0.09375 0.0625 +1 0.09375 0.09375 +1 0.09375 0.125 +1 0.09375 0.1562 +1 0.09375 0.1875 +1 0.09375 0.2188 +1 0.09375 0.25 +1 0.09375 0.2812 +1 0.09375 0.3125 +1 0.09375 0.3438 +1 0.09375 0.375 +1 0.09375 0.4062 +1 0.09375 0.4375 +1 0.09375 0.4688 +1 0.09375 0.5 +1 0.09375 0.5312 +1 0.09375 0.5625 +1 0.09375 0.5938 +1 0.09375 0.625 +1 0.09375 0.6562 +1 0.09375 0.6875 +1 0.09375 0.7188 +1 0.09375 0.75 +1 0.09375 0.7812 +1 0.09375 0.8125 +1 0.09375 0.8438 +1 0.09375 0.875 +1 0.09375 0.9062 +1 0.09375 0.9375 +1 0.09375 0.9688 +1 0.09375 1 +1 0.125 0 +1 0.125 0.03125 +1 0.125 0.0625 +1 0.125 0.09375 +1 0.125 0.125 +1 0.125 0.1562 +1 0.125 0.1875 +1 0.125 0.2188 +1 0.125 0.25 +1 0.125 0.2812 +1 0.125 0.3125 +1 0.125 0.3438 +1 0.125 0.375 +1 0.125 0.4062 +1 0.125 0.4375 +1 0.125 0.4688 +1 0.125 0.5 +1 0.125 0.5312 +1 0.125 0.5625 +1 0.125 0.5938 +1 0.125 0.625 +1 0.125 0.6562 +1 0.125 0.6875 +1 0.125 0.7188 +1 0.125 0.75 +1 0.125 0.7812 +1 0.125 0.8125 +1 0.125 0.8438 +1 0.125 0.875 +1 0.125 0.9062 +1 0.125 0.9375 +1 0.125 0.9688 +1 0.125 1 +1 0.1562 0 +1 0.1562 0.03125 +1 0.1562 0.0625 +1 0.1562 0.09375 +1 0.1562 0.125 +1 0.1562 0.1562 +1 0.1562 0.1875 +1 0.1562 0.2188 +1 0.1562 0.25 +1 0.1562 0.2812 +1 0.1562 0.3125 +1 0.1562 0.3438 +1 0.1562 0.375 +1 0.1562 0.4062 +1 0.1562 0.4375 +1 0.1562 0.4688 +1 0.1562 0.5 +1 0.1562 0.5312 +1 0.1562 0.5625 +1 0.1562 0.5938 +1 0.1562 0.625 +1 0.1562 0.6562 +1 0.1562 0.6875 +1 0.1562 0.7188 +1 0.1562 0.75 +1 0.1562 0.7812 +1 0.1562 0.8125 +1 0.1562 0.8438 +1 0.1562 0.875 +1 0.1562 0.9062 +1 0.1562 0.9375 +1 0.1562 0.9688 +1 0.1562 1 +1 0.1875 0 +1 0.1875 0.03125 +1 0.1875 0.0625 +1 0.1875 0.09375 +1 0.1875 0.125 +1 0.1875 0.1562 +1 0.1875 0.1875 +1 0.1875 0.2188 +1 0.1875 0.25 +1 0.1875 0.2812 +1 0.1875 0.3125 +1 0.1875 0.3438 +1 0.1875 0.375 +1 0.1875 0.4062 +1 0.1875 0.4375 +1 0.1875 0.4688 +1 0.1875 0.5 +1 0.1875 0.5312 +1 0.1875 0.5625 +1 0.1875 0.5938 +1 0.1875 0.625 +1 0.1875 0.6562 +1 0.1875 0.6875 +1 0.1875 0.7188 +1 0.1875 0.75 +1 0.1875 0.7812 +1 0.1875 0.8125 +1 0.1875 0.8438 +1 0.1875 0.875 +1 0.1875 0.9062 +1 0.1875 0.9375 +1 0.1875 0.9688 +1 0.1875 1 +1 0.2188 0 +1 0.2188 0.03125 +1 0.2188 0.0625 +1 0.2188 0.09375 +1 0.2188 0.125 +1 0.2188 0.1562 +1 0.2188 0.1875 +1 0.2188 0.2188 +1 0.2188 0.25 +1 0.2188 0.2812 +1 0.2188 0.3125 +1 0.2188 0.3438 +1 0.2188 0.375 +1 0.2188 0.4062 +1 0.2188 0.4375 +1 0.2188 0.4688 +1 0.2188 0.5 +1 0.2188 0.5312 +1 0.2188 0.5625 +1 0.2188 0.5938 +1 0.2188 0.625 +1 0.2188 0.6562 +1 0.2188 0.6875 +1 0.2188 0.7188 +1 0.2188 0.75 +1 0.2188 0.7812 +1 0.2188 0.8125 +1 0.2188 0.8438 +1 0.2188 0.875 +1 0.2188 0.9062 +1 0.2188 0.9375 +1 0.2188 0.9688 +1 0.2188 1 +1 0.25 0 +1 0.25 0.03125 +1 0.25 0.0625 +1 0.25 0.09375 +1 0.25 0.125 +1 0.25 0.1562 +1 0.25 0.1875 +1 0.25 0.2188 +1 0.25 0.25 +1 0.25 0.2812 +1 0.25 0.3125 +1 0.25 0.3438 +1 0.25 0.375 +1 0.25 0.4062 +1 0.25 0.4375 +1 0.25 0.4688 +1 0.25 0.5 +1 0.25 0.5312 +1 0.25 0.5625 +1 0.25 0.5938 +1 0.25 0.625 +1 0.25 0.6562 +1 0.25 0.6875 +1 0.25 0.7188 +1 0.25 0.75 +1 0.25 0.7812 +1 0.25 0.8125 +1 0.25 0.8438 +1 0.25 0.875 +1 0.25 0.9062 +1 0.25 0.9375 +1 0.25 0.9688 +1 0.25 1 +1 0.2812 0 +1 0.2812 0.03125 +1 0.2812 0.0625 +1 0.2812 0.09375 +1 0.2812 0.125 +1 0.2812 0.1562 +1 0.2812 0.1875 +1 0.2812 0.2188 +1 0.2812 0.25 +1 0.2812 0.2812 +1 0.2812 0.3125 +1 0.2812 0.3438 +1 0.2812 0.375 +1 0.2812 0.4062 +1 0.2812 0.4375 +1 0.2812 0.4688 +1 0.2812 0.5 +1 0.2812 0.5312 +1 0.2812 0.5625 +1 0.2812 0.5938 +1 0.2812 0.625 +1 0.2812 0.6562 +1 0.2812 0.6875 +1 0.2812 0.7188 +1 0.2812 0.75 +1 0.2812 0.7812 +1 0.2812 0.8125 +1 0.2812 0.8438 +1 0.2812 0.875 +1 0.2812 0.9062 +1 0.2812 0.9375 +1 0.2812 0.9688 +1 0.2812 1 +1 0.3125 0 +1 0.3125 0.03125 +1 0.3125 0.0625 +1 0.3125 0.09375 +1 0.3125 0.125 +1 0.3125 0.1562 +1 0.3125 0.1875 +1 0.3125 0.2188 +1 0.3125 0.25 +1 0.3125 0.2812 +1 0.3125 0.3125 +1 0.3125 0.3438 +1 0.3125 0.375 +1 0.3125 0.4062 +1 0.3125 0.4375 +1 0.3125 0.4688 +1 0.3125 0.5 +1 0.3125 0.5312 +1 0.3125 0.5625 +1 0.3125 0.5938 +1 0.3125 0.625 +1 0.3125 0.6562 +1 0.3125 0.6875 +1 0.3125 0.7188 +1 0.3125 0.75 +1 0.3125 0.7812 +1 0.3125 0.8125 +1 0.3125 0.8438 +1 0.3125 0.875 +1 0.3125 0.9062 +1 0.3125 0.9375 +1 0.3125 0.9688 +1 0.3125 1 +1 0.3438 0 +1 0.3438 0.03125 +1 0.3438 0.0625 +1 0.3438 0.09375 +1 0.3438 0.125 +1 0.3438 0.1562 +1 0.3438 0.1875 +1 0.3438 0.2188 +1 0.3438 0.25 +1 0.3438 0.2812 +1 0.3438 0.3125 +1 0.3438 0.3438 +1 0.3438 0.375 +1 0.3438 0.4062 +1 0.3438 0.4375 +1 0.3438 0.4688 +1 0.3438 0.5 +1 0.3438 0.5312 +1 0.3438 0.5625 +1 0.3438 0.5938 +1 0.3438 0.625 +1 0.3438 0.6562 +1 0.3438 0.6875 +1 0.3438 0.7188 +1 0.3438 0.75 +1 0.3438 0.7812 +1 0.3438 0.8125 +1 0.3438 0.8438 +1 0.3438 0.875 +1 0.3438 0.9062 +1 0.3438 0.9375 +1 0.3438 0.9688 +1 0.3438 1 +1 0.375 0 +1 0.375 0.03125 +1 0.375 0.0625 +1 0.375 0.09375 +1 0.375 0.125 +1 0.375 0.1562 +1 0.375 0.1875 +1 0.375 0.2188 +1 0.375 0.25 +1 0.375 0.2812 +1 0.375 0.3125 +1 0.375 0.3438 +1 0.375 0.375 +1 0.375 0.4062 +1 0.375 0.4375 +1 0.375 0.4688 +1 0.375 0.5 +1 0.375 0.5312 +1 0.375 0.5625 +1 0.375 0.5938 +1 0.375 0.625 +1 0.375 0.6562 +1 0.375 0.6875 +1 0.375 0.7188 +1 0.375 0.75 +1 0.375 0.7812 +1 0.375 0.8125 +1 0.375 0.8438 +1 0.375 0.875 +1 0.375 0.9062 +1 0.375 0.9375 +1 0.375 0.9688 +1 0.375 1 +1 0.4062 0 +1 0.4062 0.03125 +1 0.4062 0.0625 +1 0.4062 0.09375 +1 0.4062 0.125 +1 0.4062 0.1562 +1 0.4062 0.1875 +1 0.4062 0.2188 +1 0.4062 0.25 +1 0.4062 0.2812 +1 0.4062 0.3125 +1 0.4062 0.3438 +1 0.4062 0.375 +1 0.4062 0.4062 +1 0.4062 0.4375 +1 0.4062 0.4688 +1 0.4062 0.5 +1 0.4062 0.5312 +1 0.4062 0.5625 +1 0.4062 0.5938 +1 0.4062 0.625 +1 0.4062 0.6562 +1 0.4062 0.6875 +1 0.4062 0.7188 +1 0.4062 0.75 +1 0.4062 0.7812 +1 0.4062 0.8125 +1 0.4062 0.8438 +1 0.4062 0.875 +1 0.4062 0.9062 +1 0.4062 0.9375 +1 0.4062 0.9688 +1 0.4062 1 +1 0.4375 0 +1 0.4375 0.03125 +1 0.4375 0.0625 +1 0.4375 0.09375 +1 0.4375 0.125 +1 0.4375 0.1562 +1 0.4375 0.1875 +1 0.4375 0.2188 +1 0.4375 0.25 +1 0.4375 0.2812 +1 0.4375 0.3125 +1 0.4375 0.3438 +1 0.4375 0.375 +1 0.4375 0.4062 +1 0.4375 0.4375 +1 0.4375 0.4688 +1 0.4375 0.5 +1 0.4375 0.5312 +1 0.4375 0.5625 +1 0.4375 0.5938 +1 0.4375 0.625 +1 0.4375 0.6562 +1 0.4375 0.6875 +1 0.4375 0.7188 +1 0.4375 0.75 +1 0.4375 0.7812 +1 0.4375 0.8125 +1 0.4375 0.8438 +1 0.4375 0.875 +1 0.4375 0.9062 +1 0.4375 0.9375 +1 0.4375 0.9688 +1 0.4375 1 +1 0.4688 0 +1 0.4688 0.03125 +1 0.4688 0.0625 +1 0.4688 0.09375 +1 0.4688 0.125 +1 0.4688 0.1562 +1 0.4688 0.1875 +1 0.4688 0.2188 +1 0.4688 0.25 +1 0.4688 0.2812 +1 0.4688 0.3125 +1 0.4688 0.3438 +1 0.4688 0.375 +1 0.4688 0.4062 +1 0.4688 0.4375 +1 0.4688 0.4688 +1 0.4688 0.5 +1 0.4688 0.5312 +1 0.4688 0.5625 +1 0.4688 0.5938 +1 0.4688 0.625 +1 0.4688 0.6562 +1 0.4688 0.6875 +1 0.4688 0.7188 +1 0.4688 0.75 +1 0.4688 0.7812 +1 0.4688 0.8125 +1 0.4688 0.8438 +1 0.4688 0.875 +1 0.4688 0.9062 +1 0.4688 0.9375 +1 0.4688 0.9688 +1 0.4688 1 +1 0.5 0 +1 0.5 0.03125 +1 0.5 0.0625 +1 0.5 0.09375 +1 0.5 0.125 +1 0.5 0.1562 +1 0.5 0.1875 +1 0.5 0.2188 +1 0.5 0.25 +1 0.5 0.2812 +1 0.5 0.3125 +1 0.5 0.3438 +1 0.5 0.375 +1 0.5 0.4062 +1 0.5 0.4375 +1 0.5 0.4688 +1 0.5 0.5 +1 0.5 0.5312 +1 0.5 0.5625 +1 0.5 0.5938 +1 0.5 0.625 +1 0.5 0.6562 +1 0.5 0.6875 +1 0.5 0.7188 +1 0.5 0.75 +1 0.5 0.7812 +1 0.5 0.8125 +1 0.5 0.8438 +1 0.5 0.875 +1 0.5 0.9062 +1 0.5 0.9375 +1 0.5 0.9688 +1 0.5 1 +1 0.5312 0 +1 0.5312 0.03125 +1 0.5312 0.0625 +1 0.5312 0.09375 +1 0.5312 0.125 +1 0.5312 0.1562 +1 0.5312 0.1875 +1 0.5312 0.2188 +1 0.5312 0.25 +1 0.5312 0.2812 +1 0.5312 0.3125 +1 0.5312 0.3438 +1 0.5312 0.375 +1 0.5312 0.4062 +1 0.5312 0.4375 +1 0.5312 0.4688 +1 0.5312 0.5 +1 0.5312 0.5312 +1 0.5312 0.5625 +1 0.5312 0.5938 +1 0.5312 0.625 +1 0.5312 0.6562 +1 0.5312 0.6875 +1 0.5312 0.7188 +1 0.5312 0.75 +1 0.5312 0.7812 +1 0.5312 0.8125 +1 0.5312 0.8438 +1 0.5312 0.875 +1 0.5312 0.9062 +1 0.5312 0.9375 +1 0.5312 0.9688 +1 0.5312 1 +1 0.5625 0 +1 0.5625 0.03125 +1 0.5625 0.0625 +1 0.5625 0.09375 +1 0.5625 0.125 +1 0.5625 0.1562 +1 0.5625 0.1875 +1 0.5625 0.2188 +1 0.5625 0.25 +1 0.5625 0.2812 +1 0.5625 0.3125 +1 0.5625 0.3438 +1 0.5625 0.375 +1 0.5625 0.4062 +1 0.5625 0.4375 +1 0.5625 0.4688 +1 0.5625 0.5 +1 0.5625 0.5312 +1 0.5625 0.5625 +1 0.5625 0.5938 +1 0.5625 0.625 +1 0.5625 0.6562 +1 0.5625 0.6875 +1 0.5625 0.7188 +1 0.5625 0.75 +1 0.5625 0.7812 +1 0.5625 0.8125 +1 0.5625 0.8438 +1 0.5625 0.875 +1 0.5625 0.9062 +1 0.5625 0.9375 +1 0.5625 0.9688 +1 0.5625 1 +1 0.5938 0 +1 0.5938 0.03125 +1 0.5938 0.0625 +1 0.5938 0.09375 +1 0.5938 0.125 +1 0.5938 0.1562 +1 0.5938 0.1875 +1 0.5938 0.2188 +1 0.5938 0.25 +1 0.5938 0.2812 +1 0.5938 0.3125 +1 0.5938 0.3438 +1 0.5938 0.375 +1 0.5938 0.4062 +1 0.5938 0.4375 +1 0.5938 0.4688 +1 0.5938 0.5 +1 0.5938 0.5312 +1 0.5938 0.5625 +1 0.5938 0.5938 +1 0.5938 0.625 +1 0.5938 0.6562 +1 0.5938 0.6875 +1 0.5938 0.7188 +1 0.5938 0.75 +1 0.5938 0.7812 +1 0.5938 0.8125 +1 0.5938 0.8438 +1 0.5938 0.875 +1 0.5938 0.9062 +1 0.5938 0.9375 +1 0.5938 0.9688 +1 0.5938 1 +1 0.625 0 +1 0.625 0.03125 +1 0.625 0.0625 +1 0.625 0.09375 +1 0.625 0.125 +1 0.625 0.1562 +1 0.625 0.1875 +1 0.625 0.2188 +1 0.625 0.25 +1 0.625 0.2812 +1 0.625 0.3125 +1 0.625 0.3438 +1 0.625 0.375 +1 0.625 0.4062 +1 0.625 0.4375 +1 0.625 0.4688 +1 0.625 0.5 +1 0.625 0.5312 +1 0.625 0.5625 +1 0.625 0.5938 +1 0.625 0.625 +1 0.625 0.6562 +1 0.625 0.6875 +1 0.625 0.7188 +1 0.625 0.75 +1 0.625 0.7812 +1 0.625 0.8125 +1 0.625 0.8438 +1 0.625 0.875 +1 0.625 0.9062 +1 0.625 0.9375 +1 0.625 0.9688 +1 0.625 1 +1 0.6562 0 +1 0.6562 0.03125 +1 0.6562 0.0625 +1 0.6562 0.09375 +1 0.6562 0.125 +1 0.6562 0.1562 +1 0.6562 0.1875 +1 0.6562 0.2188 +1 0.6562 0.25 +1 0.6562 0.2812 +1 0.6562 0.3125 +1 0.6562 0.3438 +1 0.6562 0.375 +1 0.6562 0.4062 +1 0.6562 0.4375 +1 0.6562 0.4688 +1 0.6562 0.5 +1 0.6562 0.5312 +1 0.6562 0.5625 +1 0.6562 0.5938 +1 0.6562 0.625 +1 0.6562 0.6562 +1 0.6562 0.6875 +1 0.6562 0.7188 +1 0.6562 0.75 +1 0.6562 0.7812 +1 0.6562 0.8125 +1 0.6562 0.8438 +1 0.6562 0.875 +1 0.6562 0.9062 +1 0.6562 0.9375 +1 0.6562 0.9688 +1 0.6562 1 +1 0.6875 0 +1 0.6875 0.03125 +1 0.6875 0.0625 +1 0.6875 0.09375 +1 0.6875 0.125 +1 0.6875 0.1562 +1 0.6875 0.1875 +1 0.6875 0.2188 +1 0.6875 0.25 +1 0.6875 0.2812 +1 0.6875 0.3125 +1 0.6875 0.3438 +1 0.6875 0.375 +1 0.6875 0.4062 +1 0.6875 0.4375 +1 0.6875 0.4688 +1 0.6875 0.5 +1 0.6875 0.5312 +1 0.6875 0.5625 +1 0.6875 0.5938 +1 0.6875 0.625 +1 0.6875 0.6562 +1 0.6875 0.6875 +1 0.6875 0.7188 +1 0.6875 0.75 +1 0.6875 0.7812 +1 0.6875 0.8125 +1 0.6875 0.8438 +1 0.6875 0.875 +1 0.6875 0.9062 +1 0.6875 0.9375 +1 0.6875 0.9688 +1 0.6875 1 +1 0.7188 0 +1 0.7188 0.03125 +1 0.7188 0.0625 +1 0.7188 0.09375 +1 0.7188 0.125 +1 0.7188 0.1562 +1 0.7188 0.1875 +1 0.7188 0.2188 +1 0.7188 0.25 +1 0.7188 0.2812 +1 0.7188 0.3125 +1 0.7188 0.3438 +1 0.7188 0.375 +1 0.7188 0.4062 +1 0.7188 0.4375 +1 0.7188 0.4688 +1 0.7188 0.5 +1 0.7188 0.5312 +1 0.7188 0.5625 +1 0.7188 0.5938 +1 0.7188 0.625 +1 0.7188 0.6562 +1 0.7188 0.6875 +1 0.7188 0.7188 +1 0.7188 0.75 +1 0.7188 0.7812 +1 0.7188 0.8125 +1 0.7188 0.8438 +1 0.7188 0.875 +1 0.7188 0.9062 +1 0.7188 0.9375 +1 0.7188 0.9688 +1 0.7188 1 +1 0.75 0 +1 0.75 0.03125 +1 0.75 0.0625 +1 0.75 0.09375 +1 0.75 0.125 +1 0.75 0.1562 +1 0.75 0.1875 +1 0.75 0.2188 +1 0.75 0.25 +1 0.75 0.2812 +1 0.75 0.3125 +1 0.75 0.3438 +1 0.75 0.375 +1 0.75 0.4062 +1 0.75 0.4375 +1 0.75 0.4688 +1 0.75 0.5 +1 0.75 0.5312 +1 0.75 0.5625 +1 0.75 0.5938 +1 0.75 0.625 +1 0.75 0.6562 +1 0.75 0.6875 +1 0.75 0.7188 +1 0.75 0.75 +1 0.75 0.7812 +1 0.75 0.8125 +1 0.75 0.8438 +1 0.75 0.875 +1 0.75 0.9062 +1 0.75 0.9375 +1 0.75 0.9688 +1 0.75 1 +1 0.7812 0 +1 0.7812 0.03125 +1 0.7812 0.0625 +1 0.7812 0.09375 +1 0.7812 0.125 +1 0.7812 0.1562 +1 0.7812 0.1875 +1 0.7812 0.2188 +1 0.7812 0.25 +1 0.7812 0.2812 +1 0.7812 0.3125 +1 0.7812 0.3438 +1 0.7812 0.375 +1 0.7812 0.4062 +1 0.7812 0.4375 +1 0.7812 0.4688 +1 0.7812 0.5 +1 0.7812 0.5312 +1 0.7812 0.5625 +1 0.7812 0.5938 +1 0.7812 0.625 +1 0.7812 0.6562 +1 0.7812 0.6875 +1 0.7812 0.7188 +1 0.7812 0.75 +1 0.7812 0.7812 +1 0.7812 0.8125 +1 0.7812 0.8438 +1 0.7812 0.875 +1 0.7812 0.9062 +1 0.7812 0.9375 +1 0.7812 0.9688 +1 0.7812 1 +1 0.8125 0 +1 0.8125 0.03125 +1 0.8125 0.0625 +1 0.8125 0.09375 +1 0.8125 0.125 +1 0.8125 0.1562 +1 0.8125 0.1875 +1 0.8125 0.2188 +1 0.8125 0.25 +1 0.8125 0.2812 +1 0.8125 0.3125 +1 0.8125 0.3438 +1 0.8125 0.375 +1 0.8125 0.4062 +1 0.8125 0.4375 +1 0.8125 0.4688 +1 0.8125 0.5 +1 0.8125 0.5312 +1 0.8125 0.5625 +1 0.8125 0.5938 +1 0.8125 0.625 +1 0.8125 0.6562 +1 0.8125 0.6875 +1 0.8125 0.7188 +1 0.8125 0.75 +1 0.8125 0.7812 +1 0.8125 0.8125 +1 0.8125 0.8438 +1 0.8125 0.875 +1 0.8125 0.9062 +1 0.8125 0.9375 +1 0.8125 0.9688 +1 0.8125 1 +1 0.8438 0 +1 0.8438 0.03125 +1 0.8438 0.0625 +1 0.8438 0.09375 +1 0.8438 0.125 +1 0.8438 0.1562 +1 0.8438 0.1875 +1 0.8438 0.2188 +1 0.8438 0.25 +1 0.8438 0.2812 +1 0.8438 0.3125 +1 0.8438 0.3438 +1 0.8438 0.375 +1 0.8438 0.4062 +1 0.8438 0.4375 +1 0.8438 0.4688 +1 0.8438 0.5 +1 0.8438 0.5312 +1 0.8438 0.5625 +1 0.8438 0.5938 +1 0.8438 0.625 +1 0.8438 0.6562 +1 0.8438 0.6875 +1 0.8438 0.7188 +1 0.8438 0.75 +1 0.8438 0.7812 +1 0.8438 0.8125 +1 0.8438 0.8438 +1 0.8438 0.875 +1 0.8438 0.9062 +1 0.8438 0.9375 +1 0.8438 0.9688 +1 0.8438 1 +1 0.875 0 +1 0.875 0.03125 +1 0.875 0.0625 +1 0.875 0.09375 +1 0.875 0.125 +1 0.875 0.1562 +1 0.875 0.1875 +1 0.875 0.2188 +1 0.875 0.25 +1 0.875 0.2812 +1 0.875 0.3125 +1 0.875 0.3438 +1 0.875 0.375 +1 0.875 0.4062 +1 0.875 0.4375 +1 0.875 0.4688 +1 0.875 0.5 +1 0.875 0.5312 +1 0.875 0.5625 +1 0.875 0.5938 +1 0.875 0.625 +1 0.875 0.6562 +1 0.875 0.6875 +1 0.875 0.7188 +1 0.875 0.75 +1 0.875 0.7812 +1 0.875 0.8125 +1 0.875 0.8438 +1 0.875 0.875 +1 0.875 0.9062 +1 0.875 0.9375 +1 0.875 0.9688 +1 0.875 1 +1 0.9062 0 +1 0.9062 0.03125 +1 0.9062 0.0625 +1 0.9062 0.09375 +1 0.9062 0.125 +1 0.9062 0.1562 +1 0.9062 0.1875 +1 0.9062 0.2188 +1 0.9062 0.25 +1 0.9062 0.2812 +1 0.9062 0.3125 +1 0.9062 0.3438 +1 0.9062 0.375 +1 0.9062 0.4062 +1 0.9062 0.4375 +1 0.9062 0.4688 +1 0.9062 0.5 +1 0.9062 0.5312 +1 0.9062 0.5625 +1 0.9062 0.5938 +1 0.9062 0.625 +1 0.9062 0.6562 +1 0.9062 0.6875 +1 0.9062 0.7188 +1 0.9062 0.75 +1 0.9062 0.7812 +1 0.9062 0.8125 +1 0.9062 0.8438 +1 0.9062 0.875 +1 0.9062 0.9062 +1 0.9062 0.9375 +1 0.9062 0.9688 +1 0.9062 1 +1 0.9375 0 +1 0.9375 0.03125 +1 0.9375 0.0625 +1 0.9375 0.09375 +1 0.9375 0.125 +1 0.9375 0.1562 +1 0.9375 0.1875 +1 0.9375 0.2188 +1 0.9375 0.25 +1 0.9375 0.2812 +1 0.9375 0.3125 +1 0.9375 0.3438 +1 0.9375 0.375 +1 0.9375 0.4062 +1 0.9375 0.4375 +1 0.9375 0.4688 +1 0.9375 0.5 +1 0.9375 0.5312 +1 0.9375 0.5625 +1 0.9375 0.5938 +1 0.9375 0.625 +1 0.9375 0.6562 +1 0.9375 0.6875 +1 0.9375 0.7188 +1 0.9375 0.75 +1 0.9375 0.7812 +1 0.9375 0.8125 +1 0.9375 0.8438 +1 0.9375 0.875 +1 0.9375 0.9062 +1 0.9375 0.9375 +1 0.9375 0.9688 +1 0.9375 1 +1 0.9688 0 +1 0.9688 0.03125 +1 0.9688 0.0625 +1 0.9688 0.09375 +1 0.9688 0.125 +1 0.9688 0.1562 +1 0.9688 0.1875 +1 0.9688 0.2188 +1 0.9688 0.25 +1 0.9688 0.2812 +1 0.9688 0.3125 +1 0.9688 0.3438 +1 0.9688 0.375 +1 0.9688 0.4062 +1 0.9688 0.4375 +1 0.9688 0.4688 +1 0.9688 0.5 +1 0.9688 0.5312 +1 0.9688 0.5625 +1 0.9688 0.5938 +1 0.9688 0.625 +1 0.9688 0.6562 +1 0.9688 0.6875 +1 0.9688 0.7188 +1 0.9688 0.75 +1 0.9688 0.7812 +1 0.9688 0.8125 +1 0.9688 0.8438 +1 0.9688 0.875 +1 0.9688 0.9062 +1 0.9688 0.9375 +1 0.9688 0.9688 +1 0.9688 1 +1 1 0 +1 1 0.03125 +1 1 0.0625 +1 1 0.09375 +1 1 0.125 +1 1 0.1562 +1 1 0.1875 +1 1 0.2188 +1 1 0.25 +1 1 0.2812 +1 1 0.3125 +1 1 0.3438 +1 1 0.375 +1 1 0.4062 +1 1 0.4375 +1 1 0.4688 +1 1 0.5 +1 1 0.5312 +1 1 0.5625 +1 1 0.5938 +1 1 0.625 +1 1 0.6562 +1 1 0.6875 +1 1 0.7188 +1 1 0.75 +1 1 0.7812 +1 1 0.8125 +1 1 0.8438 +1 1 0.875 +1 1 0.9062 +1 1 0.9375 +1 1 0.9688 +1 1 1 + + + + + Output Scaling - only used for full-range signals + 0.06256109481915934 + 0.91886608015640270 + 0. + 1. + + diff --git a/tests/data/files/clf/smpte_only/illegal/id_bad_value.clf b/tests/data/files/clf/smpte_only/illegal/id_bad_value.clf new file mode 100644 index 0000000000..fa425160e9 --- /dev/null +++ b/tests/data/files/clf/smpte_only/illegal/id_bad_value.clf @@ -0,0 +1,25 @@ + + + 3bae2da8 + The Id element does not adhere to the ST 2136-1 formatting. + CIE-XYZ D65 to CIELAB L*, a*, b* (scaled by 1/100, neutrals at 0.0 chroma) + CIE-XYZ, D65 white (scaled [0,1]) + CIELAB L*, a*, b* (scaled by 1/100, neutrals at 0.0 chroma) + + + 1.052126639 0.000000000 0.000000000 + 0.000000000 1.000000000 0.000000000 + 0.000000000 0.000000000 0.918224951 + + + + + + + + 0.00000000 1.00000000 0.00000000 + 4.31034483 -4.31034483 0.00000000 + 0.00000000 1.72413793 -1.72413793 + + + diff --git a/tests/data/files/clf/smpte_only/namespaces.clf b/tests/data/files/clf/smpte_only/namespaces.clf new file mode 100644 index 0000000000..54670bb8f7 --- /dev/null +++ b/tests/data/files/clf/smpte_only/namespaces.clf @@ -0,0 +1,14 @@ + + + + Example CLF file using namespaces. + + + A tiny 2-sample RGB LUT1D. + 0 0 0 1 1 1 + + diff --git a/tests/data/files/clf/smpte_only/signature.clf b/tests/data/files/clf/smpte_only/signature.clf new file mode 100644 index 0000000000..d895a5b783 --- /dev/null +++ b/tests/data/files/clf/smpte_only/signature.clf @@ -0,0 +1,59 @@ + + + + Example CLF file with an enveloped XML Signature (XMLDSIG 1.1). + OCIO does not support signatures yet, but it should not prevent reading the file. + + + + A tiny sample RGB LUT1D. + 0 0 0 0.3 0.4 0.5 1 1 1 + + + + + Example Signing Key + + + MIIB...BASE64...CERT...== + + + + + + + + + + + + + + + + + + + + + + + + AA== + + + + + AA== + + + + Example Signing Key + + + + diff --git a/tests/data/files/clf/tabulation_support.clf b/tests/data/files/clf/tabulation_support.clf index 0411ece76f..4d0c566d42 100644 --- a/tests/data/files/clf/tabulation_support.clf +++ b/tests/data/files/clf/tabulation_support.clf @@ -1,5 +1,5 @@ - + Test that tabs work as separators diff --git a/tests/data/files/clf/xyz_to_rgb.clf b/tests/data/files/clf/xyz_to_rgb.clf index 14cf13ddbc..dbe21b44c1 100644 --- a/tests/data/files/clf/xyz_to_rgb.clf +++ b/tests/data/files/clf/xyz_to_rgb.clf @@ -1,5 +1,5 @@ - + Example with a Matrix and Lut1D XYZ to sRGB matrix diff --git a/tests/data/files/reference_nested_2.ctf b/tests/data/files/reference_nested_2.ctf index b045d2e1d3..1860bfd433 100644 --- a/tests/data/files/reference_nested_2.ctf +++ b/tests/data/files/reference_nested_2.ctf @@ -1,5 +1,5 @@ - + diff --git a/tests/data/files/reference_one_matrix.ctf b/tests/data/files/reference_one_matrix.ctf index de574c1399..d3f2cb6bae 100644 --- a/tests/data/files/reference_one_matrix.ctf +++ b/tests/data/files/reference_one_matrix.ctf @@ -1,5 +1,5 @@ - + diff --git a/tests/data/files/references_same_twice.ctf b/tests/data/files/references_same_twice.ctf index 25b9036d02..731fe7c853 100644 --- a/tests/data/files/references_same_twice.ctf +++ b/tests/data/files/references_same_twice.ctf @@ -1,5 +1,5 @@ - - + + From d1bd6cb8fbd79f006935160630e37d3b47df9ada Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Thu, 5 Feb 2026 10:44:08 -0800 Subject: [PATCH 09/25] - removing the okld smpte test files - Adding separate element and attribute Id's - Adding warning comments to few misleading elements which break the general design. - Simplifying the SMPTE version handling. Signed-off-by: cuneyt.ozdas --- include/OpenColorIO/OpenColorTypes.h | 3 + .../fileformats/FormatMetadata.cpp | 3 + .../fileformats/ctf/CTFReaderHelper.cpp | 22 +--- .../fileformats/ctf/CTFReaderHelper.h | 7 +- .../fileformats/ctf/CTFTransform.cpp | 63 +++++----- .../fileformats/ctf/CTFTransform.h | 11 +- tests/cpu/fileformats/FileFormatCTF_tests.cpp | 118 +++++++++++------- tests/data/files/clf/smpte/st2136-1b.clf | 26 ---- tests/data/files/clf/smpte/st2136-1c.clf | 25 ---- .../files/clf/smpte/transform_id_invalid.clf | 26 ---- 10 files changed, 129 insertions(+), 175 deletions(-) delete mode 100644 tests/data/files/clf/smpte/st2136-1b.clf delete mode 100644 tests/data/files/clf/smpte/st2136-1c.clf delete mode 100644 tests/data/files/clf/smpte/transform_id_invalid.clf diff --git a/include/OpenColorIO/OpenColorTypes.h b/include/OpenColorIO/OpenColorTypes.h index 8fa5833749..9e0dadff13 100644 --- a/include/OpenColorIO/OpenColorTypes.h +++ b/include/OpenColorIO/OpenColorTypes.h @@ -977,6 +977,9 @@ extern OCIOEXPORT const char * METADATA_NAME; */ extern OCIOEXPORT const char * METADATA_ID; +// TODO: add export for METADATA_ID_ELEMENT ? +extern OCIOEXPORT const char * METADATA_ID_ELEMENT; + /*!rst:: Caches ****** diff --git a/src/OpenColorIO/fileformats/FormatMetadata.cpp b/src/OpenColorIO/fileformats/FormatMetadata.cpp index 8b5fe1cfad..b5fe876dd1 100644 --- a/src/OpenColorIO/fileformats/FormatMetadata.cpp +++ b/src/OpenColorIO/fileformats/FormatMetadata.cpp @@ -19,6 +19,9 @@ const char * METADATA_INFO = "Info"; const char * METADATA_INPUT_DESCRIPTOR = "InputDescriptor"; const char * METADATA_OUTPUT_DESCRIPTOR = "OutputDescriptor"; +// CLF XML elements described in ST2136-1 +const char * METADATA_ID_ELEMENT = "Id"; + // NAME and ID are CLF XML attributes described in S-2014-006. const char * METADATA_NAME = "name"; const char * METADATA_ID = "id"; diff --git a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp index d3dddecd61..a9ee4049e4 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp @@ -63,7 +63,6 @@ void CTFReaderTransformElt::start(const char ** atts) bool isSMPTEVersionFound = false; CTFVersion requestedVersion(0, 0); CTFVersion requestedCLFVersion(0, 0); - CTFVersion requestedSMPTEVersion(0, 0); unsigned i = 0; while (atts[i]) @@ -99,11 +98,9 @@ void CTFReaderTransformElt::start(const char ** atts) // SMPTE CLF requestedVersion = CTF_PROCESS_LIST_VERSION_2_0; - requestedCLFVersion = CTFVersion(3, 0); // SMPTE format implies CLF 3.0 - requestedSMPTEVersion = version; + requestedCLFVersion = version; isSMPTEVersionFound = true; m_isCLF = true; - m_isSMPTE = true; } catch (Exception& /*e*/) { @@ -226,7 +223,7 @@ void CTFReaderTransformElt::start(const char ** atts) } // Check mandatory id keyword for non-SMPTE variants. - if (!isIdFound && !m_isSMPTE) + if (!isIdFound && !isSMPTEVersionFound) { // FIXME: add handling of the SMPTE version tag throwMessage("Required attribute 'id' is missing."); @@ -246,14 +243,7 @@ void CTFReaderTransformElt::start(const char ** atts) else { setVersion(requestedVersion); // TODO: do we care about this when SMPTE? - if(m_isSMPTE) - { - setCLFVersion(requestedSMPTEVersion); - } - else if (m_isCLF) - { - setCLFVersion(requestedCLFVersion); - } + setCLFVersion(requestedCLFVersion); } } @@ -276,9 +266,9 @@ const char * CTFReaderTransformElt::getTypeName() const static const std::string n(TAG_PROCESS_LIST); return n.c_str(); } -void CTFReaderTransformElt::setID(const std::string& idStr) +void CTFReaderTransformElt::setIDElement(const std::string& idStr) { - getTransform()->setID(idStr.c_str()); + getTransform()->setIDElement(idStr.c_str()); } void CTFReaderTransformElt::setVersion(const CTFVersion & ver) @@ -323,7 +313,7 @@ void CTFReaderIdElt::end() auto* pTransformnElt = dynamic_cast(getParent().get()); if (pTransformnElt) { - pTransformnElt->setID(m_id); + pTransformnElt->setIDElement(m_id); } } diff --git a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h index d248bf6248..db776503ad 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h +++ b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h @@ -54,8 +54,8 @@ class CTFReaderTransformElt : public XmlReaderContainerElt const char * getTypeName() const override; - // Sets the ID (if the ID tag is used). - void setID(const std::string& idStr); + // Set the ID element (when SMPTE id tag is used) + void setIDElement(const std::string& idStr); // Set the current transform CTF version. void setVersion(const CTFVersion & ver); @@ -75,7 +75,6 @@ class CTFReaderTransformElt : public XmlReaderContainerElt CTFReaderTransformPtr m_transform; // Is it a clf file? Or is a clf parser requested. bool m_isCLF = false; - bool m_isSMPTE = false; }; // Class for the Id element. @@ -119,6 +118,8 @@ class CTFReaderIdElt : public XmlReaderPlainElt typedef OCIO_SHARED_PTR CTFReaderTransformEltRcPtr; +// Note: This class is used only for adding metadata to other info metadata +// elements, not to the transform. class CTFReaderMetadataElt : public XmlReaderComplexElt { public: diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp index 4f87819b0e..4196286a9c 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp @@ -43,24 +43,34 @@ static constexpr unsigned DOUBLE_PRECISION = 15; CTFVersion::CTFVersion(const std::string & versionString) : m_major(0), m_minor(0), m_revision(0) { - // Check if matches the SMPTE 2136-1:2024 namespace URI - // TODO: To make this future-proof, we may want to exclude the year in these - // tests. /coz - if(0 == Platform::Strcasecmp(versionString.c_str(), "http://www.smpte-ra.org/ns/2136-1/2024")) + // Parse the version string to see if that matches the SMPTE namespace/version + // patterns. If so store the version string and consider equivalent to v3.0. { - m_version_string = versionString; - return; - } + std::regex smpteRegexFull( + "^http://www\\.smpte-ra\\.org/ns/2136-1/(\\d{4})$", + std::regex::icase); // Do we really want to ignore case here? + + std::regex smpteRegexShort( + "^ST2136-1:(\\d{4})$", + std::regex::icase); - // We also allow "ST2136-1:2024" for CLF version. - // TODO: I'm not sure if this is a good idea or not, keeping the CLF version - // numeric-only feels much cleaner and would avoid complications (such as - // version comparison). /coz -// if(0 == Platform::Strcasecmp(versionString.c_str(), "ST2136-1:2024")) -// { -// m_version_string = versionString; -// return; -// } + std::smatch match; + bool res = std::regex_match(versionString, match, smpteRegexFull); + if(!res) + { + res = std::regex_match(versionString, match, smpteRegexShort); + } + + if (res) + { + if (match.size() == 2) + { + m_version_string = versionString; + m_major = 3; + } + return; + }; + } // For non-SMPTE namespace versions, parse as MAJOR[.MINOR[.REVISION]] unsigned int numDot = 0; @@ -128,8 +138,7 @@ bool CTFVersion::operator==(const CTFVersion & rhs) const return m_major == rhs.m_major && m_minor == rhs.m_minor - && m_revision == rhs.m_revision - && !Platform::Strcasecmp(m_version_string.c_str(), rhs.m_version_string.c_str()); + && m_revision == rhs.m_revision; } bool CTFVersion::operator<=(const CTFVersion & rhs) const @@ -150,20 +159,6 @@ bool CTFVersion::operator<(const CTFVersion & rhs) const { if (this == &rhs) return false; - // SMPTE version handling - if(!m_version_string.empty()) - { - // Any SMPTE version is greater than non-SMPTE - if(rhs.m_version_string.empty()) - { - return false; - } - - // TODO: This needs to be more sophisticated probably. - return Platform::Strcasecmp(m_version_string.c_str(), - rhs.m_version_string.c_str()) < 0; - } - if (m_major < rhs.m_major) { return true; @@ -523,10 +518,14 @@ void AddNonEmptyAttribute(FormatMetadataImpl & metadata, const char * name, cons void CTFReaderTransform::toMetadata(FormatMetadataImpl & metadata) const { // Put CTF processList information into the FormatMetadata. + + // Attributes AddNonEmptyAttribute(metadata, METADATA_NAME, getName()); AddNonEmptyAttribute(metadata, METADATA_ID, getID()); AddNonEmptyAttribute(metadata, ATTR_INVERSE_OF, getInverseOfId()); + // Child Elements + AddNonEmptyElement(metadata, METADATA_ID_ELEMENT, getIDElement()); AddNonEmptyElement(metadata, METADATA_INPUT_DESCRIPTOR, getInputDescriptor()); AddNonEmptyElement(metadata, METADATA_OUTPUT_DESCRIPTOR, getOutputDescriptor()); for (auto & desc : m_descriptions) diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.h b/src/OpenColorIO/fileformats/ctf/CTFTransform.h index 0de5f126d8..5c3e9647c2 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.h +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.h @@ -167,6 +167,14 @@ class CTFReaderTransform { m_id = id; } + const std::string & getIDElement() const + { + return m_id_element; + } + void setIDElement(const char * id) + { + m_id_element = id; + } const std::string & getName() const { return m_name; @@ -249,7 +257,8 @@ class CTFReaderTransform } private: - std::string m_id; + std::string m_id; // id attribute + std::string m_id_element; // id tag value std::string m_name; std::string m_inverseOfId; std::string m_inDescriptor; diff --git a/tests/cpu/fileformats/FileFormatCTF_tests.cpp b/tests/cpu/fileformats/FileFormatCTF_tests.cpp index 5367be091d..4a9dffb837 100644 --- a/tests/cpu/fileformats/FileFormatCTF_tests.cpp +++ b/tests/cpu/fileformats/FileFormatCTF_tests.cpp @@ -39,62 +39,45 @@ OCIO_ADD_TEST(FileFormatCTF, missing_file) "Error opening test file."); } -OCIO_ADD_TEST(FileFormatCTF, smpte_clf_basic) +void DumpElements(std::string& sp, const OCIO::FormatMetadata& meta) { - { - const std::string ctfFile("clf/smpte/st2136-1b.clf"); - OCIO::LocalCachedFileRcPtr cachedFile; - OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); - OCIO_REQUIRE_ASSERT((bool)cachedFile); - OCIO_CHECK_EQUAL(cachedFile->m_transform->getName(), ""); - OCIO_CHECK_EQUAL(cachedFile->m_transform->getID(), "urn:uuid:3bae2da8-59c7-44c2-b6c9-76dc0f8cae8c"); - StringUtils::StringVec desc = cachedFile->m_transform->getDescriptions(); - OCIO_REQUIRE_EQUAL(desc.size(), 1); - OCIO_CHECK_EQUAL(desc[0], "CIE-XYZ D65 to CIELAB L*, a*, b* (scaled by 1/100, neutrals at 0.0 chroma)"); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); - OCIO_REQUIRE_EQUAL(opList.size(), 3); - OCIO_CHECK_EQUAL(opList[0]->getType(), OCIO::OpData::MatrixType); - OCIO_CHECK_EQUAL(opList[0]->getName(), ""); - OCIO_CHECK_EQUAL(opList[0]->getID(), ""); + std::cout << sp << "Element name : " << meta.getElementName() << std::endl; + std::cout << sp << "Element value: " << meta.getElementValue() << std::endl; + std::cout << sp << "Name : " << meta.getName() << std::endl; + std::cout << sp << "ID : " << meta.getID() << std::endl; + std::cout << sp << "Element attributes: " << std::endl; + int natt = meta.getNumAttributes(); - OCIO_CHECK_EQUAL(opList[1]->getType(), OCIO::OpData::GammaType); - OCIO_CHECK_EQUAL(opList[1]->getName(), ""); - OCIO_CHECK_EQUAL(opList[1]->getID(), ""); - - OCIO_CHECK_EQUAL(opList[2]->getType(), OCIO::OpData::MatrixType); - OCIO_CHECK_EQUAL(opList[2]->getName(), ""); - OCIO_CHECK_EQUAL(opList[2]->getID(), ""); + for (int i = 0; im_transform->getName(), ""); - OCIO_CHECK_EQUAL(cachedFile->m_transform->getID(), "urn:uuid:9d768121-0cf9-40a3-a8e3-7b49f79858a7"); - StringUtils::StringVec desc = cachedFile->m_transform->getDescriptions(); - OCIO_REQUIRE_EQUAL(desc.size(), 2); - OCIO_CHECK_EQUAL(desc[0], "Identity transform illustrating Array bit depth scaling"); - OCIO_CHECK_EQUAL(desc[1], "Can be loaded by either SMPTE or CLF v3 parsers"); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); - OCIO_REQUIRE_EQUAL(opList.size(), 3); - OCIO_CHECK_EQUAL(opList[0]->getType(), OCIO::OpData::MatrixType); - OCIO_CHECK_EQUAL(opList[0]->getName(), ""); - OCIO_CHECK_EQUAL(opList[0]->getID(), ""); +OCIO_ADD_TEST(FileFormatCTF, temp) +{ + const std::string ctfFile("clf/lut1d_example.clf"); + auto proc = OCIO::GetFileTransformProcessor(ctfFile); + auto& meta= proc->getFormatMetadata(); - OCIO_CHECK_EQUAL(opList[1]->getType(), OCIO::OpData::Lut1DType); - OCIO_CHECK_EQUAL(opList[1]->getName(), ""); - OCIO_CHECK_EQUAL(opList[1]->getID(), ""); + DumpElements(std::string(), meta); - OCIO_CHECK_EQUAL(opList[2]->getType(), OCIO::OpData::MatrixType); - OCIO_CHECK_EQUAL(opList[2]->getName(), ""); - OCIO_CHECK_EQUAL(opList[2]->getID(), ""); - } -} + auto grp = proc->createGroupTransform(); + auto& meta2 = grp->getFormatMetadata(); + DumpElements(std::string(), meta2); +} OCIO_ADD_TEST(FileFormatCTF, clf_examples) { @@ -123,6 +106,11 @@ OCIO_ADD_TEST(FileFormatCTF, clf_examples) OCIO_REQUIRE_EQUAL(desc.size(), 2); OCIO_CHECK_EQUAL(desc[0], "Note that the bit-depth does not constrain the legal range of values."); OCIO_CHECK_EQUAL(desc[1], "Formula: flipud(1.25 - 1.5 * x^2.2)"); + + auto info = cachedFile->m_transform->getInfoMetadata(); + auto elements = info.getChildrenElements(); + + } { @@ -150,6 +138,44 @@ OCIO_ADD_TEST(FileFormatCTF, clf_examples) OCIO_CHECK_EQUAL(desc[0], " 3D LUT "); } + { + const std::string ctfFile("clf/bit_depth_identity.clf"); + OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); + OCIO_REQUIRE_ASSERT((bool)cachedFile); + // TODO: the same ID is defined both in tag's id attrib and + // the tag so this test doesn't really figure out which one wins. + // It might be a good idea to make them different and check the correct + // one wins. + OCIO_CHECK_EQUAL(cachedFile->m_transform->getID(), "urn:uuid:9d768121-0cf9-40a3-a8e3-7b49f79858a7"); + OCIO_REQUIRE_EQUAL(cachedFile->m_transform->getDescriptions().size(), 2); + OCIO_CHECK_EQUAL(cachedFile->m_transform->getDescriptions()[0], + "Identity transform illustrating Array bit depth scaling"); + OCIO_CHECK_EQUAL(cachedFile->m_transform->getDescriptions()[1], + "Can be loaded by either SMPTE or CLF v3 parsers"); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + OCIO_REQUIRE_EQUAL(opList.size(), 3); + + auto mat1 = OCIO::DynamicPtrCast(opList[0]); + OCIO_REQUIRE_ASSERT(mat1); + OCIO_CHECK_EQUAL(mat1->getFileInputBitDepth(), OCIO::BIT_DEPTH_UINT8); + OCIO_CHECK_EQUAL(mat1->getFileOutputBitDepth(), OCIO::BIT_DEPTH_UINT16); + + auto lut = OCIO::DynamicPtrCast(opList[1]); + OCIO_REQUIRE_ASSERT(lut); + OCIO_CHECK_EQUAL(lut->getFileOutputBitDepth(), OCIO::BIT_DEPTH_UINT16); + + auto mat2 = OCIO::DynamicPtrCast(opList[2]); + OCIO_REQUIRE_ASSERT(mat2); + OCIO_CHECK_EQUAL(mat2->getFileInputBitDepth(), OCIO::BIT_DEPTH_UINT16); + OCIO_CHECK_EQUAL(mat2->getFileOutputBitDepth(), OCIO::BIT_DEPTH_UINT16); + + // TODO check identity. + + + + } + + { const std::string ctfFile("clf/matrix_3x4_example.clf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); diff --git a/tests/data/files/clf/smpte/st2136-1b.clf b/tests/data/files/clf/smpte/st2136-1b.clf deleted file mode 100644 index ecc0a69047..0000000000 --- a/tests/data/files/clf/smpte/st2136-1b.clf +++ /dev/null @@ -1,26 +0,0 @@ - - - urn:uuid:3bae2da8-59c7-44c2-b6c9-76dc0f8cae8c - CIE-XYZ D65 to CIELAB L*, a*, b* (scaled by 1/100, neutrals at - 0.0 chroma) - CIE-XYZ, D65 white (scaled [0,1]) - CIELAB L*, a*, b* (scaled by 1/100, neutrals at 0.0 - chroma) - - - 1.052126639 0.000000000 0.000000000 - 0.000000000 1.000000000 0.000000000 - 0.000000000 0.000000000 0.918224951 - - - - - - - - 0.00000000 1.00000000 0.00000000 - 4.31034483 -4.31034483 0.00000000 - 0.00000000 1.72413793 -1.72413793 - - - diff --git a/tests/data/files/clf/smpte/st2136-1c.clf b/tests/data/files/clf/smpte/st2136-1c.clf deleted file mode 100644 index 644734c71c..0000000000 --- a/tests/data/files/clf/smpte/st2136-1c.clf +++ /dev/null @@ -1,25 +0,0 @@ - - - urn:uuid:9d768121-0cf9-40a3-a8e3-7b49f79858a7 - Identity transform illustrating Array bit depth scaling - Can be loaded by either SMPTE or CLF v3 parsers - - - 257.0 0.0 0.0 - 0.0 257.0 0.0 - 0.0 0.0 257.0 - - - - - 0.0 10922.5 21845.0 32767.5 43690.0 54612.5 65535.0 - - - - - 1.0 0.0 0.0 - 0.0 1.0 0.0 - 0.0 0.0 1.0 - - - diff --git a/tests/data/files/clf/smpte/transform_id_invalid.clf b/tests/data/files/clf/smpte/transform_id_invalid.clf deleted file mode 100644 index 6e229ed438..0000000000 --- a/tests/data/files/clf/smpte/transform_id_invalid.clf +++ /dev/null @@ -1,26 +0,0 @@ - - - Some Random Text - CIE-XYZ D65 to CIELAB L*, a*, b* (scaled by 1/100, neutrals at - 0.0 chroma) - CIE-XYZ, D65 white (scaled [0,1]) - CIELAB L*, a*, b* (scaled by 1/100, neutrals at 0.0 - chroma) - - - 1.052126639 0.000000000 0.000000000 - 0.000000000 1.000000000 0.000000000 - 0.000000000 0.000000000 0.918224951 - - - - - - - - 0.00000000 1.00000000 0.00000000 - 4.31034483 -4.31034483 0.00000000 - 0.00000000 1.72413793 -1.72413793 - - - From 8440fa5ae8909b6e8d753a15c318abefb0433fa9 Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Thu, 5 Feb 2026 13:12:43 -0800 Subject: [PATCH 10/25] - Backing up from using separate file formats for Academy and SMPTE CLF - updating the test files accordingly - Some cleanup Signed-off-by: cuneyt.ozdas --- src/OpenColorIO/fileformats/FileFormatCTF.cpp | 26 +-- src/OpenColorIO/fileformats/cdl/CDLParser.h | 2 +- .../fileformats/ctf/CTFTransform.cpp | 64 +++----- .../fileformats/ctf/CTFTransform.h | 5 +- src/OpenColorIO/transforms/CDLTransform.cpp | 2 +- src/OpenColorIO/transforms/FileTransform.h | 4 +- tests/cpu/Baker_tests.cpp | 4 +- tests/cpu/fileformats/FileFormatCTF_tests.cpp | 152 +++++++++--------- tests/cpu/transforms/FileTransform_tests.cpp | 6 +- tests/cpu/transforms/GroupTransform_tests.cpp | 2 +- tests/python/BakerTest.py | 2 +- tests/python/FileTransformTest.py | 3 +- 12 files changed, 116 insertions(+), 156 deletions(-) diff --git a/src/OpenColorIO/fileformats/FileFormatCTF.cpp b/src/OpenColorIO/fileformats/FileFormatCTF.cpp index d0834f4bb9..02f8cd0cb7 100644 --- a/src/OpenColorIO/fileformats/FileFormatCTF.cpp +++ b/src/OpenColorIO/fileformats/FileFormatCTF.cpp @@ -148,10 +148,10 @@ class LocalFileFormat : public FileFormat void LocalFileFormat::getFormatInfo(FormatInfoVec & formatInfoVec) const { - // CLF - Academy/ASC + // CLF - Academy/ASC & SMPTE uses the same format { FormatInfo info; - info.name = FILEFORMAT_CLF_ACADEMY; + info.name = FILEFORMAT_CLF; info.extension = "clf"; info.capabilities = FormatCapabilityFlags(FORMAT_CAPABILITY_READ | FORMAT_CAPABILITY_BAKE | @@ -163,22 +163,6 @@ void LocalFileFormat::getFormatInfo(FormatInfoVec & formatInfoVec) const formatInfoVec.push_back(info); } - // CLF - SMPTE - { - FormatInfo info; - info.name = FILEFORMAT_CLF_SMPTE; - info.extension = "clf"; - info.capabilities = FormatCapabilityFlags(FORMAT_CAPABILITY_READ | - FORMAT_CAPABILITY_BAKE | - FORMAT_CAPABILITY_WRITE); - - info.bake_capabilities = FormatBakeFlags( FORMAT_BAKE_CAPABILITY_3DLUT | - FORMAT_BAKE_CAPABILITY_1DLUT | - FORMAT_BAKE_CAPABILITY_1D_3D_LUT); - - formatInfoVec.push_back(info); - } - // CTF { FormatInfo info; @@ -1602,11 +1586,7 @@ void LocalFileFormat::write(const ConstConfigRcPtr & config, if (Platform::Strcasecmp(formatName.c_str(), FILEFORMAT_CLF) == 0) { - subFormat = TransformWriter::SubFormat::eCLF_AMPAS; - } - else if(Platform::Strcasecmp(formatName.c_str(), FILEFORMAT_CLF_SMPTE) == 0) - { - subFormat = TransformWriter::SubFormat::eCLF_SMPTE; + subFormat = TransformWriter::SubFormat::eCLF; } else if (Platform::Strcasecmp(formatName.c_str(), FILEFORMAT_CTF) == 0) { diff --git a/src/OpenColorIO/fileformats/cdl/CDLParser.h b/src/OpenColorIO/fileformats/cdl/CDLParser.h index 0e5471b005..ddeee5a262 100644 --- a/src/OpenColorIO/fileformats/cdl/CDLParser.h +++ b/src/OpenColorIO/fileformats/cdl/CDLParser.h @@ -20,7 +20,7 @@ class CDLParser { public: explicit CDLParser(const std::string& xmlFile); - virtual ~CDLParser(); + ~CDLParser(); void parse(std::istream & istream) const; diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp index 4196286a9c..ebcc12ba85 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp @@ -2578,20 +2578,14 @@ void TransformWriter::write() const throw Exception("Cannot write transform with unknown sub-format."); break; - case SubFormat::eCLF_AMPAS: + case SubFormat::eCLF: + // For CLF, we're writing versions per both the Academy and SMPTE + // requirements. writeVersion = CTF_PROCESS_LIST_VERSION_2_0; attributes.push_back(XmlFormatter::Attribute( ATTR_COMP_CLF_VERSION, "3")); - break; - - case SubFormat::eCLF_SMPTE: - writeVersion = CTF_PROCESS_LIST_VERSION_2_0; - - attributes.push_back(XmlFormatter::Attribute( - ATTR_XMLNS, "http://www.smpte-ra.org/ns/2136-1/2024")); // TODO: create a named constant? - attributes.push_back(XmlFormatter::Attribute( - ATTR_COMP_CLF_VERSION, "ST2136-1:2024")); // TODO: create a named constant? + ATTR_XMLNS, "http://www.smpte-ra.org/ns/2136-1/2024")); break; case SubFormat::eCTF: @@ -2604,29 +2598,15 @@ void TransformWriter::write() const ATTR_VERSION, fversion.str())); break; } - + + // Id attribute std::string id = m_transform->getID(); if (id.empty()) { - id = generateID(); - } - - if(m_subFormat == SubFormat::eCLF_SMPTE && !ValidateSMPTEId(id)) - { - std::ostringstream ss; - ss << "'" << id << "' is not a ST2136-1:2024 compliant Id value."; - throw Exception(ss.str().c_str()); + id = generateID(false); // use the SMPTE format for the Id attribute too? } + attributes.push_back(XmlFormatter::Attribute(ATTR_ID, id)); - // SMPTE variant will use an Id tag. Others will use an attribute in - // processList. - // TODO: write the attribute for SMPTE as well? - if(m_subFormat == SubFormat::eCLF_AMPAS || - m_subFormat == SubFormat::eCTF) - { - attributes.push_back(XmlFormatter::Attribute(ATTR_ID, id)); - } - const std::string& name = m_transform->getName(); if (!name.empty()) { @@ -2642,12 +2622,22 @@ void TransformWriter::write() const m_formatter.writeStartTag(processListTag, attributes); { XmlScopeIndent scopeIndent(m_formatter); - - // SMPTE variant uses the Id tag for id. - if(m_subFormat == SubFormat::eCLF_SMPTE) + + // Id element + + // TODO: We won't create an Id element value if it's missing. Should we + // give users helper function to generate SMPTE complaint Id? If so, + // where? + std::string idEl = m_transform->getIDElement(); + if(m_subFormat == SubFormat::eCLF && !idEl.empty()) { - // TODO: validate the format of the Id to match SMPTE requirements? - m_formatter.writeContentTag(TAG_ID, id); + if(m_subFormat == SubFormat::eCLF && !ValidateSMPTEId(idEl)) + { + std::ostringstream ss; + ss << "'" << idEl << "' is not a ST2136-1:2024 compliant Id value."; + throw Exception(ss.str().c_str()); + } + m_formatter.writeContentTag(TAG_ID, idEl); } WriteDescriptions(m_formatter, TAG_DESCRIPTION, m_transform->getDescriptions()); @@ -2706,7 +2696,7 @@ void TransformWriter::writeProcessListMetadata(const FormatMetadataImpl& m) cons } } -std::string TransformWriter::generateID() const +std::string TransformWriter::generateID(bool isSMPTEFormat) const { std::string id; auto & ops = m_transform->getOps(); @@ -2717,7 +2707,7 @@ std::string TransformWriter::generateID() const // If this is smpte, format the id to match the requirements Otherwise use // the original cache ID for backward compatibility. - if(m_subFormat == SubFormat::eCLF_SMPTE) + if(isSMPTEFormat) { id = "urn:uuid:" + CacheIDHashUUID(id.c_str(), id.size()); } @@ -2788,9 +2778,7 @@ void TransformWriter::writeOps(const CTFVersion & version) const // values on write. Otherwise, default to 32f. BitDepth inBD = BIT_DEPTH_F32; BitDepth outBD = BIT_DEPTH_F32; - bool isCLF = (m_subFormat == SubFormat::eCLF_AMPAS || - m_subFormat == SubFormat::eCLF_SMPTE); - + bool isCLF = m_subFormat == SubFormat::eCLF; auto & ops = m_transform->getOps(); size_t numOps = ops.size(); size_t numSavedOps = 0; diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.h b/src/OpenColorIO/fileformats/ctf/CTFTransform.h index 5c3e9647c2..61e80bace4 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.h +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.h @@ -288,8 +288,7 @@ class TransformWriter : public XmlElementWriter enum class SubFormat : uint8_t { eUNKNOWN, - eCLF_AMPAS, - eCLF_SMPTE, + eCLF, eCTF }; @@ -310,7 +309,7 @@ class TransformWriter : public XmlElementWriter void writeProcessListMetadata(const FormatMetadataImpl & m) const; void writeOpMetadata(const FormatMetadataImpl & m) const; void writeOps(const CTFVersion & version) const; - std::string generateID() const; + std::string generateID(bool isSMPTEFormat) const; private: ConstCTFReaderTransformPtr m_transform; diff --git a/src/OpenColorIO/transforms/CDLTransform.cpp b/src/OpenColorIO/transforms/CDLTransform.cpp index 393bec4dbe..d1992f9064 100755 --- a/src/OpenColorIO/transforms/CDLTransform.cpp +++ b/src/OpenColorIO/transforms/CDLTransform.cpp @@ -7,7 +7,7 @@ #include -#include "fileformats/cdl/CDLParser.h" +//#include "fileformats/cdl/CDLParser.h" #include "Logging.h" #include "MathUtils.h" #include "Mutex.h" diff --git a/src/OpenColorIO/transforms/FileTransform.h b/src/OpenColorIO/transforms/FileTransform.h index 3a38d2eccc..1d1c58eb5e 100644 --- a/src/OpenColorIO/transforms/FileTransform.h +++ b/src/OpenColorIO/transforms/FileTransform.h @@ -178,8 +178,8 @@ FileFormat * CreateFileFormatTruelight(); FileFormat * CreateFileFormatVF(); static constexpr char FILEFORMAT_CLF[] = "Academy/ASC Common LUT Format"; // Should we use a the default CTF name? Is this the correct one? -static constexpr char FILEFORMAT_CLF_ACADEMY[] = "Academy/ASC Common LUT Format"; // Is this a good name? -static constexpr char FILEFORMAT_CLF_SMPTE[] = "SMPTE Common LUT Format"; +//static constexpr char FILEFORMAT_CLF_ACADEMY[] = "Academy/ASC Common LUT Format"; // Is this a good name? +//static constexpr char FILEFORMAT_CLF_SMPTE[] = "SMPTE Common LUT Format"; static constexpr char FILEFORMAT_CTF[] = "Color Transform Format"; static constexpr char FILEFORMAT_COLOR_CORRECTION[] = "ColorCorrection"; static constexpr char FILEFORMAT_COLOR_CORRECTION_COLLECTION[] = "ColorCorrectionCollection"; diff --git a/tests/cpu/Baker_tests.cpp b/tests/cpu/Baker_tests.cpp index ed058773d0..db68bb7e4e 100644 --- a/tests/cpu/Baker_tests.cpp +++ b/tests/cpu/Baker_tests.cpp @@ -164,8 +164,8 @@ OCIO_ADD_TEST(Baker, bake_3dlut) } } - OCIO_CHECK_EQUAL(13, bake->getNumFormats()); - OCIO_CHECK_EQUAL("cinespace", std::string(bake->getFormatNameByIndex(5))); + OCIO_CHECK_EQUAL(12, bake->getNumFormats()); + OCIO_CHECK_EQUAL("cinespace", std::string(bake->getFormatNameByIndex(4))); OCIO_CHECK_EQUAL("3dl", std::string(bake->getFormatExtensionByIndex(1))); } diff --git a/tests/cpu/fileformats/FileFormatCTF_tests.cpp b/tests/cpu/fileformats/FileFormatCTF_tests.cpp index 4a9dffb837..e084678254 100644 --- a/tests/cpu/fileformats/FileFormatCTF_tests.cpp +++ b/tests/cpu/fileformats/FileFormatCTF_tests.cpp @@ -3909,16 +3909,10 @@ void WriteGroupCTF(OCIO::ConstGroupTransformRcPtr group, std::ostringstream & ou group->write(cfg, OCIO::FILEFORMAT_CTF, outputTransform); } -void WriteGroupCLF_Academy(OCIO::ConstGroupTransformRcPtr group, std::ostringstream & outputTransform) +void WriteGroupCLF(OCIO::ConstGroupTransformRcPtr group, std::ostringstream & outputTransform) { OCIO::ConstConfigRcPtr cfg = OCIO::Config::CreateRaw(); - group->write(cfg, OCIO::FILEFORMAT_CLF_ACADEMY, outputTransform); -} - -void WriteGroupCLF_SMPTE(OCIO::ConstGroupTransformRcPtr group, std::ostringstream & outputTransform) -{ - OCIO::ConstConfigRcPtr cfg = OCIO::Config::CreateRaw(); - group->write(cfg, OCIO::FILEFORMAT_CLF_SMPTE, outputTransform); + group->write(cfg, OCIO::FILEFORMAT_CLF, outputTransform); } void ValidateFixedFunctionStyle(OCIO::FixedFunctionOpData::Style style, @@ -5513,7 +5507,7 @@ OCIO_ADD_TEST(CTFTransform, save_lut1d_interpolation) group->appendTransform(lut); std::ostringstream outputTransform; - OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransform)); + OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransform)); { const std::string result = outputTransform.str(); @@ -5528,7 +5522,7 @@ OCIO_ADD_TEST(CTFTransform, save_lut1d_interpolation) lut->setInterpolation(OCIO::INTERP_BEST); group->appendTransform(lut); - OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransform)); + OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransform)); { const std::string result = outputTransform.str(); @@ -5543,7 +5537,7 @@ OCIO_ADD_TEST(CTFTransform, save_lut1d_interpolation) lut->setInterpolation(OCIO::INTERP_LINEAR); group->appendTransform(lut); - OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransform)); + OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransform)); { const std::string result = outputTransform.str(); @@ -5557,7 +5551,7 @@ OCIO_ADD_TEST(CTFTransform, save_lut1d_interpolation) lut->setInterpolation(OCIO::INTERP_CUBIC); group->appendTransform(lut); - OCIO_CHECK_THROW_WHAT(WriteGroupCLF_Academy(group, outputTransform), OCIO::Exception, + OCIO_CHECK_THROW_WHAT(WriteGroupCLF(group, outputTransform), OCIO::Exception, "1D LUT does not support interpolation algorithm: cubic"); } @@ -5716,11 +5710,11 @@ OCIO_ADD_TEST(CTFTransform, load_edit_save_matrix_clf) // CLF Academy { std::ostringstream outputTransform; - OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransform)); + OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransform)); const std::string expectedCLF_Academy{ R"( - + Basic matrix example using CLF v2 dim syntax RGB XYZ @@ -5742,41 +5736,41 @@ OCIO_ADD_TEST(CTFTransform, load_edit_save_matrix_clf) } // CLF SMPTE - { - // The ID is not SMPTE compliant. - std::ostringstream outputTransform; - OCIO_CHECK_THROW_WHAT(WriteGroupCLF_SMPTE(group, outputTransform), OCIO::Exception, - "'b5cc7aed-d405-4d8b-b64b-382b2341a378' is not a ST2136-1:2024 compliant Id value."); - - // Fix the ID to be SMPTE compliant. - group->getFormatMetadata().setID("urn:uuid:b5cc7aed-d405-4d8b-b64b-382b2341a378"); - - outputTransform.str(""); - OCIO_CHECK_NO_THROW(WriteGroupCLF_SMPTE(group, outputTransform)); - - const std::string expectedCLF_SMPTE{ - R"( - - urn:uuid:b5cc7aed-d405-4d8b-b64b-382b2341a378 - Basic matrix example using CLF v2 dim syntax - RGB - XYZ - - Legacy matrix - Note that dim="3 3 3" should be supported for CLF v2 compatibility - Added description - - 0.4123908 0.35758434 0.18048079 0.1 - 0.21263901 0.71516868 0.07219232 1.2 - 0.01933082 0.01191948 0.95053215 2.3 - - - -)"}; - - OCIO_CHECK_EQUAL(expectedCLF_SMPTE.size(), outputTransform.str().size()); - OCIO_CHECK_EQUAL(expectedCLF_SMPTE, outputTransform.str()); - } +// { +// // The ID is not SMPTE compliant. +// std::ostringstream outputTransform; +// OCIO_CHECK_THROW_WHAT(WriteGroupCLF_SMPTE(group, outputTransform), OCIO::Exception, +// "'b5cc7aed-d405-4d8b-b64b-382b2341a378' is not a ST2136-1:2024 compliant Id value."); +// +// // Fix the ID to be SMPTE compliant. +// group->getFormatMetadata().setID("urn:uuid:b5cc7aed-d405-4d8b-b64b-382b2341a378"); +// +// outputTransform.str(""); +// OCIO_CHECK_NO_THROW(WriteGroupCLF_SMPTE(group, outputTransform)); +// +// const std::string expectedCLF_SMPTE{ +// R"( +// +// urn:uuid:b5cc7aed-d405-4d8b-b64b-382b2341a378 +// Basic matrix example using CLF v2 dim syntax +// RGB +// XYZ +// +// Legacy matrix +// Note that dim="3 3 3" should be supported for CLF v2 compatibility +// Added description +// +// 0.4123908 0.35758434 0.18048079 0.1 +// 0.21263901 0.71516868 0.07219232 1.2 +// 0.01933082 0.01191948 0.95053215 2.3 +// +// +// +// )"}; +// +// OCIO_CHECK_EQUAL(expectedCLF_SMPTE.size(), outputTransform.str().size()); +// OCIO_CHECK_EQUAL(expectedCLF_SMPTE, outputTransform.str()); +// } // CTF { @@ -5788,7 +5782,7 @@ OCIO_ADD_TEST(CTFTransform, load_edit_save_matrix_clf) const std::string expectedCTF{ R"( - + Basic matrix example using CLF v2 dim syntax RGB XYZ @@ -5830,11 +5824,11 @@ OCIO_ADD_TEST(CTFTransform, matrix3x3_clf) group->appendTransform(mat); std::ostringstream outputTransform; - OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransform)); + OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransform)); // In/out bit-depth equal, matrix not scaled. const std::string expected{ R"( - + 0.333333333333333 3.33333333333333 33.3333333333333 @@ -5886,7 +5880,7 @@ OCIO_ADD_TEST(CTFTransform, matrix_offset_alpha_ctf) OCIO_CHECK_EQUAL(expected, outputTransform.str()); // Alpha not handled by CLF. - OCIO_CHECK_THROW_WHAT(WriteGroupCLF_Academy(group, outputTransform), + OCIO_CHECK_THROW_WHAT(WriteGroupCLF(group, outputTransform), OCIO::Exception, "Transform uses the 'Matrix with alpha component' op which cannot be written as CLF"); } @@ -6079,10 +6073,10 @@ OCIO_ADD_TEST(CTFTransform, cdl_clf) subSub3.addAttribute("LastName", "Lean"); std::ostringstream outputTransform; - OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransform)); + OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransform)); const std::string expected{ R"( - + ProcessList description ======================= @@ -6243,11 +6237,11 @@ OCIO_ADD_TEST(CTFTransform, range1_clf) group->appendTransform(range); std::ostringstream outputTransform; - OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransform)); + OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransform)); const std::string expected{ "\n" - "\n" + "\n" " Input descriptor\n" " Output descriptor\n" " \n" @@ -6278,11 +6272,11 @@ OCIO_ADD_TEST(CTFTransform, range2_clf) group->appendTransform(range); std::ostringstream outputTransform; - OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransform)); + OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransform)); const std::string expected{ "\n" - "\n" + "\n" " \n" " 102.3 \n" " 25.5 \n" @@ -6310,10 +6304,10 @@ OCIO_ADD_TEST(CTFTransform, range3_clf) group->appendTransform(range); std::ostringstream outputTransform; - OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransform)); + OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransform)); const std::string expected{ R"( - + 0 0 @@ -6344,11 +6338,11 @@ OCIO_ADD_TEST(CTFTransform, range4_clf) group->appendTransform(range); std::ostringstream outputTransform; - OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransform)); + OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransform)); // Range is saved in the forward direction. const std::string expected{ R"( - + 2047.5 4095 @@ -6419,10 +6413,10 @@ OCIO_ADD_TEST(CTFTransform, gamma1_ctf) OCIO_CHECK_EQUAL(expected, outputTransform.str()); std::ostringstream outputTransformCLF; - OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransformCLF)); + OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransformCLF)); const std::string expectedCLF{ R"( - + @@ -6462,10 +6456,10 @@ OCIO_ADD_TEST(CTFTransform, gamma1_mirror_ctf) OCIO_CHECK_EQUAL(expected, outputTransform.str()); std::ostringstream outputTransformCLF; - OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransformCLF)); + OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransformCLF)); const std::string expectedCLF{ R"( - + @@ -6505,10 +6499,10 @@ OCIO_ADD_TEST(CTFTransform, gamma1_pass_thru_ctf) OCIO_CHECK_EQUAL(expected, outputTransform.str()); std::ostringstream outputTransformCLF; - OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransformCLF)); + OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransformCLF)); const std::string expectedCLF{ R"( - + @@ -6554,7 +6548,7 @@ OCIO_ADD_TEST(CTFTransform, gamma2_ctf) // CLF does not allow alpha channel. std::ostringstream outputTransformCLF; - OCIO_CHECK_THROW_WHAT(WriteGroupCLF_Academy(group, outputTransformCLF), + OCIO_CHECK_THROW_WHAT(WriteGroupCLF(group, outputTransformCLF), OCIO::Exception, "Transform uses the 'Gamma with alpha component' op which cannot be written as CLF"); } @@ -6590,10 +6584,10 @@ OCIO_ADD_TEST(CTFTransform, gamma3_ctf) // CLF does not allow alpha channel. std::ostringstream outputTransformCLF; - OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransformCLF)); + OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransformCLF)); const std::string expectedCLF{ R"( - + @@ -7840,10 +7834,10 @@ OCIO_ADD_TEST(CTFTransform, lut1d_clf) group->appendTransform(lut); std::ostringstream outputTransform; - OCIO_CHECK_NO_THROW(WriteGroupCLF_Academy(group, outputTransform)); + OCIO_CHECK_NO_THROW(WriteGroupCLF(group, outputTransform)); const std::string expected{ R"( - + 0 @@ -7867,7 +7861,7 @@ OCIO_ADD_TEST(CTFTransform, lut1d_inverse_clf) group->appendTransform(lut); std::ostringstream outputTransform; - OCIO_CHECK_THROW_WHAT(WriteGroupCLF_Academy(group, outputTransform), + OCIO_CHECK_THROW_WHAT(WriteGroupCLF(group, outputTransform), OCIO::Exception, "Transform uses the 'InverseLUT1D' op which cannot be written as CLF"); } @@ -8245,7 +8239,7 @@ OCIO_ADD_TEST(CTFTransform, lut3d_inverse_clf) group->appendTransform(lut); std::ostringstream outputTransform; - OCIO_CHECK_THROW_WHAT(WriteGroupCLF_Academy(group, outputTransform), + OCIO_CHECK_THROW_WHAT(WriteGroupCLF(group, outputTransform), OCIO::Exception, "Transform uses the 'InverseLUT3D' op which cannot be written as CLF"); } @@ -8618,7 +8612,7 @@ OCIO_ADD_TEST(FileFormatCTF, bake_1d) const std::string expectedCLF{ R"( - + 0 @@ -8807,7 +8801,7 @@ OCIO_ADD_TEST(FileFormatCTF, bake_3d) const std::string expectedCLF{ R"( - + OpenColorIO Test Line 1 OpenColorIO Test Line 2 Input descriptor @@ -8939,7 +8933,7 @@ OCIO_ADD_TEST(FileFormatCTF, bake_1d_3d) const std::string expectedCLF{ R"( - + -0.125 1.125 diff --git a/tests/cpu/transforms/FileTransform_tests.cpp b/tests/cpu/transforms/FileTransform_tests.cpp index 14ba7e554d..101358f29a 100644 --- a/tests/cpu/transforms/FileTransform_tests.cpp +++ b/tests/cpu/transforms/FileTransform_tests.cpp @@ -207,9 +207,9 @@ OCIO_ADD_TEST(FileTransform, all_formats) { OCIO::FormatRegistry & formatRegistry = OCIO::FormatRegistry::GetInstance(); OCIO_CHECK_EQUAL(19, formatRegistry.getNumRawFormats()); - OCIO_CHECK_EQUAL(25, formatRegistry.getNumFormats(OCIO::FORMAT_CAPABILITY_READ)); - OCIO_CHECK_EQUAL(13, formatRegistry.getNumFormats(OCIO::FORMAT_CAPABILITY_BAKE)); - OCIO_CHECK_EQUAL(6, formatRegistry.getNumFormats(OCIO::FORMAT_CAPABILITY_WRITE)); + OCIO_CHECK_EQUAL(24, formatRegistry.getNumFormats(OCIO::FORMAT_CAPABILITY_READ)); + OCIO_CHECK_EQUAL(12, formatRegistry.getNumFormats(OCIO::FORMAT_CAPABILITY_BAKE)); + OCIO_CHECK_EQUAL(5, formatRegistry.getNumFormats(OCIO::FORMAT_CAPABILITY_WRITE)); OCIO_CHECK_ASSERT(FormatNameFoundByExtension("3dl", "flame")); OCIO_CHECK_ASSERT(FormatNameFoundByExtension("cc", "ColorCorrection")); diff --git a/tests/cpu/transforms/GroupTransform_tests.cpp b/tests/cpu/transforms/GroupTransform_tests.cpp index f9b53b9016..67a0f656df 100644 --- a/tests/cpu/transforms/GroupTransform_tests.cpp +++ b/tests/cpu/transforms/GroupTransform_tests.cpp @@ -70,7 +70,7 @@ std::string GetFormatName(const std::string & extension) OCIO_ADD_TEST(GroupTransform, write_formats) { - OCIO_CHECK_EQUAL(OCIO::GroupTransform::GetNumWriteFormats(), 6); + OCIO_CHECK_EQUAL(OCIO::GroupTransform::GetNumWriteFormats(), 5); OCIO_CHECK_EQUAL(GetFormatName("CLF"), OCIO::FILEFORMAT_CLF); OCIO_CHECK_EQUAL(GetFormatName("CTF"), OCIO::FILEFORMAT_CTF); diff --git a/tests/python/BakerTest.py b/tests/python/BakerTest.py index 2ba8810861..62db19ff00 100644 --- a/tests/python/BakerTest.py +++ b/tests/python/BakerTest.py @@ -154,6 +154,6 @@ def test_interface(self): self.assert_lut_match(output, self.EXPECTED_LUT) fmts = bake.getFormats() - self.assertEqual(len(fmts), 13) + self.assertEqual(len(fmts), 12) self.assertEqual("cinespace", fmts[5][0]) self.assertEqual("3dl", fmts[1][1]) diff --git a/tests/python/FileTransformTest.py b/tests/python/FileTransformTest.py index 9765d33189..31c51cdd07 100644 --- a/tests/python/FileTransformTest.py +++ b/tests/python/FileTransformTest.py @@ -21,7 +21,6 @@ class FileTransformTest(unittest.TestCase, TransformsBaseTest): ('ColorCorrectionCollection', 'ccc'), ('ColorDecisionList', 'cdl'), ('Academy/ASC Common LUT Format', 'clf'), - ('SMPTE Common LUT Format', 'clf'), ('Color Transform Format', 'ctf'), ('cinespace', 'csp'), ('Discreet 1D LUT', 'lut'), @@ -112,7 +111,7 @@ def test_getformats(self): self.assertEqual(format_name, name) self.assertEqual(format_ext, ext) - self.assertEqual(format_iterator.__len__(), 25) + self.assertEqual(format_iterator.__len__(), 24) def test_interpolation(self): """ From 07fed487581a59be3514badb84308c6a2b0ce871 Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Thu, 5 Feb 2026 23:56:46 -0800 Subject: [PATCH 11/25] - Add format restriction to version string checks. - General cleanup, hopefully tests will be happy now. Signed-off-by: cuneyt.ozdas --- include/OpenColorIO/OpenColorTypes.h | 2 +- .../fileformats/ctf/CTFReaderHelper.cpp | 4 +- .../fileformats/ctf/CTFTransform.cpp | 37 ++++++++-------- .../fileformats/ctf/CTFTransform.h | 9 +++- tests/cpu/fileformats/FileFormatCTF_tests.cpp | 42 +------------------ tests/data/files/clf/matrix_windows.clf | 2 +- tests/python/BakerTest.py | 2 +- 7 files changed, 31 insertions(+), 67 deletions(-) diff --git a/include/OpenColorIO/OpenColorTypes.h b/include/OpenColorIO/OpenColorTypes.h index 9e0dadff13..b727d56e9a 100644 --- a/include/OpenColorIO/OpenColorTypes.h +++ b/include/OpenColorIO/OpenColorTypes.h @@ -977,7 +977,7 @@ extern OCIOEXPORT const char * METADATA_NAME; */ extern OCIOEXPORT const char * METADATA_ID; -// TODO: add export for METADATA_ID_ELEMENT ? +// FIXME: Add Comment. extern OCIOEXPORT const char * METADATA_ID_ELEMENT; /*!rst:: diff --git a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp index a9ee4049e4..a89535ee7a 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp @@ -87,7 +87,7 @@ void CTFReaderTransformElt::start(const char ** atts) // Check if xmlns atrribute holds a SMPTE version string. try { - auto version = CTFVersion(atts[i + 1]); + auto version = CTFVersion(atts[i + 1], CTFVersion::StringFormat::eSMPTE_Long); if (isVersionFound) { @@ -181,7 +181,7 @@ void CTFReaderTransformElt::start(const char ** atts) try { std::string verString(pVer); - requestedCLFVersion = CTFVersion(verString); + requestedCLFVersion = CTFVersion(verString, CTFVersion::StringFormat::eSMPTE_Short); } catch (Exception& ce) { diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp index ebcc12ba85..16c0c7f350 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp @@ -40,36 +40,33 @@ namespace OCIO_NAMESPACE static constexpr unsigned DOUBLE_PRECISION = 15; -CTFVersion::CTFVersion(const std::string & versionString) +CTFVersion::CTFVersion(const std::string & versionString, StringFormat acceptedFormat) : m_major(0), m_minor(0), m_revision(0) { - // Parse the version string to see if that matches the SMPTE namespace/version - // patterns. If so store the version string and consider equivalent to v3.0. + // Parse the version string to see if that matches the SMPTE + // namespace/version patterns. If so store the version string and consider + // equivalent to v3.0. + if(acceptedFormat & ( StringFormat::eSMPTE_Long | StringFormat::eSMPTE_Short)) { - std::regex smpteRegexFull( - "^http://www\\.smpte-ra\\.org/ns/2136-1/(\\d{4})$", - std::regex::icase); // Do we really want to ignore case here? - - std::regex smpteRegexShort( - "^ST2136-1:(\\d{4})$", - std::regex::icase); + bool res = false; + if(acceptedFormat & StringFormat::eSMPTE_Long) + { + res = (0 == Platform::Strcasecmp(versionString.c_str(), + "http://www.smpte-ra.org/ns/2136-1/2024")); + } - std::smatch match; - bool res = std::regex_match(versionString, match, smpteRegexFull); - if(!res) + if(!res && acceptedFormat & StringFormat::eSMPTE_Short) { - res = std::regex_match(versionString, match, smpteRegexShort); + res = (0 == Platform::Strcasecmp(versionString.c_str(), + "ST2136-1:2024")); } if (res) { - if (match.size() == 2) - { - m_version_string = versionString; - m_major = 3; - } + m_version_string = versionString; + m_major = 3; return; - }; + } } // For non-SMPTE namespace versions, parse as MAJOR[.MINOR[.REVISION]] diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.h b/src/OpenColorIO/fileformats/ctf/CTFTransform.h index 61e80bace4..0223b70b50 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.h +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.h @@ -24,8 +24,15 @@ namespace OCIO_NAMESPACE class CTFVersion { public: + enum StringFormat + { + eNumericOnly = 0, // Numeric version is always accepted. + eSMPTE_Long = 1 << 1, + eSMPTE_Short = 1 << 2 + }; + // Will throw if versionString is not formatted like a version. - explicit CTFVersion(const std::string & versionString); + explicit CTFVersion(const std::string & versionString, StringFormat acceptedFormat = eNumericOnly); CTFVersion() { diff --git a/tests/cpu/fileformats/FileFormatCTF_tests.cpp b/tests/cpu/fileformats/FileFormatCTF_tests.cpp index e084678254..8195501134 100644 --- a/tests/cpu/fileformats/FileFormatCTF_tests.cpp +++ b/tests/cpu/fileformats/FileFormatCTF_tests.cpp @@ -39,46 +39,6 @@ OCIO_ADD_TEST(FileFormatCTF, missing_file) "Error opening test file."); } -void DumpElements(std::string& sp, const OCIO::FormatMetadata& meta) -{ - - std::cout << sp << "Element name : " << meta.getElementName() << std::endl; - std::cout << sp << "Element value: " << meta.getElementValue() << std::endl; - std::cout << sp << "Name : " << meta.getName() << std::endl; - std::cout << sp << "ID : " << meta.getID() << std::endl; - std::cout << sp << "Element attributes: " << std::endl; - int natt = meta.getNumAttributes(); - - for (int i = 0; igetFormatMetadata(); - - DumpElements(std::string(), meta); - - auto grp = proc->createGroupTransform(); - auto& meta2 = grp->getFormatMetadata(); - DumpElements(std::string(), meta2); - -} - OCIO_ADD_TEST(FileFormatCTF, clf_examples) { OCIO::LocalCachedFileRcPtr cachedFile; @@ -1432,7 +1392,7 @@ OCIO_ADD_TEST(FileFormatCTF, difficult_syntax) OCIO_REQUIRE_ASSERT((bool)cachedFile); const OCIO::CTFVersion clfVersion = cachedFile->m_transform->getCLFVersion(); - const OCIO::CTFVersion ver("http://www.smpte-ra.org/ns/2136-1/2024"); + const OCIO::CTFVersion ver("http://www.smpte-ra.org/ns/2136-1/2024", OCIO::CTFVersion::eSMPTE_Long); OCIO_CHECK_EQUAL(clfVersion, ver); OCIO_CHECK_EQUAL(cachedFile->m_transform->getID(), "id1"); diff --git a/tests/data/files/clf/matrix_windows.clf b/tests/data/files/clf/matrix_windows.clf index 5d45b4c797..6dc1569b93 100644 --- a/tests/data/files/clf/matrix_windows.clf +++ b/tests/data/files/clf/matrix_windows.clf @@ -8,4 +8,4 @@ 0 0 4095 - \ No newline at end of file + diff --git a/tests/python/BakerTest.py b/tests/python/BakerTest.py index 62db19ff00..aa48327869 100644 --- a/tests/python/BakerTest.py +++ b/tests/python/BakerTest.py @@ -155,5 +155,5 @@ def test_interface(self): fmts = bake.getFormats() self.assertEqual(len(fmts), 12) - self.assertEqual("cinespace", fmts[5][0]) + self.assertEqual("cinespace", fmts[4][0]) self.assertEqual("3dl", fmts[1][1]) From 614a22f68143bcae82718d7dc8d85a91401dbe62 Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Fri, 6 Feb 2026 00:44:50 -0800 Subject: [PATCH 12/25] Fix the tests Signed-off-by: cuneyt.ozdas --- tests/cpu/fileformats/FileFormatCTF_tests.cpp | 8 -------- tests/python/GroupTransformTest.py | 2 +- 2 files changed, 1 insertion(+), 9 deletions(-) diff --git a/tests/cpu/fileformats/FileFormatCTF_tests.cpp b/tests/cpu/fileformats/FileFormatCTF_tests.cpp index 8195501134..8e8c5e1fc3 100644 --- a/tests/cpu/fileformats/FileFormatCTF_tests.cpp +++ b/tests/cpu/fileformats/FileFormatCTF_tests.cpp @@ -1940,14 +1940,6 @@ OCIO_ADD_TEST(FileFormatCTF, transform_id_empty) "Attribute 'id' does not have a value"); } -OCIO_ADD_TEST(FileFormatCTF, transform_id_invalid) -{ - const std::string ctfFile("clf/smpte/transform_id_invalid.clf"); - OCIO_CHECK_THROW_WHAT(LoadCLFFile(ctfFile), - OCIO::Exception, - "'Some Random Text' is not a ST2136-1:2024 complaint Id value."); -} - OCIO_ADD_TEST(FileFormatCTF, transform_with_bitdepth_mismatch) { // Even though we normalize the bit-depths after reading, any mismatches in diff --git a/tests/python/GroupTransformTest.py b/tests/python/GroupTransformTest.py index 0b4e47da68..cf3820cb32 100644 --- a/tests/python/GroupTransformTest.py +++ b/tests/python/GroupTransformTest.py @@ -162,7 +162,7 @@ def test_write_clf(self): self.assertEqual(grp.write(formatName='Academy/ASC Common LUT Format', config=config), """ - + Sample clf file. Sample matrix. From 163308d2ee2c02b6f4e73cd95f9d162776da9377 Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Fri, 6 Feb 2026 15:49:05 -0800 Subject: [PATCH 13/25] - Adding bare-bone tests exercising the newly added clf files. Signed-off-by: cuneyt.ozdas --- tests/cpu/fileformats/FileFormatCTF_tests.cpp | 174 ++++++++++-------- 1 file changed, 99 insertions(+), 75 deletions(-) diff --git a/tests/cpu/fileformats/FileFormatCTF_tests.cpp b/tests/cpu/fileformats/FileFormatCTF_tests.cpp index 8e8c5e1fc3..3d2b36753c 100644 --- a/tests/cpu/fileformats/FileFormatCTF_tests.cpp +++ b/tests/cpu/fileformats/FileFormatCTF_tests.cpp @@ -29,6 +29,105 @@ OCIO::LocalCachedFileRcPtr LoadCLFFile(const std::string & fileName) } } +// **************** NEW TESTS, MAY NEED MOVING AROUND ************** + +OCIO_ADD_TEST(FileFormatCTF, smpte_id_element) +{ + const std::string ctfFile("clf/bit_depth_identity.clf"); + OCIO::LocalCachedFileRcPtr cachedFile; + OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); + OCIO_REQUIRE_ASSERT((bool)cachedFile); + OCIO_CHECK_EQUAL(cachedFile->m_transform->getID(), "urn:uuid:9d768121-0cf9-40a3-a8e3-7b49f79858a7"); + OCIO_REQUIRE_EQUAL(cachedFile->m_transform->getDescriptions().size(), 2); + OCIO_CHECK_EQUAL(cachedFile->m_transform->getDescriptions()[0], + "Identity transform illustrating Array bit depth scaling"); + OCIO_CHECK_EQUAL(cachedFile->m_transform->getDescriptions()[1], + "Can be loaded by either SMPTE or CLF v3 parsers"); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + OCIO_REQUIRE_EQUAL(opList.size(), 3); + + // Check the ops. + auto mat1 = OCIO::DynamicPtrCast(opList[0]); + OCIO_REQUIRE_ASSERT(mat1); + OCIO_CHECK_EQUAL(mat1->getFileInputBitDepth(), OCIO::BIT_DEPTH_UINT8); + OCIO_CHECK_EQUAL(mat1->getFileOutputBitDepth(), OCIO::BIT_DEPTH_UINT16); + + auto lut = OCIO::DynamicPtrCast(opList[1]); + OCIO_REQUIRE_ASSERT(lut); + OCIO_CHECK_EQUAL(lut->getFileOutputBitDepth(), OCIO::BIT_DEPTH_UINT16); + + auto mat2 = OCIO::DynamicPtrCast(opList[2]); + OCIO_REQUIRE_ASSERT(mat2); + OCIO_CHECK_EQUAL(mat2->getFileInputBitDepth(), OCIO::BIT_DEPTH_UINT16); + OCIO_CHECK_EQUAL(mat2->getFileOutputBitDepth(), OCIO::BIT_DEPTH_UINT16); + + // Check identity. + OCIO::ConstProcessorRcPtr processor; + OCIO_CHECK_NO_THROW(processor = OCIO::GetFileTransformProcessor(ctfFile)); + OCIO_REQUIRE_ASSERT(processor); + auto procOpt = processor->getOptimizedCPUProcessor( + OCIO::BIT_DEPTH_UINT8, + OCIO::BIT_DEPTH_UINT16, + OCIO::OPTIMIZATION_DEFAULT); + OCIO_CHECK_ASSERT(procOpt->isIdentity()); +} + +OCIO_ADD_TEST(FileFormatCTF, non_smpte_xmlns) +{ + const std::string ctfFile("clf/pre-smpte_only/process_list_v3_namespace.clf"); + OCIO::LocalCachedFileRcPtr cachedFile; + OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); + + // TODO: Extend? +} + +OCIO_ADD_TEST(FileFormatCTF, smpte_all_metadata) +{ + const std::string ctfFile("clf/smpte_only/broadcast_profile_lut33.clf"); + OCIO::LocalCachedFileRcPtr cachedFile; + OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); + + // This passes with a single "Unrecognized element" warning for xmlns:clfbp + // TODO: Should we try to ignore it silently? + // TODO: Extend? +} + +OCIO_ADD_TEST(FileFormatCTF, smpte_namespaces) +{ + const std::string ctfFile("clf/smpte_only/namespaces.clf"); + OCIO::LocalCachedFileRcPtr cachedFile; + OCIO_CHECK_THROW_WHAT(cachedFile = LoadCLFFile(ctfFile), + OCIO::Exception, + "is not a CTF/CLF file."); + + // TODO: Should we try to make this pass? +} + +OCIO_ADD_TEST(FileFormatCTF, smpte_signature) +{ + const std::string ctfFile("clf/smpte_only/signature.clf"); + OCIO::LocalCachedFileRcPtr cachedFile; + OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); + + // This passes with many "Unrecognized element" warnings + // TODO: Try to ignore the name-spaced elements? + // TODO: Extend? +} + +OCIO_ADD_TEST(FileFormatCTF, smpte_id_bad_value) +{ + const std::string ctfFile("clf/smpte_only/illegal/id_bad_value.clf"); + OCIO::LocalCachedFileRcPtr cachedFile; + OCIO_CHECK_THROW_WHAT(cachedFile = LoadCLFFile(ctfFile), + OCIO::Exception, + "'3bae2da8' is not a ST2136-1:2024 complaint Id value."); +} + +// ***************************************************************** + + + + OCIO_ADD_TEST(FileFormatCTF, missing_file) { // Test LoadCLFFile helper function with missing file. @@ -98,44 +197,6 @@ OCIO_ADD_TEST(FileFormatCTF, clf_examples) OCIO_CHECK_EQUAL(desc[0], " 3D LUT "); } - { - const std::string ctfFile("clf/bit_depth_identity.clf"); - OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); - OCIO_REQUIRE_ASSERT((bool)cachedFile); - // TODO: the same ID is defined both in tag's id attrib and - // the tag so this test doesn't really figure out which one wins. - // It might be a good idea to make them different and check the correct - // one wins. - OCIO_CHECK_EQUAL(cachedFile->m_transform->getID(), "urn:uuid:9d768121-0cf9-40a3-a8e3-7b49f79858a7"); - OCIO_REQUIRE_EQUAL(cachedFile->m_transform->getDescriptions().size(), 2); - OCIO_CHECK_EQUAL(cachedFile->m_transform->getDescriptions()[0], - "Identity transform illustrating Array bit depth scaling"); - OCIO_CHECK_EQUAL(cachedFile->m_transform->getDescriptions()[1], - "Can be loaded by either SMPTE or CLF v3 parsers"); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); - OCIO_REQUIRE_EQUAL(opList.size(), 3); - - auto mat1 = OCIO::DynamicPtrCast(opList[0]); - OCIO_REQUIRE_ASSERT(mat1); - OCIO_CHECK_EQUAL(mat1->getFileInputBitDepth(), OCIO::BIT_DEPTH_UINT8); - OCIO_CHECK_EQUAL(mat1->getFileOutputBitDepth(), OCIO::BIT_DEPTH_UINT16); - - auto lut = OCIO::DynamicPtrCast(opList[1]); - OCIO_REQUIRE_ASSERT(lut); - OCIO_CHECK_EQUAL(lut->getFileOutputBitDepth(), OCIO::BIT_DEPTH_UINT16); - - auto mat2 = OCIO::DynamicPtrCast(opList[2]); - OCIO_REQUIRE_ASSERT(mat2); - OCIO_CHECK_EQUAL(mat2->getFileInputBitDepth(), OCIO::BIT_DEPTH_UINT16); - OCIO_CHECK_EQUAL(mat2->getFileOutputBitDepth(), OCIO::BIT_DEPTH_UINT16); - - // TODO check identity. - - - - } - - { const std::string ctfFile("clf/matrix_3x4_example.clf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); @@ -5687,43 +5748,6 @@ OCIO_ADD_TEST(CTFTransform, load_edit_save_matrix_clf) OCIO_CHECK_EQUAL(expectedCLF_Academy, outputTransform.str()); } - // CLF SMPTE -// { -// // The ID is not SMPTE compliant. -// std::ostringstream outputTransform; -// OCIO_CHECK_THROW_WHAT(WriteGroupCLF_SMPTE(group, outputTransform), OCIO::Exception, -// "'b5cc7aed-d405-4d8b-b64b-382b2341a378' is not a ST2136-1:2024 compliant Id value."); -// -// // Fix the ID to be SMPTE compliant. -// group->getFormatMetadata().setID("urn:uuid:b5cc7aed-d405-4d8b-b64b-382b2341a378"); -// -// outputTransform.str(""); -// OCIO_CHECK_NO_THROW(WriteGroupCLF_SMPTE(group, outputTransform)); -// -// const std::string expectedCLF_SMPTE{ -// R"( -// -// urn:uuid:b5cc7aed-d405-4d8b-b64b-382b2341a378 -// Basic matrix example using CLF v2 dim syntax -// RGB -// XYZ -// -// Legacy matrix -// Note that dim="3 3 3" should be supported for CLF v2 compatibility -// Added description -// -// 0.4123908 0.35758434 0.18048079 0.1 -// 0.21263901 0.71516868 0.07219232 1.2 -// 0.01933082 0.01191948 0.95053215 2.3 -// -// -// -// )"}; -// -// OCIO_CHECK_EQUAL(expectedCLF_SMPTE.size(), outputTransform.str().size()); -// OCIO_CHECK_EQUAL(expectedCLF_SMPTE, outputTransform.str()); -// } - // CTF { const double offsetAlpha[] = { 0.1, 1.2, 2.3, 0.9 }; From c12e375fdf2cbad0c86198d74886879befef4b89 Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Fri, 6 Feb 2026 16:22:32 -0800 Subject: [PATCH 14/25] - minor improvement to the tests Signed-off-by: cuneyt.ozdas --- tests/cpu/fileformats/FileFormatCTF_tests.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/tests/cpu/fileformats/FileFormatCTF_tests.cpp b/tests/cpu/fileformats/FileFormatCTF_tests.cpp index 3d2b36753c..e489b8f712 100644 --- a/tests/cpu/fileformats/FileFormatCTF_tests.cpp +++ b/tests/cpu/fileformats/FileFormatCTF_tests.cpp @@ -44,9 +44,10 @@ OCIO_ADD_TEST(FileFormatCTF, smpte_id_element) OCIO_CHECK_EQUAL(cachedFile->m_transform->getDescriptions()[1], "Can be loaded by either SMPTE or CLF v3 parsers"); const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); - OCIO_REQUIRE_EQUAL(opList.size(), 3); // Check the ops. + OCIO_REQUIRE_EQUAL(opList.size(), 3); + auto mat1 = OCIO::DynamicPtrCast(opList[0]); OCIO_REQUIRE_ASSERT(mat1); OCIO_CHECK_EQUAL(mat1->getFileInputBitDepth(), OCIO::BIT_DEPTH_UINT8); @@ -70,6 +71,15 @@ OCIO_ADD_TEST(FileFormatCTF, smpte_id_element) OCIO::BIT_DEPTH_UINT16, OCIO::OPTIMIZATION_DEFAULT); OCIO_CHECK_ASSERT(procOpt->isIdentity()); + + // Check the Id element + OCIO::GroupTransformRcPtr group; + OCIO_CHECK_NO_THROW(group = processor->createGroupTransform()); + auto& meta = group->getFormatMetadata(); + OCIO_REQUIRE_ASSERT(meta.getNumChildrenElements() == 3); + auto& idElement = meta.getChildElement(0); + OCIO_CHECK_EQUAL(std::string(idElement.getElementName()), "Id"); + OCIO_CHECK_EQUAL(std::string(idElement.getElementValue()), "urn:uuid:9d768121-0cf9-40a3-a8e3-7b49f79858a7"); } OCIO_ADD_TEST(FileFormatCTF, non_smpte_xmlns) From 60bf463d7871b449a0f2902ef687d8f32eb9dba0 Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Sat, 7 Feb 2026 22:19:45 -0800 Subject: [PATCH 15/25] - Added GroupTransform::GetCacheID() function to generate UUID based on the group ops. It uses a raw config to create the ops. The generated Id matches the id attribute that the CTF writer generates. - createclf tool is updated to have the generateid flag - added experimental STRIP_NAMESPACES control flag to CTF parser. When set to true, all the name spaces are stripped before parsing the elements. This makes the parser understand elements with name spaces (e.g. clf:ProcessList). Parser can still be confused if multiple names paces are used though. - CTF TransformWriter::generateID() now generates the id always in the SMPTE format - Added few more tests - general cleanup Signed-off-by: cuneyt.ozdas --- include/OpenColorIO/OpenColorTransforms.h | 10 ++ src/OpenColorIO/fileformats/FileFormatCTF.cpp | 108 +++++++++++------- .../fileformats/ctf/CTFReaderUtils.h | 1 + .../fileformats/ctf/CTFTransform.cpp | 42 +++---- .../fileformats/ctf/CTFTransform.h | 9 +- .../fileformats/xmlutils/XMLReaderUtils.h | 1 - src/OpenColorIO/transforms/CDLTransform.cpp | 1 - src/OpenColorIO/transforms/FileTransform.h | 4 +- src/OpenColorIO/transforms/GroupTransform.cpp | 28 +++++ src/OpenColorIO/transforms/GroupTransform.h | 3 + src/apps/ociomakeclf/main.cpp | 45 +++----- .../fileformats/ctf/CTFTransform_tests.cpp | 74 +++++++++++- 12 files changed, 216 insertions(+), 110 deletions(-) diff --git a/include/OpenColorIO/OpenColorTransforms.h b/include/OpenColorIO/OpenColorTransforms.h index 8ef04be8c8..c34c18f6cc 100644 --- a/include/OpenColorIO/OpenColorTransforms.h +++ b/include/OpenColorIO/OpenColorTransforms.h @@ -1535,6 +1535,16 @@ class OCIOEXPORT GroupTransform : public Transform virtual const FormatMetadata & getFormatMetadata() const noexcept = 0; virtual FormatMetadata & getFormatMetadata() noexcept = 0; + /// Generates a cacheID string, in URN format, based on hashing the cacheIDs + /// of the ops in the GroupTransform. The string will begin with "urn:uuid:" + /// followed by a string of hex digits and dashes, making it suitable for + /// use as an "Id" element in a CLF file. The ID may vary over time or + /// between platforms for an identical transform. Ideally, the argument will + /// be a result of calling createGroupTransform on a Processor to first + /// resolve any FileTransforms, ColorSpaceTransforms, etc. into the actual + /// ops. + virtual const char * getCacheID() = 0; + /// Throws if index is not allowed. virtual ConstTransformRcPtr getTransform(int index) const = 0; diff --git a/src/OpenColorIO/fileformats/FileFormatCTF.cpp b/src/OpenColorIO/fileformats/FileFormatCTF.cpp index 02f8cd0cb7..cb4e34f689 100644 --- a/src/OpenColorIO/fileformats/FileFormatCTF.cpp +++ b/src/OpenColorIO/fileformats/FileFormatCTF.cpp @@ -30,25 +30,24 @@ #include "utils/StringUtils.h" +// TODO: Add explanation of the SMPTE variant as well? /* -This file format reader supports the Academy/ASC Common LUT Format (CLF), SMPTE -Common LUT Format (also CLF) and the Autodesk Color Transform Format (CTF). +This file format reader supports the Academy/ASC Common LUT Format (CLF) and +the Autodesk Color Transform Format (CTF). -The Academy/ASC Common LUT format was an initiative to bring vendors together to -agree on a common LUT format for this industry. Support for CLF is a +The Academy/ASC Common LUT format was an initiative to bring vendors together +to agree on a common LUT format for this industry. Support for CLF is a requirement in order to obtain ACES Logo Certification from the Academy (in several product categories). CLF files are expressed using XML. The spec, AMPAS S-2014-006, is available from: -**** TODO: Text about the SMPTE CLF standard. **** - The Autodesk CTF format is based on the Academy/ASC CLF format and adds several -operators that allow higher quality results by avoiding the need to bake certain -common functions into LUTs. This ranges from simple power functions to more -complicated operators needed to implement very accurate yet compact ACES Output -Transforms. +operators that allow higher quality results by avoiding the need to bake +certain common functions into LUTs. This ranges from simple power functions +to more complicated operators needed to implement very accurate yet compact +ACES Output Transforms. Autodesk CTF was also designed to be able to losslessly serialize any OCIO Processor to a self-contained XML file. This opens up some useful workflow @@ -58,41 +57,41 @@ sometimes also useful for trouble-shooting.) The CTF format is a superset of the CLF format, hence the use of a common parser. Aside from the file extension, the two formats may be distinguished -based on the version attribute in the root ProcessList element. A CLF file uses -the attribute "compCLFversion" whereas a CTF file uses "version". +based on the version attribute in the root ProcessList element. A CLF file +uses the attribute "compCLFversion" whereas a CTF file uses "version". The parser has been carefully designed to assist users in trouble-shooting -problems with files that won't load. A detailed error message is printed, along -with the line number (similar to a compiler). There are also extensive unit -tests to ensure robustness. +problems with files that won't load. A detailed error message is printed, +along with the line number (similar to a compiler). There are also extensive +unit tests to ensure robustness. Note: One frequent point of confusion regarding the CLF syntax relates to the -inBitDepth and outBitDepth attributes in each process node. These bit-depths DO -NOT specify the processing precision, nor do they specify the bit-depth of the -images that are input or output from the transform. The only function of these -bit-depth attributes is to interpret the scaling of the parameter values in a -given process node. This is helpful since, e.g., it avoids the need for +inBitDepth and outBitDepth attributes in each process node. These bit-depths +DO NOT specify the processing precision, nor do they specify the bit-depth of +the images that are input or output from the transform. The only function of +these bit-depth attributes is to interpret the scaling of the parameter values +in a given process node. This is helpful since, e.g., it avoids the need for heuristics to guess whether LUT values are scaled to 10 or 12 bits. These attributes must always be present and must match at the interface between adjacent process nodes. That said, in some cases, one or both may not actually affect the results if they are not required to interpret the scaling of the -parameters. For example, the ASC_CDL parameters are always stored in normalized -form and hence the bit-depths, while required, do not affect their -interpretation. On the other hand, the interpretation of the parameters in a -Matrix op is affected by both the in and out bit-depths. It should be noted +parameters. For example, the ASC_CDL parameters are always stored in +normalized form and hence the bit-depths, while required, do not affect their +interpretation. On the other hand, the interpretation of the parameters in +a Matrix op is affected by both the in and out bit-depths. It should be noted that although the bit-depths imply a certain scaling, they never impose a clamping or quantization, e.g. a LUT array with an outBitDepth of '10i' is free to contain values outside of [0,1023] and to use fractional values. -For the OCIO implementation, we tried to avoid bringing the complexity of proper -bit-depth handling into the design of the ops. Therefore, the objects always -store the values from LUTs, matrices, etc. in normalized form. In other words, -as if the CLF file had all its bit-depths set to "32f". However we do provide -FileBitDepth getters that will return the original scaling read from a CLF file, -and setters that will control the scaling of values to be written to a CLF file. -These getters/setters are only provided for the transforms/ops (LUT1D, LUT3D, -Matrix, and Range) where a CLF file is allowed to store the parameters in an -unnormalized form. +For the OCIO implementation, we tried to avoid bringing the complexity of +proper bit-depth handling into the design of the ops. Therefore, the objects +always store the values from LUTs, matrices, etc. in normalized form. In other +words, as if the CLF file had all its bit-depths set to "32f". However we do +provide FileBitDepth getters that will return the original scaling read from a +CLF file, and setters that will control the scaling of values to be written to +a CLF file. These getters/setters are only provided for the transforms/ops +(LUT1D, LUT3D, Matrix, and Range) where a CLF file is allowed to store the +parameters in an unnormalized form. */ namespace OCIO_NAMESPACE @@ -101,6 +100,11 @@ namespace OCIO_NAMESPACE namespace { +// Control variables +// This is used to strip the name spaces from the element names when parsing. +// This allows our parser to handle elements with name space prefixes. +constexpr const bool STRIP_NAMESPACES = true; + class LocalCachedFile : public CachedFile { public: @@ -431,7 +435,7 @@ class XMLParserHelper // Start the parsing of one element. static void StartElementHandler(void * userData, - const XML_Char * name, + const XML_Char * name_full, const XML_Char ** atts) { static const std::vector rangeSubElements = { @@ -489,7 +493,7 @@ class XMLParserHelper XMLParserHelper * pImpl = (XMLParserHelper*)userData; - if (!pImpl || !name || !*name) + if (!pImpl || !name_full || !*name_full) { if (!pImpl) { @@ -501,6 +505,14 @@ class XMLParserHelper } } + // Strip the name spaces + const char *name = name_full; + if (STRIP_NAMESPACES) + { + name = strrchr(name_full, ':'); + name = name ? (name+1) : name_full; + } + if (!pImpl->m_elms.empty()) { // Check if we are still processing a metadata structure. @@ -736,8 +748,6 @@ class XMLParserHelper pContainer, pImpl->getXmLineNumber(), pImpl->getXmlFilename())); - // TODO: do we enforce the ID (tag for SMPTE or attribute otherwise)? - // TODO: do we want to restrict Id tag to SMPTE only? } // Dynamic Property is valid under any operator parent. First @@ -1015,14 +1025,22 @@ class XMLParserHelper // End the parsing of one element. static void EndElementHandler(void * userData, - const XML_Char * name) + const XML_Char * name_full) { XMLParserHelper * pImpl = (XMLParserHelper*)userData; - if (!pImpl || !name || !*name) + if (!pImpl || !name_full || !*name_full) { throw Exception("CTF/CLF internal parsing error."); } + // Strip the name spaces + const char *name = name_full; + if (STRIP_NAMESPACES) + { + name = strrchr(name_full, ':'); + name = name ? (name+1) : name_full; + } + // Is the expected element present? auto pElt(pImpl->m_elms.back()); if (!pElt.get()) @@ -1191,7 +1209,8 @@ bool isLoadableCTF(std::istream & istream) std::streampos curPos = istream.tellg(); const unsigned limit(5 * 1024); // 5 kilobytes. - const char *pattern = "getID(); if (id.empty()) { - id = generateID(false); // use the SMPTE format for the Id attribute too? + id = generateID(); } attributes.push_back(XmlFormatter::Attribute(ATTR_ID, id)); @@ -2620,11 +2627,8 @@ void TransformWriter::write() const { XmlScopeIndent scopeIndent(m_formatter); - // Id element - - // TODO: We won't create an Id element value if it's missing. Should we - // give users helper function to generate SMPTE complaint Id? If so, - // where? + // Id element, won't generate if not provided but the format is + // enforced. std::string idEl = m_transform->getIDElement(); if(m_subFormat == SubFormat::eCLF && !idEl.empty()) { @@ -2693,7 +2697,7 @@ void TransformWriter::writeProcessListMetadata(const FormatMetadataImpl& m) cons } } -std::string TransformWriter::generateID(bool isSMPTEFormat) const +std::string TransformWriter::generateID() const { std::string id; auto & ops = m_transform->getOps(); @@ -2702,17 +2706,7 @@ std::string TransformWriter::generateID(bool isSMPTEFormat) const id += op->getCacheID(); } - // If this is smpte, format the id to match the requirements Otherwise use - // the original cache ID for backward compatibility. - if(isSMPTEFormat) - { - id = "urn:uuid:" + CacheIDHashUUID(id.c_str(), id.size()); - } - else - { - id = CacheIDHash(id.c_str(), id.size()); - } - + id = "urn:uuid:" + CacheIDHashUUID(id.c_str(), id.size()); return id; } diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.h b/src/OpenColorIO/fileformats/ctf/CTFTransform.h index 0223b70b50..3c7e9782e7 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.h +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.h @@ -19,8 +19,7 @@ namespace OCIO_NAMESPACE { -// TODO: We need to modify this class to hold URI versions for ST variant (or -// hold it somewhere else). + class CTFVersion { public: @@ -96,7 +95,7 @@ class CTFVersion unsigned int m_minor = 0; unsigned int m_revision = 0; - // SMPTE standard uses string version (xml namespace). + // SMPTE standard uses non-numeric version system. std::string m_version_string; }; @@ -265,7 +264,7 @@ class CTFReaderTransform private: std::string m_id; // id attribute - std::string m_id_element; // id tag value + std::string m_id_element; // id element std::string m_name; std::string m_inverseOfId; std::string m_inDescriptor; @@ -316,7 +315,7 @@ class TransformWriter : public XmlElementWriter void writeProcessListMetadata(const FormatMetadataImpl & m) const; void writeOpMetadata(const FormatMetadataImpl & m) const; void writeOps(const CTFVersion & version) const; - std::string generateID(bool isSMPTEFormat) const; + std::string generateID() const; private: ConstCTFReaderTransformPtr m_transform; diff --git a/src/OpenColorIO/fileformats/xmlutils/XMLReaderUtils.h b/src/OpenColorIO/fileformats/xmlutils/XMLReaderUtils.h index 9a2aa99573..a7f0dacd71 100644 --- a/src/OpenColorIO/fileformats/xmlutils/XMLReaderUtils.h +++ b/src/OpenColorIO/fileformats/xmlutils/XMLReaderUtils.h @@ -31,7 +31,6 @@ static constexpr char ATTR_XMLNS[] = "xmlns"; static constexpr char CDL_TAG_COLOR_CORRECTION[] = "ColorCorrection"; static constexpr char TAG_DESCRIPTION[] = "Description"; -static constexpr char TAG_ID[] = "Id"; // move to CTL? static constexpr char TAG_OFFSET[] = "Offset"; static constexpr char TAG_POWER[] = "Power"; static constexpr char TAG_SATNODE[] = "SatNode"; diff --git a/src/OpenColorIO/transforms/CDLTransform.cpp b/src/OpenColorIO/transforms/CDLTransform.cpp index d1992f9064..a6ac91891b 100755 --- a/src/OpenColorIO/transforms/CDLTransform.cpp +++ b/src/OpenColorIO/transforms/CDLTransform.cpp @@ -7,7 +7,6 @@ #include -//#include "fileformats/cdl/CDLParser.h" #include "Logging.h" #include "MathUtils.h" #include "Mutex.h" diff --git a/src/OpenColorIO/transforms/FileTransform.h b/src/OpenColorIO/transforms/FileTransform.h index 1d1c58eb5e..19b2b8c73f 100644 --- a/src/OpenColorIO/transforms/FileTransform.h +++ b/src/OpenColorIO/transforms/FileTransform.h @@ -177,9 +177,7 @@ FileFormat * CreateFileFormatSpiMtx(); FileFormat * CreateFileFormatTruelight(); FileFormat * CreateFileFormatVF(); -static constexpr char FILEFORMAT_CLF[] = "Academy/ASC Common LUT Format"; // Should we use a the default CTF name? Is this the correct one? -//static constexpr char FILEFORMAT_CLF_ACADEMY[] = "Academy/ASC Common LUT Format"; // Is this a good name? -//static constexpr char FILEFORMAT_CLF_SMPTE[] = "SMPTE Common LUT Format"; +static constexpr char FILEFORMAT_CLF[] = "Academy/ASC Common LUT Format"; static constexpr char FILEFORMAT_CTF[] = "Color Transform Format"; static constexpr char FILEFORMAT_COLOR_CORRECTION[] = "ColorCorrection"; static constexpr char FILEFORMAT_COLOR_CORRECTION_COLLECTION[] = "ColorCorrectionCollection"; diff --git a/src/OpenColorIO/transforms/GroupTransform.cpp b/src/OpenColorIO/transforms/GroupTransform.cpp index 89ba45c267..97876e7021 100755 --- a/src/OpenColorIO/transforms/GroupTransform.cpp +++ b/src/OpenColorIO/transforms/GroupTransform.cpp @@ -10,6 +10,7 @@ #include "OpBuilders.h" #include "transforms/FileTransform.h" #include "transforms/GroupTransform.h" +#include "HashUtils.h" namespace OCIO_NAMESPACE @@ -72,6 +73,31 @@ void GroupTransformImpl::validate() const } } +const char * GroupTransformImpl::getCacheID() +{ + if(!m_cacheID.empty()) + return m_cacheID.c_str(); + + ConstConfigRcPtr config = Config::CreateRaw(); + OpRcPtrVec ops; + BuildGroupOps(ops, *config, config->getCurrentContext(), *this, TRANSFORM_DIR_FORWARD); + + ops.finalize(); + + // Call optimize to remove no-op types (e.g., allocation, file no-ops) + ops.optimize(OPTIMIZATION_NONE); + + std::string id; + for (ConstOpRcPtr op : ops) + { + id += op->data()->getCacheID(); + } + + m_cacheID = "urn:uuid:" + CacheIDHashUUID(id.c_str(), id.size()); + return m_cacheID.c_str(); +} + + int GroupTransformImpl::getNumTransforms() const noexcept { return static_cast(m_vec.size()); @@ -103,11 +129,13 @@ TransformRcPtr & GroupTransformImpl::getTransform(int index) void GroupTransformImpl::appendTransform(TransformRcPtr transform) noexcept { + m_cacheID = {}; m_vec.push_back(transform); } void GroupTransformImpl::prependTransform(TransformRcPtr transform) noexcept { + m_cacheID = {}; m_vec.insert(m_vec.begin(), transform); } diff --git a/src/OpenColorIO/transforms/GroupTransform.h b/src/OpenColorIO/transforms/GroupTransform.h index 038404088a..9f09cebbdb 100644 --- a/src/OpenColorIO/transforms/GroupTransform.h +++ b/src/OpenColorIO/transforms/GroupTransform.h @@ -42,6 +42,8 @@ class GroupTransformImpl : public GroupTransform return m_metadata; } + const char * getCacheID() override; + ConstTransformRcPtr getTransform(int index) const override; TransformRcPtr & getTransform(int index) override; @@ -64,6 +66,7 @@ class GroupTransformImpl : public GroupTransform FormatMetadataImpl m_metadata; TransformDirection m_dir; TransformRcPtrVec m_vec; + std::string m_cacheID; }; } diff --git a/src/apps/ociomakeclf/main.cpp b/src/apps/ociomakeclf/main.cpp index 9febfceefd..a8667db449 100644 --- a/src/apps/ociomakeclf/main.cpp +++ b/src/apps/ociomakeclf/main.cpp @@ -31,7 +31,7 @@ static int parse_end_args(int argc, const char * argv[]) return 0; } -void CreateOutputLutFile(const std::string & outLutFilepath, OCIO::ConstGroupTransformRcPtr transform, bool smpte) +void CreateOutputLutFile(const std::string & outLutFilepath, OCIO::ConstGroupTransformRcPtr transform, bool generateId) { // Get the processor. @@ -52,14 +52,17 @@ void CreateOutputLutFile(const std::string & outLutFilepath, OCIO::ConstGroupTra std::ofstream outfs(outLutFilepath, std::ios::out | std::ios::trunc); if (outfs.good()) { - const char* formatName = smpte - ? "SMPTE Common LUT Format" - : "Academy/ASC Common LUT Format"; - try { const auto group = optProcessor->createGroupTransform(); - group->write(config, formatName, outfs); + + if(generateId) + { + const char * cacheID = group->getCacheID(); + group->getFormatMetadata().addChildElement("Id", cacheID); + } + + group->write(config, "Academy/ASC Common LUT Format", outfs); } catch (const OCIO::Exception &) { @@ -87,7 +90,7 @@ int main(int argc, const char ** argv) bool verbose = false; bool measure = false; bool listCSCColorSpaces = false; - std::string format{"smpte"}; + bool generateId = false; std::string cscColorSpace; ArgParse ap; @@ -104,7 +107,7 @@ int main(int argc, const char ** argv) "--measure", &measure, "Measure (in ms) the CLF write", "--list", &listCSCColorSpaces, "List of the supported CSC color spaces", "--csc %s", &cscColorSpace, "The color space that the input LUT expects and produces", - "--format %s", &format, "Output format, either 'smpte' or 'v3' (default: smpte)", + "--generateid",&generateId, "Generates an id based on content and writes in SMPTE Id element format", nullptr); if (ap.parse(argc, argv) < 0) @@ -120,28 +123,6 @@ int main(int argc, const char ** argv) return 0; } - // Check the format option value. - bool smpte = true; - { - const std::string fmt = StringUtils::Lower(format); - if (fmt == "smpte") - { - smpte = true; - } - else if (fmt == "v3") - { - smpte = false; - } - else - { - std::cerr << std::endl << - "ERROR: The format '" << format << "' is not supported." << std::endl << - "Supported formats are 'smpte' and 'v3'." << std::endl; - ap.usage(); - return 1; - } - } - // The LMT must accept and produce ACES2065-1 so look for all built-in transforms that produce // that (based on the naming conventions). static constexpr char BuiltinSuffix[] = "_to_ACES2065-1"; @@ -297,12 +278,12 @@ int main(int argc, const char ** argv) m.resume(); // Create the CLF file. - CreateOutputLutFile(outLutFilepath, grp, smpte); + CreateOutputLutFile(outLutFilepath, grp, generateId); } else { // Create the CLF file. - CreateOutputLutFile(outLutFilepath, grp, smpte); + CreateOutputLutFile(outLutFilepath, grp, generateId); } } catch (OCIO::Exception & ex) diff --git a/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp b/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp index 64271e58cd..d04f2bcc61 100644 --- a/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp +++ b/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp @@ -77,7 +77,61 @@ OCIO_ADD_TEST(CTFVersion, read_version) OCIO_CHECK_EQUAL(version, versionRead); } - // FIXME: add SMPTE version test when supported. + { + // Numeric format is always accepted. + OCIO_CHECK_NO_THROW(versionRead = OCIO::CTFVersion("2.0.0", OCIO::CTFVersion::eSMPTE_Short)); + const OCIO::CTFVersion version(2, 0, 0); + OCIO_CHECK_EQUAL(version, versionRead); + } + + { + // Short SMPTE should be accepted only when the the format is allowed. + OCIO_CHECK_THROW_WHAT(versionRead = OCIO::CTFVersion( + "ST2136-1:2024"), + OCIO::Exception, + "is not a valid version. Expecting MAJOR[.MINOR[.REVISION]]"); + } + + { + // Long SMPTE should be accepted only when the the format is allowed. + OCIO_CHECK_THROW_WHAT(versionRead = OCIO::CTFVersion( + "http://www.smpte-ra.org/ns/2136-1/2024"), + OCIO::Exception, + "is not a valid version. Expecting MAJOR[.MINOR[.REVISION]]"); + } + + { + // SMPTE version is regarded as v3.0.0. + OCIO_CHECK_NO_THROW(versionRead = OCIO::CTFVersion( + "ST2136-1:2024", OCIO::CTFVersion::eSMPTE_Short)); + const OCIO::CTFVersion version(3, 0, 0); + OCIO_CHECK_EQUAL(version, versionRead); + } + + { + // Short SMPTE string is not allowed when only the long format is accepted. + OCIO_CHECK_THROW_WHAT(versionRead = OCIO::CTFVersion( + "ST2136-1:2024", OCIO::CTFVersion::eSMPTE_Long), + OCIO::Exception, + "is not a valid version. Expecting 'http://www.smpte-ra.org/ns/2136-1/2024' or MAJOR[.MINOR[.REVISION]]"); + } + + { + // Long SMPTE should be accepted only when the the format is allowed ans + // should be regarded as v3.0.0. + OCIO_CHECK_NO_THROW(versionRead = OCIO::CTFVersion( + "http://www.smpte-ra.org/ns/2136-1/2024", OCIO::CTFVersion::eSMPTE_Long)); + const OCIO::CTFVersion version(3, 0, 0); + OCIO_CHECK_EQUAL(version, versionRead); + } + + { + // Long SMPTE string is not allowed when only the short format is accepted. + OCIO_CHECK_THROW_WHAT(versionRead = OCIO::CTFVersion( + "http://www.smpte-ra.org/ns/2136-1/2024", OCIO::CTFVersion::eSMPTE_Short), + OCIO::Exception, + "is not a valid version. Expecting 'ST2136-1:2024' or MAJOR[.MINOR[.REVISION]]"); + } OCIO_CHECK_THROW_WHAT(versionRead = OCIO::CTFVersion(""), OCIO::Exception, @@ -143,8 +197,22 @@ OCIO_ADD_TEST(CTFVersion, version_write) ostream << version; OCIO_CHECK_EQUAL(ostream.str(), "0"); } - - // FIXME: add SMPTE version test when supported. + { + const OCIO::CTFVersion version( + "ST2136-1:2024", + OCIO::CTFVersion::eSMPTE_Short); + std::ostringstream ostream; + ostream << version; + OCIO_CHECK_EQUAL(ostream.str(), "ST2136-1:2024"); + } + { + const OCIO::CTFVersion version( + "http://www.smpte-ra.org/ns/2136-1/2024", + OCIO::CTFVersion::eSMPTE_Long); + std::ostringstream ostream; + ostream << version; + OCIO_CHECK_EQUAL(ostream.str(), "http://www.smpte-ra.org/ns/2136-1/2024"); + } } From 6f34f24cf3e5e142bd449f22998863571241247a Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Sat, 7 Feb 2026 22:43:25 -0800 Subject: [PATCH 16/25] - Fix the test: we can now load the namespaces.clf. Signed-off-by: cuneyt.ozdas --- src/OpenColorIO/fileformats/FileFormatCTF.cpp | 7 ++++--- tests/cpu/fileformats/FileFormatCTF_tests.cpp | 8 ++++---- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/src/OpenColorIO/fileformats/FileFormatCTF.cpp b/src/OpenColorIO/fileformats/FileFormatCTF.cpp index cb4e34f689..bf464648de 100644 --- a/src/OpenColorIO/fileformats/FileFormatCTF.cpp +++ b/src/OpenColorIO/fileformats/FileFormatCTF.cpp @@ -1208,9 +1208,10 @@ bool isLoadableCTF(std::istream & istream) { std::streampos curPos = istream.tellg(); - const unsigned limit(5 * 1024); // 5 kilobytes. - const char *pattern1 = " Date: Mon, 9 Feb 2026 17:34:53 -0800 Subject: [PATCH 17/25] - Undo adding getCacheID() to group transform - ociomakeclf now uses optimized processors's cache ID to populate Id Element. - make sure that Processor always generate UUID as the cacheID, even when it has zero ops. - misleading CTFReaderTransform::getOps() function name is changed to getOpDataVec() Signed-off-by: cuneyt.ozdas --- include/OpenColorIO/OpenColorTransforms.h | 10 - src/OpenColorIO/Processor.cpp | 12 +- src/OpenColorIO/fileformats/FileFormatCTF.cpp | 16 +- .../fileformats/ctf/CTFReaderHelper.cpp | 14 +- .../fileformats/ctf/CTFTransform.cpp | 24 +- .../fileformats/ctf/CTFTransform.h | 5 +- src/OpenColorIO/transforms/GroupTransform.cpp | 25 --- src/OpenColorIO/transforms/GroupTransform.h | 2 - src/apps/ociomakeclf/main.cpp | 5 +- tests/cpu/Processor_tests.cpp | 18 +- tests/cpu/fileformats/FileFormatCTF_tests.cpp | 211 +++++++++--------- .../fileformats/ctf/CTFTransform_tests.cpp | 10 +- 12 files changed, 157 insertions(+), 195 deletions(-) diff --git a/include/OpenColorIO/OpenColorTransforms.h b/include/OpenColorIO/OpenColorTransforms.h index c34c18f6cc..8ef04be8c8 100644 --- a/include/OpenColorIO/OpenColorTransforms.h +++ b/include/OpenColorIO/OpenColorTransforms.h @@ -1535,16 +1535,6 @@ class OCIOEXPORT GroupTransform : public Transform virtual const FormatMetadata & getFormatMetadata() const noexcept = 0; virtual FormatMetadata & getFormatMetadata() noexcept = 0; - /// Generates a cacheID string, in URN format, based on hashing the cacheIDs - /// of the ops in the GroupTransform. The string will begin with "urn:uuid:" - /// followed by a string of hex digits and dashes, making it suitable for - /// use as an "Id" element in a CLF file. The ID may vary over time or - /// between platforms for an identical transform. Ideally, the argument will - /// be a result of calling createGroupTransform on a Processor to first - /// resolve any FileTransforms, ColorSpaceTransforms, etc. into the actual - /// ops. - virtual const char * getCacheID() = 0; - /// Throws if index is not allowed. virtual ConstTransformRcPtr getTransform(int index) const = 0; diff --git a/src/OpenColorIO/Processor.cpp b/src/OpenColorIO/Processor.cpp index dab0287dfb..83b8468b75 100755 --- a/src/OpenColorIO/Processor.cpp +++ b/src/OpenColorIO/Processor.cpp @@ -330,15 +330,9 @@ const char * Processor::Impl::getCacheID() const if(!m_cacheID.empty()) return m_cacheID.c_str(); - if(m_ops.empty()) - { - m_cacheID = ""; - } - else - { - const std::string fullstr = m_ops.getCacheID(); - m_cacheID = CacheIDHash(fullstr.c_str(), fullstr.size()); - } + // Note: empty ops vector will also create a UUID. + const std::string fullstr = m_ops.getCacheID(); + m_cacheID = CacheIDHashUUID(fullstr.c_str(), fullstr.size()); return m_cacheID.c_str(); } diff --git a/src/OpenColorIO/fileformats/FileFormatCTF.cpp b/src/OpenColorIO/fileformats/FileFormatCTF.cpp index bf464648de..638bbef809 100644 --- a/src/OpenColorIO/fileformats/FileFormatCTF.cpp +++ b/src/OpenColorIO/fileformats/FileFormatCTF.cpp @@ -28,6 +28,8 @@ #include "TransformBuilder.h" #include "transforms/FileTransform.h" #include "utils/StringUtils.h" +#include "HashUtils.h" + // TODO: Add explanation of the SMPTE variant as well? @@ -242,7 +244,7 @@ class XMLParserHelper throwMessage(error); } - if (pT->getOps().empty()) + if (pT->getOpDataVec().empty()) { static const std::string error( "CTF/CLF parsing error: No color operator in file."); @@ -1358,7 +1360,7 @@ void LocalFileFormat::buildFileOps(OpRcPtrVec & ops, cachedFile->m_transform->toMetadata(processorData); // Resolve reference path using context and load referenced files. - const ConstOpDataVec & opDataVec = cachedFile->m_transform->getOps(); + const ConstOpDataVec & opDataVec = cachedFile->m_transform->getOpDataVec(); // Try to use the FileTransform interpolation for any Lut1D or Lut3D that does not specify // an interpolation in the CTF itself. If the interpolation can not be used, ignore it. @@ -1638,6 +1640,16 @@ void LocalFileFormat::write(const ConstConfigRcPtr & config, const FormatMetadataImpl & metadata = group.getFormatMetadata(); CTFReaderTransformPtr transform = std::make_shared(ops, metadata); + // It it doesn't have an id, create one based on the op list. + if (transform->getID().empty()) + { + std::string opId = ops.getCacheID(); + + std::ostringstream ss; + ss << "urn:uuid:" << CacheIDHashUUID(opId.c_str(), opId.size()); + transform->setID(ss.str().c_str()); + } + // Write XML Header. ostream << "" << std::endl; XmlFormatter fmt(ostream); diff --git a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp index a89535ee7a..74a85601ed 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp @@ -901,7 +901,7 @@ void CTFReaderOpElt::start(const char ** atts) // Add a pointer to an empty op of the appropriate child class to the // end of the opvec. No data is copied since the parameters of the op // have not been filled in yet. - m_transform->getOps().push_back(getOp()); + m_transform->getOpDataVec().push_back(getOp()); enum BitDepthFlags { @@ -4420,9 +4420,9 @@ void CTFReaderLut1DElt_1_7::end() // This code assumes that the current LUT is at the end of the opList. // In other words, that this LUT's end() method will be called before // any other Op's start(). - const size_t len = m_transform->getOps().size(); + const size_t len = m_transform->getOpDataVec().size(); const size_t pos = len - 1; - m_transform->getOps().insert(m_transform->getOps().begin() + pos, pRng); + m_transform->getOpDataVec().insert(m_transform->getOpDataVec().begin() + pos, pRng); } } @@ -4587,9 +4587,9 @@ void CTFReaderLut3DElt_1_7::end() // This code assumes that the current LUT is at the end of the opList. // In other words, that this LUT's end() method will be called before // any other Op's start(). - const unsigned long len = (unsigned long)m_transform->getOps().size(); + const unsigned long len = (unsigned long)m_transform->getOpDataVec().size(); const unsigned long pos = len - 1; - m_transform->getOps().insert(m_transform->getOps().begin() + pos, pRng); + m_transform->getOpDataVec().insert(m_transform->getOpDataVec().begin() + pos, pRng); } } @@ -4965,12 +4965,12 @@ void CTFReaderRangeElt_1_7::end() // This code assumes that the current Range is at the end of the opList. // In other words, that this Op's end() method will be called before // any other Op's start(). - const size_t len = m_transform->getOps().size(); + const size_t len = m_transform->getOpDataVec().size(); const size_t pos = len - 1; // Replace the range appended to m_transform in OpElt::start // with the matrix. - m_transform->getOps()[pos].swap(pMtx); + m_transform->getOpDataVec()[pos].swap(pMtx); } } diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp index eba219500b..c962a3a5ac 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp @@ -8,7 +8,7 @@ #include "fileformats/ctf/CTFReaderUtils.h" #include "fileformats/ctf/CTFTransform.h" #include "fileformats/xmlutils/XMLReaderUtils.h" -#include "HashUtils.h" +//#include "HashUtils.h" #include "ops/cdl/CDLOpData.h" #include "ops/exponent/ExponentOp.h" #include "ops/exposurecontrast/ExposureContrastOpData.h" @@ -419,7 +419,7 @@ CTFVersion GetOpMinimumVersion(const ConstOpDataRcPtr & op) CTFVersion GetMinimumVersion(const ConstCTFReaderTransformPtr & transform) { - auto & opList = transform->getOps(); + auto & opList = transform->getOpDataVec(); // Need to specify the minimum version here. Some test transforms have no ops. CTFVersion minimumVersion = CTF_PROCESS_LIST_VERSION_1_3; @@ -2603,12 +2603,13 @@ void TransformWriter::write() const break; } - // Id attribute. Generate if not provided. + // Id attribute std::string id = m_transform->getID(); if (id.empty()) { - id = generateID(); + throw Exception("Internal error; at this point the transform should have an id"); } + attributes.push_back(XmlFormatter::Attribute(ATTR_ID, id)); const std::string& name = m_transform->getName(); @@ -2697,19 +2698,6 @@ void TransformWriter::writeProcessListMetadata(const FormatMetadataImpl& m) cons } } -std::string TransformWriter::generateID() const -{ - std::string id; - auto & ops = m_transform->getOps(); - for (auto op : ops) - { - id += op->getCacheID(); - } - - id = "urn:uuid:" + CacheIDHashUUID(id.c_str(), id.size()); - return id; -} - namespace { void ThrowWriteOp(const std::string & type) @@ -2770,7 +2758,7 @@ void TransformWriter::writeOps(const CTFVersion & version) const BitDepth inBD = BIT_DEPTH_F32; BitDepth outBD = BIT_DEPTH_F32; bool isCLF = m_subFormat == SubFormat::eCLF; - auto & ops = m_transform->getOps(); + auto & ops = m_transform->getOpDataVec(); size_t numOps = ops.size(); size_t numSavedOps = 0; if (numOps) diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.h b/src/OpenColorIO/fileformats/ctf/CTFTransform.h index 3c7e9782e7..052cf5720a 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.h +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.h @@ -205,11 +205,11 @@ class CTFReaderTransform { return m_infoMetadata; } - const ConstOpDataVec & getOps() const + const ConstOpDataVec & getOpDataVec() const { return m_ops; } - ConstOpDataVec & getOps() + ConstOpDataVec & getOpDataVec() { return m_ops; } @@ -315,7 +315,6 @@ class TransformWriter : public XmlElementWriter void writeProcessListMetadata(const FormatMetadataImpl & m) const; void writeOpMetadata(const FormatMetadataImpl & m) const; void writeOps(const CTFVersion & version) const; - std::string generateID() const; private: ConstCTFReaderTransformPtr m_transform; diff --git a/src/OpenColorIO/transforms/GroupTransform.cpp b/src/OpenColorIO/transforms/GroupTransform.cpp index 97876e7021..98af92a08b 100755 --- a/src/OpenColorIO/transforms/GroupTransform.cpp +++ b/src/OpenColorIO/transforms/GroupTransform.cpp @@ -73,31 +73,6 @@ void GroupTransformImpl::validate() const } } -const char * GroupTransformImpl::getCacheID() -{ - if(!m_cacheID.empty()) - return m_cacheID.c_str(); - - ConstConfigRcPtr config = Config::CreateRaw(); - OpRcPtrVec ops; - BuildGroupOps(ops, *config, config->getCurrentContext(), *this, TRANSFORM_DIR_FORWARD); - - ops.finalize(); - - // Call optimize to remove no-op types (e.g., allocation, file no-ops) - ops.optimize(OPTIMIZATION_NONE); - - std::string id; - for (ConstOpRcPtr op : ops) - { - id += op->data()->getCacheID(); - } - - m_cacheID = "urn:uuid:" + CacheIDHashUUID(id.c_str(), id.size()); - return m_cacheID.c_str(); -} - - int GroupTransformImpl::getNumTransforms() const noexcept { return static_cast(m_vec.size()); diff --git a/src/OpenColorIO/transforms/GroupTransform.h b/src/OpenColorIO/transforms/GroupTransform.h index 9f09cebbdb..4830c6307d 100644 --- a/src/OpenColorIO/transforms/GroupTransform.h +++ b/src/OpenColorIO/transforms/GroupTransform.h @@ -42,8 +42,6 @@ class GroupTransformImpl : public GroupTransform return m_metadata; } - const char * getCacheID() override; - ConstTransformRcPtr getTransform(int index) const override; TransformRcPtr & getTransform(int index) override; diff --git a/src/apps/ociomakeclf/main.cpp b/src/apps/ociomakeclf/main.cpp index a8667db449..3c765f8fc4 100644 --- a/src/apps/ociomakeclf/main.cpp +++ b/src/apps/ociomakeclf/main.cpp @@ -58,8 +58,9 @@ void CreateOutputLutFile(const std::string & outLutFilepath, OCIO::ConstGroupTra if(generateId) { - const char * cacheID = group->getCacheID(); - group->getFormatMetadata().addChildElement("Id", cacheID); + std::ostringstream ss; + ss << "urn:uuid:" << optProcessor->getCacheID(); + group->getFormatMetadata().addChildElement("Id", ss.str().c_str()); } group->write(config, "Academy/ASC Common LUT Format", outfs); diff --git a/tests/cpu/Processor_tests.cpp b/tests/cpu/Processor_tests.cpp index d2e0087251..3188bb6b4b 100644 --- a/tests/cpu/Processor_tests.cpp +++ b/tests/cpu/Processor_tests.cpp @@ -19,7 +19,7 @@ OCIO_ADD_TEST(Processor, basic_cache) auto processorEmptyGroup = config->getProcessor(group); OCIO_CHECK_EQUAL(processorEmptyGroup->getNumTransforms(), 0); - OCIO_CHECK_EQUAL(std::string(processorEmptyGroup->getCacheID()), ""); + OCIO_CHECK_EQUAL(std::string(processorEmptyGroup->getCacheID()), "99aa06d3-0147-98d8-6001-c324468d497f"); auto mat = OCIO::MatrixTransform::Create(); double matrix[16]{ @@ -34,26 +34,26 @@ OCIO_ADD_TEST(Processor, basic_cache) auto processorMat = config->getProcessor(mat); OCIO_CHECK_EQUAL(processorMat->getNumTransforms(), 1); - OCIO_CHECK_EQUAL(std::string(processorMat->getCacheID()), "1b1880136f7669351adb0dcae0f4f9fd"); + OCIO_CHECK_EQUAL(std::string(processorMat->getCacheID()), "1adb0dca-e0f4-f9fd-1b18-80136f766935"); // Check behaviour of the cacheID offset[0] = 0.0; mat->setOffset(offset); processorMat = config->getProcessor(mat); - OCIO_CHECK_EQUAL(std::string(processorMat->getCacheID()), "675ca29c0f7d28fbdc865818c8cf5c4c"); + OCIO_CHECK_EQUAL(std::string(processorMat->getCacheID()), "dc865818-c8cf-5c4c-675c-a29c0f7d28fb"); matrix[0] = 2.0; mat->setMatrix(matrix); processorMat = config->getProcessor(mat); - OCIO_CHECK_EQUAL(std::string(processorMat->getCacheID()), "1ebac7d1c2d833943e1d1d3c26a7eb18"); + OCIO_CHECK_EQUAL(std::string(processorMat->getCacheID()), "3e1d1d3c-26a7-eb18-1eba-c7d1c2d83394"); offset[0] = 0.1; matrix[0] = 1.0; mat->setOffset(offset); mat->setMatrix(matrix); processorMat = config->getProcessor(mat); - OCIO_CHECK_EQUAL(std::string(processorMat->getCacheID()), "1b1880136f7669351adb0dcae0f4f9fd"); + OCIO_CHECK_EQUAL(std::string(processorMat->getCacheID()), "1adb0dca-e0f4-f9fd-1b18-80136f766935"); } OCIO_ADD_TEST(Processor, basic_cache_lut) @@ -63,7 +63,7 @@ OCIO_ADD_TEST(Processor, basic_cache_lut) auto processorEmptyGroup = config->getProcessor(group); OCIO_CHECK_EQUAL(processorEmptyGroup->getNumTransforms(), 0); - OCIO_CHECK_EQUAL(std::string(processorEmptyGroup->getCacheID()), ""); + OCIO_CHECK_EQUAL(std::string(processorEmptyGroup->getCacheID()), "99aa06d3-0147-98d8-6001-c324468d497f"); auto lut = OCIO::Lut3DTransform::Create(3); // Make sure it's not an identity. @@ -71,19 +71,19 @@ OCIO_ADD_TEST(Processor, basic_cache_lut) auto processorLut = config->getProcessor(lut); OCIO_CHECK_EQUAL(processorLut->getNumTransforms(), 1); - OCIO_CHECK_EQUAL(std::string(processorLut->getCacheID()), "2b26d0097cdcf8f141fe3b3d6e21b5ec"); + OCIO_CHECK_EQUAL(std::string(processorLut->getCacheID()), "41fe3b3d-6e21-b5ec-2b26-d0097cdcf8f1"); // Check behaviour of the cacheID // Change a value and check that the cacheID changes. lut->setValue(2, 2, 2, 1.f, 3.f, 4.f); processorLut = config->getProcessor(lut); - OCIO_CHECK_EQUAL(std::string(processorLut->getCacheID()), "288ec8ea132adaca5b5aed24a296a1a2"); + OCIO_CHECK_EQUAL(std::string(processorLut->getCacheID()), "5b5aed24-a296-a1a2-288e-c8ea132adaca"); // Restore the original value, check that the cache ID matches what it used to be. lut->setValue(2, 2, 2, 2.f, 3.f, 4.f); processorLut = config->getProcessor(lut); - OCIO_CHECK_EQUAL(std::string(processorLut->getCacheID()), "2b26d0097cdcf8f141fe3b3d6e21b5ec"); + OCIO_CHECK_EQUAL(std::string(processorLut->getCacheID()), "41fe3b3d-6e21-b5ec-2b26-d0097cdcf8f1"); } OCIO_ADD_TEST(Processor, unique_dynamic_properties) diff --git a/tests/cpu/fileformats/FileFormatCTF_tests.cpp b/tests/cpu/fileformats/FileFormatCTF_tests.cpp index bd55a8a4b3..e3cbd90118 100644 --- a/tests/cpu/fileformats/FileFormatCTF_tests.cpp +++ b/tests/cpu/fileformats/FileFormatCTF_tests.cpp @@ -43,9 +43,9 @@ OCIO_ADD_TEST(FileFormatCTF, smpte_id_element) "Identity transform illustrating Array bit depth scaling"); OCIO_CHECK_EQUAL(cachedFile->m_transform->getDescriptions()[1], "Can be loaded by either SMPTE or CLF v3 parsers"); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); // Check the ops. + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 3); auto mat1 = OCIO::DynamicPtrCast(opList[0]); @@ -62,13 +62,16 @@ OCIO_ADD_TEST(FileFormatCTF, smpte_id_element) OCIO_CHECK_EQUAL(mat2->getFileInputBitDepth(), OCIO::BIT_DEPTH_UINT16); OCIO_CHECK_EQUAL(mat2->getFileOutputBitDepth(), OCIO::BIT_DEPTH_UINT16); - // Check identity. + // Check identity. + // Using float bit-depths returns a Range clamping at [0,1], due to the + // LUT1D. Thus setting arbitrary integer in and out depths to avoid the + // Range and allow isIdentity to be true. OCIO::ConstProcessorRcPtr processor; OCIO_CHECK_NO_THROW(processor = OCIO::GetFileTransformProcessor(ctfFile)); OCIO_REQUIRE_ASSERT(processor); auto procOpt = processor->getOptimizedCPUProcessor( - OCIO::BIT_DEPTH_UINT8, - OCIO::BIT_DEPTH_UINT16, + OCIO::BIT_DEPTH_UINT10, + OCIO::BIT_DEPTH_UINT12, OCIO::OPTIMIZATION_DEFAULT); OCIO_CHECK_ASSERT(procOpt->isIdentity()); @@ -88,7 +91,14 @@ OCIO_ADD_TEST(FileFormatCTF, non_smpte_xmlns) OCIO::LocalCachedFileRcPtr cachedFile; OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); - // TODO: Extend? + // Check the op. + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); + OCIO_REQUIRE_EQUAL(opList.size(), 1); + + auto mat = OCIO::DynamicPtrCast(opList[0]); + OCIO_REQUIRE_ASSERT(mat); + OCIO_CHECK_EQUAL(mat->getFileInputBitDepth(), OCIO::BIT_DEPTH_F32); + OCIO_CHECK_EQUAL(mat->getFileOutputBitDepth(), OCIO::BIT_DEPTH_F32); } OCIO_ADD_TEST(FileFormatCTF, smpte_all_metadata) @@ -161,7 +171,7 @@ OCIO_ADD_TEST(FileFormatCTF, clf_examples) OCIO_CHECK_EQUAL(cachedFile->m_transform->getDescriptions().size(), 1); OCIO_CHECK_EQUAL(cachedFile->m_transform->getDescriptions()[0], "1D LUT with legal out of range values"); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); OCIO_CHECK_EQUAL(opList[0]->getType(), OCIO::OpData::Lut1DType); OCIO_CHECK_EQUAL(opList[0]->getName(), "65valueLut"); @@ -175,11 +185,6 @@ OCIO_ADD_TEST(FileFormatCTF, clf_examples) OCIO_REQUIRE_EQUAL(desc.size(), 2); OCIO_CHECK_EQUAL(desc[0], "Note that the bit-depth does not constrain the legal range of values."); OCIO_CHECK_EQUAL(desc[1], "Formula: flipud(1.25 - 1.5 * x^2.2)"); - - auto info = cachedFile->m_transform->getInfoMetadata(); - auto elements = info.getChildrenElements(); - - } { @@ -192,7 +197,7 @@ OCIO_ADD_TEST(FileFormatCTF, clf_examples) OCIO_REQUIRE_EQUAL(cachedFile->m_transform->getDescriptions().size(), 1); OCIO_CHECK_EQUAL(cachedFile->m_transform->getDescriptions()[0], " 3D LUT example "); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); OCIO_CHECK_EQUAL(opList[0]->getName(), "identity"); OCIO_CHECK_EQUAL(opList[0]->getID(), "lut-24"); @@ -219,7 +224,7 @@ OCIO_ADD_TEST(FileFormatCTF, clf_examples) " Matrix example "); OCIO_CHECK_EQUAL(cachedFile->m_transform->getDescriptions()[1], " Used by unit tests "); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); OCIO_CHECK_EQUAL(opList[0]->getName(), "colorspace conversion"); OCIO_CHECK_EQUAL(opList[0]->getID(), "mat-25"); @@ -284,7 +289,7 @@ OCIO_ADD_TEST(FileFormatCTF, clf_examples) OCIO_REQUIRE_EQUAL(cachedFile->m_transform->getDescriptions().size(), 1); OCIO_CHECK_EQUAL(cachedFile->m_transform->getDescriptions()[0], " IndexMap LUT example from spec "); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 2); auto pR = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pR); @@ -319,7 +324,7 @@ OCIO_ADD_TEST(FileFormatCTF, matrix4x4) cachedFile->m_transform->getCTFVersion(); OCIO_CHECK_ASSERT(OCIO::CTF_PROCESS_LIST_VERSION_1_2 == ctfVersion); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pMatrix = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pMatrix); @@ -380,7 +385,7 @@ OCIO_ADD_TEST(FileFormatCTF, matrix_with_offset) cachedFile->m_transform->getCTFVersion(); OCIO_CHECK_EQUAL(OCIO::CTF_PROCESS_LIST_VERSION_1_2, ctfVersion); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pMatrix = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pMatrix); @@ -438,7 +443,7 @@ OCIO_ADD_TEST(FileFormatCTF, matrix_1_3_3x3) cachedFile->m_transform->getCTFVersion(); OCIO_CHECK_ASSERT(OCIO::CTF_PROCESS_LIST_VERSION_1_3 == ctfVersion); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pMatrix = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pMatrix); @@ -496,7 +501,7 @@ OCIO_ADD_TEST(FileFormatCTF, matrix_1_3_4x4) cachedFile->m_transform->getCTFVersion(); OCIO_CHECK_ASSERT(OCIO::CTF_PROCESS_LIST_VERSION_1_3 == ctfVersion); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pMatrix = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pMatrix); @@ -548,7 +553,7 @@ OCIO_ADD_TEST(FileFormatCTF, matrix_1_3_offsets) cachedFile->m_transform->getCTFVersion(); OCIO_CHECK_ASSERT(OCIO::CTF_PROCESS_LIST_VERSION_1_3 == ctfVersion); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pMatrix = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pMatrix); @@ -599,7 +604,7 @@ OCIO_ADD_TEST(FileFormatCTF, matrix_1_3_alpha_offsets) cachedFile->m_transform->getCTFVersion(); OCIO_CHECK_ASSERT(OCIO::CTF_PROCESS_LIST_VERSION_1_3 == ctfVersion); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pMatrix = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pMatrix); @@ -649,7 +654,7 @@ void CheckIdentity(std::istringstream & ctfStream, unsigned line) OCIO_CHECK_NO_THROW_FROM(file = tester.read(ctfStream, emptyString, OCIO::INTERP_DEFAULT), line); OCIO::LocalCachedFileRcPtr cachedFile = OCIO_DYNAMIC_POINTER_CAST(file); OCIO_REQUIRE_ASSERT(cachedFile); - const auto & fileOps = cachedFile->m_transform->getOps(); + const auto & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL_FROM(fileOps.size(), 1, line); const auto op = fileOps[0]; @@ -759,7 +764,7 @@ OCIO_ADD_TEST(FileFormatCTF, lut_1d) "Apply a 1/2.2 gamma."); OCIO_CHECK_EQUAL(cachedFile->m_transform->getInputDescriptor(), "RGB"); OCIO_CHECK_EQUAL(cachedFile->m_transform->getOutputDescriptor(), "RGB"); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pLut = std::dynamic_pointer_cast(opList[0]); @@ -810,7 +815,7 @@ OCIO_ADD_TEST(FileFormatCTF, lut_1d) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pLut = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pLut); @@ -832,7 +837,7 @@ OCIO_ADD_TEST(FileFormatCTF, lut_3by1d_with_nan_infinity) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pLut1d = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pLut1d); @@ -884,7 +889,7 @@ OCIO_ADD_TEST(FileFormatCTF, lut1d_half_domain_raw_half_set) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pLut1d = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pLut1d); @@ -921,7 +926,7 @@ OCIO_ADD_TEST(FileFormatCTF, 3by1d_lut) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 3); auto pMatrix = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pMatrix); @@ -990,7 +995,7 @@ OCIO_ADD_TEST(FileFormatCTF, lut1d_long_lut) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pLut = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pLut); @@ -1010,7 +1015,7 @@ OCIO_ADD_TEST(FileFormatCTF, lut1d_inv) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 2); auto pMatrix = std::dynamic_pointer_cast(opList[0]); @@ -1081,7 +1086,7 @@ OCIO_ADD_TEST(FileFormatCTF, lut1d_inv_scaling) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pLut = std::dynamic_pointer_cast(opList[0]); @@ -1160,7 +1165,7 @@ OCIO_ADD_TEST(FileFormatCTF, lut3d) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pLut = std::dynamic_pointer_cast(opList[0]); @@ -1201,7 +1206,7 @@ OCIO_ADD_TEST(FileFormatCTF, lut3d_inv) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pLut = std::dynamic_pointer_cast(opList[0]); @@ -1250,7 +1255,7 @@ OCIO_ADD_TEST(FileFormatCTF, tabluation_support) const std::string ctfFile("clf/tabulation_support.clf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT(cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_CHECK_EQUAL(cachedFile->m_transform->getID(), "e0a0ae4b-adc2-4c25-ad70-fa6f31ba219d"); OCIO_REQUIRE_EQUAL(opList.size(), 1); @@ -1296,7 +1301,7 @@ OCIO_ADD_TEST(FileFormatCTF, matrix_windows_eol) const std::string ctfFile("clf/matrix_windows.clf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT(cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_CHECK_EQUAL(cachedFile->m_transform->getID(), "42"); OCIO_REQUIRE_EQUAL(opList.size(), 1); OCIO_CHECK_EQUAL(opList[0]->getType(), OCIO::OpData::MatrixType); @@ -1310,7 +1315,7 @@ OCIO_ADD_TEST(FileFormatCTF, matrix_no_newlines) const std::string ctfFile("clf/matrix_no_newlines.clf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT(cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); OCIO_CHECK_EQUAL(opList[0]->getType(), OCIO::OpData::MatrixType); auto pMatrix = std::dynamic_pointer_cast(opList[0]); @@ -1347,7 +1352,7 @@ OCIO_ADD_TEST(FileFormatCTF, check_utf8) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); StringUtils::StringVec descList; GetElementsValues(opList[0]->getFormatMetadata().getChildrenElements(), @@ -1381,7 +1386,7 @@ OCIO_ADD_TEST(FileFormatCTF, info_example) "output desc"); // Ensure ops were not affected by metadata parsing. - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pMatrix = @@ -1482,7 +1487,7 @@ OCIO_ADD_TEST(FileFormatCTF, difficult_syntax) OCIO_CHECK_EQUAL(std::string(items[0].getElementValue()), "This is a \"difficult\" but 'legal' color transform file."); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 2); { auto pMatrix = std::dynamic_pointer_cast(opList[0]); @@ -1598,7 +1603,7 @@ OCIO_ADD_TEST(FileFormatCTF, difficult_xml_unknown_elements) const OCIO::CTFVersion ctfVersion = cachedFile->m_transform->getCTFVersion(); OCIO_CHECK_ASSERT(OCIO::CTF_PROCESS_LIST_VERSION_1_2 == ctfVersion); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 2); auto pMatrix = std::dynamic_pointer_cast(opList[0]); @@ -1682,7 +1687,7 @@ OCIO_ADD_TEST(FileFormatCTF, unknown_elements) } } - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 4); auto pMatrix = std::dynamic_pointer_cast(opList[0]); @@ -2041,7 +2046,7 @@ OCIO_ADD_TEST(FileFormatCTF, range_default) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pR = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pR); @@ -2066,7 +2071,7 @@ OCIO_ADD_TEST(FileFormatCTF, range_test1_clamp) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pR = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pR); @@ -2091,7 +2096,7 @@ OCIO_ADD_TEST(FileFormatCTF, range_test1_noclamp) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); // Check that the noClamp style Range became a Matrix. @@ -2139,7 +2144,7 @@ OCIO_ADD_TEST(FileFormatCTF, range_test2) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pR = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pR); @@ -2195,7 +2200,7 @@ OCIO_ADD_TEST(FileFormatCTF, indexMap_test1_clfv2) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 2); auto pR = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pR); @@ -2222,7 +2227,7 @@ OCIO_ADD_TEST(FileFormatCTF, indexMap_test2_clfv2) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 2); auto pR = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pR); @@ -2283,7 +2288,7 @@ OCIO_ADD_TEST(FileFormatCTF, gamma_test1) OCIO_CHECK_EQUAL(cachedFile->m_transform->getDescriptions().size(), 1); OCIO_CHECK_EQUAL(cachedFile->m_transform->getDescriptions()[0], "2.4 gamma"); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pG = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pG); @@ -2312,7 +2317,7 @@ OCIO_ADD_TEST(FileFormatCTF, gamma_test2) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pG = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pG); @@ -2343,7 +2348,7 @@ OCIO_ADD_TEST(FileFormatCTF, gamma_test3) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pG = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pG); @@ -2373,7 +2378,7 @@ OCIO_ADD_TEST(FileFormatCTF, gamma_test4) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pG = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pG); @@ -2420,7 +2425,7 @@ OCIO_ADD_TEST(FileFormatCTF, gamma_test6) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pG = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pG); @@ -2442,7 +2447,7 @@ OCIO_ADD_TEST(FileFormatCTF, gamma_alpha_test1) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pG = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pG); @@ -2473,7 +2478,7 @@ OCIO_ADD_TEST(FileFormatCTF, gamma_alpha_test2) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pG = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pG); @@ -2509,7 +2514,7 @@ OCIO_ADD_TEST(FileFormatCTF, gamma_alpha_test3) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pG = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pG); @@ -2541,7 +2546,7 @@ OCIO_ADD_TEST(FileFormatCTF, gamma_alpha_test4) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pG = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pG); @@ -2582,7 +2587,7 @@ OCIO_ADD_TEST(FileFormatCTF, gamma_alpha_test5) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pG = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pG); @@ -2639,7 +2644,7 @@ OCIO_ADD_TEST(FileFormatCTF, exponent_all_styles) const std::string fileName("clf/exponent_all_styles.clf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(fileName)); OCIO_REQUIRE_ASSERT(cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 12); { // Op 0 == basicFwd. @@ -2825,7 +2830,7 @@ OCIO_ADD_TEST(FileFormatCTF, cdl_clamp_fwd) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_CHECK_EQUAL(cachedFile->m_transform->getInputDescriptor(), "inputDesc"); OCIO_CHECK_EQUAL(cachedFile->m_transform->getOutputDescriptor(), @@ -2864,7 +2869,7 @@ OCIO_ADD_TEST(FileFormatCTF, cdl_missing_style) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pCDL = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pCDL); @@ -2888,7 +2893,7 @@ OCIO_ADD_TEST(FileFormatCTF, cdl_all_styles) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 4); auto pCDL = std::dynamic_pointer_cast(opList[0]); @@ -2964,7 +2969,7 @@ OCIO_ADD_TEST(FileFormatCTF, cdl_missing_sop) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pCDL = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pCDL); @@ -2985,7 +2990,7 @@ OCIO_ADD_TEST(FileFormatCTF, cdl_missing_sat) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pCDL = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pCDL); @@ -3008,7 +3013,7 @@ OCIO_ADD_TEST(FileFormatCTF, cdl_various_in_ctf) OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 8); auto pCDL = std::dynamic_pointer_cast(opList[0]); @@ -3050,7 +3055,7 @@ OCIO_ADD_TEST(FileFormatCTF, log_all_styles) const std::string fileName("clf/log_all_styles.clf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(fileName)); OCIO_REQUIRE_ASSERT(cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 11); double error = 1e-9; @@ -3222,7 +3227,7 @@ OCIO_ADD_TEST(FileFormatCTF, log_logtolin) std::string fileName("log_logtolin.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(fileName)); OCIO_REQUIRE_ASSERT(cachedFile); - const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); auto op = fileOps[0]; auto log = std::dynamic_pointer_cast(op); @@ -3250,7 +3255,7 @@ OCIO_ADD_TEST(FileFormatCTF, log_logtolinv2) std::string fileName("log_logtolinv2.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(fileName)); OCIO_REQUIRE_ASSERT(cachedFile); - const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); auto op = fileOps[0]; auto log = std::dynamic_pointer_cast(op); @@ -3277,7 +3282,7 @@ OCIO_ADD_TEST(FileFormatCTF, log_lintolog_3chan) std::string fileName("log_lintolog_3chan.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(fileName)); OCIO_REQUIRE_ASSERT(cachedFile); - const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); auto op = fileOps[0]; auto log = std::dynamic_pointer_cast(op); @@ -3353,7 +3358,7 @@ OCIO_ADD_TEST(FileFormatCTF, log_ocio_params_channels) strebuf << "\n"; OCIO::LocalCachedFileRcPtr cachedFile = ParseString(strebuf.str()); - OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); auto op = fileOps[0]; @@ -3407,7 +3412,7 @@ OCIO_ADD_TEST(FileFormatCTF, log_default_params) OCIO::LocalCachedFileRcPtr cachedFile; OCIO_CHECK_NO_THROW(cachedFile = ParseString(strebuf.str())); OCIO_REQUIRE_ASSERT(cachedFile); - OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 2); auto op = fileOps[0]; @@ -3442,7 +3447,7 @@ OCIO_ADD_TEST(FileFormatCTF, multiple_ops) const std::string ctfFile("clf/multiple_ops.clf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT(cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 9); { // Op 0 == CDL. @@ -3556,7 +3561,7 @@ OCIO_ADD_TEST(FileFormatCTF, reference_load_alias) std::string fileName("reference_alias.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(fileName)); OCIO_REQUIRE_ASSERT(cachedFile); - const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); OCIO::ConstOpDataRcPtr op = fileOps[0]; @@ -3576,7 +3581,7 @@ OCIO_ADD_TEST(FileFormatCTF, reference_load_path) std::string fileName("reference_path_missing_file.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(fileName)); OCIO_REQUIRE_ASSERT(cachedFile); - const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); OCIO::ConstOpDataRcPtr op = fileOps[0]; @@ -3595,7 +3600,7 @@ OCIO_ADD_TEST(FileFormatCTF, reference_load_multiple) std::string fileName("references_some_inverted.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(fileName)); OCIO_REQUIRE_ASSERT(cachedFile); - const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 4); OCIO::ConstOpDataRcPtr op0 = fileOps[0]; @@ -3632,7 +3637,7 @@ OCIO_ADD_TEST(FileFormatCTF, reference_load_path_utf8) std::string fileName("reference_utf8.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(fileName)); OCIO_REQUIRE_ASSERT(cachedFile); - const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); OCIO::ConstOpDataRcPtr op = fileOps[0]; OCIO::ConstReferenceOpDataRcPtr ref = std::dynamic_pointer_cast(op); @@ -3656,7 +3661,7 @@ OCIO_ADD_TEST(FileFormatCTF, exposure_contrast_video) const std::string ctfFile("exposure_contrast_video.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT(cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 2); @@ -3689,7 +3694,7 @@ OCIO_ADD_TEST(FileFormatCTF, exposure_contrast_log) const std::string ctfFile("exposure_contrast_log.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT(cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 2); @@ -3726,7 +3731,7 @@ OCIO_ADD_TEST(FileFormatCTF, exposure_contrast_linear) const std::string ctfFile("exposure_contrast_linear.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT(cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 2); @@ -3763,7 +3768,7 @@ OCIO_ADD_TEST(FileFormatCTF, exposure_contrast_no_gamma) const std::string ctfFile("exposure_contrast_no_gamma.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT(cachedFile); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); @@ -3835,7 +3840,7 @@ OCIO_ADD_TEST(FileFormatCTF, attribute_float_parse_leading_spaces) OCIO::CachedFileRcPtr file; OCIO_CHECK_NO_THROW(file = tester.read(ctf, emptyString, OCIO::INTERP_DEFAULT)); OCIO::LocalCachedFileRcPtr cachedFile = OCIO_DYNAMIC_POINTER_CAST(file); - const auto & fileOps = cachedFile->m_transform->getOps(); + const auto & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); const auto op = fileOps[0]; @@ -3851,7 +3856,7 @@ OCIO_ADD_TEST(FileFormatCTF, load_deprecated_ops_file) std::string fileName("deprecated_ops.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(fileName)); OCIO_REQUIRE_ASSERT(cachedFile); - const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 3); @@ -3895,7 +3900,7 @@ OCIO_ADD_TEST(FileFormatCTF, load_fixed_function_file) std::string fileName("fixed_function.ctf"); OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(fileName)); OCIO_REQUIRE_ASSERT(cachedFile); - const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 2); @@ -3964,7 +3969,7 @@ void ValidateFixedFunctionStyle(OCIO::FixedFunctionOpData::Style style, OCIO::LocalCachedFileRcPtr cachedFile; OCIO_CHECK_NO_THROW_FROM(cachedFile = ParseString(strebuf.str()), lineNo); OCIO_REQUIRE_ASSERT(cachedFile); - OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL_FROM(fileOps.size(), 1, lineNo); auto opData = fileOps[0]; @@ -4185,7 +4190,7 @@ OCIO_ADD_TEST(FileFormatCTF, load_grading_primary_log) OCIO_CHECK_NO_THROW(file = tester.read(ctfLog, emptyString, OCIO::INTERP_DEFAULT)); OCIO::LocalCachedFileRcPtr cachedFile = OCIO_DYNAMIC_POINTER_CAST(file); OCIO_REQUIRE_ASSERT(cachedFile); - const auto & fileOps = cachedFile->m_transform->getOps(); + const auto & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 4); const auto op0 = fileOps[0]; @@ -4289,7 +4294,7 @@ OCIO_ADD_TEST(FileFormatCTF, load_grading_primary_lin) OCIO_CHECK_NO_THROW(file = tester.read(ctfLin, emptyString, OCIO::INTERP_DEFAULT)); OCIO::LocalCachedFileRcPtr cachedFile = OCIO_DYNAMIC_POINTER_CAST(file); OCIO_REQUIRE_ASSERT(cachedFile); - const auto & fileOps = cachedFile->m_transform->getOps(); + const auto & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 4); const auto op0 = fileOps[0]; @@ -4390,7 +4395,7 @@ OCIO_ADD_TEST(FileFormatCTF, load_grading_primary_video) OCIO_CHECK_NO_THROW(file = tester.read(ctfVideo, emptyString, OCIO::INTERP_DEFAULT)); OCIO::LocalCachedFileRcPtr cachedFile = OCIO_DYNAMIC_POINTER_CAST(file); OCIO_REQUIRE_ASSERT(cachedFile); - const auto & fileOps = cachedFile->m_transform->getOps(); + const auto & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 4); const auto op0 = fileOps[0]; @@ -4589,7 +4594,7 @@ OCIO_ADD_TEST(FileFormatCTF, load_grading_rgbcurves_lin) OCIO_CHECK_NO_THROW(file = tester.read(ctfLin, emptyString, OCIO::INTERP_DEFAULT)); OCIO::LocalCachedFileRcPtr cachedFile = OCIO_DYNAMIC_POINTER_CAST(file); OCIO_REQUIRE_ASSERT(cachedFile); - const auto & fileOps = cachedFile->m_transform->getOps(); + const auto & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 3); const auto op0 = fileOps[0]; @@ -4677,7 +4682,7 @@ OCIO_ADD_TEST(FileFormatCTF, load_grading_rgbcurves_log) OCIO_CHECK_NO_THROW(file = tester.read(ctfLog, emptyString, OCIO::INTERP_DEFAULT)); OCIO::LocalCachedFileRcPtr cachedFile = OCIO_DYNAMIC_POINTER_CAST(file); OCIO_REQUIRE_ASSERT(cachedFile); - const auto & fileOps = cachedFile->m_transform->getOps(); + const auto & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); const auto op0 = fileOps[0]; @@ -4775,7 +4780,7 @@ OCIO_ADD_TEST(FileFormatCTF, load_grading_huecurves_log) OCIO_CHECK_NO_THROW(file = tester.read(ctfLog, emptyString, OCIO::INTERP_DEFAULT)); OCIO::LocalCachedFileRcPtr cachedFile = OCIO_DYNAMIC_POINTER_CAST(file); OCIO_REQUIRE_ASSERT(cachedFile); - const auto & fileOps = cachedFile->m_transform->getOps(); + const auto & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); const auto op0 = fileOps[0]; @@ -4983,7 +4988,7 @@ OCIO_ADD_TEST(CTFTransform, load_grading_tone) OCIO_CHECK_NO_THROW(file = tester.read(ctfLog, emptyString, OCIO::INTERP_DEFAULT)); OCIO::LocalCachedFileRcPtr cachedFile = OCIO_DYNAMIC_POINTER_CAST(file); OCIO_REQUIRE_ASSERT(cachedFile); - const auto & fileOps = cachedFile->m_transform->getOps(); + const auto & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 6); @@ -5148,7 +5153,7 @@ OCIO_ADD_TEST(CTFTransform, load_edit_save_matrix) OCIO::CachedFileRcPtr file = tester.read(inputTransform, emptyString, OCIO::INTERP_DEFAULT); OCIO::LocalCachedFileRcPtr cachedFile = OCIO::DynamicPtrCast(file); - const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); OCIO::ConstOpDataRcPtr op = fileOps[0]; OCIO::ConstMatrixOpDataRcPtr mat = OCIO::DynamicPtrCast(op); @@ -5198,7 +5203,7 @@ OCIO_ADD_TEST(CTFTransform, save_matrix) matTransform->setDirection(OCIO::TRANSFORM_DIR_FORWARD); OCIO::LocalCachedFileRcPtr cachedFile = WriteRead(matTransform); - const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); OCIO::ConstOpDataRcPtr op = fileOps[0]; OCIO::ConstMatrixOpDataRcPtr mat = OCIO::DynamicPtrCast(op); @@ -5232,7 +5237,7 @@ OCIO_ADD_TEST(CTFTransform, save_cdl) cdlTransform->getFormatMetadata().addChildElement(OCIO::METADATA_SAT_DESCRIPTION, "Sat description 2"); OCIO::LocalCachedFileRcPtr cachedFile = WriteRead(cdlTransform); - const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); OCIO::ConstOpDataRcPtr op = fileOps[0]; OCIO::ConstCDLOpDataRcPtr cdl = OCIO::DynamicPtrCast(op); @@ -5280,7 +5285,7 @@ void TestSaveLog(double base, unsigned line) logT->setBase(base); OCIO::LocalCachedFileRcPtr cachedFile = WriteRead(logT); - const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL_FROM(fileOps.size(), 1, line); OCIO::ConstOpDataRcPtr op = fileOps[0]; OCIO::ConstLogOpDataRcPtr log = OCIO::DynamicPtrCast(op); @@ -5305,7 +5310,7 @@ OCIO_ADD_TEST(CTFTransform, save_log_affine) logT->setLinSideSlopeValue(vals); OCIO::LocalCachedFileRcPtr cachedFile = WriteRead(logT); - const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); OCIO::ConstOpDataRcPtr op = fileOps[0]; OCIO::ConstLogOpDataRcPtr log = OCIO::DynamicPtrCast(op); @@ -5328,7 +5333,7 @@ OCIO_ADD_TEST(CTFTransform, save_log_camera) logT->setLinearSlopeValue(vals_ls); OCIO::LocalCachedFileRcPtr cachedFile = WriteRead(logT); - const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); OCIO::ConstOpDataRcPtr op = fileOps[0]; OCIO::ConstLogOpDataRcPtr log = OCIO::DynamicPtrCast(op); @@ -5408,7 +5413,7 @@ OCIO_ADD_TEST(CTFTransform, save_lut1d_halfdomain) } OCIO::LocalCachedFileRcPtr cachedFile = WriteRead(lutT); - const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); OCIO::ConstOpDataRcPtr op = fileOps[0]; OCIO::ConstLut1DOpDataRcPtr lut = OCIO::DynamicPtrCast(op); @@ -5457,7 +5462,7 @@ OCIO_ADD_TEST(CTFTransform, save_lut1d_f16_raw) lutT->setValue(1, values[3], values[4], values[5]); OCIO::LocalCachedFileRcPtr cachedFile = WriteRead(lutT); - const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); OCIO::ConstOpDataRcPtr op = fileOps[0]; OCIO::ConstLut1DOpDataRcPtr lut = OCIO::DynamicPtrCast(op); @@ -5499,7 +5504,7 @@ OCIO_ADD_TEST(CTFTransform, save_lut1d_f32) lutT->setValue(7, values[7], values[7], values[7]); OCIO::LocalCachedFileRcPtr cachedFile = WriteRead(lutT); - const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); OCIO::ConstOpDataRcPtr op = fileOps[0]; OCIO::ConstLut1DOpDataRcPtr lut = OCIO::DynamicPtrCast(op); @@ -5614,7 +5619,7 @@ OCIO_ADD_TEST(CTFTransform, save_range) rangeT->setMaxOutValue(1.5); OCIO::LocalCachedFileRcPtr cachedFile = WriteRead(rangeT); - const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 1); OCIO::ConstOpDataRcPtr op = fileOps[0]; OCIO::ConstRangeOpDataRcPtr range = OCIO::DynamicPtrCast(op); @@ -5644,7 +5649,7 @@ OCIO_ADD_TEST(CTFTransform, save_group) groupT->appendTransform(matT); OCIO::LocalCachedFileRcPtr cachedFile = WriteRead(groupT); - const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & fileOps = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(fileOps.size(), 2); OCIO::ConstOpDataRcPtr op = fileOps[0]; OCIO::ConstRangeOpDataRcPtr range = OCIO::DynamicPtrCast(op); @@ -6108,7 +6113,7 @@ OCIO_ADD_TEST(CTFTransform, cdl_clf) OCIO::CachedFileRcPtr file = tester.read(ctfStream, emptyString, OCIO::INTERP_DEFAULT); auto cachedFile = OCIO::DynamicPtrCast(file); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto cdlData = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(cdlData); @@ -8674,7 +8679,7 @@ OCIO_ADD_TEST(FileFormatCTF, bake_1d_shaper) OCIO::CachedFileRcPtr file = tester.read(outputCTF, emptyString, OCIO::INTERP_DEFAULT); auto cachedFile = OCIO::DynamicPtrCast(file); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 2); auto range = OCIO_DYNAMIC_POINTER_CAST(opList[0]); @@ -8716,7 +8721,7 @@ OCIO_ADD_TEST(FileFormatCTF, bake_1d_shaper) OCIO::CachedFileRcPtr file = tester.read(outputCTF, emptyString, OCIO::INTERP_DEFAULT); auto cachedFile = OCIO::DynamicPtrCast(file); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); auto lut = OCIO_DYNAMIC_POINTER_CAST(opList[0]); @@ -8869,7 +8874,7 @@ OCIO_ADD_TEST(FileFormatCTF, bake_1d_3d) OCIO::CachedFileRcPtr file = tester.read(output, emptyString, OCIO::INTERP_DEFAULT); auto cachedFile = OCIO::DynamicPtrCast(file); - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOps(); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 2); auto shaperLut = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(shaperLut); diff --git a/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp b/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp index d04f2bcc61..b328578b58 100644 --- a/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp +++ b/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp @@ -239,8 +239,8 @@ OCIO_ADD_TEST(CTFReaderTransform, accessors) OCIO_CHECK_EQUAL(t.getOutputDescriptor(), ""); OCIO_CHECK_EQUAL(ct.getOutputDescriptor(), ""); - OCIO_CHECK_ASSERT(t.getOps().empty()); - OCIO_CHECK_ASSERT(ct.getOps().empty()); + OCIO_CHECK_ASSERT(t.getOpDataVec().empty()); + OCIO_CHECK_ASSERT(ct.getOpDataVec().empty()); OCIO_CHECK_ASSERT(t.getDescriptions().empty()); OCIO_CHECK_ASSERT(ct.getDescriptions().empty()); @@ -252,7 +252,7 @@ OCIO_ADD_TEST(CTFReaderTransform, accessors) t.setOutputDescriptor("output"); auto matrixOp = std::make_shared(); - t.getOps().push_back(matrixOp); + t.getOpDataVec().push_back(matrixOp); t.getDescriptions().push_back("One"); t.getDescriptions().push_back("Two"); @@ -271,8 +271,8 @@ OCIO_ADD_TEST(CTFReaderTransform, accessors) OCIO_CHECK_EQUAL(t.getOutputDescriptor(), "output"); OCIO_CHECK_EQUAL(ct.getOutputDescriptor(), "output"); - OCIO_CHECK_EQUAL(t.getOps().size(), 1); - OCIO_CHECK_EQUAL(ct.getOps().size(), 1); + OCIO_CHECK_EQUAL(t.getOpDataVec().size(), 1); + OCIO_CHECK_EQUAL(ct.getOpDataVec().size(), 1); OCIO_CHECK_EQUAL(t.getDescriptions().size(), 2); OCIO_CHECK_EQUAL(ct.getDescriptions().size(), 2); From 1c3751b6fedef4b0aae7b98c2d7d7641ac059bea Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Mon, 9 Feb 2026 21:44:41 -0800 Subject: [PATCH 18/25] - various fixes Signed-off-by: cuneyt.ozdas --- src/OpenColorIO/fileformats/FileFormatCTF.cpp | 15 ++++++--- .../fileformats/ctf/CTFReaderHelper.cpp | 25 +++++++-------- .../fileformats/ctf/CTFTransform.cpp | 31 +++++++++---------- .../fileformats/ctf/CTFTransform.h | 16 +++++----- tests/cpu/fileformats/FileFormatCTF_tests.cpp | 4 +-- .../fileformats/ctf/CTFTransform_tests.cpp | 16 +++++----- tests/python/ProcessorTest.py | 2 +- 7 files changed, 55 insertions(+), 54 deletions(-) diff --git a/src/OpenColorIO/fileformats/FileFormatCTF.cpp b/src/OpenColorIO/fileformats/FileFormatCTF.cpp index 638bbef809..20c1219b94 100644 --- a/src/OpenColorIO/fileformats/FileFormatCTF.cpp +++ b/src/OpenColorIO/fileformats/FileFormatCTF.cpp @@ -43,7 +43,14 @@ to agree on a common LUT format for this industry. Support for CLF is a requirement in order to obtain ACES Logo Certification from the Academy (in several product categories). CLF files are expressed using XML. The spec, AMPAS S-2014-006, is available from: - + + +In 2026, SMPTE will publish ST 2136-1 to standardize the Academy/ASC format. +The main change is how versions are declared. The SMPTE spec sets the xmlns +attribute of the ProcessList to a specific value rather than using the +compCLFversion attribute. Since the differences are so minimal, OCIO writes +both the xmlns and compCLFversion in order to maximize compatibility with +different readers. The Autodesk CTF format is based on the Academy/ASC CLF format and adds several operators that allow higher quality results by avoiding the need to bake @@ -1611,15 +1618,15 @@ void LocalFileFormat::write(const ConstConfigRcPtr & config, std::ostream & ostream) const { - TransformWriter::SubFormat subFormat{TransformWriter::SubFormat::eUNKNOWN}; + TransformWriter::SubFormat subFormat{TransformWriter::SubFormat::FORMAT_UNKNOWN}; if (Platform::Strcasecmp(formatName.c_str(), FILEFORMAT_CLF) == 0) { - subFormat = TransformWriter::SubFormat::eCLF; + subFormat = TransformWriter::SubFormat::FORMAT_CLF; } else if (Platform::Strcasecmp(formatName.c_str(), FILEFORMAT_CTF) == 0) { - subFormat = TransformWriter::SubFormat::eCTF; + subFormat = TransformWriter::SubFormat::FORMAT_CTF; } else { diff --git a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp index 74a85601ed..be22430f82 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp @@ -87,16 +87,7 @@ void CTFReaderTransformElt::start(const char ** atts) // Check if xmlns atrribute holds a SMPTE version string. try { - auto version = CTFVersion(atts[i + 1], CTFVersion::StringFormat::eSMPTE_Long); - - if (isVersionFound) - { - throwMessage("SMPTE 'xmlns' version and 'Version' attribute cannot both be present."); - } - - // Note that compCLFversion can appear together with xmlns for - // SMPTE CLF - + auto version = CTFVersion(atts[i + 1], CTFVersion::StringFormat::VERSION_SMPTE_XMLNS); requestedVersion = CTF_PROCESS_LIST_VERSION_2_0; requestedCLFVersion = version; isSMPTEVersionFound = true; @@ -104,7 +95,14 @@ void CTFReaderTransformElt::start(const char ** atts) } catch (Exception& /*e*/) { - // Ignore the exception, as this may not be a version URI. + // Ignore other xmlns attribute strings. + } + + // Disallow Version and version-holding xmlns appering togather. + // Note that compCLFversion can appear together with xmlns. + if (isVersionFound && isSMPTEVersionFound) + { + throwMessage("SMPTE 'xmlns' version and 'Version' attribute cannot both be present."); } } else if (0 == Platform::Strcasecmp(ATTR_NAME, atts[i])) @@ -181,7 +179,7 @@ void CTFReaderTransformElt::start(const char ** atts) try { std::string verString(pVer); - requestedCLFVersion = CTFVersion(verString, CTFVersion::StringFormat::eSMPTE_Short); + requestedCLFVersion = CTFVersion(verString, CTFVersion::StringFormat::VERSION_SMPTE_CLF); } catch (Exception& ce) { @@ -225,7 +223,6 @@ void CTFReaderTransformElt::start(const char ** atts) // Check mandatory id keyword for non-SMPTE variants. if (!isIdFound && !isSMPTEVersionFound) { - // FIXME: add handling of the SMPTE version tag throwMessage("Required attribute 'id' is missing."); } @@ -306,7 +303,7 @@ void CTFReaderIdElt::end() if(!ValidateSMPTEId(m_id)) { std::ostringstream ss; - ss << "'" << m_id << "' is not a ST2136-1:2024 complaint Id value."; + ss << "'" << m_id << "' is not a SMPTE ST 2136-1 compliant Id value."; throwMessage(ss.str()); } diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp index c962a3a5ac..8fd1a617fb 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp @@ -41,21 +41,20 @@ static constexpr unsigned DOUBLE_PRECISION = 15; CTFVersion::CTFVersion(const std::string & versionString, StringFormat acceptedFormat) - : m_major(0), m_minor(0), m_revision(0) { // Parse the version string to see if that matches the SMPTE // namespace/version patterns. If so store the version string and consider // equivalent to v3.0. - if(acceptedFormat & ( eSMPTE_Long | eSMPTE_Short)) + if (acceptedFormat & ( VERSION_SMPTE_XMLNS | VERSION_SMPTE_CLF)) { bool res = false; - if(acceptedFormat & eSMPTE_Long) + if (acceptedFormat & VERSION_SMPTE_XMLNS) { res = (0 == Platform::Strcasecmp(versionString.c_str(), "http://www.smpte-ra.org/ns/2136-1/2024")); } - if(!res && acceptedFormat & eSMPTE_Short) + if (!res && acceptedFormat & VERSION_SMPTE_CLF) { res = (0 == Platform::Strcasecmp(versionString.c_str(), "ST2136-1:2024")); @@ -103,18 +102,14 @@ CTFVersion::CTFVersion(const std::string & versionString, StringFormat acceptedF os << "'"; os << versionString; os << "' is not a valid version. Expecting "; - if(acceptedFormat & eSMPTE_Short) + if (acceptedFormat & VERSION_SMPTE_CLF) os << "'ST2136-1:2024' or "; - if(acceptedFormat & eSMPTE_Long) + if (acceptedFormat & VERSION_SMPTE_XMLNS) os << "'http://www.smpte-ra.org/ns/2136-1/2024' or "; os << "MAJOR[.MINOR[.REVISION]] "; throw Exception(os.str().c_str()); } - m_major = 0; - m_minor = 0; - m_revision = 0; - sscanf(versionString.c_str(), "%d.%d.%d", &m_major, &m_minor, @@ -467,6 +462,8 @@ const char * GetLastElementValue(const FormatMetadataImpl::Elements & elements, // note that any metadata in the individual process nodes are stored separately // in their opData. Here is what is preserved: // -- ProcessList attributes "name", "id", and "inverseOf". Other attributes are ignored. +// -- ProcessList sub-element "Id". If more than one is found, the contents are +// concatenated into one element. // -- ProcessList sub-elements "InputDescriptor" and "OutputDescriptor". The value // of these elements is preserved but no additional attributes or sub-elements. // Only the first InputDescriptor and last OutputDescriptor in the metadata is preserved. @@ -2578,11 +2575,11 @@ void TransformWriter::write() const CTFVersion writeVersion; // This controls the available ops switch(m_subFormat) { - case SubFormat::eUNKNOWN: + case SubFormat::FORMAT_UNKNOWN: throw Exception("Cannot write transform with unknown sub-format."); break; - case SubFormat::eCLF: + case SubFormat::FORMAT_CLF: // For CLF, we're writing versions per both the Academy and SMPTE // requirements. writeVersion = CTF_PROCESS_LIST_VERSION_2_0; @@ -2592,7 +2589,7 @@ void TransformWriter::write() const ATTR_XMLNS, "http://www.smpte-ra.org/ns/2136-1/2024")); break; - case SubFormat::eCTF: + case SubFormat::FORMAT_CTF: writeVersion = GetMinimumVersion(m_transform); std::ostringstream fversion; @@ -2631,12 +2628,12 @@ void TransformWriter::write() const // Id element, won't generate if not provided but the format is // enforced. std::string idEl = m_transform->getIDElement(); - if(m_subFormat == SubFormat::eCLF && !idEl.empty()) + if (!idEl.empty()) { - if(m_subFormat == SubFormat::eCLF && !ValidateSMPTEId(idEl)) + if (m_subFormat == SubFormat::FORMAT_CLF && !ValidateSMPTEId(idEl)) { std::ostringstream ss; - ss << "'" << idEl << "' is not a ST2136-1:2024 compliant Id value."; + ss << "'" << idEl << "' is not a SMPTE ST 2136-1 compliant Id value."; throw Exception(ss.str().c_str()); } m_formatter.writeContentTag(TAG_ID, idEl); @@ -2757,7 +2754,7 @@ void TransformWriter::writeOps(const CTFVersion & version) const // values on write. Otherwise, default to 32f. BitDepth inBD = BIT_DEPTH_F32; BitDepth outBD = BIT_DEPTH_F32; - bool isCLF = m_subFormat == SubFormat::eCLF; + bool isCLF = m_subFormat == SubFormat::FORMAT_CLF; auto & ops = m_transform->getOpDataVec(); size_t numOps = ops.size(); size_t numSavedOps = 0; diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.h b/src/OpenColorIO/fileformats/ctf/CTFTransform.h index 052cf5720a..ccfcd0d778 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.h +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.h @@ -25,13 +25,13 @@ class CTFVersion public: enum StringFormat { - eNumericOnly = 0, // Numeric version is always accepted. - eSMPTE_Long = 1 << 1, - eSMPTE_Short = 1 << 2 + VERSION_NUMERIC = 0, // Numeric version is always accepted. + VERSION_SMPTE_XMLNS = 1 << 1, + VERSION_SMPTE_CLF = 1 << 2 }; // Will throw if versionString is not formatted like a version. - explicit CTFVersion(const std::string & versionString, StringFormat acceptedFormat = eNumericOnly); + explicit CTFVersion(const std::string & versionString, StringFormat acceptedFormat = VERSION_NUMERIC); CTFVersion() { @@ -293,9 +293,9 @@ class TransformWriter : public XmlElementWriter public: enum class SubFormat : uint8_t { - eUNKNOWN, - eCLF, - eCTF + FORMAT_UNKNOWN, + FORMAT_CLF, + FORMAT_CTF }; public: @@ -318,7 +318,7 @@ class TransformWriter : public XmlElementWriter private: ConstCTFReaderTransformPtr m_transform; - SubFormat m_subFormat = SubFormat::eUNKNOWN; + SubFormat m_subFormat = SubFormat::FORMAT_UNKNOWN; }; diff --git a/tests/cpu/fileformats/FileFormatCTF_tests.cpp b/tests/cpu/fileformats/FileFormatCTF_tests.cpp index e3cbd90118..223e41d2f4 100644 --- a/tests/cpu/fileformats/FileFormatCTF_tests.cpp +++ b/tests/cpu/fileformats/FileFormatCTF_tests.cpp @@ -140,7 +140,7 @@ OCIO_ADD_TEST(FileFormatCTF, smpte_id_bad_value) OCIO::LocalCachedFileRcPtr cachedFile; OCIO_CHECK_THROW_WHAT(cachedFile = LoadCLFFile(ctfFile), OCIO::Exception, - "'3bae2da8' is not a ST2136-1:2024 complaint Id value."); + "'3bae2da8' is not a SMPTE ST 2136-1 compliant Id value."); } // ***************************************************************** @@ -1468,7 +1468,7 @@ OCIO_ADD_TEST(FileFormatCTF, difficult_syntax) OCIO_REQUIRE_ASSERT((bool)cachedFile); const OCIO::CTFVersion clfVersion = cachedFile->m_transform->getCLFVersion(); - const OCIO::CTFVersion ver("http://www.smpte-ra.org/ns/2136-1/2024", OCIO::CTFVersion::eSMPTE_Long); + const OCIO::CTFVersion ver("http://www.smpte-ra.org/ns/2136-1/2024", OCIO::CTFVersion::VERSION_SMPTE_XMLNS); OCIO_CHECK_EQUAL(clfVersion, ver); OCIO_CHECK_EQUAL(cachedFile->m_transform->getID(), "id1"); diff --git a/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp b/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp index b328578b58..4faee27873 100644 --- a/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp +++ b/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp @@ -79,7 +79,7 @@ OCIO_ADD_TEST(CTFVersion, read_version) { // Numeric format is always accepted. - OCIO_CHECK_NO_THROW(versionRead = OCIO::CTFVersion("2.0.0", OCIO::CTFVersion::eSMPTE_Short)); + OCIO_CHECK_NO_THROW(versionRead = OCIO::CTFVersion("2.0.0", OCIO::CTFVersion::VERSION_SMPTE_CLF)); const OCIO::CTFVersion version(2, 0, 0); OCIO_CHECK_EQUAL(version, versionRead); } @@ -103,7 +103,7 @@ OCIO_ADD_TEST(CTFVersion, read_version) { // SMPTE version is regarded as v3.0.0. OCIO_CHECK_NO_THROW(versionRead = OCIO::CTFVersion( - "ST2136-1:2024", OCIO::CTFVersion::eSMPTE_Short)); + "ST2136-1:2024", OCIO::CTFVersion::VERSION_SMPTE_CLF)); const OCIO::CTFVersion version(3, 0, 0); OCIO_CHECK_EQUAL(version, versionRead); } @@ -111,16 +111,16 @@ OCIO_ADD_TEST(CTFVersion, read_version) { // Short SMPTE string is not allowed when only the long format is accepted. OCIO_CHECK_THROW_WHAT(versionRead = OCIO::CTFVersion( - "ST2136-1:2024", OCIO::CTFVersion::eSMPTE_Long), + "ST2136-1:2024", OCIO::CTFVersion::VERSION_SMPTE_XMLNS), OCIO::Exception, "is not a valid version. Expecting 'http://www.smpte-ra.org/ns/2136-1/2024' or MAJOR[.MINOR[.REVISION]]"); } { - // Long SMPTE should be accepted only when the the format is allowed ans + // Long SMPTE should be accepted only when the the format is allowed and // should be regarded as v3.0.0. OCIO_CHECK_NO_THROW(versionRead = OCIO::CTFVersion( - "http://www.smpte-ra.org/ns/2136-1/2024", OCIO::CTFVersion::eSMPTE_Long)); + "http://www.smpte-ra.org/ns/2136-1/2024", OCIO::CTFVersion::VERSION_SMPTE_XMLNS)); const OCIO::CTFVersion version(3, 0, 0); OCIO_CHECK_EQUAL(version, versionRead); } @@ -128,7 +128,7 @@ OCIO_ADD_TEST(CTFVersion, read_version) { // Long SMPTE string is not allowed when only the short format is accepted. OCIO_CHECK_THROW_WHAT(versionRead = OCIO::CTFVersion( - "http://www.smpte-ra.org/ns/2136-1/2024", OCIO::CTFVersion::eSMPTE_Short), + "http://www.smpte-ra.org/ns/2136-1/2024", OCIO::CTFVersion::VERSION_SMPTE_CLF), OCIO::Exception, "is not a valid version. Expecting 'ST2136-1:2024' or MAJOR[.MINOR[.REVISION]]"); } @@ -200,7 +200,7 @@ OCIO_ADD_TEST(CTFVersion, version_write) { const OCIO::CTFVersion version( "ST2136-1:2024", - OCIO::CTFVersion::eSMPTE_Short); + OCIO::CTFVersion::VERSION_SMPTE_CLF); std::ostringstream ostream; ostream << version; OCIO_CHECK_EQUAL(ostream.str(), "ST2136-1:2024"); @@ -208,7 +208,7 @@ OCIO_ADD_TEST(CTFVersion, version_write) { const OCIO::CTFVersion version( "http://www.smpte-ra.org/ns/2136-1/2024", - OCIO::CTFVersion::eSMPTE_Long); + OCIO::CTFVersion::VERSION_SMPTE_XMLNS); std::ostringstream ostream; ostream << version; OCIO_CHECK_EQUAL(ostream.str(), "http://www.smpte-ra.org/ns/2136-1/2024"); diff --git a/tests/python/ProcessorTest.py b/tests/python/ProcessorTest.py index 2a989333e6..59ee32df2d 100644 --- a/tests/python/ProcessorTest.py +++ b/tests/python/ProcessorTest.py @@ -50,7 +50,7 @@ def test_cache_id(self): # Make the transform dynamic. ec.makeContrastDynamic() p = cfg.getProcessor(ec) - self.assertEqual(p.getCacheID(), '818420192074e6466468d59c9ea38667') + self.assertEqual(p.getCacheID(), '6468d59c-9ea3-8667-8184-20192074e646') def test_create_group_transform(self): # Test createGroupTransform() function. From c647d35f5b9f35970a30915f9c2bbf496febdbd9 Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Tue, 10 Feb 2026 01:03:42 -0800 Subject: [PATCH 19/25] - Name space stripping is now compile-time enabled all the time but now there's a switch to turn that off during parsing. Currently the name space stripping it turned off during the info element parsing. - all of the encountered input and output descriptors are now collected just like the description element. collecting the language attribute will need re-working the whole metadata structure, which can be the next step. Signed-off-by: cuneyt.ozdas --- src/OpenColorIO/fileformats/FileFormatCTF.cpp | 20 +++-- .../fileformats/ctf/CTFReaderHelper.cpp | 5 +- .../fileformats/ctf/CTFReaderHelper.h | 21 +++-- .../fileformats/ctf/CTFTransform.cpp | 48 ++++++----- .../fileformats/ctf/CTFTransform.h | 20 ++--- .../fileformats/xmlutils/XMLReaderHelper.cpp | 2 + .../fileformats/xmlutils/XMLReaderHelper.h | 1 + tests/cpu/fileformats/FileFormatCTF_tests.cpp | 82 ++++++++++++++----- .../fileformats/ctf/CTFTransform_tests.cpp | 33 +++++--- 9 files changed, 145 insertions(+), 87 deletions(-) diff --git a/src/OpenColorIO/fileformats/FileFormatCTF.cpp b/src/OpenColorIO/fileformats/FileFormatCTF.cpp index 20c1219b94..6615733251 100644 --- a/src/OpenColorIO/fileformats/FileFormatCTF.cpp +++ b/src/OpenColorIO/fileformats/FileFormatCTF.cpp @@ -109,11 +109,6 @@ namespace OCIO_NAMESPACE namespace { -// Control variables -// This is used to strip the name spaces from the element names when parsing. -// This allows our parser to handle elements with name space prefixes. -constexpr const bool STRIP_NAMESPACES = true; - class LocalCachedFile : public CachedFile { public: @@ -516,7 +511,7 @@ class XMLParserHelper // Strip the name spaces const char *name = name_full; - if (STRIP_NAMESPACES) + if (pImpl->m_keepNamespaces <= 0) { name = strrchr(name_full, ':'); name = name ? (name+1) : name_full; @@ -832,6 +827,8 @@ class XMLParserHelper else if (SupportedElement(name, pElt, TAG_INFO, TAG_PROCESS_LIST, recognizedName)) { + pImpl->m_keepNamespaces++; + pImpl->m_elms.push_back( std::make_shared( name, @@ -1044,7 +1041,7 @@ class XMLParserHelper // Strip the name spaces const char *name = name_full; - if (STRIP_NAMESPACES) + if (pImpl->m_keepNamespaces <= 0) { name = strrchr(name_full, ':'); name = name ? (name+1) : name_full; @@ -1104,6 +1101,12 @@ class XMLParserHelper } } + // Exiting the info element; decrease keep namespace counter. + if(std::dynamic_pointer_cast(pElt)) + { + pImpl->m_keepNamespaces--; + } + pElt->end(); } @@ -1210,6 +1213,7 @@ class XMLParserHelper bool m_isCLF; XmlReaderElementStack m_elms; // Parsing stack CTFReaderTransformPtr m_transform; + int m_keepNamespaces = 0; // if >0, name spaces will be preserved }; @@ -1236,7 +1240,7 @@ bool isLoadableCTF(std::istream & istream) { foundPattern = true; } - else if(STRIP_NAMESPACES && strstr(line, pattern2)) + else if (strstr(line, pattern2)) { foundPattern = true; } diff --git a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp index be22430f82..4e254f4f6d 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp @@ -208,10 +208,7 @@ void CTFReaderTransformElt::start(const char ** atts) // Handle as CLF. m_isCLF = true; } -// else if (0 == Platform::Strcasecmp("xmlns", atts[i])) -// { -// // Ignore. -// } + // TODO: collect and store non-default xmlns attributes. else { logParameterWarning(atts[i]); diff --git a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h index db776503ad..0fed2f66cb 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h +++ b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h @@ -179,6 +179,7 @@ class CTFReaderInputDescriptorElt : public XmlReaderPlainElt void start(const char ** /* atts */) override { + // Todo: collect language attr. } void end() override @@ -187,13 +188,15 @@ class CTFReaderInputDescriptorElt : public XmlReaderPlainElt void setRawData(const char * str, size_t len, unsigned int /*xmlLine*/) override { + // TODO: do we want to support multi-line descriptors? CTFReaderTransformElt* pTransform = dynamic_cast(getParent().get()); - std::string s = pTransform->getTransform()->getInputDescriptor(); - s += std::string(str, len); + auto & descs = pTransform->getTransform()->getInputDescriptors(); + descs.push_back(std::string(str, len)); - pTransform->getTransform()->setInputDescriptor(s); + // TODO: re-work the metaData handling in CTFReaderTransformPtr and add + // language attr } }; @@ -213,8 +216,9 @@ class CTFReaderOutputDescriptorElt : public XmlReaderPlainElt { } - void start(const char ** /* atts */) override + void start(const char ** /*atts*/ ) override { + // TODO: collect language attr. } void end() override @@ -223,13 +227,16 @@ class CTFReaderOutputDescriptorElt : public XmlReaderPlainElt void setRawData(const char* str, size_t len, unsigned int /* xmlLine */) override { + // TODO: do we want to support multi-line descriptors? + CTFReaderTransformElt* pTransform = dynamic_cast(getParent().get()); - std::string s = pTransform->getTransform()->getOutputDescriptor(); - s += std::string(str, len); + auto & descs = pTransform->getTransform()->getOutputDescriptors(); + descs.push_back(std::string(str, len)); - pTransform->getTransform()->setOutputDescriptor(s); + // TODO: re-work the metaData handling in CTFReaderTransformPtr and add + // language attr } }; diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp index 8fd1a617fb..c12bf17d74 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp @@ -483,8 +483,8 @@ void CTFReaderTransform::fromMetadata(const FormatMetadataImpl & metadata) // Elements m_id_element = GetFirstElementValue(metadata.getChildrenElements(), METADATA_ID_ELEMENT); // Preserve first InputDescriptor, last OutputDescriptor, and all Descriptions. - m_inDescriptor = GetFirstElementValue(metadata.getChildrenElements(), METADATA_INPUT_DESCRIPTOR); - m_outDescriptor = GetLastElementValue(metadata.getChildrenElements(), METADATA_OUTPUT_DESCRIPTOR); + GetElementsValues(metadata.getChildrenElements(), METADATA_INPUT_DESCRIPTOR, m_inDescriptors); + GetElementsValues(metadata.getChildrenElements(), METADATA_OUTPUT_DESCRIPTOR, m_outDescriptors); GetElementsValues(metadata.getChildrenElements(), METADATA_DESCRIPTION, m_descriptions); // Combine all Info elements. @@ -527,12 +527,20 @@ void CTFReaderTransform::toMetadata(FormatMetadataImpl & metadata) const // Child Elements AddNonEmptyElement(metadata, METADATA_ID_ELEMENT, getIDElement()); - AddNonEmptyElement(metadata, METADATA_INPUT_DESCRIPTOR, getInputDescriptor()); - AddNonEmptyElement(metadata, METADATA_OUTPUT_DESCRIPTOR, getOutputDescriptor()); + for (auto & desc : m_descriptions) { metadata.addChildElement(METADATA_DESCRIPTION, desc.c_str()); } + for (auto & desc : m_inDescriptors) + { + metadata.addChildElement(METADATA_INPUT_DESCRIPTOR, desc.c_str()); + } + for (auto & desc : m_outDescriptors) + { + metadata.addChildElement(METADATA_OUTPUT_DESCRIPTOR, desc.c_str()); + } + const std::string infoValue(m_infoMetadata.getElementValue()); if (m_infoMetadata.getNumAttributes() || m_infoMetadata.getNumChildrenElements() || !infoValue.empty()) @@ -546,9 +554,9 @@ void CTFReaderTransform::toMetadata(FormatMetadataImpl & metadata) const namespace { -void WriteDescriptions(XmlFormatter & fmt, const char * tag, const StringUtils::StringVec & descriptions) +void WriteTagStringVec(XmlFormatter & fmt, const char * tag, const StringUtils::StringVec & strVec) { - for (auto & it : descriptions) + for (auto & it : strVec) { fmt.writeContentTag(tag, it); } @@ -775,7 +783,7 @@ void OpWriter::writeFormatMetadata() const StringUtils::StringVec desc; GetElementsValues(op->getFormatMetadata().getChildrenElements(), TAG_DESCRIPTION, desc); - WriteDescriptions(m_formatter, TAG_DESCRIPTION, desc); + WriteTagStringVec(m_formatter, TAG_DESCRIPTION, desc); } const char * BitDepthToCLFString(BitDepth bitDepth) @@ -917,7 +925,7 @@ void CDLWriter::writeContent() const StringUtils::StringVec desc; GetElementsValues(op->getFormatMetadata().getChildrenElements(), METADATA_SOP_DESCRIPTION, desc); - WriteDescriptions(m_formatter, TAG_DESCRIPTION, desc); + WriteTagStringVec(m_formatter, TAG_DESCRIPTION, desc); oss.str(""); params = m_cdl->getSlopeParams(); @@ -944,7 +952,7 @@ void CDLWriter::writeContent() const StringUtils::StringVec desc; GetElementsValues(op->getFormatMetadata().getChildrenElements(), METADATA_SAT_DESCRIPTION, desc); - WriteDescriptions(m_formatter, TAG_DESCRIPTION, desc); + WriteTagStringVec(m_formatter, TAG_DESCRIPTION, desc); oss.str(""); oss << m_cdl->getSaturation(); @@ -959,15 +967,15 @@ void CDLWriter::writeFormatMetadata() const StringUtils::StringVec desc; GetElementsValues(op->getFormatMetadata().getChildrenElements(), METADATA_DESCRIPTION, desc); - WriteDescriptions(m_formatter, TAG_DESCRIPTION, desc); + WriteTagStringVec(m_formatter, TAG_DESCRIPTION, desc); desc.clear(); GetElementsValues(op->getFormatMetadata().getChildrenElements(), METADATA_INPUT_DESCRIPTION, desc); - WriteDescriptions(m_formatter, METADATA_INPUT_DESCRIPTION, desc); + WriteTagStringVec(m_formatter, METADATA_INPUT_DESCRIPTION, desc); desc.clear(); GetElementsValues(op->getFormatMetadata().getChildrenElements(), METADATA_VIEWING_DESCRIPTION, desc); - WriteDescriptions(m_formatter, METADATA_VIEWING_DESCRIPTION, desc); + WriteTagStringVec(m_formatter, METADATA_VIEWING_DESCRIPTION, desc); } /////////////////////////////////////////////////////////////////////////////// @@ -2639,19 +2647,9 @@ void TransformWriter::write() const m_formatter.writeContentTag(TAG_ID, idEl); } - WriteDescriptions(m_formatter, TAG_DESCRIPTION, m_transform->getDescriptions()); - - const std::string & inputDesc = m_transform->getInputDescriptor(); - if (!inputDesc.empty()) - { - m_formatter.writeContentTag(METADATA_INPUT_DESCRIPTOR, inputDesc); - } - - const std::string & outputDesc = m_transform->getOutputDescriptor(); - if (!outputDesc.empty()) - { - m_formatter.writeContentTag(METADATA_OUTPUT_DESCRIPTOR, outputDesc); - } + WriteTagStringVec(m_formatter, TAG_DESCRIPTION, m_transform->getDescriptions()); + WriteTagStringVec(m_formatter, METADATA_INPUT_DESCRIPTOR, m_transform->getInputDescriptors()); + WriteTagStringVec(m_formatter, METADATA_OUTPUT_DESCRIPTOR, m_transform->getOutputDescriptors()); const FormatMetadataImpl & info = m_transform->getInfoMetadata(); { diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.h b/src/OpenColorIO/fileformats/ctf/CTFTransform.h index ccfcd0d778..d12cc47c39 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.h +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.h @@ -222,24 +222,24 @@ class CTFReaderTransform return m_descriptions; } - const std::string & getInputDescriptor() const + const StringUtils::StringVec & getInputDescriptors() const { - return m_inDescriptor; + return m_inDescriptors; } - void setInputDescriptor(const std::string & in) + StringUtils::StringVec & getInputDescriptors() { - m_inDescriptor = in; + return m_inDescriptors; } - const std::string & getOutputDescriptor() const + const StringUtils::StringVec & getOutputDescriptors() const { - return m_outDescriptor; + return m_outDescriptors; } - void setOutputDescriptor(const std::string & out) + StringUtils::StringVec & getOutputDescriptors() { - m_outDescriptor = out; + return m_outDescriptors; } void setCTFVersion(const CTFVersion & ver); @@ -267,12 +267,12 @@ class CTFReaderTransform std::string m_id_element; // id element std::string m_name; std::string m_inverseOfId; - std::string m_inDescriptor; - std::string m_outDescriptor; FormatMetadataImpl m_infoMetadata; ConstOpDataVec m_ops; StringUtils::StringVec m_descriptions; + StringUtils::StringVec m_inDescriptors; + StringUtils::StringVec m_outDescriptors; // CTF version used even for CLF files. // CLF versions <= 2.0 are interpreted as CTF version 1.7. diff --git a/src/OpenColorIO/fileformats/xmlutils/XMLReaderHelper.cpp b/src/OpenColorIO/fileformats/xmlutils/XMLReaderHelper.cpp index d5b5be5dcf..4c2630b93d 100644 --- a/src/OpenColorIO/fileformats/xmlutils/XMLReaderHelper.cpp +++ b/src/OpenColorIO/fileformats/xmlutils/XMLReaderHelper.cpp @@ -102,6 +102,8 @@ void XmlReaderDescriptionElt::end() // Note: eXpat automatically replaces escaped characters with // their original values. getParent()->appendMetadata(getIdentifier(), m_description); + + // TODO: set the language attribute. } } diff --git a/src/OpenColorIO/fileformats/xmlutils/XMLReaderHelper.h b/src/OpenColorIO/fileformats/xmlutils/XMLReaderHelper.h index 203d3bcdfc..60087d8063 100644 --- a/src/OpenColorIO/fileformats/xmlutils/XMLReaderHelper.h +++ b/src/OpenColorIO/fileformats/xmlutils/XMLReaderHelper.h @@ -288,6 +288,7 @@ class XmlReaderDescriptionElt : public XmlReaderPlainElt void start(const char ** /* atts */) override { + // TODO: collect language attr. m_description.resize(0); m_changed = false; } diff --git a/tests/cpu/fileformats/FileFormatCTF_tests.cpp b/tests/cpu/fileformats/FileFormatCTF_tests.cpp index 223e41d2f4..aee9d68943 100644 --- a/tests/cpu/fileformats/FileFormatCTF_tests.cpp +++ b/tests/cpu/fileformats/FileFormatCTF_tests.cpp @@ -104,12 +104,29 @@ OCIO_ADD_TEST(FileFormatCTF, non_smpte_xmlns) OCIO_ADD_TEST(FileFormatCTF, smpte_all_metadata) { const std::string ctfFile("clf/smpte_only/broadcast_profile_lut33.clf"); - OCIO::LocalCachedFileRcPtr cachedFile; - OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); + OCIO::ConstProcessorRcPtr processor; + OCIO_CHECK_NO_THROW(processor = OCIO::GetFileTransformProcessor(ctfFile)); + OCIO_REQUIRE_ASSERT(processor); + OCIO::GroupTransformRcPtr group; + OCIO_CHECK_NO_THROW(group = processor->createGroupTransform()); + OCIO_REQUIRE_ASSERT(group); + + const auto & md = group->getFormatMetadata(); + OCIO_REQUIRE_EQUAL(md.getNumAttributes(), 2); // name, id present. xmlns:clfbp is missing, xmlns becomes version + + OCIO_REQUIRE_EQUAL(md.getNumChildrenElements(), 9); + // Id + // Description (no language attr) + // Description (no language attr) + // Description (no language attr) + // Input Descriptor (no language attr) + // Output Descriptor (no language attr) + // Output Descriptor (no language attr) + // Output Descriptor (no language attr) + // Info (9 sub-elements, keeping the name spaces intact) + + // TODO: test exact values - // This passes with a single "Unrecognized element" warning for xmlns:clfbp - // TODO: Should we try to ignore it silently? - // TODO: Extend? } OCIO_ADD_TEST(FileFormatCTF, smpte_namespaces) @@ -329,8 +346,11 @@ OCIO_ADD_TEST(FileFormatCTF, matrix4x4) auto pMatrix = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pMatrix); - OCIO_CHECK_ASSERT(cachedFile->m_transform->getInputDescriptor() == "XYZ"); - OCIO_CHECK_ASSERT(cachedFile->m_transform->getOutputDescriptor() == "RGB"); + OCIO_REQUIRE_ASSERT(cachedFile->m_transform->getInputDescriptors().size() == 1); + OCIO_CHECK_ASSERT(cachedFile->m_transform->getInputDescriptors()[0] == "XYZ"); + + OCIO_REQUIRE_ASSERT(cachedFile->m_transform->getOutputDescriptors().size() == 1); + OCIO_CHECK_ASSERT(cachedFile->m_transform->getOutputDescriptors()[0] == "RGB"); OCIO_CHECK_EQUAL(pMatrix->getFileInputBitDepth(), OCIO::BIT_DEPTH_F32); OCIO_CHECK_EQUAL(pMatrix->getFileOutputBitDepth(), OCIO::BIT_DEPTH_F32); @@ -448,8 +468,11 @@ OCIO_ADD_TEST(FileFormatCTF, matrix_1_3_3x3) auto pMatrix = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pMatrix); - OCIO_CHECK_ASSERT(cachedFile->m_transform->getInputDescriptor() == "XYZ"); - OCIO_CHECK_ASSERT(cachedFile->m_transform->getOutputDescriptor() == "RGB"); + OCIO_REQUIRE_ASSERT(cachedFile->m_transform->getInputDescriptors().size() == 1); + OCIO_CHECK_ASSERT(cachedFile->m_transform->getInputDescriptors()[0] == "XYZ"); + + OCIO_REQUIRE_ASSERT(cachedFile->m_transform->getOutputDescriptors().size() == 1); + OCIO_CHECK_ASSERT(cachedFile->m_transform->getOutputDescriptors()[0] == "RGB"); OCIO_CHECK_EQUAL(pMatrix->getFileInputBitDepth(), OCIO::BIT_DEPTH_UINT10); OCIO_CHECK_EQUAL(pMatrix->getFileOutputBitDepth(), OCIO::BIT_DEPTH_UINT10); @@ -762,8 +785,13 @@ OCIO_ADD_TEST(FileFormatCTF, lut_1d) OCIO_REQUIRE_EQUAL(cachedFile->m_transform->getDescriptions().size(), 1); OCIO_CHECK_EQUAL(cachedFile->m_transform->getDescriptions()[0], "Apply a 1/2.2 gamma."); - OCIO_CHECK_EQUAL(cachedFile->m_transform->getInputDescriptor(), "RGB"); - OCIO_CHECK_EQUAL(cachedFile->m_transform->getOutputDescriptor(), "RGB"); + + OCIO_REQUIRE_ASSERT(cachedFile->m_transform->getInputDescriptors().size() == 1); + OCIO_CHECK_EQUAL(cachedFile->m_transform->getInputDescriptors()[0], "RGB"); + + OCIO_REQUIRE_ASSERT(cachedFile->m_transform->getOutputDescriptors().size() == 1); + OCIO_CHECK_EQUAL(cachedFile->m_transform->getOutputDescriptors()[0], "RGB"); + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); OCIO_REQUIRE_EQUAL(opList.size(), 1); @@ -1380,9 +1408,13 @@ OCIO_ADD_TEST(FileFormatCTF, info_example) "Example of using the Info element"); OCIO_CHECK_EQUAL(cachedFile->m_transform->getDescriptions()[1], "A second description"); - OCIO_CHECK_EQUAL(cachedFile->m_transform->getInputDescriptor(), + + OCIO_REQUIRE_ASSERT(cachedFile->m_transform->getInputDescriptors().size() == 1) + OCIO_CHECK_EQUAL(cachedFile->m_transform->getInputDescriptors()[0], "input desc"); - OCIO_CHECK_EQUAL(cachedFile->m_transform->getOutputDescriptor(), + + OCIO_REQUIRE_ASSERT(cachedFile->m_transform->getOutputDescriptors().size() == 1) + OCIO_CHECK_EQUAL(cachedFile->m_transform->getOutputDescriptors()[0], "output desc"); // Ensure ops were not affected by metadata parsing. @@ -2831,10 +2863,15 @@ OCIO_ADD_TEST(FileFormatCTF, cdl_clamp_fwd) OCIO_REQUIRE_ASSERT((bool)cachedFile); const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); - OCIO_CHECK_EQUAL(cachedFile->m_transform->getInputDescriptor(), + + OCIO_REQUIRE_ASSERT(cachedFile->m_transform->getInputDescriptors().size() == 1); + OCIO_CHECK_EQUAL(cachedFile->m_transform->getInputDescriptors()[0], "inputDesc"); - OCIO_CHECK_EQUAL(cachedFile->m_transform->getOutputDescriptor(), + + OCIO_REQUIRE_ASSERT(cachedFile->m_transform->getOutputDescriptors().size() == 1); + OCIO_CHECK_EQUAL(cachedFile->m_transform->getOutputDescriptors()[0], "outputDesc"); + OCIO_REQUIRE_EQUAL(opList.size(), 1); auto pCDL = std::dynamic_pointer_cast(opList[0]); OCIO_REQUIRE_ASSERT(pCDL); @@ -8773,11 +8810,12 @@ OCIO_ADD_TEST(FileFormatCTF, bake_3d) data.addChildElement(OCIO::METADATA_DESCRIPTION, "OpenColorIO Test Line 2"); data.addChildElement("Anything", "Not Saved"); - data.addChildElement(OCIO::METADATA_INPUT_DESCRIPTOR, "Input descriptor"); - data.addChildElement(OCIO::METADATA_INPUT_DESCRIPTOR, "Only first is saved"); - data.addChildElement(OCIO::METADATA_OUTPUT_DESCRIPTOR, "Output descriptor"); + data.addChildElement(OCIO::METADATA_INPUT_DESCRIPTOR, "Input descriptor 1"); + data.addChildElement(OCIO::METADATA_INPUT_DESCRIPTOR, "Input descriptor 2"); + data.addChildElement(OCIO::METADATA_OUTPUT_DESCRIPTOR, "Output descriptor 1"); + data.addChildElement(OCIO::METADATA_OUTPUT_DESCRIPTOR, "Output descriptor 2"); data.addChildElement(OCIO::METADATA_INFO, ""); - auto & info = data.getChildElement(6); + auto & info = data.getChildElement(7); info.addAttribute("attrib1", "val1"); info.addAttribute("attrib2", "val2"); info.addChildElement("anything", "is saved"); @@ -8795,8 +8833,10 @@ R"( OpenColorIO Test Line 1 OpenColorIO Test Line 2 - Input descriptor - Output descriptor + Input descriptor 1 + Input descriptor 2 + Output descriptor 1 + Output descriptor 2 is saved is also saved diff --git a/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp b/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp index 4faee27873..7a36ca8726 100644 --- a/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp +++ b/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp @@ -234,28 +234,28 @@ OCIO_ADD_TEST(CTFReaderTransform, accessors) OCIO_CHECK_EQUAL(ct.getName(), ""); OCIO_CHECK_EQUAL(t.getInverseOfId(), ""); OCIO_CHECK_EQUAL(ct.getInverseOfId(), ""); - OCIO_CHECK_EQUAL(t.getInputDescriptor(), ""); - OCIO_CHECK_EQUAL(ct.getInputDescriptor(), ""); - OCIO_CHECK_EQUAL(t.getOutputDescriptor(), ""); - OCIO_CHECK_EQUAL(ct.getOutputDescriptor(), ""); OCIO_CHECK_ASSERT(t.getOpDataVec().empty()); OCIO_CHECK_ASSERT(ct.getOpDataVec().empty()); OCIO_CHECK_ASSERT(t.getDescriptions().empty()); OCIO_CHECK_ASSERT(ct.getDescriptions().empty()); + OCIO_CHECK_ASSERT(t.getInputDescriptors().empty()); + OCIO_CHECK_ASSERT(ct.getInputDescriptors().empty()); + OCIO_CHECK_ASSERT(t.getOutputDescriptors().empty()); + OCIO_CHECK_ASSERT(ct.getOutputDescriptors().empty()); } t.setName("Name"); t.setID("123"); t.setInverseOfId("654"); - t.setInputDescriptor("input"); - t.setOutputDescriptor("output"); auto matrixOp = std::make_shared(); t.getOpDataVec().push_back(matrixOp); t.getDescriptions().push_back("One"); t.getDescriptions().push_back("Two"); + t.getInputDescriptors().push_back("input"); + t.getOutputDescriptors().push_back("output"); { const OCIO::CTFReaderTransform & ct = t; @@ -266,19 +266,28 @@ OCIO_ADD_TEST(CTFReaderTransform, accessors) OCIO_CHECK_EQUAL(ct.getName(), "Name"); OCIO_CHECK_EQUAL(t.getInverseOfId(), "654"); OCIO_CHECK_EQUAL(ct.getInverseOfId(), "654"); - OCIO_CHECK_EQUAL(t.getInputDescriptor(), "input"); - OCIO_CHECK_EQUAL(ct.getInputDescriptor(), "input"); - OCIO_CHECK_EQUAL(t.getOutputDescriptor(), "output"); - OCIO_CHECK_EQUAL(ct.getOutputDescriptor(), "output"); OCIO_CHECK_EQUAL(t.getOpDataVec().size(), 1); OCIO_CHECK_EQUAL(ct.getOpDataVec().size(), 1); - OCIO_CHECK_EQUAL(t.getDescriptions().size(), 2); - OCIO_CHECK_EQUAL(ct.getDescriptions().size(), 2); + OCIO_REQUIRE_EQUAL(t.getDescriptions().size(), 2); + OCIO_REQUIRE_EQUAL(ct.getDescriptions().size(), 2); OCIO_CHECK_EQUAL(t.getDescriptions()[0], "One"); OCIO_CHECK_EQUAL(ct.getDescriptions()[0], "One"); OCIO_CHECK_EQUAL(t.getDescriptions()[1], "Two"); OCIO_CHECK_EQUAL(ct.getDescriptions()[1], "Two"); + + OCIO_REQUIRE_EQUAL(t.getInputDescriptors().size(), 1); + OCIO_REQUIRE_EQUAL(ct.getInputDescriptors().size(), 1); + OCIO_CHECK_EQUAL(t.getInputDescriptors()[0], "input"); + OCIO_CHECK_EQUAL(ct.getInputDescriptors()[0], "input"); + + OCIO_REQUIRE_EQUAL(t.getOutputDescriptors().size(), 1); + OCIO_REQUIRE_EQUAL(ct.getOutputDescriptors().size(), 1); + OCIO_CHECK_EQUAL(t.getOutputDescriptors()[0], "output"); + OCIO_CHECK_EQUAL(ct.getOutputDescriptors()[0], "output"); + + + } } From 5b95961b86fefa4ec849d3d43722a117067a7ed8 Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Tue, 10 Feb 2026 01:10:23 -0800 Subject: [PATCH 20/25] - Make the picky compilers happy. Signed-off-by: cuneyt.ozdas --- src/OpenColorIO/fileformats/ctf/CTFTransform.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp index c12bf17d74..cf680d32e8 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp @@ -443,6 +443,7 @@ const char * GetFirstElementValue(const FormatMetadataImpl::Elements & elements, return ""; } +[[maybe_unused]] const char * GetLastElementValue(const FormatMetadataImpl::Elements & elements, const std::string & name) { for (auto it = elements.rbegin(); it != elements.rend(); ++it) From cf788cd4991c0a1d59522ea1c099fed5f8c91a39 Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Tue, 10 Feb 2026 15:28:41 -0800 Subject: [PATCH 21/25] - Signature.clf test file is removed until its finalized. - CLF reader now allows non-compliant Id elements, but with a warning. Writer still throws. - More tests added - General cleanup. Signed-off-by: cuneyt.ozdas --- .../fileformats/ctf/CTFReaderHelper.cpp | 12 +- .../fileformats/ctf/CTFReaderHelper.h | 16 +- .../fileformats/ctf/CTFTransform.cpp | 7 +- .../fileformats/xmlutils/XMLReaderUtils.h | 29 ++-- tests/cpu/fileformats/FileFormatCTF_tests.cpp | 141 ++++++++++++++---- tests/data/files/clf/smpte_only/signature.clf | 59 -------- 6 files changed, 148 insertions(+), 116 deletions(-) delete mode 100644 tests/data/files/clf/smpte_only/signature.clf diff --git a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp index 4e254f4f6d..2a7c2a7ab9 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp @@ -208,7 +208,13 @@ void CTFReaderTransformElt::start(const char ** atts) // Handle as CLF. m_isCLF = true; } - // TODO: collect and store non-default xmlns attributes. + else if(StringUtils::StartsWith(std::string(atts[i]),"xmlns:")) + { + // TODO: Once the CTFReaderTransform class gets a FormatMetada + // member, push this as an attribute. Until then just ignore with a + // reminder warning. + logParameterWarning(atts[i]); + } else { logParameterWarning(atts[i]); @@ -299,9 +305,11 @@ void CTFReaderIdElt::end() { if(!ValidateSMPTEId(m_id)) { + // We allow non-compliant Id values with a warning. std::ostringstream ss; + ss << getXmlFile().c_str() << "(" << getXmlLineNumber() << "): "; ss << "'" << m_id << "' is not a SMPTE ST 2136-1 compliant Id value."; - throwMessage(ss.str()); + LogWarning(ss.str().c_str()); } auto* pTransformnElt = dynamic_cast(getParent().get()); diff --git a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h index 0fed2f66cb..840af06b77 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h +++ b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h @@ -83,11 +83,10 @@ class CTFReaderIdElt : public XmlReaderPlainElt public: CTFReaderIdElt() = delete; CTFReaderIdElt(const std::string & name, - ContainerEltRcPtr & pParent, - unsigned int xmlLocation, - const std::string & xmlFile) + ContainerEltRcPtr & pParent, + unsigned int xmlLocation, + const std::string & xmlFile) : XmlReaderPlainElt(name, pParent, xmlLocation, xmlFile) - , m_changed(false) { } @@ -97,23 +96,20 @@ class CTFReaderIdElt : public XmlReaderPlainElt void start(const char ** /* atts */) override { - m_id.resize(0); - m_changed = false; + m_id = {}; } void end() override; void setRawData(const char * str, size_t len, unsigned int /* xmlLine */) override { - // Keep adding to the string. + // This function can receive the text in small pieces, so keep adding to + // the string. m_id += std::string(str, len); - m_changed = true; } private: std::string m_id; - bool m_changed; - }; typedef OCIO_SHARED_PTR CTFReaderTransformEltRcPtr; diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp index cf680d32e8..3008cc3c7c 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp @@ -39,6 +39,7 @@ namespace OCIO_NAMESPACE // This results in less pretty output and also causes problems for some unit tests. static constexpr unsigned DOUBLE_PRECISION = 15; +static constexpr const char* SMPTE_XMLNS_URL = "http://www.smpte-ra.org/ns/2136-1/2024"; CTFVersion::CTFVersion(const std::string & versionString, StringFormat acceptedFormat) { @@ -51,7 +52,7 @@ CTFVersion::CTFVersion(const std::string & versionString, StringFormat acceptedF if (acceptedFormat & VERSION_SMPTE_XMLNS) { res = (0 == Platform::Strcasecmp(versionString.c_str(), - "http://www.smpte-ra.org/ns/2136-1/2024")); + SMPTE_XMLNS_URL)); } if (!res && acceptedFormat & VERSION_SMPTE_CLF) @@ -105,7 +106,7 @@ CTFVersion::CTFVersion(const std::string & versionString, StringFormat acceptedF if (acceptedFormat & VERSION_SMPTE_CLF) os << "'ST2136-1:2024' or "; if (acceptedFormat & VERSION_SMPTE_XMLNS) - os << "'http://www.smpte-ra.org/ns/2136-1/2024' or "; + os << "'" << SMPTE_XMLNS_URL << "' or "; os << "MAJOR[.MINOR[.REVISION]] "; throw Exception(os.str().c_str()); } @@ -2595,7 +2596,7 @@ void TransformWriter::write() const attributes.push_back(XmlFormatter::Attribute( ATTR_COMP_CLF_VERSION, "3")); attributes.push_back(XmlFormatter::Attribute( - ATTR_XMLNS, "http://www.smpte-ra.org/ns/2136-1/2024")); + ATTR_XMLNS, SMPTE_XMLNS_URL)); break; case SubFormat::FORMAT_CTF: diff --git a/src/OpenColorIO/fileformats/xmlutils/XMLReaderUtils.h b/src/OpenColorIO/fileformats/xmlutils/XMLReaderUtils.h index a7f0dacd71..895771fa87 100644 --- a/src/OpenColorIO/fileformats/xmlutils/XMLReaderUtils.h +++ b/src/OpenColorIO/fileformats/xmlutils/XMLReaderUtils.h @@ -23,21 +23,20 @@ namespace OCIO_NAMESPACE // Strings used by CDL and CLF parsers or writers. -static constexpr char ATTR_ID[] = "id"; -static constexpr char ATTR_NAME[] = "name"; -static constexpr char ATTR_XMLNS[] = "xmlns"; - - -static constexpr char CDL_TAG_COLOR_CORRECTION[] = "ColorCorrection"; - -static constexpr char TAG_DESCRIPTION[] = "Description"; -static constexpr char TAG_OFFSET[] = "Offset"; -static constexpr char TAG_POWER[] = "Power"; -static constexpr char TAG_SATNODE[] = "SatNode"; -static constexpr char TAG_SATNODEALT[] = "SATNode"; -static constexpr char TAG_SATURATION[] = "Saturation"; -static constexpr char TAG_SLOPE[] = "Slope"; -static constexpr char TAG_SOPNODE[] = "SOPNode"; +static constexpr const char* ATTR_ID = "id"; +static constexpr const char* ATTR_NAME = "name"; +static constexpr const char* ATTR_XMLNS = "xmlns"; + +static constexpr const char* CDL_TAG_COLOR_CORRECTION = "ColorCorrection"; + +static constexpr const char* TAG_DESCRIPTION = "Description"; +static constexpr const char* TAG_OFFSET = "Offset"; +static constexpr const char* TAG_POWER = "Power"; +static constexpr const char* TAG_SATNODE = "SatNode"; +static constexpr const char* TAG_SATNODEALT = "SATNode"; +static constexpr const char* TAG_SATURATION = "Saturation"; +static constexpr const char* TAG_SLOPE = "Slope"; +static constexpr const char* TAG_SOPNODE = "SOPNode"; // This method truncates a string (mainly used for display purpose). diff --git a/tests/cpu/fileformats/FileFormatCTF_tests.cpp b/tests/cpu/fileformats/FileFormatCTF_tests.cpp index aee9d68943..df96f6d823 100644 --- a/tests/cpu/fileformats/FileFormatCTF_tests.cpp +++ b/tests/cpu/fileformats/FileFormatCTF_tests.cpp @@ -111,22 +111,100 @@ OCIO_ADD_TEST(FileFormatCTF, smpte_all_metadata) OCIO_CHECK_NO_THROW(group = processor->createGroupTransform()); OCIO_REQUIRE_ASSERT(group); - const auto & md = group->getFormatMetadata(); - OCIO_REQUIRE_EQUAL(md.getNumAttributes(), 2); // name, id present. xmlns:clfbp is missing, xmlns becomes version + const auto & md = dynamic_cast(group->getFormatMetadata()); + OCIO_REQUIRE_EQUAL(md.getNumAttributes(), 1); + + // Attributes (xmlns:clfbp is ignored, xmlns becomes version) + OCIO_CHECK_EQUAL(std::string(md.getAttributeName(0)), "name"); + OCIO_CHECK_EQUAL(std::string(md.getAttributeValue(0)), "SMPTE Example Live Broadcast LUT33 Profile"); + + // TODO: Also needs to have xmlns:clfbp in the attr list. + + // Child elements (language attributes are currently ignored) + auto & items = md.getChildrenElements(); + OCIO_REQUIRE_EQUAL(items.size(), 9); + OCIO_CHECK_EQUAL(std::string(items[0].getElementName()), "Id"); + OCIO_CHECK_EQUAL(std::string(items[0].getElementValue()), "urn:uuid:a8f91bfa-b79f-5d4d-b750-a411c476bb47"); + + OCIO_CHECK_EQUAL(std::string(items[1].getElementName()), "Description"); + OCIO_CHECK_EQUAL(std::string(items[1].getElementValue()), "Demo Advanced LUT with dummy values"); + + OCIO_CHECK_EQUAL(std::string(items[2].getElementName()), "Description"); + OCIO_CHECK_EQUAL(std::string(items[2].getElementValue()), "Démonstration d'une LUT avancée avec des valeurs factices"); + + OCIO_CHECK_EQUAL(std::string(items[3].getElementName()), "Description"); + OCIO_CHECK_EQUAL(std::string(items[3].getElementValue()), "Demo Erweiterte LUT mit Dummy-Werten"); + + OCIO_CHECK_EQUAL(std::string(items[4].getElementName()), "InputDescriptor"); + OCIO_CHECK_EQUAL(std::string(items[4].getElementValue()), "ITU-R BT.709"); + + OCIO_CHECK_EQUAL(std::string(items[5].getElementName()), "OutputDescriptor"); + OCIO_CHECK_EQUAL(std::string(items[5].getElementValue()), "Same as Input"); + + OCIO_CHECK_EQUAL(std::string(items[6].getElementName()), "OutputDescriptor"); + OCIO_CHECK_EQUAL(std::string(items[6].getElementValue()), "Identique à l'entrée"); + + OCIO_CHECK_EQUAL(std::string(items[7].getElementName()), "OutputDescriptor"); + OCIO_CHECK_EQUAL(std::string(items[7].getElementValue()), "Gleiches wie Eingabe"); + + OCIO_CHECK_EQUAL(std::string(items[8].getElementName()), "Info"); + OCIO_CHECK_EQUAL(std::string(items[8].getElementValue()), ""); + + // Info block (name spaces are retained) + auto & info = items[8].getChildrenElements(); + OCIO_REQUIRE_EQUAL(info.size(), 9); + OCIO_CHECK_EQUAL(std::string(info[0].getElementName()), "Profile"); + OCIO_CHECK_EQUAL(std::string(info[0].getElementValue()), "http://www.smpte-ra.org/ns/2136-10/2026#Live_Broadcast_LUT33"); + + OCIO_CHECK_EQUAL(std::string(info[1].getElementName()), "AppRelease"); + OCIO_CHECK_EQUAL(std::string(info[1].getElementValue()), "SMPTE_2136-10_Example"); - OCIO_REQUIRE_EQUAL(md.getNumChildrenElements(), 9); - // Id - // Description (no language attr) - // Description (no language attr) - // Description (no language attr) - // Input Descriptor (no language attr) - // Output Descriptor (no language attr) - // Output Descriptor (no language attr) - // Output Descriptor (no language attr) - // Info (9 sub-elements, keeping the name spaces intact) + OCIO_CHECK_EQUAL(std::string(info[2].getElementName()), "Copyright"); + OCIO_CHECK_EQUAL(std::string(info[2].getElementValue()), "OCIO contributors"); - // TODO: test exact values + OCIO_CHECK_EQUAL(std::string(info[3].getElementName()), "Revision"); + OCIO_CHECK_EQUAL(std::string(info[3].getElementValue()), "1.0"); + OCIO_CHECK_EQUAL(std::string(info[4].getElementName()), "clfbp:InputCharacteristics"); + OCIO_CHECK_EQUAL(std::string(info[4].getElementValue()), ""); + + OCIO_CHECK_EQUAL(std::string(info[5].getElementName()), "clfbp:OutputCharacteristics"); + OCIO_CHECK_EQUAL(std::string(info[5].getElementValue()), ""); + + OCIO_CHECK_EQUAL(std::string(info[6].getElementName()), "clfbp:OutputVideoSignalClipping"); + OCIO_CHECK_EQUAL(std::string(info[6].getElementValue()), "sdiClip"); + + OCIO_CHECK_EQUAL(std::string(info[7].getElementName()), "Keywords"); + OCIO_CHECK_EQUAL(std::string(info[7].getElementValue()), "Test, Display-light"); + + OCIO_CHECK_EQUAL(std::string(info[8].getElementName()), "clfbp:ContactEmail"); + OCIO_CHECK_EQUAL(std::string(info[8].getElementValue()), "fake-email@ocio.org"); + + // Info / InputCharacteristics + auto & input = info[4].getChildrenElements(); + OCIO_REQUIRE_EQUAL(input.size(), 3); + OCIO_CHECK_EQUAL(std::string(input[0].getElementName()), "clfbp:ColorPrimaries"); + OCIO_CHECK_EQUAL(std::string(input[0].getElementValue()), "ColorPrimaries_ITU709"); + + OCIO_CHECK_EQUAL(std::string(input[1].getElementName()), "clfbp:TransferCharacteristic"); + OCIO_CHECK_EQUAL(std::string(input[1].getElementValue()), "TransferCharacteristic_ITU709"); + + OCIO_CHECK_EQUAL(std::string(input[2].getElementName()), "clfbp:CodingEquations"); + OCIO_CHECK_EQUAL(std::string(input[2].getElementValue()), "CodingEquations_ITU709"); + + // Info / OutputCharacteristics + auto & output = info[5].getChildrenElements(); + OCIO_REQUIRE_EQUAL(output.size(), 3); + OCIO_CHECK_EQUAL(std::string(output[0].getElementName()), "clfbp:ColorPrimaries"); + OCIO_CHECK_EQUAL(std::string(output[0].getElementValue()), "ColorPrimaries_ITU2020"); + + OCIO_CHECK_EQUAL(std::string(output[1].getElementName()), "clfbp:TransferCharacteristic"); + OCIO_CHECK_EQUAL(std::string(output[1].getElementValue()), "TransferCharacteristic_SMPTEST2084"); + + OCIO_CHECK_EQUAL(std::string(output[2].getElementName()), "clfbp:CodingEquations"); + OCIO_CHECK_EQUAL(std::string(output[2].getElementValue()), "CodingEquations_ITU2100_ICtCp"); + + // Check writing retains the namespaces and attributes } OCIO_ADD_TEST(FileFormatCTF, smpte_namespaces) @@ -140,24 +218,23 @@ OCIO_ADD_TEST(FileFormatCTF, smpte_namespaces) } -OCIO_ADD_TEST(FileFormatCTF, smpte_signature) -{ - const std::string ctfFile("clf/smpte_only/signature.clf"); - OCIO::LocalCachedFileRcPtr cachedFile; - OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); - - // This passes with many "Unrecognized element" warnings - // TODO: Try to ignore the name-spaced elements? - // TODO: Extend? -} - OCIO_ADD_TEST(FileFormatCTF, smpte_id_bad_value) { const std::string ctfFile("clf/smpte_only/illegal/id_bad_value.clf"); + + // Add a log guard to catch warnings. + OCIO::LogGuard guard; + OCIO::SetLoggingLevel(OCIO::LOGGING_LEVEL_WARNING); + OCIO::LocalCachedFileRcPtr cachedFile; - OCIO_CHECK_THROW_WHAT(cachedFile = LoadCLFFile(ctfFile), - OCIO::Exception, - "'3bae2da8' is not a SMPTE ST 2136-1 compliant Id value."); + OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); + OCIO_REQUIRE_ASSERT((bool)cachedFile); + + // Check the expected warning. + static constexpr char Warning[1024] = + "id_bad_value.clf(3): '3bae2da8' is not a SMPTE ST 2136-1 compliant Id value."; + OCIO_CHECK_NE(std::string::npos, + StringUtils::Find( StringUtils::RightTrim(guard.output()), Warning )); } // ***************************************************************** @@ -1496,9 +1573,19 @@ OCIO_ADD_TEST(FileFormatCTF, difficult_syntax) OCIO::LocalCachedFileRcPtr cachedFile; const std::string ctfFile("clf/difficult_syntax.clf"); + // Add a log guard to catch warnings. + OCIO::LogGuard guard; + OCIO::SetLoggingLevel(OCIO::LOGGING_LEVEL_WARNING); + OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); OCIO_REQUIRE_ASSERT((bool)cachedFile); + // Check the expected warning. + static constexpr char Warning[1024] = + "difficult_syntax.clf(41): Unrecognized attribute 'unknown' of 'LUT1D'."; + OCIO_CHECK_NE(std::string::npos, + StringUtils::Find( StringUtils::RightTrim(guard.output()), Warning )); + const OCIO::CTFVersion clfVersion = cachedFile->m_transform->getCLFVersion(); const OCIO::CTFVersion ver("http://www.smpte-ra.org/ns/2136-1/2024", OCIO::CTFVersion::VERSION_SMPTE_XMLNS); OCIO_CHECK_EQUAL(clfVersion, ver); diff --git a/tests/data/files/clf/smpte_only/signature.clf b/tests/data/files/clf/smpte_only/signature.clf deleted file mode 100644 index d895a5b783..0000000000 --- a/tests/data/files/clf/smpte_only/signature.clf +++ /dev/null @@ -1,59 +0,0 @@ - - - - Example CLF file with an enveloped XML Signature (XMLDSIG 1.1). - OCIO does not support signatures yet, but it should not prevent reading the file. - - - - A tiny sample RGB LUT1D. - 0 0 0 0.3 0.4 0.5 1 1 1 - - - - - Example Signing Key - - - MIIB...BASE64...CERT...== - - - - - - - - - - - - - - - - - - - - - - - - AA== - - - - - AA== - - - - Example Signing Key - - - - From e71ac36454ad8c2e2125f9fe9a31bd620e3ae311 Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Tue, 10 Feb 2026 16:16:44 -0800 Subject: [PATCH 22/25] - typo fixes - remove id attr from the broadcast clf (unbreak the build) - Expand the tests Signed-off-by: cuneyt.ozdas --- .../fileformats/ctf/CTFReaderHelper.cpp | 2 +- src/OpenColorIO/ops/cdl/CDLOpCPU.cpp | 12 +++--- .../gradingprimary/GradingPrimaryOpCPU.cpp | 6 +-- .../apphelpers/MergeConfigsHelpers_tests.cpp | 2 +- tests/cpu/fileformats/FileFormatCTF_tests.cpp | 11 +++++ .../fileformats/ctf/CTFTransform_tests.cpp | 40 +++++++++++-------- .../smpte_only/broadcast_profile_lut33.clf | 3 +- .../process_list_higher_ns_version.clf | 11 +++++ 8 files changed, 58 insertions(+), 29 deletions(-) create mode 100644 tests/data/files/clf/smpte_only/illegal/process_list_higher_ns_version.clf diff --git a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp index 2a7c2a7ab9..ee26dd9a39 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp @@ -235,7 +235,7 @@ void CTFReaderTransformElt::start(const char ** atts) { if (m_isCLF) { - throwMessage("None of the 'version', 'compCLFversion', or 'xmlns' attributes were found;" + throwMessage("No valid 'version', 'compCLFversion', or 'xmlns' attributes were found; " "at least one of them is required."); } setVersion(CTF_PROCESS_LIST_VERSION_1_2); diff --git a/src/OpenColorIO/ops/cdl/CDLOpCPU.cpp b/src/OpenColorIO/ops/cdl/CDLOpCPU.cpp index 982e992f14..ddb1f8eabc 100644 --- a/src/OpenColorIO/ops/cdl/CDLOpCPU.cpp +++ b/src/OpenColorIO/ops/cdl/CDLOpCPU.cpp @@ -132,7 +132,7 @@ inline void ApplyClamp(__m128&) { } -// Apply the power component to the the pixel's values. +// Apply the power component to the pixel's values. // When the template argument is true, the values in pix // are clamped to the range [0,1] and the power operation is // applied. When the argument is false, the values in pix are @@ -154,7 +154,7 @@ inline void ApplyPower(__m128& pix, const __m128& power) pix = sseSelect(negMask, pix, pixPower); } -// Apply the saturation component to the the pixel's values +// Apply the saturation component to the pixel's values inline void ApplySaturation(__m128& pix, const __m128 saturation) { // Compute luma: dot product of pixel values and the luma weights @@ -179,7 +179,7 @@ inline void ApplyScale(float * pix, const float scale) pix[2] = pix[2] * scale; } -// Apply the slope component to the the pixel's values +// Apply the slope component to the pixel's values inline void ApplySlope(float * pix, const float * slope) { pix[0] = pix[0] * slope[0]; @@ -187,7 +187,7 @@ inline void ApplySlope(float * pix, const float * slope) pix[2] = pix[2] * slope[2]; } -// Apply the offset component to the the pixel's values +// Apply the offset component to the pixel's values inline void ApplyOffset(float * pix, const float * offset) { pix[0] = pix[0] + offset[0]; @@ -195,7 +195,7 @@ inline void ApplyOffset(float * pix, const float * offset) pix[2] = pix[2] + offset[2]; } -// Apply the saturation component to the the pixel's values +// Apply the saturation component to the pixel's values inline void ApplySaturation(float * pix, const float saturation) { const float srcpix[3] = { pix[0], pix[1], pix[2] }; @@ -232,7 +232,7 @@ inline void ApplyClamp(float *) { } -// Apply the power component to the the pixel's values. +// Apply the power component to the pixel's values. // When the template argument is true, the values in pix // are clamped to the range [0,1] and the power operation is // applied. When the argument is false, the values in pix are diff --git a/src/OpenColorIO/ops/gradingprimary/GradingPrimaryOpCPU.cpp b/src/OpenColorIO/ops/gradingprimary/GradingPrimaryOpCPU.cpp index f0e73d648f..760bd78b60 100644 --- a/src/OpenColorIO/ops/gradingprimary/GradingPrimaryOpCPU.cpp +++ b/src/OpenColorIO/ops/gradingprimary/GradingPrimaryOpCPU.cpp @@ -190,7 +190,7 @@ inline void ApplyLinContrast(float * pix, const float * contrast, const float pi pix[2] = std::pow(std::abs(pix[2] / pivot), contrast[2]) * std::copysign(pivot, pix[2]); } -// Apply the slope component to the the pixel's values +// Apply the slope component to the pixel's values inline void ApplySlope(float * pix, const float * slope) { pix[0] = pix[0] * slope[0]; @@ -198,7 +198,7 @@ inline void ApplySlope(float * pix, const float * slope) pix[2] = pix[2] * slope[2]; } -// Apply the offset component to the the pixel's values. +// Apply the offset component to the pixel's values. inline void ApplyOffset(float * pix, const float * m_offset) { pix[0] = pix[0] + m_offset[0]; @@ -216,7 +216,7 @@ inline void ApplyGamma(float * pix, const float * gamma, float blackPivot, float std::copysign(1.f, pix[2] - blackPivot) * (whitePivot - blackPivot) + blackPivot; } -// Apply the saturation component to the the pixel's values. +// Apply the saturation component to the pixel's values. inline void ApplySaturation(float * pix, const float m_saturation) { if (m_saturation != 1.f) diff --git a/tests/cpu/apphelpers/MergeConfigsHelpers_tests.cpp b/tests/cpu/apphelpers/MergeConfigsHelpers_tests.cpp index 26dd83acc0..2114a9054a 100644 --- a/tests/cpu/apphelpers/MergeConfigsHelpers_tests.cpp +++ b/tests/cpu/apphelpers/MergeConfigsHelpers_tests.cpp @@ -2318,7 +2318,7 @@ OCIO_ADD_TEST(MergeConfigs, view_transforms_section) constexpr char PREFIX[] { "The Input config contains a value that would override the Base config: " }; - // Test that an error is thrown when the the input values are different. + // Test that an error is thrown when the input values are different. { OCIO::MergeHandlerOptions options = { baseConfig, inputConfig, params, mergedConfig }; checkForLogOrException(LOG_TYPE_ERROR, __LINE__, diff --git a/tests/cpu/fileformats/FileFormatCTF_tests.cpp b/tests/cpu/fileformats/FileFormatCTF_tests.cpp index df96f6d823..a1435e1a4e 100644 --- a/tests/cpu/fileformats/FileFormatCTF_tests.cpp +++ b/tests/cpu/fileformats/FileFormatCTF_tests.cpp @@ -237,6 +237,17 @@ OCIO_ADD_TEST(FileFormatCTF, smpte_id_bad_value) StringUtils::Find( StringUtils::RightTrim(guard.output()), Warning )); } +OCIO_ADD_TEST(FileFormatCTF, smpte_conflicting_version) +{ + const std::string ctfFile("clf/smpte_only/illegal/process_list_higher_ns_version.clf"); + + OCIO::LocalCachedFileRcPtr cachedFile; + OCIO_CHECK_THROW_WHAT(cachedFile = LoadCLFFile(ctfFile), + OCIO::Exception, + "No valid 'version', 'compCLFversion', or 'xmlns' attributes " + "were found; at least one of them is required."); +} + // ***************************************************************** diff --git a/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp b/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp index 7a36ca8726..e9d949ed8b 100644 --- a/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp +++ b/tests/cpu/fileformats/ctf/CTFTransform_tests.cpp @@ -85,7 +85,7 @@ OCIO_ADD_TEST(CTFVersion, read_version) } { - // Short SMPTE should be accepted only when the the format is allowed. + // Short SMPTE should be accepted only when the format is allowed. OCIO_CHECK_THROW_WHAT(versionRead = OCIO::CTFVersion( "ST2136-1:2024"), OCIO::Exception, @@ -93,7 +93,7 @@ OCIO_ADD_TEST(CTFVersion, read_version) } { - // Long SMPTE should be accepted only when the the format is allowed. + // Long SMPTE should be accepted only when the format is allowed. OCIO_CHECK_THROW_WHAT(versionRead = OCIO::CTFVersion( "http://www.smpte-ra.org/ns/2136-1/2024"), OCIO::Exception, @@ -117,7 +117,7 @@ OCIO_ADD_TEST(CTFVersion, read_version) } { - // Long SMPTE should be accepted only when the the format is allowed and + // Long SMPTE should be accepted only when the format is allowed and // should be regarded as v3.0.0. OCIO_CHECK_NO_THROW(versionRead = OCIO::CTFVersion( "http://www.smpte-ra.org/ns/2136-1/2024", OCIO::CTFVersion::VERSION_SMPTE_XMLNS)); @@ -235,6 +235,8 @@ OCIO_ADD_TEST(CTFReaderTransform, accessors) OCIO_CHECK_EQUAL(t.getInverseOfId(), ""); OCIO_CHECK_EQUAL(ct.getInverseOfId(), ""); + OCIO_CHECK_EQUAL(ct.getIDElement(), ""); + OCIO_CHECK_ASSERT(t.getOpDataVec().empty()); OCIO_CHECK_ASSERT(ct.getOpDataVec().empty()); @@ -249,13 +251,17 @@ OCIO_ADD_TEST(CTFReaderTransform, accessors) t.setID("123"); t.setInverseOfId("654"); + t.setIDElement("urn:uuid:123e4567-e89b-12d3-a456-426655440000"); + auto matrixOp = std::make_shared(); t.getOpDataVec().push_back(matrixOp); t.getDescriptions().push_back("One"); t.getDescriptions().push_back("Two"); - t.getInputDescriptors().push_back("input"); - t.getOutputDescriptors().push_back("output"); + t.getInputDescriptors().push_back("input 1"); + t.getInputDescriptors().push_back("input 2"); + t.getOutputDescriptors().push_back("output 1"); + t.getOutputDescriptors().push_back("output 2"); { const OCIO::CTFReaderTransform & ct = t; @@ -267,9 +273,14 @@ OCIO_ADD_TEST(CTFReaderTransform, accessors) OCIO_CHECK_EQUAL(t.getInverseOfId(), "654"); OCIO_CHECK_EQUAL(ct.getInverseOfId(), "654"); + OCIO_CHECK_EQUAL(t.getIDElement(), "urn:uuid:123e4567-e89b-12d3-a456-426655440000"); + OCIO_CHECK_EQUAL(ct.getIDElement(), "urn:uuid:123e4567-e89b-12d3-a456-426655440000"); + OCIO_CHECK_EQUAL(t.getOpDataVec().size(), 1); OCIO_CHECK_EQUAL(ct.getOpDataVec().size(), 1); + // TODO: add language attribute set/get tests when implemented. + OCIO_REQUIRE_EQUAL(t.getDescriptions().size(), 2); OCIO_REQUIRE_EQUAL(ct.getDescriptions().size(), 2); OCIO_CHECK_EQUAL(t.getDescriptions()[0], "One"); @@ -277,17 +288,14 @@ OCIO_ADD_TEST(CTFReaderTransform, accessors) OCIO_CHECK_EQUAL(t.getDescriptions()[1], "Two"); OCIO_CHECK_EQUAL(ct.getDescriptions()[1], "Two"); - OCIO_REQUIRE_EQUAL(t.getInputDescriptors().size(), 1); - OCIO_REQUIRE_EQUAL(ct.getInputDescriptors().size(), 1); - OCIO_CHECK_EQUAL(t.getInputDescriptors()[0], "input"); - OCIO_CHECK_EQUAL(ct.getInputDescriptors()[0], "input"); - - OCIO_REQUIRE_EQUAL(t.getOutputDescriptors().size(), 1); - OCIO_REQUIRE_EQUAL(ct.getOutputDescriptors().size(), 1); - OCIO_CHECK_EQUAL(t.getOutputDescriptors()[0], "output"); - OCIO_CHECK_EQUAL(ct.getOutputDescriptors()[0], "output"); - - + OCIO_REQUIRE_EQUAL(t.getInputDescriptors().size(), 2); + OCIO_REQUIRE_EQUAL(ct.getInputDescriptors().size(), 2); + OCIO_CHECK_EQUAL(t.getInputDescriptors()[0], "input 1"); + OCIO_CHECK_EQUAL(ct.getInputDescriptors()[1], "input 2"); + OCIO_REQUIRE_EQUAL(t.getOutputDescriptors().size(), 2); + OCIO_REQUIRE_EQUAL(ct.getOutputDescriptors().size(), 2); + OCIO_CHECK_EQUAL(t.getOutputDescriptors()[0], "output 1"); + OCIO_CHECK_EQUAL(ct.getOutputDescriptors()[1], "output 2"); } } diff --git a/tests/data/files/clf/smpte_only/broadcast_profile_lut33.clf b/tests/data/files/clf/smpte_only/broadcast_profile_lut33.clf index 072705e358..266a53e44b 100644 --- a/tests/data/files/clf/smpte_only/broadcast_profile_lut33.clf +++ b/tests/data/files/clf/smpte_only/broadcast_profile_lut33.clf @@ -2,8 +2,7 @@ + compCLFversion="ST2136-1:2024"> urn:uuid:a8f91bfa-b79f-5d4d-b750-a411c476bb47 diff --git a/tests/data/files/clf/smpte_only/illegal/process_list_higher_ns_version.clf b/tests/data/files/clf/smpte_only/illegal/process_list_higher_ns_version.clf new file mode 100644 index 0000000000..eeea9dc8c6 --- /dev/null +++ b/tests/data/files/clf/smpte_only/illegal/process_list_higher_ns_version.clf @@ -0,0 +1,11 @@ + + + The xmlns is newer than the max supported version. + + + 3.24000 -1.53700 -0.49850 +-0.96930 1.87600 0.04156 + 0.05560 -0.20400 1.05730 + + + \ No newline at end of file From 65fb7fb46931cd6c578bb83883477dc91c4f1cb4 Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Tue, 10 Feb 2026 16:36:12 -0800 Subject: [PATCH 23/25] - Make the descriptor parsers robust for receiving the strings in pieces. Signed-off-by: cuneyt.ozdas --- .../fileformats/ctf/CTFReaderHelper.h | 41 ++++++++++--------- 1 file changed, 22 insertions(+), 19 deletions(-) diff --git a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h index 840af06b77..bec6e97488 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h +++ b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.h @@ -175,25 +175,27 @@ class CTFReaderInputDescriptorElt : public XmlReaderPlainElt void start(const char ** /* atts */) override { + m_desc = {}; // Todo: collect language attr. } void end() override { + CTFReaderTransformElt* pTransform = + dynamic_cast(getParent().get()); + + auto & descs = pTransform->getTransform()->getInputDescriptors(); + descs.push_back(m_desc); } void setRawData(const char * str, size_t len, unsigned int /*xmlLine*/) override { - // TODO: do we want to support multi-line descriptors? - CTFReaderTransformElt* pTransform - = dynamic_cast(getParent().get()); - - auto & descs = pTransform->getTransform()->getInputDescriptors(); - descs.push_back(std::string(str, len)); - - // TODO: re-work the metaData handling in CTFReaderTransformPtr and add - // language attr + // This function can receive the text in small pieces, so keep adding to + // the string. + m_desc += std::string(str, len); } +private: + std::string m_desc; }; class CTFReaderOutputDescriptorElt : public XmlReaderPlainElt @@ -214,26 +216,27 @@ class CTFReaderOutputDescriptorElt : public XmlReaderPlainElt void start(const char ** /*atts*/ ) override { + m_desc = {}; // TODO: collect language attr. } void end() override { + CTFReaderTransformElt* pTransform = + dynamic_cast(getParent().get()); + + auto & descs = pTransform->getTransform()->getOutputDescriptors(); + descs.push_back(m_desc); } void setRawData(const char* str, size_t len, unsigned int /* xmlLine */) override { - // TODO: do we want to support multi-line descriptors? - - CTFReaderTransformElt* pTransform - = dynamic_cast(getParent().get()); - - auto & descs = pTransform->getTransform()->getOutputDescriptors(); - descs.push_back(std::string(str, len)); - - // TODO: re-work the metaData handling in CTFReaderTransformPtr and add - // language attr + // This function can receive the text in small pieces, so keep adding to + // the string. + m_desc += std::string(str, len); } +private: + std::string m_desc; }; class CTFReaderArrayElt : public XmlReaderPlainElt From 06aa892022f3bfbe54987690f7e4d37f20d6de34 Mon Sep 17 00:00:00 2001 From: "cuneyt.ozdas" Date: Tue, 10 Feb 2026 21:27:10 -0800 Subject: [PATCH 24/25] - Addressing the review comments. Signed-off-by: cuneyt.ozdas --- include/OpenColorIO/OpenColorTypes.h | 8 +- src/OpenColorIO/fileformats/FileFormatCTF.cpp | 2 - .../fileformats/ctf/CTFReaderHelper.cpp | 2 +- .../fileformats/ctf/CTFTransform.cpp | 1 - .../fileformats/ctf/CTFTransform.h | 4 +- src/OpenColorIO/transforms/GroupTransform.cpp | 3 - src/OpenColorIO/transforms/GroupTransform.h | 1 - tests/cpu/fileformats/FileFormatCTF_tests.cpp | 471 +++++++++--------- .../process_list_conflicting_versions.ctf | 12 + 9 files changed, 268 insertions(+), 236 deletions(-) create mode 100644 tests/data/files/process_list_conflicting_versions.ctf diff --git a/include/OpenColorIO/OpenColorTypes.h b/include/OpenColorIO/OpenColorTypes.h index b727d56e9a..39a181c467 100644 --- a/include/OpenColorIO/OpenColorTypes.h +++ b/include/OpenColorIO/OpenColorTypes.h @@ -977,8 +977,12 @@ extern OCIOEXPORT const char * METADATA_NAME; */ extern OCIOEXPORT const char * METADATA_ID; -// FIXME: Add Comment. -extern OCIOEXPORT const char * METADATA_ID_ELEMENT; +/** + * An ID when stored as an XML element rather than as an attribute. This is the + * preferred mechanism in the SMPTE ST 2036-1 version of the CLF format. If + * present, it is only available from the top-level FormatMetadata. + */ + extern OCIOEXPORT const char * METADATA_ID_ELEMENT; /*!rst:: Caches diff --git a/src/OpenColorIO/fileformats/FileFormatCTF.cpp b/src/OpenColorIO/fileformats/FileFormatCTF.cpp index 6615733251..775ac8ec2d 100644 --- a/src/OpenColorIO/fileformats/FileFormatCTF.cpp +++ b/src/OpenColorIO/fileformats/FileFormatCTF.cpp @@ -31,8 +31,6 @@ #include "HashUtils.h" - -// TODO: Add explanation of the SMPTE variant as well? /* This file format reader supports the Academy/ASC Common LUT Format (CLF) and diff --git a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp index ee26dd9a39..5c96bd7cc2 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFReaderHelper.cpp @@ -242,7 +242,7 @@ void CTFReaderTransformElt::start(const char ** atts) } else { - setVersion(requestedVersion); // TODO: do we care about this when SMPTE? + setVersion(requestedVersion); setCLFVersion(requestedCLFVersion); } } diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp index 3008cc3c7c..f34f0d88ba 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.cpp @@ -8,7 +8,6 @@ #include "fileformats/ctf/CTFReaderUtils.h" #include "fileformats/ctf/CTFTransform.h" #include "fileformats/xmlutils/XMLReaderUtils.h" -//#include "HashUtils.h" #include "ops/cdl/CDLOpData.h" #include "ops/exponent/ExponentOp.h" #include "ops/exposurecontrast/ExposureContrastOpData.h" diff --git a/src/OpenColorIO/fileformats/ctf/CTFTransform.h b/src/OpenColorIO/fileformats/ctf/CTFTransform.h index d12cc47c39..e4409ca410 100644 --- a/src/OpenColorIO/fileformats/ctf/CTFTransform.h +++ b/src/OpenColorIO/fileformats/ctf/CTFTransform.h @@ -90,12 +90,12 @@ class CTFVersion } private: - // CTF and CLF uses the numeric version system. + // CTF and Academy/ASC CLF uses the numeric version system. unsigned int m_major = 0; unsigned int m_minor = 0; unsigned int m_revision = 0; - // SMPTE standard uses non-numeric version system. + // SMPTE CLF uses a non-numeric xmlns version system. std::string m_version_string; }; diff --git a/src/OpenColorIO/transforms/GroupTransform.cpp b/src/OpenColorIO/transforms/GroupTransform.cpp index 98af92a08b..89ba45c267 100755 --- a/src/OpenColorIO/transforms/GroupTransform.cpp +++ b/src/OpenColorIO/transforms/GroupTransform.cpp @@ -10,7 +10,6 @@ #include "OpBuilders.h" #include "transforms/FileTransform.h" #include "transforms/GroupTransform.h" -#include "HashUtils.h" namespace OCIO_NAMESPACE @@ -104,13 +103,11 @@ TransformRcPtr & GroupTransformImpl::getTransform(int index) void GroupTransformImpl::appendTransform(TransformRcPtr transform) noexcept { - m_cacheID = {}; m_vec.push_back(transform); } void GroupTransformImpl::prependTransform(TransformRcPtr transform) noexcept { - m_cacheID = {}; m_vec.insert(m_vec.begin(), transform); } diff --git a/src/OpenColorIO/transforms/GroupTransform.h b/src/OpenColorIO/transforms/GroupTransform.h index 4830c6307d..038404088a 100644 --- a/src/OpenColorIO/transforms/GroupTransform.h +++ b/src/OpenColorIO/transforms/GroupTransform.h @@ -64,7 +64,6 @@ class GroupTransformImpl : public GroupTransform FormatMetadataImpl m_metadata; TransformDirection m_dir; TransformRcPtrVec m_vec; - std::string m_cacheID; }; } diff --git a/tests/cpu/fileformats/FileFormatCTF_tests.cpp b/tests/cpu/fileformats/FileFormatCTF_tests.cpp index a1435e1a4e..03402ab320 100644 --- a/tests/cpu/fileformats/FileFormatCTF_tests.cpp +++ b/tests/cpu/fileformats/FileFormatCTF_tests.cpp @@ -29,230 +29,6 @@ OCIO::LocalCachedFileRcPtr LoadCLFFile(const std::string & fileName) } } -// **************** NEW TESTS, MAY NEED MOVING AROUND ************** - -OCIO_ADD_TEST(FileFormatCTF, smpte_id_element) -{ - const std::string ctfFile("clf/bit_depth_identity.clf"); - OCIO::LocalCachedFileRcPtr cachedFile; - OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); - OCIO_REQUIRE_ASSERT((bool)cachedFile); - OCIO_CHECK_EQUAL(cachedFile->m_transform->getID(), "urn:uuid:9d768121-0cf9-40a3-a8e3-7b49f79858a7"); - OCIO_REQUIRE_EQUAL(cachedFile->m_transform->getDescriptions().size(), 2); - OCIO_CHECK_EQUAL(cachedFile->m_transform->getDescriptions()[0], - "Identity transform illustrating Array bit depth scaling"); - OCIO_CHECK_EQUAL(cachedFile->m_transform->getDescriptions()[1], - "Can be loaded by either SMPTE or CLF v3 parsers"); - - // Check the ops. - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); - OCIO_REQUIRE_EQUAL(opList.size(), 3); - - auto mat1 = OCIO::DynamicPtrCast(opList[0]); - OCIO_REQUIRE_ASSERT(mat1); - OCIO_CHECK_EQUAL(mat1->getFileInputBitDepth(), OCIO::BIT_DEPTH_UINT8); - OCIO_CHECK_EQUAL(mat1->getFileOutputBitDepth(), OCIO::BIT_DEPTH_UINT16); - - auto lut = OCIO::DynamicPtrCast(opList[1]); - OCIO_REQUIRE_ASSERT(lut); - OCIO_CHECK_EQUAL(lut->getFileOutputBitDepth(), OCIO::BIT_DEPTH_UINT16); - - auto mat2 = OCIO::DynamicPtrCast(opList[2]); - OCIO_REQUIRE_ASSERT(mat2); - OCIO_CHECK_EQUAL(mat2->getFileInputBitDepth(), OCIO::BIT_DEPTH_UINT16); - OCIO_CHECK_EQUAL(mat2->getFileOutputBitDepth(), OCIO::BIT_DEPTH_UINT16); - - // Check identity. - // Using float bit-depths returns a Range clamping at [0,1], due to the - // LUT1D. Thus setting arbitrary integer in and out depths to avoid the - // Range and allow isIdentity to be true. - OCIO::ConstProcessorRcPtr processor; - OCIO_CHECK_NO_THROW(processor = OCIO::GetFileTransformProcessor(ctfFile)); - OCIO_REQUIRE_ASSERT(processor); - auto procOpt = processor->getOptimizedCPUProcessor( - OCIO::BIT_DEPTH_UINT10, - OCIO::BIT_DEPTH_UINT12, - OCIO::OPTIMIZATION_DEFAULT); - OCIO_CHECK_ASSERT(procOpt->isIdentity()); - - // Check the Id element - OCIO::GroupTransformRcPtr group; - OCIO_CHECK_NO_THROW(group = processor->createGroupTransform()); - auto& meta = group->getFormatMetadata(); - OCIO_REQUIRE_ASSERT(meta.getNumChildrenElements() == 3); - auto& idElement = meta.getChildElement(0); - OCIO_CHECK_EQUAL(std::string(idElement.getElementName()), "Id"); - OCIO_CHECK_EQUAL(std::string(idElement.getElementValue()), "urn:uuid:9d768121-0cf9-40a3-a8e3-7b49f79858a7"); -} - -OCIO_ADD_TEST(FileFormatCTF, non_smpte_xmlns) -{ - const std::string ctfFile("clf/pre-smpte_only/process_list_v3_namespace.clf"); - OCIO::LocalCachedFileRcPtr cachedFile; - OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); - - // Check the op. - const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); - OCIO_REQUIRE_EQUAL(opList.size(), 1); - - auto mat = OCIO::DynamicPtrCast(opList[0]); - OCIO_REQUIRE_ASSERT(mat); - OCIO_CHECK_EQUAL(mat->getFileInputBitDepth(), OCIO::BIT_DEPTH_F32); - OCIO_CHECK_EQUAL(mat->getFileOutputBitDepth(), OCIO::BIT_DEPTH_F32); -} - -OCIO_ADD_TEST(FileFormatCTF, smpte_all_metadata) -{ - const std::string ctfFile("clf/smpte_only/broadcast_profile_lut33.clf"); - OCIO::ConstProcessorRcPtr processor; - OCIO_CHECK_NO_THROW(processor = OCIO::GetFileTransformProcessor(ctfFile)); - OCIO_REQUIRE_ASSERT(processor); - OCIO::GroupTransformRcPtr group; - OCIO_CHECK_NO_THROW(group = processor->createGroupTransform()); - OCIO_REQUIRE_ASSERT(group); - - const auto & md = dynamic_cast(group->getFormatMetadata()); - OCIO_REQUIRE_EQUAL(md.getNumAttributes(), 1); - - // Attributes (xmlns:clfbp is ignored, xmlns becomes version) - OCIO_CHECK_EQUAL(std::string(md.getAttributeName(0)), "name"); - OCIO_CHECK_EQUAL(std::string(md.getAttributeValue(0)), "SMPTE Example Live Broadcast LUT33 Profile"); - - // TODO: Also needs to have xmlns:clfbp in the attr list. - - // Child elements (language attributes are currently ignored) - auto & items = md.getChildrenElements(); - OCIO_REQUIRE_EQUAL(items.size(), 9); - OCIO_CHECK_EQUAL(std::string(items[0].getElementName()), "Id"); - OCIO_CHECK_EQUAL(std::string(items[0].getElementValue()), "urn:uuid:a8f91bfa-b79f-5d4d-b750-a411c476bb47"); - - OCIO_CHECK_EQUAL(std::string(items[1].getElementName()), "Description"); - OCIO_CHECK_EQUAL(std::string(items[1].getElementValue()), "Demo Advanced LUT with dummy values"); - - OCIO_CHECK_EQUAL(std::string(items[2].getElementName()), "Description"); - OCIO_CHECK_EQUAL(std::string(items[2].getElementValue()), "Démonstration d'une LUT avancée avec des valeurs factices"); - - OCIO_CHECK_EQUAL(std::string(items[3].getElementName()), "Description"); - OCIO_CHECK_EQUAL(std::string(items[3].getElementValue()), "Demo Erweiterte LUT mit Dummy-Werten"); - - OCIO_CHECK_EQUAL(std::string(items[4].getElementName()), "InputDescriptor"); - OCIO_CHECK_EQUAL(std::string(items[4].getElementValue()), "ITU-R BT.709"); - - OCIO_CHECK_EQUAL(std::string(items[5].getElementName()), "OutputDescriptor"); - OCIO_CHECK_EQUAL(std::string(items[5].getElementValue()), "Same as Input"); - - OCIO_CHECK_EQUAL(std::string(items[6].getElementName()), "OutputDescriptor"); - OCIO_CHECK_EQUAL(std::string(items[6].getElementValue()), "Identique à l'entrée"); - - OCIO_CHECK_EQUAL(std::string(items[7].getElementName()), "OutputDescriptor"); - OCIO_CHECK_EQUAL(std::string(items[7].getElementValue()), "Gleiches wie Eingabe"); - - OCIO_CHECK_EQUAL(std::string(items[8].getElementName()), "Info"); - OCIO_CHECK_EQUAL(std::string(items[8].getElementValue()), ""); - - // Info block (name spaces are retained) - auto & info = items[8].getChildrenElements(); - OCIO_REQUIRE_EQUAL(info.size(), 9); - OCIO_CHECK_EQUAL(std::string(info[0].getElementName()), "Profile"); - OCIO_CHECK_EQUAL(std::string(info[0].getElementValue()), "http://www.smpte-ra.org/ns/2136-10/2026#Live_Broadcast_LUT33"); - - OCIO_CHECK_EQUAL(std::string(info[1].getElementName()), "AppRelease"); - OCIO_CHECK_EQUAL(std::string(info[1].getElementValue()), "SMPTE_2136-10_Example"); - - OCIO_CHECK_EQUAL(std::string(info[2].getElementName()), "Copyright"); - OCIO_CHECK_EQUAL(std::string(info[2].getElementValue()), "OCIO contributors"); - - OCIO_CHECK_EQUAL(std::string(info[3].getElementName()), "Revision"); - OCIO_CHECK_EQUAL(std::string(info[3].getElementValue()), "1.0"); - - OCIO_CHECK_EQUAL(std::string(info[4].getElementName()), "clfbp:InputCharacteristics"); - OCIO_CHECK_EQUAL(std::string(info[4].getElementValue()), ""); - - OCIO_CHECK_EQUAL(std::string(info[5].getElementName()), "clfbp:OutputCharacteristics"); - OCIO_CHECK_EQUAL(std::string(info[5].getElementValue()), ""); - - OCIO_CHECK_EQUAL(std::string(info[6].getElementName()), "clfbp:OutputVideoSignalClipping"); - OCIO_CHECK_EQUAL(std::string(info[6].getElementValue()), "sdiClip"); - - OCIO_CHECK_EQUAL(std::string(info[7].getElementName()), "Keywords"); - OCIO_CHECK_EQUAL(std::string(info[7].getElementValue()), "Test, Display-light"); - - OCIO_CHECK_EQUAL(std::string(info[8].getElementName()), "clfbp:ContactEmail"); - OCIO_CHECK_EQUAL(std::string(info[8].getElementValue()), "fake-email@ocio.org"); - - // Info / InputCharacteristics - auto & input = info[4].getChildrenElements(); - OCIO_REQUIRE_EQUAL(input.size(), 3); - OCIO_CHECK_EQUAL(std::string(input[0].getElementName()), "clfbp:ColorPrimaries"); - OCIO_CHECK_EQUAL(std::string(input[0].getElementValue()), "ColorPrimaries_ITU709"); - - OCIO_CHECK_EQUAL(std::string(input[1].getElementName()), "clfbp:TransferCharacteristic"); - OCIO_CHECK_EQUAL(std::string(input[1].getElementValue()), "TransferCharacteristic_ITU709"); - - OCIO_CHECK_EQUAL(std::string(input[2].getElementName()), "clfbp:CodingEquations"); - OCIO_CHECK_EQUAL(std::string(input[2].getElementValue()), "CodingEquations_ITU709"); - - // Info / OutputCharacteristics - auto & output = info[5].getChildrenElements(); - OCIO_REQUIRE_EQUAL(output.size(), 3); - OCIO_CHECK_EQUAL(std::string(output[0].getElementName()), "clfbp:ColorPrimaries"); - OCIO_CHECK_EQUAL(std::string(output[0].getElementValue()), "ColorPrimaries_ITU2020"); - - OCIO_CHECK_EQUAL(std::string(output[1].getElementName()), "clfbp:TransferCharacteristic"); - OCIO_CHECK_EQUAL(std::string(output[1].getElementValue()), "TransferCharacteristic_SMPTEST2084"); - - OCIO_CHECK_EQUAL(std::string(output[2].getElementName()), "clfbp:CodingEquations"); - OCIO_CHECK_EQUAL(std::string(output[2].getElementValue()), "CodingEquations_ITU2100_ICtCp"); - - // Check writing retains the namespaces and attributes -} - -OCIO_ADD_TEST(FileFormatCTF, smpte_namespaces) -{ - const std::string ctfFile("clf/smpte_only/namespaces.clf"); - OCIO::LocalCachedFileRcPtr cachedFile; - - // TODO: If the CTFTrasform is compiled with STRIP_NAMESPACES set to true - // this will load with few warnings. Is that good enough? - OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); - -} - -OCIO_ADD_TEST(FileFormatCTF, smpte_id_bad_value) -{ - const std::string ctfFile("clf/smpte_only/illegal/id_bad_value.clf"); - - // Add a log guard to catch warnings. - OCIO::LogGuard guard; - OCIO::SetLoggingLevel(OCIO::LOGGING_LEVEL_WARNING); - - OCIO::LocalCachedFileRcPtr cachedFile; - OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); - OCIO_REQUIRE_ASSERT((bool)cachedFile); - - // Check the expected warning. - static constexpr char Warning[1024] = - "id_bad_value.clf(3): '3bae2da8' is not a SMPTE ST 2136-1 compliant Id value."; - OCIO_CHECK_NE(std::string::npos, - StringUtils::Find( StringUtils::RightTrim(guard.output()), Warning )); -} - -OCIO_ADD_TEST(FileFormatCTF, smpte_conflicting_version) -{ - const std::string ctfFile("clf/smpte_only/illegal/process_list_higher_ns_version.clf"); - - OCIO::LocalCachedFileRcPtr cachedFile; - OCIO_CHECK_THROW_WHAT(cachedFile = LoadCLFFile(ctfFile), - OCIO::Exception, - "No valid 'version', 'compCLFversion', or 'xmlns' attributes " - "were found; at least one of them is required."); -} - -// ***************************************************************** - - - - OCIO_ADD_TEST(FileFormatCTF, missing_file) { // Test LoadCLFFile helper function with missing file. @@ -1484,6 +1260,77 @@ OCIO_ADD_TEST(FileFormatCTF, check_utf8) } +OCIO_ADD_TEST(FileFormatCTF, smpte_id_element) +{ + const std::string ctfFile("clf/bit_depth_identity.clf"); + OCIO::LocalCachedFileRcPtr cachedFile; + OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); + OCIO_REQUIRE_ASSERT((bool)cachedFile); + OCIO_CHECK_EQUAL(cachedFile->m_transform->getID(), "urn:uuid:9d768121-0cf9-40a3-a8e3-7b49f79858a7"); + OCIO_REQUIRE_EQUAL(cachedFile->m_transform->getDescriptions().size(), 2); + OCIO_CHECK_EQUAL(cachedFile->m_transform->getDescriptions()[0], + "Identity transform illustrating Array bit depth scaling"); + OCIO_CHECK_EQUAL(cachedFile->m_transform->getDescriptions()[1], + "Can be loaded by either SMPTE or CLF v3 parsers"); + + // Check the ops. + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); + OCIO_REQUIRE_EQUAL(opList.size(), 3); + + auto mat1 = OCIO::DynamicPtrCast(opList[0]); + OCIO_REQUIRE_ASSERT(mat1); + OCIO_CHECK_EQUAL(mat1->getFileInputBitDepth(), OCIO::BIT_DEPTH_UINT8); + OCIO_CHECK_EQUAL(mat1->getFileOutputBitDepth(), OCIO::BIT_DEPTH_UINT16); + + auto lut = OCIO::DynamicPtrCast(opList[1]); + OCIO_REQUIRE_ASSERT(lut); + OCIO_CHECK_EQUAL(lut->getFileOutputBitDepth(), OCIO::BIT_DEPTH_UINT16); + + auto mat2 = OCIO::DynamicPtrCast(opList[2]); + OCIO_REQUIRE_ASSERT(mat2); + OCIO_CHECK_EQUAL(mat2->getFileInputBitDepth(), OCIO::BIT_DEPTH_UINT16); + OCIO_CHECK_EQUAL(mat2->getFileOutputBitDepth(), OCIO::BIT_DEPTH_UINT16); + + // Check identity. + // Using float bit-depths returns a Range clamping at [0,1], due to the + // LUT1D. Thus setting arbitrary integer in and out depths to avoid the + // Range and allow isIdentity to be true. + OCIO::ConstProcessorRcPtr processor; + OCIO_CHECK_NO_THROW(processor = OCIO::GetFileTransformProcessor(ctfFile)); + OCIO_REQUIRE_ASSERT(processor); + auto procOpt = processor->getOptimizedCPUProcessor( + OCIO::BIT_DEPTH_UINT10, + OCIO::BIT_DEPTH_UINT12, + OCIO::OPTIMIZATION_DEFAULT); + OCIO_CHECK_ASSERT(procOpt->isIdentity()); + + // Check the Id element + auto& meta = processor->getFormatMetadata(); + OCIO_REQUIRE_ASSERT(meta.getNumChildrenElements() == 3); + auto& idElement = meta.getChildElement(0); + OCIO_CHECK_EQUAL(std::string(idElement.getElementName()), "Id"); + OCIO_CHECK_EQUAL(std::string(idElement.getElementValue()), "urn:uuid:9d768121-0cf9-40a3-a8e3-7b49f79858a7"); +} + +OCIO_ADD_TEST(FileFormatCTF, smpte_id_bad_value) +{ + const std::string ctfFile("clf/smpte_only/illegal/id_bad_value.clf"); + + // Add a log guard to catch warnings. + OCIO::LogGuard guard; + OCIO::SetLoggingLevel(OCIO::LOGGING_LEVEL_WARNING); + + OCIO::LocalCachedFileRcPtr cachedFile; + OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); + OCIO_REQUIRE_ASSERT((bool)cachedFile); + + // Check the expected warning. + static constexpr char Warning[1024] = + "id_bad_value.clf(3): '3bae2da8' is not a SMPTE ST 2136-1 compliant Id value."; + OCIO_CHECK_NE(std::string::npos, + StringUtils::Find( StringUtils::RightTrim(guard.output()), Warning )); +} + OCIO_ADD_TEST(FileFormatCTF, info_example) { OCIO::LocalCachedFileRcPtr cachedFile; @@ -1576,6 +1423,145 @@ OCIO_ADD_TEST(FileFormatCTF, info_example) OCIO_CHECK_EQUAL(std::string(ocItems[2].getElementValue()), "1"); } +OCIO_ADD_TEST(FileFormatCTF, smpte_all_metadata) +{ + const std::string ctfFile("clf/smpte_only/broadcast_profile_lut33.clf"); + OCIO::ConstProcessorRcPtr processor; + OCIO_CHECK_NO_THROW(processor = OCIO::GetFileTransformProcessor(ctfFile)); + OCIO_REQUIRE_ASSERT(processor); + + const auto & md = dynamic_cast + (processor->getFormatMetadata()); + OCIO_REQUIRE_EQUAL(md.getNumAttributes(), 1); + + // Attributes (xmlns:clfbp is ignored, xmlns becomes version) + OCIO_CHECK_EQUAL(std::string(md.getAttributeName(0)), "name"); + OCIO_CHECK_EQUAL(std::string(md.getAttributeValue(0)), "SMPTE Example Live Broadcast LUT33 Profile"); + + // TODO: Also needs to have xmlns:clfbp in the attr list. + + // Child elements (language attributes are currently ignored) + auto & items = md.getChildrenElements(); + OCIO_REQUIRE_EQUAL(items.size(), 9); + OCIO_CHECK_EQUAL(std::string(items[0].getElementName()), "Id"); + OCIO_CHECK_EQUAL(std::string(items[0].getElementValue()), "urn:uuid:a8f91bfa-b79f-5d4d-b750-a411c476bb47"); + + OCIO_CHECK_EQUAL(std::string(items[1].getElementName()), "Description"); + OCIO_CHECK_EQUAL(std::string(items[1].getElementValue()), "Demo Advanced LUT with dummy values"); + + OCIO_CHECK_EQUAL(std::string(items[2].getElementName()), "Description"); + OCIO_CHECK_EQUAL(std::string(items[2].getElementValue()), "Démonstration d'une LUT avancée avec des valeurs factices"); + + OCIO_CHECK_EQUAL(std::string(items[3].getElementName()), "Description"); + OCIO_CHECK_EQUAL(std::string(items[3].getElementValue()), "Demo Erweiterte LUT mit Dummy-Werten"); + + OCIO_CHECK_EQUAL(std::string(items[4].getElementName()), "InputDescriptor"); + OCIO_CHECK_EQUAL(std::string(items[4].getElementValue()), "ITU-R BT.709"); + + OCIO_CHECK_EQUAL(std::string(items[5].getElementName()), "OutputDescriptor"); + OCIO_CHECK_EQUAL(std::string(items[5].getElementValue()), "Same as Input"); + + OCIO_CHECK_EQUAL(std::string(items[6].getElementName()), "OutputDescriptor"); + OCIO_CHECK_EQUAL(std::string(items[6].getElementValue()), "Identique à l'entrée"); + + OCIO_CHECK_EQUAL(std::string(items[7].getElementName()), "OutputDescriptor"); + OCIO_CHECK_EQUAL(std::string(items[7].getElementValue()), "Gleiches wie Eingabe"); + + OCIO_CHECK_EQUAL(std::string(items[8].getElementName()), "Info"); + OCIO_CHECK_EQUAL(std::string(items[8].getElementValue()), ""); + + // Info block (name spaces are retained) + auto & info = items[8].getChildrenElements(); + OCIO_REQUIRE_EQUAL(info.size(), 9); + OCIO_CHECK_EQUAL(std::string(info[0].getElementName()), "Profile"); + OCIO_CHECK_EQUAL(std::string(info[0].getElementValue()), "http://www.smpte-ra.org/ns/2136-10/2026#Live_Broadcast_LUT33"); + + OCIO_CHECK_EQUAL(std::string(info[1].getElementName()), "AppRelease"); + OCIO_CHECK_EQUAL(std::string(info[1].getElementValue()), "SMPTE_2136-10_Example"); + + OCIO_CHECK_EQUAL(std::string(info[2].getElementName()), "Copyright"); + OCIO_CHECK_EQUAL(std::string(info[2].getElementValue()), "OCIO contributors"); + + OCIO_CHECK_EQUAL(std::string(info[3].getElementName()), "Revision"); + OCIO_CHECK_EQUAL(std::string(info[3].getElementValue()), "1.0"); + + OCIO_CHECK_EQUAL(std::string(info[4].getElementName()), "clfbp:InputCharacteristics"); + OCIO_CHECK_EQUAL(std::string(info[4].getElementValue()), ""); + + OCIO_CHECK_EQUAL(std::string(info[5].getElementName()), "clfbp:OutputCharacteristics"); + OCIO_CHECK_EQUAL(std::string(info[5].getElementValue()), ""); + + OCIO_CHECK_EQUAL(std::string(info[6].getElementName()), "clfbp:OutputVideoSignalClipping"); + OCIO_CHECK_EQUAL(std::string(info[6].getElementValue()), "sdiClip"); + + OCIO_CHECK_EQUAL(std::string(info[7].getElementName()), "Keywords"); + OCIO_CHECK_EQUAL(std::string(info[7].getElementValue()), "Test, Display-light"); + + OCIO_CHECK_EQUAL(std::string(info[8].getElementName()), "clfbp:ContactEmail"); + OCIO_CHECK_EQUAL(std::string(info[8].getElementValue()), "fake-email@ocio.org"); + + // Info / InputCharacteristics + auto & input = info[4].getChildrenElements(); + OCIO_REQUIRE_EQUAL(input.size(), 3); + OCIO_CHECK_EQUAL(std::string(input[0].getElementName()), "clfbp:ColorPrimaries"); + OCIO_CHECK_EQUAL(std::string(input[0].getElementValue()), "ColorPrimaries_ITU709"); + + OCIO_CHECK_EQUAL(std::string(input[1].getElementName()), "clfbp:TransferCharacteristic"); + OCIO_CHECK_EQUAL(std::string(input[1].getElementValue()), "TransferCharacteristic_ITU709"); + + OCIO_CHECK_EQUAL(std::string(input[2].getElementName()), "clfbp:CodingEquations"); + OCIO_CHECK_EQUAL(std::string(input[2].getElementValue()), "CodingEquations_ITU709"); + + // Info / OutputCharacteristics + auto & output = info[5].getChildrenElements(); + OCIO_REQUIRE_EQUAL(output.size(), 3); + OCIO_CHECK_EQUAL(std::string(output[0].getElementName()), "clfbp:ColorPrimaries"); + OCIO_CHECK_EQUAL(std::string(output[0].getElementValue()), "ColorPrimaries_ITU2020"); + + OCIO_CHECK_EQUAL(std::string(output[1].getElementName()), "clfbp:TransferCharacteristic"); + OCIO_CHECK_EQUAL(std::string(output[1].getElementValue()), "TransferCharacteristic_SMPTEST2084"); + + OCIO_CHECK_EQUAL(std::string(output[2].getElementName()), "clfbp:CodingEquations"); + OCIO_CHECK_EQUAL(std::string(output[2].getElementValue()), "CodingEquations_ITU2100_ICtCp"); + + // TODO: Check writing retains the name spaces and attributes. +} + +OCIO_ADD_TEST(FileFormatCTF, smpte_namespaces) +{ + const std::string ctfFile("clf/smpte_only/namespaces.clf"); + + OCIO::LocalCachedFileRcPtr cachedFile; + OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); + + // Check the op. + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); + OCIO_REQUIRE_EQUAL(opList.size(), 1); + + auto lut1d = OCIO::DynamicPtrCast(opList[0]); + OCIO_CHECK_ASSERT(lut1d); + + // Check the meta data. + OCIO::ConstProcessorRcPtr processor; + OCIO_CHECK_NO_THROW(processor = OCIO::GetFileTransformProcessor(ctfFile)); + OCIO_REQUIRE_ASSERT(processor); + const auto& md = processor->getFormatMetadata(); + + // Attributes. + OCIO_REQUIRE_EQUAL(md.getNumAttributes(), 1); + OCIO_CHECK_EQUAL(std::string(md.getAttributeName(0)), "id"); + OCIO_CHECK_EQUAL(std::string(md.getAttributeValue(0)),"pl1"); + + // Name-spaced description will be available without the namespace prefix. + OCIO_REQUIRE_EQUAL(md.getNumChildrenElements(), 1); + const auto& desc = md.getChildElement(0); + OCIO_CHECK_EQUAL(std::string(desc.getElementName()), "Description"); + OCIO_CHECK_EQUAL(std::string(desc.getElementValue()),"Example CLF file using namespaces."); + + // TODO: this test generates warnings for non-defaults xmlns attribs. Those + // will be collected as attributes in the future. +} + OCIO_ADD_TEST(FileFormatCTF, difficult_syntax) { // This file contains a lot of unusual (but still legal) ways of writing the XML. @@ -1944,6 +1930,22 @@ OCIO_ADD_TEST(FileFormatCTF, process_list_valid_version) OCIO_CHECK_EQUAL(ctfVersion, OCIO::CTF_PROCESS_LIST_VERSION_1_4); } +OCIO_ADD_TEST(FileFormatCTF, non_smpte_xmlns) +{ + const std::string ctfFile("clf/pre-smpte_only/process_list_v3_namespace.clf"); + OCIO::LocalCachedFileRcPtr cachedFile; + OCIO_CHECK_NO_THROW(cachedFile = LoadCLFFile(ctfFile)); + + // Check the op. + const OCIO::ConstOpDataVec & opList = cachedFile->m_transform->getOpDataVec(); + OCIO_REQUIRE_EQUAL(opList.size(), 1); + + auto mat = OCIO::DynamicPtrCast(opList[0]); + OCIO_REQUIRE_ASSERT(mat); + OCIO_CHECK_EQUAL(mat->getFileInputBitDepth(), OCIO::BIT_DEPTH_F32); + OCIO_CHECK_EQUAL(mat->getFileOutputBitDepth(), OCIO::BIT_DEPTH_F32); +} + OCIO_ADD_TEST(FileFormatCTF, process_list_higher_version) { const std::string ctfFile("process_list_higher_version.ctf"); @@ -1987,6 +1989,27 @@ OCIO_ADD_TEST(FileFormatCTF, process_list_no_version) OCIO_CHECK_EQUAL(ctfVersion, OCIO::CTF_PROCESS_LIST_VERSION_1_2); } +OCIO_ADD_TEST(FileFormatCTF, smpte_conflicting_version) +{ + const std::string ctfFile("process_list_conflicting_versions.ctf"); + + OCIO::LocalCachedFileRcPtr cachedFile; + OCIO_CHECK_THROW_WHAT(cachedFile = LoadCLFFile(ctfFile), + OCIO::Exception, + "SMPTE 'xmlns' version and 'Version' attribute cannot both be present.") +} + +OCIO_ADD_TEST(FileFormatCTF, smpte_higher_ns_version) +{ + const std::string ctfFile("clf/smpte_only/illegal/process_list_higher_ns_version.clf"); + + OCIO::LocalCachedFileRcPtr cachedFile; + OCIO_CHECK_THROW_WHAT(cachedFile = LoadCLFFile(ctfFile), + OCIO::Exception, + "No valid 'version', 'compCLFversion', or 'xmlns' attributes " + "were found; at least one of them is required."); +} + OCIO_ADD_TEST(FileFormatCTF, info_element_version_test) { // VALID - No Version. diff --git a/tests/data/files/process_list_conflicting_versions.ctf b/tests/data/files/process_list_conflicting_versions.ctf new file mode 100644 index 0000000000..820cf40430 --- /dev/null +++ b/tests/data/files/process_list_conflicting_versions.ctf @@ -0,0 +1,12 @@ + + + Not allowed to use the CLF / ST 2136-1 namespace in a CTF file. + + XYZ to sRGB matrix + + 3.24000 -1.53700 -0.49850 +-0.96930 1.87600 0.04156 + 0.05560 -0.20400 1.05730 + + + From c5e444f4b1ac6bea07354994d543bb4638b3c154 Mon Sep 17 00:00:00 2001 From: ozdasc Date: Tue, 10 Feb 2026 21:55:12 -0800 Subject: [PATCH 25/25] Trying to change the line endings of this file back to CRLF Signed-off-by: ozdasc --- tests/data/files/clf/matrix_windows.clf | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/tests/data/files/clf/matrix_windows.clf b/tests/data/files/clf/matrix_windows.clf index 6dc1569b93..5a80b60e6a 100644 --- a/tests/data/files/clf/matrix_windows.clf +++ b/tests/data/files/clf/matrix_windows.clf @@ -1,11 +1,11 @@ - - This file has Windows line-endings. - Also, the file does not start with a ?xml header. - - -4095 0 0 -0 4095 0 -0 0 4095 - - - + + This file has Windows line-endings. + Also, the file does not start with a ?xml header. + + +4095 0 0 +0 4095 0 +0 0 4095 + + +