import Grove.Framework /- This file is autogenerated by grove. You can manually edit it, for example to resolve merge conflicts, but be careful. -/ open Grove.Framework Widget namespace GroveStdlib.Generated.«slice-producing» def «c8a13d6d-7ed6-4cd1-a386-23e2d55ce6f7» : AssociationTable.Fact .declaration where widgetId := "slice-producing" factId := "c8a13d6d-7ed6-4cd1-a386-23e2d55ce6f7" rowId := "c8a13d6d-7ed6-4cd1-a386-23e2d55ce6f7" rowState := #[⟨"String", "String.slice", Declaration.def { name := `String.slice renderedStatement := "String.slice (s : String) (startInclusive endExclusive : s.Pos)\n (h : startInclusive ≤ endExclusive) : String.Slice" isDeprecated := false } ⟩,⟨"String.Slice", "String.Slice.slice", Declaration.def { name := `String.Slice.slice renderedStatement := "String.Slice.slice (s : String.Slice) (newStart newEnd : s.Pos) (h : newStart ≤ newEnd) :\n String.Slice" isDeprecated := false } ⟩,⟨"string-pos-forwards", "String.Pos.slice", Declaration.def { name := `String.Pos.slice renderedStatement := "String.Pos.slice {s : String} (pos p₀ p₁ : s.Pos) (h₁ : p₀ ≤ pos) (h₂ : pos ≤ p₁) :\n (s.slice p₀ p₁ ⋯).Pos" isDeprecated := false } ⟩,⟨"string-pos-backwards", "String.Pos.ofSlice", Declaration.def { name := `String.Pos.ofSlice renderedStatement := "String.Pos.ofSlice {s : String} {p₀ p₁ : s.Pos} {h : p₀ ≤ p₁} (pos : (s.slice p₀ p₁ h).Pos) : s.Pos" isDeprecated := false } ⟩,⟨"string-slice-pos-forwards", "String.Slice.Pos.slice", Declaration.def { name := `String.Slice.Pos.slice renderedStatement := "String.Slice.Pos.slice {s : String.Slice} (pos p₀ p₁ : s.Pos) (h₁ : p₀ ≤ pos) (h₂ : pos ≤ p₁) :\n (s.slice p₀ p₁ ⋯).Pos" isDeprecated := false } ⟩,⟨"string-slice-pos-backwards", "String.Slice.Pos.ofSlice", Declaration.def { name := `String.Slice.Pos.ofSlice renderedStatement := "String.Slice.Pos.ofSlice {s : String.Slice} {p₀ p₁ : s.Pos} {h : p₀ ≤ p₁}\n (pos : (s.slice p₀ p₁ h).Pos) : s.Pos" isDeprecated := false } ⟩,⟨"string-pos-noproof", "String.Pos.sliceOrPanic", Declaration.def { name := `String.Pos.sliceOrPanic renderedStatement := "String.Pos.sliceOrPanic {s : String} (pos p₀ p₁ : s.Pos) {h : p₀ ≤ p₁} : (s.slice p₀ p₁ h).Pos" isDeprecated := false } ⟩,⟨"string-slice-pos-noproof", "String.Slice.Pos.sliceOrPanic", Declaration.def { name := `String.Slice.Pos.sliceOrPanic renderedStatement := "String.Slice.Pos.sliceOrPanic {s : String.Slice} (pos p₀ p₁ : s.Pos) {h : p₀ ≤ p₁} :\n (s.slice p₀ p₁ h).Pos" isDeprecated := false } ⟩,] metadata := { status := .done comment := "" } def «21b4fdfd-f8b3-44f5-a59e-57f1dc1d6819» : AssociationTable.Fact .declaration where widgetId := "slice-producing" factId := "21b4fdfd-f8b3-44f5-a59e-57f1dc1d6819" rowId := "21b4fdfd-f8b3-44f5-a59e-57f1dc1d6819" rowState := #[⟨"String", "String.slice?", Declaration.def { name := `String.slice? renderedStatement := "String.slice? (s : String) (startInclusive endExclusive : s.Pos) : Option String.Slice" isDeprecated := false } ⟩,⟨"String.Slice", "String.Slice.slice?", Declaration.def { name := `String.Slice.slice? renderedStatement := "String.Slice.slice? (s : String.Slice) (newStart newEnd : s.Pos) : Option String.Slice" isDeprecated := false } ⟩,] metadata := { status := .postponed comment := "Would be good to have better support" } def «6f2b6ecb-2f0c-4e45-9da3-eb7f2e15eff0» : AssociationTable.Fact .declaration where widgetId := "slice-producing" factId := "6f2b6ecb-2f0c-4e45-9da3-eb7f2e15eff0" rowId := "6f2b6ecb-2f0c-4e45-9da3-eb7f2e15eff0" rowState := #[⟨"String", "String.slice!", Declaration.def { name := `String.slice! renderedStatement := "String.slice! (s : String) (p₁ p₂ : s.Pos) : String.Slice" isDeprecated := false } ⟩,⟨"String.Slice", "String.Slice.slice!", Declaration.def { name := `String.Slice.slice! renderedStatement := "String.Slice.slice! (s : String.Slice) (newStart newEnd : s.Pos) : String.Slice" isDeprecated := false } ⟩,⟨"string-pos-forwards", "String.Pos.slice!", Declaration.def { name := `String.Pos.slice! renderedStatement := "String.Pos.slice! {s : String} (pos p₀ p₁ : s.Pos) : (s.slice! p₀ p₁).Pos" isDeprecated := false } ⟩,⟨"string-pos-backwards", "String.Pos.ofSlice!", Declaration.def { name := `String.Pos.ofSlice! renderedStatement := "String.Pos.ofSlice! {s : String} {p₀ p₁ : s.Pos} (pos : (s.slice! p₀ p₁).Pos) : s.Pos" isDeprecated := false } ⟩,⟨"string-slice-pos-forwards", "String.Slice.Pos.slice!", Declaration.def { name := `String.Slice.Pos.slice! renderedStatement := "String.Slice.Pos.slice! {s : String.Slice} (pos p₀ p₁ : s.Pos) : (s.slice! p₀ p₁).Pos" isDeprecated := false } ⟩,⟨"string-slice-pos-backwards", "String.Slice.Pos.ofSlice!", Declaration.def { name := `String.Slice.Pos.ofSlice! renderedStatement := "String.Slice.Pos.ofSlice! {s : String.Slice} {p₀ p₁ : s.Pos} (pos : (s.slice! p₀ p₁).Pos) : s.Pos" isDeprecated := false } ⟩,] metadata := { status := .done comment := "" } def «a3bdf66d-bc11-4019-aee9-2f1c1701de52» : AssociationTable.Fact .declaration where widgetId := "slice-producing" factId := "a3bdf66d-bc11-4019-aee9-2f1c1701de52" rowId := "a3bdf66d-bc11-4019-aee9-2f1c1701de52" rowState := #[⟨"String", "String.trimAsciiStart", Declaration.def { name := `String.trimAsciiStart renderedStatement := "String.trimAsciiStart (s : String) : String.Slice" isDeprecated := false } ⟩,⟨"String.Slice", "String.Slice.trimAsciiStart", Declaration.def { name := `String.Slice.trimAsciiStart renderedStatement := "String.Slice.trimAsciiStart (s : String.Slice) : String.Slice" isDeprecated := false } ⟩,] metadata := { status := .bad comment := "Missing `of` version at least" } def «f12b2730-7a4d-465c-8a6d-9d051c300fd5» : AssociationTable.Fact .declaration where widgetId := "slice-producing" factId := "f12b2730-7a4d-465c-8a6d-9d051c300fd5" rowId := "f12b2730-7a4d-465c-8a6d-9d051c300fd5" rowState := #[⟨"String", "String.trimAsciiEnd", Declaration.def { name := `String.trimAsciiEnd renderedStatement := "String.trimAsciiEnd (s : String) : String.Slice" isDeprecated := false } ⟩,⟨"String.Slice", "String.Slice.trimAsciiEnd", Declaration.def { name := `String.Slice.trimAsciiEnd renderedStatement := "String.Slice.trimAsciiEnd (s : String.Slice) : String.Slice" isDeprecated := false } ⟩,] metadata := { status := .bad comment := "Missing `of` version at least" } def «32307b55-d6d1-4756-a947-dbe4dfde573c» : AssociationTable.Fact .declaration where widgetId := "slice-producing" factId := "32307b55-d6d1-4756-a947-dbe4dfde573c" rowId := "32307b55-d6d1-4756-a947-dbe4dfde573c" rowState := #[⟨"String", "String.trimAscii", Declaration.def { name := `String.trimAscii renderedStatement := "String.trimAscii (s : String) : String.Slice" isDeprecated := false } ⟩,⟨"String.Slice", "String.Slice.trimAscii", Declaration.def { name := `String.Slice.trimAscii renderedStatement := "String.Slice.trimAscii (s : String.Slice) : String.Slice" isDeprecated := false } ⟩,] metadata := { status := .bad comment := "Missing `of` version at least\n" } def «dce95a38-f55a-4d6a-ae79-078ffe4b5c15» : AssociationTable.Fact .declaration where widgetId := "slice-producing" factId := "dce95a38-f55a-4d6a-ae79-078ffe4b5c15" rowId := "dce95a38-f55a-4d6a-ae79-078ffe4b5c15" rowState := #[⟨"String", "String.toSlice", Declaration.def { name := `String.toSlice renderedStatement := "String.toSlice (s : String) : String.Slice" isDeprecated := false } ⟩,⟨"string-pos-forwards", "String.Pos.toSlice", Declaration.def { name := `String.Pos.toSlice renderedStatement := "String.Pos.toSlice {s : String} (pos : s.Pos) : s.toSlice.Pos" isDeprecated := false } ⟩,⟨"string-pos-backwards", "String.Pos.ofToSlice", Declaration.def { name := `String.Pos.ofToSlice renderedStatement := "String.Pos.ofToSlice {s : String} (pos : s.toSlice.Pos) : s.Pos" isDeprecated := false } ⟩,] metadata := { status := .done comment := "" } def «005a3f30-5dab-493f-b168-32c36a2bdf7c» : AssociationTable.Fact .declaration where widgetId := "slice-producing" factId := "005a3f30-5dab-493f-b168-32c36a2bdf7c" rowId := "005a3f30-5dab-493f-b168-32c36a2bdf7c" rowState := #[⟨"String.Slice", "String.Slice.str", Declaration.def { name := `String.Slice.str renderedStatement := "String.Slice.str (self : String.Slice) : String" isDeprecated := false } ⟩,⟨"string-slice-pos-forwards", "String.Slice.Pos.str", Declaration.def { name := `String.Slice.Pos.str renderedStatement := "String.Slice.Pos.str {s : String.Slice} (pos : s.Pos) : s.str.Pos" isDeprecated := false } ⟩,⟨"string-slice-pos-backwards", "String.Slice.Pos.ofStr", Declaration.def { name := `String.Slice.Pos.ofStr renderedStatement := "String.Slice.Pos.ofStr {s : String.Slice} (pos : s.str.Pos) (h₁ : s.startInclusive ≤ pos)\n (h₂ : pos ≤ s.endExclusive) : s.Pos" isDeprecated := false } ⟩,] metadata := { status := .bad comment := "Missing `no proof` version\n" } def «5f1a154c-ae2f-43a1-9409-2ce95b163ef3» : AssociationTable.Fact .declaration where widgetId := "slice-producing" factId := "5f1a154c-ae2f-43a1-9409-2ce95b163ef3" rowId := "5f1a154c-ae2f-43a1-9409-2ce95b163ef3" rowState := #[⟨"String", "String.drop", Declaration.def { name := `String.drop renderedStatement := "String.drop (s : String) (n : Nat) : String.Slice" isDeprecated := false } ⟩,⟨"String.Slice", "String.Slice.drop", Declaration.def { name := `String.Slice.drop renderedStatement := "String.Slice.drop (s : String.Slice) (n : Nat) : String.Slice" isDeprecated := false } ⟩,] metadata := { status := .bad comment := "Missing position transformations" } def «179518d1-ad07-4b2b-8ffe-3b7616e4c4ab» : AssociationTable.Fact .declaration where widgetId := "slice-producing" factId := "179518d1-ad07-4b2b-8ffe-3b7616e4c4ab" rowId := "179518d1-ad07-4b2b-8ffe-3b7616e4c4ab" rowState := #[⟨"String", "String.take", Declaration.def { name := `String.take renderedStatement := "String.take (s : String) (n : Nat) : String.Slice" isDeprecated := false } ⟩,⟨"String.Slice", "String.Slice.take", Declaration.def { name := `String.Slice.take renderedStatement := "String.Slice.take (s : String.Slice) (n : Nat) : String.Slice" isDeprecated := false } ⟩,] metadata := { status := .bad comment := "Missing position transformations" } def «55c587fd-a7a8-4633-a4ae-e2c4e768ad28» : AssociationTable.Fact .declaration where widgetId := "slice-producing" factId := "55c587fd-a7a8-4633-a4ae-e2c4e768ad28" rowId := "55c587fd-a7a8-4633-a4ae-e2c4e768ad28" rowState := #[⟨"String", "String.dropWhile", Declaration.def { name := `String.dropWhile renderedStatement := "String.dropWhile {ρ : Type} (s : String) (pat : ρ) [String.Slice.Pattern.ForwardPattern pat] :\n String.Slice" isDeprecated := false } ⟩,⟨"String.Slice", "String.Slice.dropWhile", Declaration.def { name := `String.Slice.dropWhile renderedStatement := "String.Slice.dropWhile {ρ : Type} (s : String.Slice) (pat : ρ)\n [String.Slice.Pattern.ForwardPattern pat] : String.Slice" isDeprecated := false } ⟩,] metadata := { status := .bad comment := "Missing position transformations" } def «d4444684-4279-4400-9be2-561a7cdb32c1» : AssociationTable.Fact .declaration where widgetId := "slice-producing" factId := "d4444684-4279-4400-9be2-561a7cdb32c1" rowId := "d4444684-4279-4400-9be2-561a7cdb32c1" rowState := #[⟨"String", "String.takeWhile", Declaration.def { name := `String.takeWhile renderedStatement := "String.takeWhile {ρ : Type} (s : String) (pat : ρ) [String.Slice.Pattern.ForwardPattern pat] :\n String.Slice" isDeprecated := false } ⟩,⟨"String.Slice", "String.Slice.takeWhile", Declaration.def { name := `String.Slice.takeWhile renderedStatement := "String.Slice.takeWhile {ρ : Type} (s : String.Slice) (pat : ρ)\n [String.Slice.Pattern.ForwardPattern pat] : String.Slice" isDeprecated := false } ⟩,] metadata := { status := .bad comment := "Missing position transformations" } def «1c9e6689-65a0-4d4b-b001-256e83917d98» : AssociationTable.Fact .declaration where widgetId := "slice-producing" factId := "1c9e6689-65a0-4d4b-b001-256e83917d98" rowId := "1c9e6689-65a0-4d4b-b001-256e83917d98" rowState := #[⟨"String", "String.dropEndWhile", Declaration.def { name := `String.dropEndWhile renderedStatement := "String.dropEndWhile {ρ : Type} (s : String) (pat : ρ) [String.Slice.Pattern.BackwardPattern pat] :\n String.Slice" isDeprecated := false } ⟩,⟨"String.Slice", "String.Slice.dropEndWhile", Declaration.def { name := `String.Slice.dropEndWhile renderedStatement := "String.Slice.dropEndWhile {ρ : Type} (s : String.Slice) (pat : ρ)\n [String.Slice.Pattern.BackwardPattern pat] : String.Slice" isDeprecated := false } ⟩,] metadata := { status := .bad comment := "Missing position transformations" } def «b836052b-3470-4a8e-8989-6951c898de37» : AssociationTable.Fact .declaration where widgetId := "slice-producing" factId := "b836052b-3470-4a8e-8989-6951c898de37" rowId := "b836052b-3470-4a8e-8989-6951c898de37" rowState := #[⟨"String", "String.takeEndWhile", Declaration.def { name := `String.takeEndWhile renderedStatement := "String.takeEndWhile {ρ : Type} (s : String) (pat : ρ) [String.Slice.Pattern.BackwardPattern pat] :\n String.Slice" isDeprecated := false } ⟩,⟨"String.Slice", "String.Slice.takeEndWhile", Declaration.def { name := `String.Slice.takeEndWhile renderedStatement := "String.Slice.takeEndWhile {ρ : Type} (s : String.Slice) (pat : ρ)\n [String.Slice.Pattern.BackwardPattern pat] : String.Slice" isDeprecated := false } ⟩,] metadata := { status := .bad comment := "Missing position transformations" } def «5aa777d8-9642-43d8-9e20-30400fb8bb9d» : AssociationTable.Fact .declaration where widgetId := "slice-producing" factId := "5aa777d8-9642-43d8-9e20-30400fb8bb9d" rowId := "5aa777d8-9642-43d8-9e20-30400fb8bb9d" rowState := #[⟨"String", "String.dropPrefix", Declaration.def { name := `String.dropPrefix renderedStatement := "String.dropPrefix {ρ : Type} (s : String) (pat : ρ) [String.Slice.Pattern.ForwardPattern pat] :\n String.Slice" isDeprecated := false } ⟩,⟨"String.Slice", "String.Slice.dropPrefix", Declaration.def { name := `String.Slice.dropPrefix renderedStatement := "String.Slice.dropPrefix {ρ : Type} (s : String.Slice) (pat : ρ)\n [String.Slice.Pattern.ForwardPattern pat] : String.Slice" isDeprecated := false } ⟩,] metadata := { status := .bad comment := "Missing position transformations" } def «80e3869d-fcfe-459d-8433-fe221f7b3c7a» : AssociationTable.Fact .declaration where widgetId := "slice-producing" factId := "80e3869d-fcfe-459d-8433-fe221f7b3c7a" rowId := "80e3869d-fcfe-459d-8433-fe221f7b3c7a" rowState := #[⟨"String", "String.dropSuffix", Declaration.def { name := `String.dropSuffix renderedStatement := "String.dropSuffix {ρ : Type} (s : String) (pat : ρ) [String.Slice.Pattern.BackwardPattern pat] :\n String.Slice" isDeprecated := false } ⟩,⟨"String.Slice", "String.Slice.dropSuffix", Declaration.def { name := `String.Slice.dropSuffix renderedStatement := "String.Slice.dropSuffix {ρ : Type} (s : String.Slice) (pat : ρ)\n [String.Slice.Pattern.BackwardPattern pat] : String.Slice" isDeprecated := false } ⟩,] metadata := { status := .bad comment := "Missing position transformations" } def «4feda3e0-903b-4d52-b34e-0af70f7866e0» : AssociationTable.Fact .declaration where widgetId := "slice-producing" factId := "4feda3e0-903b-4d52-b34e-0af70f7866e0" rowId := "4feda3e0-903b-4d52-b34e-0af70f7866e0" rowState := #[⟨"String", "String.dropPrefix?", Declaration.def { name := `String.dropPrefix? renderedStatement := "String.dropPrefix? {ρ : Type} (s : String) (pat : ρ) [String.Slice.Pattern.ForwardPattern pat] :\n Option String.Slice" isDeprecated := false } ⟩,⟨"String.Slice", "String.Slice.dropPrefix?", Declaration.def { name := `String.Slice.dropPrefix? renderedStatement := "String.Slice.dropPrefix? {ρ : Type} (s : String.Slice) (pat : ρ)\n [String.Slice.Pattern.ForwardPattern pat] : Option String.Slice" isDeprecated := false } ⟩,] metadata := { status := .postponed comment := "Missing position transformations" } def «45ca44c8-fbd5-4400-8297-a60778f302b0» : AssociationTable.Fact .declaration where widgetId := "slice-producing" factId := "45ca44c8-fbd5-4400-8297-a60778f302b0" rowId := "45ca44c8-fbd5-4400-8297-a60778f302b0" rowState := #[⟨"String", "String.dropSuffix?", Declaration.def { name := `String.dropSuffix? renderedStatement := "String.dropSuffix? {ρ : Type} (s : String) (pat : ρ) [String.Slice.Pattern.BackwardPattern pat] :\n Option String.Slice" isDeprecated := false } ⟩,⟨"String.Slice", "String.Slice.dropSuffix?", Declaration.def { name := `String.Slice.dropSuffix? renderedStatement := "String.Slice.dropSuffix? {ρ : Type} (s : String.Slice) (pat : ρ)\n [String.Slice.Pattern.BackwardPattern pat] : Option String.Slice" isDeprecated := false } ⟩,] metadata := { status := .postponed comment := "Missing position transformations" } def table : AssociationTable.Data .declaration where widgetId := "slice-producing" rows := #[ ⟨"c8a13d6d-7ed6-4cd1-a386-23e2d55ce6f7", "slice", #[⟨"String", "String.slice"⟩,⟨"String.Slice", "String.Slice.slice"⟩,⟨"string-pos-forwards", "String.Pos.slice"⟩,⟨"string-pos-backwards", "String.Pos.ofSlice"⟩,⟨"string-slice-pos-forwards", "String.Slice.Pos.slice"⟩,⟨"string-slice-pos-backwards", "String.Slice.Pos.ofSlice"⟩,⟨"string-pos-noproof", "String.Pos.sliceOrPanic"⟩,⟨"string-slice-pos-noproof", "String.Slice.Pos.sliceOrPanic"⟩,]⟩, ⟨"21b4fdfd-f8b3-44f5-a59e-57f1dc1d6819", "slice?", #[⟨"String", "String.slice?"⟩,⟨"String.Slice", "String.Slice.slice?"⟩,]⟩, ⟨"6f2b6ecb-2f0c-4e45-9da3-eb7f2e15eff0", "slice!", #[⟨"String", "String.slice!"⟩,⟨"String.Slice", "String.Slice.slice!"⟩,⟨"string-pos-forwards", "String.Pos.slice!"⟩,⟨"string-pos-backwards", "String.Pos.ofSlice!"⟩,⟨"string-slice-pos-forwards", "String.Slice.Pos.slice!"⟩,⟨"string-slice-pos-backwards", "String.Slice.Pos.ofSlice!"⟩,]⟩, ⟨"a3bdf66d-bc11-4019-aee9-2f1c1701de52", "trimAsciiStart", #[⟨"String", "String.trimAsciiStart"⟩,⟨"String.Slice", "String.Slice.trimAsciiStart"⟩,]⟩, ⟨"f12b2730-7a4d-465c-8a6d-9d051c300fd5", "trimAsciiEnd", #[⟨"String", "String.trimAsciiEnd"⟩,⟨"String.Slice", "String.Slice.trimAsciiEnd"⟩,]⟩, ⟨"32307b55-d6d1-4756-a947-dbe4dfde573c", "trimAscii", #[⟨"String", "String.trimAscii"⟩,⟨"String.Slice", "String.Slice.trimAscii"⟩,]⟩, ⟨"dce95a38-f55a-4d6a-ae79-078ffe4b5c15", "toSlice", #[⟨"String", "String.toSlice"⟩,⟨"string-pos-forwards", "String.Pos.toSlice"⟩,⟨"string-pos-backwards", "String.Pos.ofToSlice"⟩,]⟩, ⟨"005a3f30-5dab-493f-b168-32c36a2bdf7c", "str", #[⟨"String.Slice", "String.Slice.str"⟩,⟨"string-slice-pos-forwards", "String.Slice.Pos.str"⟩,⟨"string-slice-pos-backwards", "String.Slice.Pos.ofStr"⟩,]⟩, ⟨"5f1a154c-ae2f-43a1-9409-2ce95b163ef3", "drop", #[⟨"String", "String.drop"⟩,⟨"String.Slice", "String.Slice.drop"⟩,]⟩, ⟨"179518d1-ad07-4b2b-8ffe-3b7616e4c4ab", "take", #[⟨"String", "String.take"⟩,⟨"String.Slice", "String.Slice.take"⟩,]⟩, ⟨"55c587fd-a7a8-4633-a4ae-e2c4e768ad28", "dropWhile", #[⟨"String", "String.dropWhile"⟩,⟨"String.Slice", "String.Slice.dropWhile"⟩,]⟩, ⟨"d4444684-4279-4400-9be2-561a7cdb32c1", "takeWhile", #[⟨"String", "String.takeWhile"⟩,⟨"String.Slice", "String.Slice.takeWhile"⟩,]⟩, ⟨"1c9e6689-65a0-4d4b-b001-256e83917d98", "dropEndWhile", #[⟨"String", "String.dropEndWhile"⟩,⟨"String.Slice", "String.Slice.dropEndWhile"⟩,]⟩, ⟨"b836052b-3470-4a8e-8989-6951c898de37", "takeEndWhile", #[⟨"String", "String.takeEndWhile"⟩,⟨"String.Slice", "String.Slice.takeEndWhile"⟩,]⟩, ⟨"5aa777d8-9642-43d8-9e20-30400fb8bb9d", "dropPrefix", #[⟨"String", "String.dropPrefix"⟩,⟨"String.Slice", "String.Slice.dropPrefix"⟩,]⟩, ⟨"80e3869d-fcfe-459d-8433-fe221f7b3c7a", "dropSuffix", #[⟨"String", "String.dropSuffix"⟩,⟨"String.Slice", "String.Slice.dropSuffix"⟩,]⟩, ⟨"4feda3e0-903b-4d52-b34e-0af70f7866e0", "dropPrefix?", #[⟨"String", "String.dropPrefix?"⟩,⟨"String.Slice", "String.Slice.dropPrefix?"⟩,]⟩, ⟨"45ca44c8-fbd5-4400-8297-a60778f302b0", "dropSuffix?", #[⟨"String", "String.dropSuffix?"⟩,⟨"String.Slice", "String.Slice.dropSuffix?"⟩,]⟩, ] facts := #[ «c8a13d6d-7ed6-4cd1-a386-23e2d55ce6f7», «21b4fdfd-f8b3-44f5-a59e-57f1dc1d6819», «6f2b6ecb-2f0c-4e45-9da3-eb7f2e15eff0», «a3bdf66d-bc11-4019-aee9-2f1c1701de52», «f12b2730-7a4d-465c-8a6d-9d051c300fd5», «32307b55-d6d1-4756-a947-dbe4dfde573c», «dce95a38-f55a-4d6a-ae79-078ffe4b5c15», «005a3f30-5dab-493f-b168-32c36a2bdf7c», «5f1a154c-ae2f-43a1-9409-2ce95b163ef3», «179518d1-ad07-4b2b-8ffe-3b7616e4c4ab», «55c587fd-a7a8-4633-a4ae-e2c4e768ad28», «d4444684-4279-4400-9be2-561a7cdb32c1», «1c9e6689-65a0-4d4b-b001-256e83917d98», «b836052b-3470-4a8e-8989-6951c898de37», «5aa777d8-9642-43d8-9e20-30400fb8bb9d», «80e3869d-fcfe-459d-8433-fe221f7b3c7a», «4feda3e0-903b-4d52-b34e-0af70f7866e0», «45ca44c8-fbd5-4400-8297-a60778f302b0», ] def restoreState : RestoreStateM Unit := do addAssociationTable table