def run(self, lines):
        text = "\n".join(lines)
        while 1:
            m = FENCED_BLOCK_RE.search(text)
            if m:
                lang = ''
                if m.group('lang'):
                    lang = LANG_TAG % m.group('lang')
                code = CODE_WRAP % (lang, self._escape(m.group('code')))
                placeholder = self.markdown.htmlStash.store(code, safe=True)
                text = '%s\n%s\n%s'% (text[:m.start()], placeholder, text[m.end():])
            else:
                break
        return text.split("\n")
Match and store Fenced Code Blocks in the HtmlStash.
dataset/ETHPy150Open natestedman/Observatory/observatory/lib/markdown/extensions/fenced_code.py/FencedBlockPreprocessor.run