private static Curve[] ParseCurves(YamlSequenceNode nodes, int numCurves) { var values = nodes.ToList(); Curve[] curves = new Curve[numCurves]; int numValues = values.Count / numCurves; //Should be 32 for (int i = 0; i < numCurves; i++) { List <uint> valueUints = new List <uint>(); List <float> valueFloats = new List <float>(); //2 ints //30 floats for (int j = 0; j < numValues; j++) { var val = values[i * numValues + j].ToString(); if (j < 2) { valueUints.Add(ParseValueUnit(val)); } else { valueFloats.Add(ParseValueFloat(val)); } } curves[i] = new Curve() { valueUints = valueUints.ToArray(), valueFloats = valueFloats.ToArray(), }; } return(curves); }