factory DecodeResult.failed({int code = errorUnsupportedValue, String reason = ''}) { assert(code > 0); return DecodeResult(code, failedReason: reason); }