@charset "utf-8"; /*—~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ C A S C A D I N G – S T Y L E – S H E E T.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ R A W   T A G S.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ G E N E R A L.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/

html, body, div, table, p, form, fieldset, legend, label, input, textarea, select, h1, h2, h3, h4, h5, h6, strong, em, ul, ol, li, dl, dt, dd, cite, address, acronym, abbr, blockquote {
	margin           : 0px;
	padding          : 0px;
	text-decoration  : none;
	list-style       : none;
	font-style       : normal;
	font-weight      : normal;
	color            : #999999;
	font             : normal normal 16px Georgia, "Times New Roman", Times, serif, Helvetica, Arial, Verdana, "Trebuchet MS", Lucida, sans-serif;
}
html {
	direction        : ltr;
	width            : 100%;
	overflow-x       : hidden;
}
body {
	z-index          : 1;
	position         : absolute;
	top              : 0px;
	left             : 0px;
	width            : 100%;
	height           : 100%;
	background-color : #000000;
}
body.fontFace, input.fontFace {
	font             : normal normal 16px "CenturyITC", "HelveticaNeueLTStd";
}
a, a:hover {
	font-size        : inherit;
	color            : inherit;
	text-decoration  : none;
	cursor           : pointer;
}    
a:hover {
	text-decoration  : underline;
}
a img, img, map {
	border           : none;
}
h1, h2, h3, h4, h5, h6 {
	font-size        : inherit;
	color            : inherit;
}
strong {
	font-weight      : bold;
	font-size        : inherit;
	color            : inherit;
}
em {
	font-style       : italic;
	font-size        : inherit;
	color            : inherit;
}
dfn {
	font-size        : inherit;
	font-style       : normal;
}
p {
	line-height      : 1.4em;
}
input[type=hidden] {
	display          : none;
}
input[type=checkbox], input[type=radio] {
	padding          : 0px;
	margin           : 0px;
}



/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ S I D E   H E A D E R.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ L O G O.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
a#logoFrame {
	z-index          : 11;
	position         : fixed;
	width            : 225px;
	top              : 21px;
	left             : 0px;
	text-transform   : uppercase;
	/*letter-spacing   : -1px;*/
	/*border:1px solid orange;*/
}
a#logoFrame:hover {
	text-decoration  : none;
}
a#logoFrame h1 {
	margin-bottom    : 5px;
	font             : normal normal 28px Helvetica, Arial, Verdana, "Trebuchet MS", Lucida, sans-serif;
	text-align       : right;
	color            : #ffffff;
}
a#logoFrame h2 {
	margin-left      : 20px;
	font             : normal normal 10px Helvetica, Arial, Verdana, "Trebuchet MS", Lucida, sans-serif;
	line-height      : 14px;
	letter-spacing   : normal;
	text-align       : center;
	color            : #ffffff;
	/*text-indent      : 74px;*/
}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ M E N U S.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
div#headerFrame {
	z-index          : 10;
	position         : fixed;
	width            : 225px;
	bottom           : 20px;
	left             : 0px;
	text-align       : right;
	/*border           : 1px solid purple;*/
}
div#headerFrame hr {
	float            : right;
	padding          : 0px;
	margin           : 15px 0px;
	clear            : both;
	width            : 50px;
	height           : 1px;
	border           : 0px;
	background       : #999999;
}
ul#headerMenuList, ol#headerLanguageList, ul#headerCopyrightList {
	clear            : both;
	letter-spacing   : -0.5px;
}
ul#headerMenuList a, ol#headerLanguageList a, ul#headerCopyrightList a {
	display          : block;
	padding          : 4px 0px;
	font-size        : 16px;
	font-weight      : 100;
	text-transform   : uppercase;
	color            : #999999;
}
ul#headerMenuList a:hover, ol#headerLanguageList a:hover, ul#headerCopyrightList a:hover {
	text-decoration  : none;
	color            : #d02142;
}
ul#headerMenuList a.selected, ol#headerLanguageList a.selected, ul#headerCopyrightList a.selected {
	color            : #ffffff;
}
ul#headerMenuList a.selected:hover, ol#headerLanguageList a.selected:hover, ul#headerCopyrightList a.selected:hover {
	color            : #ffffff;
	cursor           : default;
}
ol#headerLanguageList, ul#headerCopyrightList {
	float            : right;
}
ol#headerLanguageList {
	margin-bottom    : 20px;
}
ul#headerCopyrightList {
	margin           : 10px 0px;
}
ol#headerLanguageList li, ul#headerCopyrightList li {
	color            : #999999;
	float            : right;
	padding          : 0px 6px;
	background       : transparent url('../images/headerLanguageList-token.png') no-repeat right center;
}
ol#headerLanguageList a, ul#headerCopyrightList a {
	display          : inline;
	font-size        : 11px;
	letter-spacing   : 0px;
}
ul#headerCopyrightList a {
	font-size        : 10px;
}
cite#footerCopyrightNote {
	clear            : both;
	float            : right;
	font-size        : 10px;
}


