# Path: latin/LatinObject.py
# class LatinObject:
#     def __init__(self):
#         self.negated = False
# 
#     def detail(self):
#         return '[NOT IMPLEMENTED]'
# 
#     def surface_utf8(self):
#         return self.surface.encode('utf-8')
# 
#     def translate(self):
#         return ('*', False)


from latin.LatinObject import LatinObject
#!/usr/bin/env python
# -*- coding: utf-8 -*-


def uniq(s):
    return [x for x in set(s)]

def non_genitive(_):
    return 'Gen' not in [x[0] for x in _] if _ else False

def case_intersection(_s):
    cases_x = ['Nom','Voc','Acc','Gen','Dat','Abl','Loc']
    genders_x = []
    for _ in _s: # あとでreduceで書く
        cases = [x[0] for x in _]

# Path: latin/LatinObject.py
# class LatinObject:
#     def __init__(self):
#         self.negated = False
# 
#     def detail(self):
#         return '[NOT IMPLEMENTED]'
# 
#     def surface_utf8(self):
#         return self.surface.encode('utf-8')
# 
#     def translate(self):
#         return ('*', False)


# Path: latin/AndOr.py
from latin.LatinObject import LatinObject

#!/usr/bin/env python
# -*- coding: utf-8 -*-


def uniq(s):
    return [x for x in set(s)]

def non_genitive(_):
    return 'Gen' not in [x[0] for x in _] if _ else False

def case_intersection(_s):
    cases_x = ['Nom','Voc','Acc','Gen','Dat','Abl','Loc']
    genders_x = []
    for _ in _s: # あとでreduceで書く
        cases = [x[0] for x in _]

        genders = uniq([x[2] for x in _])