#ENDIF; #ifv5; Array StorageForShortName --> 161; #endif; [ PrefaceByArticle o acode pluralise i artform findout; if (o provides articles) { print (string) (o.&articles)-->(acode+short_name_case*LanguageCases), " "; if (pluralise) return; print (PSN__) o; return; } i = GetGNAOfObject(o); if (pluralise) { if (i<3 || (i>=6 && i<9)) i = i + 3; } i = LanguageGNAsToArticles-->i; artform = LanguageArticles + 6*LanguageContractionForms*(short_name_case + i*LanguageCases); #iftrue LanguageContractionForms == 2; if (artform-->acode ~= artform-->(acode+3)) findout = true; #endif; #iftrue LanguageContractionForms == 3; if (artform-->acode ~= artform-->(acode+3)) findout = true; if (artform-->(acode+3) ~= artform-->(acode+6)) findout = true; #endif; #iftrue LanguageContractionForms == 4; if (artform-->acode ~= artform-->(acode+3)) findout = true; if (artform-->(acode+3) ~= artform-->(acode+6)) findout = true; if (artform-->(acode+6) ~= artform-->(acode+9)) findout = true; #endif; #iftrue LanguageContractionForms > 4; findout = true; #endif; if (standard_interpreter ~= 0 && findout) { StorageForShortName-->0 = 160; @output_stream 3 StorageForShortName; if (pluralise) print (number) pluralise; else print (PSN__) o; @output_stream -3; acode = acode + 3*LanguageContraction(StorageForShortName + 2); } print (string) artform-->acode; if (pluralise) return; print (PSN__) o; ];