/*~~~~~~~~~~~~~~~~~~~~~~~~ S E A R C H  /  N E W S L E T T E R.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/

/*~~~~~~~~~~~~~~~~~~~~~~~~~~ FORMS */
form#searchForm, form#newsletterForm {
	position         : relative;
	clear            : both;
	margin-bottom    : 5px;
}
form#searchForm, form#searchForm fieldset, form#newsletterForm, form#newsletterForm fieldset {
	display          : block;
	border           : 0px;
}
form#searchForm legend, form#searchForm label, form#newsletterForm legend, form#newsletterForm label {
	display          : none;
}
form#searchForm input#searchFormField, form#newsletterForm input#newsletterFormField {
	position         : relative;
	display          : block;
	float            : right;
	width            : 190px;
	padding          : 5px;
	font-size        : 13px;
	color            : #999999;
	background-color : transparent;
	border           : 1px solid #999999;
}
form#searchForm input#searchFormField:focus, form#newsletterForm input#newsletterFormField:focus {
	border           : 1px solid #d02142;
}
form#searchForm input#searchFormSubmit, form#newsletterForm input#newsletterFormSubmit {
	position         : absolute;
	display          : block;
	top              : 6px;
	right            : 6px;
}
form#searchForm input#searchFormSubmit {
	top              : 6px;
	right            : 6px;
}
form#newsletterForm input#newsletterFormSubmit {
	top              : 7px;
	right            : 9px;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~ LISTS */
