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}\" is not a valid color. Color must be in hex format (eg. #ff0000).");
publicstaticPKErrorBirthdayParseError(stringbirthday)=>newPKError($"\"{birthday}\" 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})" : "")}. 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.");
publicstaticPKErrorInvalidUrl(stringurl)=>newPKError($"The given URL is invalid.");
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.");
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}. Offset must be a value like 'UTC+5' or 'GMT-4:30'.");
publicstaticPKErrorInvalidTimeZone(stringzoneStr)=>newPKError($"Invalid time zone ID '{zoneStr}'. To find your time zone ID, use the following website: <https://xske.github.io/tz>");
publicstaticPKErrorTimezoneChangeCancelled=>newPKError("Time zone change cancelled.");
publicstaticPKErrorAmbiguousTimeZone(stringzoneStr,intcount)=>newPKError($"The time zone query '{zoneStr}' 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}' as a valid duration. Try a format such as `30d`, `1d3h` or `20m30s`.");