WFST for inverse text normalization (ITN)
**Describe the bug**

when i declare some states with pynini.string_map  it cant find the shortest pass of its inverse for no reason

**Steps/Code to reproduce bug**

```
import pynini
from pynini.lib import pynutil


def apply_fst(text, fst):
    """ Given a string input, returns the output string
    produced by traversing the path with lowest weight.
    If no valid path accepts input string, returns an
    error.
    """
    try:

        print(pynini.shortestpath(text @ fst).string())
        return pynini.shortestpath(text @ fst).string()
    except pynini.FstOpError:
        print(f"Error: No valid output with given input: '{text}'")


teens = pynini.string_map([
    ("ده", "10"),
    ("یازده", "11"),
    ("دوازده", "12"),
    ("سیزده", "13"),
    ("چهارده", "14"),
    ("چاهارده", "14"),
    ("پونزده", "15"),
    ("1پا نزده", "5"),
    ("1پانزده", "5"),
    ("شانزده", "16"),
    ("1شونزده", "6"),
    ("1هفده", "7"),
    ("1هیفده", "7"),
    ("هجده", "18"),
    ("هیجده", "18"),
    ("19", "نوزده")
])

graph_tens = teens

apply_fst("یازده", graph_tens)
apply_fst("دوازده", graph_tens)
apply_fst("سیزده", graph_tens)
apply_fst("چهارده", graph_tens)
apply_fst("چاهارده", graph_tens)
apply_fst("پونزده", graph_tens)
apply_fst("پانزده", graph_tens)
apply_fst("شانزده", graph_tens)
apply_fst("شونزده", graph_tens)
apply_fst("هفده", graph_tens)
apply_fst("هیفده", graph_tens)
apply_fst("هیجده", graph_tens)
apply_fst("هجده", graph_tens)
apply_fst("نوزده", graph_tens)

```

**Expected behavior**

11
12
13
14
14
15
15
16
16
17
17
18
18
19

**produced output**

11
12
13
14
14
15
Error: No valid output with given input: 'پانزده'
16
Error: No valid output with given input: 'شونزده'
Error: No valid output with given input: 'هفده'
Error: No valid output with given input: 'هیفده'
18
18
Error: No valid output with given input: 'نوزده'
Error: No valid output with given input: 'یک'
ERROR: StringFstToOutputLabels: Invalid start state
ERROR: StringFstToOutputLabels: Invalid start state
ERROR: StringFstToOutputLabels: Invalid start state
ERROR: StringFstToOutputLabels: Invalid start state
ERROR: StringFstToOutputLabels: Invalid start state
ERROR: StringFstToOutputLabels: Invalid start state

Process finished with exit code 0



**Environment overview (please complete the following information)**

 - Environment location: my pc
 - Method of NeMo install: conda install pynini
 - 
**Environment details**

- OS version : ubuntu 20
- PyTorch version 
- Python version : 3.8
