public static function getSpecificationString($reversed = false)
    {
        $reflection = new ReflectionClass(get_class());
        $constants = $reflection->getConstants();

        if ($reversed) {
            $constants = array_reverse($constants);
        }

        $string = '';

        foreach ($constants as $name => $int_val) {
            $binary_val_string = base_convert((string) $int_val, '10', '2');

            $string .= sprintf(
                '0b%s : %s',
                str_pad($binary_val_string, 32, '0', STR_PAD_LEFT),
                $name
            );

            $string .= PHP_EOL;
        }

        return $string;
    }