ol#searchList {
	display          : block;
	clear            : both;
}
ol#searchList ul li {
	padding-bottom   : 20px;
}
ol#searchList ul li h4 {
	margin           : 0px;
}
ol#searchList ul li h4 a {
	color            : #eeeeee;
	font-size        : 18px;
}
ol#searchList ul li h4 a:hover {
	color            : #d02142;
}
ol#searchList ul li span.searchResult {
	padding          : 1px 2px;  
	color            : #ffffff;
	background-color : #d02142;
}
ol#searchList ul li a.searchLink {
	font             : normal normal 9px Helvetica, Arial, Verdana, "Trebuchet MS", Lucida, sans-serif;
	color            : #999999;
	text-transform   : uppercase;
	text-decoration  : underline;
}
ol#searchList ul li a.searchLink:hover {
	color            : #999999;
	text-decoration  : none;
}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ P A G E.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
div#pageFrame {
	position         : absolute;
	/*overflow         : auto;*/
	top              : 0px;
	left             : 0px;
	padding          : 20px 0px 20px 255px;
	/*border:1px solid orange;*/
}
div#pageFrame a {
	color            : #d02142;
	text-decoration  : none;
}    
div#pageFrame a:hover {
	color            : #ffffff;
	text-decoration  : none;
}
div#pageFrame h3, #cboxTitle h3, #cboxLoadedContent h3 {
	display          : inline;
	float            : left;
	margin           : 1px 0px 10px 0px;
	color            : #ffffff;
	font             : normal normal 28px Helvetica, Arial, Verdana, "Trebuchet MS", Lucida, sans-serif;
	text-transform   : uppercase;
	/*border:1px solid red;*/
}
div#pageFrame h3 a, div#pageFrame h4 a, div#pageFrame h6 a {
	color            : #ffffff;
	text-decoration  : none;
}
div#pageFrame h3 a:hover {
	color            : #d02142;
	text-decoration  : none;
}
div#pageFrame h4 {
	clear            : both;
	margin-bottom    : 20px;
}
div#pageFrame h6 {
	clear            : both;
	color            : #ffffff;
	font-size        : 22px;
	/*letter-spacing   : -1px;*/
	text-transform   : uppercase;
}
div#pageFrame a#slideshowLaunch {
	font-size        : 18px;
	font-style       : italic;
	text-decoration  : none;
	color            : #ffffff;
}
div#pageFrame a#slideshowLaunch:hover {
	text-decoration  : none;
	color            : #d02142;
}
img#illustrationPicture {
	margin-bottom    : 15px;
}
span.niceText {
	font-size        : 18px;
	font-style       : italic;
	text-decoration  : none;
	color            : #ffffff;
}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ S E C T I O N S.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
div.sectionFrame, p.sectionFrame {
	clear            : both;
	margin           : 0px 20px 25px 0px;
}
div.sectionFrameFloating {
	float            : left;
	/*border:1px solid blue;*/
}
div.columnizerFrame {
	margin-bottom    : 20px;
	padding          : 0px;
	overflow         : auto;
	/*border:1px solid red;*/
}
div.columnizerFrame div.column {
	margin-right    : 20px;
	/*	border:1px solid green;*/
}
div.columnizerFrame div.last {
	margin-right    : 0px;
}
q {
	display         : block;
	/*quotes          : none;*/
	quotes          : "«" "»" "'" "'";
	font-style      : italic;
	font-size       : larger;
	text-align      : center;
}
cite {
	display         : block;
	font-size       : smaller;
	text-align      : right;
}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ S O C I A L   N E T W O R K S.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
ul.socialnetworksList {
	clear           : both;
	overflow        : auto;
	margin          : 20px 0px;
}
ul.socialnetworksList li {
	float           : left;
	padding         : 0px 5px;
}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ S L I D E - S H O W.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/

/*~~~~~~~~~~ SLIDE-SHOW – PICTURES */
div#slideshowFrame {
	position         : relative;
	clear            : both;
	float            : left;
	margin-right     : 15px;
}
ol#slideshowPictures {
	position         : relative;
	float            : left;
	width            : 370px;
	height           : 500px;
	margin-bottom    : 15px;
	overflow         : visible;
	/*background       : url('../images/slideshowLoading.gif') center center no-repeat;*/
}
ol#slideshowPictures li {
	position         : absolute;
	top              : 0px;
	left             : 0px;
	z-index          : 3;
}
ol#slideshowPictures li a {
	color            : #000000;
	cursor           : e-resize;
}
ol#slideshowPictures li dfn {
	font-size        : 11px;
}

/*~~~~~~~~~~~~ SLIDE-SHOW – BROWSE */
div#slideshowBrowse {
	position         : relative;
	clear            : both;
	width            : 100px;
	height           : 20px;
	margin           : 15px 0px 20px 0px;
}
/*div#slideshowBrowse.hidden {
	visibility       : hidden;
}*/
div.sectionFrameFloating div#slideshowBrowse {
	clear            : none;
	margin-left      : -5px;
}
div#slideshowBrowse img.slideshowBrowseButtons {
	cursor           : pointer;
}
div#slideshowBrowse img#slideshowBrowsePrevious {
	position         : absolute;
	top              : 0px;
	left             : 5px;
}
div#slideshowBrowse img#slideshowBrowseNext {
	position         : absolute;
	top              : 0px;
	left             : 93px;
}
div#slideshowBrowse div#slideshowBrowseCurrent {
	position         : absolute;
	overflow         : hidden;
	top              : 0px;
	left             : 18px;
	width            : 70px;
	height           : 19px;
	padding          : 0px;
	text-align       : center;
	/*font-weight      : bold;*/
	color            : #999999;
}

