Rhesus Monkey Young and Aged L3 PFC Pyramidal Neurons (Rumbell et al. 2016)

 Download zip file   Auto-launch 
Help downloading and running models
Accession:184497
A stereotypical pyramidal neuron morphology with ion channel parameter combinations that reproduce firing patterns of one young and one aged rhesus monkey L3 PFC pyramidal neurons. Parameters were found through an automated optimization method.
Reference:
1 . Rumbell TH, Draguljic D, Yadav A, Hof PR, Luebke JI, Weaver CM (2016) Automated evolutionary optimization of ion channel conductances and kinetics in models of young and aged rhesus monkey pyramidal neurons. J Comput Neurosci 41:65-90 [PubMed]
Citations  Citation Browser
Model Information (Click on a link to find other models with that property)
Model Type: Neuron or other electrically excitable cell;
Brain Region(s)/Organism:
Cell Type(s): Neocortex L2/3 pyramidal GLU cell;
Channel(s): I Na,p; I Na,t; I A; I K; I M; I h; I K,Ca; I Sodium; I Calcium; I Potassium; I_AHP; I Cl, leak;
Gap Junctions:
Receptor(s):
Gene(s):
Transmitter(s):
Simulation Environment: NEURON;
Model Concept(s): Ion Channel Kinetics; Parameter Fitting; Detailed Neuronal Models; Aging/Alzheimer`s;
Implementer(s):
Search NeuronDB for information about:  Neocortex L2/3 pyramidal GLU cell; I Na,p; I Na,t; I A; I K; I M; I h; I K,Ca; I Sodium; I Calcium; I Potassium; I_AHP; I Cl, leak;
/*

This port was made from the FORTRAN code into the NEURON enviroment based on 

	Traub RD, Buhl EH, Gloveli T, Whittington MA. Fast Rhythmic Bursting Can Be Induced in Layer 2/3 Cortical Neurons by Enhancing Persistent Na(+) Conductance or by Blocking BK Channels.J Neurophysiol. 2003 Feb;89(2):909-21.

This port was made by Roger D Traub and Maciej Lazarewicz (mlazarew@seas.upenn.edu)

Thanks to Ashlen P Reid for help with porting a morphology of the cell.

*/

begintemplate pyr3

	public comp, Level1, Level2, Level3,  Level4, Level5, Level6, Level7, Level8, Level9,  Level10, Level11, Level12, Dendrites, Basal, Oblique, Prox, Dist, SD, Soma, Axon, inj1_, injBase_, injOffset_, ihold_, all, set_active, unset_active

	create  comp[75]
	create  aux10to13[4], aux69, aux38, aux2to9[8]

	objref all, Dist, Oblique, Basal, Soma, Axon, Dendrites, SD, Prox
	objref Aux
	objref Level0, Level1, Level2, Level3, Level4, Level5, Level6, Level7, Level8, Level9, Level10, Level11, Level12
	objref inj1_, injBase_, injOffset_, ihold_

	proc init() {
		create  comp[75]
		create  aux10to13[4], aux69, aux38, aux2to9[8]

		comp[0] delete_section()

		objref all, Dist, Oblique, Basal, Soma, Axon, Dendrites, SD, Prox
		objref  Aux
		objref Level0, Level1, Level2, Level3, Level4, Level5, Level6, Level7, Level8, Level9, Level10, Level11, Level12
		objref inj1_, injOffset_, ihold_

		shape()

		geom()
	
		if( name_declared("method") != 5 ) method = 1

		if( method == 1 ) spinecorr()
		
		// for May3 cell: sa 21127
		if ($2==1) {
			forall {diam*=0.888}
			forall {L*=0.888}
			//{sa=0 forall{for(x) sa+=area(x)} print sa}
		}
		
		// for Dec15 cell: sa 18155
		// revised this to: sa 22684
		if ($2==2) {
			forall {diam*=0.724}
			forall {L*=0.724}
			{sa=0 forall{for(x) sa+=area(x)} print sa}
		}
		
		// for Jun24IR2i cell: sa 27232.4 - comes to 27244
		if ($2==3) {
			forall {diam*=0.794}
			forall {L*=0.794}
			{sa=0 forall{for(x) sa+=area(x)} print sa}
		}

		setupIClamp()
		
		// set up an offset current if using Dec15, because in this cell the
		// 0pA recording leads to a positive mem.pot. change, and the -70mV 
		// recording leads to no mem.pot. change, so the injected current is 
		// actually +70pA compared to what is stated...
		
		if ($2==2) {
			//setupOffsetClamp()
		}
		
		//setupSEClamp()
		
		//setupOffset()

		set_active()
		
		// MRFflags 1 2 3 are all setting passive properties
		if ( $1 == 1 || $1 == 2 || $1 == 3 || $1 == 5) { unset_active() }

		if( method == 2 ) spinecorr()
	}

	proc setupIClamp() {

		comp[1] {
			inj1_     = new IClamp(0.5)
			inj1_.dur = 2000
			inj1_.del = 15
			inj1_.amp = -0.15

			dnap = 0
			dkc  = 1.6
		}
		
		comp[1] {
			ihold_		= new IClamp(0.5)
			ihold_.dur	= 2015
			ihold_.del	= -2000
			ihold_.amp	= 0
		}
	}
	
	proc setupOffsetClamp() {
		comp[1] {
			injOffset_     = new IClamp(0.5)
			injOffset_.dur = 2000
			injOffset_.del = 15
			injOffset_.amp = -0.07
		}
	}

	// SE Clamp is an IClamp that holds the resting potential of the 
	// cell at a specific value - i.e. the resting potential of the 
	// cell is not actually -70mV, but it is held there by some 
	// mystery current injection.
	// I'm using OffsetClamp for the moment, because I'm assuming that the 
	// resting potential is actually -70mV, and I don't have the SEClamp set up
	// to do what it is supposed to do, and all I want to do is alter the amount
	// of current being injected by +70mV, without having to change the 
	// configuration in the setupGenerators stage... anyway...
	proc setupSEClamp() {
		comp[1] {
			injBase_     = new IClamp(0.5)
			injBase_.dur = 7015
			injBase_.del = -2000
			injBase_.amp = -0.070
		}
	}

	proc setupOffset() {
		comp[1] {
			insert offst
			Vraise_offst 	= -70.0	
			on_offst 		= 15
			W_offst 		= 5
			we_offst 		= 5
		}
	}

	proc spinecorr() {

		forsec Dendrites {
			if (method == 1) {
				L  = L * 2
				Ra = Ra / 2
			}

			if (method == 2) {
				g_pas	  = g_pas     * 2 
				cm   	  = cm        * 2
				phi_cad   = phi_cad   / 2

				gbar_naf  = gbar_naf  * 2
				gbar_nap  = gbar_nap  * 2
				gbar_kdr  = gbar_kdr  * 2
				gbar_ka   = gbar_ka   * 2
				gbar_kc   = gbar_kc   * 2
				gbar_kahp = gbar_kahp * 2
				gbar_k2   = gbar_k2   * 2
				gbar_km   = gbar_km   * 2
				gbar_cat  = gbar_cat  * 2
				gbar_cal  = gbar_cal  * 2
				gbar_ar   = gbar_ar   * 2
			}
		}

		print "Spine correction with method: ", method
	}

	proc set_active() {

		forsec Dendrites {
			insert cad
			insert naf 
			insert nap 
			insert kdr 
			insert ka 
			insert kc
			insert kahp 
			insert k2 
			insert km 
			insert cat 
			insert cal 
			insert ar
		}

		forsec Soma {
			insert cad
			insert naf 
			insert nap 
			insert kdr 
			insert ka 
			insert kc
			insert kahp 
			insert k2 
			insert km 
			insert cat 
			insert cal 
			insert ar
		}

		forsec Axon {
			insert naf 
			insert kdr 
			insert ka 
			insert k2 

			gbar_naf  = 400e-3 
			gbar_kdr  = 400e-3
			gbar_ka   = 2e-3
			gbar_k2   = 0.1e-3
		}
		
		comp[1] ceiling_cad = 1000

		forsec Soma {
			phi_cad   = 52 / 2e-3
			beta_cad  = 1 / 100	// in the paper beta = 50 [ms]

			gbar_naf  = 150e-3 * 1.25
			gbar_nap  = dnap * 0.0032 * gbar_naf 
			gbar_kdr  = 125e-3
			gbar_ka   = 30e-3
			gbar_kc   = dkc * 7.5e-3 // in tha paper 'dkc * 12e-3'
			gbar_kahp = 0.1e-3
			gbar_k2   = 0.1e-3
			gbar_km   = 2.5 * 1.5e-3 * 2
			gbar_cat  = 0.1e-3
			gbar_cal  = 0.5e-3
			gbar_ar   = 0.25e-3
		}

		forsec Dendrites {
			phi_cad   = 52 / 2e-3
			beta_cad  = 1 / 20

			gbar_naf  = 6.25e-3 
			gbar_nap  = dnap * 0.0032 * gbar_naf 
			gbar_kdr  = 0
			gbar_ka   = 2e-3
			gbar_kc   = 0
			gbar_kahp = 0.1e-3
			gbar_k2   = 0.1e-3
			gbar_km   = 2.5 * 1.5e-3 * 2
			gbar_cat  = 0.1e-3
			gbar_cal  = 0.5e-3
			gbar_ar   = 0.25e-3
		}

		forsec Prox {
			gbar_naf  = 75e-3 * 1.25
			gbar_nap  = dnap * 0.0032 * gbar_naf 
			gbar_kdr  = 75e-3 * 1.25
			gbar_kc   = dkc * 7.5e-3 // in tha paper 'dkc * 12e-3'
		}

		forsec Dist {
			gbar_cal  = 3e-3
		}

		comp[38] {
			gbar_ka   = 30e-3
			gbar_naf  = 125e-3 
			gbar_nap  = dnap * 0.0032 * gbar_naf // in the FORTRAN code 0.004
			gbar_kdr  = 125e-3       // in tha paper '75e-3 * 1.25'
			gbar_kc   = dkc * 7.5e-3 // in tha paper 'dkc * 12e-3'
		}

		forsec Axon {
			ena = 50
			ek  = -95
		}

		forsec Dendrites {
			ena = 50
			ek  = -95
			eca = 125
		}

		forsec Soma {
			ena = 50
			ek  = -95
			eca = 125
		}

	}
	
	proc unset_active() {
		forsec Dendrites {
			//gbar_cad = 0
			gbar_naf = 0
			gbar_nap = 0
			gbar_kdr = 0
			gbar_ka = 0
			gbar_kc = 0
			gbar_kahp = 0
			gbar_k2 = 0
			gbar_km = 0
			gbar_cat = 0
			gbar_cal = 0
			gbar_ar = 0
		}

		forsec Soma {
			//gbar_cad = 0
			gbar_naf = 0
			gbar_nap = 0
			gbar_kdr = 0
			gbar_ka = 0
			gbar_kc = 0
			gbar_kahp = 0
			gbar_k2 = 0
			gbar_km = 0
			gbar_cat = 0
			gbar_cal = 0
			gbar_ar = 0
		}

		forsec Axon {
			gbar_naf = 0
			gbar_kdr = 0
			gbar_ka = 0
			gbar_k2 = 0
		}
	}

	proc geom() {

		//Apical

		for i=61,68 connect comp[i](0),      comp[i-8](1)
		for i=53,60 connect comp[i](0),      comp[i-8](1)
		for i=49,52 connect comp[i](0),      comp[44](1)
		for i=45,48 connect comp[i](0),      comp[43](1)
		for i=43,44 connect comp[i](0),      comp[i-2](1)
		for i=41,42 connect comp[i](0),      comp[40](1)

		connect             comp[40](0),     comp[39](1)
		connect 	    comp[39](0),     comp[38](1)
//		connect 	    comp[38](0),     comp[1](1)
		connect 	    comp[38](0),     aux38(1)
		connect		    aux38(0),        comp[1](0.5)

		// Oblique apical

		for i=0,3 connect   aux10to13[i](0), comp[38](0.5)
		for i=0,3 connect   comp[i+10](0),   aux10to13[i](1)
//		for i=0,3 connect   comp[i+10](0),   comp[38](0.5)
		for i=0,3 connect   comp[i+22](0),   comp[i+10](1)
		for i=0,3 connect   comp[i+34](0),   comp[i+22](1)

		// Basal

		for i=0,7 connect   aux2to9[i](0),   comp[1](0.5)
		for i=0,7 connect   comp[i+2](0),    aux2to9[i](1)
//		for i=0,7 connect   comp[i+2](0),    comp[1](0)
		for i=0,7 connect   comp[i+14](0),   comp[i+2](1)
		for i=0,7 connect   comp[i+26](0),   comp[i+14](1)

		// Axon
		connect             aux69(0),        comp[1](0.5)
		connect             comp[69](0),     aux69(1)
//		connect             comp[69](0),     comp[1](0.5)
		connect             comp[70](0),     comp[69](1)
		for i=0,1 connect   comp[71+i*2](0), comp[70](1)
		for i=0,1 connect   comp[72+i*2](0), comp[71+i*2](1)

		Level0 = new SectionList()
		 for i=69,74 comp[i] Level0.append()    

		Level1 = new SectionList()
		comp[1] Level1.append()    

		Level2 = new SectionList()
		 for i=2,13 comp[i] Level2.append()    

		Level3 = new SectionList()
		 for i=14,25 comp[i] Level3.append()

		Level4 = new SectionList()
		 for i=26,37 comp[i] Level4.append()

		Level5 = new SectionList()
		 comp[38] Level5.append()

		Level6 = new SectionList()
		 comp[39] Level6.append()

		Level7 = new SectionList()
		 comp[40] Level7.append()

		Level8 = new SectionList()
		 for i=41,42 comp[i] Level8.append()

		Level9 = new SectionList()
		 for i=43,44 comp[i] Level9.append()

		Level10 = new SectionList()
		 for i=45,52 comp[i] Level10.append()

		Level11 = new SectionList()
		 for i=53,60 comp[i] Level11.append()

		Level12 = new SectionList()
		 for i=60,68 comp[i] Level12.append()

		all = new SectionList()
		 for i=1,74 comp[i] all.append()

		Axon = new SectionList()
		 for i=69,74 comp[i] Axon.append()

		Dendrites = new SectionList()
		 for i=2,68 comp[i] Dendrites.append()

		SD = new SectionList()
		 for i=1,68 comp[i] SD.append()

		Dist = new SectionList()
		 forsec Level10 Dist.append()
		 forsec Level11 Dist.append()
		 forsec Level12 Dist.append()

		Basal = new SectionList()
		 for i=2,9 comp[i] Basal.append()
		 for i=14,21 comp[i] Basal.append()
		 for i=26,33 comp[i] Basal.append()

		Oblique = new SectionList()
		 for i=10,13 comp[i] Oblique.append()
		 for i=22,25 comp[i] Oblique.append()
		 for i=34,37 comp[i] Oblique.append()

		Prox = new SectionList()
		 forsec Level2 Prox.append()
		 forsec Level6 Prox.append()

		Soma = new SectionList()
		 comp[1] Soma.append()

		Aux = new SectionList()
		 for i=0,3 aux10to13[i] Aux.append()
		 aux69 Aux.append()
		 aux38 Aux.append()
		 for i=0,7 aux2to9[i] Aux.append()

		forsec Dist 		{  		diam = 1.6  	}
		forsec Oblique 		{  		diam = 1  	}
		forsec Basal 		{  		diam = 1  	}
		forsec Soma 		{  L = 15  	diam = 16  	}
		forsec Dendrites 	{  L = 50  			}
		forsec Aux 	 	{  L = 15 / 2  	diam = 16 	}
		for i=0,3 aux10to13[i]	{  L = 50 / 2  	diam = 8 	}

		comp[38]    		{ 		diam = 8  	}
		comp[39] 		{  		diam = 8 * 0.9 	}
		comp[40] 		{  		diam = 8 * 0.8 	}
		forsec Level8 		{  		diam = 4  	}
		forsec Level9 		{  		diam = 4  	}

		comp[69]    		{  L = 25  	diam = 1.8 	}
		comp[70]    		{  L = 50  	diam = 1.4 	}
		for i=71,74 comp[i] 	{  L = 50  	diam = 1  	}

		forsec Aux {
			Ra = 250
			cm = 0
		}	

		forsec Soma {
		  Ra = 250
		  cm = 0.9
		  insert pas
		    g_pas = 2e-05
		    e_pas = -70
		}

		forsec Axon {
		  Ra = 100
		  cm = 0.9
		  insert pas
		    g_pas = 0.001
		    e_pas = -70
		}

		forsec Dendrites {
		  Ra = 250
		  cm = 0.9
		  insert pas
		    g_pas = 2e-05
		    e_pas = -70
		}

		access comp[1]
	}

	proc shape() {

		aux10to13[0] 	{pt3dclear() pt3dadd(-134, -14, 0, 1) pt3dadd(-104, -14, 0, 1)}
		aux10to13[1] 	{pt3dclear() pt3dadd(-134, -14, 0, 1) pt3dadd(-104, -14, 0, 1)}
		aux10to13[2] 	{pt3dclear() pt3dadd(-134, -14, 0, 1) pt3dadd(-104, -14, 0, 1)}
		aux10to13[3] 	{pt3dclear() pt3dadd(-134, -14, 0, 1) pt3dadd(-104, -14, 0, 1)}
		aux69		{pt3dclear() pt3dadd(-149, -14, 0, 1) pt3dadd(-134, -14, 0, 1)}
		aux38		{pt3dclear() pt3dadd(-149, -14, 0, 1) pt3dadd(-134, -14, 0, 1)}
		aux2to9[0]	{pt3dclear() pt3dadd(-149, -14, 0, 1) pt3dadd(-134, -14, 0, 1)}
		aux2to9[1]	{pt3dclear() pt3dadd(-149, -14, 0, 1) pt3dadd(-134, -14, 0, 1)}
		aux2to9[2]	{pt3dclear() pt3dadd(-149, -14, 0, 1) pt3dadd(-134, -14, 0, 1)}
		aux2to9[3]	{pt3dclear() pt3dadd(-149, -14, 0, 1) pt3dadd(-134, -14, 0, 1)}
		aux2to9[4]	{pt3dclear() pt3dadd(-149, -14, 0, 1) pt3dadd(-134, -14, 0, 1)}
		aux2to9[5]	{pt3dclear() pt3dadd(-149, -14, 0, 1) pt3dadd(-134, -14, 0, 1)}
		aux2to9[6]	{pt3dclear() pt3dadd(-149, -14, 0, 1) pt3dadd(-134, -14, 0, 1)}
		aux2to9[7]	{pt3dclear() pt3dadd(-149, -14, 0, 1) pt3dadd(-134, -14, 0, 1)}

		comp[1] {pt3dclear() pt3dadd(-149, -14, 0, 1) pt3dadd(-134, -14, 0, 1)}
		comp[38] {pt3dclear() pt3dadd(-134, -14, 0, 1) pt3dadd(-104, -14, 0, 1)}
		comp[39] {pt3dclear() pt3dadd(-104, -14, 0, 1) pt3dadd(-74, -14, 0, 1)}
		comp[40] {pt3dclear() pt3dadd(-74, -14, 0, 1) pt3dadd(-44, -14, 0, 1)}

		comp[41] {pt3dclear() pt3dadd(-44, -14, 0, 1) pt3dadd(-14, 30, 0, 1)}
		comp[43] {pt3dclear() pt3dadd(-14, 30, 0, 1) pt3dadd(0, 45, 0, 1)}

		comp[45] {pt3dclear() pt3dadd(0, 45, 0, 1) pt3dadd(45, 75, 0, 1)}
		comp[46] {pt3dclear() pt3dadd(0, 45, 0, 1) pt3dadd(45, 60, 0, 1)}
		comp[47] {pt3dclear() pt3dadd(0, 45, 0, 1) pt3dadd(45, 30, 0, 1)}
		comp[48] {pt3dclear() pt3dadd(0, 45, 0, 1) pt3dadd(45, 15, 0, 1)}

		comp[53] {pt3dclear() pt3dadd(45, 75, 0, 1) pt3dadd(75, 75, 0, 1)}
		comp[54] {pt3dclear() pt3dadd(45, 60, 0, 1) pt3dadd(75, 60, 0, 1)}
		comp[55] {pt3dclear() pt3dadd(45, 30, 0, 1) pt3dadd(75, 30, 0, 1)}
		comp[56] {pt3dclear() pt3dadd(45, 15, 0, 1) pt3dadd(75, 15, 0, 1)}

		comp[61] {pt3dclear() pt3dadd(75, 75, 0, 1) pt3dadd(90, 90, 0, 1)}
		comp[62] {pt3dclear() pt3dadd(75, 60, 0, 1) pt3dadd(90, 75, 0, 1)}
		comp[63] {pt3dclear() pt3dadd(75, 30, 0, 1) pt3dadd(90, 15, 0, 1)}
		comp[64] {pt3dclear() pt3dadd(75, 15, 0, 1) pt3dadd(90, 0, 0, 1)}

		comp[42] {pt3dclear() pt3dadd(-44, -14, 0, 1) pt3dadd(-14, -59, 0, 1)}
		comp[44] {pt3dclear() pt3dadd(-14, -59, 0, 1) pt3dadd(0, -74, 0, 1)}

		comp[49] {pt3dclear() pt3dadd(0, -74, 0, 1) pt3dadd(45, -44, 0, 1)}
		comp[50] {pt3dclear() pt3dadd(0, -74, 0, 1) pt3dadd(45, -59, 0, 1)}
		comp[51] {pt3dclear() pt3dadd(0, -74, 0, 1) pt3dadd(45, -89, 0, 1)}
		comp[52] {pt3dclear() pt3dadd(0, -74, 0, 1) pt3dadd(45, -104, 0, 1)}

		comp[57] {pt3dclear() pt3dadd(45, -44, 0, 1) pt3dadd(75, -44, 0, 1)}
		comp[58] {pt3dclear() pt3dadd(45, -59, 0, 1) pt3dadd(75, -59, 0, 1)}
		comp[59] {pt3dclear() pt3dadd(45, -89, 0, 1) pt3dadd(75, -89, 0, 1)}
		comp[60] {pt3dclear() pt3dadd(45, -104, 0, 1) pt3dadd(75, -104, 0, 1)}

		comp[65] {pt3dclear() pt3dadd(75, -44, 0, 1) pt3dadd(90, -29, 0, 1)}
		comp[66] {pt3dclear() pt3dadd(75, -59, 0, 1) pt3dadd(90, -44, 0, 1)}
		comp[67] {pt3dclear() pt3dadd(75, -89, 0, 1) pt3dadd(90, -104, 0, 1)}
		comp[68] {pt3dclear() pt3dadd(75, -104, 0, 1) pt3dadd(90, -119, 0, 1)}

		comp[10] {pt3dclear() pt3dadd(-104, -14, 0, 1) pt3dadd(-119, 0, 0, 1)}
		comp[22] {pt3dclear() pt3dadd(-119, 0, 0, 1) pt3dadd(-119, 30, 0, 1)}
		comp[34] {pt3dclear() pt3dadd(-119, 30, 0, 1) pt3dadd(-119, 60, 0, 1)}
		comp[11] {pt3dclear() pt3dadd(-104, -14, 0, 1) pt3dadd(-89, 0, 0, 1)}
		comp[23] {pt3dclear() pt3dadd(-89, 0, 0, 1) pt3dadd(-89, 30, 0, 1)}
		comp[35] {pt3dclear() pt3dadd(-89, 30, 0, 1) pt3dadd(-89, 60, 0, 1)}
		comp[12] {pt3dclear() pt3dadd(-104, -14, 0, 1) pt3dadd(-119, -29, 0, 1)}
		comp[24] {pt3dclear() pt3dadd(-119, -29, 0, 1) pt3dadd(-119, -59, 0, 1)}
		comp[36] {pt3dclear() pt3dadd(-119, -59, 0, 1) pt3dadd(-119, -89, 0, 1)}
		comp[13] {pt3dclear() pt3dadd(-104, -14, 0, 1) pt3dadd(-89, -29, 0, 1)}
		comp[25] {pt3dclear() pt3dadd(-89, -29, 0, 1) pt3dadd(-89, -59, 0, 1)}
		comp[37] {pt3dclear() pt3dadd(-89, -59, 0, 1) pt3dadd(-89, -89, 0, 1)}
		comp[2] {pt3dclear() pt3dadd(-149, -14, 0, 1) pt3dadd(-164, 30, 0, 1)}
		comp[14] {pt3dclear() pt3dadd(-164, 30, 0, 1) pt3dadd(-179, 45, 0, 1)}
		comp[26] {pt3dclear() pt3dadd(-179, 45, 0, 1) pt3dadd(-194, 60, 0, 1)}
		comp[3] {pt3dclear() pt3dadd(-149, -14, 0, 1) pt3dadd(-179, 30, 0, 1)}
		comp[15] {pt3dclear() pt3dadd(-179, 30, 0, 1) pt3dadd(-194, 45, 0, 1)}
		comp[27] {pt3dclear() pt3dadd(-194, 45, 0, 1) pt3dadd(-209, 60, 0, 1)}
		comp[4] {pt3dclear() pt3dadd(-149, -14, 0, 1) pt3dadd(-194, 15, 0, 1)}
		comp[16] {pt3dclear() pt3dadd(-194, 15, 0, 1) pt3dadd(-209, 30, 0, 1)}
		comp[28] {pt3dclear() pt3dadd(-209, 30, 0, 1) pt3dadd(-224, 45, 0, 1)}
		comp[5] {pt3dclear() pt3dadd(-149, -14, 0, 1) pt3dadd(-194, 0, 0, 1)}
		comp[17] {pt3dclear() pt3dadd(-194, 0, 0, 1) pt3dadd(-209, 15, 0, 1)}
		comp[29] {pt3dclear() pt3dadd(-209, 15, 0, 1) pt3dadd(-224, 30, 0, 1)}
		comp[6] {pt3dclear() pt3dadd(-149, -14, 0, 1) pt3dadd(-194, -29, 0, 1)}
		comp[18] {pt3dclear() pt3dadd(-194, -29, 0, 1) pt3dadd(-209, -44, 0, 1)}
		comp[30] {pt3dclear() pt3dadd(-209, -44, 0, 1) pt3dadd(-224, -59, 0, 1)}
		comp[7] {pt3dclear() pt3dadd(-149, -14, 0, 1) pt3dadd(-164, -59, 0, 1)}
		comp[19] {pt3dclear() pt3dadd(-164, -59, 0, 1) pt3dadd(-179, -74, 0, 1)}
		comp[31] {pt3dclear() pt3dadd(-179, -74, 0, 1) pt3dadd(-194, -89, 0, 1)}
		comp[8] {pt3dclear() pt3dadd(-149, -14, 0, 1) pt3dadd(-194, -44, 0, 1)}
		comp[20] {pt3dclear() pt3dadd(-194, -44, 0, 1) pt3dadd(-209, -59, 0, 1)}
		comp[32] {pt3dclear() pt3dadd(-209, -59, 0, 1) pt3dadd(-224, -74, 0, 1)}
		comp[9] {pt3dclear() pt3dadd(-149, -14, 0, 1) pt3dadd(-179, -59, 0, 1)}
		comp[21] {pt3dclear() pt3dadd(-179, -59, 0, 1) pt3dadd(-194, -74, 0, 1)}
		comp[33] {pt3dclear() pt3dadd(-194, -74, 0, 1) pt3dadd(-209, -89, 0, 1)}
		comp[69] {pt3dclear() pt3dadd(-134, -14, 0, 1) pt3dadd(-134, -44, 0, 1)}
		comp[70] {pt3dclear() pt3dadd(-134, -44, 0, 1) pt3dadd(-134, -74, 0, 1)}
		comp[71] {pt3dclear() pt3dadd(-134, -74, 0, 1) pt3dadd(-149, -89, 0, 1)}
		comp[72] {pt3dclear() pt3dadd(-149, -89, 0, 1) pt3dadd(-149, -129, 0, 1)}
		comp[73] {pt3dclear() pt3dadd(-134, -74, 0, 1) pt3dadd(-134, -104, 0, 1)}
		comp[74] {pt3dclear() pt3dadd(-134, -104, 0, 1) pt3dadd(-134, -134, 0, 1)}
	}

endtemplate pyr3