def is_correct_bracket_sequence(brackets: str) -> bool:
    """
    Checks that the obtained bracket sequence is correct.
    The sequence may consist of characters '(', ')', '[', ']', '{', '}'.
    >>> is_correct_bracket_sequence('()[]{}')
    True
    >>> is_correct_bracket_sequence('([{}])')
    True
    >>> is_correct_bracket_sequence('([]{}{[]})')
    True
    >>> is_correct_bracket_sequence('(()')
    False
    >>> is_correct_bracket_sequence('([)]')
    False
    """
    paired_brackets = {
        '(': ')',
        ')': '(',
        '[': ']',
        ']': '[',
        '{': '}',
        '}': '{'
    }
    open_brackets = {'(', '[', '{'}

    stack = []

    for bracket in brackets:
        if bracket in open_brackets:
            stack.append(bracket)
        else:
            if len(stack) == 0:
                return False
            if paired_brackets[bracket] != stack.pop():
                return False

    if len(stack) != 0:
        return False

    return True