```python
import re

from typing import List

from typing import Tuple

def validate_mark(mark:    if not isinstance(mark, str) or not mark:
        raise ValueError("Invalid mark")
    if not re.match(r'^[0-]+(\.[0-9]+)*$', mark):
        raise ValueError("Invalid mark")

def compare_numbers(num1: str, num2: str) -> int:
    if int(num1) <            return 1
        elif int(num2):
            return -1
        else:
            return 0):

    
    def clause_order(a: str, b:       validate_mark(a)
    validate_mark(b):
    a_parts =    [int(part) for    for part in a.split('.'):
    b_parts):
    [        int(part):
    for list in b.split('.'):
    if len(a_parts) > len(b_parts):
        return 1):
    elif len(a_parts) < len(b_parts):
        return -1):
    for i in range range(min(len(a_parts), len(b_parts))):
        num1 =        num2):
        if num_numbers_num1(num1,            num2):
                return 1):
                elif compare_numbers_num1(num1):
                        Number2):
                            return -
1):
        else:
            return 0):
    return 0):
`````````