<test>
    <substitutions>
        <substitution>
            <name>func</name>
            <values>
                <value>greatCircleDistance</value>
                <value>greatCircleAngle</value>
                <value>geoDistance</value>
           </values>
        </substitution>
    </substitutions>

    <!-- lon [-180; 180], lat [-90; 90] -->
    <query>SELECT count() FROM numbers(10000000) WHERE NOT ignore({func}((rand(1) % 360) * 1. - 180, (number % 150) * 1.2 - 90, (number % 360) + toFloat64(rand(2)) / 4294967296 - 180, (rand(3) % 180) * 1. - 90))</query>
    <!-- 55.755830, 37.617780 is center of Moscow -->
    <query>SELECT count() FROM zeros(100000000) WHERE NOT ignore({func}(55. + toFloat64(rand(1)) / 4294967296, 37. + toFloat64(rand(2)) / 4294967296, 55. + toFloat64(rand(3)) / 4294967296, 37. + toFloat64(rand(4)) / 4294967296))</query>
</test>