try:
        int(x)
        return x
    except ValueError:
        if(x in number_dic.keys()):
            return number_dic[x]
        else:
            return "";

def make_nice(text):
    text = [replace_int(x) for x in text.split('_') if replace_int(x) != ""]
    return(" ".join(text))

ppdensity_grammar = "PPDENSITY: {<CD>+<PPUNIT><PER><AREA>+}"

hasPopulationDensity = relation('hasPopulationDensity' , 'GPE' , 'PPDENSITY' , make_nice , patterns_list=[
    {'left': UNIVERSAL, 'middle': HAS_POPULATION_DENSITY_MORE, 'comparator': 'more', 'inverted':True},
    {'left': UNIVERSAL, 'middle': HAS_POPULATION_DENSITY_LESS, 'comparator': 'less', 'inverted':True},
    {'left': UNIVERSAL, 'middle': HAS_POPULATION_DENSITY, 'comparator': 'egal', 'inverted':True},
    {'left': S_POPULATION_DENSITY, 'middle': IS_MORE, 'comparator': 'more', 'inverted':True},
    {'left': POPULATION_DENSITY_OF, 'middle': IS_MORE, 'comparator': 'more', 'inverted':True},
    {'left': S_POPULATION_DENSITY, 'middle': IS_LESS, 'comparator': 'less', 'inverted':True},
    {'left': POPULATION_DENSITY_OF, 'middle': IS_LESS, 'comparator': 'less', 'inverted':True},
    {'left': S_POPULATION_DENSITY, 'middle': IS, 'comparator': 'egal', 'inverted':True},
    {'left': POPULATION_DENSITY_OF, 'middle': IS, 'comparator': 'egal', 'inverted':True},
])

listeRelation.append(hasPopulationDensity)
grammar.append(ppdensity_grammar)
dic.update(ppdensity_dic)
        int(x)
        return x
    except ValueError:
        if x in number_dic.keys():
            return number_dic[x]
        else:
            return ""


def make_nice(text):
    text = [replace_int(x) for x in text.split("_")]
    return "".join(text)


hasPopulation = relation(
    "hasPopulation",
    "PPCD",
    "GPE",
    make_nice,
    patterns_list=[
        {"left": UNIVERSAL, "middle": LIVE_IN, "comparator": "egal"},
        {"left": THERE, "middle": IN, "comparator": "egal"},
        {"left": THERE_MORE, "middle": IN, "comparator": "more"},
        {"left": THERE_LESS, "middle": IN, "comparator": "less"},
    ],
)

listeRelation.append(hasPopulation)
dic.update(haspop_dic)
grammar.append(haspop_grammar)