úÎuÛP      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNONoneNone5I ^This does not do an endOfInput check because it is reused in the range parser implementation.`This is sort of a misnomer. It takes Word32 to make dotDecimalParser probably perform better.PôI think that this function can be improved. Right now, it always allocates enough space for a fifteen-character text rendering of an IP address. I think that it should be possible to do more of the math upfront and allocate less space. Q PRSTUV   Q PRSTUVNone'()*+'()*+')(*+'()*+None,-.,-.,-.,-.None/'This should be rewritten to not create Text as an intermediate step.0This should also be rewritten/WXY012/012/012/WXY012None5I;$This does not do an endOfInput check3456789:;<=>?@A 3456789:;<=>3456A@?789:;<=> 3456789:;<=>?@ANoneGHIJKGHIJKGIHJKGHIJKNoneL5This is a bad implementation that should be rewrittenM5This is a bad implementation that should be rewrittenLMNOLMNOLMNOLMNOZ       !"#$%&'()*+,-./012.0/.01233456789:;<=>?@ABC./012.012DEFGHIJKIJLip-0.6.2-GzzmwvJoMON8WvUSjW03db Net.InternalNet.IPv4 Net.IPv4.TextNet.IPv4.StringNet.IPv4.ByteString.Char8Net.Mac Net.Mac.TextNet.Mac.ByteString.Char8attoparsecParseJSON rightToMaybe IPv4Range ipv4RangeBaseipv4RangeLengthIPv4getIPv4fromDotDecimalText'fromDotDecimalTextrangeFromDotDecimalText'dotDecimalRangeParserdotDecimalParser fromOctets fromOctets'toOctetstoDotDecimalTexttoDotDecimalBuilderrangeToDotDecimalTextrangeToDotDecimalBuilder$fFromJSONIPv4Range$fToJSONIPv4Range$fFromJSONIPv4 $fToJSONIPv4$fHashableIPv4Range$fEqIPv4 $fOrdIPv4 $fShowIPv4 $fReadIPv4 $fEnumIPv4 $fBoundedIPv4$fHashableIPv4 $fGenericIPv4 $fEqIPv4Range$fOrdIPv4Range$fShowIPv4Range$fReadIPv4Range$fGenericIPv4Rangeencode decodeEitherdecodebuilderparserMacmacAmacBtoTextfromText fromText' toTextBuilder textParserbytestringParser $fFromJSONMac $fToJSONMac $fHashableMac$fEqMac$fOrdMac $fShowMac $fReadMac $fGenericMactoTextPreAllocatedrangeFromDotDecimalText putAndCountzeroi2w twoDigits threeDigitstoBSPreAllocated