public static ConnectedNet FromString(string str) { string outRangeS = str.Remove(str.IndexOf("\nnetwork:")); outRangeS = outRangeS.Replace("outRange: ", ""); Range outRange = Range.FromString(outRangeS); string[] srs = str.Split(new string[] { "\nNetConnection: " }, StringSplitOptions.RemoveEmptyEntries); string toRemove = "network:\n"; srs[0] = srs[0].Remove(0, srs[0].IndexOf(toRemove) + toRemove.Length); TemporalNetwork network = TemporalNetwork.FromString(srs[0]); List <Connection> connections = new List <Connection>(); for (int i = 1; i < srs.Length; i++) { connections.Add(Connection.FromString(srs[i])); } return(new ConnectedNet(network, connections, outRange)); }