def path_rules(self, from_symbol, to_symbol):
        # type: (Type[Nonterminal], Type[Nonterminal]) -> List[Type[Rule]]
        """
        Get sequence of unit rules between first and second parameter.
        :param from_symbol: From which symbol.
        :param to_symbol: To which symbol.
        :return: Sequence of unit rules. Empty sequence mean there is no way between them.
        """
        if from_symbol not in self.t or to_symbol not in self.t:
            return []
        return self.f[self.t[from_symbol]][self.t[to_symbol]] or []