publicstaticPKErrorExistingSystemError=>newPKError("You already have a system registered with PluralKit. To view it, type `pk;system`. If you'd like to delete your system and start anew, type `pk;system delete`, or if you'd like to unlink this account from it, type `pk;unlink`.");
publicstaticPKErrorInvalidColorError(stringcolor)=>newPKError($"\"{color.Sanitize()}\" is not a valid color. Color must be in 6-digit RGB hex format (eg. #ff0000).");
publicstaticPKErrorBirthdayParseError(stringbirthday)=>newPKError($"\"{birthday.Sanitize()}\" could not be parsed as a valid date. Try a format like \"2016-12-24\" or \"May 3 1996\".");
publicstaticPKErrorAvatarServerError(HttpStatusCodestatusCode)=>newPKError($"Server responded with status code {(int) statusCode}, are you sure your link is working?");
publicstaticPKErrorAvatarFileSizeLimit(longsize)=>newPKError($"File size too large ({size.Bytes().ToString("#.#")} > {Limits.AvatarFileSizeLimit.Bytes().ToString("#.#")}), try shrinking or compressing the image.");
publicstaticPKErrorAvatarNotAnImage(stringmimeType)=>newPKError($"The given link does not point to an image{(mimeType != null ? $"({mimeType.Sanitize()})" : "")}. Make sure you're using a direct link (ending in .jpg, .png, .gif).");
publicstaticPKErrorAvatarDimensionsTooLarge(intwidth,intheight)=>newPKError($"Image too large ({width}x{height} > {Limits.AvatarDimensionLimit}x{Limits.AvatarDimensionLimit}), try resizing the image.");
publicstaticPKErrorAccountAlreadyLinked=>newPKError("That account is already linked to your system.");
publicstaticPKErrorAccountNotLinked=>newPKError("That account isn't linked to your system.");
publicstaticPKErrorAccountInOtherSystem(PKSystemsystem)=>newPKError($"The mentioned account is already linked to another system (see `pk;system {system.Hid}`).");
publicstaticPKErrorUnlinkingLastAccount=>newPKError("Since this is the only account linked to this system, you cannot unlink it (as that would leave your system account-less).");
publicstaticPKErrorMemberLinkCancelled=>newPKError("Member link cancelled.");
publicstaticPKErrorInvalidDateTime(stringstr)=>newPKError($"Could not parse '{str.Sanitize()}' as a valid date/time. Try using a syntax such as \"May21,12:30PM\" or \"3d12h\" (ie. 3 days, 12 hours ago).");
publicstaticPKErrorSwitchMoveBeforeSecondLast(ZonedDateTimetime)=>newPKError($"Can't move switch to before last switch time ({Formats.ZonedDateTimeFormat.Format(time)}), as it would cause conflicts.");
publicstaticPKErrorTimezoneParseError(stringtimezone)=>newPKError($"Could not parse timezone offset {timezone.Sanitize()}. Offset must be a value like 'UTC+5' or 'GMT-4:30'.");
publicstaticPKErrorInvalidTimeZone(stringzoneStr)=>newPKError($"Invalid time zone ID '{zoneStr.Sanitize()}'. To find your time zone ID, use the following website: <https://xske.github.io/tz>");
publicstaticPKErrorAmbiguousTimeZone(stringzoneStr,intcount)=>newPKError($"The time zone query '{zoneStr.Sanitize()}' resulted in **{count}** different time zone regions. Try being more specific - e.g. pass an exact time zone specifier from the following website: <https://xske.github.io/tz>");
publicstaticPKErrorNoImportFilePassed=>newPKError("You must either pass an URL to a file as a command parameter, or as an attachment to the message containing the command.");
publicstaticPKErrorInvalidImportFile=>newPKError("Imported data file invalid. Make sure this is a .json file directly exported from PluralKit or Tupperbox.");
publicstaticPKErrorDurationParseError(stringdurationStr)=>newPKError($"Could not parse '{durationStr.Sanitize()}' as a valid duration. Try a format such as `30d`, `1d3h` or `20m30s`.");