/*~~~~~~~~~~~ SLIDE-SHOW – SECTION */
div#slideshowSection {
	max-width        : 350px;
}
div#slideshowSection h4 {
	display          : none;
	float            : left;
	margin-bottom    : 20px;
	font-size        : 26px;
	font-weight      : normal;
	font-style       : italic;
	text-transform   : uppercase;
	color            : #ffffff;
}
div#slideshowSection {
	float            : left;
	clear            : right;
	margin-bottom    : 10px;
}
div#slideshowSection p, div#cboxTitle p {
	clear            : both;
	margin           : 15px 0px 20px 0px;
}
div#slideshowSection h5, div#cboxTitle h5 {
	margin-bottom    : 20px;
	font-size        : 18px;
	font-weight      : normal;
	color            : #ffffff;
}

/*~~ SLIDE-SHOW – PICTURE FOR SALE */
div#slideshowSection a#slideshowForsale {
	display          : block;
	float            : left;
	clear            : right;
	margin-bottom    : 10px;
	font-size        : 18px;
	font-style       : italic;
	text-decoration  : none;
	color            : #d02142;
}
/*div#slideshowSection a#slideshowForsale {
	display          : block;
	float            : left;
	clear            : right;
	width            : 86px;
	height           : 56px;
	padding-top      : 30px;
	margin-bottom    : 10px;
	font-size        : 18px;
	font-style       : italic;
	text-decoration  : none;
	text-align       : center;
	color            : #000000;
	background       : transparent url('../images/slideshowForsale-out.png') no-repeat center center;
}*/
div#slideshowSection a#slideshowForsale:hover {
	color            : #ffffff;
	text-decoration  : none;
}

/*~~~~~~~~~~~~~~ SLIDE-SHOW – CART */
div#slideshowSection a#cartAdd, div#cboxTitle a.cartAdd {
	font-size        : 18px;
	font-style       : italic;
	color            : #d02142;
	text-decoration  : none;
}
div#slideshowSection a#cartAdd:hover, div#cboxTitle a.cartAdd:hover {
	color            : #ffffff;
	text-decoration  : none;
}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ P O R T F O L I O.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
ul.portfolioCategoryNavigation {
	margin           : 17px 0px 0px 13px;
	float            : left;
}
ul.portfolioCategoryNavigation li, #cboxClose {
	font             : normal normal 9px Helvetica, Arial, Verdana, "Trebuchet MS", Lucida, sans-serif;
	font-weight      : normal;
	letter-spacing   : 0px;
	color            : #999999;
	text-transform   : uppercase;
}
ul.portfolioCategoryNavigation li {
	float            : left;
	padding          : 0px 6px;
	background       : transparent url('../images/headerLanguageList-token.png') no-repeat right center;
}
div#pageFrame ul.portfolioCategoryNavigation li a {
	color            : #999999;
	text-decoration  : none;
}
div#pageFrame ul.portfolioCategoryNavigation li a:hover {
	color            : #999999;
	text-decoration  : underline;
}
ul#portfolioCategoryList {
	/*border:1px solid red;*/
}
ul#portfolioCategoryList h3 {
	margin-bottom    : 0px;
}
ul#portfolioCategoryList li {
	display          : block;
	/*border           : 1px solid orange;*/
}
ul#portfolioCategoryList ol {
	display          : block;
	height           : 262px;
	overflow         : hidden;
	clear            : both;
	margin           : 0px 0px 35px 0px;
}
ol#portfolioPictureList {
	display          : block;
	overflow         : auto;
	clear            : both;
	margin           : 20px 0px 15px 0px;
}
ul#portfolioCategoryList ol li, ol#portfolioPictureList li {
	float            : left;
	padding          : 6px 5px 6px 0px;
}
ul#portfolioCategoryList ol li a, ol#portfolioPictureList li a {
	color            : #000000;
}


