I have a context free grammar (CFG). The initial symbol is `A1`. The terminal symbols are just integers and the non-terminal symbols start with `A`. I also have a target sequence of terminal symbols which needs to be produced by the grammar. However, the CFG production rules have had some terminal symbols removed which may now render it impossible to produce the target sequence. Please attempt to repair the CFG so that the sequence can be produced. The only operations which can be made to repair the CFG are the insertion of terminal symbols anywhere in existing production rules. Deleting or reordering symbols in existing production rules and creating new production rules is prohibited. Please try minimize the total number of terminal symbols inserted into the production rules so that the CFG can produce the target sequence. Reason about the problem however you wish and write out whatever working out you want. When you are finished please write a new line with `Updated production rules:`, and then write a new line for each of the updated production rules (including `rule_<n>:`), no need to rewrite the production rules which haven't changed. Do not write anything after the updated production rules.


"""
There are 30 terminals, ranging from 1 to 30.
Each terminal symbol occurs in the target sequence at least once.

There are 66 non-terminal symbols, ranging from A1 to A66.

Production rules:
rule_1: A1 -> A59 A50 A34 A20 A2
rule_2: A2 -> 1
rule_3: A2 -> 1 A4 A8
rule_4: A2 -> A5 A4 A3
rule_5: A2 -> A15 A4 A14
rule_6: A3 -> 3 2
rule_7: A4 -> 1
rule_8: A5 -> 1
rule_9: A5 -> 4
rule_10: A6 -> 1
rule_11: A7 -> 1
rule_12: A8 -> A9
rule_13: A8 -> A10
rule_14: A8 -> A11
rule_15: A9 -> A5
rule_16: A9 -> A6
rule_17: A10 -> A6
rule_18: A10 -> A7
rule_19: A11 -> A5 3
rule_20: A12 -> 1
rule_21: A13 -> 1
rule_22: A14 -> 3
rule_23: A15 -> A16
rule_24: A16 -> A17 1 A18
rule_25: A17 -> 1
rule_26: A17 -> 7
rule_27: A17 -> 8
rule_28: A18 -> 5 6
rule_29: A19 -> 1
rule_30: A20 -> 1
rule_31: A20 -> 1 A21 A26 9
rule_32: A20 -> A22 A21 14
rule_33: A20 -> A23 A21
rule_34: A20 -> A30 A21
rule_35: A21 -> 1
rule_36: A21 -> 1 12 A25
rule_37: A22 -> 1
rule_38: A22 -> 10
rule_39: A22 -> 11
rule_40: A23 -> 1
rule_41: A24 -> 1
rule_42: A25 -> A22
rule_43: A25 -> A24
rule_44: A26 -> A22
rule_45: A26 -> A23
rule_46: A27 -> 1
rule_47: A28 -> 1
rule_48: A29 -> 1
rule_49: A30 -> A31 11
rule_50: A30 -> A33
rule_51: A31 -> A32 16
rule_52: A32 -> 1
rule_53: A32 -> 17
rule_54: A32 -> 18
rule_55: A33 -> A22
rule_56: A34 -> 1
rule_57: A34 -> 1 A35 A43
rule_58: A34 -> A17 A35 A42
rule_59: A34 -> A46 A35 A45
rule_60: A35 -> 1
rule_61: A35 -> A38 A36
rule_62: A36 -> 20 A37
rule_63: A37 -> A17
rule_64: A38 -> 1
rule_65: A38 -> A41 A39
rule_66: A39 -> 22 A40
rule_67: A40 -> A12
rule_68: A40 -> A17 23
rule_69: A41 -> 1
rule_70: A42 -> 24 19
rule_71: A43 -> A44
rule_72: A44 -> A12
rule_73: A44 -> A13
rule_74: A44 -> A17 24
rule_75: A45 -> 24
rule_76: A46 -> A47
rule_77: A47 -> A32 A48 25
rule_78: A48 -> 1
rule_79: A48 -> 1 15 A49
rule_80: A49 -> A32 16
rule_81: A50 -> 1
rule_82: A50 -> 1 A41 A52
rule_83: A50 -> 1 A51 A56
rule_84: A50 -> A32 A51 28
rule_85: A50 -> A57 A51 28
rule_86: A51 -> 1
rule_87: A52 -> A53
rule_88: A52 -> A54
rule_89: A52 -> A55
rule_90: A53 -> A12
rule_91: A53 -> A17
rule_92: A53 -> A19
rule_93: A54 -> A13
rule_94: A54 -> A17
rule_95: A55 -> A12
rule_96: A55 -> A13
rule_97: A55 -> A17
rule_98: A55 -> A19
rule_99: A56 -> A28
rule_100: A56 -> A32 28
rule_101: A57 -> A58 17
rule_102: A58 -> A22
rule_103: A58 -> A22 1
rule_104: A59 -> 1
rule_105: A59 -> A27 A60 29
rule_106: A59 -> A28 A60 29
rule_107: A59 -> A32 A60 30 29
rule_108: A59 -> A51 A60 A62
rule_109: A59 -> A63 A60 29
rule_110: A60 -> 1
rule_111: A60 -> A48 26 A61
rule_112: A61 -> A27
rule_113: A61 -> A32
rule_114: A62 -> A29
rule_115: A62 -> A32 30
rule_116: A63 -> A64
rule_117: A63 -> A65
rule_118: A64 -> A32 A51
rule_119: A64 -> A32 A51
rule_120: A65 -> A17 A41 A66
rule_121: A66 -> 22 23

Target sequence:
8 1 22 23 18 1 15 1 16 26 1 25 30 29 11 1 12 13 17 1 28 27 8 1 20 1 21 24 19 10 1 14 9 7 1 5 6 4 1 3 2
"""