pub fn bib_to_cm(bib: &str) -> &'static str {
match bib {
"article" => "JournalArticle",
"book" | "booklet" => "Book",
"inbook" | "incollection" => "BookChapter",
"inproceedings" | "conference" => "ProceedingsArticle",
"manual" | "techreport" => "Report",
"mastersthesis" | "phdthesis" => "Dissertation",
"proceedings" => "Proceedings",
"unpublished" => "Manuscript",
"dataset" => "Dataset",
"online" | "www" => "WebPage",
"periodical" | "suppperiodical" => "Journal",
"software" => "Software",
_ => "Other",
}
}
pub fn cm_to_bib(cm: &str) -> &'static str {
match cm {
"Article" | "BlogPost" | "JournalArticle" => "article",
"Book" => "book",
"BookChapter" => "inbook",
"Dissertation" => "phdthesis",
"Manuscript" => "unpublished",
"Proceedings" => "proceedings",
"ProceedingsArticle" => "inproceedings",
"Report" => "techreport",
"Software" => "software",
"Dataset" => "dataset",
"WebPage" => "online",
"Journal" => "periodical",
_ => "misc",
}
}
pub fn csl_to_cm(csl: &str) -> &'static str {
match csl {
"article" | "article-magazine" | "article-newspaper" => "Article",
"article-journal" => "JournalArticle",
"bill" | "hearing" | "legal_case" | "legislation" | "regulation" | "treaty" => {
"LegalDocument"
}
"book" | "classic" => "Book",
"broadcast" | "motion_picture" | "song" => "Audiovisual",
"chapter" => "BookChapter",
"collection" => "Collection",
"dataset" => "Dataset",
"document" | "interview" | "musical_score" | "pamphlet" => "Document",
"entry" | "entry-dictionary" | "entry-encyclopedia" => "Entry",
"event" => "Event",
"figure" => "Figure",
"graphic" => "Image",
"manuscript" => "Manuscript",
"map" => "Map",
"paper-conference" => "ProceedingsArticle",
"patent" => "Patent",
"performance" => "Performance",
"periodical" => "Journal",
"personal_communication" => "PersonalCommunication",
"post" => "Post",
"post-weblog" => "BlogPost",
"report" => "Report",
"review" | "review-book" => "Review",
"software" => "Software",
"speech" => "Presentation",
"standard" => "Standard",
"thesis" => "Dissertation",
"webpage" => "WebPage",
_ => "",
}
}
pub fn cm_to_csl(cm: &str) -> &'static str {
match cm {
"Article" => "article",
"Blog" => "periodical",
"BlogPost" => "post-weblog",
"Book" => "book",
"BookChapter" => "chapter",
"Collection" => "collection",
"Dataset" => "dataset",
"Document" => "document",
"Entry" => "entry",
"Event" => "event",
"Figure" => "figure",
"Image" => "graphic",
"JournalArticle" => "article-journal",
"LegalDocument" => "legal_case",
"Manuscript" => "manuscript",
"Map" => "map",
"Audiovisual" => "motion_picture",
"Patent" => "patent",
"Performance" => "performance",
"Journal" => "periodical",
"PersonalCommunication" => "personal_communication",
"Report" => "report",
"Review" => "review",
"Software" => "software",
"Presentation" => "speech",
"Standard" => "standard",
"Dissertation" => "thesis",
"WebPage" => "webpage",
_ => "document",
}
}
pub fn cr_to_cm(cr: &str) -> &'static str {
match cr {
"book-chapter" => "BookChapter",
"book-part" => "BookPart",
"book-section" => "BookSection",
"book-series" => "BookSeries",
"book-set" => "BookSet",
"book-track" => "BookTrack",
"book" | "edited-book" | "monograph" | "reference-book" => "Book",
"component" => "Component",
"database" => "Database",
"dataset" => "Dataset",
"dissertation" => "Dissertation",
"grant" => "Grant",
"journal-article" => "JournalArticle",
"journal-issue" => "JournalIssue",
"journal-volume" => "JournalVolume",
"journal" => "Journal",
"other" => "Other",
"peer-review" => "PeerReview",
"posted-content" => "Article",
"proceedings-article" => "ProceedingsArticle",
"proceedings-series" => "ProceedingsSeries",
"proceedings" => "Proceedings",
"reference-entry" => "Entry",
"report-component" => "ReportComponent",
"report-series" => "ReportSeries",
"report" => "Report",
"standard" => "Standard",
_ => "Other",
}
}
pub fn cm_to_cr(cm: &str) -> &'static str {
match cm {
"Article" | "BlogPost" => "PostedContent",
"Blog" => "Journal",
"BookChapter" => "BookChapter",
"BookSeries" => "BookSeries",
"Book" => "Book",
"Component" => "Component",
"Dataset" => "Dataset",
"Dissertation" => "Dissertation",
"Grant" => "Grant",
"JournalArticle" => "JournalArticle",
"JournalIssue" => "JournalIssue",
"JournalVolume" => "JournalVolume",
"Journal" => "Journal",
"PeerReview" => "PeerReview",
"ProceedingsArticle" => "ProceedingsArticle",
"ProceedingsSeries" => "ProceedingsSeries",
"Proceedings" => "Proceedings",
"ReportComponent" => "ReportComponent",
"ReportSeries" => "ReportSeries",
"Report" => "Report",
"Review" => "PeerReview",
_ => "Other",
}
}
pub fn dc_to_cm(dc: &str) -> &'static str {
match dc {
"Audiovisual" => "Audiovisual",
"BlogPosting" => "BlogPost",
"Book" => "Book",
"BookChapter" => "BookChapter",
"Collection" => "Collection",
"ComputationalNotebook" => "ComputationalNotebook",
"ConferencePaper" => "ProceedingsArticle",
"ConferenceProceeding" => "Proceedings",
"DataPaper" => "JournalArticle",
"Dataset" => "Dataset",
"Dissertation" => "Dissertation",
"Event" => "Event",
"Image" => "Image",
"Instrument" => "Instrument",
"InteractiveResource" => "InteractiveResource",
"Journal" => "Journal",
"JournalArticle" => "JournalArticle",
"Model" => "Model",
"OutputManagementPlan" => "OutputManagementPlan",
"PeerReview" => "PeerReview",
"PhysicalObject" => "PhysicalObject",
"Poster" => "Poster",
"Preprint" => "Article",
"Presentation" => "Presentation",
"Report" => "Report",
"Service" => "Service",
"Software" => "Software",
"Sound" => "Sound",
"Standard" => "Standard",
"StudyRegistration" => "StudyRegistration",
"Text" => "Document",
"Thesis" => "Dissertation",
"Workflow" => "Workflow",
"Other" => "Other",
_ => "",
}
}
pub fn eu_repo_to_cm(uri: &str) -> &'static str {
let term = match uri.strip_prefix("info:eu-repo/semantics/") {
Some(t) => t,
None => return "",
};
match term {
"article" | "researchPaper" | "contributionToPeriodical" | "annotation" => "JournalArticle",
"bachelorThesis" | "masterThesis" | "doctoralThesis" | "studentThesis" => "Dissertation",
"book" => "Book",
"bookPart" => "BookChapter",
"bookReview" => "PeerReview",
"preprint" => "Article",
"report" | "technicalDocumentation" | "researchProposal" => "Report",
"patent" => "Patent",
"lecture" => "Presentation",
_ => "",
}
}
pub fn is_eu_repo_access_right(uri: &str) -> bool {
matches!(
uri,
"info:eu-repo/semantics/openAccess"
| "info:eu-repo/semantics/closedAccess"
| "info:eu-repo/semantics/embargoedAccess"
| "info:eu-repo/semantics/restrictedAccess"
)
}
pub fn cm_to_dc(cm: &str) -> &'static str {
match cm {
"Article" | "BlogPost" => "Preprint",
"Audiovisual" => "Audiovisual",
"Book" => "Book",
"BookChapter" => "BookChapter",
"Collection" => "Collection",
"ComputationalNotebook" => "ComputationalNotebook",
"Dataset" => "Dataset",
"Document" | "Entry" | "LegalDocument" | "Manuscript" | "Patent"
| "PersonalCommunication" | "Post" | "WebPage" => "Text",
"Dissertation" => "Dissertation",
"Event" => "Event",
"Figure" | "Image" | "Map" => "Image",
"Instrument" => "Instrument",
"JournalArticle" => "JournalArticle",
"Model" => "Model",
"OutputManagementPlan" => "OutputManagementPlan",
"PeerReview" | "Review" => "PeerReview",
"Performance" => "Audiovisual",
"PhysicalObject" => "PhysicalObject",
"Presentation" => "Presentation",
"ProceedingsArticle" => "ConferencePaper",
"Proceedings" => "ConferenceProceeding",
"Report" => "Report",
"Service" => "Service",
"Software" => "Software",
"Sound" => "Sound",
"Standard" => "Standard",
"StudyRegistration" => "StudyRegistration",
"Workflow" => "Workflow",
_ => "Other",
}
}
pub fn inveniordm_to_cm(id: &str) -> &'static str {
match id {
"annotationcollection" | "publication-annotationcollection" | "taxonomictreatment" => {
"Collection"
}
"book" | "publication-book" => "Book",
"conferencepaper" | "publication-conferencepaper" => "ProceedingsArticle",
"datamanagementplan" | "publication-datamanagementplan" => "OutputManagementPlan",
"dataset" => "Dataset",
"drawing" | "figure" | "image" | "photo" | "plot" => "Image",
"lesson" => "InteractiveResource",
"patent" | "publication-patent" => "Patent",
"peerreview" | "publication-peerreview" => "PeerReview",
"physicalobject" => "PhysicalObject",
"poster" | "presentation" => "Presentation",
"preprint" | "publication-preprint" => "Article",
"publication" | "publication-article" | "publication-datapaper" => "JournalArticle",
"publication-blogpost" => "BlogPost",
"publication-conferenceproceeding" => "Proceedings",
"publication-dissertation" | "publication-thesis" | "thesis" => "Dissertation",
"publication-journal" => "Journal",
"publication-other" | "other" => "Other",
"publication-report"
| "publication-technicalnote"
| "publication-workingpaper"
| "report"
| "technicalnote"
| "workingpaper" => "Report",
"publication-section" | "section" => "BookChapter",
"publication-standard" => "Standard",
"software" | "softwaredocumentation" => "Software",
"software-computationalnotebook" => "ComputationalNotebook",
"video" => "Audiovisual",
"workflow" => "Workflow",
_ => "",
}
}
pub fn cm_to_inveniordm(cm: &str) -> &'static str {
match cm {
"Article" => "publication-preprint",
"Audiovisual" => "video",
"BlogPost" => "publication-blogpost",
"Book" => "publication-book",
"BookChapter" => "publication-section",
"Collection" => "publication-annotationcollection",
"ComputationalNotebook" => "software-computationalnotebook",
"Dataset" => "dataset",
"Dissertation" => "publication-thesis",
"Document" | "Entry" | "LegalDocument" | "Manuscript" | "PersonalCommunication"
| "Post" | "WebPage" => "publication",
"Event" => "event",
"Figure" => "image-figure",
"Image" => "image",
"Instrument" | "Map" => "other",
"Journal" => "publication-journal",
"JournalArticle" => "publication-article",
"Patent" => "patent",
"PeerReview" => "publication-peerreview",
"PhysicalObject" => "physicalobject",
"Poster" => "poster",
"Presentation" => "presentation",
"ProceedingsArticle" => "publication-conferencepaper",
"Proceedings" => "publication-conferenceproceeding",
"Report" => "publication-report",
"Review" => "publication-peerreview",
"Software" => "software",
"Sound" => "audio",
"Standard" => "publication-standard",
"Workflow" => "workflow",
_ => "other",
}
}
pub fn ris_to_cm(ris: &str) -> &'static str {
match ris {
"ABST" | "ADVS" | "AGGR" | "ANCIENT" | "ART" | "BILL" | "CASE" | "CHART" | "CLSWK"
| "ELEC" | "ICOMM" | "INPR" | "MANSCPT" => "Text",
"BLOG" => "BlogPost",
"BOOK" | "EBOOK" | "EDBOOK" => "Book",
"CHAP" | "ECHAP" => "BookChapter",
"CTLG" => "Collection",
"COMP" => "Software",
"DATA" => "Dataset",
"DBASE" => "Dataset",
"DICT" => "Dictionary",
"EJOUR" | "JFULL" | "JOUR" => "JournalArticle",
"ENCYC" => "Encyclopedia",
"EQUA" => "Equation",
"FIGURE" => "Image",
"GEN" => "CreativeWork",
"GOVDOC" => "GovernmentDocument",
"GRANT" => "Grant",
"HEAR" => "Hearing",
"LEGAL" => "LegalRuleOrRegulation",
"MAP" => "Map",
"MGZN" => "MagazineArticle",
"MPCT" | "MULTI" | "VIDEO" => "Audiovisual",
"MUSIC" => "MusicScore",
"NEWS" => "NewspaperArticle",
"PAMP" => "Pamphlet",
"PAT" => "Patent",
"PCOMM" => "PersonalCommunication",
"RPRT" => "Report",
"SER" => "SerialPublication",
"SLIDE" => "Slide",
"SOUND" => "SoundRecording",
"STAND" => "Standard",
"THES" => "Dissertation",
"UNBILL" => "UnenactedBill",
"UNPB" => "UnpublishedWork",
"WEB" => "WebPage",
_ => "Other",
}
}
pub fn cm_to_ris(cm: &str) -> &'static str {
match cm {
"Article" => "JOUR",
"Audiovisual" => "VIDEO",
"BlogPost" => "BLOG",
"Book" => "BOOK",
"BookChapter" => "CHAP",
"Collection" => "CTLG",
"Dataset" => "DATA",
"Dissertation" => "THES",
"Document" => "GEN",
"Entry" => "DICT",
"Event" => "GEN",
"Figure" => "FIGURE",
"Image" => "FIGURE",
"JournalArticle" => "JOUR",
"LegalDocument" => "GEN",
"Manuscript" => "GEN",
"Map" => "MAP",
"Patent" => "PAT",
"Performance" => "GEN",
"PersonalCommunication" => "PCOMM",
"Post" => "GEN",
"ProceedingsArticle" => "CPAPER",
"Proceedings" => "CONF",
"Report" => "RPRT",
"Review" => "GEN",
"Software" => "COMP",
"Sound" => "SOUND",
"Standard" => "STAND",
"WebPage" => "WEB",
_ => "GEN",
}
}
pub fn so_to_cm(so: &str) -> &'static str {
match so {
"Article" | "NewsArticle" => "Article",
"Blog" => "Blog",
"BlogPosting" => "BlogPost",
"Book" => "Book",
"BookChapter" => "BookChapter",
"CreativeWork" => "Other",
"Dataset" => "Dataset",
"DigitalDocument" => "Document",
"Dissertation" => "Dissertation",
"Instrument" => "Instrument",
"MusicRecording" | "MusicAlbum" => "Audiovisual",
"Legislation" => "LegalDocument",
"ProfilePage" => "WebPage",
"Report" => "Report",
"ScholarlyArticle" => "JournalArticle",
"SoftwareSourceCode" => "Software",
"Video" => "Audiovisual",
"WebSite" => "WebPage",
_ => "",
}
}
pub fn cm_to_so(cm: &str) -> &'static str {
match cm {
"Article" => "Article",
"Audiovisual" => "CreativeWork",
"Blog" => "Blog",
"BlogPost" => "BlogPosting",
"BlogVolume" => "PeriodicalVolume",
"Book" => "Book",
"BookChapter" => "BookChapter",
"Collection" => "CreativeWork",
"Dataset" => "Dataset",
"Dissertation" => "Dissertation",
"Document" => "CreativeWork",
"Entry" => "CreativeWork",
"Event" => "CreativeWork",
"Figure" => "CreativeWork",
"Image" => "CreativeWork",
"Instrument" => "Product",
"JournalArticle" => "ScholarlyArticle",
"LegalDocument" => "Legislation",
"Software" => "SoftwareSourceCode",
"Presentation" => "PresentationDigitalDocument",
_ => "CreativeWork",
}
}
pub fn oa_to_cm(oa: &str) -> &'static str {
match oa {
"article" | "letter" | "preprint" | "review" => "Article",
"book" => "Book",
"book-chapter" => "BookChapter",
"dataset" => "Dataset",
"dissertation" => "Dissertation",
"editorial" => "Document",
"erratum" | "other" | "reference-entry" | "retraction" => "Other",
"grant" => "Grant",
"libguides" => "InteractiveResource",
"paratext" | "supplementary-materials" => "Component",
"peer-review" => "PeerReview",
"report" => "Report",
"standard" => "Standard",
_ => "Other",
}
}
pub fn cr_to_cm_container(cr: &str) -> &'static str {
match cr {
"book" => "Book",
"book-series" => "BookSeries",
"database" => "DataRepository",
"journal" => "Journal",
"proceedings" => "Proceedings",
"periodical" => "Periodical",
_ => "",
}
}
pub fn cr_work_to_container(work_type: &str) -> &'static str {
match work_type {
"book-chapter" => "Book",
"dataset" => "DataRepository",
"journal-article" | "journal-issue" => "Journal",
"monograph" => "BookSeries",
"proceedings-article" => "Proceedings",
"posted-content" => "Periodical",
_ => "",
}
}
pub fn dc_to_cm_container(dc: &str) -> &'static str {
match dc {
"Book" => "Book",
"BookSeries" => "BookSeries",
"DataRepository" => "DataRepository",
"Journal" => "Journal",
"Periodical" => "Periodical",
"Proceedings" => "ProceedingsSeries",
"Repository" => "Repository",
"Series" => "Series",
_ => "",
}
}
pub fn oa_to_cm_container(oa: &str) -> &'static str {
match oa {
"journal" => "Journal",
"repository" => "Repository",
"conference" => "Proceedings",
"ebook platform" => "Book",
"book series" => "BookSeries",
"metadata" => "DataRepository",
_ => "Repository",
}
}
pub fn dc_to_cm_role(dc: &str) -> &'static str {
match dc {
"ContactPerson" => "ContactPerson",
"DataCollector" => "DataCollector",
"DataCurator" => "DataCuration",
"DataManager" => "DataManager",
"Distributor" => "Distributor",
"Editor" => "Editor",
"HostingInstitution" => "HostingInstitution",
"Other" => "Other",
"Producer" => "Producer",
"ProjectLeader" => "ProjectLeader",
"ProjectManager" => "ProjectManager",
"ProjectMember" => "ProjectMember",
"RegistrationAgency" => "RegistrationAgency",
"RegistrationAuthority" => "RegistrationAuthority",
"RelatedPerson" => "RelatedPerson",
"ResearchGroup" => "ResearchGroup",
"RightsHolder" => "RightsHolder",
"Researcher" => "Researcher",
"Sponsor" => "Sponsor",
"Supervisor" => "Supervision",
"WorkPackageLeader" => "WorkPackageLeader",
_ => "Other",
}
}
pub fn cm_to_dc_role(cm: &str) -> &'static str {
match cm {
"ContactPerson" => "ContactPerson",
"DataCollector" => "DataCollector",
"DataCuration" => "DataCurator",
"DataManager" => "DataManager",
"Distributor" => "Distributor",
"Editor" => "Editor",
"HostingInstitution" => "HostingInstitution",
"Other" => "Other",
"Producer" => "Producer",
"ProjectLeader" => "ProjectLeader",
"ProjectManager" => "ProjectManager",
"ProjectMember" => "ProjectMember",
"RegistrationAgency" => "RegistrationAgency",
"RegistrationAuthority" => "RegistrationAuthority",
"RelatedPerson" => "RelatedPerson",
"ResearchGroup" => "ResearchGroup",
"RightsHolder" => "RightsHolder",
"Researcher" => "Researcher",
"Sponsor" => "Sponsor",
"Supervision" => "Supervisor",
"WorkPackageLeader" => "WorkPackageLeader",
_ => "Other",
}
}
pub fn inveniordm_to_cm_role(id: &str) -> &'static str {
match id {
"contactperson" => "ContactPerson",
"datacollector" => "DataCollector",
"datacurator" => "DataCuration",
"datamanager" => "DataManager",
"distributor" => "Distributor",
"editor" => "Editor",
"hostinginstitution" => "HostingInstitution",
"interviewee" => "Interviewee",
"other" => "Other",
"producer" => "Producer",
"projectleader" => "ProjectLeader",
"projectmanager" => "ProjectManager",
"projectmember" => "ProjectMember",
"registrationagency" => "RegistrationAgency",
"registrationauthority" => "RegistrationAuthority",
"relatedperson" => "RelatedPerson",
"researchgroup" => "ResearchGroup",
"rightsholder" => "RightsHolder",
"researcher" => "Researcher",
"sponsor" => "Sponsor",
"supervisor" => "Supervision",
"translator" => "Translator",
"workpackageleader" => "WorkPackageLeader",
_ => "Other",
}
}
pub fn cm_to_inveniordm_role(cm: &str) -> &'static str {
match cm {
"ContactPerson" => "contactperson",
"DataCollector" => "datacollector",
"DataCuration" => "datacurator",
"DataManager" => "datamanager",
"Distributor" => "distributor",
"Editor" => "editor",
"HostingInstitution" => "hostinginstitution",
"Interviewee" => "interviewee",
"Other" => "other",
"Producer" => "producer",
"ProjectLeader" => "projectleader",
"ProjectManager" => "projectmanager",
"ProjectMember" => "projectmember",
"RegistrationAgency" => "registrationagency",
"RegistrationAuthority" => "registrationauthority",
"RelatedPerson" => "relatedperson",
"ResearchGroup" => "researchgroup",
"RightsHolder" => "rightsholder",
"Researcher" => "researcher",
"Sponsor" => "sponsor",
"Supervision" => "supervisor",
"Translator" => "translator",
"WorkPackageLeader" => "workpackageleader",
_ => "other",
}
}
pub fn cr_to_cm_role(cr: &str) -> &'static str {
match cr {
"author" => "Author",
"editor" => "Editor",
"chair" => "Chair",
"reviewer" => "Reviewer",
"reader" => "Reader",
"translator" => "Translator",
_ => "Author",
}
}
pub fn cm_to_cr_role(cm: &str) -> &'static str {
match cm {
"Author" => "author",
"Editor" => "editor",
"Chair" => "chair",
"Reviewer" => "reviewer",
"Reader" => "reader",
"Translator" => "translator",
_ => "author",
}
}
pub fn cm_to_schema_org(cm: &str) -> &'static str {
match cm {
"Article" | "BlogPost" | "JournalArticle" | "ProceedingsArticle" | "PeerReview" => {
"ScholarlyArticle"
}
"Book" => "Book",
"BookChapter" => "Chapter",
"Collection" => "Collection",
"ComputationalNotebook" => "SoftwareSourceCode",
"Dataset" => "Dataset",
"Dissertation" => "Thesis",
"Document" | "Report" => "ScholarlyArticle",
"Event" => "Event",
"Figure" | "Image" => "ImageObject",
"Instrument" => "IndividualProduct",
"Software" => "SoftwareSourceCode",
"Sound" => "AudioObject",
"Audiovisual" => "VideoObject",
_ => "CreativeWork",
}
}
pub fn cm_to_citeproc(cm: &str) -> &'static str {
match cm {
"Article" | "ProceedingsArticle" => "paper-conference",
"BlogPost" => "post-weblog",
"Book" => "book",
"BookChapter" => "chapter",
"ComputationalNotebook" => "article",
"Dataset" => "dataset",
"Dissertation" => "thesis",
"Document" | "Report" => "report",
"Figure" | "Image" => "figure",
"JournalArticle" => "article-journal",
"PeerReview" => "peer-review",
"Software" => "software",
"Sound" => "song",
"Audiovisual" => "motion_picture",
_ => "article",
}
}
pub const WORK_TYPES: &[&str] = &[
"Article",
"Audiovisual",
"BlogPost",
"Book",
"BookChapter",
"Collection",
"ComputationalNotebook",
"Dataset",
"Dissertation",
"Document",
"Entry",
"Event",
"Figure",
"Grant",
"Image",
"Instrument",
"InteractiveResource",
"JournalArticle",
"LegalDocument",
"Manuscript",
"Map",
"Model",
"OutputManagementPlan",
"Patent",
"PeerReview",
"Performance",
"PersonalCommunication",
"PhysicalObject",
"Post",
"Presentation",
"ProceedingsArticle",
"Proceedings",
"Report",
"Review",
"Service",
"Software",
"Sound",
"Standard",
"StudyRegistration",
"WebPage",
"Workflow",
];
pub fn lookup_work_type(input: &str) -> &'static str {
let lower = input.to_lowercase();
WORK_TYPES
.iter()
.copied()
.find(|&t| t.to_lowercase() == lower)
.unwrap_or("")
}
pub fn cm_to_cr_filter_type(cm: &str) -> &'static str {
match cm {
"Article" | "BlogPost" => "posted-content",
"Book" => "book",
"BookChapter" => "book-chapter",
"Component" => "component",
"Dataset" => "dataset",
"Dissertation" => "dissertation",
"Entry" => "reference-entry",
"Grant" => "grant",
"Journal" => "journal",
"JournalArticle" => "journal-article",
"JournalIssue" => "journal-issue",
"JournalVolume" => "journal-volume",
"PeerReview" => "peer-review",
"Proceedings" => "proceedings",
"ProceedingsArticle" => "proceedings-article",
"ProceedingsSeries" => "proceedings-series",
"Report" => "report",
"ReportComponent" => "report-component",
"ReportSeries" => "report-series",
"Standard" => "standard",
_ => "",
}
}
pub const CONTRIBUTOR_TYPES: &[&str] = &["Person", "Organization"];
pub const CONTRIBUTOR_ROLES: &[&str] = &[
"Author",
"Chair",
"Conceptualization",
"ContactPerson",
"DataCollector",
"DataCuration",
"DataManager",
"Distributor",
"Editor",
"FormalAnalysis",
"FundingAcquisition",
"HostingInstitution",
"Interviewee",
"Investigation",
"Maintainer",
"Methodology",
"Other",
"Producer",
"ProjectAdministration",
"ProjectLeader",
"ProjectManager",
"ProjectMember",
"Reader",
"RegistrationAgency",
"RegistrationAuthority",
"RelatedPerson",
"ResearchGroup",
"Researcher",
"Resources",
"Reviewer",
"ReviewerExternal",
"ReviewAssistant",
"RightsHolder",
"Software",
"Sponsor",
"StatsReviewer",
"Supervision",
"Translator",
"Validation",
"Visualization",
"WorkPackageLeader",
"WritingOriginalDraft",
"WritingReviewEditing",
];
pub const IDENTIFIER_TYPES: &[&str] = &[
"ARK", "ARXIV", "BIBCODE", "DOI", "GUID", "Handle", "ISBN", "ISSN", "ISTC", "LISSN", "LSID",
"OpenAlex", "PISSN", "PMID", "PMCID", "PURL", "RAID", "RID", "SWHID", "URL", "URN", "UUID",
"w3id",
];
pub const RELATION_TYPES: &[&str] = &[
"Cites",
"Compiles",
"Continues",
"Describes",
"Documents",
"HasMetadata",
"HasPart",
"HasPreprint",
"HasReview",
"HasTranslation",
"HasVersion",
"IsCitedBy",
"IsCompiledBy",
"IsContinuedBy",
"IsDerivedFrom",
"IsDescribedBy",
"IsDocumentedBy",
"IsIdenticalTo",
"IsMetadataFor",
"IsNewVersionOf",
"IsOriginalFormOf",
"IsPartOf",
"IsPreprintOf",
"IsPreviousVersionOf",
"IsReferencedBy",
"IsRequiredBy",
"IsReviewOf",
"IsReviewedBy",
"IsSourceOf",
"IsSupplementTo",
"IsSupplementedBy",
"IsTranslationOf",
"IsVariantFormOf",
"IsVersionOf",
"References",
"Requires",
];
pub const COMMONMETA_RELATION_TYPES: &[&str] = &[
"IsNewVersionOf",
"IsPreviousVersionOf",
"IsVersionOf",
"HasVersion",
"IsPartOf",
"HasPart",
"IsVariantFormOf",
"IsOriginalFormOf",
"IsIdenticalTo",
"IsTranslationOf",
"HasReview",
"IsReviewOf",
"IsPreprintOf",
"HasPreprint",
"IsSupplementTo",
"IsSupplementedBy",
];
pub fn topic_to_subfield(topic: &str) -> &'static str {
const MAP: &[(&str, &str)] = &[
("10001","1908"),("10002","3107"),("10003","1408"),("10004","1111"),
("10005","2309"),("10006","1407"),("10007","2000"),("10008","3304"),
("10009","2738"),("10010","2739"),("10011","1208"),("10012","1311"),
("10013","1605"),("10014","1110"),("10015","1312"),("10016","2312"),
("10017","1902"),("10018","2208"),("10019","1402"),("10020","1702"),
("10021","1203"),("10022","3107"),("10023","2738"),("10024","2105"),
("10025","3106"),("10026","3103"),("10027","2712"),("10028","1702"),
("10029","2306"),("10030","2105"),("10031","2403"),("10032","1910"),
("10033","2205"),("10034","1203"),("10035","2704"),("10036","1707"),
("10037","3104"),("10038","2725"),("10039","3103"),("10040","2207"),
("10041","2725"),("10042","2805"),("10043","2713"),("10044","1312"),
("10045","2208"),("10046","2207"),("10047","2003"),("10048","3106"),
("10049","3107"),("10050","1803"),("10051","2737"),("10052","1707"),
("10053","3320"),("10054","1708"),("10055","3312"),("10056","2804"),
("10057","1707"),("10058","1405"),("10059","2204"),("10060","2737"),
("10061","2608"),("10062","1306"),("10063","2502"),("10064","3109"),
("10065","2705"),("10066","1312"),("10067","2003"),("10068","1802"),
("10069","2202"),("10070","3312"),("10071","2732"),("10072","3304"),
("10073","2721"),("10074","2505"),("10075","1902"),("10076","1110"),
("10077","2804"),("10078","2105"),("10079","2505"),("10080","1705"),
("10081","1402"),("10082","2725"),("10083","2505"),("10084","2736"),
("10085","2728"),("10086","2737"),("10087","1911"),("10088","2204"),
("10089","2303"),("10090","2505"),("10091","2739"),("10092","1605"),
("10093","3106"),("10094","2738"),("10095","3103"),("10096","1604"),
("10097","2505"),("10098","1102"),("10099","3104"),("10100","1702"),
("10101","1710"),("10102","1804"),("10103","3204"),("10104","2204"),
("10105","2745"),("10106","2805"),("10107","2505"),("10108","3320"),
("10109","1911"),("10110","1908"),("10111","2303"),("10112","2406"),
("10113","3505"),("10114","3612"),("10115","1408"),("10116","2743"),
("10117","1507"),("10118","2725"),("10119","2306"),("10120","1311"),
("10121","2215"),("10122","2307"),("10123","1312"),("10124","2740"),
("10125","2208"),("10126","1702"),("10127","2003"),("10128","2000"),
("10129","2716"),("10130","3304"),("10131","2504"),("10132","2503"),
("10133","3315"),("10134","1311"),("10135","1109"),("10136","2613"),
("10137","2734"),("10138","1705"),("10139","2310"),("10140","2916"),
("10141","1106"),("10142","1703"),("10143","2740"),("10144","2705"),
("10145","1406"),("10146","2713"),("10147","1313"),("10148","2208"),
("10149","3314"),("10150","2725"),("10151","2721"),("10152","1103"),
("10153","3312"),("10154","1407"),("10155","2737"),("10156","3207"),
("10157","2732"),("10158","2730"),("10159","3103"),("10160","2205"),
("10161","2211"),("10162","3304"),("10163","2730"),("10164","1404"),
("10165","3314"),("10166","2739"),("10167","2713"),("10168","3203"),
("10169","1312"),("10170","2731"),("10171","2204"),("10172","2705"),
("10173","2206"),("10174","1105"),("10175","2208"),("10176","2716"),
("10177","2739"),("10178","2730"),("10179","2504"),("10180","1602"),
("10181","1702"),("10182","3203"),("10183","1306"),("10184","1110"),
("10185","2734"),("10186","2922"),("10187","2208"),("10188","2210"),
("10189","2746"),("10190","2307"),("10191","2202"),("10192","2505"),
("10193","2746"),("10194","2604"),("10195","2725"),("10196","2737"),
("10197","2312"),("10198","2705"),("10199","2303"),("10200","2745"),
("10201","1702"),("10202","2740"),("10203","1710"),("10204","2505"),
("10205","2208"),("10206","1804"),("10207","1312"),("10208","2002"),
("10209","2735"),("10210","2312"),("10211","1703"),("10212","2208"),
("10213","3321"),("10214","3203"),("10215","1702"),("10216","3312"),
("10217","2705"),("10218","2713"),("10219","2211"),("10220","2207"),
("10221","2211"),("10222","1312"),("10223","2207"),("10224","3106"),
("10225","1106"),("10226","2306"),("10227","2713"),("10228","2208"),
("10229","2604"),("10230","2306"),("10231","2730"),("10232","2208"),
("10233","2205"),("10234","2737"),("10235","3306"),("10236","2304"),
("10237","1702"),("10238","2734"),("10239","3322"),("10240","1312"),
("10241","2805"),("10242","3203"),("10243","2613"),("10244","3109"),
("10245","2504"),("10246","1705"),("10247","2208"),("10248","3109"),
("10249","1705"),("10250","2731"),("10251","3103"),("10252","2736"),
("10253","2740"),("10254","2739"),("10255","1910"),("10256","3003"),
("10257","3506"),("10258","3205"),("10259","3312"),("10260","1710"),
("10261","1311"),("10262","2208"),("10263","3203"),("10264","2205"),
("10265","3310"),("10266","2306"),("10267","3304"),("10268","1312"),
("10269","1312"),("10270","1710"),("10271","1908"),("10272","3207"),
("10273","1705"),("10274","1605"),("10275","2505"),("10276","2746"),
("10277","2734"),("10278","2208"),("10279","2748"),("10280","2746"),
("10281","2208"),("10282","2003"),("10283","2805"),("10284","2215"),
("10285","2724"),("10286","1710"),("10287","2608"),("10288","2611"),
("10289","3320"),("10290","2729"),("10291","2727"),("10292","2705"),
("10293","2712"),("10294","1312"),("10295","2204"),("10296","2405"),
("10297","1211"),("10298","3313"),("10299","2208"),("10300","2713"),
("10301","1312"),("10302","2309"),("10303","1312"),("10304","2608"),
("10305","2208"),("10306","2504"),("10307","2733"),("10308","2745"),
("10309","2720"),("10310","2505"),("10311","2505"),("10312","3600"),
("10313","2508"),("10314","3312"),("10315","1800"),("10316","3205"),
("10317","1705"),("10318","3312"),("10319","2306"),("10320","1702"),
("10321","2505"),("10322","2740"),("10323","2204"),("10324","2310"),
("10325","3103"),("10326","2208"),("10327","3600"),("10328","1404"),
("10329","2712"),("10330","2312"),("10331","1707"),("10332","2306"),
("10333","1103"),("10334","2809"),("10335","2730"),("10336","2730"),
("10337","2721"),("10338","2204"),("10339","2206"),("10340","2713"),
("10341","2303"),("10342","2807"),("10343","1313"),("10344","1407"),
("10345","2720"),("10346","3106"),("10347","2306"),("10348","3306"),
("10349","3312"),("10350","3605"),("10351","2713"),("10352","2737"),
("10353","1604"),("10354","1605"),("10355","3312"),("10356","3505"),
("10357","1803"),("10358","3108"),("10359","3504"),("10360","2206"),
("10361","2208"),("10362","1212"),("10363","2208"),("10364","2739"),
("10365","2715"),("10366","1208"),("10367","1100"),("10368","3506"),
("10369","2208"),("10370","2213"),("10371","2403"),("10372","2741"),
("10373","2747"),("10374","1703"),("10375","3004"),("10376","3203"),
("10377","2211"),("10378","2741"),("10379","1307"),("10380","3306"),
("10381","2713"),("10382","3107"),("10383","1203"),("10384","3106"),
("10385","1105"),("10386","2210"),("10387","2916"),("10388","1707"),
("10389","2507"),("10390","2743"),("10391","2002"),("10392","2730"),
("10393","2002"),("10394","2746"),("10395","1803"),("10396","2211"),
("10397","2737"),("10398","1906"),("10399","2211"),("10400","1705"),
("10401","2712"),("10402","2204"),("10403","3205"),("10404","1312"),
("10405","1605"),("10406","3103"),("10407","1312"),("10408","2727"),
("10409","2208"),("10410","2611"),("10411","1106"),("10412","2204"),
("10413","1908"),("10414","2736"),("10415","1408"),("10416","2713"),
("10417","2740"),("10418","2745"),("10419","2310"),("10420","2728"),
("10421","3314"),("10422","1312"),("10423","2804"),("10424","2208"),
("10425","3107"),("10426","3203"),("10427","2805"),("10428","2404"),
("10429","2805"),("10430","1710"),("10431","1110"),("10432","1312"),
("10433","1306"),("10434","1110"),("10435","2305"),("10436","2703"),
("10437","3304"),("10438","2002"),("10439","1105"),("10440","2505"),
("10441","1312"),("10442","2746"),("10443","3320"),("10444","1707"),
("10445","2704"),("10446","3312"),("10447","2307"),("10448","2805"),
("10449","2740"),("10450","1104"),("10451","1110"),("10452","2720"),
("10453","2729"),("10454","2208"),("10455","2732"),("10456","1702"),
("10457","3304"),("10458","2746"),("10459","2738"),("10460","2208"),
("10461","2208"),("10462","1702"),("10463","3103"),("10464","1604"),
("10465","2805"),("10466","1902"),("10467","1803"),("10468","2105"),
("10469","2403"),("10470","1709"),("10471","2002"),("10472","2208"),
("10473","1110"),("10474","2505"),("10475","3207"),("10476","2105"),
("10477","3103"),("10478","2505"),("10479","2215"),("10480","1503"),
("10481","1704"),("10482","2739"),("10483","2804"),("10484","2215"),
("10485","3207"),("10486","1106"),("10487","1105"),("10488","2502"),
("10489","2807"),("10490","3107"),("10491","2212"),("10492","1307"),
("10493","1312"),("10494","1110"),("10495","1503"),("10496","2717"),
("10497","1312"),("10498","2738"),("10499","2745"),("10500","2206"),
("10501","2507"),("10502","2208"),("10503","2003"),("10504","2208"),
("10505","1312"),("10506","2403"),("10507","2204"),("10508","3604"),
("10509","3306"),("10510","2742"),("10511","2505"),("10512","2746"),
("10513","2507"),("10514","2211"),("10515","1306"),("10516","2727"),
("10517","1402"),("10518","2740"),("10519","1607"),("10520","1110"),
("10521","1312"),("10522","2741"),("10523","3107"),("10524","2207"),
("10525","3207"),("10526","2725"),("10527","3106"),("10528","2713"),
("10529","2802"),("10530","2502"),("10531","1707"),("10532","1607"),
("10533","1706"),("10534","2205"),("10535","2308"),("10536","3504"),
("10537","2738"),("10538","1710"),("10539","1408"),("10540","1304"),
("10541","2604"),("10542","2808"),("10543","2740"),("10544","2503"),
("10545","1703"),("10546","3320"),("10547","3205"),("10548","1605"),
("10549","2740"),("10550","2743"),("10551","2209"),("10552","2730"),
("10553","2206"),("10554","2716"),("10555","2306"),("10556","2730"),
("10557","3315"),("10558","2208"),("10559","2208"),("10560","2712"),
("10561","3304"),("10562","2746"),("10563","2741"),("10564","2310"),
("10565","3203"),("10566","3107"),("10567","2209"),("10568","2210"),
("10569","2746"),("10570","2730"),("10571","2207"),("10572","1908"),
("10573","2208"),("10574","3312"),("10575","1705"),("10576","2739"),
("10577","2303"),("10578","1605"),("10579","1705"),("10580","2403"),
("10581","2805"),("10582","2739"),("10583","2730"),("10584","1102"),
("10585","3317"),("10586","1707"),("10587","2713"),("10588","2610"),
("10589","3304"),("10590","2208"),("10591","3104"),("10592","2505"),
("10593","1312"),("10594","1311"),("10595","1205"),("10596","2916"),
("10597","2202"),("10598","2705"),("10599","2746"),("10600","2739"),
("10601","1707"),("10602","1312"),("10603","2208"),("10604","1312"),
("10605","2002"),("10606","2740"),("10607","2504"),("10608","2806"),
("10609","3312"),("10610","2502"),("10611","2208"),("10612","2504"),
("10613","1311"),("10614","2808"),("10615","2206"),("10616","1110"),
("10617","1307"),("10618","2740"),("10619","2746"),("10620","1306"),
("10621","1312"),("10622","3107"),("10623","2208"),("10624","2208"),
("10625","2713"),("10626","2202"),("10627","1707"),("10628","3320"),
("10629","3600"),("10630","2746"),("10631","1306"),("10632","2002"),
("10633","2210"),("10634","2723"),("10635","2210"),("10636","3204"),
("10637","1702"),("10638","1707"),("10639","1702"),("10640","1602"),
("10641","3604"),("10642","2741"),("10643","1910"),("10644","1902"),
("10645","2711"),("10646","3311"),("10647","1904"),("10648","1709"),
("10649","2720"),("10650","1106"),("10651","2208"),("10652","3312"),
("10653","2207"),("10654","2713"),("10655","2202"),("10656","3204"),
("10657","3107"),("10658","2713"),("10659","2303"),("10660","2507"),
("10661","2502"),("10662","2211"),("10663","2203"),("10664","1702"),
("10665","2740"),("10666","3107"),("10667","3205"),("10668","2729"),
("10669","2303"),("10670","2202"),("10671","2715"),("10672","2210"),
("10673","2729"),("10674","3304"),("10675","2204"),("10676","1302"),
("10677","3207"),("10678","2736"),("10679","1710"),("10680","2202"),
("10681","3104"),("10682","1702"),("10683","1607"),("10684","2727"),
("10685","2730"),("10686","2307"),("10687","2205"),("10688","1707"),
("10689","2214"),("10690","2205"),("10691","1312"),("10692","2307"),
("10693","2704"),("10694","2712"),("10695","2405"),("10696","2740"),
("10697","2740"),("10698","3313"),("10699","3207"),("10700","2210"),
("10701","1605"),("10702","1311"),("10703","1404"),("10704","3003"),
("10705","2210"),("10706","2728"),("10707","2210"),("10708","3203"),
("10709","3207"),("10710","2304"),("10711","1702"),("10712","3309"),
("10713","2205"),("10714","1705"),("10715","1705"),("10716","2205"),
("10717","2210"),("10718","3320"),("10719","2206"),("10720","1703"),
("10721","1605"),("10722","3312"),("10723","2210"),("10724","1312"),
("10725","1312"),("10726","3311"),("10727","2741"),("10728","2740"),
("10729","2502"),("10730","3204"),("10731","3204"),("10732","2206"),
("10733","1110"),("10734","1710"),("10735","2505"),("10736","2506"),
("10737","3600"),("10738","3316"),("10739","3107"),("10740","2208"),
("10741","1711"),("10742","1705"),("10743","1712"),("10744","3103"),
("10745","2705"),("10746","2720"),("10747","3312"),("10748","2712"),
("10749","3320"),("10750","1106"),("10751","1311"),("10752","2208"),
("10753","2310"),("10754","2713"),("10755","2730"),("10756","1311"),
("10757","3305"),("10758","2002"),("10759","1203"),("10760","2746"),
("10761","2208"),("10762","3203"),("10763","2209"),("10764","1702"),
("10765","1910"),("10766","2305"),("10767","2208"),("10768","2208"),
("10769","1311"),("10770","2305"),("10771","2742"),("10772","1705"),
("10773","1312"),("10774","1110"),("10775","1707"),("10776","2746"),
("10777","3320"),("10778","1207"),("10779","2303"),("10780","2213"),
("10781","2208"),("10782","2204"),("10783","2203"),("10784","2204"),
("10785","2002"),("10786","2739"),("10787","3103"),("10788","2805"),
("10789","1709"),("10790","2307"),("10791","2207"),("10792","1703"),
("10793","2712"),("10794","3320"),("10795","3600"),("10796","1705"),
("10797","1404"),("10798","1606"),("10799","1707"),("10800","3005"),
("10801","2202"),("10802","3308"),("10803","1709"),("10804","2002"),
("10805","2203"),("10806","2211"),("10807","1604"),("10808","2203"),
("10809","3614"),("10810","2507"),("10811","2505"),("10812","1707"),
("10813","3204"),("10814","2804"),("10815","2303"),("10816","2740"),
("10817","1605"),("10818","3106"),("10819","2307"),("10820","1702"),
("10821","2705"),("10822","2204"),("10823","2739"),("10824","1707"),
("10825","1307"),("10826","3204"),("10827","3600"),("10828","1711"),
("10829","1705"),("10830","2703"),("10831","2723"),("10832","2712"),
("10833","3306"),("10834","2210"),("10835","1605"),("10836","1312"),
("10837","2708"),("10838","3404"),("10839","2746"),("10840","2210"),
("10841","2002"),("10842","2210"),("10843","3318"),("10844","2741"),
("10845","2613"),("10846","2208"),("10847","2208"),("10848","1703"),
("10849","2607"),("10850","2210"),("10851","2208"),("10852","3603"),
("10853","3205"),("10854","2738"),("10855","2728"),("10856","1405"),
("10857","1315"),("10858","2916"),("10859","2508"),("10860","1711"),
("10861","2733"),("10862","1702"),("10863","2737"),("10864","2204"),
("10865","2505"),("10866","2739"),("10867","2706"),("10868","2204"),
("10869","1110"),("10870","2740"),("10871","1605"),("10872","3402"),
("10873","2404"),("10874","1304"),("10875","1110"),("10876","2207"),
("10877","2723"),("10878","1312"),("10879","2204"),("10880","1406"),
("10881","2720"),("10882","2705"),("10883","3311"),("10884","2604"),
("10885","1312"),("10886","2504"),("10887","1312"),("10888","1707"),
("10889","1111"),("10890","2713"),("10891","2202"),("10892","2212"),
("10893","3312"),("10894","2305"),("10895","2302"),("10896","2610"),
("10897","2402"),("10898","2308"),("10899","2610"),("10900","1305"),
("10901","1707"),("10902","2707"),("10903","2505"),("10904","1708"),
("10905","2105"),("10906","1702"),("10907","3315"),("10908","1607"),
("10909","1605"),("10910","1408"),("10911","1312"),("10912","2739"),
("10913","2208"),("10914","2805"),("10915","2916"),("10916","2746"),
("10917","2207"),("10918","2805"),("10919","2728"),("10920","3003"),
("10921","3106"),("10922","2505"),("10923","3107"),("10924","2705"),
("10925","2734"),("10926","2746"),("10927","3312"),("10928","1804"),
("10929","1312"),("10930","2306"),("10931","1711"),("10932","1312"),
("10933","1708"),("10934","1312"),("10935","2743"),("10936","2208"),
("10937","2737"),("10938","2210"),("10939","2504"),("10940","2604"),
("10941","1210"),("10942","3318"),("10943","1310"),("10944","2202"),
("10945","2737"),("10946","3614"),("10947","3003"),("10948","2607"),
("10949","2804"),("10950","2739"),("10951","1702"),("10952","1312"),
("10953","3320"),("10954","2741"),("10955","1911"),("10956","1605"),
("10957","2740"),("10958","2204"),("10959","3304"),("10960","2743"),
("10961","2746"),("10962","1507"),("10963","2612"),("10964","2208"),
("10965","1904"),("10966","2721"),("10967","2210"),("10968","2613"),
("10969","2212"),("10970","3207"),("10971","2809"),("10972","2207"),
("10973","1604"),("10974","1404"),("10975","2745"),("10976","2725"),
("10977","2741"),("10978","2735"),("10979","2713"),("10980","2746"),
("10981","2713"),("10982","2805"),("10983","2740"),("10984","2733"),
("10985","2805"),("10986","2214"),("10987","2002"),("10988","3107"),
("10989","2729"),("10990","2740"),("10991","2002"),("10992","1204"),
("10993","2403"),("10994","3312"),("10995","2304"),("10996","1704"),
("10997","2739"),("10998","2210"),("10999","2746"),("11000","2725"),
("11001","2705"),("11002","2307"),("11003","3311"),("11004","2303"),
("11005","2208"),("11006","2215"),("11007","2102"),("11008","2202"),
("11009","2204"),("11010","1702"),("11011","2717"),("11012","2604"),
("11013","2708"),("11014","2002"),("11015","2739"),("11016","2741"),
("11017","1707"),("11018","2204"),("11019","1707"),("11020","2403"),
("11021","2705"),("11022","2610"),("11023","2204"),("11024","3312"),
("11025","2504"),("11026","2740"),("11027","1308"),("11028","3321"),
("11029","2727"),("11030","2746"),("11031","1803"),("11032","1708"),
("11033","2708"),("11034","1711"),("11035","2746"),("11036","2736"),
("11037","2713"),("11038","2202"),("11039","3304"),("11040","3203"),
("11041","1312"),("11042","3312"),("11043","2002"),("11044","3106"),
("11045","3312"),("11046","2213"),("11047","3318"),("11048","2303"),
("11049","2604"),("11050","3107"),("11051","2717"),("11052","2208"),
("11053","2207"),("11054","2746"),("11055","2746"),("11056","2303"),
("11057","2734"),("11058","1802"),("11059","2002"),("11060","2735"),
("11061","1910"),("11062","2210"),("11063","1703"),("11064","2705"),
("11065","1110"),("11066","1110"),("11067","2730"),("11068","2732"),
("11069","2746"),("11070","3320"),("11071","2736"),("11072","1312"),
("11073","2204"),("11074","3404"),("11075","1312"),("11076","3320"),
("11077","1311"),("11078","1312"),("11079","3205"),("11080","2746"),
("11081","2207"),("11082","2202"),("11083","2705"),("11084","3600"),
("11085","2736"),("11086","2405"),("11087","2505"),("11088","2306"),
("11089","2306"),("11090","3106"),("11091","2210"),("11092","2745"),
("11093","3203"),("11094","2805"),("11095","2711"),("11096","2202"),
("11097","2738"),("11098","1110"),("11099","2203"),("11100","2210"),
("11101","3304"),("11102","2208"),("11103","2404"),("11104","3207"),
("11105","1707"),("11106","1711"),("11107","2916"),("11108","2311"),
("11109","2737"),("11110","2207"),("11111","1607"),("11112","2705"),
("11113","1210"),("11114","1406"),("11115","2205"),("11116","2706"),
("11117","2736"),("11118","3205"),("11119","2305"),("11120","3312"),
("11121","3315"),("11122","1706"),("11123","3203"),("11124","1312"),
("11125","1703"),("11126","2210"),("11127","2208"),("11128","2507"),
("11129","1606"),("11130","1702"),("11131","1307"),("11132","3203"),
("11133","2202"),("11134","2734"),("11135","2713"),("11136","1110"),
("11137","1207"),("11138","2210"),("11139","2727"),("11140","2712"),
("11141","2735"),("11142","1308"),("11143","2210"),("11144","1307"),
("11145","2210"),("11146","2712"),("11147","3312"),("11148","3205"),
("11149","2740"),("11150","1307"),("11151","2608"),("11152","2610"),
("11153","2739"),("11154","2734"),("11155","2405"),("11156","2743"),
("11157","2716"),("11158","1705"),("11159","2209"),("11160","2204"),
("11161","1406"),("11162","2505"),("11163","2739"),("11164","2305"),
("11165","1707"),("11166","2602"),("11167","2748"),("11168","3303"),
("11169","2505"),("11170","2202"),("11171","1311"),("11172","2708"),
("11173","2728"),("11174","2735"),("11175","3107"),("11176","2740"),
("11177","3107"),("11178","1312"),("11179","1110"),("11180","2310"),
("11181","1705"),("11182","1803"),("11183","3108"),("11184","2735"),
("11185","2208"),("11186","2306"),("11187","1705"),("11188","2312"),
("11189","2746"),("11190","2204"),("11191","2604"),("11192","2212"),
("11193","1314"),("11194","2731"),("11195","1803"),("11196","2204"),
("11197","3312"),("11198","3316"),("11199","2703"),("11200","2208"),
("11201","2211"),("11202","2211"),("11203","3312"),("11204","2809"),
("11205","2610"),("11206","3109"),("11207","2734"),("11208","2204"),
("11209","2707"),("11210","2604"),("11211","1907"),("11212","1204"),
("11213","1311"),("11214","1311"),("11215","2720"),("11216","3108"),
("11217","2705"),("11218","2746"),("11219","1312"),("11220","2205"),
("11221","2730"),("11222","2504"),("11223","2209"),("11224","2504"),
("11225","2105"),("11226","1102"),("11227","2712"),("11228","1105"),
("11229","1110"),("11230","2210"),("11231","2305"),("11232","2713"),
("11233","2206"),("11234","1902"),("11235","2613"),("11236","2207"),
("11237","1312"),("11238","2737"),("11239","3312"),("11240","2505"),
("11241","1711"),("11242","2505"),("11243","2713"),("11244","2307"),
("11245","2206"),("11246","2732"),("11247","1110"),("11248","2208"),
("11249","2208"),("11250","2212"),("11251","2713"),("11252","3312"),
("11253","2713"),("11254","2206"),("11255","2204"),("11256","3312"),
("11257","2002"),("11258","2746"),("11259","2303"),("11260","2740"),
("11261","3109"),("11262","3107"),("11263","2208"),("11264","2736"),
("11265","3206"),("11266","2808"),("11267","2746"),("11268","1110"),
("11269","1702"),("11270","2002"),("11271","2728"),("11272","2204"),
("11273","1702"),("11274","2728"),("11275","1111"),("11276","1702"),
("11277","2505"),("11278","2502"),("11279","2505"),("11280","2720"),
("11281","1604"),("11282","2738"),("11283","2214"),("11284","2212"),
("11285","3204"),("11286","2505"),("11287","1306"),("11288","2725"),
("11289","1312"),("11290","2713"),("11291","2731"),("11292","2735"),
("11293","2746"),("11294","2916"),("11295","3207"),("11296","2730"),
("11297","2740"),("11298","1605"),("11299","3304"),("11300","3320"),
("11301","2204"),("11302","2305"),("11303","1702"),("11304","2741"),
("11305","1312"),("11306","2713"),("11307","1702"),("11308","1312"),
("11309","1711"),("11310","1311"),("11311","2304"),("11312","2305"),
("11313","2403"),("11314","2737"),("11315","2505"),("11316","2713"),
("11317","2213"),("11318","2734"),("11319","1313"),("11320","1902"),
("11321","1705"),("11322","2708"),("11323","3103"),("11324","1304"),
("11325","2202"),("11326","1803"),("11327","2707"),("11328","2731"),
("11329","2607"),("11330","2734"),("11331","2312"),("11332","1312"),
("11333","1902"),("11334","2738"),("11335","1312"),("11336","2310"),
("11337","2803"),("11338","2208"),("11339","1312"),("11340","1305"),
("11341","2505"),("11342","2505"),("11343","2208"),("11344","2215"),
("11345","2613"),("11346","2403"),("11347","1705"),("11348","2715"),
("11349","1707"),("11350","3312"),("11351","2210"),("11352","2205"),
("11353","1311"),("11354","1911"),("11355","2730"),("11356","2740"),
("11357","1804"),("11358","3616"),("11359","2741"),("11360","2507"),
("11361","2740"),("11362","2210"),("11363","3504"),("11364","2746"),
("11365","1402"),("11366","2204"),("11367","2202"),("11368","2728"),
("11369","2734"),("11370","1710"),("11371","2305"),("11372","2210"),
("11373","3205"),("11374","1311"),("11375","2205"),("11376","3600"),
("11377","2741"),("11378","2715"),("11379","1507"),("11380","3311"),
("11381","2746"),("11382","2206"),("11383","2202"),("11384","3312"),
("11385","1312"),("11386","1109"),("11387","2309"),("11388","3203"),
("11389","2735"),("11390","1104"),("11391","1213"),("11392","2208"),
("11393","2204"),("11394","2207"),("11395","2741"),("11396","3605"),
("11397","3320"),("11398","1709"),("11399","1307"),("11400","3207"),
("11401","2312"),("11402","2728"),("11403","2403"),("11404","1111"),
("11405","1910"),("11406","2804"),("11407","2204"),("11408","2214"),
("11409","2208"),("11410","3322"),("11411","2734"),("11412","1311"),
("11413","1803"),("11414","3107"),("11415","3109"),("11416","2612"),
("11417","2208"),("11418","1110"),("11419","2502"),("11420","3305"),
("11421","3321"),("11422","2713"),("11423","1106"),("11424","1702"),
("11425","1210"),("11426","1110"),("11427","2742"),("11428","2602"),
("11429","2208"),("11430","3604"),("11431","3207"),("11432","3318"),
("11433","3207"),("11434","1603"),("11435","1703"),("11436","1109"),
("11437","1408"),("11438","2741"),("11439","1707"),("11440","1605"),
("11441","1605"),("11442","2505"),("11443","1804"),("11444","2208"),
("11445","3103"),("11446","3600"),("11447","1711"),("11448","1707"),
("11449","3107"),("11450","1712"),("11451","2208"),("11452","3506"),
("11453","2746"),("11454","3207"),("11455","1305"),("11456","2807"),
("11457","2737"),("11458","2208"),("11459","1902"),("11460","1602"),
("11461","3320"),("11462","1209"),("11463","1211"),("11464","3600"),
("11465","3004"),("11466","3307"),("11467","2711"),("11468","1311"),
("11469","2730"),("11470","1110"),("11471","2505"),("11472","1502"),
("11473","2711"),("11474","3312"),("11475","3312"),("11476","2608"),
("11477","1211"),("11478","1705"),("11479","2214"),("11480","1312"),
("11481","1303"),("11482","1312"),("11483","1902"),("11484","3107"),
("11485","2715"),("11486","3104"),("11487","2740"),("11488","3312"),
("11489","2202"),("11490","2305"),("11491","2730"),("11492","3311"),
("11493","2307"),("11494","1105"),("11495","1103"),("11496","2003"),
("11497","3600"),("11498","1705"),("11499","2214"),("11500","2212"),
("11501","1312"),("11502","1407"),("11503","2730"),("11504","1705"),
("11505","1314"),("11506","3312"),("11507","3312"),("11508","1402"),
("11509","2746"),("11510","2403"),("11511","2215"),("11512","1702"),
("11513","3109"),("11514","3311"),("11515","1312"),("11516","3205"),
("11517","2204"),("11518","2746"),("11519","3202"),("11520","3109"),
("11521","2737"),("11522","2208"),("11523","2208"),("11524","2306"),
("11525","2207"),("11526","3304"),("11527","2208"),("11528","1105"),
("11529","2210"),("11530","1802"),("11531","2003"),("11532","2730"),
("11533","1312"),("11534","2720"),("11535","2705"),("11536","1406"),
("11537","3600"),("11538","2734"),("11539","3312"),("11540","3318"),
("11541","3207"),("11542","3202"),("11543","1407"),("11544","3318"),
("11545","2610"),("11546","1110"),("11547","1306"),("11548","3318"),
("11549","1605"),("11550","1702"),("11551","2713"),("11552","1408"),
("11553","2708"),("11554","2740"),("11555","3605"),("11556","3311"),
("11557","2210"),("11558","2211"),("11559","1312"),("11560","1102"),
("11561","1312"),("11562","2746"),("11563","1212"),("11564","2604"),
("11565","2211"),("11566","2741"),("11567","1703"),("11568","2209"),
("11569","2204"),("11570","2748"),("11571","2737"),("11572","1404"),
("11573","3312"),("11574","1702"),("11575","3109"),("11576","2745"),
("11577","3205"),("11578","1110"),("11579","2740"),("11580","3404"),
("11581","2725"),("11582","2204"),("11583","2210"),("11584","2916"),
("11585","2742"),("11586","2746"),("11587","3204"),("11588","2306"),
("11589","2729"),("11590","3600"),("11591","1306"),("11592","3205"),
("11593","1508"),("11594","1902"),("11595","2507"),("11596","1705"),
("11597","2403"),("11598","1702"),("11599","2000"),("11600","2740"),
("11601","2804"),("11602","2207"),("11603","3107"),("11604","2212"),
("11605","1707"),("11606","2205"),("11607","2208"),("11608","2204"),
("11609","2212"),("11610","3600"),("11611","1605"),("11612","1702"),
("11613","1110"),("11614","1710"),("11615","2207"),("11616","2720"),
("11617","1305"),("11618","2746"),("11619","2202"),("11620","2714"),
("11621","2002"),("11622","2212"),("11623","2712"),("11624","2311"),
("11625","2746"),("11626","2105"),("11627","2728"),("11628","2716"),
("11629","2735"),("11630","1602"),("11631","3317"),("11632","3203"),
("11633","2735"),("11634","2312"),("11635","2711"),("11636","2718"),
("11637","2208"),("11638","2705"),("11639","3600"),("11640","3310"),
("11641","1109"),("11642","1311"),("11643","1904"),("11644","1710"),
("11645","3312"),("11646","2505"),("11647","3312"),("11648","3317"),
("11649","3004"),("11650","1307"),("11651","2740"),("11652","1702"),
("11653","1402"),("11654","2610"),("11655","2711"),("11656","2309"),
("11657","1206"),("11658","2746"),("11659","2214"),("11660","2720"),
("11661","2504"),("11662","2743"),("11663","1312"),("11664","2210"),
("11665","1309"),("11666","3107"),("11667","2204"),("11668","2403"),
("11669","2746"),("11670","3609"),("11671","1803"),("11672","2215"),
("11673","2602"),("11674","2002"),("11675","1706"),("11676","3304"),
("11677","1312"),("11678","3203"),("11679","1311"),("11680","2610"),
("11681","2706"),("11682","3104"),("11683","3107"),("11684","1310"),
("11685","1307"),("11686","2507"),("11687","2210"),("11688","2404"),
("11689","1702"),("11690","2208"),("11691","2303"),("11692","3616"),
("11693","1710"),("11694","2206"),("11695","3312"),("11696","3312"),
("11697","1703"),("11698","1910"),("11699","2505"),("11700","2746"),
("11701","2202"),("11702","2725"),("11703","2602"),("11704","1706"),
("11705","3203"),("11706","1109"),("11707","1709"),("11708","2505"),
("11709","2707"),("11710","1312"),("11711","2002"),("11712","3312"),
("11713","2746"),("11714","1707"),("11715","3304"),("11716","2613"),
("11717","1208"),("11718","3612"),("11719","1803"),("11720","1803"),
("11721","2740"),("11722","3600"),("11723","2508"),("11724","2713"),
("11725","2403"),("11726","1407"),("11727","1703"),("11728","2746"),
("11729","1405"),("11730","2734"),("11731","2739"),("11732","2735"),
("11733","3108"),("11734","1404"),("11735","2728"),("11736","1312"),
("11737","2210"),("11738","2706"),("11739","2204"),("11740","1906"),
("11741","2209"),("11742","2000"),("11743","3312"),("11744","3600"),
("11745","1106"),("11746","1605"),("11747","1604"),("11748","1605"),
("11749","2207"),("11750","1110"),("11751","2206"),("11752","2730"),
("11753","2306"),("11754","2725"),("11755","3312"),("11756","3207"),
("11757","1908"),("11758","2504"),("11759","3609"),("11760","1110"),
("11761","3203"),("11762","2002"),("11763","2728"),("11764","1311"),
("11765","1312"),("11766","2504"),("11767","2406"),("11768","3207"),
("11769","1406"),("11770","2002"),("11771","1110"),("11772","1311"),
("11773","3604"),("11774","2210"),("11775","2741"),("11776","3312"),
("11777","2608"),("11778","2208"),("11779","3304"),("11780","2406"),
("11781","2311"),("11782","2504"),("11783","3320"),("11784","2105"),
("11785","2746"),("11786","1312"),("11787","3504"),("11788","2204"),
("11789","1111"),("11790","1605"),("11791","2303"),("11792","2002"),
("11793","3207"),("11794","1208"),("11795","3207"),("11796","1110"),
("11797","2208"),("11798","1803"),("11799","2211"),("11800","1710"),
("11801","2212"),("11802","2204"),("11803","3103"),("11804","3107"),
("11805","3311"),("11806","3304"),("11807","2205"),("11808","2204"),
("11809","1607"),("11810","1803"),("11811","2708"),("11812","2746"),
("11813","1710"),("11814","2209"),("11815","2748"),("11816","3600"),
("11817","2003"),("11818","1312"),("11819","2713"),("11820","3204"),
("11821","1508"),("11822","2608"),("11823","2000"),("11824","2739"),
("11825","1503"),("11826","2731"),("11827","2730"),("11828","2741"),
("11829","2611"),("11830","2604"),("11831","1605"),("11832","3600"),
("11833","2739"),("11834","2721"),("11835","3304"),("11836","1105"),
("11837","2210"),("11838","3312"),("11839","2712"),("11840","2703"),
("11841","1312"),("11842","2505"),("11843","1407"),("11844","1303"),
("11845","1312"),("11846","1204"),("11847","2215"),("11848","1312"),
("11849","1408"),("11850","2205"),("11851","2208"),("11852","2502"),
("11853","3107"),("11854","2211"),("11855","2746"),("11856","2211"),
("11857","1204"),("11858","3322"),("11859","3312"),("11860","2713"),
("11861","2706"),("11862","1100"),("11863","3318"),("11864","1408"),
("11865","2746"),("11866","2746"),("11867","2731"),("11868","2708"),
("11869","2304"),("11870","2205"),("11871","2613"),("11872","2808"),
("11873","2208"),("11874","2205"),("11875","2613"),("11876","3308"),
("11877","2105"),("11878","2505"),("11879","1312"),("11880","2309"),
("11881","2505"),("11882","1312"),("11883","2805"),("11884","1312"),
("11885","2741"),("11886","1111"),("11887","2505"),("11888","3318"),
("11889","1312"),("11890","1804"),("11891","1404"),("11892","2746"),
("11893","1208"),("11894","2741"),("11895","3312"),("11896","1705"),
("11897","3107"),("11898","2002"),("11899","3404"),("11900","1105"),
("11901","1702"),("11902","1702"),("11903","1402"),("11904","2203"),
("11905","3404"),("11906","3318"),("11907","2505"),("11908","1312"),
("11909","2737"),("11910","2741"),("11911","2002"),("11912","1404"),
("11913","2303"),("11914","2730"),("11915","2505"),("11916","1310"),
("11917","2716"),("11918","1803"),("11919","1312"),("11920","2207"),
("11921","2738"),("11922","2705"),("11923","2304"),("11924","1312"),
("11925","1106"),("11926","1911"),("11927","1312"),("11928","1311"),
("11929","2728"),("11930","2705"),("11931","3005"),("11932","2204"),
("11933","2215"),("11934","2737"),("11935","1208"),("11936","1506"),
("11937","1710"),("11938","1404"),("11939","1408"),("11940","2505"),
("11941","2213"),("11942","2203"),("11943","3005"),("11944","3312"),
("11945","2210"),("11946","2202"),("11947","1507"),("11948","2505"),
("11949","3108"),("11950","2746"),("11951","2746"),("11952","2311"),
("11953","2805"),("11954","2105"),("11955","2309"),("11956","1312"),
("11957","1106"),("11958","3505"),("11959","3600"),("11960","3103"),
("11961","2739"),("11962","2705"),("11963","2306"),("11964","2739"),
("11965","3107"),("11966","2502"),("11967","2740"),("11968","1311"),
("11969","2312"),("11970","1312"),("11971","3320"),("11972","2307"),
("11973","1110"),("11974","1311"),("11975","1702"),("11976","2003"),
("11977","3317"),("11978","2205"),("11979","1110"),("11980","3313"),
("11981","3312"),("11982","1211"),("11983","3204"),("11984","2204"),
("11985","2304"),("11986","1802"),("11987","2729"),("11988","2215"),
("11989","1605"),("11990","3604"),("11991","2745"),("11992","2208"),
("11993","3107"),("11994","3202"),("11995","1404"),("11996","3102"),
("11997","2805"),("11998","3311"),("11999","2738"),("12000","2207"),
("12001","1105"),("12002","1703"),("12003","1102"),("12004","3107"),
("12005","2737"),("12006","3207"),("12007","2202"),("12008","2105"),
("12009","1312"),("12010","1803"),("12011","3317"),("12012","2502"),
("12013","2308"),("12014","2309"),("12015","2204"),("12016","1710"),
("12017","2311"),("12018","2740"),("12019","2202"),("12020","2746"),
("12021","3304"),("12022","2205"),("12023","2736"),("12024","2208"),
("12025","2721"),("12026","1702"),("12027","3306"),("12028","3315"),
("12029","1312"),("12030","1312"),("12031","1702"),("12032","3205"),
("12033","1100"),("12034","1710"),("12035","2805"),("12036","3316"),
("12037","2604"),("12038","2505"),("12039","2508"),("12040","1408"),
("12041","3600"),("12042","2202"),("12043","1109"),("12044","1606"),
("12045","1110"),("12046","2505"),("12047","2725"),("12048","1106"),
("12049","2737"),("12050","2204"),("12051","3205"),("12052","2002"),
("12053","2746"),("12054","2739"),("12055","2741"),("12056","2613"),
("12057","2739"),("12058","1110"),("12059","2736"),("12060","3304"),
("12061","2804"),("12062","2613"),("12063","2206"),("12064","2746"),
("12065","1307"),("12066","3611"),("12067","2740"),("12068","2735"),
("12069","2602"),("12070","3304"),("12071","2212"),("12072","1702"),
("12073","2303"),("12074","2204"),("12075","2916"),("12076","1202"),
("12077","3107"),("12078","2204"),("12079","2208"),("12080","2210"),
("12081","2202"),("12082","2705"),("12083","1904"),("12084","2507"),
("12085","2502"),("12086","2210"),("12087","1110"),("12088","3312"),
("12089","2746"),("12090","3316"),("12091","2303"),("12092","2302"),
("12093","1110"),("12094","1307"),("12095","2203"),("12096","2739"),
("12097","2303"),("12098","1100"),("12099","2210"),("12100","1703"),
("12101","1803"),("12102","2205"),("12103","2730"),("12104","1312"),
("12105","2215"),("12106","2210"),("12107","2725"),("12108","2746"),
("12109","3312"),("12110","2745"),("12111","2209"),("12112","1503"),
("12113","1110"),("12114","1106"),("12115","1110"),("12116","2725"),
("12117","2746"),("12118","2211"),("12119","1211"),("12120","2305"),
("12121","1408"),("12122","1708"),("12123","1402"),("12124","2214"),
("12125","2202"),("12126","2305"),("12127","1705"),("12128","1702"),
("12129","2100"),("12130","1208"),("12131","1702"),("12132","1105"),
("12133","1211"),("12134","1109"),("12135","2613"),("12136","1604"),
("12137","2002"),("12138","3609"),("12139","2210"),("12140","1312"),
("12141","2206"),("12142","1911"),("12143","3312"),("12144","3314"),
("12145","3504"),("12146","2208"),("12147","3322"),("12148","3308"),
("12149","2505"),("12150","2746"),("12151","3600"),("12152","2205"),
("12153","3105"),("12154","2746"),("12155","2208"),("12156","3320"),
("12157","1702"),("12158","2202"),("12159","2403"),("12160","3304"),
("12161","1110"),("12162","1703"),("12163","2208"),("12164","1211"),
("12165","2308"),("12166","2206"),("12167","1308"),("12168","2739"),
("12169","2210"),("12170","2614"),("12171","1706"),("12172","2730"),
("12173","2746"),("12174","2711"),("12175","3207"),("12176","2209"),
("12177","1803"),("12178","2405"),("12179","1213"),("12180","2303"),
("12181","1106"),("12182","1207"),("12183","2746"),("12184","1208"),
("12185","1408"),("12186","2311"),("12187","1312"),("12188","2216"),
("12189","1605"),("12190","2215"),("12191","1605"),("12192","1106"),
("12193","2734"),("12194","3312"),("12195","1607"),("12196","3600"),
("12197","2203"),("12198","2740"),("12199","2716"),("12200","2504"),
("12201","2210"),("12202","1902"),("12203","1705"),("12204","3304"),
("12205","1711"),("12206","2207"),("12207","3609"),("12208","2739"),
("12209","2732"),("12210","3320"),("12211","1110"),("12212","2728"),
("12213","2306"),("12214","1208"),("12215","1312"),("12216","1705"),
("12217","3304"),("12218","1906"),("12219","3312"),("12220","3107"),
("12221","3320"),("12222","2208"),("12223","2405"),("12224","2204"),
("12225","1408"),("12226","2728"),("12227","2308"),("12228","1605"),
("12229","2735"),("12230","2705"),("12231","3312"),("12232","1311"),
("12233","2205"),("12234","1109"),("12235","2735"),("12236","2804"),
("12237","2746"),("12238","2208"),("12239","2215"),("12240","1605"),
("12241","3204"),("12242","3316"),("12243","1110"),("12244","2911"),
("12245","3203"),("12246","2713"),("12247","2305"),("12248","3320"),
("12249","3404"),("12250","3109"),("12251","1605"),("12252","2211"),
("12253","1110"),("12254","1312"),("12255","2403"),("12256","3207"),
("12257","1312"),("12258","3203"),("12259","3312"),("12260","1702"),
("12261","3109"),("12262","1702"),("12263","3312"),("12264","2746"),
("12265","3306"),("12266","1205"),("12267","2737"),("12268","3207"),
("12269","2732"),("12270","1605"),("12271","2105"),("12272","2741"),
("12273","3322"),("12274","1606"),("12275","3318"),("12276","1402"),
("12277","2208"),("12278","2730"),("12279","2737"),("12280","2916"),
("12281","3404"),("12282","2210"),("12283","1213"),("12284","3312"),
("12285","2204"),("12286","2737"),("12287","1312"),("12288","1705"),
("12289","3309"),("12290","2207"),("12291","2705"),("12292","1707"),
("12293","2205"),("12294","1111"),("12295","3312"),("12296","2741"),
("12297","2725"),("12298","2707"),("12299","2505"),("12300","2208"),
("12301","2728"),("12302","2505"),("12303","2605"),("12304","2206"),
("12305","1110"),("12306","2215"),("12307","1204"),("12308","1211"),
("12309","2208"),("12310","1102"),("12311","3312"),("12312","3317"),
("12313","3207"),("12314","2916"),("12315","3612"),("12316","2310"),
("12317","2726"),("12318","1605"),("12319","1104"),("12320","3312"),
("12321","1109"),("12322","3404"),("12323","3316"),("12324","1202"),
("12325","2215"),("12326","1708"),("12327","1606"),("12328","2713"),
("12329","1105"),("12330","1106"),("12331","2804"),("12332","3320"),
("12333","2740"),("12334","2730"),("12335","3203"),("12336","1109"),
("12337","3312"),("12338","1710"),("12339","3611"),("12340","2505"),
("12341","1203"),("12342","2746"),("12343","3305"),("12344","1110"),
("12345","3304"),("12346","1110"),("12347","3004"),("12348","2308"),
("12349","1106"),("12350","2212"),("12351","2608"),("12352","2746"),
("12353","1203"),("12354","3304"),("12355","1311"),("12356","3005"),
("12357","1707"),("12358","2505"),("12359","1105"),("12360","1312"),
("12361","1105"),("12362","2211"),("12363","3304"),("12364","1912"),
("12365","1103"),("12366","1211"),("12367","3604"),("12368","1803"),
("12369","2713"),("12370","1311"),("12371","2210"),("12372","1206"),
("12373","1203"),("12374","3308"),("12375","3312"),("12376","1407"),
("12377","1208"),("12378","1402"),
];
match MAP.binary_search_by_key(&topic, |&(k, _)| k) {
Ok(i) => MAP[i].1,
Err(_) => "",
}
}
pub fn subfield_to_fos(subfield: &str) -> &'static str {
const MAP: &[(&str, &str)] = &[
("1100","Agriculture, forestry, and fisheries"),
("1102","Agriculture, forestry, and fisheries"),
("1103","Animal and dairy science"),
("1104","Agriculture, forestry, and fisheries"),
("1105","Biological sciences"),
("1106","Other agricultural sciences"),
("1107","Agriculture, forestry, and fisheries"),
("1108","Agriculture, forestry, and fisheries"),
("1109","Biological sciences"),
("1110","Biological sciences"),
("1111","Agriculture, forestry, and fisheries"),
("1200","Other humanities"),
("1202","History and archaeology"),
("1203","Languages and literature"),
("1204","History and archaeology"),
("1205","Other humanities"),
("1206","Other humanities"),
("1207","Other humanities"),
("1208","Languages and literature"),
("1209","Other humanities"),
("1210","Art (arts, history of arts, performing arts, music)"),
("1211","Philosophy, ethics and religion"),
("1212","Philosophy, ethics and religion"),
("1213","Art (arts, history of arts, performing arts, music)"),
("1302","Other medical sciences"),
("1303","Basic medicine"),
("1304","Basic medicine"),
("1305","Health biotechnology"),
("1306","Basic medicine"),
("1307","Biological sciences"),
("1308","Basic medicine"),
("1309","Biological sciences"),
("1310","Basic medicine"),
("1311","Biological sciences"),
("1312","Biological sciences"),
("1313","Basic medicine"),
("1314","Basic medicine"),
("1315","Basic medicine"),
("1402","Economics and business"),
("1403","Economics and business"),
("1404","Economics and business"),
("1405","Economics and business"),
("1406","Economics and business"),
("1407","Economics and business"),
("1408","Economics and business"),
("1409","Economics and business"),
("1410","Economics and business"),
("1502","Medical engineering"),
("1503","Other engineering and technologies"),
("1504","Other engineering and technologies"),
("1506","Chemical engineering"),
("1507","Other engineering and technologies"),
("1508","Chemical engineering"),
("1602","Chemical sciences"),
("1603","Chemical sciences"),
("1604","Chemical sciences"),
("1605","Chemical sciences"),
("1606","Chemical sciences"),
("1607","Chemical sciences"),
("1702","Computer and information sciences"),
("1703","Computer and information sciences"),
("1704","Computer and information sciences"),
("1705","Computer and information sciences"),
("1706","Computer and information sciences"),
("1707","Computer and information sciences"),
("1708","Computer and information sciences"),
("1709","Computer and information sciences"),
("1710","Computer and information sciences"),
("1711","Computer and information sciences"),
("1712","Computer and information sciences"),
("1800","Economics and business"),
("1802","Economics and business"),
("1803","Economics and business"),
("1804","Mathematics"),
("1902","Earth and related environmental sciences"),
("1904","Earth and related environmental sciences"),
("1906","Earth and related environmental sciences"),
("1907","Earth and related environmental sciences"),
("1908","Earth and related environmental sciences"),
("1910","Earth and related environmental sciences"),
("1911","Earth and related environmental sciences"),
("1912","Physical sciences"),
("2000","Economics and business"),
("2002","Economics and business"),
("2003","Economics and business"),
("2100","Other engineering and technologies"),
("2102","Other engineering and technologies"),
("2103","Other engineering and technologies"),
("2104","Other engineering and technologies"),
("2105","Other engineering and technologies"),
("2200","Other engineering and technologies"),
("2202","Other engineering and technologies"),
("2203","Mechanical engineering"),
("2204","Medical engineering"),
("2205","Civil engineering"),
("2206","Mechanical engineering"),
("2207","Electrical engineering, electronic engineering, information engineering"),
("2208","Electrical engineering, electronic engineering, information engineering"),
("2209","Other engineering and technologies"),
("2210","Mechanical engineering"),
("2211","Mechanical engineering"),
("2212","Mechanical engineering"),
("2213","Other engineering and technologies"),
("2214","Electrical engineering, electronic engineering, information engineering"),
("2215","Materials engineering"),
("2216","Civil engineering"),
("2302","Earth and related environmental sciences"),
("2303","Earth and related environmental sciences"),
("2304","Environmental engineering"),
("2305","Environmental engineering"),
("2306","Earth and related environmental sciences"),
("2307","Environmental engineering"),
("2308","Other engineering and technologies"),
("2309","Environmental engineering"),
("2310","Environmental engineering"),
("2311","Other engineering and technologies"),
("2312","Other engineering and technologies"),
("2402","Industrial Biotechnology"),
("2403","Basic medicine"),
("2404","Basic medicine"),
("2405","Basic medicine"),
("2406","Basic medicine"),
("2500","Materials engineering"),
("2502","Chemical sciences"),
("2503","Materials engineering"),
("2504","Materials engineering"),
("2505","Chemical sciences"),
("2506","Materials engineering"),
("2507","Materials engineering"),
("2508","Materials engineering"),
("2602","Mathematics"),
("2604","Mathematics"),
("2605","Mathematics"),
("2607","Mathematics"),
("2608","Mathematics"),
("2610","Mathematics"),
("2611","Mathematics"),
("2612","Mathematics"),
("2613","Mathematics"),
("2614","Mathematics"),
("2702","Basic medicine"),
("2703","Clinical medicine"),
("2704","Basic medicine"),
("2705","Clinical medicine"),
("2706","Clinical medicine"),
("2707","Clinical medicine"),
("2708","Clinical medicine"),
("2711","Clinical medicine"),
("2712","Clinical medicine"),
("2713","Clinical medicine"),
("2714","Clinical medicine"),
("2715","Clinical medicine"),
("2716","Basic medicine"),
("2717","Clinical medicine"),
("2718","Health sciences"),
("2720","Clinical medicine"),
("2721","Clinical medicine"),
("2723","Clinical medicine"),
("2724","Clinical medicine"),
("2725","Clinical medicine"),
("2726","Basic medicine"),
("2727","Clinical medicine"),
("2728","Clinical medicine"),
("2729","Clinical medicine"),
("2730","Clinical medicine"),
("2731","Clinical medicine"),
("2732","Clinical medicine"),
("2733","Clinical medicine"),
("2734","Clinical medicine"),
("2735","Clinical medicine"),
("2736","Clinical medicine"),
("2737","Basic medicine"),
("2738","Clinical medicine"),
("2739","Health sciences"),
("2740","Clinical medicine"),
("2741","Clinical medicine"),
("2742","Clinical medicine"),
("2743","Clinical medicine"),
("2745","Clinical medicine"),
("2746","Clinical medicine"),
("2747","Clinical medicine"),
("2748","Clinical medicine"),
("2802","Clinical medicine"),
("2803","Clinical medicine"),
("2804","Clinical medicine"),
("2805","Psychology"),
("2806","Psychology"),
("2807","Clinical medicine"),
("2808","Clinical medicine"),
("2809","Clinical medicine"),
("2910","Other medical sciences"),
("2911","Other medical sciences"),
("2916","Health sciences"),
("2922","Other medical sciences"),
("3002","Other medical sciences"),
("3003","Other medical sciences"),
("3004","Health biotechnology"),
("3005","Other medical sciences"),
("3102","Physical sciences"),
("3103","Physical sciences"),
("3104","Physical sciences"),
("3105","Physical sciences"),
("3106","Physical sciences"),
("3107","Physical sciences"),
("3108","Physical sciences"),
("3109","Physical sciences"),
("3200","Psychology"),
("3202","Psychology"),
("3203","Psychology"),
("3204","Psychology"),
("3205","Psychology"),
("3206","Psychology"),
("3207","Psychology"),
("3300","Other social sciences"),
("3302","History and archaeology"),
("3303","Other social sciences"),
("3304","Educational sciences"),
("3305","Social and economic geography"),
("3306","Other social sciences"),
("3307","Other social sciences"),
("3308","Law"),
("3309","Other humanities"),
("3310","Languages and literature"),
("3311","Other social sciences"),
("3312","Sociology"),
("3313","Other social sciences"),
("3314","Other social sciences"),
("3315","Media and communications"),
("3316","Media and communications"),
("3317","Other social sciences"),
("3318","Other social sciences"),
("3319","Other social sciences"),
("3320","Political Science"),
("3321","Other social sciences"),
("3322","Other social sciences"),
("3402","Veterinary science"),
("3404","Veterinary science"),
("3500","Other medical sciences"),
("3504","Other medical sciences"),
("3505","Other medical sciences"),
("3506","Other medical sciences"),
("3600","Health sciences"),
("3603","Health sciences"),
("3604","Health sciences"),
("3605","Health sciences"),
("3607","Health sciences"),
("3608","Health sciences"),
("3609","Health sciences"),
("3611","Health sciences"),
("3612","Health sciences"),
("3614","Medical engineering"),
("3616","Health sciences"),
];
match MAP.binary_search_by_key(&subfield, |&(k, _)| k) {
Ok(i) => MAP[i].1,
Err(_) => "",
}
}
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum DoiRegistrationAgency {
Crossref,
DataCite,
Medra,
JaLC,
Kisti,
Cnki,
Op,
Airiti,
Eidr,
Unknown,
}
impl DoiRegistrationAgency {
pub fn from_api_name(name: &str) -> Self {
match name {
"Crossref" => Self::Crossref,
"DataCite" => Self::DataCite,
"mEDRA" => Self::Medra,
"JaLC" => Self::JaLC,
"KISTI" => Self::Kisti,
"CNKI" => Self::Cnki,
"OP" => Self::Op,
"Airiti" => Self::Airiti,
"EIDR" => Self::Eidr,
_ => Self::Unknown,
}
}
pub fn as_str(self) -> &'static str {
match self {
Self::Crossref => "Crossref",
Self::DataCite => "DataCite",
Self::Medra => "mEDRA",
Self::JaLC => "JaLC",
Self::Kisti => "KISTI",
Self::Cnki => "CNKI",
Self::Op => "OP",
Self::Airiti => "Airiti",
Self::Eidr => "EIDR",
Self::Unknown => "Unknown",
}
}
pub fn lookup_url(prefix: &str) -> String {
format!("https://doi.org/doiRA/{}", prefix)
}
}