/*~~~~~~~~~~~~~~~~~~~~~~~~ E X H I B I T I O N S  /  B O O K S.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
ul.exhibitionCategoryNavigation {
	margin           : -4px 0px 17px 0px;
	clear            : both;
}
ul#exhibitionChronologyList {
	display          : block;
}
/*ul#exhibitionChronologyList h3, ul#exhibitionChronologyList h4, ul#exhibitionChronologyList h5, ul#exhibitionChronologyList h6 {
	margin           : 0px;
}*/
ul#exhibitionChronologyList h4, ul#exhibitionChronologyList h5 {
	color            : #eeeeee;
	font-size        : 18px;
}
ul#exhibitionChronologyList li {
	display          : block;
}
ul#exhibitionChronologyList ol {
	display          : block;
	overflow         : auto;
	clear            : both;
	margin-bottom    : 70px;
}
ul#exhibitionChronologyList ol li {
	padding-bottom   : 6px;
}
ul#exhibitionChronologyList ol li em, p#exhibitionDetails em {
	display          : block;
	font-size        : 12px;
	font-style       : italic;
	line-height      : normal;
}
ul#exhibitionChronologyList ol li strong, p#exhibitionDetails strong {
	display          : block;
	color            : #eeeeee;
}
ul#exhibitionChronologyList ol li h6 {
	display          : block;
	padding-bottom   : 8px;
	font-size        : 16px;
	font-weight      : normal;
	text-transform   : none;
	color            : #999999;
}
ul#exhibitionChronologyList ol li p {
	padding-bottom   : 8px;
	line-height      : normal;
}

/*
ul#exhibitionChronologyList ol li {
	padding          : 6px 0px;
}
ul#exhibitionChronologyList ol li a, ul#exhibitionChronologyList ol li a:hover {	
	text-decoration  : none;
}
ul#exhibitionChronologyList ol li a:hover h4 {
	color            : #d02142;
	text-decoration  : none;
}
ul#exhibitionChronologyList ol li dl {
	overflow         : auto;
}
ul#exhibitionChronologyList ol li dt {
	float            : left;
	margin-right     : 10px;
}
ul#exhibitionChronologyList ol li dd {
	float            : left;
	padding-top      : 3px;
}
ul#exhibitionChronologyList ol li dd strong, p#exhibitionDetails strong {
	display          : block;
	padding-bottom   : 8px;
	font-size        : 15px;
	font-weight      : normal;
}
ul#exhibitionChronologyList ol li dd em, p#exhibitionDetails em {
	display          : block;
	font-size        : 12px;
	font-style       : italic;
	line-height      : normal;
}
*/


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ C O N T A C T.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
form#contactForm, form#contactForm fieldset, form#contactForm label, form#contactForm input {
	padding          : 0px;
	margin           : 0px;
	display          : block;
	border           : 0px;
	overflow         : hidden;
}
form#contactForm {
	clear            : both;
	width            : 660px;
	padding-top      : 40px;
	overflow         : auto;
}
form#contactForm legend {
	display          : none;
}
form#contactForm label {
	float            : left;
	clear            : left;
	width            : 80px;
	margin-bottom    : 10px;
	padding          : 6px 5px 5px 0px;
	text-align       : right;
}
form#contactForm input[type=text], form#contactForm select, form#contactForm textarea {
	float            : right;
	width            : 550px;
	margin-bottom    : 10px;
	padding          : 5px 5px;
	font-size        : 14px;
	color            : #999999;
	background-color : #111111;
	border           : 1px solid #999999;
}
form#contactForm input[type=text]:focus, form#contactForm select:focus, form#contactForm textarea:focus {
	border           : 1px solid #d02142;
}
form#contactForm input[type=submit] {
	float            : right;
	clear            : right;
	margin-top       : 10px;
	padding          : 5px;
	color            : #000000;
	font-style       : italic;
	background-color : #ffffff;
	border           : none;
	cursor           : pointer;
}
form#contactForm input[type=submit]:hover {
	background-color : #d02142;
}
form#contactForm textarea {
	height           : 150px;
	overflow         : auto;
}
form#contactForm select {
	width            : 562px;
	padding          : 3px 0px 3px 3px;
}
form#contactForm select option {
	padding          : 0px 3px 3px 3px;
	margin           : 0px;
	border           : 0px;
}
form#contactForm label#contactFormNotification {
	float            : left;
	clear            : left;
	width            : 530px;
	margin-top       : 10px;
	padding          : 5px;
	font-weight      : normal;
	color            : #eeeeee;
	/*border           : 1px solid green;*/
}



/*—~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/