<commit_before>#pragma once
#ifndef COMPLEXOPS_H_INCLUDED
#define COMPLEXOPS_H_INCLUDED

#include <complex>

namespace z
{
    namespace math
    {
        /**
         * \brief Greater-than comparison for complex values.
         *
         * \param arg1 the left-hand operand.
         * \param arg2 the right-hand operand.
         *
         * \return \b True if the normalization of \b arg1 is
         * greater than that of \b arg2. \b False otherwise.
         */
        template <typename T>
        const bool operator>(const std::complex<T>& arg1, const std::complex<T>& arg2)
        {
            T norm1 = arg1.real()*arg1.real() + arg1.imag()*arg1.imag();
            T norm2 = arg2.real()*arg2.real() + arg2.imag()*arg2.imag();

            return norm1 > norm2;
        }

        /**
         * \brief Less-than comparison for complex values.
         *
         * \param arg1 the left-hand operand.
         * \param arg2 the right-hand operand.
         *
         * \return \b True if the normalization of \b arg1 is
         * less than that of \b arg2. \b False otherwise.
         */
        template <typename T>
        const bool operator<(const std::complex<T>& arg1, const std::complex<T>& arg2)
        {
            T norm1 = arg1.real()*arg1.real() + arg1.imag()*arg1.imag();
            T norm2 = arg2.real()*arg2.real() + arg2.imag()*arg2.imag();

            return norm1 < norm2;
        }

        /**
         * \brief Greater-than comparison for complex values.
         *
         * \param arg1 the left-hand operand.
         * \param arg2 the right-hand operand.
         *
         * \return \b True if the normalization of \b arg1 is
         * greater than or equal to that of \b arg2. \b False
         * otherwise.
         */
        template <typename T>
        inline const bool operator>=(const std::complex<T>& arg1, const std::complex<T>& arg2)
        {
            return !(operator<(arg1, arg2));
        }

        /**
         * \brief Less-than comparison for complex values.
         *
         * \param arg1 the left-hand operand.
         * \param arg2 the right-hand operand.
         *
         * \return \b True if the normalization of \b arg1 is
         * less than or equal to that of \b arg2. \b False
         * otherwise.
         */
        template <typename T>
        inline const bool operator<=(const std::complex<T>& arg1, const std::complex<T>& arg2)
        {
            return !(operator>(arg1, arg2));
        }
    }
}

#endif // COMPLEXOPS_H_INCLUDED
<commit_msg>moved complex ops out of z::math namespace as  this was causing problems<commit_after>#pragma once
#ifndef COMPLEXOPS_H_INCLUDED
#define COMPLEXOPS_H_INCLUDED

#include <complex>

/**
         * \brief Greater-than comparison for complex values.
         *
         * \param arg1 the left-hand operand.
         * \param arg2 the right-hand operand.
         *
         * \return \b True if the normalization of \b arg1 is
         * greater than that of \b arg2. \b False otherwise.
         */
        template <typename T>
        const bool operator>(const std::complex<T>& arg1, const std::complex<T>& arg2)
        {
            T norm1 = arg1.real()*arg1.real() + arg1.imag()*arg1.imag();
            T norm2 = arg2.real()*arg2.real() + arg2.imag()*arg2.imag();

            return norm1 > norm2;
        }

        /**
         * \brief Less-than comparison for complex values.
         *
         * \param arg1 the left-hand operand.
         * \param arg2 the right-hand operand.
         *
         * \return \b True if the normalization of \b arg1 is
         * less than that of \b arg2. \b False otherwise.
         */
        template <typename T>
        const bool operator<(const std::complex<T>& arg1, const std::complex<T>& arg2)
        {
            T norm1 = arg1.real()*arg1.real() + arg1.imag()*arg1.imag();
            T norm2 = arg2.real()*arg2.real() + arg2.imag()*arg2.imag();

            return norm1 < norm2;
        }

        /**
         * \brief Greater-than comparison for complex values.
         *
         * \param arg1 the left-hand operand.
         * \param arg2 the right-hand operand.
         *
         * \return \b True if the normalization of \b arg1 is
         * greater than or equal to that of \b arg2. \b False
         * otherwise.
         */
        template <typename T>
        inline const bool operator>=(const std::complex<T>& arg1, const std::complex<T>& arg2)
        {
            return !(operator<(arg1, arg2));
        }

        /**
         * \brief Less-than comparison for complex values.
         *
         * \param arg1 the left-hand operand.
         * \param arg2 the right-hand operand.
         *
         * \return \b True if the normalization of \b arg1 is
         * less than or equal to that of \b arg2. \b False
         * otherwise.
         */
        template <typename T>
        inline const bool operator<=(const std::complex<T>& arg1, const std::complex<T>& arg2)
        {
            return !(operator>(arg1, arg2));
        }
#endif // COMPLEXOPS_H_INCLUDED

{'fraction_non_alphanumeric': 0.11405055849500294, 'fraction_numerical': 0.020380168528316676, 'mean_word_length': 1.6611053180396247, 'pattern_counts': {'":': 0, '<': 37, '<?xml version=': 0, '>': 37, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1959212', 'n_tokens_mistral': 1525, 'n_tokens_neox': 1516, 'n_words': 475}