// Autogenerated by Thrift Compiler (0.19.0)
// DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
#![allow(dead_code)]
#![allow(unused_imports)]
#![allow(unused_extern_crates)]
#![allow(clippy::too_many_arguments, clippy::type_complexity, clippy::vec_box, clippy::wrong_self_convention)]
#![cfg_attr(rustfmt, rustfmt_skip)]
use std::cell::RefCell;
use std::collections::{BTreeMap, BTreeSet};
use std::convert::{From, TryFrom};
use std::default::Default;
use std::error::Error;
use std::fmt;
use std::fmt::{Display, Formatter};
use std::rc::Rc;
use thrift::OrderedFloat;
use thrift::{ApplicationError, ApplicationErrorKind, ProtocolError, ProtocolErrorKind, TThriftClient};
use thrift::protocol::{TFieldIdentifier, TListIdentifier, TMapIdentifier, TMessageIdentifier, TMessageType, TInputProtocol, TOutputProtocol, TSerializable, TSetIdentifier, TStructIdentifier, TType};
use thrift::protocol::field_id;
use thrift::protocol::verify_expected_message_type;
use thrift::protocol::verify_expected_sequence_number;
use thrift::protocol::verify_expected_service_call;
use thrift::protocol::verify_required_field_exists;
use thrift::server::TProcessor;
pub const EDAM_ATTRIBUTE_LEN_MIN: i32 = 1;
pub const EDAM_ATTRIBUTE_LEN_MAX: i32 = 4096;
pub const EDAM_ATTRIBUTE_REGEX: &str = r"^[^\p{Cc}\p{Zl}\p{Zp}]{1,4096}$";
pub const EDAM_ATTRIBUTE_LIST_MAX: i32 = 100;
pub const EDAM_ATTRIBUTE_MAP_MAX: i32 = 100;
pub const EDAM_GUID_LEN_MIN: i32 = 36;
pub const EDAM_GUID_LEN_MAX: i32 = 36;
pub const EDAM_GUID_REGEX: &str = "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$";
pub const EDAM_EMAIL_LEN_MIN: i32 = 6;
pub const EDAM_EMAIL_LEN_MAX: i32 = 255;
pub const EDAM_EMAIL_LOCAL_REGEX: &str = r"^[A-Za-z0-9!#$%&'*+/=?^_`{|}~-]+(\.[A-Za-z0-9!#$%&'*+/=?^_`{|}~-]+)*$";
pub const EDAM_EMAIL_DOMAIN_REGEX: &str = r"^[A-Za-z0-9-]*[A-Za-z0-9](\.[A-Za-z0-9-]*[A-Za-z0-9])*\.([A-Za-z]{2,})$";
pub const EDAM_EMAIL_REGEX: &str = r"^[A-Za-z0-9!#$%&'*+/=?^_`{|}~-]+(\.[A-Za-z0-9!#$%&'*+/=?^_`{|}~-]+)*@[A-Za-z0-9-]*[A-Za-z0-9](\.[A-Za-z0-9-]*[A-Za-z0-9])*\.([A-Za-z]{2,})$";
pub const EDAM_VAT_REGEX: &str = "^(AT)?U[0-9]{8}$|^(BE)?0?[0-9]{9}$|^(BG)?[0-9]{9,10}$|^(CY)?[0-9]{8}L$|^(CZ)?[0-9]{8,10}$|^(DE)?[0-9]{9}$|^(DK)?[0-9]{8}$|^(EE)?[0-9]{9}$|^(EL|GR)?[0-9]{9}$|^(ES)?[0-9A-Z][0-9]{7}[0-9A-Z]$|^(FI)?[0-9]{8}$|^(FR)?[0-9A-Z]{2}[0-9]{9}$|^(GB)?([0-9]{9}([0-9]{3})?|[A-Z]{2}[0-9]{3})$|^(HU)?[0-9]{8}$|^(IE)?[0-9]{7}[A-Z]{1,2}$|^(IT)?[0-9]{11}$|^(LT)?([0-9]{9}|[0-9]{12})$|^(LU)?[0-9]{8}$|^(LV)?[0-9]{11}$|^(MT)?[0-9]{8}$|^(NL)?[0-9]{9}B[0-9]{2}$|^(PL)?[0-9]{10}$|^(PT)?[0-9]{9}$|^(RO)?[0-9]{2,10}$|^(SE)?[0-9]{12}$|^(SI)?[0-9]{8}$|^(SK)?[0-9]{10}$|^[0-9]{9}MVA$|^[0-9]{6}$|^CHE[0-9]{9}(TVA|MWST|IVA)$";
pub const EDAM_TIMEZONE_LEN_MIN: i32 = 1;
pub const EDAM_TIMEZONE_LEN_MAX: i32 = 32;
pub const EDAM_TIMEZONE_REGEX: &str = r"^([A-Za-z_-]+(/[A-Za-z_-]+)*)|(GMT(-|\+)[0-9]{1,2}(:[0-9]{2})?)$";
pub const EDAM_MIME_LEN_MIN: i32 = 3;
pub const EDAM_MIME_LEN_MAX: i32 = 255;
pub const EDAM_MIME_REGEX: &str = "^[A-Za-z]+/[A-Za-z0-9._+-]+$";
pub const EDAM_MIME_TYPE_GIF: &str = "image/gif";
pub const EDAM_MIME_TYPE_JPEG: &str = "image/jpeg";
pub const EDAM_MIME_TYPE_PNG: &str = "image/png";
pub const EDAM_MIME_TYPE_TIFF: &str = "image/tiff";
pub const EDAM_MIME_TYPE_BMP: &str = "image/bmp";
pub const EDAM_MIME_TYPE_WAV: &str = "audio/wav";
pub const EDAM_MIME_TYPE_MP3: &str = "audio/mpeg";
pub const EDAM_MIME_TYPE_AMR: &str = "audio/amr";
pub const EDAM_MIME_TYPE_AAC: &str = "audio/aac";
pub const EDAM_MIME_TYPE_M4A: &str = "audio/mp4";
pub const EDAM_MIME_TYPE_MP4_VIDEO: &str = "video/mp4";
pub const EDAM_MIME_TYPE_INK: &str = "application/vnd.evernote.ink";
pub const EDAM_MIME_TYPE_PDF: &str = "application/pdf";
pub const EDAM_MIME_TYPE_DEFAULT: &str = "application/octet-stream";
pub struct ConstEDAMMIMETYPES;
impl ConstEDAMMIMETYPES {
pub fn const_value() -> BTreeSet<String> {
BTreeSet::from([
"image/gif".to_owned(),
"image/jpeg".to_owned(),
"image/png".to_owned(),
"audio/wav".to_owned(),
"audio/mpeg".to_owned(),
"audio/amr".to_owned(),
"application/vnd.evernote.ink".to_owned(),
"application/pdf".to_owned(),
"video/mp4".to_owned(),
"audio/aac".to_owned(),
"audio/mp4".to_owned(),
])
}
}
pub struct ConstEDAMINDEXABLERESOURCEMIMETYPES;
impl ConstEDAMINDEXABLERESOURCEMIMETYPES {
pub fn const_value() -> BTreeSet<String> {
BTreeSet::from([
"application/msword".to_owned(),
"application/mspowerpoint".to_owned(),
"application/excel".to_owned(),
"application/vnd.ms-word".to_owned(),
"application/vnd.ms-powerpoint".to_owned(),
"application/vnd.ms-excel".to_owned(),
"application/vnd.openxmlformats-officedocument.wordprocessingml.document".to_owned(),
"application/vnd.openxmlformats-officedocument.presentationml.presentation".to_owned(),
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet".to_owned(),
"application/vnd.apple.pages".to_owned(),
"application/vnd.apple.numbers".to_owned(),
"application/vnd.apple.keynote".to_owned(),
"application/x-iwork-pages-sffpages".to_owned(),
"application/x-iwork-numbers-sffnumbers".to_owned(),
"application/x-iwork-keynote-sffkey".to_owned(),
])
}
}
pub struct ConstEDAMINDEXABLEPLAINTEXTMIMETYPES;
impl ConstEDAMINDEXABLEPLAINTEXTMIMETYPES {
pub fn const_value() -> BTreeSet<String> {
BTreeSet::from([
"application/x-sh".to_owned(),
"application/x-bsh".to_owned(),
"application/sql".to_owned(),
"application/x-sql".to_owned(),
])
}
}
pub const EDAM_SEARCH_QUERY_LEN_MIN: i32 = 0;
pub const EDAM_SEARCH_QUERY_LEN_MAX: i32 = 1024;
pub const EDAM_SEARCH_QUERY_REGEX: &str = r"^[^\p{Cc}\p{Zl}\p{Zp}]{0,1024}$";
pub const EDAM_HASH_LEN: i32 = 16;
pub const EDAM_USER_USERNAME_LEN_MIN: i32 = 1;
pub const EDAM_USER_USERNAME_LEN_MAX: i32 = 64;
pub const EDAM_USER_USERNAME_REGEX: &str = "^[a-z0-9]([a-z0-9_-]{0,62}[a-z0-9])?$";
pub const EDAM_USER_NAME_LEN_MIN: i32 = 1;
pub const EDAM_USER_NAME_LEN_MAX: i32 = 255;
pub const EDAM_USER_NAME_REGEX: &str = r"^[^\p{Cc}\p{Zl}\p{Zp}]{1,255}$";
pub const EDAM_TAG_NAME_LEN_MIN: i32 = 1;
pub const EDAM_TAG_NAME_LEN_MAX: i32 = 100;
pub const EDAM_TAG_NAME_REGEX: &str = r"^[^,\p{Cc}\p{Z}]([^,\p{Cc}\p{Zl}\p{Zp}]{0,98}[^,\p{Cc}\p{Z}])?$";
pub const EDAM_NOTE_TITLE_LEN_MIN: i32 = 1;
pub const EDAM_NOTE_TITLE_LEN_MAX: i32 = 255;
pub const EDAM_NOTE_TITLE_REGEX: &str = r"^[^\p{Cc}\p{Z}]([^\p{Cc}\p{Zl}\p{Zp}]{0,253}[^\p{Cc}\p{Z}])?$";
pub const EDAM_NOTE_CONTENT_LEN_MIN: i32 = 0;
pub const EDAM_NOTE_CONTENT_LEN_MAX: i32 = 5242880;
pub const EDAM_APPLICATIONDATA_NAME_LEN_MIN: i32 = 3;
pub const EDAM_APPLICATIONDATA_NAME_LEN_MAX: i32 = 32;
pub const EDAM_APPLICATIONDATA_VALUE_LEN_MIN: i32 = 0;
pub const EDAM_APPLICATIONDATA_VALUE_LEN_MAX: i32 = 4092;
pub const EDAM_APPLICATIONDATA_ENTRY_LEN_MAX: i32 = 4095;
pub const EDAM_APPLICATIONDATA_NAME_REGEX: &str = "^[A-Za-z0-9_.-]{3,32}$";
pub const EDAM_APPLICATIONDATA_VALUE_REGEX: &str = r"^[\p{Space}[^\p{Cc}]]{0,4092}$";
pub const EDAM_NOTEBOOK_NAME_LEN_MIN: i32 = 1;
pub const EDAM_NOTEBOOK_NAME_LEN_MAX: i32 = 100;
pub const EDAM_NOTEBOOK_NAME_REGEX: &str = r"^[^\p{Cc}\p{Z}]([^\p{Cc}\p{Zl}\p{Zp}]{0,98}[^\p{Cc}\p{Z}])?$";
pub const EDAM_NOTEBOOK_STACK_LEN_MIN: i32 = 1;
pub const EDAM_NOTEBOOK_STACK_LEN_MAX: i32 = 100;
pub const EDAM_NOTEBOOK_STACK_REGEX: &str = r"^[^\p{Cc}\p{Z}]([^\p{Cc}\p{Zl}\p{Zp}]{0,98}[^\p{Cc}\p{Z}])?$";
pub const EDAM_WORKSPACE_NAME_LEN_MIN: i32 = 1;
pub const EDAM_WORKSPACE_NAME_LEN_MAX: i32 = 100;
pub const EDAM_WORKSPACE_DESCRIPTION_LEN_MAX: i32 = 600;
pub const EDAM_WORKSPACE_NAME_REGEX: &str = r"^[^\p{Cc}\p{Z}]([^\p{Cc}\p{Zl}\p{Zp}]{0,98}[^\p{Cc}\p{Z}])?$";
pub const EDAM_PUBLISHING_URI_LEN_MIN: i32 = 1;
pub const EDAM_PUBLISHING_URI_LEN_MAX: i32 = 255;
pub const EDAM_PUBLISHING_URI_REGEX: &str = "^[a-zA-Z0-9.~_+-]{1,255}$";
pub struct ConstEDAMPUBLISHINGURIPROHIBITED;
impl ConstEDAMPUBLISHINGURIPROHIBITED {
pub fn const_value() -> BTreeSet<String> {
BTreeSet::from([
".".to_owned(),
"..".to_owned(),
])
}
}
pub const EDAM_PUBLISHING_DESCRIPTION_LEN_MIN: i32 = 1;
pub const EDAM_PUBLISHING_DESCRIPTION_LEN_MAX: i32 = 200;
pub const EDAM_PUBLISHING_DESCRIPTION_REGEX: &str = r"^[^\p{Cc}\p{Z}]([^\p{Cc}\p{Zl}\p{Zp}]{0,198}[^\p{Cc}\p{Z}])?$";
pub const EDAM_SAVED_SEARCH_NAME_LEN_MIN: i32 = 1;
pub const EDAM_SAVED_SEARCH_NAME_LEN_MAX: i32 = 100;
pub const EDAM_SAVED_SEARCH_NAME_REGEX: &str = r"^[^\p{Cc}\p{Z}]([^\p{Cc}\p{Zl}\p{Zp}]{0,98}[^\p{Cc}\p{Z}])?$";
pub const EDAM_USER_PASSWORD_LEN_MIN: i32 = 6;
pub const EDAM_USER_PASSWORD_LEN_MAX: i32 = 64;
pub const EDAM_USER_PASSWORD_REGEX: &str = r"^[A-Za-z0-9!#$%&'()*+,./:;<=>?@^_`{|}~\[\]\\-]{6,64}$";
pub const EDAM_BUSINESS_URI_LEN_MAX: i32 = 32;
pub const EDAM_BUSINESS_MARKETING_CODE_REGEX_PATTERN: &str = "[A-Za-z0-9-]{1,128}";
pub const EDAM_NOTE_TAGS_MAX: i32 = 100;
pub const EDAM_NOTE_RESOURCES_MAX: i32 = 1000;
pub const EDAM_USER_TAGS_MAX: i32 = 100000;
pub const EDAM_BUSINESS_TAGS_MAX: i32 = 100000;
pub const EDAM_USER_SAVED_SEARCHES_MAX: i32 = 100;
pub const EDAM_USER_NOTES_MAX: i32 = 100000;
pub const EDAM_BUSINESS_NOTES_MAX: i32 = 500000;
pub const EDAM_USER_NOTEBOOKS_MAX: i32 = 250;
pub const EDAM_USER_WORKSPACES_MAX: i32 = 0;
pub const EDAM_BUSINESS_NOTEBOOKS_MAX: i32 = 10000;
pub const EDAM_BUSINESS_WORKSPACES_MAX: i32 = 1000;
pub const EDAM_USER_RECENT_MAILED_ADDRESSES_MAX: i32 = 10;
pub const EDAM_USER_MAIL_LIMIT_DAILY_FREE: i32 = 50;
pub const EDAM_USER_MAIL_LIMIT_DAILY_PREMIUM: i32 = 200;
pub const EDAM_USER_UPLOAD_LIMIT_FREE: i64 = 62914560;
pub const EDAM_USER_UPLOAD_LIMIT_PREMIUM: i64 = 10737418240;
pub const EDAM_USER_UPLOAD_LIMIT_BUSINESS_FIRST_MONTH: i64 = 53687091200;
pub const EDAM_USER_UPLOAD_LIMIT_BUSINESS_NEXT_MONTH: i64 = 21474836480;
pub const EDAM_USER_UPLOAD_LIMIT_PLUS: i64 = 1073741824;
pub const EDAM_USER_UPLOAD_SURVEY_THRESHOLD: i64 = 5368709120;
pub const EDAM_USER_UPLOAD_LIMIT_BUSINESS: i64 = 10737418240;
pub const EDAM_USER_UPLOAD_LIMIT_BUSINESS_PER_USER: i64 = 2147483647;
pub const EDAM_NOTE_SIZE_MAX_FREE: i32 = 26214400;
pub const EDAM_NOTE_SIZE_MAX_PREMIUM: i32 = 209715200;
pub const EDAM_RESOURCE_SIZE_MAX_FREE: i32 = 26214400;
pub const EDAM_RESOURCE_SIZE_MAX_PREMIUM: i32 = 209715200;
pub const EDAM_USER_LINKED_NOTEBOOK_MAX: i32 = 100;
pub const EDAM_USER_LINKED_NOTEBOOK_MAX_PREMIUM: i32 = 500;
pub const EDAM_NOTEBOOK_BUSINESS_SHARED_NOTEBOOK_MAX: i32 = 5000;
pub const EDAM_NOTEBOOK_PERSONAL_SHARED_NOTEBOOK_MAX: i32 = 500;
pub const EDAM_NOTE_BUSINESS_SHARED_NOTE_MAX: i32 = 1000;
pub const EDAM_NOTE_PERSONAL_SHARED_NOTE_MAX: i32 = 100;
pub const EDAM_NOTE_CONTENT_CLASS_LEN_MIN: i32 = 3;
pub const EDAM_NOTE_CONTENT_CLASS_LEN_MAX: i32 = 32;
pub const EDAM_NOTE_CONTENT_CLASS_REGEX: &str = "^[A-Za-z0-9_.-]{3,32}$";
pub const EDAM_HELLO_APP_CONTENT_CLASS_PREFIX: &str = "evernote.hello.";
pub const EDAM_FOOD_APP_CONTENT_CLASS_PREFIX: &str = "evernote.food.";
pub const EDAM_CONTENT_CLASS_HELLO_ENCOUNTER: &str = "evernote.hello.encounter";
pub const EDAM_CONTENT_CLASS_HELLO_PROFILE: &str = "evernote.hello.profile";
pub const EDAM_CONTENT_CLASS_FOOD_MEAL: &str = "evernote.food.meal";
pub const EDAM_CONTENT_CLASS_SKITCH_PREFIX: &str = "evernote.skitch";
pub const EDAM_CONTENT_CLASS_SKITCH: &str = "evernote.skitch";
pub const EDAM_CONTENT_CLASS_SKITCH_PDF: &str = "evernote.skitch.pdf";
pub const EDAM_CONTENT_CLASS_PENULTIMATE_PREFIX: &str = "evernote.penultimate.";
pub const EDAM_CONTENT_CLASS_PENULTIMATE_NOTEBOOK: &str = "evernote.penultimate.notebook";
pub const EDAM_SOURCE_APPLICATION_POSTIT: &str = "postit";
pub const EDAM_SOURCE_APPLICATION_MOLESKINE: &str = "moleskine";
pub const EDAM_SOURCE_APPLICATION_EN_SCANSNAP: &str = "scanner.scansnap.evernote";
pub const EDAM_SOURCE_APPLICATION_EWC: &str = "clipncite.web";
pub const EDAM_SOURCE_APPLICATION_ANDROID_SHARE_EXTENSION: &str = "android.clipper.evernote";
pub const EDAM_SOURCE_APPLICATION_IOS_SHARE_EXTENSION: &str = "ios.clipper.evernote";
pub const EDAM_SOURCE_APPLICATION_WEB_CLIPPER: &str = "webclipper.evernote";
pub const EDAM_SOURCE_OUTLOOK_CLIPPER: &str = "app.ms.outlook";
pub const EDAM_NOTE_TITLE_QUALITY_UNTITLED: i32 = 0;
pub const EDAM_NOTE_TITLE_QUALITY_LOW: i32 = 1;
pub const EDAM_NOTE_TITLE_QUALITY_MEDIUM: i32 = 2;
pub const EDAM_NOTE_TITLE_QUALITY_HIGH: i32 = 3;
pub const EDAM_RELATED_PLAINTEXT_LEN_MIN: i32 = 1;
pub const EDAM_RELATED_PLAINTEXT_LEN_MAX: i32 = 131072;
pub const EDAM_RELATED_MAX_NOTES: i32 = 25;
pub const EDAM_RELATED_MAX_NOTEBOOKS: i32 = 1;
pub const EDAM_RELATED_MAX_TAGS: i32 = 25;
pub const EDAM_RELATED_MAX_EXPERTS: i32 = 10;
pub const EDAM_RELATED_MAX_RELATED_CONTENT: i32 = 10;
pub const EDAM_BUSINESS_NOTEBOOK_DESCRIPTION_LEN_MIN: i32 = 1;
pub const EDAM_BUSINESS_NOTEBOOK_DESCRIPTION_LEN_MAX: i32 = 200;
pub const EDAM_BUSINESS_NOTEBOOK_DESCRIPTION_REGEX: &str = r"^[^\p{Cc}\p{Z}]([^\p{Cc}\p{Zl}\p{Zp}]{0,198}[^\p{Cc}\p{Z}])?$";
pub const EDAM_BUSINESS_PHONE_NUMBER_LEN_MAX: i32 = 20;
pub const EDAM_PREFERENCE_NAME_LEN_MIN: i32 = 3;
pub const EDAM_PREFERENCE_NAME_LEN_MAX: i32 = 32;
pub const EDAM_PREFERENCE_VALUE_LEN_MIN: i32 = 1;
pub const EDAM_PREFERENCE_VALUE_LEN_MAX: i32 = 1024;
pub const EDAM_MAX_PREFERENCES: i32 = 100;
pub const EDAM_MAX_VALUES_PER_PREFERENCE: i32 = 256;
pub const EDAM_PREFERENCE_ONLY_ONE_VALUE_LEN_MAX: i32 = 16384;
pub const EDAM_PREFERENCE_NAME_REGEX: &str = "^[A-Za-z0-9_.-]{3,32}$";
pub const EDAM_PREFERENCE_VALUE_REGEX: &str = r"^[^\p{Cc}]{1,1024}$";
pub const EDAM_PREFERENCE_ONLY_ONE_VALUE_REGEX: &str = r"^[^\p{Cc}]{1,16384}$";
pub const EDAM_PREFERENCE_SHORTCUTS: &str = "evernote.shortcuts";
pub const EDAM_PREFERENCE_BUSINESS_DEFAULT_NOTEBOOK: &str = "evernote.business.notebook";
pub const EDAM_PREFERENCE_BUSINESS_QUICKNOTE: &str = "evernote.business.quicknote";
pub const EDAM_PREFERENCE_SHORTCUTS_MAX_VALUES: i32 = 250;
pub const EDAM_DEVICE_ID_LEN_MAX: i32 = 32;
pub const EDAM_DEVICE_ID_REGEX: &str = r"^[^\p{Cc}]{1,32}$";
pub const EDAM_DEVICE_DESCRIPTION_LEN_MAX: i32 = 64;
pub const EDAM_DEVICE_DESCRIPTION_REGEX: &str = r"^[^\p{Cc}]{1,64}$";
pub const EDAM_SEARCH_SUGGESTIONS_MAX: i32 = 10;
pub const EDAM_SEARCH_SUGGESTIONS_PREFIX_LEN_MAX: i32 = 1024;
pub const EDAM_SEARCH_SUGGESTIONS_PREFIX_LEN_MIN: i32 = 2;
pub const EDAM_FIND_CONTACT_DEFAULT_MAX_RESULTS: i32 = 100;
pub const EDAM_FIND_CONTACT_MAX_RESULTS: i32 = 256;
pub const EDAM_NOTE_LOCK_VIEWERS_NOTES_MAX: i32 = 150;
pub const EDAM_GET_ORDERS_MAX_RESULTS: i32 = 2000;
pub const EDAM_MESSAGE_BODY_LEN_MAX: i32 = 2048;
pub const EDAM_MESSAGE_BODY_REGEX: &str = r"^[^\p{Cc}\p{Z}]([^\p{Cc}\p{Zl}\p{Zp}]{0,2046}[^\p{Cc}\p{Z}])?$";
pub const EDAM_MESSAGE_RECIPIENTS_MAX: i32 = 50;
pub const EDAM_MESSAGE_ATTACHMENTS_MAX: i32 = 100;
pub const EDAM_MESSAGE_ATTACHMENT_TITLE_LEN_MAX: i32 = 255;
pub const EDAM_MESSAGE_ATTACHMENT_TITLE_REGEX: &str = r"^[^\p{Cc}\p{Z}]([^\p{Cc}\p{Zl}\p{Zp}]{0,253}[^\p{Cc}\p{Z}])?$";
pub const EDAM_MESSAGE_ATTACHMENT_SNIPPET_LEN_MAX: i32 = 2048;
pub const EDAM_MESSAGE_ATTACHMENT_SNIPPET_REGEX: &str = r"^[^\p{Cc}\p{Z}]([\n[^\p{Cc}\p{Zl}\p{Zp}]]{0,2046}[^\p{Cc}\p{Z}])?$";
pub const EDAM_USER_PROFILE_PHOTO_MAX_BYTES: i32 = 716800;
pub const EDAM_PROMOTION_ID_LEN_MAX: i32 = 32;
pub const EDAM_PROMOTION_ID_REGEX: &str = "^[A-Za-z0-9_.-]{1,32}$";
pub const EDAM_APP_RATING_MIN: i16 = 1;
pub const EDAM_APP_RATING_MAX: i16 = 5;
pub const EDAM_SNIPPETS_NOTES_MAX: i32 = 24;
pub const EDAM_CONNECTED_IDENTITY_REQUEST_MAX: i32 = 100;
pub const EDAM_OPEN_ID_ACCESS_TOKEN_MAX: i32 = 1000;