1 // generated from file './/bottlerocket.dsp' by dsp2cc:
2 // Code generated with Faust 0.9.73 (http://faust.grame.fr)
3 
4 
5 namespace bottlerocket {
6 
7 template <int tab_size>
8 struct table1d_imp { // 1-dimensional nonlintabping table
9     float low;
10     float high;
11     float istep;
12     int size;
13     float data[tab_size];
14 };
15 
16 static table1d_imp<400> nonlintab __rt_data = {
17 	0.0,0.999999999999,407.88,400, {
18 	0.0,0.00524365827424,0.0104873165485,0.0157309748227,0.020974633097,
19 	0.0262182913712,0.0314619496454,0.0367056079197,0.0419492661939,0.0471929244682,
20 	0.0524365827424,0.0576802410166,0.0629238992909,0.0681675575651,0.0734112158394,
21 	0.0786548741136,0.0838985323878,0.0891421906621,0.0943858489363,0.0996295072105,
22 	0.104873165485,0.110116823759,0.115360482033,0.120604140308,0.125847798582,
23 	0.131091456856,0.13633511513,0.141578773404,0.146822431679,0.152066089953,
24 	0.157309748227,0.162553406501,0.167797064776,0.17304072305,0.178284381324,
25 	0.183528039598,0.188771697873,0.19380726992,0.198511362791,0.203054654885,
26 	0.207482232501,0.211817441263,0.216075054907,0.220265421778,0.224396260701,
27 	0.228473582829,0.232502219471,0.236486148516,0.240428708288,0.244332744072,
28 	0.248200712192,0.252034756159,0.255836763764,0.25960841081,0.263351195206,
29 	0.267066463975,0.27075543494,0.274419214349,0.278058811369,0.281675150097,
30 	0.285269079625,0.288841382525,0.292392782059,0.295923948351,0.299435503689,
31 	0.302928027117,0.306402058429,0.309858101651,0.313296628105,0.316718079097,
32 	0.320122868302,0.323511383873,0.326883990323,0.330241030198,0.333582825577,
33 	0.33690967942,0.340221876773,0.343519685861,0.346803359073,0.350073133849,
34 	0.353329233487,0.35657186788,0.359801234182,0.363017517411,0.366220891015,
35 	0.369411517369,0.372589548253,0.375755125274,0.378908380266,0.382049435657,
36 	0.385178404807,0.38829539233,0.391400494389,0.394493798976,0.397575386184,
37 	0.400645328451,0.403703690811,0.406750531129,0.409785900328,0.412809842615,
38 	0.415822395708,0.41882359106,0.42181345408,0.424792004367,0.427759255941,
39 	0.430715217482,0.43365989258,0.436593279987,0.439515373889,0.442426164176,
40 	0.445325636737,0.448213773757,0.451090554033,0.453955953302,0.456809944578,
41 	0.45965249851,0.462483583744,0.465303167305,0.468111214983,0.470907691733,
42 	0.47369256208,0.476465790539,0.479227342024,0.481977182276,0.484715278281,
43 	0.487441598685,0.49015611421,0.492858798057,0.495549626295,0.498228578245,
44 	0.500895636833,0.503550788937,0.506194025702,0.508825342831,0.511444740849,
45 	0.51405222534,0.516647807146,0.519231502537,0.521803333347,0.524363327073,
46 	0.526911516941,0.529447941935,0.531972646794,0.53448568197,0.536987103565,
47 	0.539476973221,0.541955357997,0.544422330209,0.546877967248,0.549322351379,
48 	0.551755569516,0.554177712983,0.556588877262,0.558989161726,0.561378669366,
49 	0.56375750651,0.566125782543,0.568483609614,0.57083110236,0.573168377617,
50 	0.575495554147,0.577812752363,0.580120094066,0.58241770219,0.584705700553,
51 	0.586984213624,0.589253366297,0.59151328368,0.593764090889,0.596005912863,
52 	0.59823887419,0.600463098936,0.602678710496,0.604885831457,0.607084583465,
53 	0.60927508711,0.611457461819,0.613631825762,0.615798295765,0.617956987235,
54 	0.620108014091,0.62225148871,0.624387521874,0.626516222728,0.628637698745,
55 	0.630752055695,0.632859397628,0.634959826849,0.637053443912,0.639140347612,
56 	0.641220634981,0.643294401288,0.645361740046,0.647422743022,0.649477500243,
57 	0.651526100011,0.653568628924,0.655605171888,0.657635812137,0.659660631261,
58 	0.661679709221,0.663693124378,0.665700953516,0.667703271869,0.669700153146,
59 	0.67169166956,0.673677891856,0.675658889336,0.67763472989,0.679605480021,
60 	0.68157120488,0.683531968286,0.685487832758,0.687438859547,0.689385108655,
61 	0.691326638871,0.693263507792,0.695195771856,0.697123486361,0.699046705499,
62 	0.700965482375,0.70287986904,0.704789916506,0.70669567478,0.70859719288,
63 	0.710494518867,0.712387699858,0.714276782057,0.716161810772,0.71804283044,
64 	0.719919884644,0.721793016138,0.723662266863,0.725527677969,0.727389289834,
65 	0.72924714208,0.731101273597,0.732951722553,0.734798526418,0.736641721978,
66 	0.738481345349,0.740317431998,0.742150016756,0.74397913383,0.745804816825,
67 	0.747627098752,0.749446012044,0.751261588572,0.753073859653,0.754882856068,
68 	0.756688608073,0.758491145409,0.760290497316,0.762086692547,0.763879759373,
69 	0.765669725598,0.767456618571,0.769240465193,0.771021291929,0.772799124818,
70 	0.77457398948,0.776345911129,0.778114914581,0.779881024261,0.781644264212,
71 	0.783404658105,0.785162229248,0.78691700059,0.788668994731,0.790418233931,
72 	0.792164740113,0.793908534876,0.795649639496,0.797388074939,0.79912386186,
73 	0.800857020617,0.802587571272,0.804315533599,0.80604092709,0.807763770961,
74 	0.809484084157,0.811201885357,0.812917192981,0.814630025194,0.81634039991,
75 	0.818048334802,0.819753847298,0.821456954596,0.823157673659,0.824856021226,
76 	0.826552013815,0.828245667725,0.829936999043,0.831626023646,0.833312757205,
77 	0.834997215192,0.836679412879,0.838359365346,0.840037087479,0.841712593983,
78 	0.843385899374,0.845057017992,0.846725963997,0.848392751379,0.850057393953,
79 	0.851719905371,0.853380299117,0.855038588516,0.856694786734,0.858348906779,
80 	0.860000961508,0.861650963627,0.863298925693,0.864944860119,0.866588779174,
81 	0.868230694988,0.869870619549,0.871508564715,0.873144542205,0.874778563611,
82 	0.876410640393,0.878040783885,0.879669005296,0.881295315712,0.882919726098,
83 	0.884542247301,0.886162890049,0.887781664956,0.889398582524,0.891013653141,
84 	0.892626887086,0.894238294531,0.895847885541,0.897455670074,0.899061657989,
85 	0.900665859041,0.902268282885,0.903868939077,0.905467837078,0.907064986253,
86 	0.908660395871,0.91025407511,0.911846033056,0.913436278707,0.915024820968,
87 	0.916611668662,0.918196830521,0.919780315196,0.921362131252,0.922942287174,
88 	0.924520791362,0.92609765214,0.927672877751,0.929246476359,0.930818456055,
89 	0.93238882485,0.933957590685,0.935524761422,0.937090344856,0.938654348706,
90 	0.940216780623,0.941777648188,0.943336958913,0.944894720242,0.946450939552,
91 	0.948005624155,0.949558781296,0.95111041816,0.952660541863,0.954209159464,
92 	0.955756277955,0.957301904271,0.958846045286,0.960388707813,0.961929898608,
93 	0.96346962437,0.965007891739,0.966544707299,0.968080077578,0.969614009052,
94 	0.971146508139,0.972677581205,0.974207234563,0.975735474474,0.977262307148,
95 	0.978787738741,0.980311775362,0.981834423068,0.98335568787,0.984875575726,
96 	0.98639409255,0.987911244205,0.989427036511,0.990941475239,0.992454566114,
97 	0.993966314819,0.995476726989,0.996985808215,0.998493564048,0.999999999991
98 	}
99 };
100 
101 table1d_imp<2001> tubetab __rt_data = {
102 	-5,5,200,2001, {
103 	249.98706929,249.986851225,249.986629489,249.986404021,249.986174757,
104 	249.985941635,249.985704589,249.985463554,249.985218463,249.984969247,
105 	249.984715838,249.984458166,249.984196158,249.983929743,249.983658846,
106 	249.983383392,249.983103306,249.982818508,249.982528921,249.982234464,
107 	249.981935056,249.981630613,249.981321052,249.981006287,249.98068623,
108 	249.980360793,249.980029887,249.979693419,249.979351296,249.979003424,
109 	249.978649708,249.978290048,249.977924346,249.9775525,249.977174409,
110 	249.976789967,249.976399069,249.976001606,249.97559747,249.975186548,
111 	249.974768727,249.974343893,249.973911927,249.973472711,249.973026125,
112 	249.972572044,249.972110345,249.9716409,249.971163579,249.970678252,
113 	249.970184785,249.969683043,249.969172887,249.968654177,249.968126772,
114 	249.967590526,249.967045292,249.96649092,249.965927258,249.965354153,
115 	249.964771446,249.964178978,249.963576587,249.962964107,249.962341372,
116 	249.961708211,249.96106445,249.960409914,249.959744424,249.959067797,
117 	249.95837985,249.957680393,249.956969237,249.956246188,249.955511048,
118 	249.954763616,249.95400369,249.953231063,249.952445523,249.951646857,
119 	249.950834849,249.950009276,249.949169916,249.94831654,249.947448916,
120 	249.946566809,249.945669979,249.944758184,249.943831177,249.942888706,
121 	249.941930516,249.940956349,249.93996594,249.938959023,249.937935324,
122 	249.936894568,249.935836475,249.934760758,249.933667127,249.932555289,
123 	249.931424944,249.930275788,249.929107511,249.9279198,249.926712337,
124 	249.925484796,249.92423685,249.922968162,249.921678394,249.9203672,
125 	249.91903423,249.917679127,249.916301529,249.914901069,249.913477372,
126 	249.912030061,249.910558748,249.909063042,249.907542547,249.905996856,
127 	249.904425561,249.902828244,249.901204482,249.899553844,249.897875894,
128 	249.896170188,249.894436274,249.892673696,249.890881989,249.889060679,
129 	249.887209288,249.885327328,249.883414305,249.881469716,249.879493052,
130 	249.877483793,249.875441414,249.87336538,249.87125515,249.869110171,
131 	249.866929885,249.864713724,249.86246111,249.860171458,249.857844173,
132 	249.855478652,249.853074281,249.850630438,249.848146491,249.845621799,
133 	249.843055711,249.840447565,249.837796689,249.835102404,249.832364016,
134 	249.829580824,249.826752115,249.823877166,249.820955243,249.8179856,
135 	249.81496748,249.811900117,249.80878273,249.80561453,249.802394713,
136 	249.799122465,249.795796959,249.792417358,249.788982809,249.785492449,
137 	249.781945403,249.778340779,249.774677678,249.770955183,249.767172365,
138 	249.763328284,249.759421981,249.75545249,249.751418824,249.747319988,
139 	249.743154968,249.738922738,249.734622257,249.730252468,249.725812301,
140 	249.72130067,249.716716471,249.712058589,249.70732589,249.702517225,
141 	249.697631429,249.692667321,249.687623703,249.682499361,249.677293063,
142 	249.672003562,249.666629592,249.661169871,249.655623098,249.649987954,
143 	249.644263106,249.638447197,249.632538857,249.626536694,249.620439299,
144 	249.614245244,249.607953082,249.601561346,249.59506855,249.588473189,
145 	249.581773739,249.574968653,249.568056367,249.561035295,249.553903831,
146 	249.546660348,249.5393032,249.531830718,249.524241211,249.516532969,
147 	249.508704259,249.500753327,249.492678397,249.48447767,249.476149326,
148 	249.467691521,249.459102391,249.450380046,249.441522576,249.432528047,
149 	249.423394501,249.414119957,249.404702411,249.395139834,249.385430176,
150 	249.37557136,249.365561287,249.355397831,249.345078845,249.334602156,
151 	249.323965565,249.313166851,249.302203767,249.291074039,249.27977537,
152 	249.268305439,249.256661896,249.244842368,249.232844458,249.220665739,
153 	249.208303762,249.195756051,249.183020104,249.170093394,249.156973366,
154 	249.143657441,249.130143014,249.116427453,249.102508098,249.088382267,
155 	249.074047249,249.059500307,249.044738677,249.029759572,249.014560175,
156 	248.999137645,248.983489114,248.967611688,248.951502446,248.935158442,
157 	248.918576704,248.901754233,248.884688005,248.867374969,248.84981205,
158 	248.831996145,248.813924127,248.795592843,248.776999115,248.75813974,
159 	248.739011488,248.719611106,248.699935316,248.679980814,248.659744274,
160 	248.639222342,248.618411645,248.597308781,248.575910327,248.554212837,
161 	248.532212841,248.509906845,248.487291335,248.464362771,248.441117595,
162 	248.417552224,248.393663055,248.369446462,248.344898801,248.320016406,
163 	248.29479559,248.269232647,248.243323852,248.217065459,248.190453706,
164 	248.163484811,248.136154974,248.108460379,248.080397191,248.05196156,
165 	248.02314962,247.993957487,247.964381265,247.934417041,247.904060889,
166 	247.87330887,247.84215703,247.810601403,247.778638011,247.746262866,
167 	247.713471967,247.680261303,247.646626855,247.612564592,247.578070476,
168 	247.543140461,247.507770494,247.471956513,247.435694453,247.398980241,
169 	247.3618098,247.32417905,247.286083906,247.247520279,247.208484082,
170 	247.168971222,247.128977607,247.088499146,247.047531747,247.00607132,
171 	246.964113777,246.921655031,246.878691002,246.835217611,246.791230785,
172 	246.746726457,246.701700566,246.656149058,246.610067887,246.563453015,
173 	246.516300414,246.468606066,246.420365964,246.371576111,246.322232524,
174 	246.272331232,246.221868279,246.170839722,246.119241634,246.067070104,
175 	246.014321237,245.960991157,245.907076004,245.852571939,245.79747514,
176 	245.74178181,245.685488167,245.628590455,245.571084939,245.512967907,
177 	245.454235672,245.394884569,245.334910961,245.274311236,245.213081807,
178 	245.151219115,245.08871963,245.02557985,244.9617963,244.897365536,
179 	244.832284146,244.766548747,244.700155987,244.633102547,244.565385141,
180 	244.497000515,244.427945449,244.358216758,244.287811291,244.216725932,
181 	244.144957602,244.072503257,243.999359889,243.92552453,243.850994248,
182 	243.775766147,243.699837372,243.623205106,243.545866572,243.467819032,
183 	243.389059786,243.309586179,243.229395592,243.148485449,243.066853216,
184 	242.984496398,242.901412546,242.817599248,242.733054138,242.647774892,
185 	242.561759227,242.475004906,242.387509732,242.299271553,242.210288262,
186 	242.120557793,242.030078124,241.938847279,241.846863324,241.754124371,
187 	241.660628575,241.566374134,241.471359294,241.375582341,241.279041608,
188 	241.181735472,241.083662355,240.984820721,240.885209081,240.784825989,
189 	240.683670043,240.581739885,240.479034203,240.375551726,240.271291229,
190 	240.166251531,240.060431493,239.95383002,239.846446061,239.738278607,
191 	239.629326695,239.5195894,239.409065844,239.29775519,239.185656641,
192 	239.072769446,238.959092892,238.84462631,238.729369072,238.61332059,
193 	238.496480317,238.378847747,238.260422414,238.141203892,238.021191795,
194 	237.900385775,237.778785524,237.656390773,237.533201291,237.409216884,
195 	237.284437398,237.158862715,237.032492753,236.905327469,236.777366855,
196 	236.648610938,236.519059783,236.388713489,236.257572188,236.125636051,
197 	235.992905278,235.859380107,235.725060807,235.58994768,235.454041062,
198 	235.31734132,235.179848852,235.041564089,234.902487493,234.762619556,
199 	234.6219608,234.480511776,234.338273067,234.195245283,234.051429062,
200 	233.906825072,233.761434008,233.615256591,233.468293572,233.320545726,
201 	233.172013855,233.022698786,232.872601372,232.721722492,232.570063047,
202 	232.417623965,232.264406196,232.110410713,231.955638512,231.800090614,
203 	231.643768059,231.48667191,231.328803251,231.170163188,231.010752847,
204 	230.850573373,230.689625933,230.527911712,230.365431915,230.202187764,
205 	230.0381805,229.873411384,229.707881693,229.541592719,229.374545774,
206 	229.206742186,229.038183299,228.868870471,228.698805078,228.527988509,
207 	228.356422169,228.184107477,228.011045867,227.837238785,227.662687692,
208 	227.487394061,227.311359378,227.134585141,226.957072863,226.778824064,
209 	226.59984028,226.420123056,226.239673947,226.058494521,225.876586355,
210 	225.693951036,225.510590161,225.326505336,225.141698178,224.956170309,
211 	224.769923365,224.582958985,224.39527882,224.206884527,224.017777772,
212 	223.827960226,223.637433569,223.446199487,223.254259674,223.061615828,
213 	222.868269655,222.674222866,222.479477179,222.284034315,222.087896002,
214 	221.891063973,221.693539966,221.495325721,221.296422987,221.096833513,
215 	220.896559053,220.695601367,220.493962216,220.291643365,220.088646583,
216 	219.884973642,219.680626315,219.475606381,219.269915618,219.063555809,
217 	218.856528737,218.64883619,218.440479954,218.231461819,218.021783577,
218 	217.811447019,217.600453941,217.388806137,217.176505402,216.963553533,
219 	216.749952328,216.535703584,216.3208091,216.105270675,215.889090106,
220 	215.672269193,215.454809735,215.23671353,215.017982376,214.798618071,
221 	214.578622412,214.357997196,214.136744219,213.914865275,213.692362159,
222 	213.469236664,213.245490582,213.021125704,212.796143819,212.570546714,
223 	212.344336178,212.117513994,211.890081946,211.662041815,211.433395383,
224 	211.204144425,210.97429072,210.74383604,210.512782158,210.281130844,
225 	210.048883865,209.816042987,209.582609974,209.348586585,209.113974579,
226 	208.878775712,208.642991738,208.406624407,208.169675468,207.932146665,
227 	207.694039743,207.455356441,207.216098496,206.976267643,206.735865613,
228 	206.494894135,206.253354936,206.011249738,205.76858026,205.52534822,
229 	205.281555332,205.037203306,204.792293851,204.54682867,204.300809466,
230 	204.054237936,203.807115776,203.559444679,203.311226332,203.062462422,
231 	202.813154631,202.563304638,202.312914121,202.06198475,201.810518197,
232 	201.558516128,201.305980206,201.05291209,200.799313438,200.545185904,
233 	200.290531137,200.035350786,199.779646493,199.5234199,199.266672645,
234 	199.009406363,198.751622683,198.493323236,198.234509646,197.975183536,
235 	197.715346523,197.455000226,197.194146256,196.932786223,196.670921736,
236 	196.408554398,196.145685811,195.882317572,195.618451279,195.354088524,
237 	195.089230896,194.823879985,194.558037374,194.291704646,194.024883381,
238 	193.757575156,193.489781546,193.221504124,192.952744459,192.68350412,
239 	192.413784672,192.143587679,191.872914702,191.601767301,191.330147033,
240 	191.058055454,190.785494118,190.512464577,190.238968382,189.965007082,
241 	189.690582224,189.415695355,189.14034802,188.864541763,188.588278126,
242 	188.311558653,188.034384883,187.756758358,187.478680617,187.200153199,
243 	186.921177645,186.641755492,186.36188828,186.081577548,185.800824834,
244 	185.519631679,185.237999622,184.955930205,184.673424969,184.390485457,
245 	184.107113213,183.823309782,183.539076713,183.254415552,182.969327853,
246 	182.683815168,182.397879052,182.111521065,181.824742767,181.537545724,
247 	181.249931504,180.961901678,180.673457823,180.384601519,180.095334351,
248 	179.805657909,179.515573788,179.225083588,178.934188917,178.642891387,
249 	178.351192617,178.059094236,177.766597877,177.473705181,177.1804178,
250 	176.886737393,176.592665628,176.298204182,176.003354745,175.708119016,
251 	175.412498704,175.116495531,174.820111234,174.523347558,174.226206264,
252 	173.92868913,173.630797944,173.332534512,173.033900658,172.734898219,
253 	172.435529055,172.13579504,171.835698069,171.53524006,171.234422948,
254 	170.933248694,170.631719279,170.32983671,170.027603019,169.725020263,
255 	169.422090529,169.118815931,168.815198611,168.511240746,168.206944541,
256 	167.902312237,167.597346111,167.292048474,166.986421676,166.680468107,
257 	166.374190197,166.06759042,165.760671293,165.453435381,165.145885296,
258 	164.8380237,164.529853307,164.221376886,163.912597261,163.603517315,
259 	163.294139991,162.984468296,162.674505303,162.36425415,162.05371805,
260 	161.742900285,161.431804217,161.120433284,160.808791007,160.496880994,
261 	160.184706939,159.872272629,159.559581944,159.246638866,158.933447477,
262 	158.620011964,158.306336627,157.992425878,157.678284247,157.363916386,
263 	157.049327076,156.734521226,156.419503883,156.104280235,155.788855613,
264 	155.473235502,155.15742554,154.841431529,154.525259436,154.2089154,
265 	153.89240574,153.575736958,153.258915746,152.941948993,152.624843791,
266 	152.307607442,151.990247462,151.672771591,151.3551878,151.037504296,
267 	150.719729528,150.4018722,150.083941272,149.765945972,149.4478958,
268 	149.129800541,148.811670267,148.493515348,148.17534646,147.857174591,
269 	147.539011052,147.220867482,146.90275586,146.584688509,146.266678104,
270 	145.948737684,145.630880657,145.313120806,144.995472301,144.677949704,
271 	144.360567975,144.043342481,143.726289002,143.409423738,143.092763314,
272 	142.776324787,142.46012565,142.144183838,141.828517734,141.513146167,
273 	141.198088421,140.883364237,140.56899381,140.254997798,139.941397314,
274 	139.628213931,139.31546968,139.003187046,138.691388964,138.380098818,
275 	138.069340432,137.759138065,137.449516402,137.140500548,136.832116012,
276 	136.524388701,136.217344903,135.911011273,135.605414819,135.300582882,
277 	134.99654312,134.693323486,134.390952204,134.089457749,133.788868823,
278 	133.489214324,133.190523322,132.89282503,132.596148773,132.300523955,
279 	132.005980028,131.712546456,131.420252683,131.129128093,130.839201977,
280 	130.550503492,130.263061625,129.97690515,129.692062595,129.408562198,
281 	129.126431866,128.845699141,128.566391153,128.288534586,128.012155639,
282 	127.737279983,127.463932729,127.19213839,126.921920841,126.653303293,
283 	126.386308253,126.120957494,125.857272028,125.595272075,125.334977038,
284 	125.076405477,124.819575089,124.564502686,124.311204176,124.059694549,
285 	123.809987864,123.562097233,123.316034816,123.071811813,122.829438459,
286 	122.588924021,122.3502768,122.113504129,121.878612383,121.645606978,
287 	121.414492385,121.185272137,120.957948844,120.732524201,120.508999009,
288 	120.287373188,120.067645798,119.849815055,119.633878355,119.419832294,
289 	119.207672691,118.997394612,118.788992394,118.582459671,118.377789395,
290 	118.174973871,117.974004772,117.774873176,117.577569586,117.382083958,
291 	117.188405731,116.996523847,116.806426787,116.618102586,116.431538869,
292 	116.246722869,116.063641457,115.882281163,115.702628206,115.524668508,
293 	115.348387726,115.173771271,115.000804328,114.82947188,114.659758727,
294 	114.491649506,114.325128711,114.160180708,113.996789759,113.834940032,
295 	113.674615621,113.515800563,113.358478849,113.20263444,113.048251282,
296 	112.895313317,112.743804495,112.593708787,112.445010196,112.297692766,
297 	112.151740591,112.007137828,111.863868702,111.721917517,111.581268659,
298 	111.441906608,111.303815943,111.166981347,111.031387613,110.897019652,
299 	110.763862493,110.63190129,110.501121329,110.371508026,110.243046933,
300 	110.115723745,109.989524294,109.864434561,109.740440669,109.617528892,
301 	109.495685656,109.374897534,109.255151254,109.1364337,109.018731905,
302 	108.902033061,108.786324515,108.671593767,108.557828476,108.445016453,
303 	108.333145667,108.222204241,108.112180452,108.003062732,107.894839664,
304 	107.787499986,107.681032587,107.575426505,107.470670928,107.366755194,
305 	107.263668787,107.161401337,107.059942619,106.959282552,106.859411195,
306 	106.760318751,106.661995559,106.564432098,106.467618982,106.37154696,
307 	106.276206914,106.181589858,106.087686935,105.994489418,105.901988705,
308 	105.81017632,105.719043911,105.628583246,105.538786217,105.44964483,
309 	105.361151211,105.273297602,105.186076356,105.09947994,105.013500931,
310 	104.928132016,104.843365988,104.759195746,104.675614294,104.592614738,
311 	104.510190286,104.428334244,104.347040018,104.266301109,104.186111115,
312 	104.106463726,104.027352725,103.948771984,103.870715468,103.793177227,
313 	103.716151398,103.639632204,103.563613952,103.48809103,103.41305791,
314 	103.33850914,103.26443935,103.190843246,103.117715611,103.045051301,
315 	102.972845249,102.901092457,102.829788,102.758927024,102.688504742,
316 	102.618516438,102.54895746,102.479823222,102.411109205,102.342810952,
317 	102.274924068,102.207444221,102.140367139,102.07368861,102.007404481,
318 	101.941510654,101.876003092,101.810877811,101.746130883,101.681758433,
319 	101.617756641,101.554121738,101.490850007,101.427937781,101.365381444,
320 	101.303177428,101.241322214,101.179812331,101.118644352,101.057814898,
321 	100.997320637,100.937158279,100.877324577,100.817816329,100.758630377,
322 	100.6997636,100.641212922,100.582975306,100.525047756,100.467427312,
323 	100.410111057,100.353096108,100.296379621,100.23995879,100.183830844,
324 	100.127993045,100.072442696,100.017177128,99.9621937113,99.9074898464,
325 	99.8530629679,99.7989105427,99.7450300696,99.6914190787,99.6380751312,
326 	99.5849958187,99.5321787628,99.4796216147,99.4273220547,99.3752777916,
327 	99.3234865625,99.2719461323,99.2206542933,99.1696088648,99.1188076924,
328 	99.0682486481,99.0179296296,98.9678485599,98.918003387,98.8683920837,
329 	98.8190126467,98.769863097,98.7209414788,98.6722458598,98.6237743302,
330 	98.5755250031,98.5274960135,98.4796855184,98.4320916962,98.3847127468,
331 	98.3375468908,98.2905923695,98.2438474444,98.1973103972,98.1509795293,
332 	98.1048531614,98.0589296337,98.013207305,97.9676845528,97.922359773,
333 	97.8772313798,97.8322978049,97.7875574979,97.7430089255,97.6986505718,
334 	97.6544809376,97.6104985402,97.5667019136,97.5230896077,97.4796601886,
335 	97.4364122381,97.3933443532,97.3504551465,97.3077432458,97.2652072933,
336 	97.2228459464,97.1806578767,97.1386417702,97.0967963268,97.0551202605,
337 	97.0136122989,96.9722711833,96.931095668,96.8900845209,96.8492365225,
338 	96.8085504664,96.7680251586,96.7276594179,96.687452075,96.6474019731,
339 	96.6075079673,96.5677689244,96.528183723,96.4887512533,96.4494704166,
340 	96.4103401258,96.3713593045,96.3325268876,96.2938418206,96.2553030595,
341 	96.2169095712,96.1786603327,96.1405543314,96.1025905648,96.0647680402,
342 	96.0270857751,95.9895427965,95.9521381411,95.9148708551,95.8777399941,
343 	95.840744623,95.8038838156,95.767156655,95.7305622332,95.6940996508,
344 	95.6577680174,95.621566451,95.5854940781,95.5495500336,95.5137334607,
345 	95.4780435108,95.4424793434,95.4070401257,95.3717250333,95.3365332491,
346 	95.3014639639,95.2665163763,95.231689692,95.1969831244,95.1623958942,
347 	95.1279272293,95.0935763647,95.0593425426,95.0252250121,94.9912230293,
348 	94.957335857,94.9235627648,94.889903029,94.8563559325,94.8229207646,
349 	94.7895968211,94.7563834042,94.7232798225,94.6902853904,94.6573994289,
350 	94.6246212649,94.5919502312,94.5593856666,94.5269269159,94.4945733296,
351 	94.4623242638,94.4301790804,94.398137147,94.3661978366,94.3343605276,
352 	94.3026246041,94.2709894553,94.2394544758,94.2080190654,94.1766826291,
353 	94.145444577,94.1143043243,94.0832612913,94.052314903,94.0214645895,
354 	93.9907097857,93.9600499313,93.9294844707,93.899012853,93.8686345319,
355 	93.8383489659,93.8081556177,93.7780539548,93.7480434489,93.7181235762,
356 	93.6882938173,93.658553657,93.6289025843,93.5993400927,93.5698656795,
357 	93.5404788464,93.5111790989,93.4819659468,93.4528389037,93.4237974873,
358 	93.3948412191,93.3659696245,93.3371822327,93.3084785767,93.2798581933,
359 	93.2513206229,93.2228654096,93.1944921013,93.1662002492,93.1379894083,
360 	93.109859137,93.0818089971,93.0538385542,93.0259473769,92.9981350374,
361 	92.9704011112,92.9427451771,92.9151668171,92.8876656167,92.8602411644,
362 	92.8328930518,92.8056208739,92.7784242286,92.7513027171,92.7242559433,
363 	92.6972835146,92.670385041,92.6435601356,92.6168084145,92.5901294966,
364 	92.5635230038,92.5369885607,92.5105257949,92.4841343366,92.4578138189,
365 	92.4315638777,92.4053841514,92.3792742812,92.353233911,92.3272626873,
366 	92.3013602592,92.2755262785,92.2497603994,92.2240622787,92.1984315757,
367 	92.1728679522,92.1473710724,92.1219406032,92.0965762136,92.0712775751,
368 	92.0460443617,92.0208762495,91.9957729173,91.9707340457,91.9457593182,
369 	91.9208484199,91.8960010388,91.8712168645,91.8464955894,91.8218369075,
370 	91.7972405155,91.7727061118,91.7482333973,91.7238220746,91.6994718488,
371 	91.6751824268,91.6509535176,91.6267848322,91.6026760837,91.5786269871,
372 	91.5546372594,91.5307066197,91.5068347888,91.4830214895,91.4592664466,
373 	91.4355693866,91.4119300382,91.3883481315,91.3648233988,91.3413555741,
374 	91.3179443931,91.2945895935,91.2712909146,91.2480480975,91.224860885,
375 	91.2017290219,91.1786522542,91.1556303301,91.1326629992,91.1097500128,
376 	91.086891124,91.0640860873,91.041334659,91.0186365969,90.9959916605,
377 	90.9733996109,90.9508602106,90.9283732238,90.9059384162,90.883555555,
378 	90.8612244091,90.8389447485,90.8167163451,90.7945389721,90.7724124041,
379 	90.7503364174,90.7283107894,90.7063352991,90.6844097271,90.6625338551,
380 	90.6407074663,90.6189303453,90.5972022781,90.5755230521,90.5538924558,
381 	90.5323102793,90.510776314,90.4892903525,90.4678521887,90.4464616179,
382 	90.4251184365,90.4038224425,90.3825734349,90.3613712139,90.3402155812,
383 	90.3191063395,90.2980432928,90.2770262463,90.2560550065,90.2351293809,
384 	90.2142491783,90.1934142087,90.1726242833,90.1518792142,90.131178815,
385 	90.1105229001,90.0899112853,90.0693437874,90.0488202242,90.0283404148,
386 	90.0079041793,89.9875113389,89.9671617157,89.9468551333,89.9265914158,
387 	89.9063703888,89.8861918787,89.866055713,89.8459617203,89.82590973,
388 	89.8058995729,89.7859310803,89.7660040849,89.7461184202,89.7262739206,
389 	89.7064704218,89.68670776,89.6669857728,89.6473042984,89.6276631762,
390 	89.6080622464,89.5885013501,89.5689803294,89.5494990274,89.5300572878,
391 	89.5106549554,89.491291876,89.4719678961,89.4526828632,89.4334366256,
392 	89.4142290324,89.3950599338,89.3759291805,89.3568366244,89.3377821181,
393 	89.3187655149,89.2997866691,89.2808454357,89.2619416708,89.2430752308,
394 	89.2242459734,89.2054537569,89.1866984403,89.1679798835,89.1492979471,
395 	89.1306524926,89.1120433823,89.0934704789,89.0749336464,89.056432749,
396 	89.0379676522,89.0195382218,89.0011443245,88.9827858277,88.9644625997,
397 	88.9461745092,88.927921426,88.9097032202,88.8915197629,88.8733709258,
398 	88.8552565813,88.8371766024,88.8191308631,88.8011192377,88.7831416014,
399 	88.7651978299,88.7472877998,88.7294113881,88.7115684728,88.6937589321,
400 	88.6759826453,88.658239492,88.6405293526,88.6228521081,88.6052076402,
401 	88.5875958312,88.5700165638,88.5524697217,88.5349551889,88.5174728501,
402 	88.5000225908,88.4826042968,88.4652178545,88.4478631513,88.4305400746,
403 	88.413248513,88.3959883551,88.3787594905,88.3615618091,88.3443952016,
404 	88.3272595591,88.3101547733,88.2930807364,88.2760373414,88.2590244815,
405 	88.2420420507,88.2250899434,88.2081680546,88.1912762799,88.1744145152,
406 	88.1575826573,88.1407806031,88.1240082504,88.1072654973,88.0905522424,
407 	88.0738683849,88.0572138245,88.0405884613,88.0239921962,88.0074249301,
408 	87.9908865649,87.9743770026,87.9578961459,87.941443898,87.9250201625,
409 	87.9086248434,87.8922578454,87.8759190734,87.859608433,87.8433258301,
410 	87.8270711713,87.8108443633,87.7946453135,87.7784739298,87.7623301204,
411 	87.746213794,87.7301248597,87.7140632271,87.6980288064,87.6820215078,
412 	87.6660412424,87.6500879215,87.6341614567,87.6182617604,87.6023887451,
413 	87.5865423238,87.57072241,87.5549289176,87.5391617608,87.5234208543,
414 	87.5077061131,87.4920174528,87.4763547894,87.4607180389,87.4451071183,
415 	87.4295219444,87.4139624349,87.3984285076,87.3829200807,87.3674370729,
416 	87.3519794032,87.3365469909,87.321139756,87.3057576185,87.2904004989,
417 	87.2750683183,87.2597609977,87.2444784589,87.2292206238,87.2139874149,
418 	87.1987787547,87.1835945665,87.1684347736,87.1532992998,87.1381880693,
419 	87.1231010065,87.1080380363,87.0929990838,87.0779840746,87.0629929344,
420 	87.0480255896,87.0330819666,87.0181619923,87.0032655939,86.988392699,
421 	86.9735432353,86.9587171311,86.9439143149,86.9291347155,86.914378262,
422 	86.899644884,86.8849345112,86.8702470737,86.855582502,86.8409407267,
423 	86.8263216789,86.81172529,86.7971514915,86.7826002155,86.7680713942,
424 	86.7535649602,86.7390808462,86.7246189855,86.7101793115,86.695761758,
425 	86.681366259,86.6669927487,86.6526411619,86.6383114334,86.6240034983,
426 	86.6097172923,86.5954527509,86.5812098103,86.5669884067,86.5527884768,
427 	86.5386099573,86.5244527855,86.5103168987,86.4962022346,86.4821087312,
428 	86.4680363266,86.4539849594,86.4399545682,86.4259450922,86.4119564705,
429 	86.3979886428,86.3840415487,86.3701151284,86.356209322,86.3423240703,
430 	86.328459314,86.3146149941,86.3007910521,86.2869874293,86.2732040677,
431 	86.2594409093,86.2456978963,86.2319749714,86.2182720773,86.204589157,
432 	86.1909261539,86.1772830113,86.1636596731,86.1500560831,86.1364721857,
433 	86.1229079253,86.1093632464,86.0958380941,86.0823324135,86.0688461498,
434 	86.0553792488,86.0419316561,86.0285033179,86.0150941804,86.0017041901,
435 	85.9883332936,85.9749814379,85.9616485701,85.9483346376,85.935039588,
436 	85.9217633689,85.9085059285,85.8952672149,85.8820471765,85.868845762,
437 	85.8556629201,85.8424986001,85.829352751,85.8162253223,85.8031162638,
438 	85.7900255253,85.7769530568,85.7638988086,85.7508627312,85.7378447752,
439 	85.7248448915,85.7118630312,85.6988991455,85.6859531858,85.6730251039,
440 	85.6601148515,85.6472223807,85.6343476437,85.6214905929,85.608651181,
441 	85.5958293606,85.5830250847,85.5702383066,85.5574689796,85.5447170572,
442 	85.531982493,85.5192652411,85.5065652554,85.4938824903,85.4812169001,
443 	85.4685684394,85.4559370631,85.4433227262,85.4307253837,85.4181449909,
444 	85.4055815034,85.3930348768,85.380505067,85.36799203,85.3554957218,
445 	85.3430160989,85.3305531178,85.3181067352,85.3056769079,85.2932635929,
446 	85.2808667474,85.2684863287,85.2561222943,85.243774602,85.2314432095,
447 	85.2191280748,85.2068291561,85.1945464117,85.1822798,85.1700292797,
448 	85.1577948095,85.1455763484,85.1333738555,85.1211872901,85.1090166115,
449 	85.0968617793,85.0847227531,85.0725994929,85.0604919587,85.0484001106,
450 	85.036323909,85.0242633142,85.0122182869,85.0001887879,84.988174778,
451 	84.9761762183,84.96419307,84.9522252944,84.940272853,84.9283357074,
452 	84.9164138193,84.9045071507,84.8926156637,84.8807393203,84.8688780829,
453 	84.8570319141,84.8452007763,84.8333846323,84.821583445,84.8097971775,
454 	84.7980257927,84.7862692541,84.7745275251,84.7628005691,84.7510883499,
455 	84.7393908313,84.7277079772,84.7160397517,84.704386119,84.6927470434,
456 	84.6811224894,84.6695124216,84.6579168048,84.6463356037,84.6347687833,
457 	84.6232163088,84.6116781453,84.6001542582,84.588644613,84.5771491752,
458 	84.5656679107,84.5542007852,84.5427477647,84.5313088153,84.5198839031,
459 	84.5084729946,84.4970760562,84.4856930544,84.4743239558,84.4629687275,
460 	84.4516273361,84.4402997488,84.4289859327,84.4176858551,84.4063994834,
461 	84.395126785,84.3838677277,84.372622279,84.3613904068,84.3501720791,
462 	84.338967264,84.3277759297,84.3165980443,84.3054335763,84.2942824943,
463 	84.2831447667,84.2720203625,84.2609092503,84.2498113991,84.238726778,
464 	84.2276553561,84.2165971027,84.2055519872,84.194519979,84.1835010476,
465 	84.1724951629,84.1615022946,84.1505224125,84.1395554866,84.1286014871,
466 	84.1176603842,84.1067321481,84.0958167492,84.0849141581,84.0740243453,
467 	84.0631472816,84.0522829378,84.0414312847,84.0305922934,84.0197659349,
468 	84.0089521804,83.9981510014,83.987362369,83.9765862548,83.9658226305,
469 	83.9550714676,83.944332738,83.9336064135,83.922892466,83.9121908677,
470 	83.9015015907,83.8908246072,83.8801598895,83.8695074102,83.8588671416,
471 	83.8482390564,83.8376231274,83.8270193272,83.8164276289,83.8058480053,
472 	83.7952804295,83.7847248747,83.774181314,83.763649721,83.7531300688,
473 	83.7426223311,83.7321264815,83.7216424936,83.7111703411,83.700709998,
474 	83.6902614382,83.6798246356,83.6693995644,83.6589861988,83.648584513,
475 	83.6381944814,83.6278160785,83.6174492788,83.6070940568,83.5967503873,
476 	83.586418245,83.5760976048,83.5657884417,83.5554907305,83.5452044465,
477 	83.5349295648,83.5246660606,83.5144139094,83.5041730864,83.4939435673,
478 	83.4837253275,83.4735183427,83.4633225887,83.4531380413,83.4429646763,
479 	83.4328024696,83.4226513974,83.4125114358,83.4023825609,83.392264749,
480 	83.3821579764,83.3720622196,83.361977455,83.3519036592,83.3418408089,
481 	83.3317888807,83.3217478514,83.3117176979,83.3016983972,83.2916899262,
482 	83.281692262,83.2717053817,83.2617292627,83.251763882,83.2418092172,
483 	83.2318652457,83.2219319449,83.2120092924,83.2020972659,83.1921958431,
484 	83.1823050018,83.1724247198,83.162554975,83.1526957454,83.1428470091,
485 	83.1330087443,83.123180929,83.1133635416,83.1035565603,83.0937599636,
486 	83.08397373,83.0741978379,83.064432266,83.0546769929,83.0449319973,
487 	83.035197258,83.0254727539,83.0157584639,83.006054367,82.9963604422,
488 	82.9866766686,82.9770030254,82.9673394918,82.9576860472,82.9480426709,
489 	82.9384093423,82.9287860409,82.9191727463,82.9095694381,82.8999760959,
490 	82.8903926995,82.8808192286,82.8712556633,82.8617019832,82.8521581685,
491 	82.8426241992,82.8331000553,82.8235857171,82.8140811647,82.8045863785,
492 	82.7951013386,82.7856260257,82.77616042,82.7667045022,82.7572582527,
493 	82.7478216522,82.7383946815,82.7289773211,82.719569552,82.710171355,
494 	82.700782711,82.6914036009,82.6820340059,82.6726739069,82.6633232851,
495 	82.6539821217,82.644650398,82.6353280953,82.6260151948,82.6167116781,
496 	82.6074175266,82.5981327217,82.5888572452,82.5795910786,82.5703342036,
497 	82.5610866019,82.5518482554,82.5426191458,82.5333992551,82.5241885652,
498 	82.5149870582,82.505794716,82.4966115208,82.4874374547,82.4782724999,
499 	82.4691166388,82.4599698535,82.4508321266,82.4417034403,82.4325837772,
500 	82.4234731197,82.4143714505,82.4052787521,82.3961950073,82.3871201986,
501 	82.378054309,82.3689973211,82.3599492179,82.3509099823,82.3418795973,
502 	82.3328580457,82.3238453108,82.3148413756,82.3058462233,82.296859837,
503 	82.2878822
504 	}
505 };
506 
507 class Dsp: public PluginLV2 {
508 private:
509 	uint32_t fSamplingFreq;
510 	int 	iConst0;
511 	double 	fConst1;
512 	double 	fConst2;
513 	double 	fConst3;
514 	double 	fConst4;
515 	double 	fConst5;
516 	FAUSTFLOAT 	fslider0;
517 	FAUSTFLOAT	*fslider0_;
518 	double 	fRec0[2];
519 	double 	fConst6;
520 	double 	fConst7;
521 	double 	fConst8;
522 	double 	fConst9;
523 	FAUSTFLOAT 	fslider1;
524 	FAUSTFLOAT	*fslider1_;
525 	double 	fRec1[2];
526 	double 	fConst10;
527 	double 	fConst11;
528 	double 	fConst12;
529 	double 	fConst13;
530 	double 	fConst14;
531 	double 	fConst15;
532 	double 	fConst16;
533 	double 	fConst17;
534 	double 	fConst18;
535 	double 	fConst19;
536 	double 	fConst20;
537 	double 	fConst21;
538 	double 	fConst22;
539 	double 	fConst23;
540 	double 	fConst24;
541 	double 	fConst25;
542 	FAUSTFLOAT 	fslider2;
543 	FAUSTFLOAT	*fslider2_;
544 	double 	fRec2[2];
545 	double 	fConst26;
546 	double 	fConst27;
547 	double 	fConst28;
548 	double 	fConst29;
549 	double 	fConst30;
550 	double 	fConst31;
551 	double 	fConst32;
552 	double 	fConst33;
553 	double 	fConst34;
554 	double 	fConst35;
555 	double 	fConst36;
556 	double 	fConst37;
557 	double 	fConst38;
558 	double 	fConst39;
559 	double 	fConst40;
560 	double 	fConst41;
561 	double 	fConst42;
562 	double 	fConst43;
563 	double 	fConst44;
564 	double 	fConst45;
565 	double 	fConst46;
566 	double 	fConst47;
567 	double 	fConst48;
568 	double 	fConst49;
569 	double 	fConst50;
570 	double 	fConst51;
571 	double 	fConst52;
572 	double 	fConst53;
573 	double 	fConst54;
574 	double 	fConst55;
575 	double 	fConst56;
576 	double 	fConst57;
577 	double 	fConst58;
578 	double 	fConst59;
579 	double 	fConst60;
580 	double 	fConst61;
581 	double 	fConst62;
582 	double 	fConst63;
583 	double 	fConst64;
584 	double 	fConst65;
585 	double 	fConst66;
586 	double 	fConst67;
587 	double 	fConst68;
588 	double 	fConst69;
589 	double 	fConst70;
590 	double 	fConst71;
591 	double 	fConst72;
592 	double 	fConst73;
593 	double 	fConst74;
594 	double 	fConst75;
595 	double 	fConst76;
596 	double 	fConst77;
597 	double 	fConst78;
598 	double 	fConst79;
599 	double 	fConst80;
600 	double 	fConst81;
601 	double 	fConst82;
602 	double 	fConst83;
603 	double 	fConst84;
604 	double 	fConst85;
605 	double 	fConst86;
606 	double 	fConst87;
607 	double 	fConst88;
608 	double 	fConst89;
609 	double 	fConst90;
610 	double 	fConst91;
611 	double 	fConst92;
612 	double 	fConst93;
613 	double 	fConst94;
614 	double 	fConst95;
615 	double 	fConst96;
616 	double 	fConst97;
617 	double 	fConst98;
618 	double 	fConst99;
619 	double 	fConst100;
620 	double 	fConst101;
621 	double 	fConst102;
622 	double 	fConst103;
623 	double 	fConst104;
624 	double 	fConst105;
625 	double 	fConst106;
626 	double 	fConst107;
627 	double 	fConst108;
628 	double 	fConst109;
629 	double 	fConst110;
630 	double 	fConst111;
631 	double 	fConst112;
632 	double 	fConst113;
633 	double 	fConst114;
634 	double 	fConst115;
635 	double 	fConst116;
636 	double 	fConst117;
637 	double 	fConst118;
638 	double 	fConst119;
639 	double 	fConst120;
640 	double 	fConst121;
641 	double 	fConst122;
642 	double 	fConst123;
643 	double 	fConst124;
644 	double 	fConst125;
645 	double 	fConst126;
646 	double 	fConst127;
647 	double 	fConst128;
648 	double 	fConst129;
649 	double 	fConst130;
650 	double 	fConst131;
651 	double 	fConst132;
652 	double 	fConst133;
653 	double 	fConst134;
654 	double 	fConst135;
655 	double 	fConst136;
656 	double 	fConst137;
657 	double 	fConst138;
658 	double 	fConst139;
659 	double 	fConst140;
660 	double 	fConst141;
661 	double 	fConst142;
662 	double 	fConst143;
663 	double 	fConst144;
664 	double 	fConst145;
665 	double 	fConst146;
666 	double 	fConst147;
667 	double 	fConst148;
668 	double 	fConst149;
669 	double 	fConst150;
670 	double 	fConst151;
671 	double 	fConst152;
672 	double 	fConst153;
673 	double 	fConst154;
674 	double 	fConst155;
675 	double 	fConst156;
676 	double 	fConst157;
677 	double 	fConst158;
678 	double 	fConst159;
679 	double 	fConst160;
680 	FAUSTFLOAT 	fslider3;
681 	FAUSTFLOAT	*fslider3_;
682 	double 	fRec10[2];
683 	double 	fConst161;
684 	double 	fConst162;
685 	double 	fConst163;
686 	double 	fConst164;
687 	double 	fConst165;
688 	double 	fConst166;
689 	double 	fConst167;
690 	double 	fConst168;
691 	double 	fConst169;
692 	double 	fConst170;
693 	double 	fConst171;
694 	double 	fConst172;
695 	double 	fConst173;
696 	double 	fConst174;
697 	double 	fConst175;
698 	double 	fConst176;
699 	double 	fConst177;
700 	double 	fConst178;
701 	double 	fConst179;
702 	double 	fConst180;
703 	double 	fConst181;
704 	double 	fConst182;
705 	double 	fRec11[5];
706 	double 	fConst183;
707 	double 	fConst184;
708 	double 	fConst185;
709 	double 	fConst186;
710 	double 	fConst187;
711 	double 	fConst188;
712 	double 	fConst189;
713 	double 	fConst190;
714 	double 	fConst191;
715 	double 	fConst192;
716 	double 	fVec0[2];
717 	double 	fRec9[2];
718 	double 	fRec8[3];
719 	double 	fConst193;
720 	double 	fConst194;
721 	double 	fConst195;
722 	double 	fConst196;
723 	double 	fRec12[2];
724 	double 	fRec7[3];
725 	double 	fConst197;
726 	double 	fConst198;
727 	double 	fConst199;
728 	double 	fConst200;
729 	double 	fConst201;
730 	double 	fRec6[2];
731 	double 	fRec5[2];
732 	double 	fConst202;
733 	double 	fConst203;
734 	double 	fConst204;
735 	double 	fConst205;
736 	double 	fRec4[5];
737 	double 	fConst206;
738 	double 	fConst207;
739 	double 	fConst208;
740 	double 	fConst209;
741 	double 	fConst210;
742 	double 	fConst211;
743 	double 	fRec3[8];
744 	double 	fConst212;
745 	double 	fConst213;
746 	double 	fConst214;
747 	double 	fConst215;
748 	double 	fConst216;
749 	double 	fConst217;
750 	double 	fConst218;
751 	double 	fConst219;
752 	double 	fConst220;
753 	double 	fConst221;
754 	double 	fConst222;
755 	double 	fConst223;
756 	double 	fConst224;
757 	double 	fConst225;
758 	double 	fConst226;
759 	double 	fConst227;
760 	double 	fConst228;
761 	double 	fConst229;
762 	double 	fConst230;
763 	double 	fConst231;
764 	double 	fConst232;
765 	double 	fConst233;
766 	double 	fConst234;
767 	double 	fConst235;
768 	double 	fConst236;
769 	double 	fConst237;
770 	double 	fConst238;
771 	double 	fConst239;
772 	double 	fConst240;
773 	double 	fConst241;
774 	double 	fConst242;
775 	double 	fConst243;
776 	double 	fConst244;
777 	double 	fConst245;
778 	double 	fConst246;
779 	double 	fConst247;
780 	void connect(uint32_t port,void* data);
781 	void clear_state_f();
782 	void init(uint32_t samplingFreq);
783 	void compute(int count, FAUSTFLOAT *input0, FAUSTFLOAT *output0);
784 
785 	static void clear_state_f_static(PluginLV2*);
786 	static void init_static(uint32_t samplingFreq, PluginLV2*);
787 	static double nonlin(double x);
788 	static double Ftube(double Vgk);
789 	static void compute_static(int count, FAUSTFLOAT *input0, FAUSTFLOAT *output0, PluginLV2*);
790 	static void del_instance(PluginLV2 *p);
791 	static void connect_static(uint32_t port,void* data, PluginLV2 *p);
792 public:
793 	Dsp();
794 	~Dsp();
795 };
796 
797 
798 
Dsp()799 Dsp::Dsp()
800 	: PluginLV2() {
801 	version = PLUGINLV2_VERSION;
802 	id = "bottlerocket";
803 	name = N_("bottlerocket");
804 	mono_audio = compute_static;
805 	stereo_audio = 0;
806 	set_samplerate = init_static;
807 	activate_plugin = 0;
808 	connect_ports = connect_static;
809 	clear_state = clear_state_f_static;
810 	delete_instance = del_instance;
811 }
812 
~Dsp()813 Dsp::~Dsp() {
814 }
815 
clear_state_f()816 inline void Dsp::clear_state_f()
817 {
818 	for (int i=0; i<2; i++) fRec0[i] = 0;
819 	for (int i=0; i<2; i++) fRec1[i] = 0;
820 	for (int i=0; i<2; i++) fRec2[i] = 0;
821 	for (int i=0; i<2; i++) fRec10[i] = 0;
822 	for (int i=0; i<5; i++) fRec11[i] = 0;
823 	for (int i=0; i<2; i++) fVec0[i] = 0;
824 	for (int i=0; i<2; i++) fRec9[i] = 0;
825 	for (int i=0; i<3; i++) fRec8[i] = 0;
826 	for (int i=0; i<2; i++) fRec12[i] = 0;
827 	for (int i=0; i<3; i++) fRec7[i] = 0;
828 	for (int i=0; i<2; i++) fRec6[i] = 0;
829 	for (int i=0; i<2; i++) fRec5[i] = 0;
830 	for (int i=0; i<5; i++) fRec4[i] = 0;
831 	for (int i=0; i<8; i++) fRec3[i] = 0;
832 }
833 
clear_state_f_static(PluginLV2 * p)834 void Dsp::clear_state_f_static(PluginLV2 *p)
835 {
836 	static_cast<Dsp*>(p)->clear_state_f();
837 }
838 
init(uint32_t samplingFreq)839 inline void Dsp::init(uint32_t samplingFreq)
840 {
841 	fSamplingFreq = samplingFreq;
842 	iConst0 = min(192000, max(1, fSamplingFreq));
843 	fConst1 = double(iConst0);
844 	fConst2 = (2.56019261426976e-33 * fConst1);
845 	fConst3 = (1.08602356418274e-10 + (fConst1 * (3.69623160331409e-12 + (fConst1 * (6.1392600422157e-15 + (fConst1 * (1.31841039116102e-18 + (fConst1 * (8.74614985810583e-23 + (fConst1 * (1.5403121926334e-27 + fConst2)))))))))));
846 	fConst4 = (7.7581594371811e-34 * fConst1);
847 	fConst5 = (5.91025091384317e-13 + (fConst1 * (1.03383282720476e-15 + (fConst1 * (2.80284580289236e-19 + (fConst1 * (2.37458693671756e-23 + (fConst1 * (4.62059355684558e-28 + fConst4)))))))));
848 	fConst6 = (2.1334938452248e-32 * fConst1);
849 	fConst7 = (fConst1 * ((fConst1 * ((fConst1 * ((fConst1 * (0 - (2.40179103814603e-27 + fConst6))) - 3.56709268829075e-23)) - 5.77265406286601e-20)) - 1.75095359671183e-18));
850 	fConst8 = (2.05591225085299e-32 * fConst1);
851 	fConst9 = (1.40076287736946e-14 + (fConst1 * (4.63493240482125e-16 + (fConst1 * (3.40990806209747e-19 + (fConst1 * (5.3587860586933e-23 + (fConst1 * (2.4851302908953e-27 + fConst8)))))))));
852 	fConst10 = (7.04052968924185e-32 * fConst1);
853 	fConst11 = ((fConst1 * ((fConst1 * ((fConst1 * ((fConst1 * (0 - (8.35260919492685e-27 + fConst10))) - 1.61870799757925e-22)) - 5.37755564226007e-19)) - 1.91244772177744e-16)) - 5.4041777676291e-15);
854 	fConst12 = (6.78451042781488e-32 * fConst1);
855 	fConst13 = (1.53514618807888e-12 + (fConst1 * (4.48627502640417e-15 + (fConst1 * (1.81314904250947e-18 + (fConst1 * (2.22804523480507e-22 + (fConst1 * (8.61211241012509e-27 + fConst12)))))))));
856 	fConst14 = (4.09282492757411e-35 * fConst1);
857 	fConst15 = (6.80590561498075e-12 + (fConst1 * (6.98662516211683e-14 + (fConst1 * (1.01748278788345e-16 + (fConst1 * (2.14291243948384e-20 + (fConst1 * (1.40869417800782e-24 + (fConst1 * (2.46886975641615e-29 + fConst14)))))))))));
858 	fConst16 = (3.41068743964509e-34 * fConst1);
859 	fConst17 = (fConst1 * ((fConst1 * ((fConst1 * ((fConst1 * (0 - (3.84184182096519e-29 + fConst16))) - 5.7277490204579e-25)) - 9.60278075049996e-22)) - 8.75476798355914e-20));
860 	fConst18 = (3.28666244183982e-34 * fConst1);
861 	fConst19 = (6.98630485088019e-16 + (fConst1 * (7.71554764680033e-18 + (fConst1 * (5.47608983953722e-21 + (fConst1 * (8.57175765008426e-25 + (fConst1 * (3.9731118716408e-29 + fConst18)))))))));
862 	fConst20 = (1.24024997805276e-35 * fConst1);
863 	fConst21 = (8.80837742701402e-13 + (fConst1 * (1.10009619872997e-14 + (fConst1 * (1.72270053398535e-17 + (fConst1 * (4.57007197290703e-21 + (fConst1 * (3.82673951875399e-25 + (fConst1 * (7.40625683895483e-30 + fConst20)))))))))));
864 	fConst22 = (1.12552685508288e-33 * fConst1);
865 	fConst23 = (fConst1 * ((fConst1 * ((fConst1 * ((fConst1 * ((fConst1 * (0 - (1.33602154971142e-28 + fConst22))) - 2.59651304204151e-24)) - 8.76674872141931e-21)) - 3.6176430644952e-18)) - 2.70208888381455e-16));
866 	fConst24 = (1.08459860580714e-33 * fConst1);
867 	fConst25 = (2.15626692928401e-12 + (fConst1 * (2.90309169877006e-14 + (fConst1 * (7.31452260559375e-17 + (fConst1 * (2.90772719847952e-20 + (fConst1 * (3.56354489991342e-24 + (fConst1 * (1.37686016647826e-28 + fConst24)))))))))));
868 	fConst26 = (1.38174017162741e-21 * fConst1);
869 	fConst27 = faustpower<2>(fConst1);
870 	fConst28 = (fConst27 * (fConst26 - 1.01598542031427e-18));
871 	fConst29 = (1.93443624027837e-22 * fConst1);
872 	fConst30 = ((fConst1 * (2.16534594793363e-15 + (fConst1 * (fConst29 - 1.48381946931304e-18)))) - 8.66830113927708e-13);
873 	fConst31 = (8.64322575443528e-20 * fConst1);
874 	fConst32 = ((fConst1 * (6.64930032529084e-17 - fConst31)) - 2.16167110705164e-15);
875 	fConst33 = (1.21005160562094e-20 * fConst1);
876 	fConst34 = ((fConst1 * (7.81608392203304e-17 - fConst33)) - 5.09289712821366e-14);
877 	fConst35 = (1.08602356418274e-10 + (fConst1 * ((fConst1 * (6.1392600422157e-15 + (fConst1 * ((fConst1 * (8.74614985810583e-23 + (fConst1 * (fConst2 - 1.5403121926334e-27)))) - 1.31841039116102e-18)))) - 3.69623160331409e-12)));
878 	fConst36 = ((fConst1 * (1.03383282720476e-15 + (fConst1 * ((fConst1 * (2.37458693671756e-23 + (fConst1 * (fConst4 - 4.62059355684558e-28)))) - 2.80284580289236e-19)))) - 5.91025091384317e-13);
879 	fConst37 = (fConst1 * ((fConst1 * (5.77265406286601e-20 + (fConst1 * ((fConst1 * (2.40179103814603e-27 - fConst6)) - 3.56709268829075e-23)))) - 1.75095359671183e-18));
880 	fConst38 = ((fConst1 * (4.63493240482125e-16 + (fConst1 * ((fConst1 * (5.3587860586933e-23 + (fConst1 * (fConst8 - 2.4851302908953e-27)))) - 3.40990806209747e-19)))) - 1.40076287736946e-14);
881 	fConst39 = (5.4041777676291e-15 + (fConst1 * ((fConst1 * (5.37755564226007e-19 + (fConst1 * ((fConst1 * (8.35260919492685e-27 - fConst10)) - 1.61870799757925e-22)))) - 1.91244772177744e-16)));
882 	fConst40 = ((fConst1 * (4.48627502640417e-15 + (fConst1 * ((fConst1 * (2.22804523480507e-22 + (fConst1 * (fConst12 - 8.61211241012509e-27)))) - 1.81314904250947e-18)))) - 1.53514618807888e-12);
883 	fConst41 = ((fConst1 * (6.98662516211683e-14 + (fConst1 * ((fConst1 * (2.14291243948384e-20 + (fConst1 * ((fConst1 * (2.46886975641615e-29 - fConst14)) - 1.40869417800782e-24)))) - 1.01748278788345e-16)))) - 6.80590561498075e-12);
884 	fConst42 = (fConst1 * (8.75476798355914e-20 + (fConst1 * ((fConst1 * (5.7277490204579e-25 + (fConst1 * (fConst16 - 3.84184182096519e-29)))) - 9.60278075049996e-22))));
885 	fConst43 = (6.98630485088019e-16 + (fConst1 * ((fConst1 * (5.47608983953722e-21 + (fConst1 * ((fConst1 * (3.9731118716408e-29 - fConst18)) - 8.57175765008426e-25)))) - 7.71554764680033e-18)));
886 	fConst44 = ((fConst1 * (1.10009619872997e-14 + (fConst1 * ((fConst1 * (4.57007197290703e-21 + (fConst1 * ((fConst1 * (7.40625683895483e-30 - fConst20)) - 3.82673951875399e-25)))) - 1.72270053398535e-17)))) - 8.80837742701402e-13);
887 	fConst45 = (fConst1 * ((fConst1 * (3.6176430644952e-18 + (fConst1 * ((fConst1 * (2.59651304204151e-24 + (fConst1 * (fConst22 - 1.33602154971142e-28)))) - 8.76674872141931e-21)))) - 2.70208888381455e-16));
888 	fConst46 = ((fConst1 * (2.90309169877006e-14 + (fConst1 * ((fConst1 * (2.90772719847952e-20 + (fConst1 * ((fConst1 * (1.37686016647826e-28 - fConst24)) - 3.56354489991342e-24)))) - 7.31452260559375e-17)))) - 2.15626692928401e-12);
889 	fConst47 = (1.28009630713488e-32 * fConst1);
890 	fConst48 = (7.60216494927921e-10 + (fConst1 * ((fConst1 * (1.84177801266471e-14 + (fConst1 * ((fConst1 * ((fConst1 * (4.62093657790021e-27 - fConst47)) - 8.74614985810583e-23)) - 1.31841039116102e-18)))) - 1.84811580165704e-11)));
891 	fConst49 = (3.87907971859055e-33 * fConst1);
892 	fConst50 = ((fConst1 * (3.10149848161427e-15 + (fConst1 * ((fConst1 * ((fConst1 * (1.38617806705367e-27 - fConst49)) - 2.37458693671756e-23)) - 2.80284580289236e-19)))) - 2.95512545692159e-12);
893 	fConst51 = (1.0667469226124e-31 * fConst1);
894 	fConst52 = (fConst1 * ((fConst1 * (5.77265406286601e-20 + (fConst1 * (3.56709268829075e-23 + (fConst1 * (fConst51 - 7.20537311443808e-27)))))) - 5.25286079013548e-18));
895 	fConst53 = (1.0279561254265e-31 * fConst1);
896 	fConst54 = ((fConst1 * (1.39047972144637e-15 + (fConst1 * ((fConst1 * ((fConst1 * (7.4553908726859e-27 - fConst53)) - 5.3587860586933e-23)) - 3.40990806209747e-19)))) - 7.00381438684731e-14);
897 	fConst55 = (3.52026484462093e-31 * fConst1);
898 	fConst56 = (2.70208888381455e-14 + (fConst1 * ((fConst1 * (5.37755564226007e-19 + (fConst1 * (1.61870799757925e-22 + (fConst1 * (fConst55 - 2.50578275847805e-26)))))) - 5.73734316533233e-16)));
899 	fConst57 = (3.39225521390744e-31 * fConst1);
900 	fConst58 = ((fConst1 * (1.34588250792125e-14 + (fConst1 * ((fConst1 * ((fConst1 * (2.58363372303753e-26 - fConst57)) - 2.22804523480507e-22)) - 1.81314904250947e-18)))) - 7.67573094039439e-12);
901 	fConst59 = (2.86497744930188e-34 * fConst1);
902 	fConst60 = ((fConst1 * (2.09598754863505e-13 + (fConst1 * ((fConst1 * ((fConst1 * (4.22608253402345e-24 + (fConst1 * (fConst59 - 1.23443487820807e-28)))) - 2.14291243948384e-20)) - 1.01748278788345e-16)))) - 3.40295280749037e-11);
903 	fConst61 = (2.38748120775157e-33 * fConst1);
904 	fConst62 = (fConst1 * (8.75476798355914e-20 + (fConst1 * (9.60278075049996e-22 + (fConst1 * ((fConst1 * (1.9209209104826e-28 - fConst61)) - 1.71832470613737e-24))))));
905 	fConst63 = (2.30066370928787e-33 * fConst1);
906 	fConst64 = (2.09589145526406e-15 + (fConst1 * ((fConst1 * ((fConst1 * (2.57152729502528e-24 + (fConst1 * (fConst63 - 1.9865559358204e-28)))) - 5.47608983953722e-21)) - 7.71554764680033e-18)));
907 	fConst65 = (8.68174984636933e-35 * fConst1);
908 	fConst66 = ((fConst1 * (3.30028859618991e-14 + (fConst1 * ((fConst1 * ((fConst1 * (1.1480218556262e-24 + (fConst1 * (fConst65 - 3.70312841947741e-29)))) - 4.57007197290703e-21)) - 1.72270053398535e-17)))) - 4.40418871350701e-12);
909 	fConst67 = (7.87868798558017e-33 * fConst1);
910 	fConst68 = (fConst1 * ((fConst1 * (3.6176430644952e-18 + (fConst1 * (8.76674872141931e-21 + (fConst1 * ((fConst1 * (6.68010774855708e-28 - fConst67)) - 7.78953912612452e-24)))))) - 8.10626665144365e-16));
911 	fConst69 = (7.59219024064998e-33 * fConst1);
912 	fConst70 = ((fConst1 * (8.70927509631017e-14 + (fConst1 * ((fConst1 * ((fConst1 * (1.06906346997403e-23 + (fConst1 * (fConst69 - 6.88430083239131e-28)))) - 2.90772719847952e-20)) - 7.31452260559375e-17)))) - 1.07813346464201e-11);
913 	fConst71 = (2.30417335284279e-32 * fConst1);
914 	fConst72 = (2.28064948478376e-09 + (fConst1 * ((fConst1 * (6.1392600422157e-15 + (fConst1 * (3.95523117348307e-18 + (fConst1 * ((fConst1 * (fConst71 - 1.5403121926334e-27)) - 2.62384495743175e-22)))))) - 3.32660844298268e-11)));
915 	fConst73 = (6.982343493463e-33 * fConst1);
916 	fConst74 = ((fConst1 * (1.03383282720476e-15 + (fConst1 * (8.40853740867708e-19 + (fConst1 * ((fConst1 * (fConst73 - 4.62059355684558e-28)) - 7.12376081015269e-23)))))) - 5.31922582245886e-12);
917 	fConst75 = (1.92014446070232e-31 * fConst1);
918 	fConst76 = (fConst1 * ((fConst1 * ((fConst1 * (1.07012780648723e-22 + (fConst1 * (2.40179103814603e-27 - fConst75)))) - 1.7317962188598e-19)) - 1.75095359671183e-18));
919 	fConst77 = (1.85032102576769e-31 * fConst1);
920 	fConst78 = ((fConst1 * (4.63493240482125e-16 + (fConst1 * (1.02297241862924e-18 + (fConst1 * ((fConst1 * (fConst77 - 2.4851302908953e-27)) - 1.60763581760799e-22)))))) - 1.26068658963252e-13);
921 	fConst79 = (6.33647672031767e-31 * fConst1);
922 	fConst80 = (4.86375999086619e-14 + (fConst1 * ((fConst1 * ((fConst1 * (4.85612399273775e-22 + (fConst1 * (8.35260919492685e-27 - fConst79)))) - 1.61326669267802e-18)) - 1.91244772177744e-16)));
923 	fConst81 = (6.10605938503339e-31 * fConst1);
924 	fConst82 = ((fConst1 * (4.48627502640417e-15 + (fConst1 * (5.4394471275284e-18 + (fConst1 * ((fConst1 * (fConst81 - 8.61211241012509e-27)) - 6.6841357044152e-22)))))) - 1.38163156927099e-11);
925 	fConst83 = (8.59493234790564e-34 * fConst1);
926 	fConst84 = ((fConst1 * (6.98662516211683e-14 + (fConst1 * (3.05244836365035e-16 + (fConst1 * ((fConst1 * ((fConst1 * (2.22198278077453e-28 - fConst83)) - 1.40869417800782e-24)) - 6.42873731845153e-20)))))) - 6.12531505348267e-11);
927 	fConst85 = (7.1624436232547e-33 * fConst1);
928 	fConst86 = (fConst1 * ((fConst1 * (2.88083422514999e-21 + (fConst1 * (5.7277490204579e-25 + (fConst1 * (fConst85 - 3.45765763886867e-28)))))) - 2.62643039506774e-19));
929 	fConst87 = (6.90199112786362e-33 * fConst1);
930 	fConst88 = (6.98630485088019e-16 + (fConst1 * (2.3146642940401e-17 + (fConst1 * ((fConst1 * ((fConst1 * (3.57580068447672e-28 - fConst87)) - 8.57175765008426e-25)) - 1.64282695186117e-20)))));
931 	fConst89 = (2.6045249539108e-34 * fConst1);
932 	fConst90 = ((fConst1 * (1.10009619872997e-14 + (fConst1 * (5.16810160195606e-17 + (fConst1 * ((fConst1 * ((fConst1 * (6.66563115505934e-29 - fConst89)) - 3.82673951875399e-25)) - 1.37102159187211e-20)))))) - 7.92753968431262e-12);
933 	fConst91 = (2.36360639567405e-32 * fConst1);
934 	fConst92 = (fConst1 * ((fConst1 * ((fConst1 * (2.63002461642579e-20 + (fConst1 * (2.59651304204151e-24 + (fConst1 * (fConst91 - 1.20241939474027e-27)))))) - 1.08529291934856e-17)) - 2.70208888381455e-16));
935 	fConst93 = (2.27765707219499e-32 * fConst1);
936 	fConst94 = ((fConst1 * (2.90309169877006e-14 + (fConst1 * (2.19435678167812e-16 + (fConst1 * ((fConst1 * ((fConst1 * (1.23917414983044e-27 - fConst93)) - 3.56354489991342e-24)) - 8.72318159543856e-20)))))) - 1.94064023635561e-11);
937 	fConst95 = (3.8010824746396e-09 + (fConst1 * ((fConst1 * ((fConst1 * (3.95523117348307e-18 + (fConst1 * (2.62384495743175e-22 + (fConst1 * (0 - (7.70156096316702e-27 + fConst47))))))) - 3.06963002110785e-14)) - 1.84811580165704e-11)));
938 	fConst96 = ((fConst1 * ((fConst1 * (8.40853740867708e-19 + (fConst1 * (7.12376081015269e-23 + (fConst1 * (0 - (2.31029677842279e-27 + fConst49))))))) - 5.16916413602379e-15)) - 2.95512545692159e-12);
939 	fConst97 = (fConst1 * (8.75476798355914e-18 + (fConst1 * ((fConst1 * ((fConst1 * (1.20089551907301e-26 + fConst51)) - 1.07012780648723e-22)) - 1.7317962188598e-19))));
940 	fConst98 = ((fConst1 * ((fConst1 * (1.02297241862924e-18 + (fConst1 * (1.60763581760799e-22 + (fConst1 * (0 - (1.24256514544765e-26 + fConst53))))))) - 2.31746620241062e-15)) - 7.00381438684731e-14);
941 	fConst99 = (2.70208888381455e-14 + (fConst1 * (9.56223860888721e-16 + (fConst1 * ((fConst1 * ((fConst1 * (4.17630459746342e-26 + fConst55)) - 4.85612399273775e-22)) - 1.61326669267802e-18)))));
942 	fConst100 = ((fConst1 * ((fConst1 * (5.4394471275284e-18 + (fConst1 * (6.6841357044152e-22 + (fConst1 * (0 - (4.30605620506254e-26 + fConst57))))))) - 2.24313751320208e-14)) - 7.67573094039439e-12);
943 	fConst101 = (1.43248872465094e-33 * fConst1);
944 	fConst102 = ((fConst1 * ((fConst1 * (3.05244836365035e-16 + (fConst1 * (6.42873731845153e-20 + (fConst1 * ((fConst1 * (fConst101 - 1.23443487820807e-28)) - 7.04347089003909e-24)))))) - 3.49331258105841e-13)) - 3.40295280749037e-11);
945 	fConst103 = (1.19374060387578e-32 * fConst1);
946 	fConst104 = (fConst1 * ((fConst1 * ((fConst1 * (2.86387451022895e-24 + (fConst1 * (1.9209209104826e-28 - fConst103)))) - 2.88083422514999e-21)) - 2.62643039506774e-19));
947 	fConst105 = (1.15033185464394e-32 * fConst1);
948 	fConst106 = ((fConst1 * (2.3146642940401e-17 + (fConst1 * (1.64282695186117e-20 + (fConst1 * ((fConst1 * (fConst105 - 1.9865559358204e-28)) - 4.28587882504213e-24)))))) - 3.4931524254401e-15);
949 	fConst107 = (4.34087492318467e-34 * fConst1);
950 	fConst108 = ((fConst1 * ((fConst1 * (5.16810160195606e-17 + (fConst1 * (1.37102159187211e-20 + (fConst1 * ((fConst1 * (fConst107 - 3.70312841947741e-29)) - 1.913369759377e-24)))))) - 5.50048099364985e-14)) - 4.40418871350701e-12);
951 	fConst109 = (3.93934399279008e-32 * fConst1);
952 	fConst110 = (fConst1 * (1.35104444190727e-15 + (fConst1 * ((fConst1 * ((fConst1 * (1.29825652102075e-23 + (fConst1 * (6.68010774855708e-28 - fConst109)))) - 2.63002461642579e-20)) - 1.08529291934856e-17))));
953 	fConst111 = (3.79609512032499e-32 * fConst1);
954 	fConst112 = ((fConst1 * ((fConst1 * (2.19435678167812e-16 + (fConst1 * (8.72318159543856e-20 + (fConst1 * ((fConst1 * (fConst111 - 6.88430083239131e-28)) - 1.78177244995671e-23)))))) - 1.45154584938503e-13)) - 1.07813346464201e-11);
955 	fConst113 = (3.8010824746396e-09 + (fConst1 * (1.84811580165704e-11 + (fConst1 * ((fConst1 * ((fConst1 * (2.62384495743175e-22 + (fConst1 * (7.70156096316702e-27 - fConst47)))) - 3.95523117348307e-18)) - 3.06963002110785e-14)))));
956 	fConst114 = (2.95512545692159e-12 + (fConst1 * ((fConst1 * ((fConst1 * (7.12376081015269e-23 + (fConst1 * (2.31029677842279e-27 - fConst49)))) - 8.40853740867708e-19)) - 5.16916413602379e-15)));
957 	fConst115 = (fConst1 * (8.75476798355914e-18 + (fConst1 * (1.7317962188598e-19 + (fConst1 * ((fConst1 * (fConst51 - 1.20089551907301e-26)) - 1.07012780648723e-22))))));
958 	fConst116 = (7.00381438684731e-14 + (fConst1 * ((fConst1 * ((fConst1 * (1.60763581760799e-22 + (fConst1 * (1.24256514544765e-26 - fConst53)))) - 1.02297241862924e-18)) - 2.31746620241062e-15)));
959 	fConst117 = ((fConst1 * (9.56223860888721e-16 + (fConst1 * (1.61326669267802e-18 + (fConst1 * ((fConst1 * (fConst55 - 4.17630459746342e-26)) - 4.85612399273775e-22)))))) - 2.70208888381455e-14);
960 	fConst118 = (7.67573094039439e-12 + (fConst1 * ((fConst1 * ((fConst1 * (6.6841357044152e-22 + (fConst1 * (4.30605620506254e-26 - fConst57)))) - 5.4394471275284e-18)) - 2.24313751320208e-14)));
961 	fConst119 = (3.40295280749037e-11 + (fConst1 * ((fConst1 * ((fConst1 * (6.42873731845153e-20 + (fConst1 * (7.04347089003909e-24 + (fConst1 * (0 - (1.23443487820807e-28 + fConst101))))))) - 3.05244836365035e-16)) - 3.49331258105841e-13)));
962 	fConst120 = (fConst1 * (2.62643039506774e-19 + (fConst1 * ((fConst1 * ((fConst1 * (1.9209209104826e-28 + fConst103)) - 2.86387451022895e-24)) - 2.88083422514999e-21))));
963 	fConst121 = ((fConst1 * ((fConst1 * (1.64282695186117e-20 + (fConst1 * (4.28587882504213e-24 + (fConst1 * (0 - (1.9865559358204e-28 + fConst105))))))) - 2.3146642940401e-17)) - 3.4931524254401e-15);
964 	fConst122 = (4.40418871350701e-12 + (fConst1 * ((fConst1 * ((fConst1 * (1.37102159187211e-20 + (fConst1 * (1.913369759377e-24 + (fConst1 * (0 - (3.70312841947741e-29 + fConst107))))))) - 5.16810160195606e-17)) - 5.50048099364985e-14)));
965 	fConst123 = (fConst1 * (1.35104444190727e-15 + (fConst1 * (1.08529291934856e-17 + (fConst1 * ((fConst1 * ((fConst1 * (6.68010774855708e-28 + fConst109)) - 1.29825652102075e-23)) - 2.63002461642579e-20))))));
966 	fConst124 = (1.07813346464201e-11 + (fConst1 * ((fConst1 * ((fConst1 * (8.72318159543856e-20 + (fConst1 * (1.78177244995671e-23 + (fConst1 * (0 - (6.88430083239131e-28 + fConst111))))))) - 2.19435678167812e-16)) - 1.45154584938503e-13)));
967 	fConst125 = (2.28064948478376e-09 + (fConst1 * (3.32660844298268e-11 + (fConst1 * (6.1392600422157e-15 + (fConst1 * ((fConst1 * ((fConst1 * (1.5403121926334e-27 + fConst71)) - 2.62384495743175e-22)) - 3.95523117348307e-18)))))));
968 	fConst126 = (5.31922582245886e-12 + (fConst1 * (1.03383282720476e-15 + (fConst1 * ((fConst1 * ((fConst1 * (4.62059355684558e-28 + fConst73)) - 7.12376081015269e-23)) - 8.40853740867708e-19)))));
969 	fConst127 = (fConst1 * ((fConst1 * (1.7317962188598e-19 + (fConst1 * (1.07012780648723e-22 + (fConst1 * (0 - (2.40179103814603e-27 + fConst75))))))) - 1.75095359671183e-18));
970 	fConst128 = (1.26068658963252e-13 + (fConst1 * (4.63493240482125e-16 + (fConst1 * ((fConst1 * ((fConst1 * (2.4851302908953e-27 + fConst77)) - 1.60763581760799e-22)) - 1.02297241862924e-18)))));
971 	fConst129 = ((fConst1 * ((fConst1 * (1.61326669267802e-18 + (fConst1 * (4.85612399273775e-22 + (fConst1 * (0 - (8.35260919492685e-27 + fConst79))))))) - 1.91244772177744e-16)) - 4.86375999086619e-14);
972 	fConst130 = (1.38163156927099e-11 + (fConst1 * (4.48627502640417e-15 + (fConst1 * ((fConst1 * ((fConst1 * (8.61211241012509e-27 + fConst81)) - 6.6841357044152e-22)) - 5.4394471275284e-18)))));
973 	fConst131 = (6.12531505348267e-11 + (fConst1 * (6.98662516211683e-14 + (fConst1 * ((fConst1 * ((fConst1 * (1.40869417800782e-24 + (fConst1 * (2.22198278077453e-28 + fConst83)))) - 6.42873731845153e-20)) - 3.05244836365035e-16)))));
974 	fConst132 = (fConst1 * (2.62643039506774e-19 + (fConst1 * (2.88083422514999e-21 + (fConst1 * ((fConst1 * (0 - (3.45765763886867e-28 + fConst85))) - 5.7277490204579e-25))))));
975 	fConst133 = (6.98630485088019e-16 + (fConst1 * ((fConst1 * ((fConst1 * (8.57175765008426e-25 + (fConst1 * (3.57580068447672e-28 + fConst87)))) - 1.64282695186117e-20)) - 2.3146642940401e-17)));
976 	fConst134 = (7.92753968431262e-12 + (fConst1 * (1.10009619872997e-14 + (fConst1 * ((fConst1 * ((fConst1 * (3.82673951875399e-25 + (fConst1 * (6.66563115505934e-29 + fConst89)))) - 1.37102159187211e-20)) - 5.16810160195606e-17)))));
977 	fConst135 = (fConst1 * ((fConst1 * (1.08529291934856e-17 + (fConst1 * (2.63002461642579e-20 + (fConst1 * ((fConst1 * (0 - (1.20241939474027e-27 + fConst91))) - 2.59651304204151e-24)))))) - 2.70208888381455e-16));
978 	fConst136 = (1.94064023635561e-11 + (fConst1 * (2.90309169877006e-14 + (fConst1 * ((fConst1 * ((fConst1 * (3.56354489991342e-24 + (fConst1 * (1.23917414983044e-27 + fConst93)))) - 8.72318159543856e-20)) - 2.19435678167812e-16)))));
979 	fConst137 = (7.60216494927921e-10 + (fConst1 * (1.84811580165704e-11 + (fConst1 * (1.84177801266471e-14 + (fConst1 * (1.31841039116102e-18 + (fConst1 * ((fConst1 * (0 - (4.62093657790021e-27 + fConst47))) - 8.74614985810583e-23)))))))));
980 	fConst138 = (2.95512545692159e-12 + (fConst1 * (3.10149848161427e-15 + (fConst1 * (2.80284580289236e-19 + (fConst1 * ((fConst1 * (0 - (1.38617806705367e-27 + fConst49))) - 2.37458693671756e-23)))))));
981 	fConst139 = (fConst1 * ((fConst1 * ((fConst1 * (3.56709268829075e-23 + (fConst1 * (7.20537311443808e-27 + fConst51)))) - 5.77265406286601e-20)) - 5.25286079013548e-18));
982 	fConst140 = (7.00381438684731e-14 + (fConst1 * (1.39047972144637e-15 + (fConst1 * (3.40990806209747e-19 + (fConst1 * ((fConst1 * (0 - (7.4553908726859e-27 + fConst53))) - 5.3587860586933e-23)))))));
983 	fConst141 = ((fConst1 * ((fConst1 * ((fConst1 * (1.61870799757925e-22 + (fConst1 * (2.50578275847805e-26 + fConst55)))) - 5.37755564226007e-19)) - 5.73734316533233e-16)) - 2.70208888381455e-14);
984 	fConst142 = (7.67573094039439e-12 + (fConst1 * (1.34588250792125e-14 + (fConst1 * (1.81314904250947e-18 + (fConst1 * ((fConst1 * (0 - (2.58363372303753e-26 + fConst57))) - 2.22804523480507e-22)))))));
985 	fConst143 = (3.40295280749037e-11 + (fConst1 * (2.09598754863505e-13 + (fConst1 * (1.01748278788345e-16 + (fConst1 * ((fConst1 * ((fConst1 * (0 - (1.23443487820807e-28 + fConst59))) - 4.22608253402345e-24)) - 2.14291243948384e-20)))))));
986 	fConst144 = (fConst1 * ((fConst1 * (9.60278075049996e-22 + (fConst1 * (1.71832470613737e-24 + (fConst1 * (1.9209209104826e-28 + fConst61)))))) - 8.75476798355914e-20));
987 	fConst145 = (2.09589145526406e-15 + (fConst1 * (7.71554764680033e-18 + (fConst1 * ((fConst1 * ((fConst1 * (0 - (1.9865559358204e-28 + fConst63))) - 2.57152729502528e-24)) - 5.47608983953722e-21)))));
988 	fConst146 = (4.40418871350701e-12 + (fConst1 * (3.30028859618991e-14 + (fConst1 * (1.72270053398535e-17 + (fConst1 * ((fConst1 * ((fConst1 * (0 - (3.70312841947741e-29 + fConst65))) - 1.1480218556262e-24)) - 4.57007197290703e-21)))))));
989 	fConst147 = (fConst1 * ((fConst1 * ((fConst1 * (8.76674872141931e-21 + (fConst1 * (7.78953912612452e-24 + (fConst1 * (6.68010774855708e-28 + fConst67)))))) - 3.6176430644952e-18)) - 8.10626665144365e-16));
990 	fConst148 = (1.07813346464201e-11 + (fConst1 * (8.70927509631017e-14 + (fConst1 * (7.31452260559375e-17 + (fConst1 * ((fConst1 * ((fConst1 * (0 - (6.88430083239131e-28 + fConst69))) - 1.06906346997403e-23)) - 2.90772719847952e-20)))))));
991 	fConst149 = (1.54099923663885e-20 * fConst1);
992 	fConst150 = (2.24965827032337e-08 + (fConst1 * ((fConst1 * (5.31689208112194e-11 + (fConst1 * (fConst149 - 7.19388929584568e-15)))) - 2.28185230391781e-09)));
993 	fConst151 = (6.16399694655539e-20 * fConst1);
994 	fConst152 = (8.99863308129347e-08 + (fConst1 * ((fConst27 * (1.43877785916914e-14 - fConst151)) - 4.56370460783562e-09)));
995 	fConst153 = (1.34979496219402e-07 + (fConst27 * ((9.24599541983309e-20 * fConst27) - 1.06337841622439e-10)));
996 	fConst154 = (8.99863308129347e-08 + (fConst1 * (4.56370460783562e-09 + (fConst27 * (0 - (1.43877785916914e-14 + fConst151))))));
997 	fConst155 = (1.0 / (2.24965827032337e-08 + (fConst1 * (2.28185230391781e-09 + (fConst1 * (5.31689208112194e-11 + (fConst1 * (7.19388929584568e-15 + fConst149))))))));
998 	fConst156 = (2.05673409363887e-05 * fConst1);
999 	fConst157 = (0.0127676350533428 + fConst156);
1000 	fConst158 = ((0.0127676350533428 - fConst156) / fConst157);
1001 	fConst159 = (4.53718775174205e-20 * fConst1);
1002 	fConst160 = (6.11046829303909e-10 + (fConst1 * (2.75033912102025e-12 + (fConst1 * (2.39184150298261e-15 + fConst159)))));
1003 	fConst161 = (4.62560320712853e-19 * fConst1);
1004 	fConst162 = (fConst1 * ((fConst1 * (0 - (3.65585542758513e-16 + fConst161))) - 6.71526912010436e-14));
1005 	fConst163 = (4.17188443195432e-19 * fConst1);
1006 	fConst164 = ((fConst1 * ((fConst1 * (9.01281990687034e-17 + fConst163)) - 1.21744029511887e-14)) - 7.14390331925996e-13);
1007 	fConst165 = (1.20024920532642e-17 * fConst1);
1008 	fConst166 = (fConst1 * (1.36355462346484e-12 + (fConst1 * (fConst165 - 8.72835527356175e-15))));
1009 	fConst167 = (5.68147759777016e-09 + (fConst1 * ((fConst1 * (5.87387388288291e-14 - fConst165)) - 3.77317015966388e-11)));
1010 	fConst168 = ((fConst1 * (2.75033912102025e-12 + (fConst1 * (fConst159 - 2.39184150298261e-15)))) - 6.11046829303909e-10);
1011 	fConst169 = (fConst1 * ((fConst1 * (3.65585542758513e-16 - fConst161)) - 6.71526912010436e-14));
1012 	fConst170 = (7.14390331925996e-13 + (fConst1 * ((fConst1 * (fConst163 - 9.01281990687034e-17)) - 1.21744029511887e-14)));
1013 	fConst171 = (1.81487510069682e-19 * fConst1);
1014 	fConst172 = ((fConst27 * (4.78368300596523e-15 - fConst171)) - 1.22209365860782e-09);
1015 	fConst173 = (1.85024128285141e-18 * fConst1);
1016 	fConst174 = (fConst27 * (fConst173 - 7.31171085517027e-16));
1017 	fConst175 = (1.66875377278173e-18 * fConst1);
1018 	fConst176 = (1.42878066385199e-12 + (fConst27 * (1.80256398137407e-16 - fConst175)));
1019 	fConst177 = (1.34305382402087e-13 - (2.77536192427712e-18 * fConst27));
1020 	fConst178 = (2.43488059023775e-14 + (2.50313065917259e-18 * fConst27));
1021 	fConst179 = ((2.72231265104523e-19 * fConst27) - 5.50067824204049e-12);
1022 	fConst180 = (1.22209365860782e-09 + (fConst27 * (0 - (4.78368300596523e-15 + fConst171))));
1023 	fConst181 = (fConst27 * (7.31171085517027e-16 + fConst173));
1024 	fConst182 = ((fConst27 * (0 - (1.80256398137407e-16 + fConst175))) - 1.42878066385199e-12);
1025 	fConst183 = (4.80099682130566e-17 * fConst1);
1026 	fConst184 = (fConst27 * (1.74567105471235e-14 - fConst183));
1027 	fConst185 = (1.13629551955403e-08 + (fConst27 * (fConst183 - 1.17477477657658e-13)));
1028 	fConst186 = (7.20149523195849e-17 * fConst27);
1029 	fConst187 = (fConst186 - 2.72710924692967e-12);
1030 	fConst188 = (7.54634031932776e-11 - fConst186);
1031 	fConst189 = (fConst27 * (0 - (1.74567105471235e-14 + fConst183)));
1032 	fConst190 = ((fConst27 * (1.17477477657658e-13 + fConst183)) - 1.13629551955403e-08);
1033 	fConst191 = (fConst1 * (1.36355462346484e-12 + (fConst1 * (8.72835527356175e-15 + fConst165))));
1034 	fConst192 = ((fConst1 * ((fConst1 * (0 - (5.87387388288291e-14 + fConst165))) - 3.77317015966388e-11)) - 5.68147759777016e-09);
1035 	fConst193 = (1.0 / tan((270.1769682087222 / double(iConst0))));
1036 	fConst194 = (1 + fConst193);
1037 	fConst195 = (0.027 / fConst194);
1038 	fConst196 = (0 - ((1 - fConst193) / fConst194));
1039 	fConst197 = (1.0 / tan((97.38937226128358 / double(iConst0))));
1040 	fConst198 = (0 - fConst197);
1041 	fConst199 = (1 + fConst197);
1042 	fConst200 = (0.025 / fConst199);
1043 	fConst201 = (0 - ((1 - fConst197) / fConst199));
1044 	fConst202 = (0.000241796401593579 * fConst1);
1045 	fConst203 = (fConst202 - 0.120895242129278);
1046 	fConst204 = (0 - (0.120895242129278 + fConst202));
1047 	fConst205 = (1.0 / fConst157);
1048 	fConst206 = (3.34191121256379e-16 * fConst1);
1049 	fConst207 = (fConst1 * ((fConst1 * (6.03516810836026e-10 + fConst206)) - 1.34107748205618e-08));
1050 	fConst208 = (2.68215496411236e-08 + (6.68382242512758e-16 * fConst27));
1051 	fConst209 = (fConst1 * (0 - fConst208));
1052 	fConst210 = (0 - (1.20703362167205e-09 * fConst27));
1053 	fConst211 = (1.34107748205618e-08 + (fConst1 * (6.03516810836026e-10 - fConst206)));
1054 	fConst212 = (1.01598542031427e-18 + fConst26);
1055 	fConst213 = (fConst27 * (0 - fConst212));
1056 	fConst214 = (1.48381946931304e-18 + fConst29);
1057 	fConst215 = ((fConst1 * (6.49603784380088e-15 + (fConst1 * (0 - fConst214)))) - 4.33415056963854e-12);
1058 	fConst216 = ((fConst1 * (1.99479009758725e-16 - fConst31)) - 1.08083555352582e-14);
1059 	fConst217 = ((fConst1 * (2.34482517660991e-16 - fConst33)) - 2.54644856410683e-13);
1060 	fConst218 = (4.14522051488223e-21 * fConst1);
1061 	fConst219 = (fConst27 * (3.04795626094281e-18 - fConst218));
1062 	fConst220 = (5.80330872083511e-22 * fConst1);
1063 	fConst221 = ((fConst1 * (2.16534594793363e-15 + (fConst1 * (4.45145840793913e-18 - fConst220)))) - 7.80147102534937e-12);
1064 	fConst222 = (2.59296772633058e-19 * fConst1);
1065 	fConst223 = ((fConst1 * (6.64930032529084e-17 + fConst222)) - 1.94550399634648e-14);
1066 	fConst224 = (3.63015481686282e-20 * fConst1);
1067 	fConst225 = ((fConst1 * (7.81608392203304e-17 + fConst224)) - 4.5836074153923e-13);
1068 	fConst226 = (3.04795626094281e-18 + fConst218);
1069 	fConst227 = (fConst27 * fConst226);
1070 	fConst228 = (4.45145840793913e-18 + fConst220);
1071 	fConst229 = ((fConst1 * ((fConst1 * fConst228) - 1.08267297396681e-14)) - 4.33415056963854e-12);
1072 	fConst230 = ((fConst1 * (fConst222 - 3.32465016264542e-16)) - 1.08083555352582e-14);
1073 	fConst231 = ((fConst1 * (fConst224 - 3.90804196101652e-16)) - 2.54644856410683e-13);
1074 	fConst232 = (fConst27 * (fConst218 - 3.04795626094281e-18));
1075 	fConst233 = (4.33415056963854e-12 + (fConst1 * ((fConst1 * (fConst220 - 4.45145840793913e-18)) - 1.08267297396681e-14)));
1076 	fConst234 = (1.08083555352582e-14 + (fConst1 * (0 - (3.32465016264542e-16 + fConst222))));
1077 	fConst235 = (2.54644856410683e-13 + (fConst1 * (0 - (3.90804196101652e-16 + fConst224))));
1078 	fConst236 = (fConst27 * (0 - fConst226));
1079 	fConst237 = (7.80147102534937e-12 + (fConst1 * (2.16534594793363e-15 + (fConst1 * (0 - fConst228)))));
1080 	fConst238 = (1.94550399634648e-14 + (fConst1 * (6.64930032529084e-17 - fConst222)));
1081 	fConst239 = (4.5836074153923e-13 + (fConst1 * (7.81608392203304e-17 - fConst224)));
1082 	fConst240 = (fConst27 * (1.01598542031427e-18 - fConst26));
1083 	fConst241 = (4.33415056963854e-12 + (fConst1 * (6.49603784380088e-15 + (fConst1 * (1.48381946931304e-18 - fConst29)))));
1084 	fConst242 = (1.08083555352582e-14 + (fConst1 * (1.99479009758725e-16 + fConst31)));
1085 	fConst243 = (2.54644856410683e-13 + (fConst1 * (2.34482517660991e-16 + fConst33)));
1086 	fConst244 = (fConst27 * fConst212);
1087 	fConst245 = (8.66830113927708e-13 + (fConst1 * (2.16534594793363e-15 + (fConst1 * fConst214))));
1088 	fConst246 = (2.16167110705164e-15 + (fConst1 * (6.64930032529084e-17 + fConst31)));
1089 	fConst247 = (5.09289712821366e-14 + (fConst1 * (7.81608392203304e-17 + fConst33)));
1090 	clear_state_f();
1091 }
1092 
init_static(uint32_t samplingFreq,PluginLV2 * p)1093 void Dsp::init_static(uint32_t samplingFreq, PluginLV2 *p)
1094 {
1095 	static_cast<Dsp*>(p)->init(samplingFreq);
1096 }
1097 
nonlin(double x)1098 double always_inline Dsp::nonlin(double x) {
1099     double f = fabs(x);
1100     f = (f/(3.0+f) - nonlintab.low) * nonlintab.istep;
1101     int i = static_cast<int>(f);
1102     if (i < 0) {
1103         f = nonlintab.data[0];
1104     } else if (i >= nonlintab.size-1) {
1105         f = nonlintab.data[nonlintab.size-1];
1106     } else {
1107 	f -= i;
1108 	f = nonlintab.data[i]*(1-f) + nonlintab.data[i+1]*f;
1109     }
1110     return copysign(f, x);
1111 }
1112 
Ftube(double Vgk)1113 double always_inline Dsp::Ftube(double Vgk) {
1114     double f = (Vgk - tubetab.low) * tubetab.istep;
1115     int i = static_cast<int>(f);
1116     if (i < 0)
1117         return tubetab.data[0];
1118     if (i >= tubetab.size-1)
1119         return tubetab.data[tubetab.size-1];
1120     f -= i;
1121     return tubetab.data[i]*(1-f) + tubetab.data[i+1]*f;
1122 }
1123 
compute(int count,FAUSTFLOAT * input0,FAUSTFLOAT * output0)1124 void always_inline Dsp::compute(int count, FAUSTFLOAT *input0, FAUSTFLOAT *output0)
1125 {
1126 #define fslider0 (*fslider0_)
1127 #define fslider1 (*fslider1_)
1128 #define fslider2 (*fslider2_)
1129 #define fslider3 (*fslider3_)
1130 	double 	fSlow0 = (0.007000000000000006 * double(fslider0));
1131 	double 	fSlow1 = (0.004073836948085289 * (exp(double(fslider1)) - 1));
1132 	double 	fSlow2 = (0.007000000000000006 * double(fslider2));
1133 	double 	fSlow3 = (0.007000000000000006 * double(fslider3));
1134 	for (int i=0; i<count; i++) {
1135 		fRec0[0] = ((0.993 * fRec0[1]) + fSlow0);
1136 		fRec1[0] = ((0.993 * fRec1[1]) + fSlow1);
1137 		fRec2[0] = ((0.993 * fRec2[1]) + fSlow2);
1138 		double fTemp0 = ((((fRec2[0] * (4.32334221410328e-11 + (fConst1 * (((fRec0[0] * (fConst25 + (fConst23 * fRec0[0]))) + (fRec1[0] * (fConst21 + (fConst1 * (fRec0[0] * (fConst19 + (fConst17 * fRec0[0]))))))) + fConst15)))) + (fRec0[0] * (4.32334221410328e-11 + (fConst1 * (fConst13 + (fConst11 * fRec0[0])))))) + (fRec1[0] * (1.72933688564131e-11 + (fConst1 * ((fRec0[0] * (fConst9 + (fConst7 * fRec0[0]))) + fConst5))))) + fConst3);
1139 		fRec10[0] = ((0.993 * fRec10[1]) + fSlow3);
1140 		double fTemp1 = (2.97662638302498e-09 + (fConst1 * ((fRec10[0] * (fConst164 + (fConst162 * fRec10[0]))) + fConst160)));
1141 		fRec11[0] = ((double)input0[i] - (((((fRec11[1] * (1.19065055320999e-08 + (fConst1 * ((fRec10[0] * (fConst182 + (fConst181 * fRec10[0]))) + fConst180)))) + (fRec11[2] * (1.78597582981499e-08 + (fConst27 * (fConst179 + (fRec10[0] * (fConst178 + (fConst177 * fRec10[0])))))))) + (fRec11[3] * (1.19065055320999e-08 + (fConst1 * ((fRec10[0] * (fConst176 + (fConst174 * fRec10[0]))) + fConst172))))) + (fRec11[4] * (2.97662638302498e-09 + (fConst1 * ((fRec10[0] * (fConst170 + (fConst169 * fRec10[0]))) + fConst168))))) / fTemp1));
1142 		double fTemp2 = nonlin((fConst1 * ((fRec10[0] * (((((fRec11[0] * (fConst192 + (fConst191 * fRec10[0]))) + (fRec11[1] * (fConst190 + (fConst189 * fRec10[0])))) + (fConst1 * (fRec11[2] * (fConst188 + (fConst187 * fRec10[0]))))) + (fRec11[3] * (fConst185 + (fConst184 * fRec10[0])))) + (fRec11[4] * (fConst167 + (fConst166 * fRec10[0]))))) / fTemp1)));
1143 		fVec0[0] = fTemp2;
1144 		fRec9[0] = ((0.9302847925323914 * (fVec0[0] + fVec0[1])) - (0.8605695850647829 * fRec9[1]));
1145 		fRec8[0] = (fRec9[0] - ((1.8405051250752198 * fRec8[1]) + (0.8612942439318627 * fRec8[2])));
1146 		fRec12[0] = ((fConst196 * fRec12[1]) + (fConst195 * (fRec7[1] + fRec7[2])));
1147 		fRec7[0] = (Ftube(((fRec12[0] + (0.9254498422517706 * (fRec8[2] + (fRec8[0] + (2.0 * fRec8[1]))))) - 1.581656)) - 191.42014814814814);
1148 		fRec6[0] = ((fConst201 * fRec6[1]) + (fConst200 * ((fConst197 * fRec7[0]) + (fConst198 * fRec7[1]))));
1149 		fRec5[0] = (fRec6[0] - (fConst158 * fRec5[1]));
1150 		fRec4[0] = ((fConst205 * ((fConst204 * fRec5[0]) + (fConst203 * fRec5[1]))) - (fConst155 * ((((fConst154 * fRec4[1]) + (fConst153 * fRec4[2])) + (fConst152 * fRec4[3])) + (fConst150 * fRec4[4]))));
1151 		fRec3[0] = ((fConst155 * ((((fConst1 * ((fConst211 * fRec4[0]) + (fConst208 * fRec4[1]))) + (fConst210 * fRec4[2])) + (fConst209 * fRec4[3])) + (fConst207 * fRec4[4]))) - ((((((((fRec3[1] * ((((fRec2[0] * (3.0263395498723e-10 + (fConst1 * (((fRec0[0] * (fConst148 + (fConst147 * fRec0[0]))) + (fRec1[0] * (fConst146 + (fConst1 * (fRec0[0] * (fConst145 + (fConst144 * fRec0[0]))))))) + fConst143)))) + (fRec0[0] * (3.0263395498723e-10 + (fConst1 * (fConst142 + (fConst141 * fRec0[0])))))) + (fRec1[0] * (1.21053581994892e-10 + (fConst1 * ((fRec0[0] * (fConst140 + (fConst139 * fRec0[0]))) + fConst138))))) + fConst137)) + (fRec3[2] * ((((fRec2[0] * (9.07901864961689e-10 + (fConst1 * (((fRec0[0] * (fConst136 + (fConst135 * fRec0[0]))) + (fRec1[0] * (fConst134 + (fConst1 * (fRec0[0] * (fConst133 + (fConst132 * fRec0[0]))))))) + fConst131)))) + (fRec0[0] * (9.07901864961689e-10 + (fConst1 * (fConst130 + (fConst129 * fRec0[0])))))) + (fRec1[0] * (3.63160745984675e-10 + (fConst1 * ((fRec0[0] * (fConst128 + (fConst127 * fRec0[0]))) + fConst126))))) + fConst125))) + (fRec3[3] * ((((fRec2[0] * (1.51316977493615e-09 + (fConst1 * (((fRec0[0] * (fConst124 + (fConst123 * fRec0[0]))) + (fRec1[0] * (fConst122 + (fConst1 * (fRec0[0] * (fConst121 + (fConst120 * fRec0[0]))))))) + fConst119)))) + (fRec0[0] * (1.51316977493615e-09 + (fConst1 * (fConst118 + (fConst117 * fRec0[0])))))) + (fRec1[0] * (6.05267909974459e-10 + (fConst1 * ((fRec0[0] * (fConst116 + (fConst115 * fRec0[0]))) + fConst114))))) + fConst113))) + (fRec3[4] * ((((fRec2[0] * (1.51316977493615e-09 + (fConst1 * (((fRec0[0] * (fConst112 + (fConst110 * fRec0[0]))) + (fRec1[0] * (fConst108 + (fConst1 * (fRec0[0] * (fConst106 + (fConst104 * fRec0[0]))))))) + fConst102)))) + (fRec0[0] * (1.51316977493615e-09 + (fConst1 * (fConst100 + (fConst99 * fRec0[0])))))) + (fRec1[0] * (6.05267909974459e-10 + (fConst1 * ((fRec0[0] * (fConst98 + (fConst97 * fRec0[0]))) + fConst96))))) + fConst95))) + (fRec3[5] * ((((fRec2[0] * (9.07901864961689e-10 + (fConst1 * (((fRec0[0] * (fConst94 + (fConst92 * fRec0[0]))) + (fRec1[0] * (fConst90 + (fConst1 * (fRec0[0] * (fConst88 + (fConst86 * fRec0[0]))))))) + fConst84)))) + (fRec0[0] * (9.07901864961689e-10 + (fConst1 * (fConst82 + (fConst80 * fRec0[0])))))) + (fRec1[0] * (3.63160745984675e-10 + (fConst1 * ((fRec0[0] * (fConst78 + (fConst76 * fRec0[0]))) + fConst74))))) + fConst72))) + (fRec3[6] * ((((fRec2[0] * (3.0263395498723e-10 + (fConst1 * (((fRec0[0] * (fConst70 + (fConst68 * fRec0[0]))) + (fRec1[0] * (fConst66 + (fConst1 * (fRec0[0] * (fConst64 + (fConst62 * fRec0[0]))))))) + fConst60)))) + (fRec0[0] * (3.0263395498723e-10 + (fConst1 * (fConst58 + (fConst56 * fRec0[0])))))) + (fRec1[0] * (1.21053581994892e-10 + (fConst1 * ((fRec0[0] * (fConst54 + (fConst52 * fRec0[0]))) + fConst50))))) + fConst48))) + (fRec3[7] * ((((fRec2[0] * (4.32334221410328e-11 + (fConst1 * (((fRec0[0] * (fConst46 + (fConst45 * fRec0[0]))) + (fRec1[0] * (fConst44 + (fConst1 * (fRec0[0] * (fConst43 + (fConst42 * fRec0[0]))))))) + fConst41)))) + (fRec0[0] * (4.32334221410328e-11 + (fConst1 * (fConst40 + (fConst39 * fRec0[0])))))) + (fRec1[0] * (1.72933688564131e-11 + (fConst1 * ((fRec0[0] * (fConst38 + (fConst37 * fRec0[0]))) + fConst36))))) + fConst35))) / fTemp0));
1152 		output0[i] = (FAUSTFLOAT)(fConst1 * ((fRec1[0] * ((((((((fRec3[0] * ((fConst247 + (fConst246 * fRec0[0])) + (fRec2[0] * (fConst245 + (fConst244 * fRec0[0]))))) + (fRec3[1] * ((fConst243 + (fConst242 * fRec0[0])) + (fRec2[0] * (fConst241 + (fConst240 * fRec0[0])))))) + (fRec3[2] * ((fConst239 + (fConst238 * fRec0[0])) + (fRec2[0] * (fConst237 + (fConst236 * fRec0[0])))))) + (fRec3[3] * ((fConst235 + (fConst234 * fRec0[0])) + (fRec2[0] * (fConst233 + (fConst232 * fRec0[0])))))) + (fRec3[4] * ((fConst231 + (fConst230 * fRec0[0])) + (fRec2[0] * (fConst229 + (fConst227 * fRec0[0])))))) + (fRec3[5] * ((fConst225 + (fConst223 * fRec0[0])) + (fRec2[0] * (fConst221 + (fConst219 * fRec0[0])))))) + (fRec3[6] * ((fConst217 + (fConst216 * fRec0[0])) + (fRec2[0] * (fConst215 + (fConst213 * fRec0[0])))))) + (fRec3[7] * ((fConst34 + (fConst32 * fRec0[0])) + (fRec2[0] * (fConst30 + (fConst28 * fRec0[0]))))))) / fTemp0));
1153 		// post processing
1154 		for (int i=7; i>0; i--) fRec3[i] = fRec3[i-1];
1155 		for (int i=4; i>0; i--) fRec4[i] = fRec4[i-1];
1156 		fRec5[1] = fRec5[0];
1157 		fRec6[1] = fRec6[0];
1158 		fRec7[2] = fRec7[1]; fRec7[1] = fRec7[0];
1159 		fRec12[1] = fRec12[0];
1160 		fRec8[2] = fRec8[1]; fRec8[1] = fRec8[0];
1161 		fRec9[1] = fRec9[0];
1162 		fVec0[1] = fVec0[0];
1163 		for (int i=4; i>0; i--) fRec11[i] = fRec11[i-1];
1164 		fRec10[1] = fRec10[0];
1165 		fRec2[1] = fRec2[0];
1166 		fRec1[1] = fRec1[0];
1167 		fRec0[1] = fRec0[0];
1168 	}
1169 #undef fslider0
1170 #undef fslider1
1171 #undef fslider2
1172 #undef fslider3
1173 }
1174 
compute_static(int count,FAUSTFLOAT * input0,FAUSTFLOAT * output0,PluginLV2 * p)1175 void __rt_func Dsp::compute_static(int count, FAUSTFLOAT *input0, FAUSTFLOAT *output0, PluginLV2 *p)
1176 {
1177 	static_cast<Dsp*>(p)->compute(count, input0, output0);
1178 }
1179 
1180 
connect(uint32_t port,void * data)1181 void Dsp::connect(uint32_t port,void* data)
1182 {
1183 	switch ((PortIndex)port)
1184 	{
1185 	case BASS:
1186 		fslider2_ = (float*)data; // , 0.5, 0.0, 1.0, 0.01
1187 		break;
1188 	case GAIN:
1189 		fslider3_ = (float*)data; // , 0.5, 0.0, 1.0, 0.01
1190 		break;
1191 	case TREBLE:
1192 		fslider0_ = (float*)data; // , 0.5, 0.0, 1.0, 0.01
1193 		break;
1194 	case VOLUME:
1195 		fslider1_ = (float*)data; // , 0.5, 0.0, 1.0, 0.01
1196 		break;
1197 	default:
1198 		break;
1199 	}
1200 }
1201 
connect_static(uint32_t port,void * data,PluginLV2 * p)1202 void Dsp::connect_static(uint32_t port,void* data, PluginLV2 *p)
1203 {
1204 	static_cast<Dsp*>(p)->connect(port, data);
1205 }
1206 
1207 
plugin()1208 PluginLV2 *plugin() {
1209 	return new Dsp();
1210 }
1211 
del_instance(PluginLV2 * p)1212 void Dsp::del_instance(PluginLV2 *p)
1213 {
1214 	delete static_cast<Dsp*>(p);
1215 }
1216 
1217 /*
1218 typedef enum
1219 {
1220    BASS,
1221    GAIN,
1222    TREBLE,
1223    VOLUME,
1224 } PortIndex;
1225 */
1226 
1227 } // end namespace bottlerocket
1228