private static void SaveSegmentNodeFlags(ushort segmentId, Configuration configuration)
        {
            try {
                if ((Singleton <NetManager> .instance.m_segments.m_buffer[segmentId].m_flags & NetSegment.Flags.Created) == NetSegment.Flags.None)
                {
                    return;
                }

                Configuration.SegmentNodeFlags startNodeFlags = Flags.getSegmentNodeFlags(segmentId, true);
                Configuration.SegmentNodeFlags endNodeFlags   = Flags.getSegmentNodeFlags(segmentId, false);

                if (startNodeFlags == null && endNodeFlags == null)
                {
                    return;
                }

                Configuration.SegmentNodeConf conf = new Configuration.SegmentNodeConf(segmentId);

                conf.startNodeFlags = startNodeFlags;
                conf.endNodeFlags   = endNodeFlags;

                Log.Info($"Saving segment-at-node flags for seg. {segmentId}");
                configuration.SegmentNodeConfs.Add(conf);
            } catch (Exception e) {
                Log.Error($"Error adding Priority Segments to Save: {e.ToString()}");
            }
        }
        private static void SaveSegmentNodeFlags(ushort segmentId, Configuration configuration)
        {
            try {
                NetManager netManager = Singleton <NetManager> .instance;

                if (!NetUtil.IsSegmentValid(segmentId))
                {
                    return;
                }

                ushort startNodeId = netManager.m_segments.m_buffer[segmentId].m_startNode;
                ushort endNodeId   = netManager.m_segments.m_buffer[segmentId].m_endNode;

                Configuration.SegmentNodeFlags startNodeFlags = NetUtil.IsNodeValid(startNodeId) ? Flags.getSegmentNodeFlags(segmentId, true) : null;
                Configuration.SegmentNodeFlags endNodeFlags   = NetUtil.IsNodeValid(endNodeId) ? Flags.getSegmentNodeFlags(segmentId, false) : null;

                if (startNodeFlags == null && endNodeFlags == null)
                {
                    return;
                }

                bool isDefaultConfiguration = true;
                if (startNodeFlags != null)
                {
                    if (!startNodeFlags.IsDefault())
                    {
                        isDefaultConfiguration = false;
                    }
                }

                if (endNodeFlags != null)
                {
                    if (!endNodeFlags.IsDefault())
                    {
                        isDefaultConfiguration = false;
                    }
                }

                if (isDefaultConfiguration)
                {
                    return;
                }

                Configuration.SegmentNodeConf conf = new Configuration.SegmentNodeConf(segmentId);

                conf.startNodeFlags = startNodeFlags;
                conf.endNodeFlags   = endNodeFlags;

                Log._Debug($"Saving segment-at-node flags for seg. {segmentId}");
                configuration.SegmentNodeConfs.Add(conf);
            } catch (Exception e) {
                Log.Error($"Error adding Priority Segments to Save: {e.ToString()}");
            }
        }
		private static void SaveSegmentNodeFlags(ushort segmentId, Configuration configuration) {
			try {
				if ((Singleton<NetManager>.instance.m_segments.m_buffer[segmentId].m_flags & NetSegment.Flags.Created) == NetSegment.Flags.None)
					return;

				Configuration.SegmentNodeFlags startNodeFlags = Flags.getSegmentNodeFlags(segmentId, true);
				Configuration.SegmentNodeFlags endNodeFlags = Flags.getSegmentNodeFlags(segmentId, false);

				if (startNodeFlags == null && endNodeFlags == null)
					return;

				Configuration.SegmentNodeConf conf = new Configuration.SegmentNodeConf(segmentId);

				conf.startNodeFlags = startNodeFlags;
				conf.endNodeFlags = endNodeFlags;

				Log.Info($"Saving segment-at-node flags for seg. {segmentId}");
				configuration.SegmentNodeConfs.Add(conf);
			} catch (Exception e) {
				Log.Error($"Error adding Priority Segments to Save: {e.ToString()}");
			}
		}