def __init__(self, nlp, label="<STR_LIT>"):
<EOL>r = requests.get("<STR_LIT>")<EOL>r.raise_for_status()  <EOL>countries = r.json()<EOL>self.countries = {c["<STR_LIT:name>"]: c for c in countries}<EOL>self.label = nlp.vocab.strings[label]  <EOL>patterns = [nlp(c) for c in self.countries.keys()]<EOL>self.matcher = PhraseMatcher(nlp.vocab)<EOL>self.matcher.add("<STR_LIT>", None, *patterns)<EOL>Token.set_extension("<STR_LIT>", default=False)<EOL>Token.set_extension("<STR_LIT>", default=False)<EOL>Token.set_extension("<STR_LIT>", default=False)<EOL>Token.set_extension("<STR_LIT>", default=False)<EOL>Doc.set_extension("<STR_LIT>", getter=self.has_country)<EOL>Span.set_extension("<STR_LIT>", getter=self.has_country)<EOL>
Initialise the pipeline component. The shared nlp instance is used
        to initialise the matcher with the shared vocab, get the label ID and
        generate Doc objects as phrase match patterns.